Blaine scored 15 points in the fourth quarter to upset visiting Class 6A, No. 7 Totino-Grace 28-16 in high school football Friday night.

Connor Melton accounted for all four Bengals touchdowns. He totaled 88 rushing yards and two scores and threw for 154 yards and two touchdowns. Mikey Gottschalk caught the first scoring pass from Melton to tie the score in the second quarter, and Sam Browne gave the Bengals the lead for good on a 77-yard touchdown catch.

The Eagles took a 14-7 lead into the halftime on a 33-yard touchdown pass from Peyton Schuler to Isaac Richards with 1.8 seconds left.

Rocori 16, Hutchinson 7: Mason Primus threw a pair of early touchdown passes to lift the Class 4A, No. 5 Spartans past the visiting Class 4A, No. 4 Tigers. Primus connected with Jesse Huber and Dalton Thelen on fourth-down plays on each of the first two offensive possessions of the game. The Spartans converted both two-point conversion attempts.

Rogers 32, Monticello 27: Cole Larson threw a touchdown pass to John Torresani with 32.2 seconds left to give the Class 5A, No. 11 Royals the victory over the visiting Magic. The Magic took its only lead of the game with 1:02 left on a touchdown pass from Ethan Bosacker to Luke Henline to cap a comeback from 17 points down entering the fourth quarter. Larson finished with 272 passing yards and two touchdowns, Torresani had 105 receiving yards and a touchdown and Eli Solberg had 181 receiving yards and two touchdowns for the Royals. Bosacker had 248 passing yards and four touchdowns, Henline had 87 receiving yards and three touchdowns.

Edina 28, Maple Grove 17: Ryan Meyer accounted for two fourth-quarter touchdowns to lead the Class 6A, No. 5 Hornets past the host Class 6A, No. 7 Crimson. Meyer ran in from 2 yards out to put the Hornets ahead for good and later threw a 28-yard touchdown pass on fourth down to Luke Glenna to clinch the victory for the Hornets. Meyer and Glenna connected on a 15-yard touchdown pass in the second quarter to get the Hornets on the board. Justin Stolp and Evan Hull scored touchdowns in the first half to give the Crimson a 14-0 lead.

Buffalo 48, Chisago Lakes 41: Adrian Bouman threw a 20-yard touchdown pass to Riley Habisch in the final two minutes to lift the Bison past the Wildcats. The Wildcats had a chance to take the lead but fumbled inside the Bison-10-yard line. The Bison recovered and produced the winning score on the ensuing drive. Habisch led the Bison with 162 rushing yards and five touchdowns, four on the ground. Bouman threw for 407 yards and three touchdowns and Treyton Welch had 214 receiving yards and two touchdowns for the Bison. Henry Trost ran for 126 yards and two touchdowns to lead the Wildcats.

St. Louis Park 16, Irondale 13: Skyler Rudelius-Palmer made a 28-yard field goal as time expired to give the Orioles the victory over the host Knights. He had made field goals of 22 and 29 yards earlier in the game. The Orioles tied the score at 13 in the fourth quarter on a 21-yard touchdown pass from Jonny Sorenson to Ryan Klaers with 1:40 left. The Knights took a 10-point lead at halftime on touchdown passes from Leighton Glodek to Aden Price and Brendan White to Glodek on consecutive drives in the second quarter.

Prior Lake 8, Lakeville North 0: Spencer Shaver scored on a 2-yard run and Preston Jelen converted the two-point conversion in the visiting Lakers' victory over Class 6A, No. 9 Panthers.

South St. Paul 15, Hill-Murray 14: Cade Sexauer ran for a 13-yard touchdown and Jackson Luhrs converted a two-point conversion to give the host Class 4A, No. 12 Packers the victory over the visiting Pioneers.

staff reports