TORONTO (AP) The Colorado Avalanche kept Toronto at bay and got some timely scoring to beat the struggling Maple Leafs.
Nathan MacKinnon had a goal and an assist, Valeri Nichushkin and Joonas Donskoi also scored, and Philipp Grubauer stopped 38 shots to help the Avalanche beat the Maple Leafs 3-1 Wednesday night.
''One of the most complete games we've played,'' said Grubauer, who was pulled after allowing four goals on 15 shots against the Maple Leafs in Colorado on Nov. 23. ''We protected the middle.''
Zach Hyman scored for Toronto and Frederik Andersen, starting on consecutive nights for the first time since January 2017, had 27 saves.
After killing off Jake Muzzin's four-minute penalty for high-sticking early in the third, thanks in large part to a big stop by Andersen on Donskoi, the Maple Leafs' first man advantage turned into a disaster.
Jason Spezza's stick shattered on a shot and as the Toronto center tried to keep the puck in with his feet at the blue line, he got caught up with Maple Leafs defenseman Morgan Rielly. That allowed Nichushkin to move in all alone and bury his third goal of the season upstairs short-handed at 6:40.
''A tough play,'' said Spezza. ''I'm going to the bench and then I hear somebody yell the puck is coming, so I make a split-second decision to play it and (Rielly) yells that he's there.
''I kind of just froze to try to not get in his way and, in turn, got in his way more. That game falls on me.''
Toronto, which had Mitch Marner back after he missed 11 games with a high ankle sprain, pushed as the period wore on and pressed late, but couldn't get anything past Grubauer with Andersen on the bench before Donskoi iced it into an empty net with 79 seconds left.
''It was a real challenge for us defensively,'' Maple Leafs coach Sheldon Keefe said. ''The urgency was fine and some of the adjustments we've been working at and focusing on defensively have been there.
''While our attention has gone there, we've gotten away from some of the things offensively we focused on in the early going and that has caused us to revert back to some things we don't necessarily like. We'll have to try to fix that.''
The Maple Leafs were coming off Tuesday's embarrassing 6-1 loss at Philadelphia - performance where Toronto was in the game in the third period only to fall apart in the waning minutes.
Star center Auston Matthews said the team ''quit'' with the game out of hand, leaving Andersen hung out to dry on two late goals 12 seconds apart in the final minute. Keefe - in just his sixth game as head coach - addressed the team immediately after the final buzzer in Philadelphia.
Andersen then told his coach he wanted to play against Colorado even though backup Michael Hutchinson was originally scheduled to get the start.
''The way the guys got called out after last game, I wanted to be out there,'' Andersen said.
''He's a real leader for us,'' Toronto captain John Tavares said. ''He sets a real tone for us and the backbone of our group. He played great, he gave us a great chance to win. It's too bad we didn't reward him.''
The game marked Avalanche center Nazem Kadri's return to Scotiabank Arena for the first time since an offseason trade from Toronto to Colorado in exchange for defenseman Tyson Barrie and forward Alexander Kerfoot. Kadri, the seventh pick in the 2009 NHL draft, had 161 goals and 196 assists in 561 games with the Maple Leafs, who paid tribute to their former player with a video montage during the first television timeout.
''I came close to shedding a tear,'' Kadri said. ''I'm forever thankful for the fans embracing me and treating me so well.''
MacKinnon opened the scoring at 10:52 of the second period on the first power play of the night. After the Avalanche gained the zone, Mikko Rantanen snapped a cross-ice pass to MacKinnon, who had time to shoot into the top corner on Andersen from the faceoff dot for his 18th.
Toronto responded just 1:50 later when Kerfoot fed a no-look pass in front for Hyman to redirect past Grubauer for his third.
NOTES: MacKinnon, now tied for third in NHL scoring with 44 points, has goals in five straight games. ... Colorado coach Jared Bednar said captain Gabriel Landeskog, who's been out since Oct. 26 with a lower-body injury, could return Thursday at Montreal. ... Rielly played the 500th game of his career. ... Toronto F Andreas Johnsson left the game with a leg injury after blocking a shot in the second. ... The Maple Leafs lost C Nick Shore to Winnipeg on waivers, while forward Nic Petan and defenseman Martin Marincin were loaned to the AHL's Toronto Marlies - all moves to make room for Marner's return off injured reserve.
Avalanche: At Montreal on Thursday night.
Maple Leafs: At St. Louis on Saturday to open a four-game trip.