WESTBROOK — Kyle Patterson set up both of Charlie Cronin’s first-half goals and South Portland shut out Westbrook 2-0 in a Class A South boys’ soccer game Monday night to finish the regular season undefeated for the first time ever.

Riley Hasson stopped five shots to preserve the shutout. The Red Riots will take a 13-0-1 record into the regional tournament as either the No. 1 or No. 2 seed.

Jacob Brackett made nine saves for Westbrook (5-9).

DEERING 2, MARSHWOOD 1: Keto Tchiputo converted a penalty kick in the first half and Bill Turahimbawe made it 2-0 early in the second half as the Rams (9-4-1) defeated the Hawks (8-6) in South Berwick.

Jason Janetos scored late in the game for Marshwood, assisted by Turner Goodenough.

Deering keeper Max Morrione and Marshwood’s Chase Gagnon each recorded five saves.

WINDHAM 6, NOBLE 1: Jake Conley and Nick Rose each scored twice in the first half as the Eagles (4-10) cruised past the Knights (1-13) in Windham.

Tyler Woolston and Andrew Sawyer also scored for Windham. Noah McGilvery got a first-half goal for Noble.

MT. ARARAT 2, BRUNSWICK 2: Ethan Rac scored twice as Mt. Ararat (7-4-2) rallied for a draw against the Dragons (7-6-1) in Brunswick.

Mats Rasch opened the scoring just 33 seconds into the game for Brunswick, and Everett Horch extended the lead in the sixth minute before Rac scored his first goal midway through the first half.

Rac got the tying goal midway through the second half.

FREEPORT 4, FRYEBURG ACADEMY 1: Eriksen Shea broke a 1-1 tie early in the second half as the Falcons (8-6) defeated the Raiders (5-9) in Freeport.

Jessie Bennell opened the scoring for Freeport early in the first half, before Noah Hart answered for Fryeburg.

Evan McKittrick and Shea Wagner added second-half goals for Freeport.

MESSALONSKEE 1, OXFORD HILLS 1: Christian Alley scored for Messalonskee as the Eagles (5-6-3) rallied to earn a draw against Oxford Hills (2-10-2) in Oakland.

Chase Warren assisted on Alley’s goal.

Will Dieterich scored for Oxford Hills.

GIRLS’ SOCCER

WELLS 7, OLD ORCHARD BEACH 2: Hannah Cottis got three of her four goals in the first half as the Warriors (9-5) built a 5-0 lead and handled the Seagulls (6-6-2) in Wells.

Sydney Belanger, Franny Ramsdell and Katie Ready also scored for Wells.

Emily Greenlee and Shani Plante were the goal scorers for Old Orchard Beach.

CAMDEN HILLS 7, SKOWHEGAN 0: Kristina Kelley’s three goals lifted the Windjammers (13-0-1) over the Indians (0-13) in Rockport.

Ella Pierce and Eliza Roy added two goals apiece, and Alexandra Southworth made four saves for the shutout.

MESSALONSKEE 4, OXFORD HILLS 1: Brianne Benecke scored a pair of goals to help the Eagles (9-1-4) beat the Vikings (8-6) in South Paris.

Olivia Swift scored for the Vikings, while Jillian Douglass made 15 saves.

VOLLEYBALL

CHEVERUS 3, CONY 2: Julia Pomerleau had 21 kills to help the Stags (2-11) rally after losing the first two sets against the Rams (7-7), in Portland.

Maddie Geiger contributed 18 assists, Mary Jerome had 13 kills and Emily Haley recorded nine aces as Cheverus took the final three sets – 25-21, 25-18, 16-14. Cony won the first two sets, 25-20 and 25-22.