Kusal Perera smashed a brisk 64 to set up Sri Lanka's 17-run victory over Bangladesh in a one-off Twenty20 international in Pallekele on Sunday.
The opener hit four sixes and five fours in his 44-ball knock as Sri Lanka posted a challenging 198-5 before restricting Bangladesh to 181-7.
Mohammad Ashraful top-scored for Bangladesh with a 27-ball 43 while seamers Angelo Mathews and Thisara Perera each bagged two wickets for Sri Lanka.
Bangladesh suffered a setback after reaching 68-2 in the eighth over as Ashraful was given out leg-before. He hit seamer Thisara Perera for two successive sixes and then a four in the same over.
Skipper Mushfiqur Rahim (39) and Mohammad Mahmudullah (31) kept Bangladesh's hopes alive with a 50-run stand for the fifth wicket before both fell in the 15th over to leave their team struggling at 137-6.
Bangladesh were let down by their bowling in the later stages of the innings as they gave away 75 in the last five overs. They also conceded 19 runs in wides.
Sri Lanka's Jeevan Mendis and Angelo Mathews put on 66 for the fifth wicket off just 5.5 overs to help their side set a stiff target.
Mendis hit three sixes, including two in an over from left-arm spinner Abdur Razzak, and two fours in his 17-ball 37 while Mathews contributed an unbeaten 30 off 27 deliveries.
Sri Lanka plundered 32 off the last 13 balls, with Thisara Perera making a seven-ball 22 not out with two sixes and as many fours.
The hosts made a brisk start after being put in to bat as they raced to 52 in the opening five overs, with Kusal Perera playing attacking shots against both pace and spin.
Perera hit seamer Shahadat Hossain for two fours and a six in the first over of the match before smashing two more sixes, one each off spinners Sohag Gazi and Razzak.
He completed his maiden T20 half-century in the eighth over with two runs to mid-wicket off Mahmudullah.
Shahadat conceded 54 runs in four overs, including 24 in his last.