Charlie Austin bagged a hat-trick as Queens Park Rangers came from two goals down to beat West Bromwich Albion 3-2 and climb out of the relegation zone.
Goals from Joleon Lescott and Silvestre Varela helped the Baggies into a two-goal lead inside 20 minutes, before Austin netted a penalty to reduce the arrears shortly after.
The 25-year-old then struck his 10th Premier League goal of the season early in the first half to level up the match, before glancing a late header beyond Ben Foster to propel Rangers up to 15th in the table.
Here, Sports Mole sorts the heroes from the villains after a dramatic encounter in London.
QUEENS PARK RANGERS
Goal
Robert Green: One or two really good saves to keep out Ideye and Sessegnon. Blameless for both goals. (6/10)
Defence
Nedum Onuoha: Let Varela run past him far too easily for West Brom's second of the afternoon, but deputised well for Mauricio Isla, who returned to Chile for personal reasons recently, overall. (6/10)
Steven Caulker: Combined well with Dunne when they were shackling Ideye, but struggled to do the same with Berahino. (5/10)
Richard Dunne: Guilty of not being tight enough to Lescott for the opening goal on 10 minutes, but made amends with a towering leader that directly led to QPR's equaliser after the break. (6/10)
Suk-Young Yun: Only lasted 28 minutes before going off injured. Not the worst thing to have happened from a QPR perspective because he struggled with the problematic Sessegnon regularly. (4/10)
Midfield
Eduardo Vargas: Very little impact from the Chilean, who had little to no impact on the right side of midfield against left-back Pocognoli. (4/10)
Karl Henry: The combative midfielder stifled West Brom's midfield really well at times and was particularly impressive in the second half. (6/10)
Joey Barton: QPR owe the win to Barton's set-piece delivery as much as Austin's hat-trick, with all three of their goals stemming from dangerous corners that the midfielder swung in. (7/10)
Leroy Fer: Always involved, but his final ball let him down regularly throughout his 90 minutes on the field. One to forget. (4/10)
Attack
Bobby Zamora: Applauded off the field on 80 minutes for his endeavour throughout, as that was the only thing worth noting about his performance. (5/10)
Charlie Austin: Not a brilliant all-round performance, but did manage to score a decisive hat-trick with three very different goals to rescue Rangers. Once again proved his importance to the team. (8/10)
Substitutes
Clint Hill: Had to play left-back due to Suk-Young Yun's absence, but did not look out of place and proved better equipped to combat the dangerous Sessegnon than his South Korean counterpart. (6/10)
Junior Hoilett: Replaced the anonymous Vargas on 67 minutes and had a big impact; almost playing Austin through on goal and forcing Foster into a decent save. Good cameo. (7/10)
Niko Kranjcar: Only had 10 minutes to make an impact and never really got going. (5/10)
WEST BROM
Goal
Ben Foster: Not at fault for any of the goals, and was slightly unlucky with the second after expertly tipping Dunne's header on to the crossbar, before Austin eventually turned it home. (6/10)
Defence
Andre Wisdom: Managed to keep the often-energetic Fer relatively quiet throughout, but perhaps could have given more going forward. (5/10)
Joleon Lescott: Netted his first goal for West Brom, but it was marred after he lost Austin for QPR's second goal. Excellent overall, however, and nearly scored again. (6/10)
Gareth McAuley: Got the wrong side of Austin once or twice, but Foster bailed him out. (5/10)
Sebastien Pocognoli: More or less solid at left-back for the best part of 87 minutes, but allowed Austin to get the run on him en route to netting the late winner. (5/10)
Midfield
Graham Dorrans: Sat in front of his back four well enough at times, but perhaps slightly guilty of venturing forward at a time when Albion needed bodies back defending. (4/10)
Craig Gardner: Tried his utmost to add to his match-winner last week, but it was never happening today. Came close when Green pushed his free kick over the bar. (5/10)
James Morrison: Not exactly to blame for the result, but he might feel responsible after his daft penalty concession allowed QPR a route back into the game at 2-0. (3/10)
Stephane Sessegnon: Brilliant first-half performances, but more or less disappeared in the second half against the robust Clint Hill at left-back. (6/10)
Silvestre Varela: Netted his first goal for the Albion, but he was very rarely involved in the game after that. (6/10)
Attack
Brown Ideye: Preferred to Berahino again, and flattered to deceive again. Grabbed two assists, but his time in the first XI might be running out after a largely forgetful performance today. (6/10)
Substitutes
Saido Berahino: Excellent cameo and was desperately unlucky not to rescue a last-gasp point after smashing against the crossbar. He needs to be starting games again. (7/10)