LONDON -- On a day when West Ham seemed determined to breathe new life into the Premier League title race, Pep Guardiola's Manchester City team did just enough to ensure the trophy is still theirs to lose.
Two goals down by half-time at the London Stadium on Sunday, City mounted a second-half fightback to score two themselves, only for Riyad Mahrez to miss a late penalty when he had a chance to all but seal the trophy.
Now four points clear, with Liverpool having a game in hand, the point earned from the 2-2 draw means that if City can beat Steven Gerrard's Aston Villa at the Etihad Stadium on the final day of the season, they will be champions. Though for a while here it looked like they were set to give Liverpool a helping hand in their quest for a quadruple.
Jurgen Klopp's side play Southampton on Tuesday, but their inferior goal difference (seven goals) means they will have to finish with more points than their rivals next weekend. Still, the party on the bus back from London to Liverpool following their FA Cup triumph against Chelsea on Saturday would have been in full swing when Jarrod Bowen, outstanding all afternoon, scored twice for West Ham in the first half.
Yet just when City were being asked more questions about their character, they came up with an answer as Jack Grealish volleyed home just after the break and Vladimir Coufal's own goal drew them level. On 52 previous occasions when they have trailed by two or more goals at half-time in the Premier League era, they had only managed to draw once. What a time to make it two.
"Now there are no debates about goal difference or anything; we need to win our game to be champion," said Guardiola afterward. "If we don't win, Liverpool [who play Wolves] will be champions. I can assure you something: In one week, our stadium will be sold out and we will give them all of our lives over 95 minutes and they will give us their lives.
"It is an incredible privilege to have the chance with our people at home to win one game to be champion. I'm looking forward to it. We are going to rest for one or two days, mentally disconnect, and then train three or four days to prepare the game against Aston Villa."
Guardiola moaned last week that "everyone" is supporting Liverpool in their bid to win the quadruple, and here his team defended like they are too.
Aymeric Laporte and Fernandinho were passed fit after both being forced off against Wolves in midweek, but City might have been better off if Guardiola had followed through on his joke to pick forward Phil Foden in the centre of defence.
They were lucky to get away with a Craig Dawson free header at the back post early on, and it only got worse from there. Bowen scored twice in the first half as City failed to deal with second balls after long kicks forward from goalkeeper Lukasz Fabianski and left acres of space in behind for the forward to run into. And after Grealish had pulled one back, Michail Antonio was gifted another chance when Fernandinho's back pass fell yards short of Ederson, but Antonio chipped his effort over the bar.
Even at 2-2, Bowen had a golden opportunity to score again when a hopeful cross into the box was easily headed back into the danger area by Tomas Soucek, but City did enough to stop him, and his shot flew wide.
If City defend like this against Aston Villa next weekend, there might still be a few twists and turns. The good news for Guardiola is that even when his team are not playing well, they can score goals. In the second half in particular, they had opportunities beyond the ones that went in, ending with 31 shots (eight on target) and 78% possession.
Grealish had a volley well saved by Fabianski, and the goalkeeper was also equal to Mahrez's penalty four minutes from time, after VAR guided referee Anthony Taylor to look at the replay of a foul he waved away on Gabriel Jesus in the box.
"I said to the players after the game we could not expect any different against a team fighting to win the Premier League that is one of the most perfect teams I have seen in my life," added Guardiola. "Against this Liverpool you cannot win the league a month ago. You have to fight until the end. They fought, we fight and the big privilege we have is that it is in our hands at home.
"We only have to look at ourselves and we will give everything. I said don't be sad today because you gave a really good performance and it is fair against this opponent to arrive on the final day to decide who is the best, because both teams are too good."
One thing that cannot be in doubt is the character of this City team. Guardiola has taken two swipes at Patrice Evra since the former Manchester United defender suggested the late defeat to Real Madrid in the Champions League semifinals was a matter of mentality, but his team came up with the best answer here.
Down 2-0 and facing a ferocious West Ham crowd who came to pay tribute to retiring hero Mark Noble, they found a way to grind out a result. After a season during which they have blown away most of the Premier League, their defining result of the campaign may well turn out to be a battling draw at West Ham.