Outstanding batting from openers Shikhar Dhawan and KL Rahul helped India capitalise a good score of 171-1 in their second innings of the series' first Test match, being played at Eden Gardens here.
India are leading Sri Lanka by 49 runs at stumps on the fourth day, which ended before schedule due to poor light. Earlier in the day, the Virat Kohli -led side dismissed the Islanders for 294 in their first innings.
After finishing 165-4 the previous day, Niroshan Dickwella and captain Dinesh Chandimal began the fourth morning under sunny skies and took Sri Lanka to 200. Sri Lanka's middle order was shaken when Mohammed Shami took first wicket of the day by ending Dickwella's stay at 35.
It was Rangana Herath who gave the team their pace again by scoring 67 for the side, but Herath offered the ninth wicket of the team to Bhuvneshwar Kumar when Sri Lanka was at 290.
Shami finished with four wickets on his home ground while Bhuvneshwar Kumar added two wickets on the fourth day to return 4 for 88. Herath's Test fifty propped up Sri Lanka's lead to 122 , but Rahul and Dhawan's aggression did not take it long to take over the lead. Dhawan struck a 116-ball 94 and stitched a solid 166-run stand with Rahul for the opening wicket.
Unfortunately, Dhawan gave his wicket to Shanaka and the left-handed opening batsman had to depart for 94, felling just six runs short of his 7th Test century. Rahul who departed for duck in his first innings, remained unbeaten at 73.
India will start their last day of the Kolkata Test with Rahul (73) and Cheteshwar Pujara (2) batting at the crease. The two sides are playing three-match Test series.