Macedonian President Gjorge Ivanov plunged his country into a deep political crisis on April 12 when he announced the effective pardoning of more than 50 officials implicated in a wiretapping scandal.
But the crisis in the country actually began last year when officials were charged with election fraud, media manipulation, judicial corruption, and a murder cover-up -- all of which were purportedly revealed in thousands of illegally recorded phone conversations.
Here's a look at how the tumult started and where it is headed.
The Wiretapping Affair
On February 9, 2015, opposition leader Zoran Zaev accused then-Prime Minister Nikola Gruevski and secret police chief Sasho Mijalkov (Gruevski's cousin) of authorizing the wiretapping of some 20,000 people, including social activists, religious leaders, judges, political opponents, police, foreign ambassadors, and more than 100 journalists.
Former Macedonian Prime Minister Nikola Gruevski in January
Gruevski rejected the charges and said the recordings were fabricated with the help of an unnamed foreign intelligence service in an attempt to destabilize Macedonia.
But Zaev, head of the Social Democratic Union of Macedonia opposition party, undermined government denials of the wiretappings by releasing recordings of phone conversations -- many of them involving Gruevski and members of his government. Zaev said a whistleblower within the Interior Ministry had provided him with the recordings.
Many journalists and others allegedly heard on the wiretaps came forward to say that they recognized their voices on the recordings. Several government officials subsequently resigned their posts.
Hundreds of opposition activists and protesters later set up tents and camped near government headquarters vowing to stay until Gruevski and the government resigned. But Gruevski accused Zaev of attempting to blackmail him and the government -- and refused to step down.
Abuse Of Power, Electoral Fraud Charges
Zaev said the recordings he obtained featured government officials with the ruling party, VMRO-DPMNE, discussing vote-buying and intimidation ahead of parliamentary and local elections held between 2011 and 2014.
In one recording, a voice purported to be that of then-Interior Minister Gordana Jankulovska can be heard joking about the "little people" who are going to rig the elections. The same voice also speaks about dragging "gypsies by their ears [to polling centers] and getting them to vote."
Zaev also said there are recordings of officials plotting to put journalists under surveillance and ordering editors at state media outlets to publish favorable news stories and kill negative ones. He also claimed that other officials can be heard arranging the outcome of court cases and discussing the placement of friendly judges in powerful positions.
Perhaps most disturbing were alleged recordings of Gruevski speaking with Jankulovska and other officials about the cover-up of the killing of a man who was reportedly beaten to death by a special police unit, the Tigers, after the 2011 parliamentary elections.
Jankulovska -- who resigned last year amid the protests -- said the recordings had been spliced together and edited by "foreign secret services."
A protester burns a photo of Macedonia's president in Skopje on April 13.
Macedonia's state-run media largely ignored the Zaev leaks, but a student-led demonstration of some 1,000 protesters took to the streets of Skopje on May 5-6 to demand that Gruevski resign.
Days later, a deadly shoot-out occurred near the Serbian border in the town of Kumanovo between Macedonian security forces and what the government described as ethnic Albanian "terrorists."
The incident -- in which eight police and 14 gunmen were killed -- was deemed suspicious by the opposition and others, who suggested it was staged to distract Macedonians from the wiretapping crisis.
But demonstrations continued grow, culminating with tens of thousands of people – both opponents and supporters of Gruevski -- marching on the streets of the capital on May 18 and 19.
The crisis prompted to EU Enlargement Commissioner Johannes Hahn to intervene. After a series of difficult meetings in Strasbourg and Skopje that Hahn mediated between the leaders of Macedonia's two largest parties and other opposition leaders, a deal was reached.
Macedonian opposition leader Zoran Zaev
On June 2, Hahn announced that all four parties had agreed on early elections in April 2016 and on the resignation of Gruevski's government ahead of those elections. Gruevski resigned in January, and the parliament was dissolved on April 6.
But soon after Ivanov announced the end of the investigation and pardoned the main suspects in the wiretappings on April 12, several consecutive days of violent protests erupted.
Officials in Brussels and Washington have said Ivanov's action to end the investigation into the wiretapping has jeopardized the credibility of the upcoming polls. The EU's Hahn tweeted on April 12 that he had "serious doubts if credible elections are still possible."
But parliament speaker Trajko Veljanovski officially confirmed on April 15 that early elections will be held on June 5 despite the current political crisis in the country.
Zaev immediately announced that the Social Democrats will boycott the elections unless their conditions to establish a free and fair vote are met, including a new media bill and a review of the country's electoral lists.
Zaev himself was charged in January with planning to overthrow the government. That charge will apparently also be dropped as part of Ivanov's controversial pardon announcement.
Ivanov's decision to end the investigation by special prosecutor Katica Janeva has not only angered Macedonians, but sparked sharp criticism from Washington and Brussels as well.
Macedonian President Gjorge Ivanov
EU foreign-policy chief Federica Mogherini said Ivanov's blanket pardon risks "undermining years of efforts within the country and with the support of the international community to strengthen the rule of law."
Hahn told RFE/RL that the situation was "really deteriorating" and said the move to end the wiretapping investigation goes against his "understanding of the rule of law."
The U.S. State Department said in a statement on April 13 that Washington was "deeply concerned" by Ivanov's move, which it said will "protect corrupt officials and deny justice to the people of Macedonia."
It added that failure to allow the courts to do their job and continue the investigation undermines Macedonian leaders' "commitment to the fundamental values of NATO and the European Union."
As domestic and international pressure grew on Ivanov to revoke his decision, he made an offer on April 15 for those implicated in the scandal to have the investigation into their involvement in the affair to continue.
"I think the decision [to pardon potential wiretapping scandal suspects] protects the state interest, and I inform you that I am standing by it," Ivanov said.
"Anyone who thinks that a right has been taken from him or that I have done him a bad favor, or wants to prove his innocence in court, I call on him personally…to submit a request to annul the decision regarding him."
With reporting by Robert Coalson, Zoran Kuka, and Deana Kjuka