Pakistan 305 for 7 (Babar 115, Fakhar 54, Hasaranga 2-63) beat Sri Lanka 238 (Jayasuriya 96, Shanaka 68, Shinwari 5-51) by 67 runs
Karachi: Pakistan rode on a brilliant century from Babar Azam and fast bowler Usman Shinwari's five wickets to beat Sri Lanka by 67 runs in the second day-night international on Monday as Karachi staged its first ODI in a decade.
Azam, currently one of the best batsmen in limited overs cricket, smashed a solid 105-ball 115 to lift Pakistan to 305-7 after the home team won the toss and batted.
Shinwari then knocked off the top-order in figures of 5-51 as the visitors -- depleted by the withdrawal of 10 top players who refused to tour over security fears -- were bowled out for 238 in 46.5 overs.
The win gives Pakistan a 1-0 lead in the three-match series with the first ODI rained off in Karachi on Friday. The third and final match is also set for the same venue on Wednesday.
Sri Lanka were down and out at 28-5 before youngsters Shehan Jayasuriya and Dasun Shanaka staged a fightback during their record 177-run stand -- an ODI record for this wicket for Sri Lanka.
Jayasuriya missed his maiden hundred by four runs while Shanaka notched his highest ODI score of 68, but both fell in the space of three balls to surrender the fight.
Jayasuriya hit seven boundaries and a six in his 107-ball knock while Shanaka had six fours and two sixes in his 80 balls.
The match marked the first ODI cricket to be played in Karachi since the same two teams played here in January 2009, on the tour when the visitors' bus was attacked by terrorists in Lahore.
International cricket remained suspended in Pakistan for six years before Zimbabwe became the first team to play here in 2015.
Pakistan also hosted a World XI (three Twenty20s), Sri Lanka (one T20 international) and the West Indies (three T20) in the last three years.
Like in the recent series, Pakistan have put in place stringent security arrangements for the Sri Lankan team, with 2,000 security personnel in and around teams' hotels and stadium.
A crowd of 12,000 came to watch the return of ODI cricket to their city, weathering heat and various security check-posts, using special shuttles to reach the National stadium.
Shinwari dismissed Sadeera Samarawickrama (six), Avishka Fernando (nought) and skipper (Lahiru Thirimanne (nought) to rattle Sri Lanka to 22-4 by the eighth over.
Jayasuriya and Shanaka bettered the previous best sixth wicket stand of 159 between Chamara Kapugedera and Chamara Silva against the West Indies at Port of Spain in 2008.
It was Azam who treated the fans in the afternoon.
Azam, when on 54, became the fifth batsman to complete 1,000 ODI runs in 2019 -- behind India's duo Virat Kohli and Rohit Sharma, and Australian couple Aaron Finch and Usman Khawaja.
He added an innings-building 111 for the third wicket with Haris Sohail (40), as Sri Lankan bowlers toiled to break the stand.
It was only through an unfortunate run out that Sohail fell, leaving Azam to anchor the innings. He square cut pacer Lahiru Kumara for a boundary to complete his 11th ODI hundred off 97 balls.
Azam was finally out at deep mid-on off Kumara, cracking eight boundaries and four sixes.
Iftikhar Ahmed batted aggressively for his 20-ball 32 not out -- two sixes and as many boundaries -- as Pakistan made 89 in the last 10 overs.
Openers Fakhar Zaman (54) and Imam-ul-Haq gave Pakistan a solid start of 73 before Sri Lanka's best bowler, leg-spinner Wanindu Hasaranga, trapped Imam for 31.
Hasaranga also had Fakhar for a 65-ball 54 that was studded with six boundaries and a six. Hasaranga finished with 2-63.