You should: Sign up > Write articles > tell people about your articles > Monetize them > Earn money  > learn/do/earn more

2019–20 Western Libya campaign

From Wikiafripedia, the free afripedia (encyclopedia)
Jump to navigation Jump to search

2019–2020 Western Libya campaign
Part of the Libyan Civil War (2014–present)
Western Libya Operation (2019).png
Above: Map showing the Libyan National Army's offensive within western Libya
Template:LeftlegendTemplate:LeftlegendTemplate:Leftlegend(For a more detailed, up-to-date, interactive map, see here).
Date4 April 2019 – present
(Template:Age in months, weeks and days)
Location
Western Libya
Status

Ongoing

  • As of June 4th, GNA Forces control all of Tripoli.[31]
Belligerents

Libya House of Representatives

Russia Wagner Group[3][4][5]
 Sudan (RSF)[6]
Template:Country data Libyan Arab Jamahiriya PFLL[7]
Supported by:
 Russia[8]
 Egypt[9][10][11]
 Israel[12][13][14][15]
 Saudi Arabia[8]
 France[16][17][18]
 United Arab Emirates[19][20][9][17]
 Jordan[21]
 Syria[22]

Libya Government of National Accord

Tripoli Protection Force[25]
Misrata militias[26]
Zawiya militias[25]
Libya Shield Force (alleged)[7]
Template:Country data Syrian opposition Syrian National Army (since Dec. 2019)[27]
Supported by:

 Turkey[28][29]
 Qatar (per LNA)[30]
Commanders and leaders
Libya Field Marshal Khalifa Haftar
(LNA supreme commander)
Libya Maj. Gen. Abdulrazek al-Nadoori[32]
(Chief of staff)
Libya Maj. Gen. Abdul Salam al-Hassi
(Senior commander)
Libya Brig. Gen. Ahmed al-Mismari
(Senior commander)
Libya Prime Minister Fayez al-Sarraj
(Head of unity government)
Libya Maj. Gen. Osama al-Juwaili
(Joint operations room leader)
Libya Maj. Gen. Abdul Basset Marwan[33]
(Tripoli Military Region commander)
Libya Emad al-Tarabelsi[23]
(Capital security commander)
Libya Atef Braqeek
(Tripoli Protection Force commander)
Units involved
See order of battle See order of battle
Strength
Libya 3,000[34]
Russia 200–1400 Wagner PMC[3][4]
Syria 300–400[35]
Sudan 3,000 Sudanese mercenaries[36]

