Galle - Australia were dismissed for a record low against Sri Lanka in the second Test on Friday after a Rangana Herath hat-trick, before striking back with three wickets in a tumultuous morning session.
After the visitors were all out for 106 in their first innings, Sri Lanka were 31 for three at lunch on the second day, giving them an overall lead of 206 runs in a match that is proceeding at breakneck speed.
An astonishing 11 wickets fell in the session as the Australians were skittled out for their lowest score in 28 Tests against Sri Lanka before the hosts began their second innings by losing three wickets.
Kusal Perera was at the crease on 15 at the break, batting alongside his skipper Angelo Mathews who has yet to get off the mark.
Australia, who resumed on their overnight score of 54 for two, struggled throughout the morning against both Herath and his fellow spin bowler Dilruwan Perera who shared eight wickets between them.
Off-spinner Perera bowled overnight batsman Usman Khawaja in his second over of the day before Herath took his first wicket by clean bowling the Australian skipper Steven Smith.
But it was Herath's seventh over of the innings which proved decisive as he dismissed Adam Voges, Peter Nevill and Mitchell Starc off consecutive deliveries to put Australia on the mat.
Only Mitchell Marsh, who was the last man out for 27, offered much resistance for the Australians during the morning's play.
But the visitors also struck early in the Sri Lanka second innings as pace spearhead Mitchell Starc bowled an impressive four-over spell on what had been seen as a flat pitch.
Starc, who bagged 5 for 44 in the first innings, dismissed the opener Dimuth Karunaratne for seven and the in form Kusal Mendis, who top-scored in Sri Lanka's first innings total of 281, was also out for seven.
The visitors now face a massive task to save the Test and the series after Sri Lanka won the first of the three-match rubber in Pallekele.