Palermo hold the upper hand in their Coppa Italia semi-final with AC Milan after claiming a 2-2 draw in the first leg.
Zlatan Ibrahimovic put the home side in front after just four minutes, but Palermo hit back through Javier Pastore ten minutes later and went in front courtesy of Abel Hernandez early in the second half.
Urby Emanuelson equalised for Milan with 15 minutes remaining, but the visitors will be happier with the outcome after an entertaining contest at the San Siro.
Ibrahimovic had opened the scoring with the first significant attack of the game, firing home with a right-footed shot from the edge of the box after a cross from Massimo Oddo.
Palermo looked to get back on level terms quickly and Mauricio Pinilla saw his 10th-minute shot blocked by Milan goalkeeper Marco Amelia.
But the visitors only had to wait four minutes before equalising as Pinilla turned provider to set up Pastore to score with a left-footed shot into the bottom corner.
Chances were coming at either end and Kevin-Prince Boateng drilled a shot over from outside the area for Milan, while Hernandez brought another good save from Amelia at the other end.
Amelia was called into action again on 35 minutes, this time saving a long-range Pinilla effort, while Mathieu Flamini fired narrowly over the bar at the other end three minutes later.
And Milan came close to reclaiming the lead just before the interval, only for Salvatore Sirigu to make a superb save from Ibrahimovic.
Sirigu pulled off a similar save from Luca Antonini five minutes into the second half, and just two minutes later his side were in front.
Pastore set up Hernandez 20 yards out from goal and the striker rifled a left-foot shot into the top corner.
Milan tried to hit back and Oddo and Flamini fired wide of the target before Emanuelson showed them how it was done, firing home after 76 minutes to make it 2-2.
Both sides went in search of a likely winner, but Josip Ilicic had a shot saved by Amelia and Sirigu saved from Pirlo as the game finished all square.