Three half-centuries by top-order batsmen earned Afghanistan a vital 142-run first innings lead and control of the one-off Test against Ireland on Saturday. Ireland lost captain William Porterfield for zero during a tricky last hour of play on the second day before reaching 22-1 at stumps. It still trails by 120 runs and needs to bat much better than its first-innings 172 against Afghanistan's spin attack.
Earlier, Rahmat Shah was agonizingly close to hitting a first Test century for his country, finishing with a 98 off 214 balls, while captain Asghar Afghan (67) and Hashmatullah Shahidi (61) also contributed before Afghanistan was bowled out for 314.
Afghanistan was eyeing a much bigger lead before Ireland hit back and claimed the last five wickets for 87 runs in the last session.
Earlier, Shah and Shahidi featured in a century stand and denied Ireland success in the first session after it resumed the second day on 90-2.
Both batsmen played solidly against both spin and seam despite Ireland conceding only 20 runs in the first hour.
Shah completed his maiden fifty off 121 balls by pulling the first ball of left-arm James Cameron-Dow (2-94) for his ninth four as Afghanistan scored 47 runs in the second hour and moved to 157-2 by lunch.
Ireland had to wait nearly an hour after lunch before it finally broke the 130-run partnership when off-spinner Andy McBrine (2-77) had Shahidi lbw off a full-pitched delivery.
Tim Murtagh (1-33), who scored a half-century in first-innings while batting at No. 11, then struck immediately with the second new ball when Shah played on to the fast bowler.
2nd ODI: Zazai's World Cup 2019 audition turns into a damp squib as game against Ireland abandoned due to rain
3rd ODI: Andrew Balbirnie's 145* trumps Najibullah Zadran 104* as Ireland beat Afghanistan by 4 wickets
It was the kind of knock that one dreams about, says match-winner Andrew Balbirnie after win against Afghanistan
Shah couldn't believe he missed making history for Afghanistan and stood at the crease with his head down before walking back to the dressing room in disappointment.
Ireland seamer Stuart Thompson (3-28) then dealt another blow in the next over when all-rounder Mohammad Nabi was dismissed without scoring while attempting a loose drive.
But Afghanistan managed to bat around the tailenders by smashing four sixes and six boundaries in his 92-ball knock and took the team's total beyond the 300-run mark. Thompson returned and wrapped up the innings by claiming two wickets in successive overs as Afghanistan was caught behind and Wafadar Momand was caught in the slip.
Both teams are competing in only their second test match since gaining test status in 2017. Last year, Afghanistan lost its debut test against India, and Ireland was beaten by Pakistan in its inaugural test.