WATCH: Opposition lawmakers throw eggs and smoke bombs inside Ukraine's parliament as the chamber approves a deal allowing the Russian Navy to extend its stay in the port of Sevastopol until 2042. (Reuters video)
Ukraine's parliament erupted in chaos today as lawmakers approved a bitterly controversial deal allowing the Russian Navy to extend its stay in Ukraine until 2042.
Meanwhile, in Moscow, Russia's Duma ratified the 25-year extension to the Russian Black Sea Fleet's base in Crimea in a parallel session less than an hour later.
In Kyiv, scuffles broke out and opposition deputies hurled eggs at parliament speaker Volodymr Lytvyn, who took shelter under umbrellas. Smoke bombs filled the chamber with a thick white fog, setting off alarms and forcing deputies to cover their faces.
On the strength of votes from President Viktor Yanukovych's coalition, 236 Ukrainian lawmakers voted to ratify the agreement -- 10 more than the required minimum of 226 votes for the deal to pass.
Lytvyn announced the ratification amid whistling and applause.
Critics, led by Yanukovych's Western-leaning predecessor, Viktor Yushchenko, and former Prime Minister Yulia Tymoshenko, regard the Russian base as a hostile presence on Ukrainian soil and had pushed for its removal when the existing lease runs out in 2017.
Thousands of opposition protesters rallied outside the parliament building today to denounce the deal, signed by Yanukovych and his Russian counterpart Dmitry Medvedev on April 21. In return for the extension, Moscow pledged to cut by 30 percent the price cash-strapped Ukraine pays for Russian natural gas.
WATCH: Opposition protesters face off against police outside the parliament building.
Speaking at today's rally, Tymoshenko said today would "go down as a black page" in Ukraine's history. She called for a mass opposition protest outside parliament on May 11 to force early elections and oust Yanukovych.
"Our unification can bring about a new majority in parliament and a new president in Ukraine -- not in five years, not in three, not even in two, but relatively quickly," she said.
She also called for the creation of a special "committee to save Ukraine" in parliament, universities, and workplaces across the country.
"The committee to save Ukraine can have only one slogan: There is no price on Crimean land," she said. "Ukraine is not for sale. There is no price on our strategic areas of development. Ukraine is not for sale!"
Speaking on a visit to Norway today, Medvedev hailed the Ukrainian vote as a victory for common sense.
"I am very happy about it," he said. "It shows that common sense has prevailed and Ukraine's strategic interests have also prevailed over emotions of the moment, which were manifested in the form of various noisy effects and other ways of demonstrating one's convictions."
Russian military ships in the Black Sea (file photo)
Russian Prime Minister Vladimir Putin, speaking after arriving overnight in Kyiv, said he was "surprised" by the extent of the opposition to the deal, saying the former government had not objected to extending the lease.
In the Russian vote, 410 deputies in the 450-seat Duma supported the accord.
Russia's Black Sea Fleet has been based in Crimea since the reign of Catherine the Great in the 18th century. But when Ukraine gained independence following the breakup of the Soviet Union, Moscow agreed to withdraw the fleet in 2017.RFE/RL's Ukrainian Service contributed to this report, with agency material