Sri Lanka clung on to draw the first Test against India after Bhuvneshwar Kumar went close to inspiring a sensational last-day win for the hosts in Kolkata.
After Shikhar Dhawan and KL Rahul led a fourth-day recovery for India, captain Virat Kohli scored his 50th international century - naturally in record fashion - to give the hosts a faint sniff of victory with a session and a bit to bowl Sri Lanka out.
Kohli reached three figures with a six before India declared on 352-8, setting their opponents 231 to win with 40 overs remaining.
With bad light bringing the previous four days to a premature close, it never looked likely, but Bhuvneshwar delivered a brilliant performance, taking 4-8, while Mohammed Shami took two more wickets in a blistering support act to reduce Sri Lanka to 75-7 from just 26.3 overs before the light curtailed any further excitement.
After having the best of the first three days in this contest, such a collapse will not do Sri Lanka's confidence any good as the three-match series next heads for Nagpur.
But India will be brimming after the performances of their bowlers and captain Kohli, whose half-century of international hundreds came in his 348th appearance - level with the record-holder, Hashim Amla.
In worsening conditions for batting, Kohli's knock oozed class, displaying not only his apex technique but also battling qualities.
The skipper got off a pair as he gloved Suranga Lakmal over wicketkeeper Niroshan Dickwella for four, but the Sri Lanka paceman was causing Kohli and Cheteshwar Pujara - who batted on every day of this Test - serious problems, having earlier bowled Rahul for 79.
Lakmal finally had his reward taking Pujara (22) and Ajinkya Rahane (0) in the same over, and Kohli regularly lost partners while scratching his way through his innings.
But Sri Lanka's decision to immediately take the new ball backfired as Kohli accelerated from 58 of 93 balls to a century from just 26 more, spanking Lakmal over extra cover and then heading to the dressing room.
After heavy rain on day one, India had been reduced to 50-5 on the second morning of this Test, but incredibly had a chance of winning the contest when Bhuvneshwar and Shami reduced Sri Lanka to 22-4 inside 12 overs.
Knocks of 20 from Dinesh Chandimal and 27 by Dickwella would ultimately prove vital, just holding the Indian charge up enough.
Dickwella survived a catch behind on review and Dilruwan Perera survived a DRS for lbw before Bhuvneshwar flattened his off-stump, but umpires Nigel Llong and Joel Wilson convened midway through the 26th over with the light meter before Kohli shook hands with the Sri Lanka batsmen, who had escaped an almighty scare.
|Williamson notches record ton but rain frustrates New Zealand|
|Arthur ´counting the days´ to Barcelona switch|
|English football must address racism, says Southgate|
|Alisson can be world´s best – Taffarel|
|Rockets need OT to beat Pistons, Hornets record sixth biggest win|
|Hamilton contract to be finalised ´soon´, says Wolff|
|Warriors star Curry ´definitely´ wants ownership stake in Panthers|
|Kings´ Kopitar tallies first four-goal game|
|Ter Stegen dismisses ´Messi with gloves´ label|
|Medvedev fumes after win, Shapovalov battles through|
|Buffon: Messi more complete than Ronaldo|
|Neymar is irreplaceable, says Tite|
|Halep joined by Pliskova and Kerber on mixed day for seeds in Miami|
|Rahm joins Johnson in early elimination, McIlroy hits back|
|Red Wings´ Green to undergo cervical spine surgery|
|Conti: Milan much better thanks to Gattuso|
|Show must go on in Hollywood! - Pogba and Mkhitaryan say Ibrahimovic goodbyes|
|Arthur: I´ll find out if Messi is from this planet|
|Barcelona better than Real Madrid even if Neymar signs - Iniesta|
|I haven´t booked a holiday yet - Leno hoping for World Cup call|
|I may be 40 but I´m still Juve´s number one – Buffon bullish over Italy return|
|Italy coach Di Biagio dismisses Raiola rage over Balotelli snub|
|Lopetegui not ruling out Martinez World Cup chances|
|Late Widnes rally sees off Salford|
|Ailing Halep battles past Dodin in Miami|
|Spain defender Ramos targeting Casillas caps record|
|Pogba gets no special treatment from Deschamps|
|Defending champion Johnson dumped out of WGC Dell Match Play|
|Ibrahimovic to LA Galaxy? Beckham, Drogba, Pirlo and the other stars to try MLS|
|Wilshere out for England with Pickford to face Netherlands|
|Southgate rejects England safety concerns over World Cup|
|Great things come to an end - Ibrahimovic confirms Man Utd departure|
|This is Messi´s team - Sampaoli puts faith in Barcelona superstar|
|Tony Romo plays rollercoaster first round in PGA Tour debut|
|Total embarrassment: Hussain and Willis slam England following Auckland humiliation|
|Elgar urges South Africa to ´brush off´ disappointment of collapse|
|Juventus to play in MLS All-Star Game|
|Low confirms Can will miss Spain game|
|Tiger´s Masters timeline: Can Woods rediscover his best Augusta form?|
|Morgan to captain World XI for T20 hurricane fundraiser|
|Ibrahimovic released by Manchester United|
|Santos not interested in Ronaldo to China links|
|French Open prize money up to €2.2m for singles champions|
|WATCH: Messi scores superb solo strike in Argentina training|
|Zimbabwe´s World Cup hopes all but over after UAE loss|
|Koeman names Van Dijk new Netherlands captain|
|Dybala and Icardi´s World Cup hopes doused by Sampaoli|
|Pierre-Paul joins revamped Bucs pass rush in trade|
|I almost s*** myself - Pique on Keane rant|
|UEFA order PSG to close Auteuil stand|
|Cummins puts Australia in control as South Africa collapse after tea|
|Surgery on both elbows for ´different animal´ Parker|
|Director of rugby Kennedy leaves London Irish|
|Brilliant Bale basks in Wales record|
|Romo hits back-to-back birdies on PGA Tour debut|
|Neuer needs to play to make Germany´s World Cup squad – Low|
|All we can do is take it on the chin - Bayliss responds to Auckland humiliation|
|China 0 Wales 6: Record-breaking Bale leads demolition job in perfect start for Giggs|
|Curry closer to return than Durant - Kerr|
|Alonso expects McLaren to be at ´lowest level´ in Melbourne|
|Serena´s conqueror and a new tennis superstar - who is Naomi Osaka?|
|Bale becomes Wales´ record goalscorer with China hat-trick|
|Hamilton warns Ricciardo not to rock Red Bull boat|
|It could have been worse! England´s lowest Test totals|
|The ´reality for people with a brain´ is Manchester United are in transition, Mourinho claims|
|Black Caps seamer savours Boult from the blue|
|West Ham ban disruptive fans for life after Burnley chaos|
|Storm respond by beating Cowboys|
|Ten wickets in 79 minutes - a timeline of England´s Auckland horror show|
|England´s bleak winter sinks to new low|