TORONTO (AP) - Joffrey Lupul scored the go-ahead goal with 3:10 remaining, helping the Toronto Maple Leafs hold off a Carolina comeback and beat the Hurricanes 6-3 on Thursday night.
Lupul raced past Joe Corvo and beat Justin Peters for his seventh goal this season, shifting the puck from his backhand before tucking the puck into the net. All of Lupul's goals have come in five games since his return from a broken forearm.
Jay McClement sealed it with his sixth of the season on an empty-netter with 45 seconds to go before Nikolai Kulemin added his sixth with 3 seconds left - also into an empty net.
Tyler Bozak, Cody Franson and Dion Phaneuf also scored for Toronto. Phil Kessel had two assists for the Leafs, adding to his recent hot streak at the Air Canada Centre, where he has four goals and 10 assists in his last nine games.
Toronto outshot Carolina 36-22.
Eric Staal, Jordan Staal and Alexander Semin scored for the Hurricanes, who rallied from a 2-0 hole for a 3-2 lead early in the third before extending their winless streak to seven games.
Jordan Staal's goal at 6:55 of the third came made it 3-2 after two Leafs crashed into each other in the defensive end. Staal cruised past both and roofed the puck for his eighth of the season. Tuomo Ruutu got the assist for his 300th NHL point.
Kessel, who was flying up and down the ice all night, hit the crossbar seconds later. Lupul had a gilt-edged chance on the power play later in the period but was unable to stuff the puck in from the edge of the crease.
Phaneuf tied it up at 3 with 5:25 left with a shot from the point for his seventh of the season after Carolina had survived a frenetic power play that saw Lupul and Bozak unable to stuff the puck in from close range.
Peters became the third Hurricanes goalie to face the Leafs this season. Cam Ward (sprained MCL) and Dan Ellis (leg laceration) played in Carolina's two earlier wins over Toronto.
James Reimer was in goal for Toronto, his sixth start in the last seven games.
Peters was by far the busier goalie in the first period and looked sharp. Toronto outshot the visitors 13-7, with Kessel producing five of those for the Leafs. One of his got past Peters, flipping over his shoulder, and was slowly trickling toward the goal-line before it was cleared away by alert defenseman Joni Pitkanen.
Bozak opened the scoring at 3:58 with his 10th of the season, tapping his stick on the ice to get Kessel's attention at the side of the goal after some fierce forechecking pinned the Hurricanes in their own end. Kessel saw Bozak and sent a seeing-eye pass through the crease that eluded two Carolina defenders before the Leafs center tapped it in.
Seconds later, Toronto's Frazer McLaren and Kevin Westgarth were fighting at center ice with the Hurricanes forward getting the better of the tussle. McLaren, who officially spent one second on the ice before the fight, had to head to the dressing room for medical attention. His cheek, badly cut by a slash in a March 6 win over Ottawa, had again split open.
Westgarth emerged from the box to Carolina sticks banging on the boards. McLaren was back on the ice later in the period.
The Leafs came into the game leading the league in fighting majors with 33, while the Hurricanes had only 10.
Franson scored on the power play at 9:03 to make it 2-0, firing a shot through Peters from inside the faceoff circle for his third of the season, on a Kessel feed.
Play opened up in a second period that saw a string of minor penalties. Reimer robbed the Hurricanes on one, somehow parrying the puck away while lying on his side during a delayed penalty.
Eric Staal scored a short-handed goal at 11:29 after Semin, from inside his own zone, found him streaking in at the Toronto blue-line. The Carolina captain beat Reimer between the legs for his 15th of the season.
The Leafs had hit the post just seconds before.
Semin tied it up at 15:02, ripping a wrist shot past Reimer with Kessel in the box for too many men on the ice. It was the ninth of the season for the slick Russian winger, who signed a $35-million, five-year contract extension Monday.
Carolina defenseman Jay Harrison was hit with a boarding penalty late in the period for sending Nazem Kadri into the end boards.
NOTES: Leafs D Jake Gardiner was a healthy scratch, giving way to John-Michael Liles, who was returning from an ankle injury ... The game was the first of a three-stop Canadian road trip for the Hurricanes, who play in Winnipeg on Saturday and Montreal on Monday.