Europa League: Celtic reach the last 32 after frantic finale
Nineteen minutes of madness. Nineteen minutes during which Celtic fans went from the depths of despair to unbridled elation.
European nights at Celtic Park are rarely dull, but the 2-1 Europa League defeat by Salzburg - or rather the events 1,000 miles away in Leipzig - will go down as one of the most dramatic in recent memory.
Going into their final Group B tie, Brendan Rodgers' side needed a point to confirm qualification for the last 32. But things didn't exactly go to plan.
With 15 minutes left, the Scottish champions were a goal down and on the brink of elimination, given Leipzig were winning 1-0 in their corresponding match against Rosenborg. Then the madness ensued...
21:32 GMT - Gordon's howler
With Leipzig leading Rosenborg 1-0 in Germany, Celtic began their earnest attempt to find a late equaliser. However, the impetus was drained from them when a Craig Gordon throw-out was intercepted by an opportunistic Fredrik Gulbrandsen, who walked the ball into the back of the net. Claiming the point they needed to secure qualification had gone from unlikely to downright impossible.
21:37 - Ajer's miss
Despite having the odds stacked against them, the Scottish champions pushed for the two late goals they needed. Then came their big chance. Filip Benkovic managed to head a cross towards the back post only for Kristoffer Ajer to somehow shovel the ball up and over the crossbar from three yards out. Nothing was going their way.
21:41 - Rosenborg level in Leipzig
It started with a murmur, developed into a commotion, then exploded into a roar. Just when all seemed lost and European football in the new year was slipping away, news came through that Rosenborg defender Tore Reginiussen had equalised for the hitherto hapless Norwegians in Leipzig. With just four minutes of normal time left at the Red Bull Arena, the Bundesliga side suddenly found themselves back in third spot, with a startled Celtic promoted back to second.
21:47 - Ntcham misses... then scores
The mood had changed at Celtic Park. Misery had metamorphosed into anxious bedlam. Then the home support had a goal to cheer. Benkovic once again found himself in the Salzburg box and was this time brought down by a clumsy tackle. Olivier Ntcham stepped up and, because things weren't dramatic enough, he scudded his penalty against a post via the hand of goalkeeper Alexander Walke. Mercifully for Celtic, it bounced back into his path and he rammed it into the net at the second attempt.
21:49 - Full-time at Red Bull Arena
As Celtic fans frantically checked their phones, confirmation finally came through that the four minutes of stoppage time in Leizpig were up and Celtic were through to the knockout rounds. There were still a couple of minutes to play in Glasgow, mind, after the nasty injury suffered by Ryan Christie.
21:51 - Full-time at Celtic Park
A long blast of the referee's whistle concluded a ridiculous 19 minutes across two stadiums in two countries. Celtic were through thanks to the most unlikely of results 1,000 miles away in Germany.