Then, India's lethal pace duo of Bhuvneshwar and Shami got into the thick of things, removing Sri Lanka's openers within the first four overs. Sadeera Samarawickrama (0) and Dimuth Karunaratne (1) both chopped onto their stumps from Bhuvneshwar and Shami respectively.
Thirimanne (7) and Mathews (12) too followed suit, with Bhuvneshwar and Umesh accounting for them respectively. Thirimanne's dismissal came right after the tea break with the southpaw pushing with hard hands at a well pitched up delivery outside the off stump. He managed to get a thick edge which carried straight to Ajinkya Rahane at gully, who pouched it safely. Umesh Yadav got the big breakthrough as he trapped Angelo Mathews in front with a slider that hit the former Lankan captain on the knee roll. Mathews went for the DRS but replays ruled in favour of the bowler and the hosts were now on top.
However, captain Dinesh Chandimal and Niroshan Dickwella then stitched together a crucial 47-run partnership to silence the crowd and also took away a bit of momentum from India.
Dickwella continued to go for his shots and smashed a couple of sixes. He even got involved in a heated exchange with Shami, as Indian bowlers started to show their frustration.
Shami then produced an absolute jaffa, an in-swinger at 144 kph, to get the better off Chandimal, who was dismissed for 20. Bhuvneshwar almost got Dickwella as well, but the ball bounced just short of Saha behind the stumps after the wicket-keeper batsman had got an inside edge.
He eventually accounted for him, getting him leg before wicket, after coming in around the wicket and wrapping him on the pads. Dickwella was dismissed for 27.
He had Dilruwan too on the next ball, as he was given out lbw, but this time the decision was overturned as the ball missed the stumps.
Shami too was charged up, steaming in and bowling above 140 kph. He struck Shanaka right on the shoulder with a quick bouncer. But it was Bhuvneshwar who was doing the bulk of the damage, as he got one to hold it's line on the off stump and cleaned up Dilruwan as the Lankans were now desperate for the match to get over with just three wickets remaining.
Sri Lanka's dressing room showed relief when umpires eventually offered batsmen the light and they took it, with three wickets left.
Earlier in the day, it was Virat Kohli who came to the hosts' rescue as the Indian captain showed why he is considered one of the best batsmen in world cricket at the moment.
Kohli was at his brutal best in challenging conditions, with the pitch still having some spice, as he reached his 18th Test ton off just 119 balls, with 12 fours and 2 maximums. Kohli reached his 50th international century in style with a six and immediately declared the innings when unbeaten on 104.
He came into bat when India were in a spot of bother after losing KL Rahul, who again missed a century, as he was dismissed for 79 by Suranga Lakmal.
Lakmal showed why he is one of the most potent bowlers in the Lankan line-up as he also accounted for Cheteshwar Pujara (22) and Ajnkya Rahane (0).
Ravindra Jadeja, who was promoted up the order, failed to make most off his opportunity as off-spinner Dilruwan Perera got him with extra bounce.
India went to lunch at 251/5, with Ashwin batting in the middle along with Kohli. But after lunch, Kohli moved up the gears and went for his shots, despite losing partners at the other end.
Shanaka got one to get past Ashwin's defence, sending the middle stump for a cartwheel. He also accounted for Saha who hit one straight to Samarawickrama in the cover region.
Kohli, however, kept going for his shots and pounced on any loose balls, which the Lankan bowlers offered in plenty.
He left the ball well and his feet movement was immaculate in challenging conditions. In fact, after the 80th over, Kohli scored 46 runs off just 26 balls.
The skipper was given leg before wicket off Lakmal's delivery but he straight away went for a review. Replays showed that he had gotten a thick edge and the decision was overturned.
Bhuvneshwar Kumar was adjudged 'Man of the Match' for his eight-wicket haul. The action will now move to Nagpur, with India holding the edge, ahead of the second Test starting Friday.
Bhuvneshwar KumarCheteshwar PujaraDickwellaDinesh ChandimalInd vs SLind vs sl 2017India vs Sri lankamohammed shamiSuranga LakmalThirimannevirat kohli
First Published: November 20, 2017, 5:31 PM IST