Mark Allen advanced to the final of the International Championship with a 9-6 semi-final win over Matthew Stevens.
Allen led 5-3 at the interval but the Masters champion had to hold-off a fight-back by Stevens, who made three century breaks in the final session.
Welshman Stevens recovered from 6-3 down to trail by 6-5 and 7-6 but Allen reeled-off back-to-back frames to win.
The Northern Ireland man will play the winner of the other semi-final between Neil Robertson and Jack Lisowski.
Allen, 32, hit a break of 75 to win the opening frame of the day but Stevens won the next three to build an early lead in China.
A break of 120 helped world number 12 Allen to hold the interval lead and he pushed further ahead when he edged a scrappy eighth frame at the start of the final session.
Stevens, 41, responded with breaks of 110 and 144 and the world number 56 also recorded a 115-break in the 13th frame to keep the pressure on his opponent.
Allen restored his two-frame cushion with a break of 85 and he built a sizeable lead in the 15th frame to clinch victory.
Australian Robertson and England's Lisowski play their semi-final on Saturday with the final taking place on Sunday.