A man a transit worker described as “drunk and racist” was thrown off a train in the United Kingdom after ranting about a woman and her 4-year-old son in a scene caught on video.

Alexander MacKinnon pleaded guilty last week to a racially aggravated public order offense over the incident, which took place in December on a train from London to Glasgow, the Independent reported.

Attorney Sanaa Shahid was traveling with her 4-year-old son, Zayn, when she said MacKinnon asked how they got into first class.

MacKinnon told them “You don’t deserve to be in first class,” Shahid told the Daily Record. “You should be in common class. In fact, you shouldn’t be in this country at all.”

Shahid told the newspaper she has lived in Scotland all her life.

She said 10 to 12 people witnessed the incident ― but they did not speak up as MacKinnon, also an attorney, accosted her and insulted her son.

So Shahid began filming him.

This is the vile person we encountered and who swore directly at my son and thought he could get away with it... https://t.co/SGHlDhzeWE — Sanaa Shahid (@sanaashahid) February 4, 2017

In the clip above, MacKinnon can be heard complaining into the phone about Shahid and saying, “It’s my word against hers.”

That’s when a rail worker arrived.

“Now it’s not just your word against hers,” the Virgin Trains employee said. “It’s mine as well, because I heard it all.”

“Yeah, I wanted you to,” the man replied.

“I’m not going to accept it,” the worker said. “You’re drunk and racist and you need to get off the train.”

MacKinnon can later be seen drinking what appears to be wine straight from the bottle. After the train reaches the next station, he gets up to leave, but not without taking a parting shot at Shahid.

“You’re so wonderful, wasting police time, miss,” he said. “And your fucking son.”

On Twitter, Shahid publicly thanked the rail worker.

Highest praise for the train manager on 2.30pm train from London Euston to Glasgow -29/12/2016 when we were racially targeted @VirginTrains — Sanaa Shahid (@sanaashahid) February 4, 2017

The BBC reports that MacKinnon was fined the equivalent of $1,440 and ordered to pay $62 in compensation to Shahid.

“Hopefully MacKinnon’s substantial fine will make him think twice before unleashing such vitriol on other members of the public,” Mark Mellenthin, the investigating officer for the British Transport Police, told ITV.