WATCH: Beilein, Abdur-Rahkman & Livers after 70-69 loss to Purdue

Isaac Haas made only 55 percent of his free throws as a freshman.

Now a senior, the Purdue big man is a lot more reliable - and when he drew a foul in the final seconds of a tie game, the 7-foot-2 Haas was confident.

"What goes through your head is all those times you practiced," Haas said. "It was just natural for me. I knew once I got fouled, I was going to make at least one."

Haas made a go-ahead free throw with four seconds remaining and No. 5 Purdue remained unbeaten in the Big Ten with a 70-69 victory over Michigan on Tuesday night.

The Boilermakers (16-2, 5-0) have won 12 in a row, while the Wolverines had their seven-game winning streak snapped. Purdue is 5-0 in conference play for the first time since 1989-90.

The clutch shot by Haas was part of a tense sequence in which the Boilermakers were given the ball after a long replay review. It initially appeared the Wolverines would be the team with a chance to win the game with the shot clock turned off.

A tight, back-and-forth second half came to a standstill in the final seconds when Michigan's Charles Matthews lost the ball while driving to the basket. Possession was originally awarded to the Wolverines (14-4, 3-2 Big Ten), but after the review, officials changed the call and gave it to Purdue with 6.2 seconds left.

"I really was convinced we had a play set up, we were going to win the game," Michigan coach John Beilein said. "And all of a sudden they're winning the game."

Michigan had a foul to give and used it with 4.8 seconds to play, but the Boilermakers, who were out of timeouts, were able to get the ball well into the frontcourt before the foul. Purdue then inbounded from the sideline near its bench. The ball went to Haas in the post, and Michigan's Moe Wagner reached around from behind to knock it away.

The whistle blew, a foul was called on Wagner, and Haas made the front end of a one-and-one to give Purdue the lead. He missed the second free throw, Michigan rushed the ball up the court and Matthews took a desperation shot just after crossing midcourt that hit the rim but missed.

Zavier Simpson led Michigan with 15 points. Haas scored 17 for Purdue, and Carsen Edwards added 19.

CLOSE CALLS

It was a well-played, entertaining game that will be remembered largely for the two big calls near the end. When Matthews drove, Purdue's Dakota Mathias appeared to reach in and hit the ball from behind, but Matthews' right hand might have remained in contact with the ball long enough that he would have been the last one to touch it.

It took a while to find out the resolution.

"I asked them why it was taking so long," Beilein said. "I said, if it was taking so long, it must not be indisputable."

Wagner had been called earlier in the game for reaching over a defender and trying to knock the ball away. On the play at the end, he tried something similar, but appeared to have his right arm around Haas' waist, and the call went against him.

FAST START

Purdue made its first five 3-point attempts and led 27-14. The Boilermakers finished 12 of 21 from beyond the arc, but Michigan shot 10 for 22 and nearly pulled off a comeback win.

BIG PICTURE

Purdue: The Boilermakers have to be considered contenders to win the league title, despite Michigan State's impressive play so far. This was one of Purdue's toughest remaining games, and the Boilermakers pulled it out.

"I thought they had the momentum in the last four minutes of the game," Purdue coach Matt Painter said. "We were answering them. They weren't answering us."

Michigan: The Wolverines stuck with Purdue on a night when the Boilermakers shot well from the perimeter, and Michigan freshmen Isaiah Livers and Jordan Poole continued to show progress, combining for 18 points.

UP NEXT

Purdue: The Boilermakers play at Minnesota on Saturday.

Michigan: The Wolverines play their only scheduled game this season against their biggest in-state rival, at No. 4 Michigan State on Saturday.