Leyton Orient shocked League One leaders Tranmere and boosted their play-off hopes after a 2-1 win at Brisbane Road.
Russell Slade's side made a superb start to the game and were rewarded with a first goal for the club for Charlie MacDonald in the ninth minute. It should have been 2-0 shortly after but Martin Rowlands saw his penalty superbly saved by Owain Fon Williams.
But Rowlands was not to be denied in the second half with his spectacular volley delighting the home supporters.
Rovers pulled one back through substitute Michael O'Halloran but the O's held on to climb into the top ten for the first time this season.
The O's made one change to the side beaten by Southend on Tuesday night. MacDonald was recalled to the attack in place of Shaun Batt. Orient's new signing Romain Vincelot was named on the bench after joining on Thursday until the end of the season.
Orient had a great chance to take an early lead when David Mooney sent in a cross but Lloyd James was unable to get a touch on the ball just a couple of yards off the goalline.
But the hosts did not have to wait long for the opening goal. Dean Cox sent in a dangerous free-kick and MacDonald's header was parried by Fon Williams. But the former MK Dons striker followed up to nod in the rebound and get off the mark for the O's.
The hosts were handed a glorious chance to double their lead shortly afterwards when Cox was brought down in the area by Ash Taylor. But Rowlands' penalty was brilliantly saved by Fon Williams.
Tranmere were struggling to make an impression and their performance was summed by a volley from Adam McGurk which went out for a throw in.
Orient created another opportunity when the ball was laid off to Rowlands but the former QPR midfielder blasted his effort well over the bar.
Rowlands spotted Fon Williams off his line just before the break and tried to beat him from distance but the keeper managed to get back and make the save.
The hosts continued their dominance at the start of the second half as James raced through from inside his own half but the midfielder's tame strike flew wide of the target.
The visitors had an opportunity through skipper Andy Robinson but he lashed at his effort and it flew harmlessly over the bar.
Cox should have done better when the ball fell to him on the edge of the area but the former Brighton winger blasted his shot wide of the post.
Rovers finally called Jamie Jones into action but Cole Stockton's strike was straight at the goalkeeper.
The O's made their first change with Jimmy Smith replacing James.
Orient doubled their lead in style with a stunning half-volley from Rowlands which gave Fon Williams no chance.
But Tranmere quickly pulled one back when Danny Holmes' cross was turned in from close range by substitute O'Halloran.
The hosts made another change with Millwall loanee Batt coming on in place of Lee Cook.
Orient had a great chance to seal the points when MacDonald found himself clear on goal but he totally miscued his effort.
The O's put the ball in the net through Mooney's header but the offside flag went up to deny the former Reading forward.
Orient gave a late debut to Vincelot in the last six minutes as the Frenchman came on in place of Rowlands.
There were four minutes of injury time for the hosts to survive and Tranmere had one last chance but Holmes' powerful strike was saved by Jones.
Orient held to clinch an excellent three points which kept them firmly in touch with the top-six in the division.
Leyton Orient: Jones; Sawyer, Cuthbert, Baudry, Odubajo; Cox, Rowlands (Vincelot, 84), James (Smith, 66), Cook (Batt, 77); Mooney, MacDonald
Subs not used: McSweeney, Griffith, Clarke, Grainger
Tranmere Rovers: Fon Williams; Holmes, Taylor, Bakayogo, Daniels; Palmer, Robinson; Power, McGurk (O'Halloran, 70); Stockton, Amoo (Bell-Baggie, 70)
Subs not used: Black, Goodison, Harrison, Kay, Mooney
Referee: Trevor Kettle