That's it! Arsenal's 10-match unbeaten run is over and they can thank former goalkeeper Lukasz Fabianski for ending their streak. The Polish goalkeeper enjoyed a sensational second half to deny his former employers, while substitute Bafetimbi Gomis provided the winner with a towering header.
Arsenal's hopes of clinching second place have suffered a telling blow this evening and while they still have a game in hand over Manchester City, they will be travelling to Old Trafford on Sunday without that momentum that has carried them so brilliantly.
Arsenal 0-1 Swansea City
Seconds left for Arsenal to find a goal...
Ozil prods a pass through to Sanchez who clips a hopeful ball into the six yard area but that ex-Gunner in the Swansea goal is out to confidently claim.
Monreal now cuts inside, looking to stretch the Swansea's backline, playing the ball back out for Wilshere to drive a cross into the box but once again, Fabianski can collect.
Sanchez tries his luck from the edge of the area but again Fabianski is again equal to it. Four minutes of added time to go.
One minute of normal time left at the Emirates for Arsenal to rescue this.
At a first look, it looked as if Ospina had saved that, but assistant referee Kevin Friend felt his watch buzz and awarded the goal. Thank God for goal line technology, eh?
Swansea have the lead! Montero surges forward down the right and heads towards the byline, ignoring Shelvey on the edge of the box. He lifts a precise cross into Gomis who towers above his marker and nods towards goal. Ospina leaps across to his post and thinks he has done enough to claw the ball out, the linesman awards the goal!
Goal! Arsenal 0-1 Swansea (Bafetimbi Gomis, 85)
Seven minutes left of normal time left at the Emirates.
Sanchez finds a gap and tries to jink his way into the box but Williams, who has been excellent all evening, forces him wide and forces the corner.
And a third! The ball bounces into path of Cazorla who lashes one on target but Fabianski again denies him. Arsenal should have done much better with all these chances, but Fabianski deserves much praise for keeping his side in this.
Fabianski saves again! Arsenal prob , and probe before Ramsey clips a ball in for Sanchez who really should score, but instead fires straight at the goalkeeper. The rebound cannons off Fernandez and falls to Walcott but he too is denied by the former Arsenal goalkeeper!
Fabianski denies Monreal! The Spanish full back makes an excellent run up the left and is eventually picked out by a wonderful pass from Sanchez. From a tight angle he fires across goal but is denied by his former teammate.
Cazorla takes the resulting corner but it';s another rubbish one and the Polish goalkeeper collects.
Now another change for Swansea as Batetimbi Gomis, having missed the last three games with a hamstring problem, comes on for Ki.
Bellerin now tentatively dances his way in from the right and cuts a pass across to the near post. It almost breaks the Walcott but the ball is quickly hacked away by Fernandez. You feel an Arsenal goal is coming.
Cazorla now tries to curl one for the far corner but Williams again makes a crucial block, diverting the ball out for a corner. Sanchez takes it, but his deliver is poor.
Wilshere's first involvement sees him try to thread a ball through from deep for Giroud, but it just evades the Frenchman who will now make way for Theo Walcott.
First change of the evening for Arsenal as Jack Wilshere comes onto replace Coquelin.
Arsenal are cranking up the pressure here. A cross is lifted into the box but Sanchez can only, somehow, head it away from goal. No matter, Cazorla is back on it, taking the ball down with wonderful control and pushing into the box. Swansea players are afraid to put a foot in at risk of tripping the Spaniard, who clips a shot on goal but Fabianski does well to save and collect at the second time of asking.
Ramsey twists and turns inside the right of the box, looking for the space to shoot. He finds it eventually, but can only blast into the side netting.
Swansea have a problem as Angel Rangel hobbles off. He is unable to continue and Jazz Richards comes onto replace him.
Shelvey tries to hold onto the ball for too long on the edge of his own box and predictably loses possession. Swansea almost pays for that as Giroud tries a snapshot just inside the box but Fabianksi saves.