India inched closer towards victory in the first Test after Sri Lanka managed to reach 85 for 2 after India set a mammoth victory target of 550 riding on skipper Virat Kohli's 17th Test hundred.
It's a matter of time as India need another 8 wickets with a day and two sessions of play still left and the hosts needing 465 runs.
Dimuth Karunaratne (44 batting) and Kusal Mendis (24 batting) were at the crease after Mohammed Shami and Umesh Yadav got a wicket apiece.
Earlier India declared their second innings at 240 for 3 after Kohli struck an unbeaten 103 as India quickly added 51 runs to their overnight score of 189 for 3.
Starting from overnight 189 for 3, Kohli and Ajinkya Rahane (23*) showed urgency to score runs. It was obvious that the visitors were waiting for the captain to get to his landmark before putting Lanka into bat again.
And to his credit Kohli didn't waste any time as he reached his hundred off 133 balls in the sixth over of the morning. Overall, Kohli faced 136 balls and hit 5 fours as well as a six.
In doing so, he equalled the records of former Indian skipper Dilip Vengsarkar (116 Tests) and VVS Laxman (134 Tests), who both have 17 Test hundreds.
Kohli reached his milestone in only his 58th Test. The Indian declaration came in the very next over. It was the second highest target set by India in a Test after 617 versus New Zealand at Wellington in 2009.
Kohli and Rahane put on 51 runs for the 4th wicket. In doing so, they became the 14th pair to put up 2000-plus runs in Test cricket for India.
Kohli also became the quickest captain to score 1000 overseas Test runs, reaching the mark in 17 innings. He improved Sachin Tendulkar's record of 19 innings.
Chasing 550 runs then, Sri Lanka were reduced to 29/2 in the sixth over. Upul Tharanga (10) was dropped at second slip by Kohli off Mohammed Shami (1-32) in the third over. But the opener couldn't make it count as he played on two balls later when Shami angled one into him.
Three overs later, Danushka Gunathilaka (2) was caught at square leg off Umesh Yadav (1-26).
Then, Karunaratne and Mendis came together, and the duo improved on their failures in the first innings to put up an improved show.
They added 56 runs for the third wicket on a track that was still not offering enough assistance to the spinners and defied the Indian bowling attack for 17.2 overs.