Fraserburgh progressed to the semi-finals of the GPH Builders Merchants Highland League Cup by defeating holders Rothes at Mackessack Park.
The Broch – who are top of the Breedon Highland League – were two up after half an hour following strikes from Scott Barbour and Paul Campbell.
But Aidan Wilson pulled a goal back for the Speysiders, who kept pushing for a leveller until the full-time whistle.
Fraserburgh will be at home to Brora Rangers a week on Saturday in the last four as they attempt to win the Highland League Cup for the first time since 2006.
Broch start well
It was the visitors who started on the front foot, while Rothes looked to be lacking sharpness having only played three times this year so far.
The first Fraserburgh opening arrived in the fourth minute with Grant Campbell’s clearance from a home corner setting Barbour away down the left.
Although the striker got away from Fraser Robertson, his angled strike drifted just wide.
In the 17th minute, the Broch took the lead when Paul Young’s header forward dropped in between the Speysiders’ defence and goalkeeper Sean McCarthy. Barbour raced on to the loose ball and lobbed it beyond the advancing McCarthy.
The home side’s first opportunity came shortly after with Wilson finding space on the right flank before picking out Ewan McLauchlan in the box, but his volley drifted off target.
At the other end, Aidan Combe’s deft touch gave Paul Campbell a sight of goal, however, McCarthy raced off his line to smother the effort.
On 29 minutes, McCarthy was powerless to stop Fraserburgh’s second goal as Paul Campbell met Barbour’s corner at the front post and bulleted a header into the roof of the net.
But Rothes responded four minutes later with Jamie Beagrie’s slack back pass letting Wilson nip in and fire beyond goalkeeper Joe Barbour.
Fraserburgh continued to look the more threatening side for the remainder of the first half without adding to their lead.
Speysiders try to fight back
Rothes started the second period with greater intensity, but it was Fraserburgh who had the first decent opening after the restart.
A move involving Beagrie, Paul Campbell and Sean Butcher teed up Combe on the left of the area, but he scuffed his shot wide.
Just after the hour mark it was Campbell having a go, but McCarthy was perfectly placed to catch his free-kick from 30 yards.
The game continued to be frenetic, but also scrappy with both defences eager to give nothing away – with Rothes knowing the concession of a third could end their cup defence.
With 12 minutes left, McCarthy kept the Speysiders in it with a good to thwart sub Lewis Duncan following a rapid Broch breakaway.
At the other end, Willie West’s last-ditch intervention prevented Craig Cormack from getting a shot away when he would only have had keeper Barbour to beat.
In injury time, Fraserburgh were reduced to 10 men when Paul Campbell received a second booking from referee Lee Robertson for simulation, although the player was furious with the decision.