Far-left protesters vastly outnumbered white nationalists at opposing rallies in Washington, DC, on Sunday, the anniversary of last year’s Charlottesville rally.

Jason Kessler, who led the white nationalist rally in Virginia last year, and about two dozen other people were escorted by police as they arrived at Lafayette Park for the “Unite the Right 2” rally, where they were met by thousands of counter-protesters.

The counter-protesters, some dressed in black masks, helmets and body armor were separated from rally-goers by fences and about 50 feet of grass as they shouted “Nazis, go home” and “you are not welcome here!” Kessler delivered a speech largely drowned out by the voices of the counter-protesters.

Unite the Right organizer Jason Kessler begins speech. He is defending actions of his group in deadly Charlottesville rally last year. “I’m not a white nationalist.” pic.twitter.com/fYYsKUQjvz — Kelly Avellino NBC12 (@KellyAvellino) August 12, 2018

Jason Kessler is now giving his speech, which he began by admitting his rally is a flop pic.twitter.com/lL0p41Wj5U — Caleb Ecarma (@calebecarma) August 12, 2018

aside from logistic fuck ups, Kessler says his rally got messed up because of alt-right infighting and white supremacist leaders telling their followers not to attend his event. he specifically calls out "neo-Nazi tough guys" who are "in their mama's basement right now" — Caleb Ecarma (@calebecarma) August 12, 2018

Jason Kessler speaking again: "Who is in the intolerant one, us or these folks who showed up by the thousands to stop us from speaking" pic.twitter.com/f3LLUlIYiY — Caleb Ecarma (@calebecarma) August 12, 2018

Jason Kessler and the other white supremacists were just rushed out of the rally as the rain worsens. looking like UTR2 Is officially over pic.twitter.com/8TJBVtlmlA — Caleb Ecarma (@calebecarma) August 12, 2018

After the brief rally came to an end before 5:30 p.m. EST—two hours before schedule—Kessler and the “Unite the Right 2” demonstrators were transported to the Rosslyn Metro station to board a train to Vienna, where they will be met by county police on hand to escort them to their cars as needed.

The 10-15 #UniteTheRight2 demonstrators have left Lafayette Park, under police escort. The thousands of #ShutitDownDC demonstrators cheered upon their exit and are still chanting. @wusa9 pic.twitter.com/sTEtMXRJM8 — Andrea McCarren (@AndreaMcCarren) August 12, 2018

“They’re messing with us” Jason Kessler says after police force them to enter metro train early. They were set to leave at 3, police forced them to get on at 2:15 and leave anyone who arrives later behind. #UTR2 pic.twitter.com/OQ1ga6ykD9 — Ford Fischer (@FordFischer) August 12, 2018

The Unite the Right marchers have all left town. Their rally was supposed to begin at 5:30. While in DC, ~20 marchers listened to a brief Kessler speech & talked to reporters. One man told me the @washingtonpost is Jewish-owned & he doesn’t speak to Jews before he walked away. pic.twitter.com/QGhCjjtqT9 — Hannah Natanson (@hannah_natanson) August 12, 2018

Asked for his thoughts on the small turnout, Kessler told the press he was not disappointed by it because of the rally’s peaceful nature. “We upheld free speech,” he declared while mobbed by reporters.

As the “Unite the Right 2” rally disbanded Jason Kessler said he was not disappointed with the 20-30 people turnout. Said his members are “rightly” scared of getting hurt or arrested for fighting back. Kessler says he’s not part of the “alt-right” pic.twitter.com/m5fVyPIYrs — Lauren Blanchard (@LaurenBlanch12) August 12, 2018

About 400 people were originally expected to attend Kessler’s “Unite the Right 2” rally, which was described as a “white civil rights rally” to protest “civil rights abuse in Charlottesville.” Kessler and members of anti-racist groups were both given permits from the National Park Service to demonstrate at the park on Sunday.

Nearly 1,000 protesters had already arrived at Freedom Plaza near Lafayette Park by 12:30 p.m. for one of several counter protests. “This place, this city, this country is a country of inclusivity and not white supremacy,” Rev. Graylan Hagler told a crowd at one event. “We are people that stand up for racial justice and racial inclusivity. We will not be silenced.”

Black Lives Matter D.C. was also scheduled to host the “Rise Up Fight Back Counter-Protest” between 2 p.m. and 7 p.m. near the site of “Unite the Right 2.” Metropolitan Police Chief Peter Newsham said officers would work to keep the opposing protesters separate from each other and added guns and other weapons are prohibited near the cite of the rally, regardless of individual permits.

#UTR2 #AllOutDC: Hundreds of DC Black Lives Matter protesters just set out on a march up 16th Street toward the White House. pic.twitter.com/wjgs8mDPAG — Alejandro Alvarez (@aletweetsnews) August 12, 2018

Members of the Black Lives Matter movement protest in response to the Unite the Right rally in Washington, DC pic.twitter.com/jqpsv80fM8 — AFP news agency (@AFP) August 12, 2018

Black lives matter throwing a block party outside Lafayette park while Nazis march inside #ShutItDownDC pic.twitter.com/tVCET5LXIj — Ω Jon Ω (@Lemon_Wizard) August 12, 2018

“Our role is to make sure we have a First Amendment event that goes on without any types of violence or destruction of property,” he said. “We intend to have the entire police department engaged to make sure that we handle this type of thing.”

Virginia Gov. Ralph Northam and the city of Charlottesville declared states of emergency for Friday through Sunday to give state agencies the necessary tools to “perform actions outside the scope of normal operations.”

The declarations came after violence surrounding the 2017 Charlottesville demonstrations in which at least 30 people were injured and James Alex Fields Jr., was accused of driving his vehicle into a group of counter-protesters, killing Heather Heyer. Two Virginia State Police troopers also died that weekend when their helicopter, assisting with public safety during the rally, crashed August 12.

A makeshift memorial to Heyer was heavily barricaded. On Sunday morning, more than 100 anti-racism protesters congregated near police, wearing helmets and other protective gear, as helicopters and drones circled above, the Washington Post reported. Four people were arrested in connection to demonstrations in downtown Charlottesville.

Susan Bro is on Fourth Street, where her daughter Heather Heyer was murdered one year ago. She brought purple flowers for Heather, and two roses for the state officers who died that day. pic.twitter.com/G3edwtuf8W — C-VILLE Weekly (@cvillenews_desk) August 12, 2018

WATCH: Local activists pray at the site of Heather Heyer’s death in #Charlottesville pic.twitter.com/920yQTJGhj — Ed O'Keefe (@edokeefe) August 12, 2018

President Donald Trump condemned all forms of racism in a tweet Saturday, ahead of the planned demonstrations. “The riots in Charlottesville a year ago resulted in senseless death and division. We must come together as a nation. I condemn all types of racism and acts of violence. Peace to Americans!” the president wrote.

President Trump: “The riots in Charlottesville a year ago resulted in senseless death and division. We must come together as a nation. I condemn all types of racism and acts of violence. Peace to ALL Americans!” pic.twitter.com/ClmMPz6ion — The White House (@WhiteHouse) August 11, 2018

The message was met with similar criticism to Trump’s claim after last year’s demonstration that both groups were responsible for the violence in Charlottesville. “You had some very bad people in that group, but you also had people that were very fine people, on both sides,” President Trump said at the time.

The United Press International contributed to this report.