Royal Challengers Bangalore beat Lucknow Super Giants by 14 runs in the Indian Premier League (IPL) eliminator on the back of a sensational century from Rajat Patidar in Kolkata.
Patidar smashed 12 fours and seven sixes in his knock of 112 off 54 balls to help Bangalore post a commanding total of 207.
Bangalore will play Rajasthan Royals in the second qualifier on Friday in Ahmedabad, with the winners taking on Gujarat Titans in Sunday's final at the same venue.
Bangalore, who lost the toss and were put into bat, had the worst possible start when they lost skipper Faf Du Plessis - their top run-scorer this season - for a first-ball duck when he was caught behind off Mohsin Khan.
Virat Kohli (25) and Glenn Maxwell (9) struggled for fluency but Patidar, playing only his 11th IPL game, kept the runs flowing as he dealt in boundaries at a healthy strike rate.
Patidar was dropped twice and the 28-year-old took advantage, bringing up his century in 49 balls with a massive six over midwicket which brought the crowd and his teammates in the dugout to their feet.
He remained unbeaten while Dinesh Karthik (37 not out) also provided fireworks in a 92-run partnership as Bangalore scored 84 runs in the last five overs.
Lucknow lost Quinton de Kock in the first over but skipper KL Rahul (79) steadied the ship and Deepak Hooda chipped in with a handy 45.
But with the required run rate creeping up, Hooda was bowled by Wanindu Hasaranga after smashing two sixes off the Sri Lankan while Rahul was caught at short fine leg off Josh Hazlewood (3-43) in the penultimate over as Lucknow fell short.