A resurgent Fremantle has outlasted fast-finishing Melbourne by two points to level its win-loss ledger after four rounds in a remarkable game of momentum changes at the MCG on Easter Saturday.
Both teams appeared to have a stranglehold on the contest at different stages.
The Demons led by a game-high 27 points in the second term thanks to five-straight goals, only for the Freo Dockers to surge 22 points clear at three-quarter time after eight consecutive majors of their own.
But it was Cam McCarthy's effort to get a foot to an incoming ball in the goal square as the clock ticked towards 30 minutes in the final term that delivered Freo the win, 16.10 (106) to 15.14 (104).
Melbourne had snatched the lead only minutes earlier, when co-captain Jack Viney marked and goaled from 40m after Alex Neal-Bullen set him up.
The Demons had slotted six of the past eight majors to that stage.
Jack Watts and Jake Spencer kicked goals in the opening three minutes of the fourth quarter to first threaten a fightback in front of the 27,829-strong crowd.
Fremantle's road to success owed most to a breathtaking third quarter, where it kept Melbourne goalless and dominated inside 50s (22-10) and tackles (26-14) and extended their buffer in clearances (12-9).
Grey lightening up our day with this finish #foreverfreo #AFLDeesFreo pic.twitter.com/rIWmVGmRms
— Fremantle Dockers (@freodockers) April 15, 2017
The lead changed hands five times in a frenetic first half of the second term as both sides put a turnover-filled opening behind them.
Lachie Neale's accurate after-the-siren set shot snapped the Freo Dockers' drought and gave them some impetus for the second half.
Neale is used to terrorising Melbourne through weight of possession, but it was instead his goal-kicking that put his opponent to the sword.
Neale dominant up forward #foreverfreo #AFLDeesFreo pic.twitter.com/wn7yLu65w8
— Fremantle Dockers (@freodockers) April 15, 2017
He kicked a pair of majors in the second and third terms, to go with former skipper David Mundy's three goals, to be a major player in the result.
MELBOURNE 2.5 9.7 9.10 15.14 (104)
FREMANTLE 3.2 6.4 13.8 16.10 (106)
GOALS
Melbourne: Garlett 3, Harmes 2, Spencer 2, Petracca 2, Watts, Kent, Neal-Bullen, Watts, Salem, Viney
Fremantle: Neale 4, Mundy 3, McCarthy 2, Kersten, Fyfe, Balic, Walters, Crozier, S.Hill, Grey
BEST
Melbourne: Oliver, Tyson, Petracca, Watts, Harmes, Garlett
Fremantle: Mundy, Sandilands, Fyfe, Weller, Neale, S.Hill
INJURIES
Melbourne: Nil
Fremantle: S.Hill (corked thigh)
Reports: Nil
Umpires: Stevic, Harris, Mitchell
Official crowd: 27,829 at the MCG