FROM GTECH COMMUNITY STADIUM - Brentford kept their slim hopes of European qualification alive heading into the season's final fortnight with a 2-0 win against West Ham.
The Bees locked down a first ever finish in the Premier League's top half, while they will also place above west London rivals Chelsea for the first time since 1939.
David Moyes made seven changes to his side with one eye on the second leg of their Europa Conference League semi-final at AZ on Thursday, but the Hammers were utterly woeful throughout here.
The hosts went within inches of taking the lead with only seven minutes on the clock. Kevin Schade's cross from the left wing found Mikkel Damsgaard ghosting into the box and he beat Lukasz Fabianski to the ball, heading it up and just past the far post.
Brentford did break the deadlock soon after, however. Damsgaard intercepted a loose pass from the back by Nayef Aguerd, with the ball falling for Mathias Jensen to square to Bryan Mbeumo with the freedom of the penalty area, and he was able to coolly slot the ball under Fabianski.
Though he maybe could have done better with that goal, Fabianski did well to deny Yoane Wissa just after the half-hour mark. Aaron Hickey galloped beyond Mbeumo down the right and cut it back for the Bees number 11, striking low but being denied by a strong hand from the West Ham goalkeeper.
The Hammers were clinging on by a thread towards the end of the first half. Fabianski flapped at a header from Schade before getting to his feet and denying Wissa in combination with a last-ditch tackle from Angelo Ogbonna. The loose ball fell to Ben Mee whose shot from around three yards out was blocked off the line and diverted wide.
And the visitors weren't able to get to the break without conceding a second. Jensen's long throw was flicked on by Mee, and Wissa was able to get himself in front of Aguerd to head into the far corner.
West Ham showed their first signs of life immediately from kick-off as Danny Ings brought David Raya into a low save with a strike from just inside the area.
Wissa should have doubled his tally for the afternoon on the other side of the break when he intercepted a poor pass back from Soucek, playing a one-two with Mbeumo before firing wide of Fabianski's goal.
Up next to try his luck again was Mbeumo, who met a deep cross from Schade and headed towards goal, only for the flying leg of Ogbonna to deny him.
Mbeumo had a similar chance blocked by his own teammate in Wissa before Damsgaard somehow tapped the ball over from a few yards out after meeting another Mee flick-on from a corner.
After a brief spell of pressure, West Ham momentarily found themselves on the scoresheet. Substitute Said Benrahma's cross bounced off the post and ricocheted off of youngster Divin Mubama, with the ball quickly flicked by Manuel Lanzini into the six-yard box for Ings to nod in. However, a VAR check found that the ball struck Mubama's arm and the goal was chalked off.
Brentford understood that warning and pushed for a third goal to kill the game for good. Frank Onyeka, fresh off the bench, played the ball through the lines for Wissa to chase, pirouetting once reaching the 18-yard box and laying it back for the Nigerian to strike, testing Fabianski with a stinging shot.
Mbeumo was again kept out by a flying Fabianski stop in injury time as West Ham managed to keep the score down to 2-0.
The Bees climb to ninth in the table - they could end as high as sixth - while the Hammers remain in 15th.
Brentford player ratings (4-3-3)
GK: David Raya - 6/10 - Had little to do but was dependable when called upon. Calm as ever with the ball at his feet.
RB: Aaron Hickey - 7/10 - Had plenty of joy linking up with Mbeumo on the touchline and even coming in-field with Damsgaard. Silenced Cornet.
CB: Ethan Pinnock - 6/10 - Hardly troubled at all despite Ings trying to run around him and off him.
CB: Ben Mee - 7/10 - Excellent on the floor and in the air. Outmuscled various West Ham attackers with ease.
LB: Rico Henry - 6/10 - His pace was utilised a lot more in the second half, running beyond Schade and catching West Ham cold.
DM: Vitaly Janelt - 6/10 - A little sloppy with the basics but his ball-recovery and penetrative passes came in handy.
CM: Mikkel Damsgaard - 7/10 - Guilty of over-playing at times but was always confident with the ball at his feet. Unlucky not to have scored his first Brentford goal.
CM: Mathias Jensen - 8/10 - Though he was afforded time and space in bundles by West Ham, Jensen took full advantage, dancing his way through misfield and spreading play with his superb passing range.
RW: Bryan Mbeumo - 9/10 - Relished being the main man with Ivan Toney out injured. Brentford's prime creator and goal threat.
CF: Yoane Wissa - 9/10 - Made the most of a rare start, popping up everywhere and giving West Ham headaches.
LW: Kevin Schade - 5/10 - The quality is obviously there and West Ham had to adjust to deal with his pace but the ball just couldn't stick for Schade today. Also made some strange decisions without being under pressure.
Substitutes
Frank Onyeka (70' for Jensen) - 6/10
Shandon Baptiste (77' for Damsgaard) - N/A
Josh Dasilva (77' for Wissa) - N/A
Mads Roerslev (85' for Hickey) - N/A
Saman Ghoddos (85' for Schade) - N/A
Manager
Thomas Frank - 7/10 - Brentford were able to treat this like a training match.
West Ham United player ratings (4-2-3-1)
GK: Lukasz Fabianski - 5/10 - Should maybe have done better with the opening goal but did make some other saves afterwards.
RB: Ben Johnson - 5/10 - Limited on the ball and looked scared of Schade's pace but at least didn't have rings run round him.
CB: Angelo Ogbonna - 5/10 - West Ham's best defender with a few key clearances. The bar wasn't very high, however.
CB: Nayef Aguerd - 2/10 - Gave the ball away for the first goal, let Wissa walk in front of him for the second. Not great.
LB: Emerson Palmieri - 3/10 - Torched by Hickey, Damsgaard and Mbeumo on a testing afternoon.
CM: Tomas Soucek - 3/10 - His only positive contribution was that he's quite tall. Avoided getting on the ball like the plague because he was wasteful when he did have it.
CM: Flynn Downes - 4/10 - Continually lost his runners and showed varying interest in tracking back.
RM: Pablo Fornals - 4/10 - Tried a few flicks and tricks early on but became disinterested in the game and faded out of it before being substituted.
AM: Manuel Lanzini - 4/10 - A diamond in the rough in a rather true sense. Couldn't quite get in the game enough to take control of it.
LM: Maxwel Cornet - 4/10 - Got chump change out of Hickey and was hooked after the break.
CF: Danny Ings - 5/10 - Starved of service but made a lot with the scraps he was feeding on.
Substitutes
Divin Mubamba (58' for Fornals) - 5/10
Declan Rice (58' for Soucek) - 5/10
Said Benrahma (58' for Cornet) - 6/10
Jarrod Bowen (82' for Ings) - N/A
Manager
David Moyes - 4/10 - West Ham have other priorities but this was a rather limp showing.
Player of the match - Bryan Mbeumo (Brentford)
This article was originally published on 90min as Brentford 2-0 West Ham: Player ratings as Bees secure top-half Premier League finish.