Thisara Perera smashed 65 off 36 balls and then grabbed three wickets as Sri Lanka thumped Pakistan by 77 runs in the second one-dayer on Tuesday to level the three-match series 1-1.
Sri Lanka recovered from 194-6 to post a commanding 310-9 in their 50 overs after electing to bat, before dismissing Pakistan for 233 in 43.5 overs in the day-night match in Hambantota.
Pakistan had won the first match at the same venue by four wickets last week. The decider will be played in Dambulla on Saturday.
A second-wicket stand of 96 between Ahmed Shehzad (56) and Mohammad Hafeez (62) lifted Pakistan to 114-1 by the 18th over before nine wickets fell for the addition of 119 runs.
Hafeez, who had taken three wickets in Sri Lanka's innings, appeared in good batting form with 11 boundaries when he was leg-before to spinner Seekkuge Prasanna.
Umar Akmal was caught behind off Tillakaratne Dilshan for one and Shehzad became leg-spinner Prasanna's second victim through a smart catch by veteran wicket-keeper Kumar Sangakkara.
Left-arm spinner Rangana Herath removed skipper Misbah-ul Haq (36) and Sohaib Maqsood (nine), before Perera ensured a quick finish to the innings by taking the next three wickets.
Earlier, Sri Lanka were reduced to 62-3 when skipper Angelo Mathews (93) and Mahela Jayawardene (67) retrieved the situation by adding 122 for the fourth wicket.
The dismissal of Jayawardene in the 34th over -- the first of three wickets in as many overs by Hafeez -- saw Sri Lanka collapse from 184-3 to 194-6.
Perera helped Mathews add 87 off 57 balls for the seventh wicket before the captain holed out to mid-wicket against Wahab Riaz seven runs short of a century.
SCORES IN BRIEF
SRI LANKA: 310 for 9 in 50 overs (Tharanga 27, Jayawardene 67, Mathews 93, Perera 65; Riaz 4-65, Hafeez 3-39)
PAKISTAN: 233 all out in 43.5 overs (Shehzad 56, Hafeez 62, Misbah 36, Fawad 30, Afridi 17; Malinga 2-56, Herath 2-38, Prasanna 2-36, Perera 3-19)
Result: Sri Lanka won by 77 runs.
Player-of the-match: Thisara Perera.