Tens of thousands of pro-EU protesters from across Britain wielding banners, placards and flags converged on parliament on Saturday, as MPs debated the government's Brexit deal.
Beneath largely clear blue skies, demonstrators rallied near Hyde Park in central London before marching to Westminster to call for a second referendum on Britain's planned EU departure.
Walking behind a pink banner proclaiming "together for the final say", they chanted: "What do we want? People's vote! When do we want it? Now."
Jerome Caruana Cilia, a Maltese resident who joined the march while on holiday in London, said the mood was one of satisfaction after MPs voted to delay any decision on Johnson's Brexit deal.
"People are here from all over the UK; people of literally all ages, races and beliefs calling for another referendum," he said.
"There were a few moments of tension with Brexit supporters, but there was tight security and police were quick to intervene."
Douglas Hill, 35, from Oxford, attending the march with his Estonian wife and their baby daughter, said: "The first referendum was jumping on a train without a destination. Now that we have a destination, we need to have a second referendum."
Another attendee, Theodor Howe, a 20-year-old student in Dundee, eastern Scotland, conceded another poll could be divisive but insisted it was still necessary.
"People should have a say in what is going to happen," he told AFP, expressing hope that MPs reject Johnson's deal and that he is forced to ask Brussels for another delay.
Politicians including John McDonnell, from the main opposition Labour party, and London Mayor Sadiq Khan, were due to address the crowds.
Organisers from the People's Vote pressure group laid on 172 buses to bring people to the British capital, with the cost covered by supporters from sport, business and entertainment, it said.
Former prime ministers John Major, a Conservative, and Tony Blair, of Labour, feature in a film set to be broadcast to the crowds once they arrive in Parliament Square.
"Whatever is the outcome, no deal or bad deal, it should not pass without the final say resting with the people," they said in a statement Friday.