For Ukrainians who ousted their Kremlin-backed leader in 2014 to stop the country becoming a Russian-style autocracy, its current presidential election battle – though at times bruising and bewildering – is also something of a victory.
Viktor Yanukovich turned the screws until the nation exploded five years ago and, though much of Ukraine is angry over what followed, the rollercoaster run-in to Sunday's vote shows that its often unruly democracy is still alive and kicking hard.
Yanukovich's successor, Petro Poroshenko, is making a last-ditch bid to avoid defeat at the unlikely hands of Volodymyr Zelenskiy, a political novice best-known for playing a fictional Ukrainian president in a television comedy.
Having spent years dragging his heels over reforms and shielding allies from scrutiny, in recent days Poroshenko finally launched a long-awaited anti-corruption court and fired scandal-plagued senior officials, while promising a new drive to end the war with Russian-led militants in eastern Ukraine if re-elected.
The confectionery tycoon is now a regular on Ukraine’s nightly political talk shows, urging Zelenskiy to come to the studio, call in or, better yet, meet him for a debate before the one tentatively planned for Friday night at Kiev’s biggest stadium.
Poroshenko (53) says Zelenskiy’s reluctance to face him in a head-to-head discussion reveals the shallowness of a rival he describes as a pig in a poke – or a cat in a sack, as they say in Ukraine.
“His campaign is like a silent movie, where the actor moves quickly, there’s lots of activity, but he doesn’t utter a word,” Poroshenko told a conference of Ukrainian and foreign businessmen in Kiev on Monday.
"His team is offering us Ukrainians a cat in a sack. The candidate doesn't make any political statements. Why? So that those who want to take Ukraine back into Russia's sphere of influence can say 'he's our candidate'; and those who want to move towards the EU and Nato can say 'he's our candidate'."
Serhiy Berezenko, deputy head of Poroshenko's campaign team, put it another way to the Ukrainska Pravda news website: "Volodymyr Zelenskiy is like a children's book that needs colouring in, and everyone has their own coloured pencils."
In one of the odder episodes of a compelling election, Poroshenko invited Zelenskiy (41) to debate him at Kiev’s Olimpiyskiy Stadium on Sunday and then turned the event into a rally and press conference when his rival did not show up.
The comedian insists he will be at the arena on Friday night for a debate stipulated in election law; but Poroshenko has not confirmed that he will be there, and may spar with his rival by video link from the studios of public television.
Zelenskiy’s critics also question his business ties to oligarch Ihor Kolomoisky – whose television channel airs his shows and who uses the same chief lawyer and security firm as his campaign – and the defence ministry is looking into whether the comedian ignored call-ups to serve in the east.
Poroshenko supporters use social media to make unsubstantiated claims about Zelenskiy's alleged drug use and links to Russia, and the challenger reportedly boosted his security after one of his online campaign videos was altered to show him being hit by a truck.
Poroshenko, meanwhile, complains of constant smears by broadcasters owned by rival oligarchs, and he plans to sue Kolomoisky’s channel over suggestions that he had a hand in his own brother’s death.
Polls give Zelenskiy a commanding lead, as much for his pledge to usher in a new style of politics as for his vague promises to fight corruption, integrate with the West and somehow resist Russian aggression while ending the war in the east.
The final rounds of this fight may be its dirtiest, but Zelenskiy seems determined to claim the prize this weekend.
“Have you finished?” Poroshenko asked him as they interrupted each other during a brief and tetchy phone conversation on a television talk show.
“I’ll finish in five years,” Zelenskiy replied. “You’ll be finished on the 22nd.”