Libya 5,000 total[34][37]

  • 3,000 (in Tripoli)
  • 2,000 (in Tripoli's surroundings)
Template:Country data Syrian opposition 11,600 (June 2020)[38]
Turkey 50 advisors[39]
Casualties and losses
Libya Unknown personnel losses
1 MiG-21MF,[40][lower-alpha 1], 2 Wing Loong lost,[42][43] 1 Mi-35 captured[44]
0[45]–7[46] Pantsir-S1 destroyed
1 Pantsir captured[47]
Russia 13–38 PMCs killed[48][49]
6 soldiers killed (per GNA; disputed)[a]
Syria 1 killed[50]
Libya Unknown personnel losses
3 Mirage F1, 5 L-39, 1 Il-78, 1 helicopter & 17 UAVs lost[51]
Template:Country data Syrian opposition 351[38]–500[52] killed
Turkey 2[53]–23[54][55] killed
2,356+ killed overall (2,000+ combatants and 356 civilians)[56]
146,000 displaced[56]
Italy 1 Italian MQ-9 Reaper UAV lost[57][58]
United States 1 US MQ-9 Reaper UAV lost[58]
Template:Note label UAE announced the death of six soldiers in a car collision in Yemen. However, the GNA stated that they were killed by GNA airstrikes in Libya.[59][60][61]

The Western Libya campaign is a military campaign initiated by the Operation Flood of Dignity (Arabic: عملية طوفان الكرامة‎) of the Libyan National Army, which represents the Libyan House of Representatives, to capture the western region of Libya and eventually the capital Tripoli held by the UN Security Council-recognised Government of National Accord.

The offensive has resulted in over 2,356 dead.[56] It began on 4 April 2019,[62] 10 days before the Libyan National Conference for organising presidential and parliamentary elections in Libya had been planned to take place,[63] and five days after the first session of the 2019 Libyan local elections was held successfully.[64]

War crimes and crimes against humanity that take place during the conflict are covered by the mandate of the International Criminal Court investigation in Libya under United Nations Security Council Resolution 1970.[65][66]

Background[edit source | edit]

Situation in western Libya before the April 2019 LNA offensive

Following the overthrow and death of Muammar Gaddafi and the fall of the Great Socialist People's Libyan Arab Jamahiriya in 2011, political and military control in Libya were in a state of flux. Fighting between different factions escalated in 2014, with the House of Representatives, based in the eastern city of Tobruk, being the main political force claiming to be the legitimate government of Libya. The House of Representatives was supported by Field Marshal Khalifa Haftar's Libyan National Army. In early 2016 a rival government, the Government of National Accord (GNA), was established in Tripoli with the backing of the UN and several countries.[67] There were multiple attempts to negotiate between the two governments and organise new elections throughout 2017 and 2018.[68][69][70] Haftar and GNA Prime Minister Fayez al-Sarraj met and spoke with each other twice for negotiations, in November 2018 and February 2019.[71] The Supreme Judicial Council of Libya, created in 2011,[72] retained its structure as a single national body despite the political split,[73] and in 2019 went through Libya-wide "transparent elections" and a "peaceful transfer of power".[74]

Face-to-face consultations with 7,000 Libyans and online consultations with 130,000 Libyans during 2018–2019, coordinated by the United Nations Support Mission in Libya (UNSMIL) and the Centre for Humanitarian Dialogue, led to a plan to hold the Libyan National Conference in Ghadames during 14–16 April 2019 in order to recommend to the Libyan House of Representatives and High Council of State methods and dates for holding 2019 presidential and parliamentary elections in Libya.[63] The first batch of the 2019 municipal elections in Libya took place on 30 March 2019.[64] Other aims of the conference, to which representatives of all political factions were invited, included creating a unity government between Sarraj and Haftar and proposing a framework for creating a new constitution.[1] In March 2019, the advance of Haftar's forces in southern Libya during the preceding few months started to cause concern for the organisers of the conference.[75] Ghassan Salamé, head of UNSMIL, stated on 4 April 2019 that the conference would be postponed because of the outburst of military events, but that it would be held

"as soon as possible because we do not have the right to allow this historic opportunity to be corrupted. At the same time, we cannot ask for the presence of the Conference, with the [cannons] firing and the raids ongoing, without making sure that all those who are willing to respond to this historic national duty from all regions of the country are able to ensure their safety and freedom by expressing their opinion."[63]

On 4 April 2019, an audio recording was published on Facebook by Marshal Haftar declaring war on the UN-recognised Government of National Accord and announcing that the LNA would militarily take over the capital city Tripoli.[76] In response, the government in Tripoli, led by Prime Minister Fayez al-Sarraj and the Presidential Council ordered a general mobilisation of all of its security forces.[77][78] On 6 April, Prime Minister Sarraj, as supreme commander of the Libyan Army, created a joint operations room under the western military region commander, Major General Osama al-Juwaili, to coordinate their operations.[79]

International (non-UNSMIL)[edit source | edit]

From early 2015, during the years prior to the April 2019 attack on Tripoli, Haftar received long-term support from French authorities, including French "advisers, clandestine operatives, and special forces"[80] helping the LNA's military operations in the east and south of Libya.[81][82] Three of the French special-forces soldiers died in a helicopter accident near Benghazi in July 2016.[80] Bloomberg News stated that the al-Sarraj administration had long-term support from Italian authorities.[81] The Economist argued that a May 2018 meeting between al-Sarraj and Haftar, hosted by French president Emmanuel Macron in the context of French-Italian rivalry with regards to Libya, "undermined" the efforts of Ghassan Salamé in facilitating the organising of the Libyan National Conference by Libyans. The Economist pointed to the Greenstream pipeline natural gas pipeline and French and Italian crude oil interests in Libya as significant factors in the two countries' relations with Libyan political forces in 2018.[83]

Bloomberg News described Russia, Egypt and the United Arab Emirates as "backers" of Haftar.[81] Prior to the LNA attack on Tripoli, the Saudi Arabian government gave twenty million US dollars to the LNA in support of the attack, "to buy the loyalty of tribal leaders, recruit and pay fighters, and other military purposes."[84]

On 27 December 2019 Bloomberg News reported that Turkey intended to deploy its navy to protect Tripoli and send troops to help train GNA forces. Additionally Turkmen rebel groups fighting in northern Syria were expected to transfer to Tripoli.[85][86] By 29 December, 650 Turkish-backed Free Syrian Army personnel (also called: Syrian National Army) had arrived in Libya and were stationed on the eastern frontline in Tripoli.[87]

The campaign[edit source | edit]

2019[edit source | edit]

April[edit source | edit]

4 April

On the first day of the offensive, 4 April 2019, the LNA captured Gharyan.[88] Haftar urged pro-GNA militias to surrender, saying "Those who lay down their weapons are safe, and those who raise the white banner are safe."[89] Interior minister Fathi Bashagha condemned the offensive, declaring that "We will not be subdued by any use of force by any side or any person. And if anyone is willing to use force against us we're ready for sacrifice but we will not give up on democracy which we've always wanted from the beginning."[89]

5 April

On 5 April, the Libyan National Army stated that they had captured Qasr bin Ghashir, Wadi al-Rabie and Suq al-Khamis.[90] LNA then marched toward Tripoli from several directions, reaching the city's outskirts after receiving orders to capture the city.[91][92] The LNA reported asserting control over the town of Azizia.[62][93] The LNA briefly captured a key checkpoint, known as Gate 27, on the road between Tripoli and Tunisia, but withdrew overnight.[94] The GNA interior ministry ordered all of its forces to be placed on maximum alert.[95] The United Nations Security Council scheduled an emergency meeting on the same day to discuss the recent developments in Libya.[96] Later in the day the LNA reported capturing the village of Suq al-Khamis, located 20 kilometres (20,000 m) south of Tripoli, after clashes with pro-GNA militias.[97] Meanwhile, the leader of the LNA, Field Marshal Khalifa Haftar, met with UN Secretary General António Guterres in the former's office in Tobruk.[98] During the late hours of the day a battle broke out over Tripoli International Airport, in which LNA forces were able to successfully capture the airfield and defend it from a GNA counter-attack.[99]

6 April

On 6 April, the LNA air force declared western Libya a no-fly zone[100][101] and began to engage GNA targets,[102] after GNA jets targeted LNA positions in Mizdah and Suq al-Khamis.[23] Haftar issued orders against using the LNA's aircraft in battle.[1] The LNA reported recapturing Gate 27,[103] as well as asserting control over Salah al-Din[104] and Ain Zara neighbourhood in southern Tripoli,[105] after pro-GNA militias surrendered to the LNA.[106] By nightfall forces loyal to the GNA launched a counterattack on the airport in southern Tripoli,[107] which was repelled by the advancing LNA, according to Haftar.[108]

7 April
Situation in western Libya before the GNA counteroffensive

A US military contingent and a contingent of Indian police peacekeepers were evacuated from Tripoli.[109]

Colonel Mohamed Gnounou, the GNA military spokesman, announced that they started a counteroffensive to reclaim the territories in Tripoli taken by the LNA, dubbed "Operation Volcano of Anger". The UN mission in Libya asked for a two-hour ceasefire in south Tripoli to evacuate civilians.[110][111]

In an official declaration, the Ministry of Health of the GNA declared their casualties at 21 dead and 27 wounded.[112]

The LNA conducted an airstrike against a GNA position in southern Tripoli, the Bab al-Azizia military compound,[113] the first LNA airstrike to target a part of the city.[2][114][115] It is thought that Haftar has a superior air force, supplied by the United Arab Emirates,[116] although the Libyan Air Force is nominally loyal to the GNA.[24]

By the end of the day, an LNA spokesman, Major General al-Mesmari, reported that the LNA reached the Fernaj neighbourhood of Tripoli and are advancing through the eastern neighbourhoods of the city.[117][118]

8 April-9 April

The GNA airforce launched an air strike on the early hours of Monday on al-Watiyah, the only airbase captured by LNA since the launch of the operation, located 130 kilometres (80 miles) southeast of Tripoli.[119]

As part of the operation Volcano of Anger launched by GNA, Mistrata militias mobilized on the frontlines of Tripoli to prevent the LNA from capturing it.[120]

LNA forces under Hifter conducted an airstrike against the GNA-held Mitiga International Airport in Tripoli, Libya's last functioning civilian airport, on 8 April.[26][121][122] The closure left Misrata Airport, located 200 km (125 miles) to the east down the coast, as the nearest airport for Tripoli residents.[26] UN special representative for Libya Ghassan Salamé condemned the attack as "a serious violation of international humanitarian law."[121] Wolfram Lacher, a scholar of Libya at the German Institute for International and Security Affairs, said that the strike showed Hifter's willingness "to reduce Tripoli to rubble so that he can rule Libya, which is the only option he has left now anyway."[121] Flights were temporarily suspended; by 9 April, a coalition of local and regional militias[121] and GNA forces[26] had pushed Hifter's forces from the airport, and flights resumed, with clashes continuing in multiple locations on the southern fringes of Tripoli.[121] On 8 April, the LGA said 19 of its soldiers died in recent days in the fighting in and around Tripoli, while a spokesman for the GNA's said that "fighting in the south of the capital had killed at least 25 people, including fighters and civilians, and wounded 80."[26]

From the beginning of April 2019 to mid-May 2019, southern Tripoli's Yarmouk military camp/barracks had changed hands between the GNA and the LNA at least five times.[123]

The LNA used BM-21 Grad MRLs against GNA positions[124] in retaliation for GNA airstrikes.[125]

According to Libya al-Ahrar TV as cited by The Libya Observer, a team of French "military experts" arrived in Gharyan and created a "control room to monitor the attack on Tripoli".[126][127]

10 April

The GNA reported bombing LNA targets within the LNA-held town of Gharyan.[128] The LNA announced that they have captured the 4th Brigade Headquarters in the town of Azizya after fierce fighting with the GNA.[129] The UNHCR attempted to evacuate detained refugees from the Qasir bin Gashir detention center, after it became stuck in crossfire between the two sides.[130] Reports suggest most detainees were transferred to Sekah Road detention center, but around 120 people were left behind and were still in the Qasir bin Gashir detention center by the morning.[131] During the afternoon, the LNA air force conducted an airstrike against GNA targets near Tripoli airport.[132] By sunset, LNA spokesperson, Brig. Gen. Ahmed al-Mismari, stated that the LNA have secured al-Yarmouk camp and are advancing toward the Dabali military camp.[133] He also reported that the LNA have arrested pro-GNA "african mercenaries" at Tripoli Int'l Airport.[134] Shortly thereafter, al-Mismari stated that the LNA have shot down a GNA Aero L-39 Albatros that attempted to relocate from Misrata to Tripoli.[135][136]

11 April

The Chief of the GNA Tripoli Military Zone, Maj. Gen. Abdul-Basit Marwan, stated that the LNA were shelling GNA positions in southern Tripoli with BM-21 Grad MRLs.[137] The GNA claimed several airstrikes on LNA targets in Suq al-Khamis and Tarhuna city.[138] The LNA retaliated by launching an airstrike on GNA targets in the contested Ayn Zara region.[139] A GNA spokesman reported that the GNA have recaptured Wadie Alrabie, Bridge 27, Bridge of Souq Al-Ahad and Tripoli International Airport. Brig. Gen. Al-Mismari, LNA spokesperson, reported that the "things on the ground are in favour of the [Libyan National] army," adding that they have seized 14 GNA armoured vehicles and tanks, positioning themselves a mere 2 km from Tripoli's city centre after a GNA retreat. He stated that Tripoli Int'l Airport is "still a fire zone," but did not comment on who controlled it at that time. He also promised to "surprise everyone" with a plan to seize all of Tripoli.[140] By nightfall, the GNA claimed that it negotiated the surrender of soldiers belonging to the LNA 8th brigade in Ayn Zara, after they were left without fuel or ammunition for more than a day.[141] The LNA shelled the contested town of Al Swatani.[142] An LNA spokesman stated that the Libyan National Army has issued an arrest warrant for Fayez al-Sarraj, head of the GNA.[143]

12 April

The LNA conducted an airstrike against the GNA in Abdel Samad Camp, south of Zuwarah.[144] Heavy gunfire and explosions were reported from downtown Tripoli.[145] The LNA stated that they have received major military reinforcements, that they have killed dozens of GNA fighters in the previous day's offensive, and that the LNA 9th brigade is advancing in the Al-Khalla region. It also reported that several young GNA fighters defected to the LNA.[146] The LNA air force conducted air raids against GNA targets in Wadi Al Rabie, south of Tripoli.[147] In the late afternoon, the LNA conducted airstrikes against a GNA military camp,[148] as well as an arms cache in the North-East Tripoli neighbourhood of Tajura.[149] Explosions were reported at GNA-held Mitiga International Airport. Conflicting reports emerged as to whether they were from an LNA airstrike[150] on the airport or as a result of GNA anti-aircraft guns firing.[151] The LNA claimed that residential houses and civilian buildings in LNA-held suburbs of Tripoli were subjected to bombardment by the GNA.[152] LNA spokesman, Brig. Gen. Al-Mismari, accused former President of Sudan, Omar al-Bashir, of sending two planes loaded with 28 fighters, as well as a large amount of weapons and ammunition, from Khartoum to GNA-held Mitiga International Airport on 28 March.[153] Fathi Bashagha, Interior Minister of the Presidential Council, stated on 12 April that the United Arab Emirates sent military equipment to the LNA at Benina International Airport in Benghazi.[154] The UNHCR called for the release and evacuation of detained refugees held in wartorn areas. The UNHCR confirmed that 728 people were still trapped in the contested Qasir Bin Gashir detention center, stating that it attempted to evacuate them to the Zintan detention center the previous day. The detainees refused to go, insisting that they be evacuated out of Libya.[155]

13 April

Speaker of the Tobruk-based House of Representatives, Aguila Saleh Issa, called for a partial lifting of the international arms embargo imposed on Libya, to allow countries to legally arm the Libyan National Army.[156] He stated that the Tobruk-based government intends to hold elections after capturing Tripoli.[157] The LNA conducted several airstrikes on GNA targets in the southern party of the city, amid intense street battles between the two sides.[158][159] The World Health Organization delivered medical kits to local hospitals, but cautioned that Tripoli only has enough medical supplies for two weeks.[160] GNA forces once again took control of Al-Yarmouk camp.[161]

14 April

The LNA issued a statement, reporting that internationally designated terrorist groups were fighting alongside the GNA in Tripoli. The GNA Presidential Council denied the claims.[162] A GNA plane targeted an LNA military post in Southern Tripoli.[163] President of Egypt, Abdel Fattah el-Sisi, met with LNA Field Marshal Khalifa Haftar in Cairo.[10][11] An intensification of LNA air force activity was reported, with LNA Mi-35 helicopters and Su-22 bombers targeting numerous GNA positions in Azizya, Wadi Al Rabie, the 4th Brigade HQ, Al Sawani, Ayn Zara and Tajura.[164] The LNA reportedly made advances toward the center of Tripoli, as well as Salah Al-Din.[165] The LNA recaptured Yarmouk camp, as well as several other military camps in the area and is positioning itself toward capturing the Green Plateau of Tripoli.[166] The LNA was reported to have taken control of Spring Valley Bridge in the south of the capital.[167] The LNA sent military reinforcements to Ra's Lanuf and Es Sider oil ports, in anticipation of a counter-attack by the GNA.[168] A LNA warplane crashed in southern Tripoli.[169] The GNA claimed to have shot it down.[170] A video was later released allegedly showing missiles being fired at the plane, with one hitting the aircraft.[171] Images released from local residents purported to show both the pilot and co-pilot successfully ejecting from the aircraft and deploying their parachutes.[172] LNA Brig. Gen. Al-Mismari confirmed that the aircraft was shot down by a missile, fired by GNA forces from a suburb of Tripoli. He added that the pilot was alive and in good health.[173] He also accused a GNA militia commander of planning to bring over 350 mercenaries to the capital to fight the LNA.[174] Detainees at the contested Qasir bin Gashir detention center told Al Jazeera that they have been abandoned by their GNA guards since the previous day and were left to fend for themselves in the crossfire. They stated that there were still 728 detained refugees residing in the camp. They accused the GNA of subjecting them to "years of much torture and suffering", reiterating their desire to leave the country entirely.[175]

15 April

Heavy clashes were reported between LNA and GNA forces in Tripoli's Ayn Zara suburb.[176] The LNA military information division stated that "large reinforcements" had arrived in LNA-controlled Gharyan and were preparing to join the assault on the capital.[177] A GNA official claimed that more than 3 million books were destroyed as a result of shelling on a building belonging to the Libyan ministry of education. Both sides accused each other of the attack.[178] A new spokesperson for the GNA Presidential Council (the previous spokesman, who was born in Eastern Libya, was replaced without explanation) accused foreign governments and "statelets" of plotting to cause instability in Libya. He claimed that GNA forces were "constantly advancing on all axes", managing to "defeat the aggressor force" and that they were able to "inflict on the [LNA] aggressor militias huge casualty." He also accused the LNA of various war crimes.[179] GNA head, Fayez al-Sarraj, vowed to have all LNA leaders and commanders involved in the offensive prosecuted.[180]

Bombardments of Tripoli with Grad dockets and missiles[181] continued late-night shelling on April 15.[182] Four people were reported dead.[182] The Tripoli-based internationally recognized government reported that a 5-year-old boy was killed, and his three siblings seriously injured, in shelling of the Tariq al-Soor neighborhood; separately, a 66-year-old women was killed, and two children were wounded, in the Abu Salim neighborhood[181] in southern Tripoli.[182] The Tripoli government accused Haftar's LNA of targeting residential areas, which the LNA denied.[182]

A UN spokesperson on April 17 condemned the attacks that had begun two days earlier, saying: "Tripoli witnessed the heaviest fighting since the outbreak of the clashes with indiscriminate rocket fire on a high density neighborhood in the Libyan capital....In the past 24 hours, we have also seen the highest single day increase in displacement with more than 4,500 displaced."[183]

16 April
17 April

Two GNA soldiers were killed by an LNA airstrike on Tripoli's Ayn Zara suburb.[184] The GNA air force bombed a medical post in Qasir bin Gashir.[185][186] The LNA was reported to have taken up positions 50 kilometres (50,000 m) to the east of Sirte.[187] The GNA conducted an airstrike on Wadi Al Rabea, a suburb south of Tripoli. No casualties or damage is reported.[188] The LNA's 201st battalion received reinforcements in the south of the city.[189]

18 April

Heavy clashes occurred between GNA and LNA forces, after GNA units attempted to advance towards the Saadiya area. The LNA air force conducted multiple airstrikes on GNA targets in the area.[190] LNA jets also conducted several air raids against GNA targets in Libya's Wadi al Rabie suburb.[191]

20 April

LNA drone aircraft, allegedly supplied by United Arab Emirates, have struck the GNA military camp in Sabaa district, south of Tripoli city center.[192]

30 April

Recep Tayyip Erdoğan voiced his support for the GNA, saying that Turkey would "spare no effort in confronting the conspiracy against the Libyan people."[193] GNA forces captured the settlement of El-Sbeaa (Espiaa), south of Tripoli.[194]

May[edit source | edit]

7 May

On 7 May, an aircraft was shot down near al-Hira and the pilot was detained by the LNA. A video circulating on online social media was claimed by the LNA to show the pilot, who said that he was from Portugal. The Portuguese Ministry of Defence stated that the pilot was not a Portuguese soldier.[195] The GNA stated that the downed aircraft was not one of its own. According to The Libya Observer, an anonymous military source claimed that the aircraft was an LNA plane downed by friendly fire.[196]

8 May

A clearly marked ambulance carrying the Director of the Tripoli Ambulance and Medical Emergency Services and two medical personnel was destroyed in Twaisha in Qasr bin Ghashir in Tripoli on 8 May by the LNA. The Director lost his legs and as of 8 May 2019 remained in critical conditions. The two medical staff were injured. The representative in Libya of the World Health Organization, Syed Jaffar Hussain, said that the attack against the ambulance was a "shocking and intolerable violation of international humanitarian law."[197]

10 May

A number of extremist armed groups announced that would not bound by any cease-fire agreement that may be signed between GNA Prime Minister Fayez al-Sarraj and LNA commander Khalifa Haftar. Al-Samoud Brigade from Misurata, led by Salah Badi who is under U.S. and U.N. sanctions,[198] said: "the true rebels will not accept any agreements with the war criminal Haftar," asserting that their fight against the LNA forces is "Jihad for God that will not stop until complete victory".[199]

11 May

Haftar advanced in Tripoli's southern districts, most notably the al-Aziziya area.[200] The LNA also carried out air strikes on several militia positions in the Wadi al-Rabih and Ain Zara areas.[200] Photos also were released showing the LNA advancing towards Sirte.[200]

13 May

By 13 May, the GNA announced that Haftar's forces occupied both the Tripoli Airport and Gharyan, which were struck by the GNA air force.[201] Haftar's forces also occupied the areas in Tripoli Airport Road, Qasir Benghashir and near Gharyan as well as in Sooq Al-Khamis, which were also targeted by the GNA.[201] Meanwhile, Haftar's LNA forces bombed Al-Zawiya city to the west of Tripoli, causing massive material damage.[201]

14 May

By 14 May, the LNA announced that their ground defenses shot down a military aircraft of the GNA in the Jufra District, in central Libya.[202]

June[edit source | edit]

13 June

The LNA spokesman announced that LNA forces successfully shot at a GNA warplane which was firing at their forces in Al-Dafiniya, west of Tripoli.[203] The warplane took off from Misrata Airbase, and later crashed approximately 20 km from Misrata as the pilot was returning to the airbase following the incident.[203] The pilot was also killed after the plane crashed.[203] The GNA also acknowledged that a plane crashed, but alleged that it was due to a mechanical failure.[203]

26 June
Situation in western Libya after the GNA retook control of Gharyan (June 2019)

The GNA announced that it had captured the town of Gharyan from the LNA.[204] Dozens of LNA soldiers were killed in fighting in the town, and at least 18 others were reportedly captured by the GNA.[205] The GNA's airforce attacked convoys of LNA troops as they withdrew from the area.[204]

July[edit source | edit]

2 July
GNA forces at Tripoli, July 2019

An airstrike by the LNA hit the Tajoura Detention Center outside Tripoli, Libya, while hundreds of people were inside the facility. It killed at least 53 of them and injured 130 others.[206] The detention center was being used as a holding facility for migrants and refugees trying to reach Europe when a storage hangar that it used as a residential facility was hit by the airstrike.[206]

6 July

It was reported that the Popular Front for the Liberation of Libya had joined the LNA in its offensive.[7]

17 July

A parliamentary member for Benghazi, Seham Sergiwa, was detained by the LNA 106th Brigade in a raid at her home in which the 106th Brigade also wounded her husband and son and prevented them from having visitors in hospital.[207] As of 23 July 2019, Sergewa's location remained unknown.[208]

25 July

The first 1000 of 4000 planned arrivals of Sudanese Rapid Support Forces (RSF), veterans of the Darfur genocide and 3 June 2019 Khartoum massacre,[209] arrived by 25 July in Libya, to relieve LNA troops guarding oil installations and free them for attacking Tripoli.[210]

29 July

On 29 July 2019, Ghassan Salamé, head of the United Nations Support Mission in Libya (UNSMIL), proposed a three-point Libyan peace plan to the United Nations Security Council (UNSC), which would "require consensus in [the UNSC] and amongst the Member States who exert influence on the ground" and require Libyans "to listen to their better angels" rather than "[fight] the wars of others and in so doing [destroy] their country."[211] Salamé's plan includes a truce between the Government of National Accord (GNA) and Libyan National Army (LNA) and their associated militias on Eid al-Adha, along with confidence-building measures such as prisoner exchanges, releasing arbitrarily detained prisoners and exchanging the remains of victims of the conflict;[211] an international meeting of countries implicated in the conflict, to stop the fighting, implement the legally existing arms embargo, and promote the following of international human rights law;[211] and a Libyan meeting similar to the originally planned Libyan National Conference.[211]

August[edit source | edit]

11 August

A truce took place on Eid al-Adha that UNSMIL head Salamé described as a "substantial reduction in violence along the main fronts in southern Tripoli and elsewhere" with "some violations" and that "broadly speaking, the truce held for the duration of the Eid festivities." The truce constituted the first stage of the 3-phase Salamé peace plan.[212]

20–29 August

The LNA launched several failed attempts to capture Gharyan.[213][214][215][216][217][218]

September[edit source | edit]

13 September

GNA claimed they killed six United Arab Emirates soldiers during airstrikes on Al-Jufra airbase. However, the UAE announced that six of its soldiers were killed in a car collision in Yemen.[59][60][61]

21 September

The GNA announced that a residential area in Tripoli became a target to drones from the United Arab Emirates (UAE). The attack in al-Hadaba area caused severe injuries to several members of a family.[219]

October[edit source | edit]

1 October

Khalifa Haftar’s forces, backed by the United Arab Emirates (UAE), launched artillery shells on Mitiga Airport in Tripoli, according to sources from Burkan Al-Ghadab Operation (Volcano of Rage Operation) of the Libyan Army under the GNA command.[220]

6 October

Airstrikes on Misrata Airport by the foreign warplanes, backed by the LNA, injured one member of staff and damaged two airplanes, said media office of Volcano of Rage Operation.[221]

Air raids by LNA aircraft targeted the Equestrian School in Janzour, west of Tripoli. The attack wounded at least three children and one old man, along with killing a couple of horses.[222]

15 October

UNICEF issued a statement expressing "sadness and shock" at the killing of children and their mother during the airstrike by the LNA on the al-Furnaj area in Tripoli.[223]

19 October

Mohammed Gununu, spokesperson for the Libyan Army under the command of GNA, claimed that a Wing Loong drone, supplied by the UAE to the LNA, was shot down in Misurata.[224]

November[edit source | edit]

14 November

The LNA raided Sirte and repelled an attack south of Tripoli.[225]

18 November

Ten people, including two Libyans and several migrants, were killed and 35 people were injured in an airstrike against a biscuit factory in Wadi Rabi'a in Tripoli.[226]

19 November

The LNA carried out air strikes on the port city of Misrata, targeting armored vehicles delivered from Turkey and a munitions depot.[227]

December[edit source | edit]

12 December

Haftar announced the beginning of a new offensive in what he said would be the "final battle" for the capital.[228]

21 December

The LNA seized a vessel flying a Grenada flag with several Turkish crew members.[229] The LNA released the ship and the crew two days later.[230]

27 December

Turkish-backed Syrian rebels, Sultan Murad Division and Sham Legion, were fighting for the GNA in "Al-Takbali" camp in Salah al-Din area in southern Tripoli, being transported through Mitiga and Misrata International Airports.[231]

2020[edit source | edit]

January[edit source | edit]

4 January

An airstrike on a military academy in Tripoli killed 28 cadets and wounded 24, according to the GNA. BBC News attributed the attack to the LNA.[232] The Turkish Ministry of National Defense stated: "We strongly condemn the attack by Haftar's forces, the enemies of peace, on the Military Academy in Tripoli aiming to realize their unlawful intentions."[233] UNSMIL condemned the attack.[234]

5 January

The first Syrian fighter, part of the Sultan Murad Division, was reported killed.[235]

6 January

The LNA captured Sirte[236] after the defection of Brigade 604 — a Madkhali militia present in the city — forced the GNA-affiliated Sirte Protection and Security Force to retreat after brief clashes.[237]

A meeting of 19 Libyan economic and financial experts representing diverse Libyan interests was held in Tunis as part of the intra-Libyan component of the Salamé three-point peace plan.[238]

12 January
Situation in western Libya after the LNA took control of Sirte (Jan 2020)

A Russian–Turkish proposed ceasefire, supported by German and Italian leaders, was expected to be implemented as a component of the peace process.[239][240][241] General Khalifa Haftar refused to sign the ceasefire agreement after talks in Moscow brokered by Russia and Turkey with Government of National Accord leader Fayez al-Sarraj, with Haftar stating that the deal "ignores many of the Libyan army's demands".[242]

19 January
Anti-Haftar protest at the 19 January 2020 Berlin conference

After five international preparation meetings over several months,[243] the Berlin conference for the political leaders of states alleged to have violated the arms embargo on Libya and of other major international powers took place in Berlin on 19 January 2020, with the aim of stopping international involvement in the Libyan conflict. The conference launched the second component of the three-point peace plan.[244] Serraj and Haftar were both present in Berlin, but didn't participate directly in the main talks, as they refused to be in the same room as one another. They were kept informed of the discussions.[243] An anti-Haftar protest of 150 people was held in Berlin near the conference venue with posters including "Haftar kills Libyan children".[245]

25 January

UNSMIL reported violations of the arms embargo, stating that during the previous ten days, "numerous cargo and other flights [had] been observed landing at Libyan airports in the western and eastern parts of the country providing the parties with advanced weapons, armoured vehicles, advisers and fighters."[246]

February[edit source | edit]

3 February

The 5+5 Libyan Joint Military Commission of 5 senior GNA-selected military officers and 5 senior LNA officers started meeting in Geneva on 3 February in the military track of the intra-Libyan component of the Salamé 3-point peace process, aiming to agree on practical details of monitoring and strengthening the existing ceasefire.[247]

18 February

The 5+5 Libyan Joint Military Commission started its second negotiation round in Geneva.[248]

20 February

After a short break in relation to an LNA attack on Tripoli harbour,[249] the 5+5 military track of negotiations continued in Geneva.[250]

24 February

The United Arab Emirates is suspected to have provided arms to support the Khalifa Haftar-led Libyan National Army; from mid-January 2020 to early March 2020, the UAE is believed to have shipped more than 100 deliveries, totaling about 5,000 metric tons, to Haftar's forces, via aircraft flights some from military bases in the UAE and others from the UAE's airbase in Assab, Eritrea.[251] The contents of the shipments were not known, but are believed to include arms and ammunition, including possible heavier artillery, as well as other materiel, such as communications equipment and other gear.[251] The UN arms embargo on Libya was viewed as ineffective: Moncef Kartas, the retired UN weapons inspector for Libya, said there had been "no respect for the UN arms embargo, absolutely none," which was echoed by UN deputy special envoy for Libya Stephanie Williams.[251]

26 February

The political track of the Libyan peace process started in Geneva among 20 Libyans, from both the Tobruk-based and Tripoli-based parts of the HoR, and from the independent persons' group selected by UNSMIL, including Interior Minister Fathi Bashagha, former Education Minister Othman Abdul Jalil and former head of the HCS Abdulrahman Sewehli.[252] The aimed composition was 13 HoR representatives from both the Tobruk and Tripoli branches, 13 HCS Template:What representatives and 14 UNSMIL-selected independent Libyans, for a total of 40.[253]

March[edit source | edit]

9 March

Nearly 40 Syrian mercenaries recruited by the Turkish Army have fled to Italy, raising the number of Syrian fighters who fled from Libya to Europe to nearly 200.[254]

26 March

The LNA captured Zelten, al-Assah, Al-Jamil and Riqdalin on the northwestern coast,[255] further attempting to push on the Ras Jdir area on the Tunisian border.[256]

Sarraj announces that pro-GNA forces will launch Operation Peace Storm and counter-attack against LNA troops.[257]

April[edit source | edit]

13 April

The GNA forces seized control of the LNA-held towns of Sorman, Sabratha, Ajaylat, Aljmail, Regdalin, Zaltan, and Al Assah, recapturing the western Libyan coast and re-connecting with the Tunisian border.[258]

16 April

GNA forces besieged al-Watiya airbase.[259]

18 April

The GNA launched an offensive on the town of Tarhuna on five axes.[260] The GNA claimed to have captured 102 pro-Haftar fighters during the offensive.[261]

19 April

The GNA claimed to have downed a UAE drone south of Misrata.[262]

21 April

The LNA launched a counter-attack from al-Watiya air base, capturing the town of Al-Aqrabiya north of the air base.[263]

29 April

Ahmed Mismari, the spokesman for Libya's eastern-based forces announced that they will cease fire for Ramadan, after suffering setbacks during weeks of intense fighting against the internationally recognized government. Mismari said in a television broadcast that the ceasefire came at the request of the international community and "friendly countries".[264]

30 April

The GNA responded to Haftar’s unilateral declaration of a ceasefire by rejecting it and saying it will keep fighting.[265]

May[edit source | edit]

5 May

The GNA launched an offensive to capture al-Watiya airbase.[266] The GNA claimed to have successfully encircled the base[267] and claimed two enemy Grad Rocket launch vehicles destroyed and various ammunition vehicles.[268]

The GNA also claimed to have captured points south of Tripoli on the same day.[269]

9 May

The LNA lauched a mortar attack on the Tripoli-Mitiga International Airport destroying a fuel depot and leaving 4 aircraft destroyed, 3 of civilian use and 1 GNA LAAF Il-78.[270]

18 May

The GNA captured Al-Watiya Air Base and in the process seized a Pantsir missile system,[271][47][272][273] an armed Mi-35 helicopter and the remains of 2 non-operational Mirage F1s and a Su-22. [41][274]

19 May

GNA forces extend their control over the towns of Badr and Tiji.[275]

20 May
Situation in western Libya after the GNA took control of Al-Watya airbase and Mizdah (May 2020)

Mohammed Gununu, a GNA spokesman claimed their forces have destroyed 7 Pantsir batteries in Al-Watiya airbase, Tarhouna and Al-Wishka.[46]

23 May

The GNA forces retook two military camps, Hamza and Yarmuk, from the LNA south of the capital Tripoli.[276]

25 May

The mayor of Bani Walid, said that Russian Wagner Group mercenaries allied to the LNA retreated from Western Libya to an unconfirmed destination along with their heavy equipment. After Antonov An-32 cargo planes landed at Bani Walid airport.[277][278]

27 May

The US military accused Russia of deploying fighters jets in support of Russian mercenaries working for the LNA forces. According to US officials Russian Mig-29 were deployed from Syria to protect 1,200 Russian mercenaries retreating from Libya, the commander of Africa Command accused Russia of using pilot mercenaries for a air campaing in behalve of Haftar forecs (LNA).[279] Meanwhile, Libyan National Army officials, announced that an air operation against the GNA forces will begin soon.[280]

29 May

Pro-GNA forces seized control of the Al-Kayikh neighborhood in Tripoli, near the town of Qaser Bin Ghashir.[281]

June[edit source | edit]

1 June

The LNA recaptured the town of al-Asaba, south of Gharyan.[282]

3 June

Pro-GNA Libyan Army spokesman Muhammad Qanunu announced the launch of an operation to capture Tripoli Airport.[283] By the end of the day, the airport was reported to have been captured.[284]

4 June

The GNA had successfully regained full control of Tripoli after the withdrawal and ousting of LNA forces from their remaining controlled-positions in the southern outskirts.[285][286]

Strategic analysis[edit source | edit]

According to the Middle East Institute, the LNA's offensive against Tripoli has resulted in an increased destabilization of Libya, allowing the local forces of the Islamic State of Iraq and the Levant (ISIL) to regain some strength in southern Libya. As a result of the fighting between the LNA and GNA-backed militias, both did less to suppress ISIL while creating new power vacuums which radical Jihadists were likely to expolit.[287]

Casualties[edit source | edit]

The UN's World Health Organization reported over 2,280 dead by mid-January 2020, of which over 2,000 were confirmed as combatants and 280 as civilians. The civilian death toll was reported to had reached 356 by the end of March 2020.[56]

Human rights abuses[edit source | edit]

Legal aspects and documentation[edit source | edit]

Under United Nations Security Council Resolution 1970, the International Criminal Court (ICC) can carry out investigations and prosecutions into claims of war crimes, crimes against humanity or genocide if the crimes are claimed to occur in Libya on or later than 15 February 2011.[65] As of 6 April 2019, the ICC had two outstanding warrants for the arrest of LNA commander Mahmoud al-Werfalli, for involvement in the alleged killings in and near Benghazi of 33 people during June 2016 to July 2017[65] and for allegedly executing ten people "in front of a cheering crowd" in Benghazi between 23 and 25 January 2018.[288] In reference to the 2019 Western Libya offensive, ICC Chief Prosecutor Fatou Bensouda stated on 11 April that the ICC "[wouldn't] hesitate" to issue arrest warrants for people suspected of war crimes and crimes against humanity.[289] On 16 April, Bensouda gave more details, stating that both those directly committing war crimes in Libya and their commanders would be liable to prosecution by the ICC, including anyone "ordering, requesting, encouraging or contributing in any other manner to the commission of crimes within the jurisdiction of the Court".[66] According to Human Rights Watch, both the GNA and LNA military forces had prior records of human rights abuses, with "a well-documented record of indiscriminate attacks on civilians, summary executions of captured fighters, and arbitrary detention" by LNA forces and evidence of abuses of civilians by GNA forces, prior to 4 April 2019 attack on Tripoli.[290]

Al-Sarraj stated on 17 April that the GNA would provide documentation to the ICC regarding 16 April Grad shelling of residential areas[182] that killed at least seven people and wounded 17,[291] for which he claimed Haftar was responsible.[292] On 2 May, a spokesperson for the GNA, Muhanad Younis, stated that administrative responsibility had been allocated for documenting war crimes during the Western Libya offensive and providing the documentation to the ICC.[293]

UNSMIL stated on 30 January 2020 that extrajudicial executions had been reported "in Haftar-controlled areas in Tarhouna and Tripoli".[294]

Claims of war crimes[edit source | edit]

The family of militiaman Firas al-Kikli claimed on 11 April 2019 that LNA forces took him prisoner and later killed him. Images of al-Kikli's mutilated body circulated on social media.[295]

During 15–17 April 2019, rocket attacks using inaccurate technology occurred against three densely populated residential areas in and near the Abu Salim area of Tripoli, and were interpreted by Amnesty International (AI) as "unlawful attacks that could amount to war crimes".[296] Based on information from witnesses and satellite imaging, AI stated that those launching the rockets "failed to take necessary precautions to protect civilian lives and civilian objects". AI identified the areas hit as Hay al-Intissar, in which five rockets hit five homes killing five adults and wounding a girl; Hay Salahaddin; and the "Kikla buildings", where three rockets hit a construction company, a residential building and the ground, wounding two people.[296] Thomson Reuters journalists stated that 16 April Grad shelling of residential areas killed at least seven people and wounded 17.[182][291][292] AI found no evidence for any military targets in any of the attacks and could not "conclusively determine" which armed group was responsible for the attacks. Abu Salim residents attributed the attack to the LNA.[296] Magdalena Mughrabi of AI recommended on the basis of the attacks that the ICC investigate possible war crimes by all parties involved in the 2019 Western Libya offensive. She stated, "The use of artillery and other imprecise weapons such as GRAD-style rockets in civilian areas is prohibited under international humanitarian law and such indiscriminate attacks can amount to war crimes."[296]

On 2 May, BBC Arabic published its enquiry into apparent war crimes carried out during the attack on Tripoli that had been widely circulated on Facebook. BBC Arabic reported on the murder of three prisoners of war and on a special forces group of the LNA that distributed videos and photos of mutilated bodies.[297]

On 18 May, a station of the Great Man-Made River project was attacked by an armed group, putting at risk water supplies to Tripoli and Gharyan. Maria do Valle Ribeiro, the United Nations Humanitarian Coordinator for Libya, said that as an attack against critical civilian infrastructure, the incident could qualify as a war crime.[298] The attackers claimed to be Haftar supporters[299] and their commander was claimed to be Khalifa Ehnaish, loyal to Haftar.[298] The LNA denied command responsibility for the attack.[299][298]

On 2 July 2019, an airstrike hit the Tajoura Detention Center outside Tripoli, while hundreds of people were inside the facility. It killed at least 53 of them and injured 130 others. UNSMIL suspected that the mass killing of civilians was a war crime.[206]

On 27 July 2019, an airstrike on a field hospital near the capital Tripoli killed five doctors, and wounded seven other people. The attack is believed to have been carried out by LNA aircraft.[300]

On 4 August, an airstrike by the LNA against a wedding in Murzuk killed 43 people and injured 60.[301] The European External Action Service commented on the civilian deaths at Murzuk and referred to the legal principle that "indiscriminate attacks on densely populated residential areas" may constitute war crimes.[302]

UNSMIL described 18 November aerial attack on a biscuit factory at Wadi Rabi'a in Tripoli, which killed ten people, as a possible war crime.[226]

Legal cases[edit source | edit]

On 26 June 2019, four Libyan families filed a lawsuit in the United States (US) federal court against Haftar for war crimes that took place during the 2019 Western Libya offensive, seeking US$125 million in damages and compensation. The lawsuit alleged that Haftar was responsible for "torture, mass murder, indiscriminate destruction of civilian property and genocide".[303]

Reactions[edit source | edit]

Domestic[edit source | edit]

Prime Minister Fayez al-Sarraj, also the chairman of the GNA's Presidential Council, accused Haftar of betraying them and launching a coup d'état.[71] He believed that his previous meetings with Haftar in earlier months had been bringing genuine progress to a political solution. He stated that "When we hosted the UN Secretary General in Tripoli, we were surprised to hear about Haftar's military mobilization after the progress of the political solution in the country." Sarraj also stated that the government will defend the capital.[304] On 17 April, the GNA Presidential Council stated their categorical refusal of any dialogue that involves the participation of LNA Field Marshal Khalifa Haftar.[305]

Colonel Mohamed Gnounou, spokesman of the GNA army since 6 April, announced that the Libyan Army under the Presidential Council was advancing on Haftar's forces to defeat the coup. He also said that "This attack is a surprising one that destroyed the Libyans' hopes for democracy as all of them were preparing for the upcoming national conference in Ghadames."[111]

On 7 April, the deputy chief of the Libyan Presidential Council, Ali Faraj Qatrani, defected to the LNA, resigned from his position within the GNA, and stated that GNA head Fayez al-Sarraj was "controlled by militias". He expressed support for the LNA offensive on Tripoli, stating that it would rid the city of "terrorists and criminal gangs".[306][307]

The Libyan Popular National Movement, which is considered an illegal group by the GNA, declared in a press statement that they support the army's move to end the "militia rule in Tripoli" and salute the sacrifices of the sons of the Libyan Armed Forces.[308]

On 16 April, The advisory council of the Al-Barghata tribe announced its support of the LNA offensive and rejected any foreign interference in Libyan affairs.[309]

Street protests[edit source | edit]

On Friday 12 April, two thousand people protested on the streets of Tripoli and Misrata opposing the LNA military attack on Tripoli. Protestors objected against what they claimed was backing for the attack by France, the United Arab Emirates, and Saudi Arabia, with Misrata protestors burning a French flag.[310][84] The following Friday on 19 April 2000 people protested in Martyrs' Square, Tripoli, protesting both against Haftar and against foreign power support for Haftar, in particular against that of France.[311][312] Some of 19 April protestors wore reflective vests that Agence France Presse associated with the yellow vests movement. One of these carried a poster stating, "Surprised by the French response to the attack on Tripoli" ("Surpris par la conduite française face à l'attaque de Tripoli").[312] Protests in Martyrs' Square continued on 26 April, the third Friday in a row.[313]

Street protests against Haftar and the LNA continued in Tripoli and Misrata on 3 May.[314] Tripoli protestors directly criticised what they claimed was French support for Haftar and the LNA, with some carrying posters showing French president Emmanuel Macron crossed out in red. Several protestors wore yellow vests to symbolise their opposition to French authorities.[315]

Protests in Martyrs' Square were again held on 27 September, protesting against the attack on Tripoli and against foreign intervention by France, the UAE, Saudi Arabia and Egypt,[316] and again on 18 October.[317] Participants in 18 October protest condemned the LNA bombing of the al-Furnaj area that killed three children, called for Haftar to be held accountable internationally, and called for the GNA to boycott the Berlin conference, planned as the second step of the Salamé three-point peace plan, until the LNA stopped its attack.[317]

Municipal elections[edit source | edit]

The head of UNSMIL, Ghassan Salamé, complimented Libyan citizens and the Libyan Central Commission of Municipal Council Elections for holding local elections on 20 April in Brak al-Shati, Edri al-Shati, al-Rahibat, Ubari, al-Garda al-Shati, al-Shwairif and Zaltan despite the intense military conflict taking place.[318] Elections continued in Sabha on 27 April but were blocked by the LNA in Sabratha and Sorman.[319]

International[edit source | edit]

United Nations Secretary General Antonio Guterres stated on Twitter that he hoped for confrontation around Tripoli to be avoided and that the UN was committed to facilitating a political solution. On 5 April, the UN Security Council called on Haftar to stop all movements of his forces.[320]

On 4 April, the United States, United Kingdom, United Arab Emirates, France, and Italy in a joint statement condemned the offensive.[321] On 6 April the G7 countries stated there was no military solution to Libya's power struggle and urged Haftar to halt the advance on Tripoli.[322]

On 5 April, Egypt expressed its deep concern over the conflict in Tripoli and urged all sides to avoid escalation. Egypt also announced its commitment to UN efforts to find a political solution to the Libyan Crisis adding that a political solution is the only option.[323] On 9 April, Egypt expressed support for the Libyan National Army and its push to dismantle all remaining militias, and also cautioned against foreign intervention in the conflict.[324] On 14 April, President of Egypt, Abdel Fattah el-Sisi, met with LNA Field Marshal Khalifa Haftar in Cairo[10][11] and announced his support for the LNA's counterterrorism efforts, stating that "the fight toward terrorism"..."allows the establishment of a stable and sovereign civil state, and will start the reconstruction of Libya in various fields."[325]

On the same day, Russia called on all sides to come to an agreement.[326] The UN stated that the planned Libyan national conference to organise elections would go ahead regardless of the offensive, in Ghadamis on 14–16 April 2019.[327]

On 7 April, the United States withdrew an unspecified contingent of United States Africa Command forces from Libya.[328][329] India evacuated 15 Central Reserve Police Force peacekeepers to Tunisia.[330][329] The UN called for a two-hour ceasefire to evacuate wounded soldiers and civilians.[115][2] Meanwhile, Russia vetoed a UN Security Council resolution that would have called on the LNA to end their advance on Tripoli, stating that any such resolution should apply to all parties and not just the LNA in particular.[331][332]

On 9 April, UNSMIL stated that the Libyan National Conference, an upcoming peace conference in Ghadames, which would have attempted to create a roadmap to new elections, was postponed due to the fighting.[333] The conference was previously scheduled for 14–16 April.[334]

Tunisia increased security on its border with Libya since the start of the offensive.[335] On 10 April, Tunisia fully closed the Ras Ajdir border crossing with Libya.[336]

On 19 April, the White House announced that the U.S. President had spoken with Khalifa Haftar on Monday, 15 April, stating that Donald Trump "recognized Field Marshal Haftar's significant role in fighting terrorism and securing Libya's oil resources."[337]

In a joint statement released on July 16, 2019, France, Britain, Egypt, the United Arab Emirates, United States and Italy on 16 July called for an immediate end of hostilities around Tripoli and warned of attempts by "terrorist groups" to take advantage of the political void in Libya.[338]

On 2 January 2020, the Turkish Grand National Assembly voted 325–184 to send troops to help the GNA in Libya.[339]

See also[edit source | edit]

Notes[edit source | edit]

  1. On May 2020, GNA captured Al-Watiya Air Base and seized the remains of 2 Mirage F1 and 1 Su-22, but none of them were operational and mostly were used to make spare parts.[41]

References[edit source | edit]

  1. 1.0 1.1 1.2 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  2. 2.0 2.1 2.2 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  3. 3.0 3.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  4. 4.0 4.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  5. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  6. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  7. 7.0 7.1 7.2 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  8. 8.0 8.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  9. 9.0 9.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  10. 10.0 10.1 10.2 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  11. 11.0 11.1 11.2 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  12. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  13. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  14. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  15. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  16. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  17. 17.0 17.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  18. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  19. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  20. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  21. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  22. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  23. 23.0 23.1 23.2 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  24. 24.0 24.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  25. 25.0 25.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  26. 26.0 26.1 26.2 26.3 26.4 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  27. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  28. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  29. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  30. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  31. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  32. Libya's PC denies negotiations with Haftar's forces, demands UN fact-finding mission. Libya Observer. Published 21 April 2019.
  33. Violent Standoff in Tripoli; Civilians Displaced, Suffering. Voice of America, 2 May 2019.
  34. 34.0 34.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  35. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  36. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  37. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  38. 38.0 38.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  39. https://www.syriahr.com/%d8%a7%d9%84%d9%85%d8%b1%d8%aa%d8%b2%d9%82%d8%a9-%d8%a7%d9%84%d8%b3%d9%88%d8%b1%d9%8a%d9%88%d9%86-%d9%81%d9%8a-%d9%84%d9%8a%d8%a8%d9%8a%d8%a7-%d9%85%d9%86-%d8%a7%d9%84%d8%a5%d8%b0%d8%b9%d8%a7%d9%86/
  40. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  41. 41.0 41.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  42. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  43. Latest Updates on Libya, 25 May 2020
  44. Turkish fighters captured a Mi-35 combat helicopter
  45. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  46. 46.0 46.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  47. 47.0 47.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  48. A small price to pay for Tripoli Between 10 and 35 Russian mercenaries have been killed in the Libyan Civil War. We identified several of them.
  49. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  50. https://www.syriahr.com/en/?p=166414
  51. 3 Mirage F1,[1][2][3], 5 L-39,[4][5][6][7][8], 1 Il-78 [9] 1 helicopter,[10] 16 Bayraktars, 1 Harop [11]
  52. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  53. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  54. LNA kills 16 Turkish military personnel including 3 commanders
    Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  55. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  56. 56.0 56.1 56.2 56.3 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
    ONE YEAR OF DESTRUCTIVE WAR IN LIBYA, UNSMIL RENEWS CALLS FOR IMMEDIATE CESSATION OF HOSTILITIES AND UNITY TO COMBAT COVID-19
  57. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  58. 58.0 58.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  59. 59.0 59.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  60. 60.0 60.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  61. 61.0 61.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  62. 62.0 62.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  63. 63.0 63.1 63.2 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  64. 64.0 64.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  65. 65.0 65.1 65.2 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  66. 66.0 66.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  67. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  68. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  69. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  70. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  71. 71.0 71.1 GNA head accuses Haftar of 'betrayal', vows to end Tripoli push. Al Jazeera. Published 7 April 2019.
  72. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  73. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  74. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  75. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  76. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  77. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  78. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  79. PC President forms joint military operations room as war rocks Tripoli yet again. Libya Observer. Published 6 April 2019. Retrieved 30 April 2019.
  80. 80.0 80.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  81. 81.0 81.1 81.2 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  82. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  83. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  84. 84.0 84.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  85. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  86. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  87. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  88. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  89. 89.0 89.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  90. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  91. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  92. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  93. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  94. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  95. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  96. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  97. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  98. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  99. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  100. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  101. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  102. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  103. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  104. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  105. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  106. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  107. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  108. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  109. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  110. Libya's GNA forces announce 'counteroffensive' to defend Tripoli. Al Jazeera. Published 7 April 2019.
  111. 111.0 111.1 Libyan Army launches "Volcano of Rage" military operation to defeat Haftar's coup forces. The Libya Observer. Published 7 April 2019.
  112. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  113. Yeranian, Edward (7 April 2019). UN Appeals for Humanitarian Truce in Libya. Voice of America.
  114. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  115. 115.0 115.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  116. Patrick Wintour and Chris Steven (7 April 2019). US forces evacuated from Libya as Haftar seeks military control. The Guardian.
  117. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  118. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  119. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  120. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  121. 121.0 121.1 121.2 121.3 121.4 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  122. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  123. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  124. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  125. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  126. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  127. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  128. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  129. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  130. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  131. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  132. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  133. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  134. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  135. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  136. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  137. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  138. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  139. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  140. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  141. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  142. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  143. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  144. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  145. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  146. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  147. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  148. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  149. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  150. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  151. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  152. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  153. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  154. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  155. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  156. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  157. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  158. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  159. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  160. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  161. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  162. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  163. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  164. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  165. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  166. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  167. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  168. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  169. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  170. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  171. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  172. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  173. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  174. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  175. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  176. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  177. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  178. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  179. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  180. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  181. 181.0 181.1 Libyan Official Says 2 Killed, 5 Wounded in Tripoli Shelling, Associated Press (April 16, 2020).
  182. 182.0 182.1 182.2 182.3 182.4 182.5 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  183. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  184. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  185. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  186. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  187. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  188. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  189. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  190. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  191. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  192. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  193. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  194. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  195. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  196. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  197. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  198. [12][dead link]
  199. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  200. 200.0 200.1 200.2 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  201. 201.0 201.1 201.2 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  202. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  203. 203.0 203.1 203.2 203.3 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  204. 204.0 204.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  205. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  206. 206.0 206.1 206.2 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  207. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  208. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  209. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  210. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  211. 211.0 211.1 211.2 211.3 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  212. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  213. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  214. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  215. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  216. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  217. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  218. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  219. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  220. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  221. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  222. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  223. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  224. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  225. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  226. 226.0 226.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  227. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  228. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  229. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  230. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  231. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  232. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  233. [13] Turkey condemns airstrikes on military school in Libya
  234. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  235. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  236. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  237. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  238. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  239. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  240. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  241. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  242. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  243. 243.0 243.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  244. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  245. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  246. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  247. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  248. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  249. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  250. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  251. 251.0 251.1 251.2 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  252. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  253. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  254. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  255. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  256. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  257. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  258. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  259. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  260. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  261. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  262. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  263. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  264. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  265. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  266. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  267. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  268. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  269. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  270. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  271. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  272. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  273. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  274. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  275. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  276. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  277. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  278. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  279. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  280. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  281. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  282. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  283. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  284. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  285. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  286. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  287. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  288. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  289. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  290. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  291. 291.0 291.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  292. 292.0 292.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  293. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  294. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  295. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  296. 296.0 296.1 296.2 296.3 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  297. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  298. 298.0 298.1 298.2 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  299. 299.0 299.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  300. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  301. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  302. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  303. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  304. Libya's al-Sarraj calls Haftar backstabber, demands countries supporting him to stop it. The Libya Observer. Published 7 April 2019.
  305. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  306. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  307. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  308. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  309. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  310. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  311. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  312. 312.0 312.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  313. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  314. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  315. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  316. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  317. 317.0 317.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  318. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  319. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  320. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  321. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  322. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  323. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  324. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  325. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  326. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  327. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  328. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  329. 329.0 329.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  330. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  331. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  332. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  333. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  334. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  335. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  336. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  337. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  338. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  339. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).

External links[edit source | edit]

Template:Tripoli