Module:OpeninframapCountryInfo

From OpenStreetMap Wiki
Jump to navigation Jump to search
-- This module contains data from Openinfra about countries in the world
-- It is used in Power Networks country pages.
-- !!! WORK IN PROGRESS
-- {{OpeninframapCountryInfo|POWER_TAG_VALUE|COUNTRY_CODE_2|OUTPUT}}
-- POWER_TAG_VALUE : 'line' or 'plant'
-- Available functions : line, plant, ref, lastupdate
--
--
-- [lastupdate] Get last update time of the data >> {{#invoke:WikidataCountryInfo|lastupdate}} 
--
-- The following data section can be easily updated with the output of this python script : 
-- https://github.com/ben10dynartio/apps/blob/main/osmwiki/openinframap_countries_info.py

 -- begin data section
power_line_voltage_range = {"< 10 kV", "10 kV - 25 kV", "25 kV - 52 kV", "52 kV - 132 kV", "132 kV - 220 kV", "220 kV - 330 kV", "330 kV - 550 kV", "> 550 kV", "No voltage tagged"}

power_line_range_length_km = {AF = {"7", "0", "0", "1,002", "0", "1,300", "338", "0", "626"}, AL = {"2", "0", "57", "1,109", "0", "846", "251", "0", "479"}, DZ = {"73", "219", "267", "10,494", "23", "15,335", "5,921", "0", "20,445"}, AD = {"0", "0", "0", "4", "21", "0", "0", "0", "24"}, AO = {"0", "41", "0", "1,026", "168", "2,588", "2,126", "0", "621"}, AG = {"0", "0", "0", "0", "0", "0", "0", "0", "47"}, AR = {"35", "648", "4,474", "764", "34,148", "2,621", "16,089", "0", "3,385"}, AM = {"0", "7", "341", "1,090", "0", "1,351", "201", "0", "2,181"}, AU = {"977", "27,032", "10,295", "25,085", "24,555", "15,661", "9,523", "0", "7,973"}, AT = {"1,631", "8,002", "5,310", "8,497", "0", "1,686", "1,344", "0", "8,319"}, AZ = {"0", "0", "179", "2,504", "80", "1,160", "2,542", "0", "3,180"}, BH = {"0", "0", "0", "0", "0", "19", "0", "0", "13"}, BD = {"2", "0", "2", "0", "4,560", "2,518", "1,759", "0", "281"}, BB = {"0", "0", "0", "0", "0", "0", "0", "0", "0"}, BY = {"250", "15,329", "11,233", "15,655", "0", "1,674", "4,883", "0", "7,045"}, BE = {"81", "219", "821", "2,740", "2,155", "599", "933", "0", "1,475"}, BZ = {"11", "18", "87", "393", "0", "0", "0", "0", "128"}, BJ = {"0", "1", "0", "0", "1,065", "0", "0", "0", "40"}, BT = {"0", "0", "0", "27", "41", "218", "273", "0", "466"}, BO = {"0", "0", "19", "3,625", "46", "3,671", "235", "0", "830"}, BA = {"0", "14", "31", "1,064", "0", "1,382", "653", "0", "2,800"}, BW = {"0", "0", "0", "402", "1,810", "1,544", "849", "0", "656"}, BR = {"54", "630", "2,179", "65,744", "73,164", "61,421", "83,191", "13,723", "4,706"}, BN = {"0", "0", "0", "241", "54", "67", "0", "0", "0"}, BG = {"15", "936", "6", "5,671", "0", "2,291", "2,518", "0", "8,011"}, BF = {"27", "356", "0", "423", "314", "339", "0", "0", "443"}, BI = {"0", "0", "0", "169", "0", "78", "0", "0", "1"}, KH = {"0", "0", "0", "651", "0", "1,810", "0", "0", "422"}, CM = {"1", "0", "1", "942", "0", "1,070", "0", "0", "255"}, CA = {"5,788", "13,204", "16,149", "29,585", "32,270", "45,311", "18,534", "12,786", "18,134"}, CV = {"0", "7", "0", "39", "0", "0", "0", "0", "0"}, CF = {"0", "0", "0", "84", "0", "0", "0", "0", "55"}, TD = {"0", "22", "0", "45", "0", "0", "0", "0", "142"}, CL = {"8", "1,511", "325", "6,725", "727", "12,097", "2,921", "0", "3,510"}, CO = {"0", "82", "1", "4,682", "0", "8,763", "3,849", "0", "1,832"}, KM = {"0", "0", "0", "0", "0", "0", "0", "0", "0"}, CR = {"43", "0", "85", "0", "390", "1,750", "0", "0", "74"}, HR = {"3", "618", "1,950", "4,439", "0", "904", "752", "0", "1,689"}, CU = {"0", "0", "0", "3,751", "0", "2,494", "0", "0", "207"}, CY = {"0", "0", "0", "212", "663", "0", "0", "0", "249"}, CZ = {"249", "39,296", "7,476", "8,173", "0", "1,137", "3,120", "0", "1,161"}, CD = {"10", "12", "64", "1,748", "183", "1,908", "3,679", "0", "500"}, DK = {"2", "210", "1,072", "4,505", "3,225", "660", "1,603", "0", "107"}, DJ = {"0", "0", "0", "72", "0", "68", "0", "0", "53"}, DM = {"0", "0", "0", "0", "0", "0", "0", "0", "0"}, DO = {"0", "0", "0", "52", "1,903", "142", "217", "0", "392"}, EC = {"1", "81", "73", "2,859", "2,187", "2,269", "452", "0", "426"}, EG = {"0", "0", "0", "9,136", "1,260", "11,293", "5,931", "0", "2,032"}, SV = {"0", "0", "0", "958", "0", "254", "0", "0", "25"}, GQ = {"0", "0", "0", "444", "0", "457", "0", "0", "247"}, ER = {"0", "0", "0", "44", "55", "0", "0", "0", "20"}, EE = {"171", "1,277", "1,890", "2,581", "8", "0", "1,750", "0", "1,315"}, SZ = {"0", "0", "0", "169", "324", "0", "86", "0", "9"}, ET = {"0", "0", "31", "677", "4,999", "6,107", "3,345", "0", "928"}, FM = {"0", "9", "0", "0", "0", "0", "0", "0", "0"}, FJ = {"0", "5", "136", "83", "144", "0", "0", "0", "96"}, FI = {"31", "1,485", "717", "15,788", "16", "1,083", "5,554", "0", "26,446"}, FR = {"3,956", "123,164", "415", "49,375", "965", "23,643", "14,188", "0", "8,046"}, GA = {"0", "0", "0", "212", "0", "178", "0", "0", "75"}, GE = {"0", "11", "335", "1,419", "6", "1,572", "966", "0", "2,210"}, DE = {"929", "23,807", "1,563", "45,512", "883", "6,164", "13,500", "159", "50,463"}, GH = {"0", "10", "0", "0", "3,940", "68", "1,164", "0", "452"}, GR = {"9", "94", "0", "53", "9,049", "2", "3,362", "0", "426"}, GD = {"0", "0", "0", "0", "0", "0", "0", "0", "0"}, GT = {"0", "0", "0", "631", "110", "1,688", "0", "0", "141"}, GN = {"0", "0", "1", "410", "0", "584", "0", "0", "145"}, GW = {"0", "0", "0", "0", "0", "146", "0", "0", "0"}, GY = {"0", "0", "0", "0", "0", "0", "0", "0", "5"}, HT = {"0", "0", "0", "102", "0", "0", "0", "0", "83"}, HN = {"0", "0", "0", "17", "833", "830", "0", "0", "50"}, HU = {"413", "30,279", "499", "13", "6,633", "1,026", "2,440", "0", "5,715"}, IS = {"0", "9", "63", "991", "1,324", "1,101", "0", "0", "4,309"}, IN = {"4", "146", "665", "59,913", "109,690", "112,873", "121,493", "43,676", "10,340"}, ID = {"0", "351", "0", "3,396", "25,710", "2,924", "4,794", "0", "1,516"}, IR = {"6", "153", "4", "18,773", "13,331", "19,307", "18,746", "0", "11,816"}, IQ = {"2", "0", "670", "49", "9,830", "0", "5,452", "0", "3,994"}, IE = {"383", "13,156", "6,293", "5,121", "17", "1,823", "469", "0", "14,145"}, IL = {"0", "0", "10", "4", "2,747", "0", "680", "0", "2,338"}, IT = {"632", "4,360", "191", "2,677", "41,587", "9,063", "10,364", "0", "28,432"}, CI = {"1", "7", "0", "3,309", "0", "3,022", "42", "0", "4,614"}, JM = {"0", "0", "0", "207", "360", "0", "0", "0", "54"}, JP = {"92", "156", "790", "28,017", "13,091", "11,179", "8,399", "423", "12,217"}, JO = {"0", "0", "0", "0", "1,834", "0", "800", "0", "136"}, KZ = {"21", "182", "4,075", "22,859", "0", "21,595", "7,982", "0", "13,247"}, KE = {"4", "15", "424", "0", "2,491", "1,909", "1,801", "0", "593"}, NL = {"17", "261", "1,013", "1,950", "2,669", "783", "1,371", "0", "968"}, KI = {"0", "0", "0", "0", "0", "0", "0", "0", "0"}, KW = {"0", "0", "23", "31", "1,805", "937", "618", "0", "1,532"}, KG = {"0", "0", "42", "1,033", "0", "1,578", "984", "0", "2,644"}, LA = {"0", "0", "0", "4,196", "0", "2,185", "342", "0", "509"}, LV = {"68", "21,304", "0", "2,904", "0", "0", "1,629", "0", "834"}, LB = {"0", "0", "0", "270", "164", "368", "0", "0", "62"}, LS = {"10", "25", "558", "118", "487", "0", "0", "0", "314"}, LR = {"0", "0", "0", "51", "0", "446", "0", "0", "27"}, LY = {"146", "0", "304", "1,860", "997", "8,448", "3,933", "0", "11,422"}, LI = {"0", "0", "0", "0", "0", "0", "0", "0", "5"}, LT = {"18", "328", "3,466", "4,242", "0", "12", "1,712", "0", "1,389"}, LU = {"0", "17", "0", "400", "10", "137", "0", "0", "892"}, MG = {"0", "0", "0", "84", "151", "0", "0", "0", "59"}, MW = {"0", "7", "2", "962", "1,141", "0", "193", "0", "64"}, MY = {"0", "4", "131", "18", "6,902", "6,837", "1,079", "0", "516"}, MV = {"0", "0", "0", "0", "17", "8", "0", "0", "4"}, ML = {"0", "0", "0", "118", "379", "772", "0", "0", "497"}, MT = {"0", "1", "55", "0", "13", "0", "0", "0", "0"}, MH = {"0", "0", "0", "0", "0", "0", "0", "0", "0"}, MR = {"0", "0", "0", "191", "0", "597", "0", "0", "1,351"}, MU = {"0", "0", "0", "150", "0", "0", "0", "0", "5"}, MX = {"0", "24", "1", "39,673", "1,194", "23,134", "20,798", "0", "2,269"}, MD = {"246", "8,654", "1,955", "3,250", "0", "0", "634", "0", "900"}, MC = {"0", "0", "0", "0", "0", "0", "0", "0", "0"}, MN = {"0", "63", "2,380", "5,160", "0", "2,012", "0", "0", "7,195"}, ME = {"0", "0", "123", "637", "0", "106", "216", "0", "933"}, MA = {"2", "9,192", "1", "10,734", "102", "8,851", "1,988", "0", "6,279"}, MZ = {"0", "0", "0", "3,750", "11", "2,292", "2,034", "0", "854"}, MM = {"2", "2,130", "424", "2,815", "2,242", "5,833", "439", "0", "1,023"}, NA = {"14", "7,559", "8,501", "3,473", "2,310", "2,473", "2,876", "0", "702"}, NR = {"0", "0", "0", "0", "0", "0", "0", "0", "1"}, NP = {"2", "11", "99", "152", "2,289", "570", "367", "0", "260"}, NZ = {"1,774", "55,485", "8,027", "7,039", "0", "6,044", "704", "0", "6,765"}, NI = {"0", "0", "0", "114", "1,599", "653", "0", "0", "120"}, NE = {"0", "0", "0", "95", "646", "0", "0", "0", "631"}, NG = {"0", "20", "18", "0", "6,092", "0", "6,904", "0", "831"}, KP = {"0", "0", "0", "831", "3", "1,439", "0", "0", "4,127"}, MK = {"0", "0", "0", "1,401", "0", "65", "423", "0", "167"}, NO = {"424", "14,910", "1,645", "8,922", "11,081", "4,410", "5,168", "0", "11,903"}, OM = {"0", "0", "0", "0", "6,751", "941", "1,626", "0", "1,317"}, PK = {"3", "19", "4", "2,429", "14,091", "6,275", "7,172", "886", "10,343"}, PW = {"0", "0", "0", "0", "0", "0", "0", "0", "0"}, PA = {"0", "0", "0", "291", "0", "1,714", "0", "0", "137"}, PG = {"0", "26", "0", "312", "412", "0", "0", "0", "201"}, PY = {"5", "25", "1", "276", "0", "3,459", "765", "0", "313"}, CN = {"16", "579", "6,750", "220,282", "83", "297,169", "214,738", "68,163", "231,182"}, PE = {"0", "25", "98", "600", "2,942", "9,201", "2,881", "0", "5,843"}, PH = {"103", "244", "306", "3,671", "4,446", "4,586", "1,705", "0", "909"}, PL = {"3,275", "58,879", "1,104", "30,321", "1", "5,970", "6,244", "0", "8,901"}, PT = {"24", "18,010", "16,002", "9,447", "2,010", "2,915", "2,904", "0", "796"}, QA = {"0", "0", "0", "81", "64", "544", "329", "0", "871"}, CG = {"0", "0", "0", "567", "0", "1,030", "0", "0", "55"}, RO = {"8", "107", "48", "15,965", "0", "3,567", "4,587", "0", "3,666"}, RU = {"1,435", "25,090", "114,111", "183,836", "2,241", "104,469", "61,091", "2,840", "119,613"}, RW = {"0", "0", "17", "662", "0", "405", "0", "0", "135"}, KN = {"0", "0", "0", "0", "0", "0", "0", "0", "0"}, LC = {"0", "0", "0", "0", "0", "0", "0", "0", "0"}, VC = {"0", "0", "0", "0", "0", "0", "0", "0", "0"}, WS = {"0", "0", "0", "0", "0", "0", "0", "0", "3"}, SM = {"0", "0", "0", "0", "0", "0", "0", "0", "12"}, SA = {"0", "0", "1,177", "6,133", "12,387", "2,762", "24,209", "0", "4,797"}, SN = {"0", "0", "0", "208", "0", "1,569", "0", "0", "477"}, RS = {"1", "72", "449", "5,091", "0", "1,470", "1,610", "0", "2,991"}, SC = {"0", "0", "0", "0", "0", "0", "0", "0", "4"}, SL = {"0", "0", "0", "0", "218", "375", "0", "0", "2"}, SG = {"0", "0", "0", "0", "0", "3", "0", "0", "13"}, SK = {"145", "13,546", "0", "4,539", "0", "520", "1,678", "0", "5,900"}, SI = {"139", "1,850", "65", "1,837", "0", "261", "525", "0", "1,573"}, SB = {"0", "0", "0", "0", "0", "0", "0", "0", "0"}, SO = {"0", "0", "0", "0", "0", "0", "0", "0", "1"}, ZA = {"8", "186", "291", "16,336", "26,622", "8,766", "21,049", "2,799", "7,042"}, KR = {"0", "115", "0", "0", "9,367", "108", "4,557", "556", "394"}, SS = {"0", "0", "0", "0", "0", "0", "0", "0", "56"}, ES = {"123", "10,495", "12,282", "15,603", "16,760", "15,792", "14,941", "0", "31,674"}, LK = {"16", "224", "373", "0", "2,307", "1,049", "0", "0", "302"}, PS = {"0", "0", "0", "0", "121", "0", "0", "0", "56"}, SD = {"0", "0", "0", "1,005", "0", "4,062", "976", "0", "381"}, SR = {"0", "0", "0", "0", "133", "0", "0", "0", "0"}, SE = {"6", "1,055", "4,476", "8,848", "7,019", "4,009", "10,840", "0", "17,258"}, CH = {"73", "510", "296", "2,345", "1,670", "2,355", "1,411", "0", "4,820"}, SY = {"22", "0", "0", "3,164", "75", "5,622", "1,710", "0", "14,359"}, ST = {"0", "0", "103", "0", "0", "0", "0", "0", "7"}, TW = {"0", "0", "0", "1,277", "2,214", "0", "2,220", "0", "1,805"}, TJ = {"0", "0", "67", "727", "4", "1,554", "793", "0", "2,082"}, TZ = {"2", "11", "74", "273", "1,619", "4,314", "674", "0", "592"}, TH = {"0", "26", "0", "9,785", "0", "7,931", "4,213", "0", "106"}, BS = {"0", "0", "0", "0", "29", "0", "0", "0", "96"}, GM = {"0", "0", "0", "0", "0", "143", "0", "0", "4"}, TL = {"0", "0", "0", "0", "547", "0", "0", "0", "4"}, TG = {"0", "0", "0", "0", "401", "0", "41", "0", "288"}, TO = {"0", "0", "0", "0", "0", "0", "0", "0", "3"}, TT = {"0", "0", "0", "29", "145", "50", "0", "0", "50"}, TN = {"5", "21", "220", "171", "2,605", "2,316", "210", "0", "375"}, TR = {"15", "11", "3,437", "207", "32,992", "0", "23,719", "3", "9,686"}, TM = {"0", "0", "0", "3,336", "0", "5,441", "769", "0", "4,945"}, TV = {"0", "0", "0", "0", "0", "0", "0", "0", "0"}, UG = {"29", "5", "1", "29", "1,509", "618", "302", "0", "1,030"}, UA = {"224", "3,467", "63,977", "31,290", "8,152", "3,524", "13,117", "3,828", "3,151"}, AE = {"0", "0", "210", "0", "845", "1,802", "3,443", "0", "4,381"}, GB = {"413", "40,852", "30,352", "6,515", "14,124", "5,772", "7,408", "0", "66,459"}, US = {"18,459", "52,505", "60,237", "333,164", "170,544", "123,369", "142,774", "3,924", "127,040"}, UY = {"0", "0", "188", "490", "3,704", "0", "1,224", "0", "1,823"}, UZ = {"0", "0", "100", "3,034", "0", "8,281", "2,095", "0", "8,961"}, VU = {"0", "0", "0", "0", "0", "0", "0", "0", "0"}, VA = {"0", "0", "0", "0", "0", "0", "0", "0", "0"}, VE = {"6", "18", "10", "7,687", "37", "5,020", "4,818", "2,250", "2,369"}, VN = {"1", "43", "13", "9,268", "0", "9,973", "8,634", "0", "2,111"}, YE = {"0", "0", "0", "0", "1,286", "0", "195", "0", "700"}, ZM = {"0", "8", "249", "4,831", "1,641", "632", "4,555", "0", "1,488"}, ZW = {"0", "0", "57", "442", "2,590", "0", "3,755", "0", "351"}, }

power_line_total_length_km = {AF = "3,276", AL = "2,747", DZ = "52,780", AD = "50", AO = "6,572", AG = "47", AR = "62,167", AM = "5,173", AU = "121,104", AT = "34,791", AZ = "9,647", BH = "32", BD = "9,124", BB = "0", BY = "56,072", BE = "9,025", BZ = "639", BJ = "1,108", BT = "1,027", BO = "8,429", BA = "5,946", BW = "5,264", BR = "304,816", BN = "363", BG = "19,451", BF = "1,904", BI = "249", KH = "2,884", CM = "2,272", CA = "191,766", CV = "47", CF = "140", TD = "210", CL = "27,826", CO = "19,212", KM = "0", CR = "2,343", HR = "10,357", CU = "6,454", CY = "1,124", CZ = "60,615", CD = "8,108", DK = "11,386", DJ = "194", DM = "0", DO = "2,707", EC = "8,350", EG = "29,653", SV = "1,239", GQ = "1,149", ER = "120", EE = "8,995", SZ = "589", ET = "16,089", FM = "9", FJ = "467", FI = "51,123", FR = "223,754", GA = "467", GE = "6,523", DE = "142,984", GH = "5,636", GR = "12,998", GD = "0", GT = "2,571", GN = "1,141", GW = "146", GY = "5", HT = "185", HN = "1,733", HU = "47,023", IS = "7,799", IN = "458,804", ID = "38,695", IR = "82,139", IQ = "20,001", IE = "41,411", IL = "5,782", IT = "97,309", CI = "10,997", JM = "623", JP = "74,369", JO = "2,772", KZ = "69,964", KE = "7,239", NL = "9,035", KI = "0", KW = "4,948", KG = "6,282", LA = "7,234", LV = "26,741", LB = "866", LS = "1,515", LR = "525", LY = "27,113", LI = "5", LT = "11,170", LU = "1,458", MG = "295", MW = "2,371", MY = "15,490", MV = "31", ML = "1,767", MT = "71", MH = "0", MR = "2,140", MU = "156", MX = "87,097", MD = "15,641", MC = "0", MN = "16,811", ME = "2,018", MA = "37,152", MZ = "8,943", MM = "14,913", NA = "27,911", NR = "1", NP = "3,753", NZ = "85,840", NI = "2,487", NE = "1,372", NG = "13,865", KP = "6,402", MK = "2,057", NO = "58,466", OM = "10,637", PK = "41,227", PW = "0", PA = "2,143", PG = "953", PY = "4,846", CN = "1,038,966", PE = "21,594", PH = "15,974", PL = "114,698", PT = "52,111", QA = "1,892", CG = "1,652", RO = "27,950", RU = "614,730", RW = "1,221", KN = "0", LC = "0", VC = "0", WS = "3", SM = "12", SA = "51,468", SN = "2,255", RS = "11,687", SC = "4", SL = "597", SG = "17", SK = "26,331", SI = "6,253", SB = "0", SO = "1", ZA = "83,103", KR = "15,099", SS = "57", ES = "117,674", LK = "4,274", PS = "178", SD = "6,426", SR = "133", SE = "53,514", CH = "13,482", SY = "24,954", ST = "111", TW = "7,518", TJ = "5,229", TZ = "7,562", TH = "22,064", BS = "126", GM = "148", TL = "552", TG = "731", TO = "3", TT = "277", TN = "5,926", TR = "70,074", TM = "14,493", TV = "0", UG = "3,527", UA = "130,735", AE = "10,682", GB = "171,898", US = "1,032,019", UY = "7,431", UZ = "22,474", VU = "0", VA = "0", VE = "22,219", VN = "30,045", YE = "2,182", ZM = "13,407", ZW = "7,198"}

power_plant_count = {AF = "75", AL = "48", DZ = "134", AD = "3", AO = "73", AG = "5", AR = "354", AM = "82", AU = "759", AT = "1382", AZ = "80", BH = "9", BD = "180", BB = "36", BY = "657", BE = "223", BZ = "8", BJ = "5", BT = "5", BO = "59", BA = "110", BW = "58", BR = "2357", BN = "13", BG = "554", BF = "24", BI = "16", KH = "36", CM = "31", CA = "1179", CV = "58", CF = "8", TD = "9", CL = "937", CO = "221", KM = "3", CR = "55", HR = "174", CU = "201", CY = "487", CZ = "607", CD = "68", DK = "569", DJ = "5", DM = "5", DO = "240", EC = "90", EG = "129", SV = "71", GQ = "8", ER = "10", EE = "901", SZ = "22", ET = "32", FM = "3", FJ = "17", FI = "448", FR = "4893", GA = "12", GE = "77", DE = "10152", GH = "33", GR = "6928", GD = "2", GT = "57", GN = "17", GW = "0", GY = "6", HT = "5", HN = "48", HU = "891", IS = "54", IN = "3101", ID = "572", IR = "275", IQ = "78", IE = "315", IL = "199", IT = "6410", CI = "16", JM = "20", JP = "14571", JO = "103", KZ = "237", KE = "79", NL = "1119", KI = "3", KW = "16", KG = "36", LA = "93", LV = "141", LB = "112", LS = "8", LR = "7", LY = "33", LI = "2", LT = "303", LU = "49", MG = "38", MW = "14", MY = "182", MV = "28", ML = "26", MT = "10", MH = "1", MR = "31", MU = "30", MX = "424", MD = "51", MC = "0", MN = "71", ME = "10", MA = "119", MZ = "26", MM = "104", NA = "112", NR = "3", NP = "73", NZ = "138", NI = "35", NE = "16", NG = "96", KP = "65", MK = "35", NO = "1157", OM = "40", PK = "242", PW = "2", PA = "87", PG = "29", PY = "4", CN = "11285", PE = "127", PH = "224", PL = "3457", PT = "1444", QA = "18", CG = "6", RO = "371", RU = "3788", RW = "32", KN = "3", LC = "5", VC = "5", WS = "25", SM = "0", SA = "171", SN = "42", RS = "117", SC = "4", SL = "22", SG = "28", SK = "210", SI = "111", SB = "5", SO = "20", ZA = "849", KR = "3322", SS = "11", ES = "4278", LK = "66", PS = "67", SD = "90", SR = "9", SE = "1272", CH = "467", SY = "64", ST = "5", TW = "425", TJ = "42", TZ = "32", TH = "324", BS = "14", GM = "6", TL = "4", TG = "7", TO = "6", TT = "4", TN = "38", TR = "1513", TM = "41", TV = "2", UG = "41", UA = "1175", AE = "102", GB = "3357", US = "14532", UY = "75", UZ = "141", VU = "5", VA = "0", VE = "75", VN = "508", YE = "1660", ZM = "34", ZW = "47"}

power_plant_output_mw = {AF = "600", AL = "2,228", DZ = "25,431", AD = "45", AO = "7,981", AG = "3", AR = "36,650", AM = "4,835", AU = "75,958", AT = "21,934", AZ = "7,450", BH = "7,035", BD = "23,148", BB = "1", BY = "11,719", BE = "15,241", BZ = "62", BJ = "162", BT = "100", BO = "2,705", BA = "5,621", BW = "828", BR = "121,361", BN = "807", BG = "10,980", BF = "491", BI = "138", KH = "3,738", CM = "1,851", CA = "138,656", CV = "22", CF = "70", TD = "25", CL = "35,316", CO = "14,989", KM = "6", CR = "2,139", HR = "4,325", CU = "2,999", CY = "2,124", CZ = "15,457", CD = "3,168", DK = "12,831", DJ = "160", DM = "26", DO = "4,002", EC = "5,644", EG = "61,639", SV = "1,885", GQ = "274", ER = "132", EE = "4,078", SZ = "79", ET = "10,659", FM = "0", FJ = "202", FI = "267,604", FR = "137,009", GA = "291", GE = "2,708", DE = "127,662", GH = "5,043", GR = "14,201", GD = "0", GT = "2,705", GN = "1,055", GW = "0", GY = "146", HT = "51", HN = "2,006", HU = "7,923", IS = "2,888", IN = "331,539", ID = "72,692", IR = "78,439", IQ = "50,522", IE = "13,353", IL = "18,128", IT = "62,677", CI = "2,329", JM = "1,081", JP = "220,775", JO = "6,084", KZ = "19,813", KE = "2,688", NL = "38,524", KI = "0", KW = "19,983", KG = "4,099", LA = "11,643", LV = "2,799", LB = "2,302", LS = "102", LR = "170", LY = "11,903", LI = "18", LT = "4,669", LU = "1,450", MG = "378", MW = "534", MY = "37,482", MV = "0", ML = "818", MT = "307", MH = "0", MR = "574", MU = "489", MX = "91,157", MD = "2,929", MC = "0", MN = "2,128", ME = "977", MA = "11,410", MZ = "3,318", MM = "7,013", NA = "760", NR = "6", NP = "1,298", NZ = "10,265", NI = "1,317", NE = "289", NG = "16,280", KP = "1,638", MK = "1,678", NO = "40,901", OM = "14,375", PK = "48,260", PW = "0", PA = "3,421", PG = "402", PY = "3,310", CN = "1,651,033", PE = "11,988", PH = "26,067", PL = "45,833", PT = "27,443", QA = "12,729", CG = "762", RO = "16,982", RU = "247,880", RW = "279", KN = "2", LC = "87", VC = "37", WS = "33", SM = "0", SA = "87,959", SN = "1,418", RS = "8,023", SC = "11", SL = "231", SG = "11,916", SK = "6,593", SI = "2,985", SB = "0", SO = "7", ZA = "66,337", KR = "122,357", SS = "82", ES = "89,405", LK = "3,248", PS = "208", SD = "3,913", SR = "377", SE = "26,410", CH = "16,729", SY = "7,780", ST = "32", TW = "54,295", TJ = "9,434", TZ = "3,796", TH = "39,025", BS = "225", GM = "156", TL = "272", TG = "282", TO = "0", TT = "0", TN = "6,247", TR = "82,949", TM = "5,451", TV = "0", UG = "1,913", UA = "52,865", AE = "62,026", GB = "105,262", US = "1,260,393", UY = "3,910", UZ = "20,726", VU = "4", VA = "0", VE = "24,512", VN = "65,570", YE = "264", ZM = "3,896", ZW = "3,236"}

last_update = "2025-09-13"
-- end data section

local p = {}

function p.line(frame)
	local countrycode = frame.args[1]
	local output = frame.args[2]
	if output == "total_length_km" then
		return power_line_total_length_km[countrycode]
	elseif output == "table_length_km" then
		mystr = "{| class=\"wikitable\" \n |- \n ! Power Lines Voltage !! Length\n"
		mystr = mystr .. "|+ From [https://openinframap.org/stats/country/" .. countrycode .. " OpenInfraMap], last update " .. last_update
		for i = 1,9,1 do 
			mystr = mystr .. "\n|-\n|" .. power_line_voltage_range[i] .. "\n|align='right'|" .. power_line_range_length_km[countrycode][i] .. " km"
		end
		mystr = mystr .. "\n |- \n ! Total !! " .. power_line_total_length_km[countrycode] .. " km"
		mystr = mystr .. "\n|}"
		return mystr
	end
	return ""
end

function p.plant(frame)
	local countrycode = frame.args[1]
	local output = frame.args[2]
	if output == "total_output_mw" then
		return power_plant_output_mw[countrycode]
	elseif output == "total_count" then
		return power_plant_count[countrycode]
	end
	return ""
end

function p.lastupdate(frame)
	return last_update
end

function p.ref(frame)
	local countrycode = frame.args[1]
	return "https://openinframap.org/stats/country/" .. countrycode
end

return p