One player was just trying to circle around and get open.

His opponent was trying to defend the run before switching gears to defend the pass.

It was during one of two highly entertaining games of state Division I-Open semifinal football Friday night at Aloha Stadium, and the outcome of this one, the opener, was hanging in the balance as another player, Kahuku quarterback Sol-Jay Maiava, scrambled around.

Maiava saw receiver Duke Heffernan alone in the middle of the end zone. Linebacker Kanai Mauga noticed it and made a bee-line for Heffernan.

Maiava threw the ball into Heffernan’s awaiting arms. Heffernan cradled it. Mauga, one of the state’s best defensive players, was a half-foot away and jumped on Heffernan, but it was too late.

The 8-yard TD pass with a mere 58 seconds left allowed No. 2 Kahuku to escape what would have been an upset of mammoth proportions. It gave the Red Raiders (11-1) a 10-7 victory over the sixth-ranked Waianae Seariders (7-5), who played the game of their lives.

That first semifinal (and the second one in which No. 1 Saint Louis dominated the second half in a 47-23 victory over No. 3 Mililani) sets the stage for what promises to be a rip-roaring top-tier state final Saturday.

“All I was trying to do is make sure the quarterback doesn’t run,” Mauga said. “I saw that wide-open receiver and I started running. I guess I was a little too slow to react.

“Our performance was amazing. It’s more than what we expected. We didn’t expect to hold them to 0-0 at the half. Scoring and trying to keep that lead was a big accomplishment. Unfortunately, we didn’t come out on top.”

Heffernan, who had all 10 of Kahuku’s points, including a 31-yard-field goal and an extra point, told his side of it.

“He saw me open in the end zone and he put it on me,” Heffernan said about Maiava. “My job (when the original play breaks down) is to make it as easy as possible for him to throw the ball to me.”

And what about that galloping giant of a player, Mauga (who has orally committed to USC), coming to say hello in an effort to deny him?

“I saw him in my peripheral vision,” Heffernan added. “I wanted to make sure I got the ball and tucked it. The last half and the first half, we were fumbling the ball. Coaches were saying get the ball — ball first. Protect the ball. I was in the end zone, so I made sure to hold on.”

Holding on was something Waianae couldn’t do, but they came awfully close.

“It started in the trenches and that’s where it ended,” said Waianae linebacker Toto Mailo, who had 10 tackles. “They (Kahuku) just came out and did what they do. That’s why they’re No. 1 (in the OIA). I want to credit our D-linemen. Our offense also gave a good fight against the No. 1 defense, and Kahuku proved why they are the No. 1 defense.

“This was especially for the fans and the community. I hope this was a statement for next year. All the odds were against us. We knew this could have been our last game, so we were just thinking that we wanted to go all out and it was a good outcome.”

The outcome was better for Kahuku, though you couldn’t tell by the look on coach Makoa Freitas‘ face. He looked like he had just wiped out on a 10-foot wave at Sunset Beach.

“Too many weeks in a row, too many weeks in a row,” Freitas said, referring to this last-minute win and last week’s 35-31 OIA championship win over Mililani in which the Red Raiders went ahead for good 1:34 to go. “I’m proud of them, proud of our quarterback, proud of our team.”

Two standout Kahuku defensive players, linebacker Miki Ah You and defensive back Alex Fonoimoana-Vaomu, are nursing injuries — as is the QB, Maiava, whose running ability and plant foot on his throws were affected by a leg injury.

Ah You (knee) sat out the whole game, but will be ready to play next week. Fonoimoana-Vaomu (arm) was hurt in the game and wore a sling on the bench in the latter stages. His status won’t be known for a few days.

Waianae was way more than ready to compete than most people expected, especially defensively.

We’ve got resilient kids,” Seariders defensive coordinator Ryan Lancaster said. “We prepared to stop the run and put the ball in Sol-Jay’s hands and make him beat us trying to pass the ball. I think we did a really good job up until the end. We just didn’t hold our water at that last second. Stop the run, make them one-dimensional, and then with that, try to take some risks. We didn’t try to go after Sol-Jay (any more than usual). He creates seams when you try to go after him. And if he gets out of the pocket, he hurts you. We wanted to contain and make him beat us trying to throw the ball.”

