Sri Lankan batsman Kaushal Silva obtained six stitches on his left hand on Day 3 but that did not deter him from taking on a fiery Mitchell Starc, and posting a possibly match-defining 115 on Day 4. Dinesh Chandimal, with his patient 43, yet again, played the role of a grafter to perfection as Sri Lanka ended Day 4 of the fourth Test at the Sinhalese Sports Club Ground in Colombo against Australia on 312/8, armed with a lead of 288.

After losing makeshift opener Dilruwan Perera towards the end of Day 3 and starting the day on 22/1, Sri Lanka's batsmen showed greater determination and made Australia earn their wickets.

Off-spinner Nathan Lyon, who found substantial turn and ended the day with figures of 4/123, got the ball to move away from Dimuth Karunaratne in the morning session as wicket-keeper Peter Nevill whipped the bails off in a flash. Kusal Perera's stroke-filled 24 off 25 balls was ended by Jon Holland and Starc got a delivery to rap him in front to have him dismissed for just 18. Sri Lanka found themselves in trouble at 98/4.

Silva, however, was in no mood to relent and took on the Australian bowlers whenever there was a bad ball on offer. Along with captain Angelo Mathews and later Dinesh Chandimal, Silva continued to keep fighting, despite Australia's bowlers beating his bat quite a few times.

When Chandimal got in on the act with Silva, Australian heads began to drop. The last three Test matches played at this ground have seen the spinners run riot on the fifth day. Silva soldiered on and got to his third hundred. There was a cry of relief from the 30-year-old, whose place in the team was under scrutiny before this match.

Dhananjaya de Silva played plenty of attacking shots in his unbeaten 44 in the final session of the day's play, coming into bat at no. 8. Sri Lanka have not declared yet, probably wary of an early blitz from David Warner but they will be confident of wrapping up a series win and a 3-0 whitewash on the last day.

Brief scores:

Sri Lanka: 355 (Dhananjaya de Silva 129, Dinesh Chandimal 132; Mitchell Starc 5 for 63, Nathan Lyon 3 for 110) & 312/8 (Kaushal Silva 115, Dhananjaya de Silva 44 not out; Nathan Lyon 4 for 123, Mitchell Starc 2 for 58) lead Australia 379 (Shaun Marsh 130, Steve Smith 119; Rangana Herath 6 for 81) by 288 runs.