Bangladesh levelled their T20 series against Sri Lanka at 1-1 with an 83-run victory in Dambulla, as Rishad Hossain and the visiting seamers tore through the hosts.
Bangladesh entered the match having lost their last six T20Is since overcoming the United Arab Emirates on May 17, requiring a victory to keep the three-match series alive.
Litton Das plundered 76 off 50 deliveries to kickstart the tourists' innings after the cheap losses of openers Tanzid Hasan (five) and Parvez Hossain Emon (0), before he was caught by Nuwan Thushara off the bowling of Maheesh Theekshana.
Shamim Hossain supported Litton with a destructive 48 off 27 balls as Bangladesh reached 177-7, with Shamim's urgency seeing him run out three balls from the end of the innings, thanks to a wonderful strike from Kusal Mendis.
It was then time for the Bangladesh seamers to get to work, as Sri Lanka's chase of 178 was suffocated from the start.
Shamim exacted revenge on Mendis just two overs in, having him run out for eight with a brilliant strike at the stumps, and within six overs, Sri Lanka were reduced to 30-4.
Shoriful Islam had Kusal Perera (0) and Avishka Fernando (two) removed in that spell before handing over to Rishad, who posted figures of 3-18 as Bangladesh ripped through the Sri Lankan middle order.
The hosts' innings lasted a mere 15.4 overs as they were bowled out for 84, Litton stumping Binura Fernando (six) to finish things off another looping delivery from Rishad.
Data Debrief: Mendis landmark counts for nought
Mendis started the Sri Lankan innings needing just seven runs to become the second player in his country's history with 2,000 runs in men's T20Is, after Perera (2,080).
Mendis passed that figure with a four off Mohammad Saifuddin's bowling, but on the very next ball, he was caught about a metre short by Shamim's terrific toss.
Sri Lanka were looking to start a year with three successive victories in the 20-over format for the first time since 2018, but instead, this series will go to a decider in Colombo on Wednesday.