A last-gasp equaliser from Chris David gave relegated Fulham a 2-2 draw with Crystal Palace on the final day of the Premier League season.
Neither team had much to play for heading into the climax of the campaign after Fulham's relegation from the Premier League was confirmed with a 4-1 loss to Stoke City last weekend.
But they provided terrific entertainment in a frenetic contest in the last top-flight game at Craven Cottage for at least a season.
Dwight Gayle - the hero of Palace's remarkable 3-3 draw with Liverpool on Monday that had huge ramifications in the Premier League title race - looked to have given his side the points with a double, which was separated by Cauley Woodrow's first goal for Fulham.
However, substitute David came off the bench to ensure a share of the spoils late into added time with a magnificent curling effort that flew into the top corner.
Palace finish the campaign in 11th place, while Fulham, by contrast, end a depressing year second bottom.
Fulham created the first real chance after seven minutes, Alexander Kacaniklic's low drive drawing a near-post save from Palace goalkeeper Wayne Hennessey.
Palace crafted an opening themselves four minutes later, as Gayle played in Yannick Bolasie, only for Fulham shot-stopper David Stockdale to produce a fine save.
However, Stockdale was beaten just a few moments later when Gayle flicked home from Joel Ward's low cross into the area.
The visitors continued to dictate matters, and would have doubled their advantage had Stockdale not pulled off another strong stop to keep out Scott Dann's header from Tom Ince's free-kick.
Fulham did threaten an equaliser in first-half injury time, but Fernando Amorebieta's header was kept out by Hennessey at his right-hand post.
Amorebieta was heavily involved again as Fulham went agonisingly close to levelling early in the second half, the Venezuela defender's header back across goal nodded against the post by Hugo Rodallega.
Palace were forced into a substitution in the 59th minute as Mile Jedinak was replaced by Kagisho Dikgacoi after suffering an injury.
And Jedinak's absence was felt two minutes later as Woodrow netted the equaliser with an excellent curling finish beyond Hennessey after collecting a clever reverse pass from Rodallega.
Tony Pulis' men responded well, though, and appeared to have claimed the points late on as Gayle struck with a terrific low free-kick into the bottom corner from some way out.
Gayle then missed a glaring chance to claim his hat-trick, as he diverted the ball wide of an open goal after Glenn Murray had crashed an effort against the crossbar.
And that miss proved costly as David - who had come on for the injured Kacaniklic in the 23rd minute - ensured that Fulham ended a disastrous year on a high with a magnificent maiden goal for the club.
|Coach: F. Magath|
for A. Kačaniklić 23'
for E. Zverotić 50'
for K. Richardson 79'
|Macedonia 0 Australia 0: Stalemate in Skopje|
|Del Bosque not out for Netherlands revenge|
|Burton Albion 1 Stevenage 1: Both teams score at wrong end in draw|
|Pekerman: I have no say on Falcao´s Manchester United future|
|Buffon has studied England new boy Kane|
|Conte urges patience from Italy fans|
|Johnson tasked with keeping Cheltenham up|
|Rooney not keen on Serie A switch|
|Kane to make first England start|
|Colombia 3 Kuwait 1: Spot-on Falcao equals Iguaran record|
|Goal-shy Barkley eyes striker´s role|
|UEFA opens disciplinary proceedings against Montenegro and Russia|
|Draxler and Choupo-Moting back in training|
|Ghana v Mali: Last chance to impress before Giresse return|
|Wilson: Gibraltar getting stronger|
|Mata confident of Spain future|
|Armenia coach Challandes resigns|
|Hiddink rubbishes talk of Dutch negativity|
|Portugal v Cape Verde: Santos set to rotate|
|Loren hails Moyes for Sociedad surge|
|Cruyff brands Netherlands ´a disgrace´|
|Kick It Out backs Barnes over race comments|
|Argentina v Ecuador: Messi remains doubtful for friendly|
|Coates backs Hughes ambition at Stoke|
|Atletico able to call on Saul again|
|Italy v England Preview: Kane set to start after dream debut|
|Zidane would accept Real job|
|Hernandez frustrated by lack of Real opportunities|
|Spartak donate money to 102-year-old fan after robbery|
|Clasie pulls out of Netherlands squad|
|Italy´s Bertolacci out of England friendly|
|Newcastle post record profit as Ashley debt stays the same|
|Al Sadd: We want Xavi to bring tiki-taka|
|Lacazette expected frosty Saint-Etienne reception|
|Barnes: I can´t get back into management because I´m black|
|Rooney praises England aggression|
|Southgate tips Kane for return to U21s|
|Mexico v Paraguay: Goals in order for Copa America aspirants|
|Netherlands - Spain Preview: Wijnaldum rallies behind under-fire Hiddink|
|Peru v Venezuela: Sanvicente wants Venezuelan response|
|Carvalho confident of playing Juventus|
|Neymar demands protection after Medel stamp|
|MLS Review: RSL, Fire secure breakthrough wins|
|Firmino firmly on radar - Dunga|
|O´Neill delighted with second-half display|
|First-half dominance pleases Deschamps|
|Muller criticises Germany profligacy|
|Euro 2016 Qualifying Review: Portugal go top, Gibraltar make history in defeat|
|Liverpool the only English club I could play for - Suarez|
|France 2 Denmark 0: Lacazette off the mark in routine victory|
|Republic of Ireland 1 Poland 1: Long rescues vital point|
|Portugal 2 Serbia 1: Coentrao puts hosts top of Group I|
|Strachan hails ´terrific´ Gibraltar|
|Lafferty back playing with a smile on his face - O´Neill|
|Toure to reveal Ivory Coast future over coming days|
|Georgia 0 Germany 2: Reus and Muller on target for world champions|
|Northern Ireland 2 Finland 1: Lafferty inspires fourth qualifying success|
|Scotland 6 Gibraltar 1: Casciaro´s historic moment outshone by Fletcher´s hat-trick|
|France 2-0 Denmark: Lacazette and Giroud on target|
|Firmino hopeful of Copa America spot|
|Hummels considering options at Dortmund|
|Suarez goalless on Anfield return, but Balotelli nets stunner|
|Casciaro scores first competitive goal for Gibraltar|
|Fleetwood Town 1 Preston North End 1: Ball stunner claims share of derby spoils|
|Italy v England: Judge me on results, says Conte|
|Colombia v Kuwait: Falcao seeking another strong showing|
|Brazil 1 Chile 0: Firmino settles scrappy affair|
|Luxembourg v Turkey: Let´s kick on, urges Terim|
|South Africa 1 Nigeria 1: Zungu strikes late to earn draw|
|Smalling wants long-term United stay|
|South Africa 1-1 Nigeria: Last-gasp Zungu goal cancels out Musa strike|
|Italy call up Santon and Abate for England friendly|
|Switzerland v United States: Klinsmann eyes learning curve|
|Netherlands v Spain: Hiddink has players´ support, says Wijnaldum|
|A-League Review: Sydney end Wellington run, Adelaide suffer injury blows in Jets win|
|Henderson eyes long-term Liverpool future|
|I have nothing to prove - Bale|
|Brazil 1-0 Chile: Firmino gives Selecao battling victory|
|South Korea v New Zealand: All Whites looking to future|
|Japan v Uzbekistan: Hosts eye another win under Halilhodzic|
|MLS Review: Kaka nets in Orlando draw|
|Mexico 1 Ecuador 0: Hernandez, Corona help Herrera´s men to victory|
|Deschamps calls for France response|
|Dunga unfazed by pressure|
|Montenegro fan turns himself in after flare incident|
|Injured Messi not ready - Martino|
|Hodgson: Rooney not close to Charlton|
|Terim proud of Turkey|
|Hiddink happy with point|
|Euro 2016 Qualifying Review: Netherlands and Italy stage late escapes|
|Debutant Eder delighted with Azzurri bow|