MIYAGI, Japan — Vanessa Gilles had the decisive goal as Canada beat Brazil 4-3 on penalty kicks Friday to advance to the semifinals of the Olympic women's soccer tournament.

Goalkeeper Stephanie Labbe sealed the win with a diving two-handed save on Brazilian defender Rafaelle.

Penalties were necessary after the two teams held each other scoreless through regulation and extra time.

Jessie Fleming, Ashley Lawrence, and Adriana Leon also scored for Canada in penalty kicks.

Marta, Debinha, and Erika had given Brazil an early lead in the kicks before Labbe made two clutch saves on Andressa and then Rafaelle.

Canada had its chances to win in the 30-minute extra time.

Leon, a late substitute, charged down the right wing in the 105th minute, firing a bouncing shot toward the Brazilian goal that went just wide.

Labbe kept Canada in the game in the 118th minute, punching away a header from Erika to keep the game 0-0.

Lawrence sailed a ball over the net in the 119th minute of extra time for Canada's last chance at a goal before the game went to penalty kicks.

Labbe took a hard fall on her lower back in injury time when she jumped high to catch a cross but had her legs taken out from under her by Debinha.

The veteran Canadian goalkeeper got back up after trainers came to her side on the grass.

Canada had a scare early in the match when captain Christine Sinclair, the highest scoring player in international soccer history, went down hard.

Sinclair was knocked off her feet by a Brazilian player in the sixth minute when she was contesting a corner kick, with her head smashing into the leg of Canadian defender Kadeisha Buchanan.

Team trainers and Labbe attended to Sinclair who, after a lengthy pause, returned to play.

Sinclair almost had a chance at an open net in the 20th minute when a cross from Lawrence came in too quickly and the Canadian captain couldn't get her foot on it for a volley.

Jessie Fleming had Brazilian goalie Barbara scrambling in the 24th minute as Canada continued to press in the first half. Fleming's bouncing shot was just outside of the upright as Barbara dove for the ball.

Marta got a partial breakaway in the 38th minute, robbing Gilles of the ball, but the forward couldn't put her foot on a shot of consequence.

Debinha had another shot for Brazil minutes later, forcing Labbe into her first save of the game. The Canadian goalkeeper deflected the shot away and then handled the ensuing corner kick to keep the score 0-0.

Brazil's Duda got a yellow card in the 57th minute on a hard challenge on Allysha Chapman on the left wing.

Gilles got her head on the ensuing free kick from Janine Beckie, bouncing it squarely off of the crossbar. Gilles puffed her cheeks out in visible frustration after the missed opportunity.

Deanne Rose had another a breakaway in the 84th minute, but a sliding tackle from a Brazilian defender deflected the ball out.

Canada was unable to capitalize on a pair of corner kicks after Rose's attempt, the last real threats of regulation time.

A desperate rush up the field led by Sinclair in the final minute of injury time fell short when Barbara wrapped up an attempt from Rose. That save sent the game to 30-minute extra time.

The game was played at Miyagi Stadium in front of about 4,000 fans scattered throughout the 49,000-seat venue.

No spectators are allowed at Olympic venues in the Tokyo prefecture in an effort to slow the spread of COVID-19, but the match was held more than 360 kilometres north of Japan's largest city, well out of the scope of its state of emergency.

Both teams took a knee to show support for racial justice, with some players placing their hands over their hearts, before the opening kickoff.

This report by The Canadian Press was first published July 30, 2021.