Hat-trick hero Aaron Collins snatched a late winner as promotion-seeking Bristol Rovers twice overturned a two-goal deficit to beat Rochdale 4-3 and improve their Sky Bet League Two promotion hopes .
Dale took a two-goal lead into the break after Luke Charman scored in the ninth minute and added a second eight minutes later.
Rovers improved after the break and Sam Finley brought them back into the game with a calm finish in the 53rd minute.
Dale restored his two-on-hour lead when Matt Done joined Corey O’Keeffe to beat James Belshaw in the Rovers goal on the second attempt.
However, Rovers fought back in the 66th minute, Antony Evans slipping a smart delivery into the face of goal for Collins to convert.
Joey Barton’s visitors leveled the scores in the 89th minute, with Harry Anderson setting Collins up for his second of the afternoon.
And the three points were secured in spectacular fashion in the fifth minute of added time when Elliott Anderson’s header was cleared away by Collins.
The visitors’ Paul Coutts was sent off eight minutes into added time following a scramble in his own penalty area, but Joey Barton’s side held on to see a win that keeps their automatic promotion hopes alive and secures a place in the play-offs at least.