A tale of smog, spin and centuries ended with Sri Lanka scrapping to secure a draw on the final day of the third Test against India, who won the series 1-0.
Sri Lanka almost collapsed to a stunning loss in the first game in Kolkata before an innings-and-239-run thrashing in Nagpur gave Virat Kohli's side the advantage.
The tourists' efforts in the field in Delhi have been overshadowed by players falling ill amid high levels of pollution at the Feroz Shah Kotla Gorund, with Sri Lankan players taking to the field wearing masks.
But Dhananjaya de Silva hung around to compile a third Test century - the fourth hundred of the match - and anchor a stubborn resistance on Wednesday before he was forced to retire hurt on 119 with a thigh injury.
A victory target of 410 was out of reach, but debutant Roshen Silva kept the ship steady with a 154-ball knock of 74 not out as Sri Lanka reached 299-5 before handshakes prompted a result.
Sri Lanka began the final day 31-3 and thoughts of India running through the line-up looked to playing out when Angelo Mathews - a centurion in the first innings - was out in the sixth over of the day, the former skipper removed by a sensational grab from Ajinkya Rahane at slip.
Dhananjaya and Dinesh Chandimal guided the tourists to lunch as India toiled in the field, unable to find the catalyst for a Sri Lankan collapse.
Ravichandran Ashwin bowled captain Chandimal through the gate for 36, but removing Dhananjaya proved a much tougher challenge, as he meticulously picked the bad balls to tick the scoreboard over and keep Kohli guessing.
Mohammed Shami had fallen ill in Tuesday's play and the pacer was below-par, Dhananjaya guiding him through point for a well-run three which brought up his ton from 188 deliveries.
Luck simply was not on India's side as the 26-year-old was then dropped on 110, however it was not long before he returned to the dressing room with his thigh problem.
Any hopes India had of applying pressure were quickly dashed as Silva and Niroshan Dickwella (44 not out) guided Sri Lanka to the close, earning an honourable draw.