The four best teams in the state appeared to be looking in a mirror against their opponents last night. The defense of Kahuku and Waianae, and the offense of Saint Louis and Mililani.

And more and more offense in that second game. Plenty of big defensive plays, but still, a veritable shootout.

It came down to a few different things, but nobody more was more important than Mitchell Quinn, the Crusaders receiver who caught four TD passes of 50-yards-plus in a row from Chevan Cordeiro to turn a 23-17 deficit into a 44-23 Crusaders lead.

That’s what you call rocking and rolling. However, for coach Rod York and his Trojans, whose season finished at 10-2, it was a big disappointment.

There is still a bit of a friendly war that will have to be sorted out in the offseason because both York and quarterback Dillon Gabriel are taking ALL of the blame for the loss.

Usually coaches win these sort of things. You could tell York knew it wasn’t Gabriel’s fault late in the game. Gabriel was getting some heavy words from his dad, former UH star Garrett Gabriel, when York came over and patted Gabriel on the head four times.

“Tough one, yeah,” said Gabriel, who thought about not talking to the press afterward, but, being the upstanding man he is, went ahead with the chore. “They (the Crusaders) balled. They’re a good team. They’re the best team in the state and they showed it, too. I didn’t play the best, so I blame it on myself. I just felt like I didn’t play up to par.”

York’s voice cracked when he spoke about his team.

“Man, (Saint Louis was) just explosive,” he said. “My fault. I just gotta do a better job. Proud of my guys. I don’t put it on them. I put it on me. Credit coach Cal (Lee) and his staff. The Saint Louis Crusaders, man, they have a helluva team. They showed it. They proved it. Nobody has done that to us. Nobody has done that to us.

“They’ve got superior coaching and they’ve got dudes from one through 100. (Mitchell Quinn), he’s a helluva player and big players make big plays in big games and I think he’s the player of the game.

“Love my team. They’re the best. The best team I’ve ever coached, attitude-wise, character-wise. We make mistakes, but at the same time these kids learn from them and they grow and they fight. I’m so proud of this team. Everybody is proud of this team. They represented Mililani well. Yeah, it’s (the loss) on me.”

Saint Louis found a way to play solid defense in the second half and shut down Mililani’s usually overpowering offense. Kahuku did the same thing one week earlier.

The Crusaders’ defensive studs, including Isaiah Taliulu, Jordan Botelho, Noa Purcell, Faatui Tuitele and Gino Quinones, among others, shut down the Trojans.

On the other side of the coin, offensively, Saint Louis’ line (Benjamin Scott, Joshua White, Eliki Tanuvasa, Jonah Kea, Arasi Mose and Justice Mills) gave Cordeiro the time to unload in the second half.

So now, it’s the same-old, same-old — Saint Louis (9-0) vs. Kahuku in the championship game.

It’s a sure bet that it will be settled by either Saint Louis’ offense or Kahuku’s defense.

Expect the stadium to be packed Saturday as the two teams go at it in the top-tier final for the third year in a row and 13th time overall.

Here are the results when the Crusaders and Red Raiders meet in the final. Saint Louis holds a 7-5 edge.

Prep Bowls

>> 1989: Saint Louis 35, Kahuku 18

>> 1993: Saint Louis 37, Kahuku 22

>> 1994: Saint Louis 26, Kahuku 20

>> 1995: Saint Louis 27, Kahuku 26

>> 1998: Saint Louis 28, Kahuku 20

State finals

>> 1999: Saint Louis 19, Kahuku 0

>> 2000: Kahuku 26, Saint Louis 20

>> 2001: Kahuku 21, Saint Louis 14

>> 2003: Kahuku 27, Saint Louis 26

>> 2006: Kahuku 7, Saint Louis 6

>> 2015: Kahuku 39, Saint Louis 14

>> 2016: Saint Louis 30, Kahuku 14