diff --git a/CHANGELOG.md b/CHANGELOG.md index 2b2c526..3bf000e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +## 1.0.0 (2024-11-02) + +- Fix: customElement bug on mobile browsers +- Fix: bugs on mobile browsers that caused so many parts of the codebase to be reimplemented +- Added: dropshadow option for the default and landscape chart heads + ## 0.0.2 (2024-10-26) - Fix: Typescript not resolving module error, and typos in the README doc. diff --git a/dist/browser/treeSpider.bundle.js b/dist/browser/treeSpider.bundle.js index 3f5d99c..3cd34da 100644 --- a/dist/browser/treeSpider.bundle.js +++ b/dist/browser/treeSpider.bundle.js @@ -20650,7 +20650,8 @@ var TreeSpider = (function () { zoomTransform: transform }); - class TSRootContainer extends HTMLDivElement { + class TSRootContainer extends HTMLElement { + align = "auto"; main_svg = null; tree_data = {}; static observeAttributes = ['backgroundPattern', 'backgroundSize', 'customBackground']; @@ -20792,15 +20793,16 @@ var TreeSpider = (function () { return backgrounds['spot']; } } - window.customElements.define("ts-root-container", TSRootContainer, { extends: 'div' }); + window.customElements.define("ts-root-container", TSRootContainer); - class TSElement extends HTMLDivElement { + class TSElement extends HTMLElement { + align = "auto"; constructor() { super(); } connectedCallback() { } } - window.customElements.define('ts-element', TSElement, { extends: 'div' }); + window.customElements.define('ts-element', TSElement); var e=[{name:"Aegean Airlines",iataCode:"A3"},{name:"Aeroflot",iataCode:"SU"},{name:"Aerolineas Argentinas",iataCode:"AR"},{name:"Aeromexico",iataCode:"AM"},{name:"Air Algerie",iataCode:"AH"},{name:"Air Arabia",iataCode:"G9"},{name:"Air Canada",iataCode:"AC"},{name:"Air China",iataCode:"CA"},{name:"Air Europa",iataCode:"UX"},{name:"Air France-KLM",iataCode:"AF"},{name:"Air India",iataCode:"AI"},{name:"Air Mauritius",iataCode:"MK"},{name:"Air New Zealand",iataCode:"NZ"},{name:"Air Niugini",iataCode:"PX"},{name:"Air Tahiti",iataCode:"VT"},{name:"Air Tahiti Nui",iataCode:"TN"},{name:"Air Transat",iataCode:"TS"},{name:"AirAsia X",iataCode:"D7"},{name:"AirAsia",iataCode:"AK"},{name:"Aircalin",iataCode:"SB"},{name:"Alaska Airlines",iataCode:"AS"},{name:"Alitalia",iataCode:"AZ"},{name:"All Nippon Airways",iataCode:"NH"},{name:"Allegiant Air",iataCode:"G4"},{name:"American Airlines",iataCode:"AA"},{name:"Asiana Airlines",iataCode:"OZ"},{name:"Avianca",iataCode:"AV"},{name:"Azul Linhas Aereas Brasileiras",iataCode:"AD"},{name:"Azur Air",iataCode:"ZF"},{name:"Beijing Capital Airlines",iataCode:"JD"},{name:"Boliviana de Aviacion",iataCode:"OB"},{name:"British Airways",iataCode:"BA"},{name:"Cathay Pacific",iataCode:"CX"},{name:"Cebu Pacific Air",iataCode:"5J"},{name:"China Airlines",iataCode:"CI"},{name:"China Eastern Airlines",iataCode:"MU"},{name:"China Southern Airlines",iataCode:"CZ"},{name:"Condor",iataCode:"DE"},{name:"Copa Airlines",iataCode:"CM"},{name:"Delta Air Lines",iataCode:"DL"},{name:"Easyfly",iataCode:"VE"},{name:"EasyJet",iataCode:"U2"},{name:"EcoJet",iataCode:"8J"},{name:"Egyptair",iataCode:"MS"},{name:"El Al",iataCode:"LY"},{name:"Emirates Airlines",iataCode:"EK"},{name:"Ethiopian Airlines",iataCode:"ET"},{name:"Etihad Airways",iataCode:"EY"},{name:"EVA Air",iataCode:"BR"},{name:"Fiji Airways",iataCode:"FJ"},{name:"Finnair",iataCode:"AY"},{name:"Flybondi",iataCode:"FO"},{name:"Flydubai",iataCode:"FZ"},{name:"FlySafair",iataCode:"FA"},{name:"Frontier Airlines",iataCode:"F9"},{name:"Garuda Indonesia",iataCode:"GA"},{name:"Go First",iataCode:"G8"},{name:"Gol Linhas Aereas Inteligentes",iataCode:"G3"},{name:"Hainan Airlines",iataCode:"HU"},{name:"Hawaiian Airlines",iataCode:"HA"},{name:"IndiGo Airlines",iataCode:"6E"},{name:"Japan Airlines",iataCode:"JL"},{name:"Jeju Air",iataCode:"7C"},{name:"Jet2",iataCode:"LS"},{name:"JetBlue Airways",iataCode:"B6"},{name:"JetSMART",iataCode:"JA"},{name:"Juneyao Airlines",iataCode:"HO"},{name:"Kenya Airways",iataCode:"KQ"},{name:"Korean Air",iataCode:"KE"},{name:"Kulula.com",iataCode:"MN"},{name:"LATAM Airlines",iataCode:"LA"},{name:"Lion Air",iataCode:"JT"},{name:"LOT Polish Airlines",iataCode:"LO"},{name:"Lufthansa",iataCode:"LH"},{name:"Libyan Airlines",iataCode:"LN"},{name:"Linea Aerea Amaszonas",iataCode:"Z8"},{name:"Malaysia Airlines",iataCode:"MH"},{name:"Nordwind Airlines",iataCode:"N4"},{name:"Norwegian Air Shuttle",iataCode:"DY"},{name:"Oman Air",iataCode:"WY"},{name:"Pakistan International Airlines",iataCode:"PK"},{name:"Pegasus Airlines",iataCode:"PC"},{name:"Philippine Airlines",iataCode:"PR"},{name:"Qantas Group",iataCode:"QF"},{name:"Qatar Airways",iataCode:"QR"},{name:"Republic Airways",iataCode:"YX"},{name:"Royal Air Maroc",iataCode:"AT"},{name:"Ryanair",iataCode:"FR"},{name:"S7 Airlines",iataCode:"S7"},{name:"SAS",iataCode:"SK"},{name:"Satena",iataCode:"9R"},{name:"Saudia",iataCode:"SV"},{name:"Shandong Airlines",iataCode:"SC"},{name:"Sichuan Airlines",iataCode:"3U"},{name:"Singapore Airlines",iataCode:"SQ"},{name:"Sky Airline",iataCode:"H2"},{name:"SkyWest Airlines",iataCode:"OO"},{name:"South African Airways",iataCode:"SA"},{name:"Southwest Airlines",iataCode:"WN"},{name:"SpiceJet",iataCode:"SG"},{name:"Spirit Airlines",iataCode:"NK"},{name:"Spring Airlines",iataCode:"9S"},{name:"SriLankan Airlines",iataCode:"UL"},{name:"Star Peru",iataCode:"2I"},{name:"Sun Country Airlines",iataCode:"SY"},{name:"SunExpress",iataCode:"XQ"},{name:"TAP Air Portugal",iataCode:"TP"},{name:"Thai AirAsia",iataCode:"FD"},{name:"Thai Airways",iataCode:"TG"},{name:"TUI Airways",iataCode:"BY"},{name:"Tunisair",iataCode:"TU"},{name:"Turkish Airlines",iataCode:"TK"},{name:"Ukraine International",iataCode:"PS"},{name:"United Airlines",iataCode:"UA"},{name:"Ural Airlines",iataCode:"U6"},{name:"VietJet Air",iataCode:"VJ"},{name:"Vietnam Airlines",iataCode:"VN"},{name:"Virgin Atlantic Airways",iataCode:"VS"},{name:"Virgin Australia",iataCode:"VA"},{name:"VivaAerobus",iataCode:"VB"},{name:"VOEPASS Linhas Aereas",iataCode:"2Z"},{name:"Volaris",iataCode:"Y4"},{name:"WestJet",iataCode:"WS"},{name:"Wingo",iataCode:"P5"},{name:"Wizz Air",iataCode:"W6"}];var a=[{name:"Aerospatiale/BAC Concorde",iataTypeCode:"SSC"},{name:"Airbus A300",iataTypeCode:"AB3"},{name:"Airbus A310",iataTypeCode:"310"},{name:"Airbus A310-200",iataTypeCode:"312"},{name:"Airbus A310-300",iataTypeCode:"313"},{name:"Airbus A318",iataTypeCode:"318"},{name:"Airbus A319",iataTypeCode:"319"},{name:"Airbus A319neo",iataTypeCode:"31N"},{name:"Airbus A320",iataTypeCode:"320"},{name:"Airbus A320neo",iataTypeCode:"32N"},{name:"Airbus A321",iataTypeCode:"321"},{name:"Airbus A321neo",iataTypeCode:"32Q"},{name:"Airbus A330",iataTypeCode:"330"},{name:"Airbus A330-200",iataTypeCode:"332"},{name:"Airbus A330-300",iataTypeCode:"333"},{name:"Airbus A330-800neo",iataTypeCode:"338"},{name:"Airbus A330-900neo",iataTypeCode:"339"},{name:"Airbus A340",iataTypeCode:"340"},{name:"Airbus A340-200",iataTypeCode:"342"},{name:"Airbus A340-300",iataTypeCode:"343"},{name:"Airbus A340-500",iataTypeCode:"345"},{name:"Airbus A340-600",iataTypeCode:"346"},{name:"Airbus A350",iataTypeCode:"350"},{name:"Airbus A350-900",iataTypeCode:"359"},{name:"Airbus A350-1000",iataTypeCode:"351"},{name:"Airbus A380",iataTypeCode:"380"},{name:"Airbus A380-800",iataTypeCode:"388"},{name:"Antonov An-12",iataTypeCode:"ANF"},{name:"Antonov An-24",iataTypeCode:"AN4"},{name:"Antonov An-26",iataTypeCode:"A26"},{name:"Antonov An-28",iataTypeCode:"A28"},{name:"Antonov An-30",iataTypeCode:"A30"},{name:"Antonov An-32",iataTypeCode:"A32"},{name:"Antonov An-72",iataTypeCode:"AN7"},{name:"Antonov An-124 Ruslan",iataTypeCode:"A4F"},{name:"Antonov An-140",iataTypeCode:"A40"},{name:"Antonov An-148",iataTypeCode:"A81"},{name:"Antonov An-158",iataTypeCode:"A58"},{name:"Antonov An-225 Mriya",iataTypeCode:"A5F"},{name:"Boeing 707",iataTypeCode:"703"},{name:"Boeing 717",iataTypeCode:"717"},{name:"Boeing 720B",iataTypeCode:"B72"},{name:"Boeing 727",iataTypeCode:"727"},{name:"Boeing 727-100",iataTypeCode:"721"},{name:"Boeing 727-200",iataTypeCode:"722"},{name:"Boeing 737 MAX 7",iataTypeCode:"7M7"},{name:"Boeing 737 MAX 8",iataTypeCode:"7M8"},{name:"Boeing 737 MAX 9",iataTypeCode:"7M9"},{name:"Boeing 737 MAX 10",iataTypeCode:"7MJ"},{name:"Boeing 737",iataTypeCode:"737"},{name:"Boeing 737-100",iataTypeCode:"731"},{name:"Boeing 737-200",iataTypeCode:"732"},{name:"Boeing 737-300",iataTypeCode:"733"},{name:"Boeing 737-400",iataTypeCode:"734"},{name:"Boeing 737-500",iataTypeCode:"735"},{name:"Boeing 737-600",iataTypeCode:"736"},{name:"Boeing 737-700",iataTypeCode:"73G"},{name:"Boeing 737-800",iataTypeCode:"738"},{name:"Boeing 737-900",iataTypeCode:"739"},{name:"Boeing 747",iataTypeCode:"747"},{name:"Boeing 747-100",iataTypeCode:"741"},{name:"Boeing 747-200",iataTypeCode:"742"},{name:"Boeing 747-300",iataTypeCode:"743"},{name:"Boeing 747-400",iataTypeCode:"744"},{name:"Boeing 747-400D",iataTypeCode:"74J"},{name:"Boeing 747-8",iataTypeCode:"748"},{name:"Boeing 747SP",iataTypeCode:"74L"},{name:"Boeing 747SR",iataTypeCode:"74R"},{name:"Boeing 757",iataTypeCode:"757"},{name:"Boeing 757-200",iataTypeCode:"752"},{name:"Boeing 757-300",iataTypeCode:"753"},{name:"Boeing 767",iataTypeCode:"767"},{name:"Boeing 767-200",iataTypeCode:"762"},{name:"Boeing 767-300",iataTypeCode:"763"},{name:"Boeing 767-400",iataTypeCode:"764"},{name:"Boeing 777",iataTypeCode:"777"},{name:"Boeing 777-200",iataTypeCode:"772"},{name:"Boeing 777-200LR",iataTypeCode:"77L"},{name:"Boeing 777-300",iataTypeCode:"773"},{name:"Boeing 777-300ER",iataTypeCode:"77W"},{name:"Boeing 787",iataTypeCode:"787"},{name:"Boeing 787-8",iataTypeCode:"788"},{name:"Boeing 787-9",iataTypeCode:"789"},{name:"Boeing 787-10",iataTypeCode:"781"},{name:"Canadair Challenger",iataTypeCode:"CCJ"},{name:"Canadair CL-44",iataTypeCode:"CL4"},{name:"Canadair Regional Jet 100",iataTypeCode:"CR1"},{name:"Canadair Regional Jet 200",iataTypeCode:"CR2"},{name:"Canadair Regional Jet 700",iataTypeCode:"CR7"},{name:"Canadair Regional Jet 705",iataTypeCode:"CRA"},{name:"Canadair Regional Jet 900",iataTypeCode:"CR9"},{name:"Canadair Regional Jet 1000",iataTypeCode:"CRK"},{name:"De Havilland Canada DHC-2 Beaver",iataTypeCode:"DHP"},{name:"De Havilland Canada DHC-2 Turbo-Beaver",iataTypeCode:"DHR"},{name:"De Havilland Canada DHC-3 Otter",iataTypeCode:"DHL"},{name:"De Havilland Canada DHC-4 Caribou",iataTypeCode:"DHC"},{name:"De Havilland Canada DHC-6 Twin Otter",iataTypeCode:"DHT"},{name:"De Havilland Canada DHC-7 Dash 7",iataTypeCode:"DH7"},{name:"De Havilland Canada DHC-8-100 Dash 8 / 8Q",iataTypeCode:"DH1"},{name:"De Havilland Canada DHC-8-200 Dash 8 / 8Q",iataTypeCode:"DH2"},{name:"De Havilland Canada DHC-8-300 Dash 8 / 8Q",iataTypeCode:"DH3"},{name:"De Havilland Canada DHC-8-400 Dash 8Q",iataTypeCode:"DH4"},{name:"De Havilland DH.104 Dove",iataTypeCode:"DHD"},{name:"De Havilland DH.114 Heron",iataTypeCode:"DHH"},{name:"Douglas DC-3",iataTypeCode:"D3F"},{name:"Douglas DC-6",iataTypeCode:"D6F"},{name:"Douglas DC-8-50",iataTypeCode:"D8T"},{name:"Douglas DC-8-62",iataTypeCode:"D8L"},{name:"Douglas DC-8-72",iataTypeCode:"D8Q"},{name:"Douglas DC-9-10",iataTypeCode:"D91"},{name:"Douglas DC-9-20",iataTypeCode:"D92"},{name:"Douglas DC-9-30",iataTypeCode:"D93"},{name:"Douglas DC-9-40",iataTypeCode:"D94"},{name:"Douglas DC-9-50",iataTypeCode:"D95"},{name:"Douglas DC-10",iataTypeCode:"D10"},{name:"Douglas DC-10-10",iataTypeCode:"D1X"},{name:"Douglas DC-10-30",iataTypeCode:"D1Y"},{name:"Embraer 170",iataTypeCode:"E70"},{name:"Embraer 175",iataTypeCode:"E75"},{name:"Embraer 190",iataTypeCode:"E90"},{name:"Embraer 195",iataTypeCode:"E95"},{name:"Embraer E190-E2",iataTypeCode:"290"},{name:"Embraer E195-E2",iataTypeCode:"295"},{name:"Embraer EMB.110 Bandeirante",iataTypeCode:"EMB"},{name:"Embraer EMB.120 Brasilia",iataTypeCode:"EM2"},{name:"Embraer Legacy 600",iataTypeCode:"ER3"},{name:"Embraer Phenom 100",iataTypeCode:"EP1"},{name:"Embraer Phenom 300",iataTypeCode:"EP3"},{name:"Embraer RJ135",iataTypeCode:"ER3"},{name:"Embraer RJ140",iataTypeCode:"ERD"},{name:"Embraer RJ145 Amazon",iataTypeCode:"ER4"},{name:"Ilyushin IL18",iataTypeCode:"IL8"},{name:"Ilyushin IL62",iataTypeCode:"IL6"},{name:"Ilyushin IL76",iataTypeCode:"IL7"},{name:"Ilyushin IL86",iataTypeCode:"ILW"},{name:"Ilyushin IL96-300",iataTypeCode:"I93"},{name:"Ilyushin IL114",iataTypeCode:"I14"},{name:"Lockheed L-182 / 282 / 382 (L-100) Hercules",iataTypeCode:"LOH"},{name:"Lockheed L-188 Electra",iataTypeCode:"LOE"},{name:"Lockheed L-1011 Tristar",iataTypeCode:"L10"},{name:"Lockheed L-1049 Super Constellation",iataTypeCode:"L49"},{name:"McDonnell Douglas MD11",iataTypeCode:"M11"},{name:"McDonnell Douglas MD80",iataTypeCode:"M80"},{name:"McDonnell Douglas MD81",iataTypeCode:"M81"},{name:"McDonnell Douglas MD82",iataTypeCode:"M82"},{name:"McDonnell Douglas MD83",iataTypeCode:"M83"},{name:"McDonnell Douglas MD87",iataTypeCode:"M87"},{name:"McDonnell Douglas MD88",iataTypeCode:"M88"},{name:"McDonnell Douglas MD90",iataTypeCode:"M90"},{name:"Sukhoi Superjet 100-95",iataTypeCode:"SU9"},{name:"Tupolev Tu-134",iataTypeCode:"TU3"},{name:"Tupolev Tu-154",iataTypeCode:"TU5"},{name:"Tupolev Tu-204",iataTypeCode:"T20"},{name:"Yakovlev Yak-40",iataTypeCode:"YK4"},{name:"Yakovlev Yak-42",iataTypeCode:"YK2"}];var o=[{name:"Adelaide International Airport",iataCode:"ADL"},{name:"Adolfo Suarez Madrid-Barajas Airport",iataCode:"MAD"},{name:"Aeroparque Jorge Newbery Airport",iataCode:"AEP"},{name:"Afonso Pena International Airport",iataCode:"CWB"},{name:"Alfonso Bonilla Aragon International Airport",iataCode:"CLO"},{name:"Amsterdam Airport Schiphol",iataCode:"AMS"},{name:"Arturo Merino Benitez International Airport",iataCode:"SCL"},{name:"Auckland International Airport",iataCode:"AKL"},{name:"Beijing Capital International Airport",iataCode:"PEK"},{name:"Belem Val de Cans International Airport",iataCode:"BEL"},{name:"Belo Horizonte Tancredo Neves International Airport",iataCode:"CNF"},{name:"Berlin-Tegel Airport",iataCode:"TXL"},{name:"Bole International Airport",iataCode:"ADD"},{name:"Brasilia-Presidente Juscelino Kubitschek International Airport",iataCode:"BSB"},{name:"Brisbane International Airport",iataCode:"BNE"},{name:"Brussels Airport",iataCode:"BRU"},{name:"Cairns Airport",iataCode:"CNS"},{name:"Cairo International Airport",iataCode:"CAI"},{name:"Canberra Airport",iataCode:"CBR"},{name:"Capetown International Airport",iataCode:"CPT"},{name:"Charles de Gaulle International Airport",iataCode:"CDG"},{name:"Charlotte Douglas International Airport",iataCode:"CLT"},{name:"Chengdu Shuangliu International Airport",iataCode:"CTU"},{name:"Chhatrapati Shivaji International Airport",iataCode:"BOM"},{name:"Chicago O'Hare International Airport",iataCode:"ORD"},{name:"Chongqing Jiangbei International Airport",iataCode:"CKG"},{name:"Christchurch International Airport",iataCode:"CHC"},{name:"Copenhagen Kastrup Airport",iataCode:"CPH"},{name:"Dallas Fort Worth International Airport",iataCode:"DFW"},{name:"Daniel K. Inouye International Airport",iataCode:"HNL"},{name:"Denver International Airport",iataCode:"DEN"},{name:"Don Mueang International Airport",iataCode:"DMK"},{name:"Dubai International Airport",iataCode:"DXB"},{name:"Dublin Airport",iataCode:"DUB"},{name:"Dusseldorf Airport",iataCode:"DUS"},{name:"El Dorado International Airport",iataCode:"BOG"},{name:"Eleftherios Venizelos International Airport",iataCode:"ATH"},{name:"Faa'a International Airport",iataCode:"PPT"},{name:"Fort Lauderdale Hollywood International Airport",iataCode:"FLL"},{name:"Fortaleza Pinto Martins International Airport",iataCode:"FOR"},{name:"Frankfurt am Main Airport",iataCode:"FRA"},{name:"George Bush Intercontinental Houston Airport",iataCode:"IAH"},{name:"Gold Coast Airport",iataCode:"OOL"},{name:"Guarulhos - Governador Andre Franco Montoro International Airport",iataCode:"GRU"},{name:"Hartsfield-Jackson Atlanta International Airport",iataCode:"ATL"},{name:"Helsinki Vantaa Airport",iataCode:"HEL"},{name:"Hobart International Airport",iataCode:"HBA"},{name:"Hong Kong International Airport",iataCode:"HKG"},{name:"Houari Boumediene Airport",iataCode:"ALG"},{name:"Hurgada International Airport",iataCode:"HRG"},{name:"Incheon International Airport",iataCode:"ICN"},{name:"Indira Gandhi International Airport",iataCode:"DEL"},{name:"Istanbul Airport",iataCode:"IST"},{name:"Jacksons International Airport",iataCode:"POM"},{name:"Jeju International Airport",iataCode:"CJU"},{name:"John F Kennedy International Airport",iataCode:"JFK"},{name:"Jorge Chavez International Airport",iataCode:"LIM"},{name:"Jose Maria Cordova International Airport",iataCode:"MDE"},{name:"Josep Tarradellas Barcelona-El Prat Airport",iataCode:"BCN"},{name:"Kahului Airport",iataCode:"OGG"},{name:"King Abdulaziz International Airport",iataCode:"JED"},{name:"Kuala Lumpur International Airport",iataCode:"KUL"},{name:"Kunming Changshui International Airport",iataCode:"KMG"},{name:"La Tontouta International Airport",iataCode:"NOU"},{name:"Leonardo da Vinci-Fiumicino Airport",iataCode:"FCO"},{name:"London Heathrow Airport",iataCode:"LHR"},{name:"Los Angeles International Airport",iataCode:"LAX"},{name:"McCarran International Airport",iataCode:"LAS"},{name:"Melbourne International Airport",iataCode:"MEL"},{name:"Mexico City International Airport",iataCode:"MEX"},{name:"Miami International Airport",iataCode:"MIA"},{name:"Ministro Pistarini International Airport",iataCode:"EZE"},{name:"Minneapolis-St Paul International/Wold-Chamberlain Airport",iataCode:"MSP"},{name:"Mohammed V International Airport",iataCode:"CMN"},{name:"Moscow Domodedovo Airport",iataCode:"DME"},{name:"Munich Airport",iataCode:"MUC"},{name:"Murtala Muhammed International Airport",iataCode:"LOS"},{name:"Nadi International Airport",iataCode:"NAN"},{name:"Nairobi Jomo Kenyatta International Airport",iataCode:"NBO"},{name:"Narita International Airport",iataCode:"NRT"},{name:"Newark Liberty International Airport",iataCode:"EWR"},{name:"Ninoy Aquino International Airport",iataCode:"MNL"},{name:"Noumea Magenta Airport",iataCode:"GEA"},{name:"O. R. Tambo International Airport",iataCode:"JNB"},{name:"Orlando International Airport",iataCode:"MCO"},{name:"Oslo Lufthavn",iataCode:"OSL"},{name:"Perth Airport",iataCode:"PER"},{name:"Phoenix Sky Harbor International Airport",iataCode:"PHX"},{name:"Recife Guararapes-Gilberto Freyre International Airport",iataCode:"REC"},{name:"Rio de Janeiro Galeao International Airport",iataCode:"GIG"},{name:"Salgado Filho International Airport",iataCode:"POA"},{name:"Salvador Deputado Luis Eduardo Magalhaes International Airport",iataCode:"SSA"},{name:"San Francisco International Airport",iataCode:"SFO"},{name:"Santos Dumont Airport",iataCode:"SDU"},{name:"Sao Paulo-Congonhas Airport",iataCode:"CGH"},{name:"Seattle Tacoma International Airport",iataCode:"SEA"},{name:"Shanghai Hongqiao International Airport",iataCode:"SHA"},{name:"Shanghai Pudong International Airport",iataCode:"PVG"},{name:"Shenzhen Bao'an International Airport",iataCode:"SZX"},{name:"Sheremetyevo International Airport",iataCode:"SVO"},{name:"Singapore Changi Airport",iataCode:"SIN"},{name:"Soekarno-Hatta International Airport",iataCode:"CGK"},{name:'Stockholm-Arlanda Airport"',iataCode:"ARN"},{name:"Suvarnabhumi Airport",iataCode:"BKK"},{name:"Sydney Kingsford Smith International Airport",iataCode:"SYD"},{name:"Taiwan Taoyuan International Airport",iataCode:"TPE"},{name:"Tan Son Nhat International Airport",iataCode:"SGN"},{name:"Tokyo Haneda International Airport",iataCode:"HND"},{name:"Toronto Pearson International Airport",iataCode:"YYZ"},{name:"Tunis Carthage International Airport",iataCode:"TUN"},{name:"Vancouver International Airport",iataCode:"YVR"},{name:"Vienna International Airport",iataCode:"VIE"},{name:"Viracopos International Airport",iataCode:"VCP"},{name:"Vnukovo International Airport",iataCode:"VKO"},{name:"Wellington International Airport",iataCode:"WLG"},{name:"Xi'an Xianyang International Airport",iataCode:"XIY"},{name:"Zhukovsky International Airport",iataCode:"ZIA"},{name:"Zurich Airport",iataCode:"ZRH"}];var Ja={airline:e,airplane:a,airport:o},r=Ja;var n=["American black bear","Asian black bear","Brown bear","Giant panda","Polar bear","Sloth bear","Spectacled bear","Sun bear"];var i=["Abert's Towhee","Acadian Flycatcher","Acorn Woodpecker","Alder Flycatcher","Aleutian Tern","Allen's Hummingbird","Altamira Oriole","American Avocet","American Bittern","American Black Duck","American Coot","American Crow","American Dipper","American Golden-Plover","American Goldfinch","American Kestrel","American Oystercatcher","American Pipit","American Redstart","American Robin","American Tree Sparrow","American White Pelican","American Wigeon","American Woodcock","Ancient Murrelet","Anhinga","Anna's Hummingbird","Antillean Nighthawk","Antillean Palm Swift","Aplomado Falcon","Arctic Loon","Arctic Tern","Arctic Warbler","Ash-throated Flycatcher","Ashy Storm-Petrel","Asian Brown Flycatcher","Atlantic Puffin","Audubon's Oriole","Audubon's Shearwater","Aztec Thrush","Azure Gallinule","Bachman's Sparrow","Bachman's Warbler","Bahama Mockingbird","Bahama Swallow","Bahama Woodstar","Baikal Teal","Baird's Sandpiper","Baird's Sparrow","Bald Eagle","Baltimore Oriole","Bananaquit","Band-rumped Storm-Petrel","Band-tailed Gull","Band-tailed Pigeon","Bank Swallow","Bar-tailed Godwit","Barn Owl","Barn Swallow","Barnacle Goose","Barred Owl","Barrow's Goldeneye","Bay-breasted Warbler","Bean Goose","Bell's Vireo","Belted Kingfisher","Bendire's Thrasher","Berylline Hummingbird","Bewick's Wren","Bicknell's Thrush","Black Catbird","Black Guillemot","Black Noddy","Black Oystercatcher","Black Phoebe","Black Rail","Black Rosy-Finch","Black Scoter","Black Skimmer","Black Storm-Petrel","Black Swift","Black Tern","Black Turnstone","Black Vulture","Black-and-white Warbler","Black-backed Wagtail","Black-backed Woodpecker","Black-bellied Plover","Black-bellied Whistling-Duck","Black-billed Cuckoo","Black-billed Magpie","Black-browed Albatross","Black-capped Chickadee","Black-capped Gnatcatcher","Black-capped Petrel","Black-capped Vireo","Black-chinned Hummingbird","Black-chinned Sparrow","Black-crowned Night-Heron","Black-faced Grassquit","Black-footed Albatross","Black-headed Grosbeak","Black-headed Gull","Black-legged Kittiwake","Black-necked Stilt","Black-tailed Gnatcatcher","Black-tailed Godwit","Black-tailed Gull","Black-throated Blue Warbler","Black-throated Gray Warbler","Black-throated Green Warbler","Black-throated Sparrow","Black-vented Oriole","Black-vented Shearwater","Black-whiskered Vireo","Black-winged Stilt","Blackburnian Warbler","Blackpoll Warbler","Blue Bunting","Blue Grosbeak","Blue Grouse","Blue Jay","Blue Mockingbird","Blue-footed Booby","Blue-gray Gnatcatcher","Blue-headed Vireo","Blue-throated Hummingbird","Blue-winged Teal","Blue-winged Warbler","Bluethroat","Boat-tailed Grackle","Bobolink","Bohemian Waxwing","Bonaparte's Gull","Boreal Chickadee","Boreal Owl","Botteri's Sparrow","Brambling","Brandt's Cormorant","Brant","Brewer's Blackbird","Brewer's Sparrow","Bridled Tern","Bridled Titmouse","Bristle-thighed Curlew","Broad-billed Hummingbird","Broad-billed Sandpiper","Broad-tailed Hummingbird","Broad-winged Hawk","Bronzed Cowbird","Brown Booby","Brown Creeper","Brown Jay","Brown Noddy","Brown Pelican","Brown Shrike","Brown Thrasher","Brown-capped Rosy-Finch","Brown-chested Martin","Brown-crested Flycatcher","Brown-headed Cowbird","Brown-headed Nuthatch","Budgerigar","Buff-bellied Hummingbird","Buff-breasted Flycatcher","Buff-breasted Sandpiper","Buff-collared Nightjar","Bufflehead","Buller's Shearwater","Bullock's Oriole","Bumblebee Hummingbird","Burrowing Owl","Bushtit","Cactus Wren","California Condor","California Gnatcatcher","California Gull","California Quail","California Thrasher","California Towhee","Calliope Hummingbird","Canada Goose","Canada Warbler","Canvasback","Canyon Towhee","Canyon Wren","Cape May Warbler","Caribbean Elaenia","Carolina Chickadee","Carolina Parakeet","Carolina Wren","Caspian Tern","Cassin's Auklet","Cassin's Finch","Cassin's Kingbird","Cassin's Sparrow","Cassin's Vireo","Cattle Egret","Cave Swallow","Cedar Waxwing","Cerulean Warbler","Chestnut-backed Chickadee","Chestnut-collared Longspur","Chestnut-sided Warbler","Chihuahuan Raven","Chimney Swift","Chinese Egret","Chipping Sparrow","Chuck-will's-widow","Chukar","Cinnamon Hummingbird","Cinnamon Teal","Citrine Wagtail","Clapper Rail","Clark's Grebe","Clark's Nutcracker","Clay-colored Robin","Clay-colored Sparrow","Cliff Swallow","Colima Warbler","Collared Forest-Falcon","Collared Plover","Common Black-Hawk","Common Chaffinch","Common Crane","Common Cuckoo","Common Eider","Common Goldeneye","Common Grackle","Common Greenshank","Common Ground-Dove","Common House-Martin","Common Loon","Common Merganser","Common Moorhen","Common Murre","Common Nighthawk","Common Pauraque","Common Pochard","Common Poorwill","Common Raven","Common Redpoll","Common Ringed Plover","Common Rosefinch","Common Sandpiper","Common Snipe","Common Swift","Common Tern","Common Yellowthroat","Connecticut Warbler","Cook's Petrel","Cooper's Hawk","Cordilleran Flycatcher","Corn Crake","Cory's Shearwater","Costa's Hummingbird","Couch's Kingbird","Crane Hawk","Craveri's Murrelet","Crescent-chested Warbler","Crested Auklet","Crested Caracara","Crested Myna","Crimson-collared Grosbeak","Crissal Thrasher","Cuban Martin","Curlew Sandpiper","Curve-billed Thrasher","Dark-eyed Junco","Dickcissel","Double-crested Cormorant","Double-striped Thick-knee","Dovekie","Downy Woodpecker","Dunlin","Dusky Flycatcher","Dusky Thrush","Dusky Warbler","Dusky-capped Flycatcher","Eared Grebe","Eared Trogon","Eastern Bluebird","Eastern Kingbird","Eastern Meadowlark","Eastern Phoebe","Eastern Screech-Owl","Eastern Towhee","Eastern Wood-Pewee","Elegant Tern","Elegant Trogon","Elf Owl","Emperor Goose","Eskimo Curlew","Eurasian Blackbird","Eurasian Bullfinch","Eurasian Collared-Dove","Eurasian Coot","Eurasian Curlew","Eurasian Dotterel","Eurasian Hobby","Eurasian Jackdaw","Eurasian Kestrel","Eurasian Oystercatcher","Eurasian Siskin","Eurasian Tree Sparrow","Eurasian Wigeon","Eurasian Woodcock","Eurasian Wryneck","European Golden-Plover","European Starling","European Storm-Petrel","European Turtle-Dove","Evening Grosbeak","Eyebrowed Thrush","Falcated Duck","Fan-tailed Warbler","Far Eastern Curlew","Ferruginous Hawk","Ferruginous Pygmy-Owl","Field Sparrow","Fieldfare","Fish Crow","Five-striped Sparrow","Flame-colored Tanager","Flammulated Owl","Flesh-footed Shearwater","Florida Scrub-Jay","Fork-tailed Flycatcher","Fork-tailed Storm-Petrel","Fork-tailed Swift","Forster's Tern","Fox Sparrow","Franklin's Gull","Fulvous Whistling-Duck","Gadwall","Gambel's Quail","Garganey","Gila Woodpecker","Gilded Flicker","Glaucous Gull","Glaucous-winged Gull","Glossy Ibis","Golden Eagle","Golden-cheeked Warbler","Golden-crowned Kinglet","Golden-crowned Sparrow","Golden-crowned Warbler","Golden-fronted Woodpecker","Golden-winged Warbler","Grace's Warbler","Grasshopper Sparrow","Gray Bunting","Gray Catbird","Gray Flycatcher","Gray Hawk","Gray Jay","Gray Kingbird","Gray Partridge","Gray Silky-flycatcher","Gray Vireo","Gray Wagtail","Gray-breasted Martin","Gray-cheeked Thrush","Gray-crowned Rosy-Finch","Gray-crowned Yellowthroat","Gray-headed Chickadee","Gray-spotted Flycatcher","Gray-tailed Tattler","Great Auk","Great Black-backed Gull","Great Blue Heron","Great Cormorant","Great Crested Flycatcher","Great Egret","Great Frigatebird","Great Gray Owl","Great Horned Owl","Great Kiskadee","Great Knot","Great Skua","Great Spotted Woodpecker","Great-tailed Grackle","Greater Flamingo","Greater Pewee","Greater Prairie-chicken","Greater Roadrunner","Greater Scaup","Greater Shearwater","Greater White-fronted Goose","Greater Yellowlegs","Green Heron","Green Jay","Green Kingfisher","Green Sandpiper","Green Violet-ear","Green-breasted Mango","Green-tailed Towhee","Green-winged Teal","Greenish Elaenia","Groove-billed Ani","Gull-billed Tern","Gyrfalcon","Hairy Woodpecker","Hammond's Flycatcher","Harlequin Duck","Harris's Hawk","Harris's Sparrow","Hawfinch","Heermann's Gull","Henslow's Sparrow","Hepatic Tanager","Herald Petrel","Hermit Thrush","Hermit Warbler","Herring Gull","Himalayan Snowcock","Hoary Redpoll","Hooded Merganser","Hooded Oriole","Hooded Warbler","Hook-billed Kite","Hoopoe","Horned Grebe","Horned Lark","Horned Puffin","House Finch","House Sparrow","House Wren","Hudsonian Godwit","Hutton's Vireo","Iceland Gull","Inca Dove","Indigo Bunting","Island Scrub-Jay","Ivory Gull","Ivory-billed Woodpecker","Jabiru","Jack Snipe","Jungle Nightjar","Juniper Titmouse","Kentucky Warbler","Key West Quail-Dove","Killdeer","King Eider","King Rail","Kirtland's Warbler","Kittlitz's Murrelet","La Sagra's Flycatcher","Labrador Duck","Ladder-backed Woodpecker","Lanceolated Warbler","Lapland Longspur","Large-billed Tern","Lark Bunting","Lark Sparrow","Laughing Gull","Lawrence's Goldfinch","Laysan Albatross","Lazuli Bunting","Le Conte's Sparrow","Le Conte's Thrasher","Leach's Storm-Petrel","Least Auklet","Least Bittern","Least Flycatcher","Least Grebe","Least Sandpiper","Least Storm-Petrel","Least Tern","Lesser Black-backed Gull","Lesser Frigatebird","Lesser Goldfinch","Lesser Nighthawk","Lesser Prairie-chicken","Lesser Scaup","Lesser White-fronted Goose","Lesser Yellowlegs","Lewis's Woodpecker","Limpkin","Lincoln's Sparrow","Little Blue Heron","Little Bunting","Little Curlew","Little Egret","Little Gull","Little Ringed Plover","Little Shearwater","Little Stint","Loggerhead Kingbird","Loggerhead Shrike","Long-billed Curlew","Long-billed Dowitcher","Long-billed Murrelet","Long-billed Thrasher","Long-eared Owl","Long-tailed Jaeger","Long-toed Stint","Louisiana Waterthrush","Lucifer Hummingbird","Lucy's Warbler","MacGillivray's Warbler","Magnificent Frigatebird","Magnificent Hummingbird","Magnolia Warbler","Mallard","Mangrove Cuckoo","Manx Shearwater","Marbled Godwit","Marbled Murrelet","Marsh Sandpiper","Marsh Wren","Masked Booby","Masked Duck","Masked Tityra","McCown's Longspur","McKay's Bunting","Merlin","Mew Gull","Mexican Chickadee","Mexican Jay","Middendorff's Grasshopper-Warbler","Mississippi Kite","Mongolian Plover","Monk Parakeet","Montezuma Quail","Mottled Duck","Mottled Owl","Mottled Petrel","Mountain Bluebird","Mountain Chickadee","Mountain Plover","Mountain Quail","Mourning Dove","Mourning Warbler","Mugimaki Flycatcher","Murphy's Petrel","Muscovy Duck","Mute Swan","Narcissus Flycatcher","Nashville Warbler","Nelson's Sharp-tailed Sparrow","Neotropic Cormorant","Northern Beardless-Tyrannulet","Northern Bobwhite","Northern Cardinal","Northern Flicker","Northern Fulmar","Northern Gannet","Northern Goshawk","Northern Harrier","Northern Hawk Owl","Northern Jacana","Northern Lapwing","Northern Mockingbird","Northern Parula","Northern Pintail","Northern Pygmy-Owl","Northern Rough-winged Swallow","Northern Saw-whet Owl","Northern Shoveler","Northern Shrike","Northern Waterthrush","Northern Wheatear","Northwestern Crow","Nuttall's Woodpecker","Nutting's Flycatcher","Oak Titmouse","Oldsquaw","Olive Sparrow","Olive Warbler","Olive-backed Pipit","Olive-sided Flycatcher","Orange-crowned Warbler","Orchard Oriole","Oriental Cuckoo","Oriental Greenfinch","Oriental Pratincole","Oriental Scops-Owl","Oriental Turtle-Dove","Osprey","Ovenbird","Pacific Golden-Plover","Pacific Loon","Pacific-slope Flycatcher","Paint-billed Crake","Painted Bunting","Painted Redstart","Pallas's Bunting","Palm Warbler","Parakeet Auklet","Parasitic Jaeger","Passenger Pigeon","Pechora Pipit","Pectoral Sandpiper","Pelagic Cormorant","Peregrine Falcon","Phainopepla","Philadelphia Vireo","Pied-billed Grebe","Pigeon Guillemot","Pileated Woodpecker","Pin-tailed Snipe","Pine Bunting","Pine Grosbeak","Pine Siskin","Pine Warbler","Pink-footed Goose","Pink-footed Shearwater","Pinyon Jay","Piping Plover","Plain Chachalaca","Plain-capped Starthroat","Plumbeous Vireo","Pomarine Jaeger","Prairie Falcon","Prairie Warbler","Prothonotary Warbler","Purple Finch","Purple Gallinule","Purple Martin","Purple Sandpiper","Pygmy Nuthatch","Pyrrhuloxia","Razorbill","Red Crossbill","Red Knot","Red Phalarope","Red-bellied Woodpecker","Red-billed Pigeon","Red-billed Tropicbird","Red-breasted Flycatcher","Red-breasted Merganser","Red-breasted Nuthatch","Red-breasted Sapsucker","Red-cockaded Woodpecker","Red-crowned Parrot","Red-eyed Vireo","Red-faced Cormorant","Red-faced Warbler","Red-flanked Bluetail","Red-footed Booby","Red-headed Woodpecker","Red-legged Kittiwake","Red-naped Sapsucker","Red-necked Grebe","Red-necked Phalarope","Red-necked Stint","Red-shouldered Hawk","Red-tailed Hawk","Red-tailed Tropicbird","Red-throated Loon","Red-throated Pipit","Red-whiskered Bulbul","Red-winged Blackbird","Reddish Egret","Redhead","Redwing","Reed Bunting","Rhinoceros Auklet","Ring-billed Gull","Ring-necked Duck","Ring-necked Pheasant","Ringed Kingfisher","Roadside Hawk","Rock Dove","Rock Ptarmigan","Rock Sandpiper","Rock Wren","Rose-breasted Grosbeak","Rose-throated Becard","Roseate Spoonbill","Roseate Tern","Ross's Goose","Ross's Gull","Rough-legged Hawk","Royal Tern","Ruby-crowned Kinglet","Ruby-throated Hummingbird","Ruddy Duck","Ruddy Ground-Dove","Ruddy Quail-Dove","Ruddy Turnstone","Ruff","Ruffed Grouse","Rufous Hummingbird","Rufous-backed Robin","Rufous-capped Warbler","Rufous-crowned Sparrow","Rufous-winged Sparrow","Rustic Bunting","Rusty Blackbird","Sabine's Gull","Sage Grouse","Sage Sparrow","Sage Thrasher","Saltmarsh Sharp-tailed Sparrow","Sanderling","Sandhill Crane","Sandwich Tern","Savannah Sparrow","Say's Phoebe","Scaled Quail","Scaly-naped Pigeon","Scarlet Ibis","Scarlet Tanager","Scissor-tailed Flycatcher","Scott's Oriole","Seaside Sparrow","Sedge Wren","Semipalmated Plover","Semipalmated Sandpiper","Sharp-shinned Hawk","Sharp-tailed Grouse","Sharp-tailed Sandpiper","Shiny Cowbird","Short-billed Dowitcher","Short-eared Owl","Short-tailed Albatross","Short-tailed Hawk","Short-tailed Shearwater","Shy Albatross","Siberian Accentor","Siberian Blue Robin","Siberian Flycatcher","Siberian Rubythroat","Sky Lark","Slate-throated Redstart","Slaty-backed Gull","Slender-billed Curlew","Smew","Smith's Longspur","Smooth-billed Ani","Snail Kite","Snow Bunting","Snow Goose","Snowy Egret","Snowy Owl","Snowy Plover","Solitary Sandpiper","Song Sparrow","Sooty Shearwater","Sooty Tern","Sora","South Polar Skua","Southern Martin","Spectacled Eider","Spoonbill Sandpiper","Spot-billed Duck","Spot-breasted Oriole","Spotted Dove","Spotted Owl","Spotted Rail","Spotted Redshank","Spotted Sandpiper","Spotted Towhee","Sprague's Pipit","Spruce Grouse","Stejneger's Petrel","Steller's Eider","Steller's Jay","Steller's Sea-Eagle","Stilt Sandpiper","Stonechat","Streak-backed Oriole","Streaked Shearwater","Strickland's Woodpecker","Stripe-headed Tanager","Sulphur-bellied Flycatcher","Summer Tanager","Surf Scoter","Surfbird","Swainson's Hawk","Swainson's Thrush","Swainson's Warbler","Swallow-tailed Kite","Swamp Sparrow","Tamaulipas Crow","Tawny-shouldered Blackbird","Temminck's Stint","Tennessee Warbler","Terek Sandpiper","Thayer's Gull","Thick-billed Kingbird","Thick-billed Murre","Thick-billed Parrot","Thick-billed Vireo","Three-toed Woodpecker","Townsend's Solitaire","Townsend's Warbler","Tree Pipit","Tree Swallow","Tricolored Blackbird","Tricolored Heron","Tropical Kingbird","Tropical Parula","Trumpeter Swan","Tufted Duck","Tufted Flycatcher","Tufted Puffin","Tufted Titmouse","Tundra Swan","Turkey Vulture","Upland Sandpiper","Varied Bunting","Varied Thrush","Variegated Flycatcher","Vaux's Swift","Veery","Verdin","Vermilion Flycatcher","Vesper Sparrow","Violet-crowned Hummingbird","Violet-green Swallow","Virginia Rail","Virginia's Warbler","Wandering Albatross","Wandering Tattler","Warbling Vireo","Wedge-rumped Storm-Petrel","Wedge-tailed Shearwater","Western Bluebird","Western Grebe","Western Gull","Western Kingbird","Western Meadowlark","Western Reef-Heron","Western Sandpiper","Western Screech-Owl","Western Scrub-Jay","Western Tanager","Western Wood-Pewee","Whimbrel","Whip-poor-will","Whiskered Auklet","Whiskered Screech-Owl","Whiskered Tern","White Ibis","White Wagtail","White-breasted Nuthatch","White-cheeked Pintail","White-chinned Petrel","White-collared Seedeater","White-collared Swift","White-crowned Pigeon","White-crowned Sparrow","White-eared Hummingbird","White-eyed Vireo","White-faced Ibis","White-faced Storm-Petrel","White-headed Woodpecker","White-rumped Sandpiper","White-tailed Eagle","White-tailed Hawk","White-tailed Kite","White-tailed Ptarmigan","White-tailed Tropicbird","White-throated Needletail","White-throated Robin","White-throated Sparrow","White-throated Swift","White-tipped Dove","White-winged Crossbill","White-winged Dove","White-winged Parakeet","White-winged Scoter","White-winged Tern","Whooper Swan","Whooping Crane","Wild Turkey","Willet","Williamson's Sapsucker","Willow Flycatcher","Willow Ptarmigan","Wilson's Phalarope","Wilson's Plover","Wilson's Storm-Petrel","Wilson's Warbler","Winter Wren","Wood Duck","Wood Sandpiper","Wood Stork","Wood Thrush","Wood Warbler","Worm-eating Warbler","Worthen's Sparrow","Wrentit","Xantus's Hummingbird","Xantus's Murrelet","Yellow Bittern","Yellow Grosbeak","Yellow Rail","Yellow Wagtail","Yellow Warbler","Yellow-bellied Flycatcher","Yellow-bellied Sapsucker","Yellow-billed Cuckoo","Yellow-billed Loon","Yellow-billed Magpie","Yellow-breasted Bunting","Yellow-breasted Chat","Yellow-crowned Night-Heron","Yellow-eyed Junco","Yellow-faced Grassquit","Yellow-footed Gull","Yellow-green Vireo","Yellow-headed Blackbird","Yellow-legged Gull","Yellow-nosed Albatross","Yellow-rumped Warbler","Yellow-throated Vireo","Yellow-throated Warbler","Yucatan Vireo","Zenaida Dove","Zone-tailed Hawk"];var t=["Abyssinian","American Bobtail","American Curl","American Shorthair","American Wirehair","Balinese","Bengal","Birman","Bombay","British Shorthair","Burmese","Chartreux","Chausie","Cornish Rex","Devon Rex","Donskoy","Egyptian Mau","Exotic Shorthair","Havana","Highlander","Himalayan","Japanese Bobtail","Korat","Kurilian Bobtail","LaPerm","Maine Coon","Manx","Minskin","Munchkin","Nebelung","Norwegian Forest Cat","Ocicat","Ojos Azules","Oriental","Persian","Peterbald","Pixiebob","Ragdoll","Russian Blue","Savannah","Scottish Fold","Selkirk Rex","Serengeti","Siamese","Siberian","Singapura","Snowshoe","Sokoke","Somali","Sphynx","Thai","Tonkinese","Toyger","Turkish Angora","Turkish Van"];var l=["Amazon River Dolphin","Arnoux's Beaked Whale","Atlantic Humpbacked Dolphin","Atlantic Spotted Dolphin","Atlantic White-Sided Dolphin","Australian Snubfin Dolphin","Australian humpback Dolphin","Blue Whale","Bottlenose Dolphin","Bryde\u2019s whale","Burrunan Dolphin","Chilean Dolphin","Chinese River Dolphin","Chinese White Dolphin","Clymene Dolphin","Commerson\u2019s Dolphin","Costero","Dusky Dolphin","False Killer Whale","Fin Whale","Fraser\u2019s Dolphin","Ganges River Dolphin","Guiana Dolphin","Heaviside\u2019s Dolphin","Hector\u2019s Dolphin","Hourglass Dolphin","Humpback whale","Indo-Pacific Bottlenose Dolphin","Indo-Pacific Hump-backed Dolphin","Irrawaddy Dolphin","Killer Whale (Orca)","La Plata Dolphin","Long-Beaked Common Dolphin","Long-finned Pilot Whale","Longman's Beaked Whale","Melon-headed Whale","Northern Rightwhale Dolphin","Omura\u2019s whale","Pacific White-Sided Dolphin","Pantropical Spotted Dolphin","Peale\u2019s Dolphin","Pygmy Killer Whale","Risso\u2019s Dolphin","Rough-Toothed Dolphin","Sei Whale","Short-Beaked Common Dolphin","Short-finned Pilot Whale","Southern Bottlenose Whale","Southern Rightwhale Dolphin","Sperm Whale","Spinner Dolphin","Striped Dolphin","Tucuxi","White-Beaked Dolphin"];var s=["Aberdeen Angus","Abergele","Abigar","Abondance","Abyssinian Shorthorned Zebu","Aceh","Achham","Adamawa","Adaptaur","Afar","Africangus","Afrikaner","Agerolese","Alambadi","Alatau","Albanian","Albera","Alderney","Alentejana","Aleutian wild cattle","Aliad Dinka","Alistana-Sanabresa","Allmogekor","Alur","American","American Angus","American Beef Friesian","American Brown Swiss","American Milking Devon","American White Park","Amerifax","Amrit Mahal","Amsterdam Island cattle","Anatolian Black","Andalusian Black","Andalusian Blond","Andalusian Grey","Angeln","Angoni","Ankina","Ankole","Ankole-Watusi","Aracena","Arado","Argentine Criollo","Argentine Friesian","Armorican","Arouquesa","Arsi","Asturian Mountain","Asturian Valley","Aubrac","Aulie-Ata","Aure et Saint-Girons","Australian Braford","Australian Brangus","Australian Charbray","Australian Friesian Sahiwal","Australian Lowline","Australian Milking Zebu","Australian Shorthorn","Austrian Simmental","Austrian Yellow","Avile\xF1a-Negra Ib\xE9rica","Av\xE9tonou","Aweil Dinka","Ayrshire","Azaouak","Azebuado","Azerbaijan Zebu","Azores","Bachaur cattle","Baherie cattle","Bakosi cattle","Balancer","Baoule","Bargur cattle","Barros\xE3","Barzona","Bazadaise","Bedit","Beef Freisian","Beefalo","Beefmaker","Beefmaster","Begayt","Belgian Blue","Belgian Red","Belgian Red Pied","Belgian White-and-Red","Belmont Red","Belted Galloway","Bernese","Berrenda cattle","Betizu","Bianca Modenese","Blaarkop","Black Angus","Black Baldy","Black Hereford","Blanca Cacere\xF1a","Blanco Orejinegro BON","Blonde d'Aquitaine","Blue Albion","Blue Grey","Bohuskulla","Bonsmara","Boran","Bo\u0161karin","Braford","Brahman","Brahmousin","Brangus","Braunvieh","Brava","Breed","British Friesian","British White","Brown Carpathian","Brown Caucasian","Brown Swiss","Bue Lingo","Burlina","Bushuyev","Butana cattle","Bu\u0161a cattle","Cachena","Caldelana","Camargue","Campbell Island cattle","Canadian Speckle Park","Canadienne","Canaria","Canchim","Caracu","Carinthian Blondvieh","Carora","Cedit","Charbray","Charolais","Chateaubriand","Chiangus","Chianina","Chillingham cattle","Chinese Black Pied","Cholistani","Coloursided White Back","Commercial","Corriente","Corsican cattle","Coste\xF1o con Cuernos","Crioulo Lageano","C\xE1rdena Andaluza","Dajal","Dangi cattle","Danish Black-Pied","Danish Jersey","Danish Red","Dedit","Deep Red cattle","Deoni","Devon","Dexter cattle","Dhanni","Doayo cattle","Doela","Drakensberger","Droughtmaster","Dulong'","Dutch Belted","Dutch Friesian","Dwarf Lulu","D\xF8lafe","East Anatolian Red","Eastern Finncattle","Eastern Red Polled","Eedit","Enderby Island cattle","English Longhorn","Ennstaler Bergscheck","Estonian Holstein","Estonian Native","Estonian Red cattle","Fedit","Finncattle","Finnish Ayrshire","Finnish Holstein-Friesian","Fj\xE4ll","Fleckvieh","Florida Cracker cattle","Fogera","French Simmental","Fribourgeoise","Friesian Red and White","Fulani Sudanese","F\u0113ng Cattle","Galician Blond","Galloway cattle","Gangatiri","Gaolao","Garvonesa","Gascon cattle","Gedit","Gelbvieh","Georgian Mountain cattle","German Angus","German Black Pied Dairy","German Black Pied cattle","German Red Pied","Gir","Glan cattle","Gloucester","Gobra","Greek Shorthorn","Greek Steppe","Greyman cattle","Gudali","Guernsey cattle","Guzer\xE1","Hallikar4","Hanwoo","Hariana cattle","Hart\xF3n del Valle","Harzer Rotvieh","Hays Converter","Heck cattle","Hedit","Hereford","Herens","Highland cattle","Hinterwald","Holando-Argentino","Holstein Friesian cattle","Horro","Hungarian Grey","Hu\xE1ng Cattle","Hybridmaster","Iberian cattle","Icelandic","Iedit","Illawarra cattle","Improved Red and White","Indo-Brazilian","Irish Moiled","Israeli Holstein","Israeli Red","Istoben cattle","Istrian cattle","Jamaica Black","Jamaica Hope","Jamaica Red","Japanese Brown","Jarmelista","Javari cattle","Jedit","Jersey cattle","Jutland cattle","Kabin Buri cattle","Kalmyk cattle","Kamphaeng Saen cattle","Kangayam","Kankrej","Karan Swiss","Kasaragod Dwarf cattle","Kathiawadi","Kazakh Whiteheaded","Kedit","Kenana cattle","Kenkatha cattle","Kerry cattle","Kherigarh","Khillari cattle","Kholomogory","Korat Wagyu","Kostroma cattle","Krishna Valley cattle","Kurgan cattle","Kuri","La Reina cattle","Lakenvelder cattle","Lampurger","Latvian Blue","Latvian Brown","Latvian Danish Red","Lebedyn","Ledit","Levantina","Limia cattle","Limousin","Limpurger","Lincoln Red","Lineback","Lithuanian Black-and-White","Lithuanian Light Grey","Lithuanian Red","Lithuanian White-Backed","Lohani cattle","Lourdais","Lucerna cattle","Luing","Madagascar Zebu","Madura","Maine-Anjou","Malnad Gidda","Malvi","Mandalong Special","Mantequera Leonesa","Maramure\u015F Brown","Marchigiana","Maremmana","Marinhoa","Maronesa","Masai","Mashona","Medit","Menorquina","Mertolenga","Meuse-Rhine-Issel","Mewati","Milking Shorthorn","Minhota","Mirandesa","Mirkadim","Moc\u0103ni\u0163\u0103","Mollie","Monchina","Mongolian","Montb\xE9liarde","Morucha","Murboden","Murnau-Werdenfels","Murray Grey","Muturu","N'Dama","Nagori","Nedit","Negra Andaluza","Nelore","Nguni","Nimari","Normande","North Bengal Grey","Northern Finncattle","Northern Shorthorn","Norwegian Red","Oedit]","Ongole","Original Simmental","Pajuna","Palmera","Pantaneiro","Parda Alpina","Parthenaise","Pasiega","Pedit","Pembroke","Philippine Native","Pie Rouge des Plaines","Piedmontese cattle","Pineywoods","Pinzgauer","Pirenaica","Podolac","Podolica","Polish Black-and-White","Polish Red","Poll Shorthorn","Polled Hereford","Polled Shorthorn","Ponwar","Preta","Pulikulam","Punganur","Pustertaler Sprinzen","Qedit","Qinchaun","Queensland Miniature Boran","RX3","Ramo Grande","Randall","Raramuri Criollo","Rathi","Raya","Red Angus","Red Brangus","Red Chittagong","Red Fulani","Red Gorbatov","Red Holstein","Red Kandhari","Red Mingrelian","Red Poll","Red Polled \xD8stland","Red Sindhi","Redit","Retinta","Riggit Galloway","Ringam\xE5la","Rohjan","Romagnola","Romanian B\u0103l\u0163ata","Romanian Steppe Gray","Romosinuano","Russian Black Pied","R\xE4tisches Grauvieh","Sahiwal","Salers","Salorn","Sanga","Sanhe","Santa Cruz","Santa Gertrudis","Sayaguesa","Schwyz","Sedit","Selembu","Senepol","Serbian Pied","Serbian Steppe","Sheko","Shetland","Shorthorn","Siboney de Cuba","Simbrah","Simford","Simmental","Siri","South Devon","Spanish Fighting Bull","Speckle Park","Square Meater","Sussex","Swedish Friesian","Swedish Polled","Swedish Red Pied","Swedish Red Polled","Swedish Red-and-White","Tabapu\xE3","Tarentaise","Tasmanian Grey","Tauros","Tedit","Telemark","Texas Longhorn","Texon","Thai Black","Thai Fighting Bull","Thai Friesian","Thai Milking Zebu","Tharparkar","Tswana","Tudanca","Tuli","Tulim","Turkish Grey Steppe","Tux-Zillertal","Tyrol Grey","Uedit","Ukrainian Grey","Umblachery","Valdostana Castana","Valdostana Pezzata Nera","Valdostana Pezzata Rossa","Vaynol","Vechur8","Vedit","Vestland Fjord","Vestland Red Polled","Vianesa","Volinian Beef","Vorderwald","Vosgienne","V\xE4neko","Waguli","Wagyu","Wangus","Wedit","Welsh Black","Western Finncattle","White C\xE1ceres","White Fulani","White Lamphun","White Park","Whitebred Shorthorn","Xedit","Xingjiang Brown","Yakutian","Yanbian","Yanhuang","Yedit","Yurino","Zebu","Zedit","\xC9vol\xE8ne cattle","\u017Bubro\u0144"];var d=["African Slender-snouted Crocodile","Alligator mississippiensis","American Crocodile","Australian Freshwater Crocodile","Black Caiman","Broad-snouted Caiman","Chinese Alligator","Cuban Crocodile","Cuvier\u2019s Dwarf Caiman","Dwarf Crocodile","Gharial","Morelet\u2019s Crocodile","Mugger Crocodile","New Guinea Freshwater Crocodile","Nile Crocodile","Orinoco Crocodile","Philippine Crocodile","Saltwater Crocodile","Schneider\u2019s Smooth-fronted Caiman","Siamese Crocodile","Spectacled Caiman","Tomistoma","West African Crocodile","Yacare Caiman"];var u=["Affenpinscher","Afghan Hound","Aidi","Airedale Terrier","Akbash","Akita","Alano Espa\xF1ol","Alapaha Blue Blood Bulldog","Alaskan Husky","Alaskan Klee Kai","Alaskan Malamute","Alopekis","Alpine Dachsbracke","American Bulldog","American Bully","American Cocker Spaniel","American English Coonhound","American Foxhound","American Hairless Terrier","American Pit Bull Terrier","American Staffordshire Terrier","American Water Spaniel","Andalusian Hound","Anglo-Fran\xE7ais de Petite V\xE9nerie","Appenzeller Sennenhund","Ariegeois","Armant","Armenian Gampr dog","Artois Hound","Australian Cattle Dog","Australian Kelpie","Australian Shepherd","Australian Stumpy Tail Cattle Dog","Australian Terrier","Austrian Black and Tan Hound","Austrian Pinscher","Azawakh","Bakharwal dog","Banjara Hound","Barbado da Terceira","Barbet","Basenji","Basque Shepherd Dog","Basset Art\xE9sien Normand","Basset Bleu de Gascogne","Basset Fauve de Bretagne","Basset Hound","Bavarian Mountain Hound","Beagle","Beagle-Harrier","Bearded Collie","Beauceron","Bedlington Terrier","Belgian Shepherd","Bergamasco Shepherd","Berger Picard","Bernese Mountain Dog","Bhotia","Bichon Fris\xE9","Billy","Black Mouth Cur","Black Norwegian Elkhound","Black Russian Terrier","Black and Tan Coonhound","Bloodhound","Blue Lacy","Blue Picardy Spaniel","Bluetick Coonhound","Boerboel","Bohemian Shepherd","Bolognese","Border Collie","Border Terrier","Borzoi","Bosnian Coarse-haired Hound","Boston Terrier","Bouvier des Ardennes","Bouvier des Flandres","Boxer","Boykin Spaniel","Bracco Italiano","Braque Francais","Braque Saint-Germain","Braque d'Auvergne","Braque de l'Ari\xE8ge","Braque du Bourbonnais","Briard","Briquet Griffon Vend\xE9en","Brittany","Broholmer","Bruno Jura Hound","Brussels Griffon","Bucovina Shepherd Dog","Bull Arab","Bull Terrier","Bulldog","Bullmastiff","Bully Kutta","Burgos Pointer","Cairn Terrier","Campeiro Bulldog","Can de Chira","Canaan Dog","Canadian Eskimo Dog","Cane Corso","Cane Paratore","Cane di Oropa","Cantabrian Water Dog","Cardigan Welsh Corgi","Carea Castellano Manchego","Carolina Dog","Carpathian Shepherd Dog","Catahoula Leopard Dog","Catalan Sheepdog","Caucasian Shepherd Dog","Cavalier King Charles Spaniel","Central Asian Shepherd Dog","Cesky Fousek","Cesky Terrier","Chesapeake Bay Retriever","Chien Fran\xE7ais Blanc et Noir","Chien Fran\xE7ais Blanc et Orange","Chien Fran\xE7ais Tricolore","Chihuahua","Chilean Terrier","Chinese Chongqing Dog","Chinese Crested Dog","Chinook","Chippiparai","Chongqing dog","Chortai","Chow Chow","Cimarr\xF3n Uruguayo","Cirneco dell'Etna","Clumber Spaniel","Colombian fino hound","Coton de Tulear","Cretan Hound","Croatian Sheepdog","Curly-Coated Retriever","Cursinu","Czechoslovakian Wolfdog","C\xE3o Fila de S\xE3o Miguel","C\xE3o da Serra de Aires","C\xE3o de Castro Laboreiro","C\xE3o de Gado Transmontano","Dachshund","Dalmatian","Dandie Dinmont Terrier","Danish-Swedish Farmdog","Denmark Feist","Dingo","Doberman Pinscher","Dogo Argentino","Dogo Guatemalteco","Dogo Sardesco","Dogue Brasileiro","Dogue de Bordeaux","Drentse Patrijshond","Drever","Dunker","Dutch Shepherd","Dutch Smoushond","East European Shepherd","East Siberian Laika","English Cocker Spaniel","English Foxhound","English Mastiff","English Setter","English Shepherd","English Springer Spaniel","English Toy Terrier","Entlebucher Mountain Dog","Estonian Hound","Estrela Mountain Dog","Eurasier","Field Spaniel","Fila Brasileiro","Finnish Hound","Finnish Lapphund","Finnish Spitz","Flat-Coated Retriever","French Bulldog","French Spaniel","Galgo Espa\xF1ol","Galician Shepherd Dog","Garafian Shepherd","Gascon Saintongeois","Georgian Shepherd","German Hound","German Longhaired Pointer","German Pinscher","German Roughhaired Pointer","German Shepherd Dog","German Shorthaired Pointer","German Spaniel","German Spitz","German Wirehaired Pointer","Giant Schnauzer","Glen of Imaal Terrier","Golden Retriever","Gordon Setter","Go\u0144czy Polski","Grand Anglo-Fran\xE7ais Blanc et Noir","Grand Anglo-Fran\xE7ais Blanc et Orange","Grand Anglo-Fran\xE7ais Tricolore","Grand Basset Griffon Vend\xE9en","Grand Bleu de Gascogne","Grand Griffon Vend\xE9en","Great Dane","Greater Swiss Mountain Dog","Greek Harehound","Greek Shepherd","Greenland Dog","Greyhound","Griffon Bleu de Gascogne","Griffon Fauve de Bretagne","Griffon Nivernais","Gull Dong","Gull Terrier","Hamiltonst\xF6vare","Hanover Hound","Harrier","Havanese","Hierran Wolfdog","Hokkaido","Hovawart","Huntaway","Hygen Hound","H\xE4llefors Elkhound","Ibizan Hound","Icelandic Sheepdog","Indian Spitz","Indian pariah dog","Irish Red and White Setter","Irish Setter","Irish Terrier","Irish Water Spaniel","Irish Wolfhound","Istrian Coarse-haired Hound","Istrian Shorthaired Hound","Italian Greyhound","Jack Russell Terrier","Jagdterrier","Japanese Chin","Japanese Spitz","Japanese Terrier","Jindo","Jonangi","Kai Ken","Kaikadi","Kangal Shepherd Dog","Kanni","Karakachan dog","Karelian Bear Dog","Kars","Karst Shepherd","Keeshond","Kerry Beagle","Kerry Blue Terrier","King Charles Spaniel","King Shepherd","Kintamani","Kishu","Kokoni","Kombai","Komondor","Kooikerhondje","Koolie","Koyun dog","Kromfohrl\xE4nder","Kuchi","Kuvasz","Labrador Retriever","Lagotto Romagnolo","Lakeland Terrier","Lancashire Heeler","Landseer","Lapponian Herder","Large M\xFCnsterl\xE4nder","Leonberger","Levriero Sardo","Lhasa Apso","Lithuanian Hound","Lupo Italiano","L\xF6wchen","Mackenzie River Husky","Magyar ag\xE1r","Mahratta Greyhound","Maltese","Manchester Terrier","Maremmano-Abruzzese Sheepdog","McNab dog","Miniature American Shepherd","Miniature Bull Terrier","Miniature Fox Terrier","Miniature Pinscher","Miniature Schnauzer","Molossus of Epirus","Montenegrin Mountain Hound","Mountain Cur","Mountain Feist","Mucuchies","Mudhol Hound","Mudi","Neapolitan Mastiff","New Guinea Singing Dog","New Zealand Heading Dog","Newfoundland","Norfolk Terrier","Norrbottenspets","Northern Inuit Dog","Norwegian Buhund","Norwegian Elkhound","Norwegian Lundehund","Norwich Terrier","Nova Scotia Duck Tolling Retriever","Old Croatian Sighthound","Old Danish Pointer","Old English Sheepdog","Old English Terrier","Olde English Bulldogge","Otterhound","Pachon Navarro","Paisley Terrier","Pampas Deerhound","Papillon","Parson Russell Terrier","Pastore della Lessinia e del Lagorai","Patagonian Sheepdog","Patterdale Terrier","Pekingese","Pembroke Welsh Corgi","Perro Majorero","Perro de Pastor Mallorquin","Perro de Presa Canario","Perro de Presa Mallorquin","Peruvian Inca Orchid","Petit Basset Griffon Vend\xE9en","Petit Bleu de Gascogne","Phal\xE8ne","Pharaoh Hound","Phu Quoc Ridgeback","Picardy Spaniel","Plott Hound","Plummer Terrier","Podenco Canario","Podenco Valenciano","Pointer","Poitevin","Polish Greyhound","Polish Hound","Polish Lowland Sheepdog","Polish Tatra Sheepdog","Pomeranian","Pont-Audemer Spaniel","Poodle","Porcelaine","Portuguese Podengo","Portuguese Pointer","Portuguese Water Dog","Posavac Hound","Pra\u017Esk\xFD Krysa\u0159\xEDk","Pshdar Dog","Pudelpointer","Pug","Puli","Pumi","Pungsan Dog","Pyrenean Mastiff","Pyrenean Mountain Dog","Pyrenean Sheepdog","Rafeiro do Alentejo","Rajapalayam","Rampur Greyhound","Rat Terrier","Ratonero Bodeguero Andaluz","Ratonero Mallorquin","Ratonero Murciano de Huerta","Ratonero Valenciano","Redbone Coonhound","Rhodesian Ridgeback","Romanian Mioritic Shepherd Dog","Romanian Raven Shepherd Dog","Rottweiler","Rough Collie","Russian Spaniel","Russian Toy","Russo-European Laika","Saarloos Wolfdog","Sabueso Espa\xF1ol","Saint Bernard","Saint Hubert Jura Hound","Saint-Usuge Spaniel","Saluki","Samoyed","Sapsali","Sarabi dog","Sardinian Shepherd Dog","Schapendoes","Schillerst\xF6vare","Schipperke","Schweizer Laufhund","Schweizerischer Niederlaufhund","Scottish Deerhound","Scottish Terrier","Sealyham Terrier","Segugio Italiano","Segugio Maremmano","Segugio dell'Appennino","Seppala Siberian Sleddog","Serbian Hound","Serbian Tricolour Hound","Serrano Bulldog","Shar Pei","Shetland Sheepdog","Shiba Inu","Shih Tzu","Shikoku","Shiloh Shepherd","Siberian Husky","Silken Windhound","Silky Terrier","Sinhala Hound","Skye Terrier","Sloughi","Slovakian Wirehaired Pointer","Slovensk\xFD Cuvac","Slovensk\xFD Kopov","Smalandst\xF6vare","Small Greek domestic dog","Small M\xFCnsterl\xE4nder","Smooth Collie","Smooth Fox Terrier","Soft-Coated Wheaten Terrier","South Russian Ovcharka","Spanish Mastiff","Spanish Water Dog","Spinone Italiano","Sporting Lucas Terrier","Stabyhoun","Staffordshire Bull Terrier","Standard Schnauzer","Stephens Stock","Styrian Coarse-haired Hound","Sussex Spaniel","Swedish Elkhound","Swedish Lapphund","Swedish Vallhund","Swedish White Elkhound","Taigan","Taiwan Dog","Tamaskan Dog","Teddy Roosevelt Terrier","Telomian","Tenterfield Terrier","Terrier Brasileiro","Thai Bangkaew Dog","Thai Ridgeback","Tibetan Mastiff","Tibetan Spaniel","Tibetan Terrier","Tornjak","Tosa","Toy Fox Terrier","Toy Manchester Terrier","Transylvanian Hound","Treeing Cur","Treeing Feist","Treeing Tennessee Brindle","Treeing Walker Coonhound","Trigg Hound","Tyrolean Hound","Vikhan","Villano de Las Encartaciones","Villanuco de Las Encartaciones","Vizsla","Volpino Italiano","Weimaraner","Welsh Sheepdog","Welsh Springer Spaniel","Welsh Terrier","West Highland White Terrier","West Siberian Laika","Westphalian Dachsbracke","Wetterhoun","Whippet","White Shepherd","White Swiss Shepherd Dog","Wire Fox Terrier","Wirehaired Pointing Griffon","Wirehaired Vizsla","Xiasi Dog","Xoloitzcuintli","Yakutian Laika","Yorkshire Terrier","\u0160arplaninac"];var c=["Alaska pollock","Albacore","Amur catfish","Araucanian herring","Argentine hake","Asari","Asian swamp eel","Atlantic cod","Atlantic herring","Atlantic horse mackerel","Atlantic mackerel","Atlantic menhaden","Atlantic salmon","Bigeye scad","Bigeye tuna","Bighead carp","Black carp","Blood cockle","Blue swimming crab","Blue whiting","Bombay-duck","Bonga shad","California pilchard","Cape horse mackerel","Capelin","Catla","Channel catfish","Chilean jack mackerel","Chinese perch","Chinese softshell turtle","Chub mackerel","Chum salmon","Common carp","Crucian carp","Daggertooth pike conger","European anchovy","European pilchard","European sprat","Filipino Venus","Gazami crab","Goldstripe sardinella","Grass carp","Gulf menhaden","Haddock","Hilsa shad","Indian mackerel","Indian oil sardine","Iridescent shark","Japanese anchovy","Japanese cockle","Japanese common catfish","Japanese flying squid","Japanese jack mackerel","Japanese littleneck","Japanese pilchard","Jumbo flying squid","Kawakawa","Korean bullhead","Largehead hairtail","Longtail tuna","Madeiran sardinella","Mandarin fish","Milkfish","Mrigal carp","Narrow-barred Spanish mackerel","Nile perch","Nile tilapia","North Pacific hake","Northern snakehead","Pacific anchoveta","Pacific cod","Pacific herring","Pacific sand lance","Pacific sandlance","Pacific saury","Pacific thread herring","Peruvian anchoveta","Pink salmon","Pollock","Pond loach","Rainbow trout","Rohu","Round sardinella","Short mackerel","Silver carp","Silver cyprinid","Skipjack tuna","Southern African anchovy","Southern rough shrimp","Whiteleg shrimp","Wuchang bream","Yellow croaker","Yellowfin tuna","Yellowhead catfish","Yellowstripe scad"];var m$1=["Abaco Barb","Abtenauer","Abyssinian","Aegidienberger","Akhal-Teke","Albanian Horse","Altai Horse","Alt\xE8r Real","American Albino","American Cream Draft","American Indian Horse","American Paint Horse","American Quarter Horse","American Saddlebred","American Warmblood","Andalusian Horse","Andravida Horse","Anglo-Arabian","Anglo-Arabo-Sardo","Anglo-Kabarda","Appaloosa","AraAppaloosa","Arabian Horse","Ardennes Horse","Arenberg-Nordkirchen","Argentine Criollo","Asian wild Horse","Assateague Horse","Asturc\xF3n","Augeron","Australian Brumby","Australian Draught Horse","Australian Stock Horse","Austrian Warmblood","Auvergne Horse","Auxois","Azerbaijan Horse","Azteca Horse","Baise Horse","Bale","Balearic Horse","Balikun Horse","Baluchi Horse","Banker Horse","Barb Horse","Bardigiano","Bashkir Curly","Basque Mountain Horse","Bavarian Warmblood","Belgian Half-blood","Belgian Horse","Belgian Warmblood ","Bhutia Horse","Black Forest Horse","Blazer Horse","Boerperd","Borana","Boulonnais Horse","Brabant","Brandenburger","Brazilian Sport Horse","Breton Horse","Brumby","Budyonny Horse","Burguete Horse","Burmese Horse","Byelorussian Harness Horse","Calabrese Horse","Camargue Horse","Camarillo White Horse","Campeiro","Campolina","Canadian Horse","Canadian Pacer","Carolina Marsh Tacky","Carthusian Horse","Caspian Horse","Castilian Horse","Castillonnais","Catria Horse","Cavallo Romano della Maremma Laziale","Cerbat Mustang","Chickasaw Horse","Chilean Corralero","Choctaw Horse","Cleveland Bay","Clydesdale Horse","Cob","Coldblood Trotter","Colonial Spanish Horse","Colorado Ranger","Comtois Horse","Corsican Horse","Costa Rican Saddle Horse","Cretan Horse","Criollo Horse","Croatian Coldblood","Cuban Criollo","Cumberland Island Horse","Curly Horse","Czech Warmblood","Daliboz","Danish Warmblood","Danube Delta Horse","Dole Gudbrandsdal","Don","Dongola Horse","Draft Trotter","Dutch Harness Horse","Dutch Heavy Draft","Dutch Warmblood","Dzungarian Horse","East Bulgarian","East Friesian Horse","Estonian Draft","Estonian Horse","Falabella","Faroese","Finnhorse","Fjord Horse","Fleuve","Florida Cracker Horse","Foutank\xE9","Frederiksborg Horse","Freiberger","French Trotter","Friesian Cross","Friesian Horse","Friesian Sporthorse","Furioso-North Star","Galice\xF1o","Galician Pony","Gelderland Horse","Georgian Grande Horse","German Warmblood","Giara Horse","Gidran","Groningen Horse","Gypsy Horse","Hackney Horse","Haflinger","Hanoverian Horse","Heck Horse","Heihe Horse","Henson Horse","Hequ Horse","Hirzai","Hispano-Bret\xF3n","Holsteiner Horse","Horro","Hungarian Warmblood","Icelandic Horse","Iomud","Irish Draught","Irish Sport Horse sometimes called Irish Hunter","Italian Heavy Draft","Italian Trotter","Jaca Navarra","Jeju Horse","Jutland Horse","Kabarda Horse","Kafa","Kaimanawa Horses","Kalmyk Horse","Karabair","Karabakh Horse","Karachai Horse","Karossier","Kathiawari","Kazakh Horse","Kentucky Mountain Saddle Horse","Kiger Mustang","Kinsky Horse","Kisber Felver","Kiso Horse","Kladruber","Knabstrupper","Konik","Kundudo","Kustanair","Kyrgyz Horse","Latvian Horse","Lipizzan","Lithuanian Heavy Draught","Lokai","Losino Horse","Lusitano","Lyngshest","M'Bayar","M'Par","Mallorqu\xEDn","Malopolski","Mangalarga","Mangalarga Marchador","Maremmano","Marisme\xF1o Horse","Marsh Tacky","Marwari Horse","Mecklenburger","Menorqu\xEDn","Messara Horse","Metis Trotter","Mez\u0151hegyesi Sport Horse","Me\u0111imurje Horse","Miniature Horse","Misaki Horse","Missouri Fox Trotter","Monchina","Mongolian Horse","Mongolian Wild Horse","Monterufolino","Morab","Morgan Horse","Mountain Pleasure Horse","Moyle Horse","Murakoz Horse","Murgese","Mustang Horse","M\xE9rens Horse","Namib Desert Horse","Nangchen Horse","National Show Horse","Nez Perce Horse","Nivernais Horse","Nokota Horse","Noma","Nonius Horse","Nooitgedachter","Nordlandshest","Noriker Horse","Norman Cob","North American Single-Footer Horse","North Swedish Horse","Norwegian Coldblood Trotter","Norwegian Fjord","Novokirghiz","Oberlander Horse","Ogaden","Oldenburg Horse","Orlov trotter","Ostfriesen","Paint","Pampa Horse","Paso Fino","Pentro Horse","Percheron","Persano Horse","Peruvian Paso","Pintabian","Pleven Horse","Poitevin Horse","Posavac Horse","Pottok","Pryor Mountain Mustang","Przewalski's Horse","Pura Raza Espa\xF1ola","Purosangue Orientale","Qatgani","Quarab","Quarter Horse","Racking Horse","Retuerta Horse","Rhenish German Coldblood","Rhinelander Horse","Riwoche Horse","Rocky Mountain Horse","Romanian Sporthorse","Rottaler","Russian Don","Russian Heavy Draft","Russian Trotter","Saddlebred","Salerno Horse","Samolaco Horse","San Fratello Horse","Sarcidano Horse","Sardinian Anglo-Arab","Schleswig Coldblood","Schwarzw\xE4lder Kaltblut","Selale","Sella Italiano","Selle Fran\xE7ais","Shagya Arabian","Shan Horse","Shire Horse","Siciliano Indigeno","Silesian Horse","Sokolsky Horse","Sorraia","South German Coldblood","Soviet Heavy Draft","Spanish Anglo-Arab","Spanish Barb","Spanish Jennet Horse","Spanish Mustang","Spanish Tarpan","Spanish-Norman Horse","Spiti Horse","Spotted Saddle Horse","Standardbred Horse","Suffolk Punch","Swedish Ardennes","Swedish Warmblood","Swedish coldblood trotter","Swiss Warmblood","Taish\u016B Horse","Takhi","Tawleed","Tchernomor","Tennessee Walking Horse","Tersk Horse","Thoroughbred","Tiger Horse","Tinker Horse","Tolfetano","Tori Horse","Trait Du Nord","Trakehner","Tsushima","Tuigpaard","Ukrainian Riding Horse","Unmol Horse","Uzunyayla","Ventasso Horse","Virginia Highlander","Vlaamperd","Vladimir Heavy Draft","Vyatka","Waler","Waler Horse","Walkaloosa","Warlander","Warmblood","Welsh Cob","Westphalian Horse","Wielkopolski","W\xFCrttemberger","Xilingol Horse","Yakutian Horse","Yili Horse","Yonaguni Horse","Zaniskari","Zhemaichu","Zweibr\xFCcker","\u017Demaitukas"];var h=["Acacia-ants","Acorn-plum gall","Aerial yellowjacket","Africanized honey bee","Allegheny mound ant","Almond stone wasp","Ant","Arboreal ant","Argentine ant","Asian paper wasp","Baldfaced hornet","Bee","Bigheaded ant","Black and yellow mud dauber","Black carpenter ant","Black imported fire ant","Blue horntail woodwasp","Blue orchard bee","Braconid wasp","Bumble bee","Carpenter ant","Carpenter wasp","Chalcid wasp","Cicada killer","Citrus blackfly parasitoid","Common paper wasp","Crazy ant","Cuckoo wasp","Cynipid gall wasp","Eastern Carpenter bee","Eastern yellowjacket","Elm sawfly","Encyrtid wasp","Erythrina gall wasp","Eulophid wasp","European hornet","European imported fire ant","False honey ant","Fire ant","Forest bachac","Forest yellowjacket","German yellowjacket","Ghost ant","Giant ichneumon wasp","Giant resin bee","Giant wood wasp","Golden northern bumble bee","Golden paper wasp","Gouty oak gall","Grass Carrying Wasp","Great black wasp","Great golden digger wasp","Hackberry nipple gall parasitoid","Honey bee","Horned oak gall","Horse guard wasp","Hunting wasp","Ichneumonid wasp","Keyhole wasp","Knopper gall","Large garden bumble bee","Large oak-apple gall","Leafcutting bee","Little fire ant","Little yellow ant","Long-horned bees","Long-legged ant","Macao paper wasp","Mallow bee","Marble gall","Mossyrose gall wasp","Mud-daubers","Multiflora rose seed chalcid","Oak apple gall wasp","Oak rough bulletgall wasp","Oak saucer gall","Oak shoot sawfly","Odorous house ant","Orange-tailed bumble bee","Orangetailed potter wasp","Oriental chestnut gall wasp","Paper wasp","Pavement ant","Pigeon tremex","Pip gall wasp","Prairie yellowjacket","Pteromalid wasp","Pyramid ant","Raspberry Horntail","Red ant","Red carpenter ant","Red harvester ant","Red imported fire ant","Red wasp","Red wood ant","Red-tailed wasp","Reddish carpenter ant","Rough harvester ant","Sawfly parasitic wasp","Scale parasitoid","Silky ant","Sirex woodwasp","Siricid woodwasp","Smaller yellow ant","Southeastern blueberry bee","Southern fire ant","Southern yellowjacket","Sphecid wasp","Stony gall","Sweat bee","Texas leafcutting ant","Tiphiid wasp","Torymid wasp","Tramp ant","Valentine ant","Velvet ant","Vespid wasp","Weevil parasitoid","Western harvester ant","Western paper wasp","Western thatching ant","Western yellowjacket","White-horned horntail","Willow shoot sawfly","Woodwasp","Wool sower gall maker","Yellow Crazy Ant","Yellow and black potter wasp","Yellow-horned horntail"];var y=["Asiatic Lion","Barbary Lion","Cape lion","Masai Lion","Northeast Congo Lion","Transvaal lion","West African Lion"];var p$1=["American","American Chinchilla","American Fuzzy Lop","American Sable","Argente Brun","Belgian Hare","Beveren","Blanc de Hotot","Britannia Petite","Californian","Champagne D\u2019Argent","Checkered Giant","Cinnamon","Cr\xE8me D\u2019Argent","Dutch","Dwarf Hotot","English Angora","English Lop","English Spot","Flemish Giant","Florida White","French Angora","French Lop","Giant Angora","Giant Chinchilla","Harlequin","Havana","Himalayan","Holland Lop","Jersey Wooly","Lilac","Lionhead","Mini Lop","Mini Rex","Mini Satin","Netherland Dwarf","New Zealand","Palomino","Polish","Rex","Rhinelander","Satin","Satin Angora","Silver","Silver Fox","Silver Marten","Standard Chinchilla","Tan","Thrianta"];var g=["Abrocoma","Abrocoma schistacea","Aconaemys","Aconaemys porteri","African brush-tailed porcupine","Andean mountain cavy","Argentine tuco-tuco","Ashy chinchilla rat","Asiatic brush-tailed porcupine","Atherurus","Azara's agouti","Azara's tuco-tuco","Bahia porcupine","Bathyergus","Bathyergus janetta","Bathyergus suillus","Bennett's chinchilla rat","Bicolored-spined porcupine","Black agouti","Black dwarf porcupine","Black-rumped agouti","Black-tailed hairy dwarf porcupine","Bolivian chinchilla rat","Bolivian tuco-tuco","Bonetto's tuco-tuco","Brandt's yellow-toothed cavy","Brazilian guinea pig","Brazilian porcupine","Brazilian tuco-tuco","Bridge's degu","Brown hairy dwarf porcupine","Budin's chinchilla rat, A. budini","Cape porcupine","Catamarca tuco-tuco","Cavia","Central American agouti","Chacoan tuco-tuco","Chilean rock rat","Chinchilla","Coendou","Coiban agouti","Colburn's tuco-tuco","Collared tuco-tuco","Common degu","Common yellow-toothed cavy","Conover's tuco-tuco","Coruro","Crested agouti","Crested porcupine","Cryptomys","Cryptomys bocagei","Cryptomys damarensis","Cryptomys foxi","Cryptomys hottentotus","Cryptomys mechowi","Cryptomys ochraceocinereus","Cryptomys zechi","Ctenomys","Cuniculus","Cuscomys","Cuscomys ashanika","Dactylomys","Dactylomys boliviensis","Dactylomys dactylinus","Dactylomys peruanus","Dasyprocta","Domestic guinea pig","Emily's tuco-tuco","Erethizon","Famatina chinchilla rat","Frosted hairy dwarf porcupine","Fukomys","Fukomys amatus","Fukomys anselli","Fukomys bocagei","Fukomys damarensis","Fukomys darlingi","Fukomys foxi","Fukomys ilariae","Fukomys kafuensis","Fukomys mechowii","Fukomys micklemi","Fukomys occlusus","Fukomys ochraceocinereus","Fukomys whytei","Fukomys zechi","Furtive tuco-tuco","Galea","Georychus","Georychus capensis","Golden viscacha-rat","Goya tuco-tuco","Greater guinea pig","Green acouchi","Haig's tuco-tuco","Heliophobius","Heliophobius argenteocinereus","Heterocephalus","Heterocephalus glaber","Highland tuco-tuco","Hystrix","Indian porcupine","Isla Mocha degu","Kalinowski agouti","Kannabateomys","Kannabateomys amblyonyx","Lagidium","Lagostomus","Lewis' tuco-tuco","Long-tailed chinchilla","Long-tailed porcupine","Los Chalchaleros' viscacha-rat","Lowland paca","Magellanic tuco-tuco","Malayan porcupine","Maule tuco-tuco","Mendoza tuco-tuco","Mexican agouti","Mexican hairy dwarf porcupine","Microcavia","Montane guinea pig","Moon-toothed degu","Mottled tuco-tuco","Mountain degu","Mountain paca","Mountain viscacha-rat","Myoprocta","Natterer's tuco-tuco","North American porcupine","Northern viscacha","Octodon","Octodontomys","Octomys","Olallamys","Olallamys albicauda","Olallamys edax","Orinoco agouti","Paraguaian hairy dwarf porcupine","Pearson's tuco-tuco","Peruvian tuco-tuco","Philippine porcupine","Pipanacoctomys","Plains viscacha","Plains viscacha-rat","Porteous' tuco-tuco","Punta de Vacas chinchilla rat","Red acouchi","Red-rumped agouti","Reddish tuco-tuco","Rio Negro tuco-tuco","Robust tuco-tuco","Roosmalen's dwarf porcupine","Rothschild's porcupine","Ruatan Island agouti","Sage's rock rat","Salinoctomys","Salta tuco-tuco","San Luis tuco-tuco","Santa Catarina's guinea pig","Shiny guinea pig","Shipton's mountain cavy","Short-tailed chinchilla","Silky tuco-tuco","Social tuco-tuco","Southern mountain cavy","Southern tuco-tuco","Southern viscacha","Spalacopus","Spix's yellow-toothed cavy","Steinbach's tuco-tuco","Streaked dwarf porcupine","Strong tuco-tuco","Stump-tailed porcupine","Sumatran porcupine","Sunda porcupine","Talas tuco-tuco","Tawny tuco-tuco","Thick-spined porcupine","Tiny tuco-tuco","Trichys","Tucuman tuco-tuco","Tympanoctomys","Uspallata chinchilla rat","White-toothed tuco-tuco","Wolffsohn's viscacha"];var b=["Abaco Island boa","Aesculapian snake","African beaked snake","African puff adder","African rock python","African twig snake","African wolf snake","Amazon tree boa","Amazonian palm viper","American Vine Snake","American copperhead","Amethystine python","Anaconda","Andaman cat snake","Andaman cobra","Angolan python","Annulated sea snake","Arabian cobra","Arafura file snake","Arizona black rattlesnake","Arizona coral snake","Aruba rattlesnake","Asian Vine Snake, Whip Snake","Asian cobra","Asian keelback","Asian pipe snake","Asp","Asp viper","Assam keelback","Australian copperhead","Australian scrub python","Baird's rat snake","Baja California lyresnake","Ball Python","Ball python","Bamboo pitviper","Bamboo viper","Banded Flying Snake","Banded cat-eyed snake","Banded krait","Banded pitviper","Banded water cobra","Barbour's pit viper","Barred wolf snake","Beaked sea snake","Beauty rat snake","Beddome's cat snake","Beddome's coral snake","Bimini racer","Bird snake","Bismarck ringed python","Black headed python","Black krait","Black mamba","Black rat snake","Black snake","Black tree cobra","Black-banded trinket snake","Black-headed snake","Black-necked cobra","Black-necked spitting cobra","Black-speckled palm-pitviper","Black-striped keelback","Black-tailed horned pit viper","Blanding's tree snake","Blind snake","Blonde hognose snake","Blood python","Blue krait","Blunt-headed tree snake","Bluntnose viper","Boa","Boa constrictor","Bocourt's water snake","Boelen python","Boiga","Bolivian anaconda","Boomslang","Bornean pitviper","Borneo short-tailed python","Brahminy blind snake","Brazilian coral snake","Brazilian mud Viper","Brazilian smooth snake","Bredl's python","Brongersma's pitviper","Brown snake","Brown spotted pitviper[4]","Brown tree snake","Brown water python","Brown white-lipped python","Buff striped keelback","Bull snake","Burmese keelback","Burmese krait","Burmese python","Burrowing cobra","Burrowing viper","Bush viper","Bushmaster","Buttermilk racer","Calabar python","California kingsnake","Canebrake","Cantil","Cantor's pitviper","Cape cobra","Cape coral snake","Cape gopher snake","Carpet viper","Cascabel","Caspian cobra","Cat snake","Cat-eyed night snake","Cat-eyed snake","Central American lyre snake","Central ranges taipan","Centralian carpet python","Ceylon krait","Chappell Island tiger snake","Checkered garter snake","Checkered keelback","Chicken snake","Chihuahuan ridge-nosed rattlesnake","Children's python","Chinese tree viper","Coachwhip snake","Coastal carpet python","Coastal taipan","Cobra","Collett's snake","Colorado desert sidewinder","Common adder","Common cobra","Common garter snake","Common ground snake","Common keelback","Common lancehead","Common tiger snake","Common worm snake","Congo snake","Congo water cobra","Copperhead","Coral snake","Corn snake","Coronado Island rattlesnake","Cottonmouth","Crossed viper","Crowned snake","Cuban boa","Cuban wood snake","Cyclades blunt-nosed viper","Dauan Island water python","De Schauensee's anaconda","Death Adder","Desert death adder","Desert kingsnake","Desert woma python","Diamond python","Dog-toothed cat snake","Down's tiger snake","Dubois's sea snake","Dumeril's boa","Durango rock rattlesnake","Dusky pigmy rattlesnake","Dusty hognose snake","Dwarf beaked snake","Dwarf boa","Dwarf pipe snake","Dwarf sand adder","Eastern brown snake","Eastern coral snake","Eastern diamondback rattlesnake","Eastern green mamba","Eastern hognose snake","Eastern lyre snake","Eastern mud snake","Eastern racer","Eastern tiger snake","Eastern water cobra","Eastern yellowbelly sad racer","Egg-eater","Egyptian asp","Egyptian cobra","Elegant pitviper","Emerald tree boa","Equatorial spitting cobra","European asp","European smooth snake","Eyelash palm-pitviper","Eyelash pit viper","Eyelash viper","False cobra","False horned viper","False water cobra","Fan-Si-Pan horned pitviper","Fea's viper","Fer-de-lance","Fierce snake","Fifty pacer","Fishing snake","Flat-nosed pitviper","Flinders python","Flying snake","Forest cobra","Forest flame snake","Forsten's cat snake","Fox snake, three species of Pantherophis","Gaboon viper","Garter snake","Giant Malagasy hognose snake","Godman's pit viper","Gold tree cobra","Gold-ringed cat snake","Golden tree snake","Grand Canyon rattlesnake","Grass snake","Gray cat snake","Great Basin rattlesnake","Great Lakes bush viper","Great Plains rat snake","Green anaconda","Green cat-eyed snake","Green mamba","Green palm viper","Green rat snake","Green snake","Green tree pit viper","Green tree python","Grey Lora","Grey-banded kingsnake","Ground snake","Guatemalan palm viper","Guatemalan tree viper","Habu","Habu pit viper","Hagen's pitviper","Hairy bush viper","Halmahera python","Hardwicke's sea snake","Harlequin coral snake","High Woods coral snake","Hill keelback","Himalayan keelback","Hogg Island boa","Hognose snake","Hognosed viper","Honduran palm viper","Hook Nosed Sea Snake","Hopi rattlesnake","Horned adder","Horned desert viper","Horned viper","Horseshoe pitviper","Hundred pacer","Hutton's tree viper","Ikaheka snake","Indian cobra","Indian flying snake","Indian krait","Indian python","Indian tree viper","Indigo snake","Indochinese spitting cobra","Indonesian water python","Inland carpet python","Inland taipan","Jamaican Tree Snake","Jamaican boa","Jan's hognose snake","Japanese forest rat snake","Japanese rat snake","Japanese striped snake","Javan spitting cobra","Jerdon's pitviper","Jumping viper","Jungle carpet python","Kanburian pit viper","Kaulback's lance-headed pitviper","Kayaudi dwarf reticulated python","Kaznakov's viper","Keelback","Kham Plateau pitviper","Khasi Hills keelback","King Island tiger snake","King brown","King cobra","King rat snake","King snake","Krait","Krefft's tiger snake","Lance-headed rattlesnake","Lancehead","Large shield snake","Large-eyed pitviper","Large-scaled tree viper","Leaf viper","Leaf-nosed viper","Lesser black krait","Levant viper","Long-nosed adder","Long-nosed tree snake","Long-nosed viper","Long-nosed whip snake","Long-tailed rattlesnake","Longnosed worm snake","Lora","Lyre snake","Machete savane","Macklot's python","Madagascar ground boa","Madagascar tree boa","Malabar rock pitviper","Malayan krait","Malayan long-glanded coral snake","Malayan pit viper","Malcolm's tree viper","Mamba","Mamushi","Manchurian Black Water Snake","Mandalay cobra","Mandarin rat snake","Mangrove pit viper","Mangrove snake","Mangshan pitviper","Many-banded krait","Many-banded tree snake","Many-horned adder","Many-spotted cat snake","Massasauga rattlesnake","McMahon's viper","Mexican black kingsnake","Mexican green rattlesnake","Mexican hognose snake","Mexican palm-pitviper","Mexican parrot snake","Mexican racer","Mexican vine snake","Mexican west coast rattlesnake","Midget faded rattlesnake","Milk snake","Moccasin snake","Modest keelback","Mojave desert sidewinder","Mojave rattlesnake","Mole viper","Mollucan python","Moluccan flying snake","Montpellier snake","Motuo bamboo pitviper","Mountain adder","Mozambique spitting cobra","Mud adder","Mud snake","Mussurana","Namaqua dwarf adder","Namib dwarf sand adder","Narrowhead Garter Snake","New Guinea carpet python","Nichell snake","Nicobar Island keelback","Nicobar bamboo pitviper","Night snake","Nightingale adder","Nilgiri keelback","Nitsche's bush viper","Nitsche's tree viper","North Philippine cobra","North eastern king snake","Northeastern hill krait","Northern black-tailed rattlesnake","Northern tree snake","Northern water snake","Northern white-lipped python","Northwestern carpet python","Nose-horned viper","Nubian spitting cobra","Oaxacan small-headed rattlesnake","Oenpelli python","Olive python","Olive sea snake","Orange-collared keelback","Ornate flying snake","Palestine viper","Pallas' viper","Palm viper","Papuan python","Paradise flying snake","Parrot snake","Patchnose snake","Paupan taipan","Pelagic sea snake","Peninsula tiger snake","Peringuey's adder","Perrotet's shieldtail snake","Persian rat snake","Philippine cobra","Philippine pitviper","Pine snake","Pipe snake","Pit viper","Pointed-scaled pit viper[5]","Pope's tree viper","Portuguese viper","Prairie kingsnake","Puerto Rican boa","Puff adder","Pygmy python","Python","Queen snake","Racer","Raddysnake","Rainbow boa","Rat snake","Rattler","Rattlesnake","Red blood python","Red diamond rattlesnake","Red spitting cobra","Red-backed rat snake","Red-bellied black snake","Red-headed krait","Red-necked keelback","Red-tailed bamboo pitviper","Red-tailed boa","Red-tailed pipe snake","Reticulated python","Rhinoceros viper","Rhombic night adder","Ribbon snake","Rinkhals","Rinkhals cobra","River jack","Rosy boa","Rough green snake","Rough-scaled bush viper","Rough-scaled python","Rough-scaled tree viper","Royal python","Rubber boa","Rufous beaked snake","Rungwe tree viper","San Francisco garter snake","Sand adder","Sand boa","Savu python","Saw-scaled viper","Scarlet kingsnake","Schlegel's viper","Schultze's pitviper","Sea snake","Sedge viper","Selayer reticulated python","Sharp-nosed viper","Shield-nosed cobra","Shield-tailed snake","Siamese palm viper","Side-striped palm-pitviper","Sidewinder","Sikkim keelback","Sinai desert cobra","Sind krait","Small-eyed snake","Smooth green snake","Smooth snake","Snorkel viper","Snouted cobra","Sonoran sidewinder","South American hognose snake","South eastern corn snake","Southern Indonesian spitting cobra","Southern Pacific rattlesnake","Southern Philippine cobra","Southern black racer","Southern white-lipped python","Southwestern black spitting cobra","Southwestern blackhead snake","Southwestern carpet python","Southwestern speckled rattlesnake","Speckle-bellied keelback","Speckled kingsnake","Spectacled cobra","Spiny bush viper","Spitting cobra","Spotted python","Sri Lankan pit viper","Stejneger's bamboo pitviper","Stiletto snake","Stimson's python","Stoke's sea snake","Storm water cobra","Striped snake","Sumatran short-tailed python","Sumatran tree viper","Sunbeam snake","Taipan","Taiwan cobra","Tan racer","Tancitaran dusky rattlesnake","Tanimbar python","Tasmanian tiger snake","Tawny cat snake","Temple pit viper","Temple viper","Tentacled snake","Texas Coral Snake","Texas blind snake","Texas garter snake","Texas lyre snake","Texas night snake","Thai cobra","Three-lined ground snake","Tibetan bamboo pitviper","Tic polonga","Tiger pit viper","Tiger rattlesnake","Tiger snake","Tigre snake","Timber rattlesnake","Timor python","Titanboa","Tree boa","Tree snake","Tree viper","Trinket snake","Tropical rattlesnake","Twig snake","Twin Headed King Snake","Twin-Barred tree snake","Twin-spotted rat snake","Twin-spotted rattlesnake","Undulated pit viper","Uracoan rattlesnake","Ursini's viper","Urutu","Vine snake","Viper","Viper Adder","Vipera ammodytes","Wagler's pit viper","Wart snake","Water adder","Water moccasin","Water snake","West Indian racer","Western blind snake","Western carpet python","Western coral snake","Western diamondback rattlesnake","Western green mamba","Western ground snake","Western hog-nosed viper","Western mud snake","Western tiger snake","Western woma python","Wetar Island python","Whip snake","White-lipped keelback","White-lipped python","White-lipped tree viper","Wirot's pit viper","Wolf snake","Woma python","Worm snake","Wutu","Wynaad keelback","Yarara","Yellow anaconda","Yellow-banded sea snake","Yellow-bellied sea snake","Yellow-lined palm viper","Yellow-lipped sea snake","Yellow-striped rat snake","Yunnan keelback","Zebra snake","Zebra spitting cobra"];var S=["bat","bear","bee","bird","butterfly","cat","cow","crocodile","deer","dog","dolphin","eagle","elephant","fish","flamingo","fox","frog","gecko","giraffe","gorilla","hamster","hippopotamus","horse","kangaroo","koala","lion","monkey","ostrich","panda","parrot","peacock","penguin","polar bear","rabbit","rhinoceros","sea lion","shark","snake","squirrel","tiger","turtle","whale","wolf","zebra"];var Ia={bear:n,bird:i,cat:t,cetacean:l,cow:s,crocodilia:d,dog:u,fish:c,horse:m$1,insect:h,lion:y,rabbit:p$1,rodent:g,snake:b,type:S},k=Ia;var C$1=["{{person.name}}","{{company.name}}"];var f$1=["Redhold","Treeflex","Trippledex","Kanlam","Bigtax","Daltfresh","Toughjoyfax","Mat Lam Tam","Otcom","Tres-Zap","Y-Solowarm","Tresom","Voltsillam","Biodex","Greenlam","Viva","Matsoft","Temp","Zoolab","Subin","Rank","Job","Stringtough","Tin","It","Home Ing","Zamit","Sonsing","Konklab","Alpha","Latlux","Voyatouch","Alphazap","Holdlamis","Zaam-Dox","Sub-Ex","Quo Lux","Bamity","Ventosanzap","Lotstring","Hatity","Tempsoft","Overhold","Fixflex","Konklux","Zontrax","Tampflex","Span","Namfix","Transcof","Stim","Fix San","Sonair","Stronghold","Fintone","Y-find","Opela","Lotlux","Ronstring","Zathin","Duobam","Keylex"];var v$1=["0.#.#","0.##","#.##","#.#","#.#.#"];var Ka={author:C$1,name:f$1,version:v$1},A=Ka;var B$1=["###-###-####","(###) ###-####","1-###-###-####","###.###.####"];var Oa={formats:B$1},w$1=Oa;var M$1=["azure","black","blue","cyan","fuchsia","gold","green","grey","indigo","ivory","lavender","lime","magenta","maroon","mint green","olive","orange","orchid","pink","plum","purple","red","salmon","silver","sky blue","tan","teal","turquoise","violet","white","yellow"];var xa={human:M$1},T=xa;var L$1=["Automotive","Baby","Beauty","Books","Clothing","Computers","Electronics","Games","Garden","Grocery","Health","Home","Industrial","Jewelry","Kids","Movies","Music","Outdoors","Shoes","Sports","Tools","Toys"];var D$1=["Andy shoes are designed to keeping in mind durability as well as trends, the most stylish range of shoes & sandals","Boston's most advanced compression wear technology increases muscle oxygenation, stabilizes active muscles","Carbonite web goalkeeper gloves are ergonomically designed to give easy fit","Ergonomic executive chair upholstered in bonded black leather and PVC padded seat and back for all-day comfort and support","New ABC 13 9370, 13.3, 5th Gen CoreA5-8250U, 8GB RAM, 256GB SSD, power UHD Graphics, OS 10 Home, OS Office A & J 2016","New range of formal shirts are designed keeping you in mind. With fits and styling that will make you stand apart","The Apollotech B340 is an affordable wireless mouse with reliable connectivity, 12 months battery life and modern design","The Football Is Good For Training And Recreational Purposes","The Nagasaki Lander is the trademarked name of several series of Nagasaki sport bikes, that started with the 1984 ABC800J","The automobile layout consists of a front-engine design, with transaxle-type transmissions mounted at the rear of the engine and four wheel drive","The beautiful range of Apple Natural\xE9 that has an exciting mix of natural ingredients. With the Goodness of 100% Natural Ingredients","The slim & simple Maple Gaming Keyboard from Dev Byte comes with a sleek body and 7- Color RGB LED Back-lighting for smart functionality"];var R$1={adjective:["Awesome","Bespoke","Electronic","Elegant","Ergonomic","Fantastic","Generic","Gorgeous","Handcrafted","Handmade","Incredible","Intelligent","Licensed","Luxurious","Modern","Oriental","Practical","Recycled","Refined","Rustic","Sleek","Small","Tasty","Unbranded"],material:["Bronze","Concrete","Cotton","Fresh","Frozen","Granite","Metal","Plastic","Rubber","Soft","Steel","Wooden"],product:["Bacon","Ball","Bike","Car","Chair","Cheese","Chicken","Chips","Computer","Fish","Gloves","Hat","Keyboard","Mouse","Pants","Pizza","Salad","Sausages","Shirt","Shoes","Soap","Table","Towels","Tuna"]};var za={department:L$1,product_description:D$1,product_name:R$1},H$1=za;var P=["Adaptive","Advanced","Ameliorated","Assimilated","Automated","Balanced","Business-focused","Centralized","Cloned","Compatible","Configurable","Cross-group","Cross-platform","Customer-focused","Customizable","De-engineered","Decentralized","Devolved","Digitized","Distributed","Diverse","Down-sized","Enhanced","Enterprise-wide","Ergonomic","Exclusive","Expanded","Extended","Face to face","Focused","Front-line","Fully-configurable","Function-based","Fundamental","Future-proofed","Grass-roots","Horizontal","Implemented","Innovative","Integrated","Intuitive","Inverse","Managed","Mandatory","Monitored","Multi-channelled","Multi-lateral","Multi-layered","Multi-tiered","Networked","Object-based","Open-architected","Open-source","Operative","Optimized","Optional","Organic","Organized","Persevering","Persistent","Phased","Polarised","Pre-emptive","Proactive","Profit-focused","Profound","Programmable","Progressive","Public-key","Quality-focused","Re-contextualized","Re-engineered","Reactive","Realigned","Reduced","Reverse-engineered","Right-sized","Robust","Seamless","Secured","Self-enabling","Sharable","Stand-alone","Streamlined","Switchable","Synchronised","Synergistic","Synergized","Team-oriented","Total","Triple-buffered","Universal","Up-sized","Upgradable","User-centric","User-friendly","Versatile","Virtual","Vision-oriented","Visionary"];var W$1=["24/365","24/7","B2B","B2C","back-end","best-of-breed","bleeding-edge","bricks-and-clicks","clicks-and-mortar","collaborative","compelling","cross-media","cross-platform","customized","cutting-edge","distributed","dot-com","dynamic","e-business","efficient","end-to-end","enterprise","extensible","frictionless","front-end","global","granular","holistic","impactful","innovative","integrated","interactive","intuitive","killer","leading-edge","magnetic","mission-critical","next-generation","one-to-one","open-source","out-of-the-box","plug-and-play","proactive","real-time","revolutionary","rich","robust","scalable","seamless","sexy","sticky","strategic","synergistic","transparent","turn-key","ubiquitous","user-centric","value-added","vertical","viral","virtual","visionary","web-enabled","wireless","world-class"];var G$1=["ROI","action-items","applications","architectures","bandwidth","blockchains","channels","communities","content","convergence","deliverables","e-business","e-commerce","e-markets","experiences","eyeballs","functionalities","infrastructures","initiatives","interfaces","lifetime value","markets","methodologies","metrics","mindshare","models","networks","niches","paradigms","partnerships","platforms","portals","relationships","schemas","solutions","supply-chains","synergies","systems","technologies","users","web services"];var N$1=["aggregate","architect","benchmark","brand","cultivate","deliver","deploy","disintermediate","drive","e-enable","embrace","empower","enable","engage","engineer","enhance","envisioneer","evolve","expedite","exploit","extend","facilitate","generate","grow","harness","implement","incentivize","incubate","innovate","integrate","iterate","leverage","matrix","maximize","mesh","monetize","morph","optimize","orchestrate","productize","recontextualize","redefine","reintermediate","reinvent","repurpose","revolutionize","scale","seize","strategize","streamline","syndicate","synergize","synthesize","target","transform","transition","unleash","utilize","visualize","whiteboard"];var E$1=["24 hour","24/7","3rd generation","4th generation","5th generation","6th generation","actuating","analyzing","asymmetric","asynchronous","attitude-oriented","background","bandwidth-monitored","bi-directional","bifurcated","bottom-line","clear-thinking","client-driven","client-server","coherent","cohesive","composite","content-based","context-sensitive","contextually-based","dedicated","demand-driven","didactic","directional","discrete","disintermediate","dynamic","eco-centric","empowering","encompassing","even-keeled","executive","explicit","exuding","fault-tolerant","foreground","fresh-thinking","full-range","global","grid-enabled","heuristic","high-level","holistic","homogeneous","human-resource","hybrid","impactful","incremental","intangible","interactive","intermediate","leading edge","local","logistical","maximized","methodical","mission-critical","mobile","modular","motivating","multi-state","multi-tasking","multimedia","national","needs-based","neutral","next generation","non-volatile","object-oriented","optimal","optimizing","radical","real-time","reciprocal","regional","responsive","scalable","secondary","solution-oriented","stable","static","system-worthy","systematic","systemic","tangible","tertiary","transitional","uniform","upward-trending","user-facing","value-added","web-enabled","well-modulated","zero administration","zero defect","zero tolerance"];var F$1=["Group","Inc","LLC","and Sons"];var J$1=["{{person.last_name.generic}} - {{person.last_name.generic}}","{{person.last_name.generic}} {{company.legal_entity_type}}","{{person.last_name.generic}}, {{person.last_name.generic}} and {{person.last_name.generic}}"];var I$1=["Graphic Interface","Graphical User Interface","ability","access","adapter","algorithm","alliance","analyzer","application","approach","architecture","archive","array","artificial intelligence","attitude","benchmark","budgetary management","capability","capacity","challenge","circuit","collaboration","complexity","concept","conglomeration","contingency","core","customer loyalty","data-warehouse","database","definition","emulation","encoding","encryption","extranet","firmware","flexibility","focus group","forecast","frame","framework","function","functionalities","groupware","hardware","help-desk","hierarchy","hub","implementation","info-mediaries","infrastructure","initiative","installation","instruction set","interface","internet solution","intranet","knowledge base","knowledge user","leverage","local area network","matrices","matrix","methodology","middleware","migration","model","moderator","monitoring","moratorium","neural-net","open architecture","open system","orchestration","paradigm","parallelism","policy","portal","pricing structure","process improvement","product","productivity","project","projection","protocol","secured line","service-desk","software","solution","standardization","strategy","structure","success","superstructure","support","synergy","system engine","task-force","throughput","time-frame","toolset","utilisation","website","workforce"];var Va={adjective:P,buzz_adjective:W$1,buzz_noun:G$1,buzz_verb:N$1,descriptor:E$1,legal_entity_type:F$1,name_pattern:J$1,noun:I$1},K$1=Va;var O$1=["avatar","category","comment","createdAt","email","group","id","name","password","phone","status","title","token","updatedAt"];var Ya={column:O$1},x$1=Ya;var z$1={wide:["April","August","December","February","January","July","June","March","May","November","October","September"],abbr:["Apr","Aug","Dec","Feb","Jan","Jul","Jun","Mar","May","Nov","Oct","Sep"]};var V$1={wide:["Friday","Monday","Saturday","Sunday","Thursday","Tuesday","Wednesday"],abbr:["Fri","Mon","Sat","Sun","Thu","Tue","Wed"]};var ja={month:z$1,weekday:V$1},Y$1=ja;var j$1=["Auto Loan","Checking","Credit Card","Home Loan","Investment","Money Market","Personal Loan","Savings"];var q$1=["34##-######-####L","37##-######-####L"];var U$1=["30[0-5]#-######-###L","36##-######-###L","54##-####-####-###L"];var Z$1=["6011-####-####-###L","6011-62##-####-####-###L","64[4-9]#-####-####-###L","64[4-9]#-62##-####-####-###L","65##-####-####-###L","65##-62##-####-####-###L"];var _$1=["3528-####-####-###L","3529-####-####-###L","35[3-8]#-####-####-###L"];var Q$1=["2[221-720]-####-####-###L","5[1-5]##-####-####-###L"];var X$1=["4###########L","4###-####-####-###L"];var qa={american_express:q$1,diners_club:U$1,discover:Z$1,jcb:_$1,mastercard:Q$1,visa:X$1},$$1=qa;var ee$1=[{name:"UAE Dirham",code:"AED",symbol:""},{name:"Afghani",code:"AFN",symbol:"\u060B"},{name:"Lek",code:"ALL",symbol:"Lek"},{name:"Armenian Dram",code:"AMD",symbol:""},{name:"Netherlands Antillian Guilder",code:"ANG",symbol:"\u0192"},{name:"Kwanza",code:"AOA",symbol:""},{name:"Argentine Peso",code:"ARS",symbol:"$"},{name:"Australian Dollar",code:"AUD",symbol:"$"},{name:"Aruban Guilder",code:"AWG",symbol:"\u0192"},{name:"Azerbaijanian Manat",code:"AZN",symbol:"\u043C\u0430\u043D"},{name:"Convertible Marks",code:"BAM",symbol:"KM"},{name:"Barbados Dollar",code:"BBD",symbol:"$"},{name:"Taka",code:"BDT",symbol:""},{name:"Bulgarian Lev",code:"BGN",symbol:"\u043B\u0432"},{name:"Bahraini Dinar",code:"BHD",symbol:""},{name:"Burundi Franc",code:"BIF",symbol:""},{name:"Bermudian Dollar (customarily known as Bermuda Dollar)",code:"BMD",symbol:"$"},{name:"Brunei Dollar",code:"BND",symbol:"$"},{name:"Boliviano boliviano",code:"BOB",symbol:"Bs"},{name:"Brazilian Real",code:"BRL",symbol:"R$"},{name:"Bahamian Dollar",code:"BSD",symbol:"$"},{name:"Pula",code:"BWP",symbol:"P"},{name:"Belarusian Ruble",code:"BYN",symbol:"Rbl"},{name:"Belize Dollar",code:"BZD",symbol:"BZ$"},{name:"Canadian Dollar",code:"CAD",symbol:"$"},{name:"Congolese Franc",code:"CDF",symbol:""},{name:"Swiss Franc",code:"CHF",symbol:"CHF"},{name:"Chilean Peso",code:"CLP",symbol:"$"},{name:"Yuan Renminbi",code:"CNY",symbol:"\xA5"},{name:"Colombian Peso",code:"COP",symbol:"$"},{name:"Costa Rican Colon",code:"CRC",symbol:"\u20A1"},{name:"Cuban Peso",code:"CUP",symbol:"\u20B1"},{name:"Cape Verde Escudo",code:"CVE",symbol:""},{name:"Czech Koruna",code:"CZK",symbol:"K\u010D"},{name:"Djibouti Franc",code:"DJF",symbol:""},{name:"Danish Krone",code:"DKK",symbol:"kr"},{name:"Dominican Peso",code:"DOP",symbol:"RD$"},{name:"Algerian Dinar",code:"DZD",symbol:""},{name:"Egyptian Pound",code:"EGP",symbol:"\xA3"},{name:"Nakfa",code:"ERN",symbol:""},{name:"Ethiopian Birr",code:"ETB",symbol:""},{name:"Euro",code:"EUR",symbol:"\u20AC"},{name:"Fiji Dollar",code:"FJD",symbol:"$"},{name:"Falkland Islands Pound",code:"FKP",symbol:"\xA3"},{name:"Pound Sterling",code:"GBP",symbol:"\xA3"},{name:"Lari",code:"GEL",symbol:""},{name:"Cedi",code:"GHS",symbol:""},{name:"Gibraltar Pound",code:"GIP",symbol:"\xA3"},{name:"Dalasi",code:"GMD",symbol:""},{name:"Guinea Franc",code:"GNF",symbol:""},{name:"Quetzal",code:"GTQ",symbol:"Q"},{name:"Guyana Dollar",code:"GYD",symbol:"$"},{name:"Hong Kong Dollar",code:"HKD",symbol:"$"},{name:"Lempira",code:"HNL",symbol:"L"},{name:"Gourde",code:"HTG",symbol:""},{name:"Forint",code:"HUF",symbol:"Ft"},{name:"Rupiah",code:"IDR",symbol:"Rp"},{name:"New Israeli Sheqel",code:"ILS",symbol:"\u20AA"},{name:"Bhutanese Ngultrum",code:"BTN",symbol:"Nu"},{name:"Indian Rupee",code:"INR",symbol:"\u20B9"},{name:"Iraqi Dinar",code:"IQD",symbol:""},{name:"Iranian Rial",code:"IRR",symbol:"\uFDFC"},{name:"Iceland Krona",code:"ISK",symbol:"kr"},{name:"Jamaican Dollar",code:"JMD",symbol:"J$"},{name:"Jordanian Dinar",code:"JOD",symbol:""},{name:"Yen",code:"JPY",symbol:"\xA5"},{name:"Kenyan Shilling",code:"KES",symbol:""},{name:"Som",code:"KGS",symbol:"\u043B\u0432"},{name:"Riel",code:"KHR",symbol:"\u17DB"},{name:"Comoro Franc",code:"KMF",symbol:""},{name:"North Korean Won",code:"KPW",symbol:"\u20A9"},{name:"Won",code:"KRW",symbol:"\u20A9"},{name:"Kuwaiti Dinar",code:"KWD",symbol:""},{name:"Cayman Islands Dollar",code:"KYD",symbol:"$"},{name:"Tenge",code:"KZT",symbol:"\u043B\u0432"},{name:"Kip",code:"LAK",symbol:"\u20AD"},{name:"Lebanese Pound",code:"LBP",symbol:"\xA3"},{name:"Sri Lanka Rupee",code:"LKR",symbol:"\u20A8"},{name:"Liberian Dollar",code:"LRD",symbol:"$"},{name:"Libyan Dinar",code:"LYD",symbol:""},{name:"Moroccan Dirham",code:"MAD",symbol:""},{name:"Moldovan Leu",code:"MDL",symbol:""},{name:"Malagasy Ariary",code:"MGA",symbol:""},{name:"Denar",code:"MKD",symbol:"\u0434\u0435\u043D"},{name:"Kyat",code:"MMK",symbol:""},{name:"Tugrik",code:"MNT",symbol:"\u20AE"},{name:"Pataca",code:"MOP",symbol:""},{name:"Ouguiya",code:"MRU",symbol:""},{name:"Mauritius Rupee",code:"MUR",symbol:"\u20A8"},{name:"Rufiyaa",code:"MVR",symbol:""},{name:"Kwacha",code:"MWK",symbol:""},{name:"Mexican Peso",code:"MXN",symbol:"$"},{name:"Malaysian Ringgit",code:"MYR",symbol:"RM"},{name:"Metical",code:"MZN",symbol:"MT"},{name:"Naira",code:"NGN",symbol:"\u20A6"},{name:"Cordoba Oro",code:"NIO",symbol:"C$"},{name:"Norwegian Krone",code:"NOK",symbol:"kr"},{name:"Nepalese Rupee",code:"NPR",symbol:"\u20A8"},{name:"New Zealand Dollar",code:"NZD",symbol:"$"},{name:"Rial Omani",code:"OMR",symbol:"\uFDFC"},{name:"Balboa",code:"PAB",symbol:"B/."},{name:"Nuevo Sol",code:"PEN",symbol:"S/."},{name:"Kina",code:"PGK",symbol:""},{name:"Philippine Peso",code:"PHP",symbol:"Php"},{name:"Pakistan Rupee",code:"PKR",symbol:"\u20A8"},{name:"Zloty",code:"PLN",symbol:"z\u0142"},{name:"Guarani",code:"PYG",symbol:"Gs"},{name:"Qatari Rial",code:"QAR",symbol:"\uFDFC"},{name:"New Leu",code:"RON",symbol:"lei"},{name:"Serbian Dinar",code:"RSD",symbol:"\u0414\u0438\u043D."},{name:"Russian Ruble",code:"RUB",symbol:"\u0440\u0443\u0431"},{name:"Rwanda Franc",code:"RWF",symbol:""},{name:"Saudi Riyal",code:"SAR",symbol:"\uFDFC"},{name:"Solomon Islands Dollar",code:"SBD",symbol:"$"},{name:"Seychelles Rupee",code:"SCR",symbol:"\u20A8"},{name:"Sudanese Pound",code:"SDG",symbol:""},{name:"Swedish Krona",code:"SEK",symbol:"kr"},{name:"Singapore Dollar",code:"SGD",symbol:"$"},{name:"Saint Helena Pound",code:"SHP",symbol:"\xA3"},{name:"Leone",code:"SLE",symbol:""},{name:"Somali Shilling",code:"SOS",symbol:"S"},{name:"Surinam Dollar",code:"SRD",symbol:"$"},{name:"South Sudanese pound",code:"SSP",symbol:""},{name:"Dobra",code:"STN",symbol:"Db"},{name:"Syrian Pound",code:"SYP",symbol:"\xA3"},{name:"Lilangeni",code:"SZL",symbol:""},{name:"Baht",code:"THB",symbol:"\u0E3F"},{name:"Somoni",code:"TJS",symbol:""},{name:"Manat",code:"TMT",symbol:""},{name:"Tunisian Dinar",code:"TND",symbol:""},{name:"Pa'anga",code:"TOP",symbol:""},{name:"Turkish Lira",code:"TRY",symbol:"\u20BA"},{name:"Trinidad and Tobago Dollar",code:"TTD",symbol:"TT$"},{name:"New Taiwan Dollar",code:"TWD",symbol:"NT$"},{name:"Tanzanian Shilling",code:"TZS",symbol:""},{name:"Hryvnia",code:"UAH",symbol:"\u20B4"},{name:"Uganda Shilling",code:"UGX",symbol:""},{name:"US Dollar",code:"USD",symbol:"$"},{name:"Peso Uruguayo",code:"UYU",symbol:"$U"},{name:"Uzbekistan Sum",code:"UZS",symbol:"\u043B\u0432"},{name:"Venezuelan bol\xEDvar",code:"VES",symbol:"Bs"},{name:"Dong",code:"VND",symbol:"\u20AB"},{name:"Vatu",code:"VUV",symbol:""},{name:"Tala",code:"WST",symbol:""},{name:"CFA Franc BEAC",code:"XAF",symbol:""},{name:"East Caribbean Dollar",code:"XCD",symbol:"$"},{name:"CFA Franc BCEAO",code:"XOF",symbol:""},{name:"CFP Franc",code:"XPF",symbol:""},{name:"Yemeni Rial",code:"YER",symbol:"\uFDFC"},{name:"Rand",code:"ZAR",symbol:"R"},{name:"Lesotho Loti",code:"LSL",symbol:""},{name:"Namibia Dollar",code:"NAD",symbol:"N$"},{name:"Zambian Kwacha",code:"ZMW",symbol:"K"},{name:"Zimbabwe Dollar",code:"ZWL",symbol:""}];var ae$1=["deposit","invoice","payment","withdrawal"];var Ua={account_type:j$1,credit_card:$$1,currency:ee$1,transaction_type:ae$1},oe$1=Ua;var re$1=["bitter","creamy","crispy","crunchy","delicious","fluffy","fresh","golden","juicy","moist","rich","salty","savory","smoky","sour","spicy","sweet","tangy","tender","zesty"];var ne$1=["A classic pie filled with delicious {{food.meat}} and {{food.adjective}} {{food.ingredient}}, baked in a {{food.adjective}} pastry crust and topped with a golden-brown lattice.","A delightful tart combining {{food.adjective}} {{food.vegetable}} and sweet {{food.fruit}}, set in a buttery pastry shell and finished with a hint of {{food.spice}}.","A heartwarming {{food.ethnic_category}} soup, featuring fresh {{food.ingredient}} and an aromatic blend of traditional spices.","A robust {{food.adjective}} stew featuring {{food.ethnic_category}} flavors, loaded with {{food.adjective}} meat, {{food.adjective}} vegetables, and a {{food.adjective}}, {{food.adjective}} broth.","A simple {{food.fruit}} pie. No fancy stuff. Just pie.","A slow-roasted {{animal.bird}} with a {{food.adjective}}, {{food.adjective}} exterior. Stuffed with {{food.fruit}} and covered in {{food.fruit}} sauce. Sides with {{food.vegetable}} puree and wild {{food.vegetable}}.","A special {{color.human}} {{food.ingredient}} from {{location.country}}. To support the strong flavor it is sided with a tablespoon of {{food.spice}}.","A succulent {{food.meat}} steak, encased in a {{food.adjective}} {{food.spice}} crust, served with a side of {{food.spice}} mashed {{food.vegetable}}.","An exquisite {{food.meat}} roast, infused with the essence of {{food.fruit}}, slow-roasted to bring out its natural flavors and served with a side of creamy {{food.vegetable}}","Baked {{food.ingredient}}-stuffed {{food.meat}}, seasoned with {{food.spice}} and {{food.adjective}} herbs, accompanied by roasted {{food.vegetable}} medley.","Crispy fried {{food.meat}} bites, seasoned with {{food.spice}} and served with a tangy {{food.fruit}} dipping sauce.","Fresh mixed greens tossed with {{food.spice}}-rubbed {{food.meat}}, {{food.vegetable}}, and a light dressing.","Fresh {{food.ingredient}} with a pinch of {{food.spice}}, topped by a caramelized {{food.fruit}} with whipped cream","Grilled {{food.meat}} kebabs, marinated in {{food.ethnic_category}} spices and served with a fresh {{food.vegetable}} and {{food.fruit}} salad.","Hearty {{food.ingredient}} and {{food.meat}} stew, slow-cooked with {{food.spice}} and {{food.vegetable}} for a comforting, flavorful meal.","Juicy {{food.meat}}, grilled to your liking and drizzled with a bold {{food.spice}} sauce, served alongside roasted {{food.vegetable}}.","Our {{food.adjective}} {{food.meat}}, slow-cooked to perfection, accompanied by steamed {{food.vegetable}} and a rich, savory gravy.","Tender {{food.meat}} skewers, glazed with a sweet and tangy {{food.fruit}} sauce, served over a bed of fragrant jasmine rice.","Tenderly braised {{food.meat}} in a rich {{food.spice}} and {{food.vegetable}} sauce, served with a side of creamy {{food.vegetable}}.","Three {{food.ingredient}} with {{food.vegetable}}, {{food.vegetable}}, {{food.vegetable}}, {{food.vegetable}} and {{food.ingredient}}. With a side of baked {{food.fruit}}, and your choice of {{food.ingredient}} or {{food.ingredient}}.",'{{number.int({"min":1, "max":99})}}-day aged {{food.meat}} steak, with choice of {{number.int({"min":2, "max":4})}} sides.'];var ie$1=["California maki","Peking duck","Philadelphia maki","arepas","barbecue ribs","bruschette with tomato","bunny chow","caesar salad","caprese salad","cauliflower penne","cheeseburger","chicken fajitas","chicken milanese","chicken parm","chicken wings","chilli con carne","ebiten maki","fettuccine alfredo","fish and chips","french fries with sausages","french toast","hummus","katsu curry","kebab","lasagne","linguine with clams","massaman curry","meatballs with sauce","mushroom risotto","pappardelle alla bolognese","pasta and beans","pasta carbonara","pasta with tomato and basil","pho","pierogi","pizza","poke","pork belly buns","pork sausage roll","poutine","ricotta stuffed ravioli","risotto with seafood","salmon nigiri","scotch eggs","seafood paella","som tam","souvlaki","stinky tofu","sushi","tacos","teriyaki chicken donburi","tiramis\xF9","tuna sashimi","vegetable soup"];var te$1=["{{food.adjective}} {{food.ethnic_category}} stew","{{food.adjective}} {{food.meat}} with {{food.vegetable}}","{{food.ethnic_category}} {{food.ingredient}} soup","{{food.fruit}} and {{food.fruit}} tart","{{food.fruit}} pie","{{food.fruit}}-glazed {{food.meat}} skewers","{{food.fruit}}-infused {{food.meat}} roast","{{food.ingredient}} and {{food.meat}} pie","{{food.ingredient}}-infused {{food.meat}}","{{food.meat}} steak","{{food.meat}} with {{food.fruit}} sauce","{{food.spice}}-crusted {{food.meat}}","{{food.spice}}-rubbed {{food.meat}} salad","{{food.vegetable}} salad","{{person.first_name.generic}}'s special {{food.ingredient}}"];var le$1=["Ainu","Albanian","American","Andhra","Anglo-Indian","Arab","Argentine","Armenian","Assyrian","Awadhi","Azerbaijani","Balochi","Bangladeshi","Bashkir","Belarusian","Bengali","Berber","Brazilian","British","Buddhist","Bulgarian","Cajun","Cantonese","Caribbean","Chechen","Chinese","Chinese Islamic","Circassian","Crimean Tatar","Cypriot","Czech","Danish","Egyptian","English","Eritrean","Estonian","Ethiopian","Filipino","French","Georgian","German","Goan","Goan Catholic","Greek","Gujarati","Hyderabad","Indian","Indian Chinese","Indian Singaporean","Indonesian","Inuit","Irish","Italian","Italian-American","Jamaican","Japanese","Jewish - Israeli","Karnataka","Kazakh","Keralite","Korean","Kurdish","Laotian","Latvian","Lebanese","Lithuanian","Louisiana Creole","Maharashtrian","Malay","Malaysian Chinese","Malaysian Indian","Mangalorean","Mediterranean","Mennonite","Mexican","Mordovian","Mughal","Native American","Nepalese","New Mexican","Odia","Pakistani","Parsi","Pashtun","Pennsylvania Dutch","Peranakan","Persian","Peruvian","Polish","Portuguese","Punjabi","Qu\xE9b\xE9cois","Rajasthani","Romani","Romanian","Russian","Sami","Serbian","Sindhi","Slovak","Slovenian","Somali","South Indian","Soviet","Spanish","Sri Lankan","Taiwanese","Tamil","Tatar","Texan","Thai","Turkish","Udupi","Ukrainian","Vietnamese","Yamal","Zambian","Zanzibari"];var se$1=["apple","apricot","aubergine","avocado","banana","berry","blackberry","blood orange","blueberry","bush tomato","butternut pumpkin","cantaloupe","cavalo","cherry","corella pear","cranberry","cumquat","currant","custard apple","custard apples daikon","date","dragonfruit","dried apricot","elderberry","feijoa","fig","fingerlime","goji berry","grape","grapefruit","guava","honeydew melon","incaberry","jarrahdale pumpkin","juniper berry","kiwi fruit","kiwiberry","lemon","lime","longan","loquat","lychee","mandarin","mango","mangosteen","melon","mulberry","nashi pear","nectarine","olive","orange","papaw","papaya","passionfruit","peach","pear","pineapple","plum","pomegranate","prune","rockmelon","snowpea","sprout","starfruit","strawberry","sultana","tangelo","tomato","watermelon"];var de=["achacha","adzuki beans","agar","agave syrup","ajowan seed","albacore tuna","alfalfa","allspice","almond oil","almonds","amaranth","amchur","anchovies","aniseed","annatto seed","apple cider vinegar","apple juice","apple juice concentrate","apples","apricots","arborio rice","arrowroot","artichoke","arugula","asafoetida","asian greens","asian noodles","asparagus","aubergine","avocado","avocado oil","avocado spread","bacon","baking powder","baking soda","balsamic vinegar","bamboo shoots","banana","barberry","barley","barramundi","basil basmati rice","bay leaves","bean shoots","bean sprouts","beans","beef","beef stock","beetroot","berries","besan","black eyed beans","blackberries","blood oranges","blue cheese","blue eye trevalla","blue swimmer crab","blueberries","bocconcini","bok choy","bonito flakes","bonza","borlotti beans","bran","brazil nut","bread","brie","broccoli","broccolini","brown flour","brown mushrooms","brown rice","brown rice vinegar","brussels sprouts","buckwheat","buckwheat flour","buckwheat noodles","bulghur","bush tomato","butter","butter beans","buttermilk","butternut lettuce","butternut pumpkin","cabbage","cacao","cake","calamari","camellia tea oil","camembert","camomile","candle nut","cannellini beans","canola oil","cantaloupe","capers","capsicum","caraway seed","cardamom","carob carrot","carrot","cashews","cassia bark","cauliflower","cavalo","cayenne","celery","celery seed","cheddar","cherries","chestnut","chia seeds","chicken","chicken stock","chickory","chickpea","chilli pepper","chinese cabbage","chinese five spice","chives","choy sum","cinnamon","clams","cloves","cocoa powder","coconut","coconut oil","coconut water","coffee","common cultivated mushrooms","corella pear","coriander leaves","coriander seed","corn oil","corn syrup","corn tortilla","cornichons","cornmeal","cos lettuce","cottage cheese","cous cous","crabs","cranberry","cream","cream cheese","cucumber","cumin","cumquat","currants","curry leaves","curry powder","custard apples","dandelion","dark chocolate","dashi","dates","dill","dragonfruit","dried apricots","dried chinese broccoli","duck","edam","edamame","eggplant","eggs","elderberry","endive","english spinach","enoki mushrooms","extra virgin olive oil","farmed prawns","feijoa","fennel","fennel seeds","fenugreek","feta","figs","file powder","fingerlime","fish sauce","fish stock","flat mushrooms","flathead","flaxseed","flaxseed oil","flounder","flour","freekeh","french eschallots","fresh chillies","fromage blanc","fruit","galangal","garam masala","garlic","goat cheese","goat milk","goji berry","grape seed oil","grapefruit","grapes","green beans","green pepper","green tea","green tea noodles","greenwheat freekeh","gruyere","guava","gula melaka","haloumi","ham","haricot beans","harissa","hazelnut","hijiki","hiramasa kingfish","hokkien noodles","honey","honeydew melon","horseradish","hot smoked salmon","hummus","iceberg lettuce","incaberries","jarrahdale pumpkin","jasmine rice","jelly","jerusalem artichoke","jewfish","jicama","juniper berries","kale","kangaroo","kecap manis","kenchur","kidney beans","kidneys","kiwi berries","kiwi fruit","kohlrabi","kokam","kombu","koshihikari rice","kudzu","kumera","lamb","lavender flowers","leeks","lemon","lemongrass","lentils","lettuce","licorice","lime leaves","limes","liver","lobster","longan","loquats","lotus root","lychees","macadamia nut","macadamia oil","mace","mackerel","mahi mahi","mahlab","malt vinegar","mandarins","mango","mangosteens","maple syrup","margarine","marigold","marjoram","mastic","melon","milk","milk chocolate","mint","miso","molasses","monkfish","morwong","mountain bread","mozzarella","muesli","mulberries","mullet","mung beans","mussels","mustard","mustard seed","nashi pear","nasturtium","nectarines","nori","nutmeg","nutritional yeast","nuts","oat flour","oatmeal","oats","octopus","okra","olive oil","olives","omega spread","onion","oranges","oregano","oyster mushrooms","oyster sauce","oysters","pandanus leaves","papaw","papaya","paprik","parmesan cheese","parrotfish","parsley","parsnip","passionfruit","pasta","peaches","peanuts","pear","pear juice","pears","peas","pecan nut","pecorino","pepitas","peppercorns","peppermint","peppers","persimmon","pine nut","pineapple","pinto beans","pistachio nut","plums","polenta","pomegranate","poppy seed","porcini mushrooms","pork","potato flour","potatoes","provolone","prunes","pumpkin","pumpkin seed","purple carrot","purple rice","quark","quince","quinoa","radicchio","radish","raisin","raspberry","red cabbage","red lentils","red pepper","red wine","red wine vinegar","redfish","rhubarb","rice flour","rice noodles","rice paper","rice syrup","ricemilk","ricotta","rockmelon","rose water","rosemary","rye","rye bread","safflower oil","saffron","sage","sake","salmon","sardines","sausages","scallops","sea salt","semolina","sesame oil","sesame seeds","shark","shiitake mushrooms","silverbeet","slivered almonds","smoked trout","snapper","snowpea sprouts","snowpeas","soba","sour dough bread","soy","soy beans","soy flour","soy milk","soy sauce","soymilk","spearmint","spelt","spelt bread","spinach","spring onions","sprouts","squash","squid","star anise","star fruit","starfruit","stevia","strawberries","sugar","sultanas","sun-dried tomatoes","sunflower oil","sunflower seeds","sweet chilli sauce","sweet potato","swiss chard","swordfish","szechuan pepperberry","tabasco","tahini","taleggio cheese","tamari","tamarillo","tangelo","tapioca","tapioca flour","tarragon","tea","tea oil","tempeh","thyme","tinned","tofu","tom yum","tomatoes","trout","tuna","turkey","turmeric","turnips","unbleached flour","vanilla beans","vegetable oil","vegetable spaghetti","vegetable stock","vermicelli noodles","vinegar","wakame","walnut","warehou","wasabi","water","watercress","watermelon","wattleseed","wheat","wheatgrass juice","white bread","white flour","white rice","white wine","white wine vinegar","whiting wild rice","wholegrain bread","wholemeal","wholewheat flour","william pear","yeast","yellow papaw","yellowtail kingfish","yoghurt","yogurt","zucchini"];var ue$1=["beef","chicken","crocodile","duck","emu","goose","kangaroo","lamb","ostrich","pigeon","pork","quail","rabbit","salmon","turkey","venison"];var ce$1=["achiote seed","ajwain seed","ajwan seed","allspice","amchoor","anise","anise star","aniseed","annatto seed","arrowroot","asafoetida","baharat","balti masala","balti stir fry mix","basil","bay leaves","bbq","caraway seed","cardamom","cassia","cayenne pepper","celery","chamomile","chervil","chilli","chilli pepper","chillies","china star","chives","cinnamon","cloves","colombo","coriander","cumin","curly leaf parsley","curry","dhansak","dill","fennel seed","fenugreek","fines herbes","five spice","french lavender","galangal","garam masala","garlic","german chamomile","ginger","green cardamom","herbes de provence","jalfrezi","jerk","kaffir leaves","korma","lavender","lemon grass","lemon pepper","lime leaves","liquorice root","mace","mango","marjoram","methi","mint","mustard","nutmeg","onion seed","orange zest","oregano","paprika","parsley","pepper","peppercorns","pimento","piri piri","poppy seed","pot marjoram","poudre de colombo","ras-el-hanout","rice paper","rogan josh","rose baie","rosemary","saffron","sage","sesame seed","spearmint","sumac","sweet basil","sweet laurel","tagine","tandoori masala","tarragon","thyme","tikka masala","turmeric","vanilla","zahtar"];var me$1=["artichoke","arugula","asian greens","asparagus","bean shoots","bean sprouts","beans","beetroot","bok choy","broccoli","broccolini","brussels sprouts","butternut lettuce","cabbage","capers","carob carrot","carrot","cauliflower","celery","chilli pepper","chinese cabbage","chives","cornichons","cos lettuce","cucumber","dried chinese broccoli","eggplant","endive","english spinach","french eschallots","fresh chillies","garlic","green beans","green pepper","hijiki","iceberg lettuce","jerusalem artichoke","jicama","kale","kohlrabi","leeks","lettuce","okra","onion","parsnip","peas","peppers","potatoes","pumpkin","purple carrot","radicchio","radish","raspberry","red cabbage","red pepper","rhubarb","snowpea sprouts","spinach","squash","sun dried tomatoes","sweet potato","swiss chard","turnips","zucchini"];var Za={adjective:re$1,description_pattern:ne$1,dish:ie$1,dish_pattern:te$1,ethnic_category:le$1,fruit:se$1,ingredient:de,meat:ue$1,spice:ce$1,vegetable:me$1},he$1=Za;var ye$1=["1080p","auxiliary","back-end","bluetooth","cross-platform","digital","haptic","mobile","multi-byte","neural","online","open-source","optical","primary","redundant","solid state","virtual","wireless"];var pe$1=["backing up","bypassing","calculating","compressing","connecting","copying","generating","hacking","indexing","navigating","overriding","parsing","programming","quantifying","synthesizing","transmitting"];var ge$1=["alarm","application","array","bandwidth","bus","capacitor","card","circuit","driver","feed","firewall","hard drive","interface","matrix","microchip","monitor","panel","pixel","port","program","protocol","sensor","system","transmitter"];var be$1=["I'll {{verb}} the {{adjective}} {{abbreviation}} {{noun}}, that should {{noun}} the {{abbreviation}} {{noun}}!","If we {{verb}} the {{noun}}, we can get to the {{abbreviation}} {{noun}} through the {{adjective}} {{abbreviation}} {{noun}}!","The {{abbreviation}} {{noun}} is down, {{verb}} the {{adjective}} {{noun}} so we can {{verb}} the {{abbreviation}} {{noun}}!","Try to {{verb}} the {{abbreviation}} {{noun}}, maybe it will {{verb}} the {{adjective}} {{noun}}!","Use the {{adjective}} {{abbreviation}} {{noun}}, then you can {{verb}} the {{adjective}} {{noun}}!","We need to {{verb}} the {{adjective}} {{abbreviation}} {{noun}}!","You can't {{verb}} the {{noun}} without {{ingverb}} the {{adjective}} {{abbreviation}} {{noun}}!","{{ingverb}} the {{noun}} won't do anything, we need to {{verb}} the {{adjective}} {{abbreviation}} {{noun}}!"];var Se$1=["back up","bypass","calculate","compress","connect","copy","generate","hack","index","input","navigate","override","parse","program","quantify","reboot","synthesize","transmit"];var _a={adjective:ye$1,ingverb:pe$1,noun:ge$1,phrase:be$1,verb:Se$1},ke$1=_a;var Ce$1=["com","biz","info","name","net","org"];var fe$1=["example.org","example.com","example.net"];var ve$1=["gmail.com","yahoo.com","hotmail.com"];var Qa$1={domain_suffix:Ce$1,example_email:fe$1,free_email:ve$1},Ae$1=Qa$1;var Be$1=["#####","####","###"];var we$1=["Abilene","Akron","Alafaya","Alameda","Albany","Albuquerque","Alexandria","Alhambra","Aliso Viejo","Allen","Allentown","Aloha","Alpharetta","Altadena","Altamonte Springs","Altoona","Amarillo","Ames","Anaheim","Anchorage","Anderson","Ankeny","Ann Arbor","Annandale","Antelope","Antioch","Apex","Apopka","Apple Valley","Appleton","Arcadia","Arden-Arcade","Arecibo","Arlington","Arlington Heights","Arvada","Ashburn","Asheville","Aspen Hill","Atascocita","Athens-Clarke County","Atlanta","Attleboro","Auburn","Augusta-Richmond County","Aurora","Austin","Avondale","Azusa","Bakersfield","Baldwin Park","Baltimore","Barnstable Town","Bartlett","Baton Rouge","Battle Creek","Bayamon","Bayonne","Baytown","Beaumont","Beavercreek","Beaverton","Bedford","Bel Air South","Bell Gardens","Belleville","Bellevue","Bellflower","Bellingham","Bend","Bentonville","Berkeley","Berwyn","Bethesda","Bethlehem","Billings","Biloxi","Binghamton","Birmingham","Bismarck","Blacksburg","Blaine","Bloomington","Blue Springs","Boca Raton","Boise City","Bolingbrook","Bonita Springs","Bossier City","Boston","Bothell","Boulder","Bountiful","Bowie","Bowling Green","Boynton Beach","Bozeman","Bradenton","Brandon","Brentwood","Bridgeport","Bristol","Brockton","Broken Arrow","Brookhaven","Brookline","Brooklyn Park","Broomfield","Brownsville","Bryan","Buckeye","Buena Park","Buffalo","Buffalo Grove","Burbank","Burien","Burke","Burleson","Burlington","Burnsville","Caguas","Caldwell","Camarillo","Cambridge","Camden","Canton","Cape Coral","Carlsbad","Carmel","Carmichael","Carolina","Carrollton","Carson","Carson City","Cary","Casa Grande","Casas Adobes","Casper","Castle Rock","Castro Valley","Catalina Foothills","Cathedral City","Catonsville","Cedar Hill","Cedar Park","Cedar Rapids","Centennial","Centreville","Ceres","Cerritos","Champaign","Chandler","Chapel Hill","Charleston","Charlotte","Charlottesville","Chattanooga","Cheektowaga","Chesapeake","Chesterfield","Cheyenne","Chicago","Chico","Chicopee","Chino","Chino Hills","Chula Vista","Cicero","Cincinnati","Citrus Heights","Clarksville","Clearwater","Cleveland","Cleveland Heights","Clifton","Clovis","Coachella","Coconut Creek","Coeur d'Alene","College Station","Collierville","Colorado Springs","Colton","Columbia","Columbus","Commerce City","Compton","Concord","Conroe","Conway","Coon Rapids","Coral Gables","Coral Springs","Corona","Corpus Christi","Corvallis","Costa Mesa","Council Bluffs","Country Club","Covina","Cranston","Cupertino","Cutler Bay","Cuyahoga Falls","Cypress","Dale City","Dallas","Daly City","Danbury","Danville","Davenport","Davie","Davis","Dayton","Daytona Beach","DeKalb","DeSoto","Dearborn","Dearborn Heights","Decatur","Deerfield Beach","Delano","Delray Beach","Deltona","Denton","Denver","Des Moines","Des Plaines","Detroit","Diamond Bar","Doral","Dothan","Downers Grove","Downey","Draper","Dublin","Dubuque","Duluth","Dundalk","Dunwoody","Durham","Eagan","East Hartford","East Honolulu","East Lansing","East Los Angeles","East Orange","East Providence","Eastvale","Eau Claire","Eden Prairie","Edina","Edinburg","Edmond","El Cajon","El Centro","El Dorado Hills","El Monte","El Paso","Elgin","Elizabeth","Elk Grove","Elkhart","Ellicott City","Elmhurst","Elyria","Encinitas","Enid","Enterprise","Erie","Escondido","Euclid","Eugene","Euless","Evanston","Evansville","Everett","Fairfield","Fall River","Fargo","Farmington","Farmington Hills","Fayetteville","Federal Way","Findlay","Fishers","Flagstaff","Flint","Florence-Graham","Florin","Florissant","Flower Mound","Folsom","Fond du Lac","Fontana","Fort Collins","Fort Lauderdale","Fort Myers","Fort Pierce","Fort Smith","Fort Wayne","Fort Worth","Fountain Valley","Fountainebleau","Framingham","Franklin","Frederick","Freeport","Fremont","Fresno","Frisco","Fullerton","Gainesville","Gaithersburg","Galveston","Garden Grove","Gardena","Garland","Gary","Gastonia","Georgetown","Germantown","Gilbert","Gilroy","Glen Burnie","Glendale","Glendora","Glenview","Goodyear","Grand Forks","Grand Island","Grand Junction","Grand Prairie","Grand Rapids","Grapevine","Great Falls","Greeley","Green Bay","Greensboro","Greenville","Greenwood","Gresham","Guaynabo","Gulfport","Hacienda Heights","Hackensack","Haltom City","Hamilton","Hammond","Hampton","Hanford","Harlingen","Harrisburg","Harrisonburg","Hartford","Hattiesburg","Haverhill","Hawthorne","Hayward","Hemet","Hempstead","Henderson","Hendersonville","Hesperia","Hialeah","Hicksville","High Point","Highland","Highlands Ranch","Hillsboro","Hilo","Hoboken","Hoffman Estates","Hollywood","Homestead","Honolulu","Hoover","Houston","Huntersville","Huntington","Huntington Beach","Huntington Park","Huntsville","Hutchinson","Idaho Falls","Independence","Indianapolis","Indio","Inglewood","Iowa City","Irondequoit","Irvine","Irving","Jackson","Jacksonville","Janesville","Jefferson City","Jeffersonville","Jersey City","Johns Creek","Johnson City","Joliet","Jonesboro","Joplin","Jupiter","Jurupa Valley","Kalamazoo","Kannapolis","Kansas City","Kearny","Keller","Kendale Lakes","Kendall","Kenner","Kennewick","Kenosha","Kent","Kentwood","Kettering","Killeen","Kingsport","Kirkland","Kissimmee","Knoxville","Kokomo","La Crosse","La Habra","La Mesa","La Mirada","Lacey","Lafayette","Laguna Niguel","Lake Charles","Lake Elsinore","Lake Forest","Lake Havasu City","Lake Ridge","Lakeland","Lakeville","Lakewood","Lancaster","Lansing","Laredo","Largo","Las Cruces","Las Vegas","Lauderhill","Lawrence","Lawton","Layton","League City","Lee's Summit","Leesburg","Lehi","Lehigh Acres","Lenexa","Levittown","Lewisville","Lexington-Fayette","Lincoln","Linden","Little Rock","Littleton","Livermore","Livonia","Lodi","Logan","Lombard","Lompoc","Long Beach","Longmont","Longview","Lorain","Los Angeles","Louisville/Jefferson County","Loveland","Lowell","Lubbock","Lynchburg","Lynn","Lynwood","Macon-Bibb County","Madera","Madison","Malden","Manchester","Manhattan","Mansfield","Manteca","Maple Grove","Margate","Maricopa","Marietta","Marysville","Mayaguez","McAllen","McKinney","McLean","Medford","Melbourne","Memphis","Menifee","Mentor","Merced","Meriden","Meridian","Mesa","Mesquite","Metairie","Methuen Town","Miami","Miami Beach","Miami Gardens","Middletown","Midland","Midwest City","Milford","Millcreek","Milpitas","Milwaukee","Minneapolis","Minnetonka","Minot","Miramar","Mishawaka","Mission","Mission Viejo","Missoula","Missouri City","Mobile","Modesto","Moline","Monroe","Montebello","Monterey Park","Montgomery","Moore","Moreno Valley","Morgan Hill","Mount Pleasant","Mount Prospect","Mount Vernon","Mountain View","Muncie","Murfreesboro","Murray","Murrieta","Nampa","Napa","Naperville","Nashua","Nashville-Davidson","National City","New Bedford","New Braunfels","New Britain","New Brunswick","New Haven","New Orleans","New Rochelle","New York","Newark","Newport Beach","Newport News","Newton","Niagara Falls","Noblesville","Norfolk","Normal","Norman","North Bethesda","North Charleston","North Highlands","North Las Vegas","North Lauderdale","North Little Rock","North Miami","North Miami Beach","North Port","North Richland Hills","Norwalk","Novato","Novi","O'Fallon","Oak Lawn","Oak Park","Oakland","Oakland Park","Ocala","Oceanside","Odessa","Ogden","Oklahoma City","Olathe","Olympia","Omaha","Ontario","Orange","Orem","Orland Park","Orlando","Oro Valley","Oshkosh","Overland Park","Owensboro","Oxnard","Palatine","Palm Bay","Palm Beach Gardens","Palm Coast","Palm Desert","Palm Harbor","Palm Springs","Palmdale","Palo Alto","Paradise","Paramount","Parker","Parma","Pasadena","Pasco","Passaic","Paterson","Pawtucket","Peabody","Pearl City","Pearland","Pembroke Pines","Pensacola","Peoria","Perris","Perth Amboy","Petaluma","Pflugerville","Pharr","Philadelphia","Phoenix","Pico Rivera","Pine Bluff","Pine Hills","Pinellas Park","Pittsburg","Pittsburgh","Pittsfield","Placentia","Plainfield","Plano","Plantation","Pleasanton","Plymouth","Pocatello","Poinciana","Pomona","Pompano Beach","Ponce","Pontiac","Port Arthur","Port Charlotte","Port Orange","Port St. Lucie","Portage","Porterville","Portland","Portsmouth","Potomac","Poway","Providence","Provo","Pueblo","Quincy","Racine","Raleigh","Rancho Cordova","Rancho Cucamonga","Rancho Palos Verdes","Rancho Santa Margarita","Rapid City","Reading","Redding","Redlands","Redmond","Redondo Beach","Redwood City","Reno","Renton","Reston","Revere","Rialto","Richardson","Richland","Richmond","Rio Rancho","Riverside","Riverton","Riverview","Roanoke","Rochester","Rochester Hills","Rock Hill","Rockford","Rocklin","Rockville","Rockwall","Rocky Mount","Rogers","Rohnert Park","Rosemead","Roseville","Roswell","Round Rock","Rowland Heights","Rowlett","Royal Oak","Sacramento","Saginaw","Salem","Salina","Salinas","Salt Lake City","Sammamish","San Angelo","San Antonio","San Bernardino","San Bruno","San Buenaventura (Ventura)","San Clemente","San Diego","San Francisco","San Jacinto","San Jose","San Juan","San Leandro","San Luis Obispo","San Marcos","San Mateo","San Rafael","San Ramon","San Tan Valley","Sandy","Sandy Springs","Sanford","Santa Ana","Santa Barbara","Santa Clara","Santa Clarita","Santa Cruz","Santa Fe","Santa Maria","Santa Monica","Santa Rosa","Santee","Sarasota","Savannah","Sayreville","Schaumburg","Schenectady","Scottsdale","Scranton","Seattle","Severn","Shawnee","Sheboygan","Shoreline","Shreveport","Sierra Vista","Silver Spring","Simi Valley","Sioux City","Sioux Falls","Skokie","Smyrna","Somerville","South Bend","South Gate","South Hill","South Jordan","South San Francisco","South Valley","South Whittier","Southaven","Southfield","Sparks","Spokane","Spokane Valley","Spring","Spring Hill","Spring Valley","Springdale","Springfield","St. Charles","St. Clair Shores","St. Cloud","St. George","St. Joseph","St. Louis","St. Louis Park","St. Paul","St. Peters","St. Petersburg","Stamford","State College","Sterling Heights","Stillwater","Stockton","Stratford","Strongsville","Suffolk","Sugar Land","Summerville","Sunnyvale","Sunrise","Sunrise Manor","Surprise","Syracuse","Tacoma","Tallahassee","Tamarac","Tamiami","Tampa","Taunton","Taylor","Taylorsville","Temecula","Tempe","Temple","Terre Haute","Texas City","The Hammocks","The Villages","The Woodlands","Thornton","Thousand Oaks","Tigard","Tinley Park","Titusville","Toledo","Toms River","Tonawanda","Topeka","Torrance","Town 'n' Country","Towson","Tracy","Trenton","Troy","Trujillo Alto","Tuckahoe","Tucson","Tulare","Tulsa","Turlock","Tuscaloosa","Tustin","Twin Falls","Tyler","Union City","University","Upland","Urbana","Urbandale","Utica","Vacaville","Valdosta","Vallejo","Vancouver","Victoria","Victorville","Vineland","Virginia Beach","Visalia","Vista","Waco","Waipahu","Waldorf","Walnut Creek","Waltham","Warner Robins","Warren","Warwick","Washington","Waterbury","Waterloo","Watsonville","Waukegan","Waukesha","Wauwatosa","Wellington","Wesley Chapel","West Allis","West Babylon","West Covina","West Des Moines","West Hartford","West Haven","West Jordan","West Lafayette","West New York","West Palm Beach","West Sacramento","West Seneca","West Valley City","Westfield","Westland","Westminster","Weston","Weymouth Town","Wheaton","White Plains","Whittier","Wichita","Wichita Falls","Wilmington","Wilson","Winston-Salem","Woodbury","Woodland","Worcester","Wylie","Wyoming","Yakima","Yonkers","Yorba Linda","York","Youngstown","Yuba City","Yucaipa","Yuma"];var Me$1=["{{location.city_prefix}} {{person.first_name.generic}}{{location.city_suffix}}","{{location.city_prefix}} {{person.first_name.generic}}","{{person.first_name.generic}}{{location.city_suffix}}","{{person.last_name.generic}}{{location.city_suffix}}","{{location.city_name}}"];var Te$1=["North","East","West","South","New","Lake","Port","Fort"];var Le$1=["town","ton","land","ville","berg","burgh","boro","borough","bury","view","port","mouth","stad","stead","furt","chester","cester","fort","field","haven","side","shire","worth"];var De$1=["Afghanistan","Aland Islands","Albania","Algeria","American Samoa","Andorra","Angola","Anguilla","Antarctica","Antigua and Barbuda","Argentina","Armenia","Aruba","Australia","Austria","Azerbaijan","Bahamas","Bahrain","Bangladesh","Barbados","Belarus","Belgium","Belize","Benin","Bermuda","Bhutan","Bolivia","Bonaire, Sint Eustatius and Saba","Bosnia and Herzegovina","Botswana","Bouvet Island","Brazil","British Indian Ocean Territory (Chagos Archipelago)","Brunei Darussalam","Bulgaria","Burkina Faso","Burundi","Cambodia","Cameroon","Canada","Cape Verde","Cayman Islands","Central African Republic","Chad","Chile","China","Christmas Island","Cocos (Keeling) Islands","Colombia","Comoros","Congo","Cook Islands","Costa Rica","Cote d'Ivoire","Croatia","Cuba","Curacao","Cyprus","Czechia","Democratic Republic of the Congo","Denmark","Djibouti","Dominica","Dominican Republic","Ecuador","Egypt","El Salvador","Equatorial Guinea","Eritrea","Estonia","Eswatini","Ethiopia","Faroe Islands","Falkland Islands (Malvinas)","Fiji","Finland","France","French Guiana","French Polynesia","French Southern Territories","Gabon","Gambia","Georgia","Germany","Ghana","Gibraltar","Greece","Greenland","Grenada","Guadeloupe","Guam","Guatemala","Guernsey","Guinea","Guinea-Bissau","Guyana","Haiti","Heard Island and McDonald Islands","Holy See (Vatican City State)","Honduras","Hong Kong","Hungary","Iceland","India","Indonesia","Iran","Iraq","Ireland","Isle of Man","Israel","Italy","Jamaica","Japan","Jersey","Jordan","Kazakhstan","Kenya","Kiribati","Democratic People's Republic of Korea","Republic of Korea","Kuwait","Kyrgyz Republic","Lao People's Democratic Republic","Latvia","Lebanon","Lesotho","Liberia","Libyan Arab Jamahiriya","Liechtenstein","Lithuania","Luxembourg","Macao","Madagascar","Malawi","Malaysia","Maldives","Mali","Malta","Marshall Islands","Martinique","Mauritania","Mauritius","Mayotte","Mexico","Micronesia","Moldova","Monaco","Mongolia","Montenegro","Montserrat","Morocco","Mozambique","Myanmar","Namibia","Nauru","Nepal","Netherlands","New Caledonia","New Zealand","Nicaragua","Niger","Nigeria","Niue","Norfolk Island","North Macedonia","Northern Mariana Islands","Norway","Oman","Pakistan","Palau","Palestine","Panama","Papua New Guinea","Paraguay","Peru","Philippines","Pitcairn Islands","Poland","Portugal","Puerto Rico","Qatar","Reunion","Romania","Russian Federation","Rwanda","Saint Barthelemy","Saint Helena","Saint Kitts and Nevis","Saint Lucia","Saint Martin","Saint Pierre and Miquelon","Saint Vincent and the Grenadines","Samoa","San Marino","Sao Tome and Principe","Saudi Arabia","Senegal","Serbia","Seychelles","Sierra Leone","Singapore","Sint Maarten","Slovakia","Slovenia","Solomon Islands","Somalia","South Africa","South Georgia and the South Sandwich Islands","South Sudan","Spain","Sri Lanka","Sudan","Suriname","Svalbard & Jan Mayen Islands","Sweden","Switzerland","Syrian Arab Republic","Taiwan","Tajikistan","Tanzania","Thailand","Timor-Leste","Togo","Tokelau","Tonga","Trinidad and Tobago","Tunisia","Turkey","Turkmenistan","Turks and Caicos Islands","Tuvalu","Uganda","Ukraine","United Arab Emirates","United Kingdom","United States of America","United States Minor Outlying Islands","Uruguay","Uzbekistan","Vanuatu","Venezuela","Vietnam","Virgin Islands, British","Virgin Islands, U.S.","Wallis and Futuna","Western Sahara","Yemen","Zambia","Zimbabwe"];var Re$1=["Adams County","Calhoun County","Carroll County","Clark County","Clay County","Crawford County","Douglas County","Fayette County","Franklin County","Grant County","Greene County","Hamilton County","Hancock County","Henry County","Jackson County","Jefferson County","Johnson County","Lake County","Lawrence County","Lee County","Lincoln County","Logan County","Madison County","Marion County","Marshall County","Monroe County","Montgomery County","Morgan County","Perry County","Pike County","Polk County","Scott County","Union County","Warren County","Washington County","Wayne County","Avon","Bedfordshire","Berkshire","Borders","Buckinghamshire","Cambridgeshire","Central","Cheshire","Cleveland","Clwyd","Cornwall","County Antrim","County Armagh","County Down","County Fermanagh","County Londonderry","County Tyrone","Cumbria","Derbyshire","Devon","Dorset","Dumfries and Galloway","Durham","Dyfed","East Sussex","Essex","Fife","Gloucestershire","Grampian","Greater Manchester","Gwent","Gwynedd County","Hampshire","Herefordshire","Hertfordshire","Highlands and Islands","Humberside","Isle of Wight","Kent","Lancashire","Leicestershire","Lincolnshire","Lothian","Merseyside","Mid Glamorgan","Norfolk","North Yorkshire","Northamptonshire","Northumberland","Nottinghamshire","Oxfordshire","Powys","Rutland","Shropshire","Somerset","South Glamorgan","South Yorkshire","Staffordshire","Strathclyde","Suffolk","Surrey","Tayside","Tyne and Wear","Warwickshire","West Glamorgan","West Midlands","West Sussex","West Yorkshire","Wiltshire","Worcestershire"];var He$1={cardinal:["North","East","South","West"],cardinal_abbr:["N","E","S","W"],ordinal:["Northeast","Northwest","Southeast","Southwest"],ordinal_abbr:["NE","NW","SE","SW"]};var Pe$1=["#####","#####-####"];var We$1=["Apt. ###","Suite ###"];var Ge$1=["Alabama","Alaska","Arizona","Arkansas","California","Colorado","Connecticut","Delaware","Florida","Georgia","Hawaii","Idaho","Illinois","Indiana","Iowa","Kansas","Kentucky","Louisiana","Maine","Maryland","Massachusetts","Michigan","Minnesota","Mississippi","Missouri","Montana","Nebraska","Nevada","New Hampshire","New Jersey","New Mexico","New York","North Carolina","North Dakota","Ohio","Oklahoma","Oregon","Pennsylvania","Rhode Island","South Carolina","South Dakota","Tennessee","Texas","Utah","Vermont","Virginia","Washington","West Virginia","Wisconsin","Wyoming"];var Ne$1=["AL","AK","AZ","AR","CA","CO","CT","DE","FL","GA","HI","ID","IL","IN","IA","KS","KY","LA","ME","MD","MA","MI","MN","MS","MO","MT","NE","NV","NH","NJ","NM","NY","NC","ND","OH","OK","OR","PA","RI","SC","SD","TN","TX","UT","VT","VA","WA","WV","WI","WY"];var Ee$1={normal:"{{location.buildingNumber}} {{location.street}}",full:"{{location.buildingNumber}} {{location.street}} {{location.secondaryAddress}}"};var Fe$1=["10th Street","11th Street","12th Street","13th Street","14th Street","15th Street","16th Street","1st Avenue","1st Street","2nd Avenue","2nd Street","3rd Avenue","3rd Street","4th Avenue","4th Street","5th Avenue","5th Street","6th Avenue","6th Street","7th Avenue","7th Street","8th Avenue","8th Street","9th Street","A Street","Abbey Road","Adams Avenue","Adams Street","Airport Road","Albany Road","Albert Road","Albion Street","Alexandra Road","Alfred Street","Alma Street","Ash Close","Ash Grove","Ash Road","Ash Street","Aspen Close","Atlantic Avenue","Avenue Road","Back Lane","Baker Street","Balmoral Road","Barn Close","Barton Road","Bath Road","Bath Street","Bay Street","Beach Road","Bedford Road","Beech Close","Beech Drive","Beech Grove","Beech Road","Beechwood Avenue","Bell Lane","Belmont Road","Birch Avenue","Birch Close","Birch Grove","Birch Road","Blind Lane","Bluebell Close","Boundary Road","Bramble Close","Bramley Close","Bridge Road","Bridge Street","Broad Lane","Broad Street","Broadway","Broadway Avenue","Broadway Street","Brook Lane","Brook Road","Brook Street","Brookside","Buckingham Road","Cambridge Street","Canal Street","Castle Close","Castle Lane","Castle Road","Castle Street","Cavendish Road","Cedar Avenue","Cedar Close","Cedar Grove","Cedar Road","Cedar Street","Cemetery Road","Center Avenue","Center Road","Center Street","Central Avenue","Central Street","Chapel Close","Chapel Hill","Chapel Road","Chapel Street","Charles Street","Cherry Close","Cherry Street","Cherry Tree Close","Chester Road","Chestnut Close","Chestnut Drive","Chestnut Grove","Chestnut Street","Church Avenue","Church Close","Church Hill","Church Lane","Church Path","Church Road","Church Street","Church View","Church Walk","Claremont Road","Clarence Road","Clarence Street","Clarendon Road","Clark Street","Clay Lane","Cleveland Street","Cliff Road","Clifton Road","Clinton Street","College Avenue","College Street","Columbia Avenue","Commerce Street","Commercial Road","Commercial Street","Common Lane","Coronation Avenue","Coronation Road","County Line Road","County Road","Court Street","Cow Lane","Crescent Road","Cromwell Road","Cross Lane","Cross Street","Crown Street","Cumberland Street","Dale Street","Dark Lane","Davis Street","Depot Street","Derby Road","Derwent Close","Devonshire Road","Division Street","Douglas Road","Duke Street","E 10th Street","E 11th Street","E 12th Street","E 14th Street","E 1st Street","E 2nd Street","E 3rd Street","E 4th Avenue","E 4th Street","E 5th Street","E 6th Avenue","E 6th Street","E 7th Street","E 8th Street","E 9th Street","E Bridge Street","E Broad Street","E Broadway","E Broadway Street","E Cedar Street","E Center Street","E Central Avenue","E Church Street","E Elm Street","E Franklin Street","E Front Street","E Grand Avenue","E High Street","E Jackson Street","E Jefferson Street","E Main","E Main Street","E Maple Street","E Market Street","E North Street","E Oak Street","E Park Avenue","E Pine Street","E River Road","E South Street","E State Street","E Union Street","E Walnut Street","E Washington Avenue","E Washington Street","E Water Street","East Avenue","East Road","East Street","Edward Street","Elm Close","Elm Grove","Elm Road","Elm Street","Euclid Avenue","Fairfield Road","Farm Close","Ferry Road","Field Close","Field Lane","First Avenue","First Street","Fore Street","Forest Avenue","Forest Road","Fourth Avenue","Franklin Avenue","Franklin Road","Franklin Street","Front Street","Frontage Road","Garden Close","Garden Street","George Street","Gladstone Road","Glebe Close","Gloucester Road","Gordon Road","Gordon Street","Grand Avenue","Grange Avenue","Grange Close","Grange Road","Grant Street","Green Close","Green Lane","Green Street","Greenville Road","Greenway","Greenwood Road","Grove Lane","Grove Road","Grove Street","Hall Lane","Hall Street","Harrison Avenue","Harrison Street","Hawthorn Avenue","Hawthorn Close","Hazel Close","Hazel Grove","Heath Road","Heather Close","Henry Street","Heron Close","Hickory Street","High Road","High Street","Highfield Avenue","Highfield Close","Highfield Road","Highland Avenue","Hill Road","Hill Street","Hillside","Hillside Avenue","Hillside Close","Hillside Road","Holly Close","Honeysuckle Close","Howard Road","Howard Street","Jackson Avenue","Jackson Street","James Street","Jefferson Avenue","Jefferson Street","Johnson Street","Jubilee Close","Juniper Close","Kent Road","Kestrel Close","King Street","King's Road","Kingfisher Close","Kings Highway","Kingsway","Laburnum Grove","Lafayette Street","Lake Avenue","Lake Drive","Lake Road","Lake Street","Lancaster Road","Lansdowne Road","Larch Close","Laurel Close","Lawrence Street","Lee Street","Liberty Street","Lime Grove","Lincoln Avenue","Lincoln Highway","Lincoln Road","Lincoln Street","Locust Street","Lodge Close","Lodge Lane","London Road","Long Lane","Low Road","Madison Avenue","Madison Street","Main","Main Avenue","Main Road","Main Street","Main Street E","Main Street N","Main Street S","Main Street W","Manchester Road","Manor Close","Manor Drive","Manor Gardens","Manor Road","Manor Way","Maple Avenue","Maple Close","Maple Drive","Maple Road","Maple Street","Market Place","Market Square","Market Street","Marlborough Road","Marsh Lane","Martin Luther King Boulevard","Martin Luther King Drive","Martin Luther King Jr Boulevard","Mary Street","Mayfield Road","Meadow Close","Meadow Drive","Meadow Lane","Meadow View","Meadow Way","Memorial Drive","Middle Street","Mill Close","Mill Lane","Mill Road","Mill Street","Milton Road","Milton Street","Monroe Street","Moor Lane","Moss Lane","Mount Pleasant","Mount Street","Mulberry Street","N 1st Street","N 2nd Street","N 3rd Street","N 4th Street","N 5th Street","N 6th Street","N 7th Street","N 8th Street","N 9th Street","N Bridge Street","N Broad Street","N Broadway","N Broadway Street","N Cedar Street","N Center Street","N Central Avenue","N Chestnut Street","N Church Street","N College Street","N Court Street","N Division Street","N East Street","N Elm Street","N Franklin Street","N Front Street","N Harrison Street","N High Street","N Jackson Street","N Jefferson Street","N Lincoln Street","N Locust Street","N Main","N Main Avenue","N Main Street","N Maple Street","N Market Street","N Monroe Street","N Oak Street","N Park Street","N Pearl Street","N Pine Street","N Poplar Street","N Railroad Street","N State Street","N Union Street","N Walnut Street","N Washington Avenue","N Washington Street","N Water Street","Nelson Road","Nelson Street","New Lane","New Road","New Street","Newton Road","Nightingale Close","Norfolk Road","North Avenue","North Lane","North Road","North Street","Northfield Road","Oak Avenue","Oak Drive","Oak Lane","Oak Road","Oak Street","Oakfield Road","Oaklands","Old Lane","Old Military Road","Old Road","Old State Road","Orchard Drive","Orchard Lane","Orchard Road","Orchard Street","Oxford Road","Oxford Street","Park Avenue","Park Crescent","Park Drive","Park Lane","Park Place","Park Road","Park Street","Park View","Parkside","Pearl Street","Pennsylvania Avenue","Pine Close","Pine Grove","Pine Street","Pinfold Lane","Pleasant Street","Poplar Avenue","Poplar Close","Poplar Road","Poplar Street","Post Road","Pound Lane","Princes Street","Princess Street","Priory Close","Priory Road","Prospect Avenue","Prospect Place","Prospect Road","Prospect Street","Quarry Lane","Quarry Road","Queen's Road","Railroad Avenue","Railroad Street","Railway Street","Rectory Close","Rectory Lane","Richmond Close","Richmond Road","Ridge Road","River Road","River Street","Riverside","Riverside Avenue","Riverside Drive","Roman Road","Roman Way","Rowan Close","Russell Street","S 10th Street","S 14th Street","S 1st Avenue","S 1st Street","S 2nd Street","S 3rd Street","S 4th Street","S 5th Street","S 6th Street","S 7th Street","S 8th Street","S 9th Street","S Bridge Street","S Broad Street","S Broadway","S Broadway Street","S Center Street","S Central Avenue","S Chestnut Street","S Church Street","S College Street","S Division Street","S East Street","S Elm Street","S Franklin Street","S Front Street","S Grand Avenue","S High Street","S Jackson Street","S Jefferson Street","S Lincoln Street","S Main","S Main Avenue","S Main Street","S Maple Street","S Market Street","S Mill Street","S Monroe Street","S Oak Street","S Park Street","S Pine Street","S Railroad Street","S State Street","S Union Street","S Walnut Street","S Washington Avenue","S Washington Street","S Water Street","S West Street","Salisbury Road","Sandringham Road","Sandy Lane","School Close","School Lane","School Road","School Street","Second Avenue","Silver Street","Skyline Drive","Smith Street","Somerset Road","South Avenue","South Drive","South Road","South Street","South View","Spring Gardens","Spring Street","Springfield Close","Springfield Road","Spruce Street","St Andrew's Road","St Andrews Close","St George's Road","St John's Road","St Mary's Close","St Mary's Road","Stanley Road","Stanley Street","State Avenue","State Line Road","State Road","State Street","Station Road","Station Street","Stoney Lane","Sycamore Avenue","Sycamore Close","Sycamore Drive","Sycamore Street","Talbot Road","Tennyson Road","The Avenue","The Beeches","The Causeway","The Chase","The Coppice","The Copse","The Crescent","The Croft","The Dell","The Drive","The Fairway","The Glebe","The Grange","The Green","The Grove","The Hawthorns","The Lane","The Laurels","The Limes","The Maltings","The Meadows","The Mews","The Mount","The Oaks","The Orchard","The Oval","The Paddock","The Paddocks","The Poplars","The Ridgeway","The Ridings","The Rise","The Sidings","The Spinney","The Square","The Willows","The Woodlands","Third Avenue","Third Street","Tower Road","Trinity Road","Tudor Close","Union Avenue","Union Street","University Avenue","University Drive","Valley Road","Veterans Memorial Drive","Veterans Memorial Highway","Vicarage Close","Vicarage Lane","Vicarage Road","Victoria Place","Victoria Road","Victoria Street","Vine Street","W 10th Street","W 11th Street","W 12th Street","W 14th Street","W 1st Street","W 2nd Street","W 3rd Street","W 4th Avenue","W 4th Street","W 5th Street","W 6th Avenue","W 6th Street","W 7th Street","W 8th Street","W 9th Street","W Bridge Street","W Broad Street","W Broadway","W Broadway Avenue","W Broadway Street","W Center Street","W Central Avenue","W Chestnut Street","W Church Street","W Division Street","W Elm Street","W Franklin Street","W Front Street","W Grand Avenue","W High Street","W Jackson Street","W Jefferson Street","W Lake Street","W Main","W Main Street","W Maple Street","W Market Street","W Monroe Street","W North Street","W Oak Street","W Park Street","W Pine Street","W River Road","W South Street","W State Street","W Union Street","W Walnut Street","W Washington Avenue","W Washington Street","Walnut Close","Walnut Street","Warren Close","Warren Road","Washington Avenue","Washington Boulevard","Washington Road","Washington Street","Water Lane","Water Street","Waterloo Road","Waterside","Watery Lane","Waverley Road","Well Lane","Wellington Road","Wellington Street","West Avenue","West End","West Lane","West Road","West Street","West View","Western Avenue","Western Road","Westfield Road","Westgate","William Street","Willow Close","Willow Drive","Willow Grove","Willow Road","Willow Street","Windermere Road","Windmill Close","Windmill Lane","Windsor Avenue","Windsor Close","Windsor Drive","Wood Lane","Wood Street","Woodland Close","Woodland Road","Woodlands","Woodlands Avenue","Woodlands Close","Woodlands Road","Woodside","Woodside Road","Wren Close","Yew Tree Close","York Road","York Street"];var Je$1=["{{person.first_name.generic}} {{location.street_suffix}}","{{person.last_name.generic}} {{location.street_suffix}}","{{location.street_name}}"];var Ie$1=["Alley","Avenue","Branch","Bridge","Brook","Brooks","Burg","Burgs","Bypass","Camp","Canyon","Cape","Causeway","Center","Centers","Circle","Circles","Cliff","Cliffs","Club","Common","Corner","Corners","Course","Court","Courts","Cove","Coves","Creek","Crescent","Crest","Crossing","Crossroad","Curve","Dale","Dam","Divide","Drive","Drives","Estate","Estates","Expressway","Extension","Extensions","Fall","Falls","Ferry","Field","Fields","Flat","Flats","Ford","Fords","Forest","Forge","Forges","Fork","Forks","Fort","Freeway","Garden","Gardens","Gateway","Glen","Glens","Green","Greens","Grove","Groves","Harbor","Harbors","Haven","Heights","Highway","Hill","Hills","Hollow","Inlet","Island","Islands","Isle","Junction","Junctions","Key","Keys","Knoll","Knolls","Lake","Lakes","Land","Landing","Lane","Light","Lights","Loaf","Lock","Locks","Lodge","Loop","Mall","Manor","Manors","Meadow","Meadows","Mews","Mill","Mills","Mission","Motorway","Mount","Mountain","Mountains","Neck","Orchard","Oval","Overpass","Park","Parks","Parkway","Parkways","Pass","Passage","Path","Pike","Pine","Pines","Place","Plain","Plains","Plaza","Point","Points","Port","Ports","Prairie","Radial","Ramp","Ranch","Rapid","Rapids","Rest","Ridge","Ridges","River","Road","Roads","Route","Row","Rue","Run","Shoal","Shoals","Shore","Shores","Skyway","Spring","Springs","Spur","Spurs","Square","Squares","Station","Stravenue","Stream","Street","Streets","Summit","Terrace","Throughway","Trace","Track","Trafficway","Trail","Tunnel","Turnpike","Underpass","Union","Unions","Valley","Valleys","Via","Viaduct","View","Views","Village","Villages","Ville","Vista","Walk","Walks","Wall","Way","Ways","Well","Wells"];var Xa={building_number:Be$1,city_name:we$1,city_pattern:Me$1,city_prefix:Te$1,city_suffix:Le$1,country:De$1,county:Re$1,direction:He$1,postcode:Pe$1,secondary_address:We$1,state:Ge$1,state_abbr:Ne$1,street_address:Ee$1,street_name:Fe$1,street_pattern:Je$1,street_suffix:Ie$1},Ke$1=Xa;var Oe$1=["a","ab","abbas","abduco","abeo","abscido","absconditus","absens","absorbeo","absque","abstergo","absum","abundans","abutor","accedo","accendo","acceptus","accommodo","accusamus","accusantium","accusator","acer","acerbitas","acervus","acidus","acies","acquiro","acsi","ad","adamo","adaugeo","addo","adduco","ademptio","adeo","adeptio","adfectus","adfero","adficio","adflicto","adhaero","adhuc","adicio","adimpleo","adinventitias","adipisci","adipiscor","adiuvo","administratio","admiratio","admitto","admoneo","admoveo","adnuo","adopto","adsidue","adstringo","adsuesco","adsum","adulatio","adulescens","aduro","advenio","adversus","advoco","aedificium","aeger","aegre","aegrotatio","aegrus","aeneus","aequitas","aequus","aer","aestas","aestivus","aestus","aetas","aeternus","ager","aggero","aggredior","agnitio","agnosco","ago","ait","aiunt","alias","alienus","alii","alioqui","aliqua","aliquam","aliquid","alius","allatus","alo","alter","altus","alveus","amaritudo","ambitus","ambulo","amet","amicitia","amiculum","amissio","amita","amitto","amo","amor","amoveo","amplexus","amplitudo","amplus","ancilla","angelus","angulus","angustus","animadverto","animi","animus","annus","anser","ante","antea","antepono","antiquus","aperiam","aperio","aperte","apostolus","apparatus","appello","appono","appositus","approbo","apto","aptus","apud","aqua","ara","aranea","arbitro","arbor","arbustum","arca","arceo","arcesso","architecto","arcus","argentum","argumentum","arguo","arma","armarium","aro","ars","articulus","artificiose","arto","arx","ascisco","ascit","asper","asperiores","aspernatur","aspicio","asporto","assentator","assumenda","astrum","at","atavus","ater","atque","atqui","atrocitas","atrox","attero","attollo","attonbitus","auctor","auctus","audacia","audax","audentia","audeo","audio","auditor","aufero","aureus","aurum","aut","autem","autus","auxilium","avaritia","avarus","aveho","averto","baiulus","balbus","barba","bardus","basium","beatae","beatus","bellicus","bellum","bene","beneficium","benevolentia","benigne","bestia","bibo","bis","blandior","blanditiis","bonus","bos","brevis","cado","caecus","caelestis","caelum","calamitas","calcar","calco","calculus","callide","campana","candidus","canis","canonicus","canto","capillus","capio","capitulus","capto","caput","carbo","carcer","careo","caries","cariosus","caritas","carmen","carpo","carus","casso","caste","casus","catena","caterva","cattus","cauda","causa","caute","caveo","cavus","cedo","celebrer","celer","celo","cena","cenaculum","ceno","censura","centum","cerno","cernuus","certe","certus","cervus","cetera","charisma","chirographum","cibo","cibus","cicuta","cilicium","cimentarius","ciminatio","cinis","circumvenio","cito","civis","civitas","clam","clamo","claro","clarus","claudeo","claustrum","clementia","clibanus","coadunatio","coaegresco","coepi","coerceo","cogito","cognatus","cognomen","cogo","cohaero","cohibeo","cohors","colligo","collum","colo","color","coma","combibo","comburo","comedo","comes","cometes","comis","comitatus","commemoro","comminor","commodi","commodo","communis","comparo","compello","complectus","compono","comprehendo","comptus","conatus","concedo","concido","conculco","condico","conduco","confero","confido","conforto","confugo","congregatio","conicio","coniecto","conitor","coniuratio","conor","conqueror","conscendo","consectetur","consequatur","consequuntur","conservo","considero","conspergo","constans","consuasor","contabesco","contego","contigo","contra","conturbo","conventus","convoco","copia","copiose","cornu","corona","corporis","corpus","correptius","corrigo","corroboro","corrumpo","corrupti","coruscus","cotidie","crapula","cras","crastinus","creator","creber","crebro","credo","creo","creptio","crepusculum","cresco","creta","cribro","crinis","cruciamentum","crudelis","cruentus","crur","crustulum","crux","cubicularis","cubitum","cubo","cui","cuius","culpa","culpo","cultellus","cultura","cum","cumque","cunabula","cunae","cunctatio","cupiditas","cupiditate","cupio","cuppedia","cupressus","cur","cura","curatio","curia","curiositas","curis","curo","curriculum","currus","cursim","curso","cursus","curto","curtus","curvo","custodia","damnatio","damno","dapifer","debeo","debilito","debitis","decens","decerno","decet","decimus","decipio","decor","decretum","decumbo","dedecor","dedico","deduco","defaeco","defendo","defero","defessus","defetiscor","deficio","defleo","defluo","defungo","degenero","degero","degusto","deinde","delectatio","delectus","delego","deleniti","deleo","delibero","delicate","delinquo","deludo","demens","demergo","demitto","demo","demonstro","demoror","demulceo","demum","denego","denique","dens","denuncio","denuo","deorsum","depereo","depono","depopulo","deporto","depraedor","deprecator","deprimo","depromo","depulso","deputo","derelinquo","derideo","deripio","deserunt","desidero","desino","desipio","desolo","desparatus","despecto","dicta","dignissimos","distinctio","dolor","dolore","dolorem","doloremque","dolores","doloribus","dolorum","ducimus","ea","eaque","earum","eius","eligendi","enim","eos","error","esse","est","et","eum","eveniet","ex","excepturi","exercitationem","expedita","explicabo","facere","facilis","fuga","fugiat","fugit","harum","hic","id","illo","illum","impedit","in","incidunt","infit","inflammatio","inventore","ipsa","ipsam","ipsum","iste","itaque","iure","iusto","labore","laboriosam","laborum","laudantium","libero","magnam","magni","maiores","maxime","minima","minus","modi","molestiae","molestias","mollitia","nam","natus","necessitatibus","nemo","neque","nesciunt","nihil","nisi","nobis","non","nostrum","nulla","numquam","occaecati","ocer","odio","odit","officia","officiis","omnis","optio","paens","pariatur","patior","patria","patrocinor","patruus","pauci","paulatim","pauper","pax","peccatus","pecco","pecto","pectus","pecus","peior","pel","perferendis","perspiciatis","placeat","porro","possimus","praesentium","provident","quae","quaerat","quam","quas","quasi","qui","quia","quibusdam","quidem","quis","quisquam","quo","quod","quos","ratione","recusandae","reiciendis","rem","repellat","repellendus","reprehenderit","repudiandae","rerum","saepe","sapiente","sed","sequi","similique","sint","sit","socius","sodalitas","sol","soleo","solio","solitudo","solium","sollers","sollicito","solum","solus","soluta","solutio","solvo","somniculosus","somnus","sonitus","sono","sophismata","sopor","sordeo","sortitus","spargo","speciosus","spectaculum","speculum","sperno","spero","spes","spiculum","spiritus","spoliatio","sponte","stabilis","statim","statua","stella","stillicidium","stipes","stips","sto","strenuus","strues","studio","stultus","suadeo","suasoria","sub","subito","subiungo","sublime","subnecto","subseco","substantia","subvenio","succedo","succurro","sufficio","suffoco","suffragium","suggero","sui","sulum","sum","summa","summisse","summopere","sumo","sumptus","sunt","supellex","super","suppellex","supplanto","suppono","supra","surculus","surgo","sursum","suscipio","suscipit","suspendo","sustineo","suus","synagoga","tabella","tabernus","tabesco","tabgo","tabula","taceo","tactus","taedium","talio","talis","talus","tam","tamdiu","tamen","tametsi","tamisium","tamquam","tandem","tantillus","tantum","tardus","tego","temeritas","temperantia","templum","tempora","tempore","temporibus","temptatio","tempus","tenax","tendo","teneo","tener","tenetur","tenuis","tenus","tepesco","tepidus","ter","terebro","teres","terga","tergeo","tergiversatio","tergo","tergum","termes","terminatio","tero","terra","terreo","territo","terror","tersus","tertius","testimonium","texo","textilis","textor","textus","thalassinus","theatrum","theca","thema","theologus","thermae","thesaurus","thesis","thorax","thymbra","thymum","tibi","timidus","timor","titulus","tolero","tollo","tondeo","tonsor","torqueo","torrens","tot","totam","totidem","toties","totus","tracto","trado","traho","trans","tredecim","tremo","trepide","tres","tribuo","tricesimus","triduana","tripudio","tristis","triumphus","trucido","truculenter","tubineus","tui","tum","tumultus","tunc","turba","turbo","turpis","tutamen","tutis","tyrannus","uberrime","ubi","ulciscor","ullam","ullus","ulterius","ultio","ultra","umbra","umerus","umquam","una","unde","undique","universe","unus","urbanus","urbs","uredo","usitas","usque","ustilo","ustulo","usus","ut","uter","uterque","utilis","utique","utor","utpote","utrimque","utroque","utrum","uxor","vaco","vacuus","vado","vae","valde","valens","valeo","valetudo","validus","vallum","vapulus","varietas","varius","vehemens","vel","velit","velociter","velum","velut","venia","veniam","venio","ventito","ventosus","ventus","venustas","ver","verbera","verbum","vere","verecundia","vereor","vergo","veritas","veritatis","vero","versus","verto","verumtamen","verus","vesco","vesica","vesper","vespillo","vester","vestigium","vestrum","vetus","via","vicinus","vicissitudo","victoria","victus","videlicet","video","viduo","vigilo","vigor","vilicus","vilis","vilitas","villa","vinco","vinculum","vindico","vinitor","vinum","vir","virga","virgo","viridis","viriliter","virtus","vis","viscus","vita","vitae","vitiosus","vitium","vito","vivo","vix","vobis","vociferor","voco","volaticus","volo","volubilis","voluntarius","volup","voluptas","voluptate","voluptatem","voluptates","voluptatibus","voluptatum","volutabrum","volva","vomer","vomica","vomito","vorago","vorax","voro","vos","votum","voveo","vox","vulariter","vulgaris","vulgivagus","vulgo","vulgus","vulnero","vulnus","vulpes","vulticulus","xiphias"];var $a={word:Oe$1},xe$1=$a;var eo={title:"English",code:"en",language:"en",endonym:"English",dir:"ltr",script:"Latn"},ze$1=eo;var Ve$1=['"Awaken, My Love!"',"(What's The Story) Morning Glory?","- Tragedy +","13 Reasons Why (Season 3)","21st Century Breakdown","30 De Febrero","432 Hz Deep Healing","5-Star","528 Hz Meditation Music","54+1","8 Mile","808s & Heartbreak","9 To 5 And Odd Jobs","A Beautiful Lie","A Day At The Races","A Day Without Rain","A Fever You Can't Sweat Out","A Gangsta's Pain","A Gift & A Curse","A Hard Day's Night","A Head Full Of Dreams","A Kind Of Magic","A Million Ways To Murder","A Moment Apart","A Song For Every Moon","A Thousand Suns","A Winter Romance","ABBA","AI YoungBoy","AJ Tracey","Act One","After Hours","Agent Provocateur","All About You","All I Know So Far: Setlist","All Or Nothing","All Out","All Over The Place","All Stand Together","All The Lost Souls","All The Things I Never Said","All Things Must Pass","Alleen","Alright, Still","Alta Suciedad","America","American Heartbreak","American Teen","And Justice For None","Animal Songs","Another Friday Night","Anything Goes","Ao Vivo Em S\xE3o Paulo","Ao Vivo No Ibirapuera","Apricot Princess","Aqui E Agora (Ao Vivo)","Arcane League Of Legends","Ardipithecus","Aretha Now","Around The Fur","Arrival","Artist 2.0","As She Pleases","Ascend","Ashlyn","Astro Lounge","At Night, Alone.","At. Long. Last. ASAP","Atlas","Audioslave","Aura","Austin","Awake","Away From The Sun","Ayayay!","Baby On Baby","Back For Everything","Back From The Edge","Back In Black","Back To Black","Back To The Game","Bad","Bah\xEDa Ducati","Baila","Barbie The Album","Battleground","Bayou Country","Bcos U Will Never B Free","Be","Be Here Now","Beautiful Mind","Beautiful Thugger Girls","Beautiful Trauma","Beauty And The Beast","Beggars Banquet","Being Funny In A Foreign Language","Berlin Lebt","Berry Is On Top","Best White Noise For Baby Sleep - Loopable With No Fade","Big Baby DRAM","Bigger, Better, Faster, More!","Billy Talent II","Black Star Elephant","Blackout","Blank Face LP","Bleach","Blizzard Of Ozz","Blonde","Blood Sugar Sex Magik","Bloom","Blowin' Your Mind!","Blu Celeste","Blue","Blue Banisters","Blue Hawaii","Blue Neighbourhood","Bluebird Days","Bobby Tarantino","Bobby Tarantino II","Bon Iver","Born Pink","Born To Run","Brand New Eyes","Break The Cycle","Breakfast In America","Breakthrough","Brett Young","Bridge Over Troubled Water","Bright: The Album","Brol","Buds","Buena Vista Social Club","Built On Glass","Bury Me At Makeout Creek","Busyhead","By The Way","CB6","CNCO","California Sunrise","Californication","Call Me Irresponsible","Calm","Camino Palmero","Camp","Caracal","Carbon Fiber Hits","Carnival","Carry On","Cartel De Santa","Certified Lover Boy","Chaaama","Chama Meu Nome","Chapter 1: Snake Oil","Chapter 2: Swamp Savant","Chapter One","Charlie's Angels","Cherry Bomb","Chief","Chocolate Factory","Chosen","Chris Brown","Christina Aguilera","Chromatica","Church","City Of Evil","Clandestino","Clouds","Coco","Collision Course","Colour Vision","Combat Rock","Come Around Sundown","Come Away With Me","Come Home The Kids Miss You","Come What(ever) May","Commando","Common Sense","Communion","Conditions","Confident","Confrontation","Control The Streets, Volume 2","Corinne Bailey Rae","Costello Music","Cottonwood","Covers, Vol. 2","Cozy Tapes Vol. 2: Too Cozy","Crash Talk","Crazy Love","Crazysexycool","Crowded House","Cruisin' With Junior H","Culture","Current Mood","DS2","Dale","Danger Days: The True Lives Of The Fabulous Killjoys","Dangerous Woman","Dangerous: The Double Album","Dark Horse","Day69","Daydream","De Fiesta","De Viaje","DeAnn","Death Race For Love","Delirium","Delta","Demidevil","Depression Cherry","Descendants","Desgenerados Mixtape","Destin","Destiny Fulfilled","Desvelado","Detroit 2","Dex Meets Dexter","Dharma","Die A Legend","Different World","Dig Your Roots","Digital Druglord","Dirt","Disclaimer I / II","Discovery","Disraeli Gears","Disumano","Dizzy Up The Girl","Don't Play That Song","Donda","Donde Quiero Estar","Doo-Wops & Hooligans","Down The Way","Dr. Feelgood","Dream Your Life Away","Dreaming Out Loud","Drip Harder","Drive","Drones","Dropped Outta College","Drowning","Dua Warna Cinta","Dulce Beat","Dusty In Memphis","Dutty Rock","Dying To Live","ENR","East Atlanta Love Letter","Editorial","Edna","El Abayarde","El Amor En Los Tiempos Del Perreo","El Camino","El Comienzo","El Dorado","El Karma","El Mal Querer","El Malo","El Trabajo Es La Suerte","El Viaje De Copperpot","Electric Ladyland","Emotion","En Tus Planes","Endless Summer Vacation","Enter The Wu-Tang (36 Chambers)","Equals (=)","Estrella","Euphoria","Europop","Evermore","Every Kingdom","Everyday Life","Evolve","Expectations","Face Yourself","Facelift","Fallin'","Fancy You","Fantas\xEDa","Favourite Worst Nightmare","Fear Of The Dark","Fearless","Feel Something","Feels Like Home","Femme Fatale","Ferxxocalipsis","Fifty Shades Darker","Fifty Shades Freed","Fifty Shades Of Grey","Final (Vol.1)","Finding Beauty In Negative Spaces","Fine Line","First Impressions Of Earth","First Steps","Five Seconds Flat","Folklore","For Emma, Forever Ago","Forajido EP 1","Forever","Forever Young","Formula Of Love: O+T=<3","Free 6lack","Freudian","Frozen II","Full Moon Fever","Funhouse","Funk Wav Bounces Vol.1","Future History","FutureSex/LoveSounds","Fuzzybrain","Gallery","Gangsta's Paradise","Gemini","Gemini Rights","Generationwhy","Get A Grip","Get Up","Gettin' Old","Girl","Gladiator","Glisten","Globalization","Gloria","Glory Days","God's Project","Gold Skies","Golden","Good Evening","Good Thing","Goodbye Yellow Brick Road","Gossip Columns","Got Your Six","Graceland","Graduation","Grand Champ","Grandson, Vol. 1","Green River","Guerra","Ha*Ash Primera Fila - Hecho Realidad","Haiz","Hamilton","Happy Endings","Harry Styles","Hasta La Ra\xEDz","Hatful Of Hollow","Head In The Clouds","Heard It In A Past Life","Heart Shaped World","Heartbeat City","Heartbreak On A Full Moon / Cuffing Season - 12 Days Of Christmas","Heaven Or Hell","Heaven knows","Hellbilly Deluxe","Hellboy","Help!","Her Loss","Here Comes The Cowboy","Hey World","High School Musical","High Tide In The Snake's Nest","Historias De Un Capricornio","Hndrxx","Hombres G (Devu\xE9lveme A Mi Chica)","Homerun","Homework","Hot Fuss","Hot Pink","Hot Sauce / Hello Future","Hot Space","Hotel Diablo","Houses Of The Holy","How Big, How Blue, How Beautiful","How I'm Feeling","How To Be Human","How To Save A Life","How To: Friend, Love, Freefall","Hozier","Human","Huncho Jack, Jack Huncho","Hunter Hayes","Hysteria","I Am...Sasha Fierce","I Can't Handle Change","I Met You When I Was 18. (The Playlist)","I Never Liked You","I Never Loved A Man The Way I Love You","I See You","I Think You Think Too Much Of Me","I Used To Know Her","I Used To Think I Could Fly","I'm Comin' Over","Ich & Keine Maske","If You Can Believe Your Eyes & Ears","Il Ballo Della Vita","Ill Communication","Imagination & The Misfit Kid","Imagine","Immortalized","In A Perfect World...","In Colour","In My Own Words","In Rainbows","In Return","In The Lonely Hour","Infest","Innuendo","Inter Shibuya - La Mafia","Interstellar","Is This It","It Was Written","It's Not Me, It's You","It's Only Me","Ivory","JackBoys","Jamie","Jazz","Jibrail & Iblis","Jordi","Jordin Sparks","Jose","Just As I Am","Just Cause Y'all Waited 2","Just Like You","Justified","K-12 / After School","K.I.D.S.","K.O.","K.O.B. Live","KG0516","KOD","Kane Brown","Kid A","Kid Krow","Kids See Ghosts","Kids in Love","Kinks (You Really Got Me)","Know-It-All","Konvicted","Kring","LANY","LM5","La Criatura","La Flaca","La Melodia De La Calle","La Revolucion","Lady Lady","Lady Wood","Langit Mong Bughaw","Las Que No Iban A Salir","Last Day Of Summer","Last Year Was Complicated","Layers","Layover","Lazarus","Led Zeppelin","Left Of The Middle","Leftoverture","Legends Never Die","Let's Skip To The Wedding","Let's Talk About Love","Licensed To Ill","Life In Cartoon Motion","Life Thru A Lens","Lifelines","Like..?","Lil Big Pac","Lil Boat","Lil Boat 2","Lil Boat 3.5","Lil Kiwi","Lil Pump","Limon Y Sal","Listen Without Prejudice","Little Voice","Live On Red Barn Radio I & II","Lo Que And\xE1bamos Buscando","Lofi Fruits Music 2021","London Calling","Los Campeones Del Pueblo","Los Extraterrestres","Los Favoritos 2","Lost","Lost In Love","Loud","Love Sick","Love Story","Love Stuff","Love Yourself: Tear","Lover","Luca Brasi 2: Gangsta Grillz","Lust For Life","Luv Is Rage","M!ssundaztood","Ma Fleur","Made In Lagos","Mafia Bidness","Magazines Or Novels","Mainstream Sellout","Majestic","Make It Big","Make Yourself","Making Mirrors","Mamma Mia! Here We Go Again","Man Of The Woods","Manic","Me And My Gang","Meduza","Meet The Orphans","Meet The Woo","Melim","Mellon Collie And The Infinite Sadness","Melly vs. Melvin","Memories...Do Not Open","Menagerie","Midnights","Minecraft - Volume Alpha","Minutes To Midnight","Mix Pa Llorar En Tu Cuarto","Modo Avi\xF3n","Monkey Business","Mono.","Montana","Montevallo","Moosetape","Morning View","Motivan2","Moving Pictures","Mr. Davis","Mr. Misunderstood","Mulan","Mura Masa","Music From The Edge Of Heaven","Music Of The Sun","My House","My Kinda Party","My Krazy Life","My Liver Will Handle What My Heart Can't","My Moment","My Own Lane","My Turn","My Worlds","Na Praia (Ao Vivo)","Nakamura","Nation Of Two","Navegando","Need You Now","Neon Future III","Neotheater","Never Trust A Happy Song","New English","News Of The World","Nicole","Night & Day","Nimmerland","Nimrod","Nine Track Mind","No Angel","No Me Pidas Perd\xF3n","No More Drama","No Protection","No Strings Attached","No Time To Die","Nobody Is Listening","Non Stop Erotic Cabaret","Non-Fiction","Northsbest","Nostalgia","Nostalgia, Ultra","Notes On A Conditional Form","Now Or Never","O Embaixador (Ao Vivo)","O My Heart","OK Computer","Ocean","Ocean Avenue","Ocean Eyes","Odisea","Oh My My","Oh, What A Life","On The 6","One In A Million","One More Light","One Of These Nights","Open Up And Say...Ahh!","Ordinary Man","Origins","Out Of The Blue","Over It","OzuTochi","PTSD","Pa Las Baby's Y Belikeada","Pa Que Hablen","Pa' Luego Es Tarde","Pa' Otro La 'O","Pablo Honey","Pain Is Love","Pain Is Temporary","Painting Pictures","Palmen Aus Plastik 2","Para Mi Ex","Para Siempre","Partners In Crime","Pawn Shop","Pegasus / Neon Shark VS Pegasus","Pet Sounds","Piece By Piece","Pier Pressure","Pineapple Sunrise","Piseiro 2020 Ao Vivo","Planet Pit","Plans","Play Deep","Playa Saturno","Por Primera Vez","Por Vida","Positions","Post Human: Survival Horror","Poster Girl","Prazer, Eu Sou Ferrugem (Ao Vivo)","Pretty Girls Like Trap Music","Pretty. Odd.","Prince Royce","Prisma","Prometo","Providence","Puberty 2","Punisher","Purgatory","Purple Rain","Que Bendici\xF3n","Queen Of The Clouds","Quiero Volver","R&G (Rhythm & Gangsta): The Masterpiece","Raise!","Ransom 2","Rapunzel","Rare","Re Mida","Ready To Die","Realer","Rebelde","Reclassified","Recovery","Recuerden Mi Estilo","Reggatta De Blanc","Regulate\u2026 G Funk Era","Reik","Reise, Reise","Relapse","Relaxing Piano Lullabies And Natural Sleep Aid For Baby Sleep Music","Religiously. The Album.","Replay","Results May Vary","Revenge","Revolve","Revolver","Ricky Martin","Rien 100 Rien","Ripcord","Rise And Fall, Rage And Grace","Rise Of An Empire","Robin Hood: Prince Of Thieves","Rock N Roll Jesus","Romance","Romances","Ronan","Royal Blood","Rumours","Sad Boyz 4 Life II","San Lucas","Santana World","Saturation III","Sauce Boyz","Savage Mode","Saxobeats","Scarlet","Schwarzes Herz","Seal The Deal & Let's Boogie","Section.80","Segundo Romance","Sehnsucht","Shake The Snow Globe","Shang-Chi And The Legend Of The Ten Rings: The Album","Sheer Heart Attack","Shiesty Season","Shock Value","Shoot For The Stars, Aim For The Moon","Signed Sealed And Delivered","Signos","Silent Alarm","Simplemente Gracias","Sin Bandera","Sing Me A Lullaby, My Sweet Temptation","Sinner","Sirio","Sit Still, Look Pretty","Skin","Slowhand","Smash","Smithereens","Snow Cougar","Social Cues","Some Girls","Song Hits From Holiday Inn","Songs For Dads","Songs For The Deaf","Songs For You, Truths For Me","Songs In The Key Of Life","Souled Out","Sounds Of Silence","Soy Como Quiero Ser","Speak Now","Speak Your Mind","Speakerboxxx/The Love Below","Spider-Man: Into The Spider-Verse","Split Decision","Square Up","SremmLife","Starboy","Stay +","Stay Dangerous","Staying At Tamara's","Steppenwolf","Stick Season","Still Bill","Straight Outta Compton","Strange Trails","Stronger","Suavemente","Sublime","Suck It and See","Sucker","Sue\xF1os","Sugar","Summer Forever","Summer,","Sunset Season","Sunshine On Leith","Surfer Rosa","Sweet Talker","SweetSexySavage","System Of A Down","TA13OO","Talk That Talk","Talking Heads: 77","Tangled Up","Tango In The Night","Taxi Driver","Taylor Swift","Tell Me It's Real","Ten","Ten Summoner's Tales","Terra Sem Cep (Ao Vivo)","Terral","Testing","Tha Carter III","Thank Me Later","That's Christmas To Me","The Academy","The Adventures Of Bobby Ray","The Album","The Andy Williams Christmas Album","The Aviary","The Balcony","The Battle Of Los Angeles","The Beatles (White Album)","The Beginning","The Better Life","The Big Day","The Book","The Breakfast Club","The Cars","The Colour And The Shape","The Death Of Peace Of Mind","The Diary Of Alicia Keys","The Documentary","The Emancipation Of Mimi","The Eminem Show","The End Of Everything","The Final Countdown","The Forever Story","The Foundation","The Goat","The Golden Child","The Good Parts","The Greatest Showman: Reimagined","The Green Trip","The Hardest Love","The Head And The Heart","The Human Condition","The Infamous","The Lady Killer","The Last Don II","The Lion King","The Lockdown Sessions","The London Sessions","The Lord Of The Rings: The Fellowship Of The Ring","The Lost Boy","The Magic Of Christmas / The Christmas Song","The Marshall Mathers LP","The Martin Garrix Collection","The Melodic Blue","The Mockingbird & The Crow","The Pains Of Growing","The Papercut Chronicles","The Perfect Luv Tape","The Pinkprint","The Predator","The Queen Is Dead","The ReVe Festival: Finale","The Rise And Fall Of Ziggy Stardust And The Spiders From Mars","The Rising Tied","The River","The Stone Roses","The Story Of Us","The Stranger","The Sufferer & The Witness","The Sun's Tirade","The Temptations Sing Smokey","The Time Of Our Lives","The Way It Is","The Wonderful World Of Sam Cooke","The Writing's On The Wall","The Young And The Hopeless","Therapy","Therapy Session","There Is More (Live)","There Is Nothing Left To Lose","These Things Happen","Third Eye Blind","This Is Me...Then","This Unruly Mess I've Made","Threat to Survival","Thrill Of The Chase","Time","Timelezz","To Let A Good Thing Die","To Pimp A Butterfly","Toast To Our Differences","Todos Os Cantos, Vol. 1 (Ao Vivo)","Too Hard","Torches X","Total Xanarchy","Toto IV","Toulouse Street","Tourist History","Toxicity","Tragic Kingdom","Tranquility Base Hotel & Casino","Traumazine","Traveler","Tres Hombres","Trip At Knight","Tron: Legacy","True Blue","True Colors","Trustfall","Tu Veneno Mortal","Tudo Em Paz","Ubuntu","Ugly Is Beautiful","Ultra 2021","Una Mattina","Unbroken","Uncovered","Under Pressure","Unsponsored Content","Unstoppable","Unwritten","Urban Flora","Urban Hymns","Use Your Illusion I","Veneer","Versions Of Me","Vibes","Vice Versa","Vices & Virtues","Victory","Vida","Viejo Marihuano","Visual\xEDzate","Walk Away","Walk Me Home...","Watch The Throne","Wave","We Broke The Rules","We Love You Tecca","We Love You Tecca 2","Weezer (Green Album)","Welcome To The Madhouse","Westlife","What A Time To Be Alive","What Do You Think About The Car?","What Is Love?","What Makes You Country","What Separates Me From You","What You See Is What You Get / What You See Ain't Always What You Get","When It's Dark Out","When We All Fall Asleep, Where Do We Go?","Where The Light Is","While The World Was Burning","White Pony","Whitney","Who Really Cares","Who You Are","Who's Next","Wide Open","Wilder Mind","Wildfire","Willy And The Poor Boys","Wings / You Never Walk Alone","Wish","Wish You Were Here","Without Warning","Wonder","X&Y","XOXO","Y Que Quede Claro","YBN: The Mixtape","Yo Creo","You Will Regret","Youngblood","Younger Now","Youth"];var Ye$1=["$NOT","$uicideboy$","(G)I-DLE","*NSYNC","2 Chainz","21 Savage","6LACK","? & The Mysterians","A Boogie Wit da Hoodie","A Taste of Honey","A Tribe Called Quest","A-Ha","ABBA","AC/DC","AJ Tracey","ATEEZ","Ace of Base","Adele","Ado","Aerosmith","Agust D","Aitana","Al Dexter & his Troopers","Al Green","Al Jolson","Al Martino","Alan Jackson","Alannah Myles","Alec Benjamin","Alejandro Sanz","Alesso","Alfredo Olivas","Ali Gatie","Alice In Chains","Alina Baraz","All Time Low","All-4-One","All-American Rejects","Alok","America","American Quartet","Amii Stewart","Amitabh Bhattacharya","Ana Castela","Anderson .Paak","Andy Grammer","Angus & Julia Stone","Anirudh Ravichander","Anita Ward","Anitta","Anton Karas","Anuel AA","Arcade Fire","Archie Bell & The Drells","Archies","Aretha Franklin","Arizona Zervas","Armin van Buuren","Arthur Conley","Artie Shaw","Asake","Asees Kaur","Association","Atif Aslam","Audioslave","Aventura","Avril Lavigne","Aya Nakamura","B J Thomas","B.o.B","BLACKPINK","BONES","BROCKHAMPTON","BTS","Baby Keem","Bachman-Turner Overdrive","Backstreet Boys","Bad Bunny","Badshah","Bailey Zimmerman","Banda El Recodo","Barbra Streisand","Barry White","Bazzi","Bebe Rexha","Becky G","Becky Hill","Bee Gees","Ben Bernie","Ben Howard","Ben Selvin","Berlin","Bessie Smith","Bethel Music","Bette Midler","Beyonce","Bibi Blocksberg","Bibi und Tina","BigXthaPlug","Bill Doggett","Bill Haley & his Comets","Bill Withers","Billy Davis Jr","Billy Joel","Billy Paul","Billy Preston","Billy Swan","Birdy","Bizarrap","Blake Shelton","Blur","Bob Marley & The Wailers","Bob Seger","Bobby Darin","Bobby Lewis","Bobby McFerrin","Bobby Vinton","Boney M.","Bonez MC","Bonnie Tyler","Booba","Boston","BoyWithUke","Boyce Avenue","Bradley Cooper","Bread","Brent Faiyaz","Brett Young","Bring Me The Horizon","Britney Spears","Brooks & Dunn","Bruce Channel","Bruno & Marrone","Bryan Adams","Bryce Vine","Buddy Holly","Burna Boy","C. Tangana","CKay","CRO","Camilo","Capital Bra","Captain & Tennille","Cardi B","Carin Leon","Carlos Vives","Carly Simon","Carpenters","Cavetown","Celine Dion","Central Cee","Chaka Khan","Champs","Charlie Rich","Chayanne","Cheat Codes","Cher","Chic","Chicago","Chris Brown","Chris Isaak","Chris Young","Christina Aguilera","Christina Perri","Christopher Cross","Chuck Berry","Ciara","Cigarettes After Sex","Cliff Edwards (Ukelele Ike)","Cody Johnson","Colbie Caillat","Colby O'Donis","Cole Swindell","Coleman Hawkins","Contours","Coolio","Count Basie","Cris Mj","Culture Club","Cyndi Lauper","D-Block Europe","DAY6","DJ Khaled","DJ Luian","DJ Nelson","DMX","DNCE","DaVido","Dadju","Daft Punk","Dan + Shay","Daniel Powter","Danny Ocean","Darius Rucker","Dave","David Bowie","David Guetta","Daya","Dean Martin","Deee-Lite","Deep Purple","Deftones","Demi Lovato","Dennis Lloyd","Denzel Curry","Dermot Kennedy","Desiigner","Devo","Dewa 19","Dexys Midnight Runners","Diddy","Dido","Die drei !!!","Diego & Victor Hugo","Diljit Dosanjh","Dimitri Vegas & Like Mike","Dinah Shore","Dionne Warwick","Dire Straits","Disclosure","Dixie Cups","Doja Cat","Dolly Parton","Don Diablo","Don Henley","Don McLean","Don Omar","Donna Summer","Donovan","Dr. Dre","Drake","Dreamville","Dua Lipa","EMF","ENHYPEN","Earth, Wind & Fire","Ed Sheeran","Eddie Cantor","Eddie Cochran","Eddy Howard","Edgar Winter Group","Edwin Hawkins Singers","Edwin Starr","El Alfa","Eladio Carrion","Electric Light Orchestra","Elevation Worship","Ella Henderson","Ellie Goulding","Elton John","Elvis Presley","Empire of the Sun","En Vogue","Enrique Iglesias","Eslabon Armado","Ethel Waters","Etta James","Evanescence","Exile","Extreme","Faith Hill","Fall Out Boy","Fanny Brice","Farruko","Fats Domino","Fats Waller","Feid","Felix Jaehn","Fergie","Fetty Wap","Fiersa Besari","Fifth Harmony","Fine Young Cannibals","Five Finger Death Punch","Fleetwood Mac","Flo-Rida","Florence + The Machine","Flume","Foo Fighters","Foreigner","Foster The People","Four Aces","Frank Ocean","Frank Sinatra","Frankie Avalon","Frankie Valli","Fred Astaire","Freda Payne","Freddie Dredd","Freddy Fender","French Montana","Fuerza Regida","Fujii Kaze","Future","G-Eazy","Garfunkel and Oates","Gary Lewis & The Playboys","Gary Numan","Gene Autry","Gene Chandler","Gene Vincent","George Michael","George Strait","Gera MX","Ghost","Ghostemane","Gigi D'Agostino","Gladys Knight & The Pips","Glass Animals","Glee Cast","Gloria Gaynor","Godsmack","Gorillaz","Gotye","Grand Funk Railroad","Green Day","Grouplove","Grupo Firme","Grupo Marca Registrada","Gryffin","Gucci Mane","Guess Who","Gunna","Gusttavo Lima","Guy Mitchell","Gwen Stefani","Gzuz","H.E.R.","HARDY","Hailee Steinfeld","Halsey","Hans Zimmer","Harris Jayaraj","Harry Chapin","Harry James","Harry Nilsson","Harry Styles","Hayley Williams","Herb Alpert","Herman's Hermits","Hillsong UNITED","Hillsong Worship","Hollywood Undead","Honey Cone","Hoobastank","Hues Corporation","I Prevail","ITZY","IVE","Ice Cube","Ice Spice","Iggy Azalea","Imagine Dragons","Incubus","Internet Money","Isaac Hayes","J Geils Band","J. Cole","JAY-Z","JJ Lin","JP Saxe","JVKE","Jack Harlow","Jack Johnson","Jackie Wilson","Jacquees","James Arthur","James Brown","James TW","James Taylor","Jamie Foxx","Janet Jackson","Janis Joplin","Jason Aldean","Jason Mraz","Jay Chou","Jay Sean","Jay Wheeler","Jaymes Young","Jean Knight","Jeezy","Jennifer Lopez","Jennifer Warnes","Jeremih","Jeremy Zucker","Jerry Lee Lewis","Jerry Murad's Harmonicats","Jess Glynne","Jessie J","Jewel","Jimi Hendrix","Jimin","Jimmie Rodgers","Jimmy Dean","Jo Stafford","Joan Jett & The Blackhearts","Joao Gilberto","Joel Corry","John Fred & The Playboy Band","John Legend","John Mayer","John Williams","Johnnie Ray","Johnnie Taylor","Johnny Cash","Johnny Horton","Johnny Mathis","Johnny Mercer","Johnny Nash","Joji","Jon Bellion","Jonas Blue","Jonas Brothers","Joni James","Jorja Smith","Juan Gabriel","Juan Luis Guerra 4.40","Juanes","Juice Newton","Julia Michaels","Justin Bieber","Justin Quiles","KALEO","KAROL G","KAYTRANADA","KK","KSI","KYLE","Kacey Musgraves","Kane Brown","Kanye West","Karan Aujla","Kate Smith","Katy Perry","Kay Kyser","Ke$ha","Kehlani","Kelly Clarkson","Kenny Chesney","Kenny Loggins","Kenny Rogers","Kenshi Yonezu","Kenya Grace","Kevin Gates","Key Glock","Khalid","Kim Carnes","Kim Petras","Kimbra","Kina","King Gnu","Kings of Leon","Kingsmen","Kitty Kallen","Kodak Black","Kodaline","Kollegah","Kool & The Gang","Kungs","Kygo","Kylie Minogue","LE SSERAFIM","LISA","LMFAO","LUDMILLA","La Adictiva Banda San Jos\xE9 de Mesillas","La Oreja de Van Gogh","Labrinth","Lady Antebellum","Lady GaGa","Lainey Wilson","Lana Del Rey","Latto","Lauryn Hill","Lauv","League of Legends","Lee Brice","Leon Bridges","Leona Lewis","Lesley Gore","Leslie Odom Jr.","Liam Payne","Lifehouse","Lil Baby","Lil Dicky","Lil Durk","Lil Mosey","Lil Nas X","Lil Pump","Lil Skies","Lil Tjay","Lil Uzi Vert","Lil Yachty","Lil' Kim","Lil' Wayne","Lin-Manuel Miranda","Linkin Park","Lionel Richie","Lipps Inc","Lisa Loeb","Little Peggy March","Little Richard","Lofi Fruits Music","Lord Huron","Los Del Rio","Los Dos Carnales","Los Lobos","Los Temerarios","Los Tigres Del Norte","Los Tucanes De Tijuana","Lou Reed","Loud Luxury","Louis Jordan","Louis Tomlinson","Love Unlimited","Lovin' Spoonful","Luan Santana","Luciano","Luis Miguel","Luis R Conriquez","Lulu","Lunay","Lupe Fiasco","M","MAX","MC Hammer","MC Ryan SP","MKTO","Mabel","Machine Gun Kelly","Madison Beer","Madonna","Mahalini","Major Lazer","Mambo Kingz","Maneskin","Marco Antonio Sol\xEDs","Margaret Whiting","Maria Becerra","Mario","Mario Lanza","Mark Ronson","Maroon 5","Marshmello","Martin Garrix","Mary Ford","Mary J Blige","Mary J. Blige","Mary Wells","Matoma","Mau y Ricky","Meek Mill","Megadeth","Melanie","Melanie Martinez","Melendi","Men At Work","Metro Boomin","Michael Bubl\xE9","Michael Jackson","Michael McDonald","Michael Sembello","Miguel","Mike Posner","Miley Cyrus","Milky Chance","Minnie Riperton","Miracle Tones","Miranda Lambert","Mohit Chauhan","Mon Laferte","Moneybagg Yo","Monsta X","Mora","Morad","Morat","Mother Mother","Motley Crue","Ms. Lauryn Hill","Mumford & Sons","Muse","Mya","Myke Towers","NCT 127","NCT DREAM","NEFFEX","Nadin Amizah","Nancy Sinatra","Nat King Cole","Nate Smith","Natti Natasha","Nayer","Neil Diamond","Neil Sedaka","Nekfeu","Nelly","New Vaudeville Band","Next","Nickelback","Nicki Minaj","Nicki Nicole","Nicky Jam","Nina Simone","Ninho","Nipsey Hussle","Nirvana","Niska","No Doubt","Norah Jones","Normani","OMI","ONE OK ROCK","Oasis","Official HIGE DANdism","Offset","Old Dominion","Oliver Heldens","Olivia Rodrigo","Omah Lay","One Direction","Otis Redding","OutKast","Owl City","P Diddy","P!nk","PLK","PNL","Pamungkas","Passenger","Pat Boone","Patsy Cline","Patti LaBelle","Patti Page","Paul & Paula","Paul Revere & the Raiders","Paul Robeson","Paul Russell","Paul Whiteman","Paula Abdul","Peaches & Herb","Pearl Jam","Pee Wee Hunt","Pee Wee King","Pentatonix","Percy Faith","Percy Sledge","Peso Pluma","Peter Cetera","Peter Gabriel","Peter, Paul & Mary","Pharrell Williams","Pierce The Veil","Pineapple StormTv","Pink Floyd","Pink Sweat$","Piso 21","Pitbull","Plan B","Player","Polo G","Pop Smoke","Portugal. The Man","Pouya","Prince","Prince Royce","Pusha T","Quality Control","Queen","Quinn XCII","R. Kelly","RAF Camora","RAYE","REM","REO Speedwagon","Radiohead","Rag'n'Bone Man","Rage Against The Machine","Rahat Fateh Ali Khan","Rainbow Kitten Surprise","Rammstein","Rauw Alejandro","Ray Charles","Ray Parker Jr","Ray Stevens","Red Foley","Red Hot Chili Peppers","Red Velvet","Regard","Regina Belle","Reik","Rels B","Rema","Ricardo Arjona","Rich The Kid","Rick Astley","Rick Dees & his Cast of Idiots","Rick Ross","Rick Springfield","Ricky Martin","Ricky Nelson","Rihanna","Rita Ora","Ritchie Valens","Rizky Febian","Rob Thomas","Roberta Flack","Robin Schulz","Robin Thicke","Rod Stewart","Rod Wave","Roddy Ricch","Roger Miller","Romeo Santos","Rosemary Clooney","Roxette","Roy Acuff","Roy Orbison","Rudimental","Ruel","Ruth B.","Ryan Lewis","SCH","SEVENTEEN","SWV","Sabaton","Sabrina Carpenter","Sachet Tandon","Sachin-Jigar","Sade","Sam Cooke","Sam Feldt","Sam Hunt","Sam Smith","Sam The Sham & The Pharaohs","Sammy Davis Jr","Sammy Kaye","Santana","Sasha Alex Sloan","Savage Garden","Saweetie","Scorpions","Sean Kingston","Sean Paul","Sebastian Yatra","Sech","Seeb","Sezen Aksu","Sfera Ebbasta","Shaggy","Shania Twain","Shawn Mendes","Sheena Easton","Shinedown","Shubh","Sia","Sid Sriram","Sidhu Moose Wala","Silk","Silver Convention","Simon & Garfunkel","Sinead O'Connor","Sir Mix-a-Lot","Sister Sledge","Ski Mask The Slump God","Skillet","Skrillex","Sleeping At Last","Smokey Robinson","Snoop Dogg","Snow Patrol","Soda Stereo","Sonu Nigam","Sophie Ellis-Bextor","Spencer Davis Group","Spice Girls","Stan Getz","Starland Vocal Band","Stephen Sanchez","Steve Aoki","Steve Lacy","Steve Winwood","Stevie B","Sting","Stormzy","Strawberry Alarm Clock","Stray Kids","Stromae","Sublime","Sum 41","Summer Walker","Supertramp","Survivor","Swedish House Mafia","System Of A Down","T-Pain","T.I.","TAEYEON","TKKG","TLC","TOMORROW X TOGETHER","TOTO","TWICE","Tag Team","Tainy","Tammi Terrell","Tanishk Bagchi","Tate McRae","Taylor Swift","Tears For Fears","Tems","Tennessee Ernie Ford","Terence Trent D'Arby","Teresa Brewer","Terry Jacks","The Ames Brothers","The Animals","The B52s","The Bangles","The Beatles","The Black Eyed Peas","The Black Keys","The Box Tops","The Chainsmokers","The Chiffons","The Chordettes","The Clash","The Coasters","The Commodores","The Cowsills","The Cranberries","The Crew-Cuts","The Cure","The Detroit Spinners","The Diamonds","The Doobie Brothers","The Doors","The Drifters","The Emotions","The Eurythmics","The Fireballs","The Flamingos","The Foundations","The Four Seasons","The Fray","The Game","The Go Gos","The Goo Goo Dolls","The Head And The Heart","The Hollies","The Ink Spots","The Isley Brothers","The Jackson 5","The Kid LAROI","The Killers","The Kingston Trio","The Kooks","The Lemon Pipers","The Living Tombstone","The Lumineers","The Mamas & The Papas","The Marvelettes","The McCoys","The Mills Brothers","The Miracles","The Monkees","The Moody Blues","The National","The Neighbourhood","The Notorious B.I.G.","The O'Jays","The Offspring","The Osmonds","The Partridge Family","The Penguins","The Pet Shop Boys","The Platters","The Righteous Brothers","The Rolling Stones","The Ronettes","The Score","The Script","The Seekers","The Shangri-Las","The Smashing Pumpkins","The Staple Singers","The Strokes","The Supremes","The Temptations","The Turtles","The Vamps","The Verve","The Village People","The Weavers","The White Stripes","The Young Rascals","The Zombies","Thelma Houston","Thomas Rhett","Three Days Grace","Three Dog Night","Three Man Down","Timbaland","Timmy Trumpet","Toby Keith","Tom Jones","Tom Petty and the Heartbreakers","Tommy Dorsey","Tommy Edwards","Tommy James & the Shondells","Tone Loc","Toni Braxton","Topic","Tory Lanez","Tove Lo","Trevor Daniel","Trey Songz","Trippie Redd","Trueno","Tulsi Kumar","Tulus","Twenty One Pilots","Two Feet","Ty Dolla $ign","Tyga","Tyler Hubbard","U2","UB40","UZI","Ufo361","Upchurch","V","Vampire Weekend","Van McCoy","Van Morrison","Vance Joy","Vanessa Carlton","Vanessa Williams","Vera Lynn","Vernon Dalhart","Vicente Fernandez","Vishal-Shekhar","Volbeat","WILLOW","Wale","Wallows","Weezer","Wham!","Whitney Houston","Why Don't We","Wilbert Harrison","Wilson Phillips","Wiz Khalifa","Woody Guthrie","Wyclef Jean","XXXTENTACION","Xavi","YG","YNW Melly","YOASOBI","Yandel","Years & Years","Yeat","Yo Gotti","Young Dolph","Young Miko","Young Thug","YoungBoy Never Broke Again","Yung Gravy","Yuuri","Yuvan Shankar Raja","ZAYN","ZZ Top","Zac Brown Band","Zach Bryan","Zara Larsson","aespa","benny blanco","blink-182","d4vd","deadmau5","girl in red","gnash","iann dior","will.i.am"];var je$1=["Acid House","Acid Jazz","Acid Rock","Acoustic","Acoustic Blues","Afro-Pop","Afrobeat","Alt-Rock","Alternative","Ambient","American Trad Rock","Americana","Anime","Arena Rock","Art-Rock","Avant-Garde","Avant-Punk","Baladas y Boleros","Barbershop","Baroque","Bebop","Big Band","Black Metal","Blue Note","Bluegrass","Blues","Boogaloo","Bop","Bossa Nova","Bounce","Brazilian Funk","Breakbeat","Britpop","CCM","Cajun","Cantopop","Celtic","Celtic Folk","Chamber Music","Chant","Chanukah","Chicago Blues","Chicago House","Chicano","Children\u2019s Music","Chill","Choral","Christian","Christmas","Classical","Club","College Rock","Conjunto","Cool Jazz","Country","Crunk","Dance","Dancehall","Death Metal","Deep House","Delta Blues","Detroit Techno","Dirty South","Disco","Disney","Dixieland","Doo-wop","Downtempo","Dream Pop","Drill","Drinking Songs","Drone","Drum'n'bass","Dub","Dubstep","EDM","Early Music","East Coast Rap","Easter","Easy Listening","Eclectic","Electric Blues","Electro","Electronic","Electronica","Emo","Enka","Environmental","Ethio-jazz","Experimental","Experimental Rock","Flamenco","Folk","Folk-Rock","Forro","French Pop","Funk","Fusion","Gangsta Rap","Garage","German Folk","German Pop","Glam Rock","Gospel","Goth","Grime","Grindcore","Groove","Grunge","Hair Metal","Halloween","Happy","Hard Bop","Hard Dance","Hard Rock","Hardcore","Hardcore Punk","Hardcore Rap","Hardstyle","Healing","Heavy Metal","High Classical","Hip Hop","Holiday","Honky Tonk","House","IDM","Impressionist","Indie","Industrial","Instrumental","J-Dance","J-Idol","J-Pop","J-Punk","J-Rock","J-Ska","J-Synth","Jackin House","Jam Bands","Japanese Pop","Jazz","Jungle","K-Pop","Karaoke","Kayokyoku","Kids","Kitsch","Klezmer","Krautrock","Latin","Latin Jazz","Latin Rap","Local","Lounge","Lullabies","MPB","Mainstream Jazz","Malay","Mandopop","March","Mariachi","Mawwal","Medieval","Meditation","Metal","Metalcore","Minimal Techno","Minimalism","Modern","Motown","Mugham","Musicals","Musique Concr\xE8te","Nature","Neo-Soul","Nerdcore","New Acoustic","New Age","New Mex","New Wave","No Wave","Noise","Nordic","Novelty","OPM","Oi!","Old School Rap","Opera","Orchestral","Original Score","Outlaw Country","Pagode","Party","Piano","Polka","Pop","Pop Film","Pop Latino","Post Dubstep","Power Pop","Praise & Worship","Progressive House","Progressive Rock","Proto-punk","Psych Rock","Psychedelic","Punk","Punk Rock","Qawwali","Quiet Storm","R&B","Ragtime","Rainy Day","Rap","Reggae","Reggaeton","Regional Mexicano","Relaxation","Renaissance","Retro","Rock","Rockabilly","Rocksteady","Romance","Romantic","Roots Reggae","Roots Rock","SKA","Sad","Salsa","Samba","Second Line","Sertanejo","Shaabi","Shoegaze","Sleep","Smooth Jazz","Soft Rock","Soul","Soundtrack","Southern Gospel","Southern Rock","Space Rock","Stage And Screen","Steampunk","Summer","Surf","Swamp Pop","Swing","Synth Pop","Tango","Techno","Teen Pop","Tejano","Tex-Mex","Thanksgiving","Traditional","Trance","Trip Hop","Tropical","Underground Rap","Urban","Urban Cowboy","West Coast Rap","Western Swing","World","Worldbeat","Zydeco"];var qe$1=["(Everything I Do) I Do it For You","(Ghost) Riders in the Sky","(I Can't Get No) Satisfaction","(I've Got a Gal In) Kalamazoo","(I've Had) the Time of My Life","(It's No) Sin","(Just Like) Starting Over","(Let Me Be Your) Teddy Bear","(Put Another Nickel In) Music! Music! Music!","(Sexual) Healing","(Sittin' On) the Dock of the Bay","(They Long to Be) Close to You","(You Keep Me) Hangin' On","(You're My) Soul & Inspiration","(Your Love Keeps Lifting Me) Higher & Higher","12th Street Rag","1999","19th Nervous Breakdown","50 Ways to Leave Your Lover","9 to 5","96 Tears","A Boy Named Sue","A Hard Day's Night","A String of Pearls","A Thousand Miles","A Tree in the Meadow","A Whiter Shade of Pale","A Whole New World (Aladdin's Theme)","A Woman in Love","A-Tisket A-Tasket","ABC","Abracadabra","Ac-cent-tchu-ate the Positive","Addicted to Love","After You've Gone","Afternoon Delight","Again","Against All Odds (Take a Look At Me Now)","Ain't Misbehavin'","Ain't No Mountain High Enough","Ain't No Sunshine","Ain't That a Shame","Airplanes","All Along the Watchtower","All I Have to Do is Dream","All I Wanna Do","All My Lovin' (You're Never Gonna Get It)","All Night Long (All Night)","All Out of Love","All Shook Up","All You Need is Love","Alone","Alone Again (Naturally)","Always On My Mind","American Pie","American Woman","Angie","Another Brick in the Wall (part 2)","Another Day in Paradise","Another Night","Another One Bites the Dust","Apologize","April Showers","Aquarius/Let The Sunshine In","Are You Lonesome Tonight?","Arthur's Theme (Best That You Can Do)","As Time Goes By","At Last","At the Hop","Auf Wiederseh'n Sweetheart","Baby Baby","Baby Come Back","Baby Got Back","Baby Love","Baby One More Time","Bad","Bad Day","Bad Girls","Bad Moon Rising","Bad Romance","Baker Street","Ball of Confusion (That's What the World is Today)","Ballad of the Green Berets","Ballerina","Band On the Run","Band of Gold","Battle of New Orleans","Be Bop a Lula","Be My Baby","Be My Love","Beat It","Beautiful Day","Beauty & the Beast","Because I Love You (The Postman Song)","Because You Loved Me","Because of You","Before The Next Teardrop Falls","Begin the Beguine","Behind Closed Doors","Being With You","Believe","Ben","Bennie & the Jets","Besame Mucho","Best of My Love","Bette Davis Eyes","Big Bad John","Big Girls Don't Cry","Billie Jean","Bitter Sweet Symphony","Black Or White","Black Velvet","Blaze of Glory","Bleeding Love","Blue Suede Shoes","Blue Tango","Blueberry Hill","Blurred Lines","Body & Soul","Bohemian Rhapsody","Boogie Oogie Oogie","Boogie Woogie Bugle Boy","Boom Boom Pow","Born in the USA","Born to Be Wild","Born to Run","Boulevard of Broken Dreams","Brand New Key","Brandy (You're A Fine Girl)","Breaking Up is Hard to Do","Breathe","Bridge Over Troubled Water","Brother","Brother Louie","Brown Eyed Girl","Brown Sugar","Build Me Up Buttercup","Burn","Buttons & Bows","Bye","Bye Bye","Bye Bye Love","Caldonia Boogie (What Makes Your Big Head So Hard)","California Dreamin'","California Girls","Call Me","Call Me Maybe","Can You Feel the Love Tonight","Can't Buy Me Love","Can't Get Enough of Your Love","Can't Help Falling in Love","Candle in the Wind '97","Candy Man","Car Wash","Careless Whisper","Cars","Cat's in the Cradle","Cathy's Clown","Celebration","Centerfold","Chain of Fools","Chances Are","Change the World","Chapel of Love","Chattanooga Choo Choo","Chattanoogie Shoe-Shine Boy","Check On It","Cheek to Cheek","Cherish","Cherry Pink & Apple Blossom White","Cold","Colors of the Wind","Come On Eileen","Come On-a My House","Come Together","Coming Up","Cracklin' Rosie","Crazy","Crazy For You","Crazy Little Thing Called Love","Crazy in Love","Creep","Crimson & Clover","Crocodile Rock","Cry","Cry Like a Baby","Crying","Da Doo Ron Ron (When He Walked Me Home)","Dance to the Music","Dancing Queen","Dancing in the Dark","Dancing in the Street","Dardanella","Daydream Believer","December 1963 (Oh What a Night)","Delicado","Dilemma","Disco Duck","Disco Lady","Disturbia","Dizzy","Do That to Me One More Time","Do Wah Diddy Diddy","Do Ya Think I'm Sexy?","Do You Love Me?","Don't Be Cruel","Don't Fence Me In","Don't Go Breaking My Heart","Don't Leave Me This Way","Don't Let the Stars Get in Your Eyes","Don't Let the Sun Go Down On Me","Don't Speak","Don't Stop 'Til You Get Enough","Don't Worry Be Happy","Don't You (Forget About Me)","Don't You Want Me","Doo Wop (That Thing)","Down","Down Hearted Blues","Down Under","Downtown","Dreamlover","Dreams","Drop it Like It's Hot","Drops of Jupiter (Tell Me)","Duke of Earl","E.T.","Earth Angel","Ebony & Ivory","Eight Days a Week","Empire State Of Mind","End of the Road","Endless Love","Escape (The Pina Colada Song)","Eve of Destruction","Every Breath You Take","Every Little Thing She Does is Magic","Everybody Loves Somebody","Everybody Wants to Rule the World","Everyday People","Eye of the Tiger","Faith","Fallin'","Fame","Family Affair","Fantasy","Fast Car","Feel Good Inc","Feel Like Making Love","Fire & Rain","Firework","Flashdance. What a Feeling","Fly Robin Fly","Foolish Games","Footloose","For What It's Worth (Stop","Fortunate Son","Frankenstein","Freak Me","Freebird","Frenesi","Funkytown","Gangsta's Paradise","Georgia On My Mind","Georgy Girl","Get Back","Get Down Tonight","Get Off of My Cloud","Ghostbusters","Gimme Some Lovin'","Girls Just Wanna Have Fun","Give Me Everything","Gives You Hell","Glamorous","Glory of Love","Go Your Own Way","God Bless America","God Bless the Child","Gold Digger","Gonna Make You Sweat (Everybody Dance Now)","Good Lovin'","Good Times","Good Vibrations","Goodbye Yellow Brick Road","Goodnight","Got to Give it Up","Grease","Great Balls of Fire","Greatest Love of All","Green Onions","Green River","Green Tambourine","Grenade","Groove is in the Heart","Groovin'","Gypsies","Hair","Hang On Sloopy","Hanging by a Moment","Hanky Panky","Happy Days Are Here Again","Happy Together","Harbour Lights","Hard to Say I'm Sorry","Harper Valley PTA","Have You Ever Really Loved a Woman?","He'll Have to Go","He's So Fine","He's a Rebel","Heart of Glass","Heart of Gold","Heartbreak Hotel","Hello","Hello Dolly","Help Me","Help!","Here Without You","Here in My Heart","Hero","Hey Baby","Hey Jude","Hey Paula","Hey There","Hey There Delilah","Hey Ya!","Higher Love","Hips don't lie","Hit the Road","Hold On","Hollaback Girl","Honey","Honky Tonk","Honky Tonk Woman","Horse With No Name","Hot Child In The City","Hot Stuff","Hotel California","Hound Dog","House of the Rising Sun","How Deep is Your Love?","How Do I Live?","How Do You Mend a Broken Heart","How High the Moon","How Much is That Doggy in the Window?","How Will I Know","How You Remind Me","How to Save a Life","Hungry Heart","Hurt So Good","I Believe I Can Fly","I Can Dream","I Can Help","I Can See Clearly Now","I Can't Get Next to You","I Can't Get Started","I Can't Go For That (No Can Do)","I Can't Help Myself (Sugar Pie","I Can't Stop Loving You","I Don't Want to Miss a Thing","I Fall to Pieces","I Feel Fine","I Feel For You","I Feel Love","I Get Around","I Got You (I Feel Good)","I Got You Babe","I Gotta Feeling","I Heard it Through the Grapevine","I Honestly Love You","I Just Called to Say I Love You","I Just Wanna Be Your Everything","I Kissed A Girl","I Love Rock 'n' Roll","I Need You Now","I Only Have Eyes For You","I Shot the Sheriff","I Still Haven't Found What I'm Looking For","I Swear","I Think I Love You","I Walk the Line","I Wanna Dance With Somebody (Who Loves Me)","I Wanna Love You","I Want You Back","I Want to Hold Your Hand","I Want to Know What Love Is","I Went to Your Wedding","I Will Always Love You","I Will Follow Him","I Will Survive","I Write the Songs","I'll Be Missing You","I'll Be There","I'll Make Love to You","I'll Never Smile Again","I'll Take You There","I'll Walk Alone","I'll be seeing you","I'm Looking Over a Four Leaf Clover","I'm So Lonesome I Could Cry","I'm Sorry","I'm Walking Behind You","I'm Your Boogie Man","I'm Yours","I'm a Believer","I've Heard That Song Before","If (They Made Me a King)","If I Didn't Care","If You Don't Know Me By Now","If You Leave Me Now","Imagine","In Da Club","In the End","In the Ghetto","In the Mood","In the Summertime","In the Year 2525 (Exordium & Terminus)","Incense & Peppermints","Indian Reservation (The Lament Of The Cherokee Reservation Indian)","Instant Karma","Iris","Ironic","Irreplaceable","It Had to Be You","It's All in the Game","It's My Party","It's Now Or Never","It's Still Rock 'n' Roll to Me","It's Too Late","Jack & Diane","Jailhouse Rock","Jessie's Girl","Jive Talkin'","Johnny B Goode","Joy to the World","Judy in Disguise (With Glasses)","Jump","Jumpin' Jack Flash","Just Dance","Just My Imagination (Running Away With Me)","Just the Way You Are","Kansas City","Karma Chameleon","Keep On Loving You","Killing Me Softly With His Song","King of the Road","Kiss","Kiss & Say Goodbye","Kiss From a Rose","Kiss Me","Kiss On My List","Kiss You All Over","Knock On Wood","Knock Three Times","Kokomo","Kryptonite","Kung Fu Fighting","La Bamba","Lady","Lady Marmalade (Voulez-Vous Coucher Aver Moi Ce Soir?)","Last Train to Clarksville","Layla","Le Freak","Leader of the Pack","Lean On Me","Leaving","Let Me Call You Sweetheart","Let Me Love You","Let it Be","Let it Snow! Let it Snow! Let it Snow!","Let's Dance","Let's Get it On","Let's Groove","Let's Hear it For the Boy","Let's Stay Together","Light My Fire","Lights","Like a Prayer","Like a Rolling Stone","Like a Virgin","Little Darlin'","Little Things Mean a Lot","Live & Let Die","Livin' La Vida Loca","Livin' On a Prayer","Living For the City","Locked Out Of Heaven","Lola","Lonely Boy","Long Cool Woman in a Black Dress","Long Tall Sally","Look Away","Lookin' Out My Back Door","Lose Yourself","Losing My Religion","Louie Louie","Love Child","Love Hangover","Love In This Club","Love Is Blue (L'Amour Est Bleu)","Love Letters in the Sand","Love Me Do","Love Me Tender","Love Shack","Love Theme From 'A Star is Born' (Evergreen)","Love Train","Love Will Keep Us Together","Love is a Many Splendoured Thing","Love to Love You Baby","Love's Theme","Loving You","Low","Macarena","Mack the Knife","Maggie May","Magic","Magic Carpet Ride","Make Love to Me","Make it With You","Makin' Whoopee","Mama Told Me Not to Come","Man in the Mirror","Manana (Is Soon Enough For Me)","Maneater","Maniac","Maybellene","Me & Bobby McGee","Me & Mrs Jones","Memories Are Made of This","Mercy Mercy Me (The Ecology)","Mickey","Midnight Train to Georgia","Minnie the Moocher","Miss You","Miss You Much","Mister Sandman","Mmmbop","Mona Lisa","Monday Monday","Money For Nothing","Mony Mony","Mood Indigo","Moonlight Cocktail","Moonlight Serenade","More Than Words","More Than a Feeling","Morning Train (Nine to Five)","Mr Big Stuff","Mr Brightside","Mr Tambourine Man","Mrs Brown You've Got a Lovely Daughter","Mrs Robinson","Mule Train","Music","My Blue Heaven","My Boyfriend's Back","My Eyes Adored You","My Girl","My Guy","My Heart Will Go On","My Life","My Love","My Man","My Prayer","My Sharona","My Sweet Lord","Na Na Hey Hey (Kiss Him Goodbye)","Nature Boy","Near You","Need You Now","Need You Tonight","Never Gonna Give You Up","Night & Day","Night Fever","Nights in White Satin","No One","No Scrubs","Nobody Does it Better","Nothin' on You","Nothing Compares 2 U","Nothing's Gonna Stop Us Now","Ode To Billie Joe","Oh","Oh Happy Day","Oh My Papa (O Mein Papa)","Ol' Man River","Ole Buttermilk Sky","On Bended Knee","On My Own","On the Atchison","One","One Bad Apple","One More Try","One O'Clock Jump","One Sweet Day","One of These Nights","One of Us","Only The Lonely (Know The Way I Feel)","Only You (And You Alone)","Open Arms","Over There","Over the Rainbow","Paint it Black","Papa Don't Preach","Papa Was a Rolling Stone","Papa's Got a Brand New Bag","Paper Doll","Paper Planes","Paperback Writer","Party Rock Anthem","Peg o' My Heart","Peggy Sue","Pennies From Heaven","Penny Lane","People","People Got to Be Free","Personality","Philadelphia Freedom","Physical","Piano Man","Pick Up the Pieces","Pistol Packin' Mama","Play That Funky Music","Please Mr Postman","Poker Face","Pon De Replay","Pony Time","Pop Muzik","Prisoner of Love","Private Eyes","Promiscuous","Proud Mary","Purple Haze","Purple Rain","Puttin' on the Ritz","Que sera sera (Whatever will be will be)","Queen of Hearts","Rag Doll","Rag Mop","Rags to Riches","Raindrops Keep Falling On My Head","Rapture","Ray of Light","Reach Out (I'll Be There)","Red Red Wine","Rehab","Respect","Return to Sender","Reunited","Revolution","Rhapsody in Blue","Rhinestone Cowboy","Rich Girl","Riders On the Storm","Right Back Where We Started From","Ring My Bell","Ring of Fire","Rock Around the Clock","Rock With You","Rock Your Baby","Rock the Boat","Rock the Casbah","Roll Over Beethoven","Roll With It","Rolling In The Deep","Rosanna","Roses Are Red","Royals","Ruby Tuesday","Rudolph","Rum & Coca-Cola","Runaround Sue","Runaway","Running Scared","Rush Rush","Sailing","Save the Best For Last","Save the Last Dance For Me","Say It Right","Say My Name","Say Say Say","Say You","School's Out","Seasons in the Sun","Secret Love","Sentimental Journey","Sexyback","Sh-Boom (Life Could Be a Dream)","Shadow Dancing","Shake Down","Shake You Down","She Drives Me Crazy","She Loves You","She's a Lady","Shining Star","Shop Around","Shout","Silly Love Songs","Since U Been Gone","Sing","Singing The Blues","Single Ladies (Put A Ring On It)","Sir Duke","Sixteen Tons","Sledgehammer","Sleep Walk","Sleepy Lagoon","Slow Poke","Smells Like Teen Spirit","Smoke Gets in Your Eyes","Smoke On the Water","Smoke! Smoke! Smoke! (That Cigarette)","Smooth","So Much in Love","Soldier Boy","Some Enchanted Evening","Some of These Days","Somebody That I Used to Know","Somebody to Love","Someday","Somethin' Stupid","Something","Soul Man","Spanish Harlem","Spill the Wine","Spinning Wheel","Spirit in the Sky","St George & the Dragonette","St Louis Blues","Stagger Lee","Stairway to Heaven","Stand By Me","Stardust","Stars & Stripes Forever","Stay (I Missed You)","Stayin' Alive","Stop! in the Name of Love","Stormy Weather (Keeps Rainin' All the Time)","Straight Up","Strange Fruit","Stranger On the Shore","Strangers in the Night","Strawberry Fields Forever","Streets of Philadelphia","Stronger","Stuck On You","Sugar Shack","Sugar Sugar","Summer in the City","Summertime Blues","Sunday","Sunshine Superman","Sunshine of Your Love","Superstar","Superstition","Surfin' USA","Suspicious Minds","Swanee","Sweet Caroline (Good Times Never Seemed So Good)","Sweet Child O' Mine","Sweet Dreams (Are Made of This)","Sweet Georgia Brown","Sweet Home Alabama","Sweet Soul Music","Swinging On a Star","T For Texas (Blue Yodel No 1)","TSOP (The Sound of Philadelphia)","Take Me Home","Take My Breath Away","Take On Me","Take The 'A' Train","Take a Bow","Tammy","Tangerine","Tears in Heaven","Tears of a Clown","Temperature","Tennessee Waltz","Tequila","Tha Crossroads","Thank You (Falettinme be Mice Elf Again)","That Lucky Old Sun (Just Rolls Around Heaven All Day)","That Old Black Magic","That'll Be the Day","That's Amore","That's What Friends Are For","That's the Way (I Like It)","That's the Way Love Goes","The Boy is Mine","The Boys of Summer","The Christmas Song (Chestnuts Roasting On An Open Fire)","The End of the World","The First Time Ever I Saw Your Face","The Girl From Ipanema","The Glow-Worm","The Great Pretender","The Gypsy","The Hustle","The Joker","The Last Dance","The Letter","The Loco-Motion","The Long & Winding Road","The Love You Save","The Morning After","The Power of Love","The Prisoner's Song","The Reason","The Rose","The Sign","The Song From Moulin Rouge (Where Is Your Heart)","The Sounds of Silence","The Streak","The Sweet Escape","The Thing","The Tide is High","The Tracks of My Tears","The Twist","The Wanderer","The Way We Were","The Way You Look Tonight","The Way You Move","Theme From 'A Summer Place'","Theme From 'Greatest American Hero' (Believe It Or Not)","Theme From 'Shaft'","There goes my baby","These Boots Are Made For Walking","Third Man Theme","This Diamond Ring","This Guy's in Love With You","This Land is Your Land","This Love","This Ole House","This Used to Be My Playground","Three Coins in the Fountain","Three Times a Lady","Thrift Shop","Thriller","Ticket to Ride","Tie a Yellow Ribbon 'round the Old Oak Tree","Tiger Rag","Tighten Up","Tik-Toc","Till I Waltz Again With You","Till The End of Time","Time After Time","Time of the Season","To Sir","Tom Dooley","Tonight's the Night (Gonna Be Alright)","Too Close","Too Young","Tossing & Turning","Total Eclipse of the Heart","Touch Me","Toxic","Travellin' Band","Travellin' Man","Truly Madly Deeply","Turn! Turn! Turn! (To Everything There is a Season)","Tutti Frutti","Twist & Shout","Two Hearts","U Can't Touch This","U Got it Bad","Umbrella","Un-Break My Heart","Unbelievable","Unchained Melody","Uncle Albert (Admiral Halsey)","Under the Boardwalk","Under the Bridge","Unforgettable","Up Around the Bend","Up Up & Away","Up Where We Belong","Upside Down","Use Somebody","Vaya Con Dios (may God Be With You)","Venus","Vision of Love","Viva La Vida","Vogue","Volare","Wabash Cannonball","Waiting For a Girl Like You","Wake Me Up Before You Go Go","Wake Up Little Susie","Walk Don't Run","Walk Like a Man","Walk Like an Egyptian","Walk On By","Walk On the Wild Side","Walk This Way","Wannabe","Want Ads","Wanted","War","Waterfalls","Wayward Wind","We Are Family","We Are Young","We Are the Champions","We Are the World","We Belong Together","We Built This City","We Can Work it Out","We Didn't Start the Fire","We Found Love","We Got The Beat","We Will Rock You","We've Only Just Begun","Weak","Wedding Bell Blues","West End Blues","West End Girls","What Goes Around Comes Around","What a Fool Believes","What'd I Say","What's Going On?","What's Love Got to Do With It?","Whatcha Say","Wheel of Fortune","When Doves Cry","When You Wish Upon a Star","When a Man Loves a Woman","Where Did Our Love Go","Where is the Love?","Whip It","Whispering","White Christmas","White Rabbit","Whole Lotta Love","Whole Lotta Shakin' Goin' On","Whoomp! (There it Is)","Why Do Fools Fall in Love?","Why Don't You Believe Me?","Wichita Lineman","Wicked Game","Wild Thing","Wild Wild West","Will It Go Round In Circles","Will You Love Me Tomorrow","Winchester Cathedral","Wind Beneath My Wings","Wipe Out","Wishing Well","With Or Without You","Without Me","Without You","Woman","Won't Get Fooled Again","Wooly Bully","Working My Way Back to You","YMCA","Yakety Yak","Yeah!","Yellow Rose of Texas","Yesterday","You Ain't Seen Nothin' Yet","You Always Hurt the One You Love","You Are the Sunshine of My Life","You Belong With Me","You Belong to Me","You Can't Hurry Love","You Don't Bring Me Flowers","You Don't Have to Be a Star (To Be in My Show)","You Light Up My Life","You Make Me Feel Brand New","You Make Me Feel Like Dancing","You Really Got Me","You Send Me","You Sexy Thing","You Were Meant for Me","You make Me Wanna","You'll Never Know","You're Beautiful","You're So Vain","You're Still the One","You're the One That I Want","You've Got a Friend","You've Lost That Lovin' Feelin'","Your Cheatin' Heart","Your Song"];var ao={album:Ve$1,artist:Ye$1,genre:je$1,song_name:qe$1},Ue$1=ao;var Ze$1=["activist","artist","author","blogger","business owner","coach","creator","designer","developer","dreamer","educator","engineer","entrepreneur","environmentalist","film lover","filmmaker","foodie","founder","friend","gamer","geek","grad","inventor","leader","model","musician","nerd","parent","patriot","person","philosopher","photographer","public speaker","scientist","singer","streamer","student","teacher","traveler","veteran","writer"];var _e$1=["{{person.bio_part}}","{{person.bio_part}}, {{person.bio_part}}","{{person.bio_part}}, {{person.bio_part}}, {{person.bio_part}}","{{person.bio_part}}, {{person.bio_part}}, {{person.bio_part}} {{internet.emoji}}","{{word.noun}} {{person.bio_supporter}}","{{word.noun}} {{person.bio_supporter}} {{internet.emoji}}","{{word.noun}} {{person.bio_supporter}}, {{person.bio_part}}","{{word.noun}} {{person.bio_supporter}}, {{person.bio_part}} {{internet.emoji}}"];var Qe$1=["advocate","devotee","enthusiast","fan","junkie","lover","supporter"];var Xe$1={generic:["Aaliyah","Aaron","Abagail","Abbey","Abbie","Abbigail","Abby","Abdiel","Abdul","Abdullah","Abe","Abel","Abelardo","Abigail","Abigale","Abigayle","Abner","Abraham","Ada","Adah","Adalberto","Adaline","Adam","Adan","Addie","Addison","Adela","Adelbert","Adele","Adelia","Adeline","Adell","Adella","Adelle","Aditya","Adolf","Adolfo","Adolph","Adolphus","Adonis","Adrain","Adrian","Adriana","Adrianna","Adriel","Adrien","Adrienne","Afton","Aglae","Agnes","Agustin","Agustina","Ahmad","Ahmed","Aida","Aidan","Aiden","Aileen","Aimee","Aisha","Aiyana","Akeem","Al","Alaina","Alan","Alana","Alanis","Alanna","Alayna","Alba","Albert","Alberta","Albertha","Alberto","Albin","Albina","Alda","Alden","Alec","Aleen","Alejandra","Alejandrin","Alek","Alena","Alene","Alessandra","Alessandro","Alessia","Aletha","Alex","Alexa","Alexander","Alexandra","Alexandre","Alexandrea","Alexandria","Alexandrine","Alexandro","Alexane","Alexanne","Alexie","Alexis","Alexys","Alexzander","Alf","Alfonso","Alfonzo","Alford","Alfred","Alfreda","Alfredo","Ali","Alia","Alice","Alicia","Alisa","Alisha","Alison","Alivia","Aliya","Aliyah","Aliza","Alize","Allan","Allen","Allene","Allie","Allison","Ally","Alphonso","Alta","Althea","Alva","Alvah","Alvena","Alvera","Alverta","Alvina","Alvis","Alyce","Alycia","Alysa","Alysha","Alyson","Alysson","Amalia","Amanda","Amani","Amara","Amari","Amaya","Amber","Ambrose","Amelia","Amelie","Amely","America","Americo","Amie","Amina","Amir","Amira","Amiya","Amos","Amparo","Amy","Amya","Ana","Anabel","Anabelle","Anahi","Anais","Anastacio","Anastasia","Anderson","Andre","Andreane","Andreanne","Andres","Andrew","Andy","Angel","Angela","Angelica","Angelina","Angeline","Angelita","Angelo","Angie","Angus","Anibal","Anika","Anissa","Anita","Aniya","Aniyah","Anjali","Anna","Annabel","Annabell","Annabelle","Annalise","Annamae","Annamarie","Anne","Annetta","Annette","Annie","Ansel","Ansley","Anthony","Antoinette","Antone","Antonetta","Antonette","Antonia","Antonietta","Antonina","Antonio","Antwan","Antwon","Anya","April","Ara","Araceli","Aracely","Arch","Archibald","Ardella","Arden","Ardith","Arely","Ari","Ariane","Arianna","Aric","Ariel","Arielle","Arjun","Arlene","Arlie","Arlo","Armand","Armando","Armani","Arnaldo","Arne","Arno","Arnold","Arnoldo","Arnulfo","Aron","Art","Arthur","Arturo","Arvel","Arvid","Arvilla","Aryanna","Asa","Asha","Ashlee","Ashleigh","Ashley","Ashly","Ashlynn","Ashton","Ashtyn","Asia","Assunta","Astrid","Athena","Aubree","Aubrey","Audie","Audra","Audreanne","Audrey","August","Augusta","Augustine","Augustus","Aurelia","Aurelie","Aurelio","Aurore","Austen","Austin","Austyn","Autumn","Ava","Avery","Avis","Axel","Ayana","Ayden","Ayla","Aylin","Baby","Bailee","Bailey","Barbara","Barney","Baron","Barrett","Barry","Bart","Bartholome","Barton","Baylee","Beatrice","Beau","Beaulah","Bell","Bella","Belle","Ben","Benedict","Benjamin","Bennett","Bennie","Benny","Benton","Berenice","Bernadette","Bernadine","Bernard","Bernardo","Berneice","Bernhard","Bernice","Bernie","Berniece","Bernita","Berry","Bert","Berta","Bertha","Bertram","Bertrand","Beryl","Bessie","Beth","Bethany","Bethel","Betsy","Bette","Bettie","Betty","Bettye","Beulah","Beverly","Bianka","Bill","Billie","Billy","Birdie","Blair","Blaise","Blake","Blanca","Blanche","Blaze","Bo","Bobbie","Bobby","Bonita","Bonnie","Boris","Boyd","Brad","Braden","Bradford","Bradley","Bradly","Brady","Braeden","Brain","Brandi","Brando","Brandon","Brandt","Brandy","Brandyn","Brannon","Branson","Brant","Braulio","Braxton","Brayan","Breana","Breanna","Breanne","Brenda","Brendan","Brenden","Brendon","Brenna","Brennan","Brennon","Brent","Bret","Brett","Bria","Brian","Briana","Brianne","Brice","Bridget","Bridgette","Bridie","Brielle","Brigitte","Brionna","Brisa","Britney","Brittany","Brock","Broderick","Brody","Brook","Brooke","Brooklyn","Brooks","Brown","Bruce","Bryana","Bryce","Brycen","Bryon","Buck","Bud","Buddy","Buford","Bulah","Burdette","Burley","Burnice","Buster","Cade","Caden","Caesar","Caitlyn","Cale","Caleb","Caleigh","Cali","Calista","Callie","Camden","Cameron","Camila","Camilla","Camille","Camren","Camron","Camryn","Camylle","Candace","Candelario","Candice","Candida","Candido","Cara","Carey","Carissa","Carlee","Carleton","Carley","Carli","Carlie","Carlo","Carlos","Carlotta","Carmel","Carmela","Carmella","Carmelo","Carmen","Carmine","Carol","Carolanne","Carole","Carolina","Caroline","Carolyn","Carolyne","Carrie","Carroll","Carson","Carter","Cary","Casandra","Casey","Casimer","Casimir","Casper","Cassandra","Cassandre","Cassidy","Cassie","Catalina","Caterina","Catharine","Catherine","Cathrine","Cathryn","Cathy","Cayla","Ceasar","Cecelia","Cecil","Cecile","Cecilia","Cedrick","Celestine","Celestino","Celia","Celine","Cesar","Chad","Chadd","Chadrick","Chaim","Chance","Chandler","Chanel","Chanelle","Charity","Charlene","Charles","Charley","Charlie","Charlotte","Chase","Chasity","Chauncey","Chaya","Chaz","Chelsea","Chelsey","Chelsie","Chesley","Chester","Chet","Cheyanne","Cheyenne","Chloe","Chris","Christ","Christa","Christelle","Christian","Christiana","Christina","Christine","Christop","Christophe","Christopher","Christy","Chyna","Ciara","Cicero","Cielo","Cierra","Cindy","Citlalli","Clair","Claire","Clara","Clarabelle","Clare","Clarissa","Clark","Claud","Claude","Claudia","Claudie","Claudine","Clay","Clemens","Clement","Clementina","Clementine","Clemmie","Cleo","Cleora","Cleta","Cletus","Cleve","Cleveland","Clifford","Clifton","Clint","Clinton","Clotilde","Clovis","Cloyd","Clyde","Coby","Cody","Colby","Cole","Coleman","Colin","Colleen","Collin","Colt","Colten","Colton","Columbus","Concepcion","Conner","Connie","Connor","Conor","Conrad","Constance","Constantin","Consuelo","Cooper","Cora","Coralie","Corbin","Cordelia","Cordell","Cordia","Cordie","Corene","Corine","Cornelius","Cornell","Corrine","Cortez","Cortney","Cory","Coty","Courtney","Coy","Craig","Crawford","Creola","Cristal","Cristian","Cristina","Cristobal","Cristopher","Cruz","Crystal","Crystel","Cullen","Curt","Curtis","Cydney","Cynthia","Cyril","Cyrus","Dagmar","Dahlia","Daija","Daisha","Daisy","Dakota","Dale","Dallas","Dallin","Dalton","Damaris","Dameon","Damian","Damien","Damion","Damon","Dan","Dana","Dandre","Dane","D'angelo","Dangelo","Danial","Daniela","Daniella","Danielle","Danika","Dannie","Danny","Dante","Danyka","Daphne","Daphnee","Daphney","Darby","Daren","Darian","Dariana","Darien","Dario","Darion","Darius","Darlene","Daron","Darrel","Darrell","Darren","Darrick","Darrin","Darrion","Darron","Darryl","Darwin","Daryl","Dashawn","Dasia","Dave","David","Davin","Davion","Davon","Davonte","Dawn","Dawson","Dax","Dayana","Dayna","Dayne","Dayton","Dean","Deangelo","Deanna","Deborah","Declan","Dedric","Dedrick","Dee","Deion","Deja","Dejah","Dejon","Dejuan","Delaney","Delbert","Delfina","Delia","Delilah","Dell","Della","Delmer","Delores","Delpha","Delphia","Delphine","Delta","Demarco","Demarcus","Demario","Demetris","Demetrius","Demond","Dena","Denis","Dennis","Deon","Deondre","Deontae","Deonte","Dereck","Derek","Derick","Deron","Derrick","Deshaun","Deshawn","Desiree","Desmond","Dessie","Destany","Destin","Destinee","Destiney","Destini","Destiny","Devan","Devante","Deven","Devin","Devon","Devonte","Devyn","Dewayne","Dewitt","Dexter","Diamond","Diana","Dianna","Diego","Dillan","Dillon","Dimitri","Dina","Dino","Dion","Dixie","Dock","Dolly","Dolores","Domenic","Domenica","Domenick","Domenico","Domingo","Dominic","Dominique","Don","Donald","Donato","Donavon","Donna","Donnell","Donnie","Donny","Dora","Dorcas","Dorian","Doris","Dorothea","Dorothy","Dorris","Dortha","Dorthy","Doug","Douglas","Dovie","Doyle","Drake","Drew","Duane","Dudley","Dulce","Duncan","Durward","Dustin","Dusty","Dwight","Dylan","Earl","Earlene","Earline","Earnest","Earnestine","Easter","Easton","Ebba","Ebony","Ed","Eda","Edd","Eddie","Eden","Edgar","Edgardo","Edison","Edmond","Edmund","Edna","Eduardo","Edward","Edwardo","Edwin","Edwina","Edyth","Edythe","Effie","Efrain","Efren","Eileen","Einar","Eino","Eladio","Elaina","Elbert","Elda","Eldon","Eldora","Eldred","Eldridge","Eleanora","Eleanore","Eleazar","Electa","Elena","Elenor","Elenora","Eleonore","Elfrieda","Eli","Elian","Eliane","Elias","Eliezer","Elijah","Elinor","Elinore","Elisa","Elisabeth","Elise","Eliseo","Elisha","Elissa","Eliza","Elizabeth","Ella","Ellen","Ellie","Elliot","Elliott","Ellis","Ellsworth","Elmer","Elmira","Elmo","Elmore","Elna","Elnora","Elody","Eloisa","Eloise","Elouise","Eloy","Elroy","Elsa","Else","Elsie","Elta","Elton","Elva","Elvera","Elvie","Elvis","Elwin","Elwyn","Elyse","Elyssa","Elza","Emanuel","Emelia","Emelie","Emely","Emerald","Emerson","Emery","Emie","Emil","Emile","Emilia","Emiliano","Emilie","Emilio","Emily","Emma","Emmalee","Emmanuel","Emmanuelle","Emmet","Emmett","Emmie","Emmitt","Emmy","Emory","Ena","Enid","Enoch","Enola","Enos","Enrico","Enrique","Ephraim","Era","Eriberto","Eric","Erica","Erich","Erick","Ericka","Erik","Erika","Erin","Erling","Erna","Ernest","Ernestina","Ernestine","Ernesto","Ernie","Ervin","Erwin","Eryn","Esmeralda","Esperanza","Esta","Esteban","Estefania","Estel","Estell","Estella","Estelle","Estevan","Esther","Estrella","Etha","Ethan","Ethel","Ethelyn","Ethyl","Ettie","Eudora","Eugene","Eugenia","Eula","Eulah","Eulalia","Euna","Eunice","Eusebio","Eva","Evalyn","Evan","Evangeline","Evans","Eve","Eveline","Evelyn","Everardo","Everett","Everette","Evert","Evie","Ewald","Ewell","Ezekiel","Ezequiel","Ezra","Fabian","Fabiola","Fae","Fannie","Fanny","Fatima","Faustino","Fausto","Favian","Fay","Faye","Federico","Felicia","Felicita","Felicity","Felipa","Felipe","Felix","Felton","Fermin","Fern","Fernando","Ferne","Fidel","Filiberto","Filomena","Finn","Fiona","Flavie","Flavio","Fleta","Fletcher","Flo","Florence","Florencio","Florian","Florida","Florine","Flossie","Floy","Floyd","Ford","Forest","Forrest","Foster","Frances","Francesca","Francesco","Francis","Francisca","Francisco","Franco","Frank","Frankie","Franz","Fred","Freda","Freddie","Freddy","Frederic","Frederick","Frederik","Frederique","Fredrick","Fredy","Freeda","Freeman","Freida","Frida","Frieda","Friedrich","Fritz","Furman","Gabe","Gabriel","Gabriella","Gabrielle","Gaetano","Gage","Gail","Gardner","Garett","Garfield","Garland","Garnet","Garnett","Garret","Garrett","Garrick","Garrison","Garry","Garth","Gaston","Gavin","Gayle","Gene","General","Genesis","Genevieve","Gennaro","Genoveva","Geo","Geoffrey","George","Georgette","Georgiana","Georgianna","Geovanni","Geovanny","Geovany","Gerald","Geraldine","Gerard","Gerardo","Gerda","Gerhard","Germaine","German","Gerry","Gerson","Gertrude","Gia","Gianni","Gideon","Gilbert","Gilberto","Gilda","Giles","Gillian","Gina","Gino","Giovani","Giovanna","Giovanni","Giovanny","Gisselle","Giuseppe","Gladyce","Gladys","Glen","Glenda","Glenna","Glennie","Gloria","Godfrey","Golda","Golden","Gonzalo","Gordon","Grace","Gracie","Graciela","Grady","Graham","Grant","Granville","Grayce","Grayson","Green","Greg","Gregg","Gregoria","Gregorio","Gregory","Greta","Gretchen","Greyson","Griffin","Grover","Guadalupe","Gudrun","Guido","Guillermo","Guiseppe","Gunnar","Gunner","Gus","Gussie","Gust","Gustave","Guy","Gwen","Gwendolyn","Hadley","Hailee","Hailey","Hailie","Hal","Haleigh","Haley","Halie","Halle","Hallie","Hank","Hanna","Hannah","Hans","Hardy","Harley","Harmon","Harmony","Harold","Harrison","Harry","Harvey","Haskell","Hassan","Hassie","Hattie","Haven","Hayden","Haylee","Hayley","Haylie","Hazel","Hazle","Heath","Heather","Heaven","Heber","Hector","Heidi","Helen","Helena","Helene","Helga","Hellen","Helmer","Heloise","Henderson","Henri","Henriette","Henry","Herbert","Herman","Hermann","Hermina","Herminia","Herminio","Hershel","Herta","Hertha","Hester","Hettie","Hilario","Hilbert","Hilda","Hildegard","Hillard","Hillary","Hilma","Hilton","Hipolito","Hiram","Hobart","Holden","Hollie","Hollis","Holly","Hope","Horace","Horacio","Hortense","Hosea","Houston","Howard","Howell","Hoyt","Hubert","Hudson","Hugh","Hulda","Humberto","Hunter","Hyman","Ian","Ibrahim","Icie","Ida","Idell","Idella","Ignacio","Ignatius","Ike","Ila","Ilene","Iliana","Ima","Imani","Imelda","Immanuel","Imogene","Ines","Irma","Irving","Irwin","Isaac","Isabel","Isabell","Isabella","Isabelle","Isac","Isadore","Isai","Isaiah","Isaias","Isidro","Ismael","Isobel","Isom","Israel","Issac","Itzel","Iva","Ivah","Ivory","Ivy","Izabella","Izaiah","Jabari","Jace","Jacey","Jacinthe","Jacinto","Jack","Jackeline","Jackie","Jacklyn","Jackson","Jacky","Jaclyn","Jacquelyn","Jacques","Jacynthe","Jada","Jade","Jaden","Jadon","Jadyn","Jaeden","Jaida","Jaiden","Jailyn","Jaime","Jairo","Jakayla","Jake","Jakob","Jaleel","Jalen","Jalon","Jalyn","Jamaal","Jamal","Jamar","Jamarcus","Jamel","Jameson","Jamey","Jamie","Jamil","Jamir","Jamison","Jammie","Jan","Jana","Janae","Jane","Janelle","Janessa","Janet","Janice","Janick","Janie","Janis","Janiya","Jannie","Jany","Jaquan","Jaquelin","Jaqueline","Jared","Jaren","Jarod","Jaron","Jarred","Jarrell","Jarret","Jarrett","Jarrod","Jarvis","Jasen","Jasmin","Jason","Jasper","Jaunita","Javier","Javon","Javonte","Jay","Jayce","Jaycee","Jayda","Jayde","Jayden","Jaydon","Jaylan","Jaylen","Jaylin","Jaylon","Jayme","Jayne","Jayson","Jazlyn","Jazmin","Jazmyn","Jazmyne","Jean","Jeanette","Jeanie","Jeanne","Jed","Jedediah","Jedidiah","Jeff","Jefferey","Jeffery","Jeffrey","Jeffry","Jena","Jenifer","Jennie","Jennifer","Jennings","Jennyfer","Jensen","Jerad","Jerald","Jeramie","Jeramy","Jerel","Jeremie","Jeremy","Jermain","Jermaine","Jermey","Jerod","Jerome","Jeromy","Jerrell","Jerrod","Jerrold","Jerry","Jess","Jesse","Jessica","Jessie","Jessika","Jessy","Jessyca","Jesus","Jett","Jettie","Jevon","Jewel","Jewell","Jillian","Jimmie","Jimmy","Jo","Joan","Joana","Joanie","Joanne","Joannie","Joanny","Joany","Joaquin","Jocelyn","Jodie","Jody","Joe","Joel","Joelle","Joesph","Joey","Johan","Johann","Johanna","Johathan","John","Johnathan","Johnathon","Johnnie","Johnny","Johnpaul","Johnson","Jolie","Jon","Jonas","Jonatan","Jonathan","Jonathon","Jordan","Jordane","Jordi","Jordon","Jordy","Jordyn","Jorge","Jose","Josefa","Josefina","Joseph","Josephine","Josh","Joshua","Joshuah","Josiah","Josiane","Josianne","Josie","Josue","Jovan","Jovani","Jovanny","Jovany","Joy","Joyce","Juana","Juanita","Judah","Judd","Jude","Judge","Judson","Judy","Jules","Julia","Julian","Juliana","Julianne","Julie","Julien","Juliet","Julio","Julius","June","Junior","Junius","Justen","Justice","Justina","Justine","Juston","Justus","Justyn","Juvenal","Juwan","Kacey","Kaci","Kacie","Kade","Kaden","Kadin","Kaela","Kaelyn","Kaia","Kailee","Kailey","Kailyn","Kaitlin","Kaitlyn","Kale","Kaleb","Kaleigh","Kaley","Kali","Kallie","Kameron","Kamille","Kamren","Kamron","Kamryn","Kane","Kara","Kareem","Karelle","Karen","Kari","Kariane","Karianne","Karina","Karine","Karl","Karlee","Karley","Karli","Karlie","Karolann","Karson","Kasandra","Kasey","Kassandra","Katarina","Katelin","Katelyn","Katelynn","Katharina","Katherine","Katheryn","Kathleen","Kathlyn","Kathryn","Kathryne","Katlyn","Katlynn","Katrina","Katrine","Kattie","Kavon","Kay","Kaya","Kaycee","Kayden","Kayla","Kaylah","Kaylee","Kayleigh","Kayley","Kayli","Kaylie","Kaylin","Keagan","Keanu","Keara","Keaton","Keegan","Keeley","Keely","Keenan","Keira","Keith","Kellen","Kelley","Kelli","Kellie","Kelly","Kelsi","Kelsie","Kelton","Kelvin","Ken","Kendall","Kendra","Kendrick","Kenna","Kennedi","Kennedy","Kenneth","Kennith","Kenny","Kenton","Kenya","Kenyatta","Kenyon","Keon","Keshaun","Keshawn","Keven","Kevin","Kevon","Keyon","Keyshawn","Khalid","Khalil","Kian","Kiana","Kianna","Kiara","Kiarra","Kiel","Kiera","Kieran","Kiley","Kim","Kimberly","King","Kip","Kira","Kirk","Kirsten","Kirstin","Kitty","Kobe","Koby","Kody","Kolby","Kole","Korbin","Korey","Kory","Kraig","Kris","Krista","Kristian","Kristin","Kristina","Kristofer","Kristoffer","Kristopher","Kristy","Krystal","Krystel","Krystina","Kurt","Kurtis","Kyla","Kyle","Kylee","Kyleigh","Kyler","Kylie","Kyra","Lacey","Lacy","Ladarius","Lafayette","Laila","Laisha","Lamar","Lambert","Lamont","Lance","Landen","Lane","Laney","Larissa","Laron","Larry","Larue","Laura","Laurel","Lauren","Laurence","Lauretta","Lauriane","Laurianne","Laurie","Laurine","Laury","Lauryn","Lavada","Lavern","Laverna","Laverne","Lavina","Lavinia","Lavon","Lavonne","Lawrence","Lawson","Layla","Layne","Lazaro","Lea","Leann","Leanna","Leanne","Leatha","Leda","Lee","Leif","Leila","Leilani","Lela","Lelah","Leland","Lelia","Lempi","Lemuel","Lenna","Lennie","Lenny","Lenora","Lenore","Leo","Leola","Leon","Leonard","Leonardo","Leone","Leonel","Leonie","Leonor","Leonora","Leopold","Leopoldo","Leora","Lera","Lesley","Leslie","Lesly","Lessie","Lester","Leta","Letha","Letitia","Levi","Lew","Lewis","Lexi","Lexie","Lexus","Lia","Liam","Liana","Libbie","Libby","Lila","Lilian","Liliana","Liliane","Lilla","Lillian","Lilliana","Lillie","Lilly","Lily","Lilyan","Lina","Lincoln","Linda","Lindsay","Lindsey","Linnea","Linnie","Linwood","Lionel","Lisa","Lisandro","Lisette","Litzy","Liza","Lizeth","Lizzie","Llewellyn","Lloyd","Logan","Lois","Lola","Lolita","Loma","Lon","London","Lonie","Lonnie","Lonny","Lonzo","Lora","Loraine","Loren","Lorena","Lorenz","Lorenza","Lorenzo","Lori","Lorine","Lorna","Lottie","Lou","Louie","Louisa","Lourdes","Louvenia","Lowell","Loy","Loyal","Loyce","Lucas","Luciano","Lucie","Lucienne","Lucile","Lucinda","Lucio","Lucious","Lucius","Lucy","Ludie","Ludwig","Lue","Luella","Luigi","Luis","Luisa","Lukas","Lula","Lulu","Luna","Lupe","Lura","Lurline","Luther","Luz","Lyda","Lydia","Lyla","Lynn","Lyric","Lysanne","Mabel","Mabelle","Mable","Mac","Macey","Maci","Macie","Mack","Mackenzie","Macy","Madaline","Madalyn","Maddison","Madeline","Madelyn","Madelynn","Madge","Madie","Madilyn","Madisen","Madison","Madisyn","Madonna","Madyson","Mae","Maegan","Maeve","Mafalda","Magali","Magdalen","Magdalena","Maggie","Magnolia","Magnus","Maia","Maida","Maiya","Major","Makayla","Makenna","Makenzie","Malachi","Malcolm","Malika","Malinda","Mallie","Mallory","Malvina","Mandy","Manley","Manuel","Manuela","Mara","Marc","Marcel","Marcelina","Marcelino","Marcella","Marcelle","Marcellus","Marcelo","Marcia","Marco","Marcos","Marcus","Margaret","Margarete","Margarett","Margaretta","Margarette","Margarita","Marge","Margie","Margot","Margret","Marguerite","Maria","Mariah","Mariam","Marian","Mariana","Mariane","Marianna","Marianne","Mariano","Maribel","Marie","Mariela","Marielle","Marietta","Marilie","Marilou","Marilyne","Marina","Mario","Marion","Marisa","Marisol","Maritza","Marjolaine","Marjorie","Marjory","Mark","Markus","Marlee","Marlen","Marlene","Marley","Marlin","Marlon","Marques","Marquis","Marquise","Marshall","Marta","Martin","Martina","Martine","Marty","Marvin","Mary","Maryam","Maryjane","Maryse","Mason","Mateo","Mathew","Mathias","Mathilde","Matilda","Matilde","Matt","Matteo","Mattie","Maud","Maude","Maudie","Maureen","Maurice","Mauricio","Maurine","Maverick","Mavis","Max","Maxie","Maxime","Maximilian","Maximillia","Maximillian","Maximo","Maximus","Maxine","Maxwell","May","Maya","Maybell","Maybelle","Maye","Maymie","Maynard","Mayra","Mazie","Mckayla","Mckenna","Mckenzie","Meagan","Meaghan","Meda","Megane","Meggie","Meghan","Mekhi","Melany","Melba","Melisa","Melissa","Mellie","Melody","Melvin","Melvina","Melyna","Melyssa","Mercedes","Meredith","Merl","Merle","Merlin","Merritt","Mertie","Mervin","Meta","Mia","Micaela","Micah","Michael","Michaela","Michale","Micheal","Michel","Michele","Michelle","Miguel","Mikayla","Mike","Mikel","Milan","Miles","Milford","Miller","Millie","Milo","Milton","Mina","Minerva","Minnie","Miracle","Mireille","Mireya","Misael","Missouri","Misty","Mitchel","Mitchell","Mittie","Modesta","Modesto","Mohamed","Mohammad","Mohammed","Moises","Mollie","Molly","Mona","Monica","Monique","Monroe","Monserrat","Monserrate","Montana","Monte","Monty","Morgan","Moriah","Morris","Mortimer","Morton","Mose","Moses","Moshe","Mossie","Mozell","Mozelle","Muhammad","Muriel","Murl","Murphy","Murray","Mustafa","Mya","Myah","Mylene","Myles","Myra","Myriam","Myrl","Myrna","Myron","Myrtice","Myrtie","Myrtis","Myrtle","Nadia","Nakia","Name","Nannie","Naomi","Naomie","Napoleon","Narciso","Nash","Nasir","Nat","Natalia","Natalie","Natasha","Nathan","Nathanael","Nathanial","Nathaniel","Nathen","Nayeli","Neal","Ned","Nedra","Neha","Neil","Nelda","Nella","Nelle","Nellie","Nels","Nelson","Neoma","Nestor","Nettie","Neva","Newell","Newton","Nia","Nicholas","Nicholaus","Nichole","Nick","Nicklaus","Nickolas","Nico","Nicola","Nicolas","Nicole","Nicolette","Nigel","Nikita","Nikki","Nikko","Niko","Nikolas","Nils","Nina","Noah","Noble","Noe","Noel","Noelia","Noemi","Noemie","Noemy","Nola","Nolan","Nona","Nora","Norbert","Norberto","Norene","Norma","Norris","Norval","Norwood","Nova","Novella","Nya","Nyah","Nyasia","Obie","Oceane","Ocie","Octavia","Oda","Odell","Odessa","Odie","Ofelia","Okey","Ola","Olaf","Ole","Olen","Oleta","Olga","Olin","Oliver","Ollie","Oma","Omari","Omer","Ona","Onie","Opal","Ophelia","Ora","Oral","Oran","Oren","Orie","Orin","Orion","Orland","Orlando","Orlo","Orpha","Orrin","Orval","Orville","Osbaldo","Osborne","Oscar","Osvaldo","Oswald","Oswaldo","Otha","Otho","Otilia","Otis","Ottilie","Ottis","Otto","Ova","Owen","Ozella","Pablo","Paige","Palma","Pamela","Pansy","Paolo","Paris","Parker","Pascale","Pasquale","Pat","Patience","Patricia","Patrick","Patsy","Pattie","Paul","Paula","Pauline","Paxton","Payton","Pearl","Pearlie","Pearline","Pedro","Peggie","Penelope","Percival","Percy","Perry","Pete","Peter","Petra","Peyton","Philip","Phoebe","Phyllis","Pierce","Pierre","Pietro","Pink","Pinkie","Piper","Polly","Porter","Precious","Presley","Preston","Price","Prince","Princess","Priscilla","Providenci","Prudence","Queen","Queenie","Quentin","Quincy","Quinn","Quinten","Quinton","Rachael","Rachel","Rachelle","Rae","Raegan","Rafael","Rafaela","Raheem","Rahsaan","Rahul","Raina","Raleigh","Ralph","Ramiro","Ramon","Ramona","Randal","Randall","Randi","Randy","Ransom","Raoul","Raphael","Raphaelle","Raquel","Rashad","Rashawn","Rasheed","Raul","Raven","Ray","Raymond","Raymundo","Reagan","Reanna","Reba","Rebeca","Rebecca","Rebeka","Rebekah","Reece","Reed","Reese","Regan","Reggie","Reginald","Reid","Reilly","Reina","Reinhold","Remington","Rene","Renee","Ressie","Reta","Retha","Retta","Reuben","Reva","Rex","Rey","Reyes","Reymundo","Reyna","Reynold","Rhea","Rhett","Rhianna","Rhiannon","Rhoda","Ricardo","Richard","Richie","Richmond","Rick","Rickey","Rickie","Ricky","Rico","Rigoberto","Riley","Rita","River","Robb","Robbie","Robert","Roberta","Roberto","Robin","Robyn","Rocio","Rocky","Rod","Roderick","Rodger","Rodolfo","Rodrick","Rodrigo","Roel","Rogelio","Roger","Rogers","Rolando","Rollin","Roma","Romaine","Roman","Ron","Ronaldo","Ronny","Roosevelt","Rory","Rosa","Rosalee","Rosalia","Rosalind","Rosalinda","Rosalyn","Rosamond","Rosanna","Rosario","Roscoe","Rose","Rosella","Roselyn","Rosemarie","Rosemary","Rosendo","Rosetta","Rosie","Rosina","Roslyn","Ross","Rossie","Rowan","Rowena","Rowland","Roxane","Roxanne","Roy","Royal","Royce","Rozella","Ruben","Rubie","Ruby","Rubye","Rudolph","Rudy","Rupert","Russ","Russel","Russell","Rusty","Ruth","Ruthe","Ruthie","Ryan","Ryann","Ryder","Rylan","Rylee","Ryleigh","Ryley","Sabina","Sabrina","Sabryna","Sadie","Sadye","Sage","Saige","Sallie","Sally","Salma","Salvador","Salvatore","Sam","Samanta","Samantha","Samara","Samir","Sammie","Sammy","Samson","Sandra","Sandrine","Sandy","Sanford","Santa","Santiago","Santina","Santino","Santos","Sarah","Sarai","Sarina","Sasha","Saul","Savanah","Savanna","Savannah","Savion","Scarlett","Schuyler","Scot","Scottie","Scotty","Seamus","Sean","Sebastian","Sedrick","Selena","Selina","Selmer","Serena","Serenity","Seth","Shad","Shaina","Shakira","Shana","Shane","Shanel","Shanelle","Shania","Shanie","Shaniya","Shanna","Shannon","Shanny","Shanon","Shany","Sharon","Shaun","Shawn","Shawna","Shaylee","Shayna","Shayne","Shea","Sheila","Sheldon","Shemar","Sheridan","Sherman","Sherwood","Shirley","Shyann","Shyanne","Sibyl","Sid","Sidney","Sienna","Sierra","Sigmund","Sigrid","Sigurd","Silas","Sim","Simeon","Simone","Sincere","Sister","Skye","Skyla","Skylar","Sofia","Soledad","Solon","Sonia","Sonny","Sonya","Sophia","Sophie","Spencer","Stacey","Stacy","Stan","Stanford","Stanley","Stanton","Stefan","Stefanie","Stella","Stephan","Stephania","Stephanie","Stephany","Stephen","Stephon","Sterling","Steve","Stevie","Stewart","Stone","Stuart","Summer","Sunny","Susan","Susana","Susanna","Susie","Suzanne","Sven","Syble","Sydnee","Sydney","Sydni","Sydnie","Sylvan","Sylvester","Sylvia","Tabitha","Tad","Talia","Talon","Tamara","Tamia","Tania","Tanner","Tanya","Tara","Taryn","Tate","Tatum","Tatyana","Taurean","Tavares","Taya","Taylor","Teagan","Ted","Telly","Terence","Teresa","Terrance","Terrell","Terrence","Terrill","Terry","Tess","Tessie","Tevin","Thad","Thaddeus","Thalia","Thea","Thelma","Theo","Theodora","Theodore","Theresa","Therese","Theresia","Theron","Thomas","Thora","Thurman","Tia","Tiana","Tianna","Tiara","Tierra","Tiffany","Tillman","Timmothy","Timmy","Timothy","Tina","Tito","Titus","Tobin","Toby","Tod","Tom","Tomas","Tomasa","Tommie","Toney","Toni","Tony","Torey","Torrance","Torrey","Toy","Trace","Tracey","Tracy","Travis","Travon","Tre","Tremaine","Tremayne","Trent","Trenton","Tressa","Tressie","Treva","Trever","Trevion","Trevor","Trey","Trinity","Trisha","Tristian","Tristin","Triston","Troy","Trudie","Trycia","Trystan","Turner","Twila","Tyler","Tyra","Tyree","Tyreek","Tyrel","Tyrell","Tyrese","Tyrique","Tyshawn","Tyson","Ubaldo","Ulices","Ulises","Una","Unique","Urban","Uriah","Uriel","Ursula","Vada","Valentin","Valentina","Valentine","Valerie","Vallie","Van","Vance","Vanessa","Vaughn","Veda","Velda","Vella","Velma","Velva","Vena","Verda","Verdie","Vergie","Verla","Verlie","Vern","Verna","Verner","Vernice","Vernie","Vernon","Verona","Veronica","Vesta","Vicenta","Vicente","Vickie","Vicky","Victor","Victoria","Vida","Vidal","Vilma","Vince","Vincent","Vincenza","Vincenzo","Vinnie","Viola","Violet","Violette","Virgie","Virgil","Virginia","Virginie","Vita","Vito","Viva","Vivian","Viviane","Vivianne","Vivien","Vivienne","Vladimir","Wade","Waino","Waldo","Walker","Wallace","Walter","Walton","Wanda","Ward","Warren","Watson","Wava","Waylon","Wayne","Webster","Weldon","Wellington","Wendell","Wendy","Werner","Westley","Weston","Whitney","Wilber","Wilbert","Wilburn","Wiley","Wilford","Wilfred","Wilfredo","Wilfrid","Wilhelm","Wilhelmine","Will","Willa","Willard","William","Willie","Willis","Willow","Willy","Wilma","Wilmer","Wilson","Wilton","Winfield","Winifred","Winnifred","Winona","Winston","Woodrow","Wyatt","Wyman","Xander","Xavier","Xzavier","Yadira","Yasmeen","Yasmin","Yasmine","Yazmin","Yesenia","Yessenia","Yolanda","Yoshiko","Yvette","Yvonne","Zachariah","Zachary","Zachery","Zack","Zackary","Zackery","Zakary","Zander","Zane","Zaria","Zechariah","Zelda","Zella","Zelma","Zena","Zetta","Zion","Zita","Zoe","Zoey","Zoie","Zoila","Zola","Zora","Zula"],female:["Mary","Patricia","Linda","Barbara","Elizabeth","Jennifer","Maria","Susan","Margaret","Dorothy","Lisa","Nancy","Karen","Betty","Helen","Sandra","Donna","Carol","Ruth","Sharon","Michelle","Laura","Sarah","Kimberly","Deborah","Jessica","Shirley","Cynthia","Angela","Melissa","Brenda","Amy","Anna","Rebecca","Virginia","Kathleen","Pamela","Martha","Debra","Amanda","Stephanie","Carolyn","Christine","Marie","Janet","Catherine","Frances","Ann","Joyce","Diane","Alice","Julie","Heather","Teresa","Doris","Gloria","Evelyn","Jean","Cheryl","Mildred","Katherine","Joan","Ashley","Judith","Rose","Janice","Kelly","Nicole","Judy","Christina","Kathy","Theresa","Beverly","Denise","Tammy","Irene","Jane","Lori","Rachel","Marilyn","Andrea","Kathryn","Louise","Sara","Anne","Jacqueline","Wanda","Bonnie","Julia","Ruby","Lois","Tina","Phyllis","Norma","Paula","Diana","Annie","Lillian","Emily","Robin","Peggy","Crystal","Gladys","Rita","Dawn","Connie","Florence","Tracy","Edna","Tiffany","Carmen","Rosa","Cindy","Grace","Wendy","Victoria","Edith","Kim","Sherry","Sylvia","Josephine","Thelma","Shannon","Sheila","Ethel","Ellen","Elaine","Marjorie","Carrie","Charlotte","Monica","Esther","Pauline","Emma","Juanita","Anita","Rhonda","Hazel","Amber","Eva","Debbie","April","Leslie","Clara","Lucille","Jamie","Joanne","Eleanor","Valerie","Danielle","Megan","Alicia","Suzanne","Michele","Gail","Bertha","Darlene","Veronica","Jill","Erin","Geraldine","Lauren","Cathy","Joann","Lorraine","Lynn","Sally","Regina","Erica","Beatrice","Dolores","Bernice","Audrey","Yvonne","Annette","June","Samantha","Marion","Dana","Stacy","Ana","Renee","Ida","Vivian","Roberta","Holly","Brittany","Melanie","Loretta","Yolanda","Jeanette","Laurie","Katie","Kristen","Vanessa","Alma","Sue","Elsie","Beth","Jeanne","Vicki","Carla","Tara","Rosemary","Eileen","Terri","Gertrude","Lucy","Tonya","Ella","Stacey","Wilma","Gina","Kristin","Jessie","Natalie","Agnes","Vera","Willie","Charlene","Bessie","Delores","Melinda","Pearl","Arlene","Maureen","Colleen","Allison","Tamara","Joy","Georgia","Constance","Lillie","Claudia","Jackie","Marcia","Tanya","Nellie","Minnie","Marlene","Heidi","Glenda","Lydia","Viola","Courtney","Marian","Stella","Caroline","Dora","Jo","Vickie","Mattie","Terry","Maxine","Irma","Mabel","Marsha","Myrtle","Lena","Christy","Deanna","Patsy","Hilda","Gwendolyn","Jennie","Nora","Margie","Nina","Cassandra","Leah","Penny","Kay","Priscilla","Naomi","Carole","Brandy","Olga","Billie","Dianne","Tracey","Leona","Jenny","Felicia","Sonia","Miriam","Velma","Becky","Bobbie","Violet","Kristina","Toni","Misty","Mae","Shelly","Daisy","Ramona","Sherri","Erika","Katrina","Claire","Lindsey","Lindsay","Geneva","Guadalupe","Belinda","Margarita","Sheryl","Cora","Faye","Ada","Natasha","Sabrina","Isabel","Marguerite","Hattie","Harriet","Molly","Cecilia","Kristi","Brandi","Blanche","Sandy","Rosie","Joanna","Iris","Eunice","Angie","Inez","Lynda","Madeline","Amelia","Alberta","Genevieve","Monique","Jodi","Janie","Maggie","Kayla","Sonya","Jan","Lee","Kristine","Candace","Fannie","Maryann","Opal","Alison","Yvette","Melody","Luz","Susie","Olivia","Flora","Shelley","Kristy","Mamie","Lula","Lola","Verna","Beulah","Antoinette","Candice","Juana","Jeannette","Pam","Kelli","Hannah","Whitney","Bridget","Karla","Celia","Latoya","Patty","Shelia","Gayle","Della","Vicky","Lynne","Sheri","Marianne","Kara","Jacquelyn","Erma","Blanca","Myra","Leticia","Pat","Krista","Roxanne","Angelica","Johnnie","Robyn","Francis","Adrienne","Rosalie","Alexandra","Brooke","Bethany","Sadie","Bernadette","Traci","Jody","Kendra","Jasmine","Nichole","Rachael","Chelsea","Mable","Ernestine","Muriel","Marcella","Elena","Krystal","Angelina","Nadine","Kari","Estelle","Dianna","Paulette","Lora","Mona","Doreen","Rosemarie","Angel","Desiree","Antonia","Hope","Ginger","Janis","Betsy","Christie","Freda","Mercedes","Meredith","Lynette","Teri","Cristina","Eula","Leigh","Meghan","Sophia","Eloise","Rochelle","Gretchen","Cecelia","Raquel","Henrietta","Alyssa","Jana","Kelley","Gwen","Kerry","Jenna","Tricia","Laverne","Olive","Alexis","Tasha","Silvia","Elvira","Casey","Delia","Sophie","Kate","Patti","Lorena","Kellie","Sonja","Lila","Lana","Darla","May","Mindy","Essie","Mandy","Lorene","Elsa","Josefina","Jeannie","Miranda","Dixie","Lucia","Marta","Faith","Lela","Johanna","Shari","Camille","Tami","Shawna","Elisa","Ebony","Melba","Ora","Nettie","Tabitha","Ollie","Jaime","Winifred","Kristie"],male:["James","John","Robert","Michael","William","David","Richard","Charles","Joseph","Thomas","Christopher","Daniel","Paul","Mark","Donald","George","Kenneth","Steven","Edward","Brian","Ronald","Anthony","Kevin","Jason","Matthew","Gary","Timothy","Jose","Larry","Jeffrey","Frank","Scott","Eric","Stephen","Andrew","Raymond","Gregory","Joshua","Jerry","Dennis","Walter","Patrick","Peter","Harold","Douglas","Henry","Carl","Arthur","Ryan","Roger","Joe","Juan","Jack","Albert","Jonathan","Justin","Terry","Gerald","Keith","Samuel","Willie","Ralph","Lawrence","Nicholas","Roy","Benjamin","Bruce","Brandon","Adam","Harry","Fred","Wayne","Billy","Steve","Louis","Jeremy","Aaron","Randy","Howard","Eugene","Carlos","Russell","Bobby","Victor","Martin","Ernest","Phillip","Todd","Jesse","Craig","Alan","Shawn","Clarence","Sean","Philip","Chris","Johnny","Earl","Jimmy","Antonio","Danny","Bryan","Tony","Luis","Mike","Stanley","Leonard","Nathan","Dale","Manuel","Rodney","Curtis","Norman","Allen","Marvin","Vincent","Glenn","Jeffery","Travis","Jeff","Chad","Jacob","Lee","Melvin","Alfred","Kyle","Francis","Bradley","Jesus","Herbert","Frederick","Ray","Joel","Edwin","Don","Eddie","Ricky","Troy","Randall","Barry","Alexander","Bernard","Mario","Leroy","Francisco","Marcus","Micheal","Theodore","Clifford","Miguel","Oscar","Jay","Jim","Tom","Calvin","Alex","Jon","Ronnie","Bill","Lloyd","Tommy","Leon","Derek","Warren","Darrell","Jerome","Floyd","Leo","Alvin","Tim","Wesley","Gordon","Dean","Greg","Jorge","Dustin","Pedro","Derrick","Dan","Lewis","Zachary","Corey","Herman","Maurice","Vernon","Roberto","Clyde","Glen","Hector","Shane","Ricardo","Sam","Rick","Lester","Brent","Ramon","Charlie","Tyler","Gilbert","Gene","Marc","Reginald","Ruben","Brett","Angel","Nathaniel","Rafael","Leslie","Edgar","Milton","Raul","Ben","Chester","Cecil","Duane","Franklin","Andre","Elmer","Brad","Gabriel","Ron","Mitchell","Roland","Arnold","Harvey","Jared","Adrian","Karl","Cory","Claude","Erik","Darryl","Jamie","Neil","Jessie","Christian","Javier","Fernando","Clinton","Ted","Mathew","Tyrone","Darren","Lonnie","Lance","Cody","Julio","Kelly","Kurt","Allan","Nelson","Guy","Clayton","Hugh","Max","Dwayne","Dwight","Armando","Felix","Jimmie","Everett","Jordan","Ian","Wallace","Ken","Bob","Jaime","Casey","Alfredo","Alberto","Dave","Ivan","Johnnie","Sidney","Byron","Julian","Isaac","Morris","Clifton","Willard","Daryl","Ross","Virgil","Andy","Marshall","Salvador","Perry","Kirk","Sergio","Marion","Tracy","Seth","Kent","Terrance","Rene","Eduardo","Terrence","Enrique","Freddie","Wade","Austin","Stuart","Fredrick","Arturo","Alejandro","Jackie","Joey","Nick","Luther","Wendell","Jeremiah","Evan","Julius","Dana","Donnie","Otis","Shannon","Trevor","Oliver","Luke","Homer","Gerard","Doug","Kenny","Hubert","Angelo","Shaun","Lyle","Matt","Lynn","Alfonso","Orlando","Rex","Carlton","Ernesto","Cameron","Neal","Pablo","Lorenzo","Omar","Wilbur","Blake","Grant","Horace","Roderick","Kerry","Abraham","Willis","Rickey","Jean","Ira","Andres","Cesar","Johnathan","Malcolm","Rudolph","Damon","Kelvin","Rudy","Preston","Alton","Archie","Marco","Wm","Pete","Randolph","Garry","Geoffrey","Jonathon","Felipe","Bennie","Gerardo","Ed","Dominic","Robin","Loren","Delbert","Colin","Guillermo","Earnest","Lucas","Benny","Noel","Spencer","Rodolfo","Myron","Edmund","Garrett","Salvatore","Cedric","Lowell","Gregg","Sherman","Wilson","Devin","Sylvester","Kim","Roosevelt","Israel","Jermaine","Forrest","Wilbert","Leland","Simon","Guadalupe","Clark","Irving","Carroll","Bryant","Owen","Rufus","Woodrow","Sammy","Kristopher","Mack","Levi","Marcos","Gustavo","Jake","Lionel","Marty","Taylor","Ellis","Dallas","Gilberto","Clint","Nicolas","Laurence","Ismael","Orville","Drew","Jody","Ervin","Dewey","Al","Wilfred","Josh","Hugo","Ignacio","Caleb","Tomas","Sheldon","Erick","Frankie","Stewart","Doyle","Darrel","Rogelio","Terence","Santiago","Alonzo","Elias","Bert","Elbert","Ramiro","Conrad","Pat","Noah","Grady","Phil","Cornelius","Lamar","Rolando","Clay","Percy","Dexter","Bradford","Merle","Darin","Amos","Terrell","Moses","Irvin","Saul","Roman","Darnell","Randal","Tommie","Timmy","Darrin","Winston","Brendan","Toby","Van","Abel","Dominick","Boyd","Courtney","Jan","Emilio","Elijah","Cary","Domingo","Santos","Aubrey","Emmett","Marlon","Emanuel","Jerald","Edmond"]};var $e$1=["Agender","Androgyne","Androgynous","Bigender","Cis female","Cis male","Cis man","Cis woman","Cis","Cisgender female","Cisgender male","Cisgender man","Cisgender woman","Cisgender","Demi-boy","Demi-girl","Demi-man","Demi-woman","Demiflux","Demigender","F2M","FTM","Female to male trans man","Female to male transgender man","Female to male transsexual man","Female to male","Gender fluid","Gender neutral","Gender nonconforming","Gender questioning","Gender variant","Genderflux","Genderqueer","Hermaphrodite","Intersex man","Intersex person","Intersex woman","Intersex","M2F","MTF","Male to female trans woman","Male to female transgender woman","Male to female transsexual woman","Male to female","Man","Multigender","Neither","Neutrois","Non-binary","Omnigender","Other","Pangender","Polygender","T* man","T* woman","Trans female","Trans male","Trans man","Trans person","Trans woman","Trans","Transsexual female","Transsexual male","Transsexual man","Transsexual person","Transsexual woman","Transsexual","Transgender female","Transgender person","Transmasculine","Trigender","Two* person","Two-spirit person","Two-spirit","Woman","Xenogender"];var ea=["Solutions","Program","Brand","Security","Research","Marketing","Directives","Implementation","Integration","Functionality","Response","Paradigm","Tactics","Identity","Markets","Group","Division","Applications","Optimization","Operations","Infrastructure","Intranet","Communications","Web","Branding","Quality","Assurance","Mobility","Accounts","Data","Creative","Configuration","Accountability","Interactions","Factors","Usability","Metrics"];var aa=["Lead","Senior","Direct","Corporate","Dynamic","Future","Product","National","Regional","District","Central","Global","Customer","Investor","International","Legacy","Forward","Internal","Human","Chief","Principal"];var oa=["{{person.jobDescriptor}} {{person.jobArea}} {{person.jobType}}"];var ra=["Supervisor","Associate","Executive","Liaison","Officer","Manager","Engineer","Specialist","Director","Coordinator","Administrator","Architect","Analyst","Designer","Planner","Orchestrator","Technician","Developer","Producer","Consultant","Assistant","Facilitator","Agent","Representative","Strategist"];var na={generic:["Abbott","Abernathy","Abshire","Adams","Altenwerth","Anderson","Ankunding","Armstrong","Auer","Aufderhar","Bahringer","Bailey","Balistreri","Barrows","Bartell","Bartoletti","Barton","Bashirian","Batz","Bauch","Baumbach","Bayer","Beahan","Beatty","Bechtelar","Becker","Bednar","Beer","Beier","Berge","Bergnaum","Bergstrom","Bernhard","Bernier","Bins","Blanda","Blick","Block","Bode","Boehm","Bogan","Bogisich","Borer","Bosco","Botsford","Boyer","Boyle","Bradtke","Brakus","Braun","Breitenberg","Brekke","Brown","Bruen","Buckridge","Carroll","Carter","Cartwright","Casper","Cassin","Champlin","Christiansen","Cole","Collier","Collins","Conn","Connelly","Conroy","Considine","Corkery","Cormier","Corwin","Cremin","Crist","Crona","Cronin","Crooks","Cruickshank","Cummerata","Cummings","Dach","D'Amore","Daniel","Dare","Daugherty","Davis","Deckow","Denesik","Dibbert","Dickens","Dicki","Dickinson","Dietrich","Donnelly","Dooley","Douglas","Doyle","DuBuque","Durgan","Ebert","Effertz","Emard","Emmerich","Erdman","Ernser","Fadel","Fahey","Farrell","Fay","Feeney","Feest","Feil","Ferry","Fisher","Flatley","Frami","Franecki","Franey","Friesen","Fritsch","Funk","Gerhold","Gerlach","Gibson","Gislason","Gleason","Gleichner","Glover","Goldner","Goodwin","Gorczany","Gottlieb","Goyette","Grady","Graham","Grant","Green","Greenfelder","Greenholt","Grimes","Gulgowski","Gusikowski","Gutkowski","Gutmann","Haag","Hackett","Hagenes","Hahn","Haley","Halvorson","Hamill","Hammes","Hand","Hane","Hansen","Harber","Harris","Hartmann","Harvey","Hauck","Hayes","Heaney","Heathcote","Hegmann","Heidenreich","Heller","Herman","Hermann","Hermiston","Herzog","Hessel","Hettinger","Hickle","Hilll","Hills","Hilpert","Hintz","Hirthe","Hodkiewicz","Hoeger","Homenick","Hoppe","Howe","Howell","Hudson","Huel","Huels","Hyatt","Jacobi","Jacobs","Jacobson","Jakubowski","Jaskolski","Jast","Jenkins","Jerde","Johns","Johnson","Johnston","Jones","Kassulke","Kautzer","Keebler","Keeling","Kemmer","Kerluke","Kertzmann","Kessler","Kiehn","Kihn","Kilback","King","Kirlin","Klein","Kling","Klocko","Koch","Koelpin","Koepp","Kohler","Konopelski","Koss","Kovacek","Kozey","Krajcik","Kreiger","Kris","Kshlerin","Kub","Kuhic","Kuhlman","Kuhn","Kulas","Kunde","Kunze","Kuphal","Kutch","Kuvalis","Labadie","Lakin","Lang","Langosh","Langworth","Larkin","Larson","Leannon","Lebsack","Ledner","Leffler","Legros","Lehner","Lemke","Lesch","Leuschke","Lind","Lindgren","Littel","Little","Lockman","Lowe","Lubowitz","Lueilwitz","Luettgen","Lynch","Macejkovic","MacGyver","Maggio","Mann","Mante","Marks","Marquardt","Marvin","Mayer","Mayert","McClure","McCullough","McDermott","McGlynn","McKenzie","McLaughlin","Medhurst","Mertz","Metz","Miller","Mills","Mitchell","Moen","Mohr","Monahan","Moore","Morar","Morissette","Mosciski","Mraz","Mueller","Muller","Murazik","Murphy","Murray","Nader","Nicolas","Nienow","Nikolaus","Nitzsche","Nolan","Oberbrunner","O'Connell","O'Conner","O'Hara","O'Keefe","O'Kon","Okuneva","Olson","Ondricka","O'Reilly","Orn","Ortiz","Osinski","Pacocha","Padberg","Pagac","Parisian","Parker","Paucek","Pfannerstill","Pfeffer","Pollich","Pouros","Powlowski","Predovic","Price","Prohaska","Prosacco","Purdy","Quigley","Quitzon","Rath","Ratke","Rau","Raynor","Reichel","Reichert","Reilly","Reinger","Rempel","Renner","Reynolds","Rice","Rippin","Ritchie","Robel","Roberts","Rodriguez","Rogahn","Rohan","Rolfson","Romaguera","Roob","Rosenbaum","Rowe","Ruecker","Runolfsdottir","Runolfsson","Runte","Russel","Rutherford","Ryan","Sanford","Satterfield","Sauer","Sawayn","Schaden","Schaefer","Schamberger","Schiller","Schimmel","Schinner","Schmeler","Schmidt","Schmitt","Schneider","Schoen","Schowalter","Schroeder","Schulist","Schultz","Schumm","Schuppe","Schuster","Senger","Shanahan","Shields","Simonis","Sipes","Skiles","Smith","Smitham","Spencer","Spinka","Sporer","Stamm","Stanton","Stark","Stehr","Steuber","Stiedemann","Stokes","Stoltenberg","Stracke","Streich","Stroman","Strosin","Swaniawski","Swift","Terry","Thiel","Thompson","Tillman","Torp","Torphy","Towne","Toy","Trantow","Tremblay","Treutel","Tromp","Turcotte","Turner","Ullrich","Upton","Vandervort","Veum","Volkman","Von","VonRueden","Waelchi","Walker","Walsh","Walter","Ward","Waters","Watsica","Weber","Wehner","Weimann","Weissnat","Welch","West","White","Wiegand","Wilderman","Wilkinson","Will","Williamson","Willms","Windler","Wintheiser","Wisoky","Wisozk","Witting","Wiza","Wolf","Wolff","Wuckert","Wunsch","Wyman","Yost","Yundt","Zboncak","Zemlak","Ziemann","Zieme","Zulauf"]};var ia={generic:[{value:"{{person.last_name.generic}}",weight:95},{value:"{{person.last_name.generic}}-{{person.last_name.generic}}",weight:5}]};var ta={generic:["Addison","Alex","Anderson","Angel","Arden","August","Austin","Avery","Bailey","Billie","Blake","Bowie","Brooklyn","Cameron","Charlie","Corey","Dakota","Drew","Elliott","Ellis","Emerson","Finley","Gray","Greer","Harper","Hayden","Jaden","James","Jamie","Jordan","Jules","Kai","Kendall","Kennedy","Kyle","Leslie","Logan","London","Marlowe","Micah","Nico","Noah","North","Parker","Phoenix","Quinn","Reagan","Reese","Reign","Riley","River","Robin","Rory","Rowan","Ryan","Sage","Sasha","Sawyer","Shawn","Shiloh","Skyler","Taylor"],female:["Abigail","Adele","Alex","Alice","Alisha","Amber","Amelia","Amora","Ana\xEFs","Angelou","Anika","Anise","Annabel","Anne","Aphrodite","Aretha","Arya","Ashton","Aster","Audrey","Avery","Bailee","Bay","Belle","Beth","Billie","Blair","Blaise","Blake","Blanche","Blue","Bree","Brielle","Brienne","Brooke","Caleen","Candice","Caprice","Carelyn","Caylen","Celine","Cerise","Cia","Claire","Claudia","Clementine","Coral","Coraline","Dahlia","Dakota","Dawn","Della","Demi","Denise","Denver","Devine","Devon","Diana","Dylan","Ebony","Eden","Eleanor","Elein","Elizabeth","Ellen","Elodie","Eloise","Ember","Emma","Erin","Eyre","Faith","Farrah","Fawn","Fayre","Fern","France","Francis","Frida","Genisis","Georgia","Grace","Gwen","Harley","Harper","Hazel","Helen","Hippolyta","Holly","Hope","Imani","Iowa","Ireland","Irene","Iris","Isa","Isla","Ivy","Jade","Jane","Jazz","Jean","Jess","Jett","Jo","Joan","Jolie","Jordan","Josie","Journey","Joy","Jules","Julien","Juliet","Juniper","Justice","Kali","Karma","Kat","Kate","Kennedy","Keva","Kylie","Lake","Lane","Lark","Layla","Lee","Leigh","Leona","Lexi","London","Lou","Louise","Love","Luna","Lux","Lynn","Lyric","Maddie","Mae","Marie","Matilda","Maude","Maybel","Meadow","Medusa","Mercy","Michelle","Mirabel","Monroe","Morgan","Nalia","Naomi","Nova","Olive","Paige","Parker","Pax","Pearl","Penelope","Phoenix","Quinn","Rae","Rain","Raven","Ray","Raye","Rebel","Reese","Reeve","Regan","Riley","River","Robin","Rory","Rose","Royal","Ruth","Rylie","Sage","Sam","Saturn","Scout","Serena","Sky","Skylar","Sofia","Sophia","Storm","Sue","Suzanne","Sydney","Taylen","Taylor","Teagan","Tempest","Tenley","Thea","Trinity","Valerie","Venus","Vera","Violet","Willow","Winter","Xena","Zaylee","Zion","Zoe"],male:["Ace","Aiden","Alexander","Ander","Anthony","Asher","August","Aziel","Bear","Beckham","Benjamin","Buddy","Calvin","Carter","Charles","Christopher","Clyde","Cooper","Daniel","David","Dior","Dylan","Elijah","Ellis","Emerson","Ethan","Ezra","Fletcher","Flynn","Gabriel","Grayson","Gus","Hank","Harrison","Hendrix","Henry","Houston","Hudson","Hugh","Isaac","Jack","Jackson","Jacob","Jakobe","James","Jaxon","Jaxtyn","Jayden","John","Joseph","Josiah","Jude","Julian","Karsyn","Kenji","Kobe","Kylo","Lennon","Leo","Levi","Liam","Lincoln","Logan","Louis","Lucas","Lucky","Luke","Mason","Mateo","Matthew","Maverick","Michael","Monroe","Nixon","Ocean","Oliver","Otis","Otto","Owen","Ozzy","Parker","Rocky","Samuel","Sebastian","Sonny","Teddy","Theo","Theodore","Thomas","Truett","Walter","Warren","Watson","William","Wison","Wyatt","Ziggy","Zyair"]};var la=[{value:"{{person.firstName}} {{person.lastName}}",weight:49},{value:"{{person.prefix}} {{person.firstName}} {{person.lastName}}",weight:7},{value:"{{person.firstName}} {{person.lastName}} {{person.suffix}}",weight:7},{value:"{{person.prefix}} {{person.firstName}} {{person.lastName}} {{person.suffix}}",weight:1}];var sa={generic:["Dr.","Miss","Mr.","Mrs.","Ms."],female:["Mrs.","Ms.","Miss","Dr."],male:["Mr.","Dr."]};var da=["female","male"];var ua=["Jr.","Sr.","I","II","III","IV","V","MD","DDS","PhD","DVM"];var ca=["Aquarius","Pisces","Aries","Taurus","Gemini","Cancer","Leo","Virgo","Libra","Scorpio","Sagittarius","Capricorn"];var oo={bio_part:Ze$1,bio_pattern:_e$1,bio_supporter:Qe$1,first_name:Xe$1,gender:$e$1,job_area:ea,job_descriptor:aa,job_title_pattern:oa,job_type:ra,last_name:na,last_name_pattern:ia,middle_name:ta,name:la,prefix:sa,sex:da,suffix:ua,western_zodiac_sign:ca},ma=oo;var ha=["!##-!##-####","(!##) !##-####","1-!##-!##-####","!##.!##.####","!##-!##-#### x###","(!##) !##-#### x###","1-!##-!##-#### x###","!##.!##.#### x###","!##-!##-#### x####","(!##) !##-#### x####","1-!##-!##-#### x####","!##.!##.#### x####","!##-!##-#### x#####","(!##) !##-#### x#####","1-!##-!##-#### x#####","!##.!##.#### x#####"];var ya=["+1!##!######"];var pa=["(!##) !##-####"];var ro={human:ha,international:ya,national:pa},ga=ro;var no={format:ga},ba=no;var Sa=[{symbol:"H",name:"Hydrogen",atomicNumber:1},{symbol:"He",name:"Helium",atomicNumber:2},{symbol:"Li",name:"Lithium",atomicNumber:3},{symbol:"Be",name:"Beryllium",atomicNumber:4},{symbol:"B",name:"Boron",atomicNumber:5},{symbol:"C",name:"Carbon",atomicNumber:6},{symbol:"N",name:"Nitrogen",atomicNumber:7},{symbol:"O",name:"Oxygen",atomicNumber:8},{symbol:"F",name:"Fluorine",atomicNumber:9},{symbol:"Ne",name:"Neon",atomicNumber:10},{symbol:"Na",name:"Sodium",atomicNumber:11},{symbol:"Mg",name:"Magnesium",atomicNumber:12},{symbol:"Al",name:"Aluminium",atomicNumber:13},{symbol:"Si",name:"Silicon",atomicNumber:14},{symbol:"P",name:"Phosphorus",atomicNumber:15},{symbol:"S",name:"Sulfur",atomicNumber:16},{symbol:"Cl",name:"Chlorine",atomicNumber:17},{symbol:"Ar",name:"Argon",atomicNumber:18},{symbol:"K",name:"Potassium",atomicNumber:19},{symbol:"Ca",name:"Calcium",atomicNumber:20},{symbol:"Sc",name:"Scandium",atomicNumber:21},{symbol:"Ti",name:"Titanium",atomicNumber:22},{symbol:"V",name:"Vanadium",atomicNumber:23},{symbol:"Cr",name:"Chromium",atomicNumber:24},{symbol:"Mn",name:"Manganese",atomicNumber:25},{symbol:"Fe",name:"Iron",atomicNumber:26},{symbol:"Co",name:"Cobalt",atomicNumber:27},{symbol:"Ni",name:"Nickel",atomicNumber:28},{symbol:"Cu",name:"Copper",atomicNumber:29},{symbol:"Zn",name:"Zinc",atomicNumber:30},{symbol:"Ga",name:"Gallium",atomicNumber:31},{symbol:"Ge",name:"Germanium",atomicNumber:32},{symbol:"As",name:"Arsenic",atomicNumber:33},{symbol:"Se",name:"Selenium",atomicNumber:34},{symbol:"Br",name:"Bromine",atomicNumber:35},{symbol:"Kr",name:"Krypton",atomicNumber:36},{symbol:"Rb",name:"Rubidium",atomicNumber:37},{symbol:"Sr",name:"Strontium",atomicNumber:38},{symbol:"Y",name:"Yttrium",atomicNumber:39},{symbol:"Zr",name:"Zirconium",atomicNumber:40},{symbol:"Nb",name:"Niobium",atomicNumber:41},{symbol:"Mo",name:"Molybdenum",atomicNumber:42},{symbol:"Tc",name:"Technetium",atomicNumber:43},{symbol:"Ru",name:"Ruthenium",atomicNumber:44},{symbol:"Rh",name:"Rhodium",atomicNumber:45},{symbol:"Pd",name:"Palladium",atomicNumber:46},{symbol:"Ag",name:"Silver",atomicNumber:47},{symbol:"Cd",name:"Cadmium",atomicNumber:48},{symbol:"In",name:"Indium",atomicNumber:49},{symbol:"Sn",name:"Tin",atomicNumber:50},{symbol:"Sb",name:"Antimony",atomicNumber:51},{symbol:"Te",name:"Tellurium",atomicNumber:52},{symbol:"I",name:"Iodine",atomicNumber:53},{symbol:"Xe",name:"Xenon",atomicNumber:54},{symbol:"Cs",name:"Caesium",atomicNumber:55},{symbol:"Ba",name:"Barium",atomicNumber:56},{symbol:"La",name:"Lanthanum",atomicNumber:57},{symbol:"Ce",name:"Cerium",atomicNumber:58},{symbol:"Pr",name:"Praseodymium",atomicNumber:59},{symbol:"Nd",name:"Neodymium",atomicNumber:60},{symbol:"Pm",name:"Promethium",atomicNumber:61},{symbol:"Sm",name:"Samarium",atomicNumber:62},{symbol:"Eu",name:"Europium",atomicNumber:63},{symbol:"Gd",name:"Gadolinium",atomicNumber:64},{symbol:"Tb",name:"Terbium",atomicNumber:65},{symbol:"Dy",name:"Dysprosium",atomicNumber:66},{symbol:"Ho",name:"Holmium",atomicNumber:67},{symbol:"Er",name:"Erbium",atomicNumber:68},{symbol:"Tm",name:"Thulium",atomicNumber:69},{symbol:"Yb",name:"Ytterbium",atomicNumber:70},{symbol:"Lu",name:"Lutetium",atomicNumber:71},{symbol:"Hf",name:"Hafnium",atomicNumber:72},{symbol:"Ta",name:"Tantalum",atomicNumber:73},{symbol:"W",name:"Tungsten",atomicNumber:74},{symbol:"Re",name:"Rhenium",atomicNumber:75},{symbol:"Os",name:"Osmium",atomicNumber:76},{symbol:"Ir",name:"Iridium",atomicNumber:77},{symbol:"Pt",name:"Platinum",atomicNumber:78},{symbol:"Au",name:"Gold",atomicNumber:79},{symbol:"Hg",name:"Mercury",atomicNumber:80},{symbol:"Tl",name:"Thallium",atomicNumber:81},{symbol:"Pb",name:"Lead",atomicNumber:82},{symbol:"Bi",name:"Bismuth",atomicNumber:83},{symbol:"Po",name:"Polonium",atomicNumber:84},{symbol:"At",name:"Astatine",atomicNumber:85},{symbol:"Rn",name:"Radon",atomicNumber:86},{symbol:"Fr",name:"Francium",atomicNumber:87},{symbol:"Ra",name:"Radium",atomicNumber:88},{symbol:"Ac",name:"Actinium",atomicNumber:89},{symbol:"Th",name:"Thorium",atomicNumber:90},{symbol:"Pa",name:"Protactinium",atomicNumber:91},{symbol:"U",name:"Uranium",atomicNumber:92},{symbol:"Np",name:"Neptunium",atomicNumber:93},{symbol:"Pu",name:"Plutonium",atomicNumber:94},{symbol:"Am",name:"Americium",atomicNumber:95},{symbol:"Cm",name:"Curium",atomicNumber:96},{symbol:"Bk",name:"Berkelium",atomicNumber:97},{symbol:"Cf",name:"Californium",atomicNumber:98},{symbol:"Es",name:"Einsteinium",atomicNumber:99},{symbol:"Fm",name:"Fermium",atomicNumber:100},{symbol:"Md",name:"Mendelevium",atomicNumber:101},{symbol:"No",name:"Nobelium",atomicNumber:102},{symbol:"Lr",name:"Lawrencium",atomicNumber:103},{symbol:"Rf",name:"Rutherfordium",atomicNumber:104},{symbol:"Db",name:"Dubnium",atomicNumber:105},{symbol:"Sg",name:"Seaborgium",atomicNumber:106},{symbol:"Bh",name:"Bohrium",atomicNumber:107},{symbol:"Hs",name:"Hassium",atomicNumber:108},{symbol:"Mt",name:"Meitnerium",atomicNumber:109},{symbol:"Ds",name:"Darmstadtium",atomicNumber:110},{symbol:"Rg",name:"Roentgenium",atomicNumber:111},{symbol:"Cn",name:"Copernicium",atomicNumber:112},{symbol:"Nh",name:"Nihonium",atomicNumber:113},{symbol:"Fl",name:"Flerovium",atomicNumber:114},{symbol:"Mc",name:"Moscovium",atomicNumber:115},{symbol:"Lv",name:"Livermorium",atomicNumber:116},{symbol:"Ts",name:"Tennessine",atomicNumber:117},{symbol:"Og",name:"Oganesson",atomicNumber:118}];var ka=[{name:"meter",symbol:"m"},{name:"second",symbol:"s"},{name:"mole",symbol:"mol"},{name:"ampere",symbol:"A"},{name:"kelvin",symbol:"K"},{name:"candela",symbol:"cd"},{name:"kilogram",symbol:"kg"},{name:"radian",symbol:"rad"},{name:"hertz",symbol:"Hz"},{name:"newton",symbol:"N"},{name:"pascal",symbol:"Pa"},{name:"joule",symbol:"J"},{name:"watt",symbol:"W"},{name:"coulomb",symbol:"C"},{name:"volt",symbol:"V"},{name:"ohm",symbol:"\u03A9"},{name:"tesla",symbol:"T"},{name:"degree Celsius",symbol:"\xB0C"},{name:"lumen",symbol:"lm"},{name:"becquerel",symbol:"Bq"},{name:"gray",symbol:"Gy"},{name:"sievert",symbol:"Sv"},{name:"steradian",symbol:"sr"},{name:"farad",symbol:"F"},{name:"siemens",symbol:"S"},{name:"weber",symbol:"Wb"},{name:"henry",symbol:"H"},{name:"lux",symbol:"lx"},{name:"katal",symbol:"kat"}];var io={chemical_element:Sa,unit:ka},Ca=io;var fa=["ants","bats","bears","bees","birds","buffalo","cats","chickens","cattle","dogs","dolphins","ducks","elephants","fishes","foxes","frogs","geese","goats","horses","kangaroos","lions","monkeys","owls","oxen","penguins","people","pigs","rabbits","sheep","tigers","whales","wolves","zebras","banshees","crows","black cats","chimeras","ghosts","conspirators","dragons","dwarves","elves","enchanters","exorcists","sons","foes","giants","gnomes","goblins","gooses","griffins","lycanthropes","nemesis","ogres","oracles","prophets","sorcerors","spiders","spirits","vampires","warlocks","vixens","werewolves","witches","worshipers","zombies","druids"];var va=["{{location.state}} {{team.creature}}"];var to={creature:fa,name:va},Aa=to;var Ba=["Adventure Road Bicycle","BMX Bicycle","City Bicycle","Cruiser Bicycle","Cyclocross Bicycle","Dual-Sport Bicycle","Fitness Bicycle","Flat-Foot Comfort Bicycle","Folding Bicycle","Hybrid Bicycle","Mountain Bicycle","Recumbent Bicycle","Road Bicycle","Tandem Bicycle","Touring Bicycle","Track/Fixed-Gear Bicycle","Triathlon/Time Trial Bicycle","Tricycle"];var wa=["Diesel","Electric","Gasoline","Hybrid"];var Ma=["Aston Martin","Audi","BMW","Bentley","Bugatti","Cadillac","Chevrolet","Chrysler","Dodge","Ferrari","Fiat","Ford","Honda","Hyundai","Jaguar","Jeep","Kia","Lamborghini","Land Rover","Maserati","Mazda","Mercedes Benz","Mini","Nissan","Polestar","Porsche","Rolls Royce","Smart","Tesla","Toyota","Volkswagen","Volvo"];var Ta=["1","2","911","A4","A8","ATS","Accord","Alpine","Altima","Aventador","Beetle","CTS","CX-9","Camaro","Camry","Challenger","Charger","Civic","Colorado","Corvette","Countach","Cruze","Durango","El Camino","Element","Escalade","Expedition","Explorer","F-150","Fiesta","Focus","Fortwo","Golf","Grand Caravan","Grand Cherokee","Impala","Jetta","Land Cruiser","LeBaron","Malibu","Mercielago","Model 3","Model S","Model T","Model X","Model Y","Mustang","PT Cruiser","Prius","Ranchero","Roadster","Sentra","Silverado","Spyder","Taurus","V90","Volt","Wrangler","XC90","XTS"];var La=["Cargo Van","Convertible","Coupe","Crew Cab Pickup","Extended Cab Pickup","Hatchback","Minivan","Passenger Van","SUV","Sedan","Wagon"];var lo={bicycle_type:Ba,fuel:wa,manufacturer:Ma,model:Ta,type:La},Da=lo;var Ra=["abandoned","able","acceptable","acclaimed","accomplished","accurate","aching","acidic","actual","admired","adolescent","advanced","affectionate","afraid","aged","aggravating","aggressive","agile","agitated","agreeable","ajar","alarmed","alert","alienated","alive","all","altruistic","amazing","ambitious","ample","amused","angelic","anguished","animated","annual","another","antique","any","apprehensive","appropriate","apt","arid","artistic","ashamed","assured","astonishing","athletic","austere","authentic","authorized","avaricious","average","aware","awesome","awful","babyish","back","bad","baggy","bare","basic","beloved","beneficial","best","better","big","biodegradable","bitter","black","black-and-white","blank","blaring","bleak","blind","blond","blue","blushing","bogus","boiling","bony","boring","bossy","both","bouncy","bowed","brave","breakable","bright","brilliant","brisk","broken","brown","bruised","bulky","burdensome","burly","bustling","busy","buttery","buzzing","calculating","candid","carefree","careless","caring","cautious","cavernous","celebrated","charming","cheap","cheerful","chilly","chubby","circular","classic","clean","clear","clear-cut","close","closed","cloudy","clueless","clumsy","cluttered","coarse","colorful","colorless","colossal","comfortable","common","compassionate","competent","complete","complicated","concerned","concrete","confused","considerate","content","cool","cooperative","coordinated","corny","corrupt","courageous","courteous","crafty","crazy","creamy","creative","criminal","critical","crooked","crowded","cruel","crushing","cuddly","cultivated","cumbersome","curly","cute","damaged","damp","dapper","dark","darling","dazzling","dead","deadly","deafening","dearest","decent","decisive","deep","defenseless","defensive","deficient","definite","definitive","delectable","delicious","delirious","dense","dental","dependable","dependent","descriptive","deserted","determined","devoted","different","difficult","digital","diligent","dim","direct","dirty","discrete","disloyal","dismal","distant","distinct","distorted","doting","downright","drab","dramatic","dreary","dual","dull","dutiful","each","early","earnest","easy","ecstatic","edible","educated","elastic","elderly","electric","elegant","elementary","elliptical","eminent","emotional","empty","enchanted","enchanting","energetic","enlightened","enraged","entire","equatorial","essential","esteemed","ethical","everlasting","every","evil","exalted","excellent","excitable","excited","exhausted","exotic","expensive","experienced","expert","extra-large","extroverted","failing","faint","fair","fake","familiar","fantastic","far","far-flung","far-off","faraway","fat","fatal","fatherly","favorable","favorite","fearless","feline","filthy","fine","finished","firm","first","firsthand","fixed","flashy","flawed","flawless","flickering","flimsy","flowery","fluffy","flustered","focused","fond","foolhardy","foolish","forceful","formal","forsaken","fortunate","fragrant","frail","frank","free","french","frequent","friendly","frightened","frilly","frivolous","frizzy","front","frozen","frugal","fruitful","functional","funny","fussy","fuzzy","gaseous","general","gentle","genuine","gifted","gigantic","giving","glaring","glass","gleaming","glittering","gloomy","glorious","glossy","glum","golden","good","good-natured","gorgeous","graceful","gracious","grandiose","granular","grave","gray","great","greedy","grim","grimy","gripping","grizzled","grouchy","grounded","growing","grown","grubby","gruesome","grumpy","guilty","gullible","gummy","hairy","handsome","handy","happy","happy-go-lucky","hard-to-find","harmful","hasty","hateful","haunting","heartfelt","heavenly","heavy","hefty","helpful","helpless","hidden","hoarse","hollow","homely","honorable","honored","hopeful","hospitable","hot","huge","humble","humiliating","hungry","hurtful","husky","icy","ideal","idealistic","idolized","ignorant","ill","ill-fated","illiterate","illustrious","imaginary","imaginative","immaculate","immediate","immense","impartial","impassioned","impeccable","impish","impolite","important","impossible","impractical","impressionable","impressive","improbable","impure","inborn","incomparable","incomplete","inconsequential","indelible","indolent","inexperienced","infamous","infatuated","inferior","infinite","informal","innocent","insecure","insidious","insignificant","insistent","instructive","intelligent","intent","interesting","internal","international","intrepid","ironclad","irresponsible","jagged","jam-packed","jaunty","jealous","jittery","joyful","joyous","jubilant","judicious","juicy","jumbo","junior","juvenile","kaleidoscopic","key","knotty","knowledgeable","known","kooky","kosher","lanky","last","lasting","late","lavish","lawful","lazy","leading","lean","left","legal","light","lighthearted","likable","likely","limited","limp","limping","linear","lined","liquid","little","live","lively","livid","lone","lonely","long","long-term","lost","lovable","lovely","low","lucky","lumbering","lumpy","lustrous","mad","made-up","magnificent","majestic","major","male","mammoth","married","marvelous","massive","mature","meager","mealy","mean","measly","meaty","mediocre","medium","memorable","menacing","merry","messy","metallic","mild","milky","mindless","minor","minty","miserable","miserly","misguided","mixed","moist","monstrous","monthly","monumental","moral","motionless","muddy","muffled","multicolored","mundane","murky","mushy","musty","muted","mysterious","narrow","natural","naughty","nautical","near","neat","necessary","needy","negative","neglected","negligible","neighboring","nervous","new","next","nice","nifty","nimble","nippy","nocturnal","normal","noted","noteworthy","noxious","numb","nutritious","obedient","oblong","obvious","odd","oddball","official","oily","old","old-fashioned","only","optimal","optimistic","orange","orderly","ordinary","ornate","ornery","other","our","outgoing","outlandish","outlying","outrageous","outstanding","oval","overcooked","overdue","palatable","pale","paltry","parallel","parched","partial","passionate","pastel","peaceful","peppery","perfumed","perky","personal","pertinent","pessimistic","petty","phony","physical","pink","pitiful","plain","pleasant","pleased","pleasing","plump","pointed","pointless","polished","polite","political","poor","portly","posh","possible","potable","powerful","powerless","practical","precious","present","prestigious","pretty","pricey","prickly","primary","prime","private","probable","productive","profitable","profuse","proper","proud","prudent","punctual","puny","pure","purple","pushy","putrid","puzzled","qualified","quarrelsome","quarterly","queasy","querulous","questionable","quick","quick-witted","quiet","quintessential","quixotic","radiant","ragged","rapid","rare","raw","realistic","reasonable","recent","reckless","rectangular","red","reflecting","regal","regular","remarkable","remorseful","repentant","respectful","responsible","rewarding","rich","right","rigid","ripe","roasted","robust","rosy","rotating","rotten","rough","round","rowdy","royal","rubbery","ruddy","rundown","runny","rural","rusty","sad","salty","same","sandy","sarcastic","sardonic","scaly","scared","scary","scented","scientific","scornful","scratchy","second","second-hand","secondary","secret","self-assured","self-reliant","selfish","sentimental","separate","serene","serpentine","severe","shabby","shadowy","shady","shallow","shameful","shameless","shimmering","shiny","shocked","shoddy","short","short-term","showy","shrill","shy","sick","silent","silky","silver","similar","simple","simplistic","sinful","sizzling","skeletal","sleepy","slight","slimy","slow","slushy","small","smart","smoggy","smooth","smug","snappy","snarling","sneaky","sniveling","snoopy","sociable","soft","soggy","somber","some","sophisticated","sore","sorrowful","soulful","soupy","sour","spanish","sparkling","sparse","specific","speedy","spherical","spiffy","spirited","spiteful","splendid","spotless","square","squeaky","squiggly","stable","staid","stained","stale","standard","stark","steel","steep","sticky","stiff","stingy","stormy","straight","strange","strict","strident","striking","strong","stunning","stupendous","sturdy","stylish","subdued","submissive","substantial","subtle","suburban","sudden","sugary","sunny","super","superb","superficial","superior","supportive","sure-footed","surprised","svelte","sweet","swift","talkative","tall","tame","tangible","tasty","tattered","taut","tedious","teeming","tempting","tender","tense","tepid","terrible","that","these","thick","thin","thorny","thorough","those","thrifty","tidy","tight","timely","tinted","tiny","tired","torn","total","tough","tragic","trained","triangular","tricky","trim","trivial","troubled","true","trusting","trustworthy","trusty","turbulent","twin","ugly","ultimate","unaware","uncomfortable","uncommon","unconscious","understated","uneven","unfinished","unfit","unfortunate","unhappy","unhealthy","uniform","unimportant","unique","unkempt","unknown","unlawful","unlined","unlucky","unpleasant","unrealistic","unripe","unruly","unselfish","unsightly","unsteady","unsung","untidy","untimely","untried","untrue","unused","unusual","unwelcome","unwieldy","unwilling","unwritten","upbeat","upright","upset","urban","usable","useless","utilized","utter","vague","vain","valuable","variable","vast","velvety","vengeful","vibrant","victorious","violent","vivacious","vivid","voluminous","warlike","warm","warmhearted","warped","wasteful","waterlogged","watery","wavy","wealthy","weary","webbed","wee","weekly","weighty","weird","well-documented","well-groomed","well-lit","well-made","well-off","well-to-do","well-worn","which","whimsical","whirlwind","whispered","white","whole","whopping","wicked","wide","wide-eyed","wiggly","willing","wilted","winding","windy","winged","wise","witty","wobbly","woeful","wonderful","wordy","worldly","worse","worst","worthless","worthwhile","worthy","wrathful","wretched","writhing","wrong","wry","yearly","yellow","yellowish","young","youthful","yummy","zany","zealous","zesty"];var Ha=["abnormally","absentmindedly","accidentally","acidly","actually","adventurously","afterwards","almost","always","angrily","annually","anxiously","arrogantly","awkwardly","badly","bashfully","beautifully","bitterly","bleakly","blindly","blissfully","boastfully","boldly","bravely","briefly","brightly","briskly","broadly","busily","calmly","carefully","carelessly","cautiously","certainly","cheerfully","clearly","cleverly","closely","coaxingly","colorfully","commonly","continually","coolly","correctly","courageously","crossly","cruelly","curiously","daily","daintily","dearly","deceivingly","deeply","defiantly","deliberately","delightfully","diligently","dimly","doubtfully","dreamily","easily","elegantly","energetically","enormously","enthusiastically","equally","especially","even","evenly","eventually","exactly","excitedly","extremely","fairly","faithfully","famously","far","fast","fatally","ferociously","fervently","fiercely","fondly","foolishly","fortunately","frankly","frantically","freely","frenetically","frightfully","fully","furiously","generally","generously","gently","gladly","gleefully","gracefully","gratefully","greatly","greedily","happily","hastily","healthily","heavily","helpfully","helplessly","highly","honestly","hopelessly","hourly","hungrily","immediately","innocently","inquisitively","instantly","intensely","intently","interestingly","inwardly","irritably","jaggedly","jealously","joshingly","jovially","joyfully","joyously","jubilantly","judgementally","justly","keenly","kiddingly","kindheartedly","kindly","kissingly","knavishly","knottily","knowingly","knowledgeably","kookily","lazily","less","lightly","likely","limply","lively","loftily","longingly","loosely","loudly","lovingly","loyally","madly","majestically","meaningfully","mechanically","merrily","miserably","mockingly","monthly","more","mortally","mostly","mysteriously","naturally","nearly","neatly","needily","nervously","never","nicely","noisily","not","obediently","obnoxiously","oddly","offensively","officially","often","only","openly","optimistically","overconfidently","owlishly","painfully","partially","patiently","perfectly","physically","playfully","politely","poorly","positively","potentially","powerfully","promptly","properly","punctually","quaintly","quarrelsomely","queasily","questionably","questioningly","quicker","quickly","quietly","quirkily","quizzically","rapidly","rarely","readily","really","reassuringly","recklessly","regularly","reluctantly","repeatedly","reproachfully","restfully","righteously","rightfully","rigidly","roughly","rudely","sadly","safely","scarcely","scarily","searchingly","sedately","seemingly","seldom","selfishly","separately","seriously","shakily","sharply","sheepishly","shrilly","shyly","silently","sleepily","slowly","smoothly","softly","solemnly","solidly","sometimes","soon","speedily","stealthily","sternly","strictly","successfully","suddenly","surprisingly","suspiciously","sweetly","swiftly","sympathetically","tenderly","tensely","terribly","thankfully","thoroughly","thoughtfully","tightly","tomorrow","too","tremendously","triumphantly","truly","truthfully","ultimately","unabashedly","unaccountably","unbearably","unethically","unexpectedly","unfortunately","unimpressively","unnaturally","unnecessarily","upbeat","upliftingly","upright","upside-down","upward","upwardly","urgently","usefully","uselessly","usually","utterly","vacantly","vaguely","vainly","valiantly","vastly","verbally","very","viciously","victoriously","violently","vivaciously","voluntarily","warmly","weakly","wearily","well","wetly","wholly","wildly","willfully","wisely","woefully","wonderfully","worriedly","wrongly","yawningly","yearly","yearningly","yesterday","yieldingly","youthfully"];var Pa=["after","although","and","as","because","before","but","consequently","even","finally","for","furthermore","hence","how","however","if","inasmuch","incidentally","indeed","instead","lest","likewise","meanwhile","nor","now","once","or","provided","since","so","supposing","than","that","though","till","unless","until","what","when","whenever","where","whereas","wherever","whether","which","while","who","whoever","whose","why","yet"];var Wa=["yuck","oh","phooey","blah","boo","whoa","yowza","huzzah","boohoo","fooey","geez","pfft","ew","ah","yum","brr","hm","yahoo","aha","woot","drat","gah","meh","psst","aw","ugh","yippee","eek","gee","bah","gadzooks","duh","ha","mmm","ouch","phew","ack","uh-huh","gosh","hmph","pish","zowie","er","ick","oof","um"];var Ga=["CD","SUV","abacus","academics","accelerator","accompanist","account","accountability","acquaintance","ad","adaptation","address","adrenalin","adult","advancement","advertisement","adviser","affect","affiliate","aftermath","agreement","airbus","aircraft","airline","airmail","airman","airport","alb","alert","allegation","alliance","alligator","allocation","almighty","amendment","amnesty","analogy","angle","annual","antelope","anticodon","apparatus","appliance","approach","apricot","arcade","archaeology","armchair","armoire","asset","assist","atrium","attraction","availability","avalanche","awareness","babushka","backbone","backburn","bakeware","bandwidth","bar","barge","baritone","barracks","baseboard","basket","bathhouse","bathrobe","battle","begonia","behest","bell","bench","bend","beret","best-seller","bid","bidet","bin","birdbath","birdcage","birth","blight","blossom","blowgun","bob","bog","bonfire","bonnet","bookcase","bookend","boulevard","bourgeoisie","bowler","bowling","boyfriend","brace","bracelet","bran","breastplate","brief","brochure","brook","brush","bug","bump","bungalow","cafe","cake","calculus","cannon","cantaloupe","cap","cappelletti","captain","caption","carboxyl","cardboard","carnival","case","casement","cash","casket","cassava","castanet","catalyst","cauliflower","cellar","celsius","cemetery","ceramic","ceramics","certification","chainstay","chairperson","challenge","championship","chap","chapel","character","characterization","charlatan","charm","chasuble","cheese","cheetah","chiffonier","chops","chow","cinder","cinema","circumference","citizen","clamp","clavicle","cleaner","climb","co-producer","coal","coast","cod","coil","coin","coliseum","collaboration","collectivization","colon","colonialism","comestible","commercial","commodity","community","comparison","completion","complication","compromise","concentration","configuration","confusion","conservation","conservative","consistency","contractor","contrail","convection","conversation","cook","coordination","cop-out","cope","cork","cornet","corporation","corral","cosset","costume","couch","council","councilman","countess","courtroom","cow","creator","creature","crest","cricket","crocodile","cross-contamination","cruelty","cuckoo","curl","custody","custom","cutlet","cutover","cycle","daddy","dandelion","dash","daughter","dead","decision","deck","declaration","decongestant","decryption","deduction","deed","deer","defendant","density","department","dependency","deployment","depot","derby","descendant","descent","design","designation","desk","detective","devastation","developing","developmental","devil","diagram","digestive","digit","dime","director","disadvantage","disappointment","disclosure","disconnection","discourse","dish","disk","disposer","distinction","diver","diversity","dividend","divine","doing","doorpost","doubter","draft","draw","dream","dredger","dress","drive","drug","duffel","dulcimer","dusk","duster","dwell","e-mail","earth","ecliptic","ectoderm","edge","editor","effector","eggplant","electronics","elevation","elevator","elver","embarrassment","embossing","emergent","encouragement","entry","epic","equal","essence","eternity","ethyl","euphonium","event","exasperation","excess","executor","exhaust","expansion","expense","experience","exploration","extension","extent","exterior","eyebrow","eyeliner","farm","farmer","fat","fax","feather","fedora","fellow","fen","fencing","ferret","festival","fibre","filter","final","finding","finer","finger","fireplace","fisherman","fishery","fit","flame","flat","fledgling","flight","flint","flood","flu","fog","fold","folklore","follower","following","foodstuffs","footrest","forage","forager","forgery","fork","formamide","formation","formula","fort","fowl","fraudster","freckle","freezing","freight","fuel","fun","fund","fundraising","futon","gallery","galoshes","gastropod","gazebo","gerbil","ghost","giant","gift","giggle","glider","gloom","goat","godfather","godparent","going","goodwill","governance","government","gown","gradient","graffiti","grandpa","grandson","granny","grass","gray","gripper","grouper","guacamole","guard","guidance","guide","gym","gymnast","habit","haircut","halt","hamburger","hammock","handful","handle","handover","harp","haversack","hawk","heartache","heartbeat","heating","hello","help","hepatitis","heroine","hexagon","hierarchy","hippodrome","honesty","hoof","hope","horde","hornet","horst","hose","hospitalization","hovel","hovercraft","hubris","humidity","humor","hundred","hunger","hunt","husband","hutch","hydrant","hydrocarbon","hydrolyse","hydrolyze","hyena","hygienic","hyphenation","ice-cream","icebreaker","igloo","ignorance","illusion","impact","import","importance","impostor","in-joke","incandescence","independence","individual","information","injunction","innovation","insolence","inspection","instance","institute","instruction","instructor","integer","intellect","intent","interchange","interior","intervention","interviewer","invite","iridescence","issue","jacket","jazz","jellyfish","jet","jogging","joy","juggernaut","jump","jungle","junior","jury","kettledrum","kick","kielbasa","kinase","king","kiss","kit","knickers","knight","knitting","knuckle","label","labourer","lace","lady","lamp","language","larva","lashes","laughter","lava","lawmaker","lay","leading","league","legend","legging","legislature","lender","license","lid","lieu","lifestyle","lift","linseed","litter","loaf","lobster","longboat","lotion","lounge","louse","lox","loyalty","luck","lyre","maestro","mainstream","maintainer","majority","makeover","making","mallard","management","manner","mantua","marathon","march","marimba","marketplace","marksman","markup","marten","massage","masterpiece","mathematics","meadow","meal","meander","meatloaf","mechanic","median","membership","mentor","merit","metabolite","metal","middle","midwife","milestone","millet","minion","minister","minor","minority","mixture","mobility","molasses","mom","moment","monasticism","monocle","monster","morbidity","morning","mortise","mountain","mouser","mousse","mozzarella","muscat","mythology","napkin","necklace","nectarine","negotiation","nephew","nerve","netsuke","newsletter","newsprint","newsstand","nightlife","noon","nougat","nucleotidase","nudge","numeracy","numeric","nun","obedience","obesity","object","obligation","ocelot","octave","offset","oil","omelet","onset","opera","operating","optimal","orchid","order","ostrich","other","outlaw","outrun","outset","overcoat","overheard","overload","ownership","pacemaker","packaging","paintwork","palate","pants","pantyhose","papa","parade","parsnip","partridge","passport","pasta","patroller","pear","pearl","pecan","pendant","peninsula","pension","peony","pepper","perfection","permafrost","perp","petal","petticoat","pharmacopoeia","phrase","pick","piglet","pigpen","pigsty","pile","pillbox","pillow","pilot","pine","pinstripe","place","plain","planula","plastic","platter","platypus","pleasure","pliers","plugin","plumber","pneumonia","pocket-watch","poetry","polarisation","polyester","pomelo","pop","poppy","popularity","populist","porter","possession","postbox","precedent","premeditation","premier","premise","premium","pressure","presume","priesthood","printer","privilege","procurement","produce","programme","prohibition","promise","pronoun","providence","provider","provision","publication","publicity","pulse","punctuation","pupil","puppet","puritan","quart","quinoa","quit","railway","range","rationale","ravioli","rawhide","reach","reasoning","reboot","receptor","recommendation","reconsideration","recovery","redesign","relative","release","remark","reorganisation","repeat","replacement","reporter","representation","republican","request","requirement","reservation","resolve","resource","responsibility","restaurant","retention","retrospectivity","reward","ribbon","rim","riser","roadway","role","rosemary","roundabout","rubric","ruin","rule","runway","rust","safe","sailor","saloon","sand","sandbar","sanity","sarong","sauerkraut","saw","scaffold","scale","scarification","scenario","schedule","schnitzel","scholarship","scorn","scorpion","scout","scrap","scratch","seafood","seagull","seal","season","secrecy","secret","section","sediment","self-confidence","sermon","sesame","settler","shadowbox","shark","shipper","shore","shoulder","sideboard","siege","sightseeing","signature","silk","simple","singing","skean","skeleton","skyline","skyscraper","slide","slime","slipper","smog","smoke","sock","soliloquy","solution","solvency","someplace","sonar","sonata","sonnet","soup","soybean","space","spear","spirit","spork","sport","spring","sprinkles","squid","stall","starboard","statue","status","stay","steak","steeple","step","step-mother","sticker","stir-fry","stitcher","stock","stool","story","strait","stranger","strategy","straw","stump","subexpression","submitter","subsidy","substitution","suitcase","summary","summer","sunbeam","sundae","supplier","surface","sushi","suspension","sustenance","swanling","swath","sweatshop","swim","swine","swing","switch","switchboard","swordfish","synergy","t-shirt","tabletop","tackle","tail","tapioca","taro","tarragon","taxicab","teammate","technician","technologist","tectonics","tenant","tenement","tennis","tentacle","teriyaki","term","testimonial","testing","thigh","thongs","thorn","thread","thunderbolt","thyme","tinderbox","toaster","tomatillo","tomb","tomography","tool","tooth","toothbrush","toothpick","topsail","traditionalism","traffic","translation","transom","transparency","trash","travel","tray","trench","tribe","tributary","trick","trolley","tuba","tuber","tune-up","turret","tusk","tuxedo","typeface","typewriter","unblinking","underneath","underpants","understanding","unibody","unique","unit","utilization","valentine","validity","valley","valuable","vanadyl","vein","velocity","venom","version","verve","vestment","veto","viability","vibraphone","vibration","vicinity","video","violin","vision","vista","vol","volleyball","wafer","waist","wallaby","warming","wasabi","waterspout","wear","wedding","whack","whale","wheel","widow","wilderness","willow","window","wombat","word","worth","wriggler","yak","yarmulke","yeast","yin","yogurt","zebra","zen"];var Na=["a","abaft","aboard","about","above","absent","across","afore","after","against","along","alongside","amid","amidst","among","amongst","an","anenst","anti","apropos","apud","around","as","aside","astride","at","athwart","atop","barring","before","behind","below","beneath","beside","besides","between","beyond","but","by","circa","concerning","considering","despite","down","during","except","excepting","excluding","failing","following","for","forenenst","from","given","in","including","inside","into","lest","like","mid","midst","minus","modulo","near","next","notwithstanding","of","off","on","onto","opposite","out","outside","over","pace","past","per","plus","pro","qua","regarding","round","sans","save","since","than","the","through","throughout","till","times","to","toward","towards","under","underneath","unlike","until","unto","up","upon","versus","via","vice","with","within","without","worth"];var Ea=["abnegate","abscond","abseil","absolve","accentuate","accept","access","accessorise","accompany","account","accredit","achieve","acknowledge","acquire","adjourn","adjudge","admonish","adumbrate","advocate","afford","airbrush","ameliorate","amend","amount","anaesthetise","analyse","anesthetize","anneal","annex","antagonize","ape","apologise","apostrophize","appertain","appreciate","appropriate","approximate","arbitrate","archive","arraign","arrange","ascertain","ascribe","assail","atomize","attend","attest","attribute","augment","avow","axe","baa","banish","bank","baptise","battle","beard","beep","behold","belabor","bemuse","besmirch","bestride","better","bewail","bicycle","bide","bind","biodegrade","blacken","blaspheme","bleach","blend","blink","bliss","bloom","bludgeon","bobble","boggle","bolster","book","boom","bootleg","border","bore","boss","braid","brand","brandish","break","breed","broadcast","broadside","brood","browse","buck","burgeon","bus","butter","buzzing","camouflage","cannibalise","canter","cap","capitalise","capitalize","capsize","card","carouse","carp","carpool","catalog","catalyze","catch","categorise","cease","celebrate","censor","certify","char","charter","chase","chatter","chime","chip","christen","chromakey","chunder","chunter","cinch","circle","circulate","circumnavigate","clamor","clamour","claw","cleave","clinch","clinking","clone","clonk","coagulate","coexist","coincide","collaborate","colligate","colorize","colour","comb","come","commandeer","commemorate","communicate","compete","conceal","conceptualize","conclude","concrete","condense","cone","confide","confirm","confiscate","confound","confute","congregate","conjecture","connect","consign","construe","contradict","contrast","contravene","controvert","convalesce","converse","convince","convoke","coop","cop","corner","covenant","cow","crackle","cram","crank","creak","creaking","cripple","croon","cross","crumble","crystallize","culminate","culture","curry","curse","customise","cycle","dally","dampen","darn","debit","debut","decide","decode","decouple","decriminalize","deduce","deduct","deflate","deflect","deform","defrag","degenerate","degrease","delete","delight","deliquesce","demob","demobilise","democratize","demonstrate","denitrify","deny","depart","depend","deplore","deploy","deprave","depute","dereference","describe","desecrate","deselect","destock","detain","develop","devise","dial","dicker","digitize","dilate","disapprove","disarm","disbar","discontinue","disgorge","dishearten","dishonor","disinherit","dislocate","dispense","display","dispose","disrespect","dissemble","ditch","divert","dock","doodle","downchange","downshift","dowse","draft","drag","drain","dramatize","drowse","drum","dwell","economise","edge","efface","egg","eke","electrify","embalm","embed","embody","emboss","emerge","emphasise","emphasize","emulsify","encode","endow","enfold","engage","engender","enhance","enlist","enrage","enrich","enroll","entice","entomb","entrench","entwine","equate","essay","etch","eulogise","even","evince","exacerbate","exaggerate","exalt","exempt","exonerate","expatiate","explode","expostulate","extract","extricate","eyeglasses","fabricate","facilitate","factorise","factorize","fail","fall","familiarize","fashion","father","fathom","fax","federate","feminize","fence","fess","fictionalize","fiddle","fidget","fill","flash","fleck","flight","floodlight","floss","fluctuate","fluff","fly","focalise","foot","forearm","forecast","foretell","forgather","forgo","fork","form","forswear","founder","fraternise","fray","frizz","fumigate","function","furlough","fuss","gad","gallivant","galvanize","gape","garage","garrote","gasp","gestate","give","glimmer","glisten","gloat","gloss","glow","gnash","gnaw","goose","govern","grade","graduate","graft","grok","guest","guilt","gulp","gum","gurn","gust","gut","guzzle","ham","harangue","harvest","hassle","haul","haze","headline","hearten","heighten","highlight","hoick","hold","hole","hollow","holster","home","homeschool","hoot","horn","horse","hotfoot","house","hover","howl","huddle","huff","hunger","hunt","husk","hype","hypothesise","hypothesize","idle","ignite","imagineer","impact","impanel","implode","incinerate","incline","inculcate","industrialize","ingratiate","inhibit","inject","innovate","inscribe","insert","insist","inspect","institute","institutionalize","intend","intermarry","intermesh","intermix","internalise","internalize","internationalize","intrigue","inure","inveigle","inventory","investigate","irk","iterate","jaywalk","jell","jeopardise","jiggle","jive","joint","jot","jut","keel","knife","knit","know","kowtow","lack","lampoon","large","leap","lecture","legitimize","lend","libel","liberalize","license","ligate","list","lobotomise","lock","log","loose","low","lowball","machine","magnetize","major","make","malfunction","manage","manipulate","maroon","masculinize","mash","mask","masquerade","massage","masticate","materialise","matter","maul","memorise","merge","mesh","metabolise","microblog","microchip","micromanage","militate","mill","minister","minor","misappropriate","miscalculate","misfire","misjudge","miskey","mismatch","mispronounce","misread","misreport","misspend","mob","mobilise","mobilize","moisten","mooch","moor","moralise","mortar","mosh","mothball","motivate","motor","mould","mount","muddy","mummify","mutate","mystify","nab","narrate","narrowcast","nasalise","nauseate","navigate","neaten","neck","neglect","norm","notarize","object","obscure","observe","obsess","obstruct","obtrude","offend","offset","option","orchestrate","orient","orientate","outbid","outdo","outfit","outflank","outfox","outnumber","outrank","outrun","outsource","overburden","overcharge","overcook","overdub","overfeed","overload","overplay","overproduce","overreact","override","overspend","overstay","overtrain","overvalue","overwork","own","oxidise","oxidize","oxygenate","pace","pack","pale","pant","paralyse","parody","part","pause","pave","penalise","persecute","personalise","perspire","pertain","peter","pike","pillory","pinion","pip","pity","pivot","pixellate","plagiarise","plait","plan","please","pluck","ponder","popularize","portray","prance","preclude","preheat","prejudge","preregister","presell","preside","pretend","print","prioritize","probate","probe","proceed","procrastinate","profane","progress","proliferate","proofread","propound","proselytise","provision","pry","publicize","puff","pull","pulp","pulverize","purse","put","putrefy","quadruple","quaff","quantify","quarrel","quash","quaver","question","quiet","quintuple","quip","quit","rag","rally","ramp","randomize","rationalise","rationalize","ravage","ravel","react","readies","readjust","readmit","ready","reapply","rear","reassemble","rebel","reboot","reborn","rebound","rebuff","rebuild","rebuke","recede","reckon","reclassify","recompense","reconstitute","record","recount","redact","redevelop","redound","redraw","redress","reel","refer","reference","refine","reflate","refute","regulate","reiterate","rejigger","rejoin","rekindle","relaunch","relieve","remand","remark","reopen","reorient","replicate","repossess","represent","reprimand","reproach","reprove","repurpose","requite","reschedule","resort","respray","restructure","retool","retract","revere","revitalise","revoke","reword","rewrite","ride","ridge","rim","ring","rise","rival","roger","rosin","rot","rout","row","rue","rule","safeguard","sashay","sate","satirise","satirize","satisfy","saturate","savour","scale","scamper","scar","scare","scarper","scent","schematise","scheme","schlep","scoff","scoop","scope","scotch","scowl","scrabble","scram","scramble","scrape","screw","scruple","scrutinise","scuffle","scuttle","search","secularize","see","segregate","sell","sense","sensitize","sequester","serenade","serialize","serve","service","settle","sew","shaft","sham","shampoo","shanghai","shear","sheathe","shell","shinny","shirk","shoot","shoulder","shout","shovel","showboat","shred","shrill","shudder","shush","sidetrack","sign","silt","sin","singe","sit","sizzle","skateboard","ski","slake","slap","slather","sleet","slink","slip","slope","slump","smarten","smuggle","snack","sneak","sniff","snoop","snow","snowplow","snuggle","soap","solace","solder","solicit","source","spark","spattering","spectacles","spectate","spellcheck","spew","spice","spirit","splash","splay","split","splosh","splurge","spook","square","squirm","stabilise","stable","stack","stage","stake","starch","state","statement","stiffen","stigmatize","sting","stint","stoop","store","storyboard","stratify","structure","stuff","stunt","substantiate","subtract","suckle","suffice","suffocate","summarise","sun","sunbathe","sunder","sup","surge","surprise","swat","swathe","sway","swear","swelter","swerve","swill","swing","symbolise","synthesise","syringe","table","tabulate","tag","tame","tank","tankful","tarry","task","taxicab","team","telescope","tenant","terraform","terrorise","testify","think","throbbing","thump","tighten","toady","toe","tough","tousle","traduce","train","transcend","transplant","trash","treasure","treble","trek","trial","tromp","trouser","trust","tune","tut","twine","twist","typify","unbalance","uncork","uncover","underachieve","undergo","underplay","unearth","unfreeze","unfurl","unlearn","unscramble","unzip","uproot","upsell","usher","vacation","vamoose","vanish","vary","veg","venture","verify","vet","veto","volunteer","vulgarise","waft","wallop","waltz","warp","wash","waver","weary","weatherize","wedge","weep","weight","welcome","westernise","westernize","while","whine","whisper","whistle","whitewash","whup","wilt","wing","wire","wisecrack","wolf","wound","wring","writ","yak","yawn","yearn","yuppify"];var so={adjective:Ra,adverb:Ha,conjunction:Pa,interjection:Wa,noun:Ga,preposition:Na,verb:Ea},Fa=so;var uo={airline:r,animal:k,app:A,cell_phone:w$1,color:T,commerce:H$1,company:K$1,database:x$1,date:Y$1,finance:oe$1,food:he$1,hacker:ke$1,internet:Ae$1,location:Ke$1,lorem:xe$1,metadata:ze$1,music:Ue$1,person:ma,phone_number:ba,science:Ca,team:Aa,vehicle:Da,word:Fa},Gl=uo; @@ -20908,6 +20910,16 @@ ${" ".repeat(t.length-i.length)}^`),o))]}function ht(i){let e=i.indexOf(")",1);i head_image_surface_area = 60; chart_head_bg = '#ffffff'; auto_set_chart_head_bg = false; + dropshadow = { + x: "-50%", + y: "-50%", + width: "200%", + height: "200%", + dx: 1, + dy: 1, + stdDeviation: 4, + floodColor: "rgba(91, 91, 91, 0.19)", + }; emitEvent = () => false; tree_link_types = { curveBumpX: bumpX, @@ -20954,7 +20966,7 @@ ${" ".repeat(t.length-i.length)}^`),o))]}function ht(i){let e=i.indexOf(")",1);i return fillSymbols.includes(trim_name) ? 'fill' : strokeSymbols.includes(trim_name) ? 'stroke' : 'fill'; } get_page_body_bg() { - const page_style = document.body.style.getPropertyValue('background-color'); + const page_style = select('body').node().style.getPropertyValue('background-color'); return page_style == '' ? '#ffffff' : page_style; } get_chart_head_bg() { @@ -20995,7 +21007,7 @@ ${" ".repeat(t.length-i.length)}^`),o))]}function ht(i){let e=i.indexOf(")",1);i e.stopPropagation(); const curr_target = e.currentTarget; const rect = curr_target.getBoundingClientRect(); - this.center_elem(rect); + this.center_elem(rect, 'center'); } defaultHead(head_data, doubleVerticalPoints = false, pointPosition = { parent: "bottom", children: "top" }) { const has_children = this.tree_data.filter(data => data.parentId === head_data.id).length > 0; @@ -21007,17 +21019,11 @@ ${" ".repeat(t.length-i.length)}^`),o))]}function ht(i){let e=i.indexOf(")",1);i .attr("class", "main-svg-el" + (this.getIsElRootTreeChild(head_data.id) ? ' root-svg-el' : '')) .attr('width', this.chartHeadWidth) .attr('height', this.chartHeadHeight) - .attr('style', 'background-color: ' + chart_head_bg) + .attr('min-height', '0') + .attr('overflow', 'auto') .on('dblclick', (e) => this.handleCenterHead(e)); - // Gaussian blur - create$1('defs') - .append('filter') - .attr('id', 'blur1') - .attr('x', 0) - .attr('y', 0) - .append('feGaussianBlur') - .attr('in', 'SourceGraphic') - .attr('stdDeviation', '3'); + // Dropshadow blur + this.add_drop_shadow(svgNode); const all_group = svgNode.append('g'); const rect = all_group?.append('rect') .attr('rx', 16) @@ -21025,8 +21031,9 @@ ${" ".repeat(t.length-i.length)}^`),o))]}function ht(i){let e=i.indexOf(")",1);i .attr('width', this.chartHeadWidth) .attr('height', this.chartHeadHeight) .attr('stroke', this.show_chart_head_border ? color_set.color : 'none') - .attr('fill', 'none') - .attr('stroke-width', 0); + .attr('fill', chart_head_bg) + .attr('stroke-width', 0) + .attr('filter', 'url(#shadow)'); const rect_half_width = parseInt(rect.attr('width')) / 2; const firstSection = all_group?.append('g') .attr('y', 100); @@ -21091,7 +21098,7 @@ ${" ".repeat(t.length-i.length)}^`),o))]}function ht(i){let e=i.indexOf(")",1);i titles.forEach((title, index) => { positionTitle?.append('tspan') .attr('x', parseInt(rect.attr('width')) / 2) - .attr('dy', index > 0 ? '.6rem' : 0) + .attr('dy', index > 0 ? 10 : 0) .text(title.toString()) .attr('fill', color_set.dark100); index > 0 && (move_down += 10); @@ -21107,7 +21114,7 @@ ${" ".repeat(t.length-i.length)}^`),o))]}function ht(i){let e=i.indexOf(")",1);i location_title.forEach((title, index) => { employeeLocation?.append('tspan') .attr('x', parseInt(rect.attr('width')) / 2) - .attr('dy', index > 0 ? '.6rem' : 0) + .attr('dy', index > 0 ? 10 : 0) .text(title.toString()); index > 0 && (move_down += 10); }); @@ -21124,6 +21131,7 @@ ${" ".repeat(t.length-i.length)}^`),o))]}function ht(i){let e=i.indexOf(")",1);i const has_parent = this.tree_data.filter(data => data.id === head_data.parentId).length > 0; const color_set = this.color_handler.getColor(head_data.id); let move_down = 0; + const chart_head_bg = this.get_chart_head_bg(); const svgNode = create$1('svg') .attr("class", "main-svg-el" + (this.getIsElRootTreeChild(head_data.id) ? ' root-svg-el' : '')) .attr('width', this.chartHeadLandscapeWidth) @@ -21131,19 +21139,66 @@ ${" ".repeat(t.length-i.length)}^`),o))]}function ht(i){let e=i.indexOf(")",1);i .attr('style', 'background-color: ' + this.chart_head_bg) .on('dblclick', (e) => this.handleCenterHead(e)); const all_group = svgNode.append('g'); + this.add_drop_shadow(svgNode); const rect = all_group?.append('rect') .attr('rx', 16) .attr('ry', 16) .attr('width', this.chartHeadLandscapeWidth) .attr('height', this.chartHeadLandscapeHeight) .attr('stroke', this.show_chart_head_border ? color_set.color : 'none') - .attr('fill', 'none') + .attr('fill', chart_head_bg) + .attr('filter', 'url(#shadow)') .attr('stroke-width', 0); const rect_half_height = parseInt(rect.attr('height')) / 2; const employee_name_split = this.format_employee_name(head_data.name, 18); const rightGroup = all_group.append('g') .attr('x', 0) .attr('y', 0); + const leftStartOrigin = parseInt(rect.attr('height')) + 20; + const employeeName = rightGroup?.append('text') + .attr('x', leftStartOrigin) + .attr('y', 30) + .attr('font-size', '95%') + .attr('fill', color_set.darker); + employee_name_split.forEach((title, index) => { + employeeName?.append('tspan') + .attr('x', leftStartOrigin) + .attr('y', 30) + .attr('dy', index > 0 ? move_down + 14 + index : 0) + .attr('font-size', '95%') + .attr('style', "z-index: +9") + .text(title.toString()); + index > 0 && (move_down += 14); + }); + const positionTitle = rightGroup?.append('text') + .attr('x', leftStartOrigin) + .attr('y', 54 + move_down) + .attr('font-size', '65%'); + const titles = this.splitStringIntoBatch(head_data.role, 30); // role + titles.forEach((title, index) => { + positionTitle?.append('tspan') + .attr('x', leftStartOrigin) + .attr('dy', index > 0 ? 10 : 0) + .attr('y', 54 + move_down) + .text(title.toString()) + .attr('fill', color_set.dark100); + index > 0 && (move_down += 10); + }); + if (head_data.location !== undefined) { + const employeeLocation = rightGroup?.append('text') + .attr('x', leftStartOrigin) + .attr('y', 69 + move_down) + .attr('font-size', '65%') + .attr('fill', color_set.dark100); + const location_title = this.splitStringIntoBatch(head_data.location, 30); // role + location_title.forEach((title, index) => { + employeeLocation?.append('tspan') + .attr('x', leftStartOrigin) + .attr('dy', index > 0 ? 10 : 0) + .text(title.toString()); + index > 0 && (move_down += 10); + }); + } const leftGroup = all_group.append('g'); const locked_height = this.chartHeadLandscapeHeight + move_down; rect.attr('height', locked_height); @@ -21152,19 +21207,19 @@ ${" ".repeat(t.length-i.length)}^`),o))]}function ht(i){let e=i.indexOf(")",1);i const chartHeadLandscapeHeight = this.head_image_surface_area > rect_half_height ? Math.abs(this.head_image_surface_area - rect_half_height) : 0; rect.attr('height', locked_height + chartHeadLandscapeHeight); svgNode.attr('height', locked_height + chartHeadLandscapeHeight); - svgNode.attr('width', this.chartHeadLandscapeWidth + chartHeadLandscapeHeight); - rect.attr('width', this.chartHeadLandscapeWidth + chartHeadLandscapeHeight); + svgNode.attr('width', this.chartHeadLandscapeWidth + 20 + chartHeadLandscapeHeight); + rect.attr('width', this.chartHeadLandscapeWidth + 20 + chartHeadLandscapeHeight); leftGroup?.append('path') .attr('d', Symbol$1().type(d3[this.head_image_shape]).size(Math.pow(this.head_image_surface_area - this.get_image_shape_spacing(this.head_image_shape), 2))) .attr('stroke', this.symbol_type(this.head_image_shape) == 'stroke' ? color_set.color : 'none') .attr('stroke-width', this.symbol_type(this.head_image_shape) == 'stroke' ? 1 : 0) .attr('fill', this.symbol_type(this.head_image_shape) == 'stroke' ? 'transparent' : color_set.color) - .attr('transform', `translate(${parseInt(rect.attr('height')) / 2}, 50)`); + .attr('transform', `translate(50, ${parseInt(rect.attr('height')) / 2})`); leftGroup?.append('text') .attr('class', '') .attr('text-anchor', 'middle') .attr('fill', this.symbol_type(this.head_image_shape) == 'stroke' ? color_set.color : color_set.bright500) - .attr('x', parseInt(rect.attr('height')) / 2) + .attr('x', 50) .attr('y', (parseInt(rect.attr('height')) / 2) + 6) .attr('font-size', '95%') .text(this.get_user_initials(head_data.name)); // employee initials @@ -21184,62 +21239,17 @@ ${" ".repeat(t.length-i.length)}^`),o))]}function ht(i){let e=i.indexOf(")",1);i .attr('id', "landscape-clip-" + head_data.id) .append('path') .attr('d', Symbol$1().type(d3[this.head_image_shape]).size(Math.pow(this.head_image_surface_area - this.get_image_shape_spacing(this.head_image_shape), 2))) - .attr('transform', `translate(${(parseInt(rect.attr('height')) / 2)}, ${this.head_image_surface_area + (extra_y_dist + 20)})`) + .attr('transform', `translate(50, ${parseInt(rect.attr('height')) / 2})`) .attr('fill', color_set.bright500); leftGroup?.append('image') .attr('href', head_data.image) .attr('preserveAspectRatio', 'xMaxYMax slice') .attr('width', this.head_image_surface_area) .attr('height', this.head_image_surface_area) - .attr('x', (parseInt(rect.attr('height')) / 2) - (this.head_image_surface_area / 2)) - .attr('y', (this.head_image_surface_area / 2) + (extra_y_dist + 20)) + .attr('x', 50 - (this.head_image_surface_area / 2)) + .attr('y', parseInt(rect.attr('height')) / 2 - (this.head_image_surface_area / 2)) .attr('clip-path', `url(#landscape-clip-${head_data.id})`); } - const leftStartOrigin = parseInt(rect.attr('height')); - const employeeName = rightGroup?.append('text') - .attr('x', leftStartOrigin) - .attr('y', 30) - .attr('font-size', '95%') - .attr('fill', color_set.darker); - employee_name_split.forEach((title, index) => { - employeeName?.append('tspan') - .attr('x', leftStartOrigin) - .attr('y', 30) - .attr('dy', index > 0 ? '.7rem' : 0) - .attr('font-size', '95%') - .attr('style', "z-index: +9") - .text(title.toString()); - index > 0 && (move_down += 10); - }); - const positionTitle = rightGroup?.append('text') - .attr('x', leftStartOrigin) - .attr('y', 50 + move_down) - .attr('font-size', '65%'); - const titles = this.splitStringIntoBatch(head_data.role, 30); // role - titles.forEach((title, index) => { - positionTitle?.append('tspan') - .attr('x', leftStartOrigin) - .attr('dy', index > 0 ? '.6rem' : 0) - .attr('y', 50 + move_down) - .text(title.toString()) - .attr('fill', color_set.dark100); - index > 0 && (move_down += 10); - }); - if (head_data.location !== undefined) { - const employeeLocation = rightGroup?.append('text') - .attr('x', leftStartOrigin) - .attr('y', 65 + move_down) - .attr('font-size', '65%') - .attr('fill', color_set.dark100); - const location_title = this.splitStringIntoBatch(head_data.location, 30); // role - location_title.forEach((title, index) => { - employeeLocation?.append('tspan') - .attr('x', leftStartOrigin) - .attr('dy', index > 0 ? '.6rem' : 0) - .text(title.toString()); - index > 0 && (move_down += 10); - }); - } this.add_linker(all_group, has_parent, has_children, pointPosition, color_set, rect, svgNode, head_data, doubleVerticalPoints); this.emitEvent('chart_head.create', { headNode: svgNode.node() }); return svgNode; @@ -21318,7 +21328,7 @@ ${" ".repeat(t.length-i.length)}^`),o))]}function ht(i){let e=i.indexOf(")",1);i .attr('text-anchor', 'middle') .attr('x', parseInt(rect.attr('width')) / 2) .attr('y', this.chartHeadRoundedWidth + 18) - .attr('dy', i > 0 ? 50 + move_down : 0 + move_down) + .attr('dy', i > 0 ? 15 + move_down : 0 + move_down) .attr('font-size', '105%') .attr('fill', color_set.darker) .attr('style', `text-transform: ${i > 0 ? 'none' : 'capitalize'}`) @@ -21334,7 +21344,7 @@ ${" ".repeat(t.length-i.length)}^`),o))]}function ht(i){let e=i.indexOf(")",1);i titles.forEach((title, index) => { positionTitle?.append('tspan') .attr('x', parseInt(rect.attr('width')) / 2) - .attr('dy', index > 0 ? '.6rem' : 0) + .attr('dy', index > 0 ? 10 : 0) .text(title.toString()) .attr('fill', color_set.dark100); index > 0 && (move_down += 10); @@ -21350,7 +21360,7 @@ ${" ".repeat(t.length-i.length)}^`),o))]}function ht(i){let e=i.indexOf(")",1);i location_title.forEach((title, index) => { employeeLocation?.append('tspan') .attr('x', parseInt(rect.attr('width')) / 2) - .attr('dy', index > 0 ? '.6rem' : 0) + .attr('dy', index > 0 ? 10 : 0) .text(title.toString()); index > 0 && (move_down += 10); }); @@ -21453,6 +21463,21 @@ ${" ".repeat(t.length-i.length)}^`),o))]}function ht(i){let e=i.indexOf(")",1);i } } } + add_drop_shadow(svgNode) { + // Dropshadow blur + svgNode.append('defs') + .append('filter') + .attr('id', 'shadow') + .attr('x', this.dropshadow.x) + .attr('y', this.dropshadow.y) + .attr('width', this.dropshadow.width) + .attr('height', this.dropshadow.height) + .append('feDropShadow') + .attr('dx', this.dropshadow.dx) + .attr('dy', this.dropshadow.dy) + .attr('stdDeviation', this.dropshadow.stdDeviation) + .attr('flood-color', this.dropshadow.floodColor); + } get_tree_items_hierarchy(parentId, parent_index, action) { const hierarchies = this.tree_data.filter(data => data.parentId == parentId); const set_child_level = parent_index == undefined ? 1 : parent_index + 1; @@ -21600,7 +21625,7 @@ ${" ".repeat(t.length-i.length)}^`),o))]}function ht(i){let e=i.indexOf(")",1);i return colorSet; } get_app_gray() { - return gray(50).toString(); + return gray(this.pallet.gray).toString(); } get_color_percentage(index) { return (index / this.tree_data.length); @@ -22607,7 +22632,7 @@ ${" ".repeat(t.length-i.length)}^`),o))]}function ht(i){let e=i.indexOf(")",1);i if (this.start_animation) { this.animation_interval = setInterval(() => { this.rotate_deg += this.chartHelper?.animation_rotation_interval * (anti ? -1 : 1); - this.root_svg.attr('transform', `rotate(${this.rotate_deg}, 0, 0)`); + this.root_svg.style.transform = `rotate(${this.rotate_deg}deg)`; }, this.chartHelper?.animation_rotation_speed); } else { @@ -22639,7 +22664,7 @@ ${" ".repeat(t.length-i.length)}^`),o))]}function ht(i){let e=i.indexOf(")",1);i .attr("viewBox", [-marginLeft - radius, -marginTop - radius, width, height]) .attr("width", width) .attr("height", height) - .attr("style", "background-color: none; max-width: 100%; height: auto; overflow: visible;"); + .attr("style", "background-color: none; overflow: visible;"); svg.append("g") .attr("fill", "none") .attr("stroke", this.chartHelper?.color_handler.get_app_gray()) @@ -22669,7 +22694,7 @@ ${" ".repeat(t.length-i.length)}^`),o))]}function ht(i){let e=i.indexOf(")",1);i }); mainNode.append("title") .text(d => d.data.name + " - " + d.data.role); - this.root_svg = svg; + this.root_svg = svg.node(); this.head_child_wrapper?.append(svg.node()); } } @@ -22707,34 +22732,34 @@ ${" ".repeat(t.length-i.length)}^`),o))]}function ht(i){let e=i.indexOf(")",1);i const toolWrapperEl = new TSElement(); toolWrapperEl.className = "tools-container"; this.root_ui_element?.appendChild(toolWrapperEl); - const zoomInIcon = document.createElement('div'); + const zoomInIcon = new TSElement(); zoomInIcon.className = "tool-item"; zoomInIcon.innerHTML = icons.zoomIn; zoomInIcon.title = "Zoom in"; zoomInIcon.onclick = (e) => this.zoomInOut(); - const zoomOutIcon = document.createElement('div'); + const zoomOutIcon = new TSElement(); zoomOutIcon.className = "tool-item"; zoomOutIcon.innerHTML = icons.zoomOut; zoomOutIcon.title = "Zoom out"; zoomOutIcon.onclick = (e) => this.zoomInOut('out'); - const zoomResetIcon = document.createElement('div'); + const zoomResetIcon = new TSElement(); zoomResetIcon.className = "tool-item"; zoomResetIcon.innerHTML = icons.resetZoom; zoomResetIcon.title = "Reset zoom & position"; zoomResetIcon.onclick = (e) => this.resetZoom(); - const rotateIcon = document.createElement('div'); + const rotateIcon = new TSElement(); rotateIcon.className = "tool-item"; rotateIcon.innerHTML = icons.rotate; rotateIcon.title = "Start/Stop Clockwise Rotation"; - const rotateAnticlockwiseIcon = document.createElement('div'); + const rotateAnticlockwiseIcon = new TSElement(); rotateAnticlockwiseIcon.className = "tool-item"; rotateAnticlockwiseIcon.innerHTML = icons.rotate_anticlockwise; rotateAnticlockwiseIcon.title = "Start/Stop Anticlockwise Rotation"; - const rotateOnceIcon = document.createElement('div'); + const rotateOnceIcon = new TSElement(); rotateOnceIcon.className = "tool-item"; rotateOnceIcon.innerHTML = icons.rotate_once; rotateOnceIcon.title = "Rotate Clockwise Once"; - const rotateOnceAnticlockwiseIcon = document.createElement('div'); + const rotateOnceAnticlockwiseIcon = new TSElement(); rotateOnceAnticlockwiseIcon.className = "tool-item"; rotateOnceAnticlockwiseIcon.innerHTML = icons.rotate_once_anti_clockwise; rotateOnceAnticlockwiseIcon.title = "Rotate Anticlockwise Once"; @@ -22774,7 +22799,7 @@ ${" ".repeat(t.length-i.length)}^`),o))]}function ht(i){let e=i.indexOf(")",1);i */ options = { targetContainer: '', - width: '900px', + width: '100%', height: '500px', placeEl: 'override', tree_data: undefined, @@ -22818,6 +22843,16 @@ ${" ".repeat(t.length-i.length)}^`),o))]}function ht(i){let e=i.indexOf(")",1);i verticalSpace: '120px', font_link: "https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap", font_name: "Lato", + dropshadow: { + x: "-50%", + y: "-50%", + width: "200%", + height: "200%", + dx: 1, + dy: 1, + stdDeviation: 4, + floodColor: "rgba(91, 91, 91, 0.19)", + } }; constructor(options) { super(); @@ -22843,7 +22878,7 @@ ${" ".repeat(t.length-i.length)}^`),o))]}function ht(i){let e=i.indexOf(")",1);i * Method to programatically initialize TreeSpider */ initialize() { - this.targetRootContainer = document.querySelector(this.options.targetContainer); + this.targetRootContainer = select(this.options.targetContainer).node(); if (this.targetRootContainer === null) throw new Error(this.libraryName + ": target container not found"); this.targetRootContainer.setAttribute('data-tree-spider-initialized', this.instance_unique_id); @@ -22886,9 +22921,9 @@ ${" ".repeat(t.length-i.length)}^`),o))]}function ht(i){let e=i.indexOf(")",1);i .attr("href", this.options.font_link) .attr("rel", "stylesheet"); } - preconnect != undefined && document.head.appendChild(preconnect.node()); - crossorgin_preconnect != undefined && document.head.appendChild(crossorgin_preconnect.node()); - fontLink != undefined && document.head.appendChild(fontLink.node()); + preconnect != undefined && select('head').node().appendChild(preconnect.node()); + crossorgin_preconnect != undefined && select('head').node().appendChild(crossorgin_preconnect.node()); + fontLink != undefined && select('head').node().appendChild(fontLink.node()); } setObjectValue(objectParent, value) { const setObj = objectParent; @@ -22929,6 +22964,7 @@ ${" ".repeat(t.length-i.length)}^`),o))]}function ht(i){let e=i.indexOf(")",1);i this.chartHelper.auto_display_tree_in_step = this.options.auto_display_tree_in_step; this.chartHelper.tree_level_step = this.options.tree_level_step; this.chartHelper.tree_link_type = this.options.tree_link_type; + this.chartHelper.dropshadow = this.options.dropshadow; this.chartHelper.emitEvent = this.emitEvent.bind(this); this.colorHandler = new ColorHandler({ tree_data: this.options.tree_data, @@ -23036,10 +23072,6 @@ ${" ".repeat(t.length-i.length)}^`),o))]}function ht(i){let e=i.indexOf(")",1);i } bindPanning() { const root_cont_rect = this.rootWrapperContainer?.getBoundingClientRect(); - const zoomFilter = (event) => { - event.preventDefault(); - return (!event.ctrlKey || event.type === 'wheel') && !event.button; - }; const root_container_el = select(`[data-ts-unique-id='${this.instance_unique_id}']`); const zoomed = (e) => { const emitedEvent = this.emitEvent('zooming', { e }); @@ -23050,7 +23082,7 @@ ${" ".repeat(t.length-i.length)}^`),o))]}function ht(i){let e=i.indexOf(")",1);i this.currentChartUI.current_scale = e.transform.k; }; this.zoom_instace = zoom() - .filter(zoomFilter) + // .filter(zoomFilter) // filter removed because of issue on mobile browsers .extent([[0, 0], [root_cont_rect.width, root_cont_rect.height]]) .on("zoom", zoomed) .on('end', (e) => { @@ -23058,9 +23090,9 @@ ${" ".repeat(t.length-i.length)}^`),o))]}function ht(i){let e=i.indexOf(")",1);i }); root_container_el.call(this.zoom_instace).on("dblclick.zoom", (e) => null); } - center_elem(rect, position = 'center') { + center_elem(rect, position) { const root_container_el = select(`[data-ts-unique-id='${this.instance_unique_id}']`); - this.tree_default_point_position == '' && (this.tree_default_point_position = position); + (this.tree_default_point_position == '' && position != undefined) && (this.tree_default_point_position = position); const root_cont_rect = root_container_el.node()?.getBoundingClientRect(); const inner_cont_rect = this.tsInnerContainer?.getBoundingClientRect(); const rel_posX = ((rect.left - (inner_cont_rect.left)) / this.currentChartUI.current_scale); @@ -23069,24 +23101,24 @@ ${" ".repeat(t.length-i.length)}^`),o))]}function ht(i){let e=i.indexOf(")",1);i const offsetMoveY = (root_cont_rect.height / 2) - (rect.height / 2) / this.currentChartUI.current_scale; let moveX = 0; let moveY = 0; - if (position == 'center') { + if ((position || this.tree_default_point_position) == 'center') { moveX = rel_posX - offsetMoveX; moveY = rel_posY - offsetMoveY; } - else if (position == 'top') { + else if ((position || this.tree_default_point_position) == 'top') { moveX = rel_posX - offsetMoveX; moveY = rel_posY - 10; } - else if (position == 'bottom') { + else if ((position || this.tree_default_point_position) == 'bottom') { moveX = rel_posX - offsetMoveX; const el_chunk_sizes_y = (root_cont_rect.height / 2) - (rect.height / 2); moveY = (rel_posY - (offsetMoveY + el_chunk_sizes_y)) + 10; } - else if (position == 'left') { + else if ((position || this.tree_default_point_position) == 'left') { moveX = rel_posX - 10; moveY = rel_posY - offsetMoveY; } - else if (position == 'right') { + else if ((position || this.tree_default_point_position) == 'right') { const el_chunk_sizes_x = (root_cont_rect.width / 2) - (rect.width / 2); moveX = (rel_posX - (offsetMoveX + el_chunk_sizes_x)) + 10; moveY = rel_posY - offsetMoveY; @@ -23102,14 +23134,10 @@ ${" ".repeat(t.length-i.length)}^`),o))]}function ht(i){let e=i.indexOf(")",1);i * @param color - The color value to set the chart heads to, you can pass any CSS color values to it */ updateChartHeadBg(color) { - if (this.options.tree_type == 'goldenRod' || this.options.tree_type == 'radialSpiderLeg') { - this.rootWrapperContainer?.querySelectorAll('.main-svg-el').forEach(el => el.querySelector('rect').style.fill = color); - this.addEventListener('chart_head.expanded', () => this.rootWrapperContainer?.querySelectorAll('.main-svg-el').forEach(el => el.querySelector('rect').style.fill = color)); - } - else { - this.rootWrapperContainer?.querySelectorAll('.main-svg-el').forEach(el => el.style.backgroundColor = color); - this.addEventListener('chart_head.expanded', () => this.rootWrapperContainer?.querySelectorAll('.main-svg-el').forEach(el => el.style.backgroundColor = color)); - } + if (this.options.chart_head_type == 'rounded') + return; + this.rootWrapperContainer?.querySelectorAll('.main-svg-el').forEach(el => el.querySelector('rect').style.fill = color); + this.addEventListener('chart_head.expanded', () => this.rootWrapperContainer?.querySelectorAll('.main-svg-el').forEach(el => el.querySelector('rect').style.fill = color)); } /** * The short form for addEventListener @@ -23137,28 +23165,24 @@ ${" ".repeat(t.length-i.length)}^`),o))]}function ht(i){let e=i.indexOf(")",1);i * The method to start rotating the chart clockwisely */ startStopRotateCW() { - // once=false, anti=false this.currentChartUI?.animate_chat(); } /** * The method to start rotating the chart anti-clockwisely */ startStopRotateACW() { - // once=false, anti=false this.currentChartUI?.animate_chat(false, true); } /** * The method to rotate the chart once clockwisely */ rotateOnceCW() { - // once=false, anti=false this.currentChartUI?.animate_chat(true); } /** * The method to rotate the chart once clockwisely */ rotateOnceACW() { - // once=false, anti=false this.currentChartUI?.animate_chat(true, true); } } diff --git a/dist/browser/treeSpider.bundle.min.js b/dist/browser/treeSpider.bundle.min.js index fe81e85..b03f2d2 100644 --- a/dist/browser/treeSpider.bundle.min.js +++ b/dist/browser/treeSpider.bundle.min.js @@ -1 +1 @@ -var TreeSpider=function(){"use strict";var e={flux:'\n \n \n \n \n \n \n\n ',quad:'',blurry:'\n ',chaos:'',spiral:'',flurry:'',whirling:'',replicate:'\n \n \n \n \n \n ',scribble:'',squiggly:'',gyrate:'',leaves:'',reflection:'',spot:'\n \n \n \n '};function t(e,t){return null==e||null==t?NaN:et?1:e>=t?0:NaN}function r(e,t){return null==e||null==t?NaN:te?1:t>=e?0:NaN}function a(e){let a,n,o;function c(e,t,r=0,i=e.length){if(r>>1;n(e[a],t)<0?r=a+1:i=a}while(rt(e(r),a),o=(t,r)=>e(t)-r):(a=e===t||e===r?e:i,n=e,o=e),{left:c,center:function(e,t,r=0,a=e.length){const i=c(e,t,r,a-1);return i>r&&o(e[i-1],t)>-o(e[i],t)?i-1:i},right:function(e,t,r=0,i=e.length){if(r>>1;n(e[a],t)<=0?r=a+1:i=a}while(r{t(e,r,(a<<=2)+0,(i<<=2)+0,n<<=2),t(e,r,a+1,i+1,n),t(e,r,a+2,i+2,n),t(e,r,a+3,i+3,n)}}));function d(e){return function(t,r,a=r){if(!((r=+r)>=0))throw new RangeError("invalid rx");if(!((a=+a)>=0))throw new RangeError("invalid ry");let{data:i,width:n,height:o}=t;if(!((n=Math.floor(n))>=0))throw new RangeError("invalid width");if(!((o=Math.floor(void 0!==o?o:i.length/n))>=0))throw new RangeError("invalid height");if(!n||!o||!r&&!a)return t;const c=r&&e(r),l=a&&e(a),s=i.slice();return c&&l?(p(c,s,i,n,o),p(c,i,s,n,o),p(c,s,i,n,o),y(l,i,s,n,o),y(l,s,i,n,o),y(l,i,s,n,o)):c?(p(c,i,s,n,o),p(c,s,i,n,o),p(c,i,s,n,o)):l&&(y(l,i,s,n,o),y(l,s,i,n,o),y(l,i,s,n,o)),t}}function p(e,t,r,a,i){for(let n=0,o=a*i;n{if(!((n-=o)>=i))return;let c=e*a[i];const l=o*e;for(let e=i,t=i+l;e{if(!((o-=c)>=n))return;let l=t*i[n];const s=c*t,u=s+c;for(let e=n,t=n+s;e=t&&++r;else{let a=-1;for(let i of e)null!=(i=t(i,++a,e))&&(i=+i)>=i&&++r}return r}function g(e){return 0|e.length}function b(e){return!(e>0)}function v(e){return"object"!=typeof e||"length"in e?e:Array.from(e)}function x(e,t){let r,a=0,i=0,n=0;if(void 0===t)for(let t of e)null!=t&&(t=+t)>=t&&(r=t-i,i+=r/++a,n+=r*(t-i));else{let o=-1;for(let c of e)null!=(c=t(c,++o,e))&&(c=+c)>=c&&(r=c-i,i+=r/++a,n+=r*(c-i))}if(a>1)return n/(a-1)}function k(e,t){const r=x(e,t);return r?Math.sqrt(r):r}function w(e,t){let r,a;if(void 0===t)for(const t of e)null!=t&&(void 0===r?t>=t&&(r=a=t):(r>t&&(r=t),a=n&&(r=a=n):(r>n&&(r=n),a0){for(n=e[--i];i>0&&(t=n,r=e[--i],n=t+r,a=r-(n-t),!a););i>0&&(a<0&&e[i-1]<0||a>0&&e[i-1]>0)&&(r=2*a,t=n+r,r==t-n&&(n=t))}return n}}class _ extends Map{constructor(e,t=B){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:t}}),null!=e)for(const[t,r]of e)this.set(t,r)}get(e){return super.get(A(this,e))}has(e){return super.has(A(this,e))}set(e,t){return super.set(M(this,e),t)}delete(e){return super.delete(T(this,e))}}class S extends Set{constructor(e,t=B){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:t}}),null!=e)for(const t of e)this.add(t)}has(e){return super.has(A(this,e))}add(e){return super.add(M(this,e))}delete(e){return super.delete(T(this,e))}}function A({_intern:e,_key:t},r){const a=t(r);return e.has(a)?e.get(a):r}function M({_intern:e,_key:t},r){const a=t(r);return e.has(a)?e.get(a):(e.set(a,r),r)}function T({_intern:e,_key:t},r){const a=t(r);return e.has(a)&&(r=e.get(a),e.delete(a)),r}function B(e){return null!==e&&"object"==typeof e?e.valueOf():e}function L(e){return e}function E(e,...t){return G(e,L,L,t)}function R(e,...t){return G(e,Array.from,L,t)}function H(e,t){for(let r=1,a=t.length;re.pop().map((([t,r])=>[...e,t,r]))));return e}function D(e,t,...r){return G(e,L,t,r)}function P(e,t,...r){return G(e,Array.from,t,r)}function N(e){if(1!==e.length)throw new Error("duplicate key");return e[0]}function G(e,t,r,a){return function e(i,n){if(n>=a.length)return r(i);const o=new _,c=a[n++];let l=-1;for(const e of i){const t=c(e,++l,i),r=o.get(t);r?r.push(e):o.set(t,[e])}for(const[t,r]of o)o.set(t,e(r,n));return t(o)}(e,0)}function I(e,t){return Array.from(t,(t=>e[t]))}function W(e,...t){if("function"!=typeof e[Symbol.iterator])throw new TypeError("values is not iterable");e=Array.from(e);let[r]=t;if(r&&2!==r.length||t.length>1){const a=Uint32Array.from(e,((e,t)=>t));return t.length>1?(t=t.map((t=>e.map(t))),a.sort(((e,r)=>{for(const a of t){const t=z(a[e],a[r]);if(t)return t}}))):(r=e.map(r),a.sort(((e,t)=>z(r[e],r[t])))),I(e,a)}return e.sort(F(r))}function F(e=t){if(e===t)return z;if("function"!=typeof e)throw new TypeError("compare is not a function");return(t,r)=>{const a=e(t,r);return a||0===a?a:(0===e(r,r))-(0===e(t,t))}}function z(e,t){return(null==e||!(e>=e))-(null==t||!(t>=t))||(et?1:0)}var O=Array.prototype.slice;function K(e){return()=>e}const J=Math.sqrt(50),V=Math.sqrt(10),j=Math.sqrt(2);function Y(e,t,r){const a=(t-e)/Math.max(0,r),i=Math.floor(Math.log10(a)),n=a/Math.pow(10,i),o=n>=J?10:n>=V?5:n>=j?2:1;let c,l,s;return i<0?(s=Math.pow(10,-i)/o,c=Math.round(e*s),l=Math.round(t*s),c/st&&--l,s=-s):(s=Math.pow(10,i)*o,c=Math.round(e/s),l=Math.round(t/s),c*st&&--l),l0))return[];if((e=+e)===(t=+t))return[e];const a=t=i))return[];const c=n-i+1,l=new Array(c);if(a)if(o<0)for(let e=0;e0?(e=Math.floor(e/i)*i,t=Math.ceil(t/i)*i):i<0&&(e=Math.ceil(e*i)/i,t=Math.floor(t*i)/i),a=i}}function Q(e){return Math.max(1,Math.ceil(Math.log(m(e))/Math.LN2)+1)}function X(){var e=L,t=w,r=Q;function a(a){Array.isArray(a)||(a=Array.from(a));var i,n,o,l=a.length,s=new Array(l);for(i=0;i=d)if(e>=d&&t===w){const e=U(h,d,r);isFinite(e)&&(e>0?d=(Math.floor(d/e)+1)*e:e<0&&(d=(Math.ceil(d*-e)+1)/-e))}else p.pop()}for(var y=p.length,f=0,m=y;p[f]<=h;)++f;for(;p[m-1]>d;)--m;(f||m0?p[i-1]:h,g.x1=i0)for(i=0;i=t)&&(r=t);else{let a=-1;for(let i of e)null!=(i=t(i,++a,e))&&(r=i)&&(r=i)}return r}function te(e,t){let r,a=-1,i=-1;if(void 0===t)for(const t of e)++i,null!=t&&(r=t)&&(r=t,a=i);else for(let n of e)null!=(n=t(n,++i,e))&&(r=n)&&(r=n,a=i);return a}function re(e,t){let r;if(void 0===t)for(const t of e)null!=t&&(r>t||void 0===r&&t>=t)&&(r=t);else{let a=-1;for(let i of e)null!=(i=t(i,++a,e))&&(r>i||void 0===r&&i>=i)&&(r=i)}return r}function ae(e,t){let r,a=-1,i=-1;if(void 0===t)for(const t of e)++i,null!=t&&(r>t||void 0===r&&t>=t)&&(r=t,a=i);else for(let n of e)null!=(n=t(n,++i,e))&&(r>n||void 0===r&&n>=n)&&(r=n,a=i);return a}function ie(e,t,r=0,a=1/0,i){if(t=Math.floor(t),r=Math.floor(Math.max(0,r)),a=Math.floor(Math.min(e.length-1,a)),!(r<=t&&t<=a))return e;for(i=void 0===i?z:F(i);a>r;){if(a-r>600){const n=a-r+1,o=t-r+1,c=Math.log(n),l=.5*Math.exp(2*c/3),s=.5*Math.sqrt(c*l*(n-l)/n)*(o-n/2<0?-1:1);ie(e,t,Math.max(r,Math.floor(t-o*l/n+s)),Math.min(a,Math.floor(t+(n-o)*l/n+s)),i)}const n=e[t];let o=r,c=a;for(ne(e,r,t),i(e[a],n)>0&&ne(e,r,a);o0;)--c}0===i(e[r],n)?ne(e,r,c):(++c,ne(e,c,a)),c<=t&&(r=c+1),t<=c&&(a=c-1)}return e}function ne(e,t,r){const a=e[t];e[t]=e[r],e[r]=a}function oe(e,r=t){let a,i=!1;if(1===r.length){let n;for(const o of e){const e=r(o);(i?t(e,n)>0:0===t(e,e))&&(a=o,n=e,i=!0)}}else for(const t of e)(i?r(t,a)>0:0===r(t,t))&&(a=t,i=!0);return a}function ce(e,t,r){if(e=Float64Array.from(function*(e,t){if(void 0===t)for(let t of e)null!=t&&(t=+t)>=t&&(yield t);else{let r=-1;for(let a of e)null!=(a=t(a,++r,e))&&(a=+a)>=a&&(yield a)}}(e,r)),(a=e.length)&&!isNaN(t=+t)){if(t<=0||a<2)return re(e);if(t>=1)return ee(e);var a,i=(a-1)*t,n=Math.floor(i),o=ee(ie(e,n).subarray(0,n+1));return o+(re(e.subarray(n+1))-o)*(i-n)}}function le(e,t,r=n){if((a=e.length)&&!isNaN(t=+t)){if(t<=0||a<2)return+r(e[0],0,e);if(t>=1)return+r(e[a-1],a-1,e);var a,i=(a-1)*t,o=Math.floor(i),c=+r(e[o],o,e);return c+(+r(e[o+1],o+1,e)-c)*(i-o)}}function se(e,t,r=n){if(!isNaN(t=+t)){if(a=Float64Array.from(e,((t,a)=>n(r(e[a],a,e)))),t<=0)return ae(a);if(t>=1)return te(a);var a,i=Uint32Array.from(e,((e,t)=>t)),o=a.length-1,c=Math.floor(o*t);return ie(i,c,0,o,((e,t)=>z(a[e],a[t]))),(c=oe(i.subarray(0,c+1),(e=>a[e])))>=0?c:-1}}function ue(e){return Array.from(function*(e){for(const t of e)yield*t}(e))}function he(e,t){return[e,t]}function de(e,t,r){e=+e,t=+t,r=(i=arguments.length)<2?(t=e,e=0,1):i<3?1:+r;for(var a=-1,i=0|Math.max(0,Math.ceil((t-e)/r)),n=new Array(i);++a+e(t)}function Ae(e,t){return t=Math.max(0,e.bandwidth()-2*t)/2,e.round()&&(t=Math.round(t)),r=>+e(r)+t}function Me(){return!this.__axis}function Te(e,t){var r=[],a=null,i=null,n=6,o=6,c=3,l="undefined"!=typeof window&&window.devicePixelRatio>1?0:.5,s=1===e||4===e?-1:1,u=4===e||2===e?"x":"y",h=1===e||3===e?Ce:_e;function d(d){var p=null==a?t.ticks?t.ticks.apply(t,r):t.domain():a,y=null==i?t.tickFormat?t.tickFormat.apply(t,r):ke:i,f=Math.max(n,0)+c,m=t.range(),g=+m[0]+l,b=+m[m.length-1]+l,v=(t.bandwidth?Ae:Se)(t.copy(),l),x=d.selection?d.selection():d,k=x.selectAll(".domain").data([null]),w=x.selectAll(".tick").data(p,t).order(),C=w.exit(),_=w.enter().append("g").attr("class","tick"),S=w.select("line"),A=w.select("text");k=k.merge(k.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),w=w.merge(_),S=S.merge(_.append("line").attr("stroke","currentColor").attr(u+"2",s*n)),A=A.merge(_.append("text").attr("fill","currentColor").attr(u,s*f).attr("dy",1===e?"0em":3===e?"0.71em":"0.32em")),d!==x&&(k=k.transition(d),w=w.transition(d),S=S.transition(d),A=A.transition(d),C=C.transition(d).attr("opacity",we).attr("transform",(function(e){return isFinite(e=v(e))?h(e+l):this.getAttribute("transform")})),_.attr("opacity",we).attr("transform",(function(e){var t=this.parentNode.__axis;return h((t&&isFinite(t=t(e))?t:v(e))+l)}))),C.remove(),k.attr("d",4===e||2===e?o?"M"+s*o+","+g+"H"+l+"V"+b+"H"+s*o:"M"+l+","+g+"V"+b:o?"M"+g+","+s*o+"V"+l+"H"+b+"V"+s*o:"M"+g+","+l+"H"+b),w.attr("opacity",1).attr("transform",(function(e){return h(v(e)+l)})),S.attr(u+"2",s*n),A.attr(u,s*f).text(y),x.filter(Me).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",2===e?"start":4===e?"end":"middle"),x.each((function(){this.__axis=v}))}return d.scale=function(e){return arguments.length?(t=e,d):t},d.ticks=function(){return r=Array.from(arguments),d},d.tickArguments=function(e){return arguments.length?(r=null==e?[]:Array.from(e),d):r.slice()},d.tickValues=function(e){return arguments.length?(a=null==e?null:Array.from(e),d):a&&a.slice()},d.tickFormat=function(e){return arguments.length?(i=e,d):i},d.tickSize=function(e){return arguments.length?(n=o=+e,d):n},d.tickSizeInner=function(e){return arguments.length?(n=+e,d):n},d.tickSizeOuter=function(e){return arguments.length?(o=+e,d):o},d.tickPadding=function(e){return arguments.length?(c=+e,d):c},d.offset=function(e){return arguments.length?(l=+e,d):l},d}var Be={value:()=>{}};function Le(){for(var e,t=0,r=arguments.length,a={};t=0&&(t=e.slice(r+1),e=e.slice(0,r)),e&&!a.hasOwnProperty(e))throw new Error("unknown type: "+e);return{type:e,name:t}}))),o=-1,c=n.length;if(!(arguments.length<2)){if(null!=t&&"function"!=typeof t)throw new Error("invalid callback: "+t);for(;++o0)for(var r,a,i=new Array(r),n=0;n=0&&"xmlns"!==(t=e.slice(0,r))&&(e=e.slice(r+1)),Pe.hasOwnProperty(t)?{space:Pe[t],local:e}:e}function Ge(e){return function(){var t=this.ownerDocument,r=this.namespaceURI;return r===De&&t.documentElement.namespaceURI===De?t.createElement(e):t.createElementNS(r,e)}}function Ie(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function We(e){var t=Ne(e);return(t.local?Ie:Ge)(t)}function Fe(){}function ze(e){return null==e?Fe:function(){return this.querySelector(e)}}function Oe(e){return null==e?[]:Array.isArray(e)?e:Array.from(e)}function Ke(){return[]}function Je(e){return null==e?Ke:function(){return this.querySelectorAll(e)}}function Ve(e){return function(){return this.matches(e)}}function je(e){return function(t){return t.matches(e)}}var Ye=Array.prototype.find;function $e(){return this.firstElementChild}var Ue=Array.prototype.filter;function qe(){return Array.from(this.children)}function Ze(e){return new Array(e.length)}function Qe(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}function Xe(e,t,r,a,i,n){for(var o,c=0,l=t.length,s=n.length;ct?1:e>=t?0:NaN}function it(e){return function(){this.removeAttribute(e)}}function nt(e){return function(){this.removeAttributeNS(e.space,e.local)}}function ot(e,t){return function(){this.setAttribute(e,t)}}function ct(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}function lt(e,t){return function(){var r=t.apply(this,arguments);null==r?this.removeAttribute(e):this.setAttribute(e,r)}}function st(e,t){return function(){var r=t.apply(this,arguments);null==r?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,r)}}function ut(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function ht(e){return function(){this.style.removeProperty(e)}}function dt(e,t,r){return function(){this.style.setProperty(e,t,r)}}function pt(e,t,r){return function(){var a=t.apply(this,arguments);null==a?this.style.removeProperty(e):this.style.setProperty(e,a,r)}}function yt(e,t){return e.style.getPropertyValue(t)||ut(e).getComputedStyle(e,null).getPropertyValue(t)}function ft(e){return function(){delete this[e]}}function mt(e,t){return function(){this[e]=t}}function gt(e,t){return function(){var r=t.apply(this,arguments);null==r?delete this[e]:this[e]=r}}function bt(e){return e.trim().split(/^|\s+/)}function vt(e){return e.classList||new xt(e)}function xt(e){this._node=e,this._names=bt(e.getAttribute("class")||"")}function kt(e,t){for(var r=vt(e),a=-1,i=t.length;++a=0&&(this._names.splice(t,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};var Kt=[null];function Jt(e,t){this._groups=e,this._parents=t}function Vt(){return new Jt([[document.documentElement]],Kt)}function jt(e){return"string"==typeof e?new Jt([[document.querySelector(e)]],[document.documentElement]):new Jt([[e]],Kt)}function Yt(e){return jt(We(e).call(document.documentElement))}Jt.prototype=Vt.prototype={constructor:Jt,select:function(e){"function"!=typeof e&&(e=ze(e));for(var t=this._groups,r=t.length,a=new Array(r),i=0;i=x&&(x=v+1);!(b=m[x])&&++x=0;)(a=i[n])&&(o&&4^a.compareDocumentPosition(o)&&o.parentNode.insertBefore(a,o),o=a);return this},sort:function(e){function t(t,r){return t&&r?e(t.__data__,r.__data__):!t-!r}e||(e=at);for(var r=this._groups,a=r.length,i=new Array(a),n=0;n1?this.each((null==t?ht:"function"==typeof t?pt:dt)(e,t,null==r?"":r)):yt(this.node(),e)},property:function(e,t){return arguments.length>1?this.each((null==t?ft:"function"==typeof t?gt:mt)(e,t)):this.node()[e]},classed:function(e,t){var r=bt(e+"");if(arguments.length<2){for(var a=vt(this.node()),i=-1,n=r.length;++i=0&&(t=e.slice(r+1),e=e.slice(0,r)),{type:e,name:t}}))}(e+""),o=n.length;if(!(arguments.length<2)){for(c=t?Wt:It,a=0;a()=>e;function or(e,{sourceEvent:t,subject:r,target:a,identifier:i,active:n,x:o,y:c,dx:l,dy:s,dispatch:u}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},subject:{value:r,enumerable:!0,configurable:!0},target:{value:a,enumerable:!0,configurable:!0},identifier:{value:i,enumerable:!0,configurable:!0},active:{value:n,enumerable:!0,configurable:!0},x:{value:o,enumerable:!0,configurable:!0},y:{value:c,enumerable:!0,configurable:!0},dx:{value:l,enumerable:!0,configurable:!0},dy:{value:s,enumerable:!0,configurable:!0},_:{value:u}})}function cr(e){return!e.ctrlKey&&!e.button}function lr(){return this.parentNode}function sr(e,t){return null==t?{x:e.x,y:e.y}:t}function ur(){return navigator.maxTouchPoints||"ontouchstart"in this}function hr(e,t,r){e.prototype=t.prototype=r,r.constructor=e}function dr(e,t){var r=Object.create(e.prototype);for(var a in t)r[a]=t[a];return r}function pr(){}or.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};var yr=.7,fr=1/yr,mr="\\s*([+-]?\\d+)\\s*",gr="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",br="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",vr=/^#([0-9a-f]{3,8})$/,xr=new RegExp(`^rgb\\(${mr},${mr},${mr}\\)$`),kr=new RegExp(`^rgb\\(${br},${br},${br}\\)$`),wr=new RegExp(`^rgba\\(${mr},${mr},${mr},${gr}\\)$`),Cr=new RegExp(`^rgba\\(${br},${br},${br},${gr}\\)$`),_r=new RegExp(`^hsl\\(${gr},${br},${br}\\)$`),Sr=new RegExp(`^hsla\\(${gr},${br},${br},${gr}\\)$`),Ar={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};function Mr(){return this.rgb().formatHex()}function Tr(){return this.rgb().formatRgb()}function Br(e){var t,r;return e=(e+"").trim().toLowerCase(),(t=vr.exec(e))?(r=t[1].length,t=parseInt(t[1],16),6===r?Lr(t):3===r?new Dr(t>>8&15|t>>4&240,t>>4&15|240&t,(15&t)<<4|15&t,1):8===r?Er(t>>24&255,t>>16&255,t>>8&255,(255&t)/255):4===r?Er(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|240&t,((15&t)<<4|15&t)/255):null):(t=xr.exec(e))?new Dr(t[1],t[2],t[3],1):(t=kr.exec(e))?new Dr(255*t[1]/100,255*t[2]/100,255*t[3]/100,1):(t=wr.exec(e))?Er(t[1],t[2],t[3],t[4]):(t=Cr.exec(e))?Er(255*t[1]/100,255*t[2]/100,255*t[3]/100,t[4]):(t=_r.exec(e))?Fr(t[1],t[2]/100,t[3]/100,1):(t=Sr.exec(e))?Fr(t[1],t[2]/100,t[3]/100,t[4]):Ar.hasOwnProperty(e)?Lr(Ar[e]):"transparent"===e?new Dr(NaN,NaN,NaN,0):null}function Lr(e){return new Dr(e>>16&255,e>>8&255,255&e,1)}function Er(e,t,r,a){return a<=0&&(e=t=r=NaN),new Dr(e,t,r,a)}function Rr(e){return e instanceof pr||(e=Br(e)),e?new Dr((e=e.rgb()).r,e.g,e.b,e.opacity):new Dr}function Hr(e,t,r,a){return 1===arguments.length?Rr(e):new Dr(e,t,r,null==a?1:a)}function Dr(e,t,r,a){this.r=+e,this.g=+t,this.b=+r,this.opacity=+a}function Pr(){return`#${Wr(this.r)}${Wr(this.g)}${Wr(this.b)}`}function Nr(){const e=Gr(this.opacity);return`${1===e?"rgb(":"rgba("}${Ir(this.r)}, ${Ir(this.g)}, ${Ir(this.b)}${1===e?")":`, ${e})`}`}function Gr(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Ir(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Wr(e){return((e=Ir(e))<16?"0":"")+e.toString(16)}function Fr(e,t,r,a){return a<=0?e=t=r=NaN:r<=0||r>=1?e=t=NaN:t<=0&&(e=NaN),new Kr(e,t,r,a)}function zr(e){if(e instanceof Kr)return new Kr(e.h,e.s,e.l,e.opacity);if(e instanceof pr||(e=Br(e)),!e)return new Kr;if(e instanceof Kr)return e;var t=(e=e.rgb()).r/255,r=e.g/255,a=e.b/255,i=Math.min(t,r,a),n=Math.max(t,r,a),o=NaN,c=n-i,l=(n+i)/2;return c?(o=t===n?(r-a)/c+6*(r0&&l<1?0:o,new Kr(o,c,l,e.opacity)}function Or(e,t,r,a){return 1===arguments.length?zr(e):new Kr(e,t,r,null==a?1:a)}function Kr(e,t,r,a){this.h=+e,this.s=+t,this.l=+r,this.opacity=+a}function Jr(e){return(e=(e||0)%360)<0?e+360:e}function Vr(e){return Math.max(0,Math.min(1,e||0))}function jr(e,t,r){return 255*(e<60?t+(r-t)*e/60:e<180?r:e<240?t+(r-t)*(240-e)/60:t)}hr(pr,Br,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:Mr,formatHex:Mr,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return zr(this).formatHsl()},formatRgb:Tr,toString:Tr}),hr(Dr,Hr,dr(pr,{brighter(e){return e=null==e?fr:Math.pow(fr,e),new Dr(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=null==e?yr:Math.pow(yr,e),new Dr(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new Dr(Ir(this.r),Ir(this.g),Ir(this.b),Gr(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:Pr,formatHex:Pr,formatHex8:function(){return`#${Wr(this.r)}${Wr(this.g)}${Wr(this.b)}${Wr(255*(isNaN(this.opacity)?1:this.opacity))}`},formatRgb:Nr,toString:Nr})),hr(Kr,Or,dr(pr,{brighter(e){return e=null==e?fr:Math.pow(fr,e),new Kr(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=null==e?yr:Math.pow(yr,e),new Kr(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+360*(this.h<0),t=isNaN(e)||isNaN(this.s)?0:this.s,r=this.l,a=r+(r<.5?r:1-r)*t,i=2*r-a;return new Dr(jr(e>=240?e-240:e+120,i,a),jr(e,i,a),jr(e<120?e+240:e-120,i,a),this.opacity)},clamp(){return new Kr(Jr(this.h),Vr(this.s),Vr(this.l),Gr(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=Gr(this.opacity);return`${1===e?"hsl(":"hsla("}${Jr(this.h)}, ${100*Vr(this.s)}%, ${100*Vr(this.l)}%${1===e?")":`, ${e})`}`}}));const Yr=Math.PI/180,$r=180/Math.PI,Ur=.96422,qr=.82521,Zr=4/29,Qr=6/29,Xr=3*Qr*Qr,ea=Qr*Qr*Qr;function ta(e){if(e instanceof ia)return new ia(e.l,e.a,e.b,e.opacity);if(e instanceof ha)return da(e);e instanceof Dr||(e=Rr(e));var t,r,a=la(e.r),i=la(e.g),n=la(e.b),o=na((.2225045*a+.7168786*i+.0606169*n)/1);return a===i&&i===n?t=r=o:(t=na((.4360747*a+.3850649*i+.1430804*n)/Ur),r=na((.0139322*a+.0971045*i+.7141733*n)/qr)),new ia(116*o-16,500*(t-o),200*(o-r),e.opacity)}function ra(e,t){return new ia(e,0,0,null==t?1:t)}function aa(e,t,r,a){return 1===arguments.length?ta(e):new ia(e,t,r,null==a?1:a)}function ia(e,t,r,a){this.l=+e,this.a=+t,this.b=+r,this.opacity=+a}function na(e){return e>ea?Math.pow(e,1/3):e/Xr+Zr}function oa(e){return e>Qr?e*e*e:Xr*(e-Zr)}function ca(e){return 255*(e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055)}function la(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function sa(e){if(e instanceof ha)return new ha(e.h,e.c,e.l,e.opacity);if(e instanceof ia||(e=ta(e)),0===e.a&&0===e.b)return new ha(NaN,0=1?(r=1,t-1):Math.floor(r*t),i=e[a],n=e[a+1],o=a>0?e[a-1]:2*i-n,c=a()=>e;function Ma(e,t){return function(r){return e+r*t}}function Ta(e,t){var r=t-e;return r?Ma(e,r>180||r<-180?r-360*Math.round(r/360):r):Aa(isNaN(e)?t:e)}function Ba(e){return 1==(e=+e)?La:function(t,r){return r-t?function(e,t,r){return e=Math.pow(e,r),t=Math.pow(t,r)-e,r=1/r,function(a){return Math.pow(e+a*t,r)}}(t,r,e):Aa(isNaN(t)?r:t)}}function La(e,t){var r=t-e;return r?Ma(e,r):Aa(isNaN(e)?t:e)}var Ea=function e(t){var r=Ba(t);function a(e,t){var a=r((e=Hr(e)).r,(t=Hr(t)).r),i=r(e.g,t.g),n=r(e.b,t.b),o=La(e.opacity,t.opacity);return function(t){return e.r=a(t),e.g=i(t),e.b=n(t),e.opacity=o(t),e+""}}return a.gamma=e,a}(1);function Ra(e){return function(t){var r,a,i=t.length,n=new Array(i),o=new Array(i),c=new Array(i);for(r=0;rn&&(i=t.slice(n,i),c[o]?c[o]+=i:c[++o]=i),(r=r[0])===(a=a[0])?c[o]?c[o]+=a:c[++o]=a:(c[++o]=null,l.push({i:o,x:Wa(r,a)})),n=Oa.lastIndex;return n180?t+=360:t-e>180&&(e+=360),n.push({i:r.push(i(r)+"rotate(",null,a)-2,x:Wa(e,t)})):t&&r.push(i(r)+"rotate("+t+a)}(n.rotate,o.rotate,c,l),function(e,t,r,n){e!==t?n.push({i:r.push(i(r)+"skewX(",null,a)-2,x:Wa(e,t)}):t&&r.push(i(r)+"skewX("+t+a)}(n.skewX,o.skewX,c,l),function(e,t,r,a,n,o){if(e!==r||t!==a){var c=n.push(i(n)+"scale(",null,",",null,")");o.push({i:c-4,x:Wa(e,r)},{i:c-2,x:Wa(t,a)})}else 1===r&&1===a||n.push(i(n)+"scale("+r+","+a+")")}(n.scaleX,n.scaleY,o.scaleX,o.scaleY,c,l),n=o=null,function(e){for(var t,r=-1,a=l.length;++r=0&&t._call.call(void 0,e),t=t._next;--pi}function Ai(){gi=(mi=vi.now())+bi,pi=yi=0;try{Si()}finally{pi=0,function(){var e,t,r=hi,a=1/0;for(;r;)r._call?(a>r._time&&(a=r._time),e=r,r=r._next):(t=r._next,r._next=null,r=e?e._next=t:hi=t);di=e,Ti(a)}(),gi=0}}function Mi(){var e=vi.now(),t=e-mi;t>1e3&&(bi-=t,mi=e)}function Ti(e){pi||(yi&&(yi=clearTimeout(yi)),e-gi>24?(e<1/0&&(yi=setTimeout(Ai,e-vi.now()-bi)),fi&&(fi=clearInterval(fi))):(fi||(mi=vi.now(),fi=setInterval(Mi,1e3)),pi=1,xi(Ai)))}function Bi(e,t,r){var a=new Ci;return t=null==t?0:+t,a.restart((r=>{a.stop(),e(r+t)}),t,r),a}Ci.prototype=_i.prototype={constructor:Ci,restart:function(e,t,r){if("function"!=typeof e)throw new TypeError("callback is not a function");r=(null==r?ki():+r)+(null==t?0:+t),this._next||di===this||(di?di._next=this:hi=this,di=this),this._call=e,this._time=r,Ti()},stop:function(){this._call&&(this._call=null,this._time=1/0,Ti())}};var Li=Le("start","end","cancel","interrupt"),Ei=[];function Ri(e,t,r,a,i,n){var o=e.__transition;if(o){if(r in o)return}else e.__transition={};!function(e,t,r){var a,i=e.__transition;function n(e){r.state=1,r.timer.restart(o,r.delay,r.time),r.delay<=e&&o(e-r.delay)}function o(n){var s,u,h,d;if(1!==r.state)return l();for(s in i)if((d=i[s]).name===r.name){if(3===d.state)return Bi(o);4===d.state?(d.state=6,d.timer.stop(),d.on.call("interrupt",e,e.__data__,d.index,d.group),delete i[s]):+s0)throw new Error("too late; already scheduled");return r}function Di(e,t){var r=Pi(e,t);if(r.state>3)throw new Error("too late; already running");return r}function Pi(e,t){var r=e.__transition;if(!r||!(r=r[t]))throw new Error("transition not found");return r}function Ni(e,t){var r,a,i,n=e.__transition,o=!0;if(n){for(i in t=null==t?null:t+"",n)(r=n[i]).name===t?(a=r.state>2&&r.state<5,r.state=6,r.timer.stop(),r.on.call(a?"interrupt":"cancel",e,e.__data__,r.index,r.group),delete n[i]):o=!1;o&&delete e.__transition}}function Gi(e,t){var r,a;return function(){var i=Di(this,e),n=i.tween;if(n!==r)for(var o=0,c=(a=r=n).length;o=0&&(e=e.slice(0,t)),!e||"start"===e}))}(t)?Hi:Di;return function(){var o=n(this,e),c=o.on;c!==a&&(i=(a=c).copy()).on(t,r),o.on=i}}(r,e,t))},attr:function(e,t){var r=Ne(e),a="transform"===r?Qa:Fi;return this.attrTween(e,"function"==typeof t?(r.local?ji:Vi)(r,a,Wi(this,"attr."+e,t)):null==t?(r.local?Oi:zi)(r):(r.local?Ji:Ki)(r,a,t))},attrTween:function(e,t){var r="attr."+e;if(arguments.length<2)return(r=this.tween(r))&&r._value;if(null==t)return this.tween(r,null);if("function"!=typeof t)throw new Error;var a=Ne(e);return this.tween(r,(a.local?Yi:$i)(a,t))},style:function(e,t,r){var a="transform"==(e+="")?Za:Fi;return null==t?this.styleTween(e,function(e,t){var r,a,i;return function(){var n=yt(this,e),o=(this.style.removeProperty(e),yt(this,e));return n===o?null:n===r&&o===a?i:i=t(r=n,a=o)}}(e,a)).on("end.style."+e,en(e)):"function"==typeof t?this.styleTween(e,function(e,t,r){var a,i,n;return function(){var o=yt(this,e),c=r(this),l=c+"";return null==c&&(this.style.removeProperty(e),l=c=yt(this,e)),o===l?null:o===a&&l===i?n:(i=l,n=t(a=o,c))}}(e,a,Wi(this,"style."+e,t))).each(function(e,t){var r,a,i,n,o="style."+t,c="end."+o;return function(){var l=Di(this,e),s=l.on,u=null==l.value[o]?n||(n=en(t)):void 0;s===r&&i===u||(a=(r=s).copy()).on(c,i=u),l.on=a}}(this._id,e)):this.styleTween(e,function(e,t,r){var a,i,n=r+"";return function(){var o=yt(this,e);return o===n?null:o===a?i:i=t(a=o,r)}}(e,a,t),r).on("end.style."+e,null)},styleTween:function(e,t,r){var a="style."+(e+="");if(arguments.length<2)return(a=this.tween(a))&&a._value;if(null==t)return this.tween(a,null);if("function"!=typeof t)throw new Error;return this.tween(a,function(e,t,r){var a,i;function n(){var n=t.apply(this,arguments);return n!==i&&(a=(i=n)&&function(e,t,r){return function(a){this.style.setProperty(e,t.call(this,a),r)}}(e,n,r)),a}return n._value=t,n}(e,t,null==r?"":r))},text:function(e){return this.tween("text","function"==typeof e?function(e){return function(){var t=e(this);this.textContent=null==t?"":t}}(Wi(this,"text",e)):function(e){return function(){this.textContent=e}}(null==e?"":e+""))},textTween:function(e){var t="text";if(arguments.length<1)return(t=this.tween(t))&&t._value;if(null==e)return this.tween(t,null);if("function"!=typeof e)throw new Error;return this.tween(t,function(e){var t,r;function a(){var a=e.apply(this,arguments);return a!==r&&(t=(r=a)&&function(e){return function(t){this.textContent=e.call(this,t)}}(a)),t}return a._value=e,a}(e))},remove:function(){return this.on("end.remove",function(e){return function(){var t=this.parentNode;for(var r in this.__transition)if(+r!==e)return;t&&t.removeChild(this)}}(this._id))},tween:function(e,t){var r=this._id;if(e+="",arguments.length<2){for(var a,i=Pi(this.node(),r).tween,n=0,o=i.length;n()=>e;function In(e,{sourceEvent:t,target:r,selection:a,mode:i,dispatch:n}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},selection:{value:a,enumerable:!0,configurable:!0},mode:{value:i,enumerable:!0,configurable:!0},_:{value:n}})}function Wn(e){e.preventDefault(),e.stopImmediatePropagation()}var Fn={name:"drag"},zn={name:"space"},On={name:"handle"},Kn={name:"center"};const{abs:Jn,max:Vn,min:jn}=Math;function Yn(e){return[+e[0],+e[1]]}function $n(e){return[Yn(e[0]),Yn(e[1])]}var Un={name:"x",handles:["w","e"].map(ao),input:function(e,t){return null==e?null:[[+e[0],t[0][1]],[+e[1],t[1][1]]]},output:function(e){return e&&[e[0][0],e[1][0]]}},qn={name:"y",handles:["n","s"].map(ao),input:function(e,t){return null==e?null:[[t[0][0],+e[0]],[t[1][0],+e[1]]]},output:function(e){return e&&[e[0][1],e[1][1]]}},Zn={name:"xy",handles:["n","w","e","s","nw","ne","sw","se"].map(ao),input:function(e){return null==e?null:$n(e)},output:function(e){return e}},Qn={overlay:"crosshair",selection:"move",n:"ns-resize",e:"ew-resize",s:"ns-resize",w:"ew-resize",nw:"nwse-resize",ne:"nesw-resize",se:"nwse-resize",sw:"nesw-resize"},Xn={e:"w",w:"e",nw:"ne",ne:"nw",se:"sw",sw:"se"},eo={n:"s",s:"n",nw:"sw",ne:"se",se:"ne",sw:"nw"},to={overlay:1,selection:1,n:null,e:1,s:null,w:-1,nw:-1,ne:1,se:1,sw:-1},ro={overlay:1,selection:1,n:-1,e:null,s:1,w:null,nw:-1,ne:-1,se:1,sw:1};function ao(e){return{type:e}}function io(e){return!e.ctrlKey&&!e.button}function no(){var e=this.ownerSVGElement||this;return e.hasAttribute("viewBox")?[[(e=e.viewBox.baseVal).x,e.y],[e.x+e.width,e.y+e.height]]:[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]}function oo(){return navigator.maxTouchPoints||"ontouchstart"in this}function co(e){for(;!e.__brush;)if(!(e=e.parentNode))return;return e.__brush}function lo(e){var t,r=no,a=io,i=oo,n=!0,o=Le("start","brush","end"),c=6;function l(t){var r=t.property("__brush",f).selectAll(".overlay").data([ao("overlay")]);r.enter().append("rect").attr("class","overlay").attr("pointer-events","all").attr("cursor",Qn.overlay).merge(r).each((function(){var e=co(this).extent;jt(this).attr("x",e[0][0]).attr("y",e[0][1]).attr("width",e[1][0]-e[0][0]).attr("height",e[1][1]-e[0][1])})),t.selectAll(".selection").data([ao("selection")]).enter().append("rect").attr("class","selection").attr("cursor",Qn.selection).attr("fill","#777").attr("fill-opacity",.3).attr("stroke","#fff").attr("shape-rendering","crispEdges");var a=t.selectAll(".handle").data(e.handles,(function(e){return e.type}));a.exit().remove(),a.enter().append("rect").attr("class",(function(e){return"handle handle--"+e.type})).attr("cursor",(function(e){return Qn[e.type]})),t.each(s).attr("fill","none").attr("pointer-events","all").on("mousedown.brush",d).filter(i).on("touchstart.brush",d).on("touchmove.brush",p).on("touchend.brush touchcancel.brush",y).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function s(){var e=jt(this),t=co(this).selection;t?(e.selectAll(".selection").style("display",null).attr("x",t[0][0]).attr("y",t[0][1]).attr("width",t[1][0]-t[0][0]).attr("height",t[1][1]-t[0][1]),e.selectAll(".handle").style("display",null).attr("x",(function(e){return"e"===e.type[e.type.length-1]?t[1][0]-c/2:t[0][0]-c/2})).attr("y",(function(e){return"s"===e.type[0]?t[1][1]-c/2:t[0][1]-c/2})).attr("width",(function(e){return"n"===e.type||"s"===e.type?t[1][0]-t[0][0]+c:c})).attr("height",(function(e){return"e"===e.type||"w"===e.type?t[1][1]-t[0][1]+c:c}))):e.selectAll(".selection,.handle").style("display","none").attr("x",null).attr("y",null).attr("width",null).attr("height",null)}function u(e,t,r){var a=e.__brush.emitter;return!a||r&&a.clean?new h(e,t,r):a}function h(e,t,r){this.that=e,this.args=t,this.state=e.__brush,this.active=0,this.clean=r}function d(r){if((!t||r.touches)&&a.apply(this,arguments)){var i,o,c,l,h,d,p,y,f,m,g,b=this,v=r.target.__data__.type,x="selection"===(n&&r.metaKey?v="overlay":v)?Fn:n&&r.altKey?Kn:On,k=e===qn?null:to[v],w=e===Un?null:ro[v],C=co(b),_=C.extent,S=C.selection,A=_[0][0],M=_[0][1],T=_[1][0],B=_[1][1],L=0,E=0,R=k&&w&&n&&r.shiftKey,H=Array.from(r.touches||[r],(e=>{const t=e.identifier;return(e=Qt(e,b)).point0=e.slice(),e.identifier=t,e}));Ni(b);var D=u(b,arguments,!0).beforestart();if("overlay"===v){S&&(f=!0);const t=[H[0],H[1]||H[0]];C.selection=S=[[i=e===qn?A:jn(t[0][0],t[1][0]),c=e===Un?M:jn(t[0][1],t[1][1])],[h=e===qn?T:Vn(t[0][0],t[1][0]),p=e===Un?B:Vn(t[0][1],t[1][1])]],H.length>1&&W(r)}else i=S[0][0],c=S[0][1],h=S[1][0],p=S[1][1];o=i,l=c,d=h,y=p;var P=jt(b).attr("pointer-events","none"),N=P.selectAll(".overlay").attr("cursor",Qn[v]);if(r.touches)D.moved=I,D.ended=F;else{var G=jt(r.view).on("mousemove.brush",I,!0).on("mouseup.brush",F,!0);n&&G.on("keydown.brush",(function(e){switch(e.keyCode){case 16:R=k&&w;break;case 18:x===On&&(k&&(h=d-L*k,i=o+L*k),w&&(p=y-E*w,c=l+E*w),x=Kn,W(e));break;case 32:x!==On&&x!==Kn||(k<0?h=d-L:k>0&&(i=o-L),w<0?p=y-E:w>0&&(c=l-E),x=zn,N.attr("cursor",Qn.selection),W(e));break;default:return}Wn(e)}),!0).on("keyup.brush",(function(e){switch(e.keyCode){case 16:R&&(m=g=R=!1,W(e));break;case 18:x===Kn&&(k<0?h=d:k>0&&(i=o),w<0?p=y:w>0&&(c=l),x=On,W(e));break;case 32:x===zn&&(e.altKey?(k&&(h=d-L*k,i=o+L*k),w&&(p=y-E*w,c=l+E*w),x=Kn):(k<0?h=d:k>0&&(i=o),w<0?p=y:w>0&&(c=l),x=On),N.attr("cursor",Qn[v]),W(e));break;default:return}Wn(e)}),!0),ar(r.view)}s.call(b),D.start(r,x.name)}function I(e){for(const t of e.changedTouches||[e])for(const e of H)e.identifier===t.identifier&&(e.cur=Qt(t,b));if(R&&!m&&!g&&1===H.length){const e=H[0];Jn(e.cur[0]-e[0])>Jn(e.cur[1]-e[1])?g=!0:m=!0}for(const e of H)e.cur&&(e[0]=e.cur[0],e[1]=e.cur[1]);f=!0,Wn(e),W(e)}function W(e){const t=H[0],r=t.point0;var a;switch(L=t[0]-r[0],E=t[1]-r[1],x){case zn:case Fn:k&&(L=Vn(A-i,jn(T-h,L)),o=i+L,d=h+L),w&&(E=Vn(M-c,jn(B-p,E)),l=c+E,y=p+E);break;case On:H[1]?(k&&(o=Vn(A,jn(T,H[0][0])),d=Vn(A,jn(T,H[1][0])),k=1),w&&(l=Vn(M,jn(B,H[0][1])),y=Vn(M,jn(B,H[1][1])),w=1)):(k<0?(L=Vn(A-i,jn(T-i,L)),o=i+L,d=h):k>0&&(L=Vn(A-h,jn(T-h,L)),o=i,d=h+L),w<0?(E=Vn(M-c,jn(B-c,E)),l=c+E,y=p):w>0&&(E=Vn(M-p,jn(B-p,E)),l=c,y=p+E));break;case Kn:k&&(o=Vn(A,jn(T,i-L*k)),d=Vn(A,jn(T,h+L*k))),w&&(l=Vn(M,jn(B,c-E*w)),y=Vn(M,jn(B,p+E*w)))}de+r))}function vo(e,t){var r=0,a=null,i=null,n=null;function o(o){var c,l=o.length,s=new Array(l),u=bo(0,l),h=new Array(l*l),d=new Array(l),p=0;o=Float64Array.from({length:l*l},t?(e,t)=>o[t%l][t/l|0]:(e,t)=>o[t/l|0][t%l]);for(let t=0;ta(s[e],s[t])));for(const r of u){const a=t;if(e){const e=bo(1+~l,l).filter((e=>e<0?o[~e*l+r]:o[r*l+e]));i&&e.sort(((e,t)=>i(e<0?-o[~e*l+r]:o[r*l+e],t<0?-o[~t*l+r]:o[r*l+t])));for(const a of e)if(a<0){(h[~a*l+r]||(h[~a*l+r]={source:null,target:null})).target={index:r,startAngle:t,endAngle:t+=o[~a*l+r]*p,value:o[~a*l+r]}}else{(h[r*l+a]||(h[r*l+a]={source:null,target:null})).source={index:r,startAngle:t,endAngle:t+=o[r*l+a]*p,value:o[r*l+a]}}d[r]={index:r,startAngle:a,endAngle:t,value:s[r]}}else{const e=bo(0,l).filter((e=>o[r*l+e]||o[e*l+r]));i&&e.sort(((e,t)=>i(o[r*l+e],o[r*l+t])));for(const a of e){let e;if(r=0))throw new Error(`invalid digits: ${e}`);if(t>15)return _o;const r=10**t;return function(e){this._+=e[0];for(let t=1,a=e.length;two)if(Math.abs(u*c-l*s)>wo&&i){let d=r-n,p=a-o,y=c*c+l*l,f=d*d+p*p,m=Math.sqrt(y),g=Math.sqrt(h),b=i*Math.tan((xo-Math.acos((y+h-f)/(2*m*g)))/2),v=b/g,x=b/m;Math.abs(v-1)>wo&&this._append`L${e+v*s},${t+v*u}`,this._append`A${i},${i},0,0,${+(u*d>s*p)},${this._x1=e+x*c},${this._y1=t+x*l}`}else this._append`L${this._x1=e},${this._y1=t}`;else;}arc(e,t,r,a,i,n){if(e=+e,t=+t,n=!!n,(r=+r)<0)throw new Error(`negative radius: ${r}`);let o=r*Math.cos(a),c=r*Math.sin(a),l=e+o,s=t+c,u=1^n,h=n?a-i:i-a;null===this._x1?this._append`M${l},${s}`:(Math.abs(this._x1-l)>wo||Math.abs(this._y1-s)>wo)&&this._append`L${l},${s}`,r&&(h<0&&(h=h%ko+ko),h>Co?this._append`A${r},${r},0,1,${u},${e-o},${t-c}A${r},${r},0,1,${u},${this._x1=l},${this._y1=s}`:h>wo&&this._append`A${r},${r},0,${+(h>=xo)},${u},${this._x1=e+r*Math.cos(i)},${this._y1=t+r*Math.sin(i)}`)}rect(e,t,r,a){this._append`M${this._x0=this._x1=+e},${this._y0=this._y1=+t}h${r=+r}v${+a}h${-r}Z`}toString(){return this._}};function Ao(){return new So}Ao.prototype=So.prototype;var Mo=Array.prototype.slice;function To(e){return function(){return e}}function Bo(e){return e.source}function Lo(e){return e.target}function Eo(e){return e.radius}function Ro(e){return e.startAngle}function Ho(e){return e.endAngle}function Do(){return 0}function Po(){return 10}function No(e){var t=Bo,r=Lo,a=Eo,i=Eo,n=Ro,o=Ho,c=Do,l=null;function s(){var s,u=t.apply(this,arguments),h=r.apply(this,arguments),d=c.apply(this,arguments)/2,p=Mo.call(arguments),y=+a.apply(this,(p[0]=u,p)),f=n.apply(this,p)-yo,m=o.apply(this,p)-yo,g=+i.apply(this,(p[0]=h,p)),b=n.apply(this,p)-yo,v=o.apply(this,p)-yo;if(l||(l=s=Ao()),d>go&&(so(m-f)>2*d+go?m>f?(f+=d,m-=d):(f-=d,m+=d):f=m=(f+m)/2,so(v-b)>2*d+go?v>b?(b+=d,v-=d):(b-=d,v+=d):b=v=(b+v)/2),l.moveTo(y*uo(f),y*ho(f)),l.arc(0,0,y,f,m),f!==b||m!==v)if(e){var x=g-+e.apply(this,arguments),k=(b+v)/2;l.quadraticCurveTo(0,0,x*uo(b),x*ho(b)),l.lineTo(g*uo(k),g*ho(k)),l.lineTo(x*uo(v),x*ho(v))}else l.quadraticCurveTo(0,0,g*uo(b),g*ho(b)),l.arc(0,0,g,b,v);if(l.quadraticCurveTo(0,0,y*uo(f),y*ho(f)),l.closePath(),s)return l=null,s+""||null}return e&&(s.headRadius=function(t){return arguments.length?(e="function"==typeof t?t:To(+t),s):e}),s.radius=function(e){return arguments.length?(a=i="function"==typeof e?e:To(+e),s):a},s.sourceRadius=function(e){return arguments.length?(a="function"==typeof e?e:To(+e),s):a},s.targetRadius=function(e){return arguments.length?(i="function"==typeof e?e:To(+e),s):i},s.startAngle=function(e){return arguments.length?(n="function"==typeof e?e:To(+e),s):n},s.endAngle=function(e){return arguments.length?(o="function"==typeof e?e:To(+e),s):o},s.padAngle=function(e){return arguments.length?(c="function"==typeof e?e:To(+e),s):c},s.source=function(e){return arguments.length?(t=e,s):t},s.target=function(e){return arguments.length?(r=e,s):r},s.context=function(e){return arguments.length?(l=null==e?null:e,s):l},s}var Go=Array.prototype.slice;function Io(e,t){return e-t}var Wo=e=>()=>e;function Fo(e,t){for(var r,a=-1,i=t.length;++aa!=p>a&&r<(d-s)*(a-u)/(p-u)+s&&(i=-i)}return i}function Oo(e,t,r){var a;return function(e,t,r){return(t[0]-e[0])*(r[1]-e[1])==(r[0]-e[0])*(t[1]-e[1])}(e,t,r)&&function(e,t,r){return e<=t&&t<=r||r<=t&&t<=e}(e[a=+(e[0]===t[0])],r[a],t[a])}function Ko(){}var Jo=[[],[[[1,1.5],[.5,1]]],[[[1.5,1],[1,1.5]]],[[[1.5,1],[.5,1]]],[[[1,.5],[1.5,1]]],[[[1,1.5],[.5,1]],[[1,.5],[1.5,1]]],[[[1,.5],[1,1.5]]],[[[1,.5],[.5,1]]],[[[.5,1],[1,.5]]],[[[1,1.5],[1,.5]]],[[[.5,1],[1,.5]],[[1.5,1],[1,1.5]]],[[[1.5,1],[1,.5]]],[[[.5,1],[1.5,1]]],[[[1,1.5],[1.5,1]]],[[[.5,1],[1,1.5]]],[]];function Vo(){var e=1,t=1,r=Q,a=c;function i(e){var t=r(e);if(Array.isArray(t))t=t.slice().sort(Io);else{const r=w(e,jo);for(t=$(...Z(r[0],r[1],t),t);t[t.length-1]>=r[1];)t.pop();for(;t[1]n(e,t)))}function n(r,i){const n=null==i?NaN:+i;if(isNaN(n))throw new Error(`invalid value: ${i}`);var c=[],l=[];return function(r,a,i){var n,c,l,s,u,h,d=new Array,p=new Array;n=c=-1,s=Yo(r[0],a),Jo[s<<1].forEach(y);for(;++n=a,Jo[u<<2].forEach(y);for(;++n0?c.push([e]):l.push(e)})),l.forEach((function(e){for(var t,r=0,a=c.length;r0&&n0&&o=0&&n>=0))throw new Error("invalid size");return e=a,t=n,i},i.thresholds=function(e){return arguments.length?(r="function"==typeof e?e:Array.isArray(e)?Wo(Go.call(e)):Wo(e),i):r},i.smooth=function(e){return arguments.length?(a=e?c:Ko,i):a===c},i}function jo(e){return isFinite(e)?e:NaN}function Yo(e,t){return null!=e&&+e>=t}function $o(e){return null==e||isNaN(e=+e)?-1/0:e}function Uo(e,t,r,a){const i=a-t,n=r-t,o=isFinite(i)||isFinite(n)?i/n:Math.sign(i)/Math.sign(n);return isNaN(o)?e:e+o-.5}function qo(e){return e[0]}function Zo(e){return e[1]}function Qo(){return 1}const Xo=134217729;function ec(e,t,r,a,i){let n,o,c,l,s=t[0],u=a[0],h=0,d=0;u>s==u>-s?(n=s,s=t[++h]):(n=u,u=a[++d]);let p=0;if(hs==u>-s?(o=s+n,c=n-(o-s),s=t[++h]):(o=u+n,c=n-(o-u),u=a[++d]),n=o,0!==c&&(i[p++]=c);hs==u>-s?(o=n+s,l=o-n,c=n-(o-l)+(s-l),s=t[++h]):(o=n+u,l=o-n,c=n-(o-l)+(u-l),u=a[++d]),n=o,0!==c&&(i[p++]=c);for(;h=33306690738754716e-32*s?l:-function(e,t,r,a,i,n,o){let c,l,s,u,h,d,p,y,f,m,g,b,v,x,k,w,C,_;const S=e-i,A=r-i,M=t-n,T=a-n;x=S*T,d=Xo*S,p=d-(d-S),y=S-p,d=Xo*T,f=d-(d-T),m=T-f,k=y*m-(x-p*f-y*f-p*m),w=M*A,d=Xo*M,p=d-(d-M),y=M-p,d=Xo*A,f=d-(d-A),m=A-f,C=y*m-(w-p*f-y*f-p*m),g=k-C,h=k-g,rc[0]=k-(g+h)+(h-C),b=x+g,h=b-x,v=x-(b-h)+(g-h),g=v-w,h=v-g,rc[1]=v-(g+h)+(h-w),_=b+g,h=_-b,rc[2]=b-(_-h)+(g-h),rc[3]=_;let B=function(e,t){let r=t[0];for(let a=1;a=L||-B>=L)return B;if(h=e-S,c=e-(S+h)+(h-i),h=r-A,s=r-(A+h)+(h-i),h=t-M,l=t-(M+h)+(h-n),h=a-T,u=a-(T+h)+(h-n),0===c&&0===l&&0===s&&0===u)return B;if(L=11093356479670487e-47*o+33306690738754706e-32*Math.abs(B),B+=S*u+T*c-(M*s+A*l),B>=L||-B>=L)return B;x=c*T,d=Xo*c,p=d-(d-c),y=c-p,d=Xo*T,f=d-(d-T),m=T-f,k=y*m-(x-p*f-y*f-p*m),w=l*A,d=Xo*l,p=d-(d-l),y=l-p,d=Xo*A,f=d-(d-A),m=A-f,C=y*m-(w-p*f-y*f-p*m),g=k-C,h=k-g,oc[0]=k-(g+h)+(h-C),b=x+g,h=b-x,v=x-(b-h)+(g-h),g=v-w,h=v-g,oc[1]=v-(g+h)+(h-w),_=b+g,h=_-b,oc[2]=b-(_-h)+(g-h),oc[3]=_;const E=ec(4,rc,4,oc,ac);x=S*u,d=Xo*S,p=d-(d-S),y=S-p,d=Xo*u,f=d-(d-u),m=u-f,k=y*m-(x-p*f-y*f-p*m),w=M*s,d=Xo*M,p=d-(d-M),y=M-p,d=Xo*s,f=d-(d-s),m=s-f,C=y*m-(w-p*f-y*f-p*m),g=k-C,h=k-g,oc[0]=k-(g+h)+(h-C),b=x+g,h=b-x,v=x-(b-h)+(g-h),g=v-w,h=v-g,oc[1]=v-(g+h)+(h-w),_=b+g,h=_-b,oc[2]=b-(_-h)+(g-h),oc[3]=_;const R=ec(E,ac,4,oc,ic);x=c*u,d=Xo*c,p=d-(d-c),y=c-p,d=Xo*u,f=d-(d-u),m=u-f,k=y*m-(x-p*f-y*f-p*m),w=l*s,d=Xo*l,p=d-(d-l),y=l-p,d=Xo*s,f=d-(d-s),m=s-f,C=y*m-(w-p*f-y*f-p*m),g=k-C,h=k-g,oc[0]=k-(g+h)+(h-C),b=x+g,h=b-x,v=x-(b-h)+(g-h),g=v-w,h=v-g,oc[1]=v-(g+h)+(h-w),_=b+g,h=_-b,oc[2]=b-(_-h)+(g-h),oc[3]=_;const H=ec(R,ic,4,oc,nc);return nc[H-1]}(e,t,r,a,i,n,s)}const lc=Math.pow(2,-52),sc=new Uint32Array(512);class uc{static from(e,t=mc,r=gc){const a=e.length,i=new Float64Array(2*a);for(let n=0;n>1;if(t>0&&"number"!=typeof e[0])throw new Error("Expected coords to contain numbers.");this.coords=e;const r=Math.max(2*t-5,0);this._triangles=new Uint32Array(3*r),this._halfedges=new Int32Array(3*r),this._hashSize=Math.ceil(Math.sqrt(t)),this._hullPrev=new Uint32Array(t),this._hullNext=new Uint32Array(t),this._hullTri=new Uint32Array(t),this._hullHash=new Int32Array(this._hashSize),this._ids=new Uint32Array(t),this._dists=new Float64Array(t),this.update()}update(){const{coords:e,_hullPrev:t,_hullNext:r,_hullTri:a,_hullHash:i}=this,n=e.length>>1;let o=1/0,c=1/0,l=-1/0,s=-1/0;for(let t=0;tl&&(l=r),a>s&&(s=a),this._ids[t]=t}const u=(o+l)/2,h=(c+s)/2;let d,p,y;for(let t=0,r=1/0;t0&&(p=t,r=a)}let g=e[2*p],b=e[2*p+1],v=1/0;for(let t=0;ta&&(t[r++]=i,a=n)}return this.hull=t.subarray(0,r),this.triangles=new Uint32Array(0),void(this.halfedges=new Uint32Array(0))}if(cc(f,m,g,b,x,k)<0){const e=p,t=g,r=b;p=y,g=x,b=k,y=e,x=t,k=r}const w=function(e,t,r,a,i,n){const o=r-e,c=a-t,l=i-e,s=n-t,u=o*o+c*c,h=l*l+s*s,d=.5/(o*s-c*l),p=e+(s*u-c*h)*d,y=t+(o*h-l*u)*d;return{x:p,y:y}}(f,m,g,b,x,k);this._cx=w.x,this._cy=w.y;for(let t=0;t0&&Math.abs(s-n)<=lc&&Math.abs(u-o)<=lc)continue;if(n=s,o=u,l===d||l===p||l===y)continue;let h=0;for(let e=0,t=this._hashKey(s,u);e=0;)if(m=f,m===h){m=-1;break}if(-1===m)continue;let g=this._addTriangle(m,l,r[m],-1,-1,a[m]);a[l]=this._legalize(g+2),a[m]=g,C++;let b=r[m];for(;f=r[b],cc(s,u,e[2*b],e[2*b+1],e[2*f],e[2*f+1])<0;)g=this._addTriangle(b,l,f,a[l],-1,a[b]),a[l]=this._legalize(g+2),r[b]=b,C--,b=f;if(m===h)for(;f=t[m],cc(s,u,e[2*f],e[2*f+1],e[2*m],e[2*m+1])<0;)g=this._addTriangle(f,l,m,-1,a[m],a[f]),this._legalize(g+2),a[f]=g,r[m]=m,C--,m=f;this._hullStart=t[l]=m,r[m]=t[b]=l,r[l]=b,i[this._hashKey(s,u)]=l,i[this._hashKey(e[2*m],e[2*m+1])]=m}this.hull=new Uint32Array(C);for(let e=0,t=this._hullStart;e0?3-r:1+r)/4}(e-this._cx,t-this._cy)*this._hashSize)%this._hashSize}_legalize(e){const{_triangles:t,_halfedges:r,coords:a}=this;let i=0,n=0;for(;;){const o=r[e],c=e-e%3;if(n=c+(e+2)%3,-1===o){if(0===i)break;e=sc[--i];continue}const l=o-o%3,s=c+(e+1)%3,u=l+(o+2)%3,h=t[n],d=t[e],p=t[s],y=t[u];if(dc(a[2*h],a[2*h+1],a[2*d],a[2*d+1],a[2*p],a[2*p+1],a[2*y],a[2*y+1])){t[e]=y,t[o]=h;const a=r[u];if(-1===a){let t=this._hullStart;do{if(this._hullTri[t]===u){this._hullTri[t]=e;break}t=this._hullPrev[t]}while(t!==this._hullStart)}this._link(e,a),this._link(o,r[n]),this._link(n,u);const c=l+(o+1)%3;i=r&&t[e[o]]>n;)e[o+1]=e[o--];e[o+1]=a}else{let i=r+1,n=a;fc(e,r+a>>1,i),t[e[r]]>t[e[a]]&&fc(e,r,a),t[e[i]]>t[e[a]]&&fc(e,i,a),t[e[r]]>t[e[i]]&&fc(e,r,i);const o=e[i],c=t[o];for(;;){do{i++}while(t[e[i]]c);if(n=n-r?(yc(e,t,i,a),yc(e,t,r,n-1)):(yc(e,t,r,n-1),yc(e,t,i,a))}}function fc(e,t,r){const a=e[t];e[t]=e[r],e[r]=a}function mc(e){return e[0]}function gc(e){return e[1]}const bc=1e-6;class vc{constructor(){this._x0=this._y0=this._x1=this._y1=null,this._=""}moveTo(e,t){this._+=`M${this._x0=this._x1=+e},${this._y0=this._y1=+t}`}closePath(){null!==this._x1&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")}lineTo(e,t){this._+=`L${this._x1=+e},${this._y1=+t}`}arc(e,t,r){const a=(e=+e)+(r=+r),i=t=+t;if(r<0)throw new Error("negative radius");null===this._x1?this._+=`M${a},${i}`:(Math.abs(this._x1-a)>bc||Math.abs(this._y1-i)>bc)&&(this._+="L"+a+","+i),r&&(this._+=`A${r},${r},0,1,1,${e-r},${t}A${r},${r},0,1,1,${this._x1=a},${this._y1=i}`)}rect(e,t,r,a){this._+=`M${this._x0=this._x1=+e},${this._y0=this._y1=+t}h${+r}v${+a}h${-r}Z`}value(){return this._||null}}class xc{constructor(){this._=[]}moveTo(e,t){this._.push([e,t])}closePath(){this._.push(this._[0].slice())}lineTo(e,t){this._.push([e,t])}value(){return this._.length?this._:null}}class kc{constructor(e,[t,r,a,i]=[0,0,960,500]){if(!((a=+a)>=(t=+t)&&(i=+i)>=(r=+r)))throw new Error("invalid bounds");this.delaunay=e,this._circumcenters=new Float64Array(2*e.points.length),this.vectors=new Float64Array(2*e.points.length),this.xmax=a,this.xmin=t,this.ymax=i,this.ymin=r,this._init()}update(){return this.delaunay.update(),this._init(),this}_init(){const{delaunay:{points:e,hull:t,triangles:r},vectors:a}=this;let i,n;const o=this.circumcenters=this._circumcenters.subarray(0,r.length/3*2);for(let a,c,l=0,s=0,u=r.length;l1;)i-=2;for(let e=2;e0){if(t>=this.ymax)return null;(i=(this.ymax-t)/a)0){if(e>=this.xmax)return null;(i=(this.xmax-e)/r)this.xmax?2:0)|(tthis.ymax?8:0)}_simplify(e){if(e&&e.length>4){for(let t=0;t2&&function(e){const{triangles:t,coords:r}=e;for(let e=0;e1e-10)return!1}return!0}(e)){this.collinear=Int32Array.from({length:t.length/2},((e,t)=>t)).sort(((e,r)=>t[2*e]-t[2*r]||t[2*e+1]-t[2*r+1]));const e=this.collinear[0],r=this.collinear[this.collinear.length-1],a=[t[2*e],t[2*e+1],t[2*r],t[2*r+1]],i=1e-8*Math.hypot(a[3]-a[1],a[2]-a[0]);for(let e=0,r=t.length/2;e0&&(this.triangles=new Int32Array(3).fill(-1),this.halfedges=new Int32Array(3).fill(-1),this.triangles[0]=a[0],n[a[0]]=1,2===a.length&&(n[a[1]]=0,this.triangles[1]=a[1],this.triangles[2]=a[1]))}voronoi(e){return new kc(this,e)}*neighbors(e){const{inedges:t,hull:r,_hullIndex:a,halfedges:i,triangles:n,collinear:o}=this;if(o){const t=o.indexOf(e);return t>0&&(yield o[t-1]),void(t=0&&i!==r&&i!==a;)r=i;return i}_step(e,t,r){const{inedges:a,hull:i,_hullIndex:n,halfedges:o,triangles:c,points:l}=this;if(-1===a[e]||!l.length)return(e+1)%(l.length>>1);let s=e,u=Cc(t-l[2*e],2)+Cc(r-l[2*e+1],2);const h=a[e];let d=h;do{let a=c[d];const h=Cc(t-l[2*a],2)+Cc(r-l[2*a+1],2);if(h9999?"+"+Rc(t,6):Rc(t,4))+"-"+Rc(e.getUTCMonth()+1,2)+"-"+Rc(e.getUTCDate(),2)+(n?"T"+Rc(r,2)+":"+Rc(a,2)+":"+Rc(i,2)+"."+Rc(n,3)+"Z":i?"T"+Rc(r,2)+":"+Rc(a,2)+":"+Rc(i,2)+"Z":a||r?"T"+Rc(r,2)+":"+Rc(a,2)+"Z":"")}function Dc(e){var t=new RegExp('["'+e+"\n\r]"),r=e.charCodeAt(0);function a(e,t){var a,i=[],n=e.length,o=0,c=0,l=n<=0,s=!1;function u(){if(l)return Bc;if(s)return s=!1,Tc;var t,a,i=o;if(34===e.charCodeAt(i)){for(;o++=n?l=!0:10===(a=e.charCodeAt(o++))?s=!0:13===a&&(s=!0,10===e.charCodeAt(o)&&++o),e.slice(i+1,t-1).replace(/""/g,'"')}for(;otl(t,r).then((t=>(new DOMParser).parseFromString(t,e)))}var cl=ol("application/xml"),ll=ol("text/html"),sl=ol("image/svg+xml");function ul(e,t,r,a){if(isNaN(t)||isNaN(r))return e;var i,n,o,c,l,s,u,h,d,p=e._root,y={data:a},f=e._x0,m=e._y0,g=e._x1,b=e._y1;if(!p)return e._root=y,e;for(;p.length;)if((s=t>=(n=(f+g)/2))?f=n:g=n,(u=r>=(o=(m+b)/2))?m=o:b=o,i=p,!(p=p[h=u<<1|s]))return i[h]=y,e;if(c=+e._x.call(null,p.data),l=+e._y.call(null,p.data),t===c&&r===l)return y.next=p,i?i[h]=y:e._root=y,e;do{i=i?i[h]=new Array(4):e._root=new Array(4),(s=t>=(n=(f+g)/2))?f=n:g=n,(u=r>=(o=(m+b)/2))?m=o:b=o}while((h=u<<1|s)==(d=(l>=o)<<1|c>=n));return i[d]=p,i[h]=y,e}function hl(e,t,r,a,i){this.node=e,this.x0=t,this.y0=r,this.x1=a,this.y1=i}function dl(e){return e[0]}function pl(e){return e[1]}function yl(e,t,r){var a=new fl(null==t?dl:t,null==r?pl:r,NaN,NaN,NaN,NaN);return null==e?a:a.addAll(e)}function fl(e,t,r,a,i,n){this._x=e,this._y=t,this._x0=r,this._y0=a,this._x1=i,this._y1=n,this._root=void 0}function ml(e){for(var t={data:e.data},r=t;e=e.next;)r=r.next={data:e.data};return t}var gl=yl.prototype=fl.prototype;function bl(e){return function(){return e}}function vl(e){return 1e-6*(e()-.5)}function xl(e){return e.x+e.vx}function kl(e){return e.y+e.vy}function wl(e){return e.index}function Cl(e,t){var r=e.get(t);if(!r)throw new Error("node not found: "+t);return r}gl.copy=function(){var e,t,r=new fl(this._x,this._y,this._x0,this._y0,this._x1,this._y1),a=this._root;if(!a)return r;if(!a.length)return r._root=ml(a),r;for(e=[{source:a,target:r._root=new Array(4)}];a=e.pop();)for(var i=0;i<4;++i)(t=a.source[i])&&(t.length?e.push({source:t,target:a.target[i]=new Array(4)}):a.target[i]=ml(t));return r},gl.add=function(e){const t=+this._x.call(null,e),r=+this._y.call(null,e);return ul(this.cover(t,r),t,r,e)},gl.addAll=function(e){var t,r,a,i,n=e.length,o=new Array(n),c=new Array(n),l=1/0,s=1/0,u=-1/0,h=-1/0;for(r=0;ru&&(u=a),ih&&(h=i));if(l>u||s>h)return this;for(this.cover(l,s).cover(u,h),r=0;re||e>=i||a>t||t>=n;)switch(c=(td||(n=l.y0)>p||(o=l.x1)=g)<<1|e>=m)&&(l=y[y.length-1],y[y.length-1]=y[y.length-1-s],y[y.length-1-s]=l)}else{var b=e-+this._x.call(null,f.data),v=t-+this._y.call(null,f.data),x=b*b+v*v;if(x=(c=(y+m)/2))?y=c:m=c,(u=o>=(l=(f+g)/2))?f=l:g=l,t=p,!(p=p[h=u<<1|s]))return this;if(!p.length)break;(t[h+1&3]||t[h+2&3]||t[h+3&3])&&(r=t,d=h)}for(;p.data!==e;)if(a=p,!(p=p.next))return this;return(i=p.next)&&delete p.next,a?(i?a.next=i:delete a.next,this):t?(i?t[h]=i:delete t[h],(p=t[0]||t[1]||t[2]||t[3])&&p===(t[3]||t[2]||t[1]||t[0])&&!p.length&&(r?r[d]=p:this._root=p),this):(this._root=i,this)},gl.removeAll=function(e){for(var t=0,r=e.length;t1?a[0]+a.slice(2):a,+e.slice(r+1)]}function Bl(e){return(e=Tl(Math.abs(e)))?e[1]:NaN}var Ll,El=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function Rl(e){if(!(t=El.exec(e)))throw new Error("invalid format: "+e);var t;return new Hl({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}function Hl(e){this.fill=void 0===e.fill?" ":e.fill+"",this.align=void 0===e.align?">":e.align+"",this.sign=void 0===e.sign?"-":e.sign+"",this.symbol=void 0===e.symbol?"":e.symbol+"",this.zero=!!e.zero,this.width=void 0===e.width?void 0:+e.width,this.comma=!!e.comma,this.precision=void 0===e.precision?void 0:+e.precision,this.trim=!!e.trim,this.type=void 0===e.type?"":e.type+""}function Dl(e,t){var r=Tl(e,t);if(!r)return e+"";var a=r[0],i=r[1];return i<0?"0."+new Array(-i).join("0")+a:a.length>i+1?a.slice(0,i+1)+"."+a.slice(i+1):a+new Array(i-a.length+2).join("0")}Rl.prototype=Hl.prototype,Hl.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(void 0===this.width?"":Math.max(1,0|this.width))+(this.comma?",":"")+(void 0===this.precision?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type};var Pl={"%":(e,t)=>(100*e).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+"",d:function(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString("en").replace(/,/g,""):e.toString(10)},e:(e,t)=>e.toExponential(t),f:(e,t)=>e.toFixed(t),g:(e,t)=>e.toPrecision(t),o:e=>Math.round(e).toString(8),p:(e,t)=>Dl(100*e,t),r:Dl,s:function(e,t){var r=Tl(e,t);if(!r)return e+"";var a=r[0],i=r[1],n=i-(Ll=3*Math.max(-8,Math.min(8,Math.floor(i/3))))+1,o=a.length;return n===o?a:n>o?a+new Array(n-o+1).join("0"):n>0?a.slice(0,n)+"."+a.slice(n):"0."+new Array(1-n).join("0")+Tl(e,Math.max(0,t+n-1))[0]},X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function Nl(e){return e}var Gl,Il,Wl,Fl=Array.prototype.map,zl=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function Ol(e){var t,r,a=void 0===e.grouping||void 0===e.thousands?Nl:(t=Fl.call(e.grouping,Number),r=e.thousands+"",function(e,a){for(var i=e.length,n=[],o=0,c=t[0],l=0;i>0&&c>0&&(l+c+1>a&&(c=Math.max(1,a-l)),n.push(e.substring(i-=c,i+c)),!((l+=c+1)>a));)c=t[o=(o+1)%t.length];return n.reverse().join(r)}),i=void 0===e.currency?"":e.currency[0]+"",n=void 0===e.currency?"":e.currency[1]+"",o=void 0===e.decimal?".":e.decimal+"",c=void 0===e.numerals?Nl:function(e){return function(t){return t.replace(/[0-9]/g,(function(t){return e[+t]}))}}(Fl.call(e.numerals,String)),l=void 0===e.percent?"%":e.percent+"",s=void 0===e.minus?"−":e.minus+"",u=void 0===e.nan?"NaN":e.nan+"";function h(e){var t=(e=Rl(e)).fill,r=e.align,h=e.sign,d=e.symbol,p=e.zero,y=e.width,f=e.comma,m=e.precision,g=e.trim,b=e.type;"n"===b?(f=!0,b="g"):Pl[b]||(void 0===m&&(m=12),g=!0,b="g"),(p||"0"===t&&"="===r)&&(p=!0,t="0",r="=");var v="$"===d?i:"#"===d&&/[boxX]/.test(b)?"0"+b.toLowerCase():"",x="$"===d?n:/[%p]/.test(b)?l:"",k=Pl[b],w=/[defgprs%]/.test(b);function C(e){var i,n,l,d=v,C=x;if("c"===b)C=k(e)+C,e="";else{var _=(e=+e)<0||1/e<0;if(e=isNaN(e)?u:k(Math.abs(e),m),g&&(e=function(e){e:for(var t,r=e.length,a=1,i=-1;a0&&(i=0)}return i>0?e.slice(0,i)+e.slice(t+1):e}(e)),_&&0==+e&&"+"!==h&&(_=!1),d=(_?"("===h?h:s:"-"===h||"("===h?"":h)+d,C=("s"===b?zl[8+Ll/3]:"")+C+(_&&"("===h?")":""),w)for(i=-1,n=e.length;++i(l=e.charCodeAt(i))||l>57){C=(46===l?o+e.slice(i+1):e.slice(i))+C,e=e.slice(0,i);break}}f&&!p&&(e=a(e,1/0));var S=d.length+e.length+C.length,A=S>1)+d+e+C+A.slice(S);break;default:e=A+d+e+C}return c(e)}return m=void 0===m?6:/[gprs]/.test(b)?Math.max(1,Math.min(21,m)):Math.max(0,Math.min(20,m)),C.toString=function(){return e+""},C}return{format:h,formatPrefix:function(e,t){var r=h(((e=Rl(e)).type="f",e)),a=3*Math.max(-8,Math.min(8,Math.floor(Bl(t)/3))),i=Math.pow(10,-a),n=zl[8+a/3];return function(e){return r(i*e)+n}}}}function Kl(e){return Gl=Ol(e),Il=Gl.format,Wl=Gl.formatPrefix,Gl}function Jl(e){return Math.max(0,-Bl(Math.abs(e)))}function Vl(e,t){return Math.max(0,3*Math.max(-8,Math.min(8,Math.floor(Bl(t)/3)))-Bl(Math.abs(e)))}function jl(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,Bl(t)-Bl(e))+1}Kl({thousands:",",grouping:[3],currency:["$",""]});var Yl=1e-6,$l=1e-12,Ul=Math.PI,ql=Ul/2,Zl=Ul/4,Ql=2*Ul,Xl=180/Ul,es=Ul/180,ts=Math.abs,rs=Math.atan,as=Math.atan2,is=Math.cos,ns=Math.ceil,os=Math.exp,cs=Math.hypot,ls=Math.log,ss=Math.pow,us=Math.sin,hs=Math.sign||function(e){return e>0?1:e<0?-1:0},ds=Math.sqrt,ps=Math.tan;function ys(e){return e>1?0:e<-1?Ul:Math.acos(e)}function fs(e){return e>1?ql:e<-1?-ql:Math.asin(e)}function ms(e){return(e=us(e/2))*e}function gs(){}function bs(e,t){e&&xs.hasOwnProperty(e.type)&&xs[e.type](e,t)}var vs={Feature:function(e,t){bs(e.geometry,t)},FeatureCollection:function(e,t){for(var r=e.features,a=-1,i=r.length;++a=0?1:-1,i=a*r,n=is(t=(t*=es)/2+Zl),o=us(t),c=Ts*o,l=Ms*n+c*is(i),s=c*a*us(i);Fs.add(as(s,l)),As=e,Ms=n,Ts=o}function Ys(e){return[as(e[1],e[0]),fs(e[2])]}function $s(e){var t=e[0],r=e[1],a=is(r);return[a*is(t),a*us(t),us(r)]}function Us(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}function qs(e,t){return[e[1]*t[2]-e[2]*t[1],e[2]*t[0]-e[0]*t[2],e[0]*t[1]-e[1]*t[0]]}function Zs(e,t){e[0]+=t[0],e[1]+=t[1],e[2]+=t[2]}function Qs(e,t){return[e[0]*t,e[1]*t,e[2]*t]}function Xs(e){var t=ds(e[0]*e[0]+e[1]*e[1]+e[2]*e[2]);e[0]/=t,e[1]/=t,e[2]/=t}var eu,tu,ru,au,iu,nu,ou,cu,lu,su,uu,hu,du,pu,yu,fu,mu={point:gu,lineStart:vu,lineEnd:xu,polygonStart:function(){mu.point=ku,mu.lineStart=wu,mu.lineEnd=Cu,Gs=new C,Os.polygonStart()},polygonEnd:function(){Os.polygonEnd(),mu.point=gu,mu.lineStart=vu,mu.lineEnd=xu,Fs<0?(Bs=-(Es=180),Ls=-(Rs=90)):Gs>Yl?Rs=90:Gs<-1e-6&&(Ls=-90),Ws[0]=Bs,Ws[1]=Es},sphere:function(){Bs=-(Es=180),Ls=-(Rs=90)}};function gu(e,t){Is.push(Ws=[Bs=e,Es=e]),tRs&&(Rs=t)}function bu(e,t){var r=$s([e*es,t*es]);if(Ns){var a=qs(Ns,r),i=qs([a[1],-a[0],0],a);Xs(i),i=Ys(i);var n,o=e-Hs,c=o>0?1:-1,l=i[0]*Xl*c,s=ts(o)>180;s^(c*HsRs&&(Rs=n):s^(c*Hs<(l=(l+360)%360-180)&&lRs&&(Rs=t)),s?e_u(Bs,Es)&&(Es=e):_u(e,Es)>_u(Bs,Es)&&(Bs=e):Es>=Bs?(eEs&&(Es=e)):e>Hs?_u(Bs,e)>_u(Bs,Es)&&(Es=e):_u(e,Es)>_u(Bs,Es)&&(Bs=e)}else Is.push(Ws=[Bs=e,Es=e]);tRs&&(Rs=t),Ns=r,Hs=e}function vu(){mu.point=bu}function xu(){Ws[0]=Bs,Ws[1]=Es,mu.point=gu,Ns=null}function ku(e,t){if(Ns){var r=e-Hs;Gs.add(ts(r)>180?r+(r>0?360:-360):r)}else Ds=e,Ps=t;Os.point(e,t),bu(e,t)}function wu(){Os.lineStart()}function Cu(){ku(Ds,Ps),Os.lineEnd(),ts(Gs)>Yl&&(Bs=-(Es=180)),Ws[0]=Bs,Ws[1]=Es,Ns=null}function _u(e,t){return(t-=e)<0?t+360:t}function Su(e,t){return e[0]-t[0]}function Au(e,t){return e[0]<=e[1]?e[0]<=t&&t<=e[1]:tUl&&(e-=Math.round(e/Ql)*Ql),[e,t]}function zu(e,t,r){return(e%=Ql)?t||r?Wu(Ku(e),Ju(t,r)):Ku(e):t||r?Ju(t,r):Fu}function Ou(e){return function(t,r){return ts(t+=e)>Ul&&(t-=Math.round(t/Ql)*Ql),[t,r]}}function Ku(e){var t=Ou(e);return t.invert=Ou(-e),t}function Ju(e,t){var r=is(e),a=us(e),i=is(t),n=us(t);function o(e,t){var o=is(t),c=is(e)*o,l=us(e)*o,s=us(t),u=s*r+c*a;return[as(l*i-u*n,c*r-s*a),fs(u*i+l*n)]}return o.invert=function(e,t){var o=is(t),c=is(e)*o,l=us(e)*o,s=us(t),u=s*i-l*n;return[as(l*i+s*n,c*r+u*a),fs(u*r-c*a)]},o}function Vu(e){function t(t){return(t=e(t[0]*es,t[1]*es))[0]*=Xl,t[1]*=Xl,t}return e=zu(e[0]*es,e[1]*es,e.length>2?e[2]*es:0),t.invert=function(t){return(t=e.invert(t[0]*es,t[1]*es))[0]*=Xl,t[1]*=Xl,t},t}function ju(e,t,r,a,i,n){if(r){var o=is(t),c=us(t),l=a*r;null==i?(i=t+a*Ql,n=t-l/2):(i=Yu(o,i),n=Yu(o,n),(a>0?in)&&(i+=a*Ql));for(var s,u=i;a>0?u>n:u1&&t.push(t.pop().concat(t.shift()))},result:function(){var r=t;return t=[],e=null,r}}}function Uu(e,t){return ts(e[0]-t[0])=0;--n)i.point((u=s[n])[0],u[1]);else a(d.x,d.p.x,-1,i);d=d.p}s=(d=d.o).z,p=!p}while(!d.v);i.lineEnd()}}}function Qu(e){if(t=e.length){for(var t,r,a=0,i=e[0];++a=0?1:-1,M=A*S,T=M>Ul,B=m*w;if(l.add(as(B*A*us(M),g*_+B*is(M))),o+=T?S+A*Ql:S,T^y>=r^x>=r){var L=qs($s(p),$s(v));Xs(L);var E=qs(n,L);Xs(E);var R=(T^S>=0?-1:1)*fs(E[2]);(a>R||a===R&&(L[0]||L[1]))&&(c+=T^S>=0?1:-1)}}return(o<-1e-6||o0){for(h||(i.polygonStart(),h=!0),i.lineStart(),e=0;e1&&2&l&&d.push(d.pop().concat(d.shift())),o.push(d.filter(rh))}return d}}function rh(e){return e.length>1}function ah(e,t){return((e=e.x)[0]<0?e[1]-ql-Yl:ql-e[1])-((t=t.x)[0]<0?t[1]-ql-Yl:ql-t[1])}Fu.invert=Fu;var ih=th((function(){return!0}),(function(e){var t,r=NaN,a=NaN,i=NaN;return{lineStart:function(){e.lineStart(),t=1},point:function(n,o){var c=n>0?Ul:-Ul,l=ts(n-r);ts(l-Ul)0?ql:-ql),e.point(i,a),e.lineEnd(),e.lineStart(),e.point(c,a),e.point(n,a),t=0):i!==c&&l>=Ul&&(ts(r-i)Yl?rs((us(t)*(n=is(a))*us(r)-us(a)*(i=is(t))*us(e))/(i*n*o)):(t+a)/2}(r,a,n,o),e.point(i,a),e.lineEnd(),e.lineStart(),e.point(c,a),t=0),e.point(r=n,a=o),i=c},lineEnd:function(){e.lineEnd(),r=a=NaN},clean:function(){return 2-t}}}),(function(e,t,r,a){var i;if(null==e)i=r*ql,a.point(-Ul,i),a.point(0,i),a.point(Ul,i),a.point(Ul,0),a.point(Ul,-i),a.point(0,-i),a.point(-Ul,-i),a.point(-Ul,0),a.point(-Ul,i);else if(ts(e[0]-t[0])>Yl){var n=e[0]0,i=ts(t)>Yl;function n(e,r){return is(e)*is(r)>t}function o(e,r,a){var i=[1,0,0],n=qs($s(e),$s(r)),o=Us(n,n),c=n[0],l=o-c*c;if(!l)return!a&&e;var s=t*o/l,u=-t*c/l,h=qs(i,n),d=Qs(i,s);Zs(d,Qs(n,u));var p=h,y=Us(d,p),f=Us(p,p),m=y*y-f*(Us(d,d)-1);if(!(m<0)){var g=ds(m),b=Qs(p,(-y-g)/f);if(Zs(b,d),b=Ys(b),!a)return b;var v,x=e[0],k=r[0],w=e[1],C=r[1];k0^b[1]<(ts(b[0]-x)Ul^(x<=b[0]&&b[0]<=k)){var A=Qs(p,(-y+g)/f);return Zs(A,d),[b,Ys(A)]}}}function c(t,r){var i=a?e:Ul-e,n=0;return t<-i?n|=1:t>i&&(n|=2),r<-i?n|=4:r>i&&(n|=8),n}return th(n,(function(e){var t,r,l,s,u;return{lineStart:function(){s=l=!1,u=1},point:function(h,d){var p,y=[h,d],f=n(h,d),m=a?f?0:c(h,d):f?c(h+(h<0?Ul:-Ul),d):0;if(!t&&(s=l=f)&&e.lineStart(),f!==l&&(!(p=o(t,y))||Uu(t,p)||Uu(y,p))&&(y[2]=1),f!==l)u=0,f?(e.lineStart(),p=o(y,t),e.point(p[0],p[1])):(p=o(t,y),e.point(p[0],p[1],2),e.lineEnd()),t=p;else if(i&&t&&a^f){var g;m&r||!(g=o(y,t,!0))||(u=0,a?(e.lineStart(),e.point(g[0][0],g[0][1]),e.point(g[1][0],g[1][1]),e.lineEnd()):(e.point(g[1][0],g[1][1]),e.lineEnd(),e.lineStart(),e.point(g[0][0],g[0][1],3)))}!f||t&&Uu(t,y)||e.point(y[0],y[1]),t=y,l=f,r=m},lineEnd:function(){l&&e.lineEnd(),t=null},clean:function(){return u|(s&&l)<<1}}}),(function(t,a,i,n){ju(n,e,r,i,t,a)}),a?[0,-e]:[-Ul,e-Ul])}var oh,ch,lh,sh,uh=1e9,hh=-uh;function dh(e,t,r,a){function i(i,n){return e<=i&&i<=r&&t<=n&&n<=a}function n(i,n,c,s){var u=0,h=0;if(null==i||(u=o(i,c))!==(h=o(n,c))||l(i,n)<0^c>0)do{s.point(0===u||3===u?e:r,u>1?a:t)}while((u=(u+c+4)%4)!==h);else s.point(n[0],n[1])}function o(a,i){return ts(a[0]-e)0?0:3:ts(a[0]-r)0?2:1:ts(a[1]-t)0?1:0:i>0?3:2}function c(e,t){return l(e.x,t.x)}function l(e,t){var r=o(e,1),a=o(t,1);return r!==a?r-a:0===r?t[1]-e[1]:1===r?e[0]-t[0]:2===r?e[1]-t[1]:t[0]-e[0]}return function(o){var l,s,u,h,d,p,y,f,m,g,b,v=o,x=$u(),k={point:w,lineStart:function(){k.point=C,s&&s.push(u=[]);g=!0,m=!1,y=f=NaN},lineEnd:function(){l&&(C(h,d),p&&m&&x.rejoin(),l.push(x.result()));k.point=w,m&&v.lineEnd()},polygonStart:function(){v=x,l=[],s=[],b=!0},polygonEnd:function(){var t=function(){for(var t=0,r=0,i=s.length;ra&&(d-n)*(a-o)>(p-o)*(e-n)&&++t:p<=a&&(d-n)*(a-o)<(p-o)*(e-n)&&--t;return t}(),r=b&&t,i=(l=ue(l)).length;(r||i)&&(o.polygonStart(),r&&(o.lineStart(),n(null,null,1,o),o.lineEnd()),i&&Zu(l,c,t,n,o),o.polygonEnd());v=o,l=s=u=null}};function w(e,t){i(e,t)&&v.point(e,t)}function C(n,o){var c=i(n,o);if(s&&u.push([n,o]),g)h=n,d=o,p=c,g=!1,c&&(v.lineStart(),v.point(n,o));else if(c&&m)v.point(n,o);else{var l=[y=Math.max(hh,Math.min(uh,y)),f=Math.max(hh,Math.min(uh,f))],x=[n=Math.max(hh,Math.min(uh,n)),o=Math.max(hh,Math.min(uh,o))];!function(e,t,r,a,i,n){var o,c=e[0],l=e[1],s=0,u=1,h=t[0]-c,d=t[1]-l;if(o=r-c,h||!(o>0)){if(o/=h,h<0){if(o0){if(o>u)return;o>s&&(s=o)}if(o=i-c,h||!(o<0)){if(o/=h,h<0){if(o>u)return;o>s&&(s=o)}else if(h>0){if(o0)){if(o/=d,d<0){if(o0){if(o>u)return;o>s&&(s=o)}if(o=n-l,d||!(o<0)){if(o/=d,d<0){if(o>u)return;o>s&&(s=o)}else if(d>0){if(o0&&(e[0]=c+s*h,e[1]=l+s*d),u<1&&(t[0]=c+u*h,t[1]=l+u*d),!0}}}}}(l,x,e,t,r,a)?c&&(v.lineStart(),v.point(n,o),b=!1):(m||(v.lineStart(),v.point(l[0],l[1])),v.point(x[0],x[1]),c||v.lineEnd(),b=!1)}y=n,f=o,m=c}return k}}var ph={sphere:gs,point:gs,lineStart:function(){ph.point=fh,ph.lineEnd=yh},lineEnd:gs,polygonStart:gs,polygonEnd:gs};function yh(){ph.point=ph.lineEnd=gs}function fh(e,t){ch=e*=es,lh=us(t*=es),sh=is(t),ph.point=mh}function mh(e,t){e*=es;var r=us(t*=es),a=is(t),i=ts(e-ch),n=is(i),o=a*us(i),c=sh*r-lh*a*n,l=lh*r+sh*a*n;oh.add(as(ds(o*o+c*c),l)),ch=e,lh=r,sh=a}function gh(e){return oh=new C,Cs(e,ph),+oh}var bh=[null,null],vh={type:"LineString",coordinates:bh};function xh(e,t){return bh[0]=e,bh[1]=t,gh(vh)}var kh={Feature:function(e,t){return Ch(e.geometry,t)},FeatureCollection:function(e,t){for(var r=e.features,a=-1,i=r.length;++a0&&(i=xh(e[n],e[n-1]))>0&&r<=i&&a<=i&&(r+a-i)*(1-Math.pow((r-a)/i,2))<$l*i)return!0;r=a}return!1}function Ah(e,t){return!!eh(e.map(Mh),Th(t))}function Mh(e){return(e=e.map(Th)).pop(),e}function Th(e){return[e[0]*es,e[1]*es]}function Bh(e,t,r){var a=de(e,t-Yl,r).concat(t);return function(e){return a.map((function(t){return[e,t]}))}}function Lh(e,t,r){var a=de(e,t-Yl,r).concat(t);return function(e){return a.map((function(t){return[t,e]}))}}function Eh(){var e,t,r,a,i,n,o,c,l,s,u,h,d=10,p=d,y=90,f=360,m=2.5;function g(){return{type:"MultiLineString",coordinates:b()}}function b(){return de(ns(a/y)*y,r,y).map(u).concat(de(ns(c/f)*f,o,f).map(h)).concat(de(ns(t/d)*d,e,d).filter((function(e){return ts(e%y)>Yl})).map(l)).concat(de(ns(n/p)*p,i,p).filter((function(e){return ts(e%f)>Yl})).map(s))}return g.lines=function(){return b().map((function(e){return{type:"LineString",coordinates:e}}))},g.outline=function(){return{type:"Polygon",coordinates:[u(a).concat(h(o).slice(1),u(r).reverse().slice(1),h(c).reverse().slice(1))]}},g.extent=function(e){return arguments.length?g.extentMajor(e).extentMinor(e):g.extentMinor()},g.extentMajor=function(e){return arguments.length?(a=+e[0][0],r=+e[1][0],c=+e[0][1],o=+e[1][1],a>r&&(e=a,a=r,r=e),c>o&&(e=c,c=o,o=e),g.precision(m)):[[a,c],[r,o]]},g.extentMinor=function(r){return arguments.length?(t=+r[0][0],e=+r[1][0],n=+r[0][1],i=+r[1][1],t>e&&(r=t,t=e,e=r),n>i&&(r=n,n=i,i=r),g.precision(m)):[[t,n],[e,i]]},g.step=function(e){return arguments.length?g.stepMajor(e).stepMinor(e):g.stepMinor()},g.stepMajor=function(e){return arguments.length?(y=+e[0],f=+e[1],g):[y,f]},g.stepMinor=function(e){return arguments.length?(d=+e[0],p=+e[1],g):[d,p]},g.precision=function(d){return arguments.length?(m=+d,l=Bh(n,i,90),s=Lh(t,e,m),u=Bh(c,o,90),h=Lh(a,r,m),g):m},g.extentMajor([[-180,-89.999999],[180,89.999999]]).extentMinor([[-180,-80.000001],[180,80.000001]])}var Rh,Hh,Dh,Ph,Nh=e=>e,Gh=new C,Ih=new C,Wh={point:gs,lineStart:gs,lineEnd:gs,polygonStart:function(){Wh.lineStart=Fh,Wh.lineEnd=Kh},polygonEnd:function(){Wh.lineStart=Wh.lineEnd=Wh.point=gs,Gh.add(ts(Ih)),Ih=new C},result:function(){var e=Gh/2;return Gh=new C,e}};function Fh(){Wh.point=zh}function zh(e,t){Wh.point=Oh,Rh=Dh=e,Hh=Ph=t}function Oh(e,t){Ih.add(Ph*e-Dh*t),Dh=e,Ph=t}function Kh(){Oh(Rh,Hh)}var Jh=1/0,Vh=Jh,jh=-Jh,Yh=jh,$h={point:function(e,t){ejh&&(jh=e);tYh&&(Yh=t)},lineStart:gs,lineEnd:gs,polygonStart:gs,polygonEnd:gs,result:function(){var e=[[Jh,Vh],[jh,Yh]];return jh=Yh=-(Vh=Jh=1/0),e}};var Uh,qh,Zh,Qh,Xh=0,ed=0,td=0,rd=0,ad=0,id=0,nd=0,od=0,cd=0,ld={point:sd,lineStart:ud,lineEnd:pd,polygonStart:function(){ld.lineStart=yd,ld.lineEnd=fd},polygonEnd:function(){ld.point=sd,ld.lineStart=ud,ld.lineEnd=pd},result:function(){var e=cd?[nd/cd,od/cd]:id?[rd/id,ad/id]:td?[Xh/td,ed/td]:[NaN,NaN];return Xh=ed=td=rd=ad=id=nd=od=cd=0,e}};function sd(e,t){Xh+=e,ed+=t,++td}function ud(){ld.point=hd}function hd(e,t){ld.point=dd,sd(Zh=e,Qh=t)}function dd(e,t){var r=e-Zh,a=t-Qh,i=ds(r*r+a*a);rd+=i*(Zh+e)/2,ad+=i*(Qh+t)/2,id+=i,sd(Zh=e,Qh=t)}function pd(){ld.point=sd}function yd(){ld.point=md}function fd(){gd(Uh,qh)}function md(e,t){ld.point=gd,sd(Uh=Zh=e,qh=Qh=t)}function gd(e,t){var r=e-Zh,a=t-Qh,i=ds(r*r+a*a);rd+=i*(Zh+e)/2,ad+=i*(Qh+t)/2,id+=i,nd+=(i=Qh*e-Zh*t)*(Zh+e),od+=i*(Qh+t),cd+=3*i,sd(Zh=e,Qh=t)}function bd(e){this._context=e}bd.prototype={_radius:4.5,pointRadius:function(e){return this._radius=e,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){0===this._line&&this._context.closePath(),this._point=NaN},point:function(e,t){switch(this._point){case 0:this._context.moveTo(e,t),this._point=1;break;case 1:this._context.lineTo(e,t);break;default:this._context.moveTo(e+this._radius,t),this._context.arc(e,t,this._radius,0,Ql)}},result:gs};var vd,xd,kd,wd,Cd,_d=new C,Sd={point:gs,lineStart:function(){Sd.point=Ad},lineEnd:function(){vd&&Md(xd,kd),Sd.point=gs},polygonStart:function(){vd=!0},polygonEnd:function(){vd=null},result:function(){var e=+_d;return _d=new C,e}};function Ad(e,t){Sd.point=Md,xd=wd=e,kd=Cd=t}function Md(e,t){wd-=e,Cd-=t,_d.add(ds(wd*wd+Cd*Cd)),wd=e,Cd=t}let Td,Bd,Ld,Ed;class Rd{constructor(e){this._append=null==e?Hd:function(e){const t=Math.floor(e);if(!(t>=0))throw new RangeError(`invalid digits: ${e}`);if(t>15)return Hd;if(t!==Td){const e=10**t;Td=t,Bd=function(t){let r=1;this._+=t[0];for(const a=t.length;r4*t&&f--){var x=o+d,k=c+p,w=l+y,C=ds(x*x+k*k+w*w),_=fs(w/=C),S=ts(ts(w)-1)t||ts((g*B+b*L)/v-.5)>.3||o*d+c*p+l*y2?e[2]%360*es:0,B()):[m*Xl,g*Xl,b*Xl]},M.angle=function(e){return arguments.length?(v=e%360*es,B()):v*Xl},M.reflectX=function(e){return arguments.length?(x=e?-1:1,B()):x<0},M.reflectY=function(e){return arguments.length?(k=e?-1:1,B()):k<0},M.precision=function(e){return arguments.length?(o=Od(c,A=e*e),L()):ds(A)},M.fitExtent=function(e,t){return Gd(M,e,t)},M.fitSize=function(e,t){return Id(M,e,t)},M.fitWidth=function(e,t){return Wd(M,e,t)},M.fitHeight=function(e,t){return Fd(M,e,t)},function(){return t=e.apply(this,arguments),M.invert=t.invert&&T,B()}}function Yd(e){var t=0,r=Ul/3,a=jd(e),i=a(t,r);return i.parallels=function(e){return arguments.length?a(t=e[0]*es,r=e[1]*es):[t*Xl,r*Xl]},i}function $d(e,t){var r=us(e),a=(r+us(t))/2;if(ts(a)0?t<-ql+Yl&&(t=-ql+Yl):t>ql-Yl&&(t=ql-Yl);var r=i/ss(ap(t),a);return[r*us(a*e),i-r*is(a*e)]}return n.invert=function(e,t){var r=i-t,n=hs(a)*ds(e*e+r*r),o=as(e,ts(r))*hs(r);return r*a<0&&(o-=Ul*hs(e)*hs(r)),[o/a,2*rs(ss(i/n,1/a))-ql]},n}function np(e,t){return[e,t]}function op(e,t){var r=is(e),a=e===t?us(e):(r-is(t))/(t-e),i=r/a+e;if(ts(a)=0;)t+=r[a].value;else t=1;e.value=t}function Cp(e,t){e instanceof Map?(e=[void 0,e],void 0===t&&(t=Sp)):void 0===t&&(t=_p);for(var r,a,i,n,o,c=new Tp(e),l=[c];r=l.pop();)if((i=t(r.data))&&(o=(i=Array.from(i)).length))for(r.children=i,n=o-1;n>=0;--n)l.push(a=i[n]=new Tp(i[n])),a.parent=r,a.depth=r.depth+1;return c.eachBefore(Mp)}function _p(e){return e.children}function Sp(e){return Array.isArray(e)?e[1]:null}function Ap(e){void 0!==e.data.value&&(e.value=e.data.value),e.data=e.data.data}function Mp(e){var t=0;do{e.height=t}while((e=e.parent)&&e.height<++t)}function Tp(e){this.data=e,this.depth=this.height=0,this.parent=null}function Bp(e){return null==e?null:Lp(e)}function Lp(e){if("function"!=typeof e)throw new Error;return e}function Ep(){return 0}function Rp(e){return function(){return e}}dp.invert=function(e,t){for(var r,a=t,i=a*a,n=i*i*i,o=0;o<12&&(n=(i=(a-=r=(a*(cp+lp*i+n*(sp+up*i))-t)/(cp+3*lp*i+n*(7*sp+9*up*i)))*a)*i*i,!(ts(r)<$l));++o);return[hp*e*(cp+3*lp*i+n*(7*sp+9*up*i))/is(a),fs(us(a)/hp)]},pp.invert=Qd(rs),yp.invert=function(e,t){var r,a=t,i=25;do{var n=a*a,o=n*n;a-=r=(a*(1.007226+n*(.015085+o*(.028874*n-.044475-.005916*o)))-t)/(1.007226+n*(.045255+o*(.259866*n-.311325-.005916*11*o)))}while(ts(r)>Yl&&--i>0);return[e/(.8707+(n=a*a)*(n*(n*n*n*(.003971-.001529*n)-.013791)-.131979)),a]},fp.invert=Qd(fs),mp.invert=Qd((function(e){return 2*rs(e)})),gp.invert=function(e,t){return[-t,2*rs(os(e))-ql]},Tp.prototype=Cp.prototype={constructor:Tp,count:function(){return this.eachAfter(wp)},each:function(e,t){let r=-1;for(const a of this)e.call(t,a,++r,this);return this},eachAfter:function(e,t){for(var r,a,i,n=this,o=[n],c=[],l=-1;n=o.pop();)if(c.push(n),r=n.children)for(a=0,i=r.length;a=0;--a)n.push(r[a]);return this},find:function(e,t){let r=-1;for(const a of this)if(e.call(t,a,++r,this))return a},sum:function(e){return this.eachAfter((function(t){for(var r=+e(t.data)||0,a=t.children,i=a&&a.length;--i>=0;)r+=a[i].value;t.value=r}))},sort:function(e){return this.eachBefore((function(t){t.children&&t.children.sort(e)}))},path:function(e){for(var t=this,r=function(e,t){if(e===t)return e;var r=e.ancestors(),a=t.ancestors(),i=null;e=r.pop(),t=a.pop();for(;e===t;)i=e,e=r.pop(),t=a.pop();return i}(t,e),a=[t];t!==r;)t=t.parent,a.push(t);for(var i=a.length;e!==r;)a.splice(i,0,e),e=e.parent;return a},ancestors:function(){for(var e=this,t=[e];e=e.parent;)t.push(e);return t},descendants:function(){return Array.from(this)},leaves:function(){var e=[];return this.eachBefore((function(t){t.children||e.push(t)})),e},links:function(){var e=this,t=[];return e.each((function(r){r!==e&&t.push({source:r.parent,target:r})})),t},copy:function(){return Cp(this).eachBefore(Ap)},[Symbol.iterator]:function*(){var e,t,r,a,i=this,n=[i];do{for(e=n.reverse(),n=[];i=e.pop();)if(yield i,t=i.children)for(r=0,a=t.length;r(e=(1664525*e+1013904223)%Hp)/Hp}function Pp(e,t){for(var r,a,i=0,n=(e=function(e,t){let r,a,i=e.length;for(;i;)a=t()*i--|0,r=e[i],e[i]=e[a],e[a]=r;return e}(Array.from(e),t)).length,o=[];i0&&r*r>a*a+i*i}function Wp(e,t){for(var r=0;r1e-6?(M+Math.sqrt(M*M-4*A*T))/(2*A):T/M);return{x:a+w+C*B,y:i+_+S*B,r:B}}function Kp(e,t,r){var a,i,n,o,c=e.x-t.x,l=e.y-t.y,s=c*c+l*l;s?(i=t.r+r.r,i*=i,o=e.r+r.r,i>(o*=o)?(a=(s+o-i)/(2*s),n=Math.sqrt(Math.max(0,o/s-a*a)),r.x=e.x-a*c-n*l,r.y=e.y-a*l+n*c):(a=(s+i-o)/(2*s),n=Math.sqrt(Math.max(0,i/s-a*a)),r.x=t.x+a*c-n*l,r.y=t.y+a*l+n*c)):(r.x=t.x+r.r,r.y=t.y)}function Jp(e,t){var r=e.r+t.r-1e-6,a=t.x-e.x,i=t.y-e.y;return r>0&&r*r>a*a+i*i}function Vp(e){var t=e._,r=e.next._,a=t.r+r.r,i=(t.x*r.r+r.x*t.r)/a,n=(t.y*r.r+r.y*t.r)/a;return i*i+n*n}function jp(e){this._=e,this.next=null,this.previous=null}function Yp(e,t){if(!(n=(e=function(e){return"object"==typeof e&&"length"in e?e:Array.from(e)}(e)).length))return 0;var r,a,i,n,o,c,l,s,u,h,d;if((r=e[0]).x=0,r.y=0,!(n>1))return r.r;if(a=e[1],r.x=-a.r,a.x=r.r,a.y=0,!(n>2))return r.r+a.r;Kp(a,r,i=e[2]),r=new jp(r),a=new jp(a),i=new jp(i),r.next=i.previous=a,a.next=r.previous=i,i.next=a.previous=r;e:for(l=3;l1&&!oy(e,t););return e.slice(0,t)}function oy(e,t){if("/"===e[t]){let r=0;for(;t>0&&"\\"===e[--t];)++r;if(!(1&r))return!0}return!1}function cy(e,t){return e.parent===t.parent?1:2}function ly(e){var t=e.children;return t?t[0]:e.t}function sy(e){var t=e.children;return t?t[t.length-1]:e.t}function uy(e,t,r){var a=r/(t.i-e.i);t.c-=a,t.s+=r,e.c+=a,t.z+=r,t.m+=r}function hy(e,t,r){return e.a.parent===t.parent?e.a:r}function dy(e,t){this._=e,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=t}function py(){var e=cy,t=1,r=1,a=null;function i(i){var l=function(e){for(var t,r,a,i,n,o=new dy(e,0),c=[o];t=c.pop();)if(a=t._.children)for(t.children=new Array(n=a.length),i=n-1;i>=0;--i)c.push(r=t.children[i]=new dy(a[i],i)),r.parent=t;return(o.parent=new dy(null,0)).children=[o],o}(i);if(l.eachAfter(n),l.parent.m=-l.z,l.eachBefore(o),a)i.eachBefore(c);else{var s=i,u=i,h=i;i.eachBefore((function(e){e.xu.x&&(u=e),e.depth>h.depth&&(h=e)}));var d=s===u?1:e(s,u)/2,p=d-s.x,y=t/(u.x+d+p),f=r/(h.depth||1);i.eachBefore((function(e){e.x=(e.x+p)*y,e.y=e.depth*f}))}return i}function n(t){var r=t.children,a=t.parent.children,i=t.i?a[t.i-1]:null;if(r){!function(e){for(var t,r=0,a=0,i=e.children,n=i.length;--n>=0;)(t=i[n]).z+=r,t.m+=r,r+=t.s+(a+=t.c)}(t);var n=(r[0].z+r[r.length-1].z)/2;i?(t.z=i.z+e(t._,i._),t.m=t.z-n):t.z=n}else i&&(t.z=i.z+e(t._,i._));t.parent.A=function(t,r,a){if(r){for(var i,n=t,o=t,c=r,l=n.parent.children[0],s=n.m,u=o.m,h=c.m,d=l.m;c=sy(c),n=ly(n),c&&n;)l=ly(l),(o=sy(o)).a=t,(i=c.z+h-n.z-s+e(c._,n._))>0&&(uy(hy(c,t,a),t,i),s+=i,u+=i),h+=c.m,s+=n.m,d+=l.m,u+=o.m;c&&!sy(o)&&(o.t=c,o.m+=h-u),n&&!ly(l)&&(l.t=n,l.m+=s-d,a=t)}return a}(t,i,t.parent.A||a[0])}function o(e){e._.x=e.z+e.parent.m,e.m+=e.parent.m}function c(e){e.x*=t,e.y=e.depth*r}return i.separation=function(t){return arguments.length?(e=t,i):e},i.size=function(e){return arguments.length?(a=!1,t=+e[0],r=+e[1],i):a?null:[t,r]},i.nodeSize=function(e){return arguments.length?(a=!0,t=+e[0],r=+e[1],i):a?[t,r]:null},i}function yy(e,t,r,a,i){for(var n,o=e.children,c=-1,l=o.length,s=e.value&&(i-r)/e.value;++cd&&(d=c),m=u*u*f,(p=Math.max(d/m,m/h))>y){u-=c;break}y=p}g.push(o={value:u,dice:l1?t:1)},r}(fy);var by=function e(t){function r(e,r,a,i,n){if((o=e._squarify)&&o.ratio===t)for(var o,c,l,s,u,h=-1,d=o.length,p=e.value;++h1?t:1)},r}(fy);function vy(e,t,r){return(t[0]-e[0])*(r[1]-e[1])-(t[1]-e[1])*(r[0]-e[0])}function xy(e,t){return e[0]-t[0]||e[1]-t[1]}function ky(e){const t=e.length,r=[0,1];let a,i=2;for(a=2;a1&&vy(e[r[i-2]],e[r[i-1]],e[a])<=0;)--i;r[i++]=a}return r.slice(0,i)}var wy=Math.random,Cy=function e(t){function r(e,r){return e=null==e?0:+e,r=null==r?1:+r,1===arguments.length?(r=e,e=0):r-=e,function(){return t()*r+e}}return r.source=e,r}(wy),_y=function e(t){function r(e,r){return arguments.length<2&&(r=e,e=0),e=Math.floor(e),r=Math.floor(r)-e,function(){return Math.floor(t()*r+e)}}return r.source=e,r}(wy),Sy=function e(t){function r(e,r){var a,i;return e=null==e?0:+e,r=null==r?1:+r,function(){var n;if(null!=a)n=a,a=null;else do{a=2*t()-1,n=2*t()-1,i=a*a+n*n}while(!i||i>1);return e+r*n*Math.sqrt(-2*Math.log(i)/i)}}return r.source=e,r}(wy),Ay=function e(t){var r=Sy.source(t);function a(){var e=r.apply(this,arguments);return function(){return Math.exp(e())}}return a.source=e,a}(wy),My=function e(t){function r(e){return(e=+e)<=0?()=>0:function(){for(var r=0,a=e;a>1;--a)r+=t();return r+a*t()}}return r.source=e,r}(wy),Ty=function e(t){var r=My.source(t);function a(e){if(0==(e=+e))return t;var a=r(e);return function(){return a()/e}}return a.source=e,a}(wy),By=function e(t){function r(e){return function(){return-Math.log1p(-t())/e}}return r.source=e,r}(wy),Ly=function e(t){function r(e){if((e=+e)<0)throw new RangeError("invalid alpha");return e=1/-e,function(){return Math.pow(1-t(),e)}}return r.source=e,r}(wy),Ey=function e(t){function r(e){if((e=+e)<0||e>1)throw new RangeError("invalid p");return function(){return Math.floor(t()+e)}}return r.source=e,r}(wy),Ry=function e(t){function r(e){if((e=+e)<0||e>1)throw new RangeError("invalid p");return 0===e?()=>1/0:1===e?()=>1:(e=Math.log1p(-e),function(){return 1+Math.floor(Math.log1p(-t())/e)})}return r.source=e,r}(wy),Hy=function e(t){var r=Sy.source(t)();function a(e,a){if((e=+e)<0)throw new RangeError("invalid k");if(0===e)return()=>0;if(a=null==a?1:+a,1===e)return()=>-Math.log1p(-t())*a;var i=(e<1?e+1:e)-1/3,n=1/(3*Math.sqrt(i)),o=e<1?()=>Math.pow(t(),1/e):()=>1;return function(){do{do{var e=r(),c=1+n*e}while(c<=0);c*=c*c;var l=1-t()}while(l>=1-.0331*e*e*e*e&&Math.log(l)>=.5*e*e+i*(1-c+Math.log(c)));return i*c*o()*a}}return a.source=e,a}(wy),Dy=function e(t){var r=Hy.source(t);function a(e,t){var a=r(e),i=r(t);return function(){var e=a();return 0===e?0:e/(e+i())}}return a.source=e,a}(wy),Py=function e(t){var r=Ry.source(t),a=Dy.source(t);function i(e,t){return e=+e,(t=+t)>=1?()=>e:t<=0?()=>0:function(){for(var i=0,n=e,o=t;n*o>16&&n*(1-o)>16;){var c=Math.floor((n+1)*o),l=a(c,n-c+1)();l<=o?(i+=c,n-=c,o=(o-l)/(1-l)):(n=c-1,o/=l)}for(var s=o<.5,u=r(s?o:1-o),h=u(),d=0;h<=n;++d)h+=u();return i+(s?d:n-d)}}return i.source=e,i}(wy),Ny=function e(t){function r(e,r,a){var i;return 0==(e=+e)?i=e=>-Math.log(e):(e=1/e,i=t=>Math.pow(t,e)),r=null==r?0:+r,a=null==a?1:+a,function(){return r+a*i(-Math.log1p(-t()))}}return r.source=e,r}(wy),Gy=function e(t){function r(e,r){return e=null==e?0:+e,r=null==r?1:+r,function(){return e+r*Math.tan(Math.PI*t())}}return r.source=e,r}(wy),Iy=function e(t){function r(e,r){return e=null==e?0:+e,r=null==r?1:+r,function(){var a=t();return e+r*Math.log(a/(1-a))}}return r.source=e,r}(wy),Wy=function e(t){var r=Hy.source(t),a=Py.source(t);function i(e){return function(){for(var i=0,n=e;n>16;){var o=Math.floor(.875*n),c=r(o)();if(c>n)return i+a(o-1,n/c)();i+=o,n-=c}for(var l=-Math.log1p(-t()),s=0;l<=n;++s)l-=Math.log1p(-t());return i+s}}return i.source=e,i}(wy);const Fy=1/4294967296;function zy(e,t){switch(arguments.length){case 0:break;case 1:this.range(e);break;default:this.range(t).domain(e)}return this}function Oy(e,t){switch(arguments.length){case 0:break;case 1:"function"==typeof e?this.interpolator(e):this.range(e);break;default:this.domain(e),"function"==typeof t?this.interpolator(t):this.range(t)}return this}const Ky=Symbol("implicit");function Jy(){var e=new _,t=[],r=[],a=Ky;function i(i){let n=e.get(i);if(void 0===n){if(a!==Ky)return a;e.set(i,n=t.push(i)-1)}return r[n%r.length]}return i.domain=function(r){if(!arguments.length)return t.slice();t=[],e=new _;for(const a of r)e.has(a)||e.set(a,t.push(a)-1);return i},i.range=function(e){return arguments.length?(r=Array.from(e),i):r.slice()},i.unknown=function(e){return arguments.length?(a=e,i):a},i.copy=function(){return Jy(t,r).unknown(a)},zy.apply(i,arguments),i}function Vy(){var e,t,r=Jy().unknown(void 0),a=r.domain,i=r.range,n=0,o=1,c=!1,l=0,s=0,u=.5;function h(){var r=a().length,h=ot&&(r=e,e=t,t=r),function(r){return Math.max(e,Math.min(t,r))}}(o[0],o[e-1])),a=e>2?Qy:Zy,i=n=null,h}function h(t){return null==t||isNaN(t=+t)?r:(i||(i=a(o.map(e),c,l)))(e(s(t)))}return h.invert=function(r){return s(t((n||(n=a(c,o.map(e),Wa)))(r)))},h.domain=function(e){return arguments.length?(o=Array.from(e,Yy),u()):o.slice()},h.range=function(e){return arguments.length?(c=Array.from(e),u()):c.slice()},h.rangeRound=function(e){return c=Array.from(e),l=Va,u()},h.clamp=function(e){return arguments.length?(s=!!e||Uy,u()):s!==Uy},h.interpolate=function(e){return arguments.length?(l=e,u()):l},h.unknown=function(e){return arguments.length?(r=e,h):r},function(r,a){return e=r,t=a,u()}}function tf(){return ef()(Uy,Uy)}function rf(e,t,r,a){var i,n=q(e,t,r);switch((a=Rl(null==a?",f":a)).type){case"s":var o=Math.max(Math.abs(e),Math.abs(t));return null!=a.precision||isNaN(i=Vl(n,o))||(a.precision=i),Wl(a,o);case"":case"e":case"g":case"p":case"r":null!=a.precision||isNaN(i=jl(n,Math.max(Math.abs(e),Math.abs(t))))||(a.precision=i-("e"===a.type));break;case"f":case"%":null!=a.precision||isNaN(i=Jl(n))||(a.precision=i-2*("%"===a.type))}return Il(a)}function af(e){var t=e.domain;return e.ticks=function(e){var r=t();return $(r[0],r[r.length-1],null==e?10:e)},e.tickFormat=function(e,r){var a=t();return rf(a[0],a[a.length-1],null==e?10:e,r)},e.nice=function(r){null==r&&(r=10);var a,i,n=t(),o=0,c=n.length-1,l=n[o],s=n[c],u=10;for(s0;){if((i=U(l,s,r))===a)return n[o]=l,n[c]=s,t(n);if(i>0)l=Math.floor(l/i)*i,s=Math.ceil(s/i)*i;else{if(!(i<0))break;l=Math.ceil(l*i)/i,s=Math.floor(s*i)/i}a=i}return e},e}function nf(e,t){var r,a=0,i=(e=e.slice()).length-1,n=e[a],o=e[i];return o-e(-t,r)}function df(e){const t=e(of,cf),r=t.domain;let a,i,n=10;function o(){return a=function(e){return e===Math.E?Math.log:10===e&&Math.log10||2===e&&Math.log2||(e=Math.log(e),t=>Math.log(t)/e)}(n),i=function(e){return 10===e?uf:e===Math.E?Math.exp:t=>Math.pow(e,t)}(n),r()[0]<0?(a=hf(a),i=hf(i),e(lf,sf)):e(of,cf),t}return t.base=function(e){return arguments.length?(n=+e,o()):n},t.domain=function(e){return arguments.length?(r(e),o()):r()},t.ticks=e=>{const t=r();let o=t[0],c=t[t.length-1];const l=c0){for(;h<=d;++h)for(s=1;sc)break;y.push(u)}}else for(;h<=d;++h)for(s=n-1;s>=1;--s)if(u=h>0?s/i(-h):s*i(h),!(uc)break;y.push(u)}2*y.length{if(null==e&&(e=10),null==r&&(r=10===n?"s":","),"function"!=typeof r&&(n%1||null!=(r=Rl(r)).precision||(r.trim=!0),r=Il(r)),e===1/0)return r;const o=Math.max(1,n*e/t.ticks().length);return e=>{let t=e/i(Math.round(a(e)));return t*nr(nf(r(),{floor:e=>i(Math.floor(a(e))),ceil:e=>i(Math.ceil(a(e)))})),t}function pf(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function yf(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function ff(e){var t=1,r=e(pf(t),yf(t));return r.constant=function(r){return arguments.length?e(pf(t=+r),yf(t)):t},af(r)}function mf(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}}function gf(e){return e<0?-Math.sqrt(-e):Math.sqrt(e)}function bf(e){return e<0?-e*e:e*e}function vf(e){var t=e(Uy,Uy),r=1;return t.exponent=function(t){return arguments.length?1===(r=+t)?e(Uy,Uy):.5===r?e(gf,bf):e(mf(r),mf(1/r)):r},af(t)}function xf(){var e=vf(ef());return e.copy=function(){return Xy(e,xf()).exponent(e.exponent())},zy.apply(e,arguments),e}function kf(e){return Math.sign(e)*e*e}const wf=new Date,Cf=new Date;function _f(e,t,r,a){function i(t){return e(t=0===arguments.length?new Date:new Date(+t)),t}return i.floor=t=>(e(t=new Date(+t)),t),i.ceil=r=>(e(r=new Date(r-1)),t(r,1),e(r),r),i.round=e=>{const t=i(e),r=i.ceil(e);return e-t(t(e=new Date(+e),null==r?1:Math.floor(r)),e),i.range=(r,a,n)=>{const o=[];if(r=i.ceil(r),n=null==n?1:Math.floor(n),!(r0))return o;let c;do{o.push(c=new Date(+r)),t(r,n),e(r)}while(c_f((t=>{if(t>=t)for(;e(t),!r(t);)t.setTime(t-1)}),((e,a)=>{if(e>=e)if(a<0)for(;++a<=0;)for(;t(e,-1),!r(e););else for(;--a>=0;)for(;t(e,1),!r(e););})),r&&(i.count=(t,a)=>(wf.setTime(+t),Cf.setTime(+a),e(wf),e(Cf),Math.floor(r(wf,Cf))),i.every=e=>(e=Math.floor(e),isFinite(e)&&e>0?e>1?i.filter(a?t=>a(t)%e==0:t=>i.count(0,t)%e==0):i:null)),i}const Sf=_f((()=>{}),((e,t)=>{e.setTime(+e+t)}),((e,t)=>t-e));Sf.every=e=>(e=Math.floor(e),isFinite(e)&&e>0?e>1?_f((t=>{t.setTime(Math.floor(t/e)*e)}),((t,r)=>{t.setTime(+t+r*e)}),((t,r)=>(r-t)/e)):Sf:null);const Af=Sf.range,Mf=1e3,Tf=6e4,Bf=36e5,Lf=864e5,Ef=6048e5,Rf=2592e6,Hf=31536e6,Df=_f((e=>{e.setTime(e-e.getMilliseconds())}),((e,t)=>{e.setTime(+e+t*Mf)}),((e,t)=>(t-e)/Mf),(e=>e.getUTCSeconds())),Pf=Df.range,Nf=_f((e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*Mf)}),((e,t)=>{e.setTime(+e+t*Tf)}),((e,t)=>(t-e)/Tf),(e=>e.getMinutes())),Gf=Nf.range,If=_f((e=>{e.setUTCSeconds(0,0)}),((e,t)=>{e.setTime(+e+t*Tf)}),((e,t)=>(t-e)/Tf),(e=>e.getUTCMinutes())),Wf=If.range,Ff=_f((e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*Mf-e.getMinutes()*Tf)}),((e,t)=>{e.setTime(+e+t*Bf)}),((e,t)=>(t-e)/Bf),(e=>e.getHours())),zf=Ff.range,Of=_f((e=>{e.setUTCMinutes(0,0,0)}),((e,t)=>{e.setTime(+e+t*Bf)}),((e,t)=>(t-e)/Bf),(e=>e.getUTCHours())),Kf=Of.range,Jf=_f((e=>e.setHours(0,0,0,0)),((e,t)=>e.setDate(e.getDate()+t)),((e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*Tf)/Lf),(e=>e.getDate()-1)),Vf=Jf.range,jf=_f((e=>{e.setUTCHours(0,0,0,0)}),((e,t)=>{e.setUTCDate(e.getUTCDate()+t)}),((e,t)=>(t-e)/Lf),(e=>e.getUTCDate()-1)),Yf=jf.range,$f=_f((e=>{e.setUTCHours(0,0,0,0)}),((e,t)=>{e.setUTCDate(e.getUTCDate()+t)}),((e,t)=>(t-e)/Lf),(e=>Math.floor(e/Lf))),Uf=$f.range;function qf(e){return _f((t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)}),((e,t)=>{e.setDate(e.getDate()+7*t)}),((e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*Tf)/Ef))}const Zf=qf(0),Qf=qf(1),Xf=qf(2),em=qf(3),tm=qf(4),rm=qf(5),am=qf(6),im=Zf.range,nm=Qf.range,om=Xf.range,cm=em.range,lm=tm.range,sm=rm.range,um=am.range;function hm(e){return _f((t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)}),((e,t)=>{e.setUTCDate(e.getUTCDate()+7*t)}),((e,t)=>(t-e)/Ef))}const dm=hm(0),pm=hm(1),ym=hm(2),fm=hm(3),mm=hm(4),gm=hm(5),bm=hm(6),vm=dm.range,xm=pm.range,km=ym.range,wm=fm.range,Cm=mm.range,_m=gm.range,Sm=bm.range,Am=_f((e=>{e.setDate(1),e.setHours(0,0,0,0)}),((e,t)=>{e.setMonth(e.getMonth()+t)}),((e,t)=>t.getMonth()-e.getMonth()+12*(t.getFullYear()-e.getFullYear())),(e=>e.getMonth())),Mm=Am.range,Tm=_f((e=>{e.setUTCDate(1),e.setUTCHours(0,0,0,0)}),((e,t)=>{e.setUTCMonth(e.getUTCMonth()+t)}),((e,t)=>t.getUTCMonth()-e.getUTCMonth()+12*(t.getUTCFullYear()-e.getUTCFullYear())),(e=>e.getUTCMonth())),Bm=Tm.range,Lm=_f((e=>{e.setMonth(0,1),e.setHours(0,0,0,0)}),((e,t)=>{e.setFullYear(e.getFullYear()+t)}),((e,t)=>t.getFullYear()-e.getFullYear()),(e=>e.getFullYear()));Lm.every=e=>isFinite(e=Math.floor(e))&&e>0?_f((t=>{t.setFullYear(Math.floor(t.getFullYear()/e)*e),t.setMonth(0,1),t.setHours(0,0,0,0)}),((t,r)=>{t.setFullYear(t.getFullYear()+r*e)})):null;const Em=Lm.range,Rm=_f((e=>{e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)}),((e,t)=>{e.setUTCFullYear(e.getUTCFullYear()+t)}),((e,t)=>t.getUTCFullYear()-e.getUTCFullYear()),(e=>e.getUTCFullYear()));Rm.every=e=>isFinite(e=Math.floor(e))&&e>0?_f((t=>{t.setUTCFullYear(Math.floor(t.getUTCFullYear()/e)*e),t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)}),((t,r)=>{t.setUTCFullYear(t.getUTCFullYear()+r*e)})):null;const Hm=Rm.range;function Dm(e,t,r,i,n,o){const c=[[Df,1,Mf],[Df,5,5e3],[Df,15,15e3],[Df,30,3e4],[o,1,Tf],[o,5,3e5],[o,15,9e5],[o,30,18e5],[n,1,Bf],[n,3,108e5],[n,6,216e5],[n,12,432e5],[i,1,Lf],[i,2,1728e5],[r,1,Ef],[t,1,Rf],[t,3,7776e6],[e,1,Hf]];function l(t,r,i){const n=Math.abs(r-t)/i,o=a((([,,e])=>e)).right(c,n);if(o===c.length)return e.every(q(t/Hf,r/Hf,i));if(0===o)return Sf.every(Math.max(q(t,r,i),1));const[l,s]=c[n/c[o-1][2]=12)]},q:function(e){return 1+~~(e.getMonth()/3)},Q:sb,s:ub,S:Lg,u:Eg,U:Rg,V:Dg,w:Pg,W:Ng,x:null,X:null,y:Gg,Y:Wg,Z:zg,"%":lb},x={a:function(e){return o[e.getUTCDay()]},A:function(e){return n[e.getUTCDay()]},b:function(e){return l[e.getUTCMonth()]},B:function(e){return c[e.getUTCMonth()]},c:null,d:Og,e:Og,f:Yg,g:ib,G:ob,H:Kg,I:Jg,j:Vg,L:jg,m:$g,M:Ug,p:function(e){return i[+(e.getUTCHours()>=12)]},q:function(e){return 1+~~(e.getUTCMonth()/3)},Q:sb,s:ub,S:qg,u:Zg,U:Qg,V:eb,w:tb,W:rb,x:null,X:null,y:ab,Y:nb,Z:cb,"%":lb},k={a:function(e,t,r){var a=p.exec(t.slice(r));return a?(e.w=y.get(a[0].toLowerCase()),r+a[0].length):-1},A:function(e,t,r){var a=h.exec(t.slice(r));return a?(e.w=d.get(a[0].toLowerCase()),r+a[0].length):-1},b:function(e,t,r){var a=g.exec(t.slice(r));return a?(e.m=b.get(a[0].toLowerCase()),r+a[0].length):-1},B:function(e,t,r){var a=f.exec(t.slice(r));return a?(e.m=m.get(a[0].toLowerCase()),r+a[0].length):-1},c:function(e,r,a){return _(e,t,r,a)},d:dg,e:dg,f:bg,g:lg,G:cg,H:yg,I:yg,j:pg,L:gg,m:hg,M:fg,p:function(e,t,r){var a=s.exec(t.slice(r));return a?(e.p=u.get(a[0].toLowerCase()),r+a[0].length):-1},q:ug,Q:xg,s:kg,S:mg,u:ag,U:ig,V:ng,w:rg,W:og,x:function(e,t,a){return _(e,r,t,a)},X:function(e,t,r){return _(e,a,t,r)},y:lg,Y:cg,Z:sg,"%":vg};function w(e,t){return function(r){var a,i,n,o=[],c=-1,l=0,s=e.length;for(r instanceof Date||(r=new Date(+r));++c53)return null;"w"in n||(n.w=1),"Z"in n?(i=(a=Fm(zm(n.y,0,1))).getUTCDay(),a=i>4||0===i?pm.ceil(a):pm(a),a=jf.offset(a,7*(n.V-1)),n.y=a.getUTCFullYear(),n.m=a.getUTCMonth(),n.d=a.getUTCDate()+(n.w+6)%7):(i=(a=Wm(zm(n.y,0,1))).getDay(),a=i>4||0===i?Qf.ceil(a):Qf(a),a=Jf.offset(a,7*(n.V-1)),n.y=a.getFullYear(),n.m=a.getMonth(),n.d=a.getDate()+(n.w+6)%7)}else("W"in n||"U"in n)&&("w"in n||(n.w="u"in n?n.u%7:"W"in n?1:0),i="Z"in n?Fm(zm(n.y,0,1)).getUTCDay():Wm(zm(n.y,0,1)).getDay(),n.m=0,n.d="W"in n?(n.w+6)%7+7*n.W-(i+5)%7:n.w+7*n.U-(i+6)%7);return"Z"in n?(n.H+=n.Z/100|0,n.M+=n.Z%100,Fm(n)):Wm(n)}}function _(e,t,r,a){for(var i,n,o=0,c=t.length,l=r.length;o=l)return-1;if(37===(i=t.charCodeAt(o++))){if(i=t.charAt(o++),!(n=k[i in $m?t.charAt(o++):i])||(a=n(e,r,a))<0)return-1}else if(i!=r.charCodeAt(a++))return-1}return a}return v.x=w(r,v),v.X=w(a,v),v.c=w(t,v),x.x=w(r,x),x.X=w(a,x),x.c=w(t,x),{format:function(e){var t=w(e+="",v);return t.toString=function(){return e},t},parse:function(e){var t=C(e+="",!1);return t.toString=function(){return e},t},utcFormat:function(e){var t=w(e+="",x);return t.toString=function(){return e},t},utcParse:function(e){var t=C(e+="",!0);return t.toString=function(){return e},t}}}var Km,Jm,Vm,jm,Ym,$m={"-":"",_:" ",0:"0"},Um=/^\s*\d+/,qm=/^%/,Zm=/[\\^$*+?|[\]().{}]/g;function Qm(e,t,r){var a=e<0?"-":"",i=(a?-e:e)+"",n=i.length;return a+(n[e.toLowerCase(),t])))}function rg(e,t,r){var a=Um.exec(t.slice(r,r+1));return a?(e.w=+a[0],r+a[0].length):-1}function ag(e,t,r){var a=Um.exec(t.slice(r,r+1));return a?(e.u=+a[0],r+a[0].length):-1}function ig(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.U=+a[0],r+a[0].length):-1}function ng(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.V=+a[0],r+a[0].length):-1}function og(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.W=+a[0],r+a[0].length):-1}function cg(e,t,r){var a=Um.exec(t.slice(r,r+4));return a?(e.y=+a[0],r+a[0].length):-1}function lg(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.y=+a[0]+(+a[0]>68?1900:2e3),r+a[0].length):-1}function sg(e,t,r){var a=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(r,r+6));return a?(e.Z=a[1]?0:-(a[2]+(a[3]||"00")),r+a[0].length):-1}function ug(e,t,r){var a=Um.exec(t.slice(r,r+1));return a?(e.q=3*a[0]-3,r+a[0].length):-1}function hg(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.m=a[0]-1,r+a[0].length):-1}function dg(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.d=+a[0],r+a[0].length):-1}function pg(e,t,r){var a=Um.exec(t.slice(r,r+3));return a?(e.m=0,e.d=+a[0],r+a[0].length):-1}function yg(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.H=+a[0],r+a[0].length):-1}function fg(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.M=+a[0],r+a[0].length):-1}function mg(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.S=+a[0],r+a[0].length):-1}function gg(e,t,r){var a=Um.exec(t.slice(r,r+3));return a?(e.L=+a[0],r+a[0].length):-1}function bg(e,t,r){var a=Um.exec(t.slice(r,r+6));return a?(e.L=Math.floor(a[0]/1e3),r+a[0].length):-1}function vg(e,t,r){var a=qm.exec(t.slice(r,r+1));return a?r+a[0].length:-1}function xg(e,t,r){var a=Um.exec(t.slice(r));return a?(e.Q=+a[0],r+a[0].length):-1}function kg(e,t,r){var a=Um.exec(t.slice(r));return a?(e.s=+a[0],r+a[0].length):-1}function wg(e,t){return Qm(e.getDate(),t,2)}function Cg(e,t){return Qm(e.getHours(),t,2)}function _g(e,t){return Qm(e.getHours()%12||12,t,2)}function Sg(e,t){return Qm(1+Jf.count(Lm(e),e),t,3)}function Ag(e,t){return Qm(e.getMilliseconds(),t,3)}function Mg(e,t){return Ag(e,t)+"000"}function Tg(e,t){return Qm(e.getMonth()+1,t,2)}function Bg(e,t){return Qm(e.getMinutes(),t,2)}function Lg(e,t){return Qm(e.getSeconds(),t,2)}function Eg(e){var t=e.getDay();return 0===t?7:t}function Rg(e,t){return Qm(Zf.count(Lm(e)-1,e),t,2)}function Hg(e){var t=e.getDay();return t>=4||0===t?tm(e):tm.ceil(e)}function Dg(e,t){return e=Hg(e),Qm(tm.count(Lm(e),e)+(4===Lm(e).getDay()),t,2)}function Pg(e){return e.getDay()}function Ng(e,t){return Qm(Qf.count(Lm(e)-1,e),t,2)}function Gg(e,t){return Qm(e.getFullYear()%100,t,2)}function Ig(e,t){return Qm((e=Hg(e)).getFullYear()%100,t,2)}function Wg(e,t){return Qm(e.getFullYear()%1e4,t,4)}function Fg(e,t){var r=e.getDay();return Qm((e=r>=4||0===r?tm(e):tm.ceil(e)).getFullYear()%1e4,t,4)}function zg(e){var t=e.getTimezoneOffset();return(t>0?"-":(t*=-1,"+"))+Qm(t/60|0,"0",2)+Qm(t%60,"0",2)}function Og(e,t){return Qm(e.getUTCDate(),t,2)}function Kg(e,t){return Qm(e.getUTCHours(),t,2)}function Jg(e,t){return Qm(e.getUTCHours()%12||12,t,2)}function Vg(e,t){return Qm(1+jf.count(Rm(e),e),t,3)}function jg(e,t){return Qm(e.getUTCMilliseconds(),t,3)}function Yg(e,t){return jg(e,t)+"000"}function $g(e,t){return Qm(e.getUTCMonth()+1,t,2)}function Ug(e,t){return Qm(e.getUTCMinutes(),t,2)}function qg(e,t){return Qm(e.getUTCSeconds(),t,2)}function Zg(e){var t=e.getUTCDay();return 0===t?7:t}function Qg(e,t){return Qm(dm.count(Rm(e)-1,e),t,2)}function Xg(e){var t=e.getUTCDay();return t>=4||0===t?mm(e):mm.ceil(e)}function eb(e,t){return e=Xg(e),Qm(mm.count(Rm(e),e)+(4===Rm(e).getUTCDay()),t,2)}function tb(e){return e.getUTCDay()}function rb(e,t){return Qm(pm.count(Rm(e)-1,e),t,2)}function ab(e,t){return Qm(e.getUTCFullYear()%100,t,2)}function ib(e,t){return Qm((e=Xg(e)).getUTCFullYear()%100,t,2)}function nb(e,t){return Qm(e.getUTCFullYear()%1e4,t,4)}function ob(e,t){var r=e.getUTCDay();return Qm((e=r>=4||0===r?mm(e):mm.ceil(e)).getUTCFullYear()%1e4,t,4)}function cb(){return"+0000"}function lb(){return"%"}function sb(e){return+e}function ub(e){return Math.floor(+e/1e3)}function hb(e){return Km=Om(e),Jm=Km.format,Vm=Km.parse,jm=Km.utcFormat,Ym=Km.utcParse,Km}hb({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});var db="%Y-%m-%dT%H:%M:%S.%LZ";var pb=Date.prototype.toISOString?function(e){return e.toISOString()}:jm(db);var yb=+new Date("2000-01-01T00:00:00.000Z")?function(e){var t=new Date(e);return isNaN(t)?null:t}:Ym(db);function fb(e){return new Date(e)}function mb(e){return e instanceof Date?+e:+new Date(+e)}function gb(e,t,r,a,i,n,o,c,l,s){var u=tf(),h=u.invert,d=u.domain,p=s(".%L"),y=s(":%S"),f=s("%I:%M"),m=s("%I %p"),g=s("%a %d"),b=s("%b %d"),v=s("%B"),x=s("%Y");function k(e){return(l(e)Ha(e[e.length-1]),Nb=new Array(3).concat("d8b365f5f5f55ab4ac","a6611adfc27d80cdc1018571","a6611adfc27df5f5f580cdc1018571","8c510ad8b365f6e8c3c7eae55ab4ac01665e","8c510ad8b365f6e8c3f5f5f5c7eae55ab4ac01665e","8c510abf812ddfc27df6e8c3c7eae580cdc135978f01665e","8c510abf812ddfc27df6e8c3f5f5f5c7eae580cdc135978f01665e","5430058c510abf812ddfc27df6e8c3c7eae580cdc135978f01665e003c30","5430058c510abf812ddfc27df6e8c3f5f5f5c7eae580cdc135978f01665e003c30").map(Cb),Gb=Pb(Nb),Ib=new Array(3).concat("af8dc3f7f7f77fbf7b","7b3294c2a5cfa6dba0008837","7b3294c2a5cff7f7f7a6dba0008837","762a83af8dc3e7d4e8d9f0d37fbf7b1b7837","762a83af8dc3e7d4e8f7f7f7d9f0d37fbf7b1b7837","762a839970abc2a5cfe7d4e8d9f0d3a6dba05aae611b7837","762a839970abc2a5cfe7d4e8f7f7f7d9f0d3a6dba05aae611b7837","40004b762a839970abc2a5cfe7d4e8d9f0d3a6dba05aae611b783700441b","40004b762a839970abc2a5cfe7d4e8f7f7f7d9f0d3a6dba05aae611b783700441b").map(Cb),Wb=Pb(Ib),Fb=new Array(3).concat("e9a3c9f7f7f7a1d76a","d01c8bf1b6dab8e1864dac26","d01c8bf1b6daf7f7f7b8e1864dac26","c51b7de9a3c9fde0efe6f5d0a1d76a4d9221","c51b7de9a3c9fde0eff7f7f7e6f5d0a1d76a4d9221","c51b7dde77aef1b6dafde0efe6f5d0b8e1867fbc414d9221","c51b7dde77aef1b6dafde0eff7f7f7e6f5d0b8e1867fbc414d9221","8e0152c51b7dde77aef1b6dafde0efe6f5d0b8e1867fbc414d9221276419","8e0152c51b7dde77aef1b6dafde0eff7f7f7e6f5d0b8e1867fbc414d9221276419").map(Cb),zb=Pb(Fb),Ob=new Array(3).concat("998ec3f7f7f7f1a340","5e3c99b2abd2fdb863e66101","5e3c99b2abd2f7f7f7fdb863e66101","542788998ec3d8daebfee0b6f1a340b35806","542788998ec3d8daebf7f7f7fee0b6f1a340b35806","5427888073acb2abd2d8daebfee0b6fdb863e08214b35806","5427888073acb2abd2d8daebf7f7f7fee0b6fdb863e08214b35806","2d004b5427888073acb2abd2d8daebfee0b6fdb863e08214b358067f3b08","2d004b5427888073acb2abd2d8daebf7f7f7fee0b6fdb863e08214b358067f3b08").map(Cb),Kb=Pb(Ob),Jb=new Array(3).concat("ef8a62f7f7f767a9cf","ca0020f4a58292c5de0571b0","ca0020f4a582f7f7f792c5de0571b0","b2182bef8a62fddbc7d1e5f067a9cf2166ac","b2182bef8a62fddbc7f7f7f7d1e5f067a9cf2166ac","b2182bd6604df4a582fddbc7d1e5f092c5de4393c32166ac","b2182bd6604df4a582fddbc7f7f7f7d1e5f092c5de4393c32166ac","67001fb2182bd6604df4a582fddbc7d1e5f092c5de4393c32166ac053061","67001fb2182bd6604df4a582fddbc7f7f7f7d1e5f092c5de4393c32166ac053061").map(Cb),Vb=Pb(Jb),jb=new Array(3).concat("ef8a62ffffff999999","ca0020f4a582bababa404040","ca0020f4a582ffffffbababa404040","b2182bef8a62fddbc7e0e0e09999994d4d4d","b2182bef8a62fddbc7ffffffe0e0e09999994d4d4d","b2182bd6604df4a582fddbc7e0e0e0bababa8787874d4d4d","b2182bd6604df4a582fddbc7ffffffe0e0e0bababa8787874d4d4d","67001fb2182bd6604df4a582fddbc7e0e0e0bababa8787874d4d4d1a1a1a","67001fb2182bd6604df4a582fddbc7ffffffe0e0e0bababa8787874d4d4d1a1a1a").map(Cb),Yb=Pb(jb),$b=new Array(3).concat("fc8d59ffffbf91bfdb","d7191cfdae61abd9e92c7bb6","d7191cfdae61ffffbfabd9e92c7bb6","d73027fc8d59fee090e0f3f891bfdb4575b4","d73027fc8d59fee090ffffbfe0f3f891bfdb4575b4","d73027f46d43fdae61fee090e0f3f8abd9e974add14575b4","d73027f46d43fdae61fee090ffffbfe0f3f8abd9e974add14575b4","a50026d73027f46d43fdae61fee090e0f3f8abd9e974add14575b4313695","a50026d73027f46d43fdae61fee090ffffbfe0f3f8abd9e974add14575b4313695").map(Cb),Ub=Pb($b),qb=new Array(3).concat("fc8d59ffffbf91cf60","d7191cfdae61a6d96a1a9641","d7191cfdae61ffffbfa6d96a1a9641","d73027fc8d59fee08bd9ef8b91cf601a9850","d73027fc8d59fee08bffffbfd9ef8b91cf601a9850","d73027f46d43fdae61fee08bd9ef8ba6d96a66bd631a9850","d73027f46d43fdae61fee08bffffbfd9ef8ba6d96a66bd631a9850","a50026d73027f46d43fdae61fee08bd9ef8ba6d96a66bd631a9850006837","a50026d73027f46d43fdae61fee08bffffbfd9ef8ba6d96a66bd631a9850006837").map(Cb),Zb=Pb(qb),Qb=new Array(3).concat("fc8d59ffffbf99d594","d7191cfdae61abdda42b83ba","d7191cfdae61ffffbfabdda42b83ba","d53e4ffc8d59fee08be6f59899d5943288bd","d53e4ffc8d59fee08bffffbfe6f59899d5943288bd","d53e4ff46d43fdae61fee08be6f598abdda466c2a53288bd","d53e4ff46d43fdae61fee08bffffbfe6f598abdda466c2a53288bd","9e0142d53e4ff46d43fdae61fee08be6f598abdda466c2a53288bd5e4fa2","9e0142d53e4ff46d43fdae61fee08bffffbfe6f598abdda466c2a53288bd5e4fa2").map(Cb),Xb=Pb(Qb),ev=new Array(3).concat("e5f5f999d8c92ca25f","edf8fbb2e2e266c2a4238b45","edf8fbb2e2e266c2a42ca25f006d2c","edf8fbccece699d8c966c2a42ca25f006d2c","edf8fbccece699d8c966c2a441ae76238b45005824","f7fcfde5f5f9ccece699d8c966c2a441ae76238b45005824","f7fcfde5f5f9ccece699d8c966c2a441ae76238b45006d2c00441b").map(Cb),tv=Pb(ev),rv=new Array(3).concat("e0ecf49ebcda8856a7","edf8fbb3cde38c96c688419d","edf8fbb3cde38c96c68856a7810f7c","edf8fbbfd3e69ebcda8c96c68856a7810f7c","edf8fbbfd3e69ebcda8c96c68c6bb188419d6e016b","f7fcfde0ecf4bfd3e69ebcda8c96c68c6bb188419d6e016b","f7fcfde0ecf4bfd3e69ebcda8c96c68c6bb188419d810f7c4d004b").map(Cb),av=Pb(rv),iv=new Array(3).concat("e0f3dba8ddb543a2ca","f0f9e8bae4bc7bccc42b8cbe","f0f9e8bae4bc7bccc443a2ca0868ac","f0f9e8ccebc5a8ddb57bccc443a2ca0868ac","f0f9e8ccebc5a8ddb57bccc44eb3d32b8cbe08589e","f7fcf0e0f3dbccebc5a8ddb57bccc44eb3d32b8cbe08589e","f7fcf0e0f3dbccebc5a8ddb57bccc44eb3d32b8cbe0868ac084081").map(Cb),nv=Pb(iv),ov=new Array(3).concat("fee8c8fdbb84e34a33","fef0d9fdcc8afc8d59d7301f","fef0d9fdcc8afc8d59e34a33b30000","fef0d9fdd49efdbb84fc8d59e34a33b30000","fef0d9fdd49efdbb84fc8d59ef6548d7301f990000","fff7ecfee8c8fdd49efdbb84fc8d59ef6548d7301f990000","fff7ecfee8c8fdd49efdbb84fc8d59ef6548d7301fb300007f0000").map(Cb),cv=Pb(ov),lv=new Array(3).concat("ece2f0a6bddb1c9099","f6eff7bdc9e167a9cf02818a","f6eff7bdc9e167a9cf1c9099016c59","f6eff7d0d1e6a6bddb67a9cf1c9099016c59","f6eff7d0d1e6a6bddb67a9cf3690c002818a016450","fff7fbece2f0d0d1e6a6bddb67a9cf3690c002818a016450","fff7fbece2f0d0d1e6a6bddb67a9cf3690c002818a016c59014636").map(Cb),sv=Pb(lv),uv=new Array(3).concat("ece7f2a6bddb2b8cbe","f1eef6bdc9e174a9cf0570b0","f1eef6bdc9e174a9cf2b8cbe045a8d","f1eef6d0d1e6a6bddb74a9cf2b8cbe045a8d","f1eef6d0d1e6a6bddb74a9cf3690c00570b0034e7b","fff7fbece7f2d0d1e6a6bddb74a9cf3690c00570b0034e7b","fff7fbece7f2d0d1e6a6bddb74a9cf3690c00570b0045a8d023858").map(Cb),hv=Pb(uv),dv=new Array(3).concat("e7e1efc994c7dd1c77","f1eef6d7b5d8df65b0ce1256","f1eef6d7b5d8df65b0dd1c77980043","f1eef6d4b9dac994c7df65b0dd1c77980043","f1eef6d4b9dac994c7df65b0e7298ace125691003f","f7f4f9e7e1efd4b9dac994c7df65b0e7298ace125691003f","f7f4f9e7e1efd4b9dac994c7df65b0e7298ace125698004367001f").map(Cb),pv=Pb(dv),yv=new Array(3).concat("fde0ddfa9fb5c51b8a","feebe2fbb4b9f768a1ae017e","feebe2fbb4b9f768a1c51b8a7a0177","feebe2fcc5c0fa9fb5f768a1c51b8a7a0177","feebe2fcc5c0fa9fb5f768a1dd3497ae017e7a0177","fff7f3fde0ddfcc5c0fa9fb5f768a1dd3497ae017e7a0177","fff7f3fde0ddfcc5c0fa9fb5f768a1dd3497ae017e7a017749006a").map(Cb),fv=Pb(yv),mv=new Array(3).concat("edf8b17fcdbb2c7fb8","ffffcca1dab441b6c4225ea8","ffffcca1dab441b6c42c7fb8253494","ffffccc7e9b47fcdbb41b6c42c7fb8253494","ffffccc7e9b47fcdbb41b6c41d91c0225ea80c2c84","ffffd9edf8b1c7e9b47fcdbb41b6c41d91c0225ea80c2c84","ffffd9edf8b1c7e9b47fcdbb41b6c41d91c0225ea8253494081d58").map(Cb),gv=Pb(mv),bv=new Array(3).concat("f7fcb9addd8e31a354","ffffccc2e69978c679238443","ffffccc2e69978c67931a354006837","ffffccd9f0a3addd8e78c67931a354006837","ffffccd9f0a3addd8e78c67941ab5d238443005a32","ffffe5f7fcb9d9f0a3addd8e78c67941ab5d238443005a32","ffffe5f7fcb9d9f0a3addd8e78c67941ab5d238443006837004529").map(Cb),vv=Pb(bv),xv=new Array(3).concat("fff7bcfec44fd95f0e","ffffd4fed98efe9929cc4c02","ffffd4fed98efe9929d95f0e993404","ffffd4fee391fec44ffe9929d95f0e993404","ffffd4fee391fec44ffe9929ec7014cc4c028c2d04","ffffe5fff7bcfee391fec44ffe9929ec7014cc4c028c2d04","ffffe5fff7bcfee391fec44ffe9929ec7014cc4c02993404662506").map(Cb),kv=Pb(xv),wv=new Array(3).concat("ffeda0feb24cf03b20","ffffb2fecc5cfd8d3ce31a1c","ffffb2fecc5cfd8d3cf03b20bd0026","ffffb2fed976feb24cfd8d3cf03b20bd0026","ffffb2fed976feb24cfd8d3cfc4e2ae31a1cb10026","ffffccffeda0fed976feb24cfd8d3cfc4e2ae31a1cb10026","ffffccffeda0fed976feb24cfd8d3cfc4e2ae31a1cbd0026800026").map(Cb),Cv=Pb(wv),_v=new Array(3).concat("deebf79ecae13182bd","eff3ffbdd7e76baed62171b5","eff3ffbdd7e76baed63182bd08519c","eff3ffc6dbef9ecae16baed63182bd08519c","eff3ffc6dbef9ecae16baed64292c62171b5084594","f7fbffdeebf7c6dbef9ecae16baed64292c62171b5084594","f7fbffdeebf7c6dbef9ecae16baed64292c62171b508519c08306b").map(Cb),Sv=Pb(_v),Av=new Array(3).concat("e5f5e0a1d99b31a354","edf8e9bae4b374c476238b45","edf8e9bae4b374c47631a354006d2c","edf8e9c7e9c0a1d99b74c47631a354006d2c","edf8e9c7e9c0a1d99b74c47641ab5d238b45005a32","f7fcf5e5f5e0c7e9c0a1d99b74c47641ab5d238b45005a32","f7fcf5e5f5e0c7e9c0a1d99b74c47641ab5d238b45006d2c00441b").map(Cb),Mv=Pb(Av),Tv=new Array(3).concat("f0f0f0bdbdbd636363","f7f7f7cccccc969696525252","f7f7f7cccccc969696636363252525","f7f7f7d9d9d9bdbdbd969696636363252525","f7f7f7d9d9d9bdbdbd969696737373525252252525","fffffff0f0f0d9d9d9bdbdbd969696737373525252252525","fffffff0f0f0d9d9d9bdbdbd969696737373525252252525000000").map(Cb),Bv=Pb(Tv),Lv=new Array(3).concat("efedf5bcbddc756bb1","f2f0f7cbc9e29e9ac86a51a3","f2f0f7cbc9e29e9ac8756bb154278f","f2f0f7dadaebbcbddc9e9ac8756bb154278f","f2f0f7dadaebbcbddc9e9ac8807dba6a51a34a1486","fcfbfdefedf5dadaebbcbddc9e9ac8807dba6a51a34a1486","fcfbfdefedf5dadaebbcbddc9e9ac8807dba6a51a354278f3f007d").map(Cb),Ev=Pb(Lv),Rv=new Array(3).concat("fee0d2fc9272de2d26","fee5d9fcae91fb6a4acb181d","fee5d9fcae91fb6a4ade2d26a50f15","fee5d9fcbba1fc9272fb6a4ade2d26a50f15","fee5d9fcbba1fc9272fb6a4aef3b2ccb181d99000d","fff5f0fee0d2fcbba1fc9272fb6a4aef3b2ccb181d99000d","fff5f0fee0d2fcbba1fc9272fb6a4aef3b2ccb181da50f1567000d").map(Cb),Hv=Pb(Rv),Dv=new Array(3).concat("fee6cefdae6be6550d","feeddefdbe85fd8d3cd94701","feeddefdbe85fd8d3ce6550da63603","feeddefdd0a2fdae6bfd8d3ce6550da63603","feeddefdd0a2fdae6bfd8d3cf16913d948018c2d04","fff5ebfee6cefdd0a2fdae6bfd8d3cf16913d948018c2d04","fff5ebfee6cefdd0a2fdae6bfd8d3cf16913d94801a636037f2704").map(Cb),Pv=Pb(Dv);var Nv=si(ka(300,.5,0),ka(-240,.5,1)),Gv=si(ka(-100,.75,.35),ka(80,1.5,.8)),Iv=si(ka(260,.75,.35),ka(80,1.5,.8)),Wv=ka();var Fv=Hr(),zv=Math.PI/3,Ov=2*Math.PI/3;function Kv(e){var t=e.length;return function(r){return e[Math.max(0,Math.min(t-1,Math.floor(r*t)))]}}var Jv=Kv(Cb("44015444025645045745055946075a46085c460a5d460b5e470d60470e6147106347116447136548146748166848176948186a481a6c481b6d481c6e481d6f481f70482071482173482374482475482576482677482878482979472a7a472c7a472d7b472e7c472f7d46307e46327e46337f463480453581453781453882443983443a83443b84433d84433e85423f854240864241864142874144874045884046883f47883f48893e49893e4a893e4c8a3d4d8a3d4e8a3c4f8a3c508b3b518b3b528b3a538b3a548c39558c39568c38588c38598c375a8c375b8d365c8d365d8d355e8d355f8d34608d34618d33628d33638d32648e32658e31668e31678e31688e30698e306a8e2f6b8e2f6c8e2e6d8e2e6e8e2e6f8e2d708e2d718e2c718e2c728e2c738e2b748e2b758e2a768e2a778e2a788e29798e297a8e297b8e287c8e287d8e277e8e277f8e27808e26818e26828e26828e25838e25848e25858e24868e24878e23888e23898e238a8d228b8d228c8d228d8d218e8d218f8d21908d21918c20928c20928c20938c1f948c1f958b1f968b1f978b1f988b1f998a1f9a8a1e9b8a1e9c891e9d891f9e891f9f881fa0881fa1881fa1871fa28720a38620a48621a58521a68522a78522a88423a98324aa8325ab8225ac8226ad8127ad8128ae8029af7f2ab07f2cb17e2db27d2eb37c2fb47c31b57b32b67a34b67935b77937b87838b9773aba763bbb753dbc743fbc7340bd7242be7144bf7046c06f48c16e4ac16d4cc26c4ec36b50c46a52c56954c56856c66758c7655ac8645cc8635ec96260ca6063cb5f65cb5e67cc5c69cd5b6ccd5a6ece5870cf5773d05675d05477d1537ad1517cd2507fd34e81d34d84d44b86d54989d5488bd6468ed64590d74393d74195d84098d83e9bd93c9dd93ba0da39a2da37a5db36a8db34aadc32addc30b0dd2fb2dd2db5de2bb8de29bade28bddf26c0df25c2df23c5e021c8e020cae11fcde11dd0e11cd2e21bd5e21ad8e219dae319dde318dfe318e2e418e5e419e7e419eae51aece51befe51cf1e51df4e61ef6e620f8e621fbe723fde725")),Vv=Kv(Cb("00000401000501010601010802010902020b02020d03030f03031204041405041606051806051a07061c08071e0907200a08220b09240c09260d0a290e0b2b100b2d110c2f120d31130d34140e36150e38160f3b180f3d19103f1a10421c10441d11471e114920114b21114e22115024125325125527125829115a2a115c2c115f2d11612f116331116533106734106936106b38106c390f6e3b0f703d0f713f0f72400f74420f75440f764510774710784910784a10794c117a4e117b4f127b51127c52137c54137d56147d57157e59157e5a167e5c167f5d177f5f187f601880621980641a80651a80671b80681c816a1c816b1d816d1d816e1e81701f81721f817320817521817621817822817922827b23827c23827e24828025828125818326818426818627818827818928818b29818c29818e2a81902a81912b81932b80942c80962c80982d80992d809b2e7f9c2e7f9e2f7fa02f7fa1307ea3307ea5317ea6317da8327daa337dab337cad347cae347bb0357bb2357bb3367ab5367ab73779b83779ba3878bc3978bd3977bf3a77c03a76c23b75c43c75c53c74c73d73c83e73ca3e72cc3f71cd4071cf4070d0416fd2426fd3436ed5446dd6456cd8456cd9466bdb476adc4869de4968df4a68e04c67e24d66e34e65e44f64e55064e75263e85362e95462ea5661eb5760ec5860ed5a5fee5b5eef5d5ef05f5ef1605df2625df2645cf3655cf4675cf4695cf56b5cf66c5cf66e5cf7705cf7725cf8745cf8765cf9785df9795df97b5dfa7d5efa7f5efa815ffb835ffb8560fb8761fc8961fc8a62fc8c63fc8e64fc9065fd9266fd9467fd9668fd9869fd9a6afd9b6bfe9d6cfe9f6dfea16efea36ffea571fea772fea973feaa74feac76feae77feb078feb27afeb47bfeb67cfeb77efeb97ffebb81febd82febf84fec185fec287fec488fec68afec88cfeca8dfecc8ffecd90fecf92fed194fed395fed597fed799fed89afdda9cfddc9efddea0fde0a1fde2a3fde3a5fde5a7fde7a9fde9aafdebacfcecaefceeb0fcf0b2fcf2b4fcf4b6fcf6b8fcf7b9fcf9bbfcfbbdfcfdbf")),jv=Kv(Cb("00000401000501010601010802010a02020c02020e03021004031204031405041706041907051b08051d09061f0a07220b07240c08260d08290e092b10092d110a30120a32140b34150b37160b39180c3c190c3e1b0c411c0c431e0c451f0c48210c4a230c4c240c4f260c51280b53290b552b0b572d0b592f0a5b310a5c320a5e340a5f3609613809623909633b09643d09653e0966400a67420a68440a68450a69470b6a490b6a4a0c6b4c0c6b4d0d6c4f0d6c510e6c520e6d540f6d550f6d57106e59106e5a116e5c126e5d126e5f136e61136e62146e64156e65156e67166e69166e6a176e6c186e6d186e6f196e71196e721a6e741a6e751b6e771c6d781c6d7a1d6d7c1d6d7d1e6d7f1e6c801f6c82206c84206b85216b87216b88226a8a226a8c23698d23698f24699025689225689326679526679727669827669a28659b29649d29649f2a63a02a63a22b62a32c61a52c60a62d60a82e5fa92e5eab2f5ead305dae305cb0315bb1325ab3325ab43359b63458b73557b93556ba3655bc3754bd3853bf3952c03a51c13a50c33b4fc43c4ec63d4dc73e4cc83f4bca404acb4149cc4248ce4347cf4446d04545d24644d34743d44842d54a41d74b3fd84c3ed94d3dda4e3cdb503bdd513ade5238df5337e05536e15635e25734e35933e45a31e55c30e65d2fe75e2ee8602de9612bea632aeb6429eb6628ec6726ed6925ee6a24ef6c23ef6e21f06f20f1711ff1731df2741cf3761bf37819f47918f57b17f57d15f67e14f68013f78212f78410f8850ff8870ef8890cf98b0bf98c0af98e09fa9008fa9207fa9407fb9606fb9706fb9906fb9b06fb9d07fc9f07fca108fca309fca50afca60cfca80dfcaa0ffcac11fcae12fcb014fcb216fcb418fbb61afbb81dfbba1ffbbc21fbbe23fac026fac228fac42afac62df9c72ff9c932f9cb35f8cd37f8cf3af7d13df7d340f6d543f6d746f5d949f5db4cf4dd4ff4df53f4e156f3e35af3e55df2e661f2e865f2ea69f1ec6df1ed71f1ef75f1f179f2f27df2f482f3f586f3f68af4f88ef5f992f6fa96f8fb9af9fc9dfafda1fcffa4")),Yv=Kv(Cb("0d088710078813078916078a19068c1b068d1d068e20068f2206902406912605912805922a05932c05942e05952f059631059733059735049837049938049a3a049a3c049b3e049c3f049c41049d43039e44039e46039f48039f4903a04b03a14c02a14e02a25002a25102a35302a35502a45601a45801a45901a55b01a55c01a65e01a66001a66100a76300a76400a76600a76700a86900a86a00a86c00a86e00a86f00a87100a87201a87401a87501a87701a87801a87a02a87b02a87d03a87e03a88004a88104a78305a78405a78606a68707a68808a68a09a58b0aa58d0ba58e0ca48f0da4910ea3920fa39410a29511a19613a19814a099159f9a169f9c179e9d189d9e199da01a9ca11b9ba21d9aa31e9aa51f99a62098a72197a82296aa2395ab2494ac2694ad2793ae2892b02991b12a90b22b8fb32c8eb42e8db52f8cb6308bb7318ab83289ba3388bb3488bc3587bd3786be3885bf3984c03a83c13b82c23c81c33d80c43e7fc5407ec6417dc7427cc8437bc9447aca457acb4679cc4778cc4977cd4a76ce4b75cf4c74d04d73d14e72d24f71d35171d45270d5536fd5546ed6556dd7566cd8576bd9586ada5a6ada5b69db5c68dc5d67dd5e66de5f65de6164df6263e06363e16462e26561e26660e3685fe4695ee56a5de56b5de66c5ce76e5be76f5ae87059e97158e97257ea7457eb7556eb7655ec7754ed7953ed7a52ee7b51ef7c51ef7e50f07f4ff0804ef1814df1834cf2844bf3854bf3874af48849f48948f58b47f58c46f68d45f68f44f79044f79143f79342f89441f89540f9973ff9983ef99a3efa9b3dfa9c3cfa9e3bfb9f3afba139fba238fca338fca537fca636fca835fca934fdab33fdac33fdae32fdaf31fdb130fdb22ffdb42ffdb52efeb72dfeb82cfeba2cfebb2bfebd2afebe2afec029fdc229fdc328fdc527fdc627fdc827fdca26fdcb26fccd25fcce25fcd025fcd225fbd324fbd524fbd724fad824fada24f9dc24f9dd25f8df25f8e125f7e225f7e425f6e626f6e826f5e926f5eb27f4ed27f3ee27f3f027f2f227f1f426f1f525f0f724f0f921"));function $v(e){return function(){return e}}const Uv=Math.abs,qv=Math.atan2,Zv=Math.cos,Qv=Math.max,Xv=Math.min,ex=Math.sin,tx=Math.sqrt,rx=1e-12,ax=Math.PI,ix=ax/2,nx=2*ax;function ox(e){return e>=1?ix:e<=-1?-ix:Math.asin(e)}function cx(e){let t=3;return e.digits=function(r){if(!arguments.length)return t;if(null==r)t=null;else{const e=Math.floor(r);if(!(e>=0))throw new RangeError(`invalid digits: ${r}`);t=e}return e},()=>new So(t)}function lx(e){return e.innerRadius}function sx(e){return e.outerRadius}function ux(e){return e.startAngle}function hx(e){return e.endAngle}function dx(e){return e&&e.padAngle}function px(e,t,r,a,i,n,o){var c=e-r,l=t-a,s=(o?n:-n)/tx(c*c+l*l),u=s*l,h=-s*c,d=e+u,p=t+h,y=r+u,f=a+h,m=(d+y)/2,g=(p+f)/2,b=y-d,v=f-p,x=b*b+v*v,k=i-n,w=d*f-y*p,C=(v<0?-1:1)*tx(Qv(0,k*k*x-w*w)),_=(w*v-b*C)/x,S=(-w*b-v*C)/x,A=(w*v+b*C)/x,M=(-w*b+v*C)/x,T=_-m,B=S-g,L=A-m,E=M-g;return T*T+B*B>L*L+E*E&&(_=A,S=M),{cx:_,cy:S,x01:-u,y01:-h,x11:_*(i/k-1),y11:S*(i/k-1)}}var yx=Array.prototype.slice;function fx(e){return"object"==typeof e&&"length"in e?e:Array.from(e)}function mx(e){this._context=e}function gx(e){return new mx(e)}function bx(e){return e[0]}function vx(e){return e[1]}function xx(e,t){var r=$v(!0),a=null,i=gx,n=null,o=cx(c);function c(c){var l,s,u,h=(c=fx(c)).length,d=!1;for(null==a&&(n=i(u=o())),l=0;l<=h;++l)!(l=h;--d)c.point(g[d],b[d]);c.lineEnd(),c.areaEnd()}m&&(g[u]=+e(p,u,s),b[u]=+t(p,u,s),c.point(a?+a(p,u,s):g[u],r?+r(p,u,s):b[u]))}if(y)return c=null,y+""||null}function u(){return xx().defined(i).curve(o).context(n)}return e="function"==typeof e?e:void 0===e?bx:$v(+e),t="function"==typeof t?t:$v(void 0===t?0:+t),r="function"==typeof r?r:void 0===r?vx:$v(+r),s.x=function(t){return arguments.length?(e="function"==typeof t?t:$v(+t),a=null,s):e},s.x0=function(t){return arguments.length?(e="function"==typeof t?t:$v(+t),s):e},s.x1=function(e){return arguments.length?(a=null==e?null:"function"==typeof e?e:$v(+e),s):a},s.y=function(e){return arguments.length?(t="function"==typeof e?e:$v(+e),r=null,s):t},s.y0=function(e){return arguments.length?(t="function"==typeof e?e:$v(+e),s):t},s.y1=function(e){return arguments.length?(r=null==e?null:"function"==typeof e?e:$v(+e),s):r},s.lineX0=s.lineY0=function(){return u().x(e).y(t)},s.lineY1=function(){return u().x(e).y(r)},s.lineX1=function(){return u().x(a).y(t)},s.defined=function(e){return arguments.length?(i="function"==typeof e?e:$v(!!e),s):i},s.curve=function(e){return arguments.length?(o=e,null!=n&&(c=o(n)),s):o},s.context=function(e){return arguments.length?(null==e?n=c=null:c=o(n=e),s):n},s}function wx(e,t){return te?1:t>=e?0:NaN}function Cx(e){return e}mx.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._context.lineTo(e,t)}}};var _x=Ax(gx);function Sx(e){this._curve=e}function Ax(e){function t(t){return new Sx(e(t))}return t._curve=e,t}function Mx(e){var t=e.curve;return e.angle=e.x,delete e.x,e.radius=e.y,delete e.y,e.curve=function(e){return arguments.length?t(Ax(e)):t()._curve},e}function Tx(){return Mx(xx().curve(_x))}function Bx(){var e=kx().curve(_x),t=e.curve,r=e.lineX0,a=e.lineX1,i=e.lineY0,n=e.lineY1;return e.angle=e.x,delete e.x,e.startAngle=e.x0,delete e.x0,e.endAngle=e.x1,delete e.x1,e.radius=e.y,delete e.y,e.innerRadius=e.y0,delete e.y0,e.outerRadius=e.y1,delete e.y1,e.lineStartAngle=function(){return Mx(r())},delete e.lineX0,e.lineEndAngle=function(){return Mx(a())},delete e.lineX1,e.lineInnerRadius=function(){return Mx(i())},delete e.lineY0,e.lineOuterRadius=function(){return Mx(n())},delete e.lineY1,e.curve=function(e){return arguments.length?t(Ax(e)):t()._curve},e}function Lx(e,t){return[(t=+t)*Math.cos(e-=Math.PI/2),t*Math.sin(e)]}Sx.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(e,t){this._curve.point(t*Math.sin(e),t*-Math.cos(e))}};class Ex{constructor(e,t){this._context=e,this._x=t}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line}point(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._x?this._context.bezierCurveTo(this._x0=(this._x0+e)/2,this._y0,this._x0,t,e,t):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+t)/2,e,this._y0,e,t)}this._x0=e,this._y0=t}}class Rx{constructor(e){this._context=e}lineStart(){this._point=0}lineEnd(){}point(e,t){if(e=+e,t=+t,0===this._point)this._point=1;else{const r=Lx(this._x0,this._y0),a=Lx(this._x0,this._y0=(this._y0+t)/2),i=Lx(e,this._y0),n=Lx(e,t);this._context.moveTo(...r),this._context.bezierCurveTo(...a,...i,...n)}this._x0=e,this._y0=t}}function Hx(e){return new Ex(e,!0)}function Dx(e){return new Ex(e,!1)}function Px(e){return new Rx(e)}function Nx(e){return e.source}function Gx(e){return e.target}function Ix(e){let t=Nx,r=Gx,a=bx,i=vx,n=null,o=null,c=cx(l);function l(){let l;const s=yx.call(arguments),u=t.apply(this,s),h=r.apply(this,s);if(null==n&&(o=e(l=c())),o.lineStart(),s[0]=u,o.point(+a.apply(this,s),+i.apply(this,s)),s[0]=h,o.point(+a.apply(this,s),+i.apply(this,s)),o.lineEnd(),l)return o=null,l+""||null}return l.source=function(e){return arguments.length?(t=e,l):t},l.target=function(e){return arguments.length?(r=e,l):r},l.x=function(e){return arguments.length?(a="function"==typeof e?e:$v(+e),l):a},l.y=function(e){return arguments.length?(i="function"==typeof e?e:$v(+e),l):i},l.context=function(t){return arguments.length?(null==t?n=o=null:o=e(n=t),l):n},l}function Wx(){const e=Ix(Px);return e.angle=e.x,delete e.x,e.radius=e.y,delete e.y,e}const Fx=tx(3);var zx={draw(e,t){const r=.59436*tx(t+Xv(t/28,.75)),a=r/2,i=a*Fx;e.moveTo(0,r),e.lineTo(0,-r),e.moveTo(-i,-a),e.lineTo(i,a),e.moveTo(-i,a),e.lineTo(i,-a)}},Ox={draw(e,t){const r=tx(t/ax);e.moveTo(r,0),e.arc(0,0,r,0,nx)}},Kx={draw(e,t){const r=tx(t/5)/2;e.moveTo(-3*r,-r),e.lineTo(-r,-r),e.lineTo(-r,-3*r),e.lineTo(r,-3*r),e.lineTo(r,-r),e.lineTo(3*r,-r),e.lineTo(3*r,r),e.lineTo(r,r),e.lineTo(r,3*r),e.lineTo(-r,3*r),e.lineTo(-r,r),e.lineTo(-3*r,r),e.closePath()}};const Jx=tx(1/3),Vx=2*Jx;var jx={draw(e,t){const r=tx(t/Vx),a=r*Jx;e.moveTo(0,-r),e.lineTo(a,0),e.lineTo(0,r),e.lineTo(-a,0),e.closePath()}},Yx={draw(e,t){const r=.62625*tx(t);e.moveTo(0,-r),e.lineTo(r,0),e.lineTo(0,r),e.lineTo(-r,0),e.closePath()}},$x={draw(e,t){const r=.87559*tx(t-Xv(t/7,2));e.moveTo(-r,0),e.lineTo(r,0),e.moveTo(0,r),e.lineTo(0,-r)}},Ux={draw(e,t){const r=tx(t),a=-r/2;e.rect(a,a,r,r)}},qx={draw(e,t){const r=.4431*tx(t);e.moveTo(r,r),e.lineTo(r,-r),e.lineTo(-r,-r),e.lineTo(-r,r),e.closePath()}};const Zx=ex(ax/10)/ex(7*ax/10),Qx=ex(nx/10)*Zx,Xx=-Zv(nx/10)*Zx;var ek={draw(e,t){const r=tx(.8908130915292852*t),a=Qx*r,i=Xx*r;e.moveTo(0,-r),e.lineTo(a,i);for(let t=1;t<5;++t){const n=nx*t/5,o=Zv(n),c=ex(n);e.lineTo(c*r,-o*r),e.lineTo(o*a-c*i,c*a+o*i)}e.closePath()}};const tk=tx(3);var rk={draw(e,t){const r=-tx(t/(3*tk));e.moveTo(0,2*r),e.lineTo(-tk*r,-r),e.lineTo(tk*r,-r),e.closePath()}};const ak=tx(3);var ik={draw(e,t){const r=.6824*tx(t),a=r/2,i=r*ak/2;e.moveTo(0,-r),e.lineTo(i,a),e.lineTo(-i,a),e.closePath()}};const nk=-.5,ok=tx(3)/2,ck=1/tx(12),lk=3*(ck/2+1);var sk={draw(e,t){const r=tx(t/lk),a=r/2,i=r*ck,n=a,o=r*ck+r,c=-n,l=o;e.moveTo(a,i),e.lineTo(n,o),e.lineTo(c,l),e.lineTo(nk*a-ok*i,ok*a+nk*i),e.lineTo(nk*n-ok*o,ok*n+nk*o),e.lineTo(nk*c-ok*l,ok*c+nk*l),e.lineTo(nk*a+ok*i,nk*i-ok*a),e.lineTo(nk*n+ok*o,nk*o-ok*n),e.lineTo(nk*c+ok*l,nk*l-ok*c),e.closePath()}},uk={draw(e,t){const r=.6189*tx(t-Xv(t/6,1.7));e.moveTo(-r,-r),e.lineTo(r,r),e.moveTo(-r,r),e.lineTo(r,-r)}};const hk=[Ox,Kx,jx,Ux,ek,rk,sk],dk=[Ox,$x,uk,ik,zx,qx,Yx];function pk(e,t){let r=null,a=cx(i);function i(){let i;if(r||(r=i=a()),e.apply(this,arguments).draw(r,+t.apply(this,arguments)),i)return r=null,i+""||null}return e="function"==typeof e?e:$v(e||Ox),t="function"==typeof t?t:$v(void 0===t?64:+t),i.type=function(t){return arguments.length?(e="function"==typeof t?t:$v(t),i):e},i.size=function(e){return arguments.length?(t="function"==typeof e?e:$v(+e),i):t},i.context=function(e){return arguments.length?(r=null==e?null:e,i):r},i}function yk(){}function fk(e,t,r){e._context.bezierCurveTo((2*e._x0+e._x1)/3,(2*e._y0+e._y1)/3,(e._x0+2*e._x1)/3,(e._y0+2*e._y1)/3,(e._x0+4*e._x1+t)/6,(e._y0+4*e._y1+r)/6)}function mk(e){this._context=e}function gk(e){this._context=e}function bk(e){return new gk(e)}function vk(e){this._context=e}function xk(e,t){this._basis=new mk(e),this._beta=t}mk.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:fk(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:fk(this,e,t)}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}},gk.prototype={areaStart:yk,areaEnd:yk,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x2,this._y2),this._context.closePath();break;case 2:this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break;case 3:this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4)}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x2=e,this._y2=t;break;case 1:this._point=2,this._x3=e,this._y3=t;break;case 2:this._point=3,this._x4=e,this._y4=t,this._context.moveTo((this._x0+4*this._x1+e)/6,(this._y0+4*this._y1+t)/6);break;default:fk(this,e,t)}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}},vk.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var r=(this._x0+4*this._x1+e)/6,a=(this._y0+4*this._y1+t)/6;this._line?this._context.lineTo(r,a):this._context.moveTo(r,a);break;case 3:this._point=4;default:fk(this,e,t)}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}},xk.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var e=this._x,t=this._y,r=e.length-1;if(r>0)for(var a,i=e[0],n=t[0],o=e[r]-i,c=t[r]-n,l=-1;++l<=r;)a=l/r,this._basis.point(this._beta*e[l]+(1-this._beta)*(i+a*o),this._beta*t[l]+(1-this._beta)*(n+a*c));this._x=this._y=null,this._basis.lineEnd()},point:function(e,t){this._x.push(+e),this._y.push(+t)}};var kk=function e(t){function r(e){return 1===t?new mk(e):new xk(e,t)}return r.beta=function(t){return e(+t)},r}(.85);function wk(e,t,r){e._context.bezierCurveTo(e._x1+e._k*(e._x2-e._x0),e._y1+e._k*(e._y2-e._y0),e._x2+e._k*(e._x1-t),e._y2+e._k*(e._y1-r),e._x2,e._y2)}function Ck(e,t){this._context=e,this._k=(1-t)/6}Ck.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:wk(this,this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2,this._x1=e,this._y1=t;break;case 2:this._point=3;default:wk(this,e,t)}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var _k=function e(t){function r(e){return new Ck(e,t)}return r.tension=function(t){return e(+t)},r}(0);function Sk(e,t){this._context=e,this._k=(1-t)/6}Sk.prototype={areaStart:yk,areaEnd:yk,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x3=e,this._y3=t;break;case 1:this._point=2,this._context.moveTo(this._x4=e,this._y4=t);break;case 2:this._point=3,this._x5=e,this._y5=t;break;default:wk(this,e,t)}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var Ak=function e(t){function r(e){return new Sk(e,t)}return r.tension=function(t){return e(+t)},r}(0);function Mk(e,t){this._context=e,this._k=(1-t)/6}Mk.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:wk(this,e,t)}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var Tk=function e(t){function r(e){return new Mk(e,t)}return r.tension=function(t){return e(+t)},r}(0);function Bk(e,t,r){var a=e._x1,i=e._y1,n=e._x2,o=e._y2;if(e._l01_a>rx){var c=2*e._l01_2a+3*e._l01_a*e._l12_a+e._l12_2a,l=3*e._l01_a*(e._l01_a+e._l12_a);a=(a*c-e._x0*e._l12_2a+e._x2*e._l01_2a)/l,i=(i*c-e._y0*e._l12_2a+e._y2*e._l01_2a)/l}if(e._l23_a>rx){var s=2*e._l23_2a+3*e._l23_a*e._l12_a+e._l12_2a,u=3*e._l23_a*(e._l23_a+e._l12_a);n=(n*s+e._x1*e._l23_2a-t*e._l12_2a)/u,o=(o*s+e._y1*e._l23_2a-r*e._l12_2a)/u}e._context.bezierCurveTo(a,i,n,o,e._x2,e._y2)}function Lk(e,t){this._context=e,this._alpha=t}Lk.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){if(e=+e,t=+t,this._point){var r=this._x2-e,a=this._y2-t;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+a*a,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3;default:Bk(this,e,t)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var Ek=function e(t){function r(e){return t?new Lk(e,t):new Ck(e,0)}return r.alpha=function(t){return e(+t)},r}(.5);function Rk(e,t){this._context=e,this._alpha=t}Rk.prototype={areaStart:yk,areaEnd:yk,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(e,t){if(e=+e,t=+t,this._point){var r=this._x2-e,a=this._y2-t;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+a*a,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=e,this._y3=t;break;case 1:this._point=2,this._context.moveTo(this._x4=e,this._y4=t);break;case 2:this._point=3,this._x5=e,this._y5=t;break;default:Bk(this,e,t)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var Hk=function e(t){function r(e){return t?new Rk(e,t):new Sk(e,0)}return r.alpha=function(t){return e(+t)},r}(.5);function Dk(e,t){this._context=e,this._alpha=t}Dk.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){if(e=+e,t=+t,this._point){var r=this._x2-e,a=this._y2-t;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+a*a,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Bk(this,e,t)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var Pk=function e(t){function r(e){return t?new Dk(e,t):new Mk(e,0)}return r.alpha=function(t){return e(+t)},r}(.5);function Nk(e){this._context=e}function Gk(e){return e<0?-1:1}function Ik(e,t,r){var a=e._x1-e._x0,i=t-e._x1,n=(e._y1-e._y0)/(a||i<0&&-0),o=(r-e._y1)/(i||a<0&&-0),c=(n*i+o*a)/(a+i);return(Gk(n)+Gk(o))*Math.min(Math.abs(n),Math.abs(o),.5*Math.abs(c))||0}function Wk(e,t){var r=e._x1-e._x0;return r?(3*(e._y1-e._y0)/r-t)/2:t}function Fk(e,t,r){var a=e._x0,i=e._y0,n=e._x1,o=e._y1,c=(n-a)/3;e._context.bezierCurveTo(a+c,i+c*t,n-c,o-c*r,n,o)}function zk(e){this._context=e}function Ok(e){this._context=new Kk(e)}function Kk(e){this._context=e}function Jk(e){this._context=e}function Vk(e){var t,r,a=e.length-1,i=new Array(a),n=new Array(a),o=new Array(a);for(i[0]=0,n[0]=2,o[0]=e[0]+2*e[1],t=1;t=0;--t)i[t]=(o[t]-i[t+1])/n[t];for(n[a-1]=(e[a]+i[a-1])/2,t=0;t1)for(var r,a,i,n=1,o=e[t[0]],c=o.length;n=0;)r[t]=t;return r}function Qk(e,t){return e[t]}function Xk(e){const t=[];return t.key=e,t}function ew(e){var t=e.map(tw);return Zk(e).sort((function(e,r){return t[e]-t[r]}))}function tw(e){for(var t,r=-1,a=0,i=e.length,n=-1/0;++rn&&(n=t,a=r);return a}function rw(e){var t=e.map(aw);return Zk(e).sort((function(e,r){return t[e]-t[r]}))}function aw(e){for(var t,r=0,a=-1,i=e.length;++a=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,t),this._context.lineTo(e,t);else{var r=this._x*(1-this._t)+e*this._t;this._context.lineTo(r,this._y),this._context.lineTo(r,t)}}this._x=e,this._y=t}};var iw=e=>()=>e;function nw(e,{sourceEvent:t,target:r,transform:a,dispatch:i}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},transform:{value:a,enumerable:!0,configurable:!0},_:{value:i}})}function ow(e,t,r){this.k=e,this.x=t,this.y=r}ow.prototype={constructor:ow,scale:function(e){return 1===e?this:new ow(this.k*e,this.x,this.y)},translate:function(e,t){return 0===e&0===t?this:new ow(this.k,this.x+this.k*e,this.y+this.k*t)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var cw=new ow(1,0,0);function lw(e){for(;!e.__zoom;)if(!(e=e.parentNode))return cw;return e.__zoom}function sw(e){e.stopImmediatePropagation()}function uw(e){e.preventDefault(),e.stopImmediatePropagation()}function hw(e){return!(e.ctrlKey&&"wheel"!==e.type||e.button)}function dw(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e).hasAttribute("viewBox")?[[(e=e.viewBox.baseVal).x,e.y],[e.x+e.width,e.y+e.height]]:[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]:[[0,0],[e.clientWidth,e.clientHeight]]}function pw(){return this.__zoom||cw}function yw(e){return-e.deltaY*(1===e.deltaMode?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function fw(){return navigator.maxTouchPoints||"ontouchstart"in this}function mw(e,t,r){var a=e.invertX(t[0][0])-r[0][0],i=e.invertX(t[1][0])-r[1][0],n=e.invertY(t[0][1])-r[0][1],o=e.invertY(t[1][1])-r[1][1];return e.translate(i>a?(a+i)/2:Math.min(0,a)||Math.max(0,i),o>n?(n+o)/2:Math.min(0,n)||Math.max(0,o))}function gw(){var e,t,r,a=hw,i=dw,n=mw,o=yw,c=fw,l=[0,1/0],s=[[-1/0,-1/0],[1/0,1/0]],u=250,h=ei,d=Le("start","zoom","end"),p=0,y=10;function f(e){e.property("__zoom",pw).on("wheel.zoom",w,{passive:!1}).on("mousedown.zoom",C).on("dblclick.zoom",_).filter(c).on("touchstart.zoom",S).on("touchmove.zoom",A).on("touchend.zoom touchcancel.zoom",M).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function m(e,t){return(t=Math.max(l[0],Math.min(l[1],t)))===e.k?e:new ow(t,e.x,e.y)}function g(e,t,r){var a=t[0]-r[0]*e.k,i=t[1]-r[1]*e.k;return a===e.x&&i===e.y?e:new ow(e.k,a,i)}function b(e){return[(+e[0][0]+ +e[1][0])/2,(+e[0][1]+ +e[1][1])/2]}function v(e,t,r,a){e.on("start.zoom",(function(){x(this,arguments).event(a).start()})).on("interrupt.zoom end.zoom",(function(){x(this,arguments).event(a).end()})).tween("zoom",(function(){var e=this,n=arguments,o=x(e,n).event(a),c=i.apply(e,n),l=null==r?b(c):"function"==typeof r?r.apply(e,n):r,s=Math.max(c[1][0]-c[0][0],c[1][1]-c[0][1]),u=e.__zoom,d="function"==typeof t?t.apply(e,n):t,p=h(u.invert(l).concat(s/u.k),d.invert(l).concat(s/d.k));return function(e){if(1===e)e=d;else{var t=p(e),r=s/t[2];e=new ow(r,l[0]-t[0]*r,l[1]-t[1]*r)}o.zoom(null,e)}}))}function x(e,t,r){return!r&&e.__zooming||new k(e,t)}function k(e,t){this.that=e,this.args=t,this.active=0,this.sourceEvent=null,this.extent=i.apply(e,t),this.taps=0}function w(e,...t){if(a.apply(this,arguments)){var r=x(this,t).event(e),i=this.__zoom,c=Math.max(l[0],Math.min(l[1],i.k*Math.pow(2,o.apply(this,arguments)))),u=Qt(e);if(r.wheel)r.mouse[0][0]===u[0]&&r.mouse[0][1]===u[1]||(r.mouse[1]=i.invert(r.mouse[0]=u)),clearTimeout(r.wheel);else{if(i.k===c)return;r.mouse=[u,i.invert(u)],Ni(this),r.start()}uw(e),r.wheel=setTimeout((function(){r.wheel=null,r.end()}),150),r.zoom("mouse",n(g(m(i,c),r.mouse[0],r.mouse[1]),r.extent,s))}}function C(e,...t){if(!r&&a.apply(this,arguments)){var i=e.currentTarget,o=x(this,t,!0).event(e),c=jt(e.view).on("mousemove.zoom",(function(e){if(uw(e),!o.moved){var t=e.clientX-u,r=e.clientY-h;o.moved=t*t+r*r>p}o.event(e).zoom("mouse",n(g(o.that.__zoom,o.mouse[0]=Qt(e,i),o.mouse[1]),o.extent,s))}),!0).on("mouseup.zoom",(function(e){c.on("mousemove.zoom mouseup.zoom",null),ir(e.view,o.moved),uw(e),o.event(e).end()}),!0),l=Qt(e,i),u=e.clientX,h=e.clientY;ar(e.view),sw(e),o.mouse=[l,this.__zoom.invert(l)],Ni(this),o.start()}}function _(e,...t){if(a.apply(this,arguments)){var r=this.__zoom,o=Qt(e.changedTouches?e.changedTouches[0]:e,this),c=r.invert(o),l=r.k*(e.shiftKey?.5:2),h=n(g(m(r,l),o,c),i.apply(this,t),s);uw(e),u>0?jt(this).transition().duration(u).call(v,h,o,e):jt(this).call(f.transform,h,o,e)}}function S(r,...i){if(a.apply(this,arguments)){var n,o,c,l,s=r.touches,u=s.length,h=x(this,i,r.changedTouches.length===u).event(r);for(sw(r),o=0;o1&&r.name===t)return new rn([[e]],Nn,t,+a);return null},arc:function(){var e=lx,t=sx,r=$v(0),a=null,i=ux,n=hx,o=dx,c=null,l=cx(s);function s(){var s,u,h=+e.apply(this,arguments),d=+t.apply(this,arguments),p=i.apply(this,arguments)-ix,y=n.apply(this,arguments)-ix,f=Uv(y-p),m=y>p;if(c||(c=s=l()),drx)if(f>nx-rx)c.moveTo(d*Zv(p),d*ex(p)),c.arc(0,0,d,p,y,!m),h>rx&&(c.moveTo(h*Zv(y),h*ex(y)),c.arc(0,0,h,y,p,m));else{var g,b,v=p,x=y,k=p,w=y,C=f,_=f,S=o.apply(this,arguments)/2,A=S>rx&&(a?+a.apply(this,arguments):tx(h*h+d*d)),M=Xv(Uv(d-h)/2,+r.apply(this,arguments)),T=M,B=M;if(A>rx){var L=ox(A/h*ex(S)),E=ox(A/d*ex(S));(C-=2*L)>rx?(k+=L*=m?1:-1,w-=L):(C=0,k=w=(p+y)/2),(_-=2*E)>rx?(v+=E*=m?1:-1,x-=E):(_=0,v=x=(p+y)/2)}var R=d*Zv(v),H=d*ex(v),D=h*Zv(w),P=h*ex(w);if(M>rx){var N,G=d*Zv(x),I=d*ex(x),W=h*Zv(k),F=h*ex(k);if(f1?0:e<-1?ax:Math.acos(e)}((z*K+O*J)/(tx(z*z+O*O)*tx(K*K+J*J)))/2),j=tx(N[0]*N[0]+N[1]*N[1]);T=Xv(M,(h-j)/(V-1)),B=Xv(M,(d-j)/(V+1))}else T=B=0}_>rx?B>rx?(g=px(W,F,R,H,d,B,m),b=px(G,I,D,P,d,B,m),c.moveTo(g.cx+g.x01,g.cy+g.y01),Brx&&C>rx?T>rx?(g=px(D,P,G,I,h,-T,m),b=px(R,H,W,F,h,-T,m),c.lineTo(g.cx+g.x01,g.cy+g.y01),T=0))throw new RangeError("invalid r");let r=e.length;if(!((r=Math.floor(r))>=0))throw new RangeError("invalid length");if(!r||!t)return e;const a=f(t),i=e.slice();return a(e,i,0,r,1),a(i,e,0,r,1),a(e,i,0,r,1),e},blur2:u,blurImage:h,brush:function(){return lo(Zn)},brushSelection:function(e){var t=e.__brush;return t?t.dim.output(t.selection):null},brushX:function(){return lo(Un)},brushY:function(){return lo(qn)},buffer:function(e,t){return fetch(e,t).then(Xc)},chord:function(){return vo(!1,!1)},chordDirected:function(){return vo(!0,!1)},chordTranspose:function(){return vo(!1,!0)},cluster:kp,color:Br,contourDensity:function(){var e=qo,t=Zo,r=Qo,a=960,i=500,n=20,o=2,c=3*n,l=a+2*c>>o,s=i+2*c>>o,h=Wo(20);function d(a){var i=new Float32Array(l*s),h=Math.pow(2,-o),d=-1;for(const n of a){var p=(e(n,++d,a)+c)*h,y=(t(n,d,a)+c)*h,f=+r(n,d,a);if(f&&p>=0&&p=0&&ye*a)))(t).map(((e,t)=>(e.value=+r[t],y(e))))}function y(e){return e.coordinates.forEach(f),e}function f(e){e.forEach(m)}function m(e){e.forEach(g)}function g(e){e[0]=e[0]*Math.pow(2,o)-c,e[1]=e[1]*Math.pow(2,o)-c}function b(){return l=a+2*(c=3*n)>>o,s=i+2*c>>o,p}return p.contours=function(e){var t=d(e),r=Vo().size([l,s]),a=Math.pow(2,2*o),i=e=>{e=+e;var i=y(r.contour(t,e*a));return i.value=e,i};return Object.defineProperty(i,"max",{get:()=>ee(t)/a}),i},p.x=function(t){return arguments.length?(e="function"==typeof t?t:Wo(+t),p):e},p.y=function(e){return arguments.length?(t="function"==typeof e?e:Wo(+e),p):t},p.weight=function(e){return arguments.length?(r="function"==typeof e?e:Wo(+e),p):r},p.size=function(e){if(!arguments.length)return[a,i];var t=+e[0],r=+e[1];if(!(t>=0&&r>=0))throw new Error("invalid size");return a=t,i=r,b()},p.cellSize=function(e){if(!arguments.length)return 1<=1))throw new Error("invalid cell size");return o=Math.floor(Math.log(e)/Math.LN2),b()},p.thresholds=function(e){return arguments.length?(h="function"==typeof e?e:Array.isArray(e)?Wo(Go.call(e)):Wo(e),p):h},p.bandwidth=function(e){if(!arguments.length)return Math.sqrt(n*(n+1));if(!((e=+e)>=0))throw new Error("invalid bandwidth");return n=(Math.sqrt(4*e*e+1)-1)/2,b()},p},contours:Vo,count:m,create:Yt,creator:We,cross:function(...e){const t="function"==typeof e[e.length-1]&&function(e){return t=>e(...t)}(e.pop()),r=(e=e.map(v)).map(g),a=e.length-1,i=new Array(a+1).fill(0),n=[];if(a<0||r.some(b))return n;for(;;){n.push(i.map(((t,r)=>e[r][t])));let o=a;for(;++i[o]===r[o];){if(0===o)return t?n.map(t):n;i[o--]=0}}},csv:al,csvFormat:Ic,csvFormatBody:Wc,csvFormatRow:zc,csvFormatRows:Fc,csvFormatValue:Oc,csvParse:Nc,csvParseRows:Gc,cubehelix:ka,cumsum:function(e,t){var r=0,a=0;return Float64Array.from(e,void 0===t?e=>r+=+e||0:i=>r+=+t(i,a++,e)||0)},curveBasis:function(e){return new mk(e)},curveBasisClosed:bk,curveBasisOpen:function(e){return new vk(e)},curveBumpX:Hx,curveBumpY:Dx,curveBundle:kk,curveCardinal:_k,curveCardinalClosed:Ak,curveCardinalOpen:Tk,curveCatmullRom:Ek,curveCatmullRomClosed:Hk,curveCatmullRomOpen:Pk,curveLinear:gx,curveLinearClosed:function(e){return new Nk(e)},curveMonotoneX:function(e){return new zk(e)},curveMonotoneY:function(e){return new Ok(e)},curveNatural:function(e){return new Jk(e)},curveStep:Yk,curveStepAfter:Uk,curveStepBefore:$k,descending:r,deviation:k,difference:function(e,...t){e=new S(e);for(const r of t)for(const t of r)e.delete(t);return e},disjoint:function(e,t){const r=t[Symbol.iterator](),a=new S;for(const t of e){if(a.has(t))return!1;let e,i;for(;({value:e,done:i}=r.next())&&!i;){if(Object.is(t,e))return!1;a.add(e)}}return!0},dispatch:Le,drag:function(){var e,t,r,a,i=cr,n=lr,o=sr,c=ur,l={},s=Le("start","drag","end"),u=0,h=0;function d(e){e.on("mousedown.drag",p).filter(c).on("touchstart.drag",m).on("touchmove.drag",g,Xt).on("touchend.drag touchcancel.drag",b).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function p(o,c){if(!a&&i.call(this,o,c)){var l=v(this,n.call(this,o,c),o,c,"mouse");l&&(jt(o.view).on("mousemove.drag",y,er).on("mouseup.drag",f,er),ar(o.view),tr(o),r=!1,e=o.clientX,t=o.clientY,l("start",o))}}function y(a){if(rr(a),!r){var i=a.clientX-e,n=a.clientY-t;r=i*i+n*n>h}l.mouse("drag",a)}function f(e){jt(e.view).on("mousemove.drag mouseup.drag",null),ir(e.view,r),rr(e),l.mouse("end",e)}function m(e,t){if(i.call(this,e,t)){var r,a,o=e.changedTouches,c=n.call(this,e,t),l=o.length;for(r=0;r+e,easePoly:hn,easePolyIn:sn,easePolyInOut:hn,easePolyOut:un,easeQuad:cn,easeQuadIn:function(e){return e*e},easeQuadInOut:cn,easeQuadOut:function(e){return e*(2-e)},easeSin:yn,easeSinIn:function(e){return 1==+e?1:1-Math.cos(e*pn)},easeSinInOut:yn,easeSinOut:function(e){return Math.sin(e*pn)},every:function(e,t){if("function"!=typeof t)throw new TypeError("test is not a function");let r=-1;for(const a of e)if(!t(a,++r,e))return!1;return!0},extent:w,fcumsum:function(e,t){const r=new C;let a=-1;return Float64Array.from(e,void 0===t?e=>r.add(+e||0):i=>r.add(+t(i,++a,e)||0))},filter:function(e,t){if("function"!=typeof t)throw new TypeError("test is not a function");const r=[];let a=-1;for(const i of e)t(i,++a,e)&&r.push(i);return r},flatGroup:function(e,...t){return H(R(e,...t),t)},flatRollup:function(e,t,...r){return H(P(e,t,...r),r)},forceCenter:function(e,t){var r,a=1;function i(){var i,n,o=r.length,c=0,l=0;for(i=0;is+y||nu+y||ol.index){var f=s-c.x-c.vx,m=u-c.y-c.vy,g=f*f+m*m;ge.r&&(e.r=e[t].r)}function l(){if(t){var a,i,n=t.length;for(r=new Array(n),a=0;a[c(e,t,a),e])));for(o=0,i=new Array(s);o=c)){(e.data!==t||e.next)&&(0===h&&(y+=(h=vl(r))*h),0===d&&(y+=(d=vl(r))*d),y(e=(1664525*e+1013904223)%_l)/_l}();function h(){d(),s.call("tick",t),r1?(null==r?c.delete(e):c.set(e,y(r)),t):c.get(e)},find:function(t,r,a){var i,n,o,c,l,s=0,u=e.length;for(null==a?a=1/0:a*=a,s=0;s1?(s.on(e,r),t):s.on(e)}}},forceX:function(e){var t,r,a,i=bl(.1);function n(e){for(var i,n=0,o=t.length;n=.12&&i<.234&&a>=-.425&&a<-.214?c:i>=.166&&i<.234&&a>=-.214&&a<-.115?l:o).invert(e)},u.stream=function(r){return e&&t===r?e:e=function(e){var t=e.length;return{point:function(r,a){for(var i=-1;++i_u(a[0],a[1])&&(a[1]=i[1]),_u(i[0],a[1])>_u(a[0],a[1])&&(a[0]=i[0])):n.push(a=i);for(o=-1/0,t=0,a=n[r=n.length-1];t<=r;a=i,++t)i=n[t],(c=_u(a[1],i[0]))>o&&(o=c,Bs=i[0],Es=a[1])}return Is=Ws=null,Bs===1/0||Ls===1/0?[[NaN,NaN],[NaN,NaN]]:[[Bs,Ls],[Es,Rs]]},geoCentroid:function(e){eu=tu=ru=au=iu=nu=ou=cu=0,lu=new C,su=new C,uu=new C,Cs(e,Mu);var t=+lu,r=+su,a=+uu,i=cs(t,r,a);return i<$l&&(t=nu,r=ou,a=cu,tu=0))throw new RangeError(`invalid digits: ${e}`);i=t}return null===t&&(a=new Rd(i)),o},o.projection(e).digits(i).context(t)},geoProjection:Vd,geoProjectionMutator:jd,geoRotation:Vu,geoStereographic:function(){return Vd(mp).scale(250).clipAngle(142)},geoStereographicRaw:mp,geoStream:Cs,geoTransform:function(e){return{stream:Dd(e)}},geoTransverseMercator:function(){var e=rp(gp),t=e.center,r=e.rotate;return e.center=function(e){return arguments.length?t([-e[1],e[0]]):[(e=t())[1],-e[0]]},e.rotate=function(e){return arguments.length?r([e[0],e[1],e.length>2?e[2]+90:90]):[(e=r())[0],e[1],e[2]-90]},r([0,0,90]).scale(159.155)},geoTransverseMercatorRaw:gp,gray:ra,greatest:oe,greatestIndex:function(e,r=t){if(1===r.length)return te(e,r);let a,i=-1,n=-1;for(const t of e)++n,(i<0?0===r(t,t):r(t,a)>0)&&(a=t,i=n);return i},group:E,groupSort:function(e,r,a){return(2!==r.length?W(D(e,r,a),(([e,r],[a,i])=>t(r,i)||t(e,a))):W(E(e,a),(([e,a],[i,n])=>r(a,n)||t(e,i)))).map((([e])=>e))},groups:R,hcl:ua,hierarchy:Cp,histogram:X,hsl:Or,html:ll,image:function(e,t){return new Promise((function(r,a){var i=new Image;for(var n in t)i[n]=t[n];i.onerror=a,i.onload=function(){r(i)},i.src=e}))},index:function(e,...t){return G(e,L,N,t)},indexes:function(e,...t){return G(e,Array.from,N,t)},interpolate:Ja,interpolateArray:function(e,t){return(Na(t)?Pa:Ga)(e,t)},interpolateBasis:_a,interpolateBasisClosed:Sa,interpolateBlues:Sv,interpolateBrBG:Gb,interpolateBuGn:tv,interpolateBuPu:av,interpolateCividis:function(e){return e=Math.max(0,Math.min(1,e)),"rgb("+Math.max(0,Math.min(255,Math.round(-4.54-e*(35.34-e*(2381.73-e*(6402.7-e*(7024.72-2710.57*e)))))))+", "+Math.max(0,Math.min(255,Math.round(32.49+e*(170.73+e*(52.82-e*(131.46-e*(176.58-67.37*e)))))))+", "+Math.max(0,Math.min(255,Math.round(81.24+e*(442.36-e*(2482.43-e*(6167.24-e*(6614.94-2475.67*e)))))))+")"},interpolateCool:Iv,interpolateCubehelix:li,interpolateCubehelixDefault:Nv,interpolateCubehelixLong:si,interpolateDate:Ia,interpolateDiscrete:function(e){var t=e.length;return function(r){return e[Math.max(0,Math.min(t-1,Math.floor(r*t)))]}},interpolateGnBu:nv,interpolateGreens:Mv,interpolateGreys:Bv,interpolateHcl:ni,interpolateHclLong:oi,interpolateHsl:ri,interpolateHslLong:ai,interpolateHue:function(e,t){var r=Ta(+e,+t);return function(e){var t=r(e);return t-360*Math.floor(t/360)}},interpolateInferno:jv,interpolateLab:function(e,t){var r=La((e=aa(e)).l,(t=aa(t)).l),a=La(e.a,t.a),i=La(e.b,t.b),n=La(e.opacity,t.opacity);return function(t){return e.l=r(t),e.a=a(t),e.b=i(t),e.opacity=n(t),e+""}},interpolateMagma:Vv,interpolateNumber:Wa,interpolateNumberArray:Pa,interpolateObject:Fa,interpolateOrRd:cv,interpolateOranges:Pv,interpolatePRGn:Wb,interpolatePiYG:zb,interpolatePlasma:Yv,interpolatePuBu:hv,interpolatePuBuGn:sv,interpolatePuOr:Kb,interpolatePuRd:pv,interpolatePurples:Ev,interpolateRainbow:function(e){(e<0||e>1)&&(e-=Math.floor(e));var t=Math.abs(e-.5);return Wv.h=360*e-100,Wv.s=1.5-1.5*t,Wv.l=.8-.9*t,Wv+""},interpolateRdBu:Vb,interpolateRdGy:Yb,interpolateRdPu:fv,interpolateRdYlBu:Ub,interpolateRdYlGn:Zb,interpolateReds:Hv,interpolateRgb:Ea,interpolateRgbBasis:Ha,interpolateRgbBasisClosed:Da,interpolateRound:Va,interpolateSinebow:function(e){var t;return e=(.5-e)*Math.PI,Fv.r=255*(t=Math.sin(e))*t,Fv.g=255*(t=Math.sin(e+zv))*t,Fv.b=255*(t=Math.sin(e+Ov))*t,Fv+""},interpolateSpectral:Xb,interpolateString:Ka,interpolateTransformCss:Za,interpolateTransformSvg:Qa,interpolateTurbo:function(e){return e=Math.max(0,Math.min(1,e)),"rgb("+Math.max(0,Math.min(255,Math.round(34.61+e*(1172.33-e*(10793.56-e*(33300.12-e*(38394.49-14825.05*e)))))))+", "+Math.max(0,Math.min(255,Math.round(23.31+e*(557.33+e*(1225.33-e*(3574.96-e*(1073.77+707.56*e)))))))+", "+Math.max(0,Math.min(255,Math.round(27.2+e*(3211.1-e*(15327.97-e*(27814-e*(22569.18-6838.66*e)))))))+")"},interpolateViridis:Jv,interpolateWarm:Gv,interpolateYlGn:vv,interpolateYlGnBu:gv,interpolateYlOrBr:kv,interpolateYlOrRd:Cv,interpolateZoom:ei,interrupt:Ni,intersection:function(e,...t){e=new S(e),t=t.map(be);e:for(const r of e)for(const a of t)if(!a.has(r)){e.delete(r);continue e}return e},interval:function(e,t,r){var a=new Ci,i=t;return null==t?(a.restart(e,t,r),a):(a._restart=a.restart,a.restart=function(e,t,r){t=+t,r=null==r?ki():+r,a._restart((function n(o){o+=i,a._restart(n,i+=t,r),e(o)}),t,r)},a.restart(e,t,r),a)},isoFormat:pb,isoParse:yb,json:function(e,t){return fetch(e,t).then(nl)},lab:aa,lch:function(e,t,r,a){return 1===arguments.length?sa(e):new ha(r,t,e,null==a?1:a)},least:function(e,r=t){let a,i=!1;if(1===r.length){let n;for(const o of e){const e=r(o);(i?t(e,n)<0:0===t(e,e))&&(a=o,n=e,i=!0)}}else for(const t of e)(i?r(t,a)<0:0===r(t,t))&&(a=t,i=!0);return a},leastIndex:pe,line:xx,lineRadial:Tx,link:Ix,linkHorizontal:function(){return Ix(Hx)},linkRadial:Wx,linkVertical:function(){return Ix(Dx)},local:Ut,map:function(e,t){if("function"!=typeof e[Symbol.iterator])throw new TypeError("values is not iterable");if("function"!=typeof t)throw new TypeError("mapper is not a function");return Array.from(e,((r,a)=>t(r,a,e)))},matcher:Ve,max:ee,maxIndex:te,mean:function(e,t){let r=0,a=0;if(void 0===t)for(let t of e)null!=t&&(t=+t)>=t&&(++r,a+=t);else{let i=-1;for(let n of e)null!=(n=t(n,++i,e))&&(n=+n)>=n&&(++r,a+=n)}if(r)return a/r},median:function(e,t){return ce(e,.5,t)},medianIndex:function(e,t){return se(e,.5,t)},merge:ue,min:re,minIndex:ae,mode:function(e,t){const r=new _;if(void 0===t)for(let t of e)null!=t&&t>=t&&r.set(t,(r.get(t)||0)+1);else{let a=-1;for(let i of e)null!=(i=t(i,++a,e))&&i>=i&&r.set(i,(r.get(i)||0)+1)}let a,i=0;for(const[e,t]of r)t>i&&(i=t,a=e);return a},namespace:Ne,namespaces:Pe,nice:Z,now:ki,pack:function(){var e=null,t=1,r=1,a=Ep;function i(i){const n=Dp();return i.x=t/2,i.y=r/2,e?i.eachBefore(Up(e)).eachAfter(qp(a,.5,n)).eachBefore(Zp(1)):i.eachBefore(Up($p)).eachAfter(qp(Ep,1,n)).eachAfter(qp(a,i.r/Math.min(t,r),n)).eachBefore(Zp(Math.min(t,r)/(2*i.r))),i}return i.radius=function(t){return arguments.length?(e=Bp(t),i):e},i.size=function(e){return arguments.length?(t=+e[0],r=+e[1],i):[t,r]},i.padding=function(e){return arguments.length?(a="function"==typeof e?e:Rp(+e),i):a},i},packEnclose:function(e){return Pp(e,Dp())},packSiblings:function(e){return Yp(e,Dp()),e},pairs:function(e,t=he){const r=[];let a,i=!1;for(const n of e)i&&r.push(t(a,n)),a=n,i=!0;return r},partition:function(){var e=1,t=1,r=0,a=!1;function i(i){var n=i.height+1;return i.x0=i.y0=r,i.x1=e,i.y1=t/n,i.eachBefore(function(e,t){return function(a){a.children&&Xp(a,a.x0,e*(a.depth+1)/t,a.x1,e*(a.depth+2)/t);var i=a.x0,n=a.y0,o=a.x1-r,c=a.y1-r;o0&&(p+=h);for(null!=t?y.sort((function(e,r){return t(f[e],f[r])})):null!=r&&y.sort((function(e,t){return r(o[e],o[t])})),c=0,s=p?(g-d*v)/p:0;c0?h*s:0)+v,f[l]={data:o[l],index:c,value:h,startAngle:m,endAngle:u,padAngle:b};return f}return o.value=function(t){return arguments.length?(e="function"==typeof t?t:$v(+t),o):e},o.sortValues=function(e){return arguments.length?(t=e,r=null,o):t},o.sort=function(e){return arguments.length?(r=e,t=null,o):r},o.startAngle=function(e){return arguments.length?(a="function"==typeof e?e:$v(+e),o):a},o.endAngle=function(e){return arguments.length?(i="function"==typeof e?e:$v(+e),o):i},o.padAngle=function(e){return arguments.length?(n="function"==typeof e?e:$v(+e),o):n},o},piecewise:ui,pointRadial:Lx,pointer:Qt,pointers:function(e,t){return e.target&&(e=Zt(e),void 0===t&&(t=e.currentTarget),e=e.touches||[e]),Array.from(e,(e=>Qt(e,t)))},polygonArea:function(e){for(var t,r=-1,a=e.length,i=e[a-1],n=0;++rc!=s>c&&o<(l-r)*(c-a)/(s-a)+r&&(u=!u),l=r,s=a;return u},polygonHull:function(e){if((r=e.length)<3)return null;var t,r,a=new Array(r),i=new Array(r);for(t=0;t=0;--t)s.push(e[a[n[t]][2]]);for(t=+c;t(t=1664525*t+1013904223|0,Fy*(t>>>0))},randomLogNormal:Ay,randomLogistic:Iy,randomNormal:Sy,randomPareto:Ly,randomPoisson:Wy,randomUniform:Cy,randomWeibull:Ny,range:de,rank:function(e,r=t){if("function"!=typeof e[Symbol.iterator])throw new TypeError("values is not iterable");let a=Array.from(e);const i=new Float64Array(a.length);2!==r.length&&(a=a.map(r),r=t);const n=(e,t)=>r(a[e],a[t]);let o,c;return e=Uint32Array.from(a,((e,t)=>t)),e.sort(r===t?(e,t)=>z(a[e],a[t]):F(n)),e.forEach(((e,t)=>{const r=n(e,void 0===o?e:o);r>=0?((void 0===o||r>0)&&(o=e,c=t),i[e]=c):i[e]=NaN})),i},reduce:function(e,t,r){if("function"!=typeof t)throw new TypeError("reducer is not a function");const a=e[Symbol.iterator]();let i,n,o=-1;if(arguments.length<3){if(({done:i,value:r}=a.next()),i)return;++o}for(;({done:i,value:n}=a.next()),!i;)r=t(r,n,++o,e);return r},reverse:function(e){if("function"!=typeof e[Symbol.iterator])throw new TypeError("values is not iterable");return Array.from(e).reverse()},rgb:Hr,ribbon:function(){return No()},ribbonArrow:function(){return No(Po)},rollup:D,rollups:P,scaleBand:Vy,scaleDiverging:function e(){var t=af(kb()(Uy));return t.copy=function(){return vb(t,e())},Oy.apply(t,arguments)},scaleDivergingLog:function e(){var t=df(kb()).domain([.1,1,10]);return t.copy=function(){return vb(t,e()).base(t.base())},Oy.apply(t,arguments)},scaleDivergingPow:wb,scaleDivergingSqrt:function(){return wb.apply(null,arguments).exponent(.5)},scaleDivergingSymlog:function e(){var t=ff(kb());return t.copy=function(){return vb(t,e()).constant(t.constant())},Oy.apply(t,arguments)},scaleIdentity:function e(t){var r;function a(e){return null==e||isNaN(e=+e)?r:e}return a.invert=a,a.domain=a.range=function(e){return arguments.length?(t=Array.from(e,Yy),a):t.slice()},a.unknown=function(e){return arguments.length?(r=e,a):r},a.copy=function(){return e(t).unknown(r)},t=arguments.length?Array.from(t,Yy):[0,1],af(a)},scaleImplicit:Ky,scaleLinear:function e(){var t=tf();return t.copy=function(){return Xy(t,e())},zy.apply(t,arguments),af(t)},scaleLog:function e(){const t=df(ef()).domain([1,10]);return t.copy=()=>Xy(t,e()).base(t.base()),zy.apply(t,arguments),t},scaleOrdinal:Jy,scalePoint:function(){return jy(Vy.apply(null,arguments).paddingInner(1))},scalePow:xf,scaleQuantile:function e(){var r,a=[],i=[],n=[];function o(){var e=0,t=Math.max(1,i.length);for(n=new Array(t-1);++e0?n[t-1]:a[0],t=i?[n[i-1],a]:[n[t-1],n[t]]},l.unknown=function(e){return arguments.length?(t=e,l):l},l.thresholds=function(){return n.slice()},l.copy=function(){return e().domain([r,a]).range(o).unknown(t)},zy.apply(af(l),arguments)},scaleRadial:function e(){var t,r=tf(),a=[0,1],i=!1;function n(e){var a=function(e){return Math.sign(e)*Math.sqrt(Math.abs(e))}(r(e));return isNaN(a)?t:i?Math.round(a):a}return n.invert=function(e){return r.invert(kf(e))},n.domain=function(e){return arguments.length?(r.domain(e),n):r.domain()},n.range=function(e){return arguments.length?(r.range((a=Array.from(e,Yy)).map(kf)),n):a.slice()},n.rangeRound=function(e){return n.range(e).round(!0)},n.round=function(e){return arguments.length?(i=!!e,n):i},n.clamp=function(e){return arguments.length?(r.clamp(e),n):r.clamp()},n.unknown=function(e){return arguments.length?(t=e,n):t},n.copy=function(){return e(r.domain(),a).round(i).clamp(r.clamp()).unknown(t)},zy.apply(n,arguments),af(n)},scaleSequential:function e(){var t=af(bb()(Uy));return t.copy=function(){return vb(t,e())},Oy.apply(t,arguments)},scaleSequentialLog:function e(){var t=df(bb()).domain([1,10]);return t.copy=function(){return vb(t,e()).base(t.base())},Oy.apply(t,arguments)},scaleSequentialPow:xb,scaleSequentialQuantile:function e(){var r=[],a=Uy;function i(e){if(null!=e&&!isNaN(e=+e))return a((c(r,e,1)-1)/(r.length-1))}return i.domain=function(e){if(!arguments.length)return r.slice();r=[];for(let t of e)null==t||isNaN(t=+t)||r.push(t);return r.sort(t),i},i.interpolator=function(e){return arguments.length?(a=e,i):a},i.range=function(){return r.map(((e,t)=>a(t/(r.length-1))))},i.quantiles=function(e){return Array.from({length:e+1},((t,a)=>ce(r,a/e)))},i.copy=function(){return e(a).domain(r)},Oy.apply(i,arguments)},scaleSequentialSqrt:function(){return xb.apply(null,arguments).exponent(.5)},scaleSequentialSymlog:function e(){var t=ff(bb());return t.copy=function(){return vb(t,e()).constant(t.constant())},Oy.apply(t,arguments)},scaleSqrt:function(){return xf.apply(null,arguments).exponent(.5)},scaleSymlog:function e(){var t=ff(ef());return t.copy=function(){return Xy(t,e()).constant(t.constant())},zy.apply(t,arguments)},scaleThreshold:function e(){var t,r=[.5],a=[0,1],i=1;function n(e){return null!=e&&e<=e?a[c(r,e,0,i)]:t}return n.domain=function(e){return arguments.length?(r=Array.from(e),i=Math.min(r.length,a.length-1),n):r.slice()},n.range=function(e){return arguments.length?(a=Array.from(e),i=Math.min(r.length,a.length-1),n):a.slice()},n.invertExtent=function(e){var t=a.indexOf(e);return[r[t-1],r[t]]},n.unknown=function(e){return arguments.length?(t=e,n):t},n.copy=function(){return e().domain(r).range(a).unknown(t)},zy.apply(n,arguments)},scaleTime:function(){return zy.apply(gb(Gm,Im,Lm,Am,Zf,Jf,Ff,Nf,Df,Jm).domain([new Date(2e3,0,1),new Date(2e3,0,2)]),arguments)},scaleUtc:function(){return zy.apply(gb(Pm,Nm,Rm,Tm,dm,jf,Of,If,Df,jm).domain([Date.UTC(2e3,0,1),Date.UTC(2e3,0,2)]),arguments)},scan:function(e,t){const r=pe(e,t);return r<0?void 0:r},schemeAccent:Sb,schemeBlues:_v,schemeBrBG:Nb,schemeBuGn:ev,schemeBuPu:rv,schemeCategory10:_b,schemeDark2:Ab,schemeGnBu:iv,schemeGreens:Av,schemeGreys:Tv,schemeObservable10:Mb,schemeOrRd:ov,schemeOranges:Dv,schemePRGn:Ib,schemePaired:Tb,schemePastel1:Bb,schemePastel2:Lb,schemePiYG:Fb,schemePuBu:uv,schemePuBuGn:lv,schemePuOr:Ob,schemePuRd:dv,schemePurples:Lv,schemeRdBu:Jb,schemeRdGy:jb,schemeRdPu:yv,schemeRdYlBu:$b,schemeRdYlGn:qb,schemeReds:Rv,schemeSet1:Eb,schemeSet2:Rb,schemeSet3:Hb,schemeSpectral:Qb,schemeTableau10:Db,schemeYlGn:bv,schemeYlGnBu:mv,schemeYlOrBr:xv,schemeYlOrRd:wv,select:jt,selectAll:function(e){return"string"==typeof e?new Jt([document.querySelectorAll(e)],[document.documentElement]):new Jt([Oe(e)],Kt)},selection:Vt,selector:ze,selectorAll:Je,shuffle:ye,shuffler:fe,some:function(e,t){if("function"!=typeof t)throw new TypeError("test is not a function");let r=-1;for(const a of e)if(t(a,++r,e))return!0;return!1},sort:W,stack:function(){var e=$v([]),t=Zk,r=qk,a=Qk;function i(i){var n,o,c=Array.from(e.apply(this,arguments),Xk),l=c.length,s=-1;for(const e of i)for(n=0,++s;n0)for(var r,a,i,n,o,c,l=0,s=e[t[0]].length;l0?(a[0]=n,a[1]=n+=i):i<0?(a[1]=o,a[0]=o+=i):(a[0]=0,a[1]=i)},stackOffsetExpand:function(e,t){if((a=e.length)>0){for(var r,a,i,n=0,o=e[0].length;n0){for(var r,a=0,i=e[t[0]],n=i.length;a0&&(a=(r=e[t[0]]).length)>0){for(var r,a,i,n=0,o=1;ofunction(e){e=`${e}`;let t=e.length;oy(e,t-1)&&!oy(e,t-2)&&(e=e.slice(0,-1));return"/"===e[0]?e:`/${e}`}(e(t,r,a)))),r=t.map(ny),i=new Set(t).add("");for(const e of r)i.has(e)||(i.add(e),t.push(e),r.push(ny(e)),d.push(ry));p=(e,r)=>t[r],y=(e,t)=>r[t]}for(o=0,i=d.length;o=0&&(s=d[e]).data===ry;--e)s.data=null}if(c.parent=ey,c.eachBefore((function(e){e.depth=e.parent.depth+1,--i})).eachBefore(Mp),c.parent=null,i>0)throw new Error("cycle");return c}return a.id=function(e){return arguments.length?(t=Bp(e),a):t},a.parentId=function(e){return arguments.length?(r=Bp(e),a):r},a.path=function(t){return arguments.length?(e=Bp(t),a):e},a},style:yt,subset:function(e,t){return ve(t,e)},sum:function(e,t){let r=0;if(void 0===t)for(let t of e)(t=+t)&&(r+=t);else{let a=-1;for(let i of e)(i=+t(i,++a,e))&&(r+=i)}return r},superset:ve,svg:sl,symbol:pk,symbolAsterisk:zx,symbolCircle:Ox,symbolCross:Kx,symbolDiamond:jx,symbolDiamond2:Yx,symbolPlus:$x,symbolSquare:Ux,symbolSquare2:qx,symbolStar:ek,symbolTimes:uk,symbolTriangle:rk,symbolTriangle2:ik,symbolWye:sk,symbolX:uk,symbols:hk,symbolsFill:hk,symbolsStroke:dk,text:tl,thresholdFreedmanDiaconis:function(e,t,r){const a=m(e),i=ce(e,.75)-ce(e,.25);return a&&i?Math.ceil((r-t)/(2*i*Math.pow(a,-1/3))):1},thresholdScott:function(e,t,r){const a=m(e),i=k(e);return a&&i?Math.ceil((r-t)*Math.cbrt(a)/(3.49*i)):1},thresholdSturges:Q,tickFormat:rf,tickIncrement:U,tickStep:q,ticks:$,timeDay:Jf,timeDays:Vf,get timeFormat(){return Jm},timeFormatDefaultLocale:hb,timeFormatLocale:Om,timeFriday:rm,timeFridays:sm,timeHour:Ff,timeHours:zf,timeInterval:_f,timeMillisecond:Sf,timeMilliseconds:Af,timeMinute:Nf,timeMinutes:Gf,timeMonday:Qf,timeMondays:nm,timeMonth:Am,timeMonths:Mm,get timeParse(){return Vm},timeSaturday:am,timeSaturdays:um,timeSecond:Df,timeSeconds:Pf,timeSunday:Zf,timeSundays:im,timeThursday:tm,timeThursdays:lm,timeTickInterval:Im,timeTicks:Gm,timeTuesday:Xf,timeTuesdays:om,timeWednesday:em,timeWednesdays:cm,timeWeek:Zf,timeWeeks:im,timeYear:Lm,timeYears:Em,timeout:Bi,timer:_i,timerFlush:Si,transition:an,transpose:me,tree:py,treemap:function(){var e=gy,t=!1,r=1,a=1,i=[0],n=Ep,o=Ep,c=Ep,l=Ep,s=Ep;function u(e){return e.x0=e.y0=0,e.x1=r,e.y1=a,e.eachBefore(h),i=[0],t&&e.eachBefore(Qp),e}function h(t){var r=i[t.depth],a=t.x0+r,u=t.y0+r,h=t.x1-r,d=t.y1-r;h=r-1){var u=c[t];return u.x0=i,u.y0=n,u.x1=o,void(u.y1=l)}var h=s[t],d=a/2+h,p=t+1,y=r-1;for(;p>>1;s[f]l-n){var b=a?(i*g+o*m)/a:o;e(t,p,m,i,n,b,l),e(p,r,g,b,n,o,l)}else{var v=a?(n*g+l*m)/a:l;e(t,p,m,i,n,o,v),e(p,r,g,i,v,o,l)}}(0,l,e.value,t,r,a,i)},treemapDice:Xp,treemapResquarify:by,treemapSlice:yy,treemapSliceDice:function(e,t,r,a,i){(1&e.depth?yy:Xp)(e,t,r,a,i)},treemapSquarify:gy,tsv:il,tsvFormat:jc,tsvFormatBody:Yc,tsvFormatRow:Uc,tsvFormatRows:$c,tsvFormatValue:qc,tsvParse:Jc,tsvParseRows:Vc,union:function(...e){const t=new S;for(const r of e)for(const e of r)t.add(e);return t},unixDay:$f,unixDays:Uf,utcDay:jf,utcDays:Yf,get utcFormat(){return jm},utcFriday:gm,utcFridays:_m,utcHour:Of,utcHours:Kf,utcMillisecond:Sf,utcMilliseconds:Af,utcMinute:If,utcMinutes:Wf,utcMonday:pm,utcMondays:xm,utcMonth:Tm,utcMonths:Bm,get utcParse(){return Ym},utcSaturday:bm,utcSaturdays:Sm,utcSecond:Df,utcSeconds:Pf,utcSunday:dm,utcSundays:vm,utcThursday:mm,utcThursdays:Cm,utcTickInterval:Nm,utcTicks:Pm,utcTuesday:ym,utcTuesdays:km,utcWednesday:fm,utcWednesdays:wm,utcWeek:dm,utcWeeks:vm,utcYear:Rm,utcYears:Hm,variance:x,window:ut,xml:cl,zip:function(){return me(arguments)},zoom:gw,zoomIdentity:cw,zoomTransform:lw});class vw extends HTMLDivElement{main_svg=null;tree_data={};static observeAttributes=["backgroundPattern","backgroundSize","customBackground"];backgroundPattern=null;backgroundSize=void 0;customBackground=void 0;backgroundPosition="center";constructor(){super()}connectedCallback(){this.className="ts-root-wrapper-element tree-spider",this.backgroundPattern=this.getAttribute("backgroundPattern")||"default",this.backgroundSize=this.getAttribute("backgroundSize"),this.backgroundSize="undefined"==this.backgroundSize?void 0:this.backgroundSize,this.customBackground=this.getAttribute("customBackground"),this.customBackground="undefined"==this.customBackground?void 0:this.customBackground,this.backgroundPosition=this.getAttribute("backgroundPosition"),this.backgroundPosition="undefined"==this.backgroundPosition?void 0:this.backgroundPosition,this.setCanvasBg()}setCanvasBg(){const e={default:()=>this.defaultDotsPatternBg(),flux:()=>this.fluxPatternBg(),quad:()=>this.quadPatternBg(),blurry:()=>this.blurryBg(),chaos:()=>this.chaosPatternBg(),flurry:()=>this.flurryPatternBg(),spiral:()=>this.spiralPatternBg(),whirling:()=>this.whirlingPatternBg(),replicate:()=>this.replicatePatternBg(),scribble:()=>this.scribblePatternBg(),squiggly:()=>this.squigglyPatternBg(),gyrrate:()=>this.gyrratePatternBg(),leaves:()=>this.leavesPatternBg(),spot:()=>this.spotPatternBg()};if("none"==this.backgroundPattern)return;const t=this.customBackground||e[this.backgroundPattern]();let r;r="object"==typeof t?(new XMLSerializer).serializeToString(t.node()):t;const a=encodeURIComponent(r).replace(/\(/g,"%28").replace(/\)/g,"%29");null!=this.backgroundSize&&(this.style.backgroundSize=this.backgroundSize||"40%"),null!=this.backgroundPosition&&(this.style.backgroundPosition=this.backgroundPosition||"center");const i="data:image/svg+xml;charset=utf-8,"+a;this.style.setProperty("--ts-root-el-bg-image","url("+i+")")}defaultDotsPatternBg(){const e=Yt("svg").attr("width","20").attr("height","20");return e.append("rect").attr("width","20").attr("height","20").attr("fill","transparent"),e.append("circle").attr("cx","10").attr("cy","10").attr("r","1").attr("fill","rgb(150,150,150)"),this.style.backgroundSize=this.backgroundSize||"2%",e}fluxPatternBg(){return this.style.backgroundSize=this.backgroundSize||"20%",e.flux}quadPatternBg(){return this.style.backgroundSize=this.backgroundSize||"20%",e.quad}blurryBg(){return this.style.backgroundSize="20%",this.style.backgroundPosition=this.backgroundPosition||"center",e.blurry}chaosPatternBg(){return this.style.backgroundSize=this.backgroundSize||"50%",this.style.backgroundPosition=this.backgroundPosition||"center",e.chaos}spiralPatternBg(){return this.style.backgroundSize=this.backgroundSize||"100%",this.style.backgroundPosition=this.backgroundPosition||"center",e.spiral}flurryPatternBg(){return this.style.backgroundSize=this.backgroundSize||"30%",this.style.backgroundPosition=this.backgroundPosition||"center",e.flurry}whirlingPatternBg(){return this.style.backgroundSize=this.backgroundSize||"20%",this.style.backgroundPosition=this.backgroundPosition||"center",e.whirling}replicatePatternBg(){return this.style.backgroundSize=this.backgroundSize||"100%",this.style.backgroundPosition=this.backgroundPosition||"center",e.replicate}scribblePatternBg(){return this.style.backgroundSize=this.backgroundSize||"30%",this.style.backgroundPosition=this.backgroundPosition||"center",e.scribble}squigglyPatternBg(){return this.style.backgroundSize=this.backgroundSize||"20%",this.style.backgroundPosition=this.backgroundPosition||"center",e.squiggly}gyrratePatternBg(){return this.style.backgroundSize=this.backgroundSize||"100%",this.style.backgroundPosition=this.backgroundPosition||"center",e.gyrate}leavesPatternBg(){return this.style.backgroundSize=this.backgroundSize||"40%",this.style.backgroundPosition=this.backgroundPosition||"center",e.leaves}reflectionPatternBg(){return this.style.backgroundSize=this.backgroundSize||"20%",this.style.backgroundPosition=this.backgroundPosition||"center",e.reflection}spotPatternBg(){return this.style.backgroundSize=this.backgroundSize||"40%",this.style.backgroundPosition=this.backgroundPosition||"center",e.spot}}window.customElements.define("ts-root-container",vw,{extends:"div"});class xw extends HTMLDivElement{constructor(){super()}connectedCallback(){}}window.customElements.define("ts-element",xw,{extends:"div"});var kw={airline:{airline:[{name:"Aegean Airlines",iataCode:"A3"},{name:"Aeroflot",iataCode:"SU"},{name:"Aerolineas Argentinas",iataCode:"AR"},{name:"Aeromexico",iataCode:"AM"},{name:"Air Algerie",iataCode:"AH"},{name:"Air Arabia",iataCode:"G9"},{name:"Air Canada",iataCode:"AC"},{name:"Air China",iataCode:"CA"},{name:"Air Europa",iataCode:"UX"},{name:"Air France-KLM",iataCode:"AF"},{name:"Air India",iataCode:"AI"},{name:"Air Mauritius",iataCode:"MK"},{name:"Air New Zealand",iataCode:"NZ"},{name:"Air Niugini",iataCode:"PX"},{name:"Air Tahiti",iataCode:"VT"},{name:"Air Tahiti Nui",iataCode:"TN"},{name:"Air Transat",iataCode:"TS"},{name:"AirAsia X",iataCode:"D7"},{name:"AirAsia",iataCode:"AK"},{name:"Aircalin",iataCode:"SB"},{name:"Alaska Airlines",iataCode:"AS"},{name:"Alitalia",iataCode:"AZ"},{name:"All Nippon Airways",iataCode:"NH"},{name:"Allegiant Air",iataCode:"G4"},{name:"American Airlines",iataCode:"AA"},{name:"Asiana Airlines",iataCode:"OZ"},{name:"Avianca",iataCode:"AV"},{name:"Azul Linhas Aereas Brasileiras",iataCode:"AD"},{name:"Azur Air",iataCode:"ZF"},{name:"Beijing Capital Airlines",iataCode:"JD"},{name:"Boliviana de Aviacion",iataCode:"OB"},{name:"British Airways",iataCode:"BA"},{name:"Cathay Pacific",iataCode:"CX"},{name:"Cebu Pacific Air",iataCode:"5J"},{name:"China Airlines",iataCode:"CI"},{name:"China Eastern Airlines",iataCode:"MU"},{name:"China Southern Airlines",iataCode:"CZ"},{name:"Condor",iataCode:"DE"},{name:"Copa Airlines",iataCode:"CM"},{name:"Delta Air Lines",iataCode:"DL"},{name:"Easyfly",iataCode:"VE"},{name:"EasyJet",iataCode:"U2"},{name:"EcoJet",iataCode:"8J"},{name:"Egyptair",iataCode:"MS"},{name:"El Al",iataCode:"LY"},{name:"Emirates Airlines",iataCode:"EK"},{name:"Ethiopian Airlines",iataCode:"ET"},{name:"Etihad Airways",iataCode:"EY"},{name:"EVA Air",iataCode:"BR"},{name:"Fiji Airways",iataCode:"FJ"},{name:"Finnair",iataCode:"AY"},{name:"Flybondi",iataCode:"FO"},{name:"Flydubai",iataCode:"FZ"},{name:"FlySafair",iataCode:"FA"},{name:"Frontier Airlines",iataCode:"F9"},{name:"Garuda Indonesia",iataCode:"GA"},{name:"Go First",iataCode:"G8"},{name:"Gol Linhas Aereas Inteligentes",iataCode:"G3"},{name:"Hainan Airlines",iataCode:"HU"},{name:"Hawaiian Airlines",iataCode:"HA"},{name:"IndiGo Airlines",iataCode:"6E"},{name:"Japan Airlines",iataCode:"JL"},{name:"Jeju Air",iataCode:"7C"},{name:"Jet2",iataCode:"LS"},{name:"JetBlue Airways",iataCode:"B6"},{name:"JetSMART",iataCode:"JA"},{name:"Juneyao Airlines",iataCode:"HO"},{name:"Kenya Airways",iataCode:"KQ"},{name:"Korean Air",iataCode:"KE"},{name:"Kulula.com",iataCode:"MN"},{name:"LATAM Airlines",iataCode:"LA"},{name:"Lion Air",iataCode:"JT"},{name:"LOT Polish Airlines",iataCode:"LO"},{name:"Lufthansa",iataCode:"LH"},{name:"Libyan Airlines",iataCode:"LN"},{name:"Linea Aerea Amaszonas",iataCode:"Z8"},{name:"Malaysia Airlines",iataCode:"MH"},{name:"Nordwind Airlines",iataCode:"N4"},{name:"Norwegian Air Shuttle",iataCode:"DY"},{name:"Oman Air",iataCode:"WY"},{name:"Pakistan International Airlines",iataCode:"PK"},{name:"Pegasus Airlines",iataCode:"PC"},{name:"Philippine Airlines",iataCode:"PR"},{name:"Qantas Group",iataCode:"QF"},{name:"Qatar Airways",iataCode:"QR"},{name:"Republic Airways",iataCode:"YX"},{name:"Royal Air Maroc",iataCode:"AT"},{name:"Ryanair",iataCode:"FR"},{name:"S7 Airlines",iataCode:"S7"},{name:"SAS",iataCode:"SK"},{name:"Satena",iataCode:"9R"},{name:"Saudia",iataCode:"SV"},{name:"Shandong Airlines",iataCode:"SC"},{name:"Sichuan Airlines",iataCode:"3U"},{name:"Singapore Airlines",iataCode:"SQ"},{name:"Sky Airline",iataCode:"H2"},{name:"SkyWest Airlines",iataCode:"OO"},{name:"South African Airways",iataCode:"SA"},{name:"Southwest Airlines",iataCode:"WN"},{name:"SpiceJet",iataCode:"SG"},{name:"Spirit Airlines",iataCode:"NK"},{name:"Spring Airlines",iataCode:"9S"},{name:"SriLankan Airlines",iataCode:"UL"},{name:"Star Peru",iataCode:"2I"},{name:"Sun Country Airlines",iataCode:"SY"},{name:"SunExpress",iataCode:"XQ"},{name:"TAP Air Portugal",iataCode:"TP"},{name:"Thai AirAsia",iataCode:"FD"},{name:"Thai Airways",iataCode:"TG"},{name:"TUI Airways",iataCode:"BY"},{name:"Tunisair",iataCode:"TU"},{name:"Turkish Airlines",iataCode:"TK"},{name:"Ukraine International",iataCode:"PS"},{name:"United Airlines",iataCode:"UA"},{name:"Ural Airlines",iataCode:"U6"},{name:"VietJet Air",iataCode:"VJ"},{name:"Vietnam Airlines",iataCode:"VN"},{name:"Virgin Atlantic Airways",iataCode:"VS"},{name:"Virgin Australia",iataCode:"VA"},{name:"VivaAerobus",iataCode:"VB"},{name:"VOEPASS Linhas Aereas",iataCode:"2Z"},{name:"Volaris",iataCode:"Y4"},{name:"WestJet",iataCode:"WS"},{name:"Wingo",iataCode:"P5"},{name:"Wizz Air",iataCode:"W6"}],airplane:[{name:"Aerospatiale/BAC Concorde",iataTypeCode:"SSC"},{name:"Airbus A300",iataTypeCode:"AB3"},{name:"Airbus A310",iataTypeCode:"310"},{name:"Airbus A310-200",iataTypeCode:"312"},{name:"Airbus A310-300",iataTypeCode:"313"},{name:"Airbus A318",iataTypeCode:"318"},{name:"Airbus A319",iataTypeCode:"319"},{name:"Airbus A319neo",iataTypeCode:"31N"},{name:"Airbus A320",iataTypeCode:"320"},{name:"Airbus A320neo",iataTypeCode:"32N"},{name:"Airbus A321",iataTypeCode:"321"},{name:"Airbus A321neo",iataTypeCode:"32Q"},{name:"Airbus A330",iataTypeCode:"330"},{name:"Airbus A330-200",iataTypeCode:"332"},{name:"Airbus A330-300",iataTypeCode:"333"},{name:"Airbus A330-800neo",iataTypeCode:"338"},{name:"Airbus A330-900neo",iataTypeCode:"339"},{name:"Airbus A340",iataTypeCode:"340"},{name:"Airbus A340-200",iataTypeCode:"342"},{name:"Airbus A340-300",iataTypeCode:"343"},{name:"Airbus A340-500",iataTypeCode:"345"},{name:"Airbus A340-600",iataTypeCode:"346"},{name:"Airbus A350",iataTypeCode:"350"},{name:"Airbus A350-900",iataTypeCode:"359"},{name:"Airbus A350-1000",iataTypeCode:"351"},{name:"Airbus A380",iataTypeCode:"380"},{name:"Airbus A380-800",iataTypeCode:"388"},{name:"Antonov An-12",iataTypeCode:"ANF"},{name:"Antonov An-24",iataTypeCode:"AN4"},{name:"Antonov An-26",iataTypeCode:"A26"},{name:"Antonov An-28",iataTypeCode:"A28"},{name:"Antonov An-30",iataTypeCode:"A30"},{name:"Antonov An-32",iataTypeCode:"A32"},{name:"Antonov An-72",iataTypeCode:"AN7"},{name:"Antonov An-124 Ruslan",iataTypeCode:"A4F"},{name:"Antonov An-140",iataTypeCode:"A40"},{name:"Antonov An-148",iataTypeCode:"A81"},{name:"Antonov An-158",iataTypeCode:"A58"},{name:"Antonov An-225 Mriya",iataTypeCode:"A5F"},{name:"Boeing 707",iataTypeCode:"703"},{name:"Boeing 717",iataTypeCode:"717"},{name:"Boeing 720B",iataTypeCode:"B72"},{name:"Boeing 727",iataTypeCode:"727"},{name:"Boeing 727-100",iataTypeCode:"721"},{name:"Boeing 727-200",iataTypeCode:"722"},{name:"Boeing 737 MAX 7",iataTypeCode:"7M7"},{name:"Boeing 737 MAX 8",iataTypeCode:"7M8"},{name:"Boeing 737 MAX 9",iataTypeCode:"7M9"},{name:"Boeing 737 MAX 10",iataTypeCode:"7MJ"},{name:"Boeing 737",iataTypeCode:"737"},{name:"Boeing 737-100",iataTypeCode:"731"},{name:"Boeing 737-200",iataTypeCode:"732"},{name:"Boeing 737-300",iataTypeCode:"733"},{name:"Boeing 737-400",iataTypeCode:"734"},{name:"Boeing 737-500",iataTypeCode:"735"},{name:"Boeing 737-600",iataTypeCode:"736"},{name:"Boeing 737-700",iataTypeCode:"73G"},{name:"Boeing 737-800",iataTypeCode:"738"},{name:"Boeing 737-900",iataTypeCode:"739"},{name:"Boeing 747",iataTypeCode:"747"},{name:"Boeing 747-100",iataTypeCode:"741"},{name:"Boeing 747-200",iataTypeCode:"742"},{name:"Boeing 747-300",iataTypeCode:"743"},{name:"Boeing 747-400",iataTypeCode:"744"},{name:"Boeing 747-400D",iataTypeCode:"74J"},{name:"Boeing 747-8",iataTypeCode:"748"},{name:"Boeing 747SP",iataTypeCode:"74L"},{name:"Boeing 747SR",iataTypeCode:"74R"},{name:"Boeing 757",iataTypeCode:"757"},{name:"Boeing 757-200",iataTypeCode:"752"},{name:"Boeing 757-300",iataTypeCode:"753"},{name:"Boeing 767",iataTypeCode:"767"},{name:"Boeing 767-200",iataTypeCode:"762"},{name:"Boeing 767-300",iataTypeCode:"763"},{name:"Boeing 767-400",iataTypeCode:"764"},{name:"Boeing 777",iataTypeCode:"777"},{name:"Boeing 777-200",iataTypeCode:"772"},{name:"Boeing 777-200LR",iataTypeCode:"77L"},{name:"Boeing 777-300",iataTypeCode:"773"},{name:"Boeing 777-300ER",iataTypeCode:"77W"},{name:"Boeing 787",iataTypeCode:"787"},{name:"Boeing 787-8",iataTypeCode:"788"},{name:"Boeing 787-9",iataTypeCode:"789"},{name:"Boeing 787-10",iataTypeCode:"781"},{name:"Canadair Challenger",iataTypeCode:"CCJ"},{name:"Canadair CL-44",iataTypeCode:"CL4"},{name:"Canadair Regional Jet 100",iataTypeCode:"CR1"},{name:"Canadair Regional Jet 200",iataTypeCode:"CR2"},{name:"Canadair Regional Jet 700",iataTypeCode:"CR7"},{name:"Canadair Regional Jet 705",iataTypeCode:"CRA"},{name:"Canadair Regional Jet 900",iataTypeCode:"CR9"},{name:"Canadair Regional Jet 1000",iataTypeCode:"CRK"},{name:"De Havilland Canada DHC-2 Beaver",iataTypeCode:"DHP"},{name:"De Havilland Canada DHC-2 Turbo-Beaver",iataTypeCode:"DHR"},{name:"De Havilland Canada DHC-3 Otter",iataTypeCode:"DHL"},{name:"De Havilland Canada DHC-4 Caribou",iataTypeCode:"DHC"},{name:"De Havilland Canada DHC-6 Twin Otter",iataTypeCode:"DHT"},{name:"De Havilland Canada DHC-7 Dash 7",iataTypeCode:"DH7"},{name:"De Havilland Canada DHC-8-100 Dash 8 / 8Q",iataTypeCode:"DH1"},{name:"De Havilland Canada DHC-8-200 Dash 8 / 8Q",iataTypeCode:"DH2"},{name:"De Havilland Canada DHC-8-300 Dash 8 / 8Q",iataTypeCode:"DH3"},{name:"De Havilland Canada DHC-8-400 Dash 8Q",iataTypeCode:"DH4"},{name:"De Havilland DH.104 Dove",iataTypeCode:"DHD"},{name:"De Havilland DH.114 Heron",iataTypeCode:"DHH"},{name:"Douglas DC-3",iataTypeCode:"D3F"},{name:"Douglas DC-6",iataTypeCode:"D6F"},{name:"Douglas DC-8-50",iataTypeCode:"D8T"},{name:"Douglas DC-8-62",iataTypeCode:"D8L"},{name:"Douglas DC-8-72",iataTypeCode:"D8Q"},{name:"Douglas DC-9-10",iataTypeCode:"D91"},{name:"Douglas DC-9-20",iataTypeCode:"D92"},{name:"Douglas DC-9-30",iataTypeCode:"D93"},{name:"Douglas DC-9-40",iataTypeCode:"D94"},{name:"Douglas DC-9-50",iataTypeCode:"D95"},{name:"Douglas DC-10",iataTypeCode:"D10"},{name:"Douglas DC-10-10",iataTypeCode:"D1X"},{name:"Douglas DC-10-30",iataTypeCode:"D1Y"},{name:"Embraer 170",iataTypeCode:"E70"},{name:"Embraer 175",iataTypeCode:"E75"},{name:"Embraer 190",iataTypeCode:"E90"},{name:"Embraer 195",iataTypeCode:"E95"},{name:"Embraer E190-E2",iataTypeCode:"290"},{name:"Embraer E195-E2",iataTypeCode:"295"},{name:"Embraer EMB.110 Bandeirante",iataTypeCode:"EMB"},{name:"Embraer EMB.120 Brasilia",iataTypeCode:"EM2"},{name:"Embraer Legacy 600",iataTypeCode:"ER3"},{name:"Embraer Phenom 100",iataTypeCode:"EP1"},{name:"Embraer Phenom 300",iataTypeCode:"EP3"},{name:"Embraer RJ135",iataTypeCode:"ER3"},{name:"Embraer RJ140",iataTypeCode:"ERD"},{name:"Embraer RJ145 Amazon",iataTypeCode:"ER4"},{name:"Ilyushin IL18",iataTypeCode:"IL8"},{name:"Ilyushin IL62",iataTypeCode:"IL6"},{name:"Ilyushin IL76",iataTypeCode:"IL7"},{name:"Ilyushin IL86",iataTypeCode:"ILW"},{name:"Ilyushin IL96-300",iataTypeCode:"I93"},{name:"Ilyushin IL114",iataTypeCode:"I14"},{name:"Lockheed L-182 / 282 / 382 (L-100) Hercules",iataTypeCode:"LOH"},{name:"Lockheed L-188 Electra",iataTypeCode:"LOE"},{name:"Lockheed L-1011 Tristar",iataTypeCode:"L10"},{name:"Lockheed L-1049 Super Constellation",iataTypeCode:"L49"},{name:"McDonnell Douglas MD11",iataTypeCode:"M11"},{name:"McDonnell Douglas MD80",iataTypeCode:"M80"},{name:"McDonnell Douglas MD81",iataTypeCode:"M81"},{name:"McDonnell Douglas MD82",iataTypeCode:"M82"},{name:"McDonnell Douglas MD83",iataTypeCode:"M83"},{name:"McDonnell Douglas MD87",iataTypeCode:"M87"},{name:"McDonnell Douglas MD88",iataTypeCode:"M88"},{name:"McDonnell Douglas MD90",iataTypeCode:"M90"},{name:"Sukhoi Superjet 100-95",iataTypeCode:"SU9"},{name:"Tupolev Tu-134",iataTypeCode:"TU3"},{name:"Tupolev Tu-154",iataTypeCode:"TU5"},{name:"Tupolev Tu-204",iataTypeCode:"T20"},{name:"Yakovlev Yak-40",iataTypeCode:"YK4"},{name:"Yakovlev Yak-42",iataTypeCode:"YK2"}],airport:[{name:"Adelaide International Airport",iataCode:"ADL"},{name:"Adolfo Suarez Madrid-Barajas Airport",iataCode:"MAD"},{name:"Aeroparque Jorge Newbery Airport",iataCode:"AEP"},{name:"Afonso Pena International Airport",iataCode:"CWB"},{name:"Alfonso Bonilla Aragon International Airport",iataCode:"CLO"},{name:"Amsterdam Airport Schiphol",iataCode:"AMS"},{name:"Arturo Merino Benitez International Airport",iataCode:"SCL"},{name:"Auckland International Airport",iataCode:"AKL"},{name:"Beijing Capital International Airport",iataCode:"PEK"},{name:"Belem Val de Cans International Airport",iataCode:"BEL"},{name:"Belo Horizonte Tancredo Neves International Airport",iataCode:"CNF"},{name:"Berlin-Tegel Airport",iataCode:"TXL"},{name:"Bole International Airport",iataCode:"ADD"},{name:"Brasilia-Presidente Juscelino Kubitschek International Airport",iataCode:"BSB"},{name:"Brisbane International Airport",iataCode:"BNE"},{name:"Brussels Airport",iataCode:"BRU"},{name:"Cairns Airport",iataCode:"CNS"},{name:"Cairo International Airport",iataCode:"CAI"},{name:"Canberra Airport",iataCode:"CBR"},{name:"Capetown International Airport",iataCode:"CPT"},{name:"Charles de Gaulle International Airport",iataCode:"CDG"},{name:"Charlotte Douglas International Airport",iataCode:"CLT"},{name:"Chengdu Shuangliu International Airport",iataCode:"CTU"},{name:"Chhatrapati Shivaji International Airport",iataCode:"BOM"},{name:"Chicago O'Hare International Airport",iataCode:"ORD"},{name:"Chongqing Jiangbei International Airport",iataCode:"CKG"},{name:"Christchurch International Airport",iataCode:"CHC"},{name:"Copenhagen Kastrup Airport",iataCode:"CPH"},{name:"Dallas Fort Worth International Airport",iataCode:"DFW"},{name:"Daniel K. Inouye International Airport",iataCode:"HNL"},{name:"Denver International Airport",iataCode:"DEN"},{name:"Don Mueang International Airport",iataCode:"DMK"},{name:"Dubai International Airport",iataCode:"DXB"},{name:"Dublin Airport",iataCode:"DUB"},{name:"Dusseldorf Airport",iataCode:"DUS"},{name:"El Dorado International Airport",iataCode:"BOG"},{name:"Eleftherios Venizelos International Airport",iataCode:"ATH"},{name:"Faa'a International Airport",iataCode:"PPT"},{name:"Fort Lauderdale Hollywood International Airport",iataCode:"FLL"},{name:"Fortaleza Pinto Martins International Airport",iataCode:"FOR"},{name:"Frankfurt am Main Airport",iataCode:"FRA"},{name:"George Bush Intercontinental Houston Airport",iataCode:"IAH"},{name:"Gold Coast Airport",iataCode:"OOL"},{name:"Guarulhos - Governador Andre Franco Montoro International Airport",iataCode:"GRU"},{name:"Hartsfield-Jackson Atlanta International Airport",iataCode:"ATL"},{name:"Helsinki Vantaa Airport",iataCode:"HEL"},{name:"Hobart International Airport",iataCode:"HBA"},{name:"Hong Kong International Airport",iataCode:"HKG"},{name:"Houari Boumediene Airport",iataCode:"ALG"},{name:"Hurgada International Airport",iataCode:"HRG"},{name:"Incheon International Airport",iataCode:"ICN"},{name:"Indira Gandhi International Airport",iataCode:"DEL"},{name:"Istanbul Airport",iataCode:"IST"},{name:"Jacksons International Airport",iataCode:"POM"},{name:"Jeju International Airport",iataCode:"CJU"},{name:"John F Kennedy International Airport",iataCode:"JFK"},{name:"Jorge Chavez International Airport",iataCode:"LIM"},{name:"Jose Maria Cordova International Airport",iataCode:"MDE"},{name:"Josep Tarradellas Barcelona-El Prat Airport",iataCode:"BCN"},{name:"Kahului Airport",iataCode:"OGG"},{name:"King Abdulaziz International Airport",iataCode:"JED"},{name:"Kuala Lumpur International Airport",iataCode:"KUL"},{name:"Kunming Changshui International Airport",iataCode:"KMG"},{name:"La Tontouta International Airport",iataCode:"NOU"},{name:"Leonardo da Vinci-Fiumicino Airport",iataCode:"FCO"},{name:"London Heathrow Airport",iataCode:"LHR"},{name:"Los Angeles International Airport",iataCode:"LAX"},{name:"McCarran International Airport",iataCode:"LAS"},{name:"Melbourne International Airport",iataCode:"MEL"},{name:"Mexico City International Airport",iataCode:"MEX"},{name:"Miami International Airport",iataCode:"MIA"},{name:"Ministro Pistarini International Airport",iataCode:"EZE"},{name:"Minneapolis-St Paul International/Wold-Chamberlain Airport",iataCode:"MSP"},{name:"Mohammed V International Airport",iataCode:"CMN"},{name:"Moscow Domodedovo Airport",iataCode:"DME"},{name:"Munich Airport",iataCode:"MUC"},{name:"Murtala Muhammed International Airport",iataCode:"LOS"},{name:"Nadi International Airport",iataCode:"NAN"},{name:"Nairobi Jomo Kenyatta International Airport",iataCode:"NBO"},{name:"Narita International Airport",iataCode:"NRT"},{name:"Newark Liberty International Airport",iataCode:"EWR"},{name:"Ninoy Aquino International Airport",iataCode:"MNL"},{name:"Noumea Magenta Airport",iataCode:"GEA"},{name:"O. R. Tambo International Airport",iataCode:"JNB"},{name:"Orlando International Airport",iataCode:"MCO"},{name:"Oslo Lufthavn",iataCode:"OSL"},{name:"Perth Airport",iataCode:"PER"},{name:"Phoenix Sky Harbor International Airport",iataCode:"PHX"},{name:"Recife Guararapes-Gilberto Freyre International Airport",iataCode:"REC"},{name:"Rio de Janeiro Galeao International Airport",iataCode:"GIG"},{name:"Salgado Filho International Airport",iataCode:"POA"},{name:"Salvador Deputado Luis Eduardo Magalhaes International Airport",iataCode:"SSA"},{name:"San Francisco International Airport",iataCode:"SFO"},{name:"Santos Dumont Airport",iataCode:"SDU"},{name:"Sao Paulo-Congonhas Airport",iataCode:"CGH"},{name:"Seattle Tacoma International Airport",iataCode:"SEA"},{name:"Shanghai Hongqiao International Airport",iataCode:"SHA"},{name:"Shanghai Pudong International Airport",iataCode:"PVG"},{name:"Shenzhen Bao'an International Airport",iataCode:"SZX"},{name:"Sheremetyevo International Airport",iataCode:"SVO"},{name:"Singapore Changi Airport",iataCode:"SIN"},{name:"Soekarno-Hatta International Airport",iataCode:"CGK"},{name:'Stockholm-Arlanda Airport"',iataCode:"ARN"},{name:"Suvarnabhumi Airport",iataCode:"BKK"},{name:"Sydney Kingsford Smith International Airport",iataCode:"SYD"},{name:"Taiwan Taoyuan International Airport",iataCode:"TPE"},{name:"Tan Son Nhat International Airport",iataCode:"SGN"},{name:"Tokyo Haneda International Airport",iataCode:"HND"},{name:"Toronto Pearson International Airport",iataCode:"YYZ"},{name:"Tunis Carthage International Airport",iataCode:"TUN"},{name:"Vancouver International Airport",iataCode:"YVR"},{name:"Vienna International Airport",iataCode:"VIE"},{name:"Viracopos International Airport",iataCode:"VCP"},{name:"Vnukovo International Airport",iataCode:"VKO"},{name:"Wellington International Airport",iataCode:"WLG"},{name:"Xi'an Xianyang International Airport",iataCode:"XIY"},{name:"Zhukovsky International Airport",iataCode:"ZIA"},{name:"Zurich Airport",iataCode:"ZRH"}]},animal:{bear:["American black bear","Asian black bear","Brown bear","Giant panda","Polar bear","Sloth bear","Spectacled bear","Sun bear"],bird:["Abert's Towhee","Acadian Flycatcher","Acorn Woodpecker","Alder Flycatcher","Aleutian Tern","Allen's Hummingbird","Altamira Oriole","American Avocet","American Bittern","American Black Duck","American Coot","American Crow","American Dipper","American Golden-Plover","American Goldfinch","American Kestrel","American Oystercatcher","American Pipit","American Redstart","American Robin","American Tree Sparrow","American White Pelican","American Wigeon","American Woodcock","Ancient Murrelet","Anhinga","Anna's Hummingbird","Antillean Nighthawk","Antillean Palm Swift","Aplomado Falcon","Arctic Loon","Arctic Tern","Arctic Warbler","Ash-throated Flycatcher","Ashy Storm-Petrel","Asian Brown Flycatcher","Atlantic Puffin","Audubon's Oriole","Audubon's Shearwater","Aztec Thrush","Azure Gallinule","Bachman's Sparrow","Bachman's Warbler","Bahama Mockingbird","Bahama Swallow","Bahama Woodstar","Baikal Teal","Baird's Sandpiper","Baird's Sparrow","Bald Eagle","Baltimore Oriole","Bananaquit","Band-rumped Storm-Petrel","Band-tailed Gull","Band-tailed Pigeon","Bank Swallow","Bar-tailed Godwit","Barn Owl","Barn Swallow","Barnacle Goose","Barred Owl","Barrow's Goldeneye","Bay-breasted Warbler","Bean Goose","Bell's Vireo","Belted Kingfisher","Bendire's Thrasher","Berylline Hummingbird","Bewick's Wren","Bicknell's Thrush","Black Catbird","Black Guillemot","Black Noddy","Black Oystercatcher","Black Phoebe","Black Rail","Black Rosy-Finch","Black Scoter","Black Skimmer","Black Storm-Petrel","Black Swift","Black Tern","Black Turnstone","Black Vulture","Black-and-white Warbler","Black-backed Wagtail","Black-backed Woodpecker","Black-bellied Plover","Black-bellied Whistling-Duck","Black-billed Cuckoo","Black-billed Magpie","Black-browed Albatross","Black-capped Chickadee","Black-capped Gnatcatcher","Black-capped Petrel","Black-capped Vireo","Black-chinned Hummingbird","Black-chinned Sparrow","Black-crowned Night-Heron","Black-faced Grassquit","Black-footed Albatross","Black-headed Grosbeak","Black-headed Gull","Black-legged Kittiwake","Black-necked Stilt","Black-tailed Gnatcatcher","Black-tailed Godwit","Black-tailed Gull","Black-throated Blue Warbler","Black-throated Gray Warbler","Black-throated Green Warbler","Black-throated Sparrow","Black-vented Oriole","Black-vented Shearwater","Black-whiskered Vireo","Black-winged Stilt","Blackburnian Warbler","Blackpoll Warbler","Blue Bunting","Blue Grosbeak","Blue Grouse","Blue Jay","Blue Mockingbird","Blue-footed Booby","Blue-gray Gnatcatcher","Blue-headed Vireo","Blue-throated Hummingbird","Blue-winged Teal","Blue-winged Warbler","Bluethroat","Boat-tailed Grackle","Bobolink","Bohemian Waxwing","Bonaparte's Gull","Boreal Chickadee","Boreal Owl","Botteri's Sparrow","Brambling","Brandt's Cormorant","Brant","Brewer's Blackbird","Brewer's Sparrow","Bridled Tern","Bridled Titmouse","Bristle-thighed Curlew","Broad-billed Hummingbird","Broad-billed Sandpiper","Broad-tailed Hummingbird","Broad-winged Hawk","Bronzed Cowbird","Brown Booby","Brown Creeper","Brown Jay","Brown Noddy","Brown Pelican","Brown Shrike","Brown Thrasher","Brown-capped Rosy-Finch","Brown-chested Martin","Brown-crested Flycatcher","Brown-headed Cowbird","Brown-headed Nuthatch","Budgerigar","Buff-bellied Hummingbird","Buff-breasted Flycatcher","Buff-breasted Sandpiper","Buff-collared Nightjar","Bufflehead","Buller's Shearwater","Bullock's Oriole","Bumblebee Hummingbird","Burrowing Owl","Bushtit","Cactus Wren","California Condor","California Gnatcatcher","California Gull","California Quail","California Thrasher","California Towhee","Calliope Hummingbird","Canada Goose","Canada Warbler","Canvasback","Canyon Towhee","Canyon Wren","Cape May Warbler","Caribbean Elaenia","Carolina Chickadee","Carolina Parakeet","Carolina Wren","Caspian Tern","Cassin's Auklet","Cassin's Finch","Cassin's Kingbird","Cassin's Sparrow","Cassin's Vireo","Cattle Egret","Cave Swallow","Cedar Waxwing","Cerulean Warbler","Chestnut-backed Chickadee","Chestnut-collared Longspur","Chestnut-sided Warbler","Chihuahuan Raven","Chimney Swift","Chinese Egret","Chipping Sparrow","Chuck-will's-widow","Chukar","Cinnamon Hummingbird","Cinnamon Teal","Citrine Wagtail","Clapper Rail","Clark's Grebe","Clark's Nutcracker","Clay-colored Robin","Clay-colored Sparrow","Cliff Swallow","Colima Warbler","Collared Forest-Falcon","Collared Plover","Common Black-Hawk","Common Chaffinch","Common Crane","Common Cuckoo","Common Eider","Common Goldeneye","Common Grackle","Common Greenshank","Common Ground-Dove","Common House-Martin","Common Loon","Common Merganser","Common Moorhen","Common Murre","Common Nighthawk","Common Pauraque","Common Pochard","Common Poorwill","Common Raven","Common Redpoll","Common Ringed Plover","Common Rosefinch","Common Sandpiper","Common Snipe","Common Swift","Common Tern","Common Yellowthroat","Connecticut Warbler","Cook's Petrel","Cooper's Hawk","Cordilleran Flycatcher","Corn Crake","Cory's Shearwater","Costa's Hummingbird","Couch's Kingbird","Crane Hawk","Craveri's Murrelet","Crescent-chested Warbler","Crested Auklet","Crested Caracara","Crested Myna","Crimson-collared Grosbeak","Crissal Thrasher","Cuban Martin","Curlew Sandpiper","Curve-billed Thrasher","Dark-eyed Junco","Dickcissel","Double-crested Cormorant","Double-striped Thick-knee","Dovekie","Downy Woodpecker","Dunlin","Dusky Flycatcher","Dusky Thrush","Dusky Warbler","Dusky-capped Flycatcher","Eared Grebe","Eared Trogon","Eastern Bluebird","Eastern Kingbird","Eastern Meadowlark","Eastern Phoebe","Eastern Screech-Owl","Eastern Towhee","Eastern Wood-Pewee","Elegant Tern","Elegant Trogon","Elf Owl","Emperor Goose","Eskimo Curlew","Eurasian Blackbird","Eurasian Bullfinch","Eurasian Collared-Dove","Eurasian Coot","Eurasian Curlew","Eurasian Dotterel","Eurasian Hobby","Eurasian Jackdaw","Eurasian Kestrel","Eurasian Oystercatcher","Eurasian Siskin","Eurasian Tree Sparrow","Eurasian Wigeon","Eurasian Woodcock","Eurasian Wryneck","European Golden-Plover","European Starling","European Storm-Petrel","European Turtle-Dove","Evening Grosbeak","Eyebrowed Thrush","Falcated Duck","Fan-tailed Warbler","Far Eastern Curlew","Ferruginous Hawk","Ferruginous Pygmy-Owl","Field Sparrow","Fieldfare","Fish Crow","Five-striped Sparrow","Flame-colored Tanager","Flammulated Owl","Flesh-footed Shearwater","Florida Scrub-Jay","Fork-tailed Flycatcher","Fork-tailed Storm-Petrel","Fork-tailed Swift","Forster's Tern","Fox Sparrow","Franklin's Gull","Fulvous Whistling-Duck","Gadwall","Gambel's Quail","Garganey","Gila Woodpecker","Gilded Flicker","Glaucous Gull","Glaucous-winged Gull","Glossy Ibis","Golden Eagle","Golden-cheeked Warbler","Golden-crowned Kinglet","Golden-crowned Sparrow","Golden-crowned Warbler","Golden-fronted Woodpecker","Golden-winged Warbler","Grace's Warbler","Grasshopper Sparrow","Gray Bunting","Gray Catbird","Gray Flycatcher","Gray Hawk","Gray Jay","Gray Kingbird","Gray Partridge","Gray Silky-flycatcher","Gray Vireo","Gray Wagtail","Gray-breasted Martin","Gray-cheeked Thrush","Gray-crowned Rosy-Finch","Gray-crowned Yellowthroat","Gray-headed Chickadee","Gray-spotted Flycatcher","Gray-tailed Tattler","Great Auk","Great Black-backed Gull","Great Blue Heron","Great Cormorant","Great Crested Flycatcher","Great Egret","Great Frigatebird","Great Gray Owl","Great Horned Owl","Great Kiskadee","Great Knot","Great Skua","Great Spotted Woodpecker","Great-tailed Grackle","Greater Flamingo","Greater Pewee","Greater Prairie-chicken","Greater Roadrunner","Greater Scaup","Greater Shearwater","Greater White-fronted Goose","Greater Yellowlegs","Green Heron","Green Jay","Green Kingfisher","Green Sandpiper","Green Violet-ear","Green-breasted Mango","Green-tailed Towhee","Green-winged Teal","Greenish Elaenia","Groove-billed Ani","Gull-billed Tern","Gyrfalcon","Hairy Woodpecker","Hammond's Flycatcher","Harlequin Duck","Harris's Hawk","Harris's Sparrow","Hawfinch","Heermann's Gull","Henslow's Sparrow","Hepatic Tanager","Herald Petrel","Hermit Thrush","Hermit Warbler","Herring Gull","Himalayan Snowcock","Hoary Redpoll","Hooded Merganser","Hooded Oriole","Hooded Warbler","Hook-billed Kite","Hoopoe","Horned Grebe","Horned Lark","Horned Puffin","House Finch","House Sparrow","House Wren","Hudsonian Godwit","Hutton's Vireo","Iceland Gull","Inca Dove","Indigo Bunting","Island Scrub-Jay","Ivory Gull","Ivory-billed Woodpecker","Jabiru","Jack Snipe","Jungle Nightjar","Juniper Titmouse","Kentucky Warbler","Key West Quail-Dove","Killdeer","King Eider","King Rail","Kirtland's Warbler","Kittlitz's Murrelet","La Sagra's Flycatcher","Labrador Duck","Ladder-backed Woodpecker","Lanceolated Warbler","Lapland Longspur","Large-billed Tern","Lark Bunting","Lark Sparrow","Laughing Gull","Lawrence's Goldfinch","Laysan Albatross","Lazuli Bunting","Le Conte's Sparrow","Le Conte's Thrasher","Leach's Storm-Petrel","Least Auklet","Least Bittern","Least Flycatcher","Least Grebe","Least Sandpiper","Least Storm-Petrel","Least Tern","Lesser Black-backed Gull","Lesser Frigatebird","Lesser Goldfinch","Lesser Nighthawk","Lesser Prairie-chicken","Lesser Scaup","Lesser White-fronted Goose","Lesser Yellowlegs","Lewis's Woodpecker","Limpkin","Lincoln's Sparrow","Little Blue Heron","Little Bunting","Little Curlew","Little Egret","Little Gull","Little Ringed Plover","Little Shearwater","Little Stint","Loggerhead Kingbird","Loggerhead Shrike","Long-billed Curlew","Long-billed Dowitcher","Long-billed Murrelet","Long-billed Thrasher","Long-eared Owl","Long-tailed Jaeger","Long-toed Stint","Louisiana Waterthrush","Lucifer Hummingbird","Lucy's Warbler","MacGillivray's Warbler","Magnificent Frigatebird","Magnificent Hummingbird","Magnolia Warbler","Mallard","Mangrove Cuckoo","Manx Shearwater","Marbled Godwit","Marbled Murrelet","Marsh Sandpiper","Marsh Wren","Masked Booby","Masked Duck","Masked Tityra","McCown's Longspur","McKay's Bunting","Merlin","Mew Gull","Mexican Chickadee","Mexican Jay","Middendorff's Grasshopper-Warbler","Mississippi Kite","Mongolian Plover","Monk Parakeet","Montezuma Quail","Mottled Duck","Mottled Owl","Mottled Petrel","Mountain Bluebird","Mountain Chickadee","Mountain Plover","Mountain Quail","Mourning Dove","Mourning Warbler","Mugimaki Flycatcher","Murphy's Petrel","Muscovy Duck","Mute Swan","Narcissus Flycatcher","Nashville Warbler","Nelson's Sharp-tailed Sparrow","Neotropic Cormorant","Northern Beardless-Tyrannulet","Northern Bobwhite","Northern Cardinal","Northern Flicker","Northern Fulmar","Northern Gannet","Northern Goshawk","Northern Harrier","Northern Hawk Owl","Northern Jacana","Northern Lapwing","Northern Mockingbird","Northern Parula","Northern Pintail","Northern Pygmy-Owl","Northern Rough-winged Swallow","Northern Saw-whet Owl","Northern Shoveler","Northern Shrike","Northern Waterthrush","Northern Wheatear","Northwestern Crow","Nuttall's Woodpecker","Nutting's Flycatcher","Oak Titmouse","Oldsquaw","Olive Sparrow","Olive Warbler","Olive-backed Pipit","Olive-sided Flycatcher","Orange-crowned Warbler","Orchard Oriole","Oriental Cuckoo","Oriental Greenfinch","Oriental Pratincole","Oriental Scops-Owl","Oriental Turtle-Dove","Osprey","Ovenbird","Pacific Golden-Plover","Pacific Loon","Pacific-slope Flycatcher","Paint-billed Crake","Painted Bunting","Painted Redstart","Pallas's Bunting","Palm Warbler","Parakeet Auklet","Parasitic Jaeger","Passenger Pigeon","Pechora Pipit","Pectoral Sandpiper","Pelagic Cormorant","Peregrine Falcon","Phainopepla","Philadelphia Vireo","Pied-billed Grebe","Pigeon Guillemot","Pileated Woodpecker","Pin-tailed Snipe","Pine Bunting","Pine Grosbeak","Pine Siskin","Pine Warbler","Pink-footed Goose","Pink-footed Shearwater","Pinyon Jay","Piping Plover","Plain Chachalaca","Plain-capped Starthroat","Plumbeous Vireo","Pomarine Jaeger","Prairie Falcon","Prairie Warbler","Prothonotary Warbler","Purple Finch","Purple Gallinule","Purple Martin","Purple Sandpiper","Pygmy Nuthatch","Pyrrhuloxia","Razorbill","Red Crossbill","Red Knot","Red Phalarope","Red-bellied Woodpecker","Red-billed Pigeon","Red-billed Tropicbird","Red-breasted Flycatcher","Red-breasted Merganser","Red-breasted Nuthatch","Red-breasted Sapsucker","Red-cockaded Woodpecker","Red-crowned Parrot","Red-eyed Vireo","Red-faced Cormorant","Red-faced Warbler","Red-flanked Bluetail","Red-footed Booby","Red-headed Woodpecker","Red-legged Kittiwake","Red-naped Sapsucker","Red-necked Grebe","Red-necked Phalarope","Red-necked Stint","Red-shouldered Hawk","Red-tailed Hawk","Red-tailed Tropicbird","Red-throated Loon","Red-throated Pipit","Red-whiskered Bulbul","Red-winged Blackbird","Reddish Egret","Redhead","Redwing","Reed Bunting","Rhinoceros Auklet","Ring-billed Gull","Ring-necked Duck","Ring-necked Pheasant","Ringed Kingfisher","Roadside Hawk","Rock Dove","Rock Ptarmigan","Rock Sandpiper","Rock Wren","Rose-breasted Grosbeak","Rose-throated Becard","Roseate Spoonbill","Roseate Tern","Ross's Goose","Ross's Gull","Rough-legged Hawk","Royal Tern","Ruby-crowned Kinglet","Ruby-throated Hummingbird","Ruddy Duck","Ruddy Ground-Dove","Ruddy Quail-Dove","Ruddy Turnstone","Ruff","Ruffed Grouse","Rufous Hummingbird","Rufous-backed Robin","Rufous-capped Warbler","Rufous-crowned Sparrow","Rufous-winged Sparrow","Rustic Bunting","Rusty Blackbird","Sabine's Gull","Sage Grouse","Sage Sparrow","Sage Thrasher","Saltmarsh Sharp-tailed Sparrow","Sanderling","Sandhill Crane","Sandwich Tern","Savannah Sparrow","Say's Phoebe","Scaled Quail","Scaly-naped Pigeon","Scarlet Ibis","Scarlet Tanager","Scissor-tailed Flycatcher","Scott's Oriole","Seaside Sparrow","Sedge Wren","Semipalmated Plover","Semipalmated Sandpiper","Sharp-shinned Hawk","Sharp-tailed Grouse","Sharp-tailed Sandpiper","Shiny Cowbird","Short-billed Dowitcher","Short-eared Owl","Short-tailed Albatross","Short-tailed Hawk","Short-tailed Shearwater","Shy Albatross","Siberian Accentor","Siberian Blue Robin","Siberian Flycatcher","Siberian Rubythroat","Sky Lark","Slate-throated Redstart","Slaty-backed Gull","Slender-billed Curlew","Smew","Smith's Longspur","Smooth-billed Ani","Snail Kite","Snow Bunting","Snow Goose","Snowy Egret","Snowy Owl","Snowy Plover","Solitary Sandpiper","Song Sparrow","Sooty Shearwater","Sooty Tern","Sora","South Polar Skua","Southern Martin","Spectacled Eider","Spoonbill Sandpiper","Spot-billed Duck","Spot-breasted Oriole","Spotted Dove","Spotted Owl","Spotted Rail","Spotted Redshank","Spotted Sandpiper","Spotted Towhee","Sprague's Pipit","Spruce Grouse","Stejneger's Petrel","Steller's Eider","Steller's Jay","Steller's Sea-Eagle","Stilt Sandpiper","Stonechat","Streak-backed Oriole","Streaked Shearwater","Strickland's Woodpecker","Stripe-headed Tanager","Sulphur-bellied Flycatcher","Summer Tanager","Surf Scoter","Surfbird","Swainson's Hawk","Swainson's Thrush","Swainson's Warbler","Swallow-tailed Kite","Swamp Sparrow","Tamaulipas Crow","Tawny-shouldered Blackbird","Temminck's Stint","Tennessee Warbler","Terek Sandpiper","Thayer's Gull","Thick-billed Kingbird","Thick-billed Murre","Thick-billed Parrot","Thick-billed Vireo","Three-toed Woodpecker","Townsend's Solitaire","Townsend's Warbler","Tree Pipit","Tree Swallow","Tricolored Blackbird","Tricolored Heron","Tropical Kingbird","Tropical Parula","Trumpeter Swan","Tufted Duck","Tufted Flycatcher","Tufted Puffin","Tufted Titmouse","Tundra Swan","Turkey Vulture","Upland Sandpiper","Varied Bunting","Varied Thrush","Variegated Flycatcher","Vaux's Swift","Veery","Verdin","Vermilion Flycatcher","Vesper Sparrow","Violet-crowned Hummingbird","Violet-green Swallow","Virginia Rail","Virginia's Warbler","Wandering Albatross","Wandering Tattler","Warbling Vireo","Wedge-rumped Storm-Petrel","Wedge-tailed Shearwater","Western Bluebird","Western Grebe","Western Gull","Western Kingbird","Western Meadowlark","Western Reef-Heron","Western Sandpiper","Western Screech-Owl","Western Scrub-Jay","Western Tanager","Western Wood-Pewee","Whimbrel","Whip-poor-will","Whiskered Auklet","Whiskered Screech-Owl","Whiskered Tern","White Ibis","White Wagtail","White-breasted Nuthatch","White-cheeked Pintail","White-chinned Petrel","White-collared Seedeater","White-collared Swift","White-crowned Pigeon","White-crowned Sparrow","White-eared Hummingbird","White-eyed Vireo","White-faced Ibis","White-faced Storm-Petrel","White-headed Woodpecker","White-rumped Sandpiper","White-tailed Eagle","White-tailed Hawk","White-tailed Kite","White-tailed Ptarmigan","White-tailed Tropicbird","White-throated Needletail","White-throated Robin","White-throated Sparrow","White-throated Swift","White-tipped Dove","White-winged Crossbill","White-winged Dove","White-winged Parakeet","White-winged Scoter","White-winged Tern","Whooper Swan","Whooping Crane","Wild Turkey","Willet","Williamson's Sapsucker","Willow Flycatcher","Willow Ptarmigan","Wilson's Phalarope","Wilson's Plover","Wilson's Storm-Petrel","Wilson's Warbler","Winter Wren","Wood Duck","Wood Sandpiper","Wood Stork","Wood Thrush","Wood Warbler","Worm-eating Warbler","Worthen's Sparrow","Wrentit","Xantus's Hummingbird","Xantus's Murrelet","Yellow Bittern","Yellow Grosbeak","Yellow Rail","Yellow Wagtail","Yellow Warbler","Yellow-bellied Flycatcher","Yellow-bellied Sapsucker","Yellow-billed Cuckoo","Yellow-billed Loon","Yellow-billed Magpie","Yellow-breasted Bunting","Yellow-breasted Chat","Yellow-crowned Night-Heron","Yellow-eyed Junco","Yellow-faced Grassquit","Yellow-footed Gull","Yellow-green Vireo","Yellow-headed Blackbird","Yellow-legged Gull","Yellow-nosed Albatross","Yellow-rumped Warbler","Yellow-throated Vireo","Yellow-throated Warbler","Yucatan Vireo","Zenaida Dove","Zone-tailed Hawk"],cat:["Abyssinian","American Bobtail","American Curl","American Shorthair","American Wirehair","Balinese","Bengal","Birman","Bombay","British Shorthair","Burmese","Chartreux","Chausie","Cornish Rex","Devon Rex","Donskoy","Egyptian Mau","Exotic Shorthair","Havana","Highlander","Himalayan","Japanese Bobtail","Korat","Kurilian Bobtail","LaPerm","Maine Coon","Manx","Minskin","Munchkin","Nebelung","Norwegian Forest Cat","Ocicat","Ojos Azules","Oriental","Persian","Peterbald","Pixiebob","Ragdoll","Russian Blue","Savannah","Scottish Fold","Selkirk Rex","Serengeti","Siamese","Siberian","Singapura","Snowshoe","Sokoke","Somali","Sphynx","Thai","Tonkinese","Toyger","Turkish Angora","Turkish Van"],cetacean:["Amazon River Dolphin","Arnoux's Beaked Whale","Atlantic Humpbacked Dolphin","Atlantic Spotted Dolphin","Atlantic White-Sided Dolphin","Australian Snubfin Dolphin","Australian humpback Dolphin","Blue Whale","Bottlenose Dolphin","Bryde’s whale","Burrunan Dolphin","Chilean Dolphin","Chinese River Dolphin","Chinese White Dolphin","Clymene Dolphin","Commerson’s Dolphin","Costero","Dusky Dolphin","False Killer Whale","Fin Whale","Fraser’s Dolphin","Ganges River Dolphin","Guiana Dolphin","Heaviside’s Dolphin","Hector’s Dolphin","Hourglass Dolphin","Humpback whale","Indo-Pacific Bottlenose Dolphin","Indo-Pacific Hump-backed Dolphin","Irrawaddy Dolphin","Killer Whale (Orca)","La Plata Dolphin","Long-Beaked Common Dolphin","Long-finned Pilot Whale","Longman's Beaked Whale","Melon-headed Whale","Northern Rightwhale Dolphin","Omura’s whale","Pacific White-Sided Dolphin","Pantropical Spotted Dolphin","Peale’s Dolphin","Pygmy Killer Whale","Risso’s Dolphin","Rough-Toothed Dolphin","Sei Whale","Short-Beaked Common Dolphin","Short-finned Pilot Whale","Southern Bottlenose Whale","Southern Rightwhale Dolphin","Sperm Whale","Spinner Dolphin","Striped Dolphin","Tucuxi","White-Beaked Dolphin"],cow:["Aberdeen Angus","Abergele","Abigar","Abondance","Abyssinian Shorthorned Zebu","Aceh","Achham","Adamawa","Adaptaur","Afar","Africangus","Afrikaner","Agerolese","Alambadi","Alatau","Albanian","Albera","Alderney","Alentejana","Aleutian wild cattle","Aliad Dinka","Alistana-Sanabresa","Allmogekor","Alur","American","American Angus","American Beef Friesian","American Brown Swiss","American Milking Devon","American White Park","Amerifax","Amrit Mahal","Amsterdam Island cattle","Anatolian Black","Andalusian Black","Andalusian Blond","Andalusian Grey","Angeln","Angoni","Ankina","Ankole","Ankole-Watusi","Aracena","Arado","Argentine Criollo","Argentine Friesian","Armorican","Arouquesa","Arsi","Asturian Mountain","Asturian Valley","Aubrac","Aulie-Ata","Aure et Saint-Girons","Australian Braford","Australian Brangus","Australian Charbray","Australian Friesian Sahiwal","Australian Lowline","Australian Milking Zebu","Australian Shorthorn","Austrian Simmental","Austrian Yellow","Avileña-Negra Ibérica","Avétonou","Aweil Dinka","Ayrshire","Azaouak","Azebuado","Azerbaijan Zebu","Azores","Bachaur cattle","Baherie cattle","Bakosi cattle","Balancer","Baoule","Bargur cattle","Barrosã","Barzona","Bazadaise","Bedit","Beef Freisian","Beefalo","Beefmaker","Beefmaster","Begayt","Belgian Blue","Belgian Red","Belgian Red Pied","Belgian White-and-Red","Belmont Red","Belted Galloway","Bernese","Berrenda cattle","Betizu","Bianca Modenese","Blaarkop","Black Angus","Black Baldy","Black Hereford","Blanca Cacereña","Blanco Orejinegro BON","Blonde d'Aquitaine","Blue Albion","Blue Grey","Bohuskulla","Bonsmara","Boran","Boškarin","Braford","Brahman","Brahmousin","Brangus","Braunvieh","Brava","Breed","British Friesian","British White","Brown Carpathian","Brown Caucasian","Brown Swiss","Bue Lingo","Burlina","Bushuyev","Butana cattle","Buša cattle","Cachena","Caldelana","Camargue","Campbell Island cattle","Canadian Speckle Park","Canadienne","Canaria","Canchim","Caracu","Carinthian Blondvieh","Carora","Cedit","Charbray","Charolais","Chateaubriand","Chiangus","Chianina","Chillingham cattle","Chinese Black Pied","Cholistani","Coloursided White Back","Commercial","Corriente","Corsican cattle","Costeño con Cuernos","Crioulo Lageano","Cárdena Andaluza","Dajal","Dangi cattle","Danish Black-Pied","Danish Jersey","Danish Red","Dedit","Deep Red cattle","Deoni","Devon","Dexter cattle","Dhanni","Doayo cattle","Doela","Drakensberger","Droughtmaster","Dulong'","Dutch Belted","Dutch Friesian","Dwarf Lulu","Dølafe","East Anatolian Red","Eastern Finncattle","Eastern Red Polled","Eedit","Enderby Island cattle","English Longhorn","Ennstaler Bergscheck","Estonian Holstein","Estonian Native","Estonian Red cattle","Fedit","Finncattle","Finnish Ayrshire","Finnish Holstein-Friesian","Fjäll","Fleckvieh","Florida Cracker cattle","Fogera","French Simmental","Fribourgeoise","Friesian Red and White","Fulani Sudanese","Fēng Cattle","Galician Blond","Galloway cattle","Gangatiri","Gaolao","Garvonesa","Gascon cattle","Gedit","Gelbvieh","Georgian Mountain cattle","German Angus","German Black Pied Dairy","German Black Pied cattle","German Red Pied","Gir","Glan cattle","Gloucester","Gobra","Greek Shorthorn","Greek Steppe","Greyman cattle","Gudali","Guernsey cattle","Guzerá","Hallikar4","Hanwoo","Hariana cattle","Hartón del Valle","Harzer Rotvieh","Hays Converter","Heck cattle","Hedit","Hereford","Herens","Highland cattle","Hinterwald","Holando-Argentino","Holstein Friesian cattle","Horro","Hungarian Grey","Huáng Cattle","Hybridmaster","Iberian cattle","Icelandic","Iedit","Illawarra cattle","Improved Red and White","Indo-Brazilian","Irish Moiled","Israeli Holstein","Israeli Red","Istoben cattle","Istrian cattle","Jamaica Black","Jamaica Hope","Jamaica Red","Japanese Brown","Jarmelista","Javari cattle","Jedit","Jersey cattle","Jutland cattle","Kabin Buri cattle","Kalmyk cattle","Kamphaeng Saen cattle","Kangayam","Kankrej","Karan Swiss","Kasaragod Dwarf cattle","Kathiawadi","Kazakh Whiteheaded","Kedit","Kenana cattle","Kenkatha cattle","Kerry cattle","Kherigarh","Khillari cattle","Kholomogory","Korat Wagyu","Kostroma cattle","Krishna Valley cattle","Kurgan cattle","Kuri","La Reina cattle","Lakenvelder cattle","Lampurger","Latvian Blue","Latvian Brown","Latvian Danish Red","Lebedyn","Ledit","Levantina","Limia cattle","Limousin","Limpurger","Lincoln Red","Lineback","Lithuanian Black-and-White","Lithuanian Light Grey","Lithuanian Red","Lithuanian White-Backed","Lohani cattle","Lourdais","Lucerna cattle","Luing","Madagascar Zebu","Madura","Maine-Anjou","Malnad Gidda","Malvi","Mandalong Special","Mantequera Leonesa","Maramureş Brown","Marchigiana","Maremmana","Marinhoa","Maronesa","Masai","Mashona","Medit","Menorquina","Mertolenga","Meuse-Rhine-Issel","Mewati","Milking Shorthorn","Minhota","Mirandesa","Mirkadim","Mocăniţă","Mollie","Monchina","Mongolian","Montbéliarde","Morucha","Murboden","Murnau-Werdenfels","Murray Grey","Muturu","N'Dama","Nagori","Nedit","Negra Andaluza","Nelore","Nguni","Nimari","Normande","North Bengal Grey","Northern Finncattle","Northern Shorthorn","Norwegian Red","Oedit]","Ongole","Original Simmental","Pajuna","Palmera","Pantaneiro","Parda Alpina","Parthenaise","Pasiega","Pedit","Pembroke","Philippine Native","Pie Rouge des Plaines","Piedmontese cattle","Pineywoods","Pinzgauer","Pirenaica","Podolac","Podolica","Polish Black-and-White","Polish Red","Poll Shorthorn","Polled Hereford","Polled Shorthorn","Ponwar","Preta","Pulikulam","Punganur","Pustertaler Sprinzen","Qedit","Qinchaun","Queensland Miniature Boran","RX3","Ramo Grande","Randall","Raramuri Criollo","Rathi","Raya","Red Angus","Red Brangus","Red Chittagong","Red Fulani","Red Gorbatov","Red Holstein","Red Kandhari","Red Mingrelian","Red Poll","Red Polled Østland","Red Sindhi","Redit","Retinta","Riggit Galloway","Ringamåla","Rohjan","Romagnola","Romanian Bălţata","Romanian Steppe Gray","Romosinuano","Russian Black Pied","Rätisches Grauvieh","Sahiwal","Salers","Salorn","Sanga","Sanhe","Santa Cruz","Santa Gertrudis","Sayaguesa","Schwyz","Sedit","Selembu","Senepol","Serbian Pied","Serbian Steppe","Sheko","Shetland","Shorthorn","Siboney de Cuba","Simbrah","Simford","Simmental","Siri","South Devon","Spanish Fighting Bull","Speckle Park","Square Meater","Sussex","Swedish Friesian","Swedish Polled","Swedish Red Pied","Swedish Red Polled","Swedish Red-and-White","Tabapuã","Tarentaise","Tasmanian Grey","Tauros","Tedit","Telemark","Texas Longhorn","Texon","Thai Black","Thai Fighting Bull","Thai Friesian","Thai Milking Zebu","Tharparkar","Tswana","Tudanca","Tuli","Tulim","Turkish Grey Steppe","Tux-Zillertal","Tyrol Grey","Uedit","Ukrainian Grey","Umblachery","Valdostana Castana","Valdostana Pezzata Nera","Valdostana Pezzata Rossa","Vaynol","Vechur8","Vedit","Vestland Fjord","Vestland Red Polled","Vianesa","Volinian Beef","Vorderwald","Vosgienne","Väneko","Waguli","Wagyu","Wangus","Wedit","Welsh Black","Western Finncattle","White Cáceres","White Fulani","White Lamphun","White Park","Whitebred Shorthorn","Xedit","Xingjiang Brown","Yakutian","Yanbian","Yanhuang","Yedit","Yurino","Zebu","Zedit","Évolène cattle","Żubroń"],crocodilia:["African Slender-snouted Crocodile","Alligator mississippiensis","American Crocodile","Australian Freshwater Crocodile","Black Caiman","Broad-snouted Caiman","Chinese Alligator","Cuban Crocodile","Cuvier’s Dwarf Caiman","Dwarf Crocodile","Gharial","Morelet’s Crocodile","Mugger Crocodile","New Guinea Freshwater Crocodile","Nile Crocodile","Orinoco Crocodile","Philippine Crocodile","Saltwater Crocodile","Schneider’s Smooth-fronted Caiman","Siamese Crocodile","Spectacled Caiman","Tomistoma","West African Crocodile","Yacare Caiman"],dog:["Affenpinscher","Afghan Hound","Aidi","Airedale Terrier","Akbash","Akita","Alano Español","Alapaha Blue Blood Bulldog","Alaskan Husky","Alaskan Klee Kai","Alaskan Malamute","Alopekis","Alpine Dachsbracke","American Bulldog","American Bully","American Cocker Spaniel","American English Coonhound","American Foxhound","American Hairless Terrier","American Pit Bull Terrier","American Staffordshire Terrier","American Water Spaniel","Andalusian Hound","Anglo-Français de Petite Vénerie","Appenzeller Sennenhund","Ariegeois","Armant","Armenian Gampr dog","Artois Hound","Australian Cattle Dog","Australian Kelpie","Australian Shepherd","Australian Stumpy Tail Cattle Dog","Australian Terrier","Austrian Black and Tan Hound","Austrian Pinscher","Azawakh","Bakharwal dog","Banjara Hound","Barbado da Terceira","Barbet","Basenji","Basque Shepherd Dog","Basset Artésien Normand","Basset Bleu de Gascogne","Basset Fauve de Bretagne","Basset Hound","Bavarian Mountain Hound","Beagle","Beagle-Harrier","Bearded Collie","Beauceron","Bedlington Terrier","Belgian Shepherd","Bergamasco Shepherd","Berger Picard","Bernese Mountain Dog","Bhotia","Bichon Frisé","Billy","Black Mouth Cur","Black Norwegian Elkhound","Black Russian Terrier","Black and Tan Coonhound","Bloodhound","Blue Lacy","Blue Picardy Spaniel","Bluetick Coonhound","Boerboel","Bohemian Shepherd","Bolognese","Border Collie","Border Terrier","Borzoi","Bosnian Coarse-haired Hound","Boston Terrier","Bouvier des Ardennes","Bouvier des Flandres","Boxer","Boykin Spaniel","Bracco Italiano","Braque Francais","Braque Saint-Germain","Braque d'Auvergne","Braque de l'Ariège","Braque du Bourbonnais","Briard","Briquet Griffon Vendéen","Brittany","Broholmer","Bruno Jura Hound","Brussels Griffon","Bucovina Shepherd Dog","Bull Arab","Bull Terrier","Bulldog","Bullmastiff","Bully Kutta","Burgos Pointer","Cairn Terrier","Campeiro Bulldog","Can de Chira","Canaan Dog","Canadian Eskimo Dog","Cane Corso","Cane Paratore","Cane di Oropa","Cantabrian Water Dog","Cardigan Welsh Corgi","Carea Castellano Manchego","Carolina Dog","Carpathian Shepherd Dog","Catahoula Leopard Dog","Catalan Sheepdog","Caucasian Shepherd Dog","Cavalier King Charles Spaniel","Central Asian Shepherd Dog","Cesky Fousek","Cesky Terrier","Chesapeake Bay Retriever","Chien Français Blanc et Noir","Chien Français Blanc et Orange","Chien Français Tricolore","Chihuahua","Chilean Terrier","Chinese Chongqing Dog","Chinese Crested Dog","Chinook","Chippiparai","Chongqing dog","Chortai","Chow Chow","Cimarrón Uruguayo","Cirneco dell'Etna","Clumber Spaniel","Colombian fino hound","Coton de Tulear","Cretan Hound","Croatian Sheepdog","Curly-Coated Retriever","Cursinu","Czechoslovakian Wolfdog","Cão Fila de São Miguel","Cão da Serra de Aires","Cão de Castro Laboreiro","Cão de Gado Transmontano","Dachshund","Dalmatian","Dandie Dinmont Terrier","Danish-Swedish Farmdog","Denmark Feist","Dingo","Doberman Pinscher","Dogo Argentino","Dogo Guatemalteco","Dogo Sardesco","Dogue Brasileiro","Dogue de Bordeaux","Drentse Patrijshond","Drever","Dunker","Dutch Shepherd","Dutch Smoushond","East European Shepherd","East Siberian Laika","English Cocker Spaniel","English Foxhound","English Mastiff","English Setter","English Shepherd","English Springer Spaniel","English Toy Terrier","Entlebucher Mountain Dog","Estonian Hound","Estrela Mountain Dog","Eurasier","Field Spaniel","Fila Brasileiro","Finnish Hound","Finnish Lapphund","Finnish Spitz","Flat-Coated Retriever","French Bulldog","French Spaniel","Galgo Español","Galician Shepherd Dog","Garafian Shepherd","Gascon Saintongeois","Georgian Shepherd","German Hound","German Longhaired Pointer","German Pinscher","German Roughhaired Pointer","German Shepherd Dog","German Shorthaired Pointer","German Spaniel","German Spitz","German Wirehaired Pointer","Giant Schnauzer","Glen of Imaal Terrier","Golden Retriever","Gordon Setter","Gończy Polski","Grand Anglo-Français Blanc et Noir","Grand Anglo-Français Blanc et Orange","Grand Anglo-Français Tricolore","Grand Basset Griffon Vendéen","Grand Bleu de Gascogne","Grand Griffon Vendéen","Great Dane","Greater Swiss Mountain Dog","Greek Harehound","Greek Shepherd","Greenland Dog","Greyhound","Griffon Bleu de Gascogne","Griffon Fauve de Bretagne","Griffon Nivernais","Gull Dong","Gull Terrier","Hamiltonstövare","Hanover Hound","Harrier","Havanese","Hierran Wolfdog","Hokkaido","Hovawart","Huntaway","Hygen Hound","Hällefors Elkhound","Ibizan Hound","Icelandic Sheepdog","Indian Spitz","Indian pariah dog","Irish Red and White Setter","Irish Setter","Irish Terrier","Irish Water Spaniel","Irish Wolfhound","Istrian Coarse-haired Hound","Istrian Shorthaired Hound","Italian Greyhound","Jack Russell Terrier","Jagdterrier","Japanese Chin","Japanese Spitz","Japanese Terrier","Jindo","Jonangi","Kai Ken","Kaikadi","Kangal Shepherd Dog","Kanni","Karakachan dog","Karelian Bear Dog","Kars","Karst Shepherd","Keeshond","Kerry Beagle","Kerry Blue Terrier","King Charles Spaniel","King Shepherd","Kintamani","Kishu","Kokoni","Kombai","Komondor","Kooikerhondje","Koolie","Koyun dog","Kromfohrländer","Kuchi","Kuvasz","Labrador Retriever","Lagotto Romagnolo","Lakeland Terrier","Lancashire Heeler","Landseer","Lapponian Herder","Large Münsterländer","Leonberger","Levriero Sardo","Lhasa Apso","Lithuanian Hound","Lupo Italiano","Löwchen","Mackenzie River Husky","Magyar agár","Mahratta Greyhound","Maltese","Manchester Terrier","Maremmano-Abruzzese Sheepdog","McNab dog","Miniature American Shepherd","Miniature Bull Terrier","Miniature Fox Terrier","Miniature Pinscher","Miniature Schnauzer","Molossus of Epirus","Montenegrin Mountain Hound","Mountain Cur","Mountain Feist","Mucuchies","Mudhol Hound","Mudi","Neapolitan Mastiff","New Guinea Singing Dog","New Zealand Heading Dog","Newfoundland","Norfolk Terrier","Norrbottenspets","Northern Inuit Dog","Norwegian Buhund","Norwegian Elkhound","Norwegian Lundehund","Norwich Terrier","Nova Scotia Duck Tolling Retriever","Old Croatian Sighthound","Old Danish Pointer","Old English Sheepdog","Old English Terrier","Olde English Bulldogge","Otterhound","Pachon Navarro","Paisley Terrier","Pampas Deerhound","Papillon","Parson Russell Terrier","Pastore della Lessinia e del Lagorai","Patagonian Sheepdog","Patterdale Terrier","Pekingese","Pembroke Welsh Corgi","Perro Majorero","Perro de Pastor Mallorquin","Perro de Presa Canario","Perro de Presa Mallorquin","Peruvian Inca Orchid","Petit Basset Griffon Vendéen","Petit Bleu de Gascogne","Phalène","Pharaoh Hound","Phu Quoc Ridgeback","Picardy Spaniel","Plott Hound","Plummer Terrier","Podenco Canario","Podenco Valenciano","Pointer","Poitevin","Polish Greyhound","Polish Hound","Polish Lowland Sheepdog","Polish Tatra Sheepdog","Pomeranian","Pont-Audemer Spaniel","Poodle","Porcelaine","Portuguese Podengo","Portuguese Pointer","Portuguese Water Dog","Posavac Hound","Pražský Krysařík","Pshdar Dog","Pudelpointer","Pug","Puli","Pumi","Pungsan Dog","Pyrenean Mastiff","Pyrenean Mountain Dog","Pyrenean Sheepdog","Rafeiro do Alentejo","Rajapalayam","Rampur Greyhound","Rat Terrier","Ratonero Bodeguero Andaluz","Ratonero Mallorquin","Ratonero Murciano de Huerta","Ratonero Valenciano","Redbone Coonhound","Rhodesian Ridgeback","Romanian Mioritic Shepherd Dog","Romanian Raven Shepherd Dog","Rottweiler","Rough Collie","Russian Spaniel","Russian Toy","Russo-European Laika","Saarloos Wolfdog","Sabueso Español","Saint Bernard","Saint Hubert Jura Hound","Saint-Usuge Spaniel","Saluki","Samoyed","Sapsali","Sarabi dog","Sardinian Shepherd Dog","Schapendoes","Schillerstövare","Schipperke","Schweizer Laufhund","Schweizerischer Niederlaufhund","Scottish Deerhound","Scottish Terrier","Sealyham Terrier","Segugio Italiano","Segugio Maremmano","Segugio dell'Appennino","Seppala Siberian Sleddog","Serbian Hound","Serbian Tricolour Hound","Serrano Bulldog","Shar Pei","Shetland Sheepdog","Shiba Inu","Shih Tzu","Shikoku","Shiloh Shepherd","Siberian Husky","Silken Windhound","Silky Terrier","Sinhala Hound","Skye Terrier","Sloughi","Slovakian Wirehaired Pointer","Slovenský Cuvac","Slovenský Kopov","Smalandstövare","Small Greek domestic dog","Small Münsterländer","Smooth Collie","Smooth Fox Terrier","Soft-Coated Wheaten Terrier","South Russian Ovcharka","Spanish Mastiff","Spanish Water Dog","Spinone Italiano","Sporting Lucas Terrier","Stabyhoun","Staffordshire Bull Terrier","Standard Schnauzer","Stephens Stock","Styrian Coarse-haired Hound","Sussex Spaniel","Swedish Elkhound","Swedish Lapphund","Swedish Vallhund","Swedish White Elkhound","Taigan","Taiwan Dog","Tamaskan Dog","Teddy Roosevelt Terrier","Telomian","Tenterfield Terrier","Terrier Brasileiro","Thai Bangkaew Dog","Thai Ridgeback","Tibetan Mastiff","Tibetan Spaniel","Tibetan Terrier","Tornjak","Tosa","Toy Fox Terrier","Toy Manchester Terrier","Transylvanian Hound","Treeing Cur","Treeing Feist","Treeing Tennessee Brindle","Treeing Walker Coonhound","Trigg Hound","Tyrolean Hound","Vikhan","Villano de Las Encartaciones","Villanuco de Las Encartaciones","Vizsla","Volpino Italiano","Weimaraner","Welsh Sheepdog","Welsh Springer Spaniel","Welsh Terrier","West Highland White Terrier","West Siberian Laika","Westphalian Dachsbracke","Wetterhoun","Whippet","White Shepherd","White Swiss Shepherd Dog","Wire Fox Terrier","Wirehaired Pointing Griffon","Wirehaired Vizsla","Xiasi Dog","Xoloitzcuintli","Yakutian Laika","Yorkshire Terrier","Šarplaninac"],fish:["Alaska pollock","Albacore","Amur catfish","Araucanian herring","Argentine hake","Asari","Asian swamp eel","Atlantic cod","Atlantic herring","Atlantic horse mackerel","Atlantic mackerel","Atlantic menhaden","Atlantic salmon","Bigeye scad","Bigeye tuna","Bighead carp","Black carp","Blood cockle","Blue swimming crab","Blue whiting","Bombay-duck","Bonga shad","California pilchard","Cape horse mackerel","Capelin","Catla","Channel catfish","Chilean jack mackerel","Chinese perch","Chinese softshell turtle","Chub mackerel","Chum salmon","Common carp","Crucian carp","Daggertooth pike conger","European anchovy","European pilchard","European sprat","Filipino Venus","Gazami crab","Goldstripe sardinella","Grass carp","Gulf menhaden","Haddock","Hilsa shad","Indian mackerel","Indian oil sardine","Iridescent shark","Japanese anchovy","Japanese cockle","Japanese common catfish","Japanese flying squid","Japanese jack mackerel","Japanese littleneck","Japanese pilchard","Jumbo flying squid","Kawakawa","Korean bullhead","Largehead hairtail","Longtail tuna","Madeiran sardinella","Mandarin fish","Milkfish","Mrigal carp","Narrow-barred Spanish mackerel","Nile perch","Nile tilapia","North Pacific hake","Northern snakehead","Pacific anchoveta","Pacific cod","Pacific herring","Pacific sand lance","Pacific sandlance","Pacific saury","Pacific thread herring","Peruvian anchoveta","Pink salmon","Pollock","Pond loach","Rainbow trout","Rohu","Round sardinella","Short mackerel","Silver carp","Silver cyprinid","Skipjack tuna","Southern African anchovy","Southern rough shrimp","Whiteleg shrimp","Wuchang bream","Yellow croaker","Yellowfin tuna","Yellowhead catfish","Yellowstripe scad"],horse:["Abaco Barb","Abtenauer","Abyssinian","Aegidienberger","Akhal-Teke","Albanian Horse","Altai Horse","Altèr Real","American Albino","American Cream Draft","American Indian Horse","American Paint Horse","American Quarter Horse","American Saddlebred","American Warmblood","Andalusian Horse","Andravida Horse","Anglo-Arabian","Anglo-Arabo-Sardo","Anglo-Kabarda","Appaloosa","AraAppaloosa","Arabian Horse","Ardennes Horse","Arenberg-Nordkirchen","Argentine Criollo","Asian wild Horse","Assateague Horse","Asturcón","Augeron","Australian Brumby","Australian Draught Horse","Australian Stock Horse","Austrian Warmblood","Auvergne Horse","Auxois","Azerbaijan Horse","Azteca Horse","Baise Horse","Bale","Balearic Horse","Balikun Horse","Baluchi Horse","Banker Horse","Barb Horse","Bardigiano","Bashkir Curly","Basque Mountain Horse","Bavarian Warmblood","Belgian Half-blood","Belgian Horse","Belgian Warmblood ","Bhutia Horse","Black Forest Horse","Blazer Horse","Boerperd","Borana","Boulonnais Horse","Brabant","Brandenburger","Brazilian Sport Horse","Breton Horse","Brumby","Budyonny Horse","Burguete Horse","Burmese Horse","Byelorussian Harness Horse","Calabrese Horse","Camargue Horse","Camarillo White Horse","Campeiro","Campolina","Canadian Horse","Canadian Pacer","Carolina Marsh Tacky","Carthusian Horse","Caspian Horse","Castilian Horse","Castillonnais","Catria Horse","Cavallo Romano della Maremma Laziale","Cerbat Mustang","Chickasaw Horse","Chilean Corralero","Choctaw Horse","Cleveland Bay","Clydesdale Horse","Cob","Coldblood Trotter","Colonial Spanish Horse","Colorado Ranger","Comtois Horse","Corsican Horse","Costa Rican Saddle Horse","Cretan Horse","Criollo Horse","Croatian Coldblood","Cuban Criollo","Cumberland Island Horse","Curly Horse","Czech Warmblood","Daliboz","Danish Warmblood","Danube Delta Horse","Dole Gudbrandsdal","Don","Dongola Horse","Draft Trotter","Dutch Harness Horse","Dutch Heavy Draft","Dutch Warmblood","Dzungarian Horse","East Bulgarian","East Friesian Horse","Estonian Draft","Estonian Horse","Falabella","Faroese","Finnhorse","Fjord Horse","Fleuve","Florida Cracker Horse","Foutanké","Frederiksborg Horse","Freiberger","French Trotter","Friesian Cross","Friesian Horse","Friesian Sporthorse","Furioso-North Star","Galiceño","Galician Pony","Gelderland Horse","Georgian Grande Horse","German Warmblood","Giara Horse","Gidran","Groningen Horse","Gypsy Horse","Hackney Horse","Haflinger","Hanoverian Horse","Heck Horse","Heihe Horse","Henson Horse","Hequ Horse","Hirzai","Hispano-Bretón","Holsteiner Horse","Horro","Hungarian Warmblood","Icelandic Horse","Iomud","Irish Draught","Irish Sport Horse sometimes called Irish Hunter","Italian Heavy Draft","Italian Trotter","Jaca Navarra","Jeju Horse","Jutland Horse","Kabarda Horse","Kafa","Kaimanawa Horses","Kalmyk Horse","Karabair","Karabakh Horse","Karachai Horse","Karossier","Kathiawari","Kazakh Horse","Kentucky Mountain Saddle Horse","Kiger Mustang","Kinsky Horse","Kisber Felver","Kiso Horse","Kladruber","Knabstrupper","Konik","Kundudo","Kustanair","Kyrgyz Horse","Latvian Horse","Lipizzan","Lithuanian Heavy Draught","Lokai","Losino Horse","Lusitano","Lyngshest","M'Bayar","M'Par","Mallorquín","Malopolski","Mangalarga","Mangalarga Marchador","Maremmano","Marismeño Horse","Marsh Tacky","Marwari Horse","Mecklenburger","Menorquín","Messara Horse","Metis Trotter","Mezőhegyesi Sport Horse","Međimurje Horse","Miniature Horse","Misaki Horse","Missouri Fox Trotter","Monchina","Mongolian Horse","Mongolian Wild Horse","Monterufolino","Morab","Morgan Horse","Mountain Pleasure Horse","Moyle Horse","Murakoz Horse","Murgese","Mustang Horse","Mérens Horse","Namib Desert Horse","Nangchen Horse","National Show Horse","Nez Perce Horse","Nivernais Horse","Nokota Horse","Noma","Nonius Horse","Nooitgedachter","Nordlandshest","Noriker Horse","Norman Cob","North American Single-Footer Horse","North Swedish Horse","Norwegian Coldblood Trotter","Norwegian Fjord","Novokirghiz","Oberlander Horse","Ogaden","Oldenburg Horse","Orlov trotter","Ostfriesen","Paint","Pampa Horse","Paso Fino","Pentro Horse","Percheron","Persano Horse","Peruvian Paso","Pintabian","Pleven Horse","Poitevin Horse","Posavac Horse","Pottok","Pryor Mountain Mustang","Przewalski's Horse","Pura Raza Española","Purosangue Orientale","Qatgani","Quarab","Quarter Horse","Racking Horse","Retuerta Horse","Rhenish German Coldblood","Rhinelander Horse","Riwoche Horse","Rocky Mountain Horse","Romanian Sporthorse","Rottaler","Russian Don","Russian Heavy Draft","Russian Trotter","Saddlebred","Salerno Horse","Samolaco Horse","San Fratello Horse","Sarcidano Horse","Sardinian Anglo-Arab","Schleswig Coldblood","Schwarzwälder Kaltblut","Selale","Sella Italiano","Selle Français","Shagya Arabian","Shan Horse","Shire Horse","Siciliano Indigeno","Silesian Horse","Sokolsky Horse","Sorraia","South German Coldblood","Soviet Heavy Draft","Spanish Anglo-Arab","Spanish Barb","Spanish Jennet Horse","Spanish Mustang","Spanish Tarpan","Spanish-Norman Horse","Spiti Horse","Spotted Saddle Horse","Standardbred Horse","Suffolk Punch","Swedish Ardennes","Swedish Warmblood","Swedish coldblood trotter","Swiss Warmblood","Taishū Horse","Takhi","Tawleed","Tchernomor","Tennessee Walking Horse","Tersk Horse","Thoroughbred","Tiger Horse","Tinker Horse","Tolfetano","Tori Horse","Trait Du Nord","Trakehner","Tsushima","Tuigpaard","Ukrainian Riding Horse","Unmol Horse","Uzunyayla","Ventasso Horse","Virginia Highlander","Vlaamperd","Vladimir Heavy Draft","Vyatka","Waler","Waler Horse","Walkaloosa","Warlander","Warmblood","Welsh Cob","Westphalian Horse","Wielkopolski","Württemberger","Xilingol Horse","Yakutian Horse","Yili Horse","Yonaguni Horse","Zaniskari","Zhemaichu","Zweibrücker","Žemaitukas"],insect:["Acacia-ants","Acorn-plum gall","Aerial yellowjacket","Africanized honey bee","Allegheny mound ant","Almond stone wasp","Ant","Arboreal ant","Argentine ant","Asian paper wasp","Baldfaced hornet","Bee","Bigheaded ant","Black and yellow mud dauber","Black carpenter ant","Black imported fire ant","Blue horntail woodwasp","Blue orchard bee","Braconid wasp","Bumble bee","Carpenter ant","Carpenter wasp","Chalcid wasp","Cicada killer","Citrus blackfly parasitoid","Common paper wasp","Crazy ant","Cuckoo wasp","Cynipid gall wasp","Eastern Carpenter bee","Eastern yellowjacket","Elm sawfly","Encyrtid wasp","Erythrina gall wasp","Eulophid wasp","European hornet","European imported fire ant","False honey ant","Fire ant","Forest bachac","Forest yellowjacket","German yellowjacket","Ghost ant","Giant ichneumon wasp","Giant resin bee","Giant wood wasp","Golden northern bumble bee","Golden paper wasp","Gouty oak gall","Grass Carrying Wasp","Great black wasp","Great golden digger wasp","Hackberry nipple gall parasitoid","Honey bee","Horned oak gall","Horse guard wasp","Hunting wasp","Ichneumonid wasp","Keyhole wasp","Knopper gall","Large garden bumble bee","Large oak-apple gall","Leafcutting bee","Little fire ant","Little yellow ant","Long-horned bees","Long-legged ant","Macao paper wasp","Mallow bee","Marble gall","Mossyrose gall wasp","Mud-daubers","Multiflora rose seed chalcid","Oak apple gall wasp","Oak rough bulletgall wasp","Oak saucer gall","Oak shoot sawfly","Odorous house ant","Orange-tailed bumble bee","Orangetailed potter wasp","Oriental chestnut gall wasp","Paper wasp","Pavement ant","Pigeon tremex","Pip gall wasp","Prairie yellowjacket","Pteromalid wasp","Pyramid ant","Raspberry Horntail","Red ant","Red carpenter ant","Red harvester ant","Red imported fire ant","Red wasp","Red wood ant","Red-tailed wasp","Reddish carpenter ant","Rough harvester ant","Sawfly parasitic wasp","Scale parasitoid","Silky ant","Sirex woodwasp","Siricid woodwasp","Smaller yellow ant","Southeastern blueberry bee","Southern fire ant","Southern yellowjacket","Sphecid wasp","Stony gall","Sweat bee","Texas leafcutting ant","Tiphiid wasp","Torymid wasp","Tramp ant","Valentine ant","Velvet ant","Vespid wasp","Weevil parasitoid","Western harvester ant","Western paper wasp","Western thatching ant","Western yellowjacket","White-horned horntail","Willow shoot sawfly","Woodwasp","Wool sower gall maker","Yellow Crazy Ant","Yellow and black potter wasp","Yellow-horned horntail"],lion:["Asiatic Lion","Barbary Lion","Cape lion","Masai Lion","Northeast Congo Lion","Transvaal lion","West African Lion"],rabbit:["American","American Chinchilla","American Fuzzy Lop","American Sable","Argente Brun","Belgian Hare","Beveren","Blanc de Hotot","Britannia Petite","Californian","Champagne D’Argent","Checkered Giant","Cinnamon","Crème D’Argent","Dutch","Dwarf Hotot","English Angora","English Lop","English Spot","Flemish Giant","Florida White","French Angora","French Lop","Giant Angora","Giant Chinchilla","Harlequin","Havana","Himalayan","Holland Lop","Jersey Wooly","Lilac","Lionhead","Mini Lop","Mini Rex","Mini Satin","Netherland Dwarf","New Zealand","Palomino","Polish","Rex","Rhinelander","Satin","Satin Angora","Silver","Silver Fox","Silver Marten","Standard Chinchilla","Tan","Thrianta"],rodent:["Abrocoma","Abrocoma schistacea","Aconaemys","Aconaemys porteri","African brush-tailed porcupine","Andean mountain cavy","Argentine tuco-tuco","Ashy chinchilla rat","Asiatic brush-tailed porcupine","Atherurus","Azara's agouti","Azara's tuco-tuco","Bahia porcupine","Bathyergus","Bathyergus janetta","Bathyergus suillus","Bennett's chinchilla rat","Bicolored-spined porcupine","Black agouti","Black dwarf porcupine","Black-rumped agouti","Black-tailed hairy dwarf porcupine","Bolivian chinchilla rat","Bolivian tuco-tuco","Bonetto's tuco-tuco","Brandt's yellow-toothed cavy","Brazilian guinea pig","Brazilian porcupine","Brazilian tuco-tuco","Bridge's degu","Brown hairy dwarf porcupine","Budin's chinchilla rat, A. budini","Cape porcupine","Catamarca tuco-tuco","Cavia","Central American agouti","Chacoan tuco-tuco","Chilean rock rat","Chinchilla","Coendou","Coiban agouti","Colburn's tuco-tuco","Collared tuco-tuco","Common degu","Common yellow-toothed cavy","Conover's tuco-tuco","Coruro","Crested agouti","Crested porcupine","Cryptomys","Cryptomys bocagei","Cryptomys damarensis","Cryptomys foxi","Cryptomys hottentotus","Cryptomys mechowi","Cryptomys ochraceocinereus","Cryptomys zechi","Ctenomys","Cuniculus","Cuscomys","Cuscomys ashanika","Dactylomys","Dactylomys boliviensis","Dactylomys dactylinus","Dactylomys peruanus","Dasyprocta","Domestic guinea pig","Emily's tuco-tuco","Erethizon","Famatina chinchilla rat","Frosted hairy dwarf porcupine","Fukomys","Fukomys amatus","Fukomys anselli","Fukomys bocagei","Fukomys damarensis","Fukomys darlingi","Fukomys foxi","Fukomys ilariae","Fukomys kafuensis","Fukomys mechowii","Fukomys micklemi","Fukomys occlusus","Fukomys ochraceocinereus","Fukomys whytei","Fukomys zechi","Furtive tuco-tuco","Galea","Georychus","Georychus capensis","Golden viscacha-rat","Goya tuco-tuco","Greater guinea pig","Green acouchi","Haig's tuco-tuco","Heliophobius","Heliophobius argenteocinereus","Heterocephalus","Heterocephalus glaber","Highland tuco-tuco","Hystrix","Indian porcupine","Isla Mocha degu","Kalinowski agouti","Kannabateomys","Kannabateomys amblyonyx","Lagidium","Lagostomus","Lewis' tuco-tuco","Long-tailed chinchilla","Long-tailed porcupine","Los Chalchaleros' viscacha-rat","Lowland paca","Magellanic tuco-tuco","Malayan porcupine","Maule tuco-tuco","Mendoza tuco-tuco","Mexican agouti","Mexican hairy dwarf porcupine","Microcavia","Montane guinea pig","Moon-toothed degu","Mottled tuco-tuco","Mountain degu","Mountain paca","Mountain viscacha-rat","Myoprocta","Natterer's tuco-tuco","North American porcupine","Northern viscacha","Octodon","Octodontomys","Octomys","Olallamys","Olallamys albicauda","Olallamys edax","Orinoco agouti","Paraguaian hairy dwarf porcupine","Pearson's tuco-tuco","Peruvian tuco-tuco","Philippine porcupine","Pipanacoctomys","Plains viscacha","Plains viscacha-rat","Porteous' tuco-tuco","Punta de Vacas chinchilla rat","Red acouchi","Red-rumped agouti","Reddish tuco-tuco","Rio Negro tuco-tuco","Robust tuco-tuco","Roosmalen's dwarf porcupine","Rothschild's porcupine","Ruatan Island agouti","Sage's rock rat","Salinoctomys","Salta tuco-tuco","San Luis tuco-tuco","Santa Catarina's guinea pig","Shiny guinea pig","Shipton's mountain cavy","Short-tailed chinchilla","Silky tuco-tuco","Social tuco-tuco","Southern mountain cavy","Southern tuco-tuco","Southern viscacha","Spalacopus","Spix's yellow-toothed cavy","Steinbach's tuco-tuco","Streaked dwarf porcupine","Strong tuco-tuco","Stump-tailed porcupine","Sumatran porcupine","Sunda porcupine","Talas tuco-tuco","Tawny tuco-tuco","Thick-spined porcupine","Tiny tuco-tuco","Trichys","Tucuman tuco-tuco","Tympanoctomys","Uspallata chinchilla rat","White-toothed tuco-tuco","Wolffsohn's viscacha"],snake:["Abaco Island boa","Aesculapian snake","African beaked snake","African puff adder","African rock python","African twig snake","African wolf snake","Amazon tree boa","Amazonian palm viper","American Vine Snake","American copperhead","Amethystine python","Anaconda","Andaman cat snake","Andaman cobra","Angolan python","Annulated sea snake","Arabian cobra","Arafura file snake","Arizona black rattlesnake","Arizona coral snake","Aruba rattlesnake","Asian Vine Snake, Whip Snake","Asian cobra","Asian keelback","Asian pipe snake","Asp","Asp viper","Assam keelback","Australian copperhead","Australian scrub python","Baird's rat snake","Baja California lyresnake","Ball Python","Ball python","Bamboo pitviper","Bamboo viper","Banded Flying Snake","Banded cat-eyed snake","Banded krait","Banded pitviper","Banded water cobra","Barbour's pit viper","Barred wolf snake","Beaked sea snake","Beauty rat snake","Beddome's cat snake","Beddome's coral snake","Bimini racer","Bird snake","Bismarck ringed python","Black headed python","Black krait","Black mamba","Black rat snake","Black snake","Black tree cobra","Black-banded trinket snake","Black-headed snake","Black-necked cobra","Black-necked spitting cobra","Black-speckled palm-pitviper","Black-striped keelback","Black-tailed horned pit viper","Blanding's tree snake","Blind snake","Blonde hognose snake","Blood python","Blue krait","Blunt-headed tree snake","Bluntnose viper","Boa","Boa constrictor","Bocourt's water snake","Boelen python","Boiga","Bolivian anaconda","Boomslang","Bornean pitviper","Borneo short-tailed python","Brahminy blind snake","Brazilian coral snake","Brazilian mud Viper","Brazilian smooth snake","Bredl's python","Brongersma's pitviper","Brown snake","Brown spotted pitviper[4]","Brown tree snake","Brown water python","Brown white-lipped python","Buff striped keelback","Bull snake","Burmese keelback","Burmese krait","Burmese python","Burrowing cobra","Burrowing viper","Bush viper","Bushmaster","Buttermilk racer","Calabar python","California kingsnake","Canebrake","Cantil","Cantor's pitviper","Cape cobra","Cape coral snake","Cape gopher snake","Carpet viper","Cascabel","Caspian cobra","Cat snake","Cat-eyed night snake","Cat-eyed snake","Central American lyre snake","Central ranges taipan","Centralian carpet python","Ceylon krait","Chappell Island tiger snake","Checkered garter snake","Checkered keelback","Chicken snake","Chihuahuan ridge-nosed rattlesnake","Children's python","Chinese tree viper","Coachwhip snake","Coastal carpet python","Coastal taipan","Cobra","Collett's snake","Colorado desert sidewinder","Common adder","Common cobra","Common garter snake","Common ground snake","Common keelback","Common lancehead","Common tiger snake","Common worm snake","Congo snake","Congo water cobra","Copperhead","Coral snake","Corn snake","Coronado Island rattlesnake","Cottonmouth","Crossed viper","Crowned snake","Cuban boa","Cuban wood snake","Cyclades blunt-nosed viper","Dauan Island water python","De Schauensee's anaconda","Death Adder","Desert death adder","Desert kingsnake","Desert woma python","Diamond python","Dog-toothed cat snake","Down's tiger snake","Dubois's sea snake","Dumeril's boa","Durango rock rattlesnake","Dusky pigmy rattlesnake","Dusty hognose snake","Dwarf beaked snake","Dwarf boa","Dwarf pipe snake","Dwarf sand adder","Eastern brown snake","Eastern coral snake","Eastern diamondback rattlesnake","Eastern green mamba","Eastern hognose snake","Eastern lyre snake","Eastern mud snake","Eastern racer","Eastern tiger snake","Eastern water cobra","Eastern yellowbelly sad racer","Egg-eater","Egyptian asp","Egyptian cobra","Elegant pitviper","Emerald tree boa","Equatorial spitting cobra","European asp","European smooth snake","Eyelash palm-pitviper","Eyelash pit viper","Eyelash viper","False cobra","False horned viper","False water cobra","Fan-Si-Pan horned pitviper","Fea's viper","Fer-de-lance","Fierce snake","Fifty pacer","Fishing snake","Flat-nosed pitviper","Flinders python","Flying snake","Forest cobra","Forest flame snake","Forsten's cat snake","Fox snake, three species of Pantherophis","Gaboon viper","Garter snake","Giant Malagasy hognose snake","Godman's pit viper","Gold tree cobra","Gold-ringed cat snake","Golden tree snake","Grand Canyon rattlesnake","Grass snake","Gray cat snake","Great Basin rattlesnake","Great Lakes bush viper","Great Plains rat snake","Green anaconda","Green cat-eyed snake","Green mamba","Green palm viper","Green rat snake","Green snake","Green tree pit viper","Green tree python","Grey Lora","Grey-banded kingsnake","Ground snake","Guatemalan palm viper","Guatemalan tree viper","Habu","Habu pit viper","Hagen's pitviper","Hairy bush viper","Halmahera python","Hardwicke's sea snake","Harlequin coral snake","High Woods coral snake","Hill keelback","Himalayan keelback","Hogg Island boa","Hognose snake","Hognosed viper","Honduran palm viper","Hook Nosed Sea Snake","Hopi rattlesnake","Horned adder","Horned desert viper","Horned viper","Horseshoe pitviper","Hundred pacer","Hutton's tree viper","Ikaheka snake","Indian cobra","Indian flying snake","Indian krait","Indian python","Indian tree viper","Indigo snake","Indochinese spitting cobra","Indonesian water python","Inland carpet python","Inland taipan","Jamaican Tree Snake","Jamaican boa","Jan's hognose snake","Japanese forest rat snake","Japanese rat snake","Japanese striped snake","Javan spitting cobra","Jerdon's pitviper","Jumping viper","Jungle carpet python","Kanburian pit viper","Kaulback's lance-headed pitviper","Kayaudi dwarf reticulated python","Kaznakov's viper","Keelback","Kham Plateau pitviper","Khasi Hills keelback","King Island tiger snake","King brown","King cobra","King rat snake","King snake","Krait","Krefft's tiger snake","Lance-headed rattlesnake","Lancehead","Large shield snake","Large-eyed pitviper","Large-scaled tree viper","Leaf viper","Leaf-nosed viper","Lesser black krait","Levant viper","Long-nosed adder","Long-nosed tree snake","Long-nosed viper","Long-nosed whip snake","Long-tailed rattlesnake","Longnosed worm snake","Lora","Lyre snake","Machete savane","Macklot's python","Madagascar ground boa","Madagascar tree boa","Malabar rock pitviper","Malayan krait","Malayan long-glanded coral snake","Malayan pit viper","Malcolm's tree viper","Mamba","Mamushi","Manchurian Black Water Snake","Mandalay cobra","Mandarin rat snake","Mangrove pit viper","Mangrove snake","Mangshan pitviper","Many-banded krait","Many-banded tree snake","Many-horned adder","Many-spotted cat snake","Massasauga rattlesnake","McMahon's viper","Mexican black kingsnake","Mexican green rattlesnake","Mexican hognose snake","Mexican palm-pitviper","Mexican parrot snake","Mexican racer","Mexican vine snake","Mexican west coast rattlesnake","Midget faded rattlesnake","Milk snake","Moccasin snake","Modest keelback","Mojave desert sidewinder","Mojave rattlesnake","Mole viper","Mollucan python","Moluccan flying snake","Montpellier snake","Motuo bamboo pitviper","Mountain adder","Mozambique spitting cobra","Mud adder","Mud snake","Mussurana","Namaqua dwarf adder","Namib dwarf sand adder","Narrowhead Garter Snake","New Guinea carpet python","Nichell snake","Nicobar Island keelback","Nicobar bamboo pitviper","Night snake","Nightingale adder","Nilgiri keelback","Nitsche's bush viper","Nitsche's tree viper","North Philippine cobra","North eastern king snake","Northeastern hill krait","Northern black-tailed rattlesnake","Northern tree snake","Northern water snake","Northern white-lipped python","Northwestern carpet python","Nose-horned viper","Nubian spitting cobra","Oaxacan small-headed rattlesnake","Oenpelli python","Olive python","Olive sea snake","Orange-collared keelback","Ornate flying snake","Palestine viper","Pallas' viper","Palm viper","Papuan python","Paradise flying snake","Parrot snake","Patchnose snake","Paupan taipan","Pelagic sea snake","Peninsula tiger snake","Peringuey's adder","Perrotet's shieldtail snake","Persian rat snake","Philippine cobra","Philippine pitviper","Pine snake","Pipe snake","Pit viper","Pointed-scaled pit viper[5]","Pope's tree viper","Portuguese viper","Prairie kingsnake","Puerto Rican boa","Puff adder","Pygmy python","Python","Queen snake","Racer","Raddysnake","Rainbow boa","Rat snake","Rattler","Rattlesnake","Red blood python","Red diamond rattlesnake","Red spitting cobra","Red-backed rat snake","Red-bellied black snake","Red-headed krait","Red-necked keelback","Red-tailed bamboo pitviper","Red-tailed boa","Red-tailed pipe snake","Reticulated python","Rhinoceros viper","Rhombic night adder","Ribbon snake","Rinkhals","Rinkhals cobra","River jack","Rosy boa","Rough green snake","Rough-scaled bush viper","Rough-scaled python","Rough-scaled tree viper","Royal python","Rubber boa","Rufous beaked snake","Rungwe tree viper","San Francisco garter snake","Sand adder","Sand boa","Savu python","Saw-scaled viper","Scarlet kingsnake","Schlegel's viper","Schultze's pitviper","Sea snake","Sedge viper","Selayer reticulated python","Sharp-nosed viper","Shield-nosed cobra","Shield-tailed snake","Siamese palm viper","Side-striped palm-pitviper","Sidewinder","Sikkim keelback","Sinai desert cobra","Sind krait","Small-eyed snake","Smooth green snake","Smooth snake","Snorkel viper","Snouted cobra","Sonoran sidewinder","South American hognose snake","South eastern corn snake","Southern Indonesian spitting cobra","Southern Pacific rattlesnake","Southern Philippine cobra","Southern black racer","Southern white-lipped python","Southwestern black spitting cobra","Southwestern blackhead snake","Southwestern carpet python","Southwestern speckled rattlesnake","Speckle-bellied keelback","Speckled kingsnake","Spectacled cobra","Spiny bush viper","Spitting cobra","Spotted python","Sri Lankan pit viper","Stejneger's bamboo pitviper","Stiletto snake","Stimson's python","Stoke's sea snake","Storm water cobra","Striped snake","Sumatran short-tailed python","Sumatran tree viper","Sunbeam snake","Taipan","Taiwan cobra","Tan racer","Tancitaran dusky rattlesnake","Tanimbar python","Tasmanian tiger snake","Tawny cat snake","Temple pit viper","Temple viper","Tentacled snake","Texas Coral Snake","Texas blind snake","Texas garter snake","Texas lyre snake","Texas night snake","Thai cobra","Three-lined ground snake","Tibetan bamboo pitviper","Tic polonga","Tiger pit viper","Tiger rattlesnake","Tiger snake","Tigre snake","Timber rattlesnake","Timor python","Titanboa","Tree boa","Tree snake","Tree viper","Trinket snake","Tropical rattlesnake","Twig snake","Twin Headed King Snake","Twin-Barred tree snake","Twin-spotted rat snake","Twin-spotted rattlesnake","Undulated pit viper","Uracoan rattlesnake","Ursini's viper","Urutu","Vine snake","Viper","Viper Adder","Vipera ammodytes","Wagler's pit viper","Wart snake","Water adder","Water moccasin","Water snake","West Indian racer","Western blind snake","Western carpet python","Western coral snake","Western diamondback rattlesnake","Western green mamba","Western ground snake","Western hog-nosed viper","Western mud snake","Western tiger snake","Western woma python","Wetar Island python","Whip snake","White-lipped keelback","White-lipped python","White-lipped tree viper","Wirot's pit viper","Wolf snake","Woma python","Worm snake","Wutu","Wynaad keelback","Yarara","Yellow anaconda","Yellow-banded sea snake","Yellow-bellied sea snake","Yellow-lined palm viper","Yellow-lipped sea snake","Yellow-striped rat snake","Yunnan keelback","Zebra snake","Zebra spitting cobra"],type:["bat","bear","bee","bird","butterfly","cat","cow","crocodile","deer","dog","dolphin","eagle","elephant","fish","flamingo","fox","frog","gecko","giraffe","gorilla","hamster","hippopotamus","horse","kangaroo","koala","lion","monkey","ostrich","panda","parrot","peacock","penguin","polar bear","rabbit","rhinoceros","sea lion","shark","snake","squirrel","tiger","turtle","whale","wolf","zebra"]},app:{author:["{{person.name}}","{{company.name}}"],name:["Redhold","Treeflex","Trippledex","Kanlam","Bigtax","Daltfresh","Toughjoyfax","Mat Lam Tam","Otcom","Tres-Zap","Y-Solowarm","Tresom","Voltsillam","Biodex","Greenlam","Viva","Matsoft","Temp","Zoolab","Subin","Rank","Job","Stringtough","Tin","It","Home Ing","Zamit","Sonsing","Konklab","Alpha","Latlux","Voyatouch","Alphazap","Holdlamis","Zaam-Dox","Sub-Ex","Quo Lux","Bamity","Ventosanzap","Lotstring","Hatity","Tempsoft","Overhold","Fixflex","Konklux","Zontrax","Tampflex","Span","Namfix","Transcof","Stim","Fix San","Sonair","Stronghold","Fintone","Y-find","Opela","Lotlux","Ronstring","Zathin","Duobam","Keylex"],version:["0.#.#","0.##","#.##","#.#","#.#.#"]},cell_phone:{formats:["###-###-####","(###) ###-####","1-###-###-####","###.###.####"]},color:{human:["azure","black","blue","cyan","fuchsia","gold","green","grey","indigo","ivory","lavender","lime","magenta","maroon","mint green","olive","orange","orchid","pink","plum","purple","red","salmon","silver","sky blue","tan","teal","turquoise","violet","white","yellow"]},commerce:{department:["Automotive","Baby","Beauty","Books","Clothing","Computers","Electronics","Games","Garden","Grocery","Health","Home","Industrial","Jewelry","Kids","Movies","Music","Outdoors","Shoes","Sports","Tools","Toys"],product_description:["Andy shoes are designed to keeping in mind durability as well as trends, the most stylish range of shoes & sandals","Boston's most advanced compression wear technology increases muscle oxygenation, stabilizes active muscles","Carbonite web goalkeeper gloves are ergonomically designed to give easy fit","Ergonomic executive chair upholstered in bonded black leather and PVC padded seat and back for all-day comfort and support","New ABC 13 9370, 13.3, 5th Gen CoreA5-8250U, 8GB RAM, 256GB SSD, power UHD Graphics, OS 10 Home, OS Office A & J 2016","New range of formal shirts are designed keeping you in mind. With fits and styling that will make you stand apart","The Apollotech B340 is an affordable wireless mouse with reliable connectivity, 12 months battery life and modern design","The Football Is Good For Training And Recreational Purposes","The Nagasaki Lander is the trademarked name of several series of Nagasaki sport bikes, that started with the 1984 ABC800J","The automobile layout consists of a front-engine design, with transaxle-type transmissions mounted at the rear of the engine and four wheel drive","The beautiful range of Apple Naturalé that has an exciting mix of natural ingredients. With the Goodness of 100% Natural Ingredients","The slim & simple Maple Gaming Keyboard from Dev Byte comes with a sleek body and 7- Color RGB LED Back-lighting for smart functionality"],product_name:{adjective:["Awesome","Bespoke","Electronic","Elegant","Ergonomic","Fantastic","Generic","Gorgeous","Handcrafted","Handmade","Incredible","Intelligent","Licensed","Luxurious","Modern","Oriental","Practical","Recycled","Refined","Rustic","Sleek","Small","Tasty","Unbranded"],material:["Bronze","Concrete","Cotton","Fresh","Frozen","Granite","Metal","Plastic","Rubber","Soft","Steel","Wooden"],product:["Bacon","Ball","Bike","Car","Chair","Cheese","Chicken","Chips","Computer","Fish","Gloves","Hat","Keyboard","Mouse","Pants","Pizza","Salad","Sausages","Shirt","Shoes","Soap","Table","Towels","Tuna"]}},company:{adjective:["Adaptive","Advanced","Ameliorated","Assimilated","Automated","Balanced","Business-focused","Centralized","Cloned","Compatible","Configurable","Cross-group","Cross-platform","Customer-focused","Customizable","De-engineered","Decentralized","Devolved","Digitized","Distributed","Diverse","Down-sized","Enhanced","Enterprise-wide","Ergonomic","Exclusive","Expanded","Extended","Face to face","Focused","Front-line","Fully-configurable","Function-based","Fundamental","Future-proofed","Grass-roots","Horizontal","Implemented","Innovative","Integrated","Intuitive","Inverse","Managed","Mandatory","Monitored","Multi-channelled","Multi-lateral","Multi-layered","Multi-tiered","Networked","Object-based","Open-architected","Open-source","Operative","Optimized","Optional","Organic","Organized","Persevering","Persistent","Phased","Polarised","Pre-emptive","Proactive","Profit-focused","Profound","Programmable","Progressive","Public-key","Quality-focused","Re-contextualized","Re-engineered","Reactive","Realigned","Reduced","Reverse-engineered","Right-sized","Robust","Seamless","Secured","Self-enabling","Sharable","Stand-alone","Streamlined","Switchable","Synchronised","Synergistic","Synergized","Team-oriented","Total","Triple-buffered","Universal","Up-sized","Upgradable","User-centric","User-friendly","Versatile","Virtual","Vision-oriented","Visionary"],buzz_adjective:["24/365","24/7","B2B","B2C","back-end","best-of-breed","bleeding-edge","bricks-and-clicks","clicks-and-mortar","collaborative","compelling","cross-media","cross-platform","customized","cutting-edge","distributed","dot-com","dynamic","e-business","efficient","end-to-end","enterprise","extensible","frictionless","front-end","global","granular","holistic","impactful","innovative","integrated","interactive","intuitive","killer","leading-edge","magnetic","mission-critical","next-generation","one-to-one","open-source","out-of-the-box","plug-and-play","proactive","real-time","revolutionary","rich","robust","scalable","seamless","sexy","sticky","strategic","synergistic","transparent","turn-key","ubiquitous","user-centric","value-added","vertical","viral","virtual","visionary","web-enabled","wireless","world-class"],buzz_noun:["ROI","action-items","applications","architectures","bandwidth","blockchains","channels","communities","content","convergence","deliverables","e-business","e-commerce","e-markets","experiences","eyeballs","functionalities","infrastructures","initiatives","interfaces","lifetime value","markets","methodologies","metrics","mindshare","models","networks","niches","paradigms","partnerships","platforms","portals","relationships","schemas","solutions","supply-chains","synergies","systems","technologies","users","web services"],buzz_verb:["aggregate","architect","benchmark","brand","cultivate","deliver","deploy","disintermediate","drive","e-enable","embrace","empower","enable","engage","engineer","enhance","envisioneer","evolve","expedite","exploit","extend","facilitate","generate","grow","harness","implement","incentivize","incubate","innovate","integrate","iterate","leverage","matrix","maximize","mesh","monetize","morph","optimize","orchestrate","productize","recontextualize","redefine","reintermediate","reinvent","repurpose","revolutionize","scale","seize","strategize","streamline","syndicate","synergize","synthesize","target","transform","transition","unleash","utilize","visualize","whiteboard"],descriptor:["24 hour","24/7","3rd generation","4th generation","5th generation","6th generation","actuating","analyzing","asymmetric","asynchronous","attitude-oriented","background","bandwidth-monitored","bi-directional","bifurcated","bottom-line","clear-thinking","client-driven","client-server","coherent","cohesive","composite","content-based","context-sensitive","contextually-based","dedicated","demand-driven","didactic","directional","discrete","disintermediate","dynamic","eco-centric","empowering","encompassing","even-keeled","executive","explicit","exuding","fault-tolerant","foreground","fresh-thinking","full-range","global","grid-enabled","heuristic","high-level","holistic","homogeneous","human-resource","hybrid","impactful","incremental","intangible","interactive","intermediate","leading edge","local","logistical","maximized","methodical","mission-critical","mobile","modular","motivating","multi-state","multi-tasking","multimedia","national","needs-based","neutral","next generation","non-volatile","object-oriented","optimal","optimizing","radical","real-time","reciprocal","regional","responsive","scalable","secondary","solution-oriented","stable","static","system-worthy","systematic","systemic","tangible","tertiary","transitional","uniform","upward-trending","user-facing","value-added","web-enabled","well-modulated","zero administration","zero defect","zero tolerance"],legal_entity_type:["Group","Inc","LLC","and Sons"],name_pattern:["{{person.last_name.generic}} - {{person.last_name.generic}}","{{person.last_name.generic}} {{company.legal_entity_type}}","{{person.last_name.generic}}, {{person.last_name.generic}} and {{person.last_name.generic}}"],noun:["Graphic Interface","Graphical User Interface","ability","access","adapter","algorithm","alliance","analyzer","application","approach","architecture","archive","array","artificial intelligence","attitude","benchmark","budgetary management","capability","capacity","challenge","circuit","collaboration","complexity","concept","conglomeration","contingency","core","customer loyalty","data-warehouse","database","definition","emulation","encoding","encryption","extranet","firmware","flexibility","focus group","forecast","frame","framework","function","functionalities","groupware","hardware","help-desk","hierarchy","hub","implementation","info-mediaries","infrastructure","initiative","installation","instruction set","interface","internet solution","intranet","knowledge base","knowledge user","leverage","local area network","matrices","matrix","methodology","middleware","migration","model","moderator","monitoring","moratorium","neural-net","open architecture","open system","orchestration","paradigm","parallelism","policy","portal","pricing structure","process improvement","product","productivity","project","projection","protocol","secured line","service-desk","software","solution","standardization","strategy","structure","success","superstructure","support","synergy","system engine","task-force","throughput","time-frame","toolset","utilisation","website","workforce"]},database:{column:["avatar","category","comment","createdAt","email","group","id","name","password","phone","status","title","token","updatedAt"]},date:{month:{wide:["April","August","December","February","January","July","June","March","May","November","October","September"],abbr:["Apr","Aug","Dec","Feb","Jan","Jul","Jun","Mar","May","Nov","Oct","Sep"]},weekday:{wide:["Friday","Monday","Saturday","Sunday","Thursday","Tuesday","Wednesday"],abbr:["Fri","Mon","Sat","Sun","Thu","Tue","Wed"]}},finance:{account_type:["Auto Loan","Checking","Credit Card","Home Loan","Investment","Money Market","Personal Loan","Savings"],credit_card:{american_express:["34##-######-####L","37##-######-####L"],diners_club:["30[0-5]#-######-###L","36##-######-###L","54##-####-####-###L"],discover:["6011-####-####-###L","6011-62##-####-####-###L","64[4-9]#-####-####-###L","64[4-9]#-62##-####-####-###L","65##-####-####-###L","65##-62##-####-####-###L"],jcb:["3528-####-####-###L","3529-####-####-###L","35[3-8]#-####-####-###L"],mastercard:["2[221-720]-####-####-###L","5[1-5]##-####-####-###L"],visa:["4###########L","4###-####-####-###L"]},currency:[{name:"UAE Dirham",code:"AED",symbol:""},{name:"Afghani",code:"AFN",symbol:"؋"},{name:"Lek",code:"ALL",symbol:"Lek"},{name:"Armenian Dram",code:"AMD",symbol:""},{name:"Netherlands Antillian Guilder",code:"ANG",symbol:"ƒ"},{name:"Kwanza",code:"AOA",symbol:""},{name:"Argentine Peso",code:"ARS",symbol:"$"},{name:"Australian Dollar",code:"AUD",symbol:"$"},{name:"Aruban Guilder",code:"AWG",symbol:"ƒ"},{name:"Azerbaijanian Manat",code:"AZN",symbol:"ман"},{name:"Convertible Marks",code:"BAM",symbol:"KM"},{name:"Barbados Dollar",code:"BBD",symbol:"$"},{name:"Taka",code:"BDT",symbol:""},{name:"Bulgarian Lev",code:"BGN",symbol:"лв"},{name:"Bahraini Dinar",code:"BHD",symbol:""},{name:"Burundi Franc",code:"BIF",symbol:""},{name:"Bermudian Dollar (customarily known as Bermuda Dollar)",code:"BMD",symbol:"$"},{name:"Brunei Dollar",code:"BND",symbol:"$"},{name:"Boliviano boliviano",code:"BOB",symbol:"Bs"},{name:"Brazilian Real",code:"BRL",symbol:"R$"},{name:"Bahamian Dollar",code:"BSD",symbol:"$"},{name:"Pula",code:"BWP",symbol:"P"},{name:"Belarusian Ruble",code:"BYN",symbol:"Rbl"},{name:"Belize Dollar",code:"BZD",symbol:"BZ$"},{name:"Canadian Dollar",code:"CAD",symbol:"$"},{name:"Congolese Franc",code:"CDF",symbol:""},{name:"Swiss Franc",code:"CHF",symbol:"CHF"},{name:"Chilean Peso",code:"CLP",symbol:"$"},{name:"Yuan Renminbi",code:"CNY",symbol:"¥"},{name:"Colombian Peso",code:"COP",symbol:"$"},{name:"Costa Rican Colon",code:"CRC",symbol:"₡"},{name:"Cuban Peso",code:"CUP",symbol:"₱"},{name:"Cape Verde Escudo",code:"CVE",symbol:""},{name:"Czech Koruna",code:"CZK",symbol:"Kč"},{name:"Djibouti Franc",code:"DJF",symbol:""},{name:"Danish Krone",code:"DKK",symbol:"kr"},{name:"Dominican Peso",code:"DOP",symbol:"RD$"},{name:"Algerian Dinar",code:"DZD",symbol:""},{name:"Egyptian Pound",code:"EGP",symbol:"£"},{name:"Nakfa",code:"ERN",symbol:""},{name:"Ethiopian Birr",code:"ETB",symbol:""},{name:"Euro",code:"EUR",symbol:"€"},{name:"Fiji Dollar",code:"FJD",symbol:"$"},{name:"Falkland Islands Pound",code:"FKP",symbol:"£"},{name:"Pound Sterling",code:"GBP",symbol:"£"},{name:"Lari",code:"GEL",symbol:""},{name:"Cedi",code:"GHS",symbol:""},{name:"Gibraltar Pound",code:"GIP",symbol:"£"},{name:"Dalasi",code:"GMD",symbol:""},{name:"Guinea Franc",code:"GNF",symbol:""},{name:"Quetzal",code:"GTQ",symbol:"Q"},{name:"Guyana Dollar",code:"GYD",symbol:"$"},{name:"Hong Kong Dollar",code:"HKD",symbol:"$"},{name:"Lempira",code:"HNL",symbol:"L"},{name:"Gourde",code:"HTG",symbol:""},{name:"Forint",code:"HUF",symbol:"Ft"},{name:"Rupiah",code:"IDR",symbol:"Rp"},{name:"New Israeli Sheqel",code:"ILS",symbol:"₪"},{name:"Bhutanese Ngultrum",code:"BTN",symbol:"Nu"},{name:"Indian Rupee",code:"INR",symbol:"₹"},{name:"Iraqi Dinar",code:"IQD",symbol:""},{name:"Iranian Rial",code:"IRR",symbol:"﷼"},{name:"Iceland Krona",code:"ISK",symbol:"kr"},{name:"Jamaican Dollar",code:"JMD",symbol:"J$"},{name:"Jordanian Dinar",code:"JOD",symbol:""},{name:"Yen",code:"JPY",symbol:"¥"},{name:"Kenyan Shilling",code:"KES",symbol:""},{name:"Som",code:"KGS",symbol:"лв"},{name:"Riel",code:"KHR",symbol:"៛"},{name:"Comoro Franc",code:"KMF",symbol:""},{name:"North Korean Won",code:"KPW",symbol:"₩"},{name:"Won",code:"KRW",symbol:"₩"},{name:"Kuwaiti Dinar",code:"KWD",symbol:""},{name:"Cayman Islands Dollar",code:"KYD",symbol:"$"},{name:"Tenge",code:"KZT",symbol:"лв"},{name:"Kip",code:"LAK",symbol:"₭"},{name:"Lebanese Pound",code:"LBP",symbol:"£"},{name:"Sri Lanka Rupee",code:"LKR",symbol:"₨"},{name:"Liberian Dollar",code:"LRD",symbol:"$"},{name:"Libyan Dinar",code:"LYD",symbol:""},{name:"Moroccan Dirham",code:"MAD",symbol:""},{name:"Moldovan Leu",code:"MDL",symbol:""},{name:"Malagasy Ariary",code:"MGA",symbol:""},{name:"Denar",code:"MKD",symbol:"ден"},{name:"Kyat",code:"MMK",symbol:""},{name:"Tugrik",code:"MNT",symbol:"₮"},{name:"Pataca",code:"MOP",symbol:""},{name:"Ouguiya",code:"MRU",symbol:""},{name:"Mauritius Rupee",code:"MUR",symbol:"₨"},{name:"Rufiyaa",code:"MVR",symbol:""},{name:"Kwacha",code:"MWK",symbol:""},{name:"Mexican Peso",code:"MXN",symbol:"$"},{name:"Malaysian Ringgit",code:"MYR",symbol:"RM"},{name:"Metical",code:"MZN",symbol:"MT"},{name:"Naira",code:"NGN",symbol:"₦"},{name:"Cordoba Oro",code:"NIO",symbol:"C$"},{name:"Norwegian Krone",code:"NOK",symbol:"kr"},{name:"Nepalese Rupee",code:"NPR",symbol:"₨"},{name:"New Zealand Dollar",code:"NZD",symbol:"$"},{name:"Rial Omani",code:"OMR",symbol:"﷼"},{name:"Balboa",code:"PAB",symbol:"B/."},{name:"Nuevo Sol",code:"PEN",symbol:"S/."},{name:"Kina",code:"PGK",symbol:""},{name:"Philippine Peso",code:"PHP",symbol:"Php"},{name:"Pakistan Rupee",code:"PKR",symbol:"₨"},{name:"Zloty",code:"PLN",symbol:"zł"},{name:"Guarani",code:"PYG",symbol:"Gs"},{name:"Qatari Rial",code:"QAR",symbol:"﷼"},{name:"New Leu",code:"RON",symbol:"lei"},{name:"Serbian Dinar",code:"RSD",symbol:"Дин."},{name:"Russian Ruble",code:"RUB",symbol:"руб"},{name:"Rwanda Franc",code:"RWF",symbol:""},{name:"Saudi Riyal",code:"SAR",symbol:"﷼"},{name:"Solomon Islands Dollar",code:"SBD",symbol:"$"},{name:"Seychelles Rupee",code:"SCR",symbol:"₨"},{name:"Sudanese Pound",code:"SDG",symbol:""},{name:"Swedish Krona",code:"SEK",symbol:"kr"},{name:"Singapore Dollar",code:"SGD",symbol:"$"},{name:"Saint Helena Pound",code:"SHP",symbol:"£"},{name:"Leone",code:"SLE",symbol:""},{name:"Somali Shilling",code:"SOS",symbol:"S"},{name:"Surinam Dollar",code:"SRD",symbol:"$"},{name:"South Sudanese pound",code:"SSP",symbol:""},{name:"Dobra",code:"STN",symbol:"Db"},{name:"Syrian Pound",code:"SYP",symbol:"£"},{name:"Lilangeni",code:"SZL",symbol:""},{name:"Baht",code:"THB",symbol:"฿"},{name:"Somoni",code:"TJS",symbol:""},{name:"Manat",code:"TMT",symbol:""},{name:"Tunisian Dinar",code:"TND",symbol:""},{name:"Pa'anga",code:"TOP",symbol:""},{name:"Turkish Lira",code:"TRY",symbol:"₺"},{name:"Trinidad and Tobago Dollar",code:"TTD",symbol:"TT$"},{name:"New Taiwan Dollar",code:"TWD",symbol:"NT$"},{name:"Tanzanian Shilling",code:"TZS",symbol:""},{name:"Hryvnia",code:"UAH",symbol:"₴"},{name:"Uganda Shilling",code:"UGX",symbol:""},{name:"US Dollar",code:"USD",symbol:"$"},{name:"Peso Uruguayo",code:"UYU",symbol:"$U"},{name:"Uzbekistan Sum",code:"UZS",symbol:"лв"},{name:"Venezuelan bolívar",code:"VES",symbol:"Bs"},{name:"Dong",code:"VND",symbol:"₫"},{name:"Vatu",code:"VUV",symbol:""},{name:"Tala",code:"WST",symbol:""},{name:"CFA Franc BEAC",code:"XAF",symbol:""},{name:"East Caribbean Dollar",code:"XCD",symbol:"$"},{name:"CFA Franc BCEAO",code:"XOF",symbol:""},{name:"CFP Franc",code:"XPF",symbol:""},{name:"Yemeni Rial",code:"YER",symbol:"﷼"},{name:"Rand",code:"ZAR",symbol:"R"},{name:"Lesotho Loti",code:"LSL",symbol:""},{name:"Namibia Dollar",code:"NAD",symbol:"N$"},{name:"Zambian Kwacha",code:"ZMW",symbol:"K"},{name:"Zimbabwe Dollar",code:"ZWL",symbol:""}],transaction_type:["deposit","invoice","payment","withdrawal"]},food:{adjective:["bitter","creamy","crispy","crunchy","delicious","fluffy","fresh","golden","juicy","moist","rich","salty","savory","smoky","sour","spicy","sweet","tangy","tender","zesty"],description_pattern:["A classic pie filled with delicious {{food.meat}} and {{food.adjective}} {{food.ingredient}}, baked in a {{food.adjective}} pastry crust and topped with a golden-brown lattice.","A delightful tart combining {{food.adjective}} {{food.vegetable}} and sweet {{food.fruit}}, set in a buttery pastry shell and finished with a hint of {{food.spice}}.","A heartwarming {{food.ethnic_category}} soup, featuring fresh {{food.ingredient}} and an aromatic blend of traditional spices.","A robust {{food.adjective}} stew featuring {{food.ethnic_category}} flavors, loaded with {{food.adjective}} meat, {{food.adjective}} vegetables, and a {{food.adjective}}, {{food.adjective}} broth.","A simple {{food.fruit}} pie. No fancy stuff. Just pie.","A slow-roasted {{animal.bird}} with a {{food.adjective}}, {{food.adjective}} exterior. Stuffed with {{food.fruit}} and covered in {{food.fruit}} sauce. Sides with {{food.vegetable}} puree and wild {{food.vegetable}}.","A special {{color.human}} {{food.ingredient}} from {{location.country}}. To support the strong flavor it is sided with a tablespoon of {{food.spice}}.","A succulent {{food.meat}} steak, encased in a {{food.adjective}} {{food.spice}} crust, served with a side of {{food.spice}} mashed {{food.vegetable}}.","An exquisite {{food.meat}} roast, infused with the essence of {{food.fruit}}, slow-roasted to bring out its natural flavors and served with a side of creamy {{food.vegetable}}","Baked {{food.ingredient}}-stuffed {{food.meat}}, seasoned with {{food.spice}} and {{food.adjective}} herbs, accompanied by roasted {{food.vegetable}} medley.","Crispy fried {{food.meat}} bites, seasoned with {{food.spice}} and served with a tangy {{food.fruit}} dipping sauce.","Fresh mixed greens tossed with {{food.spice}}-rubbed {{food.meat}}, {{food.vegetable}}, and a light dressing.","Fresh {{food.ingredient}} with a pinch of {{food.spice}}, topped by a caramelized {{food.fruit}} with whipped cream","Grilled {{food.meat}} kebabs, marinated in {{food.ethnic_category}} spices and served with a fresh {{food.vegetable}} and {{food.fruit}} salad.","Hearty {{food.ingredient}} and {{food.meat}} stew, slow-cooked with {{food.spice}} and {{food.vegetable}} for a comforting, flavorful meal.","Juicy {{food.meat}}, grilled to your liking and drizzled with a bold {{food.spice}} sauce, served alongside roasted {{food.vegetable}}.","Our {{food.adjective}} {{food.meat}}, slow-cooked to perfection, accompanied by steamed {{food.vegetable}} and a rich, savory gravy.","Tender {{food.meat}} skewers, glazed with a sweet and tangy {{food.fruit}} sauce, served over a bed of fragrant jasmine rice.","Tenderly braised {{food.meat}} in a rich {{food.spice}} and {{food.vegetable}} sauce, served with a side of creamy {{food.vegetable}}.","Three {{food.ingredient}} with {{food.vegetable}}, {{food.vegetable}}, {{food.vegetable}}, {{food.vegetable}} and {{food.ingredient}}. With a side of baked {{food.fruit}}, and your choice of {{food.ingredient}} or {{food.ingredient}}.",'{{number.int({"min":1, "max":99})}}-day aged {{food.meat}} steak, with choice of {{number.int({"min":2, "max":4})}} sides.'],dish:["California maki","Peking duck","Philadelphia maki","arepas","barbecue ribs","bruschette with tomato","bunny chow","caesar salad","caprese salad","cauliflower penne","cheeseburger","chicken fajitas","chicken milanese","chicken parm","chicken wings","chilli con carne","ebiten maki","fettuccine alfredo","fish and chips","french fries with sausages","french toast","hummus","katsu curry","kebab","lasagne","linguine with clams","massaman curry","meatballs with sauce","mushroom risotto","pappardelle alla bolognese","pasta and beans","pasta carbonara","pasta with tomato and basil","pho","pierogi","pizza","poke","pork belly buns","pork sausage roll","poutine","ricotta stuffed ravioli","risotto with seafood","salmon nigiri","scotch eggs","seafood paella","som tam","souvlaki","stinky tofu","sushi","tacos","teriyaki chicken donburi","tiramisù","tuna sashimi","vegetable soup"],dish_pattern:["{{food.adjective}} {{food.ethnic_category}} stew","{{food.adjective}} {{food.meat}} with {{food.vegetable}}","{{food.ethnic_category}} {{food.ingredient}} soup","{{food.fruit}} and {{food.fruit}} tart","{{food.fruit}} pie","{{food.fruit}}-glazed {{food.meat}} skewers","{{food.fruit}}-infused {{food.meat}} roast","{{food.ingredient}} and {{food.meat}} pie","{{food.ingredient}}-infused {{food.meat}}","{{food.meat}} steak","{{food.meat}} with {{food.fruit}} sauce","{{food.spice}}-crusted {{food.meat}}","{{food.spice}}-rubbed {{food.meat}} salad","{{food.vegetable}} salad","{{person.first_name.generic}}'s special {{food.ingredient}}"],ethnic_category:["Ainu","Albanian","American","Andhra","Anglo-Indian","Arab","Argentine","Armenian","Assyrian","Awadhi","Azerbaijani","Balochi","Bangladeshi","Bashkir","Belarusian","Bengali","Berber","Brazilian","British","Buddhist","Bulgarian","Cajun","Cantonese","Caribbean","Chechen","Chinese","Chinese Islamic","Circassian","Crimean Tatar","Cypriot","Czech","Danish","Egyptian","English","Eritrean","Estonian","Ethiopian","Filipino","French","Georgian","German","Goan","Goan Catholic","Greek","Gujarati","Hyderabad","Indian","Indian Chinese","Indian Singaporean","Indonesian","Inuit","Irish","Italian","Italian-American","Jamaican","Japanese","Jewish - Israeli","Karnataka","Kazakh","Keralite","Korean","Kurdish","Laotian","Latvian","Lebanese","Lithuanian","Louisiana Creole","Maharashtrian","Malay","Malaysian Chinese","Malaysian Indian","Mangalorean","Mediterranean","Mennonite","Mexican","Mordovian","Mughal","Native American","Nepalese","New Mexican","Odia","Pakistani","Parsi","Pashtun","Pennsylvania Dutch","Peranakan","Persian","Peruvian","Polish","Portuguese","Punjabi","Québécois","Rajasthani","Romani","Romanian","Russian","Sami","Serbian","Sindhi","Slovak","Slovenian","Somali","South Indian","Soviet","Spanish","Sri Lankan","Taiwanese","Tamil","Tatar","Texan","Thai","Turkish","Udupi","Ukrainian","Vietnamese","Yamal","Zambian","Zanzibari"],fruit:["apple","apricot","aubergine","avocado","banana","berry","blackberry","blood orange","blueberry","bush tomato","butternut pumpkin","cantaloupe","cavalo","cherry","corella pear","cranberry","cumquat","currant","custard apple","custard apples daikon","date","dragonfruit","dried apricot","elderberry","feijoa","fig","fingerlime","goji berry","grape","grapefruit","guava","honeydew melon","incaberry","jarrahdale pumpkin","juniper berry","kiwi fruit","kiwiberry","lemon","lime","longan","loquat","lychee","mandarin","mango","mangosteen","melon","mulberry","nashi pear","nectarine","olive","orange","papaw","papaya","passionfruit","peach","pear","pineapple","plum","pomegranate","prune","rockmelon","snowpea","sprout","starfruit","strawberry","sultana","tangelo","tomato","watermelon"],ingredient:["achacha","adzuki beans","agar","agave syrup","ajowan seed","albacore tuna","alfalfa","allspice","almond oil","almonds","amaranth","amchur","anchovies","aniseed","annatto seed","apple cider vinegar","apple juice","apple juice concentrate","apples","apricots","arborio rice","arrowroot","artichoke","arugula","asafoetida","asian greens","asian noodles","asparagus","aubergine","avocado","avocado oil","avocado spread","bacon","baking powder","baking soda","balsamic vinegar","bamboo shoots","banana","barberry","barley","barramundi","basil basmati rice","bay leaves","bean shoots","bean sprouts","beans","beef","beef stock","beetroot","berries","besan","black eyed beans","blackberries","blood oranges","blue cheese","blue eye trevalla","blue swimmer crab","blueberries","bocconcini","bok choy","bonito flakes","bonza","borlotti beans","bran","brazil nut","bread","brie","broccoli","broccolini","brown flour","brown mushrooms","brown rice","brown rice vinegar","brussels sprouts","buckwheat","buckwheat flour","buckwheat noodles","bulghur","bush tomato","butter","butter beans","buttermilk","butternut lettuce","butternut pumpkin","cabbage","cacao","cake","calamari","camellia tea oil","camembert","camomile","candle nut","cannellini beans","canola oil","cantaloupe","capers","capsicum","caraway seed","cardamom","carob carrot","carrot","cashews","cassia bark","cauliflower","cavalo","cayenne","celery","celery seed","cheddar","cherries","chestnut","chia seeds","chicken","chicken stock","chickory","chickpea","chilli pepper","chinese cabbage","chinese five spice","chives","choy sum","cinnamon","clams","cloves","cocoa powder","coconut","coconut oil","coconut water","coffee","common cultivated mushrooms","corella pear","coriander leaves","coriander seed","corn oil","corn syrup","corn tortilla","cornichons","cornmeal","cos lettuce","cottage cheese","cous cous","crabs","cranberry","cream","cream cheese","cucumber","cumin","cumquat","currants","curry leaves","curry powder","custard apples","dandelion","dark chocolate","dashi","dates","dill","dragonfruit","dried apricots","dried chinese broccoli","duck","edam","edamame","eggplant","eggs","elderberry","endive","english spinach","enoki mushrooms","extra virgin olive oil","farmed prawns","feijoa","fennel","fennel seeds","fenugreek","feta","figs","file powder","fingerlime","fish sauce","fish stock","flat mushrooms","flathead","flaxseed","flaxseed oil","flounder","flour","freekeh","french eschallots","fresh chillies","fromage blanc","fruit","galangal","garam masala","garlic","goat cheese","goat milk","goji berry","grape seed oil","grapefruit","grapes","green beans","green pepper","green tea","green tea noodles","greenwheat freekeh","gruyere","guava","gula melaka","haloumi","ham","haricot beans","harissa","hazelnut","hijiki","hiramasa kingfish","hokkien noodles","honey","honeydew melon","horseradish","hot smoked salmon","hummus","iceberg lettuce","incaberries","jarrahdale pumpkin","jasmine rice","jelly","jerusalem artichoke","jewfish","jicama","juniper berries","kale","kangaroo","kecap manis","kenchur","kidney beans","kidneys","kiwi berries","kiwi fruit","kohlrabi","kokam","kombu","koshihikari rice","kudzu","kumera","lamb","lavender flowers","leeks","lemon","lemongrass","lentils","lettuce","licorice","lime leaves","limes","liver","lobster","longan","loquats","lotus root","lychees","macadamia nut","macadamia oil","mace","mackerel","mahi mahi","mahlab","malt vinegar","mandarins","mango","mangosteens","maple syrup","margarine","marigold","marjoram","mastic","melon","milk","milk chocolate","mint","miso","molasses","monkfish","morwong","mountain bread","mozzarella","muesli","mulberries","mullet","mung beans","mussels","mustard","mustard seed","nashi pear","nasturtium","nectarines","nori","nutmeg","nutritional yeast","nuts","oat flour","oatmeal","oats","octopus","okra","olive oil","olives","omega spread","onion","oranges","oregano","oyster mushrooms","oyster sauce","oysters","pandanus leaves","papaw","papaya","paprik","parmesan cheese","parrotfish","parsley","parsnip","passionfruit","pasta","peaches","peanuts","pear","pear juice","pears","peas","pecan nut","pecorino","pepitas","peppercorns","peppermint","peppers","persimmon","pine nut","pineapple","pinto beans","pistachio nut","plums","polenta","pomegranate","poppy seed","porcini mushrooms","pork","potato flour","potatoes","provolone","prunes","pumpkin","pumpkin seed","purple carrot","purple rice","quark","quince","quinoa","radicchio","radish","raisin","raspberry","red cabbage","red lentils","red pepper","red wine","red wine vinegar","redfish","rhubarb","rice flour","rice noodles","rice paper","rice syrup","ricemilk","ricotta","rockmelon","rose water","rosemary","rye","rye bread","safflower oil","saffron","sage","sake","salmon","sardines","sausages","scallops","sea salt","semolina","sesame oil","sesame seeds","shark","shiitake mushrooms","silverbeet","slivered almonds","smoked trout","snapper","snowpea sprouts","snowpeas","soba","sour dough bread","soy","soy beans","soy flour","soy milk","soy sauce","soymilk","spearmint","spelt","spelt bread","spinach","spring onions","sprouts","squash","squid","star anise","star fruit","starfruit","stevia","strawberries","sugar","sultanas","sun-dried tomatoes","sunflower oil","sunflower seeds","sweet chilli sauce","sweet potato","swiss chard","swordfish","szechuan pepperberry","tabasco","tahini","taleggio cheese","tamari","tamarillo","tangelo","tapioca","tapioca flour","tarragon","tea","tea oil","tempeh","thyme","tinned","tofu","tom yum","tomatoes","trout","tuna","turkey","turmeric","turnips","unbleached flour","vanilla beans","vegetable oil","vegetable spaghetti","vegetable stock","vermicelli noodles","vinegar","wakame","walnut","warehou","wasabi","water","watercress","watermelon","wattleseed","wheat","wheatgrass juice","white bread","white flour","white rice","white wine","white wine vinegar","whiting wild rice","wholegrain bread","wholemeal","wholewheat flour","william pear","yeast","yellow papaw","yellowtail kingfish","yoghurt","yogurt","zucchini"],meat:["beef","chicken","crocodile","duck","emu","goose","kangaroo","lamb","ostrich","pigeon","pork","quail","rabbit","salmon","turkey","venison"],spice:["achiote seed","ajwain seed","ajwan seed","allspice","amchoor","anise","anise star","aniseed","annatto seed","arrowroot","asafoetida","baharat","balti masala","balti stir fry mix","basil","bay leaves","bbq","caraway seed","cardamom","cassia","cayenne pepper","celery","chamomile","chervil","chilli","chilli pepper","chillies","china star","chives","cinnamon","cloves","colombo","coriander","cumin","curly leaf parsley","curry","dhansak","dill","fennel seed","fenugreek","fines herbes","five spice","french lavender","galangal","garam masala","garlic","german chamomile","ginger","green cardamom","herbes de provence","jalfrezi","jerk","kaffir leaves","korma","lavender","lemon grass","lemon pepper","lime leaves","liquorice root","mace","mango","marjoram","methi","mint","mustard","nutmeg","onion seed","orange zest","oregano","paprika","parsley","pepper","peppercorns","pimento","piri piri","poppy seed","pot marjoram","poudre de colombo","ras-el-hanout","rice paper","rogan josh","rose baie","rosemary","saffron","sage","sesame seed","spearmint","sumac","sweet basil","sweet laurel","tagine","tandoori masala","tarragon","thyme","tikka masala","turmeric","vanilla","zahtar"],vegetable:["artichoke","arugula","asian greens","asparagus","bean shoots","bean sprouts","beans","beetroot","bok choy","broccoli","broccolini","brussels sprouts","butternut lettuce","cabbage","capers","carob carrot","carrot","cauliflower","celery","chilli pepper","chinese cabbage","chives","cornichons","cos lettuce","cucumber","dried chinese broccoli","eggplant","endive","english spinach","french eschallots","fresh chillies","garlic","green beans","green pepper","hijiki","iceberg lettuce","jerusalem artichoke","jicama","kale","kohlrabi","leeks","lettuce","okra","onion","parsnip","peas","peppers","potatoes","pumpkin","purple carrot","radicchio","radish","raspberry","red cabbage","red pepper","rhubarb","snowpea sprouts","spinach","squash","sun dried tomatoes","sweet potato","swiss chard","turnips","zucchini"]},hacker:{adjective:["1080p","auxiliary","back-end","bluetooth","cross-platform","digital","haptic","mobile","multi-byte","neural","online","open-source","optical","primary","redundant","solid state","virtual","wireless"],ingverb:["backing up","bypassing","calculating","compressing","connecting","copying","generating","hacking","indexing","navigating","overriding","parsing","programming","quantifying","synthesizing","transmitting"],noun:["alarm","application","array","bandwidth","bus","capacitor","card","circuit","driver","feed","firewall","hard drive","interface","matrix","microchip","monitor","panel","pixel","port","program","protocol","sensor","system","transmitter"],phrase:["I'll {{verb}} the {{adjective}} {{abbreviation}} {{noun}}, that should {{noun}} the {{abbreviation}} {{noun}}!","If we {{verb}} the {{noun}}, we can get to the {{abbreviation}} {{noun}} through the {{adjective}} {{abbreviation}} {{noun}}!","The {{abbreviation}} {{noun}} is down, {{verb}} the {{adjective}} {{noun}} so we can {{verb}} the {{abbreviation}} {{noun}}!","Try to {{verb}} the {{abbreviation}} {{noun}}, maybe it will {{verb}} the {{adjective}} {{noun}}!","Use the {{adjective}} {{abbreviation}} {{noun}}, then you can {{verb}} the {{adjective}} {{noun}}!","We need to {{verb}} the {{adjective}} {{abbreviation}} {{noun}}!","You can't {{verb}} the {{noun}} without {{ingverb}} the {{adjective}} {{abbreviation}} {{noun}}!","{{ingverb}} the {{noun}} won't do anything, we need to {{verb}} the {{adjective}} {{abbreviation}} {{noun}}!"],verb:["back up","bypass","calculate","compress","connect","copy","generate","hack","index","input","navigate","override","parse","program","quantify","reboot","synthesize","transmit"]},internet:{domain_suffix:["com","biz","info","name","net","org"],example_email:["example.org","example.com","example.net"],free_email:["gmail.com","yahoo.com","hotmail.com"]},location:{building_number:["#####","####","###"],city_name:["Abilene","Akron","Alafaya","Alameda","Albany","Albuquerque","Alexandria","Alhambra","Aliso Viejo","Allen","Allentown","Aloha","Alpharetta","Altadena","Altamonte Springs","Altoona","Amarillo","Ames","Anaheim","Anchorage","Anderson","Ankeny","Ann Arbor","Annandale","Antelope","Antioch","Apex","Apopka","Apple Valley","Appleton","Arcadia","Arden-Arcade","Arecibo","Arlington","Arlington Heights","Arvada","Ashburn","Asheville","Aspen Hill","Atascocita","Athens-Clarke County","Atlanta","Attleboro","Auburn","Augusta-Richmond County","Aurora","Austin","Avondale","Azusa","Bakersfield","Baldwin Park","Baltimore","Barnstable Town","Bartlett","Baton Rouge","Battle Creek","Bayamon","Bayonne","Baytown","Beaumont","Beavercreek","Beaverton","Bedford","Bel Air South","Bell Gardens","Belleville","Bellevue","Bellflower","Bellingham","Bend","Bentonville","Berkeley","Berwyn","Bethesda","Bethlehem","Billings","Biloxi","Binghamton","Birmingham","Bismarck","Blacksburg","Blaine","Bloomington","Blue Springs","Boca Raton","Boise City","Bolingbrook","Bonita Springs","Bossier City","Boston","Bothell","Boulder","Bountiful","Bowie","Bowling Green","Boynton Beach","Bozeman","Bradenton","Brandon","Brentwood","Bridgeport","Bristol","Brockton","Broken Arrow","Brookhaven","Brookline","Brooklyn Park","Broomfield","Brownsville","Bryan","Buckeye","Buena Park","Buffalo","Buffalo Grove","Burbank","Burien","Burke","Burleson","Burlington","Burnsville","Caguas","Caldwell","Camarillo","Cambridge","Camden","Canton","Cape Coral","Carlsbad","Carmel","Carmichael","Carolina","Carrollton","Carson","Carson City","Cary","Casa Grande","Casas Adobes","Casper","Castle Rock","Castro Valley","Catalina Foothills","Cathedral City","Catonsville","Cedar Hill","Cedar Park","Cedar Rapids","Centennial","Centreville","Ceres","Cerritos","Champaign","Chandler","Chapel Hill","Charleston","Charlotte","Charlottesville","Chattanooga","Cheektowaga","Chesapeake","Chesterfield","Cheyenne","Chicago","Chico","Chicopee","Chino","Chino Hills","Chula Vista","Cicero","Cincinnati","Citrus Heights","Clarksville","Clearwater","Cleveland","Cleveland Heights","Clifton","Clovis","Coachella","Coconut Creek","Coeur d'Alene","College Station","Collierville","Colorado Springs","Colton","Columbia","Columbus","Commerce City","Compton","Concord","Conroe","Conway","Coon Rapids","Coral Gables","Coral Springs","Corona","Corpus Christi","Corvallis","Costa Mesa","Council Bluffs","Country Club","Covina","Cranston","Cupertino","Cutler Bay","Cuyahoga Falls","Cypress","Dale City","Dallas","Daly City","Danbury","Danville","Davenport","Davie","Davis","Dayton","Daytona Beach","DeKalb","DeSoto","Dearborn","Dearborn Heights","Decatur","Deerfield Beach","Delano","Delray Beach","Deltona","Denton","Denver","Des Moines","Des Plaines","Detroit","Diamond Bar","Doral","Dothan","Downers Grove","Downey","Draper","Dublin","Dubuque","Duluth","Dundalk","Dunwoody","Durham","Eagan","East Hartford","East Honolulu","East Lansing","East Los Angeles","East Orange","East Providence","Eastvale","Eau Claire","Eden Prairie","Edina","Edinburg","Edmond","El Cajon","El Centro","El Dorado Hills","El Monte","El Paso","Elgin","Elizabeth","Elk Grove","Elkhart","Ellicott City","Elmhurst","Elyria","Encinitas","Enid","Enterprise","Erie","Escondido","Euclid","Eugene","Euless","Evanston","Evansville","Everett","Fairfield","Fall River","Fargo","Farmington","Farmington Hills","Fayetteville","Federal Way","Findlay","Fishers","Flagstaff","Flint","Florence-Graham","Florin","Florissant","Flower Mound","Folsom","Fond du Lac","Fontana","Fort Collins","Fort Lauderdale","Fort Myers","Fort Pierce","Fort Smith","Fort Wayne","Fort Worth","Fountain Valley","Fountainebleau","Framingham","Franklin","Frederick","Freeport","Fremont","Fresno","Frisco","Fullerton","Gainesville","Gaithersburg","Galveston","Garden Grove","Gardena","Garland","Gary","Gastonia","Georgetown","Germantown","Gilbert","Gilroy","Glen Burnie","Glendale","Glendora","Glenview","Goodyear","Grand Forks","Grand Island","Grand Junction","Grand Prairie","Grand Rapids","Grapevine","Great Falls","Greeley","Green Bay","Greensboro","Greenville","Greenwood","Gresham","Guaynabo","Gulfport","Hacienda Heights","Hackensack","Haltom City","Hamilton","Hammond","Hampton","Hanford","Harlingen","Harrisburg","Harrisonburg","Hartford","Hattiesburg","Haverhill","Hawthorne","Hayward","Hemet","Hempstead","Henderson","Hendersonville","Hesperia","Hialeah","Hicksville","High Point","Highland","Highlands Ranch","Hillsboro","Hilo","Hoboken","Hoffman Estates","Hollywood","Homestead","Honolulu","Hoover","Houston","Huntersville","Huntington","Huntington Beach","Huntington Park","Huntsville","Hutchinson","Idaho Falls","Independence","Indianapolis","Indio","Inglewood","Iowa City","Irondequoit","Irvine","Irving","Jackson","Jacksonville","Janesville","Jefferson City","Jeffersonville","Jersey City","Johns Creek","Johnson City","Joliet","Jonesboro","Joplin","Jupiter","Jurupa Valley","Kalamazoo","Kannapolis","Kansas City","Kearny","Keller","Kendale Lakes","Kendall","Kenner","Kennewick","Kenosha","Kent","Kentwood","Kettering","Killeen","Kingsport","Kirkland","Kissimmee","Knoxville","Kokomo","La Crosse","La Habra","La Mesa","La Mirada","Lacey","Lafayette","Laguna Niguel","Lake Charles","Lake Elsinore","Lake Forest","Lake Havasu City","Lake Ridge","Lakeland","Lakeville","Lakewood","Lancaster","Lansing","Laredo","Largo","Las Cruces","Las Vegas","Lauderhill","Lawrence","Lawton","Layton","League City","Lee's Summit","Leesburg","Lehi","Lehigh Acres","Lenexa","Levittown","Lewisville","Lexington-Fayette","Lincoln","Linden","Little Rock","Littleton","Livermore","Livonia","Lodi","Logan","Lombard","Lompoc","Long Beach","Longmont","Longview","Lorain","Los Angeles","Louisville/Jefferson County","Loveland","Lowell","Lubbock","Lynchburg","Lynn","Lynwood","Macon-Bibb County","Madera","Madison","Malden","Manchester","Manhattan","Mansfield","Manteca","Maple Grove","Margate","Maricopa","Marietta","Marysville","Mayaguez","McAllen","McKinney","McLean","Medford","Melbourne","Memphis","Menifee","Mentor","Merced","Meriden","Meridian","Mesa","Mesquite","Metairie","Methuen Town","Miami","Miami Beach","Miami Gardens","Middletown","Midland","Midwest City","Milford","Millcreek","Milpitas","Milwaukee","Minneapolis","Minnetonka","Minot","Miramar","Mishawaka","Mission","Mission Viejo","Missoula","Missouri City","Mobile","Modesto","Moline","Monroe","Montebello","Monterey Park","Montgomery","Moore","Moreno Valley","Morgan Hill","Mount Pleasant","Mount Prospect","Mount Vernon","Mountain View","Muncie","Murfreesboro","Murray","Murrieta","Nampa","Napa","Naperville","Nashua","Nashville-Davidson","National City","New Bedford","New Braunfels","New Britain","New Brunswick","New Haven","New Orleans","New Rochelle","New York","Newark","Newport Beach","Newport News","Newton","Niagara Falls","Noblesville","Norfolk","Normal","Norman","North Bethesda","North Charleston","North Highlands","North Las Vegas","North Lauderdale","North Little Rock","North Miami","North Miami Beach","North Port","North Richland Hills","Norwalk","Novato","Novi","O'Fallon","Oak Lawn","Oak Park","Oakland","Oakland Park","Ocala","Oceanside","Odessa","Ogden","Oklahoma City","Olathe","Olympia","Omaha","Ontario","Orange","Orem","Orland Park","Orlando","Oro Valley","Oshkosh","Overland Park","Owensboro","Oxnard","Palatine","Palm Bay","Palm Beach Gardens","Palm Coast","Palm Desert","Palm Harbor","Palm Springs","Palmdale","Palo Alto","Paradise","Paramount","Parker","Parma","Pasadena","Pasco","Passaic","Paterson","Pawtucket","Peabody","Pearl City","Pearland","Pembroke Pines","Pensacola","Peoria","Perris","Perth Amboy","Petaluma","Pflugerville","Pharr","Philadelphia","Phoenix","Pico Rivera","Pine Bluff","Pine Hills","Pinellas Park","Pittsburg","Pittsburgh","Pittsfield","Placentia","Plainfield","Plano","Plantation","Pleasanton","Plymouth","Pocatello","Poinciana","Pomona","Pompano Beach","Ponce","Pontiac","Port Arthur","Port Charlotte","Port Orange","Port St. Lucie","Portage","Porterville","Portland","Portsmouth","Potomac","Poway","Providence","Provo","Pueblo","Quincy","Racine","Raleigh","Rancho Cordova","Rancho Cucamonga","Rancho Palos Verdes","Rancho Santa Margarita","Rapid City","Reading","Redding","Redlands","Redmond","Redondo Beach","Redwood City","Reno","Renton","Reston","Revere","Rialto","Richardson","Richland","Richmond","Rio Rancho","Riverside","Riverton","Riverview","Roanoke","Rochester","Rochester Hills","Rock Hill","Rockford","Rocklin","Rockville","Rockwall","Rocky Mount","Rogers","Rohnert Park","Rosemead","Roseville","Roswell","Round Rock","Rowland Heights","Rowlett","Royal Oak","Sacramento","Saginaw","Salem","Salina","Salinas","Salt Lake City","Sammamish","San Angelo","San Antonio","San Bernardino","San Bruno","San Buenaventura (Ventura)","San Clemente","San Diego","San Francisco","San Jacinto","San Jose","San Juan","San Leandro","San Luis Obispo","San Marcos","San Mateo","San Rafael","San Ramon","San Tan Valley","Sandy","Sandy Springs","Sanford","Santa Ana","Santa Barbara","Santa Clara","Santa Clarita","Santa Cruz","Santa Fe","Santa Maria","Santa Monica","Santa Rosa","Santee","Sarasota","Savannah","Sayreville","Schaumburg","Schenectady","Scottsdale","Scranton","Seattle","Severn","Shawnee","Sheboygan","Shoreline","Shreveport","Sierra Vista","Silver Spring","Simi Valley","Sioux City","Sioux Falls","Skokie","Smyrna","Somerville","South Bend","South Gate","South Hill","South Jordan","South San Francisco","South Valley","South Whittier","Southaven","Southfield","Sparks","Spokane","Spokane Valley","Spring","Spring Hill","Spring Valley","Springdale","Springfield","St. Charles","St. Clair Shores","St. Cloud","St. George","St. Joseph","St. Louis","St. Louis Park","St. Paul","St. Peters","St. Petersburg","Stamford","State College","Sterling Heights","Stillwater","Stockton","Stratford","Strongsville","Suffolk","Sugar Land","Summerville","Sunnyvale","Sunrise","Sunrise Manor","Surprise","Syracuse","Tacoma","Tallahassee","Tamarac","Tamiami","Tampa","Taunton","Taylor","Taylorsville","Temecula","Tempe","Temple","Terre Haute","Texas City","The Hammocks","The Villages","The Woodlands","Thornton","Thousand Oaks","Tigard","Tinley Park","Titusville","Toledo","Toms River","Tonawanda","Topeka","Torrance","Town 'n' Country","Towson","Tracy","Trenton","Troy","Trujillo Alto","Tuckahoe","Tucson","Tulare","Tulsa","Turlock","Tuscaloosa","Tustin","Twin Falls","Tyler","Union City","University","Upland","Urbana","Urbandale","Utica","Vacaville","Valdosta","Vallejo","Vancouver","Victoria","Victorville","Vineland","Virginia Beach","Visalia","Vista","Waco","Waipahu","Waldorf","Walnut Creek","Waltham","Warner Robins","Warren","Warwick","Washington","Waterbury","Waterloo","Watsonville","Waukegan","Waukesha","Wauwatosa","Wellington","Wesley Chapel","West Allis","West Babylon","West Covina","West Des Moines","West Hartford","West Haven","West Jordan","West Lafayette","West New York","West Palm Beach","West Sacramento","West Seneca","West Valley City","Westfield","Westland","Westminster","Weston","Weymouth Town","Wheaton","White Plains","Whittier","Wichita","Wichita Falls","Wilmington","Wilson","Winston-Salem","Woodbury","Woodland","Worcester","Wylie","Wyoming","Yakima","Yonkers","Yorba Linda","York","Youngstown","Yuba City","Yucaipa","Yuma"],city_pattern:["{{location.city_prefix}} {{person.first_name.generic}}{{location.city_suffix}}","{{location.city_prefix}} {{person.first_name.generic}}","{{person.first_name.generic}}{{location.city_suffix}}","{{person.last_name.generic}}{{location.city_suffix}}","{{location.city_name}}"],city_prefix:["North","East","West","South","New","Lake","Port","Fort"],city_suffix:["town","ton","land","ville","berg","burgh","boro","borough","bury","view","port","mouth","stad","stead","furt","chester","cester","fort","field","haven","side","shire","worth"],country:["Afghanistan","Aland Islands","Albania","Algeria","American Samoa","Andorra","Angola","Anguilla","Antarctica","Antigua and Barbuda","Argentina","Armenia","Aruba","Australia","Austria","Azerbaijan","Bahamas","Bahrain","Bangladesh","Barbados","Belarus","Belgium","Belize","Benin","Bermuda","Bhutan","Bolivia","Bonaire, Sint Eustatius and Saba","Bosnia and Herzegovina","Botswana","Bouvet Island","Brazil","British Indian Ocean Territory (Chagos Archipelago)","Brunei Darussalam","Bulgaria","Burkina Faso","Burundi","Cambodia","Cameroon","Canada","Cape Verde","Cayman Islands","Central African Republic","Chad","Chile","China","Christmas Island","Cocos (Keeling) Islands","Colombia","Comoros","Congo","Cook Islands","Costa Rica","Cote d'Ivoire","Croatia","Cuba","Curacao","Cyprus","Czechia","Democratic Republic of the Congo","Denmark","Djibouti","Dominica","Dominican Republic","Ecuador","Egypt","El Salvador","Equatorial Guinea","Eritrea","Estonia","Eswatini","Ethiopia","Faroe Islands","Falkland Islands (Malvinas)","Fiji","Finland","France","French Guiana","French Polynesia","French Southern Territories","Gabon","Gambia","Georgia","Germany","Ghana","Gibraltar","Greece","Greenland","Grenada","Guadeloupe","Guam","Guatemala","Guernsey","Guinea","Guinea-Bissau","Guyana","Haiti","Heard Island and McDonald Islands","Holy See (Vatican City State)","Honduras","Hong Kong","Hungary","Iceland","India","Indonesia","Iran","Iraq","Ireland","Isle of Man","Israel","Italy","Jamaica","Japan","Jersey","Jordan","Kazakhstan","Kenya","Kiribati","Democratic People's Republic of Korea","Republic of Korea","Kuwait","Kyrgyz Republic","Lao People's Democratic Republic","Latvia","Lebanon","Lesotho","Liberia","Libyan Arab Jamahiriya","Liechtenstein","Lithuania","Luxembourg","Macao","Madagascar","Malawi","Malaysia","Maldives","Mali","Malta","Marshall Islands","Martinique","Mauritania","Mauritius","Mayotte","Mexico","Micronesia","Moldova","Monaco","Mongolia","Montenegro","Montserrat","Morocco","Mozambique","Myanmar","Namibia","Nauru","Nepal","Netherlands","New Caledonia","New Zealand","Nicaragua","Niger","Nigeria","Niue","Norfolk Island","North Macedonia","Northern Mariana Islands","Norway","Oman","Pakistan","Palau","Palestine","Panama","Papua New Guinea","Paraguay","Peru","Philippines","Pitcairn Islands","Poland","Portugal","Puerto Rico","Qatar","Reunion","Romania","Russian Federation","Rwanda","Saint Barthelemy","Saint Helena","Saint Kitts and Nevis","Saint Lucia","Saint Martin","Saint Pierre and Miquelon","Saint Vincent and the Grenadines","Samoa","San Marino","Sao Tome and Principe","Saudi Arabia","Senegal","Serbia","Seychelles","Sierra Leone","Singapore","Sint Maarten","Slovakia","Slovenia","Solomon Islands","Somalia","South Africa","South Georgia and the South Sandwich Islands","South Sudan","Spain","Sri Lanka","Sudan","Suriname","Svalbard & Jan Mayen Islands","Sweden","Switzerland","Syrian Arab Republic","Taiwan","Tajikistan","Tanzania","Thailand","Timor-Leste","Togo","Tokelau","Tonga","Trinidad and Tobago","Tunisia","Turkey","Turkmenistan","Turks and Caicos Islands","Tuvalu","Uganda","Ukraine","United Arab Emirates","United Kingdom","United States of America","United States Minor Outlying Islands","Uruguay","Uzbekistan","Vanuatu","Venezuela","Vietnam","Virgin Islands, British","Virgin Islands, U.S.","Wallis and Futuna","Western Sahara","Yemen","Zambia","Zimbabwe"],county:["Adams County","Calhoun County","Carroll County","Clark County","Clay County","Crawford County","Douglas County","Fayette County","Franklin County","Grant County","Greene County","Hamilton County","Hancock County","Henry County","Jackson County","Jefferson County","Johnson County","Lake County","Lawrence County","Lee County","Lincoln County","Logan County","Madison County","Marion County","Marshall County","Monroe County","Montgomery County","Morgan County","Perry County","Pike County","Polk County","Scott County","Union County","Warren County","Washington County","Wayne County","Avon","Bedfordshire","Berkshire","Borders","Buckinghamshire","Cambridgeshire","Central","Cheshire","Cleveland","Clwyd","Cornwall","County Antrim","County Armagh","County Down","County Fermanagh","County Londonderry","County Tyrone","Cumbria","Derbyshire","Devon","Dorset","Dumfries and Galloway","Durham","Dyfed","East Sussex","Essex","Fife","Gloucestershire","Grampian","Greater Manchester","Gwent","Gwynedd County","Hampshire","Herefordshire","Hertfordshire","Highlands and Islands","Humberside","Isle of Wight","Kent","Lancashire","Leicestershire","Lincolnshire","Lothian","Merseyside","Mid Glamorgan","Norfolk","North Yorkshire","Northamptonshire","Northumberland","Nottinghamshire","Oxfordshire","Powys","Rutland","Shropshire","Somerset","South Glamorgan","South Yorkshire","Staffordshire","Strathclyde","Suffolk","Surrey","Tayside","Tyne and Wear","Warwickshire","West Glamorgan","West Midlands","West Sussex","West Yorkshire","Wiltshire","Worcestershire"],direction:{cardinal:["North","East","South","West"],cardinal_abbr:["N","E","S","W"],ordinal:["Northeast","Northwest","Southeast","Southwest"],ordinal_abbr:["NE","NW","SE","SW"]},postcode:["#####","#####-####"],secondary_address:["Apt. ###","Suite ###"],state:["Alabama","Alaska","Arizona","Arkansas","California","Colorado","Connecticut","Delaware","Florida","Georgia","Hawaii","Idaho","Illinois","Indiana","Iowa","Kansas","Kentucky","Louisiana","Maine","Maryland","Massachusetts","Michigan","Minnesota","Mississippi","Missouri","Montana","Nebraska","Nevada","New Hampshire","New Jersey","New Mexico","New York","North Carolina","North Dakota","Ohio","Oklahoma","Oregon","Pennsylvania","Rhode Island","South Carolina","South Dakota","Tennessee","Texas","Utah","Vermont","Virginia","Washington","West Virginia","Wisconsin","Wyoming"],state_abbr:["AL","AK","AZ","AR","CA","CO","CT","DE","FL","GA","HI","ID","IL","IN","IA","KS","KY","LA","ME","MD","MA","MI","MN","MS","MO","MT","NE","NV","NH","NJ","NM","NY","NC","ND","OH","OK","OR","PA","RI","SC","SD","TN","TX","UT","VT","VA","WA","WV","WI","WY"],street_address:{normal:"{{location.buildingNumber}} {{location.street}}",full:"{{location.buildingNumber}} {{location.street}} {{location.secondaryAddress}}"},street_name:["10th Street","11th Street","12th Street","13th Street","14th Street","15th Street","16th Street","1st Avenue","1st Street","2nd Avenue","2nd Street","3rd Avenue","3rd Street","4th Avenue","4th Street","5th Avenue","5th Street","6th Avenue","6th Street","7th Avenue","7th Street","8th Avenue","8th Street","9th Street","A Street","Abbey Road","Adams Avenue","Adams Street","Airport Road","Albany Road","Albert Road","Albion Street","Alexandra Road","Alfred Street","Alma Street","Ash Close","Ash Grove","Ash Road","Ash Street","Aspen Close","Atlantic Avenue","Avenue Road","Back Lane","Baker Street","Balmoral Road","Barn Close","Barton Road","Bath Road","Bath Street","Bay Street","Beach Road","Bedford Road","Beech Close","Beech Drive","Beech Grove","Beech Road","Beechwood Avenue","Bell Lane","Belmont Road","Birch Avenue","Birch Close","Birch Grove","Birch Road","Blind Lane","Bluebell Close","Boundary Road","Bramble Close","Bramley Close","Bridge Road","Bridge Street","Broad Lane","Broad Street","Broadway","Broadway Avenue","Broadway Street","Brook Lane","Brook Road","Brook Street","Brookside","Buckingham Road","Cambridge Street","Canal Street","Castle Close","Castle Lane","Castle Road","Castle Street","Cavendish Road","Cedar Avenue","Cedar Close","Cedar Grove","Cedar Road","Cedar Street","Cemetery Road","Center Avenue","Center Road","Center Street","Central Avenue","Central Street","Chapel Close","Chapel Hill","Chapel Road","Chapel Street","Charles Street","Cherry Close","Cherry Street","Cherry Tree Close","Chester Road","Chestnut Close","Chestnut Drive","Chestnut Grove","Chestnut Street","Church Avenue","Church Close","Church Hill","Church Lane","Church Path","Church Road","Church Street","Church View","Church Walk","Claremont Road","Clarence Road","Clarence Street","Clarendon Road","Clark Street","Clay Lane","Cleveland Street","Cliff Road","Clifton Road","Clinton Street","College Avenue","College Street","Columbia Avenue","Commerce Street","Commercial Road","Commercial Street","Common Lane","Coronation Avenue","Coronation Road","County Line Road","County Road","Court Street","Cow Lane","Crescent Road","Cromwell Road","Cross Lane","Cross Street","Crown Street","Cumberland Street","Dale Street","Dark Lane","Davis Street","Depot Street","Derby Road","Derwent Close","Devonshire Road","Division Street","Douglas Road","Duke Street","E 10th Street","E 11th Street","E 12th Street","E 14th Street","E 1st Street","E 2nd Street","E 3rd Street","E 4th Avenue","E 4th Street","E 5th Street","E 6th Avenue","E 6th Street","E 7th Street","E 8th Street","E 9th Street","E Bridge Street","E Broad Street","E Broadway","E Broadway Street","E Cedar Street","E Center Street","E Central Avenue","E Church Street","E Elm Street","E Franklin Street","E Front Street","E Grand Avenue","E High Street","E Jackson Street","E Jefferson Street","E Main","E Main Street","E Maple Street","E Market Street","E North Street","E Oak Street","E Park Avenue","E Pine Street","E River Road","E South Street","E State Street","E Union Street","E Walnut Street","E Washington Avenue","E Washington Street","E Water Street","East Avenue","East Road","East Street","Edward Street","Elm Close","Elm Grove","Elm Road","Elm Street","Euclid Avenue","Fairfield Road","Farm Close","Ferry Road","Field Close","Field Lane","First Avenue","First Street","Fore Street","Forest Avenue","Forest Road","Fourth Avenue","Franklin Avenue","Franklin Road","Franklin Street","Front Street","Frontage Road","Garden Close","Garden Street","George Street","Gladstone Road","Glebe Close","Gloucester Road","Gordon Road","Gordon Street","Grand Avenue","Grange Avenue","Grange Close","Grange Road","Grant Street","Green Close","Green Lane","Green Street","Greenville Road","Greenway","Greenwood Road","Grove Lane","Grove Road","Grove Street","Hall Lane","Hall Street","Harrison Avenue","Harrison Street","Hawthorn Avenue","Hawthorn Close","Hazel Close","Hazel Grove","Heath Road","Heather Close","Henry Street","Heron Close","Hickory Street","High Road","High Street","Highfield Avenue","Highfield Close","Highfield Road","Highland Avenue","Hill Road","Hill Street","Hillside","Hillside Avenue","Hillside Close","Hillside Road","Holly Close","Honeysuckle Close","Howard Road","Howard Street","Jackson Avenue","Jackson Street","James Street","Jefferson Avenue","Jefferson Street","Johnson Street","Jubilee Close","Juniper Close","Kent Road","Kestrel Close","King Street","King's Road","Kingfisher Close","Kings Highway","Kingsway","Laburnum Grove","Lafayette Street","Lake Avenue","Lake Drive","Lake Road","Lake Street","Lancaster Road","Lansdowne Road","Larch Close","Laurel Close","Lawrence Street","Lee Street","Liberty Street","Lime Grove","Lincoln Avenue","Lincoln Highway","Lincoln Road","Lincoln Street","Locust Street","Lodge Close","Lodge Lane","London Road","Long Lane","Low Road","Madison Avenue","Madison Street","Main","Main Avenue","Main Road","Main Street","Main Street E","Main Street N","Main Street S","Main Street W","Manchester Road","Manor Close","Manor Drive","Manor Gardens","Manor Road","Manor Way","Maple Avenue","Maple Close","Maple Drive","Maple Road","Maple Street","Market Place","Market Square","Market Street","Marlborough Road","Marsh Lane","Martin Luther King Boulevard","Martin Luther King Drive","Martin Luther King Jr Boulevard","Mary Street","Mayfield Road","Meadow Close","Meadow Drive","Meadow Lane","Meadow View","Meadow Way","Memorial Drive","Middle Street","Mill Close","Mill Lane","Mill Road","Mill Street","Milton Road","Milton Street","Monroe Street","Moor Lane","Moss Lane","Mount Pleasant","Mount Street","Mulberry Street","N 1st Street","N 2nd Street","N 3rd Street","N 4th Street","N 5th Street","N 6th Street","N 7th Street","N 8th Street","N 9th Street","N Bridge Street","N Broad Street","N Broadway","N Broadway Street","N Cedar Street","N Center Street","N Central Avenue","N Chestnut Street","N Church Street","N College Street","N Court Street","N Division Street","N East Street","N Elm Street","N Franklin Street","N Front Street","N Harrison Street","N High Street","N Jackson Street","N Jefferson Street","N Lincoln Street","N Locust Street","N Main","N Main Avenue","N Main Street","N Maple Street","N Market Street","N Monroe Street","N Oak Street","N Park Street","N Pearl Street","N Pine Street","N Poplar Street","N Railroad Street","N State Street","N Union Street","N Walnut Street","N Washington Avenue","N Washington Street","N Water Street","Nelson Road","Nelson Street","New Lane","New Road","New Street","Newton Road","Nightingale Close","Norfolk Road","North Avenue","North Lane","North Road","North Street","Northfield Road","Oak Avenue","Oak Drive","Oak Lane","Oak Road","Oak Street","Oakfield Road","Oaklands","Old Lane","Old Military Road","Old Road","Old State Road","Orchard Drive","Orchard Lane","Orchard Road","Orchard Street","Oxford Road","Oxford Street","Park Avenue","Park Crescent","Park Drive","Park Lane","Park Place","Park Road","Park Street","Park View","Parkside","Pearl Street","Pennsylvania Avenue","Pine Close","Pine Grove","Pine Street","Pinfold Lane","Pleasant Street","Poplar Avenue","Poplar Close","Poplar Road","Poplar Street","Post Road","Pound Lane","Princes Street","Princess Street","Priory Close","Priory Road","Prospect Avenue","Prospect Place","Prospect Road","Prospect Street","Quarry Lane","Quarry Road","Queen's Road","Railroad Avenue","Railroad Street","Railway Street","Rectory Close","Rectory Lane","Richmond Close","Richmond Road","Ridge Road","River Road","River Street","Riverside","Riverside Avenue","Riverside Drive","Roman Road","Roman Way","Rowan Close","Russell Street","S 10th Street","S 14th Street","S 1st Avenue","S 1st Street","S 2nd Street","S 3rd Street","S 4th Street","S 5th Street","S 6th Street","S 7th Street","S 8th Street","S 9th Street","S Bridge Street","S Broad Street","S Broadway","S Broadway Street","S Center Street","S Central Avenue","S Chestnut Street","S Church Street","S College Street","S Division Street","S East Street","S Elm Street","S Franklin Street","S Front Street","S Grand Avenue","S High Street","S Jackson Street","S Jefferson Street","S Lincoln Street","S Main","S Main Avenue","S Main Street","S Maple Street","S Market Street","S Mill Street","S Monroe Street","S Oak Street","S Park Street","S Pine Street","S Railroad Street","S State Street","S Union Street","S Walnut Street","S Washington Avenue","S Washington Street","S Water Street","S West Street","Salisbury Road","Sandringham Road","Sandy Lane","School Close","School Lane","School Road","School Street","Second Avenue","Silver Street","Skyline Drive","Smith Street","Somerset Road","South Avenue","South Drive","South Road","South Street","South View","Spring Gardens","Spring Street","Springfield Close","Springfield Road","Spruce Street","St Andrew's Road","St Andrews Close","St George's Road","St John's Road","St Mary's Close","St Mary's Road","Stanley Road","Stanley Street","State Avenue","State Line Road","State Road","State Street","Station Road","Station Street","Stoney Lane","Sycamore Avenue","Sycamore Close","Sycamore Drive","Sycamore Street","Talbot Road","Tennyson Road","The Avenue","The Beeches","The Causeway","The Chase","The Coppice","The Copse","The Crescent","The Croft","The Dell","The Drive","The Fairway","The Glebe","The Grange","The Green","The Grove","The Hawthorns","The Lane","The Laurels","The Limes","The Maltings","The Meadows","The Mews","The Mount","The Oaks","The Orchard","The Oval","The Paddock","The Paddocks","The Poplars","The Ridgeway","The Ridings","The Rise","The Sidings","The Spinney","The Square","The Willows","The Woodlands","Third Avenue","Third Street","Tower Road","Trinity Road","Tudor Close","Union Avenue","Union Street","University Avenue","University Drive","Valley Road","Veterans Memorial Drive","Veterans Memorial Highway","Vicarage Close","Vicarage Lane","Vicarage Road","Victoria Place","Victoria Road","Victoria Street","Vine Street","W 10th Street","W 11th Street","W 12th Street","W 14th Street","W 1st Street","W 2nd Street","W 3rd Street","W 4th Avenue","W 4th Street","W 5th Street","W 6th Avenue","W 6th Street","W 7th Street","W 8th Street","W 9th Street","W Bridge Street","W Broad Street","W Broadway","W Broadway Avenue","W Broadway Street","W Center Street","W Central Avenue","W Chestnut Street","W Church Street","W Division Street","W Elm Street","W Franklin Street","W Front Street","W Grand Avenue","W High Street","W Jackson Street","W Jefferson Street","W Lake Street","W Main","W Main Street","W Maple Street","W Market Street","W Monroe Street","W North Street","W Oak Street","W Park Street","W Pine Street","W River Road","W South Street","W State Street","W Union Street","W Walnut Street","W Washington Avenue","W Washington Street","Walnut Close","Walnut Street","Warren Close","Warren Road","Washington Avenue","Washington Boulevard","Washington Road","Washington Street","Water Lane","Water Street","Waterloo Road","Waterside","Watery Lane","Waverley Road","Well Lane","Wellington Road","Wellington Street","West Avenue","West End","West Lane","West Road","West Street","West View","Western Avenue","Western Road","Westfield Road","Westgate","William Street","Willow Close","Willow Drive","Willow Grove","Willow Road","Willow Street","Windermere Road","Windmill Close","Windmill Lane","Windsor Avenue","Windsor Close","Windsor Drive","Wood Lane","Wood Street","Woodland Close","Woodland Road","Woodlands","Woodlands Avenue","Woodlands Close","Woodlands Road","Woodside","Woodside Road","Wren Close","Yew Tree Close","York Road","York Street"],street_pattern:["{{person.first_name.generic}} {{location.street_suffix}}","{{person.last_name.generic}} {{location.street_suffix}}","{{location.street_name}}"],street_suffix:["Alley","Avenue","Branch","Bridge","Brook","Brooks","Burg","Burgs","Bypass","Camp","Canyon","Cape","Causeway","Center","Centers","Circle","Circles","Cliff","Cliffs","Club","Common","Corner","Corners","Course","Court","Courts","Cove","Coves","Creek","Crescent","Crest","Crossing","Crossroad","Curve","Dale","Dam","Divide","Drive","Drives","Estate","Estates","Expressway","Extension","Extensions","Fall","Falls","Ferry","Field","Fields","Flat","Flats","Ford","Fords","Forest","Forge","Forges","Fork","Forks","Fort","Freeway","Garden","Gardens","Gateway","Glen","Glens","Green","Greens","Grove","Groves","Harbor","Harbors","Haven","Heights","Highway","Hill","Hills","Hollow","Inlet","Island","Islands","Isle","Junction","Junctions","Key","Keys","Knoll","Knolls","Lake","Lakes","Land","Landing","Lane","Light","Lights","Loaf","Lock","Locks","Lodge","Loop","Mall","Manor","Manors","Meadow","Meadows","Mews","Mill","Mills","Mission","Motorway","Mount","Mountain","Mountains","Neck","Orchard","Oval","Overpass","Park","Parks","Parkway","Parkways","Pass","Passage","Path","Pike","Pine","Pines","Place","Plain","Plains","Plaza","Point","Points","Port","Ports","Prairie","Radial","Ramp","Ranch","Rapid","Rapids","Rest","Ridge","Ridges","River","Road","Roads","Route","Row","Rue","Run","Shoal","Shoals","Shore","Shores","Skyway","Spring","Springs","Spur","Spurs","Square","Squares","Station","Stravenue","Stream","Street","Streets","Summit","Terrace","Throughway","Trace","Track","Trafficway","Trail","Tunnel","Turnpike","Underpass","Union","Unions","Valley","Valleys","Via","Viaduct","View","Views","Village","Villages","Ville","Vista","Walk","Walks","Wall","Way","Ways","Well","Wells"]},lorem:{word:["a","ab","abbas","abduco","abeo","abscido","absconditus","absens","absorbeo","absque","abstergo","absum","abundans","abutor","accedo","accendo","acceptus","accommodo","accusamus","accusantium","accusator","acer","acerbitas","acervus","acidus","acies","acquiro","acsi","ad","adamo","adaugeo","addo","adduco","ademptio","adeo","adeptio","adfectus","adfero","adficio","adflicto","adhaero","adhuc","adicio","adimpleo","adinventitias","adipisci","adipiscor","adiuvo","administratio","admiratio","admitto","admoneo","admoveo","adnuo","adopto","adsidue","adstringo","adsuesco","adsum","adulatio","adulescens","aduro","advenio","adversus","advoco","aedificium","aeger","aegre","aegrotatio","aegrus","aeneus","aequitas","aequus","aer","aestas","aestivus","aestus","aetas","aeternus","ager","aggero","aggredior","agnitio","agnosco","ago","ait","aiunt","alias","alienus","alii","alioqui","aliqua","aliquam","aliquid","alius","allatus","alo","alter","altus","alveus","amaritudo","ambitus","ambulo","amet","amicitia","amiculum","amissio","amita","amitto","amo","amor","amoveo","amplexus","amplitudo","amplus","ancilla","angelus","angulus","angustus","animadverto","animi","animus","annus","anser","ante","antea","antepono","antiquus","aperiam","aperio","aperte","apostolus","apparatus","appello","appono","appositus","approbo","apto","aptus","apud","aqua","ara","aranea","arbitro","arbor","arbustum","arca","arceo","arcesso","architecto","arcus","argentum","argumentum","arguo","arma","armarium","aro","ars","articulus","artificiose","arto","arx","ascisco","ascit","asper","asperiores","aspernatur","aspicio","asporto","assentator","assumenda","astrum","at","atavus","ater","atque","atqui","atrocitas","atrox","attero","attollo","attonbitus","auctor","auctus","audacia","audax","audentia","audeo","audio","auditor","aufero","aureus","aurum","aut","autem","autus","auxilium","avaritia","avarus","aveho","averto","baiulus","balbus","barba","bardus","basium","beatae","beatus","bellicus","bellum","bene","beneficium","benevolentia","benigne","bestia","bibo","bis","blandior","blanditiis","bonus","bos","brevis","cado","caecus","caelestis","caelum","calamitas","calcar","calco","calculus","callide","campana","candidus","canis","canonicus","canto","capillus","capio","capitulus","capto","caput","carbo","carcer","careo","caries","cariosus","caritas","carmen","carpo","carus","casso","caste","casus","catena","caterva","cattus","cauda","causa","caute","caveo","cavus","cedo","celebrer","celer","celo","cena","cenaculum","ceno","censura","centum","cerno","cernuus","certe","certus","cervus","cetera","charisma","chirographum","cibo","cibus","cicuta","cilicium","cimentarius","ciminatio","cinis","circumvenio","cito","civis","civitas","clam","clamo","claro","clarus","claudeo","claustrum","clementia","clibanus","coadunatio","coaegresco","coepi","coerceo","cogito","cognatus","cognomen","cogo","cohaero","cohibeo","cohors","colligo","collum","colo","color","coma","combibo","comburo","comedo","comes","cometes","comis","comitatus","commemoro","comminor","commodi","commodo","communis","comparo","compello","complectus","compono","comprehendo","comptus","conatus","concedo","concido","conculco","condico","conduco","confero","confido","conforto","confugo","congregatio","conicio","coniecto","conitor","coniuratio","conor","conqueror","conscendo","consectetur","consequatur","consequuntur","conservo","considero","conspergo","constans","consuasor","contabesco","contego","contigo","contra","conturbo","conventus","convoco","copia","copiose","cornu","corona","corporis","corpus","correptius","corrigo","corroboro","corrumpo","corrupti","coruscus","cotidie","crapula","cras","crastinus","creator","creber","crebro","credo","creo","creptio","crepusculum","cresco","creta","cribro","crinis","cruciamentum","crudelis","cruentus","crur","crustulum","crux","cubicularis","cubitum","cubo","cui","cuius","culpa","culpo","cultellus","cultura","cum","cumque","cunabula","cunae","cunctatio","cupiditas","cupiditate","cupio","cuppedia","cupressus","cur","cura","curatio","curia","curiositas","curis","curo","curriculum","currus","cursim","curso","cursus","curto","curtus","curvo","custodia","damnatio","damno","dapifer","debeo","debilito","debitis","decens","decerno","decet","decimus","decipio","decor","decretum","decumbo","dedecor","dedico","deduco","defaeco","defendo","defero","defessus","defetiscor","deficio","defleo","defluo","defungo","degenero","degero","degusto","deinde","delectatio","delectus","delego","deleniti","deleo","delibero","delicate","delinquo","deludo","demens","demergo","demitto","demo","demonstro","demoror","demulceo","demum","denego","denique","dens","denuncio","denuo","deorsum","depereo","depono","depopulo","deporto","depraedor","deprecator","deprimo","depromo","depulso","deputo","derelinquo","derideo","deripio","deserunt","desidero","desino","desipio","desolo","desparatus","despecto","dicta","dignissimos","distinctio","dolor","dolore","dolorem","doloremque","dolores","doloribus","dolorum","ducimus","ea","eaque","earum","eius","eligendi","enim","eos","error","esse","est","et","eum","eveniet","ex","excepturi","exercitationem","expedita","explicabo","facere","facilis","fuga","fugiat","fugit","harum","hic","id","illo","illum","impedit","in","incidunt","infit","inflammatio","inventore","ipsa","ipsam","ipsum","iste","itaque","iure","iusto","labore","laboriosam","laborum","laudantium","libero","magnam","magni","maiores","maxime","minima","minus","modi","molestiae","molestias","mollitia","nam","natus","necessitatibus","nemo","neque","nesciunt","nihil","nisi","nobis","non","nostrum","nulla","numquam","occaecati","ocer","odio","odit","officia","officiis","omnis","optio","paens","pariatur","patior","patria","patrocinor","patruus","pauci","paulatim","pauper","pax","peccatus","pecco","pecto","pectus","pecus","peior","pel","perferendis","perspiciatis","placeat","porro","possimus","praesentium","provident","quae","quaerat","quam","quas","quasi","qui","quia","quibusdam","quidem","quis","quisquam","quo","quod","quos","ratione","recusandae","reiciendis","rem","repellat","repellendus","reprehenderit","repudiandae","rerum","saepe","sapiente","sed","sequi","similique","sint","sit","socius","sodalitas","sol","soleo","solio","solitudo","solium","sollers","sollicito","solum","solus","soluta","solutio","solvo","somniculosus","somnus","sonitus","sono","sophismata","sopor","sordeo","sortitus","spargo","speciosus","spectaculum","speculum","sperno","spero","spes","spiculum","spiritus","spoliatio","sponte","stabilis","statim","statua","stella","stillicidium","stipes","stips","sto","strenuus","strues","studio","stultus","suadeo","suasoria","sub","subito","subiungo","sublime","subnecto","subseco","substantia","subvenio","succedo","succurro","sufficio","suffoco","suffragium","suggero","sui","sulum","sum","summa","summisse","summopere","sumo","sumptus","sunt","supellex","super","suppellex","supplanto","suppono","supra","surculus","surgo","sursum","suscipio","suscipit","suspendo","sustineo","suus","synagoga","tabella","tabernus","tabesco","tabgo","tabula","taceo","tactus","taedium","talio","talis","talus","tam","tamdiu","tamen","tametsi","tamisium","tamquam","tandem","tantillus","tantum","tardus","tego","temeritas","temperantia","templum","tempora","tempore","temporibus","temptatio","tempus","tenax","tendo","teneo","tener","tenetur","tenuis","tenus","tepesco","tepidus","ter","terebro","teres","terga","tergeo","tergiversatio","tergo","tergum","termes","terminatio","tero","terra","terreo","territo","terror","tersus","tertius","testimonium","texo","textilis","textor","textus","thalassinus","theatrum","theca","thema","theologus","thermae","thesaurus","thesis","thorax","thymbra","thymum","tibi","timidus","timor","titulus","tolero","tollo","tondeo","tonsor","torqueo","torrens","tot","totam","totidem","toties","totus","tracto","trado","traho","trans","tredecim","tremo","trepide","tres","tribuo","tricesimus","triduana","tripudio","tristis","triumphus","trucido","truculenter","tubineus","tui","tum","tumultus","tunc","turba","turbo","turpis","tutamen","tutis","tyrannus","uberrime","ubi","ulciscor","ullam","ullus","ulterius","ultio","ultra","umbra","umerus","umquam","una","unde","undique","universe","unus","urbanus","urbs","uredo","usitas","usque","ustilo","ustulo","usus","ut","uter","uterque","utilis","utique","utor","utpote","utrimque","utroque","utrum","uxor","vaco","vacuus","vado","vae","valde","valens","valeo","valetudo","validus","vallum","vapulus","varietas","varius","vehemens","vel","velit","velociter","velum","velut","venia","veniam","venio","ventito","ventosus","ventus","venustas","ver","verbera","verbum","vere","verecundia","vereor","vergo","veritas","veritatis","vero","versus","verto","verumtamen","verus","vesco","vesica","vesper","vespillo","vester","vestigium","vestrum","vetus","via","vicinus","vicissitudo","victoria","victus","videlicet","video","viduo","vigilo","vigor","vilicus","vilis","vilitas","villa","vinco","vinculum","vindico","vinitor","vinum","vir","virga","virgo","viridis","viriliter","virtus","vis","viscus","vita","vitae","vitiosus","vitium","vito","vivo","vix","vobis","vociferor","voco","volaticus","volo","volubilis","voluntarius","volup","voluptas","voluptate","voluptatem","voluptates","voluptatibus","voluptatum","volutabrum","volva","vomer","vomica","vomito","vorago","vorax","voro","vos","votum","voveo","vox","vulariter","vulgaris","vulgivagus","vulgo","vulgus","vulnero","vulnus","vulpes","vulticulus","xiphias"]},metadata:{title:"English",code:"en",language:"en",endonym:"English",dir:"ltr",script:"Latn"},music:{album:['"Awaken, My Love!"',"(What's The Story) Morning Glory?","- Tragedy +","13 Reasons Why (Season 3)","21st Century Breakdown","30 De Febrero","432 Hz Deep Healing","5-Star","528 Hz Meditation Music","54+1","8 Mile","808s & Heartbreak","9 To 5 And Odd Jobs","A Beautiful Lie","A Day At The Races","A Day Without Rain","A Fever You Can't Sweat Out","A Gangsta's Pain","A Gift & A Curse","A Hard Day's Night","A Head Full Of Dreams","A Kind Of Magic","A Million Ways To Murder","A Moment Apart","A Song For Every Moon","A Thousand Suns","A Winter Romance","ABBA","AI YoungBoy","AJ Tracey","Act One","After Hours","Agent Provocateur","All About You","All I Know So Far: Setlist","All Or Nothing","All Out","All Over The Place","All Stand Together","All The Lost Souls","All The Things I Never Said","All Things Must Pass","Alleen","Alright, Still","Alta Suciedad","America","American Heartbreak","American Teen","And Justice For None","Animal Songs","Another Friday Night","Anything Goes","Ao Vivo Em São Paulo","Ao Vivo No Ibirapuera","Apricot Princess","Aqui E Agora (Ao Vivo)","Arcane League Of Legends","Ardipithecus","Aretha Now","Around The Fur","Arrival","Artist 2.0","As She Pleases","Ascend","Ashlyn","Astro Lounge","At Night, Alone.","At. Long. Last. ASAP","Atlas","Audioslave","Aura","Austin","Awake","Away From The Sun","Ayayay!","Baby On Baby","Back For Everything","Back From The Edge","Back In Black","Back To Black","Back To The Game","Bad","Bahía Ducati","Baila","Barbie The Album","Battleground","Bayou Country","Bcos U Will Never B Free","Be","Be Here Now","Beautiful Mind","Beautiful Thugger Girls","Beautiful Trauma","Beauty And The Beast","Beggars Banquet","Being Funny In A Foreign Language","Berlin Lebt","Berry Is On Top","Best White Noise For Baby Sleep - Loopable With No Fade","Big Baby DRAM","Bigger, Better, Faster, More!","Billy Talent II","Black Star Elephant","Blackout","Blank Face LP","Bleach","Blizzard Of Ozz","Blonde","Blood Sugar Sex Magik","Bloom","Blowin' Your Mind!","Blu Celeste","Blue","Blue Banisters","Blue Hawaii","Blue Neighbourhood","Bluebird Days","Bobby Tarantino","Bobby Tarantino II","Bon Iver","Born Pink","Born To Run","Brand New Eyes","Break The Cycle","Breakfast In America","Breakthrough","Brett Young","Bridge Over Troubled Water","Bright: The Album","Brol","Buds","Buena Vista Social Club","Built On Glass","Bury Me At Makeout Creek","Busyhead","By The Way","CB6","CNCO","California Sunrise","Californication","Call Me Irresponsible","Calm","Camino Palmero","Camp","Caracal","Carbon Fiber Hits","Carnival","Carry On","Cartel De Santa","Certified Lover Boy","Chaaama","Chama Meu Nome","Chapter 1: Snake Oil","Chapter 2: Swamp Savant","Chapter One","Charlie's Angels","Cherry Bomb","Chief","Chocolate Factory","Chosen","Chris Brown","Christina Aguilera","Chromatica","Church","City Of Evil","Clandestino","Clouds","Coco","Collision Course","Colour Vision","Combat Rock","Come Around Sundown","Come Away With Me","Come Home The Kids Miss You","Come What(ever) May","Commando","Common Sense","Communion","Conditions","Confident","Confrontation","Control The Streets, Volume 2","Corinne Bailey Rae","Costello Music","Cottonwood","Covers, Vol. 2","Cozy Tapes Vol. 2: Too Cozy","Crash Talk","Crazy Love","Crazysexycool","Crowded House","Cruisin' With Junior H","Culture","Current Mood","DS2","Dale","Danger Days: The True Lives Of The Fabulous Killjoys","Dangerous Woman","Dangerous: The Double Album","Dark Horse","Day69","Daydream","De Fiesta","De Viaje","DeAnn","Death Race For Love","Delirium","Delta","Demidevil","Depression Cherry","Descendants","Desgenerados Mixtape","Destin","Destiny Fulfilled","Desvelado","Detroit 2","Dex Meets Dexter","Dharma","Die A Legend","Different World","Dig Your Roots","Digital Druglord","Dirt","Disclaimer I / II","Discovery","Disraeli Gears","Disumano","Dizzy Up The Girl","Don't Play That Song","Donda","Donde Quiero Estar","Doo-Wops & Hooligans","Down The Way","Dr. Feelgood","Dream Your Life Away","Dreaming Out Loud","Drip Harder","Drive","Drones","Dropped Outta College","Drowning","Dua Warna Cinta","Dulce Beat","Dusty In Memphis","Dutty Rock","Dying To Live","ENR","East Atlanta Love Letter","Editorial","Edna","El Abayarde","El Amor En Los Tiempos Del Perreo","El Camino","El Comienzo","El Dorado","El Karma","El Mal Querer","El Malo","El Trabajo Es La Suerte","El Viaje De Copperpot","Electric Ladyland","Emotion","En Tus Planes","Endless Summer Vacation","Enter The Wu-Tang (36 Chambers)","Equals (=)","Estrella","Euphoria","Europop","Evermore","Every Kingdom","Everyday Life","Evolve","Expectations","Face Yourself","Facelift","Fallin'","Fancy You","Fantasía","Favourite Worst Nightmare","Fear Of The Dark","Fearless","Feel Something","Feels Like Home","Femme Fatale","Ferxxocalipsis","Fifty Shades Darker","Fifty Shades Freed","Fifty Shades Of Grey","Final (Vol.1)","Finding Beauty In Negative Spaces","Fine Line","First Impressions Of Earth","First Steps","Five Seconds Flat","Folklore","For Emma, Forever Ago","Forajido EP 1","Forever","Forever Young","Formula Of Love: O+T=<3","Free 6lack","Freudian","Frozen II","Full Moon Fever","Funhouse","Funk Wav Bounces Vol.1","Future History","FutureSex/LoveSounds","Fuzzybrain","Gallery","Gangsta's Paradise","Gemini","Gemini Rights","Generationwhy","Get A Grip","Get Up","Gettin' Old","Girl","Gladiator","Glisten","Globalization","Gloria","Glory Days","God's Project","Gold Skies","Golden","Good Evening","Good Thing","Goodbye Yellow Brick Road","Gossip Columns","Got Your Six","Graceland","Graduation","Grand Champ","Grandson, Vol. 1","Green River","Guerra","Ha*Ash Primera Fila - Hecho Realidad","Haiz","Hamilton","Happy Endings","Harry Styles","Hasta La Raíz","Hatful Of Hollow","Head In The Clouds","Heard It In A Past Life","Heart Shaped World","Heartbeat City","Heartbreak On A Full Moon / Cuffing Season - 12 Days Of Christmas","Heaven Or Hell","Heaven knows","Hellbilly Deluxe","Hellboy","Help!","Her Loss","Here Comes The Cowboy","Hey World","High School Musical","High Tide In The Snake's Nest","Historias De Un Capricornio","Hndrxx","Hombres G (Devuélveme A Mi Chica)","Homerun","Homework","Hot Fuss","Hot Pink","Hot Sauce / Hello Future","Hot Space","Hotel Diablo","Houses Of The Holy","How Big, How Blue, How Beautiful","How I'm Feeling","How To Be Human","How To Save A Life","How To: Friend, Love, Freefall","Hozier","Human","Huncho Jack, Jack Huncho","Hunter Hayes","Hysteria","I Am...Sasha Fierce","I Can't Handle Change","I Met You When I Was 18. (The Playlist)","I Never Liked You","I Never Loved A Man The Way I Love You","I See You","I Think You Think Too Much Of Me","I Used To Know Her","I Used To Think I Could Fly","I'm Comin' Over","Ich & Keine Maske","If You Can Believe Your Eyes & Ears","Il Ballo Della Vita","Ill Communication","Imagination & The Misfit Kid","Imagine","Immortalized","In A Perfect World...","In Colour","In My Own Words","In Rainbows","In Return","In The Lonely Hour","Infest","Innuendo","Inter Shibuya - La Mafia","Interstellar","Is This It","It Was Written","It's Not Me, It's You","It's Only Me","Ivory","JackBoys","Jamie","Jazz","Jibrail & Iblis","Jordi","Jordin Sparks","Jose","Just As I Am","Just Cause Y'all Waited 2","Just Like You","Justified","K-12 / After School","K.I.D.S.","K.O.","K.O.B. Live","KG0516","KOD","Kane Brown","Kid A","Kid Krow","Kids See Ghosts","Kids in Love","Kinks (You Really Got Me)","Know-It-All","Konvicted","Kring","LANY","LM5","La Criatura","La Flaca","La Melodia De La Calle","La Revolucion","Lady Lady","Lady Wood","Langit Mong Bughaw","Las Que No Iban A Salir","Last Day Of Summer","Last Year Was Complicated","Layers","Layover","Lazarus","Led Zeppelin","Left Of The Middle","Leftoverture","Legends Never Die","Let's Skip To The Wedding","Let's Talk About Love","Licensed To Ill","Life In Cartoon Motion","Life Thru A Lens","Lifelines","Like..?","Lil Big Pac","Lil Boat","Lil Boat 2","Lil Boat 3.5","Lil Kiwi","Lil Pump","Limon Y Sal","Listen Without Prejudice","Little Voice","Live On Red Barn Radio I & II","Lo Que Andábamos Buscando","Lofi Fruits Music 2021","London Calling","Los Campeones Del Pueblo","Los Extraterrestres","Los Favoritos 2","Lost","Lost In Love","Loud","Love Sick","Love Story","Love Stuff","Love Yourself: Tear","Lover","Luca Brasi 2: Gangsta Grillz","Lust For Life","Luv Is Rage","M!ssundaztood","Ma Fleur","Made In Lagos","Mafia Bidness","Magazines Or Novels","Mainstream Sellout","Majestic","Make It Big","Make Yourself","Making Mirrors","Mamma Mia! Here We Go Again","Man Of The Woods","Manic","Me And My Gang","Meduza","Meet The Orphans","Meet The Woo","Melim","Mellon Collie And The Infinite Sadness","Melly vs. Melvin","Memories...Do Not Open","Menagerie","Midnights","Minecraft - Volume Alpha","Minutes To Midnight","Mix Pa Llorar En Tu Cuarto","Modo Avión","Monkey Business","Mono.","Montana","Montevallo","Moosetape","Morning View","Motivan2","Moving Pictures","Mr. Davis","Mr. Misunderstood","Mulan","Mura Masa","Music From The Edge Of Heaven","Music Of The Sun","My House","My Kinda Party","My Krazy Life","My Liver Will Handle What My Heart Can't","My Moment","My Own Lane","My Turn","My Worlds","Na Praia (Ao Vivo)","Nakamura","Nation Of Two","Navegando","Need You Now","Neon Future III","Neotheater","Never Trust A Happy Song","New English","News Of The World","Nicole","Night & Day","Nimmerland","Nimrod","Nine Track Mind","No Angel","No Me Pidas Perdón","No More Drama","No Protection","No Strings Attached","No Time To Die","Nobody Is Listening","Non Stop Erotic Cabaret","Non-Fiction","Northsbest","Nostalgia","Nostalgia, Ultra","Notes On A Conditional Form","Now Or Never","O Embaixador (Ao Vivo)","O My Heart","OK Computer","Ocean","Ocean Avenue","Ocean Eyes","Odisea","Oh My My","Oh, What A Life","On The 6","One In A Million","One More Light","One Of These Nights","Open Up And Say...Ahh!","Ordinary Man","Origins","Out Of The Blue","Over It","OzuTochi","PTSD","Pa Las Baby's Y Belikeada","Pa Que Hablen","Pa' Luego Es Tarde","Pa' Otro La 'O","Pablo Honey","Pain Is Love","Pain Is Temporary","Painting Pictures","Palmen Aus Plastik 2","Para Mi Ex","Para Siempre","Partners In Crime","Pawn Shop","Pegasus / Neon Shark VS Pegasus","Pet Sounds","Piece By Piece","Pier Pressure","Pineapple Sunrise","Piseiro 2020 Ao Vivo","Planet Pit","Plans","Play Deep","Playa Saturno","Por Primera Vez","Por Vida","Positions","Post Human: Survival Horror","Poster Girl","Prazer, Eu Sou Ferrugem (Ao Vivo)","Pretty Girls Like Trap Music","Pretty. Odd.","Prince Royce","Prisma","Prometo","Providence","Puberty 2","Punisher","Purgatory","Purple Rain","Que Bendición","Queen Of The Clouds","Quiero Volver","R&G (Rhythm & Gangsta): The Masterpiece","Raise!","Ransom 2","Rapunzel","Rare","Re Mida","Ready To Die","Realer","Rebelde","Reclassified","Recovery","Recuerden Mi Estilo","Reggatta De Blanc","Regulate… G Funk Era","Reik","Reise, Reise","Relapse","Relaxing Piano Lullabies And Natural Sleep Aid For Baby Sleep Music","Religiously. The Album.","Replay","Results May Vary","Revenge","Revolve","Revolver","Ricky Martin","Rien 100 Rien","Ripcord","Rise And Fall, Rage And Grace","Rise Of An Empire","Robin Hood: Prince Of Thieves","Rock N Roll Jesus","Romance","Romances","Ronan","Royal Blood","Rumours","Sad Boyz 4 Life II","San Lucas","Santana World","Saturation III","Sauce Boyz","Savage Mode","Saxobeats","Scarlet","Schwarzes Herz","Seal The Deal & Let's Boogie","Section.80","Segundo Romance","Sehnsucht","Shake The Snow Globe","Shang-Chi And The Legend Of The Ten Rings: The Album","Sheer Heart Attack","Shiesty Season","Shock Value","Shoot For The Stars, Aim For The Moon","Signed Sealed And Delivered","Signos","Silent Alarm","Simplemente Gracias","Sin Bandera","Sing Me A Lullaby, My Sweet Temptation","Sinner","Sirio","Sit Still, Look Pretty","Skin","Slowhand","Smash","Smithereens","Snow Cougar","Social Cues","Some Girls","Song Hits From Holiday Inn","Songs For Dads","Songs For The Deaf","Songs For You, Truths For Me","Songs In The Key Of Life","Souled Out","Sounds Of Silence","Soy Como Quiero Ser","Speak Now","Speak Your Mind","Speakerboxxx/The Love Below","Spider-Man: Into The Spider-Verse","Split Decision","Square Up","SremmLife","Starboy","Stay +","Stay Dangerous","Staying At Tamara's","Steppenwolf","Stick Season","Still Bill","Straight Outta Compton","Strange Trails","Stronger","Suavemente","Sublime","Suck It and See","Sucker","Sueños","Sugar","Summer Forever","Summer,","Sunset Season","Sunshine On Leith","Surfer Rosa","Sweet Talker","SweetSexySavage","System Of A Down","TA13OO","Talk That Talk","Talking Heads: 77","Tangled Up","Tango In The Night","Taxi Driver","Taylor Swift","Tell Me It's Real","Ten","Ten Summoner's Tales","Terra Sem Cep (Ao Vivo)","Terral","Testing","Tha Carter III","Thank Me Later","That's Christmas To Me","The Academy","The Adventures Of Bobby Ray","The Album","The Andy Williams Christmas Album","The Aviary","The Balcony","The Battle Of Los Angeles","The Beatles (White Album)","The Beginning","The Better Life","The Big Day","The Book","The Breakfast Club","The Cars","The Colour And The Shape","The Death Of Peace Of Mind","The Diary Of Alicia Keys","The Documentary","The Emancipation Of Mimi","The Eminem Show","The End Of Everything","The Final Countdown","The Forever Story","The Foundation","The Goat","The Golden Child","The Good Parts","The Greatest Showman: Reimagined","The Green Trip","The Hardest Love","The Head And The Heart","The Human Condition","The Infamous","The Lady Killer","The Last Don II","The Lion King","The Lockdown Sessions","The London Sessions","The Lord Of The Rings: The Fellowship Of The Ring","The Lost Boy","The Magic Of Christmas / The Christmas Song","The Marshall Mathers LP","The Martin Garrix Collection","The Melodic Blue","The Mockingbird & The Crow","The Pains Of Growing","The Papercut Chronicles","The Perfect Luv Tape","The Pinkprint","The Predator","The Queen Is Dead","The ReVe Festival: Finale","The Rise And Fall Of Ziggy Stardust And The Spiders From Mars","The Rising Tied","The River","The Stone Roses","The Story Of Us","The Stranger","The Sufferer & The Witness","The Sun's Tirade","The Temptations Sing Smokey","The Time Of Our Lives","The Way It Is","The Wonderful World Of Sam Cooke","The Writing's On The Wall","The Young And The Hopeless","Therapy","Therapy Session","There Is More (Live)","There Is Nothing Left To Lose","These Things Happen","Third Eye Blind","This Is Me...Then","This Unruly Mess I've Made","Threat to Survival","Thrill Of The Chase","Time","Timelezz","To Let A Good Thing Die","To Pimp A Butterfly","Toast To Our Differences","Todos Os Cantos, Vol. 1 (Ao Vivo)","Too Hard","Torches X","Total Xanarchy","Toto IV","Toulouse Street","Tourist History","Toxicity","Tragic Kingdom","Tranquility Base Hotel & Casino","Traumazine","Traveler","Tres Hombres","Trip At Knight","Tron: Legacy","True Blue","True Colors","Trustfall","Tu Veneno Mortal","Tudo Em Paz","Ubuntu","Ugly Is Beautiful","Ultra 2021","Una Mattina","Unbroken","Uncovered","Under Pressure","Unsponsored Content","Unstoppable","Unwritten","Urban Flora","Urban Hymns","Use Your Illusion I","Veneer","Versions Of Me","Vibes","Vice Versa","Vices & Virtues","Victory","Vida","Viejo Marihuano","Visualízate","Walk Away","Walk Me Home...","Watch The Throne","Wave","We Broke The Rules","We Love You Tecca","We Love You Tecca 2","Weezer (Green Album)","Welcome To The Madhouse","Westlife","What A Time To Be Alive","What Do You Think About The Car?","What Is Love?","What Makes You Country","What Separates Me From You","What You See Is What You Get / What You See Ain't Always What You Get","When It's Dark Out","When We All Fall Asleep, Where Do We Go?","Where The Light Is","While The World Was Burning","White Pony","Whitney","Who Really Cares","Who You Are","Who's Next","Wide Open","Wilder Mind","Wildfire","Willy And The Poor Boys","Wings / You Never Walk Alone","Wish","Wish You Were Here","Without Warning","Wonder","X&Y","XOXO","Y Que Quede Claro","YBN: The Mixtape","Yo Creo","You Will Regret","Youngblood","Younger Now","Youth"],artist:["$NOT","$uicideboy$","(G)I-DLE","*NSYNC","2 Chainz","21 Savage","6LACK","? & The Mysterians","A Boogie Wit da Hoodie","A Taste of Honey","A Tribe Called Quest","A-Ha","ABBA","AC/DC","AJ Tracey","ATEEZ","Ace of Base","Adele","Ado","Aerosmith","Agust D","Aitana","Al Dexter & his Troopers","Al Green","Al Jolson","Al Martino","Alan Jackson","Alannah Myles","Alec Benjamin","Alejandro Sanz","Alesso","Alfredo Olivas","Ali Gatie","Alice In Chains","Alina Baraz","All Time Low","All-4-One","All-American Rejects","Alok","America","American Quartet","Amii Stewart","Amitabh Bhattacharya","Ana Castela","Anderson .Paak","Andy Grammer","Angus & Julia Stone","Anirudh Ravichander","Anita Ward","Anitta","Anton Karas","Anuel AA","Arcade Fire","Archie Bell & The Drells","Archies","Aretha Franklin","Arizona Zervas","Armin van Buuren","Arthur Conley","Artie Shaw","Asake","Asees Kaur","Association","Atif Aslam","Audioslave","Aventura","Avril Lavigne","Aya Nakamura","B J Thomas","B.o.B","BLACKPINK","BONES","BROCKHAMPTON","BTS","Baby Keem","Bachman-Turner Overdrive","Backstreet Boys","Bad Bunny","Badshah","Bailey Zimmerman","Banda El Recodo","Barbra Streisand","Barry White","Bazzi","Bebe Rexha","Becky G","Becky Hill","Bee Gees","Ben Bernie","Ben Howard","Ben Selvin","Berlin","Bessie Smith","Bethel Music","Bette Midler","Beyonce","Bibi Blocksberg","Bibi und Tina","BigXthaPlug","Bill Doggett","Bill Haley & his Comets","Bill Withers","Billy Davis Jr","Billy Joel","Billy Paul","Billy Preston","Billy Swan","Birdy","Bizarrap","Blake Shelton","Blur","Bob Marley & The Wailers","Bob Seger","Bobby Darin","Bobby Lewis","Bobby McFerrin","Bobby Vinton","Boney M.","Bonez MC","Bonnie Tyler","Booba","Boston","BoyWithUke","Boyce Avenue","Bradley Cooper","Bread","Brent Faiyaz","Brett Young","Bring Me The Horizon","Britney Spears","Brooks & Dunn","Bruce Channel","Bruno & Marrone","Bryan Adams","Bryce Vine","Buddy Holly","Burna Boy","C. Tangana","CKay","CRO","Camilo","Capital Bra","Captain & Tennille","Cardi B","Carin Leon","Carlos Vives","Carly Simon","Carpenters","Cavetown","Celine Dion","Central Cee","Chaka Khan","Champs","Charlie Rich","Chayanne","Cheat Codes","Cher","Chic","Chicago","Chris Brown","Chris Isaak","Chris Young","Christina Aguilera","Christina Perri","Christopher Cross","Chuck Berry","Ciara","Cigarettes After Sex","Cliff Edwards (Ukelele Ike)","Cody Johnson","Colbie Caillat","Colby O'Donis","Cole Swindell","Coleman Hawkins","Contours","Coolio","Count Basie","Cris Mj","Culture Club","Cyndi Lauper","D-Block Europe","DAY6","DJ Khaled","DJ Luian","DJ Nelson","DMX","DNCE","DaVido","Dadju","Daft Punk","Dan + Shay","Daniel Powter","Danny Ocean","Darius Rucker","Dave","David Bowie","David Guetta","Daya","Dean Martin","Deee-Lite","Deep Purple","Deftones","Demi Lovato","Dennis Lloyd","Denzel Curry","Dermot Kennedy","Desiigner","Devo","Dewa 19","Dexys Midnight Runners","Diddy","Dido","Die drei !!!","Diego & Victor Hugo","Diljit Dosanjh","Dimitri Vegas & Like Mike","Dinah Shore","Dionne Warwick","Dire Straits","Disclosure","Dixie Cups","Doja Cat","Dolly Parton","Don Diablo","Don Henley","Don McLean","Don Omar","Donna Summer","Donovan","Dr. Dre","Drake","Dreamville","Dua Lipa","EMF","ENHYPEN","Earth, Wind & Fire","Ed Sheeran","Eddie Cantor","Eddie Cochran","Eddy Howard","Edgar Winter Group","Edwin Hawkins Singers","Edwin Starr","El Alfa","Eladio Carrion","Electric Light Orchestra","Elevation Worship","Ella Henderson","Ellie Goulding","Elton John","Elvis Presley","Empire of the Sun","En Vogue","Enrique Iglesias","Eslabon Armado","Ethel Waters","Etta James","Evanescence","Exile","Extreme","Faith Hill","Fall Out Boy","Fanny Brice","Farruko","Fats Domino","Fats Waller","Feid","Felix Jaehn","Fergie","Fetty Wap","Fiersa Besari","Fifth Harmony","Fine Young Cannibals","Five Finger Death Punch","Fleetwood Mac","Flo-Rida","Florence + The Machine","Flume","Foo Fighters","Foreigner","Foster The People","Four Aces","Frank Ocean","Frank Sinatra","Frankie Avalon","Frankie Valli","Fred Astaire","Freda Payne","Freddie Dredd","Freddy Fender","French Montana","Fuerza Regida","Fujii Kaze","Future","G-Eazy","Garfunkel and Oates","Gary Lewis & The Playboys","Gary Numan","Gene Autry","Gene Chandler","Gene Vincent","George Michael","George Strait","Gera MX","Ghost","Ghostemane","Gigi D'Agostino","Gladys Knight & The Pips","Glass Animals","Glee Cast","Gloria Gaynor","Godsmack","Gorillaz","Gotye","Grand Funk Railroad","Green Day","Grouplove","Grupo Firme","Grupo Marca Registrada","Gryffin","Gucci Mane","Guess Who","Gunna","Gusttavo Lima","Guy Mitchell","Gwen Stefani","Gzuz","H.E.R.","HARDY","Hailee Steinfeld","Halsey","Hans Zimmer","Harris Jayaraj","Harry Chapin","Harry James","Harry Nilsson","Harry Styles","Hayley Williams","Herb Alpert","Herman's Hermits","Hillsong UNITED","Hillsong Worship","Hollywood Undead","Honey Cone","Hoobastank","Hues Corporation","I Prevail","ITZY","IVE","Ice Cube","Ice Spice","Iggy Azalea","Imagine Dragons","Incubus","Internet Money","Isaac Hayes","J Geils Band","J. Cole","JAY-Z","JJ Lin","JP Saxe","JVKE","Jack Harlow","Jack Johnson","Jackie Wilson","Jacquees","James Arthur","James Brown","James TW","James Taylor","Jamie Foxx","Janet Jackson","Janis Joplin","Jason Aldean","Jason Mraz","Jay Chou","Jay Sean","Jay Wheeler","Jaymes Young","Jean Knight","Jeezy","Jennifer Lopez","Jennifer Warnes","Jeremih","Jeremy Zucker","Jerry Lee Lewis","Jerry Murad's Harmonicats","Jess Glynne","Jessie J","Jewel","Jimi Hendrix","Jimin","Jimmie Rodgers","Jimmy Dean","Jo Stafford","Joan Jett & The Blackhearts","Joao Gilberto","Joel Corry","John Fred & The Playboy Band","John Legend","John Mayer","John Williams","Johnnie Ray","Johnnie Taylor","Johnny Cash","Johnny Horton","Johnny Mathis","Johnny Mercer","Johnny Nash","Joji","Jon Bellion","Jonas Blue","Jonas Brothers","Joni James","Jorja Smith","Juan Gabriel","Juan Luis Guerra 4.40","Juanes","Juice Newton","Julia Michaels","Justin Bieber","Justin Quiles","KALEO","KAROL G","KAYTRANADA","KK","KSI","KYLE","Kacey Musgraves","Kane Brown","Kanye West","Karan Aujla","Kate Smith","Katy Perry","Kay Kyser","Ke$ha","Kehlani","Kelly Clarkson","Kenny Chesney","Kenny Loggins","Kenny Rogers","Kenshi Yonezu","Kenya Grace","Kevin Gates","Key Glock","Khalid","Kim Carnes","Kim Petras","Kimbra","Kina","King Gnu","Kings of Leon","Kingsmen","Kitty Kallen","Kodak Black","Kodaline","Kollegah","Kool & The Gang","Kungs","Kygo","Kylie Minogue","LE SSERAFIM","LISA","LMFAO","LUDMILLA","La Adictiva Banda San José de Mesillas","La Oreja de Van Gogh","Labrinth","Lady Antebellum","Lady GaGa","Lainey Wilson","Lana Del Rey","Latto","Lauryn Hill","Lauv","League of Legends","Lee Brice","Leon Bridges","Leona Lewis","Lesley Gore","Leslie Odom Jr.","Liam Payne","Lifehouse","Lil Baby","Lil Dicky","Lil Durk","Lil Mosey","Lil Nas X","Lil Pump","Lil Skies","Lil Tjay","Lil Uzi Vert","Lil Yachty","Lil' Kim","Lil' Wayne","Lin-Manuel Miranda","Linkin Park","Lionel Richie","Lipps Inc","Lisa Loeb","Little Peggy March","Little Richard","Lofi Fruits Music","Lord Huron","Los Del Rio","Los Dos Carnales","Los Lobos","Los Temerarios","Los Tigres Del Norte","Los Tucanes De Tijuana","Lou Reed","Loud Luxury","Louis Jordan","Louis Tomlinson","Love Unlimited","Lovin' Spoonful","Luan Santana","Luciano","Luis Miguel","Luis R Conriquez","Lulu","Lunay","Lupe Fiasco","M","MAX","MC Hammer","MC Ryan SP","MKTO","Mabel","Machine Gun Kelly","Madison Beer","Madonna","Mahalini","Major Lazer","Mambo Kingz","Maneskin","Marco Antonio Solís","Margaret Whiting","Maria Becerra","Mario","Mario Lanza","Mark Ronson","Maroon 5","Marshmello","Martin Garrix","Mary Ford","Mary J Blige","Mary J. Blige","Mary Wells","Matoma","Mau y Ricky","Meek Mill","Megadeth","Melanie","Melanie Martinez","Melendi","Men At Work","Metro Boomin","Michael Bublé","Michael Jackson","Michael McDonald","Michael Sembello","Miguel","Mike Posner","Miley Cyrus","Milky Chance","Minnie Riperton","Miracle Tones","Miranda Lambert","Mohit Chauhan","Mon Laferte","Moneybagg Yo","Monsta X","Mora","Morad","Morat","Mother Mother","Motley Crue","Ms. Lauryn Hill","Mumford & Sons","Muse","Mya","Myke Towers","NCT 127","NCT DREAM","NEFFEX","Nadin Amizah","Nancy Sinatra","Nat King Cole","Nate Smith","Natti Natasha","Nayer","Neil Diamond","Neil Sedaka","Nekfeu","Nelly","New Vaudeville Band","Next","Nickelback","Nicki Minaj","Nicki Nicole","Nicky Jam","Nina Simone","Ninho","Nipsey Hussle","Nirvana","Niska","No Doubt","Norah Jones","Normani","OMI","ONE OK ROCK","Oasis","Official HIGE DANdism","Offset","Old Dominion","Oliver Heldens","Olivia Rodrigo","Omah Lay","One Direction","Otis Redding","OutKast","Owl City","P Diddy","P!nk","PLK","PNL","Pamungkas","Passenger","Pat Boone","Patsy Cline","Patti LaBelle","Patti Page","Paul & Paula","Paul Revere & the Raiders","Paul Robeson","Paul Russell","Paul Whiteman","Paula Abdul","Peaches & Herb","Pearl Jam","Pee Wee Hunt","Pee Wee King","Pentatonix","Percy Faith","Percy Sledge","Peso Pluma","Peter Cetera","Peter Gabriel","Peter, Paul & Mary","Pharrell Williams","Pierce The Veil","Pineapple StormTv","Pink Floyd","Pink Sweat$","Piso 21","Pitbull","Plan B","Player","Polo G","Pop Smoke","Portugal. The Man","Pouya","Prince","Prince Royce","Pusha T","Quality Control","Queen","Quinn XCII","R. Kelly","RAF Camora","RAYE","REM","REO Speedwagon","Radiohead","Rag'n'Bone Man","Rage Against The Machine","Rahat Fateh Ali Khan","Rainbow Kitten Surprise","Rammstein","Rauw Alejandro","Ray Charles","Ray Parker Jr","Ray Stevens","Red Foley","Red Hot Chili Peppers","Red Velvet","Regard","Regina Belle","Reik","Rels B","Rema","Ricardo Arjona","Rich The Kid","Rick Astley","Rick Dees & his Cast of Idiots","Rick Ross","Rick Springfield","Ricky Martin","Ricky Nelson","Rihanna","Rita Ora","Ritchie Valens","Rizky Febian","Rob Thomas","Roberta Flack","Robin Schulz","Robin Thicke","Rod Stewart","Rod Wave","Roddy Ricch","Roger Miller","Romeo Santos","Rosemary Clooney","Roxette","Roy Acuff","Roy Orbison","Rudimental","Ruel","Ruth B.","Ryan Lewis","SCH","SEVENTEEN","SWV","Sabaton","Sabrina Carpenter","Sachet Tandon","Sachin-Jigar","Sade","Sam Cooke","Sam Feldt","Sam Hunt","Sam Smith","Sam The Sham & The Pharaohs","Sammy Davis Jr","Sammy Kaye","Santana","Sasha Alex Sloan","Savage Garden","Saweetie","Scorpions","Sean Kingston","Sean Paul","Sebastian Yatra","Sech","Seeb","Sezen Aksu","Sfera Ebbasta","Shaggy","Shania Twain","Shawn Mendes","Sheena Easton","Shinedown","Shubh","Sia","Sid Sriram","Sidhu Moose Wala","Silk","Silver Convention","Simon & Garfunkel","Sinead O'Connor","Sir Mix-a-Lot","Sister Sledge","Ski Mask The Slump God","Skillet","Skrillex","Sleeping At Last","Smokey Robinson","Snoop Dogg","Snow Patrol","Soda Stereo","Sonu Nigam","Sophie Ellis-Bextor","Spencer Davis Group","Spice Girls","Stan Getz","Starland Vocal Band","Stephen Sanchez","Steve Aoki","Steve Lacy","Steve Winwood","Stevie B","Sting","Stormzy","Strawberry Alarm Clock","Stray Kids","Stromae","Sublime","Sum 41","Summer Walker","Supertramp","Survivor","Swedish House Mafia","System Of A Down","T-Pain","T.I.","TAEYEON","TKKG","TLC","TOMORROW X TOGETHER","TOTO","TWICE","Tag Team","Tainy","Tammi Terrell","Tanishk Bagchi","Tate McRae","Taylor Swift","Tears For Fears","Tems","Tennessee Ernie Ford","Terence Trent D'Arby","Teresa Brewer","Terry Jacks","The Ames Brothers","The Animals","The B52s","The Bangles","The Beatles","The Black Eyed Peas","The Black Keys","The Box Tops","The Chainsmokers","The Chiffons","The Chordettes","The Clash","The Coasters","The Commodores","The Cowsills","The Cranberries","The Crew-Cuts","The Cure","The Detroit Spinners","The Diamonds","The Doobie Brothers","The Doors","The Drifters","The Emotions","The Eurythmics","The Fireballs","The Flamingos","The Foundations","The Four Seasons","The Fray","The Game","The Go Gos","The Goo Goo Dolls","The Head And The Heart","The Hollies","The Ink Spots","The Isley Brothers","The Jackson 5","The Kid LAROI","The Killers","The Kingston Trio","The Kooks","The Lemon Pipers","The Living Tombstone","The Lumineers","The Mamas & The Papas","The Marvelettes","The McCoys","The Mills Brothers","The Miracles","The Monkees","The Moody Blues","The National","The Neighbourhood","The Notorious B.I.G.","The O'Jays","The Offspring","The Osmonds","The Partridge Family","The Penguins","The Pet Shop Boys","The Platters","The Righteous Brothers","The Rolling Stones","The Ronettes","The Score","The Script","The Seekers","The Shangri-Las","The Smashing Pumpkins","The Staple Singers","The Strokes","The Supremes","The Temptations","The Turtles","The Vamps","The Verve","The Village People","The Weavers","The White Stripes","The Young Rascals","The Zombies","Thelma Houston","Thomas Rhett","Three Days Grace","Three Dog Night","Three Man Down","Timbaland","Timmy Trumpet","Toby Keith","Tom Jones","Tom Petty and the Heartbreakers","Tommy Dorsey","Tommy Edwards","Tommy James & the Shondells","Tone Loc","Toni Braxton","Topic","Tory Lanez","Tove Lo","Trevor Daniel","Trey Songz","Trippie Redd","Trueno","Tulsi Kumar","Tulus","Twenty One Pilots","Two Feet","Ty Dolla $ign","Tyga","Tyler Hubbard","U2","UB40","UZI","Ufo361","Upchurch","V","Vampire Weekend","Van McCoy","Van Morrison","Vance Joy","Vanessa Carlton","Vanessa Williams","Vera Lynn","Vernon Dalhart","Vicente Fernandez","Vishal-Shekhar","Volbeat","WILLOW","Wale","Wallows","Weezer","Wham!","Whitney Houston","Why Don't We","Wilbert Harrison","Wilson Phillips","Wiz Khalifa","Woody Guthrie","Wyclef Jean","XXXTENTACION","Xavi","YG","YNW Melly","YOASOBI","Yandel","Years & Years","Yeat","Yo Gotti","Young Dolph","Young Miko","Young Thug","YoungBoy Never Broke Again","Yung Gravy","Yuuri","Yuvan Shankar Raja","ZAYN","ZZ Top","Zac Brown Band","Zach Bryan","Zara Larsson","aespa","benny blanco","blink-182","d4vd","deadmau5","girl in red","gnash","iann dior","will.i.am"],genre:["Acid House","Acid Jazz","Acid Rock","Acoustic","Acoustic Blues","Afro-Pop","Afrobeat","Alt-Rock","Alternative","Ambient","American Trad Rock","Americana","Anime","Arena Rock","Art-Rock","Avant-Garde","Avant-Punk","Baladas y Boleros","Barbershop","Baroque","Bebop","Big Band","Black Metal","Blue Note","Bluegrass","Blues","Boogaloo","Bop","Bossa Nova","Bounce","Brazilian Funk","Breakbeat","Britpop","CCM","Cajun","Cantopop","Celtic","Celtic Folk","Chamber Music","Chant","Chanukah","Chicago Blues","Chicago House","Chicano","Children’s Music","Chill","Choral","Christian","Christmas","Classical","Club","College Rock","Conjunto","Cool Jazz","Country","Crunk","Dance","Dancehall","Death Metal","Deep House","Delta Blues","Detroit Techno","Dirty South","Disco","Disney","Dixieland","Doo-wop","Downtempo","Dream Pop","Drill","Drinking Songs","Drone","Drum'n'bass","Dub","Dubstep","EDM","Early Music","East Coast Rap","Easter","Easy Listening","Eclectic","Electric Blues","Electro","Electronic","Electronica","Emo","Enka","Environmental","Ethio-jazz","Experimental","Experimental Rock","Flamenco","Folk","Folk-Rock","Forro","French Pop","Funk","Fusion","Gangsta Rap","Garage","German Folk","German Pop","Glam Rock","Gospel","Goth","Grime","Grindcore","Groove","Grunge","Hair Metal","Halloween","Happy","Hard Bop","Hard Dance","Hard Rock","Hardcore","Hardcore Punk","Hardcore Rap","Hardstyle","Healing","Heavy Metal","High Classical","Hip Hop","Holiday","Honky Tonk","House","IDM","Impressionist","Indie","Industrial","Instrumental","J-Dance","J-Idol","J-Pop","J-Punk","J-Rock","J-Ska","J-Synth","Jackin House","Jam Bands","Japanese Pop","Jazz","Jungle","K-Pop","Karaoke","Kayokyoku","Kids","Kitsch","Klezmer","Krautrock","Latin","Latin Jazz","Latin Rap","Local","Lounge","Lullabies","MPB","Mainstream Jazz","Malay","Mandopop","March","Mariachi","Mawwal","Medieval","Meditation","Metal","Metalcore","Minimal Techno","Minimalism","Modern","Motown","Mugham","Musicals","Musique Concrète","Nature","Neo-Soul","Nerdcore","New Acoustic","New Age","New Mex","New Wave","No Wave","Noise","Nordic","Novelty","OPM","Oi!","Old School Rap","Opera","Orchestral","Original Score","Outlaw Country","Pagode","Party","Piano","Polka","Pop","Pop Film","Pop Latino","Post Dubstep","Power Pop","Praise & Worship","Progressive House","Progressive Rock","Proto-punk","Psych Rock","Psychedelic","Punk","Punk Rock","Qawwali","Quiet Storm","R&B","Ragtime","Rainy Day","Rap","Reggae","Reggaeton","Regional Mexicano","Relaxation","Renaissance","Retro","Rock","Rockabilly","Rocksteady","Romance","Romantic","Roots Reggae","Roots Rock","SKA","Sad","Salsa","Samba","Second Line","Sertanejo","Shaabi","Shoegaze","Sleep","Smooth Jazz","Soft Rock","Soul","Soundtrack","Southern Gospel","Southern Rock","Space Rock","Stage And Screen","Steampunk","Summer","Surf","Swamp Pop","Swing","Synth Pop","Tango","Techno","Teen Pop","Tejano","Tex-Mex","Thanksgiving","Traditional","Trance","Trip Hop","Tropical","Underground Rap","Urban","Urban Cowboy","West Coast Rap","Western Swing","World","Worldbeat","Zydeco"],song_name:["(Everything I Do) I Do it For You","(Ghost) Riders in the Sky","(I Can't Get No) Satisfaction","(I've Got a Gal In) Kalamazoo","(I've Had) the Time of My Life","(It's No) Sin","(Just Like) Starting Over","(Let Me Be Your) Teddy Bear","(Put Another Nickel In) Music! Music! Music!","(Sexual) Healing","(Sittin' On) the Dock of the Bay","(They Long to Be) Close to You","(You Keep Me) Hangin' On","(You're My) Soul & Inspiration","(Your Love Keeps Lifting Me) Higher & Higher","12th Street Rag","1999","19th Nervous Breakdown","50 Ways to Leave Your Lover","9 to 5","96 Tears","A Boy Named Sue","A Hard Day's Night","A String of Pearls","A Thousand Miles","A Tree in the Meadow","A Whiter Shade of Pale","A Whole New World (Aladdin's Theme)","A Woman in Love","A-Tisket A-Tasket","ABC","Abracadabra","Ac-cent-tchu-ate the Positive","Addicted to Love","After You've Gone","Afternoon Delight","Again","Against All Odds (Take a Look At Me Now)","Ain't Misbehavin'","Ain't No Mountain High Enough","Ain't No Sunshine","Ain't That a Shame","Airplanes","All Along the Watchtower","All I Have to Do is Dream","All I Wanna Do","All My Lovin' (You're Never Gonna Get It)","All Night Long (All Night)","All Out of Love","All Shook Up","All You Need is Love","Alone","Alone Again (Naturally)","Always On My Mind","American Pie","American Woman","Angie","Another Brick in the Wall (part 2)","Another Day in Paradise","Another Night","Another One Bites the Dust","Apologize","April Showers","Aquarius/Let The Sunshine In","Are You Lonesome Tonight?","Arthur's Theme (Best That You Can Do)","As Time Goes By","At Last","At the Hop","Auf Wiederseh'n Sweetheart","Baby Baby","Baby Come Back","Baby Got Back","Baby Love","Baby One More Time","Bad","Bad Day","Bad Girls","Bad Moon Rising","Bad Romance","Baker Street","Ball of Confusion (That's What the World is Today)","Ballad of the Green Berets","Ballerina","Band On the Run","Band of Gold","Battle of New Orleans","Be Bop a Lula","Be My Baby","Be My Love","Beat It","Beautiful Day","Beauty & the Beast","Because I Love You (The Postman Song)","Because You Loved Me","Because of You","Before The Next Teardrop Falls","Begin the Beguine","Behind Closed Doors","Being With You","Believe","Ben","Bennie & the Jets","Besame Mucho","Best of My Love","Bette Davis Eyes","Big Bad John","Big Girls Don't Cry","Billie Jean","Bitter Sweet Symphony","Black Or White","Black Velvet","Blaze of Glory","Bleeding Love","Blue Suede Shoes","Blue Tango","Blueberry Hill","Blurred Lines","Body & Soul","Bohemian Rhapsody","Boogie Oogie Oogie","Boogie Woogie Bugle Boy","Boom Boom Pow","Born in the USA","Born to Be Wild","Born to Run","Boulevard of Broken Dreams","Brand New Key","Brandy (You're A Fine Girl)","Breaking Up is Hard to Do","Breathe","Bridge Over Troubled Water","Brother","Brother Louie","Brown Eyed Girl","Brown Sugar","Build Me Up Buttercup","Burn","Buttons & Bows","Bye","Bye Bye","Bye Bye Love","Caldonia Boogie (What Makes Your Big Head So Hard)","California Dreamin'","California Girls","Call Me","Call Me Maybe","Can You Feel the Love Tonight","Can't Buy Me Love","Can't Get Enough of Your Love","Can't Help Falling in Love","Candle in the Wind '97","Candy Man","Car Wash","Careless Whisper","Cars","Cat's in the Cradle","Cathy's Clown","Celebration","Centerfold","Chain of Fools","Chances Are","Change the World","Chapel of Love","Chattanooga Choo Choo","Chattanoogie Shoe-Shine Boy","Check On It","Cheek to Cheek","Cherish","Cherry Pink & Apple Blossom White","Cold","Colors of the Wind","Come On Eileen","Come On-a My House","Come Together","Coming Up","Cracklin' Rosie","Crazy","Crazy For You","Crazy Little Thing Called Love","Crazy in Love","Creep","Crimson & Clover","Crocodile Rock","Cry","Cry Like a Baby","Crying","Da Doo Ron Ron (When He Walked Me Home)","Dance to the Music","Dancing Queen","Dancing in the Dark","Dancing in the Street","Dardanella","Daydream Believer","December 1963 (Oh What a Night)","Delicado","Dilemma","Disco Duck","Disco Lady","Disturbia","Dizzy","Do That to Me One More Time","Do Wah Diddy Diddy","Do Ya Think I'm Sexy?","Do You Love Me?","Don't Be Cruel","Don't Fence Me In","Don't Go Breaking My Heart","Don't Leave Me This Way","Don't Let the Stars Get in Your Eyes","Don't Let the Sun Go Down On Me","Don't Speak","Don't Stop 'Til You Get Enough","Don't Worry Be Happy","Don't You (Forget About Me)","Don't You Want Me","Doo Wop (That Thing)","Down","Down Hearted Blues","Down Under","Downtown","Dreamlover","Dreams","Drop it Like It's Hot","Drops of Jupiter (Tell Me)","Duke of Earl","E.T.","Earth Angel","Ebony & Ivory","Eight Days a Week","Empire State Of Mind","End of the Road","Endless Love","Escape (The Pina Colada Song)","Eve of Destruction","Every Breath You Take","Every Little Thing She Does is Magic","Everybody Loves Somebody","Everybody Wants to Rule the World","Everyday People","Eye of the Tiger","Faith","Fallin'","Fame","Family Affair","Fantasy","Fast Car","Feel Good Inc","Feel Like Making Love","Fire & Rain","Firework","Flashdance. What a Feeling","Fly Robin Fly","Foolish Games","Footloose","For What It's Worth (Stop","Fortunate Son","Frankenstein","Freak Me","Freebird","Frenesi","Funkytown","Gangsta's Paradise","Georgia On My Mind","Georgy Girl","Get Back","Get Down Tonight","Get Off of My Cloud","Ghostbusters","Gimme Some Lovin'","Girls Just Wanna Have Fun","Give Me Everything","Gives You Hell","Glamorous","Glory of Love","Go Your Own Way","God Bless America","God Bless the Child","Gold Digger","Gonna Make You Sweat (Everybody Dance Now)","Good Lovin'","Good Times","Good Vibrations","Goodbye Yellow Brick Road","Goodnight","Got to Give it Up","Grease","Great Balls of Fire","Greatest Love of All","Green Onions","Green River","Green Tambourine","Grenade","Groove is in the Heart","Groovin'","Gypsies","Hair","Hang On Sloopy","Hanging by a Moment","Hanky Panky","Happy Days Are Here Again","Happy Together","Harbour Lights","Hard to Say I'm Sorry","Harper Valley PTA","Have You Ever Really Loved a Woman?","He'll Have to Go","He's So Fine","He's a Rebel","Heart of Glass","Heart of Gold","Heartbreak Hotel","Hello","Hello Dolly","Help Me","Help!","Here Without You","Here in My Heart","Hero","Hey Baby","Hey Jude","Hey Paula","Hey There","Hey There Delilah","Hey Ya!","Higher Love","Hips don't lie","Hit the Road","Hold On","Hollaback Girl","Honey","Honky Tonk","Honky Tonk Woman","Horse With No Name","Hot Child In The City","Hot Stuff","Hotel California","Hound Dog","House of the Rising Sun","How Deep is Your Love?","How Do I Live?","How Do You Mend a Broken Heart","How High the Moon","How Much is That Doggy in the Window?","How Will I Know","How You Remind Me","How to Save a Life","Hungry Heart","Hurt So Good","I Believe I Can Fly","I Can Dream","I Can Help","I Can See Clearly Now","I Can't Get Next to You","I Can't Get Started","I Can't Go For That (No Can Do)","I Can't Help Myself (Sugar Pie","I Can't Stop Loving You","I Don't Want to Miss a Thing","I Fall to Pieces","I Feel Fine","I Feel For You","I Feel Love","I Get Around","I Got You (I Feel Good)","I Got You Babe","I Gotta Feeling","I Heard it Through the Grapevine","I Honestly Love You","I Just Called to Say I Love You","I Just Wanna Be Your Everything","I Kissed A Girl","I Love Rock 'n' Roll","I Need You Now","I Only Have Eyes For You","I Shot the Sheriff","I Still Haven't Found What I'm Looking For","I Swear","I Think I Love You","I Walk the Line","I Wanna Dance With Somebody (Who Loves Me)","I Wanna Love You","I Want You Back","I Want to Hold Your Hand","I Want to Know What Love Is","I Went to Your Wedding","I Will Always Love You","I Will Follow Him","I Will Survive","I Write the Songs","I'll Be Missing You","I'll Be There","I'll Make Love to You","I'll Never Smile Again","I'll Take You There","I'll Walk Alone","I'll be seeing you","I'm Looking Over a Four Leaf Clover","I'm So Lonesome I Could Cry","I'm Sorry","I'm Walking Behind You","I'm Your Boogie Man","I'm Yours","I'm a Believer","I've Heard That Song Before","If (They Made Me a King)","If I Didn't Care","If You Don't Know Me By Now","If You Leave Me Now","Imagine","In Da Club","In the End","In the Ghetto","In the Mood","In the Summertime","In the Year 2525 (Exordium & Terminus)","Incense & Peppermints","Indian Reservation (The Lament Of The Cherokee Reservation Indian)","Instant Karma","Iris","Ironic","Irreplaceable","It Had to Be You","It's All in the Game","It's My Party","It's Now Or Never","It's Still Rock 'n' Roll to Me","It's Too Late","Jack & Diane","Jailhouse Rock","Jessie's Girl","Jive Talkin'","Johnny B Goode","Joy to the World","Judy in Disguise (With Glasses)","Jump","Jumpin' Jack Flash","Just Dance","Just My Imagination (Running Away With Me)","Just the Way You Are","Kansas City","Karma Chameleon","Keep On Loving You","Killing Me Softly With His Song","King of the Road","Kiss","Kiss & Say Goodbye","Kiss From a Rose","Kiss Me","Kiss On My List","Kiss You All Over","Knock On Wood","Knock Three Times","Kokomo","Kryptonite","Kung Fu Fighting","La Bamba","Lady","Lady Marmalade (Voulez-Vous Coucher Aver Moi Ce Soir?)","Last Train to Clarksville","Layla","Le Freak","Leader of the Pack","Lean On Me","Leaving","Let Me Call You Sweetheart","Let Me Love You","Let it Be","Let it Snow! Let it Snow! Let it Snow!","Let's Dance","Let's Get it On","Let's Groove","Let's Hear it For the Boy","Let's Stay Together","Light My Fire","Lights","Like a Prayer","Like a Rolling Stone","Like a Virgin","Little Darlin'","Little Things Mean a Lot","Live & Let Die","Livin' La Vida Loca","Livin' On a Prayer","Living For the City","Locked Out Of Heaven","Lola","Lonely Boy","Long Cool Woman in a Black Dress","Long Tall Sally","Look Away","Lookin' Out My Back Door","Lose Yourself","Losing My Religion","Louie Louie","Love Child","Love Hangover","Love In This Club","Love Is Blue (L'Amour Est Bleu)","Love Letters in the Sand","Love Me Do","Love Me Tender","Love Shack","Love Theme From 'A Star is Born' (Evergreen)","Love Train","Love Will Keep Us Together","Love is a Many Splendoured Thing","Love to Love You Baby","Love's Theme","Loving You","Low","Macarena","Mack the Knife","Maggie May","Magic","Magic Carpet Ride","Make Love to Me","Make it With You","Makin' Whoopee","Mama Told Me Not to Come","Man in the Mirror","Manana (Is Soon Enough For Me)","Maneater","Maniac","Maybellene","Me & Bobby McGee","Me & Mrs Jones","Memories Are Made of This","Mercy Mercy Me (The Ecology)","Mickey","Midnight Train to Georgia","Minnie the Moocher","Miss You","Miss You Much","Mister Sandman","Mmmbop","Mona Lisa","Monday Monday","Money For Nothing","Mony Mony","Mood Indigo","Moonlight Cocktail","Moonlight Serenade","More Than Words","More Than a Feeling","Morning Train (Nine to Five)","Mr Big Stuff","Mr Brightside","Mr Tambourine Man","Mrs Brown You've Got a Lovely Daughter","Mrs Robinson","Mule Train","Music","My Blue Heaven","My Boyfriend's Back","My Eyes Adored You","My Girl","My Guy","My Heart Will Go On","My Life","My Love","My Man","My Prayer","My Sharona","My Sweet Lord","Na Na Hey Hey (Kiss Him Goodbye)","Nature Boy","Near You","Need You Now","Need You Tonight","Never Gonna Give You Up","Night & Day","Night Fever","Nights in White Satin","No One","No Scrubs","Nobody Does it Better","Nothin' on You","Nothing Compares 2 U","Nothing's Gonna Stop Us Now","Ode To Billie Joe","Oh","Oh Happy Day","Oh My Papa (O Mein Papa)","Ol' Man River","Ole Buttermilk Sky","On Bended Knee","On My Own","On the Atchison","One","One Bad Apple","One More Try","One O'Clock Jump","One Sweet Day","One of These Nights","One of Us","Only The Lonely (Know The Way I Feel)","Only You (And You Alone)","Open Arms","Over There","Over the Rainbow","Paint it Black","Papa Don't Preach","Papa Was a Rolling Stone","Papa's Got a Brand New Bag","Paper Doll","Paper Planes","Paperback Writer","Party Rock Anthem","Peg o' My Heart","Peggy Sue","Pennies From Heaven","Penny Lane","People","People Got to Be Free","Personality","Philadelphia Freedom","Physical","Piano Man","Pick Up the Pieces","Pistol Packin' Mama","Play That Funky Music","Please Mr Postman","Poker Face","Pon De Replay","Pony Time","Pop Muzik","Prisoner of Love","Private Eyes","Promiscuous","Proud Mary","Purple Haze","Purple Rain","Puttin' on the Ritz","Que sera sera (Whatever will be will be)","Queen of Hearts","Rag Doll","Rag Mop","Rags to Riches","Raindrops Keep Falling On My Head","Rapture","Ray of Light","Reach Out (I'll Be There)","Red Red Wine","Rehab","Respect","Return to Sender","Reunited","Revolution","Rhapsody in Blue","Rhinestone Cowboy","Rich Girl","Riders On the Storm","Right Back Where We Started From","Ring My Bell","Ring of Fire","Rock Around the Clock","Rock With You","Rock Your Baby","Rock the Boat","Rock the Casbah","Roll Over Beethoven","Roll With It","Rolling In The Deep","Rosanna","Roses Are Red","Royals","Ruby Tuesday","Rudolph","Rum & Coca-Cola","Runaround Sue","Runaway","Running Scared","Rush Rush","Sailing","Save the Best For Last","Save the Last Dance For Me","Say It Right","Say My Name","Say Say Say","Say You","School's Out","Seasons in the Sun","Secret Love","Sentimental Journey","Sexyback","Sh-Boom (Life Could Be a Dream)","Shadow Dancing","Shake Down","Shake You Down","She Drives Me Crazy","She Loves You","She's a Lady","Shining Star","Shop Around","Shout","Silly Love Songs","Since U Been Gone","Sing","Singing The Blues","Single Ladies (Put A Ring On It)","Sir Duke","Sixteen Tons","Sledgehammer","Sleep Walk","Sleepy Lagoon","Slow Poke","Smells Like Teen Spirit","Smoke Gets in Your Eyes","Smoke On the Water","Smoke! Smoke! Smoke! (That Cigarette)","Smooth","So Much in Love","Soldier Boy","Some Enchanted Evening","Some of These Days","Somebody That I Used to Know","Somebody to Love","Someday","Somethin' Stupid","Something","Soul Man","Spanish Harlem","Spill the Wine","Spinning Wheel","Spirit in the Sky","St George & the Dragonette","St Louis Blues","Stagger Lee","Stairway to Heaven","Stand By Me","Stardust","Stars & Stripes Forever","Stay (I Missed You)","Stayin' Alive","Stop! in the Name of Love","Stormy Weather (Keeps Rainin' All the Time)","Straight Up","Strange Fruit","Stranger On the Shore","Strangers in the Night","Strawberry Fields Forever","Streets of Philadelphia","Stronger","Stuck On You","Sugar Shack","Sugar Sugar","Summer in the City","Summertime Blues","Sunday","Sunshine Superman","Sunshine of Your Love","Superstar","Superstition","Surfin' USA","Suspicious Minds","Swanee","Sweet Caroline (Good Times Never Seemed So Good)","Sweet Child O' Mine","Sweet Dreams (Are Made of This)","Sweet Georgia Brown","Sweet Home Alabama","Sweet Soul Music","Swinging On a Star","T For Texas (Blue Yodel No 1)","TSOP (The Sound of Philadelphia)","Take Me Home","Take My Breath Away","Take On Me","Take The 'A' Train","Take a Bow","Tammy","Tangerine","Tears in Heaven","Tears of a Clown","Temperature","Tennessee Waltz","Tequila","Tha Crossroads","Thank You (Falettinme be Mice Elf Again)","That Lucky Old Sun (Just Rolls Around Heaven All Day)","That Old Black Magic","That'll Be the Day","That's Amore","That's What Friends Are For","That's the Way (I Like It)","That's the Way Love Goes","The Boy is Mine","The Boys of Summer","The Christmas Song (Chestnuts Roasting On An Open Fire)","The End of the World","The First Time Ever I Saw Your Face","The Girl From Ipanema","The Glow-Worm","The Great Pretender","The Gypsy","The Hustle","The Joker","The Last Dance","The Letter","The Loco-Motion","The Long & Winding Road","The Love You Save","The Morning After","The Power of Love","The Prisoner's Song","The Reason","The Rose","The Sign","The Song From Moulin Rouge (Where Is Your Heart)","The Sounds of Silence","The Streak","The Sweet Escape","The Thing","The Tide is High","The Tracks of My Tears","The Twist","The Wanderer","The Way We Were","The Way You Look Tonight","The Way You Move","Theme From 'A Summer Place'","Theme From 'Greatest American Hero' (Believe It Or Not)","Theme From 'Shaft'","There goes my baby","These Boots Are Made For Walking","Third Man Theme","This Diamond Ring","This Guy's in Love With You","This Land is Your Land","This Love","This Ole House","This Used to Be My Playground","Three Coins in the Fountain","Three Times a Lady","Thrift Shop","Thriller","Ticket to Ride","Tie a Yellow Ribbon 'round the Old Oak Tree","Tiger Rag","Tighten Up","Tik-Toc","Till I Waltz Again With You","Till The End of Time","Time After Time","Time of the Season","To Sir","Tom Dooley","Tonight's the Night (Gonna Be Alright)","Too Close","Too Young","Tossing & Turning","Total Eclipse of the Heart","Touch Me","Toxic","Travellin' Band","Travellin' Man","Truly Madly Deeply","Turn! Turn! Turn! (To Everything There is a Season)","Tutti Frutti","Twist & Shout","Two Hearts","U Can't Touch This","U Got it Bad","Umbrella","Un-Break My Heart","Unbelievable","Unchained Melody","Uncle Albert (Admiral Halsey)","Under the Boardwalk","Under the Bridge","Unforgettable","Up Around the Bend","Up Up & Away","Up Where We Belong","Upside Down","Use Somebody","Vaya Con Dios (may God Be With You)","Venus","Vision of Love","Viva La Vida","Vogue","Volare","Wabash Cannonball","Waiting For a Girl Like You","Wake Me Up Before You Go Go","Wake Up Little Susie","Walk Don't Run","Walk Like a Man","Walk Like an Egyptian","Walk On By","Walk On the Wild Side","Walk This Way","Wannabe","Want Ads","Wanted","War","Waterfalls","Wayward Wind","We Are Family","We Are Young","We Are the Champions","We Are the World","We Belong Together","We Built This City","We Can Work it Out","We Didn't Start the Fire","We Found Love","We Got The Beat","We Will Rock You","We've Only Just Begun","Weak","Wedding Bell Blues","West End Blues","West End Girls","What Goes Around Comes Around","What a Fool Believes","What'd I Say","What's Going On?","What's Love Got to Do With It?","Whatcha Say","Wheel of Fortune","When Doves Cry","When You Wish Upon a Star","When a Man Loves a Woman","Where Did Our Love Go","Where is the Love?","Whip It","Whispering","White Christmas","White Rabbit","Whole Lotta Love","Whole Lotta Shakin' Goin' On","Whoomp! (There it Is)","Why Do Fools Fall in Love?","Why Don't You Believe Me?","Wichita Lineman","Wicked Game","Wild Thing","Wild Wild West","Will It Go Round In Circles","Will You Love Me Tomorrow","Winchester Cathedral","Wind Beneath My Wings","Wipe Out","Wishing Well","With Or Without You","Without Me","Without You","Woman","Won't Get Fooled Again","Wooly Bully","Working My Way Back to You","YMCA","Yakety Yak","Yeah!","Yellow Rose of Texas","Yesterday","You Ain't Seen Nothin' Yet","You Always Hurt the One You Love","You Are the Sunshine of My Life","You Belong With Me","You Belong to Me","You Can't Hurry Love","You Don't Bring Me Flowers","You Don't Have to Be a Star (To Be in My Show)","You Light Up My Life","You Make Me Feel Brand New","You Make Me Feel Like Dancing","You Really Got Me","You Send Me","You Sexy Thing","You Were Meant for Me","You make Me Wanna","You'll Never Know","You're Beautiful","You're So Vain","You're Still the One","You're the One That I Want","You've Got a Friend","You've Lost That Lovin' Feelin'","Your Cheatin' Heart","Your Song"]},person:{bio_part:["activist","artist","author","blogger","business owner","coach","creator","designer","developer","dreamer","educator","engineer","entrepreneur","environmentalist","film lover","filmmaker","foodie","founder","friend","gamer","geek","grad","inventor","leader","model","musician","nerd","parent","patriot","person","philosopher","photographer","public speaker","scientist","singer","streamer","student","teacher","traveler","veteran","writer"],bio_pattern:["{{person.bio_part}}","{{person.bio_part}}, {{person.bio_part}}","{{person.bio_part}}, {{person.bio_part}}, {{person.bio_part}}","{{person.bio_part}}, {{person.bio_part}}, {{person.bio_part}} {{internet.emoji}}","{{word.noun}} {{person.bio_supporter}}","{{word.noun}} {{person.bio_supporter}} {{internet.emoji}}","{{word.noun}} {{person.bio_supporter}}, {{person.bio_part}}","{{word.noun}} {{person.bio_supporter}}, {{person.bio_part}} {{internet.emoji}}"],bio_supporter:["advocate","devotee","enthusiast","fan","junkie","lover","supporter"],first_name:{generic:["Aaliyah","Aaron","Abagail","Abbey","Abbie","Abbigail","Abby","Abdiel","Abdul","Abdullah","Abe","Abel","Abelardo","Abigail","Abigale","Abigayle","Abner","Abraham","Ada","Adah","Adalberto","Adaline","Adam","Adan","Addie","Addison","Adela","Adelbert","Adele","Adelia","Adeline","Adell","Adella","Adelle","Aditya","Adolf","Adolfo","Adolph","Adolphus","Adonis","Adrain","Adrian","Adriana","Adrianna","Adriel","Adrien","Adrienne","Afton","Aglae","Agnes","Agustin","Agustina","Ahmad","Ahmed","Aida","Aidan","Aiden","Aileen","Aimee","Aisha","Aiyana","Akeem","Al","Alaina","Alan","Alana","Alanis","Alanna","Alayna","Alba","Albert","Alberta","Albertha","Alberto","Albin","Albina","Alda","Alden","Alec","Aleen","Alejandra","Alejandrin","Alek","Alena","Alene","Alessandra","Alessandro","Alessia","Aletha","Alex","Alexa","Alexander","Alexandra","Alexandre","Alexandrea","Alexandria","Alexandrine","Alexandro","Alexane","Alexanne","Alexie","Alexis","Alexys","Alexzander","Alf","Alfonso","Alfonzo","Alford","Alfred","Alfreda","Alfredo","Ali","Alia","Alice","Alicia","Alisa","Alisha","Alison","Alivia","Aliya","Aliyah","Aliza","Alize","Allan","Allen","Allene","Allie","Allison","Ally","Alphonso","Alta","Althea","Alva","Alvah","Alvena","Alvera","Alverta","Alvina","Alvis","Alyce","Alycia","Alysa","Alysha","Alyson","Alysson","Amalia","Amanda","Amani","Amara","Amari","Amaya","Amber","Ambrose","Amelia","Amelie","Amely","America","Americo","Amie","Amina","Amir","Amira","Amiya","Amos","Amparo","Amy","Amya","Ana","Anabel","Anabelle","Anahi","Anais","Anastacio","Anastasia","Anderson","Andre","Andreane","Andreanne","Andres","Andrew","Andy","Angel","Angela","Angelica","Angelina","Angeline","Angelita","Angelo","Angie","Angus","Anibal","Anika","Anissa","Anita","Aniya","Aniyah","Anjali","Anna","Annabel","Annabell","Annabelle","Annalise","Annamae","Annamarie","Anne","Annetta","Annette","Annie","Ansel","Ansley","Anthony","Antoinette","Antone","Antonetta","Antonette","Antonia","Antonietta","Antonina","Antonio","Antwan","Antwon","Anya","April","Ara","Araceli","Aracely","Arch","Archibald","Ardella","Arden","Ardith","Arely","Ari","Ariane","Arianna","Aric","Ariel","Arielle","Arjun","Arlene","Arlie","Arlo","Armand","Armando","Armani","Arnaldo","Arne","Arno","Arnold","Arnoldo","Arnulfo","Aron","Art","Arthur","Arturo","Arvel","Arvid","Arvilla","Aryanna","Asa","Asha","Ashlee","Ashleigh","Ashley","Ashly","Ashlynn","Ashton","Ashtyn","Asia","Assunta","Astrid","Athena","Aubree","Aubrey","Audie","Audra","Audreanne","Audrey","August","Augusta","Augustine","Augustus","Aurelia","Aurelie","Aurelio","Aurore","Austen","Austin","Austyn","Autumn","Ava","Avery","Avis","Axel","Ayana","Ayden","Ayla","Aylin","Baby","Bailee","Bailey","Barbara","Barney","Baron","Barrett","Barry","Bart","Bartholome","Barton","Baylee","Beatrice","Beau","Beaulah","Bell","Bella","Belle","Ben","Benedict","Benjamin","Bennett","Bennie","Benny","Benton","Berenice","Bernadette","Bernadine","Bernard","Bernardo","Berneice","Bernhard","Bernice","Bernie","Berniece","Bernita","Berry","Bert","Berta","Bertha","Bertram","Bertrand","Beryl","Bessie","Beth","Bethany","Bethel","Betsy","Bette","Bettie","Betty","Bettye","Beulah","Beverly","Bianka","Bill","Billie","Billy","Birdie","Blair","Blaise","Blake","Blanca","Blanche","Blaze","Bo","Bobbie","Bobby","Bonita","Bonnie","Boris","Boyd","Brad","Braden","Bradford","Bradley","Bradly","Brady","Braeden","Brain","Brandi","Brando","Brandon","Brandt","Brandy","Brandyn","Brannon","Branson","Brant","Braulio","Braxton","Brayan","Breana","Breanna","Breanne","Brenda","Brendan","Brenden","Brendon","Brenna","Brennan","Brennon","Brent","Bret","Brett","Bria","Brian","Briana","Brianne","Brice","Bridget","Bridgette","Bridie","Brielle","Brigitte","Brionna","Brisa","Britney","Brittany","Brock","Broderick","Brody","Brook","Brooke","Brooklyn","Brooks","Brown","Bruce","Bryana","Bryce","Brycen","Bryon","Buck","Bud","Buddy","Buford","Bulah","Burdette","Burley","Burnice","Buster","Cade","Caden","Caesar","Caitlyn","Cale","Caleb","Caleigh","Cali","Calista","Callie","Camden","Cameron","Camila","Camilla","Camille","Camren","Camron","Camryn","Camylle","Candace","Candelario","Candice","Candida","Candido","Cara","Carey","Carissa","Carlee","Carleton","Carley","Carli","Carlie","Carlo","Carlos","Carlotta","Carmel","Carmela","Carmella","Carmelo","Carmen","Carmine","Carol","Carolanne","Carole","Carolina","Caroline","Carolyn","Carolyne","Carrie","Carroll","Carson","Carter","Cary","Casandra","Casey","Casimer","Casimir","Casper","Cassandra","Cassandre","Cassidy","Cassie","Catalina","Caterina","Catharine","Catherine","Cathrine","Cathryn","Cathy","Cayla","Ceasar","Cecelia","Cecil","Cecile","Cecilia","Cedrick","Celestine","Celestino","Celia","Celine","Cesar","Chad","Chadd","Chadrick","Chaim","Chance","Chandler","Chanel","Chanelle","Charity","Charlene","Charles","Charley","Charlie","Charlotte","Chase","Chasity","Chauncey","Chaya","Chaz","Chelsea","Chelsey","Chelsie","Chesley","Chester","Chet","Cheyanne","Cheyenne","Chloe","Chris","Christ","Christa","Christelle","Christian","Christiana","Christina","Christine","Christop","Christophe","Christopher","Christy","Chyna","Ciara","Cicero","Cielo","Cierra","Cindy","Citlalli","Clair","Claire","Clara","Clarabelle","Clare","Clarissa","Clark","Claud","Claude","Claudia","Claudie","Claudine","Clay","Clemens","Clement","Clementina","Clementine","Clemmie","Cleo","Cleora","Cleta","Cletus","Cleve","Cleveland","Clifford","Clifton","Clint","Clinton","Clotilde","Clovis","Cloyd","Clyde","Coby","Cody","Colby","Cole","Coleman","Colin","Colleen","Collin","Colt","Colten","Colton","Columbus","Concepcion","Conner","Connie","Connor","Conor","Conrad","Constance","Constantin","Consuelo","Cooper","Cora","Coralie","Corbin","Cordelia","Cordell","Cordia","Cordie","Corene","Corine","Cornelius","Cornell","Corrine","Cortez","Cortney","Cory","Coty","Courtney","Coy","Craig","Crawford","Creola","Cristal","Cristian","Cristina","Cristobal","Cristopher","Cruz","Crystal","Crystel","Cullen","Curt","Curtis","Cydney","Cynthia","Cyril","Cyrus","Dagmar","Dahlia","Daija","Daisha","Daisy","Dakota","Dale","Dallas","Dallin","Dalton","Damaris","Dameon","Damian","Damien","Damion","Damon","Dan","Dana","Dandre","Dane","D'angelo","Dangelo","Danial","Daniela","Daniella","Danielle","Danika","Dannie","Danny","Dante","Danyka","Daphne","Daphnee","Daphney","Darby","Daren","Darian","Dariana","Darien","Dario","Darion","Darius","Darlene","Daron","Darrel","Darrell","Darren","Darrick","Darrin","Darrion","Darron","Darryl","Darwin","Daryl","Dashawn","Dasia","Dave","David","Davin","Davion","Davon","Davonte","Dawn","Dawson","Dax","Dayana","Dayna","Dayne","Dayton","Dean","Deangelo","Deanna","Deborah","Declan","Dedric","Dedrick","Dee","Deion","Deja","Dejah","Dejon","Dejuan","Delaney","Delbert","Delfina","Delia","Delilah","Dell","Della","Delmer","Delores","Delpha","Delphia","Delphine","Delta","Demarco","Demarcus","Demario","Demetris","Demetrius","Demond","Dena","Denis","Dennis","Deon","Deondre","Deontae","Deonte","Dereck","Derek","Derick","Deron","Derrick","Deshaun","Deshawn","Desiree","Desmond","Dessie","Destany","Destin","Destinee","Destiney","Destini","Destiny","Devan","Devante","Deven","Devin","Devon","Devonte","Devyn","Dewayne","Dewitt","Dexter","Diamond","Diana","Dianna","Diego","Dillan","Dillon","Dimitri","Dina","Dino","Dion","Dixie","Dock","Dolly","Dolores","Domenic","Domenica","Domenick","Domenico","Domingo","Dominic","Dominique","Don","Donald","Donato","Donavon","Donna","Donnell","Donnie","Donny","Dora","Dorcas","Dorian","Doris","Dorothea","Dorothy","Dorris","Dortha","Dorthy","Doug","Douglas","Dovie","Doyle","Drake","Drew","Duane","Dudley","Dulce","Duncan","Durward","Dustin","Dusty","Dwight","Dylan","Earl","Earlene","Earline","Earnest","Earnestine","Easter","Easton","Ebba","Ebony","Ed","Eda","Edd","Eddie","Eden","Edgar","Edgardo","Edison","Edmond","Edmund","Edna","Eduardo","Edward","Edwardo","Edwin","Edwina","Edyth","Edythe","Effie","Efrain","Efren","Eileen","Einar","Eino","Eladio","Elaina","Elbert","Elda","Eldon","Eldora","Eldred","Eldridge","Eleanora","Eleanore","Eleazar","Electa","Elena","Elenor","Elenora","Eleonore","Elfrieda","Eli","Elian","Eliane","Elias","Eliezer","Elijah","Elinor","Elinore","Elisa","Elisabeth","Elise","Eliseo","Elisha","Elissa","Eliza","Elizabeth","Ella","Ellen","Ellie","Elliot","Elliott","Ellis","Ellsworth","Elmer","Elmira","Elmo","Elmore","Elna","Elnora","Elody","Eloisa","Eloise","Elouise","Eloy","Elroy","Elsa","Else","Elsie","Elta","Elton","Elva","Elvera","Elvie","Elvis","Elwin","Elwyn","Elyse","Elyssa","Elza","Emanuel","Emelia","Emelie","Emely","Emerald","Emerson","Emery","Emie","Emil","Emile","Emilia","Emiliano","Emilie","Emilio","Emily","Emma","Emmalee","Emmanuel","Emmanuelle","Emmet","Emmett","Emmie","Emmitt","Emmy","Emory","Ena","Enid","Enoch","Enola","Enos","Enrico","Enrique","Ephraim","Era","Eriberto","Eric","Erica","Erich","Erick","Ericka","Erik","Erika","Erin","Erling","Erna","Ernest","Ernestina","Ernestine","Ernesto","Ernie","Ervin","Erwin","Eryn","Esmeralda","Esperanza","Esta","Esteban","Estefania","Estel","Estell","Estella","Estelle","Estevan","Esther","Estrella","Etha","Ethan","Ethel","Ethelyn","Ethyl","Ettie","Eudora","Eugene","Eugenia","Eula","Eulah","Eulalia","Euna","Eunice","Eusebio","Eva","Evalyn","Evan","Evangeline","Evans","Eve","Eveline","Evelyn","Everardo","Everett","Everette","Evert","Evie","Ewald","Ewell","Ezekiel","Ezequiel","Ezra","Fabian","Fabiola","Fae","Fannie","Fanny","Fatima","Faustino","Fausto","Favian","Fay","Faye","Federico","Felicia","Felicita","Felicity","Felipa","Felipe","Felix","Felton","Fermin","Fern","Fernando","Ferne","Fidel","Filiberto","Filomena","Finn","Fiona","Flavie","Flavio","Fleta","Fletcher","Flo","Florence","Florencio","Florian","Florida","Florine","Flossie","Floy","Floyd","Ford","Forest","Forrest","Foster","Frances","Francesca","Francesco","Francis","Francisca","Francisco","Franco","Frank","Frankie","Franz","Fred","Freda","Freddie","Freddy","Frederic","Frederick","Frederik","Frederique","Fredrick","Fredy","Freeda","Freeman","Freida","Frida","Frieda","Friedrich","Fritz","Furman","Gabe","Gabriel","Gabriella","Gabrielle","Gaetano","Gage","Gail","Gardner","Garett","Garfield","Garland","Garnet","Garnett","Garret","Garrett","Garrick","Garrison","Garry","Garth","Gaston","Gavin","Gayle","Gene","General","Genesis","Genevieve","Gennaro","Genoveva","Geo","Geoffrey","George","Georgette","Georgiana","Georgianna","Geovanni","Geovanny","Geovany","Gerald","Geraldine","Gerard","Gerardo","Gerda","Gerhard","Germaine","German","Gerry","Gerson","Gertrude","Gia","Gianni","Gideon","Gilbert","Gilberto","Gilda","Giles","Gillian","Gina","Gino","Giovani","Giovanna","Giovanni","Giovanny","Gisselle","Giuseppe","Gladyce","Gladys","Glen","Glenda","Glenna","Glennie","Gloria","Godfrey","Golda","Golden","Gonzalo","Gordon","Grace","Gracie","Graciela","Grady","Graham","Grant","Granville","Grayce","Grayson","Green","Greg","Gregg","Gregoria","Gregorio","Gregory","Greta","Gretchen","Greyson","Griffin","Grover","Guadalupe","Gudrun","Guido","Guillermo","Guiseppe","Gunnar","Gunner","Gus","Gussie","Gust","Gustave","Guy","Gwen","Gwendolyn","Hadley","Hailee","Hailey","Hailie","Hal","Haleigh","Haley","Halie","Halle","Hallie","Hank","Hanna","Hannah","Hans","Hardy","Harley","Harmon","Harmony","Harold","Harrison","Harry","Harvey","Haskell","Hassan","Hassie","Hattie","Haven","Hayden","Haylee","Hayley","Haylie","Hazel","Hazle","Heath","Heather","Heaven","Heber","Hector","Heidi","Helen","Helena","Helene","Helga","Hellen","Helmer","Heloise","Henderson","Henri","Henriette","Henry","Herbert","Herman","Hermann","Hermina","Herminia","Herminio","Hershel","Herta","Hertha","Hester","Hettie","Hilario","Hilbert","Hilda","Hildegard","Hillard","Hillary","Hilma","Hilton","Hipolito","Hiram","Hobart","Holden","Hollie","Hollis","Holly","Hope","Horace","Horacio","Hortense","Hosea","Houston","Howard","Howell","Hoyt","Hubert","Hudson","Hugh","Hulda","Humberto","Hunter","Hyman","Ian","Ibrahim","Icie","Ida","Idell","Idella","Ignacio","Ignatius","Ike","Ila","Ilene","Iliana","Ima","Imani","Imelda","Immanuel","Imogene","Ines","Irma","Irving","Irwin","Isaac","Isabel","Isabell","Isabella","Isabelle","Isac","Isadore","Isai","Isaiah","Isaias","Isidro","Ismael","Isobel","Isom","Israel","Issac","Itzel","Iva","Ivah","Ivory","Ivy","Izabella","Izaiah","Jabari","Jace","Jacey","Jacinthe","Jacinto","Jack","Jackeline","Jackie","Jacklyn","Jackson","Jacky","Jaclyn","Jacquelyn","Jacques","Jacynthe","Jada","Jade","Jaden","Jadon","Jadyn","Jaeden","Jaida","Jaiden","Jailyn","Jaime","Jairo","Jakayla","Jake","Jakob","Jaleel","Jalen","Jalon","Jalyn","Jamaal","Jamal","Jamar","Jamarcus","Jamel","Jameson","Jamey","Jamie","Jamil","Jamir","Jamison","Jammie","Jan","Jana","Janae","Jane","Janelle","Janessa","Janet","Janice","Janick","Janie","Janis","Janiya","Jannie","Jany","Jaquan","Jaquelin","Jaqueline","Jared","Jaren","Jarod","Jaron","Jarred","Jarrell","Jarret","Jarrett","Jarrod","Jarvis","Jasen","Jasmin","Jason","Jasper","Jaunita","Javier","Javon","Javonte","Jay","Jayce","Jaycee","Jayda","Jayde","Jayden","Jaydon","Jaylan","Jaylen","Jaylin","Jaylon","Jayme","Jayne","Jayson","Jazlyn","Jazmin","Jazmyn","Jazmyne","Jean","Jeanette","Jeanie","Jeanne","Jed","Jedediah","Jedidiah","Jeff","Jefferey","Jeffery","Jeffrey","Jeffry","Jena","Jenifer","Jennie","Jennifer","Jennings","Jennyfer","Jensen","Jerad","Jerald","Jeramie","Jeramy","Jerel","Jeremie","Jeremy","Jermain","Jermaine","Jermey","Jerod","Jerome","Jeromy","Jerrell","Jerrod","Jerrold","Jerry","Jess","Jesse","Jessica","Jessie","Jessika","Jessy","Jessyca","Jesus","Jett","Jettie","Jevon","Jewel","Jewell","Jillian","Jimmie","Jimmy","Jo","Joan","Joana","Joanie","Joanne","Joannie","Joanny","Joany","Joaquin","Jocelyn","Jodie","Jody","Joe","Joel","Joelle","Joesph","Joey","Johan","Johann","Johanna","Johathan","John","Johnathan","Johnathon","Johnnie","Johnny","Johnpaul","Johnson","Jolie","Jon","Jonas","Jonatan","Jonathan","Jonathon","Jordan","Jordane","Jordi","Jordon","Jordy","Jordyn","Jorge","Jose","Josefa","Josefina","Joseph","Josephine","Josh","Joshua","Joshuah","Josiah","Josiane","Josianne","Josie","Josue","Jovan","Jovani","Jovanny","Jovany","Joy","Joyce","Juana","Juanita","Judah","Judd","Jude","Judge","Judson","Judy","Jules","Julia","Julian","Juliana","Julianne","Julie","Julien","Juliet","Julio","Julius","June","Junior","Junius","Justen","Justice","Justina","Justine","Juston","Justus","Justyn","Juvenal","Juwan","Kacey","Kaci","Kacie","Kade","Kaden","Kadin","Kaela","Kaelyn","Kaia","Kailee","Kailey","Kailyn","Kaitlin","Kaitlyn","Kale","Kaleb","Kaleigh","Kaley","Kali","Kallie","Kameron","Kamille","Kamren","Kamron","Kamryn","Kane","Kara","Kareem","Karelle","Karen","Kari","Kariane","Karianne","Karina","Karine","Karl","Karlee","Karley","Karli","Karlie","Karolann","Karson","Kasandra","Kasey","Kassandra","Katarina","Katelin","Katelyn","Katelynn","Katharina","Katherine","Katheryn","Kathleen","Kathlyn","Kathryn","Kathryne","Katlyn","Katlynn","Katrina","Katrine","Kattie","Kavon","Kay","Kaya","Kaycee","Kayden","Kayla","Kaylah","Kaylee","Kayleigh","Kayley","Kayli","Kaylie","Kaylin","Keagan","Keanu","Keara","Keaton","Keegan","Keeley","Keely","Keenan","Keira","Keith","Kellen","Kelley","Kelli","Kellie","Kelly","Kelsi","Kelsie","Kelton","Kelvin","Ken","Kendall","Kendra","Kendrick","Kenna","Kennedi","Kennedy","Kenneth","Kennith","Kenny","Kenton","Kenya","Kenyatta","Kenyon","Keon","Keshaun","Keshawn","Keven","Kevin","Kevon","Keyon","Keyshawn","Khalid","Khalil","Kian","Kiana","Kianna","Kiara","Kiarra","Kiel","Kiera","Kieran","Kiley","Kim","Kimberly","King","Kip","Kira","Kirk","Kirsten","Kirstin","Kitty","Kobe","Koby","Kody","Kolby","Kole","Korbin","Korey","Kory","Kraig","Kris","Krista","Kristian","Kristin","Kristina","Kristofer","Kristoffer","Kristopher","Kristy","Krystal","Krystel","Krystina","Kurt","Kurtis","Kyla","Kyle","Kylee","Kyleigh","Kyler","Kylie","Kyra","Lacey","Lacy","Ladarius","Lafayette","Laila","Laisha","Lamar","Lambert","Lamont","Lance","Landen","Lane","Laney","Larissa","Laron","Larry","Larue","Laura","Laurel","Lauren","Laurence","Lauretta","Lauriane","Laurianne","Laurie","Laurine","Laury","Lauryn","Lavada","Lavern","Laverna","Laverne","Lavina","Lavinia","Lavon","Lavonne","Lawrence","Lawson","Layla","Layne","Lazaro","Lea","Leann","Leanna","Leanne","Leatha","Leda","Lee","Leif","Leila","Leilani","Lela","Lelah","Leland","Lelia","Lempi","Lemuel","Lenna","Lennie","Lenny","Lenora","Lenore","Leo","Leola","Leon","Leonard","Leonardo","Leone","Leonel","Leonie","Leonor","Leonora","Leopold","Leopoldo","Leora","Lera","Lesley","Leslie","Lesly","Lessie","Lester","Leta","Letha","Letitia","Levi","Lew","Lewis","Lexi","Lexie","Lexus","Lia","Liam","Liana","Libbie","Libby","Lila","Lilian","Liliana","Liliane","Lilla","Lillian","Lilliana","Lillie","Lilly","Lily","Lilyan","Lina","Lincoln","Linda","Lindsay","Lindsey","Linnea","Linnie","Linwood","Lionel","Lisa","Lisandro","Lisette","Litzy","Liza","Lizeth","Lizzie","Llewellyn","Lloyd","Logan","Lois","Lola","Lolita","Loma","Lon","London","Lonie","Lonnie","Lonny","Lonzo","Lora","Loraine","Loren","Lorena","Lorenz","Lorenza","Lorenzo","Lori","Lorine","Lorna","Lottie","Lou","Louie","Louisa","Lourdes","Louvenia","Lowell","Loy","Loyal","Loyce","Lucas","Luciano","Lucie","Lucienne","Lucile","Lucinda","Lucio","Lucious","Lucius","Lucy","Ludie","Ludwig","Lue","Luella","Luigi","Luis","Luisa","Lukas","Lula","Lulu","Luna","Lupe","Lura","Lurline","Luther","Luz","Lyda","Lydia","Lyla","Lynn","Lyric","Lysanne","Mabel","Mabelle","Mable","Mac","Macey","Maci","Macie","Mack","Mackenzie","Macy","Madaline","Madalyn","Maddison","Madeline","Madelyn","Madelynn","Madge","Madie","Madilyn","Madisen","Madison","Madisyn","Madonna","Madyson","Mae","Maegan","Maeve","Mafalda","Magali","Magdalen","Magdalena","Maggie","Magnolia","Magnus","Maia","Maida","Maiya","Major","Makayla","Makenna","Makenzie","Malachi","Malcolm","Malika","Malinda","Mallie","Mallory","Malvina","Mandy","Manley","Manuel","Manuela","Mara","Marc","Marcel","Marcelina","Marcelino","Marcella","Marcelle","Marcellus","Marcelo","Marcia","Marco","Marcos","Marcus","Margaret","Margarete","Margarett","Margaretta","Margarette","Margarita","Marge","Margie","Margot","Margret","Marguerite","Maria","Mariah","Mariam","Marian","Mariana","Mariane","Marianna","Marianne","Mariano","Maribel","Marie","Mariela","Marielle","Marietta","Marilie","Marilou","Marilyne","Marina","Mario","Marion","Marisa","Marisol","Maritza","Marjolaine","Marjorie","Marjory","Mark","Markus","Marlee","Marlen","Marlene","Marley","Marlin","Marlon","Marques","Marquis","Marquise","Marshall","Marta","Martin","Martina","Martine","Marty","Marvin","Mary","Maryam","Maryjane","Maryse","Mason","Mateo","Mathew","Mathias","Mathilde","Matilda","Matilde","Matt","Matteo","Mattie","Maud","Maude","Maudie","Maureen","Maurice","Mauricio","Maurine","Maverick","Mavis","Max","Maxie","Maxime","Maximilian","Maximillia","Maximillian","Maximo","Maximus","Maxine","Maxwell","May","Maya","Maybell","Maybelle","Maye","Maymie","Maynard","Mayra","Mazie","Mckayla","Mckenna","Mckenzie","Meagan","Meaghan","Meda","Megane","Meggie","Meghan","Mekhi","Melany","Melba","Melisa","Melissa","Mellie","Melody","Melvin","Melvina","Melyna","Melyssa","Mercedes","Meredith","Merl","Merle","Merlin","Merritt","Mertie","Mervin","Meta","Mia","Micaela","Micah","Michael","Michaela","Michale","Micheal","Michel","Michele","Michelle","Miguel","Mikayla","Mike","Mikel","Milan","Miles","Milford","Miller","Millie","Milo","Milton","Mina","Minerva","Minnie","Miracle","Mireille","Mireya","Misael","Missouri","Misty","Mitchel","Mitchell","Mittie","Modesta","Modesto","Mohamed","Mohammad","Mohammed","Moises","Mollie","Molly","Mona","Monica","Monique","Monroe","Monserrat","Monserrate","Montana","Monte","Monty","Morgan","Moriah","Morris","Mortimer","Morton","Mose","Moses","Moshe","Mossie","Mozell","Mozelle","Muhammad","Muriel","Murl","Murphy","Murray","Mustafa","Mya","Myah","Mylene","Myles","Myra","Myriam","Myrl","Myrna","Myron","Myrtice","Myrtie","Myrtis","Myrtle","Nadia","Nakia","Name","Nannie","Naomi","Naomie","Napoleon","Narciso","Nash","Nasir","Nat","Natalia","Natalie","Natasha","Nathan","Nathanael","Nathanial","Nathaniel","Nathen","Nayeli","Neal","Ned","Nedra","Neha","Neil","Nelda","Nella","Nelle","Nellie","Nels","Nelson","Neoma","Nestor","Nettie","Neva","Newell","Newton","Nia","Nicholas","Nicholaus","Nichole","Nick","Nicklaus","Nickolas","Nico","Nicola","Nicolas","Nicole","Nicolette","Nigel","Nikita","Nikki","Nikko","Niko","Nikolas","Nils","Nina","Noah","Noble","Noe","Noel","Noelia","Noemi","Noemie","Noemy","Nola","Nolan","Nona","Nora","Norbert","Norberto","Norene","Norma","Norris","Norval","Norwood","Nova","Novella","Nya","Nyah","Nyasia","Obie","Oceane","Ocie","Octavia","Oda","Odell","Odessa","Odie","Ofelia","Okey","Ola","Olaf","Ole","Olen","Oleta","Olga","Olin","Oliver","Ollie","Oma","Omari","Omer","Ona","Onie","Opal","Ophelia","Ora","Oral","Oran","Oren","Orie","Orin","Orion","Orland","Orlando","Orlo","Orpha","Orrin","Orval","Orville","Osbaldo","Osborne","Oscar","Osvaldo","Oswald","Oswaldo","Otha","Otho","Otilia","Otis","Ottilie","Ottis","Otto","Ova","Owen","Ozella","Pablo","Paige","Palma","Pamela","Pansy","Paolo","Paris","Parker","Pascale","Pasquale","Pat","Patience","Patricia","Patrick","Patsy","Pattie","Paul","Paula","Pauline","Paxton","Payton","Pearl","Pearlie","Pearline","Pedro","Peggie","Penelope","Percival","Percy","Perry","Pete","Peter","Petra","Peyton","Philip","Phoebe","Phyllis","Pierce","Pierre","Pietro","Pink","Pinkie","Piper","Polly","Porter","Precious","Presley","Preston","Price","Prince","Princess","Priscilla","Providenci","Prudence","Queen","Queenie","Quentin","Quincy","Quinn","Quinten","Quinton","Rachael","Rachel","Rachelle","Rae","Raegan","Rafael","Rafaela","Raheem","Rahsaan","Rahul","Raina","Raleigh","Ralph","Ramiro","Ramon","Ramona","Randal","Randall","Randi","Randy","Ransom","Raoul","Raphael","Raphaelle","Raquel","Rashad","Rashawn","Rasheed","Raul","Raven","Ray","Raymond","Raymundo","Reagan","Reanna","Reba","Rebeca","Rebecca","Rebeka","Rebekah","Reece","Reed","Reese","Regan","Reggie","Reginald","Reid","Reilly","Reina","Reinhold","Remington","Rene","Renee","Ressie","Reta","Retha","Retta","Reuben","Reva","Rex","Rey","Reyes","Reymundo","Reyna","Reynold","Rhea","Rhett","Rhianna","Rhiannon","Rhoda","Ricardo","Richard","Richie","Richmond","Rick","Rickey","Rickie","Ricky","Rico","Rigoberto","Riley","Rita","River","Robb","Robbie","Robert","Roberta","Roberto","Robin","Robyn","Rocio","Rocky","Rod","Roderick","Rodger","Rodolfo","Rodrick","Rodrigo","Roel","Rogelio","Roger","Rogers","Rolando","Rollin","Roma","Romaine","Roman","Ron","Ronaldo","Ronny","Roosevelt","Rory","Rosa","Rosalee","Rosalia","Rosalind","Rosalinda","Rosalyn","Rosamond","Rosanna","Rosario","Roscoe","Rose","Rosella","Roselyn","Rosemarie","Rosemary","Rosendo","Rosetta","Rosie","Rosina","Roslyn","Ross","Rossie","Rowan","Rowena","Rowland","Roxane","Roxanne","Roy","Royal","Royce","Rozella","Ruben","Rubie","Ruby","Rubye","Rudolph","Rudy","Rupert","Russ","Russel","Russell","Rusty","Ruth","Ruthe","Ruthie","Ryan","Ryann","Ryder","Rylan","Rylee","Ryleigh","Ryley","Sabina","Sabrina","Sabryna","Sadie","Sadye","Sage","Saige","Sallie","Sally","Salma","Salvador","Salvatore","Sam","Samanta","Samantha","Samara","Samir","Sammie","Sammy","Samson","Sandra","Sandrine","Sandy","Sanford","Santa","Santiago","Santina","Santino","Santos","Sarah","Sarai","Sarina","Sasha","Saul","Savanah","Savanna","Savannah","Savion","Scarlett","Schuyler","Scot","Scottie","Scotty","Seamus","Sean","Sebastian","Sedrick","Selena","Selina","Selmer","Serena","Serenity","Seth","Shad","Shaina","Shakira","Shana","Shane","Shanel","Shanelle","Shania","Shanie","Shaniya","Shanna","Shannon","Shanny","Shanon","Shany","Sharon","Shaun","Shawn","Shawna","Shaylee","Shayna","Shayne","Shea","Sheila","Sheldon","Shemar","Sheridan","Sherman","Sherwood","Shirley","Shyann","Shyanne","Sibyl","Sid","Sidney","Sienna","Sierra","Sigmund","Sigrid","Sigurd","Silas","Sim","Simeon","Simone","Sincere","Sister","Skye","Skyla","Skylar","Sofia","Soledad","Solon","Sonia","Sonny","Sonya","Sophia","Sophie","Spencer","Stacey","Stacy","Stan","Stanford","Stanley","Stanton","Stefan","Stefanie","Stella","Stephan","Stephania","Stephanie","Stephany","Stephen","Stephon","Sterling","Steve","Stevie","Stewart","Stone","Stuart","Summer","Sunny","Susan","Susana","Susanna","Susie","Suzanne","Sven","Syble","Sydnee","Sydney","Sydni","Sydnie","Sylvan","Sylvester","Sylvia","Tabitha","Tad","Talia","Talon","Tamara","Tamia","Tania","Tanner","Tanya","Tara","Taryn","Tate","Tatum","Tatyana","Taurean","Tavares","Taya","Taylor","Teagan","Ted","Telly","Terence","Teresa","Terrance","Terrell","Terrence","Terrill","Terry","Tess","Tessie","Tevin","Thad","Thaddeus","Thalia","Thea","Thelma","Theo","Theodora","Theodore","Theresa","Therese","Theresia","Theron","Thomas","Thora","Thurman","Tia","Tiana","Tianna","Tiara","Tierra","Tiffany","Tillman","Timmothy","Timmy","Timothy","Tina","Tito","Titus","Tobin","Toby","Tod","Tom","Tomas","Tomasa","Tommie","Toney","Toni","Tony","Torey","Torrance","Torrey","Toy","Trace","Tracey","Tracy","Travis","Travon","Tre","Tremaine","Tremayne","Trent","Trenton","Tressa","Tressie","Treva","Trever","Trevion","Trevor","Trey","Trinity","Trisha","Tristian","Tristin","Triston","Troy","Trudie","Trycia","Trystan","Turner","Twila","Tyler","Tyra","Tyree","Tyreek","Tyrel","Tyrell","Tyrese","Tyrique","Tyshawn","Tyson","Ubaldo","Ulices","Ulises","Una","Unique","Urban","Uriah","Uriel","Ursula","Vada","Valentin","Valentina","Valentine","Valerie","Vallie","Van","Vance","Vanessa","Vaughn","Veda","Velda","Vella","Velma","Velva","Vena","Verda","Verdie","Vergie","Verla","Verlie","Vern","Verna","Verner","Vernice","Vernie","Vernon","Verona","Veronica","Vesta","Vicenta","Vicente","Vickie","Vicky","Victor","Victoria","Vida","Vidal","Vilma","Vince","Vincent","Vincenza","Vincenzo","Vinnie","Viola","Violet","Violette","Virgie","Virgil","Virginia","Virginie","Vita","Vito","Viva","Vivian","Viviane","Vivianne","Vivien","Vivienne","Vladimir","Wade","Waino","Waldo","Walker","Wallace","Walter","Walton","Wanda","Ward","Warren","Watson","Wava","Waylon","Wayne","Webster","Weldon","Wellington","Wendell","Wendy","Werner","Westley","Weston","Whitney","Wilber","Wilbert","Wilburn","Wiley","Wilford","Wilfred","Wilfredo","Wilfrid","Wilhelm","Wilhelmine","Will","Willa","Willard","William","Willie","Willis","Willow","Willy","Wilma","Wilmer","Wilson","Wilton","Winfield","Winifred","Winnifred","Winona","Winston","Woodrow","Wyatt","Wyman","Xander","Xavier","Xzavier","Yadira","Yasmeen","Yasmin","Yasmine","Yazmin","Yesenia","Yessenia","Yolanda","Yoshiko","Yvette","Yvonne","Zachariah","Zachary","Zachery","Zack","Zackary","Zackery","Zakary","Zander","Zane","Zaria","Zechariah","Zelda","Zella","Zelma","Zena","Zetta","Zion","Zita","Zoe","Zoey","Zoie","Zoila","Zola","Zora","Zula"],female:["Mary","Patricia","Linda","Barbara","Elizabeth","Jennifer","Maria","Susan","Margaret","Dorothy","Lisa","Nancy","Karen","Betty","Helen","Sandra","Donna","Carol","Ruth","Sharon","Michelle","Laura","Sarah","Kimberly","Deborah","Jessica","Shirley","Cynthia","Angela","Melissa","Brenda","Amy","Anna","Rebecca","Virginia","Kathleen","Pamela","Martha","Debra","Amanda","Stephanie","Carolyn","Christine","Marie","Janet","Catherine","Frances","Ann","Joyce","Diane","Alice","Julie","Heather","Teresa","Doris","Gloria","Evelyn","Jean","Cheryl","Mildred","Katherine","Joan","Ashley","Judith","Rose","Janice","Kelly","Nicole","Judy","Christina","Kathy","Theresa","Beverly","Denise","Tammy","Irene","Jane","Lori","Rachel","Marilyn","Andrea","Kathryn","Louise","Sara","Anne","Jacqueline","Wanda","Bonnie","Julia","Ruby","Lois","Tina","Phyllis","Norma","Paula","Diana","Annie","Lillian","Emily","Robin","Peggy","Crystal","Gladys","Rita","Dawn","Connie","Florence","Tracy","Edna","Tiffany","Carmen","Rosa","Cindy","Grace","Wendy","Victoria","Edith","Kim","Sherry","Sylvia","Josephine","Thelma","Shannon","Sheila","Ethel","Ellen","Elaine","Marjorie","Carrie","Charlotte","Monica","Esther","Pauline","Emma","Juanita","Anita","Rhonda","Hazel","Amber","Eva","Debbie","April","Leslie","Clara","Lucille","Jamie","Joanne","Eleanor","Valerie","Danielle","Megan","Alicia","Suzanne","Michele","Gail","Bertha","Darlene","Veronica","Jill","Erin","Geraldine","Lauren","Cathy","Joann","Lorraine","Lynn","Sally","Regina","Erica","Beatrice","Dolores","Bernice","Audrey","Yvonne","Annette","June","Samantha","Marion","Dana","Stacy","Ana","Renee","Ida","Vivian","Roberta","Holly","Brittany","Melanie","Loretta","Yolanda","Jeanette","Laurie","Katie","Kristen","Vanessa","Alma","Sue","Elsie","Beth","Jeanne","Vicki","Carla","Tara","Rosemary","Eileen","Terri","Gertrude","Lucy","Tonya","Ella","Stacey","Wilma","Gina","Kristin","Jessie","Natalie","Agnes","Vera","Willie","Charlene","Bessie","Delores","Melinda","Pearl","Arlene","Maureen","Colleen","Allison","Tamara","Joy","Georgia","Constance","Lillie","Claudia","Jackie","Marcia","Tanya","Nellie","Minnie","Marlene","Heidi","Glenda","Lydia","Viola","Courtney","Marian","Stella","Caroline","Dora","Jo","Vickie","Mattie","Terry","Maxine","Irma","Mabel","Marsha","Myrtle","Lena","Christy","Deanna","Patsy","Hilda","Gwendolyn","Jennie","Nora","Margie","Nina","Cassandra","Leah","Penny","Kay","Priscilla","Naomi","Carole","Brandy","Olga","Billie","Dianne","Tracey","Leona","Jenny","Felicia","Sonia","Miriam","Velma","Becky","Bobbie","Violet","Kristina","Toni","Misty","Mae","Shelly","Daisy","Ramona","Sherri","Erika","Katrina","Claire","Lindsey","Lindsay","Geneva","Guadalupe","Belinda","Margarita","Sheryl","Cora","Faye","Ada","Natasha","Sabrina","Isabel","Marguerite","Hattie","Harriet","Molly","Cecilia","Kristi","Brandi","Blanche","Sandy","Rosie","Joanna","Iris","Eunice","Angie","Inez","Lynda","Madeline","Amelia","Alberta","Genevieve","Monique","Jodi","Janie","Maggie","Kayla","Sonya","Jan","Lee","Kristine","Candace","Fannie","Maryann","Opal","Alison","Yvette","Melody","Luz","Susie","Olivia","Flora","Shelley","Kristy","Mamie","Lula","Lola","Verna","Beulah","Antoinette","Candice","Juana","Jeannette","Pam","Kelli","Hannah","Whitney","Bridget","Karla","Celia","Latoya","Patty","Shelia","Gayle","Della","Vicky","Lynne","Sheri","Marianne","Kara","Jacquelyn","Erma","Blanca","Myra","Leticia","Pat","Krista","Roxanne","Angelica","Johnnie","Robyn","Francis","Adrienne","Rosalie","Alexandra","Brooke","Bethany","Sadie","Bernadette","Traci","Jody","Kendra","Jasmine","Nichole","Rachael","Chelsea","Mable","Ernestine","Muriel","Marcella","Elena","Krystal","Angelina","Nadine","Kari","Estelle","Dianna","Paulette","Lora","Mona","Doreen","Rosemarie","Angel","Desiree","Antonia","Hope","Ginger","Janis","Betsy","Christie","Freda","Mercedes","Meredith","Lynette","Teri","Cristina","Eula","Leigh","Meghan","Sophia","Eloise","Rochelle","Gretchen","Cecelia","Raquel","Henrietta","Alyssa","Jana","Kelley","Gwen","Kerry","Jenna","Tricia","Laverne","Olive","Alexis","Tasha","Silvia","Elvira","Casey","Delia","Sophie","Kate","Patti","Lorena","Kellie","Sonja","Lila","Lana","Darla","May","Mindy","Essie","Mandy","Lorene","Elsa","Josefina","Jeannie","Miranda","Dixie","Lucia","Marta","Faith","Lela","Johanna","Shari","Camille","Tami","Shawna","Elisa","Ebony","Melba","Ora","Nettie","Tabitha","Ollie","Jaime","Winifred","Kristie"],male:["James","John","Robert","Michael","William","David","Richard","Charles","Joseph","Thomas","Christopher","Daniel","Paul","Mark","Donald","George","Kenneth","Steven","Edward","Brian","Ronald","Anthony","Kevin","Jason","Matthew","Gary","Timothy","Jose","Larry","Jeffrey","Frank","Scott","Eric","Stephen","Andrew","Raymond","Gregory","Joshua","Jerry","Dennis","Walter","Patrick","Peter","Harold","Douglas","Henry","Carl","Arthur","Ryan","Roger","Joe","Juan","Jack","Albert","Jonathan","Justin","Terry","Gerald","Keith","Samuel","Willie","Ralph","Lawrence","Nicholas","Roy","Benjamin","Bruce","Brandon","Adam","Harry","Fred","Wayne","Billy","Steve","Louis","Jeremy","Aaron","Randy","Howard","Eugene","Carlos","Russell","Bobby","Victor","Martin","Ernest","Phillip","Todd","Jesse","Craig","Alan","Shawn","Clarence","Sean","Philip","Chris","Johnny","Earl","Jimmy","Antonio","Danny","Bryan","Tony","Luis","Mike","Stanley","Leonard","Nathan","Dale","Manuel","Rodney","Curtis","Norman","Allen","Marvin","Vincent","Glenn","Jeffery","Travis","Jeff","Chad","Jacob","Lee","Melvin","Alfred","Kyle","Francis","Bradley","Jesus","Herbert","Frederick","Ray","Joel","Edwin","Don","Eddie","Ricky","Troy","Randall","Barry","Alexander","Bernard","Mario","Leroy","Francisco","Marcus","Micheal","Theodore","Clifford","Miguel","Oscar","Jay","Jim","Tom","Calvin","Alex","Jon","Ronnie","Bill","Lloyd","Tommy","Leon","Derek","Warren","Darrell","Jerome","Floyd","Leo","Alvin","Tim","Wesley","Gordon","Dean","Greg","Jorge","Dustin","Pedro","Derrick","Dan","Lewis","Zachary","Corey","Herman","Maurice","Vernon","Roberto","Clyde","Glen","Hector","Shane","Ricardo","Sam","Rick","Lester","Brent","Ramon","Charlie","Tyler","Gilbert","Gene","Marc","Reginald","Ruben","Brett","Angel","Nathaniel","Rafael","Leslie","Edgar","Milton","Raul","Ben","Chester","Cecil","Duane","Franklin","Andre","Elmer","Brad","Gabriel","Ron","Mitchell","Roland","Arnold","Harvey","Jared","Adrian","Karl","Cory","Claude","Erik","Darryl","Jamie","Neil","Jessie","Christian","Javier","Fernando","Clinton","Ted","Mathew","Tyrone","Darren","Lonnie","Lance","Cody","Julio","Kelly","Kurt","Allan","Nelson","Guy","Clayton","Hugh","Max","Dwayne","Dwight","Armando","Felix","Jimmie","Everett","Jordan","Ian","Wallace","Ken","Bob","Jaime","Casey","Alfredo","Alberto","Dave","Ivan","Johnnie","Sidney","Byron","Julian","Isaac","Morris","Clifton","Willard","Daryl","Ross","Virgil","Andy","Marshall","Salvador","Perry","Kirk","Sergio","Marion","Tracy","Seth","Kent","Terrance","Rene","Eduardo","Terrence","Enrique","Freddie","Wade","Austin","Stuart","Fredrick","Arturo","Alejandro","Jackie","Joey","Nick","Luther","Wendell","Jeremiah","Evan","Julius","Dana","Donnie","Otis","Shannon","Trevor","Oliver","Luke","Homer","Gerard","Doug","Kenny","Hubert","Angelo","Shaun","Lyle","Matt","Lynn","Alfonso","Orlando","Rex","Carlton","Ernesto","Cameron","Neal","Pablo","Lorenzo","Omar","Wilbur","Blake","Grant","Horace","Roderick","Kerry","Abraham","Willis","Rickey","Jean","Ira","Andres","Cesar","Johnathan","Malcolm","Rudolph","Damon","Kelvin","Rudy","Preston","Alton","Archie","Marco","Wm","Pete","Randolph","Garry","Geoffrey","Jonathon","Felipe","Bennie","Gerardo","Ed","Dominic","Robin","Loren","Delbert","Colin","Guillermo","Earnest","Lucas","Benny","Noel","Spencer","Rodolfo","Myron","Edmund","Garrett","Salvatore","Cedric","Lowell","Gregg","Sherman","Wilson","Devin","Sylvester","Kim","Roosevelt","Israel","Jermaine","Forrest","Wilbert","Leland","Simon","Guadalupe","Clark","Irving","Carroll","Bryant","Owen","Rufus","Woodrow","Sammy","Kristopher","Mack","Levi","Marcos","Gustavo","Jake","Lionel","Marty","Taylor","Ellis","Dallas","Gilberto","Clint","Nicolas","Laurence","Ismael","Orville","Drew","Jody","Ervin","Dewey","Al","Wilfred","Josh","Hugo","Ignacio","Caleb","Tomas","Sheldon","Erick","Frankie","Stewart","Doyle","Darrel","Rogelio","Terence","Santiago","Alonzo","Elias","Bert","Elbert","Ramiro","Conrad","Pat","Noah","Grady","Phil","Cornelius","Lamar","Rolando","Clay","Percy","Dexter","Bradford","Merle","Darin","Amos","Terrell","Moses","Irvin","Saul","Roman","Darnell","Randal","Tommie","Timmy","Darrin","Winston","Brendan","Toby","Van","Abel","Dominick","Boyd","Courtney","Jan","Emilio","Elijah","Cary","Domingo","Santos","Aubrey","Emmett","Marlon","Emanuel","Jerald","Edmond"]},gender:["Agender","Androgyne","Androgynous","Bigender","Cis female","Cis male","Cis man","Cis woman","Cis","Cisgender female","Cisgender male","Cisgender man","Cisgender woman","Cisgender","Demi-boy","Demi-girl","Demi-man","Demi-woman","Demiflux","Demigender","F2M","FTM","Female to male trans man","Female to male transgender man","Female to male transsexual man","Female to male","Gender fluid","Gender neutral","Gender nonconforming","Gender questioning","Gender variant","Genderflux","Genderqueer","Hermaphrodite","Intersex man","Intersex person","Intersex woman","Intersex","M2F","MTF","Male to female trans woman","Male to female transgender woman","Male to female transsexual woman","Male to female","Man","Multigender","Neither","Neutrois","Non-binary","Omnigender","Other","Pangender","Polygender","T* man","T* woman","Trans female","Trans male","Trans man","Trans person","Trans woman","Trans","Transsexual female","Transsexual male","Transsexual man","Transsexual person","Transsexual woman","Transsexual","Transgender female","Transgender person","Transmasculine","Trigender","Two* person","Two-spirit person","Two-spirit","Woman","Xenogender"],job_area:["Solutions","Program","Brand","Security","Research","Marketing","Directives","Implementation","Integration","Functionality","Response","Paradigm","Tactics","Identity","Markets","Group","Division","Applications","Optimization","Operations","Infrastructure","Intranet","Communications","Web","Branding","Quality","Assurance","Mobility","Accounts","Data","Creative","Configuration","Accountability","Interactions","Factors","Usability","Metrics"],job_descriptor:["Lead","Senior","Direct","Corporate","Dynamic","Future","Product","National","Regional","District","Central","Global","Customer","Investor","International","Legacy","Forward","Internal","Human","Chief","Principal"],job_title_pattern:["{{person.jobDescriptor}} {{person.jobArea}} {{person.jobType}}"],job_type:["Supervisor","Associate","Executive","Liaison","Officer","Manager","Engineer","Specialist","Director","Coordinator","Administrator","Architect","Analyst","Designer","Planner","Orchestrator","Technician","Developer","Producer","Consultant","Assistant","Facilitator","Agent","Representative","Strategist"],last_name:{generic:["Abbott","Abernathy","Abshire","Adams","Altenwerth","Anderson","Ankunding","Armstrong","Auer","Aufderhar","Bahringer","Bailey","Balistreri","Barrows","Bartell","Bartoletti","Barton","Bashirian","Batz","Bauch","Baumbach","Bayer","Beahan","Beatty","Bechtelar","Becker","Bednar","Beer","Beier","Berge","Bergnaum","Bergstrom","Bernhard","Bernier","Bins","Blanda","Blick","Block","Bode","Boehm","Bogan","Bogisich","Borer","Bosco","Botsford","Boyer","Boyle","Bradtke","Brakus","Braun","Breitenberg","Brekke","Brown","Bruen","Buckridge","Carroll","Carter","Cartwright","Casper","Cassin","Champlin","Christiansen","Cole","Collier","Collins","Conn","Connelly","Conroy","Considine","Corkery","Cormier","Corwin","Cremin","Crist","Crona","Cronin","Crooks","Cruickshank","Cummerata","Cummings","Dach","D'Amore","Daniel","Dare","Daugherty","Davis","Deckow","Denesik","Dibbert","Dickens","Dicki","Dickinson","Dietrich","Donnelly","Dooley","Douglas","Doyle","DuBuque","Durgan","Ebert","Effertz","Emard","Emmerich","Erdman","Ernser","Fadel","Fahey","Farrell","Fay","Feeney","Feest","Feil","Ferry","Fisher","Flatley","Frami","Franecki","Franey","Friesen","Fritsch","Funk","Gerhold","Gerlach","Gibson","Gislason","Gleason","Gleichner","Glover","Goldner","Goodwin","Gorczany","Gottlieb","Goyette","Grady","Graham","Grant","Green","Greenfelder","Greenholt","Grimes","Gulgowski","Gusikowski","Gutkowski","Gutmann","Haag","Hackett","Hagenes","Hahn","Haley","Halvorson","Hamill","Hammes","Hand","Hane","Hansen","Harber","Harris","Hartmann","Harvey","Hauck","Hayes","Heaney","Heathcote","Hegmann","Heidenreich","Heller","Herman","Hermann","Hermiston","Herzog","Hessel","Hettinger","Hickle","Hilll","Hills","Hilpert","Hintz","Hirthe","Hodkiewicz","Hoeger","Homenick","Hoppe","Howe","Howell","Hudson","Huel","Huels","Hyatt","Jacobi","Jacobs","Jacobson","Jakubowski","Jaskolski","Jast","Jenkins","Jerde","Johns","Johnson","Johnston","Jones","Kassulke","Kautzer","Keebler","Keeling","Kemmer","Kerluke","Kertzmann","Kessler","Kiehn","Kihn","Kilback","King","Kirlin","Klein","Kling","Klocko","Koch","Koelpin","Koepp","Kohler","Konopelski","Koss","Kovacek","Kozey","Krajcik","Kreiger","Kris","Kshlerin","Kub","Kuhic","Kuhlman","Kuhn","Kulas","Kunde","Kunze","Kuphal","Kutch","Kuvalis","Labadie","Lakin","Lang","Langosh","Langworth","Larkin","Larson","Leannon","Lebsack","Ledner","Leffler","Legros","Lehner","Lemke","Lesch","Leuschke","Lind","Lindgren","Littel","Little","Lockman","Lowe","Lubowitz","Lueilwitz","Luettgen","Lynch","Macejkovic","MacGyver","Maggio","Mann","Mante","Marks","Marquardt","Marvin","Mayer","Mayert","McClure","McCullough","McDermott","McGlynn","McKenzie","McLaughlin","Medhurst","Mertz","Metz","Miller","Mills","Mitchell","Moen","Mohr","Monahan","Moore","Morar","Morissette","Mosciski","Mraz","Mueller","Muller","Murazik","Murphy","Murray","Nader","Nicolas","Nienow","Nikolaus","Nitzsche","Nolan","Oberbrunner","O'Connell","O'Conner","O'Hara","O'Keefe","O'Kon","Okuneva","Olson","Ondricka","O'Reilly","Orn","Ortiz","Osinski","Pacocha","Padberg","Pagac","Parisian","Parker","Paucek","Pfannerstill","Pfeffer","Pollich","Pouros","Powlowski","Predovic","Price","Prohaska","Prosacco","Purdy","Quigley","Quitzon","Rath","Ratke","Rau","Raynor","Reichel","Reichert","Reilly","Reinger","Rempel","Renner","Reynolds","Rice","Rippin","Ritchie","Robel","Roberts","Rodriguez","Rogahn","Rohan","Rolfson","Romaguera","Roob","Rosenbaum","Rowe","Ruecker","Runolfsdottir","Runolfsson","Runte","Russel","Rutherford","Ryan","Sanford","Satterfield","Sauer","Sawayn","Schaden","Schaefer","Schamberger","Schiller","Schimmel","Schinner","Schmeler","Schmidt","Schmitt","Schneider","Schoen","Schowalter","Schroeder","Schulist","Schultz","Schumm","Schuppe","Schuster","Senger","Shanahan","Shields","Simonis","Sipes","Skiles","Smith","Smitham","Spencer","Spinka","Sporer","Stamm","Stanton","Stark","Stehr","Steuber","Stiedemann","Stokes","Stoltenberg","Stracke","Streich","Stroman","Strosin","Swaniawski","Swift","Terry","Thiel","Thompson","Tillman","Torp","Torphy","Towne","Toy","Trantow","Tremblay","Treutel","Tromp","Turcotte","Turner","Ullrich","Upton","Vandervort","Veum","Volkman","Von","VonRueden","Waelchi","Walker","Walsh","Walter","Ward","Waters","Watsica","Weber","Wehner","Weimann","Weissnat","Welch","West","White","Wiegand","Wilderman","Wilkinson","Will","Williamson","Willms","Windler","Wintheiser","Wisoky","Wisozk","Witting","Wiza","Wolf","Wolff","Wuckert","Wunsch","Wyman","Yost","Yundt","Zboncak","Zemlak","Ziemann","Zieme","Zulauf"]},last_name_pattern:{generic:[{value:"{{person.last_name.generic}}",weight:95},{value:"{{person.last_name.generic}}-{{person.last_name.generic}}",weight:5}]},middle_name:{generic:["Addison","Alex","Anderson","Angel","Arden","August","Austin","Avery","Bailey","Billie","Blake","Bowie","Brooklyn","Cameron","Charlie","Corey","Dakota","Drew","Elliott","Ellis","Emerson","Finley","Gray","Greer","Harper","Hayden","Jaden","James","Jamie","Jordan","Jules","Kai","Kendall","Kennedy","Kyle","Leslie","Logan","London","Marlowe","Micah","Nico","Noah","North","Parker","Phoenix","Quinn","Reagan","Reese","Reign","Riley","River","Robin","Rory","Rowan","Ryan","Sage","Sasha","Sawyer","Shawn","Shiloh","Skyler","Taylor"],female:["Abigail","Adele","Alex","Alice","Alisha","Amber","Amelia","Amora","Anaïs","Angelou","Anika","Anise","Annabel","Anne","Aphrodite","Aretha","Arya","Ashton","Aster","Audrey","Avery","Bailee","Bay","Belle","Beth","Billie","Blair","Blaise","Blake","Blanche","Blue","Bree","Brielle","Brienne","Brooke","Caleen","Candice","Caprice","Carelyn","Caylen","Celine","Cerise","Cia","Claire","Claudia","Clementine","Coral","Coraline","Dahlia","Dakota","Dawn","Della","Demi","Denise","Denver","Devine","Devon","Diana","Dylan","Ebony","Eden","Eleanor","Elein","Elizabeth","Ellen","Elodie","Eloise","Ember","Emma","Erin","Eyre","Faith","Farrah","Fawn","Fayre","Fern","France","Francis","Frida","Genisis","Georgia","Grace","Gwen","Harley","Harper","Hazel","Helen","Hippolyta","Holly","Hope","Imani","Iowa","Ireland","Irene","Iris","Isa","Isla","Ivy","Jade","Jane","Jazz","Jean","Jess","Jett","Jo","Joan","Jolie","Jordan","Josie","Journey","Joy","Jules","Julien","Juliet","Juniper","Justice","Kali","Karma","Kat","Kate","Kennedy","Keva","Kylie","Lake","Lane","Lark","Layla","Lee","Leigh","Leona","Lexi","London","Lou","Louise","Love","Luna","Lux","Lynn","Lyric","Maddie","Mae","Marie","Matilda","Maude","Maybel","Meadow","Medusa","Mercy","Michelle","Mirabel","Monroe","Morgan","Nalia","Naomi","Nova","Olive","Paige","Parker","Pax","Pearl","Penelope","Phoenix","Quinn","Rae","Rain","Raven","Ray","Raye","Rebel","Reese","Reeve","Regan","Riley","River","Robin","Rory","Rose","Royal","Ruth","Rylie","Sage","Sam","Saturn","Scout","Serena","Sky","Skylar","Sofia","Sophia","Storm","Sue","Suzanne","Sydney","Taylen","Taylor","Teagan","Tempest","Tenley","Thea","Trinity","Valerie","Venus","Vera","Violet","Willow","Winter","Xena","Zaylee","Zion","Zoe"],male:["Ace","Aiden","Alexander","Ander","Anthony","Asher","August","Aziel","Bear","Beckham","Benjamin","Buddy","Calvin","Carter","Charles","Christopher","Clyde","Cooper","Daniel","David","Dior","Dylan","Elijah","Ellis","Emerson","Ethan","Ezra","Fletcher","Flynn","Gabriel","Grayson","Gus","Hank","Harrison","Hendrix","Henry","Houston","Hudson","Hugh","Isaac","Jack","Jackson","Jacob","Jakobe","James","Jaxon","Jaxtyn","Jayden","John","Joseph","Josiah","Jude","Julian","Karsyn","Kenji","Kobe","Kylo","Lennon","Leo","Levi","Liam","Lincoln","Logan","Louis","Lucas","Lucky","Luke","Mason","Mateo","Matthew","Maverick","Michael","Monroe","Nixon","Ocean","Oliver","Otis","Otto","Owen","Ozzy","Parker","Rocky","Samuel","Sebastian","Sonny","Teddy","Theo","Theodore","Thomas","Truett","Walter","Warren","Watson","William","Wison","Wyatt","Ziggy","Zyair"]},name:[{value:"{{person.firstName}} {{person.lastName}}",weight:49},{value:"{{person.prefix}} {{person.firstName}} {{person.lastName}}",weight:7},{value:"{{person.firstName}} {{person.lastName}} {{person.suffix}}",weight:7},{value:"{{person.prefix}} {{person.firstName}} {{person.lastName}} {{person.suffix}}",weight:1}],prefix:{generic:["Dr.","Miss","Mr.","Mrs.","Ms."],female:["Mrs.","Ms.","Miss","Dr."],male:["Mr.","Dr."]},sex:["female","male"],suffix:["Jr.","Sr.","I","II","III","IV","V","MD","DDS","PhD","DVM"],western_zodiac_sign:["Aquarius","Pisces","Aries","Taurus","Gemini","Cancer","Leo","Virgo","Libra","Scorpio","Sagittarius","Capricorn"]},phone_number:{format:{human:["!##-!##-####","(!##) !##-####","1-!##-!##-####","!##.!##.####","!##-!##-#### x###","(!##) !##-#### x###","1-!##-!##-#### x###","!##.!##.#### x###","!##-!##-#### x####","(!##) !##-#### x####","1-!##-!##-#### x####","!##.!##.#### x####","!##-!##-#### x#####","(!##) !##-#### x#####","1-!##-!##-#### x#####","!##.!##.#### x#####"],international:["+1!##!######"],national:["(!##) !##-####"]}},science:{chemical_element:[{symbol:"H",name:"Hydrogen",atomicNumber:1},{symbol:"He",name:"Helium",atomicNumber:2},{symbol:"Li",name:"Lithium",atomicNumber:3},{symbol:"Be",name:"Beryllium",atomicNumber:4},{symbol:"B",name:"Boron",atomicNumber:5},{symbol:"C",name:"Carbon",atomicNumber:6},{symbol:"N",name:"Nitrogen",atomicNumber:7},{symbol:"O",name:"Oxygen",atomicNumber:8},{symbol:"F",name:"Fluorine",atomicNumber:9},{symbol:"Ne",name:"Neon",atomicNumber:10},{symbol:"Na",name:"Sodium",atomicNumber:11},{symbol:"Mg",name:"Magnesium",atomicNumber:12},{symbol:"Al",name:"Aluminium",atomicNumber:13},{symbol:"Si",name:"Silicon",atomicNumber:14},{symbol:"P",name:"Phosphorus",atomicNumber:15},{symbol:"S",name:"Sulfur",atomicNumber:16},{symbol:"Cl",name:"Chlorine",atomicNumber:17},{symbol:"Ar",name:"Argon",atomicNumber:18},{symbol:"K",name:"Potassium",atomicNumber:19},{symbol:"Ca",name:"Calcium",atomicNumber:20},{symbol:"Sc",name:"Scandium",atomicNumber:21},{symbol:"Ti",name:"Titanium",atomicNumber:22},{symbol:"V",name:"Vanadium",atomicNumber:23},{symbol:"Cr",name:"Chromium",atomicNumber:24},{symbol:"Mn",name:"Manganese",atomicNumber:25},{symbol:"Fe",name:"Iron",atomicNumber:26},{symbol:"Co",name:"Cobalt",atomicNumber:27},{symbol:"Ni",name:"Nickel",atomicNumber:28},{symbol:"Cu",name:"Copper",atomicNumber:29},{symbol:"Zn",name:"Zinc",atomicNumber:30},{symbol:"Ga",name:"Gallium",atomicNumber:31},{symbol:"Ge",name:"Germanium",atomicNumber:32},{symbol:"As",name:"Arsenic",atomicNumber:33},{symbol:"Se",name:"Selenium",atomicNumber:34},{symbol:"Br",name:"Bromine",atomicNumber:35},{symbol:"Kr",name:"Krypton",atomicNumber:36},{symbol:"Rb",name:"Rubidium",atomicNumber:37},{symbol:"Sr",name:"Strontium",atomicNumber:38},{symbol:"Y",name:"Yttrium",atomicNumber:39},{symbol:"Zr",name:"Zirconium",atomicNumber:40},{symbol:"Nb",name:"Niobium",atomicNumber:41},{symbol:"Mo",name:"Molybdenum",atomicNumber:42},{symbol:"Tc",name:"Technetium",atomicNumber:43},{symbol:"Ru",name:"Ruthenium",atomicNumber:44},{symbol:"Rh",name:"Rhodium",atomicNumber:45},{symbol:"Pd",name:"Palladium",atomicNumber:46},{symbol:"Ag",name:"Silver",atomicNumber:47},{symbol:"Cd",name:"Cadmium",atomicNumber:48},{symbol:"In",name:"Indium",atomicNumber:49},{symbol:"Sn",name:"Tin",atomicNumber:50},{symbol:"Sb",name:"Antimony",atomicNumber:51},{symbol:"Te",name:"Tellurium",atomicNumber:52},{symbol:"I",name:"Iodine",atomicNumber:53},{symbol:"Xe",name:"Xenon",atomicNumber:54},{symbol:"Cs",name:"Caesium",atomicNumber:55},{symbol:"Ba",name:"Barium",atomicNumber:56},{symbol:"La",name:"Lanthanum",atomicNumber:57},{symbol:"Ce",name:"Cerium",atomicNumber:58},{symbol:"Pr",name:"Praseodymium",atomicNumber:59},{symbol:"Nd",name:"Neodymium",atomicNumber:60},{symbol:"Pm",name:"Promethium",atomicNumber:61},{symbol:"Sm",name:"Samarium",atomicNumber:62},{symbol:"Eu",name:"Europium",atomicNumber:63},{symbol:"Gd",name:"Gadolinium",atomicNumber:64},{symbol:"Tb",name:"Terbium",atomicNumber:65},{symbol:"Dy",name:"Dysprosium",atomicNumber:66},{symbol:"Ho",name:"Holmium",atomicNumber:67},{symbol:"Er",name:"Erbium",atomicNumber:68},{symbol:"Tm",name:"Thulium",atomicNumber:69},{symbol:"Yb",name:"Ytterbium",atomicNumber:70},{symbol:"Lu",name:"Lutetium",atomicNumber:71},{symbol:"Hf",name:"Hafnium",atomicNumber:72},{symbol:"Ta",name:"Tantalum",atomicNumber:73},{symbol:"W",name:"Tungsten",atomicNumber:74},{symbol:"Re",name:"Rhenium",atomicNumber:75},{symbol:"Os",name:"Osmium",atomicNumber:76},{symbol:"Ir",name:"Iridium",atomicNumber:77},{symbol:"Pt",name:"Platinum",atomicNumber:78},{symbol:"Au",name:"Gold",atomicNumber:79},{symbol:"Hg",name:"Mercury",atomicNumber:80},{symbol:"Tl",name:"Thallium",atomicNumber:81},{symbol:"Pb",name:"Lead",atomicNumber:82},{symbol:"Bi",name:"Bismuth",atomicNumber:83},{symbol:"Po",name:"Polonium",atomicNumber:84},{symbol:"At",name:"Astatine",atomicNumber:85},{symbol:"Rn",name:"Radon",atomicNumber:86},{symbol:"Fr",name:"Francium",atomicNumber:87},{symbol:"Ra",name:"Radium",atomicNumber:88},{symbol:"Ac",name:"Actinium",atomicNumber:89},{symbol:"Th",name:"Thorium",atomicNumber:90},{symbol:"Pa",name:"Protactinium",atomicNumber:91},{symbol:"U",name:"Uranium",atomicNumber:92},{symbol:"Np",name:"Neptunium",atomicNumber:93},{symbol:"Pu",name:"Plutonium",atomicNumber:94},{symbol:"Am",name:"Americium",atomicNumber:95},{symbol:"Cm",name:"Curium",atomicNumber:96},{symbol:"Bk",name:"Berkelium",atomicNumber:97},{symbol:"Cf",name:"Californium",atomicNumber:98},{symbol:"Es",name:"Einsteinium",atomicNumber:99},{symbol:"Fm",name:"Fermium",atomicNumber:100},{symbol:"Md",name:"Mendelevium",atomicNumber:101},{symbol:"No",name:"Nobelium",atomicNumber:102},{symbol:"Lr",name:"Lawrencium",atomicNumber:103},{symbol:"Rf",name:"Rutherfordium",atomicNumber:104},{symbol:"Db",name:"Dubnium",atomicNumber:105},{symbol:"Sg",name:"Seaborgium",atomicNumber:106},{symbol:"Bh",name:"Bohrium",atomicNumber:107},{symbol:"Hs",name:"Hassium",atomicNumber:108},{symbol:"Mt",name:"Meitnerium",atomicNumber:109},{symbol:"Ds",name:"Darmstadtium",atomicNumber:110},{symbol:"Rg",name:"Roentgenium",atomicNumber:111},{symbol:"Cn",name:"Copernicium",atomicNumber:112},{symbol:"Nh",name:"Nihonium",atomicNumber:113},{symbol:"Fl",name:"Flerovium",atomicNumber:114},{symbol:"Mc",name:"Moscovium",atomicNumber:115},{symbol:"Lv",name:"Livermorium",atomicNumber:116},{symbol:"Ts",name:"Tennessine",atomicNumber:117},{symbol:"Og",name:"Oganesson",atomicNumber:118}],unit:[{name:"meter",symbol:"m"},{name:"second",symbol:"s"},{name:"mole",symbol:"mol"},{name:"ampere",symbol:"A"},{name:"kelvin",symbol:"K"},{name:"candela",symbol:"cd"},{name:"kilogram",symbol:"kg"},{name:"radian",symbol:"rad"},{name:"hertz",symbol:"Hz"},{name:"newton",symbol:"N"},{name:"pascal",symbol:"Pa"},{name:"joule",symbol:"J"},{name:"watt",symbol:"W"},{name:"coulomb",symbol:"C"},{name:"volt",symbol:"V"},{name:"ohm",symbol:"Ω"},{name:"tesla",symbol:"T"},{name:"degree Celsius",symbol:"°C"},{name:"lumen",symbol:"lm"},{name:"becquerel",symbol:"Bq"},{name:"gray",symbol:"Gy"},{name:"sievert",symbol:"Sv"},{name:"steradian",symbol:"sr"},{name:"farad",symbol:"F"},{name:"siemens",symbol:"S"},{name:"weber",symbol:"Wb"},{name:"henry",symbol:"H"},{name:"lux",symbol:"lx"},{name:"katal",symbol:"kat"}]},team:{creature:["ants","bats","bears","bees","birds","buffalo","cats","chickens","cattle","dogs","dolphins","ducks","elephants","fishes","foxes","frogs","geese","goats","horses","kangaroos","lions","monkeys","owls","oxen","penguins","people","pigs","rabbits","sheep","tigers","whales","wolves","zebras","banshees","crows","black cats","chimeras","ghosts","conspirators","dragons","dwarves","elves","enchanters","exorcists","sons","foes","giants","gnomes","goblins","gooses","griffins","lycanthropes","nemesis","ogres","oracles","prophets","sorcerors","spiders","spirits","vampires","warlocks","vixens","werewolves","witches","worshipers","zombies","druids"],name:["{{location.state}} {{team.creature}}"]},vehicle:{bicycle_type:["Adventure Road Bicycle","BMX Bicycle","City Bicycle","Cruiser Bicycle","Cyclocross Bicycle","Dual-Sport Bicycle","Fitness Bicycle","Flat-Foot Comfort Bicycle","Folding Bicycle","Hybrid Bicycle","Mountain Bicycle","Recumbent Bicycle","Road Bicycle","Tandem Bicycle","Touring Bicycle","Track/Fixed-Gear Bicycle","Triathlon/Time Trial Bicycle","Tricycle"],fuel:["Diesel","Electric","Gasoline","Hybrid"],manufacturer:["Aston Martin","Audi","BMW","Bentley","Bugatti","Cadillac","Chevrolet","Chrysler","Dodge","Ferrari","Fiat","Ford","Honda","Hyundai","Jaguar","Jeep","Kia","Lamborghini","Land Rover","Maserati","Mazda","Mercedes Benz","Mini","Nissan","Polestar","Porsche","Rolls Royce","Smart","Tesla","Toyota","Volkswagen","Volvo"],model:["1","2","911","A4","A8","ATS","Accord","Alpine","Altima","Aventador","Beetle","CTS","CX-9","Camaro","Camry","Challenger","Charger","Civic","Colorado","Corvette","Countach","Cruze","Durango","El Camino","Element","Escalade","Expedition","Explorer","F-150","Fiesta","Focus","Fortwo","Golf","Grand Caravan","Grand Cherokee","Impala","Jetta","Land Cruiser","LeBaron","Malibu","Mercielago","Model 3","Model S","Model T","Model X","Model Y","Mustang","PT Cruiser","Prius","Ranchero","Roadster","Sentra","Silverado","Spyder","Taurus","V90","Volt","Wrangler","XC90","XTS"],type:["Cargo Van","Convertible","Coupe","Crew Cab Pickup","Extended Cab Pickup","Hatchback","Minivan","Passenger Van","SUV","Sedan","Wagon"]},word:{adjective:["abandoned","able","acceptable","acclaimed","accomplished","accurate","aching","acidic","actual","admired","adolescent","advanced","affectionate","afraid","aged","aggravating","aggressive","agile","agitated","agreeable","ajar","alarmed","alert","alienated","alive","all","altruistic","amazing","ambitious","ample","amused","angelic","anguished","animated","annual","another","antique","any","apprehensive","appropriate","apt","arid","artistic","ashamed","assured","astonishing","athletic","austere","authentic","authorized","avaricious","average","aware","awesome","awful","babyish","back","bad","baggy","bare","basic","beloved","beneficial","best","better","big","biodegradable","bitter","black","black-and-white","blank","blaring","bleak","blind","blond","blue","blushing","bogus","boiling","bony","boring","bossy","both","bouncy","bowed","brave","breakable","bright","brilliant","brisk","broken","brown","bruised","bulky","burdensome","burly","bustling","busy","buttery","buzzing","calculating","candid","carefree","careless","caring","cautious","cavernous","celebrated","charming","cheap","cheerful","chilly","chubby","circular","classic","clean","clear","clear-cut","close","closed","cloudy","clueless","clumsy","cluttered","coarse","colorful","colorless","colossal","comfortable","common","compassionate","competent","complete","complicated","concerned","concrete","confused","considerate","content","cool","cooperative","coordinated","corny","corrupt","courageous","courteous","crafty","crazy","creamy","creative","criminal","critical","crooked","crowded","cruel","crushing","cuddly","cultivated","cumbersome","curly","cute","damaged","damp","dapper","dark","darling","dazzling","dead","deadly","deafening","dearest","decent","decisive","deep","defenseless","defensive","deficient","definite","definitive","delectable","delicious","delirious","dense","dental","dependable","dependent","descriptive","deserted","determined","devoted","different","difficult","digital","diligent","dim","direct","dirty","discrete","disloyal","dismal","distant","distinct","distorted","doting","downright","drab","dramatic","dreary","dual","dull","dutiful","each","early","earnest","easy","ecstatic","edible","educated","elastic","elderly","electric","elegant","elementary","elliptical","eminent","emotional","empty","enchanted","enchanting","energetic","enlightened","enraged","entire","equatorial","essential","esteemed","ethical","everlasting","every","evil","exalted","excellent","excitable","excited","exhausted","exotic","expensive","experienced","expert","extra-large","extroverted","failing","faint","fair","fake","familiar","fantastic","far","far-flung","far-off","faraway","fat","fatal","fatherly","favorable","favorite","fearless","feline","filthy","fine","finished","firm","first","firsthand","fixed","flashy","flawed","flawless","flickering","flimsy","flowery","fluffy","flustered","focused","fond","foolhardy","foolish","forceful","formal","forsaken","fortunate","fragrant","frail","frank","free","french","frequent","friendly","frightened","frilly","frivolous","frizzy","front","frozen","frugal","fruitful","functional","funny","fussy","fuzzy","gaseous","general","gentle","genuine","gifted","gigantic","giving","glaring","glass","gleaming","glittering","gloomy","glorious","glossy","glum","golden","good","good-natured","gorgeous","graceful","gracious","grandiose","granular","grave","gray","great","greedy","grim","grimy","gripping","grizzled","grouchy","grounded","growing","grown","grubby","gruesome","grumpy","guilty","gullible","gummy","hairy","handsome","handy","happy","happy-go-lucky","hard-to-find","harmful","hasty","hateful","haunting","heartfelt","heavenly","heavy","hefty","helpful","helpless","hidden","hoarse","hollow","homely","honorable","honored","hopeful","hospitable","hot","huge","humble","humiliating","hungry","hurtful","husky","icy","ideal","idealistic","idolized","ignorant","ill","ill-fated","illiterate","illustrious","imaginary","imaginative","immaculate","immediate","immense","impartial","impassioned","impeccable","impish","impolite","important","impossible","impractical","impressionable","impressive","improbable","impure","inborn","incomparable","incomplete","inconsequential","indelible","indolent","inexperienced","infamous","infatuated","inferior","infinite","informal","innocent","insecure","insidious","insignificant","insistent","instructive","intelligent","intent","interesting","internal","international","intrepid","ironclad","irresponsible","jagged","jam-packed","jaunty","jealous","jittery","joyful","joyous","jubilant","judicious","juicy","jumbo","junior","juvenile","kaleidoscopic","key","knotty","knowledgeable","known","kooky","kosher","lanky","last","lasting","late","lavish","lawful","lazy","leading","lean","left","legal","light","lighthearted","likable","likely","limited","limp","limping","linear","lined","liquid","little","live","lively","livid","lone","lonely","long","long-term","lost","lovable","lovely","low","lucky","lumbering","lumpy","lustrous","mad","made-up","magnificent","majestic","major","male","mammoth","married","marvelous","massive","mature","meager","mealy","mean","measly","meaty","mediocre","medium","memorable","menacing","merry","messy","metallic","mild","milky","mindless","minor","minty","miserable","miserly","misguided","mixed","moist","monstrous","monthly","monumental","moral","motionless","muddy","muffled","multicolored","mundane","murky","mushy","musty","muted","mysterious","narrow","natural","naughty","nautical","near","neat","necessary","needy","negative","neglected","negligible","neighboring","nervous","new","next","nice","nifty","nimble","nippy","nocturnal","normal","noted","noteworthy","noxious","numb","nutritious","obedient","oblong","obvious","odd","oddball","official","oily","old","old-fashioned","only","optimal","optimistic","orange","orderly","ordinary","ornate","ornery","other","our","outgoing","outlandish","outlying","outrageous","outstanding","oval","overcooked","overdue","palatable","pale","paltry","parallel","parched","partial","passionate","pastel","peaceful","peppery","perfumed","perky","personal","pertinent","pessimistic","petty","phony","physical","pink","pitiful","plain","pleasant","pleased","pleasing","plump","pointed","pointless","polished","polite","political","poor","portly","posh","possible","potable","powerful","powerless","practical","precious","present","prestigious","pretty","pricey","prickly","primary","prime","private","probable","productive","profitable","profuse","proper","proud","prudent","punctual","puny","pure","purple","pushy","putrid","puzzled","qualified","quarrelsome","quarterly","queasy","querulous","questionable","quick","quick-witted","quiet","quintessential","quixotic","radiant","ragged","rapid","rare","raw","realistic","reasonable","recent","reckless","rectangular","red","reflecting","regal","regular","remarkable","remorseful","repentant","respectful","responsible","rewarding","rich","right","rigid","ripe","roasted","robust","rosy","rotating","rotten","rough","round","rowdy","royal","rubbery","ruddy","rundown","runny","rural","rusty","sad","salty","same","sandy","sarcastic","sardonic","scaly","scared","scary","scented","scientific","scornful","scratchy","second","second-hand","secondary","secret","self-assured","self-reliant","selfish","sentimental","separate","serene","serpentine","severe","shabby","shadowy","shady","shallow","shameful","shameless","shimmering","shiny","shocked","shoddy","short","short-term","showy","shrill","shy","sick","silent","silky","silver","similar","simple","simplistic","sinful","sizzling","skeletal","sleepy","slight","slimy","slow","slushy","small","smart","smoggy","smooth","smug","snappy","snarling","sneaky","sniveling","snoopy","sociable","soft","soggy","somber","some","sophisticated","sore","sorrowful","soulful","soupy","sour","spanish","sparkling","sparse","specific","speedy","spherical","spiffy","spirited","spiteful","splendid","spotless","square","squeaky","squiggly","stable","staid","stained","stale","standard","stark","steel","steep","sticky","stiff","stingy","stormy","straight","strange","strict","strident","striking","strong","stunning","stupendous","sturdy","stylish","subdued","submissive","substantial","subtle","suburban","sudden","sugary","sunny","super","superb","superficial","superior","supportive","sure-footed","surprised","svelte","sweet","swift","talkative","tall","tame","tangible","tasty","tattered","taut","tedious","teeming","tempting","tender","tense","tepid","terrible","that","these","thick","thin","thorny","thorough","those","thrifty","tidy","tight","timely","tinted","tiny","tired","torn","total","tough","tragic","trained","triangular","tricky","trim","trivial","troubled","true","trusting","trustworthy","trusty","turbulent","twin","ugly","ultimate","unaware","uncomfortable","uncommon","unconscious","understated","uneven","unfinished","unfit","unfortunate","unhappy","unhealthy","uniform","unimportant","unique","unkempt","unknown","unlawful","unlined","unlucky","unpleasant","unrealistic","unripe","unruly","unselfish","unsightly","unsteady","unsung","untidy","untimely","untried","untrue","unused","unusual","unwelcome","unwieldy","unwilling","unwritten","upbeat","upright","upset","urban","usable","useless","utilized","utter","vague","vain","valuable","variable","vast","velvety","vengeful","vibrant","victorious","violent","vivacious","vivid","voluminous","warlike","warm","warmhearted","warped","wasteful","waterlogged","watery","wavy","wealthy","weary","webbed","wee","weekly","weighty","weird","well-documented","well-groomed","well-lit","well-made","well-off","well-to-do","well-worn","which","whimsical","whirlwind","whispered","white","whole","whopping","wicked","wide","wide-eyed","wiggly","willing","wilted","winding","windy","winged","wise","witty","wobbly","woeful","wonderful","wordy","worldly","worse","worst","worthless","worthwhile","worthy","wrathful","wretched","writhing","wrong","wry","yearly","yellow","yellowish","young","youthful","yummy","zany","zealous","zesty"],adverb:["abnormally","absentmindedly","accidentally","acidly","actually","adventurously","afterwards","almost","always","angrily","annually","anxiously","arrogantly","awkwardly","badly","bashfully","beautifully","bitterly","bleakly","blindly","blissfully","boastfully","boldly","bravely","briefly","brightly","briskly","broadly","busily","calmly","carefully","carelessly","cautiously","certainly","cheerfully","clearly","cleverly","closely","coaxingly","colorfully","commonly","continually","coolly","correctly","courageously","crossly","cruelly","curiously","daily","daintily","dearly","deceivingly","deeply","defiantly","deliberately","delightfully","diligently","dimly","doubtfully","dreamily","easily","elegantly","energetically","enormously","enthusiastically","equally","especially","even","evenly","eventually","exactly","excitedly","extremely","fairly","faithfully","famously","far","fast","fatally","ferociously","fervently","fiercely","fondly","foolishly","fortunately","frankly","frantically","freely","frenetically","frightfully","fully","furiously","generally","generously","gently","gladly","gleefully","gracefully","gratefully","greatly","greedily","happily","hastily","healthily","heavily","helpfully","helplessly","highly","honestly","hopelessly","hourly","hungrily","immediately","innocently","inquisitively","instantly","intensely","intently","interestingly","inwardly","irritably","jaggedly","jealously","joshingly","jovially","joyfully","joyously","jubilantly","judgementally","justly","keenly","kiddingly","kindheartedly","kindly","kissingly","knavishly","knottily","knowingly","knowledgeably","kookily","lazily","less","lightly","likely","limply","lively","loftily","longingly","loosely","loudly","lovingly","loyally","madly","majestically","meaningfully","mechanically","merrily","miserably","mockingly","monthly","more","mortally","mostly","mysteriously","naturally","nearly","neatly","needily","nervously","never","nicely","noisily","not","obediently","obnoxiously","oddly","offensively","officially","often","only","openly","optimistically","overconfidently","owlishly","painfully","partially","patiently","perfectly","physically","playfully","politely","poorly","positively","potentially","powerfully","promptly","properly","punctually","quaintly","quarrelsomely","queasily","questionably","questioningly","quicker","quickly","quietly","quirkily","quizzically","rapidly","rarely","readily","really","reassuringly","recklessly","regularly","reluctantly","repeatedly","reproachfully","restfully","righteously","rightfully","rigidly","roughly","rudely","sadly","safely","scarcely","scarily","searchingly","sedately","seemingly","seldom","selfishly","separately","seriously","shakily","sharply","sheepishly","shrilly","shyly","silently","sleepily","slowly","smoothly","softly","solemnly","solidly","sometimes","soon","speedily","stealthily","sternly","strictly","successfully","suddenly","surprisingly","suspiciously","sweetly","swiftly","sympathetically","tenderly","tensely","terribly","thankfully","thoroughly","thoughtfully","tightly","tomorrow","too","tremendously","triumphantly","truly","truthfully","ultimately","unabashedly","unaccountably","unbearably","unethically","unexpectedly","unfortunately","unimpressively","unnaturally","unnecessarily","upbeat","upliftingly","upright","upside-down","upward","upwardly","urgently","usefully","uselessly","usually","utterly","vacantly","vaguely","vainly","valiantly","vastly","verbally","very","viciously","victoriously","violently","vivaciously","voluntarily","warmly","weakly","wearily","well","wetly","wholly","wildly","willfully","wisely","woefully","wonderfully","worriedly","wrongly","yawningly","yearly","yearningly","yesterday","yieldingly","youthfully"],conjunction:["after","although","and","as","because","before","but","consequently","even","finally","for","furthermore","hence","how","however","if","inasmuch","incidentally","indeed","instead","lest","likewise","meanwhile","nor","now","once","or","provided","since","so","supposing","than","that","though","till","unless","until","what","when","whenever","where","whereas","wherever","whether","which","while","who","whoever","whose","why","yet"],interjection:["yuck","oh","phooey","blah","boo","whoa","yowza","huzzah","boohoo","fooey","geez","pfft","ew","ah","yum","brr","hm","yahoo","aha","woot","drat","gah","meh","psst","aw","ugh","yippee","eek","gee","bah","gadzooks","duh","ha","mmm","ouch","phew","ack","uh-huh","gosh","hmph","pish","zowie","er","ick","oof","um"],noun:["CD","SUV","abacus","academics","accelerator","accompanist","account","accountability","acquaintance","ad","adaptation","address","adrenalin","adult","advancement","advertisement","adviser","affect","affiliate","aftermath","agreement","airbus","aircraft","airline","airmail","airman","airport","alb","alert","allegation","alliance","alligator","allocation","almighty","amendment","amnesty","analogy","angle","annual","antelope","anticodon","apparatus","appliance","approach","apricot","arcade","archaeology","armchair","armoire","asset","assist","atrium","attraction","availability","avalanche","awareness","babushka","backbone","backburn","bakeware","bandwidth","bar","barge","baritone","barracks","baseboard","basket","bathhouse","bathrobe","battle","begonia","behest","bell","bench","bend","beret","best-seller","bid","bidet","bin","birdbath","birdcage","birth","blight","blossom","blowgun","bob","bog","bonfire","bonnet","bookcase","bookend","boulevard","bourgeoisie","bowler","bowling","boyfriend","brace","bracelet","bran","breastplate","brief","brochure","brook","brush","bug","bump","bungalow","cafe","cake","calculus","cannon","cantaloupe","cap","cappelletti","captain","caption","carboxyl","cardboard","carnival","case","casement","cash","casket","cassava","castanet","catalyst","cauliflower","cellar","celsius","cemetery","ceramic","ceramics","certification","chainstay","chairperson","challenge","championship","chap","chapel","character","characterization","charlatan","charm","chasuble","cheese","cheetah","chiffonier","chops","chow","cinder","cinema","circumference","citizen","clamp","clavicle","cleaner","climb","co-producer","coal","coast","cod","coil","coin","coliseum","collaboration","collectivization","colon","colonialism","comestible","commercial","commodity","community","comparison","completion","complication","compromise","concentration","configuration","confusion","conservation","conservative","consistency","contractor","contrail","convection","conversation","cook","coordination","cop-out","cope","cork","cornet","corporation","corral","cosset","costume","couch","council","councilman","countess","courtroom","cow","creator","creature","crest","cricket","crocodile","cross-contamination","cruelty","cuckoo","curl","custody","custom","cutlet","cutover","cycle","daddy","dandelion","dash","daughter","dead","decision","deck","declaration","decongestant","decryption","deduction","deed","deer","defendant","density","department","dependency","deployment","depot","derby","descendant","descent","design","designation","desk","detective","devastation","developing","developmental","devil","diagram","digestive","digit","dime","director","disadvantage","disappointment","disclosure","disconnection","discourse","dish","disk","disposer","distinction","diver","diversity","dividend","divine","doing","doorpost","doubter","draft","draw","dream","dredger","dress","drive","drug","duffel","dulcimer","dusk","duster","dwell","e-mail","earth","ecliptic","ectoderm","edge","editor","effector","eggplant","electronics","elevation","elevator","elver","embarrassment","embossing","emergent","encouragement","entry","epic","equal","essence","eternity","ethyl","euphonium","event","exasperation","excess","executor","exhaust","expansion","expense","experience","exploration","extension","extent","exterior","eyebrow","eyeliner","farm","farmer","fat","fax","feather","fedora","fellow","fen","fencing","ferret","festival","fibre","filter","final","finding","finer","finger","fireplace","fisherman","fishery","fit","flame","flat","fledgling","flight","flint","flood","flu","fog","fold","folklore","follower","following","foodstuffs","footrest","forage","forager","forgery","fork","formamide","formation","formula","fort","fowl","fraudster","freckle","freezing","freight","fuel","fun","fund","fundraising","futon","gallery","galoshes","gastropod","gazebo","gerbil","ghost","giant","gift","giggle","glider","gloom","goat","godfather","godparent","going","goodwill","governance","government","gown","gradient","graffiti","grandpa","grandson","granny","grass","gray","gripper","grouper","guacamole","guard","guidance","guide","gym","gymnast","habit","haircut","halt","hamburger","hammock","handful","handle","handover","harp","haversack","hawk","heartache","heartbeat","heating","hello","help","hepatitis","heroine","hexagon","hierarchy","hippodrome","honesty","hoof","hope","horde","hornet","horst","hose","hospitalization","hovel","hovercraft","hubris","humidity","humor","hundred","hunger","hunt","husband","hutch","hydrant","hydrocarbon","hydrolyse","hydrolyze","hyena","hygienic","hyphenation","ice-cream","icebreaker","igloo","ignorance","illusion","impact","import","importance","impostor","in-joke","incandescence","independence","individual","information","injunction","innovation","insolence","inspection","instance","institute","instruction","instructor","integer","intellect","intent","interchange","interior","intervention","interviewer","invite","iridescence","issue","jacket","jazz","jellyfish","jet","jogging","joy","juggernaut","jump","jungle","junior","jury","kettledrum","kick","kielbasa","kinase","king","kiss","kit","knickers","knight","knitting","knuckle","label","labourer","lace","lady","lamp","language","larva","lashes","laughter","lava","lawmaker","lay","leading","league","legend","legging","legislature","lender","license","lid","lieu","lifestyle","lift","linseed","litter","loaf","lobster","longboat","lotion","lounge","louse","lox","loyalty","luck","lyre","maestro","mainstream","maintainer","majority","makeover","making","mallard","management","manner","mantua","marathon","march","marimba","marketplace","marksman","markup","marten","massage","masterpiece","mathematics","meadow","meal","meander","meatloaf","mechanic","median","membership","mentor","merit","metabolite","metal","middle","midwife","milestone","millet","minion","minister","minor","minority","mixture","mobility","molasses","mom","moment","monasticism","monocle","monster","morbidity","morning","mortise","mountain","mouser","mousse","mozzarella","muscat","mythology","napkin","necklace","nectarine","negotiation","nephew","nerve","netsuke","newsletter","newsprint","newsstand","nightlife","noon","nougat","nucleotidase","nudge","numeracy","numeric","nun","obedience","obesity","object","obligation","ocelot","octave","offset","oil","omelet","onset","opera","operating","optimal","orchid","order","ostrich","other","outlaw","outrun","outset","overcoat","overheard","overload","ownership","pacemaker","packaging","paintwork","palate","pants","pantyhose","papa","parade","parsnip","partridge","passport","pasta","patroller","pear","pearl","pecan","pendant","peninsula","pension","peony","pepper","perfection","permafrost","perp","petal","petticoat","pharmacopoeia","phrase","pick","piglet","pigpen","pigsty","pile","pillbox","pillow","pilot","pine","pinstripe","place","plain","planula","plastic","platter","platypus","pleasure","pliers","plugin","plumber","pneumonia","pocket-watch","poetry","polarisation","polyester","pomelo","pop","poppy","popularity","populist","porter","possession","postbox","precedent","premeditation","premier","premise","premium","pressure","presume","priesthood","printer","privilege","procurement","produce","programme","prohibition","promise","pronoun","providence","provider","provision","publication","publicity","pulse","punctuation","pupil","puppet","puritan","quart","quinoa","quit","railway","range","rationale","ravioli","rawhide","reach","reasoning","reboot","receptor","recommendation","reconsideration","recovery","redesign","relative","release","remark","reorganisation","repeat","replacement","reporter","representation","republican","request","requirement","reservation","resolve","resource","responsibility","restaurant","retention","retrospectivity","reward","ribbon","rim","riser","roadway","role","rosemary","roundabout","rubric","ruin","rule","runway","rust","safe","sailor","saloon","sand","sandbar","sanity","sarong","sauerkraut","saw","scaffold","scale","scarification","scenario","schedule","schnitzel","scholarship","scorn","scorpion","scout","scrap","scratch","seafood","seagull","seal","season","secrecy","secret","section","sediment","self-confidence","sermon","sesame","settler","shadowbox","shark","shipper","shore","shoulder","sideboard","siege","sightseeing","signature","silk","simple","singing","skean","skeleton","skyline","skyscraper","slide","slime","slipper","smog","smoke","sock","soliloquy","solution","solvency","someplace","sonar","sonata","sonnet","soup","soybean","space","spear","spirit","spork","sport","spring","sprinkles","squid","stall","starboard","statue","status","stay","steak","steeple","step","step-mother","sticker","stir-fry","stitcher","stock","stool","story","strait","stranger","strategy","straw","stump","subexpression","submitter","subsidy","substitution","suitcase","summary","summer","sunbeam","sundae","supplier","surface","sushi","suspension","sustenance","swanling","swath","sweatshop","swim","swine","swing","switch","switchboard","swordfish","synergy","t-shirt","tabletop","tackle","tail","tapioca","taro","tarragon","taxicab","teammate","technician","technologist","tectonics","tenant","tenement","tennis","tentacle","teriyaki","term","testimonial","testing","thigh","thongs","thorn","thread","thunderbolt","thyme","tinderbox","toaster","tomatillo","tomb","tomography","tool","tooth","toothbrush","toothpick","topsail","traditionalism","traffic","translation","transom","transparency","trash","travel","tray","trench","tribe","tributary","trick","trolley","tuba","tuber","tune-up","turret","tusk","tuxedo","typeface","typewriter","unblinking","underneath","underpants","understanding","unibody","unique","unit","utilization","valentine","validity","valley","valuable","vanadyl","vein","velocity","venom","version","verve","vestment","veto","viability","vibraphone","vibration","vicinity","video","violin","vision","vista","vol","volleyball","wafer","waist","wallaby","warming","wasabi","waterspout","wear","wedding","whack","whale","wheel","widow","wilderness","willow","window","wombat","word","worth","wriggler","yak","yarmulke","yeast","yin","yogurt","zebra","zen"],preposition:["a","abaft","aboard","about","above","absent","across","afore","after","against","along","alongside","amid","amidst","among","amongst","an","anenst","anti","apropos","apud","around","as","aside","astride","at","athwart","atop","barring","before","behind","below","beneath","beside","besides","between","beyond","but","by","circa","concerning","considering","despite","down","during","except","excepting","excluding","failing","following","for","forenenst","from","given","in","including","inside","into","lest","like","mid","midst","minus","modulo","near","next","notwithstanding","of","off","on","onto","opposite","out","outside","over","pace","past","per","plus","pro","qua","regarding","round","sans","save","since","than","the","through","throughout","till","times","to","toward","towards","under","underneath","unlike","until","unto","up","upon","versus","via","vice","with","within","without","worth"],verb:["abnegate","abscond","abseil","absolve","accentuate","accept","access","accessorise","accompany","account","accredit","achieve","acknowledge","acquire","adjourn","adjudge","admonish","adumbrate","advocate","afford","airbrush","ameliorate","amend","amount","anaesthetise","analyse","anesthetize","anneal","annex","antagonize","ape","apologise","apostrophize","appertain","appreciate","appropriate","approximate","arbitrate","archive","arraign","arrange","ascertain","ascribe","assail","atomize","attend","attest","attribute","augment","avow","axe","baa","banish","bank","baptise","battle","beard","beep","behold","belabor","bemuse","besmirch","bestride","better","bewail","bicycle","bide","bind","biodegrade","blacken","blaspheme","bleach","blend","blink","bliss","bloom","bludgeon","bobble","boggle","bolster","book","boom","bootleg","border","bore","boss","braid","brand","brandish","break","breed","broadcast","broadside","brood","browse","buck","burgeon","bus","butter","buzzing","camouflage","cannibalise","canter","cap","capitalise","capitalize","capsize","card","carouse","carp","carpool","catalog","catalyze","catch","categorise","cease","celebrate","censor","certify","char","charter","chase","chatter","chime","chip","christen","chromakey","chunder","chunter","cinch","circle","circulate","circumnavigate","clamor","clamour","claw","cleave","clinch","clinking","clone","clonk","coagulate","coexist","coincide","collaborate","colligate","colorize","colour","comb","come","commandeer","commemorate","communicate","compete","conceal","conceptualize","conclude","concrete","condense","cone","confide","confirm","confiscate","confound","confute","congregate","conjecture","connect","consign","construe","contradict","contrast","contravene","controvert","convalesce","converse","convince","convoke","coop","cop","corner","covenant","cow","crackle","cram","crank","creak","creaking","cripple","croon","cross","crumble","crystallize","culminate","culture","curry","curse","customise","cycle","dally","dampen","darn","debit","debut","decide","decode","decouple","decriminalize","deduce","deduct","deflate","deflect","deform","defrag","degenerate","degrease","delete","delight","deliquesce","demob","demobilise","democratize","demonstrate","denitrify","deny","depart","depend","deplore","deploy","deprave","depute","dereference","describe","desecrate","deselect","destock","detain","develop","devise","dial","dicker","digitize","dilate","disapprove","disarm","disbar","discontinue","disgorge","dishearten","dishonor","disinherit","dislocate","dispense","display","dispose","disrespect","dissemble","ditch","divert","dock","doodle","downchange","downshift","dowse","draft","drag","drain","dramatize","drowse","drum","dwell","economise","edge","efface","egg","eke","electrify","embalm","embed","embody","emboss","emerge","emphasise","emphasize","emulsify","encode","endow","enfold","engage","engender","enhance","enlist","enrage","enrich","enroll","entice","entomb","entrench","entwine","equate","essay","etch","eulogise","even","evince","exacerbate","exaggerate","exalt","exempt","exonerate","expatiate","explode","expostulate","extract","extricate","eyeglasses","fabricate","facilitate","factorise","factorize","fail","fall","familiarize","fashion","father","fathom","fax","federate","feminize","fence","fess","fictionalize","fiddle","fidget","fill","flash","fleck","flight","floodlight","floss","fluctuate","fluff","fly","focalise","foot","forearm","forecast","foretell","forgather","forgo","fork","form","forswear","founder","fraternise","fray","frizz","fumigate","function","furlough","fuss","gad","gallivant","galvanize","gape","garage","garrote","gasp","gestate","give","glimmer","glisten","gloat","gloss","glow","gnash","gnaw","goose","govern","grade","graduate","graft","grok","guest","guilt","gulp","gum","gurn","gust","gut","guzzle","ham","harangue","harvest","hassle","haul","haze","headline","hearten","heighten","highlight","hoick","hold","hole","hollow","holster","home","homeschool","hoot","horn","horse","hotfoot","house","hover","howl","huddle","huff","hunger","hunt","husk","hype","hypothesise","hypothesize","idle","ignite","imagineer","impact","impanel","implode","incinerate","incline","inculcate","industrialize","ingratiate","inhibit","inject","innovate","inscribe","insert","insist","inspect","institute","institutionalize","intend","intermarry","intermesh","intermix","internalise","internalize","internationalize","intrigue","inure","inveigle","inventory","investigate","irk","iterate","jaywalk","jell","jeopardise","jiggle","jive","joint","jot","jut","keel","knife","knit","know","kowtow","lack","lampoon","large","leap","lecture","legitimize","lend","libel","liberalize","license","ligate","list","lobotomise","lock","log","loose","low","lowball","machine","magnetize","major","make","malfunction","manage","manipulate","maroon","masculinize","mash","mask","masquerade","massage","masticate","materialise","matter","maul","memorise","merge","mesh","metabolise","microblog","microchip","micromanage","militate","mill","minister","minor","misappropriate","miscalculate","misfire","misjudge","miskey","mismatch","mispronounce","misread","misreport","misspend","mob","mobilise","mobilize","moisten","mooch","moor","moralise","mortar","mosh","mothball","motivate","motor","mould","mount","muddy","mummify","mutate","mystify","nab","narrate","narrowcast","nasalise","nauseate","navigate","neaten","neck","neglect","norm","notarize","object","obscure","observe","obsess","obstruct","obtrude","offend","offset","option","orchestrate","orient","orientate","outbid","outdo","outfit","outflank","outfox","outnumber","outrank","outrun","outsource","overburden","overcharge","overcook","overdub","overfeed","overload","overplay","overproduce","overreact","override","overspend","overstay","overtrain","overvalue","overwork","own","oxidise","oxidize","oxygenate","pace","pack","pale","pant","paralyse","parody","part","pause","pave","penalise","persecute","personalise","perspire","pertain","peter","pike","pillory","pinion","pip","pity","pivot","pixellate","plagiarise","plait","plan","please","pluck","ponder","popularize","portray","prance","preclude","preheat","prejudge","preregister","presell","preside","pretend","print","prioritize","probate","probe","proceed","procrastinate","profane","progress","proliferate","proofread","propound","proselytise","provision","pry","publicize","puff","pull","pulp","pulverize","purse","put","putrefy","quadruple","quaff","quantify","quarrel","quash","quaver","question","quiet","quintuple","quip","quit","rag","rally","ramp","randomize","rationalise","rationalize","ravage","ravel","react","readies","readjust","readmit","ready","reapply","rear","reassemble","rebel","reboot","reborn","rebound","rebuff","rebuild","rebuke","recede","reckon","reclassify","recompense","reconstitute","record","recount","redact","redevelop","redound","redraw","redress","reel","refer","reference","refine","reflate","refute","regulate","reiterate","rejigger","rejoin","rekindle","relaunch","relieve","remand","remark","reopen","reorient","replicate","repossess","represent","reprimand","reproach","reprove","repurpose","requite","reschedule","resort","respray","restructure","retool","retract","revere","revitalise","revoke","reword","rewrite","ride","ridge","rim","ring","rise","rival","roger","rosin","rot","rout","row","rue","rule","safeguard","sashay","sate","satirise","satirize","satisfy","saturate","savour","scale","scamper","scar","scare","scarper","scent","schematise","scheme","schlep","scoff","scoop","scope","scotch","scowl","scrabble","scram","scramble","scrape","screw","scruple","scrutinise","scuffle","scuttle","search","secularize","see","segregate","sell","sense","sensitize","sequester","serenade","serialize","serve","service","settle","sew","shaft","sham","shampoo","shanghai","shear","sheathe","shell","shinny","shirk","shoot","shoulder","shout","shovel","showboat","shred","shrill","shudder","shush","sidetrack","sign","silt","sin","singe","sit","sizzle","skateboard","ski","slake","slap","slather","sleet","slink","slip","slope","slump","smarten","smuggle","snack","sneak","sniff","snoop","snow","snowplow","snuggle","soap","solace","solder","solicit","source","spark","spattering","spectacles","spectate","spellcheck","spew","spice","spirit","splash","splay","split","splosh","splurge","spook","square","squirm","stabilise","stable","stack","stage","stake","starch","state","statement","stiffen","stigmatize","sting","stint","stoop","store","storyboard","stratify","structure","stuff","stunt","substantiate","subtract","suckle","suffice","suffocate","summarise","sun","sunbathe","sunder","sup","surge","surprise","swat","swathe","sway","swear","swelter","swerve","swill","swing","symbolise","synthesise","syringe","table","tabulate","tag","tame","tank","tankful","tarry","task","taxicab","team","telescope","tenant","terraform","terrorise","testify","think","throbbing","thump","tighten","toady","toe","tough","tousle","traduce","train","transcend","transplant","trash","treasure","treble","trek","trial","tromp","trouser","trust","tune","tut","twine","twist","typify","unbalance","uncork","uncover","underachieve","undergo","underplay","unearth","unfreeze","unfurl","unlearn","unscramble","unzip","uproot","upsell","usher","vacation","vamoose","vanish","vary","veg","venture","verify","vet","veto","volunteer","vulgarise","waft","wallop","waltz","warp","wash","waver","weary","weatherize","wedge","weep","weight","welcome","westernise","westernize","while","whine","whisper","whistle","whitewash","whup","wilt","wing","wire","wisecrack","wolf","wound","wring","writ","yak","yawn","yearn","yuppify"]}},ww=class extends Error{};var Cw=class{constructor(e){this.faker=e,function(e){let t=Object.getPrototypeOf(e);do{for(let r of Object.getOwnPropertyNames(t))"function"==typeof e[r]&&"constructor"!==r&&(e[r]=e[r].bind(e));t=Object.getPrototypeOf(t)}while(t!==Object.prototype)}(this)}},_w=class extends Cw{constructor(e){super(e),this.faker=e}},Sw=(e=>(e.Narrowbody="narrowbody",e.Regional="regional",e.Widebody="widebody",e))(Sw||{}),Aw=["0","1","2","3","4","5","6","7","8","9"],Mw=["0","O","1","I","L"],Tw={regional:20,narrowbody:35,widebody:60},Bw={regional:["A","B","C","D"],narrowbody:["A","B","C","D","E","F"],widebody:["A","B","C","D","E","F","G","H","J","K"]},Lw=class extends _w{airport(){return this.faker.helpers.arrayElement(this.faker.definitions.airline.airport)}airline(){return this.faker.helpers.arrayElement(this.faker.definitions.airline.airline)}airplane(){return this.faker.helpers.arrayElement(this.faker.definitions.airline.airplane)}recordLocator(e={}){let{allowNumerics:t=!1,allowVisuallySimilarCharacters:r=!1}=e,a=[];return t||a.push(...Aw),r||a.push(...Mw),this.faker.string.alphanumeric({length:6,casing:"upper",exclude:a})}seat(e={}){let{aircraftType:t="narrowbody"}=e,r=Tw[t],a=Bw[t];return`${this.faker.number.int({min:1,max:r})}${this.faker.helpers.arrayElement(a)}`}aircraftType(){return this.faker.helpers.enumValue(Sw)}flightNumber(e={}){let{length:t={min:1,max:4},addLeadingZeros:r=!1}=e,a=this.faker.string.numeric({length:t,allowLeadingZeros:!1});return r?a.padStart(4,"0"):a}},Ew=(e=>(e.SRGB="sRGB",e.DisplayP3="display-p3",e.REC2020="rec2020",e.A98RGB="a98-rgb",e.ProphotoRGB="prophoto-rgb",e))(Ew||{}),Rw=(e=>(e.RGB="rgb",e.RGBA="rgba",e.HSL="hsl",e.HSLA="hsla",e.HWB="hwb",e.CMYK="cmyk",e.LAB="lab",e.LCH="lch",e.COLOR="color",e))(Rw||{});function Hw(e){return e.map((e=>{if(e%1!=0){let t=new ArrayBuffer(4);return new DataView(t).setFloat32(0,e),Hw([...new Uint8Array(t)]).replaceAll(" ","")}return(e>>>0).toString(2).padStart(8,"0")})).join(" ")}function Dw(e,t,r="rgb",a="sRGB"){switch(t){case"css":return function(e,t="rgb",r="sRGB"){let a=e=>Math.round(100*e);switch(t){case"rgba":return`rgba(${e[0]}, ${e[1]}, ${e[2]}, ${e[3]})`;case"color":return`color(${r} ${e[0]} ${e[1]} ${e[2]})`;case"cmyk":return`cmyk(${a(e[0])}%, ${a(e[1])}%, ${a(e[2])}%, ${a(e[3])}%)`;case"hsl":return`hsl(${e[0]}deg ${a(e[1])}% ${a(e[2])}%)`;case"hsla":return`hsl(${e[0]}deg ${a(e[1])}% ${a(e[2])}% / ${a(e[3])})`;case"hwb":return`hwb(${e[0]} ${a(e[1])}% ${a(e[2])}%)`;case"lab":return`lab(${a(e[0])}% ${e[1]} ${e[2]})`;case"lch":return`lch(${a(e[0])}% ${e[1]} ${e[2]})`;case"rgb":return`rgb(${e[0]}, ${e[1]}, ${e[2]})`}}(e,r,a);case"binary":return Hw(e);case"decimal":return e}}var Pw=class extends _w{human(){return this.faker.helpers.arrayElement(this.faker.definitions.color.human)}space(){return this.faker.helpers.arrayElement(this.faker.definitions.color.space)}cssSupportedFunction(){return this.faker.helpers.enumValue(Rw)}cssSupportedSpace(){return this.faker.helpers.enumValue(Ew)}rgb(e={}){let t,{format:r="hex",includeAlpha:a=!1,prefix:i="#",casing:n="lower"}=e,o="rgb";return"hex"===r?(t=this.faker.string.hexadecimal({length:a?8:6,prefix:""}),t=function(e,t){let{prefix:r,casing:a}=t;switch(a){case"upper":e=e.toUpperCase();break;case"lower":e=e.toLowerCase()}return r&&(e=r+e),e}(t,{prefix:i,casing:n}),t):(t=Array.from({length:3},(()=>this.faker.number.int(255))),a&&(t.push(this.faker.number.float({multipleOf:.01})),o="rgba"),Dw(t,r,o))}cmyk(e={}){let{format:t="decimal"}=e;return Dw(Array.from({length:4},(()=>this.faker.number.float({multipleOf:.01}))),t,"cmyk")}hsl(e={}){let{format:t="decimal",includeAlpha:r=!1}=e,a=[this.faker.number.int(360)];for(let t=0;t<(e?.includeAlpha?3:2);t++)a.push(this.faker.number.float({multipleOf:.01}));return Dw(a,t,r?"hsla":"hsl")}hwb(e={}){let{format:t="decimal"}=e,r=[this.faker.number.int(360)];for(let e=0;e<2;e++)r.push(this.faker.number.float({multipleOf:.01}));return Dw(r,t,"hwb")}lab(e={}){let{format:t="decimal"}=e,r=[this.faker.number.float({multipleOf:1e-6})];for(let e=0;e<2;e++)r.push(this.faker.number.float({min:-100,max:100,multipleOf:1e-4}));return Dw(r,t,"lab")}lch(e={}){let{format:t="decimal"}=e,r=[this.faker.number.float({multipleOf:1e-6})];for(let e=0;e<2;e++)r.push(this.faker.number.float({max:230,multipleOf:.1}));return Dw(r,t,"lch")}colorByCSSColorSpace(e={}){let{format:t="decimal",space:r="sRGB"}=e;return Dw(Array.from({length:3},(()=>this.faker.number.float({multipleOf:1e-4}))),t,"color",r)}},Nw=(e=>(e.Legacy="legacy",e.Segwit="segwit",e.Bech32="bech32",e.Taproot="taproot",e))(Nw||{}),Gw=(e=>(e.Mainnet="mainnet",e.Testnet="testnet",e))(Gw||{}),Iw={legacy:{prefix:{mainnet:"1",testnet:"m"},length:{min:26,max:34},casing:"mixed",exclude:"0OIl"},segwit:{prefix:{mainnet:"3",testnet:"2"},length:{min:26,max:34},casing:"mixed",exclude:"0OIl"},bech32:{prefix:{mainnet:"bc1",testnet:"tb1"},length:{min:42,max:42},casing:"lower",exclude:"1bBiIoO"},taproot:{prefix:{mainnet:"bc1p",testnet:"tb1p"},length:{min:62,max:62},casing:"lower",exclude:"1bBiIoO"}},Ww=(e=>(e.Female="female",e.Male="male",e))(Ww||{});function Fw(e,t,r){let{generic:a,female:i,male:n}=r;switch(t){case"female":return i??a;case"male":return n??a;default:return a??e.helpers.arrayElement([i,n])??[]}}var zw=class extends _w{firstName(e){return this.faker.helpers.arrayElement(Fw(this.faker,e,this.faker.definitions.person.first_name))}lastName(e){if(null!=this.faker.rawDefinitions.person?.last_name_pattern){let t=this.faker.helpers.weightedArrayElement(Fw(this.faker,e,this.faker.rawDefinitions.person.last_name_pattern));return this.faker.helpers.fake(t)}return this.faker.helpers.arrayElement(Fw(this.faker,e,this.faker.definitions.person.last_name))}middleName(e){return this.faker.helpers.arrayElement(Fw(this.faker,e,this.faker.definitions.person.middle_name))}fullName(e={}){let{sex:t=this.faker.helpers.arrayElement(["female","male"]),firstName:r=this.firstName(t),lastName:a=this.lastName(t)}=e,i=this.faker.helpers.weightedArrayElement(this.faker.definitions.person.name);return this.faker.helpers.mustache(i,{"person.prefix":()=>this.prefix(t),"person.firstName":()=>r,"person.middleName":()=>this.middleName(t),"person.lastName":()=>a,"person.suffix":()=>this.suffix()})}gender(){return this.faker.helpers.arrayElement(this.faker.definitions.person.gender)}sex(){return this.faker.helpers.arrayElement(this.faker.definitions.person.sex)}sexType(){return this.faker.helpers.enumValue(Ww)}bio(){let{bio_pattern:e}=this.faker.definitions.person;return this.faker.helpers.fake(e)}prefix(e){return this.faker.helpers.arrayElement(Fw(this.faker,e,this.faker.definitions.person.prefix))}suffix(){return this.faker.helpers.arrayElement(this.faker.definitions.person.suffix)}jobTitle(){return this.faker.helpers.fake(this.faker.definitions.person.job_title_pattern)}jobDescriptor(){return this.faker.helpers.arrayElement(this.faker.definitions.person.job_descriptor)}jobArea(){return this.faker.helpers.arrayElement(this.faker.definitions.person.job_area)}jobType(){return this.faker.helpers.arrayElement(this.faker.definitions.person.job_type)}zodiacSign(){return this.faker.helpers.arrayElement(this.faker.definitions.person.western_zodiac_sign)}},Ow=class{N=624;M=397;MATRIX_A=2567483615;UPPER_MASK=2147483648;LOWER_MASK=2147483647;mt=Array.from({length:this.N});mti=this.N+1;unsigned32(e){return e<0?(e^this.UPPER_MASK)+this.UPPER_MASK:e}subtraction32(e,t){return e>>a&1&&(r=this.addition32(r,this.unsigned32(t<>>30)),this.mti),this.mt[this.mti]=this.unsigned32(4294967295&this.mt[this.mti])}initByArray(e,t){this.initGenrand(19650218);let r=1,a=0,i=this.N>t?this.N:t;for(;i;i--)this.mt[r]=this.addition32(this.addition32(this.unsigned32(this.mt[r]^this.multiplication32(this.unsigned32(this.mt[r-1]^this.mt[r-1]>>>30),1664525)),e[a]),a),this.mt[r]=this.unsigned32(4294967295&this.mt[r]),r++,a++,r>=this.N&&(this.mt[0]=this.mt[this.N-1],r=1),a>=t&&(a=0);for(i=this.N-1;i;i--)this.mt[r]=this.subtraction32(this.unsigned32(this.mt[r]^this.multiplication32(this.unsigned32(this.mt[r-1]^this.mt[r-1]>>>30),1566083941)),r),this.mt[r]=this.unsigned32(4294967295&this.mt[r]),r++,r>=this.N&&(this.mt[0]=this.mt[this.N-1],r=1);this.mt[0]=2147483648}mag01=[0,this.MATRIX_A];genrandInt32(){let e;if(this.mti>=this.N){let t;for(this.mti===this.N+1&&this.initGenrand(5489),t=0;t>>1^this.mag01[1&e]);for(;t>>1^this.mag01[1&e]);e=this.unsigned32(this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK),this.mt[this.N-1]=this.unsigned32(this.mt[this.M-1]^e>>>1^this.mag01[1&e]),this.mti=0}return e=this.mt[this.mti++],e=this.unsigned32(e^e>>>11),e=this.unsigned32(e^e<<7&2636928640),e=this.unsigned32(e^e<<15&4022730752),e=this.unsigned32(e^e>>>18),e}genrandInt31(){return this.genrandInt32()>>>1}genrandReal1(){return this.genrandInt32()*(1/4294967295)}genrandReal2(){return this.genrandInt32()*(1/4294967296)}genrandReal3(){return(this.genrandInt32()+.5)*(1/4294967296)}genrandRes53(){return(67108864*(this.genrandInt32()>>>5)+(this.genrandInt32()>>>6))*(1/9007199254740992)}};function Kw(){let e=new Ow;return e.initGenrand(Math.ceil(Math.random()*Number.MAX_SAFE_INTEGER)),{next:()=>e.genrandRes53(),seed(t){"number"==typeof t?e.initGenrand(t):Array.isArray(t)&&e.initByArray(t,t.length)}}}var Jw=class extends Cw{boolean(e={}){"number"==typeof e&&(e={probability:e});let{probability:t=.5}=e;return!(t<=0)&&(t>=1||this.faker.number.float(){throw new ww("You cannot edit the locale data on the faker instance")};function jw(e){let t={};return new Proxy(e,{has:()=>!0,get:(e,r)=>"symbol"==typeof r||"nodeType"===r?e[r]:r in t?t[r]:t[r]=function(e,t={}){return new Proxy(t,{has:(e,t)=>null!=e[t],get(t,r){let a=t[r];return"symbol"==typeof r||"nodeType"===r||Yw(a,e,r.toString()),a},set:Vw,deleteProperty:Vw})}(r,e[r]),set:Vw,deleteProperty:Vw})}function Yw(e,...t){if(null===e)throw new ww(`The locale data for '${t.join(".")}' aren't applicable to this locale.\n If you think this is a bug, please report it at: https://github.com/faker-js/faker`);if(void 0===e)throw new ww(`The locale data for '${t.join(".")}' are missing in this locale.\n Please contribute the missing data to the project or use a locale/Faker instance that has these data.\n For more information see https://fakerjs.dev/guide/localization.html`)}function $w(e,t="refDate"){let r=new Date(e);if(Number.isNaN(r.valueOf()))throw new ww(`Invalid ${t} date: ${e.toString()}`);return r}var Uw=class extends Cw{anytime(e={}){let{refDate:t=this.faker.defaultRefDate()}=e,r=$w(t).getTime();return this.between({from:r-31536e6,to:r+31536e6})}past(e={}){let{years:t=1,refDate:r=this.faker.defaultRefDate()}=e;if(t<=0)throw new ww("Years must be greater than 0.");let a=$w(r).getTime();return this.between({from:a-365*t*24*3600*1e3,to:a-1e3})}future(e={}){let{years:t=1,refDate:r=this.faker.defaultRefDate()}=e;if(t<=0)throw new ww("Years must be greater than 0.");let a=$w(r).getTime();return this.between({from:a+1e3,to:a+365*t*24*3600*1e3})}between(e){if(null==e||null==e.from||null==e.to)throw new ww("Must pass an options object with `from` and `to` values.");let{from:t,to:r}=e,a=$w(t,"from").getTime(),i=$w(r,"to").getTime();if(a>i)throw new ww("`from` date must be before `to` date.");return new Date(this.faker.number.int({min:a,max:i}))}betweens(e){if(null==e||null==e.from||null==e.to)throw new ww("Must pass an options object with `from` and `to` values.");let{from:t,to:r,count:a=3}=e;return this.faker.helpers.multiple((()=>this.between({from:t,to:r})),{count:a}).sort(((e,t)=>e.getTime()-t.getTime()))}recent(e={}){let{days:t=1,refDate:r=this.faker.defaultRefDate()}=e;if(t<=0)throw new ww("Days must be greater than 0.");let a=$w(r).getTime();return this.between({from:a-24*t*3600*1e3,to:a-1e3})}soon(e={}){let{days:t=1,refDate:r=this.faker.defaultRefDate()}=e;if(t<=0)throw new ww("Days must be greater than 0.");let a=$w(r).getTime();return this.between({from:a+1e3,to:a+24*t*3600*1e3})}birthdate(e={}){let{mode:t="age",min:r=18,max:a=80,refDate:i=this.faker.defaultRefDate(),mode:n,min:o,max:c}=e;if([o,c,n].filter((e=>null!=e)).length%3!=0)throw new ww("The 'min', 'max', and 'mode' options must be set together.");let l=$w(i),s=l.getUTCFullYear();switch(t){case"age":{let e=new Date(l).setUTCFullYear(s-a-1)+864e5,t=new Date(l).setUTCFullYear(s-r);if(e>t)throw new ww(`Max age ${a} should be greater than or equal to min age ${r}.`);return this.between({from:e,to:t})}case"year":{let e=new Date(Date.UTC(0,0,2)).setUTCFullYear(r),t=new Date(Date.UTC(0,11,30)).setUTCFullYear(a);if(e>t)throw new ww(`Max year ${a} should be greater than or equal to min year ${r}.`);return this.between({from:e,to:t})}}}},qw=class extends Uw{constructor(e){super(e),this.faker=e}month(e={}){let t,{abbreviated:r=!1,context:a=!1}=e,i=this.faker.definitions.date.month;t=r?a&&null!=i.abbr_context?"abbr_context":"abbr":a&&null!=i.wide_context?"wide_context":"wide";let n=i[t];return Yw(n,"date.month",t),this.faker.helpers.arrayElement(n)}weekday(e={}){let t,{abbreviated:r=!1,context:a=!1}=e,i=this.faker.definitions.date.weekday;t=r?a&&null!=i.abbr_context?"abbr_context":"abbr":a&&null!=i.wide_context?"wide_context":"wide";let n=i[t];return Yw(n,"date.weekday",t),this.faker.helpers.arrayElement(n)}timeZone(){return this.faker.helpers.arrayElement(this.faker.definitions.date.time_zone)}},Zw=/\.|\(/;function Qw(e,t,r){let[a,i]=function(e){let t=e.indexOf(")",1);if(-1===t)throw new ww(`Missing closing parenthesis in '${e}'`);for(;-1!==t;){let r=e.substring(1,t);try{return[t,JSON.parse(`[${r}]`)]}catch{if(!r.includes("'")&&!r.includes('"'))try{return[t,JSON.parse(`["${r}"]`)]}catch{}}t=e.indexOf(")",t+1)}t=e.lastIndexOf(")");let r=e.substring(1,t);return[t,[r]]}(e),n=e[a+1];switch(n){case".":case"(":case void 0:break;default:throw new ww(`Expected dot ('.'), open parenthesis ('('), or nothing after function call but got '${n}'`)}return[a+("."===n?2:1),t.map((t=>"function"==typeof t?t(...i):(console.warn(`[@faker-js/faker]: Invoking expressions which are not functions is deprecated since v9.0 and will be removed in v10.0.\nPlease remove the parentheses or replace the expression with an actual function.\n${r}\n${" ".repeat(r.length-e.length)}^`),t)))]}function Xw(e,t){let r=Zw.exec(e),a="."===(r?.[0]??""),i=r?.index??e.length,n=e.substring(0,i);if(0===n.length)throw new ww(`Expression parts cannot be empty in '${e}'`);let o=e[i+1];if(a&&(null==o||"."===o||"("===o))throw new ww(`Found dot without property name in '${e}'`);return[i+(a?1:0),t.map((e=>function(e,t){switch(typeof e){case"function":try{e=e()}catch{return}return e?.[t];case"object":return e?.[t];default:return}}(e,n)))]}function eC(e){let t=function(e){e=e.replaceAll(/[\s-]/g,"");let t=0,r=!1;for(let a=e.length-1;a>=0;a--){let i=Number.parseInt(e[a]);r&&(i*=2,i>9&&(i=i%10+1)),t+=i,r=!r}return t%10}(e.replace(/L?$/,"0"));return 0===t?0:10-t}function tC(e,t,r,a){let i=1;if(t)switch(t){case"?":i=e.datatype.boolean()?0:1;break;case"*":{let t=1;for(;e.datatype.boolean();)t*=2;i=e.number.int({min:0,max:t});break}case"+":{let t=1;for(;e.datatype.boolean();)t*=2;i=e.number.int({min:1,max:t});break}default:throw new ww("Unknown quantifier symbol provided.")}else null!=r&&null!=a?i=e.number.int({min:Number.parseInt(r),max:Number.parseInt(a)}):null!=r&&null==a&&(i=Number.parseInt(r));return i}function rC(e,t="",r="#"){let a="";for(let i=0;ia&&(i=a,a=r,r=i),n=e.number.int({min:r,max:a}),t=t.slice(0,s.index)+s[1].repeat(n)+t.slice(s.index+s[0].length),s=o.exec(t);for(s=c.exec(t);null!=s;)n=Number.parseInt(s[2]),t=t.slice(0,s.index)+s[1].repeat(n)+t.slice(s.index+s[0].length),s=c.exec(t);for(s=l.exec(t);null!=s;)r=Number.parseInt(s[1]),a=Number.parseInt(s[2]),r>a&&(i=a,a=r,r=i),t=t.slice(0,s.index)+e.number.int({min:r,max:a}).toString()+t.slice(s.index+s[0].length),s=l.exec(t);return t}(this.faker,e);let r=eC(e=rC(this.faker,e,t));return e.replace("L",String(r))}fromRegExp(e){let t=!1;e instanceof RegExp&&(t=e.flags.includes("i"),e=e.toString(),e=/\/(.+?)\//.exec(e)?.[1]??"");let r,a,i,n=/([.A-Za-z0-9])(?:\{(\d+)(?:,(\d+)|)\}|(\?|\*|\+))(?![^[]*]|[^{]*})/,o=n.exec(e);for(;null!=o;){let t=o[2],r=o[3],a=o[4];i=tC(this.faker,a,t,r),e=e.slice(0,o.index)+o[1].repeat(i)+e.slice(o.index+o[0].length),o=n.exec(e)}let c=/(\d-\d|\w-\w|\d|\w|[-!@#$&()`.+,/"])/,l=/\[(\^|)(-|)(.+?)\](?:\{(\d+)(?:,(\d+)|)\}|(\?|\*|\+)|)/;for(o=l.exec(e);null!=o;){let n="^"===o[1],s="-"===o[2],u=o[4],h=o[5],d=o[6],p=[],y=o[3],f=c.exec(y);for(s&&p.push(45);null!=f;){if(f[0].includes("-")){let e=f[0].split("-").map((e=>e.codePointAt(0)??Number.NaN));if(r=e[0],a=e[1],r>a)throw new ww("Character range provided is out of order.");for(let e=r;e<=a;e++)if(t&&Number.isNaN(Number(String.fromCodePoint(e)))){let t=String.fromCodePoint(e);p.push(t.toUpperCase().codePointAt(0)??Number.NaN,t.toLowerCase().codePointAt(0)??Number.NaN)}else p.push(e)}else t&&Number.isNaN(Number(f[0]))?p.push(f[0].toUpperCase().codePointAt(0)??Number.NaN,f[0].toLowerCase().codePointAt(0)??Number.NaN):p.push(f[0].codePointAt(0)??Number.NaN);y=y.substring(f[0].length),f=c.exec(y)}if(i=tC(this.faker,d,u,h),n){let e=-1;for(let t=48;t<=57;t++)e=p.indexOf(t),e>-1?p.splice(e,1):p.push(t);for(let t=65;t<=90;t++)e=p.indexOf(t),e>-1?p.splice(e,1):p.push(t);for(let t=97;t<=122;t++)e=p.indexOf(t),e>-1?p.splice(e,1):p.push(t)}let m=this.multiple((()=>String.fromCodePoint(this.arrayElement(p))),{count:i}).join("");e=e.slice(0,o.index)+m+e.slice(o.index+o[0].length),o=l.exec(e)}let s=/(.)\{(\d+),(\d+)\}/;for(o=s.exec(e);null!=o;){if(r=Number.parseInt(o[2]),a=Number.parseInt(o[3]),r>a)throw new ww("Numbers out of order in {} quantifier.");i=this.faker.number.int({min:r,max:a}),e=e.slice(0,o.index)+o[1].repeat(i)+e.slice(o.index+o[0].length),o=s.exec(e)}let u=/(.)\{(\d+)\}/;for(o=u.exec(e);null!=o;)i=Number.parseInt(o[2]),e=e.slice(0,o.index)+o[1].repeat(i)+e.slice(o.index+o[0].length),o=u.exec(e);return e}shuffle(e,t={}){let{inplace:r=!1}=t;r||(e=[...e]);for(let t=e.length-1;t>0;--t){let r=this.faker.number.int(t);[e[t],e[r]]=[e[r],e[t]]}return e}uniqueArray(e,t){if(Array.isArray(e)){let r=[...new Set(e)];return this.shuffle(r).splice(0,t)}let r=new Set;try{if("function"==typeof e){let a=1e3*t,i=0;for(;r.size1?this.faker.number.int({max:e.length-1}):0]}weightedArrayElement(e){if(0===e.length)throw new ww("weightedArrayElement expects an array with at least one element");if(!e.every((e=>e.weight>0)))throw new ww("weightedArrayElement expects an array of { weight, value } objects where weight is a positive number");let t=e.reduce(((e,{weight:t})=>e+t),0),r=this.faker.number.float({min:0,max:t}),a=0;for(let{weight:t,value:i}of e)if(a+=t,r=e.length)return this.shuffle(e);if(r<=0)return[];let a,i,n=[...e],o=e.length,c=o-r;for(;o-- >c;)i=this.faker.number.int(o),a=n[i],n[i]=n[o],n[o]=a;return n.slice(c)}enumValue(e){let t=Object.keys(e).filter((e=>Number.isNaN(Number(e))));return e[this.arrayElement(t)]}rangeToNumber(e){return"number"==typeof e?e:this.faker.number.int(e)}multiple(e,t={}){let r=this.rangeToNumber(t.count??3);return r<=0?[]:Array.from({length:r},e)}},iC=class extends aC{constructor(e){super(e),this.faker=e}fake(e){let t=(e="string"==typeof e?e:this.arrayElement(e)).search(/{{[a-z]/),r=e.indexOf("}}",t);if(-1===t||-1===r)return e;let a=function(e,t,r=[t,t.rawDefinitions]){if(0===e.length)throw new ww("Eval expression cannot be empty.");if(0===r.length)throw new ww("Eval entrypoints cannot be empty.");let a=r,i=e;do{let r;i.startsWith("(")?[r,a]=Qw(i,a,e):[r,a]=Xw(i,a),i=i.substring(r),a=a.filter((e=>null!=e)).map((e=>Array.isArray(e)?t.helpers.arrayElement(e):e))}while(i.length>0&&a.length>0);if(0===a.length)throw new ww(`Cannot resolve expression '${e}'`);let n=a[0];return"function"==typeof n?n():n}(e.substring(t+2,r+2).replace("}}","").replace("{{",""),this.faker),i=String(a),n=e.substring(0,t)+i+e.substring(r+2);return this.fake(n)}},nC=class extends Cw{int(e={}){"number"==typeof e&&(e={max:e});let{min:t=0,max:r=Number.MAX_SAFE_INTEGER,multipleOf:a=1}=e;if(!Number.isInteger(a))throw new ww("multipleOf should be an integer.");if(a<=0)throw new ww("multipleOf should be greater than 0.");let i=Math.ceil(t/a),n=Math.floor(r/a);if(i===n)return i*a;if(n=t?`No suitable integer value between ${t} and ${r} found.`:`Max ${r} should be greater than min ${t}.`);let o=this.faker._randomizer.next(),c=n-i+1;return Math.floor(o*c+i)*a}float(e={}){"number"==typeof e&&(e={max:e});let{min:t=0,max:r=1,fractionDigits:a,multipleOf:i,multipleOf:n=(null==a?void 0:10**-a)}=e;if(r===t)return t;if(rthis.faker.helpers.arrayElement(e)),{count:t}).join("")}alpha(e={}){"number"==typeof e&&(e={length:e});let t=this.faker.helpers.rangeToNumber(e.length??1);if(t<=0)return"";let r,{casing:a="mixed"}=e,{exclude:i=[]}=e;switch("string"==typeof i&&(i=[...i]),a){case"upper":r=[...oC];break;case"lower":r=[...cC];break;case"mixed":r=[...cC,...oC]}return r=r.filter((e=>!i.includes(e))),this.fromCharacters(r,t)}alphanumeric(e={}){"number"==typeof e&&(e={length:e});let t=this.faker.helpers.rangeToNumber(e.length??1);if(t<=0)return"";let{casing:r="mixed"}=e,{exclude:a=[]}=e;"string"==typeof a&&(a=[...a]);let i=[...lC];switch(r){case"upper":i.push(...oC);break;case"lower":i.push(...cC);break;case"mixed":i.push(...cC,...oC)}return i=i.filter((e=>!a.includes(e))),this.fromCharacters(i,t)}binary(e={}){let{prefix:t="0b"}=e,r=t;return r+=this.fromCharacters(["0","1"],e.length??1),r}octal(e={}){let{prefix:t="0o"}=e,r=t;return r+=this.fromCharacters(["0","1","2","3","4","5","6","7"],e.length??1),r}hexadecimal(e={}){let{casing:t="mixed",prefix:r="0x"}=e,a=this.faker.helpers.rangeToNumber(e.length??1);if(a<=0)return r;let i=this.fromCharacters(["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f","A","B","C","D","E","F"],a);return"upper"===t?i=i.toUpperCase():"lower"===t&&(i=i.toLowerCase()),`${r}${i}`}numeric(e={}){"number"==typeof e&&(e={length:e});let t=this.faker.helpers.rangeToNumber(e.length??1);if(t<=0)return"";let{allowLeadingZeros:r=!0}=e,{exclude:a=[]}=e;"string"==typeof a&&(a=[...a]);let i=lC.filter((e=>!a.includes(e)));if(0===i.length||1===i.length&&!r&&"0"===i[0])throw new ww("Unable to generate numeric string, because all possible digits are excluded.");let n="";return!r&&!a.includes("0")&&(n+=this.faker.helpers.arrayElement(i.filter((e=>"0"!==e)))),n+=this.fromCharacters(i,t-n.length),n}sample(e=10){e=this.faker.helpers.rangeToNumber(e);let t={min:33,max:125},r="";for(;r.lengththis.faker.number.hex({min:0,max:15}))).replaceAll("y",(()=>this.faker.number.hex({min:8,max:11})))}nanoid(e=21){if((e=this.faker.helpers.rangeToNumber(e))<=0)return"";let t=[{value:()=>this.alphanumeric(1),weight:62},{value:()=>this.faker.helpers.arrayElement(["_","-"]),weight:2}],r="";for(;r.length","?","@","[","\\","]","^","_","`","{","|","}","~"],e)}},uC=class{_defaultRefDate=()=>new Date;get defaultRefDate(){return this._defaultRefDate}setDefaultRefDate(e=()=>new Date){this._defaultRefDate="function"==typeof e?e:()=>new Date(e)}_randomizer;datatype=new Jw(this);date=new Uw(this);helpers=new aC(this);number=new nC(this);string=new sC(this);constructor(e={}){let{randomizer:t=Kw()}=e;this._randomizer=t}seed(e=Math.ceil(Math.random()*Number.MAX_SAFE_INTEGER)){return this._randomizer.seed(e),e}};function hC(e){let t=`[@faker-js/faker]: ${e.deprecated} is deprecated`;e.since&&(t+=` since v${e.since}`),e.until&&(t+=` and will be removed in v${e.until}`),e.proposed&&(t+=`. Please use ${e.proposed} instead`),console.warn(`${t}.`)}new uC;var dC=class extends _w{dog(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.dog)}cat(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.cat)}snake(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.snake)}bear(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.bear)}lion(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.lion)}cetacean(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.cetacean)}horse(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.horse)}bird(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.bird)}cow(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.cow)}fish(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.fish)}crocodilia(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.crocodilia)}insect(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.insect)}rabbit(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.rabbit)}rodent(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.rodent)}type(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.type)}},pC={0:[[1999999,2],[2279999,3],[2289999,4],[3689999,3],[3699999,4],[6389999,3],[6397999,4],[6399999,7],[6449999,3],[6459999,7],[6479999,3],[6489999,7],[6549999,3],[6559999,4],[6999999,3],[8499999,4],[8999999,5],[9499999,6],[9999999,7]],1:[[99999,3],[299999,2],[349999,3],[399999,4],[499999,3],[699999,2],[999999,4],[3979999,3],[5499999,4],[6499999,5],[6799999,4],[6859999,5],[7139999,4],[7169999,3],[7319999,4],[7399999,7],[7749999,5],[7753999,7],[7763999,5],[7764999,7],[7769999,5],[7782999,7],[7899999,5],[7999999,4],[8004999,5],[8049999,5],[8379999,5],[8384999,7],[8671999,5],[8675999,4],[8697999,5],[9159999,6],[9165059,7],[9168699,6],[9169079,7],[9195999,6],[9196549,7],[9729999,6],[9877999,4],[9911499,6],[9911999,7],[9989899,6],[9999999,7]]},yC=class extends _w{department(){return this.faker.helpers.arrayElement(this.faker.definitions.commerce.department)}productName(){return`${this.productAdjective()} ${this.productMaterial()} ${this.product()}`}price(e={}){let{dec:t=2,max:r=1e3,min:a=1,symbol:i=""}=e;if(a<0||r<0)return`${i}0`;if(a===r)return`${i}${a.toFixed(t)}`;let n=this.faker.number.float({min:a,max:r,fractionDigits:t});if(0===t)return`${i}${n.toFixed(t)}`;let o=.1**t,c=n-n*10**t%10*o+this.faker.helpers.weightedArrayElement([{weight:5,value:9},{weight:3,value:5},{weight:1,value:0},{weight:1,value:this.faker.number.int({min:0,max:9})}])*o;return a<=c&&c<=r?`${i}${c.toFixed(t)}`:`${i}${n.toFixed(t)}`}productAdjective(){return this.faker.helpers.arrayElement(this.faker.definitions.commerce.product_name.adjective)}productMaterial(){return this.faker.helpers.arrayElement(this.faker.definitions.commerce.product_name.material)}product(){return this.faker.helpers.arrayElement(this.faker.definitions.commerce.product_name.product)}productDescription(){return this.faker.helpers.arrayElement(this.faker.definitions.commerce.product_description)}isbn(e={}){"number"==typeof e&&(e={variant:e});let{variant:t=13,separator:r="-"}=e,[a,i]=this.faker.helpers.objectEntry(pC),n=this.faker.string.numeric(8),o=Number.parseInt(n.slice(0,-1)),c=i.find((([e])=>o<=e))?.[1];if(!c)throw new ww(`Unable to find a registrant length for the group ${a}`);let l=["978",a,n.slice(0,c),n.slice(c)];10===t&&l.shift();let s=l.join(""),u=0;for(let e=0;e{let t=0;for(let r of e)t=(10*t+ +r)%97;return t},pattern10:["01","02","03","04","05","06","07","08","09"],pattern100:["001","002","003","004","005","006","007","008","009"],toDigitString:e=>e.replaceAll(/[A-Z]/gi,(e=>String((e.toUpperCase().codePointAt(0)??Number.NaN)-55)))},bC=gC;var vC=class extends _w{accountNumber(e={}){"number"==typeof e&&(e={length:e});let{length:t=8}=e;return this.faker.string.numeric({length:t,allowLeadingZeros:!0})}accountName(){return[this.faker.helpers.arrayElement(this.faker.definitions.finance.account_type),"Account"].join(" ")}routingNumber(){let e=this.faker.string.numeric({length:8,allowLeadingZeros:!0}),t=0;for(let r=0;re.country===t)):this.faker.helpers.arrayElement(bC.formats);if(!a)throw new ww(`Country code ${t} not supported.`);let i="",n=0;for(let e of a.bban){let t=e.count;for(n+=e.count;t>0;)"a"===e.type?i+=this.faker.helpers.arrayElement(bC.alpha):"c"===e.type?this.faker.datatype.boolean(.8)?i+=this.faker.number.int(9):i+=this.faker.helpers.arrayElement(bC.alpha):t>=3&&this.faker.datatype.boolean(.3)?this.faker.datatype.boolean()?(i+=this.faker.helpers.arrayElement(bC.pattern100),t-=2):(i+=this.faker.helpers.arrayElement(bC.pattern10),t--):i+=this.faker.number.int(9),t--;i=i.substring(0,n)}let o=98-bC.mod97(bC.toDigitString(`${i}${a.country}00`));o<10&&(o=`0${o}`);let c=`${a.country}${o}${i}`;return r?function(e){let t="";for(let r=0;re.split(" ").map((e=>e.charAt(0).toUpperCase()+e.slice(1))).join(" ");return this.faker.datatype.boolean()?e(this.faker.helpers.fake(this.faker.definitions.food.dish_pattern)):e(this.faker.helpers.arrayElement(this.faker.definitions.food.dish))}ethnicCategory(){return this.faker.helpers.arrayElement(this.faker.definitions.food.ethnic_category)}fruit(){return this.faker.helpers.arrayElement(this.faker.definitions.food.fruit)}ingredient(){return this.faker.helpers.arrayElement(this.faker.definitions.food.ingredient)}meat(){return this.faker.helpers.arrayElement(this.faker.definitions.food.meat)}spice(){return this.faker.helpers.arrayElement(this.faker.definitions.food.spice)}vegetable(){return this.faker.helpers.arrayElement(this.faker.definitions.food.vegetable)}},kC=class extends _w{branch(){return`${this.faker.hacker.noun().replace(" ","-")}-${this.faker.hacker.verb().replace(" ","-")}`}commitEntry(e={}){let{merge:t=this.faker.datatype.boolean({probability:.2}),eol:r="CRLF",refDate:a}=e,i=[`commit ${this.faker.git.commitSha()}`];t&&i.push(`Merge: ${this.commitSha({length:7})} ${this.commitSha({length:7})}`);let n=this.faker.person.firstName(),o=this.faker.person.lastName(),c=this.faker.person.fullName({firstName:n,lastName:o}),l=this.faker.internet.userName({firstName:n,lastName:o}),s=this.faker.helpers.arrayElement([c,l]),u=this.faker.internet.email({firstName:n,lastName:o});s=s.replaceAll(/^[.,:;"\\']|[<>\n]|[.,:;"\\']$/g,""),i.push(`Author: ${s} <${u}>`,`Date: ${this.commitDate({refDate:a})}`,"",`${" ".repeat(4)}${this.commitMessage()}`,"");let h="CRLF"===r?"\r\n":"\n";return i.join(h)}commitMessage(){return`${this.faker.hacker.verb()} ${this.faker.hacker.adjective()} ${this.faker.hacker.noun()}`}commitDate(e={}){let{refDate:t=this.faker.defaultRefDate()}=e,r=this.faker.date.recent({days:1,refDate:t}),a=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"][r.getUTCDay()],i=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"][r.getUTCMonth()],n=r.getUTCDate(),o=r.getUTCHours().toString().padStart(2,"0"),c=r.getUTCMinutes().toString().padStart(2,"0"),l=r.getUTCSeconds().toString().padStart(2,"0"),s=r.getUTCFullYear(),u=this.faker.number.int({min:-11,max:12});return`${a} ${i} ${n} ${o}:${c}:${l} ${s} ${u>=0?"+":"-"}${Math.abs(u).toString().padStart(2,"0")}00`}commitSha(e={}){let{length:t=40}=e;return this.faker.string.hexadecimal({length:t,casing:"lower",prefix:""})}},wC=class extends _w{abbreviation(){return this.faker.helpers.arrayElement(this.faker.definitions.hacker.abbreviation)}adjective(){return this.faker.helpers.arrayElement(this.faker.definitions.hacker.adjective)}noun(){return this.faker.helpers.arrayElement(this.faker.definitions.hacker.noun)}verb(){return this.faker.helpers.arrayElement(this.faker.definitions.hacker.verb)}ingverb(){return this.faker.helpers.arrayElement(this.faker.definitions.hacker.ingverb)}phrase(){let e={abbreviation:this.abbreviation,adjective:this.adjective,ingverb:this.ingverb,noun:this.noun,verb:this.verb},t=this.faker.helpers.arrayElement(this.faker.definitions.hacker.phrase);return this.faker.helpers.mustache(t,e)}},CC=typeof Buffer>"u"?e=>{let t=(new TextEncoder).encode(e),r=Array.from(t,(e=>String.fromCodePoint(e))).join("");return btoa(r)}:e=>Buffer.from(e).toString("base64"),_C=class extends _w{avatar(){return this.avatarGitHub()}avatarGitHub(){return`https://avatars.githubusercontent.com/u/${this.faker.number.int(1e8)}`}avatarLegacy(){return hC({deprecated:"faker.image.avatarLegacy()",proposed:"faker.image.avatar()",since:"9.0.2",until:"10.0.0"}),`https://cloudflare-ipfs.com/ipfs/Qmd3W5DuhgHirLHGVixi6V76LhCkZUz6pnFt5AJBiyvHye/avatar/${this.faker.number.int(1249)}.jpg`}url(e={}){let{width:t=this.faker.number.int({min:1,max:3999}),height:r=this.faker.number.int({min:1,max:3999})}=e;return this.faker.helpers.arrayElement([this.urlLoremFlickr,({width:e,height:t})=>this.urlPicsumPhotos({width:e,height:t,grayscale:!1,blur:0})])({width:t,height:r})}urlLoremFlickr(e={}){let{width:t=this.faker.number.int({min:1,max:3999}),height:r=this.faker.number.int({min:1,max:3999}),category:a}=e;return`https://loremflickr.com/${t}/${r}${null==a?"":`/${a}`}?lock=${this.faker.number.int()}`}urlPicsumPhotos(e={}){let{width:t=this.faker.number.int({min:1,max:3999}),height:r=this.faker.number.int({min:1,max:3999}),grayscale:a=this.faker.datatype.boolean(),blur:i=this.faker.number.int({max:10})}=e,n=`https://picsum.photos/seed/${this.faker.string.alphanumeric({length:{min:5,max:10}})}/${t}/${r}`,o="number"==typeof i&&i>=1&&i<=10;return(a||o)&&(n+="?",a&&(n+="grayscale"),a&&o&&(n+="&"),o&&(n+=`blur=${i}`)),n}urlPlaceholder(e={}){let{width:t=this.faker.number.int({min:1,max:3999}),height:r=this.faker.number.int({min:1,max:3999}),backgroundColor:a=this.faker.color.rgb({format:"hex",prefix:""}),textColor:i=this.faker.color.rgb({format:"hex",prefix:""}),format:n=this.faker.helpers.arrayElement(["gif","jpeg","jpg","png","webp"]),text:o=this.faker.lorem.words()}=e,c="https://via.placeholder.com";return c+=`/${t}`,c+=`x${r}`,c+=`/${a}`,c+=`/${i}`,c+=`.${n}`,c+=`?text=${encodeURIComponent(o)}`,c}dataUri(e={}){let{width:t=this.faker.number.int({min:1,max:3999}),height:r=this.faker.number.int({min:1,max:3999}),color:a=this.faker.color.rgb(),type:i=this.faker.helpers.arrayElements(["svg-uri","svg-base64"])}=e,n=`${t}x${r}`;return"svg-uri"===i?`data:image/svg+xml;charset=UTF-8,${encodeURIComponent(n)}`:`data:image/svg+xml;base64,${CC(n)}`}},SC=Object.fromEntries([["А","A"],["а","a"],["Б","B"],["б","b"],["В","V"],["в","v"],["Г","G"],["г","g"],["Д","D"],["д","d"],["ъе","ye"],["Ъе","Ye"],["ъЕ","yE"],["ЪЕ","YE"],["Е","E"],["е","e"],["Ё","Yo"],["ё","yo"],["Ж","Zh"],["ж","zh"],["З","Z"],["з","z"],["И","I"],["и","i"],["ый","iy"],["Ый","Iy"],["ЫЙ","IY"],["ыЙ","iY"],["Й","Y"],["й","y"],["К","K"],["к","k"],["Л","L"],["л","l"],["М","M"],["м","m"],["Н","N"],["н","n"],["О","O"],["о","o"],["П","P"],["п","p"],["Р","R"],["р","r"],["С","S"],["с","s"],["Т","T"],["т","t"],["У","U"],["у","u"],["Ф","F"],["ф","f"],["Х","Kh"],["х","kh"],["Ц","Ts"],["ц","ts"],["Ч","Ch"],["ч","ch"],["Ш","Sh"],["ш","sh"],["Щ","Sch"],["щ","sch"],["Ъ",""],["ъ",""],["Ы","Y"],["ы","y"],["Ь",""],["ь",""],["Э","E"],["э","e"],["Ю","Yu"],["ю","yu"],["Я","Ya"],["я","ya"]]),AC=Object.fromEntries([["α","a"],["β","v"],["γ","g"],["δ","d"],["ε","e"],["ζ","z"],["η","i"],["θ","th"],["ι","i"],["κ","k"],["λ","l"],["μ","m"],["ν","n"],["ξ","ks"],["ο","o"],["π","p"],["ρ","r"],["σ","s"],["τ","t"],["υ","y"],["φ","f"],["χ","x"],["ψ","ps"],["ω","o"],["ά","a"],["έ","e"],["ί","i"],["ό","o"],["ύ","y"],["ή","i"],["ώ","o"],["ς","s"],["ϊ","i"],["ΰ","y"],["ϋ","y"],["ΐ","i"],["Α","A"],["Β","B"],["Γ","G"],["Δ","D"],["Ε","E"],["Ζ","Z"],["Η","I"],["Θ","TH"],["Ι","I"],["Κ","K"],["Λ","L"],["Μ","M"],["Ν","N"],["Ξ","KS"],["Ο","O"],["Π","P"],["Ρ","R"],["Σ","S"],["Τ","T"],["Υ","Y"],["Φ","F"],["Χ","X"],["Ψ","PS"],["Ω","O"],["Ά","A"],["Έ","E"],["Ί","I"],["Ό","O"],["Ύ","Y"],["Ή","I"],["Ώ","O"],["Ϊ","I"],["Ϋ","Y"]]),MC=Object.fromEntries([["ء","e"],["آ","a"],["أ","a"],["ؤ","w"],["إ","i"],["ئ","y"],["ا","a"],["ب","b"],["ة","t"],["ت","t"],["ث","th"],["ج","j"],["ح","h"],["خ","kh"],["د","d"],["ذ","dh"],["ر","r"],["ز","z"],["س","s"],["ش","sh"],["ص","s"],["ض","d"],["ط","t"],["ظ","z"],["ع","e"],["غ","gh"],["ـ","_"],["ف","f"],["ق","q"],["ك","k"],["ل","l"],["م","m"],["ن","n"],["ه","h"],["و","w"],["ى","a"],["ي","y"],["َ‎","a"],["ُ","u"],["ِ‎","i"]]),TC=Object.fromEntries([["ա","a"],["Ա","A"],["բ","b"],["Բ","B"],["գ","g"],["Գ","G"],["դ","d"],["Դ","D"],["ե","ye"],["Ե","Ye"],["զ","z"],["Զ","Z"],["է","e"],["Է","E"],["ը","y"],["Ը","Y"],["թ","t"],["Թ","T"],["ժ","zh"],["Ժ","Zh"],["ի","i"],["Ի","I"],["լ","l"],["Լ","L"],["խ","kh"],["Խ","Kh"],["ծ","ts"],["Ծ","Ts"],["կ","k"],["Կ","K"],["հ","h"],["Հ","H"],["ձ","dz"],["Ձ","Dz"],["ղ","gh"],["Ղ","Gh"],["ճ","tch"],["Ճ","Tch"],["մ","m"],["Մ","M"],["յ","y"],["Յ","Y"],["ն","n"],["Ն","N"],["շ","sh"],["Շ","Sh"],["ո","vo"],["Ո","Vo"],["չ","ch"],["Չ","Ch"],["պ","p"],["Պ","P"],["ջ","j"],["Ջ","J"],["ռ","r"],["Ռ","R"],["ս","s"],["Ս","S"],["վ","v"],["Վ","V"],["տ","t"],["Տ","T"],["ր","r"],["Ր","R"],["ց","c"],["Ց","C"],["ու","u"],["ՈՒ","U"],["Ու","U"],["փ","p"],["Փ","P"],["ք","q"],["Ք","Q"],["օ","o"],["Օ","O"],["ֆ","f"],["Ֆ","F"],["և","yev"]]),BC={...SC,...AC,...MC,...Object.fromEntries([["چ","ch"],["ک","k"],["گ","g"],["پ","p"],["ژ","zh"],["ی","y"]]),...TC,...Object.fromEntries([["א","a"],["ב","b"],["ג","g"],["ד","d"],["ה","h"],["ו","v"],["ז","z"],["ח","ch"],["ט","t"],["י","y"],["כ","k"],["ך","kh"],["ל","l"],["ם","m"],["מ","m"],["ן","n"],["נ","n"],["ס","s"],["ע","a"],["פ","f"],["ף","ph"],["צ","ts"],["ץ","ts"],["ק","k"],["ר","r"],["ש","sh"],["ת","t"],["ו","v"]])};function LC(e){let t=()=>e.helpers.arrayElement(["AB","AF","AN","AR","AS","AZ","BE","BG","BN","BO","BR","BS","CA","CE","CO","CS","CU","CY","DA","DE","EL","EN","EO","ES","ET","EU","FA","FI","FJ","FO","FR","FY","GA","GD","GL","GV","HE","HI","HR","HT","HU","HY","ID","IS","IT","JA","JV","KA","KG","KO","KU","KW","KY","LA","LB","LI","LN","LT","LV","MG","MK","MN","MO","MS","MT","MY","NB","NE","NL","NN","NO","OC","PL","PT","RM","RO","RU","SC","SE","SK","SL","SO","SQ","SR","SV","SW","TK","TR","TY","UK","UR","UZ","VI","VO","YI","ZH"]),r=t=>e.helpers.arrayElement({lin:["i686","x86_64"],mac:["Intel","PPC","U; Intel","U; PPC"],win:["","WOW64","Win64; x64"]}[t]),a={net:()=>[e.number.int({min:1,max:4}),e.number.int(9),e.number.int({min:1e4,max:99999}),e.number.int(9)].join("."),nt:()=>[e.number.int({min:5,max:6}),e.number.int(3)].join("."),ie:()=>e.number.int({min:7,max:11}),trident:()=>[e.number.int({min:3,max:7}),e.number.int(1)].join("."),osx:t=>[10,e.number.int({min:5,max:10}),e.number.int(9)].join(t||"."),chrome:()=>[e.number.int({min:13,max:39}),0,e.number.int({min:800,max:899}),0].join("."),presto:()=>`2.9.${e.number.int({min:160,max:190})}`,presto2:()=>`${e.number.int({min:10,max:12})}.00`,safari:()=>[e.number.int({min:531,max:538}),e.number.int(2),e.number.int(2)].join(".")},i={firefox(t){let i=`${e.number.int({min:5,max:15})}${(t=>{let r="";for(let a=0;a=11?`Mozilla/5.0 (Windows NT 6.${e.number.int({min:1,max:3})}; Trident/7.0; ${e.datatype.boolean()?"Touch; ":""}rv:11.0) like Gecko`:`Mozilla/5.0 (compatible; MSIE ${t}.0; Windows NT ${a.nt()}; Trident/${a.trident()}${e.datatype.boolean()?`; .NET CLR ${a.net()}`:""})`},opera(i){let n=` Presto/${a.presto()} Version/${a.presto2()})`,o="win"===i?`(Windows NT ${a.nt()}; U; ${t()}${n}`:"lin"===i?`(X11; Linux ${r(i)}; U; ${t()}${n}`:`(Macintosh; Intel Mac OS X ${a.osx()} U; ${t()} Presto/${a.presto()} Version/${a.presto2()})`;return`Opera/${e.number.int({min:9,max:14})}.${e.number.int(99)} ${o}`},safari(i){let n=a.safari(),o=`${e.number.int({min:4,max:7})}.${e.number.int(1)}.${e.number.int(10)}`;return`Mozilla/5.0 ${"mac"===i?`(Macintosh; ${r("mac")} Mac OS X ${a.osx("_")} rv:${e.number.int({min:2,max:6})}.0; ${t()}) `:`(Windows; U; Windows NT ${a.nt()})`}AppleWebKit/${n} (KHTML, like Gecko) Version/${o} Safari/${n}`},chrome(e){let t=a.safari();return`Mozilla/5.0 ${"mac"===e?`(Macintosh; ${r("mac")} Mac OS X ${a.osx("_")}) `:"win"===e?`(Windows; U; Windows NT ${a.nt()})`:`(X11; Linux ${r(e)}`} AppleWebKit/${t} (KHTML, like Gecko) Chrome/${a.chrome()} Safari/${t}`}},[n,o]=(()=>{let t={chrome:["win","mac","lin"],firefox:["win","mac","lin"],opera:["win","mac","lin"],safari:["win","mac"],iexplorer:["win"]},r=e.helpers.objectKey(t);return[r,e.helpers.arrayElement(t[r])]})();return i[n](o)}var EC=class extends _w{email(e={}){let{firstName:t,lastName:r,provider:a=this.faker.helpers.arrayElement(this.faker.definitions.internet.free_email),allowSpecialCharacters:i=!1}=e,n=this.userName({firstName:t,lastName:r});if(n=n.replaceAll(/[^A-Za-z0-9._+-]+/g,""),n=n.substring(0,50),i){let e=[..."._-"],t=[...".!#$%&'*+-/=?^_`{|}~"];n=n.replace(this.faker.helpers.arrayElement(e),this.faker.helpers.arrayElement(t))}return n=n.replaceAll(/\.{2,}/g,"."),n=n.replace(/^\./,""),n=n.replace(/\.$/,""),`${n}@${a}`}exampleEmail(e={}){let{firstName:t,lastName:r,allowSpecialCharacters:a=!1}=e,i=this.faker.helpers.arrayElement(this.faker.definitions.internet.example_email);return this.email({firstName:t,lastName:r,provider:i,allowSpecialCharacters:a})}userName(e={}){let{firstName:t=this.faker.person.firstName(),lastName:r=this.faker.person.lastName(),lastName:a}=e,i=this.faker.helpers.arrayElement([".","_"]),n=this.faker.number.int(99),o=[()=>`${t}${i}${r}${n}`,()=>`${t}${i}${r}`];a||o.push((()=>`${t}${n}`));let c=this.faker.helpers.arrayElement(o)();return c=c.normalize("NFKD").replaceAll(/[\u0300-\u036F]/g,""),c=[...c].map((e=>{if(BC[e])return BC[e];let t=e.codePointAt(0)??Number.NaN;return t<128?e:t.toString(36)})).join(""),c=c.toString().replaceAll("'",""),c=c.replaceAll(" ",""),c}displayName(e={}){let{firstName:t=this.faker.person.firstName(),lastName:r=this.faker.person.lastName()}=e,a=this.faker.helpers.arrayElement([".","_"]),i=this.faker.number.int(99),n=[()=>`${t}${i}`,()=>`${t}${a}${r}`,()=>`${t}${a}${r}${i}`],o=this.faker.helpers.arrayElement(n)();return o=o.toString().replaceAll("'",""),o=o.replaceAll(" ",""),o}protocol(){return this.faker.helpers.arrayElement(["http","https"])}httpMethod(){return this.faker.helpers.arrayElement(["GET","POST","PUT","DELETE","PATCH"])}httpStatusCode(e={}){let{types:t=Object.keys(this.faker.definitions.internet.http_status_code)}=e,r=this.faker.helpers.arrayElement(t);return this.faker.helpers.arrayElement(this.faker.definitions.internet.http_status_code[r])}url(e={}){let{appendSlash:t=this.faker.datatype.boolean(),protocol:r="https"}=e;return`${r}://${this.domainName()}${t?"/":""}`}domainName(){return`${this.domainWord()}.${this.domainSuffix()}`}domainSuffix(){return this.faker.helpers.arrayElement(this.faker.definitions.internet.domain_suffix)}domainWord(){return this.faker.helpers.slugify(`${this.faker.word.adjective()}-${this.faker.word.noun()}`).toLowerCase()}ip(){return this.faker.datatype.boolean()?this.ipv4():this.ipv6()}ipv4(){return Array.from({length:4},(()=>this.faker.number.int(255))).join(".")}ipv6(){return Array.from({length:8},(()=>this.faker.string.hexadecimal({length:4,casing:"lower",prefix:""}))).join(":")}port(){return this.faker.number.int(65535)}userAgent(){return LC(this.faker)}color(e={}){let{redBase:t=0,greenBase:r=0,blueBase:a=0}=e,i=e=>Math.floor((this.faker.number.int(256)+e)/2).toString(16).padStart(2,"0");return`#${i(t)}${i(r)}${i(a)}`}mac(e={}){"string"==typeof e&&(e={separator:e});let t,{separator:r=":"}=e,a="";for([":","-",""].includes(r)||(r=":"),t=0;t<12;t++)a+=this.faker.number.hex(15),t%2==1&&11!==t&&(a+=r);return a}password(e={}){let t=/[aeiouAEIOU]$/,r=/[bcdfghjklmnpqrstvwxyzBCDFGHJKLMNPQRSTVWXYZ]$/,a=(e,i,n,o)=>{if(o.length>=e)return o;i&&(n=r.test(o)?t:r);let c=this.faker.number.int(94)+33,l=String.fromCodePoint(c);return i&&(l=l.toLowerCase()),n.test(l)?a(e,i,n,o+l):a(e,i,n,o)},{length:i=15,memorable:n=!1,pattern:o=/\w/,prefix:c=""}=e;return a(i,n,o,c)}emoji(e={}){let{types:t=Object.keys(this.faker.definitions.internet.emoji)}=e,r=this.faker.helpers.arrayElement(t);return this.faker.helpers.arrayElement(this.faker.definitions.internet.emoji[r])}},RC=class extends _w{zipCode(e={}){"string"==typeof e&&(e={format:e});let{state:t}=e;if(null!=t){let e=this.faker.definitions.location.postcode_by_state[t];if(null==e)throw new ww(`No zip code definition found for state "${t}"`);return this.faker.helpers.fake(e)}let{format:r=this.faker.definitions.location.postcode}=e;return"string"==typeof r&&(r=[r]),r=this.faker.helpers.arrayElement(r),this.faker.helpers.replaceSymbols(r)}city(){return this.faker.helpers.fake(this.faker.definitions.location.city_pattern)}buildingNumber(){return this.faker.helpers.arrayElement(this.faker.definitions.location.building_number).replaceAll(/#+/g,(e=>this.faker.string.numeric({length:e.length,allowLeadingZeros:!1})))}street(){return this.faker.helpers.fake(this.faker.definitions.location.street_pattern)}streetAddress(e={}){"boolean"==typeof e&&(e={useFullAddress:e});let{useFullAddress:t}=e,r=this.faker.definitions.location.street_address[t?"full":"normal"];return this.faker.helpers.fake(r)}secondaryAddress(){return this.faker.helpers.fake(this.faker.definitions.location.secondary_address).replaceAll(/#+/g,(e=>this.faker.string.numeric({length:e.length,allowLeadingZeros:!1})))}county(){return this.faker.helpers.arrayElement(this.faker.definitions.location.county)}country(){return this.faker.helpers.arrayElement(this.faker.definitions.location.country)}countryCode(e={}){"string"==typeof e&&(e={variant:e});let{variant:t="alpha-2"}=e,r=(()=>{switch(t){case"numeric":return"numeric";case"alpha-3":return"alpha3";case"alpha-2":return"alpha2"}})();return this.faker.helpers.arrayElement(this.faker.definitions.location.country_code)[r]}state(e={}){let{abbreviated:t=!1}=e,r=t?this.faker.definitions.location.state_abbr:this.faker.definitions.location.state;return this.faker.helpers.arrayElement(r)}latitude(e={}){let{max:t=90,min:r=-90,precision:a=4}=e;return this.faker.number.float({min:r,max:t,fractionDigits:a})}longitude(e={}){let{max:t=180,min:r=-180,precision:a=4}=e;return this.faker.number.float({max:t,min:r,fractionDigits:a})}direction(e={}){let{abbreviated:t=!1}=e;return t?this.faker.helpers.arrayElement([...this.faker.definitions.location.direction.cardinal_abbr,...this.faker.definitions.location.direction.ordinal_abbr]):this.faker.helpers.arrayElement([...this.faker.definitions.location.direction.cardinal,...this.faker.definitions.location.direction.ordinal])}cardinalDirection(e={}){let{abbreviated:t=!1}=e;return t?this.faker.helpers.arrayElement(this.faker.definitions.location.direction.cardinal_abbr):this.faker.helpers.arrayElement(this.faker.definitions.location.direction.cardinal)}ordinalDirection(e={}){let{abbreviated:t=!1}=e;return t?this.faker.helpers.arrayElement(this.faker.definitions.location.direction.ordinal_abbr):this.faker.helpers.arrayElement(this.faker.definitions.location.direction.ordinal)}nearbyGPSCoordinate(e={}){let{origin:t,radius:r=10,isMetric:a=!1}=e;if(null==t)return[this.latitude(),this.longitude()];let i=this.faker.number.float({max:2*Math.PI,fractionDigits:5}),n=a?r:1.60934*r,o=.995*this.faker.number.float({max:n,fractionDigits:3})/(4e4/360),c=[t[0]+Math.sin(i)*o,t[1]+Math.cos(i)*o];return c[0]=c[0]%180,(c[0]<-90||c[0]>90)&&(c[0]=180*Math.sign(c[0])-c[0],c[1]+=180),c[1]=(c[1]%360+540)%360-180,[c[0],c[1]]}timeZone(){return this.faker.helpers.arrayElement(this.faker.definitions.location.time_zone)}};var HC={fail:()=>{throw new ww("No words found that match the given length.")},closest:(e,t)=>{let r=function(e,t,r=e=>e){let a={};for(let i of e){let e=t(i);void 0===a[e]&&(a[e]=[]),a[e].push(r(i))}return a}(e,(e=>e.length)),a=Object.keys(r).map(Number),i=Math.min(...a),n=Math.max(...a),o=Math.min(t.min-i,n-t.max);return e.filter((e=>e.length===t.min-o||e.length===t.max+o))},shortest:e=>{let t=Math.min(...e.map((e=>e.length)));return e.filter((e=>e.length===t))},longest:e=>{let t=Math.max(...e.map((e=>e.length)));return e.filter((e=>e.length===t))},"any-length":e=>[...e]};function DC(e){let{wordList:t,length:r,strategy:a="any-length"}=e;if(r){let e="number"==typeof r?e=>e.length===r:e=>e.length>=r.min&&e.length<=r.max,i=t.filter(e);return i.length>0?i:"number"==typeof r?HC[a](t,{min:r,max:r}):HC[a](t,r)}return"shortest"===a||"longest"===a?HC[a](t):[...t]}var PC=class extends _w{word(e={}){let t="number"==typeof e?{length:e}:e;return this.faker.helpers.arrayElement(DC({...t,wordList:this.faker.definitions.lorem.word}))}words(e=3){return this.faker.helpers.multiple((()=>this.word()),{count:e}).join(" ")}sentence(e={min:3,max:10}){let t=this.words(e);return`${t.charAt(0).toUpperCase()+t.substring(1)}.`}slug(e=3){let t=this.words(e);return this.faker.helpers.slugify(t)}sentences(e={min:2,max:6},t=" "){return this.faker.helpers.multiple((()=>this.sentence()),{count:e}).join(t)}paragraph(e=3){return this.sentences(e)}paragraphs(e=3,t="\n"){return this.faker.helpers.multiple((()=>this.paragraph()),{count:e}).join(t)}text(){return this[this.faker.helpers.arrayElement(["sentence","sentences","paragraph","paragraphs","lines"])]()}lines(e={min:1,max:5}){return this.sentences(e,"\n")}},NC=class extends _w{album(){return this.faker.helpers.arrayElement(this.faker.definitions.music.album)}artist(){return this.faker.helpers.arrayElement(this.faker.definitions.music.artist)}genre(){return this.faker.helpers.arrayElement(this.faker.definitions.music.genre)}songName(){return this.faker.helpers.arrayElement(this.faker.definitions.music.song_name)}},GC=class extends _w{number(e={}){let{style:t="human"}=e,r=this.faker.definitions.phone_number.format[t];if(!r)throw new Error(`No definitions for ${t} in this locale`);let a=this.faker.helpers.arrayElement(r);return rC(this.faker,a)}imei(){return this.faker.helpers.replaceCreditCardSymbols("##-######-######-L","#")}},IC=class extends _w{chemicalElement(){return this.faker.helpers.arrayElement(this.faker.definitions.science.chemical_element)}unit(){return this.faker.helpers.arrayElement(this.faker.definitions.science.unit)}},WC=["video","audio","image","text","application"],FC=["application/pdf","audio/mpeg","audio/wav","image/png","image/jpeg","image/gif","video/mp4","video/mpeg","text/html"],zC=["en","wl","ww"],OC={index:"o",slot:"s",mac:"x",pci:"p"},KC=["SUN","MON","TUE","WED","THU","FRI","SAT"],JC=class extends _w{fileName(e={}){let{extensionCount:t=1}=e,r=this.faker.word.words().toLowerCase().replaceAll(/\W/g,"_"),a=this.faker.helpers.multiple((()=>this.fileExt()),{count:t}).join(".");return 0===a.length?r:`${r}.${a}`}commonFileName(e){return`${this.fileName({extensionCount:0})}.${e||this.commonFileExt()}`}mimeType(){let e=Object.keys(this.faker.definitions.system.mime_type);return this.faker.helpers.arrayElement(e)}commonFileType(){return this.faker.helpers.arrayElement(WC)}commonFileExt(){return this.fileExt(this.faker.helpers.arrayElement(FC))}fileType(){let e=this.faker.definitions.system.mime_type,t=new Set(Object.keys(e).map((e=>e.split("/")[0])));return this.faker.helpers.arrayElement([...t])}fileExt(e){let t=this.faker.definitions.system.mime_type;if("string"==typeof e)return this.faker.helpers.arrayElement(t[e].extensions);let r=new Set(Object.values(t).flatMap((({extensions:e})=>e)));return this.faker.helpers.arrayElement([...r])}directoryPath(){let e=this.faker.definitions.system.directory_path;return this.faker.helpers.arrayElement(e)}filePath(){return`${this.directoryPath()}/${this.fileName()}`}semver(){return[this.faker.number.int(9),this.faker.number.int(9),this.faker.number.int(9)].join(".")}networkInterface(e={}){let t,{interfaceType:r=this.faker.helpers.arrayElement(zC),interfaceSchema:a=this.faker.helpers.objectKey(OC)}=e,i="",n=()=>this.faker.string.numeric({allowLeadingZeros:!0});switch(a){case"index":t=n();break;case"slot":t=`${n()}${this.faker.helpers.maybe((()=>`f${n()}`))??""}${this.faker.helpers.maybe((()=>`d${n()}`))??""}`;break;case"mac":t=this.faker.internet.mac("");break;case"pci":i=this.faker.helpers.maybe((()=>`P${n()}`))??"",t=`${n()}s${n()}${this.faker.helpers.maybe((()=>`f${n()}`))??""}${this.faker.helpers.maybe((()=>`d${n()}`))??""}`}return`${i}${r}${OC[a]}${t}`}cron(e={}){let{includeYear:t=!1,includeNonStandard:r=!1}=e,a=[this.faker.number.int(59),"*"],i=[this.faker.number.int(23),"*"],n=[this.faker.number.int({min:1,max:31}),"*","?"],o=[this.faker.number.int({min:1,max:12}),"*"],c=[this.faker.number.int(6),this.faker.helpers.arrayElement(KC),"*","?"],l=[this.faker.number.int({min:1970,max:2099}),"*"],s=this.faker.helpers.arrayElement(a),u=this.faker.helpers.arrayElement(i),h=this.faker.helpers.arrayElement(n),d=this.faker.helpers.arrayElement(o),p=this.faker.helpers.arrayElement(c),y=this.faker.helpers.arrayElement(l),f=`${s} ${u} ${h} ${d} ${p}`;t&&(f+=` ${y}`);return!r||this.faker.datatype.boolean()?f:this.faker.helpers.arrayElement(["@annually","@daily","@hourly","@monthly","@reboot","@weekly","@yearly"])}},VC=class extends _w{vehicle(){return`${this.manufacturer()} ${this.model()}`}manufacturer(){return this.faker.helpers.arrayElement(this.faker.definitions.vehicle.manufacturer)}model(){return this.faker.helpers.arrayElement(this.faker.definitions.vehicle.model)}type(){return this.faker.helpers.arrayElement(this.faker.definitions.vehicle.type)}fuel(){return this.faker.helpers.arrayElement(this.faker.definitions.vehicle.fuel)}vin(){let e=["o","i","q","O","I","Q"];return`${this.faker.string.alphanumeric({length:10,casing:"upper",exclude:e})}${this.faker.string.alpha({length:1,casing:"upper",exclude:e})}${this.faker.string.alphanumeric({length:1,casing:"upper",exclude:e})}${this.faker.string.numeric({length:5,allowLeadingZeros:!0})}`}color(){return this.faker.color.human()}vrm(){return`${this.faker.string.alpha({length:2,casing:"upper"})}${this.faker.string.numeric({length:2,allowLeadingZeros:!0})}${this.faker.string.alpha({length:3,casing:"upper"})}`}bicycle(){return this.faker.helpers.arrayElement(this.faker.definitions.vehicle.bicycle_type)}},jC=class extends _w{adjective(e={}){let t="number"==typeof e?{length:e}:e;return this.faker.helpers.arrayElement(DC({...t,wordList:this.faker.definitions.word.adjective}))}adverb(e={}){let t="number"==typeof e?{length:e}:e;return this.faker.helpers.arrayElement(DC({...t,wordList:this.faker.definitions.word.adverb}))}conjunction(e={}){let t="number"==typeof e?{length:e}:e;return this.faker.helpers.arrayElement(DC({...t,wordList:this.faker.definitions.word.conjunction}))}interjection(e={}){let t="number"==typeof e?{length:e}:e;return this.faker.helpers.arrayElement(DC({...t,wordList:this.faker.definitions.word.interjection}))}noun(e={}){let t="number"==typeof e?{length:e}:e;return this.faker.helpers.arrayElement(DC({...t,wordList:this.faker.definitions.word.noun}))}preposition(e={}){let t="number"==typeof e?{length:e}:e;return this.faker.helpers.arrayElement(DC({...t,wordList:this.faker.definitions.word.preposition}))}verb(e={}){let t="number"==typeof e?{length:e}:e;return this.faker.helpers.arrayElement(DC({...t,wordList:this.faker.definitions.word.verb}))}sample(e={}){let t=this.faker.helpers.shuffle([this.adjective,this.adverb,this.conjunction,this.interjection,this.noun,this.preposition,this.verb]);for(let r of t)try{return r(e)}catch{continue}throw new ww("No matching word data available for the current locale")}words(e={}){"number"==typeof e&&(e={count:e});let{count:t={min:1,max:3}}=e;return this.faker.helpers.multiple((()=>this.sample()),{count:t}).join(" ")}},YC=["Africa/Abidjan","Africa/Accra","Africa/Addis_Ababa","Africa/Algiers","Africa/Asmara","Africa/Bamako","Africa/Bangui","Africa/Banjul","Africa/Bissau","Africa/Blantyre","Africa/Brazzaville","Africa/Bujumbura","Africa/Cairo","Africa/Casablanca","Africa/Ceuta","Africa/Conakry","Africa/Dakar","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Douala","Africa/El_Aaiun","Africa/Freetown","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Kigali","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Lome","Africa/Luanda","Africa/Lubumbashi","Africa/Lusaka","Africa/Malabo","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Africa/Mogadishu","Africa/Monrovia","Africa/Nairobi","Africa/Ndjamena","Africa/Niamey","Africa/Nouakchott","Africa/Ouagadougou","Africa/Porto-Novo","Africa/Sao_Tome","Africa/Tripoli","Africa/Tunis","Africa/Windhoek","America/Adak","America/Anchorage","America/Anguilla","America/Antigua","America/Araguaina","America/Argentina/Buenos_Aires","America/Argentina/Catamarca","America/Argentina/Cordoba","America/Argentina/Jujuy","America/Argentina/La_Rioja","America/Argentina/Mendoza","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Aruba","America/Asuncion","America/Atikokan","America/Bahia","America/Bahia_Banderas","America/Barbados","America/Belem","America/Belize","America/Blanc-Sablon","America/Boa_Vista","America/Bogota","America/Boise","America/Cambridge_Bay","America/Campo_Grande","America/Cancun","America/Caracas","America/Cayenne","America/Cayman","America/Chicago","America/Chihuahua","America/Ciudad_Juarez","America/Costa_Rica","America/Creston","America/Cuiaba","America/Curacao","America/Danmarkshavn","America/Dawson","America/Dawson_Creek","America/Denver","America/Detroit","America/Dominica","America/Edmonton","America/Eirunepe","America/El_Salvador","America/Fort_Nelson","America/Fortaleza","America/Glace_Bay","America/Goose_Bay","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guatemala","America/Guayaquil","America/Guyana","America/Halifax","America/Havana","America/Hermosillo","America/Indiana/Indianapolis","America/Indiana/Knox","America/Indiana/Marengo","America/Indiana/Petersburg","America/Indiana/Tell_City","America/Indiana/Vevay","America/Indiana/Vincennes","America/Indiana/Winamac","America/Inuvik","America/Iqaluit","America/Jamaica","America/Juneau","America/Kentucky/Louisville","America/Kentucky/Monticello","America/Kralendijk","America/La_Paz","America/Lima","America/Los_Angeles","America/Lower_Princes","America/Maceio","America/Managua","America/Manaus","America/Marigot","America/Martinique","America/Matamoros","America/Mazatlan","America/Menominee","America/Merida","America/Metlakatla","America/Mexico_City","America/Miquelon","America/Moncton","America/Monterrey","America/Montevideo","America/Montserrat","America/Nassau","America/New_York","America/Nome","America/Noronha","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Nuuk","America/Ojinaga","America/Panama","America/Paramaribo","America/Phoenix","America/Port-au-Prince","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Punta_Arenas","America/Rankin_Inlet","America/Recife","America/Regina","America/Resolute","America/Rio_Branco","America/Santarem","America/Santiago","America/Santo_Domingo","America/Sao_Paulo","America/Scoresbysund","America/Sitka","America/St_Barthelemy","America/St_Johns","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Swift_Current","America/Tegucigalpa","America/Thule","America/Tijuana","America/Toronto","America/Tortola","America/Vancouver","America/Whitehorse","America/Winnipeg","America/Yakutat","America/Yellowknife","Antarctica/Casey","Antarctica/Davis","Antarctica/DumontDUrville","Antarctica/Macquarie","Antarctica/Mawson","Antarctica/McMurdo","Antarctica/Palmer","Antarctica/Rothera","Antarctica/Syowa","Antarctica/Troll","Antarctica/Vostok","Arctic/Longyearbyen","Asia/Aden","Asia/Almaty","Asia/Amman","Asia/Anadyr","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Atyrau","Asia/Baghdad","Asia/Bahrain","Asia/Baku","Asia/Bangkok","Asia/Barnaul","Asia/Beirut","Asia/Bishkek","Asia/Brunei","Asia/Chita","Asia/Choibalsan","Asia/Colombo","Asia/Damascus","Asia/Dhaka","Asia/Dili","Asia/Dubai","Asia/Dushanbe","Asia/Famagusta","Asia/Gaza","Asia/Hebron","Asia/Ho_Chi_Minh","Asia/Hong_Kong","Asia/Hovd","Asia/Irkutsk","Asia/Jakarta","Asia/Jayapura","Asia/Jerusalem","Asia/Kabul","Asia/Kamchatka","Asia/Karachi","Asia/Kathmandu","Asia/Khandyga","Asia/Kolkata","Asia/Krasnoyarsk","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Kuwait","Asia/Macau","Asia/Magadan","Asia/Makassar","Asia/Manila","Asia/Muscat","Asia/Nicosia","Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk","Asia/Oral","Asia/Phnom_Penh","Asia/Pontianak","Asia/Pyongyang","Asia/Qatar","Asia/Qostanay","Asia/Qyzylorda","Asia/Riyadh","Asia/Sakhalin","Asia/Samarkand","Asia/Seoul","Asia/Shanghai","Asia/Singapore","Asia/Srednekolymsk","Asia/Taipei","Asia/Tashkent","Asia/Tbilisi","Asia/Tehran","Asia/Thimphu","Asia/Tokyo","Asia/Tomsk","Asia/Ulaanbaatar","Asia/Urumqi","Asia/Ust-Nera","Asia/Vientiane","Asia/Vladivostok","Asia/Yakutsk","Asia/Yangon","Asia/Yekaterinburg","Asia/Yerevan","Atlantic/Azores","Atlantic/Bermuda","Atlantic/Canary","Atlantic/Cape_Verde","Atlantic/Faroe","Atlantic/Madeira","Atlantic/Reykjavik","Atlantic/South_Georgia","Atlantic/St_Helena","Atlantic/Stanley","Australia/Adelaide","Australia/Brisbane","Australia/Broken_Hill","Australia/Darwin","Australia/Eucla","Australia/Hobart","Australia/Lindeman","Australia/Lord_Howe","Australia/Melbourne","Australia/Perth","Australia/Sydney","Europe/Amsterdam","Europe/Andorra","Europe/Astrakhan","Europe/Athens","Europe/Belgrade","Europe/Berlin","Europe/Bratislava","Europe/Brussels","Europe/Bucharest","Europe/Budapest","Europe/Busingen","Europe/Chisinau","Europe/Copenhagen","Europe/Dublin","Europe/Gibraltar","Europe/Guernsey","Europe/Helsinki","Europe/Isle_of_Man","Europe/Istanbul","Europe/Jersey","Europe/Kaliningrad","Europe/Kirov","Europe/Kyiv","Europe/Lisbon","Europe/Ljubljana","Europe/London","Europe/Luxembourg","Europe/Madrid","Europe/Malta","Europe/Mariehamn","Europe/Minsk","Europe/Monaco","Europe/Moscow","Europe/Oslo","Europe/Paris","Europe/Podgorica","Europe/Prague","Europe/Riga","Europe/Rome","Europe/Samara","Europe/San_Marino","Europe/Sarajevo","Europe/Saratov","Europe/Simferopol","Europe/Skopje","Europe/Sofia","Europe/Stockholm","Europe/Tallinn","Europe/Tirane","Europe/Ulyanovsk","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Vilnius","Europe/Volgograd","Europe/Warsaw","Europe/Zagreb","Europe/Zurich","Indian/Antananarivo","Indian/Chagos","Indian/Christmas","Indian/Cocos","Indian/Comoro","Indian/Kerguelen","Indian/Mahe","Indian/Maldives","Indian/Mauritius","Indian/Mayotte","Indian/Reunion","Pacific/Apia","Pacific/Auckland","Pacific/Bougainville","Pacific/Chatham","Pacific/Chuuk","Pacific/Easter","Pacific/Efate","Pacific/Fakaofo","Pacific/Fiji","Pacific/Funafuti","Pacific/Galapagos","Pacific/Gambier","Pacific/Guadalcanal","Pacific/Guam","Pacific/Honolulu","Pacific/Kanton","Pacific/Kiritimati","Pacific/Kosrae","Pacific/Kwajalein","Pacific/Majuro","Pacific/Marquesas","Pacific/Midway","Pacific/Nauru","Pacific/Niue","Pacific/Norfolk","Pacific/Noumea","Pacific/Pago_Pago","Pacific/Palau","Pacific/Pitcairn","Pacific/Pohnpei","Pacific/Port_Moresby","Pacific/Rarotonga","Pacific/Saipan","Pacific/Tahiti","Pacific/Tarawa","Pacific/Tongatapu","Pacific/Wake","Pacific/Wallis"],$C={color:{space:["Academy Color Encoding System (ACES)","Adobe RGB","Adobe Wide Gamut RGB","British Standard Colour (BS)","CIE 1931 XYZ","CIELAB","CIELUV","CIEUVW","CMY","CMYK","DCI-P3","Display-P3","Federal Standard 595C","HKS","HSL","HSLA","HSLuv","HSV","HWB","LCh","LMS","Munsell Color System","Natural Color System (NSC)","Pantone Matching System (PMS)","ProPhoto RGB Color Space","RAL","RG","RGBA","RGK","Rec. 2020","Rec. 2100","Rec. 601","Rec. 709","Uniform Color Spaces (UCSs)","YDbDr","YIQ","YPbPr","sRGB","sYCC","scRGB","xvYCC"]},database:{collation:["ascii_bin","ascii_general_ci","cp1250_bin","cp1250_general_ci","utf8_bin","utf8_general_ci","utf8_unicode_ci"],engine:["ARCHIVE","BLACKHOLE","CSV","InnoDB","MEMORY","MyISAM"],type:["bigint","binary","bit","blob","boolean","date","datetime","decimal","double","enum","float","geometry","int","mediumint","point","real","serial","set","smallint","text","time","timestamp","tinyint","varchar"]},date:{time_zone:YC},hacker:{abbreviation:["ADP","AGP","AI","API","ASCII","CLI","COM","CSS","DNS","DRAM","EXE","FTP","GB","HDD","HEX","HTTP","IB","IP","JBOD","JSON","OCR","PCI","PNG","RAM","RSS","SAS","SCSI","SDD","SMS","SMTP","SQL","SSD","SSL","TCP","THX","TLS","UDP","USB","UTF8","VGA","XML","XSS"]},internet:{emoji:{smiley:["😀","😃","😄","😁","😆","😅","🤣","😂","🙂","🙃","😉","😊","😇","🥰","😍","🤩","😘","😗","☺️","😚","😙","🥲","😋","😛","😜","🤪","😝","🤑","🤗","🤭","🤫","🤔","🤐","🤨","😐","😑","😶","😶‍🌫️","😏","😒","🙄","😬","😮‍💨","🤥","😌","😔","😪","🤤","😴","😷","🤒","🤕","🤢","🤮","🤧","🥵","🥶","🥴","😵","😵‍💫","🤯","🤠","🥳","🥸","😎","🤓","🧐","😕","😟","🙁","☹️","😮","😯","😲","😳","🥺","😦","😧","😨","😰","😥","😢","😭","😱","😖","😣","😞","😓","😩","😫","🥱","😤","😡","😠","🤬","😈","👿","💀","☠️","💩","🤡","👹","👺","👻","👽","👾","🤖","😺","😸","😹","😻","😼","😽","🙀","😿","😾","🙈","🙉","🙊","💋","💌","💘","💝","💖","💗","💓","💞","💕","💟","❣️","💔","❤️‍🔥","❤️‍🩹","❤️","🧡","💛","💚","💙","💜","🤎","🖤","🤍","💯","💢","💥","💫","💦","💨","🕳️","💣","💬","👁️‍🗨️","🗨️","🗯️","💭","💤"],body:["👋","👋🏻","👋🏼","👋🏽","👋🏾","👋🏿","🤚","🤚🏻","🤚🏼","🤚🏽","🤚🏾","🤚🏿","🖐️","🖐🏻","🖐🏼","🖐🏽","🖐🏾","🖐🏿","✋","✋🏻","✋🏼","✋🏽","✋🏾","✋🏿","🖖","🖖🏻","🖖🏼","🖖🏽","🖖🏾","🖖🏿","👌","👌🏻","👌🏼","👌🏽","👌🏾","👌🏿","🤌","🤌🏻","🤌🏼","🤌🏽","🤌🏾","🤌🏿","🤏","🤏🏻","🤏🏼","🤏🏽","🤏🏾","🤏🏿","✌️","✌🏻","✌🏼","✌🏽","✌🏾","✌🏿","🤞","🤞🏻","🤞🏼","🤞🏽","🤞🏾","🤞🏿","🤟","🤟🏻","🤟🏼","🤟🏽","🤟🏾","🤟🏿","🤘","🤘🏻","🤘🏼","🤘🏽","🤘🏾","🤘🏿","🤙","🤙🏻","🤙🏼","🤙🏽","🤙🏾","🤙🏿","👈","👈🏻","👈🏼","👈🏽","👈🏾","👈🏿","👉","👉🏻","👉🏼","👉🏽","👉🏾","👉🏿","👆","👆🏻","👆🏼","👆🏽","👆🏾","👆🏿","🖕","🖕🏻","🖕🏼","🖕🏽","🖕🏾","🖕🏿","👇","👇🏻","👇🏼","👇🏽","👇🏾","👇🏿","☝️","☝🏻","☝🏼","☝🏽","☝🏾","☝🏿","👍","👍🏻","👍🏼","👍🏽","👍🏾","👍🏿","👎","👎🏻","👎🏼","👎🏽","👎🏾","👎🏿","✊","✊🏻","✊🏼","✊🏽","✊🏾","✊🏿","👊","👊🏻","👊🏼","👊🏽","👊🏾","👊🏿","🤛","🤛🏻","🤛🏼","🤛🏽","🤛🏾","🤛🏿","🤜","🤜🏻","🤜🏼","🤜🏽","🤜🏾","🤜🏿","👏","👏🏻","👏🏼","👏🏽","👏🏾","👏🏿","🙌","🙌🏻","🙌🏼","🙌🏽","🙌🏾","🙌🏿","👐","👐🏻","👐🏼","👐🏽","👐🏾","👐🏿","🤲","🤲🏻","🤲🏼","🤲🏽","🤲🏾","🤲🏿","🤝","🙏","🙏🏻","🙏🏼","🙏🏽","🙏🏾","🙏🏿","✍️","✍🏻","✍🏼","✍🏽","✍🏾","✍🏿","💅","💅🏻","💅🏼","💅🏽","💅🏾","💅🏿","🤳","🤳🏻","🤳🏼","🤳🏽","🤳🏾","🤳🏿","💪","💪🏻","💪🏼","💪🏽","💪🏾","💪🏿","🦾","🦿","🦵","🦵🏻","🦵🏼","🦵🏽","🦵🏾","🦵🏿","🦶","🦶🏻","🦶🏼","🦶🏽","🦶🏾","🦶🏿","👂","👂🏻","👂🏼","👂🏽","👂🏾","👂🏿","🦻","🦻🏻","🦻🏼","🦻🏽","🦻🏾","🦻🏿","👃","👃🏻","👃🏼","👃🏽","👃🏾","👃🏿","🧠","🫀","🫁","🦷","🦴","👀","👁️","👅","👄"],person:["👶","👶🏻","👶🏼","👶🏽","👶🏾","👶🏿","🧒","🧒🏻","🧒🏼","🧒🏽","🧒🏾","🧒🏿","👦","👦🏻","👦🏼","👦🏽","👦🏾","👦🏿","👧","👧🏻","👧🏼","👧🏽","👧🏾","👧🏿","🧑","🧑🏻","🧑🏼","🧑🏽","🧑🏾","🧑🏿","👱","👱🏻","👱🏼","👱🏽","👱🏾","👱🏿","👨","👨🏻","👨🏼","👨🏽","👨🏾","👨🏿","🧔","🧔🏻","🧔🏼","🧔🏽","🧔🏾","🧔🏿","🧔‍♂️","🧔🏻‍♂️","🧔🏼‍♂️","🧔🏽‍♂️","🧔🏾‍♂️","🧔🏿‍♂️","🧔‍♀️","🧔🏻‍♀️","🧔🏼‍♀️","🧔🏽‍♀️","🧔🏾‍♀️","🧔🏿‍♀️","👨‍🦰","👨🏻‍🦰","👨🏼‍🦰","👨🏽‍🦰","👨🏾‍🦰","👨🏿‍🦰","👨‍🦱","👨🏻‍🦱","👨🏼‍🦱","👨🏽‍🦱","👨🏾‍🦱","👨🏿‍🦱","👨‍🦳","👨🏻‍🦳","👨🏼‍🦳","👨🏽‍🦳","👨🏾‍🦳","👨🏿‍🦳","👨‍🦲","👨🏻‍🦲","👨🏼‍🦲","👨🏽‍🦲","👨🏾‍🦲","👨🏿‍🦲","👩","👩🏻","👩🏼","👩🏽","👩🏾","👩🏿","👩‍🦰","👩🏻‍🦰","👩🏼‍🦰","👩🏽‍🦰","👩🏾‍🦰","👩🏿‍🦰","🧑‍🦰","🧑🏻‍🦰","🧑🏼‍🦰","🧑🏽‍🦰","🧑🏾‍🦰","🧑🏿‍🦰","👩‍🦱","👩🏻‍🦱","👩🏼‍🦱","👩🏽‍🦱","👩🏾‍🦱","👩🏿‍🦱","🧑‍🦱","🧑🏻‍🦱","🧑🏼‍🦱","🧑🏽‍🦱","🧑🏾‍🦱","🧑🏿‍🦱","👩‍🦳","👩🏻‍🦳","👩🏼‍🦳","👩🏽‍🦳","👩🏾‍🦳","👩🏿‍🦳","🧑‍🦳","🧑🏻‍🦳","🧑🏼‍🦳","🧑🏽‍🦳","🧑🏾‍🦳","🧑🏿‍🦳","👩‍🦲","👩🏻‍🦲","👩🏼‍🦲","👩🏽‍🦲","👩🏾‍🦲","👩🏿‍🦲","🧑‍🦲","🧑🏻‍🦲","🧑🏼‍🦲","🧑🏽‍🦲","🧑🏾‍🦲","🧑🏿‍🦲","👱‍♀️","👱🏻‍♀️","👱🏼‍♀️","👱🏽‍♀️","👱🏾‍♀️","👱🏿‍♀️","👱‍♂️","👱🏻‍♂️","👱🏼‍♂️","👱🏽‍♂️","👱🏾‍♂️","👱🏿‍♂️","🧓","🧓🏻","🧓🏼","🧓🏽","🧓🏾","🧓🏿","👴","👴🏻","👴🏼","👴🏽","👴🏾","👴🏿","👵","👵🏻","👵🏼","👵🏽","👵🏾","👵🏿","🙍","🙍🏻","🙍🏼","🙍🏽","🙍🏾","🙍🏿","🙍‍♂️","🙍🏻‍♂️","🙍🏼‍♂️","🙍🏽‍♂️","🙍🏾‍♂️","🙍🏿‍♂️","🙍‍♀️","🙍🏻‍♀️","🙍🏼‍♀️","🙍🏽‍♀️","🙍🏾‍♀️","🙍🏿‍♀️","🙎","🙎🏻","🙎🏼","🙎🏽","🙎🏾","🙎🏿","🙎‍♂️","🙎🏻‍♂️","🙎🏼‍♂️","🙎🏽‍♂️","🙎🏾‍♂️","🙎🏿‍♂️","🙎‍♀️","🙎🏻‍♀️","🙎🏼‍♀️","🙎🏽‍♀️","🙎🏾‍♀️","🙎🏿‍♀️","🙅","🙅🏻","🙅🏼","🙅🏽","🙅🏾","🙅🏿","🙅‍♂️","🙅🏻‍♂️","🙅🏼‍♂️","🙅🏽‍♂️","🙅🏾‍♂️","🙅🏿‍♂️","🙅‍♀️","🙅🏻‍♀️","🙅🏼‍♀️","🙅🏽‍♀️","🙅🏾‍♀️","🙅🏿‍♀️","🙆","🙆🏻","🙆🏼","🙆🏽","🙆🏾","🙆🏿","🙆‍♂️","🙆🏻‍♂️","🙆🏼‍♂️","🙆🏽‍♂️","🙆🏾‍♂️","🙆🏿‍♂️","🙆‍♀️","🙆🏻‍♀️","🙆🏼‍♀️","🙆🏽‍♀️","🙆🏾‍♀️","🙆🏿‍♀️","💁","💁🏻","💁🏼","💁🏽","💁🏾","💁🏿","💁‍♂️","💁🏻‍♂️","💁🏼‍♂️","💁🏽‍♂️","💁🏾‍♂️","💁🏿‍♂️","💁‍♀️","💁🏻‍♀️","💁🏼‍♀️","💁🏽‍♀️","💁🏾‍♀️","💁🏿‍♀️","🙋","🙋🏻","🙋🏼","🙋🏽","🙋🏾","🙋🏿","🙋‍♂️","🙋🏻‍♂️","🙋🏼‍♂️","🙋🏽‍♂️","🙋🏾‍♂️","🙋🏿‍♂️","🙋‍♀️","🙋🏻‍♀️","🙋🏼‍♀️","🙋🏽‍♀️","🙋🏾‍♀️","🙋🏿‍♀️","🧏","🧏🏻","🧏🏼","🧏🏽","🧏🏾","🧏🏿","🧏‍♂️","🧏🏻‍♂️","🧏🏼‍♂️","🧏🏽‍♂️","🧏🏾‍♂️","🧏🏿‍♂️","🧏‍♀️","🧏🏻‍♀️","🧏🏼‍♀️","🧏🏽‍♀️","🧏🏾‍♀️","🧏🏿‍♀️","🙇","🙇🏻","🙇🏼","🙇🏽","🙇🏾","🙇🏿","🙇‍♂️","🙇🏻‍♂️","🙇🏼‍♂️","🙇🏽‍♂️","🙇🏾‍♂️","🙇🏿‍♂️","🙇‍♀️","🙇🏻‍♀️","🙇🏼‍♀️","🙇🏽‍♀️","🙇🏾‍♀️","🙇🏿‍♀️","🤦","🤦🏻","🤦🏼","🤦🏽","🤦🏾","🤦🏿","🤦‍♂️","🤦🏻‍♂️","🤦🏼‍♂️","🤦🏽‍♂️","🤦🏾‍♂️","🤦🏿‍♂️","🤦‍♀️","🤦🏻‍♀️","🤦🏼‍♀️","🤦🏽‍♀️","🤦🏾‍♀️","🤦🏿‍♀️","🤷","🤷🏻","🤷🏼","🤷🏽","🤷🏾","🤷🏿","🤷‍♂️","🤷🏻‍♂️","🤷🏼‍♂️","🤷🏽‍♂️","🤷🏾‍♂️","🤷🏿‍♂️","🤷‍♀️","🤷🏻‍♀️","🤷🏼‍♀️","🤷🏽‍♀️","🤷🏾‍♀️","🤷🏿‍♀️","🧑‍⚕️","🧑🏻‍⚕️","🧑🏼‍⚕️","🧑🏽‍⚕️","🧑🏾‍⚕️","🧑🏿‍⚕️","👨‍⚕️","👨🏻‍⚕️","👨🏼‍⚕️","👨🏽‍⚕️","👨🏾‍⚕️","👨🏿‍⚕️","👩‍⚕️","👩🏻‍⚕️","👩🏼‍⚕️","👩🏽‍⚕️","👩🏾‍⚕️","👩🏿‍⚕️","🧑‍🎓","🧑🏻‍🎓","🧑🏼‍🎓","🧑🏽‍🎓","🧑🏾‍🎓","🧑🏿‍🎓","👨‍🎓","👨🏻‍🎓","👨🏼‍🎓","👨🏽‍🎓","👨🏾‍🎓","👨🏿‍🎓","👩‍🎓","👩🏻‍🎓","👩🏼‍🎓","👩🏽‍🎓","👩🏾‍🎓","👩🏿‍🎓","🧑‍🏫","🧑🏻‍🏫","🧑🏼‍🏫","🧑🏽‍🏫","🧑🏾‍🏫","🧑🏿‍🏫","👨‍🏫","👨🏻‍🏫","👨🏼‍🏫","👨🏽‍🏫","👨🏾‍🏫","👨🏿‍🏫","👩‍🏫","👩🏻‍🏫","👩🏼‍🏫","👩🏽‍🏫","👩🏾‍🏫","👩🏿‍🏫","🧑‍⚖️","🧑🏻‍⚖️","🧑🏼‍⚖️","🧑🏽‍⚖️","🧑🏾‍⚖️","🧑🏿‍⚖️","👨‍⚖️","👨🏻‍⚖️","👨🏼‍⚖️","👨🏽‍⚖️","👨🏾‍⚖️","👨🏿‍⚖️","👩‍⚖️","👩🏻‍⚖️","👩🏼‍⚖️","👩🏽‍⚖️","👩🏾‍⚖️","👩🏿‍⚖️","🧑‍🌾","🧑🏻‍🌾","🧑🏼‍🌾","🧑🏽‍🌾","🧑🏾‍🌾","🧑🏿‍🌾","👨‍🌾","👨🏻‍🌾","👨🏼‍🌾","👨🏽‍🌾","👨🏾‍🌾","👨🏿‍🌾","👩‍🌾","👩🏻‍🌾","👩🏼‍🌾","👩🏽‍🌾","👩🏾‍🌾","👩🏿‍🌾","🧑‍🍳","🧑🏻‍🍳","🧑🏼‍🍳","🧑🏽‍🍳","🧑🏾‍🍳","🧑🏿‍🍳","👨‍🍳","👨🏻‍🍳","👨🏼‍🍳","👨🏽‍🍳","👨🏾‍🍳","👨🏿‍🍳","👩‍🍳","👩🏻‍🍳","👩🏼‍🍳","👩🏽‍🍳","👩🏾‍🍳","👩🏿‍🍳","🧑‍🔧","🧑🏻‍🔧","🧑🏼‍🔧","🧑🏽‍🔧","🧑🏾‍🔧","🧑🏿‍🔧","👨‍🔧","👨🏻‍🔧","👨🏼‍🔧","👨🏽‍🔧","👨🏾‍🔧","👨🏿‍🔧","👩‍🔧","👩🏻‍🔧","👩🏼‍🔧","👩🏽‍🔧","👩🏾‍🔧","👩🏿‍🔧","🧑‍🏭","🧑🏻‍🏭","🧑🏼‍🏭","🧑🏽‍🏭","🧑🏾‍🏭","🧑🏿‍🏭","👨‍🏭","👨🏻‍🏭","👨🏼‍🏭","👨🏽‍🏭","👨🏾‍🏭","👨🏿‍🏭","👩‍🏭","👩🏻‍🏭","👩🏼‍🏭","👩🏽‍🏭","👩🏾‍🏭","👩🏿‍🏭","🧑‍💼","🧑🏻‍💼","🧑🏼‍💼","🧑🏽‍💼","🧑🏾‍💼","🧑🏿‍💼","👨‍💼","👨🏻‍💼","👨🏼‍💼","👨🏽‍💼","👨🏾‍💼","👨🏿‍💼","👩‍💼","👩🏻‍💼","👩🏼‍💼","👩🏽‍💼","👩🏾‍💼","👩🏿‍💼","🧑‍🔬","🧑🏻‍🔬","🧑🏼‍🔬","🧑🏽‍🔬","🧑🏾‍🔬","🧑🏿‍🔬","👨‍🔬","👨🏻‍🔬","👨🏼‍🔬","👨🏽‍🔬","👨🏾‍🔬","👨🏿‍🔬","👩‍🔬","👩🏻‍🔬","👩🏼‍🔬","👩🏽‍🔬","👩🏾‍🔬","👩🏿‍🔬","🧑‍💻","🧑🏻‍💻","🧑🏼‍💻","🧑🏽‍💻","🧑🏾‍💻","🧑🏿‍💻","👨‍💻","👨🏻‍💻","👨🏼‍💻","👨🏽‍💻","👨🏾‍💻","👨🏿‍💻","👩‍💻","👩🏻‍💻","👩🏼‍💻","👩🏽‍💻","👩🏾‍💻","👩🏿‍💻","🧑‍🎤","🧑🏻‍🎤","🧑🏼‍🎤","🧑🏽‍🎤","🧑🏾‍🎤","🧑🏿‍🎤","👨‍🎤","👨🏻‍🎤","👨🏼‍🎤","👨🏽‍🎤","👨🏾‍🎤","👨🏿‍🎤","👩‍🎤","👩🏻‍🎤","👩🏼‍🎤","👩🏽‍🎤","👩🏾‍🎤","👩🏿‍🎤","🧑‍🎨","🧑🏻‍🎨","🧑🏼‍🎨","🧑🏽‍🎨","🧑🏾‍🎨","🧑🏿‍🎨","👨‍🎨","👨🏻‍🎨","👨🏼‍🎨","👨🏽‍🎨","👨🏾‍🎨","👨🏿‍🎨","👩‍🎨","👩🏻‍🎨","👩🏼‍🎨","👩🏽‍🎨","👩🏾‍🎨","👩🏿‍🎨","🧑‍✈️","🧑🏻‍✈️","🧑🏼‍✈️","🧑🏽‍✈️","🧑🏾‍✈️","🧑🏿‍✈️","👨‍✈️","👨🏻‍✈️","👨🏼‍✈️","👨🏽‍✈️","👨🏾‍✈️","👨🏿‍✈️","👩‍✈️","👩🏻‍✈️","👩🏼‍✈️","👩🏽‍✈️","👩🏾‍✈️","👩🏿‍✈️","🧑‍🚀","🧑🏻‍🚀","🧑🏼‍🚀","🧑🏽‍🚀","🧑🏾‍🚀","🧑🏿‍🚀","👨‍🚀","👨🏻‍🚀","👨🏼‍🚀","👨🏽‍🚀","👨🏾‍🚀","👨🏿‍🚀","👩‍🚀","👩🏻‍🚀","👩🏼‍🚀","👩🏽‍🚀","👩🏾‍🚀","👩🏿‍🚀","🧑‍🚒","🧑🏻‍🚒","🧑🏼‍🚒","🧑🏽‍🚒","🧑🏾‍🚒","🧑🏿‍🚒","👨‍🚒","👨🏻‍🚒","👨🏼‍🚒","👨🏽‍🚒","👨🏾‍🚒","👨🏿‍🚒","👩‍🚒","👩🏻‍🚒","👩🏼‍🚒","👩🏽‍🚒","👩🏾‍🚒","👩🏿‍🚒","👮","👮🏻","👮🏼","👮🏽","👮🏾","👮🏿","👮‍♂️","👮🏻‍♂️","👮🏼‍♂️","👮🏽‍♂️","👮🏾‍♂️","👮🏿‍♂️","👮‍♀️","👮🏻‍♀️","👮🏼‍♀️","👮🏽‍♀️","👮🏾‍♀️","👮🏿‍♀️","🕵️","🕵🏻","🕵🏼","🕵🏽","🕵🏾","🕵🏿","🕵️‍♂️","🕵🏻‍♂️","🕵🏼‍♂️","🕵🏽‍♂️","🕵🏾‍♂️","🕵🏿‍♂️","🕵️‍♀️","🕵🏻‍♀️","🕵🏼‍♀️","🕵🏽‍♀️","🕵🏾‍♀️","🕵🏿‍♀️","💂","💂🏻","💂🏼","💂🏽","💂🏾","💂🏿","💂‍♂️","💂🏻‍♂️","💂🏼‍♂️","💂🏽‍♂️","💂🏾‍♂️","💂🏿‍♂️","💂‍♀️","💂🏻‍♀️","💂🏼‍♀️","💂🏽‍♀️","💂🏾‍♀️","💂🏿‍♀️","🥷","🥷🏻","🥷🏼","🥷🏽","🥷🏾","🥷🏿","👷","👷🏻","👷🏼","👷🏽","👷🏾","👷🏿","👷‍♂️","👷🏻‍♂️","👷🏼‍♂️","👷🏽‍♂️","👷🏾‍♂️","👷🏿‍♂️","👷‍♀️","👷🏻‍♀️","👷🏼‍♀️","👷🏽‍♀️","👷🏾‍♀️","👷🏿‍♀️","🤴","🤴🏻","🤴🏼","🤴🏽","🤴🏾","🤴🏿","👸","👸🏻","👸🏼","👸🏽","👸🏾","👸🏿","👳","👳🏻","👳🏼","👳🏽","👳🏾","👳🏿","👳‍♂️","👳🏻‍♂️","👳🏼‍♂️","👳🏽‍♂️","👳🏾‍♂️","👳🏿‍♂️","👳‍♀️","👳🏻‍♀️","👳🏼‍♀️","👳🏽‍♀️","👳🏾‍♀️","👳🏿‍♀️","👲","👲🏻","👲🏼","👲🏽","👲🏾","👲🏿","🧕","🧕🏻","🧕🏼","🧕🏽","🧕🏾","🧕🏿","🤵","🤵🏻","🤵🏼","🤵🏽","🤵🏾","🤵🏿","🤵‍♂️","🤵🏻‍♂️","🤵🏼‍♂️","🤵🏽‍♂️","🤵🏾‍♂️","🤵🏿‍♂️","🤵‍♀️","🤵🏻‍♀️","🤵🏼‍♀️","🤵🏽‍♀️","🤵🏾‍♀️","🤵🏿‍♀️","👰","👰🏻","👰🏼","👰🏽","👰🏾","👰🏿","👰‍♂️","👰🏻‍♂️","👰🏼‍♂️","👰🏽‍♂️","👰🏾‍♂️","👰🏿‍♂️","👰‍♀️","👰🏻‍♀️","👰🏼‍♀️","👰🏽‍♀️","👰🏾‍♀️","👰🏿‍♀️","🤰","🤰🏻","🤰🏼","🤰🏽","🤰🏾","🤰🏿","🤱","🤱🏻","🤱🏼","🤱🏽","🤱🏾","🤱🏿","👩‍🍼","👩🏻‍🍼","👩🏼‍🍼","👩🏽‍🍼","👩🏾‍🍼","👩🏿‍🍼","👨‍🍼","👨🏻‍🍼","👨🏼‍🍼","👨🏽‍🍼","👨🏾‍🍼","👨🏿‍🍼","🧑‍🍼","🧑🏻‍🍼","🧑🏼‍🍼","🧑🏽‍🍼","🧑🏾‍🍼","🧑🏿‍🍼","👼","👼🏻","👼🏼","👼🏽","👼🏾","👼🏿","🎅","🎅🏻","🎅🏼","🎅🏽","🎅🏾","🎅🏿","🤶","🤶🏻","🤶🏼","🤶🏽","🤶🏾","🤶🏿","🧑‍🎄","🧑🏻‍🎄","🧑🏼‍🎄","🧑🏽‍🎄","🧑🏾‍🎄","🧑🏿‍🎄","🦸","🦸🏻","🦸🏼","🦸🏽","🦸🏾","🦸🏿","🦸‍♂️","🦸🏻‍♂️","🦸🏼‍♂️","🦸🏽‍♂️","🦸🏾‍♂️","🦸🏿‍♂️","🦸‍♀️","🦸🏻‍♀️","🦸🏼‍♀️","🦸🏽‍♀️","🦸🏾‍♀️","🦸🏿‍♀️","🦹","🦹🏻","🦹🏼","🦹🏽","🦹🏾","🦹🏿","🦹‍♂️","🦹🏻‍♂️","🦹🏼‍♂️","🦹🏽‍♂️","🦹🏾‍♂️","🦹🏿‍♂️","🦹‍♀️","🦹🏻‍♀️","🦹🏼‍♀️","🦹🏽‍♀️","🦹🏾‍♀️","🦹🏿‍♀️","🧙","🧙🏻","🧙🏼","🧙🏽","🧙🏾","🧙🏿","🧙‍♂️","🧙🏻‍♂️","🧙🏼‍♂️","🧙🏽‍♂️","🧙🏾‍♂️","🧙🏿‍♂️","🧙‍♀️","🧙🏻‍♀️","🧙🏼‍♀️","🧙🏽‍♀️","🧙🏾‍♀️","🧙🏿‍♀️","🧚","🧚🏻","🧚🏼","🧚🏽","🧚🏾","🧚🏿","🧚‍♂️","🧚🏻‍♂️","🧚🏼‍♂️","🧚🏽‍♂️","🧚🏾‍♂️","🧚🏿‍♂️","🧚‍♀️","🧚🏻‍♀️","🧚🏼‍♀️","🧚🏽‍♀️","🧚🏾‍♀️","🧚🏿‍♀️","🧛","🧛🏻","🧛🏼","🧛🏽","🧛🏾","🧛🏿","🧛‍♂️","🧛🏻‍♂️","🧛🏼‍♂️","🧛🏽‍♂️","🧛🏾‍♂️","🧛🏿‍♂️","🧛‍♀️","🧛🏻‍♀️","🧛🏼‍♀️","🧛🏽‍♀️","🧛🏾‍♀️","🧛🏿‍♀️","🧜","🧜🏻","🧜🏼","🧜🏽","🧜🏾","🧜🏿","🧜‍♂️","🧜🏻‍♂️","🧜🏼‍♂️","🧜🏽‍♂️","🧜🏾‍♂️","🧜🏿‍♂️","🧜‍♀️","🧜🏻‍♀️","🧜🏼‍♀️","🧜🏽‍♀️","🧜🏾‍♀️","🧜🏿‍♀️","🧝","🧝🏻","🧝🏼","🧝🏽","🧝🏾","🧝🏿","🧝‍♂️","🧝🏻‍♂️","🧝🏼‍♂️","🧝🏽‍♂️","🧝🏾‍♂️","🧝🏿‍♂️","🧝‍♀️","🧝🏻‍♀️","🧝🏼‍♀️","🧝🏽‍♀️","🧝🏾‍♀️","🧝🏿‍♀️","🧞","🧞‍♂️","🧞‍♀️","🧟","🧟‍♂️","🧟‍♀️","💆","💆🏻","💆🏼","💆🏽","💆🏾","💆🏿","💆‍♂️","💆🏻‍♂️","💆🏼‍♂️","💆🏽‍♂️","💆🏾‍♂️","💆🏿‍♂️","💆‍♀️","💆🏻‍♀️","💆🏼‍♀️","💆🏽‍♀️","💆🏾‍♀️","💆🏿‍♀️","💇","💇🏻","💇🏼","💇🏽","💇🏾","💇🏿","💇‍♂️","💇🏻‍♂️","💇🏼‍♂️","💇🏽‍♂️","💇🏾‍♂️","💇🏿‍♂️","💇‍♀️","💇🏻‍♀️","💇🏼‍♀️","💇🏽‍♀️","💇🏾‍♀️","💇🏿‍♀️","🚶","🚶🏻","🚶🏼","🚶🏽","🚶🏾","🚶🏿","🚶‍♂️","🚶🏻‍♂️","🚶🏼‍♂️","🚶🏽‍♂️","🚶🏾‍♂️","🚶🏿‍♂️","🚶‍♀️","🚶🏻‍♀️","🚶🏼‍♀️","🚶🏽‍♀️","🚶🏾‍♀️","🚶🏿‍♀️","🧍","🧍🏻","🧍🏼","🧍🏽","🧍🏾","🧍🏿","🧍‍♂️","🧍🏻‍♂️","🧍🏼‍♂️","🧍🏽‍♂️","🧍🏾‍♂️","🧍🏿‍♂️","🧍‍♀️","🧍🏻‍♀️","🧍🏼‍♀️","🧍🏽‍♀️","🧍🏾‍♀️","🧍🏿‍♀️","🧎","🧎🏻","🧎🏼","🧎🏽","🧎🏾","🧎🏿","🧎‍♂️","🧎🏻‍♂️","🧎🏼‍♂️","🧎🏽‍♂️","🧎🏾‍♂️","🧎🏿‍♂️","🧎‍♀️","🧎🏻‍♀️","🧎🏼‍♀️","🧎🏽‍♀️","🧎🏾‍♀️","🧎🏿‍♀️","🧑‍🦯","🧑🏻‍🦯","🧑🏼‍🦯","🧑🏽‍🦯","🧑🏾‍🦯","🧑🏿‍🦯","👨‍🦯","👨🏻‍🦯","👨🏼‍🦯","👨🏽‍🦯","👨🏾‍🦯","👨🏿‍🦯","👩‍🦯","👩🏻‍🦯","👩🏼‍🦯","👩🏽‍🦯","👩🏾‍🦯","👩🏿‍🦯","🧑‍🦼","🧑🏻‍🦼","🧑🏼‍🦼","🧑🏽‍🦼","🧑🏾‍🦼","🧑🏿‍🦼","👨‍🦼","👨🏻‍🦼","👨🏼‍🦼","👨🏽‍🦼","👨🏾‍🦼","👨🏿‍🦼","👩‍🦼","👩🏻‍🦼","👩🏼‍🦼","👩🏽‍🦼","👩🏾‍🦼","👩🏿‍🦼","🧑‍🦽","🧑🏻‍🦽","🧑🏼‍🦽","🧑🏽‍🦽","🧑🏾‍🦽","🧑🏿‍🦽","👨‍🦽","👨🏻‍🦽","👨🏼‍🦽","👨🏽‍🦽","👨🏾‍🦽","👨🏿‍🦽","👩‍🦽","👩🏻‍🦽","👩🏼‍🦽","👩🏽‍🦽","👩🏾‍🦽","👩🏿‍🦽","🏃","🏃🏻","🏃🏼","🏃🏽","🏃🏾","🏃🏿","🏃‍♂️","🏃🏻‍♂️","🏃🏼‍♂️","🏃🏽‍♂️","🏃🏾‍♂️","🏃🏿‍♂️","🏃‍♀️","🏃🏻‍♀️","🏃🏼‍♀️","🏃🏽‍♀️","🏃🏾‍♀️","🏃🏿‍♀️","💃","💃🏻","💃🏼","💃🏽","💃🏾","💃🏿","🕺","🕺🏻","🕺🏼","🕺🏽","🕺🏾","🕺🏿","🕴️","🕴🏻","🕴🏼","🕴🏽","🕴🏾","🕴🏿","👯","👯‍♂️","👯‍♀️","🧖","🧖🏻","🧖🏼","🧖🏽","🧖🏾","🧖🏿","🧖‍♂️","🧖🏻‍♂️","🧖🏼‍♂️","🧖🏽‍♂️","🧖🏾‍♂️","🧖🏿‍♂️","🧖‍♀️","🧖🏻‍♀️","🧖🏼‍♀️","🧖🏽‍♀️","🧖🏾‍♀️","🧖🏿‍♀️","🧗","🧗🏻","🧗🏼","🧗🏽","🧗🏾","🧗🏿","🧗‍♂️","🧗🏻‍♂️","🧗🏼‍♂️","🧗🏽‍♂️","🧗🏾‍♂️","🧗🏿‍♂️","🧗‍♀️","🧗🏻‍♀️","🧗🏼‍♀️","🧗🏽‍♀️","🧗🏾‍♀️","🧗🏿‍♀️","🤺","🏇","🏇🏻","🏇🏼","🏇🏽","🏇🏾","🏇🏿","⛷️","🏂","🏂🏻","🏂🏼","🏂🏽","🏂🏾","🏂🏿","🏌️","🏌🏻","🏌🏼","🏌🏽","🏌🏾","🏌🏿","🏌️‍♂️","🏌🏻‍♂️","🏌🏼‍♂️","🏌🏽‍♂️","🏌🏾‍♂️","🏌🏿‍♂️","🏌️‍♀️","🏌🏻‍♀️","🏌🏼‍♀️","🏌🏽‍♀️","🏌🏾‍♀️","🏌🏿‍♀️","🏄","🏄🏻","🏄🏼","🏄🏽","🏄🏾","🏄🏿","🏄‍♂️","🏄🏻‍♂️","🏄🏼‍♂️","🏄🏽‍♂️","🏄🏾‍♂️","🏄🏿‍♂️","🏄‍♀️","🏄🏻‍♀️","🏄🏼‍♀️","🏄🏽‍♀️","🏄🏾‍♀️","🏄🏿‍♀️","🚣","🚣🏻","🚣🏼","🚣🏽","🚣🏾","🚣🏿","🚣‍♂️","🚣🏻‍♂️","🚣🏼‍♂️","🚣🏽‍♂️","🚣🏾‍♂️","🚣🏿‍♂️","🚣‍♀️","🚣🏻‍♀️","🚣🏼‍♀️","🚣🏽‍♀️","🚣🏾‍♀️","🚣🏿‍♀️","🏊","🏊🏻","🏊🏼","🏊🏽","🏊🏾","🏊🏿","🏊‍♂️","🏊🏻‍♂️","🏊🏼‍♂️","🏊🏽‍♂️","🏊🏾‍♂️","🏊🏿‍♂️","🏊‍♀️","🏊🏻‍♀️","🏊🏼‍♀️","🏊🏽‍♀️","🏊🏾‍♀️","🏊🏿‍♀️","⛹️","⛹🏻","⛹🏼","⛹🏽","⛹🏾","⛹🏿","⛹️‍♂️","⛹🏻‍♂️","⛹🏼‍♂️","⛹🏽‍♂️","⛹🏾‍♂️","⛹🏿‍♂️","⛹️‍♀️","⛹🏻‍♀️","⛹🏼‍♀️","⛹🏽‍♀️","⛹🏾‍♀️","⛹🏿‍♀️","🏋️","🏋🏻","🏋🏼","🏋🏽","🏋🏾","🏋🏿","🏋️‍♂️","🏋🏻‍♂️","🏋🏼‍♂️","🏋🏽‍♂️","🏋🏾‍♂️","🏋🏿‍♂️","🏋️‍♀️","🏋🏻‍♀️","🏋🏼‍♀️","🏋🏽‍♀️","🏋🏾‍♀️","🏋🏿‍♀️","🚴","🚴🏻","🚴🏼","🚴🏽","🚴🏾","🚴🏿","🚴‍♂️","🚴🏻‍♂️","🚴🏼‍♂️","🚴🏽‍♂️","🚴🏾‍♂️","🚴🏿‍♂️","🚴‍♀️","🚴🏻‍♀️","🚴🏼‍♀️","🚴🏽‍♀️","🚴🏾‍♀️","🚴🏿‍♀️","🚵","🚵🏻","🚵🏼","🚵🏽","🚵🏾","🚵🏿","🚵‍♂️","🚵🏻‍♂️","🚵🏼‍♂️","🚵🏽‍♂️","🚵🏾‍♂️","🚵🏿‍♂️","🚵‍♀️","🚵🏻‍♀️","🚵🏼‍♀️","🚵🏽‍♀️","🚵🏾‍♀️","🚵🏿‍♀️","🤸","🤸🏻","🤸🏼","🤸🏽","🤸🏾","🤸🏿","🤸‍♂️","🤸🏻‍♂️","🤸🏼‍♂️","🤸🏽‍♂️","🤸🏾‍♂️","🤸🏿‍♂️","🤸‍♀️","🤸🏻‍♀️","🤸🏼‍♀️","🤸🏽‍♀️","🤸🏾‍♀️","🤸🏿‍♀️","🤼","🤼‍♂️","🤼‍♀️","🤽","🤽🏻","🤽🏼","🤽🏽","🤽🏾","🤽🏿","🤽‍♂️","🤽🏻‍♂️","🤽🏼‍♂️","🤽🏽‍♂️","🤽🏾‍♂️","🤽🏿‍♂️","🤽‍♀️","🤽🏻‍♀️","🤽🏼‍♀️","🤽🏽‍♀️","🤽🏾‍♀️","🤽🏿‍♀️","🤾","🤾🏻","🤾🏼","🤾🏽","🤾🏾","🤾🏿","🤾‍♂️","🤾🏻‍♂️","🤾🏼‍♂️","🤾🏽‍♂️","🤾🏾‍♂️","🤾🏿‍♂️","🤾‍♀️","🤾🏻‍♀️","🤾🏼‍♀️","🤾🏽‍♀️","🤾🏾‍♀️","🤾🏿‍♀️","🤹","🤹🏻","🤹🏼","🤹🏽","🤹🏾","🤹🏿","🤹‍♂️","🤹🏻‍♂️","🤹🏼‍♂️","🤹🏽‍♂️","🤹🏾‍♂️","🤹🏿‍♂️","🤹‍♀️","🤹🏻‍♀️","🤹🏼‍♀️","🤹🏽‍♀️","🤹🏾‍♀️","🤹🏿‍♀️","🧘","🧘🏻","🧘🏼","🧘🏽","🧘🏾","🧘🏿","🧘‍♂️","🧘🏻‍♂️","🧘🏼‍♂️","🧘🏽‍♂️","🧘🏾‍♂️","🧘🏿‍♂️","🧘‍♀️","🧘🏻‍♀️","🧘🏼‍♀️","🧘🏽‍♀️","🧘🏾‍♀️","🧘🏿‍♀️","🛀","🛀🏻","🛀🏼","🛀🏽","🛀🏾","🛀🏿","🛌","🛌🏻","🛌🏼","🛌🏽","🛌🏾","🛌🏿","🧑‍🤝‍🧑","🧑🏻‍🤝‍🧑🏻","🧑🏻‍🤝‍🧑🏼","🧑🏻‍🤝‍🧑🏽","🧑🏻‍🤝‍🧑🏾","🧑🏻‍🤝‍🧑🏿","🧑🏼‍🤝‍🧑🏻","🧑🏼‍🤝‍🧑🏼","🧑🏼‍🤝‍🧑🏽","🧑🏼‍🤝‍🧑🏾","🧑🏼‍🤝‍🧑🏿","🧑🏽‍🤝‍🧑🏻","🧑🏽‍🤝‍🧑🏼","🧑🏽‍🤝‍🧑🏽","🧑🏽‍🤝‍🧑🏾","🧑🏽‍🤝‍🧑🏿","🧑🏾‍🤝‍🧑🏻","🧑🏾‍🤝‍🧑🏼","🧑🏾‍🤝‍🧑🏽","🧑🏾‍🤝‍🧑🏾","🧑🏾‍🤝‍🧑🏿","🧑🏿‍🤝‍🧑🏻","🧑🏿‍🤝‍🧑🏼","🧑🏿‍🤝‍🧑🏽","🧑🏿‍🤝‍🧑🏾","🧑🏿‍🤝‍🧑🏿","👭","👭🏻","👩🏻‍🤝‍👩🏼","👩🏻‍🤝‍👩🏽","👩🏻‍🤝‍👩🏾","👩🏻‍🤝‍👩🏿","👩🏼‍🤝‍👩🏻","👭🏼","👩🏼‍🤝‍👩🏽","👩🏼‍🤝‍👩🏾","👩🏼‍🤝‍👩🏿","👩🏽‍🤝‍👩🏻","👩🏽‍🤝‍👩🏼","👭🏽","👩🏽‍🤝‍👩🏾","👩🏽‍🤝‍👩🏿","👩🏾‍🤝‍👩🏻","👩🏾‍🤝‍👩🏼","👩🏾‍🤝‍👩🏽","👭🏾","👩🏾‍🤝‍👩🏿","👩🏿‍🤝‍👩🏻","👩🏿‍🤝‍👩🏼","👩🏿‍🤝‍👩🏽","👩🏿‍🤝‍👩🏾","👭🏿","👫","👫🏻","👩🏻‍🤝‍👨🏼","👩🏻‍🤝‍👨🏽","👩🏻‍🤝‍👨🏾","👩🏻‍🤝‍👨🏿","👩🏼‍🤝‍👨🏻","👫🏼","👩🏼‍🤝‍👨🏽","👩🏼‍🤝‍👨🏾","👩🏼‍🤝‍👨🏿","👩🏽‍🤝‍👨🏻","👩🏽‍🤝‍👨🏼","👫🏽","👩🏽‍🤝‍👨🏾","👩🏽‍🤝‍👨🏿","👩🏾‍🤝‍👨🏻","👩🏾‍🤝‍👨🏼","👩🏾‍🤝‍👨🏽","👫🏾","👩🏾‍🤝‍👨🏿","👩🏿‍🤝‍👨🏻","👩🏿‍🤝‍👨🏼","👩🏿‍🤝‍👨🏽","👩🏿‍🤝‍👨🏾","👫🏿","👬","👬🏻","👨🏻‍🤝‍👨🏼","👨🏻‍🤝‍👨🏽","👨🏻‍🤝‍👨🏾","👨🏻‍🤝‍👨🏿","👨🏼‍🤝‍👨🏻","👬🏼","👨🏼‍🤝‍👨🏽","👨🏼‍🤝‍👨🏾","👨🏼‍🤝‍👨🏿","👨🏽‍🤝‍👨🏻","👨🏽‍🤝‍👨🏼","👬🏽","👨🏽‍🤝‍👨🏾","👨🏽‍🤝‍👨🏿","👨🏾‍🤝‍👨🏻","👨🏾‍🤝‍👨🏼","👨🏾‍🤝‍👨🏽","👬🏾","👨🏾‍🤝‍👨🏿","👨🏿‍🤝‍👨🏻","👨🏿‍🤝‍👨🏼","👨🏿‍🤝‍👨🏽","👨🏿‍🤝‍👨🏾","👬🏿","💏","💏🏻","💏🏼","💏🏽","💏🏾","💏🏿","🧑🏻‍❤️‍💋‍🧑🏼","🧑🏻‍❤️‍💋‍🧑🏽","🧑🏻‍❤️‍💋‍🧑🏾","🧑🏻‍❤️‍💋‍🧑🏿","🧑🏼‍❤️‍💋‍🧑🏻","🧑🏼‍❤️‍💋‍🧑🏽","🧑🏼‍❤️‍💋‍🧑🏾","🧑🏼‍❤️‍💋‍🧑🏿","🧑🏽‍❤️‍💋‍🧑🏻","🧑🏽‍❤️‍💋‍🧑🏼","🧑🏽‍❤️‍💋‍🧑🏾","🧑🏽‍❤️‍💋‍🧑🏿","🧑🏾‍❤️‍💋‍🧑🏻","🧑🏾‍❤️‍💋‍🧑🏼","🧑🏾‍❤️‍💋‍🧑🏽","🧑🏾‍❤️‍💋‍🧑🏿","🧑🏿‍❤️‍💋‍🧑🏻","🧑🏿‍❤️‍💋‍🧑🏼","🧑🏿‍❤️‍💋‍🧑🏽","🧑🏿‍❤️‍💋‍🧑🏾","👩‍❤️‍💋‍👨","👩🏻‍❤️‍💋‍👨🏻","👩🏻‍❤️‍💋‍👨🏼","👩🏻‍❤️‍💋‍👨🏽","👩🏻‍❤️‍💋‍👨🏾","👩🏻‍❤️‍💋‍👨🏿","👩🏼‍❤️‍💋‍👨🏻","👩🏼‍❤️‍💋‍👨🏼","👩🏼‍❤️‍💋‍👨🏽","👩🏼‍❤️‍💋‍👨🏾","👩🏼‍❤️‍💋‍👨🏿","👩🏽‍❤️‍💋‍👨🏻","👩🏽‍❤️‍💋‍👨🏼","👩🏽‍❤️‍💋‍👨🏽","👩🏽‍❤️‍💋‍👨🏾","👩🏽‍❤️‍💋‍👨🏿","👩🏾‍❤️‍💋‍👨🏻","👩🏾‍❤️‍💋‍👨🏼","👩🏾‍❤️‍💋‍👨🏽","👩🏾‍❤️‍💋‍👨🏾","👩🏾‍❤️‍💋‍👨🏿","👩🏿‍❤️‍💋‍👨🏻","👩🏿‍❤️‍💋‍👨🏼","👩🏿‍❤️‍💋‍👨🏽","👩🏿‍❤️‍💋‍👨🏾","👩🏿‍❤️‍💋‍👨🏿","👨‍❤️‍💋‍👨","👨🏻‍❤️‍💋‍👨🏻","👨🏻‍❤️‍💋‍👨🏼","👨🏻‍❤️‍💋‍👨🏽","👨🏻‍❤️‍💋‍👨🏾","👨🏻‍❤️‍💋‍👨🏿","👨🏼‍❤️‍💋‍👨🏻","👨🏼‍❤️‍💋‍👨🏼","👨🏼‍❤️‍💋‍👨🏽","👨🏼‍❤️‍💋‍👨🏾","👨🏼‍❤️‍💋‍👨🏿","👨🏽‍❤️‍💋‍👨🏻","👨🏽‍❤️‍💋‍👨🏼","👨🏽‍❤️‍💋‍👨🏽","👨🏽‍❤️‍💋‍👨🏾","👨🏽‍❤️‍💋‍👨🏿","👨🏾‍❤️‍💋‍👨🏻","👨🏾‍❤️‍💋‍👨🏼","👨🏾‍❤️‍💋‍👨🏽","👨🏾‍❤️‍💋‍👨🏾","👨🏾‍❤️‍💋‍👨🏿","👨🏿‍❤️‍💋‍👨🏻","👨🏿‍❤️‍💋‍👨🏼","👨🏿‍❤️‍💋‍👨🏽","👨🏿‍❤️‍💋‍👨🏾","👨🏿‍❤️‍💋‍👨🏿","👩‍❤️‍💋‍👩","👩🏻‍❤️‍💋‍👩🏻","👩🏻‍❤️‍💋‍👩🏼","👩🏻‍❤️‍💋‍👩🏽","👩🏻‍❤️‍💋‍👩🏾","👩🏻‍❤️‍💋‍👩🏿","👩🏼‍❤️‍💋‍👩🏻","👩🏼‍❤️‍💋‍👩🏼","👩🏼‍❤️‍💋‍👩🏽","👩🏼‍❤️‍💋‍👩🏾","👩🏼‍❤️‍💋‍👩🏿","👩🏽‍❤️‍💋‍👩🏻","👩🏽‍❤️‍💋‍👩🏼","👩🏽‍❤️‍💋‍👩🏽","👩🏽‍❤️‍💋‍👩🏾","👩🏽‍❤️‍💋‍👩🏿","👩🏾‍❤️‍💋‍👩🏻","👩🏾‍❤️‍💋‍👩🏼","👩🏾‍❤️‍💋‍👩🏽","👩🏾‍❤️‍💋‍👩🏾","👩🏾‍❤️‍💋‍👩🏿","👩🏿‍❤️‍💋‍👩🏻","👩🏿‍❤️‍💋‍👩🏼","👩🏿‍❤️‍💋‍👩🏽","👩🏿‍❤️‍💋‍👩🏾","👩🏿‍❤️‍💋‍👩🏿","💑","💑🏻","💑🏼","💑🏽","💑🏾","💑🏿","🧑🏻‍❤️‍🧑🏼","🧑🏻‍❤️‍🧑🏽","🧑🏻‍❤️‍🧑🏾","🧑🏻‍❤️‍🧑🏿","🧑🏼‍❤️‍🧑🏻","🧑🏼‍❤️‍🧑🏽","🧑🏼‍❤️‍🧑🏾","🧑🏼‍❤️‍🧑🏿","🧑🏽‍❤️‍🧑🏻","🧑🏽‍❤️‍🧑🏼","🧑🏽‍❤️‍🧑🏾","🧑🏽‍❤️‍🧑🏿","🧑🏾‍❤️‍🧑🏻","🧑🏾‍❤️‍🧑🏼","🧑🏾‍❤️‍🧑🏽","🧑🏾‍❤️‍🧑🏿","🧑🏿‍❤️‍🧑🏻","🧑🏿‍❤️‍🧑🏼","🧑🏿‍❤️‍🧑🏽","🧑🏿‍❤️‍🧑🏾","👩‍❤️‍👨","👩🏻‍❤️‍👨🏻","👩🏻‍❤️‍👨🏼","👩🏻‍❤️‍👨🏽","👩🏻‍❤️‍👨🏾","👩🏻‍❤️‍👨🏿","👩🏼‍❤️‍👨🏻","👩🏼‍❤️‍👨🏼","👩🏼‍❤️‍👨🏽","👩🏼‍❤️‍👨🏾","👩🏼‍❤️‍👨🏿","👩🏽‍❤️‍👨🏻","👩🏽‍❤️‍👨🏼","👩🏽‍❤️‍👨🏽","👩🏽‍❤️‍👨🏾","👩🏽‍❤️‍👨🏿","👩🏾‍❤️‍👨🏻","👩🏾‍❤️‍👨🏼","👩🏾‍❤️‍👨🏽","👩🏾‍❤️‍👨🏾","👩🏾‍❤️‍👨🏿","👩🏿‍❤️‍👨🏻","👩🏿‍❤️‍👨🏼","👩🏿‍❤️‍👨🏽","👩🏿‍❤️‍👨🏾","👩🏿‍❤️‍👨🏿","👨‍❤️‍👨","👨🏻‍❤️‍👨🏻","👨🏻‍❤️‍👨🏼","👨🏻‍❤️‍👨🏽","👨🏻‍❤️‍👨🏾","👨🏻‍❤️‍👨🏿","👨🏼‍❤️‍👨🏻","👨🏼‍❤️‍👨🏼","👨🏼‍❤️‍👨🏽","👨🏼‍❤️‍👨🏾","👨🏼‍❤️‍👨🏿","👨🏽‍❤️‍👨🏻","👨🏽‍❤️‍👨🏼","👨🏽‍❤️‍👨🏽","👨🏽‍❤️‍👨🏾","👨🏽‍❤️‍👨🏿","👨🏾‍❤️‍👨🏻","👨🏾‍❤️‍👨🏼","👨🏾‍❤️‍👨🏽","👨🏾‍❤️‍👨🏾","👨🏾‍❤️‍👨🏿","👨🏿‍❤️‍👨🏻","👨🏿‍❤️‍👨🏼","👨🏿‍❤️‍👨🏽","👨🏿‍❤️‍👨🏾","👨🏿‍❤️‍👨🏿","👩‍❤️‍👩","👩🏻‍❤️‍👩🏻","👩🏻‍❤️‍👩🏼","👩🏻‍❤️‍👩🏽","👩🏻‍❤️‍👩🏾","👩🏻‍❤️‍👩🏿","👩🏼‍❤️‍👩🏻","👩🏼‍❤️‍👩🏼","👩🏼‍❤️‍👩🏽","👩🏼‍❤️‍👩🏾","👩🏼‍❤️‍👩🏿","👩🏽‍❤️‍👩🏻","👩🏽‍❤️‍👩🏼","👩🏽‍❤️‍👩🏽","👩🏽‍❤️‍👩🏾","👩🏽‍❤️‍👩🏿","👩🏾‍❤️‍👩🏻","👩🏾‍❤️‍👩🏼","👩🏾‍❤️‍👩🏽","👩🏾‍❤️‍👩🏾","👩🏾‍❤️‍👩🏿","👩🏿‍❤️‍👩🏻","👩🏿‍❤️‍👩🏼","👩🏿‍❤️‍👩🏽","👩🏿‍❤️‍👩🏾","👩🏿‍❤️‍👩🏿","👪","👨‍👩‍👦","👨‍👩‍👧","👨‍👩‍👧‍👦","👨‍👩‍👦‍👦","👨‍👩‍👧‍👧","👨‍👨‍👦","👨‍👨‍👧","👨‍👨‍👧‍👦","👨‍👨‍👦‍👦","👨‍👨‍👧‍👧","👩‍👩‍👦","👩‍👩‍👧","👩‍👩‍👧‍👦","👩‍👩‍👦‍👦","👩‍👩‍👧‍👧","👨‍👦","👨‍👦‍👦","👨‍👧","👨‍👧‍👦","👨‍👧‍👧","👩‍👦","👩‍👦‍👦","👩‍👧","👩‍👧‍👦","👩‍👧‍👧","🗣️","👤","👥","🫂","👣"],nature:["🐵","🐒","🦍","🦧","🐶","🐕","🦮","🐕‍🦺","🐩","🐺","🦊","🦝","🐱","🐈","🐈‍⬛","🦁","🐯","🐅","🐆","🐴","🐎","🦄","🦓","🦌","🦬","🐮","🐂","🐃","🐄","🐷","🐖","🐗","🐽","🐏","🐑","🐐","🐪","🐫","🦙","🦒","🐘","🦣","🦏","🦛","🐭","🐁","🐀","🐹","🐰","🐇","🐿️","🦫","🦔","🦇","🐻","🐻‍❄️","🐨","🐼","🦥","🦦","🦨","🦘","🦡","🐾","🦃","🐔","🐓","🐣","🐤","🐥","🐦","🐧","🕊️","🦅","🦆","🦢","🦉","🦤","🪶","🦩","🦚","🦜","🐸","🐊","🐢","🦎","🐍","🐲","🐉","🦕","🦖","🐳","🐋","🐬","🦭","🐟","🐠","🐡","🦈","🐙","🐚","🐌","🦋","🐛","🐜","🐝","🪲","🐞","🦗","🪳","🕷️","🕸️","🦂","🦟","🪰","🪱","🦠","💐","🌸","💮","🏵️","🌹","🥀","🌺","🌻","🌼","🌷","🌱","🪴","🌲","🌳","🌴","🌵","🌾","🌿","☘️","🍀","🍁","🍂","🍃"],food:["🍇","🍈","🍉","🍊","🍋","🍌","🍍","🥭","🍎","🍏","🍐","🍑","🍒","🍓","🫐","🥝","🍅","🫒","🥥","🥑","🍆","🥔","🥕","🌽","🌶️","🫑","🥒","🥬","🥦","🧄","🧅","🍄","🥜","🌰","🍞","🥐","🥖","🫓","🥨","🥯","🥞","🧇","🧀","🍖","🍗","🥩","🥓","🍔","🍟","🍕","🌭","🥪","🌮","🌯","🫔","🥙","🧆","🥚","🍳","🥘","🍲","🫕","🥣","🥗","🍿","🧈","🧂","🥫","🍱","🍘","🍙","🍚","🍛","🍜","🍝","🍠","🍢","🍣","🍤","🍥","🥮","🍡","🥟","🥠","🥡","🦀","🦞","🦐","🦑","🦪","🍦","🍧","🍨","🍩","🍪","🎂","🍰","🧁","🥧","🍫","🍬","🍭","🍮","🍯","🍼","🥛","☕","🫖","🍵","🍶","🍾","🍷","🍸","🍹","🍺","🍻","🥂","🥃","🥤","🧋","🧃","🧉","🧊","🥢","🍽️","🍴","🥄","🔪","🏺"],travel:["🌍","🌎","🌏","🌐","🗺️","🗾","🧭","🏔️","⛰️","🌋","🗻","🏕️","🏖️","🏜️","🏝️","🏞️","🏟️","🏛️","🏗️","🧱","🪨","🪵","🛖","🏘️","🏚️","🏠","🏡","🏢","🏣","🏤","🏥","🏦","🏨","🏩","🏪","🏫","🏬","🏭","🏯","🏰","💒","🗼","🗽","⛪","🕌","🛕","🕍","⛩️","🕋","⛲","⛺","🌁","🌃","🏙️","🌄","🌅","🌆","🌇","🌉","♨️","🎠","🎡","🎢","💈","🎪","🚂","🚃","🚄","🚅","🚆","🚇","🚈","🚉","🚊","🚝","🚞","🚋","🚌","🚍","🚎","🚐","🚑","🚒","🚓","🚔","🚕","🚖","🚗","🚘","🚙","🛻","🚚","🚛","🚜","🏎️","🏍️","🛵","🦽","🦼","🛺","🚲","🛴","🛹","🛼","🚏","🛣️","🛤️","🛢️","⛽","🚨","🚥","🚦","🛑","🚧","⚓","⛵","🛶","🚤","🛳️","⛴️","🛥️","🚢","✈️","🛩️","🛫","🛬","🪂","💺","🚁","🚟","🚠","🚡","🛰️","🚀","🛸","🛎️","🧳","⌛","⏳","⌚","⏰","⏱️","⏲️","🕰️","🕛","🕧","🕐","🕜","🕑","🕝","🕒","🕞","🕓","🕟","🕔","🕠","🕕","🕡","🕖","🕢","🕗","🕣","🕘","🕤","🕙","🕥","🕚","🕦","🌑","🌒","🌓","🌔","🌕","🌖","🌗","🌘","🌙","🌚","🌛","🌜","🌡️","☀️","🌝","🌞","🪐","⭐","🌟","🌠","🌌","☁️","⛅","⛈️","🌤️","🌥️","🌦️","🌧️","🌨️","🌩️","🌪️","🌫️","🌬️","🌀","🌈","🌂","☂️","☔","⛱️","⚡","❄️","☃️","⛄","☄️","🔥","💧","🌊"],activity:["🎃","🎄","🎆","🎇","🧨","✨","🎈","🎉","🎊","🎋","🎍","🎎","🎏","🎐","🎑","🧧","🎀","🎁","🎗️","🎟️","🎫","🎖️","🏆","🏅","🥇","🥈","🥉","⚽","⚾","🥎","🏀","🏐","🏈","🏉","🎾","🥏","🎳","🏏","🏑","🏒","🥍","🏓","🏸","🥊","🥋","🥅","⛳","⛸️","🎣","🤿","🎽","🎿","🛷","🥌","🎯","🪀","🪁","🎱","🔮","🪄","🧿","🎮","🕹️","🎰","🎲","🧩","🧸","🪅","🪆","♠️","♥️","♦️","♣️","♟️","🃏","🀄","🎴","🎭","🖼️","🎨","🧵","🪡","🧶","🪢"],object:["👓","🕶️","🥽","🥼","🦺","👔","👕","👖","🧣","🧤","🧥","🧦","👗","👘","🥻","🩱","🩲","🩳","👙","👚","👛","👜","👝","🛍️","🎒","🩴","👞","👟","🥾","🥿","👠","👡","🩰","👢","👑","👒","🎩","🎓","🧢","🪖","⛑️","📿","💄","💍","💎","🔇","🔈","🔉","🔊","📢","📣","📯","🔔","🔕","🎼","🎵","🎶","🎙️","🎚️","🎛️","🎤","🎧","📻","🎷","🪗","🎸","🎹","🎺","🎻","🪕","🥁","🪘","📱","📲","☎️","📞","📟","📠","🔋","🔌","💻","🖥️","🖨️","⌨️","🖱️","🖲️","💽","💾","💿","📀","🧮","🎥","🎞️","📽️","🎬","📺","📷","📸","📹","📼","🔍","🔎","🕯️","💡","🔦","🏮","🪔","📔","📕","📖","📗","📘","📙","📚","📓","📒","📃","📜","📄","📰","🗞️","📑","🔖","🏷️","💰","🪙","💴","💵","💶","💷","💸","💳","🧾","💹","✉️","📧","📨","📩","📤","📥","📦","📫","📪","📬","📭","📮","🗳️","✏️","✒️","🖋️","🖊️","🖌️","🖍️","📝","💼","📁","📂","🗂️","📅","📆","🗒️","🗓️","📇","📈","📉","📊","📋","📌","📍","📎","🖇️","📏","📐","✂️","🗃️","🗄️","🗑️","🔒","🔓","🔏","🔐","🔑","🗝️","🔨","🪓","⛏️","⚒️","🛠️","🗡️","⚔️","🔫","🪃","🏹","🛡️","🪚","🔧","🪛","🔩","⚙️","🗜️","⚖️","🦯","🔗","⛓️","🪝","🧰","🧲","🪜","⚗️","🧪","🧫","🧬","🔬","🔭","📡","💉","🩸","💊","🩹","🩺","🚪","🛗","🪞","🪟","🛏️","🛋️","🪑","🚽","🪠","🚿","🛁","🪤","🪒","🧴","🧷","🧹","🧺","🧻","🪣","🧼","🪥","🧽","🧯","🛒","🚬","⚰️","🪦","⚱️","🗿","🪧"],symbol:["🏧","🚮","🚰","♿","🚹","🚺","🚻","🚼","🚾","🛂","🛃","🛄","🛅","⚠️","🚸","⛔","🚫","🚳","🚭","🚯","🚱","🚷","📵","🔞","☢️","☣️","⬆️","↗️","➡️","↘️","⬇️","↙️","⬅️","↖️","↕️","↔️","↩️","↪️","⤴️","⤵️","🔃","🔄","🔙","🔚","🔛","🔜","🔝","🛐","⚛️","🕉️","✡️","☸️","☯️","✝️","☦️","☪️","☮️","🕎","🔯","♈","♉","♊","♋","♌","♍","♎","♏","♐","♑","♒","♓","⛎","🔀","🔁","🔂","▶️","⏩","⏭️","⏯️","◀️","⏪","⏮️","🔼","⏫","🔽","⏬","⏸️","⏹️","⏺️","⏏️","🎦","🔅","🔆","📶","📳","📴","♀️","♂️","⚧️","✖️","➕","➖","➗","♾️","‼️","⁉️","❓","❔","❕","❗","〰️","💱","💲","⚕️","♻️","⚜️","🔱","📛","🔰","⭕","✅","☑️","✔️","❌","❎","➰","➿","〽️","✳️","✴️","❇️","©️","®️","™️","#️⃣","*️⃣","0️⃣","1️⃣","2️⃣","3️⃣","4️⃣","5️⃣","6️⃣","7️⃣","8️⃣","9️⃣","🔟","🔠","🔡","🔢","🔣","🔤","🅰️","🆎","🅱️","🆑","🆒","🆓","ℹ️","🆔","Ⓜ️","🆕","🆖","🅾️","🆗","🅿️","🆘","🆙","🆚","🈁","🈂️","🈷️","🈶","🈯","🉐","🈹","🈚","🈲","🉑","🈸","🈴","🈳","㊗️","㊙️","🈺","🈵","🔴","🟠","🟡","🟢","🔵","🟣","🟤","⚫","⚪","🟥","🟧","🟨","🟩","🟦","🟪","🟫","⬛","⬜","◼️","◻️","◾","◽","▪️","▫️","🔶","🔷","🔸","🔹","🔺","🔻","💠","🔘","🔳","🔲"],flag:["🏁","🚩","🎌","🏴","🏳️","🏳️‍🌈","🏳️‍⚧️","🏴‍☠️","🇦🇨","🇦🇩","🇦🇪","🇦🇫","🇦🇬","🇦🇮","🇦🇱","🇦🇲","🇦🇴","🇦🇶","🇦🇷","🇦🇸","🇦🇹","🇦🇺","🇦🇼","🇦🇽","🇦🇿","🇧🇦","🇧🇧","🇧🇩","🇧🇪","🇧🇫","🇧🇬","🇧🇭","🇧🇮","🇧🇯","🇧🇱","🇧🇲","🇧🇳","🇧🇴","🇧🇶","🇧🇷","🇧🇸","🇧🇹","🇧🇻","🇧🇼","🇧🇾","🇧🇿","🇨🇦","🇨🇨","🇨🇩","🇨🇫","🇨🇬","🇨🇭","🇨🇮","🇨🇰","🇨🇱","🇨🇲","🇨🇳","🇨🇴","🇨🇵","🇨🇷","🇨🇺","🇨🇻","🇨🇼","🇨🇽","🇨🇾","🇨🇿","🇩🇪","🇩🇬","🇩🇯","🇩🇰","🇩🇲","🇩🇴","🇩🇿","🇪🇦","🇪🇨","🇪🇪","🇪🇬","🇪🇭","🇪🇷","🇪🇸","🇪🇹","🇪🇺","🇫🇮","🇫🇯","🇫🇰","🇫🇲","🇫🇴","🇫🇷","🇬🇦","🇬🇧","🇬🇩","🇬🇪","🇬🇫","🇬🇬","🇬🇭","🇬🇮","🇬🇱","🇬🇲","🇬🇳","🇬🇵","🇬🇶","🇬🇷","🇬🇸","🇬🇹","🇬🇺","🇬🇼","🇬🇾","🇭🇰","🇭🇲","🇭🇳","🇭🇷","🇭🇹","🇭🇺","🇮🇨","🇮🇩","🇮🇪","🇮🇱","🇮🇲","🇮🇳","🇮🇴","🇮🇶","🇮🇷","🇮🇸","🇮🇹","🇯🇪","🇯🇲","🇯🇴","🇯🇵","🇰🇪","🇰🇬","🇰🇭","🇰🇮","🇰🇲","🇰🇳","🇰🇵","🇰🇷","🇰🇼","🇰🇾","🇰🇿","🇱🇦","🇱🇧","🇱🇨","🇱🇮","🇱🇰","🇱🇷","🇱🇸","🇱🇹","🇱🇺","🇱🇻","🇱🇾","🇲🇦","🇲🇨","🇲🇩","🇲🇪","🇲🇫","🇲🇬","🇲🇭","🇲🇰","🇲🇱","🇲🇲","🇲🇳","🇲🇴","🇲🇵","🇲🇶","🇲🇷","🇲🇸","🇲🇹","🇲🇺","🇲🇻","🇲🇼","🇲🇽","🇲🇾","🇲🇿","🇳🇦","🇳🇨","🇳🇪","🇳🇫","🇳🇬","🇳🇮","🇳🇱","🇳🇴","🇳🇵","🇳🇷","🇳🇺","🇳🇿","🇴🇲","🇵🇦","🇵🇪","🇵🇫","🇵🇬","🇵🇭","🇵🇰","🇵🇱","🇵🇲","🇵🇳","🇵🇷","🇵🇸","🇵🇹","🇵🇼","🇵🇾","🇶🇦","🇷🇪","🇷🇴","🇷🇸","🇷🇺","🇷🇼","🇸🇦","🇸🇧","🇸🇨","🇸🇩","🇸🇪","🇸🇬","🇸🇭","🇸🇮","🇸🇯","🇸🇰","🇸🇱","🇸🇲","🇸🇳","🇸🇴","🇸🇷","🇸🇸","🇸🇹","🇸🇻","🇸🇽","🇸🇾","🇸🇿","🇹🇦","🇹🇨","🇹🇩","🇹🇫","🇹🇬","🇹🇭","🇹🇯","🇹🇰","🇹🇱","🇹🇲","🇹🇳","🇹🇴","🇹🇷","🇹🇹","🇹🇻","🇹🇼","🇹🇿","🇺🇦","🇺🇬","🇺🇲","🇺🇳","🇺🇸","🇺🇾","🇺🇿","🇻🇦","🇻🇨","🇻🇪","🇻🇬","🇻🇮","🇻🇳","🇻🇺","🇼🇫","🇼🇸","🇽🇰","🇾🇪","🇾🇹","🇿🇦","🇿🇲","🇿🇼"]},http_status_code:{informational:[100,101,102,103],success:[200,201,202,203,204,205,206,207,208,226],redirection:[300,301,302,303,304,305,306,307,308],clientError:[400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,421,422,423,424,425,426,428,429,431,451],serverError:[500,501,502,503,504,505,506,507,508,510,511]}},location:{country_code:[{alpha2:"AD",alpha3:"AND",numeric:"020"},{alpha2:"AE",alpha3:"ARE",numeric:"784"},{alpha2:"AF",alpha3:"AFG",numeric:"004"},{alpha2:"AG",alpha3:"ATG",numeric:"028"},{alpha2:"AI",alpha3:"AIA",numeric:"660"},{alpha2:"AL",alpha3:"ALB",numeric:"008"},{alpha2:"AM",alpha3:"ARM",numeric:"051"},{alpha2:"AO",alpha3:"AGO",numeric:"024"},{alpha2:"AQ",alpha3:"ATA",numeric:"010"},{alpha2:"AR",alpha3:"ARG",numeric:"032"},{alpha2:"AS",alpha3:"ASM",numeric:"016"},{alpha2:"AT",alpha3:"AUT",numeric:"040"},{alpha2:"AU",alpha3:"AUS",numeric:"036"},{alpha2:"AW",alpha3:"ABW",numeric:"533"},{alpha2:"AX",alpha3:"ALA",numeric:"248"},{alpha2:"AZ",alpha3:"AZE",numeric:"031"},{alpha2:"BA",alpha3:"BIH",numeric:"070"},{alpha2:"BB",alpha3:"BRB",numeric:"052"},{alpha2:"BD",alpha3:"BGD",numeric:"050"},{alpha2:"BE",alpha3:"BEL",numeric:"056"},{alpha2:"BF",alpha3:"BFA",numeric:"854"},{alpha2:"BG",alpha3:"BGR",numeric:"100"},{alpha2:"BH",alpha3:"BHR",numeric:"048"},{alpha2:"BI",alpha3:"BDI",numeric:"108"},{alpha2:"BJ",alpha3:"BEN",numeric:"204"},{alpha2:"BL",alpha3:"BLM",numeric:"652"},{alpha2:"BM",alpha3:"BMU",numeric:"060"},{alpha2:"BN",alpha3:"BRN",numeric:"096"},{alpha2:"BO",alpha3:"BOL",numeric:"068"},{alpha2:"BQ",alpha3:"BES",numeric:"535"},{alpha2:"BR",alpha3:"BRA",numeric:"076"},{alpha2:"BS",alpha3:"BHS",numeric:"044"},{alpha2:"BT",alpha3:"BTN",numeric:"064"},{alpha2:"BV",alpha3:"BVT",numeric:"074"},{alpha2:"BW",alpha3:"BWA",numeric:"072"},{alpha2:"BY",alpha3:"BLR",numeric:"112"},{alpha2:"BZ",alpha3:"BLZ",numeric:"084"},{alpha2:"CA",alpha3:"CAN",numeric:"124"},{alpha2:"CC",alpha3:"CCK",numeric:"166"},{alpha2:"CD",alpha3:"COD",numeric:"180"},{alpha2:"CF",alpha3:"CAF",numeric:"140"},{alpha2:"CG",alpha3:"COG",numeric:"178"},{alpha2:"CH",alpha3:"CHE",numeric:"756"},{alpha2:"CI",alpha3:"CIV",numeric:"384"},{alpha2:"CK",alpha3:"COK",numeric:"184"},{alpha2:"CL",alpha3:"CHL",numeric:"152"},{alpha2:"CM",alpha3:"CMR",numeric:"120"},{alpha2:"CN",alpha3:"CHN",numeric:"156"},{alpha2:"CO",alpha3:"COL",numeric:"170"},{alpha2:"CR",alpha3:"CRI",numeric:"188"},{alpha2:"CU",alpha3:"CUB",numeric:"192"},{alpha2:"CV",alpha3:"CPV",numeric:"132"},{alpha2:"CW",alpha3:"CUW",numeric:"531"},{alpha2:"CX",alpha3:"CXR",numeric:"162"},{alpha2:"CY",alpha3:"CYP",numeric:"196"},{alpha2:"CZ",alpha3:"CZE",numeric:"203"},{alpha2:"DE",alpha3:"DEU",numeric:"276"},{alpha2:"DJ",alpha3:"DJI",numeric:"262"},{alpha2:"DK",alpha3:"DNK",numeric:"208"},{alpha2:"DM",alpha3:"DMA",numeric:"212"},{alpha2:"DO",alpha3:"DOM",numeric:"214"},{alpha2:"DZ",alpha3:"DZA",numeric:"012"},{alpha2:"EC",alpha3:"ECU",numeric:"218"},{alpha2:"EE",alpha3:"EST",numeric:"233"},{alpha2:"EG",alpha3:"EGY",numeric:"818"},{alpha2:"EH",alpha3:"ESH",numeric:"732"},{alpha2:"ER",alpha3:"ERI",numeric:"232"},{alpha2:"ES",alpha3:"ESP",numeric:"724"},{alpha2:"ET",alpha3:"ETH",numeric:"231"},{alpha2:"FI",alpha3:"FIN",numeric:"246"},{alpha2:"FJ",alpha3:"FJI",numeric:"242"},{alpha2:"FK",alpha3:"FLK",numeric:"238"},{alpha2:"FM",alpha3:"FSM",numeric:"583"},{alpha2:"FO",alpha3:"FRO",numeric:"234"},{alpha2:"FR",alpha3:"FRA",numeric:"250"},{alpha2:"GA",alpha3:"GAB",numeric:"266"},{alpha2:"GB",alpha3:"GBR",numeric:"826"},{alpha2:"GD",alpha3:"GRD",numeric:"308"},{alpha2:"GE",alpha3:"GEO",numeric:"268"},{alpha2:"GF",alpha3:"GUF",numeric:"254"},{alpha2:"GG",alpha3:"GGY",numeric:"831"},{alpha2:"GH",alpha3:"GHA",numeric:"288"},{alpha2:"GI",alpha3:"GIB",numeric:"292"},{alpha2:"GL",alpha3:"GRL",numeric:"304"},{alpha2:"GM",alpha3:"GMB",numeric:"270"},{alpha2:"GN",alpha3:"GIN",numeric:"324"},{alpha2:"GP",alpha3:"GLP",numeric:"312"},{alpha2:"GQ",alpha3:"GNQ",numeric:"226"},{alpha2:"GR",alpha3:"GRC",numeric:"300"},{alpha2:"GS",alpha3:"SGS",numeric:"239"},{alpha2:"GT",alpha3:"GTM",numeric:"320"},{alpha2:"GU",alpha3:"GUM",numeric:"316"},{alpha2:"GW",alpha3:"GNB",numeric:"624"},{alpha2:"GY",alpha3:"GUY",numeric:"328"},{alpha2:"HK",alpha3:"HKG",numeric:"344"},{alpha2:"HM",alpha3:"HMD",numeric:"334"},{alpha2:"HN",alpha3:"HND",numeric:"340"},{alpha2:"HR",alpha3:"HRV",numeric:"191"},{alpha2:"HT",alpha3:"HTI",numeric:"332"},{alpha2:"HU",alpha3:"HUN",numeric:"348"},{alpha2:"ID",alpha3:"IDN",numeric:"360"},{alpha2:"IE",alpha3:"IRL",numeric:"372"},{alpha2:"IL",alpha3:"ISR",numeric:"376"},{alpha2:"IM",alpha3:"IMN",numeric:"833"},{alpha2:"IN",alpha3:"IND",numeric:"356"},{alpha2:"IO",alpha3:"IOT",numeric:"086"},{alpha2:"IQ",alpha3:"IRQ",numeric:"368"},{alpha2:"IR",alpha3:"IRN",numeric:"364"},{alpha2:"IS",alpha3:"ISL",numeric:"352"},{alpha2:"IT",alpha3:"ITA",numeric:"380"},{alpha2:"JE",alpha3:"JEY",numeric:"832"},{alpha2:"JM",alpha3:"JAM",numeric:"388"},{alpha2:"JO",alpha3:"JOR",numeric:"400"},{alpha2:"JP",alpha3:"JPN",numeric:"392"},{alpha2:"KE",alpha3:"KEN",numeric:"404"},{alpha2:"KG",alpha3:"KGZ",numeric:"417"},{alpha2:"KH",alpha3:"KHM",numeric:"116"},{alpha2:"KI",alpha3:"KIR",numeric:"296"},{alpha2:"KM",alpha3:"COM",numeric:"174"},{alpha2:"KN",alpha3:"KNA",numeric:"659"},{alpha2:"KP",alpha3:"PRK",numeric:"408"},{alpha2:"KR",alpha3:"KOR",numeric:"410"},{alpha2:"KW",alpha3:"KWT",numeric:"414"},{alpha2:"KY",alpha3:"CYM",numeric:"136"},{alpha2:"KZ",alpha3:"KAZ",numeric:"398"},{alpha2:"LA",alpha3:"LAO",numeric:"418"},{alpha2:"LB",alpha3:"LBN",numeric:"422"},{alpha2:"LC",alpha3:"LCA",numeric:"662"},{alpha2:"LI",alpha3:"LIE",numeric:"438"},{alpha2:"LK",alpha3:"LKA",numeric:"144"},{alpha2:"LR",alpha3:"LBR",numeric:"430"},{alpha2:"LS",alpha3:"LSO",numeric:"426"},{alpha2:"LT",alpha3:"LTU",numeric:"440"},{alpha2:"LU",alpha3:"LUX",numeric:"442"},{alpha2:"LV",alpha3:"LVA",numeric:"428"},{alpha2:"LY",alpha3:"LBY",numeric:"434"},{alpha2:"MA",alpha3:"MAR",numeric:"504"},{alpha2:"MC",alpha3:"MCO",numeric:"492"},{alpha2:"MD",alpha3:"MDA",numeric:"498"},{alpha2:"ME",alpha3:"MNE",numeric:"499"},{alpha2:"MF",alpha3:"MAF",numeric:"663"},{alpha2:"MG",alpha3:"MDG",numeric:"450"},{alpha2:"MH",alpha3:"MHL",numeric:"584"},{alpha2:"MK",alpha3:"MKD",numeric:"807"},{alpha2:"ML",alpha3:"MLI",numeric:"466"},{alpha2:"MM",alpha3:"MMR",numeric:"104"},{alpha2:"MN",alpha3:"MNG",numeric:"496"},{alpha2:"MO",alpha3:"MAC",numeric:"446"},{alpha2:"MP",alpha3:"MNP",numeric:"580"},{alpha2:"MQ",alpha3:"MTQ",numeric:"474"},{alpha2:"MR",alpha3:"MRT",numeric:"478"},{alpha2:"MS",alpha3:"MSR",numeric:"500"},{alpha2:"MT",alpha3:"MLT",numeric:"470"},{alpha2:"MU",alpha3:"MUS",numeric:"480"},{alpha2:"MV",alpha3:"MDV",numeric:"462"},{alpha2:"MW",alpha3:"MWI",numeric:"454"},{alpha2:"MX",alpha3:"MEX",numeric:"484"},{alpha2:"MY",alpha3:"MYS",numeric:"458"},{alpha2:"MZ",alpha3:"MOZ",numeric:"508"},{alpha2:"NA",alpha3:"NAM",numeric:"516"},{alpha2:"NC",alpha3:"NCL",numeric:"540"},{alpha2:"NE",alpha3:"NER",numeric:"562"},{alpha2:"NF",alpha3:"NFK",numeric:"574"},{alpha2:"NG",alpha3:"NGA",numeric:"566"},{alpha2:"NI",alpha3:"NIC",numeric:"558"},{alpha2:"NL",alpha3:"NLD",numeric:"528"},{alpha2:"NO",alpha3:"NOR",numeric:"578"},{alpha2:"NP",alpha3:"NPL",numeric:"524"},{alpha2:"NR",alpha3:"NRU",numeric:"520"},{alpha2:"NU",alpha3:"NIU",numeric:"570"},{alpha2:"NZ",alpha3:"NZL",numeric:"554"},{alpha2:"OM",alpha3:"OMN",numeric:"512"},{alpha2:"PA",alpha3:"PAN",numeric:"591"},{alpha2:"PE",alpha3:"PER",numeric:"604"},{alpha2:"PF",alpha3:"PYF",numeric:"258"},{alpha2:"PG",alpha3:"PNG",numeric:"598"},{alpha2:"PH",alpha3:"PHL",numeric:"608"},{alpha2:"PK",alpha3:"PAK",numeric:"586"},{alpha2:"PL",alpha3:"POL",numeric:"616"},{alpha2:"PM",alpha3:"SPM",numeric:"666"},{alpha2:"PN",alpha3:"PCN",numeric:"612"},{alpha2:"PR",alpha3:"PRI",numeric:"630"},{alpha2:"PS",alpha3:"PSE",numeric:"275"},{alpha2:"PT",alpha3:"PRT",numeric:"620"},{alpha2:"PW",alpha3:"PLW",numeric:"585"},{alpha2:"PY",alpha3:"PRY",numeric:"600"},{alpha2:"QA",alpha3:"QAT",numeric:"634"},{alpha2:"RE",alpha3:"REU",numeric:"638"},{alpha2:"RO",alpha3:"ROU",numeric:"642"},{alpha2:"RS",alpha3:"SRB",numeric:"688"},{alpha2:"RU",alpha3:"RUS",numeric:"643"},{alpha2:"RW",alpha3:"RWA",numeric:"646"},{alpha2:"SA",alpha3:"SAU",numeric:"682"},{alpha2:"SB",alpha3:"SLB",numeric:"090"},{alpha2:"SC",alpha3:"SYC",numeric:"690"},{alpha2:"SD",alpha3:"SDN",numeric:"729"},{alpha2:"SE",alpha3:"SWE",numeric:"752"},{alpha2:"SG",alpha3:"SGP",numeric:"702"},{alpha2:"SH",alpha3:"SHN",numeric:"654"},{alpha2:"SI",alpha3:"SVN",numeric:"705"},{alpha2:"SJ",alpha3:"SJM",numeric:"744"},{alpha2:"SK",alpha3:"SVK",numeric:"703"},{alpha2:"SL",alpha3:"SLE",numeric:"694"},{alpha2:"SM",alpha3:"SMR",numeric:"674"},{alpha2:"SN",alpha3:"SEN",numeric:"686"},{alpha2:"SO",alpha3:"SOM",numeric:"706"},{alpha2:"SR",alpha3:"SUR",numeric:"740"},{alpha2:"SS",alpha3:"SSD",numeric:"728"},{alpha2:"ST",alpha3:"STP",numeric:"678"},{alpha2:"SV",alpha3:"SLV",numeric:"222"},{alpha2:"SX",alpha3:"SXM",numeric:"534"},{alpha2:"SY",alpha3:"SYR",numeric:"760"},{alpha2:"SZ",alpha3:"SWZ",numeric:"748"},{alpha2:"TC",alpha3:"TCA",numeric:"796"},{alpha2:"TD",alpha3:"TCD",numeric:"148"},{alpha2:"TF",alpha3:"ATF",numeric:"260"},{alpha2:"TG",alpha3:"TGO",numeric:"768"},{alpha2:"TH",alpha3:"THA",numeric:"764"},{alpha2:"TJ",alpha3:"TJK",numeric:"762"},{alpha2:"TK",alpha3:"TKL",numeric:"772"},{alpha2:"TL",alpha3:"TLS",numeric:"626"},{alpha2:"TM",alpha3:"TKM",numeric:"795"},{alpha2:"TN",alpha3:"TUN",numeric:"788"},{alpha2:"TO",alpha3:"TON",numeric:"776"},{alpha2:"TR",alpha3:"TUR",numeric:"792"},{alpha2:"TT",alpha3:"TTO",numeric:"780"},{alpha2:"TV",alpha3:"TUV",numeric:"798"},{alpha2:"TW",alpha3:"TWN",numeric:"158"},{alpha2:"TZ",alpha3:"TZA",numeric:"834"},{alpha2:"UA",alpha3:"UKR",numeric:"804"},{alpha2:"UG",alpha3:"UGA",numeric:"800"},{alpha2:"UM",alpha3:"UMI",numeric:"581"},{alpha2:"US",alpha3:"USA",numeric:"840"},{alpha2:"UY",alpha3:"URY",numeric:"858"},{alpha2:"UZ",alpha3:"UZB",numeric:"860"},{alpha2:"VA",alpha3:"VAT",numeric:"336"},{alpha2:"VC",alpha3:"VCT",numeric:"670"},{alpha2:"VE",alpha3:"VEN",numeric:"862"},{alpha2:"VG",alpha3:"VGB",numeric:"092"},{alpha2:"VI",alpha3:"VIR",numeric:"850"},{alpha2:"VN",alpha3:"VNM",numeric:"704"},{alpha2:"VU",alpha3:"VUT",numeric:"548"},{alpha2:"WF",alpha3:"WLF",numeric:"876"},{alpha2:"WS",alpha3:"WSM",numeric:"882"},{alpha2:"YE",alpha3:"YEM",numeric:"887"},{alpha2:"YT",alpha3:"MYT",numeric:"175"},{alpha2:"ZA",alpha3:"ZAF",numeric:"710"},{alpha2:"ZM",alpha3:"ZMB",numeric:"894"},{alpha2:"ZW",alpha3:"ZWE",numeric:"716"}],time_zone:YC},metadata:{title:"Base",code:"base"},system:{directory_path:["/Applications","/bin","/boot","/boot/defaults","/dev","/etc","/etc/defaults","/etc/mail","/etc/namedb","/etc/periodic","/etc/ppp","/home","/home/user","/home/user/dir","/lib","/Library","/lost+found","/media","/mnt","/net","/Network","/opt","/opt/bin","/opt/include","/opt/lib","/opt/sbin","/opt/share","/private","/private/tmp","/private/var","/proc","/rescue","/root","/sbin","/selinux","/srv","/sys","/System","/tmp","/Users","/usr","/usr/X11R6","/usr/bin","/usr/include","/usr/lib","/usr/libdata","/usr/libexec","/usr/local/bin","/usr/local/src","/usr/obj","/usr/ports","/usr/sbin","/usr/share","/usr/src","/var","/var/log","/var/mail","/var/spool","/var/tmp","/var/yp"],mime_type:{"application/epub+zip":{extensions:["epub"]},"application/gzip":{extensions:["gz"]},"application/java-archive":{extensions:["jar","war","ear"]},"application/json":{extensions:["json","map"]},"application/ld+json":{extensions:["jsonld"]},"application/msword":{extensions:["doc","dot"]},"application/octet-stream":{extensions:["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"]},"application/ogg":{extensions:["ogx"]},"application/pdf":{extensions:["pdf"]},"application/rtf":{extensions:["rtf"]},"application/vnd.amazon.ebook":{extensions:["azw"]},"application/vnd.apple.installer+xml":{extensions:["mpkg"]},"application/vnd.mozilla.xul+xml":{extensions:["xul"]},"application/vnd.ms-excel":{extensions:["xls","xlm","xla","xlc","xlt","xlw"]},"application/vnd.ms-fontobject":{extensions:["eot"]},"application/vnd.ms-powerpoint":{extensions:["ppt","pps","pot"]},"application/vnd.oasis.opendocument.presentation":{extensions:["odp"]},"application/vnd.oasis.opendocument.spreadsheet":{extensions:["ods"]},"application/vnd.oasis.opendocument.text":{extensions:["odt"]},"application/vnd.openxmlformats-officedocument.presentationml.presentation":{extensions:["pptx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":{extensions:["xlsx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.document":{extensions:["docx"]},"application/vnd.rar":{extensions:["rar"]},"application/vnd.visio":{extensions:["vsd","vst","vss","vsw"]},"application/x-7z-compressed":{extensions:["7z"]},"application/x-abiword":{extensions:["abw"]},"application/x-bzip":{extensions:["bz"]},"application/x-bzip2":{extensions:["bz2","boz"]},"application/x-csh":{extensions:["csh"]},"application/x-freearc":{extensions:["arc"]},"application/x-httpd-php":{extensions:["php"]},"application/x-sh":{extensions:["sh"]},"application/x-tar":{extensions:["tar"]},"application/xhtml+xml":{extensions:["xhtml","xht"]},"application/xml":{extensions:["xml","xsl","xsd","rng"]},"application/zip":{extensions:["zip"]},"audio/3gpp":{extensions:["3gpp"]},"audio/3gpp2":{extensions:["3g2"]},"audio/aac":{extensions:["aac"]},"audio/midi":{extensions:["mid","midi","kar","rmi"]},"audio/mpeg":{extensions:["mpga","mp2","mp2a","mp3","m2a","m3a"]},"audio/ogg":{extensions:["oga","ogg","spx","opus"]},"audio/opus":{extensions:["opus"]},"audio/wav":{extensions:["wav"]},"audio/webm":{extensions:["weba"]},"font/otf":{extensions:["otf"]},"font/ttf":{extensions:["ttf"]},"font/woff":{extensions:["woff"]},"font/woff2":{extensions:["woff2"]},"image/avif":{extensions:["avif"]},"image/bmp":{extensions:["bmp"]},"image/gif":{extensions:["gif"]},"image/jpeg":{extensions:["jpeg","jpg","jpe"]},"image/png":{extensions:["png"]},"image/svg+xml":{extensions:["svg","svgz"]},"image/tiff":{extensions:["tif","tiff"]},"image/vnd.microsoft.icon":{extensions:["ico"]},"image/webp":{extensions:["webp"]},"text/calendar":{extensions:["ics","ifb"]},"text/css":{extensions:["css"]},"text/csv":{extensions:["csv"]},"text/html":{extensions:["html","htm","shtml"]},"text/javascript":{extensions:["js","mjs"]},"text/plain":{extensions:["txt","text","conf","def","list","log","in","ini"]},"video/3gpp":{extensions:["3gp","3gpp"]},"video/3gpp2":{extensions:["3g2"]},"video/mp2t":{extensions:["ts"]},"video/mp4":{extensions:["mp4","mp4v","mpg4"]},"video/mpeg":{extensions:["mpeg","mpg","mpe","m1v","m2v"]},"video/ogg":{extensions:["ogv"]},"video/webm":{extensions:["webm"]},"video/x-msvideo":{extensions:["avi"]}}}},UC=new class extends uC{rawDefinitions;definitions;airline=new Lw(this);animal=new dC(this);color=new Pw(this);commerce=new yC(this);company=new fC(this);database=new mC(this);date=new qw(this);finance=new vC(this);food=new xC(this);git=new kC(this);hacker=new wC(this);helpers=new iC(this);image=new _C(this);internet=new EC(this);location=new RC(this);lorem=new PC(this);music=new NC(this);person=new zw(this);phone=new GC(this);science=new IC(this);system=new JC(this);vehicle=new VC(this);word=new jC(this);get address(){return hC({deprecated:"faker.address",proposed:"faker.location",since:"8.0",until:"10.0"}),this.location}get name(){return hC({deprecated:"faker.name",proposed:"faker.person",since:"8.0",until:"10.0"}),this.person}constructor(e){super({randomizer:e.randomizer});let{locale:t}=e;if(Array.isArray(t)){if(0===t.length)throw new ww("The locale option must contain at least one locale definition.");t=function(e){let t={};for(let r of e)for(let e in r){let a=r[e];void 0===t[e]?t[e]={...a}:t[e]={...a,...t[e]}}return t}(t)}this.rawDefinitions=t,this.definitions=jw(this.rawDefinitions)}getMetadata(){return this.rawDefinitions.metadata??{}}}({locale:[kw,$C]});class qC{data_length=50;generated_data=[];auto_proceed=!0;locale="en_GB";imgAPIs=["https://picsum.photos/500/500?random=","https://avatar.iran.liara.run/public/"];constructor({length:e,auto_proceed:t,locale:r}){void 0!==e&&(this.data_length=e),void 0!==t&&(this.auto_proceed=t),void 0!==r&&(this.locale=r.replace("-","_")),this.auto_proceed&&this.generate()}generate(){return this.make_data()}make_data(){for(let e=0;e0&&(t.parentId=this.get_parent_id(e)),this.generated_data.push(t)}return this.generated_data}get_parent_id(e){let t=Math.floor(Math.random()*this.generated_data.length).toString();return t=0==parseInt(t)?"1":t,t==(e+1).toString()&&(t=this.get_parent_id(e)),t}generate_data(e){const t=Math.floor(2*Math.random()),r=this.imgAPIs[Math.floor(Math.random()*this.imgAPIs.length)]+e;return{id:e,name:UC.person.fullName(),role:UC.person.jobTitle(),location:UC.location.city()+", "+UC.location.country(),image:t?r:""}}}class ZC{tree_data=[];handleCollapseChildren=()=>{};center_elem=({})=>null;itemHierarchy=[];tmp_tree_data=[];tree_level_step=2;display_tree_in_step=!0;auto_display_tree_in_step=!0;link_point_position={top:e=>`translate(${parseInt(e.attr("width"))/2}, 0)`,bottom:e=>`translate(${parseInt(e.attr("width"))/2}, ${e.attr("height")})`,right:e=>`translate(${e.attr("width")}, ${e.attr("height")/2})`,left:e=>`translate(0, ${e.attr("height")/2})`};inverse_link_point_position={top:"bottom",bottom:"top",left:"right",right:"left"};chartHeadWidth=120;chartHeadHeight=130;chartHeadLandscapeWidth=240;chartHeadLandscapeHeight=80;chartHeadRoundedWidth=120;chartHeadRoundedHeight=180;color_handler={};chart_head_type="default";show_chart_head_border=!0;animation_rotation_speed=50;animation_rotation_interval=1;head_linker_thumb_circle_radius=8;linker_thumb_icon_color="bright500";linker_thumb_shape="symbolDiamond2";head_image_shape="symbolCircle";head_image_surface_area=60;chart_head_bg="#ffffff";auto_set_chart_head_bg=!1;emitEvent=()=>!1;tree_link_types={curveBumpX:Hx,curveBumpY:Dx,curveBasisClosed:bk,curveLinear:gx,curveStep:Yk,curveStepAfter:Uk,curveStepBefore:$k};tree_link_type=void 0;rootWrapperContainer=null;app_unique_id="";app_root_unique_selector="";constructor(){setTimeout((()=>{this.app_root_unique_selector=`[data-ts-unique-id='${this.app_unique_id}']`}),0)}createDynamicEl(){return new xw}splitStringIntoBatch(e,t){let r=[];for(let a=0;a1?t?.[0][0]+t?.at(-1)?.[0]:t?.[0][0]}format_employee_name(e,t=15){const r=e?.split(" "),a=r?.length>2?r?.[0]+" "+r?.at(-1):r?.join(" ");return this.splitStringIntoBatch(a,t)}symbol_type(e){const t=e.replace(/symbol/,"").toLowerCase();return["circle","cross","diamond","square","star","triangle","wye"].includes(t)?"fill":["plus","x","triangle2","asterisk","square2","diamond2"].includes(t)?"stroke":"fill"}get_page_body_bg(){const e=document.body.style.getPropertyValue("background-color");return""==e?"#ffffff":e}get_chart_head_bg(){return this.auto_set_chart_head_bg?this.get_page_body_bg():this.chart_head_bg}get_image_shape_spacing(e){return{symbolCircle:10,symbolCross:10,symbolDiamond:25,symbolDiamond2:10,symbolSquare:0,symbolSquare2:-8,symbolStar:20,symbolTriangle:20,symbolTriangle2:10,symbolWye:20}[e]}makeHead(e,t=!1,r={parent:"bottom",children:"top"}){return"default"==this.chart_head_type?this.defaultHead(e,t,r):"landscape"==this.chart_head_type?this.landscapeHead(e,t,r):"rounded"==this.chart_head_type?this.roundedHead(e,t,r):this.defaultHead(e,t,r)}handleCenterHead(e){e.stopPropagation();const t=e.currentTarget.getBoundingClientRect();this.center_elem(t)}defaultHead(e,t=!1,r={parent:"bottom",children:"top"}){const a=this.tree_data.filter((t=>t.parentId===e.id)).length>0,i=this.tree_data.filter((t=>t.id===e.parentId)).length>0,n=this.color_handler.getColor(e.id);let o=0;const c=this.get_chart_head_bg(),l=Yt("svg").attr("class","main-svg-el"+(this.getIsElRootTreeChild(e.id)?" root-svg-el":"")).attr("width",this.chartHeadWidth).attr("height",this.chartHeadHeight).attr("style","background-color: "+c).on("dblclick",(e=>this.handleCenterHead(e)));Yt("defs").append("filter").attr("id","blur1").attr("x",0).attr("y",0).append("feGaussianBlur").attr("in","SourceGraphic").attr("stdDeviation","3");const s=l.append("g"),u=s?.append("rect").attr("rx",16).attr("ry",16).attr("width",this.chartHeadWidth).attr("height",this.chartHeadHeight).attr("stroke",this.show_chart_head_border?n.color:"none").attr("fill","none").attr("stroke-width",0),h=parseInt(u.attr("width"))/2,d=s?.append("g").attr("y",100),p=Math.pow(this.head_image_surface_area-this.get_image_shape_spacing(this.head_image_shape),2);if(e.image){let t=h-this.head_image_surface_area;t=t>10?0:t-10,t=t>0?-t:t,t=h-this.head_image_surface_area<=10&&0==t?-10:t,o=h-this.head_image_surface_area<1?Math.abs(h-this.head_image_surface_area)+15:0,d.append("defs").append("clipPath").attr("id","default-head-clip-"+e.id).append("path").attr("d",pk().type(bw[this.head_image_shape]).size(p)).attr("transform",`translate(${parseInt(u.attr("width"))/2}, ${this.head_image_surface_area+t})`).attr("fill",n.bright500),d?.append("image").attr("href",e.image).attr("preserveAspectRatio","xMaxYMax slice").attr("width",this.head_image_surface_area).attr("height",this.head_image_surface_area).attr("x",parseInt(u.attr("width"))/2-this.head_image_surface_area/2).attr("y",this.head_image_surface_area/2+t).attr("clip-path",`url(#default-head-clip-${e.id})`)}else o=h-this.head_image_surface_area<1?Math.abs(h-this.head_image_surface_area)+15:0,d?.append("path").attr("d",pk().type(bw[this.head_image_shape]).size(p)).attr("stroke","stroke"==this.symbol_type(this.head_image_shape)?n.color:"none").attr("stroke-width","stroke"==this.symbol_type(this.head_image_shape)?1:0).attr("fill","stroke"==this.symbol_type(this.head_image_shape)?"transparent":n.color).attr("transform",`translate(${parseInt(u.attr("width"))/2}, 50)`),d?.append("text").attr("class","").attr("text-anchor","middle").attr("fill","stroke"==this.symbol_type(this.head_image_shape)?n.color:n.bright500).attr("x",parseInt(u.attr("width"))/2).attr("y",56).attr("font-size","95%").text(this.get_user_initials(e.name));this.format_employee_name(e.name).forEach(((e,t)=>{s?.append("text").attr("text-anchor","middle").attr("x",parseInt(u.attr("width"))/2).attr("y",t>0?95+o:80+o).attr("font-size","85%").attr("fill",n.darker).attr("style","text-transform: "+(t>0?"none":"capitalize")).text(e),t>0&&(o+=15)}));const y=s?.append("text").attr("text-anchor","middle").attr("x",parseInt(u.attr("width"))/2).attr("y",100+o).attr("font-size","65%");if(this.splitStringIntoBatch(e.role,20).forEach(((e,t)=>{y?.append("tspan").attr("x",parseInt(u.attr("width"))/2).attr("dy",t>0?".6rem":0).text(e.toString()).attr("fill",n.dark100),t>0&&(o+=10)})),void 0!==e.location){const t=s?.append("text").attr("text-anchor","middle").attr("x",parseInt(u.attr("width"))/2).attr("y",115+o).attr("font-size","65%").attr("fill",n.dark100);this.splitStringIntoBatch(e.location,19).forEach(((e,r)=>{t?.append("tspan").attr("x",parseInt(u.attr("width"))/2).attr("dy",r>0?".6rem":0).text(e.toString()),r>0&&(o+=10)}))}const f=this.chartHeadHeight+o;return u?.attr("height",f),l?.attr("height",f),this.add_linker(s,i,a,r,n,u,l,e,t),this.emitEvent("chart_head.create",{headNode:l.node()}),l}landscapeHead(e,t=!1,r={parent:"bottom",children:"top"}){const a=this.tree_data.filter((t=>t.parentId===e.id)).length>0,i=this.tree_data.filter((t=>t.id===e.parentId)).length>0,n=this.color_handler.getColor(e.id);let o=0;const c=Yt("svg").attr("class","main-svg-el"+(this.getIsElRootTreeChild(e.id)?" root-svg-el":"")).attr("width",this.chartHeadLandscapeWidth).attr("height",this.chartHeadLandscapeHeight).attr("style","background-color: "+this.chart_head_bg).on("dblclick",(e=>this.handleCenterHead(e))),l=c.append("g"),s=l?.append("rect").attr("rx",16).attr("ry",16).attr("width",this.chartHeadLandscapeWidth).attr("height",this.chartHeadLandscapeHeight).attr("stroke",this.show_chart_head_border?n.color:"none").attr("fill","none").attr("stroke-width",0),u=parseInt(s.attr("height"))/2,h=this.format_employee_name(e.name,18),d=l.append("g").attr("x",0).attr("y",0),p=l.append("g"),y=this.chartHeadLandscapeHeight+o;if(s.attr("height",y),c.attr("height",y),e.image){let t=u-this.head_image_surface_area;t=t>10?0:t-10,t=t>0?-t:t,t=u-this.head_image_surface_area<=10&&0==t?-10:t;const r=this.head_image_surface_area>u?Math.abs(this.head_image_surface_area-u):0;s.attr("height",y+r),c.attr("height",y+r),c.attr("width",this.chartHeadLandscapeWidth+r),s.attr("width",this.chartHeadLandscapeWidth+r),p.append("defs").append("clipPath").attr("id","landscape-clip-"+e.id).append("path").attr("d",pk().type(bw[this.head_image_shape]).size(Math.pow(this.head_image_surface_area-this.get_image_shape_spacing(this.head_image_shape),2))).attr("transform",`translate(${parseInt(s.attr("height"))/2}, ${this.head_image_surface_area+(t+20)})`).attr("fill",n.bright500),p?.append("image").attr("href",e.image).attr("preserveAspectRatio","xMaxYMax slice").attr("width",this.head_image_surface_area).attr("height",this.head_image_surface_area).attr("x",parseInt(s.attr("height"))/2-this.head_image_surface_area/2).attr("y",this.head_image_surface_area/2+(t+20)).attr("clip-path",`url(#landscape-clip-${e.id})`)}else{const t=this.head_image_surface_area>u?Math.abs(this.head_image_surface_area-u):0;s.attr("height",y+t),c.attr("height",y+t),c.attr("width",this.chartHeadLandscapeWidth+t),s.attr("width",this.chartHeadLandscapeWidth+t),p?.append("path").attr("d",pk().type(bw[this.head_image_shape]).size(Math.pow(this.head_image_surface_area-this.get_image_shape_spacing(this.head_image_shape),2))).attr("stroke","stroke"==this.symbol_type(this.head_image_shape)?n.color:"none").attr("stroke-width","stroke"==this.symbol_type(this.head_image_shape)?1:0).attr("fill","stroke"==this.symbol_type(this.head_image_shape)?"transparent":n.color).attr("transform",`translate(${parseInt(s.attr("height"))/2}, 50)`),p?.append("text").attr("class","").attr("text-anchor","middle").attr("fill","stroke"==this.symbol_type(this.head_image_shape)?n.color:n.bright500).attr("x",parseInt(s.attr("height"))/2).attr("y",parseInt(s.attr("height"))/2+6).attr("font-size","95%").text(this.get_user_initials(e.name))}const f=parseInt(s.attr("height")),m=d?.append("text").attr("x",f).attr("y",30).attr("font-size","95%").attr("fill",n.darker);h.forEach(((e,t)=>{m?.append("tspan").attr("x",f).attr("y",30).attr("dy",t>0?".7rem":0).attr("font-size","95%").attr("style","z-index: +9").text(e.toString()),t>0&&(o+=10)}));const g=d?.append("text").attr("x",f).attr("y",50+o).attr("font-size","65%");if(this.splitStringIntoBatch(e.role,30).forEach(((e,t)=>{g?.append("tspan").attr("x",f).attr("dy",t>0?".6rem":0).attr("y",50+o).text(e.toString()).attr("fill",n.dark100),t>0&&(o+=10)})),void 0!==e.location){const t=d?.append("text").attr("x",f).attr("y",65+o).attr("font-size","65%").attr("fill",n.dark100);this.splitStringIntoBatch(e.location,30).forEach(((e,r)=>{t?.append("tspan").attr("x",f).attr("dy",r>0?".6rem":0).text(e.toString()),r>0&&(o+=10)}))}return this.add_linker(l,i,a,r,n,s,c,e,t),this.emitEvent("chart_head.create",{headNode:c.node()}),c}roundedHead(e,t=!1,r={parent:"bottom",children:"top"}){const a=this.tree_data.filter((t=>t.parentId===e.id)).length>0,i=this.tree_data.filter((t=>t.id===e.parentId)).length>0,n=this.color_handler.getColor(e.id);let o=0;const c=Yt("svg").attr("class","main-svg-el rounded-head"+(this.getIsElRootTreeChild(e.id)?" root-svg-el":"")).attr("style","overflow: visible;").attr("width",this.chartHeadRoundedWidth).attr("height",this.chartHeadRoundedHeight).attr("fill","none").on("dblclick",(e=>this.handleCenterHead(e))),l=c.append("g"),s=l?.append("rect").attr("rx",16).attr("ry",16).attr("width",this.chartHeadRoundedWidth).attr("height",this.chartHeadRoundedHeight).attr("stroke",this.show_chart_head_border?n.color:"none").attr("fill","none").attr("stroke-width",0),u=parseInt(s.attr("width"))/2,h=l?.append("g"),d=Math.pow(2*(this.head_image_surface_area-this.get_image_shape_spacing(this.head_image_shape)),2),p=bw[this.head_image_shape];if(e.image){let t=u-this.head_image_surface_area;t=t>10?0:t-10,t=t>0?-t:t,t=u-this.head_image_surface_area<=10&&0==t?-10:t,o=u-this.head_image_surface_area<0?2*Math.abs(u-this.head_image_surface_area):0,h.append("defs").append("clipPath").attr("id","rounded-corners-"+e.id).append("path").attr("d",pk().type(p).size(d)).attr("transform",`translate(${parseInt(s.attr("width"))/2}, ${2*this.head_image_surface_area-this.head_image_surface_area})`).attr("fill",n.bright500),h?.append("image").attr("href",e.image).attr("preserveAspectRatio","xMaxYMax slice").attr("width",2*this.head_image_surface_area).attr("height",2*this.head_image_surface_area).attr("x",parseInt(s.attr("width"))/2-this.head_image_surface_area).attr("y",this.head_image_surface_area-this.head_image_surface_area).attr("clip-path",`url(#rounded-corners-${e.id})`)}else{let t=u-this.head_image_surface_area;t=t>10?0:t-10,t=t>0?-t:t,t=u-this.head_image_surface_area<=10&&0==t?-10:t,o=u-this.head_image_surface_area<0?2*Math.abs(u-this.head_image_surface_area):0,h?.append("path").attr("d",pk().type(p).size(d)).attr("stroke","stroke"==this.symbol_type(this.head_image_shape)?n.color:"none").attr("stroke-width","stroke"==this.symbol_type(this.head_image_shape)?1:0).attr("fill","stroke"==this.symbol_type(this.head_image_shape)?"transparent":n.color).attr("transform",`translate(${parseInt(s.attr("width"))/2}, ${2*this.head_image_surface_area-this.head_image_surface_area})`),h?.append("text").attr("class","").attr("text-anchor","middle").attr("fill","stroke"==this.symbol_type(this.head_image_shape)?n.color:n.bright500).attr("x",parseInt(s.attr("width"))/2).attr("y",this.head_image_surface_area+Math.sqrt(d)/6).attr("font-size",this.head_image_surface_area/1.5+"px").text(this.get_user_initials(e.name))}this.format_employee_name(e.name,27).forEach(((e,t)=>{l?.append("text").attr("text-anchor","middle").attr("x",parseInt(s.attr("width"))/2).attr("y",this.chartHeadRoundedWidth+18).attr("dy",t>0?50+o:0+o).attr("font-size","105%").attr("fill",n.darker).attr("style","text-transform: "+(t>0?"none":"capitalize")).text(e),t>0&&(o+=15)}));const y=l?.append("text").attr("text-anchor","middle").attr("x",parseInt(s.attr("width"))/2).attr("y",this.chartHeadRoundedWidth+35+o).attr("font-size","65%");if(this.splitStringIntoBatch(e.role,20).forEach(((e,t)=>{y?.append("tspan").attr("x",parseInt(s.attr("width"))/2).attr("dy",t>0?".6rem":0).text(e.toString()).attr("fill",n.dark100),t>0&&(o+=10)})),void 0!==e.location){const t=l?.append("text").attr("text-anchor","middle").attr("x",parseInt(s.attr("width"))/2).attr("y",this.chartHeadRoundedWidth+50+o).attr("font-size","65%").attr("fill",n.dark100);this.splitStringIntoBatch(e.location,19).forEach(((e,r)=>{t?.append("tspan").attr("x",parseInt(s.attr("width"))/2).attr("dy",r>0?".6rem":0).text(e.toString()),r>0&&(o+=10)}))}const f=this.chartHeadRoundedHeight+o;return s?.attr("height",f),c?.attr("height",f),this.add_linker(l,i,a,r,n,s,c,e,t),this.emitEvent("chart_head.create",{headNode:c.node()}),c}add_linker(e,t,r,a,i,n,o,c,l){const s=Math.PI*this.head_linker_thumb_circle_radius*this.head_linker_thumb_circle_radius,u=(t,r,a)=>{null!=this.rootWrapperContainer?.querySelector("."+a)&&this.rootWrapperContainer?.querySelector("."+a)?.remove();const o="stroke"==this.symbol_type(this.linker_thumb_shape)?i.bright100:i[this.linker_thumb_icon_color];return e.append("path").attr("d",pk().type("cross"==t?Kx:uk).size(Math.sqrt(s))).attr("x",parseInt(n.attr("width"))/2).attr("y",n.attr("height")).attr("fill",o).attr("stroke","minus"==t?o:"none").attr("class",a).attr("style","pointer-events: none").attr("stroke-width","minus"==t?2:0).attr("transform",this.link_point_position[r](n))};if(0!=a&&t&&e?.append("path").attr("d",pk().type(bw[this.linker_thumb_shape]).size(s)).attr("x",parseInt(n.attr("width"))/2).attr("y",0).attr("class","ts-linker").attr("fill","fill"==this.symbol_type(this.linker_thumb_shape)?i.color:"none").attr("stroke","stroke"==this.symbol_type(this.linker_thumb_shape)?i.gray:"none").attr("stroke-width","stroke"==this.symbol_type(this.linker_thumb_shape)?1:0).attr("transform",this.link_point_position[a.children](n)),0!=a&&r){const t=this,r="bottom"==a.parent?0:n.attr("height");let h=0;if(e?.append("path").attr("d",pk().type(bw[this.linker_thumb_shape]).size(s)).attr("x",parseInt(n.attr("width"))/2).attr("y",n.attr("height")).attr("class","ts-linker").attr("style","cursor: pointer;").attr("fill","fill"==this.symbol_type(this.linker_thumb_shape)?i.color:"transparent").attr("stroke","stroke"==this.symbol_type(this.linker_thumb_shape)?i.gray:"none").attr("stroke-width","stroke"==this.symbol_type(this.linker_thumb_shape)?1:0).attr("transform",this.link_point_position[this.inverse_link_point_position[a.children]](n)).on("click",(e=>{const i=e.currentTarget.parentElement;u(h%2==0?"cross":"minus",this.inverse_link_point_position[a.children],"ts-lnk-icn-"+c.id+"-1"),h++,t.handleCollapseChildren?.(o,c.id,r);const n=i.getBoundingClientRect();setTimeout((()=>{h%2==0&&this.center_elem(n)}),0),h%2==0?this.emitEvent("chart_head.expanded",{svgNode:o,head_data:c,pointPosition:a},!1):this.emitEvent("chart_head.collapsed",{svgNode:o,head_data:c,pointPosition:a},!1)})),this.el_has_children(c.id,!0)||h++,u(this.el_has_children(c.id,!0)?"minus":"cross",this.inverse_link_point_position[a.children],"ts-lnk-icn-"+c.id+"-1"),l){const l=0==r?n.attr("height"):0;let h=0;e?.append("path").attr("d",pk().type(bw[this.linker_thumb_shape]).size(s)).attr("x",parseInt(n.attr("width"))/2).attr("y",n.attr("height")).attr("class","ts-linker").attr("style","cursor: pointer").attr("fill","fill"==this.symbol_type(this.linker_thumb_shape)?i.color:"transparent").attr("stroke","stroke"==this.symbol_type(this.linker_thumb_shape)?i.gray:"none").attr("stroke-width","stroke"==this.symbol_type(this.linker_thumb_shape)?1:0).attr("transform",this.link_point_position[this.inverse_link_point_position[a.parent]](n)).on("click",(e=>{const r=e.currentTarget.parentElement;u(h%2==0?"cross":"minus",this.inverse_link_point_position[a.parent],"ts-lnk-icn-"+c.id+"-2"),t.handleCollapseChildren?.(o,c.id,l);const i=r.getBoundingClientRect();h++,setTimeout((()=>{h%2==0&&this.center_elem(i)}),0),h%2==0?this.emitEvent("chart_head.expanded",{svgNode:o,head_data:c,pointPosition:a},!1):this.emitEvent("chart_head.collapsed",{svgNode:o,head_data:c,pointPosition:a},!1)})),u("minus",this.inverse_link_point_position[a.parent],"ts-lnk-icn-"+c.id+"-2")}}}get_tree_items_hierarchy(e,t,r){const a=this.tree_data.filter((t=>t.parentId==e)),i=null==t?1:t+1,n=[];a.forEach((e=>{n.push(e),null!=r&&(null!=r.item_id&&r.item_id==e.id||null!=r.level&&r.level==i)&&r.callbackFn(e,i);this.tree_data.filter((t=>t.parentId==e.id)).length>0&&this.get_tree_items_hierarchy(e.id,i,r)}));const o=this.itemHierarchy.findIndex((e=>e.level==i));return-1==o?this.itemHierarchy.push({level:i,items:n}):this.itemHierarchy[o].items=n,this.itemHierarchy}get_second_ancestor_item(e){const t=this.tree_data.find((t=>t.id==e)),r=this.tree_data.find((e=>e.id==t?.parentId)),a=null==this.tree_data.find((e=>e.id==r?.parentId))?.parentId;let i;return i=null==r?.parentId?t:a?r:this.get_second_ancestor_item(r?.id),i}getElemRelPosInTree(e){const t=this.tree_data.find((t=>t.id==e));return this.tree_data.filter((e=>e.parentId==t.parentId)).findIndex((e=>e.id==t.id))+1}set_tmp_tree_data(e){if(this.display_tree_in_step||this.tree_data.length>500&&this.auto_display_tree_in_step){const t=null==e?"1":e;this.tmp_tree_data=this.get_children_down_to_level(t,this.tree_level_step),null==e&&(this.tmp_tree_data=[this.tree_data[0],...this.tmp_tree_data])}else this.tmp_tree_data=this.tree_data}getIsParentRootEl(e){return null!=e&&null==this.tree_data.find((t=>t.id==e))?.parentId}getIsElRootTreeChild(e){return null!=e&&null==this.tree_data.find((t=>t.id==e))?.parentId}getRootTreeEl(){return this.tree_data.find((e=>null==e.parentId))}el_has_children(e,t=!1){return t?this.tmp_tree_data.filter((t=>t.parentId==e)).length>0:this.tree_data.filter((t=>t.parentId==e)).length>0}get_children_down_to_level(e,t,r=1){let a=r,i=[];const n=this.tree_data.filter((t=>t.parentId==e));let o=[];return a0&&(o=n.map((e=>this.get_children_down_to_level(e.id,t,a+1))).flat()),i=[...n,...o],i}data_to_d3_format(e,t){let r=this.tree_data?.find((t=>(null==e?t.parentId:t.id)==e));r={...r,children:[]};return this.tree_data.filter((e=>e.parentId==r.id)).forEach((e=>{t&&(e.stat=1),this.el_has_children(e.id)?r.children.push(this.data_to_d3_format(e.id,t)):r.children.push(e)})),r}}class QC{tree_data=[];color_range=["#b31212","#b34712","#b38d12","#9ab312","#2fb312","#12b362","#12b3a8","#1278b3","#1712b3","#5712b3","#8d12b3","#b3128d","#b3124a","#b31212"];interpolated_color=e=>"";pallet={h:10,s:.5,l:.5,darker:.8,brighter:.8,bright100:.5,dark100:.5,gray:50,gray85:85};constructor({tree_data:e,color_range:t,pallet:r}){this.tree_data=e,void 0!==t&&t.length>0&&(this.color_range=t),null!=r&&(this.pallet=r),this.interpolateColor()}getColor(e){const t=this.get_color_percentage(e),r=this.interpolated_color(t),a=Br(r),i=Or(a);i.h+=this.pallet.h,i.s+=this.pallet.s;const n=Or(a);n.l+=this.pallet.l;const o=ra(this.pallet.gray85);return{color:r,darker:a?.darker(this.pallet.darker).toString(),brighter:a?.brighter(this.pallet.brighter).toString(),bright100:i.brighter(this.pallet.bright100).toString(),dark100:i.darker(this.pallet.dark100).toString(),bright500:n.toString(),gray:ra(this.pallet.gray).toString(),gray85:o.toString()}}get_app_gray(){return ra(50).toString()}get_color_percentage(e){return e/this.tree_data.length}interpolateColor(){this.interpolated_color=Ha(this.color_range)}}class XC{chartHelper;tree_map_arr=[];content_wrapper=null;tsInnerContainer=null;current_scale=1;constructor({tsInnerContainer:e,chartHelper:t}){this.tsInnerContainer=e,this.chartHelper=t,this.chartHelper.handleCollapseChildren=this.handleCollapseChildren.bind(this),setTimeout((()=>{this.organizeUI()}),0)}map_children_data_to_head(e,t){const r=this.chartHelper.tmp_tree_data.filter((e=>e.parentId==t)),a=this.chartHelper.createDynamicEl();return r.forEach((r=>{const i=this.chartHelper.createDynamicEl(),n=this.chartHelper.makeHead(r);i.appendChild(n?.node());const o=null==t?" st-root-el":"";i.className="ts-head-node-wrapper ts-w-id-"+r.id+o,a.appendChild(i),null!=e&&this.tree_map_arr.push({id:r.id,svgNode:e,targetChild:n?.node(),parentId:t}),this.chartHelper?.el_has_children(r.id)&&i.append(this.map_children_data_to_head(n,r.id))})),a.className="ts-head-wrapper child-container",void 0===e&&this.content_wrapper?.appendChild(a),a}organizeUI(){this.content_wrapper=this.chartHelper.createDynamicEl(),this.content_wrapper.className="ts-head-wrapper",this.chartHelper.set_tmp_tree_data(),this.map_children_data_to_head(),this.tsInnerContainer.appendChild(this.content_wrapper),this.drawBranchLinkFresh(),Bi((()=>{const e=jt(`${this.chartHelper.app_root_unique_selector} .root-svg-el`).node().getBoundingClientRect();this.chartHelper?.center_elem(e,"top")}),0)}drawBranchLinkFresh(){this.chartHelper.rootWrapperContainer?.querySelectorAll(".linker-line").forEach((e=>e.remove())),this.tree_map_arr.forEach((e=>this.drawBranchLink(e.id,e.svgNode,e.targetChild,e.parentId)))}drawBranchLink(e,t,r,a){const i=this.tsInnerContainer?.querySelector(".ts-w-id-"+a)?.getAttribute("data-ts-head-children-hidden");if("true"===i)return;const n=this.chartHelper?.color_handler.getColor(e),o=r.getBoundingClientRect(),c=t.node().getBoundingClientRect(),l=Math.sqrt(Math.PI*this.chartHelper.head_linker_thumb_circle_radius*this.chartHelper.head_linker_thumb_circle_radius)/2,s=c.width/this.current_scale/2,u=(c.height+l)/this.current_scale,h=o.x/this.current_scale-c.x/this.current_scale+r.clientWidth/2,d=o.top/this.current_scale-c.top/this.current_scale,p=Ix(null!=this.chartHelper?.tree_link_type?this.chartHelper?.tree_link_types[this.chartHelper?.tree_link_type]:Dx),y=[{source:[s,u],target:[h,d]}];t?.append("path").data(y).attr("d",p).attr("fill","none").attr("class","linker-line").attr("stroke",n?.gray).attr("stroke-width",1)}handleCollapseChildren(e,t,r){const a=e.node()?.parentElement,i=a?.getAttribute("data-ts-head-children-hidden");if(a?.hasAttribute("data-ts-head-children-hidden")||""!=a.querySelector(".child-container").innerHTML)if("true"==i){const e=a?.querySelector(".child-container");e.style.visibility="",a?.setAttribute("data-ts-head-children-hidden","false"),setTimeout((()=>{this.drawBranchLinkFresh()}),0)}else{const e=a?.querySelector(".child-container");e.style.visibility="hidden",a?.querySelectorAll(".linker-line").forEach((e=>e.remove())),a?.setAttribute("data-ts-head-children-hidden","true")}else{this.chartHelper.set_tmp_tree_data(t),a.querySelector(".child-container").remove();const r=this.map_children_data_to_head(e,t);a?.appendChild(r),a?.setAttribute("data-ts-head-children-hidden","false"),this.drawBranchLinkFresh()}}removeNodeRecursiveFromTreeMap(e){const t=this.tree_map_arr.filter((t=>t.parentId==e));t.forEach((e=>{this.tree_map_arr.splice(this.tree_map_arr.findIndex((t=>t.id==e.id)),1),this.tree_map_arr.filter((t=>t.id==e.id)).length>0&&this.removeNodeRecursiveFromTreeMap(e.id)}))}}class e_{content_wrapper=null;head_child_wrapper_center=null;head_child_wrapper_1=null;head_child_wrapper_2=null;tsInnerContainer=null;chartHelper;tree_map_arr=[];current_scale=1;constructor({tsInnerContainer:e,chartHelper:t}){this.tsInnerContainer=e,this.chartHelper=t,this.chartHelper.handleCollapseChildren=this.handleCollapseChildren.bind(this),setTimeout((()=>{this.organizeUI()}),0)}organizeUI(){this.content_wrapper=this.chartHelper.createDynamicEl(),this.head_child_wrapper_center=this.chartHelper.createDynamicEl(),this.head_child_wrapper_1=this.chartHelper.createDynamicEl(),this.head_child_wrapper_2=this.chartHelper.createDynamicEl(),this.head_child_wrapper_center.className="ts-vs-wrapper",this.head_child_wrapper_1.className="ts-vs-wrapper",this.head_child_wrapper_2.className="ts-vs-wrapper",this.content_wrapper.appendChild(this.head_child_wrapper_1),this.content_wrapper.appendChild(this.head_child_wrapper_center),this.content_wrapper.appendChild(this.head_child_wrapper_2),this.content_wrapper.className="ts-v-spider-head-wrapper",this.chartHelper.set_tmp_tree_data(),this.map_children_data_to_head(),this.tsInnerContainer.appendChild(this.content_wrapper),this.drawBranchLinkFresh(),Bi((()=>{const e=jt(`${this.chartHelper.app_root_unique_selector} .st-root-el > svg`).node().getBoundingClientRect();this.chartHelper?.center_elem(e,"center")}),0)}map_children_data_to_head(e,t,r){let a=this.chartHelper.tmp_tree_data.filter((e=>e.parentId==t));a=r||this.chartHelper.tmp_tree_data.filter((e=>e.parentId==t));const i=this.chartHelper.createDynamicEl(),n=this.chartHelper.getIsParentRootEl(t)&&null!=t;return a.forEach((r=>{const a=this.chartHelper.createDynamicEl(),o=this.chartHelper.get_second_ancestor_item(r.id);let c=null==o?1:this.chartHelper.getElemRelPosInTree(o?.id);const l=this.chartHelper.makeHead(r,null==t,{parent:"bottom",children:c%2==0?"bottom":"top"});a.appendChild(l?.node());const s=null==t?" st-root-el":"";if(a.className="ts-head-node-wrapper ts-w-id-"+r.id+s,c%2==0&&a.classList.add("top"),void 0===e?this.head_child_wrapper_center?.appendChild(a):n?this.chartHelper.getElemRelPosInTree(r.id)%2==0?this.head_child_wrapper_1?.appendChild(a):this.head_child_wrapper_2?.appendChild(a):(i.appendChild(a),c%2==0&&i.classList.add("top")),null!=e&&this.tree_map_arr.push({id:r.id,svgNode:e,targetChild:l?.node(),parentId:t,lineOrigin:c%2==0?"top":"bottom"}),this.chartHelper?.el_has_children(r.id))if(n)this.chartHelper.getElemRelPosInTree(r.id)%2==0?a.prepend(this.map_children_data_to_head(l,r.id)):a.append(this.map_children_data_to_head(l,r.id));else{const e=this.map_children_data_to_head(l,r.id);c%2==0?a.prepend(e):a.appendChild(e)}})),i.classList.add("child-container"),i}drawBranchLinkFresh(){this.chartHelper.rootWrapperContainer?.querySelectorAll(".linker-line").forEach((e=>e.remove())),this.tree_map_arr.forEach((e=>this.drawBranchLink(e.id,e.svgNode,e.targetChild,e.parentId,e.lineOrigin)))}drawBranchLink(e,t,r,a,i="bottom"){const n=this.tsInnerContainer?.querySelector(".ts-w-id-"+a)?.getAttribute("data-ts-head-children-hidden"),o=this.chartHelper.getIsParentRootEl(a);if("true"===n&&!o)return;const c=this.chartHelper?.color_handler.getColor(e),l=r.getBoundingClientRect(),s=t.node().getBoundingClientRect(),u=s.width/this.current_scale/2,h="top"==i?0:s.height/this.current_scale,d=l.x/this.current_scale-s.x/this.current_scale+r.clientWidth/2,p="top"==i?(l.top+l.height)/this.current_scale-s.top/this.current_scale:l.top/this.current_scale-s.top/this.current_scale,y=Ix(null!=this.chartHelper?.tree_link_type?this.chartHelper?.tree_link_types[this.chartHelper?.tree_link_type]:Dx),f=[{source:[u,h],target:[d,p]}];t?.append("path").data(f).attr("d",y).attr("fill","none").attr("class","linker-line linker-"+i).attr("stroke-width",1).attr("stroke",c?.gray).attr("style","z-index: -1")}handleCollapseChildren(e,t,r){const a=e.node()?.parentElement,i=this.chartHelper.getIsElRootTreeChild(t),n=a?.getAttribute("data-ts-head-children-hidden"),o=a?.querySelector(".child-container");if(i)return this.handleCollapseRootElChildren(e,t,r);if(a?.hasAttribute("data-ts-head-children-hidden")||""!=a.querySelector(".child-container").innerHTML)"true"==n?(o.style.visibility="visible",a?.setAttribute("data-ts-head-children-hidden","false"),this.drawBranchLinkFresh()):(o.style.visibility="hidden",a?.querySelectorAll(".linker-line").forEach((e=>e.remove())),a?.setAttribute("data-ts-head-children-hidden","true"));else{this.chartHelper.set_tmp_tree_data(t),a.querySelector(".child-container").remove();const r=this.map_children_data_to_head(e,t),i=this.chartHelper.get_second_ancestor_item(t);(null==i?1:this.chartHelper.getElemRelPosInTree(i?.id))%2==0?a?.prepend(r):a?.appendChild(r),a?.setAttribute("data-ts-head-children-hidden","false"),this.drawBranchLinkFresh()}}removeNodeRecursiveFromTreeMap(e,t){const r=this.tree_map_arr.filter((t=>t.parentId==e));r.forEach((e=>{this.tree_map_arr.splice(this.tree_map_arr.findIndex((t=>t.id==e.id)),1),this.tree_map_arr.filter((t=>t.id==e.id)).length>0&&this.removeNodeRecursiveFromTreeMap(e.id)})),t&&this.tree_map_arr.splice(this.tree_map_arr.findIndex((t=>t.id==e)),1)}handleCollapseRootElChildren(e,t,r){const a=e.node()?.parentElement,i=a?.getAttribute("data-ts-top-head-children-hidden"),n=a?.getAttribute("data-ts-bottom-head-children-hidden");if(0==r?this.chartHelper.tree_data.filter((e=>e.parentId==t&&this.chartHelper.getElemRelPosInTree(e.id)%2==0)):this.chartHelper.tree_data.filter((e=>e.parentId==t&&this.chartHelper.getElemRelPosInTree(e.id)%2!=0)),(i&&"false"!=i||0!=r)&&(n&&"false"!=n||0==r)){(0==r?a.parentElement.nextElementSibling:a.parentElement.previousElementSibling).style.visibility="",setTimeout((()=>{this.drawBranchLinkFresh();"true"==(0==r?a?.getAttribute("data-ts-bottom-head-children-hidden"):a?.getAttribute("data-ts-top-head-children-hidden"))&&a.querySelectorAll(".linker-"+(0==r?"top":"bottom")).forEach((e=>e.remove()))}),0),a?.setAttribute(0==r?"data-ts-top-head-children-hidden":"data-ts-bottom-head-children-hidden","false")}else{(0==r?a.parentElement.nextElementSibling:a.parentElement.previousElementSibling).style.visibility="hidden",a.querySelector("svg").querySelectorAll(".linker-"+(0==r?"bottom":"top")).forEach((e=>e.remove())),a?.setAttribute(0==r?"data-ts-top-head-children-hidden":"data-ts-bottom-head-children-hidden","true")}}}class t_{chartHelper;tree_map_arr=[];content_wrapper=null;tsInnerContainer=null;current_scale=1;constructor({tsInnerContainer:e,chartHelper:t}){this.tsInnerContainer=e,this.chartHelper=t,this.chartHelper.handleCollapseChildren=this.handleCollapseChildren.bind(this),setTimeout((()=>{this.organizeUI()}),0)}organizeUI(){this.content_wrapper=this.chartHelper.createDynamicEl(),this.content_wrapper.className="ts-head-wrapper",this.chartHelper.set_tmp_tree_data(),this.map_children_data_to_head(),this.tsInnerContainer.appendChild(this.content_wrapper),this.drawBranchLinkFresh(),Bi((()=>{const e=jt(`${this.chartHelper.app_root_unique_selector} .root-svg-el`).node().getBoundingClientRect();this.chartHelper?.center_elem(e,"left")}),0)}map_children_data_to_head(e,t){const r=this.chartHelper.tmp_tree_data.filter((e=>e.parentId==t)),a=this.chartHelper.createDynamicEl();return r.forEach((r=>{const i=this.chartHelper.createDynamicEl(),n=this.chartHelper.createDynamicEl(),o=this.chartHelper.makeHead(r,!1,{parent:"right",children:"left"});n.append(o?.node()),i.appendChild(n);const c=null==t?" st-root-el":"";i.className="ts-head-node-wrapper st-single-h ts-w-id-"+r.id+c,a.appendChild(i),null!=e&&this.tree_map_arr.push({id:r.id,svgNode:e,targetChild:o?.node(),parentId:t}),this.chartHelper?.el_has_children(r.id)&&i.append(this.map_children_data_to_head(o,r.id))})),a.className="ts-head-wrapper st-single-h-child-container",void 0===e&&this.content_wrapper?.appendChild(a),a}drawBranchLinkFresh(){this.chartHelper.rootWrapperContainer?.querySelectorAll(".linker-line").forEach((e=>e.remove())),this.tree_map_arr.forEach((e=>this.drawBranchLink(e.id,e.svgNode,e.targetChild,e.parentId)))}drawBranchLink(e,t,r,a){const i=this.tsInnerContainer?.querySelector(".ts-w-id-"+a)?.getAttribute("data-ts-head-children-hidden");if("true"===i)return;const n=this.chartHelper?.color_handler.getColor(e),o=r.getBoundingClientRect(),c=t.node().getBoundingClientRect(),l=c.width/this.current_scale,s=c.height/this.current_scale/2,u=o.x/this.current_scale-c.x/this.current_scale+0,h=(o.top+o.height/2)/this.current_scale-c.top/this.current_scale,d=Ix(null!=this.chartHelper?.tree_link_type?this.chartHelper?.tree_link_types[this.chartHelper?.tree_link_type]:Hx),p=[{source:[l,s],target:[u,h]}];t?.append("path").data(p).attr("d",d).attr("fill","none").attr("class","linker-line").attr("stroke-width",1).attr("stroke",n?.gray).attr("style","z-index: -1")}handleCollapseChildren(e,t,r){const a=e.node()?.parentElement.parentElement,i=a?.getAttribute("data-ts-head-children-hidden"),n=a?.querySelector("[class*='child-container']");if(a?.hasAttribute("data-ts-head-children-hidden")||""!=a.querySelector(".st-single-h-child-container").innerHTML)"true"==i?(n.style.visibility="",a?.setAttribute("data-ts-head-children-hidden","false"),this.drawBranchLinkFresh()):(n.style.visibility="hidden",a?.querySelectorAll(".linker-line").forEach((e=>e.remove())),a?.setAttribute("data-ts-head-children-hidden","true"));else{this.chartHelper.set_tmp_tree_data(t),a.querySelector(".st-single-h-child-container").remove();const r=this.map_children_data_to_head(e,t);a?.appendChild(r),a?.setAttribute("data-ts-head-children-hidden","false"),this.drawBranchLinkFresh()}}removeNodeRecursiveFromTreeMap(e){const t=this.tree_map_arr.filter((t=>t.parentId==e));t.forEach((e=>{this.tree_map_arr.splice(this.tree_map_arr.findIndex((t=>t.id==e.id)),1),this.tree_map_arr.filter((t=>t.id==e.id)).length>0&&this.removeNodeRecursiveFromTreeMap(e.id)}))}}class r_{content_wrapper=null;head_child_wrapper_center=null;head_child_wrapper_1=null;head_child_wrapper_2=null;tsInnerContainer=null;chartHelper;tree_map_arr=[];current_scale=1;constructor({tsInnerContainer:e,chartHelper:t}){this.tsInnerContainer=e,this.chartHelper=t,this.chartHelper.handleCollapseChildren=this.handleCollapseChildren.bind(this),setTimeout((()=>{this.organizeUI()}),0)}organizeUI(){this.content_wrapper=this.chartHelper.createDynamicEl(),this.head_child_wrapper_center=this.chartHelper.createDynamicEl(),this.head_child_wrapper_1=this.chartHelper.createDynamicEl(),this.head_child_wrapper_2=this.chartHelper.createDynamicEl(),this.head_child_wrapper_center.className="st-child-wrapper",this.head_child_wrapper_1.className="st-child-wrapper",this.head_child_wrapper_2.className="st-child-wrapper",this.content_wrapper.className="st-hsw-content-wrapper",this.content_wrapper.appendChild(this.head_child_wrapper_1),this.content_wrapper.appendChild(this.head_child_wrapper_center),this.content_wrapper.appendChild(this.head_child_wrapper_2),this.tsInnerContainer?.append(this.content_wrapper),this.chartHelper.set_tmp_tree_data(),this.map_children_data_to_head(),this.drawBranchLinkFresh(),Bi((()=>{const e=jt(`${this.chartHelper.app_root_unique_selector} .st-root-el > svg`).node().getBoundingClientRect();this.chartHelper?.center_elem(e,"center")}),0)}map_children_data_to_head(e,t,r){let a=this.chartHelper.tmp_tree_data.filter((e=>e.parentId==t));a=r||this.chartHelper.tmp_tree_data.filter((e=>e.parentId==t));const i=this.chartHelper.createDynamicEl(),n=this.chartHelper.getIsParentRootEl(t)&&null!=t;return a.forEach((r=>{const a=this.chartHelper.createDynamicEl(),o=this.chartHelper.get_second_ancestor_item(r.id);let c=null==o?1:this.chartHelper.getElemRelPosInTree(o?.id);const l=this.chartHelper.makeHead(r,null==t,{parent:"right",children:c%2==0?"right":"left"});a.appendChild(l?.node());const s=null==t?" st-root-el":"";if(a.className="ts-head-node-wrapper ts-w-id-"+r.id+s,c%2==0&&a.classList.add("top"),void 0===e?this.head_child_wrapper_center?.appendChild(a):n?this.chartHelper.getElemRelPosInTree(r.id)%2==0?this.head_child_wrapper_1?.appendChild(a):this.head_child_wrapper_2?.appendChild(a):(i.appendChild(a),c%2==0&&i.classList.add("top")),null!=e&&this.tree_map_arr.push({id:r.id,svgNode:e,targetChild:l?.node(),parentId:t,lineOrigin:c%2==0?"right":"left"}),this.chartHelper?.el_has_children(r.id))if(n)this.chartHelper.getElemRelPosInTree(r.id)%2==0?a.prepend(this.map_children_data_to_head(l,r.id)):a.append(this.map_children_data_to_head(l,r.id));else{const e=this.map_children_data_to_head(l,r.id);c%2==0?a.prepend(e):a.appendChild(e)}})),i.classList.add("child-container"),i}drawBranchLinkFresh(){this.chartHelper.rootWrapperContainer?.querySelectorAll(".linker-line").forEach((e=>e.remove())),this.tree_map_arr.forEach((e=>this.drawBranchLink(e.id,e.svgNode,e.targetChild,e.parentId,e.lineOrigin)))}drawBranchLink(e,t,r,a,i="bottom"){const n=this.tsInnerContainer?.querySelector(".ts-w-id-"+a)?.getAttribute("data-ts-head-children-hidden");if("true"===n)return;const o=this.chartHelper?.color_handler.getColor(e),c=r.getBoundingClientRect(),l=t.node().getBoundingClientRect(),s=Math.sqrt(Math.PI*this.chartHelper.head_linker_thumb_circle_radius*this.chartHelper.head_linker_thumb_circle_radius)/2,u="right"==i?0-s:(l.width+s)/this.current_scale,h=l.height/this.current_scale/2,d=(c.x+("right"==i?c.width:0))/this.current_scale-l.x/this.current_scale+0,p=(c.top+c.height/2)/this.current_scale-l.top/this.current_scale,y=Ix(null!=this.chartHelper?.tree_link_type?this.chartHelper?.tree_link_types[this.chartHelper?.tree_link_type]:Hx),f=[{source:[u,h],target:[d,p]}];t?.append("path").data(f).attr("d",y).attr("fill","none").attr("class","linker-line linker-"+i).attr("stroke-width",1).attr("stroke",o?.gray).attr("style","z-index: -1")}handleCollapseChildren(e,t,r){const a=e.node()?.parentElement,i=this.chartHelper.getIsElRootTreeChild(t),n=a?.getAttribute("data-ts-head-children-hidden");if(i)return this.handleCollapseRootElChildren(e,t,r);if(a?.hasAttribute("data-ts-head-children-hidden")||""!=a.querySelector(".child-container").innerHTML)"true"==n?(a.querySelector(".child-container").style.visibility="",a?.setAttribute("data-ts-head-children-hidden","false"),this.drawBranchLinkFresh()):(a?.setAttribute("data-ts-head-children-hidden","true"),a?.querySelectorAll(".linker-line").forEach((e=>e.remove())),a.querySelector(".child-container").style.visibility="hidden");else{this.chartHelper.set_tmp_tree_data(t),a.querySelector(".child-container").remove();const r=this.map_children_data_to_head(e,t),i=this.chartHelper.get_second_ancestor_item(t);(null==i?1:this.chartHelper.getElemRelPosInTree(i?.id))%2==0?a?.prepend(r):a?.appendChild(r),a?.setAttribute("data-ts-head-children-hidden","false"),setTimeout((()=>{this.drawBranchLinkFresh()}),0)}}removeNodeRecursiveFromTreeMap(e,t){const r=this.tree_map_arr.filter((t=>t.parentId==e));r.forEach((e=>{this.tree_map_arr.splice(this.tree_map_arr.findIndex((t=>t.id==e.id)),1),this.tree_map_arr.filter((t=>t.id==e.id)).length>0&&this.removeNodeRecursiveFromTreeMap(e.id)})),t&&this.tree_map_arr.splice(this.tree_map_arr.findIndex((t=>t.id==e)),1)}handleCollapseRootElChildren(e,t,r){const a=e.node()?.parentElement,i=a?.getAttribute("data-ts-top-head-children-hidden"),n=a?.getAttribute("data-ts-bottom-head-children-hidden");if(0==r?this.chartHelper.tree_data.filter((e=>e.parentId==t&&this.chartHelper.getElemRelPosInTree(e.id)%2==0)):this.chartHelper.tree_data.filter((e=>e.parentId==t&&this.chartHelper.getElemRelPosInTree(e.id)%2!=0)),(i&&"false"!=i||0!=r)&&(n&&"false"!=n||0==r)){(0==r?a.parentElement.previousElementSibling:a.parentElement.nextElementSibling).style.visibility="visible",setTimeout((()=>{this.drawBranchLinkFresh();"true"==(0==r?a?.getAttribute("data-ts-bottom-head-children-hidden"):a?.getAttribute("data-ts-top-head-children-hidden"))&&a.querySelectorAll(".linker-"+(0==r?"left":"right")).forEach((e=>e.remove()))}),0),a?.setAttribute(0==r?"data-ts-top-head-children-hidden":"data-ts-bottom-head-children-hidden","false")}else{const e=0==r?a.parentElement.previousElementSibling:a.parentElement.nextElementSibling;e.style.visibility="hidden",e.querySelectorAll(".linker-line").forEach((e=>e.remove())),a.querySelectorAll(".linker-"+(0==r?"right":"left")).forEach((e=>e.remove())),a?.setAttribute(0==r?"data-ts-top-head-children-hidden":"data-ts-bottom-head-children-hidden","true")}}}class a_{content_wrapper=null;head_child_wrapper_center=null;head_child_wrapper_1=null;head_child_wrapper_2=null;tsInnerContainer=null;chartHelper;tree_map_arr=[];current_scale=1;constructor({tsInnerContainer:e,chartHelper:t}){this.tsInnerContainer=e,this.chartHelper=t,this.chartHelper.handleCollapseChildren=this.handleCollapseChildren.bind(this),setTimeout((()=>{this.organizeUI()}),0)}organizeUI(){this.content_wrapper=this.chartHelper.createDynamicEl(),this.head_child_wrapper_center=this.chartHelper.createDynamicEl(),this.head_child_wrapper_1=this.chartHelper.createDynamicEl(),this.head_child_wrapper_2=this.chartHelper.createDynamicEl(),this.head_child_wrapper_center.className="st-child-wrapper",this.head_child_wrapper_1.className="st-child-wrapper",this.head_child_wrapper_2.className="st-child-wrapper",this.content_wrapper.className="st-cs-content-wrapper",this.content_wrapper.appendChild(this.head_child_wrapper_1),this.content_wrapper.appendChild(this.head_child_wrapper_2),this.content_wrapper.appendChild(this.head_child_wrapper_center),this.tsInnerContainer?.append(this.content_wrapper),this.chartHelper.set_tmp_tree_data(),this.map_children_data_to_head(),this.drawBranchLinkFresh(),Bi((()=>{const e=jt(`${this.chartHelper.app_root_unique_selector} .st-root-el > svg`).node().getBoundingClientRect();this.chartHelper?.center_elem(e,"bottom")}),0)}map_children_data_to_head(e,t,r){let a=this.chartHelper.tmp_tree_data.filter((e=>e.parentId==t));a=r||this.chartHelper.tmp_tree_data.filter((e=>e.parentId==t));const i=this.chartHelper.createDynamicEl(),n=this.chartHelper.getIsParentRootEl(t)&&null!=t;return a.forEach((r=>{const a=this.chartHelper.createDynamicEl(),o=this.chartHelper.get_second_ancestor_item(r.id);let c=null==o?1:this.chartHelper.getElemRelPosInTree(o?.id);const l=this.chartHelper.makeHead(r,!1,{parent:"right",children:null==t?"bottom":c%2==0?"right":"left"});a.appendChild(l?.node());const s=null==t?" st-root-el":"";if(a.className="ts-head-node-wrapper ts-w-id-"+r.id+s,c%2==0&&a.classList.add("top"),void 0===e?this.head_child_wrapper_center?.appendChild(a):n?this.chartHelper.getElemRelPosInTree(r.id)%2==0?this.head_child_wrapper_1?.appendChild(a):this.head_child_wrapper_2?.appendChild(a):(i.appendChild(a),c%2==0&&i.classList.add("top")),null!=e&&this.tree_map_arr.push({id:r.id,svgNode:e,targetChild:l?.node(),parentId:t,lineOrigin:c%2==0?"right":"left"}),this.chartHelper?.el_has_children(r.id))if(n)this.chartHelper.getElemRelPosInTree(r.id)%2==0?a.prepend(this.map_children_data_to_head(l,r.id)):a.append(this.map_children_data_to_head(l,r.id));else{const e=this.map_children_data_to_head(l,r.id);c%2==0?a.prepend(e):a.appendChild(e)}})),i.classList.add("child-container"),i}drawBranchLinkFresh(){this.chartHelper.rootWrapperContainer?.querySelectorAll(".linker-line").forEach((e=>e.remove())),this.tree_map_arr.forEach((e=>this.drawBranchLink(e.id,e.svgNode,e.targetChild,e.parentId,e.lineOrigin)))}drawBranchLink(e,t,r,a,i="bottom"){const n=this.tsInnerContainer?.querySelector(".ts-w-id-"+a)?.getAttribute("data-ts-head-children-hidden");if("true"===n)return;const o=this.chartHelper?.color_handler.getColor(e),c=this.chartHelper.getIsParentRootEl(a),l=r.getBoundingClientRect(),s=t.node().getBoundingClientRect();let u,h;c?(u=s.width/this.current_scale/2,h=0):(u="right"==i?0:s.width/this.current_scale,h=s.height/this.current_scale/2);const d=(l.x+("right"==i?l.width:0))/this.current_scale-s.x/this.current_scale+0,p=(l.top+l.height/2)/this.current_scale-s.top/this.current_scale,y=Ix(null!=this.chartHelper?.tree_link_type?this.chartHelper?.tree_link_types[this.chartHelper?.tree_link_type]:Hx),f=[{source:[u,h],target:[d,p]}];t?.append("path").data(f).attr("d",y).attr("fill","none").attr("class","linker-line").attr("stroke-width",1).attr("stroke",o?.gray).attr("style","z-index: -1")}handleCollapseChildren(e,t,r){const a=e.node()?.parentElement,i=this.chartHelper.getIsElRootTreeChild(t),n=a?.getAttribute("data-ts-head-children-hidden");if(i)return this.handleCollapseRootElChildren(e,t,r);if(a?.hasAttribute("data-ts-head-children-hidden")||""!=a.querySelector(".child-container").innerHTML)if("true"==n){const e=a?.querySelector(".child-container");e.style.visibility="",a?.setAttribute("data-ts-head-children-hidden","false"),this.drawBranchLinkFresh()}else{const e=a?.querySelector(".child-container");e.style.visibility="hidden",a?.querySelectorAll(".linker-line").forEach((e=>e.remove())),a?.setAttribute("data-ts-head-children-hidden","true")}else{this.chartHelper.set_tmp_tree_data(t),a.querySelector(".child-container").remove();const r=this.map_children_data_to_head(e,t),i=this.chartHelper.get_second_ancestor_item(t);(null==i?1:this.chartHelper.getElemRelPosInTree(i?.id))%2==0?a?.prepend(r):a?.appendChild(r),a?.setAttribute("data-ts-head-children-hidden","false"),this.drawBranchLinkFresh()}}removeNodeRecursiveFromTreeMap(e,t){const r=this.tree_map_arr.filter((t=>t.parentId==e));r.forEach((e=>{this.tree_map_arr.splice(this.tree_map_arr.findIndex((t=>t.id==e.id)),1),this.tree_map_arr.filter((t=>t.id==e.id)).length>0&&this.removeNodeRecursiveFromTreeMap(e.id)})),t&&this.tree_map_arr.splice(this.tree_map_arr.findIndex((t=>t.id==e)),1)}handleCollapseRootElChildren(e,t,r){const a=e.node()?.parentElement,i=a?.getAttribute("data-ts-head-children-hidden");i&&"false"!=i?(a.parentElement.previousElementSibling.style.visibility="",a.parentElement.previousElementSibling.previousElementSibling.style.visibility="",a?.setAttribute("data-ts-head-children-hidden","false")):(a.parentElement.previousElementSibling.style.visibility="hidden",a.parentElement.previousElementSibling.previousElementSibling.style.visibility="hidden",a.parentElement.previousElementSibling.querySelectorAll(".linker-line").forEach((e=>e.remove())),a.parentElement.previousElementSibling.previousElementSibling.querySelectorAll(".linker-line").forEach((e=>e.remove())),a?.setAttribute("data-ts-head-children-hidden","true")),this.drawBranchLinkFresh()}}class i_{content_wrapper=null;head_child_wrapper=null;tsInnerContainer=null;chartHelper;current_scale=1;nodes_group=void 0;links_group=void 0;rotate_deg=0;animation_interval=void 0;start_animation=!1;constructor({tsInnerContainer:e,chartHelper:t}){this.tsInnerContainer=e,this.chartHelper=t,setTimeout((()=>{this.organizeUI()}),0)}organizeUI(){this.content_wrapper=this.chartHelper.createDynamicEl(),this.head_child_wrapper=this.chartHelper.createDynamicEl(),this.head_child_wrapper.className="st-child-wrapper",this.content_wrapper.className="st-grs-content-wrapper",this.content_wrapper.appendChild(this.head_child_wrapper),this.tsInnerContainer?.append(this.content_wrapper),this.map_children_data_to_head(),Bi((()=>{const e=jt(`${this.chartHelper.app_root_unique_selector} .root-svg-el > g`).node().getBoundingClientRect();this.chartHelper?.center_elem(e,"center")}),0)}animate_chat(e=!1,t=!1){if(e)return this.rotate_deg+=this.chartHelper?.animation_rotation_interval*(t?-1:1),this.nodes_group.attr("transform",`rotate(${this.rotate_deg}, 0, 0)`),this.links_group.attr("transform",`rotate(${this.rotate_deg}, 0, 0)`);this.start_animation=!this.start_animation,this.start_animation?this.animation_interval=setInterval((()=>{this.rotate_deg+=this.chartHelper?.animation_rotation_interval*(t?-1:1),this.nodes_group.attr("transform",`rotate(${this.rotate_deg}, 0, 0)`),this.links_group.attr("transform",`rotate(${this.rotate_deg}, 0, 0)`)}),this.chartHelper?.animation_rotation_speed):(null!=this.animation_interval&&clearInterval(this.animation_interval),this.animation_interval=void 0)}map_children_data_to_head(){const e=Cp(this.chartHelper.data_to_d3_format()).sort(((e,t)=>t.height-e.height||e.data.name.localeCompare(t.data.name))),t=540*Math.sqrt(this.chartHelper.tree_data.length/3);kp().size([360,t]).separation(((e,t)=>50))(e);const r=Yt("svg");r.attr("width",580),r.attr("height",250),r.attr("style","overflow: visible");const a=r.append("g").attr("transform",`translate(${r.attr("width")/2},${r.attr("height")/2})`);a.append("g").attr("class","links"),a.append("g").attr("class","nodes"),e.each((e=>{const t=this.chartHelper?.makeHead(e.data,!1,!1);e.head=t.node(),e.head.removeEventListener("dblclick",this.chartHelper.handleCenterHead),e.head.ondblclick=e=>{e.stopPropagation(),e.preventDefault();const t=e.currentTarget.querySelector("g").getBoundingClientRect();this.chartHelper?.center_elem(t)},e.color_set=this.chartHelper?.color_handler.getColor(e.data.id)})),r.select("g.nodes").selectAll("svg.node").data(e.descendants()).enter().append((e=>("rounded"!=this.chartHelper?.chart_head_type&&this.chartHelper?.show_chart_head_border&&(e.head.querySelector("rect").style.fill="white",e.head.querySelector("rect").style.strokeWidth="1"),e.head))).classed("node",!0).select("g").attr("transform",(e=>`rotate(${e.x}, 0, 0) translate(0, ${-e.y})`)),r.select("g.nodes").selectAll("circle.node").data(e.descendants()).enter().append("circle").classed("node",!0).attr("cx",0).attr("cy",(e=>-e.y)).attr("r",5).attr("fill",(e=>e.color_set.color)).attr("stroke",(e=>e.color_set.gray)).attr("stroke-width",1).attr("transform",(e=>`rotate(${e.x}, 0, 0)`));const i=Tx().angle((e=>e.x*Math.PI/180)).radius((e=>e.y));r.select("g.links").selectAll("path.link").data(e.links()).enter().append("path").classed("link",!0).attr("stroke",(e=>e.target.color_set.gray)).attr("fill","none").attr("stroke-width",1.5).attr("d",(e=>i([e.target,e.source]))),this.nodes_group=r.select("g.nodes"),this.links_group=r.select("g.links"),this.head_child_wrapper?.append(r.node())}}class n_{content_wrapper=null;head_child_wrapper=null;tsInnerContainer=null;chartHelper;current_scale=1;root_svg=void 0;rotate_deg=0;animation_interval=void 0;start_animation=!1;constructor({tsInnerContainer:e,chartHelper:t}){this.tsInnerContainer=e,this.chartHelper=t,setTimeout((()=>{this.organizeUI()}),0)}organizeUI(){this.content_wrapper=this.chartHelper.createDynamicEl(),this.head_child_wrapper=this.chartHelper.createDynamicEl(),this.head_child_wrapper.className="st-child-wrapper",this.content_wrapper.className="st-grs-content-wrapper",this.content_wrapper.appendChild(this.head_child_wrapper),this.tsInnerContainer?.append(this.content_wrapper),this.map_children_data_to_head(),Bi((()=>{const e=jt(`${this.chartHelper.app_root_unique_selector} .root-svg-el`).node().getBoundingClientRect();this.chartHelper?.center_elem(e,"center")}),0)}animate_chat(e=!1,t=!1){if(e)return this.rotate_deg+=this.chartHelper?.animation_rotation_interval*(t?-1:1),this.root_svg.attr("transform",`rotate(${this.rotate_deg}, 0, 0)`);this.start_animation=!this.start_animation,this.start_animation?this.animation_interval=setInterval((()=>{this.rotate_deg+=this.chartHelper?.animation_rotation_interval*(t?-1:1),this.root_svg.attr("transform",`rotate(${this.rotate_deg}, 0, 0)`)}),this.chartHelper?.animation_rotation_speed):(null!=this.animation_interval&&clearInterval(this.animation_interval),this.animation_interval=void 0)}map_children_data_to_head(){const e=Cp(this.chartHelper.data_to_d3_format()).sort(((e,t)=>t.height-e.height||e.data.name.localeCompare(t.data.name))),t=540*Math.sqrt(this.chartHelper.tree_data.length/3),r=2*t,a=2*t;e.each((e=>{const t=this.chartHelper?.makeHead(e.data,!1,!1);e.head=t.node(),e.color_set=this.chartHelper?.color_handler.getColor(e.data.id)}));py().size([2*Math.PI,t]).separation(((e,t)=>100))(e);const i=Yt("svg").attr("viewBox",[-110-t,-110-t,r,a]).attr("width",r).attr("height",a).attr("style","background-color: none; max-width: 100%; height: auto; overflow: visible;");i.append("g").attr("fill","none").attr("stroke",this.chartHelper?.color_handler.get_app_gray()).attr("stroke-opacity",1).attr("stroke-width",1.5).selectAll("path").data(e.links()).join("path").attr("d",Wx().angle((e=>e.x)).radius((e=>e.y)));const n=i.append("g").selectAll("g").data(e.descendants()).join("g").attr("transform",(e=>`rotate(${180*e.x/Math.PI-90}) translate(${e.y},0)`));n.append("circle").attr("fill",(e=>e.color_set.color)).attr("r",3),n.append((e=>("rounded"!=this.chartHelper?.chart_head_type&&this.chartHelper?.show_chart_head_border&&(e.head.querySelector("rect").style.fill="white",e.head.querySelector("rect").style.strokeWidth="1"),e.head))),n.append("title").text((e=>e.data.name+" - "+e.data.role)),this.root_svg=i,this.head_child_wrapper?.append(i.node())}}var o_={zoomIn:' ',zoomOut:' zoom-out Created with Sketch Beta. ',resetZoom:' ',rotate:'',rotate_once:' ',rotate_once_anti_clockwise:' ',rotate_anticlockwise:''};class c_{root_ui_element=void 0;zoomInOut=()=>null;resetZoom=()=>null;animate_chat=()=>null;tree_type=void 0;animatable_trees=["goldenRod","radialSpiderLeg"];constructor({root_ui_element:e,zoomInOut:t,resetZoom:r,animate_chat:a}){this.root_ui_element=e,this.zoomInOut=t,this.resetZoom=r,this.animate_chat=a,setTimeout((()=>{this.make_tools()}),0)}make_tools(){const e=new xw;e.className="tools-container",this.root_ui_element?.appendChild(e);const t=document.createElement("div");t.className="tool-item",t.innerHTML=o_.zoomIn,t.title="Zoom in",t.onclick=e=>this.zoomInOut();const r=document.createElement("div");r.className="tool-item",r.innerHTML=o_.zoomOut,r.title="Zoom out",r.onclick=e=>this.zoomInOut("out");const a=document.createElement("div");a.className="tool-item",a.innerHTML=o_.resetZoom,a.title="Reset zoom & position",a.onclick=e=>this.resetZoom();const i=document.createElement("div");i.className="tool-item",i.innerHTML=o_.rotate,i.title="Start/Stop Clockwise Rotation";const n=document.createElement("div");n.className="tool-item",n.innerHTML=o_.rotate_anticlockwise,n.title="Start/Stop Anticlockwise Rotation";const o=document.createElement("div");o.className="tool-item",o.innerHTML=o_.rotate_once,o.title="Rotate Clockwise Once";const c=document.createElement("div");c.className="tool-item",c.innerHTML=o_.rotate_once_anti_clockwise,c.title="Rotate Anticlockwise Once",e.append(t),e.append(r),e.append(a),this.animatable_trees.includes(this.tree_type)&&(e.append(i),e.append(n),e.append(o),e.append(c),i.onclick=e=>this.animate_chat(),n.onclick=e=>this.animate_chat(!1,!0),o.onclick=e=>this.animate_chat(!0),c.onclick=e=>this.animate_chat(!0,!0))}}class l_ extends EventTarget{libraryName="TreeSpider";targetRootContainer=null;rootWrapperContainer=null;tsInnerContainer=null;rootCanvasEl=null;chartHelper={};currentChartUI;zoom_instace;colorHandler={};tree_default_point_position="";instance_unique_id="";options={targetContainer:"",width:"900px",height:"500px",placeEl:"override",tree_data:void 0,color_range:[],tree_type:"default",chart_head_type:"default",show_tools:!0,show_chart_head_border:!1,animation_rotation_speed:10,animation_rotation_interval:1,backgroundPattern:"default",backgroundSize:void 0,customBackground:void 0,backgroundPosition:void 0,head_linker_thumb_circle_radius:8,linker_thumb_icon_color:"bright500",linker_thumb_shape:"symbolCircle",head_image_shape:"symbolCircle",chart_head_bg:"#ffffff",auto_set_chart_head_bg:!1,display_tree_in_step:!1,auto_display_tree_in_step:!0,tree_level_step:2,pallet:{h:10,s:.5,l:.5,darker:3,brighter:.8,bright100:.5,dark100:.5,gray:50,gray85:85},tree_link_type:void 0,random_data_length:200,autoInitialize:!0,zoom_in_distance:1.5,zoom_out_distance:.5,verticalSpace:"120px",font_link:"https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap",font_name:"Lato"};constructor(e){if(super(),null==e.targetContainer)throw new Error(this.libraryName+": The target container is required");if(null!=e.tree_data)this.options.tree_data=e.tree_data;else{const t=new qC({length:e.random_data_length||this.options.random_data_length});this.options.tree_data=t.generated_data}this.setOptions(e),this.instance_unique_id="tree_spider_"+this.options.targetContainer.replace(/[\W\D]/,"_"),this.loadFont(),console.info(this.libraryName+" ready!"),this.options.autoInitialize&&this.initialize()}initialize(){if(this.targetRootContainer=document.querySelector(this.options.targetContainer),null===this.targetRootContainer)throw new Error(this.libraryName+": target container not found");this.targetRootContainer.setAttribute("data-tree-spider-initialized",this.instance_unique_id),this.createUI(),setTimeout((()=>{this.emitEvent("library.init",{rootContainer:this.rootWrapperContainer})}),0),console.info(this.libraryName+" initialized!")}initialize_root_container(){this.rootWrapperContainer=new vw,this.rootWrapperContainer.setAttribute("data-ts-unique-id",this.instance_unique_id),this.setCSSPropertyVar("--vertical-space-var",this.options.verticalSpace),this.setCSSPropertyVar("--font-family",this.options.font_name),this.setCSSPropertyVar("--root-cont-width",this.options.width),this.setCSSPropertyVar("--root-cont-height",this.options.height),this.rootWrapperContainer.setAttribute("backgroundPattern",this.options.backgroundPattern),this.rootWrapperContainer.setAttribute("backgroundSize",this.options.backgroundSize),this.rootWrapperContainer.setAttribute("customBackground",this.options.customBackground),this.rootWrapperContainer.setAttribute("backgroundPosition",this.options.backgroundPosition)}setCSSPropertyVar(e,t){this.rootWrapperContainer?.style.setProperty(e,t)}loadFont(){let e,t,r;null==jt('[href="https://fonts.googleapis.com"]').node()&&(t=Yt("link").attr("rel","preconnect").attr("href","https://fonts.googleapis.com")),null==jt('[href="https://fonts.gstatic.com"]').node()&&(r=Yt("link").attr("rel","preconnect").attr("href","https://fonts.gstatic.com").attr("crossOrigin","")),this.options.font_link&&(e=Yt("link").attr("href",this.options.font_link).attr("rel","stylesheet")),null!=t&&document.head.appendChild(t.node()),null!=r&&document.head.appendChild(r.node()),null!=e&&document.head.appendChild(e.node())}setObjectValue(e,t){const r=e;if(0==Object.keys(r).length)return t;for(const e in r)if(Object.keys(t).includes(e)&&Object.hasOwnProperty.call(r,e))if("object"!=typeof r[e]||Array.isArray(r[e]))r[e]=t[e];else{const a=this.setObjectValue(r[e],t[e]);r[e]={...r[e],...a}}return r}createUI(){this.initialize_root_container(),this.chartHelper=new ZC,this.chartHelper.rootWrapperContainer=this.rootWrapperContainer,this.chartHelper.app_unique_id=this.instance_unique_id,this.chartHelper.tree_data=this.options.tree_data,this.chartHelper.center_elem=this.center_elem.bind(this),this.chartHelper.chart_head_type=this.options.chart_head_type,this.chartHelper.animation_rotation_speed=this.options.animation_rotation_speed,this.chartHelper.animation_rotation_interval=this.options.animation_rotation_interval,this.chartHelper.head_linker_thumb_circle_radius=this.options.head_linker_thumb_circle_radius,this.chartHelper.linker_thumb_icon_color=this.options.linker_thumb_icon_color,this.chartHelper.linker_thumb_shape=this.options.linker_thumb_shape,this.chartHelper.head_image_shape=this.options.head_image_shape,this.chartHelper.chart_head_bg=this.options.chart_head_bg,this.chartHelper.auto_set_chart_head_bg=this.options.auto_set_chart_head_bg,this.chartHelper.display_tree_in_step=this.options.display_tree_in_step,this.chartHelper.auto_display_tree_in_step=this.options.auto_display_tree_in_step,this.chartHelper.tree_level_step=this.options.tree_level_step,this.chartHelper.tree_link_type=this.options.tree_link_type,this.chartHelper.emitEvent=this.emitEvent.bind(this),this.colorHandler=new QC({tree_data:this.options.tree_data,color_range:this.options.color_range,pallet:this.options.pallet}),this.chartHelper.color_handler=this.colorHandler,this.placeRootContainer()}zoomInOut(e="in"){const t="in"==e?this.options.zoom_in_distance:this.options.zoom_out_distance;this.zoom_instace?.scaleBy(jt(`[data-ts-unique-id='${this.instance_unique_id}']`),t)}resetZoom(){const e=jt(`[data-ts-unique-id='${this.instance_unique_id}'] .root-svg-el > g`).node().getBoundingClientRect();this.center_elem(e,this.tree_default_point_position)}placeRootContainer(){if(this.tsInnerContainer=this.chartHelper.createDynamicEl(),this.tsInnerContainer.className="ts-inner-container",0==this.options.tree_data?.length){const e=new xw;e.innerText="No data provided!",this.tsInnerContainer.appendChild(e)}if(this.rootWrapperContainer?.appendChild(this.tsInnerContainer),"start"==this.options.placeEl?this.targetRootContainer?.prepend(this.rootWrapperContainer):"end"==this.options.placeEl?this.targetRootContainer?.append(this.rootWrapperContainer):"object"==typeof this.options.placeEl&&Object.keys(this.options.placeEl).length>0?this.targetRootContainer?.insertBefore(this.rootWrapperContainer,this.targetRootContainer.querySelector(this.options.placeEl.beforeEl)):(this.targetRootContainer.innerHTML="",this.targetRootContainer.appendChild(this.rootWrapperContainer)),this.bindPanning(),"default"==this.options.tree_type)this.currentChartUI=new XC({tree_data:this.options.tree_data,tsInnerContainer:this.tsInnerContainer,chartHelper:this.chartHelper});else if("vSpiderWalk"==this.options.tree_type)this.currentChartUI=new e_({tree_data:this.options.tree_data,tsInnerContainer:this.tsInnerContainer,chartHelper:this.chartHelper});else if("hSpider"==this.options.tree_type)this.currentChartUI=new t_({tree_data:this.options.tree_data,tsInnerContainer:this.tsInnerContainer,chartHelper:this.chartHelper});else if("hSpiderWalk"==this.options.tree_type)this.currentChartUI=new r_({tree_data:this.options.tree_data,tsInnerContainer:this.tsInnerContainer,chartHelper:this.chartHelper});else if("cellar"==this.options.tree_type)this.currentChartUI=new a_({tree_data:this.options.tree_data,tsInnerContainer:this.tsInnerContainer,chartHelper:this.chartHelper});else if("goldenRod"==this.options.tree_type)this.currentChartUI=new i_({tree_data:this.options.tree_data,tsInnerContainer:this.tsInnerContainer,chartHelper:this.chartHelper});else{if("radialSpiderLeg"!=this.options.tree_type)throw new Error("Not implemented and you are welcome to implement it :)");this.currentChartUI=new n_({tree_data:this.options.tree_data,tsInnerContainer:this.tsInnerContainer,chartHelper:this.chartHelper})}if(this.options.tree_data.length>0&&this.options.show_tools){new c_({root_ui_element:this.rootWrapperContainer,zoomInOut:this.zoomInOut.bind(this),resetZoom:this.resetZoom.bind(this),animate_chat:this.currentChartUI?.animate_chat?.bind(this.currentChartUI)}).tree_type=this.options.tree_type}}bindPanning(){const e=this.rootWrapperContainer?.getBoundingClientRect(),t=jt(`[data-ts-unique-id='${this.instance_unique_id}']`);this.zoom_instace=gw().filter((e=>(e.preventDefault(),!(e.ctrlKey&&"wheel"!==e.type||e.button)))).extent([[0,0],[e.width,e.height]]).on("zoom",(e=>{this.emitEvent("zooming",{e:e})&&(this.tsInnerContainer.style.transform=`translate(${e.transform.x}px, ${e.transform.y}px) scale(${e.transform.k})`,this.rootWrapperContainer.style.setProperty("--ts-root-container-cursor","grabbing"),this.currentChartUI.current_scale=e.transform.k)})).on("end",(e=>{this.rootWrapperContainer.style.setProperty("--ts-root-container-cursor","grab")})),t.call(this.zoom_instace).on("dblclick.zoom",(e=>null))}center_elem(e,t="center"){const r=jt(`[data-ts-unique-id='${this.instance_unique_id}']`);""==this.tree_default_point_position&&(this.tree_default_point_position=t);const a=r.node()?.getBoundingClientRect(),i=this.tsInnerContainer?.getBoundingClientRect(),n=(e.left-i.left)/this.currentChartUI.current_scale,o=(e.top-i.top)/this.currentChartUI.current_scale,c=a.width/2-e.width/2/this.currentChartUI.current_scale,l=a.height/2-e.height/2/this.currentChartUI.current_scale;let s=0,u=0;if("center"==t)s=n-c,u=o-l;else if("top"==t)s=n-c,u=o-10;else if("bottom"==t){s=n-c;u=o-(l+(a.height/2-e.height/2))+10}else if("left"==t)s=n-10,u=o-l;else if("right"==t){s=n-(c+(a.width/2-e.width/2))+10,u=o-l}r.transition().duration(2500).call(this.zoom_instace?.transform,cw.translate(-s,-u))}emitEvent(e,t,r=!0){const a=new CustomEvent(e,{detail:t,bubbles:!0,cancelable:r});return this.dispatchEvent(a)}updateChartHeadBg(e){"goldenRod"==this.options.tree_type||"radialSpiderLeg"==this.options.tree_type?(this.rootWrapperContainer?.querySelectorAll(".main-svg-el").forEach((t=>t.querySelector("rect").style.fill=e)),this.addEventListener("chart_head.expanded",(()=>this.rootWrapperContainer?.querySelectorAll(".main-svg-el").forEach((t=>t.querySelector("rect").style.fill=e))))):(this.rootWrapperContainer?.querySelectorAll(".main-svg-el").forEach((t=>t.style.backgroundColor=e)),this.addEventListener("chart_head.expanded",(()=>this.rootWrapperContainer?.querySelectorAll(".main-svg-el").forEach((t=>t.style.backgroundColor=e)))))}on(e,t){this.addEventListener(e,t)}setOptions(e){this.setObjectValue(this.options,e)}zoom(e){this.zoomInOut(e)}startStopRotateCW(){this.currentChartUI?.animate_chat()}startStopRotateACW(){this.currentChartUI?.animate_chat(!1,!0)}rotateOnceCW(){this.currentChartUI?.animate_chat(!0)}rotateOnceACW(){this.currentChartUI?.animate_chat(!0,!0)}}return l_}(); +var TreeSpider=function(){"use strict";var e={flux:'\n \n \n \n \n \n \n\n ',quad:'',blurry:'\n ',chaos:'',spiral:'',flurry:'',whirling:'',replicate:'\n \n \n \n \n \n ',scribble:'',squiggly:'',gyrate:'',leaves:'',reflection:'',spot:'\n \n \n \n '};function t(e,t){return null==e||null==t?NaN:et?1:e>=t?0:NaN}function r(e,t){return null==e||null==t?NaN:te?1:t>=e?0:NaN}function a(e){let a,n,o;function c(e,t,r=0,i=e.length){if(r>>1;n(e[a],t)<0?r=a+1:i=a}while(rt(e(r),a),o=(t,r)=>e(t)-r):(a=e===t||e===r?e:i,n=e,o=e),{left:c,center:function(e,t,r=0,a=e.length){const i=c(e,t,r,a-1);return i>r&&o(e[i-1],t)>-o(e[i],t)?i-1:i},right:function(e,t,r=0,i=e.length){if(r>>1;n(e[a],t)<=0?r=a+1:i=a}while(r{t(e,r,(a<<=2)+0,(i<<=2)+0,n<<=2),t(e,r,a+1,i+1,n),t(e,r,a+2,i+2,n),t(e,r,a+3,i+3,n)}}));function d(e){return function(t,r,a=r){if(!((r=+r)>=0))throw new RangeError("invalid rx");if(!((a=+a)>=0))throw new RangeError("invalid ry");let{data:i,width:n,height:o}=t;if(!((n=Math.floor(n))>=0))throw new RangeError("invalid width");if(!((o=Math.floor(void 0!==o?o:i.length/n))>=0))throw new RangeError("invalid height");if(!n||!o||!r&&!a)return t;const c=r&&e(r),l=a&&e(a),s=i.slice();return c&&l?(p(c,s,i,n,o),p(c,i,s,n,o),p(c,s,i,n,o),y(l,i,s,n,o),y(l,s,i,n,o),y(l,i,s,n,o)):c?(p(c,i,s,n,o),p(c,s,i,n,o),p(c,i,s,n,o)):l&&(y(l,i,s,n,o),y(l,s,i,n,o),y(l,i,s,n,o)),t}}function p(e,t,r,a,i){for(let n=0,o=a*i;n{if(!((n-=o)>=i))return;let c=e*a[i];const l=o*e;for(let e=i,t=i+l;e{if(!((o-=c)>=n))return;let l=t*i[n];const s=c*t,u=s+c;for(let e=n,t=n+s;e=t&&++r;else{let a=-1;for(let i of e)null!=(i=t(i,++a,e))&&(i=+i)>=i&&++r}return r}function g(e){return 0|e.length}function b(e){return!(e>0)}function v(e){return"object"!=typeof e||"length"in e?e:Array.from(e)}function x(e,t){let r,a=0,i=0,n=0;if(void 0===t)for(let t of e)null!=t&&(t=+t)>=t&&(r=t-i,i+=r/++a,n+=r*(t-i));else{let o=-1;for(let c of e)null!=(c=t(c,++o,e))&&(c=+c)>=c&&(r=c-i,i+=r/++a,n+=r*(c-i))}if(a>1)return n/(a-1)}function k(e,t){const r=x(e,t);return r?Math.sqrt(r):r}function w(e,t){let r,a;if(void 0===t)for(const t of e)null!=t&&(void 0===r?t>=t&&(r=a=t):(r>t&&(r=t),a=n&&(r=a=n):(r>n&&(r=n),a0){for(n=e[--i];i>0&&(t=n,r=e[--i],n=t+r,a=r-(n-t),!a););i>0&&(a<0&&e[i-1]<0||a>0&&e[i-1]>0)&&(r=2*a,t=n+r,r==t-n&&(n=t))}return n}}class _ extends Map{constructor(e,t=B){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:t}}),null!=e)for(const[t,r]of e)this.set(t,r)}get(e){return super.get(A(this,e))}has(e){return super.has(A(this,e))}set(e,t){return super.set(M(this,e),t)}delete(e){return super.delete(T(this,e))}}class S extends Set{constructor(e,t=B){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:t}}),null!=e)for(const t of e)this.add(t)}has(e){return super.has(A(this,e))}add(e){return super.add(M(this,e))}delete(e){return super.delete(T(this,e))}}function A({_intern:e,_key:t},r){const a=t(r);return e.has(a)?e.get(a):r}function M({_intern:e,_key:t},r){const a=t(r);return e.has(a)?e.get(a):(e.set(a,r),r)}function T({_intern:e,_key:t},r){const a=t(r);return e.has(a)&&(r=e.get(a),e.delete(a)),r}function B(e){return null!==e&&"object"==typeof e?e.valueOf():e}function L(e){return e}function E(e,...t){return G(e,L,L,t)}function R(e,...t){return G(e,Array.from,L,t)}function H(e,t){for(let r=1,a=t.length;re.pop().map((([t,r])=>[...e,t,r]))));return e}function D(e,t,...r){return G(e,L,t,r)}function P(e,t,...r){return G(e,Array.from,t,r)}function N(e){if(1!==e.length)throw new Error("duplicate key");return e[0]}function G(e,t,r,a){return function e(i,n){if(n>=a.length)return r(i);const o=new _,c=a[n++];let l=-1;for(const e of i){const t=c(e,++l,i),r=o.get(t);r?r.push(e):o.set(t,[e])}for(const[t,r]of o)o.set(t,e(r,n));return t(o)}(e,0)}function I(e,t){return Array.from(t,(t=>e[t]))}function W(e,...t){if("function"!=typeof e[Symbol.iterator])throw new TypeError("values is not iterable");e=Array.from(e);let[r]=t;if(r&&2!==r.length||t.length>1){const a=Uint32Array.from(e,((e,t)=>t));return t.length>1?(t=t.map((t=>e.map(t))),a.sort(((e,r)=>{for(const a of t){const t=z(a[e],a[r]);if(t)return t}}))):(r=e.map(r),a.sort(((e,t)=>z(r[e],r[t])))),I(e,a)}return e.sort(F(r))}function F(e=t){if(e===t)return z;if("function"!=typeof e)throw new TypeError("compare is not a function");return(t,r)=>{const a=e(t,r);return a||0===a?a:(0===e(r,r))-(0===e(t,t))}}function z(e,t){return(null==e||!(e>=e))-(null==t||!(t>=t))||(et?1:0)}var O=Array.prototype.slice;function K(e){return()=>e}const J=Math.sqrt(50),V=Math.sqrt(10),j=Math.sqrt(2);function Y(e,t,r){const a=(t-e)/Math.max(0,r),i=Math.floor(Math.log10(a)),n=a/Math.pow(10,i),o=n>=J?10:n>=V?5:n>=j?2:1;let c,l,s;return i<0?(s=Math.pow(10,-i)/o,c=Math.round(e*s),l=Math.round(t*s),c/st&&--l,s=-s):(s=Math.pow(10,i)*o,c=Math.round(e/s),l=Math.round(t/s),c*st&&--l),l0))return[];if((e=+e)===(t=+t))return[e];const a=t=i))return[];const c=n-i+1,l=new Array(c);if(a)if(o<0)for(let e=0;e0?(e=Math.floor(e/i)*i,t=Math.ceil(t/i)*i):i<0&&(e=Math.ceil(e*i)/i,t=Math.floor(t*i)/i),a=i}}function Q(e){return Math.max(1,Math.ceil(Math.log(m(e))/Math.LN2)+1)}function X(){var e=L,t=w,r=Q;function a(a){Array.isArray(a)||(a=Array.from(a));var i,n,o,l=a.length,s=new Array(l);for(i=0;i=d)if(e>=d&&t===w){const e=U(h,d,r);isFinite(e)&&(e>0?d=(Math.floor(d/e)+1)*e:e<0&&(d=(Math.ceil(d*-e)+1)/-e))}else p.pop()}for(var y=p.length,f=0,m=y;p[f]<=h;)++f;for(;p[m-1]>d;)--m;(f||m0?p[i-1]:h,g.x1=i0)for(i=0;i=t)&&(r=t);else{let a=-1;for(let i of e)null!=(i=t(i,++a,e))&&(r=i)&&(r=i)}return r}function te(e,t){let r,a=-1,i=-1;if(void 0===t)for(const t of e)++i,null!=t&&(r=t)&&(r=t,a=i);else for(let n of e)null!=(n=t(n,++i,e))&&(r=n)&&(r=n,a=i);return a}function re(e,t){let r;if(void 0===t)for(const t of e)null!=t&&(r>t||void 0===r&&t>=t)&&(r=t);else{let a=-1;for(let i of e)null!=(i=t(i,++a,e))&&(r>i||void 0===r&&i>=i)&&(r=i)}return r}function ae(e,t){let r,a=-1,i=-1;if(void 0===t)for(const t of e)++i,null!=t&&(r>t||void 0===r&&t>=t)&&(r=t,a=i);else for(let n of e)null!=(n=t(n,++i,e))&&(r>n||void 0===r&&n>=n)&&(r=n,a=i);return a}function ie(e,t,r=0,a=1/0,i){if(t=Math.floor(t),r=Math.floor(Math.max(0,r)),a=Math.floor(Math.min(e.length-1,a)),!(r<=t&&t<=a))return e;for(i=void 0===i?z:F(i);a>r;){if(a-r>600){const n=a-r+1,o=t-r+1,c=Math.log(n),l=.5*Math.exp(2*c/3),s=.5*Math.sqrt(c*l*(n-l)/n)*(o-n/2<0?-1:1);ie(e,t,Math.max(r,Math.floor(t-o*l/n+s)),Math.min(a,Math.floor(t+(n-o)*l/n+s)),i)}const n=e[t];let o=r,c=a;for(ne(e,r,t),i(e[a],n)>0&&ne(e,r,a);o0;)--c}0===i(e[r],n)?ne(e,r,c):(++c,ne(e,c,a)),c<=t&&(r=c+1),t<=c&&(a=c-1)}return e}function ne(e,t,r){const a=e[t];e[t]=e[r],e[r]=a}function oe(e,r=t){let a,i=!1;if(1===r.length){let n;for(const o of e){const e=r(o);(i?t(e,n)>0:0===t(e,e))&&(a=o,n=e,i=!0)}}else for(const t of e)(i?r(t,a)>0:0===r(t,t))&&(a=t,i=!0);return a}function ce(e,t,r){if(e=Float64Array.from(function*(e,t){if(void 0===t)for(let t of e)null!=t&&(t=+t)>=t&&(yield t);else{let r=-1;for(let a of e)null!=(a=t(a,++r,e))&&(a=+a)>=a&&(yield a)}}(e,r)),(a=e.length)&&!isNaN(t=+t)){if(t<=0||a<2)return re(e);if(t>=1)return ee(e);var a,i=(a-1)*t,n=Math.floor(i),o=ee(ie(e,n).subarray(0,n+1));return o+(re(e.subarray(n+1))-o)*(i-n)}}function le(e,t,r=n){if((a=e.length)&&!isNaN(t=+t)){if(t<=0||a<2)return+r(e[0],0,e);if(t>=1)return+r(e[a-1],a-1,e);var a,i=(a-1)*t,o=Math.floor(i),c=+r(e[o],o,e);return c+(+r(e[o+1],o+1,e)-c)*(i-o)}}function se(e,t,r=n){if(!isNaN(t=+t)){if(a=Float64Array.from(e,((t,a)=>n(r(e[a],a,e)))),t<=0)return ae(a);if(t>=1)return te(a);var a,i=Uint32Array.from(e,((e,t)=>t)),o=a.length-1,c=Math.floor(o*t);return ie(i,c,0,o,((e,t)=>z(a[e],a[t]))),(c=oe(i.subarray(0,c+1),(e=>a[e])))>=0?c:-1}}function ue(e){return Array.from(function*(e){for(const t of e)yield*t}(e))}function he(e,t){return[e,t]}function de(e,t,r){e=+e,t=+t,r=(i=arguments.length)<2?(t=e,e=0,1):i<3?1:+r;for(var a=-1,i=0|Math.max(0,Math.ceil((t-e)/r)),n=new Array(i);++a+e(t)}function Ae(e,t){return t=Math.max(0,e.bandwidth()-2*t)/2,e.round()&&(t=Math.round(t)),r=>+e(r)+t}function Me(){return!this.__axis}function Te(e,t){var r=[],a=null,i=null,n=6,o=6,c=3,l="undefined"!=typeof window&&window.devicePixelRatio>1?0:.5,s=1===e||4===e?-1:1,u=4===e||2===e?"x":"y",h=1===e||3===e?Ce:_e;function d(d){var p=null==a?t.ticks?t.ticks.apply(t,r):t.domain():a,y=null==i?t.tickFormat?t.tickFormat.apply(t,r):ke:i,f=Math.max(n,0)+c,m=t.range(),g=+m[0]+l,b=+m[m.length-1]+l,v=(t.bandwidth?Ae:Se)(t.copy(),l),x=d.selection?d.selection():d,k=x.selectAll(".domain").data([null]),w=x.selectAll(".tick").data(p,t).order(),C=w.exit(),_=w.enter().append("g").attr("class","tick"),S=w.select("line"),A=w.select("text");k=k.merge(k.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),w=w.merge(_),S=S.merge(_.append("line").attr("stroke","currentColor").attr(u+"2",s*n)),A=A.merge(_.append("text").attr("fill","currentColor").attr(u,s*f).attr("dy",1===e?"0em":3===e?"0.71em":"0.32em")),d!==x&&(k=k.transition(d),w=w.transition(d),S=S.transition(d),A=A.transition(d),C=C.transition(d).attr("opacity",we).attr("transform",(function(e){return isFinite(e=v(e))?h(e+l):this.getAttribute("transform")})),_.attr("opacity",we).attr("transform",(function(e){var t=this.parentNode.__axis;return h((t&&isFinite(t=t(e))?t:v(e))+l)}))),C.remove(),k.attr("d",4===e||2===e?o?"M"+s*o+","+g+"H"+l+"V"+b+"H"+s*o:"M"+l+","+g+"V"+b:o?"M"+g+","+s*o+"V"+l+"H"+b+"V"+s*o:"M"+g+","+l+"H"+b),w.attr("opacity",1).attr("transform",(function(e){return h(v(e)+l)})),S.attr(u+"2",s*n),A.attr(u,s*f).text(y),x.filter(Me).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",2===e?"start":4===e?"end":"middle"),x.each((function(){this.__axis=v}))}return d.scale=function(e){return arguments.length?(t=e,d):t},d.ticks=function(){return r=Array.from(arguments),d},d.tickArguments=function(e){return arguments.length?(r=null==e?[]:Array.from(e),d):r.slice()},d.tickValues=function(e){return arguments.length?(a=null==e?null:Array.from(e),d):a&&a.slice()},d.tickFormat=function(e){return arguments.length?(i=e,d):i},d.tickSize=function(e){return arguments.length?(n=o=+e,d):n},d.tickSizeInner=function(e){return arguments.length?(n=+e,d):n},d.tickSizeOuter=function(e){return arguments.length?(o=+e,d):o},d.tickPadding=function(e){return arguments.length?(c=+e,d):c},d.offset=function(e){return arguments.length?(l=+e,d):l},d}var Be={value:()=>{}};function Le(){for(var e,t=0,r=arguments.length,a={};t=0&&(t=e.slice(r+1),e=e.slice(0,r)),e&&!a.hasOwnProperty(e))throw new Error("unknown type: "+e);return{type:e,name:t}}))),o=-1,c=n.length;if(!(arguments.length<2)){if(null!=t&&"function"!=typeof t)throw new Error("invalid callback: "+t);for(;++o0)for(var r,a,i=new Array(r),n=0;n=0&&"xmlns"!==(t=e.slice(0,r))&&(e=e.slice(r+1)),Pe.hasOwnProperty(t)?{space:Pe[t],local:e}:e}function Ge(e){return function(){var t=this.ownerDocument,r=this.namespaceURI;return r===De&&t.documentElement.namespaceURI===De?t.createElement(e):t.createElementNS(r,e)}}function Ie(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function We(e){var t=Ne(e);return(t.local?Ie:Ge)(t)}function Fe(){}function ze(e){return null==e?Fe:function(){return this.querySelector(e)}}function Oe(e){return null==e?[]:Array.isArray(e)?e:Array.from(e)}function Ke(){return[]}function Je(e){return null==e?Ke:function(){return this.querySelectorAll(e)}}function Ve(e){return function(){return this.matches(e)}}function je(e){return function(t){return t.matches(e)}}var Ye=Array.prototype.find;function $e(){return this.firstElementChild}var Ue=Array.prototype.filter;function qe(){return Array.from(this.children)}function Ze(e){return new Array(e.length)}function Qe(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}function Xe(e,t,r,a,i,n){for(var o,c=0,l=t.length,s=n.length;ct?1:e>=t?0:NaN}function it(e){return function(){this.removeAttribute(e)}}function nt(e){return function(){this.removeAttributeNS(e.space,e.local)}}function ot(e,t){return function(){this.setAttribute(e,t)}}function ct(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}function lt(e,t){return function(){var r=t.apply(this,arguments);null==r?this.removeAttribute(e):this.setAttribute(e,r)}}function st(e,t){return function(){var r=t.apply(this,arguments);null==r?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,r)}}function ut(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function ht(e){return function(){this.style.removeProperty(e)}}function dt(e,t,r){return function(){this.style.setProperty(e,t,r)}}function pt(e,t,r){return function(){var a=t.apply(this,arguments);null==a?this.style.removeProperty(e):this.style.setProperty(e,a,r)}}function yt(e,t){return e.style.getPropertyValue(t)||ut(e).getComputedStyle(e,null).getPropertyValue(t)}function ft(e){return function(){delete this[e]}}function mt(e,t){return function(){this[e]=t}}function gt(e,t){return function(){var r=t.apply(this,arguments);null==r?delete this[e]:this[e]=r}}function bt(e){return e.trim().split(/^|\s+/)}function vt(e){return e.classList||new xt(e)}function xt(e){this._node=e,this._names=bt(e.getAttribute("class")||"")}function kt(e,t){for(var r=vt(e),a=-1,i=t.length;++a=0&&(this._names.splice(t,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};var Kt=[null];function Jt(e,t){this._groups=e,this._parents=t}function Vt(){return new Jt([[document.documentElement]],Kt)}function jt(e){return"string"==typeof e?new Jt([[document.querySelector(e)]],[document.documentElement]):new Jt([[e]],Kt)}function Yt(e){return jt(We(e).call(document.documentElement))}Jt.prototype=Vt.prototype={constructor:Jt,select:function(e){"function"!=typeof e&&(e=ze(e));for(var t=this._groups,r=t.length,a=new Array(r),i=0;i=x&&(x=v+1);!(b=m[x])&&++x=0;)(a=i[n])&&(o&&4^a.compareDocumentPosition(o)&&o.parentNode.insertBefore(a,o),o=a);return this},sort:function(e){function t(t,r){return t&&r?e(t.__data__,r.__data__):!t-!r}e||(e=at);for(var r=this._groups,a=r.length,i=new Array(a),n=0;n1?this.each((null==t?ht:"function"==typeof t?pt:dt)(e,t,null==r?"":r)):yt(this.node(),e)},property:function(e,t){return arguments.length>1?this.each((null==t?ft:"function"==typeof t?gt:mt)(e,t)):this.node()[e]},classed:function(e,t){var r=bt(e+"");if(arguments.length<2){for(var a=vt(this.node()),i=-1,n=r.length;++i=0&&(t=e.slice(r+1),e=e.slice(0,r)),{type:e,name:t}}))}(e+""),o=n.length;if(!(arguments.length<2)){for(c=t?Wt:It,a=0;a()=>e;function or(e,{sourceEvent:t,subject:r,target:a,identifier:i,active:n,x:o,y:c,dx:l,dy:s,dispatch:u}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},subject:{value:r,enumerable:!0,configurable:!0},target:{value:a,enumerable:!0,configurable:!0},identifier:{value:i,enumerable:!0,configurable:!0},active:{value:n,enumerable:!0,configurable:!0},x:{value:o,enumerable:!0,configurable:!0},y:{value:c,enumerable:!0,configurable:!0},dx:{value:l,enumerable:!0,configurable:!0},dy:{value:s,enumerable:!0,configurable:!0},_:{value:u}})}function cr(e){return!e.ctrlKey&&!e.button}function lr(){return this.parentNode}function sr(e,t){return null==t?{x:e.x,y:e.y}:t}function ur(){return navigator.maxTouchPoints||"ontouchstart"in this}function hr(e,t,r){e.prototype=t.prototype=r,r.constructor=e}function dr(e,t){var r=Object.create(e.prototype);for(var a in t)r[a]=t[a];return r}function pr(){}or.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};var yr=.7,fr=1/yr,mr="\\s*([+-]?\\d+)\\s*",gr="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",br="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",vr=/^#([0-9a-f]{3,8})$/,xr=new RegExp(`^rgb\\(${mr},${mr},${mr}\\)$`),kr=new RegExp(`^rgb\\(${br},${br},${br}\\)$`),wr=new RegExp(`^rgba\\(${mr},${mr},${mr},${gr}\\)$`),Cr=new RegExp(`^rgba\\(${br},${br},${br},${gr}\\)$`),_r=new RegExp(`^hsl\\(${gr},${br},${br}\\)$`),Sr=new RegExp(`^hsla\\(${gr},${br},${br},${gr}\\)$`),Ar={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};function Mr(){return this.rgb().formatHex()}function Tr(){return this.rgb().formatRgb()}function Br(e){var t,r;return e=(e+"").trim().toLowerCase(),(t=vr.exec(e))?(r=t[1].length,t=parseInt(t[1],16),6===r?Lr(t):3===r?new Dr(t>>8&15|t>>4&240,t>>4&15|240&t,(15&t)<<4|15&t,1):8===r?Er(t>>24&255,t>>16&255,t>>8&255,(255&t)/255):4===r?Er(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|240&t,((15&t)<<4|15&t)/255):null):(t=xr.exec(e))?new Dr(t[1],t[2],t[3],1):(t=kr.exec(e))?new Dr(255*t[1]/100,255*t[2]/100,255*t[3]/100,1):(t=wr.exec(e))?Er(t[1],t[2],t[3],t[4]):(t=Cr.exec(e))?Er(255*t[1]/100,255*t[2]/100,255*t[3]/100,t[4]):(t=_r.exec(e))?Fr(t[1],t[2]/100,t[3]/100,1):(t=Sr.exec(e))?Fr(t[1],t[2]/100,t[3]/100,t[4]):Ar.hasOwnProperty(e)?Lr(Ar[e]):"transparent"===e?new Dr(NaN,NaN,NaN,0):null}function Lr(e){return new Dr(e>>16&255,e>>8&255,255&e,1)}function Er(e,t,r,a){return a<=0&&(e=t=r=NaN),new Dr(e,t,r,a)}function Rr(e){return e instanceof pr||(e=Br(e)),e?new Dr((e=e.rgb()).r,e.g,e.b,e.opacity):new Dr}function Hr(e,t,r,a){return 1===arguments.length?Rr(e):new Dr(e,t,r,null==a?1:a)}function Dr(e,t,r,a){this.r=+e,this.g=+t,this.b=+r,this.opacity=+a}function Pr(){return`#${Wr(this.r)}${Wr(this.g)}${Wr(this.b)}`}function Nr(){const e=Gr(this.opacity);return`${1===e?"rgb(":"rgba("}${Ir(this.r)}, ${Ir(this.g)}, ${Ir(this.b)}${1===e?")":`, ${e})`}`}function Gr(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Ir(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Wr(e){return((e=Ir(e))<16?"0":"")+e.toString(16)}function Fr(e,t,r,a){return a<=0?e=t=r=NaN:r<=0||r>=1?e=t=NaN:t<=0&&(e=NaN),new Kr(e,t,r,a)}function zr(e){if(e instanceof Kr)return new Kr(e.h,e.s,e.l,e.opacity);if(e instanceof pr||(e=Br(e)),!e)return new Kr;if(e instanceof Kr)return e;var t=(e=e.rgb()).r/255,r=e.g/255,a=e.b/255,i=Math.min(t,r,a),n=Math.max(t,r,a),o=NaN,c=n-i,l=(n+i)/2;return c?(o=t===n?(r-a)/c+6*(r0&&l<1?0:o,new Kr(o,c,l,e.opacity)}function Or(e,t,r,a){return 1===arguments.length?zr(e):new Kr(e,t,r,null==a?1:a)}function Kr(e,t,r,a){this.h=+e,this.s=+t,this.l=+r,this.opacity=+a}function Jr(e){return(e=(e||0)%360)<0?e+360:e}function Vr(e){return Math.max(0,Math.min(1,e||0))}function jr(e,t,r){return 255*(e<60?t+(r-t)*e/60:e<180?r:e<240?t+(r-t)*(240-e)/60:t)}hr(pr,Br,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:Mr,formatHex:Mr,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return zr(this).formatHsl()},formatRgb:Tr,toString:Tr}),hr(Dr,Hr,dr(pr,{brighter(e){return e=null==e?fr:Math.pow(fr,e),new Dr(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=null==e?yr:Math.pow(yr,e),new Dr(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new Dr(Ir(this.r),Ir(this.g),Ir(this.b),Gr(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:Pr,formatHex:Pr,formatHex8:function(){return`#${Wr(this.r)}${Wr(this.g)}${Wr(this.b)}${Wr(255*(isNaN(this.opacity)?1:this.opacity))}`},formatRgb:Nr,toString:Nr})),hr(Kr,Or,dr(pr,{brighter(e){return e=null==e?fr:Math.pow(fr,e),new Kr(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=null==e?yr:Math.pow(yr,e),new Kr(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+360*(this.h<0),t=isNaN(e)||isNaN(this.s)?0:this.s,r=this.l,a=r+(r<.5?r:1-r)*t,i=2*r-a;return new Dr(jr(e>=240?e-240:e+120,i,a),jr(e,i,a),jr(e<120?e+240:e-120,i,a),this.opacity)},clamp(){return new Kr(Jr(this.h),Vr(this.s),Vr(this.l),Gr(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=Gr(this.opacity);return`${1===e?"hsl(":"hsla("}${Jr(this.h)}, ${100*Vr(this.s)}%, ${100*Vr(this.l)}%${1===e?")":`, ${e})`}`}}));const Yr=Math.PI/180,$r=180/Math.PI,Ur=.96422,qr=.82521,Zr=4/29,Qr=6/29,Xr=3*Qr*Qr,ea=Qr*Qr*Qr;function ta(e){if(e instanceof ia)return new ia(e.l,e.a,e.b,e.opacity);if(e instanceof ha)return da(e);e instanceof Dr||(e=Rr(e));var t,r,a=la(e.r),i=la(e.g),n=la(e.b),o=na((.2225045*a+.7168786*i+.0606169*n)/1);return a===i&&i===n?t=r=o:(t=na((.4360747*a+.3850649*i+.1430804*n)/Ur),r=na((.0139322*a+.0971045*i+.7141733*n)/qr)),new ia(116*o-16,500*(t-o),200*(o-r),e.opacity)}function ra(e,t){return new ia(e,0,0,null==t?1:t)}function aa(e,t,r,a){return 1===arguments.length?ta(e):new ia(e,t,r,null==a?1:a)}function ia(e,t,r,a){this.l=+e,this.a=+t,this.b=+r,this.opacity=+a}function na(e){return e>ea?Math.pow(e,1/3):e/Xr+Zr}function oa(e){return e>Qr?e*e*e:Xr*(e-Zr)}function ca(e){return 255*(e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055)}function la(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function sa(e){if(e instanceof ha)return new ha(e.h,e.c,e.l,e.opacity);if(e instanceof ia||(e=ta(e)),0===e.a&&0===e.b)return new ha(NaN,0=1?(r=1,t-1):Math.floor(r*t),i=e[a],n=e[a+1],o=a>0?e[a-1]:2*i-n,c=a()=>e;function Ma(e,t){return function(r){return e+r*t}}function Ta(e,t){var r=t-e;return r?Ma(e,r>180||r<-180?r-360*Math.round(r/360):r):Aa(isNaN(e)?t:e)}function Ba(e){return 1==(e=+e)?La:function(t,r){return r-t?function(e,t,r){return e=Math.pow(e,r),t=Math.pow(t,r)-e,r=1/r,function(a){return Math.pow(e+a*t,r)}}(t,r,e):Aa(isNaN(t)?r:t)}}function La(e,t){var r=t-e;return r?Ma(e,r):Aa(isNaN(e)?t:e)}var Ea=function e(t){var r=Ba(t);function a(e,t){var a=r((e=Hr(e)).r,(t=Hr(t)).r),i=r(e.g,t.g),n=r(e.b,t.b),o=La(e.opacity,t.opacity);return function(t){return e.r=a(t),e.g=i(t),e.b=n(t),e.opacity=o(t),e+""}}return a.gamma=e,a}(1);function Ra(e){return function(t){var r,a,i=t.length,n=new Array(i),o=new Array(i),c=new Array(i);for(r=0;rn&&(i=t.slice(n,i),c[o]?c[o]+=i:c[++o]=i),(r=r[0])===(a=a[0])?c[o]?c[o]+=a:c[++o]=a:(c[++o]=null,l.push({i:o,x:Wa(r,a)})),n=Oa.lastIndex;return n180?t+=360:t-e>180&&(e+=360),n.push({i:r.push(i(r)+"rotate(",null,a)-2,x:Wa(e,t)})):t&&r.push(i(r)+"rotate("+t+a)}(n.rotate,o.rotate,c,l),function(e,t,r,n){e!==t?n.push({i:r.push(i(r)+"skewX(",null,a)-2,x:Wa(e,t)}):t&&r.push(i(r)+"skewX("+t+a)}(n.skewX,o.skewX,c,l),function(e,t,r,a,n,o){if(e!==r||t!==a){var c=n.push(i(n)+"scale(",null,",",null,")");o.push({i:c-4,x:Wa(e,r)},{i:c-2,x:Wa(t,a)})}else 1===r&&1===a||n.push(i(n)+"scale("+r+","+a+")")}(n.scaleX,n.scaleY,o.scaleX,o.scaleY,c,l),n=o=null,function(e){for(var t,r=-1,a=l.length;++r=0&&t._call.call(void 0,e),t=t._next;--pi}function Ai(){gi=(mi=vi.now())+bi,pi=yi=0;try{Si()}finally{pi=0,function(){var e,t,r=hi,a=1/0;for(;r;)r._call?(a>r._time&&(a=r._time),e=r,r=r._next):(t=r._next,r._next=null,r=e?e._next=t:hi=t);di=e,Ti(a)}(),gi=0}}function Mi(){var e=vi.now(),t=e-mi;t>1e3&&(bi-=t,mi=e)}function Ti(e){pi||(yi&&(yi=clearTimeout(yi)),e-gi>24?(e<1/0&&(yi=setTimeout(Ai,e-vi.now()-bi)),fi&&(fi=clearInterval(fi))):(fi||(mi=vi.now(),fi=setInterval(Mi,1e3)),pi=1,xi(Ai)))}function Bi(e,t,r){var a=new Ci;return t=null==t?0:+t,a.restart((r=>{a.stop(),e(r+t)}),t,r),a}Ci.prototype=_i.prototype={constructor:Ci,restart:function(e,t,r){if("function"!=typeof e)throw new TypeError("callback is not a function");r=(null==r?ki():+r)+(null==t?0:+t),this._next||di===this||(di?di._next=this:hi=this,di=this),this._call=e,this._time=r,Ti()},stop:function(){this._call&&(this._call=null,this._time=1/0,Ti())}};var Li=Le("start","end","cancel","interrupt"),Ei=[];function Ri(e,t,r,a,i,n){var o=e.__transition;if(o){if(r in o)return}else e.__transition={};!function(e,t,r){var a,i=e.__transition;function n(e){r.state=1,r.timer.restart(o,r.delay,r.time),r.delay<=e&&o(e-r.delay)}function o(n){var s,u,h,d;if(1!==r.state)return l();for(s in i)if((d=i[s]).name===r.name){if(3===d.state)return Bi(o);4===d.state?(d.state=6,d.timer.stop(),d.on.call("interrupt",e,e.__data__,d.index,d.group),delete i[s]):+s0)throw new Error("too late; already scheduled");return r}function Di(e,t){var r=Pi(e,t);if(r.state>3)throw new Error("too late; already running");return r}function Pi(e,t){var r=e.__transition;if(!r||!(r=r[t]))throw new Error("transition not found");return r}function Ni(e,t){var r,a,i,n=e.__transition,o=!0;if(n){for(i in t=null==t?null:t+"",n)(r=n[i]).name===t?(a=r.state>2&&r.state<5,r.state=6,r.timer.stop(),r.on.call(a?"interrupt":"cancel",e,e.__data__,r.index,r.group),delete n[i]):o=!1;o&&delete e.__transition}}function Gi(e,t){var r,a;return function(){var i=Di(this,e),n=i.tween;if(n!==r)for(var o=0,c=(a=r=n).length;o=0&&(e=e.slice(0,t)),!e||"start"===e}))}(t)?Hi:Di;return function(){var o=n(this,e),c=o.on;c!==a&&(i=(a=c).copy()).on(t,r),o.on=i}}(r,e,t))},attr:function(e,t){var r=Ne(e),a="transform"===r?Qa:Fi;return this.attrTween(e,"function"==typeof t?(r.local?ji:Vi)(r,a,Wi(this,"attr."+e,t)):null==t?(r.local?Oi:zi)(r):(r.local?Ji:Ki)(r,a,t))},attrTween:function(e,t){var r="attr."+e;if(arguments.length<2)return(r=this.tween(r))&&r._value;if(null==t)return this.tween(r,null);if("function"!=typeof t)throw new Error;var a=Ne(e);return this.tween(r,(a.local?Yi:$i)(a,t))},style:function(e,t,r){var a="transform"==(e+="")?Za:Fi;return null==t?this.styleTween(e,function(e,t){var r,a,i;return function(){var n=yt(this,e),o=(this.style.removeProperty(e),yt(this,e));return n===o?null:n===r&&o===a?i:i=t(r=n,a=o)}}(e,a)).on("end.style."+e,en(e)):"function"==typeof t?this.styleTween(e,function(e,t,r){var a,i,n;return function(){var o=yt(this,e),c=r(this),l=c+"";return null==c&&(this.style.removeProperty(e),l=c=yt(this,e)),o===l?null:o===a&&l===i?n:(i=l,n=t(a=o,c))}}(e,a,Wi(this,"style."+e,t))).each(function(e,t){var r,a,i,n,o="style."+t,c="end."+o;return function(){var l=Di(this,e),s=l.on,u=null==l.value[o]?n||(n=en(t)):void 0;s===r&&i===u||(a=(r=s).copy()).on(c,i=u),l.on=a}}(this._id,e)):this.styleTween(e,function(e,t,r){var a,i,n=r+"";return function(){var o=yt(this,e);return o===n?null:o===a?i:i=t(a=o,r)}}(e,a,t),r).on("end.style."+e,null)},styleTween:function(e,t,r){var a="style."+(e+="");if(arguments.length<2)return(a=this.tween(a))&&a._value;if(null==t)return this.tween(a,null);if("function"!=typeof t)throw new Error;return this.tween(a,function(e,t,r){var a,i;function n(){var n=t.apply(this,arguments);return n!==i&&(a=(i=n)&&function(e,t,r){return function(a){this.style.setProperty(e,t.call(this,a),r)}}(e,n,r)),a}return n._value=t,n}(e,t,null==r?"":r))},text:function(e){return this.tween("text","function"==typeof e?function(e){return function(){var t=e(this);this.textContent=null==t?"":t}}(Wi(this,"text",e)):function(e){return function(){this.textContent=e}}(null==e?"":e+""))},textTween:function(e){var t="text";if(arguments.length<1)return(t=this.tween(t))&&t._value;if(null==e)return this.tween(t,null);if("function"!=typeof e)throw new Error;return this.tween(t,function(e){var t,r;function a(){var a=e.apply(this,arguments);return a!==r&&(t=(r=a)&&function(e){return function(t){this.textContent=e.call(this,t)}}(a)),t}return a._value=e,a}(e))},remove:function(){return this.on("end.remove",function(e){return function(){var t=this.parentNode;for(var r in this.__transition)if(+r!==e)return;t&&t.removeChild(this)}}(this._id))},tween:function(e,t){var r=this._id;if(e+="",arguments.length<2){for(var a,i=Pi(this.node(),r).tween,n=0,o=i.length;n()=>e;function In(e,{sourceEvent:t,target:r,selection:a,mode:i,dispatch:n}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},selection:{value:a,enumerable:!0,configurable:!0},mode:{value:i,enumerable:!0,configurable:!0},_:{value:n}})}function Wn(e){e.preventDefault(),e.stopImmediatePropagation()}var Fn={name:"drag"},zn={name:"space"},On={name:"handle"},Kn={name:"center"};const{abs:Jn,max:Vn,min:jn}=Math;function Yn(e){return[+e[0],+e[1]]}function $n(e){return[Yn(e[0]),Yn(e[1])]}var Un={name:"x",handles:["w","e"].map(ao),input:function(e,t){return null==e?null:[[+e[0],t[0][1]],[+e[1],t[1][1]]]},output:function(e){return e&&[e[0][0],e[1][0]]}},qn={name:"y",handles:["n","s"].map(ao),input:function(e,t){return null==e?null:[[t[0][0],+e[0]],[t[1][0],+e[1]]]},output:function(e){return e&&[e[0][1],e[1][1]]}},Zn={name:"xy",handles:["n","w","e","s","nw","ne","sw","se"].map(ao),input:function(e){return null==e?null:$n(e)},output:function(e){return e}},Qn={overlay:"crosshair",selection:"move",n:"ns-resize",e:"ew-resize",s:"ns-resize",w:"ew-resize",nw:"nwse-resize",ne:"nesw-resize",se:"nwse-resize",sw:"nesw-resize"},Xn={e:"w",w:"e",nw:"ne",ne:"nw",se:"sw",sw:"se"},eo={n:"s",s:"n",nw:"sw",ne:"se",se:"ne",sw:"nw"},to={overlay:1,selection:1,n:null,e:1,s:null,w:-1,nw:-1,ne:1,se:1,sw:-1},ro={overlay:1,selection:1,n:-1,e:null,s:1,w:null,nw:-1,ne:-1,se:1,sw:1};function ao(e){return{type:e}}function io(e){return!e.ctrlKey&&!e.button}function no(){var e=this.ownerSVGElement||this;return e.hasAttribute("viewBox")?[[(e=e.viewBox.baseVal).x,e.y],[e.x+e.width,e.y+e.height]]:[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]}function oo(){return navigator.maxTouchPoints||"ontouchstart"in this}function co(e){for(;!e.__brush;)if(!(e=e.parentNode))return;return e.__brush}function lo(e){var t,r=no,a=io,i=oo,n=!0,o=Le("start","brush","end"),c=6;function l(t){var r=t.property("__brush",f).selectAll(".overlay").data([ao("overlay")]);r.enter().append("rect").attr("class","overlay").attr("pointer-events","all").attr("cursor",Qn.overlay).merge(r).each((function(){var e=co(this).extent;jt(this).attr("x",e[0][0]).attr("y",e[0][1]).attr("width",e[1][0]-e[0][0]).attr("height",e[1][1]-e[0][1])})),t.selectAll(".selection").data([ao("selection")]).enter().append("rect").attr("class","selection").attr("cursor",Qn.selection).attr("fill","#777").attr("fill-opacity",.3).attr("stroke","#fff").attr("shape-rendering","crispEdges");var a=t.selectAll(".handle").data(e.handles,(function(e){return e.type}));a.exit().remove(),a.enter().append("rect").attr("class",(function(e){return"handle handle--"+e.type})).attr("cursor",(function(e){return Qn[e.type]})),t.each(s).attr("fill","none").attr("pointer-events","all").on("mousedown.brush",d).filter(i).on("touchstart.brush",d).on("touchmove.brush",p).on("touchend.brush touchcancel.brush",y).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function s(){var e=jt(this),t=co(this).selection;t?(e.selectAll(".selection").style("display",null).attr("x",t[0][0]).attr("y",t[0][1]).attr("width",t[1][0]-t[0][0]).attr("height",t[1][1]-t[0][1]),e.selectAll(".handle").style("display",null).attr("x",(function(e){return"e"===e.type[e.type.length-1]?t[1][0]-c/2:t[0][0]-c/2})).attr("y",(function(e){return"s"===e.type[0]?t[1][1]-c/2:t[0][1]-c/2})).attr("width",(function(e){return"n"===e.type||"s"===e.type?t[1][0]-t[0][0]+c:c})).attr("height",(function(e){return"e"===e.type||"w"===e.type?t[1][1]-t[0][1]+c:c}))):e.selectAll(".selection,.handle").style("display","none").attr("x",null).attr("y",null).attr("width",null).attr("height",null)}function u(e,t,r){var a=e.__brush.emitter;return!a||r&&a.clean?new h(e,t,r):a}function h(e,t,r){this.that=e,this.args=t,this.state=e.__brush,this.active=0,this.clean=r}function d(r){if((!t||r.touches)&&a.apply(this,arguments)){var i,o,c,l,h,d,p,y,f,m,g,b=this,v=r.target.__data__.type,x="selection"===(n&&r.metaKey?v="overlay":v)?Fn:n&&r.altKey?Kn:On,k=e===qn?null:to[v],w=e===Un?null:ro[v],C=co(b),_=C.extent,S=C.selection,A=_[0][0],M=_[0][1],T=_[1][0],B=_[1][1],L=0,E=0,R=k&&w&&n&&r.shiftKey,H=Array.from(r.touches||[r],(e=>{const t=e.identifier;return(e=Qt(e,b)).point0=e.slice(),e.identifier=t,e}));Ni(b);var D=u(b,arguments,!0).beforestart();if("overlay"===v){S&&(f=!0);const t=[H[0],H[1]||H[0]];C.selection=S=[[i=e===qn?A:jn(t[0][0],t[1][0]),c=e===Un?M:jn(t[0][1],t[1][1])],[h=e===qn?T:Vn(t[0][0],t[1][0]),p=e===Un?B:Vn(t[0][1],t[1][1])]],H.length>1&&W(r)}else i=S[0][0],c=S[0][1],h=S[1][0],p=S[1][1];o=i,l=c,d=h,y=p;var P=jt(b).attr("pointer-events","none"),N=P.selectAll(".overlay").attr("cursor",Qn[v]);if(r.touches)D.moved=I,D.ended=F;else{var G=jt(r.view).on("mousemove.brush",I,!0).on("mouseup.brush",F,!0);n&&G.on("keydown.brush",(function(e){switch(e.keyCode){case 16:R=k&&w;break;case 18:x===On&&(k&&(h=d-L*k,i=o+L*k),w&&(p=y-E*w,c=l+E*w),x=Kn,W(e));break;case 32:x!==On&&x!==Kn||(k<0?h=d-L:k>0&&(i=o-L),w<0?p=y-E:w>0&&(c=l-E),x=zn,N.attr("cursor",Qn.selection),W(e));break;default:return}Wn(e)}),!0).on("keyup.brush",(function(e){switch(e.keyCode){case 16:R&&(m=g=R=!1,W(e));break;case 18:x===Kn&&(k<0?h=d:k>0&&(i=o),w<0?p=y:w>0&&(c=l),x=On,W(e));break;case 32:x===zn&&(e.altKey?(k&&(h=d-L*k,i=o+L*k),w&&(p=y-E*w,c=l+E*w),x=Kn):(k<0?h=d:k>0&&(i=o),w<0?p=y:w>0&&(c=l),x=On),N.attr("cursor",Qn[v]),W(e));break;default:return}Wn(e)}),!0),ar(r.view)}s.call(b),D.start(r,x.name)}function I(e){for(const t of e.changedTouches||[e])for(const e of H)e.identifier===t.identifier&&(e.cur=Qt(t,b));if(R&&!m&&!g&&1===H.length){const e=H[0];Jn(e.cur[0]-e[0])>Jn(e.cur[1]-e[1])?g=!0:m=!0}for(const e of H)e.cur&&(e[0]=e.cur[0],e[1]=e.cur[1]);f=!0,Wn(e),W(e)}function W(e){const t=H[0],r=t.point0;var a;switch(L=t[0]-r[0],E=t[1]-r[1],x){case zn:case Fn:k&&(L=Vn(A-i,jn(T-h,L)),o=i+L,d=h+L),w&&(E=Vn(M-c,jn(B-p,E)),l=c+E,y=p+E);break;case On:H[1]?(k&&(o=Vn(A,jn(T,H[0][0])),d=Vn(A,jn(T,H[1][0])),k=1),w&&(l=Vn(M,jn(B,H[0][1])),y=Vn(M,jn(B,H[1][1])),w=1)):(k<0?(L=Vn(A-i,jn(T-i,L)),o=i+L,d=h):k>0&&(L=Vn(A-h,jn(T-h,L)),o=i,d=h+L),w<0?(E=Vn(M-c,jn(B-c,E)),l=c+E,y=p):w>0&&(E=Vn(M-p,jn(B-p,E)),l=c,y=p+E));break;case Kn:k&&(o=Vn(A,jn(T,i-L*k)),d=Vn(A,jn(T,h+L*k))),w&&(l=Vn(M,jn(B,c-E*w)),y=Vn(M,jn(B,p+E*w)))}de+r))}function vo(e,t){var r=0,a=null,i=null,n=null;function o(o){var c,l=o.length,s=new Array(l),u=bo(0,l),h=new Array(l*l),d=new Array(l),p=0;o=Float64Array.from({length:l*l},t?(e,t)=>o[t%l][t/l|0]:(e,t)=>o[t/l|0][t%l]);for(let t=0;ta(s[e],s[t])));for(const r of u){const a=t;if(e){const e=bo(1+~l,l).filter((e=>e<0?o[~e*l+r]:o[r*l+e]));i&&e.sort(((e,t)=>i(e<0?-o[~e*l+r]:o[r*l+e],t<0?-o[~t*l+r]:o[r*l+t])));for(const a of e)if(a<0){(h[~a*l+r]||(h[~a*l+r]={source:null,target:null})).target={index:r,startAngle:t,endAngle:t+=o[~a*l+r]*p,value:o[~a*l+r]}}else{(h[r*l+a]||(h[r*l+a]={source:null,target:null})).source={index:r,startAngle:t,endAngle:t+=o[r*l+a]*p,value:o[r*l+a]}}d[r]={index:r,startAngle:a,endAngle:t,value:s[r]}}else{const e=bo(0,l).filter((e=>o[r*l+e]||o[e*l+r]));i&&e.sort(((e,t)=>i(o[r*l+e],o[r*l+t])));for(const a of e){let e;if(r=0))throw new Error(`invalid digits: ${e}`);if(t>15)return _o;const r=10**t;return function(e){this._+=e[0];for(let t=1,a=e.length;two)if(Math.abs(u*c-l*s)>wo&&i){let d=r-n,p=a-o,y=c*c+l*l,f=d*d+p*p,m=Math.sqrt(y),g=Math.sqrt(h),b=i*Math.tan((xo-Math.acos((y+h-f)/(2*m*g)))/2),v=b/g,x=b/m;Math.abs(v-1)>wo&&this._append`L${e+v*s},${t+v*u}`,this._append`A${i},${i},0,0,${+(u*d>s*p)},${this._x1=e+x*c},${this._y1=t+x*l}`}else this._append`L${this._x1=e},${this._y1=t}`;else;}arc(e,t,r,a,i,n){if(e=+e,t=+t,n=!!n,(r=+r)<0)throw new Error(`negative radius: ${r}`);let o=r*Math.cos(a),c=r*Math.sin(a),l=e+o,s=t+c,u=1^n,h=n?a-i:i-a;null===this._x1?this._append`M${l},${s}`:(Math.abs(this._x1-l)>wo||Math.abs(this._y1-s)>wo)&&this._append`L${l},${s}`,r&&(h<0&&(h=h%ko+ko),h>Co?this._append`A${r},${r},0,1,${u},${e-o},${t-c}A${r},${r},0,1,${u},${this._x1=l},${this._y1=s}`:h>wo&&this._append`A${r},${r},0,${+(h>=xo)},${u},${this._x1=e+r*Math.cos(i)},${this._y1=t+r*Math.sin(i)}`)}rect(e,t,r,a){this._append`M${this._x0=this._x1=+e},${this._y0=this._y1=+t}h${r=+r}v${+a}h${-r}Z`}toString(){return this._}};function Ao(){return new So}Ao.prototype=So.prototype;var Mo=Array.prototype.slice;function To(e){return function(){return e}}function Bo(e){return e.source}function Lo(e){return e.target}function Eo(e){return e.radius}function Ro(e){return e.startAngle}function Ho(e){return e.endAngle}function Do(){return 0}function Po(){return 10}function No(e){var t=Bo,r=Lo,a=Eo,i=Eo,n=Ro,o=Ho,c=Do,l=null;function s(){var s,u=t.apply(this,arguments),h=r.apply(this,arguments),d=c.apply(this,arguments)/2,p=Mo.call(arguments),y=+a.apply(this,(p[0]=u,p)),f=n.apply(this,p)-yo,m=o.apply(this,p)-yo,g=+i.apply(this,(p[0]=h,p)),b=n.apply(this,p)-yo,v=o.apply(this,p)-yo;if(l||(l=s=Ao()),d>go&&(so(m-f)>2*d+go?m>f?(f+=d,m-=d):(f-=d,m+=d):f=m=(f+m)/2,so(v-b)>2*d+go?v>b?(b+=d,v-=d):(b-=d,v+=d):b=v=(b+v)/2),l.moveTo(y*uo(f),y*ho(f)),l.arc(0,0,y,f,m),f!==b||m!==v)if(e){var x=g-+e.apply(this,arguments),k=(b+v)/2;l.quadraticCurveTo(0,0,x*uo(b),x*ho(b)),l.lineTo(g*uo(k),g*ho(k)),l.lineTo(x*uo(v),x*ho(v))}else l.quadraticCurveTo(0,0,g*uo(b),g*ho(b)),l.arc(0,0,g,b,v);if(l.quadraticCurveTo(0,0,y*uo(f),y*ho(f)),l.closePath(),s)return l=null,s+""||null}return e&&(s.headRadius=function(t){return arguments.length?(e="function"==typeof t?t:To(+t),s):e}),s.radius=function(e){return arguments.length?(a=i="function"==typeof e?e:To(+e),s):a},s.sourceRadius=function(e){return arguments.length?(a="function"==typeof e?e:To(+e),s):a},s.targetRadius=function(e){return arguments.length?(i="function"==typeof e?e:To(+e),s):i},s.startAngle=function(e){return arguments.length?(n="function"==typeof e?e:To(+e),s):n},s.endAngle=function(e){return arguments.length?(o="function"==typeof e?e:To(+e),s):o},s.padAngle=function(e){return arguments.length?(c="function"==typeof e?e:To(+e),s):c},s.source=function(e){return arguments.length?(t=e,s):t},s.target=function(e){return arguments.length?(r=e,s):r},s.context=function(e){return arguments.length?(l=null==e?null:e,s):l},s}var Go=Array.prototype.slice;function Io(e,t){return e-t}var Wo=e=>()=>e;function Fo(e,t){for(var r,a=-1,i=t.length;++aa!=p>a&&r<(d-s)*(a-u)/(p-u)+s&&(i=-i)}return i}function Oo(e,t,r){var a;return function(e,t,r){return(t[0]-e[0])*(r[1]-e[1])==(r[0]-e[0])*(t[1]-e[1])}(e,t,r)&&function(e,t,r){return e<=t&&t<=r||r<=t&&t<=e}(e[a=+(e[0]===t[0])],r[a],t[a])}function Ko(){}var Jo=[[],[[[1,1.5],[.5,1]]],[[[1.5,1],[1,1.5]]],[[[1.5,1],[.5,1]]],[[[1,.5],[1.5,1]]],[[[1,1.5],[.5,1]],[[1,.5],[1.5,1]]],[[[1,.5],[1,1.5]]],[[[1,.5],[.5,1]]],[[[.5,1],[1,.5]]],[[[1,1.5],[1,.5]]],[[[.5,1],[1,.5]],[[1.5,1],[1,1.5]]],[[[1.5,1],[1,.5]]],[[[.5,1],[1.5,1]]],[[[1,1.5],[1.5,1]]],[[[.5,1],[1,1.5]]],[]];function Vo(){var e=1,t=1,r=Q,a=c;function i(e){var t=r(e);if(Array.isArray(t))t=t.slice().sort(Io);else{const r=w(e,jo);for(t=$(...Z(r[0],r[1],t),t);t[t.length-1]>=r[1];)t.pop();for(;t[1]n(e,t)))}function n(r,i){const n=null==i?NaN:+i;if(isNaN(n))throw new Error(`invalid value: ${i}`);var c=[],l=[];return function(r,a,i){var n,c,l,s,u,h,d=new Array,p=new Array;n=c=-1,s=Yo(r[0],a),Jo[s<<1].forEach(y);for(;++n=a,Jo[u<<2].forEach(y);for(;++n0?c.push([e]):l.push(e)})),l.forEach((function(e){for(var t,r=0,a=c.length;r0&&n0&&o=0&&n>=0))throw new Error("invalid size");return e=a,t=n,i},i.thresholds=function(e){return arguments.length?(r="function"==typeof e?e:Array.isArray(e)?Wo(Go.call(e)):Wo(e),i):r},i.smooth=function(e){return arguments.length?(a=e?c:Ko,i):a===c},i}function jo(e){return isFinite(e)?e:NaN}function Yo(e,t){return null!=e&&+e>=t}function $o(e){return null==e||isNaN(e=+e)?-1/0:e}function Uo(e,t,r,a){const i=a-t,n=r-t,o=isFinite(i)||isFinite(n)?i/n:Math.sign(i)/Math.sign(n);return isNaN(o)?e:e+o-.5}function qo(e){return e[0]}function Zo(e){return e[1]}function Qo(){return 1}const Xo=134217729;function ec(e,t,r,a,i){let n,o,c,l,s=t[0],u=a[0],h=0,d=0;u>s==u>-s?(n=s,s=t[++h]):(n=u,u=a[++d]);let p=0;if(hs==u>-s?(o=s+n,c=n-(o-s),s=t[++h]):(o=u+n,c=n-(o-u),u=a[++d]),n=o,0!==c&&(i[p++]=c);hs==u>-s?(o=n+s,l=o-n,c=n-(o-l)+(s-l),s=t[++h]):(o=n+u,l=o-n,c=n-(o-l)+(u-l),u=a[++d]),n=o,0!==c&&(i[p++]=c);for(;h=33306690738754716e-32*s?l:-function(e,t,r,a,i,n,o){let c,l,s,u,h,d,p,y,f,m,g,b,v,x,k,w,C,_;const S=e-i,A=r-i,M=t-n,T=a-n;x=S*T,d=Xo*S,p=d-(d-S),y=S-p,d=Xo*T,f=d-(d-T),m=T-f,k=y*m-(x-p*f-y*f-p*m),w=M*A,d=Xo*M,p=d-(d-M),y=M-p,d=Xo*A,f=d-(d-A),m=A-f,C=y*m-(w-p*f-y*f-p*m),g=k-C,h=k-g,rc[0]=k-(g+h)+(h-C),b=x+g,h=b-x,v=x-(b-h)+(g-h),g=v-w,h=v-g,rc[1]=v-(g+h)+(h-w),_=b+g,h=_-b,rc[2]=b-(_-h)+(g-h),rc[3]=_;let B=function(e,t){let r=t[0];for(let a=1;a=L||-B>=L)return B;if(h=e-S,c=e-(S+h)+(h-i),h=r-A,s=r-(A+h)+(h-i),h=t-M,l=t-(M+h)+(h-n),h=a-T,u=a-(T+h)+(h-n),0===c&&0===l&&0===s&&0===u)return B;if(L=11093356479670487e-47*o+33306690738754706e-32*Math.abs(B),B+=S*u+T*c-(M*s+A*l),B>=L||-B>=L)return B;x=c*T,d=Xo*c,p=d-(d-c),y=c-p,d=Xo*T,f=d-(d-T),m=T-f,k=y*m-(x-p*f-y*f-p*m),w=l*A,d=Xo*l,p=d-(d-l),y=l-p,d=Xo*A,f=d-(d-A),m=A-f,C=y*m-(w-p*f-y*f-p*m),g=k-C,h=k-g,oc[0]=k-(g+h)+(h-C),b=x+g,h=b-x,v=x-(b-h)+(g-h),g=v-w,h=v-g,oc[1]=v-(g+h)+(h-w),_=b+g,h=_-b,oc[2]=b-(_-h)+(g-h),oc[3]=_;const E=ec(4,rc,4,oc,ac);x=S*u,d=Xo*S,p=d-(d-S),y=S-p,d=Xo*u,f=d-(d-u),m=u-f,k=y*m-(x-p*f-y*f-p*m),w=M*s,d=Xo*M,p=d-(d-M),y=M-p,d=Xo*s,f=d-(d-s),m=s-f,C=y*m-(w-p*f-y*f-p*m),g=k-C,h=k-g,oc[0]=k-(g+h)+(h-C),b=x+g,h=b-x,v=x-(b-h)+(g-h),g=v-w,h=v-g,oc[1]=v-(g+h)+(h-w),_=b+g,h=_-b,oc[2]=b-(_-h)+(g-h),oc[3]=_;const R=ec(E,ac,4,oc,ic);x=c*u,d=Xo*c,p=d-(d-c),y=c-p,d=Xo*u,f=d-(d-u),m=u-f,k=y*m-(x-p*f-y*f-p*m),w=l*s,d=Xo*l,p=d-(d-l),y=l-p,d=Xo*s,f=d-(d-s),m=s-f,C=y*m-(w-p*f-y*f-p*m),g=k-C,h=k-g,oc[0]=k-(g+h)+(h-C),b=x+g,h=b-x,v=x-(b-h)+(g-h),g=v-w,h=v-g,oc[1]=v-(g+h)+(h-w),_=b+g,h=_-b,oc[2]=b-(_-h)+(g-h),oc[3]=_;const H=ec(R,ic,4,oc,nc);return nc[H-1]}(e,t,r,a,i,n,s)}const lc=Math.pow(2,-52),sc=new Uint32Array(512);class uc{static from(e,t=mc,r=gc){const a=e.length,i=new Float64Array(2*a);for(let n=0;n>1;if(t>0&&"number"!=typeof e[0])throw new Error("Expected coords to contain numbers.");this.coords=e;const r=Math.max(2*t-5,0);this._triangles=new Uint32Array(3*r),this._halfedges=new Int32Array(3*r),this._hashSize=Math.ceil(Math.sqrt(t)),this._hullPrev=new Uint32Array(t),this._hullNext=new Uint32Array(t),this._hullTri=new Uint32Array(t),this._hullHash=new Int32Array(this._hashSize),this._ids=new Uint32Array(t),this._dists=new Float64Array(t),this.update()}update(){const{coords:e,_hullPrev:t,_hullNext:r,_hullTri:a,_hullHash:i}=this,n=e.length>>1;let o=1/0,c=1/0,l=-1/0,s=-1/0;for(let t=0;tl&&(l=r),a>s&&(s=a),this._ids[t]=t}const u=(o+l)/2,h=(c+s)/2;let d,p,y;for(let t=0,r=1/0;t0&&(p=t,r=a)}let g=e[2*p],b=e[2*p+1],v=1/0;for(let t=0;ta&&(t[r++]=i,a=n)}return this.hull=t.subarray(0,r),this.triangles=new Uint32Array(0),void(this.halfedges=new Uint32Array(0))}if(cc(f,m,g,b,x,k)<0){const e=p,t=g,r=b;p=y,g=x,b=k,y=e,x=t,k=r}const w=function(e,t,r,a,i,n){const o=r-e,c=a-t,l=i-e,s=n-t,u=o*o+c*c,h=l*l+s*s,d=.5/(o*s-c*l),p=e+(s*u-c*h)*d,y=t+(o*h-l*u)*d;return{x:p,y:y}}(f,m,g,b,x,k);this._cx=w.x,this._cy=w.y;for(let t=0;t0&&Math.abs(s-n)<=lc&&Math.abs(u-o)<=lc)continue;if(n=s,o=u,l===d||l===p||l===y)continue;let h=0;for(let e=0,t=this._hashKey(s,u);e=0;)if(m=f,m===h){m=-1;break}if(-1===m)continue;let g=this._addTriangle(m,l,r[m],-1,-1,a[m]);a[l]=this._legalize(g+2),a[m]=g,C++;let b=r[m];for(;f=r[b],cc(s,u,e[2*b],e[2*b+1],e[2*f],e[2*f+1])<0;)g=this._addTriangle(b,l,f,a[l],-1,a[b]),a[l]=this._legalize(g+2),r[b]=b,C--,b=f;if(m===h)for(;f=t[m],cc(s,u,e[2*f],e[2*f+1],e[2*m],e[2*m+1])<0;)g=this._addTriangle(f,l,m,-1,a[m],a[f]),this._legalize(g+2),a[f]=g,r[m]=m,C--,m=f;this._hullStart=t[l]=m,r[m]=t[b]=l,r[l]=b,i[this._hashKey(s,u)]=l,i[this._hashKey(e[2*m],e[2*m+1])]=m}this.hull=new Uint32Array(C);for(let e=0,t=this._hullStart;e0?3-r:1+r)/4}(e-this._cx,t-this._cy)*this._hashSize)%this._hashSize}_legalize(e){const{_triangles:t,_halfedges:r,coords:a}=this;let i=0,n=0;for(;;){const o=r[e],c=e-e%3;if(n=c+(e+2)%3,-1===o){if(0===i)break;e=sc[--i];continue}const l=o-o%3,s=c+(e+1)%3,u=l+(o+2)%3,h=t[n],d=t[e],p=t[s],y=t[u];if(dc(a[2*h],a[2*h+1],a[2*d],a[2*d+1],a[2*p],a[2*p+1],a[2*y],a[2*y+1])){t[e]=y,t[o]=h;const a=r[u];if(-1===a){let t=this._hullStart;do{if(this._hullTri[t]===u){this._hullTri[t]=e;break}t=this._hullPrev[t]}while(t!==this._hullStart)}this._link(e,a),this._link(o,r[n]),this._link(n,u);const c=l+(o+1)%3;i=r&&t[e[o]]>n;)e[o+1]=e[o--];e[o+1]=a}else{let i=r+1,n=a;fc(e,r+a>>1,i),t[e[r]]>t[e[a]]&&fc(e,r,a),t[e[i]]>t[e[a]]&&fc(e,i,a),t[e[r]]>t[e[i]]&&fc(e,r,i);const o=e[i],c=t[o];for(;;){do{i++}while(t[e[i]]c);if(n=n-r?(yc(e,t,i,a),yc(e,t,r,n-1)):(yc(e,t,r,n-1),yc(e,t,i,a))}}function fc(e,t,r){const a=e[t];e[t]=e[r],e[r]=a}function mc(e){return e[0]}function gc(e){return e[1]}const bc=1e-6;class vc{constructor(){this._x0=this._y0=this._x1=this._y1=null,this._=""}moveTo(e,t){this._+=`M${this._x0=this._x1=+e},${this._y0=this._y1=+t}`}closePath(){null!==this._x1&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")}lineTo(e,t){this._+=`L${this._x1=+e},${this._y1=+t}`}arc(e,t,r){const a=(e=+e)+(r=+r),i=t=+t;if(r<0)throw new Error("negative radius");null===this._x1?this._+=`M${a},${i}`:(Math.abs(this._x1-a)>bc||Math.abs(this._y1-i)>bc)&&(this._+="L"+a+","+i),r&&(this._+=`A${r},${r},0,1,1,${e-r},${t}A${r},${r},0,1,1,${this._x1=a},${this._y1=i}`)}rect(e,t,r,a){this._+=`M${this._x0=this._x1=+e},${this._y0=this._y1=+t}h${+r}v${+a}h${-r}Z`}value(){return this._||null}}class xc{constructor(){this._=[]}moveTo(e,t){this._.push([e,t])}closePath(){this._.push(this._[0].slice())}lineTo(e,t){this._.push([e,t])}value(){return this._.length?this._:null}}class kc{constructor(e,[t,r,a,i]=[0,0,960,500]){if(!((a=+a)>=(t=+t)&&(i=+i)>=(r=+r)))throw new Error("invalid bounds");this.delaunay=e,this._circumcenters=new Float64Array(2*e.points.length),this.vectors=new Float64Array(2*e.points.length),this.xmax=a,this.xmin=t,this.ymax=i,this.ymin=r,this._init()}update(){return this.delaunay.update(),this._init(),this}_init(){const{delaunay:{points:e,hull:t,triangles:r},vectors:a}=this;let i,n;const o=this.circumcenters=this._circumcenters.subarray(0,r.length/3*2);for(let a,c,l=0,s=0,u=r.length;l1;)i-=2;for(let e=2;e0){if(t>=this.ymax)return null;(i=(this.ymax-t)/a)0){if(e>=this.xmax)return null;(i=(this.xmax-e)/r)this.xmax?2:0)|(tthis.ymax?8:0)}_simplify(e){if(e&&e.length>4){for(let t=0;t2&&function(e){const{triangles:t,coords:r}=e;for(let e=0;e1e-10)return!1}return!0}(e)){this.collinear=Int32Array.from({length:t.length/2},((e,t)=>t)).sort(((e,r)=>t[2*e]-t[2*r]||t[2*e+1]-t[2*r+1]));const e=this.collinear[0],r=this.collinear[this.collinear.length-1],a=[t[2*e],t[2*e+1],t[2*r],t[2*r+1]],i=1e-8*Math.hypot(a[3]-a[1],a[2]-a[0]);for(let e=0,r=t.length/2;e0&&(this.triangles=new Int32Array(3).fill(-1),this.halfedges=new Int32Array(3).fill(-1),this.triangles[0]=a[0],n[a[0]]=1,2===a.length&&(n[a[1]]=0,this.triangles[1]=a[1],this.triangles[2]=a[1]))}voronoi(e){return new kc(this,e)}*neighbors(e){const{inedges:t,hull:r,_hullIndex:a,halfedges:i,triangles:n,collinear:o}=this;if(o){const t=o.indexOf(e);return t>0&&(yield o[t-1]),void(t=0&&i!==r&&i!==a;)r=i;return i}_step(e,t,r){const{inedges:a,hull:i,_hullIndex:n,halfedges:o,triangles:c,points:l}=this;if(-1===a[e]||!l.length)return(e+1)%(l.length>>1);let s=e,u=Cc(t-l[2*e],2)+Cc(r-l[2*e+1],2);const h=a[e];let d=h;do{let a=c[d];const h=Cc(t-l[2*a],2)+Cc(r-l[2*a+1],2);if(h9999?"+"+Rc(t,6):Rc(t,4))+"-"+Rc(e.getUTCMonth()+1,2)+"-"+Rc(e.getUTCDate(),2)+(n?"T"+Rc(r,2)+":"+Rc(a,2)+":"+Rc(i,2)+"."+Rc(n,3)+"Z":i?"T"+Rc(r,2)+":"+Rc(a,2)+":"+Rc(i,2)+"Z":a||r?"T"+Rc(r,2)+":"+Rc(a,2)+"Z":"")}function Dc(e){var t=new RegExp('["'+e+"\n\r]"),r=e.charCodeAt(0);function a(e,t){var a,i=[],n=e.length,o=0,c=0,l=n<=0,s=!1;function u(){if(l)return Bc;if(s)return s=!1,Tc;var t,a,i=o;if(34===e.charCodeAt(i)){for(;o++=n?l=!0:10===(a=e.charCodeAt(o++))?s=!0:13===a&&(s=!0,10===e.charCodeAt(o)&&++o),e.slice(i+1,t-1).replace(/""/g,'"')}for(;otl(t,r).then((t=>(new DOMParser).parseFromString(t,e)))}var cl=ol("application/xml"),ll=ol("text/html"),sl=ol("image/svg+xml");function ul(e,t,r,a){if(isNaN(t)||isNaN(r))return e;var i,n,o,c,l,s,u,h,d,p=e._root,y={data:a},f=e._x0,m=e._y0,g=e._x1,b=e._y1;if(!p)return e._root=y,e;for(;p.length;)if((s=t>=(n=(f+g)/2))?f=n:g=n,(u=r>=(o=(m+b)/2))?m=o:b=o,i=p,!(p=p[h=u<<1|s]))return i[h]=y,e;if(c=+e._x.call(null,p.data),l=+e._y.call(null,p.data),t===c&&r===l)return y.next=p,i?i[h]=y:e._root=y,e;do{i=i?i[h]=new Array(4):e._root=new Array(4),(s=t>=(n=(f+g)/2))?f=n:g=n,(u=r>=(o=(m+b)/2))?m=o:b=o}while((h=u<<1|s)==(d=(l>=o)<<1|c>=n));return i[d]=p,i[h]=y,e}function hl(e,t,r,a,i){this.node=e,this.x0=t,this.y0=r,this.x1=a,this.y1=i}function dl(e){return e[0]}function pl(e){return e[1]}function yl(e,t,r){var a=new fl(null==t?dl:t,null==r?pl:r,NaN,NaN,NaN,NaN);return null==e?a:a.addAll(e)}function fl(e,t,r,a,i,n){this._x=e,this._y=t,this._x0=r,this._y0=a,this._x1=i,this._y1=n,this._root=void 0}function ml(e){for(var t={data:e.data},r=t;e=e.next;)r=r.next={data:e.data};return t}var gl=yl.prototype=fl.prototype;function bl(e){return function(){return e}}function vl(e){return 1e-6*(e()-.5)}function xl(e){return e.x+e.vx}function kl(e){return e.y+e.vy}function wl(e){return e.index}function Cl(e,t){var r=e.get(t);if(!r)throw new Error("node not found: "+t);return r}gl.copy=function(){var e,t,r=new fl(this._x,this._y,this._x0,this._y0,this._x1,this._y1),a=this._root;if(!a)return r;if(!a.length)return r._root=ml(a),r;for(e=[{source:a,target:r._root=new Array(4)}];a=e.pop();)for(var i=0;i<4;++i)(t=a.source[i])&&(t.length?e.push({source:t,target:a.target[i]=new Array(4)}):a.target[i]=ml(t));return r},gl.add=function(e){const t=+this._x.call(null,e),r=+this._y.call(null,e);return ul(this.cover(t,r),t,r,e)},gl.addAll=function(e){var t,r,a,i,n=e.length,o=new Array(n),c=new Array(n),l=1/0,s=1/0,u=-1/0,h=-1/0;for(r=0;ru&&(u=a),ih&&(h=i));if(l>u||s>h)return this;for(this.cover(l,s).cover(u,h),r=0;re||e>=i||a>t||t>=n;)switch(c=(td||(n=l.y0)>p||(o=l.x1)=g)<<1|e>=m)&&(l=y[y.length-1],y[y.length-1]=y[y.length-1-s],y[y.length-1-s]=l)}else{var b=e-+this._x.call(null,f.data),v=t-+this._y.call(null,f.data),x=b*b+v*v;if(x=(c=(y+m)/2))?y=c:m=c,(u=o>=(l=(f+g)/2))?f=l:g=l,t=p,!(p=p[h=u<<1|s]))return this;if(!p.length)break;(t[h+1&3]||t[h+2&3]||t[h+3&3])&&(r=t,d=h)}for(;p.data!==e;)if(a=p,!(p=p.next))return this;return(i=p.next)&&delete p.next,a?(i?a.next=i:delete a.next,this):t?(i?t[h]=i:delete t[h],(p=t[0]||t[1]||t[2]||t[3])&&p===(t[3]||t[2]||t[1]||t[0])&&!p.length&&(r?r[d]=p:this._root=p),this):(this._root=i,this)},gl.removeAll=function(e){for(var t=0,r=e.length;t1?a[0]+a.slice(2):a,+e.slice(r+1)]}function Bl(e){return(e=Tl(Math.abs(e)))?e[1]:NaN}var Ll,El=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function Rl(e){if(!(t=El.exec(e)))throw new Error("invalid format: "+e);var t;return new Hl({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}function Hl(e){this.fill=void 0===e.fill?" ":e.fill+"",this.align=void 0===e.align?">":e.align+"",this.sign=void 0===e.sign?"-":e.sign+"",this.symbol=void 0===e.symbol?"":e.symbol+"",this.zero=!!e.zero,this.width=void 0===e.width?void 0:+e.width,this.comma=!!e.comma,this.precision=void 0===e.precision?void 0:+e.precision,this.trim=!!e.trim,this.type=void 0===e.type?"":e.type+""}function Dl(e,t){var r=Tl(e,t);if(!r)return e+"";var a=r[0],i=r[1];return i<0?"0."+new Array(-i).join("0")+a:a.length>i+1?a.slice(0,i+1)+"."+a.slice(i+1):a+new Array(i-a.length+2).join("0")}Rl.prototype=Hl.prototype,Hl.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(void 0===this.width?"":Math.max(1,0|this.width))+(this.comma?",":"")+(void 0===this.precision?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type};var Pl={"%":(e,t)=>(100*e).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+"",d:function(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString("en").replace(/,/g,""):e.toString(10)},e:(e,t)=>e.toExponential(t),f:(e,t)=>e.toFixed(t),g:(e,t)=>e.toPrecision(t),o:e=>Math.round(e).toString(8),p:(e,t)=>Dl(100*e,t),r:Dl,s:function(e,t){var r=Tl(e,t);if(!r)return e+"";var a=r[0],i=r[1],n=i-(Ll=3*Math.max(-8,Math.min(8,Math.floor(i/3))))+1,o=a.length;return n===o?a:n>o?a+new Array(n-o+1).join("0"):n>0?a.slice(0,n)+"."+a.slice(n):"0."+new Array(1-n).join("0")+Tl(e,Math.max(0,t+n-1))[0]},X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function Nl(e){return e}var Gl,Il,Wl,Fl=Array.prototype.map,zl=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function Ol(e){var t,r,a=void 0===e.grouping||void 0===e.thousands?Nl:(t=Fl.call(e.grouping,Number),r=e.thousands+"",function(e,a){for(var i=e.length,n=[],o=0,c=t[0],l=0;i>0&&c>0&&(l+c+1>a&&(c=Math.max(1,a-l)),n.push(e.substring(i-=c,i+c)),!((l+=c+1)>a));)c=t[o=(o+1)%t.length];return n.reverse().join(r)}),i=void 0===e.currency?"":e.currency[0]+"",n=void 0===e.currency?"":e.currency[1]+"",o=void 0===e.decimal?".":e.decimal+"",c=void 0===e.numerals?Nl:function(e){return function(t){return t.replace(/[0-9]/g,(function(t){return e[+t]}))}}(Fl.call(e.numerals,String)),l=void 0===e.percent?"%":e.percent+"",s=void 0===e.minus?"−":e.minus+"",u=void 0===e.nan?"NaN":e.nan+"";function h(e){var t=(e=Rl(e)).fill,r=e.align,h=e.sign,d=e.symbol,p=e.zero,y=e.width,f=e.comma,m=e.precision,g=e.trim,b=e.type;"n"===b?(f=!0,b="g"):Pl[b]||(void 0===m&&(m=12),g=!0,b="g"),(p||"0"===t&&"="===r)&&(p=!0,t="0",r="=");var v="$"===d?i:"#"===d&&/[boxX]/.test(b)?"0"+b.toLowerCase():"",x="$"===d?n:/[%p]/.test(b)?l:"",k=Pl[b],w=/[defgprs%]/.test(b);function C(e){var i,n,l,d=v,C=x;if("c"===b)C=k(e)+C,e="";else{var _=(e=+e)<0||1/e<0;if(e=isNaN(e)?u:k(Math.abs(e),m),g&&(e=function(e){e:for(var t,r=e.length,a=1,i=-1;a0&&(i=0)}return i>0?e.slice(0,i)+e.slice(t+1):e}(e)),_&&0==+e&&"+"!==h&&(_=!1),d=(_?"("===h?h:s:"-"===h||"("===h?"":h)+d,C=("s"===b?zl[8+Ll/3]:"")+C+(_&&"("===h?")":""),w)for(i=-1,n=e.length;++i(l=e.charCodeAt(i))||l>57){C=(46===l?o+e.slice(i+1):e.slice(i))+C,e=e.slice(0,i);break}}f&&!p&&(e=a(e,1/0));var S=d.length+e.length+C.length,A=S>1)+d+e+C+A.slice(S);break;default:e=A+d+e+C}return c(e)}return m=void 0===m?6:/[gprs]/.test(b)?Math.max(1,Math.min(21,m)):Math.max(0,Math.min(20,m)),C.toString=function(){return e+""},C}return{format:h,formatPrefix:function(e,t){var r=h(((e=Rl(e)).type="f",e)),a=3*Math.max(-8,Math.min(8,Math.floor(Bl(t)/3))),i=Math.pow(10,-a),n=zl[8+a/3];return function(e){return r(i*e)+n}}}}function Kl(e){return Gl=Ol(e),Il=Gl.format,Wl=Gl.formatPrefix,Gl}function Jl(e){return Math.max(0,-Bl(Math.abs(e)))}function Vl(e,t){return Math.max(0,3*Math.max(-8,Math.min(8,Math.floor(Bl(t)/3)))-Bl(Math.abs(e)))}function jl(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,Bl(t)-Bl(e))+1}Kl({thousands:",",grouping:[3],currency:["$",""]});var Yl=1e-6,$l=1e-12,Ul=Math.PI,ql=Ul/2,Zl=Ul/4,Ql=2*Ul,Xl=180/Ul,es=Ul/180,ts=Math.abs,rs=Math.atan,as=Math.atan2,is=Math.cos,ns=Math.ceil,os=Math.exp,cs=Math.hypot,ls=Math.log,ss=Math.pow,us=Math.sin,hs=Math.sign||function(e){return e>0?1:e<0?-1:0},ds=Math.sqrt,ps=Math.tan;function ys(e){return e>1?0:e<-1?Ul:Math.acos(e)}function fs(e){return e>1?ql:e<-1?-ql:Math.asin(e)}function ms(e){return(e=us(e/2))*e}function gs(){}function bs(e,t){e&&xs.hasOwnProperty(e.type)&&xs[e.type](e,t)}var vs={Feature:function(e,t){bs(e.geometry,t)},FeatureCollection:function(e,t){for(var r=e.features,a=-1,i=r.length;++a=0?1:-1,i=a*r,n=is(t=(t*=es)/2+Zl),o=us(t),c=Ts*o,l=Ms*n+c*is(i),s=c*a*us(i);Fs.add(as(s,l)),As=e,Ms=n,Ts=o}function Ys(e){return[as(e[1],e[0]),fs(e[2])]}function $s(e){var t=e[0],r=e[1],a=is(r);return[a*is(t),a*us(t),us(r)]}function Us(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}function qs(e,t){return[e[1]*t[2]-e[2]*t[1],e[2]*t[0]-e[0]*t[2],e[0]*t[1]-e[1]*t[0]]}function Zs(e,t){e[0]+=t[0],e[1]+=t[1],e[2]+=t[2]}function Qs(e,t){return[e[0]*t,e[1]*t,e[2]*t]}function Xs(e){var t=ds(e[0]*e[0]+e[1]*e[1]+e[2]*e[2]);e[0]/=t,e[1]/=t,e[2]/=t}var eu,tu,ru,au,iu,nu,ou,cu,lu,su,uu,hu,du,pu,yu,fu,mu={point:gu,lineStart:vu,lineEnd:xu,polygonStart:function(){mu.point=ku,mu.lineStart=wu,mu.lineEnd=Cu,Gs=new C,Os.polygonStart()},polygonEnd:function(){Os.polygonEnd(),mu.point=gu,mu.lineStart=vu,mu.lineEnd=xu,Fs<0?(Bs=-(Es=180),Ls=-(Rs=90)):Gs>Yl?Rs=90:Gs<-1e-6&&(Ls=-90),Ws[0]=Bs,Ws[1]=Es},sphere:function(){Bs=-(Es=180),Ls=-(Rs=90)}};function gu(e,t){Is.push(Ws=[Bs=e,Es=e]),tRs&&(Rs=t)}function bu(e,t){var r=$s([e*es,t*es]);if(Ns){var a=qs(Ns,r),i=qs([a[1],-a[0],0],a);Xs(i),i=Ys(i);var n,o=e-Hs,c=o>0?1:-1,l=i[0]*Xl*c,s=ts(o)>180;s^(c*HsRs&&(Rs=n):s^(c*Hs<(l=(l+360)%360-180)&&lRs&&(Rs=t)),s?e_u(Bs,Es)&&(Es=e):_u(e,Es)>_u(Bs,Es)&&(Bs=e):Es>=Bs?(eEs&&(Es=e)):e>Hs?_u(Bs,e)>_u(Bs,Es)&&(Es=e):_u(e,Es)>_u(Bs,Es)&&(Bs=e)}else Is.push(Ws=[Bs=e,Es=e]);tRs&&(Rs=t),Ns=r,Hs=e}function vu(){mu.point=bu}function xu(){Ws[0]=Bs,Ws[1]=Es,mu.point=gu,Ns=null}function ku(e,t){if(Ns){var r=e-Hs;Gs.add(ts(r)>180?r+(r>0?360:-360):r)}else Ds=e,Ps=t;Os.point(e,t),bu(e,t)}function wu(){Os.lineStart()}function Cu(){ku(Ds,Ps),Os.lineEnd(),ts(Gs)>Yl&&(Bs=-(Es=180)),Ws[0]=Bs,Ws[1]=Es,Ns=null}function _u(e,t){return(t-=e)<0?t+360:t}function Su(e,t){return e[0]-t[0]}function Au(e,t){return e[0]<=e[1]?e[0]<=t&&t<=e[1]:tUl&&(e-=Math.round(e/Ql)*Ql),[e,t]}function zu(e,t,r){return(e%=Ql)?t||r?Wu(Ku(e),Ju(t,r)):Ku(e):t||r?Ju(t,r):Fu}function Ou(e){return function(t,r){return ts(t+=e)>Ul&&(t-=Math.round(t/Ql)*Ql),[t,r]}}function Ku(e){var t=Ou(e);return t.invert=Ou(-e),t}function Ju(e,t){var r=is(e),a=us(e),i=is(t),n=us(t);function o(e,t){var o=is(t),c=is(e)*o,l=us(e)*o,s=us(t),u=s*r+c*a;return[as(l*i-u*n,c*r-s*a),fs(u*i+l*n)]}return o.invert=function(e,t){var o=is(t),c=is(e)*o,l=us(e)*o,s=us(t),u=s*i-l*n;return[as(l*i+s*n,c*r+u*a),fs(u*r-c*a)]},o}function Vu(e){function t(t){return(t=e(t[0]*es,t[1]*es))[0]*=Xl,t[1]*=Xl,t}return e=zu(e[0]*es,e[1]*es,e.length>2?e[2]*es:0),t.invert=function(t){return(t=e.invert(t[0]*es,t[1]*es))[0]*=Xl,t[1]*=Xl,t},t}function ju(e,t,r,a,i,n){if(r){var o=is(t),c=us(t),l=a*r;null==i?(i=t+a*Ql,n=t-l/2):(i=Yu(o,i),n=Yu(o,n),(a>0?in)&&(i+=a*Ql));for(var s,u=i;a>0?u>n:u1&&t.push(t.pop().concat(t.shift()))},result:function(){var r=t;return t=[],e=null,r}}}function Uu(e,t){return ts(e[0]-t[0])=0;--n)i.point((u=s[n])[0],u[1]);else a(d.x,d.p.x,-1,i);d=d.p}s=(d=d.o).z,p=!p}while(!d.v);i.lineEnd()}}}function Qu(e){if(t=e.length){for(var t,r,a=0,i=e[0];++a=0?1:-1,M=A*S,T=M>Ul,B=m*w;if(l.add(as(B*A*us(M),g*_+B*is(M))),o+=T?S+A*Ql:S,T^y>=r^x>=r){var L=qs($s(p),$s(v));Xs(L);var E=qs(n,L);Xs(E);var R=(T^S>=0?-1:1)*fs(E[2]);(a>R||a===R&&(L[0]||L[1]))&&(c+=T^S>=0?1:-1)}}return(o<-1e-6||o0){for(h||(i.polygonStart(),h=!0),i.lineStart(),e=0;e1&&2&l&&d.push(d.pop().concat(d.shift())),o.push(d.filter(rh))}return d}}function rh(e){return e.length>1}function ah(e,t){return((e=e.x)[0]<0?e[1]-ql-Yl:ql-e[1])-((t=t.x)[0]<0?t[1]-ql-Yl:ql-t[1])}Fu.invert=Fu;var ih=th((function(){return!0}),(function(e){var t,r=NaN,a=NaN,i=NaN;return{lineStart:function(){e.lineStart(),t=1},point:function(n,o){var c=n>0?Ul:-Ul,l=ts(n-r);ts(l-Ul)0?ql:-ql),e.point(i,a),e.lineEnd(),e.lineStart(),e.point(c,a),e.point(n,a),t=0):i!==c&&l>=Ul&&(ts(r-i)Yl?rs((us(t)*(n=is(a))*us(r)-us(a)*(i=is(t))*us(e))/(i*n*o)):(t+a)/2}(r,a,n,o),e.point(i,a),e.lineEnd(),e.lineStart(),e.point(c,a),t=0),e.point(r=n,a=o),i=c},lineEnd:function(){e.lineEnd(),r=a=NaN},clean:function(){return 2-t}}}),(function(e,t,r,a){var i;if(null==e)i=r*ql,a.point(-Ul,i),a.point(0,i),a.point(Ul,i),a.point(Ul,0),a.point(Ul,-i),a.point(0,-i),a.point(-Ul,-i),a.point(-Ul,0),a.point(-Ul,i);else if(ts(e[0]-t[0])>Yl){var n=e[0]0,i=ts(t)>Yl;function n(e,r){return is(e)*is(r)>t}function o(e,r,a){var i=[1,0,0],n=qs($s(e),$s(r)),o=Us(n,n),c=n[0],l=o-c*c;if(!l)return!a&&e;var s=t*o/l,u=-t*c/l,h=qs(i,n),d=Qs(i,s);Zs(d,Qs(n,u));var p=h,y=Us(d,p),f=Us(p,p),m=y*y-f*(Us(d,d)-1);if(!(m<0)){var g=ds(m),b=Qs(p,(-y-g)/f);if(Zs(b,d),b=Ys(b),!a)return b;var v,x=e[0],k=r[0],w=e[1],C=r[1];k0^b[1]<(ts(b[0]-x)Ul^(x<=b[0]&&b[0]<=k)){var A=Qs(p,(-y+g)/f);return Zs(A,d),[b,Ys(A)]}}}function c(t,r){var i=a?e:Ul-e,n=0;return t<-i?n|=1:t>i&&(n|=2),r<-i?n|=4:r>i&&(n|=8),n}return th(n,(function(e){var t,r,l,s,u;return{lineStart:function(){s=l=!1,u=1},point:function(h,d){var p,y=[h,d],f=n(h,d),m=a?f?0:c(h,d):f?c(h+(h<0?Ul:-Ul),d):0;if(!t&&(s=l=f)&&e.lineStart(),f!==l&&(!(p=o(t,y))||Uu(t,p)||Uu(y,p))&&(y[2]=1),f!==l)u=0,f?(e.lineStart(),p=o(y,t),e.point(p[0],p[1])):(p=o(t,y),e.point(p[0],p[1],2),e.lineEnd()),t=p;else if(i&&t&&a^f){var g;m&r||!(g=o(y,t,!0))||(u=0,a?(e.lineStart(),e.point(g[0][0],g[0][1]),e.point(g[1][0],g[1][1]),e.lineEnd()):(e.point(g[1][0],g[1][1]),e.lineEnd(),e.lineStart(),e.point(g[0][0],g[0][1],3)))}!f||t&&Uu(t,y)||e.point(y[0],y[1]),t=y,l=f,r=m},lineEnd:function(){l&&e.lineEnd(),t=null},clean:function(){return u|(s&&l)<<1}}}),(function(t,a,i,n){ju(n,e,r,i,t,a)}),a?[0,-e]:[-Ul,e-Ul])}var oh,ch,lh,sh,uh=1e9,hh=-uh;function dh(e,t,r,a){function i(i,n){return e<=i&&i<=r&&t<=n&&n<=a}function n(i,n,c,s){var u=0,h=0;if(null==i||(u=o(i,c))!==(h=o(n,c))||l(i,n)<0^c>0)do{s.point(0===u||3===u?e:r,u>1?a:t)}while((u=(u+c+4)%4)!==h);else s.point(n[0],n[1])}function o(a,i){return ts(a[0]-e)0?0:3:ts(a[0]-r)0?2:1:ts(a[1]-t)0?1:0:i>0?3:2}function c(e,t){return l(e.x,t.x)}function l(e,t){var r=o(e,1),a=o(t,1);return r!==a?r-a:0===r?t[1]-e[1]:1===r?e[0]-t[0]:2===r?e[1]-t[1]:t[0]-e[0]}return function(o){var l,s,u,h,d,p,y,f,m,g,b,v=o,x=$u(),k={point:w,lineStart:function(){k.point=C,s&&s.push(u=[]);g=!0,m=!1,y=f=NaN},lineEnd:function(){l&&(C(h,d),p&&m&&x.rejoin(),l.push(x.result()));k.point=w,m&&v.lineEnd()},polygonStart:function(){v=x,l=[],s=[],b=!0},polygonEnd:function(){var t=function(){for(var t=0,r=0,i=s.length;ra&&(d-n)*(a-o)>(p-o)*(e-n)&&++t:p<=a&&(d-n)*(a-o)<(p-o)*(e-n)&&--t;return t}(),r=b&&t,i=(l=ue(l)).length;(r||i)&&(o.polygonStart(),r&&(o.lineStart(),n(null,null,1,o),o.lineEnd()),i&&Zu(l,c,t,n,o),o.polygonEnd());v=o,l=s=u=null}};function w(e,t){i(e,t)&&v.point(e,t)}function C(n,o){var c=i(n,o);if(s&&u.push([n,o]),g)h=n,d=o,p=c,g=!1,c&&(v.lineStart(),v.point(n,o));else if(c&&m)v.point(n,o);else{var l=[y=Math.max(hh,Math.min(uh,y)),f=Math.max(hh,Math.min(uh,f))],x=[n=Math.max(hh,Math.min(uh,n)),o=Math.max(hh,Math.min(uh,o))];!function(e,t,r,a,i,n){var o,c=e[0],l=e[1],s=0,u=1,h=t[0]-c,d=t[1]-l;if(o=r-c,h||!(o>0)){if(o/=h,h<0){if(o0){if(o>u)return;o>s&&(s=o)}if(o=i-c,h||!(o<0)){if(o/=h,h<0){if(o>u)return;o>s&&(s=o)}else if(h>0){if(o0)){if(o/=d,d<0){if(o0){if(o>u)return;o>s&&(s=o)}if(o=n-l,d||!(o<0)){if(o/=d,d<0){if(o>u)return;o>s&&(s=o)}else if(d>0){if(o0&&(e[0]=c+s*h,e[1]=l+s*d),u<1&&(t[0]=c+u*h,t[1]=l+u*d),!0}}}}}(l,x,e,t,r,a)?c&&(v.lineStart(),v.point(n,o),b=!1):(m||(v.lineStart(),v.point(l[0],l[1])),v.point(x[0],x[1]),c||v.lineEnd(),b=!1)}y=n,f=o,m=c}return k}}var ph={sphere:gs,point:gs,lineStart:function(){ph.point=fh,ph.lineEnd=yh},lineEnd:gs,polygonStart:gs,polygonEnd:gs};function yh(){ph.point=ph.lineEnd=gs}function fh(e,t){ch=e*=es,lh=us(t*=es),sh=is(t),ph.point=mh}function mh(e,t){e*=es;var r=us(t*=es),a=is(t),i=ts(e-ch),n=is(i),o=a*us(i),c=sh*r-lh*a*n,l=lh*r+sh*a*n;oh.add(as(ds(o*o+c*c),l)),ch=e,lh=r,sh=a}function gh(e){return oh=new C,Cs(e,ph),+oh}var bh=[null,null],vh={type:"LineString",coordinates:bh};function xh(e,t){return bh[0]=e,bh[1]=t,gh(vh)}var kh={Feature:function(e,t){return Ch(e.geometry,t)},FeatureCollection:function(e,t){for(var r=e.features,a=-1,i=r.length;++a0&&(i=xh(e[n],e[n-1]))>0&&r<=i&&a<=i&&(r+a-i)*(1-Math.pow((r-a)/i,2))<$l*i)return!0;r=a}return!1}function Ah(e,t){return!!eh(e.map(Mh),Th(t))}function Mh(e){return(e=e.map(Th)).pop(),e}function Th(e){return[e[0]*es,e[1]*es]}function Bh(e,t,r){var a=de(e,t-Yl,r).concat(t);return function(e){return a.map((function(t){return[e,t]}))}}function Lh(e,t,r){var a=de(e,t-Yl,r).concat(t);return function(e){return a.map((function(t){return[t,e]}))}}function Eh(){var e,t,r,a,i,n,o,c,l,s,u,h,d=10,p=d,y=90,f=360,m=2.5;function g(){return{type:"MultiLineString",coordinates:b()}}function b(){return de(ns(a/y)*y,r,y).map(u).concat(de(ns(c/f)*f,o,f).map(h)).concat(de(ns(t/d)*d,e,d).filter((function(e){return ts(e%y)>Yl})).map(l)).concat(de(ns(n/p)*p,i,p).filter((function(e){return ts(e%f)>Yl})).map(s))}return g.lines=function(){return b().map((function(e){return{type:"LineString",coordinates:e}}))},g.outline=function(){return{type:"Polygon",coordinates:[u(a).concat(h(o).slice(1),u(r).reverse().slice(1),h(c).reverse().slice(1))]}},g.extent=function(e){return arguments.length?g.extentMajor(e).extentMinor(e):g.extentMinor()},g.extentMajor=function(e){return arguments.length?(a=+e[0][0],r=+e[1][0],c=+e[0][1],o=+e[1][1],a>r&&(e=a,a=r,r=e),c>o&&(e=c,c=o,o=e),g.precision(m)):[[a,c],[r,o]]},g.extentMinor=function(r){return arguments.length?(t=+r[0][0],e=+r[1][0],n=+r[0][1],i=+r[1][1],t>e&&(r=t,t=e,e=r),n>i&&(r=n,n=i,i=r),g.precision(m)):[[t,n],[e,i]]},g.step=function(e){return arguments.length?g.stepMajor(e).stepMinor(e):g.stepMinor()},g.stepMajor=function(e){return arguments.length?(y=+e[0],f=+e[1],g):[y,f]},g.stepMinor=function(e){return arguments.length?(d=+e[0],p=+e[1],g):[d,p]},g.precision=function(d){return arguments.length?(m=+d,l=Bh(n,i,90),s=Lh(t,e,m),u=Bh(c,o,90),h=Lh(a,r,m),g):m},g.extentMajor([[-180,-89.999999],[180,89.999999]]).extentMinor([[-180,-80.000001],[180,80.000001]])}var Rh,Hh,Dh,Ph,Nh=e=>e,Gh=new C,Ih=new C,Wh={point:gs,lineStart:gs,lineEnd:gs,polygonStart:function(){Wh.lineStart=Fh,Wh.lineEnd=Kh},polygonEnd:function(){Wh.lineStart=Wh.lineEnd=Wh.point=gs,Gh.add(ts(Ih)),Ih=new C},result:function(){var e=Gh/2;return Gh=new C,e}};function Fh(){Wh.point=zh}function zh(e,t){Wh.point=Oh,Rh=Dh=e,Hh=Ph=t}function Oh(e,t){Ih.add(Ph*e-Dh*t),Dh=e,Ph=t}function Kh(){Oh(Rh,Hh)}var Jh=1/0,Vh=Jh,jh=-Jh,Yh=jh,$h={point:function(e,t){ejh&&(jh=e);tYh&&(Yh=t)},lineStart:gs,lineEnd:gs,polygonStart:gs,polygonEnd:gs,result:function(){var e=[[Jh,Vh],[jh,Yh]];return jh=Yh=-(Vh=Jh=1/0),e}};var Uh,qh,Zh,Qh,Xh=0,ed=0,td=0,rd=0,ad=0,id=0,nd=0,od=0,cd=0,ld={point:sd,lineStart:ud,lineEnd:pd,polygonStart:function(){ld.lineStart=yd,ld.lineEnd=fd},polygonEnd:function(){ld.point=sd,ld.lineStart=ud,ld.lineEnd=pd},result:function(){var e=cd?[nd/cd,od/cd]:id?[rd/id,ad/id]:td?[Xh/td,ed/td]:[NaN,NaN];return Xh=ed=td=rd=ad=id=nd=od=cd=0,e}};function sd(e,t){Xh+=e,ed+=t,++td}function ud(){ld.point=hd}function hd(e,t){ld.point=dd,sd(Zh=e,Qh=t)}function dd(e,t){var r=e-Zh,a=t-Qh,i=ds(r*r+a*a);rd+=i*(Zh+e)/2,ad+=i*(Qh+t)/2,id+=i,sd(Zh=e,Qh=t)}function pd(){ld.point=sd}function yd(){ld.point=md}function fd(){gd(Uh,qh)}function md(e,t){ld.point=gd,sd(Uh=Zh=e,qh=Qh=t)}function gd(e,t){var r=e-Zh,a=t-Qh,i=ds(r*r+a*a);rd+=i*(Zh+e)/2,ad+=i*(Qh+t)/2,id+=i,nd+=(i=Qh*e-Zh*t)*(Zh+e),od+=i*(Qh+t),cd+=3*i,sd(Zh=e,Qh=t)}function bd(e){this._context=e}bd.prototype={_radius:4.5,pointRadius:function(e){return this._radius=e,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){0===this._line&&this._context.closePath(),this._point=NaN},point:function(e,t){switch(this._point){case 0:this._context.moveTo(e,t),this._point=1;break;case 1:this._context.lineTo(e,t);break;default:this._context.moveTo(e+this._radius,t),this._context.arc(e,t,this._radius,0,Ql)}},result:gs};var vd,xd,kd,wd,Cd,_d=new C,Sd={point:gs,lineStart:function(){Sd.point=Ad},lineEnd:function(){vd&&Md(xd,kd),Sd.point=gs},polygonStart:function(){vd=!0},polygonEnd:function(){vd=null},result:function(){var e=+_d;return _d=new C,e}};function Ad(e,t){Sd.point=Md,xd=wd=e,kd=Cd=t}function Md(e,t){wd-=e,Cd-=t,_d.add(ds(wd*wd+Cd*Cd)),wd=e,Cd=t}let Td,Bd,Ld,Ed;class Rd{constructor(e){this._append=null==e?Hd:function(e){const t=Math.floor(e);if(!(t>=0))throw new RangeError(`invalid digits: ${e}`);if(t>15)return Hd;if(t!==Td){const e=10**t;Td=t,Bd=function(t){let r=1;this._+=t[0];for(const a=t.length;r4*t&&f--){var x=o+d,k=c+p,w=l+y,C=ds(x*x+k*k+w*w),_=fs(w/=C),S=ts(ts(w)-1)t||ts((g*B+b*L)/v-.5)>.3||o*d+c*p+l*y2?e[2]%360*es:0,B()):[m*Xl,g*Xl,b*Xl]},M.angle=function(e){return arguments.length?(v=e%360*es,B()):v*Xl},M.reflectX=function(e){return arguments.length?(x=e?-1:1,B()):x<0},M.reflectY=function(e){return arguments.length?(k=e?-1:1,B()):k<0},M.precision=function(e){return arguments.length?(o=Od(c,A=e*e),L()):ds(A)},M.fitExtent=function(e,t){return Gd(M,e,t)},M.fitSize=function(e,t){return Id(M,e,t)},M.fitWidth=function(e,t){return Wd(M,e,t)},M.fitHeight=function(e,t){return Fd(M,e,t)},function(){return t=e.apply(this,arguments),M.invert=t.invert&&T,B()}}function Yd(e){var t=0,r=Ul/3,a=jd(e),i=a(t,r);return i.parallels=function(e){return arguments.length?a(t=e[0]*es,r=e[1]*es):[t*Xl,r*Xl]},i}function $d(e,t){var r=us(e),a=(r+us(t))/2;if(ts(a)0?t<-ql+Yl&&(t=-ql+Yl):t>ql-Yl&&(t=ql-Yl);var r=i/ss(ap(t),a);return[r*us(a*e),i-r*is(a*e)]}return n.invert=function(e,t){var r=i-t,n=hs(a)*ds(e*e+r*r),o=as(e,ts(r))*hs(r);return r*a<0&&(o-=Ul*hs(e)*hs(r)),[o/a,2*rs(ss(i/n,1/a))-ql]},n}function np(e,t){return[e,t]}function op(e,t){var r=is(e),a=e===t?us(e):(r-is(t))/(t-e),i=r/a+e;if(ts(a)=0;)t+=r[a].value;else t=1;e.value=t}function Cp(e,t){e instanceof Map?(e=[void 0,e],void 0===t&&(t=Sp)):void 0===t&&(t=_p);for(var r,a,i,n,o,c=new Tp(e),l=[c];r=l.pop();)if((i=t(r.data))&&(o=(i=Array.from(i)).length))for(r.children=i,n=o-1;n>=0;--n)l.push(a=i[n]=new Tp(i[n])),a.parent=r,a.depth=r.depth+1;return c.eachBefore(Mp)}function _p(e){return e.children}function Sp(e){return Array.isArray(e)?e[1]:null}function Ap(e){void 0!==e.data.value&&(e.value=e.data.value),e.data=e.data.data}function Mp(e){var t=0;do{e.height=t}while((e=e.parent)&&e.height<++t)}function Tp(e){this.data=e,this.depth=this.height=0,this.parent=null}function Bp(e){return null==e?null:Lp(e)}function Lp(e){if("function"!=typeof e)throw new Error;return e}function Ep(){return 0}function Rp(e){return function(){return e}}dp.invert=function(e,t){for(var r,a=t,i=a*a,n=i*i*i,o=0;o<12&&(n=(i=(a-=r=(a*(cp+lp*i+n*(sp+up*i))-t)/(cp+3*lp*i+n*(7*sp+9*up*i)))*a)*i*i,!(ts(r)<$l));++o);return[hp*e*(cp+3*lp*i+n*(7*sp+9*up*i))/is(a),fs(us(a)/hp)]},pp.invert=Qd(rs),yp.invert=function(e,t){var r,a=t,i=25;do{var n=a*a,o=n*n;a-=r=(a*(1.007226+n*(.015085+o*(.028874*n-.044475-.005916*o)))-t)/(1.007226+n*(.045255+o*(.259866*n-.311325-.005916*11*o)))}while(ts(r)>Yl&&--i>0);return[e/(.8707+(n=a*a)*(n*(n*n*n*(.003971-.001529*n)-.013791)-.131979)),a]},fp.invert=Qd(fs),mp.invert=Qd((function(e){return 2*rs(e)})),gp.invert=function(e,t){return[-t,2*rs(os(e))-ql]},Tp.prototype=Cp.prototype={constructor:Tp,count:function(){return this.eachAfter(wp)},each:function(e,t){let r=-1;for(const a of this)e.call(t,a,++r,this);return this},eachAfter:function(e,t){for(var r,a,i,n=this,o=[n],c=[],l=-1;n=o.pop();)if(c.push(n),r=n.children)for(a=0,i=r.length;a=0;--a)n.push(r[a]);return this},find:function(e,t){let r=-1;for(const a of this)if(e.call(t,a,++r,this))return a},sum:function(e){return this.eachAfter((function(t){for(var r=+e(t.data)||0,a=t.children,i=a&&a.length;--i>=0;)r+=a[i].value;t.value=r}))},sort:function(e){return this.eachBefore((function(t){t.children&&t.children.sort(e)}))},path:function(e){for(var t=this,r=function(e,t){if(e===t)return e;var r=e.ancestors(),a=t.ancestors(),i=null;e=r.pop(),t=a.pop();for(;e===t;)i=e,e=r.pop(),t=a.pop();return i}(t,e),a=[t];t!==r;)t=t.parent,a.push(t);for(var i=a.length;e!==r;)a.splice(i,0,e),e=e.parent;return a},ancestors:function(){for(var e=this,t=[e];e=e.parent;)t.push(e);return t},descendants:function(){return Array.from(this)},leaves:function(){var e=[];return this.eachBefore((function(t){t.children||e.push(t)})),e},links:function(){var e=this,t=[];return e.each((function(r){r!==e&&t.push({source:r.parent,target:r})})),t},copy:function(){return Cp(this).eachBefore(Ap)},[Symbol.iterator]:function*(){var e,t,r,a,i=this,n=[i];do{for(e=n.reverse(),n=[];i=e.pop();)if(yield i,t=i.children)for(r=0,a=t.length;r(e=(1664525*e+1013904223)%Hp)/Hp}function Pp(e,t){for(var r,a,i=0,n=(e=function(e,t){let r,a,i=e.length;for(;i;)a=t()*i--|0,r=e[i],e[i]=e[a],e[a]=r;return e}(Array.from(e),t)).length,o=[];i0&&r*r>a*a+i*i}function Wp(e,t){for(var r=0;r1e-6?(M+Math.sqrt(M*M-4*A*T))/(2*A):T/M);return{x:a+w+C*B,y:i+_+S*B,r:B}}function Kp(e,t,r){var a,i,n,o,c=e.x-t.x,l=e.y-t.y,s=c*c+l*l;s?(i=t.r+r.r,i*=i,o=e.r+r.r,i>(o*=o)?(a=(s+o-i)/(2*s),n=Math.sqrt(Math.max(0,o/s-a*a)),r.x=e.x-a*c-n*l,r.y=e.y-a*l+n*c):(a=(s+i-o)/(2*s),n=Math.sqrt(Math.max(0,i/s-a*a)),r.x=t.x+a*c-n*l,r.y=t.y+a*l+n*c)):(r.x=t.x+r.r,r.y=t.y)}function Jp(e,t){var r=e.r+t.r-1e-6,a=t.x-e.x,i=t.y-e.y;return r>0&&r*r>a*a+i*i}function Vp(e){var t=e._,r=e.next._,a=t.r+r.r,i=(t.x*r.r+r.x*t.r)/a,n=(t.y*r.r+r.y*t.r)/a;return i*i+n*n}function jp(e){this._=e,this.next=null,this.previous=null}function Yp(e,t){if(!(n=(e=function(e){return"object"==typeof e&&"length"in e?e:Array.from(e)}(e)).length))return 0;var r,a,i,n,o,c,l,s,u,h,d;if((r=e[0]).x=0,r.y=0,!(n>1))return r.r;if(a=e[1],r.x=-a.r,a.x=r.r,a.y=0,!(n>2))return r.r+a.r;Kp(a,r,i=e[2]),r=new jp(r),a=new jp(a),i=new jp(i),r.next=i.previous=a,a.next=r.previous=i,i.next=a.previous=r;e:for(l=3;l1&&!oy(e,t););return e.slice(0,t)}function oy(e,t){if("/"===e[t]){let r=0;for(;t>0&&"\\"===e[--t];)++r;if(!(1&r))return!0}return!1}function cy(e,t){return e.parent===t.parent?1:2}function ly(e){var t=e.children;return t?t[0]:e.t}function sy(e){var t=e.children;return t?t[t.length-1]:e.t}function uy(e,t,r){var a=r/(t.i-e.i);t.c-=a,t.s+=r,e.c+=a,t.z+=r,t.m+=r}function hy(e,t,r){return e.a.parent===t.parent?e.a:r}function dy(e,t){this._=e,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=t}function py(){var e=cy,t=1,r=1,a=null;function i(i){var l=function(e){for(var t,r,a,i,n,o=new dy(e,0),c=[o];t=c.pop();)if(a=t._.children)for(t.children=new Array(n=a.length),i=n-1;i>=0;--i)c.push(r=t.children[i]=new dy(a[i],i)),r.parent=t;return(o.parent=new dy(null,0)).children=[o],o}(i);if(l.eachAfter(n),l.parent.m=-l.z,l.eachBefore(o),a)i.eachBefore(c);else{var s=i,u=i,h=i;i.eachBefore((function(e){e.xu.x&&(u=e),e.depth>h.depth&&(h=e)}));var d=s===u?1:e(s,u)/2,p=d-s.x,y=t/(u.x+d+p),f=r/(h.depth||1);i.eachBefore((function(e){e.x=(e.x+p)*y,e.y=e.depth*f}))}return i}function n(t){var r=t.children,a=t.parent.children,i=t.i?a[t.i-1]:null;if(r){!function(e){for(var t,r=0,a=0,i=e.children,n=i.length;--n>=0;)(t=i[n]).z+=r,t.m+=r,r+=t.s+(a+=t.c)}(t);var n=(r[0].z+r[r.length-1].z)/2;i?(t.z=i.z+e(t._,i._),t.m=t.z-n):t.z=n}else i&&(t.z=i.z+e(t._,i._));t.parent.A=function(t,r,a){if(r){for(var i,n=t,o=t,c=r,l=n.parent.children[0],s=n.m,u=o.m,h=c.m,d=l.m;c=sy(c),n=ly(n),c&&n;)l=ly(l),(o=sy(o)).a=t,(i=c.z+h-n.z-s+e(c._,n._))>0&&(uy(hy(c,t,a),t,i),s+=i,u+=i),h+=c.m,s+=n.m,d+=l.m,u+=o.m;c&&!sy(o)&&(o.t=c,o.m+=h-u),n&&!ly(l)&&(l.t=n,l.m+=s-d,a=t)}return a}(t,i,t.parent.A||a[0])}function o(e){e._.x=e.z+e.parent.m,e.m+=e.parent.m}function c(e){e.x*=t,e.y=e.depth*r}return i.separation=function(t){return arguments.length?(e=t,i):e},i.size=function(e){return arguments.length?(a=!1,t=+e[0],r=+e[1],i):a?null:[t,r]},i.nodeSize=function(e){return arguments.length?(a=!0,t=+e[0],r=+e[1],i):a?[t,r]:null},i}function yy(e,t,r,a,i){for(var n,o=e.children,c=-1,l=o.length,s=e.value&&(i-r)/e.value;++cd&&(d=c),m=u*u*f,(p=Math.max(d/m,m/h))>y){u-=c;break}y=p}g.push(o={value:u,dice:l1?t:1)},r}(fy);var by=function e(t){function r(e,r,a,i,n){if((o=e._squarify)&&o.ratio===t)for(var o,c,l,s,u,h=-1,d=o.length,p=e.value;++h1?t:1)},r}(fy);function vy(e,t,r){return(t[0]-e[0])*(r[1]-e[1])-(t[1]-e[1])*(r[0]-e[0])}function xy(e,t){return e[0]-t[0]||e[1]-t[1]}function ky(e){const t=e.length,r=[0,1];let a,i=2;for(a=2;a1&&vy(e[r[i-2]],e[r[i-1]],e[a])<=0;)--i;r[i++]=a}return r.slice(0,i)}var wy=Math.random,Cy=function e(t){function r(e,r){return e=null==e?0:+e,r=null==r?1:+r,1===arguments.length?(r=e,e=0):r-=e,function(){return t()*r+e}}return r.source=e,r}(wy),_y=function e(t){function r(e,r){return arguments.length<2&&(r=e,e=0),e=Math.floor(e),r=Math.floor(r)-e,function(){return Math.floor(t()*r+e)}}return r.source=e,r}(wy),Sy=function e(t){function r(e,r){var a,i;return e=null==e?0:+e,r=null==r?1:+r,function(){var n;if(null!=a)n=a,a=null;else do{a=2*t()-1,n=2*t()-1,i=a*a+n*n}while(!i||i>1);return e+r*n*Math.sqrt(-2*Math.log(i)/i)}}return r.source=e,r}(wy),Ay=function e(t){var r=Sy.source(t);function a(){var e=r.apply(this,arguments);return function(){return Math.exp(e())}}return a.source=e,a}(wy),My=function e(t){function r(e){return(e=+e)<=0?()=>0:function(){for(var r=0,a=e;a>1;--a)r+=t();return r+a*t()}}return r.source=e,r}(wy),Ty=function e(t){var r=My.source(t);function a(e){if(0==(e=+e))return t;var a=r(e);return function(){return a()/e}}return a.source=e,a}(wy),By=function e(t){function r(e){return function(){return-Math.log1p(-t())/e}}return r.source=e,r}(wy),Ly=function e(t){function r(e){if((e=+e)<0)throw new RangeError("invalid alpha");return e=1/-e,function(){return Math.pow(1-t(),e)}}return r.source=e,r}(wy),Ey=function e(t){function r(e){if((e=+e)<0||e>1)throw new RangeError("invalid p");return function(){return Math.floor(t()+e)}}return r.source=e,r}(wy),Ry=function e(t){function r(e){if((e=+e)<0||e>1)throw new RangeError("invalid p");return 0===e?()=>1/0:1===e?()=>1:(e=Math.log1p(-e),function(){return 1+Math.floor(Math.log1p(-t())/e)})}return r.source=e,r}(wy),Hy=function e(t){var r=Sy.source(t)();function a(e,a){if((e=+e)<0)throw new RangeError("invalid k");if(0===e)return()=>0;if(a=null==a?1:+a,1===e)return()=>-Math.log1p(-t())*a;var i=(e<1?e+1:e)-1/3,n=1/(3*Math.sqrt(i)),o=e<1?()=>Math.pow(t(),1/e):()=>1;return function(){do{do{var e=r(),c=1+n*e}while(c<=0);c*=c*c;var l=1-t()}while(l>=1-.0331*e*e*e*e&&Math.log(l)>=.5*e*e+i*(1-c+Math.log(c)));return i*c*o()*a}}return a.source=e,a}(wy),Dy=function e(t){var r=Hy.source(t);function a(e,t){var a=r(e),i=r(t);return function(){var e=a();return 0===e?0:e/(e+i())}}return a.source=e,a}(wy),Py=function e(t){var r=Ry.source(t),a=Dy.source(t);function i(e,t){return e=+e,(t=+t)>=1?()=>e:t<=0?()=>0:function(){for(var i=0,n=e,o=t;n*o>16&&n*(1-o)>16;){var c=Math.floor((n+1)*o),l=a(c,n-c+1)();l<=o?(i+=c,n-=c,o=(o-l)/(1-l)):(n=c-1,o/=l)}for(var s=o<.5,u=r(s?o:1-o),h=u(),d=0;h<=n;++d)h+=u();return i+(s?d:n-d)}}return i.source=e,i}(wy),Ny=function e(t){function r(e,r,a){var i;return 0==(e=+e)?i=e=>-Math.log(e):(e=1/e,i=t=>Math.pow(t,e)),r=null==r?0:+r,a=null==a?1:+a,function(){return r+a*i(-Math.log1p(-t()))}}return r.source=e,r}(wy),Gy=function e(t){function r(e,r){return e=null==e?0:+e,r=null==r?1:+r,function(){return e+r*Math.tan(Math.PI*t())}}return r.source=e,r}(wy),Iy=function e(t){function r(e,r){return e=null==e?0:+e,r=null==r?1:+r,function(){var a=t();return e+r*Math.log(a/(1-a))}}return r.source=e,r}(wy),Wy=function e(t){var r=Hy.source(t),a=Py.source(t);function i(e){return function(){for(var i=0,n=e;n>16;){var o=Math.floor(.875*n),c=r(o)();if(c>n)return i+a(o-1,n/c)();i+=o,n-=c}for(var l=-Math.log1p(-t()),s=0;l<=n;++s)l-=Math.log1p(-t());return i+s}}return i.source=e,i}(wy);const Fy=1/4294967296;function zy(e,t){switch(arguments.length){case 0:break;case 1:this.range(e);break;default:this.range(t).domain(e)}return this}function Oy(e,t){switch(arguments.length){case 0:break;case 1:"function"==typeof e?this.interpolator(e):this.range(e);break;default:this.domain(e),"function"==typeof t?this.interpolator(t):this.range(t)}return this}const Ky=Symbol("implicit");function Jy(){var e=new _,t=[],r=[],a=Ky;function i(i){let n=e.get(i);if(void 0===n){if(a!==Ky)return a;e.set(i,n=t.push(i)-1)}return r[n%r.length]}return i.domain=function(r){if(!arguments.length)return t.slice();t=[],e=new _;for(const a of r)e.has(a)||e.set(a,t.push(a)-1);return i},i.range=function(e){return arguments.length?(r=Array.from(e),i):r.slice()},i.unknown=function(e){return arguments.length?(a=e,i):a},i.copy=function(){return Jy(t,r).unknown(a)},zy.apply(i,arguments),i}function Vy(){var e,t,r=Jy().unknown(void 0),a=r.domain,i=r.range,n=0,o=1,c=!1,l=0,s=0,u=.5;function h(){var r=a().length,h=ot&&(r=e,e=t,t=r),function(r){return Math.max(e,Math.min(t,r))}}(o[0],o[e-1])),a=e>2?Qy:Zy,i=n=null,h}function h(t){return null==t||isNaN(t=+t)?r:(i||(i=a(o.map(e),c,l)))(e(s(t)))}return h.invert=function(r){return s(t((n||(n=a(c,o.map(e),Wa)))(r)))},h.domain=function(e){return arguments.length?(o=Array.from(e,Yy),u()):o.slice()},h.range=function(e){return arguments.length?(c=Array.from(e),u()):c.slice()},h.rangeRound=function(e){return c=Array.from(e),l=Va,u()},h.clamp=function(e){return arguments.length?(s=!!e||Uy,u()):s!==Uy},h.interpolate=function(e){return arguments.length?(l=e,u()):l},h.unknown=function(e){return arguments.length?(r=e,h):r},function(r,a){return e=r,t=a,u()}}function tf(){return ef()(Uy,Uy)}function rf(e,t,r,a){var i,n=q(e,t,r);switch((a=Rl(null==a?",f":a)).type){case"s":var o=Math.max(Math.abs(e),Math.abs(t));return null!=a.precision||isNaN(i=Vl(n,o))||(a.precision=i),Wl(a,o);case"":case"e":case"g":case"p":case"r":null!=a.precision||isNaN(i=jl(n,Math.max(Math.abs(e),Math.abs(t))))||(a.precision=i-("e"===a.type));break;case"f":case"%":null!=a.precision||isNaN(i=Jl(n))||(a.precision=i-2*("%"===a.type))}return Il(a)}function af(e){var t=e.domain;return e.ticks=function(e){var r=t();return $(r[0],r[r.length-1],null==e?10:e)},e.tickFormat=function(e,r){var a=t();return rf(a[0],a[a.length-1],null==e?10:e,r)},e.nice=function(r){null==r&&(r=10);var a,i,n=t(),o=0,c=n.length-1,l=n[o],s=n[c],u=10;for(s0;){if((i=U(l,s,r))===a)return n[o]=l,n[c]=s,t(n);if(i>0)l=Math.floor(l/i)*i,s=Math.ceil(s/i)*i;else{if(!(i<0))break;l=Math.ceil(l*i)/i,s=Math.floor(s*i)/i}a=i}return e},e}function nf(e,t){var r,a=0,i=(e=e.slice()).length-1,n=e[a],o=e[i];return o-e(-t,r)}function df(e){const t=e(of,cf),r=t.domain;let a,i,n=10;function o(){return a=function(e){return e===Math.E?Math.log:10===e&&Math.log10||2===e&&Math.log2||(e=Math.log(e),t=>Math.log(t)/e)}(n),i=function(e){return 10===e?uf:e===Math.E?Math.exp:t=>Math.pow(e,t)}(n),r()[0]<0?(a=hf(a),i=hf(i),e(lf,sf)):e(of,cf),t}return t.base=function(e){return arguments.length?(n=+e,o()):n},t.domain=function(e){return arguments.length?(r(e),o()):r()},t.ticks=e=>{const t=r();let o=t[0],c=t[t.length-1];const l=c0){for(;h<=d;++h)for(s=1;sc)break;y.push(u)}}else for(;h<=d;++h)for(s=n-1;s>=1;--s)if(u=h>0?s/i(-h):s*i(h),!(uc)break;y.push(u)}2*y.length{if(null==e&&(e=10),null==r&&(r=10===n?"s":","),"function"!=typeof r&&(n%1||null!=(r=Rl(r)).precision||(r.trim=!0),r=Il(r)),e===1/0)return r;const o=Math.max(1,n*e/t.ticks().length);return e=>{let t=e/i(Math.round(a(e)));return t*nr(nf(r(),{floor:e=>i(Math.floor(a(e))),ceil:e=>i(Math.ceil(a(e)))})),t}function pf(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function yf(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function ff(e){var t=1,r=e(pf(t),yf(t));return r.constant=function(r){return arguments.length?e(pf(t=+r),yf(t)):t},af(r)}function mf(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}}function gf(e){return e<0?-Math.sqrt(-e):Math.sqrt(e)}function bf(e){return e<0?-e*e:e*e}function vf(e){var t=e(Uy,Uy),r=1;return t.exponent=function(t){return arguments.length?1===(r=+t)?e(Uy,Uy):.5===r?e(gf,bf):e(mf(r),mf(1/r)):r},af(t)}function xf(){var e=vf(ef());return e.copy=function(){return Xy(e,xf()).exponent(e.exponent())},zy.apply(e,arguments),e}function kf(e){return Math.sign(e)*e*e}const wf=new Date,Cf=new Date;function _f(e,t,r,a){function i(t){return e(t=0===arguments.length?new Date:new Date(+t)),t}return i.floor=t=>(e(t=new Date(+t)),t),i.ceil=r=>(e(r=new Date(r-1)),t(r,1),e(r),r),i.round=e=>{const t=i(e),r=i.ceil(e);return e-t(t(e=new Date(+e),null==r?1:Math.floor(r)),e),i.range=(r,a,n)=>{const o=[];if(r=i.ceil(r),n=null==n?1:Math.floor(n),!(r0))return o;let c;do{o.push(c=new Date(+r)),t(r,n),e(r)}while(c_f((t=>{if(t>=t)for(;e(t),!r(t);)t.setTime(t-1)}),((e,a)=>{if(e>=e)if(a<0)for(;++a<=0;)for(;t(e,-1),!r(e););else for(;--a>=0;)for(;t(e,1),!r(e););})),r&&(i.count=(t,a)=>(wf.setTime(+t),Cf.setTime(+a),e(wf),e(Cf),Math.floor(r(wf,Cf))),i.every=e=>(e=Math.floor(e),isFinite(e)&&e>0?e>1?i.filter(a?t=>a(t)%e==0:t=>i.count(0,t)%e==0):i:null)),i}const Sf=_f((()=>{}),((e,t)=>{e.setTime(+e+t)}),((e,t)=>t-e));Sf.every=e=>(e=Math.floor(e),isFinite(e)&&e>0?e>1?_f((t=>{t.setTime(Math.floor(t/e)*e)}),((t,r)=>{t.setTime(+t+r*e)}),((t,r)=>(r-t)/e)):Sf:null);const Af=Sf.range,Mf=1e3,Tf=6e4,Bf=36e5,Lf=864e5,Ef=6048e5,Rf=2592e6,Hf=31536e6,Df=_f((e=>{e.setTime(e-e.getMilliseconds())}),((e,t)=>{e.setTime(+e+t*Mf)}),((e,t)=>(t-e)/Mf),(e=>e.getUTCSeconds())),Pf=Df.range,Nf=_f((e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*Mf)}),((e,t)=>{e.setTime(+e+t*Tf)}),((e,t)=>(t-e)/Tf),(e=>e.getMinutes())),Gf=Nf.range,If=_f((e=>{e.setUTCSeconds(0,0)}),((e,t)=>{e.setTime(+e+t*Tf)}),((e,t)=>(t-e)/Tf),(e=>e.getUTCMinutes())),Wf=If.range,Ff=_f((e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*Mf-e.getMinutes()*Tf)}),((e,t)=>{e.setTime(+e+t*Bf)}),((e,t)=>(t-e)/Bf),(e=>e.getHours())),zf=Ff.range,Of=_f((e=>{e.setUTCMinutes(0,0,0)}),((e,t)=>{e.setTime(+e+t*Bf)}),((e,t)=>(t-e)/Bf),(e=>e.getUTCHours())),Kf=Of.range,Jf=_f((e=>e.setHours(0,0,0,0)),((e,t)=>e.setDate(e.getDate()+t)),((e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*Tf)/Lf),(e=>e.getDate()-1)),Vf=Jf.range,jf=_f((e=>{e.setUTCHours(0,0,0,0)}),((e,t)=>{e.setUTCDate(e.getUTCDate()+t)}),((e,t)=>(t-e)/Lf),(e=>e.getUTCDate()-1)),Yf=jf.range,$f=_f((e=>{e.setUTCHours(0,0,0,0)}),((e,t)=>{e.setUTCDate(e.getUTCDate()+t)}),((e,t)=>(t-e)/Lf),(e=>Math.floor(e/Lf))),Uf=$f.range;function qf(e){return _f((t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)}),((e,t)=>{e.setDate(e.getDate()+7*t)}),((e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*Tf)/Ef))}const Zf=qf(0),Qf=qf(1),Xf=qf(2),em=qf(3),tm=qf(4),rm=qf(5),am=qf(6),im=Zf.range,nm=Qf.range,om=Xf.range,cm=em.range,lm=tm.range,sm=rm.range,um=am.range;function hm(e){return _f((t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)}),((e,t)=>{e.setUTCDate(e.getUTCDate()+7*t)}),((e,t)=>(t-e)/Ef))}const dm=hm(0),pm=hm(1),ym=hm(2),fm=hm(3),mm=hm(4),gm=hm(5),bm=hm(6),vm=dm.range,xm=pm.range,km=ym.range,wm=fm.range,Cm=mm.range,_m=gm.range,Sm=bm.range,Am=_f((e=>{e.setDate(1),e.setHours(0,0,0,0)}),((e,t)=>{e.setMonth(e.getMonth()+t)}),((e,t)=>t.getMonth()-e.getMonth()+12*(t.getFullYear()-e.getFullYear())),(e=>e.getMonth())),Mm=Am.range,Tm=_f((e=>{e.setUTCDate(1),e.setUTCHours(0,0,0,0)}),((e,t)=>{e.setUTCMonth(e.getUTCMonth()+t)}),((e,t)=>t.getUTCMonth()-e.getUTCMonth()+12*(t.getUTCFullYear()-e.getUTCFullYear())),(e=>e.getUTCMonth())),Bm=Tm.range,Lm=_f((e=>{e.setMonth(0,1),e.setHours(0,0,0,0)}),((e,t)=>{e.setFullYear(e.getFullYear()+t)}),((e,t)=>t.getFullYear()-e.getFullYear()),(e=>e.getFullYear()));Lm.every=e=>isFinite(e=Math.floor(e))&&e>0?_f((t=>{t.setFullYear(Math.floor(t.getFullYear()/e)*e),t.setMonth(0,1),t.setHours(0,0,0,0)}),((t,r)=>{t.setFullYear(t.getFullYear()+r*e)})):null;const Em=Lm.range,Rm=_f((e=>{e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)}),((e,t)=>{e.setUTCFullYear(e.getUTCFullYear()+t)}),((e,t)=>t.getUTCFullYear()-e.getUTCFullYear()),(e=>e.getUTCFullYear()));Rm.every=e=>isFinite(e=Math.floor(e))&&e>0?_f((t=>{t.setUTCFullYear(Math.floor(t.getUTCFullYear()/e)*e),t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)}),((t,r)=>{t.setUTCFullYear(t.getUTCFullYear()+r*e)})):null;const Hm=Rm.range;function Dm(e,t,r,i,n,o){const c=[[Df,1,Mf],[Df,5,5e3],[Df,15,15e3],[Df,30,3e4],[o,1,Tf],[o,5,3e5],[o,15,9e5],[o,30,18e5],[n,1,Bf],[n,3,108e5],[n,6,216e5],[n,12,432e5],[i,1,Lf],[i,2,1728e5],[r,1,Ef],[t,1,Rf],[t,3,7776e6],[e,1,Hf]];function l(t,r,i){const n=Math.abs(r-t)/i,o=a((([,,e])=>e)).right(c,n);if(o===c.length)return e.every(q(t/Hf,r/Hf,i));if(0===o)return Sf.every(Math.max(q(t,r,i),1));const[l,s]=c[n/c[o-1][2]=12)]},q:function(e){return 1+~~(e.getMonth()/3)},Q:sb,s:ub,S:Lg,u:Eg,U:Rg,V:Dg,w:Pg,W:Ng,x:null,X:null,y:Gg,Y:Wg,Z:zg,"%":lb},x={a:function(e){return o[e.getUTCDay()]},A:function(e){return n[e.getUTCDay()]},b:function(e){return l[e.getUTCMonth()]},B:function(e){return c[e.getUTCMonth()]},c:null,d:Og,e:Og,f:Yg,g:ib,G:ob,H:Kg,I:Jg,j:Vg,L:jg,m:$g,M:Ug,p:function(e){return i[+(e.getUTCHours()>=12)]},q:function(e){return 1+~~(e.getUTCMonth()/3)},Q:sb,s:ub,S:qg,u:Zg,U:Qg,V:eb,w:tb,W:rb,x:null,X:null,y:ab,Y:nb,Z:cb,"%":lb},k={a:function(e,t,r){var a=p.exec(t.slice(r));return a?(e.w=y.get(a[0].toLowerCase()),r+a[0].length):-1},A:function(e,t,r){var a=h.exec(t.slice(r));return a?(e.w=d.get(a[0].toLowerCase()),r+a[0].length):-1},b:function(e,t,r){var a=g.exec(t.slice(r));return a?(e.m=b.get(a[0].toLowerCase()),r+a[0].length):-1},B:function(e,t,r){var a=f.exec(t.slice(r));return a?(e.m=m.get(a[0].toLowerCase()),r+a[0].length):-1},c:function(e,r,a){return _(e,t,r,a)},d:dg,e:dg,f:bg,g:lg,G:cg,H:yg,I:yg,j:pg,L:gg,m:hg,M:fg,p:function(e,t,r){var a=s.exec(t.slice(r));return a?(e.p=u.get(a[0].toLowerCase()),r+a[0].length):-1},q:ug,Q:xg,s:kg,S:mg,u:ag,U:ig,V:ng,w:rg,W:og,x:function(e,t,a){return _(e,r,t,a)},X:function(e,t,r){return _(e,a,t,r)},y:lg,Y:cg,Z:sg,"%":vg};function w(e,t){return function(r){var a,i,n,o=[],c=-1,l=0,s=e.length;for(r instanceof Date||(r=new Date(+r));++c53)return null;"w"in n||(n.w=1),"Z"in n?(i=(a=Fm(zm(n.y,0,1))).getUTCDay(),a=i>4||0===i?pm.ceil(a):pm(a),a=jf.offset(a,7*(n.V-1)),n.y=a.getUTCFullYear(),n.m=a.getUTCMonth(),n.d=a.getUTCDate()+(n.w+6)%7):(i=(a=Wm(zm(n.y,0,1))).getDay(),a=i>4||0===i?Qf.ceil(a):Qf(a),a=Jf.offset(a,7*(n.V-1)),n.y=a.getFullYear(),n.m=a.getMonth(),n.d=a.getDate()+(n.w+6)%7)}else("W"in n||"U"in n)&&("w"in n||(n.w="u"in n?n.u%7:"W"in n?1:0),i="Z"in n?Fm(zm(n.y,0,1)).getUTCDay():Wm(zm(n.y,0,1)).getDay(),n.m=0,n.d="W"in n?(n.w+6)%7+7*n.W-(i+5)%7:n.w+7*n.U-(i+6)%7);return"Z"in n?(n.H+=n.Z/100|0,n.M+=n.Z%100,Fm(n)):Wm(n)}}function _(e,t,r,a){for(var i,n,o=0,c=t.length,l=r.length;o=l)return-1;if(37===(i=t.charCodeAt(o++))){if(i=t.charAt(o++),!(n=k[i in $m?t.charAt(o++):i])||(a=n(e,r,a))<0)return-1}else if(i!=r.charCodeAt(a++))return-1}return a}return v.x=w(r,v),v.X=w(a,v),v.c=w(t,v),x.x=w(r,x),x.X=w(a,x),x.c=w(t,x),{format:function(e){var t=w(e+="",v);return t.toString=function(){return e},t},parse:function(e){var t=C(e+="",!1);return t.toString=function(){return e},t},utcFormat:function(e){var t=w(e+="",x);return t.toString=function(){return e},t},utcParse:function(e){var t=C(e+="",!0);return t.toString=function(){return e},t}}}var Km,Jm,Vm,jm,Ym,$m={"-":"",_:" ",0:"0"},Um=/^\s*\d+/,qm=/^%/,Zm=/[\\^$*+?|[\]().{}]/g;function Qm(e,t,r){var a=e<0?"-":"",i=(a?-e:e)+"",n=i.length;return a+(n[e.toLowerCase(),t])))}function rg(e,t,r){var a=Um.exec(t.slice(r,r+1));return a?(e.w=+a[0],r+a[0].length):-1}function ag(e,t,r){var a=Um.exec(t.slice(r,r+1));return a?(e.u=+a[0],r+a[0].length):-1}function ig(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.U=+a[0],r+a[0].length):-1}function ng(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.V=+a[0],r+a[0].length):-1}function og(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.W=+a[0],r+a[0].length):-1}function cg(e,t,r){var a=Um.exec(t.slice(r,r+4));return a?(e.y=+a[0],r+a[0].length):-1}function lg(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.y=+a[0]+(+a[0]>68?1900:2e3),r+a[0].length):-1}function sg(e,t,r){var a=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(r,r+6));return a?(e.Z=a[1]?0:-(a[2]+(a[3]||"00")),r+a[0].length):-1}function ug(e,t,r){var a=Um.exec(t.slice(r,r+1));return a?(e.q=3*a[0]-3,r+a[0].length):-1}function hg(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.m=a[0]-1,r+a[0].length):-1}function dg(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.d=+a[0],r+a[0].length):-1}function pg(e,t,r){var a=Um.exec(t.slice(r,r+3));return a?(e.m=0,e.d=+a[0],r+a[0].length):-1}function yg(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.H=+a[0],r+a[0].length):-1}function fg(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.M=+a[0],r+a[0].length):-1}function mg(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.S=+a[0],r+a[0].length):-1}function gg(e,t,r){var a=Um.exec(t.slice(r,r+3));return a?(e.L=+a[0],r+a[0].length):-1}function bg(e,t,r){var a=Um.exec(t.slice(r,r+6));return a?(e.L=Math.floor(a[0]/1e3),r+a[0].length):-1}function vg(e,t,r){var a=qm.exec(t.slice(r,r+1));return a?r+a[0].length:-1}function xg(e,t,r){var a=Um.exec(t.slice(r));return a?(e.Q=+a[0],r+a[0].length):-1}function kg(e,t,r){var a=Um.exec(t.slice(r));return a?(e.s=+a[0],r+a[0].length):-1}function wg(e,t){return Qm(e.getDate(),t,2)}function Cg(e,t){return Qm(e.getHours(),t,2)}function _g(e,t){return Qm(e.getHours()%12||12,t,2)}function Sg(e,t){return Qm(1+Jf.count(Lm(e),e),t,3)}function Ag(e,t){return Qm(e.getMilliseconds(),t,3)}function Mg(e,t){return Ag(e,t)+"000"}function Tg(e,t){return Qm(e.getMonth()+1,t,2)}function Bg(e,t){return Qm(e.getMinutes(),t,2)}function Lg(e,t){return Qm(e.getSeconds(),t,2)}function Eg(e){var t=e.getDay();return 0===t?7:t}function Rg(e,t){return Qm(Zf.count(Lm(e)-1,e),t,2)}function Hg(e){var t=e.getDay();return t>=4||0===t?tm(e):tm.ceil(e)}function Dg(e,t){return e=Hg(e),Qm(tm.count(Lm(e),e)+(4===Lm(e).getDay()),t,2)}function Pg(e){return e.getDay()}function Ng(e,t){return Qm(Qf.count(Lm(e)-1,e),t,2)}function Gg(e,t){return Qm(e.getFullYear()%100,t,2)}function Ig(e,t){return Qm((e=Hg(e)).getFullYear()%100,t,2)}function Wg(e,t){return Qm(e.getFullYear()%1e4,t,4)}function Fg(e,t){var r=e.getDay();return Qm((e=r>=4||0===r?tm(e):tm.ceil(e)).getFullYear()%1e4,t,4)}function zg(e){var t=e.getTimezoneOffset();return(t>0?"-":(t*=-1,"+"))+Qm(t/60|0,"0",2)+Qm(t%60,"0",2)}function Og(e,t){return Qm(e.getUTCDate(),t,2)}function Kg(e,t){return Qm(e.getUTCHours(),t,2)}function Jg(e,t){return Qm(e.getUTCHours()%12||12,t,2)}function Vg(e,t){return Qm(1+jf.count(Rm(e),e),t,3)}function jg(e,t){return Qm(e.getUTCMilliseconds(),t,3)}function Yg(e,t){return jg(e,t)+"000"}function $g(e,t){return Qm(e.getUTCMonth()+1,t,2)}function Ug(e,t){return Qm(e.getUTCMinutes(),t,2)}function qg(e,t){return Qm(e.getUTCSeconds(),t,2)}function Zg(e){var t=e.getUTCDay();return 0===t?7:t}function Qg(e,t){return Qm(dm.count(Rm(e)-1,e),t,2)}function Xg(e){var t=e.getUTCDay();return t>=4||0===t?mm(e):mm.ceil(e)}function eb(e,t){return e=Xg(e),Qm(mm.count(Rm(e),e)+(4===Rm(e).getUTCDay()),t,2)}function tb(e){return e.getUTCDay()}function rb(e,t){return Qm(pm.count(Rm(e)-1,e),t,2)}function ab(e,t){return Qm(e.getUTCFullYear()%100,t,2)}function ib(e,t){return Qm((e=Xg(e)).getUTCFullYear()%100,t,2)}function nb(e,t){return Qm(e.getUTCFullYear()%1e4,t,4)}function ob(e,t){var r=e.getUTCDay();return Qm((e=r>=4||0===r?mm(e):mm.ceil(e)).getUTCFullYear()%1e4,t,4)}function cb(){return"+0000"}function lb(){return"%"}function sb(e){return+e}function ub(e){return Math.floor(+e/1e3)}function hb(e){return Km=Om(e),Jm=Km.format,Vm=Km.parse,jm=Km.utcFormat,Ym=Km.utcParse,Km}hb({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});var db="%Y-%m-%dT%H:%M:%S.%LZ";var pb=Date.prototype.toISOString?function(e){return e.toISOString()}:jm(db);var yb=+new Date("2000-01-01T00:00:00.000Z")?function(e){var t=new Date(e);return isNaN(t)?null:t}:Ym(db);function fb(e){return new Date(e)}function mb(e){return e instanceof Date?+e:+new Date(+e)}function gb(e,t,r,a,i,n,o,c,l,s){var u=tf(),h=u.invert,d=u.domain,p=s(".%L"),y=s(":%S"),f=s("%I:%M"),m=s("%I %p"),g=s("%a %d"),b=s("%b %d"),v=s("%B"),x=s("%Y");function k(e){return(l(e)Ha(e[e.length-1]),Nb=new Array(3).concat("d8b365f5f5f55ab4ac","a6611adfc27d80cdc1018571","a6611adfc27df5f5f580cdc1018571","8c510ad8b365f6e8c3c7eae55ab4ac01665e","8c510ad8b365f6e8c3f5f5f5c7eae55ab4ac01665e","8c510abf812ddfc27df6e8c3c7eae580cdc135978f01665e","8c510abf812ddfc27df6e8c3f5f5f5c7eae580cdc135978f01665e","5430058c510abf812ddfc27df6e8c3c7eae580cdc135978f01665e003c30","5430058c510abf812ddfc27df6e8c3f5f5f5c7eae580cdc135978f01665e003c30").map(Cb),Gb=Pb(Nb),Ib=new Array(3).concat("af8dc3f7f7f77fbf7b","7b3294c2a5cfa6dba0008837","7b3294c2a5cff7f7f7a6dba0008837","762a83af8dc3e7d4e8d9f0d37fbf7b1b7837","762a83af8dc3e7d4e8f7f7f7d9f0d37fbf7b1b7837","762a839970abc2a5cfe7d4e8d9f0d3a6dba05aae611b7837","762a839970abc2a5cfe7d4e8f7f7f7d9f0d3a6dba05aae611b7837","40004b762a839970abc2a5cfe7d4e8d9f0d3a6dba05aae611b783700441b","40004b762a839970abc2a5cfe7d4e8f7f7f7d9f0d3a6dba05aae611b783700441b").map(Cb),Wb=Pb(Ib),Fb=new Array(3).concat("e9a3c9f7f7f7a1d76a","d01c8bf1b6dab8e1864dac26","d01c8bf1b6daf7f7f7b8e1864dac26","c51b7de9a3c9fde0efe6f5d0a1d76a4d9221","c51b7de9a3c9fde0eff7f7f7e6f5d0a1d76a4d9221","c51b7dde77aef1b6dafde0efe6f5d0b8e1867fbc414d9221","c51b7dde77aef1b6dafde0eff7f7f7e6f5d0b8e1867fbc414d9221","8e0152c51b7dde77aef1b6dafde0efe6f5d0b8e1867fbc414d9221276419","8e0152c51b7dde77aef1b6dafde0eff7f7f7e6f5d0b8e1867fbc414d9221276419").map(Cb),zb=Pb(Fb),Ob=new Array(3).concat("998ec3f7f7f7f1a340","5e3c99b2abd2fdb863e66101","5e3c99b2abd2f7f7f7fdb863e66101","542788998ec3d8daebfee0b6f1a340b35806","542788998ec3d8daebf7f7f7fee0b6f1a340b35806","5427888073acb2abd2d8daebfee0b6fdb863e08214b35806","5427888073acb2abd2d8daebf7f7f7fee0b6fdb863e08214b35806","2d004b5427888073acb2abd2d8daebfee0b6fdb863e08214b358067f3b08","2d004b5427888073acb2abd2d8daebf7f7f7fee0b6fdb863e08214b358067f3b08").map(Cb),Kb=Pb(Ob),Jb=new Array(3).concat("ef8a62f7f7f767a9cf","ca0020f4a58292c5de0571b0","ca0020f4a582f7f7f792c5de0571b0","b2182bef8a62fddbc7d1e5f067a9cf2166ac","b2182bef8a62fddbc7f7f7f7d1e5f067a9cf2166ac","b2182bd6604df4a582fddbc7d1e5f092c5de4393c32166ac","b2182bd6604df4a582fddbc7f7f7f7d1e5f092c5de4393c32166ac","67001fb2182bd6604df4a582fddbc7d1e5f092c5de4393c32166ac053061","67001fb2182bd6604df4a582fddbc7f7f7f7d1e5f092c5de4393c32166ac053061").map(Cb),Vb=Pb(Jb),jb=new Array(3).concat("ef8a62ffffff999999","ca0020f4a582bababa404040","ca0020f4a582ffffffbababa404040","b2182bef8a62fddbc7e0e0e09999994d4d4d","b2182bef8a62fddbc7ffffffe0e0e09999994d4d4d","b2182bd6604df4a582fddbc7e0e0e0bababa8787874d4d4d","b2182bd6604df4a582fddbc7ffffffe0e0e0bababa8787874d4d4d","67001fb2182bd6604df4a582fddbc7e0e0e0bababa8787874d4d4d1a1a1a","67001fb2182bd6604df4a582fddbc7ffffffe0e0e0bababa8787874d4d4d1a1a1a").map(Cb),Yb=Pb(jb),$b=new Array(3).concat("fc8d59ffffbf91bfdb","d7191cfdae61abd9e92c7bb6","d7191cfdae61ffffbfabd9e92c7bb6","d73027fc8d59fee090e0f3f891bfdb4575b4","d73027fc8d59fee090ffffbfe0f3f891bfdb4575b4","d73027f46d43fdae61fee090e0f3f8abd9e974add14575b4","d73027f46d43fdae61fee090ffffbfe0f3f8abd9e974add14575b4","a50026d73027f46d43fdae61fee090e0f3f8abd9e974add14575b4313695","a50026d73027f46d43fdae61fee090ffffbfe0f3f8abd9e974add14575b4313695").map(Cb),Ub=Pb($b),qb=new Array(3).concat("fc8d59ffffbf91cf60","d7191cfdae61a6d96a1a9641","d7191cfdae61ffffbfa6d96a1a9641","d73027fc8d59fee08bd9ef8b91cf601a9850","d73027fc8d59fee08bffffbfd9ef8b91cf601a9850","d73027f46d43fdae61fee08bd9ef8ba6d96a66bd631a9850","d73027f46d43fdae61fee08bffffbfd9ef8ba6d96a66bd631a9850","a50026d73027f46d43fdae61fee08bd9ef8ba6d96a66bd631a9850006837","a50026d73027f46d43fdae61fee08bffffbfd9ef8ba6d96a66bd631a9850006837").map(Cb),Zb=Pb(qb),Qb=new Array(3).concat("fc8d59ffffbf99d594","d7191cfdae61abdda42b83ba","d7191cfdae61ffffbfabdda42b83ba","d53e4ffc8d59fee08be6f59899d5943288bd","d53e4ffc8d59fee08bffffbfe6f59899d5943288bd","d53e4ff46d43fdae61fee08be6f598abdda466c2a53288bd","d53e4ff46d43fdae61fee08bffffbfe6f598abdda466c2a53288bd","9e0142d53e4ff46d43fdae61fee08be6f598abdda466c2a53288bd5e4fa2","9e0142d53e4ff46d43fdae61fee08bffffbfe6f598abdda466c2a53288bd5e4fa2").map(Cb),Xb=Pb(Qb),ev=new Array(3).concat("e5f5f999d8c92ca25f","edf8fbb2e2e266c2a4238b45","edf8fbb2e2e266c2a42ca25f006d2c","edf8fbccece699d8c966c2a42ca25f006d2c","edf8fbccece699d8c966c2a441ae76238b45005824","f7fcfde5f5f9ccece699d8c966c2a441ae76238b45005824","f7fcfde5f5f9ccece699d8c966c2a441ae76238b45006d2c00441b").map(Cb),tv=Pb(ev),rv=new Array(3).concat("e0ecf49ebcda8856a7","edf8fbb3cde38c96c688419d","edf8fbb3cde38c96c68856a7810f7c","edf8fbbfd3e69ebcda8c96c68856a7810f7c","edf8fbbfd3e69ebcda8c96c68c6bb188419d6e016b","f7fcfde0ecf4bfd3e69ebcda8c96c68c6bb188419d6e016b","f7fcfde0ecf4bfd3e69ebcda8c96c68c6bb188419d810f7c4d004b").map(Cb),av=Pb(rv),iv=new Array(3).concat("e0f3dba8ddb543a2ca","f0f9e8bae4bc7bccc42b8cbe","f0f9e8bae4bc7bccc443a2ca0868ac","f0f9e8ccebc5a8ddb57bccc443a2ca0868ac","f0f9e8ccebc5a8ddb57bccc44eb3d32b8cbe08589e","f7fcf0e0f3dbccebc5a8ddb57bccc44eb3d32b8cbe08589e","f7fcf0e0f3dbccebc5a8ddb57bccc44eb3d32b8cbe0868ac084081").map(Cb),nv=Pb(iv),ov=new Array(3).concat("fee8c8fdbb84e34a33","fef0d9fdcc8afc8d59d7301f","fef0d9fdcc8afc8d59e34a33b30000","fef0d9fdd49efdbb84fc8d59e34a33b30000","fef0d9fdd49efdbb84fc8d59ef6548d7301f990000","fff7ecfee8c8fdd49efdbb84fc8d59ef6548d7301f990000","fff7ecfee8c8fdd49efdbb84fc8d59ef6548d7301fb300007f0000").map(Cb),cv=Pb(ov),lv=new Array(3).concat("ece2f0a6bddb1c9099","f6eff7bdc9e167a9cf02818a","f6eff7bdc9e167a9cf1c9099016c59","f6eff7d0d1e6a6bddb67a9cf1c9099016c59","f6eff7d0d1e6a6bddb67a9cf3690c002818a016450","fff7fbece2f0d0d1e6a6bddb67a9cf3690c002818a016450","fff7fbece2f0d0d1e6a6bddb67a9cf3690c002818a016c59014636").map(Cb),sv=Pb(lv),uv=new Array(3).concat("ece7f2a6bddb2b8cbe","f1eef6bdc9e174a9cf0570b0","f1eef6bdc9e174a9cf2b8cbe045a8d","f1eef6d0d1e6a6bddb74a9cf2b8cbe045a8d","f1eef6d0d1e6a6bddb74a9cf3690c00570b0034e7b","fff7fbece7f2d0d1e6a6bddb74a9cf3690c00570b0034e7b","fff7fbece7f2d0d1e6a6bddb74a9cf3690c00570b0045a8d023858").map(Cb),hv=Pb(uv),dv=new Array(3).concat("e7e1efc994c7dd1c77","f1eef6d7b5d8df65b0ce1256","f1eef6d7b5d8df65b0dd1c77980043","f1eef6d4b9dac994c7df65b0dd1c77980043","f1eef6d4b9dac994c7df65b0e7298ace125691003f","f7f4f9e7e1efd4b9dac994c7df65b0e7298ace125691003f","f7f4f9e7e1efd4b9dac994c7df65b0e7298ace125698004367001f").map(Cb),pv=Pb(dv),yv=new Array(3).concat("fde0ddfa9fb5c51b8a","feebe2fbb4b9f768a1ae017e","feebe2fbb4b9f768a1c51b8a7a0177","feebe2fcc5c0fa9fb5f768a1c51b8a7a0177","feebe2fcc5c0fa9fb5f768a1dd3497ae017e7a0177","fff7f3fde0ddfcc5c0fa9fb5f768a1dd3497ae017e7a0177","fff7f3fde0ddfcc5c0fa9fb5f768a1dd3497ae017e7a017749006a").map(Cb),fv=Pb(yv),mv=new Array(3).concat("edf8b17fcdbb2c7fb8","ffffcca1dab441b6c4225ea8","ffffcca1dab441b6c42c7fb8253494","ffffccc7e9b47fcdbb41b6c42c7fb8253494","ffffccc7e9b47fcdbb41b6c41d91c0225ea80c2c84","ffffd9edf8b1c7e9b47fcdbb41b6c41d91c0225ea80c2c84","ffffd9edf8b1c7e9b47fcdbb41b6c41d91c0225ea8253494081d58").map(Cb),gv=Pb(mv),bv=new Array(3).concat("f7fcb9addd8e31a354","ffffccc2e69978c679238443","ffffccc2e69978c67931a354006837","ffffccd9f0a3addd8e78c67931a354006837","ffffccd9f0a3addd8e78c67941ab5d238443005a32","ffffe5f7fcb9d9f0a3addd8e78c67941ab5d238443005a32","ffffe5f7fcb9d9f0a3addd8e78c67941ab5d238443006837004529").map(Cb),vv=Pb(bv),xv=new Array(3).concat("fff7bcfec44fd95f0e","ffffd4fed98efe9929cc4c02","ffffd4fed98efe9929d95f0e993404","ffffd4fee391fec44ffe9929d95f0e993404","ffffd4fee391fec44ffe9929ec7014cc4c028c2d04","ffffe5fff7bcfee391fec44ffe9929ec7014cc4c028c2d04","ffffe5fff7bcfee391fec44ffe9929ec7014cc4c02993404662506").map(Cb),kv=Pb(xv),wv=new Array(3).concat("ffeda0feb24cf03b20","ffffb2fecc5cfd8d3ce31a1c","ffffb2fecc5cfd8d3cf03b20bd0026","ffffb2fed976feb24cfd8d3cf03b20bd0026","ffffb2fed976feb24cfd8d3cfc4e2ae31a1cb10026","ffffccffeda0fed976feb24cfd8d3cfc4e2ae31a1cb10026","ffffccffeda0fed976feb24cfd8d3cfc4e2ae31a1cbd0026800026").map(Cb),Cv=Pb(wv),_v=new Array(3).concat("deebf79ecae13182bd","eff3ffbdd7e76baed62171b5","eff3ffbdd7e76baed63182bd08519c","eff3ffc6dbef9ecae16baed63182bd08519c","eff3ffc6dbef9ecae16baed64292c62171b5084594","f7fbffdeebf7c6dbef9ecae16baed64292c62171b5084594","f7fbffdeebf7c6dbef9ecae16baed64292c62171b508519c08306b").map(Cb),Sv=Pb(_v),Av=new Array(3).concat("e5f5e0a1d99b31a354","edf8e9bae4b374c476238b45","edf8e9bae4b374c47631a354006d2c","edf8e9c7e9c0a1d99b74c47631a354006d2c","edf8e9c7e9c0a1d99b74c47641ab5d238b45005a32","f7fcf5e5f5e0c7e9c0a1d99b74c47641ab5d238b45005a32","f7fcf5e5f5e0c7e9c0a1d99b74c47641ab5d238b45006d2c00441b").map(Cb),Mv=Pb(Av),Tv=new Array(3).concat("f0f0f0bdbdbd636363","f7f7f7cccccc969696525252","f7f7f7cccccc969696636363252525","f7f7f7d9d9d9bdbdbd969696636363252525","f7f7f7d9d9d9bdbdbd969696737373525252252525","fffffff0f0f0d9d9d9bdbdbd969696737373525252252525","fffffff0f0f0d9d9d9bdbdbd969696737373525252252525000000").map(Cb),Bv=Pb(Tv),Lv=new Array(3).concat("efedf5bcbddc756bb1","f2f0f7cbc9e29e9ac86a51a3","f2f0f7cbc9e29e9ac8756bb154278f","f2f0f7dadaebbcbddc9e9ac8756bb154278f","f2f0f7dadaebbcbddc9e9ac8807dba6a51a34a1486","fcfbfdefedf5dadaebbcbddc9e9ac8807dba6a51a34a1486","fcfbfdefedf5dadaebbcbddc9e9ac8807dba6a51a354278f3f007d").map(Cb),Ev=Pb(Lv),Rv=new Array(3).concat("fee0d2fc9272de2d26","fee5d9fcae91fb6a4acb181d","fee5d9fcae91fb6a4ade2d26a50f15","fee5d9fcbba1fc9272fb6a4ade2d26a50f15","fee5d9fcbba1fc9272fb6a4aef3b2ccb181d99000d","fff5f0fee0d2fcbba1fc9272fb6a4aef3b2ccb181d99000d","fff5f0fee0d2fcbba1fc9272fb6a4aef3b2ccb181da50f1567000d").map(Cb),Hv=Pb(Rv),Dv=new Array(3).concat("fee6cefdae6be6550d","feeddefdbe85fd8d3cd94701","feeddefdbe85fd8d3ce6550da63603","feeddefdd0a2fdae6bfd8d3ce6550da63603","feeddefdd0a2fdae6bfd8d3cf16913d948018c2d04","fff5ebfee6cefdd0a2fdae6bfd8d3cf16913d948018c2d04","fff5ebfee6cefdd0a2fdae6bfd8d3cf16913d94801a636037f2704").map(Cb),Pv=Pb(Dv);var Nv=si(ka(300,.5,0),ka(-240,.5,1)),Gv=si(ka(-100,.75,.35),ka(80,1.5,.8)),Iv=si(ka(260,.75,.35),ka(80,1.5,.8)),Wv=ka();var Fv=Hr(),zv=Math.PI/3,Ov=2*Math.PI/3;function Kv(e){var t=e.length;return function(r){return e[Math.max(0,Math.min(t-1,Math.floor(r*t)))]}}var Jv=Kv(Cb("44015444025645045745055946075a46085c460a5d460b5e470d60470e6147106347116447136548146748166848176948186a481a6c481b6d481c6e481d6f481f70482071482173482374482475482576482677482878482979472a7a472c7a472d7b472e7c472f7d46307e46327e46337f463480453581453781453882443983443a83443b84433d84433e85423f854240864241864142874144874045884046883f47883f48893e49893e4a893e4c8a3d4d8a3d4e8a3c4f8a3c508b3b518b3b528b3a538b3a548c39558c39568c38588c38598c375a8c375b8d365c8d365d8d355e8d355f8d34608d34618d33628d33638d32648e32658e31668e31678e31688e30698e306a8e2f6b8e2f6c8e2e6d8e2e6e8e2e6f8e2d708e2d718e2c718e2c728e2c738e2b748e2b758e2a768e2a778e2a788e29798e297a8e297b8e287c8e287d8e277e8e277f8e27808e26818e26828e26828e25838e25848e25858e24868e24878e23888e23898e238a8d228b8d228c8d228d8d218e8d218f8d21908d21918c20928c20928c20938c1f948c1f958b1f968b1f978b1f988b1f998a1f9a8a1e9b8a1e9c891e9d891f9e891f9f881fa0881fa1881fa1871fa28720a38620a48621a58521a68522a78522a88423a98324aa8325ab8225ac8226ad8127ad8128ae8029af7f2ab07f2cb17e2db27d2eb37c2fb47c31b57b32b67a34b67935b77937b87838b9773aba763bbb753dbc743fbc7340bd7242be7144bf7046c06f48c16e4ac16d4cc26c4ec36b50c46a52c56954c56856c66758c7655ac8645cc8635ec96260ca6063cb5f65cb5e67cc5c69cd5b6ccd5a6ece5870cf5773d05675d05477d1537ad1517cd2507fd34e81d34d84d44b86d54989d5488bd6468ed64590d74393d74195d84098d83e9bd93c9dd93ba0da39a2da37a5db36a8db34aadc32addc30b0dd2fb2dd2db5de2bb8de29bade28bddf26c0df25c2df23c5e021c8e020cae11fcde11dd0e11cd2e21bd5e21ad8e219dae319dde318dfe318e2e418e5e419e7e419eae51aece51befe51cf1e51df4e61ef6e620f8e621fbe723fde725")),Vv=Kv(Cb("00000401000501010601010802010902020b02020d03030f03031204041405041606051806051a07061c08071e0907200a08220b09240c09260d0a290e0b2b100b2d110c2f120d31130d34140e36150e38160f3b180f3d19103f1a10421c10441d11471e114920114b21114e22115024125325125527125829115a2a115c2c115f2d11612f116331116533106734106936106b38106c390f6e3b0f703d0f713f0f72400f74420f75440f764510774710784910784a10794c117a4e117b4f127b51127c52137c54137d56147d57157e59157e5a167e5c167f5d177f5f187f601880621980641a80651a80671b80681c816a1c816b1d816d1d816e1e81701f81721f817320817521817621817822817922827b23827c23827e24828025828125818326818426818627818827818928818b29818c29818e2a81902a81912b81932b80942c80962c80982d80992d809b2e7f9c2e7f9e2f7fa02f7fa1307ea3307ea5317ea6317da8327daa337dab337cad347cae347bb0357bb2357bb3367ab5367ab73779b83779ba3878bc3978bd3977bf3a77c03a76c23b75c43c75c53c74c73d73c83e73ca3e72cc3f71cd4071cf4070d0416fd2426fd3436ed5446dd6456cd8456cd9466bdb476adc4869de4968df4a68e04c67e24d66e34e65e44f64e55064e75263e85362e95462ea5661eb5760ec5860ed5a5fee5b5eef5d5ef05f5ef1605df2625df2645cf3655cf4675cf4695cf56b5cf66c5cf66e5cf7705cf7725cf8745cf8765cf9785df9795df97b5dfa7d5efa7f5efa815ffb835ffb8560fb8761fc8961fc8a62fc8c63fc8e64fc9065fd9266fd9467fd9668fd9869fd9a6afd9b6bfe9d6cfe9f6dfea16efea36ffea571fea772fea973feaa74feac76feae77feb078feb27afeb47bfeb67cfeb77efeb97ffebb81febd82febf84fec185fec287fec488fec68afec88cfeca8dfecc8ffecd90fecf92fed194fed395fed597fed799fed89afdda9cfddc9efddea0fde0a1fde2a3fde3a5fde5a7fde7a9fde9aafdebacfcecaefceeb0fcf0b2fcf2b4fcf4b6fcf6b8fcf7b9fcf9bbfcfbbdfcfdbf")),jv=Kv(Cb("00000401000501010601010802010a02020c02020e03021004031204031405041706041907051b08051d09061f0a07220b07240c08260d08290e092b10092d110a30120a32140b34150b37160b39180c3c190c3e1b0c411c0c431e0c451f0c48210c4a230c4c240c4f260c51280b53290b552b0b572d0b592f0a5b310a5c320a5e340a5f3609613809623909633b09643d09653e0966400a67420a68440a68450a69470b6a490b6a4a0c6b4c0c6b4d0d6c4f0d6c510e6c520e6d540f6d550f6d57106e59106e5a116e5c126e5d126e5f136e61136e62146e64156e65156e67166e69166e6a176e6c186e6d186e6f196e71196e721a6e741a6e751b6e771c6d781c6d7a1d6d7c1d6d7d1e6d7f1e6c801f6c82206c84206b85216b87216b88226a8a226a8c23698d23698f24699025689225689326679526679727669827669a28659b29649d29649f2a63a02a63a22b62a32c61a52c60a62d60a82e5fa92e5eab2f5ead305dae305cb0315bb1325ab3325ab43359b63458b73557b93556ba3655bc3754bd3853bf3952c03a51c13a50c33b4fc43c4ec63d4dc73e4cc83f4bca404acb4149cc4248ce4347cf4446d04545d24644d34743d44842d54a41d74b3fd84c3ed94d3dda4e3cdb503bdd513ade5238df5337e05536e15635e25734e35933e45a31e55c30e65d2fe75e2ee8602de9612bea632aeb6429eb6628ec6726ed6925ee6a24ef6c23ef6e21f06f20f1711ff1731df2741cf3761bf37819f47918f57b17f57d15f67e14f68013f78212f78410f8850ff8870ef8890cf98b0bf98c0af98e09fa9008fa9207fa9407fb9606fb9706fb9906fb9b06fb9d07fc9f07fca108fca309fca50afca60cfca80dfcaa0ffcac11fcae12fcb014fcb216fcb418fbb61afbb81dfbba1ffbbc21fbbe23fac026fac228fac42afac62df9c72ff9c932f9cb35f8cd37f8cf3af7d13df7d340f6d543f6d746f5d949f5db4cf4dd4ff4df53f4e156f3e35af3e55df2e661f2e865f2ea69f1ec6df1ed71f1ef75f1f179f2f27df2f482f3f586f3f68af4f88ef5f992f6fa96f8fb9af9fc9dfafda1fcffa4")),Yv=Kv(Cb("0d088710078813078916078a19068c1b068d1d068e20068f2206902406912605912805922a05932c05942e05952f059631059733059735049837049938049a3a049a3c049b3e049c3f049c41049d43039e44039e46039f48039f4903a04b03a14c02a14e02a25002a25102a35302a35502a45601a45801a45901a55b01a55c01a65e01a66001a66100a76300a76400a76600a76700a86900a86a00a86c00a86e00a86f00a87100a87201a87401a87501a87701a87801a87a02a87b02a87d03a87e03a88004a88104a78305a78405a78606a68707a68808a68a09a58b0aa58d0ba58e0ca48f0da4910ea3920fa39410a29511a19613a19814a099159f9a169f9c179e9d189d9e199da01a9ca11b9ba21d9aa31e9aa51f99a62098a72197a82296aa2395ab2494ac2694ad2793ae2892b02991b12a90b22b8fb32c8eb42e8db52f8cb6308bb7318ab83289ba3388bb3488bc3587bd3786be3885bf3984c03a83c13b82c23c81c33d80c43e7fc5407ec6417dc7427cc8437bc9447aca457acb4679cc4778cc4977cd4a76ce4b75cf4c74d04d73d14e72d24f71d35171d45270d5536fd5546ed6556dd7566cd8576bd9586ada5a6ada5b69db5c68dc5d67dd5e66de5f65de6164df6263e06363e16462e26561e26660e3685fe4695ee56a5de56b5de66c5ce76e5be76f5ae87059e97158e97257ea7457eb7556eb7655ec7754ed7953ed7a52ee7b51ef7c51ef7e50f07f4ff0804ef1814df1834cf2844bf3854bf3874af48849f48948f58b47f58c46f68d45f68f44f79044f79143f79342f89441f89540f9973ff9983ef99a3efa9b3dfa9c3cfa9e3bfb9f3afba139fba238fca338fca537fca636fca835fca934fdab33fdac33fdae32fdaf31fdb130fdb22ffdb42ffdb52efeb72dfeb82cfeba2cfebb2bfebd2afebe2afec029fdc229fdc328fdc527fdc627fdc827fdca26fdcb26fccd25fcce25fcd025fcd225fbd324fbd524fbd724fad824fada24f9dc24f9dd25f8df25f8e125f7e225f7e425f6e626f6e826f5e926f5eb27f4ed27f3ee27f3f027f2f227f1f426f1f525f0f724f0f921"));function $v(e){return function(){return e}}const Uv=Math.abs,qv=Math.atan2,Zv=Math.cos,Qv=Math.max,Xv=Math.min,ex=Math.sin,tx=Math.sqrt,rx=1e-12,ax=Math.PI,ix=ax/2,nx=2*ax;function ox(e){return e>=1?ix:e<=-1?-ix:Math.asin(e)}function cx(e){let t=3;return e.digits=function(r){if(!arguments.length)return t;if(null==r)t=null;else{const e=Math.floor(r);if(!(e>=0))throw new RangeError(`invalid digits: ${r}`);t=e}return e},()=>new So(t)}function lx(e){return e.innerRadius}function sx(e){return e.outerRadius}function ux(e){return e.startAngle}function hx(e){return e.endAngle}function dx(e){return e&&e.padAngle}function px(e,t,r,a,i,n,o){var c=e-r,l=t-a,s=(o?n:-n)/tx(c*c+l*l),u=s*l,h=-s*c,d=e+u,p=t+h,y=r+u,f=a+h,m=(d+y)/2,g=(p+f)/2,b=y-d,v=f-p,x=b*b+v*v,k=i-n,w=d*f-y*p,C=(v<0?-1:1)*tx(Qv(0,k*k*x-w*w)),_=(w*v-b*C)/x,S=(-w*b-v*C)/x,A=(w*v+b*C)/x,M=(-w*b+v*C)/x,T=_-m,B=S-g,L=A-m,E=M-g;return T*T+B*B>L*L+E*E&&(_=A,S=M),{cx:_,cy:S,x01:-u,y01:-h,x11:_*(i/k-1),y11:S*(i/k-1)}}var yx=Array.prototype.slice;function fx(e){return"object"==typeof e&&"length"in e?e:Array.from(e)}function mx(e){this._context=e}function gx(e){return new mx(e)}function bx(e){return e[0]}function vx(e){return e[1]}function xx(e,t){var r=$v(!0),a=null,i=gx,n=null,o=cx(c);function c(c){var l,s,u,h=(c=fx(c)).length,d=!1;for(null==a&&(n=i(u=o())),l=0;l<=h;++l)!(l=h;--d)c.point(g[d],b[d]);c.lineEnd(),c.areaEnd()}m&&(g[u]=+e(p,u,s),b[u]=+t(p,u,s),c.point(a?+a(p,u,s):g[u],r?+r(p,u,s):b[u]))}if(y)return c=null,y+""||null}function u(){return xx().defined(i).curve(o).context(n)}return e="function"==typeof e?e:void 0===e?bx:$v(+e),t="function"==typeof t?t:$v(void 0===t?0:+t),r="function"==typeof r?r:void 0===r?vx:$v(+r),s.x=function(t){return arguments.length?(e="function"==typeof t?t:$v(+t),a=null,s):e},s.x0=function(t){return arguments.length?(e="function"==typeof t?t:$v(+t),s):e},s.x1=function(e){return arguments.length?(a=null==e?null:"function"==typeof e?e:$v(+e),s):a},s.y=function(e){return arguments.length?(t="function"==typeof e?e:$v(+e),r=null,s):t},s.y0=function(e){return arguments.length?(t="function"==typeof e?e:$v(+e),s):t},s.y1=function(e){return arguments.length?(r=null==e?null:"function"==typeof e?e:$v(+e),s):r},s.lineX0=s.lineY0=function(){return u().x(e).y(t)},s.lineY1=function(){return u().x(e).y(r)},s.lineX1=function(){return u().x(a).y(t)},s.defined=function(e){return arguments.length?(i="function"==typeof e?e:$v(!!e),s):i},s.curve=function(e){return arguments.length?(o=e,null!=n&&(c=o(n)),s):o},s.context=function(e){return arguments.length?(null==e?n=c=null:c=o(n=e),s):n},s}function wx(e,t){return te?1:t>=e?0:NaN}function Cx(e){return e}mx.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._context.lineTo(e,t)}}};var _x=Ax(gx);function Sx(e){this._curve=e}function Ax(e){function t(t){return new Sx(e(t))}return t._curve=e,t}function Mx(e){var t=e.curve;return e.angle=e.x,delete e.x,e.radius=e.y,delete e.y,e.curve=function(e){return arguments.length?t(Ax(e)):t()._curve},e}function Tx(){return Mx(xx().curve(_x))}function Bx(){var e=kx().curve(_x),t=e.curve,r=e.lineX0,a=e.lineX1,i=e.lineY0,n=e.lineY1;return e.angle=e.x,delete e.x,e.startAngle=e.x0,delete e.x0,e.endAngle=e.x1,delete e.x1,e.radius=e.y,delete e.y,e.innerRadius=e.y0,delete e.y0,e.outerRadius=e.y1,delete e.y1,e.lineStartAngle=function(){return Mx(r())},delete e.lineX0,e.lineEndAngle=function(){return Mx(a())},delete e.lineX1,e.lineInnerRadius=function(){return Mx(i())},delete e.lineY0,e.lineOuterRadius=function(){return Mx(n())},delete e.lineY1,e.curve=function(e){return arguments.length?t(Ax(e)):t()._curve},e}function Lx(e,t){return[(t=+t)*Math.cos(e-=Math.PI/2),t*Math.sin(e)]}Sx.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(e,t){this._curve.point(t*Math.sin(e),t*-Math.cos(e))}};class Ex{constructor(e,t){this._context=e,this._x=t}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line}point(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._x?this._context.bezierCurveTo(this._x0=(this._x0+e)/2,this._y0,this._x0,t,e,t):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+t)/2,e,this._y0,e,t)}this._x0=e,this._y0=t}}class Rx{constructor(e){this._context=e}lineStart(){this._point=0}lineEnd(){}point(e,t){if(e=+e,t=+t,0===this._point)this._point=1;else{const r=Lx(this._x0,this._y0),a=Lx(this._x0,this._y0=(this._y0+t)/2),i=Lx(e,this._y0),n=Lx(e,t);this._context.moveTo(...r),this._context.bezierCurveTo(...a,...i,...n)}this._x0=e,this._y0=t}}function Hx(e){return new Ex(e,!0)}function Dx(e){return new Ex(e,!1)}function Px(e){return new Rx(e)}function Nx(e){return e.source}function Gx(e){return e.target}function Ix(e){let t=Nx,r=Gx,a=bx,i=vx,n=null,o=null,c=cx(l);function l(){let l;const s=yx.call(arguments),u=t.apply(this,s),h=r.apply(this,s);if(null==n&&(o=e(l=c())),o.lineStart(),s[0]=u,o.point(+a.apply(this,s),+i.apply(this,s)),s[0]=h,o.point(+a.apply(this,s),+i.apply(this,s)),o.lineEnd(),l)return o=null,l+""||null}return l.source=function(e){return arguments.length?(t=e,l):t},l.target=function(e){return arguments.length?(r=e,l):r},l.x=function(e){return arguments.length?(a="function"==typeof e?e:$v(+e),l):a},l.y=function(e){return arguments.length?(i="function"==typeof e?e:$v(+e),l):i},l.context=function(t){return arguments.length?(null==t?n=o=null:o=e(n=t),l):n},l}function Wx(){const e=Ix(Px);return e.angle=e.x,delete e.x,e.radius=e.y,delete e.y,e}const Fx=tx(3);var zx={draw(e,t){const r=.59436*tx(t+Xv(t/28,.75)),a=r/2,i=a*Fx;e.moveTo(0,r),e.lineTo(0,-r),e.moveTo(-i,-a),e.lineTo(i,a),e.moveTo(-i,a),e.lineTo(i,-a)}},Ox={draw(e,t){const r=tx(t/ax);e.moveTo(r,0),e.arc(0,0,r,0,nx)}},Kx={draw(e,t){const r=tx(t/5)/2;e.moveTo(-3*r,-r),e.lineTo(-r,-r),e.lineTo(-r,-3*r),e.lineTo(r,-3*r),e.lineTo(r,-r),e.lineTo(3*r,-r),e.lineTo(3*r,r),e.lineTo(r,r),e.lineTo(r,3*r),e.lineTo(-r,3*r),e.lineTo(-r,r),e.lineTo(-3*r,r),e.closePath()}};const Jx=tx(1/3),Vx=2*Jx;var jx={draw(e,t){const r=tx(t/Vx),a=r*Jx;e.moveTo(0,-r),e.lineTo(a,0),e.lineTo(0,r),e.lineTo(-a,0),e.closePath()}},Yx={draw(e,t){const r=.62625*tx(t);e.moveTo(0,-r),e.lineTo(r,0),e.lineTo(0,r),e.lineTo(-r,0),e.closePath()}},$x={draw(e,t){const r=.87559*tx(t-Xv(t/7,2));e.moveTo(-r,0),e.lineTo(r,0),e.moveTo(0,r),e.lineTo(0,-r)}},Ux={draw(e,t){const r=tx(t),a=-r/2;e.rect(a,a,r,r)}},qx={draw(e,t){const r=.4431*tx(t);e.moveTo(r,r),e.lineTo(r,-r),e.lineTo(-r,-r),e.lineTo(-r,r),e.closePath()}};const Zx=ex(ax/10)/ex(7*ax/10),Qx=ex(nx/10)*Zx,Xx=-Zv(nx/10)*Zx;var ek={draw(e,t){const r=tx(.8908130915292852*t),a=Qx*r,i=Xx*r;e.moveTo(0,-r),e.lineTo(a,i);for(let t=1;t<5;++t){const n=nx*t/5,o=Zv(n),c=ex(n);e.lineTo(c*r,-o*r),e.lineTo(o*a-c*i,c*a+o*i)}e.closePath()}};const tk=tx(3);var rk={draw(e,t){const r=-tx(t/(3*tk));e.moveTo(0,2*r),e.lineTo(-tk*r,-r),e.lineTo(tk*r,-r),e.closePath()}};const ak=tx(3);var ik={draw(e,t){const r=.6824*tx(t),a=r/2,i=r*ak/2;e.moveTo(0,-r),e.lineTo(i,a),e.lineTo(-i,a),e.closePath()}};const nk=-.5,ok=tx(3)/2,ck=1/tx(12),lk=3*(ck/2+1);var sk={draw(e,t){const r=tx(t/lk),a=r/2,i=r*ck,n=a,o=r*ck+r,c=-n,l=o;e.moveTo(a,i),e.lineTo(n,o),e.lineTo(c,l),e.lineTo(nk*a-ok*i,ok*a+nk*i),e.lineTo(nk*n-ok*o,ok*n+nk*o),e.lineTo(nk*c-ok*l,ok*c+nk*l),e.lineTo(nk*a+ok*i,nk*i-ok*a),e.lineTo(nk*n+ok*o,nk*o-ok*n),e.lineTo(nk*c+ok*l,nk*l-ok*c),e.closePath()}},uk={draw(e,t){const r=.6189*tx(t-Xv(t/6,1.7));e.moveTo(-r,-r),e.lineTo(r,r),e.moveTo(-r,r),e.lineTo(r,-r)}};const hk=[Ox,Kx,jx,Ux,ek,rk,sk],dk=[Ox,$x,uk,ik,zx,qx,Yx];function pk(e,t){let r=null,a=cx(i);function i(){let i;if(r||(r=i=a()),e.apply(this,arguments).draw(r,+t.apply(this,arguments)),i)return r=null,i+""||null}return e="function"==typeof e?e:$v(e||Ox),t="function"==typeof t?t:$v(void 0===t?64:+t),i.type=function(t){return arguments.length?(e="function"==typeof t?t:$v(t),i):e},i.size=function(e){return arguments.length?(t="function"==typeof e?e:$v(+e),i):t},i.context=function(e){return arguments.length?(r=null==e?null:e,i):r},i}function yk(){}function fk(e,t,r){e._context.bezierCurveTo((2*e._x0+e._x1)/3,(2*e._y0+e._y1)/3,(e._x0+2*e._x1)/3,(e._y0+2*e._y1)/3,(e._x0+4*e._x1+t)/6,(e._y0+4*e._y1+r)/6)}function mk(e){this._context=e}function gk(e){this._context=e}function bk(e){return new gk(e)}function vk(e){this._context=e}function xk(e,t){this._basis=new mk(e),this._beta=t}mk.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:fk(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:fk(this,e,t)}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}},gk.prototype={areaStart:yk,areaEnd:yk,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x2,this._y2),this._context.closePath();break;case 2:this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break;case 3:this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4)}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x2=e,this._y2=t;break;case 1:this._point=2,this._x3=e,this._y3=t;break;case 2:this._point=3,this._x4=e,this._y4=t,this._context.moveTo((this._x0+4*this._x1+e)/6,(this._y0+4*this._y1+t)/6);break;default:fk(this,e,t)}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}},vk.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var r=(this._x0+4*this._x1+e)/6,a=(this._y0+4*this._y1+t)/6;this._line?this._context.lineTo(r,a):this._context.moveTo(r,a);break;case 3:this._point=4;default:fk(this,e,t)}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}},xk.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var e=this._x,t=this._y,r=e.length-1;if(r>0)for(var a,i=e[0],n=t[0],o=e[r]-i,c=t[r]-n,l=-1;++l<=r;)a=l/r,this._basis.point(this._beta*e[l]+(1-this._beta)*(i+a*o),this._beta*t[l]+(1-this._beta)*(n+a*c));this._x=this._y=null,this._basis.lineEnd()},point:function(e,t){this._x.push(+e),this._y.push(+t)}};var kk=function e(t){function r(e){return 1===t?new mk(e):new xk(e,t)}return r.beta=function(t){return e(+t)},r}(.85);function wk(e,t,r){e._context.bezierCurveTo(e._x1+e._k*(e._x2-e._x0),e._y1+e._k*(e._y2-e._y0),e._x2+e._k*(e._x1-t),e._y2+e._k*(e._y1-r),e._x2,e._y2)}function Ck(e,t){this._context=e,this._k=(1-t)/6}Ck.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:wk(this,this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2,this._x1=e,this._y1=t;break;case 2:this._point=3;default:wk(this,e,t)}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var _k=function e(t){function r(e){return new Ck(e,t)}return r.tension=function(t){return e(+t)},r}(0);function Sk(e,t){this._context=e,this._k=(1-t)/6}Sk.prototype={areaStart:yk,areaEnd:yk,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x3=e,this._y3=t;break;case 1:this._point=2,this._context.moveTo(this._x4=e,this._y4=t);break;case 2:this._point=3,this._x5=e,this._y5=t;break;default:wk(this,e,t)}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var Ak=function e(t){function r(e){return new Sk(e,t)}return r.tension=function(t){return e(+t)},r}(0);function Mk(e,t){this._context=e,this._k=(1-t)/6}Mk.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:wk(this,e,t)}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var Tk=function e(t){function r(e){return new Mk(e,t)}return r.tension=function(t){return e(+t)},r}(0);function Bk(e,t,r){var a=e._x1,i=e._y1,n=e._x2,o=e._y2;if(e._l01_a>rx){var c=2*e._l01_2a+3*e._l01_a*e._l12_a+e._l12_2a,l=3*e._l01_a*(e._l01_a+e._l12_a);a=(a*c-e._x0*e._l12_2a+e._x2*e._l01_2a)/l,i=(i*c-e._y0*e._l12_2a+e._y2*e._l01_2a)/l}if(e._l23_a>rx){var s=2*e._l23_2a+3*e._l23_a*e._l12_a+e._l12_2a,u=3*e._l23_a*(e._l23_a+e._l12_a);n=(n*s+e._x1*e._l23_2a-t*e._l12_2a)/u,o=(o*s+e._y1*e._l23_2a-r*e._l12_2a)/u}e._context.bezierCurveTo(a,i,n,o,e._x2,e._y2)}function Lk(e,t){this._context=e,this._alpha=t}Lk.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){if(e=+e,t=+t,this._point){var r=this._x2-e,a=this._y2-t;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+a*a,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3;default:Bk(this,e,t)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var Ek=function e(t){function r(e){return t?new Lk(e,t):new Ck(e,0)}return r.alpha=function(t){return e(+t)},r}(.5);function Rk(e,t){this._context=e,this._alpha=t}Rk.prototype={areaStart:yk,areaEnd:yk,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(e,t){if(e=+e,t=+t,this._point){var r=this._x2-e,a=this._y2-t;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+a*a,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=e,this._y3=t;break;case 1:this._point=2,this._context.moveTo(this._x4=e,this._y4=t);break;case 2:this._point=3,this._x5=e,this._y5=t;break;default:Bk(this,e,t)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var Hk=function e(t){function r(e){return t?new Rk(e,t):new Sk(e,0)}return r.alpha=function(t){return e(+t)},r}(.5);function Dk(e,t){this._context=e,this._alpha=t}Dk.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){if(e=+e,t=+t,this._point){var r=this._x2-e,a=this._y2-t;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+a*a,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Bk(this,e,t)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var Pk=function e(t){function r(e){return t?new Dk(e,t):new Mk(e,0)}return r.alpha=function(t){return e(+t)},r}(.5);function Nk(e){this._context=e}function Gk(e){return e<0?-1:1}function Ik(e,t,r){var a=e._x1-e._x0,i=t-e._x1,n=(e._y1-e._y0)/(a||i<0&&-0),o=(r-e._y1)/(i||a<0&&-0),c=(n*i+o*a)/(a+i);return(Gk(n)+Gk(o))*Math.min(Math.abs(n),Math.abs(o),.5*Math.abs(c))||0}function Wk(e,t){var r=e._x1-e._x0;return r?(3*(e._y1-e._y0)/r-t)/2:t}function Fk(e,t,r){var a=e._x0,i=e._y0,n=e._x1,o=e._y1,c=(n-a)/3;e._context.bezierCurveTo(a+c,i+c*t,n-c,o-c*r,n,o)}function zk(e){this._context=e}function Ok(e){this._context=new Kk(e)}function Kk(e){this._context=e}function Jk(e){this._context=e}function Vk(e){var t,r,a=e.length-1,i=new Array(a),n=new Array(a),o=new Array(a);for(i[0]=0,n[0]=2,o[0]=e[0]+2*e[1],t=1;t=0;--t)i[t]=(o[t]-i[t+1])/n[t];for(n[a-1]=(e[a]+i[a-1])/2,t=0;t1)for(var r,a,i,n=1,o=e[t[0]],c=o.length;n=0;)r[t]=t;return r}function Qk(e,t){return e[t]}function Xk(e){const t=[];return t.key=e,t}function ew(e){var t=e.map(tw);return Zk(e).sort((function(e,r){return t[e]-t[r]}))}function tw(e){for(var t,r=-1,a=0,i=e.length,n=-1/0;++rn&&(n=t,a=r);return a}function rw(e){var t=e.map(aw);return Zk(e).sort((function(e,r){return t[e]-t[r]}))}function aw(e){for(var t,r=0,a=-1,i=e.length;++a=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,t),this._context.lineTo(e,t);else{var r=this._x*(1-this._t)+e*this._t;this._context.lineTo(r,this._y),this._context.lineTo(r,t)}}this._x=e,this._y=t}};var iw=e=>()=>e;function nw(e,{sourceEvent:t,target:r,transform:a,dispatch:i}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},transform:{value:a,enumerable:!0,configurable:!0},_:{value:i}})}function ow(e,t,r){this.k=e,this.x=t,this.y=r}ow.prototype={constructor:ow,scale:function(e){return 1===e?this:new ow(this.k*e,this.x,this.y)},translate:function(e,t){return 0===e&0===t?this:new ow(this.k,this.x+this.k*e,this.y+this.k*t)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var cw=new ow(1,0,0);function lw(e){for(;!e.__zoom;)if(!(e=e.parentNode))return cw;return e.__zoom}function sw(e){e.stopImmediatePropagation()}function uw(e){e.preventDefault(),e.stopImmediatePropagation()}function hw(e){return!(e.ctrlKey&&"wheel"!==e.type||e.button)}function dw(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e).hasAttribute("viewBox")?[[(e=e.viewBox.baseVal).x,e.y],[e.x+e.width,e.y+e.height]]:[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]:[[0,0],[e.clientWidth,e.clientHeight]]}function pw(){return this.__zoom||cw}function yw(e){return-e.deltaY*(1===e.deltaMode?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function fw(){return navigator.maxTouchPoints||"ontouchstart"in this}function mw(e,t,r){var a=e.invertX(t[0][0])-r[0][0],i=e.invertX(t[1][0])-r[1][0],n=e.invertY(t[0][1])-r[0][1],o=e.invertY(t[1][1])-r[1][1];return e.translate(i>a?(a+i)/2:Math.min(0,a)||Math.max(0,i),o>n?(n+o)/2:Math.min(0,n)||Math.max(0,o))}function gw(){var e,t,r,a=hw,i=dw,n=mw,o=yw,c=fw,l=[0,1/0],s=[[-1/0,-1/0],[1/0,1/0]],u=250,h=ei,d=Le("start","zoom","end"),p=0,y=10;function f(e){e.property("__zoom",pw).on("wheel.zoom",w,{passive:!1}).on("mousedown.zoom",C).on("dblclick.zoom",_).filter(c).on("touchstart.zoom",S).on("touchmove.zoom",A).on("touchend.zoom touchcancel.zoom",M).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function m(e,t){return(t=Math.max(l[0],Math.min(l[1],t)))===e.k?e:new ow(t,e.x,e.y)}function g(e,t,r){var a=t[0]-r[0]*e.k,i=t[1]-r[1]*e.k;return a===e.x&&i===e.y?e:new ow(e.k,a,i)}function b(e){return[(+e[0][0]+ +e[1][0])/2,(+e[0][1]+ +e[1][1])/2]}function v(e,t,r,a){e.on("start.zoom",(function(){x(this,arguments).event(a).start()})).on("interrupt.zoom end.zoom",(function(){x(this,arguments).event(a).end()})).tween("zoom",(function(){var e=this,n=arguments,o=x(e,n).event(a),c=i.apply(e,n),l=null==r?b(c):"function"==typeof r?r.apply(e,n):r,s=Math.max(c[1][0]-c[0][0],c[1][1]-c[0][1]),u=e.__zoom,d="function"==typeof t?t.apply(e,n):t,p=h(u.invert(l).concat(s/u.k),d.invert(l).concat(s/d.k));return function(e){if(1===e)e=d;else{var t=p(e),r=s/t[2];e=new ow(r,l[0]-t[0]*r,l[1]-t[1]*r)}o.zoom(null,e)}}))}function x(e,t,r){return!r&&e.__zooming||new k(e,t)}function k(e,t){this.that=e,this.args=t,this.active=0,this.sourceEvent=null,this.extent=i.apply(e,t),this.taps=0}function w(e,...t){if(a.apply(this,arguments)){var r=x(this,t).event(e),i=this.__zoom,c=Math.max(l[0],Math.min(l[1],i.k*Math.pow(2,o.apply(this,arguments)))),u=Qt(e);if(r.wheel)r.mouse[0][0]===u[0]&&r.mouse[0][1]===u[1]||(r.mouse[1]=i.invert(r.mouse[0]=u)),clearTimeout(r.wheel);else{if(i.k===c)return;r.mouse=[u,i.invert(u)],Ni(this),r.start()}uw(e),r.wheel=setTimeout((function(){r.wheel=null,r.end()}),150),r.zoom("mouse",n(g(m(i,c),r.mouse[0],r.mouse[1]),r.extent,s))}}function C(e,...t){if(!r&&a.apply(this,arguments)){var i=e.currentTarget,o=x(this,t,!0).event(e),c=jt(e.view).on("mousemove.zoom",(function(e){if(uw(e),!o.moved){var t=e.clientX-u,r=e.clientY-h;o.moved=t*t+r*r>p}o.event(e).zoom("mouse",n(g(o.that.__zoom,o.mouse[0]=Qt(e,i),o.mouse[1]),o.extent,s))}),!0).on("mouseup.zoom",(function(e){c.on("mousemove.zoom mouseup.zoom",null),ir(e.view,o.moved),uw(e),o.event(e).end()}),!0),l=Qt(e,i),u=e.clientX,h=e.clientY;ar(e.view),sw(e),o.mouse=[l,this.__zoom.invert(l)],Ni(this),o.start()}}function _(e,...t){if(a.apply(this,arguments)){var r=this.__zoom,o=Qt(e.changedTouches?e.changedTouches[0]:e,this),c=r.invert(o),l=r.k*(e.shiftKey?.5:2),h=n(g(m(r,l),o,c),i.apply(this,t),s);uw(e),u>0?jt(this).transition().duration(u).call(v,h,o,e):jt(this).call(f.transform,h,o,e)}}function S(r,...i){if(a.apply(this,arguments)){var n,o,c,l,s=r.touches,u=s.length,h=x(this,i,r.changedTouches.length===u).event(r);for(sw(r),o=0;o1&&r.name===t)return new rn([[e]],Nn,t,+a);return null},arc:function(){var e=lx,t=sx,r=$v(0),a=null,i=ux,n=hx,o=dx,c=null,l=cx(s);function s(){var s,u,h=+e.apply(this,arguments),d=+t.apply(this,arguments),p=i.apply(this,arguments)-ix,y=n.apply(this,arguments)-ix,f=Uv(y-p),m=y>p;if(c||(c=s=l()),drx)if(f>nx-rx)c.moveTo(d*Zv(p),d*ex(p)),c.arc(0,0,d,p,y,!m),h>rx&&(c.moveTo(h*Zv(y),h*ex(y)),c.arc(0,0,h,y,p,m));else{var g,b,v=p,x=y,k=p,w=y,C=f,_=f,S=o.apply(this,arguments)/2,A=S>rx&&(a?+a.apply(this,arguments):tx(h*h+d*d)),M=Xv(Uv(d-h)/2,+r.apply(this,arguments)),T=M,B=M;if(A>rx){var L=ox(A/h*ex(S)),E=ox(A/d*ex(S));(C-=2*L)>rx?(k+=L*=m?1:-1,w-=L):(C=0,k=w=(p+y)/2),(_-=2*E)>rx?(v+=E*=m?1:-1,x-=E):(_=0,v=x=(p+y)/2)}var R=d*Zv(v),H=d*ex(v),D=h*Zv(w),P=h*ex(w);if(M>rx){var N,G=d*Zv(x),I=d*ex(x),W=h*Zv(k),F=h*ex(k);if(f1?0:e<-1?ax:Math.acos(e)}((z*K+O*J)/(tx(z*z+O*O)*tx(K*K+J*J)))/2),j=tx(N[0]*N[0]+N[1]*N[1]);T=Xv(M,(h-j)/(V-1)),B=Xv(M,(d-j)/(V+1))}else T=B=0}_>rx?B>rx?(g=px(W,F,R,H,d,B,m),b=px(G,I,D,P,d,B,m),c.moveTo(g.cx+g.x01,g.cy+g.y01),Brx&&C>rx?T>rx?(g=px(D,P,G,I,h,-T,m),b=px(R,H,W,F,h,-T,m),c.lineTo(g.cx+g.x01,g.cy+g.y01),T=0))throw new RangeError("invalid r");let r=e.length;if(!((r=Math.floor(r))>=0))throw new RangeError("invalid length");if(!r||!t)return e;const a=f(t),i=e.slice();return a(e,i,0,r,1),a(i,e,0,r,1),a(e,i,0,r,1),e},blur2:u,blurImage:h,brush:function(){return lo(Zn)},brushSelection:function(e){var t=e.__brush;return t?t.dim.output(t.selection):null},brushX:function(){return lo(Un)},brushY:function(){return lo(qn)},buffer:function(e,t){return fetch(e,t).then(Xc)},chord:function(){return vo(!1,!1)},chordDirected:function(){return vo(!0,!1)},chordTranspose:function(){return vo(!1,!0)},cluster:kp,color:Br,contourDensity:function(){var e=qo,t=Zo,r=Qo,a=960,i=500,n=20,o=2,c=3*n,l=a+2*c>>o,s=i+2*c>>o,h=Wo(20);function d(a){var i=new Float32Array(l*s),h=Math.pow(2,-o),d=-1;for(const n of a){var p=(e(n,++d,a)+c)*h,y=(t(n,d,a)+c)*h,f=+r(n,d,a);if(f&&p>=0&&p=0&&ye*a)))(t).map(((e,t)=>(e.value=+r[t],y(e))))}function y(e){return e.coordinates.forEach(f),e}function f(e){e.forEach(m)}function m(e){e.forEach(g)}function g(e){e[0]=e[0]*Math.pow(2,o)-c,e[1]=e[1]*Math.pow(2,o)-c}function b(){return l=a+2*(c=3*n)>>o,s=i+2*c>>o,p}return p.contours=function(e){var t=d(e),r=Vo().size([l,s]),a=Math.pow(2,2*o),i=e=>{e=+e;var i=y(r.contour(t,e*a));return i.value=e,i};return Object.defineProperty(i,"max",{get:()=>ee(t)/a}),i},p.x=function(t){return arguments.length?(e="function"==typeof t?t:Wo(+t),p):e},p.y=function(e){return arguments.length?(t="function"==typeof e?e:Wo(+e),p):t},p.weight=function(e){return arguments.length?(r="function"==typeof e?e:Wo(+e),p):r},p.size=function(e){if(!arguments.length)return[a,i];var t=+e[0],r=+e[1];if(!(t>=0&&r>=0))throw new Error("invalid size");return a=t,i=r,b()},p.cellSize=function(e){if(!arguments.length)return 1<=1))throw new Error("invalid cell size");return o=Math.floor(Math.log(e)/Math.LN2),b()},p.thresholds=function(e){return arguments.length?(h="function"==typeof e?e:Array.isArray(e)?Wo(Go.call(e)):Wo(e),p):h},p.bandwidth=function(e){if(!arguments.length)return Math.sqrt(n*(n+1));if(!((e=+e)>=0))throw new Error("invalid bandwidth");return n=(Math.sqrt(4*e*e+1)-1)/2,b()},p},contours:Vo,count:m,create:Yt,creator:We,cross:function(...e){const t="function"==typeof e[e.length-1]&&function(e){return t=>e(...t)}(e.pop()),r=(e=e.map(v)).map(g),a=e.length-1,i=new Array(a+1).fill(0),n=[];if(a<0||r.some(b))return n;for(;;){n.push(i.map(((t,r)=>e[r][t])));let o=a;for(;++i[o]===r[o];){if(0===o)return t?n.map(t):n;i[o--]=0}}},csv:al,csvFormat:Ic,csvFormatBody:Wc,csvFormatRow:zc,csvFormatRows:Fc,csvFormatValue:Oc,csvParse:Nc,csvParseRows:Gc,cubehelix:ka,cumsum:function(e,t){var r=0,a=0;return Float64Array.from(e,void 0===t?e=>r+=+e||0:i=>r+=+t(i,a++,e)||0)},curveBasis:function(e){return new mk(e)},curveBasisClosed:bk,curveBasisOpen:function(e){return new vk(e)},curveBumpX:Hx,curveBumpY:Dx,curveBundle:kk,curveCardinal:_k,curveCardinalClosed:Ak,curveCardinalOpen:Tk,curveCatmullRom:Ek,curveCatmullRomClosed:Hk,curveCatmullRomOpen:Pk,curveLinear:gx,curveLinearClosed:function(e){return new Nk(e)},curveMonotoneX:function(e){return new zk(e)},curveMonotoneY:function(e){return new Ok(e)},curveNatural:function(e){return new Jk(e)},curveStep:Yk,curveStepAfter:Uk,curveStepBefore:$k,descending:r,deviation:k,difference:function(e,...t){e=new S(e);for(const r of t)for(const t of r)e.delete(t);return e},disjoint:function(e,t){const r=t[Symbol.iterator](),a=new S;for(const t of e){if(a.has(t))return!1;let e,i;for(;({value:e,done:i}=r.next())&&!i;){if(Object.is(t,e))return!1;a.add(e)}}return!0},dispatch:Le,drag:function(){var e,t,r,a,i=cr,n=lr,o=sr,c=ur,l={},s=Le("start","drag","end"),u=0,h=0;function d(e){e.on("mousedown.drag",p).filter(c).on("touchstart.drag",m).on("touchmove.drag",g,Xt).on("touchend.drag touchcancel.drag",b).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function p(o,c){if(!a&&i.call(this,o,c)){var l=v(this,n.call(this,o,c),o,c,"mouse");l&&(jt(o.view).on("mousemove.drag",y,er).on("mouseup.drag",f,er),ar(o.view),tr(o),r=!1,e=o.clientX,t=o.clientY,l("start",o))}}function y(a){if(rr(a),!r){var i=a.clientX-e,n=a.clientY-t;r=i*i+n*n>h}l.mouse("drag",a)}function f(e){jt(e.view).on("mousemove.drag mouseup.drag",null),ir(e.view,r),rr(e),l.mouse("end",e)}function m(e,t){if(i.call(this,e,t)){var r,a,o=e.changedTouches,c=n.call(this,e,t),l=o.length;for(r=0;r+e,easePoly:hn,easePolyIn:sn,easePolyInOut:hn,easePolyOut:un,easeQuad:cn,easeQuadIn:function(e){return e*e},easeQuadInOut:cn,easeQuadOut:function(e){return e*(2-e)},easeSin:yn,easeSinIn:function(e){return 1==+e?1:1-Math.cos(e*pn)},easeSinInOut:yn,easeSinOut:function(e){return Math.sin(e*pn)},every:function(e,t){if("function"!=typeof t)throw new TypeError("test is not a function");let r=-1;for(const a of e)if(!t(a,++r,e))return!1;return!0},extent:w,fcumsum:function(e,t){const r=new C;let a=-1;return Float64Array.from(e,void 0===t?e=>r.add(+e||0):i=>r.add(+t(i,++a,e)||0))},filter:function(e,t){if("function"!=typeof t)throw new TypeError("test is not a function");const r=[];let a=-1;for(const i of e)t(i,++a,e)&&r.push(i);return r},flatGroup:function(e,...t){return H(R(e,...t),t)},flatRollup:function(e,t,...r){return H(P(e,t,...r),r)},forceCenter:function(e,t){var r,a=1;function i(){var i,n,o=r.length,c=0,l=0;for(i=0;is+y||nu+y||ol.index){var f=s-c.x-c.vx,m=u-c.y-c.vy,g=f*f+m*m;ge.r&&(e.r=e[t].r)}function l(){if(t){var a,i,n=t.length;for(r=new Array(n),a=0;a[c(e,t,a),e])));for(o=0,i=new Array(s);o=c)){(e.data!==t||e.next)&&(0===h&&(y+=(h=vl(r))*h),0===d&&(y+=(d=vl(r))*d),y(e=(1664525*e+1013904223)%_l)/_l}();function h(){d(),s.call("tick",t),r1?(null==r?c.delete(e):c.set(e,y(r)),t):c.get(e)},find:function(t,r,a){var i,n,o,c,l,s=0,u=e.length;for(null==a?a=1/0:a*=a,s=0;s1?(s.on(e,r),t):s.on(e)}}},forceX:function(e){var t,r,a,i=bl(.1);function n(e){for(var i,n=0,o=t.length;n=.12&&i<.234&&a>=-.425&&a<-.214?c:i>=.166&&i<.234&&a>=-.214&&a<-.115?l:o).invert(e)},u.stream=function(r){return e&&t===r?e:e=function(e){var t=e.length;return{point:function(r,a){for(var i=-1;++i_u(a[0],a[1])&&(a[1]=i[1]),_u(i[0],a[1])>_u(a[0],a[1])&&(a[0]=i[0])):n.push(a=i);for(o=-1/0,t=0,a=n[r=n.length-1];t<=r;a=i,++t)i=n[t],(c=_u(a[1],i[0]))>o&&(o=c,Bs=i[0],Es=a[1])}return Is=Ws=null,Bs===1/0||Ls===1/0?[[NaN,NaN],[NaN,NaN]]:[[Bs,Ls],[Es,Rs]]},geoCentroid:function(e){eu=tu=ru=au=iu=nu=ou=cu=0,lu=new C,su=new C,uu=new C,Cs(e,Mu);var t=+lu,r=+su,a=+uu,i=cs(t,r,a);return i<$l&&(t=nu,r=ou,a=cu,tu=0))throw new RangeError(`invalid digits: ${e}`);i=t}return null===t&&(a=new Rd(i)),o},o.projection(e).digits(i).context(t)},geoProjection:Vd,geoProjectionMutator:jd,geoRotation:Vu,geoStereographic:function(){return Vd(mp).scale(250).clipAngle(142)},geoStereographicRaw:mp,geoStream:Cs,geoTransform:function(e){return{stream:Dd(e)}},geoTransverseMercator:function(){var e=rp(gp),t=e.center,r=e.rotate;return e.center=function(e){return arguments.length?t([-e[1],e[0]]):[(e=t())[1],-e[0]]},e.rotate=function(e){return arguments.length?r([e[0],e[1],e.length>2?e[2]+90:90]):[(e=r())[0],e[1],e[2]-90]},r([0,0,90]).scale(159.155)},geoTransverseMercatorRaw:gp,gray:ra,greatest:oe,greatestIndex:function(e,r=t){if(1===r.length)return te(e,r);let a,i=-1,n=-1;for(const t of e)++n,(i<0?0===r(t,t):r(t,a)>0)&&(a=t,i=n);return i},group:E,groupSort:function(e,r,a){return(2!==r.length?W(D(e,r,a),(([e,r],[a,i])=>t(r,i)||t(e,a))):W(E(e,a),(([e,a],[i,n])=>r(a,n)||t(e,i)))).map((([e])=>e))},groups:R,hcl:ua,hierarchy:Cp,histogram:X,hsl:Or,html:ll,image:function(e,t){return new Promise((function(r,a){var i=new Image;for(var n in t)i[n]=t[n];i.onerror=a,i.onload=function(){r(i)},i.src=e}))},index:function(e,...t){return G(e,L,N,t)},indexes:function(e,...t){return G(e,Array.from,N,t)},interpolate:Ja,interpolateArray:function(e,t){return(Na(t)?Pa:Ga)(e,t)},interpolateBasis:_a,interpolateBasisClosed:Sa,interpolateBlues:Sv,interpolateBrBG:Gb,interpolateBuGn:tv,interpolateBuPu:av,interpolateCividis:function(e){return e=Math.max(0,Math.min(1,e)),"rgb("+Math.max(0,Math.min(255,Math.round(-4.54-e*(35.34-e*(2381.73-e*(6402.7-e*(7024.72-2710.57*e)))))))+", "+Math.max(0,Math.min(255,Math.round(32.49+e*(170.73+e*(52.82-e*(131.46-e*(176.58-67.37*e)))))))+", "+Math.max(0,Math.min(255,Math.round(81.24+e*(442.36-e*(2482.43-e*(6167.24-e*(6614.94-2475.67*e)))))))+")"},interpolateCool:Iv,interpolateCubehelix:li,interpolateCubehelixDefault:Nv,interpolateCubehelixLong:si,interpolateDate:Ia,interpolateDiscrete:function(e){var t=e.length;return function(r){return e[Math.max(0,Math.min(t-1,Math.floor(r*t)))]}},interpolateGnBu:nv,interpolateGreens:Mv,interpolateGreys:Bv,interpolateHcl:ni,interpolateHclLong:oi,interpolateHsl:ri,interpolateHslLong:ai,interpolateHue:function(e,t){var r=Ta(+e,+t);return function(e){var t=r(e);return t-360*Math.floor(t/360)}},interpolateInferno:jv,interpolateLab:function(e,t){var r=La((e=aa(e)).l,(t=aa(t)).l),a=La(e.a,t.a),i=La(e.b,t.b),n=La(e.opacity,t.opacity);return function(t){return e.l=r(t),e.a=a(t),e.b=i(t),e.opacity=n(t),e+""}},interpolateMagma:Vv,interpolateNumber:Wa,interpolateNumberArray:Pa,interpolateObject:Fa,interpolateOrRd:cv,interpolateOranges:Pv,interpolatePRGn:Wb,interpolatePiYG:zb,interpolatePlasma:Yv,interpolatePuBu:hv,interpolatePuBuGn:sv,interpolatePuOr:Kb,interpolatePuRd:pv,interpolatePurples:Ev,interpolateRainbow:function(e){(e<0||e>1)&&(e-=Math.floor(e));var t=Math.abs(e-.5);return Wv.h=360*e-100,Wv.s=1.5-1.5*t,Wv.l=.8-.9*t,Wv+""},interpolateRdBu:Vb,interpolateRdGy:Yb,interpolateRdPu:fv,interpolateRdYlBu:Ub,interpolateRdYlGn:Zb,interpolateReds:Hv,interpolateRgb:Ea,interpolateRgbBasis:Ha,interpolateRgbBasisClosed:Da,interpolateRound:Va,interpolateSinebow:function(e){var t;return e=(.5-e)*Math.PI,Fv.r=255*(t=Math.sin(e))*t,Fv.g=255*(t=Math.sin(e+zv))*t,Fv.b=255*(t=Math.sin(e+Ov))*t,Fv+""},interpolateSpectral:Xb,interpolateString:Ka,interpolateTransformCss:Za,interpolateTransformSvg:Qa,interpolateTurbo:function(e){return e=Math.max(0,Math.min(1,e)),"rgb("+Math.max(0,Math.min(255,Math.round(34.61+e*(1172.33-e*(10793.56-e*(33300.12-e*(38394.49-14825.05*e)))))))+", "+Math.max(0,Math.min(255,Math.round(23.31+e*(557.33+e*(1225.33-e*(3574.96-e*(1073.77+707.56*e)))))))+", "+Math.max(0,Math.min(255,Math.round(27.2+e*(3211.1-e*(15327.97-e*(27814-e*(22569.18-6838.66*e)))))))+")"},interpolateViridis:Jv,interpolateWarm:Gv,interpolateYlGn:vv,interpolateYlGnBu:gv,interpolateYlOrBr:kv,interpolateYlOrRd:Cv,interpolateZoom:ei,interrupt:Ni,intersection:function(e,...t){e=new S(e),t=t.map(be);e:for(const r of e)for(const a of t)if(!a.has(r)){e.delete(r);continue e}return e},interval:function(e,t,r){var a=new Ci,i=t;return null==t?(a.restart(e,t,r),a):(a._restart=a.restart,a.restart=function(e,t,r){t=+t,r=null==r?ki():+r,a._restart((function n(o){o+=i,a._restart(n,i+=t,r),e(o)}),t,r)},a.restart(e,t,r),a)},isoFormat:pb,isoParse:yb,json:function(e,t){return fetch(e,t).then(nl)},lab:aa,lch:function(e,t,r,a){return 1===arguments.length?sa(e):new ha(r,t,e,null==a?1:a)},least:function(e,r=t){let a,i=!1;if(1===r.length){let n;for(const o of e){const e=r(o);(i?t(e,n)<0:0===t(e,e))&&(a=o,n=e,i=!0)}}else for(const t of e)(i?r(t,a)<0:0===r(t,t))&&(a=t,i=!0);return a},leastIndex:pe,line:xx,lineRadial:Tx,link:Ix,linkHorizontal:function(){return Ix(Hx)},linkRadial:Wx,linkVertical:function(){return Ix(Dx)},local:Ut,map:function(e,t){if("function"!=typeof e[Symbol.iterator])throw new TypeError("values is not iterable");if("function"!=typeof t)throw new TypeError("mapper is not a function");return Array.from(e,((r,a)=>t(r,a,e)))},matcher:Ve,max:ee,maxIndex:te,mean:function(e,t){let r=0,a=0;if(void 0===t)for(let t of e)null!=t&&(t=+t)>=t&&(++r,a+=t);else{let i=-1;for(let n of e)null!=(n=t(n,++i,e))&&(n=+n)>=n&&(++r,a+=n)}if(r)return a/r},median:function(e,t){return ce(e,.5,t)},medianIndex:function(e,t){return se(e,.5,t)},merge:ue,min:re,minIndex:ae,mode:function(e,t){const r=new _;if(void 0===t)for(let t of e)null!=t&&t>=t&&r.set(t,(r.get(t)||0)+1);else{let a=-1;for(let i of e)null!=(i=t(i,++a,e))&&i>=i&&r.set(i,(r.get(i)||0)+1)}let a,i=0;for(const[e,t]of r)t>i&&(i=t,a=e);return a},namespace:Ne,namespaces:Pe,nice:Z,now:ki,pack:function(){var e=null,t=1,r=1,a=Ep;function i(i){const n=Dp();return i.x=t/2,i.y=r/2,e?i.eachBefore(Up(e)).eachAfter(qp(a,.5,n)).eachBefore(Zp(1)):i.eachBefore(Up($p)).eachAfter(qp(Ep,1,n)).eachAfter(qp(a,i.r/Math.min(t,r),n)).eachBefore(Zp(Math.min(t,r)/(2*i.r))),i}return i.radius=function(t){return arguments.length?(e=Bp(t),i):e},i.size=function(e){return arguments.length?(t=+e[0],r=+e[1],i):[t,r]},i.padding=function(e){return arguments.length?(a="function"==typeof e?e:Rp(+e),i):a},i},packEnclose:function(e){return Pp(e,Dp())},packSiblings:function(e){return Yp(e,Dp()),e},pairs:function(e,t=he){const r=[];let a,i=!1;for(const n of e)i&&r.push(t(a,n)),a=n,i=!0;return r},partition:function(){var e=1,t=1,r=0,a=!1;function i(i){var n=i.height+1;return i.x0=i.y0=r,i.x1=e,i.y1=t/n,i.eachBefore(function(e,t){return function(a){a.children&&Xp(a,a.x0,e*(a.depth+1)/t,a.x1,e*(a.depth+2)/t);var i=a.x0,n=a.y0,o=a.x1-r,c=a.y1-r;o0&&(p+=h);for(null!=t?y.sort((function(e,r){return t(f[e],f[r])})):null!=r&&y.sort((function(e,t){return r(o[e],o[t])})),c=0,s=p?(g-d*v)/p:0;c0?h*s:0)+v,f[l]={data:o[l],index:c,value:h,startAngle:m,endAngle:u,padAngle:b};return f}return o.value=function(t){return arguments.length?(e="function"==typeof t?t:$v(+t),o):e},o.sortValues=function(e){return arguments.length?(t=e,r=null,o):t},o.sort=function(e){return arguments.length?(r=e,t=null,o):r},o.startAngle=function(e){return arguments.length?(a="function"==typeof e?e:$v(+e),o):a},o.endAngle=function(e){return arguments.length?(i="function"==typeof e?e:$v(+e),o):i},o.padAngle=function(e){return arguments.length?(n="function"==typeof e?e:$v(+e),o):n},o},piecewise:ui,pointRadial:Lx,pointer:Qt,pointers:function(e,t){return e.target&&(e=Zt(e),void 0===t&&(t=e.currentTarget),e=e.touches||[e]),Array.from(e,(e=>Qt(e,t)))},polygonArea:function(e){for(var t,r=-1,a=e.length,i=e[a-1],n=0;++rc!=s>c&&o<(l-r)*(c-a)/(s-a)+r&&(u=!u),l=r,s=a;return u},polygonHull:function(e){if((r=e.length)<3)return null;var t,r,a=new Array(r),i=new Array(r);for(t=0;t=0;--t)s.push(e[a[n[t]][2]]);for(t=+c;t(t=1664525*t+1013904223|0,Fy*(t>>>0))},randomLogNormal:Ay,randomLogistic:Iy,randomNormal:Sy,randomPareto:Ly,randomPoisson:Wy,randomUniform:Cy,randomWeibull:Ny,range:de,rank:function(e,r=t){if("function"!=typeof e[Symbol.iterator])throw new TypeError("values is not iterable");let a=Array.from(e);const i=new Float64Array(a.length);2!==r.length&&(a=a.map(r),r=t);const n=(e,t)=>r(a[e],a[t]);let o,c;return e=Uint32Array.from(a,((e,t)=>t)),e.sort(r===t?(e,t)=>z(a[e],a[t]):F(n)),e.forEach(((e,t)=>{const r=n(e,void 0===o?e:o);r>=0?((void 0===o||r>0)&&(o=e,c=t),i[e]=c):i[e]=NaN})),i},reduce:function(e,t,r){if("function"!=typeof t)throw new TypeError("reducer is not a function");const a=e[Symbol.iterator]();let i,n,o=-1;if(arguments.length<3){if(({done:i,value:r}=a.next()),i)return;++o}for(;({done:i,value:n}=a.next()),!i;)r=t(r,n,++o,e);return r},reverse:function(e){if("function"!=typeof e[Symbol.iterator])throw new TypeError("values is not iterable");return Array.from(e).reverse()},rgb:Hr,ribbon:function(){return No()},ribbonArrow:function(){return No(Po)},rollup:D,rollups:P,scaleBand:Vy,scaleDiverging:function e(){var t=af(kb()(Uy));return t.copy=function(){return vb(t,e())},Oy.apply(t,arguments)},scaleDivergingLog:function e(){var t=df(kb()).domain([.1,1,10]);return t.copy=function(){return vb(t,e()).base(t.base())},Oy.apply(t,arguments)},scaleDivergingPow:wb,scaleDivergingSqrt:function(){return wb.apply(null,arguments).exponent(.5)},scaleDivergingSymlog:function e(){var t=ff(kb());return t.copy=function(){return vb(t,e()).constant(t.constant())},Oy.apply(t,arguments)},scaleIdentity:function e(t){var r;function a(e){return null==e||isNaN(e=+e)?r:e}return a.invert=a,a.domain=a.range=function(e){return arguments.length?(t=Array.from(e,Yy),a):t.slice()},a.unknown=function(e){return arguments.length?(r=e,a):r},a.copy=function(){return e(t).unknown(r)},t=arguments.length?Array.from(t,Yy):[0,1],af(a)},scaleImplicit:Ky,scaleLinear:function e(){var t=tf();return t.copy=function(){return Xy(t,e())},zy.apply(t,arguments),af(t)},scaleLog:function e(){const t=df(ef()).domain([1,10]);return t.copy=()=>Xy(t,e()).base(t.base()),zy.apply(t,arguments),t},scaleOrdinal:Jy,scalePoint:function(){return jy(Vy.apply(null,arguments).paddingInner(1))},scalePow:xf,scaleQuantile:function e(){var r,a=[],i=[],n=[];function o(){var e=0,t=Math.max(1,i.length);for(n=new Array(t-1);++e0?n[t-1]:a[0],t=i?[n[i-1],a]:[n[t-1],n[t]]},l.unknown=function(e){return arguments.length?(t=e,l):l},l.thresholds=function(){return n.slice()},l.copy=function(){return e().domain([r,a]).range(o).unknown(t)},zy.apply(af(l),arguments)},scaleRadial:function e(){var t,r=tf(),a=[0,1],i=!1;function n(e){var a=function(e){return Math.sign(e)*Math.sqrt(Math.abs(e))}(r(e));return isNaN(a)?t:i?Math.round(a):a}return n.invert=function(e){return r.invert(kf(e))},n.domain=function(e){return arguments.length?(r.domain(e),n):r.domain()},n.range=function(e){return arguments.length?(r.range((a=Array.from(e,Yy)).map(kf)),n):a.slice()},n.rangeRound=function(e){return n.range(e).round(!0)},n.round=function(e){return arguments.length?(i=!!e,n):i},n.clamp=function(e){return arguments.length?(r.clamp(e),n):r.clamp()},n.unknown=function(e){return arguments.length?(t=e,n):t},n.copy=function(){return e(r.domain(),a).round(i).clamp(r.clamp()).unknown(t)},zy.apply(n,arguments),af(n)},scaleSequential:function e(){var t=af(bb()(Uy));return t.copy=function(){return vb(t,e())},Oy.apply(t,arguments)},scaleSequentialLog:function e(){var t=df(bb()).domain([1,10]);return t.copy=function(){return vb(t,e()).base(t.base())},Oy.apply(t,arguments)},scaleSequentialPow:xb,scaleSequentialQuantile:function e(){var r=[],a=Uy;function i(e){if(null!=e&&!isNaN(e=+e))return a((c(r,e,1)-1)/(r.length-1))}return i.domain=function(e){if(!arguments.length)return r.slice();r=[];for(let t of e)null==t||isNaN(t=+t)||r.push(t);return r.sort(t),i},i.interpolator=function(e){return arguments.length?(a=e,i):a},i.range=function(){return r.map(((e,t)=>a(t/(r.length-1))))},i.quantiles=function(e){return Array.from({length:e+1},((t,a)=>ce(r,a/e)))},i.copy=function(){return e(a).domain(r)},Oy.apply(i,arguments)},scaleSequentialSqrt:function(){return xb.apply(null,arguments).exponent(.5)},scaleSequentialSymlog:function e(){var t=ff(bb());return t.copy=function(){return vb(t,e()).constant(t.constant())},Oy.apply(t,arguments)},scaleSqrt:function(){return xf.apply(null,arguments).exponent(.5)},scaleSymlog:function e(){var t=ff(ef());return t.copy=function(){return Xy(t,e()).constant(t.constant())},zy.apply(t,arguments)},scaleThreshold:function e(){var t,r=[.5],a=[0,1],i=1;function n(e){return null!=e&&e<=e?a[c(r,e,0,i)]:t}return n.domain=function(e){return arguments.length?(r=Array.from(e),i=Math.min(r.length,a.length-1),n):r.slice()},n.range=function(e){return arguments.length?(a=Array.from(e),i=Math.min(r.length,a.length-1),n):a.slice()},n.invertExtent=function(e){var t=a.indexOf(e);return[r[t-1],r[t]]},n.unknown=function(e){return arguments.length?(t=e,n):t},n.copy=function(){return e().domain(r).range(a).unknown(t)},zy.apply(n,arguments)},scaleTime:function(){return zy.apply(gb(Gm,Im,Lm,Am,Zf,Jf,Ff,Nf,Df,Jm).domain([new Date(2e3,0,1),new Date(2e3,0,2)]),arguments)},scaleUtc:function(){return zy.apply(gb(Pm,Nm,Rm,Tm,dm,jf,Of,If,Df,jm).domain([Date.UTC(2e3,0,1),Date.UTC(2e3,0,2)]),arguments)},scan:function(e,t){const r=pe(e,t);return r<0?void 0:r},schemeAccent:Sb,schemeBlues:_v,schemeBrBG:Nb,schemeBuGn:ev,schemeBuPu:rv,schemeCategory10:_b,schemeDark2:Ab,schemeGnBu:iv,schemeGreens:Av,schemeGreys:Tv,schemeObservable10:Mb,schemeOrRd:ov,schemeOranges:Dv,schemePRGn:Ib,schemePaired:Tb,schemePastel1:Bb,schemePastel2:Lb,schemePiYG:Fb,schemePuBu:uv,schemePuBuGn:lv,schemePuOr:Ob,schemePuRd:dv,schemePurples:Lv,schemeRdBu:Jb,schemeRdGy:jb,schemeRdPu:yv,schemeRdYlBu:$b,schemeRdYlGn:qb,schemeReds:Rv,schemeSet1:Eb,schemeSet2:Rb,schemeSet3:Hb,schemeSpectral:Qb,schemeTableau10:Db,schemeYlGn:bv,schemeYlGnBu:mv,schemeYlOrBr:xv,schemeYlOrRd:wv,select:jt,selectAll:function(e){return"string"==typeof e?new Jt([document.querySelectorAll(e)],[document.documentElement]):new Jt([Oe(e)],Kt)},selection:Vt,selector:ze,selectorAll:Je,shuffle:ye,shuffler:fe,some:function(e,t){if("function"!=typeof t)throw new TypeError("test is not a function");let r=-1;for(const a of e)if(t(a,++r,e))return!0;return!1},sort:W,stack:function(){var e=$v([]),t=Zk,r=qk,a=Qk;function i(i){var n,o,c=Array.from(e.apply(this,arguments),Xk),l=c.length,s=-1;for(const e of i)for(n=0,++s;n0)for(var r,a,i,n,o,c,l=0,s=e[t[0]].length;l0?(a[0]=n,a[1]=n+=i):i<0?(a[1]=o,a[0]=o+=i):(a[0]=0,a[1]=i)},stackOffsetExpand:function(e,t){if((a=e.length)>0){for(var r,a,i,n=0,o=e[0].length;n0){for(var r,a=0,i=e[t[0]],n=i.length;a0&&(a=(r=e[t[0]]).length)>0){for(var r,a,i,n=0,o=1;ofunction(e){e=`${e}`;let t=e.length;oy(e,t-1)&&!oy(e,t-2)&&(e=e.slice(0,-1));return"/"===e[0]?e:`/${e}`}(e(t,r,a)))),r=t.map(ny),i=new Set(t).add("");for(const e of r)i.has(e)||(i.add(e),t.push(e),r.push(ny(e)),d.push(ry));p=(e,r)=>t[r],y=(e,t)=>r[t]}for(o=0,i=d.length;o=0&&(s=d[e]).data===ry;--e)s.data=null}if(c.parent=ey,c.eachBefore((function(e){e.depth=e.parent.depth+1,--i})).eachBefore(Mp),c.parent=null,i>0)throw new Error("cycle");return c}return a.id=function(e){return arguments.length?(t=Bp(e),a):t},a.parentId=function(e){return arguments.length?(r=Bp(e),a):r},a.path=function(t){return arguments.length?(e=Bp(t),a):e},a},style:yt,subset:function(e,t){return ve(t,e)},sum:function(e,t){let r=0;if(void 0===t)for(let t of e)(t=+t)&&(r+=t);else{let a=-1;for(let i of e)(i=+t(i,++a,e))&&(r+=i)}return r},superset:ve,svg:sl,symbol:pk,symbolAsterisk:zx,symbolCircle:Ox,symbolCross:Kx,symbolDiamond:jx,symbolDiamond2:Yx,symbolPlus:$x,symbolSquare:Ux,symbolSquare2:qx,symbolStar:ek,symbolTimes:uk,symbolTriangle:rk,symbolTriangle2:ik,symbolWye:sk,symbolX:uk,symbols:hk,symbolsFill:hk,symbolsStroke:dk,text:tl,thresholdFreedmanDiaconis:function(e,t,r){const a=m(e),i=ce(e,.75)-ce(e,.25);return a&&i?Math.ceil((r-t)/(2*i*Math.pow(a,-1/3))):1},thresholdScott:function(e,t,r){const a=m(e),i=k(e);return a&&i?Math.ceil((r-t)*Math.cbrt(a)/(3.49*i)):1},thresholdSturges:Q,tickFormat:rf,tickIncrement:U,tickStep:q,ticks:$,timeDay:Jf,timeDays:Vf,get timeFormat(){return Jm},timeFormatDefaultLocale:hb,timeFormatLocale:Om,timeFriday:rm,timeFridays:sm,timeHour:Ff,timeHours:zf,timeInterval:_f,timeMillisecond:Sf,timeMilliseconds:Af,timeMinute:Nf,timeMinutes:Gf,timeMonday:Qf,timeMondays:nm,timeMonth:Am,timeMonths:Mm,get timeParse(){return Vm},timeSaturday:am,timeSaturdays:um,timeSecond:Df,timeSeconds:Pf,timeSunday:Zf,timeSundays:im,timeThursday:tm,timeThursdays:lm,timeTickInterval:Im,timeTicks:Gm,timeTuesday:Xf,timeTuesdays:om,timeWednesday:em,timeWednesdays:cm,timeWeek:Zf,timeWeeks:im,timeYear:Lm,timeYears:Em,timeout:Bi,timer:_i,timerFlush:Si,transition:an,transpose:me,tree:py,treemap:function(){var e=gy,t=!1,r=1,a=1,i=[0],n=Ep,o=Ep,c=Ep,l=Ep,s=Ep;function u(e){return e.x0=e.y0=0,e.x1=r,e.y1=a,e.eachBefore(h),i=[0],t&&e.eachBefore(Qp),e}function h(t){var r=i[t.depth],a=t.x0+r,u=t.y0+r,h=t.x1-r,d=t.y1-r;h=r-1){var u=c[t];return u.x0=i,u.y0=n,u.x1=o,void(u.y1=l)}var h=s[t],d=a/2+h,p=t+1,y=r-1;for(;p>>1;s[f]l-n){var b=a?(i*g+o*m)/a:o;e(t,p,m,i,n,b,l),e(p,r,g,b,n,o,l)}else{var v=a?(n*g+l*m)/a:l;e(t,p,m,i,n,o,v),e(p,r,g,i,v,o,l)}}(0,l,e.value,t,r,a,i)},treemapDice:Xp,treemapResquarify:by,treemapSlice:yy,treemapSliceDice:function(e,t,r,a,i){(1&e.depth?yy:Xp)(e,t,r,a,i)},treemapSquarify:gy,tsv:il,tsvFormat:jc,tsvFormatBody:Yc,tsvFormatRow:Uc,tsvFormatRows:$c,tsvFormatValue:qc,tsvParse:Jc,tsvParseRows:Vc,union:function(...e){const t=new S;for(const r of e)for(const e of r)t.add(e);return t},unixDay:$f,unixDays:Uf,utcDay:jf,utcDays:Yf,get utcFormat(){return jm},utcFriday:gm,utcFridays:_m,utcHour:Of,utcHours:Kf,utcMillisecond:Sf,utcMilliseconds:Af,utcMinute:If,utcMinutes:Wf,utcMonday:pm,utcMondays:xm,utcMonth:Tm,utcMonths:Bm,get utcParse(){return Ym},utcSaturday:bm,utcSaturdays:Sm,utcSecond:Df,utcSeconds:Pf,utcSunday:dm,utcSundays:vm,utcThursday:mm,utcThursdays:Cm,utcTickInterval:Nm,utcTicks:Pm,utcTuesday:ym,utcTuesdays:km,utcWednesday:fm,utcWednesdays:wm,utcWeek:dm,utcWeeks:vm,utcYear:Rm,utcYears:Hm,variance:x,window:ut,xml:cl,zip:function(){return me(arguments)},zoom:gw,zoomIdentity:cw,zoomTransform:lw});class vw extends HTMLElement{align="auto";main_svg=null;tree_data={};static observeAttributes=["backgroundPattern","backgroundSize","customBackground"];backgroundPattern=null;backgroundSize=void 0;customBackground=void 0;backgroundPosition="center";constructor(){super()}connectedCallback(){this.className="ts-root-wrapper-element tree-spider",this.backgroundPattern=this.getAttribute("backgroundPattern")||"default",this.backgroundSize=this.getAttribute("backgroundSize"),this.backgroundSize="undefined"==this.backgroundSize?void 0:this.backgroundSize,this.customBackground=this.getAttribute("customBackground"),this.customBackground="undefined"==this.customBackground?void 0:this.customBackground,this.backgroundPosition=this.getAttribute("backgroundPosition"),this.backgroundPosition="undefined"==this.backgroundPosition?void 0:this.backgroundPosition,this.setCanvasBg()}setCanvasBg(){const e={default:()=>this.defaultDotsPatternBg(),flux:()=>this.fluxPatternBg(),quad:()=>this.quadPatternBg(),blurry:()=>this.blurryBg(),chaos:()=>this.chaosPatternBg(),flurry:()=>this.flurryPatternBg(),spiral:()=>this.spiralPatternBg(),whirling:()=>this.whirlingPatternBg(),replicate:()=>this.replicatePatternBg(),scribble:()=>this.scribblePatternBg(),squiggly:()=>this.squigglyPatternBg(),gyrrate:()=>this.gyrratePatternBg(),leaves:()=>this.leavesPatternBg(),spot:()=>this.spotPatternBg()};if("none"==this.backgroundPattern)return;const t=this.customBackground||e[this.backgroundPattern]();let r;r="object"==typeof t?(new XMLSerializer).serializeToString(t.node()):t;const a=encodeURIComponent(r).replace(/\(/g,"%28").replace(/\)/g,"%29");null!=this.backgroundSize&&(this.style.backgroundSize=this.backgroundSize||"40%"),null!=this.backgroundPosition&&(this.style.backgroundPosition=this.backgroundPosition||"center");const i="data:image/svg+xml;charset=utf-8,"+a;this.style.setProperty("--ts-root-el-bg-image","url("+i+")")}defaultDotsPatternBg(){const e=Yt("svg").attr("width","20").attr("height","20");return e.append("rect").attr("width","20").attr("height","20").attr("fill","transparent"),e.append("circle").attr("cx","10").attr("cy","10").attr("r","1").attr("fill","rgb(150,150,150)"),this.style.backgroundSize=this.backgroundSize||"2%",e}fluxPatternBg(){return this.style.backgroundSize=this.backgroundSize||"20%",e.flux}quadPatternBg(){return this.style.backgroundSize=this.backgroundSize||"20%",e.quad}blurryBg(){return this.style.backgroundSize="20%",this.style.backgroundPosition=this.backgroundPosition||"center",e.blurry}chaosPatternBg(){return this.style.backgroundSize=this.backgroundSize||"50%",this.style.backgroundPosition=this.backgroundPosition||"center",e.chaos}spiralPatternBg(){return this.style.backgroundSize=this.backgroundSize||"100%",this.style.backgroundPosition=this.backgroundPosition||"center",e.spiral}flurryPatternBg(){return this.style.backgroundSize=this.backgroundSize||"30%",this.style.backgroundPosition=this.backgroundPosition||"center",e.flurry}whirlingPatternBg(){return this.style.backgroundSize=this.backgroundSize||"20%",this.style.backgroundPosition=this.backgroundPosition||"center",e.whirling}replicatePatternBg(){return this.style.backgroundSize=this.backgroundSize||"100%",this.style.backgroundPosition=this.backgroundPosition||"center",e.replicate}scribblePatternBg(){return this.style.backgroundSize=this.backgroundSize||"30%",this.style.backgroundPosition=this.backgroundPosition||"center",e.scribble}squigglyPatternBg(){return this.style.backgroundSize=this.backgroundSize||"20%",this.style.backgroundPosition=this.backgroundPosition||"center",e.squiggly}gyrratePatternBg(){return this.style.backgroundSize=this.backgroundSize||"100%",this.style.backgroundPosition=this.backgroundPosition||"center",e.gyrate}leavesPatternBg(){return this.style.backgroundSize=this.backgroundSize||"40%",this.style.backgroundPosition=this.backgroundPosition||"center",e.leaves}reflectionPatternBg(){return this.style.backgroundSize=this.backgroundSize||"20%",this.style.backgroundPosition=this.backgroundPosition||"center",e.reflection}spotPatternBg(){return this.style.backgroundSize=this.backgroundSize||"40%",this.style.backgroundPosition=this.backgroundPosition||"center",e.spot}}window.customElements.define("ts-root-container",vw);class xw extends HTMLElement{align="auto";constructor(){super()}connectedCallback(){}}window.customElements.define("ts-element",xw);var kw={airline:{airline:[{name:"Aegean Airlines",iataCode:"A3"},{name:"Aeroflot",iataCode:"SU"},{name:"Aerolineas Argentinas",iataCode:"AR"},{name:"Aeromexico",iataCode:"AM"},{name:"Air Algerie",iataCode:"AH"},{name:"Air Arabia",iataCode:"G9"},{name:"Air Canada",iataCode:"AC"},{name:"Air China",iataCode:"CA"},{name:"Air Europa",iataCode:"UX"},{name:"Air France-KLM",iataCode:"AF"},{name:"Air India",iataCode:"AI"},{name:"Air Mauritius",iataCode:"MK"},{name:"Air New Zealand",iataCode:"NZ"},{name:"Air Niugini",iataCode:"PX"},{name:"Air Tahiti",iataCode:"VT"},{name:"Air Tahiti Nui",iataCode:"TN"},{name:"Air Transat",iataCode:"TS"},{name:"AirAsia X",iataCode:"D7"},{name:"AirAsia",iataCode:"AK"},{name:"Aircalin",iataCode:"SB"},{name:"Alaska Airlines",iataCode:"AS"},{name:"Alitalia",iataCode:"AZ"},{name:"All Nippon Airways",iataCode:"NH"},{name:"Allegiant Air",iataCode:"G4"},{name:"American Airlines",iataCode:"AA"},{name:"Asiana Airlines",iataCode:"OZ"},{name:"Avianca",iataCode:"AV"},{name:"Azul Linhas Aereas Brasileiras",iataCode:"AD"},{name:"Azur Air",iataCode:"ZF"},{name:"Beijing Capital Airlines",iataCode:"JD"},{name:"Boliviana de Aviacion",iataCode:"OB"},{name:"British Airways",iataCode:"BA"},{name:"Cathay Pacific",iataCode:"CX"},{name:"Cebu Pacific Air",iataCode:"5J"},{name:"China Airlines",iataCode:"CI"},{name:"China Eastern Airlines",iataCode:"MU"},{name:"China Southern Airlines",iataCode:"CZ"},{name:"Condor",iataCode:"DE"},{name:"Copa Airlines",iataCode:"CM"},{name:"Delta Air Lines",iataCode:"DL"},{name:"Easyfly",iataCode:"VE"},{name:"EasyJet",iataCode:"U2"},{name:"EcoJet",iataCode:"8J"},{name:"Egyptair",iataCode:"MS"},{name:"El Al",iataCode:"LY"},{name:"Emirates Airlines",iataCode:"EK"},{name:"Ethiopian Airlines",iataCode:"ET"},{name:"Etihad Airways",iataCode:"EY"},{name:"EVA Air",iataCode:"BR"},{name:"Fiji Airways",iataCode:"FJ"},{name:"Finnair",iataCode:"AY"},{name:"Flybondi",iataCode:"FO"},{name:"Flydubai",iataCode:"FZ"},{name:"FlySafair",iataCode:"FA"},{name:"Frontier Airlines",iataCode:"F9"},{name:"Garuda Indonesia",iataCode:"GA"},{name:"Go First",iataCode:"G8"},{name:"Gol Linhas Aereas Inteligentes",iataCode:"G3"},{name:"Hainan Airlines",iataCode:"HU"},{name:"Hawaiian Airlines",iataCode:"HA"},{name:"IndiGo Airlines",iataCode:"6E"},{name:"Japan Airlines",iataCode:"JL"},{name:"Jeju Air",iataCode:"7C"},{name:"Jet2",iataCode:"LS"},{name:"JetBlue Airways",iataCode:"B6"},{name:"JetSMART",iataCode:"JA"},{name:"Juneyao Airlines",iataCode:"HO"},{name:"Kenya Airways",iataCode:"KQ"},{name:"Korean Air",iataCode:"KE"},{name:"Kulula.com",iataCode:"MN"},{name:"LATAM Airlines",iataCode:"LA"},{name:"Lion Air",iataCode:"JT"},{name:"LOT Polish Airlines",iataCode:"LO"},{name:"Lufthansa",iataCode:"LH"},{name:"Libyan Airlines",iataCode:"LN"},{name:"Linea Aerea Amaszonas",iataCode:"Z8"},{name:"Malaysia Airlines",iataCode:"MH"},{name:"Nordwind Airlines",iataCode:"N4"},{name:"Norwegian Air Shuttle",iataCode:"DY"},{name:"Oman Air",iataCode:"WY"},{name:"Pakistan International Airlines",iataCode:"PK"},{name:"Pegasus Airlines",iataCode:"PC"},{name:"Philippine Airlines",iataCode:"PR"},{name:"Qantas Group",iataCode:"QF"},{name:"Qatar Airways",iataCode:"QR"},{name:"Republic Airways",iataCode:"YX"},{name:"Royal Air Maroc",iataCode:"AT"},{name:"Ryanair",iataCode:"FR"},{name:"S7 Airlines",iataCode:"S7"},{name:"SAS",iataCode:"SK"},{name:"Satena",iataCode:"9R"},{name:"Saudia",iataCode:"SV"},{name:"Shandong Airlines",iataCode:"SC"},{name:"Sichuan Airlines",iataCode:"3U"},{name:"Singapore Airlines",iataCode:"SQ"},{name:"Sky Airline",iataCode:"H2"},{name:"SkyWest Airlines",iataCode:"OO"},{name:"South African Airways",iataCode:"SA"},{name:"Southwest Airlines",iataCode:"WN"},{name:"SpiceJet",iataCode:"SG"},{name:"Spirit Airlines",iataCode:"NK"},{name:"Spring Airlines",iataCode:"9S"},{name:"SriLankan Airlines",iataCode:"UL"},{name:"Star Peru",iataCode:"2I"},{name:"Sun Country Airlines",iataCode:"SY"},{name:"SunExpress",iataCode:"XQ"},{name:"TAP Air Portugal",iataCode:"TP"},{name:"Thai AirAsia",iataCode:"FD"},{name:"Thai Airways",iataCode:"TG"},{name:"TUI Airways",iataCode:"BY"},{name:"Tunisair",iataCode:"TU"},{name:"Turkish Airlines",iataCode:"TK"},{name:"Ukraine International",iataCode:"PS"},{name:"United Airlines",iataCode:"UA"},{name:"Ural Airlines",iataCode:"U6"},{name:"VietJet Air",iataCode:"VJ"},{name:"Vietnam Airlines",iataCode:"VN"},{name:"Virgin Atlantic Airways",iataCode:"VS"},{name:"Virgin Australia",iataCode:"VA"},{name:"VivaAerobus",iataCode:"VB"},{name:"VOEPASS Linhas Aereas",iataCode:"2Z"},{name:"Volaris",iataCode:"Y4"},{name:"WestJet",iataCode:"WS"},{name:"Wingo",iataCode:"P5"},{name:"Wizz Air",iataCode:"W6"}],airplane:[{name:"Aerospatiale/BAC Concorde",iataTypeCode:"SSC"},{name:"Airbus A300",iataTypeCode:"AB3"},{name:"Airbus A310",iataTypeCode:"310"},{name:"Airbus A310-200",iataTypeCode:"312"},{name:"Airbus A310-300",iataTypeCode:"313"},{name:"Airbus A318",iataTypeCode:"318"},{name:"Airbus A319",iataTypeCode:"319"},{name:"Airbus A319neo",iataTypeCode:"31N"},{name:"Airbus A320",iataTypeCode:"320"},{name:"Airbus A320neo",iataTypeCode:"32N"},{name:"Airbus A321",iataTypeCode:"321"},{name:"Airbus A321neo",iataTypeCode:"32Q"},{name:"Airbus A330",iataTypeCode:"330"},{name:"Airbus A330-200",iataTypeCode:"332"},{name:"Airbus A330-300",iataTypeCode:"333"},{name:"Airbus A330-800neo",iataTypeCode:"338"},{name:"Airbus A330-900neo",iataTypeCode:"339"},{name:"Airbus A340",iataTypeCode:"340"},{name:"Airbus A340-200",iataTypeCode:"342"},{name:"Airbus A340-300",iataTypeCode:"343"},{name:"Airbus A340-500",iataTypeCode:"345"},{name:"Airbus A340-600",iataTypeCode:"346"},{name:"Airbus A350",iataTypeCode:"350"},{name:"Airbus A350-900",iataTypeCode:"359"},{name:"Airbus A350-1000",iataTypeCode:"351"},{name:"Airbus A380",iataTypeCode:"380"},{name:"Airbus A380-800",iataTypeCode:"388"},{name:"Antonov An-12",iataTypeCode:"ANF"},{name:"Antonov An-24",iataTypeCode:"AN4"},{name:"Antonov An-26",iataTypeCode:"A26"},{name:"Antonov An-28",iataTypeCode:"A28"},{name:"Antonov An-30",iataTypeCode:"A30"},{name:"Antonov An-32",iataTypeCode:"A32"},{name:"Antonov An-72",iataTypeCode:"AN7"},{name:"Antonov An-124 Ruslan",iataTypeCode:"A4F"},{name:"Antonov An-140",iataTypeCode:"A40"},{name:"Antonov An-148",iataTypeCode:"A81"},{name:"Antonov An-158",iataTypeCode:"A58"},{name:"Antonov An-225 Mriya",iataTypeCode:"A5F"},{name:"Boeing 707",iataTypeCode:"703"},{name:"Boeing 717",iataTypeCode:"717"},{name:"Boeing 720B",iataTypeCode:"B72"},{name:"Boeing 727",iataTypeCode:"727"},{name:"Boeing 727-100",iataTypeCode:"721"},{name:"Boeing 727-200",iataTypeCode:"722"},{name:"Boeing 737 MAX 7",iataTypeCode:"7M7"},{name:"Boeing 737 MAX 8",iataTypeCode:"7M8"},{name:"Boeing 737 MAX 9",iataTypeCode:"7M9"},{name:"Boeing 737 MAX 10",iataTypeCode:"7MJ"},{name:"Boeing 737",iataTypeCode:"737"},{name:"Boeing 737-100",iataTypeCode:"731"},{name:"Boeing 737-200",iataTypeCode:"732"},{name:"Boeing 737-300",iataTypeCode:"733"},{name:"Boeing 737-400",iataTypeCode:"734"},{name:"Boeing 737-500",iataTypeCode:"735"},{name:"Boeing 737-600",iataTypeCode:"736"},{name:"Boeing 737-700",iataTypeCode:"73G"},{name:"Boeing 737-800",iataTypeCode:"738"},{name:"Boeing 737-900",iataTypeCode:"739"},{name:"Boeing 747",iataTypeCode:"747"},{name:"Boeing 747-100",iataTypeCode:"741"},{name:"Boeing 747-200",iataTypeCode:"742"},{name:"Boeing 747-300",iataTypeCode:"743"},{name:"Boeing 747-400",iataTypeCode:"744"},{name:"Boeing 747-400D",iataTypeCode:"74J"},{name:"Boeing 747-8",iataTypeCode:"748"},{name:"Boeing 747SP",iataTypeCode:"74L"},{name:"Boeing 747SR",iataTypeCode:"74R"},{name:"Boeing 757",iataTypeCode:"757"},{name:"Boeing 757-200",iataTypeCode:"752"},{name:"Boeing 757-300",iataTypeCode:"753"},{name:"Boeing 767",iataTypeCode:"767"},{name:"Boeing 767-200",iataTypeCode:"762"},{name:"Boeing 767-300",iataTypeCode:"763"},{name:"Boeing 767-400",iataTypeCode:"764"},{name:"Boeing 777",iataTypeCode:"777"},{name:"Boeing 777-200",iataTypeCode:"772"},{name:"Boeing 777-200LR",iataTypeCode:"77L"},{name:"Boeing 777-300",iataTypeCode:"773"},{name:"Boeing 777-300ER",iataTypeCode:"77W"},{name:"Boeing 787",iataTypeCode:"787"},{name:"Boeing 787-8",iataTypeCode:"788"},{name:"Boeing 787-9",iataTypeCode:"789"},{name:"Boeing 787-10",iataTypeCode:"781"},{name:"Canadair Challenger",iataTypeCode:"CCJ"},{name:"Canadair CL-44",iataTypeCode:"CL4"},{name:"Canadair Regional Jet 100",iataTypeCode:"CR1"},{name:"Canadair Regional Jet 200",iataTypeCode:"CR2"},{name:"Canadair Regional Jet 700",iataTypeCode:"CR7"},{name:"Canadair Regional Jet 705",iataTypeCode:"CRA"},{name:"Canadair Regional Jet 900",iataTypeCode:"CR9"},{name:"Canadair Regional Jet 1000",iataTypeCode:"CRK"},{name:"De Havilland Canada DHC-2 Beaver",iataTypeCode:"DHP"},{name:"De Havilland Canada DHC-2 Turbo-Beaver",iataTypeCode:"DHR"},{name:"De Havilland Canada DHC-3 Otter",iataTypeCode:"DHL"},{name:"De Havilland Canada DHC-4 Caribou",iataTypeCode:"DHC"},{name:"De Havilland Canada DHC-6 Twin Otter",iataTypeCode:"DHT"},{name:"De Havilland Canada DHC-7 Dash 7",iataTypeCode:"DH7"},{name:"De Havilland Canada DHC-8-100 Dash 8 / 8Q",iataTypeCode:"DH1"},{name:"De Havilland Canada DHC-8-200 Dash 8 / 8Q",iataTypeCode:"DH2"},{name:"De Havilland Canada DHC-8-300 Dash 8 / 8Q",iataTypeCode:"DH3"},{name:"De Havilland Canada DHC-8-400 Dash 8Q",iataTypeCode:"DH4"},{name:"De Havilland DH.104 Dove",iataTypeCode:"DHD"},{name:"De Havilland DH.114 Heron",iataTypeCode:"DHH"},{name:"Douglas DC-3",iataTypeCode:"D3F"},{name:"Douglas DC-6",iataTypeCode:"D6F"},{name:"Douglas DC-8-50",iataTypeCode:"D8T"},{name:"Douglas DC-8-62",iataTypeCode:"D8L"},{name:"Douglas DC-8-72",iataTypeCode:"D8Q"},{name:"Douglas DC-9-10",iataTypeCode:"D91"},{name:"Douglas DC-9-20",iataTypeCode:"D92"},{name:"Douglas DC-9-30",iataTypeCode:"D93"},{name:"Douglas DC-9-40",iataTypeCode:"D94"},{name:"Douglas DC-9-50",iataTypeCode:"D95"},{name:"Douglas DC-10",iataTypeCode:"D10"},{name:"Douglas DC-10-10",iataTypeCode:"D1X"},{name:"Douglas DC-10-30",iataTypeCode:"D1Y"},{name:"Embraer 170",iataTypeCode:"E70"},{name:"Embraer 175",iataTypeCode:"E75"},{name:"Embraer 190",iataTypeCode:"E90"},{name:"Embraer 195",iataTypeCode:"E95"},{name:"Embraer E190-E2",iataTypeCode:"290"},{name:"Embraer E195-E2",iataTypeCode:"295"},{name:"Embraer EMB.110 Bandeirante",iataTypeCode:"EMB"},{name:"Embraer EMB.120 Brasilia",iataTypeCode:"EM2"},{name:"Embraer Legacy 600",iataTypeCode:"ER3"},{name:"Embraer Phenom 100",iataTypeCode:"EP1"},{name:"Embraer Phenom 300",iataTypeCode:"EP3"},{name:"Embraer RJ135",iataTypeCode:"ER3"},{name:"Embraer RJ140",iataTypeCode:"ERD"},{name:"Embraer RJ145 Amazon",iataTypeCode:"ER4"},{name:"Ilyushin IL18",iataTypeCode:"IL8"},{name:"Ilyushin IL62",iataTypeCode:"IL6"},{name:"Ilyushin IL76",iataTypeCode:"IL7"},{name:"Ilyushin IL86",iataTypeCode:"ILW"},{name:"Ilyushin IL96-300",iataTypeCode:"I93"},{name:"Ilyushin IL114",iataTypeCode:"I14"},{name:"Lockheed L-182 / 282 / 382 (L-100) Hercules",iataTypeCode:"LOH"},{name:"Lockheed L-188 Electra",iataTypeCode:"LOE"},{name:"Lockheed L-1011 Tristar",iataTypeCode:"L10"},{name:"Lockheed L-1049 Super Constellation",iataTypeCode:"L49"},{name:"McDonnell Douglas MD11",iataTypeCode:"M11"},{name:"McDonnell Douglas MD80",iataTypeCode:"M80"},{name:"McDonnell Douglas MD81",iataTypeCode:"M81"},{name:"McDonnell Douglas MD82",iataTypeCode:"M82"},{name:"McDonnell Douglas MD83",iataTypeCode:"M83"},{name:"McDonnell Douglas MD87",iataTypeCode:"M87"},{name:"McDonnell Douglas MD88",iataTypeCode:"M88"},{name:"McDonnell Douglas MD90",iataTypeCode:"M90"},{name:"Sukhoi Superjet 100-95",iataTypeCode:"SU9"},{name:"Tupolev Tu-134",iataTypeCode:"TU3"},{name:"Tupolev Tu-154",iataTypeCode:"TU5"},{name:"Tupolev Tu-204",iataTypeCode:"T20"},{name:"Yakovlev Yak-40",iataTypeCode:"YK4"},{name:"Yakovlev Yak-42",iataTypeCode:"YK2"}],airport:[{name:"Adelaide International Airport",iataCode:"ADL"},{name:"Adolfo Suarez Madrid-Barajas Airport",iataCode:"MAD"},{name:"Aeroparque Jorge Newbery Airport",iataCode:"AEP"},{name:"Afonso Pena International Airport",iataCode:"CWB"},{name:"Alfonso Bonilla Aragon International Airport",iataCode:"CLO"},{name:"Amsterdam Airport Schiphol",iataCode:"AMS"},{name:"Arturo Merino Benitez International Airport",iataCode:"SCL"},{name:"Auckland International Airport",iataCode:"AKL"},{name:"Beijing Capital International Airport",iataCode:"PEK"},{name:"Belem Val de Cans International Airport",iataCode:"BEL"},{name:"Belo Horizonte Tancredo Neves International Airport",iataCode:"CNF"},{name:"Berlin-Tegel Airport",iataCode:"TXL"},{name:"Bole International Airport",iataCode:"ADD"},{name:"Brasilia-Presidente Juscelino Kubitschek International Airport",iataCode:"BSB"},{name:"Brisbane International Airport",iataCode:"BNE"},{name:"Brussels Airport",iataCode:"BRU"},{name:"Cairns Airport",iataCode:"CNS"},{name:"Cairo International Airport",iataCode:"CAI"},{name:"Canberra Airport",iataCode:"CBR"},{name:"Capetown International Airport",iataCode:"CPT"},{name:"Charles de Gaulle International Airport",iataCode:"CDG"},{name:"Charlotte Douglas International Airport",iataCode:"CLT"},{name:"Chengdu Shuangliu International Airport",iataCode:"CTU"},{name:"Chhatrapati Shivaji International Airport",iataCode:"BOM"},{name:"Chicago O'Hare International Airport",iataCode:"ORD"},{name:"Chongqing Jiangbei International Airport",iataCode:"CKG"},{name:"Christchurch International Airport",iataCode:"CHC"},{name:"Copenhagen Kastrup Airport",iataCode:"CPH"},{name:"Dallas Fort Worth International Airport",iataCode:"DFW"},{name:"Daniel K. Inouye International Airport",iataCode:"HNL"},{name:"Denver International Airport",iataCode:"DEN"},{name:"Don Mueang International Airport",iataCode:"DMK"},{name:"Dubai International Airport",iataCode:"DXB"},{name:"Dublin Airport",iataCode:"DUB"},{name:"Dusseldorf Airport",iataCode:"DUS"},{name:"El Dorado International Airport",iataCode:"BOG"},{name:"Eleftherios Venizelos International Airport",iataCode:"ATH"},{name:"Faa'a International Airport",iataCode:"PPT"},{name:"Fort Lauderdale Hollywood International Airport",iataCode:"FLL"},{name:"Fortaleza Pinto Martins International Airport",iataCode:"FOR"},{name:"Frankfurt am Main Airport",iataCode:"FRA"},{name:"George Bush Intercontinental Houston Airport",iataCode:"IAH"},{name:"Gold Coast Airport",iataCode:"OOL"},{name:"Guarulhos - Governador Andre Franco Montoro International Airport",iataCode:"GRU"},{name:"Hartsfield-Jackson Atlanta International Airport",iataCode:"ATL"},{name:"Helsinki Vantaa Airport",iataCode:"HEL"},{name:"Hobart International Airport",iataCode:"HBA"},{name:"Hong Kong International Airport",iataCode:"HKG"},{name:"Houari Boumediene Airport",iataCode:"ALG"},{name:"Hurgada International Airport",iataCode:"HRG"},{name:"Incheon International Airport",iataCode:"ICN"},{name:"Indira Gandhi International Airport",iataCode:"DEL"},{name:"Istanbul Airport",iataCode:"IST"},{name:"Jacksons International Airport",iataCode:"POM"},{name:"Jeju International Airport",iataCode:"CJU"},{name:"John F Kennedy International Airport",iataCode:"JFK"},{name:"Jorge Chavez International Airport",iataCode:"LIM"},{name:"Jose Maria Cordova International Airport",iataCode:"MDE"},{name:"Josep Tarradellas Barcelona-El Prat Airport",iataCode:"BCN"},{name:"Kahului Airport",iataCode:"OGG"},{name:"King Abdulaziz International Airport",iataCode:"JED"},{name:"Kuala Lumpur International Airport",iataCode:"KUL"},{name:"Kunming Changshui International Airport",iataCode:"KMG"},{name:"La Tontouta International Airport",iataCode:"NOU"},{name:"Leonardo da Vinci-Fiumicino Airport",iataCode:"FCO"},{name:"London Heathrow Airport",iataCode:"LHR"},{name:"Los Angeles International Airport",iataCode:"LAX"},{name:"McCarran International Airport",iataCode:"LAS"},{name:"Melbourne International Airport",iataCode:"MEL"},{name:"Mexico City International Airport",iataCode:"MEX"},{name:"Miami International Airport",iataCode:"MIA"},{name:"Ministro Pistarini International Airport",iataCode:"EZE"},{name:"Minneapolis-St Paul International/Wold-Chamberlain Airport",iataCode:"MSP"},{name:"Mohammed V International Airport",iataCode:"CMN"},{name:"Moscow Domodedovo Airport",iataCode:"DME"},{name:"Munich Airport",iataCode:"MUC"},{name:"Murtala Muhammed International Airport",iataCode:"LOS"},{name:"Nadi International Airport",iataCode:"NAN"},{name:"Nairobi Jomo Kenyatta International Airport",iataCode:"NBO"},{name:"Narita International Airport",iataCode:"NRT"},{name:"Newark Liberty International Airport",iataCode:"EWR"},{name:"Ninoy Aquino International Airport",iataCode:"MNL"},{name:"Noumea Magenta Airport",iataCode:"GEA"},{name:"O. R. Tambo International Airport",iataCode:"JNB"},{name:"Orlando International Airport",iataCode:"MCO"},{name:"Oslo Lufthavn",iataCode:"OSL"},{name:"Perth Airport",iataCode:"PER"},{name:"Phoenix Sky Harbor International Airport",iataCode:"PHX"},{name:"Recife Guararapes-Gilberto Freyre International Airport",iataCode:"REC"},{name:"Rio de Janeiro Galeao International Airport",iataCode:"GIG"},{name:"Salgado Filho International Airport",iataCode:"POA"},{name:"Salvador Deputado Luis Eduardo Magalhaes International Airport",iataCode:"SSA"},{name:"San Francisco International Airport",iataCode:"SFO"},{name:"Santos Dumont Airport",iataCode:"SDU"},{name:"Sao Paulo-Congonhas Airport",iataCode:"CGH"},{name:"Seattle Tacoma International Airport",iataCode:"SEA"},{name:"Shanghai Hongqiao International Airport",iataCode:"SHA"},{name:"Shanghai Pudong International Airport",iataCode:"PVG"},{name:"Shenzhen Bao'an International Airport",iataCode:"SZX"},{name:"Sheremetyevo International Airport",iataCode:"SVO"},{name:"Singapore Changi Airport",iataCode:"SIN"},{name:"Soekarno-Hatta International Airport",iataCode:"CGK"},{name:'Stockholm-Arlanda Airport"',iataCode:"ARN"},{name:"Suvarnabhumi Airport",iataCode:"BKK"},{name:"Sydney Kingsford Smith International Airport",iataCode:"SYD"},{name:"Taiwan Taoyuan International Airport",iataCode:"TPE"},{name:"Tan Son Nhat International Airport",iataCode:"SGN"},{name:"Tokyo Haneda International Airport",iataCode:"HND"},{name:"Toronto Pearson International Airport",iataCode:"YYZ"},{name:"Tunis Carthage International Airport",iataCode:"TUN"},{name:"Vancouver International Airport",iataCode:"YVR"},{name:"Vienna International Airport",iataCode:"VIE"},{name:"Viracopos International Airport",iataCode:"VCP"},{name:"Vnukovo International Airport",iataCode:"VKO"},{name:"Wellington International Airport",iataCode:"WLG"},{name:"Xi'an Xianyang International Airport",iataCode:"XIY"},{name:"Zhukovsky International Airport",iataCode:"ZIA"},{name:"Zurich Airport",iataCode:"ZRH"}]},animal:{bear:["American black bear","Asian black bear","Brown bear","Giant panda","Polar bear","Sloth bear","Spectacled bear","Sun bear"],bird:["Abert's Towhee","Acadian Flycatcher","Acorn Woodpecker","Alder Flycatcher","Aleutian Tern","Allen's Hummingbird","Altamira Oriole","American Avocet","American Bittern","American Black Duck","American Coot","American Crow","American Dipper","American Golden-Plover","American Goldfinch","American Kestrel","American Oystercatcher","American Pipit","American Redstart","American Robin","American Tree Sparrow","American White Pelican","American Wigeon","American Woodcock","Ancient Murrelet","Anhinga","Anna's Hummingbird","Antillean Nighthawk","Antillean Palm Swift","Aplomado Falcon","Arctic Loon","Arctic Tern","Arctic Warbler","Ash-throated Flycatcher","Ashy Storm-Petrel","Asian Brown Flycatcher","Atlantic Puffin","Audubon's Oriole","Audubon's Shearwater","Aztec Thrush","Azure Gallinule","Bachman's Sparrow","Bachman's Warbler","Bahama Mockingbird","Bahama Swallow","Bahama Woodstar","Baikal Teal","Baird's Sandpiper","Baird's Sparrow","Bald Eagle","Baltimore Oriole","Bananaquit","Band-rumped Storm-Petrel","Band-tailed Gull","Band-tailed Pigeon","Bank Swallow","Bar-tailed Godwit","Barn Owl","Barn Swallow","Barnacle Goose","Barred Owl","Barrow's Goldeneye","Bay-breasted Warbler","Bean Goose","Bell's Vireo","Belted Kingfisher","Bendire's Thrasher","Berylline Hummingbird","Bewick's Wren","Bicknell's Thrush","Black Catbird","Black Guillemot","Black Noddy","Black Oystercatcher","Black Phoebe","Black Rail","Black Rosy-Finch","Black Scoter","Black Skimmer","Black Storm-Petrel","Black Swift","Black Tern","Black Turnstone","Black Vulture","Black-and-white Warbler","Black-backed Wagtail","Black-backed Woodpecker","Black-bellied Plover","Black-bellied Whistling-Duck","Black-billed Cuckoo","Black-billed Magpie","Black-browed Albatross","Black-capped Chickadee","Black-capped Gnatcatcher","Black-capped Petrel","Black-capped Vireo","Black-chinned Hummingbird","Black-chinned Sparrow","Black-crowned Night-Heron","Black-faced Grassquit","Black-footed Albatross","Black-headed Grosbeak","Black-headed Gull","Black-legged Kittiwake","Black-necked Stilt","Black-tailed Gnatcatcher","Black-tailed Godwit","Black-tailed Gull","Black-throated Blue Warbler","Black-throated Gray Warbler","Black-throated Green Warbler","Black-throated Sparrow","Black-vented Oriole","Black-vented Shearwater","Black-whiskered Vireo","Black-winged Stilt","Blackburnian Warbler","Blackpoll Warbler","Blue Bunting","Blue Grosbeak","Blue Grouse","Blue Jay","Blue Mockingbird","Blue-footed Booby","Blue-gray Gnatcatcher","Blue-headed Vireo","Blue-throated Hummingbird","Blue-winged Teal","Blue-winged Warbler","Bluethroat","Boat-tailed Grackle","Bobolink","Bohemian Waxwing","Bonaparte's Gull","Boreal Chickadee","Boreal Owl","Botteri's Sparrow","Brambling","Brandt's Cormorant","Brant","Brewer's Blackbird","Brewer's Sparrow","Bridled Tern","Bridled Titmouse","Bristle-thighed Curlew","Broad-billed Hummingbird","Broad-billed Sandpiper","Broad-tailed Hummingbird","Broad-winged Hawk","Bronzed Cowbird","Brown Booby","Brown Creeper","Brown Jay","Brown Noddy","Brown Pelican","Brown Shrike","Brown Thrasher","Brown-capped Rosy-Finch","Brown-chested Martin","Brown-crested Flycatcher","Brown-headed Cowbird","Brown-headed Nuthatch","Budgerigar","Buff-bellied Hummingbird","Buff-breasted Flycatcher","Buff-breasted Sandpiper","Buff-collared Nightjar","Bufflehead","Buller's Shearwater","Bullock's Oriole","Bumblebee Hummingbird","Burrowing Owl","Bushtit","Cactus Wren","California Condor","California Gnatcatcher","California Gull","California Quail","California Thrasher","California Towhee","Calliope Hummingbird","Canada Goose","Canada Warbler","Canvasback","Canyon Towhee","Canyon Wren","Cape May Warbler","Caribbean Elaenia","Carolina Chickadee","Carolina Parakeet","Carolina Wren","Caspian Tern","Cassin's Auklet","Cassin's Finch","Cassin's Kingbird","Cassin's Sparrow","Cassin's Vireo","Cattle Egret","Cave Swallow","Cedar Waxwing","Cerulean Warbler","Chestnut-backed Chickadee","Chestnut-collared Longspur","Chestnut-sided Warbler","Chihuahuan Raven","Chimney Swift","Chinese Egret","Chipping Sparrow","Chuck-will's-widow","Chukar","Cinnamon Hummingbird","Cinnamon Teal","Citrine Wagtail","Clapper Rail","Clark's Grebe","Clark's Nutcracker","Clay-colored Robin","Clay-colored Sparrow","Cliff Swallow","Colima Warbler","Collared Forest-Falcon","Collared Plover","Common Black-Hawk","Common Chaffinch","Common Crane","Common Cuckoo","Common Eider","Common Goldeneye","Common Grackle","Common Greenshank","Common Ground-Dove","Common House-Martin","Common Loon","Common Merganser","Common Moorhen","Common Murre","Common Nighthawk","Common Pauraque","Common Pochard","Common Poorwill","Common Raven","Common Redpoll","Common Ringed Plover","Common Rosefinch","Common Sandpiper","Common Snipe","Common Swift","Common Tern","Common Yellowthroat","Connecticut Warbler","Cook's Petrel","Cooper's Hawk","Cordilleran Flycatcher","Corn Crake","Cory's Shearwater","Costa's Hummingbird","Couch's Kingbird","Crane Hawk","Craveri's Murrelet","Crescent-chested Warbler","Crested Auklet","Crested Caracara","Crested Myna","Crimson-collared Grosbeak","Crissal Thrasher","Cuban Martin","Curlew Sandpiper","Curve-billed Thrasher","Dark-eyed Junco","Dickcissel","Double-crested Cormorant","Double-striped Thick-knee","Dovekie","Downy Woodpecker","Dunlin","Dusky Flycatcher","Dusky Thrush","Dusky Warbler","Dusky-capped Flycatcher","Eared Grebe","Eared Trogon","Eastern Bluebird","Eastern Kingbird","Eastern Meadowlark","Eastern Phoebe","Eastern Screech-Owl","Eastern Towhee","Eastern Wood-Pewee","Elegant Tern","Elegant Trogon","Elf Owl","Emperor Goose","Eskimo Curlew","Eurasian Blackbird","Eurasian Bullfinch","Eurasian Collared-Dove","Eurasian Coot","Eurasian Curlew","Eurasian Dotterel","Eurasian Hobby","Eurasian Jackdaw","Eurasian Kestrel","Eurasian Oystercatcher","Eurasian Siskin","Eurasian Tree Sparrow","Eurasian Wigeon","Eurasian Woodcock","Eurasian Wryneck","European Golden-Plover","European Starling","European Storm-Petrel","European Turtle-Dove","Evening Grosbeak","Eyebrowed Thrush","Falcated Duck","Fan-tailed Warbler","Far Eastern Curlew","Ferruginous Hawk","Ferruginous Pygmy-Owl","Field Sparrow","Fieldfare","Fish Crow","Five-striped Sparrow","Flame-colored Tanager","Flammulated Owl","Flesh-footed Shearwater","Florida Scrub-Jay","Fork-tailed Flycatcher","Fork-tailed Storm-Petrel","Fork-tailed Swift","Forster's Tern","Fox Sparrow","Franklin's Gull","Fulvous Whistling-Duck","Gadwall","Gambel's Quail","Garganey","Gila Woodpecker","Gilded Flicker","Glaucous Gull","Glaucous-winged Gull","Glossy Ibis","Golden Eagle","Golden-cheeked Warbler","Golden-crowned Kinglet","Golden-crowned Sparrow","Golden-crowned Warbler","Golden-fronted Woodpecker","Golden-winged Warbler","Grace's Warbler","Grasshopper Sparrow","Gray Bunting","Gray Catbird","Gray Flycatcher","Gray Hawk","Gray Jay","Gray Kingbird","Gray Partridge","Gray Silky-flycatcher","Gray Vireo","Gray Wagtail","Gray-breasted Martin","Gray-cheeked Thrush","Gray-crowned Rosy-Finch","Gray-crowned Yellowthroat","Gray-headed Chickadee","Gray-spotted Flycatcher","Gray-tailed Tattler","Great Auk","Great Black-backed Gull","Great Blue Heron","Great Cormorant","Great Crested Flycatcher","Great Egret","Great Frigatebird","Great Gray Owl","Great Horned Owl","Great Kiskadee","Great Knot","Great Skua","Great Spotted Woodpecker","Great-tailed Grackle","Greater Flamingo","Greater Pewee","Greater Prairie-chicken","Greater Roadrunner","Greater Scaup","Greater Shearwater","Greater White-fronted Goose","Greater Yellowlegs","Green Heron","Green Jay","Green Kingfisher","Green Sandpiper","Green Violet-ear","Green-breasted Mango","Green-tailed Towhee","Green-winged Teal","Greenish Elaenia","Groove-billed Ani","Gull-billed Tern","Gyrfalcon","Hairy Woodpecker","Hammond's Flycatcher","Harlequin Duck","Harris's Hawk","Harris's Sparrow","Hawfinch","Heermann's Gull","Henslow's Sparrow","Hepatic Tanager","Herald Petrel","Hermit Thrush","Hermit Warbler","Herring Gull","Himalayan Snowcock","Hoary Redpoll","Hooded Merganser","Hooded Oriole","Hooded Warbler","Hook-billed Kite","Hoopoe","Horned Grebe","Horned Lark","Horned Puffin","House Finch","House Sparrow","House Wren","Hudsonian Godwit","Hutton's Vireo","Iceland Gull","Inca Dove","Indigo Bunting","Island Scrub-Jay","Ivory Gull","Ivory-billed Woodpecker","Jabiru","Jack Snipe","Jungle Nightjar","Juniper Titmouse","Kentucky Warbler","Key West Quail-Dove","Killdeer","King Eider","King Rail","Kirtland's Warbler","Kittlitz's Murrelet","La Sagra's Flycatcher","Labrador Duck","Ladder-backed Woodpecker","Lanceolated Warbler","Lapland Longspur","Large-billed Tern","Lark Bunting","Lark Sparrow","Laughing Gull","Lawrence's Goldfinch","Laysan Albatross","Lazuli Bunting","Le Conte's Sparrow","Le Conte's Thrasher","Leach's Storm-Petrel","Least Auklet","Least Bittern","Least Flycatcher","Least Grebe","Least Sandpiper","Least Storm-Petrel","Least Tern","Lesser Black-backed Gull","Lesser Frigatebird","Lesser Goldfinch","Lesser Nighthawk","Lesser Prairie-chicken","Lesser Scaup","Lesser White-fronted Goose","Lesser Yellowlegs","Lewis's Woodpecker","Limpkin","Lincoln's Sparrow","Little Blue Heron","Little Bunting","Little Curlew","Little Egret","Little Gull","Little Ringed Plover","Little Shearwater","Little Stint","Loggerhead Kingbird","Loggerhead Shrike","Long-billed Curlew","Long-billed Dowitcher","Long-billed Murrelet","Long-billed Thrasher","Long-eared Owl","Long-tailed Jaeger","Long-toed Stint","Louisiana Waterthrush","Lucifer Hummingbird","Lucy's Warbler","MacGillivray's Warbler","Magnificent Frigatebird","Magnificent Hummingbird","Magnolia Warbler","Mallard","Mangrove Cuckoo","Manx Shearwater","Marbled Godwit","Marbled Murrelet","Marsh Sandpiper","Marsh Wren","Masked Booby","Masked Duck","Masked Tityra","McCown's Longspur","McKay's Bunting","Merlin","Mew Gull","Mexican Chickadee","Mexican Jay","Middendorff's Grasshopper-Warbler","Mississippi Kite","Mongolian Plover","Monk Parakeet","Montezuma Quail","Mottled Duck","Mottled Owl","Mottled Petrel","Mountain Bluebird","Mountain Chickadee","Mountain Plover","Mountain Quail","Mourning Dove","Mourning Warbler","Mugimaki Flycatcher","Murphy's Petrel","Muscovy Duck","Mute Swan","Narcissus Flycatcher","Nashville Warbler","Nelson's Sharp-tailed Sparrow","Neotropic Cormorant","Northern Beardless-Tyrannulet","Northern Bobwhite","Northern Cardinal","Northern Flicker","Northern Fulmar","Northern Gannet","Northern Goshawk","Northern Harrier","Northern Hawk Owl","Northern Jacana","Northern Lapwing","Northern Mockingbird","Northern Parula","Northern Pintail","Northern Pygmy-Owl","Northern Rough-winged Swallow","Northern Saw-whet Owl","Northern Shoveler","Northern Shrike","Northern Waterthrush","Northern Wheatear","Northwestern Crow","Nuttall's Woodpecker","Nutting's Flycatcher","Oak Titmouse","Oldsquaw","Olive Sparrow","Olive Warbler","Olive-backed Pipit","Olive-sided Flycatcher","Orange-crowned Warbler","Orchard Oriole","Oriental Cuckoo","Oriental Greenfinch","Oriental Pratincole","Oriental Scops-Owl","Oriental Turtle-Dove","Osprey","Ovenbird","Pacific Golden-Plover","Pacific Loon","Pacific-slope Flycatcher","Paint-billed Crake","Painted Bunting","Painted Redstart","Pallas's Bunting","Palm Warbler","Parakeet Auklet","Parasitic Jaeger","Passenger Pigeon","Pechora Pipit","Pectoral Sandpiper","Pelagic Cormorant","Peregrine Falcon","Phainopepla","Philadelphia Vireo","Pied-billed Grebe","Pigeon Guillemot","Pileated Woodpecker","Pin-tailed Snipe","Pine Bunting","Pine Grosbeak","Pine Siskin","Pine Warbler","Pink-footed Goose","Pink-footed Shearwater","Pinyon Jay","Piping Plover","Plain Chachalaca","Plain-capped Starthroat","Plumbeous Vireo","Pomarine Jaeger","Prairie Falcon","Prairie Warbler","Prothonotary Warbler","Purple Finch","Purple Gallinule","Purple Martin","Purple Sandpiper","Pygmy Nuthatch","Pyrrhuloxia","Razorbill","Red Crossbill","Red Knot","Red Phalarope","Red-bellied Woodpecker","Red-billed Pigeon","Red-billed Tropicbird","Red-breasted Flycatcher","Red-breasted Merganser","Red-breasted Nuthatch","Red-breasted Sapsucker","Red-cockaded Woodpecker","Red-crowned Parrot","Red-eyed Vireo","Red-faced Cormorant","Red-faced Warbler","Red-flanked Bluetail","Red-footed Booby","Red-headed Woodpecker","Red-legged Kittiwake","Red-naped Sapsucker","Red-necked Grebe","Red-necked Phalarope","Red-necked Stint","Red-shouldered Hawk","Red-tailed Hawk","Red-tailed Tropicbird","Red-throated Loon","Red-throated Pipit","Red-whiskered Bulbul","Red-winged Blackbird","Reddish Egret","Redhead","Redwing","Reed Bunting","Rhinoceros Auklet","Ring-billed Gull","Ring-necked Duck","Ring-necked Pheasant","Ringed Kingfisher","Roadside Hawk","Rock Dove","Rock Ptarmigan","Rock Sandpiper","Rock Wren","Rose-breasted Grosbeak","Rose-throated Becard","Roseate Spoonbill","Roseate Tern","Ross's Goose","Ross's Gull","Rough-legged Hawk","Royal Tern","Ruby-crowned Kinglet","Ruby-throated Hummingbird","Ruddy Duck","Ruddy Ground-Dove","Ruddy Quail-Dove","Ruddy Turnstone","Ruff","Ruffed Grouse","Rufous Hummingbird","Rufous-backed Robin","Rufous-capped Warbler","Rufous-crowned Sparrow","Rufous-winged Sparrow","Rustic Bunting","Rusty Blackbird","Sabine's Gull","Sage Grouse","Sage Sparrow","Sage Thrasher","Saltmarsh Sharp-tailed Sparrow","Sanderling","Sandhill Crane","Sandwich Tern","Savannah Sparrow","Say's Phoebe","Scaled Quail","Scaly-naped Pigeon","Scarlet Ibis","Scarlet Tanager","Scissor-tailed Flycatcher","Scott's Oriole","Seaside Sparrow","Sedge Wren","Semipalmated Plover","Semipalmated Sandpiper","Sharp-shinned Hawk","Sharp-tailed Grouse","Sharp-tailed Sandpiper","Shiny Cowbird","Short-billed Dowitcher","Short-eared Owl","Short-tailed Albatross","Short-tailed Hawk","Short-tailed Shearwater","Shy Albatross","Siberian Accentor","Siberian Blue Robin","Siberian Flycatcher","Siberian Rubythroat","Sky Lark","Slate-throated Redstart","Slaty-backed Gull","Slender-billed Curlew","Smew","Smith's Longspur","Smooth-billed Ani","Snail Kite","Snow Bunting","Snow Goose","Snowy Egret","Snowy Owl","Snowy Plover","Solitary Sandpiper","Song Sparrow","Sooty Shearwater","Sooty Tern","Sora","South Polar Skua","Southern Martin","Spectacled Eider","Spoonbill Sandpiper","Spot-billed Duck","Spot-breasted Oriole","Spotted Dove","Spotted Owl","Spotted Rail","Spotted Redshank","Spotted Sandpiper","Spotted Towhee","Sprague's Pipit","Spruce Grouse","Stejneger's Petrel","Steller's Eider","Steller's Jay","Steller's Sea-Eagle","Stilt Sandpiper","Stonechat","Streak-backed Oriole","Streaked Shearwater","Strickland's Woodpecker","Stripe-headed Tanager","Sulphur-bellied Flycatcher","Summer Tanager","Surf Scoter","Surfbird","Swainson's Hawk","Swainson's Thrush","Swainson's Warbler","Swallow-tailed Kite","Swamp Sparrow","Tamaulipas Crow","Tawny-shouldered Blackbird","Temminck's Stint","Tennessee Warbler","Terek Sandpiper","Thayer's Gull","Thick-billed Kingbird","Thick-billed Murre","Thick-billed Parrot","Thick-billed Vireo","Three-toed Woodpecker","Townsend's Solitaire","Townsend's Warbler","Tree Pipit","Tree Swallow","Tricolored Blackbird","Tricolored Heron","Tropical Kingbird","Tropical Parula","Trumpeter Swan","Tufted Duck","Tufted Flycatcher","Tufted Puffin","Tufted Titmouse","Tundra Swan","Turkey Vulture","Upland Sandpiper","Varied Bunting","Varied Thrush","Variegated Flycatcher","Vaux's Swift","Veery","Verdin","Vermilion Flycatcher","Vesper Sparrow","Violet-crowned Hummingbird","Violet-green Swallow","Virginia Rail","Virginia's Warbler","Wandering Albatross","Wandering Tattler","Warbling Vireo","Wedge-rumped Storm-Petrel","Wedge-tailed Shearwater","Western Bluebird","Western Grebe","Western Gull","Western Kingbird","Western Meadowlark","Western Reef-Heron","Western Sandpiper","Western Screech-Owl","Western Scrub-Jay","Western Tanager","Western Wood-Pewee","Whimbrel","Whip-poor-will","Whiskered Auklet","Whiskered Screech-Owl","Whiskered Tern","White Ibis","White Wagtail","White-breasted Nuthatch","White-cheeked Pintail","White-chinned Petrel","White-collared Seedeater","White-collared Swift","White-crowned Pigeon","White-crowned Sparrow","White-eared Hummingbird","White-eyed Vireo","White-faced Ibis","White-faced Storm-Petrel","White-headed Woodpecker","White-rumped Sandpiper","White-tailed Eagle","White-tailed Hawk","White-tailed Kite","White-tailed Ptarmigan","White-tailed Tropicbird","White-throated Needletail","White-throated Robin","White-throated Sparrow","White-throated Swift","White-tipped Dove","White-winged Crossbill","White-winged Dove","White-winged Parakeet","White-winged Scoter","White-winged Tern","Whooper Swan","Whooping Crane","Wild Turkey","Willet","Williamson's Sapsucker","Willow Flycatcher","Willow Ptarmigan","Wilson's Phalarope","Wilson's Plover","Wilson's Storm-Petrel","Wilson's Warbler","Winter Wren","Wood Duck","Wood Sandpiper","Wood Stork","Wood Thrush","Wood Warbler","Worm-eating Warbler","Worthen's Sparrow","Wrentit","Xantus's Hummingbird","Xantus's Murrelet","Yellow Bittern","Yellow Grosbeak","Yellow Rail","Yellow Wagtail","Yellow Warbler","Yellow-bellied Flycatcher","Yellow-bellied Sapsucker","Yellow-billed Cuckoo","Yellow-billed Loon","Yellow-billed Magpie","Yellow-breasted Bunting","Yellow-breasted Chat","Yellow-crowned Night-Heron","Yellow-eyed Junco","Yellow-faced Grassquit","Yellow-footed Gull","Yellow-green Vireo","Yellow-headed Blackbird","Yellow-legged Gull","Yellow-nosed Albatross","Yellow-rumped Warbler","Yellow-throated Vireo","Yellow-throated Warbler","Yucatan Vireo","Zenaida Dove","Zone-tailed Hawk"],cat:["Abyssinian","American Bobtail","American Curl","American Shorthair","American Wirehair","Balinese","Bengal","Birman","Bombay","British Shorthair","Burmese","Chartreux","Chausie","Cornish Rex","Devon Rex","Donskoy","Egyptian Mau","Exotic Shorthair","Havana","Highlander","Himalayan","Japanese Bobtail","Korat","Kurilian Bobtail","LaPerm","Maine Coon","Manx","Minskin","Munchkin","Nebelung","Norwegian Forest Cat","Ocicat","Ojos Azules","Oriental","Persian","Peterbald","Pixiebob","Ragdoll","Russian Blue","Savannah","Scottish Fold","Selkirk Rex","Serengeti","Siamese","Siberian","Singapura","Snowshoe","Sokoke","Somali","Sphynx","Thai","Tonkinese","Toyger","Turkish Angora","Turkish Van"],cetacean:["Amazon River Dolphin","Arnoux's Beaked Whale","Atlantic Humpbacked Dolphin","Atlantic Spotted Dolphin","Atlantic White-Sided Dolphin","Australian Snubfin Dolphin","Australian humpback Dolphin","Blue Whale","Bottlenose Dolphin","Bryde’s whale","Burrunan Dolphin","Chilean Dolphin","Chinese River Dolphin","Chinese White Dolphin","Clymene Dolphin","Commerson’s Dolphin","Costero","Dusky Dolphin","False Killer Whale","Fin Whale","Fraser’s Dolphin","Ganges River Dolphin","Guiana Dolphin","Heaviside’s Dolphin","Hector’s Dolphin","Hourglass Dolphin","Humpback whale","Indo-Pacific Bottlenose Dolphin","Indo-Pacific Hump-backed Dolphin","Irrawaddy Dolphin","Killer Whale (Orca)","La Plata Dolphin","Long-Beaked Common Dolphin","Long-finned Pilot Whale","Longman's Beaked Whale","Melon-headed Whale","Northern Rightwhale Dolphin","Omura’s whale","Pacific White-Sided Dolphin","Pantropical Spotted Dolphin","Peale’s Dolphin","Pygmy Killer Whale","Risso’s Dolphin","Rough-Toothed Dolphin","Sei Whale","Short-Beaked Common Dolphin","Short-finned Pilot Whale","Southern Bottlenose Whale","Southern Rightwhale Dolphin","Sperm Whale","Spinner Dolphin","Striped Dolphin","Tucuxi","White-Beaked Dolphin"],cow:["Aberdeen Angus","Abergele","Abigar","Abondance","Abyssinian Shorthorned Zebu","Aceh","Achham","Adamawa","Adaptaur","Afar","Africangus","Afrikaner","Agerolese","Alambadi","Alatau","Albanian","Albera","Alderney","Alentejana","Aleutian wild cattle","Aliad Dinka","Alistana-Sanabresa","Allmogekor","Alur","American","American Angus","American Beef Friesian","American Brown Swiss","American Milking Devon","American White Park","Amerifax","Amrit Mahal","Amsterdam Island cattle","Anatolian Black","Andalusian Black","Andalusian Blond","Andalusian Grey","Angeln","Angoni","Ankina","Ankole","Ankole-Watusi","Aracena","Arado","Argentine Criollo","Argentine Friesian","Armorican","Arouquesa","Arsi","Asturian Mountain","Asturian Valley","Aubrac","Aulie-Ata","Aure et Saint-Girons","Australian Braford","Australian Brangus","Australian Charbray","Australian Friesian Sahiwal","Australian Lowline","Australian Milking Zebu","Australian Shorthorn","Austrian Simmental","Austrian Yellow","Avileña-Negra Ibérica","Avétonou","Aweil Dinka","Ayrshire","Azaouak","Azebuado","Azerbaijan Zebu","Azores","Bachaur cattle","Baherie cattle","Bakosi cattle","Balancer","Baoule","Bargur cattle","Barrosã","Barzona","Bazadaise","Bedit","Beef Freisian","Beefalo","Beefmaker","Beefmaster","Begayt","Belgian Blue","Belgian Red","Belgian Red Pied","Belgian White-and-Red","Belmont Red","Belted Galloway","Bernese","Berrenda cattle","Betizu","Bianca Modenese","Blaarkop","Black Angus","Black Baldy","Black Hereford","Blanca Cacereña","Blanco Orejinegro BON","Blonde d'Aquitaine","Blue Albion","Blue Grey","Bohuskulla","Bonsmara","Boran","Boškarin","Braford","Brahman","Brahmousin","Brangus","Braunvieh","Brava","Breed","British Friesian","British White","Brown Carpathian","Brown Caucasian","Brown Swiss","Bue Lingo","Burlina","Bushuyev","Butana cattle","Buša cattle","Cachena","Caldelana","Camargue","Campbell Island cattle","Canadian Speckle Park","Canadienne","Canaria","Canchim","Caracu","Carinthian Blondvieh","Carora","Cedit","Charbray","Charolais","Chateaubriand","Chiangus","Chianina","Chillingham cattle","Chinese Black Pied","Cholistani","Coloursided White Back","Commercial","Corriente","Corsican cattle","Costeño con Cuernos","Crioulo Lageano","Cárdena Andaluza","Dajal","Dangi cattle","Danish Black-Pied","Danish Jersey","Danish Red","Dedit","Deep Red cattle","Deoni","Devon","Dexter cattle","Dhanni","Doayo cattle","Doela","Drakensberger","Droughtmaster","Dulong'","Dutch Belted","Dutch Friesian","Dwarf Lulu","Dølafe","East Anatolian Red","Eastern Finncattle","Eastern Red Polled","Eedit","Enderby Island cattle","English Longhorn","Ennstaler Bergscheck","Estonian Holstein","Estonian Native","Estonian Red cattle","Fedit","Finncattle","Finnish Ayrshire","Finnish Holstein-Friesian","Fjäll","Fleckvieh","Florida Cracker cattle","Fogera","French Simmental","Fribourgeoise","Friesian Red and White","Fulani Sudanese","Fēng Cattle","Galician Blond","Galloway cattle","Gangatiri","Gaolao","Garvonesa","Gascon cattle","Gedit","Gelbvieh","Georgian Mountain cattle","German Angus","German Black Pied Dairy","German Black Pied cattle","German Red Pied","Gir","Glan cattle","Gloucester","Gobra","Greek Shorthorn","Greek Steppe","Greyman cattle","Gudali","Guernsey cattle","Guzerá","Hallikar4","Hanwoo","Hariana cattle","Hartón del Valle","Harzer Rotvieh","Hays Converter","Heck cattle","Hedit","Hereford","Herens","Highland cattle","Hinterwald","Holando-Argentino","Holstein Friesian cattle","Horro","Hungarian Grey","Huáng Cattle","Hybridmaster","Iberian cattle","Icelandic","Iedit","Illawarra cattle","Improved Red and White","Indo-Brazilian","Irish Moiled","Israeli Holstein","Israeli Red","Istoben cattle","Istrian cattle","Jamaica Black","Jamaica Hope","Jamaica Red","Japanese Brown","Jarmelista","Javari cattle","Jedit","Jersey cattle","Jutland cattle","Kabin Buri cattle","Kalmyk cattle","Kamphaeng Saen cattle","Kangayam","Kankrej","Karan Swiss","Kasaragod Dwarf cattle","Kathiawadi","Kazakh Whiteheaded","Kedit","Kenana cattle","Kenkatha cattle","Kerry cattle","Kherigarh","Khillari cattle","Kholomogory","Korat Wagyu","Kostroma cattle","Krishna Valley cattle","Kurgan cattle","Kuri","La Reina cattle","Lakenvelder cattle","Lampurger","Latvian Blue","Latvian Brown","Latvian Danish Red","Lebedyn","Ledit","Levantina","Limia cattle","Limousin","Limpurger","Lincoln Red","Lineback","Lithuanian Black-and-White","Lithuanian Light Grey","Lithuanian Red","Lithuanian White-Backed","Lohani cattle","Lourdais","Lucerna cattle","Luing","Madagascar Zebu","Madura","Maine-Anjou","Malnad Gidda","Malvi","Mandalong Special","Mantequera Leonesa","Maramureş Brown","Marchigiana","Maremmana","Marinhoa","Maronesa","Masai","Mashona","Medit","Menorquina","Mertolenga","Meuse-Rhine-Issel","Mewati","Milking Shorthorn","Minhota","Mirandesa","Mirkadim","Mocăniţă","Mollie","Monchina","Mongolian","Montbéliarde","Morucha","Murboden","Murnau-Werdenfels","Murray Grey","Muturu","N'Dama","Nagori","Nedit","Negra Andaluza","Nelore","Nguni","Nimari","Normande","North Bengal Grey","Northern Finncattle","Northern Shorthorn","Norwegian Red","Oedit]","Ongole","Original Simmental","Pajuna","Palmera","Pantaneiro","Parda Alpina","Parthenaise","Pasiega","Pedit","Pembroke","Philippine Native","Pie Rouge des Plaines","Piedmontese cattle","Pineywoods","Pinzgauer","Pirenaica","Podolac","Podolica","Polish Black-and-White","Polish Red","Poll Shorthorn","Polled Hereford","Polled Shorthorn","Ponwar","Preta","Pulikulam","Punganur","Pustertaler Sprinzen","Qedit","Qinchaun","Queensland Miniature Boran","RX3","Ramo Grande","Randall","Raramuri Criollo","Rathi","Raya","Red Angus","Red Brangus","Red Chittagong","Red Fulani","Red Gorbatov","Red Holstein","Red Kandhari","Red Mingrelian","Red Poll","Red Polled Østland","Red Sindhi","Redit","Retinta","Riggit Galloway","Ringamåla","Rohjan","Romagnola","Romanian Bălţata","Romanian Steppe Gray","Romosinuano","Russian Black Pied","Rätisches Grauvieh","Sahiwal","Salers","Salorn","Sanga","Sanhe","Santa Cruz","Santa Gertrudis","Sayaguesa","Schwyz","Sedit","Selembu","Senepol","Serbian Pied","Serbian Steppe","Sheko","Shetland","Shorthorn","Siboney de Cuba","Simbrah","Simford","Simmental","Siri","South Devon","Spanish Fighting Bull","Speckle Park","Square Meater","Sussex","Swedish Friesian","Swedish Polled","Swedish Red Pied","Swedish Red Polled","Swedish Red-and-White","Tabapuã","Tarentaise","Tasmanian Grey","Tauros","Tedit","Telemark","Texas Longhorn","Texon","Thai Black","Thai Fighting Bull","Thai Friesian","Thai Milking Zebu","Tharparkar","Tswana","Tudanca","Tuli","Tulim","Turkish Grey Steppe","Tux-Zillertal","Tyrol Grey","Uedit","Ukrainian Grey","Umblachery","Valdostana Castana","Valdostana Pezzata Nera","Valdostana Pezzata Rossa","Vaynol","Vechur8","Vedit","Vestland Fjord","Vestland Red Polled","Vianesa","Volinian Beef","Vorderwald","Vosgienne","Väneko","Waguli","Wagyu","Wangus","Wedit","Welsh Black","Western Finncattle","White Cáceres","White Fulani","White Lamphun","White Park","Whitebred Shorthorn","Xedit","Xingjiang Brown","Yakutian","Yanbian","Yanhuang","Yedit","Yurino","Zebu","Zedit","Évolène cattle","Żubroń"],crocodilia:["African Slender-snouted Crocodile","Alligator mississippiensis","American Crocodile","Australian Freshwater Crocodile","Black Caiman","Broad-snouted Caiman","Chinese Alligator","Cuban Crocodile","Cuvier’s Dwarf Caiman","Dwarf Crocodile","Gharial","Morelet’s Crocodile","Mugger Crocodile","New Guinea Freshwater Crocodile","Nile Crocodile","Orinoco Crocodile","Philippine Crocodile","Saltwater Crocodile","Schneider’s Smooth-fronted Caiman","Siamese Crocodile","Spectacled Caiman","Tomistoma","West African Crocodile","Yacare Caiman"],dog:["Affenpinscher","Afghan Hound","Aidi","Airedale Terrier","Akbash","Akita","Alano Español","Alapaha Blue Blood Bulldog","Alaskan Husky","Alaskan Klee Kai","Alaskan Malamute","Alopekis","Alpine Dachsbracke","American Bulldog","American Bully","American Cocker Spaniel","American English Coonhound","American Foxhound","American Hairless Terrier","American Pit Bull Terrier","American Staffordshire Terrier","American Water Spaniel","Andalusian Hound","Anglo-Français de Petite Vénerie","Appenzeller Sennenhund","Ariegeois","Armant","Armenian Gampr dog","Artois Hound","Australian Cattle Dog","Australian Kelpie","Australian Shepherd","Australian Stumpy Tail Cattle Dog","Australian Terrier","Austrian Black and Tan Hound","Austrian Pinscher","Azawakh","Bakharwal dog","Banjara Hound","Barbado da Terceira","Barbet","Basenji","Basque Shepherd Dog","Basset Artésien Normand","Basset Bleu de Gascogne","Basset Fauve de Bretagne","Basset Hound","Bavarian Mountain Hound","Beagle","Beagle-Harrier","Bearded Collie","Beauceron","Bedlington Terrier","Belgian Shepherd","Bergamasco Shepherd","Berger Picard","Bernese Mountain Dog","Bhotia","Bichon Frisé","Billy","Black Mouth Cur","Black Norwegian Elkhound","Black Russian Terrier","Black and Tan Coonhound","Bloodhound","Blue Lacy","Blue Picardy Spaniel","Bluetick Coonhound","Boerboel","Bohemian Shepherd","Bolognese","Border Collie","Border Terrier","Borzoi","Bosnian Coarse-haired Hound","Boston Terrier","Bouvier des Ardennes","Bouvier des Flandres","Boxer","Boykin Spaniel","Bracco Italiano","Braque Francais","Braque Saint-Germain","Braque d'Auvergne","Braque de l'Ariège","Braque du Bourbonnais","Briard","Briquet Griffon Vendéen","Brittany","Broholmer","Bruno Jura Hound","Brussels Griffon","Bucovina Shepherd Dog","Bull Arab","Bull Terrier","Bulldog","Bullmastiff","Bully Kutta","Burgos Pointer","Cairn Terrier","Campeiro Bulldog","Can de Chira","Canaan Dog","Canadian Eskimo Dog","Cane Corso","Cane Paratore","Cane di Oropa","Cantabrian Water Dog","Cardigan Welsh Corgi","Carea Castellano Manchego","Carolina Dog","Carpathian Shepherd Dog","Catahoula Leopard Dog","Catalan Sheepdog","Caucasian Shepherd Dog","Cavalier King Charles Spaniel","Central Asian Shepherd Dog","Cesky Fousek","Cesky Terrier","Chesapeake Bay Retriever","Chien Français Blanc et Noir","Chien Français Blanc et Orange","Chien Français Tricolore","Chihuahua","Chilean Terrier","Chinese Chongqing Dog","Chinese Crested Dog","Chinook","Chippiparai","Chongqing dog","Chortai","Chow Chow","Cimarrón Uruguayo","Cirneco dell'Etna","Clumber Spaniel","Colombian fino hound","Coton de Tulear","Cretan Hound","Croatian Sheepdog","Curly-Coated Retriever","Cursinu","Czechoslovakian Wolfdog","Cão Fila de São Miguel","Cão da Serra de Aires","Cão de Castro Laboreiro","Cão de Gado Transmontano","Dachshund","Dalmatian","Dandie Dinmont Terrier","Danish-Swedish Farmdog","Denmark Feist","Dingo","Doberman Pinscher","Dogo Argentino","Dogo Guatemalteco","Dogo Sardesco","Dogue Brasileiro","Dogue de Bordeaux","Drentse Patrijshond","Drever","Dunker","Dutch Shepherd","Dutch Smoushond","East European Shepherd","East Siberian Laika","English Cocker Spaniel","English Foxhound","English Mastiff","English Setter","English Shepherd","English Springer Spaniel","English Toy Terrier","Entlebucher Mountain Dog","Estonian Hound","Estrela Mountain Dog","Eurasier","Field Spaniel","Fila Brasileiro","Finnish Hound","Finnish Lapphund","Finnish Spitz","Flat-Coated Retriever","French Bulldog","French Spaniel","Galgo Español","Galician Shepherd Dog","Garafian Shepherd","Gascon Saintongeois","Georgian Shepherd","German Hound","German Longhaired Pointer","German Pinscher","German Roughhaired Pointer","German Shepherd Dog","German Shorthaired Pointer","German Spaniel","German Spitz","German Wirehaired Pointer","Giant Schnauzer","Glen of Imaal Terrier","Golden Retriever","Gordon Setter","Gończy Polski","Grand Anglo-Français Blanc et Noir","Grand Anglo-Français Blanc et Orange","Grand Anglo-Français Tricolore","Grand Basset Griffon Vendéen","Grand Bleu de Gascogne","Grand Griffon Vendéen","Great Dane","Greater Swiss Mountain Dog","Greek Harehound","Greek Shepherd","Greenland Dog","Greyhound","Griffon Bleu de Gascogne","Griffon Fauve de Bretagne","Griffon Nivernais","Gull Dong","Gull Terrier","Hamiltonstövare","Hanover Hound","Harrier","Havanese","Hierran Wolfdog","Hokkaido","Hovawart","Huntaway","Hygen Hound","Hällefors Elkhound","Ibizan Hound","Icelandic Sheepdog","Indian Spitz","Indian pariah dog","Irish Red and White Setter","Irish Setter","Irish Terrier","Irish Water Spaniel","Irish Wolfhound","Istrian Coarse-haired Hound","Istrian Shorthaired Hound","Italian Greyhound","Jack Russell Terrier","Jagdterrier","Japanese Chin","Japanese Spitz","Japanese Terrier","Jindo","Jonangi","Kai Ken","Kaikadi","Kangal Shepherd Dog","Kanni","Karakachan dog","Karelian Bear Dog","Kars","Karst Shepherd","Keeshond","Kerry Beagle","Kerry Blue Terrier","King Charles Spaniel","King Shepherd","Kintamani","Kishu","Kokoni","Kombai","Komondor","Kooikerhondje","Koolie","Koyun dog","Kromfohrländer","Kuchi","Kuvasz","Labrador Retriever","Lagotto Romagnolo","Lakeland Terrier","Lancashire Heeler","Landseer","Lapponian Herder","Large Münsterländer","Leonberger","Levriero Sardo","Lhasa Apso","Lithuanian Hound","Lupo Italiano","Löwchen","Mackenzie River Husky","Magyar agár","Mahratta Greyhound","Maltese","Manchester Terrier","Maremmano-Abruzzese Sheepdog","McNab dog","Miniature American Shepherd","Miniature Bull Terrier","Miniature Fox Terrier","Miniature Pinscher","Miniature Schnauzer","Molossus of Epirus","Montenegrin Mountain Hound","Mountain Cur","Mountain Feist","Mucuchies","Mudhol Hound","Mudi","Neapolitan Mastiff","New Guinea Singing Dog","New Zealand Heading Dog","Newfoundland","Norfolk Terrier","Norrbottenspets","Northern Inuit Dog","Norwegian Buhund","Norwegian Elkhound","Norwegian Lundehund","Norwich Terrier","Nova Scotia Duck Tolling Retriever","Old Croatian Sighthound","Old Danish Pointer","Old English Sheepdog","Old English Terrier","Olde English Bulldogge","Otterhound","Pachon Navarro","Paisley Terrier","Pampas Deerhound","Papillon","Parson Russell Terrier","Pastore della Lessinia e del Lagorai","Patagonian Sheepdog","Patterdale Terrier","Pekingese","Pembroke Welsh Corgi","Perro Majorero","Perro de Pastor Mallorquin","Perro de Presa Canario","Perro de Presa Mallorquin","Peruvian Inca Orchid","Petit Basset Griffon Vendéen","Petit Bleu de Gascogne","Phalène","Pharaoh Hound","Phu Quoc Ridgeback","Picardy Spaniel","Plott Hound","Plummer Terrier","Podenco Canario","Podenco Valenciano","Pointer","Poitevin","Polish Greyhound","Polish Hound","Polish Lowland Sheepdog","Polish Tatra Sheepdog","Pomeranian","Pont-Audemer Spaniel","Poodle","Porcelaine","Portuguese Podengo","Portuguese Pointer","Portuguese Water Dog","Posavac Hound","Pražský Krysařík","Pshdar Dog","Pudelpointer","Pug","Puli","Pumi","Pungsan Dog","Pyrenean Mastiff","Pyrenean Mountain Dog","Pyrenean Sheepdog","Rafeiro do Alentejo","Rajapalayam","Rampur Greyhound","Rat Terrier","Ratonero Bodeguero Andaluz","Ratonero Mallorquin","Ratonero Murciano de Huerta","Ratonero Valenciano","Redbone Coonhound","Rhodesian Ridgeback","Romanian Mioritic Shepherd Dog","Romanian Raven Shepherd Dog","Rottweiler","Rough Collie","Russian Spaniel","Russian Toy","Russo-European Laika","Saarloos Wolfdog","Sabueso Español","Saint Bernard","Saint Hubert Jura Hound","Saint-Usuge Spaniel","Saluki","Samoyed","Sapsali","Sarabi dog","Sardinian Shepherd Dog","Schapendoes","Schillerstövare","Schipperke","Schweizer Laufhund","Schweizerischer Niederlaufhund","Scottish Deerhound","Scottish Terrier","Sealyham Terrier","Segugio Italiano","Segugio Maremmano","Segugio dell'Appennino","Seppala Siberian Sleddog","Serbian Hound","Serbian Tricolour Hound","Serrano Bulldog","Shar Pei","Shetland Sheepdog","Shiba Inu","Shih Tzu","Shikoku","Shiloh Shepherd","Siberian Husky","Silken Windhound","Silky Terrier","Sinhala Hound","Skye Terrier","Sloughi","Slovakian Wirehaired Pointer","Slovenský Cuvac","Slovenský Kopov","Smalandstövare","Small Greek domestic dog","Small Münsterländer","Smooth Collie","Smooth Fox Terrier","Soft-Coated Wheaten Terrier","South Russian Ovcharka","Spanish Mastiff","Spanish Water Dog","Spinone Italiano","Sporting Lucas Terrier","Stabyhoun","Staffordshire Bull Terrier","Standard Schnauzer","Stephens Stock","Styrian Coarse-haired Hound","Sussex Spaniel","Swedish Elkhound","Swedish Lapphund","Swedish Vallhund","Swedish White Elkhound","Taigan","Taiwan Dog","Tamaskan Dog","Teddy Roosevelt Terrier","Telomian","Tenterfield Terrier","Terrier Brasileiro","Thai Bangkaew Dog","Thai Ridgeback","Tibetan Mastiff","Tibetan Spaniel","Tibetan Terrier","Tornjak","Tosa","Toy Fox Terrier","Toy Manchester Terrier","Transylvanian Hound","Treeing Cur","Treeing Feist","Treeing Tennessee Brindle","Treeing Walker Coonhound","Trigg Hound","Tyrolean Hound","Vikhan","Villano de Las Encartaciones","Villanuco de Las Encartaciones","Vizsla","Volpino Italiano","Weimaraner","Welsh Sheepdog","Welsh Springer Spaniel","Welsh Terrier","West Highland White Terrier","West Siberian Laika","Westphalian Dachsbracke","Wetterhoun","Whippet","White Shepherd","White Swiss Shepherd Dog","Wire Fox Terrier","Wirehaired Pointing Griffon","Wirehaired Vizsla","Xiasi Dog","Xoloitzcuintli","Yakutian Laika","Yorkshire Terrier","Šarplaninac"],fish:["Alaska pollock","Albacore","Amur catfish","Araucanian herring","Argentine hake","Asari","Asian swamp eel","Atlantic cod","Atlantic herring","Atlantic horse mackerel","Atlantic mackerel","Atlantic menhaden","Atlantic salmon","Bigeye scad","Bigeye tuna","Bighead carp","Black carp","Blood cockle","Blue swimming crab","Blue whiting","Bombay-duck","Bonga shad","California pilchard","Cape horse mackerel","Capelin","Catla","Channel catfish","Chilean jack mackerel","Chinese perch","Chinese softshell turtle","Chub mackerel","Chum salmon","Common carp","Crucian carp","Daggertooth pike conger","European anchovy","European pilchard","European sprat","Filipino Venus","Gazami crab","Goldstripe sardinella","Grass carp","Gulf menhaden","Haddock","Hilsa shad","Indian mackerel","Indian oil sardine","Iridescent shark","Japanese anchovy","Japanese cockle","Japanese common catfish","Japanese flying squid","Japanese jack mackerel","Japanese littleneck","Japanese pilchard","Jumbo flying squid","Kawakawa","Korean bullhead","Largehead hairtail","Longtail tuna","Madeiran sardinella","Mandarin fish","Milkfish","Mrigal carp","Narrow-barred Spanish mackerel","Nile perch","Nile tilapia","North Pacific hake","Northern snakehead","Pacific anchoveta","Pacific cod","Pacific herring","Pacific sand lance","Pacific sandlance","Pacific saury","Pacific thread herring","Peruvian anchoveta","Pink salmon","Pollock","Pond loach","Rainbow trout","Rohu","Round sardinella","Short mackerel","Silver carp","Silver cyprinid","Skipjack tuna","Southern African anchovy","Southern rough shrimp","Whiteleg shrimp","Wuchang bream","Yellow croaker","Yellowfin tuna","Yellowhead catfish","Yellowstripe scad"],horse:["Abaco Barb","Abtenauer","Abyssinian","Aegidienberger","Akhal-Teke","Albanian Horse","Altai Horse","Altèr Real","American Albino","American Cream Draft","American Indian Horse","American Paint Horse","American Quarter Horse","American Saddlebred","American Warmblood","Andalusian Horse","Andravida Horse","Anglo-Arabian","Anglo-Arabo-Sardo","Anglo-Kabarda","Appaloosa","AraAppaloosa","Arabian Horse","Ardennes Horse","Arenberg-Nordkirchen","Argentine Criollo","Asian wild Horse","Assateague Horse","Asturcón","Augeron","Australian Brumby","Australian Draught Horse","Australian Stock Horse","Austrian Warmblood","Auvergne Horse","Auxois","Azerbaijan Horse","Azteca Horse","Baise Horse","Bale","Balearic Horse","Balikun Horse","Baluchi Horse","Banker Horse","Barb Horse","Bardigiano","Bashkir Curly","Basque Mountain Horse","Bavarian Warmblood","Belgian Half-blood","Belgian Horse","Belgian Warmblood ","Bhutia Horse","Black Forest Horse","Blazer Horse","Boerperd","Borana","Boulonnais Horse","Brabant","Brandenburger","Brazilian Sport Horse","Breton Horse","Brumby","Budyonny Horse","Burguete Horse","Burmese Horse","Byelorussian Harness Horse","Calabrese Horse","Camargue Horse","Camarillo White Horse","Campeiro","Campolina","Canadian Horse","Canadian Pacer","Carolina Marsh Tacky","Carthusian Horse","Caspian Horse","Castilian Horse","Castillonnais","Catria Horse","Cavallo Romano della Maremma Laziale","Cerbat Mustang","Chickasaw Horse","Chilean Corralero","Choctaw Horse","Cleveland Bay","Clydesdale Horse","Cob","Coldblood Trotter","Colonial Spanish Horse","Colorado Ranger","Comtois Horse","Corsican Horse","Costa Rican Saddle Horse","Cretan Horse","Criollo Horse","Croatian Coldblood","Cuban Criollo","Cumberland Island Horse","Curly Horse","Czech Warmblood","Daliboz","Danish Warmblood","Danube Delta Horse","Dole Gudbrandsdal","Don","Dongola Horse","Draft Trotter","Dutch Harness Horse","Dutch Heavy Draft","Dutch Warmblood","Dzungarian Horse","East Bulgarian","East Friesian Horse","Estonian Draft","Estonian Horse","Falabella","Faroese","Finnhorse","Fjord Horse","Fleuve","Florida Cracker Horse","Foutanké","Frederiksborg Horse","Freiberger","French Trotter","Friesian Cross","Friesian Horse","Friesian Sporthorse","Furioso-North Star","Galiceño","Galician Pony","Gelderland Horse","Georgian Grande Horse","German Warmblood","Giara Horse","Gidran","Groningen Horse","Gypsy Horse","Hackney Horse","Haflinger","Hanoverian Horse","Heck Horse","Heihe Horse","Henson Horse","Hequ Horse","Hirzai","Hispano-Bretón","Holsteiner Horse","Horro","Hungarian Warmblood","Icelandic Horse","Iomud","Irish Draught","Irish Sport Horse sometimes called Irish Hunter","Italian Heavy Draft","Italian Trotter","Jaca Navarra","Jeju Horse","Jutland Horse","Kabarda Horse","Kafa","Kaimanawa Horses","Kalmyk Horse","Karabair","Karabakh Horse","Karachai Horse","Karossier","Kathiawari","Kazakh Horse","Kentucky Mountain Saddle Horse","Kiger Mustang","Kinsky Horse","Kisber Felver","Kiso Horse","Kladruber","Knabstrupper","Konik","Kundudo","Kustanair","Kyrgyz Horse","Latvian Horse","Lipizzan","Lithuanian Heavy Draught","Lokai","Losino Horse","Lusitano","Lyngshest","M'Bayar","M'Par","Mallorquín","Malopolski","Mangalarga","Mangalarga Marchador","Maremmano","Marismeño Horse","Marsh Tacky","Marwari Horse","Mecklenburger","Menorquín","Messara Horse","Metis Trotter","Mezőhegyesi Sport Horse","Međimurje Horse","Miniature Horse","Misaki Horse","Missouri Fox Trotter","Monchina","Mongolian Horse","Mongolian Wild Horse","Monterufolino","Morab","Morgan Horse","Mountain Pleasure Horse","Moyle Horse","Murakoz Horse","Murgese","Mustang Horse","Mérens Horse","Namib Desert Horse","Nangchen Horse","National Show Horse","Nez Perce Horse","Nivernais Horse","Nokota Horse","Noma","Nonius Horse","Nooitgedachter","Nordlandshest","Noriker Horse","Norman Cob","North American Single-Footer Horse","North Swedish Horse","Norwegian Coldblood Trotter","Norwegian Fjord","Novokirghiz","Oberlander Horse","Ogaden","Oldenburg Horse","Orlov trotter","Ostfriesen","Paint","Pampa Horse","Paso Fino","Pentro Horse","Percheron","Persano Horse","Peruvian Paso","Pintabian","Pleven Horse","Poitevin Horse","Posavac Horse","Pottok","Pryor Mountain Mustang","Przewalski's Horse","Pura Raza Española","Purosangue Orientale","Qatgani","Quarab","Quarter Horse","Racking Horse","Retuerta Horse","Rhenish German Coldblood","Rhinelander Horse","Riwoche Horse","Rocky Mountain Horse","Romanian Sporthorse","Rottaler","Russian Don","Russian Heavy Draft","Russian Trotter","Saddlebred","Salerno Horse","Samolaco Horse","San Fratello Horse","Sarcidano Horse","Sardinian Anglo-Arab","Schleswig Coldblood","Schwarzwälder Kaltblut","Selale","Sella Italiano","Selle Français","Shagya Arabian","Shan Horse","Shire Horse","Siciliano Indigeno","Silesian Horse","Sokolsky Horse","Sorraia","South German Coldblood","Soviet Heavy Draft","Spanish Anglo-Arab","Spanish Barb","Spanish Jennet Horse","Spanish Mustang","Spanish Tarpan","Spanish-Norman Horse","Spiti Horse","Spotted Saddle Horse","Standardbred Horse","Suffolk Punch","Swedish Ardennes","Swedish Warmblood","Swedish coldblood trotter","Swiss Warmblood","Taishū Horse","Takhi","Tawleed","Tchernomor","Tennessee Walking Horse","Tersk Horse","Thoroughbred","Tiger Horse","Tinker Horse","Tolfetano","Tori Horse","Trait Du Nord","Trakehner","Tsushima","Tuigpaard","Ukrainian Riding Horse","Unmol Horse","Uzunyayla","Ventasso Horse","Virginia Highlander","Vlaamperd","Vladimir Heavy Draft","Vyatka","Waler","Waler Horse","Walkaloosa","Warlander","Warmblood","Welsh Cob","Westphalian Horse","Wielkopolski","Württemberger","Xilingol Horse","Yakutian Horse","Yili Horse","Yonaguni Horse","Zaniskari","Zhemaichu","Zweibrücker","Žemaitukas"],insect:["Acacia-ants","Acorn-plum gall","Aerial yellowjacket","Africanized honey bee","Allegheny mound ant","Almond stone wasp","Ant","Arboreal ant","Argentine ant","Asian paper wasp","Baldfaced hornet","Bee","Bigheaded ant","Black and yellow mud dauber","Black carpenter ant","Black imported fire ant","Blue horntail woodwasp","Blue orchard bee","Braconid wasp","Bumble bee","Carpenter ant","Carpenter wasp","Chalcid wasp","Cicada killer","Citrus blackfly parasitoid","Common paper wasp","Crazy ant","Cuckoo wasp","Cynipid gall wasp","Eastern Carpenter bee","Eastern yellowjacket","Elm sawfly","Encyrtid wasp","Erythrina gall wasp","Eulophid wasp","European hornet","European imported fire ant","False honey ant","Fire ant","Forest bachac","Forest yellowjacket","German yellowjacket","Ghost ant","Giant ichneumon wasp","Giant resin bee","Giant wood wasp","Golden northern bumble bee","Golden paper wasp","Gouty oak gall","Grass Carrying Wasp","Great black wasp","Great golden digger wasp","Hackberry nipple gall parasitoid","Honey bee","Horned oak gall","Horse guard wasp","Hunting wasp","Ichneumonid wasp","Keyhole wasp","Knopper gall","Large garden bumble bee","Large oak-apple gall","Leafcutting bee","Little fire ant","Little yellow ant","Long-horned bees","Long-legged ant","Macao paper wasp","Mallow bee","Marble gall","Mossyrose gall wasp","Mud-daubers","Multiflora rose seed chalcid","Oak apple gall wasp","Oak rough bulletgall wasp","Oak saucer gall","Oak shoot sawfly","Odorous house ant","Orange-tailed bumble bee","Orangetailed potter wasp","Oriental chestnut gall wasp","Paper wasp","Pavement ant","Pigeon tremex","Pip gall wasp","Prairie yellowjacket","Pteromalid wasp","Pyramid ant","Raspberry Horntail","Red ant","Red carpenter ant","Red harvester ant","Red imported fire ant","Red wasp","Red wood ant","Red-tailed wasp","Reddish carpenter ant","Rough harvester ant","Sawfly parasitic wasp","Scale parasitoid","Silky ant","Sirex woodwasp","Siricid woodwasp","Smaller yellow ant","Southeastern blueberry bee","Southern fire ant","Southern yellowjacket","Sphecid wasp","Stony gall","Sweat bee","Texas leafcutting ant","Tiphiid wasp","Torymid wasp","Tramp ant","Valentine ant","Velvet ant","Vespid wasp","Weevil parasitoid","Western harvester ant","Western paper wasp","Western thatching ant","Western yellowjacket","White-horned horntail","Willow shoot sawfly","Woodwasp","Wool sower gall maker","Yellow Crazy Ant","Yellow and black potter wasp","Yellow-horned horntail"],lion:["Asiatic Lion","Barbary Lion","Cape lion","Masai Lion","Northeast Congo Lion","Transvaal lion","West African Lion"],rabbit:["American","American Chinchilla","American Fuzzy Lop","American Sable","Argente Brun","Belgian Hare","Beveren","Blanc de Hotot","Britannia Petite","Californian","Champagne D’Argent","Checkered Giant","Cinnamon","Crème D’Argent","Dutch","Dwarf Hotot","English Angora","English Lop","English Spot","Flemish Giant","Florida White","French Angora","French Lop","Giant Angora","Giant Chinchilla","Harlequin","Havana","Himalayan","Holland Lop","Jersey Wooly","Lilac","Lionhead","Mini Lop","Mini Rex","Mini Satin","Netherland Dwarf","New Zealand","Palomino","Polish","Rex","Rhinelander","Satin","Satin Angora","Silver","Silver Fox","Silver Marten","Standard Chinchilla","Tan","Thrianta"],rodent:["Abrocoma","Abrocoma schistacea","Aconaemys","Aconaemys porteri","African brush-tailed porcupine","Andean mountain cavy","Argentine tuco-tuco","Ashy chinchilla rat","Asiatic brush-tailed porcupine","Atherurus","Azara's agouti","Azara's tuco-tuco","Bahia porcupine","Bathyergus","Bathyergus janetta","Bathyergus suillus","Bennett's chinchilla rat","Bicolored-spined porcupine","Black agouti","Black dwarf porcupine","Black-rumped agouti","Black-tailed hairy dwarf porcupine","Bolivian chinchilla rat","Bolivian tuco-tuco","Bonetto's tuco-tuco","Brandt's yellow-toothed cavy","Brazilian guinea pig","Brazilian porcupine","Brazilian tuco-tuco","Bridge's degu","Brown hairy dwarf porcupine","Budin's chinchilla rat, A. budini","Cape porcupine","Catamarca tuco-tuco","Cavia","Central American agouti","Chacoan tuco-tuco","Chilean rock rat","Chinchilla","Coendou","Coiban agouti","Colburn's tuco-tuco","Collared tuco-tuco","Common degu","Common yellow-toothed cavy","Conover's tuco-tuco","Coruro","Crested agouti","Crested porcupine","Cryptomys","Cryptomys bocagei","Cryptomys damarensis","Cryptomys foxi","Cryptomys hottentotus","Cryptomys mechowi","Cryptomys ochraceocinereus","Cryptomys zechi","Ctenomys","Cuniculus","Cuscomys","Cuscomys ashanika","Dactylomys","Dactylomys boliviensis","Dactylomys dactylinus","Dactylomys peruanus","Dasyprocta","Domestic guinea pig","Emily's tuco-tuco","Erethizon","Famatina chinchilla rat","Frosted hairy dwarf porcupine","Fukomys","Fukomys amatus","Fukomys anselli","Fukomys bocagei","Fukomys damarensis","Fukomys darlingi","Fukomys foxi","Fukomys ilariae","Fukomys kafuensis","Fukomys mechowii","Fukomys micklemi","Fukomys occlusus","Fukomys ochraceocinereus","Fukomys whytei","Fukomys zechi","Furtive tuco-tuco","Galea","Georychus","Georychus capensis","Golden viscacha-rat","Goya tuco-tuco","Greater guinea pig","Green acouchi","Haig's tuco-tuco","Heliophobius","Heliophobius argenteocinereus","Heterocephalus","Heterocephalus glaber","Highland tuco-tuco","Hystrix","Indian porcupine","Isla Mocha degu","Kalinowski agouti","Kannabateomys","Kannabateomys amblyonyx","Lagidium","Lagostomus","Lewis' tuco-tuco","Long-tailed chinchilla","Long-tailed porcupine","Los Chalchaleros' viscacha-rat","Lowland paca","Magellanic tuco-tuco","Malayan porcupine","Maule tuco-tuco","Mendoza tuco-tuco","Mexican agouti","Mexican hairy dwarf porcupine","Microcavia","Montane guinea pig","Moon-toothed degu","Mottled tuco-tuco","Mountain degu","Mountain paca","Mountain viscacha-rat","Myoprocta","Natterer's tuco-tuco","North American porcupine","Northern viscacha","Octodon","Octodontomys","Octomys","Olallamys","Olallamys albicauda","Olallamys edax","Orinoco agouti","Paraguaian hairy dwarf porcupine","Pearson's tuco-tuco","Peruvian tuco-tuco","Philippine porcupine","Pipanacoctomys","Plains viscacha","Plains viscacha-rat","Porteous' tuco-tuco","Punta de Vacas chinchilla rat","Red acouchi","Red-rumped agouti","Reddish tuco-tuco","Rio Negro tuco-tuco","Robust tuco-tuco","Roosmalen's dwarf porcupine","Rothschild's porcupine","Ruatan Island agouti","Sage's rock rat","Salinoctomys","Salta tuco-tuco","San Luis tuco-tuco","Santa Catarina's guinea pig","Shiny guinea pig","Shipton's mountain cavy","Short-tailed chinchilla","Silky tuco-tuco","Social tuco-tuco","Southern mountain cavy","Southern tuco-tuco","Southern viscacha","Spalacopus","Spix's yellow-toothed cavy","Steinbach's tuco-tuco","Streaked dwarf porcupine","Strong tuco-tuco","Stump-tailed porcupine","Sumatran porcupine","Sunda porcupine","Talas tuco-tuco","Tawny tuco-tuco","Thick-spined porcupine","Tiny tuco-tuco","Trichys","Tucuman tuco-tuco","Tympanoctomys","Uspallata chinchilla rat","White-toothed tuco-tuco","Wolffsohn's viscacha"],snake:["Abaco Island boa","Aesculapian snake","African beaked snake","African puff adder","African rock python","African twig snake","African wolf snake","Amazon tree boa","Amazonian palm viper","American Vine Snake","American copperhead","Amethystine python","Anaconda","Andaman cat snake","Andaman cobra","Angolan python","Annulated sea snake","Arabian cobra","Arafura file snake","Arizona black rattlesnake","Arizona coral snake","Aruba rattlesnake","Asian Vine Snake, Whip Snake","Asian cobra","Asian keelback","Asian pipe snake","Asp","Asp viper","Assam keelback","Australian copperhead","Australian scrub python","Baird's rat snake","Baja California lyresnake","Ball Python","Ball python","Bamboo pitviper","Bamboo viper","Banded Flying Snake","Banded cat-eyed snake","Banded krait","Banded pitviper","Banded water cobra","Barbour's pit viper","Barred wolf snake","Beaked sea snake","Beauty rat snake","Beddome's cat snake","Beddome's coral snake","Bimini racer","Bird snake","Bismarck ringed python","Black headed python","Black krait","Black mamba","Black rat snake","Black snake","Black tree cobra","Black-banded trinket snake","Black-headed snake","Black-necked cobra","Black-necked spitting cobra","Black-speckled palm-pitviper","Black-striped keelback","Black-tailed horned pit viper","Blanding's tree snake","Blind snake","Blonde hognose snake","Blood python","Blue krait","Blunt-headed tree snake","Bluntnose viper","Boa","Boa constrictor","Bocourt's water snake","Boelen python","Boiga","Bolivian anaconda","Boomslang","Bornean pitviper","Borneo short-tailed python","Brahminy blind snake","Brazilian coral snake","Brazilian mud Viper","Brazilian smooth snake","Bredl's python","Brongersma's pitviper","Brown snake","Brown spotted pitviper[4]","Brown tree snake","Brown water python","Brown white-lipped python","Buff striped keelback","Bull snake","Burmese keelback","Burmese krait","Burmese python","Burrowing cobra","Burrowing viper","Bush viper","Bushmaster","Buttermilk racer","Calabar python","California kingsnake","Canebrake","Cantil","Cantor's pitviper","Cape cobra","Cape coral snake","Cape gopher snake","Carpet viper","Cascabel","Caspian cobra","Cat snake","Cat-eyed night snake","Cat-eyed snake","Central American lyre snake","Central ranges taipan","Centralian carpet python","Ceylon krait","Chappell Island tiger snake","Checkered garter snake","Checkered keelback","Chicken snake","Chihuahuan ridge-nosed rattlesnake","Children's python","Chinese tree viper","Coachwhip snake","Coastal carpet python","Coastal taipan","Cobra","Collett's snake","Colorado desert sidewinder","Common adder","Common cobra","Common garter snake","Common ground snake","Common keelback","Common lancehead","Common tiger snake","Common worm snake","Congo snake","Congo water cobra","Copperhead","Coral snake","Corn snake","Coronado Island rattlesnake","Cottonmouth","Crossed viper","Crowned snake","Cuban boa","Cuban wood snake","Cyclades blunt-nosed viper","Dauan Island water python","De Schauensee's anaconda","Death Adder","Desert death adder","Desert kingsnake","Desert woma python","Diamond python","Dog-toothed cat snake","Down's tiger snake","Dubois's sea snake","Dumeril's boa","Durango rock rattlesnake","Dusky pigmy rattlesnake","Dusty hognose snake","Dwarf beaked snake","Dwarf boa","Dwarf pipe snake","Dwarf sand adder","Eastern brown snake","Eastern coral snake","Eastern diamondback rattlesnake","Eastern green mamba","Eastern hognose snake","Eastern lyre snake","Eastern mud snake","Eastern racer","Eastern tiger snake","Eastern water cobra","Eastern yellowbelly sad racer","Egg-eater","Egyptian asp","Egyptian cobra","Elegant pitviper","Emerald tree boa","Equatorial spitting cobra","European asp","European smooth snake","Eyelash palm-pitviper","Eyelash pit viper","Eyelash viper","False cobra","False horned viper","False water cobra","Fan-Si-Pan horned pitviper","Fea's viper","Fer-de-lance","Fierce snake","Fifty pacer","Fishing snake","Flat-nosed pitviper","Flinders python","Flying snake","Forest cobra","Forest flame snake","Forsten's cat snake","Fox snake, three species of Pantherophis","Gaboon viper","Garter snake","Giant Malagasy hognose snake","Godman's pit viper","Gold tree cobra","Gold-ringed cat snake","Golden tree snake","Grand Canyon rattlesnake","Grass snake","Gray cat snake","Great Basin rattlesnake","Great Lakes bush viper","Great Plains rat snake","Green anaconda","Green cat-eyed snake","Green mamba","Green palm viper","Green rat snake","Green snake","Green tree pit viper","Green tree python","Grey Lora","Grey-banded kingsnake","Ground snake","Guatemalan palm viper","Guatemalan tree viper","Habu","Habu pit viper","Hagen's pitviper","Hairy bush viper","Halmahera python","Hardwicke's sea snake","Harlequin coral snake","High Woods coral snake","Hill keelback","Himalayan keelback","Hogg Island boa","Hognose snake","Hognosed viper","Honduran palm viper","Hook Nosed Sea Snake","Hopi rattlesnake","Horned adder","Horned desert viper","Horned viper","Horseshoe pitviper","Hundred pacer","Hutton's tree viper","Ikaheka snake","Indian cobra","Indian flying snake","Indian krait","Indian python","Indian tree viper","Indigo snake","Indochinese spitting cobra","Indonesian water python","Inland carpet python","Inland taipan","Jamaican Tree Snake","Jamaican boa","Jan's hognose snake","Japanese forest rat snake","Japanese rat snake","Japanese striped snake","Javan spitting cobra","Jerdon's pitviper","Jumping viper","Jungle carpet python","Kanburian pit viper","Kaulback's lance-headed pitviper","Kayaudi dwarf reticulated python","Kaznakov's viper","Keelback","Kham Plateau pitviper","Khasi Hills keelback","King Island tiger snake","King brown","King cobra","King rat snake","King snake","Krait","Krefft's tiger snake","Lance-headed rattlesnake","Lancehead","Large shield snake","Large-eyed pitviper","Large-scaled tree viper","Leaf viper","Leaf-nosed viper","Lesser black krait","Levant viper","Long-nosed adder","Long-nosed tree snake","Long-nosed viper","Long-nosed whip snake","Long-tailed rattlesnake","Longnosed worm snake","Lora","Lyre snake","Machete savane","Macklot's python","Madagascar ground boa","Madagascar tree boa","Malabar rock pitviper","Malayan krait","Malayan long-glanded coral snake","Malayan pit viper","Malcolm's tree viper","Mamba","Mamushi","Manchurian Black Water Snake","Mandalay cobra","Mandarin rat snake","Mangrove pit viper","Mangrove snake","Mangshan pitviper","Many-banded krait","Many-banded tree snake","Many-horned adder","Many-spotted cat snake","Massasauga rattlesnake","McMahon's viper","Mexican black kingsnake","Mexican green rattlesnake","Mexican hognose snake","Mexican palm-pitviper","Mexican parrot snake","Mexican racer","Mexican vine snake","Mexican west coast rattlesnake","Midget faded rattlesnake","Milk snake","Moccasin snake","Modest keelback","Mojave desert sidewinder","Mojave rattlesnake","Mole viper","Mollucan python","Moluccan flying snake","Montpellier snake","Motuo bamboo pitviper","Mountain adder","Mozambique spitting cobra","Mud adder","Mud snake","Mussurana","Namaqua dwarf adder","Namib dwarf sand adder","Narrowhead Garter Snake","New Guinea carpet python","Nichell snake","Nicobar Island keelback","Nicobar bamboo pitviper","Night snake","Nightingale adder","Nilgiri keelback","Nitsche's bush viper","Nitsche's tree viper","North Philippine cobra","North eastern king snake","Northeastern hill krait","Northern black-tailed rattlesnake","Northern tree snake","Northern water snake","Northern white-lipped python","Northwestern carpet python","Nose-horned viper","Nubian spitting cobra","Oaxacan small-headed rattlesnake","Oenpelli python","Olive python","Olive sea snake","Orange-collared keelback","Ornate flying snake","Palestine viper","Pallas' viper","Palm viper","Papuan python","Paradise flying snake","Parrot snake","Patchnose snake","Paupan taipan","Pelagic sea snake","Peninsula tiger snake","Peringuey's adder","Perrotet's shieldtail snake","Persian rat snake","Philippine cobra","Philippine pitviper","Pine snake","Pipe snake","Pit viper","Pointed-scaled pit viper[5]","Pope's tree viper","Portuguese viper","Prairie kingsnake","Puerto Rican boa","Puff adder","Pygmy python","Python","Queen snake","Racer","Raddysnake","Rainbow boa","Rat snake","Rattler","Rattlesnake","Red blood python","Red diamond rattlesnake","Red spitting cobra","Red-backed rat snake","Red-bellied black snake","Red-headed krait","Red-necked keelback","Red-tailed bamboo pitviper","Red-tailed boa","Red-tailed pipe snake","Reticulated python","Rhinoceros viper","Rhombic night adder","Ribbon snake","Rinkhals","Rinkhals cobra","River jack","Rosy boa","Rough green snake","Rough-scaled bush viper","Rough-scaled python","Rough-scaled tree viper","Royal python","Rubber boa","Rufous beaked snake","Rungwe tree viper","San Francisco garter snake","Sand adder","Sand boa","Savu python","Saw-scaled viper","Scarlet kingsnake","Schlegel's viper","Schultze's pitviper","Sea snake","Sedge viper","Selayer reticulated python","Sharp-nosed viper","Shield-nosed cobra","Shield-tailed snake","Siamese palm viper","Side-striped palm-pitviper","Sidewinder","Sikkim keelback","Sinai desert cobra","Sind krait","Small-eyed snake","Smooth green snake","Smooth snake","Snorkel viper","Snouted cobra","Sonoran sidewinder","South American hognose snake","South eastern corn snake","Southern Indonesian spitting cobra","Southern Pacific rattlesnake","Southern Philippine cobra","Southern black racer","Southern white-lipped python","Southwestern black spitting cobra","Southwestern blackhead snake","Southwestern carpet python","Southwestern speckled rattlesnake","Speckle-bellied keelback","Speckled kingsnake","Spectacled cobra","Spiny bush viper","Spitting cobra","Spotted python","Sri Lankan pit viper","Stejneger's bamboo pitviper","Stiletto snake","Stimson's python","Stoke's sea snake","Storm water cobra","Striped snake","Sumatran short-tailed python","Sumatran tree viper","Sunbeam snake","Taipan","Taiwan cobra","Tan racer","Tancitaran dusky rattlesnake","Tanimbar python","Tasmanian tiger snake","Tawny cat snake","Temple pit viper","Temple viper","Tentacled snake","Texas Coral Snake","Texas blind snake","Texas garter snake","Texas lyre snake","Texas night snake","Thai cobra","Three-lined ground snake","Tibetan bamboo pitviper","Tic polonga","Tiger pit viper","Tiger rattlesnake","Tiger snake","Tigre snake","Timber rattlesnake","Timor python","Titanboa","Tree boa","Tree snake","Tree viper","Trinket snake","Tropical rattlesnake","Twig snake","Twin Headed King Snake","Twin-Barred tree snake","Twin-spotted rat snake","Twin-spotted rattlesnake","Undulated pit viper","Uracoan rattlesnake","Ursini's viper","Urutu","Vine snake","Viper","Viper Adder","Vipera ammodytes","Wagler's pit viper","Wart snake","Water adder","Water moccasin","Water snake","West Indian racer","Western blind snake","Western carpet python","Western coral snake","Western diamondback rattlesnake","Western green mamba","Western ground snake","Western hog-nosed viper","Western mud snake","Western tiger snake","Western woma python","Wetar Island python","Whip snake","White-lipped keelback","White-lipped python","White-lipped tree viper","Wirot's pit viper","Wolf snake","Woma python","Worm snake","Wutu","Wynaad keelback","Yarara","Yellow anaconda","Yellow-banded sea snake","Yellow-bellied sea snake","Yellow-lined palm viper","Yellow-lipped sea snake","Yellow-striped rat snake","Yunnan keelback","Zebra snake","Zebra spitting cobra"],type:["bat","bear","bee","bird","butterfly","cat","cow","crocodile","deer","dog","dolphin","eagle","elephant","fish","flamingo","fox","frog","gecko","giraffe","gorilla","hamster","hippopotamus","horse","kangaroo","koala","lion","monkey","ostrich","panda","parrot","peacock","penguin","polar bear","rabbit","rhinoceros","sea lion","shark","snake","squirrel","tiger","turtle","whale","wolf","zebra"]},app:{author:["{{person.name}}","{{company.name}}"],name:["Redhold","Treeflex","Trippledex","Kanlam","Bigtax","Daltfresh","Toughjoyfax","Mat Lam Tam","Otcom","Tres-Zap","Y-Solowarm","Tresom","Voltsillam","Biodex","Greenlam","Viva","Matsoft","Temp","Zoolab","Subin","Rank","Job","Stringtough","Tin","It","Home Ing","Zamit","Sonsing","Konklab","Alpha","Latlux","Voyatouch","Alphazap","Holdlamis","Zaam-Dox","Sub-Ex","Quo Lux","Bamity","Ventosanzap","Lotstring","Hatity","Tempsoft","Overhold","Fixflex","Konklux","Zontrax","Tampflex","Span","Namfix","Transcof","Stim","Fix San","Sonair","Stronghold","Fintone","Y-find","Opela","Lotlux","Ronstring","Zathin","Duobam","Keylex"],version:["0.#.#","0.##","#.##","#.#","#.#.#"]},cell_phone:{formats:["###-###-####","(###) ###-####","1-###-###-####","###.###.####"]},color:{human:["azure","black","blue","cyan","fuchsia","gold","green","grey","indigo","ivory","lavender","lime","magenta","maroon","mint green","olive","orange","orchid","pink","plum","purple","red","salmon","silver","sky blue","tan","teal","turquoise","violet","white","yellow"]},commerce:{department:["Automotive","Baby","Beauty","Books","Clothing","Computers","Electronics","Games","Garden","Grocery","Health","Home","Industrial","Jewelry","Kids","Movies","Music","Outdoors","Shoes","Sports","Tools","Toys"],product_description:["Andy shoes are designed to keeping in mind durability as well as trends, the most stylish range of shoes & sandals","Boston's most advanced compression wear technology increases muscle oxygenation, stabilizes active muscles","Carbonite web goalkeeper gloves are ergonomically designed to give easy fit","Ergonomic executive chair upholstered in bonded black leather and PVC padded seat and back for all-day comfort and support","New ABC 13 9370, 13.3, 5th Gen CoreA5-8250U, 8GB RAM, 256GB SSD, power UHD Graphics, OS 10 Home, OS Office A & J 2016","New range of formal shirts are designed keeping you in mind. With fits and styling that will make you stand apart","The Apollotech B340 is an affordable wireless mouse with reliable connectivity, 12 months battery life and modern design","The Football Is Good For Training And Recreational Purposes","The Nagasaki Lander is the trademarked name of several series of Nagasaki sport bikes, that started with the 1984 ABC800J","The automobile layout consists of a front-engine design, with transaxle-type transmissions mounted at the rear of the engine and four wheel drive","The beautiful range of Apple Naturalé that has an exciting mix of natural ingredients. With the Goodness of 100% Natural Ingredients","The slim & simple Maple Gaming Keyboard from Dev Byte comes with a sleek body and 7- Color RGB LED Back-lighting for smart functionality"],product_name:{adjective:["Awesome","Bespoke","Electronic","Elegant","Ergonomic","Fantastic","Generic","Gorgeous","Handcrafted","Handmade","Incredible","Intelligent","Licensed","Luxurious","Modern","Oriental","Practical","Recycled","Refined","Rustic","Sleek","Small","Tasty","Unbranded"],material:["Bronze","Concrete","Cotton","Fresh","Frozen","Granite","Metal","Plastic","Rubber","Soft","Steel","Wooden"],product:["Bacon","Ball","Bike","Car","Chair","Cheese","Chicken","Chips","Computer","Fish","Gloves","Hat","Keyboard","Mouse","Pants","Pizza","Salad","Sausages","Shirt","Shoes","Soap","Table","Towels","Tuna"]}},company:{adjective:["Adaptive","Advanced","Ameliorated","Assimilated","Automated","Balanced","Business-focused","Centralized","Cloned","Compatible","Configurable","Cross-group","Cross-platform","Customer-focused","Customizable","De-engineered","Decentralized","Devolved","Digitized","Distributed","Diverse","Down-sized","Enhanced","Enterprise-wide","Ergonomic","Exclusive","Expanded","Extended","Face to face","Focused","Front-line","Fully-configurable","Function-based","Fundamental","Future-proofed","Grass-roots","Horizontal","Implemented","Innovative","Integrated","Intuitive","Inverse","Managed","Mandatory","Monitored","Multi-channelled","Multi-lateral","Multi-layered","Multi-tiered","Networked","Object-based","Open-architected","Open-source","Operative","Optimized","Optional","Organic","Organized","Persevering","Persistent","Phased","Polarised","Pre-emptive","Proactive","Profit-focused","Profound","Programmable","Progressive","Public-key","Quality-focused","Re-contextualized","Re-engineered","Reactive","Realigned","Reduced","Reverse-engineered","Right-sized","Robust","Seamless","Secured","Self-enabling","Sharable","Stand-alone","Streamlined","Switchable","Synchronised","Synergistic","Synergized","Team-oriented","Total","Triple-buffered","Universal","Up-sized","Upgradable","User-centric","User-friendly","Versatile","Virtual","Vision-oriented","Visionary"],buzz_adjective:["24/365","24/7","B2B","B2C","back-end","best-of-breed","bleeding-edge","bricks-and-clicks","clicks-and-mortar","collaborative","compelling","cross-media","cross-platform","customized","cutting-edge","distributed","dot-com","dynamic","e-business","efficient","end-to-end","enterprise","extensible","frictionless","front-end","global","granular","holistic","impactful","innovative","integrated","interactive","intuitive","killer","leading-edge","magnetic","mission-critical","next-generation","one-to-one","open-source","out-of-the-box","plug-and-play","proactive","real-time","revolutionary","rich","robust","scalable","seamless","sexy","sticky","strategic","synergistic","transparent","turn-key","ubiquitous","user-centric","value-added","vertical","viral","virtual","visionary","web-enabled","wireless","world-class"],buzz_noun:["ROI","action-items","applications","architectures","bandwidth","blockchains","channels","communities","content","convergence","deliverables","e-business","e-commerce","e-markets","experiences","eyeballs","functionalities","infrastructures","initiatives","interfaces","lifetime value","markets","methodologies","metrics","mindshare","models","networks","niches","paradigms","partnerships","platforms","portals","relationships","schemas","solutions","supply-chains","synergies","systems","technologies","users","web services"],buzz_verb:["aggregate","architect","benchmark","brand","cultivate","deliver","deploy","disintermediate","drive","e-enable","embrace","empower","enable","engage","engineer","enhance","envisioneer","evolve","expedite","exploit","extend","facilitate","generate","grow","harness","implement","incentivize","incubate","innovate","integrate","iterate","leverage","matrix","maximize","mesh","monetize","morph","optimize","orchestrate","productize","recontextualize","redefine","reintermediate","reinvent","repurpose","revolutionize","scale","seize","strategize","streamline","syndicate","synergize","synthesize","target","transform","transition","unleash","utilize","visualize","whiteboard"],descriptor:["24 hour","24/7","3rd generation","4th generation","5th generation","6th generation","actuating","analyzing","asymmetric","asynchronous","attitude-oriented","background","bandwidth-monitored","bi-directional","bifurcated","bottom-line","clear-thinking","client-driven","client-server","coherent","cohesive","composite","content-based","context-sensitive","contextually-based","dedicated","demand-driven","didactic","directional","discrete","disintermediate","dynamic","eco-centric","empowering","encompassing","even-keeled","executive","explicit","exuding","fault-tolerant","foreground","fresh-thinking","full-range","global","grid-enabled","heuristic","high-level","holistic","homogeneous","human-resource","hybrid","impactful","incremental","intangible","interactive","intermediate","leading edge","local","logistical","maximized","methodical","mission-critical","mobile","modular","motivating","multi-state","multi-tasking","multimedia","national","needs-based","neutral","next generation","non-volatile","object-oriented","optimal","optimizing","radical","real-time","reciprocal","regional","responsive","scalable","secondary","solution-oriented","stable","static","system-worthy","systematic","systemic","tangible","tertiary","transitional","uniform","upward-trending","user-facing","value-added","web-enabled","well-modulated","zero administration","zero defect","zero tolerance"],legal_entity_type:["Group","Inc","LLC","and Sons"],name_pattern:["{{person.last_name.generic}} - {{person.last_name.generic}}","{{person.last_name.generic}} {{company.legal_entity_type}}","{{person.last_name.generic}}, {{person.last_name.generic}} and {{person.last_name.generic}}"],noun:["Graphic Interface","Graphical User Interface","ability","access","adapter","algorithm","alliance","analyzer","application","approach","architecture","archive","array","artificial intelligence","attitude","benchmark","budgetary management","capability","capacity","challenge","circuit","collaboration","complexity","concept","conglomeration","contingency","core","customer loyalty","data-warehouse","database","definition","emulation","encoding","encryption","extranet","firmware","flexibility","focus group","forecast","frame","framework","function","functionalities","groupware","hardware","help-desk","hierarchy","hub","implementation","info-mediaries","infrastructure","initiative","installation","instruction set","interface","internet solution","intranet","knowledge base","knowledge user","leverage","local area network","matrices","matrix","methodology","middleware","migration","model","moderator","monitoring","moratorium","neural-net","open architecture","open system","orchestration","paradigm","parallelism","policy","portal","pricing structure","process improvement","product","productivity","project","projection","protocol","secured line","service-desk","software","solution","standardization","strategy","structure","success","superstructure","support","synergy","system engine","task-force","throughput","time-frame","toolset","utilisation","website","workforce"]},database:{column:["avatar","category","comment","createdAt","email","group","id","name","password","phone","status","title","token","updatedAt"]},date:{month:{wide:["April","August","December","February","January","July","June","March","May","November","October","September"],abbr:["Apr","Aug","Dec","Feb","Jan","Jul","Jun","Mar","May","Nov","Oct","Sep"]},weekday:{wide:["Friday","Monday","Saturday","Sunday","Thursday","Tuesday","Wednesday"],abbr:["Fri","Mon","Sat","Sun","Thu","Tue","Wed"]}},finance:{account_type:["Auto Loan","Checking","Credit Card","Home Loan","Investment","Money Market","Personal Loan","Savings"],credit_card:{american_express:["34##-######-####L","37##-######-####L"],diners_club:["30[0-5]#-######-###L","36##-######-###L","54##-####-####-###L"],discover:["6011-####-####-###L","6011-62##-####-####-###L","64[4-9]#-####-####-###L","64[4-9]#-62##-####-####-###L","65##-####-####-###L","65##-62##-####-####-###L"],jcb:["3528-####-####-###L","3529-####-####-###L","35[3-8]#-####-####-###L"],mastercard:["2[221-720]-####-####-###L","5[1-5]##-####-####-###L"],visa:["4###########L","4###-####-####-###L"]},currency:[{name:"UAE Dirham",code:"AED",symbol:""},{name:"Afghani",code:"AFN",symbol:"؋"},{name:"Lek",code:"ALL",symbol:"Lek"},{name:"Armenian Dram",code:"AMD",symbol:""},{name:"Netherlands Antillian Guilder",code:"ANG",symbol:"ƒ"},{name:"Kwanza",code:"AOA",symbol:""},{name:"Argentine Peso",code:"ARS",symbol:"$"},{name:"Australian Dollar",code:"AUD",symbol:"$"},{name:"Aruban Guilder",code:"AWG",symbol:"ƒ"},{name:"Azerbaijanian Manat",code:"AZN",symbol:"ман"},{name:"Convertible Marks",code:"BAM",symbol:"KM"},{name:"Barbados Dollar",code:"BBD",symbol:"$"},{name:"Taka",code:"BDT",symbol:""},{name:"Bulgarian Lev",code:"BGN",symbol:"лв"},{name:"Bahraini Dinar",code:"BHD",symbol:""},{name:"Burundi Franc",code:"BIF",symbol:""},{name:"Bermudian Dollar (customarily known as Bermuda Dollar)",code:"BMD",symbol:"$"},{name:"Brunei Dollar",code:"BND",symbol:"$"},{name:"Boliviano boliviano",code:"BOB",symbol:"Bs"},{name:"Brazilian Real",code:"BRL",symbol:"R$"},{name:"Bahamian Dollar",code:"BSD",symbol:"$"},{name:"Pula",code:"BWP",symbol:"P"},{name:"Belarusian Ruble",code:"BYN",symbol:"Rbl"},{name:"Belize Dollar",code:"BZD",symbol:"BZ$"},{name:"Canadian Dollar",code:"CAD",symbol:"$"},{name:"Congolese Franc",code:"CDF",symbol:""},{name:"Swiss Franc",code:"CHF",symbol:"CHF"},{name:"Chilean Peso",code:"CLP",symbol:"$"},{name:"Yuan Renminbi",code:"CNY",symbol:"¥"},{name:"Colombian Peso",code:"COP",symbol:"$"},{name:"Costa Rican Colon",code:"CRC",symbol:"₡"},{name:"Cuban Peso",code:"CUP",symbol:"₱"},{name:"Cape Verde Escudo",code:"CVE",symbol:""},{name:"Czech Koruna",code:"CZK",symbol:"Kč"},{name:"Djibouti Franc",code:"DJF",symbol:""},{name:"Danish Krone",code:"DKK",symbol:"kr"},{name:"Dominican Peso",code:"DOP",symbol:"RD$"},{name:"Algerian Dinar",code:"DZD",symbol:""},{name:"Egyptian Pound",code:"EGP",symbol:"£"},{name:"Nakfa",code:"ERN",symbol:""},{name:"Ethiopian Birr",code:"ETB",symbol:""},{name:"Euro",code:"EUR",symbol:"€"},{name:"Fiji Dollar",code:"FJD",symbol:"$"},{name:"Falkland Islands Pound",code:"FKP",symbol:"£"},{name:"Pound Sterling",code:"GBP",symbol:"£"},{name:"Lari",code:"GEL",symbol:""},{name:"Cedi",code:"GHS",symbol:""},{name:"Gibraltar Pound",code:"GIP",symbol:"£"},{name:"Dalasi",code:"GMD",symbol:""},{name:"Guinea Franc",code:"GNF",symbol:""},{name:"Quetzal",code:"GTQ",symbol:"Q"},{name:"Guyana Dollar",code:"GYD",symbol:"$"},{name:"Hong Kong Dollar",code:"HKD",symbol:"$"},{name:"Lempira",code:"HNL",symbol:"L"},{name:"Gourde",code:"HTG",symbol:""},{name:"Forint",code:"HUF",symbol:"Ft"},{name:"Rupiah",code:"IDR",symbol:"Rp"},{name:"New Israeli Sheqel",code:"ILS",symbol:"₪"},{name:"Bhutanese Ngultrum",code:"BTN",symbol:"Nu"},{name:"Indian Rupee",code:"INR",symbol:"₹"},{name:"Iraqi Dinar",code:"IQD",symbol:""},{name:"Iranian Rial",code:"IRR",symbol:"﷼"},{name:"Iceland Krona",code:"ISK",symbol:"kr"},{name:"Jamaican Dollar",code:"JMD",symbol:"J$"},{name:"Jordanian Dinar",code:"JOD",symbol:""},{name:"Yen",code:"JPY",symbol:"¥"},{name:"Kenyan Shilling",code:"KES",symbol:""},{name:"Som",code:"KGS",symbol:"лв"},{name:"Riel",code:"KHR",symbol:"៛"},{name:"Comoro Franc",code:"KMF",symbol:""},{name:"North Korean Won",code:"KPW",symbol:"₩"},{name:"Won",code:"KRW",symbol:"₩"},{name:"Kuwaiti Dinar",code:"KWD",symbol:""},{name:"Cayman Islands Dollar",code:"KYD",symbol:"$"},{name:"Tenge",code:"KZT",symbol:"лв"},{name:"Kip",code:"LAK",symbol:"₭"},{name:"Lebanese Pound",code:"LBP",symbol:"£"},{name:"Sri Lanka Rupee",code:"LKR",symbol:"₨"},{name:"Liberian Dollar",code:"LRD",symbol:"$"},{name:"Libyan Dinar",code:"LYD",symbol:""},{name:"Moroccan Dirham",code:"MAD",symbol:""},{name:"Moldovan Leu",code:"MDL",symbol:""},{name:"Malagasy Ariary",code:"MGA",symbol:""},{name:"Denar",code:"MKD",symbol:"ден"},{name:"Kyat",code:"MMK",symbol:""},{name:"Tugrik",code:"MNT",symbol:"₮"},{name:"Pataca",code:"MOP",symbol:""},{name:"Ouguiya",code:"MRU",symbol:""},{name:"Mauritius Rupee",code:"MUR",symbol:"₨"},{name:"Rufiyaa",code:"MVR",symbol:""},{name:"Kwacha",code:"MWK",symbol:""},{name:"Mexican Peso",code:"MXN",symbol:"$"},{name:"Malaysian Ringgit",code:"MYR",symbol:"RM"},{name:"Metical",code:"MZN",symbol:"MT"},{name:"Naira",code:"NGN",symbol:"₦"},{name:"Cordoba Oro",code:"NIO",symbol:"C$"},{name:"Norwegian Krone",code:"NOK",symbol:"kr"},{name:"Nepalese Rupee",code:"NPR",symbol:"₨"},{name:"New Zealand Dollar",code:"NZD",symbol:"$"},{name:"Rial Omani",code:"OMR",symbol:"﷼"},{name:"Balboa",code:"PAB",symbol:"B/."},{name:"Nuevo Sol",code:"PEN",symbol:"S/."},{name:"Kina",code:"PGK",symbol:""},{name:"Philippine Peso",code:"PHP",symbol:"Php"},{name:"Pakistan Rupee",code:"PKR",symbol:"₨"},{name:"Zloty",code:"PLN",symbol:"zł"},{name:"Guarani",code:"PYG",symbol:"Gs"},{name:"Qatari Rial",code:"QAR",symbol:"﷼"},{name:"New Leu",code:"RON",symbol:"lei"},{name:"Serbian Dinar",code:"RSD",symbol:"Дин."},{name:"Russian Ruble",code:"RUB",symbol:"руб"},{name:"Rwanda Franc",code:"RWF",symbol:""},{name:"Saudi Riyal",code:"SAR",symbol:"﷼"},{name:"Solomon Islands Dollar",code:"SBD",symbol:"$"},{name:"Seychelles Rupee",code:"SCR",symbol:"₨"},{name:"Sudanese Pound",code:"SDG",symbol:""},{name:"Swedish Krona",code:"SEK",symbol:"kr"},{name:"Singapore Dollar",code:"SGD",symbol:"$"},{name:"Saint Helena Pound",code:"SHP",symbol:"£"},{name:"Leone",code:"SLE",symbol:""},{name:"Somali Shilling",code:"SOS",symbol:"S"},{name:"Surinam Dollar",code:"SRD",symbol:"$"},{name:"South Sudanese pound",code:"SSP",symbol:""},{name:"Dobra",code:"STN",symbol:"Db"},{name:"Syrian Pound",code:"SYP",symbol:"£"},{name:"Lilangeni",code:"SZL",symbol:""},{name:"Baht",code:"THB",symbol:"฿"},{name:"Somoni",code:"TJS",symbol:""},{name:"Manat",code:"TMT",symbol:""},{name:"Tunisian Dinar",code:"TND",symbol:""},{name:"Pa'anga",code:"TOP",symbol:""},{name:"Turkish Lira",code:"TRY",symbol:"₺"},{name:"Trinidad and Tobago Dollar",code:"TTD",symbol:"TT$"},{name:"New Taiwan Dollar",code:"TWD",symbol:"NT$"},{name:"Tanzanian Shilling",code:"TZS",symbol:""},{name:"Hryvnia",code:"UAH",symbol:"₴"},{name:"Uganda Shilling",code:"UGX",symbol:""},{name:"US Dollar",code:"USD",symbol:"$"},{name:"Peso Uruguayo",code:"UYU",symbol:"$U"},{name:"Uzbekistan Sum",code:"UZS",symbol:"лв"},{name:"Venezuelan bolívar",code:"VES",symbol:"Bs"},{name:"Dong",code:"VND",symbol:"₫"},{name:"Vatu",code:"VUV",symbol:""},{name:"Tala",code:"WST",symbol:""},{name:"CFA Franc BEAC",code:"XAF",symbol:""},{name:"East Caribbean Dollar",code:"XCD",symbol:"$"},{name:"CFA Franc BCEAO",code:"XOF",symbol:""},{name:"CFP Franc",code:"XPF",symbol:""},{name:"Yemeni Rial",code:"YER",symbol:"﷼"},{name:"Rand",code:"ZAR",symbol:"R"},{name:"Lesotho Loti",code:"LSL",symbol:""},{name:"Namibia Dollar",code:"NAD",symbol:"N$"},{name:"Zambian Kwacha",code:"ZMW",symbol:"K"},{name:"Zimbabwe Dollar",code:"ZWL",symbol:""}],transaction_type:["deposit","invoice","payment","withdrawal"]},food:{adjective:["bitter","creamy","crispy","crunchy","delicious","fluffy","fresh","golden","juicy","moist","rich","salty","savory","smoky","sour","spicy","sweet","tangy","tender","zesty"],description_pattern:["A classic pie filled with delicious {{food.meat}} and {{food.adjective}} {{food.ingredient}}, baked in a {{food.adjective}} pastry crust and topped with a golden-brown lattice.","A delightful tart combining {{food.adjective}} {{food.vegetable}} and sweet {{food.fruit}}, set in a buttery pastry shell and finished with a hint of {{food.spice}}.","A heartwarming {{food.ethnic_category}} soup, featuring fresh {{food.ingredient}} and an aromatic blend of traditional spices.","A robust {{food.adjective}} stew featuring {{food.ethnic_category}} flavors, loaded with {{food.adjective}} meat, {{food.adjective}} vegetables, and a {{food.adjective}}, {{food.adjective}} broth.","A simple {{food.fruit}} pie. No fancy stuff. Just pie.","A slow-roasted {{animal.bird}} with a {{food.adjective}}, {{food.adjective}} exterior. Stuffed with {{food.fruit}} and covered in {{food.fruit}} sauce. Sides with {{food.vegetable}} puree and wild {{food.vegetable}}.","A special {{color.human}} {{food.ingredient}} from {{location.country}}. To support the strong flavor it is sided with a tablespoon of {{food.spice}}.","A succulent {{food.meat}} steak, encased in a {{food.adjective}} {{food.spice}} crust, served with a side of {{food.spice}} mashed {{food.vegetable}}.","An exquisite {{food.meat}} roast, infused with the essence of {{food.fruit}}, slow-roasted to bring out its natural flavors and served with a side of creamy {{food.vegetable}}","Baked {{food.ingredient}}-stuffed {{food.meat}}, seasoned with {{food.spice}} and {{food.adjective}} herbs, accompanied by roasted {{food.vegetable}} medley.","Crispy fried {{food.meat}} bites, seasoned with {{food.spice}} and served with a tangy {{food.fruit}} dipping sauce.","Fresh mixed greens tossed with {{food.spice}}-rubbed {{food.meat}}, {{food.vegetable}}, and a light dressing.","Fresh {{food.ingredient}} with a pinch of {{food.spice}}, topped by a caramelized {{food.fruit}} with whipped cream","Grilled {{food.meat}} kebabs, marinated in {{food.ethnic_category}} spices and served with a fresh {{food.vegetable}} and {{food.fruit}} salad.","Hearty {{food.ingredient}} and {{food.meat}} stew, slow-cooked with {{food.spice}} and {{food.vegetable}} for a comforting, flavorful meal.","Juicy {{food.meat}}, grilled to your liking and drizzled with a bold {{food.spice}} sauce, served alongside roasted {{food.vegetable}}.","Our {{food.adjective}} {{food.meat}}, slow-cooked to perfection, accompanied by steamed {{food.vegetable}} and a rich, savory gravy.","Tender {{food.meat}} skewers, glazed with a sweet and tangy {{food.fruit}} sauce, served over a bed of fragrant jasmine rice.","Tenderly braised {{food.meat}} in a rich {{food.spice}} and {{food.vegetable}} sauce, served with a side of creamy {{food.vegetable}}.","Three {{food.ingredient}} with {{food.vegetable}}, {{food.vegetable}}, {{food.vegetable}}, {{food.vegetable}} and {{food.ingredient}}. With a side of baked {{food.fruit}}, and your choice of {{food.ingredient}} or {{food.ingredient}}.",'{{number.int({"min":1, "max":99})}}-day aged {{food.meat}} steak, with choice of {{number.int({"min":2, "max":4})}} sides.'],dish:["California maki","Peking duck","Philadelphia maki","arepas","barbecue ribs","bruschette with tomato","bunny chow","caesar salad","caprese salad","cauliflower penne","cheeseburger","chicken fajitas","chicken milanese","chicken parm","chicken wings","chilli con carne","ebiten maki","fettuccine alfredo","fish and chips","french fries with sausages","french toast","hummus","katsu curry","kebab","lasagne","linguine with clams","massaman curry","meatballs with sauce","mushroom risotto","pappardelle alla bolognese","pasta and beans","pasta carbonara","pasta with tomato and basil","pho","pierogi","pizza","poke","pork belly buns","pork sausage roll","poutine","ricotta stuffed ravioli","risotto with seafood","salmon nigiri","scotch eggs","seafood paella","som tam","souvlaki","stinky tofu","sushi","tacos","teriyaki chicken donburi","tiramisù","tuna sashimi","vegetable soup"],dish_pattern:["{{food.adjective}} {{food.ethnic_category}} stew","{{food.adjective}} {{food.meat}} with {{food.vegetable}}","{{food.ethnic_category}} {{food.ingredient}} soup","{{food.fruit}} and {{food.fruit}} tart","{{food.fruit}} pie","{{food.fruit}}-glazed {{food.meat}} skewers","{{food.fruit}}-infused {{food.meat}} roast","{{food.ingredient}} and {{food.meat}} pie","{{food.ingredient}}-infused {{food.meat}}","{{food.meat}} steak","{{food.meat}} with {{food.fruit}} sauce","{{food.spice}}-crusted {{food.meat}}","{{food.spice}}-rubbed {{food.meat}} salad","{{food.vegetable}} salad","{{person.first_name.generic}}'s special {{food.ingredient}}"],ethnic_category:["Ainu","Albanian","American","Andhra","Anglo-Indian","Arab","Argentine","Armenian","Assyrian","Awadhi","Azerbaijani","Balochi","Bangladeshi","Bashkir","Belarusian","Bengali","Berber","Brazilian","British","Buddhist","Bulgarian","Cajun","Cantonese","Caribbean","Chechen","Chinese","Chinese Islamic","Circassian","Crimean Tatar","Cypriot","Czech","Danish","Egyptian","English","Eritrean","Estonian","Ethiopian","Filipino","French","Georgian","German","Goan","Goan Catholic","Greek","Gujarati","Hyderabad","Indian","Indian Chinese","Indian Singaporean","Indonesian","Inuit","Irish","Italian","Italian-American","Jamaican","Japanese","Jewish - Israeli","Karnataka","Kazakh","Keralite","Korean","Kurdish","Laotian","Latvian","Lebanese","Lithuanian","Louisiana Creole","Maharashtrian","Malay","Malaysian Chinese","Malaysian Indian","Mangalorean","Mediterranean","Mennonite","Mexican","Mordovian","Mughal","Native American","Nepalese","New Mexican","Odia","Pakistani","Parsi","Pashtun","Pennsylvania Dutch","Peranakan","Persian","Peruvian","Polish","Portuguese","Punjabi","Québécois","Rajasthani","Romani","Romanian","Russian","Sami","Serbian","Sindhi","Slovak","Slovenian","Somali","South Indian","Soviet","Spanish","Sri Lankan","Taiwanese","Tamil","Tatar","Texan","Thai","Turkish","Udupi","Ukrainian","Vietnamese","Yamal","Zambian","Zanzibari"],fruit:["apple","apricot","aubergine","avocado","banana","berry","blackberry","blood orange","blueberry","bush tomato","butternut pumpkin","cantaloupe","cavalo","cherry","corella pear","cranberry","cumquat","currant","custard apple","custard apples daikon","date","dragonfruit","dried apricot","elderberry","feijoa","fig","fingerlime","goji berry","grape","grapefruit","guava","honeydew melon","incaberry","jarrahdale pumpkin","juniper berry","kiwi fruit","kiwiberry","lemon","lime","longan","loquat","lychee","mandarin","mango","mangosteen","melon","mulberry","nashi pear","nectarine","olive","orange","papaw","papaya","passionfruit","peach","pear","pineapple","plum","pomegranate","prune","rockmelon","snowpea","sprout","starfruit","strawberry","sultana","tangelo","tomato","watermelon"],ingredient:["achacha","adzuki beans","agar","agave syrup","ajowan seed","albacore tuna","alfalfa","allspice","almond oil","almonds","amaranth","amchur","anchovies","aniseed","annatto seed","apple cider vinegar","apple juice","apple juice concentrate","apples","apricots","arborio rice","arrowroot","artichoke","arugula","asafoetida","asian greens","asian noodles","asparagus","aubergine","avocado","avocado oil","avocado spread","bacon","baking powder","baking soda","balsamic vinegar","bamboo shoots","banana","barberry","barley","barramundi","basil basmati rice","bay leaves","bean shoots","bean sprouts","beans","beef","beef stock","beetroot","berries","besan","black eyed beans","blackberries","blood oranges","blue cheese","blue eye trevalla","blue swimmer crab","blueberries","bocconcini","bok choy","bonito flakes","bonza","borlotti beans","bran","brazil nut","bread","brie","broccoli","broccolini","brown flour","brown mushrooms","brown rice","brown rice vinegar","brussels sprouts","buckwheat","buckwheat flour","buckwheat noodles","bulghur","bush tomato","butter","butter beans","buttermilk","butternut lettuce","butternut pumpkin","cabbage","cacao","cake","calamari","camellia tea oil","camembert","camomile","candle nut","cannellini beans","canola oil","cantaloupe","capers","capsicum","caraway seed","cardamom","carob carrot","carrot","cashews","cassia bark","cauliflower","cavalo","cayenne","celery","celery seed","cheddar","cherries","chestnut","chia seeds","chicken","chicken stock","chickory","chickpea","chilli pepper","chinese cabbage","chinese five spice","chives","choy sum","cinnamon","clams","cloves","cocoa powder","coconut","coconut oil","coconut water","coffee","common cultivated mushrooms","corella pear","coriander leaves","coriander seed","corn oil","corn syrup","corn tortilla","cornichons","cornmeal","cos lettuce","cottage cheese","cous cous","crabs","cranberry","cream","cream cheese","cucumber","cumin","cumquat","currants","curry leaves","curry powder","custard apples","dandelion","dark chocolate","dashi","dates","dill","dragonfruit","dried apricots","dried chinese broccoli","duck","edam","edamame","eggplant","eggs","elderberry","endive","english spinach","enoki mushrooms","extra virgin olive oil","farmed prawns","feijoa","fennel","fennel seeds","fenugreek","feta","figs","file powder","fingerlime","fish sauce","fish stock","flat mushrooms","flathead","flaxseed","flaxseed oil","flounder","flour","freekeh","french eschallots","fresh chillies","fromage blanc","fruit","galangal","garam masala","garlic","goat cheese","goat milk","goji berry","grape seed oil","grapefruit","grapes","green beans","green pepper","green tea","green tea noodles","greenwheat freekeh","gruyere","guava","gula melaka","haloumi","ham","haricot beans","harissa","hazelnut","hijiki","hiramasa kingfish","hokkien noodles","honey","honeydew melon","horseradish","hot smoked salmon","hummus","iceberg lettuce","incaberries","jarrahdale pumpkin","jasmine rice","jelly","jerusalem artichoke","jewfish","jicama","juniper berries","kale","kangaroo","kecap manis","kenchur","kidney beans","kidneys","kiwi berries","kiwi fruit","kohlrabi","kokam","kombu","koshihikari rice","kudzu","kumera","lamb","lavender flowers","leeks","lemon","lemongrass","lentils","lettuce","licorice","lime leaves","limes","liver","lobster","longan","loquats","lotus root","lychees","macadamia nut","macadamia oil","mace","mackerel","mahi mahi","mahlab","malt vinegar","mandarins","mango","mangosteens","maple syrup","margarine","marigold","marjoram","mastic","melon","milk","milk chocolate","mint","miso","molasses","monkfish","morwong","mountain bread","mozzarella","muesli","mulberries","mullet","mung beans","mussels","mustard","mustard seed","nashi pear","nasturtium","nectarines","nori","nutmeg","nutritional yeast","nuts","oat flour","oatmeal","oats","octopus","okra","olive oil","olives","omega spread","onion","oranges","oregano","oyster mushrooms","oyster sauce","oysters","pandanus leaves","papaw","papaya","paprik","parmesan cheese","parrotfish","parsley","parsnip","passionfruit","pasta","peaches","peanuts","pear","pear juice","pears","peas","pecan nut","pecorino","pepitas","peppercorns","peppermint","peppers","persimmon","pine nut","pineapple","pinto beans","pistachio nut","plums","polenta","pomegranate","poppy seed","porcini mushrooms","pork","potato flour","potatoes","provolone","prunes","pumpkin","pumpkin seed","purple carrot","purple rice","quark","quince","quinoa","radicchio","radish","raisin","raspberry","red cabbage","red lentils","red pepper","red wine","red wine vinegar","redfish","rhubarb","rice flour","rice noodles","rice paper","rice syrup","ricemilk","ricotta","rockmelon","rose water","rosemary","rye","rye bread","safflower oil","saffron","sage","sake","salmon","sardines","sausages","scallops","sea salt","semolina","sesame oil","sesame seeds","shark","shiitake mushrooms","silverbeet","slivered almonds","smoked trout","snapper","snowpea sprouts","snowpeas","soba","sour dough bread","soy","soy beans","soy flour","soy milk","soy sauce","soymilk","spearmint","spelt","spelt bread","spinach","spring onions","sprouts","squash","squid","star anise","star fruit","starfruit","stevia","strawberries","sugar","sultanas","sun-dried tomatoes","sunflower oil","sunflower seeds","sweet chilli sauce","sweet potato","swiss chard","swordfish","szechuan pepperberry","tabasco","tahini","taleggio cheese","tamari","tamarillo","tangelo","tapioca","tapioca flour","tarragon","tea","tea oil","tempeh","thyme","tinned","tofu","tom yum","tomatoes","trout","tuna","turkey","turmeric","turnips","unbleached flour","vanilla beans","vegetable oil","vegetable spaghetti","vegetable stock","vermicelli noodles","vinegar","wakame","walnut","warehou","wasabi","water","watercress","watermelon","wattleseed","wheat","wheatgrass juice","white bread","white flour","white rice","white wine","white wine vinegar","whiting wild rice","wholegrain bread","wholemeal","wholewheat flour","william pear","yeast","yellow papaw","yellowtail kingfish","yoghurt","yogurt","zucchini"],meat:["beef","chicken","crocodile","duck","emu","goose","kangaroo","lamb","ostrich","pigeon","pork","quail","rabbit","salmon","turkey","venison"],spice:["achiote seed","ajwain seed","ajwan seed","allspice","amchoor","anise","anise star","aniseed","annatto seed","arrowroot","asafoetida","baharat","balti masala","balti stir fry mix","basil","bay leaves","bbq","caraway seed","cardamom","cassia","cayenne pepper","celery","chamomile","chervil","chilli","chilli pepper","chillies","china star","chives","cinnamon","cloves","colombo","coriander","cumin","curly leaf parsley","curry","dhansak","dill","fennel seed","fenugreek","fines herbes","five spice","french lavender","galangal","garam masala","garlic","german chamomile","ginger","green cardamom","herbes de provence","jalfrezi","jerk","kaffir leaves","korma","lavender","lemon grass","lemon pepper","lime leaves","liquorice root","mace","mango","marjoram","methi","mint","mustard","nutmeg","onion seed","orange zest","oregano","paprika","parsley","pepper","peppercorns","pimento","piri piri","poppy seed","pot marjoram","poudre de colombo","ras-el-hanout","rice paper","rogan josh","rose baie","rosemary","saffron","sage","sesame seed","spearmint","sumac","sweet basil","sweet laurel","tagine","tandoori masala","tarragon","thyme","tikka masala","turmeric","vanilla","zahtar"],vegetable:["artichoke","arugula","asian greens","asparagus","bean shoots","bean sprouts","beans","beetroot","bok choy","broccoli","broccolini","brussels sprouts","butternut lettuce","cabbage","capers","carob carrot","carrot","cauliflower","celery","chilli pepper","chinese cabbage","chives","cornichons","cos lettuce","cucumber","dried chinese broccoli","eggplant","endive","english spinach","french eschallots","fresh chillies","garlic","green beans","green pepper","hijiki","iceberg lettuce","jerusalem artichoke","jicama","kale","kohlrabi","leeks","lettuce","okra","onion","parsnip","peas","peppers","potatoes","pumpkin","purple carrot","radicchio","radish","raspberry","red cabbage","red pepper","rhubarb","snowpea sprouts","spinach","squash","sun dried tomatoes","sweet potato","swiss chard","turnips","zucchini"]},hacker:{adjective:["1080p","auxiliary","back-end","bluetooth","cross-platform","digital","haptic","mobile","multi-byte","neural","online","open-source","optical","primary","redundant","solid state","virtual","wireless"],ingverb:["backing up","bypassing","calculating","compressing","connecting","copying","generating","hacking","indexing","navigating","overriding","parsing","programming","quantifying","synthesizing","transmitting"],noun:["alarm","application","array","bandwidth","bus","capacitor","card","circuit","driver","feed","firewall","hard drive","interface","matrix","microchip","monitor","panel","pixel","port","program","protocol","sensor","system","transmitter"],phrase:["I'll {{verb}} the {{adjective}} {{abbreviation}} {{noun}}, that should {{noun}} the {{abbreviation}} {{noun}}!","If we {{verb}} the {{noun}}, we can get to the {{abbreviation}} {{noun}} through the {{adjective}} {{abbreviation}} {{noun}}!","The {{abbreviation}} {{noun}} is down, {{verb}} the {{adjective}} {{noun}} so we can {{verb}} the {{abbreviation}} {{noun}}!","Try to {{verb}} the {{abbreviation}} {{noun}}, maybe it will {{verb}} the {{adjective}} {{noun}}!","Use the {{adjective}} {{abbreviation}} {{noun}}, then you can {{verb}} the {{adjective}} {{noun}}!","We need to {{verb}} the {{adjective}} {{abbreviation}} {{noun}}!","You can't {{verb}} the {{noun}} without {{ingverb}} the {{adjective}} {{abbreviation}} {{noun}}!","{{ingverb}} the {{noun}} won't do anything, we need to {{verb}} the {{adjective}} {{abbreviation}} {{noun}}!"],verb:["back up","bypass","calculate","compress","connect","copy","generate","hack","index","input","navigate","override","parse","program","quantify","reboot","synthesize","transmit"]},internet:{domain_suffix:["com","biz","info","name","net","org"],example_email:["example.org","example.com","example.net"],free_email:["gmail.com","yahoo.com","hotmail.com"]},location:{building_number:["#####","####","###"],city_name:["Abilene","Akron","Alafaya","Alameda","Albany","Albuquerque","Alexandria","Alhambra","Aliso Viejo","Allen","Allentown","Aloha","Alpharetta","Altadena","Altamonte Springs","Altoona","Amarillo","Ames","Anaheim","Anchorage","Anderson","Ankeny","Ann Arbor","Annandale","Antelope","Antioch","Apex","Apopka","Apple Valley","Appleton","Arcadia","Arden-Arcade","Arecibo","Arlington","Arlington Heights","Arvada","Ashburn","Asheville","Aspen Hill","Atascocita","Athens-Clarke County","Atlanta","Attleboro","Auburn","Augusta-Richmond County","Aurora","Austin","Avondale","Azusa","Bakersfield","Baldwin Park","Baltimore","Barnstable Town","Bartlett","Baton Rouge","Battle Creek","Bayamon","Bayonne","Baytown","Beaumont","Beavercreek","Beaverton","Bedford","Bel Air South","Bell Gardens","Belleville","Bellevue","Bellflower","Bellingham","Bend","Bentonville","Berkeley","Berwyn","Bethesda","Bethlehem","Billings","Biloxi","Binghamton","Birmingham","Bismarck","Blacksburg","Blaine","Bloomington","Blue Springs","Boca Raton","Boise City","Bolingbrook","Bonita Springs","Bossier City","Boston","Bothell","Boulder","Bountiful","Bowie","Bowling Green","Boynton Beach","Bozeman","Bradenton","Brandon","Brentwood","Bridgeport","Bristol","Brockton","Broken Arrow","Brookhaven","Brookline","Brooklyn Park","Broomfield","Brownsville","Bryan","Buckeye","Buena Park","Buffalo","Buffalo Grove","Burbank","Burien","Burke","Burleson","Burlington","Burnsville","Caguas","Caldwell","Camarillo","Cambridge","Camden","Canton","Cape Coral","Carlsbad","Carmel","Carmichael","Carolina","Carrollton","Carson","Carson City","Cary","Casa Grande","Casas Adobes","Casper","Castle Rock","Castro Valley","Catalina Foothills","Cathedral City","Catonsville","Cedar Hill","Cedar Park","Cedar Rapids","Centennial","Centreville","Ceres","Cerritos","Champaign","Chandler","Chapel Hill","Charleston","Charlotte","Charlottesville","Chattanooga","Cheektowaga","Chesapeake","Chesterfield","Cheyenne","Chicago","Chico","Chicopee","Chino","Chino Hills","Chula Vista","Cicero","Cincinnati","Citrus Heights","Clarksville","Clearwater","Cleveland","Cleveland Heights","Clifton","Clovis","Coachella","Coconut Creek","Coeur d'Alene","College Station","Collierville","Colorado Springs","Colton","Columbia","Columbus","Commerce City","Compton","Concord","Conroe","Conway","Coon Rapids","Coral Gables","Coral Springs","Corona","Corpus Christi","Corvallis","Costa Mesa","Council Bluffs","Country Club","Covina","Cranston","Cupertino","Cutler Bay","Cuyahoga Falls","Cypress","Dale City","Dallas","Daly City","Danbury","Danville","Davenport","Davie","Davis","Dayton","Daytona Beach","DeKalb","DeSoto","Dearborn","Dearborn Heights","Decatur","Deerfield Beach","Delano","Delray Beach","Deltona","Denton","Denver","Des Moines","Des Plaines","Detroit","Diamond Bar","Doral","Dothan","Downers Grove","Downey","Draper","Dublin","Dubuque","Duluth","Dundalk","Dunwoody","Durham","Eagan","East Hartford","East Honolulu","East Lansing","East Los Angeles","East Orange","East Providence","Eastvale","Eau Claire","Eden Prairie","Edina","Edinburg","Edmond","El Cajon","El Centro","El Dorado Hills","El Monte","El Paso","Elgin","Elizabeth","Elk Grove","Elkhart","Ellicott City","Elmhurst","Elyria","Encinitas","Enid","Enterprise","Erie","Escondido","Euclid","Eugene","Euless","Evanston","Evansville","Everett","Fairfield","Fall River","Fargo","Farmington","Farmington Hills","Fayetteville","Federal Way","Findlay","Fishers","Flagstaff","Flint","Florence-Graham","Florin","Florissant","Flower Mound","Folsom","Fond du Lac","Fontana","Fort Collins","Fort Lauderdale","Fort Myers","Fort Pierce","Fort Smith","Fort Wayne","Fort Worth","Fountain Valley","Fountainebleau","Framingham","Franklin","Frederick","Freeport","Fremont","Fresno","Frisco","Fullerton","Gainesville","Gaithersburg","Galveston","Garden Grove","Gardena","Garland","Gary","Gastonia","Georgetown","Germantown","Gilbert","Gilroy","Glen Burnie","Glendale","Glendora","Glenview","Goodyear","Grand Forks","Grand Island","Grand Junction","Grand Prairie","Grand Rapids","Grapevine","Great Falls","Greeley","Green Bay","Greensboro","Greenville","Greenwood","Gresham","Guaynabo","Gulfport","Hacienda Heights","Hackensack","Haltom City","Hamilton","Hammond","Hampton","Hanford","Harlingen","Harrisburg","Harrisonburg","Hartford","Hattiesburg","Haverhill","Hawthorne","Hayward","Hemet","Hempstead","Henderson","Hendersonville","Hesperia","Hialeah","Hicksville","High Point","Highland","Highlands Ranch","Hillsboro","Hilo","Hoboken","Hoffman Estates","Hollywood","Homestead","Honolulu","Hoover","Houston","Huntersville","Huntington","Huntington Beach","Huntington Park","Huntsville","Hutchinson","Idaho Falls","Independence","Indianapolis","Indio","Inglewood","Iowa City","Irondequoit","Irvine","Irving","Jackson","Jacksonville","Janesville","Jefferson City","Jeffersonville","Jersey City","Johns Creek","Johnson City","Joliet","Jonesboro","Joplin","Jupiter","Jurupa Valley","Kalamazoo","Kannapolis","Kansas City","Kearny","Keller","Kendale Lakes","Kendall","Kenner","Kennewick","Kenosha","Kent","Kentwood","Kettering","Killeen","Kingsport","Kirkland","Kissimmee","Knoxville","Kokomo","La Crosse","La Habra","La Mesa","La Mirada","Lacey","Lafayette","Laguna Niguel","Lake Charles","Lake Elsinore","Lake Forest","Lake Havasu City","Lake Ridge","Lakeland","Lakeville","Lakewood","Lancaster","Lansing","Laredo","Largo","Las Cruces","Las Vegas","Lauderhill","Lawrence","Lawton","Layton","League City","Lee's Summit","Leesburg","Lehi","Lehigh Acres","Lenexa","Levittown","Lewisville","Lexington-Fayette","Lincoln","Linden","Little Rock","Littleton","Livermore","Livonia","Lodi","Logan","Lombard","Lompoc","Long Beach","Longmont","Longview","Lorain","Los Angeles","Louisville/Jefferson County","Loveland","Lowell","Lubbock","Lynchburg","Lynn","Lynwood","Macon-Bibb County","Madera","Madison","Malden","Manchester","Manhattan","Mansfield","Manteca","Maple Grove","Margate","Maricopa","Marietta","Marysville","Mayaguez","McAllen","McKinney","McLean","Medford","Melbourne","Memphis","Menifee","Mentor","Merced","Meriden","Meridian","Mesa","Mesquite","Metairie","Methuen Town","Miami","Miami Beach","Miami Gardens","Middletown","Midland","Midwest City","Milford","Millcreek","Milpitas","Milwaukee","Minneapolis","Minnetonka","Minot","Miramar","Mishawaka","Mission","Mission Viejo","Missoula","Missouri City","Mobile","Modesto","Moline","Monroe","Montebello","Monterey Park","Montgomery","Moore","Moreno Valley","Morgan Hill","Mount Pleasant","Mount Prospect","Mount Vernon","Mountain View","Muncie","Murfreesboro","Murray","Murrieta","Nampa","Napa","Naperville","Nashua","Nashville-Davidson","National City","New Bedford","New Braunfels","New Britain","New Brunswick","New Haven","New Orleans","New Rochelle","New York","Newark","Newport Beach","Newport News","Newton","Niagara Falls","Noblesville","Norfolk","Normal","Norman","North Bethesda","North Charleston","North Highlands","North Las Vegas","North Lauderdale","North Little Rock","North Miami","North Miami Beach","North Port","North Richland Hills","Norwalk","Novato","Novi","O'Fallon","Oak Lawn","Oak Park","Oakland","Oakland Park","Ocala","Oceanside","Odessa","Ogden","Oklahoma City","Olathe","Olympia","Omaha","Ontario","Orange","Orem","Orland Park","Orlando","Oro Valley","Oshkosh","Overland Park","Owensboro","Oxnard","Palatine","Palm Bay","Palm Beach Gardens","Palm Coast","Palm Desert","Palm Harbor","Palm Springs","Palmdale","Palo Alto","Paradise","Paramount","Parker","Parma","Pasadena","Pasco","Passaic","Paterson","Pawtucket","Peabody","Pearl City","Pearland","Pembroke Pines","Pensacola","Peoria","Perris","Perth Amboy","Petaluma","Pflugerville","Pharr","Philadelphia","Phoenix","Pico Rivera","Pine Bluff","Pine Hills","Pinellas Park","Pittsburg","Pittsburgh","Pittsfield","Placentia","Plainfield","Plano","Plantation","Pleasanton","Plymouth","Pocatello","Poinciana","Pomona","Pompano Beach","Ponce","Pontiac","Port Arthur","Port Charlotte","Port Orange","Port St. Lucie","Portage","Porterville","Portland","Portsmouth","Potomac","Poway","Providence","Provo","Pueblo","Quincy","Racine","Raleigh","Rancho Cordova","Rancho Cucamonga","Rancho Palos Verdes","Rancho Santa Margarita","Rapid City","Reading","Redding","Redlands","Redmond","Redondo Beach","Redwood City","Reno","Renton","Reston","Revere","Rialto","Richardson","Richland","Richmond","Rio Rancho","Riverside","Riverton","Riverview","Roanoke","Rochester","Rochester Hills","Rock Hill","Rockford","Rocklin","Rockville","Rockwall","Rocky Mount","Rogers","Rohnert Park","Rosemead","Roseville","Roswell","Round Rock","Rowland Heights","Rowlett","Royal Oak","Sacramento","Saginaw","Salem","Salina","Salinas","Salt Lake City","Sammamish","San Angelo","San Antonio","San Bernardino","San Bruno","San Buenaventura (Ventura)","San Clemente","San Diego","San Francisco","San Jacinto","San Jose","San Juan","San Leandro","San Luis Obispo","San Marcos","San Mateo","San Rafael","San Ramon","San Tan Valley","Sandy","Sandy Springs","Sanford","Santa Ana","Santa Barbara","Santa Clara","Santa Clarita","Santa Cruz","Santa Fe","Santa Maria","Santa Monica","Santa Rosa","Santee","Sarasota","Savannah","Sayreville","Schaumburg","Schenectady","Scottsdale","Scranton","Seattle","Severn","Shawnee","Sheboygan","Shoreline","Shreveport","Sierra Vista","Silver Spring","Simi Valley","Sioux City","Sioux Falls","Skokie","Smyrna","Somerville","South Bend","South Gate","South Hill","South Jordan","South San Francisco","South Valley","South Whittier","Southaven","Southfield","Sparks","Spokane","Spokane Valley","Spring","Spring Hill","Spring Valley","Springdale","Springfield","St. Charles","St. Clair Shores","St. Cloud","St. George","St. Joseph","St. Louis","St. Louis Park","St. Paul","St. Peters","St. Petersburg","Stamford","State College","Sterling Heights","Stillwater","Stockton","Stratford","Strongsville","Suffolk","Sugar Land","Summerville","Sunnyvale","Sunrise","Sunrise Manor","Surprise","Syracuse","Tacoma","Tallahassee","Tamarac","Tamiami","Tampa","Taunton","Taylor","Taylorsville","Temecula","Tempe","Temple","Terre Haute","Texas City","The Hammocks","The Villages","The Woodlands","Thornton","Thousand Oaks","Tigard","Tinley Park","Titusville","Toledo","Toms River","Tonawanda","Topeka","Torrance","Town 'n' Country","Towson","Tracy","Trenton","Troy","Trujillo Alto","Tuckahoe","Tucson","Tulare","Tulsa","Turlock","Tuscaloosa","Tustin","Twin Falls","Tyler","Union City","University","Upland","Urbana","Urbandale","Utica","Vacaville","Valdosta","Vallejo","Vancouver","Victoria","Victorville","Vineland","Virginia Beach","Visalia","Vista","Waco","Waipahu","Waldorf","Walnut Creek","Waltham","Warner Robins","Warren","Warwick","Washington","Waterbury","Waterloo","Watsonville","Waukegan","Waukesha","Wauwatosa","Wellington","Wesley Chapel","West Allis","West Babylon","West Covina","West Des Moines","West Hartford","West Haven","West Jordan","West Lafayette","West New York","West Palm Beach","West Sacramento","West Seneca","West Valley City","Westfield","Westland","Westminster","Weston","Weymouth Town","Wheaton","White Plains","Whittier","Wichita","Wichita Falls","Wilmington","Wilson","Winston-Salem","Woodbury","Woodland","Worcester","Wylie","Wyoming","Yakima","Yonkers","Yorba Linda","York","Youngstown","Yuba City","Yucaipa","Yuma"],city_pattern:["{{location.city_prefix}} {{person.first_name.generic}}{{location.city_suffix}}","{{location.city_prefix}} {{person.first_name.generic}}","{{person.first_name.generic}}{{location.city_suffix}}","{{person.last_name.generic}}{{location.city_suffix}}","{{location.city_name}}"],city_prefix:["North","East","West","South","New","Lake","Port","Fort"],city_suffix:["town","ton","land","ville","berg","burgh","boro","borough","bury","view","port","mouth","stad","stead","furt","chester","cester","fort","field","haven","side","shire","worth"],country:["Afghanistan","Aland Islands","Albania","Algeria","American Samoa","Andorra","Angola","Anguilla","Antarctica","Antigua and Barbuda","Argentina","Armenia","Aruba","Australia","Austria","Azerbaijan","Bahamas","Bahrain","Bangladesh","Barbados","Belarus","Belgium","Belize","Benin","Bermuda","Bhutan","Bolivia","Bonaire, Sint Eustatius and Saba","Bosnia and Herzegovina","Botswana","Bouvet Island","Brazil","British Indian Ocean Territory (Chagos Archipelago)","Brunei Darussalam","Bulgaria","Burkina Faso","Burundi","Cambodia","Cameroon","Canada","Cape Verde","Cayman Islands","Central African Republic","Chad","Chile","China","Christmas Island","Cocos (Keeling) Islands","Colombia","Comoros","Congo","Cook Islands","Costa Rica","Cote d'Ivoire","Croatia","Cuba","Curacao","Cyprus","Czechia","Democratic Republic of the Congo","Denmark","Djibouti","Dominica","Dominican Republic","Ecuador","Egypt","El Salvador","Equatorial Guinea","Eritrea","Estonia","Eswatini","Ethiopia","Faroe Islands","Falkland Islands (Malvinas)","Fiji","Finland","France","French Guiana","French Polynesia","French Southern Territories","Gabon","Gambia","Georgia","Germany","Ghana","Gibraltar","Greece","Greenland","Grenada","Guadeloupe","Guam","Guatemala","Guernsey","Guinea","Guinea-Bissau","Guyana","Haiti","Heard Island and McDonald Islands","Holy See (Vatican City State)","Honduras","Hong Kong","Hungary","Iceland","India","Indonesia","Iran","Iraq","Ireland","Isle of Man","Israel","Italy","Jamaica","Japan","Jersey","Jordan","Kazakhstan","Kenya","Kiribati","Democratic People's Republic of Korea","Republic of Korea","Kuwait","Kyrgyz Republic","Lao People's Democratic Republic","Latvia","Lebanon","Lesotho","Liberia","Libyan Arab Jamahiriya","Liechtenstein","Lithuania","Luxembourg","Macao","Madagascar","Malawi","Malaysia","Maldives","Mali","Malta","Marshall Islands","Martinique","Mauritania","Mauritius","Mayotte","Mexico","Micronesia","Moldova","Monaco","Mongolia","Montenegro","Montserrat","Morocco","Mozambique","Myanmar","Namibia","Nauru","Nepal","Netherlands","New Caledonia","New Zealand","Nicaragua","Niger","Nigeria","Niue","Norfolk Island","North Macedonia","Northern Mariana Islands","Norway","Oman","Pakistan","Palau","Palestine","Panama","Papua New Guinea","Paraguay","Peru","Philippines","Pitcairn Islands","Poland","Portugal","Puerto Rico","Qatar","Reunion","Romania","Russian Federation","Rwanda","Saint Barthelemy","Saint Helena","Saint Kitts and Nevis","Saint Lucia","Saint Martin","Saint Pierre and Miquelon","Saint Vincent and the Grenadines","Samoa","San Marino","Sao Tome and Principe","Saudi Arabia","Senegal","Serbia","Seychelles","Sierra Leone","Singapore","Sint Maarten","Slovakia","Slovenia","Solomon Islands","Somalia","South Africa","South Georgia and the South Sandwich Islands","South Sudan","Spain","Sri Lanka","Sudan","Suriname","Svalbard & Jan Mayen Islands","Sweden","Switzerland","Syrian Arab Republic","Taiwan","Tajikistan","Tanzania","Thailand","Timor-Leste","Togo","Tokelau","Tonga","Trinidad and Tobago","Tunisia","Turkey","Turkmenistan","Turks and Caicos Islands","Tuvalu","Uganda","Ukraine","United Arab Emirates","United Kingdom","United States of America","United States Minor Outlying Islands","Uruguay","Uzbekistan","Vanuatu","Venezuela","Vietnam","Virgin Islands, British","Virgin Islands, U.S.","Wallis and Futuna","Western Sahara","Yemen","Zambia","Zimbabwe"],county:["Adams County","Calhoun County","Carroll County","Clark County","Clay County","Crawford County","Douglas County","Fayette County","Franklin County","Grant County","Greene County","Hamilton County","Hancock County","Henry County","Jackson County","Jefferson County","Johnson County","Lake County","Lawrence County","Lee County","Lincoln County","Logan County","Madison County","Marion County","Marshall County","Monroe County","Montgomery County","Morgan County","Perry County","Pike County","Polk County","Scott County","Union County","Warren County","Washington County","Wayne County","Avon","Bedfordshire","Berkshire","Borders","Buckinghamshire","Cambridgeshire","Central","Cheshire","Cleveland","Clwyd","Cornwall","County Antrim","County Armagh","County Down","County Fermanagh","County Londonderry","County Tyrone","Cumbria","Derbyshire","Devon","Dorset","Dumfries and Galloway","Durham","Dyfed","East Sussex","Essex","Fife","Gloucestershire","Grampian","Greater Manchester","Gwent","Gwynedd County","Hampshire","Herefordshire","Hertfordshire","Highlands and Islands","Humberside","Isle of Wight","Kent","Lancashire","Leicestershire","Lincolnshire","Lothian","Merseyside","Mid Glamorgan","Norfolk","North Yorkshire","Northamptonshire","Northumberland","Nottinghamshire","Oxfordshire","Powys","Rutland","Shropshire","Somerset","South Glamorgan","South Yorkshire","Staffordshire","Strathclyde","Suffolk","Surrey","Tayside","Tyne and Wear","Warwickshire","West Glamorgan","West Midlands","West Sussex","West Yorkshire","Wiltshire","Worcestershire"],direction:{cardinal:["North","East","South","West"],cardinal_abbr:["N","E","S","W"],ordinal:["Northeast","Northwest","Southeast","Southwest"],ordinal_abbr:["NE","NW","SE","SW"]},postcode:["#####","#####-####"],secondary_address:["Apt. ###","Suite ###"],state:["Alabama","Alaska","Arizona","Arkansas","California","Colorado","Connecticut","Delaware","Florida","Georgia","Hawaii","Idaho","Illinois","Indiana","Iowa","Kansas","Kentucky","Louisiana","Maine","Maryland","Massachusetts","Michigan","Minnesota","Mississippi","Missouri","Montana","Nebraska","Nevada","New Hampshire","New Jersey","New Mexico","New York","North Carolina","North Dakota","Ohio","Oklahoma","Oregon","Pennsylvania","Rhode Island","South Carolina","South Dakota","Tennessee","Texas","Utah","Vermont","Virginia","Washington","West Virginia","Wisconsin","Wyoming"],state_abbr:["AL","AK","AZ","AR","CA","CO","CT","DE","FL","GA","HI","ID","IL","IN","IA","KS","KY","LA","ME","MD","MA","MI","MN","MS","MO","MT","NE","NV","NH","NJ","NM","NY","NC","ND","OH","OK","OR","PA","RI","SC","SD","TN","TX","UT","VT","VA","WA","WV","WI","WY"],street_address:{normal:"{{location.buildingNumber}} {{location.street}}",full:"{{location.buildingNumber}} {{location.street}} {{location.secondaryAddress}}"},street_name:["10th Street","11th Street","12th Street","13th Street","14th Street","15th Street","16th Street","1st Avenue","1st Street","2nd Avenue","2nd Street","3rd Avenue","3rd Street","4th Avenue","4th Street","5th Avenue","5th Street","6th Avenue","6th Street","7th Avenue","7th Street","8th Avenue","8th Street","9th Street","A Street","Abbey Road","Adams Avenue","Adams Street","Airport Road","Albany Road","Albert Road","Albion Street","Alexandra Road","Alfred Street","Alma Street","Ash Close","Ash Grove","Ash Road","Ash Street","Aspen Close","Atlantic Avenue","Avenue Road","Back Lane","Baker Street","Balmoral Road","Barn Close","Barton Road","Bath Road","Bath Street","Bay Street","Beach Road","Bedford Road","Beech Close","Beech Drive","Beech Grove","Beech Road","Beechwood Avenue","Bell Lane","Belmont Road","Birch Avenue","Birch Close","Birch Grove","Birch Road","Blind Lane","Bluebell Close","Boundary Road","Bramble Close","Bramley Close","Bridge Road","Bridge Street","Broad Lane","Broad Street","Broadway","Broadway Avenue","Broadway Street","Brook Lane","Brook Road","Brook Street","Brookside","Buckingham Road","Cambridge Street","Canal Street","Castle Close","Castle Lane","Castle Road","Castle Street","Cavendish Road","Cedar Avenue","Cedar Close","Cedar Grove","Cedar Road","Cedar Street","Cemetery Road","Center Avenue","Center Road","Center Street","Central Avenue","Central Street","Chapel Close","Chapel Hill","Chapel Road","Chapel Street","Charles Street","Cherry Close","Cherry Street","Cherry Tree Close","Chester Road","Chestnut Close","Chestnut Drive","Chestnut Grove","Chestnut Street","Church Avenue","Church Close","Church Hill","Church Lane","Church Path","Church Road","Church Street","Church View","Church Walk","Claremont Road","Clarence Road","Clarence Street","Clarendon Road","Clark Street","Clay Lane","Cleveland Street","Cliff Road","Clifton Road","Clinton Street","College Avenue","College Street","Columbia Avenue","Commerce Street","Commercial Road","Commercial Street","Common Lane","Coronation Avenue","Coronation Road","County Line Road","County Road","Court Street","Cow Lane","Crescent Road","Cromwell Road","Cross Lane","Cross Street","Crown Street","Cumberland Street","Dale Street","Dark Lane","Davis Street","Depot Street","Derby Road","Derwent Close","Devonshire Road","Division Street","Douglas Road","Duke Street","E 10th Street","E 11th Street","E 12th Street","E 14th Street","E 1st Street","E 2nd Street","E 3rd Street","E 4th Avenue","E 4th Street","E 5th Street","E 6th Avenue","E 6th Street","E 7th Street","E 8th Street","E 9th Street","E Bridge Street","E Broad Street","E Broadway","E Broadway Street","E Cedar Street","E Center Street","E Central Avenue","E Church Street","E Elm Street","E Franklin Street","E Front Street","E Grand Avenue","E High Street","E Jackson Street","E Jefferson Street","E Main","E Main Street","E Maple Street","E Market Street","E North Street","E Oak Street","E Park Avenue","E Pine Street","E River Road","E South Street","E State Street","E Union Street","E Walnut Street","E Washington Avenue","E Washington Street","E Water Street","East Avenue","East Road","East Street","Edward Street","Elm Close","Elm Grove","Elm Road","Elm Street","Euclid Avenue","Fairfield Road","Farm Close","Ferry Road","Field Close","Field Lane","First Avenue","First Street","Fore Street","Forest Avenue","Forest Road","Fourth Avenue","Franklin Avenue","Franklin Road","Franklin Street","Front Street","Frontage Road","Garden Close","Garden Street","George Street","Gladstone Road","Glebe Close","Gloucester Road","Gordon Road","Gordon Street","Grand Avenue","Grange Avenue","Grange Close","Grange Road","Grant Street","Green Close","Green Lane","Green Street","Greenville Road","Greenway","Greenwood Road","Grove Lane","Grove Road","Grove Street","Hall Lane","Hall Street","Harrison Avenue","Harrison Street","Hawthorn Avenue","Hawthorn Close","Hazel Close","Hazel Grove","Heath Road","Heather Close","Henry Street","Heron Close","Hickory Street","High Road","High Street","Highfield Avenue","Highfield Close","Highfield Road","Highland Avenue","Hill Road","Hill Street","Hillside","Hillside Avenue","Hillside Close","Hillside Road","Holly Close","Honeysuckle Close","Howard Road","Howard Street","Jackson Avenue","Jackson Street","James Street","Jefferson Avenue","Jefferson Street","Johnson Street","Jubilee Close","Juniper Close","Kent Road","Kestrel Close","King Street","King's Road","Kingfisher Close","Kings Highway","Kingsway","Laburnum Grove","Lafayette Street","Lake Avenue","Lake Drive","Lake Road","Lake Street","Lancaster Road","Lansdowne Road","Larch Close","Laurel Close","Lawrence Street","Lee Street","Liberty Street","Lime Grove","Lincoln Avenue","Lincoln Highway","Lincoln Road","Lincoln Street","Locust Street","Lodge Close","Lodge Lane","London Road","Long Lane","Low Road","Madison Avenue","Madison Street","Main","Main Avenue","Main Road","Main Street","Main Street E","Main Street N","Main Street S","Main Street W","Manchester Road","Manor Close","Manor Drive","Manor Gardens","Manor Road","Manor Way","Maple Avenue","Maple Close","Maple Drive","Maple Road","Maple Street","Market Place","Market Square","Market Street","Marlborough Road","Marsh Lane","Martin Luther King Boulevard","Martin Luther King Drive","Martin Luther King Jr Boulevard","Mary Street","Mayfield Road","Meadow Close","Meadow Drive","Meadow Lane","Meadow View","Meadow Way","Memorial Drive","Middle Street","Mill Close","Mill Lane","Mill Road","Mill Street","Milton Road","Milton Street","Monroe Street","Moor Lane","Moss Lane","Mount Pleasant","Mount Street","Mulberry Street","N 1st Street","N 2nd Street","N 3rd Street","N 4th Street","N 5th Street","N 6th Street","N 7th Street","N 8th Street","N 9th Street","N Bridge Street","N Broad Street","N Broadway","N Broadway Street","N Cedar Street","N Center Street","N Central Avenue","N Chestnut Street","N Church Street","N College Street","N Court Street","N Division Street","N East Street","N Elm Street","N Franklin Street","N Front Street","N Harrison Street","N High Street","N Jackson Street","N Jefferson Street","N Lincoln Street","N Locust Street","N Main","N Main Avenue","N Main Street","N Maple Street","N Market Street","N Monroe Street","N Oak Street","N Park Street","N Pearl Street","N Pine Street","N Poplar Street","N Railroad Street","N State Street","N Union Street","N Walnut Street","N Washington Avenue","N Washington Street","N Water Street","Nelson Road","Nelson Street","New Lane","New Road","New Street","Newton Road","Nightingale Close","Norfolk Road","North Avenue","North Lane","North Road","North Street","Northfield Road","Oak Avenue","Oak Drive","Oak Lane","Oak Road","Oak Street","Oakfield Road","Oaklands","Old Lane","Old Military Road","Old Road","Old State Road","Orchard Drive","Orchard Lane","Orchard Road","Orchard Street","Oxford Road","Oxford Street","Park Avenue","Park Crescent","Park Drive","Park Lane","Park Place","Park Road","Park Street","Park View","Parkside","Pearl Street","Pennsylvania Avenue","Pine Close","Pine Grove","Pine Street","Pinfold Lane","Pleasant Street","Poplar Avenue","Poplar Close","Poplar Road","Poplar Street","Post Road","Pound Lane","Princes Street","Princess Street","Priory Close","Priory Road","Prospect Avenue","Prospect Place","Prospect Road","Prospect Street","Quarry Lane","Quarry Road","Queen's Road","Railroad Avenue","Railroad Street","Railway Street","Rectory Close","Rectory Lane","Richmond Close","Richmond Road","Ridge Road","River Road","River Street","Riverside","Riverside Avenue","Riverside Drive","Roman Road","Roman Way","Rowan Close","Russell Street","S 10th Street","S 14th Street","S 1st Avenue","S 1st Street","S 2nd Street","S 3rd Street","S 4th Street","S 5th Street","S 6th Street","S 7th Street","S 8th Street","S 9th Street","S Bridge Street","S Broad Street","S Broadway","S Broadway Street","S Center Street","S Central Avenue","S Chestnut Street","S Church Street","S College Street","S Division Street","S East Street","S Elm Street","S Franklin Street","S Front Street","S Grand Avenue","S High Street","S Jackson Street","S Jefferson Street","S Lincoln Street","S Main","S Main Avenue","S Main Street","S Maple Street","S Market Street","S Mill Street","S Monroe Street","S Oak Street","S Park Street","S Pine Street","S Railroad Street","S State Street","S Union Street","S Walnut Street","S Washington Avenue","S Washington Street","S Water Street","S West Street","Salisbury Road","Sandringham Road","Sandy Lane","School Close","School Lane","School Road","School Street","Second Avenue","Silver Street","Skyline Drive","Smith Street","Somerset Road","South Avenue","South Drive","South Road","South Street","South View","Spring Gardens","Spring Street","Springfield Close","Springfield Road","Spruce Street","St Andrew's Road","St Andrews Close","St George's Road","St John's Road","St Mary's Close","St Mary's Road","Stanley Road","Stanley Street","State Avenue","State Line Road","State Road","State Street","Station Road","Station Street","Stoney Lane","Sycamore Avenue","Sycamore Close","Sycamore Drive","Sycamore Street","Talbot Road","Tennyson Road","The Avenue","The Beeches","The Causeway","The Chase","The Coppice","The Copse","The Crescent","The Croft","The Dell","The Drive","The Fairway","The Glebe","The Grange","The Green","The Grove","The Hawthorns","The Lane","The Laurels","The Limes","The Maltings","The Meadows","The Mews","The Mount","The Oaks","The Orchard","The Oval","The Paddock","The Paddocks","The Poplars","The Ridgeway","The Ridings","The Rise","The Sidings","The Spinney","The Square","The Willows","The Woodlands","Third Avenue","Third Street","Tower Road","Trinity Road","Tudor Close","Union Avenue","Union Street","University Avenue","University Drive","Valley Road","Veterans Memorial Drive","Veterans Memorial Highway","Vicarage Close","Vicarage Lane","Vicarage Road","Victoria Place","Victoria Road","Victoria Street","Vine Street","W 10th Street","W 11th Street","W 12th Street","W 14th Street","W 1st Street","W 2nd Street","W 3rd Street","W 4th Avenue","W 4th Street","W 5th Street","W 6th Avenue","W 6th Street","W 7th Street","W 8th Street","W 9th Street","W Bridge Street","W Broad Street","W Broadway","W Broadway Avenue","W Broadway Street","W Center Street","W Central Avenue","W Chestnut Street","W Church Street","W Division Street","W Elm Street","W Franklin Street","W Front Street","W Grand Avenue","W High Street","W Jackson Street","W Jefferson Street","W Lake Street","W Main","W Main Street","W Maple Street","W Market Street","W Monroe Street","W North Street","W Oak Street","W Park Street","W Pine Street","W River Road","W South Street","W State Street","W Union Street","W Walnut Street","W Washington Avenue","W Washington Street","Walnut Close","Walnut Street","Warren Close","Warren Road","Washington Avenue","Washington Boulevard","Washington Road","Washington Street","Water Lane","Water Street","Waterloo Road","Waterside","Watery Lane","Waverley Road","Well Lane","Wellington Road","Wellington Street","West Avenue","West End","West Lane","West Road","West Street","West View","Western Avenue","Western Road","Westfield Road","Westgate","William Street","Willow Close","Willow Drive","Willow Grove","Willow Road","Willow Street","Windermere Road","Windmill Close","Windmill Lane","Windsor Avenue","Windsor Close","Windsor Drive","Wood Lane","Wood Street","Woodland Close","Woodland Road","Woodlands","Woodlands Avenue","Woodlands Close","Woodlands Road","Woodside","Woodside Road","Wren Close","Yew Tree Close","York Road","York Street"],street_pattern:["{{person.first_name.generic}} {{location.street_suffix}}","{{person.last_name.generic}} {{location.street_suffix}}","{{location.street_name}}"],street_suffix:["Alley","Avenue","Branch","Bridge","Brook","Brooks","Burg","Burgs","Bypass","Camp","Canyon","Cape","Causeway","Center","Centers","Circle","Circles","Cliff","Cliffs","Club","Common","Corner","Corners","Course","Court","Courts","Cove","Coves","Creek","Crescent","Crest","Crossing","Crossroad","Curve","Dale","Dam","Divide","Drive","Drives","Estate","Estates","Expressway","Extension","Extensions","Fall","Falls","Ferry","Field","Fields","Flat","Flats","Ford","Fords","Forest","Forge","Forges","Fork","Forks","Fort","Freeway","Garden","Gardens","Gateway","Glen","Glens","Green","Greens","Grove","Groves","Harbor","Harbors","Haven","Heights","Highway","Hill","Hills","Hollow","Inlet","Island","Islands","Isle","Junction","Junctions","Key","Keys","Knoll","Knolls","Lake","Lakes","Land","Landing","Lane","Light","Lights","Loaf","Lock","Locks","Lodge","Loop","Mall","Manor","Manors","Meadow","Meadows","Mews","Mill","Mills","Mission","Motorway","Mount","Mountain","Mountains","Neck","Orchard","Oval","Overpass","Park","Parks","Parkway","Parkways","Pass","Passage","Path","Pike","Pine","Pines","Place","Plain","Plains","Plaza","Point","Points","Port","Ports","Prairie","Radial","Ramp","Ranch","Rapid","Rapids","Rest","Ridge","Ridges","River","Road","Roads","Route","Row","Rue","Run","Shoal","Shoals","Shore","Shores","Skyway","Spring","Springs","Spur","Spurs","Square","Squares","Station","Stravenue","Stream","Street","Streets","Summit","Terrace","Throughway","Trace","Track","Trafficway","Trail","Tunnel","Turnpike","Underpass","Union","Unions","Valley","Valleys","Via","Viaduct","View","Views","Village","Villages","Ville","Vista","Walk","Walks","Wall","Way","Ways","Well","Wells"]},lorem:{word:["a","ab","abbas","abduco","abeo","abscido","absconditus","absens","absorbeo","absque","abstergo","absum","abundans","abutor","accedo","accendo","acceptus","accommodo","accusamus","accusantium","accusator","acer","acerbitas","acervus","acidus","acies","acquiro","acsi","ad","adamo","adaugeo","addo","adduco","ademptio","adeo","adeptio","adfectus","adfero","adficio","adflicto","adhaero","adhuc","adicio","adimpleo","adinventitias","adipisci","adipiscor","adiuvo","administratio","admiratio","admitto","admoneo","admoveo","adnuo","adopto","adsidue","adstringo","adsuesco","adsum","adulatio","adulescens","aduro","advenio","adversus","advoco","aedificium","aeger","aegre","aegrotatio","aegrus","aeneus","aequitas","aequus","aer","aestas","aestivus","aestus","aetas","aeternus","ager","aggero","aggredior","agnitio","agnosco","ago","ait","aiunt","alias","alienus","alii","alioqui","aliqua","aliquam","aliquid","alius","allatus","alo","alter","altus","alveus","amaritudo","ambitus","ambulo","amet","amicitia","amiculum","amissio","amita","amitto","amo","amor","amoveo","amplexus","amplitudo","amplus","ancilla","angelus","angulus","angustus","animadverto","animi","animus","annus","anser","ante","antea","antepono","antiquus","aperiam","aperio","aperte","apostolus","apparatus","appello","appono","appositus","approbo","apto","aptus","apud","aqua","ara","aranea","arbitro","arbor","arbustum","arca","arceo","arcesso","architecto","arcus","argentum","argumentum","arguo","arma","armarium","aro","ars","articulus","artificiose","arto","arx","ascisco","ascit","asper","asperiores","aspernatur","aspicio","asporto","assentator","assumenda","astrum","at","atavus","ater","atque","atqui","atrocitas","atrox","attero","attollo","attonbitus","auctor","auctus","audacia","audax","audentia","audeo","audio","auditor","aufero","aureus","aurum","aut","autem","autus","auxilium","avaritia","avarus","aveho","averto","baiulus","balbus","barba","bardus","basium","beatae","beatus","bellicus","bellum","bene","beneficium","benevolentia","benigne","bestia","bibo","bis","blandior","blanditiis","bonus","bos","brevis","cado","caecus","caelestis","caelum","calamitas","calcar","calco","calculus","callide","campana","candidus","canis","canonicus","canto","capillus","capio","capitulus","capto","caput","carbo","carcer","careo","caries","cariosus","caritas","carmen","carpo","carus","casso","caste","casus","catena","caterva","cattus","cauda","causa","caute","caveo","cavus","cedo","celebrer","celer","celo","cena","cenaculum","ceno","censura","centum","cerno","cernuus","certe","certus","cervus","cetera","charisma","chirographum","cibo","cibus","cicuta","cilicium","cimentarius","ciminatio","cinis","circumvenio","cito","civis","civitas","clam","clamo","claro","clarus","claudeo","claustrum","clementia","clibanus","coadunatio","coaegresco","coepi","coerceo","cogito","cognatus","cognomen","cogo","cohaero","cohibeo","cohors","colligo","collum","colo","color","coma","combibo","comburo","comedo","comes","cometes","comis","comitatus","commemoro","comminor","commodi","commodo","communis","comparo","compello","complectus","compono","comprehendo","comptus","conatus","concedo","concido","conculco","condico","conduco","confero","confido","conforto","confugo","congregatio","conicio","coniecto","conitor","coniuratio","conor","conqueror","conscendo","consectetur","consequatur","consequuntur","conservo","considero","conspergo","constans","consuasor","contabesco","contego","contigo","contra","conturbo","conventus","convoco","copia","copiose","cornu","corona","corporis","corpus","correptius","corrigo","corroboro","corrumpo","corrupti","coruscus","cotidie","crapula","cras","crastinus","creator","creber","crebro","credo","creo","creptio","crepusculum","cresco","creta","cribro","crinis","cruciamentum","crudelis","cruentus","crur","crustulum","crux","cubicularis","cubitum","cubo","cui","cuius","culpa","culpo","cultellus","cultura","cum","cumque","cunabula","cunae","cunctatio","cupiditas","cupiditate","cupio","cuppedia","cupressus","cur","cura","curatio","curia","curiositas","curis","curo","curriculum","currus","cursim","curso","cursus","curto","curtus","curvo","custodia","damnatio","damno","dapifer","debeo","debilito","debitis","decens","decerno","decet","decimus","decipio","decor","decretum","decumbo","dedecor","dedico","deduco","defaeco","defendo","defero","defessus","defetiscor","deficio","defleo","defluo","defungo","degenero","degero","degusto","deinde","delectatio","delectus","delego","deleniti","deleo","delibero","delicate","delinquo","deludo","demens","demergo","demitto","demo","demonstro","demoror","demulceo","demum","denego","denique","dens","denuncio","denuo","deorsum","depereo","depono","depopulo","deporto","depraedor","deprecator","deprimo","depromo","depulso","deputo","derelinquo","derideo","deripio","deserunt","desidero","desino","desipio","desolo","desparatus","despecto","dicta","dignissimos","distinctio","dolor","dolore","dolorem","doloremque","dolores","doloribus","dolorum","ducimus","ea","eaque","earum","eius","eligendi","enim","eos","error","esse","est","et","eum","eveniet","ex","excepturi","exercitationem","expedita","explicabo","facere","facilis","fuga","fugiat","fugit","harum","hic","id","illo","illum","impedit","in","incidunt","infit","inflammatio","inventore","ipsa","ipsam","ipsum","iste","itaque","iure","iusto","labore","laboriosam","laborum","laudantium","libero","magnam","magni","maiores","maxime","minima","minus","modi","molestiae","molestias","mollitia","nam","natus","necessitatibus","nemo","neque","nesciunt","nihil","nisi","nobis","non","nostrum","nulla","numquam","occaecati","ocer","odio","odit","officia","officiis","omnis","optio","paens","pariatur","patior","patria","patrocinor","patruus","pauci","paulatim","pauper","pax","peccatus","pecco","pecto","pectus","pecus","peior","pel","perferendis","perspiciatis","placeat","porro","possimus","praesentium","provident","quae","quaerat","quam","quas","quasi","qui","quia","quibusdam","quidem","quis","quisquam","quo","quod","quos","ratione","recusandae","reiciendis","rem","repellat","repellendus","reprehenderit","repudiandae","rerum","saepe","sapiente","sed","sequi","similique","sint","sit","socius","sodalitas","sol","soleo","solio","solitudo","solium","sollers","sollicito","solum","solus","soluta","solutio","solvo","somniculosus","somnus","sonitus","sono","sophismata","sopor","sordeo","sortitus","spargo","speciosus","spectaculum","speculum","sperno","spero","spes","spiculum","spiritus","spoliatio","sponte","stabilis","statim","statua","stella","stillicidium","stipes","stips","sto","strenuus","strues","studio","stultus","suadeo","suasoria","sub","subito","subiungo","sublime","subnecto","subseco","substantia","subvenio","succedo","succurro","sufficio","suffoco","suffragium","suggero","sui","sulum","sum","summa","summisse","summopere","sumo","sumptus","sunt","supellex","super","suppellex","supplanto","suppono","supra","surculus","surgo","sursum","suscipio","suscipit","suspendo","sustineo","suus","synagoga","tabella","tabernus","tabesco","tabgo","tabula","taceo","tactus","taedium","talio","talis","talus","tam","tamdiu","tamen","tametsi","tamisium","tamquam","tandem","tantillus","tantum","tardus","tego","temeritas","temperantia","templum","tempora","tempore","temporibus","temptatio","tempus","tenax","tendo","teneo","tener","tenetur","tenuis","tenus","tepesco","tepidus","ter","terebro","teres","terga","tergeo","tergiversatio","tergo","tergum","termes","terminatio","tero","terra","terreo","territo","terror","tersus","tertius","testimonium","texo","textilis","textor","textus","thalassinus","theatrum","theca","thema","theologus","thermae","thesaurus","thesis","thorax","thymbra","thymum","tibi","timidus","timor","titulus","tolero","tollo","tondeo","tonsor","torqueo","torrens","tot","totam","totidem","toties","totus","tracto","trado","traho","trans","tredecim","tremo","trepide","tres","tribuo","tricesimus","triduana","tripudio","tristis","triumphus","trucido","truculenter","tubineus","tui","tum","tumultus","tunc","turba","turbo","turpis","tutamen","tutis","tyrannus","uberrime","ubi","ulciscor","ullam","ullus","ulterius","ultio","ultra","umbra","umerus","umquam","una","unde","undique","universe","unus","urbanus","urbs","uredo","usitas","usque","ustilo","ustulo","usus","ut","uter","uterque","utilis","utique","utor","utpote","utrimque","utroque","utrum","uxor","vaco","vacuus","vado","vae","valde","valens","valeo","valetudo","validus","vallum","vapulus","varietas","varius","vehemens","vel","velit","velociter","velum","velut","venia","veniam","venio","ventito","ventosus","ventus","venustas","ver","verbera","verbum","vere","verecundia","vereor","vergo","veritas","veritatis","vero","versus","verto","verumtamen","verus","vesco","vesica","vesper","vespillo","vester","vestigium","vestrum","vetus","via","vicinus","vicissitudo","victoria","victus","videlicet","video","viduo","vigilo","vigor","vilicus","vilis","vilitas","villa","vinco","vinculum","vindico","vinitor","vinum","vir","virga","virgo","viridis","viriliter","virtus","vis","viscus","vita","vitae","vitiosus","vitium","vito","vivo","vix","vobis","vociferor","voco","volaticus","volo","volubilis","voluntarius","volup","voluptas","voluptate","voluptatem","voluptates","voluptatibus","voluptatum","volutabrum","volva","vomer","vomica","vomito","vorago","vorax","voro","vos","votum","voveo","vox","vulariter","vulgaris","vulgivagus","vulgo","vulgus","vulnero","vulnus","vulpes","vulticulus","xiphias"]},metadata:{title:"English",code:"en",language:"en",endonym:"English",dir:"ltr",script:"Latn"},music:{album:['"Awaken, My Love!"',"(What's The Story) Morning Glory?","- Tragedy +","13 Reasons Why (Season 3)","21st Century Breakdown","30 De Febrero","432 Hz Deep Healing","5-Star","528 Hz Meditation Music","54+1","8 Mile","808s & Heartbreak","9 To 5 And Odd Jobs","A Beautiful Lie","A Day At The Races","A Day Without Rain","A Fever You Can't Sweat Out","A Gangsta's Pain","A Gift & A Curse","A Hard Day's Night","A Head Full Of Dreams","A Kind Of Magic","A Million Ways To Murder","A Moment Apart","A Song For Every Moon","A Thousand Suns","A Winter Romance","ABBA","AI YoungBoy","AJ Tracey","Act One","After Hours","Agent Provocateur","All About You","All I Know So Far: Setlist","All Or Nothing","All Out","All Over The Place","All Stand Together","All The Lost Souls","All The Things I Never Said","All Things Must Pass","Alleen","Alright, Still","Alta Suciedad","America","American Heartbreak","American Teen","And Justice For None","Animal Songs","Another Friday Night","Anything Goes","Ao Vivo Em São Paulo","Ao Vivo No Ibirapuera","Apricot Princess","Aqui E Agora (Ao Vivo)","Arcane League Of Legends","Ardipithecus","Aretha Now","Around The Fur","Arrival","Artist 2.0","As She Pleases","Ascend","Ashlyn","Astro Lounge","At Night, Alone.","At. Long. Last. ASAP","Atlas","Audioslave","Aura","Austin","Awake","Away From The Sun","Ayayay!","Baby On Baby","Back For Everything","Back From The Edge","Back In Black","Back To Black","Back To The Game","Bad","Bahía Ducati","Baila","Barbie The Album","Battleground","Bayou Country","Bcos U Will Never B Free","Be","Be Here Now","Beautiful Mind","Beautiful Thugger Girls","Beautiful Trauma","Beauty And The Beast","Beggars Banquet","Being Funny In A Foreign Language","Berlin Lebt","Berry Is On Top","Best White Noise For Baby Sleep - Loopable With No Fade","Big Baby DRAM","Bigger, Better, Faster, More!","Billy Talent II","Black Star Elephant","Blackout","Blank Face LP","Bleach","Blizzard Of Ozz","Blonde","Blood Sugar Sex Magik","Bloom","Blowin' Your Mind!","Blu Celeste","Blue","Blue Banisters","Blue Hawaii","Blue Neighbourhood","Bluebird Days","Bobby Tarantino","Bobby Tarantino II","Bon Iver","Born Pink","Born To Run","Brand New Eyes","Break The Cycle","Breakfast In America","Breakthrough","Brett Young","Bridge Over Troubled Water","Bright: The Album","Brol","Buds","Buena Vista Social Club","Built On Glass","Bury Me At Makeout Creek","Busyhead","By The Way","CB6","CNCO","California Sunrise","Californication","Call Me Irresponsible","Calm","Camino Palmero","Camp","Caracal","Carbon Fiber Hits","Carnival","Carry On","Cartel De Santa","Certified Lover Boy","Chaaama","Chama Meu Nome","Chapter 1: Snake Oil","Chapter 2: Swamp Savant","Chapter One","Charlie's Angels","Cherry Bomb","Chief","Chocolate Factory","Chosen","Chris Brown","Christina Aguilera","Chromatica","Church","City Of Evil","Clandestino","Clouds","Coco","Collision Course","Colour Vision","Combat Rock","Come Around Sundown","Come Away With Me","Come Home The Kids Miss You","Come What(ever) May","Commando","Common Sense","Communion","Conditions","Confident","Confrontation","Control The Streets, Volume 2","Corinne Bailey Rae","Costello Music","Cottonwood","Covers, Vol. 2","Cozy Tapes Vol. 2: Too Cozy","Crash Talk","Crazy Love","Crazysexycool","Crowded House","Cruisin' With Junior H","Culture","Current Mood","DS2","Dale","Danger Days: The True Lives Of The Fabulous Killjoys","Dangerous Woman","Dangerous: The Double Album","Dark Horse","Day69","Daydream","De Fiesta","De Viaje","DeAnn","Death Race For Love","Delirium","Delta","Demidevil","Depression Cherry","Descendants","Desgenerados Mixtape","Destin","Destiny Fulfilled","Desvelado","Detroit 2","Dex Meets Dexter","Dharma","Die A Legend","Different World","Dig Your Roots","Digital Druglord","Dirt","Disclaimer I / II","Discovery","Disraeli Gears","Disumano","Dizzy Up The Girl","Don't Play That Song","Donda","Donde Quiero Estar","Doo-Wops & Hooligans","Down The Way","Dr. Feelgood","Dream Your Life Away","Dreaming Out Loud","Drip Harder","Drive","Drones","Dropped Outta College","Drowning","Dua Warna Cinta","Dulce Beat","Dusty In Memphis","Dutty Rock","Dying To Live","ENR","East Atlanta Love Letter","Editorial","Edna","El Abayarde","El Amor En Los Tiempos Del Perreo","El Camino","El Comienzo","El Dorado","El Karma","El Mal Querer","El Malo","El Trabajo Es La Suerte","El Viaje De Copperpot","Electric Ladyland","Emotion","En Tus Planes","Endless Summer Vacation","Enter The Wu-Tang (36 Chambers)","Equals (=)","Estrella","Euphoria","Europop","Evermore","Every Kingdom","Everyday Life","Evolve","Expectations","Face Yourself","Facelift","Fallin'","Fancy You","Fantasía","Favourite Worst Nightmare","Fear Of The Dark","Fearless","Feel Something","Feels Like Home","Femme Fatale","Ferxxocalipsis","Fifty Shades Darker","Fifty Shades Freed","Fifty Shades Of Grey","Final (Vol.1)","Finding Beauty In Negative Spaces","Fine Line","First Impressions Of Earth","First Steps","Five Seconds Flat","Folklore","For Emma, Forever Ago","Forajido EP 1","Forever","Forever Young","Formula Of Love: O+T=<3","Free 6lack","Freudian","Frozen II","Full Moon Fever","Funhouse","Funk Wav Bounces Vol.1","Future History","FutureSex/LoveSounds","Fuzzybrain","Gallery","Gangsta's Paradise","Gemini","Gemini Rights","Generationwhy","Get A Grip","Get Up","Gettin' Old","Girl","Gladiator","Glisten","Globalization","Gloria","Glory Days","God's Project","Gold Skies","Golden","Good Evening","Good Thing","Goodbye Yellow Brick Road","Gossip Columns","Got Your Six","Graceland","Graduation","Grand Champ","Grandson, Vol. 1","Green River","Guerra","Ha*Ash Primera Fila - Hecho Realidad","Haiz","Hamilton","Happy Endings","Harry Styles","Hasta La Raíz","Hatful Of Hollow","Head In The Clouds","Heard It In A Past Life","Heart Shaped World","Heartbeat City","Heartbreak On A Full Moon / Cuffing Season - 12 Days Of Christmas","Heaven Or Hell","Heaven knows","Hellbilly Deluxe","Hellboy","Help!","Her Loss","Here Comes The Cowboy","Hey World","High School Musical","High Tide In The Snake's Nest","Historias De Un Capricornio","Hndrxx","Hombres G (Devuélveme A Mi Chica)","Homerun","Homework","Hot Fuss","Hot Pink","Hot Sauce / Hello Future","Hot Space","Hotel Diablo","Houses Of The Holy","How Big, How Blue, How Beautiful","How I'm Feeling","How To Be Human","How To Save A Life","How To: Friend, Love, Freefall","Hozier","Human","Huncho Jack, Jack Huncho","Hunter Hayes","Hysteria","I Am...Sasha Fierce","I Can't Handle Change","I Met You When I Was 18. (The Playlist)","I Never Liked You","I Never Loved A Man The Way I Love You","I See You","I Think You Think Too Much Of Me","I Used To Know Her","I Used To Think I Could Fly","I'm Comin' Over","Ich & Keine Maske","If You Can Believe Your Eyes & Ears","Il Ballo Della Vita","Ill Communication","Imagination & The Misfit Kid","Imagine","Immortalized","In A Perfect World...","In Colour","In My Own Words","In Rainbows","In Return","In The Lonely Hour","Infest","Innuendo","Inter Shibuya - La Mafia","Interstellar","Is This It","It Was Written","It's Not Me, It's You","It's Only Me","Ivory","JackBoys","Jamie","Jazz","Jibrail & Iblis","Jordi","Jordin Sparks","Jose","Just As I Am","Just Cause Y'all Waited 2","Just Like You","Justified","K-12 / After School","K.I.D.S.","K.O.","K.O.B. Live","KG0516","KOD","Kane Brown","Kid A","Kid Krow","Kids See Ghosts","Kids in Love","Kinks (You Really Got Me)","Know-It-All","Konvicted","Kring","LANY","LM5","La Criatura","La Flaca","La Melodia De La Calle","La Revolucion","Lady Lady","Lady Wood","Langit Mong Bughaw","Las Que No Iban A Salir","Last Day Of Summer","Last Year Was Complicated","Layers","Layover","Lazarus","Led Zeppelin","Left Of The Middle","Leftoverture","Legends Never Die","Let's Skip To The Wedding","Let's Talk About Love","Licensed To Ill","Life In Cartoon Motion","Life Thru A Lens","Lifelines","Like..?","Lil Big Pac","Lil Boat","Lil Boat 2","Lil Boat 3.5","Lil Kiwi","Lil Pump","Limon Y Sal","Listen Without Prejudice","Little Voice","Live On Red Barn Radio I & II","Lo Que Andábamos Buscando","Lofi Fruits Music 2021","London Calling","Los Campeones Del Pueblo","Los Extraterrestres","Los Favoritos 2","Lost","Lost In Love","Loud","Love Sick","Love Story","Love Stuff","Love Yourself: Tear","Lover","Luca Brasi 2: Gangsta Grillz","Lust For Life","Luv Is Rage","M!ssundaztood","Ma Fleur","Made In Lagos","Mafia Bidness","Magazines Or Novels","Mainstream Sellout","Majestic","Make It Big","Make Yourself","Making Mirrors","Mamma Mia! Here We Go Again","Man Of The Woods","Manic","Me And My Gang","Meduza","Meet The Orphans","Meet The Woo","Melim","Mellon Collie And The Infinite Sadness","Melly vs. Melvin","Memories...Do Not Open","Menagerie","Midnights","Minecraft - Volume Alpha","Minutes To Midnight","Mix Pa Llorar En Tu Cuarto","Modo Avión","Monkey Business","Mono.","Montana","Montevallo","Moosetape","Morning View","Motivan2","Moving Pictures","Mr. Davis","Mr. Misunderstood","Mulan","Mura Masa","Music From The Edge Of Heaven","Music Of The Sun","My House","My Kinda Party","My Krazy Life","My Liver Will Handle What My Heart Can't","My Moment","My Own Lane","My Turn","My Worlds","Na Praia (Ao Vivo)","Nakamura","Nation Of Two","Navegando","Need You Now","Neon Future III","Neotheater","Never Trust A Happy Song","New English","News Of The World","Nicole","Night & Day","Nimmerland","Nimrod","Nine Track Mind","No Angel","No Me Pidas Perdón","No More Drama","No Protection","No Strings Attached","No Time To Die","Nobody Is Listening","Non Stop Erotic Cabaret","Non-Fiction","Northsbest","Nostalgia","Nostalgia, Ultra","Notes On A Conditional Form","Now Or Never","O Embaixador (Ao Vivo)","O My Heart","OK Computer","Ocean","Ocean Avenue","Ocean Eyes","Odisea","Oh My My","Oh, What A Life","On The 6","One In A Million","One More Light","One Of These Nights","Open Up And Say...Ahh!","Ordinary Man","Origins","Out Of The Blue","Over It","OzuTochi","PTSD","Pa Las Baby's Y Belikeada","Pa Que Hablen","Pa' Luego Es Tarde","Pa' Otro La 'O","Pablo Honey","Pain Is Love","Pain Is Temporary","Painting Pictures","Palmen Aus Plastik 2","Para Mi Ex","Para Siempre","Partners In Crime","Pawn Shop","Pegasus / Neon Shark VS Pegasus","Pet Sounds","Piece By Piece","Pier Pressure","Pineapple Sunrise","Piseiro 2020 Ao Vivo","Planet Pit","Plans","Play Deep","Playa Saturno","Por Primera Vez","Por Vida","Positions","Post Human: Survival Horror","Poster Girl","Prazer, Eu Sou Ferrugem (Ao Vivo)","Pretty Girls Like Trap Music","Pretty. Odd.","Prince Royce","Prisma","Prometo","Providence","Puberty 2","Punisher","Purgatory","Purple Rain","Que Bendición","Queen Of The Clouds","Quiero Volver","R&G (Rhythm & Gangsta): The Masterpiece","Raise!","Ransom 2","Rapunzel","Rare","Re Mida","Ready To Die","Realer","Rebelde","Reclassified","Recovery","Recuerden Mi Estilo","Reggatta De Blanc","Regulate… G Funk Era","Reik","Reise, Reise","Relapse","Relaxing Piano Lullabies And Natural Sleep Aid For Baby Sleep Music","Religiously. The Album.","Replay","Results May Vary","Revenge","Revolve","Revolver","Ricky Martin","Rien 100 Rien","Ripcord","Rise And Fall, Rage And Grace","Rise Of An Empire","Robin Hood: Prince Of Thieves","Rock N Roll Jesus","Romance","Romances","Ronan","Royal Blood","Rumours","Sad Boyz 4 Life II","San Lucas","Santana World","Saturation III","Sauce Boyz","Savage Mode","Saxobeats","Scarlet","Schwarzes Herz","Seal The Deal & Let's Boogie","Section.80","Segundo Romance","Sehnsucht","Shake The Snow Globe","Shang-Chi And The Legend Of The Ten Rings: The Album","Sheer Heart Attack","Shiesty Season","Shock Value","Shoot For The Stars, Aim For The Moon","Signed Sealed And Delivered","Signos","Silent Alarm","Simplemente Gracias","Sin Bandera","Sing Me A Lullaby, My Sweet Temptation","Sinner","Sirio","Sit Still, Look Pretty","Skin","Slowhand","Smash","Smithereens","Snow Cougar","Social Cues","Some Girls","Song Hits From Holiday Inn","Songs For Dads","Songs For The Deaf","Songs For You, Truths For Me","Songs In The Key Of Life","Souled Out","Sounds Of Silence","Soy Como Quiero Ser","Speak Now","Speak Your Mind","Speakerboxxx/The Love Below","Spider-Man: Into The Spider-Verse","Split Decision","Square Up","SremmLife","Starboy","Stay +","Stay Dangerous","Staying At Tamara's","Steppenwolf","Stick Season","Still Bill","Straight Outta Compton","Strange Trails","Stronger","Suavemente","Sublime","Suck It and See","Sucker","Sueños","Sugar","Summer Forever","Summer,","Sunset Season","Sunshine On Leith","Surfer Rosa","Sweet Talker","SweetSexySavage","System Of A Down","TA13OO","Talk That Talk","Talking Heads: 77","Tangled Up","Tango In The Night","Taxi Driver","Taylor Swift","Tell Me It's Real","Ten","Ten Summoner's Tales","Terra Sem Cep (Ao Vivo)","Terral","Testing","Tha Carter III","Thank Me Later","That's Christmas To Me","The Academy","The Adventures Of Bobby Ray","The Album","The Andy Williams Christmas Album","The Aviary","The Balcony","The Battle Of Los Angeles","The Beatles (White Album)","The Beginning","The Better Life","The Big Day","The Book","The Breakfast Club","The Cars","The Colour And The Shape","The Death Of Peace Of Mind","The Diary Of Alicia Keys","The Documentary","The Emancipation Of Mimi","The Eminem Show","The End Of Everything","The Final Countdown","The Forever Story","The Foundation","The Goat","The Golden Child","The Good Parts","The Greatest Showman: Reimagined","The Green Trip","The Hardest Love","The Head And The Heart","The Human Condition","The Infamous","The Lady Killer","The Last Don II","The Lion King","The Lockdown Sessions","The London Sessions","The Lord Of The Rings: The Fellowship Of The Ring","The Lost Boy","The Magic Of Christmas / The Christmas Song","The Marshall Mathers LP","The Martin Garrix Collection","The Melodic Blue","The Mockingbird & The Crow","The Pains Of Growing","The Papercut Chronicles","The Perfect Luv Tape","The Pinkprint","The Predator","The Queen Is Dead","The ReVe Festival: Finale","The Rise And Fall Of Ziggy Stardust And The Spiders From Mars","The Rising Tied","The River","The Stone Roses","The Story Of Us","The Stranger","The Sufferer & The Witness","The Sun's Tirade","The Temptations Sing Smokey","The Time Of Our Lives","The Way It Is","The Wonderful World Of Sam Cooke","The Writing's On The Wall","The Young And The Hopeless","Therapy","Therapy Session","There Is More (Live)","There Is Nothing Left To Lose","These Things Happen","Third Eye Blind","This Is Me...Then","This Unruly Mess I've Made","Threat to Survival","Thrill Of The Chase","Time","Timelezz","To Let A Good Thing Die","To Pimp A Butterfly","Toast To Our Differences","Todos Os Cantos, Vol. 1 (Ao Vivo)","Too Hard","Torches X","Total Xanarchy","Toto IV","Toulouse Street","Tourist History","Toxicity","Tragic Kingdom","Tranquility Base Hotel & Casino","Traumazine","Traveler","Tres Hombres","Trip At Knight","Tron: Legacy","True Blue","True Colors","Trustfall","Tu Veneno Mortal","Tudo Em Paz","Ubuntu","Ugly Is Beautiful","Ultra 2021","Una Mattina","Unbroken","Uncovered","Under Pressure","Unsponsored Content","Unstoppable","Unwritten","Urban Flora","Urban Hymns","Use Your Illusion I","Veneer","Versions Of Me","Vibes","Vice Versa","Vices & Virtues","Victory","Vida","Viejo Marihuano","Visualízate","Walk Away","Walk Me Home...","Watch The Throne","Wave","We Broke The Rules","We Love You Tecca","We Love You Tecca 2","Weezer (Green Album)","Welcome To The Madhouse","Westlife","What A Time To Be Alive","What Do You Think About The Car?","What Is Love?","What Makes You Country","What Separates Me From You","What You See Is What You Get / What You See Ain't Always What You Get","When It's Dark Out","When We All Fall Asleep, Where Do We Go?","Where The Light Is","While The World Was Burning","White Pony","Whitney","Who Really Cares","Who You Are","Who's Next","Wide Open","Wilder Mind","Wildfire","Willy And The Poor Boys","Wings / You Never Walk Alone","Wish","Wish You Were Here","Without Warning","Wonder","X&Y","XOXO","Y Que Quede Claro","YBN: The Mixtape","Yo Creo","You Will Regret","Youngblood","Younger Now","Youth"],artist:["$NOT","$uicideboy$","(G)I-DLE","*NSYNC","2 Chainz","21 Savage","6LACK","? & The Mysterians","A Boogie Wit da Hoodie","A Taste of Honey","A Tribe Called Quest","A-Ha","ABBA","AC/DC","AJ Tracey","ATEEZ","Ace of Base","Adele","Ado","Aerosmith","Agust D","Aitana","Al Dexter & his Troopers","Al Green","Al Jolson","Al Martino","Alan Jackson","Alannah Myles","Alec Benjamin","Alejandro Sanz","Alesso","Alfredo Olivas","Ali Gatie","Alice In Chains","Alina Baraz","All Time Low","All-4-One","All-American Rejects","Alok","America","American Quartet","Amii Stewart","Amitabh Bhattacharya","Ana Castela","Anderson .Paak","Andy Grammer","Angus & Julia Stone","Anirudh Ravichander","Anita Ward","Anitta","Anton Karas","Anuel AA","Arcade Fire","Archie Bell & The Drells","Archies","Aretha Franklin","Arizona Zervas","Armin van Buuren","Arthur Conley","Artie Shaw","Asake","Asees Kaur","Association","Atif Aslam","Audioslave","Aventura","Avril Lavigne","Aya Nakamura","B J Thomas","B.o.B","BLACKPINK","BONES","BROCKHAMPTON","BTS","Baby Keem","Bachman-Turner Overdrive","Backstreet Boys","Bad Bunny","Badshah","Bailey Zimmerman","Banda El Recodo","Barbra Streisand","Barry White","Bazzi","Bebe Rexha","Becky G","Becky Hill","Bee Gees","Ben Bernie","Ben Howard","Ben Selvin","Berlin","Bessie Smith","Bethel Music","Bette Midler","Beyonce","Bibi Blocksberg","Bibi und Tina","BigXthaPlug","Bill Doggett","Bill Haley & his Comets","Bill Withers","Billy Davis Jr","Billy Joel","Billy Paul","Billy Preston","Billy Swan","Birdy","Bizarrap","Blake Shelton","Blur","Bob Marley & The Wailers","Bob Seger","Bobby Darin","Bobby Lewis","Bobby McFerrin","Bobby Vinton","Boney M.","Bonez MC","Bonnie Tyler","Booba","Boston","BoyWithUke","Boyce Avenue","Bradley Cooper","Bread","Brent Faiyaz","Brett Young","Bring Me The Horizon","Britney Spears","Brooks & Dunn","Bruce Channel","Bruno & Marrone","Bryan Adams","Bryce Vine","Buddy Holly","Burna Boy","C. Tangana","CKay","CRO","Camilo","Capital Bra","Captain & Tennille","Cardi B","Carin Leon","Carlos Vives","Carly Simon","Carpenters","Cavetown","Celine Dion","Central Cee","Chaka Khan","Champs","Charlie Rich","Chayanne","Cheat Codes","Cher","Chic","Chicago","Chris Brown","Chris Isaak","Chris Young","Christina Aguilera","Christina Perri","Christopher Cross","Chuck Berry","Ciara","Cigarettes After Sex","Cliff Edwards (Ukelele Ike)","Cody Johnson","Colbie Caillat","Colby O'Donis","Cole Swindell","Coleman Hawkins","Contours","Coolio","Count Basie","Cris Mj","Culture Club","Cyndi Lauper","D-Block Europe","DAY6","DJ Khaled","DJ Luian","DJ Nelson","DMX","DNCE","DaVido","Dadju","Daft Punk","Dan + Shay","Daniel Powter","Danny Ocean","Darius Rucker","Dave","David Bowie","David Guetta","Daya","Dean Martin","Deee-Lite","Deep Purple","Deftones","Demi Lovato","Dennis Lloyd","Denzel Curry","Dermot Kennedy","Desiigner","Devo","Dewa 19","Dexys Midnight Runners","Diddy","Dido","Die drei !!!","Diego & Victor Hugo","Diljit Dosanjh","Dimitri Vegas & Like Mike","Dinah Shore","Dionne Warwick","Dire Straits","Disclosure","Dixie Cups","Doja Cat","Dolly Parton","Don Diablo","Don Henley","Don McLean","Don Omar","Donna Summer","Donovan","Dr. Dre","Drake","Dreamville","Dua Lipa","EMF","ENHYPEN","Earth, Wind & Fire","Ed Sheeran","Eddie Cantor","Eddie Cochran","Eddy Howard","Edgar Winter Group","Edwin Hawkins Singers","Edwin Starr","El Alfa","Eladio Carrion","Electric Light Orchestra","Elevation Worship","Ella Henderson","Ellie Goulding","Elton John","Elvis Presley","Empire of the Sun","En Vogue","Enrique Iglesias","Eslabon Armado","Ethel Waters","Etta James","Evanescence","Exile","Extreme","Faith Hill","Fall Out Boy","Fanny Brice","Farruko","Fats Domino","Fats Waller","Feid","Felix Jaehn","Fergie","Fetty Wap","Fiersa Besari","Fifth Harmony","Fine Young Cannibals","Five Finger Death Punch","Fleetwood Mac","Flo-Rida","Florence + The Machine","Flume","Foo Fighters","Foreigner","Foster The People","Four Aces","Frank Ocean","Frank Sinatra","Frankie Avalon","Frankie Valli","Fred Astaire","Freda Payne","Freddie Dredd","Freddy Fender","French Montana","Fuerza Regida","Fujii Kaze","Future","G-Eazy","Garfunkel and Oates","Gary Lewis & The Playboys","Gary Numan","Gene Autry","Gene Chandler","Gene Vincent","George Michael","George Strait","Gera MX","Ghost","Ghostemane","Gigi D'Agostino","Gladys Knight & The Pips","Glass Animals","Glee Cast","Gloria Gaynor","Godsmack","Gorillaz","Gotye","Grand Funk Railroad","Green Day","Grouplove","Grupo Firme","Grupo Marca Registrada","Gryffin","Gucci Mane","Guess Who","Gunna","Gusttavo Lima","Guy Mitchell","Gwen Stefani","Gzuz","H.E.R.","HARDY","Hailee Steinfeld","Halsey","Hans Zimmer","Harris Jayaraj","Harry Chapin","Harry James","Harry Nilsson","Harry Styles","Hayley Williams","Herb Alpert","Herman's Hermits","Hillsong UNITED","Hillsong Worship","Hollywood Undead","Honey Cone","Hoobastank","Hues Corporation","I Prevail","ITZY","IVE","Ice Cube","Ice Spice","Iggy Azalea","Imagine Dragons","Incubus","Internet Money","Isaac Hayes","J Geils Band","J. Cole","JAY-Z","JJ Lin","JP Saxe","JVKE","Jack Harlow","Jack Johnson","Jackie Wilson","Jacquees","James Arthur","James Brown","James TW","James Taylor","Jamie Foxx","Janet Jackson","Janis Joplin","Jason Aldean","Jason Mraz","Jay Chou","Jay Sean","Jay Wheeler","Jaymes Young","Jean Knight","Jeezy","Jennifer Lopez","Jennifer Warnes","Jeremih","Jeremy Zucker","Jerry Lee Lewis","Jerry Murad's Harmonicats","Jess Glynne","Jessie J","Jewel","Jimi Hendrix","Jimin","Jimmie Rodgers","Jimmy Dean","Jo Stafford","Joan Jett & The Blackhearts","Joao Gilberto","Joel Corry","John Fred & The Playboy Band","John Legend","John Mayer","John Williams","Johnnie Ray","Johnnie Taylor","Johnny Cash","Johnny Horton","Johnny Mathis","Johnny Mercer","Johnny Nash","Joji","Jon Bellion","Jonas Blue","Jonas Brothers","Joni James","Jorja Smith","Juan Gabriel","Juan Luis Guerra 4.40","Juanes","Juice Newton","Julia Michaels","Justin Bieber","Justin Quiles","KALEO","KAROL G","KAYTRANADA","KK","KSI","KYLE","Kacey Musgraves","Kane Brown","Kanye West","Karan Aujla","Kate Smith","Katy Perry","Kay Kyser","Ke$ha","Kehlani","Kelly Clarkson","Kenny Chesney","Kenny Loggins","Kenny Rogers","Kenshi Yonezu","Kenya Grace","Kevin Gates","Key Glock","Khalid","Kim Carnes","Kim Petras","Kimbra","Kina","King Gnu","Kings of Leon","Kingsmen","Kitty Kallen","Kodak Black","Kodaline","Kollegah","Kool & The Gang","Kungs","Kygo","Kylie Minogue","LE SSERAFIM","LISA","LMFAO","LUDMILLA","La Adictiva Banda San José de Mesillas","La Oreja de Van Gogh","Labrinth","Lady Antebellum","Lady GaGa","Lainey Wilson","Lana Del Rey","Latto","Lauryn Hill","Lauv","League of Legends","Lee Brice","Leon Bridges","Leona Lewis","Lesley Gore","Leslie Odom Jr.","Liam Payne","Lifehouse","Lil Baby","Lil Dicky","Lil Durk","Lil Mosey","Lil Nas X","Lil Pump","Lil Skies","Lil Tjay","Lil Uzi Vert","Lil Yachty","Lil' Kim","Lil' Wayne","Lin-Manuel Miranda","Linkin Park","Lionel Richie","Lipps Inc","Lisa Loeb","Little Peggy March","Little Richard","Lofi Fruits Music","Lord Huron","Los Del Rio","Los Dos Carnales","Los Lobos","Los Temerarios","Los Tigres Del Norte","Los Tucanes De Tijuana","Lou Reed","Loud Luxury","Louis Jordan","Louis Tomlinson","Love Unlimited","Lovin' Spoonful","Luan Santana","Luciano","Luis Miguel","Luis R Conriquez","Lulu","Lunay","Lupe Fiasco","M","MAX","MC Hammer","MC Ryan SP","MKTO","Mabel","Machine Gun Kelly","Madison Beer","Madonna","Mahalini","Major Lazer","Mambo Kingz","Maneskin","Marco Antonio Solís","Margaret Whiting","Maria Becerra","Mario","Mario Lanza","Mark Ronson","Maroon 5","Marshmello","Martin Garrix","Mary Ford","Mary J Blige","Mary J. Blige","Mary Wells","Matoma","Mau y Ricky","Meek Mill","Megadeth","Melanie","Melanie Martinez","Melendi","Men At Work","Metro Boomin","Michael Bublé","Michael Jackson","Michael McDonald","Michael Sembello","Miguel","Mike Posner","Miley Cyrus","Milky Chance","Minnie Riperton","Miracle Tones","Miranda Lambert","Mohit Chauhan","Mon Laferte","Moneybagg Yo","Monsta X","Mora","Morad","Morat","Mother Mother","Motley Crue","Ms. Lauryn Hill","Mumford & Sons","Muse","Mya","Myke Towers","NCT 127","NCT DREAM","NEFFEX","Nadin Amizah","Nancy Sinatra","Nat King Cole","Nate Smith","Natti Natasha","Nayer","Neil Diamond","Neil Sedaka","Nekfeu","Nelly","New Vaudeville Band","Next","Nickelback","Nicki Minaj","Nicki Nicole","Nicky Jam","Nina Simone","Ninho","Nipsey Hussle","Nirvana","Niska","No Doubt","Norah Jones","Normani","OMI","ONE OK ROCK","Oasis","Official HIGE DANdism","Offset","Old Dominion","Oliver Heldens","Olivia Rodrigo","Omah Lay","One Direction","Otis Redding","OutKast","Owl City","P Diddy","P!nk","PLK","PNL","Pamungkas","Passenger","Pat Boone","Patsy Cline","Patti LaBelle","Patti Page","Paul & Paula","Paul Revere & the Raiders","Paul Robeson","Paul Russell","Paul Whiteman","Paula Abdul","Peaches & Herb","Pearl Jam","Pee Wee Hunt","Pee Wee King","Pentatonix","Percy Faith","Percy Sledge","Peso Pluma","Peter Cetera","Peter Gabriel","Peter, Paul & Mary","Pharrell Williams","Pierce The Veil","Pineapple StormTv","Pink Floyd","Pink Sweat$","Piso 21","Pitbull","Plan B","Player","Polo G","Pop Smoke","Portugal. The Man","Pouya","Prince","Prince Royce","Pusha T","Quality Control","Queen","Quinn XCII","R. Kelly","RAF Camora","RAYE","REM","REO Speedwagon","Radiohead","Rag'n'Bone Man","Rage Against The Machine","Rahat Fateh Ali Khan","Rainbow Kitten Surprise","Rammstein","Rauw Alejandro","Ray Charles","Ray Parker Jr","Ray Stevens","Red Foley","Red Hot Chili Peppers","Red Velvet","Regard","Regina Belle","Reik","Rels B","Rema","Ricardo Arjona","Rich The Kid","Rick Astley","Rick Dees & his Cast of Idiots","Rick Ross","Rick Springfield","Ricky Martin","Ricky Nelson","Rihanna","Rita Ora","Ritchie Valens","Rizky Febian","Rob Thomas","Roberta Flack","Robin Schulz","Robin Thicke","Rod Stewart","Rod Wave","Roddy Ricch","Roger Miller","Romeo Santos","Rosemary Clooney","Roxette","Roy Acuff","Roy Orbison","Rudimental","Ruel","Ruth B.","Ryan Lewis","SCH","SEVENTEEN","SWV","Sabaton","Sabrina Carpenter","Sachet Tandon","Sachin-Jigar","Sade","Sam Cooke","Sam Feldt","Sam Hunt","Sam Smith","Sam The Sham & The Pharaohs","Sammy Davis Jr","Sammy Kaye","Santana","Sasha Alex Sloan","Savage Garden","Saweetie","Scorpions","Sean Kingston","Sean Paul","Sebastian Yatra","Sech","Seeb","Sezen Aksu","Sfera Ebbasta","Shaggy","Shania Twain","Shawn Mendes","Sheena Easton","Shinedown","Shubh","Sia","Sid Sriram","Sidhu Moose Wala","Silk","Silver Convention","Simon & Garfunkel","Sinead O'Connor","Sir Mix-a-Lot","Sister Sledge","Ski Mask The Slump God","Skillet","Skrillex","Sleeping At Last","Smokey Robinson","Snoop Dogg","Snow Patrol","Soda Stereo","Sonu Nigam","Sophie Ellis-Bextor","Spencer Davis Group","Spice Girls","Stan Getz","Starland Vocal Band","Stephen Sanchez","Steve Aoki","Steve Lacy","Steve Winwood","Stevie B","Sting","Stormzy","Strawberry Alarm Clock","Stray Kids","Stromae","Sublime","Sum 41","Summer Walker","Supertramp","Survivor","Swedish House Mafia","System Of A Down","T-Pain","T.I.","TAEYEON","TKKG","TLC","TOMORROW X TOGETHER","TOTO","TWICE","Tag Team","Tainy","Tammi Terrell","Tanishk Bagchi","Tate McRae","Taylor Swift","Tears For Fears","Tems","Tennessee Ernie Ford","Terence Trent D'Arby","Teresa Brewer","Terry Jacks","The Ames Brothers","The Animals","The B52s","The Bangles","The Beatles","The Black Eyed Peas","The Black Keys","The Box Tops","The Chainsmokers","The Chiffons","The Chordettes","The Clash","The Coasters","The Commodores","The Cowsills","The Cranberries","The Crew-Cuts","The Cure","The Detroit Spinners","The Diamonds","The Doobie Brothers","The Doors","The Drifters","The Emotions","The Eurythmics","The Fireballs","The Flamingos","The Foundations","The Four Seasons","The Fray","The Game","The Go Gos","The Goo Goo Dolls","The Head And The Heart","The Hollies","The Ink Spots","The Isley Brothers","The Jackson 5","The Kid LAROI","The Killers","The Kingston Trio","The Kooks","The Lemon Pipers","The Living Tombstone","The Lumineers","The Mamas & The Papas","The Marvelettes","The McCoys","The Mills Brothers","The Miracles","The Monkees","The Moody Blues","The National","The Neighbourhood","The Notorious B.I.G.","The O'Jays","The Offspring","The Osmonds","The Partridge Family","The Penguins","The Pet Shop Boys","The Platters","The Righteous Brothers","The Rolling Stones","The Ronettes","The Score","The Script","The Seekers","The Shangri-Las","The Smashing Pumpkins","The Staple Singers","The Strokes","The Supremes","The Temptations","The Turtles","The Vamps","The Verve","The Village People","The Weavers","The White Stripes","The Young Rascals","The Zombies","Thelma Houston","Thomas Rhett","Three Days Grace","Three Dog Night","Three Man Down","Timbaland","Timmy Trumpet","Toby Keith","Tom Jones","Tom Petty and the Heartbreakers","Tommy Dorsey","Tommy Edwards","Tommy James & the Shondells","Tone Loc","Toni Braxton","Topic","Tory Lanez","Tove Lo","Trevor Daniel","Trey Songz","Trippie Redd","Trueno","Tulsi Kumar","Tulus","Twenty One Pilots","Two Feet","Ty Dolla $ign","Tyga","Tyler Hubbard","U2","UB40","UZI","Ufo361","Upchurch","V","Vampire Weekend","Van McCoy","Van Morrison","Vance Joy","Vanessa Carlton","Vanessa Williams","Vera Lynn","Vernon Dalhart","Vicente Fernandez","Vishal-Shekhar","Volbeat","WILLOW","Wale","Wallows","Weezer","Wham!","Whitney Houston","Why Don't We","Wilbert Harrison","Wilson Phillips","Wiz Khalifa","Woody Guthrie","Wyclef Jean","XXXTENTACION","Xavi","YG","YNW Melly","YOASOBI","Yandel","Years & Years","Yeat","Yo Gotti","Young Dolph","Young Miko","Young Thug","YoungBoy Never Broke Again","Yung Gravy","Yuuri","Yuvan Shankar Raja","ZAYN","ZZ Top","Zac Brown Band","Zach Bryan","Zara Larsson","aespa","benny blanco","blink-182","d4vd","deadmau5","girl in red","gnash","iann dior","will.i.am"],genre:["Acid House","Acid Jazz","Acid Rock","Acoustic","Acoustic Blues","Afro-Pop","Afrobeat","Alt-Rock","Alternative","Ambient","American Trad Rock","Americana","Anime","Arena Rock","Art-Rock","Avant-Garde","Avant-Punk","Baladas y Boleros","Barbershop","Baroque","Bebop","Big Band","Black Metal","Blue Note","Bluegrass","Blues","Boogaloo","Bop","Bossa Nova","Bounce","Brazilian Funk","Breakbeat","Britpop","CCM","Cajun","Cantopop","Celtic","Celtic Folk","Chamber Music","Chant","Chanukah","Chicago Blues","Chicago House","Chicano","Children’s Music","Chill","Choral","Christian","Christmas","Classical","Club","College Rock","Conjunto","Cool Jazz","Country","Crunk","Dance","Dancehall","Death Metal","Deep House","Delta Blues","Detroit Techno","Dirty South","Disco","Disney","Dixieland","Doo-wop","Downtempo","Dream Pop","Drill","Drinking Songs","Drone","Drum'n'bass","Dub","Dubstep","EDM","Early Music","East Coast Rap","Easter","Easy Listening","Eclectic","Electric Blues","Electro","Electronic","Electronica","Emo","Enka","Environmental","Ethio-jazz","Experimental","Experimental Rock","Flamenco","Folk","Folk-Rock","Forro","French Pop","Funk","Fusion","Gangsta Rap","Garage","German Folk","German Pop","Glam Rock","Gospel","Goth","Grime","Grindcore","Groove","Grunge","Hair Metal","Halloween","Happy","Hard Bop","Hard Dance","Hard Rock","Hardcore","Hardcore Punk","Hardcore Rap","Hardstyle","Healing","Heavy Metal","High Classical","Hip Hop","Holiday","Honky Tonk","House","IDM","Impressionist","Indie","Industrial","Instrumental","J-Dance","J-Idol","J-Pop","J-Punk","J-Rock","J-Ska","J-Synth","Jackin House","Jam Bands","Japanese Pop","Jazz","Jungle","K-Pop","Karaoke","Kayokyoku","Kids","Kitsch","Klezmer","Krautrock","Latin","Latin Jazz","Latin Rap","Local","Lounge","Lullabies","MPB","Mainstream Jazz","Malay","Mandopop","March","Mariachi","Mawwal","Medieval","Meditation","Metal","Metalcore","Minimal Techno","Minimalism","Modern","Motown","Mugham","Musicals","Musique Concrète","Nature","Neo-Soul","Nerdcore","New Acoustic","New Age","New Mex","New Wave","No Wave","Noise","Nordic","Novelty","OPM","Oi!","Old School Rap","Opera","Orchestral","Original Score","Outlaw Country","Pagode","Party","Piano","Polka","Pop","Pop Film","Pop Latino","Post Dubstep","Power Pop","Praise & Worship","Progressive House","Progressive Rock","Proto-punk","Psych Rock","Psychedelic","Punk","Punk Rock","Qawwali","Quiet Storm","R&B","Ragtime","Rainy Day","Rap","Reggae","Reggaeton","Regional Mexicano","Relaxation","Renaissance","Retro","Rock","Rockabilly","Rocksteady","Romance","Romantic","Roots Reggae","Roots Rock","SKA","Sad","Salsa","Samba","Second Line","Sertanejo","Shaabi","Shoegaze","Sleep","Smooth Jazz","Soft Rock","Soul","Soundtrack","Southern Gospel","Southern Rock","Space Rock","Stage And Screen","Steampunk","Summer","Surf","Swamp Pop","Swing","Synth Pop","Tango","Techno","Teen Pop","Tejano","Tex-Mex","Thanksgiving","Traditional","Trance","Trip Hop","Tropical","Underground Rap","Urban","Urban Cowboy","West Coast Rap","Western Swing","World","Worldbeat","Zydeco"],song_name:["(Everything I Do) I Do it For You","(Ghost) Riders in the Sky","(I Can't Get No) Satisfaction","(I've Got a Gal In) Kalamazoo","(I've Had) the Time of My Life","(It's No) Sin","(Just Like) Starting Over","(Let Me Be Your) Teddy Bear","(Put Another Nickel In) Music! Music! Music!","(Sexual) Healing","(Sittin' On) the Dock of the Bay","(They Long to Be) Close to You","(You Keep Me) Hangin' On","(You're My) Soul & Inspiration","(Your Love Keeps Lifting Me) Higher & Higher","12th Street Rag","1999","19th Nervous Breakdown","50 Ways to Leave Your Lover","9 to 5","96 Tears","A Boy Named Sue","A Hard Day's Night","A String of Pearls","A Thousand Miles","A Tree in the Meadow","A Whiter Shade of Pale","A Whole New World (Aladdin's Theme)","A Woman in Love","A-Tisket A-Tasket","ABC","Abracadabra","Ac-cent-tchu-ate the Positive","Addicted to Love","After You've Gone","Afternoon Delight","Again","Against All Odds (Take a Look At Me Now)","Ain't Misbehavin'","Ain't No Mountain High Enough","Ain't No Sunshine","Ain't That a Shame","Airplanes","All Along the Watchtower","All I Have to Do is Dream","All I Wanna Do","All My Lovin' (You're Never Gonna Get It)","All Night Long (All Night)","All Out of Love","All Shook Up","All You Need is Love","Alone","Alone Again (Naturally)","Always On My Mind","American Pie","American Woman","Angie","Another Brick in the Wall (part 2)","Another Day in Paradise","Another Night","Another One Bites the Dust","Apologize","April Showers","Aquarius/Let The Sunshine In","Are You Lonesome Tonight?","Arthur's Theme (Best That You Can Do)","As Time Goes By","At Last","At the Hop","Auf Wiederseh'n Sweetheart","Baby Baby","Baby Come Back","Baby Got Back","Baby Love","Baby One More Time","Bad","Bad Day","Bad Girls","Bad Moon Rising","Bad Romance","Baker Street","Ball of Confusion (That's What the World is Today)","Ballad of the Green Berets","Ballerina","Band On the Run","Band of Gold","Battle of New Orleans","Be Bop a Lula","Be My Baby","Be My Love","Beat It","Beautiful Day","Beauty & the Beast","Because I Love You (The Postman Song)","Because You Loved Me","Because of You","Before The Next Teardrop Falls","Begin the Beguine","Behind Closed Doors","Being With You","Believe","Ben","Bennie & the Jets","Besame Mucho","Best of My Love","Bette Davis Eyes","Big Bad John","Big Girls Don't Cry","Billie Jean","Bitter Sweet Symphony","Black Or White","Black Velvet","Blaze of Glory","Bleeding Love","Blue Suede Shoes","Blue Tango","Blueberry Hill","Blurred Lines","Body & Soul","Bohemian Rhapsody","Boogie Oogie Oogie","Boogie Woogie Bugle Boy","Boom Boom Pow","Born in the USA","Born to Be Wild","Born to Run","Boulevard of Broken Dreams","Brand New Key","Brandy (You're A Fine Girl)","Breaking Up is Hard to Do","Breathe","Bridge Over Troubled Water","Brother","Brother Louie","Brown Eyed Girl","Brown Sugar","Build Me Up Buttercup","Burn","Buttons & Bows","Bye","Bye Bye","Bye Bye Love","Caldonia Boogie (What Makes Your Big Head So Hard)","California Dreamin'","California Girls","Call Me","Call Me Maybe","Can You Feel the Love Tonight","Can't Buy Me Love","Can't Get Enough of Your Love","Can't Help Falling in Love","Candle in the Wind '97","Candy Man","Car Wash","Careless Whisper","Cars","Cat's in the Cradle","Cathy's Clown","Celebration","Centerfold","Chain of Fools","Chances Are","Change the World","Chapel of Love","Chattanooga Choo Choo","Chattanoogie Shoe-Shine Boy","Check On It","Cheek to Cheek","Cherish","Cherry Pink & Apple Blossom White","Cold","Colors of the Wind","Come On Eileen","Come On-a My House","Come Together","Coming Up","Cracklin' Rosie","Crazy","Crazy For You","Crazy Little Thing Called Love","Crazy in Love","Creep","Crimson & Clover","Crocodile Rock","Cry","Cry Like a Baby","Crying","Da Doo Ron Ron (When He Walked Me Home)","Dance to the Music","Dancing Queen","Dancing in the Dark","Dancing in the Street","Dardanella","Daydream Believer","December 1963 (Oh What a Night)","Delicado","Dilemma","Disco Duck","Disco Lady","Disturbia","Dizzy","Do That to Me One More Time","Do Wah Diddy Diddy","Do Ya Think I'm Sexy?","Do You Love Me?","Don't Be Cruel","Don't Fence Me In","Don't Go Breaking My Heart","Don't Leave Me This Way","Don't Let the Stars Get in Your Eyes","Don't Let the Sun Go Down On Me","Don't Speak","Don't Stop 'Til You Get Enough","Don't Worry Be Happy","Don't You (Forget About Me)","Don't You Want Me","Doo Wop (That Thing)","Down","Down Hearted Blues","Down Under","Downtown","Dreamlover","Dreams","Drop it Like It's Hot","Drops of Jupiter (Tell Me)","Duke of Earl","E.T.","Earth Angel","Ebony & Ivory","Eight Days a Week","Empire State Of Mind","End of the Road","Endless Love","Escape (The Pina Colada Song)","Eve of Destruction","Every Breath You Take","Every Little Thing She Does is Magic","Everybody Loves Somebody","Everybody Wants to Rule the World","Everyday People","Eye of the Tiger","Faith","Fallin'","Fame","Family Affair","Fantasy","Fast Car","Feel Good Inc","Feel Like Making Love","Fire & Rain","Firework","Flashdance. What a Feeling","Fly Robin Fly","Foolish Games","Footloose","For What It's Worth (Stop","Fortunate Son","Frankenstein","Freak Me","Freebird","Frenesi","Funkytown","Gangsta's Paradise","Georgia On My Mind","Georgy Girl","Get Back","Get Down Tonight","Get Off of My Cloud","Ghostbusters","Gimme Some Lovin'","Girls Just Wanna Have Fun","Give Me Everything","Gives You Hell","Glamorous","Glory of Love","Go Your Own Way","God Bless America","God Bless the Child","Gold Digger","Gonna Make You Sweat (Everybody Dance Now)","Good Lovin'","Good Times","Good Vibrations","Goodbye Yellow Brick Road","Goodnight","Got to Give it Up","Grease","Great Balls of Fire","Greatest Love of All","Green Onions","Green River","Green Tambourine","Grenade","Groove is in the Heart","Groovin'","Gypsies","Hair","Hang On Sloopy","Hanging by a Moment","Hanky Panky","Happy Days Are Here Again","Happy Together","Harbour Lights","Hard to Say I'm Sorry","Harper Valley PTA","Have You Ever Really Loved a Woman?","He'll Have to Go","He's So Fine","He's a Rebel","Heart of Glass","Heart of Gold","Heartbreak Hotel","Hello","Hello Dolly","Help Me","Help!","Here Without You","Here in My Heart","Hero","Hey Baby","Hey Jude","Hey Paula","Hey There","Hey There Delilah","Hey Ya!","Higher Love","Hips don't lie","Hit the Road","Hold On","Hollaback Girl","Honey","Honky Tonk","Honky Tonk Woman","Horse With No Name","Hot Child In The City","Hot Stuff","Hotel California","Hound Dog","House of the Rising Sun","How Deep is Your Love?","How Do I Live?","How Do You Mend a Broken Heart","How High the Moon","How Much is That Doggy in the Window?","How Will I Know","How You Remind Me","How to Save a Life","Hungry Heart","Hurt So Good","I Believe I Can Fly","I Can Dream","I Can Help","I Can See Clearly Now","I Can't Get Next to You","I Can't Get Started","I Can't Go For That (No Can Do)","I Can't Help Myself (Sugar Pie","I Can't Stop Loving You","I Don't Want to Miss a Thing","I Fall to Pieces","I Feel Fine","I Feel For You","I Feel Love","I Get Around","I Got You (I Feel Good)","I Got You Babe","I Gotta Feeling","I Heard it Through the Grapevine","I Honestly Love You","I Just Called to Say I Love You","I Just Wanna Be Your Everything","I Kissed A Girl","I Love Rock 'n' Roll","I Need You Now","I Only Have Eyes For You","I Shot the Sheriff","I Still Haven't Found What I'm Looking For","I Swear","I Think I Love You","I Walk the Line","I Wanna Dance With Somebody (Who Loves Me)","I Wanna Love You","I Want You Back","I Want to Hold Your Hand","I Want to Know What Love Is","I Went to Your Wedding","I Will Always Love You","I Will Follow Him","I Will Survive","I Write the Songs","I'll Be Missing You","I'll Be There","I'll Make Love to You","I'll Never Smile Again","I'll Take You There","I'll Walk Alone","I'll be seeing you","I'm Looking Over a Four Leaf Clover","I'm So Lonesome I Could Cry","I'm Sorry","I'm Walking Behind You","I'm Your Boogie Man","I'm Yours","I'm a Believer","I've Heard That Song Before","If (They Made Me a King)","If I Didn't Care","If You Don't Know Me By Now","If You Leave Me Now","Imagine","In Da Club","In the End","In the Ghetto","In the Mood","In the Summertime","In the Year 2525 (Exordium & Terminus)","Incense & Peppermints","Indian Reservation (The Lament Of The Cherokee Reservation Indian)","Instant Karma","Iris","Ironic","Irreplaceable","It Had to Be You","It's All in the Game","It's My Party","It's Now Or Never","It's Still Rock 'n' Roll to Me","It's Too Late","Jack & Diane","Jailhouse Rock","Jessie's Girl","Jive Talkin'","Johnny B Goode","Joy to the World","Judy in Disguise (With Glasses)","Jump","Jumpin' Jack Flash","Just Dance","Just My Imagination (Running Away With Me)","Just the Way You Are","Kansas City","Karma Chameleon","Keep On Loving You","Killing Me Softly With His Song","King of the Road","Kiss","Kiss & Say Goodbye","Kiss From a Rose","Kiss Me","Kiss On My List","Kiss You All Over","Knock On Wood","Knock Three Times","Kokomo","Kryptonite","Kung Fu Fighting","La Bamba","Lady","Lady Marmalade (Voulez-Vous Coucher Aver Moi Ce Soir?)","Last Train to Clarksville","Layla","Le Freak","Leader of the Pack","Lean On Me","Leaving","Let Me Call You Sweetheart","Let Me Love You","Let it Be","Let it Snow! Let it Snow! Let it Snow!","Let's Dance","Let's Get it On","Let's Groove","Let's Hear it For the Boy","Let's Stay Together","Light My Fire","Lights","Like a Prayer","Like a Rolling Stone","Like a Virgin","Little Darlin'","Little Things Mean a Lot","Live & Let Die","Livin' La Vida Loca","Livin' On a Prayer","Living For the City","Locked Out Of Heaven","Lola","Lonely Boy","Long Cool Woman in a Black Dress","Long Tall Sally","Look Away","Lookin' Out My Back Door","Lose Yourself","Losing My Religion","Louie Louie","Love Child","Love Hangover","Love In This Club","Love Is Blue (L'Amour Est Bleu)","Love Letters in the Sand","Love Me Do","Love Me Tender","Love Shack","Love Theme From 'A Star is Born' (Evergreen)","Love Train","Love Will Keep Us Together","Love is a Many Splendoured Thing","Love to Love You Baby","Love's Theme","Loving You","Low","Macarena","Mack the Knife","Maggie May","Magic","Magic Carpet Ride","Make Love to Me","Make it With You","Makin' Whoopee","Mama Told Me Not to Come","Man in the Mirror","Manana (Is Soon Enough For Me)","Maneater","Maniac","Maybellene","Me & Bobby McGee","Me & Mrs Jones","Memories Are Made of This","Mercy Mercy Me (The Ecology)","Mickey","Midnight Train to Georgia","Minnie the Moocher","Miss You","Miss You Much","Mister Sandman","Mmmbop","Mona Lisa","Monday Monday","Money For Nothing","Mony Mony","Mood Indigo","Moonlight Cocktail","Moonlight Serenade","More Than Words","More Than a Feeling","Morning Train (Nine to Five)","Mr Big Stuff","Mr Brightside","Mr Tambourine Man","Mrs Brown You've Got a Lovely Daughter","Mrs Robinson","Mule Train","Music","My Blue Heaven","My Boyfriend's Back","My Eyes Adored You","My Girl","My Guy","My Heart Will Go On","My Life","My Love","My Man","My Prayer","My Sharona","My Sweet Lord","Na Na Hey Hey (Kiss Him Goodbye)","Nature Boy","Near You","Need You Now","Need You Tonight","Never Gonna Give You Up","Night & Day","Night Fever","Nights in White Satin","No One","No Scrubs","Nobody Does it Better","Nothin' on You","Nothing Compares 2 U","Nothing's Gonna Stop Us Now","Ode To Billie Joe","Oh","Oh Happy Day","Oh My Papa (O Mein Papa)","Ol' Man River","Ole Buttermilk Sky","On Bended Knee","On My Own","On the Atchison","One","One Bad Apple","One More Try","One O'Clock Jump","One Sweet Day","One of These Nights","One of Us","Only The Lonely (Know The Way I Feel)","Only You (And You Alone)","Open Arms","Over There","Over the Rainbow","Paint it Black","Papa Don't Preach","Papa Was a Rolling Stone","Papa's Got a Brand New Bag","Paper Doll","Paper Planes","Paperback Writer","Party Rock Anthem","Peg o' My Heart","Peggy Sue","Pennies From Heaven","Penny Lane","People","People Got to Be Free","Personality","Philadelphia Freedom","Physical","Piano Man","Pick Up the Pieces","Pistol Packin' Mama","Play That Funky Music","Please Mr Postman","Poker Face","Pon De Replay","Pony Time","Pop Muzik","Prisoner of Love","Private Eyes","Promiscuous","Proud Mary","Purple Haze","Purple Rain","Puttin' on the Ritz","Que sera sera (Whatever will be will be)","Queen of Hearts","Rag Doll","Rag Mop","Rags to Riches","Raindrops Keep Falling On My Head","Rapture","Ray of Light","Reach Out (I'll Be There)","Red Red Wine","Rehab","Respect","Return to Sender","Reunited","Revolution","Rhapsody in Blue","Rhinestone Cowboy","Rich Girl","Riders On the Storm","Right Back Where We Started From","Ring My Bell","Ring of Fire","Rock Around the Clock","Rock With You","Rock Your Baby","Rock the Boat","Rock the Casbah","Roll Over Beethoven","Roll With It","Rolling In The Deep","Rosanna","Roses Are Red","Royals","Ruby Tuesday","Rudolph","Rum & Coca-Cola","Runaround Sue","Runaway","Running Scared","Rush Rush","Sailing","Save the Best For Last","Save the Last Dance For Me","Say It Right","Say My Name","Say Say Say","Say You","School's Out","Seasons in the Sun","Secret Love","Sentimental Journey","Sexyback","Sh-Boom (Life Could Be a Dream)","Shadow Dancing","Shake Down","Shake You Down","She Drives Me Crazy","She Loves You","She's a Lady","Shining Star","Shop Around","Shout","Silly Love Songs","Since U Been Gone","Sing","Singing The Blues","Single Ladies (Put A Ring On It)","Sir Duke","Sixteen Tons","Sledgehammer","Sleep Walk","Sleepy Lagoon","Slow Poke","Smells Like Teen Spirit","Smoke Gets in Your Eyes","Smoke On the Water","Smoke! Smoke! Smoke! (That Cigarette)","Smooth","So Much in Love","Soldier Boy","Some Enchanted Evening","Some of These Days","Somebody That I Used to Know","Somebody to Love","Someday","Somethin' Stupid","Something","Soul Man","Spanish Harlem","Spill the Wine","Spinning Wheel","Spirit in the Sky","St George & the Dragonette","St Louis Blues","Stagger Lee","Stairway to Heaven","Stand By Me","Stardust","Stars & Stripes Forever","Stay (I Missed You)","Stayin' Alive","Stop! in the Name of Love","Stormy Weather (Keeps Rainin' All the Time)","Straight Up","Strange Fruit","Stranger On the Shore","Strangers in the Night","Strawberry Fields Forever","Streets of Philadelphia","Stronger","Stuck On You","Sugar Shack","Sugar Sugar","Summer in the City","Summertime Blues","Sunday","Sunshine Superman","Sunshine of Your Love","Superstar","Superstition","Surfin' USA","Suspicious Minds","Swanee","Sweet Caroline (Good Times Never Seemed So Good)","Sweet Child O' Mine","Sweet Dreams (Are Made of This)","Sweet Georgia Brown","Sweet Home Alabama","Sweet Soul Music","Swinging On a Star","T For Texas (Blue Yodel No 1)","TSOP (The Sound of Philadelphia)","Take Me Home","Take My Breath Away","Take On Me","Take The 'A' Train","Take a Bow","Tammy","Tangerine","Tears in Heaven","Tears of a Clown","Temperature","Tennessee Waltz","Tequila","Tha Crossroads","Thank You (Falettinme be Mice Elf Again)","That Lucky Old Sun (Just Rolls Around Heaven All Day)","That Old Black Magic","That'll Be the Day","That's Amore","That's What Friends Are For","That's the Way (I Like It)","That's the Way Love Goes","The Boy is Mine","The Boys of Summer","The Christmas Song (Chestnuts Roasting On An Open Fire)","The End of the World","The First Time Ever I Saw Your Face","The Girl From Ipanema","The Glow-Worm","The Great Pretender","The Gypsy","The Hustle","The Joker","The Last Dance","The Letter","The Loco-Motion","The Long & Winding Road","The Love You Save","The Morning After","The Power of Love","The Prisoner's Song","The Reason","The Rose","The Sign","The Song From Moulin Rouge (Where Is Your Heart)","The Sounds of Silence","The Streak","The Sweet Escape","The Thing","The Tide is High","The Tracks of My Tears","The Twist","The Wanderer","The Way We Were","The Way You Look Tonight","The Way You Move","Theme From 'A Summer Place'","Theme From 'Greatest American Hero' (Believe It Or Not)","Theme From 'Shaft'","There goes my baby","These Boots Are Made For Walking","Third Man Theme","This Diamond Ring","This Guy's in Love With You","This Land is Your Land","This Love","This Ole House","This Used to Be My Playground","Three Coins in the Fountain","Three Times a Lady","Thrift Shop","Thriller","Ticket to Ride","Tie a Yellow Ribbon 'round the Old Oak Tree","Tiger Rag","Tighten Up","Tik-Toc","Till I Waltz Again With You","Till The End of Time","Time After Time","Time of the Season","To Sir","Tom Dooley","Tonight's the Night (Gonna Be Alright)","Too Close","Too Young","Tossing & Turning","Total Eclipse of the Heart","Touch Me","Toxic","Travellin' Band","Travellin' Man","Truly Madly Deeply","Turn! Turn! Turn! (To Everything There is a Season)","Tutti Frutti","Twist & Shout","Two Hearts","U Can't Touch This","U Got it Bad","Umbrella","Un-Break My Heart","Unbelievable","Unchained Melody","Uncle Albert (Admiral Halsey)","Under the Boardwalk","Under the Bridge","Unforgettable","Up Around the Bend","Up Up & Away","Up Where We Belong","Upside Down","Use Somebody","Vaya Con Dios (may God Be With You)","Venus","Vision of Love","Viva La Vida","Vogue","Volare","Wabash Cannonball","Waiting For a Girl Like You","Wake Me Up Before You Go Go","Wake Up Little Susie","Walk Don't Run","Walk Like a Man","Walk Like an Egyptian","Walk On By","Walk On the Wild Side","Walk This Way","Wannabe","Want Ads","Wanted","War","Waterfalls","Wayward Wind","We Are Family","We Are Young","We Are the Champions","We Are the World","We Belong Together","We Built This City","We Can Work it Out","We Didn't Start the Fire","We Found Love","We Got The Beat","We Will Rock You","We've Only Just Begun","Weak","Wedding Bell Blues","West End Blues","West End Girls","What Goes Around Comes Around","What a Fool Believes","What'd I Say","What's Going On?","What's Love Got to Do With It?","Whatcha Say","Wheel of Fortune","When Doves Cry","When You Wish Upon a Star","When a Man Loves a Woman","Where Did Our Love Go","Where is the Love?","Whip It","Whispering","White Christmas","White Rabbit","Whole Lotta Love","Whole Lotta Shakin' Goin' On","Whoomp! (There it Is)","Why Do Fools Fall in Love?","Why Don't You Believe Me?","Wichita Lineman","Wicked Game","Wild Thing","Wild Wild West","Will It Go Round In Circles","Will You Love Me Tomorrow","Winchester Cathedral","Wind Beneath My Wings","Wipe Out","Wishing Well","With Or Without You","Without Me","Without You","Woman","Won't Get Fooled Again","Wooly Bully","Working My Way Back to You","YMCA","Yakety Yak","Yeah!","Yellow Rose of Texas","Yesterday","You Ain't Seen Nothin' Yet","You Always Hurt the One You Love","You Are the Sunshine of My Life","You Belong With Me","You Belong to Me","You Can't Hurry Love","You Don't Bring Me Flowers","You Don't Have to Be a Star (To Be in My Show)","You Light Up My Life","You Make Me Feel Brand New","You Make Me Feel Like Dancing","You Really Got Me","You Send Me","You Sexy Thing","You Were Meant for Me","You make Me Wanna","You'll Never Know","You're Beautiful","You're So Vain","You're Still the One","You're the One That I Want","You've Got a Friend","You've Lost That Lovin' Feelin'","Your Cheatin' Heart","Your Song"]},person:{bio_part:["activist","artist","author","blogger","business owner","coach","creator","designer","developer","dreamer","educator","engineer","entrepreneur","environmentalist","film lover","filmmaker","foodie","founder","friend","gamer","geek","grad","inventor","leader","model","musician","nerd","parent","patriot","person","philosopher","photographer","public speaker","scientist","singer","streamer","student","teacher","traveler","veteran","writer"],bio_pattern:["{{person.bio_part}}","{{person.bio_part}}, {{person.bio_part}}","{{person.bio_part}}, {{person.bio_part}}, {{person.bio_part}}","{{person.bio_part}}, {{person.bio_part}}, {{person.bio_part}} {{internet.emoji}}","{{word.noun}} {{person.bio_supporter}}","{{word.noun}} {{person.bio_supporter}} {{internet.emoji}}","{{word.noun}} {{person.bio_supporter}}, {{person.bio_part}}","{{word.noun}} {{person.bio_supporter}}, {{person.bio_part}} {{internet.emoji}}"],bio_supporter:["advocate","devotee","enthusiast","fan","junkie","lover","supporter"],first_name:{generic:["Aaliyah","Aaron","Abagail","Abbey","Abbie","Abbigail","Abby","Abdiel","Abdul","Abdullah","Abe","Abel","Abelardo","Abigail","Abigale","Abigayle","Abner","Abraham","Ada","Adah","Adalberto","Adaline","Adam","Adan","Addie","Addison","Adela","Adelbert","Adele","Adelia","Adeline","Adell","Adella","Adelle","Aditya","Adolf","Adolfo","Adolph","Adolphus","Adonis","Adrain","Adrian","Adriana","Adrianna","Adriel","Adrien","Adrienne","Afton","Aglae","Agnes","Agustin","Agustina","Ahmad","Ahmed","Aida","Aidan","Aiden","Aileen","Aimee","Aisha","Aiyana","Akeem","Al","Alaina","Alan","Alana","Alanis","Alanna","Alayna","Alba","Albert","Alberta","Albertha","Alberto","Albin","Albina","Alda","Alden","Alec","Aleen","Alejandra","Alejandrin","Alek","Alena","Alene","Alessandra","Alessandro","Alessia","Aletha","Alex","Alexa","Alexander","Alexandra","Alexandre","Alexandrea","Alexandria","Alexandrine","Alexandro","Alexane","Alexanne","Alexie","Alexis","Alexys","Alexzander","Alf","Alfonso","Alfonzo","Alford","Alfred","Alfreda","Alfredo","Ali","Alia","Alice","Alicia","Alisa","Alisha","Alison","Alivia","Aliya","Aliyah","Aliza","Alize","Allan","Allen","Allene","Allie","Allison","Ally","Alphonso","Alta","Althea","Alva","Alvah","Alvena","Alvera","Alverta","Alvina","Alvis","Alyce","Alycia","Alysa","Alysha","Alyson","Alysson","Amalia","Amanda","Amani","Amara","Amari","Amaya","Amber","Ambrose","Amelia","Amelie","Amely","America","Americo","Amie","Amina","Amir","Amira","Amiya","Amos","Amparo","Amy","Amya","Ana","Anabel","Anabelle","Anahi","Anais","Anastacio","Anastasia","Anderson","Andre","Andreane","Andreanne","Andres","Andrew","Andy","Angel","Angela","Angelica","Angelina","Angeline","Angelita","Angelo","Angie","Angus","Anibal","Anika","Anissa","Anita","Aniya","Aniyah","Anjali","Anna","Annabel","Annabell","Annabelle","Annalise","Annamae","Annamarie","Anne","Annetta","Annette","Annie","Ansel","Ansley","Anthony","Antoinette","Antone","Antonetta","Antonette","Antonia","Antonietta","Antonina","Antonio","Antwan","Antwon","Anya","April","Ara","Araceli","Aracely","Arch","Archibald","Ardella","Arden","Ardith","Arely","Ari","Ariane","Arianna","Aric","Ariel","Arielle","Arjun","Arlene","Arlie","Arlo","Armand","Armando","Armani","Arnaldo","Arne","Arno","Arnold","Arnoldo","Arnulfo","Aron","Art","Arthur","Arturo","Arvel","Arvid","Arvilla","Aryanna","Asa","Asha","Ashlee","Ashleigh","Ashley","Ashly","Ashlynn","Ashton","Ashtyn","Asia","Assunta","Astrid","Athena","Aubree","Aubrey","Audie","Audra","Audreanne","Audrey","August","Augusta","Augustine","Augustus","Aurelia","Aurelie","Aurelio","Aurore","Austen","Austin","Austyn","Autumn","Ava","Avery","Avis","Axel","Ayana","Ayden","Ayla","Aylin","Baby","Bailee","Bailey","Barbara","Barney","Baron","Barrett","Barry","Bart","Bartholome","Barton","Baylee","Beatrice","Beau","Beaulah","Bell","Bella","Belle","Ben","Benedict","Benjamin","Bennett","Bennie","Benny","Benton","Berenice","Bernadette","Bernadine","Bernard","Bernardo","Berneice","Bernhard","Bernice","Bernie","Berniece","Bernita","Berry","Bert","Berta","Bertha","Bertram","Bertrand","Beryl","Bessie","Beth","Bethany","Bethel","Betsy","Bette","Bettie","Betty","Bettye","Beulah","Beverly","Bianka","Bill","Billie","Billy","Birdie","Blair","Blaise","Blake","Blanca","Blanche","Blaze","Bo","Bobbie","Bobby","Bonita","Bonnie","Boris","Boyd","Brad","Braden","Bradford","Bradley","Bradly","Brady","Braeden","Brain","Brandi","Brando","Brandon","Brandt","Brandy","Brandyn","Brannon","Branson","Brant","Braulio","Braxton","Brayan","Breana","Breanna","Breanne","Brenda","Brendan","Brenden","Brendon","Brenna","Brennan","Brennon","Brent","Bret","Brett","Bria","Brian","Briana","Brianne","Brice","Bridget","Bridgette","Bridie","Brielle","Brigitte","Brionna","Brisa","Britney","Brittany","Brock","Broderick","Brody","Brook","Brooke","Brooklyn","Brooks","Brown","Bruce","Bryana","Bryce","Brycen","Bryon","Buck","Bud","Buddy","Buford","Bulah","Burdette","Burley","Burnice","Buster","Cade","Caden","Caesar","Caitlyn","Cale","Caleb","Caleigh","Cali","Calista","Callie","Camden","Cameron","Camila","Camilla","Camille","Camren","Camron","Camryn","Camylle","Candace","Candelario","Candice","Candida","Candido","Cara","Carey","Carissa","Carlee","Carleton","Carley","Carli","Carlie","Carlo","Carlos","Carlotta","Carmel","Carmela","Carmella","Carmelo","Carmen","Carmine","Carol","Carolanne","Carole","Carolina","Caroline","Carolyn","Carolyne","Carrie","Carroll","Carson","Carter","Cary","Casandra","Casey","Casimer","Casimir","Casper","Cassandra","Cassandre","Cassidy","Cassie","Catalina","Caterina","Catharine","Catherine","Cathrine","Cathryn","Cathy","Cayla","Ceasar","Cecelia","Cecil","Cecile","Cecilia","Cedrick","Celestine","Celestino","Celia","Celine","Cesar","Chad","Chadd","Chadrick","Chaim","Chance","Chandler","Chanel","Chanelle","Charity","Charlene","Charles","Charley","Charlie","Charlotte","Chase","Chasity","Chauncey","Chaya","Chaz","Chelsea","Chelsey","Chelsie","Chesley","Chester","Chet","Cheyanne","Cheyenne","Chloe","Chris","Christ","Christa","Christelle","Christian","Christiana","Christina","Christine","Christop","Christophe","Christopher","Christy","Chyna","Ciara","Cicero","Cielo","Cierra","Cindy","Citlalli","Clair","Claire","Clara","Clarabelle","Clare","Clarissa","Clark","Claud","Claude","Claudia","Claudie","Claudine","Clay","Clemens","Clement","Clementina","Clementine","Clemmie","Cleo","Cleora","Cleta","Cletus","Cleve","Cleveland","Clifford","Clifton","Clint","Clinton","Clotilde","Clovis","Cloyd","Clyde","Coby","Cody","Colby","Cole","Coleman","Colin","Colleen","Collin","Colt","Colten","Colton","Columbus","Concepcion","Conner","Connie","Connor","Conor","Conrad","Constance","Constantin","Consuelo","Cooper","Cora","Coralie","Corbin","Cordelia","Cordell","Cordia","Cordie","Corene","Corine","Cornelius","Cornell","Corrine","Cortez","Cortney","Cory","Coty","Courtney","Coy","Craig","Crawford","Creola","Cristal","Cristian","Cristina","Cristobal","Cristopher","Cruz","Crystal","Crystel","Cullen","Curt","Curtis","Cydney","Cynthia","Cyril","Cyrus","Dagmar","Dahlia","Daija","Daisha","Daisy","Dakota","Dale","Dallas","Dallin","Dalton","Damaris","Dameon","Damian","Damien","Damion","Damon","Dan","Dana","Dandre","Dane","D'angelo","Dangelo","Danial","Daniela","Daniella","Danielle","Danika","Dannie","Danny","Dante","Danyka","Daphne","Daphnee","Daphney","Darby","Daren","Darian","Dariana","Darien","Dario","Darion","Darius","Darlene","Daron","Darrel","Darrell","Darren","Darrick","Darrin","Darrion","Darron","Darryl","Darwin","Daryl","Dashawn","Dasia","Dave","David","Davin","Davion","Davon","Davonte","Dawn","Dawson","Dax","Dayana","Dayna","Dayne","Dayton","Dean","Deangelo","Deanna","Deborah","Declan","Dedric","Dedrick","Dee","Deion","Deja","Dejah","Dejon","Dejuan","Delaney","Delbert","Delfina","Delia","Delilah","Dell","Della","Delmer","Delores","Delpha","Delphia","Delphine","Delta","Demarco","Demarcus","Demario","Demetris","Demetrius","Demond","Dena","Denis","Dennis","Deon","Deondre","Deontae","Deonte","Dereck","Derek","Derick","Deron","Derrick","Deshaun","Deshawn","Desiree","Desmond","Dessie","Destany","Destin","Destinee","Destiney","Destini","Destiny","Devan","Devante","Deven","Devin","Devon","Devonte","Devyn","Dewayne","Dewitt","Dexter","Diamond","Diana","Dianna","Diego","Dillan","Dillon","Dimitri","Dina","Dino","Dion","Dixie","Dock","Dolly","Dolores","Domenic","Domenica","Domenick","Domenico","Domingo","Dominic","Dominique","Don","Donald","Donato","Donavon","Donna","Donnell","Donnie","Donny","Dora","Dorcas","Dorian","Doris","Dorothea","Dorothy","Dorris","Dortha","Dorthy","Doug","Douglas","Dovie","Doyle","Drake","Drew","Duane","Dudley","Dulce","Duncan","Durward","Dustin","Dusty","Dwight","Dylan","Earl","Earlene","Earline","Earnest","Earnestine","Easter","Easton","Ebba","Ebony","Ed","Eda","Edd","Eddie","Eden","Edgar","Edgardo","Edison","Edmond","Edmund","Edna","Eduardo","Edward","Edwardo","Edwin","Edwina","Edyth","Edythe","Effie","Efrain","Efren","Eileen","Einar","Eino","Eladio","Elaina","Elbert","Elda","Eldon","Eldora","Eldred","Eldridge","Eleanora","Eleanore","Eleazar","Electa","Elena","Elenor","Elenora","Eleonore","Elfrieda","Eli","Elian","Eliane","Elias","Eliezer","Elijah","Elinor","Elinore","Elisa","Elisabeth","Elise","Eliseo","Elisha","Elissa","Eliza","Elizabeth","Ella","Ellen","Ellie","Elliot","Elliott","Ellis","Ellsworth","Elmer","Elmira","Elmo","Elmore","Elna","Elnora","Elody","Eloisa","Eloise","Elouise","Eloy","Elroy","Elsa","Else","Elsie","Elta","Elton","Elva","Elvera","Elvie","Elvis","Elwin","Elwyn","Elyse","Elyssa","Elza","Emanuel","Emelia","Emelie","Emely","Emerald","Emerson","Emery","Emie","Emil","Emile","Emilia","Emiliano","Emilie","Emilio","Emily","Emma","Emmalee","Emmanuel","Emmanuelle","Emmet","Emmett","Emmie","Emmitt","Emmy","Emory","Ena","Enid","Enoch","Enola","Enos","Enrico","Enrique","Ephraim","Era","Eriberto","Eric","Erica","Erich","Erick","Ericka","Erik","Erika","Erin","Erling","Erna","Ernest","Ernestina","Ernestine","Ernesto","Ernie","Ervin","Erwin","Eryn","Esmeralda","Esperanza","Esta","Esteban","Estefania","Estel","Estell","Estella","Estelle","Estevan","Esther","Estrella","Etha","Ethan","Ethel","Ethelyn","Ethyl","Ettie","Eudora","Eugene","Eugenia","Eula","Eulah","Eulalia","Euna","Eunice","Eusebio","Eva","Evalyn","Evan","Evangeline","Evans","Eve","Eveline","Evelyn","Everardo","Everett","Everette","Evert","Evie","Ewald","Ewell","Ezekiel","Ezequiel","Ezra","Fabian","Fabiola","Fae","Fannie","Fanny","Fatima","Faustino","Fausto","Favian","Fay","Faye","Federico","Felicia","Felicita","Felicity","Felipa","Felipe","Felix","Felton","Fermin","Fern","Fernando","Ferne","Fidel","Filiberto","Filomena","Finn","Fiona","Flavie","Flavio","Fleta","Fletcher","Flo","Florence","Florencio","Florian","Florida","Florine","Flossie","Floy","Floyd","Ford","Forest","Forrest","Foster","Frances","Francesca","Francesco","Francis","Francisca","Francisco","Franco","Frank","Frankie","Franz","Fred","Freda","Freddie","Freddy","Frederic","Frederick","Frederik","Frederique","Fredrick","Fredy","Freeda","Freeman","Freida","Frida","Frieda","Friedrich","Fritz","Furman","Gabe","Gabriel","Gabriella","Gabrielle","Gaetano","Gage","Gail","Gardner","Garett","Garfield","Garland","Garnet","Garnett","Garret","Garrett","Garrick","Garrison","Garry","Garth","Gaston","Gavin","Gayle","Gene","General","Genesis","Genevieve","Gennaro","Genoveva","Geo","Geoffrey","George","Georgette","Georgiana","Georgianna","Geovanni","Geovanny","Geovany","Gerald","Geraldine","Gerard","Gerardo","Gerda","Gerhard","Germaine","German","Gerry","Gerson","Gertrude","Gia","Gianni","Gideon","Gilbert","Gilberto","Gilda","Giles","Gillian","Gina","Gino","Giovani","Giovanna","Giovanni","Giovanny","Gisselle","Giuseppe","Gladyce","Gladys","Glen","Glenda","Glenna","Glennie","Gloria","Godfrey","Golda","Golden","Gonzalo","Gordon","Grace","Gracie","Graciela","Grady","Graham","Grant","Granville","Grayce","Grayson","Green","Greg","Gregg","Gregoria","Gregorio","Gregory","Greta","Gretchen","Greyson","Griffin","Grover","Guadalupe","Gudrun","Guido","Guillermo","Guiseppe","Gunnar","Gunner","Gus","Gussie","Gust","Gustave","Guy","Gwen","Gwendolyn","Hadley","Hailee","Hailey","Hailie","Hal","Haleigh","Haley","Halie","Halle","Hallie","Hank","Hanna","Hannah","Hans","Hardy","Harley","Harmon","Harmony","Harold","Harrison","Harry","Harvey","Haskell","Hassan","Hassie","Hattie","Haven","Hayden","Haylee","Hayley","Haylie","Hazel","Hazle","Heath","Heather","Heaven","Heber","Hector","Heidi","Helen","Helena","Helene","Helga","Hellen","Helmer","Heloise","Henderson","Henri","Henriette","Henry","Herbert","Herman","Hermann","Hermina","Herminia","Herminio","Hershel","Herta","Hertha","Hester","Hettie","Hilario","Hilbert","Hilda","Hildegard","Hillard","Hillary","Hilma","Hilton","Hipolito","Hiram","Hobart","Holden","Hollie","Hollis","Holly","Hope","Horace","Horacio","Hortense","Hosea","Houston","Howard","Howell","Hoyt","Hubert","Hudson","Hugh","Hulda","Humberto","Hunter","Hyman","Ian","Ibrahim","Icie","Ida","Idell","Idella","Ignacio","Ignatius","Ike","Ila","Ilene","Iliana","Ima","Imani","Imelda","Immanuel","Imogene","Ines","Irma","Irving","Irwin","Isaac","Isabel","Isabell","Isabella","Isabelle","Isac","Isadore","Isai","Isaiah","Isaias","Isidro","Ismael","Isobel","Isom","Israel","Issac","Itzel","Iva","Ivah","Ivory","Ivy","Izabella","Izaiah","Jabari","Jace","Jacey","Jacinthe","Jacinto","Jack","Jackeline","Jackie","Jacklyn","Jackson","Jacky","Jaclyn","Jacquelyn","Jacques","Jacynthe","Jada","Jade","Jaden","Jadon","Jadyn","Jaeden","Jaida","Jaiden","Jailyn","Jaime","Jairo","Jakayla","Jake","Jakob","Jaleel","Jalen","Jalon","Jalyn","Jamaal","Jamal","Jamar","Jamarcus","Jamel","Jameson","Jamey","Jamie","Jamil","Jamir","Jamison","Jammie","Jan","Jana","Janae","Jane","Janelle","Janessa","Janet","Janice","Janick","Janie","Janis","Janiya","Jannie","Jany","Jaquan","Jaquelin","Jaqueline","Jared","Jaren","Jarod","Jaron","Jarred","Jarrell","Jarret","Jarrett","Jarrod","Jarvis","Jasen","Jasmin","Jason","Jasper","Jaunita","Javier","Javon","Javonte","Jay","Jayce","Jaycee","Jayda","Jayde","Jayden","Jaydon","Jaylan","Jaylen","Jaylin","Jaylon","Jayme","Jayne","Jayson","Jazlyn","Jazmin","Jazmyn","Jazmyne","Jean","Jeanette","Jeanie","Jeanne","Jed","Jedediah","Jedidiah","Jeff","Jefferey","Jeffery","Jeffrey","Jeffry","Jena","Jenifer","Jennie","Jennifer","Jennings","Jennyfer","Jensen","Jerad","Jerald","Jeramie","Jeramy","Jerel","Jeremie","Jeremy","Jermain","Jermaine","Jermey","Jerod","Jerome","Jeromy","Jerrell","Jerrod","Jerrold","Jerry","Jess","Jesse","Jessica","Jessie","Jessika","Jessy","Jessyca","Jesus","Jett","Jettie","Jevon","Jewel","Jewell","Jillian","Jimmie","Jimmy","Jo","Joan","Joana","Joanie","Joanne","Joannie","Joanny","Joany","Joaquin","Jocelyn","Jodie","Jody","Joe","Joel","Joelle","Joesph","Joey","Johan","Johann","Johanna","Johathan","John","Johnathan","Johnathon","Johnnie","Johnny","Johnpaul","Johnson","Jolie","Jon","Jonas","Jonatan","Jonathan","Jonathon","Jordan","Jordane","Jordi","Jordon","Jordy","Jordyn","Jorge","Jose","Josefa","Josefina","Joseph","Josephine","Josh","Joshua","Joshuah","Josiah","Josiane","Josianne","Josie","Josue","Jovan","Jovani","Jovanny","Jovany","Joy","Joyce","Juana","Juanita","Judah","Judd","Jude","Judge","Judson","Judy","Jules","Julia","Julian","Juliana","Julianne","Julie","Julien","Juliet","Julio","Julius","June","Junior","Junius","Justen","Justice","Justina","Justine","Juston","Justus","Justyn","Juvenal","Juwan","Kacey","Kaci","Kacie","Kade","Kaden","Kadin","Kaela","Kaelyn","Kaia","Kailee","Kailey","Kailyn","Kaitlin","Kaitlyn","Kale","Kaleb","Kaleigh","Kaley","Kali","Kallie","Kameron","Kamille","Kamren","Kamron","Kamryn","Kane","Kara","Kareem","Karelle","Karen","Kari","Kariane","Karianne","Karina","Karine","Karl","Karlee","Karley","Karli","Karlie","Karolann","Karson","Kasandra","Kasey","Kassandra","Katarina","Katelin","Katelyn","Katelynn","Katharina","Katherine","Katheryn","Kathleen","Kathlyn","Kathryn","Kathryne","Katlyn","Katlynn","Katrina","Katrine","Kattie","Kavon","Kay","Kaya","Kaycee","Kayden","Kayla","Kaylah","Kaylee","Kayleigh","Kayley","Kayli","Kaylie","Kaylin","Keagan","Keanu","Keara","Keaton","Keegan","Keeley","Keely","Keenan","Keira","Keith","Kellen","Kelley","Kelli","Kellie","Kelly","Kelsi","Kelsie","Kelton","Kelvin","Ken","Kendall","Kendra","Kendrick","Kenna","Kennedi","Kennedy","Kenneth","Kennith","Kenny","Kenton","Kenya","Kenyatta","Kenyon","Keon","Keshaun","Keshawn","Keven","Kevin","Kevon","Keyon","Keyshawn","Khalid","Khalil","Kian","Kiana","Kianna","Kiara","Kiarra","Kiel","Kiera","Kieran","Kiley","Kim","Kimberly","King","Kip","Kira","Kirk","Kirsten","Kirstin","Kitty","Kobe","Koby","Kody","Kolby","Kole","Korbin","Korey","Kory","Kraig","Kris","Krista","Kristian","Kristin","Kristina","Kristofer","Kristoffer","Kristopher","Kristy","Krystal","Krystel","Krystina","Kurt","Kurtis","Kyla","Kyle","Kylee","Kyleigh","Kyler","Kylie","Kyra","Lacey","Lacy","Ladarius","Lafayette","Laila","Laisha","Lamar","Lambert","Lamont","Lance","Landen","Lane","Laney","Larissa","Laron","Larry","Larue","Laura","Laurel","Lauren","Laurence","Lauretta","Lauriane","Laurianne","Laurie","Laurine","Laury","Lauryn","Lavada","Lavern","Laverna","Laverne","Lavina","Lavinia","Lavon","Lavonne","Lawrence","Lawson","Layla","Layne","Lazaro","Lea","Leann","Leanna","Leanne","Leatha","Leda","Lee","Leif","Leila","Leilani","Lela","Lelah","Leland","Lelia","Lempi","Lemuel","Lenna","Lennie","Lenny","Lenora","Lenore","Leo","Leola","Leon","Leonard","Leonardo","Leone","Leonel","Leonie","Leonor","Leonora","Leopold","Leopoldo","Leora","Lera","Lesley","Leslie","Lesly","Lessie","Lester","Leta","Letha","Letitia","Levi","Lew","Lewis","Lexi","Lexie","Lexus","Lia","Liam","Liana","Libbie","Libby","Lila","Lilian","Liliana","Liliane","Lilla","Lillian","Lilliana","Lillie","Lilly","Lily","Lilyan","Lina","Lincoln","Linda","Lindsay","Lindsey","Linnea","Linnie","Linwood","Lionel","Lisa","Lisandro","Lisette","Litzy","Liza","Lizeth","Lizzie","Llewellyn","Lloyd","Logan","Lois","Lola","Lolita","Loma","Lon","London","Lonie","Lonnie","Lonny","Lonzo","Lora","Loraine","Loren","Lorena","Lorenz","Lorenza","Lorenzo","Lori","Lorine","Lorna","Lottie","Lou","Louie","Louisa","Lourdes","Louvenia","Lowell","Loy","Loyal","Loyce","Lucas","Luciano","Lucie","Lucienne","Lucile","Lucinda","Lucio","Lucious","Lucius","Lucy","Ludie","Ludwig","Lue","Luella","Luigi","Luis","Luisa","Lukas","Lula","Lulu","Luna","Lupe","Lura","Lurline","Luther","Luz","Lyda","Lydia","Lyla","Lynn","Lyric","Lysanne","Mabel","Mabelle","Mable","Mac","Macey","Maci","Macie","Mack","Mackenzie","Macy","Madaline","Madalyn","Maddison","Madeline","Madelyn","Madelynn","Madge","Madie","Madilyn","Madisen","Madison","Madisyn","Madonna","Madyson","Mae","Maegan","Maeve","Mafalda","Magali","Magdalen","Magdalena","Maggie","Magnolia","Magnus","Maia","Maida","Maiya","Major","Makayla","Makenna","Makenzie","Malachi","Malcolm","Malika","Malinda","Mallie","Mallory","Malvina","Mandy","Manley","Manuel","Manuela","Mara","Marc","Marcel","Marcelina","Marcelino","Marcella","Marcelle","Marcellus","Marcelo","Marcia","Marco","Marcos","Marcus","Margaret","Margarete","Margarett","Margaretta","Margarette","Margarita","Marge","Margie","Margot","Margret","Marguerite","Maria","Mariah","Mariam","Marian","Mariana","Mariane","Marianna","Marianne","Mariano","Maribel","Marie","Mariela","Marielle","Marietta","Marilie","Marilou","Marilyne","Marina","Mario","Marion","Marisa","Marisol","Maritza","Marjolaine","Marjorie","Marjory","Mark","Markus","Marlee","Marlen","Marlene","Marley","Marlin","Marlon","Marques","Marquis","Marquise","Marshall","Marta","Martin","Martina","Martine","Marty","Marvin","Mary","Maryam","Maryjane","Maryse","Mason","Mateo","Mathew","Mathias","Mathilde","Matilda","Matilde","Matt","Matteo","Mattie","Maud","Maude","Maudie","Maureen","Maurice","Mauricio","Maurine","Maverick","Mavis","Max","Maxie","Maxime","Maximilian","Maximillia","Maximillian","Maximo","Maximus","Maxine","Maxwell","May","Maya","Maybell","Maybelle","Maye","Maymie","Maynard","Mayra","Mazie","Mckayla","Mckenna","Mckenzie","Meagan","Meaghan","Meda","Megane","Meggie","Meghan","Mekhi","Melany","Melba","Melisa","Melissa","Mellie","Melody","Melvin","Melvina","Melyna","Melyssa","Mercedes","Meredith","Merl","Merle","Merlin","Merritt","Mertie","Mervin","Meta","Mia","Micaela","Micah","Michael","Michaela","Michale","Micheal","Michel","Michele","Michelle","Miguel","Mikayla","Mike","Mikel","Milan","Miles","Milford","Miller","Millie","Milo","Milton","Mina","Minerva","Minnie","Miracle","Mireille","Mireya","Misael","Missouri","Misty","Mitchel","Mitchell","Mittie","Modesta","Modesto","Mohamed","Mohammad","Mohammed","Moises","Mollie","Molly","Mona","Monica","Monique","Monroe","Monserrat","Monserrate","Montana","Monte","Monty","Morgan","Moriah","Morris","Mortimer","Morton","Mose","Moses","Moshe","Mossie","Mozell","Mozelle","Muhammad","Muriel","Murl","Murphy","Murray","Mustafa","Mya","Myah","Mylene","Myles","Myra","Myriam","Myrl","Myrna","Myron","Myrtice","Myrtie","Myrtis","Myrtle","Nadia","Nakia","Name","Nannie","Naomi","Naomie","Napoleon","Narciso","Nash","Nasir","Nat","Natalia","Natalie","Natasha","Nathan","Nathanael","Nathanial","Nathaniel","Nathen","Nayeli","Neal","Ned","Nedra","Neha","Neil","Nelda","Nella","Nelle","Nellie","Nels","Nelson","Neoma","Nestor","Nettie","Neva","Newell","Newton","Nia","Nicholas","Nicholaus","Nichole","Nick","Nicklaus","Nickolas","Nico","Nicola","Nicolas","Nicole","Nicolette","Nigel","Nikita","Nikki","Nikko","Niko","Nikolas","Nils","Nina","Noah","Noble","Noe","Noel","Noelia","Noemi","Noemie","Noemy","Nola","Nolan","Nona","Nora","Norbert","Norberto","Norene","Norma","Norris","Norval","Norwood","Nova","Novella","Nya","Nyah","Nyasia","Obie","Oceane","Ocie","Octavia","Oda","Odell","Odessa","Odie","Ofelia","Okey","Ola","Olaf","Ole","Olen","Oleta","Olga","Olin","Oliver","Ollie","Oma","Omari","Omer","Ona","Onie","Opal","Ophelia","Ora","Oral","Oran","Oren","Orie","Orin","Orion","Orland","Orlando","Orlo","Orpha","Orrin","Orval","Orville","Osbaldo","Osborne","Oscar","Osvaldo","Oswald","Oswaldo","Otha","Otho","Otilia","Otis","Ottilie","Ottis","Otto","Ova","Owen","Ozella","Pablo","Paige","Palma","Pamela","Pansy","Paolo","Paris","Parker","Pascale","Pasquale","Pat","Patience","Patricia","Patrick","Patsy","Pattie","Paul","Paula","Pauline","Paxton","Payton","Pearl","Pearlie","Pearline","Pedro","Peggie","Penelope","Percival","Percy","Perry","Pete","Peter","Petra","Peyton","Philip","Phoebe","Phyllis","Pierce","Pierre","Pietro","Pink","Pinkie","Piper","Polly","Porter","Precious","Presley","Preston","Price","Prince","Princess","Priscilla","Providenci","Prudence","Queen","Queenie","Quentin","Quincy","Quinn","Quinten","Quinton","Rachael","Rachel","Rachelle","Rae","Raegan","Rafael","Rafaela","Raheem","Rahsaan","Rahul","Raina","Raleigh","Ralph","Ramiro","Ramon","Ramona","Randal","Randall","Randi","Randy","Ransom","Raoul","Raphael","Raphaelle","Raquel","Rashad","Rashawn","Rasheed","Raul","Raven","Ray","Raymond","Raymundo","Reagan","Reanna","Reba","Rebeca","Rebecca","Rebeka","Rebekah","Reece","Reed","Reese","Regan","Reggie","Reginald","Reid","Reilly","Reina","Reinhold","Remington","Rene","Renee","Ressie","Reta","Retha","Retta","Reuben","Reva","Rex","Rey","Reyes","Reymundo","Reyna","Reynold","Rhea","Rhett","Rhianna","Rhiannon","Rhoda","Ricardo","Richard","Richie","Richmond","Rick","Rickey","Rickie","Ricky","Rico","Rigoberto","Riley","Rita","River","Robb","Robbie","Robert","Roberta","Roberto","Robin","Robyn","Rocio","Rocky","Rod","Roderick","Rodger","Rodolfo","Rodrick","Rodrigo","Roel","Rogelio","Roger","Rogers","Rolando","Rollin","Roma","Romaine","Roman","Ron","Ronaldo","Ronny","Roosevelt","Rory","Rosa","Rosalee","Rosalia","Rosalind","Rosalinda","Rosalyn","Rosamond","Rosanna","Rosario","Roscoe","Rose","Rosella","Roselyn","Rosemarie","Rosemary","Rosendo","Rosetta","Rosie","Rosina","Roslyn","Ross","Rossie","Rowan","Rowena","Rowland","Roxane","Roxanne","Roy","Royal","Royce","Rozella","Ruben","Rubie","Ruby","Rubye","Rudolph","Rudy","Rupert","Russ","Russel","Russell","Rusty","Ruth","Ruthe","Ruthie","Ryan","Ryann","Ryder","Rylan","Rylee","Ryleigh","Ryley","Sabina","Sabrina","Sabryna","Sadie","Sadye","Sage","Saige","Sallie","Sally","Salma","Salvador","Salvatore","Sam","Samanta","Samantha","Samara","Samir","Sammie","Sammy","Samson","Sandra","Sandrine","Sandy","Sanford","Santa","Santiago","Santina","Santino","Santos","Sarah","Sarai","Sarina","Sasha","Saul","Savanah","Savanna","Savannah","Savion","Scarlett","Schuyler","Scot","Scottie","Scotty","Seamus","Sean","Sebastian","Sedrick","Selena","Selina","Selmer","Serena","Serenity","Seth","Shad","Shaina","Shakira","Shana","Shane","Shanel","Shanelle","Shania","Shanie","Shaniya","Shanna","Shannon","Shanny","Shanon","Shany","Sharon","Shaun","Shawn","Shawna","Shaylee","Shayna","Shayne","Shea","Sheila","Sheldon","Shemar","Sheridan","Sherman","Sherwood","Shirley","Shyann","Shyanne","Sibyl","Sid","Sidney","Sienna","Sierra","Sigmund","Sigrid","Sigurd","Silas","Sim","Simeon","Simone","Sincere","Sister","Skye","Skyla","Skylar","Sofia","Soledad","Solon","Sonia","Sonny","Sonya","Sophia","Sophie","Spencer","Stacey","Stacy","Stan","Stanford","Stanley","Stanton","Stefan","Stefanie","Stella","Stephan","Stephania","Stephanie","Stephany","Stephen","Stephon","Sterling","Steve","Stevie","Stewart","Stone","Stuart","Summer","Sunny","Susan","Susana","Susanna","Susie","Suzanne","Sven","Syble","Sydnee","Sydney","Sydni","Sydnie","Sylvan","Sylvester","Sylvia","Tabitha","Tad","Talia","Talon","Tamara","Tamia","Tania","Tanner","Tanya","Tara","Taryn","Tate","Tatum","Tatyana","Taurean","Tavares","Taya","Taylor","Teagan","Ted","Telly","Terence","Teresa","Terrance","Terrell","Terrence","Terrill","Terry","Tess","Tessie","Tevin","Thad","Thaddeus","Thalia","Thea","Thelma","Theo","Theodora","Theodore","Theresa","Therese","Theresia","Theron","Thomas","Thora","Thurman","Tia","Tiana","Tianna","Tiara","Tierra","Tiffany","Tillman","Timmothy","Timmy","Timothy","Tina","Tito","Titus","Tobin","Toby","Tod","Tom","Tomas","Tomasa","Tommie","Toney","Toni","Tony","Torey","Torrance","Torrey","Toy","Trace","Tracey","Tracy","Travis","Travon","Tre","Tremaine","Tremayne","Trent","Trenton","Tressa","Tressie","Treva","Trever","Trevion","Trevor","Trey","Trinity","Trisha","Tristian","Tristin","Triston","Troy","Trudie","Trycia","Trystan","Turner","Twila","Tyler","Tyra","Tyree","Tyreek","Tyrel","Tyrell","Tyrese","Tyrique","Tyshawn","Tyson","Ubaldo","Ulices","Ulises","Una","Unique","Urban","Uriah","Uriel","Ursula","Vada","Valentin","Valentina","Valentine","Valerie","Vallie","Van","Vance","Vanessa","Vaughn","Veda","Velda","Vella","Velma","Velva","Vena","Verda","Verdie","Vergie","Verla","Verlie","Vern","Verna","Verner","Vernice","Vernie","Vernon","Verona","Veronica","Vesta","Vicenta","Vicente","Vickie","Vicky","Victor","Victoria","Vida","Vidal","Vilma","Vince","Vincent","Vincenza","Vincenzo","Vinnie","Viola","Violet","Violette","Virgie","Virgil","Virginia","Virginie","Vita","Vito","Viva","Vivian","Viviane","Vivianne","Vivien","Vivienne","Vladimir","Wade","Waino","Waldo","Walker","Wallace","Walter","Walton","Wanda","Ward","Warren","Watson","Wava","Waylon","Wayne","Webster","Weldon","Wellington","Wendell","Wendy","Werner","Westley","Weston","Whitney","Wilber","Wilbert","Wilburn","Wiley","Wilford","Wilfred","Wilfredo","Wilfrid","Wilhelm","Wilhelmine","Will","Willa","Willard","William","Willie","Willis","Willow","Willy","Wilma","Wilmer","Wilson","Wilton","Winfield","Winifred","Winnifred","Winona","Winston","Woodrow","Wyatt","Wyman","Xander","Xavier","Xzavier","Yadira","Yasmeen","Yasmin","Yasmine","Yazmin","Yesenia","Yessenia","Yolanda","Yoshiko","Yvette","Yvonne","Zachariah","Zachary","Zachery","Zack","Zackary","Zackery","Zakary","Zander","Zane","Zaria","Zechariah","Zelda","Zella","Zelma","Zena","Zetta","Zion","Zita","Zoe","Zoey","Zoie","Zoila","Zola","Zora","Zula"],female:["Mary","Patricia","Linda","Barbara","Elizabeth","Jennifer","Maria","Susan","Margaret","Dorothy","Lisa","Nancy","Karen","Betty","Helen","Sandra","Donna","Carol","Ruth","Sharon","Michelle","Laura","Sarah","Kimberly","Deborah","Jessica","Shirley","Cynthia","Angela","Melissa","Brenda","Amy","Anna","Rebecca","Virginia","Kathleen","Pamela","Martha","Debra","Amanda","Stephanie","Carolyn","Christine","Marie","Janet","Catherine","Frances","Ann","Joyce","Diane","Alice","Julie","Heather","Teresa","Doris","Gloria","Evelyn","Jean","Cheryl","Mildred","Katherine","Joan","Ashley","Judith","Rose","Janice","Kelly","Nicole","Judy","Christina","Kathy","Theresa","Beverly","Denise","Tammy","Irene","Jane","Lori","Rachel","Marilyn","Andrea","Kathryn","Louise","Sara","Anne","Jacqueline","Wanda","Bonnie","Julia","Ruby","Lois","Tina","Phyllis","Norma","Paula","Diana","Annie","Lillian","Emily","Robin","Peggy","Crystal","Gladys","Rita","Dawn","Connie","Florence","Tracy","Edna","Tiffany","Carmen","Rosa","Cindy","Grace","Wendy","Victoria","Edith","Kim","Sherry","Sylvia","Josephine","Thelma","Shannon","Sheila","Ethel","Ellen","Elaine","Marjorie","Carrie","Charlotte","Monica","Esther","Pauline","Emma","Juanita","Anita","Rhonda","Hazel","Amber","Eva","Debbie","April","Leslie","Clara","Lucille","Jamie","Joanne","Eleanor","Valerie","Danielle","Megan","Alicia","Suzanne","Michele","Gail","Bertha","Darlene","Veronica","Jill","Erin","Geraldine","Lauren","Cathy","Joann","Lorraine","Lynn","Sally","Regina","Erica","Beatrice","Dolores","Bernice","Audrey","Yvonne","Annette","June","Samantha","Marion","Dana","Stacy","Ana","Renee","Ida","Vivian","Roberta","Holly","Brittany","Melanie","Loretta","Yolanda","Jeanette","Laurie","Katie","Kristen","Vanessa","Alma","Sue","Elsie","Beth","Jeanne","Vicki","Carla","Tara","Rosemary","Eileen","Terri","Gertrude","Lucy","Tonya","Ella","Stacey","Wilma","Gina","Kristin","Jessie","Natalie","Agnes","Vera","Willie","Charlene","Bessie","Delores","Melinda","Pearl","Arlene","Maureen","Colleen","Allison","Tamara","Joy","Georgia","Constance","Lillie","Claudia","Jackie","Marcia","Tanya","Nellie","Minnie","Marlene","Heidi","Glenda","Lydia","Viola","Courtney","Marian","Stella","Caroline","Dora","Jo","Vickie","Mattie","Terry","Maxine","Irma","Mabel","Marsha","Myrtle","Lena","Christy","Deanna","Patsy","Hilda","Gwendolyn","Jennie","Nora","Margie","Nina","Cassandra","Leah","Penny","Kay","Priscilla","Naomi","Carole","Brandy","Olga","Billie","Dianne","Tracey","Leona","Jenny","Felicia","Sonia","Miriam","Velma","Becky","Bobbie","Violet","Kristina","Toni","Misty","Mae","Shelly","Daisy","Ramona","Sherri","Erika","Katrina","Claire","Lindsey","Lindsay","Geneva","Guadalupe","Belinda","Margarita","Sheryl","Cora","Faye","Ada","Natasha","Sabrina","Isabel","Marguerite","Hattie","Harriet","Molly","Cecilia","Kristi","Brandi","Blanche","Sandy","Rosie","Joanna","Iris","Eunice","Angie","Inez","Lynda","Madeline","Amelia","Alberta","Genevieve","Monique","Jodi","Janie","Maggie","Kayla","Sonya","Jan","Lee","Kristine","Candace","Fannie","Maryann","Opal","Alison","Yvette","Melody","Luz","Susie","Olivia","Flora","Shelley","Kristy","Mamie","Lula","Lola","Verna","Beulah","Antoinette","Candice","Juana","Jeannette","Pam","Kelli","Hannah","Whitney","Bridget","Karla","Celia","Latoya","Patty","Shelia","Gayle","Della","Vicky","Lynne","Sheri","Marianne","Kara","Jacquelyn","Erma","Blanca","Myra","Leticia","Pat","Krista","Roxanne","Angelica","Johnnie","Robyn","Francis","Adrienne","Rosalie","Alexandra","Brooke","Bethany","Sadie","Bernadette","Traci","Jody","Kendra","Jasmine","Nichole","Rachael","Chelsea","Mable","Ernestine","Muriel","Marcella","Elena","Krystal","Angelina","Nadine","Kari","Estelle","Dianna","Paulette","Lora","Mona","Doreen","Rosemarie","Angel","Desiree","Antonia","Hope","Ginger","Janis","Betsy","Christie","Freda","Mercedes","Meredith","Lynette","Teri","Cristina","Eula","Leigh","Meghan","Sophia","Eloise","Rochelle","Gretchen","Cecelia","Raquel","Henrietta","Alyssa","Jana","Kelley","Gwen","Kerry","Jenna","Tricia","Laverne","Olive","Alexis","Tasha","Silvia","Elvira","Casey","Delia","Sophie","Kate","Patti","Lorena","Kellie","Sonja","Lila","Lana","Darla","May","Mindy","Essie","Mandy","Lorene","Elsa","Josefina","Jeannie","Miranda","Dixie","Lucia","Marta","Faith","Lela","Johanna","Shari","Camille","Tami","Shawna","Elisa","Ebony","Melba","Ora","Nettie","Tabitha","Ollie","Jaime","Winifred","Kristie"],male:["James","John","Robert","Michael","William","David","Richard","Charles","Joseph","Thomas","Christopher","Daniel","Paul","Mark","Donald","George","Kenneth","Steven","Edward","Brian","Ronald","Anthony","Kevin","Jason","Matthew","Gary","Timothy","Jose","Larry","Jeffrey","Frank","Scott","Eric","Stephen","Andrew","Raymond","Gregory","Joshua","Jerry","Dennis","Walter","Patrick","Peter","Harold","Douglas","Henry","Carl","Arthur","Ryan","Roger","Joe","Juan","Jack","Albert","Jonathan","Justin","Terry","Gerald","Keith","Samuel","Willie","Ralph","Lawrence","Nicholas","Roy","Benjamin","Bruce","Brandon","Adam","Harry","Fred","Wayne","Billy","Steve","Louis","Jeremy","Aaron","Randy","Howard","Eugene","Carlos","Russell","Bobby","Victor","Martin","Ernest","Phillip","Todd","Jesse","Craig","Alan","Shawn","Clarence","Sean","Philip","Chris","Johnny","Earl","Jimmy","Antonio","Danny","Bryan","Tony","Luis","Mike","Stanley","Leonard","Nathan","Dale","Manuel","Rodney","Curtis","Norman","Allen","Marvin","Vincent","Glenn","Jeffery","Travis","Jeff","Chad","Jacob","Lee","Melvin","Alfred","Kyle","Francis","Bradley","Jesus","Herbert","Frederick","Ray","Joel","Edwin","Don","Eddie","Ricky","Troy","Randall","Barry","Alexander","Bernard","Mario","Leroy","Francisco","Marcus","Micheal","Theodore","Clifford","Miguel","Oscar","Jay","Jim","Tom","Calvin","Alex","Jon","Ronnie","Bill","Lloyd","Tommy","Leon","Derek","Warren","Darrell","Jerome","Floyd","Leo","Alvin","Tim","Wesley","Gordon","Dean","Greg","Jorge","Dustin","Pedro","Derrick","Dan","Lewis","Zachary","Corey","Herman","Maurice","Vernon","Roberto","Clyde","Glen","Hector","Shane","Ricardo","Sam","Rick","Lester","Brent","Ramon","Charlie","Tyler","Gilbert","Gene","Marc","Reginald","Ruben","Brett","Angel","Nathaniel","Rafael","Leslie","Edgar","Milton","Raul","Ben","Chester","Cecil","Duane","Franklin","Andre","Elmer","Brad","Gabriel","Ron","Mitchell","Roland","Arnold","Harvey","Jared","Adrian","Karl","Cory","Claude","Erik","Darryl","Jamie","Neil","Jessie","Christian","Javier","Fernando","Clinton","Ted","Mathew","Tyrone","Darren","Lonnie","Lance","Cody","Julio","Kelly","Kurt","Allan","Nelson","Guy","Clayton","Hugh","Max","Dwayne","Dwight","Armando","Felix","Jimmie","Everett","Jordan","Ian","Wallace","Ken","Bob","Jaime","Casey","Alfredo","Alberto","Dave","Ivan","Johnnie","Sidney","Byron","Julian","Isaac","Morris","Clifton","Willard","Daryl","Ross","Virgil","Andy","Marshall","Salvador","Perry","Kirk","Sergio","Marion","Tracy","Seth","Kent","Terrance","Rene","Eduardo","Terrence","Enrique","Freddie","Wade","Austin","Stuart","Fredrick","Arturo","Alejandro","Jackie","Joey","Nick","Luther","Wendell","Jeremiah","Evan","Julius","Dana","Donnie","Otis","Shannon","Trevor","Oliver","Luke","Homer","Gerard","Doug","Kenny","Hubert","Angelo","Shaun","Lyle","Matt","Lynn","Alfonso","Orlando","Rex","Carlton","Ernesto","Cameron","Neal","Pablo","Lorenzo","Omar","Wilbur","Blake","Grant","Horace","Roderick","Kerry","Abraham","Willis","Rickey","Jean","Ira","Andres","Cesar","Johnathan","Malcolm","Rudolph","Damon","Kelvin","Rudy","Preston","Alton","Archie","Marco","Wm","Pete","Randolph","Garry","Geoffrey","Jonathon","Felipe","Bennie","Gerardo","Ed","Dominic","Robin","Loren","Delbert","Colin","Guillermo","Earnest","Lucas","Benny","Noel","Spencer","Rodolfo","Myron","Edmund","Garrett","Salvatore","Cedric","Lowell","Gregg","Sherman","Wilson","Devin","Sylvester","Kim","Roosevelt","Israel","Jermaine","Forrest","Wilbert","Leland","Simon","Guadalupe","Clark","Irving","Carroll","Bryant","Owen","Rufus","Woodrow","Sammy","Kristopher","Mack","Levi","Marcos","Gustavo","Jake","Lionel","Marty","Taylor","Ellis","Dallas","Gilberto","Clint","Nicolas","Laurence","Ismael","Orville","Drew","Jody","Ervin","Dewey","Al","Wilfred","Josh","Hugo","Ignacio","Caleb","Tomas","Sheldon","Erick","Frankie","Stewart","Doyle","Darrel","Rogelio","Terence","Santiago","Alonzo","Elias","Bert","Elbert","Ramiro","Conrad","Pat","Noah","Grady","Phil","Cornelius","Lamar","Rolando","Clay","Percy","Dexter","Bradford","Merle","Darin","Amos","Terrell","Moses","Irvin","Saul","Roman","Darnell","Randal","Tommie","Timmy","Darrin","Winston","Brendan","Toby","Van","Abel","Dominick","Boyd","Courtney","Jan","Emilio","Elijah","Cary","Domingo","Santos","Aubrey","Emmett","Marlon","Emanuel","Jerald","Edmond"]},gender:["Agender","Androgyne","Androgynous","Bigender","Cis female","Cis male","Cis man","Cis woman","Cis","Cisgender female","Cisgender male","Cisgender man","Cisgender woman","Cisgender","Demi-boy","Demi-girl","Demi-man","Demi-woman","Demiflux","Demigender","F2M","FTM","Female to male trans man","Female to male transgender man","Female to male transsexual man","Female to male","Gender fluid","Gender neutral","Gender nonconforming","Gender questioning","Gender variant","Genderflux","Genderqueer","Hermaphrodite","Intersex man","Intersex person","Intersex woman","Intersex","M2F","MTF","Male to female trans woman","Male to female transgender woman","Male to female transsexual woman","Male to female","Man","Multigender","Neither","Neutrois","Non-binary","Omnigender","Other","Pangender","Polygender","T* man","T* woman","Trans female","Trans male","Trans man","Trans person","Trans woman","Trans","Transsexual female","Transsexual male","Transsexual man","Transsexual person","Transsexual woman","Transsexual","Transgender female","Transgender person","Transmasculine","Trigender","Two* person","Two-spirit person","Two-spirit","Woman","Xenogender"],job_area:["Solutions","Program","Brand","Security","Research","Marketing","Directives","Implementation","Integration","Functionality","Response","Paradigm","Tactics","Identity","Markets","Group","Division","Applications","Optimization","Operations","Infrastructure","Intranet","Communications","Web","Branding","Quality","Assurance","Mobility","Accounts","Data","Creative","Configuration","Accountability","Interactions","Factors","Usability","Metrics"],job_descriptor:["Lead","Senior","Direct","Corporate","Dynamic","Future","Product","National","Regional","District","Central","Global","Customer","Investor","International","Legacy","Forward","Internal","Human","Chief","Principal"],job_title_pattern:["{{person.jobDescriptor}} {{person.jobArea}} {{person.jobType}}"],job_type:["Supervisor","Associate","Executive","Liaison","Officer","Manager","Engineer","Specialist","Director","Coordinator","Administrator","Architect","Analyst","Designer","Planner","Orchestrator","Technician","Developer","Producer","Consultant","Assistant","Facilitator","Agent","Representative","Strategist"],last_name:{generic:["Abbott","Abernathy","Abshire","Adams","Altenwerth","Anderson","Ankunding","Armstrong","Auer","Aufderhar","Bahringer","Bailey","Balistreri","Barrows","Bartell","Bartoletti","Barton","Bashirian","Batz","Bauch","Baumbach","Bayer","Beahan","Beatty","Bechtelar","Becker","Bednar","Beer","Beier","Berge","Bergnaum","Bergstrom","Bernhard","Bernier","Bins","Blanda","Blick","Block","Bode","Boehm","Bogan","Bogisich","Borer","Bosco","Botsford","Boyer","Boyle","Bradtke","Brakus","Braun","Breitenberg","Brekke","Brown","Bruen","Buckridge","Carroll","Carter","Cartwright","Casper","Cassin","Champlin","Christiansen","Cole","Collier","Collins","Conn","Connelly","Conroy","Considine","Corkery","Cormier","Corwin","Cremin","Crist","Crona","Cronin","Crooks","Cruickshank","Cummerata","Cummings","Dach","D'Amore","Daniel","Dare","Daugherty","Davis","Deckow","Denesik","Dibbert","Dickens","Dicki","Dickinson","Dietrich","Donnelly","Dooley","Douglas","Doyle","DuBuque","Durgan","Ebert","Effertz","Emard","Emmerich","Erdman","Ernser","Fadel","Fahey","Farrell","Fay","Feeney","Feest","Feil","Ferry","Fisher","Flatley","Frami","Franecki","Franey","Friesen","Fritsch","Funk","Gerhold","Gerlach","Gibson","Gislason","Gleason","Gleichner","Glover","Goldner","Goodwin","Gorczany","Gottlieb","Goyette","Grady","Graham","Grant","Green","Greenfelder","Greenholt","Grimes","Gulgowski","Gusikowski","Gutkowski","Gutmann","Haag","Hackett","Hagenes","Hahn","Haley","Halvorson","Hamill","Hammes","Hand","Hane","Hansen","Harber","Harris","Hartmann","Harvey","Hauck","Hayes","Heaney","Heathcote","Hegmann","Heidenreich","Heller","Herman","Hermann","Hermiston","Herzog","Hessel","Hettinger","Hickle","Hilll","Hills","Hilpert","Hintz","Hirthe","Hodkiewicz","Hoeger","Homenick","Hoppe","Howe","Howell","Hudson","Huel","Huels","Hyatt","Jacobi","Jacobs","Jacobson","Jakubowski","Jaskolski","Jast","Jenkins","Jerde","Johns","Johnson","Johnston","Jones","Kassulke","Kautzer","Keebler","Keeling","Kemmer","Kerluke","Kertzmann","Kessler","Kiehn","Kihn","Kilback","King","Kirlin","Klein","Kling","Klocko","Koch","Koelpin","Koepp","Kohler","Konopelski","Koss","Kovacek","Kozey","Krajcik","Kreiger","Kris","Kshlerin","Kub","Kuhic","Kuhlman","Kuhn","Kulas","Kunde","Kunze","Kuphal","Kutch","Kuvalis","Labadie","Lakin","Lang","Langosh","Langworth","Larkin","Larson","Leannon","Lebsack","Ledner","Leffler","Legros","Lehner","Lemke","Lesch","Leuschke","Lind","Lindgren","Littel","Little","Lockman","Lowe","Lubowitz","Lueilwitz","Luettgen","Lynch","Macejkovic","MacGyver","Maggio","Mann","Mante","Marks","Marquardt","Marvin","Mayer","Mayert","McClure","McCullough","McDermott","McGlynn","McKenzie","McLaughlin","Medhurst","Mertz","Metz","Miller","Mills","Mitchell","Moen","Mohr","Monahan","Moore","Morar","Morissette","Mosciski","Mraz","Mueller","Muller","Murazik","Murphy","Murray","Nader","Nicolas","Nienow","Nikolaus","Nitzsche","Nolan","Oberbrunner","O'Connell","O'Conner","O'Hara","O'Keefe","O'Kon","Okuneva","Olson","Ondricka","O'Reilly","Orn","Ortiz","Osinski","Pacocha","Padberg","Pagac","Parisian","Parker","Paucek","Pfannerstill","Pfeffer","Pollich","Pouros","Powlowski","Predovic","Price","Prohaska","Prosacco","Purdy","Quigley","Quitzon","Rath","Ratke","Rau","Raynor","Reichel","Reichert","Reilly","Reinger","Rempel","Renner","Reynolds","Rice","Rippin","Ritchie","Robel","Roberts","Rodriguez","Rogahn","Rohan","Rolfson","Romaguera","Roob","Rosenbaum","Rowe","Ruecker","Runolfsdottir","Runolfsson","Runte","Russel","Rutherford","Ryan","Sanford","Satterfield","Sauer","Sawayn","Schaden","Schaefer","Schamberger","Schiller","Schimmel","Schinner","Schmeler","Schmidt","Schmitt","Schneider","Schoen","Schowalter","Schroeder","Schulist","Schultz","Schumm","Schuppe","Schuster","Senger","Shanahan","Shields","Simonis","Sipes","Skiles","Smith","Smitham","Spencer","Spinka","Sporer","Stamm","Stanton","Stark","Stehr","Steuber","Stiedemann","Stokes","Stoltenberg","Stracke","Streich","Stroman","Strosin","Swaniawski","Swift","Terry","Thiel","Thompson","Tillman","Torp","Torphy","Towne","Toy","Trantow","Tremblay","Treutel","Tromp","Turcotte","Turner","Ullrich","Upton","Vandervort","Veum","Volkman","Von","VonRueden","Waelchi","Walker","Walsh","Walter","Ward","Waters","Watsica","Weber","Wehner","Weimann","Weissnat","Welch","West","White","Wiegand","Wilderman","Wilkinson","Will","Williamson","Willms","Windler","Wintheiser","Wisoky","Wisozk","Witting","Wiza","Wolf","Wolff","Wuckert","Wunsch","Wyman","Yost","Yundt","Zboncak","Zemlak","Ziemann","Zieme","Zulauf"]},last_name_pattern:{generic:[{value:"{{person.last_name.generic}}",weight:95},{value:"{{person.last_name.generic}}-{{person.last_name.generic}}",weight:5}]},middle_name:{generic:["Addison","Alex","Anderson","Angel","Arden","August","Austin","Avery","Bailey","Billie","Blake","Bowie","Brooklyn","Cameron","Charlie","Corey","Dakota","Drew","Elliott","Ellis","Emerson","Finley","Gray","Greer","Harper","Hayden","Jaden","James","Jamie","Jordan","Jules","Kai","Kendall","Kennedy","Kyle","Leslie","Logan","London","Marlowe","Micah","Nico","Noah","North","Parker","Phoenix","Quinn","Reagan","Reese","Reign","Riley","River","Robin","Rory","Rowan","Ryan","Sage","Sasha","Sawyer","Shawn","Shiloh","Skyler","Taylor"],female:["Abigail","Adele","Alex","Alice","Alisha","Amber","Amelia","Amora","Anaïs","Angelou","Anika","Anise","Annabel","Anne","Aphrodite","Aretha","Arya","Ashton","Aster","Audrey","Avery","Bailee","Bay","Belle","Beth","Billie","Blair","Blaise","Blake","Blanche","Blue","Bree","Brielle","Brienne","Brooke","Caleen","Candice","Caprice","Carelyn","Caylen","Celine","Cerise","Cia","Claire","Claudia","Clementine","Coral","Coraline","Dahlia","Dakota","Dawn","Della","Demi","Denise","Denver","Devine","Devon","Diana","Dylan","Ebony","Eden","Eleanor","Elein","Elizabeth","Ellen","Elodie","Eloise","Ember","Emma","Erin","Eyre","Faith","Farrah","Fawn","Fayre","Fern","France","Francis","Frida","Genisis","Georgia","Grace","Gwen","Harley","Harper","Hazel","Helen","Hippolyta","Holly","Hope","Imani","Iowa","Ireland","Irene","Iris","Isa","Isla","Ivy","Jade","Jane","Jazz","Jean","Jess","Jett","Jo","Joan","Jolie","Jordan","Josie","Journey","Joy","Jules","Julien","Juliet","Juniper","Justice","Kali","Karma","Kat","Kate","Kennedy","Keva","Kylie","Lake","Lane","Lark","Layla","Lee","Leigh","Leona","Lexi","London","Lou","Louise","Love","Luna","Lux","Lynn","Lyric","Maddie","Mae","Marie","Matilda","Maude","Maybel","Meadow","Medusa","Mercy","Michelle","Mirabel","Monroe","Morgan","Nalia","Naomi","Nova","Olive","Paige","Parker","Pax","Pearl","Penelope","Phoenix","Quinn","Rae","Rain","Raven","Ray","Raye","Rebel","Reese","Reeve","Regan","Riley","River","Robin","Rory","Rose","Royal","Ruth","Rylie","Sage","Sam","Saturn","Scout","Serena","Sky","Skylar","Sofia","Sophia","Storm","Sue","Suzanne","Sydney","Taylen","Taylor","Teagan","Tempest","Tenley","Thea","Trinity","Valerie","Venus","Vera","Violet","Willow","Winter","Xena","Zaylee","Zion","Zoe"],male:["Ace","Aiden","Alexander","Ander","Anthony","Asher","August","Aziel","Bear","Beckham","Benjamin","Buddy","Calvin","Carter","Charles","Christopher","Clyde","Cooper","Daniel","David","Dior","Dylan","Elijah","Ellis","Emerson","Ethan","Ezra","Fletcher","Flynn","Gabriel","Grayson","Gus","Hank","Harrison","Hendrix","Henry","Houston","Hudson","Hugh","Isaac","Jack","Jackson","Jacob","Jakobe","James","Jaxon","Jaxtyn","Jayden","John","Joseph","Josiah","Jude","Julian","Karsyn","Kenji","Kobe","Kylo","Lennon","Leo","Levi","Liam","Lincoln","Logan","Louis","Lucas","Lucky","Luke","Mason","Mateo","Matthew","Maverick","Michael","Monroe","Nixon","Ocean","Oliver","Otis","Otto","Owen","Ozzy","Parker","Rocky","Samuel","Sebastian","Sonny","Teddy","Theo","Theodore","Thomas","Truett","Walter","Warren","Watson","William","Wison","Wyatt","Ziggy","Zyair"]},name:[{value:"{{person.firstName}} {{person.lastName}}",weight:49},{value:"{{person.prefix}} {{person.firstName}} {{person.lastName}}",weight:7},{value:"{{person.firstName}} {{person.lastName}} {{person.suffix}}",weight:7},{value:"{{person.prefix}} {{person.firstName}} {{person.lastName}} {{person.suffix}}",weight:1}],prefix:{generic:["Dr.","Miss","Mr.","Mrs.","Ms."],female:["Mrs.","Ms.","Miss","Dr."],male:["Mr.","Dr."]},sex:["female","male"],suffix:["Jr.","Sr.","I","II","III","IV","V","MD","DDS","PhD","DVM"],western_zodiac_sign:["Aquarius","Pisces","Aries","Taurus","Gemini","Cancer","Leo","Virgo","Libra","Scorpio","Sagittarius","Capricorn"]},phone_number:{format:{human:["!##-!##-####","(!##) !##-####","1-!##-!##-####","!##.!##.####","!##-!##-#### x###","(!##) !##-#### x###","1-!##-!##-#### x###","!##.!##.#### x###","!##-!##-#### x####","(!##) !##-#### x####","1-!##-!##-#### x####","!##.!##.#### x####","!##-!##-#### x#####","(!##) !##-#### x#####","1-!##-!##-#### x#####","!##.!##.#### x#####"],international:["+1!##!######"],national:["(!##) !##-####"]}},science:{chemical_element:[{symbol:"H",name:"Hydrogen",atomicNumber:1},{symbol:"He",name:"Helium",atomicNumber:2},{symbol:"Li",name:"Lithium",atomicNumber:3},{symbol:"Be",name:"Beryllium",atomicNumber:4},{symbol:"B",name:"Boron",atomicNumber:5},{symbol:"C",name:"Carbon",atomicNumber:6},{symbol:"N",name:"Nitrogen",atomicNumber:7},{symbol:"O",name:"Oxygen",atomicNumber:8},{symbol:"F",name:"Fluorine",atomicNumber:9},{symbol:"Ne",name:"Neon",atomicNumber:10},{symbol:"Na",name:"Sodium",atomicNumber:11},{symbol:"Mg",name:"Magnesium",atomicNumber:12},{symbol:"Al",name:"Aluminium",atomicNumber:13},{symbol:"Si",name:"Silicon",atomicNumber:14},{symbol:"P",name:"Phosphorus",atomicNumber:15},{symbol:"S",name:"Sulfur",atomicNumber:16},{symbol:"Cl",name:"Chlorine",atomicNumber:17},{symbol:"Ar",name:"Argon",atomicNumber:18},{symbol:"K",name:"Potassium",atomicNumber:19},{symbol:"Ca",name:"Calcium",atomicNumber:20},{symbol:"Sc",name:"Scandium",atomicNumber:21},{symbol:"Ti",name:"Titanium",atomicNumber:22},{symbol:"V",name:"Vanadium",atomicNumber:23},{symbol:"Cr",name:"Chromium",atomicNumber:24},{symbol:"Mn",name:"Manganese",atomicNumber:25},{symbol:"Fe",name:"Iron",atomicNumber:26},{symbol:"Co",name:"Cobalt",atomicNumber:27},{symbol:"Ni",name:"Nickel",atomicNumber:28},{symbol:"Cu",name:"Copper",atomicNumber:29},{symbol:"Zn",name:"Zinc",atomicNumber:30},{symbol:"Ga",name:"Gallium",atomicNumber:31},{symbol:"Ge",name:"Germanium",atomicNumber:32},{symbol:"As",name:"Arsenic",atomicNumber:33},{symbol:"Se",name:"Selenium",atomicNumber:34},{symbol:"Br",name:"Bromine",atomicNumber:35},{symbol:"Kr",name:"Krypton",atomicNumber:36},{symbol:"Rb",name:"Rubidium",atomicNumber:37},{symbol:"Sr",name:"Strontium",atomicNumber:38},{symbol:"Y",name:"Yttrium",atomicNumber:39},{symbol:"Zr",name:"Zirconium",atomicNumber:40},{symbol:"Nb",name:"Niobium",atomicNumber:41},{symbol:"Mo",name:"Molybdenum",atomicNumber:42},{symbol:"Tc",name:"Technetium",atomicNumber:43},{symbol:"Ru",name:"Ruthenium",atomicNumber:44},{symbol:"Rh",name:"Rhodium",atomicNumber:45},{symbol:"Pd",name:"Palladium",atomicNumber:46},{symbol:"Ag",name:"Silver",atomicNumber:47},{symbol:"Cd",name:"Cadmium",atomicNumber:48},{symbol:"In",name:"Indium",atomicNumber:49},{symbol:"Sn",name:"Tin",atomicNumber:50},{symbol:"Sb",name:"Antimony",atomicNumber:51},{symbol:"Te",name:"Tellurium",atomicNumber:52},{symbol:"I",name:"Iodine",atomicNumber:53},{symbol:"Xe",name:"Xenon",atomicNumber:54},{symbol:"Cs",name:"Caesium",atomicNumber:55},{symbol:"Ba",name:"Barium",atomicNumber:56},{symbol:"La",name:"Lanthanum",atomicNumber:57},{symbol:"Ce",name:"Cerium",atomicNumber:58},{symbol:"Pr",name:"Praseodymium",atomicNumber:59},{symbol:"Nd",name:"Neodymium",atomicNumber:60},{symbol:"Pm",name:"Promethium",atomicNumber:61},{symbol:"Sm",name:"Samarium",atomicNumber:62},{symbol:"Eu",name:"Europium",atomicNumber:63},{symbol:"Gd",name:"Gadolinium",atomicNumber:64},{symbol:"Tb",name:"Terbium",atomicNumber:65},{symbol:"Dy",name:"Dysprosium",atomicNumber:66},{symbol:"Ho",name:"Holmium",atomicNumber:67},{symbol:"Er",name:"Erbium",atomicNumber:68},{symbol:"Tm",name:"Thulium",atomicNumber:69},{symbol:"Yb",name:"Ytterbium",atomicNumber:70},{symbol:"Lu",name:"Lutetium",atomicNumber:71},{symbol:"Hf",name:"Hafnium",atomicNumber:72},{symbol:"Ta",name:"Tantalum",atomicNumber:73},{symbol:"W",name:"Tungsten",atomicNumber:74},{symbol:"Re",name:"Rhenium",atomicNumber:75},{symbol:"Os",name:"Osmium",atomicNumber:76},{symbol:"Ir",name:"Iridium",atomicNumber:77},{symbol:"Pt",name:"Platinum",atomicNumber:78},{symbol:"Au",name:"Gold",atomicNumber:79},{symbol:"Hg",name:"Mercury",atomicNumber:80},{symbol:"Tl",name:"Thallium",atomicNumber:81},{symbol:"Pb",name:"Lead",atomicNumber:82},{symbol:"Bi",name:"Bismuth",atomicNumber:83},{symbol:"Po",name:"Polonium",atomicNumber:84},{symbol:"At",name:"Astatine",atomicNumber:85},{symbol:"Rn",name:"Radon",atomicNumber:86},{symbol:"Fr",name:"Francium",atomicNumber:87},{symbol:"Ra",name:"Radium",atomicNumber:88},{symbol:"Ac",name:"Actinium",atomicNumber:89},{symbol:"Th",name:"Thorium",atomicNumber:90},{symbol:"Pa",name:"Protactinium",atomicNumber:91},{symbol:"U",name:"Uranium",atomicNumber:92},{symbol:"Np",name:"Neptunium",atomicNumber:93},{symbol:"Pu",name:"Plutonium",atomicNumber:94},{symbol:"Am",name:"Americium",atomicNumber:95},{symbol:"Cm",name:"Curium",atomicNumber:96},{symbol:"Bk",name:"Berkelium",atomicNumber:97},{symbol:"Cf",name:"Californium",atomicNumber:98},{symbol:"Es",name:"Einsteinium",atomicNumber:99},{symbol:"Fm",name:"Fermium",atomicNumber:100},{symbol:"Md",name:"Mendelevium",atomicNumber:101},{symbol:"No",name:"Nobelium",atomicNumber:102},{symbol:"Lr",name:"Lawrencium",atomicNumber:103},{symbol:"Rf",name:"Rutherfordium",atomicNumber:104},{symbol:"Db",name:"Dubnium",atomicNumber:105},{symbol:"Sg",name:"Seaborgium",atomicNumber:106},{symbol:"Bh",name:"Bohrium",atomicNumber:107},{symbol:"Hs",name:"Hassium",atomicNumber:108},{symbol:"Mt",name:"Meitnerium",atomicNumber:109},{symbol:"Ds",name:"Darmstadtium",atomicNumber:110},{symbol:"Rg",name:"Roentgenium",atomicNumber:111},{symbol:"Cn",name:"Copernicium",atomicNumber:112},{symbol:"Nh",name:"Nihonium",atomicNumber:113},{symbol:"Fl",name:"Flerovium",atomicNumber:114},{symbol:"Mc",name:"Moscovium",atomicNumber:115},{symbol:"Lv",name:"Livermorium",atomicNumber:116},{symbol:"Ts",name:"Tennessine",atomicNumber:117},{symbol:"Og",name:"Oganesson",atomicNumber:118}],unit:[{name:"meter",symbol:"m"},{name:"second",symbol:"s"},{name:"mole",symbol:"mol"},{name:"ampere",symbol:"A"},{name:"kelvin",symbol:"K"},{name:"candela",symbol:"cd"},{name:"kilogram",symbol:"kg"},{name:"radian",symbol:"rad"},{name:"hertz",symbol:"Hz"},{name:"newton",symbol:"N"},{name:"pascal",symbol:"Pa"},{name:"joule",symbol:"J"},{name:"watt",symbol:"W"},{name:"coulomb",symbol:"C"},{name:"volt",symbol:"V"},{name:"ohm",symbol:"Ω"},{name:"tesla",symbol:"T"},{name:"degree Celsius",symbol:"°C"},{name:"lumen",symbol:"lm"},{name:"becquerel",symbol:"Bq"},{name:"gray",symbol:"Gy"},{name:"sievert",symbol:"Sv"},{name:"steradian",symbol:"sr"},{name:"farad",symbol:"F"},{name:"siemens",symbol:"S"},{name:"weber",symbol:"Wb"},{name:"henry",symbol:"H"},{name:"lux",symbol:"lx"},{name:"katal",symbol:"kat"}]},team:{creature:["ants","bats","bears","bees","birds","buffalo","cats","chickens","cattle","dogs","dolphins","ducks","elephants","fishes","foxes","frogs","geese","goats","horses","kangaroos","lions","monkeys","owls","oxen","penguins","people","pigs","rabbits","sheep","tigers","whales","wolves","zebras","banshees","crows","black cats","chimeras","ghosts","conspirators","dragons","dwarves","elves","enchanters","exorcists","sons","foes","giants","gnomes","goblins","gooses","griffins","lycanthropes","nemesis","ogres","oracles","prophets","sorcerors","spiders","spirits","vampires","warlocks","vixens","werewolves","witches","worshipers","zombies","druids"],name:["{{location.state}} {{team.creature}}"]},vehicle:{bicycle_type:["Adventure Road Bicycle","BMX Bicycle","City Bicycle","Cruiser Bicycle","Cyclocross Bicycle","Dual-Sport Bicycle","Fitness Bicycle","Flat-Foot Comfort Bicycle","Folding Bicycle","Hybrid Bicycle","Mountain Bicycle","Recumbent Bicycle","Road Bicycle","Tandem Bicycle","Touring Bicycle","Track/Fixed-Gear Bicycle","Triathlon/Time Trial Bicycle","Tricycle"],fuel:["Diesel","Electric","Gasoline","Hybrid"],manufacturer:["Aston Martin","Audi","BMW","Bentley","Bugatti","Cadillac","Chevrolet","Chrysler","Dodge","Ferrari","Fiat","Ford","Honda","Hyundai","Jaguar","Jeep","Kia","Lamborghini","Land Rover","Maserati","Mazda","Mercedes Benz","Mini","Nissan","Polestar","Porsche","Rolls Royce","Smart","Tesla","Toyota","Volkswagen","Volvo"],model:["1","2","911","A4","A8","ATS","Accord","Alpine","Altima","Aventador","Beetle","CTS","CX-9","Camaro","Camry","Challenger","Charger","Civic","Colorado","Corvette","Countach","Cruze","Durango","El Camino","Element","Escalade","Expedition","Explorer","F-150","Fiesta","Focus","Fortwo","Golf","Grand Caravan","Grand Cherokee","Impala","Jetta","Land Cruiser","LeBaron","Malibu","Mercielago","Model 3","Model S","Model T","Model X","Model Y","Mustang","PT Cruiser","Prius","Ranchero","Roadster","Sentra","Silverado","Spyder","Taurus","V90","Volt","Wrangler","XC90","XTS"],type:["Cargo Van","Convertible","Coupe","Crew Cab Pickup","Extended Cab Pickup","Hatchback","Minivan","Passenger Van","SUV","Sedan","Wagon"]},word:{adjective:["abandoned","able","acceptable","acclaimed","accomplished","accurate","aching","acidic","actual","admired","adolescent","advanced","affectionate","afraid","aged","aggravating","aggressive","agile","agitated","agreeable","ajar","alarmed","alert","alienated","alive","all","altruistic","amazing","ambitious","ample","amused","angelic","anguished","animated","annual","another","antique","any","apprehensive","appropriate","apt","arid","artistic","ashamed","assured","astonishing","athletic","austere","authentic","authorized","avaricious","average","aware","awesome","awful","babyish","back","bad","baggy","bare","basic","beloved","beneficial","best","better","big","biodegradable","bitter","black","black-and-white","blank","blaring","bleak","blind","blond","blue","blushing","bogus","boiling","bony","boring","bossy","both","bouncy","bowed","brave","breakable","bright","brilliant","brisk","broken","brown","bruised","bulky","burdensome","burly","bustling","busy","buttery","buzzing","calculating","candid","carefree","careless","caring","cautious","cavernous","celebrated","charming","cheap","cheerful","chilly","chubby","circular","classic","clean","clear","clear-cut","close","closed","cloudy","clueless","clumsy","cluttered","coarse","colorful","colorless","colossal","comfortable","common","compassionate","competent","complete","complicated","concerned","concrete","confused","considerate","content","cool","cooperative","coordinated","corny","corrupt","courageous","courteous","crafty","crazy","creamy","creative","criminal","critical","crooked","crowded","cruel","crushing","cuddly","cultivated","cumbersome","curly","cute","damaged","damp","dapper","dark","darling","dazzling","dead","deadly","deafening","dearest","decent","decisive","deep","defenseless","defensive","deficient","definite","definitive","delectable","delicious","delirious","dense","dental","dependable","dependent","descriptive","deserted","determined","devoted","different","difficult","digital","diligent","dim","direct","dirty","discrete","disloyal","dismal","distant","distinct","distorted","doting","downright","drab","dramatic","dreary","dual","dull","dutiful","each","early","earnest","easy","ecstatic","edible","educated","elastic","elderly","electric","elegant","elementary","elliptical","eminent","emotional","empty","enchanted","enchanting","energetic","enlightened","enraged","entire","equatorial","essential","esteemed","ethical","everlasting","every","evil","exalted","excellent","excitable","excited","exhausted","exotic","expensive","experienced","expert","extra-large","extroverted","failing","faint","fair","fake","familiar","fantastic","far","far-flung","far-off","faraway","fat","fatal","fatherly","favorable","favorite","fearless","feline","filthy","fine","finished","firm","first","firsthand","fixed","flashy","flawed","flawless","flickering","flimsy","flowery","fluffy","flustered","focused","fond","foolhardy","foolish","forceful","formal","forsaken","fortunate","fragrant","frail","frank","free","french","frequent","friendly","frightened","frilly","frivolous","frizzy","front","frozen","frugal","fruitful","functional","funny","fussy","fuzzy","gaseous","general","gentle","genuine","gifted","gigantic","giving","glaring","glass","gleaming","glittering","gloomy","glorious","glossy","glum","golden","good","good-natured","gorgeous","graceful","gracious","grandiose","granular","grave","gray","great","greedy","grim","grimy","gripping","grizzled","grouchy","grounded","growing","grown","grubby","gruesome","grumpy","guilty","gullible","gummy","hairy","handsome","handy","happy","happy-go-lucky","hard-to-find","harmful","hasty","hateful","haunting","heartfelt","heavenly","heavy","hefty","helpful","helpless","hidden","hoarse","hollow","homely","honorable","honored","hopeful","hospitable","hot","huge","humble","humiliating","hungry","hurtful","husky","icy","ideal","idealistic","idolized","ignorant","ill","ill-fated","illiterate","illustrious","imaginary","imaginative","immaculate","immediate","immense","impartial","impassioned","impeccable","impish","impolite","important","impossible","impractical","impressionable","impressive","improbable","impure","inborn","incomparable","incomplete","inconsequential","indelible","indolent","inexperienced","infamous","infatuated","inferior","infinite","informal","innocent","insecure","insidious","insignificant","insistent","instructive","intelligent","intent","interesting","internal","international","intrepid","ironclad","irresponsible","jagged","jam-packed","jaunty","jealous","jittery","joyful","joyous","jubilant","judicious","juicy","jumbo","junior","juvenile","kaleidoscopic","key","knotty","knowledgeable","known","kooky","kosher","lanky","last","lasting","late","lavish","lawful","lazy","leading","lean","left","legal","light","lighthearted","likable","likely","limited","limp","limping","linear","lined","liquid","little","live","lively","livid","lone","lonely","long","long-term","lost","lovable","lovely","low","lucky","lumbering","lumpy","lustrous","mad","made-up","magnificent","majestic","major","male","mammoth","married","marvelous","massive","mature","meager","mealy","mean","measly","meaty","mediocre","medium","memorable","menacing","merry","messy","metallic","mild","milky","mindless","minor","minty","miserable","miserly","misguided","mixed","moist","monstrous","monthly","monumental","moral","motionless","muddy","muffled","multicolored","mundane","murky","mushy","musty","muted","mysterious","narrow","natural","naughty","nautical","near","neat","necessary","needy","negative","neglected","negligible","neighboring","nervous","new","next","nice","nifty","nimble","nippy","nocturnal","normal","noted","noteworthy","noxious","numb","nutritious","obedient","oblong","obvious","odd","oddball","official","oily","old","old-fashioned","only","optimal","optimistic","orange","orderly","ordinary","ornate","ornery","other","our","outgoing","outlandish","outlying","outrageous","outstanding","oval","overcooked","overdue","palatable","pale","paltry","parallel","parched","partial","passionate","pastel","peaceful","peppery","perfumed","perky","personal","pertinent","pessimistic","petty","phony","physical","pink","pitiful","plain","pleasant","pleased","pleasing","plump","pointed","pointless","polished","polite","political","poor","portly","posh","possible","potable","powerful","powerless","practical","precious","present","prestigious","pretty","pricey","prickly","primary","prime","private","probable","productive","profitable","profuse","proper","proud","prudent","punctual","puny","pure","purple","pushy","putrid","puzzled","qualified","quarrelsome","quarterly","queasy","querulous","questionable","quick","quick-witted","quiet","quintessential","quixotic","radiant","ragged","rapid","rare","raw","realistic","reasonable","recent","reckless","rectangular","red","reflecting","regal","regular","remarkable","remorseful","repentant","respectful","responsible","rewarding","rich","right","rigid","ripe","roasted","robust","rosy","rotating","rotten","rough","round","rowdy","royal","rubbery","ruddy","rundown","runny","rural","rusty","sad","salty","same","sandy","sarcastic","sardonic","scaly","scared","scary","scented","scientific","scornful","scratchy","second","second-hand","secondary","secret","self-assured","self-reliant","selfish","sentimental","separate","serene","serpentine","severe","shabby","shadowy","shady","shallow","shameful","shameless","shimmering","shiny","shocked","shoddy","short","short-term","showy","shrill","shy","sick","silent","silky","silver","similar","simple","simplistic","sinful","sizzling","skeletal","sleepy","slight","slimy","slow","slushy","small","smart","smoggy","smooth","smug","snappy","snarling","sneaky","sniveling","snoopy","sociable","soft","soggy","somber","some","sophisticated","sore","sorrowful","soulful","soupy","sour","spanish","sparkling","sparse","specific","speedy","spherical","spiffy","spirited","spiteful","splendid","spotless","square","squeaky","squiggly","stable","staid","stained","stale","standard","stark","steel","steep","sticky","stiff","stingy","stormy","straight","strange","strict","strident","striking","strong","stunning","stupendous","sturdy","stylish","subdued","submissive","substantial","subtle","suburban","sudden","sugary","sunny","super","superb","superficial","superior","supportive","sure-footed","surprised","svelte","sweet","swift","talkative","tall","tame","tangible","tasty","tattered","taut","tedious","teeming","tempting","tender","tense","tepid","terrible","that","these","thick","thin","thorny","thorough","those","thrifty","tidy","tight","timely","tinted","tiny","tired","torn","total","tough","tragic","trained","triangular","tricky","trim","trivial","troubled","true","trusting","trustworthy","trusty","turbulent","twin","ugly","ultimate","unaware","uncomfortable","uncommon","unconscious","understated","uneven","unfinished","unfit","unfortunate","unhappy","unhealthy","uniform","unimportant","unique","unkempt","unknown","unlawful","unlined","unlucky","unpleasant","unrealistic","unripe","unruly","unselfish","unsightly","unsteady","unsung","untidy","untimely","untried","untrue","unused","unusual","unwelcome","unwieldy","unwilling","unwritten","upbeat","upright","upset","urban","usable","useless","utilized","utter","vague","vain","valuable","variable","vast","velvety","vengeful","vibrant","victorious","violent","vivacious","vivid","voluminous","warlike","warm","warmhearted","warped","wasteful","waterlogged","watery","wavy","wealthy","weary","webbed","wee","weekly","weighty","weird","well-documented","well-groomed","well-lit","well-made","well-off","well-to-do","well-worn","which","whimsical","whirlwind","whispered","white","whole","whopping","wicked","wide","wide-eyed","wiggly","willing","wilted","winding","windy","winged","wise","witty","wobbly","woeful","wonderful","wordy","worldly","worse","worst","worthless","worthwhile","worthy","wrathful","wretched","writhing","wrong","wry","yearly","yellow","yellowish","young","youthful","yummy","zany","zealous","zesty"],adverb:["abnormally","absentmindedly","accidentally","acidly","actually","adventurously","afterwards","almost","always","angrily","annually","anxiously","arrogantly","awkwardly","badly","bashfully","beautifully","bitterly","bleakly","blindly","blissfully","boastfully","boldly","bravely","briefly","brightly","briskly","broadly","busily","calmly","carefully","carelessly","cautiously","certainly","cheerfully","clearly","cleverly","closely","coaxingly","colorfully","commonly","continually","coolly","correctly","courageously","crossly","cruelly","curiously","daily","daintily","dearly","deceivingly","deeply","defiantly","deliberately","delightfully","diligently","dimly","doubtfully","dreamily","easily","elegantly","energetically","enormously","enthusiastically","equally","especially","even","evenly","eventually","exactly","excitedly","extremely","fairly","faithfully","famously","far","fast","fatally","ferociously","fervently","fiercely","fondly","foolishly","fortunately","frankly","frantically","freely","frenetically","frightfully","fully","furiously","generally","generously","gently","gladly","gleefully","gracefully","gratefully","greatly","greedily","happily","hastily","healthily","heavily","helpfully","helplessly","highly","honestly","hopelessly","hourly","hungrily","immediately","innocently","inquisitively","instantly","intensely","intently","interestingly","inwardly","irritably","jaggedly","jealously","joshingly","jovially","joyfully","joyously","jubilantly","judgementally","justly","keenly","kiddingly","kindheartedly","kindly","kissingly","knavishly","knottily","knowingly","knowledgeably","kookily","lazily","less","lightly","likely","limply","lively","loftily","longingly","loosely","loudly","lovingly","loyally","madly","majestically","meaningfully","mechanically","merrily","miserably","mockingly","monthly","more","mortally","mostly","mysteriously","naturally","nearly","neatly","needily","nervously","never","nicely","noisily","not","obediently","obnoxiously","oddly","offensively","officially","often","only","openly","optimistically","overconfidently","owlishly","painfully","partially","patiently","perfectly","physically","playfully","politely","poorly","positively","potentially","powerfully","promptly","properly","punctually","quaintly","quarrelsomely","queasily","questionably","questioningly","quicker","quickly","quietly","quirkily","quizzically","rapidly","rarely","readily","really","reassuringly","recklessly","regularly","reluctantly","repeatedly","reproachfully","restfully","righteously","rightfully","rigidly","roughly","rudely","sadly","safely","scarcely","scarily","searchingly","sedately","seemingly","seldom","selfishly","separately","seriously","shakily","sharply","sheepishly","shrilly","shyly","silently","sleepily","slowly","smoothly","softly","solemnly","solidly","sometimes","soon","speedily","stealthily","sternly","strictly","successfully","suddenly","surprisingly","suspiciously","sweetly","swiftly","sympathetically","tenderly","tensely","terribly","thankfully","thoroughly","thoughtfully","tightly","tomorrow","too","tremendously","triumphantly","truly","truthfully","ultimately","unabashedly","unaccountably","unbearably","unethically","unexpectedly","unfortunately","unimpressively","unnaturally","unnecessarily","upbeat","upliftingly","upright","upside-down","upward","upwardly","urgently","usefully","uselessly","usually","utterly","vacantly","vaguely","vainly","valiantly","vastly","verbally","very","viciously","victoriously","violently","vivaciously","voluntarily","warmly","weakly","wearily","well","wetly","wholly","wildly","willfully","wisely","woefully","wonderfully","worriedly","wrongly","yawningly","yearly","yearningly","yesterday","yieldingly","youthfully"],conjunction:["after","although","and","as","because","before","but","consequently","even","finally","for","furthermore","hence","how","however","if","inasmuch","incidentally","indeed","instead","lest","likewise","meanwhile","nor","now","once","or","provided","since","so","supposing","than","that","though","till","unless","until","what","when","whenever","where","whereas","wherever","whether","which","while","who","whoever","whose","why","yet"],interjection:["yuck","oh","phooey","blah","boo","whoa","yowza","huzzah","boohoo","fooey","geez","pfft","ew","ah","yum","brr","hm","yahoo","aha","woot","drat","gah","meh","psst","aw","ugh","yippee","eek","gee","bah","gadzooks","duh","ha","mmm","ouch","phew","ack","uh-huh","gosh","hmph","pish","zowie","er","ick","oof","um"],noun:["CD","SUV","abacus","academics","accelerator","accompanist","account","accountability","acquaintance","ad","adaptation","address","adrenalin","adult","advancement","advertisement","adviser","affect","affiliate","aftermath","agreement","airbus","aircraft","airline","airmail","airman","airport","alb","alert","allegation","alliance","alligator","allocation","almighty","amendment","amnesty","analogy","angle","annual","antelope","anticodon","apparatus","appliance","approach","apricot","arcade","archaeology","armchair","armoire","asset","assist","atrium","attraction","availability","avalanche","awareness","babushka","backbone","backburn","bakeware","bandwidth","bar","barge","baritone","barracks","baseboard","basket","bathhouse","bathrobe","battle","begonia","behest","bell","bench","bend","beret","best-seller","bid","bidet","bin","birdbath","birdcage","birth","blight","blossom","blowgun","bob","bog","bonfire","bonnet","bookcase","bookend","boulevard","bourgeoisie","bowler","bowling","boyfriend","brace","bracelet","bran","breastplate","brief","brochure","brook","brush","bug","bump","bungalow","cafe","cake","calculus","cannon","cantaloupe","cap","cappelletti","captain","caption","carboxyl","cardboard","carnival","case","casement","cash","casket","cassava","castanet","catalyst","cauliflower","cellar","celsius","cemetery","ceramic","ceramics","certification","chainstay","chairperson","challenge","championship","chap","chapel","character","characterization","charlatan","charm","chasuble","cheese","cheetah","chiffonier","chops","chow","cinder","cinema","circumference","citizen","clamp","clavicle","cleaner","climb","co-producer","coal","coast","cod","coil","coin","coliseum","collaboration","collectivization","colon","colonialism","comestible","commercial","commodity","community","comparison","completion","complication","compromise","concentration","configuration","confusion","conservation","conservative","consistency","contractor","contrail","convection","conversation","cook","coordination","cop-out","cope","cork","cornet","corporation","corral","cosset","costume","couch","council","councilman","countess","courtroom","cow","creator","creature","crest","cricket","crocodile","cross-contamination","cruelty","cuckoo","curl","custody","custom","cutlet","cutover","cycle","daddy","dandelion","dash","daughter","dead","decision","deck","declaration","decongestant","decryption","deduction","deed","deer","defendant","density","department","dependency","deployment","depot","derby","descendant","descent","design","designation","desk","detective","devastation","developing","developmental","devil","diagram","digestive","digit","dime","director","disadvantage","disappointment","disclosure","disconnection","discourse","dish","disk","disposer","distinction","diver","diversity","dividend","divine","doing","doorpost","doubter","draft","draw","dream","dredger","dress","drive","drug","duffel","dulcimer","dusk","duster","dwell","e-mail","earth","ecliptic","ectoderm","edge","editor","effector","eggplant","electronics","elevation","elevator","elver","embarrassment","embossing","emergent","encouragement","entry","epic","equal","essence","eternity","ethyl","euphonium","event","exasperation","excess","executor","exhaust","expansion","expense","experience","exploration","extension","extent","exterior","eyebrow","eyeliner","farm","farmer","fat","fax","feather","fedora","fellow","fen","fencing","ferret","festival","fibre","filter","final","finding","finer","finger","fireplace","fisherman","fishery","fit","flame","flat","fledgling","flight","flint","flood","flu","fog","fold","folklore","follower","following","foodstuffs","footrest","forage","forager","forgery","fork","formamide","formation","formula","fort","fowl","fraudster","freckle","freezing","freight","fuel","fun","fund","fundraising","futon","gallery","galoshes","gastropod","gazebo","gerbil","ghost","giant","gift","giggle","glider","gloom","goat","godfather","godparent","going","goodwill","governance","government","gown","gradient","graffiti","grandpa","grandson","granny","grass","gray","gripper","grouper","guacamole","guard","guidance","guide","gym","gymnast","habit","haircut","halt","hamburger","hammock","handful","handle","handover","harp","haversack","hawk","heartache","heartbeat","heating","hello","help","hepatitis","heroine","hexagon","hierarchy","hippodrome","honesty","hoof","hope","horde","hornet","horst","hose","hospitalization","hovel","hovercraft","hubris","humidity","humor","hundred","hunger","hunt","husband","hutch","hydrant","hydrocarbon","hydrolyse","hydrolyze","hyena","hygienic","hyphenation","ice-cream","icebreaker","igloo","ignorance","illusion","impact","import","importance","impostor","in-joke","incandescence","independence","individual","information","injunction","innovation","insolence","inspection","instance","institute","instruction","instructor","integer","intellect","intent","interchange","interior","intervention","interviewer","invite","iridescence","issue","jacket","jazz","jellyfish","jet","jogging","joy","juggernaut","jump","jungle","junior","jury","kettledrum","kick","kielbasa","kinase","king","kiss","kit","knickers","knight","knitting","knuckle","label","labourer","lace","lady","lamp","language","larva","lashes","laughter","lava","lawmaker","lay","leading","league","legend","legging","legislature","lender","license","lid","lieu","lifestyle","lift","linseed","litter","loaf","lobster","longboat","lotion","lounge","louse","lox","loyalty","luck","lyre","maestro","mainstream","maintainer","majority","makeover","making","mallard","management","manner","mantua","marathon","march","marimba","marketplace","marksman","markup","marten","massage","masterpiece","mathematics","meadow","meal","meander","meatloaf","mechanic","median","membership","mentor","merit","metabolite","metal","middle","midwife","milestone","millet","minion","minister","minor","minority","mixture","mobility","molasses","mom","moment","monasticism","monocle","monster","morbidity","morning","mortise","mountain","mouser","mousse","mozzarella","muscat","mythology","napkin","necklace","nectarine","negotiation","nephew","nerve","netsuke","newsletter","newsprint","newsstand","nightlife","noon","nougat","nucleotidase","nudge","numeracy","numeric","nun","obedience","obesity","object","obligation","ocelot","octave","offset","oil","omelet","onset","opera","operating","optimal","orchid","order","ostrich","other","outlaw","outrun","outset","overcoat","overheard","overload","ownership","pacemaker","packaging","paintwork","palate","pants","pantyhose","papa","parade","parsnip","partridge","passport","pasta","patroller","pear","pearl","pecan","pendant","peninsula","pension","peony","pepper","perfection","permafrost","perp","petal","petticoat","pharmacopoeia","phrase","pick","piglet","pigpen","pigsty","pile","pillbox","pillow","pilot","pine","pinstripe","place","plain","planula","plastic","platter","platypus","pleasure","pliers","plugin","plumber","pneumonia","pocket-watch","poetry","polarisation","polyester","pomelo","pop","poppy","popularity","populist","porter","possession","postbox","precedent","premeditation","premier","premise","premium","pressure","presume","priesthood","printer","privilege","procurement","produce","programme","prohibition","promise","pronoun","providence","provider","provision","publication","publicity","pulse","punctuation","pupil","puppet","puritan","quart","quinoa","quit","railway","range","rationale","ravioli","rawhide","reach","reasoning","reboot","receptor","recommendation","reconsideration","recovery","redesign","relative","release","remark","reorganisation","repeat","replacement","reporter","representation","republican","request","requirement","reservation","resolve","resource","responsibility","restaurant","retention","retrospectivity","reward","ribbon","rim","riser","roadway","role","rosemary","roundabout","rubric","ruin","rule","runway","rust","safe","sailor","saloon","sand","sandbar","sanity","sarong","sauerkraut","saw","scaffold","scale","scarification","scenario","schedule","schnitzel","scholarship","scorn","scorpion","scout","scrap","scratch","seafood","seagull","seal","season","secrecy","secret","section","sediment","self-confidence","sermon","sesame","settler","shadowbox","shark","shipper","shore","shoulder","sideboard","siege","sightseeing","signature","silk","simple","singing","skean","skeleton","skyline","skyscraper","slide","slime","slipper","smog","smoke","sock","soliloquy","solution","solvency","someplace","sonar","sonata","sonnet","soup","soybean","space","spear","spirit","spork","sport","spring","sprinkles","squid","stall","starboard","statue","status","stay","steak","steeple","step","step-mother","sticker","stir-fry","stitcher","stock","stool","story","strait","stranger","strategy","straw","stump","subexpression","submitter","subsidy","substitution","suitcase","summary","summer","sunbeam","sundae","supplier","surface","sushi","suspension","sustenance","swanling","swath","sweatshop","swim","swine","swing","switch","switchboard","swordfish","synergy","t-shirt","tabletop","tackle","tail","tapioca","taro","tarragon","taxicab","teammate","technician","technologist","tectonics","tenant","tenement","tennis","tentacle","teriyaki","term","testimonial","testing","thigh","thongs","thorn","thread","thunderbolt","thyme","tinderbox","toaster","tomatillo","tomb","tomography","tool","tooth","toothbrush","toothpick","topsail","traditionalism","traffic","translation","transom","transparency","trash","travel","tray","trench","tribe","tributary","trick","trolley","tuba","tuber","tune-up","turret","tusk","tuxedo","typeface","typewriter","unblinking","underneath","underpants","understanding","unibody","unique","unit","utilization","valentine","validity","valley","valuable","vanadyl","vein","velocity","venom","version","verve","vestment","veto","viability","vibraphone","vibration","vicinity","video","violin","vision","vista","vol","volleyball","wafer","waist","wallaby","warming","wasabi","waterspout","wear","wedding","whack","whale","wheel","widow","wilderness","willow","window","wombat","word","worth","wriggler","yak","yarmulke","yeast","yin","yogurt","zebra","zen"],preposition:["a","abaft","aboard","about","above","absent","across","afore","after","against","along","alongside","amid","amidst","among","amongst","an","anenst","anti","apropos","apud","around","as","aside","astride","at","athwart","atop","barring","before","behind","below","beneath","beside","besides","between","beyond","but","by","circa","concerning","considering","despite","down","during","except","excepting","excluding","failing","following","for","forenenst","from","given","in","including","inside","into","lest","like","mid","midst","minus","modulo","near","next","notwithstanding","of","off","on","onto","opposite","out","outside","over","pace","past","per","plus","pro","qua","regarding","round","sans","save","since","than","the","through","throughout","till","times","to","toward","towards","under","underneath","unlike","until","unto","up","upon","versus","via","vice","with","within","without","worth"],verb:["abnegate","abscond","abseil","absolve","accentuate","accept","access","accessorise","accompany","account","accredit","achieve","acknowledge","acquire","adjourn","adjudge","admonish","adumbrate","advocate","afford","airbrush","ameliorate","amend","amount","anaesthetise","analyse","anesthetize","anneal","annex","antagonize","ape","apologise","apostrophize","appertain","appreciate","appropriate","approximate","arbitrate","archive","arraign","arrange","ascertain","ascribe","assail","atomize","attend","attest","attribute","augment","avow","axe","baa","banish","bank","baptise","battle","beard","beep","behold","belabor","bemuse","besmirch","bestride","better","bewail","bicycle","bide","bind","biodegrade","blacken","blaspheme","bleach","blend","blink","bliss","bloom","bludgeon","bobble","boggle","bolster","book","boom","bootleg","border","bore","boss","braid","brand","brandish","break","breed","broadcast","broadside","brood","browse","buck","burgeon","bus","butter","buzzing","camouflage","cannibalise","canter","cap","capitalise","capitalize","capsize","card","carouse","carp","carpool","catalog","catalyze","catch","categorise","cease","celebrate","censor","certify","char","charter","chase","chatter","chime","chip","christen","chromakey","chunder","chunter","cinch","circle","circulate","circumnavigate","clamor","clamour","claw","cleave","clinch","clinking","clone","clonk","coagulate","coexist","coincide","collaborate","colligate","colorize","colour","comb","come","commandeer","commemorate","communicate","compete","conceal","conceptualize","conclude","concrete","condense","cone","confide","confirm","confiscate","confound","confute","congregate","conjecture","connect","consign","construe","contradict","contrast","contravene","controvert","convalesce","converse","convince","convoke","coop","cop","corner","covenant","cow","crackle","cram","crank","creak","creaking","cripple","croon","cross","crumble","crystallize","culminate","culture","curry","curse","customise","cycle","dally","dampen","darn","debit","debut","decide","decode","decouple","decriminalize","deduce","deduct","deflate","deflect","deform","defrag","degenerate","degrease","delete","delight","deliquesce","demob","demobilise","democratize","demonstrate","denitrify","deny","depart","depend","deplore","deploy","deprave","depute","dereference","describe","desecrate","deselect","destock","detain","develop","devise","dial","dicker","digitize","dilate","disapprove","disarm","disbar","discontinue","disgorge","dishearten","dishonor","disinherit","dislocate","dispense","display","dispose","disrespect","dissemble","ditch","divert","dock","doodle","downchange","downshift","dowse","draft","drag","drain","dramatize","drowse","drum","dwell","economise","edge","efface","egg","eke","electrify","embalm","embed","embody","emboss","emerge","emphasise","emphasize","emulsify","encode","endow","enfold","engage","engender","enhance","enlist","enrage","enrich","enroll","entice","entomb","entrench","entwine","equate","essay","etch","eulogise","even","evince","exacerbate","exaggerate","exalt","exempt","exonerate","expatiate","explode","expostulate","extract","extricate","eyeglasses","fabricate","facilitate","factorise","factorize","fail","fall","familiarize","fashion","father","fathom","fax","federate","feminize","fence","fess","fictionalize","fiddle","fidget","fill","flash","fleck","flight","floodlight","floss","fluctuate","fluff","fly","focalise","foot","forearm","forecast","foretell","forgather","forgo","fork","form","forswear","founder","fraternise","fray","frizz","fumigate","function","furlough","fuss","gad","gallivant","galvanize","gape","garage","garrote","gasp","gestate","give","glimmer","glisten","gloat","gloss","glow","gnash","gnaw","goose","govern","grade","graduate","graft","grok","guest","guilt","gulp","gum","gurn","gust","gut","guzzle","ham","harangue","harvest","hassle","haul","haze","headline","hearten","heighten","highlight","hoick","hold","hole","hollow","holster","home","homeschool","hoot","horn","horse","hotfoot","house","hover","howl","huddle","huff","hunger","hunt","husk","hype","hypothesise","hypothesize","idle","ignite","imagineer","impact","impanel","implode","incinerate","incline","inculcate","industrialize","ingratiate","inhibit","inject","innovate","inscribe","insert","insist","inspect","institute","institutionalize","intend","intermarry","intermesh","intermix","internalise","internalize","internationalize","intrigue","inure","inveigle","inventory","investigate","irk","iterate","jaywalk","jell","jeopardise","jiggle","jive","joint","jot","jut","keel","knife","knit","know","kowtow","lack","lampoon","large","leap","lecture","legitimize","lend","libel","liberalize","license","ligate","list","lobotomise","lock","log","loose","low","lowball","machine","magnetize","major","make","malfunction","manage","manipulate","maroon","masculinize","mash","mask","masquerade","massage","masticate","materialise","matter","maul","memorise","merge","mesh","metabolise","microblog","microchip","micromanage","militate","mill","minister","minor","misappropriate","miscalculate","misfire","misjudge","miskey","mismatch","mispronounce","misread","misreport","misspend","mob","mobilise","mobilize","moisten","mooch","moor","moralise","mortar","mosh","mothball","motivate","motor","mould","mount","muddy","mummify","mutate","mystify","nab","narrate","narrowcast","nasalise","nauseate","navigate","neaten","neck","neglect","norm","notarize","object","obscure","observe","obsess","obstruct","obtrude","offend","offset","option","orchestrate","orient","orientate","outbid","outdo","outfit","outflank","outfox","outnumber","outrank","outrun","outsource","overburden","overcharge","overcook","overdub","overfeed","overload","overplay","overproduce","overreact","override","overspend","overstay","overtrain","overvalue","overwork","own","oxidise","oxidize","oxygenate","pace","pack","pale","pant","paralyse","parody","part","pause","pave","penalise","persecute","personalise","perspire","pertain","peter","pike","pillory","pinion","pip","pity","pivot","pixellate","plagiarise","plait","plan","please","pluck","ponder","popularize","portray","prance","preclude","preheat","prejudge","preregister","presell","preside","pretend","print","prioritize","probate","probe","proceed","procrastinate","profane","progress","proliferate","proofread","propound","proselytise","provision","pry","publicize","puff","pull","pulp","pulverize","purse","put","putrefy","quadruple","quaff","quantify","quarrel","quash","quaver","question","quiet","quintuple","quip","quit","rag","rally","ramp","randomize","rationalise","rationalize","ravage","ravel","react","readies","readjust","readmit","ready","reapply","rear","reassemble","rebel","reboot","reborn","rebound","rebuff","rebuild","rebuke","recede","reckon","reclassify","recompense","reconstitute","record","recount","redact","redevelop","redound","redraw","redress","reel","refer","reference","refine","reflate","refute","regulate","reiterate","rejigger","rejoin","rekindle","relaunch","relieve","remand","remark","reopen","reorient","replicate","repossess","represent","reprimand","reproach","reprove","repurpose","requite","reschedule","resort","respray","restructure","retool","retract","revere","revitalise","revoke","reword","rewrite","ride","ridge","rim","ring","rise","rival","roger","rosin","rot","rout","row","rue","rule","safeguard","sashay","sate","satirise","satirize","satisfy","saturate","savour","scale","scamper","scar","scare","scarper","scent","schematise","scheme","schlep","scoff","scoop","scope","scotch","scowl","scrabble","scram","scramble","scrape","screw","scruple","scrutinise","scuffle","scuttle","search","secularize","see","segregate","sell","sense","sensitize","sequester","serenade","serialize","serve","service","settle","sew","shaft","sham","shampoo","shanghai","shear","sheathe","shell","shinny","shirk","shoot","shoulder","shout","shovel","showboat","shred","shrill","shudder","shush","sidetrack","sign","silt","sin","singe","sit","sizzle","skateboard","ski","slake","slap","slather","sleet","slink","slip","slope","slump","smarten","smuggle","snack","sneak","sniff","snoop","snow","snowplow","snuggle","soap","solace","solder","solicit","source","spark","spattering","spectacles","spectate","spellcheck","spew","spice","spirit","splash","splay","split","splosh","splurge","spook","square","squirm","stabilise","stable","stack","stage","stake","starch","state","statement","stiffen","stigmatize","sting","stint","stoop","store","storyboard","stratify","structure","stuff","stunt","substantiate","subtract","suckle","suffice","suffocate","summarise","sun","sunbathe","sunder","sup","surge","surprise","swat","swathe","sway","swear","swelter","swerve","swill","swing","symbolise","synthesise","syringe","table","tabulate","tag","tame","tank","tankful","tarry","task","taxicab","team","telescope","tenant","terraform","terrorise","testify","think","throbbing","thump","tighten","toady","toe","tough","tousle","traduce","train","transcend","transplant","trash","treasure","treble","trek","trial","tromp","trouser","trust","tune","tut","twine","twist","typify","unbalance","uncork","uncover","underachieve","undergo","underplay","unearth","unfreeze","unfurl","unlearn","unscramble","unzip","uproot","upsell","usher","vacation","vamoose","vanish","vary","veg","venture","verify","vet","veto","volunteer","vulgarise","waft","wallop","waltz","warp","wash","waver","weary","weatherize","wedge","weep","weight","welcome","westernise","westernize","while","whine","whisper","whistle","whitewash","whup","wilt","wing","wire","wisecrack","wolf","wound","wring","writ","yak","yawn","yearn","yuppify"]}},ww=class extends Error{};var Cw=class{constructor(e){this.faker=e,function(e){let t=Object.getPrototypeOf(e);do{for(let r of Object.getOwnPropertyNames(t))"function"==typeof e[r]&&"constructor"!==r&&(e[r]=e[r].bind(e));t=Object.getPrototypeOf(t)}while(t!==Object.prototype)}(this)}},_w=class extends Cw{constructor(e){super(e),this.faker=e}},Sw=(e=>(e.Narrowbody="narrowbody",e.Regional="regional",e.Widebody="widebody",e))(Sw||{}),Aw=["0","1","2","3","4","5","6","7","8","9"],Mw=["0","O","1","I","L"],Tw={regional:20,narrowbody:35,widebody:60},Bw={regional:["A","B","C","D"],narrowbody:["A","B","C","D","E","F"],widebody:["A","B","C","D","E","F","G","H","J","K"]},Lw=class extends _w{airport(){return this.faker.helpers.arrayElement(this.faker.definitions.airline.airport)}airline(){return this.faker.helpers.arrayElement(this.faker.definitions.airline.airline)}airplane(){return this.faker.helpers.arrayElement(this.faker.definitions.airline.airplane)}recordLocator(e={}){let{allowNumerics:t=!1,allowVisuallySimilarCharacters:r=!1}=e,a=[];return t||a.push(...Aw),r||a.push(...Mw),this.faker.string.alphanumeric({length:6,casing:"upper",exclude:a})}seat(e={}){let{aircraftType:t="narrowbody"}=e,r=Tw[t],a=Bw[t];return`${this.faker.number.int({min:1,max:r})}${this.faker.helpers.arrayElement(a)}`}aircraftType(){return this.faker.helpers.enumValue(Sw)}flightNumber(e={}){let{length:t={min:1,max:4},addLeadingZeros:r=!1}=e,a=this.faker.string.numeric({length:t,allowLeadingZeros:!1});return r?a.padStart(4,"0"):a}},Ew=(e=>(e.SRGB="sRGB",e.DisplayP3="display-p3",e.REC2020="rec2020",e.A98RGB="a98-rgb",e.ProphotoRGB="prophoto-rgb",e))(Ew||{}),Rw=(e=>(e.RGB="rgb",e.RGBA="rgba",e.HSL="hsl",e.HSLA="hsla",e.HWB="hwb",e.CMYK="cmyk",e.LAB="lab",e.LCH="lch",e.COLOR="color",e))(Rw||{});function Hw(e){return e.map((e=>{if(e%1!=0){let t=new ArrayBuffer(4);return new DataView(t).setFloat32(0,e),Hw([...new Uint8Array(t)]).replaceAll(" ","")}return(e>>>0).toString(2).padStart(8,"0")})).join(" ")}function Dw(e,t,r="rgb",a="sRGB"){switch(t){case"css":return function(e,t="rgb",r="sRGB"){let a=e=>Math.round(100*e);switch(t){case"rgba":return`rgba(${e[0]}, ${e[1]}, ${e[2]}, ${e[3]})`;case"color":return`color(${r} ${e[0]} ${e[1]} ${e[2]})`;case"cmyk":return`cmyk(${a(e[0])}%, ${a(e[1])}%, ${a(e[2])}%, ${a(e[3])}%)`;case"hsl":return`hsl(${e[0]}deg ${a(e[1])}% ${a(e[2])}%)`;case"hsla":return`hsl(${e[0]}deg ${a(e[1])}% ${a(e[2])}% / ${a(e[3])})`;case"hwb":return`hwb(${e[0]} ${a(e[1])}% ${a(e[2])}%)`;case"lab":return`lab(${a(e[0])}% ${e[1]} ${e[2]})`;case"lch":return`lch(${a(e[0])}% ${e[1]} ${e[2]})`;case"rgb":return`rgb(${e[0]}, ${e[1]}, ${e[2]})`}}(e,r,a);case"binary":return Hw(e);case"decimal":return e}}var Pw=class extends _w{human(){return this.faker.helpers.arrayElement(this.faker.definitions.color.human)}space(){return this.faker.helpers.arrayElement(this.faker.definitions.color.space)}cssSupportedFunction(){return this.faker.helpers.enumValue(Rw)}cssSupportedSpace(){return this.faker.helpers.enumValue(Ew)}rgb(e={}){let t,{format:r="hex",includeAlpha:a=!1,prefix:i="#",casing:n="lower"}=e,o="rgb";return"hex"===r?(t=this.faker.string.hexadecimal({length:a?8:6,prefix:""}),t=function(e,t){let{prefix:r,casing:a}=t;switch(a){case"upper":e=e.toUpperCase();break;case"lower":e=e.toLowerCase()}return r&&(e=r+e),e}(t,{prefix:i,casing:n}),t):(t=Array.from({length:3},(()=>this.faker.number.int(255))),a&&(t.push(this.faker.number.float({multipleOf:.01})),o="rgba"),Dw(t,r,o))}cmyk(e={}){let{format:t="decimal"}=e;return Dw(Array.from({length:4},(()=>this.faker.number.float({multipleOf:.01}))),t,"cmyk")}hsl(e={}){let{format:t="decimal",includeAlpha:r=!1}=e,a=[this.faker.number.int(360)];for(let t=0;t<(e?.includeAlpha?3:2);t++)a.push(this.faker.number.float({multipleOf:.01}));return Dw(a,t,r?"hsla":"hsl")}hwb(e={}){let{format:t="decimal"}=e,r=[this.faker.number.int(360)];for(let e=0;e<2;e++)r.push(this.faker.number.float({multipleOf:.01}));return Dw(r,t,"hwb")}lab(e={}){let{format:t="decimal"}=e,r=[this.faker.number.float({multipleOf:1e-6})];for(let e=0;e<2;e++)r.push(this.faker.number.float({min:-100,max:100,multipleOf:1e-4}));return Dw(r,t,"lab")}lch(e={}){let{format:t="decimal"}=e,r=[this.faker.number.float({multipleOf:1e-6})];for(let e=0;e<2;e++)r.push(this.faker.number.float({max:230,multipleOf:.1}));return Dw(r,t,"lch")}colorByCSSColorSpace(e={}){let{format:t="decimal",space:r="sRGB"}=e;return Dw(Array.from({length:3},(()=>this.faker.number.float({multipleOf:1e-4}))),t,"color",r)}},Nw=(e=>(e.Legacy="legacy",e.Segwit="segwit",e.Bech32="bech32",e.Taproot="taproot",e))(Nw||{}),Gw=(e=>(e.Mainnet="mainnet",e.Testnet="testnet",e))(Gw||{}),Iw={legacy:{prefix:{mainnet:"1",testnet:"m"},length:{min:26,max:34},casing:"mixed",exclude:"0OIl"},segwit:{prefix:{mainnet:"3",testnet:"2"},length:{min:26,max:34},casing:"mixed",exclude:"0OIl"},bech32:{prefix:{mainnet:"bc1",testnet:"tb1"},length:{min:42,max:42},casing:"lower",exclude:"1bBiIoO"},taproot:{prefix:{mainnet:"bc1p",testnet:"tb1p"},length:{min:62,max:62},casing:"lower",exclude:"1bBiIoO"}},Ww=(e=>(e.Female="female",e.Male="male",e))(Ww||{});function Fw(e,t,r){let{generic:a,female:i,male:n}=r;switch(t){case"female":return i??a;case"male":return n??a;default:return a??e.helpers.arrayElement([i,n])??[]}}var zw=class extends _w{firstName(e){return this.faker.helpers.arrayElement(Fw(this.faker,e,this.faker.definitions.person.first_name))}lastName(e){if(null!=this.faker.rawDefinitions.person?.last_name_pattern){let t=this.faker.helpers.weightedArrayElement(Fw(this.faker,e,this.faker.rawDefinitions.person.last_name_pattern));return this.faker.helpers.fake(t)}return this.faker.helpers.arrayElement(Fw(this.faker,e,this.faker.definitions.person.last_name))}middleName(e){return this.faker.helpers.arrayElement(Fw(this.faker,e,this.faker.definitions.person.middle_name))}fullName(e={}){let{sex:t=this.faker.helpers.arrayElement(["female","male"]),firstName:r=this.firstName(t),lastName:a=this.lastName(t)}=e,i=this.faker.helpers.weightedArrayElement(this.faker.definitions.person.name);return this.faker.helpers.mustache(i,{"person.prefix":()=>this.prefix(t),"person.firstName":()=>r,"person.middleName":()=>this.middleName(t),"person.lastName":()=>a,"person.suffix":()=>this.suffix()})}gender(){return this.faker.helpers.arrayElement(this.faker.definitions.person.gender)}sex(){return this.faker.helpers.arrayElement(this.faker.definitions.person.sex)}sexType(){return this.faker.helpers.enumValue(Ww)}bio(){let{bio_pattern:e}=this.faker.definitions.person;return this.faker.helpers.fake(e)}prefix(e){return this.faker.helpers.arrayElement(Fw(this.faker,e,this.faker.definitions.person.prefix))}suffix(){return this.faker.helpers.arrayElement(this.faker.definitions.person.suffix)}jobTitle(){return this.faker.helpers.fake(this.faker.definitions.person.job_title_pattern)}jobDescriptor(){return this.faker.helpers.arrayElement(this.faker.definitions.person.job_descriptor)}jobArea(){return this.faker.helpers.arrayElement(this.faker.definitions.person.job_area)}jobType(){return this.faker.helpers.arrayElement(this.faker.definitions.person.job_type)}zodiacSign(){return this.faker.helpers.arrayElement(this.faker.definitions.person.western_zodiac_sign)}},Ow=class{N=624;M=397;MATRIX_A=2567483615;UPPER_MASK=2147483648;LOWER_MASK=2147483647;mt=Array.from({length:this.N});mti=this.N+1;unsigned32(e){return e<0?(e^this.UPPER_MASK)+this.UPPER_MASK:e}subtraction32(e,t){return e>>a&1&&(r=this.addition32(r,this.unsigned32(t<>>30)),this.mti),this.mt[this.mti]=this.unsigned32(4294967295&this.mt[this.mti])}initByArray(e,t){this.initGenrand(19650218);let r=1,a=0,i=this.N>t?this.N:t;for(;i;i--)this.mt[r]=this.addition32(this.addition32(this.unsigned32(this.mt[r]^this.multiplication32(this.unsigned32(this.mt[r-1]^this.mt[r-1]>>>30),1664525)),e[a]),a),this.mt[r]=this.unsigned32(4294967295&this.mt[r]),r++,a++,r>=this.N&&(this.mt[0]=this.mt[this.N-1],r=1),a>=t&&(a=0);for(i=this.N-1;i;i--)this.mt[r]=this.subtraction32(this.unsigned32(this.mt[r]^this.multiplication32(this.unsigned32(this.mt[r-1]^this.mt[r-1]>>>30),1566083941)),r),this.mt[r]=this.unsigned32(4294967295&this.mt[r]),r++,r>=this.N&&(this.mt[0]=this.mt[this.N-1],r=1);this.mt[0]=2147483648}mag01=[0,this.MATRIX_A];genrandInt32(){let e;if(this.mti>=this.N){let t;for(this.mti===this.N+1&&this.initGenrand(5489),t=0;t>>1^this.mag01[1&e]);for(;t>>1^this.mag01[1&e]);e=this.unsigned32(this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK),this.mt[this.N-1]=this.unsigned32(this.mt[this.M-1]^e>>>1^this.mag01[1&e]),this.mti=0}return e=this.mt[this.mti++],e=this.unsigned32(e^e>>>11),e=this.unsigned32(e^e<<7&2636928640),e=this.unsigned32(e^e<<15&4022730752),e=this.unsigned32(e^e>>>18),e}genrandInt31(){return this.genrandInt32()>>>1}genrandReal1(){return this.genrandInt32()*(1/4294967295)}genrandReal2(){return this.genrandInt32()*(1/4294967296)}genrandReal3(){return(this.genrandInt32()+.5)*(1/4294967296)}genrandRes53(){return(67108864*(this.genrandInt32()>>>5)+(this.genrandInt32()>>>6))*(1/9007199254740992)}};function Kw(){let e=new Ow;return e.initGenrand(Math.ceil(Math.random()*Number.MAX_SAFE_INTEGER)),{next:()=>e.genrandRes53(),seed(t){"number"==typeof t?e.initGenrand(t):Array.isArray(t)&&e.initByArray(t,t.length)}}}var Jw=class extends Cw{boolean(e={}){"number"==typeof e&&(e={probability:e});let{probability:t=.5}=e;return!(t<=0)&&(t>=1||this.faker.number.float(){throw new ww("You cannot edit the locale data on the faker instance")};function jw(e){let t={};return new Proxy(e,{has:()=>!0,get:(e,r)=>"symbol"==typeof r||"nodeType"===r?e[r]:r in t?t[r]:t[r]=function(e,t={}){return new Proxy(t,{has:(e,t)=>null!=e[t],get(t,r){let a=t[r];return"symbol"==typeof r||"nodeType"===r||Yw(a,e,r.toString()),a},set:Vw,deleteProperty:Vw})}(r,e[r]),set:Vw,deleteProperty:Vw})}function Yw(e,...t){if(null===e)throw new ww(`The locale data for '${t.join(".")}' aren't applicable to this locale.\n If you think this is a bug, please report it at: https://github.com/faker-js/faker`);if(void 0===e)throw new ww(`The locale data for '${t.join(".")}' are missing in this locale.\n Please contribute the missing data to the project or use a locale/Faker instance that has these data.\n For more information see https://fakerjs.dev/guide/localization.html`)}function $w(e,t="refDate"){let r=new Date(e);if(Number.isNaN(r.valueOf()))throw new ww(`Invalid ${t} date: ${e.toString()}`);return r}var Uw=class extends Cw{anytime(e={}){let{refDate:t=this.faker.defaultRefDate()}=e,r=$w(t).getTime();return this.between({from:r-31536e6,to:r+31536e6})}past(e={}){let{years:t=1,refDate:r=this.faker.defaultRefDate()}=e;if(t<=0)throw new ww("Years must be greater than 0.");let a=$w(r).getTime();return this.between({from:a-365*t*24*3600*1e3,to:a-1e3})}future(e={}){let{years:t=1,refDate:r=this.faker.defaultRefDate()}=e;if(t<=0)throw new ww("Years must be greater than 0.");let a=$w(r).getTime();return this.between({from:a+1e3,to:a+365*t*24*3600*1e3})}between(e){if(null==e||null==e.from||null==e.to)throw new ww("Must pass an options object with `from` and `to` values.");let{from:t,to:r}=e,a=$w(t,"from").getTime(),i=$w(r,"to").getTime();if(a>i)throw new ww("`from` date must be before `to` date.");return new Date(this.faker.number.int({min:a,max:i}))}betweens(e){if(null==e||null==e.from||null==e.to)throw new ww("Must pass an options object with `from` and `to` values.");let{from:t,to:r,count:a=3}=e;return this.faker.helpers.multiple((()=>this.between({from:t,to:r})),{count:a}).sort(((e,t)=>e.getTime()-t.getTime()))}recent(e={}){let{days:t=1,refDate:r=this.faker.defaultRefDate()}=e;if(t<=0)throw new ww("Days must be greater than 0.");let a=$w(r).getTime();return this.between({from:a-24*t*3600*1e3,to:a-1e3})}soon(e={}){let{days:t=1,refDate:r=this.faker.defaultRefDate()}=e;if(t<=0)throw new ww("Days must be greater than 0.");let a=$w(r).getTime();return this.between({from:a+1e3,to:a+24*t*3600*1e3})}birthdate(e={}){let{mode:t="age",min:r=18,max:a=80,refDate:i=this.faker.defaultRefDate(),mode:n,min:o,max:c}=e;if([o,c,n].filter((e=>null!=e)).length%3!=0)throw new ww("The 'min', 'max', and 'mode' options must be set together.");let l=$w(i),s=l.getUTCFullYear();switch(t){case"age":{let e=new Date(l).setUTCFullYear(s-a-1)+864e5,t=new Date(l).setUTCFullYear(s-r);if(e>t)throw new ww(`Max age ${a} should be greater than or equal to min age ${r}.`);return this.between({from:e,to:t})}case"year":{let e=new Date(Date.UTC(0,0,2)).setUTCFullYear(r),t=new Date(Date.UTC(0,11,30)).setUTCFullYear(a);if(e>t)throw new ww(`Max year ${a} should be greater than or equal to min year ${r}.`);return this.between({from:e,to:t})}}}},qw=class extends Uw{constructor(e){super(e),this.faker=e}month(e={}){let t,{abbreviated:r=!1,context:a=!1}=e,i=this.faker.definitions.date.month;t=r?a&&null!=i.abbr_context?"abbr_context":"abbr":a&&null!=i.wide_context?"wide_context":"wide";let n=i[t];return Yw(n,"date.month",t),this.faker.helpers.arrayElement(n)}weekday(e={}){let t,{abbreviated:r=!1,context:a=!1}=e,i=this.faker.definitions.date.weekday;t=r?a&&null!=i.abbr_context?"abbr_context":"abbr":a&&null!=i.wide_context?"wide_context":"wide";let n=i[t];return Yw(n,"date.weekday",t),this.faker.helpers.arrayElement(n)}timeZone(){return this.faker.helpers.arrayElement(this.faker.definitions.date.time_zone)}},Zw=/\.|\(/;function Qw(e,t,r){let[a,i]=function(e){let t=e.indexOf(")",1);if(-1===t)throw new ww(`Missing closing parenthesis in '${e}'`);for(;-1!==t;){let r=e.substring(1,t);try{return[t,JSON.parse(`[${r}]`)]}catch{if(!r.includes("'")&&!r.includes('"'))try{return[t,JSON.parse(`["${r}"]`)]}catch{}}t=e.indexOf(")",t+1)}t=e.lastIndexOf(")");let r=e.substring(1,t);return[t,[r]]}(e),n=e[a+1];switch(n){case".":case"(":case void 0:break;default:throw new ww(`Expected dot ('.'), open parenthesis ('('), or nothing after function call but got '${n}'`)}return[a+("."===n?2:1),t.map((t=>"function"==typeof t?t(...i):(console.warn(`[@faker-js/faker]: Invoking expressions which are not functions is deprecated since v9.0 and will be removed in v10.0.\nPlease remove the parentheses or replace the expression with an actual function.\n${r}\n${" ".repeat(r.length-e.length)}^`),t)))]}function Xw(e,t){let r=Zw.exec(e),a="."===(r?.[0]??""),i=r?.index??e.length,n=e.substring(0,i);if(0===n.length)throw new ww(`Expression parts cannot be empty in '${e}'`);let o=e[i+1];if(a&&(null==o||"."===o||"("===o))throw new ww(`Found dot without property name in '${e}'`);return[i+(a?1:0),t.map((e=>function(e,t){switch(typeof e){case"function":try{e=e()}catch{return}return e?.[t];case"object":return e?.[t];default:return}}(e,n)))]}function eC(e){let t=function(e){e=e.replaceAll(/[\s-]/g,"");let t=0,r=!1;for(let a=e.length-1;a>=0;a--){let i=Number.parseInt(e[a]);r&&(i*=2,i>9&&(i=i%10+1)),t+=i,r=!r}return t%10}(e.replace(/L?$/,"0"));return 0===t?0:10-t}function tC(e,t,r,a){let i=1;if(t)switch(t){case"?":i=e.datatype.boolean()?0:1;break;case"*":{let t=1;for(;e.datatype.boolean();)t*=2;i=e.number.int({min:0,max:t});break}case"+":{let t=1;for(;e.datatype.boolean();)t*=2;i=e.number.int({min:1,max:t});break}default:throw new ww("Unknown quantifier symbol provided.")}else null!=r&&null!=a?i=e.number.int({min:Number.parseInt(r),max:Number.parseInt(a)}):null!=r&&null==a&&(i=Number.parseInt(r));return i}function rC(e,t="",r="#"){let a="";for(let i=0;ia&&(i=a,a=r,r=i),n=e.number.int({min:r,max:a}),t=t.slice(0,s.index)+s[1].repeat(n)+t.slice(s.index+s[0].length),s=o.exec(t);for(s=c.exec(t);null!=s;)n=Number.parseInt(s[2]),t=t.slice(0,s.index)+s[1].repeat(n)+t.slice(s.index+s[0].length),s=c.exec(t);for(s=l.exec(t);null!=s;)r=Number.parseInt(s[1]),a=Number.parseInt(s[2]),r>a&&(i=a,a=r,r=i),t=t.slice(0,s.index)+e.number.int({min:r,max:a}).toString()+t.slice(s.index+s[0].length),s=l.exec(t);return t}(this.faker,e);let r=eC(e=rC(this.faker,e,t));return e.replace("L",String(r))}fromRegExp(e){let t=!1;e instanceof RegExp&&(t=e.flags.includes("i"),e=e.toString(),e=/\/(.+?)\//.exec(e)?.[1]??"");let r,a,i,n=/([.A-Za-z0-9])(?:\{(\d+)(?:,(\d+)|)\}|(\?|\*|\+))(?![^[]*]|[^{]*})/,o=n.exec(e);for(;null!=o;){let t=o[2],r=o[3],a=o[4];i=tC(this.faker,a,t,r),e=e.slice(0,o.index)+o[1].repeat(i)+e.slice(o.index+o[0].length),o=n.exec(e)}let c=/(\d-\d|\w-\w|\d|\w|[-!@#$&()`.+,/"])/,l=/\[(\^|)(-|)(.+?)\](?:\{(\d+)(?:,(\d+)|)\}|(\?|\*|\+)|)/;for(o=l.exec(e);null!=o;){let n="^"===o[1],s="-"===o[2],u=o[4],h=o[5],d=o[6],p=[],y=o[3],f=c.exec(y);for(s&&p.push(45);null!=f;){if(f[0].includes("-")){let e=f[0].split("-").map((e=>e.codePointAt(0)??Number.NaN));if(r=e[0],a=e[1],r>a)throw new ww("Character range provided is out of order.");for(let e=r;e<=a;e++)if(t&&Number.isNaN(Number(String.fromCodePoint(e)))){let t=String.fromCodePoint(e);p.push(t.toUpperCase().codePointAt(0)??Number.NaN,t.toLowerCase().codePointAt(0)??Number.NaN)}else p.push(e)}else t&&Number.isNaN(Number(f[0]))?p.push(f[0].toUpperCase().codePointAt(0)??Number.NaN,f[0].toLowerCase().codePointAt(0)??Number.NaN):p.push(f[0].codePointAt(0)??Number.NaN);y=y.substring(f[0].length),f=c.exec(y)}if(i=tC(this.faker,d,u,h),n){let e=-1;for(let t=48;t<=57;t++)e=p.indexOf(t),e>-1?p.splice(e,1):p.push(t);for(let t=65;t<=90;t++)e=p.indexOf(t),e>-1?p.splice(e,1):p.push(t);for(let t=97;t<=122;t++)e=p.indexOf(t),e>-1?p.splice(e,1):p.push(t)}let m=this.multiple((()=>String.fromCodePoint(this.arrayElement(p))),{count:i}).join("");e=e.slice(0,o.index)+m+e.slice(o.index+o[0].length),o=l.exec(e)}let s=/(.)\{(\d+),(\d+)\}/;for(o=s.exec(e);null!=o;){if(r=Number.parseInt(o[2]),a=Number.parseInt(o[3]),r>a)throw new ww("Numbers out of order in {} quantifier.");i=this.faker.number.int({min:r,max:a}),e=e.slice(0,o.index)+o[1].repeat(i)+e.slice(o.index+o[0].length),o=s.exec(e)}let u=/(.)\{(\d+)\}/;for(o=u.exec(e);null!=o;)i=Number.parseInt(o[2]),e=e.slice(0,o.index)+o[1].repeat(i)+e.slice(o.index+o[0].length),o=u.exec(e);return e}shuffle(e,t={}){let{inplace:r=!1}=t;r||(e=[...e]);for(let t=e.length-1;t>0;--t){let r=this.faker.number.int(t);[e[t],e[r]]=[e[r],e[t]]}return e}uniqueArray(e,t){if(Array.isArray(e)){let r=[...new Set(e)];return this.shuffle(r).splice(0,t)}let r=new Set;try{if("function"==typeof e){let a=1e3*t,i=0;for(;r.size1?this.faker.number.int({max:e.length-1}):0]}weightedArrayElement(e){if(0===e.length)throw new ww("weightedArrayElement expects an array with at least one element");if(!e.every((e=>e.weight>0)))throw new ww("weightedArrayElement expects an array of { weight, value } objects where weight is a positive number");let t=e.reduce(((e,{weight:t})=>e+t),0),r=this.faker.number.float({min:0,max:t}),a=0;for(let{weight:t,value:i}of e)if(a+=t,r=e.length)return this.shuffle(e);if(r<=0)return[];let a,i,n=[...e],o=e.length,c=o-r;for(;o-- >c;)i=this.faker.number.int(o),a=n[i],n[i]=n[o],n[o]=a;return n.slice(c)}enumValue(e){let t=Object.keys(e).filter((e=>Number.isNaN(Number(e))));return e[this.arrayElement(t)]}rangeToNumber(e){return"number"==typeof e?e:this.faker.number.int(e)}multiple(e,t={}){let r=this.rangeToNumber(t.count??3);return r<=0?[]:Array.from({length:r},e)}},iC=class extends aC{constructor(e){super(e),this.faker=e}fake(e){let t=(e="string"==typeof e?e:this.arrayElement(e)).search(/{{[a-z]/),r=e.indexOf("}}",t);if(-1===t||-1===r)return e;let a=function(e,t,r=[t,t.rawDefinitions]){if(0===e.length)throw new ww("Eval expression cannot be empty.");if(0===r.length)throw new ww("Eval entrypoints cannot be empty.");let a=r,i=e;do{let r;i.startsWith("(")?[r,a]=Qw(i,a,e):[r,a]=Xw(i,a),i=i.substring(r),a=a.filter((e=>null!=e)).map((e=>Array.isArray(e)?t.helpers.arrayElement(e):e))}while(i.length>0&&a.length>0);if(0===a.length)throw new ww(`Cannot resolve expression '${e}'`);let n=a[0];return"function"==typeof n?n():n}(e.substring(t+2,r+2).replace("}}","").replace("{{",""),this.faker),i=String(a),n=e.substring(0,t)+i+e.substring(r+2);return this.fake(n)}},nC=class extends Cw{int(e={}){"number"==typeof e&&(e={max:e});let{min:t=0,max:r=Number.MAX_SAFE_INTEGER,multipleOf:a=1}=e;if(!Number.isInteger(a))throw new ww("multipleOf should be an integer.");if(a<=0)throw new ww("multipleOf should be greater than 0.");let i=Math.ceil(t/a),n=Math.floor(r/a);if(i===n)return i*a;if(n=t?`No suitable integer value between ${t} and ${r} found.`:`Max ${r} should be greater than min ${t}.`);let o=this.faker._randomizer.next(),c=n-i+1;return Math.floor(o*c+i)*a}float(e={}){"number"==typeof e&&(e={max:e});let{min:t=0,max:r=1,fractionDigits:a,multipleOf:i,multipleOf:n=(null==a?void 0:10**-a)}=e;if(r===t)return t;if(rthis.faker.helpers.arrayElement(e)),{count:t}).join("")}alpha(e={}){"number"==typeof e&&(e={length:e});let t=this.faker.helpers.rangeToNumber(e.length??1);if(t<=0)return"";let r,{casing:a="mixed"}=e,{exclude:i=[]}=e;switch("string"==typeof i&&(i=[...i]),a){case"upper":r=[...oC];break;case"lower":r=[...cC];break;case"mixed":r=[...cC,...oC]}return r=r.filter((e=>!i.includes(e))),this.fromCharacters(r,t)}alphanumeric(e={}){"number"==typeof e&&(e={length:e});let t=this.faker.helpers.rangeToNumber(e.length??1);if(t<=0)return"";let{casing:r="mixed"}=e,{exclude:a=[]}=e;"string"==typeof a&&(a=[...a]);let i=[...lC];switch(r){case"upper":i.push(...oC);break;case"lower":i.push(...cC);break;case"mixed":i.push(...cC,...oC)}return i=i.filter((e=>!a.includes(e))),this.fromCharacters(i,t)}binary(e={}){let{prefix:t="0b"}=e,r=t;return r+=this.fromCharacters(["0","1"],e.length??1),r}octal(e={}){let{prefix:t="0o"}=e,r=t;return r+=this.fromCharacters(["0","1","2","3","4","5","6","7"],e.length??1),r}hexadecimal(e={}){let{casing:t="mixed",prefix:r="0x"}=e,a=this.faker.helpers.rangeToNumber(e.length??1);if(a<=0)return r;let i=this.fromCharacters(["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f","A","B","C","D","E","F"],a);return"upper"===t?i=i.toUpperCase():"lower"===t&&(i=i.toLowerCase()),`${r}${i}`}numeric(e={}){"number"==typeof e&&(e={length:e});let t=this.faker.helpers.rangeToNumber(e.length??1);if(t<=0)return"";let{allowLeadingZeros:r=!0}=e,{exclude:a=[]}=e;"string"==typeof a&&(a=[...a]);let i=lC.filter((e=>!a.includes(e)));if(0===i.length||1===i.length&&!r&&"0"===i[0])throw new ww("Unable to generate numeric string, because all possible digits are excluded.");let n="";return!r&&!a.includes("0")&&(n+=this.faker.helpers.arrayElement(i.filter((e=>"0"!==e)))),n+=this.fromCharacters(i,t-n.length),n}sample(e=10){e=this.faker.helpers.rangeToNumber(e);let t={min:33,max:125},r="";for(;r.lengththis.faker.number.hex({min:0,max:15}))).replaceAll("y",(()=>this.faker.number.hex({min:8,max:11})))}nanoid(e=21){if((e=this.faker.helpers.rangeToNumber(e))<=0)return"";let t=[{value:()=>this.alphanumeric(1),weight:62},{value:()=>this.faker.helpers.arrayElement(["_","-"]),weight:2}],r="";for(;r.length","?","@","[","\\","]","^","_","`","{","|","}","~"],e)}},uC=class{_defaultRefDate=()=>new Date;get defaultRefDate(){return this._defaultRefDate}setDefaultRefDate(e=()=>new Date){this._defaultRefDate="function"==typeof e?e:()=>new Date(e)}_randomizer;datatype=new Jw(this);date=new Uw(this);helpers=new aC(this);number=new nC(this);string=new sC(this);constructor(e={}){let{randomizer:t=Kw()}=e;this._randomizer=t}seed(e=Math.ceil(Math.random()*Number.MAX_SAFE_INTEGER)){return this._randomizer.seed(e),e}};function hC(e){let t=`[@faker-js/faker]: ${e.deprecated} is deprecated`;e.since&&(t+=` since v${e.since}`),e.until&&(t+=` and will be removed in v${e.until}`),e.proposed&&(t+=`. Please use ${e.proposed} instead`),console.warn(`${t}.`)}new uC;var dC=class extends _w{dog(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.dog)}cat(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.cat)}snake(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.snake)}bear(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.bear)}lion(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.lion)}cetacean(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.cetacean)}horse(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.horse)}bird(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.bird)}cow(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.cow)}fish(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.fish)}crocodilia(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.crocodilia)}insect(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.insect)}rabbit(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.rabbit)}rodent(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.rodent)}type(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.type)}},pC={0:[[1999999,2],[2279999,3],[2289999,4],[3689999,3],[3699999,4],[6389999,3],[6397999,4],[6399999,7],[6449999,3],[6459999,7],[6479999,3],[6489999,7],[6549999,3],[6559999,4],[6999999,3],[8499999,4],[8999999,5],[9499999,6],[9999999,7]],1:[[99999,3],[299999,2],[349999,3],[399999,4],[499999,3],[699999,2],[999999,4],[3979999,3],[5499999,4],[6499999,5],[6799999,4],[6859999,5],[7139999,4],[7169999,3],[7319999,4],[7399999,7],[7749999,5],[7753999,7],[7763999,5],[7764999,7],[7769999,5],[7782999,7],[7899999,5],[7999999,4],[8004999,5],[8049999,5],[8379999,5],[8384999,7],[8671999,5],[8675999,4],[8697999,5],[9159999,6],[9165059,7],[9168699,6],[9169079,7],[9195999,6],[9196549,7],[9729999,6],[9877999,4],[9911499,6],[9911999,7],[9989899,6],[9999999,7]]},yC=class extends _w{department(){return this.faker.helpers.arrayElement(this.faker.definitions.commerce.department)}productName(){return`${this.productAdjective()} ${this.productMaterial()} ${this.product()}`}price(e={}){let{dec:t=2,max:r=1e3,min:a=1,symbol:i=""}=e;if(a<0||r<0)return`${i}0`;if(a===r)return`${i}${a.toFixed(t)}`;let n=this.faker.number.float({min:a,max:r,fractionDigits:t});if(0===t)return`${i}${n.toFixed(t)}`;let o=.1**t,c=n-n*10**t%10*o+this.faker.helpers.weightedArrayElement([{weight:5,value:9},{weight:3,value:5},{weight:1,value:0},{weight:1,value:this.faker.number.int({min:0,max:9})}])*o;return a<=c&&c<=r?`${i}${c.toFixed(t)}`:`${i}${n.toFixed(t)}`}productAdjective(){return this.faker.helpers.arrayElement(this.faker.definitions.commerce.product_name.adjective)}productMaterial(){return this.faker.helpers.arrayElement(this.faker.definitions.commerce.product_name.material)}product(){return this.faker.helpers.arrayElement(this.faker.definitions.commerce.product_name.product)}productDescription(){return this.faker.helpers.arrayElement(this.faker.definitions.commerce.product_description)}isbn(e={}){"number"==typeof e&&(e={variant:e});let{variant:t=13,separator:r="-"}=e,[a,i]=this.faker.helpers.objectEntry(pC),n=this.faker.string.numeric(8),o=Number.parseInt(n.slice(0,-1)),c=i.find((([e])=>o<=e))?.[1];if(!c)throw new ww(`Unable to find a registrant length for the group ${a}`);let l=["978",a,n.slice(0,c),n.slice(c)];10===t&&l.shift();let s=l.join(""),u=0;for(let e=0;e{let t=0;for(let r of e)t=(10*t+ +r)%97;return t},pattern10:["01","02","03","04","05","06","07","08","09"],pattern100:["001","002","003","004","005","006","007","008","009"],toDigitString:e=>e.replaceAll(/[A-Z]/gi,(e=>String((e.toUpperCase().codePointAt(0)??Number.NaN)-55)))},bC=gC;var vC=class extends _w{accountNumber(e={}){"number"==typeof e&&(e={length:e});let{length:t=8}=e;return this.faker.string.numeric({length:t,allowLeadingZeros:!0})}accountName(){return[this.faker.helpers.arrayElement(this.faker.definitions.finance.account_type),"Account"].join(" ")}routingNumber(){let e=this.faker.string.numeric({length:8,allowLeadingZeros:!0}),t=0;for(let r=0;re.country===t)):this.faker.helpers.arrayElement(bC.formats);if(!a)throw new ww(`Country code ${t} not supported.`);let i="",n=0;for(let e of a.bban){let t=e.count;for(n+=e.count;t>0;)"a"===e.type?i+=this.faker.helpers.arrayElement(bC.alpha):"c"===e.type?this.faker.datatype.boolean(.8)?i+=this.faker.number.int(9):i+=this.faker.helpers.arrayElement(bC.alpha):t>=3&&this.faker.datatype.boolean(.3)?this.faker.datatype.boolean()?(i+=this.faker.helpers.arrayElement(bC.pattern100),t-=2):(i+=this.faker.helpers.arrayElement(bC.pattern10),t--):i+=this.faker.number.int(9),t--;i=i.substring(0,n)}let o=98-bC.mod97(bC.toDigitString(`${i}${a.country}00`));o<10&&(o=`0${o}`);let c=`${a.country}${o}${i}`;return r?function(e){let t="";for(let r=0;re.split(" ").map((e=>e.charAt(0).toUpperCase()+e.slice(1))).join(" ");return this.faker.datatype.boolean()?e(this.faker.helpers.fake(this.faker.definitions.food.dish_pattern)):e(this.faker.helpers.arrayElement(this.faker.definitions.food.dish))}ethnicCategory(){return this.faker.helpers.arrayElement(this.faker.definitions.food.ethnic_category)}fruit(){return this.faker.helpers.arrayElement(this.faker.definitions.food.fruit)}ingredient(){return this.faker.helpers.arrayElement(this.faker.definitions.food.ingredient)}meat(){return this.faker.helpers.arrayElement(this.faker.definitions.food.meat)}spice(){return this.faker.helpers.arrayElement(this.faker.definitions.food.spice)}vegetable(){return this.faker.helpers.arrayElement(this.faker.definitions.food.vegetable)}},kC=class extends _w{branch(){return`${this.faker.hacker.noun().replace(" ","-")}-${this.faker.hacker.verb().replace(" ","-")}`}commitEntry(e={}){let{merge:t=this.faker.datatype.boolean({probability:.2}),eol:r="CRLF",refDate:a}=e,i=[`commit ${this.faker.git.commitSha()}`];t&&i.push(`Merge: ${this.commitSha({length:7})} ${this.commitSha({length:7})}`);let n=this.faker.person.firstName(),o=this.faker.person.lastName(),c=this.faker.person.fullName({firstName:n,lastName:o}),l=this.faker.internet.userName({firstName:n,lastName:o}),s=this.faker.helpers.arrayElement([c,l]),u=this.faker.internet.email({firstName:n,lastName:o});s=s.replaceAll(/^[.,:;"\\']|[<>\n]|[.,:;"\\']$/g,""),i.push(`Author: ${s} <${u}>`,`Date: ${this.commitDate({refDate:a})}`,"",`${" ".repeat(4)}${this.commitMessage()}`,"");let h="CRLF"===r?"\r\n":"\n";return i.join(h)}commitMessage(){return`${this.faker.hacker.verb()} ${this.faker.hacker.adjective()} ${this.faker.hacker.noun()}`}commitDate(e={}){let{refDate:t=this.faker.defaultRefDate()}=e,r=this.faker.date.recent({days:1,refDate:t}),a=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"][r.getUTCDay()],i=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"][r.getUTCMonth()],n=r.getUTCDate(),o=r.getUTCHours().toString().padStart(2,"0"),c=r.getUTCMinutes().toString().padStart(2,"0"),l=r.getUTCSeconds().toString().padStart(2,"0"),s=r.getUTCFullYear(),u=this.faker.number.int({min:-11,max:12});return`${a} ${i} ${n} ${o}:${c}:${l} ${s} ${u>=0?"+":"-"}${Math.abs(u).toString().padStart(2,"0")}00`}commitSha(e={}){let{length:t=40}=e;return this.faker.string.hexadecimal({length:t,casing:"lower",prefix:""})}},wC=class extends _w{abbreviation(){return this.faker.helpers.arrayElement(this.faker.definitions.hacker.abbreviation)}adjective(){return this.faker.helpers.arrayElement(this.faker.definitions.hacker.adjective)}noun(){return this.faker.helpers.arrayElement(this.faker.definitions.hacker.noun)}verb(){return this.faker.helpers.arrayElement(this.faker.definitions.hacker.verb)}ingverb(){return this.faker.helpers.arrayElement(this.faker.definitions.hacker.ingverb)}phrase(){let e={abbreviation:this.abbreviation,adjective:this.adjective,ingverb:this.ingverb,noun:this.noun,verb:this.verb},t=this.faker.helpers.arrayElement(this.faker.definitions.hacker.phrase);return this.faker.helpers.mustache(t,e)}},CC=typeof Buffer>"u"?e=>{let t=(new TextEncoder).encode(e),r=Array.from(t,(e=>String.fromCodePoint(e))).join("");return btoa(r)}:e=>Buffer.from(e).toString("base64"),_C=class extends _w{avatar(){return this.avatarGitHub()}avatarGitHub(){return`https://avatars.githubusercontent.com/u/${this.faker.number.int(1e8)}`}avatarLegacy(){return hC({deprecated:"faker.image.avatarLegacy()",proposed:"faker.image.avatar()",since:"9.0.2",until:"10.0.0"}),`https://cloudflare-ipfs.com/ipfs/Qmd3W5DuhgHirLHGVixi6V76LhCkZUz6pnFt5AJBiyvHye/avatar/${this.faker.number.int(1249)}.jpg`}url(e={}){let{width:t=this.faker.number.int({min:1,max:3999}),height:r=this.faker.number.int({min:1,max:3999})}=e;return this.faker.helpers.arrayElement([this.urlLoremFlickr,({width:e,height:t})=>this.urlPicsumPhotos({width:e,height:t,grayscale:!1,blur:0})])({width:t,height:r})}urlLoremFlickr(e={}){let{width:t=this.faker.number.int({min:1,max:3999}),height:r=this.faker.number.int({min:1,max:3999}),category:a}=e;return`https://loremflickr.com/${t}/${r}${null==a?"":`/${a}`}?lock=${this.faker.number.int()}`}urlPicsumPhotos(e={}){let{width:t=this.faker.number.int({min:1,max:3999}),height:r=this.faker.number.int({min:1,max:3999}),grayscale:a=this.faker.datatype.boolean(),blur:i=this.faker.number.int({max:10})}=e,n=`https://picsum.photos/seed/${this.faker.string.alphanumeric({length:{min:5,max:10}})}/${t}/${r}`,o="number"==typeof i&&i>=1&&i<=10;return(a||o)&&(n+="?",a&&(n+="grayscale"),a&&o&&(n+="&"),o&&(n+=`blur=${i}`)),n}urlPlaceholder(e={}){let{width:t=this.faker.number.int({min:1,max:3999}),height:r=this.faker.number.int({min:1,max:3999}),backgroundColor:a=this.faker.color.rgb({format:"hex",prefix:""}),textColor:i=this.faker.color.rgb({format:"hex",prefix:""}),format:n=this.faker.helpers.arrayElement(["gif","jpeg","jpg","png","webp"]),text:o=this.faker.lorem.words()}=e,c="https://via.placeholder.com";return c+=`/${t}`,c+=`x${r}`,c+=`/${a}`,c+=`/${i}`,c+=`.${n}`,c+=`?text=${encodeURIComponent(o)}`,c}dataUri(e={}){let{width:t=this.faker.number.int({min:1,max:3999}),height:r=this.faker.number.int({min:1,max:3999}),color:a=this.faker.color.rgb(),type:i=this.faker.helpers.arrayElements(["svg-uri","svg-base64"])}=e,n=`${t}x${r}`;return"svg-uri"===i?`data:image/svg+xml;charset=UTF-8,${encodeURIComponent(n)}`:`data:image/svg+xml;base64,${CC(n)}`}},SC=Object.fromEntries([["А","A"],["а","a"],["Б","B"],["б","b"],["В","V"],["в","v"],["Г","G"],["г","g"],["Д","D"],["д","d"],["ъе","ye"],["Ъе","Ye"],["ъЕ","yE"],["ЪЕ","YE"],["Е","E"],["е","e"],["Ё","Yo"],["ё","yo"],["Ж","Zh"],["ж","zh"],["З","Z"],["з","z"],["И","I"],["и","i"],["ый","iy"],["Ый","Iy"],["ЫЙ","IY"],["ыЙ","iY"],["Й","Y"],["й","y"],["К","K"],["к","k"],["Л","L"],["л","l"],["М","M"],["м","m"],["Н","N"],["н","n"],["О","O"],["о","o"],["П","P"],["п","p"],["Р","R"],["р","r"],["С","S"],["с","s"],["Т","T"],["т","t"],["У","U"],["у","u"],["Ф","F"],["ф","f"],["Х","Kh"],["х","kh"],["Ц","Ts"],["ц","ts"],["Ч","Ch"],["ч","ch"],["Ш","Sh"],["ш","sh"],["Щ","Sch"],["щ","sch"],["Ъ",""],["ъ",""],["Ы","Y"],["ы","y"],["Ь",""],["ь",""],["Э","E"],["э","e"],["Ю","Yu"],["ю","yu"],["Я","Ya"],["я","ya"]]),AC=Object.fromEntries([["α","a"],["β","v"],["γ","g"],["δ","d"],["ε","e"],["ζ","z"],["η","i"],["θ","th"],["ι","i"],["κ","k"],["λ","l"],["μ","m"],["ν","n"],["ξ","ks"],["ο","o"],["π","p"],["ρ","r"],["σ","s"],["τ","t"],["υ","y"],["φ","f"],["χ","x"],["ψ","ps"],["ω","o"],["ά","a"],["έ","e"],["ί","i"],["ό","o"],["ύ","y"],["ή","i"],["ώ","o"],["ς","s"],["ϊ","i"],["ΰ","y"],["ϋ","y"],["ΐ","i"],["Α","A"],["Β","B"],["Γ","G"],["Δ","D"],["Ε","E"],["Ζ","Z"],["Η","I"],["Θ","TH"],["Ι","I"],["Κ","K"],["Λ","L"],["Μ","M"],["Ν","N"],["Ξ","KS"],["Ο","O"],["Π","P"],["Ρ","R"],["Σ","S"],["Τ","T"],["Υ","Y"],["Φ","F"],["Χ","X"],["Ψ","PS"],["Ω","O"],["Ά","A"],["Έ","E"],["Ί","I"],["Ό","O"],["Ύ","Y"],["Ή","I"],["Ώ","O"],["Ϊ","I"],["Ϋ","Y"]]),MC=Object.fromEntries([["ء","e"],["آ","a"],["أ","a"],["ؤ","w"],["إ","i"],["ئ","y"],["ا","a"],["ب","b"],["ة","t"],["ت","t"],["ث","th"],["ج","j"],["ح","h"],["خ","kh"],["د","d"],["ذ","dh"],["ر","r"],["ز","z"],["س","s"],["ش","sh"],["ص","s"],["ض","d"],["ط","t"],["ظ","z"],["ع","e"],["غ","gh"],["ـ","_"],["ف","f"],["ق","q"],["ك","k"],["ل","l"],["م","m"],["ن","n"],["ه","h"],["و","w"],["ى","a"],["ي","y"],["َ‎","a"],["ُ","u"],["ِ‎","i"]]),TC=Object.fromEntries([["ա","a"],["Ա","A"],["բ","b"],["Բ","B"],["գ","g"],["Գ","G"],["դ","d"],["Դ","D"],["ե","ye"],["Ե","Ye"],["զ","z"],["Զ","Z"],["է","e"],["Է","E"],["ը","y"],["Ը","Y"],["թ","t"],["Թ","T"],["ժ","zh"],["Ժ","Zh"],["ի","i"],["Ի","I"],["լ","l"],["Լ","L"],["խ","kh"],["Խ","Kh"],["ծ","ts"],["Ծ","Ts"],["կ","k"],["Կ","K"],["հ","h"],["Հ","H"],["ձ","dz"],["Ձ","Dz"],["ղ","gh"],["Ղ","Gh"],["ճ","tch"],["Ճ","Tch"],["մ","m"],["Մ","M"],["յ","y"],["Յ","Y"],["ն","n"],["Ն","N"],["շ","sh"],["Շ","Sh"],["ո","vo"],["Ո","Vo"],["չ","ch"],["Չ","Ch"],["պ","p"],["Պ","P"],["ջ","j"],["Ջ","J"],["ռ","r"],["Ռ","R"],["ս","s"],["Ս","S"],["վ","v"],["Վ","V"],["տ","t"],["Տ","T"],["ր","r"],["Ր","R"],["ց","c"],["Ց","C"],["ու","u"],["ՈՒ","U"],["Ու","U"],["փ","p"],["Փ","P"],["ք","q"],["Ք","Q"],["օ","o"],["Օ","O"],["ֆ","f"],["Ֆ","F"],["և","yev"]]),BC={...SC,...AC,...MC,...Object.fromEntries([["چ","ch"],["ک","k"],["گ","g"],["پ","p"],["ژ","zh"],["ی","y"]]),...TC,...Object.fromEntries([["א","a"],["ב","b"],["ג","g"],["ד","d"],["ה","h"],["ו","v"],["ז","z"],["ח","ch"],["ט","t"],["י","y"],["כ","k"],["ך","kh"],["ל","l"],["ם","m"],["מ","m"],["ן","n"],["נ","n"],["ס","s"],["ע","a"],["פ","f"],["ף","ph"],["צ","ts"],["ץ","ts"],["ק","k"],["ר","r"],["ש","sh"],["ת","t"],["ו","v"]])};function LC(e){let t=()=>e.helpers.arrayElement(["AB","AF","AN","AR","AS","AZ","BE","BG","BN","BO","BR","BS","CA","CE","CO","CS","CU","CY","DA","DE","EL","EN","EO","ES","ET","EU","FA","FI","FJ","FO","FR","FY","GA","GD","GL","GV","HE","HI","HR","HT","HU","HY","ID","IS","IT","JA","JV","KA","KG","KO","KU","KW","KY","LA","LB","LI","LN","LT","LV","MG","MK","MN","MO","MS","MT","MY","NB","NE","NL","NN","NO","OC","PL","PT","RM","RO","RU","SC","SE","SK","SL","SO","SQ","SR","SV","SW","TK","TR","TY","UK","UR","UZ","VI","VO","YI","ZH"]),r=t=>e.helpers.arrayElement({lin:["i686","x86_64"],mac:["Intel","PPC","U; Intel","U; PPC"],win:["","WOW64","Win64; x64"]}[t]),a={net:()=>[e.number.int({min:1,max:4}),e.number.int(9),e.number.int({min:1e4,max:99999}),e.number.int(9)].join("."),nt:()=>[e.number.int({min:5,max:6}),e.number.int(3)].join("."),ie:()=>e.number.int({min:7,max:11}),trident:()=>[e.number.int({min:3,max:7}),e.number.int(1)].join("."),osx:t=>[10,e.number.int({min:5,max:10}),e.number.int(9)].join(t||"."),chrome:()=>[e.number.int({min:13,max:39}),0,e.number.int({min:800,max:899}),0].join("."),presto:()=>`2.9.${e.number.int({min:160,max:190})}`,presto2:()=>`${e.number.int({min:10,max:12})}.00`,safari:()=>[e.number.int({min:531,max:538}),e.number.int(2),e.number.int(2)].join(".")},i={firefox(t){let i=`${e.number.int({min:5,max:15})}${(t=>{let r="";for(let a=0;a=11?`Mozilla/5.0 (Windows NT 6.${e.number.int({min:1,max:3})}; Trident/7.0; ${e.datatype.boolean()?"Touch; ":""}rv:11.0) like Gecko`:`Mozilla/5.0 (compatible; MSIE ${t}.0; Windows NT ${a.nt()}; Trident/${a.trident()}${e.datatype.boolean()?`; .NET CLR ${a.net()}`:""})`},opera(i){let n=` Presto/${a.presto()} Version/${a.presto2()})`,o="win"===i?`(Windows NT ${a.nt()}; U; ${t()}${n}`:"lin"===i?`(X11; Linux ${r(i)}; U; ${t()}${n}`:`(Macintosh; Intel Mac OS X ${a.osx()} U; ${t()} Presto/${a.presto()} Version/${a.presto2()})`;return`Opera/${e.number.int({min:9,max:14})}.${e.number.int(99)} ${o}`},safari(i){let n=a.safari(),o=`${e.number.int({min:4,max:7})}.${e.number.int(1)}.${e.number.int(10)}`;return`Mozilla/5.0 ${"mac"===i?`(Macintosh; ${r("mac")} Mac OS X ${a.osx("_")} rv:${e.number.int({min:2,max:6})}.0; ${t()}) `:`(Windows; U; Windows NT ${a.nt()})`}AppleWebKit/${n} (KHTML, like Gecko) Version/${o} Safari/${n}`},chrome(e){let t=a.safari();return`Mozilla/5.0 ${"mac"===e?`(Macintosh; ${r("mac")} Mac OS X ${a.osx("_")}) `:"win"===e?`(Windows; U; Windows NT ${a.nt()})`:`(X11; Linux ${r(e)}`} AppleWebKit/${t} (KHTML, like Gecko) Chrome/${a.chrome()} Safari/${t}`}},[n,o]=(()=>{let t={chrome:["win","mac","lin"],firefox:["win","mac","lin"],opera:["win","mac","lin"],safari:["win","mac"],iexplorer:["win"]},r=e.helpers.objectKey(t);return[r,e.helpers.arrayElement(t[r])]})();return i[n](o)}var EC=class extends _w{email(e={}){let{firstName:t,lastName:r,provider:a=this.faker.helpers.arrayElement(this.faker.definitions.internet.free_email),allowSpecialCharacters:i=!1}=e,n=this.userName({firstName:t,lastName:r});if(n=n.replaceAll(/[^A-Za-z0-9._+-]+/g,""),n=n.substring(0,50),i){let e=[..."._-"],t=[...".!#$%&'*+-/=?^_`{|}~"];n=n.replace(this.faker.helpers.arrayElement(e),this.faker.helpers.arrayElement(t))}return n=n.replaceAll(/\.{2,}/g,"."),n=n.replace(/^\./,""),n=n.replace(/\.$/,""),`${n}@${a}`}exampleEmail(e={}){let{firstName:t,lastName:r,allowSpecialCharacters:a=!1}=e,i=this.faker.helpers.arrayElement(this.faker.definitions.internet.example_email);return this.email({firstName:t,lastName:r,provider:i,allowSpecialCharacters:a})}userName(e={}){let{firstName:t=this.faker.person.firstName(),lastName:r=this.faker.person.lastName(),lastName:a}=e,i=this.faker.helpers.arrayElement([".","_"]),n=this.faker.number.int(99),o=[()=>`${t}${i}${r}${n}`,()=>`${t}${i}${r}`];a||o.push((()=>`${t}${n}`));let c=this.faker.helpers.arrayElement(o)();return c=c.normalize("NFKD").replaceAll(/[\u0300-\u036F]/g,""),c=[...c].map((e=>{if(BC[e])return BC[e];let t=e.codePointAt(0)??Number.NaN;return t<128?e:t.toString(36)})).join(""),c=c.toString().replaceAll("'",""),c=c.replaceAll(" ",""),c}displayName(e={}){let{firstName:t=this.faker.person.firstName(),lastName:r=this.faker.person.lastName()}=e,a=this.faker.helpers.arrayElement([".","_"]),i=this.faker.number.int(99),n=[()=>`${t}${i}`,()=>`${t}${a}${r}`,()=>`${t}${a}${r}${i}`],o=this.faker.helpers.arrayElement(n)();return o=o.toString().replaceAll("'",""),o=o.replaceAll(" ",""),o}protocol(){return this.faker.helpers.arrayElement(["http","https"])}httpMethod(){return this.faker.helpers.arrayElement(["GET","POST","PUT","DELETE","PATCH"])}httpStatusCode(e={}){let{types:t=Object.keys(this.faker.definitions.internet.http_status_code)}=e,r=this.faker.helpers.arrayElement(t);return this.faker.helpers.arrayElement(this.faker.definitions.internet.http_status_code[r])}url(e={}){let{appendSlash:t=this.faker.datatype.boolean(),protocol:r="https"}=e;return`${r}://${this.domainName()}${t?"/":""}`}domainName(){return`${this.domainWord()}.${this.domainSuffix()}`}domainSuffix(){return this.faker.helpers.arrayElement(this.faker.definitions.internet.domain_suffix)}domainWord(){return this.faker.helpers.slugify(`${this.faker.word.adjective()}-${this.faker.word.noun()}`).toLowerCase()}ip(){return this.faker.datatype.boolean()?this.ipv4():this.ipv6()}ipv4(){return Array.from({length:4},(()=>this.faker.number.int(255))).join(".")}ipv6(){return Array.from({length:8},(()=>this.faker.string.hexadecimal({length:4,casing:"lower",prefix:""}))).join(":")}port(){return this.faker.number.int(65535)}userAgent(){return LC(this.faker)}color(e={}){let{redBase:t=0,greenBase:r=0,blueBase:a=0}=e,i=e=>Math.floor((this.faker.number.int(256)+e)/2).toString(16).padStart(2,"0");return`#${i(t)}${i(r)}${i(a)}`}mac(e={}){"string"==typeof e&&(e={separator:e});let t,{separator:r=":"}=e,a="";for([":","-",""].includes(r)||(r=":"),t=0;t<12;t++)a+=this.faker.number.hex(15),t%2==1&&11!==t&&(a+=r);return a}password(e={}){let t=/[aeiouAEIOU]$/,r=/[bcdfghjklmnpqrstvwxyzBCDFGHJKLMNPQRSTVWXYZ]$/,a=(e,i,n,o)=>{if(o.length>=e)return o;i&&(n=r.test(o)?t:r);let c=this.faker.number.int(94)+33,l=String.fromCodePoint(c);return i&&(l=l.toLowerCase()),n.test(l)?a(e,i,n,o+l):a(e,i,n,o)},{length:i=15,memorable:n=!1,pattern:o=/\w/,prefix:c=""}=e;return a(i,n,o,c)}emoji(e={}){let{types:t=Object.keys(this.faker.definitions.internet.emoji)}=e,r=this.faker.helpers.arrayElement(t);return this.faker.helpers.arrayElement(this.faker.definitions.internet.emoji[r])}},RC=class extends _w{zipCode(e={}){"string"==typeof e&&(e={format:e});let{state:t}=e;if(null!=t){let e=this.faker.definitions.location.postcode_by_state[t];if(null==e)throw new ww(`No zip code definition found for state "${t}"`);return this.faker.helpers.fake(e)}let{format:r=this.faker.definitions.location.postcode}=e;return"string"==typeof r&&(r=[r]),r=this.faker.helpers.arrayElement(r),this.faker.helpers.replaceSymbols(r)}city(){return this.faker.helpers.fake(this.faker.definitions.location.city_pattern)}buildingNumber(){return this.faker.helpers.arrayElement(this.faker.definitions.location.building_number).replaceAll(/#+/g,(e=>this.faker.string.numeric({length:e.length,allowLeadingZeros:!1})))}street(){return this.faker.helpers.fake(this.faker.definitions.location.street_pattern)}streetAddress(e={}){"boolean"==typeof e&&(e={useFullAddress:e});let{useFullAddress:t}=e,r=this.faker.definitions.location.street_address[t?"full":"normal"];return this.faker.helpers.fake(r)}secondaryAddress(){return this.faker.helpers.fake(this.faker.definitions.location.secondary_address).replaceAll(/#+/g,(e=>this.faker.string.numeric({length:e.length,allowLeadingZeros:!1})))}county(){return this.faker.helpers.arrayElement(this.faker.definitions.location.county)}country(){return this.faker.helpers.arrayElement(this.faker.definitions.location.country)}countryCode(e={}){"string"==typeof e&&(e={variant:e});let{variant:t="alpha-2"}=e,r=(()=>{switch(t){case"numeric":return"numeric";case"alpha-3":return"alpha3";case"alpha-2":return"alpha2"}})();return this.faker.helpers.arrayElement(this.faker.definitions.location.country_code)[r]}state(e={}){let{abbreviated:t=!1}=e,r=t?this.faker.definitions.location.state_abbr:this.faker.definitions.location.state;return this.faker.helpers.arrayElement(r)}latitude(e={}){let{max:t=90,min:r=-90,precision:a=4}=e;return this.faker.number.float({min:r,max:t,fractionDigits:a})}longitude(e={}){let{max:t=180,min:r=-180,precision:a=4}=e;return this.faker.number.float({max:t,min:r,fractionDigits:a})}direction(e={}){let{abbreviated:t=!1}=e;return t?this.faker.helpers.arrayElement([...this.faker.definitions.location.direction.cardinal_abbr,...this.faker.definitions.location.direction.ordinal_abbr]):this.faker.helpers.arrayElement([...this.faker.definitions.location.direction.cardinal,...this.faker.definitions.location.direction.ordinal])}cardinalDirection(e={}){let{abbreviated:t=!1}=e;return t?this.faker.helpers.arrayElement(this.faker.definitions.location.direction.cardinal_abbr):this.faker.helpers.arrayElement(this.faker.definitions.location.direction.cardinal)}ordinalDirection(e={}){let{abbreviated:t=!1}=e;return t?this.faker.helpers.arrayElement(this.faker.definitions.location.direction.ordinal_abbr):this.faker.helpers.arrayElement(this.faker.definitions.location.direction.ordinal)}nearbyGPSCoordinate(e={}){let{origin:t,radius:r=10,isMetric:a=!1}=e;if(null==t)return[this.latitude(),this.longitude()];let i=this.faker.number.float({max:2*Math.PI,fractionDigits:5}),n=a?r:1.60934*r,o=.995*this.faker.number.float({max:n,fractionDigits:3})/(4e4/360),c=[t[0]+Math.sin(i)*o,t[1]+Math.cos(i)*o];return c[0]=c[0]%180,(c[0]<-90||c[0]>90)&&(c[0]=180*Math.sign(c[0])-c[0],c[1]+=180),c[1]=(c[1]%360+540)%360-180,[c[0],c[1]]}timeZone(){return this.faker.helpers.arrayElement(this.faker.definitions.location.time_zone)}};var HC={fail:()=>{throw new ww("No words found that match the given length.")},closest:(e,t)=>{let r=function(e,t,r=e=>e){let a={};for(let i of e){let e=t(i);void 0===a[e]&&(a[e]=[]),a[e].push(r(i))}return a}(e,(e=>e.length)),a=Object.keys(r).map(Number),i=Math.min(...a),n=Math.max(...a),o=Math.min(t.min-i,n-t.max);return e.filter((e=>e.length===t.min-o||e.length===t.max+o))},shortest:e=>{let t=Math.min(...e.map((e=>e.length)));return e.filter((e=>e.length===t))},longest:e=>{let t=Math.max(...e.map((e=>e.length)));return e.filter((e=>e.length===t))},"any-length":e=>[...e]};function DC(e){let{wordList:t,length:r,strategy:a="any-length"}=e;if(r){let e="number"==typeof r?e=>e.length===r:e=>e.length>=r.min&&e.length<=r.max,i=t.filter(e);return i.length>0?i:"number"==typeof r?HC[a](t,{min:r,max:r}):HC[a](t,r)}return"shortest"===a||"longest"===a?HC[a](t):[...t]}var PC=class extends _w{word(e={}){let t="number"==typeof e?{length:e}:e;return this.faker.helpers.arrayElement(DC({...t,wordList:this.faker.definitions.lorem.word}))}words(e=3){return this.faker.helpers.multiple((()=>this.word()),{count:e}).join(" ")}sentence(e={min:3,max:10}){let t=this.words(e);return`${t.charAt(0).toUpperCase()+t.substring(1)}.`}slug(e=3){let t=this.words(e);return this.faker.helpers.slugify(t)}sentences(e={min:2,max:6},t=" "){return this.faker.helpers.multiple((()=>this.sentence()),{count:e}).join(t)}paragraph(e=3){return this.sentences(e)}paragraphs(e=3,t="\n"){return this.faker.helpers.multiple((()=>this.paragraph()),{count:e}).join(t)}text(){return this[this.faker.helpers.arrayElement(["sentence","sentences","paragraph","paragraphs","lines"])]()}lines(e={min:1,max:5}){return this.sentences(e,"\n")}},NC=class extends _w{album(){return this.faker.helpers.arrayElement(this.faker.definitions.music.album)}artist(){return this.faker.helpers.arrayElement(this.faker.definitions.music.artist)}genre(){return this.faker.helpers.arrayElement(this.faker.definitions.music.genre)}songName(){return this.faker.helpers.arrayElement(this.faker.definitions.music.song_name)}},GC=class extends _w{number(e={}){let{style:t="human"}=e,r=this.faker.definitions.phone_number.format[t];if(!r)throw new Error(`No definitions for ${t} in this locale`);let a=this.faker.helpers.arrayElement(r);return rC(this.faker,a)}imei(){return this.faker.helpers.replaceCreditCardSymbols("##-######-######-L","#")}},IC=class extends _w{chemicalElement(){return this.faker.helpers.arrayElement(this.faker.definitions.science.chemical_element)}unit(){return this.faker.helpers.arrayElement(this.faker.definitions.science.unit)}},WC=["video","audio","image","text","application"],FC=["application/pdf","audio/mpeg","audio/wav","image/png","image/jpeg","image/gif","video/mp4","video/mpeg","text/html"],zC=["en","wl","ww"],OC={index:"o",slot:"s",mac:"x",pci:"p"},KC=["SUN","MON","TUE","WED","THU","FRI","SAT"],JC=class extends _w{fileName(e={}){let{extensionCount:t=1}=e,r=this.faker.word.words().toLowerCase().replaceAll(/\W/g,"_"),a=this.faker.helpers.multiple((()=>this.fileExt()),{count:t}).join(".");return 0===a.length?r:`${r}.${a}`}commonFileName(e){return`${this.fileName({extensionCount:0})}.${e||this.commonFileExt()}`}mimeType(){let e=Object.keys(this.faker.definitions.system.mime_type);return this.faker.helpers.arrayElement(e)}commonFileType(){return this.faker.helpers.arrayElement(WC)}commonFileExt(){return this.fileExt(this.faker.helpers.arrayElement(FC))}fileType(){let e=this.faker.definitions.system.mime_type,t=new Set(Object.keys(e).map((e=>e.split("/")[0])));return this.faker.helpers.arrayElement([...t])}fileExt(e){let t=this.faker.definitions.system.mime_type;if("string"==typeof e)return this.faker.helpers.arrayElement(t[e].extensions);let r=new Set(Object.values(t).flatMap((({extensions:e})=>e)));return this.faker.helpers.arrayElement([...r])}directoryPath(){let e=this.faker.definitions.system.directory_path;return this.faker.helpers.arrayElement(e)}filePath(){return`${this.directoryPath()}/${this.fileName()}`}semver(){return[this.faker.number.int(9),this.faker.number.int(9),this.faker.number.int(9)].join(".")}networkInterface(e={}){let t,{interfaceType:r=this.faker.helpers.arrayElement(zC),interfaceSchema:a=this.faker.helpers.objectKey(OC)}=e,i="",n=()=>this.faker.string.numeric({allowLeadingZeros:!0});switch(a){case"index":t=n();break;case"slot":t=`${n()}${this.faker.helpers.maybe((()=>`f${n()}`))??""}${this.faker.helpers.maybe((()=>`d${n()}`))??""}`;break;case"mac":t=this.faker.internet.mac("");break;case"pci":i=this.faker.helpers.maybe((()=>`P${n()}`))??"",t=`${n()}s${n()}${this.faker.helpers.maybe((()=>`f${n()}`))??""}${this.faker.helpers.maybe((()=>`d${n()}`))??""}`}return`${i}${r}${OC[a]}${t}`}cron(e={}){let{includeYear:t=!1,includeNonStandard:r=!1}=e,a=[this.faker.number.int(59),"*"],i=[this.faker.number.int(23),"*"],n=[this.faker.number.int({min:1,max:31}),"*","?"],o=[this.faker.number.int({min:1,max:12}),"*"],c=[this.faker.number.int(6),this.faker.helpers.arrayElement(KC),"*","?"],l=[this.faker.number.int({min:1970,max:2099}),"*"],s=this.faker.helpers.arrayElement(a),u=this.faker.helpers.arrayElement(i),h=this.faker.helpers.arrayElement(n),d=this.faker.helpers.arrayElement(o),p=this.faker.helpers.arrayElement(c),y=this.faker.helpers.arrayElement(l),f=`${s} ${u} ${h} ${d} ${p}`;t&&(f+=` ${y}`);return!r||this.faker.datatype.boolean()?f:this.faker.helpers.arrayElement(["@annually","@daily","@hourly","@monthly","@reboot","@weekly","@yearly"])}},VC=class extends _w{vehicle(){return`${this.manufacturer()} ${this.model()}`}manufacturer(){return this.faker.helpers.arrayElement(this.faker.definitions.vehicle.manufacturer)}model(){return this.faker.helpers.arrayElement(this.faker.definitions.vehicle.model)}type(){return this.faker.helpers.arrayElement(this.faker.definitions.vehicle.type)}fuel(){return this.faker.helpers.arrayElement(this.faker.definitions.vehicle.fuel)}vin(){let e=["o","i","q","O","I","Q"];return`${this.faker.string.alphanumeric({length:10,casing:"upper",exclude:e})}${this.faker.string.alpha({length:1,casing:"upper",exclude:e})}${this.faker.string.alphanumeric({length:1,casing:"upper",exclude:e})}${this.faker.string.numeric({length:5,allowLeadingZeros:!0})}`}color(){return this.faker.color.human()}vrm(){return`${this.faker.string.alpha({length:2,casing:"upper"})}${this.faker.string.numeric({length:2,allowLeadingZeros:!0})}${this.faker.string.alpha({length:3,casing:"upper"})}`}bicycle(){return this.faker.helpers.arrayElement(this.faker.definitions.vehicle.bicycle_type)}},jC=class extends _w{adjective(e={}){let t="number"==typeof e?{length:e}:e;return this.faker.helpers.arrayElement(DC({...t,wordList:this.faker.definitions.word.adjective}))}adverb(e={}){let t="number"==typeof e?{length:e}:e;return this.faker.helpers.arrayElement(DC({...t,wordList:this.faker.definitions.word.adverb}))}conjunction(e={}){let t="number"==typeof e?{length:e}:e;return this.faker.helpers.arrayElement(DC({...t,wordList:this.faker.definitions.word.conjunction}))}interjection(e={}){let t="number"==typeof e?{length:e}:e;return this.faker.helpers.arrayElement(DC({...t,wordList:this.faker.definitions.word.interjection}))}noun(e={}){let t="number"==typeof e?{length:e}:e;return this.faker.helpers.arrayElement(DC({...t,wordList:this.faker.definitions.word.noun}))}preposition(e={}){let t="number"==typeof e?{length:e}:e;return this.faker.helpers.arrayElement(DC({...t,wordList:this.faker.definitions.word.preposition}))}verb(e={}){let t="number"==typeof e?{length:e}:e;return this.faker.helpers.arrayElement(DC({...t,wordList:this.faker.definitions.word.verb}))}sample(e={}){let t=this.faker.helpers.shuffle([this.adjective,this.adverb,this.conjunction,this.interjection,this.noun,this.preposition,this.verb]);for(let r of t)try{return r(e)}catch{continue}throw new ww("No matching word data available for the current locale")}words(e={}){"number"==typeof e&&(e={count:e});let{count:t={min:1,max:3}}=e;return this.faker.helpers.multiple((()=>this.sample()),{count:t}).join(" ")}},YC=["Africa/Abidjan","Africa/Accra","Africa/Addis_Ababa","Africa/Algiers","Africa/Asmara","Africa/Bamako","Africa/Bangui","Africa/Banjul","Africa/Bissau","Africa/Blantyre","Africa/Brazzaville","Africa/Bujumbura","Africa/Cairo","Africa/Casablanca","Africa/Ceuta","Africa/Conakry","Africa/Dakar","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Douala","Africa/El_Aaiun","Africa/Freetown","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Kigali","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Lome","Africa/Luanda","Africa/Lubumbashi","Africa/Lusaka","Africa/Malabo","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Africa/Mogadishu","Africa/Monrovia","Africa/Nairobi","Africa/Ndjamena","Africa/Niamey","Africa/Nouakchott","Africa/Ouagadougou","Africa/Porto-Novo","Africa/Sao_Tome","Africa/Tripoli","Africa/Tunis","Africa/Windhoek","America/Adak","America/Anchorage","America/Anguilla","America/Antigua","America/Araguaina","America/Argentina/Buenos_Aires","America/Argentina/Catamarca","America/Argentina/Cordoba","America/Argentina/Jujuy","America/Argentina/La_Rioja","America/Argentina/Mendoza","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Aruba","America/Asuncion","America/Atikokan","America/Bahia","America/Bahia_Banderas","America/Barbados","America/Belem","America/Belize","America/Blanc-Sablon","America/Boa_Vista","America/Bogota","America/Boise","America/Cambridge_Bay","America/Campo_Grande","America/Cancun","America/Caracas","America/Cayenne","America/Cayman","America/Chicago","America/Chihuahua","America/Ciudad_Juarez","America/Costa_Rica","America/Creston","America/Cuiaba","America/Curacao","America/Danmarkshavn","America/Dawson","America/Dawson_Creek","America/Denver","America/Detroit","America/Dominica","America/Edmonton","America/Eirunepe","America/El_Salvador","America/Fort_Nelson","America/Fortaleza","America/Glace_Bay","America/Goose_Bay","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guatemala","America/Guayaquil","America/Guyana","America/Halifax","America/Havana","America/Hermosillo","America/Indiana/Indianapolis","America/Indiana/Knox","America/Indiana/Marengo","America/Indiana/Petersburg","America/Indiana/Tell_City","America/Indiana/Vevay","America/Indiana/Vincennes","America/Indiana/Winamac","America/Inuvik","America/Iqaluit","America/Jamaica","America/Juneau","America/Kentucky/Louisville","America/Kentucky/Monticello","America/Kralendijk","America/La_Paz","America/Lima","America/Los_Angeles","America/Lower_Princes","America/Maceio","America/Managua","America/Manaus","America/Marigot","America/Martinique","America/Matamoros","America/Mazatlan","America/Menominee","America/Merida","America/Metlakatla","America/Mexico_City","America/Miquelon","America/Moncton","America/Monterrey","America/Montevideo","America/Montserrat","America/Nassau","America/New_York","America/Nome","America/Noronha","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Nuuk","America/Ojinaga","America/Panama","America/Paramaribo","America/Phoenix","America/Port-au-Prince","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Punta_Arenas","America/Rankin_Inlet","America/Recife","America/Regina","America/Resolute","America/Rio_Branco","America/Santarem","America/Santiago","America/Santo_Domingo","America/Sao_Paulo","America/Scoresbysund","America/Sitka","America/St_Barthelemy","America/St_Johns","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Swift_Current","America/Tegucigalpa","America/Thule","America/Tijuana","America/Toronto","America/Tortola","America/Vancouver","America/Whitehorse","America/Winnipeg","America/Yakutat","America/Yellowknife","Antarctica/Casey","Antarctica/Davis","Antarctica/DumontDUrville","Antarctica/Macquarie","Antarctica/Mawson","Antarctica/McMurdo","Antarctica/Palmer","Antarctica/Rothera","Antarctica/Syowa","Antarctica/Troll","Antarctica/Vostok","Arctic/Longyearbyen","Asia/Aden","Asia/Almaty","Asia/Amman","Asia/Anadyr","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Atyrau","Asia/Baghdad","Asia/Bahrain","Asia/Baku","Asia/Bangkok","Asia/Barnaul","Asia/Beirut","Asia/Bishkek","Asia/Brunei","Asia/Chita","Asia/Choibalsan","Asia/Colombo","Asia/Damascus","Asia/Dhaka","Asia/Dili","Asia/Dubai","Asia/Dushanbe","Asia/Famagusta","Asia/Gaza","Asia/Hebron","Asia/Ho_Chi_Minh","Asia/Hong_Kong","Asia/Hovd","Asia/Irkutsk","Asia/Jakarta","Asia/Jayapura","Asia/Jerusalem","Asia/Kabul","Asia/Kamchatka","Asia/Karachi","Asia/Kathmandu","Asia/Khandyga","Asia/Kolkata","Asia/Krasnoyarsk","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Kuwait","Asia/Macau","Asia/Magadan","Asia/Makassar","Asia/Manila","Asia/Muscat","Asia/Nicosia","Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk","Asia/Oral","Asia/Phnom_Penh","Asia/Pontianak","Asia/Pyongyang","Asia/Qatar","Asia/Qostanay","Asia/Qyzylorda","Asia/Riyadh","Asia/Sakhalin","Asia/Samarkand","Asia/Seoul","Asia/Shanghai","Asia/Singapore","Asia/Srednekolymsk","Asia/Taipei","Asia/Tashkent","Asia/Tbilisi","Asia/Tehran","Asia/Thimphu","Asia/Tokyo","Asia/Tomsk","Asia/Ulaanbaatar","Asia/Urumqi","Asia/Ust-Nera","Asia/Vientiane","Asia/Vladivostok","Asia/Yakutsk","Asia/Yangon","Asia/Yekaterinburg","Asia/Yerevan","Atlantic/Azores","Atlantic/Bermuda","Atlantic/Canary","Atlantic/Cape_Verde","Atlantic/Faroe","Atlantic/Madeira","Atlantic/Reykjavik","Atlantic/South_Georgia","Atlantic/St_Helena","Atlantic/Stanley","Australia/Adelaide","Australia/Brisbane","Australia/Broken_Hill","Australia/Darwin","Australia/Eucla","Australia/Hobart","Australia/Lindeman","Australia/Lord_Howe","Australia/Melbourne","Australia/Perth","Australia/Sydney","Europe/Amsterdam","Europe/Andorra","Europe/Astrakhan","Europe/Athens","Europe/Belgrade","Europe/Berlin","Europe/Bratislava","Europe/Brussels","Europe/Bucharest","Europe/Budapest","Europe/Busingen","Europe/Chisinau","Europe/Copenhagen","Europe/Dublin","Europe/Gibraltar","Europe/Guernsey","Europe/Helsinki","Europe/Isle_of_Man","Europe/Istanbul","Europe/Jersey","Europe/Kaliningrad","Europe/Kirov","Europe/Kyiv","Europe/Lisbon","Europe/Ljubljana","Europe/London","Europe/Luxembourg","Europe/Madrid","Europe/Malta","Europe/Mariehamn","Europe/Minsk","Europe/Monaco","Europe/Moscow","Europe/Oslo","Europe/Paris","Europe/Podgorica","Europe/Prague","Europe/Riga","Europe/Rome","Europe/Samara","Europe/San_Marino","Europe/Sarajevo","Europe/Saratov","Europe/Simferopol","Europe/Skopje","Europe/Sofia","Europe/Stockholm","Europe/Tallinn","Europe/Tirane","Europe/Ulyanovsk","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Vilnius","Europe/Volgograd","Europe/Warsaw","Europe/Zagreb","Europe/Zurich","Indian/Antananarivo","Indian/Chagos","Indian/Christmas","Indian/Cocos","Indian/Comoro","Indian/Kerguelen","Indian/Mahe","Indian/Maldives","Indian/Mauritius","Indian/Mayotte","Indian/Reunion","Pacific/Apia","Pacific/Auckland","Pacific/Bougainville","Pacific/Chatham","Pacific/Chuuk","Pacific/Easter","Pacific/Efate","Pacific/Fakaofo","Pacific/Fiji","Pacific/Funafuti","Pacific/Galapagos","Pacific/Gambier","Pacific/Guadalcanal","Pacific/Guam","Pacific/Honolulu","Pacific/Kanton","Pacific/Kiritimati","Pacific/Kosrae","Pacific/Kwajalein","Pacific/Majuro","Pacific/Marquesas","Pacific/Midway","Pacific/Nauru","Pacific/Niue","Pacific/Norfolk","Pacific/Noumea","Pacific/Pago_Pago","Pacific/Palau","Pacific/Pitcairn","Pacific/Pohnpei","Pacific/Port_Moresby","Pacific/Rarotonga","Pacific/Saipan","Pacific/Tahiti","Pacific/Tarawa","Pacific/Tongatapu","Pacific/Wake","Pacific/Wallis"],$C={color:{space:["Academy Color Encoding System (ACES)","Adobe RGB","Adobe Wide Gamut RGB","British Standard Colour (BS)","CIE 1931 XYZ","CIELAB","CIELUV","CIEUVW","CMY","CMYK","DCI-P3","Display-P3","Federal Standard 595C","HKS","HSL","HSLA","HSLuv","HSV","HWB","LCh","LMS","Munsell Color System","Natural Color System (NSC)","Pantone Matching System (PMS)","ProPhoto RGB Color Space","RAL","RG","RGBA","RGK","Rec. 2020","Rec. 2100","Rec. 601","Rec. 709","Uniform Color Spaces (UCSs)","YDbDr","YIQ","YPbPr","sRGB","sYCC","scRGB","xvYCC"]},database:{collation:["ascii_bin","ascii_general_ci","cp1250_bin","cp1250_general_ci","utf8_bin","utf8_general_ci","utf8_unicode_ci"],engine:["ARCHIVE","BLACKHOLE","CSV","InnoDB","MEMORY","MyISAM"],type:["bigint","binary","bit","blob","boolean","date","datetime","decimal","double","enum","float","geometry","int","mediumint","point","real","serial","set","smallint","text","time","timestamp","tinyint","varchar"]},date:{time_zone:YC},hacker:{abbreviation:["ADP","AGP","AI","API","ASCII","CLI","COM","CSS","DNS","DRAM","EXE","FTP","GB","HDD","HEX","HTTP","IB","IP","JBOD","JSON","OCR","PCI","PNG","RAM","RSS","SAS","SCSI","SDD","SMS","SMTP","SQL","SSD","SSL","TCP","THX","TLS","UDP","USB","UTF8","VGA","XML","XSS"]},internet:{emoji:{smiley:["😀","😃","😄","😁","😆","😅","🤣","😂","🙂","🙃","😉","😊","😇","🥰","😍","🤩","😘","😗","☺️","😚","😙","🥲","😋","😛","😜","🤪","😝","🤑","🤗","🤭","🤫","🤔","🤐","🤨","😐","😑","😶","😶‍🌫️","😏","😒","🙄","😬","😮‍💨","🤥","😌","😔","😪","🤤","😴","😷","🤒","🤕","🤢","🤮","🤧","🥵","🥶","🥴","😵","😵‍💫","🤯","🤠","🥳","🥸","😎","🤓","🧐","😕","😟","🙁","☹️","😮","😯","😲","😳","🥺","😦","😧","😨","😰","😥","😢","😭","😱","😖","😣","😞","😓","😩","😫","🥱","😤","😡","😠","🤬","😈","👿","💀","☠️","💩","🤡","👹","👺","👻","👽","👾","🤖","😺","😸","😹","😻","😼","😽","🙀","😿","😾","🙈","🙉","🙊","💋","💌","💘","💝","💖","💗","💓","💞","💕","💟","❣️","💔","❤️‍🔥","❤️‍🩹","❤️","🧡","💛","💚","💙","💜","🤎","🖤","🤍","💯","💢","💥","💫","💦","💨","🕳️","💣","💬","👁️‍🗨️","🗨️","🗯️","💭","💤"],body:["👋","👋🏻","👋🏼","👋🏽","👋🏾","👋🏿","🤚","🤚🏻","🤚🏼","🤚🏽","🤚🏾","🤚🏿","🖐️","🖐🏻","🖐🏼","🖐🏽","🖐🏾","🖐🏿","✋","✋🏻","✋🏼","✋🏽","✋🏾","✋🏿","🖖","🖖🏻","🖖🏼","🖖🏽","🖖🏾","🖖🏿","👌","👌🏻","👌🏼","👌🏽","👌🏾","👌🏿","🤌","🤌🏻","🤌🏼","🤌🏽","🤌🏾","🤌🏿","🤏","🤏🏻","🤏🏼","🤏🏽","🤏🏾","🤏🏿","✌️","✌🏻","✌🏼","✌🏽","✌🏾","✌🏿","🤞","🤞🏻","🤞🏼","🤞🏽","🤞🏾","🤞🏿","🤟","🤟🏻","🤟🏼","🤟🏽","🤟🏾","🤟🏿","🤘","🤘🏻","🤘🏼","🤘🏽","🤘🏾","🤘🏿","🤙","🤙🏻","🤙🏼","🤙🏽","🤙🏾","🤙🏿","👈","👈🏻","👈🏼","👈🏽","👈🏾","👈🏿","👉","👉🏻","👉🏼","👉🏽","👉🏾","👉🏿","👆","👆🏻","👆🏼","👆🏽","👆🏾","👆🏿","🖕","🖕🏻","🖕🏼","🖕🏽","🖕🏾","🖕🏿","👇","👇🏻","👇🏼","👇🏽","👇🏾","👇🏿","☝️","☝🏻","☝🏼","☝🏽","☝🏾","☝🏿","👍","👍🏻","👍🏼","👍🏽","👍🏾","👍🏿","👎","👎🏻","👎🏼","👎🏽","👎🏾","👎🏿","✊","✊🏻","✊🏼","✊🏽","✊🏾","✊🏿","👊","👊🏻","👊🏼","👊🏽","👊🏾","👊🏿","🤛","🤛🏻","🤛🏼","🤛🏽","🤛🏾","🤛🏿","🤜","🤜🏻","🤜🏼","🤜🏽","🤜🏾","🤜🏿","👏","👏🏻","👏🏼","👏🏽","👏🏾","👏🏿","🙌","🙌🏻","🙌🏼","🙌🏽","🙌🏾","🙌🏿","👐","👐🏻","👐🏼","👐🏽","👐🏾","👐🏿","🤲","🤲🏻","🤲🏼","🤲🏽","🤲🏾","🤲🏿","🤝","🙏","🙏🏻","🙏🏼","🙏🏽","🙏🏾","🙏🏿","✍️","✍🏻","✍🏼","✍🏽","✍🏾","✍🏿","💅","💅🏻","💅🏼","💅🏽","💅🏾","💅🏿","🤳","🤳🏻","🤳🏼","🤳🏽","🤳🏾","🤳🏿","💪","💪🏻","💪🏼","💪🏽","💪🏾","💪🏿","🦾","🦿","🦵","🦵🏻","🦵🏼","🦵🏽","🦵🏾","🦵🏿","🦶","🦶🏻","🦶🏼","🦶🏽","🦶🏾","🦶🏿","👂","👂🏻","👂🏼","👂🏽","👂🏾","👂🏿","🦻","🦻🏻","🦻🏼","🦻🏽","🦻🏾","🦻🏿","👃","👃🏻","👃🏼","👃🏽","👃🏾","👃🏿","🧠","🫀","🫁","🦷","🦴","👀","👁️","👅","👄"],person:["👶","👶🏻","👶🏼","👶🏽","👶🏾","👶🏿","🧒","🧒🏻","🧒🏼","🧒🏽","🧒🏾","🧒🏿","👦","👦🏻","👦🏼","👦🏽","👦🏾","👦🏿","👧","👧🏻","👧🏼","👧🏽","👧🏾","👧🏿","🧑","🧑🏻","🧑🏼","🧑🏽","🧑🏾","🧑🏿","👱","👱🏻","👱🏼","👱🏽","👱🏾","👱🏿","👨","👨🏻","👨🏼","👨🏽","👨🏾","👨🏿","🧔","🧔🏻","🧔🏼","🧔🏽","🧔🏾","🧔🏿","🧔‍♂️","🧔🏻‍♂️","🧔🏼‍♂️","🧔🏽‍♂️","🧔🏾‍♂️","🧔🏿‍♂️","🧔‍♀️","🧔🏻‍♀️","🧔🏼‍♀️","🧔🏽‍♀️","🧔🏾‍♀️","🧔🏿‍♀️","👨‍🦰","👨🏻‍🦰","👨🏼‍🦰","👨🏽‍🦰","👨🏾‍🦰","👨🏿‍🦰","👨‍🦱","👨🏻‍🦱","👨🏼‍🦱","👨🏽‍🦱","👨🏾‍🦱","👨🏿‍🦱","👨‍🦳","👨🏻‍🦳","👨🏼‍🦳","👨🏽‍🦳","👨🏾‍🦳","👨🏿‍🦳","👨‍🦲","👨🏻‍🦲","👨🏼‍🦲","👨🏽‍🦲","👨🏾‍🦲","👨🏿‍🦲","👩","👩🏻","👩🏼","👩🏽","👩🏾","👩🏿","👩‍🦰","👩🏻‍🦰","👩🏼‍🦰","👩🏽‍🦰","👩🏾‍🦰","👩🏿‍🦰","🧑‍🦰","🧑🏻‍🦰","🧑🏼‍🦰","🧑🏽‍🦰","🧑🏾‍🦰","🧑🏿‍🦰","👩‍🦱","👩🏻‍🦱","👩🏼‍🦱","👩🏽‍🦱","👩🏾‍🦱","👩🏿‍🦱","🧑‍🦱","🧑🏻‍🦱","🧑🏼‍🦱","🧑🏽‍🦱","🧑🏾‍🦱","🧑🏿‍🦱","👩‍🦳","👩🏻‍🦳","👩🏼‍🦳","👩🏽‍🦳","👩🏾‍🦳","👩🏿‍🦳","🧑‍🦳","🧑🏻‍🦳","🧑🏼‍🦳","🧑🏽‍🦳","🧑🏾‍🦳","🧑🏿‍🦳","👩‍🦲","👩🏻‍🦲","👩🏼‍🦲","👩🏽‍🦲","👩🏾‍🦲","👩🏿‍🦲","🧑‍🦲","🧑🏻‍🦲","🧑🏼‍🦲","🧑🏽‍🦲","🧑🏾‍🦲","🧑🏿‍🦲","👱‍♀️","👱🏻‍♀️","👱🏼‍♀️","👱🏽‍♀️","👱🏾‍♀️","👱🏿‍♀️","👱‍♂️","👱🏻‍♂️","👱🏼‍♂️","👱🏽‍♂️","👱🏾‍♂️","👱🏿‍♂️","🧓","🧓🏻","🧓🏼","🧓🏽","🧓🏾","🧓🏿","👴","👴🏻","👴🏼","👴🏽","👴🏾","👴🏿","👵","👵🏻","👵🏼","👵🏽","👵🏾","👵🏿","🙍","🙍🏻","🙍🏼","🙍🏽","🙍🏾","🙍🏿","🙍‍♂️","🙍🏻‍♂️","🙍🏼‍♂️","🙍🏽‍♂️","🙍🏾‍♂️","🙍🏿‍♂️","🙍‍♀️","🙍🏻‍♀️","🙍🏼‍♀️","🙍🏽‍♀️","🙍🏾‍♀️","🙍🏿‍♀️","🙎","🙎🏻","🙎🏼","🙎🏽","🙎🏾","🙎🏿","🙎‍♂️","🙎🏻‍♂️","🙎🏼‍♂️","🙎🏽‍♂️","🙎🏾‍♂️","🙎🏿‍♂️","🙎‍♀️","🙎🏻‍♀️","🙎🏼‍♀️","🙎🏽‍♀️","🙎🏾‍♀️","🙎🏿‍♀️","🙅","🙅🏻","🙅🏼","🙅🏽","🙅🏾","🙅🏿","🙅‍♂️","🙅🏻‍♂️","🙅🏼‍♂️","🙅🏽‍♂️","🙅🏾‍♂️","🙅🏿‍♂️","🙅‍♀️","🙅🏻‍♀️","🙅🏼‍♀️","🙅🏽‍♀️","🙅🏾‍♀️","🙅🏿‍♀️","🙆","🙆🏻","🙆🏼","🙆🏽","🙆🏾","🙆🏿","🙆‍♂️","🙆🏻‍♂️","🙆🏼‍♂️","🙆🏽‍♂️","🙆🏾‍♂️","🙆🏿‍♂️","🙆‍♀️","🙆🏻‍♀️","🙆🏼‍♀️","🙆🏽‍♀️","🙆🏾‍♀️","🙆🏿‍♀️","💁","💁🏻","💁🏼","💁🏽","💁🏾","💁🏿","💁‍♂️","💁🏻‍♂️","💁🏼‍♂️","💁🏽‍♂️","💁🏾‍♂️","💁🏿‍♂️","💁‍♀️","💁🏻‍♀️","💁🏼‍♀️","💁🏽‍♀️","💁🏾‍♀️","💁🏿‍♀️","🙋","🙋🏻","🙋🏼","🙋🏽","🙋🏾","🙋🏿","🙋‍♂️","🙋🏻‍♂️","🙋🏼‍♂️","🙋🏽‍♂️","🙋🏾‍♂️","🙋🏿‍♂️","🙋‍♀️","🙋🏻‍♀️","🙋🏼‍♀️","🙋🏽‍♀️","🙋🏾‍♀️","🙋🏿‍♀️","🧏","🧏🏻","🧏🏼","🧏🏽","🧏🏾","🧏🏿","🧏‍♂️","🧏🏻‍♂️","🧏🏼‍♂️","🧏🏽‍♂️","🧏🏾‍♂️","🧏🏿‍♂️","🧏‍♀️","🧏🏻‍♀️","🧏🏼‍♀️","🧏🏽‍♀️","🧏🏾‍♀️","🧏🏿‍♀️","🙇","🙇🏻","🙇🏼","🙇🏽","🙇🏾","🙇🏿","🙇‍♂️","🙇🏻‍♂️","🙇🏼‍♂️","🙇🏽‍♂️","🙇🏾‍♂️","🙇🏿‍♂️","🙇‍♀️","🙇🏻‍♀️","🙇🏼‍♀️","🙇🏽‍♀️","🙇🏾‍♀️","🙇🏿‍♀️","🤦","🤦🏻","🤦🏼","🤦🏽","🤦🏾","🤦🏿","🤦‍♂️","🤦🏻‍♂️","🤦🏼‍♂️","🤦🏽‍♂️","🤦🏾‍♂️","🤦🏿‍♂️","🤦‍♀️","🤦🏻‍♀️","🤦🏼‍♀️","🤦🏽‍♀️","🤦🏾‍♀️","🤦🏿‍♀️","🤷","🤷🏻","🤷🏼","🤷🏽","🤷🏾","🤷🏿","🤷‍♂️","🤷🏻‍♂️","🤷🏼‍♂️","🤷🏽‍♂️","🤷🏾‍♂️","🤷🏿‍♂️","🤷‍♀️","🤷🏻‍♀️","🤷🏼‍♀️","🤷🏽‍♀️","🤷🏾‍♀️","🤷🏿‍♀️","🧑‍⚕️","🧑🏻‍⚕️","🧑🏼‍⚕️","🧑🏽‍⚕️","🧑🏾‍⚕️","🧑🏿‍⚕️","👨‍⚕️","👨🏻‍⚕️","👨🏼‍⚕️","👨🏽‍⚕️","👨🏾‍⚕️","👨🏿‍⚕️","👩‍⚕️","👩🏻‍⚕️","👩🏼‍⚕️","👩🏽‍⚕️","👩🏾‍⚕️","👩🏿‍⚕️","🧑‍🎓","🧑🏻‍🎓","🧑🏼‍🎓","🧑🏽‍🎓","🧑🏾‍🎓","🧑🏿‍🎓","👨‍🎓","👨🏻‍🎓","👨🏼‍🎓","👨🏽‍🎓","👨🏾‍🎓","👨🏿‍🎓","👩‍🎓","👩🏻‍🎓","👩🏼‍🎓","👩🏽‍🎓","👩🏾‍🎓","👩🏿‍🎓","🧑‍🏫","🧑🏻‍🏫","🧑🏼‍🏫","🧑🏽‍🏫","🧑🏾‍🏫","🧑🏿‍🏫","👨‍🏫","👨🏻‍🏫","👨🏼‍🏫","👨🏽‍🏫","👨🏾‍🏫","👨🏿‍🏫","👩‍🏫","👩🏻‍🏫","👩🏼‍🏫","👩🏽‍🏫","👩🏾‍🏫","👩🏿‍🏫","🧑‍⚖️","🧑🏻‍⚖️","🧑🏼‍⚖️","🧑🏽‍⚖️","🧑🏾‍⚖️","🧑🏿‍⚖️","👨‍⚖️","👨🏻‍⚖️","👨🏼‍⚖️","👨🏽‍⚖️","👨🏾‍⚖️","👨🏿‍⚖️","👩‍⚖️","👩🏻‍⚖️","👩🏼‍⚖️","👩🏽‍⚖️","👩🏾‍⚖️","👩🏿‍⚖️","🧑‍🌾","🧑🏻‍🌾","🧑🏼‍🌾","🧑🏽‍🌾","🧑🏾‍🌾","🧑🏿‍🌾","👨‍🌾","👨🏻‍🌾","👨🏼‍🌾","👨🏽‍🌾","👨🏾‍🌾","👨🏿‍🌾","👩‍🌾","👩🏻‍🌾","👩🏼‍🌾","👩🏽‍🌾","👩🏾‍🌾","👩🏿‍🌾","🧑‍🍳","🧑🏻‍🍳","🧑🏼‍🍳","🧑🏽‍🍳","🧑🏾‍🍳","🧑🏿‍🍳","👨‍🍳","👨🏻‍🍳","👨🏼‍🍳","👨🏽‍🍳","👨🏾‍🍳","👨🏿‍🍳","👩‍🍳","👩🏻‍🍳","👩🏼‍🍳","👩🏽‍🍳","👩🏾‍🍳","👩🏿‍🍳","🧑‍🔧","🧑🏻‍🔧","🧑🏼‍🔧","🧑🏽‍🔧","🧑🏾‍🔧","🧑🏿‍🔧","👨‍🔧","👨🏻‍🔧","👨🏼‍🔧","👨🏽‍🔧","👨🏾‍🔧","👨🏿‍🔧","👩‍🔧","👩🏻‍🔧","👩🏼‍🔧","👩🏽‍🔧","👩🏾‍🔧","👩🏿‍🔧","🧑‍🏭","🧑🏻‍🏭","🧑🏼‍🏭","🧑🏽‍🏭","🧑🏾‍🏭","🧑🏿‍🏭","👨‍🏭","👨🏻‍🏭","👨🏼‍🏭","👨🏽‍🏭","👨🏾‍🏭","👨🏿‍🏭","👩‍🏭","👩🏻‍🏭","👩🏼‍🏭","👩🏽‍🏭","👩🏾‍🏭","👩🏿‍🏭","🧑‍💼","🧑🏻‍💼","🧑🏼‍💼","🧑🏽‍💼","🧑🏾‍💼","🧑🏿‍💼","👨‍💼","👨🏻‍💼","👨🏼‍💼","👨🏽‍💼","👨🏾‍💼","👨🏿‍💼","👩‍💼","👩🏻‍💼","👩🏼‍💼","👩🏽‍💼","👩🏾‍💼","👩🏿‍💼","🧑‍🔬","🧑🏻‍🔬","🧑🏼‍🔬","🧑🏽‍🔬","🧑🏾‍🔬","🧑🏿‍🔬","👨‍🔬","👨🏻‍🔬","👨🏼‍🔬","👨🏽‍🔬","👨🏾‍🔬","👨🏿‍🔬","👩‍🔬","👩🏻‍🔬","👩🏼‍🔬","👩🏽‍🔬","👩🏾‍🔬","👩🏿‍🔬","🧑‍💻","🧑🏻‍💻","🧑🏼‍💻","🧑🏽‍💻","🧑🏾‍💻","🧑🏿‍💻","👨‍💻","👨🏻‍💻","👨🏼‍💻","👨🏽‍💻","👨🏾‍💻","👨🏿‍💻","👩‍💻","👩🏻‍💻","👩🏼‍💻","👩🏽‍💻","👩🏾‍💻","👩🏿‍💻","🧑‍🎤","🧑🏻‍🎤","🧑🏼‍🎤","🧑🏽‍🎤","🧑🏾‍🎤","🧑🏿‍🎤","👨‍🎤","👨🏻‍🎤","👨🏼‍🎤","👨🏽‍🎤","👨🏾‍🎤","👨🏿‍🎤","👩‍🎤","👩🏻‍🎤","👩🏼‍🎤","👩🏽‍🎤","👩🏾‍🎤","👩🏿‍🎤","🧑‍🎨","🧑🏻‍🎨","🧑🏼‍🎨","🧑🏽‍🎨","🧑🏾‍🎨","🧑🏿‍🎨","👨‍🎨","👨🏻‍🎨","👨🏼‍🎨","👨🏽‍🎨","👨🏾‍🎨","👨🏿‍🎨","👩‍🎨","👩🏻‍🎨","👩🏼‍🎨","👩🏽‍🎨","👩🏾‍🎨","👩🏿‍🎨","🧑‍✈️","🧑🏻‍✈️","🧑🏼‍✈️","🧑🏽‍✈️","🧑🏾‍✈️","🧑🏿‍✈️","👨‍✈️","👨🏻‍✈️","👨🏼‍✈️","👨🏽‍✈️","👨🏾‍✈️","👨🏿‍✈️","👩‍✈️","👩🏻‍✈️","👩🏼‍✈️","👩🏽‍✈️","👩🏾‍✈️","👩🏿‍✈️","🧑‍🚀","🧑🏻‍🚀","🧑🏼‍🚀","🧑🏽‍🚀","🧑🏾‍🚀","🧑🏿‍🚀","👨‍🚀","👨🏻‍🚀","👨🏼‍🚀","👨🏽‍🚀","👨🏾‍🚀","👨🏿‍🚀","👩‍🚀","👩🏻‍🚀","👩🏼‍🚀","👩🏽‍🚀","👩🏾‍🚀","👩🏿‍🚀","🧑‍🚒","🧑🏻‍🚒","🧑🏼‍🚒","🧑🏽‍🚒","🧑🏾‍🚒","🧑🏿‍🚒","👨‍🚒","👨🏻‍🚒","👨🏼‍🚒","👨🏽‍🚒","👨🏾‍🚒","👨🏿‍🚒","👩‍🚒","👩🏻‍🚒","👩🏼‍🚒","👩🏽‍🚒","👩🏾‍🚒","👩🏿‍🚒","👮","👮🏻","👮🏼","👮🏽","👮🏾","👮🏿","👮‍♂️","👮🏻‍♂️","👮🏼‍♂️","👮🏽‍♂️","👮🏾‍♂️","👮🏿‍♂️","👮‍♀️","👮🏻‍♀️","👮🏼‍♀️","👮🏽‍♀️","👮🏾‍♀️","👮🏿‍♀️","🕵️","🕵🏻","🕵🏼","🕵🏽","🕵🏾","🕵🏿","🕵️‍♂️","🕵🏻‍♂️","🕵🏼‍♂️","🕵🏽‍♂️","🕵🏾‍♂️","🕵🏿‍♂️","🕵️‍♀️","🕵🏻‍♀️","🕵🏼‍♀️","🕵🏽‍♀️","🕵🏾‍♀️","🕵🏿‍♀️","💂","💂🏻","💂🏼","💂🏽","💂🏾","💂🏿","💂‍♂️","💂🏻‍♂️","💂🏼‍♂️","💂🏽‍♂️","💂🏾‍♂️","💂🏿‍♂️","💂‍♀️","💂🏻‍♀️","💂🏼‍♀️","💂🏽‍♀️","💂🏾‍♀️","💂🏿‍♀️","🥷","🥷🏻","🥷🏼","🥷🏽","🥷🏾","🥷🏿","👷","👷🏻","👷🏼","👷🏽","👷🏾","👷🏿","👷‍♂️","👷🏻‍♂️","👷🏼‍♂️","👷🏽‍♂️","👷🏾‍♂️","👷🏿‍♂️","👷‍♀️","👷🏻‍♀️","👷🏼‍♀️","👷🏽‍♀️","👷🏾‍♀️","👷🏿‍♀️","🤴","🤴🏻","🤴🏼","🤴🏽","🤴🏾","🤴🏿","👸","👸🏻","👸🏼","👸🏽","👸🏾","👸🏿","👳","👳🏻","👳🏼","👳🏽","👳🏾","👳🏿","👳‍♂️","👳🏻‍♂️","👳🏼‍♂️","👳🏽‍♂️","👳🏾‍♂️","👳🏿‍♂️","👳‍♀️","👳🏻‍♀️","👳🏼‍♀️","👳🏽‍♀️","👳🏾‍♀️","👳🏿‍♀️","👲","👲🏻","👲🏼","👲🏽","👲🏾","👲🏿","🧕","🧕🏻","🧕🏼","🧕🏽","🧕🏾","🧕🏿","🤵","🤵🏻","🤵🏼","🤵🏽","🤵🏾","🤵🏿","🤵‍♂️","🤵🏻‍♂️","🤵🏼‍♂️","🤵🏽‍♂️","🤵🏾‍♂️","🤵🏿‍♂️","🤵‍♀️","🤵🏻‍♀️","🤵🏼‍♀️","🤵🏽‍♀️","🤵🏾‍♀️","🤵🏿‍♀️","👰","👰🏻","👰🏼","👰🏽","👰🏾","👰🏿","👰‍♂️","👰🏻‍♂️","👰🏼‍♂️","👰🏽‍♂️","👰🏾‍♂️","👰🏿‍♂️","👰‍♀️","👰🏻‍♀️","👰🏼‍♀️","👰🏽‍♀️","👰🏾‍♀️","👰🏿‍♀️","🤰","🤰🏻","🤰🏼","🤰🏽","🤰🏾","🤰🏿","🤱","🤱🏻","🤱🏼","🤱🏽","🤱🏾","🤱🏿","👩‍🍼","👩🏻‍🍼","👩🏼‍🍼","👩🏽‍🍼","👩🏾‍🍼","👩🏿‍🍼","👨‍🍼","👨🏻‍🍼","👨🏼‍🍼","👨🏽‍🍼","👨🏾‍🍼","👨🏿‍🍼","🧑‍🍼","🧑🏻‍🍼","🧑🏼‍🍼","🧑🏽‍🍼","🧑🏾‍🍼","🧑🏿‍🍼","👼","👼🏻","👼🏼","👼🏽","👼🏾","👼🏿","🎅","🎅🏻","🎅🏼","🎅🏽","🎅🏾","🎅🏿","🤶","🤶🏻","🤶🏼","🤶🏽","🤶🏾","🤶🏿","🧑‍🎄","🧑🏻‍🎄","🧑🏼‍🎄","🧑🏽‍🎄","🧑🏾‍🎄","🧑🏿‍🎄","🦸","🦸🏻","🦸🏼","🦸🏽","🦸🏾","🦸🏿","🦸‍♂️","🦸🏻‍♂️","🦸🏼‍♂️","🦸🏽‍♂️","🦸🏾‍♂️","🦸🏿‍♂️","🦸‍♀️","🦸🏻‍♀️","🦸🏼‍♀️","🦸🏽‍♀️","🦸🏾‍♀️","🦸🏿‍♀️","🦹","🦹🏻","🦹🏼","🦹🏽","🦹🏾","🦹🏿","🦹‍♂️","🦹🏻‍♂️","🦹🏼‍♂️","🦹🏽‍♂️","🦹🏾‍♂️","🦹🏿‍♂️","🦹‍♀️","🦹🏻‍♀️","🦹🏼‍♀️","🦹🏽‍♀️","🦹🏾‍♀️","🦹🏿‍♀️","🧙","🧙🏻","🧙🏼","🧙🏽","🧙🏾","🧙🏿","🧙‍♂️","🧙🏻‍♂️","🧙🏼‍♂️","🧙🏽‍♂️","🧙🏾‍♂️","🧙🏿‍♂️","🧙‍♀️","🧙🏻‍♀️","🧙🏼‍♀️","🧙🏽‍♀️","🧙🏾‍♀️","🧙🏿‍♀️","🧚","🧚🏻","🧚🏼","🧚🏽","🧚🏾","🧚🏿","🧚‍♂️","🧚🏻‍♂️","🧚🏼‍♂️","🧚🏽‍♂️","🧚🏾‍♂️","🧚🏿‍♂️","🧚‍♀️","🧚🏻‍♀️","🧚🏼‍♀️","🧚🏽‍♀️","🧚🏾‍♀️","🧚🏿‍♀️","🧛","🧛🏻","🧛🏼","🧛🏽","🧛🏾","🧛🏿","🧛‍♂️","🧛🏻‍♂️","🧛🏼‍♂️","🧛🏽‍♂️","🧛🏾‍♂️","🧛🏿‍♂️","🧛‍♀️","🧛🏻‍♀️","🧛🏼‍♀️","🧛🏽‍♀️","🧛🏾‍♀️","🧛🏿‍♀️","🧜","🧜🏻","🧜🏼","🧜🏽","🧜🏾","🧜🏿","🧜‍♂️","🧜🏻‍♂️","🧜🏼‍♂️","🧜🏽‍♂️","🧜🏾‍♂️","🧜🏿‍♂️","🧜‍♀️","🧜🏻‍♀️","🧜🏼‍♀️","🧜🏽‍♀️","🧜🏾‍♀️","🧜🏿‍♀️","🧝","🧝🏻","🧝🏼","🧝🏽","🧝🏾","🧝🏿","🧝‍♂️","🧝🏻‍♂️","🧝🏼‍♂️","🧝🏽‍♂️","🧝🏾‍♂️","🧝🏿‍♂️","🧝‍♀️","🧝🏻‍♀️","🧝🏼‍♀️","🧝🏽‍♀️","🧝🏾‍♀️","🧝🏿‍♀️","🧞","🧞‍♂️","🧞‍♀️","🧟","🧟‍♂️","🧟‍♀️","💆","💆🏻","💆🏼","💆🏽","💆🏾","💆🏿","💆‍♂️","💆🏻‍♂️","💆🏼‍♂️","💆🏽‍♂️","💆🏾‍♂️","💆🏿‍♂️","💆‍♀️","💆🏻‍♀️","💆🏼‍♀️","💆🏽‍♀️","💆🏾‍♀️","💆🏿‍♀️","💇","💇🏻","💇🏼","💇🏽","💇🏾","💇🏿","💇‍♂️","💇🏻‍♂️","💇🏼‍♂️","💇🏽‍♂️","💇🏾‍♂️","💇🏿‍♂️","💇‍♀️","💇🏻‍♀️","💇🏼‍♀️","💇🏽‍♀️","💇🏾‍♀️","💇🏿‍♀️","🚶","🚶🏻","🚶🏼","🚶🏽","🚶🏾","🚶🏿","🚶‍♂️","🚶🏻‍♂️","🚶🏼‍♂️","🚶🏽‍♂️","🚶🏾‍♂️","🚶🏿‍♂️","🚶‍♀️","🚶🏻‍♀️","🚶🏼‍♀️","🚶🏽‍♀️","🚶🏾‍♀️","🚶🏿‍♀️","🧍","🧍🏻","🧍🏼","🧍🏽","🧍🏾","🧍🏿","🧍‍♂️","🧍🏻‍♂️","🧍🏼‍♂️","🧍🏽‍♂️","🧍🏾‍♂️","🧍🏿‍♂️","🧍‍♀️","🧍🏻‍♀️","🧍🏼‍♀️","🧍🏽‍♀️","🧍🏾‍♀️","🧍🏿‍♀️","🧎","🧎🏻","🧎🏼","🧎🏽","🧎🏾","🧎🏿","🧎‍♂️","🧎🏻‍♂️","🧎🏼‍♂️","🧎🏽‍♂️","🧎🏾‍♂️","🧎🏿‍♂️","🧎‍♀️","🧎🏻‍♀️","🧎🏼‍♀️","🧎🏽‍♀️","🧎🏾‍♀️","🧎🏿‍♀️","🧑‍🦯","🧑🏻‍🦯","🧑🏼‍🦯","🧑🏽‍🦯","🧑🏾‍🦯","🧑🏿‍🦯","👨‍🦯","👨🏻‍🦯","👨🏼‍🦯","👨🏽‍🦯","👨🏾‍🦯","👨🏿‍🦯","👩‍🦯","👩🏻‍🦯","👩🏼‍🦯","👩🏽‍🦯","👩🏾‍🦯","👩🏿‍🦯","🧑‍🦼","🧑🏻‍🦼","🧑🏼‍🦼","🧑🏽‍🦼","🧑🏾‍🦼","🧑🏿‍🦼","👨‍🦼","👨🏻‍🦼","👨🏼‍🦼","👨🏽‍🦼","👨🏾‍🦼","👨🏿‍🦼","👩‍🦼","👩🏻‍🦼","👩🏼‍🦼","👩🏽‍🦼","👩🏾‍🦼","👩🏿‍🦼","🧑‍🦽","🧑🏻‍🦽","🧑🏼‍🦽","🧑🏽‍🦽","🧑🏾‍🦽","🧑🏿‍🦽","👨‍🦽","👨🏻‍🦽","👨🏼‍🦽","👨🏽‍🦽","👨🏾‍🦽","👨🏿‍🦽","👩‍🦽","👩🏻‍🦽","👩🏼‍🦽","👩🏽‍🦽","👩🏾‍🦽","👩🏿‍🦽","🏃","🏃🏻","🏃🏼","🏃🏽","🏃🏾","🏃🏿","🏃‍♂️","🏃🏻‍♂️","🏃🏼‍♂️","🏃🏽‍♂️","🏃🏾‍♂️","🏃🏿‍♂️","🏃‍♀️","🏃🏻‍♀️","🏃🏼‍♀️","🏃🏽‍♀️","🏃🏾‍♀️","🏃🏿‍♀️","💃","💃🏻","💃🏼","💃🏽","💃🏾","💃🏿","🕺","🕺🏻","🕺🏼","🕺🏽","🕺🏾","🕺🏿","🕴️","🕴🏻","🕴🏼","🕴🏽","🕴🏾","🕴🏿","👯","👯‍♂️","👯‍♀️","🧖","🧖🏻","🧖🏼","🧖🏽","🧖🏾","🧖🏿","🧖‍♂️","🧖🏻‍♂️","🧖🏼‍♂️","🧖🏽‍♂️","🧖🏾‍♂️","🧖🏿‍♂️","🧖‍♀️","🧖🏻‍♀️","🧖🏼‍♀️","🧖🏽‍♀️","🧖🏾‍♀️","🧖🏿‍♀️","🧗","🧗🏻","🧗🏼","🧗🏽","🧗🏾","🧗🏿","🧗‍♂️","🧗🏻‍♂️","🧗🏼‍♂️","🧗🏽‍♂️","🧗🏾‍♂️","🧗🏿‍♂️","🧗‍♀️","🧗🏻‍♀️","🧗🏼‍♀️","🧗🏽‍♀️","🧗🏾‍♀️","🧗🏿‍♀️","🤺","🏇","🏇🏻","🏇🏼","🏇🏽","🏇🏾","🏇🏿","⛷️","🏂","🏂🏻","🏂🏼","🏂🏽","🏂🏾","🏂🏿","🏌️","🏌🏻","🏌🏼","🏌🏽","🏌🏾","🏌🏿","🏌️‍♂️","🏌🏻‍♂️","🏌🏼‍♂️","🏌🏽‍♂️","🏌🏾‍♂️","🏌🏿‍♂️","🏌️‍♀️","🏌🏻‍♀️","🏌🏼‍♀️","🏌🏽‍♀️","🏌🏾‍♀️","🏌🏿‍♀️","🏄","🏄🏻","🏄🏼","🏄🏽","🏄🏾","🏄🏿","🏄‍♂️","🏄🏻‍♂️","🏄🏼‍♂️","🏄🏽‍♂️","🏄🏾‍♂️","🏄🏿‍♂️","🏄‍♀️","🏄🏻‍♀️","🏄🏼‍♀️","🏄🏽‍♀️","🏄🏾‍♀️","🏄🏿‍♀️","🚣","🚣🏻","🚣🏼","🚣🏽","🚣🏾","🚣🏿","🚣‍♂️","🚣🏻‍♂️","🚣🏼‍♂️","🚣🏽‍♂️","🚣🏾‍♂️","🚣🏿‍♂️","🚣‍♀️","🚣🏻‍♀️","🚣🏼‍♀️","🚣🏽‍♀️","🚣🏾‍♀️","🚣🏿‍♀️","🏊","🏊🏻","🏊🏼","🏊🏽","🏊🏾","🏊🏿","🏊‍♂️","🏊🏻‍♂️","🏊🏼‍♂️","🏊🏽‍♂️","🏊🏾‍♂️","🏊🏿‍♂️","🏊‍♀️","🏊🏻‍♀️","🏊🏼‍♀️","🏊🏽‍♀️","🏊🏾‍♀️","🏊🏿‍♀️","⛹️","⛹🏻","⛹🏼","⛹🏽","⛹🏾","⛹🏿","⛹️‍♂️","⛹🏻‍♂️","⛹🏼‍♂️","⛹🏽‍♂️","⛹🏾‍♂️","⛹🏿‍♂️","⛹️‍♀️","⛹🏻‍♀️","⛹🏼‍♀️","⛹🏽‍♀️","⛹🏾‍♀️","⛹🏿‍♀️","🏋️","🏋🏻","🏋🏼","🏋🏽","🏋🏾","🏋🏿","🏋️‍♂️","🏋🏻‍♂️","🏋🏼‍♂️","🏋🏽‍♂️","🏋🏾‍♂️","🏋🏿‍♂️","🏋️‍♀️","🏋🏻‍♀️","🏋🏼‍♀️","🏋🏽‍♀️","🏋🏾‍♀️","🏋🏿‍♀️","🚴","🚴🏻","🚴🏼","🚴🏽","🚴🏾","🚴🏿","🚴‍♂️","🚴🏻‍♂️","🚴🏼‍♂️","🚴🏽‍♂️","🚴🏾‍♂️","🚴🏿‍♂️","🚴‍♀️","🚴🏻‍♀️","🚴🏼‍♀️","🚴🏽‍♀️","🚴🏾‍♀️","🚴🏿‍♀️","🚵","🚵🏻","🚵🏼","🚵🏽","🚵🏾","🚵🏿","🚵‍♂️","🚵🏻‍♂️","🚵🏼‍♂️","🚵🏽‍♂️","🚵🏾‍♂️","🚵🏿‍♂️","🚵‍♀️","🚵🏻‍♀️","🚵🏼‍♀️","🚵🏽‍♀️","🚵🏾‍♀️","🚵🏿‍♀️","🤸","🤸🏻","🤸🏼","🤸🏽","🤸🏾","🤸🏿","🤸‍♂️","🤸🏻‍♂️","🤸🏼‍♂️","🤸🏽‍♂️","🤸🏾‍♂️","🤸🏿‍♂️","🤸‍♀️","🤸🏻‍♀️","🤸🏼‍♀️","🤸🏽‍♀️","🤸🏾‍♀️","🤸🏿‍♀️","🤼","🤼‍♂️","🤼‍♀️","🤽","🤽🏻","🤽🏼","🤽🏽","🤽🏾","🤽🏿","🤽‍♂️","🤽🏻‍♂️","🤽🏼‍♂️","🤽🏽‍♂️","🤽🏾‍♂️","🤽🏿‍♂️","🤽‍♀️","🤽🏻‍♀️","🤽🏼‍♀️","🤽🏽‍♀️","🤽🏾‍♀️","🤽🏿‍♀️","🤾","🤾🏻","🤾🏼","🤾🏽","🤾🏾","🤾🏿","🤾‍♂️","🤾🏻‍♂️","🤾🏼‍♂️","🤾🏽‍♂️","🤾🏾‍♂️","🤾🏿‍♂️","🤾‍♀️","🤾🏻‍♀️","🤾🏼‍♀️","🤾🏽‍♀️","🤾🏾‍♀️","🤾🏿‍♀️","🤹","🤹🏻","🤹🏼","🤹🏽","🤹🏾","🤹🏿","🤹‍♂️","🤹🏻‍♂️","🤹🏼‍♂️","🤹🏽‍♂️","🤹🏾‍♂️","🤹🏿‍♂️","🤹‍♀️","🤹🏻‍♀️","🤹🏼‍♀️","🤹🏽‍♀️","🤹🏾‍♀️","🤹🏿‍♀️","🧘","🧘🏻","🧘🏼","🧘🏽","🧘🏾","🧘🏿","🧘‍♂️","🧘🏻‍♂️","🧘🏼‍♂️","🧘🏽‍♂️","🧘🏾‍♂️","🧘🏿‍♂️","🧘‍♀️","🧘🏻‍♀️","🧘🏼‍♀️","🧘🏽‍♀️","🧘🏾‍♀️","🧘🏿‍♀️","🛀","🛀🏻","🛀🏼","🛀🏽","🛀🏾","🛀🏿","🛌","🛌🏻","🛌🏼","🛌🏽","🛌🏾","🛌🏿","🧑‍🤝‍🧑","🧑🏻‍🤝‍🧑🏻","🧑🏻‍🤝‍🧑🏼","🧑🏻‍🤝‍🧑🏽","🧑🏻‍🤝‍🧑🏾","🧑🏻‍🤝‍🧑🏿","🧑🏼‍🤝‍🧑🏻","🧑🏼‍🤝‍🧑🏼","🧑🏼‍🤝‍🧑🏽","🧑🏼‍🤝‍🧑🏾","🧑🏼‍🤝‍🧑🏿","🧑🏽‍🤝‍🧑🏻","🧑🏽‍🤝‍🧑🏼","🧑🏽‍🤝‍🧑🏽","🧑🏽‍🤝‍🧑🏾","🧑🏽‍🤝‍🧑🏿","🧑🏾‍🤝‍🧑🏻","🧑🏾‍🤝‍🧑🏼","🧑🏾‍🤝‍🧑🏽","🧑🏾‍🤝‍🧑🏾","🧑🏾‍🤝‍🧑🏿","🧑🏿‍🤝‍🧑🏻","🧑🏿‍🤝‍🧑🏼","🧑🏿‍🤝‍🧑🏽","🧑🏿‍🤝‍🧑🏾","🧑🏿‍🤝‍🧑🏿","👭","👭🏻","👩🏻‍🤝‍👩🏼","👩🏻‍🤝‍👩🏽","👩🏻‍🤝‍👩🏾","👩🏻‍🤝‍👩🏿","👩🏼‍🤝‍👩🏻","👭🏼","👩🏼‍🤝‍👩🏽","👩🏼‍🤝‍👩🏾","👩🏼‍🤝‍👩🏿","👩🏽‍🤝‍👩🏻","👩🏽‍🤝‍👩🏼","👭🏽","👩🏽‍🤝‍👩🏾","👩🏽‍🤝‍👩🏿","👩🏾‍🤝‍👩🏻","👩🏾‍🤝‍👩🏼","👩🏾‍🤝‍👩🏽","👭🏾","👩🏾‍🤝‍👩🏿","👩🏿‍🤝‍👩🏻","👩🏿‍🤝‍👩🏼","👩🏿‍🤝‍👩🏽","👩🏿‍🤝‍👩🏾","👭🏿","👫","👫🏻","👩🏻‍🤝‍👨🏼","👩🏻‍🤝‍👨🏽","👩🏻‍🤝‍👨🏾","👩🏻‍🤝‍👨🏿","👩🏼‍🤝‍👨🏻","👫🏼","👩🏼‍🤝‍👨🏽","👩🏼‍🤝‍👨🏾","👩🏼‍🤝‍👨🏿","👩🏽‍🤝‍👨🏻","👩🏽‍🤝‍👨🏼","👫🏽","👩🏽‍🤝‍👨🏾","👩🏽‍🤝‍👨🏿","👩🏾‍🤝‍👨🏻","👩🏾‍🤝‍👨🏼","👩🏾‍🤝‍👨🏽","👫🏾","👩🏾‍🤝‍👨🏿","👩🏿‍🤝‍👨🏻","👩🏿‍🤝‍👨🏼","👩🏿‍🤝‍👨🏽","👩🏿‍🤝‍👨🏾","👫🏿","👬","👬🏻","👨🏻‍🤝‍👨🏼","👨🏻‍🤝‍👨🏽","👨🏻‍🤝‍👨🏾","👨🏻‍🤝‍👨🏿","👨🏼‍🤝‍👨🏻","👬🏼","👨🏼‍🤝‍👨🏽","👨🏼‍🤝‍👨🏾","👨🏼‍🤝‍👨🏿","👨🏽‍🤝‍👨🏻","👨🏽‍🤝‍👨🏼","👬🏽","👨🏽‍🤝‍👨🏾","👨🏽‍🤝‍👨🏿","👨🏾‍🤝‍👨🏻","👨🏾‍🤝‍👨🏼","👨🏾‍🤝‍👨🏽","👬🏾","👨🏾‍🤝‍👨🏿","👨🏿‍🤝‍👨🏻","👨🏿‍🤝‍👨🏼","👨🏿‍🤝‍👨🏽","👨🏿‍🤝‍👨🏾","👬🏿","💏","💏🏻","💏🏼","💏🏽","💏🏾","💏🏿","🧑🏻‍❤️‍💋‍🧑🏼","🧑🏻‍❤️‍💋‍🧑🏽","🧑🏻‍❤️‍💋‍🧑🏾","🧑🏻‍❤️‍💋‍🧑🏿","🧑🏼‍❤️‍💋‍🧑🏻","🧑🏼‍❤️‍💋‍🧑🏽","🧑🏼‍❤️‍💋‍🧑🏾","🧑🏼‍❤️‍💋‍🧑🏿","🧑🏽‍❤️‍💋‍🧑🏻","🧑🏽‍❤️‍💋‍🧑🏼","🧑🏽‍❤️‍💋‍🧑🏾","🧑🏽‍❤️‍💋‍🧑🏿","🧑🏾‍❤️‍💋‍🧑🏻","🧑🏾‍❤️‍💋‍🧑🏼","🧑🏾‍❤️‍💋‍🧑🏽","🧑🏾‍❤️‍💋‍🧑🏿","🧑🏿‍❤️‍💋‍🧑🏻","🧑🏿‍❤️‍💋‍🧑🏼","🧑🏿‍❤️‍💋‍🧑🏽","🧑🏿‍❤️‍💋‍🧑🏾","👩‍❤️‍💋‍👨","👩🏻‍❤️‍💋‍👨🏻","👩🏻‍❤️‍💋‍👨🏼","👩🏻‍❤️‍💋‍👨🏽","👩🏻‍❤️‍💋‍👨🏾","👩🏻‍❤️‍💋‍👨🏿","👩🏼‍❤️‍💋‍👨🏻","👩🏼‍❤️‍💋‍👨🏼","👩🏼‍❤️‍💋‍👨🏽","👩🏼‍❤️‍💋‍👨🏾","👩🏼‍❤️‍💋‍👨🏿","👩🏽‍❤️‍💋‍👨🏻","👩🏽‍❤️‍💋‍👨🏼","👩🏽‍❤️‍💋‍👨🏽","👩🏽‍❤️‍💋‍👨🏾","👩🏽‍❤️‍💋‍👨🏿","👩🏾‍❤️‍💋‍👨🏻","👩🏾‍❤️‍💋‍👨🏼","👩🏾‍❤️‍💋‍👨🏽","👩🏾‍❤️‍💋‍👨🏾","👩🏾‍❤️‍💋‍👨🏿","👩🏿‍❤️‍💋‍👨🏻","👩🏿‍❤️‍💋‍👨🏼","👩🏿‍❤️‍💋‍👨🏽","👩🏿‍❤️‍💋‍👨🏾","👩🏿‍❤️‍💋‍👨🏿","👨‍❤️‍💋‍👨","👨🏻‍❤️‍💋‍👨🏻","👨🏻‍❤️‍💋‍👨🏼","👨🏻‍❤️‍💋‍👨🏽","👨🏻‍❤️‍💋‍👨🏾","👨🏻‍❤️‍💋‍👨🏿","👨🏼‍❤️‍💋‍👨🏻","👨🏼‍❤️‍💋‍👨🏼","👨🏼‍❤️‍💋‍👨🏽","👨🏼‍❤️‍💋‍👨🏾","👨🏼‍❤️‍💋‍👨🏿","👨🏽‍❤️‍💋‍👨🏻","👨🏽‍❤️‍💋‍👨🏼","👨🏽‍❤️‍💋‍👨🏽","👨🏽‍❤️‍💋‍👨🏾","👨🏽‍❤️‍💋‍👨🏿","👨🏾‍❤️‍💋‍👨🏻","👨🏾‍❤️‍💋‍👨🏼","👨🏾‍❤️‍💋‍👨🏽","👨🏾‍❤️‍💋‍👨🏾","👨🏾‍❤️‍💋‍👨🏿","👨🏿‍❤️‍💋‍👨🏻","👨🏿‍❤️‍💋‍👨🏼","👨🏿‍❤️‍💋‍👨🏽","👨🏿‍❤️‍💋‍👨🏾","👨🏿‍❤️‍💋‍👨🏿","👩‍❤️‍💋‍👩","👩🏻‍❤️‍💋‍👩🏻","👩🏻‍❤️‍💋‍👩🏼","👩🏻‍❤️‍💋‍👩🏽","👩🏻‍❤️‍💋‍👩🏾","👩🏻‍❤️‍💋‍👩🏿","👩🏼‍❤️‍💋‍👩🏻","👩🏼‍❤️‍💋‍👩🏼","👩🏼‍❤️‍💋‍👩🏽","👩🏼‍❤️‍💋‍👩🏾","👩🏼‍❤️‍💋‍👩🏿","👩🏽‍❤️‍💋‍👩🏻","👩🏽‍❤️‍💋‍👩🏼","👩🏽‍❤️‍💋‍👩🏽","👩🏽‍❤️‍💋‍👩🏾","👩🏽‍❤️‍💋‍👩🏿","👩🏾‍❤️‍💋‍👩🏻","👩🏾‍❤️‍💋‍👩🏼","👩🏾‍❤️‍💋‍👩🏽","👩🏾‍❤️‍💋‍👩🏾","👩🏾‍❤️‍💋‍👩🏿","👩🏿‍❤️‍💋‍👩🏻","👩🏿‍❤️‍💋‍👩🏼","👩🏿‍❤️‍💋‍👩🏽","👩🏿‍❤️‍💋‍👩🏾","👩🏿‍❤️‍💋‍👩🏿","💑","💑🏻","💑🏼","💑🏽","💑🏾","💑🏿","🧑🏻‍❤️‍🧑🏼","🧑🏻‍❤️‍🧑🏽","🧑🏻‍❤️‍🧑🏾","🧑🏻‍❤️‍🧑🏿","🧑🏼‍❤️‍🧑🏻","🧑🏼‍❤️‍🧑🏽","🧑🏼‍❤️‍🧑🏾","🧑🏼‍❤️‍🧑🏿","🧑🏽‍❤️‍🧑🏻","🧑🏽‍❤️‍🧑🏼","🧑🏽‍❤️‍🧑🏾","🧑🏽‍❤️‍🧑🏿","🧑🏾‍❤️‍🧑🏻","🧑🏾‍❤️‍🧑🏼","🧑🏾‍❤️‍🧑🏽","🧑🏾‍❤️‍🧑🏿","🧑🏿‍❤️‍🧑🏻","🧑🏿‍❤️‍🧑🏼","🧑🏿‍❤️‍🧑🏽","🧑🏿‍❤️‍🧑🏾","👩‍❤️‍👨","👩🏻‍❤️‍👨🏻","👩🏻‍❤️‍👨🏼","👩🏻‍❤️‍👨🏽","👩🏻‍❤️‍👨🏾","👩🏻‍❤️‍👨🏿","👩🏼‍❤️‍👨🏻","👩🏼‍❤️‍👨🏼","👩🏼‍❤️‍👨🏽","👩🏼‍❤️‍👨🏾","👩🏼‍❤️‍👨🏿","👩🏽‍❤️‍👨🏻","👩🏽‍❤️‍👨🏼","👩🏽‍❤️‍👨🏽","👩🏽‍❤️‍👨🏾","👩🏽‍❤️‍👨🏿","👩🏾‍❤️‍👨🏻","👩🏾‍❤️‍👨🏼","👩🏾‍❤️‍👨🏽","👩🏾‍❤️‍👨🏾","👩🏾‍❤️‍👨🏿","👩🏿‍❤️‍👨🏻","👩🏿‍❤️‍👨🏼","👩🏿‍❤️‍👨🏽","👩🏿‍❤️‍👨🏾","👩🏿‍❤️‍👨🏿","👨‍❤️‍👨","👨🏻‍❤️‍👨🏻","👨🏻‍❤️‍👨🏼","👨🏻‍❤️‍👨🏽","👨🏻‍❤️‍👨🏾","👨🏻‍❤️‍👨🏿","👨🏼‍❤️‍👨🏻","👨🏼‍❤️‍👨🏼","👨🏼‍❤️‍👨🏽","👨🏼‍❤️‍👨🏾","👨🏼‍❤️‍👨🏿","👨🏽‍❤️‍👨🏻","👨🏽‍❤️‍👨🏼","👨🏽‍❤️‍👨🏽","👨🏽‍❤️‍👨🏾","👨🏽‍❤️‍👨🏿","👨🏾‍❤️‍👨🏻","👨🏾‍❤️‍👨🏼","👨🏾‍❤️‍👨🏽","👨🏾‍❤️‍👨🏾","👨🏾‍❤️‍👨🏿","👨🏿‍❤️‍👨🏻","👨🏿‍❤️‍👨🏼","👨🏿‍❤️‍👨🏽","👨🏿‍❤️‍👨🏾","👨🏿‍❤️‍👨🏿","👩‍❤️‍👩","👩🏻‍❤️‍👩🏻","👩🏻‍❤️‍👩🏼","👩🏻‍❤️‍👩🏽","👩🏻‍❤️‍👩🏾","👩🏻‍❤️‍👩🏿","👩🏼‍❤️‍👩🏻","👩🏼‍❤️‍👩🏼","👩🏼‍❤️‍👩🏽","👩🏼‍❤️‍👩🏾","👩🏼‍❤️‍👩🏿","👩🏽‍❤️‍👩🏻","👩🏽‍❤️‍👩🏼","👩🏽‍❤️‍👩🏽","👩🏽‍❤️‍👩🏾","👩🏽‍❤️‍👩🏿","👩🏾‍❤️‍👩🏻","👩🏾‍❤️‍👩🏼","👩🏾‍❤️‍👩🏽","👩🏾‍❤️‍👩🏾","👩🏾‍❤️‍👩🏿","👩🏿‍❤️‍👩🏻","👩🏿‍❤️‍👩🏼","👩🏿‍❤️‍👩🏽","👩🏿‍❤️‍👩🏾","👩🏿‍❤️‍👩🏿","👪","👨‍👩‍👦","👨‍👩‍👧","👨‍👩‍👧‍👦","👨‍👩‍👦‍👦","👨‍👩‍👧‍👧","👨‍👨‍👦","👨‍👨‍👧","👨‍👨‍👧‍👦","👨‍👨‍👦‍👦","👨‍👨‍👧‍👧","👩‍👩‍👦","👩‍👩‍👧","👩‍👩‍👧‍👦","👩‍👩‍👦‍👦","👩‍👩‍👧‍👧","👨‍👦","👨‍👦‍👦","👨‍👧","👨‍👧‍👦","👨‍👧‍👧","👩‍👦","👩‍👦‍👦","👩‍👧","👩‍👧‍👦","👩‍👧‍👧","🗣️","👤","👥","🫂","👣"],nature:["🐵","🐒","🦍","🦧","🐶","🐕","🦮","🐕‍🦺","🐩","🐺","🦊","🦝","🐱","🐈","🐈‍⬛","🦁","🐯","🐅","🐆","🐴","🐎","🦄","🦓","🦌","🦬","🐮","🐂","🐃","🐄","🐷","🐖","🐗","🐽","🐏","🐑","🐐","🐪","🐫","🦙","🦒","🐘","🦣","🦏","🦛","🐭","🐁","🐀","🐹","🐰","🐇","🐿️","🦫","🦔","🦇","🐻","🐻‍❄️","🐨","🐼","🦥","🦦","🦨","🦘","🦡","🐾","🦃","🐔","🐓","🐣","🐤","🐥","🐦","🐧","🕊️","🦅","🦆","🦢","🦉","🦤","🪶","🦩","🦚","🦜","🐸","🐊","🐢","🦎","🐍","🐲","🐉","🦕","🦖","🐳","🐋","🐬","🦭","🐟","🐠","🐡","🦈","🐙","🐚","🐌","🦋","🐛","🐜","🐝","🪲","🐞","🦗","🪳","🕷️","🕸️","🦂","🦟","🪰","🪱","🦠","💐","🌸","💮","🏵️","🌹","🥀","🌺","🌻","🌼","🌷","🌱","🪴","🌲","🌳","🌴","🌵","🌾","🌿","☘️","🍀","🍁","🍂","🍃"],food:["🍇","🍈","🍉","🍊","🍋","🍌","🍍","🥭","🍎","🍏","🍐","🍑","🍒","🍓","🫐","🥝","🍅","🫒","🥥","🥑","🍆","🥔","🥕","🌽","🌶️","🫑","🥒","🥬","🥦","🧄","🧅","🍄","🥜","🌰","🍞","🥐","🥖","🫓","🥨","🥯","🥞","🧇","🧀","🍖","🍗","🥩","🥓","🍔","🍟","🍕","🌭","🥪","🌮","🌯","🫔","🥙","🧆","🥚","🍳","🥘","🍲","🫕","🥣","🥗","🍿","🧈","🧂","🥫","🍱","🍘","🍙","🍚","🍛","🍜","🍝","🍠","🍢","🍣","🍤","🍥","🥮","🍡","🥟","🥠","🥡","🦀","🦞","🦐","🦑","🦪","🍦","🍧","🍨","🍩","🍪","🎂","🍰","🧁","🥧","🍫","🍬","🍭","🍮","🍯","🍼","🥛","☕","🫖","🍵","🍶","🍾","🍷","🍸","🍹","🍺","🍻","🥂","🥃","🥤","🧋","🧃","🧉","🧊","🥢","🍽️","🍴","🥄","🔪","🏺"],travel:["🌍","🌎","🌏","🌐","🗺️","🗾","🧭","🏔️","⛰️","🌋","🗻","🏕️","🏖️","🏜️","🏝️","🏞️","🏟️","🏛️","🏗️","🧱","🪨","🪵","🛖","🏘️","🏚️","🏠","🏡","🏢","🏣","🏤","🏥","🏦","🏨","🏩","🏪","🏫","🏬","🏭","🏯","🏰","💒","🗼","🗽","⛪","🕌","🛕","🕍","⛩️","🕋","⛲","⛺","🌁","🌃","🏙️","🌄","🌅","🌆","🌇","🌉","♨️","🎠","🎡","🎢","💈","🎪","🚂","🚃","🚄","🚅","🚆","🚇","🚈","🚉","🚊","🚝","🚞","🚋","🚌","🚍","🚎","🚐","🚑","🚒","🚓","🚔","🚕","🚖","🚗","🚘","🚙","🛻","🚚","🚛","🚜","🏎️","🏍️","🛵","🦽","🦼","🛺","🚲","🛴","🛹","🛼","🚏","🛣️","🛤️","🛢️","⛽","🚨","🚥","🚦","🛑","🚧","⚓","⛵","🛶","🚤","🛳️","⛴️","🛥️","🚢","✈️","🛩️","🛫","🛬","🪂","💺","🚁","🚟","🚠","🚡","🛰️","🚀","🛸","🛎️","🧳","⌛","⏳","⌚","⏰","⏱️","⏲️","🕰️","🕛","🕧","🕐","🕜","🕑","🕝","🕒","🕞","🕓","🕟","🕔","🕠","🕕","🕡","🕖","🕢","🕗","🕣","🕘","🕤","🕙","🕥","🕚","🕦","🌑","🌒","🌓","🌔","🌕","🌖","🌗","🌘","🌙","🌚","🌛","🌜","🌡️","☀️","🌝","🌞","🪐","⭐","🌟","🌠","🌌","☁️","⛅","⛈️","🌤️","🌥️","🌦️","🌧️","🌨️","🌩️","🌪️","🌫️","🌬️","🌀","🌈","🌂","☂️","☔","⛱️","⚡","❄️","☃️","⛄","☄️","🔥","💧","🌊"],activity:["🎃","🎄","🎆","🎇","🧨","✨","🎈","🎉","🎊","🎋","🎍","🎎","🎏","🎐","🎑","🧧","🎀","🎁","🎗️","🎟️","🎫","🎖️","🏆","🏅","🥇","🥈","🥉","⚽","⚾","🥎","🏀","🏐","🏈","🏉","🎾","🥏","🎳","🏏","🏑","🏒","🥍","🏓","🏸","🥊","🥋","🥅","⛳","⛸️","🎣","🤿","🎽","🎿","🛷","🥌","🎯","🪀","🪁","🎱","🔮","🪄","🧿","🎮","🕹️","🎰","🎲","🧩","🧸","🪅","🪆","♠️","♥️","♦️","♣️","♟️","🃏","🀄","🎴","🎭","🖼️","🎨","🧵","🪡","🧶","🪢"],object:["👓","🕶️","🥽","🥼","🦺","👔","👕","👖","🧣","🧤","🧥","🧦","👗","👘","🥻","🩱","🩲","🩳","👙","👚","👛","👜","👝","🛍️","🎒","🩴","👞","👟","🥾","🥿","👠","👡","🩰","👢","👑","👒","🎩","🎓","🧢","🪖","⛑️","📿","💄","💍","💎","🔇","🔈","🔉","🔊","📢","📣","📯","🔔","🔕","🎼","🎵","🎶","🎙️","🎚️","🎛️","🎤","🎧","📻","🎷","🪗","🎸","🎹","🎺","🎻","🪕","🥁","🪘","📱","📲","☎️","📞","📟","📠","🔋","🔌","💻","🖥️","🖨️","⌨️","🖱️","🖲️","💽","💾","💿","📀","🧮","🎥","🎞️","📽️","🎬","📺","📷","📸","📹","📼","🔍","🔎","🕯️","💡","🔦","🏮","🪔","📔","📕","📖","📗","📘","📙","📚","📓","📒","📃","📜","📄","📰","🗞️","📑","🔖","🏷️","💰","🪙","💴","💵","💶","💷","💸","💳","🧾","💹","✉️","📧","📨","📩","📤","📥","📦","📫","📪","📬","📭","📮","🗳️","✏️","✒️","🖋️","🖊️","🖌️","🖍️","📝","💼","📁","📂","🗂️","📅","📆","🗒️","🗓️","📇","📈","📉","📊","📋","📌","📍","📎","🖇️","📏","📐","✂️","🗃️","🗄️","🗑️","🔒","🔓","🔏","🔐","🔑","🗝️","🔨","🪓","⛏️","⚒️","🛠️","🗡️","⚔️","🔫","🪃","🏹","🛡️","🪚","🔧","🪛","🔩","⚙️","🗜️","⚖️","🦯","🔗","⛓️","🪝","🧰","🧲","🪜","⚗️","🧪","🧫","🧬","🔬","🔭","📡","💉","🩸","💊","🩹","🩺","🚪","🛗","🪞","🪟","🛏️","🛋️","🪑","🚽","🪠","🚿","🛁","🪤","🪒","🧴","🧷","🧹","🧺","🧻","🪣","🧼","🪥","🧽","🧯","🛒","🚬","⚰️","🪦","⚱️","🗿","🪧"],symbol:["🏧","🚮","🚰","♿","🚹","🚺","🚻","🚼","🚾","🛂","🛃","🛄","🛅","⚠️","🚸","⛔","🚫","🚳","🚭","🚯","🚱","🚷","📵","🔞","☢️","☣️","⬆️","↗️","➡️","↘️","⬇️","↙️","⬅️","↖️","↕️","↔️","↩️","↪️","⤴️","⤵️","🔃","🔄","🔙","🔚","🔛","🔜","🔝","🛐","⚛️","🕉️","✡️","☸️","☯️","✝️","☦️","☪️","☮️","🕎","🔯","♈","♉","♊","♋","♌","♍","♎","♏","♐","♑","♒","♓","⛎","🔀","🔁","🔂","▶️","⏩","⏭️","⏯️","◀️","⏪","⏮️","🔼","⏫","🔽","⏬","⏸️","⏹️","⏺️","⏏️","🎦","🔅","🔆","📶","📳","📴","♀️","♂️","⚧️","✖️","➕","➖","➗","♾️","‼️","⁉️","❓","❔","❕","❗","〰️","💱","💲","⚕️","♻️","⚜️","🔱","📛","🔰","⭕","✅","☑️","✔️","❌","❎","➰","➿","〽️","✳️","✴️","❇️","©️","®️","™️","#️⃣","*️⃣","0️⃣","1️⃣","2️⃣","3️⃣","4️⃣","5️⃣","6️⃣","7️⃣","8️⃣","9️⃣","🔟","🔠","🔡","🔢","🔣","🔤","🅰️","🆎","🅱️","🆑","🆒","🆓","ℹ️","🆔","Ⓜ️","🆕","🆖","🅾️","🆗","🅿️","🆘","🆙","🆚","🈁","🈂️","🈷️","🈶","🈯","🉐","🈹","🈚","🈲","🉑","🈸","🈴","🈳","㊗️","㊙️","🈺","🈵","🔴","🟠","🟡","🟢","🔵","🟣","🟤","⚫","⚪","🟥","🟧","🟨","🟩","🟦","🟪","🟫","⬛","⬜","◼️","◻️","◾","◽","▪️","▫️","🔶","🔷","🔸","🔹","🔺","🔻","💠","🔘","🔳","🔲"],flag:["🏁","🚩","🎌","🏴","🏳️","🏳️‍🌈","🏳️‍⚧️","🏴‍☠️","🇦🇨","🇦🇩","🇦🇪","🇦🇫","🇦🇬","🇦🇮","🇦🇱","🇦🇲","🇦🇴","🇦🇶","🇦🇷","🇦🇸","🇦🇹","🇦🇺","🇦🇼","🇦🇽","🇦🇿","🇧🇦","🇧🇧","🇧🇩","🇧🇪","🇧🇫","🇧🇬","🇧🇭","🇧🇮","🇧🇯","🇧🇱","🇧🇲","🇧🇳","🇧🇴","🇧🇶","🇧🇷","🇧🇸","🇧🇹","🇧🇻","🇧🇼","🇧🇾","🇧🇿","🇨🇦","🇨🇨","🇨🇩","🇨🇫","🇨🇬","🇨🇭","🇨🇮","🇨🇰","🇨🇱","🇨🇲","🇨🇳","🇨🇴","🇨🇵","🇨🇷","🇨🇺","🇨🇻","🇨🇼","🇨🇽","🇨🇾","🇨🇿","🇩🇪","🇩🇬","🇩🇯","🇩🇰","🇩🇲","🇩🇴","🇩🇿","🇪🇦","🇪🇨","🇪🇪","🇪🇬","🇪🇭","🇪🇷","🇪🇸","🇪🇹","🇪🇺","🇫🇮","🇫🇯","🇫🇰","🇫🇲","🇫🇴","🇫🇷","🇬🇦","🇬🇧","🇬🇩","🇬🇪","🇬🇫","🇬🇬","🇬🇭","🇬🇮","🇬🇱","🇬🇲","🇬🇳","🇬🇵","🇬🇶","🇬🇷","🇬🇸","🇬🇹","🇬🇺","🇬🇼","🇬🇾","🇭🇰","🇭🇲","🇭🇳","🇭🇷","🇭🇹","🇭🇺","🇮🇨","🇮🇩","🇮🇪","🇮🇱","🇮🇲","🇮🇳","🇮🇴","🇮🇶","🇮🇷","🇮🇸","🇮🇹","🇯🇪","🇯🇲","🇯🇴","🇯🇵","🇰🇪","🇰🇬","🇰🇭","🇰🇮","🇰🇲","🇰🇳","🇰🇵","🇰🇷","🇰🇼","🇰🇾","🇰🇿","🇱🇦","🇱🇧","🇱🇨","🇱🇮","🇱🇰","🇱🇷","🇱🇸","🇱🇹","🇱🇺","🇱🇻","🇱🇾","🇲🇦","🇲🇨","🇲🇩","🇲🇪","🇲🇫","🇲🇬","🇲🇭","🇲🇰","🇲🇱","🇲🇲","🇲🇳","🇲🇴","🇲🇵","🇲🇶","🇲🇷","🇲🇸","🇲🇹","🇲🇺","🇲🇻","🇲🇼","🇲🇽","🇲🇾","🇲🇿","🇳🇦","🇳🇨","🇳🇪","🇳🇫","🇳🇬","🇳🇮","🇳🇱","🇳🇴","🇳🇵","🇳🇷","🇳🇺","🇳🇿","🇴🇲","🇵🇦","🇵🇪","🇵🇫","🇵🇬","🇵🇭","🇵🇰","🇵🇱","🇵🇲","🇵🇳","🇵🇷","🇵🇸","🇵🇹","🇵🇼","🇵🇾","🇶🇦","🇷🇪","🇷🇴","🇷🇸","🇷🇺","🇷🇼","🇸🇦","🇸🇧","🇸🇨","🇸🇩","🇸🇪","🇸🇬","🇸🇭","🇸🇮","🇸🇯","🇸🇰","🇸🇱","🇸🇲","🇸🇳","🇸🇴","🇸🇷","🇸🇸","🇸🇹","🇸🇻","🇸🇽","🇸🇾","🇸🇿","🇹🇦","🇹🇨","🇹🇩","🇹🇫","🇹🇬","🇹🇭","🇹🇯","🇹🇰","🇹🇱","🇹🇲","🇹🇳","🇹🇴","🇹🇷","🇹🇹","🇹🇻","🇹🇼","🇹🇿","🇺🇦","🇺🇬","🇺🇲","🇺🇳","🇺🇸","🇺🇾","🇺🇿","🇻🇦","🇻🇨","🇻🇪","🇻🇬","🇻🇮","🇻🇳","🇻🇺","🇼🇫","🇼🇸","🇽🇰","🇾🇪","🇾🇹","🇿🇦","🇿🇲","🇿🇼"]},http_status_code:{informational:[100,101,102,103],success:[200,201,202,203,204,205,206,207,208,226],redirection:[300,301,302,303,304,305,306,307,308],clientError:[400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,421,422,423,424,425,426,428,429,431,451],serverError:[500,501,502,503,504,505,506,507,508,510,511]}},location:{country_code:[{alpha2:"AD",alpha3:"AND",numeric:"020"},{alpha2:"AE",alpha3:"ARE",numeric:"784"},{alpha2:"AF",alpha3:"AFG",numeric:"004"},{alpha2:"AG",alpha3:"ATG",numeric:"028"},{alpha2:"AI",alpha3:"AIA",numeric:"660"},{alpha2:"AL",alpha3:"ALB",numeric:"008"},{alpha2:"AM",alpha3:"ARM",numeric:"051"},{alpha2:"AO",alpha3:"AGO",numeric:"024"},{alpha2:"AQ",alpha3:"ATA",numeric:"010"},{alpha2:"AR",alpha3:"ARG",numeric:"032"},{alpha2:"AS",alpha3:"ASM",numeric:"016"},{alpha2:"AT",alpha3:"AUT",numeric:"040"},{alpha2:"AU",alpha3:"AUS",numeric:"036"},{alpha2:"AW",alpha3:"ABW",numeric:"533"},{alpha2:"AX",alpha3:"ALA",numeric:"248"},{alpha2:"AZ",alpha3:"AZE",numeric:"031"},{alpha2:"BA",alpha3:"BIH",numeric:"070"},{alpha2:"BB",alpha3:"BRB",numeric:"052"},{alpha2:"BD",alpha3:"BGD",numeric:"050"},{alpha2:"BE",alpha3:"BEL",numeric:"056"},{alpha2:"BF",alpha3:"BFA",numeric:"854"},{alpha2:"BG",alpha3:"BGR",numeric:"100"},{alpha2:"BH",alpha3:"BHR",numeric:"048"},{alpha2:"BI",alpha3:"BDI",numeric:"108"},{alpha2:"BJ",alpha3:"BEN",numeric:"204"},{alpha2:"BL",alpha3:"BLM",numeric:"652"},{alpha2:"BM",alpha3:"BMU",numeric:"060"},{alpha2:"BN",alpha3:"BRN",numeric:"096"},{alpha2:"BO",alpha3:"BOL",numeric:"068"},{alpha2:"BQ",alpha3:"BES",numeric:"535"},{alpha2:"BR",alpha3:"BRA",numeric:"076"},{alpha2:"BS",alpha3:"BHS",numeric:"044"},{alpha2:"BT",alpha3:"BTN",numeric:"064"},{alpha2:"BV",alpha3:"BVT",numeric:"074"},{alpha2:"BW",alpha3:"BWA",numeric:"072"},{alpha2:"BY",alpha3:"BLR",numeric:"112"},{alpha2:"BZ",alpha3:"BLZ",numeric:"084"},{alpha2:"CA",alpha3:"CAN",numeric:"124"},{alpha2:"CC",alpha3:"CCK",numeric:"166"},{alpha2:"CD",alpha3:"COD",numeric:"180"},{alpha2:"CF",alpha3:"CAF",numeric:"140"},{alpha2:"CG",alpha3:"COG",numeric:"178"},{alpha2:"CH",alpha3:"CHE",numeric:"756"},{alpha2:"CI",alpha3:"CIV",numeric:"384"},{alpha2:"CK",alpha3:"COK",numeric:"184"},{alpha2:"CL",alpha3:"CHL",numeric:"152"},{alpha2:"CM",alpha3:"CMR",numeric:"120"},{alpha2:"CN",alpha3:"CHN",numeric:"156"},{alpha2:"CO",alpha3:"COL",numeric:"170"},{alpha2:"CR",alpha3:"CRI",numeric:"188"},{alpha2:"CU",alpha3:"CUB",numeric:"192"},{alpha2:"CV",alpha3:"CPV",numeric:"132"},{alpha2:"CW",alpha3:"CUW",numeric:"531"},{alpha2:"CX",alpha3:"CXR",numeric:"162"},{alpha2:"CY",alpha3:"CYP",numeric:"196"},{alpha2:"CZ",alpha3:"CZE",numeric:"203"},{alpha2:"DE",alpha3:"DEU",numeric:"276"},{alpha2:"DJ",alpha3:"DJI",numeric:"262"},{alpha2:"DK",alpha3:"DNK",numeric:"208"},{alpha2:"DM",alpha3:"DMA",numeric:"212"},{alpha2:"DO",alpha3:"DOM",numeric:"214"},{alpha2:"DZ",alpha3:"DZA",numeric:"012"},{alpha2:"EC",alpha3:"ECU",numeric:"218"},{alpha2:"EE",alpha3:"EST",numeric:"233"},{alpha2:"EG",alpha3:"EGY",numeric:"818"},{alpha2:"EH",alpha3:"ESH",numeric:"732"},{alpha2:"ER",alpha3:"ERI",numeric:"232"},{alpha2:"ES",alpha3:"ESP",numeric:"724"},{alpha2:"ET",alpha3:"ETH",numeric:"231"},{alpha2:"FI",alpha3:"FIN",numeric:"246"},{alpha2:"FJ",alpha3:"FJI",numeric:"242"},{alpha2:"FK",alpha3:"FLK",numeric:"238"},{alpha2:"FM",alpha3:"FSM",numeric:"583"},{alpha2:"FO",alpha3:"FRO",numeric:"234"},{alpha2:"FR",alpha3:"FRA",numeric:"250"},{alpha2:"GA",alpha3:"GAB",numeric:"266"},{alpha2:"GB",alpha3:"GBR",numeric:"826"},{alpha2:"GD",alpha3:"GRD",numeric:"308"},{alpha2:"GE",alpha3:"GEO",numeric:"268"},{alpha2:"GF",alpha3:"GUF",numeric:"254"},{alpha2:"GG",alpha3:"GGY",numeric:"831"},{alpha2:"GH",alpha3:"GHA",numeric:"288"},{alpha2:"GI",alpha3:"GIB",numeric:"292"},{alpha2:"GL",alpha3:"GRL",numeric:"304"},{alpha2:"GM",alpha3:"GMB",numeric:"270"},{alpha2:"GN",alpha3:"GIN",numeric:"324"},{alpha2:"GP",alpha3:"GLP",numeric:"312"},{alpha2:"GQ",alpha3:"GNQ",numeric:"226"},{alpha2:"GR",alpha3:"GRC",numeric:"300"},{alpha2:"GS",alpha3:"SGS",numeric:"239"},{alpha2:"GT",alpha3:"GTM",numeric:"320"},{alpha2:"GU",alpha3:"GUM",numeric:"316"},{alpha2:"GW",alpha3:"GNB",numeric:"624"},{alpha2:"GY",alpha3:"GUY",numeric:"328"},{alpha2:"HK",alpha3:"HKG",numeric:"344"},{alpha2:"HM",alpha3:"HMD",numeric:"334"},{alpha2:"HN",alpha3:"HND",numeric:"340"},{alpha2:"HR",alpha3:"HRV",numeric:"191"},{alpha2:"HT",alpha3:"HTI",numeric:"332"},{alpha2:"HU",alpha3:"HUN",numeric:"348"},{alpha2:"ID",alpha3:"IDN",numeric:"360"},{alpha2:"IE",alpha3:"IRL",numeric:"372"},{alpha2:"IL",alpha3:"ISR",numeric:"376"},{alpha2:"IM",alpha3:"IMN",numeric:"833"},{alpha2:"IN",alpha3:"IND",numeric:"356"},{alpha2:"IO",alpha3:"IOT",numeric:"086"},{alpha2:"IQ",alpha3:"IRQ",numeric:"368"},{alpha2:"IR",alpha3:"IRN",numeric:"364"},{alpha2:"IS",alpha3:"ISL",numeric:"352"},{alpha2:"IT",alpha3:"ITA",numeric:"380"},{alpha2:"JE",alpha3:"JEY",numeric:"832"},{alpha2:"JM",alpha3:"JAM",numeric:"388"},{alpha2:"JO",alpha3:"JOR",numeric:"400"},{alpha2:"JP",alpha3:"JPN",numeric:"392"},{alpha2:"KE",alpha3:"KEN",numeric:"404"},{alpha2:"KG",alpha3:"KGZ",numeric:"417"},{alpha2:"KH",alpha3:"KHM",numeric:"116"},{alpha2:"KI",alpha3:"KIR",numeric:"296"},{alpha2:"KM",alpha3:"COM",numeric:"174"},{alpha2:"KN",alpha3:"KNA",numeric:"659"},{alpha2:"KP",alpha3:"PRK",numeric:"408"},{alpha2:"KR",alpha3:"KOR",numeric:"410"},{alpha2:"KW",alpha3:"KWT",numeric:"414"},{alpha2:"KY",alpha3:"CYM",numeric:"136"},{alpha2:"KZ",alpha3:"KAZ",numeric:"398"},{alpha2:"LA",alpha3:"LAO",numeric:"418"},{alpha2:"LB",alpha3:"LBN",numeric:"422"},{alpha2:"LC",alpha3:"LCA",numeric:"662"},{alpha2:"LI",alpha3:"LIE",numeric:"438"},{alpha2:"LK",alpha3:"LKA",numeric:"144"},{alpha2:"LR",alpha3:"LBR",numeric:"430"},{alpha2:"LS",alpha3:"LSO",numeric:"426"},{alpha2:"LT",alpha3:"LTU",numeric:"440"},{alpha2:"LU",alpha3:"LUX",numeric:"442"},{alpha2:"LV",alpha3:"LVA",numeric:"428"},{alpha2:"LY",alpha3:"LBY",numeric:"434"},{alpha2:"MA",alpha3:"MAR",numeric:"504"},{alpha2:"MC",alpha3:"MCO",numeric:"492"},{alpha2:"MD",alpha3:"MDA",numeric:"498"},{alpha2:"ME",alpha3:"MNE",numeric:"499"},{alpha2:"MF",alpha3:"MAF",numeric:"663"},{alpha2:"MG",alpha3:"MDG",numeric:"450"},{alpha2:"MH",alpha3:"MHL",numeric:"584"},{alpha2:"MK",alpha3:"MKD",numeric:"807"},{alpha2:"ML",alpha3:"MLI",numeric:"466"},{alpha2:"MM",alpha3:"MMR",numeric:"104"},{alpha2:"MN",alpha3:"MNG",numeric:"496"},{alpha2:"MO",alpha3:"MAC",numeric:"446"},{alpha2:"MP",alpha3:"MNP",numeric:"580"},{alpha2:"MQ",alpha3:"MTQ",numeric:"474"},{alpha2:"MR",alpha3:"MRT",numeric:"478"},{alpha2:"MS",alpha3:"MSR",numeric:"500"},{alpha2:"MT",alpha3:"MLT",numeric:"470"},{alpha2:"MU",alpha3:"MUS",numeric:"480"},{alpha2:"MV",alpha3:"MDV",numeric:"462"},{alpha2:"MW",alpha3:"MWI",numeric:"454"},{alpha2:"MX",alpha3:"MEX",numeric:"484"},{alpha2:"MY",alpha3:"MYS",numeric:"458"},{alpha2:"MZ",alpha3:"MOZ",numeric:"508"},{alpha2:"NA",alpha3:"NAM",numeric:"516"},{alpha2:"NC",alpha3:"NCL",numeric:"540"},{alpha2:"NE",alpha3:"NER",numeric:"562"},{alpha2:"NF",alpha3:"NFK",numeric:"574"},{alpha2:"NG",alpha3:"NGA",numeric:"566"},{alpha2:"NI",alpha3:"NIC",numeric:"558"},{alpha2:"NL",alpha3:"NLD",numeric:"528"},{alpha2:"NO",alpha3:"NOR",numeric:"578"},{alpha2:"NP",alpha3:"NPL",numeric:"524"},{alpha2:"NR",alpha3:"NRU",numeric:"520"},{alpha2:"NU",alpha3:"NIU",numeric:"570"},{alpha2:"NZ",alpha3:"NZL",numeric:"554"},{alpha2:"OM",alpha3:"OMN",numeric:"512"},{alpha2:"PA",alpha3:"PAN",numeric:"591"},{alpha2:"PE",alpha3:"PER",numeric:"604"},{alpha2:"PF",alpha3:"PYF",numeric:"258"},{alpha2:"PG",alpha3:"PNG",numeric:"598"},{alpha2:"PH",alpha3:"PHL",numeric:"608"},{alpha2:"PK",alpha3:"PAK",numeric:"586"},{alpha2:"PL",alpha3:"POL",numeric:"616"},{alpha2:"PM",alpha3:"SPM",numeric:"666"},{alpha2:"PN",alpha3:"PCN",numeric:"612"},{alpha2:"PR",alpha3:"PRI",numeric:"630"},{alpha2:"PS",alpha3:"PSE",numeric:"275"},{alpha2:"PT",alpha3:"PRT",numeric:"620"},{alpha2:"PW",alpha3:"PLW",numeric:"585"},{alpha2:"PY",alpha3:"PRY",numeric:"600"},{alpha2:"QA",alpha3:"QAT",numeric:"634"},{alpha2:"RE",alpha3:"REU",numeric:"638"},{alpha2:"RO",alpha3:"ROU",numeric:"642"},{alpha2:"RS",alpha3:"SRB",numeric:"688"},{alpha2:"RU",alpha3:"RUS",numeric:"643"},{alpha2:"RW",alpha3:"RWA",numeric:"646"},{alpha2:"SA",alpha3:"SAU",numeric:"682"},{alpha2:"SB",alpha3:"SLB",numeric:"090"},{alpha2:"SC",alpha3:"SYC",numeric:"690"},{alpha2:"SD",alpha3:"SDN",numeric:"729"},{alpha2:"SE",alpha3:"SWE",numeric:"752"},{alpha2:"SG",alpha3:"SGP",numeric:"702"},{alpha2:"SH",alpha3:"SHN",numeric:"654"},{alpha2:"SI",alpha3:"SVN",numeric:"705"},{alpha2:"SJ",alpha3:"SJM",numeric:"744"},{alpha2:"SK",alpha3:"SVK",numeric:"703"},{alpha2:"SL",alpha3:"SLE",numeric:"694"},{alpha2:"SM",alpha3:"SMR",numeric:"674"},{alpha2:"SN",alpha3:"SEN",numeric:"686"},{alpha2:"SO",alpha3:"SOM",numeric:"706"},{alpha2:"SR",alpha3:"SUR",numeric:"740"},{alpha2:"SS",alpha3:"SSD",numeric:"728"},{alpha2:"ST",alpha3:"STP",numeric:"678"},{alpha2:"SV",alpha3:"SLV",numeric:"222"},{alpha2:"SX",alpha3:"SXM",numeric:"534"},{alpha2:"SY",alpha3:"SYR",numeric:"760"},{alpha2:"SZ",alpha3:"SWZ",numeric:"748"},{alpha2:"TC",alpha3:"TCA",numeric:"796"},{alpha2:"TD",alpha3:"TCD",numeric:"148"},{alpha2:"TF",alpha3:"ATF",numeric:"260"},{alpha2:"TG",alpha3:"TGO",numeric:"768"},{alpha2:"TH",alpha3:"THA",numeric:"764"},{alpha2:"TJ",alpha3:"TJK",numeric:"762"},{alpha2:"TK",alpha3:"TKL",numeric:"772"},{alpha2:"TL",alpha3:"TLS",numeric:"626"},{alpha2:"TM",alpha3:"TKM",numeric:"795"},{alpha2:"TN",alpha3:"TUN",numeric:"788"},{alpha2:"TO",alpha3:"TON",numeric:"776"},{alpha2:"TR",alpha3:"TUR",numeric:"792"},{alpha2:"TT",alpha3:"TTO",numeric:"780"},{alpha2:"TV",alpha3:"TUV",numeric:"798"},{alpha2:"TW",alpha3:"TWN",numeric:"158"},{alpha2:"TZ",alpha3:"TZA",numeric:"834"},{alpha2:"UA",alpha3:"UKR",numeric:"804"},{alpha2:"UG",alpha3:"UGA",numeric:"800"},{alpha2:"UM",alpha3:"UMI",numeric:"581"},{alpha2:"US",alpha3:"USA",numeric:"840"},{alpha2:"UY",alpha3:"URY",numeric:"858"},{alpha2:"UZ",alpha3:"UZB",numeric:"860"},{alpha2:"VA",alpha3:"VAT",numeric:"336"},{alpha2:"VC",alpha3:"VCT",numeric:"670"},{alpha2:"VE",alpha3:"VEN",numeric:"862"},{alpha2:"VG",alpha3:"VGB",numeric:"092"},{alpha2:"VI",alpha3:"VIR",numeric:"850"},{alpha2:"VN",alpha3:"VNM",numeric:"704"},{alpha2:"VU",alpha3:"VUT",numeric:"548"},{alpha2:"WF",alpha3:"WLF",numeric:"876"},{alpha2:"WS",alpha3:"WSM",numeric:"882"},{alpha2:"YE",alpha3:"YEM",numeric:"887"},{alpha2:"YT",alpha3:"MYT",numeric:"175"},{alpha2:"ZA",alpha3:"ZAF",numeric:"710"},{alpha2:"ZM",alpha3:"ZMB",numeric:"894"},{alpha2:"ZW",alpha3:"ZWE",numeric:"716"}],time_zone:YC},metadata:{title:"Base",code:"base"},system:{directory_path:["/Applications","/bin","/boot","/boot/defaults","/dev","/etc","/etc/defaults","/etc/mail","/etc/namedb","/etc/periodic","/etc/ppp","/home","/home/user","/home/user/dir","/lib","/Library","/lost+found","/media","/mnt","/net","/Network","/opt","/opt/bin","/opt/include","/opt/lib","/opt/sbin","/opt/share","/private","/private/tmp","/private/var","/proc","/rescue","/root","/sbin","/selinux","/srv","/sys","/System","/tmp","/Users","/usr","/usr/X11R6","/usr/bin","/usr/include","/usr/lib","/usr/libdata","/usr/libexec","/usr/local/bin","/usr/local/src","/usr/obj","/usr/ports","/usr/sbin","/usr/share","/usr/src","/var","/var/log","/var/mail","/var/spool","/var/tmp","/var/yp"],mime_type:{"application/epub+zip":{extensions:["epub"]},"application/gzip":{extensions:["gz"]},"application/java-archive":{extensions:["jar","war","ear"]},"application/json":{extensions:["json","map"]},"application/ld+json":{extensions:["jsonld"]},"application/msword":{extensions:["doc","dot"]},"application/octet-stream":{extensions:["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"]},"application/ogg":{extensions:["ogx"]},"application/pdf":{extensions:["pdf"]},"application/rtf":{extensions:["rtf"]},"application/vnd.amazon.ebook":{extensions:["azw"]},"application/vnd.apple.installer+xml":{extensions:["mpkg"]},"application/vnd.mozilla.xul+xml":{extensions:["xul"]},"application/vnd.ms-excel":{extensions:["xls","xlm","xla","xlc","xlt","xlw"]},"application/vnd.ms-fontobject":{extensions:["eot"]},"application/vnd.ms-powerpoint":{extensions:["ppt","pps","pot"]},"application/vnd.oasis.opendocument.presentation":{extensions:["odp"]},"application/vnd.oasis.opendocument.spreadsheet":{extensions:["ods"]},"application/vnd.oasis.opendocument.text":{extensions:["odt"]},"application/vnd.openxmlformats-officedocument.presentationml.presentation":{extensions:["pptx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":{extensions:["xlsx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.document":{extensions:["docx"]},"application/vnd.rar":{extensions:["rar"]},"application/vnd.visio":{extensions:["vsd","vst","vss","vsw"]},"application/x-7z-compressed":{extensions:["7z"]},"application/x-abiword":{extensions:["abw"]},"application/x-bzip":{extensions:["bz"]},"application/x-bzip2":{extensions:["bz2","boz"]},"application/x-csh":{extensions:["csh"]},"application/x-freearc":{extensions:["arc"]},"application/x-httpd-php":{extensions:["php"]},"application/x-sh":{extensions:["sh"]},"application/x-tar":{extensions:["tar"]},"application/xhtml+xml":{extensions:["xhtml","xht"]},"application/xml":{extensions:["xml","xsl","xsd","rng"]},"application/zip":{extensions:["zip"]},"audio/3gpp":{extensions:["3gpp"]},"audio/3gpp2":{extensions:["3g2"]},"audio/aac":{extensions:["aac"]},"audio/midi":{extensions:["mid","midi","kar","rmi"]},"audio/mpeg":{extensions:["mpga","mp2","mp2a","mp3","m2a","m3a"]},"audio/ogg":{extensions:["oga","ogg","spx","opus"]},"audio/opus":{extensions:["opus"]},"audio/wav":{extensions:["wav"]},"audio/webm":{extensions:["weba"]},"font/otf":{extensions:["otf"]},"font/ttf":{extensions:["ttf"]},"font/woff":{extensions:["woff"]},"font/woff2":{extensions:["woff2"]},"image/avif":{extensions:["avif"]},"image/bmp":{extensions:["bmp"]},"image/gif":{extensions:["gif"]},"image/jpeg":{extensions:["jpeg","jpg","jpe"]},"image/png":{extensions:["png"]},"image/svg+xml":{extensions:["svg","svgz"]},"image/tiff":{extensions:["tif","tiff"]},"image/vnd.microsoft.icon":{extensions:["ico"]},"image/webp":{extensions:["webp"]},"text/calendar":{extensions:["ics","ifb"]},"text/css":{extensions:["css"]},"text/csv":{extensions:["csv"]},"text/html":{extensions:["html","htm","shtml"]},"text/javascript":{extensions:["js","mjs"]},"text/plain":{extensions:["txt","text","conf","def","list","log","in","ini"]},"video/3gpp":{extensions:["3gp","3gpp"]},"video/3gpp2":{extensions:["3g2"]},"video/mp2t":{extensions:["ts"]},"video/mp4":{extensions:["mp4","mp4v","mpg4"]},"video/mpeg":{extensions:["mpeg","mpg","mpe","m1v","m2v"]},"video/ogg":{extensions:["ogv"]},"video/webm":{extensions:["webm"]},"video/x-msvideo":{extensions:["avi"]}}}},UC=new class extends uC{rawDefinitions;definitions;airline=new Lw(this);animal=new dC(this);color=new Pw(this);commerce=new yC(this);company=new fC(this);database=new mC(this);date=new qw(this);finance=new vC(this);food=new xC(this);git=new kC(this);hacker=new wC(this);helpers=new iC(this);image=new _C(this);internet=new EC(this);location=new RC(this);lorem=new PC(this);music=new NC(this);person=new zw(this);phone=new GC(this);science=new IC(this);system=new JC(this);vehicle=new VC(this);word=new jC(this);get address(){return hC({deprecated:"faker.address",proposed:"faker.location",since:"8.0",until:"10.0"}),this.location}get name(){return hC({deprecated:"faker.name",proposed:"faker.person",since:"8.0",until:"10.0"}),this.person}constructor(e){super({randomizer:e.randomizer});let{locale:t}=e;if(Array.isArray(t)){if(0===t.length)throw new ww("The locale option must contain at least one locale definition.");t=function(e){let t={};for(let r of e)for(let e in r){let a=r[e];void 0===t[e]?t[e]={...a}:t[e]={...a,...t[e]}}return t}(t)}this.rawDefinitions=t,this.definitions=jw(this.rawDefinitions)}getMetadata(){return this.rawDefinitions.metadata??{}}}({locale:[kw,$C]});class qC{data_length=50;generated_data=[];auto_proceed=!0;locale="en_GB";imgAPIs=["https://picsum.photos/500/500?random=","https://avatar.iran.liara.run/public/"];constructor({length:e,auto_proceed:t,locale:r}){void 0!==e&&(this.data_length=e),void 0!==t&&(this.auto_proceed=t),void 0!==r&&(this.locale=r.replace("-","_")),this.auto_proceed&&this.generate()}generate(){return this.make_data()}make_data(){for(let e=0;e0&&(t.parentId=this.get_parent_id(e)),this.generated_data.push(t)}return this.generated_data}get_parent_id(e){let t=Math.floor(Math.random()*this.generated_data.length).toString();return t=0==parseInt(t)?"1":t,t==(e+1).toString()&&(t=this.get_parent_id(e)),t}generate_data(e){const t=Math.floor(2*Math.random()),r=this.imgAPIs[Math.floor(Math.random()*this.imgAPIs.length)]+e;return{id:e,name:UC.person.fullName(),role:UC.person.jobTitle(),location:UC.location.city()+", "+UC.location.country(),image:t?r:""}}}class ZC{tree_data=[];handleCollapseChildren=()=>{};center_elem=({})=>null;itemHierarchy=[];tmp_tree_data=[];tree_level_step=2;display_tree_in_step=!0;auto_display_tree_in_step=!0;link_point_position={top:e=>`translate(${parseInt(e.attr("width"))/2}, 0)`,bottom:e=>`translate(${parseInt(e.attr("width"))/2}, ${e.attr("height")})`,right:e=>`translate(${e.attr("width")}, ${e.attr("height")/2})`,left:e=>`translate(0, ${e.attr("height")/2})`};inverse_link_point_position={top:"bottom",bottom:"top",left:"right",right:"left"};chartHeadWidth=120;chartHeadHeight=130;chartHeadLandscapeWidth=240;chartHeadLandscapeHeight=80;chartHeadRoundedWidth=120;chartHeadRoundedHeight=180;color_handler={};chart_head_type="default";show_chart_head_border=!0;animation_rotation_speed=50;animation_rotation_interval=1;head_linker_thumb_circle_radius=8;linker_thumb_icon_color="bright500";linker_thumb_shape="symbolDiamond2";head_image_shape="symbolCircle";head_image_surface_area=60;chart_head_bg="#ffffff";auto_set_chart_head_bg=!1;dropshadow={x:"-50%",y:"-50%",width:"200%",height:"200%",dx:1,dy:1,stdDeviation:4,floodColor:"rgba(91, 91, 91, 0.19)"};emitEvent=()=>!1;tree_link_types={curveBumpX:Hx,curveBumpY:Dx,curveBasisClosed:bk,curveLinear:gx,curveStep:Yk,curveStepAfter:Uk,curveStepBefore:$k};tree_link_type=void 0;rootWrapperContainer=null;app_unique_id="";app_root_unique_selector="";constructor(){setTimeout((()=>{this.app_root_unique_selector=`[data-ts-unique-id='${this.app_unique_id}']`}),0)}createDynamicEl(){return new xw}splitStringIntoBatch(e,t){let r=[];for(let a=0;a1?t?.[0][0]+t?.at(-1)?.[0]:t?.[0][0]}format_employee_name(e,t=15){const r=e?.split(" "),a=r?.length>2?r?.[0]+" "+r?.at(-1):r?.join(" ");return this.splitStringIntoBatch(a,t)}symbol_type(e){const t=e.replace(/symbol/,"").toLowerCase();return["circle","cross","diamond","square","star","triangle","wye"].includes(t)?"fill":["plus","x","triangle2","asterisk","square2","diamond2"].includes(t)?"stroke":"fill"}get_page_body_bg(){const e=jt("body").node().style.getPropertyValue("background-color");return""==e?"#ffffff":e}get_chart_head_bg(){return this.auto_set_chart_head_bg?this.get_page_body_bg():this.chart_head_bg}get_image_shape_spacing(e){return{symbolCircle:10,symbolCross:10,symbolDiamond:25,symbolDiamond2:10,symbolSquare:0,symbolSquare2:-8,symbolStar:20,symbolTriangle:20,symbolTriangle2:10,symbolWye:20}[e]}makeHead(e,t=!1,r={parent:"bottom",children:"top"}){return"default"==this.chart_head_type?this.defaultHead(e,t,r):"landscape"==this.chart_head_type?this.landscapeHead(e,t,r):"rounded"==this.chart_head_type?this.roundedHead(e,t,r):this.defaultHead(e,t,r)}handleCenterHead(e){e.stopPropagation();const t=e.currentTarget.getBoundingClientRect();this.center_elem(t,"center")}defaultHead(e,t=!1,r={parent:"bottom",children:"top"}){const a=this.tree_data.filter((t=>t.parentId===e.id)).length>0,i=this.tree_data.filter((t=>t.id===e.parentId)).length>0,n=this.color_handler.getColor(e.id);let o=0;const c=this.get_chart_head_bg(),l=Yt("svg").attr("class","main-svg-el"+(this.getIsElRootTreeChild(e.id)?" root-svg-el":"")).attr("width",this.chartHeadWidth).attr("height",this.chartHeadHeight).attr("min-height","0").attr("overflow","auto").on("dblclick",(e=>this.handleCenterHead(e)));this.add_drop_shadow(l);const s=l.append("g"),u=s?.append("rect").attr("rx",16).attr("ry",16).attr("width",this.chartHeadWidth).attr("height",this.chartHeadHeight).attr("stroke",this.show_chart_head_border?n.color:"none").attr("fill",c).attr("stroke-width",0).attr("filter","url(#shadow)"),h=parseInt(u.attr("width"))/2,d=s?.append("g").attr("y",100),p=Math.pow(this.head_image_surface_area-this.get_image_shape_spacing(this.head_image_shape),2);if(e.image){let t=h-this.head_image_surface_area;t=t>10?0:t-10,t=t>0?-t:t,t=h-this.head_image_surface_area<=10&&0==t?-10:t,o=h-this.head_image_surface_area<1?Math.abs(h-this.head_image_surface_area)+15:0,d.append("defs").append("clipPath").attr("id","default-head-clip-"+e.id).append("path").attr("d",pk().type(bw[this.head_image_shape]).size(p)).attr("transform",`translate(${parseInt(u.attr("width"))/2}, ${this.head_image_surface_area+t})`).attr("fill",n.bright500),d?.append("image").attr("href",e.image).attr("preserveAspectRatio","xMaxYMax slice").attr("width",this.head_image_surface_area).attr("height",this.head_image_surface_area).attr("x",parseInt(u.attr("width"))/2-this.head_image_surface_area/2).attr("y",this.head_image_surface_area/2+t).attr("clip-path",`url(#default-head-clip-${e.id})`)}else o=h-this.head_image_surface_area<1?Math.abs(h-this.head_image_surface_area)+15:0,d?.append("path").attr("d",pk().type(bw[this.head_image_shape]).size(p)).attr("stroke","stroke"==this.symbol_type(this.head_image_shape)?n.color:"none").attr("stroke-width","stroke"==this.symbol_type(this.head_image_shape)?1:0).attr("fill","stroke"==this.symbol_type(this.head_image_shape)?"transparent":n.color).attr("transform",`translate(${parseInt(u.attr("width"))/2}, 50)`),d?.append("text").attr("class","").attr("text-anchor","middle").attr("fill","stroke"==this.symbol_type(this.head_image_shape)?n.color:n.bright500).attr("x",parseInt(u.attr("width"))/2).attr("y",56).attr("font-size","95%").text(this.get_user_initials(e.name));this.format_employee_name(e.name).forEach(((e,t)=>{s?.append("text").attr("text-anchor","middle").attr("x",parseInt(u.attr("width"))/2).attr("y",t>0?95+o:80+o).attr("font-size","85%").attr("fill",n.darker).attr("style","text-transform: "+(t>0?"none":"capitalize")).text(e),t>0&&(o+=15)}));const y=s?.append("text").attr("text-anchor","middle").attr("x",parseInt(u.attr("width"))/2).attr("y",100+o).attr("font-size","65%");if(this.splitStringIntoBatch(e.role,20).forEach(((e,t)=>{y?.append("tspan").attr("x",parseInt(u.attr("width"))/2).attr("dy",t>0?10:0).text(e.toString()).attr("fill",n.dark100),t>0&&(o+=10)})),void 0!==e.location){const t=s?.append("text").attr("text-anchor","middle").attr("x",parseInt(u.attr("width"))/2).attr("y",115+o).attr("font-size","65%").attr("fill",n.dark100);this.splitStringIntoBatch(e.location,19).forEach(((e,r)=>{t?.append("tspan").attr("x",parseInt(u.attr("width"))/2).attr("dy",r>0?10:0).text(e.toString()),r>0&&(o+=10)}))}const f=this.chartHeadHeight+o;return u?.attr("height",f),l?.attr("height",f),this.add_linker(s,i,a,r,n,u,l,e,t),this.emitEvent("chart_head.create",{headNode:l.node()}),l}landscapeHead(e,t=!1,r={parent:"bottom",children:"top"}){const a=this.tree_data.filter((t=>t.parentId===e.id)).length>0,i=this.tree_data.filter((t=>t.id===e.parentId)).length>0,n=this.color_handler.getColor(e.id);let o=0;const c=this.get_chart_head_bg(),l=Yt("svg").attr("class","main-svg-el"+(this.getIsElRootTreeChild(e.id)?" root-svg-el":"")).attr("width",this.chartHeadLandscapeWidth).attr("height",this.chartHeadLandscapeHeight).attr("style","background-color: "+this.chart_head_bg).on("dblclick",(e=>this.handleCenterHead(e))),s=l.append("g");this.add_drop_shadow(l);const u=s?.append("rect").attr("rx",16).attr("ry",16).attr("width",this.chartHeadLandscapeWidth).attr("height",this.chartHeadLandscapeHeight).attr("stroke",this.show_chart_head_border?n.color:"none").attr("fill",c).attr("filter","url(#shadow)").attr("stroke-width",0),h=parseInt(u.attr("height"))/2,d=this.format_employee_name(e.name,18),p=s.append("g").attr("x",0).attr("y",0),y=parseInt(u.attr("height"))+20,f=p?.append("text").attr("x",y).attr("y",30).attr("font-size","95%").attr("fill",n.darker);d.forEach(((e,t)=>{f?.append("tspan").attr("x",y).attr("y",30).attr("dy",t>0?o+14+t:0).attr("font-size","95%").attr("style","z-index: +9").text(e.toString()),t>0&&(o+=14)}));const m=p?.append("text").attr("x",y).attr("y",54+o).attr("font-size","65%");if(this.splitStringIntoBatch(e.role,30).forEach(((e,t)=>{m?.append("tspan").attr("x",y).attr("dy",t>0?10:0).attr("y",54+o).text(e.toString()).attr("fill",n.dark100),t>0&&(o+=10)})),void 0!==e.location){const t=p?.append("text").attr("x",y).attr("y",69+o).attr("font-size","65%").attr("fill",n.dark100);this.splitStringIntoBatch(e.location,30).forEach(((e,r)=>{t?.append("tspan").attr("x",y).attr("dy",r>0?10:0).text(e.toString()),r>0&&(o+=10)}))}const g=s.append("g"),b=this.chartHeadLandscapeHeight+o;if(u.attr("height",b),l.attr("height",b),e.image){let t=h-this.head_image_surface_area;t=t>10?0:t-10,t=t>0?-t:t,t=h-this.head_image_surface_area<=10&&0==t?-10:t;const r=this.head_image_surface_area>h?Math.abs(this.head_image_surface_area-h):0;u.attr("height",b+r),l.attr("height",b+r),l.attr("width",this.chartHeadLandscapeWidth+r),u.attr("width",this.chartHeadLandscapeWidth+r),g.append("defs").append("clipPath").attr("id","landscape-clip-"+e.id).append("path").attr("d",pk().type(bw[this.head_image_shape]).size(Math.pow(this.head_image_surface_area-this.get_image_shape_spacing(this.head_image_shape),2))).attr("transform",`translate(50, ${parseInt(u.attr("height"))/2})`).attr("fill",n.bright500),g?.append("image").attr("href",e.image).attr("preserveAspectRatio","xMaxYMax slice").attr("width",this.head_image_surface_area).attr("height",this.head_image_surface_area).attr("x",50-this.head_image_surface_area/2).attr("y",parseInt(u.attr("height"))/2-this.head_image_surface_area/2).attr("clip-path",`url(#landscape-clip-${e.id})`)}else{const t=this.head_image_surface_area>h?Math.abs(this.head_image_surface_area-h):0;u.attr("height",b+t),l.attr("height",b+t),l.attr("width",this.chartHeadLandscapeWidth+20+t),u.attr("width",this.chartHeadLandscapeWidth+20+t),g?.append("path").attr("d",pk().type(bw[this.head_image_shape]).size(Math.pow(this.head_image_surface_area-this.get_image_shape_spacing(this.head_image_shape),2))).attr("stroke","stroke"==this.symbol_type(this.head_image_shape)?n.color:"none").attr("stroke-width","stroke"==this.symbol_type(this.head_image_shape)?1:0).attr("fill","stroke"==this.symbol_type(this.head_image_shape)?"transparent":n.color).attr("transform",`translate(50, ${parseInt(u.attr("height"))/2})`),g?.append("text").attr("class","").attr("text-anchor","middle").attr("fill","stroke"==this.symbol_type(this.head_image_shape)?n.color:n.bright500).attr("x",50).attr("y",parseInt(u.attr("height"))/2+6).attr("font-size","95%").text(this.get_user_initials(e.name))}return this.add_linker(s,i,a,r,n,u,l,e,t),this.emitEvent("chart_head.create",{headNode:l.node()}),l}roundedHead(e,t=!1,r={parent:"bottom",children:"top"}){const a=this.tree_data.filter((t=>t.parentId===e.id)).length>0,i=this.tree_data.filter((t=>t.id===e.parentId)).length>0,n=this.color_handler.getColor(e.id);let o=0;const c=Yt("svg").attr("class","main-svg-el rounded-head"+(this.getIsElRootTreeChild(e.id)?" root-svg-el":"")).attr("style","overflow: visible;").attr("width",this.chartHeadRoundedWidth).attr("height",this.chartHeadRoundedHeight).attr("fill","none").on("dblclick",(e=>this.handleCenterHead(e))),l=c.append("g"),s=l?.append("rect").attr("rx",16).attr("ry",16).attr("width",this.chartHeadRoundedWidth).attr("height",this.chartHeadRoundedHeight).attr("stroke",this.show_chart_head_border?n.color:"none").attr("fill","none").attr("stroke-width",0),u=parseInt(s.attr("width"))/2,h=l?.append("g"),d=Math.pow(2*(this.head_image_surface_area-this.get_image_shape_spacing(this.head_image_shape)),2),p=bw[this.head_image_shape];if(e.image){let t=u-this.head_image_surface_area;t=t>10?0:t-10,t=t>0?-t:t,t=u-this.head_image_surface_area<=10&&0==t?-10:t,o=u-this.head_image_surface_area<0?2*Math.abs(u-this.head_image_surface_area):0,h.append("defs").append("clipPath").attr("id","rounded-corners-"+e.id).append("path").attr("d",pk().type(p).size(d)).attr("transform",`translate(${parseInt(s.attr("width"))/2}, ${2*this.head_image_surface_area-this.head_image_surface_area})`).attr("fill",n.bright500),h?.append("image").attr("href",e.image).attr("preserveAspectRatio","xMaxYMax slice").attr("width",2*this.head_image_surface_area).attr("height",2*this.head_image_surface_area).attr("x",parseInt(s.attr("width"))/2-this.head_image_surface_area).attr("y",this.head_image_surface_area-this.head_image_surface_area).attr("clip-path",`url(#rounded-corners-${e.id})`)}else{let t=u-this.head_image_surface_area;t=t>10?0:t-10,t=t>0?-t:t,t=u-this.head_image_surface_area<=10&&0==t?-10:t,o=u-this.head_image_surface_area<0?2*Math.abs(u-this.head_image_surface_area):0,h?.append("path").attr("d",pk().type(p).size(d)).attr("stroke","stroke"==this.symbol_type(this.head_image_shape)?n.color:"none").attr("stroke-width","stroke"==this.symbol_type(this.head_image_shape)?1:0).attr("fill","stroke"==this.symbol_type(this.head_image_shape)?"transparent":n.color).attr("transform",`translate(${parseInt(s.attr("width"))/2}, ${2*this.head_image_surface_area-this.head_image_surface_area})`),h?.append("text").attr("class","").attr("text-anchor","middle").attr("fill","stroke"==this.symbol_type(this.head_image_shape)?n.color:n.bright500).attr("x",parseInt(s.attr("width"))/2).attr("y",this.head_image_surface_area+Math.sqrt(d)/6).attr("font-size",this.head_image_surface_area/1.5+"px").text(this.get_user_initials(e.name))}this.format_employee_name(e.name,27).forEach(((e,t)=>{l?.append("text").attr("text-anchor","middle").attr("x",parseInt(s.attr("width"))/2).attr("y",this.chartHeadRoundedWidth+18).attr("dy",t>0?15+o:0+o).attr("font-size","105%").attr("fill",n.darker).attr("style","text-transform: "+(t>0?"none":"capitalize")).text(e),t>0&&(o+=15)}));const y=l?.append("text").attr("text-anchor","middle").attr("x",parseInt(s.attr("width"))/2).attr("y",this.chartHeadRoundedWidth+35+o).attr("font-size","65%");if(this.splitStringIntoBatch(e.role,20).forEach(((e,t)=>{y?.append("tspan").attr("x",parseInt(s.attr("width"))/2).attr("dy",t>0?10:0).text(e.toString()).attr("fill",n.dark100),t>0&&(o+=10)})),void 0!==e.location){const t=l?.append("text").attr("text-anchor","middle").attr("x",parseInt(s.attr("width"))/2).attr("y",this.chartHeadRoundedWidth+50+o).attr("font-size","65%").attr("fill",n.dark100);this.splitStringIntoBatch(e.location,19).forEach(((e,r)=>{t?.append("tspan").attr("x",parseInt(s.attr("width"))/2).attr("dy",r>0?10:0).text(e.toString()),r>0&&(o+=10)}))}const f=this.chartHeadRoundedHeight+o;return s?.attr("height",f),c?.attr("height",f),this.add_linker(l,i,a,r,n,s,c,e,t),this.emitEvent("chart_head.create",{headNode:c.node()}),c}add_linker(e,t,r,a,i,n,o,c,l){const s=Math.PI*this.head_linker_thumb_circle_radius*this.head_linker_thumb_circle_radius,u=(t,r,a)=>{null!=this.rootWrapperContainer?.querySelector("."+a)&&this.rootWrapperContainer?.querySelector("."+a)?.remove();const o="stroke"==this.symbol_type(this.linker_thumb_shape)?i.bright100:i[this.linker_thumb_icon_color];return e.append("path").attr("d",pk().type("cross"==t?Kx:uk).size(Math.sqrt(s))).attr("x",parseInt(n.attr("width"))/2).attr("y",n.attr("height")).attr("fill",o).attr("stroke","minus"==t?o:"none").attr("class",a).attr("style","pointer-events: none").attr("stroke-width","minus"==t?2:0).attr("transform",this.link_point_position[r](n))};if(0!=a&&t&&e?.append("path").attr("d",pk().type(bw[this.linker_thumb_shape]).size(s)).attr("x",parseInt(n.attr("width"))/2).attr("y",0).attr("class","ts-linker").attr("fill","fill"==this.symbol_type(this.linker_thumb_shape)?i.color:"none").attr("stroke","stroke"==this.symbol_type(this.linker_thumb_shape)?i.gray:"none").attr("stroke-width","stroke"==this.symbol_type(this.linker_thumb_shape)?1:0).attr("transform",this.link_point_position[a.children](n)),0!=a&&r){const t=this,r="bottom"==a.parent?0:n.attr("height");let h=0;if(e?.append("path").attr("d",pk().type(bw[this.linker_thumb_shape]).size(s)).attr("x",parseInt(n.attr("width"))/2).attr("y",n.attr("height")).attr("class","ts-linker").attr("style","cursor: pointer;").attr("fill","fill"==this.symbol_type(this.linker_thumb_shape)?i.color:"transparent").attr("stroke","stroke"==this.symbol_type(this.linker_thumb_shape)?i.gray:"none").attr("stroke-width","stroke"==this.symbol_type(this.linker_thumb_shape)?1:0).attr("transform",this.link_point_position[this.inverse_link_point_position[a.children]](n)).on("click",(e=>{const i=e.currentTarget.parentElement;u(h%2==0?"cross":"minus",this.inverse_link_point_position[a.children],"ts-lnk-icn-"+c.id+"-1"),h++,t.handleCollapseChildren?.(o,c.id,r);const n=i.getBoundingClientRect();setTimeout((()=>{h%2==0&&this.center_elem(n)}),0),h%2==0?this.emitEvent("chart_head.expanded",{svgNode:o,head_data:c,pointPosition:a},!1):this.emitEvent("chart_head.collapsed",{svgNode:o,head_data:c,pointPosition:a},!1)})),this.el_has_children(c.id,!0)||h++,u(this.el_has_children(c.id,!0)?"minus":"cross",this.inverse_link_point_position[a.children],"ts-lnk-icn-"+c.id+"-1"),l){const l=0==r?n.attr("height"):0;let h=0;e?.append("path").attr("d",pk().type(bw[this.linker_thumb_shape]).size(s)).attr("x",parseInt(n.attr("width"))/2).attr("y",n.attr("height")).attr("class","ts-linker").attr("style","cursor: pointer").attr("fill","fill"==this.symbol_type(this.linker_thumb_shape)?i.color:"transparent").attr("stroke","stroke"==this.symbol_type(this.linker_thumb_shape)?i.gray:"none").attr("stroke-width","stroke"==this.symbol_type(this.linker_thumb_shape)?1:0).attr("transform",this.link_point_position[this.inverse_link_point_position[a.parent]](n)).on("click",(e=>{const r=e.currentTarget.parentElement;u(h%2==0?"cross":"minus",this.inverse_link_point_position[a.parent],"ts-lnk-icn-"+c.id+"-2"),t.handleCollapseChildren?.(o,c.id,l);const i=r.getBoundingClientRect();h++,setTimeout((()=>{h%2==0&&this.center_elem(i)}),0),h%2==0?this.emitEvent("chart_head.expanded",{svgNode:o,head_data:c,pointPosition:a},!1):this.emitEvent("chart_head.collapsed",{svgNode:o,head_data:c,pointPosition:a},!1)})),u("minus",this.inverse_link_point_position[a.parent],"ts-lnk-icn-"+c.id+"-2")}}}add_drop_shadow(e){e.append("defs").append("filter").attr("id","shadow").attr("x",this.dropshadow.x).attr("y",this.dropshadow.y).attr("width",this.dropshadow.width).attr("height",this.dropshadow.height).append("feDropShadow").attr("dx",this.dropshadow.dx).attr("dy",this.dropshadow.dy).attr("stdDeviation",this.dropshadow.stdDeviation).attr("flood-color",this.dropshadow.floodColor)}get_tree_items_hierarchy(e,t,r){const a=this.tree_data.filter((t=>t.parentId==e)),i=null==t?1:t+1,n=[];a.forEach((e=>{n.push(e),null!=r&&(null!=r.item_id&&r.item_id==e.id||null!=r.level&&r.level==i)&&r.callbackFn(e,i);this.tree_data.filter((t=>t.parentId==e.id)).length>0&&this.get_tree_items_hierarchy(e.id,i,r)}));const o=this.itemHierarchy.findIndex((e=>e.level==i));return-1==o?this.itemHierarchy.push({level:i,items:n}):this.itemHierarchy[o].items=n,this.itemHierarchy}get_second_ancestor_item(e){const t=this.tree_data.find((t=>t.id==e)),r=this.tree_data.find((e=>e.id==t?.parentId)),a=null==this.tree_data.find((e=>e.id==r?.parentId))?.parentId;let i;return i=null==r?.parentId?t:a?r:this.get_second_ancestor_item(r?.id),i}getElemRelPosInTree(e){const t=this.tree_data.find((t=>t.id==e));return this.tree_data.filter((e=>e.parentId==t.parentId)).findIndex((e=>e.id==t.id))+1}set_tmp_tree_data(e){if(this.display_tree_in_step||this.tree_data.length>500&&this.auto_display_tree_in_step){const t=null==e?"1":e;this.tmp_tree_data=this.get_children_down_to_level(t,this.tree_level_step),null==e&&(this.tmp_tree_data=[this.tree_data[0],...this.tmp_tree_data])}else this.tmp_tree_data=this.tree_data}getIsParentRootEl(e){return null!=e&&null==this.tree_data.find((t=>t.id==e))?.parentId}getIsElRootTreeChild(e){return null!=e&&null==this.tree_data.find((t=>t.id==e))?.parentId}getRootTreeEl(){return this.tree_data.find((e=>null==e.parentId))}el_has_children(e,t=!1){return t?this.tmp_tree_data.filter((t=>t.parentId==e)).length>0:this.tree_data.filter((t=>t.parentId==e)).length>0}get_children_down_to_level(e,t,r=1){let a=r,i=[];const n=this.tree_data.filter((t=>t.parentId==e));let o=[];return a0&&(o=n.map((e=>this.get_children_down_to_level(e.id,t,a+1))).flat()),i=[...n,...o],i}data_to_d3_format(e,t){let r=this.tree_data?.find((t=>(null==e?t.parentId:t.id)==e));r={...r,children:[]};return this.tree_data.filter((e=>e.parentId==r.id)).forEach((e=>{t&&(e.stat=1),this.el_has_children(e.id)?r.children.push(this.data_to_d3_format(e.id,t)):r.children.push(e)})),r}}class QC{tree_data=[];color_range=["#b31212","#b34712","#b38d12","#9ab312","#2fb312","#12b362","#12b3a8","#1278b3","#1712b3","#5712b3","#8d12b3","#b3128d","#b3124a","#b31212"];interpolated_color=e=>"";pallet={h:10,s:.5,l:.5,darker:.8,brighter:.8,bright100:.5,dark100:.5,gray:50,gray85:85};constructor({tree_data:e,color_range:t,pallet:r}){this.tree_data=e,void 0!==t&&t.length>0&&(this.color_range=t),null!=r&&(this.pallet=r),this.interpolateColor()}getColor(e){const t=this.get_color_percentage(e),r=this.interpolated_color(t),a=Br(r),i=Or(a);i.h+=this.pallet.h,i.s+=this.pallet.s;const n=Or(a);n.l+=this.pallet.l;const o=ra(this.pallet.gray85);return{color:r,darker:a?.darker(this.pallet.darker).toString(),brighter:a?.brighter(this.pallet.brighter).toString(),bright100:i.brighter(this.pallet.bright100).toString(),dark100:i.darker(this.pallet.dark100).toString(),bright500:n.toString(),gray:ra(this.pallet.gray).toString(),gray85:o.toString()}}get_app_gray(){return ra(this.pallet.gray).toString()}get_color_percentage(e){return e/this.tree_data.length}interpolateColor(){this.interpolated_color=Ha(this.color_range)}}class XC{chartHelper;tree_map_arr=[];content_wrapper=null;tsInnerContainer=null;current_scale=1;constructor({tsInnerContainer:e,chartHelper:t}){this.tsInnerContainer=e,this.chartHelper=t,this.chartHelper.handleCollapseChildren=this.handleCollapseChildren.bind(this),setTimeout((()=>{this.organizeUI()}),0)}map_children_data_to_head(e,t){const r=this.chartHelper.tmp_tree_data.filter((e=>e.parentId==t)),a=this.chartHelper.createDynamicEl();return r.forEach((r=>{const i=this.chartHelper.createDynamicEl(),n=this.chartHelper.makeHead(r);i.appendChild(n?.node());const o=null==t?" st-root-el":"";i.className="ts-head-node-wrapper ts-w-id-"+r.id+o,a.appendChild(i),null!=e&&this.tree_map_arr.push({id:r.id,svgNode:e,targetChild:n?.node(),parentId:t}),this.chartHelper?.el_has_children(r.id)&&i.append(this.map_children_data_to_head(n,r.id))})),a.className="ts-head-wrapper child-container",void 0===e&&this.content_wrapper?.appendChild(a),a}organizeUI(){this.content_wrapper=this.chartHelper.createDynamicEl(),this.content_wrapper.className="ts-head-wrapper",this.chartHelper.set_tmp_tree_data(),this.map_children_data_to_head(),this.tsInnerContainer.appendChild(this.content_wrapper),this.drawBranchLinkFresh(),Bi((()=>{const e=jt(`${this.chartHelper.app_root_unique_selector} .root-svg-el`).node().getBoundingClientRect();this.chartHelper?.center_elem(e,"top")}),0)}drawBranchLinkFresh(){this.chartHelper.rootWrapperContainer?.querySelectorAll(".linker-line").forEach((e=>e.remove())),this.tree_map_arr.forEach((e=>this.drawBranchLink(e.id,e.svgNode,e.targetChild,e.parentId)))}drawBranchLink(e,t,r,a){const i=this.tsInnerContainer?.querySelector(".ts-w-id-"+a)?.getAttribute("data-ts-head-children-hidden");if("true"===i)return;const n=this.chartHelper?.color_handler.getColor(e),o=r.getBoundingClientRect(),c=t.node().getBoundingClientRect(),l=Math.sqrt(Math.PI*this.chartHelper.head_linker_thumb_circle_radius*this.chartHelper.head_linker_thumb_circle_radius)/2,s=c.width/this.current_scale/2,u=(c.height+l)/this.current_scale,h=o.x/this.current_scale-c.x/this.current_scale+r.clientWidth/2,d=o.top/this.current_scale-c.top/this.current_scale,p=Ix(null!=this.chartHelper?.tree_link_type?this.chartHelper?.tree_link_types[this.chartHelper?.tree_link_type]:Dx),y=[{source:[s,u],target:[h,d]}];t?.append("path").data(y).attr("d",p).attr("fill","none").attr("class","linker-line").attr("stroke",n?.gray).attr("stroke-width",1)}handleCollapseChildren(e,t,r){const a=e.node()?.parentElement,i=a?.getAttribute("data-ts-head-children-hidden");if(a?.hasAttribute("data-ts-head-children-hidden")||""!=a.querySelector(".child-container").innerHTML)if("true"==i){const e=a?.querySelector(".child-container");e.style.visibility="",a?.setAttribute("data-ts-head-children-hidden","false"),setTimeout((()=>{this.drawBranchLinkFresh()}),0)}else{const e=a?.querySelector(".child-container");e.style.visibility="hidden",a?.querySelectorAll(".linker-line").forEach((e=>e.remove())),a?.setAttribute("data-ts-head-children-hidden","true")}else{this.chartHelper.set_tmp_tree_data(t),a.querySelector(".child-container").remove();const r=this.map_children_data_to_head(e,t);a?.appendChild(r),a?.setAttribute("data-ts-head-children-hidden","false"),this.drawBranchLinkFresh()}}removeNodeRecursiveFromTreeMap(e){const t=this.tree_map_arr.filter((t=>t.parentId==e));t.forEach((e=>{this.tree_map_arr.splice(this.tree_map_arr.findIndex((t=>t.id==e.id)),1),this.tree_map_arr.filter((t=>t.id==e.id)).length>0&&this.removeNodeRecursiveFromTreeMap(e.id)}))}}class e_{content_wrapper=null;head_child_wrapper_center=null;head_child_wrapper_1=null;head_child_wrapper_2=null;tsInnerContainer=null;chartHelper;tree_map_arr=[];current_scale=1;constructor({tsInnerContainer:e,chartHelper:t}){this.tsInnerContainer=e,this.chartHelper=t,this.chartHelper.handleCollapseChildren=this.handleCollapseChildren.bind(this),setTimeout((()=>{this.organizeUI()}),0)}organizeUI(){this.content_wrapper=this.chartHelper.createDynamicEl(),this.head_child_wrapper_center=this.chartHelper.createDynamicEl(),this.head_child_wrapper_1=this.chartHelper.createDynamicEl(),this.head_child_wrapper_2=this.chartHelper.createDynamicEl(),this.head_child_wrapper_center.className="ts-vs-wrapper",this.head_child_wrapper_1.className="ts-vs-wrapper",this.head_child_wrapper_2.className="ts-vs-wrapper",this.content_wrapper.appendChild(this.head_child_wrapper_1),this.content_wrapper.appendChild(this.head_child_wrapper_center),this.content_wrapper.appendChild(this.head_child_wrapper_2),this.content_wrapper.className="ts-v-spider-head-wrapper",this.chartHelper.set_tmp_tree_data(),this.map_children_data_to_head(),this.tsInnerContainer.appendChild(this.content_wrapper),this.drawBranchLinkFresh(),Bi((()=>{const e=jt(`${this.chartHelper.app_root_unique_selector} .st-root-el > svg`).node().getBoundingClientRect();this.chartHelper?.center_elem(e,"center")}),0)}map_children_data_to_head(e,t,r){let a=this.chartHelper.tmp_tree_data.filter((e=>e.parentId==t));a=r||this.chartHelper.tmp_tree_data.filter((e=>e.parentId==t));const i=this.chartHelper.createDynamicEl(),n=this.chartHelper.getIsParentRootEl(t)&&null!=t;return a.forEach((r=>{const a=this.chartHelper.createDynamicEl(),o=this.chartHelper.get_second_ancestor_item(r.id);let c=null==o?1:this.chartHelper.getElemRelPosInTree(o?.id);const l=this.chartHelper.makeHead(r,null==t,{parent:"bottom",children:c%2==0?"bottom":"top"});a.appendChild(l?.node());const s=null==t?" st-root-el":"";if(a.className="ts-head-node-wrapper ts-w-id-"+r.id+s,c%2==0&&a.classList.add("top"),void 0===e?this.head_child_wrapper_center?.appendChild(a):n?this.chartHelper.getElemRelPosInTree(r.id)%2==0?this.head_child_wrapper_1?.appendChild(a):this.head_child_wrapper_2?.appendChild(a):(i.appendChild(a),c%2==0&&i.classList.add("top")),null!=e&&this.tree_map_arr.push({id:r.id,svgNode:e,targetChild:l?.node(),parentId:t,lineOrigin:c%2==0?"top":"bottom"}),this.chartHelper?.el_has_children(r.id))if(n)this.chartHelper.getElemRelPosInTree(r.id)%2==0?a.prepend(this.map_children_data_to_head(l,r.id)):a.append(this.map_children_data_to_head(l,r.id));else{const e=this.map_children_data_to_head(l,r.id);c%2==0?a.prepend(e):a.appendChild(e)}})),i.classList.add("child-container"),i}drawBranchLinkFresh(){this.chartHelper.rootWrapperContainer?.querySelectorAll(".linker-line").forEach((e=>e.remove())),this.tree_map_arr.forEach((e=>this.drawBranchLink(e.id,e.svgNode,e.targetChild,e.parentId,e.lineOrigin)))}drawBranchLink(e,t,r,a,i="bottom"){const n=this.tsInnerContainer?.querySelector(".ts-w-id-"+a)?.getAttribute("data-ts-head-children-hidden"),o=this.chartHelper.getIsParentRootEl(a);if("true"===n&&!o)return;const c=this.chartHelper?.color_handler.getColor(e),l=r.getBoundingClientRect(),s=t.node().getBoundingClientRect(),u=s.width/this.current_scale/2,h="top"==i?0:s.height/this.current_scale,d=l.x/this.current_scale-s.x/this.current_scale+r.clientWidth/2,p="top"==i?(l.top+l.height)/this.current_scale-s.top/this.current_scale:l.top/this.current_scale-s.top/this.current_scale,y=Ix(null!=this.chartHelper?.tree_link_type?this.chartHelper?.tree_link_types[this.chartHelper?.tree_link_type]:Dx),f=[{source:[u,h],target:[d,p]}];t?.append("path").data(f).attr("d",y).attr("fill","none").attr("class","linker-line linker-"+i).attr("stroke-width",1).attr("stroke",c?.gray).attr("style","z-index: -1")}handleCollapseChildren(e,t,r){const a=e.node()?.parentElement,i=this.chartHelper.getIsElRootTreeChild(t),n=a?.getAttribute("data-ts-head-children-hidden"),o=a?.querySelector(".child-container");if(i)return this.handleCollapseRootElChildren(e,t,r);if(a?.hasAttribute("data-ts-head-children-hidden")||""!=a.querySelector(".child-container").innerHTML)"true"==n?(o.style.visibility="visible",a?.setAttribute("data-ts-head-children-hidden","false"),this.drawBranchLinkFresh()):(o.style.visibility="hidden",a?.querySelectorAll(".linker-line").forEach((e=>e.remove())),a?.setAttribute("data-ts-head-children-hidden","true"));else{this.chartHelper.set_tmp_tree_data(t),a.querySelector(".child-container").remove();const r=this.map_children_data_to_head(e,t),i=this.chartHelper.get_second_ancestor_item(t);(null==i?1:this.chartHelper.getElemRelPosInTree(i?.id))%2==0?a?.prepend(r):a?.appendChild(r),a?.setAttribute("data-ts-head-children-hidden","false"),this.drawBranchLinkFresh()}}removeNodeRecursiveFromTreeMap(e,t){const r=this.tree_map_arr.filter((t=>t.parentId==e));r.forEach((e=>{this.tree_map_arr.splice(this.tree_map_arr.findIndex((t=>t.id==e.id)),1),this.tree_map_arr.filter((t=>t.id==e.id)).length>0&&this.removeNodeRecursiveFromTreeMap(e.id)})),t&&this.tree_map_arr.splice(this.tree_map_arr.findIndex((t=>t.id==e)),1)}handleCollapseRootElChildren(e,t,r){const a=e.node()?.parentElement,i=a?.getAttribute("data-ts-top-head-children-hidden"),n=a?.getAttribute("data-ts-bottom-head-children-hidden");if(0==r?this.chartHelper.tree_data.filter((e=>e.parentId==t&&this.chartHelper.getElemRelPosInTree(e.id)%2==0)):this.chartHelper.tree_data.filter((e=>e.parentId==t&&this.chartHelper.getElemRelPosInTree(e.id)%2!=0)),(i&&"false"!=i||0!=r)&&(n&&"false"!=n||0==r)){(0==r?a.parentElement.nextElementSibling:a.parentElement.previousElementSibling).style.visibility="",setTimeout((()=>{this.drawBranchLinkFresh();"true"==(0==r?a?.getAttribute("data-ts-bottom-head-children-hidden"):a?.getAttribute("data-ts-top-head-children-hidden"))&&a.querySelectorAll(".linker-"+(0==r?"top":"bottom")).forEach((e=>e.remove()))}),0),a?.setAttribute(0==r?"data-ts-top-head-children-hidden":"data-ts-bottom-head-children-hidden","false")}else{(0==r?a.parentElement.nextElementSibling:a.parentElement.previousElementSibling).style.visibility="hidden",a.querySelector("svg").querySelectorAll(".linker-"+(0==r?"bottom":"top")).forEach((e=>e.remove())),a?.setAttribute(0==r?"data-ts-top-head-children-hidden":"data-ts-bottom-head-children-hidden","true")}}}class t_{chartHelper;tree_map_arr=[];content_wrapper=null;tsInnerContainer=null;current_scale=1;constructor({tsInnerContainer:e,chartHelper:t}){this.tsInnerContainer=e,this.chartHelper=t,this.chartHelper.handleCollapseChildren=this.handleCollapseChildren.bind(this),setTimeout((()=>{this.organizeUI()}),0)}organizeUI(){this.content_wrapper=this.chartHelper.createDynamicEl(),this.content_wrapper.className="ts-head-wrapper",this.chartHelper.set_tmp_tree_data(),this.map_children_data_to_head(),this.tsInnerContainer.appendChild(this.content_wrapper),this.drawBranchLinkFresh(),Bi((()=>{const e=jt(`${this.chartHelper.app_root_unique_selector} .root-svg-el`).node().getBoundingClientRect();this.chartHelper?.center_elem(e,"left")}),0)}map_children_data_to_head(e,t){const r=this.chartHelper.tmp_tree_data.filter((e=>e.parentId==t)),a=this.chartHelper.createDynamicEl();return r.forEach((r=>{const i=this.chartHelper.createDynamicEl(),n=this.chartHelper.createDynamicEl(),o=this.chartHelper.makeHead(r,!1,{parent:"right",children:"left"});n.append(o?.node()),i.appendChild(n);const c=null==t?" st-root-el":"";i.className="ts-head-node-wrapper st-single-h ts-w-id-"+r.id+c,a.appendChild(i),null!=e&&this.tree_map_arr.push({id:r.id,svgNode:e,targetChild:o?.node(),parentId:t}),this.chartHelper?.el_has_children(r.id)&&i.append(this.map_children_data_to_head(o,r.id))})),a.className="ts-head-wrapper st-single-h-child-container",void 0===e&&this.content_wrapper?.appendChild(a),a}drawBranchLinkFresh(){this.chartHelper.rootWrapperContainer?.querySelectorAll(".linker-line").forEach((e=>e.remove())),this.tree_map_arr.forEach((e=>this.drawBranchLink(e.id,e.svgNode,e.targetChild,e.parentId)))}drawBranchLink(e,t,r,a){const i=this.tsInnerContainer?.querySelector(".ts-w-id-"+a)?.getAttribute("data-ts-head-children-hidden");if("true"===i)return;const n=this.chartHelper?.color_handler.getColor(e),o=r.getBoundingClientRect(),c=t.node().getBoundingClientRect(),l=c.width/this.current_scale,s=c.height/this.current_scale/2,u=o.x/this.current_scale-c.x/this.current_scale+0,h=(o.top+o.height/2)/this.current_scale-c.top/this.current_scale,d=Ix(null!=this.chartHelper?.tree_link_type?this.chartHelper?.tree_link_types[this.chartHelper?.tree_link_type]:Hx),p=[{source:[l,s],target:[u,h]}];t?.append("path").data(p).attr("d",d).attr("fill","none").attr("class","linker-line").attr("stroke-width",1).attr("stroke",n?.gray).attr("style","z-index: -1")}handleCollapseChildren(e,t,r){const a=e.node()?.parentElement.parentElement,i=a?.getAttribute("data-ts-head-children-hidden"),n=a?.querySelector("[class*='child-container']");if(a?.hasAttribute("data-ts-head-children-hidden")||""!=a.querySelector(".st-single-h-child-container").innerHTML)"true"==i?(n.style.visibility="",a?.setAttribute("data-ts-head-children-hidden","false"),this.drawBranchLinkFresh()):(n.style.visibility="hidden",a?.querySelectorAll(".linker-line").forEach((e=>e.remove())),a?.setAttribute("data-ts-head-children-hidden","true"));else{this.chartHelper.set_tmp_tree_data(t),a.querySelector(".st-single-h-child-container").remove();const r=this.map_children_data_to_head(e,t);a?.appendChild(r),a?.setAttribute("data-ts-head-children-hidden","false"),this.drawBranchLinkFresh()}}removeNodeRecursiveFromTreeMap(e){const t=this.tree_map_arr.filter((t=>t.parentId==e));t.forEach((e=>{this.tree_map_arr.splice(this.tree_map_arr.findIndex((t=>t.id==e.id)),1),this.tree_map_arr.filter((t=>t.id==e.id)).length>0&&this.removeNodeRecursiveFromTreeMap(e.id)}))}}class r_{content_wrapper=null;head_child_wrapper_center=null;head_child_wrapper_1=null;head_child_wrapper_2=null;tsInnerContainer=null;chartHelper;tree_map_arr=[];current_scale=1;constructor({tsInnerContainer:e,chartHelper:t}){this.tsInnerContainer=e,this.chartHelper=t,this.chartHelper.handleCollapseChildren=this.handleCollapseChildren.bind(this),setTimeout((()=>{this.organizeUI()}),0)}organizeUI(){this.content_wrapper=this.chartHelper.createDynamicEl(),this.head_child_wrapper_center=this.chartHelper.createDynamicEl(),this.head_child_wrapper_1=this.chartHelper.createDynamicEl(),this.head_child_wrapper_2=this.chartHelper.createDynamicEl(),this.head_child_wrapper_center.className="st-child-wrapper",this.head_child_wrapper_1.className="st-child-wrapper",this.head_child_wrapper_2.className="st-child-wrapper",this.content_wrapper.className="st-hsw-content-wrapper",this.content_wrapper.appendChild(this.head_child_wrapper_1),this.content_wrapper.appendChild(this.head_child_wrapper_center),this.content_wrapper.appendChild(this.head_child_wrapper_2),this.tsInnerContainer?.append(this.content_wrapper),this.chartHelper.set_tmp_tree_data(),this.map_children_data_to_head(),this.drawBranchLinkFresh(),Bi((()=>{const e=jt(`${this.chartHelper.app_root_unique_selector} .st-root-el > svg`).node().getBoundingClientRect();this.chartHelper?.center_elem(e,"center")}),0)}map_children_data_to_head(e,t,r){let a=this.chartHelper.tmp_tree_data.filter((e=>e.parentId==t));a=r||this.chartHelper.tmp_tree_data.filter((e=>e.parentId==t));const i=this.chartHelper.createDynamicEl(),n=this.chartHelper.getIsParentRootEl(t)&&null!=t;return a.forEach((r=>{const a=this.chartHelper.createDynamicEl(),o=this.chartHelper.get_second_ancestor_item(r.id);let c=null==o?1:this.chartHelper.getElemRelPosInTree(o?.id);const l=this.chartHelper.makeHead(r,null==t,{parent:"right",children:c%2==0?"right":"left"});a.appendChild(l?.node());const s=null==t?" st-root-el":"";if(a.className="ts-head-node-wrapper ts-w-id-"+r.id+s,c%2==0&&a.classList.add("top"),void 0===e?this.head_child_wrapper_center?.appendChild(a):n?this.chartHelper.getElemRelPosInTree(r.id)%2==0?this.head_child_wrapper_1?.appendChild(a):this.head_child_wrapper_2?.appendChild(a):(i.appendChild(a),c%2==0&&i.classList.add("top")),null!=e&&this.tree_map_arr.push({id:r.id,svgNode:e,targetChild:l?.node(),parentId:t,lineOrigin:c%2==0?"right":"left"}),this.chartHelper?.el_has_children(r.id))if(n)this.chartHelper.getElemRelPosInTree(r.id)%2==0?a.prepend(this.map_children_data_to_head(l,r.id)):a.append(this.map_children_data_to_head(l,r.id));else{const e=this.map_children_data_to_head(l,r.id);c%2==0?a.prepend(e):a.appendChild(e)}})),i.classList.add("child-container"),i}drawBranchLinkFresh(){this.chartHelper.rootWrapperContainer?.querySelectorAll(".linker-line").forEach((e=>e.remove())),this.tree_map_arr.forEach((e=>this.drawBranchLink(e.id,e.svgNode,e.targetChild,e.parentId,e.lineOrigin)))}drawBranchLink(e,t,r,a,i="bottom"){const n=this.tsInnerContainer?.querySelector(".ts-w-id-"+a)?.getAttribute("data-ts-head-children-hidden");if("true"===n)return;const o=this.chartHelper?.color_handler.getColor(e),c=r.getBoundingClientRect(),l=t.node().getBoundingClientRect(),s=Math.sqrt(Math.PI*this.chartHelper.head_linker_thumb_circle_radius*this.chartHelper.head_linker_thumb_circle_radius)/2,u="right"==i?0-s:(l.width+s)/this.current_scale,h=l.height/this.current_scale/2,d=(c.x+("right"==i?c.width:0))/this.current_scale-l.x/this.current_scale+0,p=(c.top+c.height/2)/this.current_scale-l.top/this.current_scale,y=Ix(null!=this.chartHelper?.tree_link_type?this.chartHelper?.tree_link_types[this.chartHelper?.tree_link_type]:Hx),f=[{source:[u,h],target:[d,p]}];t?.append("path").data(f).attr("d",y).attr("fill","none").attr("class","linker-line linker-"+i).attr("stroke-width",1).attr("stroke",o?.gray).attr("style","z-index: -1")}handleCollapseChildren(e,t,r){const a=e.node()?.parentElement,i=this.chartHelper.getIsElRootTreeChild(t),n=a?.getAttribute("data-ts-head-children-hidden");if(i)return this.handleCollapseRootElChildren(e,t,r);if(a?.hasAttribute("data-ts-head-children-hidden")||""!=a.querySelector(".child-container").innerHTML)"true"==n?(a.querySelector(".child-container").style.visibility="",a?.setAttribute("data-ts-head-children-hidden","false"),this.drawBranchLinkFresh()):(a?.setAttribute("data-ts-head-children-hidden","true"),a?.querySelectorAll(".linker-line").forEach((e=>e.remove())),a.querySelector(".child-container").style.visibility="hidden");else{this.chartHelper.set_tmp_tree_data(t),a.querySelector(".child-container").remove();const r=this.map_children_data_to_head(e,t),i=this.chartHelper.get_second_ancestor_item(t);(null==i?1:this.chartHelper.getElemRelPosInTree(i?.id))%2==0?a?.prepend(r):a?.appendChild(r),a?.setAttribute("data-ts-head-children-hidden","false"),setTimeout((()=>{this.drawBranchLinkFresh()}),0)}}removeNodeRecursiveFromTreeMap(e,t){const r=this.tree_map_arr.filter((t=>t.parentId==e));r.forEach((e=>{this.tree_map_arr.splice(this.tree_map_arr.findIndex((t=>t.id==e.id)),1),this.tree_map_arr.filter((t=>t.id==e.id)).length>0&&this.removeNodeRecursiveFromTreeMap(e.id)})),t&&this.tree_map_arr.splice(this.tree_map_arr.findIndex((t=>t.id==e)),1)}handleCollapseRootElChildren(e,t,r){const a=e.node()?.parentElement,i=a?.getAttribute("data-ts-top-head-children-hidden"),n=a?.getAttribute("data-ts-bottom-head-children-hidden");if(0==r?this.chartHelper.tree_data.filter((e=>e.parentId==t&&this.chartHelper.getElemRelPosInTree(e.id)%2==0)):this.chartHelper.tree_data.filter((e=>e.parentId==t&&this.chartHelper.getElemRelPosInTree(e.id)%2!=0)),(i&&"false"!=i||0!=r)&&(n&&"false"!=n||0==r)){(0==r?a.parentElement.previousElementSibling:a.parentElement.nextElementSibling).style.visibility="visible",setTimeout((()=>{this.drawBranchLinkFresh();"true"==(0==r?a?.getAttribute("data-ts-bottom-head-children-hidden"):a?.getAttribute("data-ts-top-head-children-hidden"))&&a.querySelectorAll(".linker-"+(0==r?"left":"right")).forEach((e=>e.remove()))}),0),a?.setAttribute(0==r?"data-ts-top-head-children-hidden":"data-ts-bottom-head-children-hidden","false")}else{const e=0==r?a.parentElement.previousElementSibling:a.parentElement.nextElementSibling;e.style.visibility="hidden",e.querySelectorAll(".linker-line").forEach((e=>e.remove())),a.querySelectorAll(".linker-"+(0==r?"right":"left")).forEach((e=>e.remove())),a?.setAttribute(0==r?"data-ts-top-head-children-hidden":"data-ts-bottom-head-children-hidden","true")}}}class a_{content_wrapper=null;head_child_wrapper_center=null;head_child_wrapper_1=null;head_child_wrapper_2=null;tsInnerContainer=null;chartHelper;tree_map_arr=[];current_scale=1;constructor({tsInnerContainer:e,chartHelper:t}){this.tsInnerContainer=e,this.chartHelper=t,this.chartHelper.handleCollapseChildren=this.handleCollapseChildren.bind(this),setTimeout((()=>{this.organizeUI()}),0)}organizeUI(){this.content_wrapper=this.chartHelper.createDynamicEl(),this.head_child_wrapper_center=this.chartHelper.createDynamicEl(),this.head_child_wrapper_1=this.chartHelper.createDynamicEl(),this.head_child_wrapper_2=this.chartHelper.createDynamicEl(),this.head_child_wrapper_center.className="st-child-wrapper",this.head_child_wrapper_1.className="st-child-wrapper",this.head_child_wrapper_2.className="st-child-wrapper",this.content_wrapper.className="st-cs-content-wrapper",this.content_wrapper.appendChild(this.head_child_wrapper_1),this.content_wrapper.appendChild(this.head_child_wrapper_2),this.content_wrapper.appendChild(this.head_child_wrapper_center),this.tsInnerContainer?.append(this.content_wrapper),this.chartHelper.set_tmp_tree_data(),this.map_children_data_to_head(),this.drawBranchLinkFresh(),Bi((()=>{const e=jt(`${this.chartHelper.app_root_unique_selector} .st-root-el > svg`).node().getBoundingClientRect();this.chartHelper?.center_elem(e,"bottom")}),0)}map_children_data_to_head(e,t,r){let a=this.chartHelper.tmp_tree_data.filter((e=>e.parentId==t));a=r||this.chartHelper.tmp_tree_data.filter((e=>e.parentId==t));const i=this.chartHelper.createDynamicEl(),n=this.chartHelper.getIsParentRootEl(t)&&null!=t;return a.forEach((r=>{const a=this.chartHelper.createDynamicEl(),o=this.chartHelper.get_second_ancestor_item(r.id);let c=null==o?1:this.chartHelper.getElemRelPosInTree(o?.id);const l=this.chartHelper.makeHead(r,!1,{parent:"right",children:null==t?"bottom":c%2==0?"right":"left"});a.appendChild(l?.node());const s=null==t?" st-root-el":"";if(a.className="ts-head-node-wrapper ts-w-id-"+r.id+s,c%2==0&&a.classList.add("top"),void 0===e?this.head_child_wrapper_center?.appendChild(a):n?this.chartHelper.getElemRelPosInTree(r.id)%2==0?this.head_child_wrapper_1?.appendChild(a):this.head_child_wrapper_2?.appendChild(a):(i.appendChild(a),c%2==0&&i.classList.add("top")),null!=e&&this.tree_map_arr.push({id:r.id,svgNode:e,targetChild:l?.node(),parentId:t,lineOrigin:c%2==0?"right":"left"}),this.chartHelper?.el_has_children(r.id))if(n)this.chartHelper.getElemRelPosInTree(r.id)%2==0?a.prepend(this.map_children_data_to_head(l,r.id)):a.append(this.map_children_data_to_head(l,r.id));else{const e=this.map_children_data_to_head(l,r.id);c%2==0?a.prepend(e):a.appendChild(e)}})),i.classList.add("child-container"),i}drawBranchLinkFresh(){this.chartHelper.rootWrapperContainer?.querySelectorAll(".linker-line").forEach((e=>e.remove())),this.tree_map_arr.forEach((e=>this.drawBranchLink(e.id,e.svgNode,e.targetChild,e.parentId,e.lineOrigin)))}drawBranchLink(e,t,r,a,i="bottom"){const n=this.tsInnerContainer?.querySelector(".ts-w-id-"+a)?.getAttribute("data-ts-head-children-hidden");if("true"===n)return;const o=this.chartHelper?.color_handler.getColor(e),c=this.chartHelper.getIsParentRootEl(a),l=r.getBoundingClientRect(),s=t.node().getBoundingClientRect();let u,h;c?(u=s.width/this.current_scale/2,h=0):(u="right"==i?0:s.width/this.current_scale,h=s.height/this.current_scale/2);const d=(l.x+("right"==i?l.width:0))/this.current_scale-s.x/this.current_scale+0,p=(l.top+l.height/2)/this.current_scale-s.top/this.current_scale,y=Ix(null!=this.chartHelper?.tree_link_type?this.chartHelper?.tree_link_types[this.chartHelper?.tree_link_type]:Hx),f=[{source:[u,h],target:[d,p]}];t?.append("path").data(f).attr("d",y).attr("fill","none").attr("class","linker-line").attr("stroke-width",1).attr("stroke",o?.gray).attr("style","z-index: -1")}handleCollapseChildren(e,t,r){const a=e.node()?.parentElement,i=this.chartHelper.getIsElRootTreeChild(t),n=a?.getAttribute("data-ts-head-children-hidden");if(i)return this.handleCollapseRootElChildren(e,t,r);if(a?.hasAttribute("data-ts-head-children-hidden")||""!=a.querySelector(".child-container").innerHTML)if("true"==n){const e=a?.querySelector(".child-container");e.style.visibility="",a?.setAttribute("data-ts-head-children-hidden","false"),this.drawBranchLinkFresh()}else{const e=a?.querySelector(".child-container");e.style.visibility="hidden",a?.querySelectorAll(".linker-line").forEach((e=>e.remove())),a?.setAttribute("data-ts-head-children-hidden","true")}else{this.chartHelper.set_tmp_tree_data(t),a.querySelector(".child-container").remove();const r=this.map_children_data_to_head(e,t),i=this.chartHelper.get_second_ancestor_item(t);(null==i?1:this.chartHelper.getElemRelPosInTree(i?.id))%2==0?a?.prepend(r):a?.appendChild(r),a?.setAttribute("data-ts-head-children-hidden","false"),this.drawBranchLinkFresh()}}removeNodeRecursiveFromTreeMap(e,t){const r=this.tree_map_arr.filter((t=>t.parentId==e));r.forEach((e=>{this.tree_map_arr.splice(this.tree_map_arr.findIndex((t=>t.id==e.id)),1),this.tree_map_arr.filter((t=>t.id==e.id)).length>0&&this.removeNodeRecursiveFromTreeMap(e.id)})),t&&this.tree_map_arr.splice(this.tree_map_arr.findIndex((t=>t.id==e)),1)}handleCollapseRootElChildren(e,t,r){const a=e.node()?.parentElement,i=a?.getAttribute("data-ts-head-children-hidden");i&&"false"!=i?(a.parentElement.previousElementSibling.style.visibility="",a.parentElement.previousElementSibling.previousElementSibling.style.visibility="",a?.setAttribute("data-ts-head-children-hidden","false")):(a.parentElement.previousElementSibling.style.visibility="hidden",a.parentElement.previousElementSibling.previousElementSibling.style.visibility="hidden",a.parentElement.previousElementSibling.querySelectorAll(".linker-line").forEach((e=>e.remove())),a.parentElement.previousElementSibling.previousElementSibling.querySelectorAll(".linker-line").forEach((e=>e.remove())),a?.setAttribute("data-ts-head-children-hidden","true")),this.drawBranchLinkFresh()}}class i_{content_wrapper=null;head_child_wrapper=null;tsInnerContainer=null;chartHelper;current_scale=1;nodes_group=void 0;links_group=void 0;rotate_deg=0;animation_interval=void 0;start_animation=!1;constructor({tsInnerContainer:e,chartHelper:t}){this.tsInnerContainer=e,this.chartHelper=t,setTimeout((()=>{this.organizeUI()}),0)}organizeUI(){this.content_wrapper=this.chartHelper.createDynamicEl(),this.head_child_wrapper=this.chartHelper.createDynamicEl(),this.head_child_wrapper.className="st-child-wrapper",this.content_wrapper.className="st-grs-content-wrapper",this.content_wrapper.appendChild(this.head_child_wrapper),this.tsInnerContainer?.append(this.content_wrapper),this.map_children_data_to_head(),Bi((()=>{const e=jt(`${this.chartHelper.app_root_unique_selector} .root-svg-el > g`).node().getBoundingClientRect();this.chartHelper?.center_elem(e,"center")}),0)}animate_chat(e=!1,t=!1){if(e)return this.rotate_deg+=this.chartHelper?.animation_rotation_interval*(t?-1:1),this.nodes_group.attr("transform",`rotate(${this.rotate_deg}, 0, 0)`),this.links_group.attr("transform",`rotate(${this.rotate_deg}, 0, 0)`);this.start_animation=!this.start_animation,this.start_animation?this.animation_interval=setInterval((()=>{this.rotate_deg+=this.chartHelper?.animation_rotation_interval*(t?-1:1),this.nodes_group.attr("transform",`rotate(${this.rotate_deg}, 0, 0)`),this.links_group.attr("transform",`rotate(${this.rotate_deg}, 0, 0)`)}),this.chartHelper?.animation_rotation_speed):(null!=this.animation_interval&&clearInterval(this.animation_interval),this.animation_interval=void 0)}map_children_data_to_head(){const e=Cp(this.chartHelper.data_to_d3_format()).sort(((e,t)=>t.height-e.height||e.data.name.localeCompare(t.data.name))),t=540*Math.sqrt(this.chartHelper.tree_data.length/3);kp().size([360,t]).separation(((e,t)=>50))(e);const r=Yt("svg");r.attr("width",580),r.attr("height",250),r.attr("style","overflow: visible");const a=r.append("g").attr("transform",`translate(${r.attr("width")/2},${r.attr("height")/2})`);a.append("g").attr("class","links"),a.append("g").attr("class","nodes"),e.each((e=>{const t=this.chartHelper?.makeHead(e.data,!1,!1);e.head=t.node(),e.head.removeEventListener("dblclick",this.chartHelper.handleCenterHead),e.head.ondblclick=e=>{e.stopPropagation(),e.preventDefault();const t=e.currentTarget.querySelector("g").getBoundingClientRect();this.chartHelper?.center_elem(t)},e.color_set=this.chartHelper?.color_handler.getColor(e.data.id)})),r.select("g.nodes").selectAll("svg.node").data(e.descendants()).enter().append((e=>("rounded"!=this.chartHelper?.chart_head_type&&this.chartHelper?.show_chart_head_border&&(e.head.querySelector("rect").style.fill="white",e.head.querySelector("rect").style.strokeWidth="1"),e.head))).classed("node",!0).select("g").attr("transform",(e=>`rotate(${e.x}, 0, 0) translate(0, ${-e.y})`)),r.select("g.nodes").selectAll("circle.node").data(e.descendants()).enter().append("circle").classed("node",!0).attr("cx",0).attr("cy",(e=>-e.y)).attr("r",5).attr("fill",(e=>e.color_set.color)).attr("stroke",(e=>e.color_set.gray)).attr("stroke-width",1).attr("transform",(e=>`rotate(${e.x}, 0, 0)`));const i=Tx().angle((e=>e.x*Math.PI/180)).radius((e=>e.y));r.select("g.links").selectAll("path.link").data(e.links()).enter().append("path").classed("link",!0).attr("stroke",(e=>e.target.color_set.gray)).attr("fill","none").attr("stroke-width",1.5).attr("d",(e=>i([e.target,e.source]))),this.nodes_group=r.select("g.nodes"),this.links_group=r.select("g.links"),this.head_child_wrapper?.append(r.node())}}class n_{content_wrapper=null;head_child_wrapper=null;tsInnerContainer=null;chartHelper;current_scale=1;root_svg=void 0;rotate_deg=0;animation_interval=void 0;start_animation=!1;constructor({tsInnerContainer:e,chartHelper:t}){this.tsInnerContainer=e,this.chartHelper=t,setTimeout((()=>{this.organizeUI()}),0)}organizeUI(){this.content_wrapper=this.chartHelper.createDynamicEl(),this.head_child_wrapper=this.chartHelper.createDynamicEl(),this.head_child_wrapper.className="st-child-wrapper",this.content_wrapper.className="st-grs-content-wrapper",this.content_wrapper.appendChild(this.head_child_wrapper),this.tsInnerContainer?.append(this.content_wrapper),this.map_children_data_to_head(),Bi((()=>{const e=jt(`${this.chartHelper.app_root_unique_selector} .root-svg-el`).node().getBoundingClientRect();this.chartHelper?.center_elem(e,"center")}),0)}animate_chat(e=!1,t=!1){if(e)return this.rotate_deg+=this.chartHelper?.animation_rotation_interval*(t?-1:1),this.root_svg.attr("transform",`rotate(${this.rotate_deg}, 0, 0)`);this.start_animation=!this.start_animation,this.start_animation?this.animation_interval=setInterval((()=>{this.rotate_deg+=this.chartHelper?.animation_rotation_interval*(t?-1:1),this.root_svg.style.transform=`rotate(${this.rotate_deg}deg)`}),this.chartHelper?.animation_rotation_speed):(null!=this.animation_interval&&clearInterval(this.animation_interval),this.animation_interval=void 0)}map_children_data_to_head(){const e=Cp(this.chartHelper.data_to_d3_format()).sort(((e,t)=>t.height-e.height||e.data.name.localeCompare(t.data.name))),t=540*Math.sqrt(this.chartHelper.tree_data.length/3),r=2*t,a=2*t;e.each((e=>{const t=this.chartHelper?.makeHead(e.data,!1,!1);e.head=t.node(),e.color_set=this.chartHelper?.color_handler.getColor(e.data.id)}));py().size([2*Math.PI,t]).separation(((e,t)=>100))(e);const i=Yt("svg").attr("viewBox",[-110-t,-110-t,r,a]).attr("width",r).attr("height",a).attr("style","background-color: none; overflow: visible;");i.append("g").attr("fill","none").attr("stroke",this.chartHelper?.color_handler.get_app_gray()).attr("stroke-opacity",1).attr("stroke-width",1.5).selectAll("path").data(e.links()).join("path").attr("d",Wx().angle((e=>e.x)).radius((e=>e.y)));const n=i.append("g").selectAll("g").data(e.descendants()).join("g").attr("transform",(e=>`rotate(${180*e.x/Math.PI-90}) translate(${e.y},0)`));n.append("circle").attr("fill",(e=>e.color_set.color)).attr("r",3),n.append((e=>("rounded"!=this.chartHelper?.chart_head_type&&this.chartHelper?.show_chart_head_border&&(e.head.querySelector("rect").style.fill="white",e.head.querySelector("rect").style.strokeWidth="1"),e.head))),n.append("title").text((e=>e.data.name+" - "+e.data.role)),this.root_svg=i.node(),this.head_child_wrapper?.append(i.node())}}var o_={zoomIn:' ',zoomOut:' zoom-out Created with Sketch Beta. ',resetZoom:' ',rotate:'',rotate_once:' ',rotate_once_anti_clockwise:' ',rotate_anticlockwise:''};class c_{root_ui_element=void 0;zoomInOut=()=>null;resetZoom=()=>null;animate_chat=()=>null;tree_type=void 0;animatable_trees=["goldenRod","radialSpiderLeg"];constructor({root_ui_element:e,zoomInOut:t,resetZoom:r,animate_chat:a}){this.root_ui_element=e,this.zoomInOut=t,this.resetZoom=r,this.animate_chat=a,setTimeout((()=>{this.make_tools()}),0)}make_tools(){const e=new xw;e.className="tools-container",this.root_ui_element?.appendChild(e);const t=new xw;t.className="tool-item",t.innerHTML=o_.zoomIn,t.title="Zoom in",t.onclick=e=>this.zoomInOut();const r=new xw;r.className="tool-item",r.innerHTML=o_.zoomOut,r.title="Zoom out",r.onclick=e=>this.zoomInOut("out");const a=new xw;a.className="tool-item",a.innerHTML=o_.resetZoom,a.title="Reset zoom & position",a.onclick=e=>this.resetZoom();const i=new xw;i.className="tool-item",i.innerHTML=o_.rotate,i.title="Start/Stop Clockwise Rotation";const n=new xw;n.className="tool-item",n.innerHTML=o_.rotate_anticlockwise,n.title="Start/Stop Anticlockwise Rotation";const o=new xw;o.className="tool-item",o.innerHTML=o_.rotate_once,o.title="Rotate Clockwise Once";const c=new xw;c.className="tool-item",c.innerHTML=o_.rotate_once_anti_clockwise,c.title="Rotate Anticlockwise Once",e.append(t),e.append(r),e.append(a),this.animatable_trees.includes(this.tree_type)&&(e.append(i),e.append(n),e.append(o),e.append(c),i.onclick=e=>this.animate_chat(),n.onclick=e=>this.animate_chat(!1,!0),o.onclick=e=>this.animate_chat(!0),c.onclick=e=>this.animate_chat(!0,!0))}}class l_ extends EventTarget{libraryName="TreeSpider";targetRootContainer=null;rootWrapperContainer=null;tsInnerContainer=null;rootCanvasEl=null;chartHelper={};currentChartUI;zoom_instace;colorHandler={};tree_default_point_position="";instance_unique_id="";options={targetContainer:"",width:"100%",height:"500px",placeEl:"override",tree_data:void 0,color_range:[],tree_type:"default",chart_head_type:"default",show_tools:!0,show_chart_head_border:!1,animation_rotation_speed:10,animation_rotation_interval:1,backgroundPattern:"default",backgroundSize:void 0,customBackground:void 0,backgroundPosition:void 0,head_linker_thumb_circle_radius:8,linker_thumb_icon_color:"bright500",linker_thumb_shape:"symbolCircle",head_image_shape:"symbolCircle",chart_head_bg:"#ffffff",auto_set_chart_head_bg:!1,display_tree_in_step:!1,auto_display_tree_in_step:!0,tree_level_step:2,pallet:{h:10,s:.5,l:.5,darker:3,brighter:.8,bright100:.5,dark100:.5,gray:50,gray85:85},tree_link_type:void 0,random_data_length:200,autoInitialize:!0,zoom_in_distance:1.5,zoom_out_distance:.5,verticalSpace:"120px",font_link:"https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap",font_name:"Lato",dropshadow:{x:"-50%",y:"-50%",width:"200%",height:"200%",dx:1,dy:1,stdDeviation:4,floodColor:"rgba(91, 91, 91, 0.19)"}};constructor(e){if(super(),null==e.targetContainer)throw new Error(this.libraryName+": The target container is required");if(null!=e.tree_data)this.options.tree_data=e.tree_data;else{const t=new qC({length:e.random_data_length||this.options.random_data_length});this.options.tree_data=t.generated_data}this.setOptions(e),this.instance_unique_id="tree_spider_"+this.options.targetContainer.replace(/[\W\D]/,"_"),this.loadFont(),console.info(this.libraryName+" ready!"),this.options.autoInitialize&&this.initialize()}initialize(){if(this.targetRootContainer=jt(this.options.targetContainer).node(),null===this.targetRootContainer)throw new Error(this.libraryName+": target container not found");this.targetRootContainer.setAttribute("data-tree-spider-initialized",this.instance_unique_id),this.createUI(),setTimeout((()=>{this.emitEvent("library.init",{rootContainer:this.rootWrapperContainer})}),0),console.info(this.libraryName+" initialized!")}initialize_root_container(){this.rootWrapperContainer=new vw,this.rootWrapperContainer.setAttribute("data-ts-unique-id",this.instance_unique_id),this.setCSSPropertyVar("--vertical-space-var",this.options.verticalSpace),this.setCSSPropertyVar("--font-family",this.options.font_name),this.setCSSPropertyVar("--root-cont-width",this.options.width),this.setCSSPropertyVar("--root-cont-height",this.options.height),this.rootWrapperContainer.setAttribute("backgroundPattern",this.options.backgroundPattern),this.rootWrapperContainer.setAttribute("backgroundSize",this.options.backgroundSize),this.rootWrapperContainer.setAttribute("customBackground",this.options.customBackground),this.rootWrapperContainer.setAttribute("backgroundPosition",this.options.backgroundPosition)}setCSSPropertyVar(e,t){this.rootWrapperContainer?.style.setProperty(e,t)}loadFont(){let e,t,r;null==jt('[href="https://fonts.googleapis.com"]').node()&&(t=Yt("link").attr("rel","preconnect").attr("href","https://fonts.googleapis.com")),null==jt('[href="https://fonts.gstatic.com"]').node()&&(r=Yt("link").attr("rel","preconnect").attr("href","https://fonts.gstatic.com").attr("crossOrigin","")),this.options.font_link&&(e=Yt("link").attr("href",this.options.font_link).attr("rel","stylesheet")),null!=t&&jt("head").node().appendChild(t.node()),null!=r&&jt("head").node().appendChild(r.node()),null!=e&&jt("head").node().appendChild(e.node())}setObjectValue(e,t){const r=e;if(0==Object.keys(r).length)return t;for(const e in r)if(Object.keys(t).includes(e)&&Object.hasOwnProperty.call(r,e))if("object"!=typeof r[e]||Array.isArray(r[e]))r[e]=t[e];else{const a=this.setObjectValue(r[e],t[e]);r[e]={...r[e],...a}}return r}createUI(){this.initialize_root_container(),this.chartHelper=new ZC,this.chartHelper.rootWrapperContainer=this.rootWrapperContainer,this.chartHelper.app_unique_id=this.instance_unique_id,this.chartHelper.tree_data=this.options.tree_data,this.chartHelper.center_elem=this.center_elem.bind(this),this.chartHelper.chart_head_type=this.options.chart_head_type,this.chartHelper.animation_rotation_speed=this.options.animation_rotation_speed,this.chartHelper.animation_rotation_interval=this.options.animation_rotation_interval,this.chartHelper.head_linker_thumb_circle_radius=this.options.head_linker_thumb_circle_radius,this.chartHelper.linker_thumb_icon_color=this.options.linker_thumb_icon_color,this.chartHelper.linker_thumb_shape=this.options.linker_thumb_shape,this.chartHelper.head_image_shape=this.options.head_image_shape,this.chartHelper.chart_head_bg=this.options.chart_head_bg,this.chartHelper.auto_set_chart_head_bg=this.options.auto_set_chart_head_bg,this.chartHelper.display_tree_in_step=this.options.display_tree_in_step,this.chartHelper.auto_display_tree_in_step=this.options.auto_display_tree_in_step,this.chartHelper.tree_level_step=this.options.tree_level_step,this.chartHelper.tree_link_type=this.options.tree_link_type,this.chartHelper.dropshadow=this.options.dropshadow,this.chartHelper.emitEvent=this.emitEvent.bind(this),this.colorHandler=new QC({tree_data:this.options.tree_data,color_range:this.options.color_range,pallet:this.options.pallet}),this.chartHelper.color_handler=this.colorHandler,this.placeRootContainer()}zoomInOut(e="in"){const t="in"==e?this.options.zoom_in_distance:this.options.zoom_out_distance;this.zoom_instace?.scaleBy(jt(`[data-ts-unique-id='${this.instance_unique_id}']`),t)}resetZoom(){const e=jt(`[data-ts-unique-id='${this.instance_unique_id}'] .root-svg-el > g`).node().getBoundingClientRect();this.center_elem(e,this.tree_default_point_position)}placeRootContainer(){if(this.tsInnerContainer=this.chartHelper.createDynamicEl(),this.tsInnerContainer.className="ts-inner-container",0==this.options.tree_data?.length){const e=new xw;e.innerText="No data provided!",this.tsInnerContainer.appendChild(e)}if(this.rootWrapperContainer?.appendChild(this.tsInnerContainer),"start"==this.options.placeEl?this.targetRootContainer?.prepend(this.rootWrapperContainer):"end"==this.options.placeEl?this.targetRootContainer?.append(this.rootWrapperContainer):"object"==typeof this.options.placeEl&&Object.keys(this.options.placeEl).length>0?this.targetRootContainer?.insertBefore(this.rootWrapperContainer,this.targetRootContainer.querySelector(this.options.placeEl.beforeEl)):(this.targetRootContainer.innerHTML="",this.targetRootContainer.appendChild(this.rootWrapperContainer)),this.bindPanning(),"default"==this.options.tree_type)this.currentChartUI=new XC({tree_data:this.options.tree_data,tsInnerContainer:this.tsInnerContainer,chartHelper:this.chartHelper});else if("vSpiderWalk"==this.options.tree_type)this.currentChartUI=new e_({tree_data:this.options.tree_data,tsInnerContainer:this.tsInnerContainer,chartHelper:this.chartHelper});else if("hSpider"==this.options.tree_type)this.currentChartUI=new t_({tree_data:this.options.tree_data,tsInnerContainer:this.tsInnerContainer,chartHelper:this.chartHelper});else if("hSpiderWalk"==this.options.tree_type)this.currentChartUI=new r_({tree_data:this.options.tree_data,tsInnerContainer:this.tsInnerContainer,chartHelper:this.chartHelper});else if("cellar"==this.options.tree_type)this.currentChartUI=new a_({tree_data:this.options.tree_data,tsInnerContainer:this.tsInnerContainer,chartHelper:this.chartHelper});else if("goldenRod"==this.options.tree_type)this.currentChartUI=new i_({tree_data:this.options.tree_data,tsInnerContainer:this.tsInnerContainer,chartHelper:this.chartHelper});else{if("radialSpiderLeg"!=this.options.tree_type)throw new Error("Not implemented and you are welcome to implement it :)");this.currentChartUI=new n_({tree_data:this.options.tree_data,tsInnerContainer:this.tsInnerContainer,chartHelper:this.chartHelper})}if(this.options.tree_data.length>0&&this.options.show_tools){new c_({root_ui_element:this.rootWrapperContainer,zoomInOut:this.zoomInOut.bind(this),resetZoom:this.resetZoom.bind(this),animate_chat:this.currentChartUI?.animate_chat?.bind(this.currentChartUI)}).tree_type=this.options.tree_type}}bindPanning(){const e=this.rootWrapperContainer?.getBoundingClientRect(),t=jt(`[data-ts-unique-id='${this.instance_unique_id}']`);this.zoom_instace=gw().extent([[0,0],[e.width,e.height]]).on("zoom",(e=>{this.emitEvent("zooming",{e:e})&&(this.tsInnerContainer.style.transform=`translate(${e.transform.x}px, ${e.transform.y}px) scale(${e.transform.k})`,this.rootWrapperContainer.style.setProperty("--ts-root-container-cursor","grabbing"),this.currentChartUI.current_scale=e.transform.k)})).on("end",(e=>{this.rootWrapperContainer.style.setProperty("--ts-root-container-cursor","grab")})),t.call(this.zoom_instace).on("dblclick.zoom",(e=>null))}center_elem(e,t){const r=jt(`[data-ts-unique-id='${this.instance_unique_id}']`);""==this.tree_default_point_position&&null!=t&&(this.tree_default_point_position=t);const a=r.node()?.getBoundingClientRect(),i=this.tsInnerContainer?.getBoundingClientRect(),n=(e.left-i.left)/this.currentChartUI.current_scale,o=(e.top-i.top)/this.currentChartUI.current_scale,c=a.width/2-e.width/2/this.currentChartUI.current_scale,l=a.height/2-e.height/2/this.currentChartUI.current_scale;let s=0,u=0;if("center"==(t||this.tree_default_point_position))s=n-c,u=o-l;else if("top"==(t||this.tree_default_point_position))s=n-c,u=o-10;else if("bottom"==(t||this.tree_default_point_position)){s=n-c;u=o-(l+(a.height/2-e.height/2))+10}else if("left"==(t||this.tree_default_point_position))s=n-10,u=o-l;else if("right"==(t||this.tree_default_point_position)){s=n-(c+(a.width/2-e.width/2))+10,u=o-l}r.transition().duration(2500).call(this.zoom_instace?.transform,cw.translate(-s,-u))}emitEvent(e,t,r=!0){const a=new CustomEvent(e,{detail:t,bubbles:!0,cancelable:r});return this.dispatchEvent(a)}updateChartHeadBg(e){"rounded"!=this.options.chart_head_type&&(this.rootWrapperContainer?.querySelectorAll(".main-svg-el").forEach((t=>t.querySelector("rect").style.fill=e)),this.addEventListener("chart_head.expanded",(()=>this.rootWrapperContainer?.querySelectorAll(".main-svg-el").forEach((t=>t.querySelector("rect").style.fill=e)))))}on(e,t){this.addEventListener(e,t)}setOptions(e){this.setObjectValue(this.options,e)}zoom(e){this.zoomInOut(e)}startStopRotateCW(){this.currentChartUI?.animate_chat()}startStopRotateACW(){this.currentChartUI?.animate_chat(!1,!0)}rotateOnceCW(){this.currentChartUI?.animate_chat(!0)}rotateOnceACW(){this.currentChartUI?.animate_chat(!0,!0)}}return l_}(); diff --git a/dist/css/treeSpider.css b/dist/css/treeSpider.css index d9c0af8..8581398 100644 --- a/dist/css/treeSpider.css +++ b/dist/css/treeSpider.css @@ -80,14 +80,12 @@ } .main-svg-el { - background-color: white; overflow: visible; - border-radius: 16px; - margin: 0px !important; - transition: background-color 0.3s linear; - box-shadow: -1px 2px 14px 3px rgba(91, 91, 91, 0.19); - -webkit-box-shadow: -1px 2px 14px 3px rgba(91, 91, 91, 0.19); - -moz-box-shadow: -1px 2px 14px 3px rgba(91, 91, 91, 0.19); + background-color: transparent; +} + +.main-svg-el g rect { + transition: fill 0.3s linear; } .main-svg-el.rounded-head { @@ -137,7 +135,7 @@ flex-direction: column !important; } -.ts-v-spider-head-wrapper > div { +.ts-v-spider-head-wrapper > ts-element { display: flex; flex-wrap: nowrap; justify-content: center; @@ -147,16 +145,16 @@ flex-shrink: 0; } -.ts-v-spider-head-wrapper > div:first-child { +.ts-v-spider-head-wrapper > ts-element:first-child { align-items: flex-end !important; } -.ts-v-spider-head-wrapper > div:nth-child(2) { +.ts-v-spider-head-wrapper > ts-element:nth-child(2) { align-items: center !important; padding-top: calc(var(--vertical-space-var)); } -.ts-v-spider-head-wrapper > div:nth-child(2) > div { +.ts-v-spider-head-wrapper > ts-element:nth-child(2) > ts-element { margin-bottom: var(--vertical-space-var)/2 !important; } diff --git a/dist/css/treeSpider.css.map b/dist/css/treeSpider.css.map index ed91698..3650741 100644 --- a/dist/css/treeSpider.css.map +++ b/dist/css/treeSpider.css.map @@ -1 +1 @@ -{"version":3,"sourceRoot":"","sources":["../../scss/treeSpider.scss"],"names":[],"mappings":"AAAA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AASJ;EACI;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;;;AAGJ;EACI;;;AAGJ;EACI;EACA;;;AAOJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAEA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;;;AAGJ;EACI;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;;;AAGJ;EACI;EACA;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EAEI;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;;;AAGJ;EACI,YAlHa;EAmHb;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;;AAQJ;EACI;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;;;AAGJ;EACI;EACA;;;AAGJ;EACI;;;AAGJ;EACI,YApKa;EAqKb;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;;;AAOJ;EACI;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;;;AAGJ;EACI;;;AAOJ;EACI;;;AAIJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;;;AAGJ;EACI;EACA;EACA;EACA;;;AAGJ;EACI;;;AAGJ;EACI;EACA,aA3Qa;;;AA8QjB;EACI,cA/Qa;;;AAsRjB;EACI;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA,cAxSa;EAySb;EACA;EACA;;;AAGJ;EACI;;;AAGJ;EACI;;;AAGJ;EACI;;;AAGJ;EACI;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA,aAxUa;;;AA2UjB;EACI;;;AAGJ;EACI","file":"treeSpider.css"} \ No newline at end of file +{"version":3,"sourceRoot":"","sources":["../../scss/treeSpider.scss"],"names":[],"mappings":"AAAA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAKJ;EACI;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;;;AAGJ;EACI;;;AAGJ;EACI;EACA;;;AAOJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAEA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;;;AAGJ;EACI;EACA;;;AAGJ;EACI;EAEA;;;AAGJ;EACI;;;AAGJ;EACI;EACA;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;;;AAGJ;EACI,YA/Ga;EAgHb;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;;AAQJ;EACI;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;;;AAGJ;EACI;EACA;;;AAGJ;EACI;;;AAGJ;EACI,YAjKa;EAkKb;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;;;AAOJ;EACI;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;;;AAGJ;EACI;;;AAOJ;EACI;;;AAIJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;;;AAGJ;EACI;EACA;EACA;EACA;;;AAGJ;EACI;;;AAGJ;EACI;EACA,aAxQa;;;AA2QjB;EACI,cA5Qa;;;AAmRjB;EACI;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA,cArSa;EAsSb;EACA;EACA;;;AAGJ;EACI;;;AAGJ;EACI;;;AAGJ;EACI;;;AAGJ;EACI;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA,aArUa;;;AAwUjB;EACI;;;AAGJ;EACI","file":"treeSpider.css"} \ No newline at end of file diff --git a/dist/es/treeSpider.bundle.js b/dist/es/treeSpider.bundle.js index 28ecda1..e956ac1 100644 --- a/dist/es/treeSpider.bundle.js +++ b/dist/es/treeSpider.bundle.js @@ -20647,7 +20647,8 @@ var d3 = /*#__PURE__*/Object.freeze({ zoomTransform: transform }); -class TSRootContainer extends HTMLDivElement { +class TSRootContainer extends HTMLElement { + align = "auto"; main_svg = null; tree_data = {}; static observeAttributes = ['backgroundPattern', 'backgroundSize', 'customBackground']; @@ -20789,15 +20790,16 @@ class TSRootContainer extends HTMLDivElement { return backgrounds['spot']; } } -window.customElements.define("ts-root-container", TSRootContainer, { extends: 'div' }); +window.customElements.define("ts-root-container", TSRootContainer); -class TSElement extends HTMLDivElement { +class TSElement extends HTMLElement { + align = "auto"; constructor() { super(); } connectedCallback() { } } -window.customElements.define('ts-element', TSElement, { extends: 'div' }); +window.customElements.define('ts-element', TSElement); var e=[{name:"Aegean Airlines",iataCode:"A3"},{name:"Aeroflot",iataCode:"SU"},{name:"Aerolineas Argentinas",iataCode:"AR"},{name:"Aeromexico",iataCode:"AM"},{name:"Air Algerie",iataCode:"AH"},{name:"Air Arabia",iataCode:"G9"},{name:"Air Canada",iataCode:"AC"},{name:"Air China",iataCode:"CA"},{name:"Air Europa",iataCode:"UX"},{name:"Air France-KLM",iataCode:"AF"},{name:"Air India",iataCode:"AI"},{name:"Air Mauritius",iataCode:"MK"},{name:"Air New Zealand",iataCode:"NZ"},{name:"Air Niugini",iataCode:"PX"},{name:"Air Tahiti",iataCode:"VT"},{name:"Air Tahiti Nui",iataCode:"TN"},{name:"Air Transat",iataCode:"TS"},{name:"AirAsia X",iataCode:"D7"},{name:"AirAsia",iataCode:"AK"},{name:"Aircalin",iataCode:"SB"},{name:"Alaska Airlines",iataCode:"AS"},{name:"Alitalia",iataCode:"AZ"},{name:"All Nippon Airways",iataCode:"NH"},{name:"Allegiant Air",iataCode:"G4"},{name:"American Airlines",iataCode:"AA"},{name:"Asiana Airlines",iataCode:"OZ"},{name:"Avianca",iataCode:"AV"},{name:"Azul Linhas Aereas Brasileiras",iataCode:"AD"},{name:"Azur Air",iataCode:"ZF"},{name:"Beijing Capital Airlines",iataCode:"JD"},{name:"Boliviana de Aviacion",iataCode:"OB"},{name:"British Airways",iataCode:"BA"},{name:"Cathay Pacific",iataCode:"CX"},{name:"Cebu Pacific Air",iataCode:"5J"},{name:"China Airlines",iataCode:"CI"},{name:"China Eastern Airlines",iataCode:"MU"},{name:"China Southern Airlines",iataCode:"CZ"},{name:"Condor",iataCode:"DE"},{name:"Copa Airlines",iataCode:"CM"},{name:"Delta Air Lines",iataCode:"DL"},{name:"Easyfly",iataCode:"VE"},{name:"EasyJet",iataCode:"U2"},{name:"EcoJet",iataCode:"8J"},{name:"Egyptair",iataCode:"MS"},{name:"El Al",iataCode:"LY"},{name:"Emirates Airlines",iataCode:"EK"},{name:"Ethiopian Airlines",iataCode:"ET"},{name:"Etihad Airways",iataCode:"EY"},{name:"EVA Air",iataCode:"BR"},{name:"Fiji Airways",iataCode:"FJ"},{name:"Finnair",iataCode:"AY"},{name:"Flybondi",iataCode:"FO"},{name:"Flydubai",iataCode:"FZ"},{name:"FlySafair",iataCode:"FA"},{name:"Frontier Airlines",iataCode:"F9"},{name:"Garuda Indonesia",iataCode:"GA"},{name:"Go First",iataCode:"G8"},{name:"Gol Linhas Aereas Inteligentes",iataCode:"G3"},{name:"Hainan Airlines",iataCode:"HU"},{name:"Hawaiian Airlines",iataCode:"HA"},{name:"IndiGo Airlines",iataCode:"6E"},{name:"Japan Airlines",iataCode:"JL"},{name:"Jeju Air",iataCode:"7C"},{name:"Jet2",iataCode:"LS"},{name:"JetBlue Airways",iataCode:"B6"},{name:"JetSMART",iataCode:"JA"},{name:"Juneyao Airlines",iataCode:"HO"},{name:"Kenya Airways",iataCode:"KQ"},{name:"Korean Air",iataCode:"KE"},{name:"Kulula.com",iataCode:"MN"},{name:"LATAM Airlines",iataCode:"LA"},{name:"Lion Air",iataCode:"JT"},{name:"LOT Polish Airlines",iataCode:"LO"},{name:"Lufthansa",iataCode:"LH"},{name:"Libyan Airlines",iataCode:"LN"},{name:"Linea Aerea Amaszonas",iataCode:"Z8"},{name:"Malaysia Airlines",iataCode:"MH"},{name:"Nordwind Airlines",iataCode:"N4"},{name:"Norwegian Air Shuttle",iataCode:"DY"},{name:"Oman Air",iataCode:"WY"},{name:"Pakistan International Airlines",iataCode:"PK"},{name:"Pegasus Airlines",iataCode:"PC"},{name:"Philippine Airlines",iataCode:"PR"},{name:"Qantas Group",iataCode:"QF"},{name:"Qatar Airways",iataCode:"QR"},{name:"Republic Airways",iataCode:"YX"},{name:"Royal Air Maroc",iataCode:"AT"},{name:"Ryanair",iataCode:"FR"},{name:"S7 Airlines",iataCode:"S7"},{name:"SAS",iataCode:"SK"},{name:"Satena",iataCode:"9R"},{name:"Saudia",iataCode:"SV"},{name:"Shandong Airlines",iataCode:"SC"},{name:"Sichuan Airlines",iataCode:"3U"},{name:"Singapore Airlines",iataCode:"SQ"},{name:"Sky Airline",iataCode:"H2"},{name:"SkyWest Airlines",iataCode:"OO"},{name:"South African Airways",iataCode:"SA"},{name:"Southwest Airlines",iataCode:"WN"},{name:"SpiceJet",iataCode:"SG"},{name:"Spirit Airlines",iataCode:"NK"},{name:"Spring Airlines",iataCode:"9S"},{name:"SriLankan Airlines",iataCode:"UL"},{name:"Star Peru",iataCode:"2I"},{name:"Sun Country Airlines",iataCode:"SY"},{name:"SunExpress",iataCode:"XQ"},{name:"TAP Air Portugal",iataCode:"TP"},{name:"Thai AirAsia",iataCode:"FD"},{name:"Thai Airways",iataCode:"TG"},{name:"TUI Airways",iataCode:"BY"},{name:"Tunisair",iataCode:"TU"},{name:"Turkish Airlines",iataCode:"TK"},{name:"Ukraine International",iataCode:"PS"},{name:"United Airlines",iataCode:"UA"},{name:"Ural Airlines",iataCode:"U6"},{name:"VietJet Air",iataCode:"VJ"},{name:"Vietnam Airlines",iataCode:"VN"},{name:"Virgin Atlantic Airways",iataCode:"VS"},{name:"Virgin Australia",iataCode:"VA"},{name:"VivaAerobus",iataCode:"VB"},{name:"VOEPASS Linhas Aereas",iataCode:"2Z"},{name:"Volaris",iataCode:"Y4"},{name:"WestJet",iataCode:"WS"},{name:"Wingo",iataCode:"P5"},{name:"Wizz Air",iataCode:"W6"}];var a=[{name:"Aerospatiale/BAC Concorde",iataTypeCode:"SSC"},{name:"Airbus A300",iataTypeCode:"AB3"},{name:"Airbus A310",iataTypeCode:"310"},{name:"Airbus A310-200",iataTypeCode:"312"},{name:"Airbus A310-300",iataTypeCode:"313"},{name:"Airbus A318",iataTypeCode:"318"},{name:"Airbus A319",iataTypeCode:"319"},{name:"Airbus A319neo",iataTypeCode:"31N"},{name:"Airbus A320",iataTypeCode:"320"},{name:"Airbus A320neo",iataTypeCode:"32N"},{name:"Airbus A321",iataTypeCode:"321"},{name:"Airbus A321neo",iataTypeCode:"32Q"},{name:"Airbus A330",iataTypeCode:"330"},{name:"Airbus A330-200",iataTypeCode:"332"},{name:"Airbus A330-300",iataTypeCode:"333"},{name:"Airbus A330-800neo",iataTypeCode:"338"},{name:"Airbus A330-900neo",iataTypeCode:"339"},{name:"Airbus A340",iataTypeCode:"340"},{name:"Airbus A340-200",iataTypeCode:"342"},{name:"Airbus A340-300",iataTypeCode:"343"},{name:"Airbus A340-500",iataTypeCode:"345"},{name:"Airbus A340-600",iataTypeCode:"346"},{name:"Airbus A350",iataTypeCode:"350"},{name:"Airbus A350-900",iataTypeCode:"359"},{name:"Airbus A350-1000",iataTypeCode:"351"},{name:"Airbus A380",iataTypeCode:"380"},{name:"Airbus A380-800",iataTypeCode:"388"},{name:"Antonov An-12",iataTypeCode:"ANF"},{name:"Antonov An-24",iataTypeCode:"AN4"},{name:"Antonov An-26",iataTypeCode:"A26"},{name:"Antonov An-28",iataTypeCode:"A28"},{name:"Antonov An-30",iataTypeCode:"A30"},{name:"Antonov An-32",iataTypeCode:"A32"},{name:"Antonov An-72",iataTypeCode:"AN7"},{name:"Antonov An-124 Ruslan",iataTypeCode:"A4F"},{name:"Antonov An-140",iataTypeCode:"A40"},{name:"Antonov An-148",iataTypeCode:"A81"},{name:"Antonov An-158",iataTypeCode:"A58"},{name:"Antonov An-225 Mriya",iataTypeCode:"A5F"},{name:"Boeing 707",iataTypeCode:"703"},{name:"Boeing 717",iataTypeCode:"717"},{name:"Boeing 720B",iataTypeCode:"B72"},{name:"Boeing 727",iataTypeCode:"727"},{name:"Boeing 727-100",iataTypeCode:"721"},{name:"Boeing 727-200",iataTypeCode:"722"},{name:"Boeing 737 MAX 7",iataTypeCode:"7M7"},{name:"Boeing 737 MAX 8",iataTypeCode:"7M8"},{name:"Boeing 737 MAX 9",iataTypeCode:"7M9"},{name:"Boeing 737 MAX 10",iataTypeCode:"7MJ"},{name:"Boeing 737",iataTypeCode:"737"},{name:"Boeing 737-100",iataTypeCode:"731"},{name:"Boeing 737-200",iataTypeCode:"732"},{name:"Boeing 737-300",iataTypeCode:"733"},{name:"Boeing 737-400",iataTypeCode:"734"},{name:"Boeing 737-500",iataTypeCode:"735"},{name:"Boeing 737-600",iataTypeCode:"736"},{name:"Boeing 737-700",iataTypeCode:"73G"},{name:"Boeing 737-800",iataTypeCode:"738"},{name:"Boeing 737-900",iataTypeCode:"739"},{name:"Boeing 747",iataTypeCode:"747"},{name:"Boeing 747-100",iataTypeCode:"741"},{name:"Boeing 747-200",iataTypeCode:"742"},{name:"Boeing 747-300",iataTypeCode:"743"},{name:"Boeing 747-400",iataTypeCode:"744"},{name:"Boeing 747-400D",iataTypeCode:"74J"},{name:"Boeing 747-8",iataTypeCode:"748"},{name:"Boeing 747SP",iataTypeCode:"74L"},{name:"Boeing 747SR",iataTypeCode:"74R"},{name:"Boeing 757",iataTypeCode:"757"},{name:"Boeing 757-200",iataTypeCode:"752"},{name:"Boeing 757-300",iataTypeCode:"753"},{name:"Boeing 767",iataTypeCode:"767"},{name:"Boeing 767-200",iataTypeCode:"762"},{name:"Boeing 767-300",iataTypeCode:"763"},{name:"Boeing 767-400",iataTypeCode:"764"},{name:"Boeing 777",iataTypeCode:"777"},{name:"Boeing 777-200",iataTypeCode:"772"},{name:"Boeing 777-200LR",iataTypeCode:"77L"},{name:"Boeing 777-300",iataTypeCode:"773"},{name:"Boeing 777-300ER",iataTypeCode:"77W"},{name:"Boeing 787",iataTypeCode:"787"},{name:"Boeing 787-8",iataTypeCode:"788"},{name:"Boeing 787-9",iataTypeCode:"789"},{name:"Boeing 787-10",iataTypeCode:"781"},{name:"Canadair Challenger",iataTypeCode:"CCJ"},{name:"Canadair CL-44",iataTypeCode:"CL4"},{name:"Canadair Regional Jet 100",iataTypeCode:"CR1"},{name:"Canadair Regional Jet 200",iataTypeCode:"CR2"},{name:"Canadair Regional Jet 700",iataTypeCode:"CR7"},{name:"Canadair Regional Jet 705",iataTypeCode:"CRA"},{name:"Canadair Regional Jet 900",iataTypeCode:"CR9"},{name:"Canadair Regional Jet 1000",iataTypeCode:"CRK"},{name:"De Havilland Canada DHC-2 Beaver",iataTypeCode:"DHP"},{name:"De Havilland Canada DHC-2 Turbo-Beaver",iataTypeCode:"DHR"},{name:"De Havilland Canada DHC-3 Otter",iataTypeCode:"DHL"},{name:"De Havilland Canada DHC-4 Caribou",iataTypeCode:"DHC"},{name:"De Havilland Canada DHC-6 Twin Otter",iataTypeCode:"DHT"},{name:"De Havilland Canada DHC-7 Dash 7",iataTypeCode:"DH7"},{name:"De Havilland Canada DHC-8-100 Dash 8 / 8Q",iataTypeCode:"DH1"},{name:"De Havilland Canada DHC-8-200 Dash 8 / 8Q",iataTypeCode:"DH2"},{name:"De Havilland Canada DHC-8-300 Dash 8 / 8Q",iataTypeCode:"DH3"},{name:"De Havilland Canada DHC-8-400 Dash 8Q",iataTypeCode:"DH4"},{name:"De Havilland DH.104 Dove",iataTypeCode:"DHD"},{name:"De Havilland DH.114 Heron",iataTypeCode:"DHH"},{name:"Douglas DC-3",iataTypeCode:"D3F"},{name:"Douglas DC-6",iataTypeCode:"D6F"},{name:"Douglas DC-8-50",iataTypeCode:"D8T"},{name:"Douglas DC-8-62",iataTypeCode:"D8L"},{name:"Douglas DC-8-72",iataTypeCode:"D8Q"},{name:"Douglas DC-9-10",iataTypeCode:"D91"},{name:"Douglas DC-9-20",iataTypeCode:"D92"},{name:"Douglas DC-9-30",iataTypeCode:"D93"},{name:"Douglas DC-9-40",iataTypeCode:"D94"},{name:"Douglas DC-9-50",iataTypeCode:"D95"},{name:"Douglas DC-10",iataTypeCode:"D10"},{name:"Douglas DC-10-10",iataTypeCode:"D1X"},{name:"Douglas DC-10-30",iataTypeCode:"D1Y"},{name:"Embraer 170",iataTypeCode:"E70"},{name:"Embraer 175",iataTypeCode:"E75"},{name:"Embraer 190",iataTypeCode:"E90"},{name:"Embraer 195",iataTypeCode:"E95"},{name:"Embraer E190-E2",iataTypeCode:"290"},{name:"Embraer E195-E2",iataTypeCode:"295"},{name:"Embraer EMB.110 Bandeirante",iataTypeCode:"EMB"},{name:"Embraer EMB.120 Brasilia",iataTypeCode:"EM2"},{name:"Embraer Legacy 600",iataTypeCode:"ER3"},{name:"Embraer Phenom 100",iataTypeCode:"EP1"},{name:"Embraer Phenom 300",iataTypeCode:"EP3"},{name:"Embraer RJ135",iataTypeCode:"ER3"},{name:"Embraer RJ140",iataTypeCode:"ERD"},{name:"Embraer RJ145 Amazon",iataTypeCode:"ER4"},{name:"Ilyushin IL18",iataTypeCode:"IL8"},{name:"Ilyushin IL62",iataTypeCode:"IL6"},{name:"Ilyushin IL76",iataTypeCode:"IL7"},{name:"Ilyushin IL86",iataTypeCode:"ILW"},{name:"Ilyushin IL96-300",iataTypeCode:"I93"},{name:"Ilyushin IL114",iataTypeCode:"I14"},{name:"Lockheed L-182 / 282 / 382 (L-100) Hercules",iataTypeCode:"LOH"},{name:"Lockheed L-188 Electra",iataTypeCode:"LOE"},{name:"Lockheed L-1011 Tristar",iataTypeCode:"L10"},{name:"Lockheed L-1049 Super Constellation",iataTypeCode:"L49"},{name:"McDonnell Douglas MD11",iataTypeCode:"M11"},{name:"McDonnell Douglas MD80",iataTypeCode:"M80"},{name:"McDonnell Douglas MD81",iataTypeCode:"M81"},{name:"McDonnell Douglas MD82",iataTypeCode:"M82"},{name:"McDonnell Douglas MD83",iataTypeCode:"M83"},{name:"McDonnell Douglas MD87",iataTypeCode:"M87"},{name:"McDonnell Douglas MD88",iataTypeCode:"M88"},{name:"McDonnell Douglas MD90",iataTypeCode:"M90"},{name:"Sukhoi Superjet 100-95",iataTypeCode:"SU9"},{name:"Tupolev Tu-134",iataTypeCode:"TU3"},{name:"Tupolev Tu-154",iataTypeCode:"TU5"},{name:"Tupolev Tu-204",iataTypeCode:"T20"},{name:"Yakovlev Yak-40",iataTypeCode:"YK4"},{name:"Yakovlev Yak-42",iataTypeCode:"YK2"}];var o=[{name:"Adelaide International Airport",iataCode:"ADL"},{name:"Adolfo Suarez Madrid-Barajas Airport",iataCode:"MAD"},{name:"Aeroparque Jorge Newbery Airport",iataCode:"AEP"},{name:"Afonso Pena International Airport",iataCode:"CWB"},{name:"Alfonso Bonilla Aragon International Airport",iataCode:"CLO"},{name:"Amsterdam Airport Schiphol",iataCode:"AMS"},{name:"Arturo Merino Benitez International Airport",iataCode:"SCL"},{name:"Auckland International Airport",iataCode:"AKL"},{name:"Beijing Capital International Airport",iataCode:"PEK"},{name:"Belem Val de Cans International Airport",iataCode:"BEL"},{name:"Belo Horizonte Tancredo Neves International Airport",iataCode:"CNF"},{name:"Berlin-Tegel Airport",iataCode:"TXL"},{name:"Bole International Airport",iataCode:"ADD"},{name:"Brasilia-Presidente Juscelino Kubitschek International Airport",iataCode:"BSB"},{name:"Brisbane International Airport",iataCode:"BNE"},{name:"Brussels Airport",iataCode:"BRU"},{name:"Cairns Airport",iataCode:"CNS"},{name:"Cairo International Airport",iataCode:"CAI"},{name:"Canberra Airport",iataCode:"CBR"},{name:"Capetown International Airport",iataCode:"CPT"},{name:"Charles de Gaulle International Airport",iataCode:"CDG"},{name:"Charlotte Douglas International Airport",iataCode:"CLT"},{name:"Chengdu Shuangliu International Airport",iataCode:"CTU"},{name:"Chhatrapati Shivaji International Airport",iataCode:"BOM"},{name:"Chicago O'Hare International Airport",iataCode:"ORD"},{name:"Chongqing Jiangbei International Airport",iataCode:"CKG"},{name:"Christchurch International Airport",iataCode:"CHC"},{name:"Copenhagen Kastrup Airport",iataCode:"CPH"},{name:"Dallas Fort Worth International Airport",iataCode:"DFW"},{name:"Daniel K. Inouye International Airport",iataCode:"HNL"},{name:"Denver International Airport",iataCode:"DEN"},{name:"Don Mueang International Airport",iataCode:"DMK"},{name:"Dubai International Airport",iataCode:"DXB"},{name:"Dublin Airport",iataCode:"DUB"},{name:"Dusseldorf Airport",iataCode:"DUS"},{name:"El Dorado International Airport",iataCode:"BOG"},{name:"Eleftherios Venizelos International Airport",iataCode:"ATH"},{name:"Faa'a International Airport",iataCode:"PPT"},{name:"Fort Lauderdale Hollywood International Airport",iataCode:"FLL"},{name:"Fortaleza Pinto Martins International Airport",iataCode:"FOR"},{name:"Frankfurt am Main Airport",iataCode:"FRA"},{name:"George Bush Intercontinental Houston Airport",iataCode:"IAH"},{name:"Gold Coast Airport",iataCode:"OOL"},{name:"Guarulhos - Governador Andre Franco Montoro International Airport",iataCode:"GRU"},{name:"Hartsfield-Jackson Atlanta International Airport",iataCode:"ATL"},{name:"Helsinki Vantaa Airport",iataCode:"HEL"},{name:"Hobart International Airport",iataCode:"HBA"},{name:"Hong Kong International Airport",iataCode:"HKG"},{name:"Houari Boumediene Airport",iataCode:"ALG"},{name:"Hurgada International Airport",iataCode:"HRG"},{name:"Incheon International Airport",iataCode:"ICN"},{name:"Indira Gandhi International Airport",iataCode:"DEL"},{name:"Istanbul Airport",iataCode:"IST"},{name:"Jacksons International Airport",iataCode:"POM"},{name:"Jeju International Airport",iataCode:"CJU"},{name:"John F Kennedy International Airport",iataCode:"JFK"},{name:"Jorge Chavez International Airport",iataCode:"LIM"},{name:"Jose Maria Cordova International Airport",iataCode:"MDE"},{name:"Josep Tarradellas Barcelona-El Prat Airport",iataCode:"BCN"},{name:"Kahului Airport",iataCode:"OGG"},{name:"King Abdulaziz International Airport",iataCode:"JED"},{name:"Kuala Lumpur International Airport",iataCode:"KUL"},{name:"Kunming Changshui International Airport",iataCode:"KMG"},{name:"La Tontouta International Airport",iataCode:"NOU"},{name:"Leonardo da Vinci-Fiumicino Airport",iataCode:"FCO"},{name:"London Heathrow Airport",iataCode:"LHR"},{name:"Los Angeles International Airport",iataCode:"LAX"},{name:"McCarran International Airport",iataCode:"LAS"},{name:"Melbourne International Airport",iataCode:"MEL"},{name:"Mexico City International Airport",iataCode:"MEX"},{name:"Miami International Airport",iataCode:"MIA"},{name:"Ministro Pistarini International Airport",iataCode:"EZE"},{name:"Minneapolis-St Paul International/Wold-Chamberlain Airport",iataCode:"MSP"},{name:"Mohammed V International Airport",iataCode:"CMN"},{name:"Moscow Domodedovo Airport",iataCode:"DME"},{name:"Munich Airport",iataCode:"MUC"},{name:"Murtala Muhammed International Airport",iataCode:"LOS"},{name:"Nadi International Airport",iataCode:"NAN"},{name:"Nairobi Jomo Kenyatta International Airport",iataCode:"NBO"},{name:"Narita International Airport",iataCode:"NRT"},{name:"Newark Liberty International Airport",iataCode:"EWR"},{name:"Ninoy Aquino International Airport",iataCode:"MNL"},{name:"Noumea Magenta Airport",iataCode:"GEA"},{name:"O. R. Tambo International Airport",iataCode:"JNB"},{name:"Orlando International Airport",iataCode:"MCO"},{name:"Oslo Lufthavn",iataCode:"OSL"},{name:"Perth Airport",iataCode:"PER"},{name:"Phoenix Sky Harbor International Airport",iataCode:"PHX"},{name:"Recife Guararapes-Gilberto Freyre International Airport",iataCode:"REC"},{name:"Rio de Janeiro Galeao International Airport",iataCode:"GIG"},{name:"Salgado Filho International Airport",iataCode:"POA"},{name:"Salvador Deputado Luis Eduardo Magalhaes International Airport",iataCode:"SSA"},{name:"San Francisco International Airport",iataCode:"SFO"},{name:"Santos Dumont Airport",iataCode:"SDU"},{name:"Sao Paulo-Congonhas Airport",iataCode:"CGH"},{name:"Seattle Tacoma International Airport",iataCode:"SEA"},{name:"Shanghai Hongqiao International Airport",iataCode:"SHA"},{name:"Shanghai Pudong International Airport",iataCode:"PVG"},{name:"Shenzhen Bao'an International Airport",iataCode:"SZX"},{name:"Sheremetyevo International Airport",iataCode:"SVO"},{name:"Singapore Changi Airport",iataCode:"SIN"},{name:"Soekarno-Hatta International Airport",iataCode:"CGK"},{name:'Stockholm-Arlanda Airport"',iataCode:"ARN"},{name:"Suvarnabhumi Airport",iataCode:"BKK"},{name:"Sydney Kingsford Smith International Airport",iataCode:"SYD"},{name:"Taiwan Taoyuan International Airport",iataCode:"TPE"},{name:"Tan Son Nhat International Airport",iataCode:"SGN"},{name:"Tokyo Haneda International Airport",iataCode:"HND"},{name:"Toronto Pearson International Airport",iataCode:"YYZ"},{name:"Tunis Carthage International Airport",iataCode:"TUN"},{name:"Vancouver International Airport",iataCode:"YVR"},{name:"Vienna International Airport",iataCode:"VIE"},{name:"Viracopos International Airport",iataCode:"VCP"},{name:"Vnukovo International Airport",iataCode:"VKO"},{name:"Wellington International Airport",iataCode:"WLG"},{name:"Xi'an Xianyang International Airport",iataCode:"XIY"},{name:"Zhukovsky International Airport",iataCode:"ZIA"},{name:"Zurich Airport",iataCode:"ZRH"}];var Ja={airline:e,airplane:a,airport:o},r=Ja;var n=["American black bear","Asian black bear","Brown bear","Giant panda","Polar bear","Sloth bear","Spectacled bear","Sun bear"];var i=["Abert's Towhee","Acadian Flycatcher","Acorn Woodpecker","Alder Flycatcher","Aleutian Tern","Allen's Hummingbird","Altamira Oriole","American Avocet","American Bittern","American Black Duck","American Coot","American Crow","American Dipper","American Golden-Plover","American Goldfinch","American Kestrel","American Oystercatcher","American Pipit","American Redstart","American Robin","American Tree Sparrow","American White Pelican","American Wigeon","American Woodcock","Ancient Murrelet","Anhinga","Anna's Hummingbird","Antillean Nighthawk","Antillean Palm Swift","Aplomado Falcon","Arctic Loon","Arctic Tern","Arctic Warbler","Ash-throated Flycatcher","Ashy Storm-Petrel","Asian Brown Flycatcher","Atlantic Puffin","Audubon's Oriole","Audubon's Shearwater","Aztec Thrush","Azure Gallinule","Bachman's Sparrow","Bachman's Warbler","Bahama Mockingbird","Bahama Swallow","Bahama Woodstar","Baikal Teal","Baird's Sandpiper","Baird's Sparrow","Bald Eagle","Baltimore Oriole","Bananaquit","Band-rumped Storm-Petrel","Band-tailed Gull","Band-tailed Pigeon","Bank Swallow","Bar-tailed Godwit","Barn Owl","Barn Swallow","Barnacle Goose","Barred Owl","Barrow's Goldeneye","Bay-breasted Warbler","Bean Goose","Bell's Vireo","Belted Kingfisher","Bendire's Thrasher","Berylline Hummingbird","Bewick's Wren","Bicknell's Thrush","Black Catbird","Black Guillemot","Black Noddy","Black Oystercatcher","Black Phoebe","Black Rail","Black Rosy-Finch","Black Scoter","Black Skimmer","Black Storm-Petrel","Black Swift","Black Tern","Black Turnstone","Black Vulture","Black-and-white Warbler","Black-backed Wagtail","Black-backed Woodpecker","Black-bellied Plover","Black-bellied Whistling-Duck","Black-billed Cuckoo","Black-billed Magpie","Black-browed Albatross","Black-capped Chickadee","Black-capped Gnatcatcher","Black-capped Petrel","Black-capped Vireo","Black-chinned Hummingbird","Black-chinned Sparrow","Black-crowned Night-Heron","Black-faced Grassquit","Black-footed Albatross","Black-headed Grosbeak","Black-headed Gull","Black-legged Kittiwake","Black-necked Stilt","Black-tailed Gnatcatcher","Black-tailed Godwit","Black-tailed Gull","Black-throated Blue Warbler","Black-throated Gray Warbler","Black-throated Green Warbler","Black-throated Sparrow","Black-vented Oriole","Black-vented Shearwater","Black-whiskered Vireo","Black-winged Stilt","Blackburnian Warbler","Blackpoll Warbler","Blue Bunting","Blue Grosbeak","Blue Grouse","Blue Jay","Blue Mockingbird","Blue-footed Booby","Blue-gray Gnatcatcher","Blue-headed Vireo","Blue-throated Hummingbird","Blue-winged Teal","Blue-winged Warbler","Bluethroat","Boat-tailed Grackle","Bobolink","Bohemian Waxwing","Bonaparte's Gull","Boreal Chickadee","Boreal Owl","Botteri's Sparrow","Brambling","Brandt's Cormorant","Brant","Brewer's Blackbird","Brewer's Sparrow","Bridled Tern","Bridled Titmouse","Bristle-thighed Curlew","Broad-billed Hummingbird","Broad-billed Sandpiper","Broad-tailed Hummingbird","Broad-winged Hawk","Bronzed Cowbird","Brown Booby","Brown Creeper","Brown Jay","Brown Noddy","Brown Pelican","Brown Shrike","Brown Thrasher","Brown-capped Rosy-Finch","Brown-chested Martin","Brown-crested Flycatcher","Brown-headed Cowbird","Brown-headed Nuthatch","Budgerigar","Buff-bellied Hummingbird","Buff-breasted Flycatcher","Buff-breasted Sandpiper","Buff-collared Nightjar","Bufflehead","Buller's Shearwater","Bullock's Oriole","Bumblebee Hummingbird","Burrowing Owl","Bushtit","Cactus Wren","California Condor","California Gnatcatcher","California Gull","California Quail","California Thrasher","California Towhee","Calliope Hummingbird","Canada Goose","Canada Warbler","Canvasback","Canyon Towhee","Canyon Wren","Cape May Warbler","Caribbean Elaenia","Carolina Chickadee","Carolina Parakeet","Carolina Wren","Caspian Tern","Cassin's Auklet","Cassin's Finch","Cassin's Kingbird","Cassin's Sparrow","Cassin's Vireo","Cattle Egret","Cave Swallow","Cedar Waxwing","Cerulean Warbler","Chestnut-backed Chickadee","Chestnut-collared Longspur","Chestnut-sided Warbler","Chihuahuan Raven","Chimney Swift","Chinese Egret","Chipping Sparrow","Chuck-will's-widow","Chukar","Cinnamon Hummingbird","Cinnamon Teal","Citrine Wagtail","Clapper Rail","Clark's Grebe","Clark's Nutcracker","Clay-colored Robin","Clay-colored Sparrow","Cliff Swallow","Colima Warbler","Collared Forest-Falcon","Collared Plover","Common Black-Hawk","Common Chaffinch","Common Crane","Common Cuckoo","Common Eider","Common Goldeneye","Common Grackle","Common Greenshank","Common Ground-Dove","Common House-Martin","Common Loon","Common Merganser","Common Moorhen","Common Murre","Common Nighthawk","Common Pauraque","Common Pochard","Common Poorwill","Common Raven","Common Redpoll","Common Ringed Plover","Common Rosefinch","Common Sandpiper","Common Snipe","Common Swift","Common Tern","Common Yellowthroat","Connecticut Warbler","Cook's Petrel","Cooper's Hawk","Cordilleran Flycatcher","Corn Crake","Cory's Shearwater","Costa's Hummingbird","Couch's Kingbird","Crane Hawk","Craveri's Murrelet","Crescent-chested Warbler","Crested Auklet","Crested Caracara","Crested Myna","Crimson-collared Grosbeak","Crissal Thrasher","Cuban Martin","Curlew Sandpiper","Curve-billed Thrasher","Dark-eyed Junco","Dickcissel","Double-crested Cormorant","Double-striped Thick-knee","Dovekie","Downy Woodpecker","Dunlin","Dusky Flycatcher","Dusky Thrush","Dusky Warbler","Dusky-capped Flycatcher","Eared Grebe","Eared Trogon","Eastern Bluebird","Eastern Kingbird","Eastern Meadowlark","Eastern Phoebe","Eastern Screech-Owl","Eastern Towhee","Eastern Wood-Pewee","Elegant Tern","Elegant Trogon","Elf Owl","Emperor Goose","Eskimo Curlew","Eurasian Blackbird","Eurasian Bullfinch","Eurasian Collared-Dove","Eurasian Coot","Eurasian Curlew","Eurasian Dotterel","Eurasian Hobby","Eurasian Jackdaw","Eurasian Kestrel","Eurasian Oystercatcher","Eurasian Siskin","Eurasian Tree Sparrow","Eurasian Wigeon","Eurasian Woodcock","Eurasian Wryneck","European Golden-Plover","European Starling","European Storm-Petrel","European Turtle-Dove","Evening Grosbeak","Eyebrowed Thrush","Falcated Duck","Fan-tailed Warbler","Far Eastern Curlew","Ferruginous Hawk","Ferruginous Pygmy-Owl","Field Sparrow","Fieldfare","Fish Crow","Five-striped Sparrow","Flame-colored Tanager","Flammulated Owl","Flesh-footed Shearwater","Florida Scrub-Jay","Fork-tailed Flycatcher","Fork-tailed Storm-Petrel","Fork-tailed Swift","Forster's Tern","Fox Sparrow","Franklin's Gull","Fulvous Whistling-Duck","Gadwall","Gambel's Quail","Garganey","Gila Woodpecker","Gilded Flicker","Glaucous Gull","Glaucous-winged Gull","Glossy Ibis","Golden Eagle","Golden-cheeked Warbler","Golden-crowned Kinglet","Golden-crowned Sparrow","Golden-crowned Warbler","Golden-fronted Woodpecker","Golden-winged Warbler","Grace's Warbler","Grasshopper Sparrow","Gray Bunting","Gray Catbird","Gray Flycatcher","Gray Hawk","Gray Jay","Gray Kingbird","Gray Partridge","Gray Silky-flycatcher","Gray Vireo","Gray Wagtail","Gray-breasted Martin","Gray-cheeked Thrush","Gray-crowned Rosy-Finch","Gray-crowned Yellowthroat","Gray-headed Chickadee","Gray-spotted Flycatcher","Gray-tailed Tattler","Great Auk","Great Black-backed Gull","Great Blue Heron","Great Cormorant","Great Crested Flycatcher","Great Egret","Great Frigatebird","Great Gray Owl","Great Horned Owl","Great Kiskadee","Great Knot","Great Skua","Great Spotted Woodpecker","Great-tailed Grackle","Greater Flamingo","Greater Pewee","Greater Prairie-chicken","Greater Roadrunner","Greater Scaup","Greater Shearwater","Greater White-fronted Goose","Greater Yellowlegs","Green Heron","Green Jay","Green Kingfisher","Green Sandpiper","Green Violet-ear","Green-breasted Mango","Green-tailed Towhee","Green-winged Teal","Greenish Elaenia","Groove-billed Ani","Gull-billed Tern","Gyrfalcon","Hairy Woodpecker","Hammond's Flycatcher","Harlequin Duck","Harris's Hawk","Harris's Sparrow","Hawfinch","Heermann's Gull","Henslow's Sparrow","Hepatic Tanager","Herald Petrel","Hermit Thrush","Hermit Warbler","Herring Gull","Himalayan Snowcock","Hoary Redpoll","Hooded Merganser","Hooded Oriole","Hooded Warbler","Hook-billed Kite","Hoopoe","Horned Grebe","Horned Lark","Horned Puffin","House Finch","House Sparrow","House Wren","Hudsonian Godwit","Hutton's Vireo","Iceland Gull","Inca Dove","Indigo Bunting","Island Scrub-Jay","Ivory Gull","Ivory-billed Woodpecker","Jabiru","Jack Snipe","Jungle Nightjar","Juniper Titmouse","Kentucky Warbler","Key West Quail-Dove","Killdeer","King Eider","King Rail","Kirtland's Warbler","Kittlitz's Murrelet","La Sagra's Flycatcher","Labrador Duck","Ladder-backed Woodpecker","Lanceolated Warbler","Lapland Longspur","Large-billed Tern","Lark Bunting","Lark Sparrow","Laughing Gull","Lawrence's Goldfinch","Laysan Albatross","Lazuli Bunting","Le Conte's Sparrow","Le Conte's Thrasher","Leach's Storm-Petrel","Least Auklet","Least Bittern","Least Flycatcher","Least Grebe","Least Sandpiper","Least Storm-Petrel","Least Tern","Lesser Black-backed Gull","Lesser Frigatebird","Lesser Goldfinch","Lesser Nighthawk","Lesser Prairie-chicken","Lesser Scaup","Lesser White-fronted Goose","Lesser Yellowlegs","Lewis's Woodpecker","Limpkin","Lincoln's Sparrow","Little Blue Heron","Little Bunting","Little Curlew","Little Egret","Little Gull","Little Ringed Plover","Little Shearwater","Little Stint","Loggerhead Kingbird","Loggerhead Shrike","Long-billed Curlew","Long-billed Dowitcher","Long-billed Murrelet","Long-billed Thrasher","Long-eared Owl","Long-tailed Jaeger","Long-toed Stint","Louisiana Waterthrush","Lucifer Hummingbird","Lucy's Warbler","MacGillivray's Warbler","Magnificent Frigatebird","Magnificent Hummingbird","Magnolia Warbler","Mallard","Mangrove Cuckoo","Manx Shearwater","Marbled Godwit","Marbled Murrelet","Marsh Sandpiper","Marsh Wren","Masked Booby","Masked Duck","Masked Tityra","McCown's Longspur","McKay's Bunting","Merlin","Mew Gull","Mexican Chickadee","Mexican Jay","Middendorff's Grasshopper-Warbler","Mississippi Kite","Mongolian Plover","Monk Parakeet","Montezuma Quail","Mottled Duck","Mottled Owl","Mottled Petrel","Mountain Bluebird","Mountain Chickadee","Mountain Plover","Mountain Quail","Mourning Dove","Mourning Warbler","Mugimaki Flycatcher","Murphy's Petrel","Muscovy Duck","Mute Swan","Narcissus Flycatcher","Nashville Warbler","Nelson's Sharp-tailed Sparrow","Neotropic Cormorant","Northern Beardless-Tyrannulet","Northern Bobwhite","Northern Cardinal","Northern Flicker","Northern Fulmar","Northern Gannet","Northern Goshawk","Northern Harrier","Northern Hawk Owl","Northern Jacana","Northern Lapwing","Northern Mockingbird","Northern Parula","Northern Pintail","Northern Pygmy-Owl","Northern Rough-winged Swallow","Northern Saw-whet Owl","Northern Shoveler","Northern Shrike","Northern Waterthrush","Northern Wheatear","Northwestern Crow","Nuttall's Woodpecker","Nutting's Flycatcher","Oak Titmouse","Oldsquaw","Olive Sparrow","Olive Warbler","Olive-backed Pipit","Olive-sided Flycatcher","Orange-crowned Warbler","Orchard Oriole","Oriental Cuckoo","Oriental Greenfinch","Oriental Pratincole","Oriental Scops-Owl","Oriental Turtle-Dove","Osprey","Ovenbird","Pacific Golden-Plover","Pacific Loon","Pacific-slope Flycatcher","Paint-billed Crake","Painted Bunting","Painted Redstart","Pallas's Bunting","Palm Warbler","Parakeet Auklet","Parasitic Jaeger","Passenger Pigeon","Pechora Pipit","Pectoral Sandpiper","Pelagic Cormorant","Peregrine Falcon","Phainopepla","Philadelphia Vireo","Pied-billed Grebe","Pigeon Guillemot","Pileated Woodpecker","Pin-tailed Snipe","Pine Bunting","Pine Grosbeak","Pine Siskin","Pine Warbler","Pink-footed Goose","Pink-footed Shearwater","Pinyon Jay","Piping Plover","Plain Chachalaca","Plain-capped Starthroat","Plumbeous Vireo","Pomarine Jaeger","Prairie Falcon","Prairie Warbler","Prothonotary Warbler","Purple Finch","Purple Gallinule","Purple Martin","Purple Sandpiper","Pygmy Nuthatch","Pyrrhuloxia","Razorbill","Red Crossbill","Red Knot","Red Phalarope","Red-bellied Woodpecker","Red-billed Pigeon","Red-billed Tropicbird","Red-breasted Flycatcher","Red-breasted Merganser","Red-breasted Nuthatch","Red-breasted Sapsucker","Red-cockaded Woodpecker","Red-crowned Parrot","Red-eyed Vireo","Red-faced Cormorant","Red-faced Warbler","Red-flanked Bluetail","Red-footed Booby","Red-headed Woodpecker","Red-legged Kittiwake","Red-naped Sapsucker","Red-necked Grebe","Red-necked Phalarope","Red-necked Stint","Red-shouldered Hawk","Red-tailed Hawk","Red-tailed Tropicbird","Red-throated Loon","Red-throated Pipit","Red-whiskered Bulbul","Red-winged Blackbird","Reddish Egret","Redhead","Redwing","Reed Bunting","Rhinoceros Auklet","Ring-billed Gull","Ring-necked Duck","Ring-necked Pheasant","Ringed Kingfisher","Roadside Hawk","Rock Dove","Rock Ptarmigan","Rock Sandpiper","Rock Wren","Rose-breasted Grosbeak","Rose-throated Becard","Roseate Spoonbill","Roseate Tern","Ross's Goose","Ross's Gull","Rough-legged Hawk","Royal Tern","Ruby-crowned Kinglet","Ruby-throated Hummingbird","Ruddy Duck","Ruddy Ground-Dove","Ruddy Quail-Dove","Ruddy Turnstone","Ruff","Ruffed Grouse","Rufous Hummingbird","Rufous-backed Robin","Rufous-capped Warbler","Rufous-crowned Sparrow","Rufous-winged Sparrow","Rustic Bunting","Rusty Blackbird","Sabine's Gull","Sage Grouse","Sage Sparrow","Sage Thrasher","Saltmarsh Sharp-tailed Sparrow","Sanderling","Sandhill Crane","Sandwich Tern","Savannah Sparrow","Say's Phoebe","Scaled Quail","Scaly-naped Pigeon","Scarlet Ibis","Scarlet Tanager","Scissor-tailed Flycatcher","Scott's Oriole","Seaside Sparrow","Sedge Wren","Semipalmated Plover","Semipalmated Sandpiper","Sharp-shinned Hawk","Sharp-tailed Grouse","Sharp-tailed Sandpiper","Shiny Cowbird","Short-billed Dowitcher","Short-eared Owl","Short-tailed Albatross","Short-tailed Hawk","Short-tailed Shearwater","Shy Albatross","Siberian Accentor","Siberian Blue Robin","Siberian Flycatcher","Siberian Rubythroat","Sky Lark","Slate-throated Redstart","Slaty-backed Gull","Slender-billed Curlew","Smew","Smith's Longspur","Smooth-billed Ani","Snail Kite","Snow Bunting","Snow Goose","Snowy Egret","Snowy Owl","Snowy Plover","Solitary Sandpiper","Song Sparrow","Sooty Shearwater","Sooty Tern","Sora","South Polar Skua","Southern Martin","Spectacled Eider","Spoonbill Sandpiper","Spot-billed Duck","Spot-breasted Oriole","Spotted Dove","Spotted Owl","Spotted Rail","Spotted Redshank","Spotted Sandpiper","Spotted Towhee","Sprague's Pipit","Spruce Grouse","Stejneger's Petrel","Steller's Eider","Steller's Jay","Steller's Sea-Eagle","Stilt Sandpiper","Stonechat","Streak-backed Oriole","Streaked Shearwater","Strickland's Woodpecker","Stripe-headed Tanager","Sulphur-bellied Flycatcher","Summer Tanager","Surf Scoter","Surfbird","Swainson's Hawk","Swainson's Thrush","Swainson's Warbler","Swallow-tailed Kite","Swamp Sparrow","Tamaulipas Crow","Tawny-shouldered Blackbird","Temminck's Stint","Tennessee Warbler","Terek Sandpiper","Thayer's Gull","Thick-billed Kingbird","Thick-billed Murre","Thick-billed Parrot","Thick-billed Vireo","Three-toed Woodpecker","Townsend's Solitaire","Townsend's Warbler","Tree Pipit","Tree Swallow","Tricolored Blackbird","Tricolored Heron","Tropical Kingbird","Tropical Parula","Trumpeter Swan","Tufted Duck","Tufted Flycatcher","Tufted Puffin","Tufted Titmouse","Tundra Swan","Turkey Vulture","Upland Sandpiper","Varied Bunting","Varied Thrush","Variegated Flycatcher","Vaux's Swift","Veery","Verdin","Vermilion Flycatcher","Vesper Sparrow","Violet-crowned Hummingbird","Violet-green Swallow","Virginia Rail","Virginia's Warbler","Wandering Albatross","Wandering Tattler","Warbling Vireo","Wedge-rumped Storm-Petrel","Wedge-tailed Shearwater","Western Bluebird","Western Grebe","Western Gull","Western Kingbird","Western Meadowlark","Western Reef-Heron","Western Sandpiper","Western Screech-Owl","Western Scrub-Jay","Western Tanager","Western Wood-Pewee","Whimbrel","Whip-poor-will","Whiskered Auklet","Whiskered Screech-Owl","Whiskered Tern","White Ibis","White Wagtail","White-breasted Nuthatch","White-cheeked Pintail","White-chinned Petrel","White-collared Seedeater","White-collared Swift","White-crowned Pigeon","White-crowned Sparrow","White-eared Hummingbird","White-eyed Vireo","White-faced Ibis","White-faced Storm-Petrel","White-headed Woodpecker","White-rumped Sandpiper","White-tailed Eagle","White-tailed Hawk","White-tailed Kite","White-tailed Ptarmigan","White-tailed Tropicbird","White-throated Needletail","White-throated Robin","White-throated Sparrow","White-throated Swift","White-tipped Dove","White-winged Crossbill","White-winged Dove","White-winged Parakeet","White-winged Scoter","White-winged Tern","Whooper Swan","Whooping Crane","Wild Turkey","Willet","Williamson's Sapsucker","Willow Flycatcher","Willow Ptarmigan","Wilson's Phalarope","Wilson's Plover","Wilson's Storm-Petrel","Wilson's Warbler","Winter Wren","Wood Duck","Wood Sandpiper","Wood Stork","Wood Thrush","Wood Warbler","Worm-eating Warbler","Worthen's Sparrow","Wrentit","Xantus's Hummingbird","Xantus's Murrelet","Yellow Bittern","Yellow Grosbeak","Yellow Rail","Yellow Wagtail","Yellow Warbler","Yellow-bellied Flycatcher","Yellow-bellied Sapsucker","Yellow-billed Cuckoo","Yellow-billed Loon","Yellow-billed Magpie","Yellow-breasted Bunting","Yellow-breasted Chat","Yellow-crowned Night-Heron","Yellow-eyed Junco","Yellow-faced Grassquit","Yellow-footed Gull","Yellow-green Vireo","Yellow-headed Blackbird","Yellow-legged Gull","Yellow-nosed Albatross","Yellow-rumped Warbler","Yellow-throated Vireo","Yellow-throated Warbler","Yucatan Vireo","Zenaida Dove","Zone-tailed Hawk"];var t=["Abyssinian","American Bobtail","American Curl","American Shorthair","American Wirehair","Balinese","Bengal","Birman","Bombay","British Shorthair","Burmese","Chartreux","Chausie","Cornish Rex","Devon Rex","Donskoy","Egyptian Mau","Exotic Shorthair","Havana","Highlander","Himalayan","Japanese Bobtail","Korat","Kurilian Bobtail","LaPerm","Maine Coon","Manx","Minskin","Munchkin","Nebelung","Norwegian Forest Cat","Ocicat","Ojos Azules","Oriental","Persian","Peterbald","Pixiebob","Ragdoll","Russian Blue","Savannah","Scottish Fold","Selkirk Rex","Serengeti","Siamese","Siberian","Singapura","Snowshoe","Sokoke","Somali","Sphynx","Thai","Tonkinese","Toyger","Turkish Angora","Turkish Van"];var l=["Amazon River Dolphin","Arnoux's Beaked Whale","Atlantic Humpbacked Dolphin","Atlantic Spotted Dolphin","Atlantic White-Sided Dolphin","Australian Snubfin Dolphin","Australian humpback Dolphin","Blue Whale","Bottlenose Dolphin","Bryde\u2019s whale","Burrunan Dolphin","Chilean Dolphin","Chinese River Dolphin","Chinese White Dolphin","Clymene Dolphin","Commerson\u2019s Dolphin","Costero","Dusky Dolphin","False Killer Whale","Fin Whale","Fraser\u2019s Dolphin","Ganges River Dolphin","Guiana Dolphin","Heaviside\u2019s Dolphin","Hector\u2019s Dolphin","Hourglass Dolphin","Humpback whale","Indo-Pacific Bottlenose Dolphin","Indo-Pacific Hump-backed Dolphin","Irrawaddy Dolphin","Killer Whale (Orca)","La Plata Dolphin","Long-Beaked Common Dolphin","Long-finned Pilot Whale","Longman's Beaked Whale","Melon-headed Whale","Northern Rightwhale Dolphin","Omura\u2019s whale","Pacific White-Sided Dolphin","Pantropical Spotted Dolphin","Peale\u2019s Dolphin","Pygmy Killer Whale","Risso\u2019s Dolphin","Rough-Toothed Dolphin","Sei Whale","Short-Beaked Common Dolphin","Short-finned Pilot Whale","Southern Bottlenose Whale","Southern Rightwhale Dolphin","Sperm Whale","Spinner Dolphin","Striped Dolphin","Tucuxi","White-Beaked Dolphin"];var s=["Aberdeen Angus","Abergele","Abigar","Abondance","Abyssinian Shorthorned Zebu","Aceh","Achham","Adamawa","Adaptaur","Afar","Africangus","Afrikaner","Agerolese","Alambadi","Alatau","Albanian","Albera","Alderney","Alentejana","Aleutian wild cattle","Aliad Dinka","Alistana-Sanabresa","Allmogekor","Alur","American","American Angus","American Beef Friesian","American Brown Swiss","American Milking Devon","American White Park","Amerifax","Amrit Mahal","Amsterdam Island cattle","Anatolian Black","Andalusian Black","Andalusian Blond","Andalusian Grey","Angeln","Angoni","Ankina","Ankole","Ankole-Watusi","Aracena","Arado","Argentine Criollo","Argentine Friesian","Armorican","Arouquesa","Arsi","Asturian Mountain","Asturian Valley","Aubrac","Aulie-Ata","Aure et Saint-Girons","Australian Braford","Australian Brangus","Australian Charbray","Australian Friesian Sahiwal","Australian Lowline","Australian Milking Zebu","Australian Shorthorn","Austrian Simmental","Austrian Yellow","Avile\xF1a-Negra Ib\xE9rica","Av\xE9tonou","Aweil Dinka","Ayrshire","Azaouak","Azebuado","Azerbaijan Zebu","Azores","Bachaur cattle","Baherie cattle","Bakosi cattle","Balancer","Baoule","Bargur cattle","Barros\xE3","Barzona","Bazadaise","Bedit","Beef Freisian","Beefalo","Beefmaker","Beefmaster","Begayt","Belgian Blue","Belgian Red","Belgian Red Pied","Belgian White-and-Red","Belmont Red","Belted Galloway","Bernese","Berrenda cattle","Betizu","Bianca Modenese","Blaarkop","Black Angus","Black Baldy","Black Hereford","Blanca Cacere\xF1a","Blanco Orejinegro BON","Blonde d'Aquitaine","Blue Albion","Blue Grey","Bohuskulla","Bonsmara","Boran","Bo\u0161karin","Braford","Brahman","Brahmousin","Brangus","Braunvieh","Brava","Breed","British Friesian","British White","Brown Carpathian","Brown Caucasian","Brown Swiss","Bue Lingo","Burlina","Bushuyev","Butana cattle","Bu\u0161a cattle","Cachena","Caldelana","Camargue","Campbell Island cattle","Canadian Speckle Park","Canadienne","Canaria","Canchim","Caracu","Carinthian Blondvieh","Carora","Cedit","Charbray","Charolais","Chateaubriand","Chiangus","Chianina","Chillingham cattle","Chinese Black Pied","Cholistani","Coloursided White Back","Commercial","Corriente","Corsican cattle","Coste\xF1o con Cuernos","Crioulo Lageano","C\xE1rdena Andaluza","Dajal","Dangi cattle","Danish Black-Pied","Danish Jersey","Danish Red","Dedit","Deep Red cattle","Deoni","Devon","Dexter cattle","Dhanni","Doayo cattle","Doela","Drakensberger","Droughtmaster","Dulong'","Dutch Belted","Dutch Friesian","Dwarf Lulu","D\xF8lafe","East Anatolian Red","Eastern Finncattle","Eastern Red Polled","Eedit","Enderby Island cattle","English Longhorn","Ennstaler Bergscheck","Estonian Holstein","Estonian Native","Estonian Red cattle","Fedit","Finncattle","Finnish Ayrshire","Finnish Holstein-Friesian","Fj\xE4ll","Fleckvieh","Florida Cracker cattle","Fogera","French Simmental","Fribourgeoise","Friesian Red and White","Fulani Sudanese","F\u0113ng Cattle","Galician Blond","Galloway cattle","Gangatiri","Gaolao","Garvonesa","Gascon cattle","Gedit","Gelbvieh","Georgian Mountain cattle","German Angus","German Black Pied Dairy","German Black Pied cattle","German Red Pied","Gir","Glan cattle","Gloucester","Gobra","Greek Shorthorn","Greek Steppe","Greyman cattle","Gudali","Guernsey cattle","Guzer\xE1","Hallikar4","Hanwoo","Hariana cattle","Hart\xF3n del Valle","Harzer Rotvieh","Hays Converter","Heck cattle","Hedit","Hereford","Herens","Highland cattle","Hinterwald","Holando-Argentino","Holstein Friesian cattle","Horro","Hungarian Grey","Hu\xE1ng Cattle","Hybridmaster","Iberian cattle","Icelandic","Iedit","Illawarra cattle","Improved Red and White","Indo-Brazilian","Irish Moiled","Israeli Holstein","Israeli Red","Istoben cattle","Istrian cattle","Jamaica Black","Jamaica Hope","Jamaica Red","Japanese Brown","Jarmelista","Javari cattle","Jedit","Jersey cattle","Jutland cattle","Kabin Buri cattle","Kalmyk cattle","Kamphaeng Saen cattle","Kangayam","Kankrej","Karan Swiss","Kasaragod Dwarf cattle","Kathiawadi","Kazakh Whiteheaded","Kedit","Kenana cattle","Kenkatha cattle","Kerry cattle","Kherigarh","Khillari cattle","Kholomogory","Korat Wagyu","Kostroma cattle","Krishna Valley cattle","Kurgan cattle","Kuri","La Reina cattle","Lakenvelder cattle","Lampurger","Latvian Blue","Latvian Brown","Latvian Danish Red","Lebedyn","Ledit","Levantina","Limia cattle","Limousin","Limpurger","Lincoln Red","Lineback","Lithuanian Black-and-White","Lithuanian Light Grey","Lithuanian Red","Lithuanian White-Backed","Lohani cattle","Lourdais","Lucerna cattle","Luing","Madagascar Zebu","Madura","Maine-Anjou","Malnad Gidda","Malvi","Mandalong Special","Mantequera Leonesa","Maramure\u015F Brown","Marchigiana","Maremmana","Marinhoa","Maronesa","Masai","Mashona","Medit","Menorquina","Mertolenga","Meuse-Rhine-Issel","Mewati","Milking Shorthorn","Minhota","Mirandesa","Mirkadim","Moc\u0103ni\u0163\u0103","Mollie","Monchina","Mongolian","Montb\xE9liarde","Morucha","Murboden","Murnau-Werdenfels","Murray Grey","Muturu","N'Dama","Nagori","Nedit","Negra Andaluza","Nelore","Nguni","Nimari","Normande","North Bengal Grey","Northern Finncattle","Northern Shorthorn","Norwegian Red","Oedit]","Ongole","Original Simmental","Pajuna","Palmera","Pantaneiro","Parda Alpina","Parthenaise","Pasiega","Pedit","Pembroke","Philippine Native","Pie Rouge des Plaines","Piedmontese cattle","Pineywoods","Pinzgauer","Pirenaica","Podolac","Podolica","Polish Black-and-White","Polish Red","Poll Shorthorn","Polled Hereford","Polled Shorthorn","Ponwar","Preta","Pulikulam","Punganur","Pustertaler Sprinzen","Qedit","Qinchaun","Queensland Miniature Boran","RX3","Ramo Grande","Randall","Raramuri Criollo","Rathi","Raya","Red Angus","Red Brangus","Red Chittagong","Red Fulani","Red Gorbatov","Red Holstein","Red Kandhari","Red Mingrelian","Red Poll","Red Polled \xD8stland","Red Sindhi","Redit","Retinta","Riggit Galloway","Ringam\xE5la","Rohjan","Romagnola","Romanian B\u0103l\u0163ata","Romanian Steppe Gray","Romosinuano","Russian Black Pied","R\xE4tisches Grauvieh","Sahiwal","Salers","Salorn","Sanga","Sanhe","Santa Cruz","Santa Gertrudis","Sayaguesa","Schwyz","Sedit","Selembu","Senepol","Serbian Pied","Serbian Steppe","Sheko","Shetland","Shorthorn","Siboney de Cuba","Simbrah","Simford","Simmental","Siri","South Devon","Spanish Fighting Bull","Speckle Park","Square Meater","Sussex","Swedish Friesian","Swedish Polled","Swedish Red Pied","Swedish Red Polled","Swedish Red-and-White","Tabapu\xE3","Tarentaise","Tasmanian Grey","Tauros","Tedit","Telemark","Texas Longhorn","Texon","Thai Black","Thai Fighting Bull","Thai Friesian","Thai Milking Zebu","Tharparkar","Tswana","Tudanca","Tuli","Tulim","Turkish Grey Steppe","Tux-Zillertal","Tyrol Grey","Uedit","Ukrainian Grey","Umblachery","Valdostana Castana","Valdostana Pezzata Nera","Valdostana Pezzata Rossa","Vaynol","Vechur8","Vedit","Vestland Fjord","Vestland Red Polled","Vianesa","Volinian Beef","Vorderwald","Vosgienne","V\xE4neko","Waguli","Wagyu","Wangus","Wedit","Welsh Black","Western Finncattle","White C\xE1ceres","White Fulani","White Lamphun","White Park","Whitebred Shorthorn","Xedit","Xingjiang Brown","Yakutian","Yanbian","Yanhuang","Yedit","Yurino","Zebu","Zedit","\xC9vol\xE8ne cattle","\u017Bubro\u0144"];var d=["African Slender-snouted Crocodile","Alligator mississippiensis","American Crocodile","Australian Freshwater Crocodile","Black Caiman","Broad-snouted Caiman","Chinese Alligator","Cuban Crocodile","Cuvier\u2019s Dwarf Caiman","Dwarf Crocodile","Gharial","Morelet\u2019s Crocodile","Mugger Crocodile","New Guinea Freshwater Crocodile","Nile Crocodile","Orinoco Crocodile","Philippine Crocodile","Saltwater Crocodile","Schneider\u2019s Smooth-fronted Caiman","Siamese Crocodile","Spectacled Caiman","Tomistoma","West African Crocodile","Yacare Caiman"];var u=["Affenpinscher","Afghan Hound","Aidi","Airedale Terrier","Akbash","Akita","Alano Espa\xF1ol","Alapaha Blue Blood Bulldog","Alaskan Husky","Alaskan Klee Kai","Alaskan Malamute","Alopekis","Alpine Dachsbracke","American Bulldog","American Bully","American Cocker Spaniel","American English Coonhound","American Foxhound","American Hairless Terrier","American Pit Bull Terrier","American Staffordshire Terrier","American Water Spaniel","Andalusian Hound","Anglo-Fran\xE7ais de Petite V\xE9nerie","Appenzeller Sennenhund","Ariegeois","Armant","Armenian Gampr dog","Artois Hound","Australian Cattle Dog","Australian Kelpie","Australian Shepherd","Australian Stumpy Tail Cattle Dog","Australian Terrier","Austrian Black and Tan Hound","Austrian Pinscher","Azawakh","Bakharwal dog","Banjara Hound","Barbado da Terceira","Barbet","Basenji","Basque Shepherd Dog","Basset Art\xE9sien Normand","Basset Bleu de Gascogne","Basset Fauve de Bretagne","Basset Hound","Bavarian Mountain Hound","Beagle","Beagle-Harrier","Bearded Collie","Beauceron","Bedlington Terrier","Belgian Shepherd","Bergamasco Shepherd","Berger Picard","Bernese Mountain Dog","Bhotia","Bichon Fris\xE9","Billy","Black Mouth Cur","Black Norwegian Elkhound","Black Russian Terrier","Black and Tan Coonhound","Bloodhound","Blue Lacy","Blue Picardy Spaniel","Bluetick Coonhound","Boerboel","Bohemian Shepherd","Bolognese","Border Collie","Border Terrier","Borzoi","Bosnian Coarse-haired Hound","Boston Terrier","Bouvier des Ardennes","Bouvier des Flandres","Boxer","Boykin Spaniel","Bracco Italiano","Braque Francais","Braque Saint-Germain","Braque d'Auvergne","Braque de l'Ari\xE8ge","Braque du Bourbonnais","Briard","Briquet Griffon Vend\xE9en","Brittany","Broholmer","Bruno Jura Hound","Brussels Griffon","Bucovina Shepherd Dog","Bull Arab","Bull Terrier","Bulldog","Bullmastiff","Bully Kutta","Burgos Pointer","Cairn Terrier","Campeiro Bulldog","Can de Chira","Canaan Dog","Canadian Eskimo Dog","Cane Corso","Cane Paratore","Cane di Oropa","Cantabrian Water Dog","Cardigan Welsh Corgi","Carea Castellano Manchego","Carolina Dog","Carpathian Shepherd Dog","Catahoula Leopard Dog","Catalan Sheepdog","Caucasian Shepherd Dog","Cavalier King Charles Spaniel","Central Asian Shepherd Dog","Cesky Fousek","Cesky Terrier","Chesapeake Bay Retriever","Chien Fran\xE7ais Blanc et Noir","Chien Fran\xE7ais Blanc et Orange","Chien Fran\xE7ais Tricolore","Chihuahua","Chilean Terrier","Chinese Chongqing Dog","Chinese Crested Dog","Chinook","Chippiparai","Chongqing dog","Chortai","Chow Chow","Cimarr\xF3n Uruguayo","Cirneco dell'Etna","Clumber Spaniel","Colombian fino hound","Coton de Tulear","Cretan Hound","Croatian Sheepdog","Curly-Coated Retriever","Cursinu","Czechoslovakian Wolfdog","C\xE3o Fila de S\xE3o Miguel","C\xE3o da Serra de Aires","C\xE3o de Castro Laboreiro","C\xE3o de Gado Transmontano","Dachshund","Dalmatian","Dandie Dinmont Terrier","Danish-Swedish Farmdog","Denmark Feist","Dingo","Doberman Pinscher","Dogo Argentino","Dogo Guatemalteco","Dogo Sardesco","Dogue Brasileiro","Dogue de Bordeaux","Drentse Patrijshond","Drever","Dunker","Dutch Shepherd","Dutch Smoushond","East European Shepherd","East Siberian Laika","English Cocker Spaniel","English Foxhound","English Mastiff","English Setter","English Shepherd","English Springer Spaniel","English Toy Terrier","Entlebucher Mountain Dog","Estonian Hound","Estrela Mountain Dog","Eurasier","Field Spaniel","Fila Brasileiro","Finnish Hound","Finnish Lapphund","Finnish Spitz","Flat-Coated Retriever","French Bulldog","French Spaniel","Galgo Espa\xF1ol","Galician Shepherd Dog","Garafian Shepherd","Gascon Saintongeois","Georgian Shepherd","German Hound","German Longhaired Pointer","German Pinscher","German Roughhaired Pointer","German Shepherd Dog","German Shorthaired Pointer","German Spaniel","German Spitz","German Wirehaired Pointer","Giant Schnauzer","Glen of Imaal Terrier","Golden Retriever","Gordon Setter","Go\u0144czy Polski","Grand Anglo-Fran\xE7ais Blanc et Noir","Grand Anglo-Fran\xE7ais Blanc et Orange","Grand Anglo-Fran\xE7ais Tricolore","Grand Basset Griffon Vend\xE9en","Grand Bleu de Gascogne","Grand Griffon Vend\xE9en","Great Dane","Greater Swiss Mountain Dog","Greek Harehound","Greek Shepherd","Greenland Dog","Greyhound","Griffon Bleu de Gascogne","Griffon Fauve de Bretagne","Griffon Nivernais","Gull Dong","Gull Terrier","Hamiltonst\xF6vare","Hanover Hound","Harrier","Havanese","Hierran Wolfdog","Hokkaido","Hovawart","Huntaway","Hygen Hound","H\xE4llefors Elkhound","Ibizan Hound","Icelandic Sheepdog","Indian Spitz","Indian pariah dog","Irish Red and White Setter","Irish Setter","Irish Terrier","Irish Water Spaniel","Irish Wolfhound","Istrian Coarse-haired Hound","Istrian Shorthaired Hound","Italian Greyhound","Jack Russell Terrier","Jagdterrier","Japanese Chin","Japanese Spitz","Japanese Terrier","Jindo","Jonangi","Kai Ken","Kaikadi","Kangal Shepherd Dog","Kanni","Karakachan dog","Karelian Bear Dog","Kars","Karst Shepherd","Keeshond","Kerry Beagle","Kerry Blue Terrier","King Charles Spaniel","King Shepherd","Kintamani","Kishu","Kokoni","Kombai","Komondor","Kooikerhondje","Koolie","Koyun dog","Kromfohrl\xE4nder","Kuchi","Kuvasz","Labrador Retriever","Lagotto Romagnolo","Lakeland Terrier","Lancashire Heeler","Landseer","Lapponian Herder","Large M\xFCnsterl\xE4nder","Leonberger","Levriero Sardo","Lhasa Apso","Lithuanian Hound","Lupo Italiano","L\xF6wchen","Mackenzie River Husky","Magyar ag\xE1r","Mahratta Greyhound","Maltese","Manchester Terrier","Maremmano-Abruzzese Sheepdog","McNab dog","Miniature American Shepherd","Miniature Bull Terrier","Miniature Fox Terrier","Miniature Pinscher","Miniature Schnauzer","Molossus of Epirus","Montenegrin Mountain Hound","Mountain Cur","Mountain Feist","Mucuchies","Mudhol Hound","Mudi","Neapolitan Mastiff","New Guinea Singing Dog","New Zealand Heading Dog","Newfoundland","Norfolk Terrier","Norrbottenspets","Northern Inuit Dog","Norwegian Buhund","Norwegian Elkhound","Norwegian Lundehund","Norwich Terrier","Nova Scotia Duck Tolling Retriever","Old Croatian Sighthound","Old Danish Pointer","Old English Sheepdog","Old English Terrier","Olde English Bulldogge","Otterhound","Pachon Navarro","Paisley Terrier","Pampas Deerhound","Papillon","Parson Russell Terrier","Pastore della Lessinia e del Lagorai","Patagonian Sheepdog","Patterdale Terrier","Pekingese","Pembroke Welsh Corgi","Perro Majorero","Perro de Pastor Mallorquin","Perro de Presa Canario","Perro de Presa Mallorquin","Peruvian Inca Orchid","Petit Basset Griffon Vend\xE9en","Petit Bleu de Gascogne","Phal\xE8ne","Pharaoh Hound","Phu Quoc Ridgeback","Picardy Spaniel","Plott Hound","Plummer Terrier","Podenco Canario","Podenco Valenciano","Pointer","Poitevin","Polish Greyhound","Polish Hound","Polish Lowland Sheepdog","Polish Tatra Sheepdog","Pomeranian","Pont-Audemer Spaniel","Poodle","Porcelaine","Portuguese Podengo","Portuguese Pointer","Portuguese Water Dog","Posavac Hound","Pra\u017Esk\xFD Krysa\u0159\xEDk","Pshdar Dog","Pudelpointer","Pug","Puli","Pumi","Pungsan Dog","Pyrenean Mastiff","Pyrenean Mountain Dog","Pyrenean Sheepdog","Rafeiro do Alentejo","Rajapalayam","Rampur Greyhound","Rat Terrier","Ratonero Bodeguero Andaluz","Ratonero Mallorquin","Ratonero Murciano de Huerta","Ratonero Valenciano","Redbone Coonhound","Rhodesian Ridgeback","Romanian Mioritic Shepherd Dog","Romanian Raven Shepherd Dog","Rottweiler","Rough Collie","Russian Spaniel","Russian Toy","Russo-European Laika","Saarloos Wolfdog","Sabueso Espa\xF1ol","Saint Bernard","Saint Hubert Jura Hound","Saint-Usuge Spaniel","Saluki","Samoyed","Sapsali","Sarabi dog","Sardinian Shepherd Dog","Schapendoes","Schillerst\xF6vare","Schipperke","Schweizer Laufhund","Schweizerischer Niederlaufhund","Scottish Deerhound","Scottish Terrier","Sealyham Terrier","Segugio Italiano","Segugio Maremmano","Segugio dell'Appennino","Seppala Siberian Sleddog","Serbian Hound","Serbian Tricolour Hound","Serrano Bulldog","Shar Pei","Shetland Sheepdog","Shiba Inu","Shih Tzu","Shikoku","Shiloh Shepherd","Siberian Husky","Silken Windhound","Silky Terrier","Sinhala Hound","Skye Terrier","Sloughi","Slovakian Wirehaired Pointer","Slovensk\xFD Cuvac","Slovensk\xFD Kopov","Smalandst\xF6vare","Small Greek domestic dog","Small M\xFCnsterl\xE4nder","Smooth Collie","Smooth Fox Terrier","Soft-Coated Wheaten Terrier","South Russian Ovcharka","Spanish Mastiff","Spanish Water Dog","Spinone Italiano","Sporting Lucas Terrier","Stabyhoun","Staffordshire Bull Terrier","Standard Schnauzer","Stephens Stock","Styrian Coarse-haired Hound","Sussex Spaniel","Swedish Elkhound","Swedish Lapphund","Swedish Vallhund","Swedish White Elkhound","Taigan","Taiwan Dog","Tamaskan Dog","Teddy Roosevelt Terrier","Telomian","Tenterfield Terrier","Terrier Brasileiro","Thai Bangkaew Dog","Thai Ridgeback","Tibetan Mastiff","Tibetan Spaniel","Tibetan Terrier","Tornjak","Tosa","Toy Fox Terrier","Toy Manchester Terrier","Transylvanian Hound","Treeing Cur","Treeing Feist","Treeing Tennessee Brindle","Treeing Walker Coonhound","Trigg Hound","Tyrolean Hound","Vikhan","Villano de Las Encartaciones","Villanuco de Las Encartaciones","Vizsla","Volpino Italiano","Weimaraner","Welsh Sheepdog","Welsh Springer Spaniel","Welsh Terrier","West Highland White Terrier","West Siberian Laika","Westphalian Dachsbracke","Wetterhoun","Whippet","White Shepherd","White Swiss Shepherd Dog","Wire Fox Terrier","Wirehaired Pointing Griffon","Wirehaired Vizsla","Xiasi Dog","Xoloitzcuintli","Yakutian Laika","Yorkshire Terrier","\u0160arplaninac"];var c=["Alaska pollock","Albacore","Amur catfish","Araucanian herring","Argentine hake","Asari","Asian swamp eel","Atlantic cod","Atlantic herring","Atlantic horse mackerel","Atlantic mackerel","Atlantic menhaden","Atlantic salmon","Bigeye scad","Bigeye tuna","Bighead carp","Black carp","Blood cockle","Blue swimming crab","Blue whiting","Bombay-duck","Bonga shad","California pilchard","Cape horse mackerel","Capelin","Catla","Channel catfish","Chilean jack mackerel","Chinese perch","Chinese softshell turtle","Chub mackerel","Chum salmon","Common carp","Crucian carp","Daggertooth pike conger","European anchovy","European pilchard","European sprat","Filipino Venus","Gazami crab","Goldstripe sardinella","Grass carp","Gulf menhaden","Haddock","Hilsa shad","Indian mackerel","Indian oil sardine","Iridescent shark","Japanese anchovy","Japanese cockle","Japanese common catfish","Japanese flying squid","Japanese jack mackerel","Japanese littleneck","Japanese pilchard","Jumbo flying squid","Kawakawa","Korean bullhead","Largehead hairtail","Longtail tuna","Madeiran sardinella","Mandarin fish","Milkfish","Mrigal carp","Narrow-barred Spanish mackerel","Nile perch","Nile tilapia","North Pacific hake","Northern snakehead","Pacific anchoveta","Pacific cod","Pacific herring","Pacific sand lance","Pacific sandlance","Pacific saury","Pacific thread herring","Peruvian anchoveta","Pink salmon","Pollock","Pond loach","Rainbow trout","Rohu","Round sardinella","Short mackerel","Silver carp","Silver cyprinid","Skipjack tuna","Southern African anchovy","Southern rough shrimp","Whiteleg shrimp","Wuchang bream","Yellow croaker","Yellowfin tuna","Yellowhead catfish","Yellowstripe scad"];var m$1=["Abaco Barb","Abtenauer","Abyssinian","Aegidienberger","Akhal-Teke","Albanian Horse","Altai Horse","Alt\xE8r Real","American Albino","American Cream Draft","American Indian Horse","American Paint Horse","American Quarter Horse","American Saddlebred","American Warmblood","Andalusian Horse","Andravida Horse","Anglo-Arabian","Anglo-Arabo-Sardo","Anglo-Kabarda","Appaloosa","AraAppaloosa","Arabian Horse","Ardennes Horse","Arenberg-Nordkirchen","Argentine Criollo","Asian wild Horse","Assateague Horse","Asturc\xF3n","Augeron","Australian Brumby","Australian Draught Horse","Australian Stock Horse","Austrian Warmblood","Auvergne Horse","Auxois","Azerbaijan Horse","Azteca Horse","Baise Horse","Bale","Balearic Horse","Balikun Horse","Baluchi Horse","Banker Horse","Barb Horse","Bardigiano","Bashkir Curly","Basque Mountain Horse","Bavarian Warmblood","Belgian Half-blood","Belgian Horse","Belgian Warmblood ","Bhutia Horse","Black Forest Horse","Blazer Horse","Boerperd","Borana","Boulonnais Horse","Brabant","Brandenburger","Brazilian Sport Horse","Breton Horse","Brumby","Budyonny Horse","Burguete Horse","Burmese Horse","Byelorussian Harness Horse","Calabrese Horse","Camargue Horse","Camarillo White Horse","Campeiro","Campolina","Canadian Horse","Canadian Pacer","Carolina Marsh Tacky","Carthusian Horse","Caspian Horse","Castilian Horse","Castillonnais","Catria Horse","Cavallo Romano della Maremma Laziale","Cerbat Mustang","Chickasaw Horse","Chilean Corralero","Choctaw Horse","Cleveland Bay","Clydesdale Horse","Cob","Coldblood Trotter","Colonial Spanish Horse","Colorado Ranger","Comtois Horse","Corsican Horse","Costa Rican Saddle Horse","Cretan Horse","Criollo Horse","Croatian Coldblood","Cuban Criollo","Cumberland Island Horse","Curly Horse","Czech Warmblood","Daliboz","Danish Warmblood","Danube Delta Horse","Dole Gudbrandsdal","Don","Dongola Horse","Draft Trotter","Dutch Harness Horse","Dutch Heavy Draft","Dutch Warmblood","Dzungarian Horse","East Bulgarian","East Friesian Horse","Estonian Draft","Estonian Horse","Falabella","Faroese","Finnhorse","Fjord Horse","Fleuve","Florida Cracker Horse","Foutank\xE9","Frederiksborg Horse","Freiberger","French Trotter","Friesian Cross","Friesian Horse","Friesian Sporthorse","Furioso-North Star","Galice\xF1o","Galician Pony","Gelderland Horse","Georgian Grande Horse","German Warmblood","Giara Horse","Gidran","Groningen Horse","Gypsy Horse","Hackney Horse","Haflinger","Hanoverian Horse","Heck Horse","Heihe Horse","Henson Horse","Hequ Horse","Hirzai","Hispano-Bret\xF3n","Holsteiner Horse","Horro","Hungarian Warmblood","Icelandic Horse","Iomud","Irish Draught","Irish Sport Horse sometimes called Irish Hunter","Italian Heavy Draft","Italian Trotter","Jaca Navarra","Jeju Horse","Jutland Horse","Kabarda Horse","Kafa","Kaimanawa Horses","Kalmyk Horse","Karabair","Karabakh Horse","Karachai Horse","Karossier","Kathiawari","Kazakh Horse","Kentucky Mountain Saddle Horse","Kiger Mustang","Kinsky Horse","Kisber Felver","Kiso Horse","Kladruber","Knabstrupper","Konik","Kundudo","Kustanair","Kyrgyz Horse","Latvian Horse","Lipizzan","Lithuanian Heavy Draught","Lokai","Losino Horse","Lusitano","Lyngshest","M'Bayar","M'Par","Mallorqu\xEDn","Malopolski","Mangalarga","Mangalarga Marchador","Maremmano","Marisme\xF1o Horse","Marsh Tacky","Marwari Horse","Mecklenburger","Menorqu\xEDn","Messara Horse","Metis Trotter","Mez\u0151hegyesi Sport Horse","Me\u0111imurje Horse","Miniature Horse","Misaki Horse","Missouri Fox Trotter","Monchina","Mongolian Horse","Mongolian Wild Horse","Monterufolino","Morab","Morgan Horse","Mountain Pleasure Horse","Moyle Horse","Murakoz Horse","Murgese","Mustang Horse","M\xE9rens Horse","Namib Desert Horse","Nangchen Horse","National Show Horse","Nez Perce Horse","Nivernais Horse","Nokota Horse","Noma","Nonius Horse","Nooitgedachter","Nordlandshest","Noriker Horse","Norman Cob","North American Single-Footer Horse","North Swedish Horse","Norwegian Coldblood Trotter","Norwegian Fjord","Novokirghiz","Oberlander Horse","Ogaden","Oldenburg Horse","Orlov trotter","Ostfriesen","Paint","Pampa Horse","Paso Fino","Pentro Horse","Percheron","Persano Horse","Peruvian Paso","Pintabian","Pleven Horse","Poitevin Horse","Posavac Horse","Pottok","Pryor Mountain Mustang","Przewalski's Horse","Pura Raza Espa\xF1ola","Purosangue Orientale","Qatgani","Quarab","Quarter Horse","Racking Horse","Retuerta Horse","Rhenish German Coldblood","Rhinelander Horse","Riwoche Horse","Rocky Mountain Horse","Romanian Sporthorse","Rottaler","Russian Don","Russian Heavy Draft","Russian Trotter","Saddlebred","Salerno Horse","Samolaco Horse","San Fratello Horse","Sarcidano Horse","Sardinian Anglo-Arab","Schleswig Coldblood","Schwarzw\xE4lder Kaltblut","Selale","Sella Italiano","Selle Fran\xE7ais","Shagya Arabian","Shan Horse","Shire Horse","Siciliano Indigeno","Silesian Horse","Sokolsky Horse","Sorraia","South German Coldblood","Soviet Heavy Draft","Spanish Anglo-Arab","Spanish Barb","Spanish Jennet Horse","Spanish Mustang","Spanish Tarpan","Spanish-Norman Horse","Spiti Horse","Spotted Saddle Horse","Standardbred Horse","Suffolk Punch","Swedish Ardennes","Swedish Warmblood","Swedish coldblood trotter","Swiss Warmblood","Taish\u016B Horse","Takhi","Tawleed","Tchernomor","Tennessee Walking Horse","Tersk Horse","Thoroughbred","Tiger Horse","Tinker Horse","Tolfetano","Tori Horse","Trait Du Nord","Trakehner","Tsushima","Tuigpaard","Ukrainian Riding Horse","Unmol Horse","Uzunyayla","Ventasso Horse","Virginia Highlander","Vlaamperd","Vladimir Heavy Draft","Vyatka","Waler","Waler Horse","Walkaloosa","Warlander","Warmblood","Welsh Cob","Westphalian Horse","Wielkopolski","W\xFCrttemberger","Xilingol Horse","Yakutian Horse","Yili Horse","Yonaguni Horse","Zaniskari","Zhemaichu","Zweibr\xFCcker","\u017Demaitukas"];var h=["Acacia-ants","Acorn-plum gall","Aerial yellowjacket","Africanized honey bee","Allegheny mound ant","Almond stone wasp","Ant","Arboreal ant","Argentine ant","Asian paper wasp","Baldfaced hornet","Bee","Bigheaded ant","Black and yellow mud dauber","Black carpenter ant","Black imported fire ant","Blue horntail woodwasp","Blue orchard bee","Braconid wasp","Bumble bee","Carpenter ant","Carpenter wasp","Chalcid wasp","Cicada killer","Citrus blackfly parasitoid","Common paper wasp","Crazy ant","Cuckoo wasp","Cynipid gall wasp","Eastern Carpenter bee","Eastern yellowjacket","Elm sawfly","Encyrtid wasp","Erythrina gall wasp","Eulophid wasp","European hornet","European imported fire ant","False honey ant","Fire ant","Forest bachac","Forest yellowjacket","German yellowjacket","Ghost ant","Giant ichneumon wasp","Giant resin bee","Giant wood wasp","Golden northern bumble bee","Golden paper wasp","Gouty oak gall","Grass Carrying Wasp","Great black wasp","Great golden digger wasp","Hackberry nipple gall parasitoid","Honey bee","Horned oak gall","Horse guard wasp","Hunting wasp","Ichneumonid wasp","Keyhole wasp","Knopper gall","Large garden bumble bee","Large oak-apple gall","Leafcutting bee","Little fire ant","Little yellow ant","Long-horned bees","Long-legged ant","Macao paper wasp","Mallow bee","Marble gall","Mossyrose gall wasp","Mud-daubers","Multiflora rose seed chalcid","Oak apple gall wasp","Oak rough bulletgall wasp","Oak saucer gall","Oak shoot sawfly","Odorous house ant","Orange-tailed bumble bee","Orangetailed potter wasp","Oriental chestnut gall wasp","Paper wasp","Pavement ant","Pigeon tremex","Pip gall wasp","Prairie yellowjacket","Pteromalid wasp","Pyramid ant","Raspberry Horntail","Red ant","Red carpenter ant","Red harvester ant","Red imported fire ant","Red wasp","Red wood ant","Red-tailed wasp","Reddish carpenter ant","Rough harvester ant","Sawfly parasitic wasp","Scale parasitoid","Silky ant","Sirex woodwasp","Siricid woodwasp","Smaller yellow ant","Southeastern blueberry bee","Southern fire ant","Southern yellowjacket","Sphecid wasp","Stony gall","Sweat bee","Texas leafcutting ant","Tiphiid wasp","Torymid wasp","Tramp ant","Valentine ant","Velvet ant","Vespid wasp","Weevil parasitoid","Western harvester ant","Western paper wasp","Western thatching ant","Western yellowjacket","White-horned horntail","Willow shoot sawfly","Woodwasp","Wool sower gall maker","Yellow Crazy Ant","Yellow and black potter wasp","Yellow-horned horntail"];var y=["Asiatic Lion","Barbary Lion","Cape lion","Masai Lion","Northeast Congo Lion","Transvaal lion","West African Lion"];var p$1=["American","American Chinchilla","American Fuzzy Lop","American Sable","Argente Brun","Belgian Hare","Beveren","Blanc de Hotot","Britannia Petite","Californian","Champagne D\u2019Argent","Checkered Giant","Cinnamon","Cr\xE8me D\u2019Argent","Dutch","Dwarf Hotot","English Angora","English Lop","English Spot","Flemish Giant","Florida White","French Angora","French Lop","Giant Angora","Giant Chinchilla","Harlequin","Havana","Himalayan","Holland Lop","Jersey Wooly","Lilac","Lionhead","Mini Lop","Mini Rex","Mini Satin","Netherland Dwarf","New Zealand","Palomino","Polish","Rex","Rhinelander","Satin","Satin Angora","Silver","Silver Fox","Silver Marten","Standard Chinchilla","Tan","Thrianta"];var g=["Abrocoma","Abrocoma schistacea","Aconaemys","Aconaemys porteri","African brush-tailed porcupine","Andean mountain cavy","Argentine tuco-tuco","Ashy chinchilla rat","Asiatic brush-tailed porcupine","Atherurus","Azara's agouti","Azara's tuco-tuco","Bahia porcupine","Bathyergus","Bathyergus janetta","Bathyergus suillus","Bennett's chinchilla rat","Bicolored-spined porcupine","Black agouti","Black dwarf porcupine","Black-rumped agouti","Black-tailed hairy dwarf porcupine","Bolivian chinchilla rat","Bolivian tuco-tuco","Bonetto's tuco-tuco","Brandt's yellow-toothed cavy","Brazilian guinea pig","Brazilian porcupine","Brazilian tuco-tuco","Bridge's degu","Brown hairy dwarf porcupine","Budin's chinchilla rat, A. budini","Cape porcupine","Catamarca tuco-tuco","Cavia","Central American agouti","Chacoan tuco-tuco","Chilean rock rat","Chinchilla","Coendou","Coiban agouti","Colburn's tuco-tuco","Collared tuco-tuco","Common degu","Common yellow-toothed cavy","Conover's tuco-tuco","Coruro","Crested agouti","Crested porcupine","Cryptomys","Cryptomys bocagei","Cryptomys damarensis","Cryptomys foxi","Cryptomys hottentotus","Cryptomys mechowi","Cryptomys ochraceocinereus","Cryptomys zechi","Ctenomys","Cuniculus","Cuscomys","Cuscomys ashanika","Dactylomys","Dactylomys boliviensis","Dactylomys dactylinus","Dactylomys peruanus","Dasyprocta","Domestic guinea pig","Emily's tuco-tuco","Erethizon","Famatina chinchilla rat","Frosted hairy dwarf porcupine","Fukomys","Fukomys amatus","Fukomys anselli","Fukomys bocagei","Fukomys damarensis","Fukomys darlingi","Fukomys foxi","Fukomys ilariae","Fukomys kafuensis","Fukomys mechowii","Fukomys micklemi","Fukomys occlusus","Fukomys ochraceocinereus","Fukomys whytei","Fukomys zechi","Furtive tuco-tuco","Galea","Georychus","Georychus capensis","Golden viscacha-rat","Goya tuco-tuco","Greater guinea pig","Green acouchi","Haig's tuco-tuco","Heliophobius","Heliophobius argenteocinereus","Heterocephalus","Heterocephalus glaber","Highland tuco-tuco","Hystrix","Indian porcupine","Isla Mocha degu","Kalinowski agouti","Kannabateomys","Kannabateomys amblyonyx","Lagidium","Lagostomus","Lewis' tuco-tuco","Long-tailed chinchilla","Long-tailed porcupine","Los Chalchaleros' viscacha-rat","Lowland paca","Magellanic tuco-tuco","Malayan porcupine","Maule tuco-tuco","Mendoza tuco-tuco","Mexican agouti","Mexican hairy dwarf porcupine","Microcavia","Montane guinea pig","Moon-toothed degu","Mottled tuco-tuco","Mountain degu","Mountain paca","Mountain viscacha-rat","Myoprocta","Natterer's tuco-tuco","North American porcupine","Northern viscacha","Octodon","Octodontomys","Octomys","Olallamys","Olallamys albicauda","Olallamys edax","Orinoco agouti","Paraguaian hairy dwarf porcupine","Pearson's tuco-tuco","Peruvian tuco-tuco","Philippine porcupine","Pipanacoctomys","Plains viscacha","Plains viscacha-rat","Porteous' tuco-tuco","Punta de Vacas chinchilla rat","Red acouchi","Red-rumped agouti","Reddish tuco-tuco","Rio Negro tuco-tuco","Robust tuco-tuco","Roosmalen's dwarf porcupine","Rothschild's porcupine","Ruatan Island agouti","Sage's rock rat","Salinoctomys","Salta tuco-tuco","San Luis tuco-tuco","Santa Catarina's guinea pig","Shiny guinea pig","Shipton's mountain cavy","Short-tailed chinchilla","Silky tuco-tuco","Social tuco-tuco","Southern mountain cavy","Southern tuco-tuco","Southern viscacha","Spalacopus","Spix's yellow-toothed cavy","Steinbach's tuco-tuco","Streaked dwarf porcupine","Strong tuco-tuco","Stump-tailed porcupine","Sumatran porcupine","Sunda porcupine","Talas tuco-tuco","Tawny tuco-tuco","Thick-spined porcupine","Tiny tuco-tuco","Trichys","Tucuman tuco-tuco","Tympanoctomys","Uspallata chinchilla rat","White-toothed tuco-tuco","Wolffsohn's viscacha"];var b=["Abaco Island boa","Aesculapian snake","African beaked snake","African puff adder","African rock python","African twig snake","African wolf snake","Amazon tree boa","Amazonian palm viper","American Vine Snake","American copperhead","Amethystine python","Anaconda","Andaman cat snake","Andaman cobra","Angolan python","Annulated sea snake","Arabian cobra","Arafura file snake","Arizona black rattlesnake","Arizona coral snake","Aruba rattlesnake","Asian Vine Snake, Whip Snake","Asian cobra","Asian keelback","Asian pipe snake","Asp","Asp viper","Assam keelback","Australian copperhead","Australian scrub python","Baird's rat snake","Baja California lyresnake","Ball Python","Ball python","Bamboo pitviper","Bamboo viper","Banded Flying Snake","Banded cat-eyed snake","Banded krait","Banded pitviper","Banded water cobra","Barbour's pit viper","Barred wolf snake","Beaked sea snake","Beauty rat snake","Beddome's cat snake","Beddome's coral snake","Bimini racer","Bird snake","Bismarck ringed python","Black headed python","Black krait","Black mamba","Black rat snake","Black snake","Black tree cobra","Black-banded trinket snake","Black-headed snake","Black-necked cobra","Black-necked spitting cobra","Black-speckled palm-pitviper","Black-striped keelback","Black-tailed horned pit viper","Blanding's tree snake","Blind snake","Blonde hognose snake","Blood python","Blue krait","Blunt-headed tree snake","Bluntnose viper","Boa","Boa constrictor","Bocourt's water snake","Boelen python","Boiga","Bolivian anaconda","Boomslang","Bornean pitviper","Borneo short-tailed python","Brahminy blind snake","Brazilian coral snake","Brazilian mud Viper","Brazilian smooth snake","Bredl's python","Brongersma's pitviper","Brown snake","Brown spotted pitviper[4]","Brown tree snake","Brown water python","Brown white-lipped python","Buff striped keelback","Bull snake","Burmese keelback","Burmese krait","Burmese python","Burrowing cobra","Burrowing viper","Bush viper","Bushmaster","Buttermilk racer","Calabar python","California kingsnake","Canebrake","Cantil","Cantor's pitviper","Cape cobra","Cape coral snake","Cape gopher snake","Carpet viper","Cascabel","Caspian cobra","Cat snake","Cat-eyed night snake","Cat-eyed snake","Central American lyre snake","Central ranges taipan","Centralian carpet python","Ceylon krait","Chappell Island tiger snake","Checkered garter snake","Checkered keelback","Chicken snake","Chihuahuan ridge-nosed rattlesnake","Children's python","Chinese tree viper","Coachwhip snake","Coastal carpet python","Coastal taipan","Cobra","Collett's snake","Colorado desert sidewinder","Common adder","Common cobra","Common garter snake","Common ground snake","Common keelback","Common lancehead","Common tiger snake","Common worm snake","Congo snake","Congo water cobra","Copperhead","Coral snake","Corn snake","Coronado Island rattlesnake","Cottonmouth","Crossed viper","Crowned snake","Cuban boa","Cuban wood snake","Cyclades blunt-nosed viper","Dauan Island water python","De Schauensee's anaconda","Death Adder","Desert death adder","Desert kingsnake","Desert woma python","Diamond python","Dog-toothed cat snake","Down's tiger snake","Dubois's sea snake","Dumeril's boa","Durango rock rattlesnake","Dusky pigmy rattlesnake","Dusty hognose snake","Dwarf beaked snake","Dwarf boa","Dwarf pipe snake","Dwarf sand adder","Eastern brown snake","Eastern coral snake","Eastern diamondback rattlesnake","Eastern green mamba","Eastern hognose snake","Eastern lyre snake","Eastern mud snake","Eastern racer","Eastern tiger snake","Eastern water cobra","Eastern yellowbelly sad racer","Egg-eater","Egyptian asp","Egyptian cobra","Elegant pitviper","Emerald tree boa","Equatorial spitting cobra","European asp","European smooth snake","Eyelash palm-pitviper","Eyelash pit viper","Eyelash viper","False cobra","False horned viper","False water cobra","Fan-Si-Pan horned pitviper","Fea's viper","Fer-de-lance","Fierce snake","Fifty pacer","Fishing snake","Flat-nosed pitviper","Flinders python","Flying snake","Forest cobra","Forest flame snake","Forsten's cat snake","Fox snake, three species of Pantherophis","Gaboon viper","Garter snake","Giant Malagasy hognose snake","Godman's pit viper","Gold tree cobra","Gold-ringed cat snake","Golden tree snake","Grand Canyon rattlesnake","Grass snake","Gray cat snake","Great Basin rattlesnake","Great Lakes bush viper","Great Plains rat snake","Green anaconda","Green cat-eyed snake","Green mamba","Green palm viper","Green rat snake","Green snake","Green tree pit viper","Green tree python","Grey Lora","Grey-banded kingsnake","Ground snake","Guatemalan palm viper","Guatemalan tree viper","Habu","Habu pit viper","Hagen's pitviper","Hairy bush viper","Halmahera python","Hardwicke's sea snake","Harlequin coral snake","High Woods coral snake","Hill keelback","Himalayan keelback","Hogg Island boa","Hognose snake","Hognosed viper","Honduran palm viper","Hook Nosed Sea Snake","Hopi rattlesnake","Horned adder","Horned desert viper","Horned viper","Horseshoe pitviper","Hundred pacer","Hutton's tree viper","Ikaheka snake","Indian cobra","Indian flying snake","Indian krait","Indian python","Indian tree viper","Indigo snake","Indochinese spitting cobra","Indonesian water python","Inland carpet python","Inland taipan","Jamaican Tree Snake","Jamaican boa","Jan's hognose snake","Japanese forest rat snake","Japanese rat snake","Japanese striped snake","Javan spitting cobra","Jerdon's pitviper","Jumping viper","Jungle carpet python","Kanburian pit viper","Kaulback's lance-headed pitviper","Kayaudi dwarf reticulated python","Kaznakov's viper","Keelback","Kham Plateau pitviper","Khasi Hills keelback","King Island tiger snake","King brown","King cobra","King rat snake","King snake","Krait","Krefft's tiger snake","Lance-headed rattlesnake","Lancehead","Large shield snake","Large-eyed pitviper","Large-scaled tree viper","Leaf viper","Leaf-nosed viper","Lesser black krait","Levant viper","Long-nosed adder","Long-nosed tree snake","Long-nosed viper","Long-nosed whip snake","Long-tailed rattlesnake","Longnosed worm snake","Lora","Lyre snake","Machete savane","Macklot's python","Madagascar ground boa","Madagascar tree boa","Malabar rock pitviper","Malayan krait","Malayan long-glanded coral snake","Malayan pit viper","Malcolm's tree viper","Mamba","Mamushi","Manchurian Black Water Snake","Mandalay cobra","Mandarin rat snake","Mangrove pit viper","Mangrove snake","Mangshan pitviper","Many-banded krait","Many-banded tree snake","Many-horned adder","Many-spotted cat snake","Massasauga rattlesnake","McMahon's viper","Mexican black kingsnake","Mexican green rattlesnake","Mexican hognose snake","Mexican palm-pitviper","Mexican parrot snake","Mexican racer","Mexican vine snake","Mexican west coast rattlesnake","Midget faded rattlesnake","Milk snake","Moccasin snake","Modest keelback","Mojave desert sidewinder","Mojave rattlesnake","Mole viper","Mollucan python","Moluccan flying snake","Montpellier snake","Motuo bamboo pitviper","Mountain adder","Mozambique spitting cobra","Mud adder","Mud snake","Mussurana","Namaqua dwarf adder","Namib dwarf sand adder","Narrowhead Garter Snake","New Guinea carpet python","Nichell snake","Nicobar Island keelback","Nicobar bamboo pitviper","Night snake","Nightingale adder","Nilgiri keelback","Nitsche's bush viper","Nitsche's tree viper","North Philippine cobra","North eastern king snake","Northeastern hill krait","Northern black-tailed rattlesnake","Northern tree snake","Northern water snake","Northern white-lipped python","Northwestern carpet python","Nose-horned viper","Nubian spitting cobra","Oaxacan small-headed rattlesnake","Oenpelli python","Olive python","Olive sea snake","Orange-collared keelback","Ornate flying snake","Palestine viper","Pallas' viper","Palm viper","Papuan python","Paradise flying snake","Parrot snake","Patchnose snake","Paupan taipan","Pelagic sea snake","Peninsula tiger snake","Peringuey's adder","Perrotet's shieldtail snake","Persian rat snake","Philippine cobra","Philippine pitviper","Pine snake","Pipe snake","Pit viper","Pointed-scaled pit viper[5]","Pope's tree viper","Portuguese viper","Prairie kingsnake","Puerto Rican boa","Puff adder","Pygmy python","Python","Queen snake","Racer","Raddysnake","Rainbow boa","Rat snake","Rattler","Rattlesnake","Red blood python","Red diamond rattlesnake","Red spitting cobra","Red-backed rat snake","Red-bellied black snake","Red-headed krait","Red-necked keelback","Red-tailed bamboo pitviper","Red-tailed boa","Red-tailed pipe snake","Reticulated python","Rhinoceros viper","Rhombic night adder","Ribbon snake","Rinkhals","Rinkhals cobra","River jack","Rosy boa","Rough green snake","Rough-scaled bush viper","Rough-scaled python","Rough-scaled tree viper","Royal python","Rubber boa","Rufous beaked snake","Rungwe tree viper","San Francisco garter snake","Sand adder","Sand boa","Savu python","Saw-scaled viper","Scarlet kingsnake","Schlegel's viper","Schultze's pitviper","Sea snake","Sedge viper","Selayer reticulated python","Sharp-nosed viper","Shield-nosed cobra","Shield-tailed snake","Siamese palm viper","Side-striped palm-pitviper","Sidewinder","Sikkim keelback","Sinai desert cobra","Sind krait","Small-eyed snake","Smooth green snake","Smooth snake","Snorkel viper","Snouted cobra","Sonoran sidewinder","South American hognose snake","South eastern corn snake","Southern Indonesian spitting cobra","Southern Pacific rattlesnake","Southern Philippine cobra","Southern black racer","Southern white-lipped python","Southwestern black spitting cobra","Southwestern blackhead snake","Southwestern carpet python","Southwestern speckled rattlesnake","Speckle-bellied keelback","Speckled kingsnake","Spectacled cobra","Spiny bush viper","Spitting cobra","Spotted python","Sri Lankan pit viper","Stejneger's bamboo pitviper","Stiletto snake","Stimson's python","Stoke's sea snake","Storm water cobra","Striped snake","Sumatran short-tailed python","Sumatran tree viper","Sunbeam snake","Taipan","Taiwan cobra","Tan racer","Tancitaran dusky rattlesnake","Tanimbar python","Tasmanian tiger snake","Tawny cat snake","Temple pit viper","Temple viper","Tentacled snake","Texas Coral Snake","Texas blind snake","Texas garter snake","Texas lyre snake","Texas night snake","Thai cobra","Three-lined ground snake","Tibetan bamboo pitviper","Tic polonga","Tiger pit viper","Tiger rattlesnake","Tiger snake","Tigre snake","Timber rattlesnake","Timor python","Titanboa","Tree boa","Tree snake","Tree viper","Trinket snake","Tropical rattlesnake","Twig snake","Twin Headed King Snake","Twin-Barred tree snake","Twin-spotted rat snake","Twin-spotted rattlesnake","Undulated pit viper","Uracoan rattlesnake","Ursini's viper","Urutu","Vine snake","Viper","Viper Adder","Vipera ammodytes","Wagler's pit viper","Wart snake","Water adder","Water moccasin","Water snake","West Indian racer","Western blind snake","Western carpet python","Western coral snake","Western diamondback rattlesnake","Western green mamba","Western ground snake","Western hog-nosed viper","Western mud snake","Western tiger snake","Western woma python","Wetar Island python","Whip snake","White-lipped keelback","White-lipped python","White-lipped tree viper","Wirot's pit viper","Wolf snake","Woma python","Worm snake","Wutu","Wynaad keelback","Yarara","Yellow anaconda","Yellow-banded sea snake","Yellow-bellied sea snake","Yellow-lined palm viper","Yellow-lipped sea snake","Yellow-striped rat snake","Yunnan keelback","Zebra snake","Zebra spitting cobra"];var S=["bat","bear","bee","bird","butterfly","cat","cow","crocodile","deer","dog","dolphin","eagle","elephant","fish","flamingo","fox","frog","gecko","giraffe","gorilla","hamster","hippopotamus","horse","kangaroo","koala","lion","monkey","ostrich","panda","parrot","peacock","penguin","polar bear","rabbit","rhinoceros","sea lion","shark","snake","squirrel","tiger","turtle","whale","wolf","zebra"];var Ia={bear:n,bird:i,cat:t,cetacean:l,cow:s,crocodilia:d,dog:u,fish:c,horse:m$1,insect:h,lion:y,rabbit:p$1,rodent:g,snake:b,type:S},k=Ia;var C$1=["{{person.name}}","{{company.name}}"];var f$1=["Redhold","Treeflex","Trippledex","Kanlam","Bigtax","Daltfresh","Toughjoyfax","Mat Lam Tam","Otcom","Tres-Zap","Y-Solowarm","Tresom","Voltsillam","Biodex","Greenlam","Viva","Matsoft","Temp","Zoolab","Subin","Rank","Job","Stringtough","Tin","It","Home Ing","Zamit","Sonsing","Konklab","Alpha","Latlux","Voyatouch","Alphazap","Holdlamis","Zaam-Dox","Sub-Ex","Quo Lux","Bamity","Ventosanzap","Lotstring","Hatity","Tempsoft","Overhold","Fixflex","Konklux","Zontrax","Tampflex","Span","Namfix","Transcof","Stim","Fix San","Sonair","Stronghold","Fintone","Y-find","Opela","Lotlux","Ronstring","Zathin","Duobam","Keylex"];var v$1=["0.#.#","0.##","#.##","#.#","#.#.#"];var Ka={author:C$1,name:f$1,version:v$1},A=Ka;var B$1=["###-###-####","(###) ###-####","1-###-###-####","###.###.####"];var Oa={formats:B$1},w$1=Oa;var M$1=["azure","black","blue","cyan","fuchsia","gold","green","grey","indigo","ivory","lavender","lime","magenta","maroon","mint green","olive","orange","orchid","pink","plum","purple","red","salmon","silver","sky blue","tan","teal","turquoise","violet","white","yellow"];var xa={human:M$1},T=xa;var L$1=["Automotive","Baby","Beauty","Books","Clothing","Computers","Electronics","Games","Garden","Grocery","Health","Home","Industrial","Jewelry","Kids","Movies","Music","Outdoors","Shoes","Sports","Tools","Toys"];var D$1=["Andy shoes are designed to keeping in mind durability as well as trends, the most stylish range of shoes & sandals","Boston's most advanced compression wear technology increases muscle oxygenation, stabilizes active muscles","Carbonite web goalkeeper gloves are ergonomically designed to give easy fit","Ergonomic executive chair upholstered in bonded black leather and PVC padded seat and back for all-day comfort and support","New ABC 13 9370, 13.3, 5th Gen CoreA5-8250U, 8GB RAM, 256GB SSD, power UHD Graphics, OS 10 Home, OS Office A & J 2016","New range of formal shirts are designed keeping you in mind. With fits and styling that will make you stand apart","The Apollotech B340 is an affordable wireless mouse with reliable connectivity, 12 months battery life and modern design","The Football Is Good For Training And Recreational Purposes","The Nagasaki Lander is the trademarked name of several series of Nagasaki sport bikes, that started with the 1984 ABC800J","The automobile layout consists of a front-engine design, with transaxle-type transmissions mounted at the rear of the engine and four wheel drive","The beautiful range of Apple Natural\xE9 that has an exciting mix of natural ingredients. With the Goodness of 100% Natural Ingredients","The slim & simple Maple Gaming Keyboard from Dev Byte comes with a sleek body and 7- Color RGB LED Back-lighting for smart functionality"];var R$1={adjective:["Awesome","Bespoke","Electronic","Elegant","Ergonomic","Fantastic","Generic","Gorgeous","Handcrafted","Handmade","Incredible","Intelligent","Licensed","Luxurious","Modern","Oriental","Practical","Recycled","Refined","Rustic","Sleek","Small","Tasty","Unbranded"],material:["Bronze","Concrete","Cotton","Fresh","Frozen","Granite","Metal","Plastic","Rubber","Soft","Steel","Wooden"],product:["Bacon","Ball","Bike","Car","Chair","Cheese","Chicken","Chips","Computer","Fish","Gloves","Hat","Keyboard","Mouse","Pants","Pizza","Salad","Sausages","Shirt","Shoes","Soap","Table","Towels","Tuna"]};var za={department:L$1,product_description:D$1,product_name:R$1},H$1=za;var P=["Adaptive","Advanced","Ameliorated","Assimilated","Automated","Balanced","Business-focused","Centralized","Cloned","Compatible","Configurable","Cross-group","Cross-platform","Customer-focused","Customizable","De-engineered","Decentralized","Devolved","Digitized","Distributed","Diverse","Down-sized","Enhanced","Enterprise-wide","Ergonomic","Exclusive","Expanded","Extended","Face to face","Focused","Front-line","Fully-configurable","Function-based","Fundamental","Future-proofed","Grass-roots","Horizontal","Implemented","Innovative","Integrated","Intuitive","Inverse","Managed","Mandatory","Monitored","Multi-channelled","Multi-lateral","Multi-layered","Multi-tiered","Networked","Object-based","Open-architected","Open-source","Operative","Optimized","Optional","Organic","Organized","Persevering","Persistent","Phased","Polarised","Pre-emptive","Proactive","Profit-focused","Profound","Programmable","Progressive","Public-key","Quality-focused","Re-contextualized","Re-engineered","Reactive","Realigned","Reduced","Reverse-engineered","Right-sized","Robust","Seamless","Secured","Self-enabling","Sharable","Stand-alone","Streamlined","Switchable","Synchronised","Synergistic","Synergized","Team-oriented","Total","Triple-buffered","Universal","Up-sized","Upgradable","User-centric","User-friendly","Versatile","Virtual","Vision-oriented","Visionary"];var W$1=["24/365","24/7","B2B","B2C","back-end","best-of-breed","bleeding-edge","bricks-and-clicks","clicks-and-mortar","collaborative","compelling","cross-media","cross-platform","customized","cutting-edge","distributed","dot-com","dynamic","e-business","efficient","end-to-end","enterprise","extensible","frictionless","front-end","global","granular","holistic","impactful","innovative","integrated","interactive","intuitive","killer","leading-edge","magnetic","mission-critical","next-generation","one-to-one","open-source","out-of-the-box","plug-and-play","proactive","real-time","revolutionary","rich","robust","scalable","seamless","sexy","sticky","strategic","synergistic","transparent","turn-key","ubiquitous","user-centric","value-added","vertical","viral","virtual","visionary","web-enabled","wireless","world-class"];var G$1=["ROI","action-items","applications","architectures","bandwidth","blockchains","channels","communities","content","convergence","deliverables","e-business","e-commerce","e-markets","experiences","eyeballs","functionalities","infrastructures","initiatives","interfaces","lifetime value","markets","methodologies","metrics","mindshare","models","networks","niches","paradigms","partnerships","platforms","portals","relationships","schemas","solutions","supply-chains","synergies","systems","technologies","users","web services"];var N$1=["aggregate","architect","benchmark","brand","cultivate","deliver","deploy","disintermediate","drive","e-enable","embrace","empower","enable","engage","engineer","enhance","envisioneer","evolve","expedite","exploit","extend","facilitate","generate","grow","harness","implement","incentivize","incubate","innovate","integrate","iterate","leverage","matrix","maximize","mesh","monetize","morph","optimize","orchestrate","productize","recontextualize","redefine","reintermediate","reinvent","repurpose","revolutionize","scale","seize","strategize","streamline","syndicate","synergize","synthesize","target","transform","transition","unleash","utilize","visualize","whiteboard"];var E$1=["24 hour","24/7","3rd generation","4th generation","5th generation","6th generation","actuating","analyzing","asymmetric","asynchronous","attitude-oriented","background","bandwidth-monitored","bi-directional","bifurcated","bottom-line","clear-thinking","client-driven","client-server","coherent","cohesive","composite","content-based","context-sensitive","contextually-based","dedicated","demand-driven","didactic","directional","discrete","disintermediate","dynamic","eco-centric","empowering","encompassing","even-keeled","executive","explicit","exuding","fault-tolerant","foreground","fresh-thinking","full-range","global","grid-enabled","heuristic","high-level","holistic","homogeneous","human-resource","hybrid","impactful","incremental","intangible","interactive","intermediate","leading edge","local","logistical","maximized","methodical","mission-critical","mobile","modular","motivating","multi-state","multi-tasking","multimedia","national","needs-based","neutral","next generation","non-volatile","object-oriented","optimal","optimizing","radical","real-time","reciprocal","regional","responsive","scalable","secondary","solution-oriented","stable","static","system-worthy","systematic","systemic","tangible","tertiary","transitional","uniform","upward-trending","user-facing","value-added","web-enabled","well-modulated","zero administration","zero defect","zero tolerance"];var F$1=["Group","Inc","LLC","and Sons"];var J$1=["{{person.last_name.generic}} - {{person.last_name.generic}}","{{person.last_name.generic}} {{company.legal_entity_type}}","{{person.last_name.generic}}, {{person.last_name.generic}} and {{person.last_name.generic}}"];var I$1=["Graphic Interface","Graphical User Interface","ability","access","adapter","algorithm","alliance","analyzer","application","approach","architecture","archive","array","artificial intelligence","attitude","benchmark","budgetary management","capability","capacity","challenge","circuit","collaboration","complexity","concept","conglomeration","contingency","core","customer loyalty","data-warehouse","database","definition","emulation","encoding","encryption","extranet","firmware","flexibility","focus group","forecast","frame","framework","function","functionalities","groupware","hardware","help-desk","hierarchy","hub","implementation","info-mediaries","infrastructure","initiative","installation","instruction set","interface","internet solution","intranet","knowledge base","knowledge user","leverage","local area network","matrices","matrix","methodology","middleware","migration","model","moderator","monitoring","moratorium","neural-net","open architecture","open system","orchestration","paradigm","parallelism","policy","portal","pricing structure","process improvement","product","productivity","project","projection","protocol","secured line","service-desk","software","solution","standardization","strategy","structure","success","superstructure","support","synergy","system engine","task-force","throughput","time-frame","toolset","utilisation","website","workforce"];var Va={adjective:P,buzz_adjective:W$1,buzz_noun:G$1,buzz_verb:N$1,descriptor:E$1,legal_entity_type:F$1,name_pattern:J$1,noun:I$1},K$1=Va;var O$1=["avatar","category","comment","createdAt","email","group","id","name","password","phone","status","title","token","updatedAt"];var Ya={column:O$1},x$1=Ya;var z$1={wide:["April","August","December","February","January","July","June","March","May","November","October","September"],abbr:["Apr","Aug","Dec","Feb","Jan","Jul","Jun","Mar","May","Nov","Oct","Sep"]};var V$1={wide:["Friday","Monday","Saturday","Sunday","Thursday","Tuesday","Wednesday"],abbr:["Fri","Mon","Sat","Sun","Thu","Tue","Wed"]};var ja={month:z$1,weekday:V$1},Y$1=ja;var j$1=["Auto Loan","Checking","Credit Card","Home Loan","Investment","Money Market","Personal Loan","Savings"];var q$1=["34##-######-####L","37##-######-####L"];var U$1=["30[0-5]#-######-###L","36##-######-###L","54##-####-####-###L"];var Z$1=["6011-####-####-###L","6011-62##-####-####-###L","64[4-9]#-####-####-###L","64[4-9]#-62##-####-####-###L","65##-####-####-###L","65##-62##-####-####-###L"];var _$1=["3528-####-####-###L","3529-####-####-###L","35[3-8]#-####-####-###L"];var Q$1=["2[221-720]-####-####-###L","5[1-5]##-####-####-###L"];var X$1=["4###########L","4###-####-####-###L"];var qa={american_express:q$1,diners_club:U$1,discover:Z$1,jcb:_$1,mastercard:Q$1,visa:X$1},$$1=qa;var ee$1=[{name:"UAE Dirham",code:"AED",symbol:""},{name:"Afghani",code:"AFN",symbol:"\u060B"},{name:"Lek",code:"ALL",symbol:"Lek"},{name:"Armenian Dram",code:"AMD",symbol:""},{name:"Netherlands Antillian Guilder",code:"ANG",symbol:"\u0192"},{name:"Kwanza",code:"AOA",symbol:""},{name:"Argentine Peso",code:"ARS",symbol:"$"},{name:"Australian Dollar",code:"AUD",symbol:"$"},{name:"Aruban Guilder",code:"AWG",symbol:"\u0192"},{name:"Azerbaijanian Manat",code:"AZN",symbol:"\u043C\u0430\u043D"},{name:"Convertible Marks",code:"BAM",symbol:"KM"},{name:"Barbados Dollar",code:"BBD",symbol:"$"},{name:"Taka",code:"BDT",symbol:""},{name:"Bulgarian Lev",code:"BGN",symbol:"\u043B\u0432"},{name:"Bahraini Dinar",code:"BHD",symbol:""},{name:"Burundi Franc",code:"BIF",symbol:""},{name:"Bermudian Dollar (customarily known as Bermuda Dollar)",code:"BMD",symbol:"$"},{name:"Brunei Dollar",code:"BND",symbol:"$"},{name:"Boliviano boliviano",code:"BOB",symbol:"Bs"},{name:"Brazilian Real",code:"BRL",symbol:"R$"},{name:"Bahamian Dollar",code:"BSD",symbol:"$"},{name:"Pula",code:"BWP",symbol:"P"},{name:"Belarusian Ruble",code:"BYN",symbol:"Rbl"},{name:"Belize Dollar",code:"BZD",symbol:"BZ$"},{name:"Canadian Dollar",code:"CAD",symbol:"$"},{name:"Congolese Franc",code:"CDF",symbol:""},{name:"Swiss Franc",code:"CHF",symbol:"CHF"},{name:"Chilean Peso",code:"CLP",symbol:"$"},{name:"Yuan Renminbi",code:"CNY",symbol:"\xA5"},{name:"Colombian Peso",code:"COP",symbol:"$"},{name:"Costa Rican Colon",code:"CRC",symbol:"\u20A1"},{name:"Cuban Peso",code:"CUP",symbol:"\u20B1"},{name:"Cape Verde Escudo",code:"CVE",symbol:""},{name:"Czech Koruna",code:"CZK",symbol:"K\u010D"},{name:"Djibouti Franc",code:"DJF",symbol:""},{name:"Danish Krone",code:"DKK",symbol:"kr"},{name:"Dominican Peso",code:"DOP",symbol:"RD$"},{name:"Algerian Dinar",code:"DZD",symbol:""},{name:"Egyptian Pound",code:"EGP",symbol:"\xA3"},{name:"Nakfa",code:"ERN",symbol:""},{name:"Ethiopian Birr",code:"ETB",symbol:""},{name:"Euro",code:"EUR",symbol:"\u20AC"},{name:"Fiji Dollar",code:"FJD",symbol:"$"},{name:"Falkland Islands Pound",code:"FKP",symbol:"\xA3"},{name:"Pound Sterling",code:"GBP",symbol:"\xA3"},{name:"Lari",code:"GEL",symbol:""},{name:"Cedi",code:"GHS",symbol:""},{name:"Gibraltar Pound",code:"GIP",symbol:"\xA3"},{name:"Dalasi",code:"GMD",symbol:""},{name:"Guinea Franc",code:"GNF",symbol:""},{name:"Quetzal",code:"GTQ",symbol:"Q"},{name:"Guyana Dollar",code:"GYD",symbol:"$"},{name:"Hong Kong Dollar",code:"HKD",symbol:"$"},{name:"Lempira",code:"HNL",symbol:"L"},{name:"Gourde",code:"HTG",symbol:""},{name:"Forint",code:"HUF",symbol:"Ft"},{name:"Rupiah",code:"IDR",symbol:"Rp"},{name:"New Israeli Sheqel",code:"ILS",symbol:"\u20AA"},{name:"Bhutanese Ngultrum",code:"BTN",symbol:"Nu"},{name:"Indian Rupee",code:"INR",symbol:"\u20B9"},{name:"Iraqi Dinar",code:"IQD",symbol:""},{name:"Iranian Rial",code:"IRR",symbol:"\uFDFC"},{name:"Iceland Krona",code:"ISK",symbol:"kr"},{name:"Jamaican Dollar",code:"JMD",symbol:"J$"},{name:"Jordanian Dinar",code:"JOD",symbol:""},{name:"Yen",code:"JPY",symbol:"\xA5"},{name:"Kenyan Shilling",code:"KES",symbol:""},{name:"Som",code:"KGS",symbol:"\u043B\u0432"},{name:"Riel",code:"KHR",symbol:"\u17DB"},{name:"Comoro Franc",code:"KMF",symbol:""},{name:"North Korean Won",code:"KPW",symbol:"\u20A9"},{name:"Won",code:"KRW",symbol:"\u20A9"},{name:"Kuwaiti Dinar",code:"KWD",symbol:""},{name:"Cayman Islands Dollar",code:"KYD",symbol:"$"},{name:"Tenge",code:"KZT",symbol:"\u043B\u0432"},{name:"Kip",code:"LAK",symbol:"\u20AD"},{name:"Lebanese Pound",code:"LBP",symbol:"\xA3"},{name:"Sri Lanka Rupee",code:"LKR",symbol:"\u20A8"},{name:"Liberian Dollar",code:"LRD",symbol:"$"},{name:"Libyan Dinar",code:"LYD",symbol:""},{name:"Moroccan Dirham",code:"MAD",symbol:""},{name:"Moldovan Leu",code:"MDL",symbol:""},{name:"Malagasy Ariary",code:"MGA",symbol:""},{name:"Denar",code:"MKD",symbol:"\u0434\u0435\u043D"},{name:"Kyat",code:"MMK",symbol:""},{name:"Tugrik",code:"MNT",symbol:"\u20AE"},{name:"Pataca",code:"MOP",symbol:""},{name:"Ouguiya",code:"MRU",symbol:""},{name:"Mauritius Rupee",code:"MUR",symbol:"\u20A8"},{name:"Rufiyaa",code:"MVR",symbol:""},{name:"Kwacha",code:"MWK",symbol:""},{name:"Mexican Peso",code:"MXN",symbol:"$"},{name:"Malaysian Ringgit",code:"MYR",symbol:"RM"},{name:"Metical",code:"MZN",symbol:"MT"},{name:"Naira",code:"NGN",symbol:"\u20A6"},{name:"Cordoba Oro",code:"NIO",symbol:"C$"},{name:"Norwegian Krone",code:"NOK",symbol:"kr"},{name:"Nepalese Rupee",code:"NPR",symbol:"\u20A8"},{name:"New Zealand Dollar",code:"NZD",symbol:"$"},{name:"Rial Omani",code:"OMR",symbol:"\uFDFC"},{name:"Balboa",code:"PAB",symbol:"B/."},{name:"Nuevo Sol",code:"PEN",symbol:"S/."},{name:"Kina",code:"PGK",symbol:""},{name:"Philippine Peso",code:"PHP",symbol:"Php"},{name:"Pakistan Rupee",code:"PKR",symbol:"\u20A8"},{name:"Zloty",code:"PLN",symbol:"z\u0142"},{name:"Guarani",code:"PYG",symbol:"Gs"},{name:"Qatari Rial",code:"QAR",symbol:"\uFDFC"},{name:"New Leu",code:"RON",symbol:"lei"},{name:"Serbian Dinar",code:"RSD",symbol:"\u0414\u0438\u043D."},{name:"Russian Ruble",code:"RUB",symbol:"\u0440\u0443\u0431"},{name:"Rwanda Franc",code:"RWF",symbol:""},{name:"Saudi Riyal",code:"SAR",symbol:"\uFDFC"},{name:"Solomon Islands Dollar",code:"SBD",symbol:"$"},{name:"Seychelles Rupee",code:"SCR",symbol:"\u20A8"},{name:"Sudanese Pound",code:"SDG",symbol:""},{name:"Swedish Krona",code:"SEK",symbol:"kr"},{name:"Singapore Dollar",code:"SGD",symbol:"$"},{name:"Saint Helena Pound",code:"SHP",symbol:"\xA3"},{name:"Leone",code:"SLE",symbol:""},{name:"Somali Shilling",code:"SOS",symbol:"S"},{name:"Surinam Dollar",code:"SRD",symbol:"$"},{name:"South Sudanese pound",code:"SSP",symbol:""},{name:"Dobra",code:"STN",symbol:"Db"},{name:"Syrian Pound",code:"SYP",symbol:"\xA3"},{name:"Lilangeni",code:"SZL",symbol:""},{name:"Baht",code:"THB",symbol:"\u0E3F"},{name:"Somoni",code:"TJS",symbol:""},{name:"Manat",code:"TMT",symbol:""},{name:"Tunisian Dinar",code:"TND",symbol:""},{name:"Pa'anga",code:"TOP",symbol:""},{name:"Turkish Lira",code:"TRY",symbol:"\u20BA"},{name:"Trinidad and Tobago Dollar",code:"TTD",symbol:"TT$"},{name:"New Taiwan Dollar",code:"TWD",symbol:"NT$"},{name:"Tanzanian Shilling",code:"TZS",symbol:""},{name:"Hryvnia",code:"UAH",symbol:"\u20B4"},{name:"Uganda Shilling",code:"UGX",symbol:""},{name:"US Dollar",code:"USD",symbol:"$"},{name:"Peso Uruguayo",code:"UYU",symbol:"$U"},{name:"Uzbekistan Sum",code:"UZS",symbol:"\u043B\u0432"},{name:"Venezuelan bol\xEDvar",code:"VES",symbol:"Bs"},{name:"Dong",code:"VND",symbol:"\u20AB"},{name:"Vatu",code:"VUV",symbol:""},{name:"Tala",code:"WST",symbol:""},{name:"CFA Franc BEAC",code:"XAF",symbol:""},{name:"East Caribbean Dollar",code:"XCD",symbol:"$"},{name:"CFA Franc BCEAO",code:"XOF",symbol:""},{name:"CFP Franc",code:"XPF",symbol:""},{name:"Yemeni Rial",code:"YER",symbol:"\uFDFC"},{name:"Rand",code:"ZAR",symbol:"R"},{name:"Lesotho Loti",code:"LSL",symbol:""},{name:"Namibia Dollar",code:"NAD",symbol:"N$"},{name:"Zambian Kwacha",code:"ZMW",symbol:"K"},{name:"Zimbabwe Dollar",code:"ZWL",symbol:""}];var ae$1=["deposit","invoice","payment","withdrawal"];var Ua={account_type:j$1,credit_card:$$1,currency:ee$1,transaction_type:ae$1},oe$1=Ua;var re$1=["bitter","creamy","crispy","crunchy","delicious","fluffy","fresh","golden","juicy","moist","rich","salty","savory","smoky","sour","spicy","sweet","tangy","tender","zesty"];var ne$1=["A classic pie filled with delicious {{food.meat}} and {{food.adjective}} {{food.ingredient}}, baked in a {{food.adjective}} pastry crust and topped with a golden-brown lattice.","A delightful tart combining {{food.adjective}} {{food.vegetable}} and sweet {{food.fruit}}, set in a buttery pastry shell and finished with a hint of {{food.spice}}.","A heartwarming {{food.ethnic_category}} soup, featuring fresh {{food.ingredient}} and an aromatic blend of traditional spices.","A robust {{food.adjective}} stew featuring {{food.ethnic_category}} flavors, loaded with {{food.adjective}} meat, {{food.adjective}} vegetables, and a {{food.adjective}}, {{food.adjective}} broth.","A simple {{food.fruit}} pie. No fancy stuff. Just pie.","A slow-roasted {{animal.bird}} with a {{food.adjective}}, {{food.adjective}} exterior. Stuffed with {{food.fruit}} and covered in {{food.fruit}} sauce. Sides with {{food.vegetable}} puree and wild {{food.vegetable}}.","A special {{color.human}} {{food.ingredient}} from {{location.country}}. To support the strong flavor it is sided with a tablespoon of {{food.spice}}.","A succulent {{food.meat}} steak, encased in a {{food.adjective}} {{food.spice}} crust, served with a side of {{food.spice}} mashed {{food.vegetable}}.","An exquisite {{food.meat}} roast, infused with the essence of {{food.fruit}}, slow-roasted to bring out its natural flavors and served with a side of creamy {{food.vegetable}}","Baked {{food.ingredient}}-stuffed {{food.meat}}, seasoned with {{food.spice}} and {{food.adjective}} herbs, accompanied by roasted {{food.vegetable}} medley.","Crispy fried {{food.meat}} bites, seasoned with {{food.spice}} and served with a tangy {{food.fruit}} dipping sauce.","Fresh mixed greens tossed with {{food.spice}}-rubbed {{food.meat}}, {{food.vegetable}}, and a light dressing.","Fresh {{food.ingredient}} with a pinch of {{food.spice}}, topped by a caramelized {{food.fruit}} with whipped cream","Grilled {{food.meat}} kebabs, marinated in {{food.ethnic_category}} spices and served with a fresh {{food.vegetable}} and {{food.fruit}} salad.","Hearty {{food.ingredient}} and {{food.meat}} stew, slow-cooked with {{food.spice}} and {{food.vegetable}} for a comforting, flavorful meal.","Juicy {{food.meat}}, grilled to your liking and drizzled with a bold {{food.spice}} sauce, served alongside roasted {{food.vegetable}}.","Our {{food.adjective}} {{food.meat}}, slow-cooked to perfection, accompanied by steamed {{food.vegetable}} and a rich, savory gravy.","Tender {{food.meat}} skewers, glazed with a sweet and tangy {{food.fruit}} sauce, served over a bed of fragrant jasmine rice.","Tenderly braised {{food.meat}} in a rich {{food.spice}} and {{food.vegetable}} sauce, served with a side of creamy {{food.vegetable}}.","Three {{food.ingredient}} with {{food.vegetable}}, {{food.vegetable}}, {{food.vegetable}}, {{food.vegetable}} and {{food.ingredient}}. With a side of baked {{food.fruit}}, and your choice of {{food.ingredient}} or {{food.ingredient}}.",'{{number.int({"min":1, "max":99})}}-day aged {{food.meat}} steak, with choice of {{number.int({"min":2, "max":4})}} sides.'];var ie$1=["California maki","Peking duck","Philadelphia maki","arepas","barbecue ribs","bruschette with tomato","bunny chow","caesar salad","caprese salad","cauliflower penne","cheeseburger","chicken fajitas","chicken milanese","chicken parm","chicken wings","chilli con carne","ebiten maki","fettuccine alfredo","fish and chips","french fries with sausages","french toast","hummus","katsu curry","kebab","lasagne","linguine with clams","massaman curry","meatballs with sauce","mushroom risotto","pappardelle alla bolognese","pasta and beans","pasta carbonara","pasta with tomato and basil","pho","pierogi","pizza","poke","pork belly buns","pork sausage roll","poutine","ricotta stuffed ravioli","risotto with seafood","salmon nigiri","scotch eggs","seafood paella","som tam","souvlaki","stinky tofu","sushi","tacos","teriyaki chicken donburi","tiramis\xF9","tuna sashimi","vegetable soup"];var te$1=["{{food.adjective}} {{food.ethnic_category}} stew","{{food.adjective}} {{food.meat}} with {{food.vegetable}}","{{food.ethnic_category}} {{food.ingredient}} soup","{{food.fruit}} and {{food.fruit}} tart","{{food.fruit}} pie","{{food.fruit}}-glazed {{food.meat}} skewers","{{food.fruit}}-infused {{food.meat}} roast","{{food.ingredient}} and {{food.meat}} pie","{{food.ingredient}}-infused {{food.meat}}","{{food.meat}} steak","{{food.meat}} with {{food.fruit}} sauce","{{food.spice}}-crusted {{food.meat}}","{{food.spice}}-rubbed {{food.meat}} salad","{{food.vegetable}} salad","{{person.first_name.generic}}'s special {{food.ingredient}}"];var le$1=["Ainu","Albanian","American","Andhra","Anglo-Indian","Arab","Argentine","Armenian","Assyrian","Awadhi","Azerbaijani","Balochi","Bangladeshi","Bashkir","Belarusian","Bengali","Berber","Brazilian","British","Buddhist","Bulgarian","Cajun","Cantonese","Caribbean","Chechen","Chinese","Chinese Islamic","Circassian","Crimean Tatar","Cypriot","Czech","Danish","Egyptian","English","Eritrean","Estonian","Ethiopian","Filipino","French","Georgian","German","Goan","Goan Catholic","Greek","Gujarati","Hyderabad","Indian","Indian Chinese","Indian Singaporean","Indonesian","Inuit","Irish","Italian","Italian-American","Jamaican","Japanese","Jewish - Israeli","Karnataka","Kazakh","Keralite","Korean","Kurdish","Laotian","Latvian","Lebanese","Lithuanian","Louisiana Creole","Maharashtrian","Malay","Malaysian Chinese","Malaysian Indian","Mangalorean","Mediterranean","Mennonite","Mexican","Mordovian","Mughal","Native American","Nepalese","New Mexican","Odia","Pakistani","Parsi","Pashtun","Pennsylvania Dutch","Peranakan","Persian","Peruvian","Polish","Portuguese","Punjabi","Qu\xE9b\xE9cois","Rajasthani","Romani","Romanian","Russian","Sami","Serbian","Sindhi","Slovak","Slovenian","Somali","South Indian","Soviet","Spanish","Sri Lankan","Taiwanese","Tamil","Tatar","Texan","Thai","Turkish","Udupi","Ukrainian","Vietnamese","Yamal","Zambian","Zanzibari"];var se$1=["apple","apricot","aubergine","avocado","banana","berry","blackberry","blood orange","blueberry","bush tomato","butternut pumpkin","cantaloupe","cavalo","cherry","corella pear","cranberry","cumquat","currant","custard apple","custard apples daikon","date","dragonfruit","dried apricot","elderberry","feijoa","fig","fingerlime","goji berry","grape","grapefruit","guava","honeydew melon","incaberry","jarrahdale pumpkin","juniper berry","kiwi fruit","kiwiberry","lemon","lime","longan","loquat","lychee","mandarin","mango","mangosteen","melon","mulberry","nashi pear","nectarine","olive","orange","papaw","papaya","passionfruit","peach","pear","pineapple","plum","pomegranate","prune","rockmelon","snowpea","sprout","starfruit","strawberry","sultana","tangelo","tomato","watermelon"];var de=["achacha","adzuki beans","agar","agave syrup","ajowan seed","albacore tuna","alfalfa","allspice","almond oil","almonds","amaranth","amchur","anchovies","aniseed","annatto seed","apple cider vinegar","apple juice","apple juice concentrate","apples","apricots","arborio rice","arrowroot","artichoke","arugula","asafoetida","asian greens","asian noodles","asparagus","aubergine","avocado","avocado oil","avocado spread","bacon","baking powder","baking soda","balsamic vinegar","bamboo shoots","banana","barberry","barley","barramundi","basil basmati rice","bay leaves","bean shoots","bean sprouts","beans","beef","beef stock","beetroot","berries","besan","black eyed beans","blackberries","blood oranges","blue cheese","blue eye trevalla","blue swimmer crab","blueberries","bocconcini","bok choy","bonito flakes","bonza","borlotti beans","bran","brazil nut","bread","brie","broccoli","broccolini","brown flour","brown mushrooms","brown rice","brown rice vinegar","brussels sprouts","buckwheat","buckwheat flour","buckwheat noodles","bulghur","bush tomato","butter","butter beans","buttermilk","butternut lettuce","butternut pumpkin","cabbage","cacao","cake","calamari","camellia tea oil","camembert","camomile","candle nut","cannellini beans","canola oil","cantaloupe","capers","capsicum","caraway seed","cardamom","carob carrot","carrot","cashews","cassia bark","cauliflower","cavalo","cayenne","celery","celery seed","cheddar","cherries","chestnut","chia seeds","chicken","chicken stock","chickory","chickpea","chilli pepper","chinese cabbage","chinese five spice","chives","choy sum","cinnamon","clams","cloves","cocoa powder","coconut","coconut oil","coconut water","coffee","common cultivated mushrooms","corella pear","coriander leaves","coriander seed","corn oil","corn syrup","corn tortilla","cornichons","cornmeal","cos lettuce","cottage cheese","cous cous","crabs","cranberry","cream","cream cheese","cucumber","cumin","cumquat","currants","curry leaves","curry powder","custard apples","dandelion","dark chocolate","dashi","dates","dill","dragonfruit","dried apricots","dried chinese broccoli","duck","edam","edamame","eggplant","eggs","elderberry","endive","english spinach","enoki mushrooms","extra virgin olive oil","farmed prawns","feijoa","fennel","fennel seeds","fenugreek","feta","figs","file powder","fingerlime","fish sauce","fish stock","flat mushrooms","flathead","flaxseed","flaxseed oil","flounder","flour","freekeh","french eschallots","fresh chillies","fromage blanc","fruit","galangal","garam masala","garlic","goat cheese","goat milk","goji berry","grape seed oil","grapefruit","grapes","green beans","green pepper","green tea","green tea noodles","greenwheat freekeh","gruyere","guava","gula melaka","haloumi","ham","haricot beans","harissa","hazelnut","hijiki","hiramasa kingfish","hokkien noodles","honey","honeydew melon","horseradish","hot smoked salmon","hummus","iceberg lettuce","incaberries","jarrahdale pumpkin","jasmine rice","jelly","jerusalem artichoke","jewfish","jicama","juniper berries","kale","kangaroo","kecap manis","kenchur","kidney beans","kidneys","kiwi berries","kiwi fruit","kohlrabi","kokam","kombu","koshihikari rice","kudzu","kumera","lamb","lavender flowers","leeks","lemon","lemongrass","lentils","lettuce","licorice","lime leaves","limes","liver","lobster","longan","loquats","lotus root","lychees","macadamia nut","macadamia oil","mace","mackerel","mahi mahi","mahlab","malt vinegar","mandarins","mango","mangosteens","maple syrup","margarine","marigold","marjoram","mastic","melon","milk","milk chocolate","mint","miso","molasses","monkfish","morwong","mountain bread","mozzarella","muesli","mulberries","mullet","mung beans","mussels","mustard","mustard seed","nashi pear","nasturtium","nectarines","nori","nutmeg","nutritional yeast","nuts","oat flour","oatmeal","oats","octopus","okra","olive oil","olives","omega spread","onion","oranges","oregano","oyster mushrooms","oyster sauce","oysters","pandanus leaves","papaw","papaya","paprik","parmesan cheese","parrotfish","parsley","parsnip","passionfruit","pasta","peaches","peanuts","pear","pear juice","pears","peas","pecan nut","pecorino","pepitas","peppercorns","peppermint","peppers","persimmon","pine nut","pineapple","pinto beans","pistachio nut","plums","polenta","pomegranate","poppy seed","porcini mushrooms","pork","potato flour","potatoes","provolone","prunes","pumpkin","pumpkin seed","purple carrot","purple rice","quark","quince","quinoa","radicchio","radish","raisin","raspberry","red cabbage","red lentils","red pepper","red wine","red wine vinegar","redfish","rhubarb","rice flour","rice noodles","rice paper","rice syrup","ricemilk","ricotta","rockmelon","rose water","rosemary","rye","rye bread","safflower oil","saffron","sage","sake","salmon","sardines","sausages","scallops","sea salt","semolina","sesame oil","sesame seeds","shark","shiitake mushrooms","silverbeet","slivered almonds","smoked trout","snapper","snowpea sprouts","snowpeas","soba","sour dough bread","soy","soy beans","soy flour","soy milk","soy sauce","soymilk","spearmint","spelt","spelt bread","spinach","spring onions","sprouts","squash","squid","star anise","star fruit","starfruit","stevia","strawberries","sugar","sultanas","sun-dried tomatoes","sunflower oil","sunflower seeds","sweet chilli sauce","sweet potato","swiss chard","swordfish","szechuan pepperberry","tabasco","tahini","taleggio cheese","tamari","tamarillo","tangelo","tapioca","tapioca flour","tarragon","tea","tea oil","tempeh","thyme","tinned","tofu","tom yum","tomatoes","trout","tuna","turkey","turmeric","turnips","unbleached flour","vanilla beans","vegetable oil","vegetable spaghetti","vegetable stock","vermicelli noodles","vinegar","wakame","walnut","warehou","wasabi","water","watercress","watermelon","wattleseed","wheat","wheatgrass juice","white bread","white flour","white rice","white wine","white wine vinegar","whiting wild rice","wholegrain bread","wholemeal","wholewheat flour","william pear","yeast","yellow papaw","yellowtail kingfish","yoghurt","yogurt","zucchini"];var ue$1=["beef","chicken","crocodile","duck","emu","goose","kangaroo","lamb","ostrich","pigeon","pork","quail","rabbit","salmon","turkey","venison"];var ce$1=["achiote seed","ajwain seed","ajwan seed","allspice","amchoor","anise","anise star","aniseed","annatto seed","arrowroot","asafoetida","baharat","balti masala","balti stir fry mix","basil","bay leaves","bbq","caraway seed","cardamom","cassia","cayenne pepper","celery","chamomile","chervil","chilli","chilli pepper","chillies","china star","chives","cinnamon","cloves","colombo","coriander","cumin","curly leaf parsley","curry","dhansak","dill","fennel seed","fenugreek","fines herbes","five spice","french lavender","galangal","garam masala","garlic","german chamomile","ginger","green cardamom","herbes de provence","jalfrezi","jerk","kaffir leaves","korma","lavender","lemon grass","lemon pepper","lime leaves","liquorice root","mace","mango","marjoram","methi","mint","mustard","nutmeg","onion seed","orange zest","oregano","paprika","parsley","pepper","peppercorns","pimento","piri piri","poppy seed","pot marjoram","poudre de colombo","ras-el-hanout","rice paper","rogan josh","rose baie","rosemary","saffron","sage","sesame seed","spearmint","sumac","sweet basil","sweet laurel","tagine","tandoori masala","tarragon","thyme","tikka masala","turmeric","vanilla","zahtar"];var me$1=["artichoke","arugula","asian greens","asparagus","bean shoots","bean sprouts","beans","beetroot","bok choy","broccoli","broccolini","brussels sprouts","butternut lettuce","cabbage","capers","carob carrot","carrot","cauliflower","celery","chilli pepper","chinese cabbage","chives","cornichons","cos lettuce","cucumber","dried chinese broccoli","eggplant","endive","english spinach","french eschallots","fresh chillies","garlic","green beans","green pepper","hijiki","iceberg lettuce","jerusalem artichoke","jicama","kale","kohlrabi","leeks","lettuce","okra","onion","parsnip","peas","peppers","potatoes","pumpkin","purple carrot","radicchio","radish","raspberry","red cabbage","red pepper","rhubarb","snowpea sprouts","spinach","squash","sun dried tomatoes","sweet potato","swiss chard","turnips","zucchini"];var Za={adjective:re$1,description_pattern:ne$1,dish:ie$1,dish_pattern:te$1,ethnic_category:le$1,fruit:se$1,ingredient:de,meat:ue$1,spice:ce$1,vegetable:me$1},he$1=Za;var ye$1=["1080p","auxiliary","back-end","bluetooth","cross-platform","digital","haptic","mobile","multi-byte","neural","online","open-source","optical","primary","redundant","solid state","virtual","wireless"];var pe$1=["backing up","bypassing","calculating","compressing","connecting","copying","generating","hacking","indexing","navigating","overriding","parsing","programming","quantifying","synthesizing","transmitting"];var ge$1=["alarm","application","array","bandwidth","bus","capacitor","card","circuit","driver","feed","firewall","hard drive","interface","matrix","microchip","monitor","panel","pixel","port","program","protocol","sensor","system","transmitter"];var be$1=["I'll {{verb}} the {{adjective}} {{abbreviation}} {{noun}}, that should {{noun}} the {{abbreviation}} {{noun}}!","If we {{verb}} the {{noun}}, we can get to the {{abbreviation}} {{noun}} through the {{adjective}} {{abbreviation}} {{noun}}!","The {{abbreviation}} {{noun}} is down, {{verb}} the {{adjective}} {{noun}} so we can {{verb}} the {{abbreviation}} {{noun}}!","Try to {{verb}} the {{abbreviation}} {{noun}}, maybe it will {{verb}} the {{adjective}} {{noun}}!","Use the {{adjective}} {{abbreviation}} {{noun}}, then you can {{verb}} the {{adjective}} {{noun}}!","We need to {{verb}} the {{adjective}} {{abbreviation}} {{noun}}!","You can't {{verb}} the {{noun}} without {{ingverb}} the {{adjective}} {{abbreviation}} {{noun}}!","{{ingverb}} the {{noun}} won't do anything, we need to {{verb}} the {{adjective}} {{abbreviation}} {{noun}}!"];var Se$1=["back up","bypass","calculate","compress","connect","copy","generate","hack","index","input","navigate","override","parse","program","quantify","reboot","synthesize","transmit"];var _a={adjective:ye$1,ingverb:pe$1,noun:ge$1,phrase:be$1,verb:Se$1},ke$1=_a;var Ce$1=["com","biz","info","name","net","org"];var fe$1=["example.org","example.com","example.net"];var ve$1=["gmail.com","yahoo.com","hotmail.com"];var Qa$1={domain_suffix:Ce$1,example_email:fe$1,free_email:ve$1},Ae$1=Qa$1;var Be$1=["#####","####","###"];var we$1=["Abilene","Akron","Alafaya","Alameda","Albany","Albuquerque","Alexandria","Alhambra","Aliso Viejo","Allen","Allentown","Aloha","Alpharetta","Altadena","Altamonte Springs","Altoona","Amarillo","Ames","Anaheim","Anchorage","Anderson","Ankeny","Ann Arbor","Annandale","Antelope","Antioch","Apex","Apopka","Apple Valley","Appleton","Arcadia","Arden-Arcade","Arecibo","Arlington","Arlington Heights","Arvada","Ashburn","Asheville","Aspen Hill","Atascocita","Athens-Clarke County","Atlanta","Attleboro","Auburn","Augusta-Richmond County","Aurora","Austin","Avondale","Azusa","Bakersfield","Baldwin Park","Baltimore","Barnstable Town","Bartlett","Baton Rouge","Battle Creek","Bayamon","Bayonne","Baytown","Beaumont","Beavercreek","Beaverton","Bedford","Bel Air South","Bell Gardens","Belleville","Bellevue","Bellflower","Bellingham","Bend","Bentonville","Berkeley","Berwyn","Bethesda","Bethlehem","Billings","Biloxi","Binghamton","Birmingham","Bismarck","Blacksburg","Blaine","Bloomington","Blue Springs","Boca Raton","Boise City","Bolingbrook","Bonita Springs","Bossier City","Boston","Bothell","Boulder","Bountiful","Bowie","Bowling Green","Boynton Beach","Bozeman","Bradenton","Brandon","Brentwood","Bridgeport","Bristol","Brockton","Broken Arrow","Brookhaven","Brookline","Brooklyn Park","Broomfield","Brownsville","Bryan","Buckeye","Buena Park","Buffalo","Buffalo Grove","Burbank","Burien","Burke","Burleson","Burlington","Burnsville","Caguas","Caldwell","Camarillo","Cambridge","Camden","Canton","Cape Coral","Carlsbad","Carmel","Carmichael","Carolina","Carrollton","Carson","Carson City","Cary","Casa Grande","Casas Adobes","Casper","Castle Rock","Castro Valley","Catalina Foothills","Cathedral City","Catonsville","Cedar Hill","Cedar Park","Cedar Rapids","Centennial","Centreville","Ceres","Cerritos","Champaign","Chandler","Chapel Hill","Charleston","Charlotte","Charlottesville","Chattanooga","Cheektowaga","Chesapeake","Chesterfield","Cheyenne","Chicago","Chico","Chicopee","Chino","Chino Hills","Chula Vista","Cicero","Cincinnati","Citrus Heights","Clarksville","Clearwater","Cleveland","Cleveland Heights","Clifton","Clovis","Coachella","Coconut Creek","Coeur d'Alene","College Station","Collierville","Colorado Springs","Colton","Columbia","Columbus","Commerce City","Compton","Concord","Conroe","Conway","Coon Rapids","Coral Gables","Coral Springs","Corona","Corpus Christi","Corvallis","Costa Mesa","Council Bluffs","Country Club","Covina","Cranston","Cupertino","Cutler Bay","Cuyahoga Falls","Cypress","Dale City","Dallas","Daly City","Danbury","Danville","Davenport","Davie","Davis","Dayton","Daytona Beach","DeKalb","DeSoto","Dearborn","Dearborn Heights","Decatur","Deerfield Beach","Delano","Delray Beach","Deltona","Denton","Denver","Des Moines","Des Plaines","Detroit","Diamond Bar","Doral","Dothan","Downers Grove","Downey","Draper","Dublin","Dubuque","Duluth","Dundalk","Dunwoody","Durham","Eagan","East Hartford","East Honolulu","East Lansing","East Los Angeles","East Orange","East Providence","Eastvale","Eau Claire","Eden Prairie","Edina","Edinburg","Edmond","El Cajon","El Centro","El Dorado Hills","El Monte","El Paso","Elgin","Elizabeth","Elk Grove","Elkhart","Ellicott City","Elmhurst","Elyria","Encinitas","Enid","Enterprise","Erie","Escondido","Euclid","Eugene","Euless","Evanston","Evansville","Everett","Fairfield","Fall River","Fargo","Farmington","Farmington Hills","Fayetteville","Federal Way","Findlay","Fishers","Flagstaff","Flint","Florence-Graham","Florin","Florissant","Flower Mound","Folsom","Fond du Lac","Fontana","Fort Collins","Fort Lauderdale","Fort Myers","Fort Pierce","Fort Smith","Fort Wayne","Fort Worth","Fountain Valley","Fountainebleau","Framingham","Franklin","Frederick","Freeport","Fremont","Fresno","Frisco","Fullerton","Gainesville","Gaithersburg","Galveston","Garden Grove","Gardena","Garland","Gary","Gastonia","Georgetown","Germantown","Gilbert","Gilroy","Glen Burnie","Glendale","Glendora","Glenview","Goodyear","Grand Forks","Grand Island","Grand Junction","Grand Prairie","Grand Rapids","Grapevine","Great Falls","Greeley","Green Bay","Greensboro","Greenville","Greenwood","Gresham","Guaynabo","Gulfport","Hacienda Heights","Hackensack","Haltom City","Hamilton","Hammond","Hampton","Hanford","Harlingen","Harrisburg","Harrisonburg","Hartford","Hattiesburg","Haverhill","Hawthorne","Hayward","Hemet","Hempstead","Henderson","Hendersonville","Hesperia","Hialeah","Hicksville","High Point","Highland","Highlands Ranch","Hillsboro","Hilo","Hoboken","Hoffman Estates","Hollywood","Homestead","Honolulu","Hoover","Houston","Huntersville","Huntington","Huntington Beach","Huntington Park","Huntsville","Hutchinson","Idaho Falls","Independence","Indianapolis","Indio","Inglewood","Iowa City","Irondequoit","Irvine","Irving","Jackson","Jacksonville","Janesville","Jefferson City","Jeffersonville","Jersey City","Johns Creek","Johnson City","Joliet","Jonesboro","Joplin","Jupiter","Jurupa Valley","Kalamazoo","Kannapolis","Kansas City","Kearny","Keller","Kendale Lakes","Kendall","Kenner","Kennewick","Kenosha","Kent","Kentwood","Kettering","Killeen","Kingsport","Kirkland","Kissimmee","Knoxville","Kokomo","La Crosse","La Habra","La Mesa","La Mirada","Lacey","Lafayette","Laguna Niguel","Lake Charles","Lake Elsinore","Lake Forest","Lake Havasu City","Lake Ridge","Lakeland","Lakeville","Lakewood","Lancaster","Lansing","Laredo","Largo","Las Cruces","Las Vegas","Lauderhill","Lawrence","Lawton","Layton","League City","Lee's Summit","Leesburg","Lehi","Lehigh Acres","Lenexa","Levittown","Lewisville","Lexington-Fayette","Lincoln","Linden","Little Rock","Littleton","Livermore","Livonia","Lodi","Logan","Lombard","Lompoc","Long Beach","Longmont","Longview","Lorain","Los Angeles","Louisville/Jefferson County","Loveland","Lowell","Lubbock","Lynchburg","Lynn","Lynwood","Macon-Bibb County","Madera","Madison","Malden","Manchester","Manhattan","Mansfield","Manteca","Maple Grove","Margate","Maricopa","Marietta","Marysville","Mayaguez","McAllen","McKinney","McLean","Medford","Melbourne","Memphis","Menifee","Mentor","Merced","Meriden","Meridian","Mesa","Mesquite","Metairie","Methuen Town","Miami","Miami Beach","Miami Gardens","Middletown","Midland","Midwest City","Milford","Millcreek","Milpitas","Milwaukee","Minneapolis","Minnetonka","Minot","Miramar","Mishawaka","Mission","Mission Viejo","Missoula","Missouri City","Mobile","Modesto","Moline","Monroe","Montebello","Monterey Park","Montgomery","Moore","Moreno Valley","Morgan Hill","Mount Pleasant","Mount Prospect","Mount Vernon","Mountain View","Muncie","Murfreesboro","Murray","Murrieta","Nampa","Napa","Naperville","Nashua","Nashville-Davidson","National City","New Bedford","New Braunfels","New Britain","New Brunswick","New Haven","New Orleans","New Rochelle","New York","Newark","Newport Beach","Newport News","Newton","Niagara Falls","Noblesville","Norfolk","Normal","Norman","North Bethesda","North Charleston","North Highlands","North Las Vegas","North Lauderdale","North Little Rock","North Miami","North Miami Beach","North Port","North Richland Hills","Norwalk","Novato","Novi","O'Fallon","Oak Lawn","Oak Park","Oakland","Oakland Park","Ocala","Oceanside","Odessa","Ogden","Oklahoma City","Olathe","Olympia","Omaha","Ontario","Orange","Orem","Orland Park","Orlando","Oro Valley","Oshkosh","Overland Park","Owensboro","Oxnard","Palatine","Palm Bay","Palm Beach Gardens","Palm Coast","Palm Desert","Palm Harbor","Palm Springs","Palmdale","Palo Alto","Paradise","Paramount","Parker","Parma","Pasadena","Pasco","Passaic","Paterson","Pawtucket","Peabody","Pearl City","Pearland","Pembroke Pines","Pensacola","Peoria","Perris","Perth Amboy","Petaluma","Pflugerville","Pharr","Philadelphia","Phoenix","Pico Rivera","Pine Bluff","Pine Hills","Pinellas Park","Pittsburg","Pittsburgh","Pittsfield","Placentia","Plainfield","Plano","Plantation","Pleasanton","Plymouth","Pocatello","Poinciana","Pomona","Pompano Beach","Ponce","Pontiac","Port Arthur","Port Charlotte","Port Orange","Port St. Lucie","Portage","Porterville","Portland","Portsmouth","Potomac","Poway","Providence","Provo","Pueblo","Quincy","Racine","Raleigh","Rancho Cordova","Rancho Cucamonga","Rancho Palos Verdes","Rancho Santa Margarita","Rapid City","Reading","Redding","Redlands","Redmond","Redondo Beach","Redwood City","Reno","Renton","Reston","Revere","Rialto","Richardson","Richland","Richmond","Rio Rancho","Riverside","Riverton","Riverview","Roanoke","Rochester","Rochester Hills","Rock Hill","Rockford","Rocklin","Rockville","Rockwall","Rocky Mount","Rogers","Rohnert Park","Rosemead","Roseville","Roswell","Round Rock","Rowland Heights","Rowlett","Royal Oak","Sacramento","Saginaw","Salem","Salina","Salinas","Salt Lake City","Sammamish","San Angelo","San Antonio","San Bernardino","San Bruno","San Buenaventura (Ventura)","San Clemente","San Diego","San Francisco","San Jacinto","San Jose","San Juan","San Leandro","San Luis Obispo","San Marcos","San Mateo","San Rafael","San Ramon","San Tan Valley","Sandy","Sandy Springs","Sanford","Santa Ana","Santa Barbara","Santa Clara","Santa Clarita","Santa Cruz","Santa Fe","Santa Maria","Santa Monica","Santa Rosa","Santee","Sarasota","Savannah","Sayreville","Schaumburg","Schenectady","Scottsdale","Scranton","Seattle","Severn","Shawnee","Sheboygan","Shoreline","Shreveport","Sierra Vista","Silver Spring","Simi Valley","Sioux City","Sioux Falls","Skokie","Smyrna","Somerville","South Bend","South Gate","South Hill","South Jordan","South San Francisco","South Valley","South Whittier","Southaven","Southfield","Sparks","Spokane","Spokane Valley","Spring","Spring Hill","Spring Valley","Springdale","Springfield","St. Charles","St. Clair Shores","St. Cloud","St. George","St. Joseph","St. Louis","St. Louis Park","St. Paul","St. Peters","St. Petersburg","Stamford","State College","Sterling Heights","Stillwater","Stockton","Stratford","Strongsville","Suffolk","Sugar Land","Summerville","Sunnyvale","Sunrise","Sunrise Manor","Surprise","Syracuse","Tacoma","Tallahassee","Tamarac","Tamiami","Tampa","Taunton","Taylor","Taylorsville","Temecula","Tempe","Temple","Terre Haute","Texas City","The Hammocks","The Villages","The Woodlands","Thornton","Thousand Oaks","Tigard","Tinley Park","Titusville","Toledo","Toms River","Tonawanda","Topeka","Torrance","Town 'n' Country","Towson","Tracy","Trenton","Troy","Trujillo Alto","Tuckahoe","Tucson","Tulare","Tulsa","Turlock","Tuscaloosa","Tustin","Twin Falls","Tyler","Union City","University","Upland","Urbana","Urbandale","Utica","Vacaville","Valdosta","Vallejo","Vancouver","Victoria","Victorville","Vineland","Virginia Beach","Visalia","Vista","Waco","Waipahu","Waldorf","Walnut Creek","Waltham","Warner Robins","Warren","Warwick","Washington","Waterbury","Waterloo","Watsonville","Waukegan","Waukesha","Wauwatosa","Wellington","Wesley Chapel","West Allis","West Babylon","West Covina","West Des Moines","West Hartford","West Haven","West Jordan","West Lafayette","West New York","West Palm Beach","West Sacramento","West Seneca","West Valley City","Westfield","Westland","Westminster","Weston","Weymouth Town","Wheaton","White Plains","Whittier","Wichita","Wichita Falls","Wilmington","Wilson","Winston-Salem","Woodbury","Woodland","Worcester","Wylie","Wyoming","Yakima","Yonkers","Yorba Linda","York","Youngstown","Yuba City","Yucaipa","Yuma"];var Me$1=["{{location.city_prefix}} {{person.first_name.generic}}{{location.city_suffix}}","{{location.city_prefix}} {{person.first_name.generic}}","{{person.first_name.generic}}{{location.city_suffix}}","{{person.last_name.generic}}{{location.city_suffix}}","{{location.city_name}}"];var Te$1=["North","East","West","South","New","Lake","Port","Fort"];var Le$1=["town","ton","land","ville","berg","burgh","boro","borough","bury","view","port","mouth","stad","stead","furt","chester","cester","fort","field","haven","side","shire","worth"];var De$1=["Afghanistan","Aland Islands","Albania","Algeria","American Samoa","Andorra","Angola","Anguilla","Antarctica","Antigua and Barbuda","Argentina","Armenia","Aruba","Australia","Austria","Azerbaijan","Bahamas","Bahrain","Bangladesh","Barbados","Belarus","Belgium","Belize","Benin","Bermuda","Bhutan","Bolivia","Bonaire, Sint Eustatius and Saba","Bosnia and Herzegovina","Botswana","Bouvet Island","Brazil","British Indian Ocean Territory (Chagos Archipelago)","Brunei Darussalam","Bulgaria","Burkina Faso","Burundi","Cambodia","Cameroon","Canada","Cape Verde","Cayman Islands","Central African Republic","Chad","Chile","China","Christmas Island","Cocos (Keeling) Islands","Colombia","Comoros","Congo","Cook Islands","Costa Rica","Cote d'Ivoire","Croatia","Cuba","Curacao","Cyprus","Czechia","Democratic Republic of the Congo","Denmark","Djibouti","Dominica","Dominican Republic","Ecuador","Egypt","El Salvador","Equatorial Guinea","Eritrea","Estonia","Eswatini","Ethiopia","Faroe Islands","Falkland Islands (Malvinas)","Fiji","Finland","France","French Guiana","French Polynesia","French Southern Territories","Gabon","Gambia","Georgia","Germany","Ghana","Gibraltar","Greece","Greenland","Grenada","Guadeloupe","Guam","Guatemala","Guernsey","Guinea","Guinea-Bissau","Guyana","Haiti","Heard Island and McDonald Islands","Holy See (Vatican City State)","Honduras","Hong Kong","Hungary","Iceland","India","Indonesia","Iran","Iraq","Ireland","Isle of Man","Israel","Italy","Jamaica","Japan","Jersey","Jordan","Kazakhstan","Kenya","Kiribati","Democratic People's Republic of Korea","Republic of Korea","Kuwait","Kyrgyz Republic","Lao People's Democratic Republic","Latvia","Lebanon","Lesotho","Liberia","Libyan Arab Jamahiriya","Liechtenstein","Lithuania","Luxembourg","Macao","Madagascar","Malawi","Malaysia","Maldives","Mali","Malta","Marshall Islands","Martinique","Mauritania","Mauritius","Mayotte","Mexico","Micronesia","Moldova","Monaco","Mongolia","Montenegro","Montserrat","Morocco","Mozambique","Myanmar","Namibia","Nauru","Nepal","Netherlands","New Caledonia","New Zealand","Nicaragua","Niger","Nigeria","Niue","Norfolk Island","North Macedonia","Northern Mariana Islands","Norway","Oman","Pakistan","Palau","Palestine","Panama","Papua New Guinea","Paraguay","Peru","Philippines","Pitcairn Islands","Poland","Portugal","Puerto Rico","Qatar","Reunion","Romania","Russian Federation","Rwanda","Saint Barthelemy","Saint Helena","Saint Kitts and Nevis","Saint Lucia","Saint Martin","Saint Pierre and Miquelon","Saint Vincent and the Grenadines","Samoa","San Marino","Sao Tome and Principe","Saudi Arabia","Senegal","Serbia","Seychelles","Sierra Leone","Singapore","Sint Maarten","Slovakia","Slovenia","Solomon Islands","Somalia","South Africa","South Georgia and the South Sandwich Islands","South Sudan","Spain","Sri Lanka","Sudan","Suriname","Svalbard & Jan Mayen Islands","Sweden","Switzerland","Syrian Arab Republic","Taiwan","Tajikistan","Tanzania","Thailand","Timor-Leste","Togo","Tokelau","Tonga","Trinidad and Tobago","Tunisia","Turkey","Turkmenistan","Turks and Caicos Islands","Tuvalu","Uganda","Ukraine","United Arab Emirates","United Kingdom","United States of America","United States Minor Outlying Islands","Uruguay","Uzbekistan","Vanuatu","Venezuela","Vietnam","Virgin Islands, British","Virgin Islands, U.S.","Wallis and Futuna","Western Sahara","Yemen","Zambia","Zimbabwe"];var Re$1=["Adams County","Calhoun County","Carroll County","Clark County","Clay County","Crawford County","Douglas County","Fayette County","Franklin County","Grant County","Greene County","Hamilton County","Hancock County","Henry County","Jackson County","Jefferson County","Johnson County","Lake County","Lawrence County","Lee County","Lincoln County","Logan County","Madison County","Marion County","Marshall County","Monroe County","Montgomery County","Morgan County","Perry County","Pike County","Polk County","Scott County","Union County","Warren County","Washington County","Wayne County","Avon","Bedfordshire","Berkshire","Borders","Buckinghamshire","Cambridgeshire","Central","Cheshire","Cleveland","Clwyd","Cornwall","County Antrim","County Armagh","County Down","County Fermanagh","County Londonderry","County Tyrone","Cumbria","Derbyshire","Devon","Dorset","Dumfries and Galloway","Durham","Dyfed","East Sussex","Essex","Fife","Gloucestershire","Grampian","Greater Manchester","Gwent","Gwynedd County","Hampshire","Herefordshire","Hertfordshire","Highlands and Islands","Humberside","Isle of Wight","Kent","Lancashire","Leicestershire","Lincolnshire","Lothian","Merseyside","Mid Glamorgan","Norfolk","North Yorkshire","Northamptonshire","Northumberland","Nottinghamshire","Oxfordshire","Powys","Rutland","Shropshire","Somerset","South Glamorgan","South Yorkshire","Staffordshire","Strathclyde","Suffolk","Surrey","Tayside","Tyne and Wear","Warwickshire","West Glamorgan","West Midlands","West Sussex","West Yorkshire","Wiltshire","Worcestershire"];var He$1={cardinal:["North","East","South","West"],cardinal_abbr:["N","E","S","W"],ordinal:["Northeast","Northwest","Southeast","Southwest"],ordinal_abbr:["NE","NW","SE","SW"]};var Pe$1=["#####","#####-####"];var We$1=["Apt. ###","Suite ###"];var Ge$1=["Alabama","Alaska","Arizona","Arkansas","California","Colorado","Connecticut","Delaware","Florida","Georgia","Hawaii","Idaho","Illinois","Indiana","Iowa","Kansas","Kentucky","Louisiana","Maine","Maryland","Massachusetts","Michigan","Minnesota","Mississippi","Missouri","Montana","Nebraska","Nevada","New Hampshire","New Jersey","New Mexico","New York","North Carolina","North Dakota","Ohio","Oklahoma","Oregon","Pennsylvania","Rhode Island","South Carolina","South Dakota","Tennessee","Texas","Utah","Vermont","Virginia","Washington","West Virginia","Wisconsin","Wyoming"];var Ne$1=["AL","AK","AZ","AR","CA","CO","CT","DE","FL","GA","HI","ID","IL","IN","IA","KS","KY","LA","ME","MD","MA","MI","MN","MS","MO","MT","NE","NV","NH","NJ","NM","NY","NC","ND","OH","OK","OR","PA","RI","SC","SD","TN","TX","UT","VT","VA","WA","WV","WI","WY"];var Ee$1={normal:"{{location.buildingNumber}} {{location.street}}",full:"{{location.buildingNumber}} {{location.street}} {{location.secondaryAddress}}"};var Fe$1=["10th Street","11th Street","12th Street","13th Street","14th Street","15th Street","16th Street","1st Avenue","1st Street","2nd Avenue","2nd Street","3rd Avenue","3rd Street","4th Avenue","4th Street","5th Avenue","5th Street","6th Avenue","6th Street","7th Avenue","7th Street","8th Avenue","8th Street","9th Street","A Street","Abbey Road","Adams Avenue","Adams Street","Airport Road","Albany Road","Albert Road","Albion Street","Alexandra Road","Alfred Street","Alma Street","Ash Close","Ash Grove","Ash Road","Ash Street","Aspen Close","Atlantic Avenue","Avenue Road","Back Lane","Baker Street","Balmoral Road","Barn Close","Barton Road","Bath Road","Bath Street","Bay Street","Beach Road","Bedford Road","Beech Close","Beech Drive","Beech Grove","Beech Road","Beechwood Avenue","Bell Lane","Belmont Road","Birch Avenue","Birch Close","Birch Grove","Birch Road","Blind Lane","Bluebell Close","Boundary Road","Bramble Close","Bramley Close","Bridge Road","Bridge Street","Broad Lane","Broad Street","Broadway","Broadway Avenue","Broadway Street","Brook Lane","Brook Road","Brook Street","Brookside","Buckingham Road","Cambridge Street","Canal Street","Castle Close","Castle Lane","Castle Road","Castle Street","Cavendish Road","Cedar Avenue","Cedar Close","Cedar Grove","Cedar Road","Cedar Street","Cemetery Road","Center Avenue","Center Road","Center Street","Central Avenue","Central Street","Chapel Close","Chapel Hill","Chapel Road","Chapel Street","Charles Street","Cherry Close","Cherry Street","Cherry Tree Close","Chester Road","Chestnut Close","Chestnut Drive","Chestnut Grove","Chestnut Street","Church Avenue","Church Close","Church Hill","Church Lane","Church Path","Church Road","Church Street","Church View","Church Walk","Claremont Road","Clarence Road","Clarence Street","Clarendon Road","Clark Street","Clay Lane","Cleveland Street","Cliff Road","Clifton Road","Clinton Street","College Avenue","College Street","Columbia Avenue","Commerce Street","Commercial Road","Commercial Street","Common Lane","Coronation Avenue","Coronation Road","County Line Road","County Road","Court Street","Cow Lane","Crescent Road","Cromwell Road","Cross Lane","Cross Street","Crown Street","Cumberland Street","Dale Street","Dark Lane","Davis Street","Depot Street","Derby Road","Derwent Close","Devonshire Road","Division Street","Douglas Road","Duke Street","E 10th Street","E 11th Street","E 12th Street","E 14th Street","E 1st Street","E 2nd Street","E 3rd Street","E 4th Avenue","E 4th Street","E 5th Street","E 6th Avenue","E 6th Street","E 7th Street","E 8th Street","E 9th Street","E Bridge Street","E Broad Street","E Broadway","E Broadway Street","E Cedar Street","E Center Street","E Central Avenue","E Church Street","E Elm Street","E Franklin Street","E Front Street","E Grand Avenue","E High Street","E Jackson Street","E Jefferson Street","E Main","E Main Street","E Maple Street","E Market Street","E North Street","E Oak Street","E Park Avenue","E Pine Street","E River Road","E South Street","E State Street","E Union Street","E Walnut Street","E Washington Avenue","E Washington Street","E Water Street","East Avenue","East Road","East Street","Edward Street","Elm Close","Elm Grove","Elm Road","Elm Street","Euclid Avenue","Fairfield Road","Farm Close","Ferry Road","Field Close","Field Lane","First Avenue","First Street","Fore Street","Forest Avenue","Forest Road","Fourth Avenue","Franklin Avenue","Franklin Road","Franklin Street","Front Street","Frontage Road","Garden Close","Garden Street","George Street","Gladstone Road","Glebe Close","Gloucester Road","Gordon Road","Gordon Street","Grand Avenue","Grange Avenue","Grange Close","Grange Road","Grant Street","Green Close","Green Lane","Green Street","Greenville Road","Greenway","Greenwood Road","Grove Lane","Grove Road","Grove Street","Hall Lane","Hall Street","Harrison Avenue","Harrison Street","Hawthorn Avenue","Hawthorn Close","Hazel Close","Hazel Grove","Heath Road","Heather Close","Henry Street","Heron Close","Hickory Street","High Road","High Street","Highfield Avenue","Highfield Close","Highfield Road","Highland Avenue","Hill Road","Hill Street","Hillside","Hillside Avenue","Hillside Close","Hillside Road","Holly Close","Honeysuckle Close","Howard Road","Howard Street","Jackson Avenue","Jackson Street","James Street","Jefferson Avenue","Jefferson Street","Johnson Street","Jubilee Close","Juniper Close","Kent Road","Kestrel Close","King Street","King's Road","Kingfisher Close","Kings Highway","Kingsway","Laburnum Grove","Lafayette Street","Lake Avenue","Lake Drive","Lake Road","Lake Street","Lancaster Road","Lansdowne Road","Larch Close","Laurel Close","Lawrence Street","Lee Street","Liberty Street","Lime Grove","Lincoln Avenue","Lincoln Highway","Lincoln Road","Lincoln Street","Locust Street","Lodge Close","Lodge Lane","London Road","Long Lane","Low Road","Madison Avenue","Madison Street","Main","Main Avenue","Main Road","Main Street","Main Street E","Main Street N","Main Street S","Main Street W","Manchester Road","Manor Close","Manor Drive","Manor Gardens","Manor Road","Manor Way","Maple Avenue","Maple Close","Maple Drive","Maple Road","Maple Street","Market Place","Market Square","Market Street","Marlborough Road","Marsh Lane","Martin Luther King Boulevard","Martin Luther King Drive","Martin Luther King Jr Boulevard","Mary Street","Mayfield Road","Meadow Close","Meadow Drive","Meadow Lane","Meadow View","Meadow Way","Memorial Drive","Middle Street","Mill Close","Mill Lane","Mill Road","Mill Street","Milton Road","Milton Street","Monroe Street","Moor Lane","Moss Lane","Mount Pleasant","Mount Street","Mulberry Street","N 1st Street","N 2nd Street","N 3rd Street","N 4th Street","N 5th Street","N 6th Street","N 7th Street","N 8th Street","N 9th Street","N Bridge Street","N Broad Street","N Broadway","N Broadway Street","N Cedar Street","N Center Street","N Central Avenue","N Chestnut Street","N Church Street","N College Street","N Court Street","N Division Street","N East Street","N Elm Street","N Franklin Street","N Front Street","N Harrison Street","N High Street","N Jackson Street","N Jefferson Street","N Lincoln Street","N Locust Street","N Main","N Main Avenue","N Main Street","N Maple Street","N Market Street","N Monroe Street","N Oak Street","N Park Street","N Pearl Street","N Pine Street","N Poplar Street","N Railroad Street","N State Street","N Union Street","N Walnut Street","N Washington Avenue","N Washington Street","N Water Street","Nelson Road","Nelson Street","New Lane","New Road","New Street","Newton Road","Nightingale Close","Norfolk Road","North Avenue","North Lane","North Road","North Street","Northfield Road","Oak Avenue","Oak Drive","Oak Lane","Oak Road","Oak Street","Oakfield Road","Oaklands","Old Lane","Old Military Road","Old Road","Old State Road","Orchard Drive","Orchard Lane","Orchard Road","Orchard Street","Oxford Road","Oxford Street","Park Avenue","Park Crescent","Park Drive","Park Lane","Park Place","Park Road","Park Street","Park View","Parkside","Pearl Street","Pennsylvania Avenue","Pine Close","Pine Grove","Pine Street","Pinfold Lane","Pleasant Street","Poplar Avenue","Poplar Close","Poplar Road","Poplar Street","Post Road","Pound Lane","Princes Street","Princess Street","Priory Close","Priory Road","Prospect Avenue","Prospect Place","Prospect Road","Prospect Street","Quarry Lane","Quarry Road","Queen's Road","Railroad Avenue","Railroad Street","Railway Street","Rectory Close","Rectory Lane","Richmond Close","Richmond Road","Ridge Road","River Road","River Street","Riverside","Riverside Avenue","Riverside Drive","Roman Road","Roman Way","Rowan Close","Russell Street","S 10th Street","S 14th Street","S 1st Avenue","S 1st Street","S 2nd Street","S 3rd Street","S 4th Street","S 5th Street","S 6th Street","S 7th Street","S 8th Street","S 9th Street","S Bridge Street","S Broad Street","S Broadway","S Broadway Street","S Center Street","S Central Avenue","S Chestnut Street","S Church Street","S College Street","S Division Street","S East Street","S Elm Street","S Franklin Street","S Front Street","S Grand Avenue","S High Street","S Jackson Street","S Jefferson Street","S Lincoln Street","S Main","S Main Avenue","S Main Street","S Maple Street","S Market Street","S Mill Street","S Monroe Street","S Oak Street","S Park Street","S Pine Street","S Railroad Street","S State Street","S Union Street","S Walnut Street","S Washington Avenue","S Washington Street","S Water Street","S West Street","Salisbury Road","Sandringham Road","Sandy Lane","School Close","School Lane","School Road","School Street","Second Avenue","Silver Street","Skyline Drive","Smith Street","Somerset Road","South Avenue","South Drive","South Road","South Street","South View","Spring Gardens","Spring Street","Springfield Close","Springfield Road","Spruce Street","St Andrew's Road","St Andrews Close","St George's Road","St John's Road","St Mary's Close","St Mary's Road","Stanley Road","Stanley Street","State Avenue","State Line Road","State Road","State Street","Station Road","Station Street","Stoney Lane","Sycamore Avenue","Sycamore Close","Sycamore Drive","Sycamore Street","Talbot Road","Tennyson Road","The Avenue","The Beeches","The Causeway","The Chase","The Coppice","The Copse","The Crescent","The Croft","The Dell","The Drive","The Fairway","The Glebe","The Grange","The Green","The Grove","The Hawthorns","The Lane","The Laurels","The Limes","The Maltings","The Meadows","The Mews","The Mount","The Oaks","The Orchard","The Oval","The Paddock","The Paddocks","The Poplars","The Ridgeway","The Ridings","The Rise","The Sidings","The Spinney","The Square","The Willows","The Woodlands","Third Avenue","Third Street","Tower Road","Trinity Road","Tudor Close","Union Avenue","Union Street","University Avenue","University Drive","Valley Road","Veterans Memorial Drive","Veterans Memorial Highway","Vicarage Close","Vicarage Lane","Vicarage Road","Victoria Place","Victoria Road","Victoria Street","Vine Street","W 10th Street","W 11th Street","W 12th Street","W 14th Street","W 1st Street","W 2nd Street","W 3rd Street","W 4th Avenue","W 4th Street","W 5th Street","W 6th Avenue","W 6th Street","W 7th Street","W 8th Street","W 9th Street","W Bridge Street","W Broad Street","W Broadway","W Broadway Avenue","W Broadway Street","W Center Street","W Central Avenue","W Chestnut Street","W Church Street","W Division Street","W Elm Street","W Franklin Street","W Front Street","W Grand Avenue","W High Street","W Jackson Street","W Jefferson Street","W Lake Street","W Main","W Main Street","W Maple Street","W Market Street","W Monroe Street","W North Street","W Oak Street","W Park Street","W Pine Street","W River Road","W South Street","W State Street","W Union Street","W Walnut Street","W Washington Avenue","W Washington Street","Walnut Close","Walnut Street","Warren Close","Warren Road","Washington Avenue","Washington Boulevard","Washington Road","Washington Street","Water Lane","Water Street","Waterloo Road","Waterside","Watery Lane","Waverley Road","Well Lane","Wellington Road","Wellington Street","West Avenue","West End","West Lane","West Road","West Street","West View","Western Avenue","Western Road","Westfield Road","Westgate","William Street","Willow Close","Willow Drive","Willow Grove","Willow Road","Willow Street","Windermere Road","Windmill Close","Windmill Lane","Windsor Avenue","Windsor Close","Windsor Drive","Wood Lane","Wood Street","Woodland Close","Woodland Road","Woodlands","Woodlands Avenue","Woodlands Close","Woodlands Road","Woodside","Woodside Road","Wren Close","Yew Tree Close","York Road","York Street"];var Je$1=["{{person.first_name.generic}} {{location.street_suffix}}","{{person.last_name.generic}} {{location.street_suffix}}","{{location.street_name}}"];var Ie$1=["Alley","Avenue","Branch","Bridge","Brook","Brooks","Burg","Burgs","Bypass","Camp","Canyon","Cape","Causeway","Center","Centers","Circle","Circles","Cliff","Cliffs","Club","Common","Corner","Corners","Course","Court","Courts","Cove","Coves","Creek","Crescent","Crest","Crossing","Crossroad","Curve","Dale","Dam","Divide","Drive","Drives","Estate","Estates","Expressway","Extension","Extensions","Fall","Falls","Ferry","Field","Fields","Flat","Flats","Ford","Fords","Forest","Forge","Forges","Fork","Forks","Fort","Freeway","Garden","Gardens","Gateway","Glen","Glens","Green","Greens","Grove","Groves","Harbor","Harbors","Haven","Heights","Highway","Hill","Hills","Hollow","Inlet","Island","Islands","Isle","Junction","Junctions","Key","Keys","Knoll","Knolls","Lake","Lakes","Land","Landing","Lane","Light","Lights","Loaf","Lock","Locks","Lodge","Loop","Mall","Manor","Manors","Meadow","Meadows","Mews","Mill","Mills","Mission","Motorway","Mount","Mountain","Mountains","Neck","Orchard","Oval","Overpass","Park","Parks","Parkway","Parkways","Pass","Passage","Path","Pike","Pine","Pines","Place","Plain","Plains","Plaza","Point","Points","Port","Ports","Prairie","Radial","Ramp","Ranch","Rapid","Rapids","Rest","Ridge","Ridges","River","Road","Roads","Route","Row","Rue","Run","Shoal","Shoals","Shore","Shores","Skyway","Spring","Springs","Spur","Spurs","Square","Squares","Station","Stravenue","Stream","Street","Streets","Summit","Terrace","Throughway","Trace","Track","Trafficway","Trail","Tunnel","Turnpike","Underpass","Union","Unions","Valley","Valleys","Via","Viaduct","View","Views","Village","Villages","Ville","Vista","Walk","Walks","Wall","Way","Ways","Well","Wells"];var Xa={building_number:Be$1,city_name:we$1,city_pattern:Me$1,city_prefix:Te$1,city_suffix:Le$1,country:De$1,county:Re$1,direction:He$1,postcode:Pe$1,secondary_address:We$1,state:Ge$1,state_abbr:Ne$1,street_address:Ee$1,street_name:Fe$1,street_pattern:Je$1,street_suffix:Ie$1},Ke$1=Xa;var Oe$1=["a","ab","abbas","abduco","abeo","abscido","absconditus","absens","absorbeo","absque","abstergo","absum","abundans","abutor","accedo","accendo","acceptus","accommodo","accusamus","accusantium","accusator","acer","acerbitas","acervus","acidus","acies","acquiro","acsi","ad","adamo","adaugeo","addo","adduco","ademptio","adeo","adeptio","adfectus","adfero","adficio","adflicto","adhaero","adhuc","adicio","adimpleo","adinventitias","adipisci","adipiscor","adiuvo","administratio","admiratio","admitto","admoneo","admoveo","adnuo","adopto","adsidue","adstringo","adsuesco","adsum","adulatio","adulescens","aduro","advenio","adversus","advoco","aedificium","aeger","aegre","aegrotatio","aegrus","aeneus","aequitas","aequus","aer","aestas","aestivus","aestus","aetas","aeternus","ager","aggero","aggredior","agnitio","agnosco","ago","ait","aiunt","alias","alienus","alii","alioqui","aliqua","aliquam","aliquid","alius","allatus","alo","alter","altus","alveus","amaritudo","ambitus","ambulo","amet","amicitia","amiculum","amissio","amita","amitto","amo","amor","amoveo","amplexus","amplitudo","amplus","ancilla","angelus","angulus","angustus","animadverto","animi","animus","annus","anser","ante","antea","antepono","antiquus","aperiam","aperio","aperte","apostolus","apparatus","appello","appono","appositus","approbo","apto","aptus","apud","aqua","ara","aranea","arbitro","arbor","arbustum","arca","arceo","arcesso","architecto","arcus","argentum","argumentum","arguo","arma","armarium","aro","ars","articulus","artificiose","arto","arx","ascisco","ascit","asper","asperiores","aspernatur","aspicio","asporto","assentator","assumenda","astrum","at","atavus","ater","atque","atqui","atrocitas","atrox","attero","attollo","attonbitus","auctor","auctus","audacia","audax","audentia","audeo","audio","auditor","aufero","aureus","aurum","aut","autem","autus","auxilium","avaritia","avarus","aveho","averto","baiulus","balbus","barba","bardus","basium","beatae","beatus","bellicus","bellum","bene","beneficium","benevolentia","benigne","bestia","bibo","bis","blandior","blanditiis","bonus","bos","brevis","cado","caecus","caelestis","caelum","calamitas","calcar","calco","calculus","callide","campana","candidus","canis","canonicus","canto","capillus","capio","capitulus","capto","caput","carbo","carcer","careo","caries","cariosus","caritas","carmen","carpo","carus","casso","caste","casus","catena","caterva","cattus","cauda","causa","caute","caveo","cavus","cedo","celebrer","celer","celo","cena","cenaculum","ceno","censura","centum","cerno","cernuus","certe","certus","cervus","cetera","charisma","chirographum","cibo","cibus","cicuta","cilicium","cimentarius","ciminatio","cinis","circumvenio","cito","civis","civitas","clam","clamo","claro","clarus","claudeo","claustrum","clementia","clibanus","coadunatio","coaegresco","coepi","coerceo","cogito","cognatus","cognomen","cogo","cohaero","cohibeo","cohors","colligo","collum","colo","color","coma","combibo","comburo","comedo","comes","cometes","comis","comitatus","commemoro","comminor","commodi","commodo","communis","comparo","compello","complectus","compono","comprehendo","comptus","conatus","concedo","concido","conculco","condico","conduco","confero","confido","conforto","confugo","congregatio","conicio","coniecto","conitor","coniuratio","conor","conqueror","conscendo","consectetur","consequatur","consequuntur","conservo","considero","conspergo","constans","consuasor","contabesco","contego","contigo","contra","conturbo","conventus","convoco","copia","copiose","cornu","corona","corporis","corpus","correptius","corrigo","corroboro","corrumpo","corrupti","coruscus","cotidie","crapula","cras","crastinus","creator","creber","crebro","credo","creo","creptio","crepusculum","cresco","creta","cribro","crinis","cruciamentum","crudelis","cruentus","crur","crustulum","crux","cubicularis","cubitum","cubo","cui","cuius","culpa","culpo","cultellus","cultura","cum","cumque","cunabula","cunae","cunctatio","cupiditas","cupiditate","cupio","cuppedia","cupressus","cur","cura","curatio","curia","curiositas","curis","curo","curriculum","currus","cursim","curso","cursus","curto","curtus","curvo","custodia","damnatio","damno","dapifer","debeo","debilito","debitis","decens","decerno","decet","decimus","decipio","decor","decretum","decumbo","dedecor","dedico","deduco","defaeco","defendo","defero","defessus","defetiscor","deficio","defleo","defluo","defungo","degenero","degero","degusto","deinde","delectatio","delectus","delego","deleniti","deleo","delibero","delicate","delinquo","deludo","demens","demergo","demitto","demo","demonstro","demoror","demulceo","demum","denego","denique","dens","denuncio","denuo","deorsum","depereo","depono","depopulo","deporto","depraedor","deprecator","deprimo","depromo","depulso","deputo","derelinquo","derideo","deripio","deserunt","desidero","desino","desipio","desolo","desparatus","despecto","dicta","dignissimos","distinctio","dolor","dolore","dolorem","doloremque","dolores","doloribus","dolorum","ducimus","ea","eaque","earum","eius","eligendi","enim","eos","error","esse","est","et","eum","eveniet","ex","excepturi","exercitationem","expedita","explicabo","facere","facilis","fuga","fugiat","fugit","harum","hic","id","illo","illum","impedit","in","incidunt","infit","inflammatio","inventore","ipsa","ipsam","ipsum","iste","itaque","iure","iusto","labore","laboriosam","laborum","laudantium","libero","magnam","magni","maiores","maxime","minima","minus","modi","molestiae","molestias","mollitia","nam","natus","necessitatibus","nemo","neque","nesciunt","nihil","nisi","nobis","non","nostrum","nulla","numquam","occaecati","ocer","odio","odit","officia","officiis","omnis","optio","paens","pariatur","patior","patria","patrocinor","patruus","pauci","paulatim","pauper","pax","peccatus","pecco","pecto","pectus","pecus","peior","pel","perferendis","perspiciatis","placeat","porro","possimus","praesentium","provident","quae","quaerat","quam","quas","quasi","qui","quia","quibusdam","quidem","quis","quisquam","quo","quod","quos","ratione","recusandae","reiciendis","rem","repellat","repellendus","reprehenderit","repudiandae","rerum","saepe","sapiente","sed","sequi","similique","sint","sit","socius","sodalitas","sol","soleo","solio","solitudo","solium","sollers","sollicito","solum","solus","soluta","solutio","solvo","somniculosus","somnus","sonitus","sono","sophismata","sopor","sordeo","sortitus","spargo","speciosus","spectaculum","speculum","sperno","spero","spes","spiculum","spiritus","spoliatio","sponte","stabilis","statim","statua","stella","stillicidium","stipes","stips","sto","strenuus","strues","studio","stultus","suadeo","suasoria","sub","subito","subiungo","sublime","subnecto","subseco","substantia","subvenio","succedo","succurro","sufficio","suffoco","suffragium","suggero","sui","sulum","sum","summa","summisse","summopere","sumo","sumptus","sunt","supellex","super","suppellex","supplanto","suppono","supra","surculus","surgo","sursum","suscipio","suscipit","suspendo","sustineo","suus","synagoga","tabella","tabernus","tabesco","tabgo","tabula","taceo","tactus","taedium","talio","talis","talus","tam","tamdiu","tamen","tametsi","tamisium","tamquam","tandem","tantillus","tantum","tardus","tego","temeritas","temperantia","templum","tempora","tempore","temporibus","temptatio","tempus","tenax","tendo","teneo","tener","tenetur","tenuis","tenus","tepesco","tepidus","ter","terebro","teres","terga","tergeo","tergiversatio","tergo","tergum","termes","terminatio","tero","terra","terreo","territo","terror","tersus","tertius","testimonium","texo","textilis","textor","textus","thalassinus","theatrum","theca","thema","theologus","thermae","thesaurus","thesis","thorax","thymbra","thymum","tibi","timidus","timor","titulus","tolero","tollo","tondeo","tonsor","torqueo","torrens","tot","totam","totidem","toties","totus","tracto","trado","traho","trans","tredecim","tremo","trepide","tres","tribuo","tricesimus","triduana","tripudio","tristis","triumphus","trucido","truculenter","tubineus","tui","tum","tumultus","tunc","turba","turbo","turpis","tutamen","tutis","tyrannus","uberrime","ubi","ulciscor","ullam","ullus","ulterius","ultio","ultra","umbra","umerus","umquam","una","unde","undique","universe","unus","urbanus","urbs","uredo","usitas","usque","ustilo","ustulo","usus","ut","uter","uterque","utilis","utique","utor","utpote","utrimque","utroque","utrum","uxor","vaco","vacuus","vado","vae","valde","valens","valeo","valetudo","validus","vallum","vapulus","varietas","varius","vehemens","vel","velit","velociter","velum","velut","venia","veniam","venio","ventito","ventosus","ventus","venustas","ver","verbera","verbum","vere","verecundia","vereor","vergo","veritas","veritatis","vero","versus","verto","verumtamen","verus","vesco","vesica","vesper","vespillo","vester","vestigium","vestrum","vetus","via","vicinus","vicissitudo","victoria","victus","videlicet","video","viduo","vigilo","vigor","vilicus","vilis","vilitas","villa","vinco","vinculum","vindico","vinitor","vinum","vir","virga","virgo","viridis","viriliter","virtus","vis","viscus","vita","vitae","vitiosus","vitium","vito","vivo","vix","vobis","vociferor","voco","volaticus","volo","volubilis","voluntarius","volup","voluptas","voluptate","voluptatem","voluptates","voluptatibus","voluptatum","volutabrum","volva","vomer","vomica","vomito","vorago","vorax","voro","vos","votum","voveo","vox","vulariter","vulgaris","vulgivagus","vulgo","vulgus","vulnero","vulnus","vulpes","vulticulus","xiphias"];var $a={word:Oe$1},xe$1=$a;var eo={title:"English",code:"en",language:"en",endonym:"English",dir:"ltr",script:"Latn"},ze$1=eo;var Ve$1=['"Awaken, My Love!"',"(What's The Story) Morning Glory?","- Tragedy +","13 Reasons Why (Season 3)","21st Century Breakdown","30 De Febrero","432 Hz Deep Healing","5-Star","528 Hz Meditation Music","54+1","8 Mile","808s & Heartbreak","9 To 5 And Odd Jobs","A Beautiful Lie","A Day At The Races","A Day Without Rain","A Fever You Can't Sweat Out","A Gangsta's Pain","A Gift & A Curse","A Hard Day's Night","A Head Full Of Dreams","A Kind Of Magic","A Million Ways To Murder","A Moment Apart","A Song For Every Moon","A Thousand Suns","A Winter Romance","ABBA","AI YoungBoy","AJ Tracey","Act One","After Hours","Agent Provocateur","All About You","All I Know So Far: Setlist","All Or Nothing","All Out","All Over The Place","All Stand Together","All The Lost Souls","All The Things I Never Said","All Things Must Pass","Alleen","Alright, Still","Alta Suciedad","America","American Heartbreak","American Teen","And Justice For None","Animal Songs","Another Friday Night","Anything Goes","Ao Vivo Em S\xE3o Paulo","Ao Vivo No Ibirapuera","Apricot Princess","Aqui E Agora (Ao Vivo)","Arcane League Of Legends","Ardipithecus","Aretha Now","Around The Fur","Arrival","Artist 2.0","As She Pleases","Ascend","Ashlyn","Astro Lounge","At Night, Alone.","At. Long. Last. ASAP","Atlas","Audioslave","Aura","Austin","Awake","Away From The Sun","Ayayay!","Baby On Baby","Back For Everything","Back From The Edge","Back In Black","Back To Black","Back To The Game","Bad","Bah\xEDa Ducati","Baila","Barbie The Album","Battleground","Bayou Country","Bcos U Will Never B Free","Be","Be Here Now","Beautiful Mind","Beautiful Thugger Girls","Beautiful Trauma","Beauty And The Beast","Beggars Banquet","Being Funny In A Foreign Language","Berlin Lebt","Berry Is On Top","Best White Noise For Baby Sleep - Loopable With No Fade","Big Baby DRAM","Bigger, Better, Faster, More!","Billy Talent II","Black Star Elephant","Blackout","Blank Face LP","Bleach","Blizzard Of Ozz","Blonde","Blood Sugar Sex Magik","Bloom","Blowin' Your Mind!","Blu Celeste","Blue","Blue Banisters","Blue Hawaii","Blue Neighbourhood","Bluebird Days","Bobby Tarantino","Bobby Tarantino II","Bon Iver","Born Pink","Born To Run","Brand New Eyes","Break The Cycle","Breakfast In America","Breakthrough","Brett Young","Bridge Over Troubled Water","Bright: The Album","Brol","Buds","Buena Vista Social Club","Built On Glass","Bury Me At Makeout Creek","Busyhead","By The Way","CB6","CNCO","California Sunrise","Californication","Call Me Irresponsible","Calm","Camino Palmero","Camp","Caracal","Carbon Fiber Hits","Carnival","Carry On","Cartel De Santa","Certified Lover Boy","Chaaama","Chama Meu Nome","Chapter 1: Snake Oil","Chapter 2: Swamp Savant","Chapter One","Charlie's Angels","Cherry Bomb","Chief","Chocolate Factory","Chosen","Chris Brown","Christina Aguilera","Chromatica","Church","City Of Evil","Clandestino","Clouds","Coco","Collision Course","Colour Vision","Combat Rock","Come Around Sundown","Come Away With Me","Come Home The Kids Miss You","Come What(ever) May","Commando","Common Sense","Communion","Conditions","Confident","Confrontation","Control The Streets, Volume 2","Corinne Bailey Rae","Costello Music","Cottonwood","Covers, Vol. 2","Cozy Tapes Vol. 2: Too Cozy","Crash Talk","Crazy Love","Crazysexycool","Crowded House","Cruisin' With Junior H","Culture","Current Mood","DS2","Dale","Danger Days: The True Lives Of The Fabulous Killjoys","Dangerous Woman","Dangerous: The Double Album","Dark Horse","Day69","Daydream","De Fiesta","De Viaje","DeAnn","Death Race For Love","Delirium","Delta","Demidevil","Depression Cherry","Descendants","Desgenerados Mixtape","Destin","Destiny Fulfilled","Desvelado","Detroit 2","Dex Meets Dexter","Dharma","Die A Legend","Different World","Dig Your Roots","Digital Druglord","Dirt","Disclaimer I / II","Discovery","Disraeli Gears","Disumano","Dizzy Up The Girl","Don't Play That Song","Donda","Donde Quiero Estar","Doo-Wops & Hooligans","Down The Way","Dr. Feelgood","Dream Your Life Away","Dreaming Out Loud","Drip Harder","Drive","Drones","Dropped Outta College","Drowning","Dua Warna Cinta","Dulce Beat","Dusty In Memphis","Dutty Rock","Dying To Live","ENR","East Atlanta Love Letter","Editorial","Edna","El Abayarde","El Amor En Los Tiempos Del Perreo","El Camino","El Comienzo","El Dorado","El Karma","El Mal Querer","El Malo","El Trabajo Es La Suerte","El Viaje De Copperpot","Electric Ladyland","Emotion","En Tus Planes","Endless Summer Vacation","Enter The Wu-Tang (36 Chambers)","Equals (=)","Estrella","Euphoria","Europop","Evermore","Every Kingdom","Everyday Life","Evolve","Expectations","Face Yourself","Facelift","Fallin'","Fancy You","Fantas\xEDa","Favourite Worst Nightmare","Fear Of The Dark","Fearless","Feel Something","Feels Like Home","Femme Fatale","Ferxxocalipsis","Fifty Shades Darker","Fifty Shades Freed","Fifty Shades Of Grey","Final (Vol.1)","Finding Beauty In Negative Spaces","Fine Line","First Impressions Of Earth","First Steps","Five Seconds Flat","Folklore","For Emma, Forever Ago","Forajido EP 1","Forever","Forever Young","Formula Of Love: O+T=<3","Free 6lack","Freudian","Frozen II","Full Moon Fever","Funhouse","Funk Wav Bounces Vol.1","Future History","FutureSex/LoveSounds","Fuzzybrain","Gallery","Gangsta's Paradise","Gemini","Gemini Rights","Generationwhy","Get A Grip","Get Up","Gettin' Old","Girl","Gladiator","Glisten","Globalization","Gloria","Glory Days","God's Project","Gold Skies","Golden","Good Evening","Good Thing","Goodbye Yellow Brick Road","Gossip Columns","Got Your Six","Graceland","Graduation","Grand Champ","Grandson, Vol. 1","Green River","Guerra","Ha*Ash Primera Fila - Hecho Realidad","Haiz","Hamilton","Happy Endings","Harry Styles","Hasta La Ra\xEDz","Hatful Of Hollow","Head In The Clouds","Heard It In A Past Life","Heart Shaped World","Heartbeat City","Heartbreak On A Full Moon / Cuffing Season - 12 Days Of Christmas","Heaven Or Hell","Heaven knows","Hellbilly Deluxe","Hellboy","Help!","Her Loss","Here Comes The Cowboy","Hey World","High School Musical","High Tide In The Snake's Nest","Historias De Un Capricornio","Hndrxx","Hombres G (Devu\xE9lveme A Mi Chica)","Homerun","Homework","Hot Fuss","Hot Pink","Hot Sauce / Hello Future","Hot Space","Hotel Diablo","Houses Of The Holy","How Big, How Blue, How Beautiful","How I'm Feeling","How To Be Human","How To Save A Life","How To: Friend, Love, Freefall","Hozier","Human","Huncho Jack, Jack Huncho","Hunter Hayes","Hysteria","I Am...Sasha Fierce","I Can't Handle Change","I Met You When I Was 18. (The Playlist)","I Never Liked You","I Never Loved A Man The Way I Love You","I See You","I Think You Think Too Much Of Me","I Used To Know Her","I Used To Think I Could Fly","I'm Comin' Over","Ich & Keine Maske","If You Can Believe Your Eyes & Ears","Il Ballo Della Vita","Ill Communication","Imagination & The Misfit Kid","Imagine","Immortalized","In A Perfect World...","In Colour","In My Own Words","In Rainbows","In Return","In The Lonely Hour","Infest","Innuendo","Inter Shibuya - La Mafia","Interstellar","Is This It","It Was Written","It's Not Me, It's You","It's Only Me","Ivory","JackBoys","Jamie","Jazz","Jibrail & Iblis","Jordi","Jordin Sparks","Jose","Just As I Am","Just Cause Y'all Waited 2","Just Like You","Justified","K-12 / After School","K.I.D.S.","K.O.","K.O.B. Live","KG0516","KOD","Kane Brown","Kid A","Kid Krow","Kids See Ghosts","Kids in Love","Kinks (You Really Got Me)","Know-It-All","Konvicted","Kring","LANY","LM5","La Criatura","La Flaca","La Melodia De La Calle","La Revolucion","Lady Lady","Lady Wood","Langit Mong Bughaw","Las Que No Iban A Salir","Last Day Of Summer","Last Year Was Complicated","Layers","Layover","Lazarus","Led Zeppelin","Left Of The Middle","Leftoverture","Legends Never Die","Let's Skip To The Wedding","Let's Talk About Love","Licensed To Ill","Life In Cartoon Motion","Life Thru A Lens","Lifelines","Like..?","Lil Big Pac","Lil Boat","Lil Boat 2","Lil Boat 3.5","Lil Kiwi","Lil Pump","Limon Y Sal","Listen Without Prejudice","Little Voice","Live On Red Barn Radio I & II","Lo Que And\xE1bamos Buscando","Lofi Fruits Music 2021","London Calling","Los Campeones Del Pueblo","Los Extraterrestres","Los Favoritos 2","Lost","Lost In Love","Loud","Love Sick","Love Story","Love Stuff","Love Yourself: Tear","Lover","Luca Brasi 2: Gangsta Grillz","Lust For Life","Luv Is Rage","M!ssundaztood","Ma Fleur","Made In Lagos","Mafia Bidness","Magazines Or Novels","Mainstream Sellout","Majestic","Make It Big","Make Yourself","Making Mirrors","Mamma Mia! Here We Go Again","Man Of The Woods","Manic","Me And My Gang","Meduza","Meet The Orphans","Meet The Woo","Melim","Mellon Collie And The Infinite Sadness","Melly vs. Melvin","Memories...Do Not Open","Menagerie","Midnights","Minecraft - Volume Alpha","Minutes To Midnight","Mix Pa Llorar En Tu Cuarto","Modo Avi\xF3n","Monkey Business","Mono.","Montana","Montevallo","Moosetape","Morning View","Motivan2","Moving Pictures","Mr. Davis","Mr. Misunderstood","Mulan","Mura Masa","Music From The Edge Of Heaven","Music Of The Sun","My House","My Kinda Party","My Krazy Life","My Liver Will Handle What My Heart Can't","My Moment","My Own Lane","My Turn","My Worlds","Na Praia (Ao Vivo)","Nakamura","Nation Of Two","Navegando","Need You Now","Neon Future III","Neotheater","Never Trust A Happy Song","New English","News Of The World","Nicole","Night & Day","Nimmerland","Nimrod","Nine Track Mind","No Angel","No Me Pidas Perd\xF3n","No More Drama","No Protection","No Strings Attached","No Time To Die","Nobody Is Listening","Non Stop Erotic Cabaret","Non-Fiction","Northsbest","Nostalgia","Nostalgia, Ultra","Notes On A Conditional Form","Now Or Never","O Embaixador (Ao Vivo)","O My Heart","OK Computer","Ocean","Ocean Avenue","Ocean Eyes","Odisea","Oh My My","Oh, What A Life","On The 6","One In A Million","One More Light","One Of These Nights","Open Up And Say...Ahh!","Ordinary Man","Origins","Out Of The Blue","Over It","OzuTochi","PTSD","Pa Las Baby's Y Belikeada","Pa Que Hablen","Pa' Luego Es Tarde","Pa' Otro La 'O","Pablo Honey","Pain Is Love","Pain Is Temporary","Painting Pictures","Palmen Aus Plastik 2","Para Mi Ex","Para Siempre","Partners In Crime","Pawn Shop","Pegasus / Neon Shark VS Pegasus","Pet Sounds","Piece By Piece","Pier Pressure","Pineapple Sunrise","Piseiro 2020 Ao Vivo","Planet Pit","Plans","Play Deep","Playa Saturno","Por Primera Vez","Por Vida","Positions","Post Human: Survival Horror","Poster Girl","Prazer, Eu Sou Ferrugem (Ao Vivo)","Pretty Girls Like Trap Music","Pretty. Odd.","Prince Royce","Prisma","Prometo","Providence","Puberty 2","Punisher","Purgatory","Purple Rain","Que Bendici\xF3n","Queen Of The Clouds","Quiero Volver","R&G (Rhythm & Gangsta): The Masterpiece","Raise!","Ransom 2","Rapunzel","Rare","Re Mida","Ready To Die","Realer","Rebelde","Reclassified","Recovery","Recuerden Mi Estilo","Reggatta De Blanc","Regulate\u2026 G Funk Era","Reik","Reise, Reise","Relapse","Relaxing Piano Lullabies And Natural Sleep Aid For Baby Sleep Music","Religiously. The Album.","Replay","Results May Vary","Revenge","Revolve","Revolver","Ricky Martin","Rien 100 Rien","Ripcord","Rise And Fall, Rage And Grace","Rise Of An Empire","Robin Hood: Prince Of Thieves","Rock N Roll Jesus","Romance","Romances","Ronan","Royal Blood","Rumours","Sad Boyz 4 Life II","San Lucas","Santana World","Saturation III","Sauce Boyz","Savage Mode","Saxobeats","Scarlet","Schwarzes Herz","Seal The Deal & Let's Boogie","Section.80","Segundo Romance","Sehnsucht","Shake The Snow Globe","Shang-Chi And The Legend Of The Ten Rings: The Album","Sheer Heart Attack","Shiesty Season","Shock Value","Shoot For The Stars, Aim For The Moon","Signed Sealed And Delivered","Signos","Silent Alarm","Simplemente Gracias","Sin Bandera","Sing Me A Lullaby, My Sweet Temptation","Sinner","Sirio","Sit Still, Look Pretty","Skin","Slowhand","Smash","Smithereens","Snow Cougar","Social Cues","Some Girls","Song Hits From Holiday Inn","Songs For Dads","Songs For The Deaf","Songs For You, Truths For Me","Songs In The Key Of Life","Souled Out","Sounds Of Silence","Soy Como Quiero Ser","Speak Now","Speak Your Mind","Speakerboxxx/The Love Below","Spider-Man: Into The Spider-Verse","Split Decision","Square Up","SremmLife","Starboy","Stay +","Stay Dangerous","Staying At Tamara's","Steppenwolf","Stick Season","Still Bill","Straight Outta Compton","Strange Trails","Stronger","Suavemente","Sublime","Suck It and See","Sucker","Sue\xF1os","Sugar","Summer Forever","Summer,","Sunset Season","Sunshine On Leith","Surfer Rosa","Sweet Talker","SweetSexySavage","System Of A Down","TA13OO","Talk That Talk","Talking Heads: 77","Tangled Up","Tango In The Night","Taxi Driver","Taylor Swift","Tell Me It's Real","Ten","Ten Summoner's Tales","Terra Sem Cep (Ao Vivo)","Terral","Testing","Tha Carter III","Thank Me Later","That's Christmas To Me","The Academy","The Adventures Of Bobby Ray","The Album","The Andy Williams Christmas Album","The Aviary","The Balcony","The Battle Of Los Angeles","The Beatles (White Album)","The Beginning","The Better Life","The Big Day","The Book","The Breakfast Club","The Cars","The Colour And The Shape","The Death Of Peace Of Mind","The Diary Of Alicia Keys","The Documentary","The Emancipation Of Mimi","The Eminem Show","The End Of Everything","The Final Countdown","The Forever Story","The Foundation","The Goat","The Golden Child","The Good Parts","The Greatest Showman: Reimagined","The Green Trip","The Hardest Love","The Head And The Heart","The Human Condition","The Infamous","The Lady Killer","The Last Don II","The Lion King","The Lockdown Sessions","The London Sessions","The Lord Of The Rings: The Fellowship Of The Ring","The Lost Boy","The Magic Of Christmas / The Christmas Song","The Marshall Mathers LP","The Martin Garrix Collection","The Melodic Blue","The Mockingbird & The Crow","The Pains Of Growing","The Papercut Chronicles","The Perfect Luv Tape","The Pinkprint","The Predator","The Queen Is Dead","The ReVe Festival: Finale","The Rise And Fall Of Ziggy Stardust And The Spiders From Mars","The Rising Tied","The River","The Stone Roses","The Story Of Us","The Stranger","The Sufferer & The Witness","The Sun's Tirade","The Temptations Sing Smokey","The Time Of Our Lives","The Way It Is","The Wonderful World Of Sam Cooke","The Writing's On The Wall","The Young And The Hopeless","Therapy","Therapy Session","There Is More (Live)","There Is Nothing Left To Lose","These Things Happen","Third Eye Blind","This Is Me...Then","This Unruly Mess I've Made","Threat to Survival","Thrill Of The Chase","Time","Timelezz","To Let A Good Thing Die","To Pimp A Butterfly","Toast To Our Differences","Todos Os Cantos, Vol. 1 (Ao Vivo)","Too Hard","Torches X","Total Xanarchy","Toto IV","Toulouse Street","Tourist History","Toxicity","Tragic Kingdom","Tranquility Base Hotel & Casino","Traumazine","Traveler","Tres Hombres","Trip At Knight","Tron: Legacy","True Blue","True Colors","Trustfall","Tu Veneno Mortal","Tudo Em Paz","Ubuntu","Ugly Is Beautiful","Ultra 2021","Una Mattina","Unbroken","Uncovered","Under Pressure","Unsponsored Content","Unstoppable","Unwritten","Urban Flora","Urban Hymns","Use Your Illusion I","Veneer","Versions Of Me","Vibes","Vice Versa","Vices & Virtues","Victory","Vida","Viejo Marihuano","Visual\xEDzate","Walk Away","Walk Me Home...","Watch The Throne","Wave","We Broke The Rules","We Love You Tecca","We Love You Tecca 2","Weezer (Green Album)","Welcome To The Madhouse","Westlife","What A Time To Be Alive","What Do You Think About The Car?","What Is Love?","What Makes You Country","What Separates Me From You","What You See Is What You Get / What You See Ain't Always What You Get","When It's Dark Out","When We All Fall Asleep, Where Do We Go?","Where The Light Is","While The World Was Burning","White Pony","Whitney","Who Really Cares","Who You Are","Who's Next","Wide Open","Wilder Mind","Wildfire","Willy And The Poor Boys","Wings / You Never Walk Alone","Wish","Wish You Were Here","Without Warning","Wonder","X&Y","XOXO","Y Que Quede Claro","YBN: The Mixtape","Yo Creo","You Will Regret","Youngblood","Younger Now","Youth"];var Ye$1=["$NOT","$uicideboy$","(G)I-DLE","*NSYNC","2 Chainz","21 Savage","6LACK","? & The Mysterians","A Boogie Wit da Hoodie","A Taste of Honey","A Tribe Called Quest","A-Ha","ABBA","AC/DC","AJ Tracey","ATEEZ","Ace of Base","Adele","Ado","Aerosmith","Agust D","Aitana","Al Dexter & his Troopers","Al Green","Al Jolson","Al Martino","Alan Jackson","Alannah Myles","Alec Benjamin","Alejandro Sanz","Alesso","Alfredo Olivas","Ali Gatie","Alice In Chains","Alina Baraz","All Time Low","All-4-One","All-American Rejects","Alok","America","American Quartet","Amii Stewart","Amitabh Bhattacharya","Ana Castela","Anderson .Paak","Andy Grammer","Angus & Julia Stone","Anirudh Ravichander","Anita Ward","Anitta","Anton Karas","Anuel AA","Arcade Fire","Archie Bell & The Drells","Archies","Aretha Franklin","Arizona Zervas","Armin van Buuren","Arthur Conley","Artie Shaw","Asake","Asees Kaur","Association","Atif Aslam","Audioslave","Aventura","Avril Lavigne","Aya Nakamura","B J Thomas","B.o.B","BLACKPINK","BONES","BROCKHAMPTON","BTS","Baby Keem","Bachman-Turner Overdrive","Backstreet Boys","Bad Bunny","Badshah","Bailey Zimmerman","Banda El Recodo","Barbra Streisand","Barry White","Bazzi","Bebe Rexha","Becky G","Becky Hill","Bee Gees","Ben Bernie","Ben Howard","Ben Selvin","Berlin","Bessie Smith","Bethel Music","Bette Midler","Beyonce","Bibi Blocksberg","Bibi und Tina","BigXthaPlug","Bill Doggett","Bill Haley & his Comets","Bill Withers","Billy Davis Jr","Billy Joel","Billy Paul","Billy Preston","Billy Swan","Birdy","Bizarrap","Blake Shelton","Blur","Bob Marley & The Wailers","Bob Seger","Bobby Darin","Bobby Lewis","Bobby McFerrin","Bobby Vinton","Boney M.","Bonez MC","Bonnie Tyler","Booba","Boston","BoyWithUke","Boyce Avenue","Bradley Cooper","Bread","Brent Faiyaz","Brett Young","Bring Me The Horizon","Britney Spears","Brooks & Dunn","Bruce Channel","Bruno & Marrone","Bryan Adams","Bryce Vine","Buddy Holly","Burna Boy","C. Tangana","CKay","CRO","Camilo","Capital Bra","Captain & Tennille","Cardi B","Carin Leon","Carlos Vives","Carly Simon","Carpenters","Cavetown","Celine Dion","Central Cee","Chaka Khan","Champs","Charlie Rich","Chayanne","Cheat Codes","Cher","Chic","Chicago","Chris Brown","Chris Isaak","Chris Young","Christina Aguilera","Christina Perri","Christopher Cross","Chuck Berry","Ciara","Cigarettes After Sex","Cliff Edwards (Ukelele Ike)","Cody Johnson","Colbie Caillat","Colby O'Donis","Cole Swindell","Coleman Hawkins","Contours","Coolio","Count Basie","Cris Mj","Culture Club","Cyndi Lauper","D-Block Europe","DAY6","DJ Khaled","DJ Luian","DJ Nelson","DMX","DNCE","DaVido","Dadju","Daft Punk","Dan + Shay","Daniel Powter","Danny Ocean","Darius Rucker","Dave","David Bowie","David Guetta","Daya","Dean Martin","Deee-Lite","Deep Purple","Deftones","Demi Lovato","Dennis Lloyd","Denzel Curry","Dermot Kennedy","Desiigner","Devo","Dewa 19","Dexys Midnight Runners","Diddy","Dido","Die drei !!!","Diego & Victor Hugo","Diljit Dosanjh","Dimitri Vegas & Like Mike","Dinah Shore","Dionne Warwick","Dire Straits","Disclosure","Dixie Cups","Doja Cat","Dolly Parton","Don Diablo","Don Henley","Don McLean","Don Omar","Donna Summer","Donovan","Dr. Dre","Drake","Dreamville","Dua Lipa","EMF","ENHYPEN","Earth, Wind & Fire","Ed Sheeran","Eddie Cantor","Eddie Cochran","Eddy Howard","Edgar Winter Group","Edwin Hawkins Singers","Edwin Starr","El Alfa","Eladio Carrion","Electric Light Orchestra","Elevation Worship","Ella Henderson","Ellie Goulding","Elton John","Elvis Presley","Empire of the Sun","En Vogue","Enrique Iglesias","Eslabon Armado","Ethel Waters","Etta James","Evanescence","Exile","Extreme","Faith Hill","Fall Out Boy","Fanny Brice","Farruko","Fats Domino","Fats Waller","Feid","Felix Jaehn","Fergie","Fetty Wap","Fiersa Besari","Fifth Harmony","Fine Young Cannibals","Five Finger Death Punch","Fleetwood Mac","Flo-Rida","Florence + The Machine","Flume","Foo Fighters","Foreigner","Foster The People","Four Aces","Frank Ocean","Frank Sinatra","Frankie Avalon","Frankie Valli","Fred Astaire","Freda Payne","Freddie Dredd","Freddy Fender","French Montana","Fuerza Regida","Fujii Kaze","Future","G-Eazy","Garfunkel and Oates","Gary Lewis & The Playboys","Gary Numan","Gene Autry","Gene Chandler","Gene Vincent","George Michael","George Strait","Gera MX","Ghost","Ghostemane","Gigi D'Agostino","Gladys Knight & The Pips","Glass Animals","Glee Cast","Gloria Gaynor","Godsmack","Gorillaz","Gotye","Grand Funk Railroad","Green Day","Grouplove","Grupo Firme","Grupo Marca Registrada","Gryffin","Gucci Mane","Guess Who","Gunna","Gusttavo Lima","Guy Mitchell","Gwen Stefani","Gzuz","H.E.R.","HARDY","Hailee Steinfeld","Halsey","Hans Zimmer","Harris Jayaraj","Harry Chapin","Harry James","Harry Nilsson","Harry Styles","Hayley Williams","Herb Alpert","Herman's Hermits","Hillsong UNITED","Hillsong Worship","Hollywood Undead","Honey Cone","Hoobastank","Hues Corporation","I Prevail","ITZY","IVE","Ice Cube","Ice Spice","Iggy Azalea","Imagine Dragons","Incubus","Internet Money","Isaac Hayes","J Geils Band","J. Cole","JAY-Z","JJ Lin","JP Saxe","JVKE","Jack Harlow","Jack Johnson","Jackie Wilson","Jacquees","James Arthur","James Brown","James TW","James Taylor","Jamie Foxx","Janet Jackson","Janis Joplin","Jason Aldean","Jason Mraz","Jay Chou","Jay Sean","Jay Wheeler","Jaymes Young","Jean Knight","Jeezy","Jennifer Lopez","Jennifer Warnes","Jeremih","Jeremy Zucker","Jerry Lee Lewis","Jerry Murad's Harmonicats","Jess Glynne","Jessie J","Jewel","Jimi Hendrix","Jimin","Jimmie Rodgers","Jimmy Dean","Jo Stafford","Joan Jett & The Blackhearts","Joao Gilberto","Joel Corry","John Fred & The Playboy Band","John Legend","John Mayer","John Williams","Johnnie Ray","Johnnie Taylor","Johnny Cash","Johnny Horton","Johnny Mathis","Johnny Mercer","Johnny Nash","Joji","Jon Bellion","Jonas Blue","Jonas Brothers","Joni James","Jorja Smith","Juan Gabriel","Juan Luis Guerra 4.40","Juanes","Juice Newton","Julia Michaels","Justin Bieber","Justin Quiles","KALEO","KAROL G","KAYTRANADA","KK","KSI","KYLE","Kacey Musgraves","Kane Brown","Kanye West","Karan Aujla","Kate Smith","Katy Perry","Kay Kyser","Ke$ha","Kehlani","Kelly Clarkson","Kenny Chesney","Kenny Loggins","Kenny Rogers","Kenshi Yonezu","Kenya Grace","Kevin Gates","Key Glock","Khalid","Kim Carnes","Kim Petras","Kimbra","Kina","King Gnu","Kings of Leon","Kingsmen","Kitty Kallen","Kodak Black","Kodaline","Kollegah","Kool & The Gang","Kungs","Kygo","Kylie Minogue","LE SSERAFIM","LISA","LMFAO","LUDMILLA","La Adictiva Banda San Jos\xE9 de Mesillas","La Oreja de Van Gogh","Labrinth","Lady Antebellum","Lady GaGa","Lainey Wilson","Lana Del Rey","Latto","Lauryn Hill","Lauv","League of Legends","Lee Brice","Leon Bridges","Leona Lewis","Lesley Gore","Leslie Odom Jr.","Liam Payne","Lifehouse","Lil Baby","Lil Dicky","Lil Durk","Lil Mosey","Lil Nas X","Lil Pump","Lil Skies","Lil Tjay","Lil Uzi Vert","Lil Yachty","Lil' Kim","Lil' Wayne","Lin-Manuel Miranda","Linkin Park","Lionel Richie","Lipps Inc","Lisa Loeb","Little Peggy March","Little Richard","Lofi Fruits Music","Lord Huron","Los Del Rio","Los Dos Carnales","Los Lobos","Los Temerarios","Los Tigres Del Norte","Los Tucanes De Tijuana","Lou Reed","Loud Luxury","Louis Jordan","Louis Tomlinson","Love Unlimited","Lovin' Spoonful","Luan Santana","Luciano","Luis Miguel","Luis R Conriquez","Lulu","Lunay","Lupe Fiasco","M","MAX","MC Hammer","MC Ryan SP","MKTO","Mabel","Machine Gun Kelly","Madison Beer","Madonna","Mahalini","Major Lazer","Mambo Kingz","Maneskin","Marco Antonio Sol\xEDs","Margaret Whiting","Maria Becerra","Mario","Mario Lanza","Mark Ronson","Maroon 5","Marshmello","Martin Garrix","Mary Ford","Mary J Blige","Mary J. Blige","Mary Wells","Matoma","Mau y Ricky","Meek Mill","Megadeth","Melanie","Melanie Martinez","Melendi","Men At Work","Metro Boomin","Michael Bubl\xE9","Michael Jackson","Michael McDonald","Michael Sembello","Miguel","Mike Posner","Miley Cyrus","Milky Chance","Minnie Riperton","Miracle Tones","Miranda Lambert","Mohit Chauhan","Mon Laferte","Moneybagg Yo","Monsta X","Mora","Morad","Morat","Mother Mother","Motley Crue","Ms. Lauryn Hill","Mumford & Sons","Muse","Mya","Myke Towers","NCT 127","NCT DREAM","NEFFEX","Nadin Amizah","Nancy Sinatra","Nat King Cole","Nate Smith","Natti Natasha","Nayer","Neil Diamond","Neil Sedaka","Nekfeu","Nelly","New Vaudeville Band","Next","Nickelback","Nicki Minaj","Nicki Nicole","Nicky Jam","Nina Simone","Ninho","Nipsey Hussle","Nirvana","Niska","No Doubt","Norah Jones","Normani","OMI","ONE OK ROCK","Oasis","Official HIGE DANdism","Offset","Old Dominion","Oliver Heldens","Olivia Rodrigo","Omah Lay","One Direction","Otis Redding","OutKast","Owl City","P Diddy","P!nk","PLK","PNL","Pamungkas","Passenger","Pat Boone","Patsy Cline","Patti LaBelle","Patti Page","Paul & Paula","Paul Revere & the Raiders","Paul Robeson","Paul Russell","Paul Whiteman","Paula Abdul","Peaches & Herb","Pearl Jam","Pee Wee Hunt","Pee Wee King","Pentatonix","Percy Faith","Percy Sledge","Peso Pluma","Peter Cetera","Peter Gabriel","Peter, Paul & Mary","Pharrell Williams","Pierce The Veil","Pineapple StormTv","Pink Floyd","Pink Sweat$","Piso 21","Pitbull","Plan B","Player","Polo G","Pop Smoke","Portugal. The Man","Pouya","Prince","Prince Royce","Pusha T","Quality Control","Queen","Quinn XCII","R. Kelly","RAF Camora","RAYE","REM","REO Speedwagon","Radiohead","Rag'n'Bone Man","Rage Against The Machine","Rahat Fateh Ali Khan","Rainbow Kitten Surprise","Rammstein","Rauw Alejandro","Ray Charles","Ray Parker Jr","Ray Stevens","Red Foley","Red Hot Chili Peppers","Red Velvet","Regard","Regina Belle","Reik","Rels B","Rema","Ricardo Arjona","Rich The Kid","Rick Astley","Rick Dees & his Cast of Idiots","Rick Ross","Rick Springfield","Ricky Martin","Ricky Nelson","Rihanna","Rita Ora","Ritchie Valens","Rizky Febian","Rob Thomas","Roberta Flack","Robin Schulz","Robin Thicke","Rod Stewart","Rod Wave","Roddy Ricch","Roger Miller","Romeo Santos","Rosemary Clooney","Roxette","Roy Acuff","Roy Orbison","Rudimental","Ruel","Ruth B.","Ryan Lewis","SCH","SEVENTEEN","SWV","Sabaton","Sabrina Carpenter","Sachet Tandon","Sachin-Jigar","Sade","Sam Cooke","Sam Feldt","Sam Hunt","Sam Smith","Sam The Sham & The Pharaohs","Sammy Davis Jr","Sammy Kaye","Santana","Sasha Alex Sloan","Savage Garden","Saweetie","Scorpions","Sean Kingston","Sean Paul","Sebastian Yatra","Sech","Seeb","Sezen Aksu","Sfera Ebbasta","Shaggy","Shania Twain","Shawn Mendes","Sheena Easton","Shinedown","Shubh","Sia","Sid Sriram","Sidhu Moose Wala","Silk","Silver Convention","Simon & Garfunkel","Sinead O'Connor","Sir Mix-a-Lot","Sister Sledge","Ski Mask The Slump God","Skillet","Skrillex","Sleeping At Last","Smokey Robinson","Snoop Dogg","Snow Patrol","Soda Stereo","Sonu Nigam","Sophie Ellis-Bextor","Spencer Davis Group","Spice Girls","Stan Getz","Starland Vocal Band","Stephen Sanchez","Steve Aoki","Steve Lacy","Steve Winwood","Stevie B","Sting","Stormzy","Strawberry Alarm Clock","Stray Kids","Stromae","Sublime","Sum 41","Summer Walker","Supertramp","Survivor","Swedish House Mafia","System Of A Down","T-Pain","T.I.","TAEYEON","TKKG","TLC","TOMORROW X TOGETHER","TOTO","TWICE","Tag Team","Tainy","Tammi Terrell","Tanishk Bagchi","Tate McRae","Taylor Swift","Tears For Fears","Tems","Tennessee Ernie Ford","Terence Trent D'Arby","Teresa Brewer","Terry Jacks","The Ames Brothers","The Animals","The B52s","The Bangles","The Beatles","The Black Eyed Peas","The Black Keys","The Box Tops","The Chainsmokers","The Chiffons","The Chordettes","The Clash","The Coasters","The Commodores","The Cowsills","The Cranberries","The Crew-Cuts","The Cure","The Detroit Spinners","The Diamonds","The Doobie Brothers","The Doors","The Drifters","The Emotions","The Eurythmics","The Fireballs","The Flamingos","The Foundations","The Four Seasons","The Fray","The Game","The Go Gos","The Goo Goo Dolls","The Head And The Heart","The Hollies","The Ink Spots","The Isley Brothers","The Jackson 5","The Kid LAROI","The Killers","The Kingston Trio","The Kooks","The Lemon Pipers","The Living Tombstone","The Lumineers","The Mamas & The Papas","The Marvelettes","The McCoys","The Mills Brothers","The Miracles","The Monkees","The Moody Blues","The National","The Neighbourhood","The Notorious B.I.G.","The O'Jays","The Offspring","The Osmonds","The Partridge Family","The Penguins","The Pet Shop Boys","The Platters","The Righteous Brothers","The Rolling Stones","The Ronettes","The Score","The Script","The Seekers","The Shangri-Las","The Smashing Pumpkins","The Staple Singers","The Strokes","The Supremes","The Temptations","The Turtles","The Vamps","The Verve","The Village People","The Weavers","The White Stripes","The Young Rascals","The Zombies","Thelma Houston","Thomas Rhett","Three Days Grace","Three Dog Night","Three Man Down","Timbaland","Timmy Trumpet","Toby Keith","Tom Jones","Tom Petty and the Heartbreakers","Tommy Dorsey","Tommy Edwards","Tommy James & the Shondells","Tone Loc","Toni Braxton","Topic","Tory Lanez","Tove Lo","Trevor Daniel","Trey Songz","Trippie Redd","Trueno","Tulsi Kumar","Tulus","Twenty One Pilots","Two Feet","Ty Dolla $ign","Tyga","Tyler Hubbard","U2","UB40","UZI","Ufo361","Upchurch","V","Vampire Weekend","Van McCoy","Van Morrison","Vance Joy","Vanessa Carlton","Vanessa Williams","Vera Lynn","Vernon Dalhart","Vicente Fernandez","Vishal-Shekhar","Volbeat","WILLOW","Wale","Wallows","Weezer","Wham!","Whitney Houston","Why Don't We","Wilbert Harrison","Wilson Phillips","Wiz Khalifa","Woody Guthrie","Wyclef Jean","XXXTENTACION","Xavi","YG","YNW Melly","YOASOBI","Yandel","Years & Years","Yeat","Yo Gotti","Young Dolph","Young Miko","Young Thug","YoungBoy Never Broke Again","Yung Gravy","Yuuri","Yuvan Shankar Raja","ZAYN","ZZ Top","Zac Brown Band","Zach Bryan","Zara Larsson","aespa","benny blanco","blink-182","d4vd","deadmau5","girl in red","gnash","iann dior","will.i.am"];var je$1=["Acid House","Acid Jazz","Acid Rock","Acoustic","Acoustic Blues","Afro-Pop","Afrobeat","Alt-Rock","Alternative","Ambient","American Trad Rock","Americana","Anime","Arena Rock","Art-Rock","Avant-Garde","Avant-Punk","Baladas y Boleros","Barbershop","Baroque","Bebop","Big Band","Black Metal","Blue Note","Bluegrass","Blues","Boogaloo","Bop","Bossa Nova","Bounce","Brazilian Funk","Breakbeat","Britpop","CCM","Cajun","Cantopop","Celtic","Celtic Folk","Chamber Music","Chant","Chanukah","Chicago Blues","Chicago House","Chicano","Children\u2019s Music","Chill","Choral","Christian","Christmas","Classical","Club","College Rock","Conjunto","Cool Jazz","Country","Crunk","Dance","Dancehall","Death Metal","Deep House","Delta Blues","Detroit Techno","Dirty South","Disco","Disney","Dixieland","Doo-wop","Downtempo","Dream Pop","Drill","Drinking Songs","Drone","Drum'n'bass","Dub","Dubstep","EDM","Early Music","East Coast Rap","Easter","Easy Listening","Eclectic","Electric Blues","Electro","Electronic","Electronica","Emo","Enka","Environmental","Ethio-jazz","Experimental","Experimental Rock","Flamenco","Folk","Folk-Rock","Forro","French Pop","Funk","Fusion","Gangsta Rap","Garage","German Folk","German Pop","Glam Rock","Gospel","Goth","Grime","Grindcore","Groove","Grunge","Hair Metal","Halloween","Happy","Hard Bop","Hard Dance","Hard Rock","Hardcore","Hardcore Punk","Hardcore Rap","Hardstyle","Healing","Heavy Metal","High Classical","Hip Hop","Holiday","Honky Tonk","House","IDM","Impressionist","Indie","Industrial","Instrumental","J-Dance","J-Idol","J-Pop","J-Punk","J-Rock","J-Ska","J-Synth","Jackin House","Jam Bands","Japanese Pop","Jazz","Jungle","K-Pop","Karaoke","Kayokyoku","Kids","Kitsch","Klezmer","Krautrock","Latin","Latin Jazz","Latin Rap","Local","Lounge","Lullabies","MPB","Mainstream Jazz","Malay","Mandopop","March","Mariachi","Mawwal","Medieval","Meditation","Metal","Metalcore","Minimal Techno","Minimalism","Modern","Motown","Mugham","Musicals","Musique Concr\xE8te","Nature","Neo-Soul","Nerdcore","New Acoustic","New Age","New Mex","New Wave","No Wave","Noise","Nordic","Novelty","OPM","Oi!","Old School Rap","Opera","Orchestral","Original Score","Outlaw Country","Pagode","Party","Piano","Polka","Pop","Pop Film","Pop Latino","Post Dubstep","Power Pop","Praise & Worship","Progressive House","Progressive Rock","Proto-punk","Psych Rock","Psychedelic","Punk","Punk Rock","Qawwali","Quiet Storm","R&B","Ragtime","Rainy Day","Rap","Reggae","Reggaeton","Regional Mexicano","Relaxation","Renaissance","Retro","Rock","Rockabilly","Rocksteady","Romance","Romantic","Roots Reggae","Roots Rock","SKA","Sad","Salsa","Samba","Second Line","Sertanejo","Shaabi","Shoegaze","Sleep","Smooth Jazz","Soft Rock","Soul","Soundtrack","Southern Gospel","Southern Rock","Space Rock","Stage And Screen","Steampunk","Summer","Surf","Swamp Pop","Swing","Synth Pop","Tango","Techno","Teen Pop","Tejano","Tex-Mex","Thanksgiving","Traditional","Trance","Trip Hop","Tropical","Underground Rap","Urban","Urban Cowboy","West Coast Rap","Western Swing","World","Worldbeat","Zydeco"];var qe$1=["(Everything I Do) I Do it For You","(Ghost) Riders in the Sky","(I Can't Get No) Satisfaction","(I've Got a Gal In) Kalamazoo","(I've Had) the Time of My Life","(It's No) Sin","(Just Like) Starting Over","(Let Me Be Your) Teddy Bear","(Put Another Nickel In) Music! Music! Music!","(Sexual) Healing","(Sittin' On) the Dock of the Bay","(They Long to Be) Close to You","(You Keep Me) Hangin' On","(You're My) Soul & Inspiration","(Your Love Keeps Lifting Me) Higher & Higher","12th Street Rag","1999","19th Nervous Breakdown","50 Ways to Leave Your Lover","9 to 5","96 Tears","A Boy Named Sue","A Hard Day's Night","A String of Pearls","A Thousand Miles","A Tree in the Meadow","A Whiter Shade of Pale","A Whole New World (Aladdin's Theme)","A Woman in Love","A-Tisket A-Tasket","ABC","Abracadabra","Ac-cent-tchu-ate the Positive","Addicted to Love","After You've Gone","Afternoon Delight","Again","Against All Odds (Take a Look At Me Now)","Ain't Misbehavin'","Ain't No Mountain High Enough","Ain't No Sunshine","Ain't That a Shame","Airplanes","All Along the Watchtower","All I Have to Do is Dream","All I Wanna Do","All My Lovin' (You're Never Gonna Get It)","All Night Long (All Night)","All Out of Love","All Shook Up","All You Need is Love","Alone","Alone Again (Naturally)","Always On My Mind","American Pie","American Woman","Angie","Another Brick in the Wall (part 2)","Another Day in Paradise","Another Night","Another One Bites the Dust","Apologize","April Showers","Aquarius/Let The Sunshine In","Are You Lonesome Tonight?","Arthur's Theme (Best That You Can Do)","As Time Goes By","At Last","At the Hop","Auf Wiederseh'n Sweetheart","Baby Baby","Baby Come Back","Baby Got Back","Baby Love","Baby One More Time","Bad","Bad Day","Bad Girls","Bad Moon Rising","Bad Romance","Baker Street","Ball of Confusion (That's What the World is Today)","Ballad of the Green Berets","Ballerina","Band On the Run","Band of Gold","Battle of New Orleans","Be Bop a Lula","Be My Baby","Be My Love","Beat It","Beautiful Day","Beauty & the Beast","Because I Love You (The Postman Song)","Because You Loved Me","Because of You","Before The Next Teardrop Falls","Begin the Beguine","Behind Closed Doors","Being With You","Believe","Ben","Bennie & the Jets","Besame Mucho","Best of My Love","Bette Davis Eyes","Big Bad John","Big Girls Don't Cry","Billie Jean","Bitter Sweet Symphony","Black Or White","Black Velvet","Blaze of Glory","Bleeding Love","Blue Suede Shoes","Blue Tango","Blueberry Hill","Blurred Lines","Body & Soul","Bohemian Rhapsody","Boogie Oogie Oogie","Boogie Woogie Bugle Boy","Boom Boom Pow","Born in the USA","Born to Be Wild","Born to Run","Boulevard of Broken Dreams","Brand New Key","Brandy (You're A Fine Girl)","Breaking Up is Hard to Do","Breathe","Bridge Over Troubled Water","Brother","Brother Louie","Brown Eyed Girl","Brown Sugar","Build Me Up Buttercup","Burn","Buttons & Bows","Bye","Bye Bye","Bye Bye Love","Caldonia Boogie (What Makes Your Big Head So Hard)","California Dreamin'","California Girls","Call Me","Call Me Maybe","Can You Feel the Love Tonight","Can't Buy Me Love","Can't Get Enough of Your Love","Can't Help Falling in Love","Candle in the Wind '97","Candy Man","Car Wash","Careless Whisper","Cars","Cat's in the Cradle","Cathy's Clown","Celebration","Centerfold","Chain of Fools","Chances Are","Change the World","Chapel of Love","Chattanooga Choo Choo","Chattanoogie Shoe-Shine Boy","Check On It","Cheek to Cheek","Cherish","Cherry Pink & Apple Blossom White","Cold","Colors of the Wind","Come On Eileen","Come On-a My House","Come Together","Coming Up","Cracklin' Rosie","Crazy","Crazy For You","Crazy Little Thing Called Love","Crazy in Love","Creep","Crimson & Clover","Crocodile Rock","Cry","Cry Like a Baby","Crying","Da Doo Ron Ron (When He Walked Me Home)","Dance to the Music","Dancing Queen","Dancing in the Dark","Dancing in the Street","Dardanella","Daydream Believer","December 1963 (Oh What a Night)","Delicado","Dilemma","Disco Duck","Disco Lady","Disturbia","Dizzy","Do That to Me One More Time","Do Wah Diddy Diddy","Do Ya Think I'm Sexy?","Do You Love Me?","Don't Be Cruel","Don't Fence Me In","Don't Go Breaking My Heart","Don't Leave Me This Way","Don't Let the Stars Get in Your Eyes","Don't Let the Sun Go Down On Me","Don't Speak","Don't Stop 'Til You Get Enough","Don't Worry Be Happy","Don't You (Forget About Me)","Don't You Want Me","Doo Wop (That Thing)","Down","Down Hearted Blues","Down Under","Downtown","Dreamlover","Dreams","Drop it Like It's Hot","Drops of Jupiter (Tell Me)","Duke of Earl","E.T.","Earth Angel","Ebony & Ivory","Eight Days a Week","Empire State Of Mind","End of the Road","Endless Love","Escape (The Pina Colada Song)","Eve of Destruction","Every Breath You Take","Every Little Thing She Does is Magic","Everybody Loves Somebody","Everybody Wants to Rule the World","Everyday People","Eye of the Tiger","Faith","Fallin'","Fame","Family Affair","Fantasy","Fast Car","Feel Good Inc","Feel Like Making Love","Fire & Rain","Firework","Flashdance. What a Feeling","Fly Robin Fly","Foolish Games","Footloose","For What It's Worth (Stop","Fortunate Son","Frankenstein","Freak Me","Freebird","Frenesi","Funkytown","Gangsta's Paradise","Georgia On My Mind","Georgy Girl","Get Back","Get Down Tonight","Get Off of My Cloud","Ghostbusters","Gimme Some Lovin'","Girls Just Wanna Have Fun","Give Me Everything","Gives You Hell","Glamorous","Glory of Love","Go Your Own Way","God Bless America","God Bless the Child","Gold Digger","Gonna Make You Sweat (Everybody Dance Now)","Good Lovin'","Good Times","Good Vibrations","Goodbye Yellow Brick Road","Goodnight","Got to Give it Up","Grease","Great Balls of Fire","Greatest Love of All","Green Onions","Green River","Green Tambourine","Grenade","Groove is in the Heart","Groovin'","Gypsies","Hair","Hang On Sloopy","Hanging by a Moment","Hanky Panky","Happy Days Are Here Again","Happy Together","Harbour Lights","Hard to Say I'm Sorry","Harper Valley PTA","Have You Ever Really Loved a Woman?","He'll Have to Go","He's So Fine","He's a Rebel","Heart of Glass","Heart of Gold","Heartbreak Hotel","Hello","Hello Dolly","Help Me","Help!","Here Without You","Here in My Heart","Hero","Hey Baby","Hey Jude","Hey Paula","Hey There","Hey There Delilah","Hey Ya!","Higher Love","Hips don't lie","Hit the Road","Hold On","Hollaback Girl","Honey","Honky Tonk","Honky Tonk Woman","Horse With No Name","Hot Child In The City","Hot Stuff","Hotel California","Hound Dog","House of the Rising Sun","How Deep is Your Love?","How Do I Live?","How Do You Mend a Broken Heart","How High the Moon","How Much is That Doggy in the Window?","How Will I Know","How You Remind Me","How to Save a Life","Hungry Heart","Hurt So Good","I Believe I Can Fly","I Can Dream","I Can Help","I Can See Clearly Now","I Can't Get Next to You","I Can't Get Started","I Can't Go For That (No Can Do)","I Can't Help Myself (Sugar Pie","I Can't Stop Loving You","I Don't Want to Miss a Thing","I Fall to Pieces","I Feel Fine","I Feel For You","I Feel Love","I Get Around","I Got You (I Feel Good)","I Got You Babe","I Gotta Feeling","I Heard it Through the Grapevine","I Honestly Love You","I Just Called to Say I Love You","I Just Wanna Be Your Everything","I Kissed A Girl","I Love Rock 'n' Roll","I Need You Now","I Only Have Eyes For You","I Shot the Sheriff","I Still Haven't Found What I'm Looking For","I Swear","I Think I Love You","I Walk the Line","I Wanna Dance With Somebody (Who Loves Me)","I Wanna Love You","I Want You Back","I Want to Hold Your Hand","I Want to Know What Love Is","I Went to Your Wedding","I Will Always Love You","I Will Follow Him","I Will Survive","I Write the Songs","I'll Be Missing You","I'll Be There","I'll Make Love to You","I'll Never Smile Again","I'll Take You There","I'll Walk Alone","I'll be seeing you","I'm Looking Over a Four Leaf Clover","I'm So Lonesome I Could Cry","I'm Sorry","I'm Walking Behind You","I'm Your Boogie Man","I'm Yours","I'm a Believer","I've Heard That Song Before","If (They Made Me a King)","If I Didn't Care","If You Don't Know Me By Now","If You Leave Me Now","Imagine","In Da Club","In the End","In the Ghetto","In the Mood","In the Summertime","In the Year 2525 (Exordium & Terminus)","Incense & Peppermints","Indian Reservation (The Lament Of The Cherokee Reservation Indian)","Instant Karma","Iris","Ironic","Irreplaceable","It Had to Be You","It's All in the Game","It's My Party","It's Now Or Never","It's Still Rock 'n' Roll to Me","It's Too Late","Jack & Diane","Jailhouse Rock","Jessie's Girl","Jive Talkin'","Johnny B Goode","Joy to the World","Judy in Disguise (With Glasses)","Jump","Jumpin' Jack Flash","Just Dance","Just My Imagination (Running Away With Me)","Just the Way You Are","Kansas City","Karma Chameleon","Keep On Loving You","Killing Me Softly With His Song","King of the Road","Kiss","Kiss & Say Goodbye","Kiss From a Rose","Kiss Me","Kiss On My List","Kiss You All Over","Knock On Wood","Knock Three Times","Kokomo","Kryptonite","Kung Fu Fighting","La Bamba","Lady","Lady Marmalade (Voulez-Vous Coucher Aver Moi Ce Soir?)","Last Train to Clarksville","Layla","Le Freak","Leader of the Pack","Lean On Me","Leaving","Let Me Call You Sweetheart","Let Me Love You","Let it Be","Let it Snow! Let it Snow! Let it Snow!","Let's Dance","Let's Get it On","Let's Groove","Let's Hear it For the Boy","Let's Stay Together","Light My Fire","Lights","Like a Prayer","Like a Rolling Stone","Like a Virgin","Little Darlin'","Little Things Mean a Lot","Live & Let Die","Livin' La Vida Loca","Livin' On a Prayer","Living For the City","Locked Out Of Heaven","Lola","Lonely Boy","Long Cool Woman in a Black Dress","Long Tall Sally","Look Away","Lookin' Out My Back Door","Lose Yourself","Losing My Religion","Louie Louie","Love Child","Love Hangover","Love In This Club","Love Is Blue (L'Amour Est Bleu)","Love Letters in the Sand","Love Me Do","Love Me Tender","Love Shack","Love Theme From 'A Star is Born' (Evergreen)","Love Train","Love Will Keep Us Together","Love is a Many Splendoured Thing","Love to Love You Baby","Love's Theme","Loving You","Low","Macarena","Mack the Knife","Maggie May","Magic","Magic Carpet Ride","Make Love to Me","Make it With You","Makin' Whoopee","Mama Told Me Not to Come","Man in the Mirror","Manana (Is Soon Enough For Me)","Maneater","Maniac","Maybellene","Me & Bobby McGee","Me & Mrs Jones","Memories Are Made of This","Mercy Mercy Me (The Ecology)","Mickey","Midnight Train to Georgia","Minnie the Moocher","Miss You","Miss You Much","Mister Sandman","Mmmbop","Mona Lisa","Monday Monday","Money For Nothing","Mony Mony","Mood Indigo","Moonlight Cocktail","Moonlight Serenade","More Than Words","More Than a Feeling","Morning Train (Nine to Five)","Mr Big Stuff","Mr Brightside","Mr Tambourine Man","Mrs Brown You've Got a Lovely Daughter","Mrs Robinson","Mule Train","Music","My Blue Heaven","My Boyfriend's Back","My Eyes Adored You","My Girl","My Guy","My Heart Will Go On","My Life","My Love","My Man","My Prayer","My Sharona","My Sweet Lord","Na Na Hey Hey (Kiss Him Goodbye)","Nature Boy","Near You","Need You Now","Need You Tonight","Never Gonna Give You Up","Night & Day","Night Fever","Nights in White Satin","No One","No Scrubs","Nobody Does it Better","Nothin' on You","Nothing Compares 2 U","Nothing's Gonna Stop Us Now","Ode To Billie Joe","Oh","Oh Happy Day","Oh My Papa (O Mein Papa)","Ol' Man River","Ole Buttermilk Sky","On Bended Knee","On My Own","On the Atchison","One","One Bad Apple","One More Try","One O'Clock Jump","One Sweet Day","One of These Nights","One of Us","Only The Lonely (Know The Way I Feel)","Only You (And You Alone)","Open Arms","Over There","Over the Rainbow","Paint it Black","Papa Don't Preach","Papa Was a Rolling Stone","Papa's Got a Brand New Bag","Paper Doll","Paper Planes","Paperback Writer","Party Rock Anthem","Peg o' My Heart","Peggy Sue","Pennies From Heaven","Penny Lane","People","People Got to Be Free","Personality","Philadelphia Freedom","Physical","Piano Man","Pick Up the Pieces","Pistol Packin' Mama","Play That Funky Music","Please Mr Postman","Poker Face","Pon De Replay","Pony Time","Pop Muzik","Prisoner of Love","Private Eyes","Promiscuous","Proud Mary","Purple Haze","Purple Rain","Puttin' on the Ritz","Que sera sera (Whatever will be will be)","Queen of Hearts","Rag Doll","Rag Mop","Rags to Riches","Raindrops Keep Falling On My Head","Rapture","Ray of Light","Reach Out (I'll Be There)","Red Red Wine","Rehab","Respect","Return to Sender","Reunited","Revolution","Rhapsody in Blue","Rhinestone Cowboy","Rich Girl","Riders On the Storm","Right Back Where We Started From","Ring My Bell","Ring of Fire","Rock Around the Clock","Rock With You","Rock Your Baby","Rock the Boat","Rock the Casbah","Roll Over Beethoven","Roll With It","Rolling In The Deep","Rosanna","Roses Are Red","Royals","Ruby Tuesday","Rudolph","Rum & Coca-Cola","Runaround Sue","Runaway","Running Scared","Rush Rush","Sailing","Save the Best For Last","Save the Last Dance For Me","Say It Right","Say My Name","Say Say Say","Say You","School's Out","Seasons in the Sun","Secret Love","Sentimental Journey","Sexyback","Sh-Boom (Life Could Be a Dream)","Shadow Dancing","Shake Down","Shake You Down","She Drives Me Crazy","She Loves You","She's a Lady","Shining Star","Shop Around","Shout","Silly Love Songs","Since U Been Gone","Sing","Singing The Blues","Single Ladies (Put A Ring On It)","Sir Duke","Sixteen Tons","Sledgehammer","Sleep Walk","Sleepy Lagoon","Slow Poke","Smells Like Teen Spirit","Smoke Gets in Your Eyes","Smoke On the Water","Smoke! Smoke! Smoke! (That Cigarette)","Smooth","So Much in Love","Soldier Boy","Some Enchanted Evening","Some of These Days","Somebody That I Used to Know","Somebody to Love","Someday","Somethin' Stupid","Something","Soul Man","Spanish Harlem","Spill the Wine","Spinning Wheel","Spirit in the Sky","St George & the Dragonette","St Louis Blues","Stagger Lee","Stairway to Heaven","Stand By Me","Stardust","Stars & Stripes Forever","Stay (I Missed You)","Stayin' Alive","Stop! in the Name of Love","Stormy Weather (Keeps Rainin' All the Time)","Straight Up","Strange Fruit","Stranger On the Shore","Strangers in the Night","Strawberry Fields Forever","Streets of Philadelphia","Stronger","Stuck On You","Sugar Shack","Sugar Sugar","Summer in the City","Summertime Blues","Sunday","Sunshine Superman","Sunshine of Your Love","Superstar","Superstition","Surfin' USA","Suspicious Minds","Swanee","Sweet Caroline (Good Times Never Seemed So Good)","Sweet Child O' Mine","Sweet Dreams (Are Made of This)","Sweet Georgia Brown","Sweet Home Alabama","Sweet Soul Music","Swinging On a Star","T For Texas (Blue Yodel No 1)","TSOP (The Sound of Philadelphia)","Take Me Home","Take My Breath Away","Take On Me","Take The 'A' Train","Take a Bow","Tammy","Tangerine","Tears in Heaven","Tears of a Clown","Temperature","Tennessee Waltz","Tequila","Tha Crossroads","Thank You (Falettinme be Mice Elf Again)","That Lucky Old Sun (Just Rolls Around Heaven All Day)","That Old Black Magic","That'll Be the Day","That's Amore","That's What Friends Are For","That's the Way (I Like It)","That's the Way Love Goes","The Boy is Mine","The Boys of Summer","The Christmas Song (Chestnuts Roasting On An Open Fire)","The End of the World","The First Time Ever I Saw Your Face","The Girl From Ipanema","The Glow-Worm","The Great Pretender","The Gypsy","The Hustle","The Joker","The Last Dance","The Letter","The Loco-Motion","The Long & Winding Road","The Love You Save","The Morning After","The Power of Love","The Prisoner's Song","The Reason","The Rose","The Sign","The Song From Moulin Rouge (Where Is Your Heart)","The Sounds of Silence","The Streak","The Sweet Escape","The Thing","The Tide is High","The Tracks of My Tears","The Twist","The Wanderer","The Way We Were","The Way You Look Tonight","The Way You Move","Theme From 'A Summer Place'","Theme From 'Greatest American Hero' (Believe It Or Not)","Theme From 'Shaft'","There goes my baby","These Boots Are Made For Walking","Third Man Theme","This Diamond Ring","This Guy's in Love With You","This Land is Your Land","This Love","This Ole House","This Used to Be My Playground","Three Coins in the Fountain","Three Times a Lady","Thrift Shop","Thriller","Ticket to Ride","Tie a Yellow Ribbon 'round the Old Oak Tree","Tiger Rag","Tighten Up","Tik-Toc","Till I Waltz Again With You","Till The End of Time","Time After Time","Time of the Season","To Sir","Tom Dooley","Tonight's the Night (Gonna Be Alright)","Too Close","Too Young","Tossing & Turning","Total Eclipse of the Heart","Touch Me","Toxic","Travellin' Band","Travellin' Man","Truly Madly Deeply","Turn! Turn! Turn! (To Everything There is a Season)","Tutti Frutti","Twist & Shout","Two Hearts","U Can't Touch This","U Got it Bad","Umbrella","Un-Break My Heart","Unbelievable","Unchained Melody","Uncle Albert (Admiral Halsey)","Under the Boardwalk","Under the Bridge","Unforgettable","Up Around the Bend","Up Up & Away","Up Where We Belong","Upside Down","Use Somebody","Vaya Con Dios (may God Be With You)","Venus","Vision of Love","Viva La Vida","Vogue","Volare","Wabash Cannonball","Waiting For a Girl Like You","Wake Me Up Before You Go Go","Wake Up Little Susie","Walk Don't Run","Walk Like a Man","Walk Like an Egyptian","Walk On By","Walk On the Wild Side","Walk This Way","Wannabe","Want Ads","Wanted","War","Waterfalls","Wayward Wind","We Are Family","We Are Young","We Are the Champions","We Are the World","We Belong Together","We Built This City","We Can Work it Out","We Didn't Start the Fire","We Found Love","We Got The Beat","We Will Rock You","We've Only Just Begun","Weak","Wedding Bell Blues","West End Blues","West End Girls","What Goes Around Comes Around","What a Fool Believes","What'd I Say","What's Going On?","What's Love Got to Do With It?","Whatcha Say","Wheel of Fortune","When Doves Cry","When You Wish Upon a Star","When a Man Loves a Woman","Where Did Our Love Go","Where is the Love?","Whip It","Whispering","White Christmas","White Rabbit","Whole Lotta Love","Whole Lotta Shakin' Goin' On","Whoomp! (There it Is)","Why Do Fools Fall in Love?","Why Don't You Believe Me?","Wichita Lineman","Wicked Game","Wild Thing","Wild Wild West","Will It Go Round In Circles","Will You Love Me Tomorrow","Winchester Cathedral","Wind Beneath My Wings","Wipe Out","Wishing Well","With Or Without You","Without Me","Without You","Woman","Won't Get Fooled Again","Wooly Bully","Working My Way Back to You","YMCA","Yakety Yak","Yeah!","Yellow Rose of Texas","Yesterday","You Ain't Seen Nothin' Yet","You Always Hurt the One You Love","You Are the Sunshine of My Life","You Belong With Me","You Belong to Me","You Can't Hurry Love","You Don't Bring Me Flowers","You Don't Have to Be a Star (To Be in My Show)","You Light Up My Life","You Make Me Feel Brand New","You Make Me Feel Like Dancing","You Really Got Me","You Send Me","You Sexy Thing","You Were Meant for Me","You make Me Wanna","You'll Never Know","You're Beautiful","You're So Vain","You're Still the One","You're the One That I Want","You've Got a Friend","You've Lost That Lovin' Feelin'","Your Cheatin' Heart","Your Song"];var ao={album:Ve$1,artist:Ye$1,genre:je$1,song_name:qe$1},Ue$1=ao;var Ze$1=["activist","artist","author","blogger","business owner","coach","creator","designer","developer","dreamer","educator","engineer","entrepreneur","environmentalist","film lover","filmmaker","foodie","founder","friend","gamer","geek","grad","inventor","leader","model","musician","nerd","parent","patriot","person","philosopher","photographer","public speaker","scientist","singer","streamer","student","teacher","traveler","veteran","writer"];var _e$1=["{{person.bio_part}}","{{person.bio_part}}, {{person.bio_part}}","{{person.bio_part}}, {{person.bio_part}}, {{person.bio_part}}","{{person.bio_part}}, {{person.bio_part}}, {{person.bio_part}} {{internet.emoji}}","{{word.noun}} {{person.bio_supporter}}","{{word.noun}} {{person.bio_supporter}} {{internet.emoji}}","{{word.noun}} {{person.bio_supporter}}, {{person.bio_part}}","{{word.noun}} {{person.bio_supporter}}, {{person.bio_part}} {{internet.emoji}}"];var Qe$1=["advocate","devotee","enthusiast","fan","junkie","lover","supporter"];var Xe$1={generic:["Aaliyah","Aaron","Abagail","Abbey","Abbie","Abbigail","Abby","Abdiel","Abdul","Abdullah","Abe","Abel","Abelardo","Abigail","Abigale","Abigayle","Abner","Abraham","Ada","Adah","Adalberto","Adaline","Adam","Adan","Addie","Addison","Adela","Adelbert","Adele","Adelia","Adeline","Adell","Adella","Adelle","Aditya","Adolf","Adolfo","Adolph","Adolphus","Adonis","Adrain","Adrian","Adriana","Adrianna","Adriel","Adrien","Adrienne","Afton","Aglae","Agnes","Agustin","Agustina","Ahmad","Ahmed","Aida","Aidan","Aiden","Aileen","Aimee","Aisha","Aiyana","Akeem","Al","Alaina","Alan","Alana","Alanis","Alanna","Alayna","Alba","Albert","Alberta","Albertha","Alberto","Albin","Albina","Alda","Alden","Alec","Aleen","Alejandra","Alejandrin","Alek","Alena","Alene","Alessandra","Alessandro","Alessia","Aletha","Alex","Alexa","Alexander","Alexandra","Alexandre","Alexandrea","Alexandria","Alexandrine","Alexandro","Alexane","Alexanne","Alexie","Alexis","Alexys","Alexzander","Alf","Alfonso","Alfonzo","Alford","Alfred","Alfreda","Alfredo","Ali","Alia","Alice","Alicia","Alisa","Alisha","Alison","Alivia","Aliya","Aliyah","Aliza","Alize","Allan","Allen","Allene","Allie","Allison","Ally","Alphonso","Alta","Althea","Alva","Alvah","Alvena","Alvera","Alverta","Alvina","Alvis","Alyce","Alycia","Alysa","Alysha","Alyson","Alysson","Amalia","Amanda","Amani","Amara","Amari","Amaya","Amber","Ambrose","Amelia","Amelie","Amely","America","Americo","Amie","Amina","Amir","Amira","Amiya","Amos","Amparo","Amy","Amya","Ana","Anabel","Anabelle","Anahi","Anais","Anastacio","Anastasia","Anderson","Andre","Andreane","Andreanne","Andres","Andrew","Andy","Angel","Angela","Angelica","Angelina","Angeline","Angelita","Angelo","Angie","Angus","Anibal","Anika","Anissa","Anita","Aniya","Aniyah","Anjali","Anna","Annabel","Annabell","Annabelle","Annalise","Annamae","Annamarie","Anne","Annetta","Annette","Annie","Ansel","Ansley","Anthony","Antoinette","Antone","Antonetta","Antonette","Antonia","Antonietta","Antonina","Antonio","Antwan","Antwon","Anya","April","Ara","Araceli","Aracely","Arch","Archibald","Ardella","Arden","Ardith","Arely","Ari","Ariane","Arianna","Aric","Ariel","Arielle","Arjun","Arlene","Arlie","Arlo","Armand","Armando","Armani","Arnaldo","Arne","Arno","Arnold","Arnoldo","Arnulfo","Aron","Art","Arthur","Arturo","Arvel","Arvid","Arvilla","Aryanna","Asa","Asha","Ashlee","Ashleigh","Ashley","Ashly","Ashlynn","Ashton","Ashtyn","Asia","Assunta","Astrid","Athena","Aubree","Aubrey","Audie","Audra","Audreanne","Audrey","August","Augusta","Augustine","Augustus","Aurelia","Aurelie","Aurelio","Aurore","Austen","Austin","Austyn","Autumn","Ava","Avery","Avis","Axel","Ayana","Ayden","Ayla","Aylin","Baby","Bailee","Bailey","Barbara","Barney","Baron","Barrett","Barry","Bart","Bartholome","Barton","Baylee","Beatrice","Beau","Beaulah","Bell","Bella","Belle","Ben","Benedict","Benjamin","Bennett","Bennie","Benny","Benton","Berenice","Bernadette","Bernadine","Bernard","Bernardo","Berneice","Bernhard","Bernice","Bernie","Berniece","Bernita","Berry","Bert","Berta","Bertha","Bertram","Bertrand","Beryl","Bessie","Beth","Bethany","Bethel","Betsy","Bette","Bettie","Betty","Bettye","Beulah","Beverly","Bianka","Bill","Billie","Billy","Birdie","Blair","Blaise","Blake","Blanca","Blanche","Blaze","Bo","Bobbie","Bobby","Bonita","Bonnie","Boris","Boyd","Brad","Braden","Bradford","Bradley","Bradly","Brady","Braeden","Brain","Brandi","Brando","Brandon","Brandt","Brandy","Brandyn","Brannon","Branson","Brant","Braulio","Braxton","Brayan","Breana","Breanna","Breanne","Brenda","Brendan","Brenden","Brendon","Brenna","Brennan","Brennon","Brent","Bret","Brett","Bria","Brian","Briana","Brianne","Brice","Bridget","Bridgette","Bridie","Brielle","Brigitte","Brionna","Brisa","Britney","Brittany","Brock","Broderick","Brody","Brook","Brooke","Brooklyn","Brooks","Brown","Bruce","Bryana","Bryce","Brycen","Bryon","Buck","Bud","Buddy","Buford","Bulah","Burdette","Burley","Burnice","Buster","Cade","Caden","Caesar","Caitlyn","Cale","Caleb","Caleigh","Cali","Calista","Callie","Camden","Cameron","Camila","Camilla","Camille","Camren","Camron","Camryn","Camylle","Candace","Candelario","Candice","Candida","Candido","Cara","Carey","Carissa","Carlee","Carleton","Carley","Carli","Carlie","Carlo","Carlos","Carlotta","Carmel","Carmela","Carmella","Carmelo","Carmen","Carmine","Carol","Carolanne","Carole","Carolina","Caroline","Carolyn","Carolyne","Carrie","Carroll","Carson","Carter","Cary","Casandra","Casey","Casimer","Casimir","Casper","Cassandra","Cassandre","Cassidy","Cassie","Catalina","Caterina","Catharine","Catherine","Cathrine","Cathryn","Cathy","Cayla","Ceasar","Cecelia","Cecil","Cecile","Cecilia","Cedrick","Celestine","Celestino","Celia","Celine","Cesar","Chad","Chadd","Chadrick","Chaim","Chance","Chandler","Chanel","Chanelle","Charity","Charlene","Charles","Charley","Charlie","Charlotte","Chase","Chasity","Chauncey","Chaya","Chaz","Chelsea","Chelsey","Chelsie","Chesley","Chester","Chet","Cheyanne","Cheyenne","Chloe","Chris","Christ","Christa","Christelle","Christian","Christiana","Christina","Christine","Christop","Christophe","Christopher","Christy","Chyna","Ciara","Cicero","Cielo","Cierra","Cindy","Citlalli","Clair","Claire","Clara","Clarabelle","Clare","Clarissa","Clark","Claud","Claude","Claudia","Claudie","Claudine","Clay","Clemens","Clement","Clementina","Clementine","Clemmie","Cleo","Cleora","Cleta","Cletus","Cleve","Cleveland","Clifford","Clifton","Clint","Clinton","Clotilde","Clovis","Cloyd","Clyde","Coby","Cody","Colby","Cole","Coleman","Colin","Colleen","Collin","Colt","Colten","Colton","Columbus","Concepcion","Conner","Connie","Connor","Conor","Conrad","Constance","Constantin","Consuelo","Cooper","Cora","Coralie","Corbin","Cordelia","Cordell","Cordia","Cordie","Corene","Corine","Cornelius","Cornell","Corrine","Cortez","Cortney","Cory","Coty","Courtney","Coy","Craig","Crawford","Creola","Cristal","Cristian","Cristina","Cristobal","Cristopher","Cruz","Crystal","Crystel","Cullen","Curt","Curtis","Cydney","Cynthia","Cyril","Cyrus","Dagmar","Dahlia","Daija","Daisha","Daisy","Dakota","Dale","Dallas","Dallin","Dalton","Damaris","Dameon","Damian","Damien","Damion","Damon","Dan","Dana","Dandre","Dane","D'angelo","Dangelo","Danial","Daniela","Daniella","Danielle","Danika","Dannie","Danny","Dante","Danyka","Daphne","Daphnee","Daphney","Darby","Daren","Darian","Dariana","Darien","Dario","Darion","Darius","Darlene","Daron","Darrel","Darrell","Darren","Darrick","Darrin","Darrion","Darron","Darryl","Darwin","Daryl","Dashawn","Dasia","Dave","David","Davin","Davion","Davon","Davonte","Dawn","Dawson","Dax","Dayana","Dayna","Dayne","Dayton","Dean","Deangelo","Deanna","Deborah","Declan","Dedric","Dedrick","Dee","Deion","Deja","Dejah","Dejon","Dejuan","Delaney","Delbert","Delfina","Delia","Delilah","Dell","Della","Delmer","Delores","Delpha","Delphia","Delphine","Delta","Demarco","Demarcus","Demario","Demetris","Demetrius","Demond","Dena","Denis","Dennis","Deon","Deondre","Deontae","Deonte","Dereck","Derek","Derick","Deron","Derrick","Deshaun","Deshawn","Desiree","Desmond","Dessie","Destany","Destin","Destinee","Destiney","Destini","Destiny","Devan","Devante","Deven","Devin","Devon","Devonte","Devyn","Dewayne","Dewitt","Dexter","Diamond","Diana","Dianna","Diego","Dillan","Dillon","Dimitri","Dina","Dino","Dion","Dixie","Dock","Dolly","Dolores","Domenic","Domenica","Domenick","Domenico","Domingo","Dominic","Dominique","Don","Donald","Donato","Donavon","Donna","Donnell","Donnie","Donny","Dora","Dorcas","Dorian","Doris","Dorothea","Dorothy","Dorris","Dortha","Dorthy","Doug","Douglas","Dovie","Doyle","Drake","Drew","Duane","Dudley","Dulce","Duncan","Durward","Dustin","Dusty","Dwight","Dylan","Earl","Earlene","Earline","Earnest","Earnestine","Easter","Easton","Ebba","Ebony","Ed","Eda","Edd","Eddie","Eden","Edgar","Edgardo","Edison","Edmond","Edmund","Edna","Eduardo","Edward","Edwardo","Edwin","Edwina","Edyth","Edythe","Effie","Efrain","Efren","Eileen","Einar","Eino","Eladio","Elaina","Elbert","Elda","Eldon","Eldora","Eldred","Eldridge","Eleanora","Eleanore","Eleazar","Electa","Elena","Elenor","Elenora","Eleonore","Elfrieda","Eli","Elian","Eliane","Elias","Eliezer","Elijah","Elinor","Elinore","Elisa","Elisabeth","Elise","Eliseo","Elisha","Elissa","Eliza","Elizabeth","Ella","Ellen","Ellie","Elliot","Elliott","Ellis","Ellsworth","Elmer","Elmira","Elmo","Elmore","Elna","Elnora","Elody","Eloisa","Eloise","Elouise","Eloy","Elroy","Elsa","Else","Elsie","Elta","Elton","Elva","Elvera","Elvie","Elvis","Elwin","Elwyn","Elyse","Elyssa","Elza","Emanuel","Emelia","Emelie","Emely","Emerald","Emerson","Emery","Emie","Emil","Emile","Emilia","Emiliano","Emilie","Emilio","Emily","Emma","Emmalee","Emmanuel","Emmanuelle","Emmet","Emmett","Emmie","Emmitt","Emmy","Emory","Ena","Enid","Enoch","Enola","Enos","Enrico","Enrique","Ephraim","Era","Eriberto","Eric","Erica","Erich","Erick","Ericka","Erik","Erika","Erin","Erling","Erna","Ernest","Ernestina","Ernestine","Ernesto","Ernie","Ervin","Erwin","Eryn","Esmeralda","Esperanza","Esta","Esteban","Estefania","Estel","Estell","Estella","Estelle","Estevan","Esther","Estrella","Etha","Ethan","Ethel","Ethelyn","Ethyl","Ettie","Eudora","Eugene","Eugenia","Eula","Eulah","Eulalia","Euna","Eunice","Eusebio","Eva","Evalyn","Evan","Evangeline","Evans","Eve","Eveline","Evelyn","Everardo","Everett","Everette","Evert","Evie","Ewald","Ewell","Ezekiel","Ezequiel","Ezra","Fabian","Fabiola","Fae","Fannie","Fanny","Fatima","Faustino","Fausto","Favian","Fay","Faye","Federico","Felicia","Felicita","Felicity","Felipa","Felipe","Felix","Felton","Fermin","Fern","Fernando","Ferne","Fidel","Filiberto","Filomena","Finn","Fiona","Flavie","Flavio","Fleta","Fletcher","Flo","Florence","Florencio","Florian","Florida","Florine","Flossie","Floy","Floyd","Ford","Forest","Forrest","Foster","Frances","Francesca","Francesco","Francis","Francisca","Francisco","Franco","Frank","Frankie","Franz","Fred","Freda","Freddie","Freddy","Frederic","Frederick","Frederik","Frederique","Fredrick","Fredy","Freeda","Freeman","Freida","Frida","Frieda","Friedrich","Fritz","Furman","Gabe","Gabriel","Gabriella","Gabrielle","Gaetano","Gage","Gail","Gardner","Garett","Garfield","Garland","Garnet","Garnett","Garret","Garrett","Garrick","Garrison","Garry","Garth","Gaston","Gavin","Gayle","Gene","General","Genesis","Genevieve","Gennaro","Genoveva","Geo","Geoffrey","George","Georgette","Georgiana","Georgianna","Geovanni","Geovanny","Geovany","Gerald","Geraldine","Gerard","Gerardo","Gerda","Gerhard","Germaine","German","Gerry","Gerson","Gertrude","Gia","Gianni","Gideon","Gilbert","Gilberto","Gilda","Giles","Gillian","Gina","Gino","Giovani","Giovanna","Giovanni","Giovanny","Gisselle","Giuseppe","Gladyce","Gladys","Glen","Glenda","Glenna","Glennie","Gloria","Godfrey","Golda","Golden","Gonzalo","Gordon","Grace","Gracie","Graciela","Grady","Graham","Grant","Granville","Grayce","Grayson","Green","Greg","Gregg","Gregoria","Gregorio","Gregory","Greta","Gretchen","Greyson","Griffin","Grover","Guadalupe","Gudrun","Guido","Guillermo","Guiseppe","Gunnar","Gunner","Gus","Gussie","Gust","Gustave","Guy","Gwen","Gwendolyn","Hadley","Hailee","Hailey","Hailie","Hal","Haleigh","Haley","Halie","Halle","Hallie","Hank","Hanna","Hannah","Hans","Hardy","Harley","Harmon","Harmony","Harold","Harrison","Harry","Harvey","Haskell","Hassan","Hassie","Hattie","Haven","Hayden","Haylee","Hayley","Haylie","Hazel","Hazle","Heath","Heather","Heaven","Heber","Hector","Heidi","Helen","Helena","Helene","Helga","Hellen","Helmer","Heloise","Henderson","Henri","Henriette","Henry","Herbert","Herman","Hermann","Hermina","Herminia","Herminio","Hershel","Herta","Hertha","Hester","Hettie","Hilario","Hilbert","Hilda","Hildegard","Hillard","Hillary","Hilma","Hilton","Hipolito","Hiram","Hobart","Holden","Hollie","Hollis","Holly","Hope","Horace","Horacio","Hortense","Hosea","Houston","Howard","Howell","Hoyt","Hubert","Hudson","Hugh","Hulda","Humberto","Hunter","Hyman","Ian","Ibrahim","Icie","Ida","Idell","Idella","Ignacio","Ignatius","Ike","Ila","Ilene","Iliana","Ima","Imani","Imelda","Immanuel","Imogene","Ines","Irma","Irving","Irwin","Isaac","Isabel","Isabell","Isabella","Isabelle","Isac","Isadore","Isai","Isaiah","Isaias","Isidro","Ismael","Isobel","Isom","Israel","Issac","Itzel","Iva","Ivah","Ivory","Ivy","Izabella","Izaiah","Jabari","Jace","Jacey","Jacinthe","Jacinto","Jack","Jackeline","Jackie","Jacklyn","Jackson","Jacky","Jaclyn","Jacquelyn","Jacques","Jacynthe","Jada","Jade","Jaden","Jadon","Jadyn","Jaeden","Jaida","Jaiden","Jailyn","Jaime","Jairo","Jakayla","Jake","Jakob","Jaleel","Jalen","Jalon","Jalyn","Jamaal","Jamal","Jamar","Jamarcus","Jamel","Jameson","Jamey","Jamie","Jamil","Jamir","Jamison","Jammie","Jan","Jana","Janae","Jane","Janelle","Janessa","Janet","Janice","Janick","Janie","Janis","Janiya","Jannie","Jany","Jaquan","Jaquelin","Jaqueline","Jared","Jaren","Jarod","Jaron","Jarred","Jarrell","Jarret","Jarrett","Jarrod","Jarvis","Jasen","Jasmin","Jason","Jasper","Jaunita","Javier","Javon","Javonte","Jay","Jayce","Jaycee","Jayda","Jayde","Jayden","Jaydon","Jaylan","Jaylen","Jaylin","Jaylon","Jayme","Jayne","Jayson","Jazlyn","Jazmin","Jazmyn","Jazmyne","Jean","Jeanette","Jeanie","Jeanne","Jed","Jedediah","Jedidiah","Jeff","Jefferey","Jeffery","Jeffrey","Jeffry","Jena","Jenifer","Jennie","Jennifer","Jennings","Jennyfer","Jensen","Jerad","Jerald","Jeramie","Jeramy","Jerel","Jeremie","Jeremy","Jermain","Jermaine","Jermey","Jerod","Jerome","Jeromy","Jerrell","Jerrod","Jerrold","Jerry","Jess","Jesse","Jessica","Jessie","Jessika","Jessy","Jessyca","Jesus","Jett","Jettie","Jevon","Jewel","Jewell","Jillian","Jimmie","Jimmy","Jo","Joan","Joana","Joanie","Joanne","Joannie","Joanny","Joany","Joaquin","Jocelyn","Jodie","Jody","Joe","Joel","Joelle","Joesph","Joey","Johan","Johann","Johanna","Johathan","John","Johnathan","Johnathon","Johnnie","Johnny","Johnpaul","Johnson","Jolie","Jon","Jonas","Jonatan","Jonathan","Jonathon","Jordan","Jordane","Jordi","Jordon","Jordy","Jordyn","Jorge","Jose","Josefa","Josefina","Joseph","Josephine","Josh","Joshua","Joshuah","Josiah","Josiane","Josianne","Josie","Josue","Jovan","Jovani","Jovanny","Jovany","Joy","Joyce","Juana","Juanita","Judah","Judd","Jude","Judge","Judson","Judy","Jules","Julia","Julian","Juliana","Julianne","Julie","Julien","Juliet","Julio","Julius","June","Junior","Junius","Justen","Justice","Justina","Justine","Juston","Justus","Justyn","Juvenal","Juwan","Kacey","Kaci","Kacie","Kade","Kaden","Kadin","Kaela","Kaelyn","Kaia","Kailee","Kailey","Kailyn","Kaitlin","Kaitlyn","Kale","Kaleb","Kaleigh","Kaley","Kali","Kallie","Kameron","Kamille","Kamren","Kamron","Kamryn","Kane","Kara","Kareem","Karelle","Karen","Kari","Kariane","Karianne","Karina","Karine","Karl","Karlee","Karley","Karli","Karlie","Karolann","Karson","Kasandra","Kasey","Kassandra","Katarina","Katelin","Katelyn","Katelynn","Katharina","Katherine","Katheryn","Kathleen","Kathlyn","Kathryn","Kathryne","Katlyn","Katlynn","Katrina","Katrine","Kattie","Kavon","Kay","Kaya","Kaycee","Kayden","Kayla","Kaylah","Kaylee","Kayleigh","Kayley","Kayli","Kaylie","Kaylin","Keagan","Keanu","Keara","Keaton","Keegan","Keeley","Keely","Keenan","Keira","Keith","Kellen","Kelley","Kelli","Kellie","Kelly","Kelsi","Kelsie","Kelton","Kelvin","Ken","Kendall","Kendra","Kendrick","Kenna","Kennedi","Kennedy","Kenneth","Kennith","Kenny","Kenton","Kenya","Kenyatta","Kenyon","Keon","Keshaun","Keshawn","Keven","Kevin","Kevon","Keyon","Keyshawn","Khalid","Khalil","Kian","Kiana","Kianna","Kiara","Kiarra","Kiel","Kiera","Kieran","Kiley","Kim","Kimberly","King","Kip","Kira","Kirk","Kirsten","Kirstin","Kitty","Kobe","Koby","Kody","Kolby","Kole","Korbin","Korey","Kory","Kraig","Kris","Krista","Kristian","Kristin","Kristina","Kristofer","Kristoffer","Kristopher","Kristy","Krystal","Krystel","Krystina","Kurt","Kurtis","Kyla","Kyle","Kylee","Kyleigh","Kyler","Kylie","Kyra","Lacey","Lacy","Ladarius","Lafayette","Laila","Laisha","Lamar","Lambert","Lamont","Lance","Landen","Lane","Laney","Larissa","Laron","Larry","Larue","Laura","Laurel","Lauren","Laurence","Lauretta","Lauriane","Laurianne","Laurie","Laurine","Laury","Lauryn","Lavada","Lavern","Laverna","Laverne","Lavina","Lavinia","Lavon","Lavonne","Lawrence","Lawson","Layla","Layne","Lazaro","Lea","Leann","Leanna","Leanne","Leatha","Leda","Lee","Leif","Leila","Leilani","Lela","Lelah","Leland","Lelia","Lempi","Lemuel","Lenna","Lennie","Lenny","Lenora","Lenore","Leo","Leola","Leon","Leonard","Leonardo","Leone","Leonel","Leonie","Leonor","Leonora","Leopold","Leopoldo","Leora","Lera","Lesley","Leslie","Lesly","Lessie","Lester","Leta","Letha","Letitia","Levi","Lew","Lewis","Lexi","Lexie","Lexus","Lia","Liam","Liana","Libbie","Libby","Lila","Lilian","Liliana","Liliane","Lilla","Lillian","Lilliana","Lillie","Lilly","Lily","Lilyan","Lina","Lincoln","Linda","Lindsay","Lindsey","Linnea","Linnie","Linwood","Lionel","Lisa","Lisandro","Lisette","Litzy","Liza","Lizeth","Lizzie","Llewellyn","Lloyd","Logan","Lois","Lola","Lolita","Loma","Lon","London","Lonie","Lonnie","Lonny","Lonzo","Lora","Loraine","Loren","Lorena","Lorenz","Lorenza","Lorenzo","Lori","Lorine","Lorna","Lottie","Lou","Louie","Louisa","Lourdes","Louvenia","Lowell","Loy","Loyal","Loyce","Lucas","Luciano","Lucie","Lucienne","Lucile","Lucinda","Lucio","Lucious","Lucius","Lucy","Ludie","Ludwig","Lue","Luella","Luigi","Luis","Luisa","Lukas","Lula","Lulu","Luna","Lupe","Lura","Lurline","Luther","Luz","Lyda","Lydia","Lyla","Lynn","Lyric","Lysanne","Mabel","Mabelle","Mable","Mac","Macey","Maci","Macie","Mack","Mackenzie","Macy","Madaline","Madalyn","Maddison","Madeline","Madelyn","Madelynn","Madge","Madie","Madilyn","Madisen","Madison","Madisyn","Madonna","Madyson","Mae","Maegan","Maeve","Mafalda","Magali","Magdalen","Magdalena","Maggie","Magnolia","Magnus","Maia","Maida","Maiya","Major","Makayla","Makenna","Makenzie","Malachi","Malcolm","Malika","Malinda","Mallie","Mallory","Malvina","Mandy","Manley","Manuel","Manuela","Mara","Marc","Marcel","Marcelina","Marcelino","Marcella","Marcelle","Marcellus","Marcelo","Marcia","Marco","Marcos","Marcus","Margaret","Margarete","Margarett","Margaretta","Margarette","Margarita","Marge","Margie","Margot","Margret","Marguerite","Maria","Mariah","Mariam","Marian","Mariana","Mariane","Marianna","Marianne","Mariano","Maribel","Marie","Mariela","Marielle","Marietta","Marilie","Marilou","Marilyne","Marina","Mario","Marion","Marisa","Marisol","Maritza","Marjolaine","Marjorie","Marjory","Mark","Markus","Marlee","Marlen","Marlene","Marley","Marlin","Marlon","Marques","Marquis","Marquise","Marshall","Marta","Martin","Martina","Martine","Marty","Marvin","Mary","Maryam","Maryjane","Maryse","Mason","Mateo","Mathew","Mathias","Mathilde","Matilda","Matilde","Matt","Matteo","Mattie","Maud","Maude","Maudie","Maureen","Maurice","Mauricio","Maurine","Maverick","Mavis","Max","Maxie","Maxime","Maximilian","Maximillia","Maximillian","Maximo","Maximus","Maxine","Maxwell","May","Maya","Maybell","Maybelle","Maye","Maymie","Maynard","Mayra","Mazie","Mckayla","Mckenna","Mckenzie","Meagan","Meaghan","Meda","Megane","Meggie","Meghan","Mekhi","Melany","Melba","Melisa","Melissa","Mellie","Melody","Melvin","Melvina","Melyna","Melyssa","Mercedes","Meredith","Merl","Merle","Merlin","Merritt","Mertie","Mervin","Meta","Mia","Micaela","Micah","Michael","Michaela","Michale","Micheal","Michel","Michele","Michelle","Miguel","Mikayla","Mike","Mikel","Milan","Miles","Milford","Miller","Millie","Milo","Milton","Mina","Minerva","Minnie","Miracle","Mireille","Mireya","Misael","Missouri","Misty","Mitchel","Mitchell","Mittie","Modesta","Modesto","Mohamed","Mohammad","Mohammed","Moises","Mollie","Molly","Mona","Monica","Monique","Monroe","Monserrat","Monserrate","Montana","Monte","Monty","Morgan","Moriah","Morris","Mortimer","Morton","Mose","Moses","Moshe","Mossie","Mozell","Mozelle","Muhammad","Muriel","Murl","Murphy","Murray","Mustafa","Mya","Myah","Mylene","Myles","Myra","Myriam","Myrl","Myrna","Myron","Myrtice","Myrtie","Myrtis","Myrtle","Nadia","Nakia","Name","Nannie","Naomi","Naomie","Napoleon","Narciso","Nash","Nasir","Nat","Natalia","Natalie","Natasha","Nathan","Nathanael","Nathanial","Nathaniel","Nathen","Nayeli","Neal","Ned","Nedra","Neha","Neil","Nelda","Nella","Nelle","Nellie","Nels","Nelson","Neoma","Nestor","Nettie","Neva","Newell","Newton","Nia","Nicholas","Nicholaus","Nichole","Nick","Nicklaus","Nickolas","Nico","Nicola","Nicolas","Nicole","Nicolette","Nigel","Nikita","Nikki","Nikko","Niko","Nikolas","Nils","Nina","Noah","Noble","Noe","Noel","Noelia","Noemi","Noemie","Noemy","Nola","Nolan","Nona","Nora","Norbert","Norberto","Norene","Norma","Norris","Norval","Norwood","Nova","Novella","Nya","Nyah","Nyasia","Obie","Oceane","Ocie","Octavia","Oda","Odell","Odessa","Odie","Ofelia","Okey","Ola","Olaf","Ole","Olen","Oleta","Olga","Olin","Oliver","Ollie","Oma","Omari","Omer","Ona","Onie","Opal","Ophelia","Ora","Oral","Oran","Oren","Orie","Orin","Orion","Orland","Orlando","Orlo","Orpha","Orrin","Orval","Orville","Osbaldo","Osborne","Oscar","Osvaldo","Oswald","Oswaldo","Otha","Otho","Otilia","Otis","Ottilie","Ottis","Otto","Ova","Owen","Ozella","Pablo","Paige","Palma","Pamela","Pansy","Paolo","Paris","Parker","Pascale","Pasquale","Pat","Patience","Patricia","Patrick","Patsy","Pattie","Paul","Paula","Pauline","Paxton","Payton","Pearl","Pearlie","Pearline","Pedro","Peggie","Penelope","Percival","Percy","Perry","Pete","Peter","Petra","Peyton","Philip","Phoebe","Phyllis","Pierce","Pierre","Pietro","Pink","Pinkie","Piper","Polly","Porter","Precious","Presley","Preston","Price","Prince","Princess","Priscilla","Providenci","Prudence","Queen","Queenie","Quentin","Quincy","Quinn","Quinten","Quinton","Rachael","Rachel","Rachelle","Rae","Raegan","Rafael","Rafaela","Raheem","Rahsaan","Rahul","Raina","Raleigh","Ralph","Ramiro","Ramon","Ramona","Randal","Randall","Randi","Randy","Ransom","Raoul","Raphael","Raphaelle","Raquel","Rashad","Rashawn","Rasheed","Raul","Raven","Ray","Raymond","Raymundo","Reagan","Reanna","Reba","Rebeca","Rebecca","Rebeka","Rebekah","Reece","Reed","Reese","Regan","Reggie","Reginald","Reid","Reilly","Reina","Reinhold","Remington","Rene","Renee","Ressie","Reta","Retha","Retta","Reuben","Reva","Rex","Rey","Reyes","Reymundo","Reyna","Reynold","Rhea","Rhett","Rhianna","Rhiannon","Rhoda","Ricardo","Richard","Richie","Richmond","Rick","Rickey","Rickie","Ricky","Rico","Rigoberto","Riley","Rita","River","Robb","Robbie","Robert","Roberta","Roberto","Robin","Robyn","Rocio","Rocky","Rod","Roderick","Rodger","Rodolfo","Rodrick","Rodrigo","Roel","Rogelio","Roger","Rogers","Rolando","Rollin","Roma","Romaine","Roman","Ron","Ronaldo","Ronny","Roosevelt","Rory","Rosa","Rosalee","Rosalia","Rosalind","Rosalinda","Rosalyn","Rosamond","Rosanna","Rosario","Roscoe","Rose","Rosella","Roselyn","Rosemarie","Rosemary","Rosendo","Rosetta","Rosie","Rosina","Roslyn","Ross","Rossie","Rowan","Rowena","Rowland","Roxane","Roxanne","Roy","Royal","Royce","Rozella","Ruben","Rubie","Ruby","Rubye","Rudolph","Rudy","Rupert","Russ","Russel","Russell","Rusty","Ruth","Ruthe","Ruthie","Ryan","Ryann","Ryder","Rylan","Rylee","Ryleigh","Ryley","Sabina","Sabrina","Sabryna","Sadie","Sadye","Sage","Saige","Sallie","Sally","Salma","Salvador","Salvatore","Sam","Samanta","Samantha","Samara","Samir","Sammie","Sammy","Samson","Sandra","Sandrine","Sandy","Sanford","Santa","Santiago","Santina","Santino","Santos","Sarah","Sarai","Sarina","Sasha","Saul","Savanah","Savanna","Savannah","Savion","Scarlett","Schuyler","Scot","Scottie","Scotty","Seamus","Sean","Sebastian","Sedrick","Selena","Selina","Selmer","Serena","Serenity","Seth","Shad","Shaina","Shakira","Shana","Shane","Shanel","Shanelle","Shania","Shanie","Shaniya","Shanna","Shannon","Shanny","Shanon","Shany","Sharon","Shaun","Shawn","Shawna","Shaylee","Shayna","Shayne","Shea","Sheila","Sheldon","Shemar","Sheridan","Sherman","Sherwood","Shirley","Shyann","Shyanne","Sibyl","Sid","Sidney","Sienna","Sierra","Sigmund","Sigrid","Sigurd","Silas","Sim","Simeon","Simone","Sincere","Sister","Skye","Skyla","Skylar","Sofia","Soledad","Solon","Sonia","Sonny","Sonya","Sophia","Sophie","Spencer","Stacey","Stacy","Stan","Stanford","Stanley","Stanton","Stefan","Stefanie","Stella","Stephan","Stephania","Stephanie","Stephany","Stephen","Stephon","Sterling","Steve","Stevie","Stewart","Stone","Stuart","Summer","Sunny","Susan","Susana","Susanna","Susie","Suzanne","Sven","Syble","Sydnee","Sydney","Sydni","Sydnie","Sylvan","Sylvester","Sylvia","Tabitha","Tad","Talia","Talon","Tamara","Tamia","Tania","Tanner","Tanya","Tara","Taryn","Tate","Tatum","Tatyana","Taurean","Tavares","Taya","Taylor","Teagan","Ted","Telly","Terence","Teresa","Terrance","Terrell","Terrence","Terrill","Terry","Tess","Tessie","Tevin","Thad","Thaddeus","Thalia","Thea","Thelma","Theo","Theodora","Theodore","Theresa","Therese","Theresia","Theron","Thomas","Thora","Thurman","Tia","Tiana","Tianna","Tiara","Tierra","Tiffany","Tillman","Timmothy","Timmy","Timothy","Tina","Tito","Titus","Tobin","Toby","Tod","Tom","Tomas","Tomasa","Tommie","Toney","Toni","Tony","Torey","Torrance","Torrey","Toy","Trace","Tracey","Tracy","Travis","Travon","Tre","Tremaine","Tremayne","Trent","Trenton","Tressa","Tressie","Treva","Trever","Trevion","Trevor","Trey","Trinity","Trisha","Tristian","Tristin","Triston","Troy","Trudie","Trycia","Trystan","Turner","Twila","Tyler","Tyra","Tyree","Tyreek","Tyrel","Tyrell","Tyrese","Tyrique","Tyshawn","Tyson","Ubaldo","Ulices","Ulises","Una","Unique","Urban","Uriah","Uriel","Ursula","Vada","Valentin","Valentina","Valentine","Valerie","Vallie","Van","Vance","Vanessa","Vaughn","Veda","Velda","Vella","Velma","Velva","Vena","Verda","Verdie","Vergie","Verla","Verlie","Vern","Verna","Verner","Vernice","Vernie","Vernon","Verona","Veronica","Vesta","Vicenta","Vicente","Vickie","Vicky","Victor","Victoria","Vida","Vidal","Vilma","Vince","Vincent","Vincenza","Vincenzo","Vinnie","Viola","Violet","Violette","Virgie","Virgil","Virginia","Virginie","Vita","Vito","Viva","Vivian","Viviane","Vivianne","Vivien","Vivienne","Vladimir","Wade","Waino","Waldo","Walker","Wallace","Walter","Walton","Wanda","Ward","Warren","Watson","Wava","Waylon","Wayne","Webster","Weldon","Wellington","Wendell","Wendy","Werner","Westley","Weston","Whitney","Wilber","Wilbert","Wilburn","Wiley","Wilford","Wilfred","Wilfredo","Wilfrid","Wilhelm","Wilhelmine","Will","Willa","Willard","William","Willie","Willis","Willow","Willy","Wilma","Wilmer","Wilson","Wilton","Winfield","Winifred","Winnifred","Winona","Winston","Woodrow","Wyatt","Wyman","Xander","Xavier","Xzavier","Yadira","Yasmeen","Yasmin","Yasmine","Yazmin","Yesenia","Yessenia","Yolanda","Yoshiko","Yvette","Yvonne","Zachariah","Zachary","Zachery","Zack","Zackary","Zackery","Zakary","Zander","Zane","Zaria","Zechariah","Zelda","Zella","Zelma","Zena","Zetta","Zion","Zita","Zoe","Zoey","Zoie","Zoila","Zola","Zora","Zula"],female:["Mary","Patricia","Linda","Barbara","Elizabeth","Jennifer","Maria","Susan","Margaret","Dorothy","Lisa","Nancy","Karen","Betty","Helen","Sandra","Donna","Carol","Ruth","Sharon","Michelle","Laura","Sarah","Kimberly","Deborah","Jessica","Shirley","Cynthia","Angela","Melissa","Brenda","Amy","Anna","Rebecca","Virginia","Kathleen","Pamela","Martha","Debra","Amanda","Stephanie","Carolyn","Christine","Marie","Janet","Catherine","Frances","Ann","Joyce","Diane","Alice","Julie","Heather","Teresa","Doris","Gloria","Evelyn","Jean","Cheryl","Mildred","Katherine","Joan","Ashley","Judith","Rose","Janice","Kelly","Nicole","Judy","Christina","Kathy","Theresa","Beverly","Denise","Tammy","Irene","Jane","Lori","Rachel","Marilyn","Andrea","Kathryn","Louise","Sara","Anne","Jacqueline","Wanda","Bonnie","Julia","Ruby","Lois","Tina","Phyllis","Norma","Paula","Diana","Annie","Lillian","Emily","Robin","Peggy","Crystal","Gladys","Rita","Dawn","Connie","Florence","Tracy","Edna","Tiffany","Carmen","Rosa","Cindy","Grace","Wendy","Victoria","Edith","Kim","Sherry","Sylvia","Josephine","Thelma","Shannon","Sheila","Ethel","Ellen","Elaine","Marjorie","Carrie","Charlotte","Monica","Esther","Pauline","Emma","Juanita","Anita","Rhonda","Hazel","Amber","Eva","Debbie","April","Leslie","Clara","Lucille","Jamie","Joanne","Eleanor","Valerie","Danielle","Megan","Alicia","Suzanne","Michele","Gail","Bertha","Darlene","Veronica","Jill","Erin","Geraldine","Lauren","Cathy","Joann","Lorraine","Lynn","Sally","Regina","Erica","Beatrice","Dolores","Bernice","Audrey","Yvonne","Annette","June","Samantha","Marion","Dana","Stacy","Ana","Renee","Ida","Vivian","Roberta","Holly","Brittany","Melanie","Loretta","Yolanda","Jeanette","Laurie","Katie","Kristen","Vanessa","Alma","Sue","Elsie","Beth","Jeanne","Vicki","Carla","Tara","Rosemary","Eileen","Terri","Gertrude","Lucy","Tonya","Ella","Stacey","Wilma","Gina","Kristin","Jessie","Natalie","Agnes","Vera","Willie","Charlene","Bessie","Delores","Melinda","Pearl","Arlene","Maureen","Colleen","Allison","Tamara","Joy","Georgia","Constance","Lillie","Claudia","Jackie","Marcia","Tanya","Nellie","Minnie","Marlene","Heidi","Glenda","Lydia","Viola","Courtney","Marian","Stella","Caroline","Dora","Jo","Vickie","Mattie","Terry","Maxine","Irma","Mabel","Marsha","Myrtle","Lena","Christy","Deanna","Patsy","Hilda","Gwendolyn","Jennie","Nora","Margie","Nina","Cassandra","Leah","Penny","Kay","Priscilla","Naomi","Carole","Brandy","Olga","Billie","Dianne","Tracey","Leona","Jenny","Felicia","Sonia","Miriam","Velma","Becky","Bobbie","Violet","Kristina","Toni","Misty","Mae","Shelly","Daisy","Ramona","Sherri","Erika","Katrina","Claire","Lindsey","Lindsay","Geneva","Guadalupe","Belinda","Margarita","Sheryl","Cora","Faye","Ada","Natasha","Sabrina","Isabel","Marguerite","Hattie","Harriet","Molly","Cecilia","Kristi","Brandi","Blanche","Sandy","Rosie","Joanna","Iris","Eunice","Angie","Inez","Lynda","Madeline","Amelia","Alberta","Genevieve","Monique","Jodi","Janie","Maggie","Kayla","Sonya","Jan","Lee","Kristine","Candace","Fannie","Maryann","Opal","Alison","Yvette","Melody","Luz","Susie","Olivia","Flora","Shelley","Kristy","Mamie","Lula","Lola","Verna","Beulah","Antoinette","Candice","Juana","Jeannette","Pam","Kelli","Hannah","Whitney","Bridget","Karla","Celia","Latoya","Patty","Shelia","Gayle","Della","Vicky","Lynne","Sheri","Marianne","Kara","Jacquelyn","Erma","Blanca","Myra","Leticia","Pat","Krista","Roxanne","Angelica","Johnnie","Robyn","Francis","Adrienne","Rosalie","Alexandra","Brooke","Bethany","Sadie","Bernadette","Traci","Jody","Kendra","Jasmine","Nichole","Rachael","Chelsea","Mable","Ernestine","Muriel","Marcella","Elena","Krystal","Angelina","Nadine","Kari","Estelle","Dianna","Paulette","Lora","Mona","Doreen","Rosemarie","Angel","Desiree","Antonia","Hope","Ginger","Janis","Betsy","Christie","Freda","Mercedes","Meredith","Lynette","Teri","Cristina","Eula","Leigh","Meghan","Sophia","Eloise","Rochelle","Gretchen","Cecelia","Raquel","Henrietta","Alyssa","Jana","Kelley","Gwen","Kerry","Jenna","Tricia","Laverne","Olive","Alexis","Tasha","Silvia","Elvira","Casey","Delia","Sophie","Kate","Patti","Lorena","Kellie","Sonja","Lila","Lana","Darla","May","Mindy","Essie","Mandy","Lorene","Elsa","Josefina","Jeannie","Miranda","Dixie","Lucia","Marta","Faith","Lela","Johanna","Shari","Camille","Tami","Shawna","Elisa","Ebony","Melba","Ora","Nettie","Tabitha","Ollie","Jaime","Winifred","Kristie"],male:["James","John","Robert","Michael","William","David","Richard","Charles","Joseph","Thomas","Christopher","Daniel","Paul","Mark","Donald","George","Kenneth","Steven","Edward","Brian","Ronald","Anthony","Kevin","Jason","Matthew","Gary","Timothy","Jose","Larry","Jeffrey","Frank","Scott","Eric","Stephen","Andrew","Raymond","Gregory","Joshua","Jerry","Dennis","Walter","Patrick","Peter","Harold","Douglas","Henry","Carl","Arthur","Ryan","Roger","Joe","Juan","Jack","Albert","Jonathan","Justin","Terry","Gerald","Keith","Samuel","Willie","Ralph","Lawrence","Nicholas","Roy","Benjamin","Bruce","Brandon","Adam","Harry","Fred","Wayne","Billy","Steve","Louis","Jeremy","Aaron","Randy","Howard","Eugene","Carlos","Russell","Bobby","Victor","Martin","Ernest","Phillip","Todd","Jesse","Craig","Alan","Shawn","Clarence","Sean","Philip","Chris","Johnny","Earl","Jimmy","Antonio","Danny","Bryan","Tony","Luis","Mike","Stanley","Leonard","Nathan","Dale","Manuel","Rodney","Curtis","Norman","Allen","Marvin","Vincent","Glenn","Jeffery","Travis","Jeff","Chad","Jacob","Lee","Melvin","Alfred","Kyle","Francis","Bradley","Jesus","Herbert","Frederick","Ray","Joel","Edwin","Don","Eddie","Ricky","Troy","Randall","Barry","Alexander","Bernard","Mario","Leroy","Francisco","Marcus","Micheal","Theodore","Clifford","Miguel","Oscar","Jay","Jim","Tom","Calvin","Alex","Jon","Ronnie","Bill","Lloyd","Tommy","Leon","Derek","Warren","Darrell","Jerome","Floyd","Leo","Alvin","Tim","Wesley","Gordon","Dean","Greg","Jorge","Dustin","Pedro","Derrick","Dan","Lewis","Zachary","Corey","Herman","Maurice","Vernon","Roberto","Clyde","Glen","Hector","Shane","Ricardo","Sam","Rick","Lester","Brent","Ramon","Charlie","Tyler","Gilbert","Gene","Marc","Reginald","Ruben","Brett","Angel","Nathaniel","Rafael","Leslie","Edgar","Milton","Raul","Ben","Chester","Cecil","Duane","Franklin","Andre","Elmer","Brad","Gabriel","Ron","Mitchell","Roland","Arnold","Harvey","Jared","Adrian","Karl","Cory","Claude","Erik","Darryl","Jamie","Neil","Jessie","Christian","Javier","Fernando","Clinton","Ted","Mathew","Tyrone","Darren","Lonnie","Lance","Cody","Julio","Kelly","Kurt","Allan","Nelson","Guy","Clayton","Hugh","Max","Dwayne","Dwight","Armando","Felix","Jimmie","Everett","Jordan","Ian","Wallace","Ken","Bob","Jaime","Casey","Alfredo","Alberto","Dave","Ivan","Johnnie","Sidney","Byron","Julian","Isaac","Morris","Clifton","Willard","Daryl","Ross","Virgil","Andy","Marshall","Salvador","Perry","Kirk","Sergio","Marion","Tracy","Seth","Kent","Terrance","Rene","Eduardo","Terrence","Enrique","Freddie","Wade","Austin","Stuart","Fredrick","Arturo","Alejandro","Jackie","Joey","Nick","Luther","Wendell","Jeremiah","Evan","Julius","Dana","Donnie","Otis","Shannon","Trevor","Oliver","Luke","Homer","Gerard","Doug","Kenny","Hubert","Angelo","Shaun","Lyle","Matt","Lynn","Alfonso","Orlando","Rex","Carlton","Ernesto","Cameron","Neal","Pablo","Lorenzo","Omar","Wilbur","Blake","Grant","Horace","Roderick","Kerry","Abraham","Willis","Rickey","Jean","Ira","Andres","Cesar","Johnathan","Malcolm","Rudolph","Damon","Kelvin","Rudy","Preston","Alton","Archie","Marco","Wm","Pete","Randolph","Garry","Geoffrey","Jonathon","Felipe","Bennie","Gerardo","Ed","Dominic","Robin","Loren","Delbert","Colin","Guillermo","Earnest","Lucas","Benny","Noel","Spencer","Rodolfo","Myron","Edmund","Garrett","Salvatore","Cedric","Lowell","Gregg","Sherman","Wilson","Devin","Sylvester","Kim","Roosevelt","Israel","Jermaine","Forrest","Wilbert","Leland","Simon","Guadalupe","Clark","Irving","Carroll","Bryant","Owen","Rufus","Woodrow","Sammy","Kristopher","Mack","Levi","Marcos","Gustavo","Jake","Lionel","Marty","Taylor","Ellis","Dallas","Gilberto","Clint","Nicolas","Laurence","Ismael","Orville","Drew","Jody","Ervin","Dewey","Al","Wilfred","Josh","Hugo","Ignacio","Caleb","Tomas","Sheldon","Erick","Frankie","Stewart","Doyle","Darrel","Rogelio","Terence","Santiago","Alonzo","Elias","Bert","Elbert","Ramiro","Conrad","Pat","Noah","Grady","Phil","Cornelius","Lamar","Rolando","Clay","Percy","Dexter","Bradford","Merle","Darin","Amos","Terrell","Moses","Irvin","Saul","Roman","Darnell","Randal","Tommie","Timmy","Darrin","Winston","Brendan","Toby","Van","Abel","Dominick","Boyd","Courtney","Jan","Emilio","Elijah","Cary","Domingo","Santos","Aubrey","Emmett","Marlon","Emanuel","Jerald","Edmond"]};var $e$1=["Agender","Androgyne","Androgynous","Bigender","Cis female","Cis male","Cis man","Cis woman","Cis","Cisgender female","Cisgender male","Cisgender man","Cisgender woman","Cisgender","Demi-boy","Demi-girl","Demi-man","Demi-woman","Demiflux","Demigender","F2M","FTM","Female to male trans man","Female to male transgender man","Female to male transsexual man","Female to male","Gender fluid","Gender neutral","Gender nonconforming","Gender questioning","Gender variant","Genderflux","Genderqueer","Hermaphrodite","Intersex man","Intersex person","Intersex woman","Intersex","M2F","MTF","Male to female trans woman","Male to female transgender woman","Male to female transsexual woman","Male to female","Man","Multigender","Neither","Neutrois","Non-binary","Omnigender","Other","Pangender","Polygender","T* man","T* woman","Trans female","Trans male","Trans man","Trans person","Trans woman","Trans","Transsexual female","Transsexual male","Transsexual man","Transsexual person","Transsexual woman","Transsexual","Transgender female","Transgender person","Transmasculine","Trigender","Two* person","Two-spirit person","Two-spirit","Woman","Xenogender"];var ea=["Solutions","Program","Brand","Security","Research","Marketing","Directives","Implementation","Integration","Functionality","Response","Paradigm","Tactics","Identity","Markets","Group","Division","Applications","Optimization","Operations","Infrastructure","Intranet","Communications","Web","Branding","Quality","Assurance","Mobility","Accounts","Data","Creative","Configuration","Accountability","Interactions","Factors","Usability","Metrics"];var aa=["Lead","Senior","Direct","Corporate","Dynamic","Future","Product","National","Regional","District","Central","Global","Customer","Investor","International","Legacy","Forward","Internal","Human","Chief","Principal"];var oa=["{{person.jobDescriptor}} {{person.jobArea}} {{person.jobType}}"];var ra=["Supervisor","Associate","Executive","Liaison","Officer","Manager","Engineer","Specialist","Director","Coordinator","Administrator","Architect","Analyst","Designer","Planner","Orchestrator","Technician","Developer","Producer","Consultant","Assistant","Facilitator","Agent","Representative","Strategist"];var na={generic:["Abbott","Abernathy","Abshire","Adams","Altenwerth","Anderson","Ankunding","Armstrong","Auer","Aufderhar","Bahringer","Bailey","Balistreri","Barrows","Bartell","Bartoletti","Barton","Bashirian","Batz","Bauch","Baumbach","Bayer","Beahan","Beatty","Bechtelar","Becker","Bednar","Beer","Beier","Berge","Bergnaum","Bergstrom","Bernhard","Bernier","Bins","Blanda","Blick","Block","Bode","Boehm","Bogan","Bogisich","Borer","Bosco","Botsford","Boyer","Boyle","Bradtke","Brakus","Braun","Breitenberg","Brekke","Brown","Bruen","Buckridge","Carroll","Carter","Cartwright","Casper","Cassin","Champlin","Christiansen","Cole","Collier","Collins","Conn","Connelly","Conroy","Considine","Corkery","Cormier","Corwin","Cremin","Crist","Crona","Cronin","Crooks","Cruickshank","Cummerata","Cummings","Dach","D'Amore","Daniel","Dare","Daugherty","Davis","Deckow","Denesik","Dibbert","Dickens","Dicki","Dickinson","Dietrich","Donnelly","Dooley","Douglas","Doyle","DuBuque","Durgan","Ebert","Effertz","Emard","Emmerich","Erdman","Ernser","Fadel","Fahey","Farrell","Fay","Feeney","Feest","Feil","Ferry","Fisher","Flatley","Frami","Franecki","Franey","Friesen","Fritsch","Funk","Gerhold","Gerlach","Gibson","Gislason","Gleason","Gleichner","Glover","Goldner","Goodwin","Gorczany","Gottlieb","Goyette","Grady","Graham","Grant","Green","Greenfelder","Greenholt","Grimes","Gulgowski","Gusikowski","Gutkowski","Gutmann","Haag","Hackett","Hagenes","Hahn","Haley","Halvorson","Hamill","Hammes","Hand","Hane","Hansen","Harber","Harris","Hartmann","Harvey","Hauck","Hayes","Heaney","Heathcote","Hegmann","Heidenreich","Heller","Herman","Hermann","Hermiston","Herzog","Hessel","Hettinger","Hickle","Hilll","Hills","Hilpert","Hintz","Hirthe","Hodkiewicz","Hoeger","Homenick","Hoppe","Howe","Howell","Hudson","Huel","Huels","Hyatt","Jacobi","Jacobs","Jacobson","Jakubowski","Jaskolski","Jast","Jenkins","Jerde","Johns","Johnson","Johnston","Jones","Kassulke","Kautzer","Keebler","Keeling","Kemmer","Kerluke","Kertzmann","Kessler","Kiehn","Kihn","Kilback","King","Kirlin","Klein","Kling","Klocko","Koch","Koelpin","Koepp","Kohler","Konopelski","Koss","Kovacek","Kozey","Krajcik","Kreiger","Kris","Kshlerin","Kub","Kuhic","Kuhlman","Kuhn","Kulas","Kunde","Kunze","Kuphal","Kutch","Kuvalis","Labadie","Lakin","Lang","Langosh","Langworth","Larkin","Larson","Leannon","Lebsack","Ledner","Leffler","Legros","Lehner","Lemke","Lesch","Leuschke","Lind","Lindgren","Littel","Little","Lockman","Lowe","Lubowitz","Lueilwitz","Luettgen","Lynch","Macejkovic","MacGyver","Maggio","Mann","Mante","Marks","Marquardt","Marvin","Mayer","Mayert","McClure","McCullough","McDermott","McGlynn","McKenzie","McLaughlin","Medhurst","Mertz","Metz","Miller","Mills","Mitchell","Moen","Mohr","Monahan","Moore","Morar","Morissette","Mosciski","Mraz","Mueller","Muller","Murazik","Murphy","Murray","Nader","Nicolas","Nienow","Nikolaus","Nitzsche","Nolan","Oberbrunner","O'Connell","O'Conner","O'Hara","O'Keefe","O'Kon","Okuneva","Olson","Ondricka","O'Reilly","Orn","Ortiz","Osinski","Pacocha","Padberg","Pagac","Parisian","Parker","Paucek","Pfannerstill","Pfeffer","Pollich","Pouros","Powlowski","Predovic","Price","Prohaska","Prosacco","Purdy","Quigley","Quitzon","Rath","Ratke","Rau","Raynor","Reichel","Reichert","Reilly","Reinger","Rempel","Renner","Reynolds","Rice","Rippin","Ritchie","Robel","Roberts","Rodriguez","Rogahn","Rohan","Rolfson","Romaguera","Roob","Rosenbaum","Rowe","Ruecker","Runolfsdottir","Runolfsson","Runte","Russel","Rutherford","Ryan","Sanford","Satterfield","Sauer","Sawayn","Schaden","Schaefer","Schamberger","Schiller","Schimmel","Schinner","Schmeler","Schmidt","Schmitt","Schneider","Schoen","Schowalter","Schroeder","Schulist","Schultz","Schumm","Schuppe","Schuster","Senger","Shanahan","Shields","Simonis","Sipes","Skiles","Smith","Smitham","Spencer","Spinka","Sporer","Stamm","Stanton","Stark","Stehr","Steuber","Stiedemann","Stokes","Stoltenberg","Stracke","Streich","Stroman","Strosin","Swaniawski","Swift","Terry","Thiel","Thompson","Tillman","Torp","Torphy","Towne","Toy","Trantow","Tremblay","Treutel","Tromp","Turcotte","Turner","Ullrich","Upton","Vandervort","Veum","Volkman","Von","VonRueden","Waelchi","Walker","Walsh","Walter","Ward","Waters","Watsica","Weber","Wehner","Weimann","Weissnat","Welch","West","White","Wiegand","Wilderman","Wilkinson","Will","Williamson","Willms","Windler","Wintheiser","Wisoky","Wisozk","Witting","Wiza","Wolf","Wolff","Wuckert","Wunsch","Wyman","Yost","Yundt","Zboncak","Zemlak","Ziemann","Zieme","Zulauf"]};var ia={generic:[{value:"{{person.last_name.generic}}",weight:95},{value:"{{person.last_name.generic}}-{{person.last_name.generic}}",weight:5}]};var ta={generic:["Addison","Alex","Anderson","Angel","Arden","August","Austin","Avery","Bailey","Billie","Blake","Bowie","Brooklyn","Cameron","Charlie","Corey","Dakota","Drew","Elliott","Ellis","Emerson","Finley","Gray","Greer","Harper","Hayden","Jaden","James","Jamie","Jordan","Jules","Kai","Kendall","Kennedy","Kyle","Leslie","Logan","London","Marlowe","Micah","Nico","Noah","North","Parker","Phoenix","Quinn","Reagan","Reese","Reign","Riley","River","Robin","Rory","Rowan","Ryan","Sage","Sasha","Sawyer","Shawn","Shiloh","Skyler","Taylor"],female:["Abigail","Adele","Alex","Alice","Alisha","Amber","Amelia","Amora","Ana\xEFs","Angelou","Anika","Anise","Annabel","Anne","Aphrodite","Aretha","Arya","Ashton","Aster","Audrey","Avery","Bailee","Bay","Belle","Beth","Billie","Blair","Blaise","Blake","Blanche","Blue","Bree","Brielle","Brienne","Brooke","Caleen","Candice","Caprice","Carelyn","Caylen","Celine","Cerise","Cia","Claire","Claudia","Clementine","Coral","Coraline","Dahlia","Dakota","Dawn","Della","Demi","Denise","Denver","Devine","Devon","Diana","Dylan","Ebony","Eden","Eleanor","Elein","Elizabeth","Ellen","Elodie","Eloise","Ember","Emma","Erin","Eyre","Faith","Farrah","Fawn","Fayre","Fern","France","Francis","Frida","Genisis","Georgia","Grace","Gwen","Harley","Harper","Hazel","Helen","Hippolyta","Holly","Hope","Imani","Iowa","Ireland","Irene","Iris","Isa","Isla","Ivy","Jade","Jane","Jazz","Jean","Jess","Jett","Jo","Joan","Jolie","Jordan","Josie","Journey","Joy","Jules","Julien","Juliet","Juniper","Justice","Kali","Karma","Kat","Kate","Kennedy","Keva","Kylie","Lake","Lane","Lark","Layla","Lee","Leigh","Leona","Lexi","London","Lou","Louise","Love","Luna","Lux","Lynn","Lyric","Maddie","Mae","Marie","Matilda","Maude","Maybel","Meadow","Medusa","Mercy","Michelle","Mirabel","Monroe","Morgan","Nalia","Naomi","Nova","Olive","Paige","Parker","Pax","Pearl","Penelope","Phoenix","Quinn","Rae","Rain","Raven","Ray","Raye","Rebel","Reese","Reeve","Regan","Riley","River","Robin","Rory","Rose","Royal","Ruth","Rylie","Sage","Sam","Saturn","Scout","Serena","Sky","Skylar","Sofia","Sophia","Storm","Sue","Suzanne","Sydney","Taylen","Taylor","Teagan","Tempest","Tenley","Thea","Trinity","Valerie","Venus","Vera","Violet","Willow","Winter","Xena","Zaylee","Zion","Zoe"],male:["Ace","Aiden","Alexander","Ander","Anthony","Asher","August","Aziel","Bear","Beckham","Benjamin","Buddy","Calvin","Carter","Charles","Christopher","Clyde","Cooper","Daniel","David","Dior","Dylan","Elijah","Ellis","Emerson","Ethan","Ezra","Fletcher","Flynn","Gabriel","Grayson","Gus","Hank","Harrison","Hendrix","Henry","Houston","Hudson","Hugh","Isaac","Jack","Jackson","Jacob","Jakobe","James","Jaxon","Jaxtyn","Jayden","John","Joseph","Josiah","Jude","Julian","Karsyn","Kenji","Kobe","Kylo","Lennon","Leo","Levi","Liam","Lincoln","Logan","Louis","Lucas","Lucky","Luke","Mason","Mateo","Matthew","Maverick","Michael","Monroe","Nixon","Ocean","Oliver","Otis","Otto","Owen","Ozzy","Parker","Rocky","Samuel","Sebastian","Sonny","Teddy","Theo","Theodore","Thomas","Truett","Walter","Warren","Watson","William","Wison","Wyatt","Ziggy","Zyair"]};var la=[{value:"{{person.firstName}} {{person.lastName}}",weight:49},{value:"{{person.prefix}} {{person.firstName}} {{person.lastName}}",weight:7},{value:"{{person.firstName}} {{person.lastName}} {{person.suffix}}",weight:7},{value:"{{person.prefix}} {{person.firstName}} {{person.lastName}} {{person.suffix}}",weight:1}];var sa={generic:["Dr.","Miss","Mr.","Mrs.","Ms."],female:["Mrs.","Ms.","Miss","Dr."],male:["Mr.","Dr."]};var da=["female","male"];var ua=["Jr.","Sr.","I","II","III","IV","V","MD","DDS","PhD","DVM"];var ca=["Aquarius","Pisces","Aries","Taurus","Gemini","Cancer","Leo","Virgo","Libra","Scorpio","Sagittarius","Capricorn"];var oo={bio_part:Ze$1,bio_pattern:_e$1,bio_supporter:Qe$1,first_name:Xe$1,gender:$e$1,job_area:ea,job_descriptor:aa,job_title_pattern:oa,job_type:ra,last_name:na,last_name_pattern:ia,middle_name:ta,name:la,prefix:sa,sex:da,suffix:ua,western_zodiac_sign:ca},ma=oo;var ha=["!##-!##-####","(!##) !##-####","1-!##-!##-####","!##.!##.####","!##-!##-#### x###","(!##) !##-#### x###","1-!##-!##-#### x###","!##.!##.#### x###","!##-!##-#### x####","(!##) !##-#### x####","1-!##-!##-#### x####","!##.!##.#### x####","!##-!##-#### x#####","(!##) !##-#### x#####","1-!##-!##-#### x#####","!##.!##.#### x#####"];var ya=["+1!##!######"];var pa=["(!##) !##-####"];var ro={human:ha,international:ya,national:pa},ga=ro;var no={format:ga},ba=no;var Sa=[{symbol:"H",name:"Hydrogen",atomicNumber:1},{symbol:"He",name:"Helium",atomicNumber:2},{symbol:"Li",name:"Lithium",atomicNumber:3},{symbol:"Be",name:"Beryllium",atomicNumber:4},{symbol:"B",name:"Boron",atomicNumber:5},{symbol:"C",name:"Carbon",atomicNumber:6},{symbol:"N",name:"Nitrogen",atomicNumber:7},{symbol:"O",name:"Oxygen",atomicNumber:8},{symbol:"F",name:"Fluorine",atomicNumber:9},{symbol:"Ne",name:"Neon",atomicNumber:10},{symbol:"Na",name:"Sodium",atomicNumber:11},{symbol:"Mg",name:"Magnesium",atomicNumber:12},{symbol:"Al",name:"Aluminium",atomicNumber:13},{symbol:"Si",name:"Silicon",atomicNumber:14},{symbol:"P",name:"Phosphorus",atomicNumber:15},{symbol:"S",name:"Sulfur",atomicNumber:16},{symbol:"Cl",name:"Chlorine",atomicNumber:17},{symbol:"Ar",name:"Argon",atomicNumber:18},{symbol:"K",name:"Potassium",atomicNumber:19},{symbol:"Ca",name:"Calcium",atomicNumber:20},{symbol:"Sc",name:"Scandium",atomicNumber:21},{symbol:"Ti",name:"Titanium",atomicNumber:22},{symbol:"V",name:"Vanadium",atomicNumber:23},{symbol:"Cr",name:"Chromium",atomicNumber:24},{symbol:"Mn",name:"Manganese",atomicNumber:25},{symbol:"Fe",name:"Iron",atomicNumber:26},{symbol:"Co",name:"Cobalt",atomicNumber:27},{symbol:"Ni",name:"Nickel",atomicNumber:28},{symbol:"Cu",name:"Copper",atomicNumber:29},{symbol:"Zn",name:"Zinc",atomicNumber:30},{symbol:"Ga",name:"Gallium",atomicNumber:31},{symbol:"Ge",name:"Germanium",atomicNumber:32},{symbol:"As",name:"Arsenic",atomicNumber:33},{symbol:"Se",name:"Selenium",atomicNumber:34},{symbol:"Br",name:"Bromine",atomicNumber:35},{symbol:"Kr",name:"Krypton",atomicNumber:36},{symbol:"Rb",name:"Rubidium",atomicNumber:37},{symbol:"Sr",name:"Strontium",atomicNumber:38},{symbol:"Y",name:"Yttrium",atomicNumber:39},{symbol:"Zr",name:"Zirconium",atomicNumber:40},{symbol:"Nb",name:"Niobium",atomicNumber:41},{symbol:"Mo",name:"Molybdenum",atomicNumber:42},{symbol:"Tc",name:"Technetium",atomicNumber:43},{symbol:"Ru",name:"Ruthenium",atomicNumber:44},{symbol:"Rh",name:"Rhodium",atomicNumber:45},{symbol:"Pd",name:"Palladium",atomicNumber:46},{symbol:"Ag",name:"Silver",atomicNumber:47},{symbol:"Cd",name:"Cadmium",atomicNumber:48},{symbol:"In",name:"Indium",atomicNumber:49},{symbol:"Sn",name:"Tin",atomicNumber:50},{symbol:"Sb",name:"Antimony",atomicNumber:51},{symbol:"Te",name:"Tellurium",atomicNumber:52},{symbol:"I",name:"Iodine",atomicNumber:53},{symbol:"Xe",name:"Xenon",atomicNumber:54},{symbol:"Cs",name:"Caesium",atomicNumber:55},{symbol:"Ba",name:"Barium",atomicNumber:56},{symbol:"La",name:"Lanthanum",atomicNumber:57},{symbol:"Ce",name:"Cerium",atomicNumber:58},{symbol:"Pr",name:"Praseodymium",atomicNumber:59},{symbol:"Nd",name:"Neodymium",atomicNumber:60},{symbol:"Pm",name:"Promethium",atomicNumber:61},{symbol:"Sm",name:"Samarium",atomicNumber:62},{symbol:"Eu",name:"Europium",atomicNumber:63},{symbol:"Gd",name:"Gadolinium",atomicNumber:64},{symbol:"Tb",name:"Terbium",atomicNumber:65},{symbol:"Dy",name:"Dysprosium",atomicNumber:66},{symbol:"Ho",name:"Holmium",atomicNumber:67},{symbol:"Er",name:"Erbium",atomicNumber:68},{symbol:"Tm",name:"Thulium",atomicNumber:69},{symbol:"Yb",name:"Ytterbium",atomicNumber:70},{symbol:"Lu",name:"Lutetium",atomicNumber:71},{symbol:"Hf",name:"Hafnium",atomicNumber:72},{symbol:"Ta",name:"Tantalum",atomicNumber:73},{symbol:"W",name:"Tungsten",atomicNumber:74},{symbol:"Re",name:"Rhenium",atomicNumber:75},{symbol:"Os",name:"Osmium",atomicNumber:76},{symbol:"Ir",name:"Iridium",atomicNumber:77},{symbol:"Pt",name:"Platinum",atomicNumber:78},{symbol:"Au",name:"Gold",atomicNumber:79},{symbol:"Hg",name:"Mercury",atomicNumber:80},{symbol:"Tl",name:"Thallium",atomicNumber:81},{symbol:"Pb",name:"Lead",atomicNumber:82},{symbol:"Bi",name:"Bismuth",atomicNumber:83},{symbol:"Po",name:"Polonium",atomicNumber:84},{symbol:"At",name:"Astatine",atomicNumber:85},{symbol:"Rn",name:"Radon",atomicNumber:86},{symbol:"Fr",name:"Francium",atomicNumber:87},{symbol:"Ra",name:"Radium",atomicNumber:88},{symbol:"Ac",name:"Actinium",atomicNumber:89},{symbol:"Th",name:"Thorium",atomicNumber:90},{symbol:"Pa",name:"Protactinium",atomicNumber:91},{symbol:"U",name:"Uranium",atomicNumber:92},{symbol:"Np",name:"Neptunium",atomicNumber:93},{symbol:"Pu",name:"Plutonium",atomicNumber:94},{symbol:"Am",name:"Americium",atomicNumber:95},{symbol:"Cm",name:"Curium",atomicNumber:96},{symbol:"Bk",name:"Berkelium",atomicNumber:97},{symbol:"Cf",name:"Californium",atomicNumber:98},{symbol:"Es",name:"Einsteinium",atomicNumber:99},{symbol:"Fm",name:"Fermium",atomicNumber:100},{symbol:"Md",name:"Mendelevium",atomicNumber:101},{symbol:"No",name:"Nobelium",atomicNumber:102},{symbol:"Lr",name:"Lawrencium",atomicNumber:103},{symbol:"Rf",name:"Rutherfordium",atomicNumber:104},{symbol:"Db",name:"Dubnium",atomicNumber:105},{symbol:"Sg",name:"Seaborgium",atomicNumber:106},{symbol:"Bh",name:"Bohrium",atomicNumber:107},{symbol:"Hs",name:"Hassium",atomicNumber:108},{symbol:"Mt",name:"Meitnerium",atomicNumber:109},{symbol:"Ds",name:"Darmstadtium",atomicNumber:110},{symbol:"Rg",name:"Roentgenium",atomicNumber:111},{symbol:"Cn",name:"Copernicium",atomicNumber:112},{symbol:"Nh",name:"Nihonium",atomicNumber:113},{symbol:"Fl",name:"Flerovium",atomicNumber:114},{symbol:"Mc",name:"Moscovium",atomicNumber:115},{symbol:"Lv",name:"Livermorium",atomicNumber:116},{symbol:"Ts",name:"Tennessine",atomicNumber:117},{symbol:"Og",name:"Oganesson",atomicNumber:118}];var ka=[{name:"meter",symbol:"m"},{name:"second",symbol:"s"},{name:"mole",symbol:"mol"},{name:"ampere",symbol:"A"},{name:"kelvin",symbol:"K"},{name:"candela",symbol:"cd"},{name:"kilogram",symbol:"kg"},{name:"radian",symbol:"rad"},{name:"hertz",symbol:"Hz"},{name:"newton",symbol:"N"},{name:"pascal",symbol:"Pa"},{name:"joule",symbol:"J"},{name:"watt",symbol:"W"},{name:"coulomb",symbol:"C"},{name:"volt",symbol:"V"},{name:"ohm",symbol:"\u03A9"},{name:"tesla",symbol:"T"},{name:"degree Celsius",symbol:"\xB0C"},{name:"lumen",symbol:"lm"},{name:"becquerel",symbol:"Bq"},{name:"gray",symbol:"Gy"},{name:"sievert",symbol:"Sv"},{name:"steradian",symbol:"sr"},{name:"farad",symbol:"F"},{name:"siemens",symbol:"S"},{name:"weber",symbol:"Wb"},{name:"henry",symbol:"H"},{name:"lux",symbol:"lx"},{name:"katal",symbol:"kat"}];var io={chemical_element:Sa,unit:ka},Ca=io;var fa=["ants","bats","bears","bees","birds","buffalo","cats","chickens","cattle","dogs","dolphins","ducks","elephants","fishes","foxes","frogs","geese","goats","horses","kangaroos","lions","monkeys","owls","oxen","penguins","people","pigs","rabbits","sheep","tigers","whales","wolves","zebras","banshees","crows","black cats","chimeras","ghosts","conspirators","dragons","dwarves","elves","enchanters","exorcists","sons","foes","giants","gnomes","goblins","gooses","griffins","lycanthropes","nemesis","ogres","oracles","prophets","sorcerors","spiders","spirits","vampires","warlocks","vixens","werewolves","witches","worshipers","zombies","druids"];var va=["{{location.state}} {{team.creature}}"];var to={creature:fa,name:va},Aa=to;var Ba=["Adventure Road Bicycle","BMX Bicycle","City Bicycle","Cruiser Bicycle","Cyclocross Bicycle","Dual-Sport Bicycle","Fitness Bicycle","Flat-Foot Comfort Bicycle","Folding Bicycle","Hybrid Bicycle","Mountain Bicycle","Recumbent Bicycle","Road Bicycle","Tandem Bicycle","Touring Bicycle","Track/Fixed-Gear Bicycle","Triathlon/Time Trial Bicycle","Tricycle"];var wa=["Diesel","Electric","Gasoline","Hybrid"];var Ma=["Aston Martin","Audi","BMW","Bentley","Bugatti","Cadillac","Chevrolet","Chrysler","Dodge","Ferrari","Fiat","Ford","Honda","Hyundai","Jaguar","Jeep","Kia","Lamborghini","Land Rover","Maserati","Mazda","Mercedes Benz","Mini","Nissan","Polestar","Porsche","Rolls Royce","Smart","Tesla","Toyota","Volkswagen","Volvo"];var Ta=["1","2","911","A4","A8","ATS","Accord","Alpine","Altima","Aventador","Beetle","CTS","CX-9","Camaro","Camry","Challenger","Charger","Civic","Colorado","Corvette","Countach","Cruze","Durango","El Camino","Element","Escalade","Expedition","Explorer","F-150","Fiesta","Focus","Fortwo","Golf","Grand Caravan","Grand Cherokee","Impala","Jetta","Land Cruiser","LeBaron","Malibu","Mercielago","Model 3","Model S","Model T","Model X","Model Y","Mustang","PT Cruiser","Prius","Ranchero","Roadster","Sentra","Silverado","Spyder","Taurus","V90","Volt","Wrangler","XC90","XTS"];var La=["Cargo Van","Convertible","Coupe","Crew Cab Pickup","Extended Cab Pickup","Hatchback","Minivan","Passenger Van","SUV","Sedan","Wagon"];var lo={bicycle_type:Ba,fuel:wa,manufacturer:Ma,model:Ta,type:La},Da=lo;var Ra=["abandoned","able","acceptable","acclaimed","accomplished","accurate","aching","acidic","actual","admired","adolescent","advanced","affectionate","afraid","aged","aggravating","aggressive","agile","agitated","agreeable","ajar","alarmed","alert","alienated","alive","all","altruistic","amazing","ambitious","ample","amused","angelic","anguished","animated","annual","another","antique","any","apprehensive","appropriate","apt","arid","artistic","ashamed","assured","astonishing","athletic","austere","authentic","authorized","avaricious","average","aware","awesome","awful","babyish","back","bad","baggy","bare","basic","beloved","beneficial","best","better","big","biodegradable","bitter","black","black-and-white","blank","blaring","bleak","blind","blond","blue","blushing","bogus","boiling","bony","boring","bossy","both","bouncy","bowed","brave","breakable","bright","brilliant","brisk","broken","brown","bruised","bulky","burdensome","burly","bustling","busy","buttery","buzzing","calculating","candid","carefree","careless","caring","cautious","cavernous","celebrated","charming","cheap","cheerful","chilly","chubby","circular","classic","clean","clear","clear-cut","close","closed","cloudy","clueless","clumsy","cluttered","coarse","colorful","colorless","colossal","comfortable","common","compassionate","competent","complete","complicated","concerned","concrete","confused","considerate","content","cool","cooperative","coordinated","corny","corrupt","courageous","courteous","crafty","crazy","creamy","creative","criminal","critical","crooked","crowded","cruel","crushing","cuddly","cultivated","cumbersome","curly","cute","damaged","damp","dapper","dark","darling","dazzling","dead","deadly","deafening","dearest","decent","decisive","deep","defenseless","defensive","deficient","definite","definitive","delectable","delicious","delirious","dense","dental","dependable","dependent","descriptive","deserted","determined","devoted","different","difficult","digital","diligent","dim","direct","dirty","discrete","disloyal","dismal","distant","distinct","distorted","doting","downright","drab","dramatic","dreary","dual","dull","dutiful","each","early","earnest","easy","ecstatic","edible","educated","elastic","elderly","electric","elegant","elementary","elliptical","eminent","emotional","empty","enchanted","enchanting","energetic","enlightened","enraged","entire","equatorial","essential","esteemed","ethical","everlasting","every","evil","exalted","excellent","excitable","excited","exhausted","exotic","expensive","experienced","expert","extra-large","extroverted","failing","faint","fair","fake","familiar","fantastic","far","far-flung","far-off","faraway","fat","fatal","fatherly","favorable","favorite","fearless","feline","filthy","fine","finished","firm","first","firsthand","fixed","flashy","flawed","flawless","flickering","flimsy","flowery","fluffy","flustered","focused","fond","foolhardy","foolish","forceful","formal","forsaken","fortunate","fragrant","frail","frank","free","french","frequent","friendly","frightened","frilly","frivolous","frizzy","front","frozen","frugal","fruitful","functional","funny","fussy","fuzzy","gaseous","general","gentle","genuine","gifted","gigantic","giving","glaring","glass","gleaming","glittering","gloomy","glorious","glossy","glum","golden","good","good-natured","gorgeous","graceful","gracious","grandiose","granular","grave","gray","great","greedy","grim","grimy","gripping","grizzled","grouchy","grounded","growing","grown","grubby","gruesome","grumpy","guilty","gullible","gummy","hairy","handsome","handy","happy","happy-go-lucky","hard-to-find","harmful","hasty","hateful","haunting","heartfelt","heavenly","heavy","hefty","helpful","helpless","hidden","hoarse","hollow","homely","honorable","honored","hopeful","hospitable","hot","huge","humble","humiliating","hungry","hurtful","husky","icy","ideal","idealistic","idolized","ignorant","ill","ill-fated","illiterate","illustrious","imaginary","imaginative","immaculate","immediate","immense","impartial","impassioned","impeccable","impish","impolite","important","impossible","impractical","impressionable","impressive","improbable","impure","inborn","incomparable","incomplete","inconsequential","indelible","indolent","inexperienced","infamous","infatuated","inferior","infinite","informal","innocent","insecure","insidious","insignificant","insistent","instructive","intelligent","intent","interesting","internal","international","intrepid","ironclad","irresponsible","jagged","jam-packed","jaunty","jealous","jittery","joyful","joyous","jubilant","judicious","juicy","jumbo","junior","juvenile","kaleidoscopic","key","knotty","knowledgeable","known","kooky","kosher","lanky","last","lasting","late","lavish","lawful","lazy","leading","lean","left","legal","light","lighthearted","likable","likely","limited","limp","limping","linear","lined","liquid","little","live","lively","livid","lone","lonely","long","long-term","lost","lovable","lovely","low","lucky","lumbering","lumpy","lustrous","mad","made-up","magnificent","majestic","major","male","mammoth","married","marvelous","massive","mature","meager","mealy","mean","measly","meaty","mediocre","medium","memorable","menacing","merry","messy","metallic","mild","milky","mindless","minor","minty","miserable","miserly","misguided","mixed","moist","monstrous","monthly","monumental","moral","motionless","muddy","muffled","multicolored","mundane","murky","mushy","musty","muted","mysterious","narrow","natural","naughty","nautical","near","neat","necessary","needy","negative","neglected","negligible","neighboring","nervous","new","next","nice","nifty","nimble","nippy","nocturnal","normal","noted","noteworthy","noxious","numb","nutritious","obedient","oblong","obvious","odd","oddball","official","oily","old","old-fashioned","only","optimal","optimistic","orange","orderly","ordinary","ornate","ornery","other","our","outgoing","outlandish","outlying","outrageous","outstanding","oval","overcooked","overdue","palatable","pale","paltry","parallel","parched","partial","passionate","pastel","peaceful","peppery","perfumed","perky","personal","pertinent","pessimistic","petty","phony","physical","pink","pitiful","plain","pleasant","pleased","pleasing","plump","pointed","pointless","polished","polite","political","poor","portly","posh","possible","potable","powerful","powerless","practical","precious","present","prestigious","pretty","pricey","prickly","primary","prime","private","probable","productive","profitable","profuse","proper","proud","prudent","punctual","puny","pure","purple","pushy","putrid","puzzled","qualified","quarrelsome","quarterly","queasy","querulous","questionable","quick","quick-witted","quiet","quintessential","quixotic","radiant","ragged","rapid","rare","raw","realistic","reasonable","recent","reckless","rectangular","red","reflecting","regal","regular","remarkable","remorseful","repentant","respectful","responsible","rewarding","rich","right","rigid","ripe","roasted","robust","rosy","rotating","rotten","rough","round","rowdy","royal","rubbery","ruddy","rundown","runny","rural","rusty","sad","salty","same","sandy","sarcastic","sardonic","scaly","scared","scary","scented","scientific","scornful","scratchy","second","second-hand","secondary","secret","self-assured","self-reliant","selfish","sentimental","separate","serene","serpentine","severe","shabby","shadowy","shady","shallow","shameful","shameless","shimmering","shiny","shocked","shoddy","short","short-term","showy","shrill","shy","sick","silent","silky","silver","similar","simple","simplistic","sinful","sizzling","skeletal","sleepy","slight","slimy","slow","slushy","small","smart","smoggy","smooth","smug","snappy","snarling","sneaky","sniveling","snoopy","sociable","soft","soggy","somber","some","sophisticated","sore","sorrowful","soulful","soupy","sour","spanish","sparkling","sparse","specific","speedy","spherical","spiffy","spirited","spiteful","splendid","spotless","square","squeaky","squiggly","stable","staid","stained","stale","standard","stark","steel","steep","sticky","stiff","stingy","stormy","straight","strange","strict","strident","striking","strong","stunning","stupendous","sturdy","stylish","subdued","submissive","substantial","subtle","suburban","sudden","sugary","sunny","super","superb","superficial","superior","supportive","sure-footed","surprised","svelte","sweet","swift","talkative","tall","tame","tangible","tasty","tattered","taut","tedious","teeming","tempting","tender","tense","tepid","terrible","that","these","thick","thin","thorny","thorough","those","thrifty","tidy","tight","timely","tinted","tiny","tired","torn","total","tough","tragic","trained","triangular","tricky","trim","trivial","troubled","true","trusting","trustworthy","trusty","turbulent","twin","ugly","ultimate","unaware","uncomfortable","uncommon","unconscious","understated","uneven","unfinished","unfit","unfortunate","unhappy","unhealthy","uniform","unimportant","unique","unkempt","unknown","unlawful","unlined","unlucky","unpleasant","unrealistic","unripe","unruly","unselfish","unsightly","unsteady","unsung","untidy","untimely","untried","untrue","unused","unusual","unwelcome","unwieldy","unwilling","unwritten","upbeat","upright","upset","urban","usable","useless","utilized","utter","vague","vain","valuable","variable","vast","velvety","vengeful","vibrant","victorious","violent","vivacious","vivid","voluminous","warlike","warm","warmhearted","warped","wasteful","waterlogged","watery","wavy","wealthy","weary","webbed","wee","weekly","weighty","weird","well-documented","well-groomed","well-lit","well-made","well-off","well-to-do","well-worn","which","whimsical","whirlwind","whispered","white","whole","whopping","wicked","wide","wide-eyed","wiggly","willing","wilted","winding","windy","winged","wise","witty","wobbly","woeful","wonderful","wordy","worldly","worse","worst","worthless","worthwhile","worthy","wrathful","wretched","writhing","wrong","wry","yearly","yellow","yellowish","young","youthful","yummy","zany","zealous","zesty"];var Ha=["abnormally","absentmindedly","accidentally","acidly","actually","adventurously","afterwards","almost","always","angrily","annually","anxiously","arrogantly","awkwardly","badly","bashfully","beautifully","bitterly","bleakly","blindly","blissfully","boastfully","boldly","bravely","briefly","brightly","briskly","broadly","busily","calmly","carefully","carelessly","cautiously","certainly","cheerfully","clearly","cleverly","closely","coaxingly","colorfully","commonly","continually","coolly","correctly","courageously","crossly","cruelly","curiously","daily","daintily","dearly","deceivingly","deeply","defiantly","deliberately","delightfully","diligently","dimly","doubtfully","dreamily","easily","elegantly","energetically","enormously","enthusiastically","equally","especially","even","evenly","eventually","exactly","excitedly","extremely","fairly","faithfully","famously","far","fast","fatally","ferociously","fervently","fiercely","fondly","foolishly","fortunately","frankly","frantically","freely","frenetically","frightfully","fully","furiously","generally","generously","gently","gladly","gleefully","gracefully","gratefully","greatly","greedily","happily","hastily","healthily","heavily","helpfully","helplessly","highly","honestly","hopelessly","hourly","hungrily","immediately","innocently","inquisitively","instantly","intensely","intently","interestingly","inwardly","irritably","jaggedly","jealously","joshingly","jovially","joyfully","joyously","jubilantly","judgementally","justly","keenly","kiddingly","kindheartedly","kindly","kissingly","knavishly","knottily","knowingly","knowledgeably","kookily","lazily","less","lightly","likely","limply","lively","loftily","longingly","loosely","loudly","lovingly","loyally","madly","majestically","meaningfully","mechanically","merrily","miserably","mockingly","monthly","more","mortally","mostly","mysteriously","naturally","nearly","neatly","needily","nervously","never","nicely","noisily","not","obediently","obnoxiously","oddly","offensively","officially","often","only","openly","optimistically","overconfidently","owlishly","painfully","partially","patiently","perfectly","physically","playfully","politely","poorly","positively","potentially","powerfully","promptly","properly","punctually","quaintly","quarrelsomely","queasily","questionably","questioningly","quicker","quickly","quietly","quirkily","quizzically","rapidly","rarely","readily","really","reassuringly","recklessly","regularly","reluctantly","repeatedly","reproachfully","restfully","righteously","rightfully","rigidly","roughly","rudely","sadly","safely","scarcely","scarily","searchingly","sedately","seemingly","seldom","selfishly","separately","seriously","shakily","sharply","sheepishly","shrilly","shyly","silently","sleepily","slowly","smoothly","softly","solemnly","solidly","sometimes","soon","speedily","stealthily","sternly","strictly","successfully","suddenly","surprisingly","suspiciously","sweetly","swiftly","sympathetically","tenderly","tensely","terribly","thankfully","thoroughly","thoughtfully","tightly","tomorrow","too","tremendously","triumphantly","truly","truthfully","ultimately","unabashedly","unaccountably","unbearably","unethically","unexpectedly","unfortunately","unimpressively","unnaturally","unnecessarily","upbeat","upliftingly","upright","upside-down","upward","upwardly","urgently","usefully","uselessly","usually","utterly","vacantly","vaguely","vainly","valiantly","vastly","verbally","very","viciously","victoriously","violently","vivaciously","voluntarily","warmly","weakly","wearily","well","wetly","wholly","wildly","willfully","wisely","woefully","wonderfully","worriedly","wrongly","yawningly","yearly","yearningly","yesterday","yieldingly","youthfully"];var Pa=["after","although","and","as","because","before","but","consequently","even","finally","for","furthermore","hence","how","however","if","inasmuch","incidentally","indeed","instead","lest","likewise","meanwhile","nor","now","once","or","provided","since","so","supposing","than","that","though","till","unless","until","what","when","whenever","where","whereas","wherever","whether","which","while","who","whoever","whose","why","yet"];var Wa=["yuck","oh","phooey","blah","boo","whoa","yowza","huzzah","boohoo","fooey","geez","pfft","ew","ah","yum","brr","hm","yahoo","aha","woot","drat","gah","meh","psst","aw","ugh","yippee","eek","gee","bah","gadzooks","duh","ha","mmm","ouch","phew","ack","uh-huh","gosh","hmph","pish","zowie","er","ick","oof","um"];var Ga=["CD","SUV","abacus","academics","accelerator","accompanist","account","accountability","acquaintance","ad","adaptation","address","adrenalin","adult","advancement","advertisement","adviser","affect","affiliate","aftermath","agreement","airbus","aircraft","airline","airmail","airman","airport","alb","alert","allegation","alliance","alligator","allocation","almighty","amendment","amnesty","analogy","angle","annual","antelope","anticodon","apparatus","appliance","approach","apricot","arcade","archaeology","armchair","armoire","asset","assist","atrium","attraction","availability","avalanche","awareness","babushka","backbone","backburn","bakeware","bandwidth","bar","barge","baritone","barracks","baseboard","basket","bathhouse","bathrobe","battle","begonia","behest","bell","bench","bend","beret","best-seller","bid","bidet","bin","birdbath","birdcage","birth","blight","blossom","blowgun","bob","bog","bonfire","bonnet","bookcase","bookend","boulevard","bourgeoisie","bowler","bowling","boyfriend","brace","bracelet","bran","breastplate","brief","brochure","brook","brush","bug","bump","bungalow","cafe","cake","calculus","cannon","cantaloupe","cap","cappelletti","captain","caption","carboxyl","cardboard","carnival","case","casement","cash","casket","cassava","castanet","catalyst","cauliflower","cellar","celsius","cemetery","ceramic","ceramics","certification","chainstay","chairperson","challenge","championship","chap","chapel","character","characterization","charlatan","charm","chasuble","cheese","cheetah","chiffonier","chops","chow","cinder","cinema","circumference","citizen","clamp","clavicle","cleaner","climb","co-producer","coal","coast","cod","coil","coin","coliseum","collaboration","collectivization","colon","colonialism","comestible","commercial","commodity","community","comparison","completion","complication","compromise","concentration","configuration","confusion","conservation","conservative","consistency","contractor","contrail","convection","conversation","cook","coordination","cop-out","cope","cork","cornet","corporation","corral","cosset","costume","couch","council","councilman","countess","courtroom","cow","creator","creature","crest","cricket","crocodile","cross-contamination","cruelty","cuckoo","curl","custody","custom","cutlet","cutover","cycle","daddy","dandelion","dash","daughter","dead","decision","deck","declaration","decongestant","decryption","deduction","deed","deer","defendant","density","department","dependency","deployment","depot","derby","descendant","descent","design","designation","desk","detective","devastation","developing","developmental","devil","diagram","digestive","digit","dime","director","disadvantage","disappointment","disclosure","disconnection","discourse","dish","disk","disposer","distinction","diver","diversity","dividend","divine","doing","doorpost","doubter","draft","draw","dream","dredger","dress","drive","drug","duffel","dulcimer","dusk","duster","dwell","e-mail","earth","ecliptic","ectoderm","edge","editor","effector","eggplant","electronics","elevation","elevator","elver","embarrassment","embossing","emergent","encouragement","entry","epic","equal","essence","eternity","ethyl","euphonium","event","exasperation","excess","executor","exhaust","expansion","expense","experience","exploration","extension","extent","exterior","eyebrow","eyeliner","farm","farmer","fat","fax","feather","fedora","fellow","fen","fencing","ferret","festival","fibre","filter","final","finding","finer","finger","fireplace","fisherman","fishery","fit","flame","flat","fledgling","flight","flint","flood","flu","fog","fold","folklore","follower","following","foodstuffs","footrest","forage","forager","forgery","fork","formamide","formation","formula","fort","fowl","fraudster","freckle","freezing","freight","fuel","fun","fund","fundraising","futon","gallery","galoshes","gastropod","gazebo","gerbil","ghost","giant","gift","giggle","glider","gloom","goat","godfather","godparent","going","goodwill","governance","government","gown","gradient","graffiti","grandpa","grandson","granny","grass","gray","gripper","grouper","guacamole","guard","guidance","guide","gym","gymnast","habit","haircut","halt","hamburger","hammock","handful","handle","handover","harp","haversack","hawk","heartache","heartbeat","heating","hello","help","hepatitis","heroine","hexagon","hierarchy","hippodrome","honesty","hoof","hope","horde","hornet","horst","hose","hospitalization","hovel","hovercraft","hubris","humidity","humor","hundred","hunger","hunt","husband","hutch","hydrant","hydrocarbon","hydrolyse","hydrolyze","hyena","hygienic","hyphenation","ice-cream","icebreaker","igloo","ignorance","illusion","impact","import","importance","impostor","in-joke","incandescence","independence","individual","information","injunction","innovation","insolence","inspection","instance","institute","instruction","instructor","integer","intellect","intent","interchange","interior","intervention","interviewer","invite","iridescence","issue","jacket","jazz","jellyfish","jet","jogging","joy","juggernaut","jump","jungle","junior","jury","kettledrum","kick","kielbasa","kinase","king","kiss","kit","knickers","knight","knitting","knuckle","label","labourer","lace","lady","lamp","language","larva","lashes","laughter","lava","lawmaker","lay","leading","league","legend","legging","legislature","lender","license","lid","lieu","lifestyle","lift","linseed","litter","loaf","lobster","longboat","lotion","lounge","louse","lox","loyalty","luck","lyre","maestro","mainstream","maintainer","majority","makeover","making","mallard","management","manner","mantua","marathon","march","marimba","marketplace","marksman","markup","marten","massage","masterpiece","mathematics","meadow","meal","meander","meatloaf","mechanic","median","membership","mentor","merit","metabolite","metal","middle","midwife","milestone","millet","minion","minister","minor","minority","mixture","mobility","molasses","mom","moment","monasticism","monocle","monster","morbidity","morning","mortise","mountain","mouser","mousse","mozzarella","muscat","mythology","napkin","necklace","nectarine","negotiation","nephew","nerve","netsuke","newsletter","newsprint","newsstand","nightlife","noon","nougat","nucleotidase","nudge","numeracy","numeric","nun","obedience","obesity","object","obligation","ocelot","octave","offset","oil","omelet","onset","opera","operating","optimal","orchid","order","ostrich","other","outlaw","outrun","outset","overcoat","overheard","overload","ownership","pacemaker","packaging","paintwork","palate","pants","pantyhose","papa","parade","parsnip","partridge","passport","pasta","patroller","pear","pearl","pecan","pendant","peninsula","pension","peony","pepper","perfection","permafrost","perp","petal","petticoat","pharmacopoeia","phrase","pick","piglet","pigpen","pigsty","pile","pillbox","pillow","pilot","pine","pinstripe","place","plain","planula","plastic","platter","platypus","pleasure","pliers","plugin","plumber","pneumonia","pocket-watch","poetry","polarisation","polyester","pomelo","pop","poppy","popularity","populist","porter","possession","postbox","precedent","premeditation","premier","premise","premium","pressure","presume","priesthood","printer","privilege","procurement","produce","programme","prohibition","promise","pronoun","providence","provider","provision","publication","publicity","pulse","punctuation","pupil","puppet","puritan","quart","quinoa","quit","railway","range","rationale","ravioli","rawhide","reach","reasoning","reboot","receptor","recommendation","reconsideration","recovery","redesign","relative","release","remark","reorganisation","repeat","replacement","reporter","representation","republican","request","requirement","reservation","resolve","resource","responsibility","restaurant","retention","retrospectivity","reward","ribbon","rim","riser","roadway","role","rosemary","roundabout","rubric","ruin","rule","runway","rust","safe","sailor","saloon","sand","sandbar","sanity","sarong","sauerkraut","saw","scaffold","scale","scarification","scenario","schedule","schnitzel","scholarship","scorn","scorpion","scout","scrap","scratch","seafood","seagull","seal","season","secrecy","secret","section","sediment","self-confidence","sermon","sesame","settler","shadowbox","shark","shipper","shore","shoulder","sideboard","siege","sightseeing","signature","silk","simple","singing","skean","skeleton","skyline","skyscraper","slide","slime","slipper","smog","smoke","sock","soliloquy","solution","solvency","someplace","sonar","sonata","sonnet","soup","soybean","space","spear","spirit","spork","sport","spring","sprinkles","squid","stall","starboard","statue","status","stay","steak","steeple","step","step-mother","sticker","stir-fry","stitcher","stock","stool","story","strait","stranger","strategy","straw","stump","subexpression","submitter","subsidy","substitution","suitcase","summary","summer","sunbeam","sundae","supplier","surface","sushi","suspension","sustenance","swanling","swath","sweatshop","swim","swine","swing","switch","switchboard","swordfish","synergy","t-shirt","tabletop","tackle","tail","tapioca","taro","tarragon","taxicab","teammate","technician","technologist","tectonics","tenant","tenement","tennis","tentacle","teriyaki","term","testimonial","testing","thigh","thongs","thorn","thread","thunderbolt","thyme","tinderbox","toaster","tomatillo","tomb","tomography","tool","tooth","toothbrush","toothpick","topsail","traditionalism","traffic","translation","transom","transparency","trash","travel","tray","trench","tribe","tributary","trick","trolley","tuba","tuber","tune-up","turret","tusk","tuxedo","typeface","typewriter","unblinking","underneath","underpants","understanding","unibody","unique","unit","utilization","valentine","validity","valley","valuable","vanadyl","vein","velocity","venom","version","verve","vestment","veto","viability","vibraphone","vibration","vicinity","video","violin","vision","vista","vol","volleyball","wafer","waist","wallaby","warming","wasabi","waterspout","wear","wedding","whack","whale","wheel","widow","wilderness","willow","window","wombat","word","worth","wriggler","yak","yarmulke","yeast","yin","yogurt","zebra","zen"];var Na=["a","abaft","aboard","about","above","absent","across","afore","after","against","along","alongside","amid","amidst","among","amongst","an","anenst","anti","apropos","apud","around","as","aside","astride","at","athwart","atop","barring","before","behind","below","beneath","beside","besides","between","beyond","but","by","circa","concerning","considering","despite","down","during","except","excepting","excluding","failing","following","for","forenenst","from","given","in","including","inside","into","lest","like","mid","midst","minus","modulo","near","next","notwithstanding","of","off","on","onto","opposite","out","outside","over","pace","past","per","plus","pro","qua","regarding","round","sans","save","since","than","the","through","throughout","till","times","to","toward","towards","under","underneath","unlike","until","unto","up","upon","versus","via","vice","with","within","without","worth"];var Ea=["abnegate","abscond","abseil","absolve","accentuate","accept","access","accessorise","accompany","account","accredit","achieve","acknowledge","acquire","adjourn","adjudge","admonish","adumbrate","advocate","afford","airbrush","ameliorate","amend","amount","anaesthetise","analyse","anesthetize","anneal","annex","antagonize","ape","apologise","apostrophize","appertain","appreciate","appropriate","approximate","arbitrate","archive","arraign","arrange","ascertain","ascribe","assail","atomize","attend","attest","attribute","augment","avow","axe","baa","banish","bank","baptise","battle","beard","beep","behold","belabor","bemuse","besmirch","bestride","better","bewail","bicycle","bide","bind","biodegrade","blacken","blaspheme","bleach","blend","blink","bliss","bloom","bludgeon","bobble","boggle","bolster","book","boom","bootleg","border","bore","boss","braid","brand","brandish","break","breed","broadcast","broadside","brood","browse","buck","burgeon","bus","butter","buzzing","camouflage","cannibalise","canter","cap","capitalise","capitalize","capsize","card","carouse","carp","carpool","catalog","catalyze","catch","categorise","cease","celebrate","censor","certify","char","charter","chase","chatter","chime","chip","christen","chromakey","chunder","chunter","cinch","circle","circulate","circumnavigate","clamor","clamour","claw","cleave","clinch","clinking","clone","clonk","coagulate","coexist","coincide","collaborate","colligate","colorize","colour","comb","come","commandeer","commemorate","communicate","compete","conceal","conceptualize","conclude","concrete","condense","cone","confide","confirm","confiscate","confound","confute","congregate","conjecture","connect","consign","construe","contradict","contrast","contravene","controvert","convalesce","converse","convince","convoke","coop","cop","corner","covenant","cow","crackle","cram","crank","creak","creaking","cripple","croon","cross","crumble","crystallize","culminate","culture","curry","curse","customise","cycle","dally","dampen","darn","debit","debut","decide","decode","decouple","decriminalize","deduce","deduct","deflate","deflect","deform","defrag","degenerate","degrease","delete","delight","deliquesce","demob","demobilise","democratize","demonstrate","denitrify","deny","depart","depend","deplore","deploy","deprave","depute","dereference","describe","desecrate","deselect","destock","detain","develop","devise","dial","dicker","digitize","dilate","disapprove","disarm","disbar","discontinue","disgorge","dishearten","dishonor","disinherit","dislocate","dispense","display","dispose","disrespect","dissemble","ditch","divert","dock","doodle","downchange","downshift","dowse","draft","drag","drain","dramatize","drowse","drum","dwell","economise","edge","efface","egg","eke","electrify","embalm","embed","embody","emboss","emerge","emphasise","emphasize","emulsify","encode","endow","enfold","engage","engender","enhance","enlist","enrage","enrich","enroll","entice","entomb","entrench","entwine","equate","essay","etch","eulogise","even","evince","exacerbate","exaggerate","exalt","exempt","exonerate","expatiate","explode","expostulate","extract","extricate","eyeglasses","fabricate","facilitate","factorise","factorize","fail","fall","familiarize","fashion","father","fathom","fax","federate","feminize","fence","fess","fictionalize","fiddle","fidget","fill","flash","fleck","flight","floodlight","floss","fluctuate","fluff","fly","focalise","foot","forearm","forecast","foretell","forgather","forgo","fork","form","forswear","founder","fraternise","fray","frizz","fumigate","function","furlough","fuss","gad","gallivant","galvanize","gape","garage","garrote","gasp","gestate","give","glimmer","glisten","gloat","gloss","glow","gnash","gnaw","goose","govern","grade","graduate","graft","grok","guest","guilt","gulp","gum","gurn","gust","gut","guzzle","ham","harangue","harvest","hassle","haul","haze","headline","hearten","heighten","highlight","hoick","hold","hole","hollow","holster","home","homeschool","hoot","horn","horse","hotfoot","house","hover","howl","huddle","huff","hunger","hunt","husk","hype","hypothesise","hypothesize","idle","ignite","imagineer","impact","impanel","implode","incinerate","incline","inculcate","industrialize","ingratiate","inhibit","inject","innovate","inscribe","insert","insist","inspect","institute","institutionalize","intend","intermarry","intermesh","intermix","internalise","internalize","internationalize","intrigue","inure","inveigle","inventory","investigate","irk","iterate","jaywalk","jell","jeopardise","jiggle","jive","joint","jot","jut","keel","knife","knit","know","kowtow","lack","lampoon","large","leap","lecture","legitimize","lend","libel","liberalize","license","ligate","list","lobotomise","lock","log","loose","low","lowball","machine","magnetize","major","make","malfunction","manage","manipulate","maroon","masculinize","mash","mask","masquerade","massage","masticate","materialise","matter","maul","memorise","merge","mesh","metabolise","microblog","microchip","micromanage","militate","mill","minister","minor","misappropriate","miscalculate","misfire","misjudge","miskey","mismatch","mispronounce","misread","misreport","misspend","mob","mobilise","mobilize","moisten","mooch","moor","moralise","mortar","mosh","mothball","motivate","motor","mould","mount","muddy","mummify","mutate","mystify","nab","narrate","narrowcast","nasalise","nauseate","navigate","neaten","neck","neglect","norm","notarize","object","obscure","observe","obsess","obstruct","obtrude","offend","offset","option","orchestrate","orient","orientate","outbid","outdo","outfit","outflank","outfox","outnumber","outrank","outrun","outsource","overburden","overcharge","overcook","overdub","overfeed","overload","overplay","overproduce","overreact","override","overspend","overstay","overtrain","overvalue","overwork","own","oxidise","oxidize","oxygenate","pace","pack","pale","pant","paralyse","parody","part","pause","pave","penalise","persecute","personalise","perspire","pertain","peter","pike","pillory","pinion","pip","pity","pivot","pixellate","plagiarise","plait","plan","please","pluck","ponder","popularize","portray","prance","preclude","preheat","prejudge","preregister","presell","preside","pretend","print","prioritize","probate","probe","proceed","procrastinate","profane","progress","proliferate","proofread","propound","proselytise","provision","pry","publicize","puff","pull","pulp","pulverize","purse","put","putrefy","quadruple","quaff","quantify","quarrel","quash","quaver","question","quiet","quintuple","quip","quit","rag","rally","ramp","randomize","rationalise","rationalize","ravage","ravel","react","readies","readjust","readmit","ready","reapply","rear","reassemble","rebel","reboot","reborn","rebound","rebuff","rebuild","rebuke","recede","reckon","reclassify","recompense","reconstitute","record","recount","redact","redevelop","redound","redraw","redress","reel","refer","reference","refine","reflate","refute","regulate","reiterate","rejigger","rejoin","rekindle","relaunch","relieve","remand","remark","reopen","reorient","replicate","repossess","represent","reprimand","reproach","reprove","repurpose","requite","reschedule","resort","respray","restructure","retool","retract","revere","revitalise","revoke","reword","rewrite","ride","ridge","rim","ring","rise","rival","roger","rosin","rot","rout","row","rue","rule","safeguard","sashay","sate","satirise","satirize","satisfy","saturate","savour","scale","scamper","scar","scare","scarper","scent","schematise","scheme","schlep","scoff","scoop","scope","scotch","scowl","scrabble","scram","scramble","scrape","screw","scruple","scrutinise","scuffle","scuttle","search","secularize","see","segregate","sell","sense","sensitize","sequester","serenade","serialize","serve","service","settle","sew","shaft","sham","shampoo","shanghai","shear","sheathe","shell","shinny","shirk","shoot","shoulder","shout","shovel","showboat","shred","shrill","shudder","shush","sidetrack","sign","silt","sin","singe","sit","sizzle","skateboard","ski","slake","slap","slather","sleet","slink","slip","slope","slump","smarten","smuggle","snack","sneak","sniff","snoop","snow","snowplow","snuggle","soap","solace","solder","solicit","source","spark","spattering","spectacles","spectate","spellcheck","spew","spice","spirit","splash","splay","split","splosh","splurge","spook","square","squirm","stabilise","stable","stack","stage","stake","starch","state","statement","stiffen","stigmatize","sting","stint","stoop","store","storyboard","stratify","structure","stuff","stunt","substantiate","subtract","suckle","suffice","suffocate","summarise","sun","sunbathe","sunder","sup","surge","surprise","swat","swathe","sway","swear","swelter","swerve","swill","swing","symbolise","synthesise","syringe","table","tabulate","tag","tame","tank","tankful","tarry","task","taxicab","team","telescope","tenant","terraform","terrorise","testify","think","throbbing","thump","tighten","toady","toe","tough","tousle","traduce","train","transcend","transplant","trash","treasure","treble","trek","trial","tromp","trouser","trust","tune","tut","twine","twist","typify","unbalance","uncork","uncover","underachieve","undergo","underplay","unearth","unfreeze","unfurl","unlearn","unscramble","unzip","uproot","upsell","usher","vacation","vamoose","vanish","vary","veg","venture","verify","vet","veto","volunteer","vulgarise","waft","wallop","waltz","warp","wash","waver","weary","weatherize","wedge","weep","weight","welcome","westernise","westernize","while","whine","whisper","whistle","whitewash","whup","wilt","wing","wire","wisecrack","wolf","wound","wring","writ","yak","yawn","yearn","yuppify"];var so={adjective:Ra,adverb:Ha,conjunction:Pa,interjection:Wa,noun:Ga,preposition:Na,verb:Ea},Fa=so;var uo={airline:r,animal:k,app:A,cell_phone:w$1,color:T,commerce:H$1,company:K$1,database:x$1,date:Y$1,finance:oe$1,food:he$1,hacker:ke$1,internet:Ae$1,location:Ke$1,lorem:xe$1,metadata:ze$1,music:Ue$1,person:ma,phone_number:ba,science:Ca,team:Aa,vehicle:Da,word:Fa},Gl=uo; @@ -20905,6 +20907,16 @@ class ChartMainHelper { head_image_surface_area = 60; chart_head_bg = '#ffffff'; auto_set_chart_head_bg = false; + dropshadow = { + x: "-50%", + y: "-50%", + width: "200%", + height: "200%", + dx: 1, + dy: 1, + stdDeviation: 4, + floodColor: "rgba(91, 91, 91, 0.19)", + }; emitEvent = () => false; tree_link_types = { curveBumpX: bumpX, @@ -20951,7 +20963,7 @@ class ChartMainHelper { return fillSymbols.includes(trim_name) ? 'fill' : strokeSymbols.includes(trim_name) ? 'stroke' : 'fill'; } get_page_body_bg() { - const page_style = document.body.style.getPropertyValue('background-color'); + const page_style = select('body').node().style.getPropertyValue('background-color'); return page_style == '' ? '#ffffff' : page_style; } get_chart_head_bg() { @@ -20992,7 +21004,7 @@ class ChartMainHelper { e.stopPropagation(); const curr_target = e.currentTarget; const rect = curr_target.getBoundingClientRect(); - this.center_elem(rect); + this.center_elem(rect, 'center'); } defaultHead(head_data, doubleVerticalPoints = false, pointPosition = { parent: "bottom", children: "top" }) { const has_children = this.tree_data.filter(data => data.parentId === head_data.id).length > 0; @@ -21004,17 +21016,11 @@ class ChartMainHelper { .attr("class", "main-svg-el" + (this.getIsElRootTreeChild(head_data.id) ? ' root-svg-el' : '')) .attr('width', this.chartHeadWidth) .attr('height', this.chartHeadHeight) - .attr('style', 'background-color: ' + chart_head_bg) + .attr('min-height', '0') + .attr('overflow', 'auto') .on('dblclick', (e) => this.handleCenterHead(e)); - // Gaussian blur - create$1('defs') - .append('filter') - .attr('id', 'blur1') - .attr('x', 0) - .attr('y', 0) - .append('feGaussianBlur') - .attr('in', 'SourceGraphic') - .attr('stdDeviation', '3'); + // Dropshadow blur + this.add_drop_shadow(svgNode); const all_group = svgNode.append('g'); const rect = all_group?.append('rect') .attr('rx', 16) @@ -21022,8 +21028,9 @@ class ChartMainHelper { .attr('width', this.chartHeadWidth) .attr('height', this.chartHeadHeight) .attr('stroke', this.show_chart_head_border ? color_set.color : 'none') - .attr('fill', 'none') - .attr('stroke-width', 0); + .attr('fill', chart_head_bg) + .attr('stroke-width', 0) + .attr('filter', 'url(#shadow)'); const rect_half_width = parseInt(rect.attr('width')) / 2; const firstSection = all_group?.append('g') .attr('y', 100); @@ -21088,7 +21095,7 @@ class ChartMainHelper { titles.forEach((title, index) => { positionTitle?.append('tspan') .attr('x', parseInt(rect.attr('width')) / 2) - .attr('dy', index > 0 ? '.6rem' : 0) + .attr('dy', index > 0 ? 10 : 0) .text(title.toString()) .attr('fill', color_set.dark100); index > 0 && (move_down += 10); @@ -21104,7 +21111,7 @@ class ChartMainHelper { location_title.forEach((title, index) => { employeeLocation?.append('tspan') .attr('x', parseInt(rect.attr('width')) / 2) - .attr('dy', index > 0 ? '.6rem' : 0) + .attr('dy', index > 0 ? 10 : 0) .text(title.toString()); index > 0 && (move_down += 10); }); @@ -21121,6 +21128,7 @@ class ChartMainHelper { const has_parent = this.tree_data.filter(data => data.id === head_data.parentId).length > 0; const color_set = this.color_handler.getColor(head_data.id); let move_down = 0; + const chart_head_bg = this.get_chart_head_bg(); const svgNode = create$1('svg') .attr("class", "main-svg-el" + (this.getIsElRootTreeChild(head_data.id) ? ' root-svg-el' : '')) .attr('width', this.chartHeadLandscapeWidth) @@ -21128,19 +21136,66 @@ class ChartMainHelper { .attr('style', 'background-color: ' + this.chart_head_bg) .on('dblclick', (e) => this.handleCenterHead(e)); const all_group = svgNode.append('g'); + this.add_drop_shadow(svgNode); const rect = all_group?.append('rect') .attr('rx', 16) .attr('ry', 16) .attr('width', this.chartHeadLandscapeWidth) .attr('height', this.chartHeadLandscapeHeight) .attr('stroke', this.show_chart_head_border ? color_set.color : 'none') - .attr('fill', 'none') + .attr('fill', chart_head_bg) + .attr('filter', 'url(#shadow)') .attr('stroke-width', 0); const rect_half_height = parseInt(rect.attr('height')) / 2; const employee_name_split = this.format_employee_name(head_data.name, 18); const rightGroup = all_group.append('g') .attr('x', 0) .attr('y', 0); + const leftStartOrigin = parseInt(rect.attr('height')) + 20; + const employeeName = rightGroup?.append('text') + .attr('x', leftStartOrigin) + .attr('y', 30) + .attr('font-size', '95%') + .attr('fill', color_set.darker); + employee_name_split.forEach((title, index) => { + employeeName?.append('tspan') + .attr('x', leftStartOrigin) + .attr('y', 30) + .attr('dy', index > 0 ? move_down + 14 + index : 0) + .attr('font-size', '95%') + .attr('style', "z-index: +9") + .text(title.toString()); + index > 0 && (move_down += 14); + }); + const positionTitle = rightGroup?.append('text') + .attr('x', leftStartOrigin) + .attr('y', 54 + move_down) + .attr('font-size', '65%'); + const titles = this.splitStringIntoBatch(head_data.role, 30); // role + titles.forEach((title, index) => { + positionTitle?.append('tspan') + .attr('x', leftStartOrigin) + .attr('dy', index > 0 ? 10 : 0) + .attr('y', 54 + move_down) + .text(title.toString()) + .attr('fill', color_set.dark100); + index > 0 && (move_down += 10); + }); + if (head_data.location !== undefined) { + const employeeLocation = rightGroup?.append('text') + .attr('x', leftStartOrigin) + .attr('y', 69 + move_down) + .attr('font-size', '65%') + .attr('fill', color_set.dark100); + const location_title = this.splitStringIntoBatch(head_data.location, 30); // role + location_title.forEach((title, index) => { + employeeLocation?.append('tspan') + .attr('x', leftStartOrigin) + .attr('dy', index > 0 ? 10 : 0) + .text(title.toString()); + index > 0 && (move_down += 10); + }); + } const leftGroup = all_group.append('g'); const locked_height = this.chartHeadLandscapeHeight + move_down; rect.attr('height', locked_height); @@ -21149,19 +21204,19 @@ class ChartMainHelper { const chartHeadLandscapeHeight = this.head_image_surface_area > rect_half_height ? Math.abs(this.head_image_surface_area - rect_half_height) : 0; rect.attr('height', locked_height + chartHeadLandscapeHeight); svgNode.attr('height', locked_height + chartHeadLandscapeHeight); - svgNode.attr('width', this.chartHeadLandscapeWidth + chartHeadLandscapeHeight); - rect.attr('width', this.chartHeadLandscapeWidth + chartHeadLandscapeHeight); + svgNode.attr('width', this.chartHeadLandscapeWidth + 20 + chartHeadLandscapeHeight); + rect.attr('width', this.chartHeadLandscapeWidth + 20 + chartHeadLandscapeHeight); leftGroup?.append('path') .attr('d', Symbol$1().type(d3[this.head_image_shape]).size(Math.pow(this.head_image_surface_area - this.get_image_shape_spacing(this.head_image_shape), 2))) .attr('stroke', this.symbol_type(this.head_image_shape) == 'stroke' ? color_set.color : 'none') .attr('stroke-width', this.symbol_type(this.head_image_shape) == 'stroke' ? 1 : 0) .attr('fill', this.symbol_type(this.head_image_shape) == 'stroke' ? 'transparent' : color_set.color) - .attr('transform', `translate(${parseInt(rect.attr('height')) / 2}, 50)`); + .attr('transform', `translate(50, ${parseInt(rect.attr('height')) / 2})`); leftGroup?.append('text') .attr('class', '') .attr('text-anchor', 'middle') .attr('fill', this.symbol_type(this.head_image_shape) == 'stroke' ? color_set.color : color_set.bright500) - .attr('x', parseInt(rect.attr('height')) / 2) + .attr('x', 50) .attr('y', (parseInt(rect.attr('height')) / 2) + 6) .attr('font-size', '95%') .text(this.get_user_initials(head_data.name)); // employee initials @@ -21181,62 +21236,17 @@ class ChartMainHelper { .attr('id', "landscape-clip-" + head_data.id) .append('path') .attr('d', Symbol$1().type(d3[this.head_image_shape]).size(Math.pow(this.head_image_surface_area - this.get_image_shape_spacing(this.head_image_shape), 2))) - .attr('transform', `translate(${(parseInt(rect.attr('height')) / 2)}, ${this.head_image_surface_area + (extra_y_dist + 20)})`) + .attr('transform', `translate(50, ${parseInt(rect.attr('height')) / 2})`) .attr('fill', color_set.bright500); leftGroup?.append('image') .attr('href', head_data.image) .attr('preserveAspectRatio', 'xMaxYMax slice') .attr('width', this.head_image_surface_area) .attr('height', this.head_image_surface_area) - .attr('x', (parseInt(rect.attr('height')) / 2) - (this.head_image_surface_area / 2)) - .attr('y', (this.head_image_surface_area / 2) + (extra_y_dist + 20)) + .attr('x', 50 - (this.head_image_surface_area / 2)) + .attr('y', parseInt(rect.attr('height')) / 2 - (this.head_image_surface_area / 2)) .attr('clip-path', `url(#landscape-clip-${head_data.id})`); } - const leftStartOrigin = parseInt(rect.attr('height')); - const employeeName = rightGroup?.append('text') - .attr('x', leftStartOrigin) - .attr('y', 30) - .attr('font-size', '95%') - .attr('fill', color_set.darker); - employee_name_split.forEach((title, index) => { - employeeName?.append('tspan') - .attr('x', leftStartOrigin) - .attr('y', 30) - .attr('dy', index > 0 ? '.7rem' : 0) - .attr('font-size', '95%') - .attr('style', "z-index: +9") - .text(title.toString()); - index > 0 && (move_down += 10); - }); - const positionTitle = rightGroup?.append('text') - .attr('x', leftStartOrigin) - .attr('y', 50 + move_down) - .attr('font-size', '65%'); - const titles = this.splitStringIntoBatch(head_data.role, 30); // role - titles.forEach((title, index) => { - positionTitle?.append('tspan') - .attr('x', leftStartOrigin) - .attr('dy', index > 0 ? '.6rem' : 0) - .attr('y', 50 + move_down) - .text(title.toString()) - .attr('fill', color_set.dark100); - index > 0 && (move_down += 10); - }); - if (head_data.location !== undefined) { - const employeeLocation = rightGroup?.append('text') - .attr('x', leftStartOrigin) - .attr('y', 65 + move_down) - .attr('font-size', '65%') - .attr('fill', color_set.dark100); - const location_title = this.splitStringIntoBatch(head_data.location, 30); // role - location_title.forEach((title, index) => { - employeeLocation?.append('tspan') - .attr('x', leftStartOrigin) - .attr('dy', index > 0 ? '.6rem' : 0) - .text(title.toString()); - index > 0 && (move_down += 10); - }); - } this.add_linker(all_group, has_parent, has_children, pointPosition, color_set, rect, svgNode, head_data, doubleVerticalPoints); this.emitEvent('chart_head.create', { headNode: svgNode.node() }); return svgNode; @@ -21315,7 +21325,7 @@ class ChartMainHelper { .attr('text-anchor', 'middle') .attr('x', parseInt(rect.attr('width')) / 2) .attr('y', this.chartHeadRoundedWidth + 18) - .attr('dy', i > 0 ? 50 + move_down : 0 + move_down) + .attr('dy', i > 0 ? 15 + move_down : 0 + move_down) .attr('font-size', '105%') .attr('fill', color_set.darker) .attr('style', `text-transform: ${i > 0 ? 'none' : 'capitalize'}`) @@ -21331,7 +21341,7 @@ class ChartMainHelper { titles.forEach((title, index) => { positionTitle?.append('tspan') .attr('x', parseInt(rect.attr('width')) / 2) - .attr('dy', index > 0 ? '.6rem' : 0) + .attr('dy', index > 0 ? 10 : 0) .text(title.toString()) .attr('fill', color_set.dark100); index > 0 && (move_down += 10); @@ -21347,7 +21357,7 @@ class ChartMainHelper { location_title.forEach((title, index) => { employeeLocation?.append('tspan') .attr('x', parseInt(rect.attr('width')) / 2) - .attr('dy', index > 0 ? '.6rem' : 0) + .attr('dy', index > 0 ? 10 : 0) .text(title.toString()); index > 0 && (move_down += 10); }); @@ -21450,6 +21460,21 @@ class ChartMainHelper { } } } + add_drop_shadow(svgNode) { + // Dropshadow blur + svgNode.append('defs') + .append('filter') + .attr('id', 'shadow') + .attr('x', this.dropshadow.x) + .attr('y', this.dropshadow.y) + .attr('width', this.dropshadow.width) + .attr('height', this.dropshadow.height) + .append('feDropShadow') + .attr('dx', this.dropshadow.dx) + .attr('dy', this.dropshadow.dy) + .attr('stdDeviation', this.dropshadow.stdDeviation) + .attr('flood-color', this.dropshadow.floodColor); + } get_tree_items_hierarchy(parentId, parent_index, action) { const hierarchies = this.tree_data.filter(data => data.parentId == parentId); const set_child_level = parent_index == undefined ? 1 : parent_index + 1; @@ -21597,7 +21622,7 @@ class ColorHandler { return colorSet; } get_app_gray() { - return gray(50).toString(); + return gray(this.pallet.gray).toString(); } get_color_percentage(index) { return (index / this.tree_data.length); @@ -22604,7 +22629,7 @@ class RadialSpiderLeg { if (this.start_animation) { this.animation_interval = setInterval(() => { this.rotate_deg += this.chartHelper?.animation_rotation_interval * (anti ? -1 : 1); - this.root_svg.attr('transform', `rotate(${this.rotate_deg}, 0, 0)`); + this.root_svg.style.transform = `rotate(${this.rotate_deg}deg)`; }, this.chartHelper?.animation_rotation_speed); } else { @@ -22636,7 +22661,7 @@ class RadialSpiderLeg { .attr("viewBox", [-marginLeft - radius, -marginTop - radius, width, height]) .attr("width", width) .attr("height", height) - .attr("style", "background-color: none; max-width: 100%; height: auto; overflow: visible;"); + .attr("style", "background-color: none; overflow: visible;"); svg.append("g") .attr("fill", "none") .attr("stroke", this.chartHelper?.color_handler.get_app_gray()) @@ -22666,7 +22691,7 @@ class RadialSpiderLeg { }); mainNode.append("title") .text(d => d.data.name + " - " + d.data.role); - this.root_svg = svg; + this.root_svg = svg.node(); this.head_child_wrapper?.append(svg.node()); } } @@ -22704,34 +22729,34 @@ class UITools { const toolWrapperEl = new TSElement(); toolWrapperEl.className = "tools-container"; this.root_ui_element?.appendChild(toolWrapperEl); - const zoomInIcon = document.createElement('div'); + const zoomInIcon = new TSElement(); zoomInIcon.className = "tool-item"; zoomInIcon.innerHTML = icons.zoomIn; zoomInIcon.title = "Zoom in"; zoomInIcon.onclick = (e) => this.zoomInOut(); - const zoomOutIcon = document.createElement('div'); + const zoomOutIcon = new TSElement(); zoomOutIcon.className = "tool-item"; zoomOutIcon.innerHTML = icons.zoomOut; zoomOutIcon.title = "Zoom out"; zoomOutIcon.onclick = (e) => this.zoomInOut('out'); - const zoomResetIcon = document.createElement('div'); + const zoomResetIcon = new TSElement(); zoomResetIcon.className = "tool-item"; zoomResetIcon.innerHTML = icons.resetZoom; zoomResetIcon.title = "Reset zoom & position"; zoomResetIcon.onclick = (e) => this.resetZoom(); - const rotateIcon = document.createElement('div'); + const rotateIcon = new TSElement(); rotateIcon.className = "tool-item"; rotateIcon.innerHTML = icons.rotate; rotateIcon.title = "Start/Stop Clockwise Rotation"; - const rotateAnticlockwiseIcon = document.createElement('div'); + const rotateAnticlockwiseIcon = new TSElement(); rotateAnticlockwiseIcon.className = "tool-item"; rotateAnticlockwiseIcon.innerHTML = icons.rotate_anticlockwise; rotateAnticlockwiseIcon.title = "Start/Stop Anticlockwise Rotation"; - const rotateOnceIcon = document.createElement('div'); + const rotateOnceIcon = new TSElement(); rotateOnceIcon.className = "tool-item"; rotateOnceIcon.innerHTML = icons.rotate_once; rotateOnceIcon.title = "Rotate Clockwise Once"; - const rotateOnceAnticlockwiseIcon = document.createElement('div'); + const rotateOnceAnticlockwiseIcon = new TSElement(); rotateOnceAnticlockwiseIcon.className = "tool-item"; rotateOnceAnticlockwiseIcon.innerHTML = icons.rotate_once_anti_clockwise; rotateOnceAnticlockwiseIcon.title = "Rotate Anticlockwise Once"; @@ -22771,7 +22796,7 @@ class TreeSpider extends EventTarget { */ options = { targetContainer: '', - width: '900px', + width: '100%', height: '500px', placeEl: 'override', tree_data: undefined, @@ -22815,6 +22840,16 @@ class TreeSpider extends EventTarget { verticalSpace: '120px', font_link: "https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap", font_name: "Lato", + dropshadow: { + x: "-50%", + y: "-50%", + width: "200%", + height: "200%", + dx: 1, + dy: 1, + stdDeviation: 4, + floodColor: "rgba(91, 91, 91, 0.19)", + } }; constructor(options) { super(); @@ -22840,7 +22875,7 @@ class TreeSpider extends EventTarget { * Method to programatically initialize TreeSpider */ initialize() { - this.targetRootContainer = document.querySelector(this.options.targetContainer); + this.targetRootContainer = select(this.options.targetContainer).node(); if (this.targetRootContainer === null) throw new Error(this.libraryName + ": target container not found"); this.targetRootContainer.setAttribute('data-tree-spider-initialized', this.instance_unique_id); @@ -22883,9 +22918,9 @@ class TreeSpider extends EventTarget { .attr("href", this.options.font_link) .attr("rel", "stylesheet"); } - preconnect != undefined && document.head.appendChild(preconnect.node()); - crossorgin_preconnect != undefined && document.head.appendChild(crossorgin_preconnect.node()); - fontLink != undefined && document.head.appendChild(fontLink.node()); + preconnect != undefined && select('head').node().appendChild(preconnect.node()); + crossorgin_preconnect != undefined && select('head').node().appendChild(crossorgin_preconnect.node()); + fontLink != undefined && select('head').node().appendChild(fontLink.node()); } setObjectValue(objectParent, value) { const setObj = objectParent; @@ -22926,6 +22961,7 @@ class TreeSpider extends EventTarget { this.chartHelper.auto_display_tree_in_step = this.options.auto_display_tree_in_step; this.chartHelper.tree_level_step = this.options.tree_level_step; this.chartHelper.tree_link_type = this.options.tree_link_type; + this.chartHelper.dropshadow = this.options.dropshadow; this.chartHelper.emitEvent = this.emitEvent.bind(this); this.colorHandler = new ColorHandler({ tree_data: this.options.tree_data, @@ -23033,10 +23069,6 @@ class TreeSpider extends EventTarget { } bindPanning() { const root_cont_rect = this.rootWrapperContainer?.getBoundingClientRect(); - const zoomFilter = (event) => { - event.preventDefault(); - return (!event.ctrlKey || event.type === 'wheel') && !event.button; - }; const root_container_el = select(`[data-ts-unique-id='${this.instance_unique_id}']`); const zoomed = (e) => { const emitedEvent = this.emitEvent('zooming', { e }); @@ -23047,7 +23079,7 @@ class TreeSpider extends EventTarget { this.currentChartUI.current_scale = e.transform.k; }; this.zoom_instace = zoom() - .filter(zoomFilter) + // .filter(zoomFilter) // filter removed because of issue on mobile browsers .extent([[0, 0], [root_cont_rect.width, root_cont_rect.height]]) .on("zoom", zoomed) .on('end', (e) => { @@ -23055,9 +23087,9 @@ class TreeSpider extends EventTarget { }); root_container_el.call(this.zoom_instace).on("dblclick.zoom", (e) => null); } - center_elem(rect, position = 'center') { + center_elem(rect, position) { const root_container_el = select(`[data-ts-unique-id='${this.instance_unique_id}']`); - this.tree_default_point_position == '' && (this.tree_default_point_position = position); + (this.tree_default_point_position == '' && position != undefined) && (this.tree_default_point_position = position); const root_cont_rect = root_container_el.node()?.getBoundingClientRect(); const inner_cont_rect = this.tsInnerContainer?.getBoundingClientRect(); const rel_posX = ((rect.left - (inner_cont_rect.left)) / this.currentChartUI.current_scale); @@ -23066,24 +23098,24 @@ class TreeSpider extends EventTarget { const offsetMoveY = (root_cont_rect.height / 2) - (rect.height / 2) / this.currentChartUI.current_scale; let moveX = 0; let moveY = 0; - if (position == 'center') { + if ((position || this.tree_default_point_position) == 'center') { moveX = rel_posX - offsetMoveX; moveY = rel_posY - offsetMoveY; } - else if (position == 'top') { + else if ((position || this.tree_default_point_position) == 'top') { moveX = rel_posX - offsetMoveX; moveY = rel_posY - 10; } - else if (position == 'bottom') { + else if ((position || this.tree_default_point_position) == 'bottom') { moveX = rel_posX - offsetMoveX; const el_chunk_sizes_y = (root_cont_rect.height / 2) - (rect.height / 2); moveY = (rel_posY - (offsetMoveY + el_chunk_sizes_y)) + 10; } - else if (position == 'left') { + else if ((position || this.tree_default_point_position) == 'left') { moveX = rel_posX - 10; moveY = rel_posY - offsetMoveY; } - else if (position == 'right') { + else if ((position || this.tree_default_point_position) == 'right') { const el_chunk_sizes_x = (root_cont_rect.width / 2) - (rect.width / 2); moveX = (rel_posX - (offsetMoveX + el_chunk_sizes_x)) + 10; moveY = rel_posY - offsetMoveY; @@ -23099,14 +23131,10 @@ class TreeSpider extends EventTarget { * @param color - The color value to set the chart heads to, you can pass any CSS color values to it */ updateChartHeadBg(color) { - if (this.options.tree_type == 'goldenRod' || this.options.tree_type == 'radialSpiderLeg') { - this.rootWrapperContainer?.querySelectorAll('.main-svg-el').forEach(el => el.querySelector('rect').style.fill = color); - this.addEventListener('chart_head.expanded', () => this.rootWrapperContainer?.querySelectorAll('.main-svg-el').forEach(el => el.querySelector('rect').style.fill = color)); - } - else { - this.rootWrapperContainer?.querySelectorAll('.main-svg-el').forEach(el => el.style.backgroundColor = color); - this.addEventListener('chart_head.expanded', () => this.rootWrapperContainer?.querySelectorAll('.main-svg-el').forEach(el => el.style.backgroundColor = color)); - } + if (this.options.chart_head_type == 'rounded') + return; + this.rootWrapperContainer?.querySelectorAll('.main-svg-el').forEach(el => el.querySelector('rect').style.fill = color); + this.addEventListener('chart_head.expanded', () => this.rootWrapperContainer?.querySelectorAll('.main-svg-el').forEach(el => el.querySelector('rect').style.fill = color)); } /** * The short form for addEventListener @@ -23134,28 +23162,24 @@ class TreeSpider extends EventTarget { * The method to start rotating the chart clockwisely */ startStopRotateCW() { - // once=false, anti=false this.currentChartUI?.animate_chat(); } /** * The method to start rotating the chart anti-clockwisely */ startStopRotateACW() { - // once=false, anti=false this.currentChartUI?.animate_chat(false, true); } /** * The method to rotate the chart once clockwisely */ rotateOnceCW() { - // once=false, anti=false this.currentChartUI?.animate_chat(true); } /** * The method to rotate the chart once clockwisely */ rotateOnceACW() { - // once=false, anti=false this.currentChartUI?.animate_chat(true, true); } } diff --git a/dist/es/treeSpider.bundle.min.js b/dist/es/treeSpider.bundle.min.js index 7ac2e71..5014579 100644 --- a/dist/es/treeSpider.bundle.min.js +++ b/dist/es/treeSpider.bundle.min.js @@ -1 +1 @@ -var e={flux:'\n \n \n \n \n \n \n\n ',quad:'',blurry:'\n ',chaos:'',spiral:'',flurry:'',whirling:'',replicate:'\n \n \n \n \n \n ',scribble:'',squiggly:'',gyrate:'',leaves:'',reflection:'',spot:'\n \n \n \n '};function t(e,t){return null==e||null==t?NaN:et?1:e>=t?0:NaN}function r(e,t){return null==e||null==t?NaN:te?1:t>=e?0:NaN}function a(e){let a,n,o;function c(e,t,r=0,i=e.length){if(r>>1;n(e[a],t)<0?r=a+1:i=a}while(rt(e(r),a),o=(t,r)=>e(t)-r):(a=e===t||e===r?e:i,n=e,o=e),{left:c,center:function(e,t,r=0,a=e.length){const i=c(e,t,r,a-1);return i>r&&o(e[i-1],t)>-o(e[i],t)?i-1:i},right:function(e,t,r=0,i=e.length){if(r>>1;n(e[a],t)<=0?r=a+1:i=a}while(r{t(e,r,(a<<=2)+0,(i<<=2)+0,n<<=2),t(e,r,a+1,i+1,n),t(e,r,a+2,i+2,n),t(e,r,a+3,i+3,n)}}));function d(e){return function(t,r,a=r){if(!((r=+r)>=0))throw new RangeError("invalid rx");if(!((a=+a)>=0))throw new RangeError("invalid ry");let{data:i,width:n,height:o}=t;if(!((n=Math.floor(n))>=0))throw new RangeError("invalid width");if(!((o=Math.floor(void 0!==o?o:i.length/n))>=0))throw new RangeError("invalid height");if(!n||!o||!r&&!a)return t;const c=r&&e(r),l=a&&e(a),s=i.slice();return c&&l?(p(c,s,i,n,o),p(c,i,s,n,o),p(c,s,i,n,o),y(l,i,s,n,o),y(l,s,i,n,o),y(l,i,s,n,o)):c?(p(c,i,s,n,o),p(c,s,i,n,o),p(c,i,s,n,o)):l&&(y(l,i,s,n,o),y(l,s,i,n,o),y(l,i,s,n,o)),t}}function p(e,t,r,a,i){for(let n=0,o=a*i;n{if(!((n-=o)>=i))return;let c=e*a[i];const l=o*e;for(let e=i,t=i+l;e{if(!((o-=c)>=n))return;let l=t*i[n];const s=c*t,u=s+c;for(let e=n,t=n+s;e=t&&++r;else{let a=-1;for(let i of e)null!=(i=t(i,++a,e))&&(i=+i)>=i&&++r}return r}function g(e){return 0|e.length}function b(e){return!(e>0)}function v(e){return"object"!=typeof e||"length"in e?e:Array.from(e)}function x(e,t){let r,a=0,i=0,n=0;if(void 0===t)for(let t of e)null!=t&&(t=+t)>=t&&(r=t-i,i+=r/++a,n+=r*(t-i));else{let o=-1;for(let c of e)null!=(c=t(c,++o,e))&&(c=+c)>=c&&(r=c-i,i+=r/++a,n+=r*(c-i))}if(a>1)return n/(a-1)}function k(e,t){const r=x(e,t);return r?Math.sqrt(r):r}function w(e,t){let r,a;if(void 0===t)for(const t of e)null!=t&&(void 0===r?t>=t&&(r=a=t):(r>t&&(r=t),a=n&&(r=a=n):(r>n&&(r=n),a0){for(n=e[--i];i>0&&(t=n,r=e[--i],n=t+r,a=r-(n-t),!a););i>0&&(a<0&&e[i-1]<0||a>0&&e[i-1]>0)&&(r=2*a,t=n+r,r==t-n&&(n=t))}return n}}class _ extends Map{constructor(e,t=B){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:t}}),null!=e)for(const[t,r]of e)this.set(t,r)}get(e){return super.get(A(this,e))}has(e){return super.has(A(this,e))}set(e,t){return super.set(M(this,e),t)}delete(e){return super.delete(T(this,e))}}class S extends Set{constructor(e,t=B){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:t}}),null!=e)for(const t of e)this.add(t)}has(e){return super.has(A(this,e))}add(e){return super.add(M(this,e))}delete(e){return super.delete(T(this,e))}}function A({_intern:e,_key:t},r){const a=t(r);return e.has(a)?e.get(a):r}function M({_intern:e,_key:t},r){const a=t(r);return e.has(a)?e.get(a):(e.set(a,r),r)}function T({_intern:e,_key:t},r){const a=t(r);return e.has(a)&&(r=e.get(a),e.delete(a)),r}function B(e){return null!==e&&"object"==typeof e?e.valueOf():e}function L(e){return e}function E(e,...t){return G(e,L,L,t)}function R(e,...t){return G(e,Array.from,L,t)}function H(e,t){for(let r=1,a=t.length;re.pop().map((([t,r])=>[...e,t,r]))));return e}function D(e,t,...r){return G(e,L,t,r)}function P(e,t,...r){return G(e,Array.from,t,r)}function N(e){if(1!==e.length)throw new Error("duplicate key");return e[0]}function G(e,t,r,a){return function e(i,n){if(n>=a.length)return r(i);const o=new _,c=a[n++];let l=-1;for(const e of i){const t=c(e,++l,i),r=o.get(t);r?r.push(e):o.set(t,[e])}for(const[t,r]of o)o.set(t,e(r,n));return t(o)}(e,0)}function I(e,t){return Array.from(t,(t=>e[t]))}function W(e,...t){if("function"!=typeof e[Symbol.iterator])throw new TypeError("values is not iterable");e=Array.from(e);let[r]=t;if(r&&2!==r.length||t.length>1){const a=Uint32Array.from(e,((e,t)=>t));return t.length>1?(t=t.map((t=>e.map(t))),a.sort(((e,r)=>{for(const a of t){const t=z(a[e],a[r]);if(t)return t}}))):(r=e.map(r),a.sort(((e,t)=>z(r[e],r[t])))),I(e,a)}return e.sort(F(r))}function F(e=t){if(e===t)return z;if("function"!=typeof e)throw new TypeError("compare is not a function");return(t,r)=>{const a=e(t,r);return a||0===a?a:(0===e(r,r))-(0===e(t,t))}}function z(e,t){return(null==e||!(e>=e))-(null==t||!(t>=t))||(et?1:0)}var O=Array.prototype.slice;function K(e){return()=>e}const J=Math.sqrt(50),V=Math.sqrt(10),j=Math.sqrt(2);function Y(e,t,r){const a=(t-e)/Math.max(0,r),i=Math.floor(Math.log10(a)),n=a/Math.pow(10,i),o=n>=J?10:n>=V?5:n>=j?2:1;let c,l,s;return i<0?(s=Math.pow(10,-i)/o,c=Math.round(e*s),l=Math.round(t*s),c/st&&--l,s=-s):(s=Math.pow(10,i)*o,c=Math.round(e/s),l=Math.round(t/s),c*st&&--l),l0))return[];if((e=+e)===(t=+t))return[e];const a=t=i))return[];const c=n-i+1,l=new Array(c);if(a)if(o<0)for(let e=0;e0?(e=Math.floor(e/i)*i,t=Math.ceil(t/i)*i):i<0&&(e=Math.ceil(e*i)/i,t=Math.floor(t*i)/i),a=i}}function Q(e){return Math.max(1,Math.ceil(Math.log(m(e))/Math.LN2)+1)}function X(){var e=L,t=w,r=Q;function a(a){Array.isArray(a)||(a=Array.from(a));var i,n,o,l=a.length,s=new Array(l);for(i=0;i=d)if(e>=d&&t===w){const e=U(h,d,r);isFinite(e)&&(e>0?d=(Math.floor(d/e)+1)*e:e<0&&(d=(Math.ceil(d*-e)+1)/-e))}else p.pop()}for(var y=p.length,f=0,m=y;p[f]<=h;)++f;for(;p[m-1]>d;)--m;(f||m0?p[i-1]:h,g.x1=i0)for(i=0;i=t)&&(r=t);else{let a=-1;for(let i of e)null!=(i=t(i,++a,e))&&(r=i)&&(r=i)}return r}function te(e,t){let r,a=-1,i=-1;if(void 0===t)for(const t of e)++i,null!=t&&(r=t)&&(r=t,a=i);else for(let n of e)null!=(n=t(n,++i,e))&&(r=n)&&(r=n,a=i);return a}function re(e,t){let r;if(void 0===t)for(const t of e)null!=t&&(r>t||void 0===r&&t>=t)&&(r=t);else{let a=-1;for(let i of e)null!=(i=t(i,++a,e))&&(r>i||void 0===r&&i>=i)&&(r=i)}return r}function ae(e,t){let r,a=-1,i=-1;if(void 0===t)for(const t of e)++i,null!=t&&(r>t||void 0===r&&t>=t)&&(r=t,a=i);else for(let n of e)null!=(n=t(n,++i,e))&&(r>n||void 0===r&&n>=n)&&(r=n,a=i);return a}function ie(e,t,r=0,a=1/0,i){if(t=Math.floor(t),r=Math.floor(Math.max(0,r)),a=Math.floor(Math.min(e.length-1,a)),!(r<=t&&t<=a))return e;for(i=void 0===i?z:F(i);a>r;){if(a-r>600){const n=a-r+1,o=t-r+1,c=Math.log(n),l=.5*Math.exp(2*c/3),s=.5*Math.sqrt(c*l*(n-l)/n)*(o-n/2<0?-1:1);ie(e,t,Math.max(r,Math.floor(t-o*l/n+s)),Math.min(a,Math.floor(t+(n-o)*l/n+s)),i)}const n=e[t];let o=r,c=a;for(ne(e,r,t),i(e[a],n)>0&&ne(e,r,a);o0;)--c}0===i(e[r],n)?ne(e,r,c):(++c,ne(e,c,a)),c<=t&&(r=c+1),t<=c&&(a=c-1)}return e}function ne(e,t,r){const a=e[t];e[t]=e[r],e[r]=a}function oe(e,r=t){let a,i=!1;if(1===r.length){let n;for(const o of e){const e=r(o);(i?t(e,n)>0:0===t(e,e))&&(a=o,n=e,i=!0)}}else for(const t of e)(i?r(t,a)>0:0===r(t,t))&&(a=t,i=!0);return a}function ce(e,t,r){if(e=Float64Array.from(function*(e,t){if(void 0===t)for(let t of e)null!=t&&(t=+t)>=t&&(yield t);else{let r=-1;for(let a of e)null!=(a=t(a,++r,e))&&(a=+a)>=a&&(yield a)}}(e,r)),(a=e.length)&&!isNaN(t=+t)){if(t<=0||a<2)return re(e);if(t>=1)return ee(e);var a,i=(a-1)*t,n=Math.floor(i),o=ee(ie(e,n).subarray(0,n+1));return o+(re(e.subarray(n+1))-o)*(i-n)}}function le(e,t,r=n){if((a=e.length)&&!isNaN(t=+t)){if(t<=0||a<2)return+r(e[0],0,e);if(t>=1)return+r(e[a-1],a-1,e);var a,i=(a-1)*t,o=Math.floor(i),c=+r(e[o],o,e);return c+(+r(e[o+1],o+1,e)-c)*(i-o)}}function se(e,t,r=n){if(!isNaN(t=+t)){if(a=Float64Array.from(e,((t,a)=>n(r(e[a],a,e)))),t<=0)return ae(a);if(t>=1)return te(a);var a,i=Uint32Array.from(e,((e,t)=>t)),o=a.length-1,c=Math.floor(o*t);return ie(i,c,0,o,((e,t)=>z(a[e],a[t]))),(c=oe(i.subarray(0,c+1),(e=>a[e])))>=0?c:-1}}function ue(e){return Array.from(function*(e){for(const t of e)yield*t}(e))}function he(e,t){return[e,t]}function de(e,t,r){e=+e,t=+t,r=(i=arguments.length)<2?(t=e,e=0,1):i<3?1:+r;for(var a=-1,i=0|Math.max(0,Math.ceil((t-e)/r)),n=new Array(i);++a+e(t)}function Ae(e,t){return t=Math.max(0,e.bandwidth()-2*t)/2,e.round()&&(t=Math.round(t)),r=>+e(r)+t}function Me(){return!this.__axis}function Te(e,t){var r=[],a=null,i=null,n=6,o=6,c=3,l="undefined"!=typeof window&&window.devicePixelRatio>1?0:.5,s=1===e||4===e?-1:1,u=4===e||2===e?"x":"y",h=1===e||3===e?Ce:_e;function d(d){var p=null==a?t.ticks?t.ticks.apply(t,r):t.domain():a,y=null==i?t.tickFormat?t.tickFormat.apply(t,r):ke:i,f=Math.max(n,0)+c,m=t.range(),g=+m[0]+l,b=+m[m.length-1]+l,v=(t.bandwidth?Ae:Se)(t.copy(),l),x=d.selection?d.selection():d,k=x.selectAll(".domain").data([null]),w=x.selectAll(".tick").data(p,t).order(),C=w.exit(),_=w.enter().append("g").attr("class","tick"),S=w.select("line"),A=w.select("text");k=k.merge(k.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),w=w.merge(_),S=S.merge(_.append("line").attr("stroke","currentColor").attr(u+"2",s*n)),A=A.merge(_.append("text").attr("fill","currentColor").attr(u,s*f).attr("dy",1===e?"0em":3===e?"0.71em":"0.32em")),d!==x&&(k=k.transition(d),w=w.transition(d),S=S.transition(d),A=A.transition(d),C=C.transition(d).attr("opacity",we).attr("transform",(function(e){return isFinite(e=v(e))?h(e+l):this.getAttribute("transform")})),_.attr("opacity",we).attr("transform",(function(e){var t=this.parentNode.__axis;return h((t&&isFinite(t=t(e))?t:v(e))+l)}))),C.remove(),k.attr("d",4===e||2===e?o?"M"+s*o+","+g+"H"+l+"V"+b+"H"+s*o:"M"+l+","+g+"V"+b:o?"M"+g+","+s*o+"V"+l+"H"+b+"V"+s*o:"M"+g+","+l+"H"+b),w.attr("opacity",1).attr("transform",(function(e){return h(v(e)+l)})),S.attr(u+"2",s*n),A.attr(u,s*f).text(y),x.filter(Me).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",2===e?"start":4===e?"end":"middle"),x.each((function(){this.__axis=v}))}return d.scale=function(e){return arguments.length?(t=e,d):t},d.ticks=function(){return r=Array.from(arguments),d},d.tickArguments=function(e){return arguments.length?(r=null==e?[]:Array.from(e),d):r.slice()},d.tickValues=function(e){return arguments.length?(a=null==e?null:Array.from(e),d):a&&a.slice()},d.tickFormat=function(e){return arguments.length?(i=e,d):i},d.tickSize=function(e){return arguments.length?(n=o=+e,d):n},d.tickSizeInner=function(e){return arguments.length?(n=+e,d):n},d.tickSizeOuter=function(e){return arguments.length?(o=+e,d):o},d.tickPadding=function(e){return arguments.length?(c=+e,d):c},d.offset=function(e){return arguments.length?(l=+e,d):l},d}var Be={value:()=>{}};function Le(){for(var e,t=0,r=arguments.length,a={};t=0&&(t=e.slice(r+1),e=e.slice(0,r)),e&&!a.hasOwnProperty(e))throw new Error("unknown type: "+e);return{type:e,name:t}}))),o=-1,c=n.length;if(!(arguments.length<2)){if(null!=t&&"function"!=typeof t)throw new Error("invalid callback: "+t);for(;++o0)for(var r,a,i=new Array(r),n=0;n=0&&"xmlns"!==(t=e.slice(0,r))&&(e=e.slice(r+1)),Pe.hasOwnProperty(t)?{space:Pe[t],local:e}:e}function Ge(e){return function(){var t=this.ownerDocument,r=this.namespaceURI;return r===De&&t.documentElement.namespaceURI===De?t.createElement(e):t.createElementNS(r,e)}}function Ie(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function We(e){var t=Ne(e);return(t.local?Ie:Ge)(t)}function Fe(){}function ze(e){return null==e?Fe:function(){return this.querySelector(e)}}function Oe(e){return null==e?[]:Array.isArray(e)?e:Array.from(e)}function Ke(){return[]}function Je(e){return null==e?Ke:function(){return this.querySelectorAll(e)}}function Ve(e){return function(){return this.matches(e)}}function je(e){return function(t){return t.matches(e)}}var Ye=Array.prototype.find;function $e(){return this.firstElementChild}var Ue=Array.prototype.filter;function qe(){return Array.from(this.children)}function Ze(e){return new Array(e.length)}function Qe(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}function Xe(e,t,r,a,i,n){for(var o,c=0,l=t.length,s=n.length;ct?1:e>=t?0:NaN}function it(e){return function(){this.removeAttribute(e)}}function nt(e){return function(){this.removeAttributeNS(e.space,e.local)}}function ot(e,t){return function(){this.setAttribute(e,t)}}function ct(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}function lt(e,t){return function(){var r=t.apply(this,arguments);null==r?this.removeAttribute(e):this.setAttribute(e,r)}}function st(e,t){return function(){var r=t.apply(this,arguments);null==r?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,r)}}function ut(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function ht(e){return function(){this.style.removeProperty(e)}}function dt(e,t,r){return function(){this.style.setProperty(e,t,r)}}function pt(e,t,r){return function(){var a=t.apply(this,arguments);null==a?this.style.removeProperty(e):this.style.setProperty(e,a,r)}}function yt(e,t){return e.style.getPropertyValue(t)||ut(e).getComputedStyle(e,null).getPropertyValue(t)}function ft(e){return function(){delete this[e]}}function mt(e,t){return function(){this[e]=t}}function gt(e,t){return function(){var r=t.apply(this,arguments);null==r?delete this[e]:this[e]=r}}function bt(e){return e.trim().split(/^|\s+/)}function vt(e){return e.classList||new xt(e)}function xt(e){this._node=e,this._names=bt(e.getAttribute("class")||"")}function kt(e,t){for(var r=vt(e),a=-1,i=t.length;++a=0&&(this._names.splice(t,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};var Kt=[null];function Jt(e,t){this._groups=e,this._parents=t}function Vt(){return new Jt([[document.documentElement]],Kt)}function jt(e){return"string"==typeof e?new Jt([[document.querySelector(e)]],[document.documentElement]):new Jt([[e]],Kt)}function Yt(e){return jt(We(e).call(document.documentElement))}Jt.prototype=Vt.prototype={constructor:Jt,select:function(e){"function"!=typeof e&&(e=ze(e));for(var t=this._groups,r=t.length,a=new Array(r),i=0;i=x&&(x=v+1);!(b=m[x])&&++x=0;)(a=i[n])&&(o&&4^a.compareDocumentPosition(o)&&o.parentNode.insertBefore(a,o),o=a);return this},sort:function(e){function t(t,r){return t&&r?e(t.__data__,r.__data__):!t-!r}e||(e=at);for(var r=this._groups,a=r.length,i=new Array(a),n=0;n1?this.each((null==t?ht:"function"==typeof t?pt:dt)(e,t,null==r?"":r)):yt(this.node(),e)},property:function(e,t){return arguments.length>1?this.each((null==t?ft:"function"==typeof t?gt:mt)(e,t)):this.node()[e]},classed:function(e,t){var r=bt(e+"");if(arguments.length<2){for(var a=vt(this.node()),i=-1,n=r.length;++i=0&&(t=e.slice(r+1),e=e.slice(0,r)),{type:e,name:t}}))}(e+""),o=n.length;if(!(arguments.length<2)){for(c=t?Wt:It,a=0;a()=>e;function or(e,{sourceEvent:t,subject:r,target:a,identifier:i,active:n,x:o,y:c,dx:l,dy:s,dispatch:u}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},subject:{value:r,enumerable:!0,configurable:!0},target:{value:a,enumerable:!0,configurable:!0},identifier:{value:i,enumerable:!0,configurable:!0},active:{value:n,enumerable:!0,configurable:!0},x:{value:o,enumerable:!0,configurable:!0},y:{value:c,enumerable:!0,configurable:!0},dx:{value:l,enumerable:!0,configurable:!0},dy:{value:s,enumerable:!0,configurable:!0},_:{value:u}})}function cr(e){return!e.ctrlKey&&!e.button}function lr(){return this.parentNode}function sr(e,t){return null==t?{x:e.x,y:e.y}:t}function ur(){return navigator.maxTouchPoints||"ontouchstart"in this}function hr(e,t,r){e.prototype=t.prototype=r,r.constructor=e}function dr(e,t){var r=Object.create(e.prototype);for(var a in t)r[a]=t[a];return r}function pr(){}or.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};var yr=.7,fr=1/yr,mr="\\s*([+-]?\\d+)\\s*",gr="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",br="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",vr=/^#([0-9a-f]{3,8})$/,xr=new RegExp(`^rgb\\(${mr},${mr},${mr}\\)$`),kr=new RegExp(`^rgb\\(${br},${br},${br}\\)$`),wr=new RegExp(`^rgba\\(${mr},${mr},${mr},${gr}\\)$`),Cr=new RegExp(`^rgba\\(${br},${br},${br},${gr}\\)$`),_r=new RegExp(`^hsl\\(${gr},${br},${br}\\)$`),Sr=new RegExp(`^hsla\\(${gr},${br},${br},${gr}\\)$`),Ar={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};function Mr(){return this.rgb().formatHex()}function Tr(){return this.rgb().formatRgb()}function Br(e){var t,r;return e=(e+"").trim().toLowerCase(),(t=vr.exec(e))?(r=t[1].length,t=parseInt(t[1],16),6===r?Lr(t):3===r?new Dr(t>>8&15|t>>4&240,t>>4&15|240&t,(15&t)<<4|15&t,1):8===r?Er(t>>24&255,t>>16&255,t>>8&255,(255&t)/255):4===r?Er(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|240&t,((15&t)<<4|15&t)/255):null):(t=xr.exec(e))?new Dr(t[1],t[2],t[3],1):(t=kr.exec(e))?new Dr(255*t[1]/100,255*t[2]/100,255*t[3]/100,1):(t=wr.exec(e))?Er(t[1],t[2],t[3],t[4]):(t=Cr.exec(e))?Er(255*t[1]/100,255*t[2]/100,255*t[3]/100,t[4]):(t=_r.exec(e))?Fr(t[1],t[2]/100,t[3]/100,1):(t=Sr.exec(e))?Fr(t[1],t[2]/100,t[3]/100,t[4]):Ar.hasOwnProperty(e)?Lr(Ar[e]):"transparent"===e?new Dr(NaN,NaN,NaN,0):null}function Lr(e){return new Dr(e>>16&255,e>>8&255,255&e,1)}function Er(e,t,r,a){return a<=0&&(e=t=r=NaN),new Dr(e,t,r,a)}function Rr(e){return e instanceof pr||(e=Br(e)),e?new Dr((e=e.rgb()).r,e.g,e.b,e.opacity):new Dr}function Hr(e,t,r,a){return 1===arguments.length?Rr(e):new Dr(e,t,r,null==a?1:a)}function Dr(e,t,r,a){this.r=+e,this.g=+t,this.b=+r,this.opacity=+a}function Pr(){return`#${Wr(this.r)}${Wr(this.g)}${Wr(this.b)}`}function Nr(){const e=Gr(this.opacity);return`${1===e?"rgb(":"rgba("}${Ir(this.r)}, ${Ir(this.g)}, ${Ir(this.b)}${1===e?")":`, ${e})`}`}function Gr(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Ir(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Wr(e){return((e=Ir(e))<16?"0":"")+e.toString(16)}function Fr(e,t,r,a){return a<=0?e=t=r=NaN:r<=0||r>=1?e=t=NaN:t<=0&&(e=NaN),new Kr(e,t,r,a)}function zr(e){if(e instanceof Kr)return new Kr(e.h,e.s,e.l,e.opacity);if(e instanceof pr||(e=Br(e)),!e)return new Kr;if(e instanceof Kr)return e;var t=(e=e.rgb()).r/255,r=e.g/255,a=e.b/255,i=Math.min(t,r,a),n=Math.max(t,r,a),o=NaN,c=n-i,l=(n+i)/2;return c?(o=t===n?(r-a)/c+6*(r0&&l<1?0:o,new Kr(o,c,l,e.opacity)}function Or(e,t,r,a){return 1===arguments.length?zr(e):new Kr(e,t,r,null==a?1:a)}function Kr(e,t,r,a){this.h=+e,this.s=+t,this.l=+r,this.opacity=+a}function Jr(e){return(e=(e||0)%360)<0?e+360:e}function Vr(e){return Math.max(0,Math.min(1,e||0))}function jr(e,t,r){return 255*(e<60?t+(r-t)*e/60:e<180?r:e<240?t+(r-t)*(240-e)/60:t)}hr(pr,Br,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:Mr,formatHex:Mr,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return zr(this).formatHsl()},formatRgb:Tr,toString:Tr}),hr(Dr,Hr,dr(pr,{brighter(e){return e=null==e?fr:Math.pow(fr,e),new Dr(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=null==e?yr:Math.pow(yr,e),new Dr(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new Dr(Ir(this.r),Ir(this.g),Ir(this.b),Gr(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:Pr,formatHex:Pr,formatHex8:function(){return`#${Wr(this.r)}${Wr(this.g)}${Wr(this.b)}${Wr(255*(isNaN(this.opacity)?1:this.opacity))}`},formatRgb:Nr,toString:Nr})),hr(Kr,Or,dr(pr,{brighter(e){return e=null==e?fr:Math.pow(fr,e),new Kr(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=null==e?yr:Math.pow(yr,e),new Kr(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+360*(this.h<0),t=isNaN(e)||isNaN(this.s)?0:this.s,r=this.l,a=r+(r<.5?r:1-r)*t,i=2*r-a;return new Dr(jr(e>=240?e-240:e+120,i,a),jr(e,i,a),jr(e<120?e+240:e-120,i,a),this.opacity)},clamp(){return new Kr(Jr(this.h),Vr(this.s),Vr(this.l),Gr(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=Gr(this.opacity);return`${1===e?"hsl(":"hsla("}${Jr(this.h)}, ${100*Vr(this.s)}%, ${100*Vr(this.l)}%${1===e?")":`, ${e})`}`}}));const Yr=Math.PI/180,$r=180/Math.PI,Ur=.96422,qr=.82521,Zr=4/29,Qr=6/29,Xr=3*Qr*Qr,ea=Qr*Qr*Qr;function ta(e){if(e instanceof ia)return new ia(e.l,e.a,e.b,e.opacity);if(e instanceof ha)return da(e);e instanceof Dr||(e=Rr(e));var t,r,a=la(e.r),i=la(e.g),n=la(e.b),o=na((.2225045*a+.7168786*i+.0606169*n)/1);return a===i&&i===n?t=r=o:(t=na((.4360747*a+.3850649*i+.1430804*n)/Ur),r=na((.0139322*a+.0971045*i+.7141733*n)/qr)),new ia(116*o-16,500*(t-o),200*(o-r),e.opacity)}function ra(e,t){return new ia(e,0,0,null==t?1:t)}function aa(e,t,r,a){return 1===arguments.length?ta(e):new ia(e,t,r,null==a?1:a)}function ia(e,t,r,a){this.l=+e,this.a=+t,this.b=+r,this.opacity=+a}function na(e){return e>ea?Math.pow(e,1/3):e/Xr+Zr}function oa(e){return e>Qr?e*e*e:Xr*(e-Zr)}function ca(e){return 255*(e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055)}function la(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function sa(e){if(e instanceof ha)return new ha(e.h,e.c,e.l,e.opacity);if(e instanceof ia||(e=ta(e)),0===e.a&&0===e.b)return new ha(NaN,0=1?(r=1,t-1):Math.floor(r*t),i=e[a],n=e[a+1],o=a>0?e[a-1]:2*i-n,c=a()=>e;function Ma(e,t){return function(r){return e+r*t}}function Ta(e,t){var r=t-e;return r?Ma(e,r>180||r<-180?r-360*Math.round(r/360):r):Aa(isNaN(e)?t:e)}function Ba(e){return 1==(e=+e)?La:function(t,r){return r-t?function(e,t,r){return e=Math.pow(e,r),t=Math.pow(t,r)-e,r=1/r,function(a){return Math.pow(e+a*t,r)}}(t,r,e):Aa(isNaN(t)?r:t)}}function La(e,t){var r=t-e;return r?Ma(e,r):Aa(isNaN(e)?t:e)}var Ea=function e(t){var r=Ba(t);function a(e,t){var a=r((e=Hr(e)).r,(t=Hr(t)).r),i=r(e.g,t.g),n=r(e.b,t.b),o=La(e.opacity,t.opacity);return function(t){return e.r=a(t),e.g=i(t),e.b=n(t),e.opacity=o(t),e+""}}return a.gamma=e,a}(1);function Ra(e){return function(t){var r,a,i=t.length,n=new Array(i),o=new Array(i),c=new Array(i);for(r=0;rn&&(i=t.slice(n,i),c[o]?c[o]+=i:c[++o]=i),(r=r[0])===(a=a[0])?c[o]?c[o]+=a:c[++o]=a:(c[++o]=null,l.push({i:o,x:Wa(r,a)})),n=Oa.lastIndex;return n180?t+=360:t-e>180&&(e+=360),n.push({i:r.push(i(r)+"rotate(",null,a)-2,x:Wa(e,t)})):t&&r.push(i(r)+"rotate("+t+a)}(n.rotate,o.rotate,c,l),function(e,t,r,n){e!==t?n.push({i:r.push(i(r)+"skewX(",null,a)-2,x:Wa(e,t)}):t&&r.push(i(r)+"skewX("+t+a)}(n.skewX,o.skewX,c,l),function(e,t,r,a,n,o){if(e!==r||t!==a){var c=n.push(i(n)+"scale(",null,",",null,")");o.push({i:c-4,x:Wa(e,r)},{i:c-2,x:Wa(t,a)})}else 1===r&&1===a||n.push(i(n)+"scale("+r+","+a+")")}(n.scaleX,n.scaleY,o.scaleX,o.scaleY,c,l),n=o=null,function(e){for(var t,r=-1,a=l.length;++r=0&&t._call.call(void 0,e),t=t._next;--pi}function Ai(){gi=(mi=vi.now())+bi,pi=yi=0;try{Si()}finally{pi=0,function(){var e,t,r=hi,a=1/0;for(;r;)r._call?(a>r._time&&(a=r._time),e=r,r=r._next):(t=r._next,r._next=null,r=e?e._next=t:hi=t);di=e,Ti(a)}(),gi=0}}function Mi(){var e=vi.now(),t=e-mi;t>1e3&&(bi-=t,mi=e)}function Ti(e){pi||(yi&&(yi=clearTimeout(yi)),e-gi>24?(e<1/0&&(yi=setTimeout(Ai,e-vi.now()-bi)),fi&&(fi=clearInterval(fi))):(fi||(mi=vi.now(),fi=setInterval(Mi,1e3)),pi=1,xi(Ai)))}function Bi(e,t,r){var a=new Ci;return t=null==t?0:+t,a.restart((r=>{a.stop(),e(r+t)}),t,r),a}Ci.prototype=_i.prototype={constructor:Ci,restart:function(e,t,r){if("function"!=typeof e)throw new TypeError("callback is not a function");r=(null==r?ki():+r)+(null==t?0:+t),this._next||di===this||(di?di._next=this:hi=this,di=this),this._call=e,this._time=r,Ti()},stop:function(){this._call&&(this._call=null,this._time=1/0,Ti())}};var Li=Le("start","end","cancel","interrupt"),Ei=[];function Ri(e,t,r,a,i,n){var o=e.__transition;if(o){if(r in o)return}else e.__transition={};!function(e,t,r){var a,i=e.__transition;function n(e){r.state=1,r.timer.restart(o,r.delay,r.time),r.delay<=e&&o(e-r.delay)}function o(n){var s,u,h,d;if(1!==r.state)return l();for(s in i)if((d=i[s]).name===r.name){if(3===d.state)return Bi(o);4===d.state?(d.state=6,d.timer.stop(),d.on.call("interrupt",e,e.__data__,d.index,d.group),delete i[s]):+s0)throw new Error("too late; already scheduled");return r}function Di(e,t){var r=Pi(e,t);if(r.state>3)throw new Error("too late; already running");return r}function Pi(e,t){var r=e.__transition;if(!r||!(r=r[t]))throw new Error("transition not found");return r}function Ni(e,t){var r,a,i,n=e.__transition,o=!0;if(n){for(i in t=null==t?null:t+"",n)(r=n[i]).name===t?(a=r.state>2&&r.state<5,r.state=6,r.timer.stop(),r.on.call(a?"interrupt":"cancel",e,e.__data__,r.index,r.group),delete n[i]):o=!1;o&&delete e.__transition}}function Gi(e,t){var r,a;return function(){var i=Di(this,e),n=i.tween;if(n!==r)for(var o=0,c=(a=r=n).length;o=0&&(e=e.slice(0,t)),!e||"start"===e}))}(t)?Hi:Di;return function(){var o=n(this,e),c=o.on;c!==a&&(i=(a=c).copy()).on(t,r),o.on=i}}(r,e,t))},attr:function(e,t){var r=Ne(e),a="transform"===r?Qa:Fi;return this.attrTween(e,"function"==typeof t?(r.local?ji:Vi)(r,a,Wi(this,"attr."+e,t)):null==t?(r.local?Oi:zi)(r):(r.local?Ji:Ki)(r,a,t))},attrTween:function(e,t){var r="attr."+e;if(arguments.length<2)return(r=this.tween(r))&&r._value;if(null==t)return this.tween(r,null);if("function"!=typeof t)throw new Error;var a=Ne(e);return this.tween(r,(a.local?Yi:$i)(a,t))},style:function(e,t,r){var a="transform"==(e+="")?Za:Fi;return null==t?this.styleTween(e,function(e,t){var r,a,i;return function(){var n=yt(this,e),o=(this.style.removeProperty(e),yt(this,e));return n===o?null:n===r&&o===a?i:i=t(r=n,a=o)}}(e,a)).on("end.style."+e,en(e)):"function"==typeof t?this.styleTween(e,function(e,t,r){var a,i,n;return function(){var o=yt(this,e),c=r(this),l=c+"";return null==c&&(this.style.removeProperty(e),l=c=yt(this,e)),o===l?null:o===a&&l===i?n:(i=l,n=t(a=o,c))}}(e,a,Wi(this,"style."+e,t))).each(function(e,t){var r,a,i,n,o="style."+t,c="end."+o;return function(){var l=Di(this,e),s=l.on,u=null==l.value[o]?n||(n=en(t)):void 0;s===r&&i===u||(a=(r=s).copy()).on(c,i=u),l.on=a}}(this._id,e)):this.styleTween(e,function(e,t,r){var a,i,n=r+"";return function(){var o=yt(this,e);return o===n?null:o===a?i:i=t(a=o,r)}}(e,a,t),r).on("end.style."+e,null)},styleTween:function(e,t,r){var a="style."+(e+="");if(arguments.length<2)return(a=this.tween(a))&&a._value;if(null==t)return this.tween(a,null);if("function"!=typeof t)throw new Error;return this.tween(a,function(e,t,r){var a,i;function n(){var n=t.apply(this,arguments);return n!==i&&(a=(i=n)&&function(e,t,r){return function(a){this.style.setProperty(e,t.call(this,a),r)}}(e,n,r)),a}return n._value=t,n}(e,t,null==r?"":r))},text:function(e){return this.tween("text","function"==typeof e?function(e){return function(){var t=e(this);this.textContent=null==t?"":t}}(Wi(this,"text",e)):function(e){return function(){this.textContent=e}}(null==e?"":e+""))},textTween:function(e){var t="text";if(arguments.length<1)return(t=this.tween(t))&&t._value;if(null==e)return this.tween(t,null);if("function"!=typeof e)throw new Error;return this.tween(t,function(e){var t,r;function a(){var a=e.apply(this,arguments);return a!==r&&(t=(r=a)&&function(e){return function(t){this.textContent=e.call(this,t)}}(a)),t}return a._value=e,a}(e))},remove:function(){return this.on("end.remove",function(e){return function(){var t=this.parentNode;for(var r in this.__transition)if(+r!==e)return;t&&t.removeChild(this)}}(this._id))},tween:function(e,t){var r=this._id;if(e+="",arguments.length<2){for(var a,i=Pi(this.node(),r).tween,n=0,o=i.length;n()=>e;function In(e,{sourceEvent:t,target:r,selection:a,mode:i,dispatch:n}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},selection:{value:a,enumerable:!0,configurable:!0},mode:{value:i,enumerable:!0,configurable:!0},_:{value:n}})}function Wn(e){e.preventDefault(),e.stopImmediatePropagation()}var Fn={name:"drag"},zn={name:"space"},On={name:"handle"},Kn={name:"center"};const{abs:Jn,max:Vn,min:jn}=Math;function Yn(e){return[+e[0],+e[1]]}function $n(e){return[Yn(e[0]),Yn(e[1])]}var Un={name:"x",handles:["w","e"].map(ao),input:function(e,t){return null==e?null:[[+e[0],t[0][1]],[+e[1],t[1][1]]]},output:function(e){return e&&[e[0][0],e[1][0]]}},qn={name:"y",handles:["n","s"].map(ao),input:function(e,t){return null==e?null:[[t[0][0],+e[0]],[t[1][0],+e[1]]]},output:function(e){return e&&[e[0][1],e[1][1]]}},Zn={name:"xy",handles:["n","w","e","s","nw","ne","sw","se"].map(ao),input:function(e){return null==e?null:$n(e)},output:function(e){return e}},Qn={overlay:"crosshair",selection:"move",n:"ns-resize",e:"ew-resize",s:"ns-resize",w:"ew-resize",nw:"nwse-resize",ne:"nesw-resize",se:"nwse-resize",sw:"nesw-resize"},Xn={e:"w",w:"e",nw:"ne",ne:"nw",se:"sw",sw:"se"},eo={n:"s",s:"n",nw:"sw",ne:"se",se:"ne",sw:"nw"},to={overlay:1,selection:1,n:null,e:1,s:null,w:-1,nw:-1,ne:1,se:1,sw:-1},ro={overlay:1,selection:1,n:-1,e:null,s:1,w:null,nw:-1,ne:-1,se:1,sw:1};function ao(e){return{type:e}}function io(e){return!e.ctrlKey&&!e.button}function no(){var e=this.ownerSVGElement||this;return e.hasAttribute("viewBox")?[[(e=e.viewBox.baseVal).x,e.y],[e.x+e.width,e.y+e.height]]:[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]}function oo(){return navigator.maxTouchPoints||"ontouchstart"in this}function co(e){for(;!e.__brush;)if(!(e=e.parentNode))return;return e.__brush}function lo(e){var t,r=no,a=io,i=oo,n=!0,o=Le("start","brush","end"),c=6;function l(t){var r=t.property("__brush",f).selectAll(".overlay").data([ao("overlay")]);r.enter().append("rect").attr("class","overlay").attr("pointer-events","all").attr("cursor",Qn.overlay).merge(r).each((function(){var e=co(this).extent;jt(this).attr("x",e[0][0]).attr("y",e[0][1]).attr("width",e[1][0]-e[0][0]).attr("height",e[1][1]-e[0][1])})),t.selectAll(".selection").data([ao("selection")]).enter().append("rect").attr("class","selection").attr("cursor",Qn.selection).attr("fill","#777").attr("fill-opacity",.3).attr("stroke","#fff").attr("shape-rendering","crispEdges");var a=t.selectAll(".handle").data(e.handles,(function(e){return e.type}));a.exit().remove(),a.enter().append("rect").attr("class",(function(e){return"handle handle--"+e.type})).attr("cursor",(function(e){return Qn[e.type]})),t.each(s).attr("fill","none").attr("pointer-events","all").on("mousedown.brush",d).filter(i).on("touchstart.brush",d).on("touchmove.brush",p).on("touchend.brush touchcancel.brush",y).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function s(){var e=jt(this),t=co(this).selection;t?(e.selectAll(".selection").style("display",null).attr("x",t[0][0]).attr("y",t[0][1]).attr("width",t[1][0]-t[0][0]).attr("height",t[1][1]-t[0][1]),e.selectAll(".handle").style("display",null).attr("x",(function(e){return"e"===e.type[e.type.length-1]?t[1][0]-c/2:t[0][0]-c/2})).attr("y",(function(e){return"s"===e.type[0]?t[1][1]-c/2:t[0][1]-c/2})).attr("width",(function(e){return"n"===e.type||"s"===e.type?t[1][0]-t[0][0]+c:c})).attr("height",(function(e){return"e"===e.type||"w"===e.type?t[1][1]-t[0][1]+c:c}))):e.selectAll(".selection,.handle").style("display","none").attr("x",null).attr("y",null).attr("width",null).attr("height",null)}function u(e,t,r){var a=e.__brush.emitter;return!a||r&&a.clean?new h(e,t,r):a}function h(e,t,r){this.that=e,this.args=t,this.state=e.__brush,this.active=0,this.clean=r}function d(r){if((!t||r.touches)&&a.apply(this,arguments)){var i,o,c,l,h,d,p,y,f,m,g,b=this,v=r.target.__data__.type,x="selection"===(n&&r.metaKey?v="overlay":v)?Fn:n&&r.altKey?Kn:On,k=e===qn?null:to[v],w=e===Un?null:ro[v],C=co(b),_=C.extent,S=C.selection,A=_[0][0],M=_[0][1],T=_[1][0],B=_[1][1],L=0,E=0,R=k&&w&&n&&r.shiftKey,H=Array.from(r.touches||[r],(e=>{const t=e.identifier;return(e=Qt(e,b)).point0=e.slice(),e.identifier=t,e}));Ni(b);var D=u(b,arguments,!0).beforestart();if("overlay"===v){S&&(f=!0);const t=[H[0],H[1]||H[0]];C.selection=S=[[i=e===qn?A:jn(t[0][0],t[1][0]),c=e===Un?M:jn(t[0][1],t[1][1])],[h=e===qn?T:Vn(t[0][0],t[1][0]),p=e===Un?B:Vn(t[0][1],t[1][1])]],H.length>1&&W(r)}else i=S[0][0],c=S[0][1],h=S[1][0],p=S[1][1];o=i,l=c,d=h,y=p;var P=jt(b).attr("pointer-events","none"),N=P.selectAll(".overlay").attr("cursor",Qn[v]);if(r.touches)D.moved=I,D.ended=F;else{var G=jt(r.view).on("mousemove.brush",I,!0).on("mouseup.brush",F,!0);n&&G.on("keydown.brush",(function(e){switch(e.keyCode){case 16:R=k&&w;break;case 18:x===On&&(k&&(h=d-L*k,i=o+L*k),w&&(p=y-E*w,c=l+E*w),x=Kn,W(e));break;case 32:x!==On&&x!==Kn||(k<0?h=d-L:k>0&&(i=o-L),w<0?p=y-E:w>0&&(c=l-E),x=zn,N.attr("cursor",Qn.selection),W(e));break;default:return}Wn(e)}),!0).on("keyup.brush",(function(e){switch(e.keyCode){case 16:R&&(m=g=R=!1,W(e));break;case 18:x===Kn&&(k<0?h=d:k>0&&(i=o),w<0?p=y:w>0&&(c=l),x=On,W(e));break;case 32:x===zn&&(e.altKey?(k&&(h=d-L*k,i=o+L*k),w&&(p=y-E*w,c=l+E*w),x=Kn):(k<0?h=d:k>0&&(i=o),w<0?p=y:w>0&&(c=l),x=On),N.attr("cursor",Qn[v]),W(e));break;default:return}Wn(e)}),!0),ar(r.view)}s.call(b),D.start(r,x.name)}function I(e){for(const t of e.changedTouches||[e])for(const e of H)e.identifier===t.identifier&&(e.cur=Qt(t,b));if(R&&!m&&!g&&1===H.length){const e=H[0];Jn(e.cur[0]-e[0])>Jn(e.cur[1]-e[1])?g=!0:m=!0}for(const e of H)e.cur&&(e[0]=e.cur[0],e[1]=e.cur[1]);f=!0,Wn(e),W(e)}function W(e){const t=H[0],r=t.point0;var a;switch(L=t[0]-r[0],E=t[1]-r[1],x){case zn:case Fn:k&&(L=Vn(A-i,jn(T-h,L)),o=i+L,d=h+L),w&&(E=Vn(M-c,jn(B-p,E)),l=c+E,y=p+E);break;case On:H[1]?(k&&(o=Vn(A,jn(T,H[0][0])),d=Vn(A,jn(T,H[1][0])),k=1),w&&(l=Vn(M,jn(B,H[0][1])),y=Vn(M,jn(B,H[1][1])),w=1)):(k<0?(L=Vn(A-i,jn(T-i,L)),o=i+L,d=h):k>0&&(L=Vn(A-h,jn(T-h,L)),o=i,d=h+L),w<0?(E=Vn(M-c,jn(B-c,E)),l=c+E,y=p):w>0&&(E=Vn(M-p,jn(B-p,E)),l=c,y=p+E));break;case Kn:k&&(o=Vn(A,jn(T,i-L*k)),d=Vn(A,jn(T,h+L*k))),w&&(l=Vn(M,jn(B,c-E*w)),y=Vn(M,jn(B,p+E*w)))}de+r))}function vo(e,t){var r=0,a=null,i=null,n=null;function o(o){var c,l=o.length,s=new Array(l),u=bo(0,l),h=new Array(l*l),d=new Array(l),p=0;o=Float64Array.from({length:l*l},t?(e,t)=>o[t%l][t/l|0]:(e,t)=>o[t/l|0][t%l]);for(let t=0;ta(s[e],s[t])));for(const r of u){const a=t;if(e){const e=bo(1+~l,l).filter((e=>e<0?o[~e*l+r]:o[r*l+e]));i&&e.sort(((e,t)=>i(e<0?-o[~e*l+r]:o[r*l+e],t<0?-o[~t*l+r]:o[r*l+t])));for(const a of e)if(a<0){(h[~a*l+r]||(h[~a*l+r]={source:null,target:null})).target={index:r,startAngle:t,endAngle:t+=o[~a*l+r]*p,value:o[~a*l+r]}}else{(h[r*l+a]||(h[r*l+a]={source:null,target:null})).source={index:r,startAngle:t,endAngle:t+=o[r*l+a]*p,value:o[r*l+a]}}d[r]={index:r,startAngle:a,endAngle:t,value:s[r]}}else{const e=bo(0,l).filter((e=>o[r*l+e]||o[e*l+r]));i&&e.sort(((e,t)=>i(o[r*l+e],o[r*l+t])));for(const a of e){let e;if(r=0))throw new Error(`invalid digits: ${e}`);if(t>15)return _o;const r=10**t;return function(e){this._+=e[0];for(let t=1,a=e.length;two)if(Math.abs(u*c-l*s)>wo&&i){let d=r-n,p=a-o,y=c*c+l*l,f=d*d+p*p,m=Math.sqrt(y),g=Math.sqrt(h),b=i*Math.tan((xo-Math.acos((y+h-f)/(2*m*g)))/2),v=b/g,x=b/m;Math.abs(v-1)>wo&&this._append`L${e+v*s},${t+v*u}`,this._append`A${i},${i},0,0,${+(u*d>s*p)},${this._x1=e+x*c},${this._y1=t+x*l}`}else this._append`L${this._x1=e},${this._y1=t}`;else;}arc(e,t,r,a,i,n){if(e=+e,t=+t,n=!!n,(r=+r)<0)throw new Error(`negative radius: ${r}`);let o=r*Math.cos(a),c=r*Math.sin(a),l=e+o,s=t+c,u=1^n,h=n?a-i:i-a;null===this._x1?this._append`M${l},${s}`:(Math.abs(this._x1-l)>wo||Math.abs(this._y1-s)>wo)&&this._append`L${l},${s}`,r&&(h<0&&(h=h%ko+ko),h>Co?this._append`A${r},${r},0,1,${u},${e-o},${t-c}A${r},${r},0,1,${u},${this._x1=l},${this._y1=s}`:h>wo&&this._append`A${r},${r},0,${+(h>=xo)},${u},${this._x1=e+r*Math.cos(i)},${this._y1=t+r*Math.sin(i)}`)}rect(e,t,r,a){this._append`M${this._x0=this._x1=+e},${this._y0=this._y1=+t}h${r=+r}v${+a}h${-r}Z`}toString(){return this._}};function Ao(){return new So}Ao.prototype=So.prototype;var Mo=Array.prototype.slice;function To(e){return function(){return e}}function Bo(e){return e.source}function Lo(e){return e.target}function Eo(e){return e.radius}function Ro(e){return e.startAngle}function Ho(e){return e.endAngle}function Do(){return 0}function Po(){return 10}function No(e){var t=Bo,r=Lo,a=Eo,i=Eo,n=Ro,o=Ho,c=Do,l=null;function s(){var s,u=t.apply(this,arguments),h=r.apply(this,arguments),d=c.apply(this,arguments)/2,p=Mo.call(arguments),y=+a.apply(this,(p[0]=u,p)),f=n.apply(this,p)-yo,m=o.apply(this,p)-yo,g=+i.apply(this,(p[0]=h,p)),b=n.apply(this,p)-yo,v=o.apply(this,p)-yo;if(l||(l=s=Ao()),d>go&&(so(m-f)>2*d+go?m>f?(f+=d,m-=d):(f-=d,m+=d):f=m=(f+m)/2,so(v-b)>2*d+go?v>b?(b+=d,v-=d):(b-=d,v+=d):b=v=(b+v)/2),l.moveTo(y*uo(f),y*ho(f)),l.arc(0,0,y,f,m),f!==b||m!==v)if(e){var x=g-+e.apply(this,arguments),k=(b+v)/2;l.quadraticCurveTo(0,0,x*uo(b),x*ho(b)),l.lineTo(g*uo(k),g*ho(k)),l.lineTo(x*uo(v),x*ho(v))}else l.quadraticCurveTo(0,0,g*uo(b),g*ho(b)),l.arc(0,0,g,b,v);if(l.quadraticCurveTo(0,0,y*uo(f),y*ho(f)),l.closePath(),s)return l=null,s+""||null}return e&&(s.headRadius=function(t){return arguments.length?(e="function"==typeof t?t:To(+t),s):e}),s.radius=function(e){return arguments.length?(a=i="function"==typeof e?e:To(+e),s):a},s.sourceRadius=function(e){return arguments.length?(a="function"==typeof e?e:To(+e),s):a},s.targetRadius=function(e){return arguments.length?(i="function"==typeof e?e:To(+e),s):i},s.startAngle=function(e){return arguments.length?(n="function"==typeof e?e:To(+e),s):n},s.endAngle=function(e){return arguments.length?(o="function"==typeof e?e:To(+e),s):o},s.padAngle=function(e){return arguments.length?(c="function"==typeof e?e:To(+e),s):c},s.source=function(e){return arguments.length?(t=e,s):t},s.target=function(e){return arguments.length?(r=e,s):r},s.context=function(e){return arguments.length?(l=null==e?null:e,s):l},s}var Go=Array.prototype.slice;function Io(e,t){return e-t}var Wo=e=>()=>e;function Fo(e,t){for(var r,a=-1,i=t.length;++aa!=p>a&&r<(d-s)*(a-u)/(p-u)+s&&(i=-i)}return i}function Oo(e,t,r){var a;return function(e,t,r){return(t[0]-e[0])*(r[1]-e[1])==(r[0]-e[0])*(t[1]-e[1])}(e,t,r)&&function(e,t,r){return e<=t&&t<=r||r<=t&&t<=e}(e[a=+(e[0]===t[0])],r[a],t[a])}function Ko(){}var Jo=[[],[[[1,1.5],[.5,1]]],[[[1.5,1],[1,1.5]]],[[[1.5,1],[.5,1]]],[[[1,.5],[1.5,1]]],[[[1,1.5],[.5,1]],[[1,.5],[1.5,1]]],[[[1,.5],[1,1.5]]],[[[1,.5],[.5,1]]],[[[.5,1],[1,.5]]],[[[1,1.5],[1,.5]]],[[[.5,1],[1,.5]],[[1.5,1],[1,1.5]]],[[[1.5,1],[1,.5]]],[[[.5,1],[1.5,1]]],[[[1,1.5],[1.5,1]]],[[[.5,1],[1,1.5]]],[]];function Vo(){var e=1,t=1,r=Q,a=c;function i(e){var t=r(e);if(Array.isArray(t))t=t.slice().sort(Io);else{const r=w(e,jo);for(t=$(...Z(r[0],r[1],t),t);t[t.length-1]>=r[1];)t.pop();for(;t[1]n(e,t)))}function n(r,i){const n=null==i?NaN:+i;if(isNaN(n))throw new Error(`invalid value: ${i}`);var c=[],l=[];return function(r,a,i){var n,c,l,s,u,h,d=new Array,p=new Array;n=c=-1,s=Yo(r[0],a),Jo[s<<1].forEach(y);for(;++n=a,Jo[u<<2].forEach(y);for(;++n0?c.push([e]):l.push(e)})),l.forEach((function(e){for(var t,r=0,a=c.length;r0&&n0&&o=0&&n>=0))throw new Error("invalid size");return e=a,t=n,i},i.thresholds=function(e){return arguments.length?(r="function"==typeof e?e:Array.isArray(e)?Wo(Go.call(e)):Wo(e),i):r},i.smooth=function(e){return arguments.length?(a=e?c:Ko,i):a===c},i}function jo(e){return isFinite(e)?e:NaN}function Yo(e,t){return null!=e&&+e>=t}function $o(e){return null==e||isNaN(e=+e)?-1/0:e}function Uo(e,t,r,a){const i=a-t,n=r-t,o=isFinite(i)||isFinite(n)?i/n:Math.sign(i)/Math.sign(n);return isNaN(o)?e:e+o-.5}function qo(e){return e[0]}function Zo(e){return e[1]}function Qo(){return 1}const Xo=134217729;function ec(e,t,r,a,i){let n,o,c,l,s=t[0],u=a[0],h=0,d=0;u>s==u>-s?(n=s,s=t[++h]):(n=u,u=a[++d]);let p=0;if(hs==u>-s?(o=s+n,c=n-(o-s),s=t[++h]):(o=u+n,c=n-(o-u),u=a[++d]),n=o,0!==c&&(i[p++]=c);hs==u>-s?(o=n+s,l=o-n,c=n-(o-l)+(s-l),s=t[++h]):(o=n+u,l=o-n,c=n-(o-l)+(u-l),u=a[++d]),n=o,0!==c&&(i[p++]=c);for(;h=33306690738754716e-32*s?l:-function(e,t,r,a,i,n,o){let c,l,s,u,h,d,p,y,f,m,g,b,v,x,k,w,C,_;const S=e-i,A=r-i,M=t-n,T=a-n;x=S*T,d=Xo*S,p=d-(d-S),y=S-p,d=Xo*T,f=d-(d-T),m=T-f,k=y*m-(x-p*f-y*f-p*m),w=M*A,d=Xo*M,p=d-(d-M),y=M-p,d=Xo*A,f=d-(d-A),m=A-f,C=y*m-(w-p*f-y*f-p*m),g=k-C,h=k-g,rc[0]=k-(g+h)+(h-C),b=x+g,h=b-x,v=x-(b-h)+(g-h),g=v-w,h=v-g,rc[1]=v-(g+h)+(h-w),_=b+g,h=_-b,rc[2]=b-(_-h)+(g-h),rc[3]=_;let B=function(e,t){let r=t[0];for(let a=1;a=L||-B>=L)return B;if(h=e-S,c=e-(S+h)+(h-i),h=r-A,s=r-(A+h)+(h-i),h=t-M,l=t-(M+h)+(h-n),h=a-T,u=a-(T+h)+(h-n),0===c&&0===l&&0===s&&0===u)return B;if(L=11093356479670487e-47*o+33306690738754706e-32*Math.abs(B),B+=S*u+T*c-(M*s+A*l),B>=L||-B>=L)return B;x=c*T,d=Xo*c,p=d-(d-c),y=c-p,d=Xo*T,f=d-(d-T),m=T-f,k=y*m-(x-p*f-y*f-p*m),w=l*A,d=Xo*l,p=d-(d-l),y=l-p,d=Xo*A,f=d-(d-A),m=A-f,C=y*m-(w-p*f-y*f-p*m),g=k-C,h=k-g,oc[0]=k-(g+h)+(h-C),b=x+g,h=b-x,v=x-(b-h)+(g-h),g=v-w,h=v-g,oc[1]=v-(g+h)+(h-w),_=b+g,h=_-b,oc[2]=b-(_-h)+(g-h),oc[3]=_;const E=ec(4,rc,4,oc,ac);x=S*u,d=Xo*S,p=d-(d-S),y=S-p,d=Xo*u,f=d-(d-u),m=u-f,k=y*m-(x-p*f-y*f-p*m),w=M*s,d=Xo*M,p=d-(d-M),y=M-p,d=Xo*s,f=d-(d-s),m=s-f,C=y*m-(w-p*f-y*f-p*m),g=k-C,h=k-g,oc[0]=k-(g+h)+(h-C),b=x+g,h=b-x,v=x-(b-h)+(g-h),g=v-w,h=v-g,oc[1]=v-(g+h)+(h-w),_=b+g,h=_-b,oc[2]=b-(_-h)+(g-h),oc[3]=_;const R=ec(E,ac,4,oc,ic);x=c*u,d=Xo*c,p=d-(d-c),y=c-p,d=Xo*u,f=d-(d-u),m=u-f,k=y*m-(x-p*f-y*f-p*m),w=l*s,d=Xo*l,p=d-(d-l),y=l-p,d=Xo*s,f=d-(d-s),m=s-f,C=y*m-(w-p*f-y*f-p*m),g=k-C,h=k-g,oc[0]=k-(g+h)+(h-C),b=x+g,h=b-x,v=x-(b-h)+(g-h),g=v-w,h=v-g,oc[1]=v-(g+h)+(h-w),_=b+g,h=_-b,oc[2]=b-(_-h)+(g-h),oc[3]=_;const H=ec(R,ic,4,oc,nc);return nc[H-1]}(e,t,r,a,i,n,s)}const lc=Math.pow(2,-52),sc=new Uint32Array(512);class uc{static from(e,t=mc,r=gc){const a=e.length,i=new Float64Array(2*a);for(let n=0;n>1;if(t>0&&"number"!=typeof e[0])throw new Error("Expected coords to contain numbers.");this.coords=e;const r=Math.max(2*t-5,0);this._triangles=new Uint32Array(3*r),this._halfedges=new Int32Array(3*r),this._hashSize=Math.ceil(Math.sqrt(t)),this._hullPrev=new Uint32Array(t),this._hullNext=new Uint32Array(t),this._hullTri=new Uint32Array(t),this._hullHash=new Int32Array(this._hashSize),this._ids=new Uint32Array(t),this._dists=new Float64Array(t),this.update()}update(){const{coords:e,_hullPrev:t,_hullNext:r,_hullTri:a,_hullHash:i}=this,n=e.length>>1;let o=1/0,c=1/0,l=-1/0,s=-1/0;for(let t=0;tl&&(l=r),a>s&&(s=a),this._ids[t]=t}const u=(o+l)/2,h=(c+s)/2;let d,p,y;for(let t=0,r=1/0;t0&&(p=t,r=a)}let g=e[2*p],b=e[2*p+1],v=1/0;for(let t=0;ta&&(t[r++]=i,a=n)}return this.hull=t.subarray(0,r),this.triangles=new Uint32Array(0),void(this.halfedges=new Uint32Array(0))}if(cc(f,m,g,b,x,k)<0){const e=p,t=g,r=b;p=y,g=x,b=k,y=e,x=t,k=r}const w=function(e,t,r,a,i,n){const o=r-e,c=a-t,l=i-e,s=n-t,u=o*o+c*c,h=l*l+s*s,d=.5/(o*s-c*l),p=e+(s*u-c*h)*d,y=t+(o*h-l*u)*d;return{x:p,y:y}}(f,m,g,b,x,k);this._cx=w.x,this._cy=w.y;for(let t=0;t0&&Math.abs(s-n)<=lc&&Math.abs(u-o)<=lc)continue;if(n=s,o=u,l===d||l===p||l===y)continue;let h=0;for(let e=0,t=this._hashKey(s,u);e=0;)if(m=f,m===h){m=-1;break}if(-1===m)continue;let g=this._addTriangle(m,l,r[m],-1,-1,a[m]);a[l]=this._legalize(g+2),a[m]=g,C++;let b=r[m];for(;f=r[b],cc(s,u,e[2*b],e[2*b+1],e[2*f],e[2*f+1])<0;)g=this._addTriangle(b,l,f,a[l],-1,a[b]),a[l]=this._legalize(g+2),r[b]=b,C--,b=f;if(m===h)for(;f=t[m],cc(s,u,e[2*f],e[2*f+1],e[2*m],e[2*m+1])<0;)g=this._addTriangle(f,l,m,-1,a[m],a[f]),this._legalize(g+2),a[f]=g,r[m]=m,C--,m=f;this._hullStart=t[l]=m,r[m]=t[b]=l,r[l]=b,i[this._hashKey(s,u)]=l,i[this._hashKey(e[2*m],e[2*m+1])]=m}this.hull=new Uint32Array(C);for(let e=0,t=this._hullStart;e0?3-r:1+r)/4}(e-this._cx,t-this._cy)*this._hashSize)%this._hashSize}_legalize(e){const{_triangles:t,_halfedges:r,coords:a}=this;let i=0,n=0;for(;;){const o=r[e],c=e-e%3;if(n=c+(e+2)%3,-1===o){if(0===i)break;e=sc[--i];continue}const l=o-o%3,s=c+(e+1)%3,u=l+(o+2)%3,h=t[n],d=t[e],p=t[s],y=t[u];if(dc(a[2*h],a[2*h+1],a[2*d],a[2*d+1],a[2*p],a[2*p+1],a[2*y],a[2*y+1])){t[e]=y,t[o]=h;const a=r[u];if(-1===a){let t=this._hullStart;do{if(this._hullTri[t]===u){this._hullTri[t]=e;break}t=this._hullPrev[t]}while(t!==this._hullStart)}this._link(e,a),this._link(o,r[n]),this._link(n,u);const c=l+(o+1)%3;i=r&&t[e[o]]>n;)e[o+1]=e[o--];e[o+1]=a}else{let i=r+1,n=a;fc(e,r+a>>1,i),t[e[r]]>t[e[a]]&&fc(e,r,a),t[e[i]]>t[e[a]]&&fc(e,i,a),t[e[r]]>t[e[i]]&&fc(e,r,i);const o=e[i],c=t[o];for(;;){do{i++}while(t[e[i]]c);if(n=n-r?(yc(e,t,i,a),yc(e,t,r,n-1)):(yc(e,t,r,n-1),yc(e,t,i,a))}}function fc(e,t,r){const a=e[t];e[t]=e[r],e[r]=a}function mc(e){return e[0]}function gc(e){return e[1]}const bc=1e-6;class vc{constructor(){this._x0=this._y0=this._x1=this._y1=null,this._=""}moveTo(e,t){this._+=`M${this._x0=this._x1=+e},${this._y0=this._y1=+t}`}closePath(){null!==this._x1&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")}lineTo(e,t){this._+=`L${this._x1=+e},${this._y1=+t}`}arc(e,t,r){const a=(e=+e)+(r=+r),i=t=+t;if(r<0)throw new Error("negative radius");null===this._x1?this._+=`M${a},${i}`:(Math.abs(this._x1-a)>bc||Math.abs(this._y1-i)>bc)&&(this._+="L"+a+","+i),r&&(this._+=`A${r},${r},0,1,1,${e-r},${t}A${r},${r},0,1,1,${this._x1=a},${this._y1=i}`)}rect(e,t,r,a){this._+=`M${this._x0=this._x1=+e},${this._y0=this._y1=+t}h${+r}v${+a}h${-r}Z`}value(){return this._||null}}class xc{constructor(){this._=[]}moveTo(e,t){this._.push([e,t])}closePath(){this._.push(this._[0].slice())}lineTo(e,t){this._.push([e,t])}value(){return this._.length?this._:null}}class kc{constructor(e,[t,r,a,i]=[0,0,960,500]){if(!((a=+a)>=(t=+t)&&(i=+i)>=(r=+r)))throw new Error("invalid bounds");this.delaunay=e,this._circumcenters=new Float64Array(2*e.points.length),this.vectors=new Float64Array(2*e.points.length),this.xmax=a,this.xmin=t,this.ymax=i,this.ymin=r,this._init()}update(){return this.delaunay.update(),this._init(),this}_init(){const{delaunay:{points:e,hull:t,triangles:r},vectors:a}=this;let i,n;const o=this.circumcenters=this._circumcenters.subarray(0,r.length/3*2);for(let a,c,l=0,s=0,u=r.length;l1;)i-=2;for(let e=2;e0){if(t>=this.ymax)return null;(i=(this.ymax-t)/a)0){if(e>=this.xmax)return null;(i=(this.xmax-e)/r)this.xmax?2:0)|(tthis.ymax?8:0)}_simplify(e){if(e&&e.length>4){for(let t=0;t2&&function(e){const{triangles:t,coords:r}=e;for(let e=0;e1e-10)return!1}return!0}(e)){this.collinear=Int32Array.from({length:t.length/2},((e,t)=>t)).sort(((e,r)=>t[2*e]-t[2*r]||t[2*e+1]-t[2*r+1]));const e=this.collinear[0],r=this.collinear[this.collinear.length-1],a=[t[2*e],t[2*e+1],t[2*r],t[2*r+1]],i=1e-8*Math.hypot(a[3]-a[1],a[2]-a[0]);for(let e=0,r=t.length/2;e0&&(this.triangles=new Int32Array(3).fill(-1),this.halfedges=new Int32Array(3).fill(-1),this.triangles[0]=a[0],n[a[0]]=1,2===a.length&&(n[a[1]]=0,this.triangles[1]=a[1],this.triangles[2]=a[1]))}voronoi(e){return new kc(this,e)}*neighbors(e){const{inedges:t,hull:r,_hullIndex:a,halfedges:i,triangles:n,collinear:o}=this;if(o){const t=o.indexOf(e);return t>0&&(yield o[t-1]),void(t=0&&i!==r&&i!==a;)r=i;return i}_step(e,t,r){const{inedges:a,hull:i,_hullIndex:n,halfedges:o,triangles:c,points:l}=this;if(-1===a[e]||!l.length)return(e+1)%(l.length>>1);let s=e,u=Cc(t-l[2*e],2)+Cc(r-l[2*e+1],2);const h=a[e];let d=h;do{let a=c[d];const h=Cc(t-l[2*a],2)+Cc(r-l[2*a+1],2);if(h9999?"+"+Rc(t,6):Rc(t,4))+"-"+Rc(e.getUTCMonth()+1,2)+"-"+Rc(e.getUTCDate(),2)+(n?"T"+Rc(r,2)+":"+Rc(a,2)+":"+Rc(i,2)+"."+Rc(n,3)+"Z":i?"T"+Rc(r,2)+":"+Rc(a,2)+":"+Rc(i,2)+"Z":a||r?"T"+Rc(r,2)+":"+Rc(a,2)+"Z":"")}function Dc(e){var t=new RegExp('["'+e+"\n\r]"),r=e.charCodeAt(0);function a(e,t){var a,i=[],n=e.length,o=0,c=0,l=n<=0,s=!1;function u(){if(l)return Bc;if(s)return s=!1,Tc;var t,a,i=o;if(34===e.charCodeAt(i)){for(;o++=n?l=!0:10===(a=e.charCodeAt(o++))?s=!0:13===a&&(s=!0,10===e.charCodeAt(o)&&++o),e.slice(i+1,t-1).replace(/""/g,'"')}for(;otl(t,r).then((t=>(new DOMParser).parseFromString(t,e)))}var cl=ol("application/xml"),ll=ol("text/html"),sl=ol("image/svg+xml");function ul(e,t,r,a){if(isNaN(t)||isNaN(r))return e;var i,n,o,c,l,s,u,h,d,p=e._root,y={data:a},f=e._x0,m=e._y0,g=e._x1,b=e._y1;if(!p)return e._root=y,e;for(;p.length;)if((s=t>=(n=(f+g)/2))?f=n:g=n,(u=r>=(o=(m+b)/2))?m=o:b=o,i=p,!(p=p[h=u<<1|s]))return i[h]=y,e;if(c=+e._x.call(null,p.data),l=+e._y.call(null,p.data),t===c&&r===l)return y.next=p,i?i[h]=y:e._root=y,e;do{i=i?i[h]=new Array(4):e._root=new Array(4),(s=t>=(n=(f+g)/2))?f=n:g=n,(u=r>=(o=(m+b)/2))?m=o:b=o}while((h=u<<1|s)==(d=(l>=o)<<1|c>=n));return i[d]=p,i[h]=y,e}function hl(e,t,r,a,i){this.node=e,this.x0=t,this.y0=r,this.x1=a,this.y1=i}function dl(e){return e[0]}function pl(e){return e[1]}function yl(e,t,r){var a=new fl(null==t?dl:t,null==r?pl:r,NaN,NaN,NaN,NaN);return null==e?a:a.addAll(e)}function fl(e,t,r,a,i,n){this._x=e,this._y=t,this._x0=r,this._y0=a,this._x1=i,this._y1=n,this._root=void 0}function ml(e){for(var t={data:e.data},r=t;e=e.next;)r=r.next={data:e.data};return t}var gl=yl.prototype=fl.prototype;function bl(e){return function(){return e}}function vl(e){return 1e-6*(e()-.5)}function xl(e){return e.x+e.vx}function kl(e){return e.y+e.vy}function wl(e){return e.index}function Cl(e,t){var r=e.get(t);if(!r)throw new Error("node not found: "+t);return r}gl.copy=function(){var e,t,r=new fl(this._x,this._y,this._x0,this._y0,this._x1,this._y1),a=this._root;if(!a)return r;if(!a.length)return r._root=ml(a),r;for(e=[{source:a,target:r._root=new Array(4)}];a=e.pop();)for(var i=0;i<4;++i)(t=a.source[i])&&(t.length?e.push({source:t,target:a.target[i]=new Array(4)}):a.target[i]=ml(t));return r},gl.add=function(e){const t=+this._x.call(null,e),r=+this._y.call(null,e);return ul(this.cover(t,r),t,r,e)},gl.addAll=function(e){var t,r,a,i,n=e.length,o=new Array(n),c=new Array(n),l=1/0,s=1/0,u=-1/0,h=-1/0;for(r=0;ru&&(u=a),ih&&(h=i));if(l>u||s>h)return this;for(this.cover(l,s).cover(u,h),r=0;re||e>=i||a>t||t>=n;)switch(c=(td||(n=l.y0)>p||(o=l.x1)=g)<<1|e>=m)&&(l=y[y.length-1],y[y.length-1]=y[y.length-1-s],y[y.length-1-s]=l)}else{var b=e-+this._x.call(null,f.data),v=t-+this._y.call(null,f.data),x=b*b+v*v;if(x=(c=(y+m)/2))?y=c:m=c,(u=o>=(l=(f+g)/2))?f=l:g=l,t=p,!(p=p[h=u<<1|s]))return this;if(!p.length)break;(t[h+1&3]||t[h+2&3]||t[h+3&3])&&(r=t,d=h)}for(;p.data!==e;)if(a=p,!(p=p.next))return this;return(i=p.next)&&delete p.next,a?(i?a.next=i:delete a.next,this):t?(i?t[h]=i:delete t[h],(p=t[0]||t[1]||t[2]||t[3])&&p===(t[3]||t[2]||t[1]||t[0])&&!p.length&&(r?r[d]=p:this._root=p),this):(this._root=i,this)},gl.removeAll=function(e){for(var t=0,r=e.length;t1?a[0]+a.slice(2):a,+e.slice(r+1)]}function Bl(e){return(e=Tl(Math.abs(e)))?e[1]:NaN}var Ll,El=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function Rl(e){if(!(t=El.exec(e)))throw new Error("invalid format: "+e);var t;return new Hl({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}function Hl(e){this.fill=void 0===e.fill?" ":e.fill+"",this.align=void 0===e.align?">":e.align+"",this.sign=void 0===e.sign?"-":e.sign+"",this.symbol=void 0===e.symbol?"":e.symbol+"",this.zero=!!e.zero,this.width=void 0===e.width?void 0:+e.width,this.comma=!!e.comma,this.precision=void 0===e.precision?void 0:+e.precision,this.trim=!!e.trim,this.type=void 0===e.type?"":e.type+""}function Dl(e,t){var r=Tl(e,t);if(!r)return e+"";var a=r[0],i=r[1];return i<0?"0."+new Array(-i).join("0")+a:a.length>i+1?a.slice(0,i+1)+"."+a.slice(i+1):a+new Array(i-a.length+2).join("0")}Rl.prototype=Hl.prototype,Hl.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(void 0===this.width?"":Math.max(1,0|this.width))+(this.comma?",":"")+(void 0===this.precision?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type};var Pl={"%":(e,t)=>(100*e).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+"",d:function(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString("en").replace(/,/g,""):e.toString(10)},e:(e,t)=>e.toExponential(t),f:(e,t)=>e.toFixed(t),g:(e,t)=>e.toPrecision(t),o:e=>Math.round(e).toString(8),p:(e,t)=>Dl(100*e,t),r:Dl,s:function(e,t){var r=Tl(e,t);if(!r)return e+"";var a=r[0],i=r[1],n=i-(Ll=3*Math.max(-8,Math.min(8,Math.floor(i/3))))+1,o=a.length;return n===o?a:n>o?a+new Array(n-o+1).join("0"):n>0?a.slice(0,n)+"."+a.slice(n):"0."+new Array(1-n).join("0")+Tl(e,Math.max(0,t+n-1))[0]},X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function Nl(e){return e}var Gl,Il,Wl,Fl=Array.prototype.map,zl=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function Ol(e){var t,r,a=void 0===e.grouping||void 0===e.thousands?Nl:(t=Fl.call(e.grouping,Number),r=e.thousands+"",function(e,a){for(var i=e.length,n=[],o=0,c=t[0],l=0;i>0&&c>0&&(l+c+1>a&&(c=Math.max(1,a-l)),n.push(e.substring(i-=c,i+c)),!((l+=c+1)>a));)c=t[o=(o+1)%t.length];return n.reverse().join(r)}),i=void 0===e.currency?"":e.currency[0]+"",n=void 0===e.currency?"":e.currency[1]+"",o=void 0===e.decimal?".":e.decimal+"",c=void 0===e.numerals?Nl:function(e){return function(t){return t.replace(/[0-9]/g,(function(t){return e[+t]}))}}(Fl.call(e.numerals,String)),l=void 0===e.percent?"%":e.percent+"",s=void 0===e.minus?"−":e.minus+"",u=void 0===e.nan?"NaN":e.nan+"";function h(e){var t=(e=Rl(e)).fill,r=e.align,h=e.sign,d=e.symbol,p=e.zero,y=e.width,f=e.comma,m=e.precision,g=e.trim,b=e.type;"n"===b?(f=!0,b="g"):Pl[b]||(void 0===m&&(m=12),g=!0,b="g"),(p||"0"===t&&"="===r)&&(p=!0,t="0",r="=");var v="$"===d?i:"#"===d&&/[boxX]/.test(b)?"0"+b.toLowerCase():"",x="$"===d?n:/[%p]/.test(b)?l:"",k=Pl[b],w=/[defgprs%]/.test(b);function C(e){var i,n,l,d=v,C=x;if("c"===b)C=k(e)+C,e="";else{var _=(e=+e)<0||1/e<0;if(e=isNaN(e)?u:k(Math.abs(e),m),g&&(e=function(e){e:for(var t,r=e.length,a=1,i=-1;a0&&(i=0)}return i>0?e.slice(0,i)+e.slice(t+1):e}(e)),_&&0==+e&&"+"!==h&&(_=!1),d=(_?"("===h?h:s:"-"===h||"("===h?"":h)+d,C=("s"===b?zl[8+Ll/3]:"")+C+(_&&"("===h?")":""),w)for(i=-1,n=e.length;++i(l=e.charCodeAt(i))||l>57){C=(46===l?o+e.slice(i+1):e.slice(i))+C,e=e.slice(0,i);break}}f&&!p&&(e=a(e,1/0));var S=d.length+e.length+C.length,A=S>1)+d+e+C+A.slice(S);break;default:e=A+d+e+C}return c(e)}return m=void 0===m?6:/[gprs]/.test(b)?Math.max(1,Math.min(21,m)):Math.max(0,Math.min(20,m)),C.toString=function(){return e+""},C}return{format:h,formatPrefix:function(e,t){var r=h(((e=Rl(e)).type="f",e)),a=3*Math.max(-8,Math.min(8,Math.floor(Bl(t)/3))),i=Math.pow(10,-a),n=zl[8+a/3];return function(e){return r(i*e)+n}}}}function Kl(e){return Gl=Ol(e),Il=Gl.format,Wl=Gl.formatPrefix,Gl}function Jl(e){return Math.max(0,-Bl(Math.abs(e)))}function Vl(e,t){return Math.max(0,3*Math.max(-8,Math.min(8,Math.floor(Bl(t)/3)))-Bl(Math.abs(e)))}function jl(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,Bl(t)-Bl(e))+1}Kl({thousands:",",grouping:[3],currency:["$",""]});var Yl=1e-6,$l=1e-12,Ul=Math.PI,ql=Ul/2,Zl=Ul/4,Ql=2*Ul,Xl=180/Ul,es=Ul/180,ts=Math.abs,rs=Math.atan,as=Math.atan2,is=Math.cos,ns=Math.ceil,os=Math.exp,cs=Math.hypot,ls=Math.log,ss=Math.pow,us=Math.sin,hs=Math.sign||function(e){return e>0?1:e<0?-1:0},ds=Math.sqrt,ps=Math.tan;function ys(e){return e>1?0:e<-1?Ul:Math.acos(e)}function fs(e){return e>1?ql:e<-1?-ql:Math.asin(e)}function ms(e){return(e=us(e/2))*e}function gs(){}function bs(e,t){e&&xs.hasOwnProperty(e.type)&&xs[e.type](e,t)}var vs={Feature:function(e,t){bs(e.geometry,t)},FeatureCollection:function(e,t){for(var r=e.features,a=-1,i=r.length;++a=0?1:-1,i=a*r,n=is(t=(t*=es)/2+Zl),o=us(t),c=Ts*o,l=Ms*n+c*is(i),s=c*a*us(i);Fs.add(as(s,l)),As=e,Ms=n,Ts=o}function Ys(e){return[as(e[1],e[0]),fs(e[2])]}function $s(e){var t=e[0],r=e[1],a=is(r);return[a*is(t),a*us(t),us(r)]}function Us(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}function qs(e,t){return[e[1]*t[2]-e[2]*t[1],e[2]*t[0]-e[0]*t[2],e[0]*t[1]-e[1]*t[0]]}function Zs(e,t){e[0]+=t[0],e[1]+=t[1],e[2]+=t[2]}function Qs(e,t){return[e[0]*t,e[1]*t,e[2]*t]}function Xs(e){var t=ds(e[0]*e[0]+e[1]*e[1]+e[2]*e[2]);e[0]/=t,e[1]/=t,e[2]/=t}var eu,tu,ru,au,iu,nu,ou,cu,lu,su,uu,hu,du,pu,yu,fu,mu={point:gu,lineStart:vu,lineEnd:xu,polygonStart:function(){mu.point=ku,mu.lineStart=wu,mu.lineEnd=Cu,Gs=new C,Os.polygonStart()},polygonEnd:function(){Os.polygonEnd(),mu.point=gu,mu.lineStart=vu,mu.lineEnd=xu,Fs<0?(Bs=-(Es=180),Ls=-(Rs=90)):Gs>Yl?Rs=90:Gs<-1e-6&&(Ls=-90),Ws[0]=Bs,Ws[1]=Es},sphere:function(){Bs=-(Es=180),Ls=-(Rs=90)}};function gu(e,t){Is.push(Ws=[Bs=e,Es=e]),tRs&&(Rs=t)}function bu(e,t){var r=$s([e*es,t*es]);if(Ns){var a=qs(Ns,r),i=qs([a[1],-a[0],0],a);Xs(i),i=Ys(i);var n,o=e-Hs,c=o>0?1:-1,l=i[0]*Xl*c,s=ts(o)>180;s^(c*HsRs&&(Rs=n):s^(c*Hs<(l=(l+360)%360-180)&&lRs&&(Rs=t)),s?e_u(Bs,Es)&&(Es=e):_u(e,Es)>_u(Bs,Es)&&(Bs=e):Es>=Bs?(eEs&&(Es=e)):e>Hs?_u(Bs,e)>_u(Bs,Es)&&(Es=e):_u(e,Es)>_u(Bs,Es)&&(Bs=e)}else Is.push(Ws=[Bs=e,Es=e]);tRs&&(Rs=t),Ns=r,Hs=e}function vu(){mu.point=bu}function xu(){Ws[0]=Bs,Ws[1]=Es,mu.point=gu,Ns=null}function ku(e,t){if(Ns){var r=e-Hs;Gs.add(ts(r)>180?r+(r>0?360:-360):r)}else Ds=e,Ps=t;Os.point(e,t),bu(e,t)}function wu(){Os.lineStart()}function Cu(){ku(Ds,Ps),Os.lineEnd(),ts(Gs)>Yl&&(Bs=-(Es=180)),Ws[0]=Bs,Ws[1]=Es,Ns=null}function _u(e,t){return(t-=e)<0?t+360:t}function Su(e,t){return e[0]-t[0]}function Au(e,t){return e[0]<=e[1]?e[0]<=t&&t<=e[1]:tUl&&(e-=Math.round(e/Ql)*Ql),[e,t]}function zu(e,t,r){return(e%=Ql)?t||r?Wu(Ku(e),Ju(t,r)):Ku(e):t||r?Ju(t,r):Fu}function Ou(e){return function(t,r){return ts(t+=e)>Ul&&(t-=Math.round(t/Ql)*Ql),[t,r]}}function Ku(e){var t=Ou(e);return t.invert=Ou(-e),t}function Ju(e,t){var r=is(e),a=us(e),i=is(t),n=us(t);function o(e,t){var o=is(t),c=is(e)*o,l=us(e)*o,s=us(t),u=s*r+c*a;return[as(l*i-u*n,c*r-s*a),fs(u*i+l*n)]}return o.invert=function(e,t){var o=is(t),c=is(e)*o,l=us(e)*o,s=us(t),u=s*i-l*n;return[as(l*i+s*n,c*r+u*a),fs(u*r-c*a)]},o}function Vu(e){function t(t){return(t=e(t[0]*es,t[1]*es))[0]*=Xl,t[1]*=Xl,t}return e=zu(e[0]*es,e[1]*es,e.length>2?e[2]*es:0),t.invert=function(t){return(t=e.invert(t[0]*es,t[1]*es))[0]*=Xl,t[1]*=Xl,t},t}function ju(e,t,r,a,i,n){if(r){var o=is(t),c=us(t),l=a*r;null==i?(i=t+a*Ql,n=t-l/2):(i=Yu(o,i),n=Yu(o,n),(a>0?in)&&(i+=a*Ql));for(var s,u=i;a>0?u>n:u1&&t.push(t.pop().concat(t.shift()))},result:function(){var r=t;return t=[],e=null,r}}}function Uu(e,t){return ts(e[0]-t[0])=0;--n)i.point((u=s[n])[0],u[1]);else a(d.x,d.p.x,-1,i);d=d.p}s=(d=d.o).z,p=!p}while(!d.v);i.lineEnd()}}}function Qu(e){if(t=e.length){for(var t,r,a=0,i=e[0];++a=0?1:-1,M=A*S,T=M>Ul,B=m*w;if(l.add(as(B*A*us(M),g*_+B*is(M))),o+=T?S+A*Ql:S,T^y>=r^x>=r){var L=qs($s(p),$s(v));Xs(L);var E=qs(n,L);Xs(E);var R=(T^S>=0?-1:1)*fs(E[2]);(a>R||a===R&&(L[0]||L[1]))&&(c+=T^S>=0?1:-1)}}return(o<-1e-6||o0){for(h||(i.polygonStart(),h=!0),i.lineStart(),e=0;e1&&2&l&&d.push(d.pop().concat(d.shift())),o.push(d.filter(rh))}return d}}function rh(e){return e.length>1}function ah(e,t){return((e=e.x)[0]<0?e[1]-ql-Yl:ql-e[1])-((t=t.x)[0]<0?t[1]-ql-Yl:ql-t[1])}Fu.invert=Fu;var ih=th((function(){return!0}),(function(e){var t,r=NaN,a=NaN,i=NaN;return{lineStart:function(){e.lineStart(),t=1},point:function(n,o){var c=n>0?Ul:-Ul,l=ts(n-r);ts(l-Ul)0?ql:-ql),e.point(i,a),e.lineEnd(),e.lineStart(),e.point(c,a),e.point(n,a),t=0):i!==c&&l>=Ul&&(ts(r-i)Yl?rs((us(t)*(n=is(a))*us(r)-us(a)*(i=is(t))*us(e))/(i*n*o)):(t+a)/2}(r,a,n,o),e.point(i,a),e.lineEnd(),e.lineStart(),e.point(c,a),t=0),e.point(r=n,a=o),i=c},lineEnd:function(){e.lineEnd(),r=a=NaN},clean:function(){return 2-t}}}),(function(e,t,r,a){var i;if(null==e)i=r*ql,a.point(-Ul,i),a.point(0,i),a.point(Ul,i),a.point(Ul,0),a.point(Ul,-i),a.point(0,-i),a.point(-Ul,-i),a.point(-Ul,0),a.point(-Ul,i);else if(ts(e[0]-t[0])>Yl){var n=e[0]0,i=ts(t)>Yl;function n(e,r){return is(e)*is(r)>t}function o(e,r,a){var i=[1,0,0],n=qs($s(e),$s(r)),o=Us(n,n),c=n[0],l=o-c*c;if(!l)return!a&&e;var s=t*o/l,u=-t*c/l,h=qs(i,n),d=Qs(i,s);Zs(d,Qs(n,u));var p=h,y=Us(d,p),f=Us(p,p),m=y*y-f*(Us(d,d)-1);if(!(m<0)){var g=ds(m),b=Qs(p,(-y-g)/f);if(Zs(b,d),b=Ys(b),!a)return b;var v,x=e[0],k=r[0],w=e[1],C=r[1];k0^b[1]<(ts(b[0]-x)Ul^(x<=b[0]&&b[0]<=k)){var A=Qs(p,(-y+g)/f);return Zs(A,d),[b,Ys(A)]}}}function c(t,r){var i=a?e:Ul-e,n=0;return t<-i?n|=1:t>i&&(n|=2),r<-i?n|=4:r>i&&(n|=8),n}return th(n,(function(e){var t,r,l,s,u;return{lineStart:function(){s=l=!1,u=1},point:function(h,d){var p,y=[h,d],f=n(h,d),m=a?f?0:c(h,d):f?c(h+(h<0?Ul:-Ul),d):0;if(!t&&(s=l=f)&&e.lineStart(),f!==l&&(!(p=o(t,y))||Uu(t,p)||Uu(y,p))&&(y[2]=1),f!==l)u=0,f?(e.lineStart(),p=o(y,t),e.point(p[0],p[1])):(p=o(t,y),e.point(p[0],p[1],2),e.lineEnd()),t=p;else if(i&&t&&a^f){var g;m&r||!(g=o(y,t,!0))||(u=0,a?(e.lineStart(),e.point(g[0][0],g[0][1]),e.point(g[1][0],g[1][1]),e.lineEnd()):(e.point(g[1][0],g[1][1]),e.lineEnd(),e.lineStart(),e.point(g[0][0],g[0][1],3)))}!f||t&&Uu(t,y)||e.point(y[0],y[1]),t=y,l=f,r=m},lineEnd:function(){l&&e.lineEnd(),t=null},clean:function(){return u|(s&&l)<<1}}}),(function(t,a,i,n){ju(n,e,r,i,t,a)}),a?[0,-e]:[-Ul,e-Ul])}var oh,ch,lh,sh,uh=1e9,hh=-uh;function dh(e,t,r,a){function i(i,n){return e<=i&&i<=r&&t<=n&&n<=a}function n(i,n,c,s){var u=0,h=0;if(null==i||(u=o(i,c))!==(h=o(n,c))||l(i,n)<0^c>0)do{s.point(0===u||3===u?e:r,u>1?a:t)}while((u=(u+c+4)%4)!==h);else s.point(n[0],n[1])}function o(a,i){return ts(a[0]-e)0?0:3:ts(a[0]-r)0?2:1:ts(a[1]-t)0?1:0:i>0?3:2}function c(e,t){return l(e.x,t.x)}function l(e,t){var r=o(e,1),a=o(t,1);return r!==a?r-a:0===r?t[1]-e[1]:1===r?e[0]-t[0]:2===r?e[1]-t[1]:t[0]-e[0]}return function(o){var l,s,u,h,d,p,y,f,m,g,b,v=o,x=$u(),k={point:w,lineStart:function(){k.point=C,s&&s.push(u=[]);g=!0,m=!1,y=f=NaN},lineEnd:function(){l&&(C(h,d),p&&m&&x.rejoin(),l.push(x.result()));k.point=w,m&&v.lineEnd()},polygonStart:function(){v=x,l=[],s=[],b=!0},polygonEnd:function(){var t=function(){for(var t=0,r=0,i=s.length;ra&&(d-n)*(a-o)>(p-o)*(e-n)&&++t:p<=a&&(d-n)*(a-o)<(p-o)*(e-n)&&--t;return t}(),r=b&&t,i=(l=ue(l)).length;(r||i)&&(o.polygonStart(),r&&(o.lineStart(),n(null,null,1,o),o.lineEnd()),i&&Zu(l,c,t,n,o),o.polygonEnd());v=o,l=s=u=null}};function w(e,t){i(e,t)&&v.point(e,t)}function C(n,o){var c=i(n,o);if(s&&u.push([n,o]),g)h=n,d=o,p=c,g=!1,c&&(v.lineStart(),v.point(n,o));else if(c&&m)v.point(n,o);else{var l=[y=Math.max(hh,Math.min(uh,y)),f=Math.max(hh,Math.min(uh,f))],x=[n=Math.max(hh,Math.min(uh,n)),o=Math.max(hh,Math.min(uh,o))];!function(e,t,r,a,i,n){var o,c=e[0],l=e[1],s=0,u=1,h=t[0]-c,d=t[1]-l;if(o=r-c,h||!(o>0)){if(o/=h,h<0){if(o0){if(o>u)return;o>s&&(s=o)}if(o=i-c,h||!(o<0)){if(o/=h,h<0){if(o>u)return;o>s&&(s=o)}else if(h>0){if(o0)){if(o/=d,d<0){if(o0){if(o>u)return;o>s&&(s=o)}if(o=n-l,d||!(o<0)){if(o/=d,d<0){if(o>u)return;o>s&&(s=o)}else if(d>0){if(o0&&(e[0]=c+s*h,e[1]=l+s*d),u<1&&(t[0]=c+u*h,t[1]=l+u*d),!0}}}}}(l,x,e,t,r,a)?c&&(v.lineStart(),v.point(n,o),b=!1):(m||(v.lineStart(),v.point(l[0],l[1])),v.point(x[0],x[1]),c||v.lineEnd(),b=!1)}y=n,f=o,m=c}return k}}var ph={sphere:gs,point:gs,lineStart:function(){ph.point=fh,ph.lineEnd=yh},lineEnd:gs,polygonStart:gs,polygonEnd:gs};function yh(){ph.point=ph.lineEnd=gs}function fh(e,t){ch=e*=es,lh=us(t*=es),sh=is(t),ph.point=mh}function mh(e,t){e*=es;var r=us(t*=es),a=is(t),i=ts(e-ch),n=is(i),o=a*us(i),c=sh*r-lh*a*n,l=lh*r+sh*a*n;oh.add(as(ds(o*o+c*c),l)),ch=e,lh=r,sh=a}function gh(e){return oh=new C,Cs(e,ph),+oh}var bh=[null,null],vh={type:"LineString",coordinates:bh};function xh(e,t){return bh[0]=e,bh[1]=t,gh(vh)}var kh={Feature:function(e,t){return Ch(e.geometry,t)},FeatureCollection:function(e,t){for(var r=e.features,a=-1,i=r.length;++a0&&(i=xh(e[n],e[n-1]))>0&&r<=i&&a<=i&&(r+a-i)*(1-Math.pow((r-a)/i,2))<$l*i)return!0;r=a}return!1}function Ah(e,t){return!!eh(e.map(Mh),Th(t))}function Mh(e){return(e=e.map(Th)).pop(),e}function Th(e){return[e[0]*es,e[1]*es]}function Bh(e,t,r){var a=de(e,t-Yl,r).concat(t);return function(e){return a.map((function(t){return[e,t]}))}}function Lh(e,t,r){var a=de(e,t-Yl,r).concat(t);return function(e){return a.map((function(t){return[t,e]}))}}function Eh(){var e,t,r,a,i,n,o,c,l,s,u,h,d=10,p=d,y=90,f=360,m=2.5;function g(){return{type:"MultiLineString",coordinates:b()}}function b(){return de(ns(a/y)*y,r,y).map(u).concat(de(ns(c/f)*f,o,f).map(h)).concat(de(ns(t/d)*d,e,d).filter((function(e){return ts(e%y)>Yl})).map(l)).concat(de(ns(n/p)*p,i,p).filter((function(e){return ts(e%f)>Yl})).map(s))}return g.lines=function(){return b().map((function(e){return{type:"LineString",coordinates:e}}))},g.outline=function(){return{type:"Polygon",coordinates:[u(a).concat(h(o).slice(1),u(r).reverse().slice(1),h(c).reverse().slice(1))]}},g.extent=function(e){return arguments.length?g.extentMajor(e).extentMinor(e):g.extentMinor()},g.extentMajor=function(e){return arguments.length?(a=+e[0][0],r=+e[1][0],c=+e[0][1],o=+e[1][1],a>r&&(e=a,a=r,r=e),c>o&&(e=c,c=o,o=e),g.precision(m)):[[a,c],[r,o]]},g.extentMinor=function(r){return arguments.length?(t=+r[0][0],e=+r[1][0],n=+r[0][1],i=+r[1][1],t>e&&(r=t,t=e,e=r),n>i&&(r=n,n=i,i=r),g.precision(m)):[[t,n],[e,i]]},g.step=function(e){return arguments.length?g.stepMajor(e).stepMinor(e):g.stepMinor()},g.stepMajor=function(e){return arguments.length?(y=+e[0],f=+e[1],g):[y,f]},g.stepMinor=function(e){return arguments.length?(d=+e[0],p=+e[1],g):[d,p]},g.precision=function(d){return arguments.length?(m=+d,l=Bh(n,i,90),s=Lh(t,e,m),u=Bh(c,o,90),h=Lh(a,r,m),g):m},g.extentMajor([[-180,-89.999999],[180,89.999999]]).extentMinor([[-180,-80.000001],[180,80.000001]])}var Rh,Hh,Dh,Ph,Nh=e=>e,Gh=new C,Ih=new C,Wh={point:gs,lineStart:gs,lineEnd:gs,polygonStart:function(){Wh.lineStart=Fh,Wh.lineEnd=Kh},polygonEnd:function(){Wh.lineStart=Wh.lineEnd=Wh.point=gs,Gh.add(ts(Ih)),Ih=new C},result:function(){var e=Gh/2;return Gh=new C,e}};function Fh(){Wh.point=zh}function zh(e,t){Wh.point=Oh,Rh=Dh=e,Hh=Ph=t}function Oh(e,t){Ih.add(Ph*e-Dh*t),Dh=e,Ph=t}function Kh(){Oh(Rh,Hh)}var Jh=1/0,Vh=Jh,jh=-Jh,Yh=jh,$h={point:function(e,t){ejh&&(jh=e);tYh&&(Yh=t)},lineStart:gs,lineEnd:gs,polygonStart:gs,polygonEnd:gs,result:function(){var e=[[Jh,Vh],[jh,Yh]];return jh=Yh=-(Vh=Jh=1/0),e}};var Uh,qh,Zh,Qh,Xh=0,ed=0,td=0,rd=0,ad=0,id=0,nd=0,od=0,cd=0,ld={point:sd,lineStart:ud,lineEnd:pd,polygonStart:function(){ld.lineStart=yd,ld.lineEnd=fd},polygonEnd:function(){ld.point=sd,ld.lineStart=ud,ld.lineEnd=pd},result:function(){var e=cd?[nd/cd,od/cd]:id?[rd/id,ad/id]:td?[Xh/td,ed/td]:[NaN,NaN];return Xh=ed=td=rd=ad=id=nd=od=cd=0,e}};function sd(e,t){Xh+=e,ed+=t,++td}function ud(){ld.point=hd}function hd(e,t){ld.point=dd,sd(Zh=e,Qh=t)}function dd(e,t){var r=e-Zh,a=t-Qh,i=ds(r*r+a*a);rd+=i*(Zh+e)/2,ad+=i*(Qh+t)/2,id+=i,sd(Zh=e,Qh=t)}function pd(){ld.point=sd}function yd(){ld.point=md}function fd(){gd(Uh,qh)}function md(e,t){ld.point=gd,sd(Uh=Zh=e,qh=Qh=t)}function gd(e,t){var r=e-Zh,a=t-Qh,i=ds(r*r+a*a);rd+=i*(Zh+e)/2,ad+=i*(Qh+t)/2,id+=i,nd+=(i=Qh*e-Zh*t)*(Zh+e),od+=i*(Qh+t),cd+=3*i,sd(Zh=e,Qh=t)}function bd(e){this._context=e}bd.prototype={_radius:4.5,pointRadius:function(e){return this._radius=e,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){0===this._line&&this._context.closePath(),this._point=NaN},point:function(e,t){switch(this._point){case 0:this._context.moveTo(e,t),this._point=1;break;case 1:this._context.lineTo(e,t);break;default:this._context.moveTo(e+this._radius,t),this._context.arc(e,t,this._radius,0,Ql)}},result:gs};var vd,xd,kd,wd,Cd,_d=new C,Sd={point:gs,lineStart:function(){Sd.point=Ad},lineEnd:function(){vd&&Md(xd,kd),Sd.point=gs},polygonStart:function(){vd=!0},polygonEnd:function(){vd=null},result:function(){var e=+_d;return _d=new C,e}};function Ad(e,t){Sd.point=Md,xd=wd=e,kd=Cd=t}function Md(e,t){wd-=e,Cd-=t,_d.add(ds(wd*wd+Cd*Cd)),wd=e,Cd=t}let Td,Bd,Ld,Ed;class Rd{constructor(e){this._append=null==e?Hd:function(e){const t=Math.floor(e);if(!(t>=0))throw new RangeError(`invalid digits: ${e}`);if(t>15)return Hd;if(t!==Td){const e=10**t;Td=t,Bd=function(t){let r=1;this._+=t[0];for(const a=t.length;r4*t&&f--){var x=o+d,k=c+p,w=l+y,C=ds(x*x+k*k+w*w),_=fs(w/=C),S=ts(ts(w)-1)t||ts((g*B+b*L)/v-.5)>.3||o*d+c*p+l*y2?e[2]%360*es:0,B()):[m*Xl,g*Xl,b*Xl]},M.angle=function(e){return arguments.length?(v=e%360*es,B()):v*Xl},M.reflectX=function(e){return arguments.length?(x=e?-1:1,B()):x<0},M.reflectY=function(e){return arguments.length?(k=e?-1:1,B()):k<0},M.precision=function(e){return arguments.length?(o=Od(c,A=e*e),L()):ds(A)},M.fitExtent=function(e,t){return Gd(M,e,t)},M.fitSize=function(e,t){return Id(M,e,t)},M.fitWidth=function(e,t){return Wd(M,e,t)},M.fitHeight=function(e,t){return Fd(M,e,t)},function(){return t=e.apply(this,arguments),M.invert=t.invert&&T,B()}}function Yd(e){var t=0,r=Ul/3,a=jd(e),i=a(t,r);return i.parallels=function(e){return arguments.length?a(t=e[0]*es,r=e[1]*es):[t*Xl,r*Xl]},i}function $d(e,t){var r=us(e),a=(r+us(t))/2;if(ts(a)0?t<-ql+Yl&&(t=-ql+Yl):t>ql-Yl&&(t=ql-Yl);var r=i/ss(ap(t),a);return[r*us(a*e),i-r*is(a*e)]}return n.invert=function(e,t){var r=i-t,n=hs(a)*ds(e*e+r*r),o=as(e,ts(r))*hs(r);return r*a<0&&(o-=Ul*hs(e)*hs(r)),[o/a,2*rs(ss(i/n,1/a))-ql]},n}function np(e,t){return[e,t]}function op(e,t){var r=is(e),a=e===t?us(e):(r-is(t))/(t-e),i=r/a+e;if(ts(a)=0;)t+=r[a].value;else t=1;e.value=t}function Cp(e,t){e instanceof Map?(e=[void 0,e],void 0===t&&(t=Sp)):void 0===t&&(t=_p);for(var r,a,i,n,o,c=new Tp(e),l=[c];r=l.pop();)if((i=t(r.data))&&(o=(i=Array.from(i)).length))for(r.children=i,n=o-1;n>=0;--n)l.push(a=i[n]=new Tp(i[n])),a.parent=r,a.depth=r.depth+1;return c.eachBefore(Mp)}function _p(e){return e.children}function Sp(e){return Array.isArray(e)?e[1]:null}function Ap(e){void 0!==e.data.value&&(e.value=e.data.value),e.data=e.data.data}function Mp(e){var t=0;do{e.height=t}while((e=e.parent)&&e.height<++t)}function Tp(e){this.data=e,this.depth=this.height=0,this.parent=null}function Bp(e){return null==e?null:Lp(e)}function Lp(e){if("function"!=typeof e)throw new Error;return e}function Ep(){return 0}function Rp(e){return function(){return e}}dp.invert=function(e,t){for(var r,a=t,i=a*a,n=i*i*i,o=0;o<12&&(n=(i=(a-=r=(a*(cp+lp*i+n*(sp+up*i))-t)/(cp+3*lp*i+n*(7*sp+9*up*i)))*a)*i*i,!(ts(r)<$l));++o);return[hp*e*(cp+3*lp*i+n*(7*sp+9*up*i))/is(a),fs(us(a)/hp)]},pp.invert=Qd(rs),yp.invert=function(e,t){var r,a=t,i=25;do{var n=a*a,o=n*n;a-=r=(a*(1.007226+n*(.015085+o*(.028874*n-.044475-.005916*o)))-t)/(1.007226+n*(.045255+o*(.259866*n-.311325-.005916*11*o)))}while(ts(r)>Yl&&--i>0);return[e/(.8707+(n=a*a)*(n*(n*n*n*(.003971-.001529*n)-.013791)-.131979)),a]},fp.invert=Qd(fs),mp.invert=Qd((function(e){return 2*rs(e)})),gp.invert=function(e,t){return[-t,2*rs(os(e))-ql]},Tp.prototype=Cp.prototype={constructor:Tp,count:function(){return this.eachAfter(wp)},each:function(e,t){let r=-1;for(const a of this)e.call(t,a,++r,this);return this},eachAfter:function(e,t){for(var r,a,i,n=this,o=[n],c=[],l=-1;n=o.pop();)if(c.push(n),r=n.children)for(a=0,i=r.length;a=0;--a)n.push(r[a]);return this},find:function(e,t){let r=-1;for(const a of this)if(e.call(t,a,++r,this))return a},sum:function(e){return this.eachAfter((function(t){for(var r=+e(t.data)||0,a=t.children,i=a&&a.length;--i>=0;)r+=a[i].value;t.value=r}))},sort:function(e){return this.eachBefore((function(t){t.children&&t.children.sort(e)}))},path:function(e){for(var t=this,r=function(e,t){if(e===t)return e;var r=e.ancestors(),a=t.ancestors(),i=null;e=r.pop(),t=a.pop();for(;e===t;)i=e,e=r.pop(),t=a.pop();return i}(t,e),a=[t];t!==r;)t=t.parent,a.push(t);for(var i=a.length;e!==r;)a.splice(i,0,e),e=e.parent;return a},ancestors:function(){for(var e=this,t=[e];e=e.parent;)t.push(e);return t},descendants:function(){return Array.from(this)},leaves:function(){var e=[];return this.eachBefore((function(t){t.children||e.push(t)})),e},links:function(){var e=this,t=[];return e.each((function(r){r!==e&&t.push({source:r.parent,target:r})})),t},copy:function(){return Cp(this).eachBefore(Ap)},[Symbol.iterator]:function*(){var e,t,r,a,i=this,n=[i];do{for(e=n.reverse(),n=[];i=e.pop();)if(yield i,t=i.children)for(r=0,a=t.length;r(e=(1664525*e+1013904223)%Hp)/Hp}function Pp(e,t){for(var r,a,i=0,n=(e=function(e,t){let r,a,i=e.length;for(;i;)a=t()*i--|0,r=e[i],e[i]=e[a],e[a]=r;return e}(Array.from(e),t)).length,o=[];i0&&r*r>a*a+i*i}function Wp(e,t){for(var r=0;r1e-6?(M+Math.sqrt(M*M-4*A*T))/(2*A):T/M);return{x:a+w+C*B,y:i+_+S*B,r:B}}function Kp(e,t,r){var a,i,n,o,c=e.x-t.x,l=e.y-t.y,s=c*c+l*l;s?(i=t.r+r.r,i*=i,o=e.r+r.r,i>(o*=o)?(a=(s+o-i)/(2*s),n=Math.sqrt(Math.max(0,o/s-a*a)),r.x=e.x-a*c-n*l,r.y=e.y-a*l+n*c):(a=(s+i-o)/(2*s),n=Math.sqrt(Math.max(0,i/s-a*a)),r.x=t.x+a*c-n*l,r.y=t.y+a*l+n*c)):(r.x=t.x+r.r,r.y=t.y)}function Jp(e,t){var r=e.r+t.r-1e-6,a=t.x-e.x,i=t.y-e.y;return r>0&&r*r>a*a+i*i}function Vp(e){var t=e._,r=e.next._,a=t.r+r.r,i=(t.x*r.r+r.x*t.r)/a,n=(t.y*r.r+r.y*t.r)/a;return i*i+n*n}function jp(e){this._=e,this.next=null,this.previous=null}function Yp(e,t){if(!(n=(e=function(e){return"object"==typeof e&&"length"in e?e:Array.from(e)}(e)).length))return 0;var r,a,i,n,o,c,l,s,u,h,d;if((r=e[0]).x=0,r.y=0,!(n>1))return r.r;if(a=e[1],r.x=-a.r,a.x=r.r,a.y=0,!(n>2))return r.r+a.r;Kp(a,r,i=e[2]),r=new jp(r),a=new jp(a),i=new jp(i),r.next=i.previous=a,a.next=r.previous=i,i.next=a.previous=r;e:for(l=3;l1&&!oy(e,t););return e.slice(0,t)}function oy(e,t){if("/"===e[t]){let r=0;for(;t>0&&"\\"===e[--t];)++r;if(!(1&r))return!0}return!1}function cy(e,t){return e.parent===t.parent?1:2}function ly(e){var t=e.children;return t?t[0]:e.t}function sy(e){var t=e.children;return t?t[t.length-1]:e.t}function uy(e,t,r){var a=r/(t.i-e.i);t.c-=a,t.s+=r,e.c+=a,t.z+=r,t.m+=r}function hy(e,t,r){return e.a.parent===t.parent?e.a:r}function dy(e,t){this._=e,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=t}function py(){var e=cy,t=1,r=1,a=null;function i(i){var l=function(e){for(var t,r,a,i,n,o=new dy(e,0),c=[o];t=c.pop();)if(a=t._.children)for(t.children=new Array(n=a.length),i=n-1;i>=0;--i)c.push(r=t.children[i]=new dy(a[i],i)),r.parent=t;return(o.parent=new dy(null,0)).children=[o],o}(i);if(l.eachAfter(n),l.parent.m=-l.z,l.eachBefore(o),a)i.eachBefore(c);else{var s=i,u=i,h=i;i.eachBefore((function(e){e.xu.x&&(u=e),e.depth>h.depth&&(h=e)}));var d=s===u?1:e(s,u)/2,p=d-s.x,y=t/(u.x+d+p),f=r/(h.depth||1);i.eachBefore((function(e){e.x=(e.x+p)*y,e.y=e.depth*f}))}return i}function n(t){var r=t.children,a=t.parent.children,i=t.i?a[t.i-1]:null;if(r){!function(e){for(var t,r=0,a=0,i=e.children,n=i.length;--n>=0;)(t=i[n]).z+=r,t.m+=r,r+=t.s+(a+=t.c)}(t);var n=(r[0].z+r[r.length-1].z)/2;i?(t.z=i.z+e(t._,i._),t.m=t.z-n):t.z=n}else i&&(t.z=i.z+e(t._,i._));t.parent.A=function(t,r,a){if(r){for(var i,n=t,o=t,c=r,l=n.parent.children[0],s=n.m,u=o.m,h=c.m,d=l.m;c=sy(c),n=ly(n),c&&n;)l=ly(l),(o=sy(o)).a=t,(i=c.z+h-n.z-s+e(c._,n._))>0&&(uy(hy(c,t,a),t,i),s+=i,u+=i),h+=c.m,s+=n.m,d+=l.m,u+=o.m;c&&!sy(o)&&(o.t=c,o.m+=h-u),n&&!ly(l)&&(l.t=n,l.m+=s-d,a=t)}return a}(t,i,t.parent.A||a[0])}function o(e){e._.x=e.z+e.parent.m,e.m+=e.parent.m}function c(e){e.x*=t,e.y=e.depth*r}return i.separation=function(t){return arguments.length?(e=t,i):e},i.size=function(e){return arguments.length?(a=!1,t=+e[0],r=+e[1],i):a?null:[t,r]},i.nodeSize=function(e){return arguments.length?(a=!0,t=+e[0],r=+e[1],i):a?[t,r]:null},i}function yy(e,t,r,a,i){for(var n,o=e.children,c=-1,l=o.length,s=e.value&&(i-r)/e.value;++cd&&(d=c),m=u*u*f,(p=Math.max(d/m,m/h))>y){u-=c;break}y=p}g.push(o={value:u,dice:l1?t:1)},r}(fy);var by=function e(t){function r(e,r,a,i,n){if((o=e._squarify)&&o.ratio===t)for(var o,c,l,s,u,h=-1,d=o.length,p=e.value;++h1?t:1)},r}(fy);function vy(e,t,r){return(t[0]-e[0])*(r[1]-e[1])-(t[1]-e[1])*(r[0]-e[0])}function xy(e,t){return e[0]-t[0]||e[1]-t[1]}function ky(e){const t=e.length,r=[0,1];let a,i=2;for(a=2;a1&&vy(e[r[i-2]],e[r[i-1]],e[a])<=0;)--i;r[i++]=a}return r.slice(0,i)}var wy=Math.random,Cy=function e(t){function r(e,r){return e=null==e?0:+e,r=null==r?1:+r,1===arguments.length?(r=e,e=0):r-=e,function(){return t()*r+e}}return r.source=e,r}(wy),_y=function e(t){function r(e,r){return arguments.length<2&&(r=e,e=0),e=Math.floor(e),r=Math.floor(r)-e,function(){return Math.floor(t()*r+e)}}return r.source=e,r}(wy),Sy=function e(t){function r(e,r){var a,i;return e=null==e?0:+e,r=null==r?1:+r,function(){var n;if(null!=a)n=a,a=null;else do{a=2*t()-1,n=2*t()-1,i=a*a+n*n}while(!i||i>1);return e+r*n*Math.sqrt(-2*Math.log(i)/i)}}return r.source=e,r}(wy),Ay=function e(t){var r=Sy.source(t);function a(){var e=r.apply(this,arguments);return function(){return Math.exp(e())}}return a.source=e,a}(wy),My=function e(t){function r(e){return(e=+e)<=0?()=>0:function(){for(var r=0,a=e;a>1;--a)r+=t();return r+a*t()}}return r.source=e,r}(wy),Ty=function e(t){var r=My.source(t);function a(e){if(0==(e=+e))return t;var a=r(e);return function(){return a()/e}}return a.source=e,a}(wy),By=function e(t){function r(e){return function(){return-Math.log1p(-t())/e}}return r.source=e,r}(wy),Ly=function e(t){function r(e){if((e=+e)<0)throw new RangeError("invalid alpha");return e=1/-e,function(){return Math.pow(1-t(),e)}}return r.source=e,r}(wy),Ey=function e(t){function r(e){if((e=+e)<0||e>1)throw new RangeError("invalid p");return function(){return Math.floor(t()+e)}}return r.source=e,r}(wy),Ry=function e(t){function r(e){if((e=+e)<0||e>1)throw new RangeError("invalid p");return 0===e?()=>1/0:1===e?()=>1:(e=Math.log1p(-e),function(){return 1+Math.floor(Math.log1p(-t())/e)})}return r.source=e,r}(wy),Hy=function e(t){var r=Sy.source(t)();function a(e,a){if((e=+e)<0)throw new RangeError("invalid k");if(0===e)return()=>0;if(a=null==a?1:+a,1===e)return()=>-Math.log1p(-t())*a;var i=(e<1?e+1:e)-1/3,n=1/(3*Math.sqrt(i)),o=e<1?()=>Math.pow(t(),1/e):()=>1;return function(){do{do{var e=r(),c=1+n*e}while(c<=0);c*=c*c;var l=1-t()}while(l>=1-.0331*e*e*e*e&&Math.log(l)>=.5*e*e+i*(1-c+Math.log(c)));return i*c*o()*a}}return a.source=e,a}(wy),Dy=function e(t){var r=Hy.source(t);function a(e,t){var a=r(e),i=r(t);return function(){var e=a();return 0===e?0:e/(e+i())}}return a.source=e,a}(wy),Py=function e(t){var r=Ry.source(t),a=Dy.source(t);function i(e,t){return e=+e,(t=+t)>=1?()=>e:t<=0?()=>0:function(){for(var i=0,n=e,o=t;n*o>16&&n*(1-o)>16;){var c=Math.floor((n+1)*o),l=a(c,n-c+1)();l<=o?(i+=c,n-=c,o=(o-l)/(1-l)):(n=c-1,o/=l)}for(var s=o<.5,u=r(s?o:1-o),h=u(),d=0;h<=n;++d)h+=u();return i+(s?d:n-d)}}return i.source=e,i}(wy),Ny=function e(t){function r(e,r,a){var i;return 0==(e=+e)?i=e=>-Math.log(e):(e=1/e,i=t=>Math.pow(t,e)),r=null==r?0:+r,a=null==a?1:+a,function(){return r+a*i(-Math.log1p(-t()))}}return r.source=e,r}(wy),Gy=function e(t){function r(e,r){return e=null==e?0:+e,r=null==r?1:+r,function(){return e+r*Math.tan(Math.PI*t())}}return r.source=e,r}(wy),Iy=function e(t){function r(e,r){return e=null==e?0:+e,r=null==r?1:+r,function(){var a=t();return e+r*Math.log(a/(1-a))}}return r.source=e,r}(wy),Wy=function e(t){var r=Hy.source(t),a=Py.source(t);function i(e){return function(){for(var i=0,n=e;n>16;){var o=Math.floor(.875*n),c=r(o)();if(c>n)return i+a(o-1,n/c)();i+=o,n-=c}for(var l=-Math.log1p(-t()),s=0;l<=n;++s)l-=Math.log1p(-t());return i+s}}return i.source=e,i}(wy);const Fy=1/4294967296;function zy(e,t){switch(arguments.length){case 0:break;case 1:this.range(e);break;default:this.range(t).domain(e)}return this}function Oy(e,t){switch(arguments.length){case 0:break;case 1:"function"==typeof e?this.interpolator(e):this.range(e);break;default:this.domain(e),"function"==typeof t?this.interpolator(t):this.range(t)}return this}const Ky=Symbol("implicit");function Jy(){var e=new _,t=[],r=[],a=Ky;function i(i){let n=e.get(i);if(void 0===n){if(a!==Ky)return a;e.set(i,n=t.push(i)-1)}return r[n%r.length]}return i.domain=function(r){if(!arguments.length)return t.slice();t=[],e=new _;for(const a of r)e.has(a)||e.set(a,t.push(a)-1);return i},i.range=function(e){return arguments.length?(r=Array.from(e),i):r.slice()},i.unknown=function(e){return arguments.length?(a=e,i):a},i.copy=function(){return Jy(t,r).unknown(a)},zy.apply(i,arguments),i}function Vy(){var e,t,r=Jy().unknown(void 0),a=r.domain,i=r.range,n=0,o=1,c=!1,l=0,s=0,u=.5;function h(){var r=a().length,h=ot&&(r=e,e=t,t=r),function(r){return Math.max(e,Math.min(t,r))}}(o[0],o[e-1])),a=e>2?Qy:Zy,i=n=null,h}function h(t){return null==t||isNaN(t=+t)?r:(i||(i=a(o.map(e),c,l)))(e(s(t)))}return h.invert=function(r){return s(t((n||(n=a(c,o.map(e),Wa)))(r)))},h.domain=function(e){return arguments.length?(o=Array.from(e,Yy),u()):o.slice()},h.range=function(e){return arguments.length?(c=Array.from(e),u()):c.slice()},h.rangeRound=function(e){return c=Array.from(e),l=Va,u()},h.clamp=function(e){return arguments.length?(s=!!e||Uy,u()):s!==Uy},h.interpolate=function(e){return arguments.length?(l=e,u()):l},h.unknown=function(e){return arguments.length?(r=e,h):r},function(r,a){return e=r,t=a,u()}}function tf(){return ef()(Uy,Uy)}function rf(e,t,r,a){var i,n=q(e,t,r);switch((a=Rl(null==a?",f":a)).type){case"s":var o=Math.max(Math.abs(e),Math.abs(t));return null!=a.precision||isNaN(i=Vl(n,o))||(a.precision=i),Wl(a,o);case"":case"e":case"g":case"p":case"r":null!=a.precision||isNaN(i=jl(n,Math.max(Math.abs(e),Math.abs(t))))||(a.precision=i-("e"===a.type));break;case"f":case"%":null!=a.precision||isNaN(i=Jl(n))||(a.precision=i-2*("%"===a.type))}return Il(a)}function af(e){var t=e.domain;return e.ticks=function(e){var r=t();return $(r[0],r[r.length-1],null==e?10:e)},e.tickFormat=function(e,r){var a=t();return rf(a[0],a[a.length-1],null==e?10:e,r)},e.nice=function(r){null==r&&(r=10);var a,i,n=t(),o=0,c=n.length-1,l=n[o],s=n[c],u=10;for(s0;){if((i=U(l,s,r))===a)return n[o]=l,n[c]=s,t(n);if(i>0)l=Math.floor(l/i)*i,s=Math.ceil(s/i)*i;else{if(!(i<0))break;l=Math.ceil(l*i)/i,s=Math.floor(s*i)/i}a=i}return e},e}function nf(e,t){var r,a=0,i=(e=e.slice()).length-1,n=e[a],o=e[i];return o-e(-t,r)}function df(e){const t=e(of,cf),r=t.domain;let a,i,n=10;function o(){return a=function(e){return e===Math.E?Math.log:10===e&&Math.log10||2===e&&Math.log2||(e=Math.log(e),t=>Math.log(t)/e)}(n),i=function(e){return 10===e?uf:e===Math.E?Math.exp:t=>Math.pow(e,t)}(n),r()[0]<0?(a=hf(a),i=hf(i),e(lf,sf)):e(of,cf),t}return t.base=function(e){return arguments.length?(n=+e,o()):n},t.domain=function(e){return arguments.length?(r(e),o()):r()},t.ticks=e=>{const t=r();let o=t[0],c=t[t.length-1];const l=c0){for(;h<=d;++h)for(s=1;sc)break;y.push(u)}}else for(;h<=d;++h)for(s=n-1;s>=1;--s)if(u=h>0?s/i(-h):s*i(h),!(uc)break;y.push(u)}2*y.length{if(null==e&&(e=10),null==r&&(r=10===n?"s":","),"function"!=typeof r&&(n%1||null!=(r=Rl(r)).precision||(r.trim=!0),r=Il(r)),e===1/0)return r;const o=Math.max(1,n*e/t.ticks().length);return e=>{let t=e/i(Math.round(a(e)));return t*nr(nf(r(),{floor:e=>i(Math.floor(a(e))),ceil:e=>i(Math.ceil(a(e)))})),t}function pf(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function yf(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function ff(e){var t=1,r=e(pf(t),yf(t));return r.constant=function(r){return arguments.length?e(pf(t=+r),yf(t)):t},af(r)}function mf(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}}function gf(e){return e<0?-Math.sqrt(-e):Math.sqrt(e)}function bf(e){return e<0?-e*e:e*e}function vf(e){var t=e(Uy,Uy),r=1;return t.exponent=function(t){return arguments.length?1===(r=+t)?e(Uy,Uy):.5===r?e(gf,bf):e(mf(r),mf(1/r)):r},af(t)}function xf(){var e=vf(ef());return e.copy=function(){return Xy(e,xf()).exponent(e.exponent())},zy.apply(e,arguments),e}function kf(e){return Math.sign(e)*e*e}const wf=new Date,Cf=new Date;function _f(e,t,r,a){function i(t){return e(t=0===arguments.length?new Date:new Date(+t)),t}return i.floor=t=>(e(t=new Date(+t)),t),i.ceil=r=>(e(r=new Date(r-1)),t(r,1),e(r),r),i.round=e=>{const t=i(e),r=i.ceil(e);return e-t(t(e=new Date(+e),null==r?1:Math.floor(r)),e),i.range=(r,a,n)=>{const o=[];if(r=i.ceil(r),n=null==n?1:Math.floor(n),!(r0))return o;let c;do{o.push(c=new Date(+r)),t(r,n),e(r)}while(c_f((t=>{if(t>=t)for(;e(t),!r(t);)t.setTime(t-1)}),((e,a)=>{if(e>=e)if(a<0)for(;++a<=0;)for(;t(e,-1),!r(e););else for(;--a>=0;)for(;t(e,1),!r(e););})),r&&(i.count=(t,a)=>(wf.setTime(+t),Cf.setTime(+a),e(wf),e(Cf),Math.floor(r(wf,Cf))),i.every=e=>(e=Math.floor(e),isFinite(e)&&e>0?e>1?i.filter(a?t=>a(t)%e==0:t=>i.count(0,t)%e==0):i:null)),i}const Sf=_f((()=>{}),((e,t)=>{e.setTime(+e+t)}),((e,t)=>t-e));Sf.every=e=>(e=Math.floor(e),isFinite(e)&&e>0?e>1?_f((t=>{t.setTime(Math.floor(t/e)*e)}),((t,r)=>{t.setTime(+t+r*e)}),((t,r)=>(r-t)/e)):Sf:null);const Af=Sf.range,Mf=1e3,Tf=6e4,Bf=36e5,Lf=864e5,Ef=6048e5,Rf=2592e6,Hf=31536e6,Df=_f((e=>{e.setTime(e-e.getMilliseconds())}),((e,t)=>{e.setTime(+e+t*Mf)}),((e,t)=>(t-e)/Mf),(e=>e.getUTCSeconds())),Pf=Df.range,Nf=_f((e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*Mf)}),((e,t)=>{e.setTime(+e+t*Tf)}),((e,t)=>(t-e)/Tf),(e=>e.getMinutes())),Gf=Nf.range,If=_f((e=>{e.setUTCSeconds(0,0)}),((e,t)=>{e.setTime(+e+t*Tf)}),((e,t)=>(t-e)/Tf),(e=>e.getUTCMinutes())),Wf=If.range,Ff=_f((e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*Mf-e.getMinutes()*Tf)}),((e,t)=>{e.setTime(+e+t*Bf)}),((e,t)=>(t-e)/Bf),(e=>e.getHours())),zf=Ff.range,Of=_f((e=>{e.setUTCMinutes(0,0,0)}),((e,t)=>{e.setTime(+e+t*Bf)}),((e,t)=>(t-e)/Bf),(e=>e.getUTCHours())),Kf=Of.range,Jf=_f((e=>e.setHours(0,0,0,0)),((e,t)=>e.setDate(e.getDate()+t)),((e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*Tf)/Lf),(e=>e.getDate()-1)),Vf=Jf.range,jf=_f((e=>{e.setUTCHours(0,0,0,0)}),((e,t)=>{e.setUTCDate(e.getUTCDate()+t)}),((e,t)=>(t-e)/Lf),(e=>e.getUTCDate()-1)),Yf=jf.range,$f=_f((e=>{e.setUTCHours(0,0,0,0)}),((e,t)=>{e.setUTCDate(e.getUTCDate()+t)}),((e,t)=>(t-e)/Lf),(e=>Math.floor(e/Lf))),Uf=$f.range;function qf(e){return _f((t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)}),((e,t)=>{e.setDate(e.getDate()+7*t)}),((e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*Tf)/Ef))}const Zf=qf(0),Qf=qf(1),Xf=qf(2),em=qf(3),tm=qf(4),rm=qf(5),am=qf(6),im=Zf.range,nm=Qf.range,om=Xf.range,cm=em.range,lm=tm.range,sm=rm.range,um=am.range;function hm(e){return _f((t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)}),((e,t)=>{e.setUTCDate(e.getUTCDate()+7*t)}),((e,t)=>(t-e)/Ef))}const dm=hm(0),pm=hm(1),ym=hm(2),fm=hm(3),mm=hm(4),gm=hm(5),bm=hm(6),vm=dm.range,xm=pm.range,km=ym.range,wm=fm.range,Cm=mm.range,_m=gm.range,Sm=bm.range,Am=_f((e=>{e.setDate(1),e.setHours(0,0,0,0)}),((e,t)=>{e.setMonth(e.getMonth()+t)}),((e,t)=>t.getMonth()-e.getMonth()+12*(t.getFullYear()-e.getFullYear())),(e=>e.getMonth())),Mm=Am.range,Tm=_f((e=>{e.setUTCDate(1),e.setUTCHours(0,0,0,0)}),((e,t)=>{e.setUTCMonth(e.getUTCMonth()+t)}),((e,t)=>t.getUTCMonth()-e.getUTCMonth()+12*(t.getUTCFullYear()-e.getUTCFullYear())),(e=>e.getUTCMonth())),Bm=Tm.range,Lm=_f((e=>{e.setMonth(0,1),e.setHours(0,0,0,0)}),((e,t)=>{e.setFullYear(e.getFullYear()+t)}),((e,t)=>t.getFullYear()-e.getFullYear()),(e=>e.getFullYear()));Lm.every=e=>isFinite(e=Math.floor(e))&&e>0?_f((t=>{t.setFullYear(Math.floor(t.getFullYear()/e)*e),t.setMonth(0,1),t.setHours(0,0,0,0)}),((t,r)=>{t.setFullYear(t.getFullYear()+r*e)})):null;const Em=Lm.range,Rm=_f((e=>{e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)}),((e,t)=>{e.setUTCFullYear(e.getUTCFullYear()+t)}),((e,t)=>t.getUTCFullYear()-e.getUTCFullYear()),(e=>e.getUTCFullYear()));Rm.every=e=>isFinite(e=Math.floor(e))&&e>0?_f((t=>{t.setUTCFullYear(Math.floor(t.getUTCFullYear()/e)*e),t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)}),((t,r)=>{t.setUTCFullYear(t.getUTCFullYear()+r*e)})):null;const Hm=Rm.range;function Dm(e,t,r,i,n,o){const c=[[Df,1,Mf],[Df,5,5e3],[Df,15,15e3],[Df,30,3e4],[o,1,Tf],[o,5,3e5],[o,15,9e5],[o,30,18e5],[n,1,Bf],[n,3,108e5],[n,6,216e5],[n,12,432e5],[i,1,Lf],[i,2,1728e5],[r,1,Ef],[t,1,Rf],[t,3,7776e6],[e,1,Hf]];function l(t,r,i){const n=Math.abs(r-t)/i,o=a((([,,e])=>e)).right(c,n);if(o===c.length)return e.every(q(t/Hf,r/Hf,i));if(0===o)return Sf.every(Math.max(q(t,r,i),1));const[l,s]=c[n/c[o-1][2]=12)]},q:function(e){return 1+~~(e.getMonth()/3)},Q:sb,s:ub,S:Lg,u:Eg,U:Rg,V:Dg,w:Pg,W:Ng,x:null,X:null,y:Gg,Y:Wg,Z:zg,"%":lb},x={a:function(e){return o[e.getUTCDay()]},A:function(e){return n[e.getUTCDay()]},b:function(e){return l[e.getUTCMonth()]},B:function(e){return c[e.getUTCMonth()]},c:null,d:Og,e:Og,f:Yg,g:ib,G:ob,H:Kg,I:Jg,j:Vg,L:jg,m:$g,M:Ug,p:function(e){return i[+(e.getUTCHours()>=12)]},q:function(e){return 1+~~(e.getUTCMonth()/3)},Q:sb,s:ub,S:qg,u:Zg,U:Qg,V:eb,w:tb,W:rb,x:null,X:null,y:ab,Y:nb,Z:cb,"%":lb},k={a:function(e,t,r){var a=p.exec(t.slice(r));return a?(e.w=y.get(a[0].toLowerCase()),r+a[0].length):-1},A:function(e,t,r){var a=h.exec(t.slice(r));return a?(e.w=d.get(a[0].toLowerCase()),r+a[0].length):-1},b:function(e,t,r){var a=g.exec(t.slice(r));return a?(e.m=b.get(a[0].toLowerCase()),r+a[0].length):-1},B:function(e,t,r){var a=f.exec(t.slice(r));return a?(e.m=m.get(a[0].toLowerCase()),r+a[0].length):-1},c:function(e,r,a){return _(e,t,r,a)},d:dg,e:dg,f:bg,g:lg,G:cg,H:yg,I:yg,j:pg,L:gg,m:hg,M:fg,p:function(e,t,r){var a=s.exec(t.slice(r));return a?(e.p=u.get(a[0].toLowerCase()),r+a[0].length):-1},q:ug,Q:xg,s:kg,S:mg,u:ag,U:ig,V:ng,w:rg,W:og,x:function(e,t,a){return _(e,r,t,a)},X:function(e,t,r){return _(e,a,t,r)},y:lg,Y:cg,Z:sg,"%":vg};function w(e,t){return function(r){var a,i,n,o=[],c=-1,l=0,s=e.length;for(r instanceof Date||(r=new Date(+r));++c53)return null;"w"in n||(n.w=1),"Z"in n?(i=(a=Fm(zm(n.y,0,1))).getUTCDay(),a=i>4||0===i?pm.ceil(a):pm(a),a=jf.offset(a,7*(n.V-1)),n.y=a.getUTCFullYear(),n.m=a.getUTCMonth(),n.d=a.getUTCDate()+(n.w+6)%7):(i=(a=Wm(zm(n.y,0,1))).getDay(),a=i>4||0===i?Qf.ceil(a):Qf(a),a=Jf.offset(a,7*(n.V-1)),n.y=a.getFullYear(),n.m=a.getMonth(),n.d=a.getDate()+(n.w+6)%7)}else("W"in n||"U"in n)&&("w"in n||(n.w="u"in n?n.u%7:"W"in n?1:0),i="Z"in n?Fm(zm(n.y,0,1)).getUTCDay():Wm(zm(n.y,0,1)).getDay(),n.m=0,n.d="W"in n?(n.w+6)%7+7*n.W-(i+5)%7:n.w+7*n.U-(i+6)%7);return"Z"in n?(n.H+=n.Z/100|0,n.M+=n.Z%100,Fm(n)):Wm(n)}}function _(e,t,r,a){for(var i,n,o=0,c=t.length,l=r.length;o=l)return-1;if(37===(i=t.charCodeAt(o++))){if(i=t.charAt(o++),!(n=k[i in $m?t.charAt(o++):i])||(a=n(e,r,a))<0)return-1}else if(i!=r.charCodeAt(a++))return-1}return a}return v.x=w(r,v),v.X=w(a,v),v.c=w(t,v),x.x=w(r,x),x.X=w(a,x),x.c=w(t,x),{format:function(e){var t=w(e+="",v);return t.toString=function(){return e},t},parse:function(e){var t=C(e+="",!1);return t.toString=function(){return e},t},utcFormat:function(e){var t=w(e+="",x);return t.toString=function(){return e},t},utcParse:function(e){var t=C(e+="",!0);return t.toString=function(){return e},t}}}var Km,Jm,Vm,jm,Ym,$m={"-":"",_:" ",0:"0"},Um=/^\s*\d+/,qm=/^%/,Zm=/[\\^$*+?|[\]().{}]/g;function Qm(e,t,r){var a=e<0?"-":"",i=(a?-e:e)+"",n=i.length;return a+(n[e.toLowerCase(),t])))}function rg(e,t,r){var a=Um.exec(t.slice(r,r+1));return a?(e.w=+a[0],r+a[0].length):-1}function ag(e,t,r){var a=Um.exec(t.slice(r,r+1));return a?(e.u=+a[0],r+a[0].length):-1}function ig(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.U=+a[0],r+a[0].length):-1}function ng(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.V=+a[0],r+a[0].length):-1}function og(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.W=+a[0],r+a[0].length):-1}function cg(e,t,r){var a=Um.exec(t.slice(r,r+4));return a?(e.y=+a[0],r+a[0].length):-1}function lg(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.y=+a[0]+(+a[0]>68?1900:2e3),r+a[0].length):-1}function sg(e,t,r){var a=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(r,r+6));return a?(e.Z=a[1]?0:-(a[2]+(a[3]||"00")),r+a[0].length):-1}function ug(e,t,r){var a=Um.exec(t.slice(r,r+1));return a?(e.q=3*a[0]-3,r+a[0].length):-1}function hg(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.m=a[0]-1,r+a[0].length):-1}function dg(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.d=+a[0],r+a[0].length):-1}function pg(e,t,r){var a=Um.exec(t.slice(r,r+3));return a?(e.m=0,e.d=+a[0],r+a[0].length):-1}function yg(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.H=+a[0],r+a[0].length):-1}function fg(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.M=+a[0],r+a[0].length):-1}function mg(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.S=+a[0],r+a[0].length):-1}function gg(e,t,r){var a=Um.exec(t.slice(r,r+3));return a?(e.L=+a[0],r+a[0].length):-1}function bg(e,t,r){var a=Um.exec(t.slice(r,r+6));return a?(e.L=Math.floor(a[0]/1e3),r+a[0].length):-1}function vg(e,t,r){var a=qm.exec(t.slice(r,r+1));return a?r+a[0].length:-1}function xg(e,t,r){var a=Um.exec(t.slice(r));return a?(e.Q=+a[0],r+a[0].length):-1}function kg(e,t,r){var a=Um.exec(t.slice(r));return a?(e.s=+a[0],r+a[0].length):-1}function wg(e,t){return Qm(e.getDate(),t,2)}function Cg(e,t){return Qm(e.getHours(),t,2)}function _g(e,t){return Qm(e.getHours()%12||12,t,2)}function Sg(e,t){return Qm(1+Jf.count(Lm(e),e),t,3)}function Ag(e,t){return Qm(e.getMilliseconds(),t,3)}function Mg(e,t){return Ag(e,t)+"000"}function Tg(e,t){return Qm(e.getMonth()+1,t,2)}function Bg(e,t){return Qm(e.getMinutes(),t,2)}function Lg(e,t){return Qm(e.getSeconds(),t,2)}function Eg(e){var t=e.getDay();return 0===t?7:t}function Rg(e,t){return Qm(Zf.count(Lm(e)-1,e),t,2)}function Hg(e){var t=e.getDay();return t>=4||0===t?tm(e):tm.ceil(e)}function Dg(e,t){return e=Hg(e),Qm(tm.count(Lm(e),e)+(4===Lm(e).getDay()),t,2)}function Pg(e){return e.getDay()}function Ng(e,t){return Qm(Qf.count(Lm(e)-1,e),t,2)}function Gg(e,t){return Qm(e.getFullYear()%100,t,2)}function Ig(e,t){return Qm((e=Hg(e)).getFullYear()%100,t,2)}function Wg(e,t){return Qm(e.getFullYear()%1e4,t,4)}function Fg(e,t){var r=e.getDay();return Qm((e=r>=4||0===r?tm(e):tm.ceil(e)).getFullYear()%1e4,t,4)}function zg(e){var t=e.getTimezoneOffset();return(t>0?"-":(t*=-1,"+"))+Qm(t/60|0,"0",2)+Qm(t%60,"0",2)}function Og(e,t){return Qm(e.getUTCDate(),t,2)}function Kg(e,t){return Qm(e.getUTCHours(),t,2)}function Jg(e,t){return Qm(e.getUTCHours()%12||12,t,2)}function Vg(e,t){return Qm(1+jf.count(Rm(e),e),t,3)}function jg(e,t){return Qm(e.getUTCMilliseconds(),t,3)}function Yg(e,t){return jg(e,t)+"000"}function $g(e,t){return Qm(e.getUTCMonth()+1,t,2)}function Ug(e,t){return Qm(e.getUTCMinutes(),t,2)}function qg(e,t){return Qm(e.getUTCSeconds(),t,2)}function Zg(e){var t=e.getUTCDay();return 0===t?7:t}function Qg(e,t){return Qm(dm.count(Rm(e)-1,e),t,2)}function Xg(e){var t=e.getUTCDay();return t>=4||0===t?mm(e):mm.ceil(e)}function eb(e,t){return e=Xg(e),Qm(mm.count(Rm(e),e)+(4===Rm(e).getUTCDay()),t,2)}function tb(e){return e.getUTCDay()}function rb(e,t){return Qm(pm.count(Rm(e)-1,e),t,2)}function ab(e,t){return Qm(e.getUTCFullYear()%100,t,2)}function ib(e,t){return Qm((e=Xg(e)).getUTCFullYear()%100,t,2)}function nb(e,t){return Qm(e.getUTCFullYear()%1e4,t,4)}function ob(e,t){var r=e.getUTCDay();return Qm((e=r>=4||0===r?mm(e):mm.ceil(e)).getUTCFullYear()%1e4,t,4)}function cb(){return"+0000"}function lb(){return"%"}function sb(e){return+e}function ub(e){return Math.floor(+e/1e3)}function hb(e){return Km=Om(e),Jm=Km.format,Vm=Km.parse,jm=Km.utcFormat,Ym=Km.utcParse,Km}hb({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});var db="%Y-%m-%dT%H:%M:%S.%LZ";var pb=Date.prototype.toISOString?function(e){return e.toISOString()}:jm(db);var yb=+new Date("2000-01-01T00:00:00.000Z")?function(e){var t=new Date(e);return isNaN(t)?null:t}:Ym(db);function fb(e){return new Date(e)}function mb(e){return e instanceof Date?+e:+new Date(+e)}function gb(e,t,r,a,i,n,o,c,l,s){var u=tf(),h=u.invert,d=u.domain,p=s(".%L"),y=s(":%S"),f=s("%I:%M"),m=s("%I %p"),g=s("%a %d"),b=s("%b %d"),v=s("%B"),x=s("%Y");function k(e){return(l(e)Ha(e[e.length-1]),Nb=new Array(3).concat("d8b365f5f5f55ab4ac","a6611adfc27d80cdc1018571","a6611adfc27df5f5f580cdc1018571","8c510ad8b365f6e8c3c7eae55ab4ac01665e","8c510ad8b365f6e8c3f5f5f5c7eae55ab4ac01665e","8c510abf812ddfc27df6e8c3c7eae580cdc135978f01665e","8c510abf812ddfc27df6e8c3f5f5f5c7eae580cdc135978f01665e","5430058c510abf812ddfc27df6e8c3c7eae580cdc135978f01665e003c30","5430058c510abf812ddfc27df6e8c3f5f5f5c7eae580cdc135978f01665e003c30").map(Cb),Gb=Pb(Nb),Ib=new Array(3).concat("af8dc3f7f7f77fbf7b","7b3294c2a5cfa6dba0008837","7b3294c2a5cff7f7f7a6dba0008837","762a83af8dc3e7d4e8d9f0d37fbf7b1b7837","762a83af8dc3e7d4e8f7f7f7d9f0d37fbf7b1b7837","762a839970abc2a5cfe7d4e8d9f0d3a6dba05aae611b7837","762a839970abc2a5cfe7d4e8f7f7f7d9f0d3a6dba05aae611b7837","40004b762a839970abc2a5cfe7d4e8d9f0d3a6dba05aae611b783700441b","40004b762a839970abc2a5cfe7d4e8f7f7f7d9f0d3a6dba05aae611b783700441b").map(Cb),Wb=Pb(Ib),Fb=new Array(3).concat("e9a3c9f7f7f7a1d76a","d01c8bf1b6dab8e1864dac26","d01c8bf1b6daf7f7f7b8e1864dac26","c51b7de9a3c9fde0efe6f5d0a1d76a4d9221","c51b7de9a3c9fde0eff7f7f7e6f5d0a1d76a4d9221","c51b7dde77aef1b6dafde0efe6f5d0b8e1867fbc414d9221","c51b7dde77aef1b6dafde0eff7f7f7e6f5d0b8e1867fbc414d9221","8e0152c51b7dde77aef1b6dafde0efe6f5d0b8e1867fbc414d9221276419","8e0152c51b7dde77aef1b6dafde0eff7f7f7e6f5d0b8e1867fbc414d9221276419").map(Cb),zb=Pb(Fb),Ob=new Array(3).concat("998ec3f7f7f7f1a340","5e3c99b2abd2fdb863e66101","5e3c99b2abd2f7f7f7fdb863e66101","542788998ec3d8daebfee0b6f1a340b35806","542788998ec3d8daebf7f7f7fee0b6f1a340b35806","5427888073acb2abd2d8daebfee0b6fdb863e08214b35806","5427888073acb2abd2d8daebf7f7f7fee0b6fdb863e08214b35806","2d004b5427888073acb2abd2d8daebfee0b6fdb863e08214b358067f3b08","2d004b5427888073acb2abd2d8daebf7f7f7fee0b6fdb863e08214b358067f3b08").map(Cb),Kb=Pb(Ob),Jb=new Array(3).concat("ef8a62f7f7f767a9cf","ca0020f4a58292c5de0571b0","ca0020f4a582f7f7f792c5de0571b0","b2182bef8a62fddbc7d1e5f067a9cf2166ac","b2182bef8a62fddbc7f7f7f7d1e5f067a9cf2166ac","b2182bd6604df4a582fddbc7d1e5f092c5de4393c32166ac","b2182bd6604df4a582fddbc7f7f7f7d1e5f092c5de4393c32166ac","67001fb2182bd6604df4a582fddbc7d1e5f092c5de4393c32166ac053061","67001fb2182bd6604df4a582fddbc7f7f7f7d1e5f092c5de4393c32166ac053061").map(Cb),Vb=Pb(Jb),jb=new Array(3).concat("ef8a62ffffff999999","ca0020f4a582bababa404040","ca0020f4a582ffffffbababa404040","b2182bef8a62fddbc7e0e0e09999994d4d4d","b2182bef8a62fddbc7ffffffe0e0e09999994d4d4d","b2182bd6604df4a582fddbc7e0e0e0bababa8787874d4d4d","b2182bd6604df4a582fddbc7ffffffe0e0e0bababa8787874d4d4d","67001fb2182bd6604df4a582fddbc7e0e0e0bababa8787874d4d4d1a1a1a","67001fb2182bd6604df4a582fddbc7ffffffe0e0e0bababa8787874d4d4d1a1a1a").map(Cb),Yb=Pb(jb),$b=new Array(3).concat("fc8d59ffffbf91bfdb","d7191cfdae61abd9e92c7bb6","d7191cfdae61ffffbfabd9e92c7bb6","d73027fc8d59fee090e0f3f891bfdb4575b4","d73027fc8d59fee090ffffbfe0f3f891bfdb4575b4","d73027f46d43fdae61fee090e0f3f8abd9e974add14575b4","d73027f46d43fdae61fee090ffffbfe0f3f8abd9e974add14575b4","a50026d73027f46d43fdae61fee090e0f3f8abd9e974add14575b4313695","a50026d73027f46d43fdae61fee090ffffbfe0f3f8abd9e974add14575b4313695").map(Cb),Ub=Pb($b),qb=new Array(3).concat("fc8d59ffffbf91cf60","d7191cfdae61a6d96a1a9641","d7191cfdae61ffffbfa6d96a1a9641","d73027fc8d59fee08bd9ef8b91cf601a9850","d73027fc8d59fee08bffffbfd9ef8b91cf601a9850","d73027f46d43fdae61fee08bd9ef8ba6d96a66bd631a9850","d73027f46d43fdae61fee08bffffbfd9ef8ba6d96a66bd631a9850","a50026d73027f46d43fdae61fee08bd9ef8ba6d96a66bd631a9850006837","a50026d73027f46d43fdae61fee08bffffbfd9ef8ba6d96a66bd631a9850006837").map(Cb),Zb=Pb(qb),Qb=new Array(3).concat("fc8d59ffffbf99d594","d7191cfdae61abdda42b83ba","d7191cfdae61ffffbfabdda42b83ba","d53e4ffc8d59fee08be6f59899d5943288bd","d53e4ffc8d59fee08bffffbfe6f59899d5943288bd","d53e4ff46d43fdae61fee08be6f598abdda466c2a53288bd","d53e4ff46d43fdae61fee08bffffbfe6f598abdda466c2a53288bd","9e0142d53e4ff46d43fdae61fee08be6f598abdda466c2a53288bd5e4fa2","9e0142d53e4ff46d43fdae61fee08bffffbfe6f598abdda466c2a53288bd5e4fa2").map(Cb),Xb=Pb(Qb),ev=new Array(3).concat("e5f5f999d8c92ca25f","edf8fbb2e2e266c2a4238b45","edf8fbb2e2e266c2a42ca25f006d2c","edf8fbccece699d8c966c2a42ca25f006d2c","edf8fbccece699d8c966c2a441ae76238b45005824","f7fcfde5f5f9ccece699d8c966c2a441ae76238b45005824","f7fcfde5f5f9ccece699d8c966c2a441ae76238b45006d2c00441b").map(Cb),tv=Pb(ev),rv=new Array(3).concat("e0ecf49ebcda8856a7","edf8fbb3cde38c96c688419d","edf8fbb3cde38c96c68856a7810f7c","edf8fbbfd3e69ebcda8c96c68856a7810f7c","edf8fbbfd3e69ebcda8c96c68c6bb188419d6e016b","f7fcfde0ecf4bfd3e69ebcda8c96c68c6bb188419d6e016b","f7fcfde0ecf4bfd3e69ebcda8c96c68c6bb188419d810f7c4d004b").map(Cb),av=Pb(rv),iv=new Array(3).concat("e0f3dba8ddb543a2ca","f0f9e8bae4bc7bccc42b8cbe","f0f9e8bae4bc7bccc443a2ca0868ac","f0f9e8ccebc5a8ddb57bccc443a2ca0868ac","f0f9e8ccebc5a8ddb57bccc44eb3d32b8cbe08589e","f7fcf0e0f3dbccebc5a8ddb57bccc44eb3d32b8cbe08589e","f7fcf0e0f3dbccebc5a8ddb57bccc44eb3d32b8cbe0868ac084081").map(Cb),nv=Pb(iv),ov=new Array(3).concat("fee8c8fdbb84e34a33","fef0d9fdcc8afc8d59d7301f","fef0d9fdcc8afc8d59e34a33b30000","fef0d9fdd49efdbb84fc8d59e34a33b30000","fef0d9fdd49efdbb84fc8d59ef6548d7301f990000","fff7ecfee8c8fdd49efdbb84fc8d59ef6548d7301f990000","fff7ecfee8c8fdd49efdbb84fc8d59ef6548d7301fb300007f0000").map(Cb),cv=Pb(ov),lv=new Array(3).concat("ece2f0a6bddb1c9099","f6eff7bdc9e167a9cf02818a","f6eff7bdc9e167a9cf1c9099016c59","f6eff7d0d1e6a6bddb67a9cf1c9099016c59","f6eff7d0d1e6a6bddb67a9cf3690c002818a016450","fff7fbece2f0d0d1e6a6bddb67a9cf3690c002818a016450","fff7fbece2f0d0d1e6a6bddb67a9cf3690c002818a016c59014636").map(Cb),sv=Pb(lv),uv=new Array(3).concat("ece7f2a6bddb2b8cbe","f1eef6bdc9e174a9cf0570b0","f1eef6bdc9e174a9cf2b8cbe045a8d","f1eef6d0d1e6a6bddb74a9cf2b8cbe045a8d","f1eef6d0d1e6a6bddb74a9cf3690c00570b0034e7b","fff7fbece7f2d0d1e6a6bddb74a9cf3690c00570b0034e7b","fff7fbece7f2d0d1e6a6bddb74a9cf3690c00570b0045a8d023858").map(Cb),hv=Pb(uv),dv=new Array(3).concat("e7e1efc994c7dd1c77","f1eef6d7b5d8df65b0ce1256","f1eef6d7b5d8df65b0dd1c77980043","f1eef6d4b9dac994c7df65b0dd1c77980043","f1eef6d4b9dac994c7df65b0e7298ace125691003f","f7f4f9e7e1efd4b9dac994c7df65b0e7298ace125691003f","f7f4f9e7e1efd4b9dac994c7df65b0e7298ace125698004367001f").map(Cb),pv=Pb(dv),yv=new Array(3).concat("fde0ddfa9fb5c51b8a","feebe2fbb4b9f768a1ae017e","feebe2fbb4b9f768a1c51b8a7a0177","feebe2fcc5c0fa9fb5f768a1c51b8a7a0177","feebe2fcc5c0fa9fb5f768a1dd3497ae017e7a0177","fff7f3fde0ddfcc5c0fa9fb5f768a1dd3497ae017e7a0177","fff7f3fde0ddfcc5c0fa9fb5f768a1dd3497ae017e7a017749006a").map(Cb),fv=Pb(yv),mv=new Array(3).concat("edf8b17fcdbb2c7fb8","ffffcca1dab441b6c4225ea8","ffffcca1dab441b6c42c7fb8253494","ffffccc7e9b47fcdbb41b6c42c7fb8253494","ffffccc7e9b47fcdbb41b6c41d91c0225ea80c2c84","ffffd9edf8b1c7e9b47fcdbb41b6c41d91c0225ea80c2c84","ffffd9edf8b1c7e9b47fcdbb41b6c41d91c0225ea8253494081d58").map(Cb),gv=Pb(mv),bv=new Array(3).concat("f7fcb9addd8e31a354","ffffccc2e69978c679238443","ffffccc2e69978c67931a354006837","ffffccd9f0a3addd8e78c67931a354006837","ffffccd9f0a3addd8e78c67941ab5d238443005a32","ffffe5f7fcb9d9f0a3addd8e78c67941ab5d238443005a32","ffffe5f7fcb9d9f0a3addd8e78c67941ab5d238443006837004529").map(Cb),vv=Pb(bv),xv=new Array(3).concat("fff7bcfec44fd95f0e","ffffd4fed98efe9929cc4c02","ffffd4fed98efe9929d95f0e993404","ffffd4fee391fec44ffe9929d95f0e993404","ffffd4fee391fec44ffe9929ec7014cc4c028c2d04","ffffe5fff7bcfee391fec44ffe9929ec7014cc4c028c2d04","ffffe5fff7bcfee391fec44ffe9929ec7014cc4c02993404662506").map(Cb),kv=Pb(xv),wv=new Array(3).concat("ffeda0feb24cf03b20","ffffb2fecc5cfd8d3ce31a1c","ffffb2fecc5cfd8d3cf03b20bd0026","ffffb2fed976feb24cfd8d3cf03b20bd0026","ffffb2fed976feb24cfd8d3cfc4e2ae31a1cb10026","ffffccffeda0fed976feb24cfd8d3cfc4e2ae31a1cb10026","ffffccffeda0fed976feb24cfd8d3cfc4e2ae31a1cbd0026800026").map(Cb),Cv=Pb(wv),_v=new Array(3).concat("deebf79ecae13182bd","eff3ffbdd7e76baed62171b5","eff3ffbdd7e76baed63182bd08519c","eff3ffc6dbef9ecae16baed63182bd08519c","eff3ffc6dbef9ecae16baed64292c62171b5084594","f7fbffdeebf7c6dbef9ecae16baed64292c62171b5084594","f7fbffdeebf7c6dbef9ecae16baed64292c62171b508519c08306b").map(Cb),Sv=Pb(_v),Av=new Array(3).concat("e5f5e0a1d99b31a354","edf8e9bae4b374c476238b45","edf8e9bae4b374c47631a354006d2c","edf8e9c7e9c0a1d99b74c47631a354006d2c","edf8e9c7e9c0a1d99b74c47641ab5d238b45005a32","f7fcf5e5f5e0c7e9c0a1d99b74c47641ab5d238b45005a32","f7fcf5e5f5e0c7e9c0a1d99b74c47641ab5d238b45006d2c00441b").map(Cb),Mv=Pb(Av),Tv=new Array(3).concat("f0f0f0bdbdbd636363","f7f7f7cccccc969696525252","f7f7f7cccccc969696636363252525","f7f7f7d9d9d9bdbdbd969696636363252525","f7f7f7d9d9d9bdbdbd969696737373525252252525","fffffff0f0f0d9d9d9bdbdbd969696737373525252252525","fffffff0f0f0d9d9d9bdbdbd969696737373525252252525000000").map(Cb),Bv=Pb(Tv),Lv=new Array(3).concat("efedf5bcbddc756bb1","f2f0f7cbc9e29e9ac86a51a3","f2f0f7cbc9e29e9ac8756bb154278f","f2f0f7dadaebbcbddc9e9ac8756bb154278f","f2f0f7dadaebbcbddc9e9ac8807dba6a51a34a1486","fcfbfdefedf5dadaebbcbddc9e9ac8807dba6a51a34a1486","fcfbfdefedf5dadaebbcbddc9e9ac8807dba6a51a354278f3f007d").map(Cb),Ev=Pb(Lv),Rv=new Array(3).concat("fee0d2fc9272de2d26","fee5d9fcae91fb6a4acb181d","fee5d9fcae91fb6a4ade2d26a50f15","fee5d9fcbba1fc9272fb6a4ade2d26a50f15","fee5d9fcbba1fc9272fb6a4aef3b2ccb181d99000d","fff5f0fee0d2fcbba1fc9272fb6a4aef3b2ccb181d99000d","fff5f0fee0d2fcbba1fc9272fb6a4aef3b2ccb181da50f1567000d").map(Cb),Hv=Pb(Rv),Dv=new Array(3).concat("fee6cefdae6be6550d","feeddefdbe85fd8d3cd94701","feeddefdbe85fd8d3ce6550da63603","feeddefdd0a2fdae6bfd8d3ce6550da63603","feeddefdd0a2fdae6bfd8d3cf16913d948018c2d04","fff5ebfee6cefdd0a2fdae6bfd8d3cf16913d948018c2d04","fff5ebfee6cefdd0a2fdae6bfd8d3cf16913d94801a636037f2704").map(Cb),Pv=Pb(Dv);var Nv=si(ka(300,.5,0),ka(-240,.5,1)),Gv=si(ka(-100,.75,.35),ka(80,1.5,.8)),Iv=si(ka(260,.75,.35),ka(80,1.5,.8)),Wv=ka();var Fv=Hr(),zv=Math.PI/3,Ov=2*Math.PI/3;function Kv(e){var t=e.length;return function(r){return e[Math.max(0,Math.min(t-1,Math.floor(r*t)))]}}var Jv=Kv(Cb("44015444025645045745055946075a46085c460a5d460b5e470d60470e6147106347116447136548146748166848176948186a481a6c481b6d481c6e481d6f481f70482071482173482374482475482576482677482878482979472a7a472c7a472d7b472e7c472f7d46307e46327e46337f463480453581453781453882443983443a83443b84433d84433e85423f854240864241864142874144874045884046883f47883f48893e49893e4a893e4c8a3d4d8a3d4e8a3c4f8a3c508b3b518b3b528b3a538b3a548c39558c39568c38588c38598c375a8c375b8d365c8d365d8d355e8d355f8d34608d34618d33628d33638d32648e32658e31668e31678e31688e30698e306a8e2f6b8e2f6c8e2e6d8e2e6e8e2e6f8e2d708e2d718e2c718e2c728e2c738e2b748e2b758e2a768e2a778e2a788e29798e297a8e297b8e287c8e287d8e277e8e277f8e27808e26818e26828e26828e25838e25848e25858e24868e24878e23888e23898e238a8d228b8d228c8d228d8d218e8d218f8d21908d21918c20928c20928c20938c1f948c1f958b1f968b1f978b1f988b1f998a1f9a8a1e9b8a1e9c891e9d891f9e891f9f881fa0881fa1881fa1871fa28720a38620a48621a58521a68522a78522a88423a98324aa8325ab8225ac8226ad8127ad8128ae8029af7f2ab07f2cb17e2db27d2eb37c2fb47c31b57b32b67a34b67935b77937b87838b9773aba763bbb753dbc743fbc7340bd7242be7144bf7046c06f48c16e4ac16d4cc26c4ec36b50c46a52c56954c56856c66758c7655ac8645cc8635ec96260ca6063cb5f65cb5e67cc5c69cd5b6ccd5a6ece5870cf5773d05675d05477d1537ad1517cd2507fd34e81d34d84d44b86d54989d5488bd6468ed64590d74393d74195d84098d83e9bd93c9dd93ba0da39a2da37a5db36a8db34aadc32addc30b0dd2fb2dd2db5de2bb8de29bade28bddf26c0df25c2df23c5e021c8e020cae11fcde11dd0e11cd2e21bd5e21ad8e219dae319dde318dfe318e2e418e5e419e7e419eae51aece51befe51cf1e51df4e61ef6e620f8e621fbe723fde725")),Vv=Kv(Cb("00000401000501010601010802010902020b02020d03030f03031204041405041606051806051a07061c08071e0907200a08220b09240c09260d0a290e0b2b100b2d110c2f120d31130d34140e36150e38160f3b180f3d19103f1a10421c10441d11471e114920114b21114e22115024125325125527125829115a2a115c2c115f2d11612f116331116533106734106936106b38106c390f6e3b0f703d0f713f0f72400f74420f75440f764510774710784910784a10794c117a4e117b4f127b51127c52137c54137d56147d57157e59157e5a167e5c167f5d177f5f187f601880621980641a80651a80671b80681c816a1c816b1d816d1d816e1e81701f81721f817320817521817621817822817922827b23827c23827e24828025828125818326818426818627818827818928818b29818c29818e2a81902a81912b81932b80942c80962c80982d80992d809b2e7f9c2e7f9e2f7fa02f7fa1307ea3307ea5317ea6317da8327daa337dab337cad347cae347bb0357bb2357bb3367ab5367ab73779b83779ba3878bc3978bd3977bf3a77c03a76c23b75c43c75c53c74c73d73c83e73ca3e72cc3f71cd4071cf4070d0416fd2426fd3436ed5446dd6456cd8456cd9466bdb476adc4869de4968df4a68e04c67e24d66e34e65e44f64e55064e75263e85362e95462ea5661eb5760ec5860ed5a5fee5b5eef5d5ef05f5ef1605df2625df2645cf3655cf4675cf4695cf56b5cf66c5cf66e5cf7705cf7725cf8745cf8765cf9785df9795df97b5dfa7d5efa7f5efa815ffb835ffb8560fb8761fc8961fc8a62fc8c63fc8e64fc9065fd9266fd9467fd9668fd9869fd9a6afd9b6bfe9d6cfe9f6dfea16efea36ffea571fea772fea973feaa74feac76feae77feb078feb27afeb47bfeb67cfeb77efeb97ffebb81febd82febf84fec185fec287fec488fec68afec88cfeca8dfecc8ffecd90fecf92fed194fed395fed597fed799fed89afdda9cfddc9efddea0fde0a1fde2a3fde3a5fde5a7fde7a9fde9aafdebacfcecaefceeb0fcf0b2fcf2b4fcf4b6fcf6b8fcf7b9fcf9bbfcfbbdfcfdbf")),jv=Kv(Cb("00000401000501010601010802010a02020c02020e03021004031204031405041706041907051b08051d09061f0a07220b07240c08260d08290e092b10092d110a30120a32140b34150b37160b39180c3c190c3e1b0c411c0c431e0c451f0c48210c4a230c4c240c4f260c51280b53290b552b0b572d0b592f0a5b310a5c320a5e340a5f3609613809623909633b09643d09653e0966400a67420a68440a68450a69470b6a490b6a4a0c6b4c0c6b4d0d6c4f0d6c510e6c520e6d540f6d550f6d57106e59106e5a116e5c126e5d126e5f136e61136e62146e64156e65156e67166e69166e6a176e6c186e6d186e6f196e71196e721a6e741a6e751b6e771c6d781c6d7a1d6d7c1d6d7d1e6d7f1e6c801f6c82206c84206b85216b87216b88226a8a226a8c23698d23698f24699025689225689326679526679727669827669a28659b29649d29649f2a63a02a63a22b62a32c61a52c60a62d60a82e5fa92e5eab2f5ead305dae305cb0315bb1325ab3325ab43359b63458b73557b93556ba3655bc3754bd3853bf3952c03a51c13a50c33b4fc43c4ec63d4dc73e4cc83f4bca404acb4149cc4248ce4347cf4446d04545d24644d34743d44842d54a41d74b3fd84c3ed94d3dda4e3cdb503bdd513ade5238df5337e05536e15635e25734e35933e45a31e55c30e65d2fe75e2ee8602de9612bea632aeb6429eb6628ec6726ed6925ee6a24ef6c23ef6e21f06f20f1711ff1731df2741cf3761bf37819f47918f57b17f57d15f67e14f68013f78212f78410f8850ff8870ef8890cf98b0bf98c0af98e09fa9008fa9207fa9407fb9606fb9706fb9906fb9b06fb9d07fc9f07fca108fca309fca50afca60cfca80dfcaa0ffcac11fcae12fcb014fcb216fcb418fbb61afbb81dfbba1ffbbc21fbbe23fac026fac228fac42afac62df9c72ff9c932f9cb35f8cd37f8cf3af7d13df7d340f6d543f6d746f5d949f5db4cf4dd4ff4df53f4e156f3e35af3e55df2e661f2e865f2ea69f1ec6df1ed71f1ef75f1f179f2f27df2f482f3f586f3f68af4f88ef5f992f6fa96f8fb9af9fc9dfafda1fcffa4")),Yv=Kv(Cb("0d088710078813078916078a19068c1b068d1d068e20068f2206902406912605912805922a05932c05942e05952f059631059733059735049837049938049a3a049a3c049b3e049c3f049c41049d43039e44039e46039f48039f4903a04b03a14c02a14e02a25002a25102a35302a35502a45601a45801a45901a55b01a55c01a65e01a66001a66100a76300a76400a76600a76700a86900a86a00a86c00a86e00a86f00a87100a87201a87401a87501a87701a87801a87a02a87b02a87d03a87e03a88004a88104a78305a78405a78606a68707a68808a68a09a58b0aa58d0ba58e0ca48f0da4910ea3920fa39410a29511a19613a19814a099159f9a169f9c179e9d189d9e199da01a9ca11b9ba21d9aa31e9aa51f99a62098a72197a82296aa2395ab2494ac2694ad2793ae2892b02991b12a90b22b8fb32c8eb42e8db52f8cb6308bb7318ab83289ba3388bb3488bc3587bd3786be3885bf3984c03a83c13b82c23c81c33d80c43e7fc5407ec6417dc7427cc8437bc9447aca457acb4679cc4778cc4977cd4a76ce4b75cf4c74d04d73d14e72d24f71d35171d45270d5536fd5546ed6556dd7566cd8576bd9586ada5a6ada5b69db5c68dc5d67dd5e66de5f65de6164df6263e06363e16462e26561e26660e3685fe4695ee56a5de56b5de66c5ce76e5be76f5ae87059e97158e97257ea7457eb7556eb7655ec7754ed7953ed7a52ee7b51ef7c51ef7e50f07f4ff0804ef1814df1834cf2844bf3854bf3874af48849f48948f58b47f58c46f68d45f68f44f79044f79143f79342f89441f89540f9973ff9983ef99a3efa9b3dfa9c3cfa9e3bfb9f3afba139fba238fca338fca537fca636fca835fca934fdab33fdac33fdae32fdaf31fdb130fdb22ffdb42ffdb52efeb72dfeb82cfeba2cfebb2bfebd2afebe2afec029fdc229fdc328fdc527fdc627fdc827fdca26fdcb26fccd25fcce25fcd025fcd225fbd324fbd524fbd724fad824fada24f9dc24f9dd25f8df25f8e125f7e225f7e425f6e626f6e826f5e926f5eb27f4ed27f3ee27f3f027f2f227f1f426f1f525f0f724f0f921"));function $v(e){return function(){return e}}const Uv=Math.abs,qv=Math.atan2,Zv=Math.cos,Qv=Math.max,Xv=Math.min,ex=Math.sin,tx=Math.sqrt,rx=1e-12,ax=Math.PI,ix=ax/2,nx=2*ax;function ox(e){return e>=1?ix:e<=-1?-ix:Math.asin(e)}function cx(e){let t=3;return e.digits=function(r){if(!arguments.length)return t;if(null==r)t=null;else{const e=Math.floor(r);if(!(e>=0))throw new RangeError(`invalid digits: ${r}`);t=e}return e},()=>new So(t)}function lx(e){return e.innerRadius}function sx(e){return e.outerRadius}function ux(e){return e.startAngle}function hx(e){return e.endAngle}function dx(e){return e&&e.padAngle}function px(e,t,r,a,i,n,o){var c=e-r,l=t-a,s=(o?n:-n)/tx(c*c+l*l),u=s*l,h=-s*c,d=e+u,p=t+h,y=r+u,f=a+h,m=(d+y)/2,g=(p+f)/2,b=y-d,v=f-p,x=b*b+v*v,k=i-n,w=d*f-y*p,C=(v<0?-1:1)*tx(Qv(0,k*k*x-w*w)),_=(w*v-b*C)/x,S=(-w*b-v*C)/x,A=(w*v+b*C)/x,M=(-w*b+v*C)/x,T=_-m,B=S-g,L=A-m,E=M-g;return T*T+B*B>L*L+E*E&&(_=A,S=M),{cx:_,cy:S,x01:-u,y01:-h,x11:_*(i/k-1),y11:S*(i/k-1)}}var yx=Array.prototype.slice;function fx(e){return"object"==typeof e&&"length"in e?e:Array.from(e)}function mx(e){this._context=e}function gx(e){return new mx(e)}function bx(e){return e[0]}function vx(e){return e[1]}function xx(e,t){var r=$v(!0),a=null,i=gx,n=null,o=cx(c);function c(c){var l,s,u,h=(c=fx(c)).length,d=!1;for(null==a&&(n=i(u=o())),l=0;l<=h;++l)!(l=h;--d)c.point(g[d],b[d]);c.lineEnd(),c.areaEnd()}m&&(g[u]=+e(p,u,s),b[u]=+t(p,u,s),c.point(a?+a(p,u,s):g[u],r?+r(p,u,s):b[u]))}if(y)return c=null,y+""||null}function u(){return xx().defined(i).curve(o).context(n)}return e="function"==typeof e?e:void 0===e?bx:$v(+e),t="function"==typeof t?t:$v(void 0===t?0:+t),r="function"==typeof r?r:void 0===r?vx:$v(+r),s.x=function(t){return arguments.length?(e="function"==typeof t?t:$v(+t),a=null,s):e},s.x0=function(t){return arguments.length?(e="function"==typeof t?t:$v(+t),s):e},s.x1=function(e){return arguments.length?(a=null==e?null:"function"==typeof e?e:$v(+e),s):a},s.y=function(e){return arguments.length?(t="function"==typeof e?e:$v(+e),r=null,s):t},s.y0=function(e){return arguments.length?(t="function"==typeof e?e:$v(+e),s):t},s.y1=function(e){return arguments.length?(r=null==e?null:"function"==typeof e?e:$v(+e),s):r},s.lineX0=s.lineY0=function(){return u().x(e).y(t)},s.lineY1=function(){return u().x(e).y(r)},s.lineX1=function(){return u().x(a).y(t)},s.defined=function(e){return arguments.length?(i="function"==typeof e?e:$v(!!e),s):i},s.curve=function(e){return arguments.length?(o=e,null!=n&&(c=o(n)),s):o},s.context=function(e){return arguments.length?(null==e?n=c=null:c=o(n=e),s):n},s}function wx(e,t){return te?1:t>=e?0:NaN}function Cx(e){return e}mx.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._context.lineTo(e,t)}}};var _x=Ax(gx);function Sx(e){this._curve=e}function Ax(e){function t(t){return new Sx(e(t))}return t._curve=e,t}function Mx(e){var t=e.curve;return e.angle=e.x,delete e.x,e.radius=e.y,delete e.y,e.curve=function(e){return arguments.length?t(Ax(e)):t()._curve},e}function Tx(){return Mx(xx().curve(_x))}function Bx(){var e=kx().curve(_x),t=e.curve,r=e.lineX0,a=e.lineX1,i=e.lineY0,n=e.lineY1;return e.angle=e.x,delete e.x,e.startAngle=e.x0,delete e.x0,e.endAngle=e.x1,delete e.x1,e.radius=e.y,delete e.y,e.innerRadius=e.y0,delete e.y0,e.outerRadius=e.y1,delete e.y1,e.lineStartAngle=function(){return Mx(r())},delete e.lineX0,e.lineEndAngle=function(){return Mx(a())},delete e.lineX1,e.lineInnerRadius=function(){return Mx(i())},delete e.lineY0,e.lineOuterRadius=function(){return Mx(n())},delete e.lineY1,e.curve=function(e){return arguments.length?t(Ax(e)):t()._curve},e}function Lx(e,t){return[(t=+t)*Math.cos(e-=Math.PI/2),t*Math.sin(e)]}Sx.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(e,t){this._curve.point(t*Math.sin(e),t*-Math.cos(e))}};class Ex{constructor(e,t){this._context=e,this._x=t}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line}point(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._x?this._context.bezierCurveTo(this._x0=(this._x0+e)/2,this._y0,this._x0,t,e,t):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+t)/2,e,this._y0,e,t)}this._x0=e,this._y0=t}}class Rx{constructor(e){this._context=e}lineStart(){this._point=0}lineEnd(){}point(e,t){if(e=+e,t=+t,0===this._point)this._point=1;else{const r=Lx(this._x0,this._y0),a=Lx(this._x0,this._y0=(this._y0+t)/2),i=Lx(e,this._y0),n=Lx(e,t);this._context.moveTo(...r),this._context.bezierCurveTo(...a,...i,...n)}this._x0=e,this._y0=t}}function Hx(e){return new Ex(e,!0)}function Dx(e){return new Ex(e,!1)}function Px(e){return new Rx(e)}function Nx(e){return e.source}function Gx(e){return e.target}function Ix(e){let t=Nx,r=Gx,a=bx,i=vx,n=null,o=null,c=cx(l);function l(){let l;const s=yx.call(arguments),u=t.apply(this,s),h=r.apply(this,s);if(null==n&&(o=e(l=c())),o.lineStart(),s[0]=u,o.point(+a.apply(this,s),+i.apply(this,s)),s[0]=h,o.point(+a.apply(this,s),+i.apply(this,s)),o.lineEnd(),l)return o=null,l+""||null}return l.source=function(e){return arguments.length?(t=e,l):t},l.target=function(e){return arguments.length?(r=e,l):r},l.x=function(e){return arguments.length?(a="function"==typeof e?e:$v(+e),l):a},l.y=function(e){return arguments.length?(i="function"==typeof e?e:$v(+e),l):i},l.context=function(t){return arguments.length?(null==t?n=o=null:o=e(n=t),l):n},l}function Wx(){const e=Ix(Px);return e.angle=e.x,delete e.x,e.radius=e.y,delete e.y,e}const Fx=tx(3);var zx={draw(e,t){const r=.59436*tx(t+Xv(t/28,.75)),a=r/2,i=a*Fx;e.moveTo(0,r),e.lineTo(0,-r),e.moveTo(-i,-a),e.lineTo(i,a),e.moveTo(-i,a),e.lineTo(i,-a)}},Ox={draw(e,t){const r=tx(t/ax);e.moveTo(r,0),e.arc(0,0,r,0,nx)}},Kx={draw(e,t){const r=tx(t/5)/2;e.moveTo(-3*r,-r),e.lineTo(-r,-r),e.lineTo(-r,-3*r),e.lineTo(r,-3*r),e.lineTo(r,-r),e.lineTo(3*r,-r),e.lineTo(3*r,r),e.lineTo(r,r),e.lineTo(r,3*r),e.lineTo(-r,3*r),e.lineTo(-r,r),e.lineTo(-3*r,r),e.closePath()}};const Jx=tx(1/3),Vx=2*Jx;var jx={draw(e,t){const r=tx(t/Vx),a=r*Jx;e.moveTo(0,-r),e.lineTo(a,0),e.lineTo(0,r),e.lineTo(-a,0),e.closePath()}},Yx={draw(e,t){const r=.62625*tx(t);e.moveTo(0,-r),e.lineTo(r,0),e.lineTo(0,r),e.lineTo(-r,0),e.closePath()}},$x={draw(e,t){const r=.87559*tx(t-Xv(t/7,2));e.moveTo(-r,0),e.lineTo(r,0),e.moveTo(0,r),e.lineTo(0,-r)}},Ux={draw(e,t){const r=tx(t),a=-r/2;e.rect(a,a,r,r)}},qx={draw(e,t){const r=.4431*tx(t);e.moveTo(r,r),e.lineTo(r,-r),e.lineTo(-r,-r),e.lineTo(-r,r),e.closePath()}};const Zx=ex(ax/10)/ex(7*ax/10),Qx=ex(nx/10)*Zx,Xx=-Zv(nx/10)*Zx;var ek={draw(e,t){const r=tx(.8908130915292852*t),a=Qx*r,i=Xx*r;e.moveTo(0,-r),e.lineTo(a,i);for(let t=1;t<5;++t){const n=nx*t/5,o=Zv(n),c=ex(n);e.lineTo(c*r,-o*r),e.lineTo(o*a-c*i,c*a+o*i)}e.closePath()}};const tk=tx(3);var rk={draw(e,t){const r=-tx(t/(3*tk));e.moveTo(0,2*r),e.lineTo(-tk*r,-r),e.lineTo(tk*r,-r),e.closePath()}};const ak=tx(3);var ik={draw(e,t){const r=.6824*tx(t),a=r/2,i=r*ak/2;e.moveTo(0,-r),e.lineTo(i,a),e.lineTo(-i,a),e.closePath()}};const nk=-.5,ok=tx(3)/2,ck=1/tx(12),lk=3*(ck/2+1);var sk={draw(e,t){const r=tx(t/lk),a=r/2,i=r*ck,n=a,o=r*ck+r,c=-n,l=o;e.moveTo(a,i),e.lineTo(n,o),e.lineTo(c,l),e.lineTo(nk*a-ok*i,ok*a+nk*i),e.lineTo(nk*n-ok*o,ok*n+nk*o),e.lineTo(nk*c-ok*l,ok*c+nk*l),e.lineTo(nk*a+ok*i,nk*i-ok*a),e.lineTo(nk*n+ok*o,nk*o-ok*n),e.lineTo(nk*c+ok*l,nk*l-ok*c),e.closePath()}},uk={draw(e,t){const r=.6189*tx(t-Xv(t/6,1.7));e.moveTo(-r,-r),e.lineTo(r,r),e.moveTo(-r,r),e.lineTo(r,-r)}};const hk=[Ox,Kx,jx,Ux,ek,rk,sk],dk=[Ox,$x,uk,ik,zx,qx,Yx];function pk(e,t){let r=null,a=cx(i);function i(){let i;if(r||(r=i=a()),e.apply(this,arguments).draw(r,+t.apply(this,arguments)),i)return r=null,i+""||null}return e="function"==typeof e?e:$v(e||Ox),t="function"==typeof t?t:$v(void 0===t?64:+t),i.type=function(t){return arguments.length?(e="function"==typeof t?t:$v(t),i):e},i.size=function(e){return arguments.length?(t="function"==typeof e?e:$v(+e),i):t},i.context=function(e){return arguments.length?(r=null==e?null:e,i):r},i}function yk(){}function fk(e,t,r){e._context.bezierCurveTo((2*e._x0+e._x1)/3,(2*e._y0+e._y1)/3,(e._x0+2*e._x1)/3,(e._y0+2*e._y1)/3,(e._x0+4*e._x1+t)/6,(e._y0+4*e._y1+r)/6)}function mk(e){this._context=e}function gk(e){this._context=e}function bk(e){return new gk(e)}function vk(e){this._context=e}function xk(e,t){this._basis=new mk(e),this._beta=t}mk.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:fk(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:fk(this,e,t)}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}},gk.prototype={areaStart:yk,areaEnd:yk,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x2,this._y2),this._context.closePath();break;case 2:this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break;case 3:this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4)}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x2=e,this._y2=t;break;case 1:this._point=2,this._x3=e,this._y3=t;break;case 2:this._point=3,this._x4=e,this._y4=t,this._context.moveTo((this._x0+4*this._x1+e)/6,(this._y0+4*this._y1+t)/6);break;default:fk(this,e,t)}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}},vk.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var r=(this._x0+4*this._x1+e)/6,a=(this._y0+4*this._y1+t)/6;this._line?this._context.lineTo(r,a):this._context.moveTo(r,a);break;case 3:this._point=4;default:fk(this,e,t)}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}},xk.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var e=this._x,t=this._y,r=e.length-1;if(r>0)for(var a,i=e[0],n=t[0],o=e[r]-i,c=t[r]-n,l=-1;++l<=r;)a=l/r,this._basis.point(this._beta*e[l]+(1-this._beta)*(i+a*o),this._beta*t[l]+(1-this._beta)*(n+a*c));this._x=this._y=null,this._basis.lineEnd()},point:function(e,t){this._x.push(+e),this._y.push(+t)}};var kk=function e(t){function r(e){return 1===t?new mk(e):new xk(e,t)}return r.beta=function(t){return e(+t)},r}(.85);function wk(e,t,r){e._context.bezierCurveTo(e._x1+e._k*(e._x2-e._x0),e._y1+e._k*(e._y2-e._y0),e._x2+e._k*(e._x1-t),e._y2+e._k*(e._y1-r),e._x2,e._y2)}function Ck(e,t){this._context=e,this._k=(1-t)/6}Ck.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:wk(this,this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2,this._x1=e,this._y1=t;break;case 2:this._point=3;default:wk(this,e,t)}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var _k=function e(t){function r(e){return new Ck(e,t)}return r.tension=function(t){return e(+t)},r}(0);function Sk(e,t){this._context=e,this._k=(1-t)/6}Sk.prototype={areaStart:yk,areaEnd:yk,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x3=e,this._y3=t;break;case 1:this._point=2,this._context.moveTo(this._x4=e,this._y4=t);break;case 2:this._point=3,this._x5=e,this._y5=t;break;default:wk(this,e,t)}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var Ak=function e(t){function r(e){return new Sk(e,t)}return r.tension=function(t){return e(+t)},r}(0);function Mk(e,t){this._context=e,this._k=(1-t)/6}Mk.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:wk(this,e,t)}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var Tk=function e(t){function r(e){return new Mk(e,t)}return r.tension=function(t){return e(+t)},r}(0);function Bk(e,t,r){var a=e._x1,i=e._y1,n=e._x2,o=e._y2;if(e._l01_a>rx){var c=2*e._l01_2a+3*e._l01_a*e._l12_a+e._l12_2a,l=3*e._l01_a*(e._l01_a+e._l12_a);a=(a*c-e._x0*e._l12_2a+e._x2*e._l01_2a)/l,i=(i*c-e._y0*e._l12_2a+e._y2*e._l01_2a)/l}if(e._l23_a>rx){var s=2*e._l23_2a+3*e._l23_a*e._l12_a+e._l12_2a,u=3*e._l23_a*(e._l23_a+e._l12_a);n=(n*s+e._x1*e._l23_2a-t*e._l12_2a)/u,o=(o*s+e._y1*e._l23_2a-r*e._l12_2a)/u}e._context.bezierCurveTo(a,i,n,o,e._x2,e._y2)}function Lk(e,t){this._context=e,this._alpha=t}Lk.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){if(e=+e,t=+t,this._point){var r=this._x2-e,a=this._y2-t;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+a*a,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3;default:Bk(this,e,t)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var Ek=function e(t){function r(e){return t?new Lk(e,t):new Ck(e,0)}return r.alpha=function(t){return e(+t)},r}(.5);function Rk(e,t){this._context=e,this._alpha=t}Rk.prototype={areaStart:yk,areaEnd:yk,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(e,t){if(e=+e,t=+t,this._point){var r=this._x2-e,a=this._y2-t;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+a*a,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=e,this._y3=t;break;case 1:this._point=2,this._context.moveTo(this._x4=e,this._y4=t);break;case 2:this._point=3,this._x5=e,this._y5=t;break;default:Bk(this,e,t)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var Hk=function e(t){function r(e){return t?new Rk(e,t):new Sk(e,0)}return r.alpha=function(t){return e(+t)},r}(.5);function Dk(e,t){this._context=e,this._alpha=t}Dk.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){if(e=+e,t=+t,this._point){var r=this._x2-e,a=this._y2-t;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+a*a,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Bk(this,e,t)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var Pk=function e(t){function r(e){return t?new Dk(e,t):new Mk(e,0)}return r.alpha=function(t){return e(+t)},r}(.5);function Nk(e){this._context=e}function Gk(e){return e<0?-1:1}function Ik(e,t,r){var a=e._x1-e._x0,i=t-e._x1,n=(e._y1-e._y0)/(a||i<0&&-0),o=(r-e._y1)/(i||a<0&&-0),c=(n*i+o*a)/(a+i);return(Gk(n)+Gk(o))*Math.min(Math.abs(n),Math.abs(o),.5*Math.abs(c))||0}function Wk(e,t){var r=e._x1-e._x0;return r?(3*(e._y1-e._y0)/r-t)/2:t}function Fk(e,t,r){var a=e._x0,i=e._y0,n=e._x1,o=e._y1,c=(n-a)/3;e._context.bezierCurveTo(a+c,i+c*t,n-c,o-c*r,n,o)}function zk(e){this._context=e}function Ok(e){this._context=new Kk(e)}function Kk(e){this._context=e}function Jk(e){this._context=e}function Vk(e){var t,r,a=e.length-1,i=new Array(a),n=new Array(a),o=new Array(a);for(i[0]=0,n[0]=2,o[0]=e[0]+2*e[1],t=1;t=0;--t)i[t]=(o[t]-i[t+1])/n[t];for(n[a-1]=(e[a]+i[a-1])/2,t=0;t1)for(var r,a,i,n=1,o=e[t[0]],c=o.length;n=0;)r[t]=t;return r}function Qk(e,t){return e[t]}function Xk(e){const t=[];return t.key=e,t}function ew(e){var t=e.map(tw);return Zk(e).sort((function(e,r){return t[e]-t[r]}))}function tw(e){for(var t,r=-1,a=0,i=e.length,n=-1/0;++rn&&(n=t,a=r);return a}function rw(e){var t=e.map(aw);return Zk(e).sort((function(e,r){return t[e]-t[r]}))}function aw(e){for(var t,r=0,a=-1,i=e.length;++a=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,t),this._context.lineTo(e,t);else{var r=this._x*(1-this._t)+e*this._t;this._context.lineTo(r,this._y),this._context.lineTo(r,t)}}this._x=e,this._y=t}};var iw=e=>()=>e;function nw(e,{sourceEvent:t,target:r,transform:a,dispatch:i}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},transform:{value:a,enumerable:!0,configurable:!0},_:{value:i}})}function ow(e,t,r){this.k=e,this.x=t,this.y=r}ow.prototype={constructor:ow,scale:function(e){return 1===e?this:new ow(this.k*e,this.x,this.y)},translate:function(e,t){return 0===e&0===t?this:new ow(this.k,this.x+this.k*e,this.y+this.k*t)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var cw=new ow(1,0,0);function lw(e){for(;!e.__zoom;)if(!(e=e.parentNode))return cw;return e.__zoom}function sw(e){e.stopImmediatePropagation()}function uw(e){e.preventDefault(),e.stopImmediatePropagation()}function hw(e){return!(e.ctrlKey&&"wheel"!==e.type||e.button)}function dw(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e).hasAttribute("viewBox")?[[(e=e.viewBox.baseVal).x,e.y],[e.x+e.width,e.y+e.height]]:[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]:[[0,0],[e.clientWidth,e.clientHeight]]}function pw(){return this.__zoom||cw}function yw(e){return-e.deltaY*(1===e.deltaMode?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function fw(){return navigator.maxTouchPoints||"ontouchstart"in this}function mw(e,t,r){var a=e.invertX(t[0][0])-r[0][0],i=e.invertX(t[1][0])-r[1][0],n=e.invertY(t[0][1])-r[0][1],o=e.invertY(t[1][1])-r[1][1];return e.translate(i>a?(a+i)/2:Math.min(0,a)||Math.max(0,i),o>n?(n+o)/2:Math.min(0,n)||Math.max(0,o))}function gw(){var e,t,r,a=hw,i=dw,n=mw,o=yw,c=fw,l=[0,1/0],s=[[-1/0,-1/0],[1/0,1/0]],u=250,h=ei,d=Le("start","zoom","end"),p=0,y=10;function f(e){e.property("__zoom",pw).on("wheel.zoom",w,{passive:!1}).on("mousedown.zoom",C).on("dblclick.zoom",_).filter(c).on("touchstart.zoom",S).on("touchmove.zoom",A).on("touchend.zoom touchcancel.zoom",M).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function m(e,t){return(t=Math.max(l[0],Math.min(l[1],t)))===e.k?e:new ow(t,e.x,e.y)}function g(e,t,r){var a=t[0]-r[0]*e.k,i=t[1]-r[1]*e.k;return a===e.x&&i===e.y?e:new ow(e.k,a,i)}function b(e){return[(+e[0][0]+ +e[1][0])/2,(+e[0][1]+ +e[1][1])/2]}function v(e,t,r,a){e.on("start.zoom",(function(){x(this,arguments).event(a).start()})).on("interrupt.zoom end.zoom",(function(){x(this,arguments).event(a).end()})).tween("zoom",(function(){var e=this,n=arguments,o=x(e,n).event(a),c=i.apply(e,n),l=null==r?b(c):"function"==typeof r?r.apply(e,n):r,s=Math.max(c[1][0]-c[0][0],c[1][1]-c[0][1]),u=e.__zoom,d="function"==typeof t?t.apply(e,n):t,p=h(u.invert(l).concat(s/u.k),d.invert(l).concat(s/d.k));return function(e){if(1===e)e=d;else{var t=p(e),r=s/t[2];e=new ow(r,l[0]-t[0]*r,l[1]-t[1]*r)}o.zoom(null,e)}}))}function x(e,t,r){return!r&&e.__zooming||new k(e,t)}function k(e,t){this.that=e,this.args=t,this.active=0,this.sourceEvent=null,this.extent=i.apply(e,t),this.taps=0}function w(e,...t){if(a.apply(this,arguments)){var r=x(this,t).event(e),i=this.__zoom,c=Math.max(l[0],Math.min(l[1],i.k*Math.pow(2,o.apply(this,arguments)))),u=Qt(e);if(r.wheel)r.mouse[0][0]===u[0]&&r.mouse[0][1]===u[1]||(r.mouse[1]=i.invert(r.mouse[0]=u)),clearTimeout(r.wheel);else{if(i.k===c)return;r.mouse=[u,i.invert(u)],Ni(this),r.start()}uw(e),r.wheel=setTimeout((function(){r.wheel=null,r.end()}),150),r.zoom("mouse",n(g(m(i,c),r.mouse[0],r.mouse[1]),r.extent,s))}}function C(e,...t){if(!r&&a.apply(this,arguments)){var i=e.currentTarget,o=x(this,t,!0).event(e),c=jt(e.view).on("mousemove.zoom",(function(e){if(uw(e),!o.moved){var t=e.clientX-u,r=e.clientY-h;o.moved=t*t+r*r>p}o.event(e).zoom("mouse",n(g(o.that.__zoom,o.mouse[0]=Qt(e,i),o.mouse[1]),o.extent,s))}),!0).on("mouseup.zoom",(function(e){c.on("mousemove.zoom mouseup.zoom",null),ir(e.view,o.moved),uw(e),o.event(e).end()}),!0),l=Qt(e,i),u=e.clientX,h=e.clientY;ar(e.view),sw(e),o.mouse=[l,this.__zoom.invert(l)],Ni(this),o.start()}}function _(e,...t){if(a.apply(this,arguments)){var r=this.__zoom,o=Qt(e.changedTouches?e.changedTouches[0]:e,this),c=r.invert(o),l=r.k*(e.shiftKey?.5:2),h=n(g(m(r,l),o,c),i.apply(this,t),s);uw(e),u>0?jt(this).transition().duration(u).call(v,h,o,e):jt(this).call(f.transform,h,o,e)}}function S(r,...i){if(a.apply(this,arguments)){var n,o,c,l,s=r.touches,u=s.length,h=x(this,i,r.changedTouches.length===u).event(r);for(sw(r),o=0;o1&&r.name===t)return new rn([[e]],Nn,t,+a);return null},arc:function(){var e=lx,t=sx,r=$v(0),a=null,i=ux,n=hx,o=dx,c=null,l=cx(s);function s(){var s,u,h=+e.apply(this,arguments),d=+t.apply(this,arguments),p=i.apply(this,arguments)-ix,y=n.apply(this,arguments)-ix,f=Uv(y-p),m=y>p;if(c||(c=s=l()),drx)if(f>nx-rx)c.moveTo(d*Zv(p),d*ex(p)),c.arc(0,0,d,p,y,!m),h>rx&&(c.moveTo(h*Zv(y),h*ex(y)),c.arc(0,0,h,y,p,m));else{var g,b,v=p,x=y,k=p,w=y,C=f,_=f,S=o.apply(this,arguments)/2,A=S>rx&&(a?+a.apply(this,arguments):tx(h*h+d*d)),M=Xv(Uv(d-h)/2,+r.apply(this,arguments)),T=M,B=M;if(A>rx){var L=ox(A/h*ex(S)),E=ox(A/d*ex(S));(C-=2*L)>rx?(k+=L*=m?1:-1,w-=L):(C=0,k=w=(p+y)/2),(_-=2*E)>rx?(v+=E*=m?1:-1,x-=E):(_=0,v=x=(p+y)/2)}var R=d*Zv(v),H=d*ex(v),D=h*Zv(w),P=h*ex(w);if(M>rx){var N,G=d*Zv(x),I=d*ex(x),W=h*Zv(k),F=h*ex(k);if(f1?0:e<-1?ax:Math.acos(e)}((z*K+O*J)/(tx(z*z+O*O)*tx(K*K+J*J)))/2),j=tx(N[0]*N[0]+N[1]*N[1]);T=Xv(M,(h-j)/(V-1)),B=Xv(M,(d-j)/(V+1))}else T=B=0}_>rx?B>rx?(g=px(W,F,R,H,d,B,m),b=px(G,I,D,P,d,B,m),c.moveTo(g.cx+g.x01,g.cy+g.y01),Brx&&C>rx?T>rx?(g=px(D,P,G,I,h,-T,m),b=px(R,H,W,F,h,-T,m),c.lineTo(g.cx+g.x01,g.cy+g.y01),T=0))throw new RangeError("invalid r");let r=e.length;if(!((r=Math.floor(r))>=0))throw new RangeError("invalid length");if(!r||!t)return e;const a=f(t),i=e.slice();return a(e,i,0,r,1),a(i,e,0,r,1),a(e,i,0,r,1),e},blur2:u,blurImage:h,brush:function(){return lo(Zn)},brushSelection:function(e){var t=e.__brush;return t?t.dim.output(t.selection):null},brushX:function(){return lo(Un)},brushY:function(){return lo(qn)},buffer:function(e,t){return fetch(e,t).then(Xc)},chord:function(){return vo(!1,!1)},chordDirected:function(){return vo(!0,!1)},chordTranspose:function(){return vo(!1,!0)},cluster:kp,color:Br,contourDensity:function(){var e=qo,t=Zo,r=Qo,a=960,i=500,n=20,o=2,c=3*n,l=a+2*c>>o,s=i+2*c>>o,h=Wo(20);function d(a){var i=new Float32Array(l*s),h=Math.pow(2,-o),d=-1;for(const n of a){var p=(e(n,++d,a)+c)*h,y=(t(n,d,a)+c)*h,f=+r(n,d,a);if(f&&p>=0&&p=0&&ye*a)))(t).map(((e,t)=>(e.value=+r[t],y(e))))}function y(e){return e.coordinates.forEach(f),e}function f(e){e.forEach(m)}function m(e){e.forEach(g)}function g(e){e[0]=e[0]*Math.pow(2,o)-c,e[1]=e[1]*Math.pow(2,o)-c}function b(){return l=a+2*(c=3*n)>>o,s=i+2*c>>o,p}return p.contours=function(e){var t=d(e),r=Vo().size([l,s]),a=Math.pow(2,2*o),i=e=>{e=+e;var i=y(r.contour(t,e*a));return i.value=e,i};return Object.defineProperty(i,"max",{get:()=>ee(t)/a}),i},p.x=function(t){return arguments.length?(e="function"==typeof t?t:Wo(+t),p):e},p.y=function(e){return arguments.length?(t="function"==typeof e?e:Wo(+e),p):t},p.weight=function(e){return arguments.length?(r="function"==typeof e?e:Wo(+e),p):r},p.size=function(e){if(!arguments.length)return[a,i];var t=+e[0],r=+e[1];if(!(t>=0&&r>=0))throw new Error("invalid size");return a=t,i=r,b()},p.cellSize=function(e){if(!arguments.length)return 1<=1))throw new Error("invalid cell size");return o=Math.floor(Math.log(e)/Math.LN2),b()},p.thresholds=function(e){return arguments.length?(h="function"==typeof e?e:Array.isArray(e)?Wo(Go.call(e)):Wo(e),p):h},p.bandwidth=function(e){if(!arguments.length)return Math.sqrt(n*(n+1));if(!((e=+e)>=0))throw new Error("invalid bandwidth");return n=(Math.sqrt(4*e*e+1)-1)/2,b()},p},contours:Vo,count:m,create:Yt,creator:We,cross:function(...e){const t="function"==typeof e[e.length-1]&&function(e){return t=>e(...t)}(e.pop()),r=(e=e.map(v)).map(g),a=e.length-1,i=new Array(a+1).fill(0),n=[];if(a<0||r.some(b))return n;for(;;){n.push(i.map(((t,r)=>e[r][t])));let o=a;for(;++i[o]===r[o];){if(0===o)return t?n.map(t):n;i[o--]=0}}},csv:al,csvFormat:Ic,csvFormatBody:Wc,csvFormatRow:zc,csvFormatRows:Fc,csvFormatValue:Oc,csvParse:Nc,csvParseRows:Gc,cubehelix:ka,cumsum:function(e,t){var r=0,a=0;return Float64Array.from(e,void 0===t?e=>r+=+e||0:i=>r+=+t(i,a++,e)||0)},curveBasis:function(e){return new mk(e)},curveBasisClosed:bk,curveBasisOpen:function(e){return new vk(e)},curveBumpX:Hx,curveBumpY:Dx,curveBundle:kk,curveCardinal:_k,curveCardinalClosed:Ak,curveCardinalOpen:Tk,curveCatmullRom:Ek,curveCatmullRomClosed:Hk,curveCatmullRomOpen:Pk,curveLinear:gx,curveLinearClosed:function(e){return new Nk(e)},curveMonotoneX:function(e){return new zk(e)},curveMonotoneY:function(e){return new Ok(e)},curveNatural:function(e){return new Jk(e)},curveStep:Yk,curveStepAfter:Uk,curveStepBefore:$k,descending:r,deviation:k,difference:function(e,...t){e=new S(e);for(const r of t)for(const t of r)e.delete(t);return e},disjoint:function(e,t){const r=t[Symbol.iterator](),a=new S;for(const t of e){if(a.has(t))return!1;let e,i;for(;({value:e,done:i}=r.next())&&!i;){if(Object.is(t,e))return!1;a.add(e)}}return!0},dispatch:Le,drag:function(){var e,t,r,a,i=cr,n=lr,o=sr,c=ur,l={},s=Le("start","drag","end"),u=0,h=0;function d(e){e.on("mousedown.drag",p).filter(c).on("touchstart.drag",m).on("touchmove.drag",g,Xt).on("touchend.drag touchcancel.drag",b).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function p(o,c){if(!a&&i.call(this,o,c)){var l=v(this,n.call(this,o,c),o,c,"mouse");l&&(jt(o.view).on("mousemove.drag",y,er).on("mouseup.drag",f,er),ar(o.view),tr(o),r=!1,e=o.clientX,t=o.clientY,l("start",o))}}function y(a){if(rr(a),!r){var i=a.clientX-e,n=a.clientY-t;r=i*i+n*n>h}l.mouse("drag",a)}function f(e){jt(e.view).on("mousemove.drag mouseup.drag",null),ir(e.view,r),rr(e),l.mouse("end",e)}function m(e,t){if(i.call(this,e,t)){var r,a,o=e.changedTouches,c=n.call(this,e,t),l=o.length;for(r=0;r+e,easePoly:hn,easePolyIn:sn,easePolyInOut:hn,easePolyOut:un,easeQuad:cn,easeQuadIn:function(e){return e*e},easeQuadInOut:cn,easeQuadOut:function(e){return e*(2-e)},easeSin:yn,easeSinIn:function(e){return 1==+e?1:1-Math.cos(e*pn)},easeSinInOut:yn,easeSinOut:function(e){return Math.sin(e*pn)},every:function(e,t){if("function"!=typeof t)throw new TypeError("test is not a function");let r=-1;for(const a of e)if(!t(a,++r,e))return!1;return!0},extent:w,fcumsum:function(e,t){const r=new C;let a=-1;return Float64Array.from(e,void 0===t?e=>r.add(+e||0):i=>r.add(+t(i,++a,e)||0))},filter:function(e,t){if("function"!=typeof t)throw new TypeError("test is not a function");const r=[];let a=-1;for(const i of e)t(i,++a,e)&&r.push(i);return r},flatGroup:function(e,...t){return H(R(e,...t),t)},flatRollup:function(e,t,...r){return H(P(e,t,...r),r)},forceCenter:function(e,t){var r,a=1;function i(){var i,n,o=r.length,c=0,l=0;for(i=0;is+y||nu+y||ol.index){var f=s-c.x-c.vx,m=u-c.y-c.vy,g=f*f+m*m;ge.r&&(e.r=e[t].r)}function l(){if(t){var a,i,n=t.length;for(r=new Array(n),a=0;a[c(e,t,a),e])));for(o=0,i=new Array(s);o=c)){(e.data!==t||e.next)&&(0===h&&(y+=(h=vl(r))*h),0===d&&(y+=(d=vl(r))*d),y(e=(1664525*e+1013904223)%_l)/_l}();function h(){d(),s.call("tick",t),r1?(null==r?c.delete(e):c.set(e,y(r)),t):c.get(e)},find:function(t,r,a){var i,n,o,c,l,s=0,u=e.length;for(null==a?a=1/0:a*=a,s=0;s1?(s.on(e,r),t):s.on(e)}}},forceX:function(e){var t,r,a,i=bl(.1);function n(e){for(var i,n=0,o=t.length;n=.12&&i<.234&&a>=-.425&&a<-.214?c:i>=.166&&i<.234&&a>=-.214&&a<-.115?l:o).invert(e)},u.stream=function(r){return e&&t===r?e:e=function(e){var t=e.length;return{point:function(r,a){for(var i=-1;++i_u(a[0],a[1])&&(a[1]=i[1]),_u(i[0],a[1])>_u(a[0],a[1])&&(a[0]=i[0])):n.push(a=i);for(o=-1/0,t=0,a=n[r=n.length-1];t<=r;a=i,++t)i=n[t],(c=_u(a[1],i[0]))>o&&(o=c,Bs=i[0],Es=a[1])}return Is=Ws=null,Bs===1/0||Ls===1/0?[[NaN,NaN],[NaN,NaN]]:[[Bs,Ls],[Es,Rs]]},geoCentroid:function(e){eu=tu=ru=au=iu=nu=ou=cu=0,lu=new C,su=new C,uu=new C,Cs(e,Mu);var t=+lu,r=+su,a=+uu,i=cs(t,r,a);return i<$l&&(t=nu,r=ou,a=cu,tu=0))throw new RangeError(`invalid digits: ${e}`);i=t}return null===t&&(a=new Rd(i)),o},o.projection(e).digits(i).context(t)},geoProjection:Vd,geoProjectionMutator:jd,geoRotation:Vu,geoStereographic:function(){return Vd(mp).scale(250).clipAngle(142)},geoStereographicRaw:mp,geoStream:Cs,geoTransform:function(e){return{stream:Dd(e)}},geoTransverseMercator:function(){var e=rp(gp),t=e.center,r=e.rotate;return e.center=function(e){return arguments.length?t([-e[1],e[0]]):[(e=t())[1],-e[0]]},e.rotate=function(e){return arguments.length?r([e[0],e[1],e.length>2?e[2]+90:90]):[(e=r())[0],e[1],e[2]-90]},r([0,0,90]).scale(159.155)},geoTransverseMercatorRaw:gp,gray:ra,greatest:oe,greatestIndex:function(e,r=t){if(1===r.length)return te(e,r);let a,i=-1,n=-1;for(const t of e)++n,(i<0?0===r(t,t):r(t,a)>0)&&(a=t,i=n);return i},group:E,groupSort:function(e,r,a){return(2!==r.length?W(D(e,r,a),(([e,r],[a,i])=>t(r,i)||t(e,a))):W(E(e,a),(([e,a],[i,n])=>r(a,n)||t(e,i)))).map((([e])=>e))},groups:R,hcl:ua,hierarchy:Cp,histogram:X,hsl:Or,html:ll,image:function(e,t){return new Promise((function(r,a){var i=new Image;for(var n in t)i[n]=t[n];i.onerror=a,i.onload=function(){r(i)},i.src=e}))},index:function(e,...t){return G(e,L,N,t)},indexes:function(e,...t){return G(e,Array.from,N,t)},interpolate:Ja,interpolateArray:function(e,t){return(Na(t)?Pa:Ga)(e,t)},interpolateBasis:_a,interpolateBasisClosed:Sa,interpolateBlues:Sv,interpolateBrBG:Gb,interpolateBuGn:tv,interpolateBuPu:av,interpolateCividis:function(e){return e=Math.max(0,Math.min(1,e)),"rgb("+Math.max(0,Math.min(255,Math.round(-4.54-e*(35.34-e*(2381.73-e*(6402.7-e*(7024.72-2710.57*e)))))))+", "+Math.max(0,Math.min(255,Math.round(32.49+e*(170.73+e*(52.82-e*(131.46-e*(176.58-67.37*e)))))))+", "+Math.max(0,Math.min(255,Math.round(81.24+e*(442.36-e*(2482.43-e*(6167.24-e*(6614.94-2475.67*e)))))))+")"},interpolateCool:Iv,interpolateCubehelix:li,interpolateCubehelixDefault:Nv,interpolateCubehelixLong:si,interpolateDate:Ia,interpolateDiscrete:function(e){var t=e.length;return function(r){return e[Math.max(0,Math.min(t-1,Math.floor(r*t)))]}},interpolateGnBu:nv,interpolateGreens:Mv,interpolateGreys:Bv,interpolateHcl:ni,interpolateHclLong:oi,interpolateHsl:ri,interpolateHslLong:ai,interpolateHue:function(e,t){var r=Ta(+e,+t);return function(e){var t=r(e);return t-360*Math.floor(t/360)}},interpolateInferno:jv,interpolateLab:function(e,t){var r=La((e=aa(e)).l,(t=aa(t)).l),a=La(e.a,t.a),i=La(e.b,t.b),n=La(e.opacity,t.opacity);return function(t){return e.l=r(t),e.a=a(t),e.b=i(t),e.opacity=n(t),e+""}},interpolateMagma:Vv,interpolateNumber:Wa,interpolateNumberArray:Pa,interpolateObject:Fa,interpolateOrRd:cv,interpolateOranges:Pv,interpolatePRGn:Wb,interpolatePiYG:zb,interpolatePlasma:Yv,interpolatePuBu:hv,interpolatePuBuGn:sv,interpolatePuOr:Kb,interpolatePuRd:pv,interpolatePurples:Ev,interpolateRainbow:function(e){(e<0||e>1)&&(e-=Math.floor(e));var t=Math.abs(e-.5);return Wv.h=360*e-100,Wv.s=1.5-1.5*t,Wv.l=.8-.9*t,Wv+""},interpolateRdBu:Vb,interpolateRdGy:Yb,interpolateRdPu:fv,interpolateRdYlBu:Ub,interpolateRdYlGn:Zb,interpolateReds:Hv,interpolateRgb:Ea,interpolateRgbBasis:Ha,interpolateRgbBasisClosed:Da,interpolateRound:Va,interpolateSinebow:function(e){var t;return e=(.5-e)*Math.PI,Fv.r=255*(t=Math.sin(e))*t,Fv.g=255*(t=Math.sin(e+zv))*t,Fv.b=255*(t=Math.sin(e+Ov))*t,Fv+""},interpolateSpectral:Xb,interpolateString:Ka,interpolateTransformCss:Za,interpolateTransformSvg:Qa,interpolateTurbo:function(e){return e=Math.max(0,Math.min(1,e)),"rgb("+Math.max(0,Math.min(255,Math.round(34.61+e*(1172.33-e*(10793.56-e*(33300.12-e*(38394.49-14825.05*e)))))))+", "+Math.max(0,Math.min(255,Math.round(23.31+e*(557.33+e*(1225.33-e*(3574.96-e*(1073.77+707.56*e)))))))+", "+Math.max(0,Math.min(255,Math.round(27.2+e*(3211.1-e*(15327.97-e*(27814-e*(22569.18-6838.66*e)))))))+")"},interpolateViridis:Jv,interpolateWarm:Gv,interpolateYlGn:vv,interpolateYlGnBu:gv,interpolateYlOrBr:kv,interpolateYlOrRd:Cv,interpolateZoom:ei,interrupt:Ni,intersection:function(e,...t){e=new S(e),t=t.map(be);e:for(const r of e)for(const a of t)if(!a.has(r)){e.delete(r);continue e}return e},interval:function(e,t,r){var a=new Ci,i=t;return null==t?(a.restart(e,t,r),a):(a._restart=a.restart,a.restart=function(e,t,r){t=+t,r=null==r?ki():+r,a._restart((function n(o){o+=i,a._restart(n,i+=t,r),e(o)}),t,r)},a.restart(e,t,r),a)},isoFormat:pb,isoParse:yb,json:function(e,t){return fetch(e,t).then(nl)},lab:aa,lch:function(e,t,r,a){return 1===arguments.length?sa(e):new ha(r,t,e,null==a?1:a)},least:function(e,r=t){let a,i=!1;if(1===r.length){let n;for(const o of e){const e=r(o);(i?t(e,n)<0:0===t(e,e))&&(a=o,n=e,i=!0)}}else for(const t of e)(i?r(t,a)<0:0===r(t,t))&&(a=t,i=!0);return a},leastIndex:pe,line:xx,lineRadial:Tx,link:Ix,linkHorizontal:function(){return Ix(Hx)},linkRadial:Wx,linkVertical:function(){return Ix(Dx)},local:Ut,map:function(e,t){if("function"!=typeof e[Symbol.iterator])throw new TypeError("values is not iterable");if("function"!=typeof t)throw new TypeError("mapper is not a function");return Array.from(e,((r,a)=>t(r,a,e)))},matcher:Ve,max:ee,maxIndex:te,mean:function(e,t){let r=0,a=0;if(void 0===t)for(let t of e)null!=t&&(t=+t)>=t&&(++r,a+=t);else{let i=-1;for(let n of e)null!=(n=t(n,++i,e))&&(n=+n)>=n&&(++r,a+=n)}if(r)return a/r},median:function(e,t){return ce(e,.5,t)},medianIndex:function(e,t){return se(e,.5,t)},merge:ue,min:re,minIndex:ae,mode:function(e,t){const r=new _;if(void 0===t)for(let t of e)null!=t&&t>=t&&r.set(t,(r.get(t)||0)+1);else{let a=-1;for(let i of e)null!=(i=t(i,++a,e))&&i>=i&&r.set(i,(r.get(i)||0)+1)}let a,i=0;for(const[e,t]of r)t>i&&(i=t,a=e);return a},namespace:Ne,namespaces:Pe,nice:Z,now:ki,pack:function(){var e=null,t=1,r=1,a=Ep;function i(i){const n=Dp();return i.x=t/2,i.y=r/2,e?i.eachBefore(Up(e)).eachAfter(qp(a,.5,n)).eachBefore(Zp(1)):i.eachBefore(Up($p)).eachAfter(qp(Ep,1,n)).eachAfter(qp(a,i.r/Math.min(t,r),n)).eachBefore(Zp(Math.min(t,r)/(2*i.r))),i}return i.radius=function(t){return arguments.length?(e=Bp(t),i):e},i.size=function(e){return arguments.length?(t=+e[0],r=+e[1],i):[t,r]},i.padding=function(e){return arguments.length?(a="function"==typeof e?e:Rp(+e),i):a},i},packEnclose:function(e){return Pp(e,Dp())},packSiblings:function(e){return Yp(e,Dp()),e},pairs:function(e,t=he){const r=[];let a,i=!1;for(const n of e)i&&r.push(t(a,n)),a=n,i=!0;return r},partition:function(){var e=1,t=1,r=0,a=!1;function i(i){var n=i.height+1;return i.x0=i.y0=r,i.x1=e,i.y1=t/n,i.eachBefore(function(e,t){return function(a){a.children&&Xp(a,a.x0,e*(a.depth+1)/t,a.x1,e*(a.depth+2)/t);var i=a.x0,n=a.y0,o=a.x1-r,c=a.y1-r;o0&&(p+=h);for(null!=t?y.sort((function(e,r){return t(f[e],f[r])})):null!=r&&y.sort((function(e,t){return r(o[e],o[t])})),c=0,s=p?(g-d*v)/p:0;c0?h*s:0)+v,f[l]={data:o[l],index:c,value:h,startAngle:m,endAngle:u,padAngle:b};return f}return o.value=function(t){return arguments.length?(e="function"==typeof t?t:$v(+t),o):e},o.sortValues=function(e){return arguments.length?(t=e,r=null,o):t},o.sort=function(e){return arguments.length?(r=e,t=null,o):r},o.startAngle=function(e){return arguments.length?(a="function"==typeof e?e:$v(+e),o):a},o.endAngle=function(e){return arguments.length?(i="function"==typeof e?e:$v(+e),o):i},o.padAngle=function(e){return arguments.length?(n="function"==typeof e?e:$v(+e),o):n},o},piecewise:ui,pointRadial:Lx,pointer:Qt,pointers:function(e,t){return e.target&&(e=Zt(e),void 0===t&&(t=e.currentTarget),e=e.touches||[e]),Array.from(e,(e=>Qt(e,t)))},polygonArea:function(e){for(var t,r=-1,a=e.length,i=e[a-1],n=0;++rc!=s>c&&o<(l-r)*(c-a)/(s-a)+r&&(u=!u),l=r,s=a;return u},polygonHull:function(e){if((r=e.length)<3)return null;var t,r,a=new Array(r),i=new Array(r);for(t=0;t=0;--t)s.push(e[a[n[t]][2]]);for(t=+c;t(t=1664525*t+1013904223|0,Fy*(t>>>0))},randomLogNormal:Ay,randomLogistic:Iy,randomNormal:Sy,randomPareto:Ly,randomPoisson:Wy,randomUniform:Cy,randomWeibull:Ny,range:de,rank:function(e,r=t){if("function"!=typeof e[Symbol.iterator])throw new TypeError("values is not iterable");let a=Array.from(e);const i=new Float64Array(a.length);2!==r.length&&(a=a.map(r),r=t);const n=(e,t)=>r(a[e],a[t]);let o,c;return e=Uint32Array.from(a,((e,t)=>t)),e.sort(r===t?(e,t)=>z(a[e],a[t]):F(n)),e.forEach(((e,t)=>{const r=n(e,void 0===o?e:o);r>=0?((void 0===o||r>0)&&(o=e,c=t),i[e]=c):i[e]=NaN})),i},reduce:function(e,t,r){if("function"!=typeof t)throw new TypeError("reducer is not a function");const a=e[Symbol.iterator]();let i,n,o=-1;if(arguments.length<3){if(({done:i,value:r}=a.next()),i)return;++o}for(;({done:i,value:n}=a.next()),!i;)r=t(r,n,++o,e);return r},reverse:function(e){if("function"!=typeof e[Symbol.iterator])throw new TypeError("values is not iterable");return Array.from(e).reverse()},rgb:Hr,ribbon:function(){return No()},ribbonArrow:function(){return No(Po)},rollup:D,rollups:P,scaleBand:Vy,scaleDiverging:function e(){var t=af(kb()(Uy));return t.copy=function(){return vb(t,e())},Oy.apply(t,arguments)},scaleDivergingLog:function e(){var t=df(kb()).domain([.1,1,10]);return t.copy=function(){return vb(t,e()).base(t.base())},Oy.apply(t,arguments)},scaleDivergingPow:wb,scaleDivergingSqrt:function(){return wb.apply(null,arguments).exponent(.5)},scaleDivergingSymlog:function e(){var t=ff(kb());return t.copy=function(){return vb(t,e()).constant(t.constant())},Oy.apply(t,arguments)},scaleIdentity:function e(t){var r;function a(e){return null==e||isNaN(e=+e)?r:e}return a.invert=a,a.domain=a.range=function(e){return arguments.length?(t=Array.from(e,Yy),a):t.slice()},a.unknown=function(e){return arguments.length?(r=e,a):r},a.copy=function(){return e(t).unknown(r)},t=arguments.length?Array.from(t,Yy):[0,1],af(a)},scaleImplicit:Ky,scaleLinear:function e(){var t=tf();return t.copy=function(){return Xy(t,e())},zy.apply(t,arguments),af(t)},scaleLog:function e(){const t=df(ef()).domain([1,10]);return t.copy=()=>Xy(t,e()).base(t.base()),zy.apply(t,arguments),t},scaleOrdinal:Jy,scalePoint:function(){return jy(Vy.apply(null,arguments).paddingInner(1))},scalePow:xf,scaleQuantile:function e(){var r,a=[],i=[],n=[];function o(){var e=0,t=Math.max(1,i.length);for(n=new Array(t-1);++e0?n[t-1]:a[0],t=i?[n[i-1],a]:[n[t-1],n[t]]},l.unknown=function(e){return arguments.length?(t=e,l):l},l.thresholds=function(){return n.slice()},l.copy=function(){return e().domain([r,a]).range(o).unknown(t)},zy.apply(af(l),arguments)},scaleRadial:function e(){var t,r=tf(),a=[0,1],i=!1;function n(e){var a=function(e){return Math.sign(e)*Math.sqrt(Math.abs(e))}(r(e));return isNaN(a)?t:i?Math.round(a):a}return n.invert=function(e){return r.invert(kf(e))},n.domain=function(e){return arguments.length?(r.domain(e),n):r.domain()},n.range=function(e){return arguments.length?(r.range((a=Array.from(e,Yy)).map(kf)),n):a.slice()},n.rangeRound=function(e){return n.range(e).round(!0)},n.round=function(e){return arguments.length?(i=!!e,n):i},n.clamp=function(e){return arguments.length?(r.clamp(e),n):r.clamp()},n.unknown=function(e){return arguments.length?(t=e,n):t},n.copy=function(){return e(r.domain(),a).round(i).clamp(r.clamp()).unknown(t)},zy.apply(n,arguments),af(n)},scaleSequential:function e(){var t=af(bb()(Uy));return t.copy=function(){return vb(t,e())},Oy.apply(t,arguments)},scaleSequentialLog:function e(){var t=df(bb()).domain([1,10]);return t.copy=function(){return vb(t,e()).base(t.base())},Oy.apply(t,arguments)},scaleSequentialPow:xb,scaleSequentialQuantile:function e(){var r=[],a=Uy;function i(e){if(null!=e&&!isNaN(e=+e))return a((c(r,e,1)-1)/(r.length-1))}return i.domain=function(e){if(!arguments.length)return r.slice();r=[];for(let t of e)null==t||isNaN(t=+t)||r.push(t);return r.sort(t),i},i.interpolator=function(e){return arguments.length?(a=e,i):a},i.range=function(){return r.map(((e,t)=>a(t/(r.length-1))))},i.quantiles=function(e){return Array.from({length:e+1},((t,a)=>ce(r,a/e)))},i.copy=function(){return e(a).domain(r)},Oy.apply(i,arguments)},scaleSequentialSqrt:function(){return xb.apply(null,arguments).exponent(.5)},scaleSequentialSymlog:function e(){var t=ff(bb());return t.copy=function(){return vb(t,e()).constant(t.constant())},Oy.apply(t,arguments)},scaleSqrt:function(){return xf.apply(null,arguments).exponent(.5)},scaleSymlog:function e(){var t=ff(ef());return t.copy=function(){return Xy(t,e()).constant(t.constant())},zy.apply(t,arguments)},scaleThreshold:function e(){var t,r=[.5],a=[0,1],i=1;function n(e){return null!=e&&e<=e?a[c(r,e,0,i)]:t}return n.domain=function(e){return arguments.length?(r=Array.from(e),i=Math.min(r.length,a.length-1),n):r.slice()},n.range=function(e){return arguments.length?(a=Array.from(e),i=Math.min(r.length,a.length-1),n):a.slice()},n.invertExtent=function(e){var t=a.indexOf(e);return[r[t-1],r[t]]},n.unknown=function(e){return arguments.length?(t=e,n):t},n.copy=function(){return e().domain(r).range(a).unknown(t)},zy.apply(n,arguments)},scaleTime:function(){return zy.apply(gb(Gm,Im,Lm,Am,Zf,Jf,Ff,Nf,Df,Jm).domain([new Date(2e3,0,1),new Date(2e3,0,2)]),arguments)},scaleUtc:function(){return zy.apply(gb(Pm,Nm,Rm,Tm,dm,jf,Of,If,Df,jm).domain([Date.UTC(2e3,0,1),Date.UTC(2e3,0,2)]),arguments)},scan:function(e,t){const r=pe(e,t);return r<0?void 0:r},schemeAccent:Sb,schemeBlues:_v,schemeBrBG:Nb,schemeBuGn:ev,schemeBuPu:rv,schemeCategory10:_b,schemeDark2:Ab,schemeGnBu:iv,schemeGreens:Av,schemeGreys:Tv,schemeObservable10:Mb,schemeOrRd:ov,schemeOranges:Dv,schemePRGn:Ib,schemePaired:Tb,schemePastel1:Bb,schemePastel2:Lb,schemePiYG:Fb,schemePuBu:uv,schemePuBuGn:lv,schemePuOr:Ob,schemePuRd:dv,schemePurples:Lv,schemeRdBu:Jb,schemeRdGy:jb,schemeRdPu:yv,schemeRdYlBu:$b,schemeRdYlGn:qb,schemeReds:Rv,schemeSet1:Eb,schemeSet2:Rb,schemeSet3:Hb,schemeSpectral:Qb,schemeTableau10:Db,schemeYlGn:bv,schemeYlGnBu:mv,schemeYlOrBr:xv,schemeYlOrRd:wv,select:jt,selectAll:function(e){return"string"==typeof e?new Jt([document.querySelectorAll(e)],[document.documentElement]):new Jt([Oe(e)],Kt)},selection:Vt,selector:ze,selectorAll:Je,shuffle:ye,shuffler:fe,some:function(e,t){if("function"!=typeof t)throw new TypeError("test is not a function");let r=-1;for(const a of e)if(t(a,++r,e))return!0;return!1},sort:W,stack:function(){var e=$v([]),t=Zk,r=qk,a=Qk;function i(i){var n,o,c=Array.from(e.apply(this,arguments),Xk),l=c.length,s=-1;for(const e of i)for(n=0,++s;n0)for(var r,a,i,n,o,c,l=0,s=e[t[0]].length;l0?(a[0]=n,a[1]=n+=i):i<0?(a[1]=o,a[0]=o+=i):(a[0]=0,a[1]=i)},stackOffsetExpand:function(e,t){if((a=e.length)>0){for(var r,a,i,n=0,o=e[0].length;n0){for(var r,a=0,i=e[t[0]],n=i.length;a0&&(a=(r=e[t[0]]).length)>0){for(var r,a,i,n=0,o=1;ofunction(e){e=`${e}`;let t=e.length;oy(e,t-1)&&!oy(e,t-2)&&(e=e.slice(0,-1));return"/"===e[0]?e:`/${e}`}(e(t,r,a)))),r=t.map(ny),i=new Set(t).add("");for(const e of r)i.has(e)||(i.add(e),t.push(e),r.push(ny(e)),d.push(ry));p=(e,r)=>t[r],y=(e,t)=>r[t]}for(o=0,i=d.length;o=0&&(s=d[e]).data===ry;--e)s.data=null}if(c.parent=ey,c.eachBefore((function(e){e.depth=e.parent.depth+1,--i})).eachBefore(Mp),c.parent=null,i>0)throw new Error("cycle");return c}return a.id=function(e){return arguments.length?(t=Bp(e),a):t},a.parentId=function(e){return arguments.length?(r=Bp(e),a):r},a.path=function(t){return arguments.length?(e=Bp(t),a):e},a},style:yt,subset:function(e,t){return ve(t,e)},sum:function(e,t){let r=0;if(void 0===t)for(let t of e)(t=+t)&&(r+=t);else{let a=-1;for(let i of e)(i=+t(i,++a,e))&&(r+=i)}return r},superset:ve,svg:sl,symbol:pk,symbolAsterisk:zx,symbolCircle:Ox,symbolCross:Kx,symbolDiamond:jx,symbolDiamond2:Yx,symbolPlus:$x,symbolSquare:Ux,symbolSquare2:qx,symbolStar:ek,symbolTimes:uk,symbolTriangle:rk,symbolTriangle2:ik,symbolWye:sk,symbolX:uk,symbols:hk,symbolsFill:hk,symbolsStroke:dk,text:tl,thresholdFreedmanDiaconis:function(e,t,r){const a=m(e),i=ce(e,.75)-ce(e,.25);return a&&i?Math.ceil((r-t)/(2*i*Math.pow(a,-1/3))):1},thresholdScott:function(e,t,r){const a=m(e),i=k(e);return a&&i?Math.ceil((r-t)*Math.cbrt(a)/(3.49*i)):1},thresholdSturges:Q,tickFormat:rf,tickIncrement:U,tickStep:q,ticks:$,timeDay:Jf,timeDays:Vf,get timeFormat(){return Jm},timeFormatDefaultLocale:hb,timeFormatLocale:Om,timeFriday:rm,timeFridays:sm,timeHour:Ff,timeHours:zf,timeInterval:_f,timeMillisecond:Sf,timeMilliseconds:Af,timeMinute:Nf,timeMinutes:Gf,timeMonday:Qf,timeMondays:nm,timeMonth:Am,timeMonths:Mm,get timeParse(){return Vm},timeSaturday:am,timeSaturdays:um,timeSecond:Df,timeSeconds:Pf,timeSunday:Zf,timeSundays:im,timeThursday:tm,timeThursdays:lm,timeTickInterval:Im,timeTicks:Gm,timeTuesday:Xf,timeTuesdays:om,timeWednesday:em,timeWednesdays:cm,timeWeek:Zf,timeWeeks:im,timeYear:Lm,timeYears:Em,timeout:Bi,timer:_i,timerFlush:Si,transition:an,transpose:me,tree:py,treemap:function(){var e=gy,t=!1,r=1,a=1,i=[0],n=Ep,o=Ep,c=Ep,l=Ep,s=Ep;function u(e){return e.x0=e.y0=0,e.x1=r,e.y1=a,e.eachBefore(h),i=[0],t&&e.eachBefore(Qp),e}function h(t){var r=i[t.depth],a=t.x0+r,u=t.y0+r,h=t.x1-r,d=t.y1-r;h=r-1){var u=c[t];return u.x0=i,u.y0=n,u.x1=o,void(u.y1=l)}var h=s[t],d=a/2+h,p=t+1,y=r-1;for(;p>>1;s[f]l-n){var b=a?(i*g+o*m)/a:o;e(t,p,m,i,n,b,l),e(p,r,g,b,n,o,l)}else{var v=a?(n*g+l*m)/a:l;e(t,p,m,i,n,o,v),e(p,r,g,i,v,o,l)}}(0,l,e.value,t,r,a,i)},treemapDice:Xp,treemapResquarify:by,treemapSlice:yy,treemapSliceDice:function(e,t,r,a,i){(1&e.depth?yy:Xp)(e,t,r,a,i)},treemapSquarify:gy,tsv:il,tsvFormat:jc,tsvFormatBody:Yc,tsvFormatRow:Uc,tsvFormatRows:$c,tsvFormatValue:qc,tsvParse:Jc,tsvParseRows:Vc,union:function(...e){const t=new S;for(const r of e)for(const e of r)t.add(e);return t},unixDay:$f,unixDays:Uf,utcDay:jf,utcDays:Yf,get utcFormat(){return jm},utcFriday:gm,utcFridays:_m,utcHour:Of,utcHours:Kf,utcMillisecond:Sf,utcMilliseconds:Af,utcMinute:If,utcMinutes:Wf,utcMonday:pm,utcMondays:xm,utcMonth:Tm,utcMonths:Bm,get utcParse(){return Ym},utcSaturday:bm,utcSaturdays:Sm,utcSecond:Df,utcSeconds:Pf,utcSunday:dm,utcSundays:vm,utcThursday:mm,utcThursdays:Cm,utcTickInterval:Nm,utcTicks:Pm,utcTuesday:ym,utcTuesdays:km,utcWednesday:fm,utcWednesdays:wm,utcWeek:dm,utcWeeks:vm,utcYear:Rm,utcYears:Hm,variance:x,window:ut,xml:cl,zip:function(){return me(arguments)},zoom:gw,zoomIdentity:cw,zoomTransform:lw});class vw extends HTMLDivElement{main_svg=null;tree_data={};static observeAttributes=["backgroundPattern","backgroundSize","customBackground"];backgroundPattern=null;backgroundSize=void 0;customBackground=void 0;backgroundPosition="center";constructor(){super()}connectedCallback(){this.className="ts-root-wrapper-element tree-spider",this.backgroundPattern=this.getAttribute("backgroundPattern")||"default",this.backgroundSize=this.getAttribute("backgroundSize"),this.backgroundSize="undefined"==this.backgroundSize?void 0:this.backgroundSize,this.customBackground=this.getAttribute("customBackground"),this.customBackground="undefined"==this.customBackground?void 0:this.customBackground,this.backgroundPosition=this.getAttribute("backgroundPosition"),this.backgroundPosition="undefined"==this.backgroundPosition?void 0:this.backgroundPosition,this.setCanvasBg()}setCanvasBg(){const e={default:()=>this.defaultDotsPatternBg(),flux:()=>this.fluxPatternBg(),quad:()=>this.quadPatternBg(),blurry:()=>this.blurryBg(),chaos:()=>this.chaosPatternBg(),flurry:()=>this.flurryPatternBg(),spiral:()=>this.spiralPatternBg(),whirling:()=>this.whirlingPatternBg(),replicate:()=>this.replicatePatternBg(),scribble:()=>this.scribblePatternBg(),squiggly:()=>this.squigglyPatternBg(),gyrrate:()=>this.gyrratePatternBg(),leaves:()=>this.leavesPatternBg(),spot:()=>this.spotPatternBg()};if("none"==this.backgroundPattern)return;const t=this.customBackground||e[this.backgroundPattern]();let r;r="object"==typeof t?(new XMLSerializer).serializeToString(t.node()):t;const a=encodeURIComponent(r).replace(/\(/g,"%28").replace(/\)/g,"%29");null!=this.backgroundSize&&(this.style.backgroundSize=this.backgroundSize||"40%"),null!=this.backgroundPosition&&(this.style.backgroundPosition=this.backgroundPosition||"center");const i="data:image/svg+xml;charset=utf-8,"+a;this.style.setProperty("--ts-root-el-bg-image","url("+i+")")}defaultDotsPatternBg(){const e=Yt("svg").attr("width","20").attr("height","20");return e.append("rect").attr("width","20").attr("height","20").attr("fill","transparent"),e.append("circle").attr("cx","10").attr("cy","10").attr("r","1").attr("fill","rgb(150,150,150)"),this.style.backgroundSize=this.backgroundSize||"2%",e}fluxPatternBg(){return this.style.backgroundSize=this.backgroundSize||"20%",e.flux}quadPatternBg(){return this.style.backgroundSize=this.backgroundSize||"20%",e.quad}blurryBg(){return this.style.backgroundSize="20%",this.style.backgroundPosition=this.backgroundPosition||"center",e.blurry}chaosPatternBg(){return this.style.backgroundSize=this.backgroundSize||"50%",this.style.backgroundPosition=this.backgroundPosition||"center",e.chaos}spiralPatternBg(){return this.style.backgroundSize=this.backgroundSize||"100%",this.style.backgroundPosition=this.backgroundPosition||"center",e.spiral}flurryPatternBg(){return this.style.backgroundSize=this.backgroundSize||"30%",this.style.backgroundPosition=this.backgroundPosition||"center",e.flurry}whirlingPatternBg(){return this.style.backgroundSize=this.backgroundSize||"20%",this.style.backgroundPosition=this.backgroundPosition||"center",e.whirling}replicatePatternBg(){return this.style.backgroundSize=this.backgroundSize||"100%",this.style.backgroundPosition=this.backgroundPosition||"center",e.replicate}scribblePatternBg(){return this.style.backgroundSize=this.backgroundSize||"30%",this.style.backgroundPosition=this.backgroundPosition||"center",e.scribble}squigglyPatternBg(){return this.style.backgroundSize=this.backgroundSize||"20%",this.style.backgroundPosition=this.backgroundPosition||"center",e.squiggly}gyrratePatternBg(){return this.style.backgroundSize=this.backgroundSize||"100%",this.style.backgroundPosition=this.backgroundPosition||"center",e.gyrate}leavesPatternBg(){return this.style.backgroundSize=this.backgroundSize||"40%",this.style.backgroundPosition=this.backgroundPosition||"center",e.leaves}reflectionPatternBg(){return this.style.backgroundSize=this.backgroundSize||"20%",this.style.backgroundPosition=this.backgroundPosition||"center",e.reflection}spotPatternBg(){return this.style.backgroundSize=this.backgroundSize||"40%",this.style.backgroundPosition=this.backgroundPosition||"center",e.spot}}window.customElements.define("ts-root-container",vw,{extends:"div"});class xw extends HTMLDivElement{constructor(){super()}connectedCallback(){}}window.customElements.define("ts-element",xw,{extends:"div"});var kw={airline:{airline:[{name:"Aegean Airlines",iataCode:"A3"},{name:"Aeroflot",iataCode:"SU"},{name:"Aerolineas Argentinas",iataCode:"AR"},{name:"Aeromexico",iataCode:"AM"},{name:"Air Algerie",iataCode:"AH"},{name:"Air Arabia",iataCode:"G9"},{name:"Air Canada",iataCode:"AC"},{name:"Air China",iataCode:"CA"},{name:"Air Europa",iataCode:"UX"},{name:"Air France-KLM",iataCode:"AF"},{name:"Air India",iataCode:"AI"},{name:"Air Mauritius",iataCode:"MK"},{name:"Air New Zealand",iataCode:"NZ"},{name:"Air Niugini",iataCode:"PX"},{name:"Air Tahiti",iataCode:"VT"},{name:"Air Tahiti Nui",iataCode:"TN"},{name:"Air Transat",iataCode:"TS"},{name:"AirAsia X",iataCode:"D7"},{name:"AirAsia",iataCode:"AK"},{name:"Aircalin",iataCode:"SB"},{name:"Alaska Airlines",iataCode:"AS"},{name:"Alitalia",iataCode:"AZ"},{name:"All Nippon Airways",iataCode:"NH"},{name:"Allegiant Air",iataCode:"G4"},{name:"American Airlines",iataCode:"AA"},{name:"Asiana Airlines",iataCode:"OZ"},{name:"Avianca",iataCode:"AV"},{name:"Azul Linhas Aereas Brasileiras",iataCode:"AD"},{name:"Azur Air",iataCode:"ZF"},{name:"Beijing Capital Airlines",iataCode:"JD"},{name:"Boliviana de Aviacion",iataCode:"OB"},{name:"British Airways",iataCode:"BA"},{name:"Cathay Pacific",iataCode:"CX"},{name:"Cebu Pacific Air",iataCode:"5J"},{name:"China Airlines",iataCode:"CI"},{name:"China Eastern Airlines",iataCode:"MU"},{name:"China Southern Airlines",iataCode:"CZ"},{name:"Condor",iataCode:"DE"},{name:"Copa Airlines",iataCode:"CM"},{name:"Delta Air Lines",iataCode:"DL"},{name:"Easyfly",iataCode:"VE"},{name:"EasyJet",iataCode:"U2"},{name:"EcoJet",iataCode:"8J"},{name:"Egyptair",iataCode:"MS"},{name:"El Al",iataCode:"LY"},{name:"Emirates Airlines",iataCode:"EK"},{name:"Ethiopian Airlines",iataCode:"ET"},{name:"Etihad Airways",iataCode:"EY"},{name:"EVA Air",iataCode:"BR"},{name:"Fiji Airways",iataCode:"FJ"},{name:"Finnair",iataCode:"AY"},{name:"Flybondi",iataCode:"FO"},{name:"Flydubai",iataCode:"FZ"},{name:"FlySafair",iataCode:"FA"},{name:"Frontier Airlines",iataCode:"F9"},{name:"Garuda Indonesia",iataCode:"GA"},{name:"Go First",iataCode:"G8"},{name:"Gol Linhas Aereas Inteligentes",iataCode:"G3"},{name:"Hainan Airlines",iataCode:"HU"},{name:"Hawaiian Airlines",iataCode:"HA"},{name:"IndiGo Airlines",iataCode:"6E"},{name:"Japan Airlines",iataCode:"JL"},{name:"Jeju Air",iataCode:"7C"},{name:"Jet2",iataCode:"LS"},{name:"JetBlue Airways",iataCode:"B6"},{name:"JetSMART",iataCode:"JA"},{name:"Juneyao Airlines",iataCode:"HO"},{name:"Kenya Airways",iataCode:"KQ"},{name:"Korean Air",iataCode:"KE"},{name:"Kulula.com",iataCode:"MN"},{name:"LATAM Airlines",iataCode:"LA"},{name:"Lion Air",iataCode:"JT"},{name:"LOT Polish Airlines",iataCode:"LO"},{name:"Lufthansa",iataCode:"LH"},{name:"Libyan Airlines",iataCode:"LN"},{name:"Linea Aerea Amaszonas",iataCode:"Z8"},{name:"Malaysia Airlines",iataCode:"MH"},{name:"Nordwind Airlines",iataCode:"N4"},{name:"Norwegian Air Shuttle",iataCode:"DY"},{name:"Oman Air",iataCode:"WY"},{name:"Pakistan International Airlines",iataCode:"PK"},{name:"Pegasus Airlines",iataCode:"PC"},{name:"Philippine Airlines",iataCode:"PR"},{name:"Qantas Group",iataCode:"QF"},{name:"Qatar Airways",iataCode:"QR"},{name:"Republic Airways",iataCode:"YX"},{name:"Royal Air Maroc",iataCode:"AT"},{name:"Ryanair",iataCode:"FR"},{name:"S7 Airlines",iataCode:"S7"},{name:"SAS",iataCode:"SK"},{name:"Satena",iataCode:"9R"},{name:"Saudia",iataCode:"SV"},{name:"Shandong Airlines",iataCode:"SC"},{name:"Sichuan Airlines",iataCode:"3U"},{name:"Singapore Airlines",iataCode:"SQ"},{name:"Sky Airline",iataCode:"H2"},{name:"SkyWest Airlines",iataCode:"OO"},{name:"South African Airways",iataCode:"SA"},{name:"Southwest Airlines",iataCode:"WN"},{name:"SpiceJet",iataCode:"SG"},{name:"Spirit Airlines",iataCode:"NK"},{name:"Spring Airlines",iataCode:"9S"},{name:"SriLankan Airlines",iataCode:"UL"},{name:"Star Peru",iataCode:"2I"},{name:"Sun Country Airlines",iataCode:"SY"},{name:"SunExpress",iataCode:"XQ"},{name:"TAP Air Portugal",iataCode:"TP"},{name:"Thai AirAsia",iataCode:"FD"},{name:"Thai Airways",iataCode:"TG"},{name:"TUI Airways",iataCode:"BY"},{name:"Tunisair",iataCode:"TU"},{name:"Turkish Airlines",iataCode:"TK"},{name:"Ukraine International",iataCode:"PS"},{name:"United Airlines",iataCode:"UA"},{name:"Ural Airlines",iataCode:"U6"},{name:"VietJet Air",iataCode:"VJ"},{name:"Vietnam Airlines",iataCode:"VN"},{name:"Virgin Atlantic Airways",iataCode:"VS"},{name:"Virgin Australia",iataCode:"VA"},{name:"VivaAerobus",iataCode:"VB"},{name:"VOEPASS Linhas Aereas",iataCode:"2Z"},{name:"Volaris",iataCode:"Y4"},{name:"WestJet",iataCode:"WS"},{name:"Wingo",iataCode:"P5"},{name:"Wizz Air",iataCode:"W6"}],airplane:[{name:"Aerospatiale/BAC Concorde",iataTypeCode:"SSC"},{name:"Airbus A300",iataTypeCode:"AB3"},{name:"Airbus A310",iataTypeCode:"310"},{name:"Airbus A310-200",iataTypeCode:"312"},{name:"Airbus A310-300",iataTypeCode:"313"},{name:"Airbus A318",iataTypeCode:"318"},{name:"Airbus A319",iataTypeCode:"319"},{name:"Airbus A319neo",iataTypeCode:"31N"},{name:"Airbus A320",iataTypeCode:"320"},{name:"Airbus A320neo",iataTypeCode:"32N"},{name:"Airbus A321",iataTypeCode:"321"},{name:"Airbus A321neo",iataTypeCode:"32Q"},{name:"Airbus A330",iataTypeCode:"330"},{name:"Airbus A330-200",iataTypeCode:"332"},{name:"Airbus A330-300",iataTypeCode:"333"},{name:"Airbus A330-800neo",iataTypeCode:"338"},{name:"Airbus A330-900neo",iataTypeCode:"339"},{name:"Airbus A340",iataTypeCode:"340"},{name:"Airbus A340-200",iataTypeCode:"342"},{name:"Airbus A340-300",iataTypeCode:"343"},{name:"Airbus A340-500",iataTypeCode:"345"},{name:"Airbus A340-600",iataTypeCode:"346"},{name:"Airbus A350",iataTypeCode:"350"},{name:"Airbus A350-900",iataTypeCode:"359"},{name:"Airbus A350-1000",iataTypeCode:"351"},{name:"Airbus A380",iataTypeCode:"380"},{name:"Airbus A380-800",iataTypeCode:"388"},{name:"Antonov An-12",iataTypeCode:"ANF"},{name:"Antonov An-24",iataTypeCode:"AN4"},{name:"Antonov An-26",iataTypeCode:"A26"},{name:"Antonov An-28",iataTypeCode:"A28"},{name:"Antonov An-30",iataTypeCode:"A30"},{name:"Antonov An-32",iataTypeCode:"A32"},{name:"Antonov An-72",iataTypeCode:"AN7"},{name:"Antonov An-124 Ruslan",iataTypeCode:"A4F"},{name:"Antonov An-140",iataTypeCode:"A40"},{name:"Antonov An-148",iataTypeCode:"A81"},{name:"Antonov An-158",iataTypeCode:"A58"},{name:"Antonov An-225 Mriya",iataTypeCode:"A5F"},{name:"Boeing 707",iataTypeCode:"703"},{name:"Boeing 717",iataTypeCode:"717"},{name:"Boeing 720B",iataTypeCode:"B72"},{name:"Boeing 727",iataTypeCode:"727"},{name:"Boeing 727-100",iataTypeCode:"721"},{name:"Boeing 727-200",iataTypeCode:"722"},{name:"Boeing 737 MAX 7",iataTypeCode:"7M7"},{name:"Boeing 737 MAX 8",iataTypeCode:"7M8"},{name:"Boeing 737 MAX 9",iataTypeCode:"7M9"},{name:"Boeing 737 MAX 10",iataTypeCode:"7MJ"},{name:"Boeing 737",iataTypeCode:"737"},{name:"Boeing 737-100",iataTypeCode:"731"},{name:"Boeing 737-200",iataTypeCode:"732"},{name:"Boeing 737-300",iataTypeCode:"733"},{name:"Boeing 737-400",iataTypeCode:"734"},{name:"Boeing 737-500",iataTypeCode:"735"},{name:"Boeing 737-600",iataTypeCode:"736"},{name:"Boeing 737-700",iataTypeCode:"73G"},{name:"Boeing 737-800",iataTypeCode:"738"},{name:"Boeing 737-900",iataTypeCode:"739"},{name:"Boeing 747",iataTypeCode:"747"},{name:"Boeing 747-100",iataTypeCode:"741"},{name:"Boeing 747-200",iataTypeCode:"742"},{name:"Boeing 747-300",iataTypeCode:"743"},{name:"Boeing 747-400",iataTypeCode:"744"},{name:"Boeing 747-400D",iataTypeCode:"74J"},{name:"Boeing 747-8",iataTypeCode:"748"},{name:"Boeing 747SP",iataTypeCode:"74L"},{name:"Boeing 747SR",iataTypeCode:"74R"},{name:"Boeing 757",iataTypeCode:"757"},{name:"Boeing 757-200",iataTypeCode:"752"},{name:"Boeing 757-300",iataTypeCode:"753"},{name:"Boeing 767",iataTypeCode:"767"},{name:"Boeing 767-200",iataTypeCode:"762"},{name:"Boeing 767-300",iataTypeCode:"763"},{name:"Boeing 767-400",iataTypeCode:"764"},{name:"Boeing 777",iataTypeCode:"777"},{name:"Boeing 777-200",iataTypeCode:"772"},{name:"Boeing 777-200LR",iataTypeCode:"77L"},{name:"Boeing 777-300",iataTypeCode:"773"},{name:"Boeing 777-300ER",iataTypeCode:"77W"},{name:"Boeing 787",iataTypeCode:"787"},{name:"Boeing 787-8",iataTypeCode:"788"},{name:"Boeing 787-9",iataTypeCode:"789"},{name:"Boeing 787-10",iataTypeCode:"781"},{name:"Canadair Challenger",iataTypeCode:"CCJ"},{name:"Canadair CL-44",iataTypeCode:"CL4"},{name:"Canadair Regional Jet 100",iataTypeCode:"CR1"},{name:"Canadair Regional Jet 200",iataTypeCode:"CR2"},{name:"Canadair Regional Jet 700",iataTypeCode:"CR7"},{name:"Canadair Regional Jet 705",iataTypeCode:"CRA"},{name:"Canadair Regional Jet 900",iataTypeCode:"CR9"},{name:"Canadair Regional Jet 1000",iataTypeCode:"CRK"},{name:"De Havilland Canada DHC-2 Beaver",iataTypeCode:"DHP"},{name:"De Havilland Canada DHC-2 Turbo-Beaver",iataTypeCode:"DHR"},{name:"De Havilland Canada DHC-3 Otter",iataTypeCode:"DHL"},{name:"De Havilland Canada DHC-4 Caribou",iataTypeCode:"DHC"},{name:"De Havilland Canada DHC-6 Twin Otter",iataTypeCode:"DHT"},{name:"De Havilland Canada DHC-7 Dash 7",iataTypeCode:"DH7"},{name:"De Havilland Canada DHC-8-100 Dash 8 / 8Q",iataTypeCode:"DH1"},{name:"De Havilland Canada DHC-8-200 Dash 8 / 8Q",iataTypeCode:"DH2"},{name:"De Havilland Canada DHC-8-300 Dash 8 / 8Q",iataTypeCode:"DH3"},{name:"De Havilland Canada DHC-8-400 Dash 8Q",iataTypeCode:"DH4"},{name:"De Havilland DH.104 Dove",iataTypeCode:"DHD"},{name:"De Havilland DH.114 Heron",iataTypeCode:"DHH"},{name:"Douglas DC-3",iataTypeCode:"D3F"},{name:"Douglas DC-6",iataTypeCode:"D6F"},{name:"Douglas DC-8-50",iataTypeCode:"D8T"},{name:"Douglas DC-8-62",iataTypeCode:"D8L"},{name:"Douglas DC-8-72",iataTypeCode:"D8Q"},{name:"Douglas DC-9-10",iataTypeCode:"D91"},{name:"Douglas DC-9-20",iataTypeCode:"D92"},{name:"Douglas DC-9-30",iataTypeCode:"D93"},{name:"Douglas DC-9-40",iataTypeCode:"D94"},{name:"Douglas DC-9-50",iataTypeCode:"D95"},{name:"Douglas DC-10",iataTypeCode:"D10"},{name:"Douglas DC-10-10",iataTypeCode:"D1X"},{name:"Douglas DC-10-30",iataTypeCode:"D1Y"},{name:"Embraer 170",iataTypeCode:"E70"},{name:"Embraer 175",iataTypeCode:"E75"},{name:"Embraer 190",iataTypeCode:"E90"},{name:"Embraer 195",iataTypeCode:"E95"},{name:"Embraer E190-E2",iataTypeCode:"290"},{name:"Embraer E195-E2",iataTypeCode:"295"},{name:"Embraer EMB.110 Bandeirante",iataTypeCode:"EMB"},{name:"Embraer EMB.120 Brasilia",iataTypeCode:"EM2"},{name:"Embraer Legacy 600",iataTypeCode:"ER3"},{name:"Embraer Phenom 100",iataTypeCode:"EP1"},{name:"Embraer Phenom 300",iataTypeCode:"EP3"},{name:"Embraer RJ135",iataTypeCode:"ER3"},{name:"Embraer RJ140",iataTypeCode:"ERD"},{name:"Embraer RJ145 Amazon",iataTypeCode:"ER4"},{name:"Ilyushin IL18",iataTypeCode:"IL8"},{name:"Ilyushin IL62",iataTypeCode:"IL6"},{name:"Ilyushin IL76",iataTypeCode:"IL7"},{name:"Ilyushin IL86",iataTypeCode:"ILW"},{name:"Ilyushin IL96-300",iataTypeCode:"I93"},{name:"Ilyushin IL114",iataTypeCode:"I14"},{name:"Lockheed L-182 / 282 / 382 (L-100) Hercules",iataTypeCode:"LOH"},{name:"Lockheed L-188 Electra",iataTypeCode:"LOE"},{name:"Lockheed L-1011 Tristar",iataTypeCode:"L10"},{name:"Lockheed L-1049 Super Constellation",iataTypeCode:"L49"},{name:"McDonnell Douglas MD11",iataTypeCode:"M11"},{name:"McDonnell Douglas MD80",iataTypeCode:"M80"},{name:"McDonnell Douglas MD81",iataTypeCode:"M81"},{name:"McDonnell Douglas MD82",iataTypeCode:"M82"},{name:"McDonnell Douglas MD83",iataTypeCode:"M83"},{name:"McDonnell Douglas MD87",iataTypeCode:"M87"},{name:"McDonnell Douglas MD88",iataTypeCode:"M88"},{name:"McDonnell Douglas MD90",iataTypeCode:"M90"},{name:"Sukhoi Superjet 100-95",iataTypeCode:"SU9"},{name:"Tupolev Tu-134",iataTypeCode:"TU3"},{name:"Tupolev Tu-154",iataTypeCode:"TU5"},{name:"Tupolev Tu-204",iataTypeCode:"T20"},{name:"Yakovlev Yak-40",iataTypeCode:"YK4"},{name:"Yakovlev Yak-42",iataTypeCode:"YK2"}],airport:[{name:"Adelaide International Airport",iataCode:"ADL"},{name:"Adolfo Suarez Madrid-Barajas Airport",iataCode:"MAD"},{name:"Aeroparque Jorge Newbery Airport",iataCode:"AEP"},{name:"Afonso Pena International Airport",iataCode:"CWB"},{name:"Alfonso Bonilla Aragon International Airport",iataCode:"CLO"},{name:"Amsterdam Airport Schiphol",iataCode:"AMS"},{name:"Arturo Merino Benitez International Airport",iataCode:"SCL"},{name:"Auckland International Airport",iataCode:"AKL"},{name:"Beijing Capital International Airport",iataCode:"PEK"},{name:"Belem Val de Cans International Airport",iataCode:"BEL"},{name:"Belo Horizonte Tancredo Neves International Airport",iataCode:"CNF"},{name:"Berlin-Tegel Airport",iataCode:"TXL"},{name:"Bole International Airport",iataCode:"ADD"},{name:"Brasilia-Presidente Juscelino Kubitschek International Airport",iataCode:"BSB"},{name:"Brisbane International Airport",iataCode:"BNE"},{name:"Brussels Airport",iataCode:"BRU"},{name:"Cairns Airport",iataCode:"CNS"},{name:"Cairo International Airport",iataCode:"CAI"},{name:"Canberra Airport",iataCode:"CBR"},{name:"Capetown International Airport",iataCode:"CPT"},{name:"Charles de Gaulle International Airport",iataCode:"CDG"},{name:"Charlotte Douglas International Airport",iataCode:"CLT"},{name:"Chengdu Shuangliu International Airport",iataCode:"CTU"},{name:"Chhatrapati Shivaji International Airport",iataCode:"BOM"},{name:"Chicago O'Hare International Airport",iataCode:"ORD"},{name:"Chongqing Jiangbei International Airport",iataCode:"CKG"},{name:"Christchurch International Airport",iataCode:"CHC"},{name:"Copenhagen Kastrup Airport",iataCode:"CPH"},{name:"Dallas Fort Worth International Airport",iataCode:"DFW"},{name:"Daniel K. Inouye International Airport",iataCode:"HNL"},{name:"Denver International Airport",iataCode:"DEN"},{name:"Don Mueang International Airport",iataCode:"DMK"},{name:"Dubai International Airport",iataCode:"DXB"},{name:"Dublin Airport",iataCode:"DUB"},{name:"Dusseldorf Airport",iataCode:"DUS"},{name:"El Dorado International Airport",iataCode:"BOG"},{name:"Eleftherios Venizelos International Airport",iataCode:"ATH"},{name:"Faa'a International Airport",iataCode:"PPT"},{name:"Fort Lauderdale Hollywood International Airport",iataCode:"FLL"},{name:"Fortaleza Pinto Martins International Airport",iataCode:"FOR"},{name:"Frankfurt am Main Airport",iataCode:"FRA"},{name:"George Bush Intercontinental Houston Airport",iataCode:"IAH"},{name:"Gold Coast Airport",iataCode:"OOL"},{name:"Guarulhos - Governador Andre Franco Montoro International Airport",iataCode:"GRU"},{name:"Hartsfield-Jackson Atlanta International Airport",iataCode:"ATL"},{name:"Helsinki Vantaa Airport",iataCode:"HEL"},{name:"Hobart International Airport",iataCode:"HBA"},{name:"Hong Kong International Airport",iataCode:"HKG"},{name:"Houari Boumediene Airport",iataCode:"ALG"},{name:"Hurgada International Airport",iataCode:"HRG"},{name:"Incheon International Airport",iataCode:"ICN"},{name:"Indira Gandhi International Airport",iataCode:"DEL"},{name:"Istanbul Airport",iataCode:"IST"},{name:"Jacksons International Airport",iataCode:"POM"},{name:"Jeju International Airport",iataCode:"CJU"},{name:"John F Kennedy International Airport",iataCode:"JFK"},{name:"Jorge Chavez International Airport",iataCode:"LIM"},{name:"Jose Maria Cordova International Airport",iataCode:"MDE"},{name:"Josep Tarradellas Barcelona-El Prat Airport",iataCode:"BCN"},{name:"Kahului Airport",iataCode:"OGG"},{name:"King Abdulaziz International Airport",iataCode:"JED"},{name:"Kuala Lumpur International Airport",iataCode:"KUL"},{name:"Kunming Changshui International Airport",iataCode:"KMG"},{name:"La Tontouta International Airport",iataCode:"NOU"},{name:"Leonardo da Vinci-Fiumicino Airport",iataCode:"FCO"},{name:"London Heathrow Airport",iataCode:"LHR"},{name:"Los Angeles International Airport",iataCode:"LAX"},{name:"McCarran International Airport",iataCode:"LAS"},{name:"Melbourne International Airport",iataCode:"MEL"},{name:"Mexico City International Airport",iataCode:"MEX"},{name:"Miami International Airport",iataCode:"MIA"},{name:"Ministro Pistarini International Airport",iataCode:"EZE"},{name:"Minneapolis-St Paul International/Wold-Chamberlain Airport",iataCode:"MSP"},{name:"Mohammed V International Airport",iataCode:"CMN"},{name:"Moscow Domodedovo Airport",iataCode:"DME"},{name:"Munich Airport",iataCode:"MUC"},{name:"Murtala Muhammed International Airport",iataCode:"LOS"},{name:"Nadi International Airport",iataCode:"NAN"},{name:"Nairobi Jomo Kenyatta International Airport",iataCode:"NBO"},{name:"Narita International Airport",iataCode:"NRT"},{name:"Newark Liberty International Airport",iataCode:"EWR"},{name:"Ninoy Aquino International Airport",iataCode:"MNL"},{name:"Noumea Magenta Airport",iataCode:"GEA"},{name:"O. R. Tambo International Airport",iataCode:"JNB"},{name:"Orlando International Airport",iataCode:"MCO"},{name:"Oslo Lufthavn",iataCode:"OSL"},{name:"Perth Airport",iataCode:"PER"},{name:"Phoenix Sky Harbor International Airport",iataCode:"PHX"},{name:"Recife Guararapes-Gilberto Freyre International Airport",iataCode:"REC"},{name:"Rio de Janeiro Galeao International Airport",iataCode:"GIG"},{name:"Salgado Filho International Airport",iataCode:"POA"},{name:"Salvador Deputado Luis Eduardo Magalhaes International Airport",iataCode:"SSA"},{name:"San Francisco International Airport",iataCode:"SFO"},{name:"Santos Dumont Airport",iataCode:"SDU"},{name:"Sao Paulo-Congonhas Airport",iataCode:"CGH"},{name:"Seattle Tacoma International Airport",iataCode:"SEA"},{name:"Shanghai Hongqiao International Airport",iataCode:"SHA"},{name:"Shanghai Pudong International Airport",iataCode:"PVG"},{name:"Shenzhen Bao'an International Airport",iataCode:"SZX"},{name:"Sheremetyevo International Airport",iataCode:"SVO"},{name:"Singapore Changi Airport",iataCode:"SIN"},{name:"Soekarno-Hatta International Airport",iataCode:"CGK"},{name:'Stockholm-Arlanda Airport"',iataCode:"ARN"},{name:"Suvarnabhumi Airport",iataCode:"BKK"},{name:"Sydney Kingsford Smith International Airport",iataCode:"SYD"},{name:"Taiwan Taoyuan International Airport",iataCode:"TPE"},{name:"Tan Son Nhat International Airport",iataCode:"SGN"},{name:"Tokyo Haneda International Airport",iataCode:"HND"},{name:"Toronto Pearson International Airport",iataCode:"YYZ"},{name:"Tunis Carthage International Airport",iataCode:"TUN"},{name:"Vancouver International Airport",iataCode:"YVR"},{name:"Vienna International Airport",iataCode:"VIE"},{name:"Viracopos International Airport",iataCode:"VCP"},{name:"Vnukovo International Airport",iataCode:"VKO"},{name:"Wellington International Airport",iataCode:"WLG"},{name:"Xi'an Xianyang International Airport",iataCode:"XIY"},{name:"Zhukovsky International Airport",iataCode:"ZIA"},{name:"Zurich Airport",iataCode:"ZRH"}]},animal:{bear:["American black bear","Asian black bear","Brown bear","Giant panda","Polar bear","Sloth bear","Spectacled bear","Sun bear"],bird:["Abert's Towhee","Acadian Flycatcher","Acorn Woodpecker","Alder Flycatcher","Aleutian Tern","Allen's Hummingbird","Altamira Oriole","American Avocet","American Bittern","American Black Duck","American Coot","American Crow","American Dipper","American Golden-Plover","American Goldfinch","American Kestrel","American Oystercatcher","American Pipit","American Redstart","American Robin","American Tree Sparrow","American White Pelican","American Wigeon","American Woodcock","Ancient Murrelet","Anhinga","Anna's Hummingbird","Antillean Nighthawk","Antillean Palm Swift","Aplomado Falcon","Arctic Loon","Arctic Tern","Arctic Warbler","Ash-throated Flycatcher","Ashy Storm-Petrel","Asian Brown Flycatcher","Atlantic Puffin","Audubon's Oriole","Audubon's Shearwater","Aztec Thrush","Azure Gallinule","Bachman's Sparrow","Bachman's Warbler","Bahama Mockingbird","Bahama Swallow","Bahama Woodstar","Baikal Teal","Baird's Sandpiper","Baird's Sparrow","Bald Eagle","Baltimore Oriole","Bananaquit","Band-rumped Storm-Petrel","Band-tailed Gull","Band-tailed Pigeon","Bank Swallow","Bar-tailed Godwit","Barn Owl","Barn Swallow","Barnacle Goose","Barred Owl","Barrow's Goldeneye","Bay-breasted Warbler","Bean Goose","Bell's Vireo","Belted Kingfisher","Bendire's Thrasher","Berylline Hummingbird","Bewick's Wren","Bicknell's Thrush","Black Catbird","Black Guillemot","Black Noddy","Black Oystercatcher","Black Phoebe","Black Rail","Black Rosy-Finch","Black Scoter","Black Skimmer","Black Storm-Petrel","Black Swift","Black Tern","Black Turnstone","Black Vulture","Black-and-white Warbler","Black-backed Wagtail","Black-backed Woodpecker","Black-bellied Plover","Black-bellied Whistling-Duck","Black-billed Cuckoo","Black-billed Magpie","Black-browed Albatross","Black-capped Chickadee","Black-capped Gnatcatcher","Black-capped Petrel","Black-capped Vireo","Black-chinned Hummingbird","Black-chinned Sparrow","Black-crowned Night-Heron","Black-faced Grassquit","Black-footed Albatross","Black-headed Grosbeak","Black-headed Gull","Black-legged Kittiwake","Black-necked Stilt","Black-tailed Gnatcatcher","Black-tailed Godwit","Black-tailed Gull","Black-throated Blue Warbler","Black-throated Gray Warbler","Black-throated Green Warbler","Black-throated Sparrow","Black-vented Oriole","Black-vented Shearwater","Black-whiskered Vireo","Black-winged Stilt","Blackburnian Warbler","Blackpoll Warbler","Blue Bunting","Blue Grosbeak","Blue Grouse","Blue Jay","Blue Mockingbird","Blue-footed Booby","Blue-gray Gnatcatcher","Blue-headed Vireo","Blue-throated Hummingbird","Blue-winged Teal","Blue-winged Warbler","Bluethroat","Boat-tailed Grackle","Bobolink","Bohemian Waxwing","Bonaparte's Gull","Boreal Chickadee","Boreal Owl","Botteri's Sparrow","Brambling","Brandt's Cormorant","Brant","Brewer's Blackbird","Brewer's Sparrow","Bridled Tern","Bridled Titmouse","Bristle-thighed Curlew","Broad-billed Hummingbird","Broad-billed Sandpiper","Broad-tailed Hummingbird","Broad-winged Hawk","Bronzed Cowbird","Brown Booby","Brown Creeper","Brown Jay","Brown Noddy","Brown Pelican","Brown Shrike","Brown Thrasher","Brown-capped Rosy-Finch","Brown-chested Martin","Brown-crested Flycatcher","Brown-headed Cowbird","Brown-headed Nuthatch","Budgerigar","Buff-bellied Hummingbird","Buff-breasted Flycatcher","Buff-breasted Sandpiper","Buff-collared Nightjar","Bufflehead","Buller's Shearwater","Bullock's Oriole","Bumblebee Hummingbird","Burrowing Owl","Bushtit","Cactus Wren","California Condor","California Gnatcatcher","California Gull","California Quail","California Thrasher","California Towhee","Calliope Hummingbird","Canada Goose","Canada Warbler","Canvasback","Canyon Towhee","Canyon Wren","Cape May Warbler","Caribbean Elaenia","Carolina Chickadee","Carolina Parakeet","Carolina Wren","Caspian Tern","Cassin's Auklet","Cassin's Finch","Cassin's Kingbird","Cassin's Sparrow","Cassin's Vireo","Cattle Egret","Cave Swallow","Cedar Waxwing","Cerulean Warbler","Chestnut-backed Chickadee","Chestnut-collared Longspur","Chestnut-sided Warbler","Chihuahuan Raven","Chimney Swift","Chinese Egret","Chipping Sparrow","Chuck-will's-widow","Chukar","Cinnamon Hummingbird","Cinnamon Teal","Citrine Wagtail","Clapper Rail","Clark's Grebe","Clark's Nutcracker","Clay-colored Robin","Clay-colored Sparrow","Cliff Swallow","Colima Warbler","Collared Forest-Falcon","Collared Plover","Common Black-Hawk","Common Chaffinch","Common Crane","Common Cuckoo","Common Eider","Common Goldeneye","Common Grackle","Common Greenshank","Common Ground-Dove","Common House-Martin","Common Loon","Common Merganser","Common Moorhen","Common Murre","Common Nighthawk","Common Pauraque","Common Pochard","Common Poorwill","Common Raven","Common Redpoll","Common Ringed Plover","Common Rosefinch","Common Sandpiper","Common Snipe","Common Swift","Common Tern","Common Yellowthroat","Connecticut Warbler","Cook's Petrel","Cooper's Hawk","Cordilleran Flycatcher","Corn Crake","Cory's Shearwater","Costa's Hummingbird","Couch's Kingbird","Crane Hawk","Craveri's Murrelet","Crescent-chested Warbler","Crested Auklet","Crested Caracara","Crested Myna","Crimson-collared Grosbeak","Crissal Thrasher","Cuban Martin","Curlew Sandpiper","Curve-billed Thrasher","Dark-eyed Junco","Dickcissel","Double-crested Cormorant","Double-striped Thick-knee","Dovekie","Downy Woodpecker","Dunlin","Dusky Flycatcher","Dusky Thrush","Dusky Warbler","Dusky-capped Flycatcher","Eared Grebe","Eared Trogon","Eastern Bluebird","Eastern Kingbird","Eastern Meadowlark","Eastern Phoebe","Eastern Screech-Owl","Eastern Towhee","Eastern Wood-Pewee","Elegant Tern","Elegant Trogon","Elf Owl","Emperor Goose","Eskimo Curlew","Eurasian Blackbird","Eurasian Bullfinch","Eurasian Collared-Dove","Eurasian Coot","Eurasian Curlew","Eurasian Dotterel","Eurasian Hobby","Eurasian Jackdaw","Eurasian Kestrel","Eurasian Oystercatcher","Eurasian Siskin","Eurasian Tree Sparrow","Eurasian Wigeon","Eurasian Woodcock","Eurasian Wryneck","European Golden-Plover","European Starling","European Storm-Petrel","European Turtle-Dove","Evening Grosbeak","Eyebrowed Thrush","Falcated Duck","Fan-tailed Warbler","Far Eastern Curlew","Ferruginous Hawk","Ferruginous Pygmy-Owl","Field Sparrow","Fieldfare","Fish Crow","Five-striped Sparrow","Flame-colored Tanager","Flammulated Owl","Flesh-footed Shearwater","Florida Scrub-Jay","Fork-tailed Flycatcher","Fork-tailed Storm-Petrel","Fork-tailed Swift","Forster's Tern","Fox Sparrow","Franklin's Gull","Fulvous Whistling-Duck","Gadwall","Gambel's Quail","Garganey","Gila Woodpecker","Gilded Flicker","Glaucous Gull","Glaucous-winged Gull","Glossy Ibis","Golden Eagle","Golden-cheeked Warbler","Golden-crowned Kinglet","Golden-crowned Sparrow","Golden-crowned Warbler","Golden-fronted Woodpecker","Golden-winged Warbler","Grace's Warbler","Grasshopper Sparrow","Gray Bunting","Gray Catbird","Gray Flycatcher","Gray Hawk","Gray Jay","Gray Kingbird","Gray Partridge","Gray Silky-flycatcher","Gray Vireo","Gray Wagtail","Gray-breasted Martin","Gray-cheeked Thrush","Gray-crowned Rosy-Finch","Gray-crowned Yellowthroat","Gray-headed Chickadee","Gray-spotted Flycatcher","Gray-tailed Tattler","Great Auk","Great Black-backed Gull","Great Blue Heron","Great Cormorant","Great Crested Flycatcher","Great Egret","Great Frigatebird","Great Gray Owl","Great Horned Owl","Great Kiskadee","Great Knot","Great Skua","Great Spotted Woodpecker","Great-tailed Grackle","Greater Flamingo","Greater Pewee","Greater Prairie-chicken","Greater Roadrunner","Greater Scaup","Greater Shearwater","Greater White-fronted Goose","Greater Yellowlegs","Green Heron","Green Jay","Green Kingfisher","Green Sandpiper","Green Violet-ear","Green-breasted Mango","Green-tailed Towhee","Green-winged Teal","Greenish Elaenia","Groove-billed Ani","Gull-billed Tern","Gyrfalcon","Hairy Woodpecker","Hammond's Flycatcher","Harlequin Duck","Harris's Hawk","Harris's Sparrow","Hawfinch","Heermann's Gull","Henslow's Sparrow","Hepatic Tanager","Herald Petrel","Hermit Thrush","Hermit Warbler","Herring Gull","Himalayan Snowcock","Hoary Redpoll","Hooded Merganser","Hooded Oriole","Hooded Warbler","Hook-billed Kite","Hoopoe","Horned Grebe","Horned Lark","Horned Puffin","House Finch","House Sparrow","House Wren","Hudsonian Godwit","Hutton's Vireo","Iceland Gull","Inca Dove","Indigo Bunting","Island Scrub-Jay","Ivory Gull","Ivory-billed Woodpecker","Jabiru","Jack Snipe","Jungle Nightjar","Juniper Titmouse","Kentucky Warbler","Key West Quail-Dove","Killdeer","King Eider","King Rail","Kirtland's Warbler","Kittlitz's Murrelet","La Sagra's Flycatcher","Labrador Duck","Ladder-backed Woodpecker","Lanceolated Warbler","Lapland Longspur","Large-billed Tern","Lark Bunting","Lark Sparrow","Laughing Gull","Lawrence's Goldfinch","Laysan Albatross","Lazuli Bunting","Le Conte's Sparrow","Le Conte's Thrasher","Leach's Storm-Petrel","Least Auklet","Least Bittern","Least Flycatcher","Least Grebe","Least Sandpiper","Least Storm-Petrel","Least Tern","Lesser Black-backed Gull","Lesser Frigatebird","Lesser Goldfinch","Lesser Nighthawk","Lesser Prairie-chicken","Lesser Scaup","Lesser White-fronted Goose","Lesser Yellowlegs","Lewis's Woodpecker","Limpkin","Lincoln's Sparrow","Little Blue Heron","Little Bunting","Little Curlew","Little Egret","Little Gull","Little Ringed Plover","Little Shearwater","Little Stint","Loggerhead Kingbird","Loggerhead Shrike","Long-billed Curlew","Long-billed Dowitcher","Long-billed Murrelet","Long-billed Thrasher","Long-eared Owl","Long-tailed Jaeger","Long-toed Stint","Louisiana Waterthrush","Lucifer Hummingbird","Lucy's Warbler","MacGillivray's Warbler","Magnificent Frigatebird","Magnificent Hummingbird","Magnolia Warbler","Mallard","Mangrove Cuckoo","Manx Shearwater","Marbled Godwit","Marbled Murrelet","Marsh Sandpiper","Marsh Wren","Masked Booby","Masked Duck","Masked Tityra","McCown's Longspur","McKay's Bunting","Merlin","Mew Gull","Mexican Chickadee","Mexican Jay","Middendorff's Grasshopper-Warbler","Mississippi Kite","Mongolian Plover","Monk Parakeet","Montezuma Quail","Mottled Duck","Mottled Owl","Mottled Petrel","Mountain Bluebird","Mountain Chickadee","Mountain Plover","Mountain Quail","Mourning Dove","Mourning Warbler","Mugimaki Flycatcher","Murphy's Petrel","Muscovy Duck","Mute Swan","Narcissus Flycatcher","Nashville Warbler","Nelson's Sharp-tailed Sparrow","Neotropic Cormorant","Northern Beardless-Tyrannulet","Northern Bobwhite","Northern Cardinal","Northern Flicker","Northern Fulmar","Northern Gannet","Northern Goshawk","Northern Harrier","Northern Hawk Owl","Northern Jacana","Northern Lapwing","Northern Mockingbird","Northern Parula","Northern Pintail","Northern Pygmy-Owl","Northern Rough-winged Swallow","Northern Saw-whet Owl","Northern Shoveler","Northern Shrike","Northern Waterthrush","Northern Wheatear","Northwestern Crow","Nuttall's Woodpecker","Nutting's Flycatcher","Oak Titmouse","Oldsquaw","Olive Sparrow","Olive Warbler","Olive-backed Pipit","Olive-sided Flycatcher","Orange-crowned Warbler","Orchard Oriole","Oriental Cuckoo","Oriental Greenfinch","Oriental Pratincole","Oriental Scops-Owl","Oriental Turtle-Dove","Osprey","Ovenbird","Pacific Golden-Plover","Pacific Loon","Pacific-slope Flycatcher","Paint-billed Crake","Painted Bunting","Painted Redstart","Pallas's Bunting","Palm Warbler","Parakeet Auklet","Parasitic Jaeger","Passenger Pigeon","Pechora Pipit","Pectoral Sandpiper","Pelagic Cormorant","Peregrine Falcon","Phainopepla","Philadelphia Vireo","Pied-billed Grebe","Pigeon Guillemot","Pileated Woodpecker","Pin-tailed Snipe","Pine Bunting","Pine Grosbeak","Pine Siskin","Pine Warbler","Pink-footed Goose","Pink-footed Shearwater","Pinyon Jay","Piping Plover","Plain Chachalaca","Plain-capped Starthroat","Plumbeous Vireo","Pomarine Jaeger","Prairie Falcon","Prairie Warbler","Prothonotary Warbler","Purple Finch","Purple Gallinule","Purple Martin","Purple Sandpiper","Pygmy Nuthatch","Pyrrhuloxia","Razorbill","Red Crossbill","Red Knot","Red Phalarope","Red-bellied Woodpecker","Red-billed Pigeon","Red-billed Tropicbird","Red-breasted Flycatcher","Red-breasted Merganser","Red-breasted Nuthatch","Red-breasted Sapsucker","Red-cockaded Woodpecker","Red-crowned Parrot","Red-eyed Vireo","Red-faced Cormorant","Red-faced Warbler","Red-flanked Bluetail","Red-footed Booby","Red-headed Woodpecker","Red-legged Kittiwake","Red-naped Sapsucker","Red-necked Grebe","Red-necked Phalarope","Red-necked Stint","Red-shouldered Hawk","Red-tailed Hawk","Red-tailed Tropicbird","Red-throated Loon","Red-throated Pipit","Red-whiskered Bulbul","Red-winged Blackbird","Reddish Egret","Redhead","Redwing","Reed Bunting","Rhinoceros Auklet","Ring-billed Gull","Ring-necked Duck","Ring-necked Pheasant","Ringed Kingfisher","Roadside Hawk","Rock Dove","Rock Ptarmigan","Rock Sandpiper","Rock Wren","Rose-breasted Grosbeak","Rose-throated Becard","Roseate Spoonbill","Roseate Tern","Ross's Goose","Ross's Gull","Rough-legged Hawk","Royal Tern","Ruby-crowned Kinglet","Ruby-throated Hummingbird","Ruddy Duck","Ruddy Ground-Dove","Ruddy Quail-Dove","Ruddy Turnstone","Ruff","Ruffed Grouse","Rufous Hummingbird","Rufous-backed Robin","Rufous-capped Warbler","Rufous-crowned Sparrow","Rufous-winged Sparrow","Rustic Bunting","Rusty Blackbird","Sabine's Gull","Sage Grouse","Sage Sparrow","Sage Thrasher","Saltmarsh Sharp-tailed Sparrow","Sanderling","Sandhill Crane","Sandwich Tern","Savannah Sparrow","Say's Phoebe","Scaled Quail","Scaly-naped Pigeon","Scarlet Ibis","Scarlet Tanager","Scissor-tailed Flycatcher","Scott's Oriole","Seaside Sparrow","Sedge Wren","Semipalmated Plover","Semipalmated Sandpiper","Sharp-shinned Hawk","Sharp-tailed Grouse","Sharp-tailed Sandpiper","Shiny Cowbird","Short-billed Dowitcher","Short-eared Owl","Short-tailed Albatross","Short-tailed Hawk","Short-tailed Shearwater","Shy Albatross","Siberian Accentor","Siberian Blue Robin","Siberian Flycatcher","Siberian Rubythroat","Sky Lark","Slate-throated Redstart","Slaty-backed Gull","Slender-billed Curlew","Smew","Smith's Longspur","Smooth-billed Ani","Snail Kite","Snow Bunting","Snow Goose","Snowy Egret","Snowy Owl","Snowy Plover","Solitary Sandpiper","Song Sparrow","Sooty Shearwater","Sooty Tern","Sora","South Polar Skua","Southern Martin","Spectacled Eider","Spoonbill Sandpiper","Spot-billed Duck","Spot-breasted Oriole","Spotted Dove","Spotted Owl","Spotted Rail","Spotted Redshank","Spotted Sandpiper","Spotted Towhee","Sprague's Pipit","Spruce Grouse","Stejneger's Petrel","Steller's Eider","Steller's Jay","Steller's Sea-Eagle","Stilt Sandpiper","Stonechat","Streak-backed Oriole","Streaked Shearwater","Strickland's Woodpecker","Stripe-headed Tanager","Sulphur-bellied Flycatcher","Summer Tanager","Surf Scoter","Surfbird","Swainson's Hawk","Swainson's Thrush","Swainson's Warbler","Swallow-tailed Kite","Swamp Sparrow","Tamaulipas Crow","Tawny-shouldered Blackbird","Temminck's Stint","Tennessee Warbler","Terek Sandpiper","Thayer's Gull","Thick-billed Kingbird","Thick-billed Murre","Thick-billed Parrot","Thick-billed Vireo","Three-toed Woodpecker","Townsend's Solitaire","Townsend's Warbler","Tree Pipit","Tree Swallow","Tricolored Blackbird","Tricolored Heron","Tropical Kingbird","Tropical Parula","Trumpeter Swan","Tufted Duck","Tufted Flycatcher","Tufted Puffin","Tufted Titmouse","Tundra Swan","Turkey Vulture","Upland Sandpiper","Varied Bunting","Varied Thrush","Variegated Flycatcher","Vaux's Swift","Veery","Verdin","Vermilion Flycatcher","Vesper Sparrow","Violet-crowned Hummingbird","Violet-green Swallow","Virginia Rail","Virginia's Warbler","Wandering Albatross","Wandering Tattler","Warbling Vireo","Wedge-rumped Storm-Petrel","Wedge-tailed Shearwater","Western Bluebird","Western Grebe","Western Gull","Western Kingbird","Western Meadowlark","Western Reef-Heron","Western Sandpiper","Western Screech-Owl","Western Scrub-Jay","Western Tanager","Western Wood-Pewee","Whimbrel","Whip-poor-will","Whiskered Auklet","Whiskered Screech-Owl","Whiskered Tern","White Ibis","White Wagtail","White-breasted Nuthatch","White-cheeked Pintail","White-chinned Petrel","White-collared Seedeater","White-collared Swift","White-crowned Pigeon","White-crowned Sparrow","White-eared Hummingbird","White-eyed Vireo","White-faced Ibis","White-faced Storm-Petrel","White-headed Woodpecker","White-rumped Sandpiper","White-tailed Eagle","White-tailed Hawk","White-tailed Kite","White-tailed Ptarmigan","White-tailed Tropicbird","White-throated Needletail","White-throated Robin","White-throated Sparrow","White-throated Swift","White-tipped Dove","White-winged Crossbill","White-winged Dove","White-winged Parakeet","White-winged Scoter","White-winged Tern","Whooper Swan","Whooping Crane","Wild Turkey","Willet","Williamson's Sapsucker","Willow Flycatcher","Willow Ptarmigan","Wilson's Phalarope","Wilson's Plover","Wilson's Storm-Petrel","Wilson's Warbler","Winter Wren","Wood Duck","Wood Sandpiper","Wood Stork","Wood Thrush","Wood Warbler","Worm-eating Warbler","Worthen's Sparrow","Wrentit","Xantus's Hummingbird","Xantus's Murrelet","Yellow Bittern","Yellow Grosbeak","Yellow Rail","Yellow Wagtail","Yellow Warbler","Yellow-bellied Flycatcher","Yellow-bellied Sapsucker","Yellow-billed Cuckoo","Yellow-billed Loon","Yellow-billed Magpie","Yellow-breasted Bunting","Yellow-breasted Chat","Yellow-crowned Night-Heron","Yellow-eyed Junco","Yellow-faced Grassquit","Yellow-footed Gull","Yellow-green Vireo","Yellow-headed Blackbird","Yellow-legged Gull","Yellow-nosed Albatross","Yellow-rumped Warbler","Yellow-throated Vireo","Yellow-throated Warbler","Yucatan Vireo","Zenaida Dove","Zone-tailed Hawk"],cat:["Abyssinian","American Bobtail","American Curl","American Shorthair","American Wirehair","Balinese","Bengal","Birman","Bombay","British Shorthair","Burmese","Chartreux","Chausie","Cornish Rex","Devon Rex","Donskoy","Egyptian Mau","Exotic Shorthair","Havana","Highlander","Himalayan","Japanese Bobtail","Korat","Kurilian Bobtail","LaPerm","Maine Coon","Manx","Minskin","Munchkin","Nebelung","Norwegian Forest Cat","Ocicat","Ojos Azules","Oriental","Persian","Peterbald","Pixiebob","Ragdoll","Russian Blue","Savannah","Scottish Fold","Selkirk Rex","Serengeti","Siamese","Siberian","Singapura","Snowshoe","Sokoke","Somali","Sphynx","Thai","Tonkinese","Toyger","Turkish Angora","Turkish Van"],cetacean:["Amazon River Dolphin","Arnoux's Beaked Whale","Atlantic Humpbacked Dolphin","Atlantic Spotted Dolphin","Atlantic White-Sided Dolphin","Australian Snubfin Dolphin","Australian humpback Dolphin","Blue Whale","Bottlenose Dolphin","Bryde’s whale","Burrunan Dolphin","Chilean Dolphin","Chinese River Dolphin","Chinese White Dolphin","Clymene Dolphin","Commerson’s Dolphin","Costero","Dusky Dolphin","False Killer Whale","Fin Whale","Fraser’s Dolphin","Ganges River Dolphin","Guiana Dolphin","Heaviside’s Dolphin","Hector’s Dolphin","Hourglass Dolphin","Humpback whale","Indo-Pacific Bottlenose Dolphin","Indo-Pacific Hump-backed Dolphin","Irrawaddy Dolphin","Killer Whale (Orca)","La Plata Dolphin","Long-Beaked Common Dolphin","Long-finned Pilot Whale","Longman's Beaked Whale","Melon-headed Whale","Northern Rightwhale Dolphin","Omura’s whale","Pacific White-Sided Dolphin","Pantropical Spotted Dolphin","Peale’s Dolphin","Pygmy Killer Whale","Risso’s Dolphin","Rough-Toothed Dolphin","Sei Whale","Short-Beaked Common Dolphin","Short-finned Pilot Whale","Southern Bottlenose Whale","Southern Rightwhale Dolphin","Sperm Whale","Spinner Dolphin","Striped Dolphin","Tucuxi","White-Beaked Dolphin"],cow:["Aberdeen Angus","Abergele","Abigar","Abondance","Abyssinian Shorthorned Zebu","Aceh","Achham","Adamawa","Adaptaur","Afar","Africangus","Afrikaner","Agerolese","Alambadi","Alatau","Albanian","Albera","Alderney","Alentejana","Aleutian wild cattle","Aliad Dinka","Alistana-Sanabresa","Allmogekor","Alur","American","American Angus","American Beef Friesian","American Brown Swiss","American Milking Devon","American White Park","Amerifax","Amrit Mahal","Amsterdam Island cattle","Anatolian Black","Andalusian Black","Andalusian Blond","Andalusian Grey","Angeln","Angoni","Ankina","Ankole","Ankole-Watusi","Aracena","Arado","Argentine Criollo","Argentine Friesian","Armorican","Arouquesa","Arsi","Asturian Mountain","Asturian Valley","Aubrac","Aulie-Ata","Aure et Saint-Girons","Australian Braford","Australian Brangus","Australian Charbray","Australian Friesian Sahiwal","Australian Lowline","Australian Milking Zebu","Australian Shorthorn","Austrian Simmental","Austrian Yellow","Avileña-Negra Ibérica","Avétonou","Aweil Dinka","Ayrshire","Azaouak","Azebuado","Azerbaijan Zebu","Azores","Bachaur cattle","Baherie cattle","Bakosi cattle","Balancer","Baoule","Bargur cattle","Barrosã","Barzona","Bazadaise","Bedit","Beef Freisian","Beefalo","Beefmaker","Beefmaster","Begayt","Belgian Blue","Belgian Red","Belgian Red Pied","Belgian White-and-Red","Belmont Red","Belted Galloway","Bernese","Berrenda cattle","Betizu","Bianca Modenese","Blaarkop","Black Angus","Black Baldy","Black Hereford","Blanca Cacereña","Blanco Orejinegro BON","Blonde d'Aquitaine","Blue Albion","Blue Grey","Bohuskulla","Bonsmara","Boran","Boškarin","Braford","Brahman","Brahmousin","Brangus","Braunvieh","Brava","Breed","British Friesian","British White","Brown Carpathian","Brown Caucasian","Brown Swiss","Bue Lingo","Burlina","Bushuyev","Butana cattle","Buša cattle","Cachena","Caldelana","Camargue","Campbell Island cattle","Canadian Speckle Park","Canadienne","Canaria","Canchim","Caracu","Carinthian Blondvieh","Carora","Cedit","Charbray","Charolais","Chateaubriand","Chiangus","Chianina","Chillingham cattle","Chinese Black Pied","Cholistani","Coloursided White Back","Commercial","Corriente","Corsican cattle","Costeño con Cuernos","Crioulo Lageano","Cárdena Andaluza","Dajal","Dangi cattle","Danish Black-Pied","Danish Jersey","Danish Red","Dedit","Deep Red cattle","Deoni","Devon","Dexter cattle","Dhanni","Doayo cattle","Doela","Drakensberger","Droughtmaster","Dulong'","Dutch Belted","Dutch Friesian","Dwarf Lulu","Dølafe","East Anatolian Red","Eastern Finncattle","Eastern Red Polled","Eedit","Enderby Island cattle","English Longhorn","Ennstaler Bergscheck","Estonian Holstein","Estonian Native","Estonian Red cattle","Fedit","Finncattle","Finnish Ayrshire","Finnish Holstein-Friesian","Fjäll","Fleckvieh","Florida Cracker cattle","Fogera","French Simmental","Fribourgeoise","Friesian Red and White","Fulani Sudanese","Fēng Cattle","Galician Blond","Galloway cattle","Gangatiri","Gaolao","Garvonesa","Gascon cattle","Gedit","Gelbvieh","Georgian Mountain cattle","German Angus","German Black Pied Dairy","German Black Pied cattle","German Red Pied","Gir","Glan cattle","Gloucester","Gobra","Greek Shorthorn","Greek Steppe","Greyman cattle","Gudali","Guernsey cattle","Guzerá","Hallikar4","Hanwoo","Hariana cattle","Hartón del Valle","Harzer Rotvieh","Hays Converter","Heck cattle","Hedit","Hereford","Herens","Highland cattle","Hinterwald","Holando-Argentino","Holstein Friesian cattle","Horro","Hungarian Grey","Huáng Cattle","Hybridmaster","Iberian cattle","Icelandic","Iedit","Illawarra cattle","Improved Red and White","Indo-Brazilian","Irish Moiled","Israeli Holstein","Israeli Red","Istoben cattle","Istrian cattle","Jamaica Black","Jamaica Hope","Jamaica Red","Japanese Brown","Jarmelista","Javari cattle","Jedit","Jersey cattle","Jutland cattle","Kabin Buri cattle","Kalmyk cattle","Kamphaeng Saen cattle","Kangayam","Kankrej","Karan Swiss","Kasaragod Dwarf cattle","Kathiawadi","Kazakh Whiteheaded","Kedit","Kenana cattle","Kenkatha cattle","Kerry cattle","Kherigarh","Khillari cattle","Kholomogory","Korat Wagyu","Kostroma cattle","Krishna Valley cattle","Kurgan cattle","Kuri","La Reina cattle","Lakenvelder cattle","Lampurger","Latvian Blue","Latvian Brown","Latvian Danish Red","Lebedyn","Ledit","Levantina","Limia cattle","Limousin","Limpurger","Lincoln Red","Lineback","Lithuanian Black-and-White","Lithuanian Light Grey","Lithuanian Red","Lithuanian White-Backed","Lohani cattle","Lourdais","Lucerna cattle","Luing","Madagascar Zebu","Madura","Maine-Anjou","Malnad Gidda","Malvi","Mandalong Special","Mantequera Leonesa","Maramureş Brown","Marchigiana","Maremmana","Marinhoa","Maronesa","Masai","Mashona","Medit","Menorquina","Mertolenga","Meuse-Rhine-Issel","Mewati","Milking Shorthorn","Minhota","Mirandesa","Mirkadim","Mocăniţă","Mollie","Monchina","Mongolian","Montbéliarde","Morucha","Murboden","Murnau-Werdenfels","Murray Grey","Muturu","N'Dama","Nagori","Nedit","Negra Andaluza","Nelore","Nguni","Nimari","Normande","North Bengal Grey","Northern Finncattle","Northern Shorthorn","Norwegian Red","Oedit]","Ongole","Original Simmental","Pajuna","Palmera","Pantaneiro","Parda Alpina","Parthenaise","Pasiega","Pedit","Pembroke","Philippine Native","Pie Rouge des Plaines","Piedmontese cattle","Pineywoods","Pinzgauer","Pirenaica","Podolac","Podolica","Polish Black-and-White","Polish Red","Poll Shorthorn","Polled Hereford","Polled Shorthorn","Ponwar","Preta","Pulikulam","Punganur","Pustertaler Sprinzen","Qedit","Qinchaun","Queensland Miniature Boran","RX3","Ramo Grande","Randall","Raramuri Criollo","Rathi","Raya","Red Angus","Red Brangus","Red Chittagong","Red Fulani","Red Gorbatov","Red Holstein","Red Kandhari","Red Mingrelian","Red Poll","Red Polled Østland","Red Sindhi","Redit","Retinta","Riggit Galloway","Ringamåla","Rohjan","Romagnola","Romanian Bălţata","Romanian Steppe Gray","Romosinuano","Russian Black Pied","Rätisches Grauvieh","Sahiwal","Salers","Salorn","Sanga","Sanhe","Santa Cruz","Santa Gertrudis","Sayaguesa","Schwyz","Sedit","Selembu","Senepol","Serbian Pied","Serbian Steppe","Sheko","Shetland","Shorthorn","Siboney de Cuba","Simbrah","Simford","Simmental","Siri","South Devon","Spanish Fighting Bull","Speckle Park","Square Meater","Sussex","Swedish Friesian","Swedish Polled","Swedish Red Pied","Swedish Red Polled","Swedish Red-and-White","Tabapuã","Tarentaise","Tasmanian Grey","Tauros","Tedit","Telemark","Texas Longhorn","Texon","Thai Black","Thai Fighting Bull","Thai Friesian","Thai Milking Zebu","Tharparkar","Tswana","Tudanca","Tuli","Tulim","Turkish Grey Steppe","Tux-Zillertal","Tyrol Grey","Uedit","Ukrainian Grey","Umblachery","Valdostana Castana","Valdostana Pezzata Nera","Valdostana Pezzata Rossa","Vaynol","Vechur8","Vedit","Vestland Fjord","Vestland Red Polled","Vianesa","Volinian Beef","Vorderwald","Vosgienne","Väneko","Waguli","Wagyu","Wangus","Wedit","Welsh Black","Western Finncattle","White Cáceres","White Fulani","White Lamphun","White Park","Whitebred Shorthorn","Xedit","Xingjiang Brown","Yakutian","Yanbian","Yanhuang","Yedit","Yurino","Zebu","Zedit","Évolène cattle","Żubroń"],crocodilia:["African Slender-snouted Crocodile","Alligator mississippiensis","American Crocodile","Australian Freshwater Crocodile","Black Caiman","Broad-snouted Caiman","Chinese Alligator","Cuban Crocodile","Cuvier’s Dwarf Caiman","Dwarf Crocodile","Gharial","Morelet’s Crocodile","Mugger Crocodile","New Guinea Freshwater Crocodile","Nile Crocodile","Orinoco Crocodile","Philippine Crocodile","Saltwater Crocodile","Schneider’s Smooth-fronted Caiman","Siamese Crocodile","Spectacled Caiman","Tomistoma","West African Crocodile","Yacare Caiman"],dog:["Affenpinscher","Afghan Hound","Aidi","Airedale Terrier","Akbash","Akita","Alano Español","Alapaha Blue Blood Bulldog","Alaskan Husky","Alaskan Klee Kai","Alaskan Malamute","Alopekis","Alpine Dachsbracke","American Bulldog","American Bully","American Cocker Spaniel","American English Coonhound","American Foxhound","American Hairless Terrier","American Pit Bull Terrier","American Staffordshire Terrier","American Water Spaniel","Andalusian Hound","Anglo-Français de Petite Vénerie","Appenzeller Sennenhund","Ariegeois","Armant","Armenian Gampr dog","Artois Hound","Australian Cattle Dog","Australian Kelpie","Australian Shepherd","Australian Stumpy Tail Cattle Dog","Australian Terrier","Austrian Black and Tan Hound","Austrian Pinscher","Azawakh","Bakharwal dog","Banjara Hound","Barbado da Terceira","Barbet","Basenji","Basque Shepherd Dog","Basset Artésien Normand","Basset Bleu de Gascogne","Basset Fauve de Bretagne","Basset Hound","Bavarian Mountain Hound","Beagle","Beagle-Harrier","Bearded Collie","Beauceron","Bedlington Terrier","Belgian Shepherd","Bergamasco Shepherd","Berger Picard","Bernese Mountain Dog","Bhotia","Bichon Frisé","Billy","Black Mouth Cur","Black Norwegian Elkhound","Black Russian Terrier","Black and Tan Coonhound","Bloodhound","Blue Lacy","Blue Picardy Spaniel","Bluetick Coonhound","Boerboel","Bohemian Shepherd","Bolognese","Border Collie","Border Terrier","Borzoi","Bosnian Coarse-haired Hound","Boston Terrier","Bouvier des Ardennes","Bouvier des Flandres","Boxer","Boykin Spaniel","Bracco Italiano","Braque Francais","Braque Saint-Germain","Braque d'Auvergne","Braque de l'Ariège","Braque du Bourbonnais","Briard","Briquet Griffon Vendéen","Brittany","Broholmer","Bruno Jura Hound","Brussels Griffon","Bucovina Shepherd Dog","Bull Arab","Bull Terrier","Bulldog","Bullmastiff","Bully Kutta","Burgos Pointer","Cairn Terrier","Campeiro Bulldog","Can de Chira","Canaan Dog","Canadian Eskimo Dog","Cane Corso","Cane Paratore","Cane di Oropa","Cantabrian Water Dog","Cardigan Welsh Corgi","Carea Castellano Manchego","Carolina Dog","Carpathian Shepherd Dog","Catahoula Leopard Dog","Catalan Sheepdog","Caucasian Shepherd Dog","Cavalier King Charles Spaniel","Central Asian Shepherd Dog","Cesky Fousek","Cesky Terrier","Chesapeake Bay Retriever","Chien Français Blanc et Noir","Chien Français Blanc et Orange","Chien Français Tricolore","Chihuahua","Chilean Terrier","Chinese Chongqing Dog","Chinese Crested Dog","Chinook","Chippiparai","Chongqing dog","Chortai","Chow Chow","Cimarrón Uruguayo","Cirneco dell'Etna","Clumber Spaniel","Colombian fino hound","Coton de Tulear","Cretan Hound","Croatian Sheepdog","Curly-Coated Retriever","Cursinu","Czechoslovakian Wolfdog","Cão Fila de São Miguel","Cão da Serra de Aires","Cão de Castro Laboreiro","Cão de Gado Transmontano","Dachshund","Dalmatian","Dandie Dinmont Terrier","Danish-Swedish Farmdog","Denmark Feist","Dingo","Doberman Pinscher","Dogo Argentino","Dogo Guatemalteco","Dogo Sardesco","Dogue Brasileiro","Dogue de Bordeaux","Drentse Patrijshond","Drever","Dunker","Dutch Shepherd","Dutch Smoushond","East European Shepherd","East Siberian Laika","English Cocker Spaniel","English Foxhound","English Mastiff","English Setter","English Shepherd","English Springer Spaniel","English Toy Terrier","Entlebucher Mountain Dog","Estonian Hound","Estrela Mountain Dog","Eurasier","Field Spaniel","Fila Brasileiro","Finnish Hound","Finnish Lapphund","Finnish Spitz","Flat-Coated Retriever","French Bulldog","French Spaniel","Galgo Español","Galician Shepherd Dog","Garafian Shepherd","Gascon Saintongeois","Georgian Shepherd","German Hound","German Longhaired Pointer","German Pinscher","German Roughhaired Pointer","German Shepherd Dog","German Shorthaired Pointer","German Spaniel","German Spitz","German Wirehaired Pointer","Giant Schnauzer","Glen of Imaal Terrier","Golden Retriever","Gordon Setter","Gończy Polski","Grand Anglo-Français Blanc et Noir","Grand Anglo-Français Blanc et Orange","Grand Anglo-Français Tricolore","Grand Basset Griffon Vendéen","Grand Bleu de Gascogne","Grand Griffon Vendéen","Great Dane","Greater Swiss Mountain Dog","Greek Harehound","Greek Shepherd","Greenland Dog","Greyhound","Griffon Bleu de Gascogne","Griffon Fauve de Bretagne","Griffon Nivernais","Gull Dong","Gull Terrier","Hamiltonstövare","Hanover Hound","Harrier","Havanese","Hierran Wolfdog","Hokkaido","Hovawart","Huntaway","Hygen Hound","Hällefors Elkhound","Ibizan Hound","Icelandic Sheepdog","Indian Spitz","Indian pariah dog","Irish Red and White Setter","Irish Setter","Irish Terrier","Irish Water Spaniel","Irish Wolfhound","Istrian Coarse-haired Hound","Istrian Shorthaired Hound","Italian Greyhound","Jack Russell Terrier","Jagdterrier","Japanese Chin","Japanese Spitz","Japanese Terrier","Jindo","Jonangi","Kai Ken","Kaikadi","Kangal Shepherd Dog","Kanni","Karakachan dog","Karelian Bear Dog","Kars","Karst Shepherd","Keeshond","Kerry Beagle","Kerry Blue Terrier","King Charles Spaniel","King Shepherd","Kintamani","Kishu","Kokoni","Kombai","Komondor","Kooikerhondje","Koolie","Koyun dog","Kromfohrländer","Kuchi","Kuvasz","Labrador Retriever","Lagotto Romagnolo","Lakeland Terrier","Lancashire Heeler","Landseer","Lapponian Herder","Large Münsterländer","Leonberger","Levriero Sardo","Lhasa Apso","Lithuanian Hound","Lupo Italiano","Löwchen","Mackenzie River Husky","Magyar agár","Mahratta Greyhound","Maltese","Manchester Terrier","Maremmano-Abruzzese Sheepdog","McNab dog","Miniature American Shepherd","Miniature Bull Terrier","Miniature Fox Terrier","Miniature Pinscher","Miniature Schnauzer","Molossus of Epirus","Montenegrin Mountain Hound","Mountain Cur","Mountain Feist","Mucuchies","Mudhol Hound","Mudi","Neapolitan Mastiff","New Guinea Singing Dog","New Zealand Heading Dog","Newfoundland","Norfolk Terrier","Norrbottenspets","Northern Inuit Dog","Norwegian Buhund","Norwegian Elkhound","Norwegian Lundehund","Norwich Terrier","Nova Scotia Duck Tolling Retriever","Old Croatian Sighthound","Old Danish Pointer","Old English Sheepdog","Old English Terrier","Olde English Bulldogge","Otterhound","Pachon Navarro","Paisley Terrier","Pampas Deerhound","Papillon","Parson Russell Terrier","Pastore della Lessinia e del Lagorai","Patagonian Sheepdog","Patterdale Terrier","Pekingese","Pembroke Welsh Corgi","Perro Majorero","Perro de Pastor Mallorquin","Perro de Presa Canario","Perro de Presa Mallorquin","Peruvian Inca Orchid","Petit Basset Griffon Vendéen","Petit Bleu de Gascogne","Phalène","Pharaoh Hound","Phu Quoc Ridgeback","Picardy Spaniel","Plott Hound","Plummer Terrier","Podenco Canario","Podenco Valenciano","Pointer","Poitevin","Polish Greyhound","Polish Hound","Polish Lowland Sheepdog","Polish Tatra Sheepdog","Pomeranian","Pont-Audemer Spaniel","Poodle","Porcelaine","Portuguese Podengo","Portuguese Pointer","Portuguese Water Dog","Posavac Hound","Pražský Krysařík","Pshdar Dog","Pudelpointer","Pug","Puli","Pumi","Pungsan Dog","Pyrenean Mastiff","Pyrenean Mountain Dog","Pyrenean Sheepdog","Rafeiro do Alentejo","Rajapalayam","Rampur Greyhound","Rat Terrier","Ratonero Bodeguero Andaluz","Ratonero Mallorquin","Ratonero Murciano de Huerta","Ratonero Valenciano","Redbone Coonhound","Rhodesian Ridgeback","Romanian Mioritic Shepherd Dog","Romanian Raven Shepherd Dog","Rottweiler","Rough Collie","Russian Spaniel","Russian Toy","Russo-European Laika","Saarloos Wolfdog","Sabueso Español","Saint Bernard","Saint Hubert Jura Hound","Saint-Usuge Spaniel","Saluki","Samoyed","Sapsali","Sarabi dog","Sardinian Shepherd Dog","Schapendoes","Schillerstövare","Schipperke","Schweizer Laufhund","Schweizerischer Niederlaufhund","Scottish Deerhound","Scottish Terrier","Sealyham Terrier","Segugio Italiano","Segugio Maremmano","Segugio dell'Appennino","Seppala Siberian Sleddog","Serbian Hound","Serbian Tricolour Hound","Serrano Bulldog","Shar Pei","Shetland Sheepdog","Shiba Inu","Shih Tzu","Shikoku","Shiloh Shepherd","Siberian Husky","Silken Windhound","Silky Terrier","Sinhala Hound","Skye Terrier","Sloughi","Slovakian Wirehaired Pointer","Slovenský Cuvac","Slovenský Kopov","Smalandstövare","Small Greek domestic dog","Small Münsterländer","Smooth Collie","Smooth Fox Terrier","Soft-Coated Wheaten Terrier","South Russian Ovcharka","Spanish Mastiff","Spanish Water Dog","Spinone Italiano","Sporting Lucas Terrier","Stabyhoun","Staffordshire Bull Terrier","Standard Schnauzer","Stephens Stock","Styrian Coarse-haired Hound","Sussex Spaniel","Swedish Elkhound","Swedish Lapphund","Swedish Vallhund","Swedish White Elkhound","Taigan","Taiwan Dog","Tamaskan Dog","Teddy Roosevelt Terrier","Telomian","Tenterfield Terrier","Terrier Brasileiro","Thai Bangkaew Dog","Thai Ridgeback","Tibetan Mastiff","Tibetan Spaniel","Tibetan Terrier","Tornjak","Tosa","Toy Fox Terrier","Toy Manchester Terrier","Transylvanian Hound","Treeing Cur","Treeing Feist","Treeing Tennessee Brindle","Treeing Walker Coonhound","Trigg Hound","Tyrolean Hound","Vikhan","Villano de Las Encartaciones","Villanuco de Las Encartaciones","Vizsla","Volpino Italiano","Weimaraner","Welsh Sheepdog","Welsh Springer Spaniel","Welsh Terrier","West Highland White Terrier","West Siberian Laika","Westphalian Dachsbracke","Wetterhoun","Whippet","White Shepherd","White Swiss Shepherd Dog","Wire Fox Terrier","Wirehaired Pointing Griffon","Wirehaired Vizsla","Xiasi Dog","Xoloitzcuintli","Yakutian Laika","Yorkshire Terrier","Šarplaninac"],fish:["Alaska pollock","Albacore","Amur catfish","Araucanian herring","Argentine hake","Asari","Asian swamp eel","Atlantic cod","Atlantic herring","Atlantic horse mackerel","Atlantic mackerel","Atlantic menhaden","Atlantic salmon","Bigeye scad","Bigeye tuna","Bighead carp","Black carp","Blood cockle","Blue swimming crab","Blue whiting","Bombay-duck","Bonga shad","California pilchard","Cape horse mackerel","Capelin","Catla","Channel catfish","Chilean jack mackerel","Chinese perch","Chinese softshell turtle","Chub mackerel","Chum salmon","Common carp","Crucian carp","Daggertooth pike conger","European anchovy","European pilchard","European sprat","Filipino Venus","Gazami crab","Goldstripe sardinella","Grass carp","Gulf menhaden","Haddock","Hilsa shad","Indian mackerel","Indian oil sardine","Iridescent shark","Japanese anchovy","Japanese cockle","Japanese common catfish","Japanese flying squid","Japanese jack mackerel","Japanese littleneck","Japanese pilchard","Jumbo flying squid","Kawakawa","Korean bullhead","Largehead hairtail","Longtail tuna","Madeiran sardinella","Mandarin fish","Milkfish","Mrigal carp","Narrow-barred Spanish mackerel","Nile perch","Nile tilapia","North Pacific hake","Northern snakehead","Pacific anchoveta","Pacific cod","Pacific herring","Pacific sand lance","Pacific sandlance","Pacific saury","Pacific thread herring","Peruvian anchoveta","Pink salmon","Pollock","Pond loach","Rainbow trout","Rohu","Round sardinella","Short mackerel","Silver carp","Silver cyprinid","Skipjack tuna","Southern African anchovy","Southern rough shrimp","Whiteleg shrimp","Wuchang bream","Yellow croaker","Yellowfin tuna","Yellowhead catfish","Yellowstripe scad"],horse:["Abaco Barb","Abtenauer","Abyssinian","Aegidienberger","Akhal-Teke","Albanian Horse","Altai Horse","Altèr Real","American Albino","American Cream Draft","American Indian Horse","American Paint Horse","American Quarter Horse","American Saddlebred","American Warmblood","Andalusian Horse","Andravida Horse","Anglo-Arabian","Anglo-Arabo-Sardo","Anglo-Kabarda","Appaloosa","AraAppaloosa","Arabian Horse","Ardennes Horse","Arenberg-Nordkirchen","Argentine Criollo","Asian wild Horse","Assateague Horse","Asturcón","Augeron","Australian Brumby","Australian Draught Horse","Australian Stock Horse","Austrian Warmblood","Auvergne Horse","Auxois","Azerbaijan Horse","Azteca Horse","Baise Horse","Bale","Balearic Horse","Balikun Horse","Baluchi Horse","Banker Horse","Barb Horse","Bardigiano","Bashkir Curly","Basque Mountain Horse","Bavarian Warmblood","Belgian Half-blood","Belgian Horse","Belgian Warmblood ","Bhutia Horse","Black Forest Horse","Blazer Horse","Boerperd","Borana","Boulonnais Horse","Brabant","Brandenburger","Brazilian Sport Horse","Breton Horse","Brumby","Budyonny Horse","Burguete Horse","Burmese Horse","Byelorussian Harness Horse","Calabrese Horse","Camargue Horse","Camarillo White Horse","Campeiro","Campolina","Canadian Horse","Canadian Pacer","Carolina Marsh Tacky","Carthusian Horse","Caspian Horse","Castilian Horse","Castillonnais","Catria Horse","Cavallo Romano della Maremma Laziale","Cerbat Mustang","Chickasaw Horse","Chilean Corralero","Choctaw Horse","Cleveland Bay","Clydesdale Horse","Cob","Coldblood Trotter","Colonial Spanish Horse","Colorado Ranger","Comtois Horse","Corsican Horse","Costa Rican Saddle Horse","Cretan Horse","Criollo Horse","Croatian Coldblood","Cuban Criollo","Cumberland Island Horse","Curly Horse","Czech Warmblood","Daliboz","Danish Warmblood","Danube Delta Horse","Dole Gudbrandsdal","Don","Dongola Horse","Draft Trotter","Dutch Harness Horse","Dutch Heavy Draft","Dutch Warmblood","Dzungarian Horse","East Bulgarian","East Friesian Horse","Estonian Draft","Estonian Horse","Falabella","Faroese","Finnhorse","Fjord Horse","Fleuve","Florida Cracker Horse","Foutanké","Frederiksborg Horse","Freiberger","French Trotter","Friesian Cross","Friesian Horse","Friesian Sporthorse","Furioso-North Star","Galiceño","Galician Pony","Gelderland Horse","Georgian Grande Horse","German Warmblood","Giara Horse","Gidran","Groningen Horse","Gypsy Horse","Hackney Horse","Haflinger","Hanoverian Horse","Heck Horse","Heihe Horse","Henson Horse","Hequ Horse","Hirzai","Hispano-Bretón","Holsteiner Horse","Horro","Hungarian Warmblood","Icelandic Horse","Iomud","Irish Draught","Irish Sport Horse sometimes called Irish Hunter","Italian Heavy Draft","Italian Trotter","Jaca Navarra","Jeju Horse","Jutland Horse","Kabarda Horse","Kafa","Kaimanawa Horses","Kalmyk Horse","Karabair","Karabakh Horse","Karachai Horse","Karossier","Kathiawari","Kazakh Horse","Kentucky Mountain Saddle Horse","Kiger Mustang","Kinsky Horse","Kisber Felver","Kiso Horse","Kladruber","Knabstrupper","Konik","Kundudo","Kustanair","Kyrgyz Horse","Latvian Horse","Lipizzan","Lithuanian Heavy Draught","Lokai","Losino Horse","Lusitano","Lyngshest","M'Bayar","M'Par","Mallorquín","Malopolski","Mangalarga","Mangalarga Marchador","Maremmano","Marismeño Horse","Marsh Tacky","Marwari Horse","Mecklenburger","Menorquín","Messara Horse","Metis Trotter","Mezőhegyesi Sport Horse","Međimurje Horse","Miniature Horse","Misaki Horse","Missouri Fox Trotter","Monchina","Mongolian Horse","Mongolian Wild Horse","Monterufolino","Morab","Morgan Horse","Mountain Pleasure Horse","Moyle Horse","Murakoz Horse","Murgese","Mustang Horse","Mérens Horse","Namib Desert Horse","Nangchen Horse","National Show Horse","Nez Perce Horse","Nivernais Horse","Nokota Horse","Noma","Nonius Horse","Nooitgedachter","Nordlandshest","Noriker Horse","Norman Cob","North American Single-Footer Horse","North Swedish Horse","Norwegian Coldblood Trotter","Norwegian Fjord","Novokirghiz","Oberlander Horse","Ogaden","Oldenburg Horse","Orlov trotter","Ostfriesen","Paint","Pampa Horse","Paso Fino","Pentro Horse","Percheron","Persano Horse","Peruvian Paso","Pintabian","Pleven Horse","Poitevin Horse","Posavac Horse","Pottok","Pryor Mountain Mustang","Przewalski's Horse","Pura Raza Española","Purosangue Orientale","Qatgani","Quarab","Quarter Horse","Racking Horse","Retuerta Horse","Rhenish German Coldblood","Rhinelander Horse","Riwoche Horse","Rocky Mountain Horse","Romanian Sporthorse","Rottaler","Russian Don","Russian Heavy Draft","Russian Trotter","Saddlebred","Salerno Horse","Samolaco Horse","San Fratello Horse","Sarcidano Horse","Sardinian Anglo-Arab","Schleswig Coldblood","Schwarzwälder Kaltblut","Selale","Sella Italiano","Selle Français","Shagya Arabian","Shan Horse","Shire Horse","Siciliano Indigeno","Silesian Horse","Sokolsky Horse","Sorraia","South German Coldblood","Soviet Heavy Draft","Spanish Anglo-Arab","Spanish Barb","Spanish Jennet Horse","Spanish Mustang","Spanish Tarpan","Spanish-Norman Horse","Spiti Horse","Spotted Saddle Horse","Standardbred Horse","Suffolk Punch","Swedish Ardennes","Swedish Warmblood","Swedish coldblood trotter","Swiss Warmblood","Taishū Horse","Takhi","Tawleed","Tchernomor","Tennessee Walking Horse","Tersk Horse","Thoroughbred","Tiger Horse","Tinker Horse","Tolfetano","Tori Horse","Trait Du Nord","Trakehner","Tsushima","Tuigpaard","Ukrainian Riding Horse","Unmol Horse","Uzunyayla","Ventasso Horse","Virginia Highlander","Vlaamperd","Vladimir Heavy Draft","Vyatka","Waler","Waler Horse","Walkaloosa","Warlander","Warmblood","Welsh Cob","Westphalian Horse","Wielkopolski","Württemberger","Xilingol Horse","Yakutian Horse","Yili Horse","Yonaguni Horse","Zaniskari","Zhemaichu","Zweibrücker","Žemaitukas"],insect:["Acacia-ants","Acorn-plum gall","Aerial yellowjacket","Africanized honey bee","Allegheny mound ant","Almond stone wasp","Ant","Arboreal ant","Argentine ant","Asian paper wasp","Baldfaced hornet","Bee","Bigheaded ant","Black and yellow mud dauber","Black carpenter ant","Black imported fire ant","Blue horntail woodwasp","Blue orchard bee","Braconid wasp","Bumble bee","Carpenter ant","Carpenter wasp","Chalcid wasp","Cicada killer","Citrus blackfly parasitoid","Common paper wasp","Crazy ant","Cuckoo wasp","Cynipid gall wasp","Eastern Carpenter bee","Eastern yellowjacket","Elm sawfly","Encyrtid wasp","Erythrina gall wasp","Eulophid wasp","European hornet","European imported fire ant","False honey ant","Fire ant","Forest bachac","Forest yellowjacket","German yellowjacket","Ghost ant","Giant ichneumon wasp","Giant resin bee","Giant wood wasp","Golden northern bumble bee","Golden paper wasp","Gouty oak gall","Grass Carrying Wasp","Great black wasp","Great golden digger wasp","Hackberry nipple gall parasitoid","Honey bee","Horned oak gall","Horse guard wasp","Hunting wasp","Ichneumonid wasp","Keyhole wasp","Knopper gall","Large garden bumble bee","Large oak-apple gall","Leafcutting bee","Little fire ant","Little yellow ant","Long-horned bees","Long-legged ant","Macao paper wasp","Mallow bee","Marble gall","Mossyrose gall wasp","Mud-daubers","Multiflora rose seed chalcid","Oak apple gall wasp","Oak rough bulletgall wasp","Oak saucer gall","Oak shoot sawfly","Odorous house ant","Orange-tailed bumble bee","Orangetailed potter wasp","Oriental chestnut gall wasp","Paper wasp","Pavement ant","Pigeon tremex","Pip gall wasp","Prairie yellowjacket","Pteromalid wasp","Pyramid ant","Raspberry Horntail","Red ant","Red carpenter ant","Red harvester ant","Red imported fire ant","Red wasp","Red wood ant","Red-tailed wasp","Reddish carpenter ant","Rough harvester ant","Sawfly parasitic wasp","Scale parasitoid","Silky ant","Sirex woodwasp","Siricid woodwasp","Smaller yellow ant","Southeastern blueberry bee","Southern fire ant","Southern yellowjacket","Sphecid wasp","Stony gall","Sweat bee","Texas leafcutting ant","Tiphiid wasp","Torymid wasp","Tramp ant","Valentine ant","Velvet ant","Vespid wasp","Weevil parasitoid","Western harvester ant","Western paper wasp","Western thatching ant","Western yellowjacket","White-horned horntail","Willow shoot sawfly","Woodwasp","Wool sower gall maker","Yellow Crazy Ant","Yellow and black potter wasp","Yellow-horned horntail"],lion:["Asiatic Lion","Barbary Lion","Cape lion","Masai Lion","Northeast Congo Lion","Transvaal lion","West African Lion"],rabbit:["American","American Chinchilla","American Fuzzy Lop","American Sable","Argente Brun","Belgian Hare","Beveren","Blanc de Hotot","Britannia Petite","Californian","Champagne D’Argent","Checkered Giant","Cinnamon","Crème D’Argent","Dutch","Dwarf Hotot","English Angora","English Lop","English Spot","Flemish Giant","Florida White","French Angora","French Lop","Giant Angora","Giant Chinchilla","Harlequin","Havana","Himalayan","Holland Lop","Jersey Wooly","Lilac","Lionhead","Mini Lop","Mini Rex","Mini Satin","Netherland Dwarf","New Zealand","Palomino","Polish","Rex","Rhinelander","Satin","Satin Angora","Silver","Silver Fox","Silver Marten","Standard Chinchilla","Tan","Thrianta"],rodent:["Abrocoma","Abrocoma schistacea","Aconaemys","Aconaemys porteri","African brush-tailed porcupine","Andean mountain cavy","Argentine tuco-tuco","Ashy chinchilla rat","Asiatic brush-tailed porcupine","Atherurus","Azara's agouti","Azara's tuco-tuco","Bahia porcupine","Bathyergus","Bathyergus janetta","Bathyergus suillus","Bennett's chinchilla rat","Bicolored-spined porcupine","Black agouti","Black dwarf porcupine","Black-rumped agouti","Black-tailed hairy dwarf porcupine","Bolivian chinchilla rat","Bolivian tuco-tuco","Bonetto's tuco-tuco","Brandt's yellow-toothed cavy","Brazilian guinea pig","Brazilian porcupine","Brazilian tuco-tuco","Bridge's degu","Brown hairy dwarf porcupine","Budin's chinchilla rat, A. budini","Cape porcupine","Catamarca tuco-tuco","Cavia","Central American agouti","Chacoan tuco-tuco","Chilean rock rat","Chinchilla","Coendou","Coiban agouti","Colburn's tuco-tuco","Collared tuco-tuco","Common degu","Common yellow-toothed cavy","Conover's tuco-tuco","Coruro","Crested agouti","Crested porcupine","Cryptomys","Cryptomys bocagei","Cryptomys damarensis","Cryptomys foxi","Cryptomys hottentotus","Cryptomys mechowi","Cryptomys ochraceocinereus","Cryptomys zechi","Ctenomys","Cuniculus","Cuscomys","Cuscomys ashanika","Dactylomys","Dactylomys boliviensis","Dactylomys dactylinus","Dactylomys peruanus","Dasyprocta","Domestic guinea pig","Emily's tuco-tuco","Erethizon","Famatina chinchilla rat","Frosted hairy dwarf porcupine","Fukomys","Fukomys amatus","Fukomys anselli","Fukomys bocagei","Fukomys damarensis","Fukomys darlingi","Fukomys foxi","Fukomys ilariae","Fukomys kafuensis","Fukomys mechowii","Fukomys micklemi","Fukomys occlusus","Fukomys ochraceocinereus","Fukomys whytei","Fukomys zechi","Furtive tuco-tuco","Galea","Georychus","Georychus capensis","Golden viscacha-rat","Goya tuco-tuco","Greater guinea pig","Green acouchi","Haig's tuco-tuco","Heliophobius","Heliophobius argenteocinereus","Heterocephalus","Heterocephalus glaber","Highland tuco-tuco","Hystrix","Indian porcupine","Isla Mocha degu","Kalinowski agouti","Kannabateomys","Kannabateomys amblyonyx","Lagidium","Lagostomus","Lewis' tuco-tuco","Long-tailed chinchilla","Long-tailed porcupine","Los Chalchaleros' viscacha-rat","Lowland paca","Magellanic tuco-tuco","Malayan porcupine","Maule tuco-tuco","Mendoza tuco-tuco","Mexican agouti","Mexican hairy dwarf porcupine","Microcavia","Montane guinea pig","Moon-toothed degu","Mottled tuco-tuco","Mountain degu","Mountain paca","Mountain viscacha-rat","Myoprocta","Natterer's tuco-tuco","North American porcupine","Northern viscacha","Octodon","Octodontomys","Octomys","Olallamys","Olallamys albicauda","Olallamys edax","Orinoco agouti","Paraguaian hairy dwarf porcupine","Pearson's tuco-tuco","Peruvian tuco-tuco","Philippine porcupine","Pipanacoctomys","Plains viscacha","Plains viscacha-rat","Porteous' tuco-tuco","Punta de Vacas chinchilla rat","Red acouchi","Red-rumped agouti","Reddish tuco-tuco","Rio Negro tuco-tuco","Robust tuco-tuco","Roosmalen's dwarf porcupine","Rothschild's porcupine","Ruatan Island agouti","Sage's rock rat","Salinoctomys","Salta tuco-tuco","San Luis tuco-tuco","Santa Catarina's guinea pig","Shiny guinea pig","Shipton's mountain cavy","Short-tailed chinchilla","Silky tuco-tuco","Social tuco-tuco","Southern mountain cavy","Southern tuco-tuco","Southern viscacha","Spalacopus","Spix's yellow-toothed cavy","Steinbach's tuco-tuco","Streaked dwarf porcupine","Strong tuco-tuco","Stump-tailed porcupine","Sumatran porcupine","Sunda porcupine","Talas tuco-tuco","Tawny tuco-tuco","Thick-spined porcupine","Tiny tuco-tuco","Trichys","Tucuman tuco-tuco","Tympanoctomys","Uspallata chinchilla rat","White-toothed tuco-tuco","Wolffsohn's viscacha"],snake:["Abaco Island boa","Aesculapian snake","African beaked snake","African puff adder","African rock python","African twig snake","African wolf snake","Amazon tree boa","Amazonian palm viper","American Vine Snake","American copperhead","Amethystine python","Anaconda","Andaman cat snake","Andaman cobra","Angolan python","Annulated sea snake","Arabian cobra","Arafura file snake","Arizona black rattlesnake","Arizona coral snake","Aruba rattlesnake","Asian Vine Snake, Whip Snake","Asian cobra","Asian keelback","Asian pipe snake","Asp","Asp viper","Assam keelback","Australian copperhead","Australian scrub python","Baird's rat snake","Baja California lyresnake","Ball Python","Ball python","Bamboo pitviper","Bamboo viper","Banded Flying Snake","Banded cat-eyed snake","Banded krait","Banded pitviper","Banded water cobra","Barbour's pit viper","Barred wolf snake","Beaked sea snake","Beauty rat snake","Beddome's cat snake","Beddome's coral snake","Bimini racer","Bird snake","Bismarck ringed python","Black headed python","Black krait","Black mamba","Black rat snake","Black snake","Black tree cobra","Black-banded trinket snake","Black-headed snake","Black-necked cobra","Black-necked spitting cobra","Black-speckled palm-pitviper","Black-striped keelback","Black-tailed horned pit viper","Blanding's tree snake","Blind snake","Blonde hognose snake","Blood python","Blue krait","Blunt-headed tree snake","Bluntnose viper","Boa","Boa constrictor","Bocourt's water snake","Boelen python","Boiga","Bolivian anaconda","Boomslang","Bornean pitviper","Borneo short-tailed python","Brahminy blind snake","Brazilian coral snake","Brazilian mud Viper","Brazilian smooth snake","Bredl's python","Brongersma's pitviper","Brown snake","Brown spotted pitviper[4]","Brown tree snake","Brown water python","Brown white-lipped python","Buff striped keelback","Bull snake","Burmese keelback","Burmese krait","Burmese python","Burrowing cobra","Burrowing viper","Bush viper","Bushmaster","Buttermilk racer","Calabar python","California kingsnake","Canebrake","Cantil","Cantor's pitviper","Cape cobra","Cape coral snake","Cape gopher snake","Carpet viper","Cascabel","Caspian cobra","Cat snake","Cat-eyed night snake","Cat-eyed snake","Central American lyre snake","Central ranges taipan","Centralian carpet python","Ceylon krait","Chappell Island tiger snake","Checkered garter snake","Checkered keelback","Chicken snake","Chihuahuan ridge-nosed rattlesnake","Children's python","Chinese tree viper","Coachwhip snake","Coastal carpet python","Coastal taipan","Cobra","Collett's snake","Colorado desert sidewinder","Common adder","Common cobra","Common garter snake","Common ground snake","Common keelback","Common lancehead","Common tiger snake","Common worm snake","Congo snake","Congo water cobra","Copperhead","Coral snake","Corn snake","Coronado Island rattlesnake","Cottonmouth","Crossed viper","Crowned snake","Cuban boa","Cuban wood snake","Cyclades blunt-nosed viper","Dauan Island water python","De Schauensee's anaconda","Death Adder","Desert death adder","Desert kingsnake","Desert woma python","Diamond python","Dog-toothed cat snake","Down's tiger snake","Dubois's sea snake","Dumeril's boa","Durango rock rattlesnake","Dusky pigmy rattlesnake","Dusty hognose snake","Dwarf beaked snake","Dwarf boa","Dwarf pipe snake","Dwarf sand adder","Eastern brown snake","Eastern coral snake","Eastern diamondback rattlesnake","Eastern green mamba","Eastern hognose snake","Eastern lyre snake","Eastern mud snake","Eastern racer","Eastern tiger snake","Eastern water cobra","Eastern yellowbelly sad racer","Egg-eater","Egyptian asp","Egyptian cobra","Elegant pitviper","Emerald tree boa","Equatorial spitting cobra","European asp","European smooth snake","Eyelash palm-pitviper","Eyelash pit viper","Eyelash viper","False cobra","False horned viper","False water cobra","Fan-Si-Pan horned pitviper","Fea's viper","Fer-de-lance","Fierce snake","Fifty pacer","Fishing snake","Flat-nosed pitviper","Flinders python","Flying snake","Forest cobra","Forest flame snake","Forsten's cat snake","Fox snake, three species of Pantherophis","Gaboon viper","Garter snake","Giant Malagasy hognose snake","Godman's pit viper","Gold tree cobra","Gold-ringed cat snake","Golden tree snake","Grand Canyon rattlesnake","Grass snake","Gray cat snake","Great Basin rattlesnake","Great Lakes bush viper","Great Plains rat snake","Green anaconda","Green cat-eyed snake","Green mamba","Green palm viper","Green rat snake","Green snake","Green tree pit viper","Green tree python","Grey Lora","Grey-banded kingsnake","Ground snake","Guatemalan palm viper","Guatemalan tree viper","Habu","Habu pit viper","Hagen's pitviper","Hairy bush viper","Halmahera python","Hardwicke's sea snake","Harlequin coral snake","High Woods coral snake","Hill keelback","Himalayan keelback","Hogg Island boa","Hognose snake","Hognosed viper","Honduran palm viper","Hook Nosed Sea Snake","Hopi rattlesnake","Horned adder","Horned desert viper","Horned viper","Horseshoe pitviper","Hundred pacer","Hutton's tree viper","Ikaheka snake","Indian cobra","Indian flying snake","Indian krait","Indian python","Indian tree viper","Indigo snake","Indochinese spitting cobra","Indonesian water python","Inland carpet python","Inland taipan","Jamaican Tree Snake","Jamaican boa","Jan's hognose snake","Japanese forest rat snake","Japanese rat snake","Japanese striped snake","Javan spitting cobra","Jerdon's pitviper","Jumping viper","Jungle carpet python","Kanburian pit viper","Kaulback's lance-headed pitviper","Kayaudi dwarf reticulated python","Kaznakov's viper","Keelback","Kham Plateau pitviper","Khasi Hills keelback","King Island tiger snake","King brown","King cobra","King rat snake","King snake","Krait","Krefft's tiger snake","Lance-headed rattlesnake","Lancehead","Large shield snake","Large-eyed pitviper","Large-scaled tree viper","Leaf viper","Leaf-nosed viper","Lesser black krait","Levant viper","Long-nosed adder","Long-nosed tree snake","Long-nosed viper","Long-nosed whip snake","Long-tailed rattlesnake","Longnosed worm snake","Lora","Lyre snake","Machete savane","Macklot's python","Madagascar ground boa","Madagascar tree boa","Malabar rock pitviper","Malayan krait","Malayan long-glanded coral snake","Malayan pit viper","Malcolm's tree viper","Mamba","Mamushi","Manchurian Black Water Snake","Mandalay cobra","Mandarin rat snake","Mangrove pit viper","Mangrove snake","Mangshan pitviper","Many-banded krait","Many-banded tree snake","Many-horned adder","Many-spotted cat snake","Massasauga rattlesnake","McMahon's viper","Mexican black kingsnake","Mexican green rattlesnake","Mexican hognose snake","Mexican palm-pitviper","Mexican parrot snake","Mexican racer","Mexican vine snake","Mexican west coast rattlesnake","Midget faded rattlesnake","Milk snake","Moccasin snake","Modest keelback","Mojave desert sidewinder","Mojave rattlesnake","Mole viper","Mollucan python","Moluccan flying snake","Montpellier snake","Motuo bamboo pitviper","Mountain adder","Mozambique spitting cobra","Mud adder","Mud snake","Mussurana","Namaqua dwarf adder","Namib dwarf sand adder","Narrowhead Garter Snake","New Guinea carpet python","Nichell snake","Nicobar Island keelback","Nicobar bamboo pitviper","Night snake","Nightingale adder","Nilgiri keelback","Nitsche's bush viper","Nitsche's tree viper","North Philippine cobra","North eastern king snake","Northeastern hill krait","Northern black-tailed rattlesnake","Northern tree snake","Northern water snake","Northern white-lipped python","Northwestern carpet python","Nose-horned viper","Nubian spitting cobra","Oaxacan small-headed rattlesnake","Oenpelli python","Olive python","Olive sea snake","Orange-collared keelback","Ornate flying snake","Palestine viper","Pallas' viper","Palm viper","Papuan python","Paradise flying snake","Parrot snake","Patchnose snake","Paupan taipan","Pelagic sea snake","Peninsula tiger snake","Peringuey's adder","Perrotet's shieldtail snake","Persian rat snake","Philippine cobra","Philippine pitviper","Pine snake","Pipe snake","Pit viper","Pointed-scaled pit viper[5]","Pope's tree viper","Portuguese viper","Prairie kingsnake","Puerto Rican boa","Puff adder","Pygmy python","Python","Queen snake","Racer","Raddysnake","Rainbow boa","Rat snake","Rattler","Rattlesnake","Red blood python","Red diamond rattlesnake","Red spitting cobra","Red-backed rat snake","Red-bellied black snake","Red-headed krait","Red-necked keelback","Red-tailed bamboo pitviper","Red-tailed boa","Red-tailed pipe snake","Reticulated python","Rhinoceros viper","Rhombic night adder","Ribbon snake","Rinkhals","Rinkhals cobra","River jack","Rosy boa","Rough green snake","Rough-scaled bush viper","Rough-scaled python","Rough-scaled tree viper","Royal python","Rubber boa","Rufous beaked snake","Rungwe tree viper","San Francisco garter snake","Sand adder","Sand boa","Savu python","Saw-scaled viper","Scarlet kingsnake","Schlegel's viper","Schultze's pitviper","Sea snake","Sedge viper","Selayer reticulated python","Sharp-nosed viper","Shield-nosed cobra","Shield-tailed snake","Siamese palm viper","Side-striped palm-pitviper","Sidewinder","Sikkim keelback","Sinai desert cobra","Sind krait","Small-eyed snake","Smooth green snake","Smooth snake","Snorkel viper","Snouted cobra","Sonoran sidewinder","South American hognose snake","South eastern corn snake","Southern Indonesian spitting cobra","Southern Pacific rattlesnake","Southern Philippine cobra","Southern black racer","Southern white-lipped python","Southwestern black spitting cobra","Southwestern blackhead snake","Southwestern carpet python","Southwestern speckled rattlesnake","Speckle-bellied keelback","Speckled kingsnake","Spectacled cobra","Spiny bush viper","Spitting cobra","Spotted python","Sri Lankan pit viper","Stejneger's bamboo pitviper","Stiletto snake","Stimson's python","Stoke's sea snake","Storm water cobra","Striped snake","Sumatran short-tailed python","Sumatran tree viper","Sunbeam snake","Taipan","Taiwan cobra","Tan racer","Tancitaran dusky rattlesnake","Tanimbar python","Tasmanian tiger snake","Tawny cat snake","Temple pit viper","Temple viper","Tentacled snake","Texas Coral Snake","Texas blind snake","Texas garter snake","Texas lyre snake","Texas night snake","Thai cobra","Three-lined ground snake","Tibetan bamboo pitviper","Tic polonga","Tiger pit viper","Tiger rattlesnake","Tiger snake","Tigre snake","Timber rattlesnake","Timor python","Titanboa","Tree boa","Tree snake","Tree viper","Trinket snake","Tropical rattlesnake","Twig snake","Twin Headed King Snake","Twin-Barred tree snake","Twin-spotted rat snake","Twin-spotted rattlesnake","Undulated pit viper","Uracoan rattlesnake","Ursini's viper","Urutu","Vine snake","Viper","Viper Adder","Vipera ammodytes","Wagler's pit viper","Wart snake","Water adder","Water moccasin","Water snake","West Indian racer","Western blind snake","Western carpet python","Western coral snake","Western diamondback rattlesnake","Western green mamba","Western ground snake","Western hog-nosed viper","Western mud snake","Western tiger snake","Western woma python","Wetar Island python","Whip snake","White-lipped keelback","White-lipped python","White-lipped tree viper","Wirot's pit viper","Wolf snake","Woma python","Worm snake","Wutu","Wynaad keelback","Yarara","Yellow anaconda","Yellow-banded sea snake","Yellow-bellied sea snake","Yellow-lined palm viper","Yellow-lipped sea snake","Yellow-striped rat snake","Yunnan keelback","Zebra snake","Zebra spitting cobra"],type:["bat","bear","bee","bird","butterfly","cat","cow","crocodile","deer","dog","dolphin","eagle","elephant","fish","flamingo","fox","frog","gecko","giraffe","gorilla","hamster","hippopotamus","horse","kangaroo","koala","lion","monkey","ostrich","panda","parrot","peacock","penguin","polar bear","rabbit","rhinoceros","sea lion","shark","snake","squirrel","tiger","turtle","whale","wolf","zebra"]},app:{author:["{{person.name}}","{{company.name}}"],name:["Redhold","Treeflex","Trippledex","Kanlam","Bigtax","Daltfresh","Toughjoyfax","Mat Lam Tam","Otcom","Tres-Zap","Y-Solowarm","Tresom","Voltsillam","Biodex","Greenlam","Viva","Matsoft","Temp","Zoolab","Subin","Rank","Job","Stringtough","Tin","It","Home Ing","Zamit","Sonsing","Konklab","Alpha","Latlux","Voyatouch","Alphazap","Holdlamis","Zaam-Dox","Sub-Ex","Quo Lux","Bamity","Ventosanzap","Lotstring","Hatity","Tempsoft","Overhold","Fixflex","Konklux","Zontrax","Tampflex","Span","Namfix","Transcof","Stim","Fix San","Sonair","Stronghold","Fintone","Y-find","Opela","Lotlux","Ronstring","Zathin","Duobam","Keylex"],version:["0.#.#","0.##","#.##","#.#","#.#.#"]},cell_phone:{formats:["###-###-####","(###) ###-####","1-###-###-####","###.###.####"]},color:{human:["azure","black","blue","cyan","fuchsia","gold","green","grey","indigo","ivory","lavender","lime","magenta","maroon","mint green","olive","orange","orchid","pink","plum","purple","red","salmon","silver","sky blue","tan","teal","turquoise","violet","white","yellow"]},commerce:{department:["Automotive","Baby","Beauty","Books","Clothing","Computers","Electronics","Games","Garden","Grocery","Health","Home","Industrial","Jewelry","Kids","Movies","Music","Outdoors","Shoes","Sports","Tools","Toys"],product_description:["Andy shoes are designed to keeping in mind durability as well as trends, the most stylish range of shoes & sandals","Boston's most advanced compression wear technology increases muscle oxygenation, stabilizes active muscles","Carbonite web goalkeeper gloves are ergonomically designed to give easy fit","Ergonomic executive chair upholstered in bonded black leather and PVC padded seat and back for all-day comfort and support","New ABC 13 9370, 13.3, 5th Gen CoreA5-8250U, 8GB RAM, 256GB SSD, power UHD Graphics, OS 10 Home, OS Office A & J 2016","New range of formal shirts are designed keeping you in mind. With fits and styling that will make you stand apart","The Apollotech B340 is an affordable wireless mouse with reliable connectivity, 12 months battery life and modern design","The Football Is Good For Training And Recreational Purposes","The Nagasaki Lander is the trademarked name of several series of Nagasaki sport bikes, that started with the 1984 ABC800J","The automobile layout consists of a front-engine design, with transaxle-type transmissions mounted at the rear of the engine and four wheel drive","The beautiful range of Apple Naturalé that has an exciting mix of natural ingredients. With the Goodness of 100% Natural Ingredients","The slim & simple Maple Gaming Keyboard from Dev Byte comes with a sleek body and 7- Color RGB LED Back-lighting for smart functionality"],product_name:{adjective:["Awesome","Bespoke","Electronic","Elegant","Ergonomic","Fantastic","Generic","Gorgeous","Handcrafted","Handmade","Incredible","Intelligent","Licensed","Luxurious","Modern","Oriental","Practical","Recycled","Refined","Rustic","Sleek","Small","Tasty","Unbranded"],material:["Bronze","Concrete","Cotton","Fresh","Frozen","Granite","Metal","Plastic","Rubber","Soft","Steel","Wooden"],product:["Bacon","Ball","Bike","Car","Chair","Cheese","Chicken","Chips","Computer","Fish","Gloves","Hat","Keyboard","Mouse","Pants","Pizza","Salad","Sausages","Shirt","Shoes","Soap","Table","Towels","Tuna"]}},company:{adjective:["Adaptive","Advanced","Ameliorated","Assimilated","Automated","Balanced","Business-focused","Centralized","Cloned","Compatible","Configurable","Cross-group","Cross-platform","Customer-focused","Customizable","De-engineered","Decentralized","Devolved","Digitized","Distributed","Diverse","Down-sized","Enhanced","Enterprise-wide","Ergonomic","Exclusive","Expanded","Extended","Face to face","Focused","Front-line","Fully-configurable","Function-based","Fundamental","Future-proofed","Grass-roots","Horizontal","Implemented","Innovative","Integrated","Intuitive","Inverse","Managed","Mandatory","Monitored","Multi-channelled","Multi-lateral","Multi-layered","Multi-tiered","Networked","Object-based","Open-architected","Open-source","Operative","Optimized","Optional","Organic","Organized","Persevering","Persistent","Phased","Polarised","Pre-emptive","Proactive","Profit-focused","Profound","Programmable","Progressive","Public-key","Quality-focused","Re-contextualized","Re-engineered","Reactive","Realigned","Reduced","Reverse-engineered","Right-sized","Robust","Seamless","Secured","Self-enabling","Sharable","Stand-alone","Streamlined","Switchable","Synchronised","Synergistic","Synergized","Team-oriented","Total","Triple-buffered","Universal","Up-sized","Upgradable","User-centric","User-friendly","Versatile","Virtual","Vision-oriented","Visionary"],buzz_adjective:["24/365","24/7","B2B","B2C","back-end","best-of-breed","bleeding-edge","bricks-and-clicks","clicks-and-mortar","collaborative","compelling","cross-media","cross-platform","customized","cutting-edge","distributed","dot-com","dynamic","e-business","efficient","end-to-end","enterprise","extensible","frictionless","front-end","global","granular","holistic","impactful","innovative","integrated","interactive","intuitive","killer","leading-edge","magnetic","mission-critical","next-generation","one-to-one","open-source","out-of-the-box","plug-and-play","proactive","real-time","revolutionary","rich","robust","scalable","seamless","sexy","sticky","strategic","synergistic","transparent","turn-key","ubiquitous","user-centric","value-added","vertical","viral","virtual","visionary","web-enabled","wireless","world-class"],buzz_noun:["ROI","action-items","applications","architectures","bandwidth","blockchains","channels","communities","content","convergence","deliverables","e-business","e-commerce","e-markets","experiences","eyeballs","functionalities","infrastructures","initiatives","interfaces","lifetime value","markets","methodologies","metrics","mindshare","models","networks","niches","paradigms","partnerships","platforms","portals","relationships","schemas","solutions","supply-chains","synergies","systems","technologies","users","web services"],buzz_verb:["aggregate","architect","benchmark","brand","cultivate","deliver","deploy","disintermediate","drive","e-enable","embrace","empower","enable","engage","engineer","enhance","envisioneer","evolve","expedite","exploit","extend","facilitate","generate","grow","harness","implement","incentivize","incubate","innovate","integrate","iterate","leverage","matrix","maximize","mesh","monetize","morph","optimize","orchestrate","productize","recontextualize","redefine","reintermediate","reinvent","repurpose","revolutionize","scale","seize","strategize","streamline","syndicate","synergize","synthesize","target","transform","transition","unleash","utilize","visualize","whiteboard"],descriptor:["24 hour","24/7","3rd generation","4th generation","5th generation","6th generation","actuating","analyzing","asymmetric","asynchronous","attitude-oriented","background","bandwidth-monitored","bi-directional","bifurcated","bottom-line","clear-thinking","client-driven","client-server","coherent","cohesive","composite","content-based","context-sensitive","contextually-based","dedicated","demand-driven","didactic","directional","discrete","disintermediate","dynamic","eco-centric","empowering","encompassing","even-keeled","executive","explicit","exuding","fault-tolerant","foreground","fresh-thinking","full-range","global","grid-enabled","heuristic","high-level","holistic","homogeneous","human-resource","hybrid","impactful","incremental","intangible","interactive","intermediate","leading edge","local","logistical","maximized","methodical","mission-critical","mobile","modular","motivating","multi-state","multi-tasking","multimedia","national","needs-based","neutral","next generation","non-volatile","object-oriented","optimal","optimizing","radical","real-time","reciprocal","regional","responsive","scalable","secondary","solution-oriented","stable","static","system-worthy","systematic","systemic","tangible","tertiary","transitional","uniform","upward-trending","user-facing","value-added","web-enabled","well-modulated","zero administration","zero defect","zero tolerance"],legal_entity_type:["Group","Inc","LLC","and Sons"],name_pattern:["{{person.last_name.generic}} - {{person.last_name.generic}}","{{person.last_name.generic}} {{company.legal_entity_type}}","{{person.last_name.generic}}, {{person.last_name.generic}} and {{person.last_name.generic}}"],noun:["Graphic Interface","Graphical User Interface","ability","access","adapter","algorithm","alliance","analyzer","application","approach","architecture","archive","array","artificial intelligence","attitude","benchmark","budgetary management","capability","capacity","challenge","circuit","collaboration","complexity","concept","conglomeration","contingency","core","customer loyalty","data-warehouse","database","definition","emulation","encoding","encryption","extranet","firmware","flexibility","focus group","forecast","frame","framework","function","functionalities","groupware","hardware","help-desk","hierarchy","hub","implementation","info-mediaries","infrastructure","initiative","installation","instruction set","interface","internet solution","intranet","knowledge base","knowledge user","leverage","local area network","matrices","matrix","methodology","middleware","migration","model","moderator","monitoring","moratorium","neural-net","open architecture","open system","orchestration","paradigm","parallelism","policy","portal","pricing structure","process improvement","product","productivity","project","projection","protocol","secured line","service-desk","software","solution","standardization","strategy","structure","success","superstructure","support","synergy","system engine","task-force","throughput","time-frame","toolset","utilisation","website","workforce"]},database:{column:["avatar","category","comment","createdAt","email","group","id","name","password","phone","status","title","token","updatedAt"]},date:{month:{wide:["April","August","December","February","January","July","June","March","May","November","October","September"],abbr:["Apr","Aug","Dec","Feb","Jan","Jul","Jun","Mar","May","Nov","Oct","Sep"]},weekday:{wide:["Friday","Monday","Saturday","Sunday","Thursday","Tuesday","Wednesday"],abbr:["Fri","Mon","Sat","Sun","Thu","Tue","Wed"]}},finance:{account_type:["Auto Loan","Checking","Credit Card","Home Loan","Investment","Money Market","Personal Loan","Savings"],credit_card:{american_express:["34##-######-####L","37##-######-####L"],diners_club:["30[0-5]#-######-###L","36##-######-###L","54##-####-####-###L"],discover:["6011-####-####-###L","6011-62##-####-####-###L","64[4-9]#-####-####-###L","64[4-9]#-62##-####-####-###L","65##-####-####-###L","65##-62##-####-####-###L"],jcb:["3528-####-####-###L","3529-####-####-###L","35[3-8]#-####-####-###L"],mastercard:["2[221-720]-####-####-###L","5[1-5]##-####-####-###L"],visa:["4###########L","4###-####-####-###L"]},currency:[{name:"UAE Dirham",code:"AED",symbol:""},{name:"Afghani",code:"AFN",symbol:"؋"},{name:"Lek",code:"ALL",symbol:"Lek"},{name:"Armenian Dram",code:"AMD",symbol:""},{name:"Netherlands Antillian Guilder",code:"ANG",symbol:"ƒ"},{name:"Kwanza",code:"AOA",symbol:""},{name:"Argentine Peso",code:"ARS",symbol:"$"},{name:"Australian Dollar",code:"AUD",symbol:"$"},{name:"Aruban Guilder",code:"AWG",symbol:"ƒ"},{name:"Azerbaijanian Manat",code:"AZN",symbol:"ман"},{name:"Convertible Marks",code:"BAM",symbol:"KM"},{name:"Barbados Dollar",code:"BBD",symbol:"$"},{name:"Taka",code:"BDT",symbol:""},{name:"Bulgarian Lev",code:"BGN",symbol:"лв"},{name:"Bahraini Dinar",code:"BHD",symbol:""},{name:"Burundi Franc",code:"BIF",symbol:""},{name:"Bermudian Dollar (customarily known as Bermuda Dollar)",code:"BMD",symbol:"$"},{name:"Brunei Dollar",code:"BND",symbol:"$"},{name:"Boliviano boliviano",code:"BOB",symbol:"Bs"},{name:"Brazilian Real",code:"BRL",symbol:"R$"},{name:"Bahamian Dollar",code:"BSD",symbol:"$"},{name:"Pula",code:"BWP",symbol:"P"},{name:"Belarusian Ruble",code:"BYN",symbol:"Rbl"},{name:"Belize Dollar",code:"BZD",symbol:"BZ$"},{name:"Canadian Dollar",code:"CAD",symbol:"$"},{name:"Congolese Franc",code:"CDF",symbol:""},{name:"Swiss Franc",code:"CHF",symbol:"CHF"},{name:"Chilean Peso",code:"CLP",symbol:"$"},{name:"Yuan Renminbi",code:"CNY",symbol:"¥"},{name:"Colombian Peso",code:"COP",symbol:"$"},{name:"Costa Rican Colon",code:"CRC",symbol:"₡"},{name:"Cuban Peso",code:"CUP",symbol:"₱"},{name:"Cape Verde Escudo",code:"CVE",symbol:""},{name:"Czech Koruna",code:"CZK",symbol:"Kč"},{name:"Djibouti Franc",code:"DJF",symbol:""},{name:"Danish Krone",code:"DKK",symbol:"kr"},{name:"Dominican Peso",code:"DOP",symbol:"RD$"},{name:"Algerian Dinar",code:"DZD",symbol:""},{name:"Egyptian Pound",code:"EGP",symbol:"£"},{name:"Nakfa",code:"ERN",symbol:""},{name:"Ethiopian Birr",code:"ETB",symbol:""},{name:"Euro",code:"EUR",symbol:"€"},{name:"Fiji Dollar",code:"FJD",symbol:"$"},{name:"Falkland Islands Pound",code:"FKP",symbol:"£"},{name:"Pound Sterling",code:"GBP",symbol:"£"},{name:"Lari",code:"GEL",symbol:""},{name:"Cedi",code:"GHS",symbol:""},{name:"Gibraltar Pound",code:"GIP",symbol:"£"},{name:"Dalasi",code:"GMD",symbol:""},{name:"Guinea Franc",code:"GNF",symbol:""},{name:"Quetzal",code:"GTQ",symbol:"Q"},{name:"Guyana Dollar",code:"GYD",symbol:"$"},{name:"Hong Kong Dollar",code:"HKD",symbol:"$"},{name:"Lempira",code:"HNL",symbol:"L"},{name:"Gourde",code:"HTG",symbol:""},{name:"Forint",code:"HUF",symbol:"Ft"},{name:"Rupiah",code:"IDR",symbol:"Rp"},{name:"New Israeli Sheqel",code:"ILS",symbol:"₪"},{name:"Bhutanese Ngultrum",code:"BTN",symbol:"Nu"},{name:"Indian Rupee",code:"INR",symbol:"₹"},{name:"Iraqi Dinar",code:"IQD",symbol:""},{name:"Iranian Rial",code:"IRR",symbol:"﷼"},{name:"Iceland Krona",code:"ISK",symbol:"kr"},{name:"Jamaican Dollar",code:"JMD",symbol:"J$"},{name:"Jordanian Dinar",code:"JOD",symbol:""},{name:"Yen",code:"JPY",symbol:"¥"},{name:"Kenyan Shilling",code:"KES",symbol:""},{name:"Som",code:"KGS",symbol:"лв"},{name:"Riel",code:"KHR",symbol:"៛"},{name:"Comoro Franc",code:"KMF",symbol:""},{name:"North Korean Won",code:"KPW",symbol:"₩"},{name:"Won",code:"KRW",symbol:"₩"},{name:"Kuwaiti Dinar",code:"KWD",symbol:""},{name:"Cayman Islands Dollar",code:"KYD",symbol:"$"},{name:"Tenge",code:"KZT",symbol:"лв"},{name:"Kip",code:"LAK",symbol:"₭"},{name:"Lebanese Pound",code:"LBP",symbol:"£"},{name:"Sri Lanka Rupee",code:"LKR",symbol:"₨"},{name:"Liberian Dollar",code:"LRD",symbol:"$"},{name:"Libyan Dinar",code:"LYD",symbol:""},{name:"Moroccan Dirham",code:"MAD",symbol:""},{name:"Moldovan Leu",code:"MDL",symbol:""},{name:"Malagasy Ariary",code:"MGA",symbol:""},{name:"Denar",code:"MKD",symbol:"ден"},{name:"Kyat",code:"MMK",symbol:""},{name:"Tugrik",code:"MNT",symbol:"₮"},{name:"Pataca",code:"MOP",symbol:""},{name:"Ouguiya",code:"MRU",symbol:""},{name:"Mauritius Rupee",code:"MUR",symbol:"₨"},{name:"Rufiyaa",code:"MVR",symbol:""},{name:"Kwacha",code:"MWK",symbol:""},{name:"Mexican Peso",code:"MXN",symbol:"$"},{name:"Malaysian Ringgit",code:"MYR",symbol:"RM"},{name:"Metical",code:"MZN",symbol:"MT"},{name:"Naira",code:"NGN",symbol:"₦"},{name:"Cordoba Oro",code:"NIO",symbol:"C$"},{name:"Norwegian Krone",code:"NOK",symbol:"kr"},{name:"Nepalese Rupee",code:"NPR",symbol:"₨"},{name:"New Zealand Dollar",code:"NZD",symbol:"$"},{name:"Rial Omani",code:"OMR",symbol:"﷼"},{name:"Balboa",code:"PAB",symbol:"B/."},{name:"Nuevo Sol",code:"PEN",symbol:"S/."},{name:"Kina",code:"PGK",symbol:""},{name:"Philippine Peso",code:"PHP",symbol:"Php"},{name:"Pakistan Rupee",code:"PKR",symbol:"₨"},{name:"Zloty",code:"PLN",symbol:"zł"},{name:"Guarani",code:"PYG",symbol:"Gs"},{name:"Qatari Rial",code:"QAR",symbol:"﷼"},{name:"New Leu",code:"RON",symbol:"lei"},{name:"Serbian Dinar",code:"RSD",symbol:"Дин."},{name:"Russian Ruble",code:"RUB",symbol:"руб"},{name:"Rwanda Franc",code:"RWF",symbol:""},{name:"Saudi Riyal",code:"SAR",symbol:"﷼"},{name:"Solomon Islands Dollar",code:"SBD",symbol:"$"},{name:"Seychelles Rupee",code:"SCR",symbol:"₨"},{name:"Sudanese Pound",code:"SDG",symbol:""},{name:"Swedish Krona",code:"SEK",symbol:"kr"},{name:"Singapore Dollar",code:"SGD",symbol:"$"},{name:"Saint Helena Pound",code:"SHP",symbol:"£"},{name:"Leone",code:"SLE",symbol:""},{name:"Somali Shilling",code:"SOS",symbol:"S"},{name:"Surinam Dollar",code:"SRD",symbol:"$"},{name:"South Sudanese pound",code:"SSP",symbol:""},{name:"Dobra",code:"STN",symbol:"Db"},{name:"Syrian Pound",code:"SYP",symbol:"£"},{name:"Lilangeni",code:"SZL",symbol:""},{name:"Baht",code:"THB",symbol:"฿"},{name:"Somoni",code:"TJS",symbol:""},{name:"Manat",code:"TMT",symbol:""},{name:"Tunisian Dinar",code:"TND",symbol:""},{name:"Pa'anga",code:"TOP",symbol:""},{name:"Turkish Lira",code:"TRY",symbol:"₺"},{name:"Trinidad and Tobago Dollar",code:"TTD",symbol:"TT$"},{name:"New Taiwan Dollar",code:"TWD",symbol:"NT$"},{name:"Tanzanian Shilling",code:"TZS",symbol:""},{name:"Hryvnia",code:"UAH",symbol:"₴"},{name:"Uganda Shilling",code:"UGX",symbol:""},{name:"US Dollar",code:"USD",symbol:"$"},{name:"Peso Uruguayo",code:"UYU",symbol:"$U"},{name:"Uzbekistan Sum",code:"UZS",symbol:"лв"},{name:"Venezuelan bolívar",code:"VES",symbol:"Bs"},{name:"Dong",code:"VND",symbol:"₫"},{name:"Vatu",code:"VUV",symbol:""},{name:"Tala",code:"WST",symbol:""},{name:"CFA Franc BEAC",code:"XAF",symbol:""},{name:"East Caribbean Dollar",code:"XCD",symbol:"$"},{name:"CFA Franc BCEAO",code:"XOF",symbol:""},{name:"CFP Franc",code:"XPF",symbol:""},{name:"Yemeni Rial",code:"YER",symbol:"﷼"},{name:"Rand",code:"ZAR",symbol:"R"},{name:"Lesotho Loti",code:"LSL",symbol:""},{name:"Namibia Dollar",code:"NAD",symbol:"N$"},{name:"Zambian Kwacha",code:"ZMW",symbol:"K"},{name:"Zimbabwe Dollar",code:"ZWL",symbol:""}],transaction_type:["deposit","invoice","payment","withdrawal"]},food:{adjective:["bitter","creamy","crispy","crunchy","delicious","fluffy","fresh","golden","juicy","moist","rich","salty","savory","smoky","sour","spicy","sweet","tangy","tender","zesty"],description_pattern:["A classic pie filled with delicious {{food.meat}} and {{food.adjective}} {{food.ingredient}}, baked in a {{food.adjective}} pastry crust and topped with a golden-brown lattice.","A delightful tart combining {{food.adjective}} {{food.vegetable}} and sweet {{food.fruit}}, set in a buttery pastry shell and finished with a hint of {{food.spice}}.","A heartwarming {{food.ethnic_category}} soup, featuring fresh {{food.ingredient}} and an aromatic blend of traditional spices.","A robust {{food.adjective}} stew featuring {{food.ethnic_category}} flavors, loaded with {{food.adjective}} meat, {{food.adjective}} vegetables, and a {{food.adjective}}, {{food.adjective}} broth.","A simple {{food.fruit}} pie. No fancy stuff. Just pie.","A slow-roasted {{animal.bird}} with a {{food.adjective}}, {{food.adjective}} exterior. Stuffed with {{food.fruit}} and covered in {{food.fruit}} sauce. Sides with {{food.vegetable}} puree and wild {{food.vegetable}}.","A special {{color.human}} {{food.ingredient}} from {{location.country}}. To support the strong flavor it is sided with a tablespoon of {{food.spice}}.","A succulent {{food.meat}} steak, encased in a {{food.adjective}} {{food.spice}} crust, served with a side of {{food.spice}} mashed {{food.vegetable}}.","An exquisite {{food.meat}} roast, infused with the essence of {{food.fruit}}, slow-roasted to bring out its natural flavors and served with a side of creamy {{food.vegetable}}","Baked {{food.ingredient}}-stuffed {{food.meat}}, seasoned with {{food.spice}} and {{food.adjective}} herbs, accompanied by roasted {{food.vegetable}} medley.","Crispy fried {{food.meat}} bites, seasoned with {{food.spice}} and served with a tangy {{food.fruit}} dipping sauce.","Fresh mixed greens tossed with {{food.spice}}-rubbed {{food.meat}}, {{food.vegetable}}, and a light dressing.","Fresh {{food.ingredient}} with a pinch of {{food.spice}}, topped by a caramelized {{food.fruit}} with whipped cream","Grilled {{food.meat}} kebabs, marinated in {{food.ethnic_category}} spices and served with a fresh {{food.vegetable}} and {{food.fruit}} salad.","Hearty {{food.ingredient}} and {{food.meat}} stew, slow-cooked with {{food.spice}} and {{food.vegetable}} for a comforting, flavorful meal.","Juicy {{food.meat}}, grilled to your liking and drizzled with a bold {{food.spice}} sauce, served alongside roasted {{food.vegetable}}.","Our {{food.adjective}} {{food.meat}}, slow-cooked to perfection, accompanied by steamed {{food.vegetable}} and a rich, savory gravy.","Tender {{food.meat}} skewers, glazed with a sweet and tangy {{food.fruit}} sauce, served over a bed of fragrant jasmine rice.","Tenderly braised {{food.meat}} in a rich {{food.spice}} and {{food.vegetable}} sauce, served with a side of creamy {{food.vegetable}}.","Three {{food.ingredient}} with {{food.vegetable}}, {{food.vegetable}}, {{food.vegetable}}, {{food.vegetable}} and {{food.ingredient}}. With a side of baked {{food.fruit}}, and your choice of {{food.ingredient}} or {{food.ingredient}}.",'{{number.int({"min":1, "max":99})}}-day aged {{food.meat}} steak, with choice of {{number.int({"min":2, "max":4})}} sides.'],dish:["California maki","Peking duck","Philadelphia maki","arepas","barbecue ribs","bruschette with tomato","bunny chow","caesar salad","caprese salad","cauliflower penne","cheeseburger","chicken fajitas","chicken milanese","chicken parm","chicken wings","chilli con carne","ebiten maki","fettuccine alfredo","fish and chips","french fries with sausages","french toast","hummus","katsu curry","kebab","lasagne","linguine with clams","massaman curry","meatballs with sauce","mushroom risotto","pappardelle alla bolognese","pasta and beans","pasta carbonara","pasta with tomato and basil","pho","pierogi","pizza","poke","pork belly buns","pork sausage roll","poutine","ricotta stuffed ravioli","risotto with seafood","salmon nigiri","scotch eggs","seafood paella","som tam","souvlaki","stinky tofu","sushi","tacos","teriyaki chicken donburi","tiramisù","tuna sashimi","vegetable soup"],dish_pattern:["{{food.adjective}} {{food.ethnic_category}} stew","{{food.adjective}} {{food.meat}} with {{food.vegetable}}","{{food.ethnic_category}} {{food.ingredient}} soup","{{food.fruit}} and {{food.fruit}} tart","{{food.fruit}} pie","{{food.fruit}}-glazed {{food.meat}} skewers","{{food.fruit}}-infused {{food.meat}} roast","{{food.ingredient}} and {{food.meat}} pie","{{food.ingredient}}-infused {{food.meat}}","{{food.meat}} steak","{{food.meat}} with {{food.fruit}} sauce","{{food.spice}}-crusted {{food.meat}}","{{food.spice}}-rubbed {{food.meat}} salad","{{food.vegetable}} salad","{{person.first_name.generic}}'s special {{food.ingredient}}"],ethnic_category:["Ainu","Albanian","American","Andhra","Anglo-Indian","Arab","Argentine","Armenian","Assyrian","Awadhi","Azerbaijani","Balochi","Bangladeshi","Bashkir","Belarusian","Bengali","Berber","Brazilian","British","Buddhist","Bulgarian","Cajun","Cantonese","Caribbean","Chechen","Chinese","Chinese Islamic","Circassian","Crimean Tatar","Cypriot","Czech","Danish","Egyptian","English","Eritrean","Estonian","Ethiopian","Filipino","French","Georgian","German","Goan","Goan Catholic","Greek","Gujarati","Hyderabad","Indian","Indian Chinese","Indian Singaporean","Indonesian","Inuit","Irish","Italian","Italian-American","Jamaican","Japanese","Jewish - Israeli","Karnataka","Kazakh","Keralite","Korean","Kurdish","Laotian","Latvian","Lebanese","Lithuanian","Louisiana Creole","Maharashtrian","Malay","Malaysian Chinese","Malaysian Indian","Mangalorean","Mediterranean","Mennonite","Mexican","Mordovian","Mughal","Native American","Nepalese","New Mexican","Odia","Pakistani","Parsi","Pashtun","Pennsylvania Dutch","Peranakan","Persian","Peruvian","Polish","Portuguese","Punjabi","Québécois","Rajasthani","Romani","Romanian","Russian","Sami","Serbian","Sindhi","Slovak","Slovenian","Somali","South Indian","Soviet","Spanish","Sri Lankan","Taiwanese","Tamil","Tatar","Texan","Thai","Turkish","Udupi","Ukrainian","Vietnamese","Yamal","Zambian","Zanzibari"],fruit:["apple","apricot","aubergine","avocado","banana","berry","blackberry","blood orange","blueberry","bush tomato","butternut pumpkin","cantaloupe","cavalo","cherry","corella pear","cranberry","cumquat","currant","custard apple","custard apples daikon","date","dragonfruit","dried apricot","elderberry","feijoa","fig","fingerlime","goji berry","grape","grapefruit","guava","honeydew melon","incaberry","jarrahdale pumpkin","juniper berry","kiwi fruit","kiwiberry","lemon","lime","longan","loquat","lychee","mandarin","mango","mangosteen","melon","mulberry","nashi pear","nectarine","olive","orange","papaw","papaya","passionfruit","peach","pear","pineapple","plum","pomegranate","prune","rockmelon","snowpea","sprout","starfruit","strawberry","sultana","tangelo","tomato","watermelon"],ingredient:["achacha","adzuki beans","agar","agave syrup","ajowan seed","albacore tuna","alfalfa","allspice","almond oil","almonds","amaranth","amchur","anchovies","aniseed","annatto seed","apple cider vinegar","apple juice","apple juice concentrate","apples","apricots","arborio rice","arrowroot","artichoke","arugula","asafoetida","asian greens","asian noodles","asparagus","aubergine","avocado","avocado oil","avocado spread","bacon","baking powder","baking soda","balsamic vinegar","bamboo shoots","banana","barberry","barley","barramundi","basil basmati rice","bay leaves","bean shoots","bean sprouts","beans","beef","beef stock","beetroot","berries","besan","black eyed beans","blackberries","blood oranges","blue cheese","blue eye trevalla","blue swimmer crab","blueberries","bocconcini","bok choy","bonito flakes","bonza","borlotti beans","bran","brazil nut","bread","brie","broccoli","broccolini","brown flour","brown mushrooms","brown rice","brown rice vinegar","brussels sprouts","buckwheat","buckwheat flour","buckwheat noodles","bulghur","bush tomato","butter","butter beans","buttermilk","butternut lettuce","butternut pumpkin","cabbage","cacao","cake","calamari","camellia tea oil","camembert","camomile","candle nut","cannellini beans","canola oil","cantaloupe","capers","capsicum","caraway seed","cardamom","carob carrot","carrot","cashews","cassia bark","cauliflower","cavalo","cayenne","celery","celery seed","cheddar","cherries","chestnut","chia seeds","chicken","chicken stock","chickory","chickpea","chilli pepper","chinese cabbage","chinese five spice","chives","choy sum","cinnamon","clams","cloves","cocoa powder","coconut","coconut oil","coconut water","coffee","common cultivated mushrooms","corella pear","coriander leaves","coriander seed","corn oil","corn syrup","corn tortilla","cornichons","cornmeal","cos lettuce","cottage cheese","cous cous","crabs","cranberry","cream","cream cheese","cucumber","cumin","cumquat","currants","curry leaves","curry powder","custard apples","dandelion","dark chocolate","dashi","dates","dill","dragonfruit","dried apricots","dried chinese broccoli","duck","edam","edamame","eggplant","eggs","elderberry","endive","english spinach","enoki mushrooms","extra virgin olive oil","farmed prawns","feijoa","fennel","fennel seeds","fenugreek","feta","figs","file powder","fingerlime","fish sauce","fish stock","flat mushrooms","flathead","flaxseed","flaxseed oil","flounder","flour","freekeh","french eschallots","fresh chillies","fromage blanc","fruit","galangal","garam masala","garlic","goat cheese","goat milk","goji berry","grape seed oil","grapefruit","grapes","green beans","green pepper","green tea","green tea noodles","greenwheat freekeh","gruyere","guava","gula melaka","haloumi","ham","haricot beans","harissa","hazelnut","hijiki","hiramasa kingfish","hokkien noodles","honey","honeydew melon","horseradish","hot smoked salmon","hummus","iceberg lettuce","incaberries","jarrahdale pumpkin","jasmine rice","jelly","jerusalem artichoke","jewfish","jicama","juniper berries","kale","kangaroo","kecap manis","kenchur","kidney beans","kidneys","kiwi berries","kiwi fruit","kohlrabi","kokam","kombu","koshihikari rice","kudzu","kumera","lamb","lavender flowers","leeks","lemon","lemongrass","lentils","lettuce","licorice","lime leaves","limes","liver","lobster","longan","loquats","lotus root","lychees","macadamia nut","macadamia oil","mace","mackerel","mahi mahi","mahlab","malt vinegar","mandarins","mango","mangosteens","maple syrup","margarine","marigold","marjoram","mastic","melon","milk","milk chocolate","mint","miso","molasses","monkfish","morwong","mountain bread","mozzarella","muesli","mulberries","mullet","mung beans","mussels","mustard","mustard seed","nashi pear","nasturtium","nectarines","nori","nutmeg","nutritional yeast","nuts","oat flour","oatmeal","oats","octopus","okra","olive oil","olives","omega spread","onion","oranges","oregano","oyster mushrooms","oyster sauce","oysters","pandanus leaves","papaw","papaya","paprik","parmesan cheese","parrotfish","parsley","parsnip","passionfruit","pasta","peaches","peanuts","pear","pear juice","pears","peas","pecan nut","pecorino","pepitas","peppercorns","peppermint","peppers","persimmon","pine nut","pineapple","pinto beans","pistachio nut","plums","polenta","pomegranate","poppy seed","porcini mushrooms","pork","potato flour","potatoes","provolone","prunes","pumpkin","pumpkin seed","purple carrot","purple rice","quark","quince","quinoa","radicchio","radish","raisin","raspberry","red cabbage","red lentils","red pepper","red wine","red wine vinegar","redfish","rhubarb","rice flour","rice noodles","rice paper","rice syrup","ricemilk","ricotta","rockmelon","rose water","rosemary","rye","rye bread","safflower oil","saffron","sage","sake","salmon","sardines","sausages","scallops","sea salt","semolina","sesame oil","sesame seeds","shark","shiitake mushrooms","silverbeet","slivered almonds","smoked trout","snapper","snowpea sprouts","snowpeas","soba","sour dough bread","soy","soy beans","soy flour","soy milk","soy sauce","soymilk","spearmint","spelt","spelt bread","spinach","spring onions","sprouts","squash","squid","star anise","star fruit","starfruit","stevia","strawberries","sugar","sultanas","sun-dried tomatoes","sunflower oil","sunflower seeds","sweet chilli sauce","sweet potato","swiss chard","swordfish","szechuan pepperberry","tabasco","tahini","taleggio cheese","tamari","tamarillo","tangelo","tapioca","tapioca flour","tarragon","tea","tea oil","tempeh","thyme","tinned","tofu","tom yum","tomatoes","trout","tuna","turkey","turmeric","turnips","unbleached flour","vanilla beans","vegetable oil","vegetable spaghetti","vegetable stock","vermicelli noodles","vinegar","wakame","walnut","warehou","wasabi","water","watercress","watermelon","wattleseed","wheat","wheatgrass juice","white bread","white flour","white rice","white wine","white wine vinegar","whiting wild rice","wholegrain bread","wholemeal","wholewheat flour","william pear","yeast","yellow papaw","yellowtail kingfish","yoghurt","yogurt","zucchini"],meat:["beef","chicken","crocodile","duck","emu","goose","kangaroo","lamb","ostrich","pigeon","pork","quail","rabbit","salmon","turkey","venison"],spice:["achiote seed","ajwain seed","ajwan seed","allspice","amchoor","anise","anise star","aniseed","annatto seed","arrowroot","asafoetida","baharat","balti masala","balti stir fry mix","basil","bay leaves","bbq","caraway seed","cardamom","cassia","cayenne pepper","celery","chamomile","chervil","chilli","chilli pepper","chillies","china star","chives","cinnamon","cloves","colombo","coriander","cumin","curly leaf parsley","curry","dhansak","dill","fennel seed","fenugreek","fines herbes","five spice","french lavender","galangal","garam masala","garlic","german chamomile","ginger","green cardamom","herbes de provence","jalfrezi","jerk","kaffir leaves","korma","lavender","lemon grass","lemon pepper","lime leaves","liquorice root","mace","mango","marjoram","methi","mint","mustard","nutmeg","onion seed","orange zest","oregano","paprika","parsley","pepper","peppercorns","pimento","piri piri","poppy seed","pot marjoram","poudre de colombo","ras-el-hanout","rice paper","rogan josh","rose baie","rosemary","saffron","sage","sesame seed","spearmint","sumac","sweet basil","sweet laurel","tagine","tandoori masala","tarragon","thyme","tikka masala","turmeric","vanilla","zahtar"],vegetable:["artichoke","arugula","asian greens","asparagus","bean shoots","bean sprouts","beans","beetroot","bok choy","broccoli","broccolini","brussels sprouts","butternut lettuce","cabbage","capers","carob carrot","carrot","cauliflower","celery","chilli pepper","chinese cabbage","chives","cornichons","cos lettuce","cucumber","dried chinese broccoli","eggplant","endive","english spinach","french eschallots","fresh chillies","garlic","green beans","green pepper","hijiki","iceberg lettuce","jerusalem artichoke","jicama","kale","kohlrabi","leeks","lettuce","okra","onion","parsnip","peas","peppers","potatoes","pumpkin","purple carrot","radicchio","radish","raspberry","red cabbage","red pepper","rhubarb","snowpea sprouts","spinach","squash","sun dried tomatoes","sweet potato","swiss chard","turnips","zucchini"]},hacker:{adjective:["1080p","auxiliary","back-end","bluetooth","cross-platform","digital","haptic","mobile","multi-byte","neural","online","open-source","optical","primary","redundant","solid state","virtual","wireless"],ingverb:["backing up","bypassing","calculating","compressing","connecting","copying","generating","hacking","indexing","navigating","overriding","parsing","programming","quantifying","synthesizing","transmitting"],noun:["alarm","application","array","bandwidth","bus","capacitor","card","circuit","driver","feed","firewall","hard drive","interface","matrix","microchip","monitor","panel","pixel","port","program","protocol","sensor","system","transmitter"],phrase:["I'll {{verb}} the {{adjective}} {{abbreviation}} {{noun}}, that should {{noun}} the {{abbreviation}} {{noun}}!","If we {{verb}} the {{noun}}, we can get to the {{abbreviation}} {{noun}} through the {{adjective}} {{abbreviation}} {{noun}}!","The {{abbreviation}} {{noun}} is down, {{verb}} the {{adjective}} {{noun}} so we can {{verb}} the {{abbreviation}} {{noun}}!","Try to {{verb}} the {{abbreviation}} {{noun}}, maybe it will {{verb}} the {{adjective}} {{noun}}!","Use the {{adjective}} {{abbreviation}} {{noun}}, then you can {{verb}} the {{adjective}} {{noun}}!","We need to {{verb}} the {{adjective}} {{abbreviation}} {{noun}}!","You can't {{verb}} the {{noun}} without {{ingverb}} the {{adjective}} {{abbreviation}} {{noun}}!","{{ingverb}} the {{noun}} won't do anything, we need to {{verb}} the {{adjective}} {{abbreviation}} {{noun}}!"],verb:["back up","bypass","calculate","compress","connect","copy","generate","hack","index","input","navigate","override","parse","program","quantify","reboot","synthesize","transmit"]},internet:{domain_suffix:["com","biz","info","name","net","org"],example_email:["example.org","example.com","example.net"],free_email:["gmail.com","yahoo.com","hotmail.com"]},location:{building_number:["#####","####","###"],city_name:["Abilene","Akron","Alafaya","Alameda","Albany","Albuquerque","Alexandria","Alhambra","Aliso Viejo","Allen","Allentown","Aloha","Alpharetta","Altadena","Altamonte Springs","Altoona","Amarillo","Ames","Anaheim","Anchorage","Anderson","Ankeny","Ann Arbor","Annandale","Antelope","Antioch","Apex","Apopka","Apple Valley","Appleton","Arcadia","Arden-Arcade","Arecibo","Arlington","Arlington Heights","Arvada","Ashburn","Asheville","Aspen Hill","Atascocita","Athens-Clarke County","Atlanta","Attleboro","Auburn","Augusta-Richmond County","Aurora","Austin","Avondale","Azusa","Bakersfield","Baldwin Park","Baltimore","Barnstable Town","Bartlett","Baton Rouge","Battle Creek","Bayamon","Bayonne","Baytown","Beaumont","Beavercreek","Beaverton","Bedford","Bel Air South","Bell Gardens","Belleville","Bellevue","Bellflower","Bellingham","Bend","Bentonville","Berkeley","Berwyn","Bethesda","Bethlehem","Billings","Biloxi","Binghamton","Birmingham","Bismarck","Blacksburg","Blaine","Bloomington","Blue Springs","Boca Raton","Boise City","Bolingbrook","Bonita Springs","Bossier City","Boston","Bothell","Boulder","Bountiful","Bowie","Bowling Green","Boynton Beach","Bozeman","Bradenton","Brandon","Brentwood","Bridgeport","Bristol","Brockton","Broken Arrow","Brookhaven","Brookline","Brooklyn Park","Broomfield","Brownsville","Bryan","Buckeye","Buena Park","Buffalo","Buffalo Grove","Burbank","Burien","Burke","Burleson","Burlington","Burnsville","Caguas","Caldwell","Camarillo","Cambridge","Camden","Canton","Cape Coral","Carlsbad","Carmel","Carmichael","Carolina","Carrollton","Carson","Carson City","Cary","Casa Grande","Casas Adobes","Casper","Castle Rock","Castro Valley","Catalina Foothills","Cathedral City","Catonsville","Cedar Hill","Cedar Park","Cedar Rapids","Centennial","Centreville","Ceres","Cerritos","Champaign","Chandler","Chapel Hill","Charleston","Charlotte","Charlottesville","Chattanooga","Cheektowaga","Chesapeake","Chesterfield","Cheyenne","Chicago","Chico","Chicopee","Chino","Chino Hills","Chula Vista","Cicero","Cincinnati","Citrus Heights","Clarksville","Clearwater","Cleveland","Cleveland Heights","Clifton","Clovis","Coachella","Coconut Creek","Coeur d'Alene","College Station","Collierville","Colorado Springs","Colton","Columbia","Columbus","Commerce City","Compton","Concord","Conroe","Conway","Coon Rapids","Coral Gables","Coral Springs","Corona","Corpus Christi","Corvallis","Costa Mesa","Council Bluffs","Country Club","Covina","Cranston","Cupertino","Cutler Bay","Cuyahoga Falls","Cypress","Dale City","Dallas","Daly City","Danbury","Danville","Davenport","Davie","Davis","Dayton","Daytona Beach","DeKalb","DeSoto","Dearborn","Dearborn Heights","Decatur","Deerfield Beach","Delano","Delray Beach","Deltona","Denton","Denver","Des Moines","Des Plaines","Detroit","Diamond Bar","Doral","Dothan","Downers Grove","Downey","Draper","Dublin","Dubuque","Duluth","Dundalk","Dunwoody","Durham","Eagan","East Hartford","East Honolulu","East Lansing","East Los Angeles","East Orange","East Providence","Eastvale","Eau Claire","Eden Prairie","Edina","Edinburg","Edmond","El Cajon","El Centro","El Dorado Hills","El Monte","El Paso","Elgin","Elizabeth","Elk Grove","Elkhart","Ellicott City","Elmhurst","Elyria","Encinitas","Enid","Enterprise","Erie","Escondido","Euclid","Eugene","Euless","Evanston","Evansville","Everett","Fairfield","Fall River","Fargo","Farmington","Farmington Hills","Fayetteville","Federal Way","Findlay","Fishers","Flagstaff","Flint","Florence-Graham","Florin","Florissant","Flower Mound","Folsom","Fond du Lac","Fontana","Fort Collins","Fort Lauderdale","Fort Myers","Fort Pierce","Fort Smith","Fort Wayne","Fort Worth","Fountain Valley","Fountainebleau","Framingham","Franklin","Frederick","Freeport","Fremont","Fresno","Frisco","Fullerton","Gainesville","Gaithersburg","Galveston","Garden Grove","Gardena","Garland","Gary","Gastonia","Georgetown","Germantown","Gilbert","Gilroy","Glen Burnie","Glendale","Glendora","Glenview","Goodyear","Grand Forks","Grand Island","Grand Junction","Grand Prairie","Grand Rapids","Grapevine","Great Falls","Greeley","Green Bay","Greensboro","Greenville","Greenwood","Gresham","Guaynabo","Gulfport","Hacienda Heights","Hackensack","Haltom City","Hamilton","Hammond","Hampton","Hanford","Harlingen","Harrisburg","Harrisonburg","Hartford","Hattiesburg","Haverhill","Hawthorne","Hayward","Hemet","Hempstead","Henderson","Hendersonville","Hesperia","Hialeah","Hicksville","High Point","Highland","Highlands Ranch","Hillsboro","Hilo","Hoboken","Hoffman Estates","Hollywood","Homestead","Honolulu","Hoover","Houston","Huntersville","Huntington","Huntington Beach","Huntington Park","Huntsville","Hutchinson","Idaho Falls","Independence","Indianapolis","Indio","Inglewood","Iowa City","Irondequoit","Irvine","Irving","Jackson","Jacksonville","Janesville","Jefferson City","Jeffersonville","Jersey City","Johns Creek","Johnson City","Joliet","Jonesboro","Joplin","Jupiter","Jurupa Valley","Kalamazoo","Kannapolis","Kansas City","Kearny","Keller","Kendale Lakes","Kendall","Kenner","Kennewick","Kenosha","Kent","Kentwood","Kettering","Killeen","Kingsport","Kirkland","Kissimmee","Knoxville","Kokomo","La Crosse","La Habra","La Mesa","La Mirada","Lacey","Lafayette","Laguna Niguel","Lake Charles","Lake Elsinore","Lake Forest","Lake Havasu City","Lake Ridge","Lakeland","Lakeville","Lakewood","Lancaster","Lansing","Laredo","Largo","Las Cruces","Las Vegas","Lauderhill","Lawrence","Lawton","Layton","League City","Lee's Summit","Leesburg","Lehi","Lehigh Acres","Lenexa","Levittown","Lewisville","Lexington-Fayette","Lincoln","Linden","Little Rock","Littleton","Livermore","Livonia","Lodi","Logan","Lombard","Lompoc","Long Beach","Longmont","Longview","Lorain","Los Angeles","Louisville/Jefferson County","Loveland","Lowell","Lubbock","Lynchburg","Lynn","Lynwood","Macon-Bibb County","Madera","Madison","Malden","Manchester","Manhattan","Mansfield","Manteca","Maple Grove","Margate","Maricopa","Marietta","Marysville","Mayaguez","McAllen","McKinney","McLean","Medford","Melbourne","Memphis","Menifee","Mentor","Merced","Meriden","Meridian","Mesa","Mesquite","Metairie","Methuen Town","Miami","Miami Beach","Miami Gardens","Middletown","Midland","Midwest City","Milford","Millcreek","Milpitas","Milwaukee","Minneapolis","Minnetonka","Minot","Miramar","Mishawaka","Mission","Mission Viejo","Missoula","Missouri City","Mobile","Modesto","Moline","Monroe","Montebello","Monterey Park","Montgomery","Moore","Moreno Valley","Morgan Hill","Mount Pleasant","Mount Prospect","Mount Vernon","Mountain View","Muncie","Murfreesboro","Murray","Murrieta","Nampa","Napa","Naperville","Nashua","Nashville-Davidson","National City","New Bedford","New Braunfels","New Britain","New Brunswick","New Haven","New Orleans","New Rochelle","New York","Newark","Newport Beach","Newport News","Newton","Niagara Falls","Noblesville","Norfolk","Normal","Norman","North Bethesda","North Charleston","North Highlands","North Las Vegas","North Lauderdale","North Little Rock","North Miami","North Miami Beach","North Port","North Richland Hills","Norwalk","Novato","Novi","O'Fallon","Oak Lawn","Oak Park","Oakland","Oakland Park","Ocala","Oceanside","Odessa","Ogden","Oklahoma City","Olathe","Olympia","Omaha","Ontario","Orange","Orem","Orland Park","Orlando","Oro Valley","Oshkosh","Overland Park","Owensboro","Oxnard","Palatine","Palm Bay","Palm Beach Gardens","Palm Coast","Palm Desert","Palm Harbor","Palm Springs","Palmdale","Palo Alto","Paradise","Paramount","Parker","Parma","Pasadena","Pasco","Passaic","Paterson","Pawtucket","Peabody","Pearl City","Pearland","Pembroke Pines","Pensacola","Peoria","Perris","Perth Amboy","Petaluma","Pflugerville","Pharr","Philadelphia","Phoenix","Pico Rivera","Pine Bluff","Pine Hills","Pinellas Park","Pittsburg","Pittsburgh","Pittsfield","Placentia","Plainfield","Plano","Plantation","Pleasanton","Plymouth","Pocatello","Poinciana","Pomona","Pompano Beach","Ponce","Pontiac","Port Arthur","Port Charlotte","Port Orange","Port St. Lucie","Portage","Porterville","Portland","Portsmouth","Potomac","Poway","Providence","Provo","Pueblo","Quincy","Racine","Raleigh","Rancho Cordova","Rancho Cucamonga","Rancho Palos Verdes","Rancho Santa Margarita","Rapid City","Reading","Redding","Redlands","Redmond","Redondo Beach","Redwood City","Reno","Renton","Reston","Revere","Rialto","Richardson","Richland","Richmond","Rio Rancho","Riverside","Riverton","Riverview","Roanoke","Rochester","Rochester Hills","Rock Hill","Rockford","Rocklin","Rockville","Rockwall","Rocky Mount","Rogers","Rohnert Park","Rosemead","Roseville","Roswell","Round Rock","Rowland Heights","Rowlett","Royal Oak","Sacramento","Saginaw","Salem","Salina","Salinas","Salt Lake City","Sammamish","San Angelo","San Antonio","San Bernardino","San Bruno","San Buenaventura (Ventura)","San Clemente","San Diego","San Francisco","San Jacinto","San Jose","San Juan","San Leandro","San Luis Obispo","San Marcos","San Mateo","San Rafael","San Ramon","San Tan Valley","Sandy","Sandy Springs","Sanford","Santa Ana","Santa Barbara","Santa Clara","Santa Clarita","Santa Cruz","Santa Fe","Santa Maria","Santa Monica","Santa Rosa","Santee","Sarasota","Savannah","Sayreville","Schaumburg","Schenectady","Scottsdale","Scranton","Seattle","Severn","Shawnee","Sheboygan","Shoreline","Shreveport","Sierra Vista","Silver Spring","Simi Valley","Sioux City","Sioux Falls","Skokie","Smyrna","Somerville","South Bend","South Gate","South Hill","South Jordan","South San Francisco","South Valley","South Whittier","Southaven","Southfield","Sparks","Spokane","Spokane Valley","Spring","Spring Hill","Spring Valley","Springdale","Springfield","St. Charles","St. Clair Shores","St. Cloud","St. George","St. Joseph","St. Louis","St. Louis Park","St. Paul","St. Peters","St. Petersburg","Stamford","State College","Sterling Heights","Stillwater","Stockton","Stratford","Strongsville","Suffolk","Sugar Land","Summerville","Sunnyvale","Sunrise","Sunrise Manor","Surprise","Syracuse","Tacoma","Tallahassee","Tamarac","Tamiami","Tampa","Taunton","Taylor","Taylorsville","Temecula","Tempe","Temple","Terre Haute","Texas City","The Hammocks","The Villages","The Woodlands","Thornton","Thousand Oaks","Tigard","Tinley Park","Titusville","Toledo","Toms River","Tonawanda","Topeka","Torrance","Town 'n' Country","Towson","Tracy","Trenton","Troy","Trujillo Alto","Tuckahoe","Tucson","Tulare","Tulsa","Turlock","Tuscaloosa","Tustin","Twin Falls","Tyler","Union City","University","Upland","Urbana","Urbandale","Utica","Vacaville","Valdosta","Vallejo","Vancouver","Victoria","Victorville","Vineland","Virginia Beach","Visalia","Vista","Waco","Waipahu","Waldorf","Walnut Creek","Waltham","Warner Robins","Warren","Warwick","Washington","Waterbury","Waterloo","Watsonville","Waukegan","Waukesha","Wauwatosa","Wellington","Wesley Chapel","West Allis","West Babylon","West Covina","West Des Moines","West Hartford","West Haven","West Jordan","West Lafayette","West New York","West Palm Beach","West Sacramento","West Seneca","West Valley City","Westfield","Westland","Westminster","Weston","Weymouth Town","Wheaton","White Plains","Whittier","Wichita","Wichita Falls","Wilmington","Wilson","Winston-Salem","Woodbury","Woodland","Worcester","Wylie","Wyoming","Yakima","Yonkers","Yorba Linda","York","Youngstown","Yuba City","Yucaipa","Yuma"],city_pattern:["{{location.city_prefix}} {{person.first_name.generic}}{{location.city_suffix}}","{{location.city_prefix}} {{person.first_name.generic}}","{{person.first_name.generic}}{{location.city_suffix}}","{{person.last_name.generic}}{{location.city_suffix}}","{{location.city_name}}"],city_prefix:["North","East","West","South","New","Lake","Port","Fort"],city_suffix:["town","ton","land","ville","berg","burgh","boro","borough","bury","view","port","mouth","stad","stead","furt","chester","cester","fort","field","haven","side","shire","worth"],country:["Afghanistan","Aland Islands","Albania","Algeria","American Samoa","Andorra","Angola","Anguilla","Antarctica","Antigua and Barbuda","Argentina","Armenia","Aruba","Australia","Austria","Azerbaijan","Bahamas","Bahrain","Bangladesh","Barbados","Belarus","Belgium","Belize","Benin","Bermuda","Bhutan","Bolivia","Bonaire, Sint Eustatius and Saba","Bosnia and Herzegovina","Botswana","Bouvet Island","Brazil","British Indian Ocean Territory (Chagos Archipelago)","Brunei Darussalam","Bulgaria","Burkina Faso","Burundi","Cambodia","Cameroon","Canada","Cape Verde","Cayman Islands","Central African Republic","Chad","Chile","China","Christmas Island","Cocos (Keeling) Islands","Colombia","Comoros","Congo","Cook Islands","Costa Rica","Cote d'Ivoire","Croatia","Cuba","Curacao","Cyprus","Czechia","Democratic Republic of the Congo","Denmark","Djibouti","Dominica","Dominican Republic","Ecuador","Egypt","El Salvador","Equatorial Guinea","Eritrea","Estonia","Eswatini","Ethiopia","Faroe Islands","Falkland Islands (Malvinas)","Fiji","Finland","France","French Guiana","French Polynesia","French Southern Territories","Gabon","Gambia","Georgia","Germany","Ghana","Gibraltar","Greece","Greenland","Grenada","Guadeloupe","Guam","Guatemala","Guernsey","Guinea","Guinea-Bissau","Guyana","Haiti","Heard Island and McDonald Islands","Holy See (Vatican City State)","Honduras","Hong Kong","Hungary","Iceland","India","Indonesia","Iran","Iraq","Ireland","Isle of Man","Israel","Italy","Jamaica","Japan","Jersey","Jordan","Kazakhstan","Kenya","Kiribati","Democratic People's Republic of Korea","Republic of Korea","Kuwait","Kyrgyz Republic","Lao People's Democratic Republic","Latvia","Lebanon","Lesotho","Liberia","Libyan Arab Jamahiriya","Liechtenstein","Lithuania","Luxembourg","Macao","Madagascar","Malawi","Malaysia","Maldives","Mali","Malta","Marshall Islands","Martinique","Mauritania","Mauritius","Mayotte","Mexico","Micronesia","Moldova","Monaco","Mongolia","Montenegro","Montserrat","Morocco","Mozambique","Myanmar","Namibia","Nauru","Nepal","Netherlands","New Caledonia","New Zealand","Nicaragua","Niger","Nigeria","Niue","Norfolk Island","North Macedonia","Northern Mariana Islands","Norway","Oman","Pakistan","Palau","Palestine","Panama","Papua New Guinea","Paraguay","Peru","Philippines","Pitcairn Islands","Poland","Portugal","Puerto Rico","Qatar","Reunion","Romania","Russian Federation","Rwanda","Saint Barthelemy","Saint Helena","Saint Kitts and Nevis","Saint Lucia","Saint Martin","Saint Pierre and Miquelon","Saint Vincent and the Grenadines","Samoa","San Marino","Sao Tome and Principe","Saudi Arabia","Senegal","Serbia","Seychelles","Sierra Leone","Singapore","Sint Maarten","Slovakia","Slovenia","Solomon Islands","Somalia","South Africa","South Georgia and the South Sandwich Islands","South Sudan","Spain","Sri Lanka","Sudan","Suriname","Svalbard & Jan Mayen Islands","Sweden","Switzerland","Syrian Arab Republic","Taiwan","Tajikistan","Tanzania","Thailand","Timor-Leste","Togo","Tokelau","Tonga","Trinidad and Tobago","Tunisia","Turkey","Turkmenistan","Turks and Caicos Islands","Tuvalu","Uganda","Ukraine","United Arab Emirates","United Kingdom","United States of America","United States Minor Outlying Islands","Uruguay","Uzbekistan","Vanuatu","Venezuela","Vietnam","Virgin Islands, British","Virgin Islands, U.S.","Wallis and Futuna","Western Sahara","Yemen","Zambia","Zimbabwe"],county:["Adams County","Calhoun County","Carroll County","Clark County","Clay County","Crawford County","Douglas County","Fayette County","Franklin County","Grant County","Greene County","Hamilton County","Hancock County","Henry County","Jackson County","Jefferson County","Johnson County","Lake County","Lawrence County","Lee County","Lincoln County","Logan County","Madison County","Marion County","Marshall County","Monroe County","Montgomery County","Morgan County","Perry County","Pike County","Polk County","Scott County","Union County","Warren County","Washington County","Wayne County","Avon","Bedfordshire","Berkshire","Borders","Buckinghamshire","Cambridgeshire","Central","Cheshire","Cleveland","Clwyd","Cornwall","County Antrim","County Armagh","County Down","County Fermanagh","County Londonderry","County Tyrone","Cumbria","Derbyshire","Devon","Dorset","Dumfries and Galloway","Durham","Dyfed","East Sussex","Essex","Fife","Gloucestershire","Grampian","Greater Manchester","Gwent","Gwynedd County","Hampshire","Herefordshire","Hertfordshire","Highlands and Islands","Humberside","Isle of Wight","Kent","Lancashire","Leicestershire","Lincolnshire","Lothian","Merseyside","Mid Glamorgan","Norfolk","North Yorkshire","Northamptonshire","Northumberland","Nottinghamshire","Oxfordshire","Powys","Rutland","Shropshire","Somerset","South Glamorgan","South Yorkshire","Staffordshire","Strathclyde","Suffolk","Surrey","Tayside","Tyne and Wear","Warwickshire","West Glamorgan","West Midlands","West Sussex","West Yorkshire","Wiltshire","Worcestershire"],direction:{cardinal:["North","East","South","West"],cardinal_abbr:["N","E","S","W"],ordinal:["Northeast","Northwest","Southeast","Southwest"],ordinal_abbr:["NE","NW","SE","SW"]},postcode:["#####","#####-####"],secondary_address:["Apt. ###","Suite ###"],state:["Alabama","Alaska","Arizona","Arkansas","California","Colorado","Connecticut","Delaware","Florida","Georgia","Hawaii","Idaho","Illinois","Indiana","Iowa","Kansas","Kentucky","Louisiana","Maine","Maryland","Massachusetts","Michigan","Minnesota","Mississippi","Missouri","Montana","Nebraska","Nevada","New Hampshire","New Jersey","New Mexico","New York","North Carolina","North Dakota","Ohio","Oklahoma","Oregon","Pennsylvania","Rhode Island","South Carolina","South Dakota","Tennessee","Texas","Utah","Vermont","Virginia","Washington","West Virginia","Wisconsin","Wyoming"],state_abbr:["AL","AK","AZ","AR","CA","CO","CT","DE","FL","GA","HI","ID","IL","IN","IA","KS","KY","LA","ME","MD","MA","MI","MN","MS","MO","MT","NE","NV","NH","NJ","NM","NY","NC","ND","OH","OK","OR","PA","RI","SC","SD","TN","TX","UT","VT","VA","WA","WV","WI","WY"],street_address:{normal:"{{location.buildingNumber}} {{location.street}}",full:"{{location.buildingNumber}} {{location.street}} {{location.secondaryAddress}}"},street_name:["10th Street","11th Street","12th Street","13th Street","14th Street","15th Street","16th Street","1st Avenue","1st Street","2nd Avenue","2nd Street","3rd Avenue","3rd Street","4th Avenue","4th Street","5th Avenue","5th Street","6th Avenue","6th Street","7th Avenue","7th Street","8th Avenue","8th Street","9th Street","A Street","Abbey Road","Adams Avenue","Adams Street","Airport Road","Albany Road","Albert Road","Albion Street","Alexandra Road","Alfred Street","Alma Street","Ash Close","Ash Grove","Ash Road","Ash Street","Aspen Close","Atlantic Avenue","Avenue Road","Back Lane","Baker Street","Balmoral Road","Barn Close","Barton Road","Bath Road","Bath Street","Bay Street","Beach Road","Bedford Road","Beech Close","Beech Drive","Beech Grove","Beech Road","Beechwood Avenue","Bell Lane","Belmont Road","Birch Avenue","Birch Close","Birch Grove","Birch Road","Blind Lane","Bluebell Close","Boundary Road","Bramble Close","Bramley Close","Bridge Road","Bridge Street","Broad Lane","Broad Street","Broadway","Broadway Avenue","Broadway Street","Brook Lane","Brook Road","Brook Street","Brookside","Buckingham Road","Cambridge Street","Canal Street","Castle Close","Castle Lane","Castle Road","Castle Street","Cavendish Road","Cedar Avenue","Cedar Close","Cedar Grove","Cedar Road","Cedar Street","Cemetery Road","Center Avenue","Center Road","Center Street","Central Avenue","Central Street","Chapel Close","Chapel Hill","Chapel Road","Chapel Street","Charles Street","Cherry Close","Cherry Street","Cherry Tree Close","Chester Road","Chestnut Close","Chestnut Drive","Chestnut Grove","Chestnut Street","Church Avenue","Church Close","Church Hill","Church Lane","Church Path","Church Road","Church Street","Church View","Church Walk","Claremont Road","Clarence Road","Clarence Street","Clarendon Road","Clark Street","Clay Lane","Cleveland Street","Cliff Road","Clifton Road","Clinton Street","College Avenue","College Street","Columbia Avenue","Commerce Street","Commercial Road","Commercial Street","Common Lane","Coronation Avenue","Coronation Road","County Line Road","County Road","Court Street","Cow Lane","Crescent Road","Cromwell Road","Cross Lane","Cross Street","Crown Street","Cumberland Street","Dale Street","Dark Lane","Davis Street","Depot Street","Derby Road","Derwent Close","Devonshire Road","Division Street","Douglas Road","Duke Street","E 10th Street","E 11th Street","E 12th Street","E 14th Street","E 1st Street","E 2nd Street","E 3rd Street","E 4th Avenue","E 4th Street","E 5th Street","E 6th Avenue","E 6th Street","E 7th Street","E 8th Street","E 9th Street","E Bridge Street","E Broad Street","E Broadway","E Broadway Street","E Cedar Street","E Center Street","E Central Avenue","E Church Street","E Elm Street","E Franklin Street","E Front Street","E Grand Avenue","E High Street","E Jackson Street","E Jefferson Street","E Main","E Main Street","E Maple Street","E Market Street","E North Street","E Oak Street","E Park Avenue","E Pine Street","E River Road","E South Street","E State Street","E Union Street","E Walnut Street","E Washington Avenue","E Washington Street","E Water Street","East Avenue","East Road","East Street","Edward Street","Elm Close","Elm Grove","Elm Road","Elm Street","Euclid Avenue","Fairfield Road","Farm Close","Ferry Road","Field Close","Field Lane","First Avenue","First Street","Fore Street","Forest Avenue","Forest Road","Fourth Avenue","Franklin Avenue","Franklin Road","Franklin Street","Front Street","Frontage Road","Garden Close","Garden Street","George Street","Gladstone Road","Glebe Close","Gloucester Road","Gordon Road","Gordon Street","Grand Avenue","Grange Avenue","Grange Close","Grange Road","Grant Street","Green Close","Green Lane","Green Street","Greenville Road","Greenway","Greenwood Road","Grove Lane","Grove Road","Grove Street","Hall Lane","Hall Street","Harrison Avenue","Harrison Street","Hawthorn Avenue","Hawthorn Close","Hazel Close","Hazel Grove","Heath Road","Heather Close","Henry Street","Heron Close","Hickory Street","High Road","High Street","Highfield Avenue","Highfield Close","Highfield Road","Highland Avenue","Hill Road","Hill Street","Hillside","Hillside Avenue","Hillside Close","Hillside Road","Holly Close","Honeysuckle Close","Howard Road","Howard Street","Jackson Avenue","Jackson Street","James Street","Jefferson Avenue","Jefferson Street","Johnson Street","Jubilee Close","Juniper Close","Kent Road","Kestrel Close","King Street","King's Road","Kingfisher Close","Kings Highway","Kingsway","Laburnum Grove","Lafayette Street","Lake Avenue","Lake Drive","Lake Road","Lake Street","Lancaster Road","Lansdowne Road","Larch Close","Laurel Close","Lawrence Street","Lee Street","Liberty Street","Lime Grove","Lincoln Avenue","Lincoln Highway","Lincoln Road","Lincoln Street","Locust Street","Lodge Close","Lodge Lane","London Road","Long Lane","Low Road","Madison Avenue","Madison Street","Main","Main Avenue","Main Road","Main Street","Main Street E","Main Street N","Main Street S","Main Street W","Manchester Road","Manor Close","Manor Drive","Manor Gardens","Manor Road","Manor Way","Maple Avenue","Maple Close","Maple Drive","Maple Road","Maple Street","Market Place","Market Square","Market Street","Marlborough Road","Marsh Lane","Martin Luther King Boulevard","Martin Luther King Drive","Martin Luther King Jr Boulevard","Mary Street","Mayfield Road","Meadow Close","Meadow Drive","Meadow Lane","Meadow View","Meadow Way","Memorial Drive","Middle Street","Mill Close","Mill Lane","Mill Road","Mill Street","Milton Road","Milton Street","Monroe Street","Moor Lane","Moss Lane","Mount Pleasant","Mount Street","Mulberry Street","N 1st Street","N 2nd Street","N 3rd Street","N 4th Street","N 5th Street","N 6th Street","N 7th Street","N 8th Street","N 9th Street","N Bridge Street","N Broad Street","N Broadway","N Broadway Street","N Cedar Street","N Center Street","N Central Avenue","N Chestnut Street","N Church Street","N College Street","N Court Street","N Division Street","N East Street","N Elm Street","N Franklin Street","N Front Street","N Harrison Street","N High Street","N Jackson Street","N Jefferson Street","N Lincoln Street","N Locust Street","N Main","N Main Avenue","N Main Street","N Maple Street","N Market Street","N Monroe Street","N Oak Street","N Park Street","N Pearl Street","N Pine Street","N Poplar Street","N Railroad Street","N State Street","N Union Street","N Walnut Street","N Washington Avenue","N Washington Street","N Water Street","Nelson Road","Nelson Street","New Lane","New Road","New Street","Newton Road","Nightingale Close","Norfolk Road","North Avenue","North Lane","North Road","North Street","Northfield Road","Oak Avenue","Oak Drive","Oak Lane","Oak Road","Oak Street","Oakfield Road","Oaklands","Old Lane","Old Military Road","Old Road","Old State Road","Orchard Drive","Orchard Lane","Orchard Road","Orchard Street","Oxford Road","Oxford Street","Park Avenue","Park Crescent","Park Drive","Park Lane","Park Place","Park Road","Park Street","Park View","Parkside","Pearl Street","Pennsylvania Avenue","Pine Close","Pine Grove","Pine Street","Pinfold Lane","Pleasant Street","Poplar Avenue","Poplar Close","Poplar Road","Poplar Street","Post Road","Pound Lane","Princes Street","Princess Street","Priory Close","Priory Road","Prospect Avenue","Prospect Place","Prospect Road","Prospect Street","Quarry Lane","Quarry Road","Queen's Road","Railroad Avenue","Railroad Street","Railway Street","Rectory Close","Rectory Lane","Richmond Close","Richmond Road","Ridge Road","River Road","River Street","Riverside","Riverside Avenue","Riverside Drive","Roman Road","Roman Way","Rowan Close","Russell Street","S 10th Street","S 14th Street","S 1st Avenue","S 1st Street","S 2nd Street","S 3rd Street","S 4th Street","S 5th Street","S 6th Street","S 7th Street","S 8th Street","S 9th Street","S Bridge Street","S Broad Street","S Broadway","S Broadway Street","S Center Street","S Central Avenue","S Chestnut Street","S Church Street","S College Street","S Division Street","S East Street","S Elm Street","S Franklin Street","S Front Street","S Grand Avenue","S High Street","S Jackson Street","S Jefferson Street","S Lincoln Street","S Main","S Main Avenue","S Main Street","S Maple Street","S Market Street","S Mill Street","S Monroe Street","S Oak Street","S Park Street","S Pine Street","S Railroad Street","S State Street","S Union Street","S Walnut Street","S Washington Avenue","S Washington Street","S Water Street","S West Street","Salisbury Road","Sandringham Road","Sandy Lane","School Close","School Lane","School Road","School Street","Second Avenue","Silver Street","Skyline Drive","Smith Street","Somerset Road","South Avenue","South Drive","South Road","South Street","South View","Spring Gardens","Spring Street","Springfield Close","Springfield Road","Spruce Street","St Andrew's Road","St Andrews Close","St George's Road","St John's Road","St Mary's Close","St Mary's Road","Stanley Road","Stanley Street","State Avenue","State Line Road","State Road","State Street","Station Road","Station Street","Stoney Lane","Sycamore Avenue","Sycamore Close","Sycamore Drive","Sycamore Street","Talbot Road","Tennyson Road","The Avenue","The Beeches","The Causeway","The Chase","The Coppice","The Copse","The Crescent","The Croft","The Dell","The Drive","The Fairway","The Glebe","The Grange","The Green","The Grove","The Hawthorns","The Lane","The Laurels","The Limes","The Maltings","The Meadows","The Mews","The Mount","The Oaks","The Orchard","The Oval","The Paddock","The Paddocks","The Poplars","The Ridgeway","The Ridings","The Rise","The Sidings","The Spinney","The Square","The Willows","The Woodlands","Third Avenue","Third Street","Tower Road","Trinity Road","Tudor Close","Union Avenue","Union Street","University Avenue","University Drive","Valley Road","Veterans Memorial Drive","Veterans Memorial Highway","Vicarage Close","Vicarage Lane","Vicarage Road","Victoria Place","Victoria Road","Victoria Street","Vine Street","W 10th Street","W 11th Street","W 12th Street","W 14th Street","W 1st Street","W 2nd Street","W 3rd Street","W 4th Avenue","W 4th Street","W 5th Street","W 6th Avenue","W 6th Street","W 7th Street","W 8th Street","W 9th Street","W Bridge Street","W Broad Street","W Broadway","W Broadway Avenue","W Broadway Street","W Center Street","W Central Avenue","W Chestnut Street","W Church Street","W Division Street","W Elm Street","W Franklin Street","W Front Street","W Grand Avenue","W High Street","W Jackson Street","W Jefferson Street","W Lake Street","W Main","W Main Street","W Maple Street","W Market Street","W Monroe Street","W North Street","W Oak Street","W Park Street","W Pine Street","W River Road","W South Street","W State Street","W Union Street","W Walnut Street","W Washington Avenue","W Washington Street","Walnut Close","Walnut Street","Warren Close","Warren Road","Washington Avenue","Washington Boulevard","Washington Road","Washington Street","Water Lane","Water Street","Waterloo Road","Waterside","Watery Lane","Waverley Road","Well Lane","Wellington Road","Wellington Street","West Avenue","West End","West Lane","West Road","West Street","West View","Western Avenue","Western Road","Westfield Road","Westgate","William Street","Willow Close","Willow Drive","Willow Grove","Willow Road","Willow Street","Windermere Road","Windmill Close","Windmill Lane","Windsor Avenue","Windsor Close","Windsor Drive","Wood Lane","Wood Street","Woodland Close","Woodland Road","Woodlands","Woodlands Avenue","Woodlands Close","Woodlands Road","Woodside","Woodside Road","Wren Close","Yew Tree Close","York Road","York Street"],street_pattern:["{{person.first_name.generic}} {{location.street_suffix}}","{{person.last_name.generic}} {{location.street_suffix}}","{{location.street_name}}"],street_suffix:["Alley","Avenue","Branch","Bridge","Brook","Brooks","Burg","Burgs","Bypass","Camp","Canyon","Cape","Causeway","Center","Centers","Circle","Circles","Cliff","Cliffs","Club","Common","Corner","Corners","Course","Court","Courts","Cove","Coves","Creek","Crescent","Crest","Crossing","Crossroad","Curve","Dale","Dam","Divide","Drive","Drives","Estate","Estates","Expressway","Extension","Extensions","Fall","Falls","Ferry","Field","Fields","Flat","Flats","Ford","Fords","Forest","Forge","Forges","Fork","Forks","Fort","Freeway","Garden","Gardens","Gateway","Glen","Glens","Green","Greens","Grove","Groves","Harbor","Harbors","Haven","Heights","Highway","Hill","Hills","Hollow","Inlet","Island","Islands","Isle","Junction","Junctions","Key","Keys","Knoll","Knolls","Lake","Lakes","Land","Landing","Lane","Light","Lights","Loaf","Lock","Locks","Lodge","Loop","Mall","Manor","Manors","Meadow","Meadows","Mews","Mill","Mills","Mission","Motorway","Mount","Mountain","Mountains","Neck","Orchard","Oval","Overpass","Park","Parks","Parkway","Parkways","Pass","Passage","Path","Pike","Pine","Pines","Place","Plain","Plains","Plaza","Point","Points","Port","Ports","Prairie","Radial","Ramp","Ranch","Rapid","Rapids","Rest","Ridge","Ridges","River","Road","Roads","Route","Row","Rue","Run","Shoal","Shoals","Shore","Shores","Skyway","Spring","Springs","Spur","Spurs","Square","Squares","Station","Stravenue","Stream","Street","Streets","Summit","Terrace","Throughway","Trace","Track","Trafficway","Trail","Tunnel","Turnpike","Underpass","Union","Unions","Valley","Valleys","Via","Viaduct","View","Views","Village","Villages","Ville","Vista","Walk","Walks","Wall","Way","Ways","Well","Wells"]},lorem:{word:["a","ab","abbas","abduco","abeo","abscido","absconditus","absens","absorbeo","absque","abstergo","absum","abundans","abutor","accedo","accendo","acceptus","accommodo","accusamus","accusantium","accusator","acer","acerbitas","acervus","acidus","acies","acquiro","acsi","ad","adamo","adaugeo","addo","adduco","ademptio","adeo","adeptio","adfectus","adfero","adficio","adflicto","adhaero","adhuc","adicio","adimpleo","adinventitias","adipisci","adipiscor","adiuvo","administratio","admiratio","admitto","admoneo","admoveo","adnuo","adopto","adsidue","adstringo","adsuesco","adsum","adulatio","adulescens","aduro","advenio","adversus","advoco","aedificium","aeger","aegre","aegrotatio","aegrus","aeneus","aequitas","aequus","aer","aestas","aestivus","aestus","aetas","aeternus","ager","aggero","aggredior","agnitio","agnosco","ago","ait","aiunt","alias","alienus","alii","alioqui","aliqua","aliquam","aliquid","alius","allatus","alo","alter","altus","alveus","amaritudo","ambitus","ambulo","amet","amicitia","amiculum","amissio","amita","amitto","amo","amor","amoveo","amplexus","amplitudo","amplus","ancilla","angelus","angulus","angustus","animadverto","animi","animus","annus","anser","ante","antea","antepono","antiquus","aperiam","aperio","aperte","apostolus","apparatus","appello","appono","appositus","approbo","apto","aptus","apud","aqua","ara","aranea","arbitro","arbor","arbustum","arca","arceo","arcesso","architecto","arcus","argentum","argumentum","arguo","arma","armarium","aro","ars","articulus","artificiose","arto","arx","ascisco","ascit","asper","asperiores","aspernatur","aspicio","asporto","assentator","assumenda","astrum","at","atavus","ater","atque","atqui","atrocitas","atrox","attero","attollo","attonbitus","auctor","auctus","audacia","audax","audentia","audeo","audio","auditor","aufero","aureus","aurum","aut","autem","autus","auxilium","avaritia","avarus","aveho","averto","baiulus","balbus","barba","bardus","basium","beatae","beatus","bellicus","bellum","bene","beneficium","benevolentia","benigne","bestia","bibo","bis","blandior","blanditiis","bonus","bos","brevis","cado","caecus","caelestis","caelum","calamitas","calcar","calco","calculus","callide","campana","candidus","canis","canonicus","canto","capillus","capio","capitulus","capto","caput","carbo","carcer","careo","caries","cariosus","caritas","carmen","carpo","carus","casso","caste","casus","catena","caterva","cattus","cauda","causa","caute","caveo","cavus","cedo","celebrer","celer","celo","cena","cenaculum","ceno","censura","centum","cerno","cernuus","certe","certus","cervus","cetera","charisma","chirographum","cibo","cibus","cicuta","cilicium","cimentarius","ciminatio","cinis","circumvenio","cito","civis","civitas","clam","clamo","claro","clarus","claudeo","claustrum","clementia","clibanus","coadunatio","coaegresco","coepi","coerceo","cogito","cognatus","cognomen","cogo","cohaero","cohibeo","cohors","colligo","collum","colo","color","coma","combibo","comburo","comedo","comes","cometes","comis","comitatus","commemoro","comminor","commodi","commodo","communis","comparo","compello","complectus","compono","comprehendo","comptus","conatus","concedo","concido","conculco","condico","conduco","confero","confido","conforto","confugo","congregatio","conicio","coniecto","conitor","coniuratio","conor","conqueror","conscendo","consectetur","consequatur","consequuntur","conservo","considero","conspergo","constans","consuasor","contabesco","contego","contigo","contra","conturbo","conventus","convoco","copia","copiose","cornu","corona","corporis","corpus","correptius","corrigo","corroboro","corrumpo","corrupti","coruscus","cotidie","crapula","cras","crastinus","creator","creber","crebro","credo","creo","creptio","crepusculum","cresco","creta","cribro","crinis","cruciamentum","crudelis","cruentus","crur","crustulum","crux","cubicularis","cubitum","cubo","cui","cuius","culpa","culpo","cultellus","cultura","cum","cumque","cunabula","cunae","cunctatio","cupiditas","cupiditate","cupio","cuppedia","cupressus","cur","cura","curatio","curia","curiositas","curis","curo","curriculum","currus","cursim","curso","cursus","curto","curtus","curvo","custodia","damnatio","damno","dapifer","debeo","debilito","debitis","decens","decerno","decet","decimus","decipio","decor","decretum","decumbo","dedecor","dedico","deduco","defaeco","defendo","defero","defessus","defetiscor","deficio","defleo","defluo","defungo","degenero","degero","degusto","deinde","delectatio","delectus","delego","deleniti","deleo","delibero","delicate","delinquo","deludo","demens","demergo","demitto","demo","demonstro","demoror","demulceo","demum","denego","denique","dens","denuncio","denuo","deorsum","depereo","depono","depopulo","deporto","depraedor","deprecator","deprimo","depromo","depulso","deputo","derelinquo","derideo","deripio","deserunt","desidero","desino","desipio","desolo","desparatus","despecto","dicta","dignissimos","distinctio","dolor","dolore","dolorem","doloremque","dolores","doloribus","dolorum","ducimus","ea","eaque","earum","eius","eligendi","enim","eos","error","esse","est","et","eum","eveniet","ex","excepturi","exercitationem","expedita","explicabo","facere","facilis","fuga","fugiat","fugit","harum","hic","id","illo","illum","impedit","in","incidunt","infit","inflammatio","inventore","ipsa","ipsam","ipsum","iste","itaque","iure","iusto","labore","laboriosam","laborum","laudantium","libero","magnam","magni","maiores","maxime","minima","minus","modi","molestiae","molestias","mollitia","nam","natus","necessitatibus","nemo","neque","nesciunt","nihil","nisi","nobis","non","nostrum","nulla","numquam","occaecati","ocer","odio","odit","officia","officiis","omnis","optio","paens","pariatur","patior","patria","patrocinor","patruus","pauci","paulatim","pauper","pax","peccatus","pecco","pecto","pectus","pecus","peior","pel","perferendis","perspiciatis","placeat","porro","possimus","praesentium","provident","quae","quaerat","quam","quas","quasi","qui","quia","quibusdam","quidem","quis","quisquam","quo","quod","quos","ratione","recusandae","reiciendis","rem","repellat","repellendus","reprehenderit","repudiandae","rerum","saepe","sapiente","sed","sequi","similique","sint","sit","socius","sodalitas","sol","soleo","solio","solitudo","solium","sollers","sollicito","solum","solus","soluta","solutio","solvo","somniculosus","somnus","sonitus","sono","sophismata","sopor","sordeo","sortitus","spargo","speciosus","spectaculum","speculum","sperno","spero","spes","spiculum","spiritus","spoliatio","sponte","stabilis","statim","statua","stella","stillicidium","stipes","stips","sto","strenuus","strues","studio","stultus","suadeo","suasoria","sub","subito","subiungo","sublime","subnecto","subseco","substantia","subvenio","succedo","succurro","sufficio","suffoco","suffragium","suggero","sui","sulum","sum","summa","summisse","summopere","sumo","sumptus","sunt","supellex","super","suppellex","supplanto","suppono","supra","surculus","surgo","sursum","suscipio","suscipit","suspendo","sustineo","suus","synagoga","tabella","tabernus","tabesco","tabgo","tabula","taceo","tactus","taedium","talio","talis","talus","tam","tamdiu","tamen","tametsi","tamisium","tamquam","tandem","tantillus","tantum","tardus","tego","temeritas","temperantia","templum","tempora","tempore","temporibus","temptatio","tempus","tenax","tendo","teneo","tener","tenetur","tenuis","tenus","tepesco","tepidus","ter","terebro","teres","terga","tergeo","tergiversatio","tergo","tergum","termes","terminatio","tero","terra","terreo","territo","terror","tersus","tertius","testimonium","texo","textilis","textor","textus","thalassinus","theatrum","theca","thema","theologus","thermae","thesaurus","thesis","thorax","thymbra","thymum","tibi","timidus","timor","titulus","tolero","tollo","tondeo","tonsor","torqueo","torrens","tot","totam","totidem","toties","totus","tracto","trado","traho","trans","tredecim","tremo","trepide","tres","tribuo","tricesimus","triduana","tripudio","tristis","triumphus","trucido","truculenter","tubineus","tui","tum","tumultus","tunc","turba","turbo","turpis","tutamen","tutis","tyrannus","uberrime","ubi","ulciscor","ullam","ullus","ulterius","ultio","ultra","umbra","umerus","umquam","una","unde","undique","universe","unus","urbanus","urbs","uredo","usitas","usque","ustilo","ustulo","usus","ut","uter","uterque","utilis","utique","utor","utpote","utrimque","utroque","utrum","uxor","vaco","vacuus","vado","vae","valde","valens","valeo","valetudo","validus","vallum","vapulus","varietas","varius","vehemens","vel","velit","velociter","velum","velut","venia","veniam","venio","ventito","ventosus","ventus","venustas","ver","verbera","verbum","vere","verecundia","vereor","vergo","veritas","veritatis","vero","versus","verto","verumtamen","verus","vesco","vesica","vesper","vespillo","vester","vestigium","vestrum","vetus","via","vicinus","vicissitudo","victoria","victus","videlicet","video","viduo","vigilo","vigor","vilicus","vilis","vilitas","villa","vinco","vinculum","vindico","vinitor","vinum","vir","virga","virgo","viridis","viriliter","virtus","vis","viscus","vita","vitae","vitiosus","vitium","vito","vivo","vix","vobis","vociferor","voco","volaticus","volo","volubilis","voluntarius","volup","voluptas","voluptate","voluptatem","voluptates","voluptatibus","voluptatum","volutabrum","volva","vomer","vomica","vomito","vorago","vorax","voro","vos","votum","voveo","vox","vulariter","vulgaris","vulgivagus","vulgo","vulgus","vulnero","vulnus","vulpes","vulticulus","xiphias"]},metadata:{title:"English",code:"en",language:"en",endonym:"English",dir:"ltr",script:"Latn"},music:{album:['"Awaken, My Love!"',"(What's The Story) Morning Glory?","- Tragedy +","13 Reasons Why (Season 3)","21st Century Breakdown","30 De Febrero","432 Hz Deep Healing","5-Star","528 Hz Meditation Music","54+1","8 Mile","808s & Heartbreak","9 To 5 And Odd Jobs","A Beautiful Lie","A Day At The Races","A Day Without Rain","A Fever You Can't Sweat Out","A Gangsta's Pain","A Gift & A Curse","A Hard Day's Night","A Head Full Of Dreams","A Kind Of Magic","A Million Ways To Murder","A Moment Apart","A Song For Every Moon","A Thousand Suns","A Winter Romance","ABBA","AI YoungBoy","AJ Tracey","Act One","After Hours","Agent Provocateur","All About You","All I Know So Far: Setlist","All Or Nothing","All Out","All Over The Place","All Stand Together","All The Lost Souls","All The Things I Never Said","All Things Must Pass","Alleen","Alright, Still","Alta Suciedad","America","American Heartbreak","American Teen","And Justice For None","Animal Songs","Another Friday Night","Anything Goes","Ao Vivo Em São Paulo","Ao Vivo No Ibirapuera","Apricot Princess","Aqui E Agora (Ao Vivo)","Arcane League Of Legends","Ardipithecus","Aretha Now","Around The Fur","Arrival","Artist 2.0","As She Pleases","Ascend","Ashlyn","Astro Lounge","At Night, Alone.","At. Long. Last. ASAP","Atlas","Audioslave","Aura","Austin","Awake","Away From The Sun","Ayayay!","Baby On Baby","Back For Everything","Back From The Edge","Back In Black","Back To Black","Back To The Game","Bad","Bahía Ducati","Baila","Barbie The Album","Battleground","Bayou Country","Bcos U Will Never B Free","Be","Be Here Now","Beautiful Mind","Beautiful Thugger Girls","Beautiful Trauma","Beauty And The Beast","Beggars Banquet","Being Funny In A Foreign Language","Berlin Lebt","Berry Is On Top","Best White Noise For Baby Sleep - Loopable With No Fade","Big Baby DRAM","Bigger, Better, Faster, More!","Billy Talent II","Black Star Elephant","Blackout","Blank Face LP","Bleach","Blizzard Of Ozz","Blonde","Blood Sugar Sex Magik","Bloom","Blowin' Your Mind!","Blu Celeste","Blue","Blue Banisters","Blue Hawaii","Blue Neighbourhood","Bluebird Days","Bobby Tarantino","Bobby Tarantino II","Bon Iver","Born Pink","Born To Run","Brand New Eyes","Break The Cycle","Breakfast In America","Breakthrough","Brett Young","Bridge Over Troubled Water","Bright: The Album","Brol","Buds","Buena Vista Social Club","Built On Glass","Bury Me At Makeout Creek","Busyhead","By The Way","CB6","CNCO","California Sunrise","Californication","Call Me Irresponsible","Calm","Camino Palmero","Camp","Caracal","Carbon Fiber Hits","Carnival","Carry On","Cartel De Santa","Certified Lover Boy","Chaaama","Chama Meu Nome","Chapter 1: Snake Oil","Chapter 2: Swamp Savant","Chapter One","Charlie's Angels","Cherry Bomb","Chief","Chocolate Factory","Chosen","Chris Brown","Christina Aguilera","Chromatica","Church","City Of Evil","Clandestino","Clouds","Coco","Collision Course","Colour Vision","Combat Rock","Come Around Sundown","Come Away With Me","Come Home The Kids Miss You","Come What(ever) May","Commando","Common Sense","Communion","Conditions","Confident","Confrontation","Control The Streets, Volume 2","Corinne Bailey Rae","Costello Music","Cottonwood","Covers, Vol. 2","Cozy Tapes Vol. 2: Too Cozy","Crash Talk","Crazy Love","Crazysexycool","Crowded House","Cruisin' With Junior H","Culture","Current Mood","DS2","Dale","Danger Days: The True Lives Of The Fabulous Killjoys","Dangerous Woman","Dangerous: The Double Album","Dark Horse","Day69","Daydream","De Fiesta","De Viaje","DeAnn","Death Race For Love","Delirium","Delta","Demidevil","Depression Cherry","Descendants","Desgenerados Mixtape","Destin","Destiny Fulfilled","Desvelado","Detroit 2","Dex Meets Dexter","Dharma","Die A Legend","Different World","Dig Your Roots","Digital Druglord","Dirt","Disclaimer I / II","Discovery","Disraeli Gears","Disumano","Dizzy Up The Girl","Don't Play That Song","Donda","Donde Quiero Estar","Doo-Wops & Hooligans","Down The Way","Dr. Feelgood","Dream Your Life Away","Dreaming Out Loud","Drip Harder","Drive","Drones","Dropped Outta College","Drowning","Dua Warna Cinta","Dulce Beat","Dusty In Memphis","Dutty Rock","Dying To Live","ENR","East Atlanta Love Letter","Editorial","Edna","El Abayarde","El Amor En Los Tiempos Del Perreo","El Camino","El Comienzo","El Dorado","El Karma","El Mal Querer","El Malo","El Trabajo Es La Suerte","El Viaje De Copperpot","Electric Ladyland","Emotion","En Tus Planes","Endless Summer Vacation","Enter The Wu-Tang (36 Chambers)","Equals (=)","Estrella","Euphoria","Europop","Evermore","Every Kingdom","Everyday Life","Evolve","Expectations","Face Yourself","Facelift","Fallin'","Fancy You","Fantasía","Favourite Worst Nightmare","Fear Of The Dark","Fearless","Feel Something","Feels Like Home","Femme Fatale","Ferxxocalipsis","Fifty Shades Darker","Fifty Shades Freed","Fifty Shades Of Grey","Final (Vol.1)","Finding Beauty In Negative Spaces","Fine Line","First Impressions Of Earth","First Steps","Five Seconds Flat","Folklore","For Emma, Forever Ago","Forajido EP 1","Forever","Forever Young","Formula Of Love: O+T=<3","Free 6lack","Freudian","Frozen II","Full Moon Fever","Funhouse","Funk Wav Bounces Vol.1","Future History","FutureSex/LoveSounds","Fuzzybrain","Gallery","Gangsta's Paradise","Gemini","Gemini Rights","Generationwhy","Get A Grip","Get Up","Gettin' Old","Girl","Gladiator","Glisten","Globalization","Gloria","Glory Days","God's Project","Gold Skies","Golden","Good Evening","Good Thing","Goodbye Yellow Brick Road","Gossip Columns","Got Your Six","Graceland","Graduation","Grand Champ","Grandson, Vol. 1","Green River","Guerra","Ha*Ash Primera Fila - Hecho Realidad","Haiz","Hamilton","Happy Endings","Harry Styles","Hasta La Raíz","Hatful Of Hollow","Head In The Clouds","Heard It In A Past Life","Heart Shaped World","Heartbeat City","Heartbreak On A Full Moon / Cuffing Season - 12 Days Of Christmas","Heaven Or Hell","Heaven knows","Hellbilly Deluxe","Hellboy","Help!","Her Loss","Here Comes The Cowboy","Hey World","High School Musical","High Tide In The Snake's Nest","Historias De Un Capricornio","Hndrxx","Hombres G (Devuélveme A Mi Chica)","Homerun","Homework","Hot Fuss","Hot Pink","Hot Sauce / Hello Future","Hot Space","Hotel Diablo","Houses Of The Holy","How Big, How Blue, How Beautiful","How I'm Feeling","How To Be Human","How To Save A Life","How To: Friend, Love, Freefall","Hozier","Human","Huncho Jack, Jack Huncho","Hunter Hayes","Hysteria","I Am...Sasha Fierce","I Can't Handle Change","I Met You When I Was 18. (The Playlist)","I Never Liked You","I Never Loved A Man The Way I Love You","I See You","I Think You Think Too Much Of Me","I Used To Know Her","I Used To Think I Could Fly","I'm Comin' Over","Ich & Keine Maske","If You Can Believe Your Eyes & Ears","Il Ballo Della Vita","Ill Communication","Imagination & The Misfit Kid","Imagine","Immortalized","In A Perfect World...","In Colour","In My Own Words","In Rainbows","In Return","In The Lonely Hour","Infest","Innuendo","Inter Shibuya - La Mafia","Interstellar","Is This It","It Was Written","It's Not Me, It's You","It's Only Me","Ivory","JackBoys","Jamie","Jazz","Jibrail & Iblis","Jordi","Jordin Sparks","Jose","Just As I Am","Just Cause Y'all Waited 2","Just Like You","Justified","K-12 / After School","K.I.D.S.","K.O.","K.O.B. Live","KG0516","KOD","Kane Brown","Kid A","Kid Krow","Kids See Ghosts","Kids in Love","Kinks (You Really Got Me)","Know-It-All","Konvicted","Kring","LANY","LM5","La Criatura","La Flaca","La Melodia De La Calle","La Revolucion","Lady Lady","Lady Wood","Langit Mong Bughaw","Las Que No Iban A Salir","Last Day Of Summer","Last Year Was Complicated","Layers","Layover","Lazarus","Led Zeppelin","Left Of The Middle","Leftoverture","Legends Never Die","Let's Skip To The Wedding","Let's Talk About Love","Licensed To Ill","Life In Cartoon Motion","Life Thru A Lens","Lifelines","Like..?","Lil Big Pac","Lil Boat","Lil Boat 2","Lil Boat 3.5","Lil Kiwi","Lil Pump","Limon Y Sal","Listen Without Prejudice","Little Voice","Live On Red Barn Radio I & II","Lo Que Andábamos Buscando","Lofi Fruits Music 2021","London Calling","Los Campeones Del Pueblo","Los Extraterrestres","Los Favoritos 2","Lost","Lost In Love","Loud","Love Sick","Love Story","Love Stuff","Love Yourself: Tear","Lover","Luca Brasi 2: Gangsta Grillz","Lust For Life","Luv Is Rage","M!ssundaztood","Ma Fleur","Made In Lagos","Mafia Bidness","Magazines Or Novels","Mainstream Sellout","Majestic","Make It Big","Make Yourself","Making Mirrors","Mamma Mia! Here We Go Again","Man Of The Woods","Manic","Me And My Gang","Meduza","Meet The Orphans","Meet The Woo","Melim","Mellon Collie And The Infinite Sadness","Melly vs. Melvin","Memories...Do Not Open","Menagerie","Midnights","Minecraft - Volume Alpha","Minutes To Midnight","Mix Pa Llorar En Tu Cuarto","Modo Avión","Monkey Business","Mono.","Montana","Montevallo","Moosetape","Morning View","Motivan2","Moving Pictures","Mr. Davis","Mr. Misunderstood","Mulan","Mura Masa","Music From The Edge Of Heaven","Music Of The Sun","My House","My Kinda Party","My Krazy Life","My Liver Will Handle What My Heart Can't","My Moment","My Own Lane","My Turn","My Worlds","Na Praia (Ao Vivo)","Nakamura","Nation Of Two","Navegando","Need You Now","Neon Future III","Neotheater","Never Trust A Happy Song","New English","News Of The World","Nicole","Night & Day","Nimmerland","Nimrod","Nine Track Mind","No Angel","No Me Pidas Perdón","No More Drama","No Protection","No Strings Attached","No Time To Die","Nobody Is Listening","Non Stop Erotic Cabaret","Non-Fiction","Northsbest","Nostalgia","Nostalgia, Ultra","Notes On A Conditional Form","Now Or Never","O Embaixador (Ao Vivo)","O My Heart","OK Computer","Ocean","Ocean Avenue","Ocean Eyes","Odisea","Oh My My","Oh, What A Life","On The 6","One In A Million","One More Light","One Of These Nights","Open Up And Say...Ahh!","Ordinary Man","Origins","Out Of The Blue","Over It","OzuTochi","PTSD","Pa Las Baby's Y Belikeada","Pa Que Hablen","Pa' Luego Es Tarde","Pa' Otro La 'O","Pablo Honey","Pain Is Love","Pain Is Temporary","Painting Pictures","Palmen Aus Plastik 2","Para Mi Ex","Para Siempre","Partners In Crime","Pawn Shop","Pegasus / Neon Shark VS Pegasus","Pet Sounds","Piece By Piece","Pier Pressure","Pineapple Sunrise","Piseiro 2020 Ao Vivo","Planet Pit","Plans","Play Deep","Playa Saturno","Por Primera Vez","Por Vida","Positions","Post Human: Survival Horror","Poster Girl","Prazer, Eu Sou Ferrugem (Ao Vivo)","Pretty Girls Like Trap Music","Pretty. Odd.","Prince Royce","Prisma","Prometo","Providence","Puberty 2","Punisher","Purgatory","Purple Rain","Que Bendición","Queen Of The Clouds","Quiero Volver","R&G (Rhythm & Gangsta): The Masterpiece","Raise!","Ransom 2","Rapunzel","Rare","Re Mida","Ready To Die","Realer","Rebelde","Reclassified","Recovery","Recuerden Mi Estilo","Reggatta De Blanc","Regulate… G Funk Era","Reik","Reise, Reise","Relapse","Relaxing Piano Lullabies And Natural Sleep Aid For Baby Sleep Music","Religiously. The Album.","Replay","Results May Vary","Revenge","Revolve","Revolver","Ricky Martin","Rien 100 Rien","Ripcord","Rise And Fall, Rage And Grace","Rise Of An Empire","Robin Hood: Prince Of Thieves","Rock N Roll Jesus","Romance","Romances","Ronan","Royal Blood","Rumours","Sad Boyz 4 Life II","San Lucas","Santana World","Saturation III","Sauce Boyz","Savage Mode","Saxobeats","Scarlet","Schwarzes Herz","Seal The Deal & Let's Boogie","Section.80","Segundo Romance","Sehnsucht","Shake The Snow Globe","Shang-Chi And The Legend Of The Ten Rings: The Album","Sheer Heart Attack","Shiesty Season","Shock Value","Shoot For The Stars, Aim For The Moon","Signed Sealed And Delivered","Signos","Silent Alarm","Simplemente Gracias","Sin Bandera","Sing Me A Lullaby, My Sweet Temptation","Sinner","Sirio","Sit Still, Look Pretty","Skin","Slowhand","Smash","Smithereens","Snow Cougar","Social Cues","Some Girls","Song Hits From Holiday Inn","Songs For Dads","Songs For The Deaf","Songs For You, Truths For Me","Songs In The Key Of Life","Souled Out","Sounds Of Silence","Soy Como Quiero Ser","Speak Now","Speak Your Mind","Speakerboxxx/The Love Below","Spider-Man: Into The Spider-Verse","Split Decision","Square Up","SremmLife","Starboy","Stay +","Stay Dangerous","Staying At Tamara's","Steppenwolf","Stick Season","Still Bill","Straight Outta Compton","Strange Trails","Stronger","Suavemente","Sublime","Suck It and See","Sucker","Sueños","Sugar","Summer Forever","Summer,","Sunset Season","Sunshine On Leith","Surfer Rosa","Sweet Talker","SweetSexySavage","System Of A Down","TA13OO","Talk That Talk","Talking Heads: 77","Tangled Up","Tango In The Night","Taxi Driver","Taylor Swift","Tell Me It's Real","Ten","Ten Summoner's Tales","Terra Sem Cep (Ao Vivo)","Terral","Testing","Tha Carter III","Thank Me Later","That's Christmas To Me","The Academy","The Adventures Of Bobby Ray","The Album","The Andy Williams Christmas Album","The Aviary","The Balcony","The Battle Of Los Angeles","The Beatles (White Album)","The Beginning","The Better Life","The Big Day","The Book","The Breakfast Club","The Cars","The Colour And The Shape","The Death Of Peace Of Mind","The Diary Of Alicia Keys","The Documentary","The Emancipation Of Mimi","The Eminem Show","The End Of Everything","The Final Countdown","The Forever Story","The Foundation","The Goat","The Golden Child","The Good Parts","The Greatest Showman: Reimagined","The Green Trip","The Hardest Love","The Head And The Heart","The Human Condition","The Infamous","The Lady Killer","The Last Don II","The Lion King","The Lockdown Sessions","The London Sessions","The Lord Of The Rings: The Fellowship Of The Ring","The Lost Boy","The Magic Of Christmas / The Christmas Song","The Marshall Mathers LP","The Martin Garrix Collection","The Melodic Blue","The Mockingbird & The Crow","The Pains Of Growing","The Papercut Chronicles","The Perfect Luv Tape","The Pinkprint","The Predator","The Queen Is Dead","The ReVe Festival: Finale","The Rise And Fall Of Ziggy Stardust And The Spiders From Mars","The Rising Tied","The River","The Stone Roses","The Story Of Us","The Stranger","The Sufferer & The Witness","The Sun's Tirade","The Temptations Sing Smokey","The Time Of Our Lives","The Way It Is","The Wonderful World Of Sam Cooke","The Writing's On The Wall","The Young And The Hopeless","Therapy","Therapy Session","There Is More (Live)","There Is Nothing Left To Lose","These Things Happen","Third Eye Blind","This Is Me...Then","This Unruly Mess I've Made","Threat to Survival","Thrill Of The Chase","Time","Timelezz","To Let A Good Thing Die","To Pimp A Butterfly","Toast To Our Differences","Todos Os Cantos, Vol. 1 (Ao Vivo)","Too Hard","Torches X","Total Xanarchy","Toto IV","Toulouse Street","Tourist History","Toxicity","Tragic Kingdom","Tranquility Base Hotel & Casino","Traumazine","Traveler","Tres Hombres","Trip At Knight","Tron: Legacy","True Blue","True Colors","Trustfall","Tu Veneno Mortal","Tudo Em Paz","Ubuntu","Ugly Is Beautiful","Ultra 2021","Una Mattina","Unbroken","Uncovered","Under Pressure","Unsponsored Content","Unstoppable","Unwritten","Urban Flora","Urban Hymns","Use Your Illusion I","Veneer","Versions Of Me","Vibes","Vice Versa","Vices & Virtues","Victory","Vida","Viejo Marihuano","Visualízate","Walk Away","Walk Me Home...","Watch The Throne","Wave","We Broke The Rules","We Love You Tecca","We Love You Tecca 2","Weezer (Green Album)","Welcome To The Madhouse","Westlife","What A Time To Be Alive","What Do You Think About The Car?","What Is Love?","What Makes You Country","What Separates Me From You","What You See Is What You Get / What You See Ain't Always What You Get","When It's Dark Out","When We All Fall Asleep, Where Do We Go?","Where The Light Is","While The World Was Burning","White Pony","Whitney","Who Really Cares","Who You Are","Who's Next","Wide Open","Wilder Mind","Wildfire","Willy And The Poor Boys","Wings / You Never Walk Alone","Wish","Wish You Were Here","Without Warning","Wonder","X&Y","XOXO","Y Que Quede Claro","YBN: The Mixtape","Yo Creo","You Will Regret","Youngblood","Younger Now","Youth"],artist:["$NOT","$uicideboy$","(G)I-DLE","*NSYNC","2 Chainz","21 Savage","6LACK","? & The Mysterians","A Boogie Wit da Hoodie","A Taste of Honey","A Tribe Called Quest","A-Ha","ABBA","AC/DC","AJ Tracey","ATEEZ","Ace of Base","Adele","Ado","Aerosmith","Agust D","Aitana","Al Dexter & his Troopers","Al Green","Al Jolson","Al Martino","Alan Jackson","Alannah Myles","Alec Benjamin","Alejandro Sanz","Alesso","Alfredo Olivas","Ali Gatie","Alice In Chains","Alina Baraz","All Time Low","All-4-One","All-American Rejects","Alok","America","American Quartet","Amii Stewart","Amitabh Bhattacharya","Ana Castela","Anderson .Paak","Andy Grammer","Angus & Julia Stone","Anirudh Ravichander","Anita Ward","Anitta","Anton Karas","Anuel AA","Arcade Fire","Archie Bell & The Drells","Archies","Aretha Franklin","Arizona Zervas","Armin van Buuren","Arthur Conley","Artie Shaw","Asake","Asees Kaur","Association","Atif Aslam","Audioslave","Aventura","Avril Lavigne","Aya Nakamura","B J Thomas","B.o.B","BLACKPINK","BONES","BROCKHAMPTON","BTS","Baby Keem","Bachman-Turner Overdrive","Backstreet Boys","Bad Bunny","Badshah","Bailey Zimmerman","Banda El Recodo","Barbra Streisand","Barry White","Bazzi","Bebe Rexha","Becky G","Becky Hill","Bee Gees","Ben Bernie","Ben Howard","Ben Selvin","Berlin","Bessie Smith","Bethel Music","Bette Midler","Beyonce","Bibi Blocksberg","Bibi und Tina","BigXthaPlug","Bill Doggett","Bill Haley & his Comets","Bill Withers","Billy Davis Jr","Billy Joel","Billy Paul","Billy Preston","Billy Swan","Birdy","Bizarrap","Blake Shelton","Blur","Bob Marley & The Wailers","Bob Seger","Bobby Darin","Bobby Lewis","Bobby McFerrin","Bobby Vinton","Boney M.","Bonez MC","Bonnie Tyler","Booba","Boston","BoyWithUke","Boyce Avenue","Bradley Cooper","Bread","Brent Faiyaz","Brett Young","Bring Me The Horizon","Britney Spears","Brooks & Dunn","Bruce Channel","Bruno & Marrone","Bryan Adams","Bryce Vine","Buddy Holly","Burna Boy","C. Tangana","CKay","CRO","Camilo","Capital Bra","Captain & Tennille","Cardi B","Carin Leon","Carlos Vives","Carly Simon","Carpenters","Cavetown","Celine Dion","Central Cee","Chaka Khan","Champs","Charlie Rich","Chayanne","Cheat Codes","Cher","Chic","Chicago","Chris Brown","Chris Isaak","Chris Young","Christina Aguilera","Christina Perri","Christopher Cross","Chuck Berry","Ciara","Cigarettes After Sex","Cliff Edwards (Ukelele Ike)","Cody Johnson","Colbie Caillat","Colby O'Donis","Cole Swindell","Coleman Hawkins","Contours","Coolio","Count Basie","Cris Mj","Culture Club","Cyndi Lauper","D-Block Europe","DAY6","DJ Khaled","DJ Luian","DJ Nelson","DMX","DNCE","DaVido","Dadju","Daft Punk","Dan + Shay","Daniel Powter","Danny Ocean","Darius Rucker","Dave","David Bowie","David Guetta","Daya","Dean Martin","Deee-Lite","Deep Purple","Deftones","Demi Lovato","Dennis Lloyd","Denzel Curry","Dermot Kennedy","Desiigner","Devo","Dewa 19","Dexys Midnight Runners","Diddy","Dido","Die drei !!!","Diego & Victor Hugo","Diljit Dosanjh","Dimitri Vegas & Like Mike","Dinah Shore","Dionne Warwick","Dire Straits","Disclosure","Dixie Cups","Doja Cat","Dolly Parton","Don Diablo","Don Henley","Don McLean","Don Omar","Donna Summer","Donovan","Dr. Dre","Drake","Dreamville","Dua Lipa","EMF","ENHYPEN","Earth, Wind & Fire","Ed Sheeran","Eddie Cantor","Eddie Cochran","Eddy Howard","Edgar Winter Group","Edwin Hawkins Singers","Edwin Starr","El Alfa","Eladio Carrion","Electric Light Orchestra","Elevation Worship","Ella Henderson","Ellie Goulding","Elton John","Elvis Presley","Empire of the Sun","En Vogue","Enrique Iglesias","Eslabon Armado","Ethel Waters","Etta James","Evanescence","Exile","Extreme","Faith Hill","Fall Out Boy","Fanny Brice","Farruko","Fats Domino","Fats Waller","Feid","Felix Jaehn","Fergie","Fetty Wap","Fiersa Besari","Fifth Harmony","Fine Young Cannibals","Five Finger Death Punch","Fleetwood Mac","Flo-Rida","Florence + The Machine","Flume","Foo Fighters","Foreigner","Foster The People","Four Aces","Frank Ocean","Frank Sinatra","Frankie Avalon","Frankie Valli","Fred Astaire","Freda Payne","Freddie Dredd","Freddy Fender","French Montana","Fuerza Regida","Fujii Kaze","Future","G-Eazy","Garfunkel and Oates","Gary Lewis & The Playboys","Gary Numan","Gene Autry","Gene Chandler","Gene Vincent","George Michael","George Strait","Gera MX","Ghost","Ghostemane","Gigi D'Agostino","Gladys Knight & The Pips","Glass Animals","Glee Cast","Gloria Gaynor","Godsmack","Gorillaz","Gotye","Grand Funk Railroad","Green Day","Grouplove","Grupo Firme","Grupo Marca Registrada","Gryffin","Gucci Mane","Guess Who","Gunna","Gusttavo Lima","Guy Mitchell","Gwen Stefani","Gzuz","H.E.R.","HARDY","Hailee Steinfeld","Halsey","Hans Zimmer","Harris Jayaraj","Harry Chapin","Harry James","Harry Nilsson","Harry Styles","Hayley Williams","Herb Alpert","Herman's Hermits","Hillsong UNITED","Hillsong Worship","Hollywood Undead","Honey Cone","Hoobastank","Hues Corporation","I Prevail","ITZY","IVE","Ice Cube","Ice Spice","Iggy Azalea","Imagine Dragons","Incubus","Internet Money","Isaac Hayes","J Geils Band","J. Cole","JAY-Z","JJ Lin","JP Saxe","JVKE","Jack Harlow","Jack Johnson","Jackie Wilson","Jacquees","James Arthur","James Brown","James TW","James Taylor","Jamie Foxx","Janet Jackson","Janis Joplin","Jason Aldean","Jason Mraz","Jay Chou","Jay Sean","Jay Wheeler","Jaymes Young","Jean Knight","Jeezy","Jennifer Lopez","Jennifer Warnes","Jeremih","Jeremy Zucker","Jerry Lee Lewis","Jerry Murad's Harmonicats","Jess Glynne","Jessie J","Jewel","Jimi Hendrix","Jimin","Jimmie Rodgers","Jimmy Dean","Jo Stafford","Joan Jett & The Blackhearts","Joao Gilberto","Joel Corry","John Fred & The Playboy Band","John Legend","John Mayer","John Williams","Johnnie Ray","Johnnie Taylor","Johnny Cash","Johnny Horton","Johnny Mathis","Johnny Mercer","Johnny Nash","Joji","Jon Bellion","Jonas Blue","Jonas Brothers","Joni James","Jorja Smith","Juan Gabriel","Juan Luis Guerra 4.40","Juanes","Juice Newton","Julia Michaels","Justin Bieber","Justin Quiles","KALEO","KAROL G","KAYTRANADA","KK","KSI","KYLE","Kacey Musgraves","Kane Brown","Kanye West","Karan Aujla","Kate Smith","Katy Perry","Kay Kyser","Ke$ha","Kehlani","Kelly Clarkson","Kenny Chesney","Kenny Loggins","Kenny Rogers","Kenshi Yonezu","Kenya Grace","Kevin Gates","Key Glock","Khalid","Kim Carnes","Kim Petras","Kimbra","Kina","King Gnu","Kings of Leon","Kingsmen","Kitty Kallen","Kodak Black","Kodaline","Kollegah","Kool & The Gang","Kungs","Kygo","Kylie Minogue","LE SSERAFIM","LISA","LMFAO","LUDMILLA","La Adictiva Banda San José de Mesillas","La Oreja de Van Gogh","Labrinth","Lady Antebellum","Lady GaGa","Lainey Wilson","Lana Del Rey","Latto","Lauryn Hill","Lauv","League of Legends","Lee Brice","Leon Bridges","Leona Lewis","Lesley Gore","Leslie Odom Jr.","Liam Payne","Lifehouse","Lil Baby","Lil Dicky","Lil Durk","Lil Mosey","Lil Nas X","Lil Pump","Lil Skies","Lil Tjay","Lil Uzi Vert","Lil Yachty","Lil' Kim","Lil' Wayne","Lin-Manuel Miranda","Linkin Park","Lionel Richie","Lipps Inc","Lisa Loeb","Little Peggy March","Little Richard","Lofi Fruits Music","Lord Huron","Los Del Rio","Los Dos Carnales","Los Lobos","Los Temerarios","Los Tigres Del Norte","Los Tucanes De Tijuana","Lou Reed","Loud Luxury","Louis Jordan","Louis Tomlinson","Love Unlimited","Lovin' Spoonful","Luan Santana","Luciano","Luis Miguel","Luis R Conriquez","Lulu","Lunay","Lupe Fiasco","M","MAX","MC Hammer","MC Ryan SP","MKTO","Mabel","Machine Gun Kelly","Madison Beer","Madonna","Mahalini","Major Lazer","Mambo Kingz","Maneskin","Marco Antonio Solís","Margaret Whiting","Maria Becerra","Mario","Mario Lanza","Mark Ronson","Maroon 5","Marshmello","Martin Garrix","Mary Ford","Mary J Blige","Mary J. Blige","Mary Wells","Matoma","Mau y Ricky","Meek Mill","Megadeth","Melanie","Melanie Martinez","Melendi","Men At Work","Metro Boomin","Michael Bublé","Michael Jackson","Michael McDonald","Michael Sembello","Miguel","Mike Posner","Miley Cyrus","Milky Chance","Minnie Riperton","Miracle Tones","Miranda Lambert","Mohit Chauhan","Mon Laferte","Moneybagg Yo","Monsta X","Mora","Morad","Morat","Mother Mother","Motley Crue","Ms. Lauryn Hill","Mumford & Sons","Muse","Mya","Myke Towers","NCT 127","NCT DREAM","NEFFEX","Nadin Amizah","Nancy Sinatra","Nat King Cole","Nate Smith","Natti Natasha","Nayer","Neil Diamond","Neil Sedaka","Nekfeu","Nelly","New Vaudeville Band","Next","Nickelback","Nicki Minaj","Nicki Nicole","Nicky Jam","Nina Simone","Ninho","Nipsey Hussle","Nirvana","Niska","No Doubt","Norah Jones","Normani","OMI","ONE OK ROCK","Oasis","Official HIGE DANdism","Offset","Old Dominion","Oliver Heldens","Olivia Rodrigo","Omah Lay","One Direction","Otis Redding","OutKast","Owl City","P Diddy","P!nk","PLK","PNL","Pamungkas","Passenger","Pat Boone","Patsy Cline","Patti LaBelle","Patti Page","Paul & Paula","Paul Revere & the Raiders","Paul Robeson","Paul Russell","Paul Whiteman","Paula Abdul","Peaches & Herb","Pearl Jam","Pee Wee Hunt","Pee Wee King","Pentatonix","Percy Faith","Percy Sledge","Peso Pluma","Peter Cetera","Peter Gabriel","Peter, Paul & Mary","Pharrell Williams","Pierce The Veil","Pineapple StormTv","Pink Floyd","Pink Sweat$","Piso 21","Pitbull","Plan B","Player","Polo G","Pop Smoke","Portugal. The Man","Pouya","Prince","Prince Royce","Pusha T","Quality Control","Queen","Quinn XCII","R. Kelly","RAF Camora","RAYE","REM","REO Speedwagon","Radiohead","Rag'n'Bone Man","Rage Against The Machine","Rahat Fateh Ali Khan","Rainbow Kitten Surprise","Rammstein","Rauw Alejandro","Ray Charles","Ray Parker Jr","Ray Stevens","Red Foley","Red Hot Chili Peppers","Red Velvet","Regard","Regina Belle","Reik","Rels B","Rema","Ricardo Arjona","Rich The Kid","Rick Astley","Rick Dees & his Cast of Idiots","Rick Ross","Rick Springfield","Ricky Martin","Ricky Nelson","Rihanna","Rita Ora","Ritchie Valens","Rizky Febian","Rob Thomas","Roberta Flack","Robin Schulz","Robin Thicke","Rod Stewart","Rod Wave","Roddy Ricch","Roger Miller","Romeo Santos","Rosemary Clooney","Roxette","Roy Acuff","Roy Orbison","Rudimental","Ruel","Ruth B.","Ryan Lewis","SCH","SEVENTEEN","SWV","Sabaton","Sabrina Carpenter","Sachet Tandon","Sachin-Jigar","Sade","Sam Cooke","Sam Feldt","Sam Hunt","Sam Smith","Sam The Sham & The Pharaohs","Sammy Davis Jr","Sammy Kaye","Santana","Sasha Alex Sloan","Savage Garden","Saweetie","Scorpions","Sean Kingston","Sean Paul","Sebastian Yatra","Sech","Seeb","Sezen Aksu","Sfera Ebbasta","Shaggy","Shania Twain","Shawn Mendes","Sheena Easton","Shinedown","Shubh","Sia","Sid Sriram","Sidhu Moose Wala","Silk","Silver Convention","Simon & Garfunkel","Sinead O'Connor","Sir Mix-a-Lot","Sister Sledge","Ski Mask The Slump God","Skillet","Skrillex","Sleeping At Last","Smokey Robinson","Snoop Dogg","Snow Patrol","Soda Stereo","Sonu Nigam","Sophie Ellis-Bextor","Spencer Davis Group","Spice Girls","Stan Getz","Starland Vocal Band","Stephen Sanchez","Steve Aoki","Steve Lacy","Steve Winwood","Stevie B","Sting","Stormzy","Strawberry Alarm Clock","Stray Kids","Stromae","Sublime","Sum 41","Summer Walker","Supertramp","Survivor","Swedish House Mafia","System Of A Down","T-Pain","T.I.","TAEYEON","TKKG","TLC","TOMORROW X TOGETHER","TOTO","TWICE","Tag Team","Tainy","Tammi Terrell","Tanishk Bagchi","Tate McRae","Taylor Swift","Tears For Fears","Tems","Tennessee Ernie Ford","Terence Trent D'Arby","Teresa Brewer","Terry Jacks","The Ames Brothers","The Animals","The B52s","The Bangles","The Beatles","The Black Eyed Peas","The Black Keys","The Box Tops","The Chainsmokers","The Chiffons","The Chordettes","The Clash","The Coasters","The Commodores","The Cowsills","The Cranberries","The Crew-Cuts","The Cure","The Detroit Spinners","The Diamonds","The Doobie Brothers","The Doors","The Drifters","The Emotions","The Eurythmics","The Fireballs","The Flamingos","The Foundations","The Four Seasons","The Fray","The Game","The Go Gos","The Goo Goo Dolls","The Head And The Heart","The Hollies","The Ink Spots","The Isley Brothers","The Jackson 5","The Kid LAROI","The Killers","The Kingston Trio","The Kooks","The Lemon Pipers","The Living Tombstone","The Lumineers","The Mamas & The Papas","The Marvelettes","The McCoys","The Mills Brothers","The Miracles","The Monkees","The Moody Blues","The National","The Neighbourhood","The Notorious B.I.G.","The O'Jays","The Offspring","The Osmonds","The Partridge Family","The Penguins","The Pet Shop Boys","The Platters","The Righteous Brothers","The Rolling Stones","The Ronettes","The Score","The Script","The Seekers","The Shangri-Las","The Smashing Pumpkins","The Staple Singers","The Strokes","The Supremes","The Temptations","The Turtles","The Vamps","The Verve","The Village People","The Weavers","The White Stripes","The Young Rascals","The Zombies","Thelma Houston","Thomas Rhett","Three Days Grace","Three Dog Night","Three Man Down","Timbaland","Timmy Trumpet","Toby Keith","Tom Jones","Tom Petty and the Heartbreakers","Tommy Dorsey","Tommy Edwards","Tommy James & the Shondells","Tone Loc","Toni Braxton","Topic","Tory Lanez","Tove Lo","Trevor Daniel","Trey Songz","Trippie Redd","Trueno","Tulsi Kumar","Tulus","Twenty One Pilots","Two Feet","Ty Dolla $ign","Tyga","Tyler Hubbard","U2","UB40","UZI","Ufo361","Upchurch","V","Vampire Weekend","Van McCoy","Van Morrison","Vance Joy","Vanessa Carlton","Vanessa Williams","Vera Lynn","Vernon Dalhart","Vicente Fernandez","Vishal-Shekhar","Volbeat","WILLOW","Wale","Wallows","Weezer","Wham!","Whitney Houston","Why Don't We","Wilbert Harrison","Wilson Phillips","Wiz Khalifa","Woody Guthrie","Wyclef Jean","XXXTENTACION","Xavi","YG","YNW Melly","YOASOBI","Yandel","Years & Years","Yeat","Yo Gotti","Young Dolph","Young Miko","Young Thug","YoungBoy Never Broke Again","Yung Gravy","Yuuri","Yuvan Shankar Raja","ZAYN","ZZ Top","Zac Brown Band","Zach Bryan","Zara Larsson","aespa","benny blanco","blink-182","d4vd","deadmau5","girl in red","gnash","iann dior","will.i.am"],genre:["Acid House","Acid Jazz","Acid Rock","Acoustic","Acoustic Blues","Afro-Pop","Afrobeat","Alt-Rock","Alternative","Ambient","American Trad Rock","Americana","Anime","Arena Rock","Art-Rock","Avant-Garde","Avant-Punk","Baladas y Boleros","Barbershop","Baroque","Bebop","Big Band","Black Metal","Blue Note","Bluegrass","Blues","Boogaloo","Bop","Bossa Nova","Bounce","Brazilian Funk","Breakbeat","Britpop","CCM","Cajun","Cantopop","Celtic","Celtic Folk","Chamber Music","Chant","Chanukah","Chicago Blues","Chicago House","Chicano","Children’s Music","Chill","Choral","Christian","Christmas","Classical","Club","College Rock","Conjunto","Cool Jazz","Country","Crunk","Dance","Dancehall","Death Metal","Deep House","Delta Blues","Detroit Techno","Dirty South","Disco","Disney","Dixieland","Doo-wop","Downtempo","Dream Pop","Drill","Drinking Songs","Drone","Drum'n'bass","Dub","Dubstep","EDM","Early Music","East Coast Rap","Easter","Easy Listening","Eclectic","Electric Blues","Electro","Electronic","Electronica","Emo","Enka","Environmental","Ethio-jazz","Experimental","Experimental Rock","Flamenco","Folk","Folk-Rock","Forro","French Pop","Funk","Fusion","Gangsta Rap","Garage","German Folk","German Pop","Glam Rock","Gospel","Goth","Grime","Grindcore","Groove","Grunge","Hair Metal","Halloween","Happy","Hard Bop","Hard Dance","Hard Rock","Hardcore","Hardcore Punk","Hardcore Rap","Hardstyle","Healing","Heavy Metal","High Classical","Hip Hop","Holiday","Honky Tonk","House","IDM","Impressionist","Indie","Industrial","Instrumental","J-Dance","J-Idol","J-Pop","J-Punk","J-Rock","J-Ska","J-Synth","Jackin House","Jam Bands","Japanese Pop","Jazz","Jungle","K-Pop","Karaoke","Kayokyoku","Kids","Kitsch","Klezmer","Krautrock","Latin","Latin Jazz","Latin Rap","Local","Lounge","Lullabies","MPB","Mainstream Jazz","Malay","Mandopop","March","Mariachi","Mawwal","Medieval","Meditation","Metal","Metalcore","Minimal Techno","Minimalism","Modern","Motown","Mugham","Musicals","Musique Concrète","Nature","Neo-Soul","Nerdcore","New Acoustic","New Age","New Mex","New Wave","No Wave","Noise","Nordic","Novelty","OPM","Oi!","Old School Rap","Opera","Orchestral","Original Score","Outlaw Country","Pagode","Party","Piano","Polka","Pop","Pop Film","Pop Latino","Post Dubstep","Power Pop","Praise & Worship","Progressive House","Progressive Rock","Proto-punk","Psych Rock","Psychedelic","Punk","Punk Rock","Qawwali","Quiet Storm","R&B","Ragtime","Rainy Day","Rap","Reggae","Reggaeton","Regional Mexicano","Relaxation","Renaissance","Retro","Rock","Rockabilly","Rocksteady","Romance","Romantic","Roots Reggae","Roots Rock","SKA","Sad","Salsa","Samba","Second Line","Sertanejo","Shaabi","Shoegaze","Sleep","Smooth Jazz","Soft Rock","Soul","Soundtrack","Southern Gospel","Southern Rock","Space Rock","Stage And Screen","Steampunk","Summer","Surf","Swamp Pop","Swing","Synth Pop","Tango","Techno","Teen Pop","Tejano","Tex-Mex","Thanksgiving","Traditional","Trance","Trip Hop","Tropical","Underground Rap","Urban","Urban Cowboy","West Coast Rap","Western Swing","World","Worldbeat","Zydeco"],song_name:["(Everything I Do) I Do it For You","(Ghost) Riders in the Sky","(I Can't Get No) Satisfaction","(I've Got a Gal In) Kalamazoo","(I've Had) the Time of My Life","(It's No) Sin","(Just Like) Starting Over","(Let Me Be Your) Teddy Bear","(Put Another Nickel In) Music! Music! Music!","(Sexual) Healing","(Sittin' On) the Dock of the Bay","(They Long to Be) Close to You","(You Keep Me) Hangin' On","(You're My) Soul & Inspiration","(Your Love Keeps Lifting Me) Higher & Higher","12th Street Rag","1999","19th Nervous Breakdown","50 Ways to Leave Your Lover","9 to 5","96 Tears","A Boy Named Sue","A Hard Day's Night","A String of Pearls","A Thousand Miles","A Tree in the Meadow","A Whiter Shade of Pale","A Whole New World (Aladdin's Theme)","A Woman in Love","A-Tisket A-Tasket","ABC","Abracadabra","Ac-cent-tchu-ate the Positive","Addicted to Love","After You've Gone","Afternoon Delight","Again","Against All Odds (Take a Look At Me Now)","Ain't Misbehavin'","Ain't No Mountain High Enough","Ain't No Sunshine","Ain't That a Shame","Airplanes","All Along the Watchtower","All I Have to Do is Dream","All I Wanna Do","All My Lovin' (You're Never Gonna Get It)","All Night Long (All Night)","All Out of Love","All Shook Up","All You Need is Love","Alone","Alone Again (Naturally)","Always On My Mind","American Pie","American Woman","Angie","Another Brick in the Wall (part 2)","Another Day in Paradise","Another Night","Another One Bites the Dust","Apologize","April Showers","Aquarius/Let The Sunshine In","Are You Lonesome Tonight?","Arthur's Theme (Best That You Can Do)","As Time Goes By","At Last","At the Hop","Auf Wiederseh'n Sweetheart","Baby Baby","Baby Come Back","Baby Got Back","Baby Love","Baby One More Time","Bad","Bad Day","Bad Girls","Bad Moon Rising","Bad Romance","Baker Street","Ball of Confusion (That's What the World is Today)","Ballad of the Green Berets","Ballerina","Band On the Run","Band of Gold","Battle of New Orleans","Be Bop a Lula","Be My Baby","Be My Love","Beat It","Beautiful Day","Beauty & the Beast","Because I Love You (The Postman Song)","Because You Loved Me","Because of You","Before The Next Teardrop Falls","Begin the Beguine","Behind Closed Doors","Being With You","Believe","Ben","Bennie & the Jets","Besame Mucho","Best of My Love","Bette Davis Eyes","Big Bad John","Big Girls Don't Cry","Billie Jean","Bitter Sweet Symphony","Black Or White","Black Velvet","Blaze of Glory","Bleeding Love","Blue Suede Shoes","Blue Tango","Blueberry Hill","Blurred Lines","Body & Soul","Bohemian Rhapsody","Boogie Oogie Oogie","Boogie Woogie Bugle Boy","Boom Boom Pow","Born in the USA","Born to Be Wild","Born to Run","Boulevard of Broken Dreams","Brand New Key","Brandy (You're A Fine Girl)","Breaking Up is Hard to Do","Breathe","Bridge Over Troubled Water","Brother","Brother Louie","Brown Eyed Girl","Brown Sugar","Build Me Up Buttercup","Burn","Buttons & Bows","Bye","Bye Bye","Bye Bye Love","Caldonia Boogie (What Makes Your Big Head So Hard)","California Dreamin'","California Girls","Call Me","Call Me Maybe","Can You Feel the Love Tonight","Can't Buy Me Love","Can't Get Enough of Your Love","Can't Help Falling in Love","Candle in the Wind '97","Candy Man","Car Wash","Careless Whisper","Cars","Cat's in the Cradle","Cathy's Clown","Celebration","Centerfold","Chain of Fools","Chances Are","Change the World","Chapel of Love","Chattanooga Choo Choo","Chattanoogie Shoe-Shine Boy","Check On It","Cheek to Cheek","Cherish","Cherry Pink & Apple Blossom White","Cold","Colors of the Wind","Come On Eileen","Come On-a My House","Come Together","Coming Up","Cracklin' Rosie","Crazy","Crazy For You","Crazy Little Thing Called Love","Crazy in Love","Creep","Crimson & Clover","Crocodile Rock","Cry","Cry Like a Baby","Crying","Da Doo Ron Ron (When He Walked Me Home)","Dance to the Music","Dancing Queen","Dancing in the Dark","Dancing in the Street","Dardanella","Daydream Believer","December 1963 (Oh What a Night)","Delicado","Dilemma","Disco Duck","Disco Lady","Disturbia","Dizzy","Do That to Me One More Time","Do Wah Diddy Diddy","Do Ya Think I'm Sexy?","Do You Love Me?","Don't Be Cruel","Don't Fence Me In","Don't Go Breaking My Heart","Don't Leave Me This Way","Don't Let the Stars Get in Your Eyes","Don't Let the Sun Go Down On Me","Don't Speak","Don't Stop 'Til You Get Enough","Don't Worry Be Happy","Don't You (Forget About Me)","Don't You Want Me","Doo Wop (That Thing)","Down","Down Hearted Blues","Down Under","Downtown","Dreamlover","Dreams","Drop it Like It's Hot","Drops of Jupiter (Tell Me)","Duke of Earl","E.T.","Earth Angel","Ebony & Ivory","Eight Days a Week","Empire State Of Mind","End of the Road","Endless Love","Escape (The Pina Colada Song)","Eve of Destruction","Every Breath You Take","Every Little Thing She Does is Magic","Everybody Loves Somebody","Everybody Wants to Rule the World","Everyday People","Eye of the Tiger","Faith","Fallin'","Fame","Family Affair","Fantasy","Fast Car","Feel Good Inc","Feel Like Making Love","Fire & Rain","Firework","Flashdance. What a Feeling","Fly Robin Fly","Foolish Games","Footloose","For What It's Worth (Stop","Fortunate Son","Frankenstein","Freak Me","Freebird","Frenesi","Funkytown","Gangsta's Paradise","Georgia On My Mind","Georgy Girl","Get Back","Get Down Tonight","Get Off of My Cloud","Ghostbusters","Gimme Some Lovin'","Girls Just Wanna Have Fun","Give Me Everything","Gives You Hell","Glamorous","Glory of Love","Go Your Own Way","God Bless America","God Bless the Child","Gold Digger","Gonna Make You Sweat (Everybody Dance Now)","Good Lovin'","Good Times","Good Vibrations","Goodbye Yellow Brick Road","Goodnight","Got to Give it Up","Grease","Great Balls of Fire","Greatest Love of All","Green Onions","Green River","Green Tambourine","Grenade","Groove is in the Heart","Groovin'","Gypsies","Hair","Hang On Sloopy","Hanging by a Moment","Hanky Panky","Happy Days Are Here Again","Happy Together","Harbour Lights","Hard to Say I'm Sorry","Harper Valley PTA","Have You Ever Really Loved a Woman?","He'll Have to Go","He's So Fine","He's a Rebel","Heart of Glass","Heart of Gold","Heartbreak Hotel","Hello","Hello Dolly","Help Me","Help!","Here Without You","Here in My Heart","Hero","Hey Baby","Hey Jude","Hey Paula","Hey There","Hey There Delilah","Hey Ya!","Higher Love","Hips don't lie","Hit the Road","Hold On","Hollaback Girl","Honey","Honky Tonk","Honky Tonk Woman","Horse With No Name","Hot Child In The City","Hot Stuff","Hotel California","Hound Dog","House of the Rising Sun","How Deep is Your Love?","How Do I Live?","How Do You Mend a Broken Heart","How High the Moon","How Much is That Doggy in the Window?","How Will I Know","How You Remind Me","How to Save a Life","Hungry Heart","Hurt So Good","I Believe I Can Fly","I Can Dream","I Can Help","I Can See Clearly Now","I Can't Get Next to You","I Can't Get Started","I Can't Go For That (No Can Do)","I Can't Help Myself (Sugar Pie","I Can't Stop Loving You","I Don't Want to Miss a Thing","I Fall to Pieces","I Feel Fine","I Feel For You","I Feel Love","I Get Around","I Got You (I Feel Good)","I Got You Babe","I Gotta Feeling","I Heard it Through the Grapevine","I Honestly Love You","I Just Called to Say I Love You","I Just Wanna Be Your Everything","I Kissed A Girl","I Love Rock 'n' Roll","I Need You Now","I Only Have Eyes For You","I Shot the Sheriff","I Still Haven't Found What I'm Looking For","I Swear","I Think I Love You","I Walk the Line","I Wanna Dance With Somebody (Who Loves Me)","I Wanna Love You","I Want You Back","I Want to Hold Your Hand","I Want to Know What Love Is","I Went to Your Wedding","I Will Always Love You","I Will Follow Him","I Will Survive","I Write the Songs","I'll Be Missing You","I'll Be There","I'll Make Love to You","I'll Never Smile Again","I'll Take You There","I'll Walk Alone","I'll be seeing you","I'm Looking Over a Four Leaf Clover","I'm So Lonesome I Could Cry","I'm Sorry","I'm Walking Behind You","I'm Your Boogie Man","I'm Yours","I'm a Believer","I've Heard That Song Before","If (They Made Me a King)","If I Didn't Care","If You Don't Know Me By Now","If You Leave Me Now","Imagine","In Da Club","In the End","In the Ghetto","In the Mood","In the Summertime","In the Year 2525 (Exordium & Terminus)","Incense & Peppermints","Indian Reservation (The Lament Of The Cherokee Reservation Indian)","Instant Karma","Iris","Ironic","Irreplaceable","It Had to Be You","It's All in the Game","It's My Party","It's Now Or Never","It's Still Rock 'n' Roll to Me","It's Too Late","Jack & Diane","Jailhouse Rock","Jessie's Girl","Jive Talkin'","Johnny B Goode","Joy to the World","Judy in Disguise (With Glasses)","Jump","Jumpin' Jack Flash","Just Dance","Just My Imagination (Running Away With Me)","Just the Way You Are","Kansas City","Karma Chameleon","Keep On Loving You","Killing Me Softly With His Song","King of the Road","Kiss","Kiss & Say Goodbye","Kiss From a Rose","Kiss Me","Kiss On My List","Kiss You All Over","Knock On Wood","Knock Three Times","Kokomo","Kryptonite","Kung Fu Fighting","La Bamba","Lady","Lady Marmalade (Voulez-Vous Coucher Aver Moi Ce Soir?)","Last Train to Clarksville","Layla","Le Freak","Leader of the Pack","Lean On Me","Leaving","Let Me Call You Sweetheart","Let Me Love You","Let it Be","Let it Snow! Let it Snow! Let it Snow!","Let's Dance","Let's Get it On","Let's Groove","Let's Hear it For the Boy","Let's Stay Together","Light My Fire","Lights","Like a Prayer","Like a Rolling Stone","Like a Virgin","Little Darlin'","Little Things Mean a Lot","Live & Let Die","Livin' La Vida Loca","Livin' On a Prayer","Living For the City","Locked Out Of Heaven","Lola","Lonely Boy","Long Cool Woman in a Black Dress","Long Tall Sally","Look Away","Lookin' Out My Back Door","Lose Yourself","Losing My Religion","Louie Louie","Love Child","Love Hangover","Love In This Club","Love Is Blue (L'Amour Est Bleu)","Love Letters in the Sand","Love Me Do","Love Me Tender","Love Shack","Love Theme From 'A Star is Born' (Evergreen)","Love Train","Love Will Keep Us Together","Love is a Many Splendoured Thing","Love to Love You Baby","Love's Theme","Loving You","Low","Macarena","Mack the Knife","Maggie May","Magic","Magic Carpet Ride","Make Love to Me","Make it With You","Makin' Whoopee","Mama Told Me Not to Come","Man in the Mirror","Manana (Is Soon Enough For Me)","Maneater","Maniac","Maybellene","Me & Bobby McGee","Me & Mrs Jones","Memories Are Made of This","Mercy Mercy Me (The Ecology)","Mickey","Midnight Train to Georgia","Minnie the Moocher","Miss You","Miss You Much","Mister Sandman","Mmmbop","Mona Lisa","Monday Monday","Money For Nothing","Mony Mony","Mood Indigo","Moonlight Cocktail","Moonlight Serenade","More Than Words","More Than a Feeling","Morning Train (Nine to Five)","Mr Big Stuff","Mr Brightside","Mr Tambourine Man","Mrs Brown You've Got a Lovely Daughter","Mrs Robinson","Mule Train","Music","My Blue Heaven","My Boyfriend's Back","My Eyes Adored You","My Girl","My Guy","My Heart Will Go On","My Life","My Love","My Man","My Prayer","My Sharona","My Sweet Lord","Na Na Hey Hey (Kiss Him Goodbye)","Nature Boy","Near You","Need You Now","Need You Tonight","Never Gonna Give You Up","Night & Day","Night Fever","Nights in White Satin","No One","No Scrubs","Nobody Does it Better","Nothin' on You","Nothing Compares 2 U","Nothing's Gonna Stop Us Now","Ode To Billie Joe","Oh","Oh Happy Day","Oh My Papa (O Mein Papa)","Ol' Man River","Ole Buttermilk Sky","On Bended Knee","On My Own","On the Atchison","One","One Bad Apple","One More Try","One O'Clock Jump","One Sweet Day","One of These Nights","One of Us","Only The Lonely (Know The Way I Feel)","Only You (And You Alone)","Open Arms","Over There","Over the Rainbow","Paint it Black","Papa Don't Preach","Papa Was a Rolling Stone","Papa's Got a Brand New Bag","Paper Doll","Paper Planes","Paperback Writer","Party Rock Anthem","Peg o' My Heart","Peggy Sue","Pennies From Heaven","Penny Lane","People","People Got to Be Free","Personality","Philadelphia Freedom","Physical","Piano Man","Pick Up the Pieces","Pistol Packin' Mama","Play That Funky Music","Please Mr Postman","Poker Face","Pon De Replay","Pony Time","Pop Muzik","Prisoner of Love","Private Eyes","Promiscuous","Proud Mary","Purple Haze","Purple Rain","Puttin' on the Ritz","Que sera sera (Whatever will be will be)","Queen of Hearts","Rag Doll","Rag Mop","Rags to Riches","Raindrops Keep Falling On My Head","Rapture","Ray of Light","Reach Out (I'll Be There)","Red Red Wine","Rehab","Respect","Return to Sender","Reunited","Revolution","Rhapsody in Blue","Rhinestone Cowboy","Rich Girl","Riders On the Storm","Right Back Where We Started From","Ring My Bell","Ring of Fire","Rock Around the Clock","Rock With You","Rock Your Baby","Rock the Boat","Rock the Casbah","Roll Over Beethoven","Roll With It","Rolling In The Deep","Rosanna","Roses Are Red","Royals","Ruby Tuesday","Rudolph","Rum & Coca-Cola","Runaround Sue","Runaway","Running Scared","Rush Rush","Sailing","Save the Best For Last","Save the Last Dance For Me","Say It Right","Say My Name","Say Say Say","Say You","School's Out","Seasons in the Sun","Secret Love","Sentimental Journey","Sexyback","Sh-Boom (Life Could Be a Dream)","Shadow Dancing","Shake Down","Shake You Down","She Drives Me Crazy","She Loves You","She's a Lady","Shining Star","Shop Around","Shout","Silly Love Songs","Since U Been Gone","Sing","Singing The Blues","Single Ladies (Put A Ring On It)","Sir Duke","Sixteen Tons","Sledgehammer","Sleep Walk","Sleepy Lagoon","Slow Poke","Smells Like Teen Spirit","Smoke Gets in Your Eyes","Smoke On the Water","Smoke! Smoke! Smoke! (That Cigarette)","Smooth","So Much in Love","Soldier Boy","Some Enchanted Evening","Some of These Days","Somebody That I Used to Know","Somebody to Love","Someday","Somethin' Stupid","Something","Soul Man","Spanish Harlem","Spill the Wine","Spinning Wheel","Spirit in the Sky","St George & the Dragonette","St Louis Blues","Stagger Lee","Stairway to Heaven","Stand By Me","Stardust","Stars & Stripes Forever","Stay (I Missed You)","Stayin' Alive","Stop! in the Name of Love","Stormy Weather (Keeps Rainin' All the Time)","Straight Up","Strange Fruit","Stranger On the Shore","Strangers in the Night","Strawberry Fields Forever","Streets of Philadelphia","Stronger","Stuck On You","Sugar Shack","Sugar Sugar","Summer in the City","Summertime Blues","Sunday","Sunshine Superman","Sunshine of Your Love","Superstar","Superstition","Surfin' USA","Suspicious Minds","Swanee","Sweet Caroline (Good Times Never Seemed So Good)","Sweet Child O' Mine","Sweet Dreams (Are Made of This)","Sweet Georgia Brown","Sweet Home Alabama","Sweet Soul Music","Swinging On a Star","T For Texas (Blue Yodel No 1)","TSOP (The Sound of Philadelphia)","Take Me Home","Take My Breath Away","Take On Me","Take The 'A' Train","Take a Bow","Tammy","Tangerine","Tears in Heaven","Tears of a Clown","Temperature","Tennessee Waltz","Tequila","Tha Crossroads","Thank You (Falettinme be Mice Elf Again)","That Lucky Old Sun (Just Rolls Around Heaven All Day)","That Old Black Magic","That'll Be the Day","That's Amore","That's What Friends Are For","That's the Way (I Like It)","That's the Way Love Goes","The Boy is Mine","The Boys of Summer","The Christmas Song (Chestnuts Roasting On An Open Fire)","The End of the World","The First Time Ever I Saw Your Face","The Girl From Ipanema","The Glow-Worm","The Great Pretender","The Gypsy","The Hustle","The Joker","The Last Dance","The Letter","The Loco-Motion","The Long & Winding Road","The Love You Save","The Morning After","The Power of Love","The Prisoner's Song","The Reason","The Rose","The Sign","The Song From Moulin Rouge (Where Is Your Heart)","The Sounds of Silence","The Streak","The Sweet Escape","The Thing","The Tide is High","The Tracks of My Tears","The Twist","The Wanderer","The Way We Were","The Way You Look Tonight","The Way You Move","Theme From 'A Summer Place'","Theme From 'Greatest American Hero' (Believe It Or Not)","Theme From 'Shaft'","There goes my baby","These Boots Are Made For Walking","Third Man Theme","This Diamond Ring","This Guy's in Love With You","This Land is Your Land","This Love","This Ole House","This Used to Be My Playground","Three Coins in the Fountain","Three Times a Lady","Thrift Shop","Thriller","Ticket to Ride","Tie a Yellow Ribbon 'round the Old Oak Tree","Tiger Rag","Tighten Up","Tik-Toc","Till I Waltz Again With You","Till The End of Time","Time After Time","Time of the Season","To Sir","Tom Dooley","Tonight's the Night (Gonna Be Alright)","Too Close","Too Young","Tossing & Turning","Total Eclipse of the Heart","Touch Me","Toxic","Travellin' Band","Travellin' Man","Truly Madly Deeply","Turn! Turn! Turn! (To Everything There is a Season)","Tutti Frutti","Twist & Shout","Two Hearts","U Can't Touch This","U Got it Bad","Umbrella","Un-Break My Heart","Unbelievable","Unchained Melody","Uncle Albert (Admiral Halsey)","Under the Boardwalk","Under the Bridge","Unforgettable","Up Around the Bend","Up Up & Away","Up Where We Belong","Upside Down","Use Somebody","Vaya Con Dios (may God Be With You)","Venus","Vision of Love","Viva La Vida","Vogue","Volare","Wabash Cannonball","Waiting For a Girl Like You","Wake Me Up Before You Go Go","Wake Up Little Susie","Walk Don't Run","Walk Like a Man","Walk Like an Egyptian","Walk On By","Walk On the Wild Side","Walk This Way","Wannabe","Want Ads","Wanted","War","Waterfalls","Wayward Wind","We Are Family","We Are Young","We Are the Champions","We Are the World","We Belong Together","We Built This City","We Can Work it Out","We Didn't Start the Fire","We Found Love","We Got The Beat","We Will Rock You","We've Only Just Begun","Weak","Wedding Bell Blues","West End Blues","West End Girls","What Goes Around Comes Around","What a Fool Believes","What'd I Say","What's Going On?","What's Love Got to Do With It?","Whatcha Say","Wheel of Fortune","When Doves Cry","When You Wish Upon a Star","When a Man Loves a Woman","Where Did Our Love Go","Where is the Love?","Whip It","Whispering","White Christmas","White Rabbit","Whole Lotta Love","Whole Lotta Shakin' Goin' On","Whoomp! (There it Is)","Why Do Fools Fall in Love?","Why Don't You Believe Me?","Wichita Lineman","Wicked Game","Wild Thing","Wild Wild West","Will It Go Round In Circles","Will You Love Me Tomorrow","Winchester Cathedral","Wind Beneath My Wings","Wipe Out","Wishing Well","With Or Without You","Without Me","Without You","Woman","Won't Get Fooled Again","Wooly Bully","Working My Way Back to You","YMCA","Yakety Yak","Yeah!","Yellow Rose of Texas","Yesterday","You Ain't Seen Nothin' Yet","You Always Hurt the One You Love","You Are the Sunshine of My Life","You Belong With Me","You Belong to Me","You Can't Hurry Love","You Don't Bring Me Flowers","You Don't Have to Be a Star (To Be in My Show)","You Light Up My Life","You Make Me Feel Brand New","You Make Me Feel Like Dancing","You Really Got Me","You Send Me","You Sexy Thing","You Were Meant for Me","You make Me Wanna","You'll Never Know","You're Beautiful","You're So Vain","You're Still the One","You're the One That I Want","You've Got a Friend","You've Lost That Lovin' Feelin'","Your Cheatin' Heart","Your Song"]},person:{bio_part:["activist","artist","author","blogger","business owner","coach","creator","designer","developer","dreamer","educator","engineer","entrepreneur","environmentalist","film lover","filmmaker","foodie","founder","friend","gamer","geek","grad","inventor","leader","model","musician","nerd","parent","patriot","person","philosopher","photographer","public speaker","scientist","singer","streamer","student","teacher","traveler","veteran","writer"],bio_pattern:["{{person.bio_part}}","{{person.bio_part}}, {{person.bio_part}}","{{person.bio_part}}, {{person.bio_part}}, {{person.bio_part}}","{{person.bio_part}}, {{person.bio_part}}, {{person.bio_part}} {{internet.emoji}}","{{word.noun}} {{person.bio_supporter}}","{{word.noun}} {{person.bio_supporter}} {{internet.emoji}}","{{word.noun}} {{person.bio_supporter}}, {{person.bio_part}}","{{word.noun}} {{person.bio_supporter}}, {{person.bio_part}} {{internet.emoji}}"],bio_supporter:["advocate","devotee","enthusiast","fan","junkie","lover","supporter"],first_name:{generic:["Aaliyah","Aaron","Abagail","Abbey","Abbie","Abbigail","Abby","Abdiel","Abdul","Abdullah","Abe","Abel","Abelardo","Abigail","Abigale","Abigayle","Abner","Abraham","Ada","Adah","Adalberto","Adaline","Adam","Adan","Addie","Addison","Adela","Adelbert","Adele","Adelia","Adeline","Adell","Adella","Adelle","Aditya","Adolf","Adolfo","Adolph","Adolphus","Adonis","Adrain","Adrian","Adriana","Adrianna","Adriel","Adrien","Adrienne","Afton","Aglae","Agnes","Agustin","Agustina","Ahmad","Ahmed","Aida","Aidan","Aiden","Aileen","Aimee","Aisha","Aiyana","Akeem","Al","Alaina","Alan","Alana","Alanis","Alanna","Alayna","Alba","Albert","Alberta","Albertha","Alberto","Albin","Albina","Alda","Alden","Alec","Aleen","Alejandra","Alejandrin","Alek","Alena","Alene","Alessandra","Alessandro","Alessia","Aletha","Alex","Alexa","Alexander","Alexandra","Alexandre","Alexandrea","Alexandria","Alexandrine","Alexandro","Alexane","Alexanne","Alexie","Alexis","Alexys","Alexzander","Alf","Alfonso","Alfonzo","Alford","Alfred","Alfreda","Alfredo","Ali","Alia","Alice","Alicia","Alisa","Alisha","Alison","Alivia","Aliya","Aliyah","Aliza","Alize","Allan","Allen","Allene","Allie","Allison","Ally","Alphonso","Alta","Althea","Alva","Alvah","Alvena","Alvera","Alverta","Alvina","Alvis","Alyce","Alycia","Alysa","Alysha","Alyson","Alysson","Amalia","Amanda","Amani","Amara","Amari","Amaya","Amber","Ambrose","Amelia","Amelie","Amely","America","Americo","Amie","Amina","Amir","Amira","Amiya","Amos","Amparo","Amy","Amya","Ana","Anabel","Anabelle","Anahi","Anais","Anastacio","Anastasia","Anderson","Andre","Andreane","Andreanne","Andres","Andrew","Andy","Angel","Angela","Angelica","Angelina","Angeline","Angelita","Angelo","Angie","Angus","Anibal","Anika","Anissa","Anita","Aniya","Aniyah","Anjali","Anna","Annabel","Annabell","Annabelle","Annalise","Annamae","Annamarie","Anne","Annetta","Annette","Annie","Ansel","Ansley","Anthony","Antoinette","Antone","Antonetta","Antonette","Antonia","Antonietta","Antonina","Antonio","Antwan","Antwon","Anya","April","Ara","Araceli","Aracely","Arch","Archibald","Ardella","Arden","Ardith","Arely","Ari","Ariane","Arianna","Aric","Ariel","Arielle","Arjun","Arlene","Arlie","Arlo","Armand","Armando","Armani","Arnaldo","Arne","Arno","Arnold","Arnoldo","Arnulfo","Aron","Art","Arthur","Arturo","Arvel","Arvid","Arvilla","Aryanna","Asa","Asha","Ashlee","Ashleigh","Ashley","Ashly","Ashlynn","Ashton","Ashtyn","Asia","Assunta","Astrid","Athena","Aubree","Aubrey","Audie","Audra","Audreanne","Audrey","August","Augusta","Augustine","Augustus","Aurelia","Aurelie","Aurelio","Aurore","Austen","Austin","Austyn","Autumn","Ava","Avery","Avis","Axel","Ayana","Ayden","Ayla","Aylin","Baby","Bailee","Bailey","Barbara","Barney","Baron","Barrett","Barry","Bart","Bartholome","Barton","Baylee","Beatrice","Beau","Beaulah","Bell","Bella","Belle","Ben","Benedict","Benjamin","Bennett","Bennie","Benny","Benton","Berenice","Bernadette","Bernadine","Bernard","Bernardo","Berneice","Bernhard","Bernice","Bernie","Berniece","Bernita","Berry","Bert","Berta","Bertha","Bertram","Bertrand","Beryl","Bessie","Beth","Bethany","Bethel","Betsy","Bette","Bettie","Betty","Bettye","Beulah","Beverly","Bianka","Bill","Billie","Billy","Birdie","Blair","Blaise","Blake","Blanca","Blanche","Blaze","Bo","Bobbie","Bobby","Bonita","Bonnie","Boris","Boyd","Brad","Braden","Bradford","Bradley","Bradly","Brady","Braeden","Brain","Brandi","Brando","Brandon","Brandt","Brandy","Brandyn","Brannon","Branson","Brant","Braulio","Braxton","Brayan","Breana","Breanna","Breanne","Brenda","Brendan","Brenden","Brendon","Brenna","Brennan","Brennon","Brent","Bret","Brett","Bria","Brian","Briana","Brianne","Brice","Bridget","Bridgette","Bridie","Brielle","Brigitte","Brionna","Brisa","Britney","Brittany","Brock","Broderick","Brody","Brook","Brooke","Brooklyn","Brooks","Brown","Bruce","Bryana","Bryce","Brycen","Bryon","Buck","Bud","Buddy","Buford","Bulah","Burdette","Burley","Burnice","Buster","Cade","Caden","Caesar","Caitlyn","Cale","Caleb","Caleigh","Cali","Calista","Callie","Camden","Cameron","Camila","Camilla","Camille","Camren","Camron","Camryn","Camylle","Candace","Candelario","Candice","Candida","Candido","Cara","Carey","Carissa","Carlee","Carleton","Carley","Carli","Carlie","Carlo","Carlos","Carlotta","Carmel","Carmela","Carmella","Carmelo","Carmen","Carmine","Carol","Carolanne","Carole","Carolina","Caroline","Carolyn","Carolyne","Carrie","Carroll","Carson","Carter","Cary","Casandra","Casey","Casimer","Casimir","Casper","Cassandra","Cassandre","Cassidy","Cassie","Catalina","Caterina","Catharine","Catherine","Cathrine","Cathryn","Cathy","Cayla","Ceasar","Cecelia","Cecil","Cecile","Cecilia","Cedrick","Celestine","Celestino","Celia","Celine","Cesar","Chad","Chadd","Chadrick","Chaim","Chance","Chandler","Chanel","Chanelle","Charity","Charlene","Charles","Charley","Charlie","Charlotte","Chase","Chasity","Chauncey","Chaya","Chaz","Chelsea","Chelsey","Chelsie","Chesley","Chester","Chet","Cheyanne","Cheyenne","Chloe","Chris","Christ","Christa","Christelle","Christian","Christiana","Christina","Christine","Christop","Christophe","Christopher","Christy","Chyna","Ciara","Cicero","Cielo","Cierra","Cindy","Citlalli","Clair","Claire","Clara","Clarabelle","Clare","Clarissa","Clark","Claud","Claude","Claudia","Claudie","Claudine","Clay","Clemens","Clement","Clementina","Clementine","Clemmie","Cleo","Cleora","Cleta","Cletus","Cleve","Cleveland","Clifford","Clifton","Clint","Clinton","Clotilde","Clovis","Cloyd","Clyde","Coby","Cody","Colby","Cole","Coleman","Colin","Colleen","Collin","Colt","Colten","Colton","Columbus","Concepcion","Conner","Connie","Connor","Conor","Conrad","Constance","Constantin","Consuelo","Cooper","Cora","Coralie","Corbin","Cordelia","Cordell","Cordia","Cordie","Corene","Corine","Cornelius","Cornell","Corrine","Cortez","Cortney","Cory","Coty","Courtney","Coy","Craig","Crawford","Creola","Cristal","Cristian","Cristina","Cristobal","Cristopher","Cruz","Crystal","Crystel","Cullen","Curt","Curtis","Cydney","Cynthia","Cyril","Cyrus","Dagmar","Dahlia","Daija","Daisha","Daisy","Dakota","Dale","Dallas","Dallin","Dalton","Damaris","Dameon","Damian","Damien","Damion","Damon","Dan","Dana","Dandre","Dane","D'angelo","Dangelo","Danial","Daniela","Daniella","Danielle","Danika","Dannie","Danny","Dante","Danyka","Daphne","Daphnee","Daphney","Darby","Daren","Darian","Dariana","Darien","Dario","Darion","Darius","Darlene","Daron","Darrel","Darrell","Darren","Darrick","Darrin","Darrion","Darron","Darryl","Darwin","Daryl","Dashawn","Dasia","Dave","David","Davin","Davion","Davon","Davonte","Dawn","Dawson","Dax","Dayana","Dayna","Dayne","Dayton","Dean","Deangelo","Deanna","Deborah","Declan","Dedric","Dedrick","Dee","Deion","Deja","Dejah","Dejon","Dejuan","Delaney","Delbert","Delfina","Delia","Delilah","Dell","Della","Delmer","Delores","Delpha","Delphia","Delphine","Delta","Demarco","Demarcus","Demario","Demetris","Demetrius","Demond","Dena","Denis","Dennis","Deon","Deondre","Deontae","Deonte","Dereck","Derek","Derick","Deron","Derrick","Deshaun","Deshawn","Desiree","Desmond","Dessie","Destany","Destin","Destinee","Destiney","Destini","Destiny","Devan","Devante","Deven","Devin","Devon","Devonte","Devyn","Dewayne","Dewitt","Dexter","Diamond","Diana","Dianna","Diego","Dillan","Dillon","Dimitri","Dina","Dino","Dion","Dixie","Dock","Dolly","Dolores","Domenic","Domenica","Domenick","Domenico","Domingo","Dominic","Dominique","Don","Donald","Donato","Donavon","Donna","Donnell","Donnie","Donny","Dora","Dorcas","Dorian","Doris","Dorothea","Dorothy","Dorris","Dortha","Dorthy","Doug","Douglas","Dovie","Doyle","Drake","Drew","Duane","Dudley","Dulce","Duncan","Durward","Dustin","Dusty","Dwight","Dylan","Earl","Earlene","Earline","Earnest","Earnestine","Easter","Easton","Ebba","Ebony","Ed","Eda","Edd","Eddie","Eden","Edgar","Edgardo","Edison","Edmond","Edmund","Edna","Eduardo","Edward","Edwardo","Edwin","Edwina","Edyth","Edythe","Effie","Efrain","Efren","Eileen","Einar","Eino","Eladio","Elaina","Elbert","Elda","Eldon","Eldora","Eldred","Eldridge","Eleanora","Eleanore","Eleazar","Electa","Elena","Elenor","Elenora","Eleonore","Elfrieda","Eli","Elian","Eliane","Elias","Eliezer","Elijah","Elinor","Elinore","Elisa","Elisabeth","Elise","Eliseo","Elisha","Elissa","Eliza","Elizabeth","Ella","Ellen","Ellie","Elliot","Elliott","Ellis","Ellsworth","Elmer","Elmira","Elmo","Elmore","Elna","Elnora","Elody","Eloisa","Eloise","Elouise","Eloy","Elroy","Elsa","Else","Elsie","Elta","Elton","Elva","Elvera","Elvie","Elvis","Elwin","Elwyn","Elyse","Elyssa","Elza","Emanuel","Emelia","Emelie","Emely","Emerald","Emerson","Emery","Emie","Emil","Emile","Emilia","Emiliano","Emilie","Emilio","Emily","Emma","Emmalee","Emmanuel","Emmanuelle","Emmet","Emmett","Emmie","Emmitt","Emmy","Emory","Ena","Enid","Enoch","Enola","Enos","Enrico","Enrique","Ephraim","Era","Eriberto","Eric","Erica","Erich","Erick","Ericka","Erik","Erika","Erin","Erling","Erna","Ernest","Ernestina","Ernestine","Ernesto","Ernie","Ervin","Erwin","Eryn","Esmeralda","Esperanza","Esta","Esteban","Estefania","Estel","Estell","Estella","Estelle","Estevan","Esther","Estrella","Etha","Ethan","Ethel","Ethelyn","Ethyl","Ettie","Eudora","Eugene","Eugenia","Eula","Eulah","Eulalia","Euna","Eunice","Eusebio","Eva","Evalyn","Evan","Evangeline","Evans","Eve","Eveline","Evelyn","Everardo","Everett","Everette","Evert","Evie","Ewald","Ewell","Ezekiel","Ezequiel","Ezra","Fabian","Fabiola","Fae","Fannie","Fanny","Fatima","Faustino","Fausto","Favian","Fay","Faye","Federico","Felicia","Felicita","Felicity","Felipa","Felipe","Felix","Felton","Fermin","Fern","Fernando","Ferne","Fidel","Filiberto","Filomena","Finn","Fiona","Flavie","Flavio","Fleta","Fletcher","Flo","Florence","Florencio","Florian","Florida","Florine","Flossie","Floy","Floyd","Ford","Forest","Forrest","Foster","Frances","Francesca","Francesco","Francis","Francisca","Francisco","Franco","Frank","Frankie","Franz","Fred","Freda","Freddie","Freddy","Frederic","Frederick","Frederik","Frederique","Fredrick","Fredy","Freeda","Freeman","Freida","Frida","Frieda","Friedrich","Fritz","Furman","Gabe","Gabriel","Gabriella","Gabrielle","Gaetano","Gage","Gail","Gardner","Garett","Garfield","Garland","Garnet","Garnett","Garret","Garrett","Garrick","Garrison","Garry","Garth","Gaston","Gavin","Gayle","Gene","General","Genesis","Genevieve","Gennaro","Genoveva","Geo","Geoffrey","George","Georgette","Georgiana","Georgianna","Geovanni","Geovanny","Geovany","Gerald","Geraldine","Gerard","Gerardo","Gerda","Gerhard","Germaine","German","Gerry","Gerson","Gertrude","Gia","Gianni","Gideon","Gilbert","Gilberto","Gilda","Giles","Gillian","Gina","Gino","Giovani","Giovanna","Giovanni","Giovanny","Gisselle","Giuseppe","Gladyce","Gladys","Glen","Glenda","Glenna","Glennie","Gloria","Godfrey","Golda","Golden","Gonzalo","Gordon","Grace","Gracie","Graciela","Grady","Graham","Grant","Granville","Grayce","Grayson","Green","Greg","Gregg","Gregoria","Gregorio","Gregory","Greta","Gretchen","Greyson","Griffin","Grover","Guadalupe","Gudrun","Guido","Guillermo","Guiseppe","Gunnar","Gunner","Gus","Gussie","Gust","Gustave","Guy","Gwen","Gwendolyn","Hadley","Hailee","Hailey","Hailie","Hal","Haleigh","Haley","Halie","Halle","Hallie","Hank","Hanna","Hannah","Hans","Hardy","Harley","Harmon","Harmony","Harold","Harrison","Harry","Harvey","Haskell","Hassan","Hassie","Hattie","Haven","Hayden","Haylee","Hayley","Haylie","Hazel","Hazle","Heath","Heather","Heaven","Heber","Hector","Heidi","Helen","Helena","Helene","Helga","Hellen","Helmer","Heloise","Henderson","Henri","Henriette","Henry","Herbert","Herman","Hermann","Hermina","Herminia","Herminio","Hershel","Herta","Hertha","Hester","Hettie","Hilario","Hilbert","Hilda","Hildegard","Hillard","Hillary","Hilma","Hilton","Hipolito","Hiram","Hobart","Holden","Hollie","Hollis","Holly","Hope","Horace","Horacio","Hortense","Hosea","Houston","Howard","Howell","Hoyt","Hubert","Hudson","Hugh","Hulda","Humberto","Hunter","Hyman","Ian","Ibrahim","Icie","Ida","Idell","Idella","Ignacio","Ignatius","Ike","Ila","Ilene","Iliana","Ima","Imani","Imelda","Immanuel","Imogene","Ines","Irma","Irving","Irwin","Isaac","Isabel","Isabell","Isabella","Isabelle","Isac","Isadore","Isai","Isaiah","Isaias","Isidro","Ismael","Isobel","Isom","Israel","Issac","Itzel","Iva","Ivah","Ivory","Ivy","Izabella","Izaiah","Jabari","Jace","Jacey","Jacinthe","Jacinto","Jack","Jackeline","Jackie","Jacklyn","Jackson","Jacky","Jaclyn","Jacquelyn","Jacques","Jacynthe","Jada","Jade","Jaden","Jadon","Jadyn","Jaeden","Jaida","Jaiden","Jailyn","Jaime","Jairo","Jakayla","Jake","Jakob","Jaleel","Jalen","Jalon","Jalyn","Jamaal","Jamal","Jamar","Jamarcus","Jamel","Jameson","Jamey","Jamie","Jamil","Jamir","Jamison","Jammie","Jan","Jana","Janae","Jane","Janelle","Janessa","Janet","Janice","Janick","Janie","Janis","Janiya","Jannie","Jany","Jaquan","Jaquelin","Jaqueline","Jared","Jaren","Jarod","Jaron","Jarred","Jarrell","Jarret","Jarrett","Jarrod","Jarvis","Jasen","Jasmin","Jason","Jasper","Jaunita","Javier","Javon","Javonte","Jay","Jayce","Jaycee","Jayda","Jayde","Jayden","Jaydon","Jaylan","Jaylen","Jaylin","Jaylon","Jayme","Jayne","Jayson","Jazlyn","Jazmin","Jazmyn","Jazmyne","Jean","Jeanette","Jeanie","Jeanne","Jed","Jedediah","Jedidiah","Jeff","Jefferey","Jeffery","Jeffrey","Jeffry","Jena","Jenifer","Jennie","Jennifer","Jennings","Jennyfer","Jensen","Jerad","Jerald","Jeramie","Jeramy","Jerel","Jeremie","Jeremy","Jermain","Jermaine","Jermey","Jerod","Jerome","Jeromy","Jerrell","Jerrod","Jerrold","Jerry","Jess","Jesse","Jessica","Jessie","Jessika","Jessy","Jessyca","Jesus","Jett","Jettie","Jevon","Jewel","Jewell","Jillian","Jimmie","Jimmy","Jo","Joan","Joana","Joanie","Joanne","Joannie","Joanny","Joany","Joaquin","Jocelyn","Jodie","Jody","Joe","Joel","Joelle","Joesph","Joey","Johan","Johann","Johanna","Johathan","John","Johnathan","Johnathon","Johnnie","Johnny","Johnpaul","Johnson","Jolie","Jon","Jonas","Jonatan","Jonathan","Jonathon","Jordan","Jordane","Jordi","Jordon","Jordy","Jordyn","Jorge","Jose","Josefa","Josefina","Joseph","Josephine","Josh","Joshua","Joshuah","Josiah","Josiane","Josianne","Josie","Josue","Jovan","Jovani","Jovanny","Jovany","Joy","Joyce","Juana","Juanita","Judah","Judd","Jude","Judge","Judson","Judy","Jules","Julia","Julian","Juliana","Julianne","Julie","Julien","Juliet","Julio","Julius","June","Junior","Junius","Justen","Justice","Justina","Justine","Juston","Justus","Justyn","Juvenal","Juwan","Kacey","Kaci","Kacie","Kade","Kaden","Kadin","Kaela","Kaelyn","Kaia","Kailee","Kailey","Kailyn","Kaitlin","Kaitlyn","Kale","Kaleb","Kaleigh","Kaley","Kali","Kallie","Kameron","Kamille","Kamren","Kamron","Kamryn","Kane","Kara","Kareem","Karelle","Karen","Kari","Kariane","Karianne","Karina","Karine","Karl","Karlee","Karley","Karli","Karlie","Karolann","Karson","Kasandra","Kasey","Kassandra","Katarina","Katelin","Katelyn","Katelynn","Katharina","Katherine","Katheryn","Kathleen","Kathlyn","Kathryn","Kathryne","Katlyn","Katlynn","Katrina","Katrine","Kattie","Kavon","Kay","Kaya","Kaycee","Kayden","Kayla","Kaylah","Kaylee","Kayleigh","Kayley","Kayli","Kaylie","Kaylin","Keagan","Keanu","Keara","Keaton","Keegan","Keeley","Keely","Keenan","Keira","Keith","Kellen","Kelley","Kelli","Kellie","Kelly","Kelsi","Kelsie","Kelton","Kelvin","Ken","Kendall","Kendra","Kendrick","Kenna","Kennedi","Kennedy","Kenneth","Kennith","Kenny","Kenton","Kenya","Kenyatta","Kenyon","Keon","Keshaun","Keshawn","Keven","Kevin","Kevon","Keyon","Keyshawn","Khalid","Khalil","Kian","Kiana","Kianna","Kiara","Kiarra","Kiel","Kiera","Kieran","Kiley","Kim","Kimberly","King","Kip","Kira","Kirk","Kirsten","Kirstin","Kitty","Kobe","Koby","Kody","Kolby","Kole","Korbin","Korey","Kory","Kraig","Kris","Krista","Kristian","Kristin","Kristina","Kristofer","Kristoffer","Kristopher","Kristy","Krystal","Krystel","Krystina","Kurt","Kurtis","Kyla","Kyle","Kylee","Kyleigh","Kyler","Kylie","Kyra","Lacey","Lacy","Ladarius","Lafayette","Laila","Laisha","Lamar","Lambert","Lamont","Lance","Landen","Lane","Laney","Larissa","Laron","Larry","Larue","Laura","Laurel","Lauren","Laurence","Lauretta","Lauriane","Laurianne","Laurie","Laurine","Laury","Lauryn","Lavada","Lavern","Laverna","Laverne","Lavina","Lavinia","Lavon","Lavonne","Lawrence","Lawson","Layla","Layne","Lazaro","Lea","Leann","Leanna","Leanne","Leatha","Leda","Lee","Leif","Leila","Leilani","Lela","Lelah","Leland","Lelia","Lempi","Lemuel","Lenna","Lennie","Lenny","Lenora","Lenore","Leo","Leola","Leon","Leonard","Leonardo","Leone","Leonel","Leonie","Leonor","Leonora","Leopold","Leopoldo","Leora","Lera","Lesley","Leslie","Lesly","Lessie","Lester","Leta","Letha","Letitia","Levi","Lew","Lewis","Lexi","Lexie","Lexus","Lia","Liam","Liana","Libbie","Libby","Lila","Lilian","Liliana","Liliane","Lilla","Lillian","Lilliana","Lillie","Lilly","Lily","Lilyan","Lina","Lincoln","Linda","Lindsay","Lindsey","Linnea","Linnie","Linwood","Lionel","Lisa","Lisandro","Lisette","Litzy","Liza","Lizeth","Lizzie","Llewellyn","Lloyd","Logan","Lois","Lola","Lolita","Loma","Lon","London","Lonie","Lonnie","Lonny","Lonzo","Lora","Loraine","Loren","Lorena","Lorenz","Lorenza","Lorenzo","Lori","Lorine","Lorna","Lottie","Lou","Louie","Louisa","Lourdes","Louvenia","Lowell","Loy","Loyal","Loyce","Lucas","Luciano","Lucie","Lucienne","Lucile","Lucinda","Lucio","Lucious","Lucius","Lucy","Ludie","Ludwig","Lue","Luella","Luigi","Luis","Luisa","Lukas","Lula","Lulu","Luna","Lupe","Lura","Lurline","Luther","Luz","Lyda","Lydia","Lyla","Lynn","Lyric","Lysanne","Mabel","Mabelle","Mable","Mac","Macey","Maci","Macie","Mack","Mackenzie","Macy","Madaline","Madalyn","Maddison","Madeline","Madelyn","Madelynn","Madge","Madie","Madilyn","Madisen","Madison","Madisyn","Madonna","Madyson","Mae","Maegan","Maeve","Mafalda","Magali","Magdalen","Magdalena","Maggie","Magnolia","Magnus","Maia","Maida","Maiya","Major","Makayla","Makenna","Makenzie","Malachi","Malcolm","Malika","Malinda","Mallie","Mallory","Malvina","Mandy","Manley","Manuel","Manuela","Mara","Marc","Marcel","Marcelina","Marcelino","Marcella","Marcelle","Marcellus","Marcelo","Marcia","Marco","Marcos","Marcus","Margaret","Margarete","Margarett","Margaretta","Margarette","Margarita","Marge","Margie","Margot","Margret","Marguerite","Maria","Mariah","Mariam","Marian","Mariana","Mariane","Marianna","Marianne","Mariano","Maribel","Marie","Mariela","Marielle","Marietta","Marilie","Marilou","Marilyne","Marina","Mario","Marion","Marisa","Marisol","Maritza","Marjolaine","Marjorie","Marjory","Mark","Markus","Marlee","Marlen","Marlene","Marley","Marlin","Marlon","Marques","Marquis","Marquise","Marshall","Marta","Martin","Martina","Martine","Marty","Marvin","Mary","Maryam","Maryjane","Maryse","Mason","Mateo","Mathew","Mathias","Mathilde","Matilda","Matilde","Matt","Matteo","Mattie","Maud","Maude","Maudie","Maureen","Maurice","Mauricio","Maurine","Maverick","Mavis","Max","Maxie","Maxime","Maximilian","Maximillia","Maximillian","Maximo","Maximus","Maxine","Maxwell","May","Maya","Maybell","Maybelle","Maye","Maymie","Maynard","Mayra","Mazie","Mckayla","Mckenna","Mckenzie","Meagan","Meaghan","Meda","Megane","Meggie","Meghan","Mekhi","Melany","Melba","Melisa","Melissa","Mellie","Melody","Melvin","Melvina","Melyna","Melyssa","Mercedes","Meredith","Merl","Merle","Merlin","Merritt","Mertie","Mervin","Meta","Mia","Micaela","Micah","Michael","Michaela","Michale","Micheal","Michel","Michele","Michelle","Miguel","Mikayla","Mike","Mikel","Milan","Miles","Milford","Miller","Millie","Milo","Milton","Mina","Minerva","Minnie","Miracle","Mireille","Mireya","Misael","Missouri","Misty","Mitchel","Mitchell","Mittie","Modesta","Modesto","Mohamed","Mohammad","Mohammed","Moises","Mollie","Molly","Mona","Monica","Monique","Monroe","Monserrat","Monserrate","Montana","Monte","Monty","Morgan","Moriah","Morris","Mortimer","Morton","Mose","Moses","Moshe","Mossie","Mozell","Mozelle","Muhammad","Muriel","Murl","Murphy","Murray","Mustafa","Mya","Myah","Mylene","Myles","Myra","Myriam","Myrl","Myrna","Myron","Myrtice","Myrtie","Myrtis","Myrtle","Nadia","Nakia","Name","Nannie","Naomi","Naomie","Napoleon","Narciso","Nash","Nasir","Nat","Natalia","Natalie","Natasha","Nathan","Nathanael","Nathanial","Nathaniel","Nathen","Nayeli","Neal","Ned","Nedra","Neha","Neil","Nelda","Nella","Nelle","Nellie","Nels","Nelson","Neoma","Nestor","Nettie","Neva","Newell","Newton","Nia","Nicholas","Nicholaus","Nichole","Nick","Nicklaus","Nickolas","Nico","Nicola","Nicolas","Nicole","Nicolette","Nigel","Nikita","Nikki","Nikko","Niko","Nikolas","Nils","Nina","Noah","Noble","Noe","Noel","Noelia","Noemi","Noemie","Noemy","Nola","Nolan","Nona","Nora","Norbert","Norberto","Norene","Norma","Norris","Norval","Norwood","Nova","Novella","Nya","Nyah","Nyasia","Obie","Oceane","Ocie","Octavia","Oda","Odell","Odessa","Odie","Ofelia","Okey","Ola","Olaf","Ole","Olen","Oleta","Olga","Olin","Oliver","Ollie","Oma","Omari","Omer","Ona","Onie","Opal","Ophelia","Ora","Oral","Oran","Oren","Orie","Orin","Orion","Orland","Orlando","Orlo","Orpha","Orrin","Orval","Orville","Osbaldo","Osborne","Oscar","Osvaldo","Oswald","Oswaldo","Otha","Otho","Otilia","Otis","Ottilie","Ottis","Otto","Ova","Owen","Ozella","Pablo","Paige","Palma","Pamela","Pansy","Paolo","Paris","Parker","Pascale","Pasquale","Pat","Patience","Patricia","Patrick","Patsy","Pattie","Paul","Paula","Pauline","Paxton","Payton","Pearl","Pearlie","Pearline","Pedro","Peggie","Penelope","Percival","Percy","Perry","Pete","Peter","Petra","Peyton","Philip","Phoebe","Phyllis","Pierce","Pierre","Pietro","Pink","Pinkie","Piper","Polly","Porter","Precious","Presley","Preston","Price","Prince","Princess","Priscilla","Providenci","Prudence","Queen","Queenie","Quentin","Quincy","Quinn","Quinten","Quinton","Rachael","Rachel","Rachelle","Rae","Raegan","Rafael","Rafaela","Raheem","Rahsaan","Rahul","Raina","Raleigh","Ralph","Ramiro","Ramon","Ramona","Randal","Randall","Randi","Randy","Ransom","Raoul","Raphael","Raphaelle","Raquel","Rashad","Rashawn","Rasheed","Raul","Raven","Ray","Raymond","Raymundo","Reagan","Reanna","Reba","Rebeca","Rebecca","Rebeka","Rebekah","Reece","Reed","Reese","Regan","Reggie","Reginald","Reid","Reilly","Reina","Reinhold","Remington","Rene","Renee","Ressie","Reta","Retha","Retta","Reuben","Reva","Rex","Rey","Reyes","Reymundo","Reyna","Reynold","Rhea","Rhett","Rhianna","Rhiannon","Rhoda","Ricardo","Richard","Richie","Richmond","Rick","Rickey","Rickie","Ricky","Rico","Rigoberto","Riley","Rita","River","Robb","Robbie","Robert","Roberta","Roberto","Robin","Robyn","Rocio","Rocky","Rod","Roderick","Rodger","Rodolfo","Rodrick","Rodrigo","Roel","Rogelio","Roger","Rogers","Rolando","Rollin","Roma","Romaine","Roman","Ron","Ronaldo","Ronny","Roosevelt","Rory","Rosa","Rosalee","Rosalia","Rosalind","Rosalinda","Rosalyn","Rosamond","Rosanna","Rosario","Roscoe","Rose","Rosella","Roselyn","Rosemarie","Rosemary","Rosendo","Rosetta","Rosie","Rosina","Roslyn","Ross","Rossie","Rowan","Rowena","Rowland","Roxane","Roxanne","Roy","Royal","Royce","Rozella","Ruben","Rubie","Ruby","Rubye","Rudolph","Rudy","Rupert","Russ","Russel","Russell","Rusty","Ruth","Ruthe","Ruthie","Ryan","Ryann","Ryder","Rylan","Rylee","Ryleigh","Ryley","Sabina","Sabrina","Sabryna","Sadie","Sadye","Sage","Saige","Sallie","Sally","Salma","Salvador","Salvatore","Sam","Samanta","Samantha","Samara","Samir","Sammie","Sammy","Samson","Sandra","Sandrine","Sandy","Sanford","Santa","Santiago","Santina","Santino","Santos","Sarah","Sarai","Sarina","Sasha","Saul","Savanah","Savanna","Savannah","Savion","Scarlett","Schuyler","Scot","Scottie","Scotty","Seamus","Sean","Sebastian","Sedrick","Selena","Selina","Selmer","Serena","Serenity","Seth","Shad","Shaina","Shakira","Shana","Shane","Shanel","Shanelle","Shania","Shanie","Shaniya","Shanna","Shannon","Shanny","Shanon","Shany","Sharon","Shaun","Shawn","Shawna","Shaylee","Shayna","Shayne","Shea","Sheila","Sheldon","Shemar","Sheridan","Sherman","Sherwood","Shirley","Shyann","Shyanne","Sibyl","Sid","Sidney","Sienna","Sierra","Sigmund","Sigrid","Sigurd","Silas","Sim","Simeon","Simone","Sincere","Sister","Skye","Skyla","Skylar","Sofia","Soledad","Solon","Sonia","Sonny","Sonya","Sophia","Sophie","Spencer","Stacey","Stacy","Stan","Stanford","Stanley","Stanton","Stefan","Stefanie","Stella","Stephan","Stephania","Stephanie","Stephany","Stephen","Stephon","Sterling","Steve","Stevie","Stewart","Stone","Stuart","Summer","Sunny","Susan","Susana","Susanna","Susie","Suzanne","Sven","Syble","Sydnee","Sydney","Sydni","Sydnie","Sylvan","Sylvester","Sylvia","Tabitha","Tad","Talia","Talon","Tamara","Tamia","Tania","Tanner","Tanya","Tara","Taryn","Tate","Tatum","Tatyana","Taurean","Tavares","Taya","Taylor","Teagan","Ted","Telly","Terence","Teresa","Terrance","Terrell","Terrence","Terrill","Terry","Tess","Tessie","Tevin","Thad","Thaddeus","Thalia","Thea","Thelma","Theo","Theodora","Theodore","Theresa","Therese","Theresia","Theron","Thomas","Thora","Thurman","Tia","Tiana","Tianna","Tiara","Tierra","Tiffany","Tillman","Timmothy","Timmy","Timothy","Tina","Tito","Titus","Tobin","Toby","Tod","Tom","Tomas","Tomasa","Tommie","Toney","Toni","Tony","Torey","Torrance","Torrey","Toy","Trace","Tracey","Tracy","Travis","Travon","Tre","Tremaine","Tremayne","Trent","Trenton","Tressa","Tressie","Treva","Trever","Trevion","Trevor","Trey","Trinity","Trisha","Tristian","Tristin","Triston","Troy","Trudie","Trycia","Trystan","Turner","Twila","Tyler","Tyra","Tyree","Tyreek","Tyrel","Tyrell","Tyrese","Tyrique","Tyshawn","Tyson","Ubaldo","Ulices","Ulises","Una","Unique","Urban","Uriah","Uriel","Ursula","Vada","Valentin","Valentina","Valentine","Valerie","Vallie","Van","Vance","Vanessa","Vaughn","Veda","Velda","Vella","Velma","Velva","Vena","Verda","Verdie","Vergie","Verla","Verlie","Vern","Verna","Verner","Vernice","Vernie","Vernon","Verona","Veronica","Vesta","Vicenta","Vicente","Vickie","Vicky","Victor","Victoria","Vida","Vidal","Vilma","Vince","Vincent","Vincenza","Vincenzo","Vinnie","Viola","Violet","Violette","Virgie","Virgil","Virginia","Virginie","Vita","Vito","Viva","Vivian","Viviane","Vivianne","Vivien","Vivienne","Vladimir","Wade","Waino","Waldo","Walker","Wallace","Walter","Walton","Wanda","Ward","Warren","Watson","Wava","Waylon","Wayne","Webster","Weldon","Wellington","Wendell","Wendy","Werner","Westley","Weston","Whitney","Wilber","Wilbert","Wilburn","Wiley","Wilford","Wilfred","Wilfredo","Wilfrid","Wilhelm","Wilhelmine","Will","Willa","Willard","William","Willie","Willis","Willow","Willy","Wilma","Wilmer","Wilson","Wilton","Winfield","Winifred","Winnifred","Winona","Winston","Woodrow","Wyatt","Wyman","Xander","Xavier","Xzavier","Yadira","Yasmeen","Yasmin","Yasmine","Yazmin","Yesenia","Yessenia","Yolanda","Yoshiko","Yvette","Yvonne","Zachariah","Zachary","Zachery","Zack","Zackary","Zackery","Zakary","Zander","Zane","Zaria","Zechariah","Zelda","Zella","Zelma","Zena","Zetta","Zion","Zita","Zoe","Zoey","Zoie","Zoila","Zola","Zora","Zula"],female:["Mary","Patricia","Linda","Barbara","Elizabeth","Jennifer","Maria","Susan","Margaret","Dorothy","Lisa","Nancy","Karen","Betty","Helen","Sandra","Donna","Carol","Ruth","Sharon","Michelle","Laura","Sarah","Kimberly","Deborah","Jessica","Shirley","Cynthia","Angela","Melissa","Brenda","Amy","Anna","Rebecca","Virginia","Kathleen","Pamela","Martha","Debra","Amanda","Stephanie","Carolyn","Christine","Marie","Janet","Catherine","Frances","Ann","Joyce","Diane","Alice","Julie","Heather","Teresa","Doris","Gloria","Evelyn","Jean","Cheryl","Mildred","Katherine","Joan","Ashley","Judith","Rose","Janice","Kelly","Nicole","Judy","Christina","Kathy","Theresa","Beverly","Denise","Tammy","Irene","Jane","Lori","Rachel","Marilyn","Andrea","Kathryn","Louise","Sara","Anne","Jacqueline","Wanda","Bonnie","Julia","Ruby","Lois","Tina","Phyllis","Norma","Paula","Diana","Annie","Lillian","Emily","Robin","Peggy","Crystal","Gladys","Rita","Dawn","Connie","Florence","Tracy","Edna","Tiffany","Carmen","Rosa","Cindy","Grace","Wendy","Victoria","Edith","Kim","Sherry","Sylvia","Josephine","Thelma","Shannon","Sheila","Ethel","Ellen","Elaine","Marjorie","Carrie","Charlotte","Monica","Esther","Pauline","Emma","Juanita","Anita","Rhonda","Hazel","Amber","Eva","Debbie","April","Leslie","Clara","Lucille","Jamie","Joanne","Eleanor","Valerie","Danielle","Megan","Alicia","Suzanne","Michele","Gail","Bertha","Darlene","Veronica","Jill","Erin","Geraldine","Lauren","Cathy","Joann","Lorraine","Lynn","Sally","Regina","Erica","Beatrice","Dolores","Bernice","Audrey","Yvonne","Annette","June","Samantha","Marion","Dana","Stacy","Ana","Renee","Ida","Vivian","Roberta","Holly","Brittany","Melanie","Loretta","Yolanda","Jeanette","Laurie","Katie","Kristen","Vanessa","Alma","Sue","Elsie","Beth","Jeanne","Vicki","Carla","Tara","Rosemary","Eileen","Terri","Gertrude","Lucy","Tonya","Ella","Stacey","Wilma","Gina","Kristin","Jessie","Natalie","Agnes","Vera","Willie","Charlene","Bessie","Delores","Melinda","Pearl","Arlene","Maureen","Colleen","Allison","Tamara","Joy","Georgia","Constance","Lillie","Claudia","Jackie","Marcia","Tanya","Nellie","Minnie","Marlene","Heidi","Glenda","Lydia","Viola","Courtney","Marian","Stella","Caroline","Dora","Jo","Vickie","Mattie","Terry","Maxine","Irma","Mabel","Marsha","Myrtle","Lena","Christy","Deanna","Patsy","Hilda","Gwendolyn","Jennie","Nora","Margie","Nina","Cassandra","Leah","Penny","Kay","Priscilla","Naomi","Carole","Brandy","Olga","Billie","Dianne","Tracey","Leona","Jenny","Felicia","Sonia","Miriam","Velma","Becky","Bobbie","Violet","Kristina","Toni","Misty","Mae","Shelly","Daisy","Ramona","Sherri","Erika","Katrina","Claire","Lindsey","Lindsay","Geneva","Guadalupe","Belinda","Margarita","Sheryl","Cora","Faye","Ada","Natasha","Sabrina","Isabel","Marguerite","Hattie","Harriet","Molly","Cecilia","Kristi","Brandi","Blanche","Sandy","Rosie","Joanna","Iris","Eunice","Angie","Inez","Lynda","Madeline","Amelia","Alberta","Genevieve","Monique","Jodi","Janie","Maggie","Kayla","Sonya","Jan","Lee","Kristine","Candace","Fannie","Maryann","Opal","Alison","Yvette","Melody","Luz","Susie","Olivia","Flora","Shelley","Kristy","Mamie","Lula","Lola","Verna","Beulah","Antoinette","Candice","Juana","Jeannette","Pam","Kelli","Hannah","Whitney","Bridget","Karla","Celia","Latoya","Patty","Shelia","Gayle","Della","Vicky","Lynne","Sheri","Marianne","Kara","Jacquelyn","Erma","Blanca","Myra","Leticia","Pat","Krista","Roxanne","Angelica","Johnnie","Robyn","Francis","Adrienne","Rosalie","Alexandra","Brooke","Bethany","Sadie","Bernadette","Traci","Jody","Kendra","Jasmine","Nichole","Rachael","Chelsea","Mable","Ernestine","Muriel","Marcella","Elena","Krystal","Angelina","Nadine","Kari","Estelle","Dianna","Paulette","Lora","Mona","Doreen","Rosemarie","Angel","Desiree","Antonia","Hope","Ginger","Janis","Betsy","Christie","Freda","Mercedes","Meredith","Lynette","Teri","Cristina","Eula","Leigh","Meghan","Sophia","Eloise","Rochelle","Gretchen","Cecelia","Raquel","Henrietta","Alyssa","Jana","Kelley","Gwen","Kerry","Jenna","Tricia","Laverne","Olive","Alexis","Tasha","Silvia","Elvira","Casey","Delia","Sophie","Kate","Patti","Lorena","Kellie","Sonja","Lila","Lana","Darla","May","Mindy","Essie","Mandy","Lorene","Elsa","Josefina","Jeannie","Miranda","Dixie","Lucia","Marta","Faith","Lela","Johanna","Shari","Camille","Tami","Shawna","Elisa","Ebony","Melba","Ora","Nettie","Tabitha","Ollie","Jaime","Winifred","Kristie"],male:["James","John","Robert","Michael","William","David","Richard","Charles","Joseph","Thomas","Christopher","Daniel","Paul","Mark","Donald","George","Kenneth","Steven","Edward","Brian","Ronald","Anthony","Kevin","Jason","Matthew","Gary","Timothy","Jose","Larry","Jeffrey","Frank","Scott","Eric","Stephen","Andrew","Raymond","Gregory","Joshua","Jerry","Dennis","Walter","Patrick","Peter","Harold","Douglas","Henry","Carl","Arthur","Ryan","Roger","Joe","Juan","Jack","Albert","Jonathan","Justin","Terry","Gerald","Keith","Samuel","Willie","Ralph","Lawrence","Nicholas","Roy","Benjamin","Bruce","Brandon","Adam","Harry","Fred","Wayne","Billy","Steve","Louis","Jeremy","Aaron","Randy","Howard","Eugene","Carlos","Russell","Bobby","Victor","Martin","Ernest","Phillip","Todd","Jesse","Craig","Alan","Shawn","Clarence","Sean","Philip","Chris","Johnny","Earl","Jimmy","Antonio","Danny","Bryan","Tony","Luis","Mike","Stanley","Leonard","Nathan","Dale","Manuel","Rodney","Curtis","Norman","Allen","Marvin","Vincent","Glenn","Jeffery","Travis","Jeff","Chad","Jacob","Lee","Melvin","Alfred","Kyle","Francis","Bradley","Jesus","Herbert","Frederick","Ray","Joel","Edwin","Don","Eddie","Ricky","Troy","Randall","Barry","Alexander","Bernard","Mario","Leroy","Francisco","Marcus","Micheal","Theodore","Clifford","Miguel","Oscar","Jay","Jim","Tom","Calvin","Alex","Jon","Ronnie","Bill","Lloyd","Tommy","Leon","Derek","Warren","Darrell","Jerome","Floyd","Leo","Alvin","Tim","Wesley","Gordon","Dean","Greg","Jorge","Dustin","Pedro","Derrick","Dan","Lewis","Zachary","Corey","Herman","Maurice","Vernon","Roberto","Clyde","Glen","Hector","Shane","Ricardo","Sam","Rick","Lester","Brent","Ramon","Charlie","Tyler","Gilbert","Gene","Marc","Reginald","Ruben","Brett","Angel","Nathaniel","Rafael","Leslie","Edgar","Milton","Raul","Ben","Chester","Cecil","Duane","Franklin","Andre","Elmer","Brad","Gabriel","Ron","Mitchell","Roland","Arnold","Harvey","Jared","Adrian","Karl","Cory","Claude","Erik","Darryl","Jamie","Neil","Jessie","Christian","Javier","Fernando","Clinton","Ted","Mathew","Tyrone","Darren","Lonnie","Lance","Cody","Julio","Kelly","Kurt","Allan","Nelson","Guy","Clayton","Hugh","Max","Dwayne","Dwight","Armando","Felix","Jimmie","Everett","Jordan","Ian","Wallace","Ken","Bob","Jaime","Casey","Alfredo","Alberto","Dave","Ivan","Johnnie","Sidney","Byron","Julian","Isaac","Morris","Clifton","Willard","Daryl","Ross","Virgil","Andy","Marshall","Salvador","Perry","Kirk","Sergio","Marion","Tracy","Seth","Kent","Terrance","Rene","Eduardo","Terrence","Enrique","Freddie","Wade","Austin","Stuart","Fredrick","Arturo","Alejandro","Jackie","Joey","Nick","Luther","Wendell","Jeremiah","Evan","Julius","Dana","Donnie","Otis","Shannon","Trevor","Oliver","Luke","Homer","Gerard","Doug","Kenny","Hubert","Angelo","Shaun","Lyle","Matt","Lynn","Alfonso","Orlando","Rex","Carlton","Ernesto","Cameron","Neal","Pablo","Lorenzo","Omar","Wilbur","Blake","Grant","Horace","Roderick","Kerry","Abraham","Willis","Rickey","Jean","Ira","Andres","Cesar","Johnathan","Malcolm","Rudolph","Damon","Kelvin","Rudy","Preston","Alton","Archie","Marco","Wm","Pete","Randolph","Garry","Geoffrey","Jonathon","Felipe","Bennie","Gerardo","Ed","Dominic","Robin","Loren","Delbert","Colin","Guillermo","Earnest","Lucas","Benny","Noel","Spencer","Rodolfo","Myron","Edmund","Garrett","Salvatore","Cedric","Lowell","Gregg","Sherman","Wilson","Devin","Sylvester","Kim","Roosevelt","Israel","Jermaine","Forrest","Wilbert","Leland","Simon","Guadalupe","Clark","Irving","Carroll","Bryant","Owen","Rufus","Woodrow","Sammy","Kristopher","Mack","Levi","Marcos","Gustavo","Jake","Lionel","Marty","Taylor","Ellis","Dallas","Gilberto","Clint","Nicolas","Laurence","Ismael","Orville","Drew","Jody","Ervin","Dewey","Al","Wilfred","Josh","Hugo","Ignacio","Caleb","Tomas","Sheldon","Erick","Frankie","Stewart","Doyle","Darrel","Rogelio","Terence","Santiago","Alonzo","Elias","Bert","Elbert","Ramiro","Conrad","Pat","Noah","Grady","Phil","Cornelius","Lamar","Rolando","Clay","Percy","Dexter","Bradford","Merle","Darin","Amos","Terrell","Moses","Irvin","Saul","Roman","Darnell","Randal","Tommie","Timmy","Darrin","Winston","Brendan","Toby","Van","Abel","Dominick","Boyd","Courtney","Jan","Emilio","Elijah","Cary","Domingo","Santos","Aubrey","Emmett","Marlon","Emanuel","Jerald","Edmond"]},gender:["Agender","Androgyne","Androgynous","Bigender","Cis female","Cis male","Cis man","Cis woman","Cis","Cisgender female","Cisgender male","Cisgender man","Cisgender woman","Cisgender","Demi-boy","Demi-girl","Demi-man","Demi-woman","Demiflux","Demigender","F2M","FTM","Female to male trans man","Female to male transgender man","Female to male transsexual man","Female to male","Gender fluid","Gender neutral","Gender nonconforming","Gender questioning","Gender variant","Genderflux","Genderqueer","Hermaphrodite","Intersex man","Intersex person","Intersex woman","Intersex","M2F","MTF","Male to female trans woman","Male to female transgender woman","Male to female transsexual woman","Male to female","Man","Multigender","Neither","Neutrois","Non-binary","Omnigender","Other","Pangender","Polygender","T* man","T* woman","Trans female","Trans male","Trans man","Trans person","Trans woman","Trans","Transsexual female","Transsexual male","Transsexual man","Transsexual person","Transsexual woman","Transsexual","Transgender female","Transgender person","Transmasculine","Trigender","Two* person","Two-spirit person","Two-spirit","Woman","Xenogender"],job_area:["Solutions","Program","Brand","Security","Research","Marketing","Directives","Implementation","Integration","Functionality","Response","Paradigm","Tactics","Identity","Markets","Group","Division","Applications","Optimization","Operations","Infrastructure","Intranet","Communications","Web","Branding","Quality","Assurance","Mobility","Accounts","Data","Creative","Configuration","Accountability","Interactions","Factors","Usability","Metrics"],job_descriptor:["Lead","Senior","Direct","Corporate","Dynamic","Future","Product","National","Regional","District","Central","Global","Customer","Investor","International","Legacy","Forward","Internal","Human","Chief","Principal"],job_title_pattern:["{{person.jobDescriptor}} {{person.jobArea}} {{person.jobType}}"],job_type:["Supervisor","Associate","Executive","Liaison","Officer","Manager","Engineer","Specialist","Director","Coordinator","Administrator","Architect","Analyst","Designer","Planner","Orchestrator","Technician","Developer","Producer","Consultant","Assistant","Facilitator","Agent","Representative","Strategist"],last_name:{generic:["Abbott","Abernathy","Abshire","Adams","Altenwerth","Anderson","Ankunding","Armstrong","Auer","Aufderhar","Bahringer","Bailey","Balistreri","Barrows","Bartell","Bartoletti","Barton","Bashirian","Batz","Bauch","Baumbach","Bayer","Beahan","Beatty","Bechtelar","Becker","Bednar","Beer","Beier","Berge","Bergnaum","Bergstrom","Bernhard","Bernier","Bins","Blanda","Blick","Block","Bode","Boehm","Bogan","Bogisich","Borer","Bosco","Botsford","Boyer","Boyle","Bradtke","Brakus","Braun","Breitenberg","Brekke","Brown","Bruen","Buckridge","Carroll","Carter","Cartwright","Casper","Cassin","Champlin","Christiansen","Cole","Collier","Collins","Conn","Connelly","Conroy","Considine","Corkery","Cormier","Corwin","Cremin","Crist","Crona","Cronin","Crooks","Cruickshank","Cummerata","Cummings","Dach","D'Amore","Daniel","Dare","Daugherty","Davis","Deckow","Denesik","Dibbert","Dickens","Dicki","Dickinson","Dietrich","Donnelly","Dooley","Douglas","Doyle","DuBuque","Durgan","Ebert","Effertz","Emard","Emmerich","Erdman","Ernser","Fadel","Fahey","Farrell","Fay","Feeney","Feest","Feil","Ferry","Fisher","Flatley","Frami","Franecki","Franey","Friesen","Fritsch","Funk","Gerhold","Gerlach","Gibson","Gislason","Gleason","Gleichner","Glover","Goldner","Goodwin","Gorczany","Gottlieb","Goyette","Grady","Graham","Grant","Green","Greenfelder","Greenholt","Grimes","Gulgowski","Gusikowski","Gutkowski","Gutmann","Haag","Hackett","Hagenes","Hahn","Haley","Halvorson","Hamill","Hammes","Hand","Hane","Hansen","Harber","Harris","Hartmann","Harvey","Hauck","Hayes","Heaney","Heathcote","Hegmann","Heidenreich","Heller","Herman","Hermann","Hermiston","Herzog","Hessel","Hettinger","Hickle","Hilll","Hills","Hilpert","Hintz","Hirthe","Hodkiewicz","Hoeger","Homenick","Hoppe","Howe","Howell","Hudson","Huel","Huels","Hyatt","Jacobi","Jacobs","Jacobson","Jakubowski","Jaskolski","Jast","Jenkins","Jerde","Johns","Johnson","Johnston","Jones","Kassulke","Kautzer","Keebler","Keeling","Kemmer","Kerluke","Kertzmann","Kessler","Kiehn","Kihn","Kilback","King","Kirlin","Klein","Kling","Klocko","Koch","Koelpin","Koepp","Kohler","Konopelski","Koss","Kovacek","Kozey","Krajcik","Kreiger","Kris","Kshlerin","Kub","Kuhic","Kuhlman","Kuhn","Kulas","Kunde","Kunze","Kuphal","Kutch","Kuvalis","Labadie","Lakin","Lang","Langosh","Langworth","Larkin","Larson","Leannon","Lebsack","Ledner","Leffler","Legros","Lehner","Lemke","Lesch","Leuschke","Lind","Lindgren","Littel","Little","Lockman","Lowe","Lubowitz","Lueilwitz","Luettgen","Lynch","Macejkovic","MacGyver","Maggio","Mann","Mante","Marks","Marquardt","Marvin","Mayer","Mayert","McClure","McCullough","McDermott","McGlynn","McKenzie","McLaughlin","Medhurst","Mertz","Metz","Miller","Mills","Mitchell","Moen","Mohr","Monahan","Moore","Morar","Morissette","Mosciski","Mraz","Mueller","Muller","Murazik","Murphy","Murray","Nader","Nicolas","Nienow","Nikolaus","Nitzsche","Nolan","Oberbrunner","O'Connell","O'Conner","O'Hara","O'Keefe","O'Kon","Okuneva","Olson","Ondricka","O'Reilly","Orn","Ortiz","Osinski","Pacocha","Padberg","Pagac","Parisian","Parker","Paucek","Pfannerstill","Pfeffer","Pollich","Pouros","Powlowski","Predovic","Price","Prohaska","Prosacco","Purdy","Quigley","Quitzon","Rath","Ratke","Rau","Raynor","Reichel","Reichert","Reilly","Reinger","Rempel","Renner","Reynolds","Rice","Rippin","Ritchie","Robel","Roberts","Rodriguez","Rogahn","Rohan","Rolfson","Romaguera","Roob","Rosenbaum","Rowe","Ruecker","Runolfsdottir","Runolfsson","Runte","Russel","Rutherford","Ryan","Sanford","Satterfield","Sauer","Sawayn","Schaden","Schaefer","Schamberger","Schiller","Schimmel","Schinner","Schmeler","Schmidt","Schmitt","Schneider","Schoen","Schowalter","Schroeder","Schulist","Schultz","Schumm","Schuppe","Schuster","Senger","Shanahan","Shields","Simonis","Sipes","Skiles","Smith","Smitham","Spencer","Spinka","Sporer","Stamm","Stanton","Stark","Stehr","Steuber","Stiedemann","Stokes","Stoltenberg","Stracke","Streich","Stroman","Strosin","Swaniawski","Swift","Terry","Thiel","Thompson","Tillman","Torp","Torphy","Towne","Toy","Trantow","Tremblay","Treutel","Tromp","Turcotte","Turner","Ullrich","Upton","Vandervort","Veum","Volkman","Von","VonRueden","Waelchi","Walker","Walsh","Walter","Ward","Waters","Watsica","Weber","Wehner","Weimann","Weissnat","Welch","West","White","Wiegand","Wilderman","Wilkinson","Will","Williamson","Willms","Windler","Wintheiser","Wisoky","Wisozk","Witting","Wiza","Wolf","Wolff","Wuckert","Wunsch","Wyman","Yost","Yundt","Zboncak","Zemlak","Ziemann","Zieme","Zulauf"]},last_name_pattern:{generic:[{value:"{{person.last_name.generic}}",weight:95},{value:"{{person.last_name.generic}}-{{person.last_name.generic}}",weight:5}]},middle_name:{generic:["Addison","Alex","Anderson","Angel","Arden","August","Austin","Avery","Bailey","Billie","Blake","Bowie","Brooklyn","Cameron","Charlie","Corey","Dakota","Drew","Elliott","Ellis","Emerson","Finley","Gray","Greer","Harper","Hayden","Jaden","James","Jamie","Jordan","Jules","Kai","Kendall","Kennedy","Kyle","Leslie","Logan","London","Marlowe","Micah","Nico","Noah","North","Parker","Phoenix","Quinn","Reagan","Reese","Reign","Riley","River","Robin","Rory","Rowan","Ryan","Sage","Sasha","Sawyer","Shawn","Shiloh","Skyler","Taylor"],female:["Abigail","Adele","Alex","Alice","Alisha","Amber","Amelia","Amora","Anaïs","Angelou","Anika","Anise","Annabel","Anne","Aphrodite","Aretha","Arya","Ashton","Aster","Audrey","Avery","Bailee","Bay","Belle","Beth","Billie","Blair","Blaise","Blake","Blanche","Blue","Bree","Brielle","Brienne","Brooke","Caleen","Candice","Caprice","Carelyn","Caylen","Celine","Cerise","Cia","Claire","Claudia","Clementine","Coral","Coraline","Dahlia","Dakota","Dawn","Della","Demi","Denise","Denver","Devine","Devon","Diana","Dylan","Ebony","Eden","Eleanor","Elein","Elizabeth","Ellen","Elodie","Eloise","Ember","Emma","Erin","Eyre","Faith","Farrah","Fawn","Fayre","Fern","France","Francis","Frida","Genisis","Georgia","Grace","Gwen","Harley","Harper","Hazel","Helen","Hippolyta","Holly","Hope","Imani","Iowa","Ireland","Irene","Iris","Isa","Isla","Ivy","Jade","Jane","Jazz","Jean","Jess","Jett","Jo","Joan","Jolie","Jordan","Josie","Journey","Joy","Jules","Julien","Juliet","Juniper","Justice","Kali","Karma","Kat","Kate","Kennedy","Keva","Kylie","Lake","Lane","Lark","Layla","Lee","Leigh","Leona","Lexi","London","Lou","Louise","Love","Luna","Lux","Lynn","Lyric","Maddie","Mae","Marie","Matilda","Maude","Maybel","Meadow","Medusa","Mercy","Michelle","Mirabel","Monroe","Morgan","Nalia","Naomi","Nova","Olive","Paige","Parker","Pax","Pearl","Penelope","Phoenix","Quinn","Rae","Rain","Raven","Ray","Raye","Rebel","Reese","Reeve","Regan","Riley","River","Robin","Rory","Rose","Royal","Ruth","Rylie","Sage","Sam","Saturn","Scout","Serena","Sky","Skylar","Sofia","Sophia","Storm","Sue","Suzanne","Sydney","Taylen","Taylor","Teagan","Tempest","Tenley","Thea","Trinity","Valerie","Venus","Vera","Violet","Willow","Winter","Xena","Zaylee","Zion","Zoe"],male:["Ace","Aiden","Alexander","Ander","Anthony","Asher","August","Aziel","Bear","Beckham","Benjamin","Buddy","Calvin","Carter","Charles","Christopher","Clyde","Cooper","Daniel","David","Dior","Dylan","Elijah","Ellis","Emerson","Ethan","Ezra","Fletcher","Flynn","Gabriel","Grayson","Gus","Hank","Harrison","Hendrix","Henry","Houston","Hudson","Hugh","Isaac","Jack","Jackson","Jacob","Jakobe","James","Jaxon","Jaxtyn","Jayden","John","Joseph","Josiah","Jude","Julian","Karsyn","Kenji","Kobe","Kylo","Lennon","Leo","Levi","Liam","Lincoln","Logan","Louis","Lucas","Lucky","Luke","Mason","Mateo","Matthew","Maverick","Michael","Monroe","Nixon","Ocean","Oliver","Otis","Otto","Owen","Ozzy","Parker","Rocky","Samuel","Sebastian","Sonny","Teddy","Theo","Theodore","Thomas","Truett","Walter","Warren","Watson","William","Wison","Wyatt","Ziggy","Zyair"]},name:[{value:"{{person.firstName}} {{person.lastName}}",weight:49},{value:"{{person.prefix}} {{person.firstName}} {{person.lastName}}",weight:7},{value:"{{person.firstName}} {{person.lastName}} {{person.suffix}}",weight:7},{value:"{{person.prefix}} {{person.firstName}} {{person.lastName}} {{person.suffix}}",weight:1}],prefix:{generic:["Dr.","Miss","Mr.","Mrs.","Ms."],female:["Mrs.","Ms.","Miss","Dr."],male:["Mr.","Dr."]},sex:["female","male"],suffix:["Jr.","Sr.","I","II","III","IV","V","MD","DDS","PhD","DVM"],western_zodiac_sign:["Aquarius","Pisces","Aries","Taurus","Gemini","Cancer","Leo","Virgo","Libra","Scorpio","Sagittarius","Capricorn"]},phone_number:{format:{human:["!##-!##-####","(!##) !##-####","1-!##-!##-####","!##.!##.####","!##-!##-#### x###","(!##) !##-#### x###","1-!##-!##-#### x###","!##.!##.#### x###","!##-!##-#### x####","(!##) !##-#### x####","1-!##-!##-#### x####","!##.!##.#### x####","!##-!##-#### x#####","(!##) !##-#### x#####","1-!##-!##-#### x#####","!##.!##.#### x#####"],international:["+1!##!######"],national:["(!##) !##-####"]}},science:{chemical_element:[{symbol:"H",name:"Hydrogen",atomicNumber:1},{symbol:"He",name:"Helium",atomicNumber:2},{symbol:"Li",name:"Lithium",atomicNumber:3},{symbol:"Be",name:"Beryllium",atomicNumber:4},{symbol:"B",name:"Boron",atomicNumber:5},{symbol:"C",name:"Carbon",atomicNumber:6},{symbol:"N",name:"Nitrogen",atomicNumber:7},{symbol:"O",name:"Oxygen",atomicNumber:8},{symbol:"F",name:"Fluorine",atomicNumber:9},{symbol:"Ne",name:"Neon",atomicNumber:10},{symbol:"Na",name:"Sodium",atomicNumber:11},{symbol:"Mg",name:"Magnesium",atomicNumber:12},{symbol:"Al",name:"Aluminium",atomicNumber:13},{symbol:"Si",name:"Silicon",atomicNumber:14},{symbol:"P",name:"Phosphorus",atomicNumber:15},{symbol:"S",name:"Sulfur",atomicNumber:16},{symbol:"Cl",name:"Chlorine",atomicNumber:17},{symbol:"Ar",name:"Argon",atomicNumber:18},{symbol:"K",name:"Potassium",atomicNumber:19},{symbol:"Ca",name:"Calcium",atomicNumber:20},{symbol:"Sc",name:"Scandium",atomicNumber:21},{symbol:"Ti",name:"Titanium",atomicNumber:22},{symbol:"V",name:"Vanadium",atomicNumber:23},{symbol:"Cr",name:"Chromium",atomicNumber:24},{symbol:"Mn",name:"Manganese",atomicNumber:25},{symbol:"Fe",name:"Iron",atomicNumber:26},{symbol:"Co",name:"Cobalt",atomicNumber:27},{symbol:"Ni",name:"Nickel",atomicNumber:28},{symbol:"Cu",name:"Copper",atomicNumber:29},{symbol:"Zn",name:"Zinc",atomicNumber:30},{symbol:"Ga",name:"Gallium",atomicNumber:31},{symbol:"Ge",name:"Germanium",atomicNumber:32},{symbol:"As",name:"Arsenic",atomicNumber:33},{symbol:"Se",name:"Selenium",atomicNumber:34},{symbol:"Br",name:"Bromine",atomicNumber:35},{symbol:"Kr",name:"Krypton",atomicNumber:36},{symbol:"Rb",name:"Rubidium",atomicNumber:37},{symbol:"Sr",name:"Strontium",atomicNumber:38},{symbol:"Y",name:"Yttrium",atomicNumber:39},{symbol:"Zr",name:"Zirconium",atomicNumber:40},{symbol:"Nb",name:"Niobium",atomicNumber:41},{symbol:"Mo",name:"Molybdenum",atomicNumber:42},{symbol:"Tc",name:"Technetium",atomicNumber:43},{symbol:"Ru",name:"Ruthenium",atomicNumber:44},{symbol:"Rh",name:"Rhodium",atomicNumber:45},{symbol:"Pd",name:"Palladium",atomicNumber:46},{symbol:"Ag",name:"Silver",atomicNumber:47},{symbol:"Cd",name:"Cadmium",atomicNumber:48},{symbol:"In",name:"Indium",atomicNumber:49},{symbol:"Sn",name:"Tin",atomicNumber:50},{symbol:"Sb",name:"Antimony",atomicNumber:51},{symbol:"Te",name:"Tellurium",atomicNumber:52},{symbol:"I",name:"Iodine",atomicNumber:53},{symbol:"Xe",name:"Xenon",atomicNumber:54},{symbol:"Cs",name:"Caesium",atomicNumber:55},{symbol:"Ba",name:"Barium",atomicNumber:56},{symbol:"La",name:"Lanthanum",atomicNumber:57},{symbol:"Ce",name:"Cerium",atomicNumber:58},{symbol:"Pr",name:"Praseodymium",atomicNumber:59},{symbol:"Nd",name:"Neodymium",atomicNumber:60},{symbol:"Pm",name:"Promethium",atomicNumber:61},{symbol:"Sm",name:"Samarium",atomicNumber:62},{symbol:"Eu",name:"Europium",atomicNumber:63},{symbol:"Gd",name:"Gadolinium",atomicNumber:64},{symbol:"Tb",name:"Terbium",atomicNumber:65},{symbol:"Dy",name:"Dysprosium",atomicNumber:66},{symbol:"Ho",name:"Holmium",atomicNumber:67},{symbol:"Er",name:"Erbium",atomicNumber:68},{symbol:"Tm",name:"Thulium",atomicNumber:69},{symbol:"Yb",name:"Ytterbium",atomicNumber:70},{symbol:"Lu",name:"Lutetium",atomicNumber:71},{symbol:"Hf",name:"Hafnium",atomicNumber:72},{symbol:"Ta",name:"Tantalum",atomicNumber:73},{symbol:"W",name:"Tungsten",atomicNumber:74},{symbol:"Re",name:"Rhenium",atomicNumber:75},{symbol:"Os",name:"Osmium",atomicNumber:76},{symbol:"Ir",name:"Iridium",atomicNumber:77},{symbol:"Pt",name:"Platinum",atomicNumber:78},{symbol:"Au",name:"Gold",atomicNumber:79},{symbol:"Hg",name:"Mercury",atomicNumber:80},{symbol:"Tl",name:"Thallium",atomicNumber:81},{symbol:"Pb",name:"Lead",atomicNumber:82},{symbol:"Bi",name:"Bismuth",atomicNumber:83},{symbol:"Po",name:"Polonium",atomicNumber:84},{symbol:"At",name:"Astatine",atomicNumber:85},{symbol:"Rn",name:"Radon",atomicNumber:86},{symbol:"Fr",name:"Francium",atomicNumber:87},{symbol:"Ra",name:"Radium",atomicNumber:88},{symbol:"Ac",name:"Actinium",atomicNumber:89},{symbol:"Th",name:"Thorium",atomicNumber:90},{symbol:"Pa",name:"Protactinium",atomicNumber:91},{symbol:"U",name:"Uranium",atomicNumber:92},{symbol:"Np",name:"Neptunium",atomicNumber:93},{symbol:"Pu",name:"Plutonium",atomicNumber:94},{symbol:"Am",name:"Americium",atomicNumber:95},{symbol:"Cm",name:"Curium",atomicNumber:96},{symbol:"Bk",name:"Berkelium",atomicNumber:97},{symbol:"Cf",name:"Californium",atomicNumber:98},{symbol:"Es",name:"Einsteinium",atomicNumber:99},{symbol:"Fm",name:"Fermium",atomicNumber:100},{symbol:"Md",name:"Mendelevium",atomicNumber:101},{symbol:"No",name:"Nobelium",atomicNumber:102},{symbol:"Lr",name:"Lawrencium",atomicNumber:103},{symbol:"Rf",name:"Rutherfordium",atomicNumber:104},{symbol:"Db",name:"Dubnium",atomicNumber:105},{symbol:"Sg",name:"Seaborgium",atomicNumber:106},{symbol:"Bh",name:"Bohrium",atomicNumber:107},{symbol:"Hs",name:"Hassium",atomicNumber:108},{symbol:"Mt",name:"Meitnerium",atomicNumber:109},{symbol:"Ds",name:"Darmstadtium",atomicNumber:110},{symbol:"Rg",name:"Roentgenium",atomicNumber:111},{symbol:"Cn",name:"Copernicium",atomicNumber:112},{symbol:"Nh",name:"Nihonium",atomicNumber:113},{symbol:"Fl",name:"Flerovium",atomicNumber:114},{symbol:"Mc",name:"Moscovium",atomicNumber:115},{symbol:"Lv",name:"Livermorium",atomicNumber:116},{symbol:"Ts",name:"Tennessine",atomicNumber:117},{symbol:"Og",name:"Oganesson",atomicNumber:118}],unit:[{name:"meter",symbol:"m"},{name:"second",symbol:"s"},{name:"mole",symbol:"mol"},{name:"ampere",symbol:"A"},{name:"kelvin",symbol:"K"},{name:"candela",symbol:"cd"},{name:"kilogram",symbol:"kg"},{name:"radian",symbol:"rad"},{name:"hertz",symbol:"Hz"},{name:"newton",symbol:"N"},{name:"pascal",symbol:"Pa"},{name:"joule",symbol:"J"},{name:"watt",symbol:"W"},{name:"coulomb",symbol:"C"},{name:"volt",symbol:"V"},{name:"ohm",symbol:"Ω"},{name:"tesla",symbol:"T"},{name:"degree Celsius",symbol:"°C"},{name:"lumen",symbol:"lm"},{name:"becquerel",symbol:"Bq"},{name:"gray",symbol:"Gy"},{name:"sievert",symbol:"Sv"},{name:"steradian",symbol:"sr"},{name:"farad",symbol:"F"},{name:"siemens",symbol:"S"},{name:"weber",symbol:"Wb"},{name:"henry",symbol:"H"},{name:"lux",symbol:"lx"},{name:"katal",symbol:"kat"}]},team:{creature:["ants","bats","bears","bees","birds","buffalo","cats","chickens","cattle","dogs","dolphins","ducks","elephants","fishes","foxes","frogs","geese","goats","horses","kangaroos","lions","monkeys","owls","oxen","penguins","people","pigs","rabbits","sheep","tigers","whales","wolves","zebras","banshees","crows","black cats","chimeras","ghosts","conspirators","dragons","dwarves","elves","enchanters","exorcists","sons","foes","giants","gnomes","goblins","gooses","griffins","lycanthropes","nemesis","ogres","oracles","prophets","sorcerors","spiders","spirits","vampires","warlocks","vixens","werewolves","witches","worshipers","zombies","druids"],name:["{{location.state}} {{team.creature}}"]},vehicle:{bicycle_type:["Adventure Road Bicycle","BMX Bicycle","City Bicycle","Cruiser Bicycle","Cyclocross Bicycle","Dual-Sport Bicycle","Fitness Bicycle","Flat-Foot Comfort Bicycle","Folding Bicycle","Hybrid Bicycle","Mountain Bicycle","Recumbent Bicycle","Road Bicycle","Tandem Bicycle","Touring Bicycle","Track/Fixed-Gear Bicycle","Triathlon/Time Trial Bicycle","Tricycle"],fuel:["Diesel","Electric","Gasoline","Hybrid"],manufacturer:["Aston Martin","Audi","BMW","Bentley","Bugatti","Cadillac","Chevrolet","Chrysler","Dodge","Ferrari","Fiat","Ford","Honda","Hyundai","Jaguar","Jeep","Kia","Lamborghini","Land Rover","Maserati","Mazda","Mercedes Benz","Mini","Nissan","Polestar","Porsche","Rolls Royce","Smart","Tesla","Toyota","Volkswagen","Volvo"],model:["1","2","911","A4","A8","ATS","Accord","Alpine","Altima","Aventador","Beetle","CTS","CX-9","Camaro","Camry","Challenger","Charger","Civic","Colorado","Corvette","Countach","Cruze","Durango","El Camino","Element","Escalade","Expedition","Explorer","F-150","Fiesta","Focus","Fortwo","Golf","Grand Caravan","Grand Cherokee","Impala","Jetta","Land Cruiser","LeBaron","Malibu","Mercielago","Model 3","Model S","Model T","Model X","Model Y","Mustang","PT Cruiser","Prius","Ranchero","Roadster","Sentra","Silverado","Spyder","Taurus","V90","Volt","Wrangler","XC90","XTS"],type:["Cargo Van","Convertible","Coupe","Crew Cab Pickup","Extended Cab Pickup","Hatchback","Minivan","Passenger Van","SUV","Sedan","Wagon"]},word:{adjective:["abandoned","able","acceptable","acclaimed","accomplished","accurate","aching","acidic","actual","admired","adolescent","advanced","affectionate","afraid","aged","aggravating","aggressive","agile","agitated","agreeable","ajar","alarmed","alert","alienated","alive","all","altruistic","amazing","ambitious","ample","amused","angelic","anguished","animated","annual","another","antique","any","apprehensive","appropriate","apt","arid","artistic","ashamed","assured","astonishing","athletic","austere","authentic","authorized","avaricious","average","aware","awesome","awful","babyish","back","bad","baggy","bare","basic","beloved","beneficial","best","better","big","biodegradable","bitter","black","black-and-white","blank","blaring","bleak","blind","blond","blue","blushing","bogus","boiling","bony","boring","bossy","both","bouncy","bowed","brave","breakable","bright","brilliant","brisk","broken","brown","bruised","bulky","burdensome","burly","bustling","busy","buttery","buzzing","calculating","candid","carefree","careless","caring","cautious","cavernous","celebrated","charming","cheap","cheerful","chilly","chubby","circular","classic","clean","clear","clear-cut","close","closed","cloudy","clueless","clumsy","cluttered","coarse","colorful","colorless","colossal","comfortable","common","compassionate","competent","complete","complicated","concerned","concrete","confused","considerate","content","cool","cooperative","coordinated","corny","corrupt","courageous","courteous","crafty","crazy","creamy","creative","criminal","critical","crooked","crowded","cruel","crushing","cuddly","cultivated","cumbersome","curly","cute","damaged","damp","dapper","dark","darling","dazzling","dead","deadly","deafening","dearest","decent","decisive","deep","defenseless","defensive","deficient","definite","definitive","delectable","delicious","delirious","dense","dental","dependable","dependent","descriptive","deserted","determined","devoted","different","difficult","digital","diligent","dim","direct","dirty","discrete","disloyal","dismal","distant","distinct","distorted","doting","downright","drab","dramatic","dreary","dual","dull","dutiful","each","early","earnest","easy","ecstatic","edible","educated","elastic","elderly","electric","elegant","elementary","elliptical","eminent","emotional","empty","enchanted","enchanting","energetic","enlightened","enraged","entire","equatorial","essential","esteemed","ethical","everlasting","every","evil","exalted","excellent","excitable","excited","exhausted","exotic","expensive","experienced","expert","extra-large","extroverted","failing","faint","fair","fake","familiar","fantastic","far","far-flung","far-off","faraway","fat","fatal","fatherly","favorable","favorite","fearless","feline","filthy","fine","finished","firm","first","firsthand","fixed","flashy","flawed","flawless","flickering","flimsy","flowery","fluffy","flustered","focused","fond","foolhardy","foolish","forceful","formal","forsaken","fortunate","fragrant","frail","frank","free","french","frequent","friendly","frightened","frilly","frivolous","frizzy","front","frozen","frugal","fruitful","functional","funny","fussy","fuzzy","gaseous","general","gentle","genuine","gifted","gigantic","giving","glaring","glass","gleaming","glittering","gloomy","glorious","glossy","glum","golden","good","good-natured","gorgeous","graceful","gracious","grandiose","granular","grave","gray","great","greedy","grim","grimy","gripping","grizzled","grouchy","grounded","growing","grown","grubby","gruesome","grumpy","guilty","gullible","gummy","hairy","handsome","handy","happy","happy-go-lucky","hard-to-find","harmful","hasty","hateful","haunting","heartfelt","heavenly","heavy","hefty","helpful","helpless","hidden","hoarse","hollow","homely","honorable","honored","hopeful","hospitable","hot","huge","humble","humiliating","hungry","hurtful","husky","icy","ideal","idealistic","idolized","ignorant","ill","ill-fated","illiterate","illustrious","imaginary","imaginative","immaculate","immediate","immense","impartial","impassioned","impeccable","impish","impolite","important","impossible","impractical","impressionable","impressive","improbable","impure","inborn","incomparable","incomplete","inconsequential","indelible","indolent","inexperienced","infamous","infatuated","inferior","infinite","informal","innocent","insecure","insidious","insignificant","insistent","instructive","intelligent","intent","interesting","internal","international","intrepid","ironclad","irresponsible","jagged","jam-packed","jaunty","jealous","jittery","joyful","joyous","jubilant","judicious","juicy","jumbo","junior","juvenile","kaleidoscopic","key","knotty","knowledgeable","known","kooky","kosher","lanky","last","lasting","late","lavish","lawful","lazy","leading","lean","left","legal","light","lighthearted","likable","likely","limited","limp","limping","linear","lined","liquid","little","live","lively","livid","lone","lonely","long","long-term","lost","lovable","lovely","low","lucky","lumbering","lumpy","lustrous","mad","made-up","magnificent","majestic","major","male","mammoth","married","marvelous","massive","mature","meager","mealy","mean","measly","meaty","mediocre","medium","memorable","menacing","merry","messy","metallic","mild","milky","mindless","minor","minty","miserable","miserly","misguided","mixed","moist","monstrous","monthly","monumental","moral","motionless","muddy","muffled","multicolored","mundane","murky","mushy","musty","muted","mysterious","narrow","natural","naughty","nautical","near","neat","necessary","needy","negative","neglected","negligible","neighboring","nervous","new","next","nice","nifty","nimble","nippy","nocturnal","normal","noted","noteworthy","noxious","numb","nutritious","obedient","oblong","obvious","odd","oddball","official","oily","old","old-fashioned","only","optimal","optimistic","orange","orderly","ordinary","ornate","ornery","other","our","outgoing","outlandish","outlying","outrageous","outstanding","oval","overcooked","overdue","palatable","pale","paltry","parallel","parched","partial","passionate","pastel","peaceful","peppery","perfumed","perky","personal","pertinent","pessimistic","petty","phony","physical","pink","pitiful","plain","pleasant","pleased","pleasing","plump","pointed","pointless","polished","polite","political","poor","portly","posh","possible","potable","powerful","powerless","practical","precious","present","prestigious","pretty","pricey","prickly","primary","prime","private","probable","productive","profitable","profuse","proper","proud","prudent","punctual","puny","pure","purple","pushy","putrid","puzzled","qualified","quarrelsome","quarterly","queasy","querulous","questionable","quick","quick-witted","quiet","quintessential","quixotic","radiant","ragged","rapid","rare","raw","realistic","reasonable","recent","reckless","rectangular","red","reflecting","regal","regular","remarkable","remorseful","repentant","respectful","responsible","rewarding","rich","right","rigid","ripe","roasted","robust","rosy","rotating","rotten","rough","round","rowdy","royal","rubbery","ruddy","rundown","runny","rural","rusty","sad","salty","same","sandy","sarcastic","sardonic","scaly","scared","scary","scented","scientific","scornful","scratchy","second","second-hand","secondary","secret","self-assured","self-reliant","selfish","sentimental","separate","serene","serpentine","severe","shabby","shadowy","shady","shallow","shameful","shameless","shimmering","shiny","shocked","shoddy","short","short-term","showy","shrill","shy","sick","silent","silky","silver","similar","simple","simplistic","sinful","sizzling","skeletal","sleepy","slight","slimy","slow","slushy","small","smart","smoggy","smooth","smug","snappy","snarling","sneaky","sniveling","snoopy","sociable","soft","soggy","somber","some","sophisticated","sore","sorrowful","soulful","soupy","sour","spanish","sparkling","sparse","specific","speedy","spherical","spiffy","spirited","spiteful","splendid","spotless","square","squeaky","squiggly","stable","staid","stained","stale","standard","stark","steel","steep","sticky","stiff","stingy","stormy","straight","strange","strict","strident","striking","strong","stunning","stupendous","sturdy","stylish","subdued","submissive","substantial","subtle","suburban","sudden","sugary","sunny","super","superb","superficial","superior","supportive","sure-footed","surprised","svelte","sweet","swift","talkative","tall","tame","tangible","tasty","tattered","taut","tedious","teeming","tempting","tender","tense","tepid","terrible","that","these","thick","thin","thorny","thorough","those","thrifty","tidy","tight","timely","tinted","tiny","tired","torn","total","tough","tragic","trained","triangular","tricky","trim","trivial","troubled","true","trusting","trustworthy","trusty","turbulent","twin","ugly","ultimate","unaware","uncomfortable","uncommon","unconscious","understated","uneven","unfinished","unfit","unfortunate","unhappy","unhealthy","uniform","unimportant","unique","unkempt","unknown","unlawful","unlined","unlucky","unpleasant","unrealistic","unripe","unruly","unselfish","unsightly","unsteady","unsung","untidy","untimely","untried","untrue","unused","unusual","unwelcome","unwieldy","unwilling","unwritten","upbeat","upright","upset","urban","usable","useless","utilized","utter","vague","vain","valuable","variable","vast","velvety","vengeful","vibrant","victorious","violent","vivacious","vivid","voluminous","warlike","warm","warmhearted","warped","wasteful","waterlogged","watery","wavy","wealthy","weary","webbed","wee","weekly","weighty","weird","well-documented","well-groomed","well-lit","well-made","well-off","well-to-do","well-worn","which","whimsical","whirlwind","whispered","white","whole","whopping","wicked","wide","wide-eyed","wiggly","willing","wilted","winding","windy","winged","wise","witty","wobbly","woeful","wonderful","wordy","worldly","worse","worst","worthless","worthwhile","worthy","wrathful","wretched","writhing","wrong","wry","yearly","yellow","yellowish","young","youthful","yummy","zany","zealous","zesty"],adverb:["abnormally","absentmindedly","accidentally","acidly","actually","adventurously","afterwards","almost","always","angrily","annually","anxiously","arrogantly","awkwardly","badly","bashfully","beautifully","bitterly","bleakly","blindly","blissfully","boastfully","boldly","bravely","briefly","brightly","briskly","broadly","busily","calmly","carefully","carelessly","cautiously","certainly","cheerfully","clearly","cleverly","closely","coaxingly","colorfully","commonly","continually","coolly","correctly","courageously","crossly","cruelly","curiously","daily","daintily","dearly","deceivingly","deeply","defiantly","deliberately","delightfully","diligently","dimly","doubtfully","dreamily","easily","elegantly","energetically","enormously","enthusiastically","equally","especially","even","evenly","eventually","exactly","excitedly","extremely","fairly","faithfully","famously","far","fast","fatally","ferociously","fervently","fiercely","fondly","foolishly","fortunately","frankly","frantically","freely","frenetically","frightfully","fully","furiously","generally","generously","gently","gladly","gleefully","gracefully","gratefully","greatly","greedily","happily","hastily","healthily","heavily","helpfully","helplessly","highly","honestly","hopelessly","hourly","hungrily","immediately","innocently","inquisitively","instantly","intensely","intently","interestingly","inwardly","irritably","jaggedly","jealously","joshingly","jovially","joyfully","joyously","jubilantly","judgementally","justly","keenly","kiddingly","kindheartedly","kindly","kissingly","knavishly","knottily","knowingly","knowledgeably","kookily","lazily","less","lightly","likely","limply","lively","loftily","longingly","loosely","loudly","lovingly","loyally","madly","majestically","meaningfully","mechanically","merrily","miserably","mockingly","monthly","more","mortally","mostly","mysteriously","naturally","nearly","neatly","needily","nervously","never","nicely","noisily","not","obediently","obnoxiously","oddly","offensively","officially","often","only","openly","optimistically","overconfidently","owlishly","painfully","partially","patiently","perfectly","physically","playfully","politely","poorly","positively","potentially","powerfully","promptly","properly","punctually","quaintly","quarrelsomely","queasily","questionably","questioningly","quicker","quickly","quietly","quirkily","quizzically","rapidly","rarely","readily","really","reassuringly","recklessly","regularly","reluctantly","repeatedly","reproachfully","restfully","righteously","rightfully","rigidly","roughly","rudely","sadly","safely","scarcely","scarily","searchingly","sedately","seemingly","seldom","selfishly","separately","seriously","shakily","sharply","sheepishly","shrilly","shyly","silently","sleepily","slowly","smoothly","softly","solemnly","solidly","sometimes","soon","speedily","stealthily","sternly","strictly","successfully","suddenly","surprisingly","suspiciously","sweetly","swiftly","sympathetically","tenderly","tensely","terribly","thankfully","thoroughly","thoughtfully","tightly","tomorrow","too","tremendously","triumphantly","truly","truthfully","ultimately","unabashedly","unaccountably","unbearably","unethically","unexpectedly","unfortunately","unimpressively","unnaturally","unnecessarily","upbeat","upliftingly","upright","upside-down","upward","upwardly","urgently","usefully","uselessly","usually","utterly","vacantly","vaguely","vainly","valiantly","vastly","verbally","very","viciously","victoriously","violently","vivaciously","voluntarily","warmly","weakly","wearily","well","wetly","wholly","wildly","willfully","wisely","woefully","wonderfully","worriedly","wrongly","yawningly","yearly","yearningly","yesterday","yieldingly","youthfully"],conjunction:["after","although","and","as","because","before","but","consequently","even","finally","for","furthermore","hence","how","however","if","inasmuch","incidentally","indeed","instead","lest","likewise","meanwhile","nor","now","once","or","provided","since","so","supposing","than","that","though","till","unless","until","what","when","whenever","where","whereas","wherever","whether","which","while","who","whoever","whose","why","yet"],interjection:["yuck","oh","phooey","blah","boo","whoa","yowza","huzzah","boohoo","fooey","geez","pfft","ew","ah","yum","brr","hm","yahoo","aha","woot","drat","gah","meh","psst","aw","ugh","yippee","eek","gee","bah","gadzooks","duh","ha","mmm","ouch","phew","ack","uh-huh","gosh","hmph","pish","zowie","er","ick","oof","um"],noun:["CD","SUV","abacus","academics","accelerator","accompanist","account","accountability","acquaintance","ad","adaptation","address","adrenalin","adult","advancement","advertisement","adviser","affect","affiliate","aftermath","agreement","airbus","aircraft","airline","airmail","airman","airport","alb","alert","allegation","alliance","alligator","allocation","almighty","amendment","amnesty","analogy","angle","annual","antelope","anticodon","apparatus","appliance","approach","apricot","arcade","archaeology","armchair","armoire","asset","assist","atrium","attraction","availability","avalanche","awareness","babushka","backbone","backburn","bakeware","bandwidth","bar","barge","baritone","barracks","baseboard","basket","bathhouse","bathrobe","battle","begonia","behest","bell","bench","bend","beret","best-seller","bid","bidet","bin","birdbath","birdcage","birth","blight","blossom","blowgun","bob","bog","bonfire","bonnet","bookcase","bookend","boulevard","bourgeoisie","bowler","bowling","boyfriend","brace","bracelet","bran","breastplate","brief","brochure","brook","brush","bug","bump","bungalow","cafe","cake","calculus","cannon","cantaloupe","cap","cappelletti","captain","caption","carboxyl","cardboard","carnival","case","casement","cash","casket","cassava","castanet","catalyst","cauliflower","cellar","celsius","cemetery","ceramic","ceramics","certification","chainstay","chairperson","challenge","championship","chap","chapel","character","characterization","charlatan","charm","chasuble","cheese","cheetah","chiffonier","chops","chow","cinder","cinema","circumference","citizen","clamp","clavicle","cleaner","climb","co-producer","coal","coast","cod","coil","coin","coliseum","collaboration","collectivization","colon","colonialism","comestible","commercial","commodity","community","comparison","completion","complication","compromise","concentration","configuration","confusion","conservation","conservative","consistency","contractor","contrail","convection","conversation","cook","coordination","cop-out","cope","cork","cornet","corporation","corral","cosset","costume","couch","council","councilman","countess","courtroom","cow","creator","creature","crest","cricket","crocodile","cross-contamination","cruelty","cuckoo","curl","custody","custom","cutlet","cutover","cycle","daddy","dandelion","dash","daughter","dead","decision","deck","declaration","decongestant","decryption","deduction","deed","deer","defendant","density","department","dependency","deployment","depot","derby","descendant","descent","design","designation","desk","detective","devastation","developing","developmental","devil","diagram","digestive","digit","dime","director","disadvantage","disappointment","disclosure","disconnection","discourse","dish","disk","disposer","distinction","diver","diversity","dividend","divine","doing","doorpost","doubter","draft","draw","dream","dredger","dress","drive","drug","duffel","dulcimer","dusk","duster","dwell","e-mail","earth","ecliptic","ectoderm","edge","editor","effector","eggplant","electronics","elevation","elevator","elver","embarrassment","embossing","emergent","encouragement","entry","epic","equal","essence","eternity","ethyl","euphonium","event","exasperation","excess","executor","exhaust","expansion","expense","experience","exploration","extension","extent","exterior","eyebrow","eyeliner","farm","farmer","fat","fax","feather","fedora","fellow","fen","fencing","ferret","festival","fibre","filter","final","finding","finer","finger","fireplace","fisherman","fishery","fit","flame","flat","fledgling","flight","flint","flood","flu","fog","fold","folklore","follower","following","foodstuffs","footrest","forage","forager","forgery","fork","formamide","formation","formula","fort","fowl","fraudster","freckle","freezing","freight","fuel","fun","fund","fundraising","futon","gallery","galoshes","gastropod","gazebo","gerbil","ghost","giant","gift","giggle","glider","gloom","goat","godfather","godparent","going","goodwill","governance","government","gown","gradient","graffiti","grandpa","grandson","granny","grass","gray","gripper","grouper","guacamole","guard","guidance","guide","gym","gymnast","habit","haircut","halt","hamburger","hammock","handful","handle","handover","harp","haversack","hawk","heartache","heartbeat","heating","hello","help","hepatitis","heroine","hexagon","hierarchy","hippodrome","honesty","hoof","hope","horde","hornet","horst","hose","hospitalization","hovel","hovercraft","hubris","humidity","humor","hundred","hunger","hunt","husband","hutch","hydrant","hydrocarbon","hydrolyse","hydrolyze","hyena","hygienic","hyphenation","ice-cream","icebreaker","igloo","ignorance","illusion","impact","import","importance","impostor","in-joke","incandescence","independence","individual","information","injunction","innovation","insolence","inspection","instance","institute","instruction","instructor","integer","intellect","intent","interchange","interior","intervention","interviewer","invite","iridescence","issue","jacket","jazz","jellyfish","jet","jogging","joy","juggernaut","jump","jungle","junior","jury","kettledrum","kick","kielbasa","kinase","king","kiss","kit","knickers","knight","knitting","knuckle","label","labourer","lace","lady","lamp","language","larva","lashes","laughter","lava","lawmaker","lay","leading","league","legend","legging","legislature","lender","license","lid","lieu","lifestyle","lift","linseed","litter","loaf","lobster","longboat","lotion","lounge","louse","lox","loyalty","luck","lyre","maestro","mainstream","maintainer","majority","makeover","making","mallard","management","manner","mantua","marathon","march","marimba","marketplace","marksman","markup","marten","massage","masterpiece","mathematics","meadow","meal","meander","meatloaf","mechanic","median","membership","mentor","merit","metabolite","metal","middle","midwife","milestone","millet","minion","minister","minor","minority","mixture","mobility","molasses","mom","moment","monasticism","monocle","monster","morbidity","morning","mortise","mountain","mouser","mousse","mozzarella","muscat","mythology","napkin","necklace","nectarine","negotiation","nephew","nerve","netsuke","newsletter","newsprint","newsstand","nightlife","noon","nougat","nucleotidase","nudge","numeracy","numeric","nun","obedience","obesity","object","obligation","ocelot","octave","offset","oil","omelet","onset","opera","operating","optimal","orchid","order","ostrich","other","outlaw","outrun","outset","overcoat","overheard","overload","ownership","pacemaker","packaging","paintwork","palate","pants","pantyhose","papa","parade","parsnip","partridge","passport","pasta","patroller","pear","pearl","pecan","pendant","peninsula","pension","peony","pepper","perfection","permafrost","perp","petal","petticoat","pharmacopoeia","phrase","pick","piglet","pigpen","pigsty","pile","pillbox","pillow","pilot","pine","pinstripe","place","plain","planula","plastic","platter","platypus","pleasure","pliers","plugin","plumber","pneumonia","pocket-watch","poetry","polarisation","polyester","pomelo","pop","poppy","popularity","populist","porter","possession","postbox","precedent","premeditation","premier","premise","premium","pressure","presume","priesthood","printer","privilege","procurement","produce","programme","prohibition","promise","pronoun","providence","provider","provision","publication","publicity","pulse","punctuation","pupil","puppet","puritan","quart","quinoa","quit","railway","range","rationale","ravioli","rawhide","reach","reasoning","reboot","receptor","recommendation","reconsideration","recovery","redesign","relative","release","remark","reorganisation","repeat","replacement","reporter","representation","republican","request","requirement","reservation","resolve","resource","responsibility","restaurant","retention","retrospectivity","reward","ribbon","rim","riser","roadway","role","rosemary","roundabout","rubric","ruin","rule","runway","rust","safe","sailor","saloon","sand","sandbar","sanity","sarong","sauerkraut","saw","scaffold","scale","scarification","scenario","schedule","schnitzel","scholarship","scorn","scorpion","scout","scrap","scratch","seafood","seagull","seal","season","secrecy","secret","section","sediment","self-confidence","sermon","sesame","settler","shadowbox","shark","shipper","shore","shoulder","sideboard","siege","sightseeing","signature","silk","simple","singing","skean","skeleton","skyline","skyscraper","slide","slime","slipper","smog","smoke","sock","soliloquy","solution","solvency","someplace","sonar","sonata","sonnet","soup","soybean","space","spear","spirit","spork","sport","spring","sprinkles","squid","stall","starboard","statue","status","stay","steak","steeple","step","step-mother","sticker","stir-fry","stitcher","stock","stool","story","strait","stranger","strategy","straw","stump","subexpression","submitter","subsidy","substitution","suitcase","summary","summer","sunbeam","sundae","supplier","surface","sushi","suspension","sustenance","swanling","swath","sweatshop","swim","swine","swing","switch","switchboard","swordfish","synergy","t-shirt","tabletop","tackle","tail","tapioca","taro","tarragon","taxicab","teammate","technician","technologist","tectonics","tenant","tenement","tennis","tentacle","teriyaki","term","testimonial","testing","thigh","thongs","thorn","thread","thunderbolt","thyme","tinderbox","toaster","tomatillo","tomb","tomography","tool","tooth","toothbrush","toothpick","topsail","traditionalism","traffic","translation","transom","transparency","trash","travel","tray","trench","tribe","tributary","trick","trolley","tuba","tuber","tune-up","turret","tusk","tuxedo","typeface","typewriter","unblinking","underneath","underpants","understanding","unibody","unique","unit","utilization","valentine","validity","valley","valuable","vanadyl","vein","velocity","venom","version","verve","vestment","veto","viability","vibraphone","vibration","vicinity","video","violin","vision","vista","vol","volleyball","wafer","waist","wallaby","warming","wasabi","waterspout","wear","wedding","whack","whale","wheel","widow","wilderness","willow","window","wombat","word","worth","wriggler","yak","yarmulke","yeast","yin","yogurt","zebra","zen"],preposition:["a","abaft","aboard","about","above","absent","across","afore","after","against","along","alongside","amid","amidst","among","amongst","an","anenst","anti","apropos","apud","around","as","aside","astride","at","athwart","atop","barring","before","behind","below","beneath","beside","besides","between","beyond","but","by","circa","concerning","considering","despite","down","during","except","excepting","excluding","failing","following","for","forenenst","from","given","in","including","inside","into","lest","like","mid","midst","minus","modulo","near","next","notwithstanding","of","off","on","onto","opposite","out","outside","over","pace","past","per","plus","pro","qua","regarding","round","sans","save","since","than","the","through","throughout","till","times","to","toward","towards","under","underneath","unlike","until","unto","up","upon","versus","via","vice","with","within","without","worth"],verb:["abnegate","abscond","abseil","absolve","accentuate","accept","access","accessorise","accompany","account","accredit","achieve","acknowledge","acquire","adjourn","adjudge","admonish","adumbrate","advocate","afford","airbrush","ameliorate","amend","amount","anaesthetise","analyse","anesthetize","anneal","annex","antagonize","ape","apologise","apostrophize","appertain","appreciate","appropriate","approximate","arbitrate","archive","arraign","arrange","ascertain","ascribe","assail","atomize","attend","attest","attribute","augment","avow","axe","baa","banish","bank","baptise","battle","beard","beep","behold","belabor","bemuse","besmirch","bestride","better","bewail","bicycle","bide","bind","biodegrade","blacken","blaspheme","bleach","blend","blink","bliss","bloom","bludgeon","bobble","boggle","bolster","book","boom","bootleg","border","bore","boss","braid","brand","brandish","break","breed","broadcast","broadside","brood","browse","buck","burgeon","bus","butter","buzzing","camouflage","cannibalise","canter","cap","capitalise","capitalize","capsize","card","carouse","carp","carpool","catalog","catalyze","catch","categorise","cease","celebrate","censor","certify","char","charter","chase","chatter","chime","chip","christen","chromakey","chunder","chunter","cinch","circle","circulate","circumnavigate","clamor","clamour","claw","cleave","clinch","clinking","clone","clonk","coagulate","coexist","coincide","collaborate","colligate","colorize","colour","comb","come","commandeer","commemorate","communicate","compete","conceal","conceptualize","conclude","concrete","condense","cone","confide","confirm","confiscate","confound","confute","congregate","conjecture","connect","consign","construe","contradict","contrast","contravene","controvert","convalesce","converse","convince","convoke","coop","cop","corner","covenant","cow","crackle","cram","crank","creak","creaking","cripple","croon","cross","crumble","crystallize","culminate","culture","curry","curse","customise","cycle","dally","dampen","darn","debit","debut","decide","decode","decouple","decriminalize","deduce","deduct","deflate","deflect","deform","defrag","degenerate","degrease","delete","delight","deliquesce","demob","demobilise","democratize","demonstrate","denitrify","deny","depart","depend","deplore","deploy","deprave","depute","dereference","describe","desecrate","deselect","destock","detain","develop","devise","dial","dicker","digitize","dilate","disapprove","disarm","disbar","discontinue","disgorge","dishearten","dishonor","disinherit","dislocate","dispense","display","dispose","disrespect","dissemble","ditch","divert","dock","doodle","downchange","downshift","dowse","draft","drag","drain","dramatize","drowse","drum","dwell","economise","edge","efface","egg","eke","electrify","embalm","embed","embody","emboss","emerge","emphasise","emphasize","emulsify","encode","endow","enfold","engage","engender","enhance","enlist","enrage","enrich","enroll","entice","entomb","entrench","entwine","equate","essay","etch","eulogise","even","evince","exacerbate","exaggerate","exalt","exempt","exonerate","expatiate","explode","expostulate","extract","extricate","eyeglasses","fabricate","facilitate","factorise","factorize","fail","fall","familiarize","fashion","father","fathom","fax","federate","feminize","fence","fess","fictionalize","fiddle","fidget","fill","flash","fleck","flight","floodlight","floss","fluctuate","fluff","fly","focalise","foot","forearm","forecast","foretell","forgather","forgo","fork","form","forswear","founder","fraternise","fray","frizz","fumigate","function","furlough","fuss","gad","gallivant","galvanize","gape","garage","garrote","gasp","gestate","give","glimmer","glisten","gloat","gloss","glow","gnash","gnaw","goose","govern","grade","graduate","graft","grok","guest","guilt","gulp","gum","gurn","gust","gut","guzzle","ham","harangue","harvest","hassle","haul","haze","headline","hearten","heighten","highlight","hoick","hold","hole","hollow","holster","home","homeschool","hoot","horn","horse","hotfoot","house","hover","howl","huddle","huff","hunger","hunt","husk","hype","hypothesise","hypothesize","idle","ignite","imagineer","impact","impanel","implode","incinerate","incline","inculcate","industrialize","ingratiate","inhibit","inject","innovate","inscribe","insert","insist","inspect","institute","institutionalize","intend","intermarry","intermesh","intermix","internalise","internalize","internationalize","intrigue","inure","inveigle","inventory","investigate","irk","iterate","jaywalk","jell","jeopardise","jiggle","jive","joint","jot","jut","keel","knife","knit","know","kowtow","lack","lampoon","large","leap","lecture","legitimize","lend","libel","liberalize","license","ligate","list","lobotomise","lock","log","loose","low","lowball","machine","magnetize","major","make","malfunction","manage","manipulate","maroon","masculinize","mash","mask","masquerade","massage","masticate","materialise","matter","maul","memorise","merge","mesh","metabolise","microblog","microchip","micromanage","militate","mill","minister","minor","misappropriate","miscalculate","misfire","misjudge","miskey","mismatch","mispronounce","misread","misreport","misspend","mob","mobilise","mobilize","moisten","mooch","moor","moralise","mortar","mosh","mothball","motivate","motor","mould","mount","muddy","mummify","mutate","mystify","nab","narrate","narrowcast","nasalise","nauseate","navigate","neaten","neck","neglect","norm","notarize","object","obscure","observe","obsess","obstruct","obtrude","offend","offset","option","orchestrate","orient","orientate","outbid","outdo","outfit","outflank","outfox","outnumber","outrank","outrun","outsource","overburden","overcharge","overcook","overdub","overfeed","overload","overplay","overproduce","overreact","override","overspend","overstay","overtrain","overvalue","overwork","own","oxidise","oxidize","oxygenate","pace","pack","pale","pant","paralyse","parody","part","pause","pave","penalise","persecute","personalise","perspire","pertain","peter","pike","pillory","pinion","pip","pity","pivot","pixellate","plagiarise","plait","plan","please","pluck","ponder","popularize","portray","prance","preclude","preheat","prejudge","preregister","presell","preside","pretend","print","prioritize","probate","probe","proceed","procrastinate","profane","progress","proliferate","proofread","propound","proselytise","provision","pry","publicize","puff","pull","pulp","pulverize","purse","put","putrefy","quadruple","quaff","quantify","quarrel","quash","quaver","question","quiet","quintuple","quip","quit","rag","rally","ramp","randomize","rationalise","rationalize","ravage","ravel","react","readies","readjust","readmit","ready","reapply","rear","reassemble","rebel","reboot","reborn","rebound","rebuff","rebuild","rebuke","recede","reckon","reclassify","recompense","reconstitute","record","recount","redact","redevelop","redound","redraw","redress","reel","refer","reference","refine","reflate","refute","regulate","reiterate","rejigger","rejoin","rekindle","relaunch","relieve","remand","remark","reopen","reorient","replicate","repossess","represent","reprimand","reproach","reprove","repurpose","requite","reschedule","resort","respray","restructure","retool","retract","revere","revitalise","revoke","reword","rewrite","ride","ridge","rim","ring","rise","rival","roger","rosin","rot","rout","row","rue","rule","safeguard","sashay","sate","satirise","satirize","satisfy","saturate","savour","scale","scamper","scar","scare","scarper","scent","schematise","scheme","schlep","scoff","scoop","scope","scotch","scowl","scrabble","scram","scramble","scrape","screw","scruple","scrutinise","scuffle","scuttle","search","secularize","see","segregate","sell","sense","sensitize","sequester","serenade","serialize","serve","service","settle","sew","shaft","sham","shampoo","shanghai","shear","sheathe","shell","shinny","shirk","shoot","shoulder","shout","shovel","showboat","shred","shrill","shudder","shush","sidetrack","sign","silt","sin","singe","sit","sizzle","skateboard","ski","slake","slap","slather","sleet","slink","slip","slope","slump","smarten","smuggle","snack","sneak","sniff","snoop","snow","snowplow","snuggle","soap","solace","solder","solicit","source","spark","spattering","spectacles","spectate","spellcheck","spew","spice","spirit","splash","splay","split","splosh","splurge","spook","square","squirm","stabilise","stable","stack","stage","stake","starch","state","statement","stiffen","stigmatize","sting","stint","stoop","store","storyboard","stratify","structure","stuff","stunt","substantiate","subtract","suckle","suffice","suffocate","summarise","sun","sunbathe","sunder","sup","surge","surprise","swat","swathe","sway","swear","swelter","swerve","swill","swing","symbolise","synthesise","syringe","table","tabulate","tag","tame","tank","tankful","tarry","task","taxicab","team","telescope","tenant","terraform","terrorise","testify","think","throbbing","thump","tighten","toady","toe","tough","tousle","traduce","train","transcend","transplant","trash","treasure","treble","trek","trial","tromp","trouser","trust","tune","tut","twine","twist","typify","unbalance","uncork","uncover","underachieve","undergo","underplay","unearth","unfreeze","unfurl","unlearn","unscramble","unzip","uproot","upsell","usher","vacation","vamoose","vanish","vary","veg","venture","verify","vet","veto","volunteer","vulgarise","waft","wallop","waltz","warp","wash","waver","weary","weatherize","wedge","weep","weight","welcome","westernise","westernize","while","whine","whisper","whistle","whitewash","whup","wilt","wing","wire","wisecrack","wolf","wound","wring","writ","yak","yawn","yearn","yuppify"]}},ww=class extends Error{};var Cw=class{constructor(e){this.faker=e,function(e){let t=Object.getPrototypeOf(e);do{for(let r of Object.getOwnPropertyNames(t))"function"==typeof e[r]&&"constructor"!==r&&(e[r]=e[r].bind(e));t=Object.getPrototypeOf(t)}while(t!==Object.prototype)}(this)}},_w=class extends Cw{constructor(e){super(e),this.faker=e}},Sw=(e=>(e.Narrowbody="narrowbody",e.Regional="regional",e.Widebody="widebody",e))(Sw||{}),Aw=["0","1","2","3","4","5","6","7","8","9"],Mw=["0","O","1","I","L"],Tw={regional:20,narrowbody:35,widebody:60},Bw={regional:["A","B","C","D"],narrowbody:["A","B","C","D","E","F"],widebody:["A","B","C","D","E","F","G","H","J","K"]},Lw=class extends _w{airport(){return this.faker.helpers.arrayElement(this.faker.definitions.airline.airport)}airline(){return this.faker.helpers.arrayElement(this.faker.definitions.airline.airline)}airplane(){return this.faker.helpers.arrayElement(this.faker.definitions.airline.airplane)}recordLocator(e={}){let{allowNumerics:t=!1,allowVisuallySimilarCharacters:r=!1}=e,a=[];return t||a.push(...Aw),r||a.push(...Mw),this.faker.string.alphanumeric({length:6,casing:"upper",exclude:a})}seat(e={}){let{aircraftType:t="narrowbody"}=e,r=Tw[t],a=Bw[t];return`${this.faker.number.int({min:1,max:r})}${this.faker.helpers.arrayElement(a)}`}aircraftType(){return this.faker.helpers.enumValue(Sw)}flightNumber(e={}){let{length:t={min:1,max:4},addLeadingZeros:r=!1}=e,a=this.faker.string.numeric({length:t,allowLeadingZeros:!1});return r?a.padStart(4,"0"):a}},Ew=(e=>(e.SRGB="sRGB",e.DisplayP3="display-p3",e.REC2020="rec2020",e.A98RGB="a98-rgb",e.ProphotoRGB="prophoto-rgb",e))(Ew||{}),Rw=(e=>(e.RGB="rgb",e.RGBA="rgba",e.HSL="hsl",e.HSLA="hsla",e.HWB="hwb",e.CMYK="cmyk",e.LAB="lab",e.LCH="lch",e.COLOR="color",e))(Rw||{});function Hw(e){return e.map((e=>{if(e%1!=0){let t=new ArrayBuffer(4);return new DataView(t).setFloat32(0,e),Hw([...new Uint8Array(t)]).replaceAll(" ","")}return(e>>>0).toString(2).padStart(8,"0")})).join(" ")}function Dw(e,t,r="rgb",a="sRGB"){switch(t){case"css":return function(e,t="rgb",r="sRGB"){let a=e=>Math.round(100*e);switch(t){case"rgba":return`rgba(${e[0]}, ${e[1]}, ${e[2]}, ${e[3]})`;case"color":return`color(${r} ${e[0]} ${e[1]} ${e[2]})`;case"cmyk":return`cmyk(${a(e[0])}%, ${a(e[1])}%, ${a(e[2])}%, ${a(e[3])}%)`;case"hsl":return`hsl(${e[0]}deg ${a(e[1])}% ${a(e[2])}%)`;case"hsla":return`hsl(${e[0]}deg ${a(e[1])}% ${a(e[2])}% / ${a(e[3])})`;case"hwb":return`hwb(${e[0]} ${a(e[1])}% ${a(e[2])}%)`;case"lab":return`lab(${a(e[0])}% ${e[1]} ${e[2]})`;case"lch":return`lch(${a(e[0])}% ${e[1]} ${e[2]})`;case"rgb":return`rgb(${e[0]}, ${e[1]}, ${e[2]})`}}(e,r,a);case"binary":return Hw(e);case"decimal":return e}}var Pw=class extends _w{human(){return this.faker.helpers.arrayElement(this.faker.definitions.color.human)}space(){return this.faker.helpers.arrayElement(this.faker.definitions.color.space)}cssSupportedFunction(){return this.faker.helpers.enumValue(Rw)}cssSupportedSpace(){return this.faker.helpers.enumValue(Ew)}rgb(e={}){let t,{format:r="hex",includeAlpha:a=!1,prefix:i="#",casing:n="lower"}=e,o="rgb";return"hex"===r?(t=this.faker.string.hexadecimal({length:a?8:6,prefix:""}),t=function(e,t){let{prefix:r,casing:a}=t;switch(a){case"upper":e=e.toUpperCase();break;case"lower":e=e.toLowerCase()}return r&&(e=r+e),e}(t,{prefix:i,casing:n}),t):(t=Array.from({length:3},(()=>this.faker.number.int(255))),a&&(t.push(this.faker.number.float({multipleOf:.01})),o="rgba"),Dw(t,r,o))}cmyk(e={}){let{format:t="decimal"}=e;return Dw(Array.from({length:4},(()=>this.faker.number.float({multipleOf:.01}))),t,"cmyk")}hsl(e={}){let{format:t="decimal",includeAlpha:r=!1}=e,a=[this.faker.number.int(360)];for(let t=0;t<(e?.includeAlpha?3:2);t++)a.push(this.faker.number.float({multipleOf:.01}));return Dw(a,t,r?"hsla":"hsl")}hwb(e={}){let{format:t="decimal"}=e,r=[this.faker.number.int(360)];for(let e=0;e<2;e++)r.push(this.faker.number.float({multipleOf:.01}));return Dw(r,t,"hwb")}lab(e={}){let{format:t="decimal"}=e,r=[this.faker.number.float({multipleOf:1e-6})];for(let e=0;e<2;e++)r.push(this.faker.number.float({min:-100,max:100,multipleOf:1e-4}));return Dw(r,t,"lab")}lch(e={}){let{format:t="decimal"}=e,r=[this.faker.number.float({multipleOf:1e-6})];for(let e=0;e<2;e++)r.push(this.faker.number.float({max:230,multipleOf:.1}));return Dw(r,t,"lch")}colorByCSSColorSpace(e={}){let{format:t="decimal",space:r="sRGB"}=e;return Dw(Array.from({length:3},(()=>this.faker.number.float({multipleOf:1e-4}))),t,"color",r)}},Nw=(e=>(e.Legacy="legacy",e.Segwit="segwit",e.Bech32="bech32",e.Taproot="taproot",e))(Nw||{}),Gw=(e=>(e.Mainnet="mainnet",e.Testnet="testnet",e))(Gw||{}),Iw={legacy:{prefix:{mainnet:"1",testnet:"m"},length:{min:26,max:34},casing:"mixed",exclude:"0OIl"},segwit:{prefix:{mainnet:"3",testnet:"2"},length:{min:26,max:34},casing:"mixed",exclude:"0OIl"},bech32:{prefix:{mainnet:"bc1",testnet:"tb1"},length:{min:42,max:42},casing:"lower",exclude:"1bBiIoO"},taproot:{prefix:{mainnet:"bc1p",testnet:"tb1p"},length:{min:62,max:62},casing:"lower",exclude:"1bBiIoO"}},Ww=(e=>(e.Female="female",e.Male="male",e))(Ww||{});function Fw(e,t,r){let{generic:a,female:i,male:n}=r;switch(t){case"female":return i??a;case"male":return n??a;default:return a??e.helpers.arrayElement([i,n])??[]}}var zw=class extends _w{firstName(e){return this.faker.helpers.arrayElement(Fw(this.faker,e,this.faker.definitions.person.first_name))}lastName(e){if(null!=this.faker.rawDefinitions.person?.last_name_pattern){let t=this.faker.helpers.weightedArrayElement(Fw(this.faker,e,this.faker.rawDefinitions.person.last_name_pattern));return this.faker.helpers.fake(t)}return this.faker.helpers.arrayElement(Fw(this.faker,e,this.faker.definitions.person.last_name))}middleName(e){return this.faker.helpers.arrayElement(Fw(this.faker,e,this.faker.definitions.person.middle_name))}fullName(e={}){let{sex:t=this.faker.helpers.arrayElement(["female","male"]),firstName:r=this.firstName(t),lastName:a=this.lastName(t)}=e,i=this.faker.helpers.weightedArrayElement(this.faker.definitions.person.name);return this.faker.helpers.mustache(i,{"person.prefix":()=>this.prefix(t),"person.firstName":()=>r,"person.middleName":()=>this.middleName(t),"person.lastName":()=>a,"person.suffix":()=>this.suffix()})}gender(){return this.faker.helpers.arrayElement(this.faker.definitions.person.gender)}sex(){return this.faker.helpers.arrayElement(this.faker.definitions.person.sex)}sexType(){return this.faker.helpers.enumValue(Ww)}bio(){let{bio_pattern:e}=this.faker.definitions.person;return this.faker.helpers.fake(e)}prefix(e){return this.faker.helpers.arrayElement(Fw(this.faker,e,this.faker.definitions.person.prefix))}suffix(){return this.faker.helpers.arrayElement(this.faker.definitions.person.suffix)}jobTitle(){return this.faker.helpers.fake(this.faker.definitions.person.job_title_pattern)}jobDescriptor(){return this.faker.helpers.arrayElement(this.faker.definitions.person.job_descriptor)}jobArea(){return this.faker.helpers.arrayElement(this.faker.definitions.person.job_area)}jobType(){return this.faker.helpers.arrayElement(this.faker.definitions.person.job_type)}zodiacSign(){return this.faker.helpers.arrayElement(this.faker.definitions.person.western_zodiac_sign)}},Ow=class{N=624;M=397;MATRIX_A=2567483615;UPPER_MASK=2147483648;LOWER_MASK=2147483647;mt=Array.from({length:this.N});mti=this.N+1;unsigned32(e){return e<0?(e^this.UPPER_MASK)+this.UPPER_MASK:e}subtraction32(e,t){return e>>a&1&&(r=this.addition32(r,this.unsigned32(t<>>30)),this.mti),this.mt[this.mti]=this.unsigned32(4294967295&this.mt[this.mti])}initByArray(e,t){this.initGenrand(19650218);let r=1,a=0,i=this.N>t?this.N:t;for(;i;i--)this.mt[r]=this.addition32(this.addition32(this.unsigned32(this.mt[r]^this.multiplication32(this.unsigned32(this.mt[r-1]^this.mt[r-1]>>>30),1664525)),e[a]),a),this.mt[r]=this.unsigned32(4294967295&this.mt[r]),r++,a++,r>=this.N&&(this.mt[0]=this.mt[this.N-1],r=1),a>=t&&(a=0);for(i=this.N-1;i;i--)this.mt[r]=this.subtraction32(this.unsigned32(this.mt[r]^this.multiplication32(this.unsigned32(this.mt[r-1]^this.mt[r-1]>>>30),1566083941)),r),this.mt[r]=this.unsigned32(4294967295&this.mt[r]),r++,r>=this.N&&(this.mt[0]=this.mt[this.N-1],r=1);this.mt[0]=2147483648}mag01=[0,this.MATRIX_A];genrandInt32(){let e;if(this.mti>=this.N){let t;for(this.mti===this.N+1&&this.initGenrand(5489),t=0;t>>1^this.mag01[1&e]);for(;t>>1^this.mag01[1&e]);e=this.unsigned32(this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK),this.mt[this.N-1]=this.unsigned32(this.mt[this.M-1]^e>>>1^this.mag01[1&e]),this.mti=0}return e=this.mt[this.mti++],e=this.unsigned32(e^e>>>11),e=this.unsigned32(e^e<<7&2636928640),e=this.unsigned32(e^e<<15&4022730752),e=this.unsigned32(e^e>>>18),e}genrandInt31(){return this.genrandInt32()>>>1}genrandReal1(){return this.genrandInt32()*(1/4294967295)}genrandReal2(){return this.genrandInt32()*(1/4294967296)}genrandReal3(){return(this.genrandInt32()+.5)*(1/4294967296)}genrandRes53(){return(67108864*(this.genrandInt32()>>>5)+(this.genrandInt32()>>>6))*(1/9007199254740992)}};function Kw(){let e=new Ow;return e.initGenrand(Math.ceil(Math.random()*Number.MAX_SAFE_INTEGER)),{next:()=>e.genrandRes53(),seed(t){"number"==typeof t?e.initGenrand(t):Array.isArray(t)&&e.initByArray(t,t.length)}}}var Jw=class extends Cw{boolean(e={}){"number"==typeof e&&(e={probability:e});let{probability:t=.5}=e;return!(t<=0)&&(t>=1||this.faker.number.float(){throw new ww("You cannot edit the locale data on the faker instance")};function jw(e){let t={};return new Proxy(e,{has:()=>!0,get:(e,r)=>"symbol"==typeof r||"nodeType"===r?e[r]:r in t?t[r]:t[r]=function(e,t={}){return new Proxy(t,{has:(e,t)=>null!=e[t],get(t,r){let a=t[r];return"symbol"==typeof r||"nodeType"===r||Yw(a,e,r.toString()),a},set:Vw,deleteProperty:Vw})}(r,e[r]),set:Vw,deleteProperty:Vw})}function Yw(e,...t){if(null===e)throw new ww(`The locale data for '${t.join(".")}' aren't applicable to this locale.\n If you think this is a bug, please report it at: https://github.com/faker-js/faker`);if(void 0===e)throw new ww(`The locale data for '${t.join(".")}' are missing in this locale.\n Please contribute the missing data to the project or use a locale/Faker instance that has these data.\n For more information see https://fakerjs.dev/guide/localization.html`)}function $w(e,t="refDate"){let r=new Date(e);if(Number.isNaN(r.valueOf()))throw new ww(`Invalid ${t} date: ${e.toString()}`);return r}var Uw=class extends Cw{anytime(e={}){let{refDate:t=this.faker.defaultRefDate()}=e,r=$w(t).getTime();return this.between({from:r-31536e6,to:r+31536e6})}past(e={}){let{years:t=1,refDate:r=this.faker.defaultRefDate()}=e;if(t<=0)throw new ww("Years must be greater than 0.");let a=$w(r).getTime();return this.between({from:a-365*t*24*3600*1e3,to:a-1e3})}future(e={}){let{years:t=1,refDate:r=this.faker.defaultRefDate()}=e;if(t<=0)throw new ww("Years must be greater than 0.");let a=$w(r).getTime();return this.between({from:a+1e3,to:a+365*t*24*3600*1e3})}between(e){if(null==e||null==e.from||null==e.to)throw new ww("Must pass an options object with `from` and `to` values.");let{from:t,to:r}=e,a=$w(t,"from").getTime(),i=$w(r,"to").getTime();if(a>i)throw new ww("`from` date must be before `to` date.");return new Date(this.faker.number.int({min:a,max:i}))}betweens(e){if(null==e||null==e.from||null==e.to)throw new ww("Must pass an options object with `from` and `to` values.");let{from:t,to:r,count:a=3}=e;return this.faker.helpers.multiple((()=>this.between({from:t,to:r})),{count:a}).sort(((e,t)=>e.getTime()-t.getTime()))}recent(e={}){let{days:t=1,refDate:r=this.faker.defaultRefDate()}=e;if(t<=0)throw new ww("Days must be greater than 0.");let a=$w(r).getTime();return this.between({from:a-24*t*3600*1e3,to:a-1e3})}soon(e={}){let{days:t=1,refDate:r=this.faker.defaultRefDate()}=e;if(t<=0)throw new ww("Days must be greater than 0.");let a=$w(r).getTime();return this.between({from:a+1e3,to:a+24*t*3600*1e3})}birthdate(e={}){let{mode:t="age",min:r=18,max:a=80,refDate:i=this.faker.defaultRefDate(),mode:n,min:o,max:c}=e;if([o,c,n].filter((e=>null!=e)).length%3!=0)throw new ww("The 'min', 'max', and 'mode' options must be set together.");let l=$w(i),s=l.getUTCFullYear();switch(t){case"age":{let e=new Date(l).setUTCFullYear(s-a-1)+864e5,t=new Date(l).setUTCFullYear(s-r);if(e>t)throw new ww(`Max age ${a} should be greater than or equal to min age ${r}.`);return this.between({from:e,to:t})}case"year":{let e=new Date(Date.UTC(0,0,2)).setUTCFullYear(r),t=new Date(Date.UTC(0,11,30)).setUTCFullYear(a);if(e>t)throw new ww(`Max year ${a} should be greater than or equal to min year ${r}.`);return this.between({from:e,to:t})}}}},qw=class extends Uw{constructor(e){super(e),this.faker=e}month(e={}){let t,{abbreviated:r=!1,context:a=!1}=e,i=this.faker.definitions.date.month;t=r?a&&null!=i.abbr_context?"abbr_context":"abbr":a&&null!=i.wide_context?"wide_context":"wide";let n=i[t];return Yw(n,"date.month",t),this.faker.helpers.arrayElement(n)}weekday(e={}){let t,{abbreviated:r=!1,context:a=!1}=e,i=this.faker.definitions.date.weekday;t=r?a&&null!=i.abbr_context?"abbr_context":"abbr":a&&null!=i.wide_context?"wide_context":"wide";let n=i[t];return Yw(n,"date.weekday",t),this.faker.helpers.arrayElement(n)}timeZone(){return this.faker.helpers.arrayElement(this.faker.definitions.date.time_zone)}},Zw=/\.|\(/;function Qw(e,t,r){let[a,i]=function(e){let t=e.indexOf(")",1);if(-1===t)throw new ww(`Missing closing parenthesis in '${e}'`);for(;-1!==t;){let r=e.substring(1,t);try{return[t,JSON.parse(`[${r}]`)]}catch{if(!r.includes("'")&&!r.includes('"'))try{return[t,JSON.parse(`["${r}"]`)]}catch{}}t=e.indexOf(")",t+1)}t=e.lastIndexOf(")");let r=e.substring(1,t);return[t,[r]]}(e),n=e[a+1];switch(n){case".":case"(":case void 0:break;default:throw new ww(`Expected dot ('.'), open parenthesis ('('), or nothing after function call but got '${n}'`)}return[a+("."===n?2:1),t.map((t=>"function"==typeof t?t(...i):(console.warn(`[@faker-js/faker]: Invoking expressions which are not functions is deprecated since v9.0 and will be removed in v10.0.\nPlease remove the parentheses or replace the expression with an actual function.\n${r}\n${" ".repeat(r.length-e.length)}^`),t)))]}function Xw(e,t){let r=Zw.exec(e),a="."===(r?.[0]??""),i=r?.index??e.length,n=e.substring(0,i);if(0===n.length)throw new ww(`Expression parts cannot be empty in '${e}'`);let o=e[i+1];if(a&&(null==o||"."===o||"("===o))throw new ww(`Found dot without property name in '${e}'`);return[i+(a?1:0),t.map((e=>function(e,t){switch(typeof e){case"function":try{e=e()}catch{return}return e?.[t];case"object":return e?.[t];default:return}}(e,n)))]}function eC(e){let t=function(e){e=e.replaceAll(/[\s-]/g,"");let t=0,r=!1;for(let a=e.length-1;a>=0;a--){let i=Number.parseInt(e[a]);r&&(i*=2,i>9&&(i=i%10+1)),t+=i,r=!r}return t%10}(e.replace(/L?$/,"0"));return 0===t?0:10-t}function tC(e,t,r,a){let i=1;if(t)switch(t){case"?":i=e.datatype.boolean()?0:1;break;case"*":{let t=1;for(;e.datatype.boolean();)t*=2;i=e.number.int({min:0,max:t});break}case"+":{let t=1;for(;e.datatype.boolean();)t*=2;i=e.number.int({min:1,max:t});break}default:throw new ww("Unknown quantifier symbol provided.")}else null!=r&&null!=a?i=e.number.int({min:Number.parseInt(r),max:Number.parseInt(a)}):null!=r&&null==a&&(i=Number.parseInt(r));return i}function rC(e,t="",r="#"){let a="";for(let i=0;ia&&(i=a,a=r,r=i),n=e.number.int({min:r,max:a}),t=t.slice(0,s.index)+s[1].repeat(n)+t.slice(s.index+s[0].length),s=o.exec(t);for(s=c.exec(t);null!=s;)n=Number.parseInt(s[2]),t=t.slice(0,s.index)+s[1].repeat(n)+t.slice(s.index+s[0].length),s=c.exec(t);for(s=l.exec(t);null!=s;)r=Number.parseInt(s[1]),a=Number.parseInt(s[2]),r>a&&(i=a,a=r,r=i),t=t.slice(0,s.index)+e.number.int({min:r,max:a}).toString()+t.slice(s.index+s[0].length),s=l.exec(t);return t}(this.faker,e);let r=eC(e=rC(this.faker,e,t));return e.replace("L",String(r))}fromRegExp(e){let t=!1;e instanceof RegExp&&(t=e.flags.includes("i"),e=e.toString(),e=/\/(.+?)\//.exec(e)?.[1]??"");let r,a,i,n=/([.A-Za-z0-9])(?:\{(\d+)(?:,(\d+)|)\}|(\?|\*|\+))(?![^[]*]|[^{]*})/,o=n.exec(e);for(;null!=o;){let t=o[2],r=o[3],a=o[4];i=tC(this.faker,a,t,r),e=e.slice(0,o.index)+o[1].repeat(i)+e.slice(o.index+o[0].length),o=n.exec(e)}let c=/(\d-\d|\w-\w|\d|\w|[-!@#$&()`.+,/"])/,l=/\[(\^|)(-|)(.+?)\](?:\{(\d+)(?:,(\d+)|)\}|(\?|\*|\+)|)/;for(o=l.exec(e);null!=o;){let n="^"===o[1],s="-"===o[2],u=o[4],h=o[5],d=o[6],p=[],y=o[3],f=c.exec(y);for(s&&p.push(45);null!=f;){if(f[0].includes("-")){let e=f[0].split("-").map((e=>e.codePointAt(0)??Number.NaN));if(r=e[0],a=e[1],r>a)throw new ww("Character range provided is out of order.");for(let e=r;e<=a;e++)if(t&&Number.isNaN(Number(String.fromCodePoint(e)))){let t=String.fromCodePoint(e);p.push(t.toUpperCase().codePointAt(0)??Number.NaN,t.toLowerCase().codePointAt(0)??Number.NaN)}else p.push(e)}else t&&Number.isNaN(Number(f[0]))?p.push(f[0].toUpperCase().codePointAt(0)??Number.NaN,f[0].toLowerCase().codePointAt(0)??Number.NaN):p.push(f[0].codePointAt(0)??Number.NaN);y=y.substring(f[0].length),f=c.exec(y)}if(i=tC(this.faker,d,u,h),n){let e=-1;for(let t=48;t<=57;t++)e=p.indexOf(t),e>-1?p.splice(e,1):p.push(t);for(let t=65;t<=90;t++)e=p.indexOf(t),e>-1?p.splice(e,1):p.push(t);for(let t=97;t<=122;t++)e=p.indexOf(t),e>-1?p.splice(e,1):p.push(t)}let m=this.multiple((()=>String.fromCodePoint(this.arrayElement(p))),{count:i}).join("");e=e.slice(0,o.index)+m+e.slice(o.index+o[0].length),o=l.exec(e)}let s=/(.)\{(\d+),(\d+)\}/;for(o=s.exec(e);null!=o;){if(r=Number.parseInt(o[2]),a=Number.parseInt(o[3]),r>a)throw new ww("Numbers out of order in {} quantifier.");i=this.faker.number.int({min:r,max:a}),e=e.slice(0,o.index)+o[1].repeat(i)+e.slice(o.index+o[0].length),o=s.exec(e)}let u=/(.)\{(\d+)\}/;for(o=u.exec(e);null!=o;)i=Number.parseInt(o[2]),e=e.slice(0,o.index)+o[1].repeat(i)+e.slice(o.index+o[0].length),o=u.exec(e);return e}shuffle(e,t={}){let{inplace:r=!1}=t;r||(e=[...e]);for(let t=e.length-1;t>0;--t){let r=this.faker.number.int(t);[e[t],e[r]]=[e[r],e[t]]}return e}uniqueArray(e,t){if(Array.isArray(e)){let r=[...new Set(e)];return this.shuffle(r).splice(0,t)}let r=new Set;try{if("function"==typeof e){let a=1e3*t,i=0;for(;r.size1?this.faker.number.int({max:e.length-1}):0]}weightedArrayElement(e){if(0===e.length)throw new ww("weightedArrayElement expects an array with at least one element");if(!e.every((e=>e.weight>0)))throw new ww("weightedArrayElement expects an array of { weight, value } objects where weight is a positive number");let t=e.reduce(((e,{weight:t})=>e+t),0),r=this.faker.number.float({min:0,max:t}),a=0;for(let{weight:t,value:i}of e)if(a+=t,r=e.length)return this.shuffle(e);if(r<=0)return[];let a,i,n=[...e],o=e.length,c=o-r;for(;o-- >c;)i=this.faker.number.int(o),a=n[i],n[i]=n[o],n[o]=a;return n.slice(c)}enumValue(e){let t=Object.keys(e).filter((e=>Number.isNaN(Number(e))));return e[this.arrayElement(t)]}rangeToNumber(e){return"number"==typeof e?e:this.faker.number.int(e)}multiple(e,t={}){let r=this.rangeToNumber(t.count??3);return r<=0?[]:Array.from({length:r},e)}},iC=class extends aC{constructor(e){super(e),this.faker=e}fake(e){let t=(e="string"==typeof e?e:this.arrayElement(e)).search(/{{[a-z]/),r=e.indexOf("}}",t);if(-1===t||-1===r)return e;let a=function(e,t,r=[t,t.rawDefinitions]){if(0===e.length)throw new ww("Eval expression cannot be empty.");if(0===r.length)throw new ww("Eval entrypoints cannot be empty.");let a=r,i=e;do{let r;i.startsWith("(")?[r,a]=Qw(i,a,e):[r,a]=Xw(i,a),i=i.substring(r),a=a.filter((e=>null!=e)).map((e=>Array.isArray(e)?t.helpers.arrayElement(e):e))}while(i.length>0&&a.length>0);if(0===a.length)throw new ww(`Cannot resolve expression '${e}'`);let n=a[0];return"function"==typeof n?n():n}(e.substring(t+2,r+2).replace("}}","").replace("{{",""),this.faker),i=String(a),n=e.substring(0,t)+i+e.substring(r+2);return this.fake(n)}},nC=class extends Cw{int(e={}){"number"==typeof e&&(e={max:e});let{min:t=0,max:r=Number.MAX_SAFE_INTEGER,multipleOf:a=1}=e;if(!Number.isInteger(a))throw new ww("multipleOf should be an integer.");if(a<=0)throw new ww("multipleOf should be greater than 0.");let i=Math.ceil(t/a),n=Math.floor(r/a);if(i===n)return i*a;if(n=t?`No suitable integer value between ${t} and ${r} found.`:`Max ${r} should be greater than min ${t}.`);let o=this.faker._randomizer.next(),c=n-i+1;return Math.floor(o*c+i)*a}float(e={}){"number"==typeof e&&(e={max:e});let{min:t=0,max:r=1,fractionDigits:a,multipleOf:i,multipleOf:n=(null==a?void 0:10**-a)}=e;if(r===t)return t;if(rthis.faker.helpers.arrayElement(e)),{count:t}).join("")}alpha(e={}){"number"==typeof e&&(e={length:e});let t=this.faker.helpers.rangeToNumber(e.length??1);if(t<=0)return"";let r,{casing:a="mixed"}=e,{exclude:i=[]}=e;switch("string"==typeof i&&(i=[...i]),a){case"upper":r=[...oC];break;case"lower":r=[...cC];break;case"mixed":r=[...cC,...oC]}return r=r.filter((e=>!i.includes(e))),this.fromCharacters(r,t)}alphanumeric(e={}){"number"==typeof e&&(e={length:e});let t=this.faker.helpers.rangeToNumber(e.length??1);if(t<=0)return"";let{casing:r="mixed"}=e,{exclude:a=[]}=e;"string"==typeof a&&(a=[...a]);let i=[...lC];switch(r){case"upper":i.push(...oC);break;case"lower":i.push(...cC);break;case"mixed":i.push(...cC,...oC)}return i=i.filter((e=>!a.includes(e))),this.fromCharacters(i,t)}binary(e={}){let{prefix:t="0b"}=e,r=t;return r+=this.fromCharacters(["0","1"],e.length??1),r}octal(e={}){let{prefix:t="0o"}=e,r=t;return r+=this.fromCharacters(["0","1","2","3","4","5","6","7"],e.length??1),r}hexadecimal(e={}){let{casing:t="mixed",prefix:r="0x"}=e,a=this.faker.helpers.rangeToNumber(e.length??1);if(a<=0)return r;let i=this.fromCharacters(["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f","A","B","C","D","E","F"],a);return"upper"===t?i=i.toUpperCase():"lower"===t&&(i=i.toLowerCase()),`${r}${i}`}numeric(e={}){"number"==typeof e&&(e={length:e});let t=this.faker.helpers.rangeToNumber(e.length??1);if(t<=0)return"";let{allowLeadingZeros:r=!0}=e,{exclude:a=[]}=e;"string"==typeof a&&(a=[...a]);let i=lC.filter((e=>!a.includes(e)));if(0===i.length||1===i.length&&!r&&"0"===i[0])throw new ww("Unable to generate numeric string, because all possible digits are excluded.");let n="";return!r&&!a.includes("0")&&(n+=this.faker.helpers.arrayElement(i.filter((e=>"0"!==e)))),n+=this.fromCharacters(i,t-n.length),n}sample(e=10){e=this.faker.helpers.rangeToNumber(e);let t={min:33,max:125},r="";for(;r.lengththis.faker.number.hex({min:0,max:15}))).replaceAll("y",(()=>this.faker.number.hex({min:8,max:11})))}nanoid(e=21){if((e=this.faker.helpers.rangeToNumber(e))<=0)return"";let t=[{value:()=>this.alphanumeric(1),weight:62},{value:()=>this.faker.helpers.arrayElement(["_","-"]),weight:2}],r="";for(;r.length","?","@","[","\\","]","^","_","`","{","|","}","~"],e)}},uC=class{_defaultRefDate=()=>new Date;get defaultRefDate(){return this._defaultRefDate}setDefaultRefDate(e=()=>new Date){this._defaultRefDate="function"==typeof e?e:()=>new Date(e)}_randomizer;datatype=new Jw(this);date=new Uw(this);helpers=new aC(this);number=new nC(this);string=new sC(this);constructor(e={}){let{randomizer:t=Kw()}=e;this._randomizer=t}seed(e=Math.ceil(Math.random()*Number.MAX_SAFE_INTEGER)){return this._randomizer.seed(e),e}};function hC(e){let t=`[@faker-js/faker]: ${e.deprecated} is deprecated`;e.since&&(t+=` since v${e.since}`),e.until&&(t+=` and will be removed in v${e.until}`),e.proposed&&(t+=`. Please use ${e.proposed} instead`),console.warn(`${t}.`)}new uC;var dC=class extends _w{dog(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.dog)}cat(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.cat)}snake(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.snake)}bear(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.bear)}lion(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.lion)}cetacean(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.cetacean)}horse(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.horse)}bird(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.bird)}cow(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.cow)}fish(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.fish)}crocodilia(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.crocodilia)}insect(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.insect)}rabbit(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.rabbit)}rodent(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.rodent)}type(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.type)}},pC={0:[[1999999,2],[2279999,3],[2289999,4],[3689999,3],[3699999,4],[6389999,3],[6397999,4],[6399999,7],[6449999,3],[6459999,7],[6479999,3],[6489999,7],[6549999,3],[6559999,4],[6999999,3],[8499999,4],[8999999,5],[9499999,6],[9999999,7]],1:[[99999,3],[299999,2],[349999,3],[399999,4],[499999,3],[699999,2],[999999,4],[3979999,3],[5499999,4],[6499999,5],[6799999,4],[6859999,5],[7139999,4],[7169999,3],[7319999,4],[7399999,7],[7749999,5],[7753999,7],[7763999,5],[7764999,7],[7769999,5],[7782999,7],[7899999,5],[7999999,4],[8004999,5],[8049999,5],[8379999,5],[8384999,7],[8671999,5],[8675999,4],[8697999,5],[9159999,6],[9165059,7],[9168699,6],[9169079,7],[9195999,6],[9196549,7],[9729999,6],[9877999,4],[9911499,6],[9911999,7],[9989899,6],[9999999,7]]},yC=class extends _w{department(){return this.faker.helpers.arrayElement(this.faker.definitions.commerce.department)}productName(){return`${this.productAdjective()} ${this.productMaterial()} ${this.product()}`}price(e={}){let{dec:t=2,max:r=1e3,min:a=1,symbol:i=""}=e;if(a<0||r<0)return`${i}0`;if(a===r)return`${i}${a.toFixed(t)}`;let n=this.faker.number.float({min:a,max:r,fractionDigits:t});if(0===t)return`${i}${n.toFixed(t)}`;let o=.1**t,c=n-n*10**t%10*o+this.faker.helpers.weightedArrayElement([{weight:5,value:9},{weight:3,value:5},{weight:1,value:0},{weight:1,value:this.faker.number.int({min:0,max:9})}])*o;return a<=c&&c<=r?`${i}${c.toFixed(t)}`:`${i}${n.toFixed(t)}`}productAdjective(){return this.faker.helpers.arrayElement(this.faker.definitions.commerce.product_name.adjective)}productMaterial(){return this.faker.helpers.arrayElement(this.faker.definitions.commerce.product_name.material)}product(){return this.faker.helpers.arrayElement(this.faker.definitions.commerce.product_name.product)}productDescription(){return this.faker.helpers.arrayElement(this.faker.definitions.commerce.product_description)}isbn(e={}){"number"==typeof e&&(e={variant:e});let{variant:t=13,separator:r="-"}=e,[a,i]=this.faker.helpers.objectEntry(pC),n=this.faker.string.numeric(8),o=Number.parseInt(n.slice(0,-1)),c=i.find((([e])=>o<=e))?.[1];if(!c)throw new ww(`Unable to find a registrant length for the group ${a}`);let l=["978",a,n.slice(0,c),n.slice(c)];10===t&&l.shift();let s=l.join(""),u=0;for(let e=0;e{let t=0;for(let r of e)t=(10*t+ +r)%97;return t},pattern10:["01","02","03","04","05","06","07","08","09"],pattern100:["001","002","003","004","005","006","007","008","009"],toDigitString:e=>e.replaceAll(/[A-Z]/gi,(e=>String((e.toUpperCase().codePointAt(0)??Number.NaN)-55)))},bC=gC;var vC=class extends _w{accountNumber(e={}){"number"==typeof e&&(e={length:e});let{length:t=8}=e;return this.faker.string.numeric({length:t,allowLeadingZeros:!0})}accountName(){return[this.faker.helpers.arrayElement(this.faker.definitions.finance.account_type),"Account"].join(" ")}routingNumber(){let e=this.faker.string.numeric({length:8,allowLeadingZeros:!0}),t=0;for(let r=0;re.country===t)):this.faker.helpers.arrayElement(bC.formats);if(!a)throw new ww(`Country code ${t} not supported.`);let i="",n=0;for(let e of a.bban){let t=e.count;for(n+=e.count;t>0;)"a"===e.type?i+=this.faker.helpers.arrayElement(bC.alpha):"c"===e.type?this.faker.datatype.boolean(.8)?i+=this.faker.number.int(9):i+=this.faker.helpers.arrayElement(bC.alpha):t>=3&&this.faker.datatype.boolean(.3)?this.faker.datatype.boolean()?(i+=this.faker.helpers.arrayElement(bC.pattern100),t-=2):(i+=this.faker.helpers.arrayElement(bC.pattern10),t--):i+=this.faker.number.int(9),t--;i=i.substring(0,n)}let o=98-bC.mod97(bC.toDigitString(`${i}${a.country}00`));o<10&&(o=`0${o}`);let c=`${a.country}${o}${i}`;return r?function(e){let t="";for(let r=0;re.split(" ").map((e=>e.charAt(0).toUpperCase()+e.slice(1))).join(" ");return this.faker.datatype.boolean()?e(this.faker.helpers.fake(this.faker.definitions.food.dish_pattern)):e(this.faker.helpers.arrayElement(this.faker.definitions.food.dish))}ethnicCategory(){return this.faker.helpers.arrayElement(this.faker.definitions.food.ethnic_category)}fruit(){return this.faker.helpers.arrayElement(this.faker.definitions.food.fruit)}ingredient(){return this.faker.helpers.arrayElement(this.faker.definitions.food.ingredient)}meat(){return this.faker.helpers.arrayElement(this.faker.definitions.food.meat)}spice(){return this.faker.helpers.arrayElement(this.faker.definitions.food.spice)}vegetable(){return this.faker.helpers.arrayElement(this.faker.definitions.food.vegetable)}},kC=class extends _w{branch(){return`${this.faker.hacker.noun().replace(" ","-")}-${this.faker.hacker.verb().replace(" ","-")}`}commitEntry(e={}){let{merge:t=this.faker.datatype.boolean({probability:.2}),eol:r="CRLF",refDate:a}=e,i=[`commit ${this.faker.git.commitSha()}`];t&&i.push(`Merge: ${this.commitSha({length:7})} ${this.commitSha({length:7})}`);let n=this.faker.person.firstName(),o=this.faker.person.lastName(),c=this.faker.person.fullName({firstName:n,lastName:o}),l=this.faker.internet.userName({firstName:n,lastName:o}),s=this.faker.helpers.arrayElement([c,l]),u=this.faker.internet.email({firstName:n,lastName:o});s=s.replaceAll(/^[.,:;"\\']|[<>\n]|[.,:;"\\']$/g,""),i.push(`Author: ${s} <${u}>`,`Date: ${this.commitDate({refDate:a})}`,"",`${" ".repeat(4)}${this.commitMessage()}`,"");let h="CRLF"===r?"\r\n":"\n";return i.join(h)}commitMessage(){return`${this.faker.hacker.verb()} ${this.faker.hacker.adjective()} ${this.faker.hacker.noun()}`}commitDate(e={}){let{refDate:t=this.faker.defaultRefDate()}=e,r=this.faker.date.recent({days:1,refDate:t}),a=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"][r.getUTCDay()],i=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"][r.getUTCMonth()],n=r.getUTCDate(),o=r.getUTCHours().toString().padStart(2,"0"),c=r.getUTCMinutes().toString().padStart(2,"0"),l=r.getUTCSeconds().toString().padStart(2,"0"),s=r.getUTCFullYear(),u=this.faker.number.int({min:-11,max:12});return`${a} ${i} ${n} ${o}:${c}:${l} ${s} ${u>=0?"+":"-"}${Math.abs(u).toString().padStart(2,"0")}00`}commitSha(e={}){let{length:t=40}=e;return this.faker.string.hexadecimal({length:t,casing:"lower",prefix:""})}},wC=class extends _w{abbreviation(){return this.faker.helpers.arrayElement(this.faker.definitions.hacker.abbreviation)}adjective(){return this.faker.helpers.arrayElement(this.faker.definitions.hacker.adjective)}noun(){return this.faker.helpers.arrayElement(this.faker.definitions.hacker.noun)}verb(){return this.faker.helpers.arrayElement(this.faker.definitions.hacker.verb)}ingverb(){return this.faker.helpers.arrayElement(this.faker.definitions.hacker.ingverb)}phrase(){let e={abbreviation:this.abbreviation,adjective:this.adjective,ingverb:this.ingverb,noun:this.noun,verb:this.verb},t=this.faker.helpers.arrayElement(this.faker.definitions.hacker.phrase);return this.faker.helpers.mustache(t,e)}},CC=typeof Buffer>"u"?e=>{let t=(new TextEncoder).encode(e),r=Array.from(t,(e=>String.fromCodePoint(e))).join("");return btoa(r)}:e=>Buffer.from(e).toString("base64"),_C=class extends _w{avatar(){return this.avatarGitHub()}avatarGitHub(){return`https://avatars.githubusercontent.com/u/${this.faker.number.int(1e8)}`}avatarLegacy(){return hC({deprecated:"faker.image.avatarLegacy()",proposed:"faker.image.avatar()",since:"9.0.2",until:"10.0.0"}),`https://cloudflare-ipfs.com/ipfs/Qmd3W5DuhgHirLHGVixi6V76LhCkZUz6pnFt5AJBiyvHye/avatar/${this.faker.number.int(1249)}.jpg`}url(e={}){let{width:t=this.faker.number.int({min:1,max:3999}),height:r=this.faker.number.int({min:1,max:3999})}=e;return this.faker.helpers.arrayElement([this.urlLoremFlickr,({width:e,height:t})=>this.urlPicsumPhotos({width:e,height:t,grayscale:!1,blur:0})])({width:t,height:r})}urlLoremFlickr(e={}){let{width:t=this.faker.number.int({min:1,max:3999}),height:r=this.faker.number.int({min:1,max:3999}),category:a}=e;return`https://loremflickr.com/${t}/${r}${null==a?"":`/${a}`}?lock=${this.faker.number.int()}`}urlPicsumPhotos(e={}){let{width:t=this.faker.number.int({min:1,max:3999}),height:r=this.faker.number.int({min:1,max:3999}),grayscale:a=this.faker.datatype.boolean(),blur:i=this.faker.number.int({max:10})}=e,n=`https://picsum.photos/seed/${this.faker.string.alphanumeric({length:{min:5,max:10}})}/${t}/${r}`,o="number"==typeof i&&i>=1&&i<=10;return(a||o)&&(n+="?",a&&(n+="grayscale"),a&&o&&(n+="&"),o&&(n+=`blur=${i}`)),n}urlPlaceholder(e={}){let{width:t=this.faker.number.int({min:1,max:3999}),height:r=this.faker.number.int({min:1,max:3999}),backgroundColor:a=this.faker.color.rgb({format:"hex",prefix:""}),textColor:i=this.faker.color.rgb({format:"hex",prefix:""}),format:n=this.faker.helpers.arrayElement(["gif","jpeg","jpg","png","webp"]),text:o=this.faker.lorem.words()}=e,c="https://via.placeholder.com";return c+=`/${t}`,c+=`x${r}`,c+=`/${a}`,c+=`/${i}`,c+=`.${n}`,c+=`?text=${encodeURIComponent(o)}`,c}dataUri(e={}){let{width:t=this.faker.number.int({min:1,max:3999}),height:r=this.faker.number.int({min:1,max:3999}),color:a=this.faker.color.rgb(),type:i=this.faker.helpers.arrayElements(["svg-uri","svg-base64"])}=e,n=`${t}x${r}`;return"svg-uri"===i?`data:image/svg+xml;charset=UTF-8,${encodeURIComponent(n)}`:`data:image/svg+xml;base64,${CC(n)}`}},SC=Object.fromEntries([["А","A"],["а","a"],["Б","B"],["б","b"],["В","V"],["в","v"],["Г","G"],["г","g"],["Д","D"],["д","d"],["ъе","ye"],["Ъе","Ye"],["ъЕ","yE"],["ЪЕ","YE"],["Е","E"],["е","e"],["Ё","Yo"],["ё","yo"],["Ж","Zh"],["ж","zh"],["З","Z"],["з","z"],["И","I"],["и","i"],["ый","iy"],["Ый","Iy"],["ЫЙ","IY"],["ыЙ","iY"],["Й","Y"],["й","y"],["К","K"],["к","k"],["Л","L"],["л","l"],["М","M"],["м","m"],["Н","N"],["н","n"],["О","O"],["о","o"],["П","P"],["п","p"],["Р","R"],["р","r"],["С","S"],["с","s"],["Т","T"],["т","t"],["У","U"],["у","u"],["Ф","F"],["ф","f"],["Х","Kh"],["х","kh"],["Ц","Ts"],["ц","ts"],["Ч","Ch"],["ч","ch"],["Ш","Sh"],["ш","sh"],["Щ","Sch"],["щ","sch"],["Ъ",""],["ъ",""],["Ы","Y"],["ы","y"],["Ь",""],["ь",""],["Э","E"],["э","e"],["Ю","Yu"],["ю","yu"],["Я","Ya"],["я","ya"]]),AC=Object.fromEntries([["α","a"],["β","v"],["γ","g"],["δ","d"],["ε","e"],["ζ","z"],["η","i"],["θ","th"],["ι","i"],["κ","k"],["λ","l"],["μ","m"],["ν","n"],["ξ","ks"],["ο","o"],["π","p"],["ρ","r"],["σ","s"],["τ","t"],["υ","y"],["φ","f"],["χ","x"],["ψ","ps"],["ω","o"],["ά","a"],["έ","e"],["ί","i"],["ό","o"],["ύ","y"],["ή","i"],["ώ","o"],["ς","s"],["ϊ","i"],["ΰ","y"],["ϋ","y"],["ΐ","i"],["Α","A"],["Β","B"],["Γ","G"],["Δ","D"],["Ε","E"],["Ζ","Z"],["Η","I"],["Θ","TH"],["Ι","I"],["Κ","K"],["Λ","L"],["Μ","M"],["Ν","N"],["Ξ","KS"],["Ο","O"],["Π","P"],["Ρ","R"],["Σ","S"],["Τ","T"],["Υ","Y"],["Φ","F"],["Χ","X"],["Ψ","PS"],["Ω","O"],["Ά","A"],["Έ","E"],["Ί","I"],["Ό","O"],["Ύ","Y"],["Ή","I"],["Ώ","O"],["Ϊ","I"],["Ϋ","Y"]]),MC=Object.fromEntries([["ء","e"],["آ","a"],["أ","a"],["ؤ","w"],["إ","i"],["ئ","y"],["ا","a"],["ب","b"],["ة","t"],["ت","t"],["ث","th"],["ج","j"],["ح","h"],["خ","kh"],["د","d"],["ذ","dh"],["ر","r"],["ز","z"],["س","s"],["ش","sh"],["ص","s"],["ض","d"],["ط","t"],["ظ","z"],["ع","e"],["غ","gh"],["ـ","_"],["ف","f"],["ق","q"],["ك","k"],["ل","l"],["م","m"],["ن","n"],["ه","h"],["و","w"],["ى","a"],["ي","y"],["َ‎","a"],["ُ","u"],["ِ‎","i"]]),TC=Object.fromEntries([["ա","a"],["Ա","A"],["բ","b"],["Բ","B"],["գ","g"],["Գ","G"],["դ","d"],["Դ","D"],["ե","ye"],["Ե","Ye"],["զ","z"],["Զ","Z"],["է","e"],["Է","E"],["ը","y"],["Ը","Y"],["թ","t"],["Թ","T"],["ժ","zh"],["Ժ","Zh"],["ի","i"],["Ի","I"],["լ","l"],["Լ","L"],["խ","kh"],["Խ","Kh"],["ծ","ts"],["Ծ","Ts"],["կ","k"],["Կ","K"],["հ","h"],["Հ","H"],["ձ","dz"],["Ձ","Dz"],["ղ","gh"],["Ղ","Gh"],["ճ","tch"],["Ճ","Tch"],["մ","m"],["Մ","M"],["յ","y"],["Յ","Y"],["ն","n"],["Ն","N"],["շ","sh"],["Շ","Sh"],["ո","vo"],["Ո","Vo"],["չ","ch"],["Չ","Ch"],["պ","p"],["Պ","P"],["ջ","j"],["Ջ","J"],["ռ","r"],["Ռ","R"],["ս","s"],["Ս","S"],["վ","v"],["Վ","V"],["տ","t"],["Տ","T"],["ր","r"],["Ր","R"],["ց","c"],["Ց","C"],["ու","u"],["ՈՒ","U"],["Ու","U"],["փ","p"],["Փ","P"],["ք","q"],["Ք","Q"],["օ","o"],["Օ","O"],["ֆ","f"],["Ֆ","F"],["և","yev"]]),BC={...SC,...AC,...MC,...Object.fromEntries([["چ","ch"],["ک","k"],["گ","g"],["پ","p"],["ژ","zh"],["ی","y"]]),...TC,...Object.fromEntries([["א","a"],["ב","b"],["ג","g"],["ד","d"],["ה","h"],["ו","v"],["ז","z"],["ח","ch"],["ט","t"],["י","y"],["כ","k"],["ך","kh"],["ל","l"],["ם","m"],["מ","m"],["ן","n"],["נ","n"],["ס","s"],["ע","a"],["פ","f"],["ף","ph"],["צ","ts"],["ץ","ts"],["ק","k"],["ר","r"],["ש","sh"],["ת","t"],["ו","v"]])};function LC(e){let t=()=>e.helpers.arrayElement(["AB","AF","AN","AR","AS","AZ","BE","BG","BN","BO","BR","BS","CA","CE","CO","CS","CU","CY","DA","DE","EL","EN","EO","ES","ET","EU","FA","FI","FJ","FO","FR","FY","GA","GD","GL","GV","HE","HI","HR","HT","HU","HY","ID","IS","IT","JA","JV","KA","KG","KO","KU","KW","KY","LA","LB","LI","LN","LT","LV","MG","MK","MN","MO","MS","MT","MY","NB","NE","NL","NN","NO","OC","PL","PT","RM","RO","RU","SC","SE","SK","SL","SO","SQ","SR","SV","SW","TK","TR","TY","UK","UR","UZ","VI","VO","YI","ZH"]),r=t=>e.helpers.arrayElement({lin:["i686","x86_64"],mac:["Intel","PPC","U; Intel","U; PPC"],win:["","WOW64","Win64; x64"]}[t]),a={net:()=>[e.number.int({min:1,max:4}),e.number.int(9),e.number.int({min:1e4,max:99999}),e.number.int(9)].join("."),nt:()=>[e.number.int({min:5,max:6}),e.number.int(3)].join("."),ie:()=>e.number.int({min:7,max:11}),trident:()=>[e.number.int({min:3,max:7}),e.number.int(1)].join("."),osx:t=>[10,e.number.int({min:5,max:10}),e.number.int(9)].join(t||"."),chrome:()=>[e.number.int({min:13,max:39}),0,e.number.int({min:800,max:899}),0].join("."),presto:()=>`2.9.${e.number.int({min:160,max:190})}`,presto2:()=>`${e.number.int({min:10,max:12})}.00`,safari:()=>[e.number.int({min:531,max:538}),e.number.int(2),e.number.int(2)].join(".")},i={firefox(t){let i=`${e.number.int({min:5,max:15})}${(t=>{let r="";for(let a=0;a=11?`Mozilla/5.0 (Windows NT 6.${e.number.int({min:1,max:3})}; Trident/7.0; ${e.datatype.boolean()?"Touch; ":""}rv:11.0) like Gecko`:`Mozilla/5.0 (compatible; MSIE ${t}.0; Windows NT ${a.nt()}; Trident/${a.trident()}${e.datatype.boolean()?`; .NET CLR ${a.net()}`:""})`},opera(i){let n=` Presto/${a.presto()} Version/${a.presto2()})`,o="win"===i?`(Windows NT ${a.nt()}; U; ${t()}${n}`:"lin"===i?`(X11; Linux ${r(i)}; U; ${t()}${n}`:`(Macintosh; Intel Mac OS X ${a.osx()} U; ${t()} Presto/${a.presto()} Version/${a.presto2()})`;return`Opera/${e.number.int({min:9,max:14})}.${e.number.int(99)} ${o}`},safari(i){let n=a.safari(),o=`${e.number.int({min:4,max:7})}.${e.number.int(1)}.${e.number.int(10)}`;return`Mozilla/5.0 ${"mac"===i?`(Macintosh; ${r("mac")} Mac OS X ${a.osx("_")} rv:${e.number.int({min:2,max:6})}.0; ${t()}) `:`(Windows; U; Windows NT ${a.nt()})`}AppleWebKit/${n} (KHTML, like Gecko) Version/${o} Safari/${n}`},chrome(e){let t=a.safari();return`Mozilla/5.0 ${"mac"===e?`(Macintosh; ${r("mac")} Mac OS X ${a.osx("_")}) `:"win"===e?`(Windows; U; Windows NT ${a.nt()})`:`(X11; Linux ${r(e)}`} AppleWebKit/${t} (KHTML, like Gecko) Chrome/${a.chrome()} Safari/${t}`}},[n,o]=(()=>{let t={chrome:["win","mac","lin"],firefox:["win","mac","lin"],opera:["win","mac","lin"],safari:["win","mac"],iexplorer:["win"]},r=e.helpers.objectKey(t);return[r,e.helpers.arrayElement(t[r])]})();return i[n](o)}var EC=class extends _w{email(e={}){let{firstName:t,lastName:r,provider:a=this.faker.helpers.arrayElement(this.faker.definitions.internet.free_email),allowSpecialCharacters:i=!1}=e,n=this.userName({firstName:t,lastName:r});if(n=n.replaceAll(/[^A-Za-z0-9._+-]+/g,""),n=n.substring(0,50),i){let e=[..."._-"],t=[...".!#$%&'*+-/=?^_`{|}~"];n=n.replace(this.faker.helpers.arrayElement(e),this.faker.helpers.arrayElement(t))}return n=n.replaceAll(/\.{2,}/g,"."),n=n.replace(/^\./,""),n=n.replace(/\.$/,""),`${n}@${a}`}exampleEmail(e={}){let{firstName:t,lastName:r,allowSpecialCharacters:a=!1}=e,i=this.faker.helpers.arrayElement(this.faker.definitions.internet.example_email);return this.email({firstName:t,lastName:r,provider:i,allowSpecialCharacters:a})}userName(e={}){let{firstName:t=this.faker.person.firstName(),lastName:r=this.faker.person.lastName(),lastName:a}=e,i=this.faker.helpers.arrayElement([".","_"]),n=this.faker.number.int(99),o=[()=>`${t}${i}${r}${n}`,()=>`${t}${i}${r}`];a||o.push((()=>`${t}${n}`));let c=this.faker.helpers.arrayElement(o)();return c=c.normalize("NFKD").replaceAll(/[\u0300-\u036F]/g,""),c=[...c].map((e=>{if(BC[e])return BC[e];let t=e.codePointAt(0)??Number.NaN;return t<128?e:t.toString(36)})).join(""),c=c.toString().replaceAll("'",""),c=c.replaceAll(" ",""),c}displayName(e={}){let{firstName:t=this.faker.person.firstName(),lastName:r=this.faker.person.lastName()}=e,a=this.faker.helpers.arrayElement([".","_"]),i=this.faker.number.int(99),n=[()=>`${t}${i}`,()=>`${t}${a}${r}`,()=>`${t}${a}${r}${i}`],o=this.faker.helpers.arrayElement(n)();return o=o.toString().replaceAll("'",""),o=o.replaceAll(" ",""),o}protocol(){return this.faker.helpers.arrayElement(["http","https"])}httpMethod(){return this.faker.helpers.arrayElement(["GET","POST","PUT","DELETE","PATCH"])}httpStatusCode(e={}){let{types:t=Object.keys(this.faker.definitions.internet.http_status_code)}=e,r=this.faker.helpers.arrayElement(t);return this.faker.helpers.arrayElement(this.faker.definitions.internet.http_status_code[r])}url(e={}){let{appendSlash:t=this.faker.datatype.boolean(),protocol:r="https"}=e;return`${r}://${this.domainName()}${t?"/":""}`}domainName(){return`${this.domainWord()}.${this.domainSuffix()}`}domainSuffix(){return this.faker.helpers.arrayElement(this.faker.definitions.internet.domain_suffix)}domainWord(){return this.faker.helpers.slugify(`${this.faker.word.adjective()}-${this.faker.word.noun()}`).toLowerCase()}ip(){return this.faker.datatype.boolean()?this.ipv4():this.ipv6()}ipv4(){return Array.from({length:4},(()=>this.faker.number.int(255))).join(".")}ipv6(){return Array.from({length:8},(()=>this.faker.string.hexadecimal({length:4,casing:"lower",prefix:""}))).join(":")}port(){return this.faker.number.int(65535)}userAgent(){return LC(this.faker)}color(e={}){let{redBase:t=0,greenBase:r=0,blueBase:a=0}=e,i=e=>Math.floor((this.faker.number.int(256)+e)/2).toString(16).padStart(2,"0");return`#${i(t)}${i(r)}${i(a)}`}mac(e={}){"string"==typeof e&&(e={separator:e});let t,{separator:r=":"}=e,a="";for([":","-",""].includes(r)||(r=":"),t=0;t<12;t++)a+=this.faker.number.hex(15),t%2==1&&11!==t&&(a+=r);return a}password(e={}){let t=/[aeiouAEIOU]$/,r=/[bcdfghjklmnpqrstvwxyzBCDFGHJKLMNPQRSTVWXYZ]$/,a=(e,i,n,o)=>{if(o.length>=e)return o;i&&(n=r.test(o)?t:r);let c=this.faker.number.int(94)+33,l=String.fromCodePoint(c);return i&&(l=l.toLowerCase()),n.test(l)?a(e,i,n,o+l):a(e,i,n,o)},{length:i=15,memorable:n=!1,pattern:o=/\w/,prefix:c=""}=e;return a(i,n,o,c)}emoji(e={}){let{types:t=Object.keys(this.faker.definitions.internet.emoji)}=e,r=this.faker.helpers.arrayElement(t);return this.faker.helpers.arrayElement(this.faker.definitions.internet.emoji[r])}},RC=class extends _w{zipCode(e={}){"string"==typeof e&&(e={format:e});let{state:t}=e;if(null!=t){let e=this.faker.definitions.location.postcode_by_state[t];if(null==e)throw new ww(`No zip code definition found for state "${t}"`);return this.faker.helpers.fake(e)}let{format:r=this.faker.definitions.location.postcode}=e;return"string"==typeof r&&(r=[r]),r=this.faker.helpers.arrayElement(r),this.faker.helpers.replaceSymbols(r)}city(){return this.faker.helpers.fake(this.faker.definitions.location.city_pattern)}buildingNumber(){return this.faker.helpers.arrayElement(this.faker.definitions.location.building_number).replaceAll(/#+/g,(e=>this.faker.string.numeric({length:e.length,allowLeadingZeros:!1})))}street(){return this.faker.helpers.fake(this.faker.definitions.location.street_pattern)}streetAddress(e={}){"boolean"==typeof e&&(e={useFullAddress:e});let{useFullAddress:t}=e,r=this.faker.definitions.location.street_address[t?"full":"normal"];return this.faker.helpers.fake(r)}secondaryAddress(){return this.faker.helpers.fake(this.faker.definitions.location.secondary_address).replaceAll(/#+/g,(e=>this.faker.string.numeric({length:e.length,allowLeadingZeros:!1})))}county(){return this.faker.helpers.arrayElement(this.faker.definitions.location.county)}country(){return this.faker.helpers.arrayElement(this.faker.definitions.location.country)}countryCode(e={}){"string"==typeof e&&(e={variant:e});let{variant:t="alpha-2"}=e,r=(()=>{switch(t){case"numeric":return"numeric";case"alpha-3":return"alpha3";case"alpha-2":return"alpha2"}})();return this.faker.helpers.arrayElement(this.faker.definitions.location.country_code)[r]}state(e={}){let{abbreviated:t=!1}=e,r=t?this.faker.definitions.location.state_abbr:this.faker.definitions.location.state;return this.faker.helpers.arrayElement(r)}latitude(e={}){let{max:t=90,min:r=-90,precision:a=4}=e;return this.faker.number.float({min:r,max:t,fractionDigits:a})}longitude(e={}){let{max:t=180,min:r=-180,precision:a=4}=e;return this.faker.number.float({max:t,min:r,fractionDigits:a})}direction(e={}){let{abbreviated:t=!1}=e;return t?this.faker.helpers.arrayElement([...this.faker.definitions.location.direction.cardinal_abbr,...this.faker.definitions.location.direction.ordinal_abbr]):this.faker.helpers.arrayElement([...this.faker.definitions.location.direction.cardinal,...this.faker.definitions.location.direction.ordinal])}cardinalDirection(e={}){let{abbreviated:t=!1}=e;return t?this.faker.helpers.arrayElement(this.faker.definitions.location.direction.cardinal_abbr):this.faker.helpers.arrayElement(this.faker.definitions.location.direction.cardinal)}ordinalDirection(e={}){let{abbreviated:t=!1}=e;return t?this.faker.helpers.arrayElement(this.faker.definitions.location.direction.ordinal_abbr):this.faker.helpers.arrayElement(this.faker.definitions.location.direction.ordinal)}nearbyGPSCoordinate(e={}){let{origin:t,radius:r=10,isMetric:a=!1}=e;if(null==t)return[this.latitude(),this.longitude()];let i=this.faker.number.float({max:2*Math.PI,fractionDigits:5}),n=a?r:1.60934*r,o=.995*this.faker.number.float({max:n,fractionDigits:3})/(4e4/360),c=[t[0]+Math.sin(i)*o,t[1]+Math.cos(i)*o];return c[0]=c[0]%180,(c[0]<-90||c[0]>90)&&(c[0]=180*Math.sign(c[0])-c[0],c[1]+=180),c[1]=(c[1]%360+540)%360-180,[c[0],c[1]]}timeZone(){return this.faker.helpers.arrayElement(this.faker.definitions.location.time_zone)}};var HC={fail:()=>{throw new ww("No words found that match the given length.")},closest:(e,t)=>{let r=function(e,t,r=e=>e){let a={};for(let i of e){let e=t(i);void 0===a[e]&&(a[e]=[]),a[e].push(r(i))}return a}(e,(e=>e.length)),a=Object.keys(r).map(Number),i=Math.min(...a),n=Math.max(...a),o=Math.min(t.min-i,n-t.max);return e.filter((e=>e.length===t.min-o||e.length===t.max+o))},shortest:e=>{let t=Math.min(...e.map((e=>e.length)));return e.filter((e=>e.length===t))},longest:e=>{let t=Math.max(...e.map((e=>e.length)));return e.filter((e=>e.length===t))},"any-length":e=>[...e]};function DC(e){let{wordList:t,length:r,strategy:a="any-length"}=e;if(r){let e="number"==typeof r?e=>e.length===r:e=>e.length>=r.min&&e.length<=r.max,i=t.filter(e);return i.length>0?i:"number"==typeof r?HC[a](t,{min:r,max:r}):HC[a](t,r)}return"shortest"===a||"longest"===a?HC[a](t):[...t]}var PC=class extends _w{word(e={}){let t="number"==typeof e?{length:e}:e;return this.faker.helpers.arrayElement(DC({...t,wordList:this.faker.definitions.lorem.word}))}words(e=3){return this.faker.helpers.multiple((()=>this.word()),{count:e}).join(" ")}sentence(e={min:3,max:10}){let t=this.words(e);return`${t.charAt(0).toUpperCase()+t.substring(1)}.`}slug(e=3){let t=this.words(e);return this.faker.helpers.slugify(t)}sentences(e={min:2,max:6},t=" "){return this.faker.helpers.multiple((()=>this.sentence()),{count:e}).join(t)}paragraph(e=3){return this.sentences(e)}paragraphs(e=3,t="\n"){return this.faker.helpers.multiple((()=>this.paragraph()),{count:e}).join(t)}text(){return this[this.faker.helpers.arrayElement(["sentence","sentences","paragraph","paragraphs","lines"])]()}lines(e={min:1,max:5}){return this.sentences(e,"\n")}},NC=class extends _w{album(){return this.faker.helpers.arrayElement(this.faker.definitions.music.album)}artist(){return this.faker.helpers.arrayElement(this.faker.definitions.music.artist)}genre(){return this.faker.helpers.arrayElement(this.faker.definitions.music.genre)}songName(){return this.faker.helpers.arrayElement(this.faker.definitions.music.song_name)}},GC=class extends _w{number(e={}){let{style:t="human"}=e,r=this.faker.definitions.phone_number.format[t];if(!r)throw new Error(`No definitions for ${t} in this locale`);let a=this.faker.helpers.arrayElement(r);return rC(this.faker,a)}imei(){return this.faker.helpers.replaceCreditCardSymbols("##-######-######-L","#")}},IC=class extends _w{chemicalElement(){return this.faker.helpers.arrayElement(this.faker.definitions.science.chemical_element)}unit(){return this.faker.helpers.arrayElement(this.faker.definitions.science.unit)}},WC=["video","audio","image","text","application"],FC=["application/pdf","audio/mpeg","audio/wav","image/png","image/jpeg","image/gif","video/mp4","video/mpeg","text/html"],zC=["en","wl","ww"],OC={index:"o",slot:"s",mac:"x",pci:"p"},KC=["SUN","MON","TUE","WED","THU","FRI","SAT"],JC=class extends _w{fileName(e={}){let{extensionCount:t=1}=e,r=this.faker.word.words().toLowerCase().replaceAll(/\W/g,"_"),a=this.faker.helpers.multiple((()=>this.fileExt()),{count:t}).join(".");return 0===a.length?r:`${r}.${a}`}commonFileName(e){return`${this.fileName({extensionCount:0})}.${e||this.commonFileExt()}`}mimeType(){let e=Object.keys(this.faker.definitions.system.mime_type);return this.faker.helpers.arrayElement(e)}commonFileType(){return this.faker.helpers.arrayElement(WC)}commonFileExt(){return this.fileExt(this.faker.helpers.arrayElement(FC))}fileType(){let e=this.faker.definitions.system.mime_type,t=new Set(Object.keys(e).map((e=>e.split("/")[0])));return this.faker.helpers.arrayElement([...t])}fileExt(e){let t=this.faker.definitions.system.mime_type;if("string"==typeof e)return this.faker.helpers.arrayElement(t[e].extensions);let r=new Set(Object.values(t).flatMap((({extensions:e})=>e)));return this.faker.helpers.arrayElement([...r])}directoryPath(){let e=this.faker.definitions.system.directory_path;return this.faker.helpers.arrayElement(e)}filePath(){return`${this.directoryPath()}/${this.fileName()}`}semver(){return[this.faker.number.int(9),this.faker.number.int(9),this.faker.number.int(9)].join(".")}networkInterface(e={}){let t,{interfaceType:r=this.faker.helpers.arrayElement(zC),interfaceSchema:a=this.faker.helpers.objectKey(OC)}=e,i="",n=()=>this.faker.string.numeric({allowLeadingZeros:!0});switch(a){case"index":t=n();break;case"slot":t=`${n()}${this.faker.helpers.maybe((()=>`f${n()}`))??""}${this.faker.helpers.maybe((()=>`d${n()}`))??""}`;break;case"mac":t=this.faker.internet.mac("");break;case"pci":i=this.faker.helpers.maybe((()=>`P${n()}`))??"",t=`${n()}s${n()}${this.faker.helpers.maybe((()=>`f${n()}`))??""}${this.faker.helpers.maybe((()=>`d${n()}`))??""}`}return`${i}${r}${OC[a]}${t}`}cron(e={}){let{includeYear:t=!1,includeNonStandard:r=!1}=e,a=[this.faker.number.int(59),"*"],i=[this.faker.number.int(23),"*"],n=[this.faker.number.int({min:1,max:31}),"*","?"],o=[this.faker.number.int({min:1,max:12}),"*"],c=[this.faker.number.int(6),this.faker.helpers.arrayElement(KC),"*","?"],l=[this.faker.number.int({min:1970,max:2099}),"*"],s=this.faker.helpers.arrayElement(a),u=this.faker.helpers.arrayElement(i),h=this.faker.helpers.arrayElement(n),d=this.faker.helpers.arrayElement(o),p=this.faker.helpers.arrayElement(c),y=this.faker.helpers.arrayElement(l),f=`${s} ${u} ${h} ${d} ${p}`;t&&(f+=` ${y}`);return!r||this.faker.datatype.boolean()?f:this.faker.helpers.arrayElement(["@annually","@daily","@hourly","@monthly","@reboot","@weekly","@yearly"])}},VC=class extends _w{vehicle(){return`${this.manufacturer()} ${this.model()}`}manufacturer(){return this.faker.helpers.arrayElement(this.faker.definitions.vehicle.manufacturer)}model(){return this.faker.helpers.arrayElement(this.faker.definitions.vehicle.model)}type(){return this.faker.helpers.arrayElement(this.faker.definitions.vehicle.type)}fuel(){return this.faker.helpers.arrayElement(this.faker.definitions.vehicle.fuel)}vin(){let e=["o","i","q","O","I","Q"];return`${this.faker.string.alphanumeric({length:10,casing:"upper",exclude:e})}${this.faker.string.alpha({length:1,casing:"upper",exclude:e})}${this.faker.string.alphanumeric({length:1,casing:"upper",exclude:e})}${this.faker.string.numeric({length:5,allowLeadingZeros:!0})}`}color(){return this.faker.color.human()}vrm(){return`${this.faker.string.alpha({length:2,casing:"upper"})}${this.faker.string.numeric({length:2,allowLeadingZeros:!0})}${this.faker.string.alpha({length:3,casing:"upper"})}`}bicycle(){return this.faker.helpers.arrayElement(this.faker.definitions.vehicle.bicycle_type)}},jC=class extends _w{adjective(e={}){let t="number"==typeof e?{length:e}:e;return this.faker.helpers.arrayElement(DC({...t,wordList:this.faker.definitions.word.adjective}))}adverb(e={}){let t="number"==typeof e?{length:e}:e;return this.faker.helpers.arrayElement(DC({...t,wordList:this.faker.definitions.word.adverb}))}conjunction(e={}){let t="number"==typeof e?{length:e}:e;return this.faker.helpers.arrayElement(DC({...t,wordList:this.faker.definitions.word.conjunction}))}interjection(e={}){let t="number"==typeof e?{length:e}:e;return this.faker.helpers.arrayElement(DC({...t,wordList:this.faker.definitions.word.interjection}))}noun(e={}){let t="number"==typeof e?{length:e}:e;return this.faker.helpers.arrayElement(DC({...t,wordList:this.faker.definitions.word.noun}))}preposition(e={}){let t="number"==typeof e?{length:e}:e;return this.faker.helpers.arrayElement(DC({...t,wordList:this.faker.definitions.word.preposition}))}verb(e={}){let t="number"==typeof e?{length:e}:e;return this.faker.helpers.arrayElement(DC({...t,wordList:this.faker.definitions.word.verb}))}sample(e={}){let t=this.faker.helpers.shuffle([this.adjective,this.adverb,this.conjunction,this.interjection,this.noun,this.preposition,this.verb]);for(let r of t)try{return r(e)}catch{continue}throw new ww("No matching word data available for the current locale")}words(e={}){"number"==typeof e&&(e={count:e});let{count:t={min:1,max:3}}=e;return this.faker.helpers.multiple((()=>this.sample()),{count:t}).join(" ")}},YC=["Africa/Abidjan","Africa/Accra","Africa/Addis_Ababa","Africa/Algiers","Africa/Asmara","Africa/Bamako","Africa/Bangui","Africa/Banjul","Africa/Bissau","Africa/Blantyre","Africa/Brazzaville","Africa/Bujumbura","Africa/Cairo","Africa/Casablanca","Africa/Ceuta","Africa/Conakry","Africa/Dakar","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Douala","Africa/El_Aaiun","Africa/Freetown","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Kigali","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Lome","Africa/Luanda","Africa/Lubumbashi","Africa/Lusaka","Africa/Malabo","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Africa/Mogadishu","Africa/Monrovia","Africa/Nairobi","Africa/Ndjamena","Africa/Niamey","Africa/Nouakchott","Africa/Ouagadougou","Africa/Porto-Novo","Africa/Sao_Tome","Africa/Tripoli","Africa/Tunis","Africa/Windhoek","America/Adak","America/Anchorage","America/Anguilla","America/Antigua","America/Araguaina","America/Argentina/Buenos_Aires","America/Argentina/Catamarca","America/Argentina/Cordoba","America/Argentina/Jujuy","America/Argentina/La_Rioja","America/Argentina/Mendoza","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Aruba","America/Asuncion","America/Atikokan","America/Bahia","America/Bahia_Banderas","America/Barbados","America/Belem","America/Belize","America/Blanc-Sablon","America/Boa_Vista","America/Bogota","America/Boise","America/Cambridge_Bay","America/Campo_Grande","America/Cancun","America/Caracas","America/Cayenne","America/Cayman","America/Chicago","America/Chihuahua","America/Ciudad_Juarez","America/Costa_Rica","America/Creston","America/Cuiaba","America/Curacao","America/Danmarkshavn","America/Dawson","America/Dawson_Creek","America/Denver","America/Detroit","America/Dominica","America/Edmonton","America/Eirunepe","America/El_Salvador","America/Fort_Nelson","America/Fortaleza","America/Glace_Bay","America/Goose_Bay","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guatemala","America/Guayaquil","America/Guyana","America/Halifax","America/Havana","America/Hermosillo","America/Indiana/Indianapolis","America/Indiana/Knox","America/Indiana/Marengo","America/Indiana/Petersburg","America/Indiana/Tell_City","America/Indiana/Vevay","America/Indiana/Vincennes","America/Indiana/Winamac","America/Inuvik","America/Iqaluit","America/Jamaica","America/Juneau","America/Kentucky/Louisville","America/Kentucky/Monticello","America/Kralendijk","America/La_Paz","America/Lima","America/Los_Angeles","America/Lower_Princes","America/Maceio","America/Managua","America/Manaus","America/Marigot","America/Martinique","America/Matamoros","America/Mazatlan","America/Menominee","America/Merida","America/Metlakatla","America/Mexico_City","America/Miquelon","America/Moncton","America/Monterrey","America/Montevideo","America/Montserrat","America/Nassau","America/New_York","America/Nome","America/Noronha","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Nuuk","America/Ojinaga","America/Panama","America/Paramaribo","America/Phoenix","America/Port-au-Prince","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Punta_Arenas","America/Rankin_Inlet","America/Recife","America/Regina","America/Resolute","America/Rio_Branco","America/Santarem","America/Santiago","America/Santo_Domingo","America/Sao_Paulo","America/Scoresbysund","America/Sitka","America/St_Barthelemy","America/St_Johns","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Swift_Current","America/Tegucigalpa","America/Thule","America/Tijuana","America/Toronto","America/Tortola","America/Vancouver","America/Whitehorse","America/Winnipeg","America/Yakutat","America/Yellowknife","Antarctica/Casey","Antarctica/Davis","Antarctica/DumontDUrville","Antarctica/Macquarie","Antarctica/Mawson","Antarctica/McMurdo","Antarctica/Palmer","Antarctica/Rothera","Antarctica/Syowa","Antarctica/Troll","Antarctica/Vostok","Arctic/Longyearbyen","Asia/Aden","Asia/Almaty","Asia/Amman","Asia/Anadyr","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Atyrau","Asia/Baghdad","Asia/Bahrain","Asia/Baku","Asia/Bangkok","Asia/Barnaul","Asia/Beirut","Asia/Bishkek","Asia/Brunei","Asia/Chita","Asia/Choibalsan","Asia/Colombo","Asia/Damascus","Asia/Dhaka","Asia/Dili","Asia/Dubai","Asia/Dushanbe","Asia/Famagusta","Asia/Gaza","Asia/Hebron","Asia/Ho_Chi_Minh","Asia/Hong_Kong","Asia/Hovd","Asia/Irkutsk","Asia/Jakarta","Asia/Jayapura","Asia/Jerusalem","Asia/Kabul","Asia/Kamchatka","Asia/Karachi","Asia/Kathmandu","Asia/Khandyga","Asia/Kolkata","Asia/Krasnoyarsk","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Kuwait","Asia/Macau","Asia/Magadan","Asia/Makassar","Asia/Manila","Asia/Muscat","Asia/Nicosia","Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk","Asia/Oral","Asia/Phnom_Penh","Asia/Pontianak","Asia/Pyongyang","Asia/Qatar","Asia/Qostanay","Asia/Qyzylorda","Asia/Riyadh","Asia/Sakhalin","Asia/Samarkand","Asia/Seoul","Asia/Shanghai","Asia/Singapore","Asia/Srednekolymsk","Asia/Taipei","Asia/Tashkent","Asia/Tbilisi","Asia/Tehran","Asia/Thimphu","Asia/Tokyo","Asia/Tomsk","Asia/Ulaanbaatar","Asia/Urumqi","Asia/Ust-Nera","Asia/Vientiane","Asia/Vladivostok","Asia/Yakutsk","Asia/Yangon","Asia/Yekaterinburg","Asia/Yerevan","Atlantic/Azores","Atlantic/Bermuda","Atlantic/Canary","Atlantic/Cape_Verde","Atlantic/Faroe","Atlantic/Madeira","Atlantic/Reykjavik","Atlantic/South_Georgia","Atlantic/St_Helena","Atlantic/Stanley","Australia/Adelaide","Australia/Brisbane","Australia/Broken_Hill","Australia/Darwin","Australia/Eucla","Australia/Hobart","Australia/Lindeman","Australia/Lord_Howe","Australia/Melbourne","Australia/Perth","Australia/Sydney","Europe/Amsterdam","Europe/Andorra","Europe/Astrakhan","Europe/Athens","Europe/Belgrade","Europe/Berlin","Europe/Bratislava","Europe/Brussels","Europe/Bucharest","Europe/Budapest","Europe/Busingen","Europe/Chisinau","Europe/Copenhagen","Europe/Dublin","Europe/Gibraltar","Europe/Guernsey","Europe/Helsinki","Europe/Isle_of_Man","Europe/Istanbul","Europe/Jersey","Europe/Kaliningrad","Europe/Kirov","Europe/Kyiv","Europe/Lisbon","Europe/Ljubljana","Europe/London","Europe/Luxembourg","Europe/Madrid","Europe/Malta","Europe/Mariehamn","Europe/Minsk","Europe/Monaco","Europe/Moscow","Europe/Oslo","Europe/Paris","Europe/Podgorica","Europe/Prague","Europe/Riga","Europe/Rome","Europe/Samara","Europe/San_Marino","Europe/Sarajevo","Europe/Saratov","Europe/Simferopol","Europe/Skopje","Europe/Sofia","Europe/Stockholm","Europe/Tallinn","Europe/Tirane","Europe/Ulyanovsk","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Vilnius","Europe/Volgograd","Europe/Warsaw","Europe/Zagreb","Europe/Zurich","Indian/Antananarivo","Indian/Chagos","Indian/Christmas","Indian/Cocos","Indian/Comoro","Indian/Kerguelen","Indian/Mahe","Indian/Maldives","Indian/Mauritius","Indian/Mayotte","Indian/Reunion","Pacific/Apia","Pacific/Auckland","Pacific/Bougainville","Pacific/Chatham","Pacific/Chuuk","Pacific/Easter","Pacific/Efate","Pacific/Fakaofo","Pacific/Fiji","Pacific/Funafuti","Pacific/Galapagos","Pacific/Gambier","Pacific/Guadalcanal","Pacific/Guam","Pacific/Honolulu","Pacific/Kanton","Pacific/Kiritimati","Pacific/Kosrae","Pacific/Kwajalein","Pacific/Majuro","Pacific/Marquesas","Pacific/Midway","Pacific/Nauru","Pacific/Niue","Pacific/Norfolk","Pacific/Noumea","Pacific/Pago_Pago","Pacific/Palau","Pacific/Pitcairn","Pacific/Pohnpei","Pacific/Port_Moresby","Pacific/Rarotonga","Pacific/Saipan","Pacific/Tahiti","Pacific/Tarawa","Pacific/Tongatapu","Pacific/Wake","Pacific/Wallis"],$C={color:{space:["Academy Color Encoding System (ACES)","Adobe RGB","Adobe Wide Gamut RGB","British Standard Colour (BS)","CIE 1931 XYZ","CIELAB","CIELUV","CIEUVW","CMY","CMYK","DCI-P3","Display-P3","Federal Standard 595C","HKS","HSL","HSLA","HSLuv","HSV","HWB","LCh","LMS","Munsell Color System","Natural Color System (NSC)","Pantone Matching System (PMS)","ProPhoto RGB Color Space","RAL","RG","RGBA","RGK","Rec. 2020","Rec. 2100","Rec. 601","Rec. 709","Uniform Color Spaces (UCSs)","YDbDr","YIQ","YPbPr","sRGB","sYCC","scRGB","xvYCC"]},database:{collation:["ascii_bin","ascii_general_ci","cp1250_bin","cp1250_general_ci","utf8_bin","utf8_general_ci","utf8_unicode_ci"],engine:["ARCHIVE","BLACKHOLE","CSV","InnoDB","MEMORY","MyISAM"],type:["bigint","binary","bit","blob","boolean","date","datetime","decimal","double","enum","float","geometry","int","mediumint","point","real","serial","set","smallint","text","time","timestamp","tinyint","varchar"]},date:{time_zone:YC},hacker:{abbreviation:["ADP","AGP","AI","API","ASCII","CLI","COM","CSS","DNS","DRAM","EXE","FTP","GB","HDD","HEX","HTTP","IB","IP","JBOD","JSON","OCR","PCI","PNG","RAM","RSS","SAS","SCSI","SDD","SMS","SMTP","SQL","SSD","SSL","TCP","THX","TLS","UDP","USB","UTF8","VGA","XML","XSS"]},internet:{emoji:{smiley:["😀","😃","😄","😁","😆","😅","🤣","😂","🙂","🙃","😉","😊","😇","🥰","😍","🤩","😘","😗","☺️","😚","😙","🥲","😋","😛","😜","🤪","😝","🤑","🤗","🤭","🤫","🤔","🤐","🤨","😐","😑","😶","😶‍🌫️","😏","😒","🙄","😬","😮‍💨","🤥","😌","😔","😪","🤤","😴","😷","🤒","🤕","🤢","🤮","🤧","🥵","🥶","🥴","😵","😵‍💫","🤯","🤠","🥳","🥸","😎","🤓","🧐","😕","😟","🙁","☹️","😮","😯","😲","😳","🥺","😦","😧","😨","😰","😥","😢","😭","😱","😖","😣","😞","😓","😩","😫","🥱","😤","😡","😠","🤬","😈","👿","💀","☠️","💩","🤡","👹","👺","👻","👽","👾","🤖","😺","😸","😹","😻","😼","😽","🙀","😿","😾","🙈","🙉","🙊","💋","💌","💘","💝","💖","💗","💓","💞","💕","💟","❣️","💔","❤️‍🔥","❤️‍🩹","❤️","🧡","💛","💚","💙","💜","🤎","🖤","🤍","💯","💢","💥","💫","💦","💨","🕳️","💣","💬","👁️‍🗨️","🗨️","🗯️","💭","💤"],body:["👋","👋🏻","👋🏼","👋🏽","👋🏾","👋🏿","🤚","🤚🏻","🤚🏼","🤚🏽","🤚🏾","🤚🏿","🖐️","🖐🏻","🖐🏼","🖐🏽","🖐🏾","🖐🏿","✋","✋🏻","✋🏼","✋🏽","✋🏾","✋🏿","🖖","🖖🏻","🖖🏼","🖖🏽","🖖🏾","🖖🏿","👌","👌🏻","👌🏼","👌🏽","👌🏾","👌🏿","🤌","🤌🏻","🤌🏼","🤌🏽","🤌🏾","🤌🏿","🤏","🤏🏻","🤏🏼","🤏🏽","🤏🏾","🤏🏿","✌️","✌🏻","✌🏼","✌🏽","✌🏾","✌🏿","🤞","🤞🏻","🤞🏼","🤞🏽","🤞🏾","🤞🏿","🤟","🤟🏻","🤟🏼","🤟🏽","🤟🏾","🤟🏿","🤘","🤘🏻","🤘🏼","🤘🏽","🤘🏾","🤘🏿","🤙","🤙🏻","🤙🏼","🤙🏽","🤙🏾","🤙🏿","👈","👈🏻","👈🏼","👈🏽","👈🏾","👈🏿","👉","👉🏻","👉🏼","👉🏽","👉🏾","👉🏿","👆","👆🏻","👆🏼","👆🏽","👆🏾","👆🏿","🖕","🖕🏻","🖕🏼","🖕🏽","🖕🏾","🖕🏿","👇","👇🏻","👇🏼","👇🏽","👇🏾","👇🏿","☝️","☝🏻","☝🏼","☝🏽","☝🏾","☝🏿","👍","👍🏻","👍🏼","👍🏽","👍🏾","👍🏿","👎","👎🏻","👎🏼","👎🏽","👎🏾","👎🏿","✊","✊🏻","✊🏼","✊🏽","✊🏾","✊🏿","👊","👊🏻","👊🏼","👊🏽","👊🏾","👊🏿","🤛","🤛🏻","🤛🏼","🤛🏽","🤛🏾","🤛🏿","🤜","🤜🏻","🤜🏼","🤜🏽","🤜🏾","🤜🏿","👏","👏🏻","👏🏼","👏🏽","👏🏾","👏🏿","🙌","🙌🏻","🙌🏼","🙌🏽","🙌🏾","🙌🏿","👐","👐🏻","👐🏼","👐🏽","👐🏾","👐🏿","🤲","🤲🏻","🤲🏼","🤲🏽","🤲🏾","🤲🏿","🤝","🙏","🙏🏻","🙏🏼","🙏🏽","🙏🏾","🙏🏿","✍️","✍🏻","✍🏼","✍🏽","✍🏾","✍🏿","💅","💅🏻","💅🏼","💅🏽","💅🏾","💅🏿","🤳","🤳🏻","🤳🏼","🤳🏽","🤳🏾","🤳🏿","💪","💪🏻","💪🏼","💪🏽","💪🏾","💪🏿","🦾","🦿","🦵","🦵🏻","🦵🏼","🦵🏽","🦵🏾","🦵🏿","🦶","🦶🏻","🦶🏼","🦶🏽","🦶🏾","🦶🏿","👂","👂🏻","👂🏼","👂🏽","👂🏾","👂🏿","🦻","🦻🏻","🦻🏼","🦻🏽","🦻🏾","🦻🏿","👃","👃🏻","👃🏼","👃🏽","👃🏾","👃🏿","🧠","🫀","🫁","🦷","🦴","👀","👁️","👅","👄"],person:["👶","👶🏻","👶🏼","👶🏽","👶🏾","👶🏿","🧒","🧒🏻","🧒🏼","🧒🏽","🧒🏾","🧒🏿","👦","👦🏻","👦🏼","👦🏽","👦🏾","👦🏿","👧","👧🏻","👧🏼","👧🏽","👧🏾","👧🏿","🧑","🧑🏻","🧑🏼","🧑🏽","🧑🏾","🧑🏿","👱","👱🏻","👱🏼","👱🏽","👱🏾","👱🏿","👨","👨🏻","👨🏼","👨🏽","👨🏾","👨🏿","🧔","🧔🏻","🧔🏼","🧔🏽","🧔🏾","🧔🏿","🧔‍♂️","🧔🏻‍♂️","🧔🏼‍♂️","🧔🏽‍♂️","🧔🏾‍♂️","🧔🏿‍♂️","🧔‍♀️","🧔🏻‍♀️","🧔🏼‍♀️","🧔🏽‍♀️","🧔🏾‍♀️","🧔🏿‍♀️","👨‍🦰","👨🏻‍🦰","👨🏼‍🦰","👨🏽‍🦰","👨🏾‍🦰","👨🏿‍🦰","👨‍🦱","👨🏻‍🦱","👨🏼‍🦱","👨🏽‍🦱","👨🏾‍🦱","👨🏿‍🦱","👨‍🦳","👨🏻‍🦳","👨🏼‍🦳","👨🏽‍🦳","👨🏾‍🦳","👨🏿‍🦳","👨‍🦲","👨🏻‍🦲","👨🏼‍🦲","👨🏽‍🦲","👨🏾‍🦲","👨🏿‍🦲","👩","👩🏻","👩🏼","👩🏽","👩🏾","👩🏿","👩‍🦰","👩🏻‍🦰","👩🏼‍🦰","👩🏽‍🦰","👩🏾‍🦰","👩🏿‍🦰","🧑‍🦰","🧑🏻‍🦰","🧑🏼‍🦰","🧑🏽‍🦰","🧑🏾‍🦰","🧑🏿‍🦰","👩‍🦱","👩🏻‍🦱","👩🏼‍🦱","👩🏽‍🦱","👩🏾‍🦱","👩🏿‍🦱","🧑‍🦱","🧑🏻‍🦱","🧑🏼‍🦱","🧑🏽‍🦱","🧑🏾‍🦱","🧑🏿‍🦱","👩‍🦳","👩🏻‍🦳","👩🏼‍🦳","👩🏽‍🦳","👩🏾‍🦳","👩🏿‍🦳","🧑‍🦳","🧑🏻‍🦳","🧑🏼‍🦳","🧑🏽‍🦳","🧑🏾‍🦳","🧑🏿‍🦳","👩‍🦲","👩🏻‍🦲","👩🏼‍🦲","👩🏽‍🦲","👩🏾‍🦲","👩🏿‍🦲","🧑‍🦲","🧑🏻‍🦲","🧑🏼‍🦲","🧑🏽‍🦲","🧑🏾‍🦲","🧑🏿‍🦲","👱‍♀️","👱🏻‍♀️","👱🏼‍♀️","👱🏽‍♀️","👱🏾‍♀️","👱🏿‍♀️","👱‍♂️","👱🏻‍♂️","👱🏼‍♂️","👱🏽‍♂️","👱🏾‍♂️","👱🏿‍♂️","🧓","🧓🏻","🧓🏼","🧓🏽","🧓🏾","🧓🏿","👴","👴🏻","👴🏼","👴🏽","👴🏾","👴🏿","👵","👵🏻","👵🏼","👵🏽","👵🏾","👵🏿","🙍","🙍🏻","🙍🏼","🙍🏽","🙍🏾","🙍🏿","🙍‍♂️","🙍🏻‍♂️","🙍🏼‍♂️","🙍🏽‍♂️","🙍🏾‍♂️","🙍🏿‍♂️","🙍‍♀️","🙍🏻‍♀️","🙍🏼‍♀️","🙍🏽‍♀️","🙍🏾‍♀️","🙍🏿‍♀️","🙎","🙎🏻","🙎🏼","🙎🏽","🙎🏾","🙎🏿","🙎‍♂️","🙎🏻‍♂️","🙎🏼‍♂️","🙎🏽‍♂️","🙎🏾‍♂️","🙎🏿‍♂️","🙎‍♀️","🙎🏻‍♀️","🙎🏼‍♀️","🙎🏽‍♀️","🙎🏾‍♀️","🙎🏿‍♀️","🙅","🙅🏻","🙅🏼","🙅🏽","🙅🏾","🙅🏿","🙅‍♂️","🙅🏻‍♂️","🙅🏼‍♂️","🙅🏽‍♂️","🙅🏾‍♂️","🙅🏿‍♂️","🙅‍♀️","🙅🏻‍♀️","🙅🏼‍♀️","🙅🏽‍♀️","🙅🏾‍♀️","🙅🏿‍♀️","🙆","🙆🏻","🙆🏼","🙆🏽","🙆🏾","🙆🏿","🙆‍♂️","🙆🏻‍♂️","🙆🏼‍♂️","🙆🏽‍♂️","🙆🏾‍♂️","🙆🏿‍♂️","🙆‍♀️","🙆🏻‍♀️","🙆🏼‍♀️","🙆🏽‍♀️","🙆🏾‍♀️","🙆🏿‍♀️","💁","💁🏻","💁🏼","💁🏽","💁🏾","💁🏿","💁‍♂️","💁🏻‍♂️","💁🏼‍♂️","💁🏽‍♂️","💁🏾‍♂️","💁🏿‍♂️","💁‍♀️","💁🏻‍♀️","💁🏼‍♀️","💁🏽‍♀️","💁🏾‍♀️","💁🏿‍♀️","🙋","🙋🏻","🙋🏼","🙋🏽","🙋🏾","🙋🏿","🙋‍♂️","🙋🏻‍♂️","🙋🏼‍♂️","🙋🏽‍♂️","🙋🏾‍♂️","🙋🏿‍♂️","🙋‍♀️","🙋🏻‍♀️","🙋🏼‍♀️","🙋🏽‍♀️","🙋🏾‍♀️","🙋🏿‍♀️","🧏","🧏🏻","🧏🏼","🧏🏽","🧏🏾","🧏🏿","🧏‍♂️","🧏🏻‍♂️","🧏🏼‍♂️","🧏🏽‍♂️","🧏🏾‍♂️","🧏🏿‍♂️","🧏‍♀️","🧏🏻‍♀️","🧏🏼‍♀️","🧏🏽‍♀️","🧏🏾‍♀️","🧏🏿‍♀️","🙇","🙇🏻","🙇🏼","🙇🏽","🙇🏾","🙇🏿","🙇‍♂️","🙇🏻‍♂️","🙇🏼‍♂️","🙇🏽‍♂️","🙇🏾‍♂️","🙇🏿‍♂️","🙇‍♀️","🙇🏻‍♀️","🙇🏼‍♀️","🙇🏽‍♀️","🙇🏾‍♀️","🙇🏿‍♀️","🤦","🤦🏻","🤦🏼","🤦🏽","🤦🏾","🤦🏿","🤦‍♂️","🤦🏻‍♂️","🤦🏼‍♂️","🤦🏽‍♂️","🤦🏾‍♂️","🤦🏿‍♂️","🤦‍♀️","🤦🏻‍♀️","🤦🏼‍♀️","🤦🏽‍♀️","🤦🏾‍♀️","🤦🏿‍♀️","🤷","🤷🏻","🤷🏼","🤷🏽","🤷🏾","🤷🏿","🤷‍♂️","🤷🏻‍♂️","🤷🏼‍♂️","🤷🏽‍♂️","🤷🏾‍♂️","🤷🏿‍♂️","🤷‍♀️","🤷🏻‍♀️","🤷🏼‍♀️","🤷🏽‍♀️","🤷🏾‍♀️","🤷🏿‍♀️","🧑‍⚕️","🧑🏻‍⚕️","🧑🏼‍⚕️","🧑🏽‍⚕️","🧑🏾‍⚕️","🧑🏿‍⚕️","👨‍⚕️","👨🏻‍⚕️","👨🏼‍⚕️","👨🏽‍⚕️","👨🏾‍⚕️","👨🏿‍⚕️","👩‍⚕️","👩🏻‍⚕️","👩🏼‍⚕️","👩🏽‍⚕️","👩🏾‍⚕️","👩🏿‍⚕️","🧑‍🎓","🧑🏻‍🎓","🧑🏼‍🎓","🧑🏽‍🎓","🧑🏾‍🎓","🧑🏿‍🎓","👨‍🎓","👨🏻‍🎓","👨🏼‍🎓","👨🏽‍🎓","👨🏾‍🎓","👨🏿‍🎓","👩‍🎓","👩🏻‍🎓","👩🏼‍🎓","👩🏽‍🎓","👩🏾‍🎓","👩🏿‍🎓","🧑‍🏫","🧑🏻‍🏫","🧑🏼‍🏫","🧑🏽‍🏫","🧑🏾‍🏫","🧑🏿‍🏫","👨‍🏫","👨🏻‍🏫","👨🏼‍🏫","👨🏽‍🏫","👨🏾‍🏫","👨🏿‍🏫","👩‍🏫","👩🏻‍🏫","👩🏼‍🏫","👩🏽‍🏫","👩🏾‍🏫","👩🏿‍🏫","🧑‍⚖️","🧑🏻‍⚖️","🧑🏼‍⚖️","🧑🏽‍⚖️","🧑🏾‍⚖️","🧑🏿‍⚖️","👨‍⚖️","👨🏻‍⚖️","👨🏼‍⚖️","👨🏽‍⚖️","👨🏾‍⚖️","👨🏿‍⚖️","👩‍⚖️","👩🏻‍⚖️","👩🏼‍⚖️","👩🏽‍⚖️","👩🏾‍⚖️","👩🏿‍⚖️","🧑‍🌾","🧑🏻‍🌾","🧑🏼‍🌾","🧑🏽‍🌾","🧑🏾‍🌾","🧑🏿‍🌾","👨‍🌾","👨🏻‍🌾","👨🏼‍🌾","👨🏽‍🌾","👨🏾‍🌾","👨🏿‍🌾","👩‍🌾","👩🏻‍🌾","👩🏼‍🌾","👩🏽‍🌾","👩🏾‍🌾","👩🏿‍🌾","🧑‍🍳","🧑🏻‍🍳","🧑🏼‍🍳","🧑🏽‍🍳","🧑🏾‍🍳","🧑🏿‍🍳","👨‍🍳","👨🏻‍🍳","👨🏼‍🍳","👨🏽‍🍳","👨🏾‍🍳","👨🏿‍🍳","👩‍🍳","👩🏻‍🍳","👩🏼‍🍳","👩🏽‍🍳","👩🏾‍🍳","👩🏿‍🍳","🧑‍🔧","🧑🏻‍🔧","🧑🏼‍🔧","🧑🏽‍🔧","🧑🏾‍🔧","🧑🏿‍🔧","👨‍🔧","👨🏻‍🔧","👨🏼‍🔧","👨🏽‍🔧","👨🏾‍🔧","👨🏿‍🔧","👩‍🔧","👩🏻‍🔧","👩🏼‍🔧","👩🏽‍🔧","👩🏾‍🔧","👩🏿‍🔧","🧑‍🏭","🧑🏻‍🏭","🧑🏼‍🏭","🧑🏽‍🏭","🧑🏾‍🏭","🧑🏿‍🏭","👨‍🏭","👨🏻‍🏭","👨🏼‍🏭","👨🏽‍🏭","👨🏾‍🏭","👨🏿‍🏭","👩‍🏭","👩🏻‍🏭","👩🏼‍🏭","👩🏽‍🏭","👩🏾‍🏭","👩🏿‍🏭","🧑‍💼","🧑🏻‍💼","🧑🏼‍💼","🧑🏽‍💼","🧑🏾‍💼","🧑🏿‍💼","👨‍💼","👨🏻‍💼","👨🏼‍💼","👨🏽‍💼","👨🏾‍💼","👨🏿‍💼","👩‍💼","👩🏻‍💼","👩🏼‍💼","👩🏽‍💼","👩🏾‍💼","👩🏿‍💼","🧑‍🔬","🧑🏻‍🔬","🧑🏼‍🔬","🧑🏽‍🔬","🧑🏾‍🔬","🧑🏿‍🔬","👨‍🔬","👨🏻‍🔬","👨🏼‍🔬","👨🏽‍🔬","👨🏾‍🔬","👨🏿‍🔬","👩‍🔬","👩🏻‍🔬","👩🏼‍🔬","👩🏽‍🔬","👩🏾‍🔬","👩🏿‍🔬","🧑‍💻","🧑🏻‍💻","🧑🏼‍💻","🧑🏽‍💻","🧑🏾‍💻","🧑🏿‍💻","👨‍💻","👨🏻‍💻","👨🏼‍💻","👨🏽‍💻","👨🏾‍💻","👨🏿‍💻","👩‍💻","👩🏻‍💻","👩🏼‍💻","👩🏽‍💻","👩🏾‍💻","👩🏿‍💻","🧑‍🎤","🧑🏻‍🎤","🧑🏼‍🎤","🧑🏽‍🎤","🧑🏾‍🎤","🧑🏿‍🎤","👨‍🎤","👨🏻‍🎤","👨🏼‍🎤","👨🏽‍🎤","👨🏾‍🎤","👨🏿‍🎤","👩‍🎤","👩🏻‍🎤","👩🏼‍🎤","👩🏽‍🎤","👩🏾‍🎤","👩🏿‍🎤","🧑‍🎨","🧑🏻‍🎨","🧑🏼‍🎨","🧑🏽‍🎨","🧑🏾‍🎨","🧑🏿‍🎨","👨‍🎨","👨🏻‍🎨","👨🏼‍🎨","👨🏽‍🎨","👨🏾‍🎨","👨🏿‍🎨","👩‍🎨","👩🏻‍🎨","👩🏼‍🎨","👩🏽‍🎨","👩🏾‍🎨","👩🏿‍🎨","🧑‍✈️","🧑🏻‍✈️","🧑🏼‍✈️","🧑🏽‍✈️","🧑🏾‍✈️","🧑🏿‍✈️","👨‍✈️","👨🏻‍✈️","👨🏼‍✈️","👨🏽‍✈️","👨🏾‍✈️","👨🏿‍✈️","👩‍✈️","👩🏻‍✈️","👩🏼‍✈️","👩🏽‍✈️","👩🏾‍✈️","👩🏿‍✈️","🧑‍🚀","🧑🏻‍🚀","🧑🏼‍🚀","🧑🏽‍🚀","🧑🏾‍🚀","🧑🏿‍🚀","👨‍🚀","👨🏻‍🚀","👨🏼‍🚀","👨🏽‍🚀","👨🏾‍🚀","👨🏿‍🚀","👩‍🚀","👩🏻‍🚀","👩🏼‍🚀","👩🏽‍🚀","👩🏾‍🚀","👩🏿‍🚀","🧑‍🚒","🧑🏻‍🚒","🧑🏼‍🚒","🧑🏽‍🚒","🧑🏾‍🚒","🧑🏿‍🚒","👨‍🚒","👨🏻‍🚒","👨🏼‍🚒","👨🏽‍🚒","👨🏾‍🚒","👨🏿‍🚒","👩‍🚒","👩🏻‍🚒","👩🏼‍🚒","👩🏽‍🚒","👩🏾‍🚒","👩🏿‍🚒","👮","👮🏻","👮🏼","👮🏽","👮🏾","👮🏿","👮‍♂️","👮🏻‍♂️","👮🏼‍♂️","👮🏽‍♂️","👮🏾‍♂️","👮🏿‍♂️","👮‍♀️","👮🏻‍♀️","👮🏼‍♀️","👮🏽‍♀️","👮🏾‍♀️","👮🏿‍♀️","🕵️","🕵🏻","🕵🏼","🕵🏽","🕵🏾","🕵🏿","🕵️‍♂️","🕵🏻‍♂️","🕵🏼‍♂️","🕵🏽‍♂️","🕵🏾‍♂️","🕵🏿‍♂️","🕵️‍♀️","🕵🏻‍♀️","🕵🏼‍♀️","🕵🏽‍♀️","🕵🏾‍♀️","🕵🏿‍♀️","💂","💂🏻","💂🏼","💂🏽","💂🏾","💂🏿","💂‍♂️","💂🏻‍♂️","💂🏼‍♂️","💂🏽‍♂️","💂🏾‍♂️","💂🏿‍♂️","💂‍♀️","💂🏻‍♀️","💂🏼‍♀️","💂🏽‍♀️","💂🏾‍♀️","💂🏿‍♀️","🥷","🥷🏻","🥷🏼","🥷🏽","🥷🏾","🥷🏿","👷","👷🏻","👷🏼","👷🏽","👷🏾","👷🏿","👷‍♂️","👷🏻‍♂️","👷🏼‍♂️","👷🏽‍♂️","👷🏾‍♂️","👷🏿‍♂️","👷‍♀️","👷🏻‍♀️","👷🏼‍♀️","👷🏽‍♀️","👷🏾‍♀️","👷🏿‍♀️","🤴","🤴🏻","🤴🏼","🤴🏽","🤴🏾","🤴🏿","👸","👸🏻","👸🏼","👸🏽","👸🏾","👸🏿","👳","👳🏻","👳🏼","👳🏽","👳🏾","👳🏿","👳‍♂️","👳🏻‍♂️","👳🏼‍♂️","👳🏽‍♂️","👳🏾‍♂️","👳🏿‍♂️","👳‍♀️","👳🏻‍♀️","👳🏼‍♀️","👳🏽‍♀️","👳🏾‍♀️","👳🏿‍♀️","👲","👲🏻","👲🏼","👲🏽","👲🏾","👲🏿","🧕","🧕🏻","🧕🏼","🧕🏽","🧕🏾","🧕🏿","🤵","🤵🏻","🤵🏼","🤵🏽","🤵🏾","🤵🏿","🤵‍♂️","🤵🏻‍♂️","🤵🏼‍♂️","🤵🏽‍♂️","🤵🏾‍♂️","🤵🏿‍♂️","🤵‍♀️","🤵🏻‍♀️","🤵🏼‍♀️","🤵🏽‍♀️","🤵🏾‍♀️","🤵🏿‍♀️","👰","👰🏻","👰🏼","👰🏽","👰🏾","👰🏿","👰‍♂️","👰🏻‍♂️","👰🏼‍♂️","👰🏽‍♂️","👰🏾‍♂️","👰🏿‍♂️","👰‍♀️","👰🏻‍♀️","👰🏼‍♀️","👰🏽‍♀️","👰🏾‍♀️","👰🏿‍♀️","🤰","🤰🏻","🤰🏼","🤰🏽","🤰🏾","🤰🏿","🤱","🤱🏻","🤱🏼","🤱🏽","🤱🏾","🤱🏿","👩‍🍼","👩🏻‍🍼","👩🏼‍🍼","👩🏽‍🍼","👩🏾‍🍼","👩🏿‍🍼","👨‍🍼","👨🏻‍🍼","👨🏼‍🍼","👨🏽‍🍼","👨🏾‍🍼","👨🏿‍🍼","🧑‍🍼","🧑🏻‍🍼","🧑🏼‍🍼","🧑🏽‍🍼","🧑🏾‍🍼","🧑🏿‍🍼","👼","👼🏻","👼🏼","👼🏽","👼🏾","👼🏿","🎅","🎅🏻","🎅🏼","🎅🏽","🎅🏾","🎅🏿","🤶","🤶🏻","🤶🏼","🤶🏽","🤶🏾","🤶🏿","🧑‍🎄","🧑🏻‍🎄","🧑🏼‍🎄","🧑🏽‍🎄","🧑🏾‍🎄","🧑🏿‍🎄","🦸","🦸🏻","🦸🏼","🦸🏽","🦸🏾","🦸🏿","🦸‍♂️","🦸🏻‍♂️","🦸🏼‍♂️","🦸🏽‍♂️","🦸🏾‍♂️","🦸🏿‍♂️","🦸‍♀️","🦸🏻‍♀️","🦸🏼‍♀️","🦸🏽‍♀️","🦸🏾‍♀️","🦸🏿‍♀️","🦹","🦹🏻","🦹🏼","🦹🏽","🦹🏾","🦹🏿","🦹‍♂️","🦹🏻‍♂️","🦹🏼‍♂️","🦹🏽‍♂️","🦹🏾‍♂️","🦹🏿‍♂️","🦹‍♀️","🦹🏻‍♀️","🦹🏼‍♀️","🦹🏽‍♀️","🦹🏾‍♀️","🦹🏿‍♀️","🧙","🧙🏻","🧙🏼","🧙🏽","🧙🏾","🧙🏿","🧙‍♂️","🧙🏻‍♂️","🧙🏼‍♂️","🧙🏽‍♂️","🧙🏾‍♂️","🧙🏿‍♂️","🧙‍♀️","🧙🏻‍♀️","🧙🏼‍♀️","🧙🏽‍♀️","🧙🏾‍♀️","🧙🏿‍♀️","🧚","🧚🏻","🧚🏼","🧚🏽","🧚🏾","🧚🏿","🧚‍♂️","🧚🏻‍♂️","🧚🏼‍♂️","🧚🏽‍♂️","🧚🏾‍♂️","🧚🏿‍♂️","🧚‍♀️","🧚🏻‍♀️","🧚🏼‍♀️","🧚🏽‍♀️","🧚🏾‍♀️","🧚🏿‍♀️","🧛","🧛🏻","🧛🏼","🧛🏽","🧛🏾","🧛🏿","🧛‍♂️","🧛🏻‍♂️","🧛🏼‍♂️","🧛🏽‍♂️","🧛🏾‍♂️","🧛🏿‍♂️","🧛‍♀️","🧛🏻‍♀️","🧛🏼‍♀️","🧛🏽‍♀️","🧛🏾‍♀️","🧛🏿‍♀️","🧜","🧜🏻","🧜🏼","🧜🏽","🧜🏾","🧜🏿","🧜‍♂️","🧜🏻‍♂️","🧜🏼‍♂️","🧜🏽‍♂️","🧜🏾‍♂️","🧜🏿‍♂️","🧜‍♀️","🧜🏻‍♀️","🧜🏼‍♀️","🧜🏽‍♀️","🧜🏾‍♀️","🧜🏿‍♀️","🧝","🧝🏻","🧝🏼","🧝🏽","🧝🏾","🧝🏿","🧝‍♂️","🧝🏻‍♂️","🧝🏼‍♂️","🧝🏽‍♂️","🧝🏾‍♂️","🧝🏿‍♂️","🧝‍♀️","🧝🏻‍♀️","🧝🏼‍♀️","🧝🏽‍♀️","🧝🏾‍♀️","🧝🏿‍♀️","🧞","🧞‍♂️","🧞‍♀️","🧟","🧟‍♂️","🧟‍♀️","💆","💆🏻","💆🏼","💆🏽","💆🏾","💆🏿","💆‍♂️","💆🏻‍♂️","💆🏼‍♂️","💆🏽‍♂️","💆🏾‍♂️","💆🏿‍♂️","💆‍♀️","💆🏻‍♀️","💆🏼‍♀️","💆🏽‍♀️","💆🏾‍♀️","💆🏿‍♀️","💇","💇🏻","💇🏼","💇🏽","💇🏾","💇🏿","💇‍♂️","💇🏻‍♂️","💇🏼‍♂️","💇🏽‍♂️","💇🏾‍♂️","💇🏿‍♂️","💇‍♀️","💇🏻‍♀️","💇🏼‍♀️","💇🏽‍♀️","💇🏾‍♀️","💇🏿‍♀️","🚶","🚶🏻","🚶🏼","🚶🏽","🚶🏾","🚶🏿","🚶‍♂️","🚶🏻‍♂️","🚶🏼‍♂️","🚶🏽‍♂️","🚶🏾‍♂️","🚶🏿‍♂️","🚶‍♀️","🚶🏻‍♀️","🚶🏼‍♀️","🚶🏽‍♀️","🚶🏾‍♀️","🚶🏿‍♀️","🧍","🧍🏻","🧍🏼","🧍🏽","🧍🏾","🧍🏿","🧍‍♂️","🧍🏻‍♂️","🧍🏼‍♂️","🧍🏽‍♂️","🧍🏾‍♂️","🧍🏿‍♂️","🧍‍♀️","🧍🏻‍♀️","🧍🏼‍♀️","🧍🏽‍♀️","🧍🏾‍♀️","🧍🏿‍♀️","🧎","🧎🏻","🧎🏼","🧎🏽","🧎🏾","🧎🏿","🧎‍♂️","🧎🏻‍♂️","🧎🏼‍♂️","🧎🏽‍♂️","🧎🏾‍♂️","🧎🏿‍♂️","🧎‍♀️","🧎🏻‍♀️","🧎🏼‍♀️","🧎🏽‍♀️","🧎🏾‍♀️","🧎🏿‍♀️","🧑‍🦯","🧑🏻‍🦯","🧑🏼‍🦯","🧑🏽‍🦯","🧑🏾‍🦯","🧑🏿‍🦯","👨‍🦯","👨🏻‍🦯","👨🏼‍🦯","👨🏽‍🦯","👨🏾‍🦯","👨🏿‍🦯","👩‍🦯","👩🏻‍🦯","👩🏼‍🦯","👩🏽‍🦯","👩🏾‍🦯","👩🏿‍🦯","🧑‍🦼","🧑🏻‍🦼","🧑🏼‍🦼","🧑🏽‍🦼","🧑🏾‍🦼","🧑🏿‍🦼","👨‍🦼","👨🏻‍🦼","👨🏼‍🦼","👨🏽‍🦼","👨🏾‍🦼","👨🏿‍🦼","👩‍🦼","👩🏻‍🦼","👩🏼‍🦼","👩🏽‍🦼","👩🏾‍🦼","👩🏿‍🦼","🧑‍🦽","🧑🏻‍🦽","🧑🏼‍🦽","🧑🏽‍🦽","🧑🏾‍🦽","🧑🏿‍🦽","👨‍🦽","👨🏻‍🦽","👨🏼‍🦽","👨🏽‍🦽","👨🏾‍🦽","👨🏿‍🦽","👩‍🦽","👩🏻‍🦽","👩🏼‍🦽","👩🏽‍🦽","👩🏾‍🦽","👩🏿‍🦽","🏃","🏃🏻","🏃🏼","🏃🏽","🏃🏾","🏃🏿","🏃‍♂️","🏃🏻‍♂️","🏃🏼‍♂️","🏃🏽‍♂️","🏃🏾‍♂️","🏃🏿‍♂️","🏃‍♀️","🏃🏻‍♀️","🏃🏼‍♀️","🏃🏽‍♀️","🏃🏾‍♀️","🏃🏿‍♀️","💃","💃🏻","💃🏼","💃🏽","💃🏾","💃🏿","🕺","🕺🏻","🕺🏼","🕺🏽","🕺🏾","🕺🏿","🕴️","🕴🏻","🕴🏼","🕴🏽","🕴🏾","🕴🏿","👯","👯‍♂️","👯‍♀️","🧖","🧖🏻","🧖🏼","🧖🏽","🧖🏾","🧖🏿","🧖‍♂️","🧖🏻‍♂️","🧖🏼‍♂️","🧖🏽‍♂️","🧖🏾‍♂️","🧖🏿‍♂️","🧖‍♀️","🧖🏻‍♀️","🧖🏼‍♀️","🧖🏽‍♀️","🧖🏾‍♀️","🧖🏿‍♀️","🧗","🧗🏻","🧗🏼","🧗🏽","🧗🏾","🧗🏿","🧗‍♂️","🧗🏻‍♂️","🧗🏼‍♂️","🧗🏽‍♂️","🧗🏾‍♂️","🧗🏿‍♂️","🧗‍♀️","🧗🏻‍♀️","🧗🏼‍♀️","🧗🏽‍♀️","🧗🏾‍♀️","🧗🏿‍♀️","🤺","🏇","🏇🏻","🏇🏼","🏇🏽","🏇🏾","🏇🏿","⛷️","🏂","🏂🏻","🏂🏼","🏂🏽","🏂🏾","🏂🏿","🏌️","🏌🏻","🏌🏼","🏌🏽","🏌🏾","🏌🏿","🏌️‍♂️","🏌🏻‍♂️","🏌🏼‍♂️","🏌🏽‍♂️","🏌🏾‍♂️","🏌🏿‍♂️","🏌️‍♀️","🏌🏻‍♀️","🏌🏼‍♀️","🏌🏽‍♀️","🏌🏾‍♀️","🏌🏿‍♀️","🏄","🏄🏻","🏄🏼","🏄🏽","🏄🏾","🏄🏿","🏄‍♂️","🏄🏻‍♂️","🏄🏼‍♂️","🏄🏽‍♂️","🏄🏾‍♂️","🏄🏿‍♂️","🏄‍♀️","🏄🏻‍♀️","🏄🏼‍♀️","🏄🏽‍♀️","🏄🏾‍♀️","🏄🏿‍♀️","🚣","🚣🏻","🚣🏼","🚣🏽","🚣🏾","🚣🏿","🚣‍♂️","🚣🏻‍♂️","🚣🏼‍♂️","🚣🏽‍♂️","🚣🏾‍♂️","🚣🏿‍♂️","🚣‍♀️","🚣🏻‍♀️","🚣🏼‍♀️","🚣🏽‍♀️","🚣🏾‍♀️","🚣🏿‍♀️","🏊","🏊🏻","🏊🏼","🏊🏽","🏊🏾","🏊🏿","🏊‍♂️","🏊🏻‍♂️","🏊🏼‍♂️","🏊🏽‍♂️","🏊🏾‍♂️","🏊🏿‍♂️","🏊‍♀️","🏊🏻‍♀️","🏊🏼‍♀️","🏊🏽‍♀️","🏊🏾‍♀️","🏊🏿‍♀️","⛹️","⛹🏻","⛹🏼","⛹🏽","⛹🏾","⛹🏿","⛹️‍♂️","⛹🏻‍♂️","⛹🏼‍♂️","⛹🏽‍♂️","⛹🏾‍♂️","⛹🏿‍♂️","⛹️‍♀️","⛹🏻‍♀️","⛹🏼‍♀️","⛹🏽‍♀️","⛹🏾‍♀️","⛹🏿‍♀️","🏋️","🏋🏻","🏋🏼","🏋🏽","🏋🏾","🏋🏿","🏋️‍♂️","🏋🏻‍♂️","🏋🏼‍♂️","🏋🏽‍♂️","🏋🏾‍♂️","🏋🏿‍♂️","🏋️‍♀️","🏋🏻‍♀️","🏋🏼‍♀️","🏋🏽‍♀️","🏋🏾‍♀️","🏋🏿‍♀️","🚴","🚴🏻","🚴🏼","🚴🏽","🚴🏾","🚴🏿","🚴‍♂️","🚴🏻‍♂️","🚴🏼‍♂️","🚴🏽‍♂️","🚴🏾‍♂️","🚴🏿‍♂️","🚴‍♀️","🚴🏻‍♀️","🚴🏼‍♀️","🚴🏽‍♀️","🚴🏾‍♀️","🚴🏿‍♀️","🚵","🚵🏻","🚵🏼","🚵🏽","🚵🏾","🚵🏿","🚵‍♂️","🚵🏻‍♂️","🚵🏼‍♂️","🚵🏽‍♂️","🚵🏾‍♂️","🚵🏿‍♂️","🚵‍♀️","🚵🏻‍♀️","🚵🏼‍♀️","🚵🏽‍♀️","🚵🏾‍♀️","🚵🏿‍♀️","🤸","🤸🏻","🤸🏼","🤸🏽","🤸🏾","🤸🏿","🤸‍♂️","🤸🏻‍♂️","🤸🏼‍♂️","🤸🏽‍♂️","🤸🏾‍♂️","🤸🏿‍♂️","🤸‍♀️","🤸🏻‍♀️","🤸🏼‍♀️","🤸🏽‍♀️","🤸🏾‍♀️","🤸🏿‍♀️","🤼","🤼‍♂️","🤼‍♀️","🤽","🤽🏻","🤽🏼","🤽🏽","🤽🏾","🤽🏿","🤽‍♂️","🤽🏻‍♂️","🤽🏼‍♂️","🤽🏽‍♂️","🤽🏾‍♂️","🤽🏿‍♂️","🤽‍♀️","🤽🏻‍♀️","🤽🏼‍♀️","🤽🏽‍♀️","🤽🏾‍♀️","🤽🏿‍♀️","🤾","🤾🏻","🤾🏼","🤾🏽","🤾🏾","🤾🏿","🤾‍♂️","🤾🏻‍♂️","🤾🏼‍♂️","🤾🏽‍♂️","🤾🏾‍♂️","🤾🏿‍♂️","🤾‍♀️","🤾🏻‍♀️","🤾🏼‍♀️","🤾🏽‍♀️","🤾🏾‍♀️","🤾🏿‍♀️","🤹","🤹🏻","🤹🏼","🤹🏽","🤹🏾","🤹🏿","🤹‍♂️","🤹🏻‍♂️","🤹🏼‍♂️","🤹🏽‍♂️","🤹🏾‍♂️","🤹🏿‍♂️","🤹‍♀️","🤹🏻‍♀️","🤹🏼‍♀️","🤹🏽‍♀️","🤹🏾‍♀️","🤹🏿‍♀️","🧘","🧘🏻","🧘🏼","🧘🏽","🧘🏾","🧘🏿","🧘‍♂️","🧘🏻‍♂️","🧘🏼‍♂️","🧘🏽‍♂️","🧘🏾‍♂️","🧘🏿‍♂️","🧘‍♀️","🧘🏻‍♀️","🧘🏼‍♀️","🧘🏽‍♀️","🧘🏾‍♀️","🧘🏿‍♀️","🛀","🛀🏻","🛀🏼","🛀🏽","🛀🏾","🛀🏿","🛌","🛌🏻","🛌🏼","🛌🏽","🛌🏾","🛌🏿","🧑‍🤝‍🧑","🧑🏻‍🤝‍🧑🏻","🧑🏻‍🤝‍🧑🏼","🧑🏻‍🤝‍🧑🏽","🧑🏻‍🤝‍🧑🏾","🧑🏻‍🤝‍🧑🏿","🧑🏼‍🤝‍🧑🏻","🧑🏼‍🤝‍🧑🏼","🧑🏼‍🤝‍🧑🏽","🧑🏼‍🤝‍🧑🏾","🧑🏼‍🤝‍🧑🏿","🧑🏽‍🤝‍🧑🏻","🧑🏽‍🤝‍🧑🏼","🧑🏽‍🤝‍🧑🏽","🧑🏽‍🤝‍🧑🏾","🧑🏽‍🤝‍🧑🏿","🧑🏾‍🤝‍🧑🏻","🧑🏾‍🤝‍🧑🏼","🧑🏾‍🤝‍🧑🏽","🧑🏾‍🤝‍🧑🏾","🧑🏾‍🤝‍🧑🏿","🧑🏿‍🤝‍🧑🏻","🧑🏿‍🤝‍🧑🏼","🧑🏿‍🤝‍🧑🏽","🧑🏿‍🤝‍🧑🏾","🧑🏿‍🤝‍🧑🏿","👭","👭🏻","👩🏻‍🤝‍👩🏼","👩🏻‍🤝‍👩🏽","👩🏻‍🤝‍👩🏾","👩🏻‍🤝‍👩🏿","👩🏼‍🤝‍👩🏻","👭🏼","👩🏼‍🤝‍👩🏽","👩🏼‍🤝‍👩🏾","👩🏼‍🤝‍👩🏿","👩🏽‍🤝‍👩🏻","👩🏽‍🤝‍👩🏼","👭🏽","👩🏽‍🤝‍👩🏾","👩🏽‍🤝‍👩🏿","👩🏾‍🤝‍👩🏻","👩🏾‍🤝‍👩🏼","👩🏾‍🤝‍👩🏽","👭🏾","👩🏾‍🤝‍👩🏿","👩🏿‍🤝‍👩🏻","👩🏿‍🤝‍👩🏼","👩🏿‍🤝‍👩🏽","👩🏿‍🤝‍👩🏾","👭🏿","👫","👫🏻","👩🏻‍🤝‍👨🏼","👩🏻‍🤝‍👨🏽","👩🏻‍🤝‍👨🏾","👩🏻‍🤝‍👨🏿","👩🏼‍🤝‍👨🏻","👫🏼","👩🏼‍🤝‍👨🏽","👩🏼‍🤝‍👨🏾","👩🏼‍🤝‍👨🏿","👩🏽‍🤝‍👨🏻","👩🏽‍🤝‍👨🏼","👫🏽","👩🏽‍🤝‍👨🏾","👩🏽‍🤝‍👨🏿","👩🏾‍🤝‍👨🏻","👩🏾‍🤝‍👨🏼","👩🏾‍🤝‍👨🏽","👫🏾","👩🏾‍🤝‍👨🏿","👩🏿‍🤝‍👨🏻","👩🏿‍🤝‍👨🏼","👩🏿‍🤝‍👨🏽","👩🏿‍🤝‍👨🏾","👫🏿","👬","👬🏻","👨🏻‍🤝‍👨🏼","👨🏻‍🤝‍👨🏽","👨🏻‍🤝‍👨🏾","👨🏻‍🤝‍👨🏿","👨🏼‍🤝‍👨🏻","👬🏼","👨🏼‍🤝‍👨🏽","👨🏼‍🤝‍👨🏾","👨🏼‍🤝‍👨🏿","👨🏽‍🤝‍👨🏻","👨🏽‍🤝‍👨🏼","👬🏽","👨🏽‍🤝‍👨🏾","👨🏽‍🤝‍👨🏿","👨🏾‍🤝‍👨🏻","👨🏾‍🤝‍👨🏼","👨🏾‍🤝‍👨🏽","👬🏾","👨🏾‍🤝‍👨🏿","👨🏿‍🤝‍👨🏻","👨🏿‍🤝‍👨🏼","👨🏿‍🤝‍👨🏽","👨🏿‍🤝‍👨🏾","👬🏿","💏","💏🏻","💏🏼","💏🏽","💏🏾","💏🏿","🧑🏻‍❤️‍💋‍🧑🏼","🧑🏻‍❤️‍💋‍🧑🏽","🧑🏻‍❤️‍💋‍🧑🏾","🧑🏻‍❤️‍💋‍🧑🏿","🧑🏼‍❤️‍💋‍🧑🏻","🧑🏼‍❤️‍💋‍🧑🏽","🧑🏼‍❤️‍💋‍🧑🏾","🧑🏼‍❤️‍💋‍🧑🏿","🧑🏽‍❤️‍💋‍🧑🏻","🧑🏽‍❤️‍💋‍🧑🏼","🧑🏽‍❤️‍💋‍🧑🏾","🧑🏽‍❤️‍💋‍🧑🏿","🧑🏾‍❤️‍💋‍🧑🏻","🧑🏾‍❤️‍💋‍🧑🏼","🧑🏾‍❤️‍💋‍🧑🏽","🧑🏾‍❤️‍💋‍🧑🏿","🧑🏿‍❤️‍💋‍🧑🏻","🧑🏿‍❤️‍💋‍🧑🏼","🧑🏿‍❤️‍💋‍🧑🏽","🧑🏿‍❤️‍💋‍🧑🏾","👩‍❤️‍💋‍👨","👩🏻‍❤️‍💋‍👨🏻","👩🏻‍❤️‍💋‍👨🏼","👩🏻‍❤️‍💋‍👨🏽","👩🏻‍❤️‍💋‍👨🏾","👩🏻‍❤️‍💋‍👨🏿","👩🏼‍❤️‍💋‍👨🏻","👩🏼‍❤️‍💋‍👨🏼","👩🏼‍❤️‍💋‍👨🏽","👩🏼‍❤️‍💋‍👨🏾","👩🏼‍❤️‍💋‍👨🏿","👩🏽‍❤️‍💋‍👨🏻","👩🏽‍❤️‍💋‍👨🏼","👩🏽‍❤️‍💋‍👨🏽","👩🏽‍❤️‍💋‍👨🏾","👩🏽‍❤️‍💋‍👨🏿","👩🏾‍❤️‍💋‍👨🏻","👩🏾‍❤️‍💋‍👨🏼","👩🏾‍❤️‍💋‍👨🏽","👩🏾‍❤️‍💋‍👨🏾","👩🏾‍❤️‍💋‍👨🏿","👩🏿‍❤️‍💋‍👨🏻","👩🏿‍❤️‍💋‍👨🏼","👩🏿‍❤️‍💋‍👨🏽","👩🏿‍❤️‍💋‍👨🏾","👩🏿‍❤️‍💋‍👨🏿","👨‍❤️‍💋‍👨","👨🏻‍❤️‍💋‍👨🏻","👨🏻‍❤️‍💋‍👨🏼","👨🏻‍❤️‍💋‍👨🏽","👨🏻‍❤️‍💋‍👨🏾","👨🏻‍❤️‍💋‍👨🏿","👨🏼‍❤️‍💋‍👨🏻","👨🏼‍❤️‍💋‍👨🏼","👨🏼‍❤️‍💋‍👨🏽","👨🏼‍❤️‍💋‍👨🏾","👨🏼‍❤️‍💋‍👨🏿","👨🏽‍❤️‍💋‍👨🏻","👨🏽‍❤️‍💋‍👨🏼","👨🏽‍❤️‍💋‍👨🏽","👨🏽‍❤️‍💋‍👨🏾","👨🏽‍❤️‍💋‍👨🏿","👨🏾‍❤️‍💋‍👨🏻","👨🏾‍❤️‍💋‍👨🏼","👨🏾‍❤️‍💋‍👨🏽","👨🏾‍❤️‍💋‍👨🏾","👨🏾‍❤️‍💋‍👨🏿","👨🏿‍❤️‍💋‍👨🏻","👨🏿‍❤️‍💋‍👨🏼","👨🏿‍❤️‍💋‍👨🏽","👨🏿‍❤️‍💋‍👨🏾","👨🏿‍❤️‍💋‍👨🏿","👩‍❤️‍💋‍👩","👩🏻‍❤️‍💋‍👩🏻","👩🏻‍❤️‍💋‍👩🏼","👩🏻‍❤️‍💋‍👩🏽","👩🏻‍❤️‍💋‍👩🏾","👩🏻‍❤️‍💋‍👩🏿","👩🏼‍❤️‍💋‍👩🏻","👩🏼‍❤️‍💋‍👩🏼","👩🏼‍❤️‍💋‍👩🏽","👩🏼‍❤️‍💋‍👩🏾","👩🏼‍❤️‍💋‍👩🏿","👩🏽‍❤️‍💋‍👩🏻","👩🏽‍❤️‍💋‍👩🏼","👩🏽‍❤️‍💋‍👩🏽","👩🏽‍❤️‍💋‍👩🏾","👩🏽‍❤️‍💋‍👩🏿","👩🏾‍❤️‍💋‍👩🏻","👩🏾‍❤️‍💋‍👩🏼","👩🏾‍❤️‍💋‍👩🏽","👩🏾‍❤️‍💋‍👩🏾","👩🏾‍❤️‍💋‍👩🏿","👩🏿‍❤️‍💋‍👩🏻","👩🏿‍❤️‍💋‍👩🏼","👩🏿‍❤️‍💋‍👩🏽","👩🏿‍❤️‍💋‍👩🏾","👩🏿‍❤️‍💋‍👩🏿","💑","💑🏻","💑🏼","💑🏽","💑🏾","💑🏿","🧑🏻‍❤️‍🧑🏼","🧑🏻‍❤️‍🧑🏽","🧑🏻‍❤️‍🧑🏾","🧑🏻‍❤️‍🧑🏿","🧑🏼‍❤️‍🧑🏻","🧑🏼‍❤️‍🧑🏽","🧑🏼‍❤️‍🧑🏾","🧑🏼‍❤️‍🧑🏿","🧑🏽‍❤️‍🧑🏻","🧑🏽‍❤️‍🧑🏼","🧑🏽‍❤️‍🧑🏾","🧑🏽‍❤️‍🧑🏿","🧑🏾‍❤️‍🧑🏻","🧑🏾‍❤️‍🧑🏼","🧑🏾‍❤️‍🧑🏽","🧑🏾‍❤️‍🧑🏿","🧑🏿‍❤️‍🧑🏻","🧑🏿‍❤️‍🧑🏼","🧑🏿‍❤️‍🧑🏽","🧑🏿‍❤️‍🧑🏾","👩‍❤️‍👨","👩🏻‍❤️‍👨🏻","👩🏻‍❤️‍👨🏼","👩🏻‍❤️‍👨🏽","👩🏻‍❤️‍👨🏾","👩🏻‍❤️‍👨🏿","👩🏼‍❤️‍👨🏻","👩🏼‍❤️‍👨🏼","👩🏼‍❤️‍👨🏽","👩🏼‍❤️‍👨🏾","👩🏼‍❤️‍👨🏿","👩🏽‍❤️‍👨🏻","👩🏽‍❤️‍👨🏼","👩🏽‍❤️‍👨🏽","👩🏽‍❤️‍👨🏾","👩🏽‍❤️‍👨🏿","👩🏾‍❤️‍👨🏻","👩🏾‍❤️‍👨🏼","👩🏾‍❤️‍👨🏽","👩🏾‍❤️‍👨🏾","👩🏾‍❤️‍👨🏿","👩🏿‍❤️‍👨🏻","👩🏿‍❤️‍👨🏼","👩🏿‍❤️‍👨🏽","👩🏿‍❤️‍👨🏾","👩🏿‍❤️‍👨🏿","👨‍❤️‍👨","👨🏻‍❤️‍👨🏻","👨🏻‍❤️‍👨🏼","👨🏻‍❤️‍👨🏽","👨🏻‍❤️‍👨🏾","👨🏻‍❤️‍👨🏿","👨🏼‍❤️‍👨🏻","👨🏼‍❤️‍👨🏼","👨🏼‍❤️‍👨🏽","👨🏼‍❤️‍👨🏾","👨🏼‍❤️‍👨🏿","👨🏽‍❤️‍👨🏻","👨🏽‍❤️‍👨🏼","👨🏽‍❤️‍👨🏽","👨🏽‍❤️‍👨🏾","👨🏽‍❤️‍👨🏿","👨🏾‍❤️‍👨🏻","👨🏾‍❤️‍👨🏼","👨🏾‍❤️‍👨🏽","👨🏾‍❤️‍👨🏾","👨🏾‍❤️‍👨🏿","👨🏿‍❤️‍👨🏻","👨🏿‍❤️‍👨🏼","👨🏿‍❤️‍👨🏽","👨🏿‍❤️‍👨🏾","👨🏿‍❤️‍👨🏿","👩‍❤️‍👩","👩🏻‍❤️‍👩🏻","👩🏻‍❤️‍👩🏼","👩🏻‍❤️‍👩🏽","👩🏻‍❤️‍👩🏾","👩🏻‍❤️‍👩🏿","👩🏼‍❤️‍👩🏻","👩🏼‍❤️‍👩🏼","👩🏼‍❤️‍👩🏽","👩🏼‍❤️‍👩🏾","👩🏼‍❤️‍👩🏿","👩🏽‍❤️‍👩🏻","👩🏽‍❤️‍👩🏼","👩🏽‍❤️‍👩🏽","👩🏽‍❤️‍👩🏾","👩🏽‍❤️‍👩🏿","👩🏾‍❤️‍👩🏻","👩🏾‍❤️‍👩🏼","👩🏾‍❤️‍👩🏽","👩🏾‍❤️‍👩🏾","👩🏾‍❤️‍👩🏿","👩🏿‍❤️‍👩🏻","👩🏿‍❤️‍👩🏼","👩🏿‍❤️‍👩🏽","👩🏿‍❤️‍👩🏾","👩🏿‍❤️‍👩🏿","👪","👨‍👩‍👦","👨‍👩‍👧","👨‍👩‍👧‍👦","👨‍👩‍👦‍👦","👨‍👩‍👧‍👧","👨‍👨‍👦","👨‍👨‍👧","👨‍👨‍👧‍👦","👨‍👨‍👦‍👦","👨‍👨‍👧‍👧","👩‍👩‍👦","👩‍👩‍👧","👩‍👩‍👧‍👦","👩‍👩‍👦‍👦","👩‍👩‍👧‍👧","👨‍👦","👨‍👦‍👦","👨‍👧","👨‍👧‍👦","👨‍👧‍👧","👩‍👦","👩‍👦‍👦","👩‍👧","👩‍👧‍👦","👩‍👧‍👧","🗣️","👤","👥","🫂","👣"],nature:["🐵","🐒","🦍","🦧","🐶","🐕","🦮","🐕‍🦺","🐩","🐺","🦊","🦝","🐱","🐈","🐈‍⬛","🦁","🐯","🐅","🐆","🐴","🐎","🦄","🦓","🦌","🦬","🐮","🐂","🐃","🐄","🐷","🐖","🐗","🐽","🐏","🐑","🐐","🐪","🐫","🦙","🦒","🐘","🦣","🦏","🦛","🐭","🐁","🐀","🐹","🐰","🐇","🐿️","🦫","🦔","🦇","🐻","🐻‍❄️","🐨","🐼","🦥","🦦","🦨","🦘","🦡","🐾","🦃","🐔","🐓","🐣","🐤","🐥","🐦","🐧","🕊️","🦅","🦆","🦢","🦉","🦤","🪶","🦩","🦚","🦜","🐸","🐊","🐢","🦎","🐍","🐲","🐉","🦕","🦖","🐳","🐋","🐬","🦭","🐟","🐠","🐡","🦈","🐙","🐚","🐌","🦋","🐛","🐜","🐝","🪲","🐞","🦗","🪳","🕷️","🕸️","🦂","🦟","🪰","🪱","🦠","💐","🌸","💮","🏵️","🌹","🥀","🌺","🌻","🌼","🌷","🌱","🪴","🌲","🌳","🌴","🌵","🌾","🌿","☘️","🍀","🍁","🍂","🍃"],food:["🍇","🍈","🍉","🍊","🍋","🍌","🍍","🥭","🍎","🍏","🍐","🍑","🍒","🍓","🫐","🥝","🍅","🫒","🥥","🥑","🍆","🥔","🥕","🌽","🌶️","🫑","🥒","🥬","🥦","🧄","🧅","🍄","🥜","🌰","🍞","🥐","🥖","🫓","🥨","🥯","🥞","🧇","🧀","🍖","🍗","🥩","🥓","🍔","🍟","🍕","🌭","🥪","🌮","🌯","🫔","🥙","🧆","🥚","🍳","🥘","🍲","🫕","🥣","🥗","🍿","🧈","🧂","🥫","🍱","🍘","🍙","🍚","🍛","🍜","🍝","🍠","🍢","🍣","🍤","🍥","🥮","🍡","🥟","🥠","🥡","🦀","🦞","🦐","🦑","🦪","🍦","🍧","🍨","🍩","🍪","🎂","🍰","🧁","🥧","🍫","🍬","🍭","🍮","🍯","🍼","🥛","☕","🫖","🍵","🍶","🍾","🍷","🍸","🍹","🍺","🍻","🥂","🥃","🥤","🧋","🧃","🧉","🧊","🥢","🍽️","🍴","🥄","🔪","🏺"],travel:["🌍","🌎","🌏","🌐","🗺️","🗾","🧭","🏔️","⛰️","🌋","🗻","🏕️","🏖️","🏜️","🏝️","🏞️","🏟️","🏛️","🏗️","🧱","🪨","🪵","🛖","🏘️","🏚️","🏠","🏡","🏢","🏣","🏤","🏥","🏦","🏨","🏩","🏪","🏫","🏬","🏭","🏯","🏰","💒","🗼","🗽","⛪","🕌","🛕","🕍","⛩️","🕋","⛲","⛺","🌁","🌃","🏙️","🌄","🌅","🌆","🌇","🌉","♨️","🎠","🎡","🎢","💈","🎪","🚂","🚃","🚄","🚅","🚆","🚇","🚈","🚉","🚊","🚝","🚞","🚋","🚌","🚍","🚎","🚐","🚑","🚒","🚓","🚔","🚕","🚖","🚗","🚘","🚙","🛻","🚚","🚛","🚜","🏎️","🏍️","🛵","🦽","🦼","🛺","🚲","🛴","🛹","🛼","🚏","🛣️","🛤️","🛢️","⛽","🚨","🚥","🚦","🛑","🚧","⚓","⛵","🛶","🚤","🛳️","⛴️","🛥️","🚢","✈️","🛩️","🛫","🛬","🪂","💺","🚁","🚟","🚠","🚡","🛰️","🚀","🛸","🛎️","🧳","⌛","⏳","⌚","⏰","⏱️","⏲️","🕰️","🕛","🕧","🕐","🕜","🕑","🕝","🕒","🕞","🕓","🕟","🕔","🕠","🕕","🕡","🕖","🕢","🕗","🕣","🕘","🕤","🕙","🕥","🕚","🕦","🌑","🌒","🌓","🌔","🌕","🌖","🌗","🌘","🌙","🌚","🌛","🌜","🌡️","☀️","🌝","🌞","🪐","⭐","🌟","🌠","🌌","☁️","⛅","⛈️","🌤️","🌥️","🌦️","🌧️","🌨️","🌩️","🌪️","🌫️","🌬️","🌀","🌈","🌂","☂️","☔","⛱️","⚡","❄️","☃️","⛄","☄️","🔥","💧","🌊"],activity:["🎃","🎄","🎆","🎇","🧨","✨","🎈","🎉","🎊","🎋","🎍","🎎","🎏","🎐","🎑","🧧","🎀","🎁","🎗️","🎟️","🎫","🎖️","🏆","🏅","🥇","🥈","🥉","⚽","⚾","🥎","🏀","🏐","🏈","🏉","🎾","🥏","🎳","🏏","🏑","🏒","🥍","🏓","🏸","🥊","🥋","🥅","⛳","⛸️","🎣","🤿","🎽","🎿","🛷","🥌","🎯","🪀","🪁","🎱","🔮","🪄","🧿","🎮","🕹️","🎰","🎲","🧩","🧸","🪅","🪆","♠️","♥️","♦️","♣️","♟️","🃏","🀄","🎴","🎭","🖼️","🎨","🧵","🪡","🧶","🪢"],object:["👓","🕶️","🥽","🥼","🦺","👔","👕","👖","🧣","🧤","🧥","🧦","👗","👘","🥻","🩱","🩲","🩳","👙","👚","👛","👜","👝","🛍️","🎒","🩴","👞","👟","🥾","🥿","👠","👡","🩰","👢","👑","👒","🎩","🎓","🧢","🪖","⛑️","📿","💄","💍","💎","🔇","🔈","🔉","🔊","📢","📣","📯","🔔","🔕","🎼","🎵","🎶","🎙️","🎚️","🎛️","🎤","🎧","📻","🎷","🪗","🎸","🎹","🎺","🎻","🪕","🥁","🪘","📱","📲","☎️","📞","📟","📠","🔋","🔌","💻","🖥️","🖨️","⌨️","🖱️","🖲️","💽","💾","💿","📀","🧮","🎥","🎞️","📽️","🎬","📺","📷","📸","📹","📼","🔍","🔎","🕯️","💡","🔦","🏮","🪔","📔","📕","📖","📗","📘","📙","📚","📓","📒","📃","📜","📄","📰","🗞️","📑","🔖","🏷️","💰","🪙","💴","💵","💶","💷","💸","💳","🧾","💹","✉️","📧","📨","📩","📤","📥","📦","📫","📪","📬","📭","📮","🗳️","✏️","✒️","🖋️","🖊️","🖌️","🖍️","📝","💼","📁","📂","🗂️","📅","📆","🗒️","🗓️","📇","📈","📉","📊","📋","📌","📍","📎","🖇️","📏","📐","✂️","🗃️","🗄️","🗑️","🔒","🔓","🔏","🔐","🔑","🗝️","🔨","🪓","⛏️","⚒️","🛠️","🗡️","⚔️","🔫","🪃","🏹","🛡️","🪚","🔧","🪛","🔩","⚙️","🗜️","⚖️","🦯","🔗","⛓️","🪝","🧰","🧲","🪜","⚗️","🧪","🧫","🧬","🔬","🔭","📡","💉","🩸","💊","🩹","🩺","🚪","🛗","🪞","🪟","🛏️","🛋️","🪑","🚽","🪠","🚿","🛁","🪤","🪒","🧴","🧷","🧹","🧺","🧻","🪣","🧼","🪥","🧽","🧯","🛒","🚬","⚰️","🪦","⚱️","🗿","🪧"],symbol:["🏧","🚮","🚰","♿","🚹","🚺","🚻","🚼","🚾","🛂","🛃","🛄","🛅","⚠️","🚸","⛔","🚫","🚳","🚭","🚯","🚱","🚷","📵","🔞","☢️","☣️","⬆️","↗️","➡️","↘️","⬇️","↙️","⬅️","↖️","↕️","↔️","↩️","↪️","⤴️","⤵️","🔃","🔄","🔙","🔚","🔛","🔜","🔝","🛐","⚛️","🕉️","✡️","☸️","☯️","✝️","☦️","☪️","☮️","🕎","🔯","♈","♉","♊","♋","♌","♍","♎","♏","♐","♑","♒","♓","⛎","🔀","🔁","🔂","▶️","⏩","⏭️","⏯️","◀️","⏪","⏮️","🔼","⏫","🔽","⏬","⏸️","⏹️","⏺️","⏏️","🎦","🔅","🔆","📶","📳","📴","♀️","♂️","⚧️","✖️","➕","➖","➗","♾️","‼️","⁉️","❓","❔","❕","❗","〰️","💱","💲","⚕️","♻️","⚜️","🔱","📛","🔰","⭕","✅","☑️","✔️","❌","❎","➰","➿","〽️","✳️","✴️","❇️","©️","®️","™️","#️⃣","*️⃣","0️⃣","1️⃣","2️⃣","3️⃣","4️⃣","5️⃣","6️⃣","7️⃣","8️⃣","9️⃣","🔟","🔠","🔡","🔢","🔣","🔤","🅰️","🆎","🅱️","🆑","🆒","🆓","ℹ️","🆔","Ⓜ️","🆕","🆖","🅾️","🆗","🅿️","🆘","🆙","🆚","🈁","🈂️","🈷️","🈶","🈯","🉐","🈹","🈚","🈲","🉑","🈸","🈴","🈳","㊗️","㊙️","🈺","🈵","🔴","🟠","🟡","🟢","🔵","🟣","🟤","⚫","⚪","🟥","🟧","🟨","🟩","🟦","🟪","🟫","⬛","⬜","◼️","◻️","◾","◽","▪️","▫️","🔶","🔷","🔸","🔹","🔺","🔻","💠","🔘","🔳","🔲"],flag:["🏁","🚩","🎌","🏴","🏳️","🏳️‍🌈","🏳️‍⚧️","🏴‍☠️","🇦🇨","🇦🇩","🇦🇪","🇦🇫","🇦🇬","🇦🇮","🇦🇱","🇦🇲","🇦🇴","🇦🇶","🇦🇷","🇦🇸","🇦🇹","🇦🇺","🇦🇼","🇦🇽","🇦🇿","🇧🇦","🇧🇧","🇧🇩","🇧🇪","🇧🇫","🇧🇬","🇧🇭","🇧🇮","🇧🇯","🇧🇱","🇧🇲","🇧🇳","🇧🇴","🇧🇶","🇧🇷","🇧🇸","🇧🇹","🇧🇻","🇧🇼","🇧🇾","🇧🇿","🇨🇦","🇨🇨","🇨🇩","🇨🇫","🇨🇬","🇨🇭","🇨🇮","🇨🇰","🇨🇱","🇨🇲","🇨🇳","🇨🇴","🇨🇵","🇨🇷","🇨🇺","🇨🇻","🇨🇼","🇨🇽","🇨🇾","🇨🇿","🇩🇪","🇩🇬","🇩🇯","🇩🇰","🇩🇲","🇩🇴","🇩🇿","🇪🇦","🇪🇨","🇪🇪","🇪🇬","🇪🇭","🇪🇷","🇪🇸","🇪🇹","🇪🇺","🇫🇮","🇫🇯","🇫🇰","🇫🇲","🇫🇴","🇫🇷","🇬🇦","🇬🇧","🇬🇩","🇬🇪","🇬🇫","🇬🇬","🇬🇭","🇬🇮","🇬🇱","🇬🇲","🇬🇳","🇬🇵","🇬🇶","🇬🇷","🇬🇸","🇬🇹","🇬🇺","🇬🇼","🇬🇾","🇭🇰","🇭🇲","🇭🇳","🇭🇷","🇭🇹","🇭🇺","🇮🇨","🇮🇩","🇮🇪","🇮🇱","🇮🇲","🇮🇳","🇮🇴","🇮🇶","🇮🇷","🇮🇸","🇮🇹","🇯🇪","🇯🇲","🇯🇴","🇯🇵","🇰🇪","🇰🇬","🇰🇭","🇰🇮","🇰🇲","🇰🇳","🇰🇵","🇰🇷","🇰🇼","🇰🇾","🇰🇿","🇱🇦","🇱🇧","🇱🇨","🇱🇮","🇱🇰","🇱🇷","🇱🇸","🇱🇹","🇱🇺","🇱🇻","🇱🇾","🇲🇦","🇲🇨","🇲🇩","🇲🇪","🇲🇫","🇲🇬","🇲🇭","🇲🇰","🇲🇱","🇲🇲","🇲🇳","🇲🇴","🇲🇵","🇲🇶","🇲🇷","🇲🇸","🇲🇹","🇲🇺","🇲🇻","🇲🇼","🇲🇽","🇲🇾","🇲🇿","🇳🇦","🇳🇨","🇳🇪","🇳🇫","🇳🇬","🇳🇮","🇳🇱","🇳🇴","🇳🇵","🇳🇷","🇳🇺","🇳🇿","🇴🇲","🇵🇦","🇵🇪","🇵🇫","🇵🇬","🇵🇭","🇵🇰","🇵🇱","🇵🇲","🇵🇳","🇵🇷","🇵🇸","🇵🇹","🇵🇼","🇵🇾","🇶🇦","🇷🇪","🇷🇴","🇷🇸","🇷🇺","🇷🇼","🇸🇦","🇸🇧","🇸🇨","🇸🇩","🇸🇪","🇸🇬","🇸🇭","🇸🇮","🇸🇯","🇸🇰","🇸🇱","🇸🇲","🇸🇳","🇸🇴","🇸🇷","🇸🇸","🇸🇹","🇸🇻","🇸🇽","🇸🇾","🇸🇿","🇹🇦","🇹🇨","🇹🇩","🇹🇫","🇹🇬","🇹🇭","🇹🇯","🇹🇰","🇹🇱","🇹🇲","🇹🇳","🇹🇴","🇹🇷","🇹🇹","🇹🇻","🇹🇼","🇹🇿","🇺🇦","🇺🇬","🇺🇲","🇺🇳","🇺🇸","🇺🇾","🇺🇿","🇻🇦","🇻🇨","🇻🇪","🇻🇬","🇻🇮","🇻🇳","🇻🇺","🇼🇫","🇼🇸","🇽🇰","🇾🇪","🇾🇹","🇿🇦","🇿🇲","🇿🇼"]},http_status_code:{informational:[100,101,102,103],success:[200,201,202,203,204,205,206,207,208,226],redirection:[300,301,302,303,304,305,306,307,308],clientError:[400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,421,422,423,424,425,426,428,429,431,451],serverError:[500,501,502,503,504,505,506,507,508,510,511]}},location:{country_code:[{alpha2:"AD",alpha3:"AND",numeric:"020"},{alpha2:"AE",alpha3:"ARE",numeric:"784"},{alpha2:"AF",alpha3:"AFG",numeric:"004"},{alpha2:"AG",alpha3:"ATG",numeric:"028"},{alpha2:"AI",alpha3:"AIA",numeric:"660"},{alpha2:"AL",alpha3:"ALB",numeric:"008"},{alpha2:"AM",alpha3:"ARM",numeric:"051"},{alpha2:"AO",alpha3:"AGO",numeric:"024"},{alpha2:"AQ",alpha3:"ATA",numeric:"010"},{alpha2:"AR",alpha3:"ARG",numeric:"032"},{alpha2:"AS",alpha3:"ASM",numeric:"016"},{alpha2:"AT",alpha3:"AUT",numeric:"040"},{alpha2:"AU",alpha3:"AUS",numeric:"036"},{alpha2:"AW",alpha3:"ABW",numeric:"533"},{alpha2:"AX",alpha3:"ALA",numeric:"248"},{alpha2:"AZ",alpha3:"AZE",numeric:"031"},{alpha2:"BA",alpha3:"BIH",numeric:"070"},{alpha2:"BB",alpha3:"BRB",numeric:"052"},{alpha2:"BD",alpha3:"BGD",numeric:"050"},{alpha2:"BE",alpha3:"BEL",numeric:"056"},{alpha2:"BF",alpha3:"BFA",numeric:"854"},{alpha2:"BG",alpha3:"BGR",numeric:"100"},{alpha2:"BH",alpha3:"BHR",numeric:"048"},{alpha2:"BI",alpha3:"BDI",numeric:"108"},{alpha2:"BJ",alpha3:"BEN",numeric:"204"},{alpha2:"BL",alpha3:"BLM",numeric:"652"},{alpha2:"BM",alpha3:"BMU",numeric:"060"},{alpha2:"BN",alpha3:"BRN",numeric:"096"},{alpha2:"BO",alpha3:"BOL",numeric:"068"},{alpha2:"BQ",alpha3:"BES",numeric:"535"},{alpha2:"BR",alpha3:"BRA",numeric:"076"},{alpha2:"BS",alpha3:"BHS",numeric:"044"},{alpha2:"BT",alpha3:"BTN",numeric:"064"},{alpha2:"BV",alpha3:"BVT",numeric:"074"},{alpha2:"BW",alpha3:"BWA",numeric:"072"},{alpha2:"BY",alpha3:"BLR",numeric:"112"},{alpha2:"BZ",alpha3:"BLZ",numeric:"084"},{alpha2:"CA",alpha3:"CAN",numeric:"124"},{alpha2:"CC",alpha3:"CCK",numeric:"166"},{alpha2:"CD",alpha3:"COD",numeric:"180"},{alpha2:"CF",alpha3:"CAF",numeric:"140"},{alpha2:"CG",alpha3:"COG",numeric:"178"},{alpha2:"CH",alpha3:"CHE",numeric:"756"},{alpha2:"CI",alpha3:"CIV",numeric:"384"},{alpha2:"CK",alpha3:"COK",numeric:"184"},{alpha2:"CL",alpha3:"CHL",numeric:"152"},{alpha2:"CM",alpha3:"CMR",numeric:"120"},{alpha2:"CN",alpha3:"CHN",numeric:"156"},{alpha2:"CO",alpha3:"COL",numeric:"170"},{alpha2:"CR",alpha3:"CRI",numeric:"188"},{alpha2:"CU",alpha3:"CUB",numeric:"192"},{alpha2:"CV",alpha3:"CPV",numeric:"132"},{alpha2:"CW",alpha3:"CUW",numeric:"531"},{alpha2:"CX",alpha3:"CXR",numeric:"162"},{alpha2:"CY",alpha3:"CYP",numeric:"196"},{alpha2:"CZ",alpha3:"CZE",numeric:"203"},{alpha2:"DE",alpha3:"DEU",numeric:"276"},{alpha2:"DJ",alpha3:"DJI",numeric:"262"},{alpha2:"DK",alpha3:"DNK",numeric:"208"},{alpha2:"DM",alpha3:"DMA",numeric:"212"},{alpha2:"DO",alpha3:"DOM",numeric:"214"},{alpha2:"DZ",alpha3:"DZA",numeric:"012"},{alpha2:"EC",alpha3:"ECU",numeric:"218"},{alpha2:"EE",alpha3:"EST",numeric:"233"},{alpha2:"EG",alpha3:"EGY",numeric:"818"},{alpha2:"EH",alpha3:"ESH",numeric:"732"},{alpha2:"ER",alpha3:"ERI",numeric:"232"},{alpha2:"ES",alpha3:"ESP",numeric:"724"},{alpha2:"ET",alpha3:"ETH",numeric:"231"},{alpha2:"FI",alpha3:"FIN",numeric:"246"},{alpha2:"FJ",alpha3:"FJI",numeric:"242"},{alpha2:"FK",alpha3:"FLK",numeric:"238"},{alpha2:"FM",alpha3:"FSM",numeric:"583"},{alpha2:"FO",alpha3:"FRO",numeric:"234"},{alpha2:"FR",alpha3:"FRA",numeric:"250"},{alpha2:"GA",alpha3:"GAB",numeric:"266"},{alpha2:"GB",alpha3:"GBR",numeric:"826"},{alpha2:"GD",alpha3:"GRD",numeric:"308"},{alpha2:"GE",alpha3:"GEO",numeric:"268"},{alpha2:"GF",alpha3:"GUF",numeric:"254"},{alpha2:"GG",alpha3:"GGY",numeric:"831"},{alpha2:"GH",alpha3:"GHA",numeric:"288"},{alpha2:"GI",alpha3:"GIB",numeric:"292"},{alpha2:"GL",alpha3:"GRL",numeric:"304"},{alpha2:"GM",alpha3:"GMB",numeric:"270"},{alpha2:"GN",alpha3:"GIN",numeric:"324"},{alpha2:"GP",alpha3:"GLP",numeric:"312"},{alpha2:"GQ",alpha3:"GNQ",numeric:"226"},{alpha2:"GR",alpha3:"GRC",numeric:"300"},{alpha2:"GS",alpha3:"SGS",numeric:"239"},{alpha2:"GT",alpha3:"GTM",numeric:"320"},{alpha2:"GU",alpha3:"GUM",numeric:"316"},{alpha2:"GW",alpha3:"GNB",numeric:"624"},{alpha2:"GY",alpha3:"GUY",numeric:"328"},{alpha2:"HK",alpha3:"HKG",numeric:"344"},{alpha2:"HM",alpha3:"HMD",numeric:"334"},{alpha2:"HN",alpha3:"HND",numeric:"340"},{alpha2:"HR",alpha3:"HRV",numeric:"191"},{alpha2:"HT",alpha3:"HTI",numeric:"332"},{alpha2:"HU",alpha3:"HUN",numeric:"348"},{alpha2:"ID",alpha3:"IDN",numeric:"360"},{alpha2:"IE",alpha3:"IRL",numeric:"372"},{alpha2:"IL",alpha3:"ISR",numeric:"376"},{alpha2:"IM",alpha3:"IMN",numeric:"833"},{alpha2:"IN",alpha3:"IND",numeric:"356"},{alpha2:"IO",alpha3:"IOT",numeric:"086"},{alpha2:"IQ",alpha3:"IRQ",numeric:"368"},{alpha2:"IR",alpha3:"IRN",numeric:"364"},{alpha2:"IS",alpha3:"ISL",numeric:"352"},{alpha2:"IT",alpha3:"ITA",numeric:"380"},{alpha2:"JE",alpha3:"JEY",numeric:"832"},{alpha2:"JM",alpha3:"JAM",numeric:"388"},{alpha2:"JO",alpha3:"JOR",numeric:"400"},{alpha2:"JP",alpha3:"JPN",numeric:"392"},{alpha2:"KE",alpha3:"KEN",numeric:"404"},{alpha2:"KG",alpha3:"KGZ",numeric:"417"},{alpha2:"KH",alpha3:"KHM",numeric:"116"},{alpha2:"KI",alpha3:"KIR",numeric:"296"},{alpha2:"KM",alpha3:"COM",numeric:"174"},{alpha2:"KN",alpha3:"KNA",numeric:"659"},{alpha2:"KP",alpha3:"PRK",numeric:"408"},{alpha2:"KR",alpha3:"KOR",numeric:"410"},{alpha2:"KW",alpha3:"KWT",numeric:"414"},{alpha2:"KY",alpha3:"CYM",numeric:"136"},{alpha2:"KZ",alpha3:"KAZ",numeric:"398"},{alpha2:"LA",alpha3:"LAO",numeric:"418"},{alpha2:"LB",alpha3:"LBN",numeric:"422"},{alpha2:"LC",alpha3:"LCA",numeric:"662"},{alpha2:"LI",alpha3:"LIE",numeric:"438"},{alpha2:"LK",alpha3:"LKA",numeric:"144"},{alpha2:"LR",alpha3:"LBR",numeric:"430"},{alpha2:"LS",alpha3:"LSO",numeric:"426"},{alpha2:"LT",alpha3:"LTU",numeric:"440"},{alpha2:"LU",alpha3:"LUX",numeric:"442"},{alpha2:"LV",alpha3:"LVA",numeric:"428"},{alpha2:"LY",alpha3:"LBY",numeric:"434"},{alpha2:"MA",alpha3:"MAR",numeric:"504"},{alpha2:"MC",alpha3:"MCO",numeric:"492"},{alpha2:"MD",alpha3:"MDA",numeric:"498"},{alpha2:"ME",alpha3:"MNE",numeric:"499"},{alpha2:"MF",alpha3:"MAF",numeric:"663"},{alpha2:"MG",alpha3:"MDG",numeric:"450"},{alpha2:"MH",alpha3:"MHL",numeric:"584"},{alpha2:"MK",alpha3:"MKD",numeric:"807"},{alpha2:"ML",alpha3:"MLI",numeric:"466"},{alpha2:"MM",alpha3:"MMR",numeric:"104"},{alpha2:"MN",alpha3:"MNG",numeric:"496"},{alpha2:"MO",alpha3:"MAC",numeric:"446"},{alpha2:"MP",alpha3:"MNP",numeric:"580"},{alpha2:"MQ",alpha3:"MTQ",numeric:"474"},{alpha2:"MR",alpha3:"MRT",numeric:"478"},{alpha2:"MS",alpha3:"MSR",numeric:"500"},{alpha2:"MT",alpha3:"MLT",numeric:"470"},{alpha2:"MU",alpha3:"MUS",numeric:"480"},{alpha2:"MV",alpha3:"MDV",numeric:"462"},{alpha2:"MW",alpha3:"MWI",numeric:"454"},{alpha2:"MX",alpha3:"MEX",numeric:"484"},{alpha2:"MY",alpha3:"MYS",numeric:"458"},{alpha2:"MZ",alpha3:"MOZ",numeric:"508"},{alpha2:"NA",alpha3:"NAM",numeric:"516"},{alpha2:"NC",alpha3:"NCL",numeric:"540"},{alpha2:"NE",alpha3:"NER",numeric:"562"},{alpha2:"NF",alpha3:"NFK",numeric:"574"},{alpha2:"NG",alpha3:"NGA",numeric:"566"},{alpha2:"NI",alpha3:"NIC",numeric:"558"},{alpha2:"NL",alpha3:"NLD",numeric:"528"},{alpha2:"NO",alpha3:"NOR",numeric:"578"},{alpha2:"NP",alpha3:"NPL",numeric:"524"},{alpha2:"NR",alpha3:"NRU",numeric:"520"},{alpha2:"NU",alpha3:"NIU",numeric:"570"},{alpha2:"NZ",alpha3:"NZL",numeric:"554"},{alpha2:"OM",alpha3:"OMN",numeric:"512"},{alpha2:"PA",alpha3:"PAN",numeric:"591"},{alpha2:"PE",alpha3:"PER",numeric:"604"},{alpha2:"PF",alpha3:"PYF",numeric:"258"},{alpha2:"PG",alpha3:"PNG",numeric:"598"},{alpha2:"PH",alpha3:"PHL",numeric:"608"},{alpha2:"PK",alpha3:"PAK",numeric:"586"},{alpha2:"PL",alpha3:"POL",numeric:"616"},{alpha2:"PM",alpha3:"SPM",numeric:"666"},{alpha2:"PN",alpha3:"PCN",numeric:"612"},{alpha2:"PR",alpha3:"PRI",numeric:"630"},{alpha2:"PS",alpha3:"PSE",numeric:"275"},{alpha2:"PT",alpha3:"PRT",numeric:"620"},{alpha2:"PW",alpha3:"PLW",numeric:"585"},{alpha2:"PY",alpha3:"PRY",numeric:"600"},{alpha2:"QA",alpha3:"QAT",numeric:"634"},{alpha2:"RE",alpha3:"REU",numeric:"638"},{alpha2:"RO",alpha3:"ROU",numeric:"642"},{alpha2:"RS",alpha3:"SRB",numeric:"688"},{alpha2:"RU",alpha3:"RUS",numeric:"643"},{alpha2:"RW",alpha3:"RWA",numeric:"646"},{alpha2:"SA",alpha3:"SAU",numeric:"682"},{alpha2:"SB",alpha3:"SLB",numeric:"090"},{alpha2:"SC",alpha3:"SYC",numeric:"690"},{alpha2:"SD",alpha3:"SDN",numeric:"729"},{alpha2:"SE",alpha3:"SWE",numeric:"752"},{alpha2:"SG",alpha3:"SGP",numeric:"702"},{alpha2:"SH",alpha3:"SHN",numeric:"654"},{alpha2:"SI",alpha3:"SVN",numeric:"705"},{alpha2:"SJ",alpha3:"SJM",numeric:"744"},{alpha2:"SK",alpha3:"SVK",numeric:"703"},{alpha2:"SL",alpha3:"SLE",numeric:"694"},{alpha2:"SM",alpha3:"SMR",numeric:"674"},{alpha2:"SN",alpha3:"SEN",numeric:"686"},{alpha2:"SO",alpha3:"SOM",numeric:"706"},{alpha2:"SR",alpha3:"SUR",numeric:"740"},{alpha2:"SS",alpha3:"SSD",numeric:"728"},{alpha2:"ST",alpha3:"STP",numeric:"678"},{alpha2:"SV",alpha3:"SLV",numeric:"222"},{alpha2:"SX",alpha3:"SXM",numeric:"534"},{alpha2:"SY",alpha3:"SYR",numeric:"760"},{alpha2:"SZ",alpha3:"SWZ",numeric:"748"},{alpha2:"TC",alpha3:"TCA",numeric:"796"},{alpha2:"TD",alpha3:"TCD",numeric:"148"},{alpha2:"TF",alpha3:"ATF",numeric:"260"},{alpha2:"TG",alpha3:"TGO",numeric:"768"},{alpha2:"TH",alpha3:"THA",numeric:"764"},{alpha2:"TJ",alpha3:"TJK",numeric:"762"},{alpha2:"TK",alpha3:"TKL",numeric:"772"},{alpha2:"TL",alpha3:"TLS",numeric:"626"},{alpha2:"TM",alpha3:"TKM",numeric:"795"},{alpha2:"TN",alpha3:"TUN",numeric:"788"},{alpha2:"TO",alpha3:"TON",numeric:"776"},{alpha2:"TR",alpha3:"TUR",numeric:"792"},{alpha2:"TT",alpha3:"TTO",numeric:"780"},{alpha2:"TV",alpha3:"TUV",numeric:"798"},{alpha2:"TW",alpha3:"TWN",numeric:"158"},{alpha2:"TZ",alpha3:"TZA",numeric:"834"},{alpha2:"UA",alpha3:"UKR",numeric:"804"},{alpha2:"UG",alpha3:"UGA",numeric:"800"},{alpha2:"UM",alpha3:"UMI",numeric:"581"},{alpha2:"US",alpha3:"USA",numeric:"840"},{alpha2:"UY",alpha3:"URY",numeric:"858"},{alpha2:"UZ",alpha3:"UZB",numeric:"860"},{alpha2:"VA",alpha3:"VAT",numeric:"336"},{alpha2:"VC",alpha3:"VCT",numeric:"670"},{alpha2:"VE",alpha3:"VEN",numeric:"862"},{alpha2:"VG",alpha3:"VGB",numeric:"092"},{alpha2:"VI",alpha3:"VIR",numeric:"850"},{alpha2:"VN",alpha3:"VNM",numeric:"704"},{alpha2:"VU",alpha3:"VUT",numeric:"548"},{alpha2:"WF",alpha3:"WLF",numeric:"876"},{alpha2:"WS",alpha3:"WSM",numeric:"882"},{alpha2:"YE",alpha3:"YEM",numeric:"887"},{alpha2:"YT",alpha3:"MYT",numeric:"175"},{alpha2:"ZA",alpha3:"ZAF",numeric:"710"},{alpha2:"ZM",alpha3:"ZMB",numeric:"894"},{alpha2:"ZW",alpha3:"ZWE",numeric:"716"}],time_zone:YC},metadata:{title:"Base",code:"base"},system:{directory_path:["/Applications","/bin","/boot","/boot/defaults","/dev","/etc","/etc/defaults","/etc/mail","/etc/namedb","/etc/periodic","/etc/ppp","/home","/home/user","/home/user/dir","/lib","/Library","/lost+found","/media","/mnt","/net","/Network","/opt","/opt/bin","/opt/include","/opt/lib","/opt/sbin","/opt/share","/private","/private/tmp","/private/var","/proc","/rescue","/root","/sbin","/selinux","/srv","/sys","/System","/tmp","/Users","/usr","/usr/X11R6","/usr/bin","/usr/include","/usr/lib","/usr/libdata","/usr/libexec","/usr/local/bin","/usr/local/src","/usr/obj","/usr/ports","/usr/sbin","/usr/share","/usr/src","/var","/var/log","/var/mail","/var/spool","/var/tmp","/var/yp"],mime_type:{"application/epub+zip":{extensions:["epub"]},"application/gzip":{extensions:["gz"]},"application/java-archive":{extensions:["jar","war","ear"]},"application/json":{extensions:["json","map"]},"application/ld+json":{extensions:["jsonld"]},"application/msword":{extensions:["doc","dot"]},"application/octet-stream":{extensions:["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"]},"application/ogg":{extensions:["ogx"]},"application/pdf":{extensions:["pdf"]},"application/rtf":{extensions:["rtf"]},"application/vnd.amazon.ebook":{extensions:["azw"]},"application/vnd.apple.installer+xml":{extensions:["mpkg"]},"application/vnd.mozilla.xul+xml":{extensions:["xul"]},"application/vnd.ms-excel":{extensions:["xls","xlm","xla","xlc","xlt","xlw"]},"application/vnd.ms-fontobject":{extensions:["eot"]},"application/vnd.ms-powerpoint":{extensions:["ppt","pps","pot"]},"application/vnd.oasis.opendocument.presentation":{extensions:["odp"]},"application/vnd.oasis.opendocument.spreadsheet":{extensions:["ods"]},"application/vnd.oasis.opendocument.text":{extensions:["odt"]},"application/vnd.openxmlformats-officedocument.presentationml.presentation":{extensions:["pptx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":{extensions:["xlsx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.document":{extensions:["docx"]},"application/vnd.rar":{extensions:["rar"]},"application/vnd.visio":{extensions:["vsd","vst","vss","vsw"]},"application/x-7z-compressed":{extensions:["7z"]},"application/x-abiword":{extensions:["abw"]},"application/x-bzip":{extensions:["bz"]},"application/x-bzip2":{extensions:["bz2","boz"]},"application/x-csh":{extensions:["csh"]},"application/x-freearc":{extensions:["arc"]},"application/x-httpd-php":{extensions:["php"]},"application/x-sh":{extensions:["sh"]},"application/x-tar":{extensions:["tar"]},"application/xhtml+xml":{extensions:["xhtml","xht"]},"application/xml":{extensions:["xml","xsl","xsd","rng"]},"application/zip":{extensions:["zip"]},"audio/3gpp":{extensions:["3gpp"]},"audio/3gpp2":{extensions:["3g2"]},"audio/aac":{extensions:["aac"]},"audio/midi":{extensions:["mid","midi","kar","rmi"]},"audio/mpeg":{extensions:["mpga","mp2","mp2a","mp3","m2a","m3a"]},"audio/ogg":{extensions:["oga","ogg","spx","opus"]},"audio/opus":{extensions:["opus"]},"audio/wav":{extensions:["wav"]},"audio/webm":{extensions:["weba"]},"font/otf":{extensions:["otf"]},"font/ttf":{extensions:["ttf"]},"font/woff":{extensions:["woff"]},"font/woff2":{extensions:["woff2"]},"image/avif":{extensions:["avif"]},"image/bmp":{extensions:["bmp"]},"image/gif":{extensions:["gif"]},"image/jpeg":{extensions:["jpeg","jpg","jpe"]},"image/png":{extensions:["png"]},"image/svg+xml":{extensions:["svg","svgz"]},"image/tiff":{extensions:["tif","tiff"]},"image/vnd.microsoft.icon":{extensions:["ico"]},"image/webp":{extensions:["webp"]},"text/calendar":{extensions:["ics","ifb"]},"text/css":{extensions:["css"]},"text/csv":{extensions:["csv"]},"text/html":{extensions:["html","htm","shtml"]},"text/javascript":{extensions:["js","mjs"]},"text/plain":{extensions:["txt","text","conf","def","list","log","in","ini"]},"video/3gpp":{extensions:["3gp","3gpp"]},"video/3gpp2":{extensions:["3g2"]},"video/mp2t":{extensions:["ts"]},"video/mp4":{extensions:["mp4","mp4v","mpg4"]},"video/mpeg":{extensions:["mpeg","mpg","mpe","m1v","m2v"]},"video/ogg":{extensions:["ogv"]},"video/webm":{extensions:["webm"]},"video/x-msvideo":{extensions:["avi"]}}}},UC=new class extends uC{rawDefinitions;definitions;airline=new Lw(this);animal=new dC(this);color=new Pw(this);commerce=new yC(this);company=new fC(this);database=new mC(this);date=new qw(this);finance=new vC(this);food=new xC(this);git=new kC(this);hacker=new wC(this);helpers=new iC(this);image=new _C(this);internet=new EC(this);location=new RC(this);lorem=new PC(this);music=new NC(this);person=new zw(this);phone=new GC(this);science=new IC(this);system=new JC(this);vehicle=new VC(this);word=new jC(this);get address(){return hC({deprecated:"faker.address",proposed:"faker.location",since:"8.0",until:"10.0"}),this.location}get name(){return hC({deprecated:"faker.name",proposed:"faker.person",since:"8.0",until:"10.0"}),this.person}constructor(e){super({randomizer:e.randomizer});let{locale:t}=e;if(Array.isArray(t)){if(0===t.length)throw new ww("The locale option must contain at least one locale definition.");t=function(e){let t={};for(let r of e)for(let e in r){let a=r[e];void 0===t[e]?t[e]={...a}:t[e]={...a,...t[e]}}return t}(t)}this.rawDefinitions=t,this.definitions=jw(this.rawDefinitions)}getMetadata(){return this.rawDefinitions.metadata??{}}}({locale:[kw,$C]});class qC{data_length=50;generated_data=[];auto_proceed=!0;locale="en_GB";imgAPIs=["https://picsum.photos/500/500?random=","https://avatar.iran.liara.run/public/"];constructor({length:e,auto_proceed:t,locale:r}){void 0!==e&&(this.data_length=e),void 0!==t&&(this.auto_proceed=t),void 0!==r&&(this.locale=r.replace("-","_")),this.auto_proceed&&this.generate()}generate(){return this.make_data()}make_data(){for(let e=0;e0&&(t.parentId=this.get_parent_id(e)),this.generated_data.push(t)}return this.generated_data}get_parent_id(e){let t=Math.floor(Math.random()*this.generated_data.length).toString();return t=0==parseInt(t)?"1":t,t==(e+1).toString()&&(t=this.get_parent_id(e)),t}generate_data(e){const t=Math.floor(2*Math.random()),r=this.imgAPIs[Math.floor(Math.random()*this.imgAPIs.length)]+e;return{id:e,name:UC.person.fullName(),role:UC.person.jobTitle(),location:UC.location.city()+", "+UC.location.country(),image:t?r:""}}}class ZC{tree_data=[];handleCollapseChildren=()=>{};center_elem=({})=>null;itemHierarchy=[];tmp_tree_data=[];tree_level_step=2;display_tree_in_step=!0;auto_display_tree_in_step=!0;link_point_position={top:e=>`translate(${parseInt(e.attr("width"))/2}, 0)`,bottom:e=>`translate(${parseInt(e.attr("width"))/2}, ${e.attr("height")})`,right:e=>`translate(${e.attr("width")}, ${e.attr("height")/2})`,left:e=>`translate(0, ${e.attr("height")/2})`};inverse_link_point_position={top:"bottom",bottom:"top",left:"right",right:"left"};chartHeadWidth=120;chartHeadHeight=130;chartHeadLandscapeWidth=240;chartHeadLandscapeHeight=80;chartHeadRoundedWidth=120;chartHeadRoundedHeight=180;color_handler={};chart_head_type="default";show_chart_head_border=!0;animation_rotation_speed=50;animation_rotation_interval=1;head_linker_thumb_circle_radius=8;linker_thumb_icon_color="bright500";linker_thumb_shape="symbolDiamond2";head_image_shape="symbolCircle";head_image_surface_area=60;chart_head_bg="#ffffff";auto_set_chart_head_bg=!1;emitEvent=()=>!1;tree_link_types={curveBumpX:Hx,curveBumpY:Dx,curveBasisClosed:bk,curveLinear:gx,curveStep:Yk,curveStepAfter:Uk,curveStepBefore:$k};tree_link_type=void 0;rootWrapperContainer=null;app_unique_id="";app_root_unique_selector="";constructor(){setTimeout((()=>{this.app_root_unique_selector=`[data-ts-unique-id='${this.app_unique_id}']`}),0)}createDynamicEl(){return new xw}splitStringIntoBatch(e,t){let r=[];for(let a=0;a1?t?.[0][0]+t?.at(-1)?.[0]:t?.[0][0]}format_employee_name(e,t=15){const r=e?.split(" "),a=r?.length>2?r?.[0]+" "+r?.at(-1):r?.join(" ");return this.splitStringIntoBatch(a,t)}symbol_type(e){const t=e.replace(/symbol/,"").toLowerCase();return["circle","cross","diamond","square","star","triangle","wye"].includes(t)?"fill":["plus","x","triangle2","asterisk","square2","diamond2"].includes(t)?"stroke":"fill"}get_page_body_bg(){const e=document.body.style.getPropertyValue("background-color");return""==e?"#ffffff":e}get_chart_head_bg(){return this.auto_set_chart_head_bg?this.get_page_body_bg():this.chart_head_bg}get_image_shape_spacing(e){return{symbolCircle:10,symbolCross:10,symbolDiamond:25,symbolDiamond2:10,symbolSquare:0,symbolSquare2:-8,symbolStar:20,symbolTriangle:20,symbolTriangle2:10,symbolWye:20}[e]}makeHead(e,t=!1,r={parent:"bottom",children:"top"}){return"default"==this.chart_head_type?this.defaultHead(e,t,r):"landscape"==this.chart_head_type?this.landscapeHead(e,t,r):"rounded"==this.chart_head_type?this.roundedHead(e,t,r):this.defaultHead(e,t,r)}handleCenterHead(e){e.stopPropagation();const t=e.currentTarget.getBoundingClientRect();this.center_elem(t)}defaultHead(e,t=!1,r={parent:"bottom",children:"top"}){const a=this.tree_data.filter((t=>t.parentId===e.id)).length>0,i=this.tree_data.filter((t=>t.id===e.parentId)).length>0,n=this.color_handler.getColor(e.id);let o=0;const c=this.get_chart_head_bg(),l=Yt("svg").attr("class","main-svg-el"+(this.getIsElRootTreeChild(e.id)?" root-svg-el":"")).attr("width",this.chartHeadWidth).attr("height",this.chartHeadHeight).attr("style","background-color: "+c).on("dblclick",(e=>this.handleCenterHead(e)));Yt("defs").append("filter").attr("id","blur1").attr("x",0).attr("y",0).append("feGaussianBlur").attr("in","SourceGraphic").attr("stdDeviation","3");const s=l.append("g"),u=s?.append("rect").attr("rx",16).attr("ry",16).attr("width",this.chartHeadWidth).attr("height",this.chartHeadHeight).attr("stroke",this.show_chart_head_border?n.color:"none").attr("fill","none").attr("stroke-width",0),h=parseInt(u.attr("width"))/2,d=s?.append("g").attr("y",100),p=Math.pow(this.head_image_surface_area-this.get_image_shape_spacing(this.head_image_shape),2);if(e.image){let t=h-this.head_image_surface_area;t=t>10?0:t-10,t=t>0?-t:t,t=h-this.head_image_surface_area<=10&&0==t?-10:t,o=h-this.head_image_surface_area<1?Math.abs(h-this.head_image_surface_area)+15:0,d.append("defs").append("clipPath").attr("id","default-head-clip-"+e.id).append("path").attr("d",pk().type(bw[this.head_image_shape]).size(p)).attr("transform",`translate(${parseInt(u.attr("width"))/2}, ${this.head_image_surface_area+t})`).attr("fill",n.bright500),d?.append("image").attr("href",e.image).attr("preserveAspectRatio","xMaxYMax slice").attr("width",this.head_image_surface_area).attr("height",this.head_image_surface_area).attr("x",parseInt(u.attr("width"))/2-this.head_image_surface_area/2).attr("y",this.head_image_surface_area/2+t).attr("clip-path",`url(#default-head-clip-${e.id})`)}else o=h-this.head_image_surface_area<1?Math.abs(h-this.head_image_surface_area)+15:0,d?.append("path").attr("d",pk().type(bw[this.head_image_shape]).size(p)).attr("stroke","stroke"==this.symbol_type(this.head_image_shape)?n.color:"none").attr("stroke-width","stroke"==this.symbol_type(this.head_image_shape)?1:0).attr("fill","stroke"==this.symbol_type(this.head_image_shape)?"transparent":n.color).attr("transform",`translate(${parseInt(u.attr("width"))/2}, 50)`),d?.append("text").attr("class","").attr("text-anchor","middle").attr("fill","stroke"==this.symbol_type(this.head_image_shape)?n.color:n.bright500).attr("x",parseInt(u.attr("width"))/2).attr("y",56).attr("font-size","95%").text(this.get_user_initials(e.name));this.format_employee_name(e.name).forEach(((e,t)=>{s?.append("text").attr("text-anchor","middle").attr("x",parseInt(u.attr("width"))/2).attr("y",t>0?95+o:80+o).attr("font-size","85%").attr("fill",n.darker).attr("style","text-transform: "+(t>0?"none":"capitalize")).text(e),t>0&&(o+=15)}));const y=s?.append("text").attr("text-anchor","middle").attr("x",parseInt(u.attr("width"))/2).attr("y",100+o).attr("font-size","65%");if(this.splitStringIntoBatch(e.role,20).forEach(((e,t)=>{y?.append("tspan").attr("x",parseInt(u.attr("width"))/2).attr("dy",t>0?".6rem":0).text(e.toString()).attr("fill",n.dark100),t>0&&(o+=10)})),void 0!==e.location){const t=s?.append("text").attr("text-anchor","middle").attr("x",parseInt(u.attr("width"))/2).attr("y",115+o).attr("font-size","65%").attr("fill",n.dark100);this.splitStringIntoBatch(e.location,19).forEach(((e,r)=>{t?.append("tspan").attr("x",parseInt(u.attr("width"))/2).attr("dy",r>0?".6rem":0).text(e.toString()),r>0&&(o+=10)}))}const f=this.chartHeadHeight+o;return u?.attr("height",f),l?.attr("height",f),this.add_linker(s,i,a,r,n,u,l,e,t),this.emitEvent("chart_head.create",{headNode:l.node()}),l}landscapeHead(e,t=!1,r={parent:"bottom",children:"top"}){const a=this.tree_data.filter((t=>t.parentId===e.id)).length>0,i=this.tree_data.filter((t=>t.id===e.parentId)).length>0,n=this.color_handler.getColor(e.id);let o=0;const c=Yt("svg").attr("class","main-svg-el"+(this.getIsElRootTreeChild(e.id)?" root-svg-el":"")).attr("width",this.chartHeadLandscapeWidth).attr("height",this.chartHeadLandscapeHeight).attr("style","background-color: "+this.chart_head_bg).on("dblclick",(e=>this.handleCenterHead(e))),l=c.append("g"),s=l?.append("rect").attr("rx",16).attr("ry",16).attr("width",this.chartHeadLandscapeWidth).attr("height",this.chartHeadLandscapeHeight).attr("stroke",this.show_chart_head_border?n.color:"none").attr("fill","none").attr("stroke-width",0),u=parseInt(s.attr("height"))/2,h=this.format_employee_name(e.name,18),d=l.append("g").attr("x",0).attr("y",0),p=l.append("g"),y=this.chartHeadLandscapeHeight+o;if(s.attr("height",y),c.attr("height",y),e.image){let t=u-this.head_image_surface_area;t=t>10?0:t-10,t=t>0?-t:t,t=u-this.head_image_surface_area<=10&&0==t?-10:t;const r=this.head_image_surface_area>u?Math.abs(this.head_image_surface_area-u):0;s.attr("height",y+r),c.attr("height",y+r),c.attr("width",this.chartHeadLandscapeWidth+r),s.attr("width",this.chartHeadLandscapeWidth+r),p.append("defs").append("clipPath").attr("id","landscape-clip-"+e.id).append("path").attr("d",pk().type(bw[this.head_image_shape]).size(Math.pow(this.head_image_surface_area-this.get_image_shape_spacing(this.head_image_shape),2))).attr("transform",`translate(${parseInt(s.attr("height"))/2}, ${this.head_image_surface_area+(t+20)})`).attr("fill",n.bright500),p?.append("image").attr("href",e.image).attr("preserveAspectRatio","xMaxYMax slice").attr("width",this.head_image_surface_area).attr("height",this.head_image_surface_area).attr("x",parseInt(s.attr("height"))/2-this.head_image_surface_area/2).attr("y",this.head_image_surface_area/2+(t+20)).attr("clip-path",`url(#landscape-clip-${e.id})`)}else{const t=this.head_image_surface_area>u?Math.abs(this.head_image_surface_area-u):0;s.attr("height",y+t),c.attr("height",y+t),c.attr("width",this.chartHeadLandscapeWidth+t),s.attr("width",this.chartHeadLandscapeWidth+t),p?.append("path").attr("d",pk().type(bw[this.head_image_shape]).size(Math.pow(this.head_image_surface_area-this.get_image_shape_spacing(this.head_image_shape),2))).attr("stroke","stroke"==this.symbol_type(this.head_image_shape)?n.color:"none").attr("stroke-width","stroke"==this.symbol_type(this.head_image_shape)?1:0).attr("fill","stroke"==this.symbol_type(this.head_image_shape)?"transparent":n.color).attr("transform",`translate(${parseInt(s.attr("height"))/2}, 50)`),p?.append("text").attr("class","").attr("text-anchor","middle").attr("fill","stroke"==this.symbol_type(this.head_image_shape)?n.color:n.bright500).attr("x",parseInt(s.attr("height"))/2).attr("y",parseInt(s.attr("height"))/2+6).attr("font-size","95%").text(this.get_user_initials(e.name))}const f=parseInt(s.attr("height")),m=d?.append("text").attr("x",f).attr("y",30).attr("font-size","95%").attr("fill",n.darker);h.forEach(((e,t)=>{m?.append("tspan").attr("x",f).attr("y",30).attr("dy",t>0?".7rem":0).attr("font-size","95%").attr("style","z-index: +9").text(e.toString()),t>0&&(o+=10)}));const g=d?.append("text").attr("x",f).attr("y",50+o).attr("font-size","65%");if(this.splitStringIntoBatch(e.role,30).forEach(((e,t)=>{g?.append("tspan").attr("x",f).attr("dy",t>0?".6rem":0).attr("y",50+o).text(e.toString()).attr("fill",n.dark100),t>0&&(o+=10)})),void 0!==e.location){const t=d?.append("text").attr("x",f).attr("y",65+o).attr("font-size","65%").attr("fill",n.dark100);this.splitStringIntoBatch(e.location,30).forEach(((e,r)=>{t?.append("tspan").attr("x",f).attr("dy",r>0?".6rem":0).text(e.toString()),r>0&&(o+=10)}))}return this.add_linker(l,i,a,r,n,s,c,e,t),this.emitEvent("chart_head.create",{headNode:c.node()}),c}roundedHead(e,t=!1,r={parent:"bottom",children:"top"}){const a=this.tree_data.filter((t=>t.parentId===e.id)).length>0,i=this.tree_data.filter((t=>t.id===e.parentId)).length>0,n=this.color_handler.getColor(e.id);let o=0;const c=Yt("svg").attr("class","main-svg-el rounded-head"+(this.getIsElRootTreeChild(e.id)?" root-svg-el":"")).attr("style","overflow: visible;").attr("width",this.chartHeadRoundedWidth).attr("height",this.chartHeadRoundedHeight).attr("fill","none").on("dblclick",(e=>this.handleCenterHead(e))),l=c.append("g"),s=l?.append("rect").attr("rx",16).attr("ry",16).attr("width",this.chartHeadRoundedWidth).attr("height",this.chartHeadRoundedHeight).attr("stroke",this.show_chart_head_border?n.color:"none").attr("fill","none").attr("stroke-width",0),u=parseInt(s.attr("width"))/2,h=l?.append("g"),d=Math.pow(2*(this.head_image_surface_area-this.get_image_shape_spacing(this.head_image_shape)),2),p=bw[this.head_image_shape];if(e.image){let t=u-this.head_image_surface_area;t=t>10?0:t-10,t=t>0?-t:t,t=u-this.head_image_surface_area<=10&&0==t?-10:t,o=u-this.head_image_surface_area<0?2*Math.abs(u-this.head_image_surface_area):0,h.append("defs").append("clipPath").attr("id","rounded-corners-"+e.id).append("path").attr("d",pk().type(p).size(d)).attr("transform",`translate(${parseInt(s.attr("width"))/2}, ${2*this.head_image_surface_area-this.head_image_surface_area})`).attr("fill",n.bright500),h?.append("image").attr("href",e.image).attr("preserveAspectRatio","xMaxYMax slice").attr("width",2*this.head_image_surface_area).attr("height",2*this.head_image_surface_area).attr("x",parseInt(s.attr("width"))/2-this.head_image_surface_area).attr("y",this.head_image_surface_area-this.head_image_surface_area).attr("clip-path",`url(#rounded-corners-${e.id})`)}else{let t=u-this.head_image_surface_area;t=t>10?0:t-10,t=t>0?-t:t,t=u-this.head_image_surface_area<=10&&0==t?-10:t,o=u-this.head_image_surface_area<0?2*Math.abs(u-this.head_image_surface_area):0,h?.append("path").attr("d",pk().type(p).size(d)).attr("stroke","stroke"==this.symbol_type(this.head_image_shape)?n.color:"none").attr("stroke-width","stroke"==this.symbol_type(this.head_image_shape)?1:0).attr("fill","stroke"==this.symbol_type(this.head_image_shape)?"transparent":n.color).attr("transform",`translate(${parseInt(s.attr("width"))/2}, ${2*this.head_image_surface_area-this.head_image_surface_area})`),h?.append("text").attr("class","").attr("text-anchor","middle").attr("fill","stroke"==this.symbol_type(this.head_image_shape)?n.color:n.bright500).attr("x",parseInt(s.attr("width"))/2).attr("y",this.head_image_surface_area+Math.sqrt(d)/6).attr("font-size",this.head_image_surface_area/1.5+"px").text(this.get_user_initials(e.name))}this.format_employee_name(e.name,27).forEach(((e,t)=>{l?.append("text").attr("text-anchor","middle").attr("x",parseInt(s.attr("width"))/2).attr("y",this.chartHeadRoundedWidth+18).attr("dy",t>0?50+o:0+o).attr("font-size","105%").attr("fill",n.darker).attr("style","text-transform: "+(t>0?"none":"capitalize")).text(e),t>0&&(o+=15)}));const y=l?.append("text").attr("text-anchor","middle").attr("x",parseInt(s.attr("width"))/2).attr("y",this.chartHeadRoundedWidth+35+o).attr("font-size","65%");if(this.splitStringIntoBatch(e.role,20).forEach(((e,t)=>{y?.append("tspan").attr("x",parseInt(s.attr("width"))/2).attr("dy",t>0?".6rem":0).text(e.toString()).attr("fill",n.dark100),t>0&&(o+=10)})),void 0!==e.location){const t=l?.append("text").attr("text-anchor","middle").attr("x",parseInt(s.attr("width"))/2).attr("y",this.chartHeadRoundedWidth+50+o).attr("font-size","65%").attr("fill",n.dark100);this.splitStringIntoBatch(e.location,19).forEach(((e,r)=>{t?.append("tspan").attr("x",parseInt(s.attr("width"))/2).attr("dy",r>0?".6rem":0).text(e.toString()),r>0&&(o+=10)}))}const f=this.chartHeadRoundedHeight+o;return s?.attr("height",f),c?.attr("height",f),this.add_linker(l,i,a,r,n,s,c,e,t),this.emitEvent("chart_head.create",{headNode:c.node()}),c}add_linker(e,t,r,a,i,n,o,c,l){const s=Math.PI*this.head_linker_thumb_circle_radius*this.head_linker_thumb_circle_radius,u=(t,r,a)=>{null!=this.rootWrapperContainer?.querySelector("."+a)&&this.rootWrapperContainer?.querySelector("."+a)?.remove();const o="stroke"==this.symbol_type(this.linker_thumb_shape)?i.bright100:i[this.linker_thumb_icon_color];return e.append("path").attr("d",pk().type("cross"==t?Kx:uk).size(Math.sqrt(s))).attr("x",parseInt(n.attr("width"))/2).attr("y",n.attr("height")).attr("fill",o).attr("stroke","minus"==t?o:"none").attr("class",a).attr("style","pointer-events: none").attr("stroke-width","minus"==t?2:0).attr("transform",this.link_point_position[r](n))};if(0!=a&&t&&e?.append("path").attr("d",pk().type(bw[this.linker_thumb_shape]).size(s)).attr("x",parseInt(n.attr("width"))/2).attr("y",0).attr("class","ts-linker").attr("fill","fill"==this.symbol_type(this.linker_thumb_shape)?i.color:"none").attr("stroke","stroke"==this.symbol_type(this.linker_thumb_shape)?i.gray:"none").attr("stroke-width","stroke"==this.symbol_type(this.linker_thumb_shape)?1:0).attr("transform",this.link_point_position[a.children](n)),0!=a&&r){const t=this,r="bottom"==a.parent?0:n.attr("height");let h=0;if(e?.append("path").attr("d",pk().type(bw[this.linker_thumb_shape]).size(s)).attr("x",parseInt(n.attr("width"))/2).attr("y",n.attr("height")).attr("class","ts-linker").attr("style","cursor: pointer;").attr("fill","fill"==this.symbol_type(this.linker_thumb_shape)?i.color:"transparent").attr("stroke","stroke"==this.symbol_type(this.linker_thumb_shape)?i.gray:"none").attr("stroke-width","stroke"==this.symbol_type(this.linker_thumb_shape)?1:0).attr("transform",this.link_point_position[this.inverse_link_point_position[a.children]](n)).on("click",(e=>{const i=e.currentTarget.parentElement;u(h%2==0?"cross":"minus",this.inverse_link_point_position[a.children],"ts-lnk-icn-"+c.id+"-1"),h++,t.handleCollapseChildren?.(o,c.id,r);const n=i.getBoundingClientRect();setTimeout((()=>{h%2==0&&this.center_elem(n)}),0),h%2==0?this.emitEvent("chart_head.expanded",{svgNode:o,head_data:c,pointPosition:a},!1):this.emitEvent("chart_head.collapsed",{svgNode:o,head_data:c,pointPosition:a},!1)})),this.el_has_children(c.id,!0)||h++,u(this.el_has_children(c.id,!0)?"minus":"cross",this.inverse_link_point_position[a.children],"ts-lnk-icn-"+c.id+"-1"),l){const l=0==r?n.attr("height"):0;let h=0;e?.append("path").attr("d",pk().type(bw[this.linker_thumb_shape]).size(s)).attr("x",parseInt(n.attr("width"))/2).attr("y",n.attr("height")).attr("class","ts-linker").attr("style","cursor: pointer").attr("fill","fill"==this.symbol_type(this.linker_thumb_shape)?i.color:"transparent").attr("stroke","stroke"==this.symbol_type(this.linker_thumb_shape)?i.gray:"none").attr("stroke-width","stroke"==this.symbol_type(this.linker_thumb_shape)?1:0).attr("transform",this.link_point_position[this.inverse_link_point_position[a.parent]](n)).on("click",(e=>{const r=e.currentTarget.parentElement;u(h%2==0?"cross":"minus",this.inverse_link_point_position[a.parent],"ts-lnk-icn-"+c.id+"-2"),t.handleCollapseChildren?.(o,c.id,l);const i=r.getBoundingClientRect();h++,setTimeout((()=>{h%2==0&&this.center_elem(i)}),0),h%2==0?this.emitEvent("chart_head.expanded",{svgNode:o,head_data:c,pointPosition:a},!1):this.emitEvent("chart_head.collapsed",{svgNode:o,head_data:c,pointPosition:a},!1)})),u("minus",this.inverse_link_point_position[a.parent],"ts-lnk-icn-"+c.id+"-2")}}}get_tree_items_hierarchy(e,t,r){const a=this.tree_data.filter((t=>t.parentId==e)),i=null==t?1:t+1,n=[];a.forEach((e=>{n.push(e),null!=r&&(null!=r.item_id&&r.item_id==e.id||null!=r.level&&r.level==i)&&r.callbackFn(e,i);this.tree_data.filter((t=>t.parentId==e.id)).length>0&&this.get_tree_items_hierarchy(e.id,i,r)}));const o=this.itemHierarchy.findIndex((e=>e.level==i));return-1==o?this.itemHierarchy.push({level:i,items:n}):this.itemHierarchy[o].items=n,this.itemHierarchy}get_second_ancestor_item(e){const t=this.tree_data.find((t=>t.id==e)),r=this.tree_data.find((e=>e.id==t?.parentId)),a=null==this.tree_data.find((e=>e.id==r?.parentId))?.parentId;let i;return i=null==r?.parentId?t:a?r:this.get_second_ancestor_item(r?.id),i}getElemRelPosInTree(e){const t=this.tree_data.find((t=>t.id==e));return this.tree_data.filter((e=>e.parentId==t.parentId)).findIndex((e=>e.id==t.id))+1}set_tmp_tree_data(e){if(this.display_tree_in_step||this.tree_data.length>500&&this.auto_display_tree_in_step){const t=null==e?"1":e;this.tmp_tree_data=this.get_children_down_to_level(t,this.tree_level_step),null==e&&(this.tmp_tree_data=[this.tree_data[0],...this.tmp_tree_data])}else this.tmp_tree_data=this.tree_data}getIsParentRootEl(e){return null!=e&&null==this.tree_data.find((t=>t.id==e))?.parentId}getIsElRootTreeChild(e){return null!=e&&null==this.tree_data.find((t=>t.id==e))?.parentId}getRootTreeEl(){return this.tree_data.find((e=>null==e.parentId))}el_has_children(e,t=!1){return t?this.tmp_tree_data.filter((t=>t.parentId==e)).length>0:this.tree_data.filter((t=>t.parentId==e)).length>0}get_children_down_to_level(e,t,r=1){let a=r,i=[];const n=this.tree_data.filter((t=>t.parentId==e));let o=[];return a0&&(o=n.map((e=>this.get_children_down_to_level(e.id,t,a+1))).flat()),i=[...n,...o],i}data_to_d3_format(e,t){let r=this.tree_data?.find((t=>(null==e?t.parentId:t.id)==e));r={...r,children:[]};return this.tree_data.filter((e=>e.parentId==r.id)).forEach((e=>{t&&(e.stat=1),this.el_has_children(e.id)?r.children.push(this.data_to_d3_format(e.id,t)):r.children.push(e)})),r}}class QC{tree_data=[];color_range=["#b31212","#b34712","#b38d12","#9ab312","#2fb312","#12b362","#12b3a8","#1278b3","#1712b3","#5712b3","#8d12b3","#b3128d","#b3124a","#b31212"];interpolated_color=e=>"";pallet={h:10,s:.5,l:.5,darker:.8,brighter:.8,bright100:.5,dark100:.5,gray:50,gray85:85};constructor({tree_data:e,color_range:t,pallet:r}){this.tree_data=e,void 0!==t&&t.length>0&&(this.color_range=t),null!=r&&(this.pallet=r),this.interpolateColor()}getColor(e){const t=this.get_color_percentage(e),r=this.interpolated_color(t),a=Br(r),i=Or(a);i.h+=this.pallet.h,i.s+=this.pallet.s;const n=Or(a);n.l+=this.pallet.l;const o=ra(this.pallet.gray85);return{color:r,darker:a?.darker(this.pallet.darker).toString(),brighter:a?.brighter(this.pallet.brighter).toString(),bright100:i.brighter(this.pallet.bright100).toString(),dark100:i.darker(this.pallet.dark100).toString(),bright500:n.toString(),gray:ra(this.pallet.gray).toString(),gray85:o.toString()}}get_app_gray(){return ra(50).toString()}get_color_percentage(e){return e/this.tree_data.length}interpolateColor(){this.interpolated_color=Ha(this.color_range)}}class XC{chartHelper;tree_map_arr=[];content_wrapper=null;tsInnerContainer=null;current_scale=1;constructor({tsInnerContainer:e,chartHelper:t}){this.tsInnerContainer=e,this.chartHelper=t,this.chartHelper.handleCollapseChildren=this.handleCollapseChildren.bind(this),setTimeout((()=>{this.organizeUI()}),0)}map_children_data_to_head(e,t){const r=this.chartHelper.tmp_tree_data.filter((e=>e.parentId==t)),a=this.chartHelper.createDynamicEl();return r.forEach((r=>{const i=this.chartHelper.createDynamicEl(),n=this.chartHelper.makeHead(r);i.appendChild(n?.node());const o=null==t?" st-root-el":"";i.className="ts-head-node-wrapper ts-w-id-"+r.id+o,a.appendChild(i),null!=e&&this.tree_map_arr.push({id:r.id,svgNode:e,targetChild:n?.node(),parentId:t}),this.chartHelper?.el_has_children(r.id)&&i.append(this.map_children_data_to_head(n,r.id))})),a.className="ts-head-wrapper child-container",void 0===e&&this.content_wrapper?.appendChild(a),a}organizeUI(){this.content_wrapper=this.chartHelper.createDynamicEl(),this.content_wrapper.className="ts-head-wrapper",this.chartHelper.set_tmp_tree_data(),this.map_children_data_to_head(),this.tsInnerContainer.appendChild(this.content_wrapper),this.drawBranchLinkFresh(),Bi((()=>{const e=jt(`${this.chartHelper.app_root_unique_selector} .root-svg-el`).node().getBoundingClientRect();this.chartHelper?.center_elem(e,"top")}),0)}drawBranchLinkFresh(){this.chartHelper.rootWrapperContainer?.querySelectorAll(".linker-line").forEach((e=>e.remove())),this.tree_map_arr.forEach((e=>this.drawBranchLink(e.id,e.svgNode,e.targetChild,e.parentId)))}drawBranchLink(e,t,r,a){const i=this.tsInnerContainer?.querySelector(".ts-w-id-"+a)?.getAttribute("data-ts-head-children-hidden");if("true"===i)return;const n=this.chartHelper?.color_handler.getColor(e),o=r.getBoundingClientRect(),c=t.node().getBoundingClientRect(),l=Math.sqrt(Math.PI*this.chartHelper.head_linker_thumb_circle_radius*this.chartHelper.head_linker_thumb_circle_radius)/2,s=c.width/this.current_scale/2,u=(c.height+l)/this.current_scale,h=o.x/this.current_scale-c.x/this.current_scale+r.clientWidth/2,d=o.top/this.current_scale-c.top/this.current_scale,p=Ix(null!=this.chartHelper?.tree_link_type?this.chartHelper?.tree_link_types[this.chartHelper?.tree_link_type]:Dx),y=[{source:[s,u],target:[h,d]}];t?.append("path").data(y).attr("d",p).attr("fill","none").attr("class","linker-line").attr("stroke",n?.gray).attr("stroke-width",1)}handleCollapseChildren(e,t,r){const a=e.node()?.parentElement,i=a?.getAttribute("data-ts-head-children-hidden");if(a?.hasAttribute("data-ts-head-children-hidden")||""!=a.querySelector(".child-container").innerHTML)if("true"==i){const e=a?.querySelector(".child-container");e.style.visibility="",a?.setAttribute("data-ts-head-children-hidden","false"),setTimeout((()=>{this.drawBranchLinkFresh()}),0)}else{const e=a?.querySelector(".child-container");e.style.visibility="hidden",a?.querySelectorAll(".linker-line").forEach((e=>e.remove())),a?.setAttribute("data-ts-head-children-hidden","true")}else{this.chartHelper.set_tmp_tree_data(t),a.querySelector(".child-container").remove();const r=this.map_children_data_to_head(e,t);a?.appendChild(r),a?.setAttribute("data-ts-head-children-hidden","false"),this.drawBranchLinkFresh()}}removeNodeRecursiveFromTreeMap(e){const t=this.tree_map_arr.filter((t=>t.parentId==e));t.forEach((e=>{this.tree_map_arr.splice(this.tree_map_arr.findIndex((t=>t.id==e.id)),1),this.tree_map_arr.filter((t=>t.id==e.id)).length>0&&this.removeNodeRecursiveFromTreeMap(e.id)}))}}class e_{content_wrapper=null;head_child_wrapper_center=null;head_child_wrapper_1=null;head_child_wrapper_2=null;tsInnerContainer=null;chartHelper;tree_map_arr=[];current_scale=1;constructor({tsInnerContainer:e,chartHelper:t}){this.tsInnerContainer=e,this.chartHelper=t,this.chartHelper.handleCollapseChildren=this.handleCollapseChildren.bind(this),setTimeout((()=>{this.organizeUI()}),0)}organizeUI(){this.content_wrapper=this.chartHelper.createDynamicEl(),this.head_child_wrapper_center=this.chartHelper.createDynamicEl(),this.head_child_wrapper_1=this.chartHelper.createDynamicEl(),this.head_child_wrapper_2=this.chartHelper.createDynamicEl(),this.head_child_wrapper_center.className="ts-vs-wrapper",this.head_child_wrapper_1.className="ts-vs-wrapper",this.head_child_wrapper_2.className="ts-vs-wrapper",this.content_wrapper.appendChild(this.head_child_wrapper_1),this.content_wrapper.appendChild(this.head_child_wrapper_center),this.content_wrapper.appendChild(this.head_child_wrapper_2),this.content_wrapper.className="ts-v-spider-head-wrapper",this.chartHelper.set_tmp_tree_data(),this.map_children_data_to_head(),this.tsInnerContainer.appendChild(this.content_wrapper),this.drawBranchLinkFresh(),Bi((()=>{const e=jt(`${this.chartHelper.app_root_unique_selector} .st-root-el > svg`).node().getBoundingClientRect();this.chartHelper?.center_elem(e,"center")}),0)}map_children_data_to_head(e,t,r){let a=this.chartHelper.tmp_tree_data.filter((e=>e.parentId==t));a=r||this.chartHelper.tmp_tree_data.filter((e=>e.parentId==t));const i=this.chartHelper.createDynamicEl(),n=this.chartHelper.getIsParentRootEl(t)&&null!=t;return a.forEach((r=>{const a=this.chartHelper.createDynamicEl(),o=this.chartHelper.get_second_ancestor_item(r.id);let c=null==o?1:this.chartHelper.getElemRelPosInTree(o?.id);const l=this.chartHelper.makeHead(r,null==t,{parent:"bottom",children:c%2==0?"bottom":"top"});a.appendChild(l?.node());const s=null==t?" st-root-el":"";if(a.className="ts-head-node-wrapper ts-w-id-"+r.id+s,c%2==0&&a.classList.add("top"),void 0===e?this.head_child_wrapper_center?.appendChild(a):n?this.chartHelper.getElemRelPosInTree(r.id)%2==0?this.head_child_wrapper_1?.appendChild(a):this.head_child_wrapper_2?.appendChild(a):(i.appendChild(a),c%2==0&&i.classList.add("top")),null!=e&&this.tree_map_arr.push({id:r.id,svgNode:e,targetChild:l?.node(),parentId:t,lineOrigin:c%2==0?"top":"bottom"}),this.chartHelper?.el_has_children(r.id))if(n)this.chartHelper.getElemRelPosInTree(r.id)%2==0?a.prepend(this.map_children_data_to_head(l,r.id)):a.append(this.map_children_data_to_head(l,r.id));else{const e=this.map_children_data_to_head(l,r.id);c%2==0?a.prepend(e):a.appendChild(e)}})),i.classList.add("child-container"),i}drawBranchLinkFresh(){this.chartHelper.rootWrapperContainer?.querySelectorAll(".linker-line").forEach((e=>e.remove())),this.tree_map_arr.forEach((e=>this.drawBranchLink(e.id,e.svgNode,e.targetChild,e.parentId,e.lineOrigin)))}drawBranchLink(e,t,r,a,i="bottom"){const n=this.tsInnerContainer?.querySelector(".ts-w-id-"+a)?.getAttribute("data-ts-head-children-hidden"),o=this.chartHelper.getIsParentRootEl(a);if("true"===n&&!o)return;const c=this.chartHelper?.color_handler.getColor(e),l=r.getBoundingClientRect(),s=t.node().getBoundingClientRect(),u=s.width/this.current_scale/2,h="top"==i?0:s.height/this.current_scale,d=l.x/this.current_scale-s.x/this.current_scale+r.clientWidth/2,p="top"==i?(l.top+l.height)/this.current_scale-s.top/this.current_scale:l.top/this.current_scale-s.top/this.current_scale,y=Ix(null!=this.chartHelper?.tree_link_type?this.chartHelper?.tree_link_types[this.chartHelper?.tree_link_type]:Dx),f=[{source:[u,h],target:[d,p]}];t?.append("path").data(f).attr("d",y).attr("fill","none").attr("class","linker-line linker-"+i).attr("stroke-width",1).attr("stroke",c?.gray).attr("style","z-index: -1")}handleCollapseChildren(e,t,r){const a=e.node()?.parentElement,i=this.chartHelper.getIsElRootTreeChild(t),n=a?.getAttribute("data-ts-head-children-hidden"),o=a?.querySelector(".child-container");if(i)return this.handleCollapseRootElChildren(e,t,r);if(a?.hasAttribute("data-ts-head-children-hidden")||""!=a.querySelector(".child-container").innerHTML)"true"==n?(o.style.visibility="visible",a?.setAttribute("data-ts-head-children-hidden","false"),this.drawBranchLinkFresh()):(o.style.visibility="hidden",a?.querySelectorAll(".linker-line").forEach((e=>e.remove())),a?.setAttribute("data-ts-head-children-hidden","true"));else{this.chartHelper.set_tmp_tree_data(t),a.querySelector(".child-container").remove();const r=this.map_children_data_to_head(e,t),i=this.chartHelper.get_second_ancestor_item(t);(null==i?1:this.chartHelper.getElemRelPosInTree(i?.id))%2==0?a?.prepend(r):a?.appendChild(r),a?.setAttribute("data-ts-head-children-hidden","false"),this.drawBranchLinkFresh()}}removeNodeRecursiveFromTreeMap(e,t){const r=this.tree_map_arr.filter((t=>t.parentId==e));r.forEach((e=>{this.tree_map_arr.splice(this.tree_map_arr.findIndex((t=>t.id==e.id)),1),this.tree_map_arr.filter((t=>t.id==e.id)).length>0&&this.removeNodeRecursiveFromTreeMap(e.id)})),t&&this.tree_map_arr.splice(this.tree_map_arr.findIndex((t=>t.id==e)),1)}handleCollapseRootElChildren(e,t,r){const a=e.node()?.parentElement,i=a?.getAttribute("data-ts-top-head-children-hidden"),n=a?.getAttribute("data-ts-bottom-head-children-hidden");if(0==r?this.chartHelper.tree_data.filter((e=>e.parentId==t&&this.chartHelper.getElemRelPosInTree(e.id)%2==0)):this.chartHelper.tree_data.filter((e=>e.parentId==t&&this.chartHelper.getElemRelPosInTree(e.id)%2!=0)),(i&&"false"!=i||0!=r)&&(n&&"false"!=n||0==r)){(0==r?a.parentElement.nextElementSibling:a.parentElement.previousElementSibling).style.visibility="",setTimeout((()=>{this.drawBranchLinkFresh();"true"==(0==r?a?.getAttribute("data-ts-bottom-head-children-hidden"):a?.getAttribute("data-ts-top-head-children-hidden"))&&a.querySelectorAll(".linker-"+(0==r?"top":"bottom")).forEach((e=>e.remove()))}),0),a?.setAttribute(0==r?"data-ts-top-head-children-hidden":"data-ts-bottom-head-children-hidden","false")}else{(0==r?a.parentElement.nextElementSibling:a.parentElement.previousElementSibling).style.visibility="hidden",a.querySelector("svg").querySelectorAll(".linker-"+(0==r?"bottom":"top")).forEach((e=>e.remove())),a?.setAttribute(0==r?"data-ts-top-head-children-hidden":"data-ts-bottom-head-children-hidden","true")}}}class t_{chartHelper;tree_map_arr=[];content_wrapper=null;tsInnerContainer=null;current_scale=1;constructor({tsInnerContainer:e,chartHelper:t}){this.tsInnerContainer=e,this.chartHelper=t,this.chartHelper.handleCollapseChildren=this.handleCollapseChildren.bind(this),setTimeout((()=>{this.organizeUI()}),0)}organizeUI(){this.content_wrapper=this.chartHelper.createDynamicEl(),this.content_wrapper.className="ts-head-wrapper",this.chartHelper.set_tmp_tree_data(),this.map_children_data_to_head(),this.tsInnerContainer.appendChild(this.content_wrapper),this.drawBranchLinkFresh(),Bi((()=>{const e=jt(`${this.chartHelper.app_root_unique_selector} .root-svg-el`).node().getBoundingClientRect();this.chartHelper?.center_elem(e,"left")}),0)}map_children_data_to_head(e,t){const r=this.chartHelper.tmp_tree_data.filter((e=>e.parentId==t)),a=this.chartHelper.createDynamicEl();return r.forEach((r=>{const i=this.chartHelper.createDynamicEl(),n=this.chartHelper.createDynamicEl(),o=this.chartHelper.makeHead(r,!1,{parent:"right",children:"left"});n.append(o?.node()),i.appendChild(n);const c=null==t?" st-root-el":"";i.className="ts-head-node-wrapper st-single-h ts-w-id-"+r.id+c,a.appendChild(i),null!=e&&this.tree_map_arr.push({id:r.id,svgNode:e,targetChild:o?.node(),parentId:t}),this.chartHelper?.el_has_children(r.id)&&i.append(this.map_children_data_to_head(o,r.id))})),a.className="ts-head-wrapper st-single-h-child-container",void 0===e&&this.content_wrapper?.appendChild(a),a}drawBranchLinkFresh(){this.chartHelper.rootWrapperContainer?.querySelectorAll(".linker-line").forEach((e=>e.remove())),this.tree_map_arr.forEach((e=>this.drawBranchLink(e.id,e.svgNode,e.targetChild,e.parentId)))}drawBranchLink(e,t,r,a){const i=this.tsInnerContainer?.querySelector(".ts-w-id-"+a)?.getAttribute("data-ts-head-children-hidden");if("true"===i)return;const n=this.chartHelper?.color_handler.getColor(e),o=r.getBoundingClientRect(),c=t.node().getBoundingClientRect(),l=c.width/this.current_scale,s=c.height/this.current_scale/2,u=o.x/this.current_scale-c.x/this.current_scale+0,h=(o.top+o.height/2)/this.current_scale-c.top/this.current_scale,d=Ix(null!=this.chartHelper?.tree_link_type?this.chartHelper?.tree_link_types[this.chartHelper?.tree_link_type]:Hx),p=[{source:[l,s],target:[u,h]}];t?.append("path").data(p).attr("d",d).attr("fill","none").attr("class","linker-line").attr("stroke-width",1).attr("stroke",n?.gray).attr("style","z-index: -1")}handleCollapseChildren(e,t,r){const a=e.node()?.parentElement.parentElement,i=a?.getAttribute("data-ts-head-children-hidden"),n=a?.querySelector("[class*='child-container']");if(a?.hasAttribute("data-ts-head-children-hidden")||""!=a.querySelector(".st-single-h-child-container").innerHTML)"true"==i?(n.style.visibility="",a?.setAttribute("data-ts-head-children-hidden","false"),this.drawBranchLinkFresh()):(n.style.visibility="hidden",a?.querySelectorAll(".linker-line").forEach((e=>e.remove())),a?.setAttribute("data-ts-head-children-hidden","true"));else{this.chartHelper.set_tmp_tree_data(t),a.querySelector(".st-single-h-child-container").remove();const r=this.map_children_data_to_head(e,t);a?.appendChild(r),a?.setAttribute("data-ts-head-children-hidden","false"),this.drawBranchLinkFresh()}}removeNodeRecursiveFromTreeMap(e){const t=this.tree_map_arr.filter((t=>t.parentId==e));t.forEach((e=>{this.tree_map_arr.splice(this.tree_map_arr.findIndex((t=>t.id==e.id)),1),this.tree_map_arr.filter((t=>t.id==e.id)).length>0&&this.removeNodeRecursiveFromTreeMap(e.id)}))}}class r_{content_wrapper=null;head_child_wrapper_center=null;head_child_wrapper_1=null;head_child_wrapper_2=null;tsInnerContainer=null;chartHelper;tree_map_arr=[];current_scale=1;constructor({tsInnerContainer:e,chartHelper:t}){this.tsInnerContainer=e,this.chartHelper=t,this.chartHelper.handleCollapseChildren=this.handleCollapseChildren.bind(this),setTimeout((()=>{this.organizeUI()}),0)}organizeUI(){this.content_wrapper=this.chartHelper.createDynamicEl(),this.head_child_wrapper_center=this.chartHelper.createDynamicEl(),this.head_child_wrapper_1=this.chartHelper.createDynamicEl(),this.head_child_wrapper_2=this.chartHelper.createDynamicEl(),this.head_child_wrapper_center.className="st-child-wrapper",this.head_child_wrapper_1.className="st-child-wrapper",this.head_child_wrapper_2.className="st-child-wrapper",this.content_wrapper.className="st-hsw-content-wrapper",this.content_wrapper.appendChild(this.head_child_wrapper_1),this.content_wrapper.appendChild(this.head_child_wrapper_center),this.content_wrapper.appendChild(this.head_child_wrapper_2),this.tsInnerContainer?.append(this.content_wrapper),this.chartHelper.set_tmp_tree_data(),this.map_children_data_to_head(),this.drawBranchLinkFresh(),Bi((()=>{const e=jt(`${this.chartHelper.app_root_unique_selector} .st-root-el > svg`).node().getBoundingClientRect();this.chartHelper?.center_elem(e,"center")}),0)}map_children_data_to_head(e,t,r){let a=this.chartHelper.tmp_tree_data.filter((e=>e.parentId==t));a=r||this.chartHelper.tmp_tree_data.filter((e=>e.parentId==t));const i=this.chartHelper.createDynamicEl(),n=this.chartHelper.getIsParentRootEl(t)&&null!=t;return a.forEach((r=>{const a=this.chartHelper.createDynamicEl(),o=this.chartHelper.get_second_ancestor_item(r.id);let c=null==o?1:this.chartHelper.getElemRelPosInTree(o?.id);const l=this.chartHelper.makeHead(r,null==t,{parent:"right",children:c%2==0?"right":"left"});a.appendChild(l?.node());const s=null==t?" st-root-el":"";if(a.className="ts-head-node-wrapper ts-w-id-"+r.id+s,c%2==0&&a.classList.add("top"),void 0===e?this.head_child_wrapper_center?.appendChild(a):n?this.chartHelper.getElemRelPosInTree(r.id)%2==0?this.head_child_wrapper_1?.appendChild(a):this.head_child_wrapper_2?.appendChild(a):(i.appendChild(a),c%2==0&&i.classList.add("top")),null!=e&&this.tree_map_arr.push({id:r.id,svgNode:e,targetChild:l?.node(),parentId:t,lineOrigin:c%2==0?"right":"left"}),this.chartHelper?.el_has_children(r.id))if(n)this.chartHelper.getElemRelPosInTree(r.id)%2==0?a.prepend(this.map_children_data_to_head(l,r.id)):a.append(this.map_children_data_to_head(l,r.id));else{const e=this.map_children_data_to_head(l,r.id);c%2==0?a.prepend(e):a.appendChild(e)}})),i.classList.add("child-container"),i}drawBranchLinkFresh(){this.chartHelper.rootWrapperContainer?.querySelectorAll(".linker-line").forEach((e=>e.remove())),this.tree_map_arr.forEach((e=>this.drawBranchLink(e.id,e.svgNode,e.targetChild,e.parentId,e.lineOrigin)))}drawBranchLink(e,t,r,a,i="bottom"){const n=this.tsInnerContainer?.querySelector(".ts-w-id-"+a)?.getAttribute("data-ts-head-children-hidden");if("true"===n)return;const o=this.chartHelper?.color_handler.getColor(e),c=r.getBoundingClientRect(),l=t.node().getBoundingClientRect(),s=Math.sqrt(Math.PI*this.chartHelper.head_linker_thumb_circle_radius*this.chartHelper.head_linker_thumb_circle_radius)/2,u="right"==i?0-s:(l.width+s)/this.current_scale,h=l.height/this.current_scale/2,d=(c.x+("right"==i?c.width:0))/this.current_scale-l.x/this.current_scale+0,p=(c.top+c.height/2)/this.current_scale-l.top/this.current_scale,y=Ix(null!=this.chartHelper?.tree_link_type?this.chartHelper?.tree_link_types[this.chartHelper?.tree_link_type]:Hx),f=[{source:[u,h],target:[d,p]}];t?.append("path").data(f).attr("d",y).attr("fill","none").attr("class","linker-line linker-"+i).attr("stroke-width",1).attr("stroke",o?.gray).attr("style","z-index: -1")}handleCollapseChildren(e,t,r){const a=e.node()?.parentElement,i=this.chartHelper.getIsElRootTreeChild(t),n=a?.getAttribute("data-ts-head-children-hidden");if(i)return this.handleCollapseRootElChildren(e,t,r);if(a?.hasAttribute("data-ts-head-children-hidden")||""!=a.querySelector(".child-container").innerHTML)"true"==n?(a.querySelector(".child-container").style.visibility="",a?.setAttribute("data-ts-head-children-hidden","false"),this.drawBranchLinkFresh()):(a?.setAttribute("data-ts-head-children-hidden","true"),a?.querySelectorAll(".linker-line").forEach((e=>e.remove())),a.querySelector(".child-container").style.visibility="hidden");else{this.chartHelper.set_tmp_tree_data(t),a.querySelector(".child-container").remove();const r=this.map_children_data_to_head(e,t),i=this.chartHelper.get_second_ancestor_item(t);(null==i?1:this.chartHelper.getElemRelPosInTree(i?.id))%2==0?a?.prepend(r):a?.appendChild(r),a?.setAttribute("data-ts-head-children-hidden","false"),setTimeout((()=>{this.drawBranchLinkFresh()}),0)}}removeNodeRecursiveFromTreeMap(e,t){const r=this.tree_map_arr.filter((t=>t.parentId==e));r.forEach((e=>{this.tree_map_arr.splice(this.tree_map_arr.findIndex((t=>t.id==e.id)),1),this.tree_map_arr.filter((t=>t.id==e.id)).length>0&&this.removeNodeRecursiveFromTreeMap(e.id)})),t&&this.tree_map_arr.splice(this.tree_map_arr.findIndex((t=>t.id==e)),1)}handleCollapseRootElChildren(e,t,r){const a=e.node()?.parentElement,i=a?.getAttribute("data-ts-top-head-children-hidden"),n=a?.getAttribute("data-ts-bottom-head-children-hidden");if(0==r?this.chartHelper.tree_data.filter((e=>e.parentId==t&&this.chartHelper.getElemRelPosInTree(e.id)%2==0)):this.chartHelper.tree_data.filter((e=>e.parentId==t&&this.chartHelper.getElemRelPosInTree(e.id)%2!=0)),(i&&"false"!=i||0!=r)&&(n&&"false"!=n||0==r)){(0==r?a.parentElement.previousElementSibling:a.parentElement.nextElementSibling).style.visibility="visible",setTimeout((()=>{this.drawBranchLinkFresh();"true"==(0==r?a?.getAttribute("data-ts-bottom-head-children-hidden"):a?.getAttribute("data-ts-top-head-children-hidden"))&&a.querySelectorAll(".linker-"+(0==r?"left":"right")).forEach((e=>e.remove()))}),0),a?.setAttribute(0==r?"data-ts-top-head-children-hidden":"data-ts-bottom-head-children-hidden","false")}else{const e=0==r?a.parentElement.previousElementSibling:a.parentElement.nextElementSibling;e.style.visibility="hidden",e.querySelectorAll(".linker-line").forEach((e=>e.remove())),a.querySelectorAll(".linker-"+(0==r?"right":"left")).forEach((e=>e.remove())),a?.setAttribute(0==r?"data-ts-top-head-children-hidden":"data-ts-bottom-head-children-hidden","true")}}}class a_{content_wrapper=null;head_child_wrapper_center=null;head_child_wrapper_1=null;head_child_wrapper_2=null;tsInnerContainer=null;chartHelper;tree_map_arr=[];current_scale=1;constructor({tsInnerContainer:e,chartHelper:t}){this.tsInnerContainer=e,this.chartHelper=t,this.chartHelper.handleCollapseChildren=this.handleCollapseChildren.bind(this),setTimeout((()=>{this.organizeUI()}),0)}organizeUI(){this.content_wrapper=this.chartHelper.createDynamicEl(),this.head_child_wrapper_center=this.chartHelper.createDynamicEl(),this.head_child_wrapper_1=this.chartHelper.createDynamicEl(),this.head_child_wrapper_2=this.chartHelper.createDynamicEl(),this.head_child_wrapper_center.className="st-child-wrapper",this.head_child_wrapper_1.className="st-child-wrapper",this.head_child_wrapper_2.className="st-child-wrapper",this.content_wrapper.className="st-cs-content-wrapper",this.content_wrapper.appendChild(this.head_child_wrapper_1),this.content_wrapper.appendChild(this.head_child_wrapper_2),this.content_wrapper.appendChild(this.head_child_wrapper_center),this.tsInnerContainer?.append(this.content_wrapper),this.chartHelper.set_tmp_tree_data(),this.map_children_data_to_head(),this.drawBranchLinkFresh(),Bi((()=>{const e=jt(`${this.chartHelper.app_root_unique_selector} .st-root-el > svg`).node().getBoundingClientRect();this.chartHelper?.center_elem(e,"bottom")}),0)}map_children_data_to_head(e,t,r){let a=this.chartHelper.tmp_tree_data.filter((e=>e.parentId==t));a=r||this.chartHelper.tmp_tree_data.filter((e=>e.parentId==t));const i=this.chartHelper.createDynamicEl(),n=this.chartHelper.getIsParentRootEl(t)&&null!=t;return a.forEach((r=>{const a=this.chartHelper.createDynamicEl(),o=this.chartHelper.get_second_ancestor_item(r.id);let c=null==o?1:this.chartHelper.getElemRelPosInTree(o?.id);const l=this.chartHelper.makeHead(r,!1,{parent:"right",children:null==t?"bottom":c%2==0?"right":"left"});a.appendChild(l?.node());const s=null==t?" st-root-el":"";if(a.className="ts-head-node-wrapper ts-w-id-"+r.id+s,c%2==0&&a.classList.add("top"),void 0===e?this.head_child_wrapper_center?.appendChild(a):n?this.chartHelper.getElemRelPosInTree(r.id)%2==0?this.head_child_wrapper_1?.appendChild(a):this.head_child_wrapper_2?.appendChild(a):(i.appendChild(a),c%2==0&&i.classList.add("top")),null!=e&&this.tree_map_arr.push({id:r.id,svgNode:e,targetChild:l?.node(),parentId:t,lineOrigin:c%2==0?"right":"left"}),this.chartHelper?.el_has_children(r.id))if(n)this.chartHelper.getElemRelPosInTree(r.id)%2==0?a.prepend(this.map_children_data_to_head(l,r.id)):a.append(this.map_children_data_to_head(l,r.id));else{const e=this.map_children_data_to_head(l,r.id);c%2==0?a.prepend(e):a.appendChild(e)}})),i.classList.add("child-container"),i}drawBranchLinkFresh(){this.chartHelper.rootWrapperContainer?.querySelectorAll(".linker-line").forEach((e=>e.remove())),this.tree_map_arr.forEach((e=>this.drawBranchLink(e.id,e.svgNode,e.targetChild,e.parentId,e.lineOrigin)))}drawBranchLink(e,t,r,a,i="bottom"){const n=this.tsInnerContainer?.querySelector(".ts-w-id-"+a)?.getAttribute("data-ts-head-children-hidden");if("true"===n)return;const o=this.chartHelper?.color_handler.getColor(e),c=this.chartHelper.getIsParentRootEl(a),l=r.getBoundingClientRect(),s=t.node().getBoundingClientRect();let u,h;c?(u=s.width/this.current_scale/2,h=0):(u="right"==i?0:s.width/this.current_scale,h=s.height/this.current_scale/2);const d=(l.x+("right"==i?l.width:0))/this.current_scale-s.x/this.current_scale+0,p=(l.top+l.height/2)/this.current_scale-s.top/this.current_scale,y=Ix(null!=this.chartHelper?.tree_link_type?this.chartHelper?.tree_link_types[this.chartHelper?.tree_link_type]:Hx),f=[{source:[u,h],target:[d,p]}];t?.append("path").data(f).attr("d",y).attr("fill","none").attr("class","linker-line").attr("stroke-width",1).attr("stroke",o?.gray).attr("style","z-index: -1")}handleCollapseChildren(e,t,r){const a=e.node()?.parentElement,i=this.chartHelper.getIsElRootTreeChild(t),n=a?.getAttribute("data-ts-head-children-hidden");if(i)return this.handleCollapseRootElChildren(e,t,r);if(a?.hasAttribute("data-ts-head-children-hidden")||""!=a.querySelector(".child-container").innerHTML)if("true"==n){const e=a?.querySelector(".child-container");e.style.visibility="",a?.setAttribute("data-ts-head-children-hidden","false"),this.drawBranchLinkFresh()}else{const e=a?.querySelector(".child-container");e.style.visibility="hidden",a?.querySelectorAll(".linker-line").forEach((e=>e.remove())),a?.setAttribute("data-ts-head-children-hidden","true")}else{this.chartHelper.set_tmp_tree_data(t),a.querySelector(".child-container").remove();const r=this.map_children_data_to_head(e,t),i=this.chartHelper.get_second_ancestor_item(t);(null==i?1:this.chartHelper.getElemRelPosInTree(i?.id))%2==0?a?.prepend(r):a?.appendChild(r),a?.setAttribute("data-ts-head-children-hidden","false"),this.drawBranchLinkFresh()}}removeNodeRecursiveFromTreeMap(e,t){const r=this.tree_map_arr.filter((t=>t.parentId==e));r.forEach((e=>{this.tree_map_arr.splice(this.tree_map_arr.findIndex((t=>t.id==e.id)),1),this.tree_map_arr.filter((t=>t.id==e.id)).length>0&&this.removeNodeRecursiveFromTreeMap(e.id)})),t&&this.tree_map_arr.splice(this.tree_map_arr.findIndex((t=>t.id==e)),1)}handleCollapseRootElChildren(e,t,r){const a=e.node()?.parentElement,i=a?.getAttribute("data-ts-head-children-hidden");i&&"false"!=i?(a.parentElement.previousElementSibling.style.visibility="",a.parentElement.previousElementSibling.previousElementSibling.style.visibility="",a?.setAttribute("data-ts-head-children-hidden","false")):(a.parentElement.previousElementSibling.style.visibility="hidden",a.parentElement.previousElementSibling.previousElementSibling.style.visibility="hidden",a.parentElement.previousElementSibling.querySelectorAll(".linker-line").forEach((e=>e.remove())),a.parentElement.previousElementSibling.previousElementSibling.querySelectorAll(".linker-line").forEach((e=>e.remove())),a?.setAttribute("data-ts-head-children-hidden","true")),this.drawBranchLinkFresh()}}class i_{content_wrapper=null;head_child_wrapper=null;tsInnerContainer=null;chartHelper;current_scale=1;nodes_group=void 0;links_group=void 0;rotate_deg=0;animation_interval=void 0;start_animation=!1;constructor({tsInnerContainer:e,chartHelper:t}){this.tsInnerContainer=e,this.chartHelper=t,setTimeout((()=>{this.organizeUI()}),0)}organizeUI(){this.content_wrapper=this.chartHelper.createDynamicEl(),this.head_child_wrapper=this.chartHelper.createDynamicEl(),this.head_child_wrapper.className="st-child-wrapper",this.content_wrapper.className="st-grs-content-wrapper",this.content_wrapper.appendChild(this.head_child_wrapper),this.tsInnerContainer?.append(this.content_wrapper),this.map_children_data_to_head(),Bi((()=>{const e=jt(`${this.chartHelper.app_root_unique_selector} .root-svg-el > g`).node().getBoundingClientRect();this.chartHelper?.center_elem(e,"center")}),0)}animate_chat(e=!1,t=!1){if(e)return this.rotate_deg+=this.chartHelper?.animation_rotation_interval*(t?-1:1),this.nodes_group.attr("transform",`rotate(${this.rotate_deg}, 0, 0)`),this.links_group.attr("transform",`rotate(${this.rotate_deg}, 0, 0)`);this.start_animation=!this.start_animation,this.start_animation?this.animation_interval=setInterval((()=>{this.rotate_deg+=this.chartHelper?.animation_rotation_interval*(t?-1:1),this.nodes_group.attr("transform",`rotate(${this.rotate_deg}, 0, 0)`),this.links_group.attr("transform",`rotate(${this.rotate_deg}, 0, 0)`)}),this.chartHelper?.animation_rotation_speed):(null!=this.animation_interval&&clearInterval(this.animation_interval),this.animation_interval=void 0)}map_children_data_to_head(){const e=Cp(this.chartHelper.data_to_d3_format()).sort(((e,t)=>t.height-e.height||e.data.name.localeCompare(t.data.name))),t=540*Math.sqrt(this.chartHelper.tree_data.length/3);kp().size([360,t]).separation(((e,t)=>50))(e);const r=Yt("svg");r.attr("width",580),r.attr("height",250),r.attr("style","overflow: visible");const a=r.append("g").attr("transform",`translate(${r.attr("width")/2},${r.attr("height")/2})`);a.append("g").attr("class","links"),a.append("g").attr("class","nodes"),e.each((e=>{const t=this.chartHelper?.makeHead(e.data,!1,!1);e.head=t.node(),e.head.removeEventListener("dblclick",this.chartHelper.handleCenterHead),e.head.ondblclick=e=>{e.stopPropagation(),e.preventDefault();const t=e.currentTarget.querySelector("g").getBoundingClientRect();this.chartHelper?.center_elem(t)},e.color_set=this.chartHelper?.color_handler.getColor(e.data.id)})),r.select("g.nodes").selectAll("svg.node").data(e.descendants()).enter().append((e=>("rounded"!=this.chartHelper?.chart_head_type&&this.chartHelper?.show_chart_head_border&&(e.head.querySelector("rect").style.fill="white",e.head.querySelector("rect").style.strokeWidth="1"),e.head))).classed("node",!0).select("g").attr("transform",(e=>`rotate(${e.x}, 0, 0) translate(0, ${-e.y})`)),r.select("g.nodes").selectAll("circle.node").data(e.descendants()).enter().append("circle").classed("node",!0).attr("cx",0).attr("cy",(e=>-e.y)).attr("r",5).attr("fill",(e=>e.color_set.color)).attr("stroke",(e=>e.color_set.gray)).attr("stroke-width",1).attr("transform",(e=>`rotate(${e.x}, 0, 0)`));const i=Tx().angle((e=>e.x*Math.PI/180)).radius((e=>e.y));r.select("g.links").selectAll("path.link").data(e.links()).enter().append("path").classed("link",!0).attr("stroke",(e=>e.target.color_set.gray)).attr("fill","none").attr("stroke-width",1.5).attr("d",(e=>i([e.target,e.source]))),this.nodes_group=r.select("g.nodes"),this.links_group=r.select("g.links"),this.head_child_wrapper?.append(r.node())}}class n_{content_wrapper=null;head_child_wrapper=null;tsInnerContainer=null;chartHelper;current_scale=1;root_svg=void 0;rotate_deg=0;animation_interval=void 0;start_animation=!1;constructor({tsInnerContainer:e,chartHelper:t}){this.tsInnerContainer=e,this.chartHelper=t,setTimeout((()=>{this.organizeUI()}),0)}organizeUI(){this.content_wrapper=this.chartHelper.createDynamicEl(),this.head_child_wrapper=this.chartHelper.createDynamicEl(),this.head_child_wrapper.className="st-child-wrapper",this.content_wrapper.className="st-grs-content-wrapper",this.content_wrapper.appendChild(this.head_child_wrapper),this.tsInnerContainer?.append(this.content_wrapper),this.map_children_data_to_head(),Bi((()=>{const e=jt(`${this.chartHelper.app_root_unique_selector} .root-svg-el`).node().getBoundingClientRect();this.chartHelper?.center_elem(e,"center")}),0)}animate_chat(e=!1,t=!1){if(e)return this.rotate_deg+=this.chartHelper?.animation_rotation_interval*(t?-1:1),this.root_svg.attr("transform",`rotate(${this.rotate_deg}, 0, 0)`);this.start_animation=!this.start_animation,this.start_animation?this.animation_interval=setInterval((()=>{this.rotate_deg+=this.chartHelper?.animation_rotation_interval*(t?-1:1),this.root_svg.attr("transform",`rotate(${this.rotate_deg}, 0, 0)`)}),this.chartHelper?.animation_rotation_speed):(null!=this.animation_interval&&clearInterval(this.animation_interval),this.animation_interval=void 0)}map_children_data_to_head(){const e=Cp(this.chartHelper.data_to_d3_format()).sort(((e,t)=>t.height-e.height||e.data.name.localeCompare(t.data.name))),t=540*Math.sqrt(this.chartHelper.tree_data.length/3),r=2*t,a=2*t;e.each((e=>{const t=this.chartHelper?.makeHead(e.data,!1,!1);e.head=t.node(),e.color_set=this.chartHelper?.color_handler.getColor(e.data.id)}));py().size([2*Math.PI,t]).separation(((e,t)=>100))(e);const i=Yt("svg").attr("viewBox",[-110-t,-110-t,r,a]).attr("width",r).attr("height",a).attr("style","background-color: none; max-width: 100%; height: auto; overflow: visible;");i.append("g").attr("fill","none").attr("stroke",this.chartHelper?.color_handler.get_app_gray()).attr("stroke-opacity",1).attr("stroke-width",1.5).selectAll("path").data(e.links()).join("path").attr("d",Wx().angle((e=>e.x)).radius((e=>e.y)));const n=i.append("g").selectAll("g").data(e.descendants()).join("g").attr("transform",(e=>`rotate(${180*e.x/Math.PI-90}) translate(${e.y},0)`));n.append("circle").attr("fill",(e=>e.color_set.color)).attr("r",3),n.append((e=>("rounded"!=this.chartHelper?.chart_head_type&&this.chartHelper?.show_chart_head_border&&(e.head.querySelector("rect").style.fill="white",e.head.querySelector("rect").style.strokeWidth="1"),e.head))),n.append("title").text((e=>e.data.name+" - "+e.data.role)),this.root_svg=i,this.head_child_wrapper?.append(i.node())}}var o_={zoomIn:' ',zoomOut:' zoom-out Created with Sketch Beta. ',resetZoom:' ',rotate:'',rotate_once:' ',rotate_once_anti_clockwise:' ',rotate_anticlockwise:''};class c_{root_ui_element=void 0;zoomInOut=()=>null;resetZoom=()=>null;animate_chat=()=>null;tree_type=void 0;animatable_trees=["goldenRod","radialSpiderLeg"];constructor({root_ui_element:e,zoomInOut:t,resetZoom:r,animate_chat:a}){this.root_ui_element=e,this.zoomInOut=t,this.resetZoom=r,this.animate_chat=a,setTimeout((()=>{this.make_tools()}),0)}make_tools(){const e=new xw;e.className="tools-container",this.root_ui_element?.appendChild(e);const t=document.createElement("div");t.className="tool-item",t.innerHTML=o_.zoomIn,t.title="Zoom in",t.onclick=e=>this.zoomInOut();const r=document.createElement("div");r.className="tool-item",r.innerHTML=o_.zoomOut,r.title="Zoom out",r.onclick=e=>this.zoomInOut("out");const a=document.createElement("div");a.className="tool-item",a.innerHTML=o_.resetZoom,a.title="Reset zoom & position",a.onclick=e=>this.resetZoom();const i=document.createElement("div");i.className="tool-item",i.innerHTML=o_.rotate,i.title="Start/Stop Clockwise Rotation";const n=document.createElement("div");n.className="tool-item",n.innerHTML=o_.rotate_anticlockwise,n.title="Start/Stop Anticlockwise Rotation";const o=document.createElement("div");o.className="tool-item",o.innerHTML=o_.rotate_once,o.title="Rotate Clockwise Once";const c=document.createElement("div");c.className="tool-item",c.innerHTML=o_.rotate_once_anti_clockwise,c.title="Rotate Anticlockwise Once",e.append(t),e.append(r),e.append(a),this.animatable_trees.includes(this.tree_type)&&(e.append(i),e.append(n),e.append(o),e.append(c),i.onclick=e=>this.animate_chat(),n.onclick=e=>this.animate_chat(!1,!0),o.onclick=e=>this.animate_chat(!0),c.onclick=e=>this.animate_chat(!0,!0))}}class l_ extends EventTarget{libraryName="TreeSpider";targetRootContainer=null;rootWrapperContainer=null;tsInnerContainer=null;rootCanvasEl=null;chartHelper={};currentChartUI;zoom_instace;colorHandler={};tree_default_point_position="";instance_unique_id="";options={targetContainer:"",width:"900px",height:"500px",placeEl:"override",tree_data:void 0,color_range:[],tree_type:"default",chart_head_type:"default",show_tools:!0,show_chart_head_border:!1,animation_rotation_speed:10,animation_rotation_interval:1,backgroundPattern:"default",backgroundSize:void 0,customBackground:void 0,backgroundPosition:void 0,head_linker_thumb_circle_radius:8,linker_thumb_icon_color:"bright500",linker_thumb_shape:"symbolCircle",head_image_shape:"symbolCircle",chart_head_bg:"#ffffff",auto_set_chart_head_bg:!1,display_tree_in_step:!1,auto_display_tree_in_step:!0,tree_level_step:2,pallet:{h:10,s:.5,l:.5,darker:3,brighter:.8,bright100:.5,dark100:.5,gray:50,gray85:85},tree_link_type:void 0,random_data_length:200,autoInitialize:!0,zoom_in_distance:1.5,zoom_out_distance:.5,verticalSpace:"120px",font_link:"https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap",font_name:"Lato"};constructor(e){if(super(),null==e.targetContainer)throw new Error(this.libraryName+": The target container is required");if(null!=e.tree_data)this.options.tree_data=e.tree_data;else{const t=new qC({length:e.random_data_length||this.options.random_data_length});this.options.tree_data=t.generated_data}this.setOptions(e),this.instance_unique_id="tree_spider_"+this.options.targetContainer.replace(/[\W\D]/,"_"),this.loadFont(),console.info(this.libraryName+" ready!"),this.options.autoInitialize&&this.initialize()}initialize(){if(this.targetRootContainer=document.querySelector(this.options.targetContainer),null===this.targetRootContainer)throw new Error(this.libraryName+": target container not found");this.targetRootContainer.setAttribute("data-tree-spider-initialized",this.instance_unique_id),this.createUI(),setTimeout((()=>{this.emitEvent("library.init",{rootContainer:this.rootWrapperContainer})}),0),console.info(this.libraryName+" initialized!")}initialize_root_container(){this.rootWrapperContainer=new vw,this.rootWrapperContainer.setAttribute("data-ts-unique-id",this.instance_unique_id),this.setCSSPropertyVar("--vertical-space-var",this.options.verticalSpace),this.setCSSPropertyVar("--font-family",this.options.font_name),this.setCSSPropertyVar("--root-cont-width",this.options.width),this.setCSSPropertyVar("--root-cont-height",this.options.height),this.rootWrapperContainer.setAttribute("backgroundPattern",this.options.backgroundPattern),this.rootWrapperContainer.setAttribute("backgroundSize",this.options.backgroundSize),this.rootWrapperContainer.setAttribute("customBackground",this.options.customBackground),this.rootWrapperContainer.setAttribute("backgroundPosition",this.options.backgroundPosition)}setCSSPropertyVar(e,t){this.rootWrapperContainer?.style.setProperty(e,t)}loadFont(){let e,t,r;null==jt('[href="https://fonts.googleapis.com"]').node()&&(t=Yt("link").attr("rel","preconnect").attr("href","https://fonts.googleapis.com")),null==jt('[href="https://fonts.gstatic.com"]').node()&&(r=Yt("link").attr("rel","preconnect").attr("href","https://fonts.gstatic.com").attr("crossOrigin","")),this.options.font_link&&(e=Yt("link").attr("href",this.options.font_link).attr("rel","stylesheet")),null!=t&&document.head.appendChild(t.node()),null!=r&&document.head.appendChild(r.node()),null!=e&&document.head.appendChild(e.node())}setObjectValue(e,t){const r=e;if(0==Object.keys(r).length)return t;for(const e in r)if(Object.keys(t).includes(e)&&Object.hasOwnProperty.call(r,e))if("object"!=typeof r[e]||Array.isArray(r[e]))r[e]=t[e];else{const a=this.setObjectValue(r[e],t[e]);r[e]={...r[e],...a}}return r}createUI(){this.initialize_root_container(),this.chartHelper=new ZC,this.chartHelper.rootWrapperContainer=this.rootWrapperContainer,this.chartHelper.app_unique_id=this.instance_unique_id,this.chartHelper.tree_data=this.options.tree_data,this.chartHelper.center_elem=this.center_elem.bind(this),this.chartHelper.chart_head_type=this.options.chart_head_type,this.chartHelper.animation_rotation_speed=this.options.animation_rotation_speed,this.chartHelper.animation_rotation_interval=this.options.animation_rotation_interval,this.chartHelper.head_linker_thumb_circle_radius=this.options.head_linker_thumb_circle_radius,this.chartHelper.linker_thumb_icon_color=this.options.linker_thumb_icon_color,this.chartHelper.linker_thumb_shape=this.options.linker_thumb_shape,this.chartHelper.head_image_shape=this.options.head_image_shape,this.chartHelper.chart_head_bg=this.options.chart_head_bg,this.chartHelper.auto_set_chart_head_bg=this.options.auto_set_chart_head_bg,this.chartHelper.display_tree_in_step=this.options.display_tree_in_step,this.chartHelper.auto_display_tree_in_step=this.options.auto_display_tree_in_step,this.chartHelper.tree_level_step=this.options.tree_level_step,this.chartHelper.tree_link_type=this.options.tree_link_type,this.chartHelper.emitEvent=this.emitEvent.bind(this),this.colorHandler=new QC({tree_data:this.options.tree_data,color_range:this.options.color_range,pallet:this.options.pallet}),this.chartHelper.color_handler=this.colorHandler,this.placeRootContainer()}zoomInOut(e="in"){const t="in"==e?this.options.zoom_in_distance:this.options.zoom_out_distance;this.zoom_instace?.scaleBy(jt(`[data-ts-unique-id='${this.instance_unique_id}']`),t)}resetZoom(){const e=jt(`[data-ts-unique-id='${this.instance_unique_id}'] .root-svg-el > g`).node().getBoundingClientRect();this.center_elem(e,this.tree_default_point_position)}placeRootContainer(){if(this.tsInnerContainer=this.chartHelper.createDynamicEl(),this.tsInnerContainer.className="ts-inner-container",0==this.options.tree_data?.length){const e=new xw;e.innerText="No data provided!",this.tsInnerContainer.appendChild(e)}if(this.rootWrapperContainer?.appendChild(this.tsInnerContainer),"start"==this.options.placeEl?this.targetRootContainer?.prepend(this.rootWrapperContainer):"end"==this.options.placeEl?this.targetRootContainer?.append(this.rootWrapperContainer):"object"==typeof this.options.placeEl&&Object.keys(this.options.placeEl).length>0?this.targetRootContainer?.insertBefore(this.rootWrapperContainer,this.targetRootContainer.querySelector(this.options.placeEl.beforeEl)):(this.targetRootContainer.innerHTML="",this.targetRootContainer.appendChild(this.rootWrapperContainer)),this.bindPanning(),"default"==this.options.tree_type)this.currentChartUI=new XC({tree_data:this.options.tree_data,tsInnerContainer:this.tsInnerContainer,chartHelper:this.chartHelper});else if("vSpiderWalk"==this.options.tree_type)this.currentChartUI=new e_({tree_data:this.options.tree_data,tsInnerContainer:this.tsInnerContainer,chartHelper:this.chartHelper});else if("hSpider"==this.options.tree_type)this.currentChartUI=new t_({tree_data:this.options.tree_data,tsInnerContainer:this.tsInnerContainer,chartHelper:this.chartHelper});else if("hSpiderWalk"==this.options.tree_type)this.currentChartUI=new r_({tree_data:this.options.tree_data,tsInnerContainer:this.tsInnerContainer,chartHelper:this.chartHelper});else if("cellar"==this.options.tree_type)this.currentChartUI=new a_({tree_data:this.options.tree_data,tsInnerContainer:this.tsInnerContainer,chartHelper:this.chartHelper});else if("goldenRod"==this.options.tree_type)this.currentChartUI=new i_({tree_data:this.options.tree_data,tsInnerContainer:this.tsInnerContainer,chartHelper:this.chartHelper});else{if("radialSpiderLeg"!=this.options.tree_type)throw new Error("Not implemented and you are welcome to implement it :)");this.currentChartUI=new n_({tree_data:this.options.tree_data,tsInnerContainer:this.tsInnerContainer,chartHelper:this.chartHelper})}if(this.options.tree_data.length>0&&this.options.show_tools){new c_({root_ui_element:this.rootWrapperContainer,zoomInOut:this.zoomInOut.bind(this),resetZoom:this.resetZoom.bind(this),animate_chat:this.currentChartUI?.animate_chat?.bind(this.currentChartUI)}).tree_type=this.options.tree_type}}bindPanning(){const e=this.rootWrapperContainer?.getBoundingClientRect(),t=jt(`[data-ts-unique-id='${this.instance_unique_id}']`);this.zoom_instace=gw().filter((e=>(e.preventDefault(),!(e.ctrlKey&&"wheel"!==e.type||e.button)))).extent([[0,0],[e.width,e.height]]).on("zoom",(e=>{this.emitEvent("zooming",{e:e})&&(this.tsInnerContainer.style.transform=`translate(${e.transform.x}px, ${e.transform.y}px) scale(${e.transform.k})`,this.rootWrapperContainer.style.setProperty("--ts-root-container-cursor","grabbing"),this.currentChartUI.current_scale=e.transform.k)})).on("end",(e=>{this.rootWrapperContainer.style.setProperty("--ts-root-container-cursor","grab")})),t.call(this.zoom_instace).on("dblclick.zoom",(e=>null))}center_elem(e,t="center"){const r=jt(`[data-ts-unique-id='${this.instance_unique_id}']`);""==this.tree_default_point_position&&(this.tree_default_point_position=t);const a=r.node()?.getBoundingClientRect(),i=this.tsInnerContainer?.getBoundingClientRect(),n=(e.left-i.left)/this.currentChartUI.current_scale,o=(e.top-i.top)/this.currentChartUI.current_scale,c=a.width/2-e.width/2/this.currentChartUI.current_scale,l=a.height/2-e.height/2/this.currentChartUI.current_scale;let s=0,u=0;if("center"==t)s=n-c,u=o-l;else if("top"==t)s=n-c,u=o-10;else if("bottom"==t){s=n-c;u=o-(l+(a.height/2-e.height/2))+10}else if("left"==t)s=n-10,u=o-l;else if("right"==t){s=n-(c+(a.width/2-e.width/2))+10,u=o-l}r.transition().duration(2500).call(this.zoom_instace?.transform,cw.translate(-s,-u))}emitEvent(e,t,r=!0){const a=new CustomEvent(e,{detail:t,bubbles:!0,cancelable:r});return this.dispatchEvent(a)}updateChartHeadBg(e){"goldenRod"==this.options.tree_type||"radialSpiderLeg"==this.options.tree_type?(this.rootWrapperContainer?.querySelectorAll(".main-svg-el").forEach((t=>t.querySelector("rect").style.fill=e)),this.addEventListener("chart_head.expanded",(()=>this.rootWrapperContainer?.querySelectorAll(".main-svg-el").forEach((t=>t.querySelector("rect").style.fill=e))))):(this.rootWrapperContainer?.querySelectorAll(".main-svg-el").forEach((t=>t.style.backgroundColor=e)),this.addEventListener("chart_head.expanded",(()=>this.rootWrapperContainer?.querySelectorAll(".main-svg-el").forEach((t=>t.style.backgroundColor=e)))))}on(e,t){this.addEventListener(e,t)}setOptions(e){this.setObjectValue(this.options,e)}zoom(e){this.zoomInOut(e)}startStopRotateCW(){this.currentChartUI?.animate_chat()}startStopRotateACW(){this.currentChartUI?.animate_chat(!1,!0)}rotateOnceCW(){this.currentChartUI?.animate_chat(!0)}rotateOnceACW(){this.currentChartUI?.animate_chat(!0,!0)}}export{l_ as default}; +var e={flux:'\n \n \n \n \n \n \n\n ',quad:'',blurry:'\n ',chaos:'',spiral:'',flurry:'',whirling:'',replicate:'\n \n \n \n \n \n ',scribble:'',squiggly:'',gyrate:'',leaves:'',reflection:'',spot:'\n \n \n \n '};function t(e,t){return null==e||null==t?NaN:et?1:e>=t?0:NaN}function r(e,t){return null==e||null==t?NaN:te?1:t>=e?0:NaN}function a(e){let a,n,o;function c(e,t,r=0,i=e.length){if(r>>1;n(e[a],t)<0?r=a+1:i=a}while(rt(e(r),a),o=(t,r)=>e(t)-r):(a=e===t||e===r?e:i,n=e,o=e),{left:c,center:function(e,t,r=0,a=e.length){const i=c(e,t,r,a-1);return i>r&&o(e[i-1],t)>-o(e[i],t)?i-1:i},right:function(e,t,r=0,i=e.length){if(r>>1;n(e[a],t)<=0?r=a+1:i=a}while(r{t(e,r,(a<<=2)+0,(i<<=2)+0,n<<=2),t(e,r,a+1,i+1,n),t(e,r,a+2,i+2,n),t(e,r,a+3,i+3,n)}}));function d(e){return function(t,r,a=r){if(!((r=+r)>=0))throw new RangeError("invalid rx");if(!((a=+a)>=0))throw new RangeError("invalid ry");let{data:i,width:n,height:o}=t;if(!((n=Math.floor(n))>=0))throw new RangeError("invalid width");if(!((o=Math.floor(void 0!==o?o:i.length/n))>=0))throw new RangeError("invalid height");if(!n||!o||!r&&!a)return t;const c=r&&e(r),l=a&&e(a),s=i.slice();return c&&l?(p(c,s,i,n,o),p(c,i,s,n,o),p(c,s,i,n,o),y(l,i,s,n,o),y(l,s,i,n,o),y(l,i,s,n,o)):c?(p(c,i,s,n,o),p(c,s,i,n,o),p(c,i,s,n,o)):l&&(y(l,i,s,n,o),y(l,s,i,n,o),y(l,i,s,n,o)),t}}function p(e,t,r,a,i){for(let n=0,o=a*i;n{if(!((n-=o)>=i))return;let c=e*a[i];const l=o*e;for(let e=i,t=i+l;e{if(!((o-=c)>=n))return;let l=t*i[n];const s=c*t,u=s+c;for(let e=n,t=n+s;e=t&&++r;else{let a=-1;for(let i of e)null!=(i=t(i,++a,e))&&(i=+i)>=i&&++r}return r}function g(e){return 0|e.length}function b(e){return!(e>0)}function v(e){return"object"!=typeof e||"length"in e?e:Array.from(e)}function x(e,t){let r,a=0,i=0,n=0;if(void 0===t)for(let t of e)null!=t&&(t=+t)>=t&&(r=t-i,i+=r/++a,n+=r*(t-i));else{let o=-1;for(let c of e)null!=(c=t(c,++o,e))&&(c=+c)>=c&&(r=c-i,i+=r/++a,n+=r*(c-i))}if(a>1)return n/(a-1)}function k(e,t){const r=x(e,t);return r?Math.sqrt(r):r}function w(e,t){let r,a;if(void 0===t)for(const t of e)null!=t&&(void 0===r?t>=t&&(r=a=t):(r>t&&(r=t),a=n&&(r=a=n):(r>n&&(r=n),a0){for(n=e[--i];i>0&&(t=n,r=e[--i],n=t+r,a=r-(n-t),!a););i>0&&(a<0&&e[i-1]<0||a>0&&e[i-1]>0)&&(r=2*a,t=n+r,r==t-n&&(n=t))}return n}}class _ extends Map{constructor(e,t=B){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:t}}),null!=e)for(const[t,r]of e)this.set(t,r)}get(e){return super.get(A(this,e))}has(e){return super.has(A(this,e))}set(e,t){return super.set(M(this,e),t)}delete(e){return super.delete(T(this,e))}}class S extends Set{constructor(e,t=B){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:t}}),null!=e)for(const t of e)this.add(t)}has(e){return super.has(A(this,e))}add(e){return super.add(M(this,e))}delete(e){return super.delete(T(this,e))}}function A({_intern:e,_key:t},r){const a=t(r);return e.has(a)?e.get(a):r}function M({_intern:e,_key:t},r){const a=t(r);return e.has(a)?e.get(a):(e.set(a,r),r)}function T({_intern:e,_key:t},r){const a=t(r);return e.has(a)&&(r=e.get(a),e.delete(a)),r}function B(e){return null!==e&&"object"==typeof e?e.valueOf():e}function L(e){return e}function E(e,...t){return G(e,L,L,t)}function R(e,...t){return G(e,Array.from,L,t)}function H(e,t){for(let r=1,a=t.length;re.pop().map((([t,r])=>[...e,t,r]))));return e}function D(e,t,...r){return G(e,L,t,r)}function P(e,t,...r){return G(e,Array.from,t,r)}function N(e){if(1!==e.length)throw new Error("duplicate key");return e[0]}function G(e,t,r,a){return function e(i,n){if(n>=a.length)return r(i);const o=new _,c=a[n++];let l=-1;for(const e of i){const t=c(e,++l,i),r=o.get(t);r?r.push(e):o.set(t,[e])}for(const[t,r]of o)o.set(t,e(r,n));return t(o)}(e,0)}function I(e,t){return Array.from(t,(t=>e[t]))}function W(e,...t){if("function"!=typeof e[Symbol.iterator])throw new TypeError("values is not iterable");e=Array.from(e);let[r]=t;if(r&&2!==r.length||t.length>1){const a=Uint32Array.from(e,((e,t)=>t));return t.length>1?(t=t.map((t=>e.map(t))),a.sort(((e,r)=>{for(const a of t){const t=z(a[e],a[r]);if(t)return t}}))):(r=e.map(r),a.sort(((e,t)=>z(r[e],r[t])))),I(e,a)}return e.sort(F(r))}function F(e=t){if(e===t)return z;if("function"!=typeof e)throw new TypeError("compare is not a function");return(t,r)=>{const a=e(t,r);return a||0===a?a:(0===e(r,r))-(0===e(t,t))}}function z(e,t){return(null==e||!(e>=e))-(null==t||!(t>=t))||(et?1:0)}var O=Array.prototype.slice;function K(e){return()=>e}const J=Math.sqrt(50),V=Math.sqrt(10),j=Math.sqrt(2);function Y(e,t,r){const a=(t-e)/Math.max(0,r),i=Math.floor(Math.log10(a)),n=a/Math.pow(10,i),o=n>=J?10:n>=V?5:n>=j?2:1;let c,l,s;return i<0?(s=Math.pow(10,-i)/o,c=Math.round(e*s),l=Math.round(t*s),c/st&&--l,s=-s):(s=Math.pow(10,i)*o,c=Math.round(e/s),l=Math.round(t/s),c*st&&--l),l0))return[];if((e=+e)===(t=+t))return[e];const a=t=i))return[];const c=n-i+1,l=new Array(c);if(a)if(o<0)for(let e=0;e0?(e=Math.floor(e/i)*i,t=Math.ceil(t/i)*i):i<0&&(e=Math.ceil(e*i)/i,t=Math.floor(t*i)/i),a=i}}function Q(e){return Math.max(1,Math.ceil(Math.log(m(e))/Math.LN2)+1)}function X(){var e=L,t=w,r=Q;function a(a){Array.isArray(a)||(a=Array.from(a));var i,n,o,l=a.length,s=new Array(l);for(i=0;i=d)if(e>=d&&t===w){const e=U(h,d,r);isFinite(e)&&(e>0?d=(Math.floor(d/e)+1)*e:e<0&&(d=(Math.ceil(d*-e)+1)/-e))}else p.pop()}for(var y=p.length,f=0,m=y;p[f]<=h;)++f;for(;p[m-1]>d;)--m;(f||m0?p[i-1]:h,g.x1=i0)for(i=0;i=t)&&(r=t);else{let a=-1;for(let i of e)null!=(i=t(i,++a,e))&&(r=i)&&(r=i)}return r}function te(e,t){let r,a=-1,i=-1;if(void 0===t)for(const t of e)++i,null!=t&&(r=t)&&(r=t,a=i);else for(let n of e)null!=(n=t(n,++i,e))&&(r=n)&&(r=n,a=i);return a}function re(e,t){let r;if(void 0===t)for(const t of e)null!=t&&(r>t||void 0===r&&t>=t)&&(r=t);else{let a=-1;for(let i of e)null!=(i=t(i,++a,e))&&(r>i||void 0===r&&i>=i)&&(r=i)}return r}function ae(e,t){let r,a=-1,i=-1;if(void 0===t)for(const t of e)++i,null!=t&&(r>t||void 0===r&&t>=t)&&(r=t,a=i);else for(let n of e)null!=(n=t(n,++i,e))&&(r>n||void 0===r&&n>=n)&&(r=n,a=i);return a}function ie(e,t,r=0,a=1/0,i){if(t=Math.floor(t),r=Math.floor(Math.max(0,r)),a=Math.floor(Math.min(e.length-1,a)),!(r<=t&&t<=a))return e;for(i=void 0===i?z:F(i);a>r;){if(a-r>600){const n=a-r+1,o=t-r+1,c=Math.log(n),l=.5*Math.exp(2*c/3),s=.5*Math.sqrt(c*l*(n-l)/n)*(o-n/2<0?-1:1);ie(e,t,Math.max(r,Math.floor(t-o*l/n+s)),Math.min(a,Math.floor(t+(n-o)*l/n+s)),i)}const n=e[t];let o=r,c=a;for(ne(e,r,t),i(e[a],n)>0&&ne(e,r,a);o0;)--c}0===i(e[r],n)?ne(e,r,c):(++c,ne(e,c,a)),c<=t&&(r=c+1),t<=c&&(a=c-1)}return e}function ne(e,t,r){const a=e[t];e[t]=e[r],e[r]=a}function oe(e,r=t){let a,i=!1;if(1===r.length){let n;for(const o of e){const e=r(o);(i?t(e,n)>0:0===t(e,e))&&(a=o,n=e,i=!0)}}else for(const t of e)(i?r(t,a)>0:0===r(t,t))&&(a=t,i=!0);return a}function ce(e,t,r){if(e=Float64Array.from(function*(e,t){if(void 0===t)for(let t of e)null!=t&&(t=+t)>=t&&(yield t);else{let r=-1;for(let a of e)null!=(a=t(a,++r,e))&&(a=+a)>=a&&(yield a)}}(e,r)),(a=e.length)&&!isNaN(t=+t)){if(t<=0||a<2)return re(e);if(t>=1)return ee(e);var a,i=(a-1)*t,n=Math.floor(i),o=ee(ie(e,n).subarray(0,n+1));return o+(re(e.subarray(n+1))-o)*(i-n)}}function le(e,t,r=n){if((a=e.length)&&!isNaN(t=+t)){if(t<=0||a<2)return+r(e[0],0,e);if(t>=1)return+r(e[a-1],a-1,e);var a,i=(a-1)*t,o=Math.floor(i),c=+r(e[o],o,e);return c+(+r(e[o+1],o+1,e)-c)*(i-o)}}function se(e,t,r=n){if(!isNaN(t=+t)){if(a=Float64Array.from(e,((t,a)=>n(r(e[a],a,e)))),t<=0)return ae(a);if(t>=1)return te(a);var a,i=Uint32Array.from(e,((e,t)=>t)),o=a.length-1,c=Math.floor(o*t);return ie(i,c,0,o,((e,t)=>z(a[e],a[t]))),(c=oe(i.subarray(0,c+1),(e=>a[e])))>=0?c:-1}}function ue(e){return Array.from(function*(e){for(const t of e)yield*t}(e))}function he(e,t){return[e,t]}function de(e,t,r){e=+e,t=+t,r=(i=arguments.length)<2?(t=e,e=0,1):i<3?1:+r;for(var a=-1,i=0|Math.max(0,Math.ceil((t-e)/r)),n=new Array(i);++a+e(t)}function Ae(e,t){return t=Math.max(0,e.bandwidth()-2*t)/2,e.round()&&(t=Math.round(t)),r=>+e(r)+t}function Me(){return!this.__axis}function Te(e,t){var r=[],a=null,i=null,n=6,o=6,c=3,l="undefined"!=typeof window&&window.devicePixelRatio>1?0:.5,s=1===e||4===e?-1:1,u=4===e||2===e?"x":"y",h=1===e||3===e?Ce:_e;function d(d){var p=null==a?t.ticks?t.ticks.apply(t,r):t.domain():a,y=null==i?t.tickFormat?t.tickFormat.apply(t,r):ke:i,f=Math.max(n,0)+c,m=t.range(),g=+m[0]+l,b=+m[m.length-1]+l,v=(t.bandwidth?Ae:Se)(t.copy(),l),x=d.selection?d.selection():d,k=x.selectAll(".domain").data([null]),w=x.selectAll(".tick").data(p,t).order(),C=w.exit(),_=w.enter().append("g").attr("class","tick"),S=w.select("line"),A=w.select("text");k=k.merge(k.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),w=w.merge(_),S=S.merge(_.append("line").attr("stroke","currentColor").attr(u+"2",s*n)),A=A.merge(_.append("text").attr("fill","currentColor").attr(u,s*f).attr("dy",1===e?"0em":3===e?"0.71em":"0.32em")),d!==x&&(k=k.transition(d),w=w.transition(d),S=S.transition(d),A=A.transition(d),C=C.transition(d).attr("opacity",we).attr("transform",(function(e){return isFinite(e=v(e))?h(e+l):this.getAttribute("transform")})),_.attr("opacity",we).attr("transform",(function(e){var t=this.parentNode.__axis;return h((t&&isFinite(t=t(e))?t:v(e))+l)}))),C.remove(),k.attr("d",4===e||2===e?o?"M"+s*o+","+g+"H"+l+"V"+b+"H"+s*o:"M"+l+","+g+"V"+b:o?"M"+g+","+s*o+"V"+l+"H"+b+"V"+s*o:"M"+g+","+l+"H"+b),w.attr("opacity",1).attr("transform",(function(e){return h(v(e)+l)})),S.attr(u+"2",s*n),A.attr(u,s*f).text(y),x.filter(Me).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",2===e?"start":4===e?"end":"middle"),x.each((function(){this.__axis=v}))}return d.scale=function(e){return arguments.length?(t=e,d):t},d.ticks=function(){return r=Array.from(arguments),d},d.tickArguments=function(e){return arguments.length?(r=null==e?[]:Array.from(e),d):r.slice()},d.tickValues=function(e){return arguments.length?(a=null==e?null:Array.from(e),d):a&&a.slice()},d.tickFormat=function(e){return arguments.length?(i=e,d):i},d.tickSize=function(e){return arguments.length?(n=o=+e,d):n},d.tickSizeInner=function(e){return arguments.length?(n=+e,d):n},d.tickSizeOuter=function(e){return arguments.length?(o=+e,d):o},d.tickPadding=function(e){return arguments.length?(c=+e,d):c},d.offset=function(e){return arguments.length?(l=+e,d):l},d}var Be={value:()=>{}};function Le(){for(var e,t=0,r=arguments.length,a={};t=0&&(t=e.slice(r+1),e=e.slice(0,r)),e&&!a.hasOwnProperty(e))throw new Error("unknown type: "+e);return{type:e,name:t}}))),o=-1,c=n.length;if(!(arguments.length<2)){if(null!=t&&"function"!=typeof t)throw new Error("invalid callback: "+t);for(;++o0)for(var r,a,i=new Array(r),n=0;n=0&&"xmlns"!==(t=e.slice(0,r))&&(e=e.slice(r+1)),Pe.hasOwnProperty(t)?{space:Pe[t],local:e}:e}function Ge(e){return function(){var t=this.ownerDocument,r=this.namespaceURI;return r===De&&t.documentElement.namespaceURI===De?t.createElement(e):t.createElementNS(r,e)}}function Ie(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function We(e){var t=Ne(e);return(t.local?Ie:Ge)(t)}function Fe(){}function ze(e){return null==e?Fe:function(){return this.querySelector(e)}}function Oe(e){return null==e?[]:Array.isArray(e)?e:Array.from(e)}function Ke(){return[]}function Je(e){return null==e?Ke:function(){return this.querySelectorAll(e)}}function Ve(e){return function(){return this.matches(e)}}function je(e){return function(t){return t.matches(e)}}var Ye=Array.prototype.find;function $e(){return this.firstElementChild}var Ue=Array.prototype.filter;function qe(){return Array.from(this.children)}function Ze(e){return new Array(e.length)}function Qe(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}function Xe(e,t,r,a,i,n){for(var o,c=0,l=t.length,s=n.length;ct?1:e>=t?0:NaN}function it(e){return function(){this.removeAttribute(e)}}function nt(e){return function(){this.removeAttributeNS(e.space,e.local)}}function ot(e,t){return function(){this.setAttribute(e,t)}}function ct(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}function lt(e,t){return function(){var r=t.apply(this,arguments);null==r?this.removeAttribute(e):this.setAttribute(e,r)}}function st(e,t){return function(){var r=t.apply(this,arguments);null==r?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,r)}}function ut(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function ht(e){return function(){this.style.removeProperty(e)}}function dt(e,t,r){return function(){this.style.setProperty(e,t,r)}}function pt(e,t,r){return function(){var a=t.apply(this,arguments);null==a?this.style.removeProperty(e):this.style.setProperty(e,a,r)}}function yt(e,t){return e.style.getPropertyValue(t)||ut(e).getComputedStyle(e,null).getPropertyValue(t)}function ft(e){return function(){delete this[e]}}function mt(e,t){return function(){this[e]=t}}function gt(e,t){return function(){var r=t.apply(this,arguments);null==r?delete this[e]:this[e]=r}}function bt(e){return e.trim().split(/^|\s+/)}function vt(e){return e.classList||new xt(e)}function xt(e){this._node=e,this._names=bt(e.getAttribute("class")||"")}function kt(e,t){for(var r=vt(e),a=-1,i=t.length;++a=0&&(this._names.splice(t,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};var Kt=[null];function Jt(e,t){this._groups=e,this._parents=t}function Vt(){return new Jt([[document.documentElement]],Kt)}function jt(e){return"string"==typeof e?new Jt([[document.querySelector(e)]],[document.documentElement]):new Jt([[e]],Kt)}function Yt(e){return jt(We(e).call(document.documentElement))}Jt.prototype=Vt.prototype={constructor:Jt,select:function(e){"function"!=typeof e&&(e=ze(e));for(var t=this._groups,r=t.length,a=new Array(r),i=0;i=x&&(x=v+1);!(b=m[x])&&++x=0;)(a=i[n])&&(o&&4^a.compareDocumentPosition(o)&&o.parentNode.insertBefore(a,o),o=a);return this},sort:function(e){function t(t,r){return t&&r?e(t.__data__,r.__data__):!t-!r}e||(e=at);for(var r=this._groups,a=r.length,i=new Array(a),n=0;n1?this.each((null==t?ht:"function"==typeof t?pt:dt)(e,t,null==r?"":r)):yt(this.node(),e)},property:function(e,t){return arguments.length>1?this.each((null==t?ft:"function"==typeof t?gt:mt)(e,t)):this.node()[e]},classed:function(e,t){var r=bt(e+"");if(arguments.length<2){for(var a=vt(this.node()),i=-1,n=r.length;++i=0&&(t=e.slice(r+1),e=e.slice(0,r)),{type:e,name:t}}))}(e+""),o=n.length;if(!(arguments.length<2)){for(c=t?Wt:It,a=0;a()=>e;function or(e,{sourceEvent:t,subject:r,target:a,identifier:i,active:n,x:o,y:c,dx:l,dy:s,dispatch:u}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},subject:{value:r,enumerable:!0,configurable:!0},target:{value:a,enumerable:!0,configurable:!0},identifier:{value:i,enumerable:!0,configurable:!0},active:{value:n,enumerable:!0,configurable:!0},x:{value:o,enumerable:!0,configurable:!0},y:{value:c,enumerable:!0,configurable:!0},dx:{value:l,enumerable:!0,configurable:!0},dy:{value:s,enumerable:!0,configurable:!0},_:{value:u}})}function cr(e){return!e.ctrlKey&&!e.button}function lr(){return this.parentNode}function sr(e,t){return null==t?{x:e.x,y:e.y}:t}function ur(){return navigator.maxTouchPoints||"ontouchstart"in this}function hr(e,t,r){e.prototype=t.prototype=r,r.constructor=e}function dr(e,t){var r=Object.create(e.prototype);for(var a in t)r[a]=t[a];return r}function pr(){}or.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};var yr=.7,fr=1/yr,mr="\\s*([+-]?\\d+)\\s*",gr="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",br="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",vr=/^#([0-9a-f]{3,8})$/,xr=new RegExp(`^rgb\\(${mr},${mr},${mr}\\)$`),kr=new RegExp(`^rgb\\(${br},${br},${br}\\)$`),wr=new RegExp(`^rgba\\(${mr},${mr},${mr},${gr}\\)$`),Cr=new RegExp(`^rgba\\(${br},${br},${br},${gr}\\)$`),_r=new RegExp(`^hsl\\(${gr},${br},${br}\\)$`),Sr=new RegExp(`^hsla\\(${gr},${br},${br},${gr}\\)$`),Ar={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};function Mr(){return this.rgb().formatHex()}function Tr(){return this.rgb().formatRgb()}function Br(e){var t,r;return e=(e+"").trim().toLowerCase(),(t=vr.exec(e))?(r=t[1].length,t=parseInt(t[1],16),6===r?Lr(t):3===r?new Dr(t>>8&15|t>>4&240,t>>4&15|240&t,(15&t)<<4|15&t,1):8===r?Er(t>>24&255,t>>16&255,t>>8&255,(255&t)/255):4===r?Er(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|240&t,((15&t)<<4|15&t)/255):null):(t=xr.exec(e))?new Dr(t[1],t[2],t[3],1):(t=kr.exec(e))?new Dr(255*t[1]/100,255*t[2]/100,255*t[3]/100,1):(t=wr.exec(e))?Er(t[1],t[2],t[3],t[4]):(t=Cr.exec(e))?Er(255*t[1]/100,255*t[2]/100,255*t[3]/100,t[4]):(t=_r.exec(e))?Fr(t[1],t[2]/100,t[3]/100,1):(t=Sr.exec(e))?Fr(t[1],t[2]/100,t[3]/100,t[4]):Ar.hasOwnProperty(e)?Lr(Ar[e]):"transparent"===e?new Dr(NaN,NaN,NaN,0):null}function Lr(e){return new Dr(e>>16&255,e>>8&255,255&e,1)}function Er(e,t,r,a){return a<=0&&(e=t=r=NaN),new Dr(e,t,r,a)}function Rr(e){return e instanceof pr||(e=Br(e)),e?new Dr((e=e.rgb()).r,e.g,e.b,e.opacity):new Dr}function Hr(e,t,r,a){return 1===arguments.length?Rr(e):new Dr(e,t,r,null==a?1:a)}function Dr(e,t,r,a){this.r=+e,this.g=+t,this.b=+r,this.opacity=+a}function Pr(){return`#${Wr(this.r)}${Wr(this.g)}${Wr(this.b)}`}function Nr(){const e=Gr(this.opacity);return`${1===e?"rgb(":"rgba("}${Ir(this.r)}, ${Ir(this.g)}, ${Ir(this.b)}${1===e?")":`, ${e})`}`}function Gr(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Ir(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Wr(e){return((e=Ir(e))<16?"0":"")+e.toString(16)}function Fr(e,t,r,a){return a<=0?e=t=r=NaN:r<=0||r>=1?e=t=NaN:t<=0&&(e=NaN),new Kr(e,t,r,a)}function zr(e){if(e instanceof Kr)return new Kr(e.h,e.s,e.l,e.opacity);if(e instanceof pr||(e=Br(e)),!e)return new Kr;if(e instanceof Kr)return e;var t=(e=e.rgb()).r/255,r=e.g/255,a=e.b/255,i=Math.min(t,r,a),n=Math.max(t,r,a),o=NaN,c=n-i,l=(n+i)/2;return c?(o=t===n?(r-a)/c+6*(r0&&l<1?0:o,new Kr(o,c,l,e.opacity)}function Or(e,t,r,a){return 1===arguments.length?zr(e):new Kr(e,t,r,null==a?1:a)}function Kr(e,t,r,a){this.h=+e,this.s=+t,this.l=+r,this.opacity=+a}function Jr(e){return(e=(e||0)%360)<0?e+360:e}function Vr(e){return Math.max(0,Math.min(1,e||0))}function jr(e,t,r){return 255*(e<60?t+(r-t)*e/60:e<180?r:e<240?t+(r-t)*(240-e)/60:t)}hr(pr,Br,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:Mr,formatHex:Mr,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return zr(this).formatHsl()},formatRgb:Tr,toString:Tr}),hr(Dr,Hr,dr(pr,{brighter(e){return e=null==e?fr:Math.pow(fr,e),new Dr(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=null==e?yr:Math.pow(yr,e),new Dr(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new Dr(Ir(this.r),Ir(this.g),Ir(this.b),Gr(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:Pr,formatHex:Pr,formatHex8:function(){return`#${Wr(this.r)}${Wr(this.g)}${Wr(this.b)}${Wr(255*(isNaN(this.opacity)?1:this.opacity))}`},formatRgb:Nr,toString:Nr})),hr(Kr,Or,dr(pr,{brighter(e){return e=null==e?fr:Math.pow(fr,e),new Kr(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=null==e?yr:Math.pow(yr,e),new Kr(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+360*(this.h<0),t=isNaN(e)||isNaN(this.s)?0:this.s,r=this.l,a=r+(r<.5?r:1-r)*t,i=2*r-a;return new Dr(jr(e>=240?e-240:e+120,i,a),jr(e,i,a),jr(e<120?e+240:e-120,i,a),this.opacity)},clamp(){return new Kr(Jr(this.h),Vr(this.s),Vr(this.l),Gr(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=Gr(this.opacity);return`${1===e?"hsl(":"hsla("}${Jr(this.h)}, ${100*Vr(this.s)}%, ${100*Vr(this.l)}%${1===e?")":`, ${e})`}`}}));const Yr=Math.PI/180,$r=180/Math.PI,Ur=.96422,qr=.82521,Zr=4/29,Qr=6/29,Xr=3*Qr*Qr,ea=Qr*Qr*Qr;function ta(e){if(e instanceof ia)return new ia(e.l,e.a,e.b,e.opacity);if(e instanceof ha)return da(e);e instanceof Dr||(e=Rr(e));var t,r,a=la(e.r),i=la(e.g),n=la(e.b),o=na((.2225045*a+.7168786*i+.0606169*n)/1);return a===i&&i===n?t=r=o:(t=na((.4360747*a+.3850649*i+.1430804*n)/Ur),r=na((.0139322*a+.0971045*i+.7141733*n)/qr)),new ia(116*o-16,500*(t-o),200*(o-r),e.opacity)}function ra(e,t){return new ia(e,0,0,null==t?1:t)}function aa(e,t,r,a){return 1===arguments.length?ta(e):new ia(e,t,r,null==a?1:a)}function ia(e,t,r,a){this.l=+e,this.a=+t,this.b=+r,this.opacity=+a}function na(e){return e>ea?Math.pow(e,1/3):e/Xr+Zr}function oa(e){return e>Qr?e*e*e:Xr*(e-Zr)}function ca(e){return 255*(e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055)}function la(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function sa(e){if(e instanceof ha)return new ha(e.h,e.c,e.l,e.opacity);if(e instanceof ia||(e=ta(e)),0===e.a&&0===e.b)return new ha(NaN,0=1?(r=1,t-1):Math.floor(r*t),i=e[a],n=e[a+1],o=a>0?e[a-1]:2*i-n,c=a()=>e;function Ma(e,t){return function(r){return e+r*t}}function Ta(e,t){var r=t-e;return r?Ma(e,r>180||r<-180?r-360*Math.round(r/360):r):Aa(isNaN(e)?t:e)}function Ba(e){return 1==(e=+e)?La:function(t,r){return r-t?function(e,t,r){return e=Math.pow(e,r),t=Math.pow(t,r)-e,r=1/r,function(a){return Math.pow(e+a*t,r)}}(t,r,e):Aa(isNaN(t)?r:t)}}function La(e,t){var r=t-e;return r?Ma(e,r):Aa(isNaN(e)?t:e)}var Ea=function e(t){var r=Ba(t);function a(e,t){var a=r((e=Hr(e)).r,(t=Hr(t)).r),i=r(e.g,t.g),n=r(e.b,t.b),o=La(e.opacity,t.opacity);return function(t){return e.r=a(t),e.g=i(t),e.b=n(t),e.opacity=o(t),e+""}}return a.gamma=e,a}(1);function Ra(e){return function(t){var r,a,i=t.length,n=new Array(i),o=new Array(i),c=new Array(i);for(r=0;rn&&(i=t.slice(n,i),c[o]?c[o]+=i:c[++o]=i),(r=r[0])===(a=a[0])?c[o]?c[o]+=a:c[++o]=a:(c[++o]=null,l.push({i:o,x:Wa(r,a)})),n=Oa.lastIndex;return n180?t+=360:t-e>180&&(e+=360),n.push({i:r.push(i(r)+"rotate(",null,a)-2,x:Wa(e,t)})):t&&r.push(i(r)+"rotate("+t+a)}(n.rotate,o.rotate,c,l),function(e,t,r,n){e!==t?n.push({i:r.push(i(r)+"skewX(",null,a)-2,x:Wa(e,t)}):t&&r.push(i(r)+"skewX("+t+a)}(n.skewX,o.skewX,c,l),function(e,t,r,a,n,o){if(e!==r||t!==a){var c=n.push(i(n)+"scale(",null,",",null,")");o.push({i:c-4,x:Wa(e,r)},{i:c-2,x:Wa(t,a)})}else 1===r&&1===a||n.push(i(n)+"scale("+r+","+a+")")}(n.scaleX,n.scaleY,o.scaleX,o.scaleY,c,l),n=o=null,function(e){for(var t,r=-1,a=l.length;++r=0&&t._call.call(void 0,e),t=t._next;--pi}function Ai(){gi=(mi=vi.now())+bi,pi=yi=0;try{Si()}finally{pi=0,function(){var e,t,r=hi,a=1/0;for(;r;)r._call?(a>r._time&&(a=r._time),e=r,r=r._next):(t=r._next,r._next=null,r=e?e._next=t:hi=t);di=e,Ti(a)}(),gi=0}}function Mi(){var e=vi.now(),t=e-mi;t>1e3&&(bi-=t,mi=e)}function Ti(e){pi||(yi&&(yi=clearTimeout(yi)),e-gi>24?(e<1/0&&(yi=setTimeout(Ai,e-vi.now()-bi)),fi&&(fi=clearInterval(fi))):(fi||(mi=vi.now(),fi=setInterval(Mi,1e3)),pi=1,xi(Ai)))}function Bi(e,t,r){var a=new Ci;return t=null==t?0:+t,a.restart((r=>{a.stop(),e(r+t)}),t,r),a}Ci.prototype=_i.prototype={constructor:Ci,restart:function(e,t,r){if("function"!=typeof e)throw new TypeError("callback is not a function");r=(null==r?ki():+r)+(null==t?0:+t),this._next||di===this||(di?di._next=this:hi=this,di=this),this._call=e,this._time=r,Ti()},stop:function(){this._call&&(this._call=null,this._time=1/0,Ti())}};var Li=Le("start","end","cancel","interrupt"),Ei=[];function Ri(e,t,r,a,i,n){var o=e.__transition;if(o){if(r in o)return}else e.__transition={};!function(e,t,r){var a,i=e.__transition;function n(e){r.state=1,r.timer.restart(o,r.delay,r.time),r.delay<=e&&o(e-r.delay)}function o(n){var s,u,h,d;if(1!==r.state)return l();for(s in i)if((d=i[s]).name===r.name){if(3===d.state)return Bi(o);4===d.state?(d.state=6,d.timer.stop(),d.on.call("interrupt",e,e.__data__,d.index,d.group),delete i[s]):+s0)throw new Error("too late; already scheduled");return r}function Di(e,t){var r=Pi(e,t);if(r.state>3)throw new Error("too late; already running");return r}function Pi(e,t){var r=e.__transition;if(!r||!(r=r[t]))throw new Error("transition not found");return r}function Ni(e,t){var r,a,i,n=e.__transition,o=!0;if(n){for(i in t=null==t?null:t+"",n)(r=n[i]).name===t?(a=r.state>2&&r.state<5,r.state=6,r.timer.stop(),r.on.call(a?"interrupt":"cancel",e,e.__data__,r.index,r.group),delete n[i]):o=!1;o&&delete e.__transition}}function Gi(e,t){var r,a;return function(){var i=Di(this,e),n=i.tween;if(n!==r)for(var o=0,c=(a=r=n).length;o=0&&(e=e.slice(0,t)),!e||"start"===e}))}(t)?Hi:Di;return function(){var o=n(this,e),c=o.on;c!==a&&(i=(a=c).copy()).on(t,r),o.on=i}}(r,e,t))},attr:function(e,t){var r=Ne(e),a="transform"===r?Qa:Fi;return this.attrTween(e,"function"==typeof t?(r.local?ji:Vi)(r,a,Wi(this,"attr."+e,t)):null==t?(r.local?Oi:zi)(r):(r.local?Ji:Ki)(r,a,t))},attrTween:function(e,t){var r="attr."+e;if(arguments.length<2)return(r=this.tween(r))&&r._value;if(null==t)return this.tween(r,null);if("function"!=typeof t)throw new Error;var a=Ne(e);return this.tween(r,(a.local?Yi:$i)(a,t))},style:function(e,t,r){var a="transform"==(e+="")?Za:Fi;return null==t?this.styleTween(e,function(e,t){var r,a,i;return function(){var n=yt(this,e),o=(this.style.removeProperty(e),yt(this,e));return n===o?null:n===r&&o===a?i:i=t(r=n,a=o)}}(e,a)).on("end.style."+e,en(e)):"function"==typeof t?this.styleTween(e,function(e,t,r){var a,i,n;return function(){var o=yt(this,e),c=r(this),l=c+"";return null==c&&(this.style.removeProperty(e),l=c=yt(this,e)),o===l?null:o===a&&l===i?n:(i=l,n=t(a=o,c))}}(e,a,Wi(this,"style."+e,t))).each(function(e,t){var r,a,i,n,o="style."+t,c="end."+o;return function(){var l=Di(this,e),s=l.on,u=null==l.value[o]?n||(n=en(t)):void 0;s===r&&i===u||(a=(r=s).copy()).on(c,i=u),l.on=a}}(this._id,e)):this.styleTween(e,function(e,t,r){var a,i,n=r+"";return function(){var o=yt(this,e);return o===n?null:o===a?i:i=t(a=o,r)}}(e,a,t),r).on("end.style."+e,null)},styleTween:function(e,t,r){var a="style."+(e+="");if(arguments.length<2)return(a=this.tween(a))&&a._value;if(null==t)return this.tween(a,null);if("function"!=typeof t)throw new Error;return this.tween(a,function(e,t,r){var a,i;function n(){var n=t.apply(this,arguments);return n!==i&&(a=(i=n)&&function(e,t,r){return function(a){this.style.setProperty(e,t.call(this,a),r)}}(e,n,r)),a}return n._value=t,n}(e,t,null==r?"":r))},text:function(e){return this.tween("text","function"==typeof e?function(e){return function(){var t=e(this);this.textContent=null==t?"":t}}(Wi(this,"text",e)):function(e){return function(){this.textContent=e}}(null==e?"":e+""))},textTween:function(e){var t="text";if(arguments.length<1)return(t=this.tween(t))&&t._value;if(null==e)return this.tween(t,null);if("function"!=typeof e)throw new Error;return this.tween(t,function(e){var t,r;function a(){var a=e.apply(this,arguments);return a!==r&&(t=(r=a)&&function(e){return function(t){this.textContent=e.call(this,t)}}(a)),t}return a._value=e,a}(e))},remove:function(){return this.on("end.remove",function(e){return function(){var t=this.parentNode;for(var r in this.__transition)if(+r!==e)return;t&&t.removeChild(this)}}(this._id))},tween:function(e,t){var r=this._id;if(e+="",arguments.length<2){for(var a,i=Pi(this.node(),r).tween,n=0,o=i.length;n()=>e;function In(e,{sourceEvent:t,target:r,selection:a,mode:i,dispatch:n}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},selection:{value:a,enumerable:!0,configurable:!0},mode:{value:i,enumerable:!0,configurable:!0},_:{value:n}})}function Wn(e){e.preventDefault(),e.stopImmediatePropagation()}var Fn={name:"drag"},zn={name:"space"},On={name:"handle"},Kn={name:"center"};const{abs:Jn,max:Vn,min:jn}=Math;function Yn(e){return[+e[0],+e[1]]}function $n(e){return[Yn(e[0]),Yn(e[1])]}var Un={name:"x",handles:["w","e"].map(ao),input:function(e,t){return null==e?null:[[+e[0],t[0][1]],[+e[1],t[1][1]]]},output:function(e){return e&&[e[0][0],e[1][0]]}},qn={name:"y",handles:["n","s"].map(ao),input:function(e,t){return null==e?null:[[t[0][0],+e[0]],[t[1][0],+e[1]]]},output:function(e){return e&&[e[0][1],e[1][1]]}},Zn={name:"xy",handles:["n","w","e","s","nw","ne","sw","se"].map(ao),input:function(e){return null==e?null:$n(e)},output:function(e){return e}},Qn={overlay:"crosshair",selection:"move",n:"ns-resize",e:"ew-resize",s:"ns-resize",w:"ew-resize",nw:"nwse-resize",ne:"nesw-resize",se:"nwse-resize",sw:"nesw-resize"},Xn={e:"w",w:"e",nw:"ne",ne:"nw",se:"sw",sw:"se"},eo={n:"s",s:"n",nw:"sw",ne:"se",se:"ne",sw:"nw"},to={overlay:1,selection:1,n:null,e:1,s:null,w:-1,nw:-1,ne:1,se:1,sw:-1},ro={overlay:1,selection:1,n:-1,e:null,s:1,w:null,nw:-1,ne:-1,se:1,sw:1};function ao(e){return{type:e}}function io(e){return!e.ctrlKey&&!e.button}function no(){var e=this.ownerSVGElement||this;return e.hasAttribute("viewBox")?[[(e=e.viewBox.baseVal).x,e.y],[e.x+e.width,e.y+e.height]]:[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]}function oo(){return navigator.maxTouchPoints||"ontouchstart"in this}function co(e){for(;!e.__brush;)if(!(e=e.parentNode))return;return e.__brush}function lo(e){var t,r=no,a=io,i=oo,n=!0,o=Le("start","brush","end"),c=6;function l(t){var r=t.property("__brush",f).selectAll(".overlay").data([ao("overlay")]);r.enter().append("rect").attr("class","overlay").attr("pointer-events","all").attr("cursor",Qn.overlay).merge(r).each((function(){var e=co(this).extent;jt(this).attr("x",e[0][0]).attr("y",e[0][1]).attr("width",e[1][0]-e[0][0]).attr("height",e[1][1]-e[0][1])})),t.selectAll(".selection").data([ao("selection")]).enter().append("rect").attr("class","selection").attr("cursor",Qn.selection).attr("fill","#777").attr("fill-opacity",.3).attr("stroke","#fff").attr("shape-rendering","crispEdges");var a=t.selectAll(".handle").data(e.handles,(function(e){return e.type}));a.exit().remove(),a.enter().append("rect").attr("class",(function(e){return"handle handle--"+e.type})).attr("cursor",(function(e){return Qn[e.type]})),t.each(s).attr("fill","none").attr("pointer-events","all").on("mousedown.brush",d).filter(i).on("touchstart.brush",d).on("touchmove.brush",p).on("touchend.brush touchcancel.brush",y).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function s(){var e=jt(this),t=co(this).selection;t?(e.selectAll(".selection").style("display",null).attr("x",t[0][0]).attr("y",t[0][1]).attr("width",t[1][0]-t[0][0]).attr("height",t[1][1]-t[0][1]),e.selectAll(".handle").style("display",null).attr("x",(function(e){return"e"===e.type[e.type.length-1]?t[1][0]-c/2:t[0][0]-c/2})).attr("y",(function(e){return"s"===e.type[0]?t[1][1]-c/2:t[0][1]-c/2})).attr("width",(function(e){return"n"===e.type||"s"===e.type?t[1][0]-t[0][0]+c:c})).attr("height",(function(e){return"e"===e.type||"w"===e.type?t[1][1]-t[0][1]+c:c}))):e.selectAll(".selection,.handle").style("display","none").attr("x",null).attr("y",null).attr("width",null).attr("height",null)}function u(e,t,r){var a=e.__brush.emitter;return!a||r&&a.clean?new h(e,t,r):a}function h(e,t,r){this.that=e,this.args=t,this.state=e.__brush,this.active=0,this.clean=r}function d(r){if((!t||r.touches)&&a.apply(this,arguments)){var i,o,c,l,h,d,p,y,f,m,g,b=this,v=r.target.__data__.type,x="selection"===(n&&r.metaKey?v="overlay":v)?Fn:n&&r.altKey?Kn:On,k=e===qn?null:to[v],w=e===Un?null:ro[v],C=co(b),_=C.extent,S=C.selection,A=_[0][0],M=_[0][1],T=_[1][0],B=_[1][1],L=0,E=0,R=k&&w&&n&&r.shiftKey,H=Array.from(r.touches||[r],(e=>{const t=e.identifier;return(e=Qt(e,b)).point0=e.slice(),e.identifier=t,e}));Ni(b);var D=u(b,arguments,!0).beforestart();if("overlay"===v){S&&(f=!0);const t=[H[0],H[1]||H[0]];C.selection=S=[[i=e===qn?A:jn(t[0][0],t[1][0]),c=e===Un?M:jn(t[0][1],t[1][1])],[h=e===qn?T:Vn(t[0][0],t[1][0]),p=e===Un?B:Vn(t[0][1],t[1][1])]],H.length>1&&W(r)}else i=S[0][0],c=S[0][1],h=S[1][0],p=S[1][1];o=i,l=c,d=h,y=p;var P=jt(b).attr("pointer-events","none"),N=P.selectAll(".overlay").attr("cursor",Qn[v]);if(r.touches)D.moved=I,D.ended=F;else{var G=jt(r.view).on("mousemove.brush",I,!0).on("mouseup.brush",F,!0);n&&G.on("keydown.brush",(function(e){switch(e.keyCode){case 16:R=k&&w;break;case 18:x===On&&(k&&(h=d-L*k,i=o+L*k),w&&(p=y-E*w,c=l+E*w),x=Kn,W(e));break;case 32:x!==On&&x!==Kn||(k<0?h=d-L:k>0&&(i=o-L),w<0?p=y-E:w>0&&(c=l-E),x=zn,N.attr("cursor",Qn.selection),W(e));break;default:return}Wn(e)}),!0).on("keyup.brush",(function(e){switch(e.keyCode){case 16:R&&(m=g=R=!1,W(e));break;case 18:x===Kn&&(k<0?h=d:k>0&&(i=o),w<0?p=y:w>0&&(c=l),x=On,W(e));break;case 32:x===zn&&(e.altKey?(k&&(h=d-L*k,i=o+L*k),w&&(p=y-E*w,c=l+E*w),x=Kn):(k<0?h=d:k>0&&(i=o),w<0?p=y:w>0&&(c=l),x=On),N.attr("cursor",Qn[v]),W(e));break;default:return}Wn(e)}),!0),ar(r.view)}s.call(b),D.start(r,x.name)}function I(e){for(const t of e.changedTouches||[e])for(const e of H)e.identifier===t.identifier&&(e.cur=Qt(t,b));if(R&&!m&&!g&&1===H.length){const e=H[0];Jn(e.cur[0]-e[0])>Jn(e.cur[1]-e[1])?g=!0:m=!0}for(const e of H)e.cur&&(e[0]=e.cur[0],e[1]=e.cur[1]);f=!0,Wn(e),W(e)}function W(e){const t=H[0],r=t.point0;var a;switch(L=t[0]-r[0],E=t[1]-r[1],x){case zn:case Fn:k&&(L=Vn(A-i,jn(T-h,L)),o=i+L,d=h+L),w&&(E=Vn(M-c,jn(B-p,E)),l=c+E,y=p+E);break;case On:H[1]?(k&&(o=Vn(A,jn(T,H[0][0])),d=Vn(A,jn(T,H[1][0])),k=1),w&&(l=Vn(M,jn(B,H[0][1])),y=Vn(M,jn(B,H[1][1])),w=1)):(k<0?(L=Vn(A-i,jn(T-i,L)),o=i+L,d=h):k>0&&(L=Vn(A-h,jn(T-h,L)),o=i,d=h+L),w<0?(E=Vn(M-c,jn(B-c,E)),l=c+E,y=p):w>0&&(E=Vn(M-p,jn(B-p,E)),l=c,y=p+E));break;case Kn:k&&(o=Vn(A,jn(T,i-L*k)),d=Vn(A,jn(T,h+L*k))),w&&(l=Vn(M,jn(B,c-E*w)),y=Vn(M,jn(B,p+E*w)))}de+r))}function vo(e,t){var r=0,a=null,i=null,n=null;function o(o){var c,l=o.length,s=new Array(l),u=bo(0,l),h=new Array(l*l),d=new Array(l),p=0;o=Float64Array.from({length:l*l},t?(e,t)=>o[t%l][t/l|0]:(e,t)=>o[t/l|0][t%l]);for(let t=0;ta(s[e],s[t])));for(const r of u){const a=t;if(e){const e=bo(1+~l,l).filter((e=>e<0?o[~e*l+r]:o[r*l+e]));i&&e.sort(((e,t)=>i(e<0?-o[~e*l+r]:o[r*l+e],t<0?-o[~t*l+r]:o[r*l+t])));for(const a of e)if(a<0){(h[~a*l+r]||(h[~a*l+r]={source:null,target:null})).target={index:r,startAngle:t,endAngle:t+=o[~a*l+r]*p,value:o[~a*l+r]}}else{(h[r*l+a]||(h[r*l+a]={source:null,target:null})).source={index:r,startAngle:t,endAngle:t+=o[r*l+a]*p,value:o[r*l+a]}}d[r]={index:r,startAngle:a,endAngle:t,value:s[r]}}else{const e=bo(0,l).filter((e=>o[r*l+e]||o[e*l+r]));i&&e.sort(((e,t)=>i(o[r*l+e],o[r*l+t])));for(const a of e){let e;if(r=0))throw new Error(`invalid digits: ${e}`);if(t>15)return _o;const r=10**t;return function(e){this._+=e[0];for(let t=1,a=e.length;two)if(Math.abs(u*c-l*s)>wo&&i){let d=r-n,p=a-o,y=c*c+l*l,f=d*d+p*p,m=Math.sqrt(y),g=Math.sqrt(h),b=i*Math.tan((xo-Math.acos((y+h-f)/(2*m*g)))/2),v=b/g,x=b/m;Math.abs(v-1)>wo&&this._append`L${e+v*s},${t+v*u}`,this._append`A${i},${i},0,0,${+(u*d>s*p)},${this._x1=e+x*c},${this._y1=t+x*l}`}else this._append`L${this._x1=e},${this._y1=t}`;else;}arc(e,t,r,a,i,n){if(e=+e,t=+t,n=!!n,(r=+r)<0)throw new Error(`negative radius: ${r}`);let o=r*Math.cos(a),c=r*Math.sin(a),l=e+o,s=t+c,u=1^n,h=n?a-i:i-a;null===this._x1?this._append`M${l},${s}`:(Math.abs(this._x1-l)>wo||Math.abs(this._y1-s)>wo)&&this._append`L${l},${s}`,r&&(h<0&&(h=h%ko+ko),h>Co?this._append`A${r},${r},0,1,${u},${e-o},${t-c}A${r},${r},0,1,${u},${this._x1=l},${this._y1=s}`:h>wo&&this._append`A${r},${r},0,${+(h>=xo)},${u},${this._x1=e+r*Math.cos(i)},${this._y1=t+r*Math.sin(i)}`)}rect(e,t,r,a){this._append`M${this._x0=this._x1=+e},${this._y0=this._y1=+t}h${r=+r}v${+a}h${-r}Z`}toString(){return this._}};function Ao(){return new So}Ao.prototype=So.prototype;var Mo=Array.prototype.slice;function To(e){return function(){return e}}function Bo(e){return e.source}function Lo(e){return e.target}function Eo(e){return e.radius}function Ro(e){return e.startAngle}function Ho(e){return e.endAngle}function Do(){return 0}function Po(){return 10}function No(e){var t=Bo,r=Lo,a=Eo,i=Eo,n=Ro,o=Ho,c=Do,l=null;function s(){var s,u=t.apply(this,arguments),h=r.apply(this,arguments),d=c.apply(this,arguments)/2,p=Mo.call(arguments),y=+a.apply(this,(p[0]=u,p)),f=n.apply(this,p)-yo,m=o.apply(this,p)-yo,g=+i.apply(this,(p[0]=h,p)),b=n.apply(this,p)-yo,v=o.apply(this,p)-yo;if(l||(l=s=Ao()),d>go&&(so(m-f)>2*d+go?m>f?(f+=d,m-=d):(f-=d,m+=d):f=m=(f+m)/2,so(v-b)>2*d+go?v>b?(b+=d,v-=d):(b-=d,v+=d):b=v=(b+v)/2),l.moveTo(y*uo(f),y*ho(f)),l.arc(0,0,y,f,m),f!==b||m!==v)if(e){var x=g-+e.apply(this,arguments),k=(b+v)/2;l.quadraticCurveTo(0,0,x*uo(b),x*ho(b)),l.lineTo(g*uo(k),g*ho(k)),l.lineTo(x*uo(v),x*ho(v))}else l.quadraticCurveTo(0,0,g*uo(b),g*ho(b)),l.arc(0,0,g,b,v);if(l.quadraticCurveTo(0,0,y*uo(f),y*ho(f)),l.closePath(),s)return l=null,s+""||null}return e&&(s.headRadius=function(t){return arguments.length?(e="function"==typeof t?t:To(+t),s):e}),s.radius=function(e){return arguments.length?(a=i="function"==typeof e?e:To(+e),s):a},s.sourceRadius=function(e){return arguments.length?(a="function"==typeof e?e:To(+e),s):a},s.targetRadius=function(e){return arguments.length?(i="function"==typeof e?e:To(+e),s):i},s.startAngle=function(e){return arguments.length?(n="function"==typeof e?e:To(+e),s):n},s.endAngle=function(e){return arguments.length?(o="function"==typeof e?e:To(+e),s):o},s.padAngle=function(e){return arguments.length?(c="function"==typeof e?e:To(+e),s):c},s.source=function(e){return arguments.length?(t=e,s):t},s.target=function(e){return arguments.length?(r=e,s):r},s.context=function(e){return arguments.length?(l=null==e?null:e,s):l},s}var Go=Array.prototype.slice;function Io(e,t){return e-t}var Wo=e=>()=>e;function Fo(e,t){for(var r,a=-1,i=t.length;++aa!=p>a&&r<(d-s)*(a-u)/(p-u)+s&&(i=-i)}return i}function Oo(e,t,r){var a;return function(e,t,r){return(t[0]-e[0])*(r[1]-e[1])==(r[0]-e[0])*(t[1]-e[1])}(e,t,r)&&function(e,t,r){return e<=t&&t<=r||r<=t&&t<=e}(e[a=+(e[0]===t[0])],r[a],t[a])}function Ko(){}var Jo=[[],[[[1,1.5],[.5,1]]],[[[1.5,1],[1,1.5]]],[[[1.5,1],[.5,1]]],[[[1,.5],[1.5,1]]],[[[1,1.5],[.5,1]],[[1,.5],[1.5,1]]],[[[1,.5],[1,1.5]]],[[[1,.5],[.5,1]]],[[[.5,1],[1,.5]]],[[[1,1.5],[1,.5]]],[[[.5,1],[1,.5]],[[1.5,1],[1,1.5]]],[[[1.5,1],[1,.5]]],[[[.5,1],[1.5,1]]],[[[1,1.5],[1.5,1]]],[[[.5,1],[1,1.5]]],[]];function Vo(){var e=1,t=1,r=Q,a=c;function i(e){var t=r(e);if(Array.isArray(t))t=t.slice().sort(Io);else{const r=w(e,jo);for(t=$(...Z(r[0],r[1],t),t);t[t.length-1]>=r[1];)t.pop();for(;t[1]n(e,t)))}function n(r,i){const n=null==i?NaN:+i;if(isNaN(n))throw new Error(`invalid value: ${i}`);var c=[],l=[];return function(r,a,i){var n,c,l,s,u,h,d=new Array,p=new Array;n=c=-1,s=Yo(r[0],a),Jo[s<<1].forEach(y);for(;++n=a,Jo[u<<2].forEach(y);for(;++n0?c.push([e]):l.push(e)})),l.forEach((function(e){for(var t,r=0,a=c.length;r0&&n0&&o=0&&n>=0))throw new Error("invalid size");return e=a,t=n,i},i.thresholds=function(e){return arguments.length?(r="function"==typeof e?e:Array.isArray(e)?Wo(Go.call(e)):Wo(e),i):r},i.smooth=function(e){return arguments.length?(a=e?c:Ko,i):a===c},i}function jo(e){return isFinite(e)?e:NaN}function Yo(e,t){return null!=e&&+e>=t}function $o(e){return null==e||isNaN(e=+e)?-1/0:e}function Uo(e,t,r,a){const i=a-t,n=r-t,o=isFinite(i)||isFinite(n)?i/n:Math.sign(i)/Math.sign(n);return isNaN(o)?e:e+o-.5}function qo(e){return e[0]}function Zo(e){return e[1]}function Qo(){return 1}const Xo=134217729;function ec(e,t,r,a,i){let n,o,c,l,s=t[0],u=a[0],h=0,d=0;u>s==u>-s?(n=s,s=t[++h]):(n=u,u=a[++d]);let p=0;if(hs==u>-s?(o=s+n,c=n-(o-s),s=t[++h]):(o=u+n,c=n-(o-u),u=a[++d]),n=o,0!==c&&(i[p++]=c);hs==u>-s?(o=n+s,l=o-n,c=n-(o-l)+(s-l),s=t[++h]):(o=n+u,l=o-n,c=n-(o-l)+(u-l),u=a[++d]),n=o,0!==c&&(i[p++]=c);for(;h=33306690738754716e-32*s?l:-function(e,t,r,a,i,n,o){let c,l,s,u,h,d,p,y,f,m,g,b,v,x,k,w,C,_;const S=e-i,A=r-i,M=t-n,T=a-n;x=S*T,d=Xo*S,p=d-(d-S),y=S-p,d=Xo*T,f=d-(d-T),m=T-f,k=y*m-(x-p*f-y*f-p*m),w=M*A,d=Xo*M,p=d-(d-M),y=M-p,d=Xo*A,f=d-(d-A),m=A-f,C=y*m-(w-p*f-y*f-p*m),g=k-C,h=k-g,rc[0]=k-(g+h)+(h-C),b=x+g,h=b-x,v=x-(b-h)+(g-h),g=v-w,h=v-g,rc[1]=v-(g+h)+(h-w),_=b+g,h=_-b,rc[2]=b-(_-h)+(g-h),rc[3]=_;let B=function(e,t){let r=t[0];for(let a=1;a=L||-B>=L)return B;if(h=e-S,c=e-(S+h)+(h-i),h=r-A,s=r-(A+h)+(h-i),h=t-M,l=t-(M+h)+(h-n),h=a-T,u=a-(T+h)+(h-n),0===c&&0===l&&0===s&&0===u)return B;if(L=11093356479670487e-47*o+33306690738754706e-32*Math.abs(B),B+=S*u+T*c-(M*s+A*l),B>=L||-B>=L)return B;x=c*T,d=Xo*c,p=d-(d-c),y=c-p,d=Xo*T,f=d-(d-T),m=T-f,k=y*m-(x-p*f-y*f-p*m),w=l*A,d=Xo*l,p=d-(d-l),y=l-p,d=Xo*A,f=d-(d-A),m=A-f,C=y*m-(w-p*f-y*f-p*m),g=k-C,h=k-g,oc[0]=k-(g+h)+(h-C),b=x+g,h=b-x,v=x-(b-h)+(g-h),g=v-w,h=v-g,oc[1]=v-(g+h)+(h-w),_=b+g,h=_-b,oc[2]=b-(_-h)+(g-h),oc[3]=_;const E=ec(4,rc,4,oc,ac);x=S*u,d=Xo*S,p=d-(d-S),y=S-p,d=Xo*u,f=d-(d-u),m=u-f,k=y*m-(x-p*f-y*f-p*m),w=M*s,d=Xo*M,p=d-(d-M),y=M-p,d=Xo*s,f=d-(d-s),m=s-f,C=y*m-(w-p*f-y*f-p*m),g=k-C,h=k-g,oc[0]=k-(g+h)+(h-C),b=x+g,h=b-x,v=x-(b-h)+(g-h),g=v-w,h=v-g,oc[1]=v-(g+h)+(h-w),_=b+g,h=_-b,oc[2]=b-(_-h)+(g-h),oc[3]=_;const R=ec(E,ac,4,oc,ic);x=c*u,d=Xo*c,p=d-(d-c),y=c-p,d=Xo*u,f=d-(d-u),m=u-f,k=y*m-(x-p*f-y*f-p*m),w=l*s,d=Xo*l,p=d-(d-l),y=l-p,d=Xo*s,f=d-(d-s),m=s-f,C=y*m-(w-p*f-y*f-p*m),g=k-C,h=k-g,oc[0]=k-(g+h)+(h-C),b=x+g,h=b-x,v=x-(b-h)+(g-h),g=v-w,h=v-g,oc[1]=v-(g+h)+(h-w),_=b+g,h=_-b,oc[2]=b-(_-h)+(g-h),oc[3]=_;const H=ec(R,ic,4,oc,nc);return nc[H-1]}(e,t,r,a,i,n,s)}const lc=Math.pow(2,-52),sc=new Uint32Array(512);class uc{static from(e,t=mc,r=gc){const a=e.length,i=new Float64Array(2*a);for(let n=0;n>1;if(t>0&&"number"!=typeof e[0])throw new Error("Expected coords to contain numbers.");this.coords=e;const r=Math.max(2*t-5,0);this._triangles=new Uint32Array(3*r),this._halfedges=new Int32Array(3*r),this._hashSize=Math.ceil(Math.sqrt(t)),this._hullPrev=new Uint32Array(t),this._hullNext=new Uint32Array(t),this._hullTri=new Uint32Array(t),this._hullHash=new Int32Array(this._hashSize),this._ids=new Uint32Array(t),this._dists=new Float64Array(t),this.update()}update(){const{coords:e,_hullPrev:t,_hullNext:r,_hullTri:a,_hullHash:i}=this,n=e.length>>1;let o=1/0,c=1/0,l=-1/0,s=-1/0;for(let t=0;tl&&(l=r),a>s&&(s=a),this._ids[t]=t}const u=(o+l)/2,h=(c+s)/2;let d,p,y;for(let t=0,r=1/0;t0&&(p=t,r=a)}let g=e[2*p],b=e[2*p+1],v=1/0;for(let t=0;ta&&(t[r++]=i,a=n)}return this.hull=t.subarray(0,r),this.triangles=new Uint32Array(0),void(this.halfedges=new Uint32Array(0))}if(cc(f,m,g,b,x,k)<0){const e=p,t=g,r=b;p=y,g=x,b=k,y=e,x=t,k=r}const w=function(e,t,r,a,i,n){const o=r-e,c=a-t,l=i-e,s=n-t,u=o*o+c*c,h=l*l+s*s,d=.5/(o*s-c*l),p=e+(s*u-c*h)*d,y=t+(o*h-l*u)*d;return{x:p,y:y}}(f,m,g,b,x,k);this._cx=w.x,this._cy=w.y;for(let t=0;t0&&Math.abs(s-n)<=lc&&Math.abs(u-o)<=lc)continue;if(n=s,o=u,l===d||l===p||l===y)continue;let h=0;for(let e=0,t=this._hashKey(s,u);e=0;)if(m=f,m===h){m=-1;break}if(-1===m)continue;let g=this._addTriangle(m,l,r[m],-1,-1,a[m]);a[l]=this._legalize(g+2),a[m]=g,C++;let b=r[m];for(;f=r[b],cc(s,u,e[2*b],e[2*b+1],e[2*f],e[2*f+1])<0;)g=this._addTriangle(b,l,f,a[l],-1,a[b]),a[l]=this._legalize(g+2),r[b]=b,C--,b=f;if(m===h)for(;f=t[m],cc(s,u,e[2*f],e[2*f+1],e[2*m],e[2*m+1])<0;)g=this._addTriangle(f,l,m,-1,a[m],a[f]),this._legalize(g+2),a[f]=g,r[m]=m,C--,m=f;this._hullStart=t[l]=m,r[m]=t[b]=l,r[l]=b,i[this._hashKey(s,u)]=l,i[this._hashKey(e[2*m],e[2*m+1])]=m}this.hull=new Uint32Array(C);for(let e=0,t=this._hullStart;e0?3-r:1+r)/4}(e-this._cx,t-this._cy)*this._hashSize)%this._hashSize}_legalize(e){const{_triangles:t,_halfedges:r,coords:a}=this;let i=0,n=0;for(;;){const o=r[e],c=e-e%3;if(n=c+(e+2)%3,-1===o){if(0===i)break;e=sc[--i];continue}const l=o-o%3,s=c+(e+1)%3,u=l+(o+2)%3,h=t[n],d=t[e],p=t[s],y=t[u];if(dc(a[2*h],a[2*h+1],a[2*d],a[2*d+1],a[2*p],a[2*p+1],a[2*y],a[2*y+1])){t[e]=y,t[o]=h;const a=r[u];if(-1===a){let t=this._hullStart;do{if(this._hullTri[t]===u){this._hullTri[t]=e;break}t=this._hullPrev[t]}while(t!==this._hullStart)}this._link(e,a),this._link(o,r[n]),this._link(n,u);const c=l+(o+1)%3;i=r&&t[e[o]]>n;)e[o+1]=e[o--];e[o+1]=a}else{let i=r+1,n=a;fc(e,r+a>>1,i),t[e[r]]>t[e[a]]&&fc(e,r,a),t[e[i]]>t[e[a]]&&fc(e,i,a),t[e[r]]>t[e[i]]&&fc(e,r,i);const o=e[i],c=t[o];for(;;){do{i++}while(t[e[i]]c);if(n=n-r?(yc(e,t,i,a),yc(e,t,r,n-1)):(yc(e,t,r,n-1),yc(e,t,i,a))}}function fc(e,t,r){const a=e[t];e[t]=e[r],e[r]=a}function mc(e){return e[0]}function gc(e){return e[1]}const bc=1e-6;class vc{constructor(){this._x0=this._y0=this._x1=this._y1=null,this._=""}moveTo(e,t){this._+=`M${this._x0=this._x1=+e},${this._y0=this._y1=+t}`}closePath(){null!==this._x1&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")}lineTo(e,t){this._+=`L${this._x1=+e},${this._y1=+t}`}arc(e,t,r){const a=(e=+e)+(r=+r),i=t=+t;if(r<0)throw new Error("negative radius");null===this._x1?this._+=`M${a},${i}`:(Math.abs(this._x1-a)>bc||Math.abs(this._y1-i)>bc)&&(this._+="L"+a+","+i),r&&(this._+=`A${r},${r},0,1,1,${e-r},${t}A${r},${r},0,1,1,${this._x1=a},${this._y1=i}`)}rect(e,t,r,a){this._+=`M${this._x0=this._x1=+e},${this._y0=this._y1=+t}h${+r}v${+a}h${-r}Z`}value(){return this._||null}}class xc{constructor(){this._=[]}moveTo(e,t){this._.push([e,t])}closePath(){this._.push(this._[0].slice())}lineTo(e,t){this._.push([e,t])}value(){return this._.length?this._:null}}class kc{constructor(e,[t,r,a,i]=[0,0,960,500]){if(!((a=+a)>=(t=+t)&&(i=+i)>=(r=+r)))throw new Error("invalid bounds");this.delaunay=e,this._circumcenters=new Float64Array(2*e.points.length),this.vectors=new Float64Array(2*e.points.length),this.xmax=a,this.xmin=t,this.ymax=i,this.ymin=r,this._init()}update(){return this.delaunay.update(),this._init(),this}_init(){const{delaunay:{points:e,hull:t,triangles:r},vectors:a}=this;let i,n;const o=this.circumcenters=this._circumcenters.subarray(0,r.length/3*2);for(let a,c,l=0,s=0,u=r.length;l1;)i-=2;for(let e=2;e0){if(t>=this.ymax)return null;(i=(this.ymax-t)/a)0){if(e>=this.xmax)return null;(i=(this.xmax-e)/r)this.xmax?2:0)|(tthis.ymax?8:0)}_simplify(e){if(e&&e.length>4){for(let t=0;t2&&function(e){const{triangles:t,coords:r}=e;for(let e=0;e1e-10)return!1}return!0}(e)){this.collinear=Int32Array.from({length:t.length/2},((e,t)=>t)).sort(((e,r)=>t[2*e]-t[2*r]||t[2*e+1]-t[2*r+1]));const e=this.collinear[0],r=this.collinear[this.collinear.length-1],a=[t[2*e],t[2*e+1],t[2*r],t[2*r+1]],i=1e-8*Math.hypot(a[3]-a[1],a[2]-a[0]);for(let e=0,r=t.length/2;e0&&(this.triangles=new Int32Array(3).fill(-1),this.halfedges=new Int32Array(3).fill(-1),this.triangles[0]=a[0],n[a[0]]=1,2===a.length&&(n[a[1]]=0,this.triangles[1]=a[1],this.triangles[2]=a[1]))}voronoi(e){return new kc(this,e)}*neighbors(e){const{inedges:t,hull:r,_hullIndex:a,halfedges:i,triangles:n,collinear:o}=this;if(o){const t=o.indexOf(e);return t>0&&(yield o[t-1]),void(t=0&&i!==r&&i!==a;)r=i;return i}_step(e,t,r){const{inedges:a,hull:i,_hullIndex:n,halfedges:o,triangles:c,points:l}=this;if(-1===a[e]||!l.length)return(e+1)%(l.length>>1);let s=e,u=Cc(t-l[2*e],2)+Cc(r-l[2*e+1],2);const h=a[e];let d=h;do{let a=c[d];const h=Cc(t-l[2*a],2)+Cc(r-l[2*a+1],2);if(h9999?"+"+Rc(t,6):Rc(t,4))+"-"+Rc(e.getUTCMonth()+1,2)+"-"+Rc(e.getUTCDate(),2)+(n?"T"+Rc(r,2)+":"+Rc(a,2)+":"+Rc(i,2)+"."+Rc(n,3)+"Z":i?"T"+Rc(r,2)+":"+Rc(a,2)+":"+Rc(i,2)+"Z":a||r?"T"+Rc(r,2)+":"+Rc(a,2)+"Z":"")}function Dc(e){var t=new RegExp('["'+e+"\n\r]"),r=e.charCodeAt(0);function a(e,t){var a,i=[],n=e.length,o=0,c=0,l=n<=0,s=!1;function u(){if(l)return Bc;if(s)return s=!1,Tc;var t,a,i=o;if(34===e.charCodeAt(i)){for(;o++=n?l=!0:10===(a=e.charCodeAt(o++))?s=!0:13===a&&(s=!0,10===e.charCodeAt(o)&&++o),e.slice(i+1,t-1).replace(/""/g,'"')}for(;otl(t,r).then((t=>(new DOMParser).parseFromString(t,e)))}var cl=ol("application/xml"),ll=ol("text/html"),sl=ol("image/svg+xml");function ul(e,t,r,a){if(isNaN(t)||isNaN(r))return e;var i,n,o,c,l,s,u,h,d,p=e._root,y={data:a},f=e._x0,m=e._y0,g=e._x1,b=e._y1;if(!p)return e._root=y,e;for(;p.length;)if((s=t>=(n=(f+g)/2))?f=n:g=n,(u=r>=(o=(m+b)/2))?m=o:b=o,i=p,!(p=p[h=u<<1|s]))return i[h]=y,e;if(c=+e._x.call(null,p.data),l=+e._y.call(null,p.data),t===c&&r===l)return y.next=p,i?i[h]=y:e._root=y,e;do{i=i?i[h]=new Array(4):e._root=new Array(4),(s=t>=(n=(f+g)/2))?f=n:g=n,(u=r>=(o=(m+b)/2))?m=o:b=o}while((h=u<<1|s)==(d=(l>=o)<<1|c>=n));return i[d]=p,i[h]=y,e}function hl(e,t,r,a,i){this.node=e,this.x0=t,this.y0=r,this.x1=a,this.y1=i}function dl(e){return e[0]}function pl(e){return e[1]}function yl(e,t,r){var a=new fl(null==t?dl:t,null==r?pl:r,NaN,NaN,NaN,NaN);return null==e?a:a.addAll(e)}function fl(e,t,r,a,i,n){this._x=e,this._y=t,this._x0=r,this._y0=a,this._x1=i,this._y1=n,this._root=void 0}function ml(e){for(var t={data:e.data},r=t;e=e.next;)r=r.next={data:e.data};return t}var gl=yl.prototype=fl.prototype;function bl(e){return function(){return e}}function vl(e){return 1e-6*(e()-.5)}function xl(e){return e.x+e.vx}function kl(e){return e.y+e.vy}function wl(e){return e.index}function Cl(e,t){var r=e.get(t);if(!r)throw new Error("node not found: "+t);return r}gl.copy=function(){var e,t,r=new fl(this._x,this._y,this._x0,this._y0,this._x1,this._y1),a=this._root;if(!a)return r;if(!a.length)return r._root=ml(a),r;for(e=[{source:a,target:r._root=new Array(4)}];a=e.pop();)for(var i=0;i<4;++i)(t=a.source[i])&&(t.length?e.push({source:t,target:a.target[i]=new Array(4)}):a.target[i]=ml(t));return r},gl.add=function(e){const t=+this._x.call(null,e),r=+this._y.call(null,e);return ul(this.cover(t,r),t,r,e)},gl.addAll=function(e){var t,r,a,i,n=e.length,o=new Array(n),c=new Array(n),l=1/0,s=1/0,u=-1/0,h=-1/0;for(r=0;ru&&(u=a),ih&&(h=i));if(l>u||s>h)return this;for(this.cover(l,s).cover(u,h),r=0;re||e>=i||a>t||t>=n;)switch(c=(td||(n=l.y0)>p||(o=l.x1)=g)<<1|e>=m)&&(l=y[y.length-1],y[y.length-1]=y[y.length-1-s],y[y.length-1-s]=l)}else{var b=e-+this._x.call(null,f.data),v=t-+this._y.call(null,f.data),x=b*b+v*v;if(x=(c=(y+m)/2))?y=c:m=c,(u=o>=(l=(f+g)/2))?f=l:g=l,t=p,!(p=p[h=u<<1|s]))return this;if(!p.length)break;(t[h+1&3]||t[h+2&3]||t[h+3&3])&&(r=t,d=h)}for(;p.data!==e;)if(a=p,!(p=p.next))return this;return(i=p.next)&&delete p.next,a?(i?a.next=i:delete a.next,this):t?(i?t[h]=i:delete t[h],(p=t[0]||t[1]||t[2]||t[3])&&p===(t[3]||t[2]||t[1]||t[0])&&!p.length&&(r?r[d]=p:this._root=p),this):(this._root=i,this)},gl.removeAll=function(e){for(var t=0,r=e.length;t1?a[0]+a.slice(2):a,+e.slice(r+1)]}function Bl(e){return(e=Tl(Math.abs(e)))?e[1]:NaN}var Ll,El=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function Rl(e){if(!(t=El.exec(e)))throw new Error("invalid format: "+e);var t;return new Hl({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}function Hl(e){this.fill=void 0===e.fill?" ":e.fill+"",this.align=void 0===e.align?">":e.align+"",this.sign=void 0===e.sign?"-":e.sign+"",this.symbol=void 0===e.symbol?"":e.symbol+"",this.zero=!!e.zero,this.width=void 0===e.width?void 0:+e.width,this.comma=!!e.comma,this.precision=void 0===e.precision?void 0:+e.precision,this.trim=!!e.trim,this.type=void 0===e.type?"":e.type+""}function Dl(e,t){var r=Tl(e,t);if(!r)return e+"";var a=r[0],i=r[1];return i<0?"0."+new Array(-i).join("0")+a:a.length>i+1?a.slice(0,i+1)+"."+a.slice(i+1):a+new Array(i-a.length+2).join("0")}Rl.prototype=Hl.prototype,Hl.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(void 0===this.width?"":Math.max(1,0|this.width))+(this.comma?",":"")+(void 0===this.precision?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type};var Pl={"%":(e,t)=>(100*e).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+"",d:function(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString("en").replace(/,/g,""):e.toString(10)},e:(e,t)=>e.toExponential(t),f:(e,t)=>e.toFixed(t),g:(e,t)=>e.toPrecision(t),o:e=>Math.round(e).toString(8),p:(e,t)=>Dl(100*e,t),r:Dl,s:function(e,t){var r=Tl(e,t);if(!r)return e+"";var a=r[0],i=r[1],n=i-(Ll=3*Math.max(-8,Math.min(8,Math.floor(i/3))))+1,o=a.length;return n===o?a:n>o?a+new Array(n-o+1).join("0"):n>0?a.slice(0,n)+"."+a.slice(n):"0."+new Array(1-n).join("0")+Tl(e,Math.max(0,t+n-1))[0]},X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function Nl(e){return e}var Gl,Il,Wl,Fl=Array.prototype.map,zl=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function Ol(e){var t,r,a=void 0===e.grouping||void 0===e.thousands?Nl:(t=Fl.call(e.grouping,Number),r=e.thousands+"",function(e,a){for(var i=e.length,n=[],o=0,c=t[0],l=0;i>0&&c>0&&(l+c+1>a&&(c=Math.max(1,a-l)),n.push(e.substring(i-=c,i+c)),!((l+=c+1)>a));)c=t[o=(o+1)%t.length];return n.reverse().join(r)}),i=void 0===e.currency?"":e.currency[0]+"",n=void 0===e.currency?"":e.currency[1]+"",o=void 0===e.decimal?".":e.decimal+"",c=void 0===e.numerals?Nl:function(e){return function(t){return t.replace(/[0-9]/g,(function(t){return e[+t]}))}}(Fl.call(e.numerals,String)),l=void 0===e.percent?"%":e.percent+"",s=void 0===e.minus?"−":e.minus+"",u=void 0===e.nan?"NaN":e.nan+"";function h(e){var t=(e=Rl(e)).fill,r=e.align,h=e.sign,d=e.symbol,p=e.zero,y=e.width,f=e.comma,m=e.precision,g=e.trim,b=e.type;"n"===b?(f=!0,b="g"):Pl[b]||(void 0===m&&(m=12),g=!0,b="g"),(p||"0"===t&&"="===r)&&(p=!0,t="0",r="=");var v="$"===d?i:"#"===d&&/[boxX]/.test(b)?"0"+b.toLowerCase():"",x="$"===d?n:/[%p]/.test(b)?l:"",k=Pl[b],w=/[defgprs%]/.test(b);function C(e){var i,n,l,d=v,C=x;if("c"===b)C=k(e)+C,e="";else{var _=(e=+e)<0||1/e<0;if(e=isNaN(e)?u:k(Math.abs(e),m),g&&(e=function(e){e:for(var t,r=e.length,a=1,i=-1;a0&&(i=0)}return i>0?e.slice(0,i)+e.slice(t+1):e}(e)),_&&0==+e&&"+"!==h&&(_=!1),d=(_?"("===h?h:s:"-"===h||"("===h?"":h)+d,C=("s"===b?zl[8+Ll/3]:"")+C+(_&&"("===h?")":""),w)for(i=-1,n=e.length;++i(l=e.charCodeAt(i))||l>57){C=(46===l?o+e.slice(i+1):e.slice(i))+C,e=e.slice(0,i);break}}f&&!p&&(e=a(e,1/0));var S=d.length+e.length+C.length,A=S>1)+d+e+C+A.slice(S);break;default:e=A+d+e+C}return c(e)}return m=void 0===m?6:/[gprs]/.test(b)?Math.max(1,Math.min(21,m)):Math.max(0,Math.min(20,m)),C.toString=function(){return e+""},C}return{format:h,formatPrefix:function(e,t){var r=h(((e=Rl(e)).type="f",e)),a=3*Math.max(-8,Math.min(8,Math.floor(Bl(t)/3))),i=Math.pow(10,-a),n=zl[8+a/3];return function(e){return r(i*e)+n}}}}function Kl(e){return Gl=Ol(e),Il=Gl.format,Wl=Gl.formatPrefix,Gl}function Jl(e){return Math.max(0,-Bl(Math.abs(e)))}function Vl(e,t){return Math.max(0,3*Math.max(-8,Math.min(8,Math.floor(Bl(t)/3)))-Bl(Math.abs(e)))}function jl(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,Bl(t)-Bl(e))+1}Kl({thousands:",",grouping:[3],currency:["$",""]});var Yl=1e-6,$l=1e-12,Ul=Math.PI,ql=Ul/2,Zl=Ul/4,Ql=2*Ul,Xl=180/Ul,es=Ul/180,ts=Math.abs,rs=Math.atan,as=Math.atan2,is=Math.cos,ns=Math.ceil,os=Math.exp,cs=Math.hypot,ls=Math.log,ss=Math.pow,us=Math.sin,hs=Math.sign||function(e){return e>0?1:e<0?-1:0},ds=Math.sqrt,ps=Math.tan;function ys(e){return e>1?0:e<-1?Ul:Math.acos(e)}function fs(e){return e>1?ql:e<-1?-ql:Math.asin(e)}function ms(e){return(e=us(e/2))*e}function gs(){}function bs(e,t){e&&xs.hasOwnProperty(e.type)&&xs[e.type](e,t)}var vs={Feature:function(e,t){bs(e.geometry,t)},FeatureCollection:function(e,t){for(var r=e.features,a=-1,i=r.length;++a=0?1:-1,i=a*r,n=is(t=(t*=es)/2+Zl),o=us(t),c=Ts*o,l=Ms*n+c*is(i),s=c*a*us(i);Fs.add(as(s,l)),As=e,Ms=n,Ts=o}function Ys(e){return[as(e[1],e[0]),fs(e[2])]}function $s(e){var t=e[0],r=e[1],a=is(r);return[a*is(t),a*us(t),us(r)]}function Us(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}function qs(e,t){return[e[1]*t[2]-e[2]*t[1],e[2]*t[0]-e[0]*t[2],e[0]*t[1]-e[1]*t[0]]}function Zs(e,t){e[0]+=t[0],e[1]+=t[1],e[2]+=t[2]}function Qs(e,t){return[e[0]*t,e[1]*t,e[2]*t]}function Xs(e){var t=ds(e[0]*e[0]+e[1]*e[1]+e[2]*e[2]);e[0]/=t,e[1]/=t,e[2]/=t}var eu,tu,ru,au,iu,nu,ou,cu,lu,su,uu,hu,du,pu,yu,fu,mu={point:gu,lineStart:vu,lineEnd:xu,polygonStart:function(){mu.point=ku,mu.lineStart=wu,mu.lineEnd=Cu,Gs=new C,Os.polygonStart()},polygonEnd:function(){Os.polygonEnd(),mu.point=gu,mu.lineStart=vu,mu.lineEnd=xu,Fs<0?(Bs=-(Es=180),Ls=-(Rs=90)):Gs>Yl?Rs=90:Gs<-1e-6&&(Ls=-90),Ws[0]=Bs,Ws[1]=Es},sphere:function(){Bs=-(Es=180),Ls=-(Rs=90)}};function gu(e,t){Is.push(Ws=[Bs=e,Es=e]),tRs&&(Rs=t)}function bu(e,t){var r=$s([e*es,t*es]);if(Ns){var a=qs(Ns,r),i=qs([a[1],-a[0],0],a);Xs(i),i=Ys(i);var n,o=e-Hs,c=o>0?1:-1,l=i[0]*Xl*c,s=ts(o)>180;s^(c*HsRs&&(Rs=n):s^(c*Hs<(l=(l+360)%360-180)&&lRs&&(Rs=t)),s?e_u(Bs,Es)&&(Es=e):_u(e,Es)>_u(Bs,Es)&&(Bs=e):Es>=Bs?(eEs&&(Es=e)):e>Hs?_u(Bs,e)>_u(Bs,Es)&&(Es=e):_u(e,Es)>_u(Bs,Es)&&(Bs=e)}else Is.push(Ws=[Bs=e,Es=e]);tRs&&(Rs=t),Ns=r,Hs=e}function vu(){mu.point=bu}function xu(){Ws[0]=Bs,Ws[1]=Es,mu.point=gu,Ns=null}function ku(e,t){if(Ns){var r=e-Hs;Gs.add(ts(r)>180?r+(r>0?360:-360):r)}else Ds=e,Ps=t;Os.point(e,t),bu(e,t)}function wu(){Os.lineStart()}function Cu(){ku(Ds,Ps),Os.lineEnd(),ts(Gs)>Yl&&(Bs=-(Es=180)),Ws[0]=Bs,Ws[1]=Es,Ns=null}function _u(e,t){return(t-=e)<0?t+360:t}function Su(e,t){return e[0]-t[0]}function Au(e,t){return e[0]<=e[1]?e[0]<=t&&t<=e[1]:tUl&&(e-=Math.round(e/Ql)*Ql),[e,t]}function zu(e,t,r){return(e%=Ql)?t||r?Wu(Ku(e),Ju(t,r)):Ku(e):t||r?Ju(t,r):Fu}function Ou(e){return function(t,r){return ts(t+=e)>Ul&&(t-=Math.round(t/Ql)*Ql),[t,r]}}function Ku(e){var t=Ou(e);return t.invert=Ou(-e),t}function Ju(e,t){var r=is(e),a=us(e),i=is(t),n=us(t);function o(e,t){var o=is(t),c=is(e)*o,l=us(e)*o,s=us(t),u=s*r+c*a;return[as(l*i-u*n,c*r-s*a),fs(u*i+l*n)]}return o.invert=function(e,t){var o=is(t),c=is(e)*o,l=us(e)*o,s=us(t),u=s*i-l*n;return[as(l*i+s*n,c*r+u*a),fs(u*r-c*a)]},o}function Vu(e){function t(t){return(t=e(t[0]*es,t[1]*es))[0]*=Xl,t[1]*=Xl,t}return e=zu(e[0]*es,e[1]*es,e.length>2?e[2]*es:0),t.invert=function(t){return(t=e.invert(t[0]*es,t[1]*es))[0]*=Xl,t[1]*=Xl,t},t}function ju(e,t,r,a,i,n){if(r){var o=is(t),c=us(t),l=a*r;null==i?(i=t+a*Ql,n=t-l/2):(i=Yu(o,i),n=Yu(o,n),(a>0?in)&&(i+=a*Ql));for(var s,u=i;a>0?u>n:u1&&t.push(t.pop().concat(t.shift()))},result:function(){var r=t;return t=[],e=null,r}}}function Uu(e,t){return ts(e[0]-t[0])=0;--n)i.point((u=s[n])[0],u[1]);else a(d.x,d.p.x,-1,i);d=d.p}s=(d=d.o).z,p=!p}while(!d.v);i.lineEnd()}}}function Qu(e){if(t=e.length){for(var t,r,a=0,i=e[0];++a=0?1:-1,M=A*S,T=M>Ul,B=m*w;if(l.add(as(B*A*us(M),g*_+B*is(M))),o+=T?S+A*Ql:S,T^y>=r^x>=r){var L=qs($s(p),$s(v));Xs(L);var E=qs(n,L);Xs(E);var R=(T^S>=0?-1:1)*fs(E[2]);(a>R||a===R&&(L[0]||L[1]))&&(c+=T^S>=0?1:-1)}}return(o<-1e-6||o0){for(h||(i.polygonStart(),h=!0),i.lineStart(),e=0;e1&&2&l&&d.push(d.pop().concat(d.shift())),o.push(d.filter(rh))}return d}}function rh(e){return e.length>1}function ah(e,t){return((e=e.x)[0]<0?e[1]-ql-Yl:ql-e[1])-((t=t.x)[0]<0?t[1]-ql-Yl:ql-t[1])}Fu.invert=Fu;var ih=th((function(){return!0}),(function(e){var t,r=NaN,a=NaN,i=NaN;return{lineStart:function(){e.lineStart(),t=1},point:function(n,o){var c=n>0?Ul:-Ul,l=ts(n-r);ts(l-Ul)0?ql:-ql),e.point(i,a),e.lineEnd(),e.lineStart(),e.point(c,a),e.point(n,a),t=0):i!==c&&l>=Ul&&(ts(r-i)Yl?rs((us(t)*(n=is(a))*us(r)-us(a)*(i=is(t))*us(e))/(i*n*o)):(t+a)/2}(r,a,n,o),e.point(i,a),e.lineEnd(),e.lineStart(),e.point(c,a),t=0),e.point(r=n,a=o),i=c},lineEnd:function(){e.lineEnd(),r=a=NaN},clean:function(){return 2-t}}}),(function(e,t,r,a){var i;if(null==e)i=r*ql,a.point(-Ul,i),a.point(0,i),a.point(Ul,i),a.point(Ul,0),a.point(Ul,-i),a.point(0,-i),a.point(-Ul,-i),a.point(-Ul,0),a.point(-Ul,i);else if(ts(e[0]-t[0])>Yl){var n=e[0]0,i=ts(t)>Yl;function n(e,r){return is(e)*is(r)>t}function o(e,r,a){var i=[1,0,0],n=qs($s(e),$s(r)),o=Us(n,n),c=n[0],l=o-c*c;if(!l)return!a&&e;var s=t*o/l,u=-t*c/l,h=qs(i,n),d=Qs(i,s);Zs(d,Qs(n,u));var p=h,y=Us(d,p),f=Us(p,p),m=y*y-f*(Us(d,d)-1);if(!(m<0)){var g=ds(m),b=Qs(p,(-y-g)/f);if(Zs(b,d),b=Ys(b),!a)return b;var v,x=e[0],k=r[0],w=e[1],C=r[1];k0^b[1]<(ts(b[0]-x)Ul^(x<=b[0]&&b[0]<=k)){var A=Qs(p,(-y+g)/f);return Zs(A,d),[b,Ys(A)]}}}function c(t,r){var i=a?e:Ul-e,n=0;return t<-i?n|=1:t>i&&(n|=2),r<-i?n|=4:r>i&&(n|=8),n}return th(n,(function(e){var t,r,l,s,u;return{lineStart:function(){s=l=!1,u=1},point:function(h,d){var p,y=[h,d],f=n(h,d),m=a?f?0:c(h,d):f?c(h+(h<0?Ul:-Ul),d):0;if(!t&&(s=l=f)&&e.lineStart(),f!==l&&(!(p=o(t,y))||Uu(t,p)||Uu(y,p))&&(y[2]=1),f!==l)u=0,f?(e.lineStart(),p=o(y,t),e.point(p[0],p[1])):(p=o(t,y),e.point(p[0],p[1],2),e.lineEnd()),t=p;else if(i&&t&&a^f){var g;m&r||!(g=o(y,t,!0))||(u=0,a?(e.lineStart(),e.point(g[0][0],g[0][1]),e.point(g[1][0],g[1][1]),e.lineEnd()):(e.point(g[1][0],g[1][1]),e.lineEnd(),e.lineStart(),e.point(g[0][0],g[0][1],3)))}!f||t&&Uu(t,y)||e.point(y[0],y[1]),t=y,l=f,r=m},lineEnd:function(){l&&e.lineEnd(),t=null},clean:function(){return u|(s&&l)<<1}}}),(function(t,a,i,n){ju(n,e,r,i,t,a)}),a?[0,-e]:[-Ul,e-Ul])}var oh,ch,lh,sh,uh=1e9,hh=-uh;function dh(e,t,r,a){function i(i,n){return e<=i&&i<=r&&t<=n&&n<=a}function n(i,n,c,s){var u=0,h=0;if(null==i||(u=o(i,c))!==(h=o(n,c))||l(i,n)<0^c>0)do{s.point(0===u||3===u?e:r,u>1?a:t)}while((u=(u+c+4)%4)!==h);else s.point(n[0],n[1])}function o(a,i){return ts(a[0]-e)0?0:3:ts(a[0]-r)0?2:1:ts(a[1]-t)0?1:0:i>0?3:2}function c(e,t){return l(e.x,t.x)}function l(e,t){var r=o(e,1),a=o(t,1);return r!==a?r-a:0===r?t[1]-e[1]:1===r?e[0]-t[0]:2===r?e[1]-t[1]:t[0]-e[0]}return function(o){var l,s,u,h,d,p,y,f,m,g,b,v=o,x=$u(),k={point:w,lineStart:function(){k.point=C,s&&s.push(u=[]);g=!0,m=!1,y=f=NaN},lineEnd:function(){l&&(C(h,d),p&&m&&x.rejoin(),l.push(x.result()));k.point=w,m&&v.lineEnd()},polygonStart:function(){v=x,l=[],s=[],b=!0},polygonEnd:function(){var t=function(){for(var t=0,r=0,i=s.length;ra&&(d-n)*(a-o)>(p-o)*(e-n)&&++t:p<=a&&(d-n)*(a-o)<(p-o)*(e-n)&&--t;return t}(),r=b&&t,i=(l=ue(l)).length;(r||i)&&(o.polygonStart(),r&&(o.lineStart(),n(null,null,1,o),o.lineEnd()),i&&Zu(l,c,t,n,o),o.polygonEnd());v=o,l=s=u=null}};function w(e,t){i(e,t)&&v.point(e,t)}function C(n,o){var c=i(n,o);if(s&&u.push([n,o]),g)h=n,d=o,p=c,g=!1,c&&(v.lineStart(),v.point(n,o));else if(c&&m)v.point(n,o);else{var l=[y=Math.max(hh,Math.min(uh,y)),f=Math.max(hh,Math.min(uh,f))],x=[n=Math.max(hh,Math.min(uh,n)),o=Math.max(hh,Math.min(uh,o))];!function(e,t,r,a,i,n){var o,c=e[0],l=e[1],s=0,u=1,h=t[0]-c,d=t[1]-l;if(o=r-c,h||!(o>0)){if(o/=h,h<0){if(o0){if(o>u)return;o>s&&(s=o)}if(o=i-c,h||!(o<0)){if(o/=h,h<0){if(o>u)return;o>s&&(s=o)}else if(h>0){if(o0)){if(o/=d,d<0){if(o0){if(o>u)return;o>s&&(s=o)}if(o=n-l,d||!(o<0)){if(o/=d,d<0){if(o>u)return;o>s&&(s=o)}else if(d>0){if(o0&&(e[0]=c+s*h,e[1]=l+s*d),u<1&&(t[0]=c+u*h,t[1]=l+u*d),!0}}}}}(l,x,e,t,r,a)?c&&(v.lineStart(),v.point(n,o),b=!1):(m||(v.lineStart(),v.point(l[0],l[1])),v.point(x[0],x[1]),c||v.lineEnd(),b=!1)}y=n,f=o,m=c}return k}}var ph={sphere:gs,point:gs,lineStart:function(){ph.point=fh,ph.lineEnd=yh},lineEnd:gs,polygonStart:gs,polygonEnd:gs};function yh(){ph.point=ph.lineEnd=gs}function fh(e,t){ch=e*=es,lh=us(t*=es),sh=is(t),ph.point=mh}function mh(e,t){e*=es;var r=us(t*=es),a=is(t),i=ts(e-ch),n=is(i),o=a*us(i),c=sh*r-lh*a*n,l=lh*r+sh*a*n;oh.add(as(ds(o*o+c*c),l)),ch=e,lh=r,sh=a}function gh(e){return oh=new C,Cs(e,ph),+oh}var bh=[null,null],vh={type:"LineString",coordinates:bh};function xh(e,t){return bh[0]=e,bh[1]=t,gh(vh)}var kh={Feature:function(e,t){return Ch(e.geometry,t)},FeatureCollection:function(e,t){for(var r=e.features,a=-1,i=r.length;++a0&&(i=xh(e[n],e[n-1]))>0&&r<=i&&a<=i&&(r+a-i)*(1-Math.pow((r-a)/i,2))<$l*i)return!0;r=a}return!1}function Ah(e,t){return!!eh(e.map(Mh),Th(t))}function Mh(e){return(e=e.map(Th)).pop(),e}function Th(e){return[e[0]*es,e[1]*es]}function Bh(e,t,r){var a=de(e,t-Yl,r).concat(t);return function(e){return a.map((function(t){return[e,t]}))}}function Lh(e,t,r){var a=de(e,t-Yl,r).concat(t);return function(e){return a.map((function(t){return[t,e]}))}}function Eh(){var e,t,r,a,i,n,o,c,l,s,u,h,d=10,p=d,y=90,f=360,m=2.5;function g(){return{type:"MultiLineString",coordinates:b()}}function b(){return de(ns(a/y)*y,r,y).map(u).concat(de(ns(c/f)*f,o,f).map(h)).concat(de(ns(t/d)*d,e,d).filter((function(e){return ts(e%y)>Yl})).map(l)).concat(de(ns(n/p)*p,i,p).filter((function(e){return ts(e%f)>Yl})).map(s))}return g.lines=function(){return b().map((function(e){return{type:"LineString",coordinates:e}}))},g.outline=function(){return{type:"Polygon",coordinates:[u(a).concat(h(o).slice(1),u(r).reverse().slice(1),h(c).reverse().slice(1))]}},g.extent=function(e){return arguments.length?g.extentMajor(e).extentMinor(e):g.extentMinor()},g.extentMajor=function(e){return arguments.length?(a=+e[0][0],r=+e[1][0],c=+e[0][1],o=+e[1][1],a>r&&(e=a,a=r,r=e),c>o&&(e=c,c=o,o=e),g.precision(m)):[[a,c],[r,o]]},g.extentMinor=function(r){return arguments.length?(t=+r[0][0],e=+r[1][0],n=+r[0][1],i=+r[1][1],t>e&&(r=t,t=e,e=r),n>i&&(r=n,n=i,i=r),g.precision(m)):[[t,n],[e,i]]},g.step=function(e){return arguments.length?g.stepMajor(e).stepMinor(e):g.stepMinor()},g.stepMajor=function(e){return arguments.length?(y=+e[0],f=+e[1],g):[y,f]},g.stepMinor=function(e){return arguments.length?(d=+e[0],p=+e[1],g):[d,p]},g.precision=function(d){return arguments.length?(m=+d,l=Bh(n,i,90),s=Lh(t,e,m),u=Bh(c,o,90),h=Lh(a,r,m),g):m},g.extentMajor([[-180,-89.999999],[180,89.999999]]).extentMinor([[-180,-80.000001],[180,80.000001]])}var Rh,Hh,Dh,Ph,Nh=e=>e,Gh=new C,Ih=new C,Wh={point:gs,lineStart:gs,lineEnd:gs,polygonStart:function(){Wh.lineStart=Fh,Wh.lineEnd=Kh},polygonEnd:function(){Wh.lineStart=Wh.lineEnd=Wh.point=gs,Gh.add(ts(Ih)),Ih=new C},result:function(){var e=Gh/2;return Gh=new C,e}};function Fh(){Wh.point=zh}function zh(e,t){Wh.point=Oh,Rh=Dh=e,Hh=Ph=t}function Oh(e,t){Ih.add(Ph*e-Dh*t),Dh=e,Ph=t}function Kh(){Oh(Rh,Hh)}var Jh=1/0,Vh=Jh,jh=-Jh,Yh=jh,$h={point:function(e,t){ejh&&(jh=e);tYh&&(Yh=t)},lineStart:gs,lineEnd:gs,polygonStart:gs,polygonEnd:gs,result:function(){var e=[[Jh,Vh],[jh,Yh]];return jh=Yh=-(Vh=Jh=1/0),e}};var Uh,qh,Zh,Qh,Xh=0,ed=0,td=0,rd=0,ad=0,id=0,nd=0,od=0,cd=0,ld={point:sd,lineStart:ud,lineEnd:pd,polygonStart:function(){ld.lineStart=yd,ld.lineEnd=fd},polygonEnd:function(){ld.point=sd,ld.lineStart=ud,ld.lineEnd=pd},result:function(){var e=cd?[nd/cd,od/cd]:id?[rd/id,ad/id]:td?[Xh/td,ed/td]:[NaN,NaN];return Xh=ed=td=rd=ad=id=nd=od=cd=0,e}};function sd(e,t){Xh+=e,ed+=t,++td}function ud(){ld.point=hd}function hd(e,t){ld.point=dd,sd(Zh=e,Qh=t)}function dd(e,t){var r=e-Zh,a=t-Qh,i=ds(r*r+a*a);rd+=i*(Zh+e)/2,ad+=i*(Qh+t)/2,id+=i,sd(Zh=e,Qh=t)}function pd(){ld.point=sd}function yd(){ld.point=md}function fd(){gd(Uh,qh)}function md(e,t){ld.point=gd,sd(Uh=Zh=e,qh=Qh=t)}function gd(e,t){var r=e-Zh,a=t-Qh,i=ds(r*r+a*a);rd+=i*(Zh+e)/2,ad+=i*(Qh+t)/2,id+=i,nd+=(i=Qh*e-Zh*t)*(Zh+e),od+=i*(Qh+t),cd+=3*i,sd(Zh=e,Qh=t)}function bd(e){this._context=e}bd.prototype={_radius:4.5,pointRadius:function(e){return this._radius=e,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){0===this._line&&this._context.closePath(),this._point=NaN},point:function(e,t){switch(this._point){case 0:this._context.moveTo(e,t),this._point=1;break;case 1:this._context.lineTo(e,t);break;default:this._context.moveTo(e+this._radius,t),this._context.arc(e,t,this._radius,0,Ql)}},result:gs};var vd,xd,kd,wd,Cd,_d=new C,Sd={point:gs,lineStart:function(){Sd.point=Ad},lineEnd:function(){vd&&Md(xd,kd),Sd.point=gs},polygonStart:function(){vd=!0},polygonEnd:function(){vd=null},result:function(){var e=+_d;return _d=new C,e}};function Ad(e,t){Sd.point=Md,xd=wd=e,kd=Cd=t}function Md(e,t){wd-=e,Cd-=t,_d.add(ds(wd*wd+Cd*Cd)),wd=e,Cd=t}let Td,Bd,Ld,Ed;class Rd{constructor(e){this._append=null==e?Hd:function(e){const t=Math.floor(e);if(!(t>=0))throw new RangeError(`invalid digits: ${e}`);if(t>15)return Hd;if(t!==Td){const e=10**t;Td=t,Bd=function(t){let r=1;this._+=t[0];for(const a=t.length;r4*t&&f--){var x=o+d,k=c+p,w=l+y,C=ds(x*x+k*k+w*w),_=fs(w/=C),S=ts(ts(w)-1)t||ts((g*B+b*L)/v-.5)>.3||o*d+c*p+l*y2?e[2]%360*es:0,B()):[m*Xl,g*Xl,b*Xl]},M.angle=function(e){return arguments.length?(v=e%360*es,B()):v*Xl},M.reflectX=function(e){return arguments.length?(x=e?-1:1,B()):x<0},M.reflectY=function(e){return arguments.length?(k=e?-1:1,B()):k<0},M.precision=function(e){return arguments.length?(o=Od(c,A=e*e),L()):ds(A)},M.fitExtent=function(e,t){return Gd(M,e,t)},M.fitSize=function(e,t){return Id(M,e,t)},M.fitWidth=function(e,t){return Wd(M,e,t)},M.fitHeight=function(e,t){return Fd(M,e,t)},function(){return t=e.apply(this,arguments),M.invert=t.invert&&T,B()}}function Yd(e){var t=0,r=Ul/3,a=jd(e),i=a(t,r);return i.parallels=function(e){return arguments.length?a(t=e[0]*es,r=e[1]*es):[t*Xl,r*Xl]},i}function $d(e,t){var r=us(e),a=(r+us(t))/2;if(ts(a)0?t<-ql+Yl&&(t=-ql+Yl):t>ql-Yl&&(t=ql-Yl);var r=i/ss(ap(t),a);return[r*us(a*e),i-r*is(a*e)]}return n.invert=function(e,t){var r=i-t,n=hs(a)*ds(e*e+r*r),o=as(e,ts(r))*hs(r);return r*a<0&&(o-=Ul*hs(e)*hs(r)),[o/a,2*rs(ss(i/n,1/a))-ql]},n}function np(e,t){return[e,t]}function op(e,t){var r=is(e),a=e===t?us(e):(r-is(t))/(t-e),i=r/a+e;if(ts(a)=0;)t+=r[a].value;else t=1;e.value=t}function Cp(e,t){e instanceof Map?(e=[void 0,e],void 0===t&&(t=Sp)):void 0===t&&(t=_p);for(var r,a,i,n,o,c=new Tp(e),l=[c];r=l.pop();)if((i=t(r.data))&&(o=(i=Array.from(i)).length))for(r.children=i,n=o-1;n>=0;--n)l.push(a=i[n]=new Tp(i[n])),a.parent=r,a.depth=r.depth+1;return c.eachBefore(Mp)}function _p(e){return e.children}function Sp(e){return Array.isArray(e)?e[1]:null}function Ap(e){void 0!==e.data.value&&(e.value=e.data.value),e.data=e.data.data}function Mp(e){var t=0;do{e.height=t}while((e=e.parent)&&e.height<++t)}function Tp(e){this.data=e,this.depth=this.height=0,this.parent=null}function Bp(e){return null==e?null:Lp(e)}function Lp(e){if("function"!=typeof e)throw new Error;return e}function Ep(){return 0}function Rp(e){return function(){return e}}dp.invert=function(e,t){for(var r,a=t,i=a*a,n=i*i*i,o=0;o<12&&(n=(i=(a-=r=(a*(cp+lp*i+n*(sp+up*i))-t)/(cp+3*lp*i+n*(7*sp+9*up*i)))*a)*i*i,!(ts(r)<$l));++o);return[hp*e*(cp+3*lp*i+n*(7*sp+9*up*i))/is(a),fs(us(a)/hp)]},pp.invert=Qd(rs),yp.invert=function(e,t){var r,a=t,i=25;do{var n=a*a,o=n*n;a-=r=(a*(1.007226+n*(.015085+o*(.028874*n-.044475-.005916*o)))-t)/(1.007226+n*(.045255+o*(.259866*n-.311325-.005916*11*o)))}while(ts(r)>Yl&&--i>0);return[e/(.8707+(n=a*a)*(n*(n*n*n*(.003971-.001529*n)-.013791)-.131979)),a]},fp.invert=Qd(fs),mp.invert=Qd((function(e){return 2*rs(e)})),gp.invert=function(e,t){return[-t,2*rs(os(e))-ql]},Tp.prototype=Cp.prototype={constructor:Tp,count:function(){return this.eachAfter(wp)},each:function(e,t){let r=-1;for(const a of this)e.call(t,a,++r,this);return this},eachAfter:function(e,t){for(var r,a,i,n=this,o=[n],c=[],l=-1;n=o.pop();)if(c.push(n),r=n.children)for(a=0,i=r.length;a=0;--a)n.push(r[a]);return this},find:function(e,t){let r=-1;for(const a of this)if(e.call(t,a,++r,this))return a},sum:function(e){return this.eachAfter((function(t){for(var r=+e(t.data)||0,a=t.children,i=a&&a.length;--i>=0;)r+=a[i].value;t.value=r}))},sort:function(e){return this.eachBefore((function(t){t.children&&t.children.sort(e)}))},path:function(e){for(var t=this,r=function(e,t){if(e===t)return e;var r=e.ancestors(),a=t.ancestors(),i=null;e=r.pop(),t=a.pop();for(;e===t;)i=e,e=r.pop(),t=a.pop();return i}(t,e),a=[t];t!==r;)t=t.parent,a.push(t);for(var i=a.length;e!==r;)a.splice(i,0,e),e=e.parent;return a},ancestors:function(){for(var e=this,t=[e];e=e.parent;)t.push(e);return t},descendants:function(){return Array.from(this)},leaves:function(){var e=[];return this.eachBefore((function(t){t.children||e.push(t)})),e},links:function(){var e=this,t=[];return e.each((function(r){r!==e&&t.push({source:r.parent,target:r})})),t},copy:function(){return Cp(this).eachBefore(Ap)},[Symbol.iterator]:function*(){var e,t,r,a,i=this,n=[i];do{for(e=n.reverse(),n=[];i=e.pop();)if(yield i,t=i.children)for(r=0,a=t.length;r(e=(1664525*e+1013904223)%Hp)/Hp}function Pp(e,t){for(var r,a,i=0,n=(e=function(e,t){let r,a,i=e.length;for(;i;)a=t()*i--|0,r=e[i],e[i]=e[a],e[a]=r;return e}(Array.from(e),t)).length,o=[];i0&&r*r>a*a+i*i}function Wp(e,t){for(var r=0;r1e-6?(M+Math.sqrt(M*M-4*A*T))/(2*A):T/M);return{x:a+w+C*B,y:i+_+S*B,r:B}}function Kp(e,t,r){var a,i,n,o,c=e.x-t.x,l=e.y-t.y,s=c*c+l*l;s?(i=t.r+r.r,i*=i,o=e.r+r.r,i>(o*=o)?(a=(s+o-i)/(2*s),n=Math.sqrt(Math.max(0,o/s-a*a)),r.x=e.x-a*c-n*l,r.y=e.y-a*l+n*c):(a=(s+i-o)/(2*s),n=Math.sqrt(Math.max(0,i/s-a*a)),r.x=t.x+a*c-n*l,r.y=t.y+a*l+n*c)):(r.x=t.x+r.r,r.y=t.y)}function Jp(e,t){var r=e.r+t.r-1e-6,a=t.x-e.x,i=t.y-e.y;return r>0&&r*r>a*a+i*i}function Vp(e){var t=e._,r=e.next._,a=t.r+r.r,i=(t.x*r.r+r.x*t.r)/a,n=(t.y*r.r+r.y*t.r)/a;return i*i+n*n}function jp(e){this._=e,this.next=null,this.previous=null}function Yp(e,t){if(!(n=(e=function(e){return"object"==typeof e&&"length"in e?e:Array.from(e)}(e)).length))return 0;var r,a,i,n,o,c,l,s,u,h,d;if((r=e[0]).x=0,r.y=0,!(n>1))return r.r;if(a=e[1],r.x=-a.r,a.x=r.r,a.y=0,!(n>2))return r.r+a.r;Kp(a,r,i=e[2]),r=new jp(r),a=new jp(a),i=new jp(i),r.next=i.previous=a,a.next=r.previous=i,i.next=a.previous=r;e:for(l=3;l1&&!oy(e,t););return e.slice(0,t)}function oy(e,t){if("/"===e[t]){let r=0;for(;t>0&&"\\"===e[--t];)++r;if(!(1&r))return!0}return!1}function cy(e,t){return e.parent===t.parent?1:2}function ly(e){var t=e.children;return t?t[0]:e.t}function sy(e){var t=e.children;return t?t[t.length-1]:e.t}function uy(e,t,r){var a=r/(t.i-e.i);t.c-=a,t.s+=r,e.c+=a,t.z+=r,t.m+=r}function hy(e,t,r){return e.a.parent===t.parent?e.a:r}function dy(e,t){this._=e,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=t}function py(){var e=cy,t=1,r=1,a=null;function i(i){var l=function(e){for(var t,r,a,i,n,o=new dy(e,0),c=[o];t=c.pop();)if(a=t._.children)for(t.children=new Array(n=a.length),i=n-1;i>=0;--i)c.push(r=t.children[i]=new dy(a[i],i)),r.parent=t;return(o.parent=new dy(null,0)).children=[o],o}(i);if(l.eachAfter(n),l.parent.m=-l.z,l.eachBefore(o),a)i.eachBefore(c);else{var s=i,u=i,h=i;i.eachBefore((function(e){e.xu.x&&(u=e),e.depth>h.depth&&(h=e)}));var d=s===u?1:e(s,u)/2,p=d-s.x,y=t/(u.x+d+p),f=r/(h.depth||1);i.eachBefore((function(e){e.x=(e.x+p)*y,e.y=e.depth*f}))}return i}function n(t){var r=t.children,a=t.parent.children,i=t.i?a[t.i-1]:null;if(r){!function(e){for(var t,r=0,a=0,i=e.children,n=i.length;--n>=0;)(t=i[n]).z+=r,t.m+=r,r+=t.s+(a+=t.c)}(t);var n=(r[0].z+r[r.length-1].z)/2;i?(t.z=i.z+e(t._,i._),t.m=t.z-n):t.z=n}else i&&(t.z=i.z+e(t._,i._));t.parent.A=function(t,r,a){if(r){for(var i,n=t,o=t,c=r,l=n.parent.children[0],s=n.m,u=o.m,h=c.m,d=l.m;c=sy(c),n=ly(n),c&&n;)l=ly(l),(o=sy(o)).a=t,(i=c.z+h-n.z-s+e(c._,n._))>0&&(uy(hy(c,t,a),t,i),s+=i,u+=i),h+=c.m,s+=n.m,d+=l.m,u+=o.m;c&&!sy(o)&&(o.t=c,o.m+=h-u),n&&!ly(l)&&(l.t=n,l.m+=s-d,a=t)}return a}(t,i,t.parent.A||a[0])}function o(e){e._.x=e.z+e.parent.m,e.m+=e.parent.m}function c(e){e.x*=t,e.y=e.depth*r}return i.separation=function(t){return arguments.length?(e=t,i):e},i.size=function(e){return arguments.length?(a=!1,t=+e[0],r=+e[1],i):a?null:[t,r]},i.nodeSize=function(e){return arguments.length?(a=!0,t=+e[0],r=+e[1],i):a?[t,r]:null},i}function yy(e,t,r,a,i){for(var n,o=e.children,c=-1,l=o.length,s=e.value&&(i-r)/e.value;++cd&&(d=c),m=u*u*f,(p=Math.max(d/m,m/h))>y){u-=c;break}y=p}g.push(o={value:u,dice:l1?t:1)},r}(fy);var by=function e(t){function r(e,r,a,i,n){if((o=e._squarify)&&o.ratio===t)for(var o,c,l,s,u,h=-1,d=o.length,p=e.value;++h1?t:1)},r}(fy);function vy(e,t,r){return(t[0]-e[0])*(r[1]-e[1])-(t[1]-e[1])*(r[0]-e[0])}function xy(e,t){return e[0]-t[0]||e[1]-t[1]}function ky(e){const t=e.length,r=[0,1];let a,i=2;for(a=2;a1&&vy(e[r[i-2]],e[r[i-1]],e[a])<=0;)--i;r[i++]=a}return r.slice(0,i)}var wy=Math.random,Cy=function e(t){function r(e,r){return e=null==e?0:+e,r=null==r?1:+r,1===arguments.length?(r=e,e=0):r-=e,function(){return t()*r+e}}return r.source=e,r}(wy),_y=function e(t){function r(e,r){return arguments.length<2&&(r=e,e=0),e=Math.floor(e),r=Math.floor(r)-e,function(){return Math.floor(t()*r+e)}}return r.source=e,r}(wy),Sy=function e(t){function r(e,r){var a,i;return e=null==e?0:+e,r=null==r?1:+r,function(){var n;if(null!=a)n=a,a=null;else do{a=2*t()-1,n=2*t()-1,i=a*a+n*n}while(!i||i>1);return e+r*n*Math.sqrt(-2*Math.log(i)/i)}}return r.source=e,r}(wy),Ay=function e(t){var r=Sy.source(t);function a(){var e=r.apply(this,arguments);return function(){return Math.exp(e())}}return a.source=e,a}(wy),My=function e(t){function r(e){return(e=+e)<=0?()=>0:function(){for(var r=0,a=e;a>1;--a)r+=t();return r+a*t()}}return r.source=e,r}(wy),Ty=function e(t){var r=My.source(t);function a(e){if(0==(e=+e))return t;var a=r(e);return function(){return a()/e}}return a.source=e,a}(wy),By=function e(t){function r(e){return function(){return-Math.log1p(-t())/e}}return r.source=e,r}(wy),Ly=function e(t){function r(e){if((e=+e)<0)throw new RangeError("invalid alpha");return e=1/-e,function(){return Math.pow(1-t(),e)}}return r.source=e,r}(wy),Ey=function e(t){function r(e){if((e=+e)<0||e>1)throw new RangeError("invalid p");return function(){return Math.floor(t()+e)}}return r.source=e,r}(wy),Ry=function e(t){function r(e){if((e=+e)<0||e>1)throw new RangeError("invalid p");return 0===e?()=>1/0:1===e?()=>1:(e=Math.log1p(-e),function(){return 1+Math.floor(Math.log1p(-t())/e)})}return r.source=e,r}(wy),Hy=function e(t){var r=Sy.source(t)();function a(e,a){if((e=+e)<0)throw new RangeError("invalid k");if(0===e)return()=>0;if(a=null==a?1:+a,1===e)return()=>-Math.log1p(-t())*a;var i=(e<1?e+1:e)-1/3,n=1/(3*Math.sqrt(i)),o=e<1?()=>Math.pow(t(),1/e):()=>1;return function(){do{do{var e=r(),c=1+n*e}while(c<=0);c*=c*c;var l=1-t()}while(l>=1-.0331*e*e*e*e&&Math.log(l)>=.5*e*e+i*(1-c+Math.log(c)));return i*c*o()*a}}return a.source=e,a}(wy),Dy=function e(t){var r=Hy.source(t);function a(e,t){var a=r(e),i=r(t);return function(){var e=a();return 0===e?0:e/(e+i())}}return a.source=e,a}(wy),Py=function e(t){var r=Ry.source(t),a=Dy.source(t);function i(e,t){return e=+e,(t=+t)>=1?()=>e:t<=0?()=>0:function(){for(var i=0,n=e,o=t;n*o>16&&n*(1-o)>16;){var c=Math.floor((n+1)*o),l=a(c,n-c+1)();l<=o?(i+=c,n-=c,o=(o-l)/(1-l)):(n=c-1,o/=l)}for(var s=o<.5,u=r(s?o:1-o),h=u(),d=0;h<=n;++d)h+=u();return i+(s?d:n-d)}}return i.source=e,i}(wy),Ny=function e(t){function r(e,r,a){var i;return 0==(e=+e)?i=e=>-Math.log(e):(e=1/e,i=t=>Math.pow(t,e)),r=null==r?0:+r,a=null==a?1:+a,function(){return r+a*i(-Math.log1p(-t()))}}return r.source=e,r}(wy),Gy=function e(t){function r(e,r){return e=null==e?0:+e,r=null==r?1:+r,function(){return e+r*Math.tan(Math.PI*t())}}return r.source=e,r}(wy),Iy=function e(t){function r(e,r){return e=null==e?0:+e,r=null==r?1:+r,function(){var a=t();return e+r*Math.log(a/(1-a))}}return r.source=e,r}(wy),Wy=function e(t){var r=Hy.source(t),a=Py.source(t);function i(e){return function(){for(var i=0,n=e;n>16;){var o=Math.floor(.875*n),c=r(o)();if(c>n)return i+a(o-1,n/c)();i+=o,n-=c}for(var l=-Math.log1p(-t()),s=0;l<=n;++s)l-=Math.log1p(-t());return i+s}}return i.source=e,i}(wy);const Fy=1/4294967296;function zy(e,t){switch(arguments.length){case 0:break;case 1:this.range(e);break;default:this.range(t).domain(e)}return this}function Oy(e,t){switch(arguments.length){case 0:break;case 1:"function"==typeof e?this.interpolator(e):this.range(e);break;default:this.domain(e),"function"==typeof t?this.interpolator(t):this.range(t)}return this}const Ky=Symbol("implicit");function Jy(){var e=new _,t=[],r=[],a=Ky;function i(i){let n=e.get(i);if(void 0===n){if(a!==Ky)return a;e.set(i,n=t.push(i)-1)}return r[n%r.length]}return i.domain=function(r){if(!arguments.length)return t.slice();t=[],e=new _;for(const a of r)e.has(a)||e.set(a,t.push(a)-1);return i},i.range=function(e){return arguments.length?(r=Array.from(e),i):r.slice()},i.unknown=function(e){return arguments.length?(a=e,i):a},i.copy=function(){return Jy(t,r).unknown(a)},zy.apply(i,arguments),i}function Vy(){var e,t,r=Jy().unknown(void 0),a=r.domain,i=r.range,n=0,o=1,c=!1,l=0,s=0,u=.5;function h(){var r=a().length,h=ot&&(r=e,e=t,t=r),function(r){return Math.max(e,Math.min(t,r))}}(o[0],o[e-1])),a=e>2?Qy:Zy,i=n=null,h}function h(t){return null==t||isNaN(t=+t)?r:(i||(i=a(o.map(e),c,l)))(e(s(t)))}return h.invert=function(r){return s(t((n||(n=a(c,o.map(e),Wa)))(r)))},h.domain=function(e){return arguments.length?(o=Array.from(e,Yy),u()):o.slice()},h.range=function(e){return arguments.length?(c=Array.from(e),u()):c.slice()},h.rangeRound=function(e){return c=Array.from(e),l=Va,u()},h.clamp=function(e){return arguments.length?(s=!!e||Uy,u()):s!==Uy},h.interpolate=function(e){return arguments.length?(l=e,u()):l},h.unknown=function(e){return arguments.length?(r=e,h):r},function(r,a){return e=r,t=a,u()}}function tf(){return ef()(Uy,Uy)}function rf(e,t,r,a){var i,n=q(e,t,r);switch((a=Rl(null==a?",f":a)).type){case"s":var o=Math.max(Math.abs(e),Math.abs(t));return null!=a.precision||isNaN(i=Vl(n,o))||(a.precision=i),Wl(a,o);case"":case"e":case"g":case"p":case"r":null!=a.precision||isNaN(i=jl(n,Math.max(Math.abs(e),Math.abs(t))))||(a.precision=i-("e"===a.type));break;case"f":case"%":null!=a.precision||isNaN(i=Jl(n))||(a.precision=i-2*("%"===a.type))}return Il(a)}function af(e){var t=e.domain;return e.ticks=function(e){var r=t();return $(r[0],r[r.length-1],null==e?10:e)},e.tickFormat=function(e,r){var a=t();return rf(a[0],a[a.length-1],null==e?10:e,r)},e.nice=function(r){null==r&&(r=10);var a,i,n=t(),o=0,c=n.length-1,l=n[o],s=n[c],u=10;for(s0;){if((i=U(l,s,r))===a)return n[o]=l,n[c]=s,t(n);if(i>0)l=Math.floor(l/i)*i,s=Math.ceil(s/i)*i;else{if(!(i<0))break;l=Math.ceil(l*i)/i,s=Math.floor(s*i)/i}a=i}return e},e}function nf(e,t){var r,a=0,i=(e=e.slice()).length-1,n=e[a],o=e[i];return o-e(-t,r)}function df(e){const t=e(of,cf),r=t.domain;let a,i,n=10;function o(){return a=function(e){return e===Math.E?Math.log:10===e&&Math.log10||2===e&&Math.log2||(e=Math.log(e),t=>Math.log(t)/e)}(n),i=function(e){return 10===e?uf:e===Math.E?Math.exp:t=>Math.pow(e,t)}(n),r()[0]<0?(a=hf(a),i=hf(i),e(lf,sf)):e(of,cf),t}return t.base=function(e){return arguments.length?(n=+e,o()):n},t.domain=function(e){return arguments.length?(r(e),o()):r()},t.ticks=e=>{const t=r();let o=t[0],c=t[t.length-1];const l=c0){for(;h<=d;++h)for(s=1;sc)break;y.push(u)}}else for(;h<=d;++h)for(s=n-1;s>=1;--s)if(u=h>0?s/i(-h):s*i(h),!(uc)break;y.push(u)}2*y.length{if(null==e&&(e=10),null==r&&(r=10===n?"s":","),"function"!=typeof r&&(n%1||null!=(r=Rl(r)).precision||(r.trim=!0),r=Il(r)),e===1/0)return r;const o=Math.max(1,n*e/t.ticks().length);return e=>{let t=e/i(Math.round(a(e)));return t*nr(nf(r(),{floor:e=>i(Math.floor(a(e))),ceil:e=>i(Math.ceil(a(e)))})),t}function pf(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function yf(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function ff(e){var t=1,r=e(pf(t),yf(t));return r.constant=function(r){return arguments.length?e(pf(t=+r),yf(t)):t},af(r)}function mf(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}}function gf(e){return e<0?-Math.sqrt(-e):Math.sqrt(e)}function bf(e){return e<0?-e*e:e*e}function vf(e){var t=e(Uy,Uy),r=1;return t.exponent=function(t){return arguments.length?1===(r=+t)?e(Uy,Uy):.5===r?e(gf,bf):e(mf(r),mf(1/r)):r},af(t)}function xf(){var e=vf(ef());return e.copy=function(){return Xy(e,xf()).exponent(e.exponent())},zy.apply(e,arguments),e}function kf(e){return Math.sign(e)*e*e}const wf=new Date,Cf=new Date;function _f(e,t,r,a){function i(t){return e(t=0===arguments.length?new Date:new Date(+t)),t}return i.floor=t=>(e(t=new Date(+t)),t),i.ceil=r=>(e(r=new Date(r-1)),t(r,1),e(r),r),i.round=e=>{const t=i(e),r=i.ceil(e);return e-t(t(e=new Date(+e),null==r?1:Math.floor(r)),e),i.range=(r,a,n)=>{const o=[];if(r=i.ceil(r),n=null==n?1:Math.floor(n),!(r0))return o;let c;do{o.push(c=new Date(+r)),t(r,n),e(r)}while(c_f((t=>{if(t>=t)for(;e(t),!r(t);)t.setTime(t-1)}),((e,a)=>{if(e>=e)if(a<0)for(;++a<=0;)for(;t(e,-1),!r(e););else for(;--a>=0;)for(;t(e,1),!r(e););})),r&&(i.count=(t,a)=>(wf.setTime(+t),Cf.setTime(+a),e(wf),e(Cf),Math.floor(r(wf,Cf))),i.every=e=>(e=Math.floor(e),isFinite(e)&&e>0?e>1?i.filter(a?t=>a(t)%e==0:t=>i.count(0,t)%e==0):i:null)),i}const Sf=_f((()=>{}),((e,t)=>{e.setTime(+e+t)}),((e,t)=>t-e));Sf.every=e=>(e=Math.floor(e),isFinite(e)&&e>0?e>1?_f((t=>{t.setTime(Math.floor(t/e)*e)}),((t,r)=>{t.setTime(+t+r*e)}),((t,r)=>(r-t)/e)):Sf:null);const Af=Sf.range,Mf=1e3,Tf=6e4,Bf=36e5,Lf=864e5,Ef=6048e5,Rf=2592e6,Hf=31536e6,Df=_f((e=>{e.setTime(e-e.getMilliseconds())}),((e,t)=>{e.setTime(+e+t*Mf)}),((e,t)=>(t-e)/Mf),(e=>e.getUTCSeconds())),Pf=Df.range,Nf=_f((e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*Mf)}),((e,t)=>{e.setTime(+e+t*Tf)}),((e,t)=>(t-e)/Tf),(e=>e.getMinutes())),Gf=Nf.range,If=_f((e=>{e.setUTCSeconds(0,0)}),((e,t)=>{e.setTime(+e+t*Tf)}),((e,t)=>(t-e)/Tf),(e=>e.getUTCMinutes())),Wf=If.range,Ff=_f((e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*Mf-e.getMinutes()*Tf)}),((e,t)=>{e.setTime(+e+t*Bf)}),((e,t)=>(t-e)/Bf),(e=>e.getHours())),zf=Ff.range,Of=_f((e=>{e.setUTCMinutes(0,0,0)}),((e,t)=>{e.setTime(+e+t*Bf)}),((e,t)=>(t-e)/Bf),(e=>e.getUTCHours())),Kf=Of.range,Jf=_f((e=>e.setHours(0,0,0,0)),((e,t)=>e.setDate(e.getDate()+t)),((e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*Tf)/Lf),(e=>e.getDate()-1)),Vf=Jf.range,jf=_f((e=>{e.setUTCHours(0,0,0,0)}),((e,t)=>{e.setUTCDate(e.getUTCDate()+t)}),((e,t)=>(t-e)/Lf),(e=>e.getUTCDate()-1)),Yf=jf.range,$f=_f((e=>{e.setUTCHours(0,0,0,0)}),((e,t)=>{e.setUTCDate(e.getUTCDate()+t)}),((e,t)=>(t-e)/Lf),(e=>Math.floor(e/Lf))),Uf=$f.range;function qf(e){return _f((t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)}),((e,t)=>{e.setDate(e.getDate()+7*t)}),((e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*Tf)/Ef))}const Zf=qf(0),Qf=qf(1),Xf=qf(2),em=qf(3),tm=qf(4),rm=qf(5),am=qf(6),im=Zf.range,nm=Qf.range,om=Xf.range,cm=em.range,lm=tm.range,sm=rm.range,um=am.range;function hm(e){return _f((t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)}),((e,t)=>{e.setUTCDate(e.getUTCDate()+7*t)}),((e,t)=>(t-e)/Ef))}const dm=hm(0),pm=hm(1),ym=hm(2),fm=hm(3),mm=hm(4),gm=hm(5),bm=hm(6),vm=dm.range,xm=pm.range,km=ym.range,wm=fm.range,Cm=mm.range,_m=gm.range,Sm=bm.range,Am=_f((e=>{e.setDate(1),e.setHours(0,0,0,0)}),((e,t)=>{e.setMonth(e.getMonth()+t)}),((e,t)=>t.getMonth()-e.getMonth()+12*(t.getFullYear()-e.getFullYear())),(e=>e.getMonth())),Mm=Am.range,Tm=_f((e=>{e.setUTCDate(1),e.setUTCHours(0,0,0,0)}),((e,t)=>{e.setUTCMonth(e.getUTCMonth()+t)}),((e,t)=>t.getUTCMonth()-e.getUTCMonth()+12*(t.getUTCFullYear()-e.getUTCFullYear())),(e=>e.getUTCMonth())),Bm=Tm.range,Lm=_f((e=>{e.setMonth(0,1),e.setHours(0,0,0,0)}),((e,t)=>{e.setFullYear(e.getFullYear()+t)}),((e,t)=>t.getFullYear()-e.getFullYear()),(e=>e.getFullYear()));Lm.every=e=>isFinite(e=Math.floor(e))&&e>0?_f((t=>{t.setFullYear(Math.floor(t.getFullYear()/e)*e),t.setMonth(0,1),t.setHours(0,0,0,0)}),((t,r)=>{t.setFullYear(t.getFullYear()+r*e)})):null;const Em=Lm.range,Rm=_f((e=>{e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)}),((e,t)=>{e.setUTCFullYear(e.getUTCFullYear()+t)}),((e,t)=>t.getUTCFullYear()-e.getUTCFullYear()),(e=>e.getUTCFullYear()));Rm.every=e=>isFinite(e=Math.floor(e))&&e>0?_f((t=>{t.setUTCFullYear(Math.floor(t.getUTCFullYear()/e)*e),t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)}),((t,r)=>{t.setUTCFullYear(t.getUTCFullYear()+r*e)})):null;const Hm=Rm.range;function Dm(e,t,r,i,n,o){const c=[[Df,1,Mf],[Df,5,5e3],[Df,15,15e3],[Df,30,3e4],[o,1,Tf],[o,5,3e5],[o,15,9e5],[o,30,18e5],[n,1,Bf],[n,3,108e5],[n,6,216e5],[n,12,432e5],[i,1,Lf],[i,2,1728e5],[r,1,Ef],[t,1,Rf],[t,3,7776e6],[e,1,Hf]];function l(t,r,i){const n=Math.abs(r-t)/i,o=a((([,,e])=>e)).right(c,n);if(o===c.length)return e.every(q(t/Hf,r/Hf,i));if(0===o)return Sf.every(Math.max(q(t,r,i),1));const[l,s]=c[n/c[o-1][2]=12)]},q:function(e){return 1+~~(e.getMonth()/3)},Q:sb,s:ub,S:Lg,u:Eg,U:Rg,V:Dg,w:Pg,W:Ng,x:null,X:null,y:Gg,Y:Wg,Z:zg,"%":lb},x={a:function(e){return o[e.getUTCDay()]},A:function(e){return n[e.getUTCDay()]},b:function(e){return l[e.getUTCMonth()]},B:function(e){return c[e.getUTCMonth()]},c:null,d:Og,e:Og,f:Yg,g:ib,G:ob,H:Kg,I:Jg,j:Vg,L:jg,m:$g,M:Ug,p:function(e){return i[+(e.getUTCHours()>=12)]},q:function(e){return 1+~~(e.getUTCMonth()/3)},Q:sb,s:ub,S:qg,u:Zg,U:Qg,V:eb,w:tb,W:rb,x:null,X:null,y:ab,Y:nb,Z:cb,"%":lb},k={a:function(e,t,r){var a=p.exec(t.slice(r));return a?(e.w=y.get(a[0].toLowerCase()),r+a[0].length):-1},A:function(e,t,r){var a=h.exec(t.slice(r));return a?(e.w=d.get(a[0].toLowerCase()),r+a[0].length):-1},b:function(e,t,r){var a=g.exec(t.slice(r));return a?(e.m=b.get(a[0].toLowerCase()),r+a[0].length):-1},B:function(e,t,r){var a=f.exec(t.slice(r));return a?(e.m=m.get(a[0].toLowerCase()),r+a[0].length):-1},c:function(e,r,a){return _(e,t,r,a)},d:dg,e:dg,f:bg,g:lg,G:cg,H:yg,I:yg,j:pg,L:gg,m:hg,M:fg,p:function(e,t,r){var a=s.exec(t.slice(r));return a?(e.p=u.get(a[0].toLowerCase()),r+a[0].length):-1},q:ug,Q:xg,s:kg,S:mg,u:ag,U:ig,V:ng,w:rg,W:og,x:function(e,t,a){return _(e,r,t,a)},X:function(e,t,r){return _(e,a,t,r)},y:lg,Y:cg,Z:sg,"%":vg};function w(e,t){return function(r){var a,i,n,o=[],c=-1,l=0,s=e.length;for(r instanceof Date||(r=new Date(+r));++c53)return null;"w"in n||(n.w=1),"Z"in n?(i=(a=Fm(zm(n.y,0,1))).getUTCDay(),a=i>4||0===i?pm.ceil(a):pm(a),a=jf.offset(a,7*(n.V-1)),n.y=a.getUTCFullYear(),n.m=a.getUTCMonth(),n.d=a.getUTCDate()+(n.w+6)%7):(i=(a=Wm(zm(n.y,0,1))).getDay(),a=i>4||0===i?Qf.ceil(a):Qf(a),a=Jf.offset(a,7*(n.V-1)),n.y=a.getFullYear(),n.m=a.getMonth(),n.d=a.getDate()+(n.w+6)%7)}else("W"in n||"U"in n)&&("w"in n||(n.w="u"in n?n.u%7:"W"in n?1:0),i="Z"in n?Fm(zm(n.y,0,1)).getUTCDay():Wm(zm(n.y,0,1)).getDay(),n.m=0,n.d="W"in n?(n.w+6)%7+7*n.W-(i+5)%7:n.w+7*n.U-(i+6)%7);return"Z"in n?(n.H+=n.Z/100|0,n.M+=n.Z%100,Fm(n)):Wm(n)}}function _(e,t,r,a){for(var i,n,o=0,c=t.length,l=r.length;o=l)return-1;if(37===(i=t.charCodeAt(o++))){if(i=t.charAt(o++),!(n=k[i in $m?t.charAt(o++):i])||(a=n(e,r,a))<0)return-1}else if(i!=r.charCodeAt(a++))return-1}return a}return v.x=w(r,v),v.X=w(a,v),v.c=w(t,v),x.x=w(r,x),x.X=w(a,x),x.c=w(t,x),{format:function(e){var t=w(e+="",v);return t.toString=function(){return e},t},parse:function(e){var t=C(e+="",!1);return t.toString=function(){return e},t},utcFormat:function(e){var t=w(e+="",x);return t.toString=function(){return e},t},utcParse:function(e){var t=C(e+="",!0);return t.toString=function(){return e},t}}}var Km,Jm,Vm,jm,Ym,$m={"-":"",_:" ",0:"0"},Um=/^\s*\d+/,qm=/^%/,Zm=/[\\^$*+?|[\]().{}]/g;function Qm(e,t,r){var a=e<0?"-":"",i=(a?-e:e)+"",n=i.length;return a+(n[e.toLowerCase(),t])))}function rg(e,t,r){var a=Um.exec(t.slice(r,r+1));return a?(e.w=+a[0],r+a[0].length):-1}function ag(e,t,r){var a=Um.exec(t.slice(r,r+1));return a?(e.u=+a[0],r+a[0].length):-1}function ig(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.U=+a[0],r+a[0].length):-1}function ng(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.V=+a[0],r+a[0].length):-1}function og(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.W=+a[0],r+a[0].length):-1}function cg(e,t,r){var a=Um.exec(t.slice(r,r+4));return a?(e.y=+a[0],r+a[0].length):-1}function lg(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.y=+a[0]+(+a[0]>68?1900:2e3),r+a[0].length):-1}function sg(e,t,r){var a=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(r,r+6));return a?(e.Z=a[1]?0:-(a[2]+(a[3]||"00")),r+a[0].length):-1}function ug(e,t,r){var a=Um.exec(t.slice(r,r+1));return a?(e.q=3*a[0]-3,r+a[0].length):-1}function hg(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.m=a[0]-1,r+a[0].length):-1}function dg(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.d=+a[0],r+a[0].length):-1}function pg(e,t,r){var a=Um.exec(t.slice(r,r+3));return a?(e.m=0,e.d=+a[0],r+a[0].length):-1}function yg(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.H=+a[0],r+a[0].length):-1}function fg(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.M=+a[0],r+a[0].length):-1}function mg(e,t,r){var a=Um.exec(t.slice(r,r+2));return a?(e.S=+a[0],r+a[0].length):-1}function gg(e,t,r){var a=Um.exec(t.slice(r,r+3));return a?(e.L=+a[0],r+a[0].length):-1}function bg(e,t,r){var a=Um.exec(t.slice(r,r+6));return a?(e.L=Math.floor(a[0]/1e3),r+a[0].length):-1}function vg(e,t,r){var a=qm.exec(t.slice(r,r+1));return a?r+a[0].length:-1}function xg(e,t,r){var a=Um.exec(t.slice(r));return a?(e.Q=+a[0],r+a[0].length):-1}function kg(e,t,r){var a=Um.exec(t.slice(r));return a?(e.s=+a[0],r+a[0].length):-1}function wg(e,t){return Qm(e.getDate(),t,2)}function Cg(e,t){return Qm(e.getHours(),t,2)}function _g(e,t){return Qm(e.getHours()%12||12,t,2)}function Sg(e,t){return Qm(1+Jf.count(Lm(e),e),t,3)}function Ag(e,t){return Qm(e.getMilliseconds(),t,3)}function Mg(e,t){return Ag(e,t)+"000"}function Tg(e,t){return Qm(e.getMonth()+1,t,2)}function Bg(e,t){return Qm(e.getMinutes(),t,2)}function Lg(e,t){return Qm(e.getSeconds(),t,2)}function Eg(e){var t=e.getDay();return 0===t?7:t}function Rg(e,t){return Qm(Zf.count(Lm(e)-1,e),t,2)}function Hg(e){var t=e.getDay();return t>=4||0===t?tm(e):tm.ceil(e)}function Dg(e,t){return e=Hg(e),Qm(tm.count(Lm(e),e)+(4===Lm(e).getDay()),t,2)}function Pg(e){return e.getDay()}function Ng(e,t){return Qm(Qf.count(Lm(e)-1,e),t,2)}function Gg(e,t){return Qm(e.getFullYear()%100,t,2)}function Ig(e,t){return Qm((e=Hg(e)).getFullYear()%100,t,2)}function Wg(e,t){return Qm(e.getFullYear()%1e4,t,4)}function Fg(e,t){var r=e.getDay();return Qm((e=r>=4||0===r?tm(e):tm.ceil(e)).getFullYear()%1e4,t,4)}function zg(e){var t=e.getTimezoneOffset();return(t>0?"-":(t*=-1,"+"))+Qm(t/60|0,"0",2)+Qm(t%60,"0",2)}function Og(e,t){return Qm(e.getUTCDate(),t,2)}function Kg(e,t){return Qm(e.getUTCHours(),t,2)}function Jg(e,t){return Qm(e.getUTCHours()%12||12,t,2)}function Vg(e,t){return Qm(1+jf.count(Rm(e),e),t,3)}function jg(e,t){return Qm(e.getUTCMilliseconds(),t,3)}function Yg(e,t){return jg(e,t)+"000"}function $g(e,t){return Qm(e.getUTCMonth()+1,t,2)}function Ug(e,t){return Qm(e.getUTCMinutes(),t,2)}function qg(e,t){return Qm(e.getUTCSeconds(),t,2)}function Zg(e){var t=e.getUTCDay();return 0===t?7:t}function Qg(e,t){return Qm(dm.count(Rm(e)-1,e),t,2)}function Xg(e){var t=e.getUTCDay();return t>=4||0===t?mm(e):mm.ceil(e)}function eb(e,t){return e=Xg(e),Qm(mm.count(Rm(e),e)+(4===Rm(e).getUTCDay()),t,2)}function tb(e){return e.getUTCDay()}function rb(e,t){return Qm(pm.count(Rm(e)-1,e),t,2)}function ab(e,t){return Qm(e.getUTCFullYear()%100,t,2)}function ib(e,t){return Qm((e=Xg(e)).getUTCFullYear()%100,t,2)}function nb(e,t){return Qm(e.getUTCFullYear()%1e4,t,4)}function ob(e,t){var r=e.getUTCDay();return Qm((e=r>=4||0===r?mm(e):mm.ceil(e)).getUTCFullYear()%1e4,t,4)}function cb(){return"+0000"}function lb(){return"%"}function sb(e){return+e}function ub(e){return Math.floor(+e/1e3)}function hb(e){return Km=Om(e),Jm=Km.format,Vm=Km.parse,jm=Km.utcFormat,Ym=Km.utcParse,Km}hb({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});var db="%Y-%m-%dT%H:%M:%S.%LZ";var pb=Date.prototype.toISOString?function(e){return e.toISOString()}:jm(db);var yb=+new Date("2000-01-01T00:00:00.000Z")?function(e){var t=new Date(e);return isNaN(t)?null:t}:Ym(db);function fb(e){return new Date(e)}function mb(e){return e instanceof Date?+e:+new Date(+e)}function gb(e,t,r,a,i,n,o,c,l,s){var u=tf(),h=u.invert,d=u.domain,p=s(".%L"),y=s(":%S"),f=s("%I:%M"),m=s("%I %p"),g=s("%a %d"),b=s("%b %d"),v=s("%B"),x=s("%Y");function k(e){return(l(e)Ha(e[e.length-1]),Nb=new Array(3).concat("d8b365f5f5f55ab4ac","a6611adfc27d80cdc1018571","a6611adfc27df5f5f580cdc1018571","8c510ad8b365f6e8c3c7eae55ab4ac01665e","8c510ad8b365f6e8c3f5f5f5c7eae55ab4ac01665e","8c510abf812ddfc27df6e8c3c7eae580cdc135978f01665e","8c510abf812ddfc27df6e8c3f5f5f5c7eae580cdc135978f01665e","5430058c510abf812ddfc27df6e8c3c7eae580cdc135978f01665e003c30","5430058c510abf812ddfc27df6e8c3f5f5f5c7eae580cdc135978f01665e003c30").map(Cb),Gb=Pb(Nb),Ib=new Array(3).concat("af8dc3f7f7f77fbf7b","7b3294c2a5cfa6dba0008837","7b3294c2a5cff7f7f7a6dba0008837","762a83af8dc3e7d4e8d9f0d37fbf7b1b7837","762a83af8dc3e7d4e8f7f7f7d9f0d37fbf7b1b7837","762a839970abc2a5cfe7d4e8d9f0d3a6dba05aae611b7837","762a839970abc2a5cfe7d4e8f7f7f7d9f0d3a6dba05aae611b7837","40004b762a839970abc2a5cfe7d4e8d9f0d3a6dba05aae611b783700441b","40004b762a839970abc2a5cfe7d4e8f7f7f7d9f0d3a6dba05aae611b783700441b").map(Cb),Wb=Pb(Ib),Fb=new Array(3).concat("e9a3c9f7f7f7a1d76a","d01c8bf1b6dab8e1864dac26","d01c8bf1b6daf7f7f7b8e1864dac26","c51b7de9a3c9fde0efe6f5d0a1d76a4d9221","c51b7de9a3c9fde0eff7f7f7e6f5d0a1d76a4d9221","c51b7dde77aef1b6dafde0efe6f5d0b8e1867fbc414d9221","c51b7dde77aef1b6dafde0eff7f7f7e6f5d0b8e1867fbc414d9221","8e0152c51b7dde77aef1b6dafde0efe6f5d0b8e1867fbc414d9221276419","8e0152c51b7dde77aef1b6dafde0eff7f7f7e6f5d0b8e1867fbc414d9221276419").map(Cb),zb=Pb(Fb),Ob=new Array(3).concat("998ec3f7f7f7f1a340","5e3c99b2abd2fdb863e66101","5e3c99b2abd2f7f7f7fdb863e66101","542788998ec3d8daebfee0b6f1a340b35806","542788998ec3d8daebf7f7f7fee0b6f1a340b35806","5427888073acb2abd2d8daebfee0b6fdb863e08214b35806","5427888073acb2abd2d8daebf7f7f7fee0b6fdb863e08214b35806","2d004b5427888073acb2abd2d8daebfee0b6fdb863e08214b358067f3b08","2d004b5427888073acb2abd2d8daebf7f7f7fee0b6fdb863e08214b358067f3b08").map(Cb),Kb=Pb(Ob),Jb=new Array(3).concat("ef8a62f7f7f767a9cf","ca0020f4a58292c5de0571b0","ca0020f4a582f7f7f792c5de0571b0","b2182bef8a62fddbc7d1e5f067a9cf2166ac","b2182bef8a62fddbc7f7f7f7d1e5f067a9cf2166ac","b2182bd6604df4a582fddbc7d1e5f092c5de4393c32166ac","b2182bd6604df4a582fddbc7f7f7f7d1e5f092c5de4393c32166ac","67001fb2182bd6604df4a582fddbc7d1e5f092c5de4393c32166ac053061","67001fb2182bd6604df4a582fddbc7f7f7f7d1e5f092c5de4393c32166ac053061").map(Cb),Vb=Pb(Jb),jb=new Array(3).concat("ef8a62ffffff999999","ca0020f4a582bababa404040","ca0020f4a582ffffffbababa404040","b2182bef8a62fddbc7e0e0e09999994d4d4d","b2182bef8a62fddbc7ffffffe0e0e09999994d4d4d","b2182bd6604df4a582fddbc7e0e0e0bababa8787874d4d4d","b2182bd6604df4a582fddbc7ffffffe0e0e0bababa8787874d4d4d","67001fb2182bd6604df4a582fddbc7e0e0e0bababa8787874d4d4d1a1a1a","67001fb2182bd6604df4a582fddbc7ffffffe0e0e0bababa8787874d4d4d1a1a1a").map(Cb),Yb=Pb(jb),$b=new Array(3).concat("fc8d59ffffbf91bfdb","d7191cfdae61abd9e92c7bb6","d7191cfdae61ffffbfabd9e92c7bb6","d73027fc8d59fee090e0f3f891bfdb4575b4","d73027fc8d59fee090ffffbfe0f3f891bfdb4575b4","d73027f46d43fdae61fee090e0f3f8abd9e974add14575b4","d73027f46d43fdae61fee090ffffbfe0f3f8abd9e974add14575b4","a50026d73027f46d43fdae61fee090e0f3f8abd9e974add14575b4313695","a50026d73027f46d43fdae61fee090ffffbfe0f3f8abd9e974add14575b4313695").map(Cb),Ub=Pb($b),qb=new Array(3).concat("fc8d59ffffbf91cf60","d7191cfdae61a6d96a1a9641","d7191cfdae61ffffbfa6d96a1a9641","d73027fc8d59fee08bd9ef8b91cf601a9850","d73027fc8d59fee08bffffbfd9ef8b91cf601a9850","d73027f46d43fdae61fee08bd9ef8ba6d96a66bd631a9850","d73027f46d43fdae61fee08bffffbfd9ef8ba6d96a66bd631a9850","a50026d73027f46d43fdae61fee08bd9ef8ba6d96a66bd631a9850006837","a50026d73027f46d43fdae61fee08bffffbfd9ef8ba6d96a66bd631a9850006837").map(Cb),Zb=Pb(qb),Qb=new Array(3).concat("fc8d59ffffbf99d594","d7191cfdae61abdda42b83ba","d7191cfdae61ffffbfabdda42b83ba","d53e4ffc8d59fee08be6f59899d5943288bd","d53e4ffc8d59fee08bffffbfe6f59899d5943288bd","d53e4ff46d43fdae61fee08be6f598abdda466c2a53288bd","d53e4ff46d43fdae61fee08bffffbfe6f598abdda466c2a53288bd","9e0142d53e4ff46d43fdae61fee08be6f598abdda466c2a53288bd5e4fa2","9e0142d53e4ff46d43fdae61fee08bffffbfe6f598abdda466c2a53288bd5e4fa2").map(Cb),Xb=Pb(Qb),ev=new Array(3).concat("e5f5f999d8c92ca25f","edf8fbb2e2e266c2a4238b45","edf8fbb2e2e266c2a42ca25f006d2c","edf8fbccece699d8c966c2a42ca25f006d2c","edf8fbccece699d8c966c2a441ae76238b45005824","f7fcfde5f5f9ccece699d8c966c2a441ae76238b45005824","f7fcfde5f5f9ccece699d8c966c2a441ae76238b45006d2c00441b").map(Cb),tv=Pb(ev),rv=new Array(3).concat("e0ecf49ebcda8856a7","edf8fbb3cde38c96c688419d","edf8fbb3cde38c96c68856a7810f7c","edf8fbbfd3e69ebcda8c96c68856a7810f7c","edf8fbbfd3e69ebcda8c96c68c6bb188419d6e016b","f7fcfde0ecf4bfd3e69ebcda8c96c68c6bb188419d6e016b","f7fcfde0ecf4bfd3e69ebcda8c96c68c6bb188419d810f7c4d004b").map(Cb),av=Pb(rv),iv=new Array(3).concat("e0f3dba8ddb543a2ca","f0f9e8bae4bc7bccc42b8cbe","f0f9e8bae4bc7bccc443a2ca0868ac","f0f9e8ccebc5a8ddb57bccc443a2ca0868ac","f0f9e8ccebc5a8ddb57bccc44eb3d32b8cbe08589e","f7fcf0e0f3dbccebc5a8ddb57bccc44eb3d32b8cbe08589e","f7fcf0e0f3dbccebc5a8ddb57bccc44eb3d32b8cbe0868ac084081").map(Cb),nv=Pb(iv),ov=new Array(3).concat("fee8c8fdbb84e34a33","fef0d9fdcc8afc8d59d7301f","fef0d9fdcc8afc8d59e34a33b30000","fef0d9fdd49efdbb84fc8d59e34a33b30000","fef0d9fdd49efdbb84fc8d59ef6548d7301f990000","fff7ecfee8c8fdd49efdbb84fc8d59ef6548d7301f990000","fff7ecfee8c8fdd49efdbb84fc8d59ef6548d7301fb300007f0000").map(Cb),cv=Pb(ov),lv=new Array(3).concat("ece2f0a6bddb1c9099","f6eff7bdc9e167a9cf02818a","f6eff7bdc9e167a9cf1c9099016c59","f6eff7d0d1e6a6bddb67a9cf1c9099016c59","f6eff7d0d1e6a6bddb67a9cf3690c002818a016450","fff7fbece2f0d0d1e6a6bddb67a9cf3690c002818a016450","fff7fbece2f0d0d1e6a6bddb67a9cf3690c002818a016c59014636").map(Cb),sv=Pb(lv),uv=new Array(3).concat("ece7f2a6bddb2b8cbe","f1eef6bdc9e174a9cf0570b0","f1eef6bdc9e174a9cf2b8cbe045a8d","f1eef6d0d1e6a6bddb74a9cf2b8cbe045a8d","f1eef6d0d1e6a6bddb74a9cf3690c00570b0034e7b","fff7fbece7f2d0d1e6a6bddb74a9cf3690c00570b0034e7b","fff7fbece7f2d0d1e6a6bddb74a9cf3690c00570b0045a8d023858").map(Cb),hv=Pb(uv),dv=new Array(3).concat("e7e1efc994c7dd1c77","f1eef6d7b5d8df65b0ce1256","f1eef6d7b5d8df65b0dd1c77980043","f1eef6d4b9dac994c7df65b0dd1c77980043","f1eef6d4b9dac994c7df65b0e7298ace125691003f","f7f4f9e7e1efd4b9dac994c7df65b0e7298ace125691003f","f7f4f9e7e1efd4b9dac994c7df65b0e7298ace125698004367001f").map(Cb),pv=Pb(dv),yv=new Array(3).concat("fde0ddfa9fb5c51b8a","feebe2fbb4b9f768a1ae017e","feebe2fbb4b9f768a1c51b8a7a0177","feebe2fcc5c0fa9fb5f768a1c51b8a7a0177","feebe2fcc5c0fa9fb5f768a1dd3497ae017e7a0177","fff7f3fde0ddfcc5c0fa9fb5f768a1dd3497ae017e7a0177","fff7f3fde0ddfcc5c0fa9fb5f768a1dd3497ae017e7a017749006a").map(Cb),fv=Pb(yv),mv=new Array(3).concat("edf8b17fcdbb2c7fb8","ffffcca1dab441b6c4225ea8","ffffcca1dab441b6c42c7fb8253494","ffffccc7e9b47fcdbb41b6c42c7fb8253494","ffffccc7e9b47fcdbb41b6c41d91c0225ea80c2c84","ffffd9edf8b1c7e9b47fcdbb41b6c41d91c0225ea80c2c84","ffffd9edf8b1c7e9b47fcdbb41b6c41d91c0225ea8253494081d58").map(Cb),gv=Pb(mv),bv=new Array(3).concat("f7fcb9addd8e31a354","ffffccc2e69978c679238443","ffffccc2e69978c67931a354006837","ffffccd9f0a3addd8e78c67931a354006837","ffffccd9f0a3addd8e78c67941ab5d238443005a32","ffffe5f7fcb9d9f0a3addd8e78c67941ab5d238443005a32","ffffe5f7fcb9d9f0a3addd8e78c67941ab5d238443006837004529").map(Cb),vv=Pb(bv),xv=new Array(3).concat("fff7bcfec44fd95f0e","ffffd4fed98efe9929cc4c02","ffffd4fed98efe9929d95f0e993404","ffffd4fee391fec44ffe9929d95f0e993404","ffffd4fee391fec44ffe9929ec7014cc4c028c2d04","ffffe5fff7bcfee391fec44ffe9929ec7014cc4c028c2d04","ffffe5fff7bcfee391fec44ffe9929ec7014cc4c02993404662506").map(Cb),kv=Pb(xv),wv=new Array(3).concat("ffeda0feb24cf03b20","ffffb2fecc5cfd8d3ce31a1c","ffffb2fecc5cfd8d3cf03b20bd0026","ffffb2fed976feb24cfd8d3cf03b20bd0026","ffffb2fed976feb24cfd8d3cfc4e2ae31a1cb10026","ffffccffeda0fed976feb24cfd8d3cfc4e2ae31a1cb10026","ffffccffeda0fed976feb24cfd8d3cfc4e2ae31a1cbd0026800026").map(Cb),Cv=Pb(wv),_v=new Array(3).concat("deebf79ecae13182bd","eff3ffbdd7e76baed62171b5","eff3ffbdd7e76baed63182bd08519c","eff3ffc6dbef9ecae16baed63182bd08519c","eff3ffc6dbef9ecae16baed64292c62171b5084594","f7fbffdeebf7c6dbef9ecae16baed64292c62171b5084594","f7fbffdeebf7c6dbef9ecae16baed64292c62171b508519c08306b").map(Cb),Sv=Pb(_v),Av=new Array(3).concat("e5f5e0a1d99b31a354","edf8e9bae4b374c476238b45","edf8e9bae4b374c47631a354006d2c","edf8e9c7e9c0a1d99b74c47631a354006d2c","edf8e9c7e9c0a1d99b74c47641ab5d238b45005a32","f7fcf5e5f5e0c7e9c0a1d99b74c47641ab5d238b45005a32","f7fcf5e5f5e0c7e9c0a1d99b74c47641ab5d238b45006d2c00441b").map(Cb),Mv=Pb(Av),Tv=new Array(3).concat("f0f0f0bdbdbd636363","f7f7f7cccccc969696525252","f7f7f7cccccc969696636363252525","f7f7f7d9d9d9bdbdbd969696636363252525","f7f7f7d9d9d9bdbdbd969696737373525252252525","fffffff0f0f0d9d9d9bdbdbd969696737373525252252525","fffffff0f0f0d9d9d9bdbdbd969696737373525252252525000000").map(Cb),Bv=Pb(Tv),Lv=new Array(3).concat("efedf5bcbddc756bb1","f2f0f7cbc9e29e9ac86a51a3","f2f0f7cbc9e29e9ac8756bb154278f","f2f0f7dadaebbcbddc9e9ac8756bb154278f","f2f0f7dadaebbcbddc9e9ac8807dba6a51a34a1486","fcfbfdefedf5dadaebbcbddc9e9ac8807dba6a51a34a1486","fcfbfdefedf5dadaebbcbddc9e9ac8807dba6a51a354278f3f007d").map(Cb),Ev=Pb(Lv),Rv=new Array(3).concat("fee0d2fc9272de2d26","fee5d9fcae91fb6a4acb181d","fee5d9fcae91fb6a4ade2d26a50f15","fee5d9fcbba1fc9272fb6a4ade2d26a50f15","fee5d9fcbba1fc9272fb6a4aef3b2ccb181d99000d","fff5f0fee0d2fcbba1fc9272fb6a4aef3b2ccb181d99000d","fff5f0fee0d2fcbba1fc9272fb6a4aef3b2ccb181da50f1567000d").map(Cb),Hv=Pb(Rv),Dv=new Array(3).concat("fee6cefdae6be6550d","feeddefdbe85fd8d3cd94701","feeddefdbe85fd8d3ce6550da63603","feeddefdd0a2fdae6bfd8d3ce6550da63603","feeddefdd0a2fdae6bfd8d3cf16913d948018c2d04","fff5ebfee6cefdd0a2fdae6bfd8d3cf16913d948018c2d04","fff5ebfee6cefdd0a2fdae6bfd8d3cf16913d94801a636037f2704").map(Cb),Pv=Pb(Dv);var Nv=si(ka(300,.5,0),ka(-240,.5,1)),Gv=si(ka(-100,.75,.35),ka(80,1.5,.8)),Iv=si(ka(260,.75,.35),ka(80,1.5,.8)),Wv=ka();var Fv=Hr(),zv=Math.PI/3,Ov=2*Math.PI/3;function Kv(e){var t=e.length;return function(r){return e[Math.max(0,Math.min(t-1,Math.floor(r*t)))]}}var Jv=Kv(Cb("44015444025645045745055946075a46085c460a5d460b5e470d60470e6147106347116447136548146748166848176948186a481a6c481b6d481c6e481d6f481f70482071482173482374482475482576482677482878482979472a7a472c7a472d7b472e7c472f7d46307e46327e46337f463480453581453781453882443983443a83443b84433d84433e85423f854240864241864142874144874045884046883f47883f48893e49893e4a893e4c8a3d4d8a3d4e8a3c4f8a3c508b3b518b3b528b3a538b3a548c39558c39568c38588c38598c375a8c375b8d365c8d365d8d355e8d355f8d34608d34618d33628d33638d32648e32658e31668e31678e31688e30698e306a8e2f6b8e2f6c8e2e6d8e2e6e8e2e6f8e2d708e2d718e2c718e2c728e2c738e2b748e2b758e2a768e2a778e2a788e29798e297a8e297b8e287c8e287d8e277e8e277f8e27808e26818e26828e26828e25838e25848e25858e24868e24878e23888e23898e238a8d228b8d228c8d228d8d218e8d218f8d21908d21918c20928c20928c20938c1f948c1f958b1f968b1f978b1f988b1f998a1f9a8a1e9b8a1e9c891e9d891f9e891f9f881fa0881fa1881fa1871fa28720a38620a48621a58521a68522a78522a88423a98324aa8325ab8225ac8226ad8127ad8128ae8029af7f2ab07f2cb17e2db27d2eb37c2fb47c31b57b32b67a34b67935b77937b87838b9773aba763bbb753dbc743fbc7340bd7242be7144bf7046c06f48c16e4ac16d4cc26c4ec36b50c46a52c56954c56856c66758c7655ac8645cc8635ec96260ca6063cb5f65cb5e67cc5c69cd5b6ccd5a6ece5870cf5773d05675d05477d1537ad1517cd2507fd34e81d34d84d44b86d54989d5488bd6468ed64590d74393d74195d84098d83e9bd93c9dd93ba0da39a2da37a5db36a8db34aadc32addc30b0dd2fb2dd2db5de2bb8de29bade28bddf26c0df25c2df23c5e021c8e020cae11fcde11dd0e11cd2e21bd5e21ad8e219dae319dde318dfe318e2e418e5e419e7e419eae51aece51befe51cf1e51df4e61ef6e620f8e621fbe723fde725")),Vv=Kv(Cb("00000401000501010601010802010902020b02020d03030f03031204041405041606051806051a07061c08071e0907200a08220b09240c09260d0a290e0b2b100b2d110c2f120d31130d34140e36150e38160f3b180f3d19103f1a10421c10441d11471e114920114b21114e22115024125325125527125829115a2a115c2c115f2d11612f116331116533106734106936106b38106c390f6e3b0f703d0f713f0f72400f74420f75440f764510774710784910784a10794c117a4e117b4f127b51127c52137c54137d56147d57157e59157e5a167e5c167f5d177f5f187f601880621980641a80651a80671b80681c816a1c816b1d816d1d816e1e81701f81721f817320817521817621817822817922827b23827c23827e24828025828125818326818426818627818827818928818b29818c29818e2a81902a81912b81932b80942c80962c80982d80992d809b2e7f9c2e7f9e2f7fa02f7fa1307ea3307ea5317ea6317da8327daa337dab337cad347cae347bb0357bb2357bb3367ab5367ab73779b83779ba3878bc3978bd3977bf3a77c03a76c23b75c43c75c53c74c73d73c83e73ca3e72cc3f71cd4071cf4070d0416fd2426fd3436ed5446dd6456cd8456cd9466bdb476adc4869de4968df4a68e04c67e24d66e34e65e44f64e55064e75263e85362e95462ea5661eb5760ec5860ed5a5fee5b5eef5d5ef05f5ef1605df2625df2645cf3655cf4675cf4695cf56b5cf66c5cf66e5cf7705cf7725cf8745cf8765cf9785df9795df97b5dfa7d5efa7f5efa815ffb835ffb8560fb8761fc8961fc8a62fc8c63fc8e64fc9065fd9266fd9467fd9668fd9869fd9a6afd9b6bfe9d6cfe9f6dfea16efea36ffea571fea772fea973feaa74feac76feae77feb078feb27afeb47bfeb67cfeb77efeb97ffebb81febd82febf84fec185fec287fec488fec68afec88cfeca8dfecc8ffecd90fecf92fed194fed395fed597fed799fed89afdda9cfddc9efddea0fde0a1fde2a3fde3a5fde5a7fde7a9fde9aafdebacfcecaefceeb0fcf0b2fcf2b4fcf4b6fcf6b8fcf7b9fcf9bbfcfbbdfcfdbf")),jv=Kv(Cb("00000401000501010601010802010a02020c02020e03021004031204031405041706041907051b08051d09061f0a07220b07240c08260d08290e092b10092d110a30120a32140b34150b37160b39180c3c190c3e1b0c411c0c431e0c451f0c48210c4a230c4c240c4f260c51280b53290b552b0b572d0b592f0a5b310a5c320a5e340a5f3609613809623909633b09643d09653e0966400a67420a68440a68450a69470b6a490b6a4a0c6b4c0c6b4d0d6c4f0d6c510e6c520e6d540f6d550f6d57106e59106e5a116e5c126e5d126e5f136e61136e62146e64156e65156e67166e69166e6a176e6c186e6d186e6f196e71196e721a6e741a6e751b6e771c6d781c6d7a1d6d7c1d6d7d1e6d7f1e6c801f6c82206c84206b85216b87216b88226a8a226a8c23698d23698f24699025689225689326679526679727669827669a28659b29649d29649f2a63a02a63a22b62a32c61a52c60a62d60a82e5fa92e5eab2f5ead305dae305cb0315bb1325ab3325ab43359b63458b73557b93556ba3655bc3754bd3853bf3952c03a51c13a50c33b4fc43c4ec63d4dc73e4cc83f4bca404acb4149cc4248ce4347cf4446d04545d24644d34743d44842d54a41d74b3fd84c3ed94d3dda4e3cdb503bdd513ade5238df5337e05536e15635e25734e35933e45a31e55c30e65d2fe75e2ee8602de9612bea632aeb6429eb6628ec6726ed6925ee6a24ef6c23ef6e21f06f20f1711ff1731df2741cf3761bf37819f47918f57b17f57d15f67e14f68013f78212f78410f8850ff8870ef8890cf98b0bf98c0af98e09fa9008fa9207fa9407fb9606fb9706fb9906fb9b06fb9d07fc9f07fca108fca309fca50afca60cfca80dfcaa0ffcac11fcae12fcb014fcb216fcb418fbb61afbb81dfbba1ffbbc21fbbe23fac026fac228fac42afac62df9c72ff9c932f9cb35f8cd37f8cf3af7d13df7d340f6d543f6d746f5d949f5db4cf4dd4ff4df53f4e156f3e35af3e55df2e661f2e865f2ea69f1ec6df1ed71f1ef75f1f179f2f27df2f482f3f586f3f68af4f88ef5f992f6fa96f8fb9af9fc9dfafda1fcffa4")),Yv=Kv(Cb("0d088710078813078916078a19068c1b068d1d068e20068f2206902406912605912805922a05932c05942e05952f059631059733059735049837049938049a3a049a3c049b3e049c3f049c41049d43039e44039e46039f48039f4903a04b03a14c02a14e02a25002a25102a35302a35502a45601a45801a45901a55b01a55c01a65e01a66001a66100a76300a76400a76600a76700a86900a86a00a86c00a86e00a86f00a87100a87201a87401a87501a87701a87801a87a02a87b02a87d03a87e03a88004a88104a78305a78405a78606a68707a68808a68a09a58b0aa58d0ba58e0ca48f0da4910ea3920fa39410a29511a19613a19814a099159f9a169f9c179e9d189d9e199da01a9ca11b9ba21d9aa31e9aa51f99a62098a72197a82296aa2395ab2494ac2694ad2793ae2892b02991b12a90b22b8fb32c8eb42e8db52f8cb6308bb7318ab83289ba3388bb3488bc3587bd3786be3885bf3984c03a83c13b82c23c81c33d80c43e7fc5407ec6417dc7427cc8437bc9447aca457acb4679cc4778cc4977cd4a76ce4b75cf4c74d04d73d14e72d24f71d35171d45270d5536fd5546ed6556dd7566cd8576bd9586ada5a6ada5b69db5c68dc5d67dd5e66de5f65de6164df6263e06363e16462e26561e26660e3685fe4695ee56a5de56b5de66c5ce76e5be76f5ae87059e97158e97257ea7457eb7556eb7655ec7754ed7953ed7a52ee7b51ef7c51ef7e50f07f4ff0804ef1814df1834cf2844bf3854bf3874af48849f48948f58b47f58c46f68d45f68f44f79044f79143f79342f89441f89540f9973ff9983ef99a3efa9b3dfa9c3cfa9e3bfb9f3afba139fba238fca338fca537fca636fca835fca934fdab33fdac33fdae32fdaf31fdb130fdb22ffdb42ffdb52efeb72dfeb82cfeba2cfebb2bfebd2afebe2afec029fdc229fdc328fdc527fdc627fdc827fdca26fdcb26fccd25fcce25fcd025fcd225fbd324fbd524fbd724fad824fada24f9dc24f9dd25f8df25f8e125f7e225f7e425f6e626f6e826f5e926f5eb27f4ed27f3ee27f3f027f2f227f1f426f1f525f0f724f0f921"));function $v(e){return function(){return e}}const Uv=Math.abs,qv=Math.atan2,Zv=Math.cos,Qv=Math.max,Xv=Math.min,ex=Math.sin,tx=Math.sqrt,rx=1e-12,ax=Math.PI,ix=ax/2,nx=2*ax;function ox(e){return e>=1?ix:e<=-1?-ix:Math.asin(e)}function cx(e){let t=3;return e.digits=function(r){if(!arguments.length)return t;if(null==r)t=null;else{const e=Math.floor(r);if(!(e>=0))throw new RangeError(`invalid digits: ${r}`);t=e}return e},()=>new So(t)}function lx(e){return e.innerRadius}function sx(e){return e.outerRadius}function ux(e){return e.startAngle}function hx(e){return e.endAngle}function dx(e){return e&&e.padAngle}function px(e,t,r,a,i,n,o){var c=e-r,l=t-a,s=(o?n:-n)/tx(c*c+l*l),u=s*l,h=-s*c,d=e+u,p=t+h,y=r+u,f=a+h,m=(d+y)/2,g=(p+f)/2,b=y-d,v=f-p,x=b*b+v*v,k=i-n,w=d*f-y*p,C=(v<0?-1:1)*tx(Qv(0,k*k*x-w*w)),_=(w*v-b*C)/x,S=(-w*b-v*C)/x,A=(w*v+b*C)/x,M=(-w*b+v*C)/x,T=_-m,B=S-g,L=A-m,E=M-g;return T*T+B*B>L*L+E*E&&(_=A,S=M),{cx:_,cy:S,x01:-u,y01:-h,x11:_*(i/k-1),y11:S*(i/k-1)}}var yx=Array.prototype.slice;function fx(e){return"object"==typeof e&&"length"in e?e:Array.from(e)}function mx(e){this._context=e}function gx(e){return new mx(e)}function bx(e){return e[0]}function vx(e){return e[1]}function xx(e,t){var r=$v(!0),a=null,i=gx,n=null,o=cx(c);function c(c){var l,s,u,h=(c=fx(c)).length,d=!1;for(null==a&&(n=i(u=o())),l=0;l<=h;++l)!(l=h;--d)c.point(g[d],b[d]);c.lineEnd(),c.areaEnd()}m&&(g[u]=+e(p,u,s),b[u]=+t(p,u,s),c.point(a?+a(p,u,s):g[u],r?+r(p,u,s):b[u]))}if(y)return c=null,y+""||null}function u(){return xx().defined(i).curve(o).context(n)}return e="function"==typeof e?e:void 0===e?bx:$v(+e),t="function"==typeof t?t:$v(void 0===t?0:+t),r="function"==typeof r?r:void 0===r?vx:$v(+r),s.x=function(t){return arguments.length?(e="function"==typeof t?t:$v(+t),a=null,s):e},s.x0=function(t){return arguments.length?(e="function"==typeof t?t:$v(+t),s):e},s.x1=function(e){return arguments.length?(a=null==e?null:"function"==typeof e?e:$v(+e),s):a},s.y=function(e){return arguments.length?(t="function"==typeof e?e:$v(+e),r=null,s):t},s.y0=function(e){return arguments.length?(t="function"==typeof e?e:$v(+e),s):t},s.y1=function(e){return arguments.length?(r=null==e?null:"function"==typeof e?e:$v(+e),s):r},s.lineX0=s.lineY0=function(){return u().x(e).y(t)},s.lineY1=function(){return u().x(e).y(r)},s.lineX1=function(){return u().x(a).y(t)},s.defined=function(e){return arguments.length?(i="function"==typeof e?e:$v(!!e),s):i},s.curve=function(e){return arguments.length?(o=e,null!=n&&(c=o(n)),s):o},s.context=function(e){return arguments.length?(null==e?n=c=null:c=o(n=e),s):n},s}function wx(e,t){return te?1:t>=e?0:NaN}function Cx(e){return e}mx.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._context.lineTo(e,t)}}};var _x=Ax(gx);function Sx(e){this._curve=e}function Ax(e){function t(t){return new Sx(e(t))}return t._curve=e,t}function Mx(e){var t=e.curve;return e.angle=e.x,delete e.x,e.radius=e.y,delete e.y,e.curve=function(e){return arguments.length?t(Ax(e)):t()._curve},e}function Tx(){return Mx(xx().curve(_x))}function Bx(){var e=kx().curve(_x),t=e.curve,r=e.lineX0,a=e.lineX1,i=e.lineY0,n=e.lineY1;return e.angle=e.x,delete e.x,e.startAngle=e.x0,delete e.x0,e.endAngle=e.x1,delete e.x1,e.radius=e.y,delete e.y,e.innerRadius=e.y0,delete e.y0,e.outerRadius=e.y1,delete e.y1,e.lineStartAngle=function(){return Mx(r())},delete e.lineX0,e.lineEndAngle=function(){return Mx(a())},delete e.lineX1,e.lineInnerRadius=function(){return Mx(i())},delete e.lineY0,e.lineOuterRadius=function(){return Mx(n())},delete e.lineY1,e.curve=function(e){return arguments.length?t(Ax(e)):t()._curve},e}function Lx(e,t){return[(t=+t)*Math.cos(e-=Math.PI/2),t*Math.sin(e)]}Sx.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(e,t){this._curve.point(t*Math.sin(e),t*-Math.cos(e))}};class Ex{constructor(e,t){this._context=e,this._x=t}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line}point(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._x?this._context.bezierCurveTo(this._x0=(this._x0+e)/2,this._y0,this._x0,t,e,t):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+t)/2,e,this._y0,e,t)}this._x0=e,this._y0=t}}class Rx{constructor(e){this._context=e}lineStart(){this._point=0}lineEnd(){}point(e,t){if(e=+e,t=+t,0===this._point)this._point=1;else{const r=Lx(this._x0,this._y0),a=Lx(this._x0,this._y0=(this._y0+t)/2),i=Lx(e,this._y0),n=Lx(e,t);this._context.moveTo(...r),this._context.bezierCurveTo(...a,...i,...n)}this._x0=e,this._y0=t}}function Hx(e){return new Ex(e,!0)}function Dx(e){return new Ex(e,!1)}function Px(e){return new Rx(e)}function Nx(e){return e.source}function Gx(e){return e.target}function Ix(e){let t=Nx,r=Gx,a=bx,i=vx,n=null,o=null,c=cx(l);function l(){let l;const s=yx.call(arguments),u=t.apply(this,s),h=r.apply(this,s);if(null==n&&(o=e(l=c())),o.lineStart(),s[0]=u,o.point(+a.apply(this,s),+i.apply(this,s)),s[0]=h,o.point(+a.apply(this,s),+i.apply(this,s)),o.lineEnd(),l)return o=null,l+""||null}return l.source=function(e){return arguments.length?(t=e,l):t},l.target=function(e){return arguments.length?(r=e,l):r},l.x=function(e){return arguments.length?(a="function"==typeof e?e:$v(+e),l):a},l.y=function(e){return arguments.length?(i="function"==typeof e?e:$v(+e),l):i},l.context=function(t){return arguments.length?(null==t?n=o=null:o=e(n=t),l):n},l}function Wx(){const e=Ix(Px);return e.angle=e.x,delete e.x,e.radius=e.y,delete e.y,e}const Fx=tx(3);var zx={draw(e,t){const r=.59436*tx(t+Xv(t/28,.75)),a=r/2,i=a*Fx;e.moveTo(0,r),e.lineTo(0,-r),e.moveTo(-i,-a),e.lineTo(i,a),e.moveTo(-i,a),e.lineTo(i,-a)}},Ox={draw(e,t){const r=tx(t/ax);e.moveTo(r,0),e.arc(0,0,r,0,nx)}},Kx={draw(e,t){const r=tx(t/5)/2;e.moveTo(-3*r,-r),e.lineTo(-r,-r),e.lineTo(-r,-3*r),e.lineTo(r,-3*r),e.lineTo(r,-r),e.lineTo(3*r,-r),e.lineTo(3*r,r),e.lineTo(r,r),e.lineTo(r,3*r),e.lineTo(-r,3*r),e.lineTo(-r,r),e.lineTo(-3*r,r),e.closePath()}};const Jx=tx(1/3),Vx=2*Jx;var jx={draw(e,t){const r=tx(t/Vx),a=r*Jx;e.moveTo(0,-r),e.lineTo(a,0),e.lineTo(0,r),e.lineTo(-a,0),e.closePath()}},Yx={draw(e,t){const r=.62625*tx(t);e.moveTo(0,-r),e.lineTo(r,0),e.lineTo(0,r),e.lineTo(-r,0),e.closePath()}},$x={draw(e,t){const r=.87559*tx(t-Xv(t/7,2));e.moveTo(-r,0),e.lineTo(r,0),e.moveTo(0,r),e.lineTo(0,-r)}},Ux={draw(e,t){const r=tx(t),a=-r/2;e.rect(a,a,r,r)}},qx={draw(e,t){const r=.4431*tx(t);e.moveTo(r,r),e.lineTo(r,-r),e.lineTo(-r,-r),e.lineTo(-r,r),e.closePath()}};const Zx=ex(ax/10)/ex(7*ax/10),Qx=ex(nx/10)*Zx,Xx=-Zv(nx/10)*Zx;var ek={draw(e,t){const r=tx(.8908130915292852*t),a=Qx*r,i=Xx*r;e.moveTo(0,-r),e.lineTo(a,i);for(let t=1;t<5;++t){const n=nx*t/5,o=Zv(n),c=ex(n);e.lineTo(c*r,-o*r),e.lineTo(o*a-c*i,c*a+o*i)}e.closePath()}};const tk=tx(3);var rk={draw(e,t){const r=-tx(t/(3*tk));e.moveTo(0,2*r),e.lineTo(-tk*r,-r),e.lineTo(tk*r,-r),e.closePath()}};const ak=tx(3);var ik={draw(e,t){const r=.6824*tx(t),a=r/2,i=r*ak/2;e.moveTo(0,-r),e.lineTo(i,a),e.lineTo(-i,a),e.closePath()}};const nk=-.5,ok=tx(3)/2,ck=1/tx(12),lk=3*(ck/2+1);var sk={draw(e,t){const r=tx(t/lk),a=r/2,i=r*ck,n=a,o=r*ck+r,c=-n,l=o;e.moveTo(a,i),e.lineTo(n,o),e.lineTo(c,l),e.lineTo(nk*a-ok*i,ok*a+nk*i),e.lineTo(nk*n-ok*o,ok*n+nk*o),e.lineTo(nk*c-ok*l,ok*c+nk*l),e.lineTo(nk*a+ok*i,nk*i-ok*a),e.lineTo(nk*n+ok*o,nk*o-ok*n),e.lineTo(nk*c+ok*l,nk*l-ok*c),e.closePath()}},uk={draw(e,t){const r=.6189*tx(t-Xv(t/6,1.7));e.moveTo(-r,-r),e.lineTo(r,r),e.moveTo(-r,r),e.lineTo(r,-r)}};const hk=[Ox,Kx,jx,Ux,ek,rk,sk],dk=[Ox,$x,uk,ik,zx,qx,Yx];function pk(e,t){let r=null,a=cx(i);function i(){let i;if(r||(r=i=a()),e.apply(this,arguments).draw(r,+t.apply(this,arguments)),i)return r=null,i+""||null}return e="function"==typeof e?e:$v(e||Ox),t="function"==typeof t?t:$v(void 0===t?64:+t),i.type=function(t){return arguments.length?(e="function"==typeof t?t:$v(t),i):e},i.size=function(e){return arguments.length?(t="function"==typeof e?e:$v(+e),i):t},i.context=function(e){return arguments.length?(r=null==e?null:e,i):r},i}function yk(){}function fk(e,t,r){e._context.bezierCurveTo((2*e._x0+e._x1)/3,(2*e._y0+e._y1)/3,(e._x0+2*e._x1)/3,(e._y0+2*e._y1)/3,(e._x0+4*e._x1+t)/6,(e._y0+4*e._y1+r)/6)}function mk(e){this._context=e}function gk(e){this._context=e}function bk(e){return new gk(e)}function vk(e){this._context=e}function xk(e,t){this._basis=new mk(e),this._beta=t}mk.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:fk(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:fk(this,e,t)}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}},gk.prototype={areaStart:yk,areaEnd:yk,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x2,this._y2),this._context.closePath();break;case 2:this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break;case 3:this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4)}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x2=e,this._y2=t;break;case 1:this._point=2,this._x3=e,this._y3=t;break;case 2:this._point=3,this._x4=e,this._y4=t,this._context.moveTo((this._x0+4*this._x1+e)/6,(this._y0+4*this._y1+t)/6);break;default:fk(this,e,t)}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}},vk.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var r=(this._x0+4*this._x1+e)/6,a=(this._y0+4*this._y1+t)/6;this._line?this._context.lineTo(r,a):this._context.moveTo(r,a);break;case 3:this._point=4;default:fk(this,e,t)}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}},xk.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var e=this._x,t=this._y,r=e.length-1;if(r>0)for(var a,i=e[0],n=t[0],o=e[r]-i,c=t[r]-n,l=-1;++l<=r;)a=l/r,this._basis.point(this._beta*e[l]+(1-this._beta)*(i+a*o),this._beta*t[l]+(1-this._beta)*(n+a*c));this._x=this._y=null,this._basis.lineEnd()},point:function(e,t){this._x.push(+e),this._y.push(+t)}};var kk=function e(t){function r(e){return 1===t?new mk(e):new xk(e,t)}return r.beta=function(t){return e(+t)},r}(.85);function wk(e,t,r){e._context.bezierCurveTo(e._x1+e._k*(e._x2-e._x0),e._y1+e._k*(e._y2-e._y0),e._x2+e._k*(e._x1-t),e._y2+e._k*(e._y1-r),e._x2,e._y2)}function Ck(e,t){this._context=e,this._k=(1-t)/6}Ck.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:wk(this,this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2,this._x1=e,this._y1=t;break;case 2:this._point=3;default:wk(this,e,t)}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var _k=function e(t){function r(e){return new Ck(e,t)}return r.tension=function(t){return e(+t)},r}(0);function Sk(e,t){this._context=e,this._k=(1-t)/6}Sk.prototype={areaStart:yk,areaEnd:yk,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x3=e,this._y3=t;break;case 1:this._point=2,this._context.moveTo(this._x4=e,this._y4=t);break;case 2:this._point=3,this._x5=e,this._y5=t;break;default:wk(this,e,t)}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var Ak=function e(t){function r(e){return new Sk(e,t)}return r.tension=function(t){return e(+t)},r}(0);function Mk(e,t){this._context=e,this._k=(1-t)/6}Mk.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:wk(this,e,t)}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var Tk=function e(t){function r(e){return new Mk(e,t)}return r.tension=function(t){return e(+t)},r}(0);function Bk(e,t,r){var a=e._x1,i=e._y1,n=e._x2,o=e._y2;if(e._l01_a>rx){var c=2*e._l01_2a+3*e._l01_a*e._l12_a+e._l12_2a,l=3*e._l01_a*(e._l01_a+e._l12_a);a=(a*c-e._x0*e._l12_2a+e._x2*e._l01_2a)/l,i=(i*c-e._y0*e._l12_2a+e._y2*e._l01_2a)/l}if(e._l23_a>rx){var s=2*e._l23_2a+3*e._l23_a*e._l12_a+e._l12_2a,u=3*e._l23_a*(e._l23_a+e._l12_a);n=(n*s+e._x1*e._l23_2a-t*e._l12_2a)/u,o=(o*s+e._y1*e._l23_2a-r*e._l12_2a)/u}e._context.bezierCurveTo(a,i,n,o,e._x2,e._y2)}function Lk(e,t){this._context=e,this._alpha=t}Lk.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){if(e=+e,t=+t,this._point){var r=this._x2-e,a=this._y2-t;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+a*a,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3;default:Bk(this,e,t)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var Ek=function e(t){function r(e){return t?new Lk(e,t):new Ck(e,0)}return r.alpha=function(t){return e(+t)},r}(.5);function Rk(e,t){this._context=e,this._alpha=t}Rk.prototype={areaStart:yk,areaEnd:yk,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(e,t){if(e=+e,t=+t,this._point){var r=this._x2-e,a=this._y2-t;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+a*a,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=e,this._y3=t;break;case 1:this._point=2,this._context.moveTo(this._x4=e,this._y4=t);break;case 2:this._point=3,this._x5=e,this._y5=t;break;default:Bk(this,e,t)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var Hk=function e(t){function r(e){return t?new Rk(e,t):new Sk(e,0)}return r.alpha=function(t){return e(+t)},r}(.5);function Dk(e,t){this._context=e,this._alpha=t}Dk.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){if(e=+e,t=+t,this._point){var r=this._x2-e,a=this._y2-t;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+a*a,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Bk(this,e,t)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var Pk=function e(t){function r(e){return t?new Dk(e,t):new Mk(e,0)}return r.alpha=function(t){return e(+t)},r}(.5);function Nk(e){this._context=e}function Gk(e){return e<0?-1:1}function Ik(e,t,r){var a=e._x1-e._x0,i=t-e._x1,n=(e._y1-e._y0)/(a||i<0&&-0),o=(r-e._y1)/(i||a<0&&-0),c=(n*i+o*a)/(a+i);return(Gk(n)+Gk(o))*Math.min(Math.abs(n),Math.abs(o),.5*Math.abs(c))||0}function Wk(e,t){var r=e._x1-e._x0;return r?(3*(e._y1-e._y0)/r-t)/2:t}function Fk(e,t,r){var a=e._x0,i=e._y0,n=e._x1,o=e._y1,c=(n-a)/3;e._context.bezierCurveTo(a+c,i+c*t,n-c,o-c*r,n,o)}function zk(e){this._context=e}function Ok(e){this._context=new Kk(e)}function Kk(e){this._context=e}function Jk(e){this._context=e}function Vk(e){var t,r,a=e.length-1,i=new Array(a),n=new Array(a),o=new Array(a);for(i[0]=0,n[0]=2,o[0]=e[0]+2*e[1],t=1;t=0;--t)i[t]=(o[t]-i[t+1])/n[t];for(n[a-1]=(e[a]+i[a-1])/2,t=0;t1)for(var r,a,i,n=1,o=e[t[0]],c=o.length;n=0;)r[t]=t;return r}function Qk(e,t){return e[t]}function Xk(e){const t=[];return t.key=e,t}function ew(e){var t=e.map(tw);return Zk(e).sort((function(e,r){return t[e]-t[r]}))}function tw(e){for(var t,r=-1,a=0,i=e.length,n=-1/0;++rn&&(n=t,a=r);return a}function rw(e){var t=e.map(aw);return Zk(e).sort((function(e,r){return t[e]-t[r]}))}function aw(e){for(var t,r=0,a=-1,i=e.length;++a=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,t),this._context.lineTo(e,t);else{var r=this._x*(1-this._t)+e*this._t;this._context.lineTo(r,this._y),this._context.lineTo(r,t)}}this._x=e,this._y=t}};var iw=e=>()=>e;function nw(e,{sourceEvent:t,target:r,transform:a,dispatch:i}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},transform:{value:a,enumerable:!0,configurable:!0},_:{value:i}})}function ow(e,t,r){this.k=e,this.x=t,this.y=r}ow.prototype={constructor:ow,scale:function(e){return 1===e?this:new ow(this.k*e,this.x,this.y)},translate:function(e,t){return 0===e&0===t?this:new ow(this.k,this.x+this.k*e,this.y+this.k*t)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var cw=new ow(1,0,0);function lw(e){for(;!e.__zoom;)if(!(e=e.parentNode))return cw;return e.__zoom}function sw(e){e.stopImmediatePropagation()}function uw(e){e.preventDefault(),e.stopImmediatePropagation()}function hw(e){return!(e.ctrlKey&&"wheel"!==e.type||e.button)}function dw(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e).hasAttribute("viewBox")?[[(e=e.viewBox.baseVal).x,e.y],[e.x+e.width,e.y+e.height]]:[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]:[[0,0],[e.clientWidth,e.clientHeight]]}function pw(){return this.__zoom||cw}function yw(e){return-e.deltaY*(1===e.deltaMode?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function fw(){return navigator.maxTouchPoints||"ontouchstart"in this}function mw(e,t,r){var a=e.invertX(t[0][0])-r[0][0],i=e.invertX(t[1][0])-r[1][0],n=e.invertY(t[0][1])-r[0][1],o=e.invertY(t[1][1])-r[1][1];return e.translate(i>a?(a+i)/2:Math.min(0,a)||Math.max(0,i),o>n?(n+o)/2:Math.min(0,n)||Math.max(0,o))}function gw(){var e,t,r,a=hw,i=dw,n=mw,o=yw,c=fw,l=[0,1/0],s=[[-1/0,-1/0],[1/0,1/0]],u=250,h=ei,d=Le("start","zoom","end"),p=0,y=10;function f(e){e.property("__zoom",pw).on("wheel.zoom",w,{passive:!1}).on("mousedown.zoom",C).on("dblclick.zoom",_).filter(c).on("touchstart.zoom",S).on("touchmove.zoom",A).on("touchend.zoom touchcancel.zoom",M).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function m(e,t){return(t=Math.max(l[0],Math.min(l[1],t)))===e.k?e:new ow(t,e.x,e.y)}function g(e,t,r){var a=t[0]-r[0]*e.k,i=t[1]-r[1]*e.k;return a===e.x&&i===e.y?e:new ow(e.k,a,i)}function b(e){return[(+e[0][0]+ +e[1][0])/2,(+e[0][1]+ +e[1][1])/2]}function v(e,t,r,a){e.on("start.zoom",(function(){x(this,arguments).event(a).start()})).on("interrupt.zoom end.zoom",(function(){x(this,arguments).event(a).end()})).tween("zoom",(function(){var e=this,n=arguments,o=x(e,n).event(a),c=i.apply(e,n),l=null==r?b(c):"function"==typeof r?r.apply(e,n):r,s=Math.max(c[1][0]-c[0][0],c[1][1]-c[0][1]),u=e.__zoom,d="function"==typeof t?t.apply(e,n):t,p=h(u.invert(l).concat(s/u.k),d.invert(l).concat(s/d.k));return function(e){if(1===e)e=d;else{var t=p(e),r=s/t[2];e=new ow(r,l[0]-t[0]*r,l[1]-t[1]*r)}o.zoom(null,e)}}))}function x(e,t,r){return!r&&e.__zooming||new k(e,t)}function k(e,t){this.that=e,this.args=t,this.active=0,this.sourceEvent=null,this.extent=i.apply(e,t),this.taps=0}function w(e,...t){if(a.apply(this,arguments)){var r=x(this,t).event(e),i=this.__zoom,c=Math.max(l[0],Math.min(l[1],i.k*Math.pow(2,o.apply(this,arguments)))),u=Qt(e);if(r.wheel)r.mouse[0][0]===u[0]&&r.mouse[0][1]===u[1]||(r.mouse[1]=i.invert(r.mouse[0]=u)),clearTimeout(r.wheel);else{if(i.k===c)return;r.mouse=[u,i.invert(u)],Ni(this),r.start()}uw(e),r.wheel=setTimeout((function(){r.wheel=null,r.end()}),150),r.zoom("mouse",n(g(m(i,c),r.mouse[0],r.mouse[1]),r.extent,s))}}function C(e,...t){if(!r&&a.apply(this,arguments)){var i=e.currentTarget,o=x(this,t,!0).event(e),c=jt(e.view).on("mousemove.zoom",(function(e){if(uw(e),!o.moved){var t=e.clientX-u,r=e.clientY-h;o.moved=t*t+r*r>p}o.event(e).zoom("mouse",n(g(o.that.__zoom,o.mouse[0]=Qt(e,i),o.mouse[1]),o.extent,s))}),!0).on("mouseup.zoom",(function(e){c.on("mousemove.zoom mouseup.zoom",null),ir(e.view,o.moved),uw(e),o.event(e).end()}),!0),l=Qt(e,i),u=e.clientX,h=e.clientY;ar(e.view),sw(e),o.mouse=[l,this.__zoom.invert(l)],Ni(this),o.start()}}function _(e,...t){if(a.apply(this,arguments)){var r=this.__zoom,o=Qt(e.changedTouches?e.changedTouches[0]:e,this),c=r.invert(o),l=r.k*(e.shiftKey?.5:2),h=n(g(m(r,l),o,c),i.apply(this,t),s);uw(e),u>0?jt(this).transition().duration(u).call(v,h,o,e):jt(this).call(f.transform,h,o,e)}}function S(r,...i){if(a.apply(this,arguments)){var n,o,c,l,s=r.touches,u=s.length,h=x(this,i,r.changedTouches.length===u).event(r);for(sw(r),o=0;o1&&r.name===t)return new rn([[e]],Nn,t,+a);return null},arc:function(){var e=lx,t=sx,r=$v(0),a=null,i=ux,n=hx,o=dx,c=null,l=cx(s);function s(){var s,u,h=+e.apply(this,arguments),d=+t.apply(this,arguments),p=i.apply(this,arguments)-ix,y=n.apply(this,arguments)-ix,f=Uv(y-p),m=y>p;if(c||(c=s=l()),drx)if(f>nx-rx)c.moveTo(d*Zv(p),d*ex(p)),c.arc(0,0,d,p,y,!m),h>rx&&(c.moveTo(h*Zv(y),h*ex(y)),c.arc(0,0,h,y,p,m));else{var g,b,v=p,x=y,k=p,w=y,C=f,_=f,S=o.apply(this,arguments)/2,A=S>rx&&(a?+a.apply(this,arguments):tx(h*h+d*d)),M=Xv(Uv(d-h)/2,+r.apply(this,arguments)),T=M,B=M;if(A>rx){var L=ox(A/h*ex(S)),E=ox(A/d*ex(S));(C-=2*L)>rx?(k+=L*=m?1:-1,w-=L):(C=0,k=w=(p+y)/2),(_-=2*E)>rx?(v+=E*=m?1:-1,x-=E):(_=0,v=x=(p+y)/2)}var R=d*Zv(v),H=d*ex(v),D=h*Zv(w),P=h*ex(w);if(M>rx){var N,G=d*Zv(x),I=d*ex(x),W=h*Zv(k),F=h*ex(k);if(f1?0:e<-1?ax:Math.acos(e)}((z*K+O*J)/(tx(z*z+O*O)*tx(K*K+J*J)))/2),j=tx(N[0]*N[0]+N[1]*N[1]);T=Xv(M,(h-j)/(V-1)),B=Xv(M,(d-j)/(V+1))}else T=B=0}_>rx?B>rx?(g=px(W,F,R,H,d,B,m),b=px(G,I,D,P,d,B,m),c.moveTo(g.cx+g.x01,g.cy+g.y01),Brx&&C>rx?T>rx?(g=px(D,P,G,I,h,-T,m),b=px(R,H,W,F,h,-T,m),c.lineTo(g.cx+g.x01,g.cy+g.y01),T=0))throw new RangeError("invalid r");let r=e.length;if(!((r=Math.floor(r))>=0))throw new RangeError("invalid length");if(!r||!t)return e;const a=f(t),i=e.slice();return a(e,i,0,r,1),a(i,e,0,r,1),a(e,i,0,r,1),e},blur2:u,blurImage:h,brush:function(){return lo(Zn)},brushSelection:function(e){var t=e.__brush;return t?t.dim.output(t.selection):null},brushX:function(){return lo(Un)},brushY:function(){return lo(qn)},buffer:function(e,t){return fetch(e,t).then(Xc)},chord:function(){return vo(!1,!1)},chordDirected:function(){return vo(!0,!1)},chordTranspose:function(){return vo(!1,!0)},cluster:kp,color:Br,contourDensity:function(){var e=qo,t=Zo,r=Qo,a=960,i=500,n=20,o=2,c=3*n,l=a+2*c>>o,s=i+2*c>>o,h=Wo(20);function d(a){var i=new Float32Array(l*s),h=Math.pow(2,-o),d=-1;for(const n of a){var p=(e(n,++d,a)+c)*h,y=(t(n,d,a)+c)*h,f=+r(n,d,a);if(f&&p>=0&&p=0&&ye*a)))(t).map(((e,t)=>(e.value=+r[t],y(e))))}function y(e){return e.coordinates.forEach(f),e}function f(e){e.forEach(m)}function m(e){e.forEach(g)}function g(e){e[0]=e[0]*Math.pow(2,o)-c,e[1]=e[1]*Math.pow(2,o)-c}function b(){return l=a+2*(c=3*n)>>o,s=i+2*c>>o,p}return p.contours=function(e){var t=d(e),r=Vo().size([l,s]),a=Math.pow(2,2*o),i=e=>{e=+e;var i=y(r.contour(t,e*a));return i.value=e,i};return Object.defineProperty(i,"max",{get:()=>ee(t)/a}),i},p.x=function(t){return arguments.length?(e="function"==typeof t?t:Wo(+t),p):e},p.y=function(e){return arguments.length?(t="function"==typeof e?e:Wo(+e),p):t},p.weight=function(e){return arguments.length?(r="function"==typeof e?e:Wo(+e),p):r},p.size=function(e){if(!arguments.length)return[a,i];var t=+e[0],r=+e[1];if(!(t>=0&&r>=0))throw new Error("invalid size");return a=t,i=r,b()},p.cellSize=function(e){if(!arguments.length)return 1<=1))throw new Error("invalid cell size");return o=Math.floor(Math.log(e)/Math.LN2),b()},p.thresholds=function(e){return arguments.length?(h="function"==typeof e?e:Array.isArray(e)?Wo(Go.call(e)):Wo(e),p):h},p.bandwidth=function(e){if(!arguments.length)return Math.sqrt(n*(n+1));if(!((e=+e)>=0))throw new Error("invalid bandwidth");return n=(Math.sqrt(4*e*e+1)-1)/2,b()},p},contours:Vo,count:m,create:Yt,creator:We,cross:function(...e){const t="function"==typeof e[e.length-1]&&function(e){return t=>e(...t)}(e.pop()),r=(e=e.map(v)).map(g),a=e.length-1,i=new Array(a+1).fill(0),n=[];if(a<0||r.some(b))return n;for(;;){n.push(i.map(((t,r)=>e[r][t])));let o=a;for(;++i[o]===r[o];){if(0===o)return t?n.map(t):n;i[o--]=0}}},csv:al,csvFormat:Ic,csvFormatBody:Wc,csvFormatRow:zc,csvFormatRows:Fc,csvFormatValue:Oc,csvParse:Nc,csvParseRows:Gc,cubehelix:ka,cumsum:function(e,t){var r=0,a=0;return Float64Array.from(e,void 0===t?e=>r+=+e||0:i=>r+=+t(i,a++,e)||0)},curveBasis:function(e){return new mk(e)},curveBasisClosed:bk,curveBasisOpen:function(e){return new vk(e)},curveBumpX:Hx,curveBumpY:Dx,curveBundle:kk,curveCardinal:_k,curveCardinalClosed:Ak,curveCardinalOpen:Tk,curveCatmullRom:Ek,curveCatmullRomClosed:Hk,curveCatmullRomOpen:Pk,curveLinear:gx,curveLinearClosed:function(e){return new Nk(e)},curveMonotoneX:function(e){return new zk(e)},curveMonotoneY:function(e){return new Ok(e)},curveNatural:function(e){return new Jk(e)},curveStep:Yk,curveStepAfter:Uk,curveStepBefore:$k,descending:r,deviation:k,difference:function(e,...t){e=new S(e);for(const r of t)for(const t of r)e.delete(t);return e},disjoint:function(e,t){const r=t[Symbol.iterator](),a=new S;for(const t of e){if(a.has(t))return!1;let e,i;for(;({value:e,done:i}=r.next())&&!i;){if(Object.is(t,e))return!1;a.add(e)}}return!0},dispatch:Le,drag:function(){var e,t,r,a,i=cr,n=lr,o=sr,c=ur,l={},s=Le("start","drag","end"),u=0,h=0;function d(e){e.on("mousedown.drag",p).filter(c).on("touchstart.drag",m).on("touchmove.drag",g,Xt).on("touchend.drag touchcancel.drag",b).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function p(o,c){if(!a&&i.call(this,o,c)){var l=v(this,n.call(this,o,c),o,c,"mouse");l&&(jt(o.view).on("mousemove.drag",y,er).on("mouseup.drag",f,er),ar(o.view),tr(o),r=!1,e=o.clientX,t=o.clientY,l("start",o))}}function y(a){if(rr(a),!r){var i=a.clientX-e,n=a.clientY-t;r=i*i+n*n>h}l.mouse("drag",a)}function f(e){jt(e.view).on("mousemove.drag mouseup.drag",null),ir(e.view,r),rr(e),l.mouse("end",e)}function m(e,t){if(i.call(this,e,t)){var r,a,o=e.changedTouches,c=n.call(this,e,t),l=o.length;for(r=0;r+e,easePoly:hn,easePolyIn:sn,easePolyInOut:hn,easePolyOut:un,easeQuad:cn,easeQuadIn:function(e){return e*e},easeQuadInOut:cn,easeQuadOut:function(e){return e*(2-e)},easeSin:yn,easeSinIn:function(e){return 1==+e?1:1-Math.cos(e*pn)},easeSinInOut:yn,easeSinOut:function(e){return Math.sin(e*pn)},every:function(e,t){if("function"!=typeof t)throw new TypeError("test is not a function");let r=-1;for(const a of e)if(!t(a,++r,e))return!1;return!0},extent:w,fcumsum:function(e,t){const r=new C;let a=-1;return Float64Array.from(e,void 0===t?e=>r.add(+e||0):i=>r.add(+t(i,++a,e)||0))},filter:function(e,t){if("function"!=typeof t)throw new TypeError("test is not a function");const r=[];let a=-1;for(const i of e)t(i,++a,e)&&r.push(i);return r},flatGroup:function(e,...t){return H(R(e,...t),t)},flatRollup:function(e,t,...r){return H(P(e,t,...r),r)},forceCenter:function(e,t){var r,a=1;function i(){var i,n,o=r.length,c=0,l=0;for(i=0;is+y||nu+y||ol.index){var f=s-c.x-c.vx,m=u-c.y-c.vy,g=f*f+m*m;ge.r&&(e.r=e[t].r)}function l(){if(t){var a,i,n=t.length;for(r=new Array(n),a=0;a[c(e,t,a),e])));for(o=0,i=new Array(s);o=c)){(e.data!==t||e.next)&&(0===h&&(y+=(h=vl(r))*h),0===d&&(y+=(d=vl(r))*d),y(e=(1664525*e+1013904223)%_l)/_l}();function h(){d(),s.call("tick",t),r1?(null==r?c.delete(e):c.set(e,y(r)),t):c.get(e)},find:function(t,r,a){var i,n,o,c,l,s=0,u=e.length;for(null==a?a=1/0:a*=a,s=0;s1?(s.on(e,r),t):s.on(e)}}},forceX:function(e){var t,r,a,i=bl(.1);function n(e){for(var i,n=0,o=t.length;n=.12&&i<.234&&a>=-.425&&a<-.214?c:i>=.166&&i<.234&&a>=-.214&&a<-.115?l:o).invert(e)},u.stream=function(r){return e&&t===r?e:e=function(e){var t=e.length;return{point:function(r,a){for(var i=-1;++i_u(a[0],a[1])&&(a[1]=i[1]),_u(i[0],a[1])>_u(a[0],a[1])&&(a[0]=i[0])):n.push(a=i);for(o=-1/0,t=0,a=n[r=n.length-1];t<=r;a=i,++t)i=n[t],(c=_u(a[1],i[0]))>o&&(o=c,Bs=i[0],Es=a[1])}return Is=Ws=null,Bs===1/0||Ls===1/0?[[NaN,NaN],[NaN,NaN]]:[[Bs,Ls],[Es,Rs]]},geoCentroid:function(e){eu=tu=ru=au=iu=nu=ou=cu=0,lu=new C,su=new C,uu=new C,Cs(e,Mu);var t=+lu,r=+su,a=+uu,i=cs(t,r,a);return i<$l&&(t=nu,r=ou,a=cu,tu=0))throw new RangeError(`invalid digits: ${e}`);i=t}return null===t&&(a=new Rd(i)),o},o.projection(e).digits(i).context(t)},geoProjection:Vd,geoProjectionMutator:jd,geoRotation:Vu,geoStereographic:function(){return Vd(mp).scale(250).clipAngle(142)},geoStereographicRaw:mp,geoStream:Cs,geoTransform:function(e){return{stream:Dd(e)}},geoTransverseMercator:function(){var e=rp(gp),t=e.center,r=e.rotate;return e.center=function(e){return arguments.length?t([-e[1],e[0]]):[(e=t())[1],-e[0]]},e.rotate=function(e){return arguments.length?r([e[0],e[1],e.length>2?e[2]+90:90]):[(e=r())[0],e[1],e[2]-90]},r([0,0,90]).scale(159.155)},geoTransverseMercatorRaw:gp,gray:ra,greatest:oe,greatestIndex:function(e,r=t){if(1===r.length)return te(e,r);let a,i=-1,n=-1;for(const t of e)++n,(i<0?0===r(t,t):r(t,a)>0)&&(a=t,i=n);return i},group:E,groupSort:function(e,r,a){return(2!==r.length?W(D(e,r,a),(([e,r],[a,i])=>t(r,i)||t(e,a))):W(E(e,a),(([e,a],[i,n])=>r(a,n)||t(e,i)))).map((([e])=>e))},groups:R,hcl:ua,hierarchy:Cp,histogram:X,hsl:Or,html:ll,image:function(e,t){return new Promise((function(r,a){var i=new Image;for(var n in t)i[n]=t[n];i.onerror=a,i.onload=function(){r(i)},i.src=e}))},index:function(e,...t){return G(e,L,N,t)},indexes:function(e,...t){return G(e,Array.from,N,t)},interpolate:Ja,interpolateArray:function(e,t){return(Na(t)?Pa:Ga)(e,t)},interpolateBasis:_a,interpolateBasisClosed:Sa,interpolateBlues:Sv,interpolateBrBG:Gb,interpolateBuGn:tv,interpolateBuPu:av,interpolateCividis:function(e){return e=Math.max(0,Math.min(1,e)),"rgb("+Math.max(0,Math.min(255,Math.round(-4.54-e*(35.34-e*(2381.73-e*(6402.7-e*(7024.72-2710.57*e)))))))+", "+Math.max(0,Math.min(255,Math.round(32.49+e*(170.73+e*(52.82-e*(131.46-e*(176.58-67.37*e)))))))+", "+Math.max(0,Math.min(255,Math.round(81.24+e*(442.36-e*(2482.43-e*(6167.24-e*(6614.94-2475.67*e)))))))+")"},interpolateCool:Iv,interpolateCubehelix:li,interpolateCubehelixDefault:Nv,interpolateCubehelixLong:si,interpolateDate:Ia,interpolateDiscrete:function(e){var t=e.length;return function(r){return e[Math.max(0,Math.min(t-1,Math.floor(r*t)))]}},interpolateGnBu:nv,interpolateGreens:Mv,interpolateGreys:Bv,interpolateHcl:ni,interpolateHclLong:oi,interpolateHsl:ri,interpolateHslLong:ai,interpolateHue:function(e,t){var r=Ta(+e,+t);return function(e){var t=r(e);return t-360*Math.floor(t/360)}},interpolateInferno:jv,interpolateLab:function(e,t){var r=La((e=aa(e)).l,(t=aa(t)).l),a=La(e.a,t.a),i=La(e.b,t.b),n=La(e.opacity,t.opacity);return function(t){return e.l=r(t),e.a=a(t),e.b=i(t),e.opacity=n(t),e+""}},interpolateMagma:Vv,interpolateNumber:Wa,interpolateNumberArray:Pa,interpolateObject:Fa,interpolateOrRd:cv,interpolateOranges:Pv,interpolatePRGn:Wb,interpolatePiYG:zb,interpolatePlasma:Yv,interpolatePuBu:hv,interpolatePuBuGn:sv,interpolatePuOr:Kb,interpolatePuRd:pv,interpolatePurples:Ev,interpolateRainbow:function(e){(e<0||e>1)&&(e-=Math.floor(e));var t=Math.abs(e-.5);return Wv.h=360*e-100,Wv.s=1.5-1.5*t,Wv.l=.8-.9*t,Wv+""},interpolateRdBu:Vb,interpolateRdGy:Yb,interpolateRdPu:fv,interpolateRdYlBu:Ub,interpolateRdYlGn:Zb,interpolateReds:Hv,interpolateRgb:Ea,interpolateRgbBasis:Ha,interpolateRgbBasisClosed:Da,interpolateRound:Va,interpolateSinebow:function(e){var t;return e=(.5-e)*Math.PI,Fv.r=255*(t=Math.sin(e))*t,Fv.g=255*(t=Math.sin(e+zv))*t,Fv.b=255*(t=Math.sin(e+Ov))*t,Fv+""},interpolateSpectral:Xb,interpolateString:Ka,interpolateTransformCss:Za,interpolateTransformSvg:Qa,interpolateTurbo:function(e){return e=Math.max(0,Math.min(1,e)),"rgb("+Math.max(0,Math.min(255,Math.round(34.61+e*(1172.33-e*(10793.56-e*(33300.12-e*(38394.49-14825.05*e)))))))+", "+Math.max(0,Math.min(255,Math.round(23.31+e*(557.33+e*(1225.33-e*(3574.96-e*(1073.77+707.56*e)))))))+", "+Math.max(0,Math.min(255,Math.round(27.2+e*(3211.1-e*(15327.97-e*(27814-e*(22569.18-6838.66*e)))))))+")"},interpolateViridis:Jv,interpolateWarm:Gv,interpolateYlGn:vv,interpolateYlGnBu:gv,interpolateYlOrBr:kv,interpolateYlOrRd:Cv,interpolateZoom:ei,interrupt:Ni,intersection:function(e,...t){e=new S(e),t=t.map(be);e:for(const r of e)for(const a of t)if(!a.has(r)){e.delete(r);continue e}return e},interval:function(e,t,r){var a=new Ci,i=t;return null==t?(a.restart(e,t,r),a):(a._restart=a.restart,a.restart=function(e,t,r){t=+t,r=null==r?ki():+r,a._restart((function n(o){o+=i,a._restart(n,i+=t,r),e(o)}),t,r)},a.restart(e,t,r),a)},isoFormat:pb,isoParse:yb,json:function(e,t){return fetch(e,t).then(nl)},lab:aa,lch:function(e,t,r,a){return 1===arguments.length?sa(e):new ha(r,t,e,null==a?1:a)},least:function(e,r=t){let a,i=!1;if(1===r.length){let n;for(const o of e){const e=r(o);(i?t(e,n)<0:0===t(e,e))&&(a=o,n=e,i=!0)}}else for(const t of e)(i?r(t,a)<0:0===r(t,t))&&(a=t,i=!0);return a},leastIndex:pe,line:xx,lineRadial:Tx,link:Ix,linkHorizontal:function(){return Ix(Hx)},linkRadial:Wx,linkVertical:function(){return Ix(Dx)},local:Ut,map:function(e,t){if("function"!=typeof e[Symbol.iterator])throw new TypeError("values is not iterable");if("function"!=typeof t)throw new TypeError("mapper is not a function");return Array.from(e,((r,a)=>t(r,a,e)))},matcher:Ve,max:ee,maxIndex:te,mean:function(e,t){let r=0,a=0;if(void 0===t)for(let t of e)null!=t&&(t=+t)>=t&&(++r,a+=t);else{let i=-1;for(let n of e)null!=(n=t(n,++i,e))&&(n=+n)>=n&&(++r,a+=n)}if(r)return a/r},median:function(e,t){return ce(e,.5,t)},medianIndex:function(e,t){return se(e,.5,t)},merge:ue,min:re,minIndex:ae,mode:function(e,t){const r=new _;if(void 0===t)for(let t of e)null!=t&&t>=t&&r.set(t,(r.get(t)||0)+1);else{let a=-1;for(let i of e)null!=(i=t(i,++a,e))&&i>=i&&r.set(i,(r.get(i)||0)+1)}let a,i=0;for(const[e,t]of r)t>i&&(i=t,a=e);return a},namespace:Ne,namespaces:Pe,nice:Z,now:ki,pack:function(){var e=null,t=1,r=1,a=Ep;function i(i){const n=Dp();return i.x=t/2,i.y=r/2,e?i.eachBefore(Up(e)).eachAfter(qp(a,.5,n)).eachBefore(Zp(1)):i.eachBefore(Up($p)).eachAfter(qp(Ep,1,n)).eachAfter(qp(a,i.r/Math.min(t,r),n)).eachBefore(Zp(Math.min(t,r)/(2*i.r))),i}return i.radius=function(t){return arguments.length?(e=Bp(t),i):e},i.size=function(e){return arguments.length?(t=+e[0],r=+e[1],i):[t,r]},i.padding=function(e){return arguments.length?(a="function"==typeof e?e:Rp(+e),i):a},i},packEnclose:function(e){return Pp(e,Dp())},packSiblings:function(e){return Yp(e,Dp()),e},pairs:function(e,t=he){const r=[];let a,i=!1;for(const n of e)i&&r.push(t(a,n)),a=n,i=!0;return r},partition:function(){var e=1,t=1,r=0,a=!1;function i(i){var n=i.height+1;return i.x0=i.y0=r,i.x1=e,i.y1=t/n,i.eachBefore(function(e,t){return function(a){a.children&&Xp(a,a.x0,e*(a.depth+1)/t,a.x1,e*(a.depth+2)/t);var i=a.x0,n=a.y0,o=a.x1-r,c=a.y1-r;o0&&(p+=h);for(null!=t?y.sort((function(e,r){return t(f[e],f[r])})):null!=r&&y.sort((function(e,t){return r(o[e],o[t])})),c=0,s=p?(g-d*v)/p:0;c0?h*s:0)+v,f[l]={data:o[l],index:c,value:h,startAngle:m,endAngle:u,padAngle:b};return f}return o.value=function(t){return arguments.length?(e="function"==typeof t?t:$v(+t),o):e},o.sortValues=function(e){return arguments.length?(t=e,r=null,o):t},o.sort=function(e){return arguments.length?(r=e,t=null,o):r},o.startAngle=function(e){return arguments.length?(a="function"==typeof e?e:$v(+e),o):a},o.endAngle=function(e){return arguments.length?(i="function"==typeof e?e:$v(+e),o):i},o.padAngle=function(e){return arguments.length?(n="function"==typeof e?e:$v(+e),o):n},o},piecewise:ui,pointRadial:Lx,pointer:Qt,pointers:function(e,t){return e.target&&(e=Zt(e),void 0===t&&(t=e.currentTarget),e=e.touches||[e]),Array.from(e,(e=>Qt(e,t)))},polygonArea:function(e){for(var t,r=-1,a=e.length,i=e[a-1],n=0;++rc!=s>c&&o<(l-r)*(c-a)/(s-a)+r&&(u=!u),l=r,s=a;return u},polygonHull:function(e){if((r=e.length)<3)return null;var t,r,a=new Array(r),i=new Array(r);for(t=0;t=0;--t)s.push(e[a[n[t]][2]]);for(t=+c;t(t=1664525*t+1013904223|0,Fy*(t>>>0))},randomLogNormal:Ay,randomLogistic:Iy,randomNormal:Sy,randomPareto:Ly,randomPoisson:Wy,randomUniform:Cy,randomWeibull:Ny,range:de,rank:function(e,r=t){if("function"!=typeof e[Symbol.iterator])throw new TypeError("values is not iterable");let a=Array.from(e);const i=new Float64Array(a.length);2!==r.length&&(a=a.map(r),r=t);const n=(e,t)=>r(a[e],a[t]);let o,c;return e=Uint32Array.from(a,((e,t)=>t)),e.sort(r===t?(e,t)=>z(a[e],a[t]):F(n)),e.forEach(((e,t)=>{const r=n(e,void 0===o?e:o);r>=0?((void 0===o||r>0)&&(o=e,c=t),i[e]=c):i[e]=NaN})),i},reduce:function(e,t,r){if("function"!=typeof t)throw new TypeError("reducer is not a function");const a=e[Symbol.iterator]();let i,n,o=-1;if(arguments.length<3){if(({done:i,value:r}=a.next()),i)return;++o}for(;({done:i,value:n}=a.next()),!i;)r=t(r,n,++o,e);return r},reverse:function(e){if("function"!=typeof e[Symbol.iterator])throw new TypeError("values is not iterable");return Array.from(e).reverse()},rgb:Hr,ribbon:function(){return No()},ribbonArrow:function(){return No(Po)},rollup:D,rollups:P,scaleBand:Vy,scaleDiverging:function e(){var t=af(kb()(Uy));return t.copy=function(){return vb(t,e())},Oy.apply(t,arguments)},scaleDivergingLog:function e(){var t=df(kb()).domain([.1,1,10]);return t.copy=function(){return vb(t,e()).base(t.base())},Oy.apply(t,arguments)},scaleDivergingPow:wb,scaleDivergingSqrt:function(){return wb.apply(null,arguments).exponent(.5)},scaleDivergingSymlog:function e(){var t=ff(kb());return t.copy=function(){return vb(t,e()).constant(t.constant())},Oy.apply(t,arguments)},scaleIdentity:function e(t){var r;function a(e){return null==e||isNaN(e=+e)?r:e}return a.invert=a,a.domain=a.range=function(e){return arguments.length?(t=Array.from(e,Yy),a):t.slice()},a.unknown=function(e){return arguments.length?(r=e,a):r},a.copy=function(){return e(t).unknown(r)},t=arguments.length?Array.from(t,Yy):[0,1],af(a)},scaleImplicit:Ky,scaleLinear:function e(){var t=tf();return t.copy=function(){return Xy(t,e())},zy.apply(t,arguments),af(t)},scaleLog:function e(){const t=df(ef()).domain([1,10]);return t.copy=()=>Xy(t,e()).base(t.base()),zy.apply(t,arguments),t},scaleOrdinal:Jy,scalePoint:function(){return jy(Vy.apply(null,arguments).paddingInner(1))},scalePow:xf,scaleQuantile:function e(){var r,a=[],i=[],n=[];function o(){var e=0,t=Math.max(1,i.length);for(n=new Array(t-1);++e0?n[t-1]:a[0],t=i?[n[i-1],a]:[n[t-1],n[t]]},l.unknown=function(e){return arguments.length?(t=e,l):l},l.thresholds=function(){return n.slice()},l.copy=function(){return e().domain([r,a]).range(o).unknown(t)},zy.apply(af(l),arguments)},scaleRadial:function e(){var t,r=tf(),a=[0,1],i=!1;function n(e){var a=function(e){return Math.sign(e)*Math.sqrt(Math.abs(e))}(r(e));return isNaN(a)?t:i?Math.round(a):a}return n.invert=function(e){return r.invert(kf(e))},n.domain=function(e){return arguments.length?(r.domain(e),n):r.domain()},n.range=function(e){return arguments.length?(r.range((a=Array.from(e,Yy)).map(kf)),n):a.slice()},n.rangeRound=function(e){return n.range(e).round(!0)},n.round=function(e){return arguments.length?(i=!!e,n):i},n.clamp=function(e){return arguments.length?(r.clamp(e),n):r.clamp()},n.unknown=function(e){return arguments.length?(t=e,n):t},n.copy=function(){return e(r.domain(),a).round(i).clamp(r.clamp()).unknown(t)},zy.apply(n,arguments),af(n)},scaleSequential:function e(){var t=af(bb()(Uy));return t.copy=function(){return vb(t,e())},Oy.apply(t,arguments)},scaleSequentialLog:function e(){var t=df(bb()).domain([1,10]);return t.copy=function(){return vb(t,e()).base(t.base())},Oy.apply(t,arguments)},scaleSequentialPow:xb,scaleSequentialQuantile:function e(){var r=[],a=Uy;function i(e){if(null!=e&&!isNaN(e=+e))return a((c(r,e,1)-1)/(r.length-1))}return i.domain=function(e){if(!arguments.length)return r.slice();r=[];for(let t of e)null==t||isNaN(t=+t)||r.push(t);return r.sort(t),i},i.interpolator=function(e){return arguments.length?(a=e,i):a},i.range=function(){return r.map(((e,t)=>a(t/(r.length-1))))},i.quantiles=function(e){return Array.from({length:e+1},((t,a)=>ce(r,a/e)))},i.copy=function(){return e(a).domain(r)},Oy.apply(i,arguments)},scaleSequentialSqrt:function(){return xb.apply(null,arguments).exponent(.5)},scaleSequentialSymlog:function e(){var t=ff(bb());return t.copy=function(){return vb(t,e()).constant(t.constant())},Oy.apply(t,arguments)},scaleSqrt:function(){return xf.apply(null,arguments).exponent(.5)},scaleSymlog:function e(){var t=ff(ef());return t.copy=function(){return Xy(t,e()).constant(t.constant())},zy.apply(t,arguments)},scaleThreshold:function e(){var t,r=[.5],a=[0,1],i=1;function n(e){return null!=e&&e<=e?a[c(r,e,0,i)]:t}return n.domain=function(e){return arguments.length?(r=Array.from(e),i=Math.min(r.length,a.length-1),n):r.slice()},n.range=function(e){return arguments.length?(a=Array.from(e),i=Math.min(r.length,a.length-1),n):a.slice()},n.invertExtent=function(e){var t=a.indexOf(e);return[r[t-1],r[t]]},n.unknown=function(e){return arguments.length?(t=e,n):t},n.copy=function(){return e().domain(r).range(a).unknown(t)},zy.apply(n,arguments)},scaleTime:function(){return zy.apply(gb(Gm,Im,Lm,Am,Zf,Jf,Ff,Nf,Df,Jm).domain([new Date(2e3,0,1),new Date(2e3,0,2)]),arguments)},scaleUtc:function(){return zy.apply(gb(Pm,Nm,Rm,Tm,dm,jf,Of,If,Df,jm).domain([Date.UTC(2e3,0,1),Date.UTC(2e3,0,2)]),arguments)},scan:function(e,t){const r=pe(e,t);return r<0?void 0:r},schemeAccent:Sb,schemeBlues:_v,schemeBrBG:Nb,schemeBuGn:ev,schemeBuPu:rv,schemeCategory10:_b,schemeDark2:Ab,schemeGnBu:iv,schemeGreens:Av,schemeGreys:Tv,schemeObservable10:Mb,schemeOrRd:ov,schemeOranges:Dv,schemePRGn:Ib,schemePaired:Tb,schemePastel1:Bb,schemePastel2:Lb,schemePiYG:Fb,schemePuBu:uv,schemePuBuGn:lv,schemePuOr:Ob,schemePuRd:dv,schemePurples:Lv,schemeRdBu:Jb,schemeRdGy:jb,schemeRdPu:yv,schemeRdYlBu:$b,schemeRdYlGn:qb,schemeReds:Rv,schemeSet1:Eb,schemeSet2:Rb,schemeSet3:Hb,schemeSpectral:Qb,schemeTableau10:Db,schemeYlGn:bv,schemeYlGnBu:mv,schemeYlOrBr:xv,schemeYlOrRd:wv,select:jt,selectAll:function(e){return"string"==typeof e?new Jt([document.querySelectorAll(e)],[document.documentElement]):new Jt([Oe(e)],Kt)},selection:Vt,selector:ze,selectorAll:Je,shuffle:ye,shuffler:fe,some:function(e,t){if("function"!=typeof t)throw new TypeError("test is not a function");let r=-1;for(const a of e)if(t(a,++r,e))return!0;return!1},sort:W,stack:function(){var e=$v([]),t=Zk,r=qk,a=Qk;function i(i){var n,o,c=Array.from(e.apply(this,arguments),Xk),l=c.length,s=-1;for(const e of i)for(n=0,++s;n0)for(var r,a,i,n,o,c,l=0,s=e[t[0]].length;l0?(a[0]=n,a[1]=n+=i):i<0?(a[1]=o,a[0]=o+=i):(a[0]=0,a[1]=i)},stackOffsetExpand:function(e,t){if((a=e.length)>0){for(var r,a,i,n=0,o=e[0].length;n0){for(var r,a=0,i=e[t[0]],n=i.length;a0&&(a=(r=e[t[0]]).length)>0){for(var r,a,i,n=0,o=1;ofunction(e){e=`${e}`;let t=e.length;oy(e,t-1)&&!oy(e,t-2)&&(e=e.slice(0,-1));return"/"===e[0]?e:`/${e}`}(e(t,r,a)))),r=t.map(ny),i=new Set(t).add("");for(const e of r)i.has(e)||(i.add(e),t.push(e),r.push(ny(e)),d.push(ry));p=(e,r)=>t[r],y=(e,t)=>r[t]}for(o=0,i=d.length;o=0&&(s=d[e]).data===ry;--e)s.data=null}if(c.parent=ey,c.eachBefore((function(e){e.depth=e.parent.depth+1,--i})).eachBefore(Mp),c.parent=null,i>0)throw new Error("cycle");return c}return a.id=function(e){return arguments.length?(t=Bp(e),a):t},a.parentId=function(e){return arguments.length?(r=Bp(e),a):r},a.path=function(t){return arguments.length?(e=Bp(t),a):e},a},style:yt,subset:function(e,t){return ve(t,e)},sum:function(e,t){let r=0;if(void 0===t)for(let t of e)(t=+t)&&(r+=t);else{let a=-1;for(let i of e)(i=+t(i,++a,e))&&(r+=i)}return r},superset:ve,svg:sl,symbol:pk,symbolAsterisk:zx,symbolCircle:Ox,symbolCross:Kx,symbolDiamond:jx,symbolDiamond2:Yx,symbolPlus:$x,symbolSquare:Ux,symbolSquare2:qx,symbolStar:ek,symbolTimes:uk,symbolTriangle:rk,symbolTriangle2:ik,symbolWye:sk,symbolX:uk,symbols:hk,symbolsFill:hk,symbolsStroke:dk,text:tl,thresholdFreedmanDiaconis:function(e,t,r){const a=m(e),i=ce(e,.75)-ce(e,.25);return a&&i?Math.ceil((r-t)/(2*i*Math.pow(a,-1/3))):1},thresholdScott:function(e,t,r){const a=m(e),i=k(e);return a&&i?Math.ceil((r-t)*Math.cbrt(a)/(3.49*i)):1},thresholdSturges:Q,tickFormat:rf,tickIncrement:U,tickStep:q,ticks:$,timeDay:Jf,timeDays:Vf,get timeFormat(){return Jm},timeFormatDefaultLocale:hb,timeFormatLocale:Om,timeFriday:rm,timeFridays:sm,timeHour:Ff,timeHours:zf,timeInterval:_f,timeMillisecond:Sf,timeMilliseconds:Af,timeMinute:Nf,timeMinutes:Gf,timeMonday:Qf,timeMondays:nm,timeMonth:Am,timeMonths:Mm,get timeParse(){return Vm},timeSaturday:am,timeSaturdays:um,timeSecond:Df,timeSeconds:Pf,timeSunday:Zf,timeSundays:im,timeThursday:tm,timeThursdays:lm,timeTickInterval:Im,timeTicks:Gm,timeTuesday:Xf,timeTuesdays:om,timeWednesday:em,timeWednesdays:cm,timeWeek:Zf,timeWeeks:im,timeYear:Lm,timeYears:Em,timeout:Bi,timer:_i,timerFlush:Si,transition:an,transpose:me,tree:py,treemap:function(){var e=gy,t=!1,r=1,a=1,i=[0],n=Ep,o=Ep,c=Ep,l=Ep,s=Ep;function u(e){return e.x0=e.y0=0,e.x1=r,e.y1=a,e.eachBefore(h),i=[0],t&&e.eachBefore(Qp),e}function h(t){var r=i[t.depth],a=t.x0+r,u=t.y0+r,h=t.x1-r,d=t.y1-r;h=r-1){var u=c[t];return u.x0=i,u.y0=n,u.x1=o,void(u.y1=l)}var h=s[t],d=a/2+h,p=t+1,y=r-1;for(;p>>1;s[f]l-n){var b=a?(i*g+o*m)/a:o;e(t,p,m,i,n,b,l),e(p,r,g,b,n,o,l)}else{var v=a?(n*g+l*m)/a:l;e(t,p,m,i,n,o,v),e(p,r,g,i,v,o,l)}}(0,l,e.value,t,r,a,i)},treemapDice:Xp,treemapResquarify:by,treemapSlice:yy,treemapSliceDice:function(e,t,r,a,i){(1&e.depth?yy:Xp)(e,t,r,a,i)},treemapSquarify:gy,tsv:il,tsvFormat:jc,tsvFormatBody:Yc,tsvFormatRow:Uc,tsvFormatRows:$c,tsvFormatValue:qc,tsvParse:Jc,tsvParseRows:Vc,union:function(...e){const t=new S;for(const r of e)for(const e of r)t.add(e);return t},unixDay:$f,unixDays:Uf,utcDay:jf,utcDays:Yf,get utcFormat(){return jm},utcFriday:gm,utcFridays:_m,utcHour:Of,utcHours:Kf,utcMillisecond:Sf,utcMilliseconds:Af,utcMinute:If,utcMinutes:Wf,utcMonday:pm,utcMondays:xm,utcMonth:Tm,utcMonths:Bm,get utcParse(){return Ym},utcSaturday:bm,utcSaturdays:Sm,utcSecond:Df,utcSeconds:Pf,utcSunday:dm,utcSundays:vm,utcThursday:mm,utcThursdays:Cm,utcTickInterval:Nm,utcTicks:Pm,utcTuesday:ym,utcTuesdays:km,utcWednesday:fm,utcWednesdays:wm,utcWeek:dm,utcWeeks:vm,utcYear:Rm,utcYears:Hm,variance:x,window:ut,xml:cl,zip:function(){return me(arguments)},zoom:gw,zoomIdentity:cw,zoomTransform:lw});class vw extends HTMLElement{align="auto";main_svg=null;tree_data={};static observeAttributes=["backgroundPattern","backgroundSize","customBackground"];backgroundPattern=null;backgroundSize=void 0;customBackground=void 0;backgroundPosition="center";constructor(){super()}connectedCallback(){this.className="ts-root-wrapper-element tree-spider",this.backgroundPattern=this.getAttribute("backgroundPattern")||"default",this.backgroundSize=this.getAttribute("backgroundSize"),this.backgroundSize="undefined"==this.backgroundSize?void 0:this.backgroundSize,this.customBackground=this.getAttribute("customBackground"),this.customBackground="undefined"==this.customBackground?void 0:this.customBackground,this.backgroundPosition=this.getAttribute("backgroundPosition"),this.backgroundPosition="undefined"==this.backgroundPosition?void 0:this.backgroundPosition,this.setCanvasBg()}setCanvasBg(){const e={default:()=>this.defaultDotsPatternBg(),flux:()=>this.fluxPatternBg(),quad:()=>this.quadPatternBg(),blurry:()=>this.blurryBg(),chaos:()=>this.chaosPatternBg(),flurry:()=>this.flurryPatternBg(),spiral:()=>this.spiralPatternBg(),whirling:()=>this.whirlingPatternBg(),replicate:()=>this.replicatePatternBg(),scribble:()=>this.scribblePatternBg(),squiggly:()=>this.squigglyPatternBg(),gyrrate:()=>this.gyrratePatternBg(),leaves:()=>this.leavesPatternBg(),spot:()=>this.spotPatternBg()};if("none"==this.backgroundPattern)return;const t=this.customBackground||e[this.backgroundPattern]();let r;r="object"==typeof t?(new XMLSerializer).serializeToString(t.node()):t;const a=encodeURIComponent(r).replace(/\(/g,"%28").replace(/\)/g,"%29");null!=this.backgroundSize&&(this.style.backgroundSize=this.backgroundSize||"40%"),null!=this.backgroundPosition&&(this.style.backgroundPosition=this.backgroundPosition||"center");const i="data:image/svg+xml;charset=utf-8,"+a;this.style.setProperty("--ts-root-el-bg-image","url("+i+")")}defaultDotsPatternBg(){const e=Yt("svg").attr("width","20").attr("height","20");return e.append("rect").attr("width","20").attr("height","20").attr("fill","transparent"),e.append("circle").attr("cx","10").attr("cy","10").attr("r","1").attr("fill","rgb(150,150,150)"),this.style.backgroundSize=this.backgroundSize||"2%",e}fluxPatternBg(){return this.style.backgroundSize=this.backgroundSize||"20%",e.flux}quadPatternBg(){return this.style.backgroundSize=this.backgroundSize||"20%",e.quad}blurryBg(){return this.style.backgroundSize="20%",this.style.backgroundPosition=this.backgroundPosition||"center",e.blurry}chaosPatternBg(){return this.style.backgroundSize=this.backgroundSize||"50%",this.style.backgroundPosition=this.backgroundPosition||"center",e.chaos}spiralPatternBg(){return this.style.backgroundSize=this.backgroundSize||"100%",this.style.backgroundPosition=this.backgroundPosition||"center",e.spiral}flurryPatternBg(){return this.style.backgroundSize=this.backgroundSize||"30%",this.style.backgroundPosition=this.backgroundPosition||"center",e.flurry}whirlingPatternBg(){return this.style.backgroundSize=this.backgroundSize||"20%",this.style.backgroundPosition=this.backgroundPosition||"center",e.whirling}replicatePatternBg(){return this.style.backgroundSize=this.backgroundSize||"100%",this.style.backgroundPosition=this.backgroundPosition||"center",e.replicate}scribblePatternBg(){return this.style.backgroundSize=this.backgroundSize||"30%",this.style.backgroundPosition=this.backgroundPosition||"center",e.scribble}squigglyPatternBg(){return this.style.backgroundSize=this.backgroundSize||"20%",this.style.backgroundPosition=this.backgroundPosition||"center",e.squiggly}gyrratePatternBg(){return this.style.backgroundSize=this.backgroundSize||"100%",this.style.backgroundPosition=this.backgroundPosition||"center",e.gyrate}leavesPatternBg(){return this.style.backgroundSize=this.backgroundSize||"40%",this.style.backgroundPosition=this.backgroundPosition||"center",e.leaves}reflectionPatternBg(){return this.style.backgroundSize=this.backgroundSize||"20%",this.style.backgroundPosition=this.backgroundPosition||"center",e.reflection}spotPatternBg(){return this.style.backgroundSize=this.backgroundSize||"40%",this.style.backgroundPosition=this.backgroundPosition||"center",e.spot}}window.customElements.define("ts-root-container",vw);class xw extends HTMLElement{align="auto";constructor(){super()}connectedCallback(){}}window.customElements.define("ts-element",xw);var kw={airline:{airline:[{name:"Aegean Airlines",iataCode:"A3"},{name:"Aeroflot",iataCode:"SU"},{name:"Aerolineas Argentinas",iataCode:"AR"},{name:"Aeromexico",iataCode:"AM"},{name:"Air Algerie",iataCode:"AH"},{name:"Air Arabia",iataCode:"G9"},{name:"Air Canada",iataCode:"AC"},{name:"Air China",iataCode:"CA"},{name:"Air Europa",iataCode:"UX"},{name:"Air France-KLM",iataCode:"AF"},{name:"Air India",iataCode:"AI"},{name:"Air Mauritius",iataCode:"MK"},{name:"Air New Zealand",iataCode:"NZ"},{name:"Air Niugini",iataCode:"PX"},{name:"Air Tahiti",iataCode:"VT"},{name:"Air Tahiti Nui",iataCode:"TN"},{name:"Air Transat",iataCode:"TS"},{name:"AirAsia X",iataCode:"D7"},{name:"AirAsia",iataCode:"AK"},{name:"Aircalin",iataCode:"SB"},{name:"Alaska Airlines",iataCode:"AS"},{name:"Alitalia",iataCode:"AZ"},{name:"All Nippon Airways",iataCode:"NH"},{name:"Allegiant Air",iataCode:"G4"},{name:"American Airlines",iataCode:"AA"},{name:"Asiana Airlines",iataCode:"OZ"},{name:"Avianca",iataCode:"AV"},{name:"Azul Linhas Aereas Brasileiras",iataCode:"AD"},{name:"Azur Air",iataCode:"ZF"},{name:"Beijing Capital Airlines",iataCode:"JD"},{name:"Boliviana de Aviacion",iataCode:"OB"},{name:"British Airways",iataCode:"BA"},{name:"Cathay Pacific",iataCode:"CX"},{name:"Cebu Pacific Air",iataCode:"5J"},{name:"China Airlines",iataCode:"CI"},{name:"China Eastern Airlines",iataCode:"MU"},{name:"China Southern Airlines",iataCode:"CZ"},{name:"Condor",iataCode:"DE"},{name:"Copa Airlines",iataCode:"CM"},{name:"Delta Air Lines",iataCode:"DL"},{name:"Easyfly",iataCode:"VE"},{name:"EasyJet",iataCode:"U2"},{name:"EcoJet",iataCode:"8J"},{name:"Egyptair",iataCode:"MS"},{name:"El Al",iataCode:"LY"},{name:"Emirates Airlines",iataCode:"EK"},{name:"Ethiopian Airlines",iataCode:"ET"},{name:"Etihad Airways",iataCode:"EY"},{name:"EVA Air",iataCode:"BR"},{name:"Fiji Airways",iataCode:"FJ"},{name:"Finnair",iataCode:"AY"},{name:"Flybondi",iataCode:"FO"},{name:"Flydubai",iataCode:"FZ"},{name:"FlySafair",iataCode:"FA"},{name:"Frontier Airlines",iataCode:"F9"},{name:"Garuda Indonesia",iataCode:"GA"},{name:"Go First",iataCode:"G8"},{name:"Gol Linhas Aereas Inteligentes",iataCode:"G3"},{name:"Hainan Airlines",iataCode:"HU"},{name:"Hawaiian Airlines",iataCode:"HA"},{name:"IndiGo Airlines",iataCode:"6E"},{name:"Japan Airlines",iataCode:"JL"},{name:"Jeju Air",iataCode:"7C"},{name:"Jet2",iataCode:"LS"},{name:"JetBlue Airways",iataCode:"B6"},{name:"JetSMART",iataCode:"JA"},{name:"Juneyao Airlines",iataCode:"HO"},{name:"Kenya Airways",iataCode:"KQ"},{name:"Korean Air",iataCode:"KE"},{name:"Kulula.com",iataCode:"MN"},{name:"LATAM Airlines",iataCode:"LA"},{name:"Lion Air",iataCode:"JT"},{name:"LOT Polish Airlines",iataCode:"LO"},{name:"Lufthansa",iataCode:"LH"},{name:"Libyan Airlines",iataCode:"LN"},{name:"Linea Aerea Amaszonas",iataCode:"Z8"},{name:"Malaysia Airlines",iataCode:"MH"},{name:"Nordwind Airlines",iataCode:"N4"},{name:"Norwegian Air Shuttle",iataCode:"DY"},{name:"Oman Air",iataCode:"WY"},{name:"Pakistan International Airlines",iataCode:"PK"},{name:"Pegasus Airlines",iataCode:"PC"},{name:"Philippine Airlines",iataCode:"PR"},{name:"Qantas Group",iataCode:"QF"},{name:"Qatar Airways",iataCode:"QR"},{name:"Republic Airways",iataCode:"YX"},{name:"Royal Air Maroc",iataCode:"AT"},{name:"Ryanair",iataCode:"FR"},{name:"S7 Airlines",iataCode:"S7"},{name:"SAS",iataCode:"SK"},{name:"Satena",iataCode:"9R"},{name:"Saudia",iataCode:"SV"},{name:"Shandong Airlines",iataCode:"SC"},{name:"Sichuan Airlines",iataCode:"3U"},{name:"Singapore Airlines",iataCode:"SQ"},{name:"Sky Airline",iataCode:"H2"},{name:"SkyWest Airlines",iataCode:"OO"},{name:"South African Airways",iataCode:"SA"},{name:"Southwest Airlines",iataCode:"WN"},{name:"SpiceJet",iataCode:"SG"},{name:"Spirit Airlines",iataCode:"NK"},{name:"Spring Airlines",iataCode:"9S"},{name:"SriLankan Airlines",iataCode:"UL"},{name:"Star Peru",iataCode:"2I"},{name:"Sun Country Airlines",iataCode:"SY"},{name:"SunExpress",iataCode:"XQ"},{name:"TAP Air Portugal",iataCode:"TP"},{name:"Thai AirAsia",iataCode:"FD"},{name:"Thai Airways",iataCode:"TG"},{name:"TUI Airways",iataCode:"BY"},{name:"Tunisair",iataCode:"TU"},{name:"Turkish Airlines",iataCode:"TK"},{name:"Ukraine International",iataCode:"PS"},{name:"United Airlines",iataCode:"UA"},{name:"Ural Airlines",iataCode:"U6"},{name:"VietJet Air",iataCode:"VJ"},{name:"Vietnam Airlines",iataCode:"VN"},{name:"Virgin Atlantic Airways",iataCode:"VS"},{name:"Virgin Australia",iataCode:"VA"},{name:"VivaAerobus",iataCode:"VB"},{name:"VOEPASS Linhas Aereas",iataCode:"2Z"},{name:"Volaris",iataCode:"Y4"},{name:"WestJet",iataCode:"WS"},{name:"Wingo",iataCode:"P5"},{name:"Wizz Air",iataCode:"W6"}],airplane:[{name:"Aerospatiale/BAC Concorde",iataTypeCode:"SSC"},{name:"Airbus A300",iataTypeCode:"AB3"},{name:"Airbus A310",iataTypeCode:"310"},{name:"Airbus A310-200",iataTypeCode:"312"},{name:"Airbus A310-300",iataTypeCode:"313"},{name:"Airbus A318",iataTypeCode:"318"},{name:"Airbus A319",iataTypeCode:"319"},{name:"Airbus A319neo",iataTypeCode:"31N"},{name:"Airbus A320",iataTypeCode:"320"},{name:"Airbus A320neo",iataTypeCode:"32N"},{name:"Airbus A321",iataTypeCode:"321"},{name:"Airbus A321neo",iataTypeCode:"32Q"},{name:"Airbus A330",iataTypeCode:"330"},{name:"Airbus A330-200",iataTypeCode:"332"},{name:"Airbus A330-300",iataTypeCode:"333"},{name:"Airbus A330-800neo",iataTypeCode:"338"},{name:"Airbus A330-900neo",iataTypeCode:"339"},{name:"Airbus A340",iataTypeCode:"340"},{name:"Airbus A340-200",iataTypeCode:"342"},{name:"Airbus A340-300",iataTypeCode:"343"},{name:"Airbus A340-500",iataTypeCode:"345"},{name:"Airbus A340-600",iataTypeCode:"346"},{name:"Airbus A350",iataTypeCode:"350"},{name:"Airbus A350-900",iataTypeCode:"359"},{name:"Airbus A350-1000",iataTypeCode:"351"},{name:"Airbus A380",iataTypeCode:"380"},{name:"Airbus A380-800",iataTypeCode:"388"},{name:"Antonov An-12",iataTypeCode:"ANF"},{name:"Antonov An-24",iataTypeCode:"AN4"},{name:"Antonov An-26",iataTypeCode:"A26"},{name:"Antonov An-28",iataTypeCode:"A28"},{name:"Antonov An-30",iataTypeCode:"A30"},{name:"Antonov An-32",iataTypeCode:"A32"},{name:"Antonov An-72",iataTypeCode:"AN7"},{name:"Antonov An-124 Ruslan",iataTypeCode:"A4F"},{name:"Antonov An-140",iataTypeCode:"A40"},{name:"Antonov An-148",iataTypeCode:"A81"},{name:"Antonov An-158",iataTypeCode:"A58"},{name:"Antonov An-225 Mriya",iataTypeCode:"A5F"},{name:"Boeing 707",iataTypeCode:"703"},{name:"Boeing 717",iataTypeCode:"717"},{name:"Boeing 720B",iataTypeCode:"B72"},{name:"Boeing 727",iataTypeCode:"727"},{name:"Boeing 727-100",iataTypeCode:"721"},{name:"Boeing 727-200",iataTypeCode:"722"},{name:"Boeing 737 MAX 7",iataTypeCode:"7M7"},{name:"Boeing 737 MAX 8",iataTypeCode:"7M8"},{name:"Boeing 737 MAX 9",iataTypeCode:"7M9"},{name:"Boeing 737 MAX 10",iataTypeCode:"7MJ"},{name:"Boeing 737",iataTypeCode:"737"},{name:"Boeing 737-100",iataTypeCode:"731"},{name:"Boeing 737-200",iataTypeCode:"732"},{name:"Boeing 737-300",iataTypeCode:"733"},{name:"Boeing 737-400",iataTypeCode:"734"},{name:"Boeing 737-500",iataTypeCode:"735"},{name:"Boeing 737-600",iataTypeCode:"736"},{name:"Boeing 737-700",iataTypeCode:"73G"},{name:"Boeing 737-800",iataTypeCode:"738"},{name:"Boeing 737-900",iataTypeCode:"739"},{name:"Boeing 747",iataTypeCode:"747"},{name:"Boeing 747-100",iataTypeCode:"741"},{name:"Boeing 747-200",iataTypeCode:"742"},{name:"Boeing 747-300",iataTypeCode:"743"},{name:"Boeing 747-400",iataTypeCode:"744"},{name:"Boeing 747-400D",iataTypeCode:"74J"},{name:"Boeing 747-8",iataTypeCode:"748"},{name:"Boeing 747SP",iataTypeCode:"74L"},{name:"Boeing 747SR",iataTypeCode:"74R"},{name:"Boeing 757",iataTypeCode:"757"},{name:"Boeing 757-200",iataTypeCode:"752"},{name:"Boeing 757-300",iataTypeCode:"753"},{name:"Boeing 767",iataTypeCode:"767"},{name:"Boeing 767-200",iataTypeCode:"762"},{name:"Boeing 767-300",iataTypeCode:"763"},{name:"Boeing 767-400",iataTypeCode:"764"},{name:"Boeing 777",iataTypeCode:"777"},{name:"Boeing 777-200",iataTypeCode:"772"},{name:"Boeing 777-200LR",iataTypeCode:"77L"},{name:"Boeing 777-300",iataTypeCode:"773"},{name:"Boeing 777-300ER",iataTypeCode:"77W"},{name:"Boeing 787",iataTypeCode:"787"},{name:"Boeing 787-8",iataTypeCode:"788"},{name:"Boeing 787-9",iataTypeCode:"789"},{name:"Boeing 787-10",iataTypeCode:"781"},{name:"Canadair Challenger",iataTypeCode:"CCJ"},{name:"Canadair CL-44",iataTypeCode:"CL4"},{name:"Canadair Regional Jet 100",iataTypeCode:"CR1"},{name:"Canadair Regional Jet 200",iataTypeCode:"CR2"},{name:"Canadair Regional Jet 700",iataTypeCode:"CR7"},{name:"Canadair Regional Jet 705",iataTypeCode:"CRA"},{name:"Canadair Regional Jet 900",iataTypeCode:"CR9"},{name:"Canadair Regional Jet 1000",iataTypeCode:"CRK"},{name:"De Havilland Canada DHC-2 Beaver",iataTypeCode:"DHP"},{name:"De Havilland Canada DHC-2 Turbo-Beaver",iataTypeCode:"DHR"},{name:"De Havilland Canada DHC-3 Otter",iataTypeCode:"DHL"},{name:"De Havilland Canada DHC-4 Caribou",iataTypeCode:"DHC"},{name:"De Havilland Canada DHC-6 Twin Otter",iataTypeCode:"DHT"},{name:"De Havilland Canada DHC-7 Dash 7",iataTypeCode:"DH7"},{name:"De Havilland Canada DHC-8-100 Dash 8 / 8Q",iataTypeCode:"DH1"},{name:"De Havilland Canada DHC-8-200 Dash 8 / 8Q",iataTypeCode:"DH2"},{name:"De Havilland Canada DHC-8-300 Dash 8 / 8Q",iataTypeCode:"DH3"},{name:"De Havilland Canada DHC-8-400 Dash 8Q",iataTypeCode:"DH4"},{name:"De Havilland DH.104 Dove",iataTypeCode:"DHD"},{name:"De Havilland DH.114 Heron",iataTypeCode:"DHH"},{name:"Douglas DC-3",iataTypeCode:"D3F"},{name:"Douglas DC-6",iataTypeCode:"D6F"},{name:"Douglas DC-8-50",iataTypeCode:"D8T"},{name:"Douglas DC-8-62",iataTypeCode:"D8L"},{name:"Douglas DC-8-72",iataTypeCode:"D8Q"},{name:"Douglas DC-9-10",iataTypeCode:"D91"},{name:"Douglas DC-9-20",iataTypeCode:"D92"},{name:"Douglas DC-9-30",iataTypeCode:"D93"},{name:"Douglas DC-9-40",iataTypeCode:"D94"},{name:"Douglas DC-9-50",iataTypeCode:"D95"},{name:"Douglas DC-10",iataTypeCode:"D10"},{name:"Douglas DC-10-10",iataTypeCode:"D1X"},{name:"Douglas DC-10-30",iataTypeCode:"D1Y"},{name:"Embraer 170",iataTypeCode:"E70"},{name:"Embraer 175",iataTypeCode:"E75"},{name:"Embraer 190",iataTypeCode:"E90"},{name:"Embraer 195",iataTypeCode:"E95"},{name:"Embraer E190-E2",iataTypeCode:"290"},{name:"Embraer E195-E2",iataTypeCode:"295"},{name:"Embraer EMB.110 Bandeirante",iataTypeCode:"EMB"},{name:"Embraer EMB.120 Brasilia",iataTypeCode:"EM2"},{name:"Embraer Legacy 600",iataTypeCode:"ER3"},{name:"Embraer Phenom 100",iataTypeCode:"EP1"},{name:"Embraer Phenom 300",iataTypeCode:"EP3"},{name:"Embraer RJ135",iataTypeCode:"ER3"},{name:"Embraer RJ140",iataTypeCode:"ERD"},{name:"Embraer RJ145 Amazon",iataTypeCode:"ER4"},{name:"Ilyushin IL18",iataTypeCode:"IL8"},{name:"Ilyushin IL62",iataTypeCode:"IL6"},{name:"Ilyushin IL76",iataTypeCode:"IL7"},{name:"Ilyushin IL86",iataTypeCode:"ILW"},{name:"Ilyushin IL96-300",iataTypeCode:"I93"},{name:"Ilyushin IL114",iataTypeCode:"I14"},{name:"Lockheed L-182 / 282 / 382 (L-100) Hercules",iataTypeCode:"LOH"},{name:"Lockheed L-188 Electra",iataTypeCode:"LOE"},{name:"Lockheed L-1011 Tristar",iataTypeCode:"L10"},{name:"Lockheed L-1049 Super Constellation",iataTypeCode:"L49"},{name:"McDonnell Douglas MD11",iataTypeCode:"M11"},{name:"McDonnell Douglas MD80",iataTypeCode:"M80"},{name:"McDonnell Douglas MD81",iataTypeCode:"M81"},{name:"McDonnell Douglas MD82",iataTypeCode:"M82"},{name:"McDonnell Douglas MD83",iataTypeCode:"M83"},{name:"McDonnell Douglas MD87",iataTypeCode:"M87"},{name:"McDonnell Douglas MD88",iataTypeCode:"M88"},{name:"McDonnell Douglas MD90",iataTypeCode:"M90"},{name:"Sukhoi Superjet 100-95",iataTypeCode:"SU9"},{name:"Tupolev Tu-134",iataTypeCode:"TU3"},{name:"Tupolev Tu-154",iataTypeCode:"TU5"},{name:"Tupolev Tu-204",iataTypeCode:"T20"},{name:"Yakovlev Yak-40",iataTypeCode:"YK4"},{name:"Yakovlev Yak-42",iataTypeCode:"YK2"}],airport:[{name:"Adelaide International Airport",iataCode:"ADL"},{name:"Adolfo Suarez Madrid-Barajas Airport",iataCode:"MAD"},{name:"Aeroparque Jorge Newbery Airport",iataCode:"AEP"},{name:"Afonso Pena International Airport",iataCode:"CWB"},{name:"Alfonso Bonilla Aragon International Airport",iataCode:"CLO"},{name:"Amsterdam Airport Schiphol",iataCode:"AMS"},{name:"Arturo Merino Benitez International Airport",iataCode:"SCL"},{name:"Auckland International Airport",iataCode:"AKL"},{name:"Beijing Capital International Airport",iataCode:"PEK"},{name:"Belem Val de Cans International Airport",iataCode:"BEL"},{name:"Belo Horizonte Tancredo Neves International Airport",iataCode:"CNF"},{name:"Berlin-Tegel Airport",iataCode:"TXL"},{name:"Bole International Airport",iataCode:"ADD"},{name:"Brasilia-Presidente Juscelino Kubitschek International Airport",iataCode:"BSB"},{name:"Brisbane International Airport",iataCode:"BNE"},{name:"Brussels Airport",iataCode:"BRU"},{name:"Cairns Airport",iataCode:"CNS"},{name:"Cairo International Airport",iataCode:"CAI"},{name:"Canberra Airport",iataCode:"CBR"},{name:"Capetown International Airport",iataCode:"CPT"},{name:"Charles de Gaulle International Airport",iataCode:"CDG"},{name:"Charlotte Douglas International Airport",iataCode:"CLT"},{name:"Chengdu Shuangliu International Airport",iataCode:"CTU"},{name:"Chhatrapati Shivaji International Airport",iataCode:"BOM"},{name:"Chicago O'Hare International Airport",iataCode:"ORD"},{name:"Chongqing Jiangbei International Airport",iataCode:"CKG"},{name:"Christchurch International Airport",iataCode:"CHC"},{name:"Copenhagen Kastrup Airport",iataCode:"CPH"},{name:"Dallas Fort Worth International Airport",iataCode:"DFW"},{name:"Daniel K. Inouye International Airport",iataCode:"HNL"},{name:"Denver International Airport",iataCode:"DEN"},{name:"Don Mueang International Airport",iataCode:"DMK"},{name:"Dubai International Airport",iataCode:"DXB"},{name:"Dublin Airport",iataCode:"DUB"},{name:"Dusseldorf Airport",iataCode:"DUS"},{name:"El Dorado International Airport",iataCode:"BOG"},{name:"Eleftherios Venizelos International Airport",iataCode:"ATH"},{name:"Faa'a International Airport",iataCode:"PPT"},{name:"Fort Lauderdale Hollywood International Airport",iataCode:"FLL"},{name:"Fortaleza Pinto Martins International Airport",iataCode:"FOR"},{name:"Frankfurt am Main Airport",iataCode:"FRA"},{name:"George Bush Intercontinental Houston Airport",iataCode:"IAH"},{name:"Gold Coast Airport",iataCode:"OOL"},{name:"Guarulhos - Governador Andre Franco Montoro International Airport",iataCode:"GRU"},{name:"Hartsfield-Jackson Atlanta International Airport",iataCode:"ATL"},{name:"Helsinki Vantaa Airport",iataCode:"HEL"},{name:"Hobart International Airport",iataCode:"HBA"},{name:"Hong Kong International Airport",iataCode:"HKG"},{name:"Houari Boumediene Airport",iataCode:"ALG"},{name:"Hurgada International Airport",iataCode:"HRG"},{name:"Incheon International Airport",iataCode:"ICN"},{name:"Indira Gandhi International Airport",iataCode:"DEL"},{name:"Istanbul Airport",iataCode:"IST"},{name:"Jacksons International Airport",iataCode:"POM"},{name:"Jeju International Airport",iataCode:"CJU"},{name:"John F Kennedy International Airport",iataCode:"JFK"},{name:"Jorge Chavez International Airport",iataCode:"LIM"},{name:"Jose Maria Cordova International Airport",iataCode:"MDE"},{name:"Josep Tarradellas Barcelona-El Prat Airport",iataCode:"BCN"},{name:"Kahului Airport",iataCode:"OGG"},{name:"King Abdulaziz International Airport",iataCode:"JED"},{name:"Kuala Lumpur International Airport",iataCode:"KUL"},{name:"Kunming Changshui International Airport",iataCode:"KMG"},{name:"La Tontouta International Airport",iataCode:"NOU"},{name:"Leonardo da Vinci-Fiumicino Airport",iataCode:"FCO"},{name:"London Heathrow Airport",iataCode:"LHR"},{name:"Los Angeles International Airport",iataCode:"LAX"},{name:"McCarran International Airport",iataCode:"LAS"},{name:"Melbourne International Airport",iataCode:"MEL"},{name:"Mexico City International Airport",iataCode:"MEX"},{name:"Miami International Airport",iataCode:"MIA"},{name:"Ministro Pistarini International Airport",iataCode:"EZE"},{name:"Minneapolis-St Paul International/Wold-Chamberlain Airport",iataCode:"MSP"},{name:"Mohammed V International Airport",iataCode:"CMN"},{name:"Moscow Domodedovo Airport",iataCode:"DME"},{name:"Munich Airport",iataCode:"MUC"},{name:"Murtala Muhammed International Airport",iataCode:"LOS"},{name:"Nadi International Airport",iataCode:"NAN"},{name:"Nairobi Jomo Kenyatta International Airport",iataCode:"NBO"},{name:"Narita International Airport",iataCode:"NRT"},{name:"Newark Liberty International Airport",iataCode:"EWR"},{name:"Ninoy Aquino International Airport",iataCode:"MNL"},{name:"Noumea Magenta Airport",iataCode:"GEA"},{name:"O. R. Tambo International Airport",iataCode:"JNB"},{name:"Orlando International Airport",iataCode:"MCO"},{name:"Oslo Lufthavn",iataCode:"OSL"},{name:"Perth Airport",iataCode:"PER"},{name:"Phoenix Sky Harbor International Airport",iataCode:"PHX"},{name:"Recife Guararapes-Gilberto Freyre International Airport",iataCode:"REC"},{name:"Rio de Janeiro Galeao International Airport",iataCode:"GIG"},{name:"Salgado Filho International Airport",iataCode:"POA"},{name:"Salvador Deputado Luis Eduardo Magalhaes International Airport",iataCode:"SSA"},{name:"San Francisco International Airport",iataCode:"SFO"},{name:"Santos Dumont Airport",iataCode:"SDU"},{name:"Sao Paulo-Congonhas Airport",iataCode:"CGH"},{name:"Seattle Tacoma International Airport",iataCode:"SEA"},{name:"Shanghai Hongqiao International Airport",iataCode:"SHA"},{name:"Shanghai Pudong International Airport",iataCode:"PVG"},{name:"Shenzhen Bao'an International Airport",iataCode:"SZX"},{name:"Sheremetyevo International Airport",iataCode:"SVO"},{name:"Singapore Changi Airport",iataCode:"SIN"},{name:"Soekarno-Hatta International Airport",iataCode:"CGK"},{name:'Stockholm-Arlanda Airport"',iataCode:"ARN"},{name:"Suvarnabhumi Airport",iataCode:"BKK"},{name:"Sydney Kingsford Smith International Airport",iataCode:"SYD"},{name:"Taiwan Taoyuan International Airport",iataCode:"TPE"},{name:"Tan Son Nhat International Airport",iataCode:"SGN"},{name:"Tokyo Haneda International Airport",iataCode:"HND"},{name:"Toronto Pearson International Airport",iataCode:"YYZ"},{name:"Tunis Carthage International Airport",iataCode:"TUN"},{name:"Vancouver International Airport",iataCode:"YVR"},{name:"Vienna International Airport",iataCode:"VIE"},{name:"Viracopos International Airport",iataCode:"VCP"},{name:"Vnukovo International Airport",iataCode:"VKO"},{name:"Wellington International Airport",iataCode:"WLG"},{name:"Xi'an Xianyang International Airport",iataCode:"XIY"},{name:"Zhukovsky International Airport",iataCode:"ZIA"},{name:"Zurich Airport",iataCode:"ZRH"}]},animal:{bear:["American black bear","Asian black bear","Brown bear","Giant panda","Polar bear","Sloth bear","Spectacled bear","Sun bear"],bird:["Abert's Towhee","Acadian Flycatcher","Acorn Woodpecker","Alder Flycatcher","Aleutian Tern","Allen's Hummingbird","Altamira Oriole","American Avocet","American Bittern","American Black Duck","American Coot","American Crow","American Dipper","American Golden-Plover","American Goldfinch","American Kestrel","American Oystercatcher","American Pipit","American Redstart","American Robin","American Tree Sparrow","American White Pelican","American Wigeon","American Woodcock","Ancient Murrelet","Anhinga","Anna's Hummingbird","Antillean Nighthawk","Antillean Palm Swift","Aplomado Falcon","Arctic Loon","Arctic Tern","Arctic Warbler","Ash-throated Flycatcher","Ashy Storm-Petrel","Asian Brown Flycatcher","Atlantic Puffin","Audubon's Oriole","Audubon's Shearwater","Aztec Thrush","Azure Gallinule","Bachman's Sparrow","Bachman's Warbler","Bahama Mockingbird","Bahama Swallow","Bahama Woodstar","Baikal Teal","Baird's Sandpiper","Baird's Sparrow","Bald Eagle","Baltimore Oriole","Bananaquit","Band-rumped Storm-Petrel","Band-tailed Gull","Band-tailed Pigeon","Bank Swallow","Bar-tailed Godwit","Barn Owl","Barn Swallow","Barnacle Goose","Barred Owl","Barrow's Goldeneye","Bay-breasted Warbler","Bean Goose","Bell's Vireo","Belted Kingfisher","Bendire's Thrasher","Berylline Hummingbird","Bewick's Wren","Bicknell's Thrush","Black Catbird","Black Guillemot","Black Noddy","Black Oystercatcher","Black Phoebe","Black Rail","Black Rosy-Finch","Black Scoter","Black Skimmer","Black Storm-Petrel","Black Swift","Black Tern","Black Turnstone","Black Vulture","Black-and-white Warbler","Black-backed Wagtail","Black-backed Woodpecker","Black-bellied Plover","Black-bellied Whistling-Duck","Black-billed Cuckoo","Black-billed Magpie","Black-browed Albatross","Black-capped Chickadee","Black-capped Gnatcatcher","Black-capped Petrel","Black-capped Vireo","Black-chinned Hummingbird","Black-chinned Sparrow","Black-crowned Night-Heron","Black-faced Grassquit","Black-footed Albatross","Black-headed Grosbeak","Black-headed Gull","Black-legged Kittiwake","Black-necked Stilt","Black-tailed Gnatcatcher","Black-tailed Godwit","Black-tailed Gull","Black-throated Blue Warbler","Black-throated Gray Warbler","Black-throated Green Warbler","Black-throated Sparrow","Black-vented Oriole","Black-vented Shearwater","Black-whiskered Vireo","Black-winged Stilt","Blackburnian Warbler","Blackpoll Warbler","Blue Bunting","Blue Grosbeak","Blue Grouse","Blue Jay","Blue Mockingbird","Blue-footed Booby","Blue-gray Gnatcatcher","Blue-headed Vireo","Blue-throated Hummingbird","Blue-winged Teal","Blue-winged Warbler","Bluethroat","Boat-tailed Grackle","Bobolink","Bohemian Waxwing","Bonaparte's Gull","Boreal Chickadee","Boreal Owl","Botteri's Sparrow","Brambling","Brandt's Cormorant","Brant","Brewer's Blackbird","Brewer's Sparrow","Bridled Tern","Bridled Titmouse","Bristle-thighed Curlew","Broad-billed Hummingbird","Broad-billed Sandpiper","Broad-tailed Hummingbird","Broad-winged Hawk","Bronzed Cowbird","Brown Booby","Brown Creeper","Brown Jay","Brown Noddy","Brown Pelican","Brown Shrike","Brown Thrasher","Brown-capped Rosy-Finch","Brown-chested Martin","Brown-crested Flycatcher","Brown-headed Cowbird","Brown-headed Nuthatch","Budgerigar","Buff-bellied Hummingbird","Buff-breasted Flycatcher","Buff-breasted Sandpiper","Buff-collared Nightjar","Bufflehead","Buller's Shearwater","Bullock's Oriole","Bumblebee Hummingbird","Burrowing Owl","Bushtit","Cactus Wren","California Condor","California Gnatcatcher","California Gull","California Quail","California Thrasher","California Towhee","Calliope Hummingbird","Canada Goose","Canada Warbler","Canvasback","Canyon Towhee","Canyon Wren","Cape May Warbler","Caribbean Elaenia","Carolina Chickadee","Carolina Parakeet","Carolina Wren","Caspian Tern","Cassin's Auklet","Cassin's Finch","Cassin's Kingbird","Cassin's Sparrow","Cassin's Vireo","Cattle Egret","Cave Swallow","Cedar Waxwing","Cerulean Warbler","Chestnut-backed Chickadee","Chestnut-collared Longspur","Chestnut-sided Warbler","Chihuahuan Raven","Chimney Swift","Chinese Egret","Chipping Sparrow","Chuck-will's-widow","Chukar","Cinnamon Hummingbird","Cinnamon Teal","Citrine Wagtail","Clapper Rail","Clark's Grebe","Clark's Nutcracker","Clay-colored Robin","Clay-colored Sparrow","Cliff Swallow","Colima Warbler","Collared Forest-Falcon","Collared Plover","Common Black-Hawk","Common Chaffinch","Common Crane","Common Cuckoo","Common Eider","Common Goldeneye","Common Grackle","Common Greenshank","Common Ground-Dove","Common House-Martin","Common Loon","Common Merganser","Common Moorhen","Common Murre","Common Nighthawk","Common Pauraque","Common Pochard","Common Poorwill","Common Raven","Common Redpoll","Common Ringed Plover","Common Rosefinch","Common Sandpiper","Common Snipe","Common Swift","Common Tern","Common Yellowthroat","Connecticut Warbler","Cook's Petrel","Cooper's Hawk","Cordilleran Flycatcher","Corn Crake","Cory's Shearwater","Costa's Hummingbird","Couch's Kingbird","Crane Hawk","Craveri's Murrelet","Crescent-chested Warbler","Crested Auklet","Crested Caracara","Crested Myna","Crimson-collared Grosbeak","Crissal Thrasher","Cuban Martin","Curlew Sandpiper","Curve-billed Thrasher","Dark-eyed Junco","Dickcissel","Double-crested Cormorant","Double-striped Thick-knee","Dovekie","Downy Woodpecker","Dunlin","Dusky Flycatcher","Dusky Thrush","Dusky Warbler","Dusky-capped Flycatcher","Eared Grebe","Eared Trogon","Eastern Bluebird","Eastern Kingbird","Eastern Meadowlark","Eastern Phoebe","Eastern Screech-Owl","Eastern Towhee","Eastern Wood-Pewee","Elegant Tern","Elegant Trogon","Elf Owl","Emperor Goose","Eskimo Curlew","Eurasian Blackbird","Eurasian Bullfinch","Eurasian Collared-Dove","Eurasian Coot","Eurasian Curlew","Eurasian Dotterel","Eurasian Hobby","Eurasian Jackdaw","Eurasian Kestrel","Eurasian Oystercatcher","Eurasian Siskin","Eurasian Tree Sparrow","Eurasian Wigeon","Eurasian Woodcock","Eurasian Wryneck","European Golden-Plover","European Starling","European Storm-Petrel","European Turtle-Dove","Evening Grosbeak","Eyebrowed Thrush","Falcated Duck","Fan-tailed Warbler","Far Eastern Curlew","Ferruginous Hawk","Ferruginous Pygmy-Owl","Field Sparrow","Fieldfare","Fish Crow","Five-striped Sparrow","Flame-colored Tanager","Flammulated Owl","Flesh-footed Shearwater","Florida Scrub-Jay","Fork-tailed Flycatcher","Fork-tailed Storm-Petrel","Fork-tailed Swift","Forster's Tern","Fox Sparrow","Franklin's Gull","Fulvous Whistling-Duck","Gadwall","Gambel's Quail","Garganey","Gila Woodpecker","Gilded Flicker","Glaucous Gull","Glaucous-winged Gull","Glossy Ibis","Golden Eagle","Golden-cheeked Warbler","Golden-crowned Kinglet","Golden-crowned Sparrow","Golden-crowned Warbler","Golden-fronted Woodpecker","Golden-winged Warbler","Grace's Warbler","Grasshopper Sparrow","Gray Bunting","Gray Catbird","Gray Flycatcher","Gray Hawk","Gray Jay","Gray Kingbird","Gray Partridge","Gray Silky-flycatcher","Gray Vireo","Gray Wagtail","Gray-breasted Martin","Gray-cheeked Thrush","Gray-crowned Rosy-Finch","Gray-crowned Yellowthroat","Gray-headed Chickadee","Gray-spotted Flycatcher","Gray-tailed Tattler","Great Auk","Great Black-backed Gull","Great Blue Heron","Great Cormorant","Great Crested Flycatcher","Great Egret","Great Frigatebird","Great Gray Owl","Great Horned Owl","Great Kiskadee","Great Knot","Great Skua","Great Spotted Woodpecker","Great-tailed Grackle","Greater Flamingo","Greater Pewee","Greater Prairie-chicken","Greater Roadrunner","Greater Scaup","Greater Shearwater","Greater White-fronted Goose","Greater Yellowlegs","Green Heron","Green Jay","Green Kingfisher","Green Sandpiper","Green Violet-ear","Green-breasted Mango","Green-tailed Towhee","Green-winged Teal","Greenish Elaenia","Groove-billed Ani","Gull-billed Tern","Gyrfalcon","Hairy Woodpecker","Hammond's Flycatcher","Harlequin Duck","Harris's Hawk","Harris's Sparrow","Hawfinch","Heermann's Gull","Henslow's Sparrow","Hepatic Tanager","Herald Petrel","Hermit Thrush","Hermit Warbler","Herring Gull","Himalayan Snowcock","Hoary Redpoll","Hooded Merganser","Hooded Oriole","Hooded Warbler","Hook-billed Kite","Hoopoe","Horned Grebe","Horned Lark","Horned Puffin","House Finch","House Sparrow","House Wren","Hudsonian Godwit","Hutton's Vireo","Iceland Gull","Inca Dove","Indigo Bunting","Island Scrub-Jay","Ivory Gull","Ivory-billed Woodpecker","Jabiru","Jack Snipe","Jungle Nightjar","Juniper Titmouse","Kentucky Warbler","Key West Quail-Dove","Killdeer","King Eider","King Rail","Kirtland's Warbler","Kittlitz's Murrelet","La Sagra's Flycatcher","Labrador Duck","Ladder-backed Woodpecker","Lanceolated Warbler","Lapland Longspur","Large-billed Tern","Lark Bunting","Lark Sparrow","Laughing Gull","Lawrence's Goldfinch","Laysan Albatross","Lazuli Bunting","Le Conte's Sparrow","Le Conte's Thrasher","Leach's Storm-Petrel","Least Auklet","Least Bittern","Least Flycatcher","Least Grebe","Least Sandpiper","Least Storm-Petrel","Least Tern","Lesser Black-backed Gull","Lesser Frigatebird","Lesser Goldfinch","Lesser Nighthawk","Lesser Prairie-chicken","Lesser Scaup","Lesser White-fronted Goose","Lesser Yellowlegs","Lewis's Woodpecker","Limpkin","Lincoln's Sparrow","Little Blue Heron","Little Bunting","Little Curlew","Little Egret","Little Gull","Little Ringed Plover","Little Shearwater","Little Stint","Loggerhead Kingbird","Loggerhead Shrike","Long-billed Curlew","Long-billed Dowitcher","Long-billed Murrelet","Long-billed Thrasher","Long-eared Owl","Long-tailed Jaeger","Long-toed Stint","Louisiana Waterthrush","Lucifer Hummingbird","Lucy's Warbler","MacGillivray's Warbler","Magnificent Frigatebird","Magnificent Hummingbird","Magnolia Warbler","Mallard","Mangrove Cuckoo","Manx Shearwater","Marbled Godwit","Marbled Murrelet","Marsh Sandpiper","Marsh Wren","Masked Booby","Masked Duck","Masked Tityra","McCown's Longspur","McKay's Bunting","Merlin","Mew Gull","Mexican Chickadee","Mexican Jay","Middendorff's Grasshopper-Warbler","Mississippi Kite","Mongolian Plover","Monk Parakeet","Montezuma Quail","Mottled Duck","Mottled Owl","Mottled Petrel","Mountain Bluebird","Mountain Chickadee","Mountain Plover","Mountain Quail","Mourning Dove","Mourning Warbler","Mugimaki Flycatcher","Murphy's Petrel","Muscovy Duck","Mute Swan","Narcissus Flycatcher","Nashville Warbler","Nelson's Sharp-tailed Sparrow","Neotropic Cormorant","Northern Beardless-Tyrannulet","Northern Bobwhite","Northern Cardinal","Northern Flicker","Northern Fulmar","Northern Gannet","Northern Goshawk","Northern Harrier","Northern Hawk Owl","Northern Jacana","Northern Lapwing","Northern Mockingbird","Northern Parula","Northern Pintail","Northern Pygmy-Owl","Northern Rough-winged Swallow","Northern Saw-whet Owl","Northern Shoveler","Northern Shrike","Northern Waterthrush","Northern Wheatear","Northwestern Crow","Nuttall's Woodpecker","Nutting's Flycatcher","Oak Titmouse","Oldsquaw","Olive Sparrow","Olive Warbler","Olive-backed Pipit","Olive-sided Flycatcher","Orange-crowned Warbler","Orchard Oriole","Oriental Cuckoo","Oriental Greenfinch","Oriental Pratincole","Oriental Scops-Owl","Oriental Turtle-Dove","Osprey","Ovenbird","Pacific Golden-Plover","Pacific Loon","Pacific-slope Flycatcher","Paint-billed Crake","Painted Bunting","Painted Redstart","Pallas's Bunting","Palm Warbler","Parakeet Auklet","Parasitic Jaeger","Passenger Pigeon","Pechora Pipit","Pectoral Sandpiper","Pelagic Cormorant","Peregrine Falcon","Phainopepla","Philadelphia Vireo","Pied-billed Grebe","Pigeon Guillemot","Pileated Woodpecker","Pin-tailed Snipe","Pine Bunting","Pine Grosbeak","Pine Siskin","Pine Warbler","Pink-footed Goose","Pink-footed Shearwater","Pinyon Jay","Piping Plover","Plain Chachalaca","Plain-capped Starthroat","Plumbeous Vireo","Pomarine Jaeger","Prairie Falcon","Prairie Warbler","Prothonotary Warbler","Purple Finch","Purple Gallinule","Purple Martin","Purple Sandpiper","Pygmy Nuthatch","Pyrrhuloxia","Razorbill","Red Crossbill","Red Knot","Red Phalarope","Red-bellied Woodpecker","Red-billed Pigeon","Red-billed Tropicbird","Red-breasted Flycatcher","Red-breasted Merganser","Red-breasted Nuthatch","Red-breasted Sapsucker","Red-cockaded Woodpecker","Red-crowned Parrot","Red-eyed Vireo","Red-faced Cormorant","Red-faced Warbler","Red-flanked Bluetail","Red-footed Booby","Red-headed Woodpecker","Red-legged Kittiwake","Red-naped Sapsucker","Red-necked Grebe","Red-necked Phalarope","Red-necked Stint","Red-shouldered Hawk","Red-tailed Hawk","Red-tailed Tropicbird","Red-throated Loon","Red-throated Pipit","Red-whiskered Bulbul","Red-winged Blackbird","Reddish Egret","Redhead","Redwing","Reed Bunting","Rhinoceros Auklet","Ring-billed Gull","Ring-necked Duck","Ring-necked Pheasant","Ringed Kingfisher","Roadside Hawk","Rock Dove","Rock Ptarmigan","Rock Sandpiper","Rock Wren","Rose-breasted Grosbeak","Rose-throated Becard","Roseate Spoonbill","Roseate Tern","Ross's Goose","Ross's Gull","Rough-legged Hawk","Royal Tern","Ruby-crowned Kinglet","Ruby-throated Hummingbird","Ruddy Duck","Ruddy Ground-Dove","Ruddy Quail-Dove","Ruddy Turnstone","Ruff","Ruffed Grouse","Rufous Hummingbird","Rufous-backed Robin","Rufous-capped Warbler","Rufous-crowned Sparrow","Rufous-winged Sparrow","Rustic Bunting","Rusty Blackbird","Sabine's Gull","Sage Grouse","Sage Sparrow","Sage Thrasher","Saltmarsh Sharp-tailed Sparrow","Sanderling","Sandhill Crane","Sandwich Tern","Savannah Sparrow","Say's Phoebe","Scaled Quail","Scaly-naped Pigeon","Scarlet Ibis","Scarlet Tanager","Scissor-tailed Flycatcher","Scott's Oriole","Seaside Sparrow","Sedge Wren","Semipalmated Plover","Semipalmated Sandpiper","Sharp-shinned Hawk","Sharp-tailed Grouse","Sharp-tailed Sandpiper","Shiny Cowbird","Short-billed Dowitcher","Short-eared Owl","Short-tailed Albatross","Short-tailed Hawk","Short-tailed Shearwater","Shy Albatross","Siberian Accentor","Siberian Blue Robin","Siberian Flycatcher","Siberian Rubythroat","Sky Lark","Slate-throated Redstart","Slaty-backed Gull","Slender-billed Curlew","Smew","Smith's Longspur","Smooth-billed Ani","Snail Kite","Snow Bunting","Snow Goose","Snowy Egret","Snowy Owl","Snowy Plover","Solitary Sandpiper","Song Sparrow","Sooty Shearwater","Sooty Tern","Sora","South Polar Skua","Southern Martin","Spectacled Eider","Spoonbill Sandpiper","Spot-billed Duck","Spot-breasted Oriole","Spotted Dove","Spotted Owl","Spotted Rail","Spotted Redshank","Spotted Sandpiper","Spotted Towhee","Sprague's Pipit","Spruce Grouse","Stejneger's Petrel","Steller's Eider","Steller's Jay","Steller's Sea-Eagle","Stilt Sandpiper","Stonechat","Streak-backed Oriole","Streaked Shearwater","Strickland's Woodpecker","Stripe-headed Tanager","Sulphur-bellied Flycatcher","Summer Tanager","Surf Scoter","Surfbird","Swainson's Hawk","Swainson's Thrush","Swainson's Warbler","Swallow-tailed Kite","Swamp Sparrow","Tamaulipas Crow","Tawny-shouldered Blackbird","Temminck's Stint","Tennessee Warbler","Terek Sandpiper","Thayer's Gull","Thick-billed Kingbird","Thick-billed Murre","Thick-billed Parrot","Thick-billed Vireo","Three-toed Woodpecker","Townsend's Solitaire","Townsend's Warbler","Tree Pipit","Tree Swallow","Tricolored Blackbird","Tricolored Heron","Tropical Kingbird","Tropical Parula","Trumpeter Swan","Tufted Duck","Tufted Flycatcher","Tufted Puffin","Tufted Titmouse","Tundra Swan","Turkey Vulture","Upland Sandpiper","Varied Bunting","Varied Thrush","Variegated Flycatcher","Vaux's Swift","Veery","Verdin","Vermilion Flycatcher","Vesper Sparrow","Violet-crowned Hummingbird","Violet-green Swallow","Virginia Rail","Virginia's Warbler","Wandering Albatross","Wandering Tattler","Warbling Vireo","Wedge-rumped Storm-Petrel","Wedge-tailed Shearwater","Western Bluebird","Western Grebe","Western Gull","Western Kingbird","Western Meadowlark","Western Reef-Heron","Western Sandpiper","Western Screech-Owl","Western Scrub-Jay","Western Tanager","Western Wood-Pewee","Whimbrel","Whip-poor-will","Whiskered Auklet","Whiskered Screech-Owl","Whiskered Tern","White Ibis","White Wagtail","White-breasted Nuthatch","White-cheeked Pintail","White-chinned Petrel","White-collared Seedeater","White-collared Swift","White-crowned Pigeon","White-crowned Sparrow","White-eared Hummingbird","White-eyed Vireo","White-faced Ibis","White-faced Storm-Petrel","White-headed Woodpecker","White-rumped Sandpiper","White-tailed Eagle","White-tailed Hawk","White-tailed Kite","White-tailed Ptarmigan","White-tailed Tropicbird","White-throated Needletail","White-throated Robin","White-throated Sparrow","White-throated Swift","White-tipped Dove","White-winged Crossbill","White-winged Dove","White-winged Parakeet","White-winged Scoter","White-winged Tern","Whooper Swan","Whooping Crane","Wild Turkey","Willet","Williamson's Sapsucker","Willow Flycatcher","Willow Ptarmigan","Wilson's Phalarope","Wilson's Plover","Wilson's Storm-Petrel","Wilson's Warbler","Winter Wren","Wood Duck","Wood Sandpiper","Wood Stork","Wood Thrush","Wood Warbler","Worm-eating Warbler","Worthen's Sparrow","Wrentit","Xantus's Hummingbird","Xantus's Murrelet","Yellow Bittern","Yellow Grosbeak","Yellow Rail","Yellow Wagtail","Yellow Warbler","Yellow-bellied Flycatcher","Yellow-bellied Sapsucker","Yellow-billed Cuckoo","Yellow-billed Loon","Yellow-billed Magpie","Yellow-breasted Bunting","Yellow-breasted Chat","Yellow-crowned Night-Heron","Yellow-eyed Junco","Yellow-faced Grassquit","Yellow-footed Gull","Yellow-green Vireo","Yellow-headed Blackbird","Yellow-legged Gull","Yellow-nosed Albatross","Yellow-rumped Warbler","Yellow-throated Vireo","Yellow-throated Warbler","Yucatan Vireo","Zenaida Dove","Zone-tailed Hawk"],cat:["Abyssinian","American Bobtail","American Curl","American Shorthair","American Wirehair","Balinese","Bengal","Birman","Bombay","British Shorthair","Burmese","Chartreux","Chausie","Cornish Rex","Devon Rex","Donskoy","Egyptian Mau","Exotic Shorthair","Havana","Highlander","Himalayan","Japanese Bobtail","Korat","Kurilian Bobtail","LaPerm","Maine Coon","Manx","Minskin","Munchkin","Nebelung","Norwegian Forest Cat","Ocicat","Ojos Azules","Oriental","Persian","Peterbald","Pixiebob","Ragdoll","Russian Blue","Savannah","Scottish Fold","Selkirk Rex","Serengeti","Siamese","Siberian","Singapura","Snowshoe","Sokoke","Somali","Sphynx","Thai","Tonkinese","Toyger","Turkish Angora","Turkish Van"],cetacean:["Amazon River Dolphin","Arnoux's Beaked Whale","Atlantic Humpbacked Dolphin","Atlantic Spotted Dolphin","Atlantic White-Sided Dolphin","Australian Snubfin Dolphin","Australian humpback Dolphin","Blue Whale","Bottlenose Dolphin","Bryde’s whale","Burrunan Dolphin","Chilean Dolphin","Chinese River Dolphin","Chinese White Dolphin","Clymene Dolphin","Commerson’s Dolphin","Costero","Dusky Dolphin","False Killer Whale","Fin Whale","Fraser’s Dolphin","Ganges River Dolphin","Guiana Dolphin","Heaviside’s Dolphin","Hector’s Dolphin","Hourglass Dolphin","Humpback whale","Indo-Pacific Bottlenose Dolphin","Indo-Pacific Hump-backed Dolphin","Irrawaddy Dolphin","Killer Whale (Orca)","La Plata Dolphin","Long-Beaked Common Dolphin","Long-finned Pilot Whale","Longman's Beaked Whale","Melon-headed Whale","Northern Rightwhale Dolphin","Omura’s whale","Pacific White-Sided Dolphin","Pantropical Spotted Dolphin","Peale’s Dolphin","Pygmy Killer Whale","Risso’s Dolphin","Rough-Toothed Dolphin","Sei Whale","Short-Beaked Common Dolphin","Short-finned Pilot Whale","Southern Bottlenose Whale","Southern Rightwhale Dolphin","Sperm Whale","Spinner Dolphin","Striped Dolphin","Tucuxi","White-Beaked Dolphin"],cow:["Aberdeen Angus","Abergele","Abigar","Abondance","Abyssinian Shorthorned Zebu","Aceh","Achham","Adamawa","Adaptaur","Afar","Africangus","Afrikaner","Agerolese","Alambadi","Alatau","Albanian","Albera","Alderney","Alentejana","Aleutian wild cattle","Aliad Dinka","Alistana-Sanabresa","Allmogekor","Alur","American","American Angus","American Beef Friesian","American Brown Swiss","American Milking Devon","American White Park","Amerifax","Amrit Mahal","Amsterdam Island cattle","Anatolian Black","Andalusian Black","Andalusian Blond","Andalusian Grey","Angeln","Angoni","Ankina","Ankole","Ankole-Watusi","Aracena","Arado","Argentine Criollo","Argentine Friesian","Armorican","Arouquesa","Arsi","Asturian Mountain","Asturian Valley","Aubrac","Aulie-Ata","Aure et Saint-Girons","Australian Braford","Australian Brangus","Australian Charbray","Australian Friesian Sahiwal","Australian Lowline","Australian Milking Zebu","Australian Shorthorn","Austrian Simmental","Austrian Yellow","Avileña-Negra Ibérica","Avétonou","Aweil Dinka","Ayrshire","Azaouak","Azebuado","Azerbaijan Zebu","Azores","Bachaur cattle","Baherie cattle","Bakosi cattle","Balancer","Baoule","Bargur cattle","Barrosã","Barzona","Bazadaise","Bedit","Beef Freisian","Beefalo","Beefmaker","Beefmaster","Begayt","Belgian Blue","Belgian Red","Belgian Red Pied","Belgian White-and-Red","Belmont Red","Belted Galloway","Bernese","Berrenda cattle","Betizu","Bianca Modenese","Blaarkop","Black Angus","Black Baldy","Black Hereford","Blanca Cacereña","Blanco Orejinegro BON","Blonde d'Aquitaine","Blue Albion","Blue Grey","Bohuskulla","Bonsmara","Boran","Boškarin","Braford","Brahman","Brahmousin","Brangus","Braunvieh","Brava","Breed","British Friesian","British White","Brown Carpathian","Brown Caucasian","Brown Swiss","Bue Lingo","Burlina","Bushuyev","Butana cattle","Buša cattle","Cachena","Caldelana","Camargue","Campbell Island cattle","Canadian Speckle Park","Canadienne","Canaria","Canchim","Caracu","Carinthian Blondvieh","Carora","Cedit","Charbray","Charolais","Chateaubriand","Chiangus","Chianina","Chillingham cattle","Chinese Black Pied","Cholistani","Coloursided White Back","Commercial","Corriente","Corsican cattle","Costeño con Cuernos","Crioulo Lageano","Cárdena Andaluza","Dajal","Dangi cattle","Danish Black-Pied","Danish Jersey","Danish Red","Dedit","Deep Red cattle","Deoni","Devon","Dexter cattle","Dhanni","Doayo cattle","Doela","Drakensberger","Droughtmaster","Dulong'","Dutch Belted","Dutch Friesian","Dwarf Lulu","Dølafe","East Anatolian Red","Eastern Finncattle","Eastern Red Polled","Eedit","Enderby Island cattle","English Longhorn","Ennstaler Bergscheck","Estonian Holstein","Estonian Native","Estonian Red cattle","Fedit","Finncattle","Finnish Ayrshire","Finnish Holstein-Friesian","Fjäll","Fleckvieh","Florida Cracker cattle","Fogera","French Simmental","Fribourgeoise","Friesian Red and White","Fulani Sudanese","Fēng Cattle","Galician Blond","Galloway cattle","Gangatiri","Gaolao","Garvonesa","Gascon cattle","Gedit","Gelbvieh","Georgian Mountain cattle","German Angus","German Black Pied Dairy","German Black Pied cattle","German Red Pied","Gir","Glan cattle","Gloucester","Gobra","Greek Shorthorn","Greek Steppe","Greyman cattle","Gudali","Guernsey cattle","Guzerá","Hallikar4","Hanwoo","Hariana cattle","Hartón del Valle","Harzer Rotvieh","Hays Converter","Heck cattle","Hedit","Hereford","Herens","Highland cattle","Hinterwald","Holando-Argentino","Holstein Friesian cattle","Horro","Hungarian Grey","Huáng Cattle","Hybridmaster","Iberian cattle","Icelandic","Iedit","Illawarra cattle","Improved Red and White","Indo-Brazilian","Irish Moiled","Israeli Holstein","Israeli Red","Istoben cattle","Istrian cattle","Jamaica Black","Jamaica Hope","Jamaica Red","Japanese Brown","Jarmelista","Javari cattle","Jedit","Jersey cattle","Jutland cattle","Kabin Buri cattle","Kalmyk cattle","Kamphaeng Saen cattle","Kangayam","Kankrej","Karan Swiss","Kasaragod Dwarf cattle","Kathiawadi","Kazakh Whiteheaded","Kedit","Kenana cattle","Kenkatha cattle","Kerry cattle","Kherigarh","Khillari cattle","Kholomogory","Korat Wagyu","Kostroma cattle","Krishna Valley cattle","Kurgan cattle","Kuri","La Reina cattle","Lakenvelder cattle","Lampurger","Latvian Blue","Latvian Brown","Latvian Danish Red","Lebedyn","Ledit","Levantina","Limia cattle","Limousin","Limpurger","Lincoln Red","Lineback","Lithuanian Black-and-White","Lithuanian Light Grey","Lithuanian Red","Lithuanian White-Backed","Lohani cattle","Lourdais","Lucerna cattle","Luing","Madagascar Zebu","Madura","Maine-Anjou","Malnad Gidda","Malvi","Mandalong Special","Mantequera Leonesa","Maramureş Brown","Marchigiana","Maremmana","Marinhoa","Maronesa","Masai","Mashona","Medit","Menorquina","Mertolenga","Meuse-Rhine-Issel","Mewati","Milking Shorthorn","Minhota","Mirandesa","Mirkadim","Mocăniţă","Mollie","Monchina","Mongolian","Montbéliarde","Morucha","Murboden","Murnau-Werdenfels","Murray Grey","Muturu","N'Dama","Nagori","Nedit","Negra Andaluza","Nelore","Nguni","Nimari","Normande","North Bengal Grey","Northern Finncattle","Northern Shorthorn","Norwegian Red","Oedit]","Ongole","Original Simmental","Pajuna","Palmera","Pantaneiro","Parda Alpina","Parthenaise","Pasiega","Pedit","Pembroke","Philippine Native","Pie Rouge des Plaines","Piedmontese cattle","Pineywoods","Pinzgauer","Pirenaica","Podolac","Podolica","Polish Black-and-White","Polish Red","Poll Shorthorn","Polled Hereford","Polled Shorthorn","Ponwar","Preta","Pulikulam","Punganur","Pustertaler Sprinzen","Qedit","Qinchaun","Queensland Miniature Boran","RX3","Ramo Grande","Randall","Raramuri Criollo","Rathi","Raya","Red Angus","Red Brangus","Red Chittagong","Red Fulani","Red Gorbatov","Red Holstein","Red Kandhari","Red Mingrelian","Red Poll","Red Polled Østland","Red Sindhi","Redit","Retinta","Riggit Galloway","Ringamåla","Rohjan","Romagnola","Romanian Bălţata","Romanian Steppe Gray","Romosinuano","Russian Black Pied","Rätisches Grauvieh","Sahiwal","Salers","Salorn","Sanga","Sanhe","Santa Cruz","Santa Gertrudis","Sayaguesa","Schwyz","Sedit","Selembu","Senepol","Serbian Pied","Serbian Steppe","Sheko","Shetland","Shorthorn","Siboney de Cuba","Simbrah","Simford","Simmental","Siri","South Devon","Spanish Fighting Bull","Speckle Park","Square Meater","Sussex","Swedish Friesian","Swedish Polled","Swedish Red Pied","Swedish Red Polled","Swedish Red-and-White","Tabapuã","Tarentaise","Tasmanian Grey","Tauros","Tedit","Telemark","Texas Longhorn","Texon","Thai Black","Thai Fighting Bull","Thai Friesian","Thai Milking Zebu","Tharparkar","Tswana","Tudanca","Tuli","Tulim","Turkish Grey Steppe","Tux-Zillertal","Tyrol Grey","Uedit","Ukrainian Grey","Umblachery","Valdostana Castana","Valdostana Pezzata Nera","Valdostana Pezzata Rossa","Vaynol","Vechur8","Vedit","Vestland Fjord","Vestland Red Polled","Vianesa","Volinian Beef","Vorderwald","Vosgienne","Väneko","Waguli","Wagyu","Wangus","Wedit","Welsh Black","Western Finncattle","White Cáceres","White Fulani","White Lamphun","White Park","Whitebred Shorthorn","Xedit","Xingjiang Brown","Yakutian","Yanbian","Yanhuang","Yedit","Yurino","Zebu","Zedit","Évolène cattle","Żubroń"],crocodilia:["African Slender-snouted Crocodile","Alligator mississippiensis","American Crocodile","Australian Freshwater Crocodile","Black Caiman","Broad-snouted Caiman","Chinese Alligator","Cuban Crocodile","Cuvier’s Dwarf Caiman","Dwarf Crocodile","Gharial","Morelet’s Crocodile","Mugger Crocodile","New Guinea Freshwater Crocodile","Nile Crocodile","Orinoco Crocodile","Philippine Crocodile","Saltwater Crocodile","Schneider’s Smooth-fronted Caiman","Siamese Crocodile","Spectacled Caiman","Tomistoma","West African Crocodile","Yacare Caiman"],dog:["Affenpinscher","Afghan Hound","Aidi","Airedale Terrier","Akbash","Akita","Alano Español","Alapaha Blue Blood Bulldog","Alaskan Husky","Alaskan Klee Kai","Alaskan Malamute","Alopekis","Alpine Dachsbracke","American Bulldog","American Bully","American Cocker Spaniel","American English Coonhound","American Foxhound","American Hairless Terrier","American Pit Bull Terrier","American Staffordshire Terrier","American Water Spaniel","Andalusian Hound","Anglo-Français de Petite Vénerie","Appenzeller Sennenhund","Ariegeois","Armant","Armenian Gampr dog","Artois Hound","Australian Cattle Dog","Australian Kelpie","Australian Shepherd","Australian Stumpy Tail Cattle Dog","Australian Terrier","Austrian Black and Tan Hound","Austrian Pinscher","Azawakh","Bakharwal dog","Banjara Hound","Barbado da Terceira","Barbet","Basenji","Basque Shepherd Dog","Basset Artésien Normand","Basset Bleu de Gascogne","Basset Fauve de Bretagne","Basset Hound","Bavarian Mountain Hound","Beagle","Beagle-Harrier","Bearded Collie","Beauceron","Bedlington Terrier","Belgian Shepherd","Bergamasco Shepherd","Berger Picard","Bernese Mountain Dog","Bhotia","Bichon Frisé","Billy","Black Mouth Cur","Black Norwegian Elkhound","Black Russian Terrier","Black and Tan Coonhound","Bloodhound","Blue Lacy","Blue Picardy Spaniel","Bluetick Coonhound","Boerboel","Bohemian Shepherd","Bolognese","Border Collie","Border Terrier","Borzoi","Bosnian Coarse-haired Hound","Boston Terrier","Bouvier des Ardennes","Bouvier des Flandres","Boxer","Boykin Spaniel","Bracco Italiano","Braque Francais","Braque Saint-Germain","Braque d'Auvergne","Braque de l'Ariège","Braque du Bourbonnais","Briard","Briquet Griffon Vendéen","Brittany","Broholmer","Bruno Jura Hound","Brussels Griffon","Bucovina Shepherd Dog","Bull Arab","Bull Terrier","Bulldog","Bullmastiff","Bully Kutta","Burgos Pointer","Cairn Terrier","Campeiro Bulldog","Can de Chira","Canaan Dog","Canadian Eskimo Dog","Cane Corso","Cane Paratore","Cane di Oropa","Cantabrian Water Dog","Cardigan Welsh Corgi","Carea Castellano Manchego","Carolina Dog","Carpathian Shepherd Dog","Catahoula Leopard Dog","Catalan Sheepdog","Caucasian Shepherd Dog","Cavalier King Charles Spaniel","Central Asian Shepherd Dog","Cesky Fousek","Cesky Terrier","Chesapeake Bay Retriever","Chien Français Blanc et Noir","Chien Français Blanc et Orange","Chien Français Tricolore","Chihuahua","Chilean Terrier","Chinese Chongqing Dog","Chinese Crested Dog","Chinook","Chippiparai","Chongqing dog","Chortai","Chow Chow","Cimarrón Uruguayo","Cirneco dell'Etna","Clumber Spaniel","Colombian fino hound","Coton de Tulear","Cretan Hound","Croatian Sheepdog","Curly-Coated Retriever","Cursinu","Czechoslovakian Wolfdog","Cão Fila de São Miguel","Cão da Serra de Aires","Cão de Castro Laboreiro","Cão de Gado Transmontano","Dachshund","Dalmatian","Dandie Dinmont Terrier","Danish-Swedish Farmdog","Denmark Feist","Dingo","Doberman Pinscher","Dogo Argentino","Dogo Guatemalteco","Dogo Sardesco","Dogue Brasileiro","Dogue de Bordeaux","Drentse Patrijshond","Drever","Dunker","Dutch Shepherd","Dutch Smoushond","East European Shepherd","East Siberian Laika","English Cocker Spaniel","English Foxhound","English Mastiff","English Setter","English Shepherd","English Springer Spaniel","English Toy Terrier","Entlebucher Mountain Dog","Estonian Hound","Estrela Mountain Dog","Eurasier","Field Spaniel","Fila Brasileiro","Finnish Hound","Finnish Lapphund","Finnish Spitz","Flat-Coated Retriever","French Bulldog","French Spaniel","Galgo Español","Galician Shepherd Dog","Garafian Shepherd","Gascon Saintongeois","Georgian Shepherd","German Hound","German Longhaired Pointer","German Pinscher","German Roughhaired Pointer","German Shepherd Dog","German Shorthaired Pointer","German Spaniel","German Spitz","German Wirehaired Pointer","Giant Schnauzer","Glen of Imaal Terrier","Golden Retriever","Gordon Setter","Gończy Polski","Grand Anglo-Français Blanc et Noir","Grand Anglo-Français Blanc et Orange","Grand Anglo-Français Tricolore","Grand Basset Griffon Vendéen","Grand Bleu de Gascogne","Grand Griffon Vendéen","Great Dane","Greater Swiss Mountain Dog","Greek Harehound","Greek Shepherd","Greenland Dog","Greyhound","Griffon Bleu de Gascogne","Griffon Fauve de Bretagne","Griffon Nivernais","Gull Dong","Gull Terrier","Hamiltonstövare","Hanover Hound","Harrier","Havanese","Hierran Wolfdog","Hokkaido","Hovawart","Huntaway","Hygen Hound","Hällefors Elkhound","Ibizan Hound","Icelandic Sheepdog","Indian Spitz","Indian pariah dog","Irish Red and White Setter","Irish Setter","Irish Terrier","Irish Water Spaniel","Irish Wolfhound","Istrian Coarse-haired Hound","Istrian Shorthaired Hound","Italian Greyhound","Jack Russell Terrier","Jagdterrier","Japanese Chin","Japanese Spitz","Japanese Terrier","Jindo","Jonangi","Kai Ken","Kaikadi","Kangal Shepherd Dog","Kanni","Karakachan dog","Karelian Bear Dog","Kars","Karst Shepherd","Keeshond","Kerry Beagle","Kerry Blue Terrier","King Charles Spaniel","King Shepherd","Kintamani","Kishu","Kokoni","Kombai","Komondor","Kooikerhondje","Koolie","Koyun dog","Kromfohrländer","Kuchi","Kuvasz","Labrador Retriever","Lagotto Romagnolo","Lakeland Terrier","Lancashire Heeler","Landseer","Lapponian Herder","Large Münsterländer","Leonberger","Levriero Sardo","Lhasa Apso","Lithuanian Hound","Lupo Italiano","Löwchen","Mackenzie River Husky","Magyar agár","Mahratta Greyhound","Maltese","Manchester Terrier","Maremmano-Abruzzese Sheepdog","McNab dog","Miniature American Shepherd","Miniature Bull Terrier","Miniature Fox Terrier","Miniature Pinscher","Miniature Schnauzer","Molossus of Epirus","Montenegrin Mountain Hound","Mountain Cur","Mountain Feist","Mucuchies","Mudhol Hound","Mudi","Neapolitan Mastiff","New Guinea Singing Dog","New Zealand Heading Dog","Newfoundland","Norfolk Terrier","Norrbottenspets","Northern Inuit Dog","Norwegian Buhund","Norwegian Elkhound","Norwegian Lundehund","Norwich Terrier","Nova Scotia Duck Tolling Retriever","Old Croatian Sighthound","Old Danish Pointer","Old English Sheepdog","Old English Terrier","Olde English Bulldogge","Otterhound","Pachon Navarro","Paisley Terrier","Pampas Deerhound","Papillon","Parson Russell Terrier","Pastore della Lessinia e del Lagorai","Patagonian Sheepdog","Patterdale Terrier","Pekingese","Pembroke Welsh Corgi","Perro Majorero","Perro de Pastor Mallorquin","Perro de Presa Canario","Perro de Presa Mallorquin","Peruvian Inca Orchid","Petit Basset Griffon Vendéen","Petit Bleu de Gascogne","Phalène","Pharaoh Hound","Phu Quoc Ridgeback","Picardy Spaniel","Plott Hound","Plummer Terrier","Podenco Canario","Podenco Valenciano","Pointer","Poitevin","Polish Greyhound","Polish Hound","Polish Lowland Sheepdog","Polish Tatra Sheepdog","Pomeranian","Pont-Audemer Spaniel","Poodle","Porcelaine","Portuguese Podengo","Portuguese Pointer","Portuguese Water Dog","Posavac Hound","Pražský Krysařík","Pshdar Dog","Pudelpointer","Pug","Puli","Pumi","Pungsan Dog","Pyrenean Mastiff","Pyrenean Mountain Dog","Pyrenean Sheepdog","Rafeiro do Alentejo","Rajapalayam","Rampur Greyhound","Rat Terrier","Ratonero Bodeguero Andaluz","Ratonero Mallorquin","Ratonero Murciano de Huerta","Ratonero Valenciano","Redbone Coonhound","Rhodesian Ridgeback","Romanian Mioritic Shepherd Dog","Romanian Raven Shepherd Dog","Rottweiler","Rough Collie","Russian Spaniel","Russian Toy","Russo-European Laika","Saarloos Wolfdog","Sabueso Español","Saint Bernard","Saint Hubert Jura Hound","Saint-Usuge Spaniel","Saluki","Samoyed","Sapsali","Sarabi dog","Sardinian Shepherd Dog","Schapendoes","Schillerstövare","Schipperke","Schweizer Laufhund","Schweizerischer Niederlaufhund","Scottish Deerhound","Scottish Terrier","Sealyham Terrier","Segugio Italiano","Segugio Maremmano","Segugio dell'Appennino","Seppala Siberian Sleddog","Serbian Hound","Serbian Tricolour Hound","Serrano Bulldog","Shar Pei","Shetland Sheepdog","Shiba Inu","Shih Tzu","Shikoku","Shiloh Shepherd","Siberian Husky","Silken Windhound","Silky Terrier","Sinhala Hound","Skye Terrier","Sloughi","Slovakian Wirehaired Pointer","Slovenský Cuvac","Slovenský Kopov","Smalandstövare","Small Greek domestic dog","Small Münsterländer","Smooth Collie","Smooth Fox Terrier","Soft-Coated Wheaten Terrier","South Russian Ovcharka","Spanish Mastiff","Spanish Water Dog","Spinone Italiano","Sporting Lucas Terrier","Stabyhoun","Staffordshire Bull Terrier","Standard Schnauzer","Stephens Stock","Styrian Coarse-haired Hound","Sussex Spaniel","Swedish Elkhound","Swedish Lapphund","Swedish Vallhund","Swedish White Elkhound","Taigan","Taiwan Dog","Tamaskan Dog","Teddy Roosevelt Terrier","Telomian","Tenterfield Terrier","Terrier Brasileiro","Thai Bangkaew Dog","Thai Ridgeback","Tibetan Mastiff","Tibetan Spaniel","Tibetan Terrier","Tornjak","Tosa","Toy Fox Terrier","Toy Manchester Terrier","Transylvanian Hound","Treeing Cur","Treeing Feist","Treeing Tennessee Brindle","Treeing Walker Coonhound","Trigg Hound","Tyrolean Hound","Vikhan","Villano de Las Encartaciones","Villanuco de Las Encartaciones","Vizsla","Volpino Italiano","Weimaraner","Welsh Sheepdog","Welsh Springer Spaniel","Welsh Terrier","West Highland White Terrier","West Siberian Laika","Westphalian Dachsbracke","Wetterhoun","Whippet","White Shepherd","White Swiss Shepherd Dog","Wire Fox Terrier","Wirehaired Pointing Griffon","Wirehaired Vizsla","Xiasi Dog","Xoloitzcuintli","Yakutian Laika","Yorkshire Terrier","Šarplaninac"],fish:["Alaska pollock","Albacore","Amur catfish","Araucanian herring","Argentine hake","Asari","Asian swamp eel","Atlantic cod","Atlantic herring","Atlantic horse mackerel","Atlantic mackerel","Atlantic menhaden","Atlantic salmon","Bigeye scad","Bigeye tuna","Bighead carp","Black carp","Blood cockle","Blue swimming crab","Blue whiting","Bombay-duck","Bonga shad","California pilchard","Cape horse mackerel","Capelin","Catla","Channel catfish","Chilean jack mackerel","Chinese perch","Chinese softshell turtle","Chub mackerel","Chum salmon","Common carp","Crucian carp","Daggertooth pike conger","European anchovy","European pilchard","European sprat","Filipino Venus","Gazami crab","Goldstripe sardinella","Grass carp","Gulf menhaden","Haddock","Hilsa shad","Indian mackerel","Indian oil sardine","Iridescent shark","Japanese anchovy","Japanese cockle","Japanese common catfish","Japanese flying squid","Japanese jack mackerel","Japanese littleneck","Japanese pilchard","Jumbo flying squid","Kawakawa","Korean bullhead","Largehead hairtail","Longtail tuna","Madeiran sardinella","Mandarin fish","Milkfish","Mrigal carp","Narrow-barred Spanish mackerel","Nile perch","Nile tilapia","North Pacific hake","Northern snakehead","Pacific anchoveta","Pacific cod","Pacific herring","Pacific sand lance","Pacific sandlance","Pacific saury","Pacific thread herring","Peruvian anchoveta","Pink salmon","Pollock","Pond loach","Rainbow trout","Rohu","Round sardinella","Short mackerel","Silver carp","Silver cyprinid","Skipjack tuna","Southern African anchovy","Southern rough shrimp","Whiteleg shrimp","Wuchang bream","Yellow croaker","Yellowfin tuna","Yellowhead catfish","Yellowstripe scad"],horse:["Abaco Barb","Abtenauer","Abyssinian","Aegidienberger","Akhal-Teke","Albanian Horse","Altai Horse","Altèr Real","American Albino","American Cream Draft","American Indian Horse","American Paint Horse","American Quarter Horse","American Saddlebred","American Warmblood","Andalusian Horse","Andravida Horse","Anglo-Arabian","Anglo-Arabo-Sardo","Anglo-Kabarda","Appaloosa","AraAppaloosa","Arabian Horse","Ardennes Horse","Arenberg-Nordkirchen","Argentine Criollo","Asian wild Horse","Assateague Horse","Asturcón","Augeron","Australian Brumby","Australian Draught Horse","Australian Stock Horse","Austrian Warmblood","Auvergne Horse","Auxois","Azerbaijan Horse","Azteca Horse","Baise Horse","Bale","Balearic Horse","Balikun Horse","Baluchi Horse","Banker Horse","Barb Horse","Bardigiano","Bashkir Curly","Basque Mountain Horse","Bavarian Warmblood","Belgian Half-blood","Belgian Horse","Belgian Warmblood ","Bhutia Horse","Black Forest Horse","Blazer Horse","Boerperd","Borana","Boulonnais Horse","Brabant","Brandenburger","Brazilian Sport Horse","Breton Horse","Brumby","Budyonny Horse","Burguete Horse","Burmese Horse","Byelorussian Harness Horse","Calabrese Horse","Camargue Horse","Camarillo White Horse","Campeiro","Campolina","Canadian Horse","Canadian Pacer","Carolina Marsh Tacky","Carthusian Horse","Caspian Horse","Castilian Horse","Castillonnais","Catria Horse","Cavallo Romano della Maremma Laziale","Cerbat Mustang","Chickasaw Horse","Chilean Corralero","Choctaw Horse","Cleveland Bay","Clydesdale Horse","Cob","Coldblood Trotter","Colonial Spanish Horse","Colorado Ranger","Comtois Horse","Corsican Horse","Costa Rican Saddle Horse","Cretan Horse","Criollo Horse","Croatian Coldblood","Cuban Criollo","Cumberland Island Horse","Curly Horse","Czech Warmblood","Daliboz","Danish Warmblood","Danube Delta Horse","Dole Gudbrandsdal","Don","Dongola Horse","Draft Trotter","Dutch Harness Horse","Dutch Heavy Draft","Dutch Warmblood","Dzungarian Horse","East Bulgarian","East Friesian Horse","Estonian Draft","Estonian Horse","Falabella","Faroese","Finnhorse","Fjord Horse","Fleuve","Florida Cracker Horse","Foutanké","Frederiksborg Horse","Freiberger","French Trotter","Friesian Cross","Friesian Horse","Friesian Sporthorse","Furioso-North Star","Galiceño","Galician Pony","Gelderland Horse","Georgian Grande Horse","German Warmblood","Giara Horse","Gidran","Groningen Horse","Gypsy Horse","Hackney Horse","Haflinger","Hanoverian Horse","Heck Horse","Heihe Horse","Henson Horse","Hequ Horse","Hirzai","Hispano-Bretón","Holsteiner Horse","Horro","Hungarian Warmblood","Icelandic Horse","Iomud","Irish Draught","Irish Sport Horse sometimes called Irish Hunter","Italian Heavy Draft","Italian Trotter","Jaca Navarra","Jeju Horse","Jutland Horse","Kabarda Horse","Kafa","Kaimanawa Horses","Kalmyk Horse","Karabair","Karabakh Horse","Karachai Horse","Karossier","Kathiawari","Kazakh Horse","Kentucky Mountain Saddle Horse","Kiger Mustang","Kinsky Horse","Kisber Felver","Kiso Horse","Kladruber","Knabstrupper","Konik","Kundudo","Kustanair","Kyrgyz Horse","Latvian Horse","Lipizzan","Lithuanian Heavy Draught","Lokai","Losino Horse","Lusitano","Lyngshest","M'Bayar","M'Par","Mallorquín","Malopolski","Mangalarga","Mangalarga Marchador","Maremmano","Marismeño Horse","Marsh Tacky","Marwari Horse","Mecklenburger","Menorquín","Messara Horse","Metis Trotter","Mezőhegyesi Sport Horse","Međimurje Horse","Miniature Horse","Misaki Horse","Missouri Fox Trotter","Monchina","Mongolian Horse","Mongolian Wild Horse","Monterufolino","Morab","Morgan Horse","Mountain Pleasure Horse","Moyle Horse","Murakoz Horse","Murgese","Mustang Horse","Mérens Horse","Namib Desert Horse","Nangchen Horse","National Show Horse","Nez Perce Horse","Nivernais Horse","Nokota Horse","Noma","Nonius Horse","Nooitgedachter","Nordlandshest","Noriker Horse","Norman Cob","North American Single-Footer Horse","North Swedish Horse","Norwegian Coldblood Trotter","Norwegian Fjord","Novokirghiz","Oberlander Horse","Ogaden","Oldenburg Horse","Orlov trotter","Ostfriesen","Paint","Pampa Horse","Paso Fino","Pentro Horse","Percheron","Persano Horse","Peruvian Paso","Pintabian","Pleven Horse","Poitevin Horse","Posavac Horse","Pottok","Pryor Mountain Mustang","Przewalski's Horse","Pura Raza Española","Purosangue Orientale","Qatgani","Quarab","Quarter Horse","Racking Horse","Retuerta Horse","Rhenish German Coldblood","Rhinelander Horse","Riwoche Horse","Rocky Mountain Horse","Romanian Sporthorse","Rottaler","Russian Don","Russian Heavy Draft","Russian Trotter","Saddlebred","Salerno Horse","Samolaco Horse","San Fratello Horse","Sarcidano Horse","Sardinian Anglo-Arab","Schleswig Coldblood","Schwarzwälder Kaltblut","Selale","Sella Italiano","Selle Français","Shagya Arabian","Shan Horse","Shire Horse","Siciliano Indigeno","Silesian Horse","Sokolsky Horse","Sorraia","South German Coldblood","Soviet Heavy Draft","Spanish Anglo-Arab","Spanish Barb","Spanish Jennet Horse","Spanish Mustang","Spanish Tarpan","Spanish-Norman Horse","Spiti Horse","Spotted Saddle Horse","Standardbred Horse","Suffolk Punch","Swedish Ardennes","Swedish Warmblood","Swedish coldblood trotter","Swiss Warmblood","Taishū Horse","Takhi","Tawleed","Tchernomor","Tennessee Walking Horse","Tersk Horse","Thoroughbred","Tiger Horse","Tinker Horse","Tolfetano","Tori Horse","Trait Du Nord","Trakehner","Tsushima","Tuigpaard","Ukrainian Riding Horse","Unmol Horse","Uzunyayla","Ventasso Horse","Virginia Highlander","Vlaamperd","Vladimir Heavy Draft","Vyatka","Waler","Waler Horse","Walkaloosa","Warlander","Warmblood","Welsh Cob","Westphalian Horse","Wielkopolski","Württemberger","Xilingol Horse","Yakutian Horse","Yili Horse","Yonaguni Horse","Zaniskari","Zhemaichu","Zweibrücker","Žemaitukas"],insect:["Acacia-ants","Acorn-plum gall","Aerial yellowjacket","Africanized honey bee","Allegheny mound ant","Almond stone wasp","Ant","Arboreal ant","Argentine ant","Asian paper wasp","Baldfaced hornet","Bee","Bigheaded ant","Black and yellow mud dauber","Black carpenter ant","Black imported fire ant","Blue horntail woodwasp","Blue orchard bee","Braconid wasp","Bumble bee","Carpenter ant","Carpenter wasp","Chalcid wasp","Cicada killer","Citrus blackfly parasitoid","Common paper wasp","Crazy ant","Cuckoo wasp","Cynipid gall wasp","Eastern Carpenter bee","Eastern yellowjacket","Elm sawfly","Encyrtid wasp","Erythrina gall wasp","Eulophid wasp","European hornet","European imported fire ant","False honey ant","Fire ant","Forest bachac","Forest yellowjacket","German yellowjacket","Ghost ant","Giant ichneumon wasp","Giant resin bee","Giant wood wasp","Golden northern bumble bee","Golden paper wasp","Gouty oak gall","Grass Carrying Wasp","Great black wasp","Great golden digger wasp","Hackberry nipple gall parasitoid","Honey bee","Horned oak gall","Horse guard wasp","Hunting wasp","Ichneumonid wasp","Keyhole wasp","Knopper gall","Large garden bumble bee","Large oak-apple gall","Leafcutting bee","Little fire ant","Little yellow ant","Long-horned bees","Long-legged ant","Macao paper wasp","Mallow bee","Marble gall","Mossyrose gall wasp","Mud-daubers","Multiflora rose seed chalcid","Oak apple gall wasp","Oak rough bulletgall wasp","Oak saucer gall","Oak shoot sawfly","Odorous house ant","Orange-tailed bumble bee","Orangetailed potter wasp","Oriental chestnut gall wasp","Paper wasp","Pavement ant","Pigeon tremex","Pip gall wasp","Prairie yellowjacket","Pteromalid wasp","Pyramid ant","Raspberry Horntail","Red ant","Red carpenter ant","Red harvester ant","Red imported fire ant","Red wasp","Red wood ant","Red-tailed wasp","Reddish carpenter ant","Rough harvester ant","Sawfly parasitic wasp","Scale parasitoid","Silky ant","Sirex woodwasp","Siricid woodwasp","Smaller yellow ant","Southeastern blueberry bee","Southern fire ant","Southern yellowjacket","Sphecid wasp","Stony gall","Sweat bee","Texas leafcutting ant","Tiphiid wasp","Torymid wasp","Tramp ant","Valentine ant","Velvet ant","Vespid wasp","Weevil parasitoid","Western harvester ant","Western paper wasp","Western thatching ant","Western yellowjacket","White-horned horntail","Willow shoot sawfly","Woodwasp","Wool sower gall maker","Yellow Crazy Ant","Yellow and black potter wasp","Yellow-horned horntail"],lion:["Asiatic Lion","Barbary Lion","Cape lion","Masai Lion","Northeast Congo Lion","Transvaal lion","West African Lion"],rabbit:["American","American Chinchilla","American Fuzzy Lop","American Sable","Argente Brun","Belgian Hare","Beveren","Blanc de Hotot","Britannia Petite","Californian","Champagne D’Argent","Checkered Giant","Cinnamon","Crème D’Argent","Dutch","Dwarf Hotot","English Angora","English Lop","English Spot","Flemish Giant","Florida White","French Angora","French Lop","Giant Angora","Giant Chinchilla","Harlequin","Havana","Himalayan","Holland Lop","Jersey Wooly","Lilac","Lionhead","Mini Lop","Mini Rex","Mini Satin","Netherland Dwarf","New Zealand","Palomino","Polish","Rex","Rhinelander","Satin","Satin Angora","Silver","Silver Fox","Silver Marten","Standard Chinchilla","Tan","Thrianta"],rodent:["Abrocoma","Abrocoma schistacea","Aconaemys","Aconaemys porteri","African brush-tailed porcupine","Andean mountain cavy","Argentine tuco-tuco","Ashy chinchilla rat","Asiatic brush-tailed porcupine","Atherurus","Azara's agouti","Azara's tuco-tuco","Bahia porcupine","Bathyergus","Bathyergus janetta","Bathyergus suillus","Bennett's chinchilla rat","Bicolored-spined porcupine","Black agouti","Black dwarf porcupine","Black-rumped agouti","Black-tailed hairy dwarf porcupine","Bolivian chinchilla rat","Bolivian tuco-tuco","Bonetto's tuco-tuco","Brandt's yellow-toothed cavy","Brazilian guinea pig","Brazilian porcupine","Brazilian tuco-tuco","Bridge's degu","Brown hairy dwarf porcupine","Budin's chinchilla rat, A. budini","Cape porcupine","Catamarca tuco-tuco","Cavia","Central American agouti","Chacoan tuco-tuco","Chilean rock rat","Chinchilla","Coendou","Coiban agouti","Colburn's tuco-tuco","Collared tuco-tuco","Common degu","Common yellow-toothed cavy","Conover's tuco-tuco","Coruro","Crested agouti","Crested porcupine","Cryptomys","Cryptomys bocagei","Cryptomys damarensis","Cryptomys foxi","Cryptomys hottentotus","Cryptomys mechowi","Cryptomys ochraceocinereus","Cryptomys zechi","Ctenomys","Cuniculus","Cuscomys","Cuscomys ashanika","Dactylomys","Dactylomys boliviensis","Dactylomys dactylinus","Dactylomys peruanus","Dasyprocta","Domestic guinea pig","Emily's tuco-tuco","Erethizon","Famatina chinchilla rat","Frosted hairy dwarf porcupine","Fukomys","Fukomys amatus","Fukomys anselli","Fukomys bocagei","Fukomys damarensis","Fukomys darlingi","Fukomys foxi","Fukomys ilariae","Fukomys kafuensis","Fukomys mechowii","Fukomys micklemi","Fukomys occlusus","Fukomys ochraceocinereus","Fukomys whytei","Fukomys zechi","Furtive tuco-tuco","Galea","Georychus","Georychus capensis","Golden viscacha-rat","Goya tuco-tuco","Greater guinea pig","Green acouchi","Haig's tuco-tuco","Heliophobius","Heliophobius argenteocinereus","Heterocephalus","Heterocephalus glaber","Highland tuco-tuco","Hystrix","Indian porcupine","Isla Mocha degu","Kalinowski agouti","Kannabateomys","Kannabateomys amblyonyx","Lagidium","Lagostomus","Lewis' tuco-tuco","Long-tailed chinchilla","Long-tailed porcupine","Los Chalchaleros' viscacha-rat","Lowland paca","Magellanic tuco-tuco","Malayan porcupine","Maule tuco-tuco","Mendoza tuco-tuco","Mexican agouti","Mexican hairy dwarf porcupine","Microcavia","Montane guinea pig","Moon-toothed degu","Mottled tuco-tuco","Mountain degu","Mountain paca","Mountain viscacha-rat","Myoprocta","Natterer's tuco-tuco","North American porcupine","Northern viscacha","Octodon","Octodontomys","Octomys","Olallamys","Olallamys albicauda","Olallamys edax","Orinoco agouti","Paraguaian hairy dwarf porcupine","Pearson's tuco-tuco","Peruvian tuco-tuco","Philippine porcupine","Pipanacoctomys","Plains viscacha","Plains viscacha-rat","Porteous' tuco-tuco","Punta de Vacas chinchilla rat","Red acouchi","Red-rumped agouti","Reddish tuco-tuco","Rio Negro tuco-tuco","Robust tuco-tuco","Roosmalen's dwarf porcupine","Rothschild's porcupine","Ruatan Island agouti","Sage's rock rat","Salinoctomys","Salta tuco-tuco","San Luis tuco-tuco","Santa Catarina's guinea pig","Shiny guinea pig","Shipton's mountain cavy","Short-tailed chinchilla","Silky tuco-tuco","Social tuco-tuco","Southern mountain cavy","Southern tuco-tuco","Southern viscacha","Spalacopus","Spix's yellow-toothed cavy","Steinbach's tuco-tuco","Streaked dwarf porcupine","Strong tuco-tuco","Stump-tailed porcupine","Sumatran porcupine","Sunda porcupine","Talas tuco-tuco","Tawny tuco-tuco","Thick-spined porcupine","Tiny tuco-tuco","Trichys","Tucuman tuco-tuco","Tympanoctomys","Uspallata chinchilla rat","White-toothed tuco-tuco","Wolffsohn's viscacha"],snake:["Abaco Island boa","Aesculapian snake","African beaked snake","African puff adder","African rock python","African twig snake","African wolf snake","Amazon tree boa","Amazonian palm viper","American Vine Snake","American copperhead","Amethystine python","Anaconda","Andaman cat snake","Andaman cobra","Angolan python","Annulated sea snake","Arabian cobra","Arafura file snake","Arizona black rattlesnake","Arizona coral snake","Aruba rattlesnake","Asian Vine Snake, Whip Snake","Asian cobra","Asian keelback","Asian pipe snake","Asp","Asp viper","Assam keelback","Australian copperhead","Australian scrub python","Baird's rat snake","Baja California lyresnake","Ball Python","Ball python","Bamboo pitviper","Bamboo viper","Banded Flying Snake","Banded cat-eyed snake","Banded krait","Banded pitviper","Banded water cobra","Barbour's pit viper","Barred wolf snake","Beaked sea snake","Beauty rat snake","Beddome's cat snake","Beddome's coral snake","Bimini racer","Bird snake","Bismarck ringed python","Black headed python","Black krait","Black mamba","Black rat snake","Black snake","Black tree cobra","Black-banded trinket snake","Black-headed snake","Black-necked cobra","Black-necked spitting cobra","Black-speckled palm-pitviper","Black-striped keelback","Black-tailed horned pit viper","Blanding's tree snake","Blind snake","Blonde hognose snake","Blood python","Blue krait","Blunt-headed tree snake","Bluntnose viper","Boa","Boa constrictor","Bocourt's water snake","Boelen python","Boiga","Bolivian anaconda","Boomslang","Bornean pitviper","Borneo short-tailed python","Brahminy blind snake","Brazilian coral snake","Brazilian mud Viper","Brazilian smooth snake","Bredl's python","Brongersma's pitviper","Brown snake","Brown spotted pitviper[4]","Brown tree snake","Brown water python","Brown white-lipped python","Buff striped keelback","Bull snake","Burmese keelback","Burmese krait","Burmese python","Burrowing cobra","Burrowing viper","Bush viper","Bushmaster","Buttermilk racer","Calabar python","California kingsnake","Canebrake","Cantil","Cantor's pitviper","Cape cobra","Cape coral snake","Cape gopher snake","Carpet viper","Cascabel","Caspian cobra","Cat snake","Cat-eyed night snake","Cat-eyed snake","Central American lyre snake","Central ranges taipan","Centralian carpet python","Ceylon krait","Chappell Island tiger snake","Checkered garter snake","Checkered keelback","Chicken snake","Chihuahuan ridge-nosed rattlesnake","Children's python","Chinese tree viper","Coachwhip snake","Coastal carpet python","Coastal taipan","Cobra","Collett's snake","Colorado desert sidewinder","Common adder","Common cobra","Common garter snake","Common ground snake","Common keelback","Common lancehead","Common tiger snake","Common worm snake","Congo snake","Congo water cobra","Copperhead","Coral snake","Corn snake","Coronado Island rattlesnake","Cottonmouth","Crossed viper","Crowned snake","Cuban boa","Cuban wood snake","Cyclades blunt-nosed viper","Dauan Island water python","De Schauensee's anaconda","Death Adder","Desert death adder","Desert kingsnake","Desert woma python","Diamond python","Dog-toothed cat snake","Down's tiger snake","Dubois's sea snake","Dumeril's boa","Durango rock rattlesnake","Dusky pigmy rattlesnake","Dusty hognose snake","Dwarf beaked snake","Dwarf boa","Dwarf pipe snake","Dwarf sand adder","Eastern brown snake","Eastern coral snake","Eastern diamondback rattlesnake","Eastern green mamba","Eastern hognose snake","Eastern lyre snake","Eastern mud snake","Eastern racer","Eastern tiger snake","Eastern water cobra","Eastern yellowbelly sad racer","Egg-eater","Egyptian asp","Egyptian cobra","Elegant pitviper","Emerald tree boa","Equatorial spitting cobra","European asp","European smooth snake","Eyelash palm-pitviper","Eyelash pit viper","Eyelash viper","False cobra","False horned viper","False water cobra","Fan-Si-Pan horned pitviper","Fea's viper","Fer-de-lance","Fierce snake","Fifty pacer","Fishing snake","Flat-nosed pitviper","Flinders python","Flying snake","Forest cobra","Forest flame snake","Forsten's cat snake","Fox snake, three species of Pantherophis","Gaboon viper","Garter snake","Giant Malagasy hognose snake","Godman's pit viper","Gold tree cobra","Gold-ringed cat snake","Golden tree snake","Grand Canyon rattlesnake","Grass snake","Gray cat snake","Great Basin rattlesnake","Great Lakes bush viper","Great Plains rat snake","Green anaconda","Green cat-eyed snake","Green mamba","Green palm viper","Green rat snake","Green snake","Green tree pit viper","Green tree python","Grey Lora","Grey-banded kingsnake","Ground snake","Guatemalan palm viper","Guatemalan tree viper","Habu","Habu pit viper","Hagen's pitviper","Hairy bush viper","Halmahera python","Hardwicke's sea snake","Harlequin coral snake","High Woods coral snake","Hill keelback","Himalayan keelback","Hogg Island boa","Hognose snake","Hognosed viper","Honduran palm viper","Hook Nosed Sea Snake","Hopi rattlesnake","Horned adder","Horned desert viper","Horned viper","Horseshoe pitviper","Hundred pacer","Hutton's tree viper","Ikaheka snake","Indian cobra","Indian flying snake","Indian krait","Indian python","Indian tree viper","Indigo snake","Indochinese spitting cobra","Indonesian water python","Inland carpet python","Inland taipan","Jamaican Tree Snake","Jamaican boa","Jan's hognose snake","Japanese forest rat snake","Japanese rat snake","Japanese striped snake","Javan spitting cobra","Jerdon's pitviper","Jumping viper","Jungle carpet python","Kanburian pit viper","Kaulback's lance-headed pitviper","Kayaudi dwarf reticulated python","Kaznakov's viper","Keelback","Kham Plateau pitviper","Khasi Hills keelback","King Island tiger snake","King brown","King cobra","King rat snake","King snake","Krait","Krefft's tiger snake","Lance-headed rattlesnake","Lancehead","Large shield snake","Large-eyed pitviper","Large-scaled tree viper","Leaf viper","Leaf-nosed viper","Lesser black krait","Levant viper","Long-nosed adder","Long-nosed tree snake","Long-nosed viper","Long-nosed whip snake","Long-tailed rattlesnake","Longnosed worm snake","Lora","Lyre snake","Machete savane","Macklot's python","Madagascar ground boa","Madagascar tree boa","Malabar rock pitviper","Malayan krait","Malayan long-glanded coral snake","Malayan pit viper","Malcolm's tree viper","Mamba","Mamushi","Manchurian Black Water Snake","Mandalay cobra","Mandarin rat snake","Mangrove pit viper","Mangrove snake","Mangshan pitviper","Many-banded krait","Many-banded tree snake","Many-horned adder","Many-spotted cat snake","Massasauga rattlesnake","McMahon's viper","Mexican black kingsnake","Mexican green rattlesnake","Mexican hognose snake","Mexican palm-pitviper","Mexican parrot snake","Mexican racer","Mexican vine snake","Mexican west coast rattlesnake","Midget faded rattlesnake","Milk snake","Moccasin snake","Modest keelback","Mojave desert sidewinder","Mojave rattlesnake","Mole viper","Mollucan python","Moluccan flying snake","Montpellier snake","Motuo bamboo pitviper","Mountain adder","Mozambique spitting cobra","Mud adder","Mud snake","Mussurana","Namaqua dwarf adder","Namib dwarf sand adder","Narrowhead Garter Snake","New Guinea carpet python","Nichell snake","Nicobar Island keelback","Nicobar bamboo pitviper","Night snake","Nightingale adder","Nilgiri keelback","Nitsche's bush viper","Nitsche's tree viper","North Philippine cobra","North eastern king snake","Northeastern hill krait","Northern black-tailed rattlesnake","Northern tree snake","Northern water snake","Northern white-lipped python","Northwestern carpet python","Nose-horned viper","Nubian spitting cobra","Oaxacan small-headed rattlesnake","Oenpelli python","Olive python","Olive sea snake","Orange-collared keelback","Ornate flying snake","Palestine viper","Pallas' viper","Palm viper","Papuan python","Paradise flying snake","Parrot snake","Patchnose snake","Paupan taipan","Pelagic sea snake","Peninsula tiger snake","Peringuey's adder","Perrotet's shieldtail snake","Persian rat snake","Philippine cobra","Philippine pitviper","Pine snake","Pipe snake","Pit viper","Pointed-scaled pit viper[5]","Pope's tree viper","Portuguese viper","Prairie kingsnake","Puerto Rican boa","Puff adder","Pygmy python","Python","Queen snake","Racer","Raddysnake","Rainbow boa","Rat snake","Rattler","Rattlesnake","Red blood python","Red diamond rattlesnake","Red spitting cobra","Red-backed rat snake","Red-bellied black snake","Red-headed krait","Red-necked keelback","Red-tailed bamboo pitviper","Red-tailed boa","Red-tailed pipe snake","Reticulated python","Rhinoceros viper","Rhombic night adder","Ribbon snake","Rinkhals","Rinkhals cobra","River jack","Rosy boa","Rough green snake","Rough-scaled bush viper","Rough-scaled python","Rough-scaled tree viper","Royal python","Rubber boa","Rufous beaked snake","Rungwe tree viper","San Francisco garter snake","Sand adder","Sand boa","Savu python","Saw-scaled viper","Scarlet kingsnake","Schlegel's viper","Schultze's pitviper","Sea snake","Sedge viper","Selayer reticulated python","Sharp-nosed viper","Shield-nosed cobra","Shield-tailed snake","Siamese palm viper","Side-striped palm-pitviper","Sidewinder","Sikkim keelback","Sinai desert cobra","Sind krait","Small-eyed snake","Smooth green snake","Smooth snake","Snorkel viper","Snouted cobra","Sonoran sidewinder","South American hognose snake","South eastern corn snake","Southern Indonesian spitting cobra","Southern Pacific rattlesnake","Southern Philippine cobra","Southern black racer","Southern white-lipped python","Southwestern black spitting cobra","Southwestern blackhead snake","Southwestern carpet python","Southwestern speckled rattlesnake","Speckle-bellied keelback","Speckled kingsnake","Spectacled cobra","Spiny bush viper","Spitting cobra","Spotted python","Sri Lankan pit viper","Stejneger's bamboo pitviper","Stiletto snake","Stimson's python","Stoke's sea snake","Storm water cobra","Striped snake","Sumatran short-tailed python","Sumatran tree viper","Sunbeam snake","Taipan","Taiwan cobra","Tan racer","Tancitaran dusky rattlesnake","Tanimbar python","Tasmanian tiger snake","Tawny cat snake","Temple pit viper","Temple viper","Tentacled snake","Texas Coral Snake","Texas blind snake","Texas garter snake","Texas lyre snake","Texas night snake","Thai cobra","Three-lined ground snake","Tibetan bamboo pitviper","Tic polonga","Tiger pit viper","Tiger rattlesnake","Tiger snake","Tigre snake","Timber rattlesnake","Timor python","Titanboa","Tree boa","Tree snake","Tree viper","Trinket snake","Tropical rattlesnake","Twig snake","Twin Headed King Snake","Twin-Barred tree snake","Twin-spotted rat snake","Twin-spotted rattlesnake","Undulated pit viper","Uracoan rattlesnake","Ursini's viper","Urutu","Vine snake","Viper","Viper Adder","Vipera ammodytes","Wagler's pit viper","Wart snake","Water adder","Water moccasin","Water snake","West Indian racer","Western blind snake","Western carpet python","Western coral snake","Western diamondback rattlesnake","Western green mamba","Western ground snake","Western hog-nosed viper","Western mud snake","Western tiger snake","Western woma python","Wetar Island python","Whip snake","White-lipped keelback","White-lipped python","White-lipped tree viper","Wirot's pit viper","Wolf snake","Woma python","Worm snake","Wutu","Wynaad keelback","Yarara","Yellow anaconda","Yellow-banded sea snake","Yellow-bellied sea snake","Yellow-lined palm viper","Yellow-lipped sea snake","Yellow-striped rat snake","Yunnan keelback","Zebra snake","Zebra spitting cobra"],type:["bat","bear","bee","bird","butterfly","cat","cow","crocodile","deer","dog","dolphin","eagle","elephant","fish","flamingo","fox","frog","gecko","giraffe","gorilla","hamster","hippopotamus","horse","kangaroo","koala","lion","monkey","ostrich","panda","parrot","peacock","penguin","polar bear","rabbit","rhinoceros","sea lion","shark","snake","squirrel","tiger","turtle","whale","wolf","zebra"]},app:{author:["{{person.name}}","{{company.name}}"],name:["Redhold","Treeflex","Trippledex","Kanlam","Bigtax","Daltfresh","Toughjoyfax","Mat Lam Tam","Otcom","Tres-Zap","Y-Solowarm","Tresom","Voltsillam","Biodex","Greenlam","Viva","Matsoft","Temp","Zoolab","Subin","Rank","Job","Stringtough","Tin","It","Home Ing","Zamit","Sonsing","Konklab","Alpha","Latlux","Voyatouch","Alphazap","Holdlamis","Zaam-Dox","Sub-Ex","Quo Lux","Bamity","Ventosanzap","Lotstring","Hatity","Tempsoft","Overhold","Fixflex","Konklux","Zontrax","Tampflex","Span","Namfix","Transcof","Stim","Fix San","Sonair","Stronghold","Fintone","Y-find","Opela","Lotlux","Ronstring","Zathin","Duobam","Keylex"],version:["0.#.#","0.##","#.##","#.#","#.#.#"]},cell_phone:{formats:["###-###-####","(###) ###-####","1-###-###-####","###.###.####"]},color:{human:["azure","black","blue","cyan","fuchsia","gold","green","grey","indigo","ivory","lavender","lime","magenta","maroon","mint green","olive","orange","orchid","pink","plum","purple","red","salmon","silver","sky blue","tan","teal","turquoise","violet","white","yellow"]},commerce:{department:["Automotive","Baby","Beauty","Books","Clothing","Computers","Electronics","Games","Garden","Grocery","Health","Home","Industrial","Jewelry","Kids","Movies","Music","Outdoors","Shoes","Sports","Tools","Toys"],product_description:["Andy shoes are designed to keeping in mind durability as well as trends, the most stylish range of shoes & sandals","Boston's most advanced compression wear technology increases muscle oxygenation, stabilizes active muscles","Carbonite web goalkeeper gloves are ergonomically designed to give easy fit","Ergonomic executive chair upholstered in bonded black leather and PVC padded seat and back for all-day comfort and support","New ABC 13 9370, 13.3, 5th Gen CoreA5-8250U, 8GB RAM, 256GB SSD, power UHD Graphics, OS 10 Home, OS Office A & J 2016","New range of formal shirts are designed keeping you in mind. With fits and styling that will make you stand apart","The Apollotech B340 is an affordable wireless mouse with reliable connectivity, 12 months battery life and modern design","The Football Is Good For Training And Recreational Purposes","The Nagasaki Lander is the trademarked name of several series of Nagasaki sport bikes, that started with the 1984 ABC800J","The automobile layout consists of a front-engine design, with transaxle-type transmissions mounted at the rear of the engine and four wheel drive","The beautiful range of Apple Naturalé that has an exciting mix of natural ingredients. With the Goodness of 100% Natural Ingredients","The slim & simple Maple Gaming Keyboard from Dev Byte comes with a sleek body and 7- Color RGB LED Back-lighting for smart functionality"],product_name:{adjective:["Awesome","Bespoke","Electronic","Elegant","Ergonomic","Fantastic","Generic","Gorgeous","Handcrafted","Handmade","Incredible","Intelligent","Licensed","Luxurious","Modern","Oriental","Practical","Recycled","Refined","Rustic","Sleek","Small","Tasty","Unbranded"],material:["Bronze","Concrete","Cotton","Fresh","Frozen","Granite","Metal","Plastic","Rubber","Soft","Steel","Wooden"],product:["Bacon","Ball","Bike","Car","Chair","Cheese","Chicken","Chips","Computer","Fish","Gloves","Hat","Keyboard","Mouse","Pants","Pizza","Salad","Sausages","Shirt","Shoes","Soap","Table","Towels","Tuna"]}},company:{adjective:["Adaptive","Advanced","Ameliorated","Assimilated","Automated","Balanced","Business-focused","Centralized","Cloned","Compatible","Configurable","Cross-group","Cross-platform","Customer-focused","Customizable","De-engineered","Decentralized","Devolved","Digitized","Distributed","Diverse","Down-sized","Enhanced","Enterprise-wide","Ergonomic","Exclusive","Expanded","Extended","Face to face","Focused","Front-line","Fully-configurable","Function-based","Fundamental","Future-proofed","Grass-roots","Horizontal","Implemented","Innovative","Integrated","Intuitive","Inverse","Managed","Mandatory","Monitored","Multi-channelled","Multi-lateral","Multi-layered","Multi-tiered","Networked","Object-based","Open-architected","Open-source","Operative","Optimized","Optional","Organic","Organized","Persevering","Persistent","Phased","Polarised","Pre-emptive","Proactive","Profit-focused","Profound","Programmable","Progressive","Public-key","Quality-focused","Re-contextualized","Re-engineered","Reactive","Realigned","Reduced","Reverse-engineered","Right-sized","Robust","Seamless","Secured","Self-enabling","Sharable","Stand-alone","Streamlined","Switchable","Synchronised","Synergistic","Synergized","Team-oriented","Total","Triple-buffered","Universal","Up-sized","Upgradable","User-centric","User-friendly","Versatile","Virtual","Vision-oriented","Visionary"],buzz_adjective:["24/365","24/7","B2B","B2C","back-end","best-of-breed","bleeding-edge","bricks-and-clicks","clicks-and-mortar","collaborative","compelling","cross-media","cross-platform","customized","cutting-edge","distributed","dot-com","dynamic","e-business","efficient","end-to-end","enterprise","extensible","frictionless","front-end","global","granular","holistic","impactful","innovative","integrated","interactive","intuitive","killer","leading-edge","magnetic","mission-critical","next-generation","one-to-one","open-source","out-of-the-box","plug-and-play","proactive","real-time","revolutionary","rich","robust","scalable","seamless","sexy","sticky","strategic","synergistic","transparent","turn-key","ubiquitous","user-centric","value-added","vertical","viral","virtual","visionary","web-enabled","wireless","world-class"],buzz_noun:["ROI","action-items","applications","architectures","bandwidth","blockchains","channels","communities","content","convergence","deliverables","e-business","e-commerce","e-markets","experiences","eyeballs","functionalities","infrastructures","initiatives","interfaces","lifetime value","markets","methodologies","metrics","mindshare","models","networks","niches","paradigms","partnerships","platforms","portals","relationships","schemas","solutions","supply-chains","synergies","systems","technologies","users","web services"],buzz_verb:["aggregate","architect","benchmark","brand","cultivate","deliver","deploy","disintermediate","drive","e-enable","embrace","empower","enable","engage","engineer","enhance","envisioneer","evolve","expedite","exploit","extend","facilitate","generate","grow","harness","implement","incentivize","incubate","innovate","integrate","iterate","leverage","matrix","maximize","mesh","monetize","morph","optimize","orchestrate","productize","recontextualize","redefine","reintermediate","reinvent","repurpose","revolutionize","scale","seize","strategize","streamline","syndicate","synergize","synthesize","target","transform","transition","unleash","utilize","visualize","whiteboard"],descriptor:["24 hour","24/7","3rd generation","4th generation","5th generation","6th generation","actuating","analyzing","asymmetric","asynchronous","attitude-oriented","background","bandwidth-monitored","bi-directional","bifurcated","bottom-line","clear-thinking","client-driven","client-server","coherent","cohesive","composite","content-based","context-sensitive","contextually-based","dedicated","demand-driven","didactic","directional","discrete","disintermediate","dynamic","eco-centric","empowering","encompassing","even-keeled","executive","explicit","exuding","fault-tolerant","foreground","fresh-thinking","full-range","global","grid-enabled","heuristic","high-level","holistic","homogeneous","human-resource","hybrid","impactful","incremental","intangible","interactive","intermediate","leading edge","local","logistical","maximized","methodical","mission-critical","mobile","modular","motivating","multi-state","multi-tasking","multimedia","national","needs-based","neutral","next generation","non-volatile","object-oriented","optimal","optimizing","radical","real-time","reciprocal","regional","responsive","scalable","secondary","solution-oriented","stable","static","system-worthy","systematic","systemic","tangible","tertiary","transitional","uniform","upward-trending","user-facing","value-added","web-enabled","well-modulated","zero administration","zero defect","zero tolerance"],legal_entity_type:["Group","Inc","LLC","and Sons"],name_pattern:["{{person.last_name.generic}} - {{person.last_name.generic}}","{{person.last_name.generic}} {{company.legal_entity_type}}","{{person.last_name.generic}}, {{person.last_name.generic}} and {{person.last_name.generic}}"],noun:["Graphic Interface","Graphical User Interface","ability","access","adapter","algorithm","alliance","analyzer","application","approach","architecture","archive","array","artificial intelligence","attitude","benchmark","budgetary management","capability","capacity","challenge","circuit","collaboration","complexity","concept","conglomeration","contingency","core","customer loyalty","data-warehouse","database","definition","emulation","encoding","encryption","extranet","firmware","flexibility","focus group","forecast","frame","framework","function","functionalities","groupware","hardware","help-desk","hierarchy","hub","implementation","info-mediaries","infrastructure","initiative","installation","instruction set","interface","internet solution","intranet","knowledge base","knowledge user","leverage","local area network","matrices","matrix","methodology","middleware","migration","model","moderator","monitoring","moratorium","neural-net","open architecture","open system","orchestration","paradigm","parallelism","policy","portal","pricing structure","process improvement","product","productivity","project","projection","protocol","secured line","service-desk","software","solution","standardization","strategy","structure","success","superstructure","support","synergy","system engine","task-force","throughput","time-frame","toolset","utilisation","website","workforce"]},database:{column:["avatar","category","comment","createdAt","email","group","id","name","password","phone","status","title","token","updatedAt"]},date:{month:{wide:["April","August","December","February","January","July","June","March","May","November","October","September"],abbr:["Apr","Aug","Dec","Feb","Jan","Jul","Jun","Mar","May","Nov","Oct","Sep"]},weekday:{wide:["Friday","Monday","Saturday","Sunday","Thursday","Tuesday","Wednesday"],abbr:["Fri","Mon","Sat","Sun","Thu","Tue","Wed"]}},finance:{account_type:["Auto Loan","Checking","Credit Card","Home Loan","Investment","Money Market","Personal Loan","Savings"],credit_card:{american_express:["34##-######-####L","37##-######-####L"],diners_club:["30[0-5]#-######-###L","36##-######-###L","54##-####-####-###L"],discover:["6011-####-####-###L","6011-62##-####-####-###L","64[4-9]#-####-####-###L","64[4-9]#-62##-####-####-###L","65##-####-####-###L","65##-62##-####-####-###L"],jcb:["3528-####-####-###L","3529-####-####-###L","35[3-8]#-####-####-###L"],mastercard:["2[221-720]-####-####-###L","5[1-5]##-####-####-###L"],visa:["4###########L","4###-####-####-###L"]},currency:[{name:"UAE Dirham",code:"AED",symbol:""},{name:"Afghani",code:"AFN",symbol:"؋"},{name:"Lek",code:"ALL",symbol:"Lek"},{name:"Armenian Dram",code:"AMD",symbol:""},{name:"Netherlands Antillian Guilder",code:"ANG",symbol:"ƒ"},{name:"Kwanza",code:"AOA",symbol:""},{name:"Argentine Peso",code:"ARS",symbol:"$"},{name:"Australian Dollar",code:"AUD",symbol:"$"},{name:"Aruban Guilder",code:"AWG",symbol:"ƒ"},{name:"Azerbaijanian Manat",code:"AZN",symbol:"ман"},{name:"Convertible Marks",code:"BAM",symbol:"KM"},{name:"Barbados Dollar",code:"BBD",symbol:"$"},{name:"Taka",code:"BDT",symbol:""},{name:"Bulgarian Lev",code:"BGN",symbol:"лв"},{name:"Bahraini Dinar",code:"BHD",symbol:""},{name:"Burundi Franc",code:"BIF",symbol:""},{name:"Bermudian Dollar (customarily known as Bermuda Dollar)",code:"BMD",symbol:"$"},{name:"Brunei Dollar",code:"BND",symbol:"$"},{name:"Boliviano boliviano",code:"BOB",symbol:"Bs"},{name:"Brazilian Real",code:"BRL",symbol:"R$"},{name:"Bahamian Dollar",code:"BSD",symbol:"$"},{name:"Pula",code:"BWP",symbol:"P"},{name:"Belarusian Ruble",code:"BYN",symbol:"Rbl"},{name:"Belize Dollar",code:"BZD",symbol:"BZ$"},{name:"Canadian Dollar",code:"CAD",symbol:"$"},{name:"Congolese Franc",code:"CDF",symbol:""},{name:"Swiss Franc",code:"CHF",symbol:"CHF"},{name:"Chilean Peso",code:"CLP",symbol:"$"},{name:"Yuan Renminbi",code:"CNY",symbol:"¥"},{name:"Colombian Peso",code:"COP",symbol:"$"},{name:"Costa Rican Colon",code:"CRC",symbol:"₡"},{name:"Cuban Peso",code:"CUP",symbol:"₱"},{name:"Cape Verde Escudo",code:"CVE",symbol:""},{name:"Czech Koruna",code:"CZK",symbol:"Kč"},{name:"Djibouti Franc",code:"DJF",symbol:""},{name:"Danish Krone",code:"DKK",symbol:"kr"},{name:"Dominican Peso",code:"DOP",symbol:"RD$"},{name:"Algerian Dinar",code:"DZD",symbol:""},{name:"Egyptian Pound",code:"EGP",symbol:"£"},{name:"Nakfa",code:"ERN",symbol:""},{name:"Ethiopian Birr",code:"ETB",symbol:""},{name:"Euro",code:"EUR",symbol:"€"},{name:"Fiji Dollar",code:"FJD",symbol:"$"},{name:"Falkland Islands Pound",code:"FKP",symbol:"£"},{name:"Pound Sterling",code:"GBP",symbol:"£"},{name:"Lari",code:"GEL",symbol:""},{name:"Cedi",code:"GHS",symbol:""},{name:"Gibraltar Pound",code:"GIP",symbol:"£"},{name:"Dalasi",code:"GMD",symbol:""},{name:"Guinea Franc",code:"GNF",symbol:""},{name:"Quetzal",code:"GTQ",symbol:"Q"},{name:"Guyana Dollar",code:"GYD",symbol:"$"},{name:"Hong Kong Dollar",code:"HKD",symbol:"$"},{name:"Lempira",code:"HNL",symbol:"L"},{name:"Gourde",code:"HTG",symbol:""},{name:"Forint",code:"HUF",symbol:"Ft"},{name:"Rupiah",code:"IDR",symbol:"Rp"},{name:"New Israeli Sheqel",code:"ILS",symbol:"₪"},{name:"Bhutanese Ngultrum",code:"BTN",symbol:"Nu"},{name:"Indian Rupee",code:"INR",symbol:"₹"},{name:"Iraqi Dinar",code:"IQD",symbol:""},{name:"Iranian Rial",code:"IRR",symbol:"﷼"},{name:"Iceland Krona",code:"ISK",symbol:"kr"},{name:"Jamaican Dollar",code:"JMD",symbol:"J$"},{name:"Jordanian Dinar",code:"JOD",symbol:""},{name:"Yen",code:"JPY",symbol:"¥"},{name:"Kenyan Shilling",code:"KES",symbol:""},{name:"Som",code:"KGS",symbol:"лв"},{name:"Riel",code:"KHR",symbol:"៛"},{name:"Comoro Franc",code:"KMF",symbol:""},{name:"North Korean Won",code:"KPW",symbol:"₩"},{name:"Won",code:"KRW",symbol:"₩"},{name:"Kuwaiti Dinar",code:"KWD",symbol:""},{name:"Cayman Islands Dollar",code:"KYD",symbol:"$"},{name:"Tenge",code:"KZT",symbol:"лв"},{name:"Kip",code:"LAK",symbol:"₭"},{name:"Lebanese Pound",code:"LBP",symbol:"£"},{name:"Sri Lanka Rupee",code:"LKR",symbol:"₨"},{name:"Liberian Dollar",code:"LRD",symbol:"$"},{name:"Libyan Dinar",code:"LYD",symbol:""},{name:"Moroccan Dirham",code:"MAD",symbol:""},{name:"Moldovan Leu",code:"MDL",symbol:""},{name:"Malagasy Ariary",code:"MGA",symbol:""},{name:"Denar",code:"MKD",symbol:"ден"},{name:"Kyat",code:"MMK",symbol:""},{name:"Tugrik",code:"MNT",symbol:"₮"},{name:"Pataca",code:"MOP",symbol:""},{name:"Ouguiya",code:"MRU",symbol:""},{name:"Mauritius Rupee",code:"MUR",symbol:"₨"},{name:"Rufiyaa",code:"MVR",symbol:""},{name:"Kwacha",code:"MWK",symbol:""},{name:"Mexican Peso",code:"MXN",symbol:"$"},{name:"Malaysian Ringgit",code:"MYR",symbol:"RM"},{name:"Metical",code:"MZN",symbol:"MT"},{name:"Naira",code:"NGN",symbol:"₦"},{name:"Cordoba Oro",code:"NIO",symbol:"C$"},{name:"Norwegian Krone",code:"NOK",symbol:"kr"},{name:"Nepalese Rupee",code:"NPR",symbol:"₨"},{name:"New Zealand Dollar",code:"NZD",symbol:"$"},{name:"Rial Omani",code:"OMR",symbol:"﷼"},{name:"Balboa",code:"PAB",symbol:"B/."},{name:"Nuevo Sol",code:"PEN",symbol:"S/."},{name:"Kina",code:"PGK",symbol:""},{name:"Philippine Peso",code:"PHP",symbol:"Php"},{name:"Pakistan Rupee",code:"PKR",symbol:"₨"},{name:"Zloty",code:"PLN",symbol:"zł"},{name:"Guarani",code:"PYG",symbol:"Gs"},{name:"Qatari Rial",code:"QAR",symbol:"﷼"},{name:"New Leu",code:"RON",symbol:"lei"},{name:"Serbian Dinar",code:"RSD",symbol:"Дин."},{name:"Russian Ruble",code:"RUB",symbol:"руб"},{name:"Rwanda Franc",code:"RWF",symbol:""},{name:"Saudi Riyal",code:"SAR",symbol:"﷼"},{name:"Solomon Islands Dollar",code:"SBD",symbol:"$"},{name:"Seychelles Rupee",code:"SCR",symbol:"₨"},{name:"Sudanese Pound",code:"SDG",symbol:""},{name:"Swedish Krona",code:"SEK",symbol:"kr"},{name:"Singapore Dollar",code:"SGD",symbol:"$"},{name:"Saint Helena Pound",code:"SHP",symbol:"£"},{name:"Leone",code:"SLE",symbol:""},{name:"Somali Shilling",code:"SOS",symbol:"S"},{name:"Surinam Dollar",code:"SRD",symbol:"$"},{name:"South Sudanese pound",code:"SSP",symbol:""},{name:"Dobra",code:"STN",symbol:"Db"},{name:"Syrian Pound",code:"SYP",symbol:"£"},{name:"Lilangeni",code:"SZL",symbol:""},{name:"Baht",code:"THB",symbol:"฿"},{name:"Somoni",code:"TJS",symbol:""},{name:"Manat",code:"TMT",symbol:""},{name:"Tunisian Dinar",code:"TND",symbol:""},{name:"Pa'anga",code:"TOP",symbol:""},{name:"Turkish Lira",code:"TRY",symbol:"₺"},{name:"Trinidad and Tobago Dollar",code:"TTD",symbol:"TT$"},{name:"New Taiwan Dollar",code:"TWD",symbol:"NT$"},{name:"Tanzanian Shilling",code:"TZS",symbol:""},{name:"Hryvnia",code:"UAH",symbol:"₴"},{name:"Uganda Shilling",code:"UGX",symbol:""},{name:"US Dollar",code:"USD",symbol:"$"},{name:"Peso Uruguayo",code:"UYU",symbol:"$U"},{name:"Uzbekistan Sum",code:"UZS",symbol:"лв"},{name:"Venezuelan bolívar",code:"VES",symbol:"Bs"},{name:"Dong",code:"VND",symbol:"₫"},{name:"Vatu",code:"VUV",symbol:""},{name:"Tala",code:"WST",symbol:""},{name:"CFA Franc BEAC",code:"XAF",symbol:""},{name:"East Caribbean Dollar",code:"XCD",symbol:"$"},{name:"CFA Franc BCEAO",code:"XOF",symbol:""},{name:"CFP Franc",code:"XPF",symbol:""},{name:"Yemeni Rial",code:"YER",symbol:"﷼"},{name:"Rand",code:"ZAR",symbol:"R"},{name:"Lesotho Loti",code:"LSL",symbol:""},{name:"Namibia Dollar",code:"NAD",symbol:"N$"},{name:"Zambian Kwacha",code:"ZMW",symbol:"K"},{name:"Zimbabwe Dollar",code:"ZWL",symbol:""}],transaction_type:["deposit","invoice","payment","withdrawal"]},food:{adjective:["bitter","creamy","crispy","crunchy","delicious","fluffy","fresh","golden","juicy","moist","rich","salty","savory","smoky","sour","spicy","sweet","tangy","tender","zesty"],description_pattern:["A classic pie filled with delicious {{food.meat}} and {{food.adjective}} {{food.ingredient}}, baked in a {{food.adjective}} pastry crust and topped with a golden-brown lattice.","A delightful tart combining {{food.adjective}} {{food.vegetable}} and sweet {{food.fruit}}, set in a buttery pastry shell and finished with a hint of {{food.spice}}.","A heartwarming {{food.ethnic_category}} soup, featuring fresh {{food.ingredient}} and an aromatic blend of traditional spices.","A robust {{food.adjective}} stew featuring {{food.ethnic_category}} flavors, loaded with {{food.adjective}} meat, {{food.adjective}} vegetables, and a {{food.adjective}}, {{food.adjective}} broth.","A simple {{food.fruit}} pie. No fancy stuff. Just pie.","A slow-roasted {{animal.bird}} with a {{food.adjective}}, {{food.adjective}} exterior. Stuffed with {{food.fruit}} and covered in {{food.fruit}} sauce. Sides with {{food.vegetable}} puree and wild {{food.vegetable}}.","A special {{color.human}} {{food.ingredient}} from {{location.country}}. To support the strong flavor it is sided with a tablespoon of {{food.spice}}.","A succulent {{food.meat}} steak, encased in a {{food.adjective}} {{food.spice}} crust, served with a side of {{food.spice}} mashed {{food.vegetable}}.","An exquisite {{food.meat}} roast, infused with the essence of {{food.fruit}}, slow-roasted to bring out its natural flavors and served with a side of creamy {{food.vegetable}}","Baked {{food.ingredient}}-stuffed {{food.meat}}, seasoned with {{food.spice}} and {{food.adjective}} herbs, accompanied by roasted {{food.vegetable}} medley.","Crispy fried {{food.meat}} bites, seasoned with {{food.spice}} and served with a tangy {{food.fruit}} dipping sauce.","Fresh mixed greens tossed with {{food.spice}}-rubbed {{food.meat}}, {{food.vegetable}}, and a light dressing.","Fresh {{food.ingredient}} with a pinch of {{food.spice}}, topped by a caramelized {{food.fruit}} with whipped cream","Grilled {{food.meat}} kebabs, marinated in {{food.ethnic_category}} spices and served with a fresh {{food.vegetable}} and {{food.fruit}} salad.","Hearty {{food.ingredient}} and {{food.meat}} stew, slow-cooked with {{food.spice}} and {{food.vegetable}} for a comforting, flavorful meal.","Juicy {{food.meat}}, grilled to your liking and drizzled with a bold {{food.spice}} sauce, served alongside roasted {{food.vegetable}}.","Our {{food.adjective}} {{food.meat}}, slow-cooked to perfection, accompanied by steamed {{food.vegetable}} and a rich, savory gravy.","Tender {{food.meat}} skewers, glazed with a sweet and tangy {{food.fruit}} sauce, served over a bed of fragrant jasmine rice.","Tenderly braised {{food.meat}} in a rich {{food.spice}} and {{food.vegetable}} sauce, served with a side of creamy {{food.vegetable}}.","Three {{food.ingredient}} with {{food.vegetable}}, {{food.vegetable}}, {{food.vegetable}}, {{food.vegetable}} and {{food.ingredient}}. With a side of baked {{food.fruit}}, and your choice of {{food.ingredient}} or {{food.ingredient}}.",'{{number.int({"min":1, "max":99})}}-day aged {{food.meat}} steak, with choice of {{number.int({"min":2, "max":4})}} sides.'],dish:["California maki","Peking duck","Philadelphia maki","arepas","barbecue ribs","bruschette with tomato","bunny chow","caesar salad","caprese salad","cauliflower penne","cheeseburger","chicken fajitas","chicken milanese","chicken parm","chicken wings","chilli con carne","ebiten maki","fettuccine alfredo","fish and chips","french fries with sausages","french toast","hummus","katsu curry","kebab","lasagne","linguine with clams","massaman curry","meatballs with sauce","mushroom risotto","pappardelle alla bolognese","pasta and beans","pasta carbonara","pasta with tomato and basil","pho","pierogi","pizza","poke","pork belly buns","pork sausage roll","poutine","ricotta stuffed ravioli","risotto with seafood","salmon nigiri","scotch eggs","seafood paella","som tam","souvlaki","stinky tofu","sushi","tacos","teriyaki chicken donburi","tiramisù","tuna sashimi","vegetable soup"],dish_pattern:["{{food.adjective}} {{food.ethnic_category}} stew","{{food.adjective}} {{food.meat}} with {{food.vegetable}}","{{food.ethnic_category}} {{food.ingredient}} soup","{{food.fruit}} and {{food.fruit}} tart","{{food.fruit}} pie","{{food.fruit}}-glazed {{food.meat}} skewers","{{food.fruit}}-infused {{food.meat}} roast","{{food.ingredient}} and {{food.meat}} pie","{{food.ingredient}}-infused {{food.meat}}","{{food.meat}} steak","{{food.meat}} with {{food.fruit}} sauce","{{food.spice}}-crusted {{food.meat}}","{{food.spice}}-rubbed {{food.meat}} salad","{{food.vegetable}} salad","{{person.first_name.generic}}'s special {{food.ingredient}}"],ethnic_category:["Ainu","Albanian","American","Andhra","Anglo-Indian","Arab","Argentine","Armenian","Assyrian","Awadhi","Azerbaijani","Balochi","Bangladeshi","Bashkir","Belarusian","Bengali","Berber","Brazilian","British","Buddhist","Bulgarian","Cajun","Cantonese","Caribbean","Chechen","Chinese","Chinese Islamic","Circassian","Crimean Tatar","Cypriot","Czech","Danish","Egyptian","English","Eritrean","Estonian","Ethiopian","Filipino","French","Georgian","German","Goan","Goan Catholic","Greek","Gujarati","Hyderabad","Indian","Indian Chinese","Indian Singaporean","Indonesian","Inuit","Irish","Italian","Italian-American","Jamaican","Japanese","Jewish - Israeli","Karnataka","Kazakh","Keralite","Korean","Kurdish","Laotian","Latvian","Lebanese","Lithuanian","Louisiana Creole","Maharashtrian","Malay","Malaysian Chinese","Malaysian Indian","Mangalorean","Mediterranean","Mennonite","Mexican","Mordovian","Mughal","Native American","Nepalese","New Mexican","Odia","Pakistani","Parsi","Pashtun","Pennsylvania Dutch","Peranakan","Persian","Peruvian","Polish","Portuguese","Punjabi","Québécois","Rajasthani","Romani","Romanian","Russian","Sami","Serbian","Sindhi","Slovak","Slovenian","Somali","South Indian","Soviet","Spanish","Sri Lankan","Taiwanese","Tamil","Tatar","Texan","Thai","Turkish","Udupi","Ukrainian","Vietnamese","Yamal","Zambian","Zanzibari"],fruit:["apple","apricot","aubergine","avocado","banana","berry","blackberry","blood orange","blueberry","bush tomato","butternut pumpkin","cantaloupe","cavalo","cherry","corella pear","cranberry","cumquat","currant","custard apple","custard apples daikon","date","dragonfruit","dried apricot","elderberry","feijoa","fig","fingerlime","goji berry","grape","grapefruit","guava","honeydew melon","incaberry","jarrahdale pumpkin","juniper berry","kiwi fruit","kiwiberry","lemon","lime","longan","loquat","lychee","mandarin","mango","mangosteen","melon","mulberry","nashi pear","nectarine","olive","orange","papaw","papaya","passionfruit","peach","pear","pineapple","plum","pomegranate","prune","rockmelon","snowpea","sprout","starfruit","strawberry","sultana","tangelo","tomato","watermelon"],ingredient:["achacha","adzuki beans","agar","agave syrup","ajowan seed","albacore tuna","alfalfa","allspice","almond oil","almonds","amaranth","amchur","anchovies","aniseed","annatto seed","apple cider vinegar","apple juice","apple juice concentrate","apples","apricots","arborio rice","arrowroot","artichoke","arugula","asafoetida","asian greens","asian noodles","asparagus","aubergine","avocado","avocado oil","avocado spread","bacon","baking powder","baking soda","balsamic vinegar","bamboo shoots","banana","barberry","barley","barramundi","basil basmati rice","bay leaves","bean shoots","bean sprouts","beans","beef","beef stock","beetroot","berries","besan","black eyed beans","blackberries","blood oranges","blue cheese","blue eye trevalla","blue swimmer crab","blueberries","bocconcini","bok choy","bonito flakes","bonza","borlotti beans","bran","brazil nut","bread","brie","broccoli","broccolini","brown flour","brown mushrooms","brown rice","brown rice vinegar","brussels sprouts","buckwheat","buckwheat flour","buckwheat noodles","bulghur","bush tomato","butter","butter beans","buttermilk","butternut lettuce","butternut pumpkin","cabbage","cacao","cake","calamari","camellia tea oil","camembert","camomile","candle nut","cannellini beans","canola oil","cantaloupe","capers","capsicum","caraway seed","cardamom","carob carrot","carrot","cashews","cassia bark","cauliflower","cavalo","cayenne","celery","celery seed","cheddar","cherries","chestnut","chia seeds","chicken","chicken stock","chickory","chickpea","chilli pepper","chinese cabbage","chinese five spice","chives","choy sum","cinnamon","clams","cloves","cocoa powder","coconut","coconut oil","coconut water","coffee","common cultivated mushrooms","corella pear","coriander leaves","coriander seed","corn oil","corn syrup","corn tortilla","cornichons","cornmeal","cos lettuce","cottage cheese","cous cous","crabs","cranberry","cream","cream cheese","cucumber","cumin","cumquat","currants","curry leaves","curry powder","custard apples","dandelion","dark chocolate","dashi","dates","dill","dragonfruit","dried apricots","dried chinese broccoli","duck","edam","edamame","eggplant","eggs","elderberry","endive","english spinach","enoki mushrooms","extra virgin olive oil","farmed prawns","feijoa","fennel","fennel seeds","fenugreek","feta","figs","file powder","fingerlime","fish sauce","fish stock","flat mushrooms","flathead","flaxseed","flaxseed oil","flounder","flour","freekeh","french eschallots","fresh chillies","fromage blanc","fruit","galangal","garam masala","garlic","goat cheese","goat milk","goji berry","grape seed oil","grapefruit","grapes","green beans","green pepper","green tea","green tea noodles","greenwheat freekeh","gruyere","guava","gula melaka","haloumi","ham","haricot beans","harissa","hazelnut","hijiki","hiramasa kingfish","hokkien noodles","honey","honeydew melon","horseradish","hot smoked salmon","hummus","iceberg lettuce","incaberries","jarrahdale pumpkin","jasmine rice","jelly","jerusalem artichoke","jewfish","jicama","juniper berries","kale","kangaroo","kecap manis","kenchur","kidney beans","kidneys","kiwi berries","kiwi fruit","kohlrabi","kokam","kombu","koshihikari rice","kudzu","kumera","lamb","lavender flowers","leeks","lemon","lemongrass","lentils","lettuce","licorice","lime leaves","limes","liver","lobster","longan","loquats","lotus root","lychees","macadamia nut","macadamia oil","mace","mackerel","mahi mahi","mahlab","malt vinegar","mandarins","mango","mangosteens","maple syrup","margarine","marigold","marjoram","mastic","melon","milk","milk chocolate","mint","miso","molasses","monkfish","morwong","mountain bread","mozzarella","muesli","mulberries","mullet","mung beans","mussels","mustard","mustard seed","nashi pear","nasturtium","nectarines","nori","nutmeg","nutritional yeast","nuts","oat flour","oatmeal","oats","octopus","okra","olive oil","olives","omega spread","onion","oranges","oregano","oyster mushrooms","oyster sauce","oysters","pandanus leaves","papaw","papaya","paprik","parmesan cheese","parrotfish","parsley","parsnip","passionfruit","pasta","peaches","peanuts","pear","pear juice","pears","peas","pecan nut","pecorino","pepitas","peppercorns","peppermint","peppers","persimmon","pine nut","pineapple","pinto beans","pistachio nut","plums","polenta","pomegranate","poppy seed","porcini mushrooms","pork","potato flour","potatoes","provolone","prunes","pumpkin","pumpkin seed","purple carrot","purple rice","quark","quince","quinoa","radicchio","radish","raisin","raspberry","red cabbage","red lentils","red pepper","red wine","red wine vinegar","redfish","rhubarb","rice flour","rice noodles","rice paper","rice syrup","ricemilk","ricotta","rockmelon","rose water","rosemary","rye","rye bread","safflower oil","saffron","sage","sake","salmon","sardines","sausages","scallops","sea salt","semolina","sesame oil","sesame seeds","shark","shiitake mushrooms","silverbeet","slivered almonds","smoked trout","snapper","snowpea sprouts","snowpeas","soba","sour dough bread","soy","soy beans","soy flour","soy milk","soy sauce","soymilk","spearmint","spelt","spelt bread","spinach","spring onions","sprouts","squash","squid","star anise","star fruit","starfruit","stevia","strawberries","sugar","sultanas","sun-dried tomatoes","sunflower oil","sunflower seeds","sweet chilli sauce","sweet potato","swiss chard","swordfish","szechuan pepperberry","tabasco","tahini","taleggio cheese","tamari","tamarillo","tangelo","tapioca","tapioca flour","tarragon","tea","tea oil","tempeh","thyme","tinned","tofu","tom yum","tomatoes","trout","tuna","turkey","turmeric","turnips","unbleached flour","vanilla beans","vegetable oil","vegetable spaghetti","vegetable stock","vermicelli noodles","vinegar","wakame","walnut","warehou","wasabi","water","watercress","watermelon","wattleseed","wheat","wheatgrass juice","white bread","white flour","white rice","white wine","white wine vinegar","whiting wild rice","wholegrain bread","wholemeal","wholewheat flour","william pear","yeast","yellow papaw","yellowtail kingfish","yoghurt","yogurt","zucchini"],meat:["beef","chicken","crocodile","duck","emu","goose","kangaroo","lamb","ostrich","pigeon","pork","quail","rabbit","salmon","turkey","venison"],spice:["achiote seed","ajwain seed","ajwan seed","allspice","amchoor","anise","anise star","aniseed","annatto seed","arrowroot","asafoetida","baharat","balti masala","balti stir fry mix","basil","bay leaves","bbq","caraway seed","cardamom","cassia","cayenne pepper","celery","chamomile","chervil","chilli","chilli pepper","chillies","china star","chives","cinnamon","cloves","colombo","coriander","cumin","curly leaf parsley","curry","dhansak","dill","fennel seed","fenugreek","fines herbes","five spice","french lavender","galangal","garam masala","garlic","german chamomile","ginger","green cardamom","herbes de provence","jalfrezi","jerk","kaffir leaves","korma","lavender","lemon grass","lemon pepper","lime leaves","liquorice root","mace","mango","marjoram","methi","mint","mustard","nutmeg","onion seed","orange zest","oregano","paprika","parsley","pepper","peppercorns","pimento","piri piri","poppy seed","pot marjoram","poudre de colombo","ras-el-hanout","rice paper","rogan josh","rose baie","rosemary","saffron","sage","sesame seed","spearmint","sumac","sweet basil","sweet laurel","tagine","tandoori masala","tarragon","thyme","tikka masala","turmeric","vanilla","zahtar"],vegetable:["artichoke","arugula","asian greens","asparagus","bean shoots","bean sprouts","beans","beetroot","bok choy","broccoli","broccolini","brussels sprouts","butternut lettuce","cabbage","capers","carob carrot","carrot","cauliflower","celery","chilli pepper","chinese cabbage","chives","cornichons","cos lettuce","cucumber","dried chinese broccoli","eggplant","endive","english spinach","french eschallots","fresh chillies","garlic","green beans","green pepper","hijiki","iceberg lettuce","jerusalem artichoke","jicama","kale","kohlrabi","leeks","lettuce","okra","onion","parsnip","peas","peppers","potatoes","pumpkin","purple carrot","radicchio","radish","raspberry","red cabbage","red pepper","rhubarb","snowpea sprouts","spinach","squash","sun dried tomatoes","sweet potato","swiss chard","turnips","zucchini"]},hacker:{adjective:["1080p","auxiliary","back-end","bluetooth","cross-platform","digital","haptic","mobile","multi-byte","neural","online","open-source","optical","primary","redundant","solid state","virtual","wireless"],ingverb:["backing up","bypassing","calculating","compressing","connecting","copying","generating","hacking","indexing","navigating","overriding","parsing","programming","quantifying","synthesizing","transmitting"],noun:["alarm","application","array","bandwidth","bus","capacitor","card","circuit","driver","feed","firewall","hard drive","interface","matrix","microchip","monitor","panel","pixel","port","program","protocol","sensor","system","transmitter"],phrase:["I'll {{verb}} the {{adjective}} {{abbreviation}} {{noun}}, that should {{noun}} the {{abbreviation}} {{noun}}!","If we {{verb}} the {{noun}}, we can get to the {{abbreviation}} {{noun}} through the {{adjective}} {{abbreviation}} {{noun}}!","The {{abbreviation}} {{noun}} is down, {{verb}} the {{adjective}} {{noun}} so we can {{verb}} the {{abbreviation}} {{noun}}!","Try to {{verb}} the {{abbreviation}} {{noun}}, maybe it will {{verb}} the {{adjective}} {{noun}}!","Use the {{adjective}} {{abbreviation}} {{noun}}, then you can {{verb}} the {{adjective}} {{noun}}!","We need to {{verb}} the {{adjective}} {{abbreviation}} {{noun}}!","You can't {{verb}} the {{noun}} without {{ingverb}} the {{adjective}} {{abbreviation}} {{noun}}!","{{ingverb}} the {{noun}} won't do anything, we need to {{verb}} the {{adjective}} {{abbreviation}} {{noun}}!"],verb:["back up","bypass","calculate","compress","connect","copy","generate","hack","index","input","navigate","override","parse","program","quantify","reboot","synthesize","transmit"]},internet:{domain_suffix:["com","biz","info","name","net","org"],example_email:["example.org","example.com","example.net"],free_email:["gmail.com","yahoo.com","hotmail.com"]},location:{building_number:["#####","####","###"],city_name:["Abilene","Akron","Alafaya","Alameda","Albany","Albuquerque","Alexandria","Alhambra","Aliso Viejo","Allen","Allentown","Aloha","Alpharetta","Altadena","Altamonte Springs","Altoona","Amarillo","Ames","Anaheim","Anchorage","Anderson","Ankeny","Ann Arbor","Annandale","Antelope","Antioch","Apex","Apopka","Apple Valley","Appleton","Arcadia","Arden-Arcade","Arecibo","Arlington","Arlington Heights","Arvada","Ashburn","Asheville","Aspen Hill","Atascocita","Athens-Clarke County","Atlanta","Attleboro","Auburn","Augusta-Richmond County","Aurora","Austin","Avondale","Azusa","Bakersfield","Baldwin Park","Baltimore","Barnstable Town","Bartlett","Baton Rouge","Battle Creek","Bayamon","Bayonne","Baytown","Beaumont","Beavercreek","Beaverton","Bedford","Bel Air South","Bell Gardens","Belleville","Bellevue","Bellflower","Bellingham","Bend","Bentonville","Berkeley","Berwyn","Bethesda","Bethlehem","Billings","Biloxi","Binghamton","Birmingham","Bismarck","Blacksburg","Blaine","Bloomington","Blue Springs","Boca Raton","Boise City","Bolingbrook","Bonita Springs","Bossier City","Boston","Bothell","Boulder","Bountiful","Bowie","Bowling Green","Boynton Beach","Bozeman","Bradenton","Brandon","Brentwood","Bridgeport","Bristol","Brockton","Broken Arrow","Brookhaven","Brookline","Brooklyn Park","Broomfield","Brownsville","Bryan","Buckeye","Buena Park","Buffalo","Buffalo Grove","Burbank","Burien","Burke","Burleson","Burlington","Burnsville","Caguas","Caldwell","Camarillo","Cambridge","Camden","Canton","Cape Coral","Carlsbad","Carmel","Carmichael","Carolina","Carrollton","Carson","Carson City","Cary","Casa Grande","Casas Adobes","Casper","Castle Rock","Castro Valley","Catalina Foothills","Cathedral City","Catonsville","Cedar Hill","Cedar Park","Cedar Rapids","Centennial","Centreville","Ceres","Cerritos","Champaign","Chandler","Chapel Hill","Charleston","Charlotte","Charlottesville","Chattanooga","Cheektowaga","Chesapeake","Chesterfield","Cheyenne","Chicago","Chico","Chicopee","Chino","Chino Hills","Chula Vista","Cicero","Cincinnati","Citrus Heights","Clarksville","Clearwater","Cleveland","Cleveland Heights","Clifton","Clovis","Coachella","Coconut Creek","Coeur d'Alene","College Station","Collierville","Colorado Springs","Colton","Columbia","Columbus","Commerce City","Compton","Concord","Conroe","Conway","Coon Rapids","Coral Gables","Coral Springs","Corona","Corpus Christi","Corvallis","Costa Mesa","Council Bluffs","Country Club","Covina","Cranston","Cupertino","Cutler Bay","Cuyahoga Falls","Cypress","Dale City","Dallas","Daly City","Danbury","Danville","Davenport","Davie","Davis","Dayton","Daytona Beach","DeKalb","DeSoto","Dearborn","Dearborn Heights","Decatur","Deerfield Beach","Delano","Delray Beach","Deltona","Denton","Denver","Des Moines","Des Plaines","Detroit","Diamond Bar","Doral","Dothan","Downers Grove","Downey","Draper","Dublin","Dubuque","Duluth","Dundalk","Dunwoody","Durham","Eagan","East Hartford","East Honolulu","East Lansing","East Los Angeles","East Orange","East Providence","Eastvale","Eau Claire","Eden Prairie","Edina","Edinburg","Edmond","El Cajon","El Centro","El Dorado Hills","El Monte","El Paso","Elgin","Elizabeth","Elk Grove","Elkhart","Ellicott City","Elmhurst","Elyria","Encinitas","Enid","Enterprise","Erie","Escondido","Euclid","Eugene","Euless","Evanston","Evansville","Everett","Fairfield","Fall River","Fargo","Farmington","Farmington Hills","Fayetteville","Federal Way","Findlay","Fishers","Flagstaff","Flint","Florence-Graham","Florin","Florissant","Flower Mound","Folsom","Fond du Lac","Fontana","Fort Collins","Fort Lauderdale","Fort Myers","Fort Pierce","Fort Smith","Fort Wayne","Fort Worth","Fountain Valley","Fountainebleau","Framingham","Franklin","Frederick","Freeport","Fremont","Fresno","Frisco","Fullerton","Gainesville","Gaithersburg","Galveston","Garden Grove","Gardena","Garland","Gary","Gastonia","Georgetown","Germantown","Gilbert","Gilroy","Glen Burnie","Glendale","Glendora","Glenview","Goodyear","Grand Forks","Grand Island","Grand Junction","Grand Prairie","Grand Rapids","Grapevine","Great Falls","Greeley","Green Bay","Greensboro","Greenville","Greenwood","Gresham","Guaynabo","Gulfport","Hacienda Heights","Hackensack","Haltom City","Hamilton","Hammond","Hampton","Hanford","Harlingen","Harrisburg","Harrisonburg","Hartford","Hattiesburg","Haverhill","Hawthorne","Hayward","Hemet","Hempstead","Henderson","Hendersonville","Hesperia","Hialeah","Hicksville","High Point","Highland","Highlands Ranch","Hillsboro","Hilo","Hoboken","Hoffman Estates","Hollywood","Homestead","Honolulu","Hoover","Houston","Huntersville","Huntington","Huntington Beach","Huntington Park","Huntsville","Hutchinson","Idaho Falls","Independence","Indianapolis","Indio","Inglewood","Iowa City","Irondequoit","Irvine","Irving","Jackson","Jacksonville","Janesville","Jefferson City","Jeffersonville","Jersey City","Johns Creek","Johnson City","Joliet","Jonesboro","Joplin","Jupiter","Jurupa Valley","Kalamazoo","Kannapolis","Kansas City","Kearny","Keller","Kendale Lakes","Kendall","Kenner","Kennewick","Kenosha","Kent","Kentwood","Kettering","Killeen","Kingsport","Kirkland","Kissimmee","Knoxville","Kokomo","La Crosse","La Habra","La Mesa","La Mirada","Lacey","Lafayette","Laguna Niguel","Lake Charles","Lake Elsinore","Lake Forest","Lake Havasu City","Lake Ridge","Lakeland","Lakeville","Lakewood","Lancaster","Lansing","Laredo","Largo","Las Cruces","Las Vegas","Lauderhill","Lawrence","Lawton","Layton","League City","Lee's Summit","Leesburg","Lehi","Lehigh Acres","Lenexa","Levittown","Lewisville","Lexington-Fayette","Lincoln","Linden","Little Rock","Littleton","Livermore","Livonia","Lodi","Logan","Lombard","Lompoc","Long Beach","Longmont","Longview","Lorain","Los Angeles","Louisville/Jefferson County","Loveland","Lowell","Lubbock","Lynchburg","Lynn","Lynwood","Macon-Bibb County","Madera","Madison","Malden","Manchester","Manhattan","Mansfield","Manteca","Maple Grove","Margate","Maricopa","Marietta","Marysville","Mayaguez","McAllen","McKinney","McLean","Medford","Melbourne","Memphis","Menifee","Mentor","Merced","Meriden","Meridian","Mesa","Mesquite","Metairie","Methuen Town","Miami","Miami Beach","Miami Gardens","Middletown","Midland","Midwest City","Milford","Millcreek","Milpitas","Milwaukee","Minneapolis","Minnetonka","Minot","Miramar","Mishawaka","Mission","Mission Viejo","Missoula","Missouri City","Mobile","Modesto","Moline","Monroe","Montebello","Monterey Park","Montgomery","Moore","Moreno Valley","Morgan Hill","Mount Pleasant","Mount Prospect","Mount Vernon","Mountain View","Muncie","Murfreesboro","Murray","Murrieta","Nampa","Napa","Naperville","Nashua","Nashville-Davidson","National City","New Bedford","New Braunfels","New Britain","New Brunswick","New Haven","New Orleans","New Rochelle","New York","Newark","Newport Beach","Newport News","Newton","Niagara Falls","Noblesville","Norfolk","Normal","Norman","North Bethesda","North Charleston","North Highlands","North Las Vegas","North Lauderdale","North Little Rock","North Miami","North Miami Beach","North Port","North Richland Hills","Norwalk","Novato","Novi","O'Fallon","Oak Lawn","Oak Park","Oakland","Oakland Park","Ocala","Oceanside","Odessa","Ogden","Oklahoma City","Olathe","Olympia","Omaha","Ontario","Orange","Orem","Orland Park","Orlando","Oro Valley","Oshkosh","Overland Park","Owensboro","Oxnard","Palatine","Palm Bay","Palm Beach Gardens","Palm Coast","Palm Desert","Palm Harbor","Palm Springs","Palmdale","Palo Alto","Paradise","Paramount","Parker","Parma","Pasadena","Pasco","Passaic","Paterson","Pawtucket","Peabody","Pearl City","Pearland","Pembroke Pines","Pensacola","Peoria","Perris","Perth Amboy","Petaluma","Pflugerville","Pharr","Philadelphia","Phoenix","Pico Rivera","Pine Bluff","Pine Hills","Pinellas Park","Pittsburg","Pittsburgh","Pittsfield","Placentia","Plainfield","Plano","Plantation","Pleasanton","Plymouth","Pocatello","Poinciana","Pomona","Pompano Beach","Ponce","Pontiac","Port Arthur","Port Charlotte","Port Orange","Port St. Lucie","Portage","Porterville","Portland","Portsmouth","Potomac","Poway","Providence","Provo","Pueblo","Quincy","Racine","Raleigh","Rancho Cordova","Rancho Cucamonga","Rancho Palos Verdes","Rancho Santa Margarita","Rapid City","Reading","Redding","Redlands","Redmond","Redondo Beach","Redwood City","Reno","Renton","Reston","Revere","Rialto","Richardson","Richland","Richmond","Rio Rancho","Riverside","Riverton","Riverview","Roanoke","Rochester","Rochester Hills","Rock Hill","Rockford","Rocklin","Rockville","Rockwall","Rocky Mount","Rogers","Rohnert Park","Rosemead","Roseville","Roswell","Round Rock","Rowland Heights","Rowlett","Royal Oak","Sacramento","Saginaw","Salem","Salina","Salinas","Salt Lake City","Sammamish","San Angelo","San Antonio","San Bernardino","San Bruno","San Buenaventura (Ventura)","San Clemente","San Diego","San Francisco","San Jacinto","San Jose","San Juan","San Leandro","San Luis Obispo","San Marcos","San Mateo","San Rafael","San Ramon","San Tan Valley","Sandy","Sandy Springs","Sanford","Santa Ana","Santa Barbara","Santa Clara","Santa Clarita","Santa Cruz","Santa Fe","Santa Maria","Santa Monica","Santa Rosa","Santee","Sarasota","Savannah","Sayreville","Schaumburg","Schenectady","Scottsdale","Scranton","Seattle","Severn","Shawnee","Sheboygan","Shoreline","Shreveport","Sierra Vista","Silver Spring","Simi Valley","Sioux City","Sioux Falls","Skokie","Smyrna","Somerville","South Bend","South Gate","South Hill","South Jordan","South San Francisco","South Valley","South Whittier","Southaven","Southfield","Sparks","Spokane","Spokane Valley","Spring","Spring Hill","Spring Valley","Springdale","Springfield","St. Charles","St. Clair Shores","St. Cloud","St. George","St. Joseph","St. Louis","St. Louis Park","St. Paul","St. Peters","St. Petersburg","Stamford","State College","Sterling Heights","Stillwater","Stockton","Stratford","Strongsville","Suffolk","Sugar Land","Summerville","Sunnyvale","Sunrise","Sunrise Manor","Surprise","Syracuse","Tacoma","Tallahassee","Tamarac","Tamiami","Tampa","Taunton","Taylor","Taylorsville","Temecula","Tempe","Temple","Terre Haute","Texas City","The Hammocks","The Villages","The Woodlands","Thornton","Thousand Oaks","Tigard","Tinley Park","Titusville","Toledo","Toms River","Tonawanda","Topeka","Torrance","Town 'n' Country","Towson","Tracy","Trenton","Troy","Trujillo Alto","Tuckahoe","Tucson","Tulare","Tulsa","Turlock","Tuscaloosa","Tustin","Twin Falls","Tyler","Union City","University","Upland","Urbana","Urbandale","Utica","Vacaville","Valdosta","Vallejo","Vancouver","Victoria","Victorville","Vineland","Virginia Beach","Visalia","Vista","Waco","Waipahu","Waldorf","Walnut Creek","Waltham","Warner Robins","Warren","Warwick","Washington","Waterbury","Waterloo","Watsonville","Waukegan","Waukesha","Wauwatosa","Wellington","Wesley Chapel","West Allis","West Babylon","West Covina","West Des Moines","West Hartford","West Haven","West Jordan","West Lafayette","West New York","West Palm Beach","West Sacramento","West Seneca","West Valley City","Westfield","Westland","Westminster","Weston","Weymouth Town","Wheaton","White Plains","Whittier","Wichita","Wichita Falls","Wilmington","Wilson","Winston-Salem","Woodbury","Woodland","Worcester","Wylie","Wyoming","Yakima","Yonkers","Yorba Linda","York","Youngstown","Yuba City","Yucaipa","Yuma"],city_pattern:["{{location.city_prefix}} {{person.first_name.generic}}{{location.city_suffix}}","{{location.city_prefix}} {{person.first_name.generic}}","{{person.first_name.generic}}{{location.city_suffix}}","{{person.last_name.generic}}{{location.city_suffix}}","{{location.city_name}}"],city_prefix:["North","East","West","South","New","Lake","Port","Fort"],city_suffix:["town","ton","land","ville","berg","burgh","boro","borough","bury","view","port","mouth","stad","stead","furt","chester","cester","fort","field","haven","side","shire","worth"],country:["Afghanistan","Aland Islands","Albania","Algeria","American Samoa","Andorra","Angola","Anguilla","Antarctica","Antigua and Barbuda","Argentina","Armenia","Aruba","Australia","Austria","Azerbaijan","Bahamas","Bahrain","Bangladesh","Barbados","Belarus","Belgium","Belize","Benin","Bermuda","Bhutan","Bolivia","Bonaire, Sint Eustatius and Saba","Bosnia and Herzegovina","Botswana","Bouvet Island","Brazil","British Indian Ocean Territory (Chagos Archipelago)","Brunei Darussalam","Bulgaria","Burkina Faso","Burundi","Cambodia","Cameroon","Canada","Cape Verde","Cayman Islands","Central African Republic","Chad","Chile","China","Christmas Island","Cocos (Keeling) Islands","Colombia","Comoros","Congo","Cook Islands","Costa Rica","Cote d'Ivoire","Croatia","Cuba","Curacao","Cyprus","Czechia","Democratic Republic of the Congo","Denmark","Djibouti","Dominica","Dominican Republic","Ecuador","Egypt","El Salvador","Equatorial Guinea","Eritrea","Estonia","Eswatini","Ethiopia","Faroe Islands","Falkland Islands (Malvinas)","Fiji","Finland","France","French Guiana","French Polynesia","French Southern Territories","Gabon","Gambia","Georgia","Germany","Ghana","Gibraltar","Greece","Greenland","Grenada","Guadeloupe","Guam","Guatemala","Guernsey","Guinea","Guinea-Bissau","Guyana","Haiti","Heard Island and McDonald Islands","Holy See (Vatican City State)","Honduras","Hong Kong","Hungary","Iceland","India","Indonesia","Iran","Iraq","Ireland","Isle of Man","Israel","Italy","Jamaica","Japan","Jersey","Jordan","Kazakhstan","Kenya","Kiribati","Democratic People's Republic of Korea","Republic of Korea","Kuwait","Kyrgyz Republic","Lao People's Democratic Republic","Latvia","Lebanon","Lesotho","Liberia","Libyan Arab Jamahiriya","Liechtenstein","Lithuania","Luxembourg","Macao","Madagascar","Malawi","Malaysia","Maldives","Mali","Malta","Marshall Islands","Martinique","Mauritania","Mauritius","Mayotte","Mexico","Micronesia","Moldova","Monaco","Mongolia","Montenegro","Montserrat","Morocco","Mozambique","Myanmar","Namibia","Nauru","Nepal","Netherlands","New Caledonia","New Zealand","Nicaragua","Niger","Nigeria","Niue","Norfolk Island","North Macedonia","Northern Mariana Islands","Norway","Oman","Pakistan","Palau","Palestine","Panama","Papua New Guinea","Paraguay","Peru","Philippines","Pitcairn Islands","Poland","Portugal","Puerto Rico","Qatar","Reunion","Romania","Russian Federation","Rwanda","Saint Barthelemy","Saint Helena","Saint Kitts and Nevis","Saint Lucia","Saint Martin","Saint Pierre and Miquelon","Saint Vincent and the Grenadines","Samoa","San Marino","Sao Tome and Principe","Saudi Arabia","Senegal","Serbia","Seychelles","Sierra Leone","Singapore","Sint Maarten","Slovakia","Slovenia","Solomon Islands","Somalia","South Africa","South Georgia and the South Sandwich Islands","South Sudan","Spain","Sri Lanka","Sudan","Suriname","Svalbard & Jan Mayen Islands","Sweden","Switzerland","Syrian Arab Republic","Taiwan","Tajikistan","Tanzania","Thailand","Timor-Leste","Togo","Tokelau","Tonga","Trinidad and Tobago","Tunisia","Turkey","Turkmenistan","Turks and Caicos Islands","Tuvalu","Uganda","Ukraine","United Arab Emirates","United Kingdom","United States of America","United States Minor Outlying Islands","Uruguay","Uzbekistan","Vanuatu","Venezuela","Vietnam","Virgin Islands, British","Virgin Islands, U.S.","Wallis and Futuna","Western Sahara","Yemen","Zambia","Zimbabwe"],county:["Adams County","Calhoun County","Carroll County","Clark County","Clay County","Crawford County","Douglas County","Fayette County","Franklin County","Grant County","Greene County","Hamilton County","Hancock County","Henry County","Jackson County","Jefferson County","Johnson County","Lake County","Lawrence County","Lee County","Lincoln County","Logan County","Madison County","Marion County","Marshall County","Monroe County","Montgomery County","Morgan County","Perry County","Pike County","Polk County","Scott County","Union County","Warren County","Washington County","Wayne County","Avon","Bedfordshire","Berkshire","Borders","Buckinghamshire","Cambridgeshire","Central","Cheshire","Cleveland","Clwyd","Cornwall","County Antrim","County Armagh","County Down","County Fermanagh","County Londonderry","County Tyrone","Cumbria","Derbyshire","Devon","Dorset","Dumfries and Galloway","Durham","Dyfed","East Sussex","Essex","Fife","Gloucestershire","Grampian","Greater Manchester","Gwent","Gwynedd County","Hampshire","Herefordshire","Hertfordshire","Highlands and Islands","Humberside","Isle of Wight","Kent","Lancashire","Leicestershire","Lincolnshire","Lothian","Merseyside","Mid Glamorgan","Norfolk","North Yorkshire","Northamptonshire","Northumberland","Nottinghamshire","Oxfordshire","Powys","Rutland","Shropshire","Somerset","South Glamorgan","South Yorkshire","Staffordshire","Strathclyde","Suffolk","Surrey","Tayside","Tyne and Wear","Warwickshire","West Glamorgan","West Midlands","West Sussex","West Yorkshire","Wiltshire","Worcestershire"],direction:{cardinal:["North","East","South","West"],cardinal_abbr:["N","E","S","W"],ordinal:["Northeast","Northwest","Southeast","Southwest"],ordinal_abbr:["NE","NW","SE","SW"]},postcode:["#####","#####-####"],secondary_address:["Apt. ###","Suite ###"],state:["Alabama","Alaska","Arizona","Arkansas","California","Colorado","Connecticut","Delaware","Florida","Georgia","Hawaii","Idaho","Illinois","Indiana","Iowa","Kansas","Kentucky","Louisiana","Maine","Maryland","Massachusetts","Michigan","Minnesota","Mississippi","Missouri","Montana","Nebraska","Nevada","New Hampshire","New Jersey","New Mexico","New York","North Carolina","North Dakota","Ohio","Oklahoma","Oregon","Pennsylvania","Rhode Island","South Carolina","South Dakota","Tennessee","Texas","Utah","Vermont","Virginia","Washington","West Virginia","Wisconsin","Wyoming"],state_abbr:["AL","AK","AZ","AR","CA","CO","CT","DE","FL","GA","HI","ID","IL","IN","IA","KS","KY","LA","ME","MD","MA","MI","MN","MS","MO","MT","NE","NV","NH","NJ","NM","NY","NC","ND","OH","OK","OR","PA","RI","SC","SD","TN","TX","UT","VT","VA","WA","WV","WI","WY"],street_address:{normal:"{{location.buildingNumber}} {{location.street}}",full:"{{location.buildingNumber}} {{location.street}} {{location.secondaryAddress}}"},street_name:["10th Street","11th Street","12th Street","13th Street","14th Street","15th Street","16th Street","1st Avenue","1st Street","2nd Avenue","2nd Street","3rd Avenue","3rd Street","4th Avenue","4th Street","5th Avenue","5th Street","6th Avenue","6th Street","7th Avenue","7th Street","8th Avenue","8th Street","9th Street","A Street","Abbey Road","Adams Avenue","Adams Street","Airport Road","Albany Road","Albert Road","Albion Street","Alexandra Road","Alfred Street","Alma Street","Ash Close","Ash Grove","Ash Road","Ash Street","Aspen Close","Atlantic Avenue","Avenue Road","Back Lane","Baker Street","Balmoral Road","Barn Close","Barton Road","Bath Road","Bath Street","Bay Street","Beach Road","Bedford Road","Beech Close","Beech Drive","Beech Grove","Beech Road","Beechwood Avenue","Bell Lane","Belmont Road","Birch Avenue","Birch Close","Birch Grove","Birch Road","Blind Lane","Bluebell Close","Boundary Road","Bramble Close","Bramley Close","Bridge Road","Bridge Street","Broad Lane","Broad Street","Broadway","Broadway Avenue","Broadway Street","Brook Lane","Brook Road","Brook Street","Brookside","Buckingham Road","Cambridge Street","Canal Street","Castle Close","Castle Lane","Castle Road","Castle Street","Cavendish Road","Cedar Avenue","Cedar Close","Cedar Grove","Cedar Road","Cedar Street","Cemetery Road","Center Avenue","Center Road","Center Street","Central Avenue","Central Street","Chapel Close","Chapel Hill","Chapel Road","Chapel Street","Charles Street","Cherry Close","Cherry Street","Cherry Tree Close","Chester Road","Chestnut Close","Chestnut Drive","Chestnut Grove","Chestnut Street","Church Avenue","Church Close","Church Hill","Church Lane","Church Path","Church Road","Church Street","Church View","Church Walk","Claremont Road","Clarence Road","Clarence Street","Clarendon Road","Clark Street","Clay Lane","Cleveland Street","Cliff Road","Clifton Road","Clinton Street","College Avenue","College Street","Columbia Avenue","Commerce Street","Commercial Road","Commercial Street","Common Lane","Coronation Avenue","Coronation Road","County Line Road","County Road","Court Street","Cow Lane","Crescent Road","Cromwell Road","Cross Lane","Cross Street","Crown Street","Cumberland Street","Dale Street","Dark Lane","Davis Street","Depot Street","Derby Road","Derwent Close","Devonshire Road","Division Street","Douglas Road","Duke Street","E 10th Street","E 11th Street","E 12th Street","E 14th Street","E 1st Street","E 2nd Street","E 3rd Street","E 4th Avenue","E 4th Street","E 5th Street","E 6th Avenue","E 6th Street","E 7th Street","E 8th Street","E 9th Street","E Bridge Street","E Broad Street","E Broadway","E Broadway Street","E Cedar Street","E Center Street","E Central Avenue","E Church Street","E Elm Street","E Franklin Street","E Front Street","E Grand Avenue","E High Street","E Jackson Street","E Jefferson Street","E Main","E Main Street","E Maple Street","E Market Street","E North Street","E Oak Street","E Park Avenue","E Pine Street","E River Road","E South Street","E State Street","E Union Street","E Walnut Street","E Washington Avenue","E Washington Street","E Water Street","East Avenue","East Road","East Street","Edward Street","Elm Close","Elm Grove","Elm Road","Elm Street","Euclid Avenue","Fairfield Road","Farm Close","Ferry Road","Field Close","Field Lane","First Avenue","First Street","Fore Street","Forest Avenue","Forest Road","Fourth Avenue","Franklin Avenue","Franklin Road","Franklin Street","Front Street","Frontage Road","Garden Close","Garden Street","George Street","Gladstone Road","Glebe Close","Gloucester Road","Gordon Road","Gordon Street","Grand Avenue","Grange Avenue","Grange Close","Grange Road","Grant Street","Green Close","Green Lane","Green Street","Greenville Road","Greenway","Greenwood Road","Grove Lane","Grove Road","Grove Street","Hall Lane","Hall Street","Harrison Avenue","Harrison Street","Hawthorn Avenue","Hawthorn Close","Hazel Close","Hazel Grove","Heath Road","Heather Close","Henry Street","Heron Close","Hickory Street","High Road","High Street","Highfield Avenue","Highfield Close","Highfield Road","Highland Avenue","Hill Road","Hill Street","Hillside","Hillside Avenue","Hillside Close","Hillside Road","Holly Close","Honeysuckle Close","Howard Road","Howard Street","Jackson Avenue","Jackson Street","James Street","Jefferson Avenue","Jefferson Street","Johnson Street","Jubilee Close","Juniper Close","Kent Road","Kestrel Close","King Street","King's Road","Kingfisher Close","Kings Highway","Kingsway","Laburnum Grove","Lafayette Street","Lake Avenue","Lake Drive","Lake Road","Lake Street","Lancaster Road","Lansdowne Road","Larch Close","Laurel Close","Lawrence Street","Lee Street","Liberty Street","Lime Grove","Lincoln Avenue","Lincoln Highway","Lincoln Road","Lincoln Street","Locust Street","Lodge Close","Lodge Lane","London Road","Long Lane","Low Road","Madison Avenue","Madison Street","Main","Main Avenue","Main Road","Main Street","Main Street E","Main Street N","Main Street S","Main Street W","Manchester Road","Manor Close","Manor Drive","Manor Gardens","Manor Road","Manor Way","Maple Avenue","Maple Close","Maple Drive","Maple Road","Maple Street","Market Place","Market Square","Market Street","Marlborough Road","Marsh Lane","Martin Luther King Boulevard","Martin Luther King Drive","Martin Luther King Jr Boulevard","Mary Street","Mayfield Road","Meadow Close","Meadow Drive","Meadow Lane","Meadow View","Meadow Way","Memorial Drive","Middle Street","Mill Close","Mill Lane","Mill Road","Mill Street","Milton Road","Milton Street","Monroe Street","Moor Lane","Moss Lane","Mount Pleasant","Mount Street","Mulberry Street","N 1st Street","N 2nd Street","N 3rd Street","N 4th Street","N 5th Street","N 6th Street","N 7th Street","N 8th Street","N 9th Street","N Bridge Street","N Broad Street","N Broadway","N Broadway Street","N Cedar Street","N Center Street","N Central Avenue","N Chestnut Street","N Church Street","N College Street","N Court Street","N Division Street","N East Street","N Elm Street","N Franklin Street","N Front Street","N Harrison Street","N High Street","N Jackson Street","N Jefferson Street","N Lincoln Street","N Locust Street","N Main","N Main Avenue","N Main Street","N Maple Street","N Market Street","N Monroe Street","N Oak Street","N Park Street","N Pearl Street","N Pine Street","N Poplar Street","N Railroad Street","N State Street","N Union Street","N Walnut Street","N Washington Avenue","N Washington Street","N Water Street","Nelson Road","Nelson Street","New Lane","New Road","New Street","Newton Road","Nightingale Close","Norfolk Road","North Avenue","North Lane","North Road","North Street","Northfield Road","Oak Avenue","Oak Drive","Oak Lane","Oak Road","Oak Street","Oakfield Road","Oaklands","Old Lane","Old Military Road","Old Road","Old State Road","Orchard Drive","Orchard Lane","Orchard Road","Orchard Street","Oxford Road","Oxford Street","Park Avenue","Park Crescent","Park Drive","Park Lane","Park Place","Park Road","Park Street","Park View","Parkside","Pearl Street","Pennsylvania Avenue","Pine Close","Pine Grove","Pine Street","Pinfold Lane","Pleasant Street","Poplar Avenue","Poplar Close","Poplar Road","Poplar Street","Post Road","Pound Lane","Princes Street","Princess Street","Priory Close","Priory Road","Prospect Avenue","Prospect Place","Prospect Road","Prospect Street","Quarry Lane","Quarry Road","Queen's Road","Railroad Avenue","Railroad Street","Railway Street","Rectory Close","Rectory Lane","Richmond Close","Richmond Road","Ridge Road","River Road","River Street","Riverside","Riverside Avenue","Riverside Drive","Roman Road","Roman Way","Rowan Close","Russell Street","S 10th Street","S 14th Street","S 1st Avenue","S 1st Street","S 2nd Street","S 3rd Street","S 4th Street","S 5th Street","S 6th Street","S 7th Street","S 8th Street","S 9th Street","S Bridge Street","S Broad Street","S Broadway","S Broadway Street","S Center Street","S Central Avenue","S Chestnut Street","S Church Street","S College Street","S Division Street","S East Street","S Elm Street","S Franklin Street","S Front Street","S Grand Avenue","S High Street","S Jackson Street","S Jefferson Street","S Lincoln Street","S Main","S Main Avenue","S Main Street","S Maple Street","S Market Street","S Mill Street","S Monroe Street","S Oak Street","S Park Street","S Pine Street","S Railroad Street","S State Street","S Union Street","S Walnut Street","S Washington Avenue","S Washington Street","S Water Street","S West Street","Salisbury Road","Sandringham Road","Sandy Lane","School Close","School Lane","School Road","School Street","Second Avenue","Silver Street","Skyline Drive","Smith Street","Somerset Road","South Avenue","South Drive","South Road","South Street","South View","Spring Gardens","Spring Street","Springfield Close","Springfield Road","Spruce Street","St Andrew's Road","St Andrews Close","St George's Road","St John's Road","St Mary's Close","St Mary's Road","Stanley Road","Stanley Street","State Avenue","State Line Road","State Road","State Street","Station Road","Station Street","Stoney Lane","Sycamore Avenue","Sycamore Close","Sycamore Drive","Sycamore Street","Talbot Road","Tennyson Road","The Avenue","The Beeches","The Causeway","The Chase","The Coppice","The Copse","The Crescent","The Croft","The Dell","The Drive","The Fairway","The Glebe","The Grange","The Green","The Grove","The Hawthorns","The Lane","The Laurels","The Limes","The Maltings","The Meadows","The Mews","The Mount","The Oaks","The Orchard","The Oval","The Paddock","The Paddocks","The Poplars","The Ridgeway","The Ridings","The Rise","The Sidings","The Spinney","The Square","The Willows","The Woodlands","Third Avenue","Third Street","Tower Road","Trinity Road","Tudor Close","Union Avenue","Union Street","University Avenue","University Drive","Valley Road","Veterans Memorial Drive","Veterans Memorial Highway","Vicarage Close","Vicarage Lane","Vicarage Road","Victoria Place","Victoria Road","Victoria Street","Vine Street","W 10th Street","W 11th Street","W 12th Street","W 14th Street","W 1st Street","W 2nd Street","W 3rd Street","W 4th Avenue","W 4th Street","W 5th Street","W 6th Avenue","W 6th Street","W 7th Street","W 8th Street","W 9th Street","W Bridge Street","W Broad Street","W Broadway","W Broadway Avenue","W Broadway Street","W Center Street","W Central Avenue","W Chestnut Street","W Church Street","W Division Street","W Elm Street","W Franklin Street","W Front Street","W Grand Avenue","W High Street","W Jackson Street","W Jefferson Street","W Lake Street","W Main","W Main Street","W Maple Street","W Market Street","W Monroe Street","W North Street","W Oak Street","W Park Street","W Pine Street","W River Road","W South Street","W State Street","W Union Street","W Walnut Street","W Washington Avenue","W Washington Street","Walnut Close","Walnut Street","Warren Close","Warren Road","Washington Avenue","Washington Boulevard","Washington Road","Washington Street","Water Lane","Water Street","Waterloo Road","Waterside","Watery Lane","Waverley Road","Well Lane","Wellington Road","Wellington Street","West Avenue","West End","West Lane","West Road","West Street","West View","Western Avenue","Western Road","Westfield Road","Westgate","William Street","Willow Close","Willow Drive","Willow Grove","Willow Road","Willow Street","Windermere Road","Windmill Close","Windmill Lane","Windsor Avenue","Windsor Close","Windsor Drive","Wood Lane","Wood Street","Woodland Close","Woodland Road","Woodlands","Woodlands Avenue","Woodlands Close","Woodlands Road","Woodside","Woodside Road","Wren Close","Yew Tree Close","York Road","York Street"],street_pattern:["{{person.first_name.generic}} {{location.street_suffix}}","{{person.last_name.generic}} {{location.street_suffix}}","{{location.street_name}}"],street_suffix:["Alley","Avenue","Branch","Bridge","Brook","Brooks","Burg","Burgs","Bypass","Camp","Canyon","Cape","Causeway","Center","Centers","Circle","Circles","Cliff","Cliffs","Club","Common","Corner","Corners","Course","Court","Courts","Cove","Coves","Creek","Crescent","Crest","Crossing","Crossroad","Curve","Dale","Dam","Divide","Drive","Drives","Estate","Estates","Expressway","Extension","Extensions","Fall","Falls","Ferry","Field","Fields","Flat","Flats","Ford","Fords","Forest","Forge","Forges","Fork","Forks","Fort","Freeway","Garden","Gardens","Gateway","Glen","Glens","Green","Greens","Grove","Groves","Harbor","Harbors","Haven","Heights","Highway","Hill","Hills","Hollow","Inlet","Island","Islands","Isle","Junction","Junctions","Key","Keys","Knoll","Knolls","Lake","Lakes","Land","Landing","Lane","Light","Lights","Loaf","Lock","Locks","Lodge","Loop","Mall","Manor","Manors","Meadow","Meadows","Mews","Mill","Mills","Mission","Motorway","Mount","Mountain","Mountains","Neck","Orchard","Oval","Overpass","Park","Parks","Parkway","Parkways","Pass","Passage","Path","Pike","Pine","Pines","Place","Plain","Plains","Plaza","Point","Points","Port","Ports","Prairie","Radial","Ramp","Ranch","Rapid","Rapids","Rest","Ridge","Ridges","River","Road","Roads","Route","Row","Rue","Run","Shoal","Shoals","Shore","Shores","Skyway","Spring","Springs","Spur","Spurs","Square","Squares","Station","Stravenue","Stream","Street","Streets","Summit","Terrace","Throughway","Trace","Track","Trafficway","Trail","Tunnel","Turnpike","Underpass","Union","Unions","Valley","Valleys","Via","Viaduct","View","Views","Village","Villages","Ville","Vista","Walk","Walks","Wall","Way","Ways","Well","Wells"]},lorem:{word:["a","ab","abbas","abduco","abeo","abscido","absconditus","absens","absorbeo","absque","abstergo","absum","abundans","abutor","accedo","accendo","acceptus","accommodo","accusamus","accusantium","accusator","acer","acerbitas","acervus","acidus","acies","acquiro","acsi","ad","adamo","adaugeo","addo","adduco","ademptio","adeo","adeptio","adfectus","adfero","adficio","adflicto","adhaero","adhuc","adicio","adimpleo","adinventitias","adipisci","adipiscor","adiuvo","administratio","admiratio","admitto","admoneo","admoveo","adnuo","adopto","adsidue","adstringo","adsuesco","adsum","adulatio","adulescens","aduro","advenio","adversus","advoco","aedificium","aeger","aegre","aegrotatio","aegrus","aeneus","aequitas","aequus","aer","aestas","aestivus","aestus","aetas","aeternus","ager","aggero","aggredior","agnitio","agnosco","ago","ait","aiunt","alias","alienus","alii","alioqui","aliqua","aliquam","aliquid","alius","allatus","alo","alter","altus","alveus","amaritudo","ambitus","ambulo","amet","amicitia","amiculum","amissio","amita","amitto","amo","amor","amoveo","amplexus","amplitudo","amplus","ancilla","angelus","angulus","angustus","animadverto","animi","animus","annus","anser","ante","antea","antepono","antiquus","aperiam","aperio","aperte","apostolus","apparatus","appello","appono","appositus","approbo","apto","aptus","apud","aqua","ara","aranea","arbitro","arbor","arbustum","arca","arceo","arcesso","architecto","arcus","argentum","argumentum","arguo","arma","armarium","aro","ars","articulus","artificiose","arto","arx","ascisco","ascit","asper","asperiores","aspernatur","aspicio","asporto","assentator","assumenda","astrum","at","atavus","ater","atque","atqui","atrocitas","atrox","attero","attollo","attonbitus","auctor","auctus","audacia","audax","audentia","audeo","audio","auditor","aufero","aureus","aurum","aut","autem","autus","auxilium","avaritia","avarus","aveho","averto","baiulus","balbus","barba","bardus","basium","beatae","beatus","bellicus","bellum","bene","beneficium","benevolentia","benigne","bestia","bibo","bis","blandior","blanditiis","bonus","bos","brevis","cado","caecus","caelestis","caelum","calamitas","calcar","calco","calculus","callide","campana","candidus","canis","canonicus","canto","capillus","capio","capitulus","capto","caput","carbo","carcer","careo","caries","cariosus","caritas","carmen","carpo","carus","casso","caste","casus","catena","caterva","cattus","cauda","causa","caute","caveo","cavus","cedo","celebrer","celer","celo","cena","cenaculum","ceno","censura","centum","cerno","cernuus","certe","certus","cervus","cetera","charisma","chirographum","cibo","cibus","cicuta","cilicium","cimentarius","ciminatio","cinis","circumvenio","cito","civis","civitas","clam","clamo","claro","clarus","claudeo","claustrum","clementia","clibanus","coadunatio","coaegresco","coepi","coerceo","cogito","cognatus","cognomen","cogo","cohaero","cohibeo","cohors","colligo","collum","colo","color","coma","combibo","comburo","comedo","comes","cometes","comis","comitatus","commemoro","comminor","commodi","commodo","communis","comparo","compello","complectus","compono","comprehendo","comptus","conatus","concedo","concido","conculco","condico","conduco","confero","confido","conforto","confugo","congregatio","conicio","coniecto","conitor","coniuratio","conor","conqueror","conscendo","consectetur","consequatur","consequuntur","conservo","considero","conspergo","constans","consuasor","contabesco","contego","contigo","contra","conturbo","conventus","convoco","copia","copiose","cornu","corona","corporis","corpus","correptius","corrigo","corroboro","corrumpo","corrupti","coruscus","cotidie","crapula","cras","crastinus","creator","creber","crebro","credo","creo","creptio","crepusculum","cresco","creta","cribro","crinis","cruciamentum","crudelis","cruentus","crur","crustulum","crux","cubicularis","cubitum","cubo","cui","cuius","culpa","culpo","cultellus","cultura","cum","cumque","cunabula","cunae","cunctatio","cupiditas","cupiditate","cupio","cuppedia","cupressus","cur","cura","curatio","curia","curiositas","curis","curo","curriculum","currus","cursim","curso","cursus","curto","curtus","curvo","custodia","damnatio","damno","dapifer","debeo","debilito","debitis","decens","decerno","decet","decimus","decipio","decor","decretum","decumbo","dedecor","dedico","deduco","defaeco","defendo","defero","defessus","defetiscor","deficio","defleo","defluo","defungo","degenero","degero","degusto","deinde","delectatio","delectus","delego","deleniti","deleo","delibero","delicate","delinquo","deludo","demens","demergo","demitto","demo","demonstro","demoror","demulceo","demum","denego","denique","dens","denuncio","denuo","deorsum","depereo","depono","depopulo","deporto","depraedor","deprecator","deprimo","depromo","depulso","deputo","derelinquo","derideo","deripio","deserunt","desidero","desino","desipio","desolo","desparatus","despecto","dicta","dignissimos","distinctio","dolor","dolore","dolorem","doloremque","dolores","doloribus","dolorum","ducimus","ea","eaque","earum","eius","eligendi","enim","eos","error","esse","est","et","eum","eveniet","ex","excepturi","exercitationem","expedita","explicabo","facere","facilis","fuga","fugiat","fugit","harum","hic","id","illo","illum","impedit","in","incidunt","infit","inflammatio","inventore","ipsa","ipsam","ipsum","iste","itaque","iure","iusto","labore","laboriosam","laborum","laudantium","libero","magnam","magni","maiores","maxime","minima","minus","modi","molestiae","molestias","mollitia","nam","natus","necessitatibus","nemo","neque","nesciunt","nihil","nisi","nobis","non","nostrum","nulla","numquam","occaecati","ocer","odio","odit","officia","officiis","omnis","optio","paens","pariatur","patior","patria","patrocinor","patruus","pauci","paulatim","pauper","pax","peccatus","pecco","pecto","pectus","pecus","peior","pel","perferendis","perspiciatis","placeat","porro","possimus","praesentium","provident","quae","quaerat","quam","quas","quasi","qui","quia","quibusdam","quidem","quis","quisquam","quo","quod","quos","ratione","recusandae","reiciendis","rem","repellat","repellendus","reprehenderit","repudiandae","rerum","saepe","sapiente","sed","sequi","similique","sint","sit","socius","sodalitas","sol","soleo","solio","solitudo","solium","sollers","sollicito","solum","solus","soluta","solutio","solvo","somniculosus","somnus","sonitus","sono","sophismata","sopor","sordeo","sortitus","spargo","speciosus","spectaculum","speculum","sperno","spero","spes","spiculum","spiritus","spoliatio","sponte","stabilis","statim","statua","stella","stillicidium","stipes","stips","sto","strenuus","strues","studio","stultus","suadeo","suasoria","sub","subito","subiungo","sublime","subnecto","subseco","substantia","subvenio","succedo","succurro","sufficio","suffoco","suffragium","suggero","sui","sulum","sum","summa","summisse","summopere","sumo","sumptus","sunt","supellex","super","suppellex","supplanto","suppono","supra","surculus","surgo","sursum","suscipio","suscipit","suspendo","sustineo","suus","synagoga","tabella","tabernus","tabesco","tabgo","tabula","taceo","tactus","taedium","talio","talis","talus","tam","tamdiu","tamen","tametsi","tamisium","tamquam","tandem","tantillus","tantum","tardus","tego","temeritas","temperantia","templum","tempora","tempore","temporibus","temptatio","tempus","tenax","tendo","teneo","tener","tenetur","tenuis","tenus","tepesco","tepidus","ter","terebro","teres","terga","tergeo","tergiversatio","tergo","tergum","termes","terminatio","tero","terra","terreo","territo","terror","tersus","tertius","testimonium","texo","textilis","textor","textus","thalassinus","theatrum","theca","thema","theologus","thermae","thesaurus","thesis","thorax","thymbra","thymum","tibi","timidus","timor","titulus","tolero","tollo","tondeo","tonsor","torqueo","torrens","tot","totam","totidem","toties","totus","tracto","trado","traho","trans","tredecim","tremo","trepide","tres","tribuo","tricesimus","triduana","tripudio","tristis","triumphus","trucido","truculenter","tubineus","tui","tum","tumultus","tunc","turba","turbo","turpis","tutamen","tutis","tyrannus","uberrime","ubi","ulciscor","ullam","ullus","ulterius","ultio","ultra","umbra","umerus","umquam","una","unde","undique","universe","unus","urbanus","urbs","uredo","usitas","usque","ustilo","ustulo","usus","ut","uter","uterque","utilis","utique","utor","utpote","utrimque","utroque","utrum","uxor","vaco","vacuus","vado","vae","valde","valens","valeo","valetudo","validus","vallum","vapulus","varietas","varius","vehemens","vel","velit","velociter","velum","velut","venia","veniam","venio","ventito","ventosus","ventus","venustas","ver","verbera","verbum","vere","verecundia","vereor","vergo","veritas","veritatis","vero","versus","verto","verumtamen","verus","vesco","vesica","vesper","vespillo","vester","vestigium","vestrum","vetus","via","vicinus","vicissitudo","victoria","victus","videlicet","video","viduo","vigilo","vigor","vilicus","vilis","vilitas","villa","vinco","vinculum","vindico","vinitor","vinum","vir","virga","virgo","viridis","viriliter","virtus","vis","viscus","vita","vitae","vitiosus","vitium","vito","vivo","vix","vobis","vociferor","voco","volaticus","volo","volubilis","voluntarius","volup","voluptas","voluptate","voluptatem","voluptates","voluptatibus","voluptatum","volutabrum","volva","vomer","vomica","vomito","vorago","vorax","voro","vos","votum","voveo","vox","vulariter","vulgaris","vulgivagus","vulgo","vulgus","vulnero","vulnus","vulpes","vulticulus","xiphias"]},metadata:{title:"English",code:"en",language:"en",endonym:"English",dir:"ltr",script:"Latn"},music:{album:['"Awaken, My Love!"',"(What's The Story) Morning Glory?","- Tragedy +","13 Reasons Why (Season 3)","21st Century Breakdown","30 De Febrero","432 Hz Deep Healing","5-Star","528 Hz Meditation Music","54+1","8 Mile","808s & Heartbreak","9 To 5 And Odd Jobs","A Beautiful Lie","A Day At The Races","A Day Without Rain","A Fever You Can't Sweat Out","A Gangsta's Pain","A Gift & A Curse","A Hard Day's Night","A Head Full Of Dreams","A Kind Of Magic","A Million Ways To Murder","A Moment Apart","A Song For Every Moon","A Thousand Suns","A Winter Romance","ABBA","AI YoungBoy","AJ Tracey","Act One","After Hours","Agent Provocateur","All About You","All I Know So Far: Setlist","All Or Nothing","All Out","All Over The Place","All Stand Together","All The Lost Souls","All The Things I Never Said","All Things Must Pass","Alleen","Alright, Still","Alta Suciedad","America","American Heartbreak","American Teen","And Justice For None","Animal Songs","Another Friday Night","Anything Goes","Ao Vivo Em São Paulo","Ao Vivo No Ibirapuera","Apricot Princess","Aqui E Agora (Ao Vivo)","Arcane League Of Legends","Ardipithecus","Aretha Now","Around The Fur","Arrival","Artist 2.0","As She Pleases","Ascend","Ashlyn","Astro Lounge","At Night, Alone.","At. Long. Last. ASAP","Atlas","Audioslave","Aura","Austin","Awake","Away From The Sun","Ayayay!","Baby On Baby","Back For Everything","Back From The Edge","Back In Black","Back To Black","Back To The Game","Bad","Bahía Ducati","Baila","Barbie The Album","Battleground","Bayou Country","Bcos U Will Never B Free","Be","Be Here Now","Beautiful Mind","Beautiful Thugger Girls","Beautiful Trauma","Beauty And The Beast","Beggars Banquet","Being Funny In A Foreign Language","Berlin Lebt","Berry Is On Top","Best White Noise For Baby Sleep - Loopable With No Fade","Big Baby DRAM","Bigger, Better, Faster, More!","Billy Talent II","Black Star Elephant","Blackout","Blank Face LP","Bleach","Blizzard Of Ozz","Blonde","Blood Sugar Sex Magik","Bloom","Blowin' Your Mind!","Blu Celeste","Blue","Blue Banisters","Blue Hawaii","Blue Neighbourhood","Bluebird Days","Bobby Tarantino","Bobby Tarantino II","Bon Iver","Born Pink","Born To Run","Brand New Eyes","Break The Cycle","Breakfast In America","Breakthrough","Brett Young","Bridge Over Troubled Water","Bright: The Album","Brol","Buds","Buena Vista Social Club","Built On Glass","Bury Me At Makeout Creek","Busyhead","By The Way","CB6","CNCO","California Sunrise","Californication","Call Me Irresponsible","Calm","Camino Palmero","Camp","Caracal","Carbon Fiber Hits","Carnival","Carry On","Cartel De Santa","Certified Lover Boy","Chaaama","Chama Meu Nome","Chapter 1: Snake Oil","Chapter 2: Swamp Savant","Chapter One","Charlie's Angels","Cherry Bomb","Chief","Chocolate Factory","Chosen","Chris Brown","Christina Aguilera","Chromatica","Church","City Of Evil","Clandestino","Clouds","Coco","Collision Course","Colour Vision","Combat Rock","Come Around Sundown","Come Away With Me","Come Home The Kids Miss You","Come What(ever) May","Commando","Common Sense","Communion","Conditions","Confident","Confrontation","Control The Streets, Volume 2","Corinne Bailey Rae","Costello Music","Cottonwood","Covers, Vol. 2","Cozy Tapes Vol. 2: Too Cozy","Crash Talk","Crazy Love","Crazysexycool","Crowded House","Cruisin' With Junior H","Culture","Current Mood","DS2","Dale","Danger Days: The True Lives Of The Fabulous Killjoys","Dangerous Woman","Dangerous: The Double Album","Dark Horse","Day69","Daydream","De Fiesta","De Viaje","DeAnn","Death Race For Love","Delirium","Delta","Demidevil","Depression Cherry","Descendants","Desgenerados Mixtape","Destin","Destiny Fulfilled","Desvelado","Detroit 2","Dex Meets Dexter","Dharma","Die A Legend","Different World","Dig Your Roots","Digital Druglord","Dirt","Disclaimer I / II","Discovery","Disraeli Gears","Disumano","Dizzy Up The Girl","Don't Play That Song","Donda","Donde Quiero Estar","Doo-Wops & Hooligans","Down The Way","Dr. Feelgood","Dream Your Life Away","Dreaming Out Loud","Drip Harder","Drive","Drones","Dropped Outta College","Drowning","Dua Warna Cinta","Dulce Beat","Dusty In Memphis","Dutty Rock","Dying To Live","ENR","East Atlanta Love Letter","Editorial","Edna","El Abayarde","El Amor En Los Tiempos Del Perreo","El Camino","El Comienzo","El Dorado","El Karma","El Mal Querer","El Malo","El Trabajo Es La Suerte","El Viaje De Copperpot","Electric Ladyland","Emotion","En Tus Planes","Endless Summer Vacation","Enter The Wu-Tang (36 Chambers)","Equals (=)","Estrella","Euphoria","Europop","Evermore","Every Kingdom","Everyday Life","Evolve","Expectations","Face Yourself","Facelift","Fallin'","Fancy You","Fantasía","Favourite Worst Nightmare","Fear Of The Dark","Fearless","Feel Something","Feels Like Home","Femme Fatale","Ferxxocalipsis","Fifty Shades Darker","Fifty Shades Freed","Fifty Shades Of Grey","Final (Vol.1)","Finding Beauty In Negative Spaces","Fine Line","First Impressions Of Earth","First Steps","Five Seconds Flat","Folklore","For Emma, Forever Ago","Forajido EP 1","Forever","Forever Young","Formula Of Love: O+T=<3","Free 6lack","Freudian","Frozen II","Full Moon Fever","Funhouse","Funk Wav Bounces Vol.1","Future History","FutureSex/LoveSounds","Fuzzybrain","Gallery","Gangsta's Paradise","Gemini","Gemini Rights","Generationwhy","Get A Grip","Get Up","Gettin' Old","Girl","Gladiator","Glisten","Globalization","Gloria","Glory Days","God's Project","Gold Skies","Golden","Good Evening","Good Thing","Goodbye Yellow Brick Road","Gossip Columns","Got Your Six","Graceland","Graduation","Grand Champ","Grandson, Vol. 1","Green River","Guerra","Ha*Ash Primera Fila - Hecho Realidad","Haiz","Hamilton","Happy Endings","Harry Styles","Hasta La Raíz","Hatful Of Hollow","Head In The Clouds","Heard It In A Past Life","Heart Shaped World","Heartbeat City","Heartbreak On A Full Moon / Cuffing Season - 12 Days Of Christmas","Heaven Or Hell","Heaven knows","Hellbilly Deluxe","Hellboy","Help!","Her Loss","Here Comes The Cowboy","Hey World","High School Musical","High Tide In The Snake's Nest","Historias De Un Capricornio","Hndrxx","Hombres G (Devuélveme A Mi Chica)","Homerun","Homework","Hot Fuss","Hot Pink","Hot Sauce / Hello Future","Hot Space","Hotel Diablo","Houses Of The Holy","How Big, How Blue, How Beautiful","How I'm Feeling","How To Be Human","How To Save A Life","How To: Friend, Love, Freefall","Hozier","Human","Huncho Jack, Jack Huncho","Hunter Hayes","Hysteria","I Am...Sasha Fierce","I Can't Handle Change","I Met You When I Was 18. (The Playlist)","I Never Liked You","I Never Loved A Man The Way I Love You","I See You","I Think You Think Too Much Of Me","I Used To Know Her","I Used To Think I Could Fly","I'm Comin' Over","Ich & Keine Maske","If You Can Believe Your Eyes & Ears","Il Ballo Della Vita","Ill Communication","Imagination & The Misfit Kid","Imagine","Immortalized","In A Perfect World...","In Colour","In My Own Words","In Rainbows","In Return","In The Lonely Hour","Infest","Innuendo","Inter Shibuya - La Mafia","Interstellar","Is This It","It Was Written","It's Not Me, It's You","It's Only Me","Ivory","JackBoys","Jamie","Jazz","Jibrail & Iblis","Jordi","Jordin Sparks","Jose","Just As I Am","Just Cause Y'all Waited 2","Just Like You","Justified","K-12 / After School","K.I.D.S.","K.O.","K.O.B. Live","KG0516","KOD","Kane Brown","Kid A","Kid Krow","Kids See Ghosts","Kids in Love","Kinks (You Really Got Me)","Know-It-All","Konvicted","Kring","LANY","LM5","La Criatura","La Flaca","La Melodia De La Calle","La Revolucion","Lady Lady","Lady Wood","Langit Mong Bughaw","Las Que No Iban A Salir","Last Day Of Summer","Last Year Was Complicated","Layers","Layover","Lazarus","Led Zeppelin","Left Of The Middle","Leftoverture","Legends Never Die","Let's Skip To The Wedding","Let's Talk About Love","Licensed To Ill","Life In Cartoon Motion","Life Thru A Lens","Lifelines","Like..?","Lil Big Pac","Lil Boat","Lil Boat 2","Lil Boat 3.5","Lil Kiwi","Lil Pump","Limon Y Sal","Listen Without Prejudice","Little Voice","Live On Red Barn Radio I & II","Lo Que Andábamos Buscando","Lofi Fruits Music 2021","London Calling","Los Campeones Del Pueblo","Los Extraterrestres","Los Favoritos 2","Lost","Lost In Love","Loud","Love Sick","Love Story","Love Stuff","Love Yourself: Tear","Lover","Luca Brasi 2: Gangsta Grillz","Lust For Life","Luv Is Rage","M!ssundaztood","Ma Fleur","Made In Lagos","Mafia Bidness","Magazines Or Novels","Mainstream Sellout","Majestic","Make It Big","Make Yourself","Making Mirrors","Mamma Mia! Here We Go Again","Man Of The Woods","Manic","Me And My Gang","Meduza","Meet The Orphans","Meet The Woo","Melim","Mellon Collie And The Infinite Sadness","Melly vs. Melvin","Memories...Do Not Open","Menagerie","Midnights","Minecraft - Volume Alpha","Minutes To Midnight","Mix Pa Llorar En Tu Cuarto","Modo Avión","Monkey Business","Mono.","Montana","Montevallo","Moosetape","Morning View","Motivan2","Moving Pictures","Mr. Davis","Mr. Misunderstood","Mulan","Mura Masa","Music From The Edge Of Heaven","Music Of The Sun","My House","My Kinda Party","My Krazy Life","My Liver Will Handle What My Heart Can't","My Moment","My Own Lane","My Turn","My Worlds","Na Praia (Ao Vivo)","Nakamura","Nation Of Two","Navegando","Need You Now","Neon Future III","Neotheater","Never Trust A Happy Song","New English","News Of The World","Nicole","Night & Day","Nimmerland","Nimrod","Nine Track Mind","No Angel","No Me Pidas Perdón","No More Drama","No Protection","No Strings Attached","No Time To Die","Nobody Is Listening","Non Stop Erotic Cabaret","Non-Fiction","Northsbest","Nostalgia","Nostalgia, Ultra","Notes On A Conditional Form","Now Or Never","O Embaixador (Ao Vivo)","O My Heart","OK Computer","Ocean","Ocean Avenue","Ocean Eyes","Odisea","Oh My My","Oh, What A Life","On The 6","One In A Million","One More Light","One Of These Nights","Open Up And Say...Ahh!","Ordinary Man","Origins","Out Of The Blue","Over It","OzuTochi","PTSD","Pa Las Baby's Y Belikeada","Pa Que Hablen","Pa' Luego Es Tarde","Pa' Otro La 'O","Pablo Honey","Pain Is Love","Pain Is Temporary","Painting Pictures","Palmen Aus Plastik 2","Para Mi Ex","Para Siempre","Partners In Crime","Pawn Shop","Pegasus / Neon Shark VS Pegasus","Pet Sounds","Piece By Piece","Pier Pressure","Pineapple Sunrise","Piseiro 2020 Ao Vivo","Planet Pit","Plans","Play Deep","Playa Saturno","Por Primera Vez","Por Vida","Positions","Post Human: Survival Horror","Poster Girl","Prazer, Eu Sou Ferrugem (Ao Vivo)","Pretty Girls Like Trap Music","Pretty. Odd.","Prince Royce","Prisma","Prometo","Providence","Puberty 2","Punisher","Purgatory","Purple Rain","Que Bendición","Queen Of The Clouds","Quiero Volver","R&G (Rhythm & Gangsta): The Masterpiece","Raise!","Ransom 2","Rapunzel","Rare","Re Mida","Ready To Die","Realer","Rebelde","Reclassified","Recovery","Recuerden Mi Estilo","Reggatta De Blanc","Regulate… G Funk Era","Reik","Reise, Reise","Relapse","Relaxing Piano Lullabies And Natural Sleep Aid For Baby Sleep Music","Religiously. The Album.","Replay","Results May Vary","Revenge","Revolve","Revolver","Ricky Martin","Rien 100 Rien","Ripcord","Rise And Fall, Rage And Grace","Rise Of An Empire","Robin Hood: Prince Of Thieves","Rock N Roll Jesus","Romance","Romances","Ronan","Royal Blood","Rumours","Sad Boyz 4 Life II","San Lucas","Santana World","Saturation III","Sauce Boyz","Savage Mode","Saxobeats","Scarlet","Schwarzes Herz","Seal The Deal & Let's Boogie","Section.80","Segundo Romance","Sehnsucht","Shake The Snow Globe","Shang-Chi And The Legend Of The Ten Rings: The Album","Sheer Heart Attack","Shiesty Season","Shock Value","Shoot For The Stars, Aim For The Moon","Signed Sealed And Delivered","Signos","Silent Alarm","Simplemente Gracias","Sin Bandera","Sing Me A Lullaby, My Sweet Temptation","Sinner","Sirio","Sit Still, Look Pretty","Skin","Slowhand","Smash","Smithereens","Snow Cougar","Social Cues","Some Girls","Song Hits From Holiday Inn","Songs For Dads","Songs For The Deaf","Songs For You, Truths For Me","Songs In The Key Of Life","Souled Out","Sounds Of Silence","Soy Como Quiero Ser","Speak Now","Speak Your Mind","Speakerboxxx/The Love Below","Spider-Man: Into The Spider-Verse","Split Decision","Square Up","SremmLife","Starboy","Stay +","Stay Dangerous","Staying At Tamara's","Steppenwolf","Stick Season","Still Bill","Straight Outta Compton","Strange Trails","Stronger","Suavemente","Sublime","Suck It and See","Sucker","Sueños","Sugar","Summer Forever","Summer,","Sunset Season","Sunshine On Leith","Surfer Rosa","Sweet Talker","SweetSexySavage","System Of A Down","TA13OO","Talk That Talk","Talking Heads: 77","Tangled Up","Tango In The Night","Taxi Driver","Taylor Swift","Tell Me It's Real","Ten","Ten Summoner's Tales","Terra Sem Cep (Ao Vivo)","Terral","Testing","Tha Carter III","Thank Me Later","That's Christmas To Me","The Academy","The Adventures Of Bobby Ray","The Album","The Andy Williams Christmas Album","The Aviary","The Balcony","The Battle Of Los Angeles","The Beatles (White Album)","The Beginning","The Better Life","The Big Day","The Book","The Breakfast Club","The Cars","The Colour And The Shape","The Death Of Peace Of Mind","The Diary Of Alicia Keys","The Documentary","The Emancipation Of Mimi","The Eminem Show","The End Of Everything","The Final Countdown","The Forever Story","The Foundation","The Goat","The Golden Child","The Good Parts","The Greatest Showman: Reimagined","The Green Trip","The Hardest Love","The Head And The Heart","The Human Condition","The Infamous","The Lady Killer","The Last Don II","The Lion King","The Lockdown Sessions","The London Sessions","The Lord Of The Rings: The Fellowship Of The Ring","The Lost Boy","The Magic Of Christmas / The Christmas Song","The Marshall Mathers LP","The Martin Garrix Collection","The Melodic Blue","The Mockingbird & The Crow","The Pains Of Growing","The Papercut Chronicles","The Perfect Luv Tape","The Pinkprint","The Predator","The Queen Is Dead","The ReVe Festival: Finale","The Rise And Fall Of Ziggy Stardust And The Spiders From Mars","The Rising Tied","The River","The Stone Roses","The Story Of Us","The Stranger","The Sufferer & The Witness","The Sun's Tirade","The Temptations Sing Smokey","The Time Of Our Lives","The Way It Is","The Wonderful World Of Sam Cooke","The Writing's On The Wall","The Young And The Hopeless","Therapy","Therapy Session","There Is More (Live)","There Is Nothing Left To Lose","These Things Happen","Third Eye Blind","This Is Me...Then","This Unruly Mess I've Made","Threat to Survival","Thrill Of The Chase","Time","Timelezz","To Let A Good Thing Die","To Pimp A Butterfly","Toast To Our Differences","Todos Os Cantos, Vol. 1 (Ao Vivo)","Too Hard","Torches X","Total Xanarchy","Toto IV","Toulouse Street","Tourist History","Toxicity","Tragic Kingdom","Tranquility Base Hotel & Casino","Traumazine","Traveler","Tres Hombres","Trip At Knight","Tron: Legacy","True Blue","True Colors","Trustfall","Tu Veneno Mortal","Tudo Em Paz","Ubuntu","Ugly Is Beautiful","Ultra 2021","Una Mattina","Unbroken","Uncovered","Under Pressure","Unsponsored Content","Unstoppable","Unwritten","Urban Flora","Urban Hymns","Use Your Illusion I","Veneer","Versions Of Me","Vibes","Vice Versa","Vices & Virtues","Victory","Vida","Viejo Marihuano","Visualízate","Walk Away","Walk Me Home...","Watch The Throne","Wave","We Broke The Rules","We Love You Tecca","We Love You Tecca 2","Weezer (Green Album)","Welcome To The Madhouse","Westlife","What A Time To Be Alive","What Do You Think About The Car?","What Is Love?","What Makes You Country","What Separates Me From You","What You See Is What You Get / What You See Ain't Always What You Get","When It's Dark Out","When We All Fall Asleep, Where Do We Go?","Where The Light Is","While The World Was Burning","White Pony","Whitney","Who Really Cares","Who You Are","Who's Next","Wide Open","Wilder Mind","Wildfire","Willy And The Poor Boys","Wings / You Never Walk Alone","Wish","Wish You Were Here","Without Warning","Wonder","X&Y","XOXO","Y Que Quede Claro","YBN: The Mixtape","Yo Creo","You Will Regret","Youngblood","Younger Now","Youth"],artist:["$NOT","$uicideboy$","(G)I-DLE","*NSYNC","2 Chainz","21 Savage","6LACK","? & The Mysterians","A Boogie Wit da Hoodie","A Taste of Honey","A Tribe Called Quest","A-Ha","ABBA","AC/DC","AJ Tracey","ATEEZ","Ace of Base","Adele","Ado","Aerosmith","Agust D","Aitana","Al Dexter & his Troopers","Al Green","Al Jolson","Al Martino","Alan Jackson","Alannah Myles","Alec Benjamin","Alejandro Sanz","Alesso","Alfredo Olivas","Ali Gatie","Alice In Chains","Alina Baraz","All Time Low","All-4-One","All-American Rejects","Alok","America","American Quartet","Amii Stewart","Amitabh Bhattacharya","Ana Castela","Anderson .Paak","Andy Grammer","Angus & Julia Stone","Anirudh Ravichander","Anita Ward","Anitta","Anton Karas","Anuel AA","Arcade Fire","Archie Bell & The Drells","Archies","Aretha Franklin","Arizona Zervas","Armin van Buuren","Arthur Conley","Artie Shaw","Asake","Asees Kaur","Association","Atif Aslam","Audioslave","Aventura","Avril Lavigne","Aya Nakamura","B J Thomas","B.o.B","BLACKPINK","BONES","BROCKHAMPTON","BTS","Baby Keem","Bachman-Turner Overdrive","Backstreet Boys","Bad Bunny","Badshah","Bailey Zimmerman","Banda El Recodo","Barbra Streisand","Barry White","Bazzi","Bebe Rexha","Becky G","Becky Hill","Bee Gees","Ben Bernie","Ben Howard","Ben Selvin","Berlin","Bessie Smith","Bethel Music","Bette Midler","Beyonce","Bibi Blocksberg","Bibi und Tina","BigXthaPlug","Bill Doggett","Bill Haley & his Comets","Bill Withers","Billy Davis Jr","Billy Joel","Billy Paul","Billy Preston","Billy Swan","Birdy","Bizarrap","Blake Shelton","Blur","Bob Marley & The Wailers","Bob Seger","Bobby Darin","Bobby Lewis","Bobby McFerrin","Bobby Vinton","Boney M.","Bonez MC","Bonnie Tyler","Booba","Boston","BoyWithUke","Boyce Avenue","Bradley Cooper","Bread","Brent Faiyaz","Brett Young","Bring Me The Horizon","Britney Spears","Brooks & Dunn","Bruce Channel","Bruno & Marrone","Bryan Adams","Bryce Vine","Buddy Holly","Burna Boy","C. Tangana","CKay","CRO","Camilo","Capital Bra","Captain & Tennille","Cardi B","Carin Leon","Carlos Vives","Carly Simon","Carpenters","Cavetown","Celine Dion","Central Cee","Chaka Khan","Champs","Charlie Rich","Chayanne","Cheat Codes","Cher","Chic","Chicago","Chris Brown","Chris Isaak","Chris Young","Christina Aguilera","Christina Perri","Christopher Cross","Chuck Berry","Ciara","Cigarettes After Sex","Cliff Edwards (Ukelele Ike)","Cody Johnson","Colbie Caillat","Colby O'Donis","Cole Swindell","Coleman Hawkins","Contours","Coolio","Count Basie","Cris Mj","Culture Club","Cyndi Lauper","D-Block Europe","DAY6","DJ Khaled","DJ Luian","DJ Nelson","DMX","DNCE","DaVido","Dadju","Daft Punk","Dan + Shay","Daniel Powter","Danny Ocean","Darius Rucker","Dave","David Bowie","David Guetta","Daya","Dean Martin","Deee-Lite","Deep Purple","Deftones","Demi Lovato","Dennis Lloyd","Denzel Curry","Dermot Kennedy","Desiigner","Devo","Dewa 19","Dexys Midnight Runners","Diddy","Dido","Die drei !!!","Diego & Victor Hugo","Diljit Dosanjh","Dimitri Vegas & Like Mike","Dinah Shore","Dionne Warwick","Dire Straits","Disclosure","Dixie Cups","Doja Cat","Dolly Parton","Don Diablo","Don Henley","Don McLean","Don Omar","Donna Summer","Donovan","Dr. Dre","Drake","Dreamville","Dua Lipa","EMF","ENHYPEN","Earth, Wind & Fire","Ed Sheeran","Eddie Cantor","Eddie Cochran","Eddy Howard","Edgar Winter Group","Edwin Hawkins Singers","Edwin Starr","El Alfa","Eladio Carrion","Electric Light Orchestra","Elevation Worship","Ella Henderson","Ellie Goulding","Elton John","Elvis Presley","Empire of the Sun","En Vogue","Enrique Iglesias","Eslabon Armado","Ethel Waters","Etta James","Evanescence","Exile","Extreme","Faith Hill","Fall Out Boy","Fanny Brice","Farruko","Fats Domino","Fats Waller","Feid","Felix Jaehn","Fergie","Fetty Wap","Fiersa Besari","Fifth Harmony","Fine Young Cannibals","Five Finger Death Punch","Fleetwood Mac","Flo-Rida","Florence + The Machine","Flume","Foo Fighters","Foreigner","Foster The People","Four Aces","Frank Ocean","Frank Sinatra","Frankie Avalon","Frankie Valli","Fred Astaire","Freda Payne","Freddie Dredd","Freddy Fender","French Montana","Fuerza Regida","Fujii Kaze","Future","G-Eazy","Garfunkel and Oates","Gary Lewis & The Playboys","Gary Numan","Gene Autry","Gene Chandler","Gene Vincent","George Michael","George Strait","Gera MX","Ghost","Ghostemane","Gigi D'Agostino","Gladys Knight & The Pips","Glass Animals","Glee Cast","Gloria Gaynor","Godsmack","Gorillaz","Gotye","Grand Funk Railroad","Green Day","Grouplove","Grupo Firme","Grupo Marca Registrada","Gryffin","Gucci Mane","Guess Who","Gunna","Gusttavo Lima","Guy Mitchell","Gwen Stefani","Gzuz","H.E.R.","HARDY","Hailee Steinfeld","Halsey","Hans Zimmer","Harris Jayaraj","Harry Chapin","Harry James","Harry Nilsson","Harry Styles","Hayley Williams","Herb Alpert","Herman's Hermits","Hillsong UNITED","Hillsong Worship","Hollywood Undead","Honey Cone","Hoobastank","Hues Corporation","I Prevail","ITZY","IVE","Ice Cube","Ice Spice","Iggy Azalea","Imagine Dragons","Incubus","Internet Money","Isaac Hayes","J Geils Band","J. Cole","JAY-Z","JJ Lin","JP Saxe","JVKE","Jack Harlow","Jack Johnson","Jackie Wilson","Jacquees","James Arthur","James Brown","James TW","James Taylor","Jamie Foxx","Janet Jackson","Janis Joplin","Jason Aldean","Jason Mraz","Jay Chou","Jay Sean","Jay Wheeler","Jaymes Young","Jean Knight","Jeezy","Jennifer Lopez","Jennifer Warnes","Jeremih","Jeremy Zucker","Jerry Lee Lewis","Jerry Murad's Harmonicats","Jess Glynne","Jessie J","Jewel","Jimi Hendrix","Jimin","Jimmie Rodgers","Jimmy Dean","Jo Stafford","Joan Jett & The Blackhearts","Joao Gilberto","Joel Corry","John Fred & The Playboy Band","John Legend","John Mayer","John Williams","Johnnie Ray","Johnnie Taylor","Johnny Cash","Johnny Horton","Johnny Mathis","Johnny Mercer","Johnny Nash","Joji","Jon Bellion","Jonas Blue","Jonas Brothers","Joni James","Jorja Smith","Juan Gabriel","Juan Luis Guerra 4.40","Juanes","Juice Newton","Julia Michaels","Justin Bieber","Justin Quiles","KALEO","KAROL G","KAYTRANADA","KK","KSI","KYLE","Kacey Musgraves","Kane Brown","Kanye West","Karan Aujla","Kate Smith","Katy Perry","Kay Kyser","Ke$ha","Kehlani","Kelly Clarkson","Kenny Chesney","Kenny Loggins","Kenny Rogers","Kenshi Yonezu","Kenya Grace","Kevin Gates","Key Glock","Khalid","Kim Carnes","Kim Petras","Kimbra","Kina","King Gnu","Kings of Leon","Kingsmen","Kitty Kallen","Kodak Black","Kodaline","Kollegah","Kool & The Gang","Kungs","Kygo","Kylie Minogue","LE SSERAFIM","LISA","LMFAO","LUDMILLA","La Adictiva Banda San José de Mesillas","La Oreja de Van Gogh","Labrinth","Lady Antebellum","Lady GaGa","Lainey Wilson","Lana Del Rey","Latto","Lauryn Hill","Lauv","League of Legends","Lee Brice","Leon Bridges","Leona Lewis","Lesley Gore","Leslie Odom Jr.","Liam Payne","Lifehouse","Lil Baby","Lil Dicky","Lil Durk","Lil Mosey","Lil Nas X","Lil Pump","Lil Skies","Lil Tjay","Lil Uzi Vert","Lil Yachty","Lil' Kim","Lil' Wayne","Lin-Manuel Miranda","Linkin Park","Lionel Richie","Lipps Inc","Lisa Loeb","Little Peggy March","Little Richard","Lofi Fruits Music","Lord Huron","Los Del Rio","Los Dos Carnales","Los Lobos","Los Temerarios","Los Tigres Del Norte","Los Tucanes De Tijuana","Lou Reed","Loud Luxury","Louis Jordan","Louis Tomlinson","Love Unlimited","Lovin' Spoonful","Luan Santana","Luciano","Luis Miguel","Luis R Conriquez","Lulu","Lunay","Lupe Fiasco","M","MAX","MC Hammer","MC Ryan SP","MKTO","Mabel","Machine Gun Kelly","Madison Beer","Madonna","Mahalini","Major Lazer","Mambo Kingz","Maneskin","Marco Antonio Solís","Margaret Whiting","Maria Becerra","Mario","Mario Lanza","Mark Ronson","Maroon 5","Marshmello","Martin Garrix","Mary Ford","Mary J Blige","Mary J. Blige","Mary Wells","Matoma","Mau y Ricky","Meek Mill","Megadeth","Melanie","Melanie Martinez","Melendi","Men At Work","Metro Boomin","Michael Bublé","Michael Jackson","Michael McDonald","Michael Sembello","Miguel","Mike Posner","Miley Cyrus","Milky Chance","Minnie Riperton","Miracle Tones","Miranda Lambert","Mohit Chauhan","Mon Laferte","Moneybagg Yo","Monsta X","Mora","Morad","Morat","Mother Mother","Motley Crue","Ms. Lauryn Hill","Mumford & Sons","Muse","Mya","Myke Towers","NCT 127","NCT DREAM","NEFFEX","Nadin Amizah","Nancy Sinatra","Nat King Cole","Nate Smith","Natti Natasha","Nayer","Neil Diamond","Neil Sedaka","Nekfeu","Nelly","New Vaudeville Band","Next","Nickelback","Nicki Minaj","Nicki Nicole","Nicky Jam","Nina Simone","Ninho","Nipsey Hussle","Nirvana","Niska","No Doubt","Norah Jones","Normani","OMI","ONE OK ROCK","Oasis","Official HIGE DANdism","Offset","Old Dominion","Oliver Heldens","Olivia Rodrigo","Omah Lay","One Direction","Otis Redding","OutKast","Owl City","P Diddy","P!nk","PLK","PNL","Pamungkas","Passenger","Pat Boone","Patsy Cline","Patti LaBelle","Patti Page","Paul & Paula","Paul Revere & the Raiders","Paul Robeson","Paul Russell","Paul Whiteman","Paula Abdul","Peaches & Herb","Pearl Jam","Pee Wee Hunt","Pee Wee King","Pentatonix","Percy Faith","Percy Sledge","Peso Pluma","Peter Cetera","Peter Gabriel","Peter, Paul & Mary","Pharrell Williams","Pierce The Veil","Pineapple StormTv","Pink Floyd","Pink Sweat$","Piso 21","Pitbull","Plan B","Player","Polo G","Pop Smoke","Portugal. The Man","Pouya","Prince","Prince Royce","Pusha T","Quality Control","Queen","Quinn XCII","R. Kelly","RAF Camora","RAYE","REM","REO Speedwagon","Radiohead","Rag'n'Bone Man","Rage Against The Machine","Rahat Fateh Ali Khan","Rainbow Kitten Surprise","Rammstein","Rauw Alejandro","Ray Charles","Ray Parker Jr","Ray Stevens","Red Foley","Red Hot Chili Peppers","Red Velvet","Regard","Regina Belle","Reik","Rels B","Rema","Ricardo Arjona","Rich The Kid","Rick Astley","Rick Dees & his Cast of Idiots","Rick Ross","Rick Springfield","Ricky Martin","Ricky Nelson","Rihanna","Rita Ora","Ritchie Valens","Rizky Febian","Rob Thomas","Roberta Flack","Robin Schulz","Robin Thicke","Rod Stewart","Rod Wave","Roddy Ricch","Roger Miller","Romeo Santos","Rosemary Clooney","Roxette","Roy Acuff","Roy Orbison","Rudimental","Ruel","Ruth B.","Ryan Lewis","SCH","SEVENTEEN","SWV","Sabaton","Sabrina Carpenter","Sachet Tandon","Sachin-Jigar","Sade","Sam Cooke","Sam Feldt","Sam Hunt","Sam Smith","Sam The Sham & The Pharaohs","Sammy Davis Jr","Sammy Kaye","Santana","Sasha Alex Sloan","Savage Garden","Saweetie","Scorpions","Sean Kingston","Sean Paul","Sebastian Yatra","Sech","Seeb","Sezen Aksu","Sfera Ebbasta","Shaggy","Shania Twain","Shawn Mendes","Sheena Easton","Shinedown","Shubh","Sia","Sid Sriram","Sidhu Moose Wala","Silk","Silver Convention","Simon & Garfunkel","Sinead O'Connor","Sir Mix-a-Lot","Sister Sledge","Ski Mask The Slump God","Skillet","Skrillex","Sleeping At Last","Smokey Robinson","Snoop Dogg","Snow Patrol","Soda Stereo","Sonu Nigam","Sophie Ellis-Bextor","Spencer Davis Group","Spice Girls","Stan Getz","Starland Vocal Band","Stephen Sanchez","Steve Aoki","Steve Lacy","Steve Winwood","Stevie B","Sting","Stormzy","Strawberry Alarm Clock","Stray Kids","Stromae","Sublime","Sum 41","Summer Walker","Supertramp","Survivor","Swedish House Mafia","System Of A Down","T-Pain","T.I.","TAEYEON","TKKG","TLC","TOMORROW X TOGETHER","TOTO","TWICE","Tag Team","Tainy","Tammi Terrell","Tanishk Bagchi","Tate McRae","Taylor Swift","Tears For Fears","Tems","Tennessee Ernie Ford","Terence Trent D'Arby","Teresa Brewer","Terry Jacks","The Ames Brothers","The Animals","The B52s","The Bangles","The Beatles","The Black Eyed Peas","The Black Keys","The Box Tops","The Chainsmokers","The Chiffons","The Chordettes","The Clash","The Coasters","The Commodores","The Cowsills","The Cranberries","The Crew-Cuts","The Cure","The Detroit Spinners","The Diamonds","The Doobie Brothers","The Doors","The Drifters","The Emotions","The Eurythmics","The Fireballs","The Flamingos","The Foundations","The Four Seasons","The Fray","The Game","The Go Gos","The Goo Goo Dolls","The Head And The Heart","The Hollies","The Ink Spots","The Isley Brothers","The Jackson 5","The Kid LAROI","The Killers","The Kingston Trio","The Kooks","The Lemon Pipers","The Living Tombstone","The Lumineers","The Mamas & The Papas","The Marvelettes","The McCoys","The Mills Brothers","The Miracles","The Monkees","The Moody Blues","The National","The Neighbourhood","The Notorious B.I.G.","The O'Jays","The Offspring","The Osmonds","The Partridge Family","The Penguins","The Pet Shop Boys","The Platters","The Righteous Brothers","The Rolling Stones","The Ronettes","The Score","The Script","The Seekers","The Shangri-Las","The Smashing Pumpkins","The Staple Singers","The Strokes","The Supremes","The Temptations","The Turtles","The Vamps","The Verve","The Village People","The Weavers","The White Stripes","The Young Rascals","The Zombies","Thelma Houston","Thomas Rhett","Three Days Grace","Three Dog Night","Three Man Down","Timbaland","Timmy Trumpet","Toby Keith","Tom Jones","Tom Petty and the Heartbreakers","Tommy Dorsey","Tommy Edwards","Tommy James & the Shondells","Tone Loc","Toni Braxton","Topic","Tory Lanez","Tove Lo","Trevor Daniel","Trey Songz","Trippie Redd","Trueno","Tulsi Kumar","Tulus","Twenty One Pilots","Two Feet","Ty Dolla $ign","Tyga","Tyler Hubbard","U2","UB40","UZI","Ufo361","Upchurch","V","Vampire Weekend","Van McCoy","Van Morrison","Vance Joy","Vanessa Carlton","Vanessa Williams","Vera Lynn","Vernon Dalhart","Vicente Fernandez","Vishal-Shekhar","Volbeat","WILLOW","Wale","Wallows","Weezer","Wham!","Whitney Houston","Why Don't We","Wilbert Harrison","Wilson Phillips","Wiz Khalifa","Woody Guthrie","Wyclef Jean","XXXTENTACION","Xavi","YG","YNW Melly","YOASOBI","Yandel","Years & Years","Yeat","Yo Gotti","Young Dolph","Young Miko","Young Thug","YoungBoy Never Broke Again","Yung Gravy","Yuuri","Yuvan Shankar Raja","ZAYN","ZZ Top","Zac Brown Band","Zach Bryan","Zara Larsson","aespa","benny blanco","blink-182","d4vd","deadmau5","girl in red","gnash","iann dior","will.i.am"],genre:["Acid House","Acid Jazz","Acid Rock","Acoustic","Acoustic Blues","Afro-Pop","Afrobeat","Alt-Rock","Alternative","Ambient","American Trad Rock","Americana","Anime","Arena Rock","Art-Rock","Avant-Garde","Avant-Punk","Baladas y Boleros","Barbershop","Baroque","Bebop","Big Band","Black Metal","Blue Note","Bluegrass","Blues","Boogaloo","Bop","Bossa Nova","Bounce","Brazilian Funk","Breakbeat","Britpop","CCM","Cajun","Cantopop","Celtic","Celtic Folk","Chamber Music","Chant","Chanukah","Chicago Blues","Chicago House","Chicano","Children’s Music","Chill","Choral","Christian","Christmas","Classical","Club","College Rock","Conjunto","Cool Jazz","Country","Crunk","Dance","Dancehall","Death Metal","Deep House","Delta Blues","Detroit Techno","Dirty South","Disco","Disney","Dixieland","Doo-wop","Downtempo","Dream Pop","Drill","Drinking Songs","Drone","Drum'n'bass","Dub","Dubstep","EDM","Early Music","East Coast Rap","Easter","Easy Listening","Eclectic","Electric Blues","Electro","Electronic","Electronica","Emo","Enka","Environmental","Ethio-jazz","Experimental","Experimental Rock","Flamenco","Folk","Folk-Rock","Forro","French Pop","Funk","Fusion","Gangsta Rap","Garage","German Folk","German Pop","Glam Rock","Gospel","Goth","Grime","Grindcore","Groove","Grunge","Hair Metal","Halloween","Happy","Hard Bop","Hard Dance","Hard Rock","Hardcore","Hardcore Punk","Hardcore Rap","Hardstyle","Healing","Heavy Metal","High Classical","Hip Hop","Holiday","Honky Tonk","House","IDM","Impressionist","Indie","Industrial","Instrumental","J-Dance","J-Idol","J-Pop","J-Punk","J-Rock","J-Ska","J-Synth","Jackin House","Jam Bands","Japanese Pop","Jazz","Jungle","K-Pop","Karaoke","Kayokyoku","Kids","Kitsch","Klezmer","Krautrock","Latin","Latin Jazz","Latin Rap","Local","Lounge","Lullabies","MPB","Mainstream Jazz","Malay","Mandopop","March","Mariachi","Mawwal","Medieval","Meditation","Metal","Metalcore","Minimal Techno","Minimalism","Modern","Motown","Mugham","Musicals","Musique Concrète","Nature","Neo-Soul","Nerdcore","New Acoustic","New Age","New Mex","New Wave","No Wave","Noise","Nordic","Novelty","OPM","Oi!","Old School Rap","Opera","Orchestral","Original Score","Outlaw Country","Pagode","Party","Piano","Polka","Pop","Pop Film","Pop Latino","Post Dubstep","Power Pop","Praise & Worship","Progressive House","Progressive Rock","Proto-punk","Psych Rock","Psychedelic","Punk","Punk Rock","Qawwali","Quiet Storm","R&B","Ragtime","Rainy Day","Rap","Reggae","Reggaeton","Regional Mexicano","Relaxation","Renaissance","Retro","Rock","Rockabilly","Rocksteady","Romance","Romantic","Roots Reggae","Roots Rock","SKA","Sad","Salsa","Samba","Second Line","Sertanejo","Shaabi","Shoegaze","Sleep","Smooth Jazz","Soft Rock","Soul","Soundtrack","Southern Gospel","Southern Rock","Space Rock","Stage And Screen","Steampunk","Summer","Surf","Swamp Pop","Swing","Synth Pop","Tango","Techno","Teen Pop","Tejano","Tex-Mex","Thanksgiving","Traditional","Trance","Trip Hop","Tropical","Underground Rap","Urban","Urban Cowboy","West Coast Rap","Western Swing","World","Worldbeat","Zydeco"],song_name:["(Everything I Do) I Do it For You","(Ghost) Riders in the Sky","(I Can't Get No) Satisfaction","(I've Got a Gal In) Kalamazoo","(I've Had) the Time of My Life","(It's No) Sin","(Just Like) Starting Over","(Let Me Be Your) Teddy Bear","(Put Another Nickel In) Music! Music! Music!","(Sexual) Healing","(Sittin' On) the Dock of the Bay","(They Long to Be) Close to You","(You Keep Me) Hangin' On","(You're My) Soul & Inspiration","(Your Love Keeps Lifting Me) Higher & Higher","12th Street Rag","1999","19th Nervous Breakdown","50 Ways to Leave Your Lover","9 to 5","96 Tears","A Boy Named Sue","A Hard Day's Night","A String of Pearls","A Thousand Miles","A Tree in the Meadow","A Whiter Shade of Pale","A Whole New World (Aladdin's Theme)","A Woman in Love","A-Tisket A-Tasket","ABC","Abracadabra","Ac-cent-tchu-ate the Positive","Addicted to Love","After You've Gone","Afternoon Delight","Again","Against All Odds (Take a Look At Me Now)","Ain't Misbehavin'","Ain't No Mountain High Enough","Ain't No Sunshine","Ain't That a Shame","Airplanes","All Along the Watchtower","All I Have to Do is Dream","All I Wanna Do","All My Lovin' (You're Never Gonna Get It)","All Night Long (All Night)","All Out of Love","All Shook Up","All You Need is Love","Alone","Alone Again (Naturally)","Always On My Mind","American Pie","American Woman","Angie","Another Brick in the Wall (part 2)","Another Day in Paradise","Another Night","Another One Bites the Dust","Apologize","April Showers","Aquarius/Let The Sunshine In","Are You Lonesome Tonight?","Arthur's Theme (Best That You Can Do)","As Time Goes By","At Last","At the Hop","Auf Wiederseh'n Sweetheart","Baby Baby","Baby Come Back","Baby Got Back","Baby Love","Baby One More Time","Bad","Bad Day","Bad Girls","Bad Moon Rising","Bad Romance","Baker Street","Ball of Confusion (That's What the World is Today)","Ballad of the Green Berets","Ballerina","Band On the Run","Band of Gold","Battle of New Orleans","Be Bop a Lula","Be My Baby","Be My Love","Beat It","Beautiful Day","Beauty & the Beast","Because I Love You (The Postman Song)","Because You Loved Me","Because of You","Before The Next Teardrop Falls","Begin the Beguine","Behind Closed Doors","Being With You","Believe","Ben","Bennie & the Jets","Besame Mucho","Best of My Love","Bette Davis Eyes","Big Bad John","Big Girls Don't Cry","Billie Jean","Bitter Sweet Symphony","Black Or White","Black Velvet","Blaze of Glory","Bleeding Love","Blue Suede Shoes","Blue Tango","Blueberry Hill","Blurred Lines","Body & Soul","Bohemian Rhapsody","Boogie Oogie Oogie","Boogie Woogie Bugle Boy","Boom Boom Pow","Born in the USA","Born to Be Wild","Born to Run","Boulevard of Broken Dreams","Brand New Key","Brandy (You're A Fine Girl)","Breaking Up is Hard to Do","Breathe","Bridge Over Troubled Water","Brother","Brother Louie","Brown Eyed Girl","Brown Sugar","Build Me Up Buttercup","Burn","Buttons & Bows","Bye","Bye Bye","Bye Bye Love","Caldonia Boogie (What Makes Your Big Head So Hard)","California Dreamin'","California Girls","Call Me","Call Me Maybe","Can You Feel the Love Tonight","Can't Buy Me Love","Can't Get Enough of Your Love","Can't Help Falling in Love","Candle in the Wind '97","Candy Man","Car Wash","Careless Whisper","Cars","Cat's in the Cradle","Cathy's Clown","Celebration","Centerfold","Chain of Fools","Chances Are","Change the World","Chapel of Love","Chattanooga Choo Choo","Chattanoogie Shoe-Shine Boy","Check On It","Cheek to Cheek","Cherish","Cherry Pink & Apple Blossom White","Cold","Colors of the Wind","Come On Eileen","Come On-a My House","Come Together","Coming Up","Cracklin' Rosie","Crazy","Crazy For You","Crazy Little Thing Called Love","Crazy in Love","Creep","Crimson & Clover","Crocodile Rock","Cry","Cry Like a Baby","Crying","Da Doo Ron Ron (When He Walked Me Home)","Dance to the Music","Dancing Queen","Dancing in the Dark","Dancing in the Street","Dardanella","Daydream Believer","December 1963 (Oh What a Night)","Delicado","Dilemma","Disco Duck","Disco Lady","Disturbia","Dizzy","Do That to Me One More Time","Do Wah Diddy Diddy","Do Ya Think I'm Sexy?","Do You Love Me?","Don't Be Cruel","Don't Fence Me In","Don't Go Breaking My Heart","Don't Leave Me This Way","Don't Let the Stars Get in Your Eyes","Don't Let the Sun Go Down On Me","Don't Speak","Don't Stop 'Til You Get Enough","Don't Worry Be Happy","Don't You (Forget About Me)","Don't You Want Me","Doo Wop (That Thing)","Down","Down Hearted Blues","Down Under","Downtown","Dreamlover","Dreams","Drop it Like It's Hot","Drops of Jupiter (Tell Me)","Duke of Earl","E.T.","Earth Angel","Ebony & Ivory","Eight Days a Week","Empire State Of Mind","End of the Road","Endless Love","Escape (The Pina Colada Song)","Eve of Destruction","Every Breath You Take","Every Little Thing She Does is Magic","Everybody Loves Somebody","Everybody Wants to Rule the World","Everyday People","Eye of the Tiger","Faith","Fallin'","Fame","Family Affair","Fantasy","Fast Car","Feel Good Inc","Feel Like Making Love","Fire & Rain","Firework","Flashdance. What a Feeling","Fly Robin Fly","Foolish Games","Footloose","For What It's Worth (Stop","Fortunate Son","Frankenstein","Freak Me","Freebird","Frenesi","Funkytown","Gangsta's Paradise","Georgia On My Mind","Georgy Girl","Get Back","Get Down Tonight","Get Off of My Cloud","Ghostbusters","Gimme Some Lovin'","Girls Just Wanna Have Fun","Give Me Everything","Gives You Hell","Glamorous","Glory of Love","Go Your Own Way","God Bless America","God Bless the Child","Gold Digger","Gonna Make You Sweat (Everybody Dance Now)","Good Lovin'","Good Times","Good Vibrations","Goodbye Yellow Brick Road","Goodnight","Got to Give it Up","Grease","Great Balls of Fire","Greatest Love of All","Green Onions","Green River","Green Tambourine","Grenade","Groove is in the Heart","Groovin'","Gypsies","Hair","Hang On Sloopy","Hanging by a Moment","Hanky Panky","Happy Days Are Here Again","Happy Together","Harbour Lights","Hard to Say I'm Sorry","Harper Valley PTA","Have You Ever Really Loved a Woman?","He'll Have to Go","He's So Fine","He's a Rebel","Heart of Glass","Heart of Gold","Heartbreak Hotel","Hello","Hello Dolly","Help Me","Help!","Here Without You","Here in My Heart","Hero","Hey Baby","Hey Jude","Hey Paula","Hey There","Hey There Delilah","Hey Ya!","Higher Love","Hips don't lie","Hit the Road","Hold On","Hollaback Girl","Honey","Honky Tonk","Honky Tonk Woman","Horse With No Name","Hot Child In The City","Hot Stuff","Hotel California","Hound Dog","House of the Rising Sun","How Deep is Your Love?","How Do I Live?","How Do You Mend a Broken Heart","How High the Moon","How Much is That Doggy in the Window?","How Will I Know","How You Remind Me","How to Save a Life","Hungry Heart","Hurt So Good","I Believe I Can Fly","I Can Dream","I Can Help","I Can See Clearly Now","I Can't Get Next to You","I Can't Get Started","I Can't Go For That (No Can Do)","I Can't Help Myself (Sugar Pie","I Can't Stop Loving You","I Don't Want to Miss a Thing","I Fall to Pieces","I Feel Fine","I Feel For You","I Feel Love","I Get Around","I Got You (I Feel Good)","I Got You Babe","I Gotta Feeling","I Heard it Through the Grapevine","I Honestly Love You","I Just Called to Say I Love You","I Just Wanna Be Your Everything","I Kissed A Girl","I Love Rock 'n' Roll","I Need You Now","I Only Have Eyes For You","I Shot the Sheriff","I Still Haven't Found What I'm Looking For","I Swear","I Think I Love You","I Walk the Line","I Wanna Dance With Somebody (Who Loves Me)","I Wanna Love You","I Want You Back","I Want to Hold Your Hand","I Want to Know What Love Is","I Went to Your Wedding","I Will Always Love You","I Will Follow Him","I Will Survive","I Write the Songs","I'll Be Missing You","I'll Be There","I'll Make Love to You","I'll Never Smile Again","I'll Take You There","I'll Walk Alone","I'll be seeing you","I'm Looking Over a Four Leaf Clover","I'm So Lonesome I Could Cry","I'm Sorry","I'm Walking Behind You","I'm Your Boogie Man","I'm Yours","I'm a Believer","I've Heard That Song Before","If (They Made Me a King)","If I Didn't Care","If You Don't Know Me By Now","If You Leave Me Now","Imagine","In Da Club","In the End","In the Ghetto","In the Mood","In the Summertime","In the Year 2525 (Exordium & Terminus)","Incense & Peppermints","Indian Reservation (The Lament Of The Cherokee Reservation Indian)","Instant Karma","Iris","Ironic","Irreplaceable","It Had to Be You","It's All in the Game","It's My Party","It's Now Or Never","It's Still Rock 'n' Roll to Me","It's Too Late","Jack & Diane","Jailhouse Rock","Jessie's Girl","Jive Talkin'","Johnny B Goode","Joy to the World","Judy in Disguise (With Glasses)","Jump","Jumpin' Jack Flash","Just Dance","Just My Imagination (Running Away With Me)","Just the Way You Are","Kansas City","Karma Chameleon","Keep On Loving You","Killing Me Softly With His Song","King of the Road","Kiss","Kiss & Say Goodbye","Kiss From a Rose","Kiss Me","Kiss On My List","Kiss You All Over","Knock On Wood","Knock Three Times","Kokomo","Kryptonite","Kung Fu Fighting","La Bamba","Lady","Lady Marmalade (Voulez-Vous Coucher Aver Moi Ce Soir?)","Last Train to Clarksville","Layla","Le Freak","Leader of the Pack","Lean On Me","Leaving","Let Me Call You Sweetheart","Let Me Love You","Let it Be","Let it Snow! Let it Snow! Let it Snow!","Let's Dance","Let's Get it On","Let's Groove","Let's Hear it For the Boy","Let's Stay Together","Light My Fire","Lights","Like a Prayer","Like a Rolling Stone","Like a Virgin","Little Darlin'","Little Things Mean a Lot","Live & Let Die","Livin' La Vida Loca","Livin' On a Prayer","Living For the City","Locked Out Of Heaven","Lola","Lonely Boy","Long Cool Woman in a Black Dress","Long Tall Sally","Look Away","Lookin' Out My Back Door","Lose Yourself","Losing My Religion","Louie Louie","Love Child","Love Hangover","Love In This Club","Love Is Blue (L'Amour Est Bleu)","Love Letters in the Sand","Love Me Do","Love Me Tender","Love Shack","Love Theme From 'A Star is Born' (Evergreen)","Love Train","Love Will Keep Us Together","Love is a Many Splendoured Thing","Love to Love You Baby","Love's Theme","Loving You","Low","Macarena","Mack the Knife","Maggie May","Magic","Magic Carpet Ride","Make Love to Me","Make it With You","Makin' Whoopee","Mama Told Me Not to Come","Man in the Mirror","Manana (Is Soon Enough For Me)","Maneater","Maniac","Maybellene","Me & Bobby McGee","Me & Mrs Jones","Memories Are Made of This","Mercy Mercy Me (The Ecology)","Mickey","Midnight Train to Georgia","Minnie the Moocher","Miss You","Miss You Much","Mister Sandman","Mmmbop","Mona Lisa","Monday Monday","Money For Nothing","Mony Mony","Mood Indigo","Moonlight Cocktail","Moonlight Serenade","More Than Words","More Than a Feeling","Morning Train (Nine to Five)","Mr Big Stuff","Mr Brightside","Mr Tambourine Man","Mrs Brown You've Got a Lovely Daughter","Mrs Robinson","Mule Train","Music","My Blue Heaven","My Boyfriend's Back","My Eyes Adored You","My Girl","My Guy","My Heart Will Go On","My Life","My Love","My Man","My Prayer","My Sharona","My Sweet Lord","Na Na Hey Hey (Kiss Him Goodbye)","Nature Boy","Near You","Need You Now","Need You Tonight","Never Gonna Give You Up","Night & Day","Night Fever","Nights in White Satin","No One","No Scrubs","Nobody Does it Better","Nothin' on You","Nothing Compares 2 U","Nothing's Gonna Stop Us Now","Ode To Billie Joe","Oh","Oh Happy Day","Oh My Papa (O Mein Papa)","Ol' Man River","Ole Buttermilk Sky","On Bended Knee","On My Own","On the Atchison","One","One Bad Apple","One More Try","One O'Clock Jump","One Sweet Day","One of These Nights","One of Us","Only The Lonely (Know The Way I Feel)","Only You (And You Alone)","Open Arms","Over There","Over the Rainbow","Paint it Black","Papa Don't Preach","Papa Was a Rolling Stone","Papa's Got a Brand New Bag","Paper Doll","Paper Planes","Paperback Writer","Party Rock Anthem","Peg o' My Heart","Peggy Sue","Pennies From Heaven","Penny Lane","People","People Got to Be Free","Personality","Philadelphia Freedom","Physical","Piano Man","Pick Up the Pieces","Pistol Packin' Mama","Play That Funky Music","Please Mr Postman","Poker Face","Pon De Replay","Pony Time","Pop Muzik","Prisoner of Love","Private Eyes","Promiscuous","Proud Mary","Purple Haze","Purple Rain","Puttin' on the Ritz","Que sera sera (Whatever will be will be)","Queen of Hearts","Rag Doll","Rag Mop","Rags to Riches","Raindrops Keep Falling On My Head","Rapture","Ray of Light","Reach Out (I'll Be There)","Red Red Wine","Rehab","Respect","Return to Sender","Reunited","Revolution","Rhapsody in Blue","Rhinestone Cowboy","Rich Girl","Riders On the Storm","Right Back Where We Started From","Ring My Bell","Ring of Fire","Rock Around the Clock","Rock With You","Rock Your Baby","Rock the Boat","Rock the Casbah","Roll Over Beethoven","Roll With It","Rolling In The Deep","Rosanna","Roses Are Red","Royals","Ruby Tuesday","Rudolph","Rum & Coca-Cola","Runaround Sue","Runaway","Running Scared","Rush Rush","Sailing","Save the Best For Last","Save the Last Dance For Me","Say It Right","Say My Name","Say Say Say","Say You","School's Out","Seasons in the Sun","Secret Love","Sentimental Journey","Sexyback","Sh-Boom (Life Could Be a Dream)","Shadow Dancing","Shake Down","Shake You Down","She Drives Me Crazy","She Loves You","She's a Lady","Shining Star","Shop Around","Shout","Silly Love Songs","Since U Been Gone","Sing","Singing The Blues","Single Ladies (Put A Ring On It)","Sir Duke","Sixteen Tons","Sledgehammer","Sleep Walk","Sleepy Lagoon","Slow Poke","Smells Like Teen Spirit","Smoke Gets in Your Eyes","Smoke On the Water","Smoke! Smoke! Smoke! (That Cigarette)","Smooth","So Much in Love","Soldier Boy","Some Enchanted Evening","Some of These Days","Somebody That I Used to Know","Somebody to Love","Someday","Somethin' Stupid","Something","Soul Man","Spanish Harlem","Spill the Wine","Spinning Wheel","Spirit in the Sky","St George & the Dragonette","St Louis Blues","Stagger Lee","Stairway to Heaven","Stand By Me","Stardust","Stars & Stripes Forever","Stay (I Missed You)","Stayin' Alive","Stop! in the Name of Love","Stormy Weather (Keeps Rainin' All the Time)","Straight Up","Strange Fruit","Stranger On the Shore","Strangers in the Night","Strawberry Fields Forever","Streets of Philadelphia","Stronger","Stuck On You","Sugar Shack","Sugar Sugar","Summer in the City","Summertime Blues","Sunday","Sunshine Superman","Sunshine of Your Love","Superstar","Superstition","Surfin' USA","Suspicious Minds","Swanee","Sweet Caroline (Good Times Never Seemed So Good)","Sweet Child O' Mine","Sweet Dreams (Are Made of This)","Sweet Georgia Brown","Sweet Home Alabama","Sweet Soul Music","Swinging On a Star","T For Texas (Blue Yodel No 1)","TSOP (The Sound of Philadelphia)","Take Me Home","Take My Breath Away","Take On Me","Take The 'A' Train","Take a Bow","Tammy","Tangerine","Tears in Heaven","Tears of a Clown","Temperature","Tennessee Waltz","Tequila","Tha Crossroads","Thank You (Falettinme be Mice Elf Again)","That Lucky Old Sun (Just Rolls Around Heaven All Day)","That Old Black Magic","That'll Be the Day","That's Amore","That's What Friends Are For","That's the Way (I Like It)","That's the Way Love Goes","The Boy is Mine","The Boys of Summer","The Christmas Song (Chestnuts Roasting On An Open Fire)","The End of the World","The First Time Ever I Saw Your Face","The Girl From Ipanema","The Glow-Worm","The Great Pretender","The Gypsy","The Hustle","The Joker","The Last Dance","The Letter","The Loco-Motion","The Long & Winding Road","The Love You Save","The Morning After","The Power of Love","The Prisoner's Song","The Reason","The Rose","The Sign","The Song From Moulin Rouge (Where Is Your Heart)","The Sounds of Silence","The Streak","The Sweet Escape","The Thing","The Tide is High","The Tracks of My Tears","The Twist","The Wanderer","The Way We Were","The Way You Look Tonight","The Way You Move","Theme From 'A Summer Place'","Theme From 'Greatest American Hero' (Believe It Or Not)","Theme From 'Shaft'","There goes my baby","These Boots Are Made For Walking","Third Man Theme","This Diamond Ring","This Guy's in Love With You","This Land is Your Land","This Love","This Ole House","This Used to Be My Playground","Three Coins in the Fountain","Three Times a Lady","Thrift Shop","Thriller","Ticket to Ride","Tie a Yellow Ribbon 'round the Old Oak Tree","Tiger Rag","Tighten Up","Tik-Toc","Till I Waltz Again With You","Till The End of Time","Time After Time","Time of the Season","To Sir","Tom Dooley","Tonight's the Night (Gonna Be Alright)","Too Close","Too Young","Tossing & Turning","Total Eclipse of the Heart","Touch Me","Toxic","Travellin' Band","Travellin' Man","Truly Madly Deeply","Turn! Turn! Turn! (To Everything There is a Season)","Tutti Frutti","Twist & Shout","Two Hearts","U Can't Touch This","U Got it Bad","Umbrella","Un-Break My Heart","Unbelievable","Unchained Melody","Uncle Albert (Admiral Halsey)","Under the Boardwalk","Under the Bridge","Unforgettable","Up Around the Bend","Up Up & Away","Up Where We Belong","Upside Down","Use Somebody","Vaya Con Dios (may God Be With You)","Venus","Vision of Love","Viva La Vida","Vogue","Volare","Wabash Cannonball","Waiting For a Girl Like You","Wake Me Up Before You Go Go","Wake Up Little Susie","Walk Don't Run","Walk Like a Man","Walk Like an Egyptian","Walk On By","Walk On the Wild Side","Walk This Way","Wannabe","Want Ads","Wanted","War","Waterfalls","Wayward Wind","We Are Family","We Are Young","We Are the Champions","We Are the World","We Belong Together","We Built This City","We Can Work it Out","We Didn't Start the Fire","We Found Love","We Got The Beat","We Will Rock You","We've Only Just Begun","Weak","Wedding Bell Blues","West End Blues","West End Girls","What Goes Around Comes Around","What a Fool Believes","What'd I Say","What's Going On?","What's Love Got to Do With It?","Whatcha Say","Wheel of Fortune","When Doves Cry","When You Wish Upon a Star","When a Man Loves a Woman","Where Did Our Love Go","Where is the Love?","Whip It","Whispering","White Christmas","White Rabbit","Whole Lotta Love","Whole Lotta Shakin' Goin' On","Whoomp! (There it Is)","Why Do Fools Fall in Love?","Why Don't You Believe Me?","Wichita Lineman","Wicked Game","Wild Thing","Wild Wild West","Will It Go Round In Circles","Will You Love Me Tomorrow","Winchester Cathedral","Wind Beneath My Wings","Wipe Out","Wishing Well","With Or Without You","Without Me","Without You","Woman","Won't Get Fooled Again","Wooly Bully","Working My Way Back to You","YMCA","Yakety Yak","Yeah!","Yellow Rose of Texas","Yesterday","You Ain't Seen Nothin' Yet","You Always Hurt the One You Love","You Are the Sunshine of My Life","You Belong With Me","You Belong to Me","You Can't Hurry Love","You Don't Bring Me Flowers","You Don't Have to Be a Star (To Be in My Show)","You Light Up My Life","You Make Me Feel Brand New","You Make Me Feel Like Dancing","You Really Got Me","You Send Me","You Sexy Thing","You Were Meant for Me","You make Me Wanna","You'll Never Know","You're Beautiful","You're So Vain","You're Still the One","You're the One That I Want","You've Got a Friend","You've Lost That Lovin' Feelin'","Your Cheatin' Heart","Your Song"]},person:{bio_part:["activist","artist","author","blogger","business owner","coach","creator","designer","developer","dreamer","educator","engineer","entrepreneur","environmentalist","film lover","filmmaker","foodie","founder","friend","gamer","geek","grad","inventor","leader","model","musician","nerd","parent","patriot","person","philosopher","photographer","public speaker","scientist","singer","streamer","student","teacher","traveler","veteran","writer"],bio_pattern:["{{person.bio_part}}","{{person.bio_part}}, {{person.bio_part}}","{{person.bio_part}}, {{person.bio_part}}, {{person.bio_part}}","{{person.bio_part}}, {{person.bio_part}}, {{person.bio_part}} {{internet.emoji}}","{{word.noun}} {{person.bio_supporter}}","{{word.noun}} {{person.bio_supporter}} {{internet.emoji}}","{{word.noun}} {{person.bio_supporter}}, {{person.bio_part}}","{{word.noun}} {{person.bio_supporter}}, {{person.bio_part}} {{internet.emoji}}"],bio_supporter:["advocate","devotee","enthusiast","fan","junkie","lover","supporter"],first_name:{generic:["Aaliyah","Aaron","Abagail","Abbey","Abbie","Abbigail","Abby","Abdiel","Abdul","Abdullah","Abe","Abel","Abelardo","Abigail","Abigale","Abigayle","Abner","Abraham","Ada","Adah","Adalberto","Adaline","Adam","Adan","Addie","Addison","Adela","Adelbert","Adele","Adelia","Adeline","Adell","Adella","Adelle","Aditya","Adolf","Adolfo","Adolph","Adolphus","Adonis","Adrain","Adrian","Adriana","Adrianna","Adriel","Adrien","Adrienne","Afton","Aglae","Agnes","Agustin","Agustina","Ahmad","Ahmed","Aida","Aidan","Aiden","Aileen","Aimee","Aisha","Aiyana","Akeem","Al","Alaina","Alan","Alana","Alanis","Alanna","Alayna","Alba","Albert","Alberta","Albertha","Alberto","Albin","Albina","Alda","Alden","Alec","Aleen","Alejandra","Alejandrin","Alek","Alena","Alene","Alessandra","Alessandro","Alessia","Aletha","Alex","Alexa","Alexander","Alexandra","Alexandre","Alexandrea","Alexandria","Alexandrine","Alexandro","Alexane","Alexanne","Alexie","Alexis","Alexys","Alexzander","Alf","Alfonso","Alfonzo","Alford","Alfred","Alfreda","Alfredo","Ali","Alia","Alice","Alicia","Alisa","Alisha","Alison","Alivia","Aliya","Aliyah","Aliza","Alize","Allan","Allen","Allene","Allie","Allison","Ally","Alphonso","Alta","Althea","Alva","Alvah","Alvena","Alvera","Alverta","Alvina","Alvis","Alyce","Alycia","Alysa","Alysha","Alyson","Alysson","Amalia","Amanda","Amani","Amara","Amari","Amaya","Amber","Ambrose","Amelia","Amelie","Amely","America","Americo","Amie","Amina","Amir","Amira","Amiya","Amos","Amparo","Amy","Amya","Ana","Anabel","Anabelle","Anahi","Anais","Anastacio","Anastasia","Anderson","Andre","Andreane","Andreanne","Andres","Andrew","Andy","Angel","Angela","Angelica","Angelina","Angeline","Angelita","Angelo","Angie","Angus","Anibal","Anika","Anissa","Anita","Aniya","Aniyah","Anjali","Anna","Annabel","Annabell","Annabelle","Annalise","Annamae","Annamarie","Anne","Annetta","Annette","Annie","Ansel","Ansley","Anthony","Antoinette","Antone","Antonetta","Antonette","Antonia","Antonietta","Antonina","Antonio","Antwan","Antwon","Anya","April","Ara","Araceli","Aracely","Arch","Archibald","Ardella","Arden","Ardith","Arely","Ari","Ariane","Arianna","Aric","Ariel","Arielle","Arjun","Arlene","Arlie","Arlo","Armand","Armando","Armani","Arnaldo","Arne","Arno","Arnold","Arnoldo","Arnulfo","Aron","Art","Arthur","Arturo","Arvel","Arvid","Arvilla","Aryanna","Asa","Asha","Ashlee","Ashleigh","Ashley","Ashly","Ashlynn","Ashton","Ashtyn","Asia","Assunta","Astrid","Athena","Aubree","Aubrey","Audie","Audra","Audreanne","Audrey","August","Augusta","Augustine","Augustus","Aurelia","Aurelie","Aurelio","Aurore","Austen","Austin","Austyn","Autumn","Ava","Avery","Avis","Axel","Ayana","Ayden","Ayla","Aylin","Baby","Bailee","Bailey","Barbara","Barney","Baron","Barrett","Barry","Bart","Bartholome","Barton","Baylee","Beatrice","Beau","Beaulah","Bell","Bella","Belle","Ben","Benedict","Benjamin","Bennett","Bennie","Benny","Benton","Berenice","Bernadette","Bernadine","Bernard","Bernardo","Berneice","Bernhard","Bernice","Bernie","Berniece","Bernita","Berry","Bert","Berta","Bertha","Bertram","Bertrand","Beryl","Bessie","Beth","Bethany","Bethel","Betsy","Bette","Bettie","Betty","Bettye","Beulah","Beverly","Bianka","Bill","Billie","Billy","Birdie","Blair","Blaise","Blake","Blanca","Blanche","Blaze","Bo","Bobbie","Bobby","Bonita","Bonnie","Boris","Boyd","Brad","Braden","Bradford","Bradley","Bradly","Brady","Braeden","Brain","Brandi","Brando","Brandon","Brandt","Brandy","Brandyn","Brannon","Branson","Brant","Braulio","Braxton","Brayan","Breana","Breanna","Breanne","Brenda","Brendan","Brenden","Brendon","Brenna","Brennan","Brennon","Brent","Bret","Brett","Bria","Brian","Briana","Brianne","Brice","Bridget","Bridgette","Bridie","Brielle","Brigitte","Brionna","Brisa","Britney","Brittany","Brock","Broderick","Brody","Brook","Brooke","Brooklyn","Brooks","Brown","Bruce","Bryana","Bryce","Brycen","Bryon","Buck","Bud","Buddy","Buford","Bulah","Burdette","Burley","Burnice","Buster","Cade","Caden","Caesar","Caitlyn","Cale","Caleb","Caleigh","Cali","Calista","Callie","Camden","Cameron","Camila","Camilla","Camille","Camren","Camron","Camryn","Camylle","Candace","Candelario","Candice","Candida","Candido","Cara","Carey","Carissa","Carlee","Carleton","Carley","Carli","Carlie","Carlo","Carlos","Carlotta","Carmel","Carmela","Carmella","Carmelo","Carmen","Carmine","Carol","Carolanne","Carole","Carolina","Caroline","Carolyn","Carolyne","Carrie","Carroll","Carson","Carter","Cary","Casandra","Casey","Casimer","Casimir","Casper","Cassandra","Cassandre","Cassidy","Cassie","Catalina","Caterina","Catharine","Catherine","Cathrine","Cathryn","Cathy","Cayla","Ceasar","Cecelia","Cecil","Cecile","Cecilia","Cedrick","Celestine","Celestino","Celia","Celine","Cesar","Chad","Chadd","Chadrick","Chaim","Chance","Chandler","Chanel","Chanelle","Charity","Charlene","Charles","Charley","Charlie","Charlotte","Chase","Chasity","Chauncey","Chaya","Chaz","Chelsea","Chelsey","Chelsie","Chesley","Chester","Chet","Cheyanne","Cheyenne","Chloe","Chris","Christ","Christa","Christelle","Christian","Christiana","Christina","Christine","Christop","Christophe","Christopher","Christy","Chyna","Ciara","Cicero","Cielo","Cierra","Cindy","Citlalli","Clair","Claire","Clara","Clarabelle","Clare","Clarissa","Clark","Claud","Claude","Claudia","Claudie","Claudine","Clay","Clemens","Clement","Clementina","Clementine","Clemmie","Cleo","Cleora","Cleta","Cletus","Cleve","Cleveland","Clifford","Clifton","Clint","Clinton","Clotilde","Clovis","Cloyd","Clyde","Coby","Cody","Colby","Cole","Coleman","Colin","Colleen","Collin","Colt","Colten","Colton","Columbus","Concepcion","Conner","Connie","Connor","Conor","Conrad","Constance","Constantin","Consuelo","Cooper","Cora","Coralie","Corbin","Cordelia","Cordell","Cordia","Cordie","Corene","Corine","Cornelius","Cornell","Corrine","Cortez","Cortney","Cory","Coty","Courtney","Coy","Craig","Crawford","Creola","Cristal","Cristian","Cristina","Cristobal","Cristopher","Cruz","Crystal","Crystel","Cullen","Curt","Curtis","Cydney","Cynthia","Cyril","Cyrus","Dagmar","Dahlia","Daija","Daisha","Daisy","Dakota","Dale","Dallas","Dallin","Dalton","Damaris","Dameon","Damian","Damien","Damion","Damon","Dan","Dana","Dandre","Dane","D'angelo","Dangelo","Danial","Daniela","Daniella","Danielle","Danika","Dannie","Danny","Dante","Danyka","Daphne","Daphnee","Daphney","Darby","Daren","Darian","Dariana","Darien","Dario","Darion","Darius","Darlene","Daron","Darrel","Darrell","Darren","Darrick","Darrin","Darrion","Darron","Darryl","Darwin","Daryl","Dashawn","Dasia","Dave","David","Davin","Davion","Davon","Davonte","Dawn","Dawson","Dax","Dayana","Dayna","Dayne","Dayton","Dean","Deangelo","Deanna","Deborah","Declan","Dedric","Dedrick","Dee","Deion","Deja","Dejah","Dejon","Dejuan","Delaney","Delbert","Delfina","Delia","Delilah","Dell","Della","Delmer","Delores","Delpha","Delphia","Delphine","Delta","Demarco","Demarcus","Demario","Demetris","Demetrius","Demond","Dena","Denis","Dennis","Deon","Deondre","Deontae","Deonte","Dereck","Derek","Derick","Deron","Derrick","Deshaun","Deshawn","Desiree","Desmond","Dessie","Destany","Destin","Destinee","Destiney","Destini","Destiny","Devan","Devante","Deven","Devin","Devon","Devonte","Devyn","Dewayne","Dewitt","Dexter","Diamond","Diana","Dianna","Diego","Dillan","Dillon","Dimitri","Dina","Dino","Dion","Dixie","Dock","Dolly","Dolores","Domenic","Domenica","Domenick","Domenico","Domingo","Dominic","Dominique","Don","Donald","Donato","Donavon","Donna","Donnell","Donnie","Donny","Dora","Dorcas","Dorian","Doris","Dorothea","Dorothy","Dorris","Dortha","Dorthy","Doug","Douglas","Dovie","Doyle","Drake","Drew","Duane","Dudley","Dulce","Duncan","Durward","Dustin","Dusty","Dwight","Dylan","Earl","Earlene","Earline","Earnest","Earnestine","Easter","Easton","Ebba","Ebony","Ed","Eda","Edd","Eddie","Eden","Edgar","Edgardo","Edison","Edmond","Edmund","Edna","Eduardo","Edward","Edwardo","Edwin","Edwina","Edyth","Edythe","Effie","Efrain","Efren","Eileen","Einar","Eino","Eladio","Elaina","Elbert","Elda","Eldon","Eldora","Eldred","Eldridge","Eleanora","Eleanore","Eleazar","Electa","Elena","Elenor","Elenora","Eleonore","Elfrieda","Eli","Elian","Eliane","Elias","Eliezer","Elijah","Elinor","Elinore","Elisa","Elisabeth","Elise","Eliseo","Elisha","Elissa","Eliza","Elizabeth","Ella","Ellen","Ellie","Elliot","Elliott","Ellis","Ellsworth","Elmer","Elmira","Elmo","Elmore","Elna","Elnora","Elody","Eloisa","Eloise","Elouise","Eloy","Elroy","Elsa","Else","Elsie","Elta","Elton","Elva","Elvera","Elvie","Elvis","Elwin","Elwyn","Elyse","Elyssa","Elza","Emanuel","Emelia","Emelie","Emely","Emerald","Emerson","Emery","Emie","Emil","Emile","Emilia","Emiliano","Emilie","Emilio","Emily","Emma","Emmalee","Emmanuel","Emmanuelle","Emmet","Emmett","Emmie","Emmitt","Emmy","Emory","Ena","Enid","Enoch","Enola","Enos","Enrico","Enrique","Ephraim","Era","Eriberto","Eric","Erica","Erich","Erick","Ericka","Erik","Erika","Erin","Erling","Erna","Ernest","Ernestina","Ernestine","Ernesto","Ernie","Ervin","Erwin","Eryn","Esmeralda","Esperanza","Esta","Esteban","Estefania","Estel","Estell","Estella","Estelle","Estevan","Esther","Estrella","Etha","Ethan","Ethel","Ethelyn","Ethyl","Ettie","Eudora","Eugene","Eugenia","Eula","Eulah","Eulalia","Euna","Eunice","Eusebio","Eva","Evalyn","Evan","Evangeline","Evans","Eve","Eveline","Evelyn","Everardo","Everett","Everette","Evert","Evie","Ewald","Ewell","Ezekiel","Ezequiel","Ezra","Fabian","Fabiola","Fae","Fannie","Fanny","Fatima","Faustino","Fausto","Favian","Fay","Faye","Federico","Felicia","Felicita","Felicity","Felipa","Felipe","Felix","Felton","Fermin","Fern","Fernando","Ferne","Fidel","Filiberto","Filomena","Finn","Fiona","Flavie","Flavio","Fleta","Fletcher","Flo","Florence","Florencio","Florian","Florida","Florine","Flossie","Floy","Floyd","Ford","Forest","Forrest","Foster","Frances","Francesca","Francesco","Francis","Francisca","Francisco","Franco","Frank","Frankie","Franz","Fred","Freda","Freddie","Freddy","Frederic","Frederick","Frederik","Frederique","Fredrick","Fredy","Freeda","Freeman","Freida","Frida","Frieda","Friedrich","Fritz","Furman","Gabe","Gabriel","Gabriella","Gabrielle","Gaetano","Gage","Gail","Gardner","Garett","Garfield","Garland","Garnet","Garnett","Garret","Garrett","Garrick","Garrison","Garry","Garth","Gaston","Gavin","Gayle","Gene","General","Genesis","Genevieve","Gennaro","Genoveva","Geo","Geoffrey","George","Georgette","Georgiana","Georgianna","Geovanni","Geovanny","Geovany","Gerald","Geraldine","Gerard","Gerardo","Gerda","Gerhard","Germaine","German","Gerry","Gerson","Gertrude","Gia","Gianni","Gideon","Gilbert","Gilberto","Gilda","Giles","Gillian","Gina","Gino","Giovani","Giovanna","Giovanni","Giovanny","Gisselle","Giuseppe","Gladyce","Gladys","Glen","Glenda","Glenna","Glennie","Gloria","Godfrey","Golda","Golden","Gonzalo","Gordon","Grace","Gracie","Graciela","Grady","Graham","Grant","Granville","Grayce","Grayson","Green","Greg","Gregg","Gregoria","Gregorio","Gregory","Greta","Gretchen","Greyson","Griffin","Grover","Guadalupe","Gudrun","Guido","Guillermo","Guiseppe","Gunnar","Gunner","Gus","Gussie","Gust","Gustave","Guy","Gwen","Gwendolyn","Hadley","Hailee","Hailey","Hailie","Hal","Haleigh","Haley","Halie","Halle","Hallie","Hank","Hanna","Hannah","Hans","Hardy","Harley","Harmon","Harmony","Harold","Harrison","Harry","Harvey","Haskell","Hassan","Hassie","Hattie","Haven","Hayden","Haylee","Hayley","Haylie","Hazel","Hazle","Heath","Heather","Heaven","Heber","Hector","Heidi","Helen","Helena","Helene","Helga","Hellen","Helmer","Heloise","Henderson","Henri","Henriette","Henry","Herbert","Herman","Hermann","Hermina","Herminia","Herminio","Hershel","Herta","Hertha","Hester","Hettie","Hilario","Hilbert","Hilda","Hildegard","Hillard","Hillary","Hilma","Hilton","Hipolito","Hiram","Hobart","Holden","Hollie","Hollis","Holly","Hope","Horace","Horacio","Hortense","Hosea","Houston","Howard","Howell","Hoyt","Hubert","Hudson","Hugh","Hulda","Humberto","Hunter","Hyman","Ian","Ibrahim","Icie","Ida","Idell","Idella","Ignacio","Ignatius","Ike","Ila","Ilene","Iliana","Ima","Imani","Imelda","Immanuel","Imogene","Ines","Irma","Irving","Irwin","Isaac","Isabel","Isabell","Isabella","Isabelle","Isac","Isadore","Isai","Isaiah","Isaias","Isidro","Ismael","Isobel","Isom","Israel","Issac","Itzel","Iva","Ivah","Ivory","Ivy","Izabella","Izaiah","Jabari","Jace","Jacey","Jacinthe","Jacinto","Jack","Jackeline","Jackie","Jacklyn","Jackson","Jacky","Jaclyn","Jacquelyn","Jacques","Jacynthe","Jada","Jade","Jaden","Jadon","Jadyn","Jaeden","Jaida","Jaiden","Jailyn","Jaime","Jairo","Jakayla","Jake","Jakob","Jaleel","Jalen","Jalon","Jalyn","Jamaal","Jamal","Jamar","Jamarcus","Jamel","Jameson","Jamey","Jamie","Jamil","Jamir","Jamison","Jammie","Jan","Jana","Janae","Jane","Janelle","Janessa","Janet","Janice","Janick","Janie","Janis","Janiya","Jannie","Jany","Jaquan","Jaquelin","Jaqueline","Jared","Jaren","Jarod","Jaron","Jarred","Jarrell","Jarret","Jarrett","Jarrod","Jarvis","Jasen","Jasmin","Jason","Jasper","Jaunita","Javier","Javon","Javonte","Jay","Jayce","Jaycee","Jayda","Jayde","Jayden","Jaydon","Jaylan","Jaylen","Jaylin","Jaylon","Jayme","Jayne","Jayson","Jazlyn","Jazmin","Jazmyn","Jazmyne","Jean","Jeanette","Jeanie","Jeanne","Jed","Jedediah","Jedidiah","Jeff","Jefferey","Jeffery","Jeffrey","Jeffry","Jena","Jenifer","Jennie","Jennifer","Jennings","Jennyfer","Jensen","Jerad","Jerald","Jeramie","Jeramy","Jerel","Jeremie","Jeremy","Jermain","Jermaine","Jermey","Jerod","Jerome","Jeromy","Jerrell","Jerrod","Jerrold","Jerry","Jess","Jesse","Jessica","Jessie","Jessika","Jessy","Jessyca","Jesus","Jett","Jettie","Jevon","Jewel","Jewell","Jillian","Jimmie","Jimmy","Jo","Joan","Joana","Joanie","Joanne","Joannie","Joanny","Joany","Joaquin","Jocelyn","Jodie","Jody","Joe","Joel","Joelle","Joesph","Joey","Johan","Johann","Johanna","Johathan","John","Johnathan","Johnathon","Johnnie","Johnny","Johnpaul","Johnson","Jolie","Jon","Jonas","Jonatan","Jonathan","Jonathon","Jordan","Jordane","Jordi","Jordon","Jordy","Jordyn","Jorge","Jose","Josefa","Josefina","Joseph","Josephine","Josh","Joshua","Joshuah","Josiah","Josiane","Josianne","Josie","Josue","Jovan","Jovani","Jovanny","Jovany","Joy","Joyce","Juana","Juanita","Judah","Judd","Jude","Judge","Judson","Judy","Jules","Julia","Julian","Juliana","Julianne","Julie","Julien","Juliet","Julio","Julius","June","Junior","Junius","Justen","Justice","Justina","Justine","Juston","Justus","Justyn","Juvenal","Juwan","Kacey","Kaci","Kacie","Kade","Kaden","Kadin","Kaela","Kaelyn","Kaia","Kailee","Kailey","Kailyn","Kaitlin","Kaitlyn","Kale","Kaleb","Kaleigh","Kaley","Kali","Kallie","Kameron","Kamille","Kamren","Kamron","Kamryn","Kane","Kara","Kareem","Karelle","Karen","Kari","Kariane","Karianne","Karina","Karine","Karl","Karlee","Karley","Karli","Karlie","Karolann","Karson","Kasandra","Kasey","Kassandra","Katarina","Katelin","Katelyn","Katelynn","Katharina","Katherine","Katheryn","Kathleen","Kathlyn","Kathryn","Kathryne","Katlyn","Katlynn","Katrina","Katrine","Kattie","Kavon","Kay","Kaya","Kaycee","Kayden","Kayla","Kaylah","Kaylee","Kayleigh","Kayley","Kayli","Kaylie","Kaylin","Keagan","Keanu","Keara","Keaton","Keegan","Keeley","Keely","Keenan","Keira","Keith","Kellen","Kelley","Kelli","Kellie","Kelly","Kelsi","Kelsie","Kelton","Kelvin","Ken","Kendall","Kendra","Kendrick","Kenna","Kennedi","Kennedy","Kenneth","Kennith","Kenny","Kenton","Kenya","Kenyatta","Kenyon","Keon","Keshaun","Keshawn","Keven","Kevin","Kevon","Keyon","Keyshawn","Khalid","Khalil","Kian","Kiana","Kianna","Kiara","Kiarra","Kiel","Kiera","Kieran","Kiley","Kim","Kimberly","King","Kip","Kira","Kirk","Kirsten","Kirstin","Kitty","Kobe","Koby","Kody","Kolby","Kole","Korbin","Korey","Kory","Kraig","Kris","Krista","Kristian","Kristin","Kristina","Kristofer","Kristoffer","Kristopher","Kristy","Krystal","Krystel","Krystina","Kurt","Kurtis","Kyla","Kyle","Kylee","Kyleigh","Kyler","Kylie","Kyra","Lacey","Lacy","Ladarius","Lafayette","Laila","Laisha","Lamar","Lambert","Lamont","Lance","Landen","Lane","Laney","Larissa","Laron","Larry","Larue","Laura","Laurel","Lauren","Laurence","Lauretta","Lauriane","Laurianne","Laurie","Laurine","Laury","Lauryn","Lavada","Lavern","Laverna","Laverne","Lavina","Lavinia","Lavon","Lavonne","Lawrence","Lawson","Layla","Layne","Lazaro","Lea","Leann","Leanna","Leanne","Leatha","Leda","Lee","Leif","Leila","Leilani","Lela","Lelah","Leland","Lelia","Lempi","Lemuel","Lenna","Lennie","Lenny","Lenora","Lenore","Leo","Leola","Leon","Leonard","Leonardo","Leone","Leonel","Leonie","Leonor","Leonora","Leopold","Leopoldo","Leora","Lera","Lesley","Leslie","Lesly","Lessie","Lester","Leta","Letha","Letitia","Levi","Lew","Lewis","Lexi","Lexie","Lexus","Lia","Liam","Liana","Libbie","Libby","Lila","Lilian","Liliana","Liliane","Lilla","Lillian","Lilliana","Lillie","Lilly","Lily","Lilyan","Lina","Lincoln","Linda","Lindsay","Lindsey","Linnea","Linnie","Linwood","Lionel","Lisa","Lisandro","Lisette","Litzy","Liza","Lizeth","Lizzie","Llewellyn","Lloyd","Logan","Lois","Lola","Lolita","Loma","Lon","London","Lonie","Lonnie","Lonny","Lonzo","Lora","Loraine","Loren","Lorena","Lorenz","Lorenza","Lorenzo","Lori","Lorine","Lorna","Lottie","Lou","Louie","Louisa","Lourdes","Louvenia","Lowell","Loy","Loyal","Loyce","Lucas","Luciano","Lucie","Lucienne","Lucile","Lucinda","Lucio","Lucious","Lucius","Lucy","Ludie","Ludwig","Lue","Luella","Luigi","Luis","Luisa","Lukas","Lula","Lulu","Luna","Lupe","Lura","Lurline","Luther","Luz","Lyda","Lydia","Lyla","Lynn","Lyric","Lysanne","Mabel","Mabelle","Mable","Mac","Macey","Maci","Macie","Mack","Mackenzie","Macy","Madaline","Madalyn","Maddison","Madeline","Madelyn","Madelynn","Madge","Madie","Madilyn","Madisen","Madison","Madisyn","Madonna","Madyson","Mae","Maegan","Maeve","Mafalda","Magali","Magdalen","Magdalena","Maggie","Magnolia","Magnus","Maia","Maida","Maiya","Major","Makayla","Makenna","Makenzie","Malachi","Malcolm","Malika","Malinda","Mallie","Mallory","Malvina","Mandy","Manley","Manuel","Manuela","Mara","Marc","Marcel","Marcelina","Marcelino","Marcella","Marcelle","Marcellus","Marcelo","Marcia","Marco","Marcos","Marcus","Margaret","Margarete","Margarett","Margaretta","Margarette","Margarita","Marge","Margie","Margot","Margret","Marguerite","Maria","Mariah","Mariam","Marian","Mariana","Mariane","Marianna","Marianne","Mariano","Maribel","Marie","Mariela","Marielle","Marietta","Marilie","Marilou","Marilyne","Marina","Mario","Marion","Marisa","Marisol","Maritza","Marjolaine","Marjorie","Marjory","Mark","Markus","Marlee","Marlen","Marlene","Marley","Marlin","Marlon","Marques","Marquis","Marquise","Marshall","Marta","Martin","Martina","Martine","Marty","Marvin","Mary","Maryam","Maryjane","Maryse","Mason","Mateo","Mathew","Mathias","Mathilde","Matilda","Matilde","Matt","Matteo","Mattie","Maud","Maude","Maudie","Maureen","Maurice","Mauricio","Maurine","Maverick","Mavis","Max","Maxie","Maxime","Maximilian","Maximillia","Maximillian","Maximo","Maximus","Maxine","Maxwell","May","Maya","Maybell","Maybelle","Maye","Maymie","Maynard","Mayra","Mazie","Mckayla","Mckenna","Mckenzie","Meagan","Meaghan","Meda","Megane","Meggie","Meghan","Mekhi","Melany","Melba","Melisa","Melissa","Mellie","Melody","Melvin","Melvina","Melyna","Melyssa","Mercedes","Meredith","Merl","Merle","Merlin","Merritt","Mertie","Mervin","Meta","Mia","Micaela","Micah","Michael","Michaela","Michale","Micheal","Michel","Michele","Michelle","Miguel","Mikayla","Mike","Mikel","Milan","Miles","Milford","Miller","Millie","Milo","Milton","Mina","Minerva","Minnie","Miracle","Mireille","Mireya","Misael","Missouri","Misty","Mitchel","Mitchell","Mittie","Modesta","Modesto","Mohamed","Mohammad","Mohammed","Moises","Mollie","Molly","Mona","Monica","Monique","Monroe","Monserrat","Monserrate","Montana","Monte","Monty","Morgan","Moriah","Morris","Mortimer","Morton","Mose","Moses","Moshe","Mossie","Mozell","Mozelle","Muhammad","Muriel","Murl","Murphy","Murray","Mustafa","Mya","Myah","Mylene","Myles","Myra","Myriam","Myrl","Myrna","Myron","Myrtice","Myrtie","Myrtis","Myrtle","Nadia","Nakia","Name","Nannie","Naomi","Naomie","Napoleon","Narciso","Nash","Nasir","Nat","Natalia","Natalie","Natasha","Nathan","Nathanael","Nathanial","Nathaniel","Nathen","Nayeli","Neal","Ned","Nedra","Neha","Neil","Nelda","Nella","Nelle","Nellie","Nels","Nelson","Neoma","Nestor","Nettie","Neva","Newell","Newton","Nia","Nicholas","Nicholaus","Nichole","Nick","Nicklaus","Nickolas","Nico","Nicola","Nicolas","Nicole","Nicolette","Nigel","Nikita","Nikki","Nikko","Niko","Nikolas","Nils","Nina","Noah","Noble","Noe","Noel","Noelia","Noemi","Noemie","Noemy","Nola","Nolan","Nona","Nora","Norbert","Norberto","Norene","Norma","Norris","Norval","Norwood","Nova","Novella","Nya","Nyah","Nyasia","Obie","Oceane","Ocie","Octavia","Oda","Odell","Odessa","Odie","Ofelia","Okey","Ola","Olaf","Ole","Olen","Oleta","Olga","Olin","Oliver","Ollie","Oma","Omari","Omer","Ona","Onie","Opal","Ophelia","Ora","Oral","Oran","Oren","Orie","Orin","Orion","Orland","Orlando","Orlo","Orpha","Orrin","Orval","Orville","Osbaldo","Osborne","Oscar","Osvaldo","Oswald","Oswaldo","Otha","Otho","Otilia","Otis","Ottilie","Ottis","Otto","Ova","Owen","Ozella","Pablo","Paige","Palma","Pamela","Pansy","Paolo","Paris","Parker","Pascale","Pasquale","Pat","Patience","Patricia","Patrick","Patsy","Pattie","Paul","Paula","Pauline","Paxton","Payton","Pearl","Pearlie","Pearline","Pedro","Peggie","Penelope","Percival","Percy","Perry","Pete","Peter","Petra","Peyton","Philip","Phoebe","Phyllis","Pierce","Pierre","Pietro","Pink","Pinkie","Piper","Polly","Porter","Precious","Presley","Preston","Price","Prince","Princess","Priscilla","Providenci","Prudence","Queen","Queenie","Quentin","Quincy","Quinn","Quinten","Quinton","Rachael","Rachel","Rachelle","Rae","Raegan","Rafael","Rafaela","Raheem","Rahsaan","Rahul","Raina","Raleigh","Ralph","Ramiro","Ramon","Ramona","Randal","Randall","Randi","Randy","Ransom","Raoul","Raphael","Raphaelle","Raquel","Rashad","Rashawn","Rasheed","Raul","Raven","Ray","Raymond","Raymundo","Reagan","Reanna","Reba","Rebeca","Rebecca","Rebeka","Rebekah","Reece","Reed","Reese","Regan","Reggie","Reginald","Reid","Reilly","Reina","Reinhold","Remington","Rene","Renee","Ressie","Reta","Retha","Retta","Reuben","Reva","Rex","Rey","Reyes","Reymundo","Reyna","Reynold","Rhea","Rhett","Rhianna","Rhiannon","Rhoda","Ricardo","Richard","Richie","Richmond","Rick","Rickey","Rickie","Ricky","Rico","Rigoberto","Riley","Rita","River","Robb","Robbie","Robert","Roberta","Roberto","Robin","Robyn","Rocio","Rocky","Rod","Roderick","Rodger","Rodolfo","Rodrick","Rodrigo","Roel","Rogelio","Roger","Rogers","Rolando","Rollin","Roma","Romaine","Roman","Ron","Ronaldo","Ronny","Roosevelt","Rory","Rosa","Rosalee","Rosalia","Rosalind","Rosalinda","Rosalyn","Rosamond","Rosanna","Rosario","Roscoe","Rose","Rosella","Roselyn","Rosemarie","Rosemary","Rosendo","Rosetta","Rosie","Rosina","Roslyn","Ross","Rossie","Rowan","Rowena","Rowland","Roxane","Roxanne","Roy","Royal","Royce","Rozella","Ruben","Rubie","Ruby","Rubye","Rudolph","Rudy","Rupert","Russ","Russel","Russell","Rusty","Ruth","Ruthe","Ruthie","Ryan","Ryann","Ryder","Rylan","Rylee","Ryleigh","Ryley","Sabina","Sabrina","Sabryna","Sadie","Sadye","Sage","Saige","Sallie","Sally","Salma","Salvador","Salvatore","Sam","Samanta","Samantha","Samara","Samir","Sammie","Sammy","Samson","Sandra","Sandrine","Sandy","Sanford","Santa","Santiago","Santina","Santino","Santos","Sarah","Sarai","Sarina","Sasha","Saul","Savanah","Savanna","Savannah","Savion","Scarlett","Schuyler","Scot","Scottie","Scotty","Seamus","Sean","Sebastian","Sedrick","Selena","Selina","Selmer","Serena","Serenity","Seth","Shad","Shaina","Shakira","Shana","Shane","Shanel","Shanelle","Shania","Shanie","Shaniya","Shanna","Shannon","Shanny","Shanon","Shany","Sharon","Shaun","Shawn","Shawna","Shaylee","Shayna","Shayne","Shea","Sheila","Sheldon","Shemar","Sheridan","Sherman","Sherwood","Shirley","Shyann","Shyanne","Sibyl","Sid","Sidney","Sienna","Sierra","Sigmund","Sigrid","Sigurd","Silas","Sim","Simeon","Simone","Sincere","Sister","Skye","Skyla","Skylar","Sofia","Soledad","Solon","Sonia","Sonny","Sonya","Sophia","Sophie","Spencer","Stacey","Stacy","Stan","Stanford","Stanley","Stanton","Stefan","Stefanie","Stella","Stephan","Stephania","Stephanie","Stephany","Stephen","Stephon","Sterling","Steve","Stevie","Stewart","Stone","Stuart","Summer","Sunny","Susan","Susana","Susanna","Susie","Suzanne","Sven","Syble","Sydnee","Sydney","Sydni","Sydnie","Sylvan","Sylvester","Sylvia","Tabitha","Tad","Talia","Talon","Tamara","Tamia","Tania","Tanner","Tanya","Tara","Taryn","Tate","Tatum","Tatyana","Taurean","Tavares","Taya","Taylor","Teagan","Ted","Telly","Terence","Teresa","Terrance","Terrell","Terrence","Terrill","Terry","Tess","Tessie","Tevin","Thad","Thaddeus","Thalia","Thea","Thelma","Theo","Theodora","Theodore","Theresa","Therese","Theresia","Theron","Thomas","Thora","Thurman","Tia","Tiana","Tianna","Tiara","Tierra","Tiffany","Tillman","Timmothy","Timmy","Timothy","Tina","Tito","Titus","Tobin","Toby","Tod","Tom","Tomas","Tomasa","Tommie","Toney","Toni","Tony","Torey","Torrance","Torrey","Toy","Trace","Tracey","Tracy","Travis","Travon","Tre","Tremaine","Tremayne","Trent","Trenton","Tressa","Tressie","Treva","Trever","Trevion","Trevor","Trey","Trinity","Trisha","Tristian","Tristin","Triston","Troy","Trudie","Trycia","Trystan","Turner","Twila","Tyler","Tyra","Tyree","Tyreek","Tyrel","Tyrell","Tyrese","Tyrique","Tyshawn","Tyson","Ubaldo","Ulices","Ulises","Una","Unique","Urban","Uriah","Uriel","Ursula","Vada","Valentin","Valentina","Valentine","Valerie","Vallie","Van","Vance","Vanessa","Vaughn","Veda","Velda","Vella","Velma","Velva","Vena","Verda","Verdie","Vergie","Verla","Verlie","Vern","Verna","Verner","Vernice","Vernie","Vernon","Verona","Veronica","Vesta","Vicenta","Vicente","Vickie","Vicky","Victor","Victoria","Vida","Vidal","Vilma","Vince","Vincent","Vincenza","Vincenzo","Vinnie","Viola","Violet","Violette","Virgie","Virgil","Virginia","Virginie","Vita","Vito","Viva","Vivian","Viviane","Vivianne","Vivien","Vivienne","Vladimir","Wade","Waino","Waldo","Walker","Wallace","Walter","Walton","Wanda","Ward","Warren","Watson","Wava","Waylon","Wayne","Webster","Weldon","Wellington","Wendell","Wendy","Werner","Westley","Weston","Whitney","Wilber","Wilbert","Wilburn","Wiley","Wilford","Wilfred","Wilfredo","Wilfrid","Wilhelm","Wilhelmine","Will","Willa","Willard","William","Willie","Willis","Willow","Willy","Wilma","Wilmer","Wilson","Wilton","Winfield","Winifred","Winnifred","Winona","Winston","Woodrow","Wyatt","Wyman","Xander","Xavier","Xzavier","Yadira","Yasmeen","Yasmin","Yasmine","Yazmin","Yesenia","Yessenia","Yolanda","Yoshiko","Yvette","Yvonne","Zachariah","Zachary","Zachery","Zack","Zackary","Zackery","Zakary","Zander","Zane","Zaria","Zechariah","Zelda","Zella","Zelma","Zena","Zetta","Zion","Zita","Zoe","Zoey","Zoie","Zoila","Zola","Zora","Zula"],female:["Mary","Patricia","Linda","Barbara","Elizabeth","Jennifer","Maria","Susan","Margaret","Dorothy","Lisa","Nancy","Karen","Betty","Helen","Sandra","Donna","Carol","Ruth","Sharon","Michelle","Laura","Sarah","Kimberly","Deborah","Jessica","Shirley","Cynthia","Angela","Melissa","Brenda","Amy","Anna","Rebecca","Virginia","Kathleen","Pamela","Martha","Debra","Amanda","Stephanie","Carolyn","Christine","Marie","Janet","Catherine","Frances","Ann","Joyce","Diane","Alice","Julie","Heather","Teresa","Doris","Gloria","Evelyn","Jean","Cheryl","Mildred","Katherine","Joan","Ashley","Judith","Rose","Janice","Kelly","Nicole","Judy","Christina","Kathy","Theresa","Beverly","Denise","Tammy","Irene","Jane","Lori","Rachel","Marilyn","Andrea","Kathryn","Louise","Sara","Anne","Jacqueline","Wanda","Bonnie","Julia","Ruby","Lois","Tina","Phyllis","Norma","Paula","Diana","Annie","Lillian","Emily","Robin","Peggy","Crystal","Gladys","Rita","Dawn","Connie","Florence","Tracy","Edna","Tiffany","Carmen","Rosa","Cindy","Grace","Wendy","Victoria","Edith","Kim","Sherry","Sylvia","Josephine","Thelma","Shannon","Sheila","Ethel","Ellen","Elaine","Marjorie","Carrie","Charlotte","Monica","Esther","Pauline","Emma","Juanita","Anita","Rhonda","Hazel","Amber","Eva","Debbie","April","Leslie","Clara","Lucille","Jamie","Joanne","Eleanor","Valerie","Danielle","Megan","Alicia","Suzanne","Michele","Gail","Bertha","Darlene","Veronica","Jill","Erin","Geraldine","Lauren","Cathy","Joann","Lorraine","Lynn","Sally","Regina","Erica","Beatrice","Dolores","Bernice","Audrey","Yvonne","Annette","June","Samantha","Marion","Dana","Stacy","Ana","Renee","Ida","Vivian","Roberta","Holly","Brittany","Melanie","Loretta","Yolanda","Jeanette","Laurie","Katie","Kristen","Vanessa","Alma","Sue","Elsie","Beth","Jeanne","Vicki","Carla","Tara","Rosemary","Eileen","Terri","Gertrude","Lucy","Tonya","Ella","Stacey","Wilma","Gina","Kristin","Jessie","Natalie","Agnes","Vera","Willie","Charlene","Bessie","Delores","Melinda","Pearl","Arlene","Maureen","Colleen","Allison","Tamara","Joy","Georgia","Constance","Lillie","Claudia","Jackie","Marcia","Tanya","Nellie","Minnie","Marlene","Heidi","Glenda","Lydia","Viola","Courtney","Marian","Stella","Caroline","Dora","Jo","Vickie","Mattie","Terry","Maxine","Irma","Mabel","Marsha","Myrtle","Lena","Christy","Deanna","Patsy","Hilda","Gwendolyn","Jennie","Nora","Margie","Nina","Cassandra","Leah","Penny","Kay","Priscilla","Naomi","Carole","Brandy","Olga","Billie","Dianne","Tracey","Leona","Jenny","Felicia","Sonia","Miriam","Velma","Becky","Bobbie","Violet","Kristina","Toni","Misty","Mae","Shelly","Daisy","Ramona","Sherri","Erika","Katrina","Claire","Lindsey","Lindsay","Geneva","Guadalupe","Belinda","Margarita","Sheryl","Cora","Faye","Ada","Natasha","Sabrina","Isabel","Marguerite","Hattie","Harriet","Molly","Cecilia","Kristi","Brandi","Blanche","Sandy","Rosie","Joanna","Iris","Eunice","Angie","Inez","Lynda","Madeline","Amelia","Alberta","Genevieve","Monique","Jodi","Janie","Maggie","Kayla","Sonya","Jan","Lee","Kristine","Candace","Fannie","Maryann","Opal","Alison","Yvette","Melody","Luz","Susie","Olivia","Flora","Shelley","Kristy","Mamie","Lula","Lola","Verna","Beulah","Antoinette","Candice","Juana","Jeannette","Pam","Kelli","Hannah","Whitney","Bridget","Karla","Celia","Latoya","Patty","Shelia","Gayle","Della","Vicky","Lynne","Sheri","Marianne","Kara","Jacquelyn","Erma","Blanca","Myra","Leticia","Pat","Krista","Roxanne","Angelica","Johnnie","Robyn","Francis","Adrienne","Rosalie","Alexandra","Brooke","Bethany","Sadie","Bernadette","Traci","Jody","Kendra","Jasmine","Nichole","Rachael","Chelsea","Mable","Ernestine","Muriel","Marcella","Elena","Krystal","Angelina","Nadine","Kari","Estelle","Dianna","Paulette","Lora","Mona","Doreen","Rosemarie","Angel","Desiree","Antonia","Hope","Ginger","Janis","Betsy","Christie","Freda","Mercedes","Meredith","Lynette","Teri","Cristina","Eula","Leigh","Meghan","Sophia","Eloise","Rochelle","Gretchen","Cecelia","Raquel","Henrietta","Alyssa","Jana","Kelley","Gwen","Kerry","Jenna","Tricia","Laverne","Olive","Alexis","Tasha","Silvia","Elvira","Casey","Delia","Sophie","Kate","Patti","Lorena","Kellie","Sonja","Lila","Lana","Darla","May","Mindy","Essie","Mandy","Lorene","Elsa","Josefina","Jeannie","Miranda","Dixie","Lucia","Marta","Faith","Lela","Johanna","Shari","Camille","Tami","Shawna","Elisa","Ebony","Melba","Ora","Nettie","Tabitha","Ollie","Jaime","Winifred","Kristie"],male:["James","John","Robert","Michael","William","David","Richard","Charles","Joseph","Thomas","Christopher","Daniel","Paul","Mark","Donald","George","Kenneth","Steven","Edward","Brian","Ronald","Anthony","Kevin","Jason","Matthew","Gary","Timothy","Jose","Larry","Jeffrey","Frank","Scott","Eric","Stephen","Andrew","Raymond","Gregory","Joshua","Jerry","Dennis","Walter","Patrick","Peter","Harold","Douglas","Henry","Carl","Arthur","Ryan","Roger","Joe","Juan","Jack","Albert","Jonathan","Justin","Terry","Gerald","Keith","Samuel","Willie","Ralph","Lawrence","Nicholas","Roy","Benjamin","Bruce","Brandon","Adam","Harry","Fred","Wayne","Billy","Steve","Louis","Jeremy","Aaron","Randy","Howard","Eugene","Carlos","Russell","Bobby","Victor","Martin","Ernest","Phillip","Todd","Jesse","Craig","Alan","Shawn","Clarence","Sean","Philip","Chris","Johnny","Earl","Jimmy","Antonio","Danny","Bryan","Tony","Luis","Mike","Stanley","Leonard","Nathan","Dale","Manuel","Rodney","Curtis","Norman","Allen","Marvin","Vincent","Glenn","Jeffery","Travis","Jeff","Chad","Jacob","Lee","Melvin","Alfred","Kyle","Francis","Bradley","Jesus","Herbert","Frederick","Ray","Joel","Edwin","Don","Eddie","Ricky","Troy","Randall","Barry","Alexander","Bernard","Mario","Leroy","Francisco","Marcus","Micheal","Theodore","Clifford","Miguel","Oscar","Jay","Jim","Tom","Calvin","Alex","Jon","Ronnie","Bill","Lloyd","Tommy","Leon","Derek","Warren","Darrell","Jerome","Floyd","Leo","Alvin","Tim","Wesley","Gordon","Dean","Greg","Jorge","Dustin","Pedro","Derrick","Dan","Lewis","Zachary","Corey","Herman","Maurice","Vernon","Roberto","Clyde","Glen","Hector","Shane","Ricardo","Sam","Rick","Lester","Brent","Ramon","Charlie","Tyler","Gilbert","Gene","Marc","Reginald","Ruben","Brett","Angel","Nathaniel","Rafael","Leslie","Edgar","Milton","Raul","Ben","Chester","Cecil","Duane","Franklin","Andre","Elmer","Brad","Gabriel","Ron","Mitchell","Roland","Arnold","Harvey","Jared","Adrian","Karl","Cory","Claude","Erik","Darryl","Jamie","Neil","Jessie","Christian","Javier","Fernando","Clinton","Ted","Mathew","Tyrone","Darren","Lonnie","Lance","Cody","Julio","Kelly","Kurt","Allan","Nelson","Guy","Clayton","Hugh","Max","Dwayne","Dwight","Armando","Felix","Jimmie","Everett","Jordan","Ian","Wallace","Ken","Bob","Jaime","Casey","Alfredo","Alberto","Dave","Ivan","Johnnie","Sidney","Byron","Julian","Isaac","Morris","Clifton","Willard","Daryl","Ross","Virgil","Andy","Marshall","Salvador","Perry","Kirk","Sergio","Marion","Tracy","Seth","Kent","Terrance","Rene","Eduardo","Terrence","Enrique","Freddie","Wade","Austin","Stuart","Fredrick","Arturo","Alejandro","Jackie","Joey","Nick","Luther","Wendell","Jeremiah","Evan","Julius","Dana","Donnie","Otis","Shannon","Trevor","Oliver","Luke","Homer","Gerard","Doug","Kenny","Hubert","Angelo","Shaun","Lyle","Matt","Lynn","Alfonso","Orlando","Rex","Carlton","Ernesto","Cameron","Neal","Pablo","Lorenzo","Omar","Wilbur","Blake","Grant","Horace","Roderick","Kerry","Abraham","Willis","Rickey","Jean","Ira","Andres","Cesar","Johnathan","Malcolm","Rudolph","Damon","Kelvin","Rudy","Preston","Alton","Archie","Marco","Wm","Pete","Randolph","Garry","Geoffrey","Jonathon","Felipe","Bennie","Gerardo","Ed","Dominic","Robin","Loren","Delbert","Colin","Guillermo","Earnest","Lucas","Benny","Noel","Spencer","Rodolfo","Myron","Edmund","Garrett","Salvatore","Cedric","Lowell","Gregg","Sherman","Wilson","Devin","Sylvester","Kim","Roosevelt","Israel","Jermaine","Forrest","Wilbert","Leland","Simon","Guadalupe","Clark","Irving","Carroll","Bryant","Owen","Rufus","Woodrow","Sammy","Kristopher","Mack","Levi","Marcos","Gustavo","Jake","Lionel","Marty","Taylor","Ellis","Dallas","Gilberto","Clint","Nicolas","Laurence","Ismael","Orville","Drew","Jody","Ervin","Dewey","Al","Wilfred","Josh","Hugo","Ignacio","Caleb","Tomas","Sheldon","Erick","Frankie","Stewart","Doyle","Darrel","Rogelio","Terence","Santiago","Alonzo","Elias","Bert","Elbert","Ramiro","Conrad","Pat","Noah","Grady","Phil","Cornelius","Lamar","Rolando","Clay","Percy","Dexter","Bradford","Merle","Darin","Amos","Terrell","Moses","Irvin","Saul","Roman","Darnell","Randal","Tommie","Timmy","Darrin","Winston","Brendan","Toby","Van","Abel","Dominick","Boyd","Courtney","Jan","Emilio","Elijah","Cary","Domingo","Santos","Aubrey","Emmett","Marlon","Emanuel","Jerald","Edmond"]},gender:["Agender","Androgyne","Androgynous","Bigender","Cis female","Cis male","Cis man","Cis woman","Cis","Cisgender female","Cisgender male","Cisgender man","Cisgender woman","Cisgender","Demi-boy","Demi-girl","Demi-man","Demi-woman","Demiflux","Demigender","F2M","FTM","Female to male trans man","Female to male transgender man","Female to male transsexual man","Female to male","Gender fluid","Gender neutral","Gender nonconforming","Gender questioning","Gender variant","Genderflux","Genderqueer","Hermaphrodite","Intersex man","Intersex person","Intersex woman","Intersex","M2F","MTF","Male to female trans woman","Male to female transgender woman","Male to female transsexual woman","Male to female","Man","Multigender","Neither","Neutrois","Non-binary","Omnigender","Other","Pangender","Polygender","T* man","T* woman","Trans female","Trans male","Trans man","Trans person","Trans woman","Trans","Transsexual female","Transsexual male","Transsexual man","Transsexual person","Transsexual woman","Transsexual","Transgender female","Transgender person","Transmasculine","Trigender","Two* person","Two-spirit person","Two-spirit","Woman","Xenogender"],job_area:["Solutions","Program","Brand","Security","Research","Marketing","Directives","Implementation","Integration","Functionality","Response","Paradigm","Tactics","Identity","Markets","Group","Division","Applications","Optimization","Operations","Infrastructure","Intranet","Communications","Web","Branding","Quality","Assurance","Mobility","Accounts","Data","Creative","Configuration","Accountability","Interactions","Factors","Usability","Metrics"],job_descriptor:["Lead","Senior","Direct","Corporate","Dynamic","Future","Product","National","Regional","District","Central","Global","Customer","Investor","International","Legacy","Forward","Internal","Human","Chief","Principal"],job_title_pattern:["{{person.jobDescriptor}} {{person.jobArea}} {{person.jobType}}"],job_type:["Supervisor","Associate","Executive","Liaison","Officer","Manager","Engineer","Specialist","Director","Coordinator","Administrator","Architect","Analyst","Designer","Planner","Orchestrator","Technician","Developer","Producer","Consultant","Assistant","Facilitator","Agent","Representative","Strategist"],last_name:{generic:["Abbott","Abernathy","Abshire","Adams","Altenwerth","Anderson","Ankunding","Armstrong","Auer","Aufderhar","Bahringer","Bailey","Balistreri","Barrows","Bartell","Bartoletti","Barton","Bashirian","Batz","Bauch","Baumbach","Bayer","Beahan","Beatty","Bechtelar","Becker","Bednar","Beer","Beier","Berge","Bergnaum","Bergstrom","Bernhard","Bernier","Bins","Blanda","Blick","Block","Bode","Boehm","Bogan","Bogisich","Borer","Bosco","Botsford","Boyer","Boyle","Bradtke","Brakus","Braun","Breitenberg","Brekke","Brown","Bruen","Buckridge","Carroll","Carter","Cartwright","Casper","Cassin","Champlin","Christiansen","Cole","Collier","Collins","Conn","Connelly","Conroy","Considine","Corkery","Cormier","Corwin","Cremin","Crist","Crona","Cronin","Crooks","Cruickshank","Cummerata","Cummings","Dach","D'Amore","Daniel","Dare","Daugherty","Davis","Deckow","Denesik","Dibbert","Dickens","Dicki","Dickinson","Dietrich","Donnelly","Dooley","Douglas","Doyle","DuBuque","Durgan","Ebert","Effertz","Emard","Emmerich","Erdman","Ernser","Fadel","Fahey","Farrell","Fay","Feeney","Feest","Feil","Ferry","Fisher","Flatley","Frami","Franecki","Franey","Friesen","Fritsch","Funk","Gerhold","Gerlach","Gibson","Gislason","Gleason","Gleichner","Glover","Goldner","Goodwin","Gorczany","Gottlieb","Goyette","Grady","Graham","Grant","Green","Greenfelder","Greenholt","Grimes","Gulgowski","Gusikowski","Gutkowski","Gutmann","Haag","Hackett","Hagenes","Hahn","Haley","Halvorson","Hamill","Hammes","Hand","Hane","Hansen","Harber","Harris","Hartmann","Harvey","Hauck","Hayes","Heaney","Heathcote","Hegmann","Heidenreich","Heller","Herman","Hermann","Hermiston","Herzog","Hessel","Hettinger","Hickle","Hilll","Hills","Hilpert","Hintz","Hirthe","Hodkiewicz","Hoeger","Homenick","Hoppe","Howe","Howell","Hudson","Huel","Huels","Hyatt","Jacobi","Jacobs","Jacobson","Jakubowski","Jaskolski","Jast","Jenkins","Jerde","Johns","Johnson","Johnston","Jones","Kassulke","Kautzer","Keebler","Keeling","Kemmer","Kerluke","Kertzmann","Kessler","Kiehn","Kihn","Kilback","King","Kirlin","Klein","Kling","Klocko","Koch","Koelpin","Koepp","Kohler","Konopelski","Koss","Kovacek","Kozey","Krajcik","Kreiger","Kris","Kshlerin","Kub","Kuhic","Kuhlman","Kuhn","Kulas","Kunde","Kunze","Kuphal","Kutch","Kuvalis","Labadie","Lakin","Lang","Langosh","Langworth","Larkin","Larson","Leannon","Lebsack","Ledner","Leffler","Legros","Lehner","Lemke","Lesch","Leuschke","Lind","Lindgren","Littel","Little","Lockman","Lowe","Lubowitz","Lueilwitz","Luettgen","Lynch","Macejkovic","MacGyver","Maggio","Mann","Mante","Marks","Marquardt","Marvin","Mayer","Mayert","McClure","McCullough","McDermott","McGlynn","McKenzie","McLaughlin","Medhurst","Mertz","Metz","Miller","Mills","Mitchell","Moen","Mohr","Monahan","Moore","Morar","Morissette","Mosciski","Mraz","Mueller","Muller","Murazik","Murphy","Murray","Nader","Nicolas","Nienow","Nikolaus","Nitzsche","Nolan","Oberbrunner","O'Connell","O'Conner","O'Hara","O'Keefe","O'Kon","Okuneva","Olson","Ondricka","O'Reilly","Orn","Ortiz","Osinski","Pacocha","Padberg","Pagac","Parisian","Parker","Paucek","Pfannerstill","Pfeffer","Pollich","Pouros","Powlowski","Predovic","Price","Prohaska","Prosacco","Purdy","Quigley","Quitzon","Rath","Ratke","Rau","Raynor","Reichel","Reichert","Reilly","Reinger","Rempel","Renner","Reynolds","Rice","Rippin","Ritchie","Robel","Roberts","Rodriguez","Rogahn","Rohan","Rolfson","Romaguera","Roob","Rosenbaum","Rowe","Ruecker","Runolfsdottir","Runolfsson","Runte","Russel","Rutherford","Ryan","Sanford","Satterfield","Sauer","Sawayn","Schaden","Schaefer","Schamberger","Schiller","Schimmel","Schinner","Schmeler","Schmidt","Schmitt","Schneider","Schoen","Schowalter","Schroeder","Schulist","Schultz","Schumm","Schuppe","Schuster","Senger","Shanahan","Shields","Simonis","Sipes","Skiles","Smith","Smitham","Spencer","Spinka","Sporer","Stamm","Stanton","Stark","Stehr","Steuber","Stiedemann","Stokes","Stoltenberg","Stracke","Streich","Stroman","Strosin","Swaniawski","Swift","Terry","Thiel","Thompson","Tillman","Torp","Torphy","Towne","Toy","Trantow","Tremblay","Treutel","Tromp","Turcotte","Turner","Ullrich","Upton","Vandervort","Veum","Volkman","Von","VonRueden","Waelchi","Walker","Walsh","Walter","Ward","Waters","Watsica","Weber","Wehner","Weimann","Weissnat","Welch","West","White","Wiegand","Wilderman","Wilkinson","Will","Williamson","Willms","Windler","Wintheiser","Wisoky","Wisozk","Witting","Wiza","Wolf","Wolff","Wuckert","Wunsch","Wyman","Yost","Yundt","Zboncak","Zemlak","Ziemann","Zieme","Zulauf"]},last_name_pattern:{generic:[{value:"{{person.last_name.generic}}",weight:95},{value:"{{person.last_name.generic}}-{{person.last_name.generic}}",weight:5}]},middle_name:{generic:["Addison","Alex","Anderson","Angel","Arden","August","Austin","Avery","Bailey","Billie","Blake","Bowie","Brooklyn","Cameron","Charlie","Corey","Dakota","Drew","Elliott","Ellis","Emerson","Finley","Gray","Greer","Harper","Hayden","Jaden","James","Jamie","Jordan","Jules","Kai","Kendall","Kennedy","Kyle","Leslie","Logan","London","Marlowe","Micah","Nico","Noah","North","Parker","Phoenix","Quinn","Reagan","Reese","Reign","Riley","River","Robin","Rory","Rowan","Ryan","Sage","Sasha","Sawyer","Shawn","Shiloh","Skyler","Taylor"],female:["Abigail","Adele","Alex","Alice","Alisha","Amber","Amelia","Amora","Anaïs","Angelou","Anika","Anise","Annabel","Anne","Aphrodite","Aretha","Arya","Ashton","Aster","Audrey","Avery","Bailee","Bay","Belle","Beth","Billie","Blair","Blaise","Blake","Blanche","Blue","Bree","Brielle","Brienne","Brooke","Caleen","Candice","Caprice","Carelyn","Caylen","Celine","Cerise","Cia","Claire","Claudia","Clementine","Coral","Coraline","Dahlia","Dakota","Dawn","Della","Demi","Denise","Denver","Devine","Devon","Diana","Dylan","Ebony","Eden","Eleanor","Elein","Elizabeth","Ellen","Elodie","Eloise","Ember","Emma","Erin","Eyre","Faith","Farrah","Fawn","Fayre","Fern","France","Francis","Frida","Genisis","Georgia","Grace","Gwen","Harley","Harper","Hazel","Helen","Hippolyta","Holly","Hope","Imani","Iowa","Ireland","Irene","Iris","Isa","Isla","Ivy","Jade","Jane","Jazz","Jean","Jess","Jett","Jo","Joan","Jolie","Jordan","Josie","Journey","Joy","Jules","Julien","Juliet","Juniper","Justice","Kali","Karma","Kat","Kate","Kennedy","Keva","Kylie","Lake","Lane","Lark","Layla","Lee","Leigh","Leona","Lexi","London","Lou","Louise","Love","Luna","Lux","Lynn","Lyric","Maddie","Mae","Marie","Matilda","Maude","Maybel","Meadow","Medusa","Mercy","Michelle","Mirabel","Monroe","Morgan","Nalia","Naomi","Nova","Olive","Paige","Parker","Pax","Pearl","Penelope","Phoenix","Quinn","Rae","Rain","Raven","Ray","Raye","Rebel","Reese","Reeve","Regan","Riley","River","Robin","Rory","Rose","Royal","Ruth","Rylie","Sage","Sam","Saturn","Scout","Serena","Sky","Skylar","Sofia","Sophia","Storm","Sue","Suzanne","Sydney","Taylen","Taylor","Teagan","Tempest","Tenley","Thea","Trinity","Valerie","Venus","Vera","Violet","Willow","Winter","Xena","Zaylee","Zion","Zoe"],male:["Ace","Aiden","Alexander","Ander","Anthony","Asher","August","Aziel","Bear","Beckham","Benjamin","Buddy","Calvin","Carter","Charles","Christopher","Clyde","Cooper","Daniel","David","Dior","Dylan","Elijah","Ellis","Emerson","Ethan","Ezra","Fletcher","Flynn","Gabriel","Grayson","Gus","Hank","Harrison","Hendrix","Henry","Houston","Hudson","Hugh","Isaac","Jack","Jackson","Jacob","Jakobe","James","Jaxon","Jaxtyn","Jayden","John","Joseph","Josiah","Jude","Julian","Karsyn","Kenji","Kobe","Kylo","Lennon","Leo","Levi","Liam","Lincoln","Logan","Louis","Lucas","Lucky","Luke","Mason","Mateo","Matthew","Maverick","Michael","Monroe","Nixon","Ocean","Oliver","Otis","Otto","Owen","Ozzy","Parker","Rocky","Samuel","Sebastian","Sonny","Teddy","Theo","Theodore","Thomas","Truett","Walter","Warren","Watson","William","Wison","Wyatt","Ziggy","Zyair"]},name:[{value:"{{person.firstName}} {{person.lastName}}",weight:49},{value:"{{person.prefix}} {{person.firstName}} {{person.lastName}}",weight:7},{value:"{{person.firstName}} {{person.lastName}} {{person.suffix}}",weight:7},{value:"{{person.prefix}} {{person.firstName}} {{person.lastName}} {{person.suffix}}",weight:1}],prefix:{generic:["Dr.","Miss","Mr.","Mrs.","Ms."],female:["Mrs.","Ms.","Miss","Dr."],male:["Mr.","Dr."]},sex:["female","male"],suffix:["Jr.","Sr.","I","II","III","IV","V","MD","DDS","PhD","DVM"],western_zodiac_sign:["Aquarius","Pisces","Aries","Taurus","Gemini","Cancer","Leo","Virgo","Libra","Scorpio","Sagittarius","Capricorn"]},phone_number:{format:{human:["!##-!##-####","(!##) !##-####","1-!##-!##-####","!##.!##.####","!##-!##-#### x###","(!##) !##-#### x###","1-!##-!##-#### x###","!##.!##.#### x###","!##-!##-#### x####","(!##) !##-#### x####","1-!##-!##-#### x####","!##.!##.#### x####","!##-!##-#### x#####","(!##) !##-#### x#####","1-!##-!##-#### x#####","!##.!##.#### x#####"],international:["+1!##!######"],national:["(!##) !##-####"]}},science:{chemical_element:[{symbol:"H",name:"Hydrogen",atomicNumber:1},{symbol:"He",name:"Helium",atomicNumber:2},{symbol:"Li",name:"Lithium",atomicNumber:3},{symbol:"Be",name:"Beryllium",atomicNumber:4},{symbol:"B",name:"Boron",atomicNumber:5},{symbol:"C",name:"Carbon",atomicNumber:6},{symbol:"N",name:"Nitrogen",atomicNumber:7},{symbol:"O",name:"Oxygen",atomicNumber:8},{symbol:"F",name:"Fluorine",atomicNumber:9},{symbol:"Ne",name:"Neon",atomicNumber:10},{symbol:"Na",name:"Sodium",atomicNumber:11},{symbol:"Mg",name:"Magnesium",atomicNumber:12},{symbol:"Al",name:"Aluminium",atomicNumber:13},{symbol:"Si",name:"Silicon",atomicNumber:14},{symbol:"P",name:"Phosphorus",atomicNumber:15},{symbol:"S",name:"Sulfur",atomicNumber:16},{symbol:"Cl",name:"Chlorine",atomicNumber:17},{symbol:"Ar",name:"Argon",atomicNumber:18},{symbol:"K",name:"Potassium",atomicNumber:19},{symbol:"Ca",name:"Calcium",atomicNumber:20},{symbol:"Sc",name:"Scandium",atomicNumber:21},{symbol:"Ti",name:"Titanium",atomicNumber:22},{symbol:"V",name:"Vanadium",atomicNumber:23},{symbol:"Cr",name:"Chromium",atomicNumber:24},{symbol:"Mn",name:"Manganese",atomicNumber:25},{symbol:"Fe",name:"Iron",atomicNumber:26},{symbol:"Co",name:"Cobalt",atomicNumber:27},{symbol:"Ni",name:"Nickel",atomicNumber:28},{symbol:"Cu",name:"Copper",atomicNumber:29},{symbol:"Zn",name:"Zinc",atomicNumber:30},{symbol:"Ga",name:"Gallium",atomicNumber:31},{symbol:"Ge",name:"Germanium",atomicNumber:32},{symbol:"As",name:"Arsenic",atomicNumber:33},{symbol:"Se",name:"Selenium",atomicNumber:34},{symbol:"Br",name:"Bromine",atomicNumber:35},{symbol:"Kr",name:"Krypton",atomicNumber:36},{symbol:"Rb",name:"Rubidium",atomicNumber:37},{symbol:"Sr",name:"Strontium",atomicNumber:38},{symbol:"Y",name:"Yttrium",atomicNumber:39},{symbol:"Zr",name:"Zirconium",atomicNumber:40},{symbol:"Nb",name:"Niobium",atomicNumber:41},{symbol:"Mo",name:"Molybdenum",atomicNumber:42},{symbol:"Tc",name:"Technetium",atomicNumber:43},{symbol:"Ru",name:"Ruthenium",atomicNumber:44},{symbol:"Rh",name:"Rhodium",atomicNumber:45},{symbol:"Pd",name:"Palladium",atomicNumber:46},{symbol:"Ag",name:"Silver",atomicNumber:47},{symbol:"Cd",name:"Cadmium",atomicNumber:48},{symbol:"In",name:"Indium",atomicNumber:49},{symbol:"Sn",name:"Tin",atomicNumber:50},{symbol:"Sb",name:"Antimony",atomicNumber:51},{symbol:"Te",name:"Tellurium",atomicNumber:52},{symbol:"I",name:"Iodine",atomicNumber:53},{symbol:"Xe",name:"Xenon",atomicNumber:54},{symbol:"Cs",name:"Caesium",atomicNumber:55},{symbol:"Ba",name:"Barium",atomicNumber:56},{symbol:"La",name:"Lanthanum",atomicNumber:57},{symbol:"Ce",name:"Cerium",atomicNumber:58},{symbol:"Pr",name:"Praseodymium",atomicNumber:59},{symbol:"Nd",name:"Neodymium",atomicNumber:60},{symbol:"Pm",name:"Promethium",atomicNumber:61},{symbol:"Sm",name:"Samarium",atomicNumber:62},{symbol:"Eu",name:"Europium",atomicNumber:63},{symbol:"Gd",name:"Gadolinium",atomicNumber:64},{symbol:"Tb",name:"Terbium",atomicNumber:65},{symbol:"Dy",name:"Dysprosium",atomicNumber:66},{symbol:"Ho",name:"Holmium",atomicNumber:67},{symbol:"Er",name:"Erbium",atomicNumber:68},{symbol:"Tm",name:"Thulium",atomicNumber:69},{symbol:"Yb",name:"Ytterbium",atomicNumber:70},{symbol:"Lu",name:"Lutetium",atomicNumber:71},{symbol:"Hf",name:"Hafnium",atomicNumber:72},{symbol:"Ta",name:"Tantalum",atomicNumber:73},{symbol:"W",name:"Tungsten",atomicNumber:74},{symbol:"Re",name:"Rhenium",atomicNumber:75},{symbol:"Os",name:"Osmium",atomicNumber:76},{symbol:"Ir",name:"Iridium",atomicNumber:77},{symbol:"Pt",name:"Platinum",atomicNumber:78},{symbol:"Au",name:"Gold",atomicNumber:79},{symbol:"Hg",name:"Mercury",atomicNumber:80},{symbol:"Tl",name:"Thallium",atomicNumber:81},{symbol:"Pb",name:"Lead",atomicNumber:82},{symbol:"Bi",name:"Bismuth",atomicNumber:83},{symbol:"Po",name:"Polonium",atomicNumber:84},{symbol:"At",name:"Astatine",atomicNumber:85},{symbol:"Rn",name:"Radon",atomicNumber:86},{symbol:"Fr",name:"Francium",atomicNumber:87},{symbol:"Ra",name:"Radium",atomicNumber:88},{symbol:"Ac",name:"Actinium",atomicNumber:89},{symbol:"Th",name:"Thorium",atomicNumber:90},{symbol:"Pa",name:"Protactinium",atomicNumber:91},{symbol:"U",name:"Uranium",atomicNumber:92},{symbol:"Np",name:"Neptunium",atomicNumber:93},{symbol:"Pu",name:"Plutonium",atomicNumber:94},{symbol:"Am",name:"Americium",atomicNumber:95},{symbol:"Cm",name:"Curium",atomicNumber:96},{symbol:"Bk",name:"Berkelium",atomicNumber:97},{symbol:"Cf",name:"Californium",atomicNumber:98},{symbol:"Es",name:"Einsteinium",atomicNumber:99},{symbol:"Fm",name:"Fermium",atomicNumber:100},{symbol:"Md",name:"Mendelevium",atomicNumber:101},{symbol:"No",name:"Nobelium",atomicNumber:102},{symbol:"Lr",name:"Lawrencium",atomicNumber:103},{symbol:"Rf",name:"Rutherfordium",atomicNumber:104},{symbol:"Db",name:"Dubnium",atomicNumber:105},{symbol:"Sg",name:"Seaborgium",atomicNumber:106},{symbol:"Bh",name:"Bohrium",atomicNumber:107},{symbol:"Hs",name:"Hassium",atomicNumber:108},{symbol:"Mt",name:"Meitnerium",atomicNumber:109},{symbol:"Ds",name:"Darmstadtium",atomicNumber:110},{symbol:"Rg",name:"Roentgenium",atomicNumber:111},{symbol:"Cn",name:"Copernicium",atomicNumber:112},{symbol:"Nh",name:"Nihonium",atomicNumber:113},{symbol:"Fl",name:"Flerovium",atomicNumber:114},{symbol:"Mc",name:"Moscovium",atomicNumber:115},{symbol:"Lv",name:"Livermorium",atomicNumber:116},{symbol:"Ts",name:"Tennessine",atomicNumber:117},{symbol:"Og",name:"Oganesson",atomicNumber:118}],unit:[{name:"meter",symbol:"m"},{name:"second",symbol:"s"},{name:"mole",symbol:"mol"},{name:"ampere",symbol:"A"},{name:"kelvin",symbol:"K"},{name:"candela",symbol:"cd"},{name:"kilogram",symbol:"kg"},{name:"radian",symbol:"rad"},{name:"hertz",symbol:"Hz"},{name:"newton",symbol:"N"},{name:"pascal",symbol:"Pa"},{name:"joule",symbol:"J"},{name:"watt",symbol:"W"},{name:"coulomb",symbol:"C"},{name:"volt",symbol:"V"},{name:"ohm",symbol:"Ω"},{name:"tesla",symbol:"T"},{name:"degree Celsius",symbol:"°C"},{name:"lumen",symbol:"lm"},{name:"becquerel",symbol:"Bq"},{name:"gray",symbol:"Gy"},{name:"sievert",symbol:"Sv"},{name:"steradian",symbol:"sr"},{name:"farad",symbol:"F"},{name:"siemens",symbol:"S"},{name:"weber",symbol:"Wb"},{name:"henry",symbol:"H"},{name:"lux",symbol:"lx"},{name:"katal",symbol:"kat"}]},team:{creature:["ants","bats","bears","bees","birds","buffalo","cats","chickens","cattle","dogs","dolphins","ducks","elephants","fishes","foxes","frogs","geese","goats","horses","kangaroos","lions","monkeys","owls","oxen","penguins","people","pigs","rabbits","sheep","tigers","whales","wolves","zebras","banshees","crows","black cats","chimeras","ghosts","conspirators","dragons","dwarves","elves","enchanters","exorcists","sons","foes","giants","gnomes","goblins","gooses","griffins","lycanthropes","nemesis","ogres","oracles","prophets","sorcerors","spiders","spirits","vampires","warlocks","vixens","werewolves","witches","worshipers","zombies","druids"],name:["{{location.state}} {{team.creature}}"]},vehicle:{bicycle_type:["Adventure Road Bicycle","BMX Bicycle","City Bicycle","Cruiser Bicycle","Cyclocross Bicycle","Dual-Sport Bicycle","Fitness Bicycle","Flat-Foot Comfort Bicycle","Folding Bicycle","Hybrid Bicycle","Mountain Bicycle","Recumbent Bicycle","Road Bicycle","Tandem Bicycle","Touring Bicycle","Track/Fixed-Gear Bicycle","Triathlon/Time Trial Bicycle","Tricycle"],fuel:["Diesel","Electric","Gasoline","Hybrid"],manufacturer:["Aston Martin","Audi","BMW","Bentley","Bugatti","Cadillac","Chevrolet","Chrysler","Dodge","Ferrari","Fiat","Ford","Honda","Hyundai","Jaguar","Jeep","Kia","Lamborghini","Land Rover","Maserati","Mazda","Mercedes Benz","Mini","Nissan","Polestar","Porsche","Rolls Royce","Smart","Tesla","Toyota","Volkswagen","Volvo"],model:["1","2","911","A4","A8","ATS","Accord","Alpine","Altima","Aventador","Beetle","CTS","CX-9","Camaro","Camry","Challenger","Charger","Civic","Colorado","Corvette","Countach","Cruze","Durango","El Camino","Element","Escalade","Expedition","Explorer","F-150","Fiesta","Focus","Fortwo","Golf","Grand Caravan","Grand Cherokee","Impala","Jetta","Land Cruiser","LeBaron","Malibu","Mercielago","Model 3","Model S","Model T","Model X","Model Y","Mustang","PT Cruiser","Prius","Ranchero","Roadster","Sentra","Silverado","Spyder","Taurus","V90","Volt","Wrangler","XC90","XTS"],type:["Cargo Van","Convertible","Coupe","Crew Cab Pickup","Extended Cab Pickup","Hatchback","Minivan","Passenger Van","SUV","Sedan","Wagon"]},word:{adjective:["abandoned","able","acceptable","acclaimed","accomplished","accurate","aching","acidic","actual","admired","adolescent","advanced","affectionate","afraid","aged","aggravating","aggressive","agile","agitated","agreeable","ajar","alarmed","alert","alienated","alive","all","altruistic","amazing","ambitious","ample","amused","angelic","anguished","animated","annual","another","antique","any","apprehensive","appropriate","apt","arid","artistic","ashamed","assured","astonishing","athletic","austere","authentic","authorized","avaricious","average","aware","awesome","awful","babyish","back","bad","baggy","bare","basic","beloved","beneficial","best","better","big","biodegradable","bitter","black","black-and-white","blank","blaring","bleak","blind","blond","blue","blushing","bogus","boiling","bony","boring","bossy","both","bouncy","bowed","brave","breakable","bright","brilliant","brisk","broken","brown","bruised","bulky","burdensome","burly","bustling","busy","buttery","buzzing","calculating","candid","carefree","careless","caring","cautious","cavernous","celebrated","charming","cheap","cheerful","chilly","chubby","circular","classic","clean","clear","clear-cut","close","closed","cloudy","clueless","clumsy","cluttered","coarse","colorful","colorless","colossal","comfortable","common","compassionate","competent","complete","complicated","concerned","concrete","confused","considerate","content","cool","cooperative","coordinated","corny","corrupt","courageous","courteous","crafty","crazy","creamy","creative","criminal","critical","crooked","crowded","cruel","crushing","cuddly","cultivated","cumbersome","curly","cute","damaged","damp","dapper","dark","darling","dazzling","dead","deadly","deafening","dearest","decent","decisive","deep","defenseless","defensive","deficient","definite","definitive","delectable","delicious","delirious","dense","dental","dependable","dependent","descriptive","deserted","determined","devoted","different","difficult","digital","diligent","dim","direct","dirty","discrete","disloyal","dismal","distant","distinct","distorted","doting","downright","drab","dramatic","dreary","dual","dull","dutiful","each","early","earnest","easy","ecstatic","edible","educated","elastic","elderly","electric","elegant","elementary","elliptical","eminent","emotional","empty","enchanted","enchanting","energetic","enlightened","enraged","entire","equatorial","essential","esteemed","ethical","everlasting","every","evil","exalted","excellent","excitable","excited","exhausted","exotic","expensive","experienced","expert","extra-large","extroverted","failing","faint","fair","fake","familiar","fantastic","far","far-flung","far-off","faraway","fat","fatal","fatherly","favorable","favorite","fearless","feline","filthy","fine","finished","firm","first","firsthand","fixed","flashy","flawed","flawless","flickering","flimsy","flowery","fluffy","flustered","focused","fond","foolhardy","foolish","forceful","formal","forsaken","fortunate","fragrant","frail","frank","free","french","frequent","friendly","frightened","frilly","frivolous","frizzy","front","frozen","frugal","fruitful","functional","funny","fussy","fuzzy","gaseous","general","gentle","genuine","gifted","gigantic","giving","glaring","glass","gleaming","glittering","gloomy","glorious","glossy","glum","golden","good","good-natured","gorgeous","graceful","gracious","grandiose","granular","grave","gray","great","greedy","grim","grimy","gripping","grizzled","grouchy","grounded","growing","grown","grubby","gruesome","grumpy","guilty","gullible","gummy","hairy","handsome","handy","happy","happy-go-lucky","hard-to-find","harmful","hasty","hateful","haunting","heartfelt","heavenly","heavy","hefty","helpful","helpless","hidden","hoarse","hollow","homely","honorable","honored","hopeful","hospitable","hot","huge","humble","humiliating","hungry","hurtful","husky","icy","ideal","idealistic","idolized","ignorant","ill","ill-fated","illiterate","illustrious","imaginary","imaginative","immaculate","immediate","immense","impartial","impassioned","impeccable","impish","impolite","important","impossible","impractical","impressionable","impressive","improbable","impure","inborn","incomparable","incomplete","inconsequential","indelible","indolent","inexperienced","infamous","infatuated","inferior","infinite","informal","innocent","insecure","insidious","insignificant","insistent","instructive","intelligent","intent","interesting","internal","international","intrepid","ironclad","irresponsible","jagged","jam-packed","jaunty","jealous","jittery","joyful","joyous","jubilant","judicious","juicy","jumbo","junior","juvenile","kaleidoscopic","key","knotty","knowledgeable","known","kooky","kosher","lanky","last","lasting","late","lavish","lawful","lazy","leading","lean","left","legal","light","lighthearted","likable","likely","limited","limp","limping","linear","lined","liquid","little","live","lively","livid","lone","lonely","long","long-term","lost","lovable","lovely","low","lucky","lumbering","lumpy","lustrous","mad","made-up","magnificent","majestic","major","male","mammoth","married","marvelous","massive","mature","meager","mealy","mean","measly","meaty","mediocre","medium","memorable","menacing","merry","messy","metallic","mild","milky","mindless","minor","minty","miserable","miserly","misguided","mixed","moist","monstrous","monthly","monumental","moral","motionless","muddy","muffled","multicolored","mundane","murky","mushy","musty","muted","mysterious","narrow","natural","naughty","nautical","near","neat","necessary","needy","negative","neglected","negligible","neighboring","nervous","new","next","nice","nifty","nimble","nippy","nocturnal","normal","noted","noteworthy","noxious","numb","nutritious","obedient","oblong","obvious","odd","oddball","official","oily","old","old-fashioned","only","optimal","optimistic","orange","orderly","ordinary","ornate","ornery","other","our","outgoing","outlandish","outlying","outrageous","outstanding","oval","overcooked","overdue","palatable","pale","paltry","parallel","parched","partial","passionate","pastel","peaceful","peppery","perfumed","perky","personal","pertinent","pessimistic","petty","phony","physical","pink","pitiful","plain","pleasant","pleased","pleasing","plump","pointed","pointless","polished","polite","political","poor","portly","posh","possible","potable","powerful","powerless","practical","precious","present","prestigious","pretty","pricey","prickly","primary","prime","private","probable","productive","profitable","profuse","proper","proud","prudent","punctual","puny","pure","purple","pushy","putrid","puzzled","qualified","quarrelsome","quarterly","queasy","querulous","questionable","quick","quick-witted","quiet","quintessential","quixotic","radiant","ragged","rapid","rare","raw","realistic","reasonable","recent","reckless","rectangular","red","reflecting","regal","regular","remarkable","remorseful","repentant","respectful","responsible","rewarding","rich","right","rigid","ripe","roasted","robust","rosy","rotating","rotten","rough","round","rowdy","royal","rubbery","ruddy","rundown","runny","rural","rusty","sad","salty","same","sandy","sarcastic","sardonic","scaly","scared","scary","scented","scientific","scornful","scratchy","second","second-hand","secondary","secret","self-assured","self-reliant","selfish","sentimental","separate","serene","serpentine","severe","shabby","shadowy","shady","shallow","shameful","shameless","shimmering","shiny","shocked","shoddy","short","short-term","showy","shrill","shy","sick","silent","silky","silver","similar","simple","simplistic","sinful","sizzling","skeletal","sleepy","slight","slimy","slow","slushy","small","smart","smoggy","smooth","smug","snappy","snarling","sneaky","sniveling","snoopy","sociable","soft","soggy","somber","some","sophisticated","sore","sorrowful","soulful","soupy","sour","spanish","sparkling","sparse","specific","speedy","spherical","spiffy","spirited","spiteful","splendid","spotless","square","squeaky","squiggly","stable","staid","stained","stale","standard","stark","steel","steep","sticky","stiff","stingy","stormy","straight","strange","strict","strident","striking","strong","stunning","stupendous","sturdy","stylish","subdued","submissive","substantial","subtle","suburban","sudden","sugary","sunny","super","superb","superficial","superior","supportive","sure-footed","surprised","svelte","sweet","swift","talkative","tall","tame","tangible","tasty","tattered","taut","tedious","teeming","tempting","tender","tense","tepid","terrible","that","these","thick","thin","thorny","thorough","those","thrifty","tidy","tight","timely","tinted","tiny","tired","torn","total","tough","tragic","trained","triangular","tricky","trim","trivial","troubled","true","trusting","trustworthy","trusty","turbulent","twin","ugly","ultimate","unaware","uncomfortable","uncommon","unconscious","understated","uneven","unfinished","unfit","unfortunate","unhappy","unhealthy","uniform","unimportant","unique","unkempt","unknown","unlawful","unlined","unlucky","unpleasant","unrealistic","unripe","unruly","unselfish","unsightly","unsteady","unsung","untidy","untimely","untried","untrue","unused","unusual","unwelcome","unwieldy","unwilling","unwritten","upbeat","upright","upset","urban","usable","useless","utilized","utter","vague","vain","valuable","variable","vast","velvety","vengeful","vibrant","victorious","violent","vivacious","vivid","voluminous","warlike","warm","warmhearted","warped","wasteful","waterlogged","watery","wavy","wealthy","weary","webbed","wee","weekly","weighty","weird","well-documented","well-groomed","well-lit","well-made","well-off","well-to-do","well-worn","which","whimsical","whirlwind","whispered","white","whole","whopping","wicked","wide","wide-eyed","wiggly","willing","wilted","winding","windy","winged","wise","witty","wobbly","woeful","wonderful","wordy","worldly","worse","worst","worthless","worthwhile","worthy","wrathful","wretched","writhing","wrong","wry","yearly","yellow","yellowish","young","youthful","yummy","zany","zealous","zesty"],adverb:["abnormally","absentmindedly","accidentally","acidly","actually","adventurously","afterwards","almost","always","angrily","annually","anxiously","arrogantly","awkwardly","badly","bashfully","beautifully","bitterly","bleakly","blindly","blissfully","boastfully","boldly","bravely","briefly","brightly","briskly","broadly","busily","calmly","carefully","carelessly","cautiously","certainly","cheerfully","clearly","cleverly","closely","coaxingly","colorfully","commonly","continually","coolly","correctly","courageously","crossly","cruelly","curiously","daily","daintily","dearly","deceivingly","deeply","defiantly","deliberately","delightfully","diligently","dimly","doubtfully","dreamily","easily","elegantly","energetically","enormously","enthusiastically","equally","especially","even","evenly","eventually","exactly","excitedly","extremely","fairly","faithfully","famously","far","fast","fatally","ferociously","fervently","fiercely","fondly","foolishly","fortunately","frankly","frantically","freely","frenetically","frightfully","fully","furiously","generally","generously","gently","gladly","gleefully","gracefully","gratefully","greatly","greedily","happily","hastily","healthily","heavily","helpfully","helplessly","highly","honestly","hopelessly","hourly","hungrily","immediately","innocently","inquisitively","instantly","intensely","intently","interestingly","inwardly","irritably","jaggedly","jealously","joshingly","jovially","joyfully","joyously","jubilantly","judgementally","justly","keenly","kiddingly","kindheartedly","kindly","kissingly","knavishly","knottily","knowingly","knowledgeably","kookily","lazily","less","lightly","likely","limply","lively","loftily","longingly","loosely","loudly","lovingly","loyally","madly","majestically","meaningfully","mechanically","merrily","miserably","mockingly","monthly","more","mortally","mostly","mysteriously","naturally","nearly","neatly","needily","nervously","never","nicely","noisily","not","obediently","obnoxiously","oddly","offensively","officially","often","only","openly","optimistically","overconfidently","owlishly","painfully","partially","patiently","perfectly","physically","playfully","politely","poorly","positively","potentially","powerfully","promptly","properly","punctually","quaintly","quarrelsomely","queasily","questionably","questioningly","quicker","quickly","quietly","quirkily","quizzically","rapidly","rarely","readily","really","reassuringly","recklessly","regularly","reluctantly","repeatedly","reproachfully","restfully","righteously","rightfully","rigidly","roughly","rudely","sadly","safely","scarcely","scarily","searchingly","sedately","seemingly","seldom","selfishly","separately","seriously","shakily","sharply","sheepishly","shrilly","shyly","silently","sleepily","slowly","smoothly","softly","solemnly","solidly","sometimes","soon","speedily","stealthily","sternly","strictly","successfully","suddenly","surprisingly","suspiciously","sweetly","swiftly","sympathetically","tenderly","tensely","terribly","thankfully","thoroughly","thoughtfully","tightly","tomorrow","too","tremendously","triumphantly","truly","truthfully","ultimately","unabashedly","unaccountably","unbearably","unethically","unexpectedly","unfortunately","unimpressively","unnaturally","unnecessarily","upbeat","upliftingly","upright","upside-down","upward","upwardly","urgently","usefully","uselessly","usually","utterly","vacantly","vaguely","vainly","valiantly","vastly","verbally","very","viciously","victoriously","violently","vivaciously","voluntarily","warmly","weakly","wearily","well","wetly","wholly","wildly","willfully","wisely","woefully","wonderfully","worriedly","wrongly","yawningly","yearly","yearningly","yesterday","yieldingly","youthfully"],conjunction:["after","although","and","as","because","before","but","consequently","even","finally","for","furthermore","hence","how","however","if","inasmuch","incidentally","indeed","instead","lest","likewise","meanwhile","nor","now","once","or","provided","since","so","supposing","than","that","though","till","unless","until","what","when","whenever","where","whereas","wherever","whether","which","while","who","whoever","whose","why","yet"],interjection:["yuck","oh","phooey","blah","boo","whoa","yowza","huzzah","boohoo","fooey","geez","pfft","ew","ah","yum","brr","hm","yahoo","aha","woot","drat","gah","meh","psst","aw","ugh","yippee","eek","gee","bah","gadzooks","duh","ha","mmm","ouch","phew","ack","uh-huh","gosh","hmph","pish","zowie","er","ick","oof","um"],noun:["CD","SUV","abacus","academics","accelerator","accompanist","account","accountability","acquaintance","ad","adaptation","address","adrenalin","adult","advancement","advertisement","adviser","affect","affiliate","aftermath","agreement","airbus","aircraft","airline","airmail","airman","airport","alb","alert","allegation","alliance","alligator","allocation","almighty","amendment","amnesty","analogy","angle","annual","antelope","anticodon","apparatus","appliance","approach","apricot","arcade","archaeology","armchair","armoire","asset","assist","atrium","attraction","availability","avalanche","awareness","babushka","backbone","backburn","bakeware","bandwidth","bar","barge","baritone","barracks","baseboard","basket","bathhouse","bathrobe","battle","begonia","behest","bell","bench","bend","beret","best-seller","bid","bidet","bin","birdbath","birdcage","birth","blight","blossom","blowgun","bob","bog","bonfire","bonnet","bookcase","bookend","boulevard","bourgeoisie","bowler","bowling","boyfriend","brace","bracelet","bran","breastplate","brief","brochure","brook","brush","bug","bump","bungalow","cafe","cake","calculus","cannon","cantaloupe","cap","cappelletti","captain","caption","carboxyl","cardboard","carnival","case","casement","cash","casket","cassava","castanet","catalyst","cauliflower","cellar","celsius","cemetery","ceramic","ceramics","certification","chainstay","chairperson","challenge","championship","chap","chapel","character","characterization","charlatan","charm","chasuble","cheese","cheetah","chiffonier","chops","chow","cinder","cinema","circumference","citizen","clamp","clavicle","cleaner","climb","co-producer","coal","coast","cod","coil","coin","coliseum","collaboration","collectivization","colon","colonialism","comestible","commercial","commodity","community","comparison","completion","complication","compromise","concentration","configuration","confusion","conservation","conservative","consistency","contractor","contrail","convection","conversation","cook","coordination","cop-out","cope","cork","cornet","corporation","corral","cosset","costume","couch","council","councilman","countess","courtroom","cow","creator","creature","crest","cricket","crocodile","cross-contamination","cruelty","cuckoo","curl","custody","custom","cutlet","cutover","cycle","daddy","dandelion","dash","daughter","dead","decision","deck","declaration","decongestant","decryption","deduction","deed","deer","defendant","density","department","dependency","deployment","depot","derby","descendant","descent","design","designation","desk","detective","devastation","developing","developmental","devil","diagram","digestive","digit","dime","director","disadvantage","disappointment","disclosure","disconnection","discourse","dish","disk","disposer","distinction","diver","diversity","dividend","divine","doing","doorpost","doubter","draft","draw","dream","dredger","dress","drive","drug","duffel","dulcimer","dusk","duster","dwell","e-mail","earth","ecliptic","ectoderm","edge","editor","effector","eggplant","electronics","elevation","elevator","elver","embarrassment","embossing","emergent","encouragement","entry","epic","equal","essence","eternity","ethyl","euphonium","event","exasperation","excess","executor","exhaust","expansion","expense","experience","exploration","extension","extent","exterior","eyebrow","eyeliner","farm","farmer","fat","fax","feather","fedora","fellow","fen","fencing","ferret","festival","fibre","filter","final","finding","finer","finger","fireplace","fisherman","fishery","fit","flame","flat","fledgling","flight","flint","flood","flu","fog","fold","folklore","follower","following","foodstuffs","footrest","forage","forager","forgery","fork","formamide","formation","formula","fort","fowl","fraudster","freckle","freezing","freight","fuel","fun","fund","fundraising","futon","gallery","galoshes","gastropod","gazebo","gerbil","ghost","giant","gift","giggle","glider","gloom","goat","godfather","godparent","going","goodwill","governance","government","gown","gradient","graffiti","grandpa","grandson","granny","grass","gray","gripper","grouper","guacamole","guard","guidance","guide","gym","gymnast","habit","haircut","halt","hamburger","hammock","handful","handle","handover","harp","haversack","hawk","heartache","heartbeat","heating","hello","help","hepatitis","heroine","hexagon","hierarchy","hippodrome","honesty","hoof","hope","horde","hornet","horst","hose","hospitalization","hovel","hovercraft","hubris","humidity","humor","hundred","hunger","hunt","husband","hutch","hydrant","hydrocarbon","hydrolyse","hydrolyze","hyena","hygienic","hyphenation","ice-cream","icebreaker","igloo","ignorance","illusion","impact","import","importance","impostor","in-joke","incandescence","independence","individual","information","injunction","innovation","insolence","inspection","instance","institute","instruction","instructor","integer","intellect","intent","interchange","interior","intervention","interviewer","invite","iridescence","issue","jacket","jazz","jellyfish","jet","jogging","joy","juggernaut","jump","jungle","junior","jury","kettledrum","kick","kielbasa","kinase","king","kiss","kit","knickers","knight","knitting","knuckle","label","labourer","lace","lady","lamp","language","larva","lashes","laughter","lava","lawmaker","lay","leading","league","legend","legging","legislature","lender","license","lid","lieu","lifestyle","lift","linseed","litter","loaf","lobster","longboat","lotion","lounge","louse","lox","loyalty","luck","lyre","maestro","mainstream","maintainer","majority","makeover","making","mallard","management","manner","mantua","marathon","march","marimba","marketplace","marksman","markup","marten","massage","masterpiece","mathematics","meadow","meal","meander","meatloaf","mechanic","median","membership","mentor","merit","metabolite","metal","middle","midwife","milestone","millet","minion","minister","minor","minority","mixture","mobility","molasses","mom","moment","monasticism","monocle","monster","morbidity","morning","mortise","mountain","mouser","mousse","mozzarella","muscat","mythology","napkin","necklace","nectarine","negotiation","nephew","nerve","netsuke","newsletter","newsprint","newsstand","nightlife","noon","nougat","nucleotidase","nudge","numeracy","numeric","nun","obedience","obesity","object","obligation","ocelot","octave","offset","oil","omelet","onset","opera","operating","optimal","orchid","order","ostrich","other","outlaw","outrun","outset","overcoat","overheard","overload","ownership","pacemaker","packaging","paintwork","palate","pants","pantyhose","papa","parade","parsnip","partridge","passport","pasta","patroller","pear","pearl","pecan","pendant","peninsula","pension","peony","pepper","perfection","permafrost","perp","petal","petticoat","pharmacopoeia","phrase","pick","piglet","pigpen","pigsty","pile","pillbox","pillow","pilot","pine","pinstripe","place","plain","planula","plastic","platter","platypus","pleasure","pliers","plugin","plumber","pneumonia","pocket-watch","poetry","polarisation","polyester","pomelo","pop","poppy","popularity","populist","porter","possession","postbox","precedent","premeditation","premier","premise","premium","pressure","presume","priesthood","printer","privilege","procurement","produce","programme","prohibition","promise","pronoun","providence","provider","provision","publication","publicity","pulse","punctuation","pupil","puppet","puritan","quart","quinoa","quit","railway","range","rationale","ravioli","rawhide","reach","reasoning","reboot","receptor","recommendation","reconsideration","recovery","redesign","relative","release","remark","reorganisation","repeat","replacement","reporter","representation","republican","request","requirement","reservation","resolve","resource","responsibility","restaurant","retention","retrospectivity","reward","ribbon","rim","riser","roadway","role","rosemary","roundabout","rubric","ruin","rule","runway","rust","safe","sailor","saloon","sand","sandbar","sanity","sarong","sauerkraut","saw","scaffold","scale","scarification","scenario","schedule","schnitzel","scholarship","scorn","scorpion","scout","scrap","scratch","seafood","seagull","seal","season","secrecy","secret","section","sediment","self-confidence","sermon","sesame","settler","shadowbox","shark","shipper","shore","shoulder","sideboard","siege","sightseeing","signature","silk","simple","singing","skean","skeleton","skyline","skyscraper","slide","slime","slipper","smog","smoke","sock","soliloquy","solution","solvency","someplace","sonar","sonata","sonnet","soup","soybean","space","spear","spirit","spork","sport","spring","sprinkles","squid","stall","starboard","statue","status","stay","steak","steeple","step","step-mother","sticker","stir-fry","stitcher","stock","stool","story","strait","stranger","strategy","straw","stump","subexpression","submitter","subsidy","substitution","suitcase","summary","summer","sunbeam","sundae","supplier","surface","sushi","suspension","sustenance","swanling","swath","sweatshop","swim","swine","swing","switch","switchboard","swordfish","synergy","t-shirt","tabletop","tackle","tail","tapioca","taro","tarragon","taxicab","teammate","technician","technologist","tectonics","tenant","tenement","tennis","tentacle","teriyaki","term","testimonial","testing","thigh","thongs","thorn","thread","thunderbolt","thyme","tinderbox","toaster","tomatillo","tomb","tomography","tool","tooth","toothbrush","toothpick","topsail","traditionalism","traffic","translation","transom","transparency","trash","travel","tray","trench","tribe","tributary","trick","trolley","tuba","tuber","tune-up","turret","tusk","tuxedo","typeface","typewriter","unblinking","underneath","underpants","understanding","unibody","unique","unit","utilization","valentine","validity","valley","valuable","vanadyl","vein","velocity","venom","version","verve","vestment","veto","viability","vibraphone","vibration","vicinity","video","violin","vision","vista","vol","volleyball","wafer","waist","wallaby","warming","wasabi","waterspout","wear","wedding","whack","whale","wheel","widow","wilderness","willow","window","wombat","word","worth","wriggler","yak","yarmulke","yeast","yin","yogurt","zebra","zen"],preposition:["a","abaft","aboard","about","above","absent","across","afore","after","against","along","alongside","amid","amidst","among","amongst","an","anenst","anti","apropos","apud","around","as","aside","astride","at","athwart","atop","barring","before","behind","below","beneath","beside","besides","between","beyond","but","by","circa","concerning","considering","despite","down","during","except","excepting","excluding","failing","following","for","forenenst","from","given","in","including","inside","into","lest","like","mid","midst","minus","modulo","near","next","notwithstanding","of","off","on","onto","opposite","out","outside","over","pace","past","per","plus","pro","qua","regarding","round","sans","save","since","than","the","through","throughout","till","times","to","toward","towards","under","underneath","unlike","until","unto","up","upon","versus","via","vice","with","within","without","worth"],verb:["abnegate","abscond","abseil","absolve","accentuate","accept","access","accessorise","accompany","account","accredit","achieve","acknowledge","acquire","adjourn","adjudge","admonish","adumbrate","advocate","afford","airbrush","ameliorate","amend","amount","anaesthetise","analyse","anesthetize","anneal","annex","antagonize","ape","apologise","apostrophize","appertain","appreciate","appropriate","approximate","arbitrate","archive","arraign","arrange","ascertain","ascribe","assail","atomize","attend","attest","attribute","augment","avow","axe","baa","banish","bank","baptise","battle","beard","beep","behold","belabor","bemuse","besmirch","bestride","better","bewail","bicycle","bide","bind","biodegrade","blacken","blaspheme","bleach","blend","blink","bliss","bloom","bludgeon","bobble","boggle","bolster","book","boom","bootleg","border","bore","boss","braid","brand","brandish","break","breed","broadcast","broadside","brood","browse","buck","burgeon","bus","butter","buzzing","camouflage","cannibalise","canter","cap","capitalise","capitalize","capsize","card","carouse","carp","carpool","catalog","catalyze","catch","categorise","cease","celebrate","censor","certify","char","charter","chase","chatter","chime","chip","christen","chromakey","chunder","chunter","cinch","circle","circulate","circumnavigate","clamor","clamour","claw","cleave","clinch","clinking","clone","clonk","coagulate","coexist","coincide","collaborate","colligate","colorize","colour","comb","come","commandeer","commemorate","communicate","compete","conceal","conceptualize","conclude","concrete","condense","cone","confide","confirm","confiscate","confound","confute","congregate","conjecture","connect","consign","construe","contradict","contrast","contravene","controvert","convalesce","converse","convince","convoke","coop","cop","corner","covenant","cow","crackle","cram","crank","creak","creaking","cripple","croon","cross","crumble","crystallize","culminate","culture","curry","curse","customise","cycle","dally","dampen","darn","debit","debut","decide","decode","decouple","decriminalize","deduce","deduct","deflate","deflect","deform","defrag","degenerate","degrease","delete","delight","deliquesce","demob","demobilise","democratize","demonstrate","denitrify","deny","depart","depend","deplore","deploy","deprave","depute","dereference","describe","desecrate","deselect","destock","detain","develop","devise","dial","dicker","digitize","dilate","disapprove","disarm","disbar","discontinue","disgorge","dishearten","dishonor","disinherit","dislocate","dispense","display","dispose","disrespect","dissemble","ditch","divert","dock","doodle","downchange","downshift","dowse","draft","drag","drain","dramatize","drowse","drum","dwell","economise","edge","efface","egg","eke","electrify","embalm","embed","embody","emboss","emerge","emphasise","emphasize","emulsify","encode","endow","enfold","engage","engender","enhance","enlist","enrage","enrich","enroll","entice","entomb","entrench","entwine","equate","essay","etch","eulogise","even","evince","exacerbate","exaggerate","exalt","exempt","exonerate","expatiate","explode","expostulate","extract","extricate","eyeglasses","fabricate","facilitate","factorise","factorize","fail","fall","familiarize","fashion","father","fathom","fax","federate","feminize","fence","fess","fictionalize","fiddle","fidget","fill","flash","fleck","flight","floodlight","floss","fluctuate","fluff","fly","focalise","foot","forearm","forecast","foretell","forgather","forgo","fork","form","forswear","founder","fraternise","fray","frizz","fumigate","function","furlough","fuss","gad","gallivant","galvanize","gape","garage","garrote","gasp","gestate","give","glimmer","glisten","gloat","gloss","glow","gnash","gnaw","goose","govern","grade","graduate","graft","grok","guest","guilt","gulp","gum","gurn","gust","gut","guzzle","ham","harangue","harvest","hassle","haul","haze","headline","hearten","heighten","highlight","hoick","hold","hole","hollow","holster","home","homeschool","hoot","horn","horse","hotfoot","house","hover","howl","huddle","huff","hunger","hunt","husk","hype","hypothesise","hypothesize","idle","ignite","imagineer","impact","impanel","implode","incinerate","incline","inculcate","industrialize","ingratiate","inhibit","inject","innovate","inscribe","insert","insist","inspect","institute","institutionalize","intend","intermarry","intermesh","intermix","internalise","internalize","internationalize","intrigue","inure","inveigle","inventory","investigate","irk","iterate","jaywalk","jell","jeopardise","jiggle","jive","joint","jot","jut","keel","knife","knit","know","kowtow","lack","lampoon","large","leap","lecture","legitimize","lend","libel","liberalize","license","ligate","list","lobotomise","lock","log","loose","low","lowball","machine","magnetize","major","make","malfunction","manage","manipulate","maroon","masculinize","mash","mask","masquerade","massage","masticate","materialise","matter","maul","memorise","merge","mesh","metabolise","microblog","microchip","micromanage","militate","mill","minister","minor","misappropriate","miscalculate","misfire","misjudge","miskey","mismatch","mispronounce","misread","misreport","misspend","mob","mobilise","mobilize","moisten","mooch","moor","moralise","mortar","mosh","mothball","motivate","motor","mould","mount","muddy","mummify","mutate","mystify","nab","narrate","narrowcast","nasalise","nauseate","navigate","neaten","neck","neglect","norm","notarize","object","obscure","observe","obsess","obstruct","obtrude","offend","offset","option","orchestrate","orient","orientate","outbid","outdo","outfit","outflank","outfox","outnumber","outrank","outrun","outsource","overburden","overcharge","overcook","overdub","overfeed","overload","overplay","overproduce","overreact","override","overspend","overstay","overtrain","overvalue","overwork","own","oxidise","oxidize","oxygenate","pace","pack","pale","pant","paralyse","parody","part","pause","pave","penalise","persecute","personalise","perspire","pertain","peter","pike","pillory","pinion","pip","pity","pivot","pixellate","plagiarise","plait","plan","please","pluck","ponder","popularize","portray","prance","preclude","preheat","prejudge","preregister","presell","preside","pretend","print","prioritize","probate","probe","proceed","procrastinate","profane","progress","proliferate","proofread","propound","proselytise","provision","pry","publicize","puff","pull","pulp","pulverize","purse","put","putrefy","quadruple","quaff","quantify","quarrel","quash","quaver","question","quiet","quintuple","quip","quit","rag","rally","ramp","randomize","rationalise","rationalize","ravage","ravel","react","readies","readjust","readmit","ready","reapply","rear","reassemble","rebel","reboot","reborn","rebound","rebuff","rebuild","rebuke","recede","reckon","reclassify","recompense","reconstitute","record","recount","redact","redevelop","redound","redraw","redress","reel","refer","reference","refine","reflate","refute","regulate","reiterate","rejigger","rejoin","rekindle","relaunch","relieve","remand","remark","reopen","reorient","replicate","repossess","represent","reprimand","reproach","reprove","repurpose","requite","reschedule","resort","respray","restructure","retool","retract","revere","revitalise","revoke","reword","rewrite","ride","ridge","rim","ring","rise","rival","roger","rosin","rot","rout","row","rue","rule","safeguard","sashay","sate","satirise","satirize","satisfy","saturate","savour","scale","scamper","scar","scare","scarper","scent","schematise","scheme","schlep","scoff","scoop","scope","scotch","scowl","scrabble","scram","scramble","scrape","screw","scruple","scrutinise","scuffle","scuttle","search","secularize","see","segregate","sell","sense","sensitize","sequester","serenade","serialize","serve","service","settle","sew","shaft","sham","shampoo","shanghai","shear","sheathe","shell","shinny","shirk","shoot","shoulder","shout","shovel","showboat","shred","shrill","shudder","shush","sidetrack","sign","silt","sin","singe","sit","sizzle","skateboard","ski","slake","slap","slather","sleet","slink","slip","slope","slump","smarten","smuggle","snack","sneak","sniff","snoop","snow","snowplow","snuggle","soap","solace","solder","solicit","source","spark","spattering","spectacles","spectate","spellcheck","spew","spice","spirit","splash","splay","split","splosh","splurge","spook","square","squirm","stabilise","stable","stack","stage","stake","starch","state","statement","stiffen","stigmatize","sting","stint","stoop","store","storyboard","stratify","structure","stuff","stunt","substantiate","subtract","suckle","suffice","suffocate","summarise","sun","sunbathe","sunder","sup","surge","surprise","swat","swathe","sway","swear","swelter","swerve","swill","swing","symbolise","synthesise","syringe","table","tabulate","tag","tame","tank","tankful","tarry","task","taxicab","team","telescope","tenant","terraform","terrorise","testify","think","throbbing","thump","tighten","toady","toe","tough","tousle","traduce","train","transcend","transplant","trash","treasure","treble","trek","trial","tromp","trouser","trust","tune","tut","twine","twist","typify","unbalance","uncork","uncover","underachieve","undergo","underplay","unearth","unfreeze","unfurl","unlearn","unscramble","unzip","uproot","upsell","usher","vacation","vamoose","vanish","vary","veg","venture","verify","vet","veto","volunteer","vulgarise","waft","wallop","waltz","warp","wash","waver","weary","weatherize","wedge","weep","weight","welcome","westernise","westernize","while","whine","whisper","whistle","whitewash","whup","wilt","wing","wire","wisecrack","wolf","wound","wring","writ","yak","yawn","yearn","yuppify"]}},ww=class extends Error{};var Cw=class{constructor(e){this.faker=e,function(e){let t=Object.getPrototypeOf(e);do{for(let r of Object.getOwnPropertyNames(t))"function"==typeof e[r]&&"constructor"!==r&&(e[r]=e[r].bind(e));t=Object.getPrototypeOf(t)}while(t!==Object.prototype)}(this)}},_w=class extends Cw{constructor(e){super(e),this.faker=e}},Sw=(e=>(e.Narrowbody="narrowbody",e.Regional="regional",e.Widebody="widebody",e))(Sw||{}),Aw=["0","1","2","3","4","5","6","7","8","9"],Mw=["0","O","1","I","L"],Tw={regional:20,narrowbody:35,widebody:60},Bw={regional:["A","B","C","D"],narrowbody:["A","B","C","D","E","F"],widebody:["A","B","C","D","E","F","G","H","J","K"]},Lw=class extends _w{airport(){return this.faker.helpers.arrayElement(this.faker.definitions.airline.airport)}airline(){return this.faker.helpers.arrayElement(this.faker.definitions.airline.airline)}airplane(){return this.faker.helpers.arrayElement(this.faker.definitions.airline.airplane)}recordLocator(e={}){let{allowNumerics:t=!1,allowVisuallySimilarCharacters:r=!1}=e,a=[];return t||a.push(...Aw),r||a.push(...Mw),this.faker.string.alphanumeric({length:6,casing:"upper",exclude:a})}seat(e={}){let{aircraftType:t="narrowbody"}=e,r=Tw[t],a=Bw[t];return`${this.faker.number.int({min:1,max:r})}${this.faker.helpers.arrayElement(a)}`}aircraftType(){return this.faker.helpers.enumValue(Sw)}flightNumber(e={}){let{length:t={min:1,max:4},addLeadingZeros:r=!1}=e,a=this.faker.string.numeric({length:t,allowLeadingZeros:!1});return r?a.padStart(4,"0"):a}},Ew=(e=>(e.SRGB="sRGB",e.DisplayP3="display-p3",e.REC2020="rec2020",e.A98RGB="a98-rgb",e.ProphotoRGB="prophoto-rgb",e))(Ew||{}),Rw=(e=>(e.RGB="rgb",e.RGBA="rgba",e.HSL="hsl",e.HSLA="hsla",e.HWB="hwb",e.CMYK="cmyk",e.LAB="lab",e.LCH="lch",e.COLOR="color",e))(Rw||{});function Hw(e){return e.map((e=>{if(e%1!=0){let t=new ArrayBuffer(4);return new DataView(t).setFloat32(0,e),Hw([...new Uint8Array(t)]).replaceAll(" ","")}return(e>>>0).toString(2).padStart(8,"0")})).join(" ")}function Dw(e,t,r="rgb",a="sRGB"){switch(t){case"css":return function(e,t="rgb",r="sRGB"){let a=e=>Math.round(100*e);switch(t){case"rgba":return`rgba(${e[0]}, ${e[1]}, ${e[2]}, ${e[3]})`;case"color":return`color(${r} ${e[0]} ${e[1]} ${e[2]})`;case"cmyk":return`cmyk(${a(e[0])}%, ${a(e[1])}%, ${a(e[2])}%, ${a(e[3])}%)`;case"hsl":return`hsl(${e[0]}deg ${a(e[1])}% ${a(e[2])}%)`;case"hsla":return`hsl(${e[0]}deg ${a(e[1])}% ${a(e[2])}% / ${a(e[3])})`;case"hwb":return`hwb(${e[0]} ${a(e[1])}% ${a(e[2])}%)`;case"lab":return`lab(${a(e[0])}% ${e[1]} ${e[2]})`;case"lch":return`lch(${a(e[0])}% ${e[1]} ${e[2]})`;case"rgb":return`rgb(${e[0]}, ${e[1]}, ${e[2]})`}}(e,r,a);case"binary":return Hw(e);case"decimal":return e}}var Pw=class extends _w{human(){return this.faker.helpers.arrayElement(this.faker.definitions.color.human)}space(){return this.faker.helpers.arrayElement(this.faker.definitions.color.space)}cssSupportedFunction(){return this.faker.helpers.enumValue(Rw)}cssSupportedSpace(){return this.faker.helpers.enumValue(Ew)}rgb(e={}){let t,{format:r="hex",includeAlpha:a=!1,prefix:i="#",casing:n="lower"}=e,o="rgb";return"hex"===r?(t=this.faker.string.hexadecimal({length:a?8:6,prefix:""}),t=function(e,t){let{prefix:r,casing:a}=t;switch(a){case"upper":e=e.toUpperCase();break;case"lower":e=e.toLowerCase()}return r&&(e=r+e),e}(t,{prefix:i,casing:n}),t):(t=Array.from({length:3},(()=>this.faker.number.int(255))),a&&(t.push(this.faker.number.float({multipleOf:.01})),o="rgba"),Dw(t,r,o))}cmyk(e={}){let{format:t="decimal"}=e;return Dw(Array.from({length:4},(()=>this.faker.number.float({multipleOf:.01}))),t,"cmyk")}hsl(e={}){let{format:t="decimal",includeAlpha:r=!1}=e,a=[this.faker.number.int(360)];for(let t=0;t<(e?.includeAlpha?3:2);t++)a.push(this.faker.number.float({multipleOf:.01}));return Dw(a,t,r?"hsla":"hsl")}hwb(e={}){let{format:t="decimal"}=e,r=[this.faker.number.int(360)];for(let e=0;e<2;e++)r.push(this.faker.number.float({multipleOf:.01}));return Dw(r,t,"hwb")}lab(e={}){let{format:t="decimal"}=e,r=[this.faker.number.float({multipleOf:1e-6})];for(let e=0;e<2;e++)r.push(this.faker.number.float({min:-100,max:100,multipleOf:1e-4}));return Dw(r,t,"lab")}lch(e={}){let{format:t="decimal"}=e,r=[this.faker.number.float({multipleOf:1e-6})];for(let e=0;e<2;e++)r.push(this.faker.number.float({max:230,multipleOf:.1}));return Dw(r,t,"lch")}colorByCSSColorSpace(e={}){let{format:t="decimal",space:r="sRGB"}=e;return Dw(Array.from({length:3},(()=>this.faker.number.float({multipleOf:1e-4}))),t,"color",r)}},Nw=(e=>(e.Legacy="legacy",e.Segwit="segwit",e.Bech32="bech32",e.Taproot="taproot",e))(Nw||{}),Gw=(e=>(e.Mainnet="mainnet",e.Testnet="testnet",e))(Gw||{}),Iw={legacy:{prefix:{mainnet:"1",testnet:"m"},length:{min:26,max:34},casing:"mixed",exclude:"0OIl"},segwit:{prefix:{mainnet:"3",testnet:"2"},length:{min:26,max:34},casing:"mixed",exclude:"0OIl"},bech32:{prefix:{mainnet:"bc1",testnet:"tb1"},length:{min:42,max:42},casing:"lower",exclude:"1bBiIoO"},taproot:{prefix:{mainnet:"bc1p",testnet:"tb1p"},length:{min:62,max:62},casing:"lower",exclude:"1bBiIoO"}},Ww=(e=>(e.Female="female",e.Male="male",e))(Ww||{});function Fw(e,t,r){let{generic:a,female:i,male:n}=r;switch(t){case"female":return i??a;case"male":return n??a;default:return a??e.helpers.arrayElement([i,n])??[]}}var zw=class extends _w{firstName(e){return this.faker.helpers.arrayElement(Fw(this.faker,e,this.faker.definitions.person.first_name))}lastName(e){if(null!=this.faker.rawDefinitions.person?.last_name_pattern){let t=this.faker.helpers.weightedArrayElement(Fw(this.faker,e,this.faker.rawDefinitions.person.last_name_pattern));return this.faker.helpers.fake(t)}return this.faker.helpers.arrayElement(Fw(this.faker,e,this.faker.definitions.person.last_name))}middleName(e){return this.faker.helpers.arrayElement(Fw(this.faker,e,this.faker.definitions.person.middle_name))}fullName(e={}){let{sex:t=this.faker.helpers.arrayElement(["female","male"]),firstName:r=this.firstName(t),lastName:a=this.lastName(t)}=e,i=this.faker.helpers.weightedArrayElement(this.faker.definitions.person.name);return this.faker.helpers.mustache(i,{"person.prefix":()=>this.prefix(t),"person.firstName":()=>r,"person.middleName":()=>this.middleName(t),"person.lastName":()=>a,"person.suffix":()=>this.suffix()})}gender(){return this.faker.helpers.arrayElement(this.faker.definitions.person.gender)}sex(){return this.faker.helpers.arrayElement(this.faker.definitions.person.sex)}sexType(){return this.faker.helpers.enumValue(Ww)}bio(){let{bio_pattern:e}=this.faker.definitions.person;return this.faker.helpers.fake(e)}prefix(e){return this.faker.helpers.arrayElement(Fw(this.faker,e,this.faker.definitions.person.prefix))}suffix(){return this.faker.helpers.arrayElement(this.faker.definitions.person.suffix)}jobTitle(){return this.faker.helpers.fake(this.faker.definitions.person.job_title_pattern)}jobDescriptor(){return this.faker.helpers.arrayElement(this.faker.definitions.person.job_descriptor)}jobArea(){return this.faker.helpers.arrayElement(this.faker.definitions.person.job_area)}jobType(){return this.faker.helpers.arrayElement(this.faker.definitions.person.job_type)}zodiacSign(){return this.faker.helpers.arrayElement(this.faker.definitions.person.western_zodiac_sign)}},Ow=class{N=624;M=397;MATRIX_A=2567483615;UPPER_MASK=2147483648;LOWER_MASK=2147483647;mt=Array.from({length:this.N});mti=this.N+1;unsigned32(e){return e<0?(e^this.UPPER_MASK)+this.UPPER_MASK:e}subtraction32(e,t){return e>>a&1&&(r=this.addition32(r,this.unsigned32(t<>>30)),this.mti),this.mt[this.mti]=this.unsigned32(4294967295&this.mt[this.mti])}initByArray(e,t){this.initGenrand(19650218);let r=1,a=0,i=this.N>t?this.N:t;for(;i;i--)this.mt[r]=this.addition32(this.addition32(this.unsigned32(this.mt[r]^this.multiplication32(this.unsigned32(this.mt[r-1]^this.mt[r-1]>>>30),1664525)),e[a]),a),this.mt[r]=this.unsigned32(4294967295&this.mt[r]),r++,a++,r>=this.N&&(this.mt[0]=this.mt[this.N-1],r=1),a>=t&&(a=0);for(i=this.N-1;i;i--)this.mt[r]=this.subtraction32(this.unsigned32(this.mt[r]^this.multiplication32(this.unsigned32(this.mt[r-1]^this.mt[r-1]>>>30),1566083941)),r),this.mt[r]=this.unsigned32(4294967295&this.mt[r]),r++,r>=this.N&&(this.mt[0]=this.mt[this.N-1],r=1);this.mt[0]=2147483648}mag01=[0,this.MATRIX_A];genrandInt32(){let e;if(this.mti>=this.N){let t;for(this.mti===this.N+1&&this.initGenrand(5489),t=0;t>>1^this.mag01[1&e]);for(;t>>1^this.mag01[1&e]);e=this.unsigned32(this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK),this.mt[this.N-1]=this.unsigned32(this.mt[this.M-1]^e>>>1^this.mag01[1&e]),this.mti=0}return e=this.mt[this.mti++],e=this.unsigned32(e^e>>>11),e=this.unsigned32(e^e<<7&2636928640),e=this.unsigned32(e^e<<15&4022730752),e=this.unsigned32(e^e>>>18),e}genrandInt31(){return this.genrandInt32()>>>1}genrandReal1(){return this.genrandInt32()*(1/4294967295)}genrandReal2(){return this.genrandInt32()*(1/4294967296)}genrandReal3(){return(this.genrandInt32()+.5)*(1/4294967296)}genrandRes53(){return(67108864*(this.genrandInt32()>>>5)+(this.genrandInt32()>>>6))*(1/9007199254740992)}};function Kw(){let e=new Ow;return e.initGenrand(Math.ceil(Math.random()*Number.MAX_SAFE_INTEGER)),{next:()=>e.genrandRes53(),seed(t){"number"==typeof t?e.initGenrand(t):Array.isArray(t)&&e.initByArray(t,t.length)}}}var Jw=class extends Cw{boolean(e={}){"number"==typeof e&&(e={probability:e});let{probability:t=.5}=e;return!(t<=0)&&(t>=1||this.faker.number.float(){throw new ww("You cannot edit the locale data on the faker instance")};function jw(e){let t={};return new Proxy(e,{has:()=>!0,get:(e,r)=>"symbol"==typeof r||"nodeType"===r?e[r]:r in t?t[r]:t[r]=function(e,t={}){return new Proxy(t,{has:(e,t)=>null!=e[t],get(t,r){let a=t[r];return"symbol"==typeof r||"nodeType"===r||Yw(a,e,r.toString()),a},set:Vw,deleteProperty:Vw})}(r,e[r]),set:Vw,deleteProperty:Vw})}function Yw(e,...t){if(null===e)throw new ww(`The locale data for '${t.join(".")}' aren't applicable to this locale.\n If you think this is a bug, please report it at: https://github.com/faker-js/faker`);if(void 0===e)throw new ww(`The locale data for '${t.join(".")}' are missing in this locale.\n Please contribute the missing data to the project or use a locale/Faker instance that has these data.\n For more information see https://fakerjs.dev/guide/localization.html`)}function $w(e,t="refDate"){let r=new Date(e);if(Number.isNaN(r.valueOf()))throw new ww(`Invalid ${t} date: ${e.toString()}`);return r}var Uw=class extends Cw{anytime(e={}){let{refDate:t=this.faker.defaultRefDate()}=e,r=$w(t).getTime();return this.between({from:r-31536e6,to:r+31536e6})}past(e={}){let{years:t=1,refDate:r=this.faker.defaultRefDate()}=e;if(t<=0)throw new ww("Years must be greater than 0.");let a=$w(r).getTime();return this.between({from:a-365*t*24*3600*1e3,to:a-1e3})}future(e={}){let{years:t=1,refDate:r=this.faker.defaultRefDate()}=e;if(t<=0)throw new ww("Years must be greater than 0.");let a=$w(r).getTime();return this.between({from:a+1e3,to:a+365*t*24*3600*1e3})}between(e){if(null==e||null==e.from||null==e.to)throw new ww("Must pass an options object with `from` and `to` values.");let{from:t,to:r}=e,a=$w(t,"from").getTime(),i=$w(r,"to").getTime();if(a>i)throw new ww("`from` date must be before `to` date.");return new Date(this.faker.number.int({min:a,max:i}))}betweens(e){if(null==e||null==e.from||null==e.to)throw new ww("Must pass an options object with `from` and `to` values.");let{from:t,to:r,count:a=3}=e;return this.faker.helpers.multiple((()=>this.between({from:t,to:r})),{count:a}).sort(((e,t)=>e.getTime()-t.getTime()))}recent(e={}){let{days:t=1,refDate:r=this.faker.defaultRefDate()}=e;if(t<=0)throw new ww("Days must be greater than 0.");let a=$w(r).getTime();return this.between({from:a-24*t*3600*1e3,to:a-1e3})}soon(e={}){let{days:t=1,refDate:r=this.faker.defaultRefDate()}=e;if(t<=0)throw new ww("Days must be greater than 0.");let a=$w(r).getTime();return this.between({from:a+1e3,to:a+24*t*3600*1e3})}birthdate(e={}){let{mode:t="age",min:r=18,max:a=80,refDate:i=this.faker.defaultRefDate(),mode:n,min:o,max:c}=e;if([o,c,n].filter((e=>null!=e)).length%3!=0)throw new ww("The 'min', 'max', and 'mode' options must be set together.");let l=$w(i),s=l.getUTCFullYear();switch(t){case"age":{let e=new Date(l).setUTCFullYear(s-a-1)+864e5,t=new Date(l).setUTCFullYear(s-r);if(e>t)throw new ww(`Max age ${a} should be greater than or equal to min age ${r}.`);return this.between({from:e,to:t})}case"year":{let e=new Date(Date.UTC(0,0,2)).setUTCFullYear(r),t=new Date(Date.UTC(0,11,30)).setUTCFullYear(a);if(e>t)throw new ww(`Max year ${a} should be greater than or equal to min year ${r}.`);return this.between({from:e,to:t})}}}},qw=class extends Uw{constructor(e){super(e),this.faker=e}month(e={}){let t,{abbreviated:r=!1,context:a=!1}=e,i=this.faker.definitions.date.month;t=r?a&&null!=i.abbr_context?"abbr_context":"abbr":a&&null!=i.wide_context?"wide_context":"wide";let n=i[t];return Yw(n,"date.month",t),this.faker.helpers.arrayElement(n)}weekday(e={}){let t,{abbreviated:r=!1,context:a=!1}=e,i=this.faker.definitions.date.weekday;t=r?a&&null!=i.abbr_context?"abbr_context":"abbr":a&&null!=i.wide_context?"wide_context":"wide";let n=i[t];return Yw(n,"date.weekday",t),this.faker.helpers.arrayElement(n)}timeZone(){return this.faker.helpers.arrayElement(this.faker.definitions.date.time_zone)}},Zw=/\.|\(/;function Qw(e,t,r){let[a,i]=function(e){let t=e.indexOf(")",1);if(-1===t)throw new ww(`Missing closing parenthesis in '${e}'`);for(;-1!==t;){let r=e.substring(1,t);try{return[t,JSON.parse(`[${r}]`)]}catch{if(!r.includes("'")&&!r.includes('"'))try{return[t,JSON.parse(`["${r}"]`)]}catch{}}t=e.indexOf(")",t+1)}t=e.lastIndexOf(")");let r=e.substring(1,t);return[t,[r]]}(e),n=e[a+1];switch(n){case".":case"(":case void 0:break;default:throw new ww(`Expected dot ('.'), open parenthesis ('('), or nothing after function call but got '${n}'`)}return[a+("."===n?2:1),t.map((t=>"function"==typeof t?t(...i):(console.warn(`[@faker-js/faker]: Invoking expressions which are not functions is deprecated since v9.0 and will be removed in v10.0.\nPlease remove the parentheses or replace the expression with an actual function.\n${r}\n${" ".repeat(r.length-e.length)}^`),t)))]}function Xw(e,t){let r=Zw.exec(e),a="."===(r?.[0]??""),i=r?.index??e.length,n=e.substring(0,i);if(0===n.length)throw new ww(`Expression parts cannot be empty in '${e}'`);let o=e[i+1];if(a&&(null==o||"."===o||"("===o))throw new ww(`Found dot without property name in '${e}'`);return[i+(a?1:0),t.map((e=>function(e,t){switch(typeof e){case"function":try{e=e()}catch{return}return e?.[t];case"object":return e?.[t];default:return}}(e,n)))]}function eC(e){let t=function(e){e=e.replaceAll(/[\s-]/g,"");let t=0,r=!1;for(let a=e.length-1;a>=0;a--){let i=Number.parseInt(e[a]);r&&(i*=2,i>9&&(i=i%10+1)),t+=i,r=!r}return t%10}(e.replace(/L?$/,"0"));return 0===t?0:10-t}function tC(e,t,r,a){let i=1;if(t)switch(t){case"?":i=e.datatype.boolean()?0:1;break;case"*":{let t=1;for(;e.datatype.boolean();)t*=2;i=e.number.int({min:0,max:t});break}case"+":{let t=1;for(;e.datatype.boolean();)t*=2;i=e.number.int({min:1,max:t});break}default:throw new ww("Unknown quantifier symbol provided.")}else null!=r&&null!=a?i=e.number.int({min:Number.parseInt(r),max:Number.parseInt(a)}):null!=r&&null==a&&(i=Number.parseInt(r));return i}function rC(e,t="",r="#"){let a="";for(let i=0;ia&&(i=a,a=r,r=i),n=e.number.int({min:r,max:a}),t=t.slice(0,s.index)+s[1].repeat(n)+t.slice(s.index+s[0].length),s=o.exec(t);for(s=c.exec(t);null!=s;)n=Number.parseInt(s[2]),t=t.slice(0,s.index)+s[1].repeat(n)+t.slice(s.index+s[0].length),s=c.exec(t);for(s=l.exec(t);null!=s;)r=Number.parseInt(s[1]),a=Number.parseInt(s[2]),r>a&&(i=a,a=r,r=i),t=t.slice(0,s.index)+e.number.int({min:r,max:a}).toString()+t.slice(s.index+s[0].length),s=l.exec(t);return t}(this.faker,e);let r=eC(e=rC(this.faker,e,t));return e.replace("L",String(r))}fromRegExp(e){let t=!1;e instanceof RegExp&&(t=e.flags.includes("i"),e=e.toString(),e=/\/(.+?)\//.exec(e)?.[1]??"");let r,a,i,n=/([.A-Za-z0-9])(?:\{(\d+)(?:,(\d+)|)\}|(\?|\*|\+))(?![^[]*]|[^{]*})/,o=n.exec(e);for(;null!=o;){let t=o[2],r=o[3],a=o[4];i=tC(this.faker,a,t,r),e=e.slice(0,o.index)+o[1].repeat(i)+e.slice(o.index+o[0].length),o=n.exec(e)}let c=/(\d-\d|\w-\w|\d|\w|[-!@#$&()`.+,/"])/,l=/\[(\^|)(-|)(.+?)\](?:\{(\d+)(?:,(\d+)|)\}|(\?|\*|\+)|)/;for(o=l.exec(e);null!=o;){let n="^"===o[1],s="-"===o[2],u=o[4],h=o[5],d=o[6],p=[],y=o[3],f=c.exec(y);for(s&&p.push(45);null!=f;){if(f[0].includes("-")){let e=f[0].split("-").map((e=>e.codePointAt(0)??Number.NaN));if(r=e[0],a=e[1],r>a)throw new ww("Character range provided is out of order.");for(let e=r;e<=a;e++)if(t&&Number.isNaN(Number(String.fromCodePoint(e)))){let t=String.fromCodePoint(e);p.push(t.toUpperCase().codePointAt(0)??Number.NaN,t.toLowerCase().codePointAt(0)??Number.NaN)}else p.push(e)}else t&&Number.isNaN(Number(f[0]))?p.push(f[0].toUpperCase().codePointAt(0)??Number.NaN,f[0].toLowerCase().codePointAt(0)??Number.NaN):p.push(f[0].codePointAt(0)??Number.NaN);y=y.substring(f[0].length),f=c.exec(y)}if(i=tC(this.faker,d,u,h),n){let e=-1;for(let t=48;t<=57;t++)e=p.indexOf(t),e>-1?p.splice(e,1):p.push(t);for(let t=65;t<=90;t++)e=p.indexOf(t),e>-1?p.splice(e,1):p.push(t);for(let t=97;t<=122;t++)e=p.indexOf(t),e>-1?p.splice(e,1):p.push(t)}let m=this.multiple((()=>String.fromCodePoint(this.arrayElement(p))),{count:i}).join("");e=e.slice(0,o.index)+m+e.slice(o.index+o[0].length),o=l.exec(e)}let s=/(.)\{(\d+),(\d+)\}/;for(o=s.exec(e);null!=o;){if(r=Number.parseInt(o[2]),a=Number.parseInt(o[3]),r>a)throw new ww("Numbers out of order in {} quantifier.");i=this.faker.number.int({min:r,max:a}),e=e.slice(0,o.index)+o[1].repeat(i)+e.slice(o.index+o[0].length),o=s.exec(e)}let u=/(.)\{(\d+)\}/;for(o=u.exec(e);null!=o;)i=Number.parseInt(o[2]),e=e.slice(0,o.index)+o[1].repeat(i)+e.slice(o.index+o[0].length),o=u.exec(e);return e}shuffle(e,t={}){let{inplace:r=!1}=t;r||(e=[...e]);for(let t=e.length-1;t>0;--t){let r=this.faker.number.int(t);[e[t],e[r]]=[e[r],e[t]]}return e}uniqueArray(e,t){if(Array.isArray(e)){let r=[...new Set(e)];return this.shuffle(r).splice(0,t)}let r=new Set;try{if("function"==typeof e){let a=1e3*t,i=0;for(;r.size1?this.faker.number.int({max:e.length-1}):0]}weightedArrayElement(e){if(0===e.length)throw new ww("weightedArrayElement expects an array with at least one element");if(!e.every((e=>e.weight>0)))throw new ww("weightedArrayElement expects an array of { weight, value } objects where weight is a positive number");let t=e.reduce(((e,{weight:t})=>e+t),0),r=this.faker.number.float({min:0,max:t}),a=0;for(let{weight:t,value:i}of e)if(a+=t,r=e.length)return this.shuffle(e);if(r<=0)return[];let a,i,n=[...e],o=e.length,c=o-r;for(;o-- >c;)i=this.faker.number.int(o),a=n[i],n[i]=n[o],n[o]=a;return n.slice(c)}enumValue(e){let t=Object.keys(e).filter((e=>Number.isNaN(Number(e))));return e[this.arrayElement(t)]}rangeToNumber(e){return"number"==typeof e?e:this.faker.number.int(e)}multiple(e,t={}){let r=this.rangeToNumber(t.count??3);return r<=0?[]:Array.from({length:r},e)}},iC=class extends aC{constructor(e){super(e),this.faker=e}fake(e){let t=(e="string"==typeof e?e:this.arrayElement(e)).search(/{{[a-z]/),r=e.indexOf("}}",t);if(-1===t||-1===r)return e;let a=function(e,t,r=[t,t.rawDefinitions]){if(0===e.length)throw new ww("Eval expression cannot be empty.");if(0===r.length)throw new ww("Eval entrypoints cannot be empty.");let a=r,i=e;do{let r;i.startsWith("(")?[r,a]=Qw(i,a,e):[r,a]=Xw(i,a),i=i.substring(r),a=a.filter((e=>null!=e)).map((e=>Array.isArray(e)?t.helpers.arrayElement(e):e))}while(i.length>0&&a.length>0);if(0===a.length)throw new ww(`Cannot resolve expression '${e}'`);let n=a[0];return"function"==typeof n?n():n}(e.substring(t+2,r+2).replace("}}","").replace("{{",""),this.faker),i=String(a),n=e.substring(0,t)+i+e.substring(r+2);return this.fake(n)}},nC=class extends Cw{int(e={}){"number"==typeof e&&(e={max:e});let{min:t=0,max:r=Number.MAX_SAFE_INTEGER,multipleOf:a=1}=e;if(!Number.isInteger(a))throw new ww("multipleOf should be an integer.");if(a<=0)throw new ww("multipleOf should be greater than 0.");let i=Math.ceil(t/a),n=Math.floor(r/a);if(i===n)return i*a;if(n=t?`No suitable integer value between ${t} and ${r} found.`:`Max ${r} should be greater than min ${t}.`);let o=this.faker._randomizer.next(),c=n-i+1;return Math.floor(o*c+i)*a}float(e={}){"number"==typeof e&&(e={max:e});let{min:t=0,max:r=1,fractionDigits:a,multipleOf:i,multipleOf:n=(null==a?void 0:10**-a)}=e;if(r===t)return t;if(rthis.faker.helpers.arrayElement(e)),{count:t}).join("")}alpha(e={}){"number"==typeof e&&(e={length:e});let t=this.faker.helpers.rangeToNumber(e.length??1);if(t<=0)return"";let r,{casing:a="mixed"}=e,{exclude:i=[]}=e;switch("string"==typeof i&&(i=[...i]),a){case"upper":r=[...oC];break;case"lower":r=[...cC];break;case"mixed":r=[...cC,...oC]}return r=r.filter((e=>!i.includes(e))),this.fromCharacters(r,t)}alphanumeric(e={}){"number"==typeof e&&(e={length:e});let t=this.faker.helpers.rangeToNumber(e.length??1);if(t<=0)return"";let{casing:r="mixed"}=e,{exclude:a=[]}=e;"string"==typeof a&&(a=[...a]);let i=[...lC];switch(r){case"upper":i.push(...oC);break;case"lower":i.push(...cC);break;case"mixed":i.push(...cC,...oC)}return i=i.filter((e=>!a.includes(e))),this.fromCharacters(i,t)}binary(e={}){let{prefix:t="0b"}=e,r=t;return r+=this.fromCharacters(["0","1"],e.length??1),r}octal(e={}){let{prefix:t="0o"}=e,r=t;return r+=this.fromCharacters(["0","1","2","3","4","5","6","7"],e.length??1),r}hexadecimal(e={}){let{casing:t="mixed",prefix:r="0x"}=e,a=this.faker.helpers.rangeToNumber(e.length??1);if(a<=0)return r;let i=this.fromCharacters(["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f","A","B","C","D","E","F"],a);return"upper"===t?i=i.toUpperCase():"lower"===t&&(i=i.toLowerCase()),`${r}${i}`}numeric(e={}){"number"==typeof e&&(e={length:e});let t=this.faker.helpers.rangeToNumber(e.length??1);if(t<=0)return"";let{allowLeadingZeros:r=!0}=e,{exclude:a=[]}=e;"string"==typeof a&&(a=[...a]);let i=lC.filter((e=>!a.includes(e)));if(0===i.length||1===i.length&&!r&&"0"===i[0])throw new ww("Unable to generate numeric string, because all possible digits are excluded.");let n="";return!r&&!a.includes("0")&&(n+=this.faker.helpers.arrayElement(i.filter((e=>"0"!==e)))),n+=this.fromCharacters(i,t-n.length),n}sample(e=10){e=this.faker.helpers.rangeToNumber(e);let t={min:33,max:125},r="";for(;r.lengththis.faker.number.hex({min:0,max:15}))).replaceAll("y",(()=>this.faker.number.hex({min:8,max:11})))}nanoid(e=21){if((e=this.faker.helpers.rangeToNumber(e))<=0)return"";let t=[{value:()=>this.alphanumeric(1),weight:62},{value:()=>this.faker.helpers.arrayElement(["_","-"]),weight:2}],r="";for(;r.length","?","@","[","\\","]","^","_","`","{","|","}","~"],e)}},uC=class{_defaultRefDate=()=>new Date;get defaultRefDate(){return this._defaultRefDate}setDefaultRefDate(e=()=>new Date){this._defaultRefDate="function"==typeof e?e:()=>new Date(e)}_randomizer;datatype=new Jw(this);date=new Uw(this);helpers=new aC(this);number=new nC(this);string=new sC(this);constructor(e={}){let{randomizer:t=Kw()}=e;this._randomizer=t}seed(e=Math.ceil(Math.random()*Number.MAX_SAFE_INTEGER)){return this._randomizer.seed(e),e}};function hC(e){let t=`[@faker-js/faker]: ${e.deprecated} is deprecated`;e.since&&(t+=` since v${e.since}`),e.until&&(t+=` and will be removed in v${e.until}`),e.proposed&&(t+=`. Please use ${e.proposed} instead`),console.warn(`${t}.`)}new uC;var dC=class extends _w{dog(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.dog)}cat(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.cat)}snake(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.snake)}bear(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.bear)}lion(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.lion)}cetacean(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.cetacean)}horse(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.horse)}bird(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.bird)}cow(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.cow)}fish(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.fish)}crocodilia(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.crocodilia)}insect(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.insect)}rabbit(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.rabbit)}rodent(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.rodent)}type(){return this.faker.helpers.arrayElement(this.faker.definitions.animal.type)}},pC={0:[[1999999,2],[2279999,3],[2289999,4],[3689999,3],[3699999,4],[6389999,3],[6397999,4],[6399999,7],[6449999,3],[6459999,7],[6479999,3],[6489999,7],[6549999,3],[6559999,4],[6999999,3],[8499999,4],[8999999,5],[9499999,6],[9999999,7]],1:[[99999,3],[299999,2],[349999,3],[399999,4],[499999,3],[699999,2],[999999,4],[3979999,3],[5499999,4],[6499999,5],[6799999,4],[6859999,5],[7139999,4],[7169999,3],[7319999,4],[7399999,7],[7749999,5],[7753999,7],[7763999,5],[7764999,7],[7769999,5],[7782999,7],[7899999,5],[7999999,4],[8004999,5],[8049999,5],[8379999,5],[8384999,7],[8671999,5],[8675999,4],[8697999,5],[9159999,6],[9165059,7],[9168699,6],[9169079,7],[9195999,6],[9196549,7],[9729999,6],[9877999,4],[9911499,6],[9911999,7],[9989899,6],[9999999,7]]},yC=class extends _w{department(){return this.faker.helpers.arrayElement(this.faker.definitions.commerce.department)}productName(){return`${this.productAdjective()} ${this.productMaterial()} ${this.product()}`}price(e={}){let{dec:t=2,max:r=1e3,min:a=1,symbol:i=""}=e;if(a<0||r<0)return`${i}0`;if(a===r)return`${i}${a.toFixed(t)}`;let n=this.faker.number.float({min:a,max:r,fractionDigits:t});if(0===t)return`${i}${n.toFixed(t)}`;let o=.1**t,c=n-n*10**t%10*o+this.faker.helpers.weightedArrayElement([{weight:5,value:9},{weight:3,value:5},{weight:1,value:0},{weight:1,value:this.faker.number.int({min:0,max:9})}])*o;return a<=c&&c<=r?`${i}${c.toFixed(t)}`:`${i}${n.toFixed(t)}`}productAdjective(){return this.faker.helpers.arrayElement(this.faker.definitions.commerce.product_name.adjective)}productMaterial(){return this.faker.helpers.arrayElement(this.faker.definitions.commerce.product_name.material)}product(){return this.faker.helpers.arrayElement(this.faker.definitions.commerce.product_name.product)}productDescription(){return this.faker.helpers.arrayElement(this.faker.definitions.commerce.product_description)}isbn(e={}){"number"==typeof e&&(e={variant:e});let{variant:t=13,separator:r="-"}=e,[a,i]=this.faker.helpers.objectEntry(pC),n=this.faker.string.numeric(8),o=Number.parseInt(n.slice(0,-1)),c=i.find((([e])=>o<=e))?.[1];if(!c)throw new ww(`Unable to find a registrant length for the group ${a}`);let l=["978",a,n.slice(0,c),n.slice(c)];10===t&&l.shift();let s=l.join(""),u=0;for(let e=0;e{let t=0;for(let r of e)t=(10*t+ +r)%97;return t},pattern10:["01","02","03","04","05","06","07","08","09"],pattern100:["001","002","003","004","005","006","007","008","009"],toDigitString:e=>e.replaceAll(/[A-Z]/gi,(e=>String((e.toUpperCase().codePointAt(0)??Number.NaN)-55)))},bC=gC;var vC=class extends _w{accountNumber(e={}){"number"==typeof e&&(e={length:e});let{length:t=8}=e;return this.faker.string.numeric({length:t,allowLeadingZeros:!0})}accountName(){return[this.faker.helpers.arrayElement(this.faker.definitions.finance.account_type),"Account"].join(" ")}routingNumber(){let e=this.faker.string.numeric({length:8,allowLeadingZeros:!0}),t=0;for(let r=0;re.country===t)):this.faker.helpers.arrayElement(bC.formats);if(!a)throw new ww(`Country code ${t} not supported.`);let i="",n=0;for(let e of a.bban){let t=e.count;for(n+=e.count;t>0;)"a"===e.type?i+=this.faker.helpers.arrayElement(bC.alpha):"c"===e.type?this.faker.datatype.boolean(.8)?i+=this.faker.number.int(9):i+=this.faker.helpers.arrayElement(bC.alpha):t>=3&&this.faker.datatype.boolean(.3)?this.faker.datatype.boolean()?(i+=this.faker.helpers.arrayElement(bC.pattern100),t-=2):(i+=this.faker.helpers.arrayElement(bC.pattern10),t--):i+=this.faker.number.int(9),t--;i=i.substring(0,n)}let o=98-bC.mod97(bC.toDigitString(`${i}${a.country}00`));o<10&&(o=`0${o}`);let c=`${a.country}${o}${i}`;return r?function(e){let t="";for(let r=0;re.split(" ").map((e=>e.charAt(0).toUpperCase()+e.slice(1))).join(" ");return this.faker.datatype.boolean()?e(this.faker.helpers.fake(this.faker.definitions.food.dish_pattern)):e(this.faker.helpers.arrayElement(this.faker.definitions.food.dish))}ethnicCategory(){return this.faker.helpers.arrayElement(this.faker.definitions.food.ethnic_category)}fruit(){return this.faker.helpers.arrayElement(this.faker.definitions.food.fruit)}ingredient(){return this.faker.helpers.arrayElement(this.faker.definitions.food.ingredient)}meat(){return this.faker.helpers.arrayElement(this.faker.definitions.food.meat)}spice(){return this.faker.helpers.arrayElement(this.faker.definitions.food.spice)}vegetable(){return this.faker.helpers.arrayElement(this.faker.definitions.food.vegetable)}},kC=class extends _w{branch(){return`${this.faker.hacker.noun().replace(" ","-")}-${this.faker.hacker.verb().replace(" ","-")}`}commitEntry(e={}){let{merge:t=this.faker.datatype.boolean({probability:.2}),eol:r="CRLF",refDate:a}=e,i=[`commit ${this.faker.git.commitSha()}`];t&&i.push(`Merge: ${this.commitSha({length:7})} ${this.commitSha({length:7})}`);let n=this.faker.person.firstName(),o=this.faker.person.lastName(),c=this.faker.person.fullName({firstName:n,lastName:o}),l=this.faker.internet.userName({firstName:n,lastName:o}),s=this.faker.helpers.arrayElement([c,l]),u=this.faker.internet.email({firstName:n,lastName:o});s=s.replaceAll(/^[.,:;"\\']|[<>\n]|[.,:;"\\']$/g,""),i.push(`Author: ${s} <${u}>`,`Date: ${this.commitDate({refDate:a})}`,"",`${" ".repeat(4)}${this.commitMessage()}`,"");let h="CRLF"===r?"\r\n":"\n";return i.join(h)}commitMessage(){return`${this.faker.hacker.verb()} ${this.faker.hacker.adjective()} ${this.faker.hacker.noun()}`}commitDate(e={}){let{refDate:t=this.faker.defaultRefDate()}=e,r=this.faker.date.recent({days:1,refDate:t}),a=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"][r.getUTCDay()],i=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"][r.getUTCMonth()],n=r.getUTCDate(),o=r.getUTCHours().toString().padStart(2,"0"),c=r.getUTCMinutes().toString().padStart(2,"0"),l=r.getUTCSeconds().toString().padStart(2,"0"),s=r.getUTCFullYear(),u=this.faker.number.int({min:-11,max:12});return`${a} ${i} ${n} ${o}:${c}:${l} ${s} ${u>=0?"+":"-"}${Math.abs(u).toString().padStart(2,"0")}00`}commitSha(e={}){let{length:t=40}=e;return this.faker.string.hexadecimal({length:t,casing:"lower",prefix:""})}},wC=class extends _w{abbreviation(){return this.faker.helpers.arrayElement(this.faker.definitions.hacker.abbreviation)}adjective(){return this.faker.helpers.arrayElement(this.faker.definitions.hacker.adjective)}noun(){return this.faker.helpers.arrayElement(this.faker.definitions.hacker.noun)}verb(){return this.faker.helpers.arrayElement(this.faker.definitions.hacker.verb)}ingverb(){return this.faker.helpers.arrayElement(this.faker.definitions.hacker.ingverb)}phrase(){let e={abbreviation:this.abbreviation,adjective:this.adjective,ingverb:this.ingverb,noun:this.noun,verb:this.verb},t=this.faker.helpers.arrayElement(this.faker.definitions.hacker.phrase);return this.faker.helpers.mustache(t,e)}},CC=typeof Buffer>"u"?e=>{let t=(new TextEncoder).encode(e),r=Array.from(t,(e=>String.fromCodePoint(e))).join("");return btoa(r)}:e=>Buffer.from(e).toString("base64"),_C=class extends _w{avatar(){return this.avatarGitHub()}avatarGitHub(){return`https://avatars.githubusercontent.com/u/${this.faker.number.int(1e8)}`}avatarLegacy(){return hC({deprecated:"faker.image.avatarLegacy()",proposed:"faker.image.avatar()",since:"9.0.2",until:"10.0.0"}),`https://cloudflare-ipfs.com/ipfs/Qmd3W5DuhgHirLHGVixi6V76LhCkZUz6pnFt5AJBiyvHye/avatar/${this.faker.number.int(1249)}.jpg`}url(e={}){let{width:t=this.faker.number.int({min:1,max:3999}),height:r=this.faker.number.int({min:1,max:3999})}=e;return this.faker.helpers.arrayElement([this.urlLoremFlickr,({width:e,height:t})=>this.urlPicsumPhotos({width:e,height:t,grayscale:!1,blur:0})])({width:t,height:r})}urlLoremFlickr(e={}){let{width:t=this.faker.number.int({min:1,max:3999}),height:r=this.faker.number.int({min:1,max:3999}),category:a}=e;return`https://loremflickr.com/${t}/${r}${null==a?"":`/${a}`}?lock=${this.faker.number.int()}`}urlPicsumPhotos(e={}){let{width:t=this.faker.number.int({min:1,max:3999}),height:r=this.faker.number.int({min:1,max:3999}),grayscale:a=this.faker.datatype.boolean(),blur:i=this.faker.number.int({max:10})}=e,n=`https://picsum.photos/seed/${this.faker.string.alphanumeric({length:{min:5,max:10}})}/${t}/${r}`,o="number"==typeof i&&i>=1&&i<=10;return(a||o)&&(n+="?",a&&(n+="grayscale"),a&&o&&(n+="&"),o&&(n+=`blur=${i}`)),n}urlPlaceholder(e={}){let{width:t=this.faker.number.int({min:1,max:3999}),height:r=this.faker.number.int({min:1,max:3999}),backgroundColor:a=this.faker.color.rgb({format:"hex",prefix:""}),textColor:i=this.faker.color.rgb({format:"hex",prefix:""}),format:n=this.faker.helpers.arrayElement(["gif","jpeg","jpg","png","webp"]),text:o=this.faker.lorem.words()}=e,c="https://via.placeholder.com";return c+=`/${t}`,c+=`x${r}`,c+=`/${a}`,c+=`/${i}`,c+=`.${n}`,c+=`?text=${encodeURIComponent(o)}`,c}dataUri(e={}){let{width:t=this.faker.number.int({min:1,max:3999}),height:r=this.faker.number.int({min:1,max:3999}),color:a=this.faker.color.rgb(),type:i=this.faker.helpers.arrayElements(["svg-uri","svg-base64"])}=e,n=`${t}x${r}`;return"svg-uri"===i?`data:image/svg+xml;charset=UTF-8,${encodeURIComponent(n)}`:`data:image/svg+xml;base64,${CC(n)}`}},SC=Object.fromEntries([["А","A"],["а","a"],["Б","B"],["б","b"],["В","V"],["в","v"],["Г","G"],["г","g"],["Д","D"],["д","d"],["ъе","ye"],["Ъе","Ye"],["ъЕ","yE"],["ЪЕ","YE"],["Е","E"],["е","e"],["Ё","Yo"],["ё","yo"],["Ж","Zh"],["ж","zh"],["З","Z"],["з","z"],["И","I"],["и","i"],["ый","iy"],["Ый","Iy"],["ЫЙ","IY"],["ыЙ","iY"],["Й","Y"],["й","y"],["К","K"],["к","k"],["Л","L"],["л","l"],["М","M"],["м","m"],["Н","N"],["н","n"],["О","O"],["о","o"],["П","P"],["п","p"],["Р","R"],["р","r"],["С","S"],["с","s"],["Т","T"],["т","t"],["У","U"],["у","u"],["Ф","F"],["ф","f"],["Х","Kh"],["х","kh"],["Ц","Ts"],["ц","ts"],["Ч","Ch"],["ч","ch"],["Ш","Sh"],["ш","sh"],["Щ","Sch"],["щ","sch"],["Ъ",""],["ъ",""],["Ы","Y"],["ы","y"],["Ь",""],["ь",""],["Э","E"],["э","e"],["Ю","Yu"],["ю","yu"],["Я","Ya"],["я","ya"]]),AC=Object.fromEntries([["α","a"],["β","v"],["γ","g"],["δ","d"],["ε","e"],["ζ","z"],["η","i"],["θ","th"],["ι","i"],["κ","k"],["λ","l"],["μ","m"],["ν","n"],["ξ","ks"],["ο","o"],["π","p"],["ρ","r"],["σ","s"],["τ","t"],["υ","y"],["φ","f"],["χ","x"],["ψ","ps"],["ω","o"],["ά","a"],["έ","e"],["ί","i"],["ό","o"],["ύ","y"],["ή","i"],["ώ","o"],["ς","s"],["ϊ","i"],["ΰ","y"],["ϋ","y"],["ΐ","i"],["Α","A"],["Β","B"],["Γ","G"],["Δ","D"],["Ε","E"],["Ζ","Z"],["Η","I"],["Θ","TH"],["Ι","I"],["Κ","K"],["Λ","L"],["Μ","M"],["Ν","N"],["Ξ","KS"],["Ο","O"],["Π","P"],["Ρ","R"],["Σ","S"],["Τ","T"],["Υ","Y"],["Φ","F"],["Χ","X"],["Ψ","PS"],["Ω","O"],["Ά","A"],["Έ","E"],["Ί","I"],["Ό","O"],["Ύ","Y"],["Ή","I"],["Ώ","O"],["Ϊ","I"],["Ϋ","Y"]]),MC=Object.fromEntries([["ء","e"],["آ","a"],["أ","a"],["ؤ","w"],["إ","i"],["ئ","y"],["ا","a"],["ب","b"],["ة","t"],["ت","t"],["ث","th"],["ج","j"],["ح","h"],["خ","kh"],["د","d"],["ذ","dh"],["ر","r"],["ز","z"],["س","s"],["ش","sh"],["ص","s"],["ض","d"],["ط","t"],["ظ","z"],["ع","e"],["غ","gh"],["ـ","_"],["ف","f"],["ق","q"],["ك","k"],["ل","l"],["م","m"],["ن","n"],["ه","h"],["و","w"],["ى","a"],["ي","y"],["َ‎","a"],["ُ","u"],["ِ‎","i"]]),TC=Object.fromEntries([["ա","a"],["Ա","A"],["բ","b"],["Բ","B"],["գ","g"],["Գ","G"],["դ","d"],["Դ","D"],["ե","ye"],["Ե","Ye"],["զ","z"],["Զ","Z"],["է","e"],["Է","E"],["ը","y"],["Ը","Y"],["թ","t"],["Թ","T"],["ժ","zh"],["Ժ","Zh"],["ի","i"],["Ի","I"],["լ","l"],["Լ","L"],["խ","kh"],["Խ","Kh"],["ծ","ts"],["Ծ","Ts"],["կ","k"],["Կ","K"],["հ","h"],["Հ","H"],["ձ","dz"],["Ձ","Dz"],["ղ","gh"],["Ղ","Gh"],["ճ","tch"],["Ճ","Tch"],["մ","m"],["Մ","M"],["յ","y"],["Յ","Y"],["ն","n"],["Ն","N"],["շ","sh"],["Շ","Sh"],["ո","vo"],["Ո","Vo"],["չ","ch"],["Չ","Ch"],["պ","p"],["Պ","P"],["ջ","j"],["Ջ","J"],["ռ","r"],["Ռ","R"],["ս","s"],["Ս","S"],["վ","v"],["Վ","V"],["տ","t"],["Տ","T"],["ր","r"],["Ր","R"],["ց","c"],["Ց","C"],["ու","u"],["ՈՒ","U"],["Ու","U"],["փ","p"],["Փ","P"],["ք","q"],["Ք","Q"],["օ","o"],["Օ","O"],["ֆ","f"],["Ֆ","F"],["և","yev"]]),BC={...SC,...AC,...MC,...Object.fromEntries([["چ","ch"],["ک","k"],["گ","g"],["پ","p"],["ژ","zh"],["ی","y"]]),...TC,...Object.fromEntries([["א","a"],["ב","b"],["ג","g"],["ד","d"],["ה","h"],["ו","v"],["ז","z"],["ח","ch"],["ט","t"],["י","y"],["כ","k"],["ך","kh"],["ל","l"],["ם","m"],["מ","m"],["ן","n"],["נ","n"],["ס","s"],["ע","a"],["פ","f"],["ף","ph"],["צ","ts"],["ץ","ts"],["ק","k"],["ר","r"],["ש","sh"],["ת","t"],["ו","v"]])};function LC(e){let t=()=>e.helpers.arrayElement(["AB","AF","AN","AR","AS","AZ","BE","BG","BN","BO","BR","BS","CA","CE","CO","CS","CU","CY","DA","DE","EL","EN","EO","ES","ET","EU","FA","FI","FJ","FO","FR","FY","GA","GD","GL","GV","HE","HI","HR","HT","HU","HY","ID","IS","IT","JA","JV","KA","KG","KO","KU","KW","KY","LA","LB","LI","LN","LT","LV","MG","MK","MN","MO","MS","MT","MY","NB","NE","NL","NN","NO","OC","PL","PT","RM","RO","RU","SC","SE","SK","SL","SO","SQ","SR","SV","SW","TK","TR","TY","UK","UR","UZ","VI","VO","YI","ZH"]),r=t=>e.helpers.arrayElement({lin:["i686","x86_64"],mac:["Intel","PPC","U; Intel","U; PPC"],win:["","WOW64","Win64; x64"]}[t]),a={net:()=>[e.number.int({min:1,max:4}),e.number.int(9),e.number.int({min:1e4,max:99999}),e.number.int(9)].join("."),nt:()=>[e.number.int({min:5,max:6}),e.number.int(3)].join("."),ie:()=>e.number.int({min:7,max:11}),trident:()=>[e.number.int({min:3,max:7}),e.number.int(1)].join("."),osx:t=>[10,e.number.int({min:5,max:10}),e.number.int(9)].join(t||"."),chrome:()=>[e.number.int({min:13,max:39}),0,e.number.int({min:800,max:899}),0].join("."),presto:()=>`2.9.${e.number.int({min:160,max:190})}`,presto2:()=>`${e.number.int({min:10,max:12})}.00`,safari:()=>[e.number.int({min:531,max:538}),e.number.int(2),e.number.int(2)].join(".")},i={firefox(t){let i=`${e.number.int({min:5,max:15})}${(t=>{let r="";for(let a=0;a=11?`Mozilla/5.0 (Windows NT 6.${e.number.int({min:1,max:3})}; Trident/7.0; ${e.datatype.boolean()?"Touch; ":""}rv:11.0) like Gecko`:`Mozilla/5.0 (compatible; MSIE ${t}.0; Windows NT ${a.nt()}; Trident/${a.trident()}${e.datatype.boolean()?`; .NET CLR ${a.net()}`:""})`},opera(i){let n=` Presto/${a.presto()} Version/${a.presto2()})`,o="win"===i?`(Windows NT ${a.nt()}; U; ${t()}${n}`:"lin"===i?`(X11; Linux ${r(i)}; U; ${t()}${n}`:`(Macintosh; Intel Mac OS X ${a.osx()} U; ${t()} Presto/${a.presto()} Version/${a.presto2()})`;return`Opera/${e.number.int({min:9,max:14})}.${e.number.int(99)} ${o}`},safari(i){let n=a.safari(),o=`${e.number.int({min:4,max:7})}.${e.number.int(1)}.${e.number.int(10)}`;return`Mozilla/5.0 ${"mac"===i?`(Macintosh; ${r("mac")} Mac OS X ${a.osx("_")} rv:${e.number.int({min:2,max:6})}.0; ${t()}) `:`(Windows; U; Windows NT ${a.nt()})`}AppleWebKit/${n} (KHTML, like Gecko) Version/${o} Safari/${n}`},chrome(e){let t=a.safari();return`Mozilla/5.0 ${"mac"===e?`(Macintosh; ${r("mac")} Mac OS X ${a.osx("_")}) `:"win"===e?`(Windows; U; Windows NT ${a.nt()})`:`(X11; Linux ${r(e)}`} AppleWebKit/${t} (KHTML, like Gecko) Chrome/${a.chrome()} Safari/${t}`}},[n,o]=(()=>{let t={chrome:["win","mac","lin"],firefox:["win","mac","lin"],opera:["win","mac","lin"],safari:["win","mac"],iexplorer:["win"]},r=e.helpers.objectKey(t);return[r,e.helpers.arrayElement(t[r])]})();return i[n](o)}var EC=class extends _w{email(e={}){let{firstName:t,lastName:r,provider:a=this.faker.helpers.arrayElement(this.faker.definitions.internet.free_email),allowSpecialCharacters:i=!1}=e,n=this.userName({firstName:t,lastName:r});if(n=n.replaceAll(/[^A-Za-z0-9._+-]+/g,""),n=n.substring(0,50),i){let e=[..."._-"],t=[...".!#$%&'*+-/=?^_`{|}~"];n=n.replace(this.faker.helpers.arrayElement(e),this.faker.helpers.arrayElement(t))}return n=n.replaceAll(/\.{2,}/g,"."),n=n.replace(/^\./,""),n=n.replace(/\.$/,""),`${n}@${a}`}exampleEmail(e={}){let{firstName:t,lastName:r,allowSpecialCharacters:a=!1}=e,i=this.faker.helpers.arrayElement(this.faker.definitions.internet.example_email);return this.email({firstName:t,lastName:r,provider:i,allowSpecialCharacters:a})}userName(e={}){let{firstName:t=this.faker.person.firstName(),lastName:r=this.faker.person.lastName(),lastName:a}=e,i=this.faker.helpers.arrayElement([".","_"]),n=this.faker.number.int(99),o=[()=>`${t}${i}${r}${n}`,()=>`${t}${i}${r}`];a||o.push((()=>`${t}${n}`));let c=this.faker.helpers.arrayElement(o)();return c=c.normalize("NFKD").replaceAll(/[\u0300-\u036F]/g,""),c=[...c].map((e=>{if(BC[e])return BC[e];let t=e.codePointAt(0)??Number.NaN;return t<128?e:t.toString(36)})).join(""),c=c.toString().replaceAll("'",""),c=c.replaceAll(" ",""),c}displayName(e={}){let{firstName:t=this.faker.person.firstName(),lastName:r=this.faker.person.lastName()}=e,a=this.faker.helpers.arrayElement([".","_"]),i=this.faker.number.int(99),n=[()=>`${t}${i}`,()=>`${t}${a}${r}`,()=>`${t}${a}${r}${i}`],o=this.faker.helpers.arrayElement(n)();return o=o.toString().replaceAll("'",""),o=o.replaceAll(" ",""),o}protocol(){return this.faker.helpers.arrayElement(["http","https"])}httpMethod(){return this.faker.helpers.arrayElement(["GET","POST","PUT","DELETE","PATCH"])}httpStatusCode(e={}){let{types:t=Object.keys(this.faker.definitions.internet.http_status_code)}=e,r=this.faker.helpers.arrayElement(t);return this.faker.helpers.arrayElement(this.faker.definitions.internet.http_status_code[r])}url(e={}){let{appendSlash:t=this.faker.datatype.boolean(),protocol:r="https"}=e;return`${r}://${this.domainName()}${t?"/":""}`}domainName(){return`${this.domainWord()}.${this.domainSuffix()}`}domainSuffix(){return this.faker.helpers.arrayElement(this.faker.definitions.internet.domain_suffix)}domainWord(){return this.faker.helpers.slugify(`${this.faker.word.adjective()}-${this.faker.word.noun()}`).toLowerCase()}ip(){return this.faker.datatype.boolean()?this.ipv4():this.ipv6()}ipv4(){return Array.from({length:4},(()=>this.faker.number.int(255))).join(".")}ipv6(){return Array.from({length:8},(()=>this.faker.string.hexadecimal({length:4,casing:"lower",prefix:""}))).join(":")}port(){return this.faker.number.int(65535)}userAgent(){return LC(this.faker)}color(e={}){let{redBase:t=0,greenBase:r=0,blueBase:a=0}=e,i=e=>Math.floor((this.faker.number.int(256)+e)/2).toString(16).padStart(2,"0");return`#${i(t)}${i(r)}${i(a)}`}mac(e={}){"string"==typeof e&&(e={separator:e});let t,{separator:r=":"}=e,a="";for([":","-",""].includes(r)||(r=":"),t=0;t<12;t++)a+=this.faker.number.hex(15),t%2==1&&11!==t&&(a+=r);return a}password(e={}){let t=/[aeiouAEIOU]$/,r=/[bcdfghjklmnpqrstvwxyzBCDFGHJKLMNPQRSTVWXYZ]$/,a=(e,i,n,o)=>{if(o.length>=e)return o;i&&(n=r.test(o)?t:r);let c=this.faker.number.int(94)+33,l=String.fromCodePoint(c);return i&&(l=l.toLowerCase()),n.test(l)?a(e,i,n,o+l):a(e,i,n,o)},{length:i=15,memorable:n=!1,pattern:o=/\w/,prefix:c=""}=e;return a(i,n,o,c)}emoji(e={}){let{types:t=Object.keys(this.faker.definitions.internet.emoji)}=e,r=this.faker.helpers.arrayElement(t);return this.faker.helpers.arrayElement(this.faker.definitions.internet.emoji[r])}},RC=class extends _w{zipCode(e={}){"string"==typeof e&&(e={format:e});let{state:t}=e;if(null!=t){let e=this.faker.definitions.location.postcode_by_state[t];if(null==e)throw new ww(`No zip code definition found for state "${t}"`);return this.faker.helpers.fake(e)}let{format:r=this.faker.definitions.location.postcode}=e;return"string"==typeof r&&(r=[r]),r=this.faker.helpers.arrayElement(r),this.faker.helpers.replaceSymbols(r)}city(){return this.faker.helpers.fake(this.faker.definitions.location.city_pattern)}buildingNumber(){return this.faker.helpers.arrayElement(this.faker.definitions.location.building_number).replaceAll(/#+/g,(e=>this.faker.string.numeric({length:e.length,allowLeadingZeros:!1})))}street(){return this.faker.helpers.fake(this.faker.definitions.location.street_pattern)}streetAddress(e={}){"boolean"==typeof e&&(e={useFullAddress:e});let{useFullAddress:t}=e,r=this.faker.definitions.location.street_address[t?"full":"normal"];return this.faker.helpers.fake(r)}secondaryAddress(){return this.faker.helpers.fake(this.faker.definitions.location.secondary_address).replaceAll(/#+/g,(e=>this.faker.string.numeric({length:e.length,allowLeadingZeros:!1})))}county(){return this.faker.helpers.arrayElement(this.faker.definitions.location.county)}country(){return this.faker.helpers.arrayElement(this.faker.definitions.location.country)}countryCode(e={}){"string"==typeof e&&(e={variant:e});let{variant:t="alpha-2"}=e,r=(()=>{switch(t){case"numeric":return"numeric";case"alpha-3":return"alpha3";case"alpha-2":return"alpha2"}})();return this.faker.helpers.arrayElement(this.faker.definitions.location.country_code)[r]}state(e={}){let{abbreviated:t=!1}=e,r=t?this.faker.definitions.location.state_abbr:this.faker.definitions.location.state;return this.faker.helpers.arrayElement(r)}latitude(e={}){let{max:t=90,min:r=-90,precision:a=4}=e;return this.faker.number.float({min:r,max:t,fractionDigits:a})}longitude(e={}){let{max:t=180,min:r=-180,precision:a=4}=e;return this.faker.number.float({max:t,min:r,fractionDigits:a})}direction(e={}){let{abbreviated:t=!1}=e;return t?this.faker.helpers.arrayElement([...this.faker.definitions.location.direction.cardinal_abbr,...this.faker.definitions.location.direction.ordinal_abbr]):this.faker.helpers.arrayElement([...this.faker.definitions.location.direction.cardinal,...this.faker.definitions.location.direction.ordinal])}cardinalDirection(e={}){let{abbreviated:t=!1}=e;return t?this.faker.helpers.arrayElement(this.faker.definitions.location.direction.cardinal_abbr):this.faker.helpers.arrayElement(this.faker.definitions.location.direction.cardinal)}ordinalDirection(e={}){let{abbreviated:t=!1}=e;return t?this.faker.helpers.arrayElement(this.faker.definitions.location.direction.ordinal_abbr):this.faker.helpers.arrayElement(this.faker.definitions.location.direction.ordinal)}nearbyGPSCoordinate(e={}){let{origin:t,radius:r=10,isMetric:a=!1}=e;if(null==t)return[this.latitude(),this.longitude()];let i=this.faker.number.float({max:2*Math.PI,fractionDigits:5}),n=a?r:1.60934*r,o=.995*this.faker.number.float({max:n,fractionDigits:3})/(4e4/360),c=[t[0]+Math.sin(i)*o,t[1]+Math.cos(i)*o];return c[0]=c[0]%180,(c[0]<-90||c[0]>90)&&(c[0]=180*Math.sign(c[0])-c[0],c[1]+=180),c[1]=(c[1]%360+540)%360-180,[c[0],c[1]]}timeZone(){return this.faker.helpers.arrayElement(this.faker.definitions.location.time_zone)}};var HC={fail:()=>{throw new ww("No words found that match the given length.")},closest:(e,t)=>{let r=function(e,t,r=e=>e){let a={};for(let i of e){let e=t(i);void 0===a[e]&&(a[e]=[]),a[e].push(r(i))}return a}(e,(e=>e.length)),a=Object.keys(r).map(Number),i=Math.min(...a),n=Math.max(...a),o=Math.min(t.min-i,n-t.max);return e.filter((e=>e.length===t.min-o||e.length===t.max+o))},shortest:e=>{let t=Math.min(...e.map((e=>e.length)));return e.filter((e=>e.length===t))},longest:e=>{let t=Math.max(...e.map((e=>e.length)));return e.filter((e=>e.length===t))},"any-length":e=>[...e]};function DC(e){let{wordList:t,length:r,strategy:a="any-length"}=e;if(r){let e="number"==typeof r?e=>e.length===r:e=>e.length>=r.min&&e.length<=r.max,i=t.filter(e);return i.length>0?i:"number"==typeof r?HC[a](t,{min:r,max:r}):HC[a](t,r)}return"shortest"===a||"longest"===a?HC[a](t):[...t]}var PC=class extends _w{word(e={}){let t="number"==typeof e?{length:e}:e;return this.faker.helpers.arrayElement(DC({...t,wordList:this.faker.definitions.lorem.word}))}words(e=3){return this.faker.helpers.multiple((()=>this.word()),{count:e}).join(" ")}sentence(e={min:3,max:10}){let t=this.words(e);return`${t.charAt(0).toUpperCase()+t.substring(1)}.`}slug(e=3){let t=this.words(e);return this.faker.helpers.slugify(t)}sentences(e={min:2,max:6},t=" "){return this.faker.helpers.multiple((()=>this.sentence()),{count:e}).join(t)}paragraph(e=3){return this.sentences(e)}paragraphs(e=3,t="\n"){return this.faker.helpers.multiple((()=>this.paragraph()),{count:e}).join(t)}text(){return this[this.faker.helpers.arrayElement(["sentence","sentences","paragraph","paragraphs","lines"])]()}lines(e={min:1,max:5}){return this.sentences(e,"\n")}},NC=class extends _w{album(){return this.faker.helpers.arrayElement(this.faker.definitions.music.album)}artist(){return this.faker.helpers.arrayElement(this.faker.definitions.music.artist)}genre(){return this.faker.helpers.arrayElement(this.faker.definitions.music.genre)}songName(){return this.faker.helpers.arrayElement(this.faker.definitions.music.song_name)}},GC=class extends _w{number(e={}){let{style:t="human"}=e,r=this.faker.definitions.phone_number.format[t];if(!r)throw new Error(`No definitions for ${t} in this locale`);let a=this.faker.helpers.arrayElement(r);return rC(this.faker,a)}imei(){return this.faker.helpers.replaceCreditCardSymbols("##-######-######-L","#")}},IC=class extends _w{chemicalElement(){return this.faker.helpers.arrayElement(this.faker.definitions.science.chemical_element)}unit(){return this.faker.helpers.arrayElement(this.faker.definitions.science.unit)}},WC=["video","audio","image","text","application"],FC=["application/pdf","audio/mpeg","audio/wav","image/png","image/jpeg","image/gif","video/mp4","video/mpeg","text/html"],zC=["en","wl","ww"],OC={index:"o",slot:"s",mac:"x",pci:"p"},KC=["SUN","MON","TUE","WED","THU","FRI","SAT"],JC=class extends _w{fileName(e={}){let{extensionCount:t=1}=e,r=this.faker.word.words().toLowerCase().replaceAll(/\W/g,"_"),a=this.faker.helpers.multiple((()=>this.fileExt()),{count:t}).join(".");return 0===a.length?r:`${r}.${a}`}commonFileName(e){return`${this.fileName({extensionCount:0})}.${e||this.commonFileExt()}`}mimeType(){let e=Object.keys(this.faker.definitions.system.mime_type);return this.faker.helpers.arrayElement(e)}commonFileType(){return this.faker.helpers.arrayElement(WC)}commonFileExt(){return this.fileExt(this.faker.helpers.arrayElement(FC))}fileType(){let e=this.faker.definitions.system.mime_type,t=new Set(Object.keys(e).map((e=>e.split("/")[0])));return this.faker.helpers.arrayElement([...t])}fileExt(e){let t=this.faker.definitions.system.mime_type;if("string"==typeof e)return this.faker.helpers.arrayElement(t[e].extensions);let r=new Set(Object.values(t).flatMap((({extensions:e})=>e)));return this.faker.helpers.arrayElement([...r])}directoryPath(){let e=this.faker.definitions.system.directory_path;return this.faker.helpers.arrayElement(e)}filePath(){return`${this.directoryPath()}/${this.fileName()}`}semver(){return[this.faker.number.int(9),this.faker.number.int(9),this.faker.number.int(9)].join(".")}networkInterface(e={}){let t,{interfaceType:r=this.faker.helpers.arrayElement(zC),interfaceSchema:a=this.faker.helpers.objectKey(OC)}=e,i="",n=()=>this.faker.string.numeric({allowLeadingZeros:!0});switch(a){case"index":t=n();break;case"slot":t=`${n()}${this.faker.helpers.maybe((()=>`f${n()}`))??""}${this.faker.helpers.maybe((()=>`d${n()}`))??""}`;break;case"mac":t=this.faker.internet.mac("");break;case"pci":i=this.faker.helpers.maybe((()=>`P${n()}`))??"",t=`${n()}s${n()}${this.faker.helpers.maybe((()=>`f${n()}`))??""}${this.faker.helpers.maybe((()=>`d${n()}`))??""}`}return`${i}${r}${OC[a]}${t}`}cron(e={}){let{includeYear:t=!1,includeNonStandard:r=!1}=e,a=[this.faker.number.int(59),"*"],i=[this.faker.number.int(23),"*"],n=[this.faker.number.int({min:1,max:31}),"*","?"],o=[this.faker.number.int({min:1,max:12}),"*"],c=[this.faker.number.int(6),this.faker.helpers.arrayElement(KC),"*","?"],l=[this.faker.number.int({min:1970,max:2099}),"*"],s=this.faker.helpers.arrayElement(a),u=this.faker.helpers.arrayElement(i),h=this.faker.helpers.arrayElement(n),d=this.faker.helpers.arrayElement(o),p=this.faker.helpers.arrayElement(c),y=this.faker.helpers.arrayElement(l),f=`${s} ${u} ${h} ${d} ${p}`;t&&(f+=` ${y}`);return!r||this.faker.datatype.boolean()?f:this.faker.helpers.arrayElement(["@annually","@daily","@hourly","@monthly","@reboot","@weekly","@yearly"])}},VC=class extends _w{vehicle(){return`${this.manufacturer()} ${this.model()}`}manufacturer(){return this.faker.helpers.arrayElement(this.faker.definitions.vehicle.manufacturer)}model(){return this.faker.helpers.arrayElement(this.faker.definitions.vehicle.model)}type(){return this.faker.helpers.arrayElement(this.faker.definitions.vehicle.type)}fuel(){return this.faker.helpers.arrayElement(this.faker.definitions.vehicle.fuel)}vin(){let e=["o","i","q","O","I","Q"];return`${this.faker.string.alphanumeric({length:10,casing:"upper",exclude:e})}${this.faker.string.alpha({length:1,casing:"upper",exclude:e})}${this.faker.string.alphanumeric({length:1,casing:"upper",exclude:e})}${this.faker.string.numeric({length:5,allowLeadingZeros:!0})}`}color(){return this.faker.color.human()}vrm(){return`${this.faker.string.alpha({length:2,casing:"upper"})}${this.faker.string.numeric({length:2,allowLeadingZeros:!0})}${this.faker.string.alpha({length:3,casing:"upper"})}`}bicycle(){return this.faker.helpers.arrayElement(this.faker.definitions.vehicle.bicycle_type)}},jC=class extends _w{adjective(e={}){let t="number"==typeof e?{length:e}:e;return this.faker.helpers.arrayElement(DC({...t,wordList:this.faker.definitions.word.adjective}))}adverb(e={}){let t="number"==typeof e?{length:e}:e;return this.faker.helpers.arrayElement(DC({...t,wordList:this.faker.definitions.word.adverb}))}conjunction(e={}){let t="number"==typeof e?{length:e}:e;return this.faker.helpers.arrayElement(DC({...t,wordList:this.faker.definitions.word.conjunction}))}interjection(e={}){let t="number"==typeof e?{length:e}:e;return this.faker.helpers.arrayElement(DC({...t,wordList:this.faker.definitions.word.interjection}))}noun(e={}){let t="number"==typeof e?{length:e}:e;return this.faker.helpers.arrayElement(DC({...t,wordList:this.faker.definitions.word.noun}))}preposition(e={}){let t="number"==typeof e?{length:e}:e;return this.faker.helpers.arrayElement(DC({...t,wordList:this.faker.definitions.word.preposition}))}verb(e={}){let t="number"==typeof e?{length:e}:e;return this.faker.helpers.arrayElement(DC({...t,wordList:this.faker.definitions.word.verb}))}sample(e={}){let t=this.faker.helpers.shuffle([this.adjective,this.adverb,this.conjunction,this.interjection,this.noun,this.preposition,this.verb]);for(let r of t)try{return r(e)}catch{continue}throw new ww("No matching word data available for the current locale")}words(e={}){"number"==typeof e&&(e={count:e});let{count:t={min:1,max:3}}=e;return this.faker.helpers.multiple((()=>this.sample()),{count:t}).join(" ")}},YC=["Africa/Abidjan","Africa/Accra","Africa/Addis_Ababa","Africa/Algiers","Africa/Asmara","Africa/Bamako","Africa/Bangui","Africa/Banjul","Africa/Bissau","Africa/Blantyre","Africa/Brazzaville","Africa/Bujumbura","Africa/Cairo","Africa/Casablanca","Africa/Ceuta","Africa/Conakry","Africa/Dakar","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Douala","Africa/El_Aaiun","Africa/Freetown","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Kigali","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Lome","Africa/Luanda","Africa/Lubumbashi","Africa/Lusaka","Africa/Malabo","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Africa/Mogadishu","Africa/Monrovia","Africa/Nairobi","Africa/Ndjamena","Africa/Niamey","Africa/Nouakchott","Africa/Ouagadougou","Africa/Porto-Novo","Africa/Sao_Tome","Africa/Tripoli","Africa/Tunis","Africa/Windhoek","America/Adak","America/Anchorage","America/Anguilla","America/Antigua","America/Araguaina","America/Argentina/Buenos_Aires","America/Argentina/Catamarca","America/Argentina/Cordoba","America/Argentina/Jujuy","America/Argentina/La_Rioja","America/Argentina/Mendoza","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Aruba","America/Asuncion","America/Atikokan","America/Bahia","America/Bahia_Banderas","America/Barbados","America/Belem","America/Belize","America/Blanc-Sablon","America/Boa_Vista","America/Bogota","America/Boise","America/Cambridge_Bay","America/Campo_Grande","America/Cancun","America/Caracas","America/Cayenne","America/Cayman","America/Chicago","America/Chihuahua","America/Ciudad_Juarez","America/Costa_Rica","America/Creston","America/Cuiaba","America/Curacao","America/Danmarkshavn","America/Dawson","America/Dawson_Creek","America/Denver","America/Detroit","America/Dominica","America/Edmonton","America/Eirunepe","America/El_Salvador","America/Fort_Nelson","America/Fortaleza","America/Glace_Bay","America/Goose_Bay","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guatemala","America/Guayaquil","America/Guyana","America/Halifax","America/Havana","America/Hermosillo","America/Indiana/Indianapolis","America/Indiana/Knox","America/Indiana/Marengo","America/Indiana/Petersburg","America/Indiana/Tell_City","America/Indiana/Vevay","America/Indiana/Vincennes","America/Indiana/Winamac","America/Inuvik","America/Iqaluit","America/Jamaica","America/Juneau","America/Kentucky/Louisville","America/Kentucky/Monticello","America/Kralendijk","America/La_Paz","America/Lima","America/Los_Angeles","America/Lower_Princes","America/Maceio","America/Managua","America/Manaus","America/Marigot","America/Martinique","America/Matamoros","America/Mazatlan","America/Menominee","America/Merida","America/Metlakatla","America/Mexico_City","America/Miquelon","America/Moncton","America/Monterrey","America/Montevideo","America/Montserrat","America/Nassau","America/New_York","America/Nome","America/Noronha","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Nuuk","America/Ojinaga","America/Panama","America/Paramaribo","America/Phoenix","America/Port-au-Prince","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Punta_Arenas","America/Rankin_Inlet","America/Recife","America/Regina","America/Resolute","America/Rio_Branco","America/Santarem","America/Santiago","America/Santo_Domingo","America/Sao_Paulo","America/Scoresbysund","America/Sitka","America/St_Barthelemy","America/St_Johns","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Swift_Current","America/Tegucigalpa","America/Thule","America/Tijuana","America/Toronto","America/Tortola","America/Vancouver","America/Whitehorse","America/Winnipeg","America/Yakutat","America/Yellowknife","Antarctica/Casey","Antarctica/Davis","Antarctica/DumontDUrville","Antarctica/Macquarie","Antarctica/Mawson","Antarctica/McMurdo","Antarctica/Palmer","Antarctica/Rothera","Antarctica/Syowa","Antarctica/Troll","Antarctica/Vostok","Arctic/Longyearbyen","Asia/Aden","Asia/Almaty","Asia/Amman","Asia/Anadyr","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Atyrau","Asia/Baghdad","Asia/Bahrain","Asia/Baku","Asia/Bangkok","Asia/Barnaul","Asia/Beirut","Asia/Bishkek","Asia/Brunei","Asia/Chita","Asia/Choibalsan","Asia/Colombo","Asia/Damascus","Asia/Dhaka","Asia/Dili","Asia/Dubai","Asia/Dushanbe","Asia/Famagusta","Asia/Gaza","Asia/Hebron","Asia/Ho_Chi_Minh","Asia/Hong_Kong","Asia/Hovd","Asia/Irkutsk","Asia/Jakarta","Asia/Jayapura","Asia/Jerusalem","Asia/Kabul","Asia/Kamchatka","Asia/Karachi","Asia/Kathmandu","Asia/Khandyga","Asia/Kolkata","Asia/Krasnoyarsk","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Kuwait","Asia/Macau","Asia/Magadan","Asia/Makassar","Asia/Manila","Asia/Muscat","Asia/Nicosia","Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk","Asia/Oral","Asia/Phnom_Penh","Asia/Pontianak","Asia/Pyongyang","Asia/Qatar","Asia/Qostanay","Asia/Qyzylorda","Asia/Riyadh","Asia/Sakhalin","Asia/Samarkand","Asia/Seoul","Asia/Shanghai","Asia/Singapore","Asia/Srednekolymsk","Asia/Taipei","Asia/Tashkent","Asia/Tbilisi","Asia/Tehran","Asia/Thimphu","Asia/Tokyo","Asia/Tomsk","Asia/Ulaanbaatar","Asia/Urumqi","Asia/Ust-Nera","Asia/Vientiane","Asia/Vladivostok","Asia/Yakutsk","Asia/Yangon","Asia/Yekaterinburg","Asia/Yerevan","Atlantic/Azores","Atlantic/Bermuda","Atlantic/Canary","Atlantic/Cape_Verde","Atlantic/Faroe","Atlantic/Madeira","Atlantic/Reykjavik","Atlantic/South_Georgia","Atlantic/St_Helena","Atlantic/Stanley","Australia/Adelaide","Australia/Brisbane","Australia/Broken_Hill","Australia/Darwin","Australia/Eucla","Australia/Hobart","Australia/Lindeman","Australia/Lord_Howe","Australia/Melbourne","Australia/Perth","Australia/Sydney","Europe/Amsterdam","Europe/Andorra","Europe/Astrakhan","Europe/Athens","Europe/Belgrade","Europe/Berlin","Europe/Bratislava","Europe/Brussels","Europe/Bucharest","Europe/Budapest","Europe/Busingen","Europe/Chisinau","Europe/Copenhagen","Europe/Dublin","Europe/Gibraltar","Europe/Guernsey","Europe/Helsinki","Europe/Isle_of_Man","Europe/Istanbul","Europe/Jersey","Europe/Kaliningrad","Europe/Kirov","Europe/Kyiv","Europe/Lisbon","Europe/Ljubljana","Europe/London","Europe/Luxembourg","Europe/Madrid","Europe/Malta","Europe/Mariehamn","Europe/Minsk","Europe/Monaco","Europe/Moscow","Europe/Oslo","Europe/Paris","Europe/Podgorica","Europe/Prague","Europe/Riga","Europe/Rome","Europe/Samara","Europe/San_Marino","Europe/Sarajevo","Europe/Saratov","Europe/Simferopol","Europe/Skopje","Europe/Sofia","Europe/Stockholm","Europe/Tallinn","Europe/Tirane","Europe/Ulyanovsk","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Vilnius","Europe/Volgograd","Europe/Warsaw","Europe/Zagreb","Europe/Zurich","Indian/Antananarivo","Indian/Chagos","Indian/Christmas","Indian/Cocos","Indian/Comoro","Indian/Kerguelen","Indian/Mahe","Indian/Maldives","Indian/Mauritius","Indian/Mayotte","Indian/Reunion","Pacific/Apia","Pacific/Auckland","Pacific/Bougainville","Pacific/Chatham","Pacific/Chuuk","Pacific/Easter","Pacific/Efate","Pacific/Fakaofo","Pacific/Fiji","Pacific/Funafuti","Pacific/Galapagos","Pacific/Gambier","Pacific/Guadalcanal","Pacific/Guam","Pacific/Honolulu","Pacific/Kanton","Pacific/Kiritimati","Pacific/Kosrae","Pacific/Kwajalein","Pacific/Majuro","Pacific/Marquesas","Pacific/Midway","Pacific/Nauru","Pacific/Niue","Pacific/Norfolk","Pacific/Noumea","Pacific/Pago_Pago","Pacific/Palau","Pacific/Pitcairn","Pacific/Pohnpei","Pacific/Port_Moresby","Pacific/Rarotonga","Pacific/Saipan","Pacific/Tahiti","Pacific/Tarawa","Pacific/Tongatapu","Pacific/Wake","Pacific/Wallis"],$C={color:{space:["Academy Color Encoding System (ACES)","Adobe RGB","Adobe Wide Gamut RGB","British Standard Colour (BS)","CIE 1931 XYZ","CIELAB","CIELUV","CIEUVW","CMY","CMYK","DCI-P3","Display-P3","Federal Standard 595C","HKS","HSL","HSLA","HSLuv","HSV","HWB","LCh","LMS","Munsell Color System","Natural Color System (NSC)","Pantone Matching System (PMS)","ProPhoto RGB Color Space","RAL","RG","RGBA","RGK","Rec. 2020","Rec. 2100","Rec. 601","Rec. 709","Uniform Color Spaces (UCSs)","YDbDr","YIQ","YPbPr","sRGB","sYCC","scRGB","xvYCC"]},database:{collation:["ascii_bin","ascii_general_ci","cp1250_bin","cp1250_general_ci","utf8_bin","utf8_general_ci","utf8_unicode_ci"],engine:["ARCHIVE","BLACKHOLE","CSV","InnoDB","MEMORY","MyISAM"],type:["bigint","binary","bit","blob","boolean","date","datetime","decimal","double","enum","float","geometry","int","mediumint","point","real","serial","set","smallint","text","time","timestamp","tinyint","varchar"]},date:{time_zone:YC},hacker:{abbreviation:["ADP","AGP","AI","API","ASCII","CLI","COM","CSS","DNS","DRAM","EXE","FTP","GB","HDD","HEX","HTTP","IB","IP","JBOD","JSON","OCR","PCI","PNG","RAM","RSS","SAS","SCSI","SDD","SMS","SMTP","SQL","SSD","SSL","TCP","THX","TLS","UDP","USB","UTF8","VGA","XML","XSS"]},internet:{emoji:{smiley:["😀","😃","😄","😁","😆","😅","🤣","😂","🙂","🙃","😉","😊","😇","🥰","😍","🤩","😘","😗","☺️","😚","😙","🥲","😋","😛","😜","🤪","😝","🤑","🤗","🤭","🤫","🤔","🤐","🤨","😐","😑","😶","😶‍🌫️","😏","😒","🙄","😬","😮‍💨","🤥","😌","😔","😪","🤤","😴","😷","🤒","🤕","🤢","🤮","🤧","🥵","🥶","🥴","😵","😵‍💫","🤯","🤠","🥳","🥸","😎","🤓","🧐","😕","😟","🙁","☹️","😮","😯","😲","😳","🥺","😦","😧","😨","😰","😥","😢","😭","😱","😖","😣","😞","😓","😩","😫","🥱","😤","😡","😠","🤬","😈","👿","💀","☠️","💩","🤡","👹","👺","👻","👽","👾","🤖","😺","😸","😹","😻","😼","😽","🙀","😿","😾","🙈","🙉","🙊","💋","💌","💘","💝","💖","💗","💓","💞","💕","💟","❣️","💔","❤️‍🔥","❤️‍🩹","❤️","🧡","💛","💚","💙","💜","🤎","🖤","🤍","💯","💢","💥","💫","💦","💨","🕳️","💣","💬","👁️‍🗨️","🗨️","🗯️","💭","💤"],body:["👋","👋🏻","👋🏼","👋🏽","👋🏾","👋🏿","🤚","🤚🏻","🤚🏼","🤚🏽","🤚🏾","🤚🏿","🖐️","🖐🏻","🖐🏼","🖐🏽","🖐🏾","🖐🏿","✋","✋🏻","✋🏼","✋🏽","✋🏾","✋🏿","🖖","🖖🏻","🖖🏼","🖖🏽","🖖🏾","🖖🏿","👌","👌🏻","👌🏼","👌🏽","👌🏾","👌🏿","🤌","🤌🏻","🤌🏼","🤌🏽","🤌🏾","🤌🏿","🤏","🤏🏻","🤏🏼","🤏🏽","🤏🏾","🤏🏿","✌️","✌🏻","✌🏼","✌🏽","✌🏾","✌🏿","🤞","🤞🏻","🤞🏼","🤞🏽","🤞🏾","🤞🏿","🤟","🤟🏻","🤟🏼","🤟🏽","🤟🏾","🤟🏿","🤘","🤘🏻","🤘🏼","🤘🏽","🤘🏾","🤘🏿","🤙","🤙🏻","🤙🏼","🤙🏽","🤙🏾","🤙🏿","👈","👈🏻","👈🏼","👈🏽","👈🏾","👈🏿","👉","👉🏻","👉🏼","👉🏽","👉🏾","👉🏿","👆","👆🏻","👆🏼","👆🏽","👆🏾","👆🏿","🖕","🖕🏻","🖕🏼","🖕🏽","🖕🏾","🖕🏿","👇","👇🏻","👇🏼","👇🏽","👇🏾","👇🏿","☝️","☝🏻","☝🏼","☝🏽","☝🏾","☝🏿","👍","👍🏻","👍🏼","👍🏽","👍🏾","👍🏿","👎","👎🏻","👎🏼","👎🏽","👎🏾","👎🏿","✊","✊🏻","✊🏼","✊🏽","✊🏾","✊🏿","👊","👊🏻","👊🏼","👊🏽","👊🏾","👊🏿","🤛","🤛🏻","🤛🏼","🤛🏽","🤛🏾","🤛🏿","🤜","🤜🏻","🤜🏼","🤜🏽","🤜🏾","🤜🏿","👏","👏🏻","👏🏼","👏🏽","👏🏾","👏🏿","🙌","🙌🏻","🙌🏼","🙌🏽","🙌🏾","🙌🏿","👐","👐🏻","👐🏼","👐🏽","👐🏾","👐🏿","🤲","🤲🏻","🤲🏼","🤲🏽","🤲🏾","🤲🏿","🤝","🙏","🙏🏻","🙏🏼","🙏🏽","🙏🏾","🙏🏿","✍️","✍🏻","✍🏼","✍🏽","✍🏾","✍🏿","💅","💅🏻","💅🏼","💅🏽","💅🏾","💅🏿","🤳","🤳🏻","🤳🏼","🤳🏽","🤳🏾","🤳🏿","💪","💪🏻","💪🏼","💪🏽","💪🏾","💪🏿","🦾","🦿","🦵","🦵🏻","🦵🏼","🦵🏽","🦵🏾","🦵🏿","🦶","🦶🏻","🦶🏼","🦶🏽","🦶🏾","🦶🏿","👂","👂🏻","👂🏼","👂🏽","👂🏾","👂🏿","🦻","🦻🏻","🦻🏼","🦻🏽","🦻🏾","🦻🏿","👃","👃🏻","👃🏼","👃🏽","👃🏾","👃🏿","🧠","🫀","🫁","🦷","🦴","👀","👁️","👅","👄"],person:["👶","👶🏻","👶🏼","👶🏽","👶🏾","👶🏿","🧒","🧒🏻","🧒🏼","🧒🏽","🧒🏾","🧒🏿","👦","👦🏻","👦🏼","👦🏽","👦🏾","👦🏿","👧","👧🏻","👧🏼","👧🏽","👧🏾","👧🏿","🧑","🧑🏻","🧑🏼","🧑🏽","🧑🏾","🧑🏿","👱","👱🏻","👱🏼","👱🏽","👱🏾","👱🏿","👨","👨🏻","👨🏼","👨🏽","👨🏾","👨🏿","🧔","🧔🏻","🧔🏼","🧔🏽","🧔🏾","🧔🏿","🧔‍♂️","🧔🏻‍♂️","🧔🏼‍♂️","🧔🏽‍♂️","🧔🏾‍♂️","🧔🏿‍♂️","🧔‍♀️","🧔🏻‍♀️","🧔🏼‍♀️","🧔🏽‍♀️","🧔🏾‍♀️","🧔🏿‍♀️","👨‍🦰","👨🏻‍🦰","👨🏼‍🦰","👨🏽‍🦰","👨🏾‍🦰","👨🏿‍🦰","👨‍🦱","👨🏻‍🦱","👨🏼‍🦱","👨🏽‍🦱","👨🏾‍🦱","👨🏿‍🦱","👨‍🦳","👨🏻‍🦳","👨🏼‍🦳","👨🏽‍🦳","👨🏾‍🦳","👨🏿‍🦳","👨‍🦲","👨🏻‍🦲","👨🏼‍🦲","👨🏽‍🦲","👨🏾‍🦲","👨🏿‍🦲","👩","👩🏻","👩🏼","👩🏽","👩🏾","👩🏿","👩‍🦰","👩🏻‍🦰","👩🏼‍🦰","👩🏽‍🦰","👩🏾‍🦰","👩🏿‍🦰","🧑‍🦰","🧑🏻‍🦰","🧑🏼‍🦰","🧑🏽‍🦰","🧑🏾‍🦰","🧑🏿‍🦰","👩‍🦱","👩🏻‍🦱","👩🏼‍🦱","👩🏽‍🦱","👩🏾‍🦱","👩🏿‍🦱","🧑‍🦱","🧑🏻‍🦱","🧑🏼‍🦱","🧑🏽‍🦱","🧑🏾‍🦱","🧑🏿‍🦱","👩‍🦳","👩🏻‍🦳","👩🏼‍🦳","👩🏽‍🦳","👩🏾‍🦳","👩🏿‍🦳","🧑‍🦳","🧑🏻‍🦳","🧑🏼‍🦳","🧑🏽‍🦳","🧑🏾‍🦳","🧑🏿‍🦳","👩‍🦲","👩🏻‍🦲","👩🏼‍🦲","👩🏽‍🦲","👩🏾‍🦲","👩🏿‍🦲","🧑‍🦲","🧑🏻‍🦲","🧑🏼‍🦲","🧑🏽‍🦲","🧑🏾‍🦲","🧑🏿‍🦲","👱‍♀️","👱🏻‍♀️","👱🏼‍♀️","👱🏽‍♀️","👱🏾‍♀️","👱🏿‍♀️","👱‍♂️","👱🏻‍♂️","👱🏼‍♂️","👱🏽‍♂️","👱🏾‍♂️","👱🏿‍♂️","🧓","🧓🏻","🧓🏼","🧓🏽","🧓🏾","🧓🏿","👴","👴🏻","👴🏼","👴🏽","👴🏾","👴🏿","👵","👵🏻","👵🏼","👵🏽","👵🏾","👵🏿","🙍","🙍🏻","🙍🏼","🙍🏽","🙍🏾","🙍🏿","🙍‍♂️","🙍🏻‍♂️","🙍🏼‍♂️","🙍🏽‍♂️","🙍🏾‍♂️","🙍🏿‍♂️","🙍‍♀️","🙍🏻‍♀️","🙍🏼‍♀️","🙍🏽‍♀️","🙍🏾‍♀️","🙍🏿‍♀️","🙎","🙎🏻","🙎🏼","🙎🏽","🙎🏾","🙎🏿","🙎‍♂️","🙎🏻‍♂️","🙎🏼‍♂️","🙎🏽‍♂️","🙎🏾‍♂️","🙎🏿‍♂️","🙎‍♀️","🙎🏻‍♀️","🙎🏼‍♀️","🙎🏽‍♀️","🙎🏾‍♀️","🙎🏿‍♀️","🙅","🙅🏻","🙅🏼","🙅🏽","🙅🏾","🙅🏿","🙅‍♂️","🙅🏻‍♂️","🙅🏼‍♂️","🙅🏽‍♂️","🙅🏾‍♂️","🙅🏿‍♂️","🙅‍♀️","🙅🏻‍♀️","🙅🏼‍♀️","🙅🏽‍♀️","🙅🏾‍♀️","🙅🏿‍♀️","🙆","🙆🏻","🙆🏼","🙆🏽","🙆🏾","🙆🏿","🙆‍♂️","🙆🏻‍♂️","🙆🏼‍♂️","🙆🏽‍♂️","🙆🏾‍♂️","🙆🏿‍♂️","🙆‍♀️","🙆🏻‍♀️","🙆🏼‍♀️","🙆🏽‍♀️","🙆🏾‍♀️","🙆🏿‍♀️","💁","💁🏻","💁🏼","💁🏽","💁🏾","💁🏿","💁‍♂️","💁🏻‍♂️","💁🏼‍♂️","💁🏽‍♂️","💁🏾‍♂️","💁🏿‍♂️","💁‍♀️","💁🏻‍♀️","💁🏼‍♀️","💁🏽‍♀️","💁🏾‍♀️","💁🏿‍♀️","🙋","🙋🏻","🙋🏼","🙋🏽","🙋🏾","🙋🏿","🙋‍♂️","🙋🏻‍♂️","🙋🏼‍♂️","🙋🏽‍♂️","🙋🏾‍♂️","🙋🏿‍♂️","🙋‍♀️","🙋🏻‍♀️","🙋🏼‍♀️","🙋🏽‍♀️","🙋🏾‍♀️","🙋🏿‍♀️","🧏","🧏🏻","🧏🏼","🧏🏽","🧏🏾","🧏🏿","🧏‍♂️","🧏🏻‍♂️","🧏🏼‍♂️","🧏🏽‍♂️","🧏🏾‍♂️","🧏🏿‍♂️","🧏‍♀️","🧏🏻‍♀️","🧏🏼‍♀️","🧏🏽‍♀️","🧏🏾‍♀️","🧏🏿‍♀️","🙇","🙇🏻","🙇🏼","🙇🏽","🙇🏾","🙇🏿","🙇‍♂️","🙇🏻‍♂️","🙇🏼‍♂️","🙇🏽‍♂️","🙇🏾‍♂️","🙇🏿‍♂️","🙇‍♀️","🙇🏻‍♀️","🙇🏼‍♀️","🙇🏽‍♀️","🙇🏾‍♀️","🙇🏿‍♀️","🤦","🤦🏻","🤦🏼","🤦🏽","🤦🏾","🤦🏿","🤦‍♂️","🤦🏻‍♂️","🤦🏼‍♂️","🤦🏽‍♂️","🤦🏾‍♂️","🤦🏿‍♂️","🤦‍♀️","🤦🏻‍♀️","🤦🏼‍♀️","🤦🏽‍♀️","🤦🏾‍♀️","🤦🏿‍♀️","🤷","🤷🏻","🤷🏼","🤷🏽","🤷🏾","🤷🏿","🤷‍♂️","🤷🏻‍♂️","🤷🏼‍♂️","🤷🏽‍♂️","🤷🏾‍♂️","🤷🏿‍♂️","🤷‍♀️","🤷🏻‍♀️","🤷🏼‍♀️","🤷🏽‍♀️","🤷🏾‍♀️","🤷🏿‍♀️","🧑‍⚕️","🧑🏻‍⚕️","🧑🏼‍⚕️","🧑🏽‍⚕️","🧑🏾‍⚕️","🧑🏿‍⚕️","👨‍⚕️","👨🏻‍⚕️","👨🏼‍⚕️","👨🏽‍⚕️","👨🏾‍⚕️","👨🏿‍⚕️","👩‍⚕️","👩🏻‍⚕️","👩🏼‍⚕️","👩🏽‍⚕️","👩🏾‍⚕️","👩🏿‍⚕️","🧑‍🎓","🧑🏻‍🎓","🧑🏼‍🎓","🧑🏽‍🎓","🧑🏾‍🎓","🧑🏿‍🎓","👨‍🎓","👨🏻‍🎓","👨🏼‍🎓","👨🏽‍🎓","👨🏾‍🎓","👨🏿‍🎓","👩‍🎓","👩🏻‍🎓","👩🏼‍🎓","👩🏽‍🎓","👩🏾‍🎓","👩🏿‍🎓","🧑‍🏫","🧑🏻‍🏫","🧑🏼‍🏫","🧑🏽‍🏫","🧑🏾‍🏫","🧑🏿‍🏫","👨‍🏫","👨🏻‍🏫","👨🏼‍🏫","👨🏽‍🏫","👨🏾‍🏫","👨🏿‍🏫","👩‍🏫","👩🏻‍🏫","👩🏼‍🏫","👩🏽‍🏫","👩🏾‍🏫","👩🏿‍🏫","🧑‍⚖️","🧑🏻‍⚖️","🧑🏼‍⚖️","🧑🏽‍⚖️","🧑🏾‍⚖️","🧑🏿‍⚖️","👨‍⚖️","👨🏻‍⚖️","👨🏼‍⚖️","👨🏽‍⚖️","👨🏾‍⚖️","👨🏿‍⚖️","👩‍⚖️","👩🏻‍⚖️","👩🏼‍⚖️","👩🏽‍⚖️","👩🏾‍⚖️","👩🏿‍⚖️","🧑‍🌾","🧑🏻‍🌾","🧑🏼‍🌾","🧑🏽‍🌾","🧑🏾‍🌾","🧑🏿‍🌾","👨‍🌾","👨🏻‍🌾","👨🏼‍🌾","👨🏽‍🌾","👨🏾‍🌾","👨🏿‍🌾","👩‍🌾","👩🏻‍🌾","👩🏼‍🌾","👩🏽‍🌾","👩🏾‍🌾","👩🏿‍🌾","🧑‍🍳","🧑🏻‍🍳","🧑🏼‍🍳","🧑🏽‍🍳","🧑🏾‍🍳","🧑🏿‍🍳","👨‍🍳","👨🏻‍🍳","👨🏼‍🍳","👨🏽‍🍳","👨🏾‍🍳","👨🏿‍🍳","👩‍🍳","👩🏻‍🍳","👩🏼‍🍳","👩🏽‍🍳","👩🏾‍🍳","👩🏿‍🍳","🧑‍🔧","🧑🏻‍🔧","🧑🏼‍🔧","🧑🏽‍🔧","🧑🏾‍🔧","🧑🏿‍🔧","👨‍🔧","👨🏻‍🔧","👨🏼‍🔧","👨🏽‍🔧","👨🏾‍🔧","👨🏿‍🔧","👩‍🔧","👩🏻‍🔧","👩🏼‍🔧","👩🏽‍🔧","👩🏾‍🔧","👩🏿‍🔧","🧑‍🏭","🧑🏻‍🏭","🧑🏼‍🏭","🧑🏽‍🏭","🧑🏾‍🏭","🧑🏿‍🏭","👨‍🏭","👨🏻‍🏭","👨🏼‍🏭","👨🏽‍🏭","👨🏾‍🏭","👨🏿‍🏭","👩‍🏭","👩🏻‍🏭","👩🏼‍🏭","👩🏽‍🏭","👩🏾‍🏭","👩🏿‍🏭","🧑‍💼","🧑🏻‍💼","🧑🏼‍💼","🧑🏽‍💼","🧑🏾‍💼","🧑🏿‍💼","👨‍💼","👨🏻‍💼","👨🏼‍💼","👨🏽‍💼","👨🏾‍💼","👨🏿‍💼","👩‍💼","👩🏻‍💼","👩🏼‍💼","👩🏽‍💼","👩🏾‍💼","👩🏿‍💼","🧑‍🔬","🧑🏻‍🔬","🧑🏼‍🔬","🧑🏽‍🔬","🧑🏾‍🔬","🧑🏿‍🔬","👨‍🔬","👨🏻‍🔬","👨🏼‍🔬","👨🏽‍🔬","👨🏾‍🔬","👨🏿‍🔬","👩‍🔬","👩🏻‍🔬","👩🏼‍🔬","👩🏽‍🔬","👩🏾‍🔬","👩🏿‍🔬","🧑‍💻","🧑🏻‍💻","🧑🏼‍💻","🧑🏽‍💻","🧑🏾‍💻","🧑🏿‍💻","👨‍💻","👨🏻‍💻","👨🏼‍💻","👨🏽‍💻","👨🏾‍💻","👨🏿‍💻","👩‍💻","👩🏻‍💻","👩🏼‍💻","👩🏽‍💻","👩🏾‍💻","👩🏿‍💻","🧑‍🎤","🧑🏻‍🎤","🧑🏼‍🎤","🧑🏽‍🎤","🧑🏾‍🎤","🧑🏿‍🎤","👨‍🎤","👨🏻‍🎤","👨🏼‍🎤","👨🏽‍🎤","👨🏾‍🎤","👨🏿‍🎤","👩‍🎤","👩🏻‍🎤","👩🏼‍🎤","👩🏽‍🎤","👩🏾‍🎤","👩🏿‍🎤","🧑‍🎨","🧑🏻‍🎨","🧑🏼‍🎨","🧑🏽‍🎨","🧑🏾‍🎨","🧑🏿‍🎨","👨‍🎨","👨🏻‍🎨","👨🏼‍🎨","👨🏽‍🎨","👨🏾‍🎨","👨🏿‍🎨","👩‍🎨","👩🏻‍🎨","👩🏼‍🎨","👩🏽‍🎨","👩🏾‍🎨","👩🏿‍🎨","🧑‍✈️","🧑🏻‍✈️","🧑🏼‍✈️","🧑🏽‍✈️","🧑🏾‍✈️","🧑🏿‍✈️","👨‍✈️","👨🏻‍✈️","👨🏼‍✈️","👨🏽‍✈️","👨🏾‍✈️","👨🏿‍✈️","👩‍✈️","👩🏻‍✈️","👩🏼‍✈️","👩🏽‍✈️","👩🏾‍✈️","👩🏿‍✈️","🧑‍🚀","🧑🏻‍🚀","🧑🏼‍🚀","🧑🏽‍🚀","🧑🏾‍🚀","🧑🏿‍🚀","👨‍🚀","👨🏻‍🚀","👨🏼‍🚀","👨🏽‍🚀","👨🏾‍🚀","👨🏿‍🚀","👩‍🚀","👩🏻‍🚀","👩🏼‍🚀","👩🏽‍🚀","👩🏾‍🚀","👩🏿‍🚀","🧑‍🚒","🧑🏻‍🚒","🧑🏼‍🚒","🧑🏽‍🚒","🧑🏾‍🚒","🧑🏿‍🚒","👨‍🚒","👨🏻‍🚒","👨🏼‍🚒","👨🏽‍🚒","👨🏾‍🚒","👨🏿‍🚒","👩‍🚒","👩🏻‍🚒","👩🏼‍🚒","👩🏽‍🚒","👩🏾‍🚒","👩🏿‍🚒","👮","👮🏻","👮🏼","👮🏽","👮🏾","👮🏿","👮‍♂️","👮🏻‍♂️","👮🏼‍♂️","👮🏽‍♂️","👮🏾‍♂️","👮🏿‍♂️","👮‍♀️","👮🏻‍♀️","👮🏼‍♀️","👮🏽‍♀️","👮🏾‍♀️","👮🏿‍♀️","🕵️","🕵🏻","🕵🏼","🕵🏽","🕵🏾","🕵🏿","🕵️‍♂️","🕵🏻‍♂️","🕵🏼‍♂️","🕵🏽‍♂️","🕵🏾‍♂️","🕵🏿‍♂️","🕵️‍♀️","🕵🏻‍♀️","🕵🏼‍♀️","🕵🏽‍♀️","🕵🏾‍♀️","🕵🏿‍♀️","💂","💂🏻","💂🏼","💂🏽","💂🏾","💂🏿","💂‍♂️","💂🏻‍♂️","💂🏼‍♂️","💂🏽‍♂️","💂🏾‍♂️","💂🏿‍♂️","💂‍♀️","💂🏻‍♀️","💂🏼‍♀️","💂🏽‍♀️","💂🏾‍♀️","💂🏿‍♀️","🥷","🥷🏻","🥷🏼","🥷🏽","🥷🏾","🥷🏿","👷","👷🏻","👷🏼","👷🏽","👷🏾","👷🏿","👷‍♂️","👷🏻‍♂️","👷🏼‍♂️","👷🏽‍♂️","👷🏾‍♂️","👷🏿‍♂️","👷‍♀️","👷🏻‍♀️","👷🏼‍♀️","👷🏽‍♀️","👷🏾‍♀️","👷🏿‍♀️","🤴","🤴🏻","🤴🏼","🤴🏽","🤴🏾","🤴🏿","👸","👸🏻","👸🏼","👸🏽","👸🏾","👸🏿","👳","👳🏻","👳🏼","👳🏽","👳🏾","👳🏿","👳‍♂️","👳🏻‍♂️","👳🏼‍♂️","👳🏽‍♂️","👳🏾‍♂️","👳🏿‍♂️","👳‍♀️","👳🏻‍♀️","👳🏼‍♀️","👳🏽‍♀️","👳🏾‍♀️","👳🏿‍♀️","👲","👲🏻","👲🏼","👲🏽","👲🏾","👲🏿","🧕","🧕🏻","🧕🏼","🧕🏽","🧕🏾","🧕🏿","🤵","🤵🏻","🤵🏼","🤵🏽","🤵🏾","🤵🏿","🤵‍♂️","🤵🏻‍♂️","🤵🏼‍♂️","🤵🏽‍♂️","🤵🏾‍♂️","🤵🏿‍♂️","🤵‍♀️","🤵🏻‍♀️","🤵🏼‍♀️","🤵🏽‍♀️","🤵🏾‍♀️","🤵🏿‍♀️","👰","👰🏻","👰🏼","👰🏽","👰🏾","👰🏿","👰‍♂️","👰🏻‍♂️","👰🏼‍♂️","👰🏽‍♂️","👰🏾‍♂️","👰🏿‍♂️","👰‍♀️","👰🏻‍♀️","👰🏼‍♀️","👰🏽‍♀️","👰🏾‍♀️","👰🏿‍♀️","🤰","🤰🏻","🤰🏼","🤰🏽","🤰🏾","🤰🏿","🤱","🤱🏻","🤱🏼","🤱🏽","🤱🏾","🤱🏿","👩‍🍼","👩🏻‍🍼","👩🏼‍🍼","👩🏽‍🍼","👩🏾‍🍼","👩🏿‍🍼","👨‍🍼","👨🏻‍🍼","👨🏼‍🍼","👨🏽‍🍼","👨🏾‍🍼","👨🏿‍🍼","🧑‍🍼","🧑🏻‍🍼","🧑🏼‍🍼","🧑🏽‍🍼","🧑🏾‍🍼","🧑🏿‍🍼","👼","👼🏻","👼🏼","👼🏽","👼🏾","👼🏿","🎅","🎅🏻","🎅🏼","🎅🏽","🎅🏾","🎅🏿","🤶","🤶🏻","🤶🏼","🤶🏽","🤶🏾","🤶🏿","🧑‍🎄","🧑🏻‍🎄","🧑🏼‍🎄","🧑🏽‍🎄","🧑🏾‍🎄","🧑🏿‍🎄","🦸","🦸🏻","🦸🏼","🦸🏽","🦸🏾","🦸🏿","🦸‍♂️","🦸🏻‍♂️","🦸🏼‍♂️","🦸🏽‍♂️","🦸🏾‍♂️","🦸🏿‍♂️","🦸‍♀️","🦸🏻‍♀️","🦸🏼‍♀️","🦸🏽‍♀️","🦸🏾‍♀️","🦸🏿‍♀️","🦹","🦹🏻","🦹🏼","🦹🏽","🦹🏾","🦹🏿","🦹‍♂️","🦹🏻‍♂️","🦹🏼‍♂️","🦹🏽‍♂️","🦹🏾‍♂️","🦹🏿‍♂️","🦹‍♀️","🦹🏻‍♀️","🦹🏼‍♀️","🦹🏽‍♀️","🦹🏾‍♀️","🦹🏿‍♀️","🧙","🧙🏻","🧙🏼","🧙🏽","🧙🏾","🧙🏿","🧙‍♂️","🧙🏻‍♂️","🧙🏼‍♂️","🧙🏽‍♂️","🧙🏾‍♂️","🧙🏿‍♂️","🧙‍♀️","🧙🏻‍♀️","🧙🏼‍♀️","🧙🏽‍♀️","🧙🏾‍♀️","🧙🏿‍♀️","🧚","🧚🏻","🧚🏼","🧚🏽","🧚🏾","🧚🏿","🧚‍♂️","🧚🏻‍♂️","🧚🏼‍♂️","🧚🏽‍♂️","🧚🏾‍♂️","🧚🏿‍♂️","🧚‍♀️","🧚🏻‍♀️","🧚🏼‍♀️","🧚🏽‍♀️","🧚🏾‍♀️","🧚🏿‍♀️","🧛","🧛🏻","🧛🏼","🧛🏽","🧛🏾","🧛🏿","🧛‍♂️","🧛🏻‍♂️","🧛🏼‍♂️","🧛🏽‍♂️","🧛🏾‍♂️","🧛🏿‍♂️","🧛‍♀️","🧛🏻‍♀️","🧛🏼‍♀️","🧛🏽‍♀️","🧛🏾‍♀️","🧛🏿‍♀️","🧜","🧜🏻","🧜🏼","🧜🏽","🧜🏾","🧜🏿","🧜‍♂️","🧜🏻‍♂️","🧜🏼‍♂️","🧜🏽‍♂️","🧜🏾‍♂️","🧜🏿‍♂️","🧜‍♀️","🧜🏻‍♀️","🧜🏼‍♀️","🧜🏽‍♀️","🧜🏾‍♀️","🧜🏿‍♀️","🧝","🧝🏻","🧝🏼","🧝🏽","🧝🏾","🧝🏿","🧝‍♂️","🧝🏻‍♂️","🧝🏼‍♂️","🧝🏽‍♂️","🧝🏾‍♂️","🧝🏿‍♂️","🧝‍♀️","🧝🏻‍♀️","🧝🏼‍♀️","🧝🏽‍♀️","🧝🏾‍♀️","🧝🏿‍♀️","🧞","🧞‍♂️","🧞‍♀️","🧟","🧟‍♂️","🧟‍♀️","💆","💆🏻","💆🏼","💆🏽","💆🏾","💆🏿","💆‍♂️","💆🏻‍♂️","💆🏼‍♂️","💆🏽‍♂️","💆🏾‍♂️","💆🏿‍♂️","💆‍♀️","💆🏻‍♀️","💆🏼‍♀️","💆🏽‍♀️","💆🏾‍♀️","💆🏿‍♀️","💇","💇🏻","💇🏼","💇🏽","💇🏾","💇🏿","💇‍♂️","💇🏻‍♂️","💇🏼‍♂️","💇🏽‍♂️","💇🏾‍♂️","💇🏿‍♂️","💇‍♀️","💇🏻‍♀️","💇🏼‍♀️","💇🏽‍♀️","💇🏾‍♀️","💇🏿‍♀️","🚶","🚶🏻","🚶🏼","🚶🏽","🚶🏾","🚶🏿","🚶‍♂️","🚶🏻‍♂️","🚶🏼‍♂️","🚶🏽‍♂️","🚶🏾‍♂️","🚶🏿‍♂️","🚶‍♀️","🚶🏻‍♀️","🚶🏼‍♀️","🚶🏽‍♀️","🚶🏾‍♀️","🚶🏿‍♀️","🧍","🧍🏻","🧍🏼","🧍🏽","🧍🏾","🧍🏿","🧍‍♂️","🧍🏻‍♂️","🧍🏼‍♂️","🧍🏽‍♂️","🧍🏾‍♂️","🧍🏿‍♂️","🧍‍♀️","🧍🏻‍♀️","🧍🏼‍♀️","🧍🏽‍♀️","🧍🏾‍♀️","🧍🏿‍♀️","🧎","🧎🏻","🧎🏼","🧎🏽","🧎🏾","🧎🏿","🧎‍♂️","🧎🏻‍♂️","🧎🏼‍♂️","🧎🏽‍♂️","🧎🏾‍♂️","🧎🏿‍♂️","🧎‍♀️","🧎🏻‍♀️","🧎🏼‍♀️","🧎🏽‍♀️","🧎🏾‍♀️","🧎🏿‍♀️","🧑‍🦯","🧑🏻‍🦯","🧑🏼‍🦯","🧑🏽‍🦯","🧑🏾‍🦯","🧑🏿‍🦯","👨‍🦯","👨🏻‍🦯","👨🏼‍🦯","👨🏽‍🦯","👨🏾‍🦯","👨🏿‍🦯","👩‍🦯","👩🏻‍🦯","👩🏼‍🦯","👩🏽‍🦯","👩🏾‍🦯","👩🏿‍🦯","🧑‍🦼","🧑🏻‍🦼","🧑🏼‍🦼","🧑🏽‍🦼","🧑🏾‍🦼","🧑🏿‍🦼","👨‍🦼","👨🏻‍🦼","👨🏼‍🦼","👨🏽‍🦼","👨🏾‍🦼","👨🏿‍🦼","👩‍🦼","👩🏻‍🦼","👩🏼‍🦼","👩🏽‍🦼","👩🏾‍🦼","👩🏿‍🦼","🧑‍🦽","🧑🏻‍🦽","🧑🏼‍🦽","🧑🏽‍🦽","🧑🏾‍🦽","🧑🏿‍🦽","👨‍🦽","👨🏻‍🦽","👨🏼‍🦽","👨🏽‍🦽","👨🏾‍🦽","👨🏿‍🦽","👩‍🦽","👩🏻‍🦽","👩🏼‍🦽","👩🏽‍🦽","👩🏾‍🦽","👩🏿‍🦽","🏃","🏃🏻","🏃🏼","🏃🏽","🏃🏾","🏃🏿","🏃‍♂️","🏃🏻‍♂️","🏃🏼‍♂️","🏃🏽‍♂️","🏃🏾‍♂️","🏃🏿‍♂️","🏃‍♀️","🏃🏻‍♀️","🏃🏼‍♀️","🏃🏽‍♀️","🏃🏾‍♀️","🏃🏿‍♀️","💃","💃🏻","💃🏼","💃🏽","💃🏾","💃🏿","🕺","🕺🏻","🕺🏼","🕺🏽","🕺🏾","🕺🏿","🕴️","🕴🏻","🕴🏼","🕴🏽","🕴🏾","🕴🏿","👯","👯‍♂️","👯‍♀️","🧖","🧖🏻","🧖🏼","🧖🏽","🧖🏾","🧖🏿","🧖‍♂️","🧖🏻‍♂️","🧖🏼‍♂️","🧖🏽‍♂️","🧖🏾‍♂️","🧖🏿‍♂️","🧖‍♀️","🧖🏻‍♀️","🧖🏼‍♀️","🧖🏽‍♀️","🧖🏾‍♀️","🧖🏿‍♀️","🧗","🧗🏻","🧗🏼","🧗🏽","🧗🏾","🧗🏿","🧗‍♂️","🧗🏻‍♂️","🧗🏼‍♂️","🧗🏽‍♂️","🧗🏾‍♂️","🧗🏿‍♂️","🧗‍♀️","🧗🏻‍♀️","🧗🏼‍♀️","🧗🏽‍♀️","🧗🏾‍♀️","🧗🏿‍♀️","🤺","🏇","🏇🏻","🏇🏼","🏇🏽","🏇🏾","🏇🏿","⛷️","🏂","🏂🏻","🏂🏼","🏂🏽","🏂🏾","🏂🏿","🏌️","🏌🏻","🏌🏼","🏌🏽","🏌🏾","🏌🏿","🏌️‍♂️","🏌🏻‍♂️","🏌🏼‍♂️","🏌🏽‍♂️","🏌🏾‍♂️","🏌🏿‍♂️","🏌️‍♀️","🏌🏻‍♀️","🏌🏼‍♀️","🏌🏽‍♀️","🏌🏾‍♀️","🏌🏿‍♀️","🏄","🏄🏻","🏄🏼","🏄🏽","🏄🏾","🏄🏿","🏄‍♂️","🏄🏻‍♂️","🏄🏼‍♂️","🏄🏽‍♂️","🏄🏾‍♂️","🏄🏿‍♂️","🏄‍♀️","🏄🏻‍♀️","🏄🏼‍♀️","🏄🏽‍♀️","🏄🏾‍♀️","🏄🏿‍♀️","🚣","🚣🏻","🚣🏼","🚣🏽","🚣🏾","🚣🏿","🚣‍♂️","🚣🏻‍♂️","🚣🏼‍♂️","🚣🏽‍♂️","🚣🏾‍♂️","🚣🏿‍♂️","🚣‍♀️","🚣🏻‍♀️","🚣🏼‍♀️","🚣🏽‍♀️","🚣🏾‍♀️","🚣🏿‍♀️","🏊","🏊🏻","🏊🏼","🏊🏽","🏊🏾","🏊🏿","🏊‍♂️","🏊🏻‍♂️","🏊🏼‍♂️","🏊🏽‍♂️","🏊🏾‍♂️","🏊🏿‍♂️","🏊‍♀️","🏊🏻‍♀️","🏊🏼‍♀️","🏊🏽‍♀️","🏊🏾‍♀️","🏊🏿‍♀️","⛹️","⛹🏻","⛹🏼","⛹🏽","⛹🏾","⛹🏿","⛹️‍♂️","⛹🏻‍♂️","⛹🏼‍♂️","⛹🏽‍♂️","⛹🏾‍♂️","⛹🏿‍♂️","⛹️‍♀️","⛹🏻‍♀️","⛹🏼‍♀️","⛹🏽‍♀️","⛹🏾‍♀️","⛹🏿‍♀️","🏋️","🏋🏻","🏋🏼","🏋🏽","🏋🏾","🏋🏿","🏋️‍♂️","🏋🏻‍♂️","🏋🏼‍♂️","🏋🏽‍♂️","🏋🏾‍♂️","🏋🏿‍♂️","🏋️‍♀️","🏋🏻‍♀️","🏋🏼‍♀️","🏋🏽‍♀️","🏋🏾‍♀️","🏋🏿‍♀️","🚴","🚴🏻","🚴🏼","🚴🏽","🚴🏾","🚴🏿","🚴‍♂️","🚴🏻‍♂️","🚴🏼‍♂️","🚴🏽‍♂️","🚴🏾‍♂️","🚴🏿‍♂️","🚴‍♀️","🚴🏻‍♀️","🚴🏼‍♀️","🚴🏽‍♀️","🚴🏾‍♀️","🚴🏿‍♀️","🚵","🚵🏻","🚵🏼","🚵🏽","🚵🏾","🚵🏿","🚵‍♂️","🚵🏻‍♂️","🚵🏼‍♂️","🚵🏽‍♂️","🚵🏾‍♂️","🚵🏿‍♂️","🚵‍♀️","🚵🏻‍♀️","🚵🏼‍♀️","🚵🏽‍♀️","🚵🏾‍♀️","🚵🏿‍♀️","🤸","🤸🏻","🤸🏼","🤸🏽","🤸🏾","🤸🏿","🤸‍♂️","🤸🏻‍♂️","🤸🏼‍♂️","🤸🏽‍♂️","🤸🏾‍♂️","🤸🏿‍♂️","🤸‍♀️","🤸🏻‍♀️","🤸🏼‍♀️","🤸🏽‍♀️","🤸🏾‍♀️","🤸🏿‍♀️","🤼","🤼‍♂️","🤼‍♀️","🤽","🤽🏻","🤽🏼","🤽🏽","🤽🏾","🤽🏿","🤽‍♂️","🤽🏻‍♂️","🤽🏼‍♂️","🤽🏽‍♂️","🤽🏾‍♂️","🤽🏿‍♂️","🤽‍♀️","🤽🏻‍♀️","🤽🏼‍♀️","🤽🏽‍♀️","🤽🏾‍♀️","🤽🏿‍♀️","🤾","🤾🏻","🤾🏼","🤾🏽","🤾🏾","🤾🏿","🤾‍♂️","🤾🏻‍♂️","🤾🏼‍♂️","🤾🏽‍♂️","🤾🏾‍♂️","🤾🏿‍♂️","🤾‍♀️","🤾🏻‍♀️","🤾🏼‍♀️","🤾🏽‍♀️","🤾🏾‍♀️","🤾🏿‍♀️","🤹","🤹🏻","🤹🏼","🤹🏽","🤹🏾","🤹🏿","🤹‍♂️","🤹🏻‍♂️","🤹🏼‍♂️","🤹🏽‍♂️","🤹🏾‍♂️","🤹🏿‍♂️","🤹‍♀️","🤹🏻‍♀️","🤹🏼‍♀️","🤹🏽‍♀️","🤹🏾‍♀️","🤹🏿‍♀️","🧘","🧘🏻","🧘🏼","🧘🏽","🧘🏾","🧘🏿","🧘‍♂️","🧘🏻‍♂️","🧘🏼‍♂️","🧘🏽‍♂️","🧘🏾‍♂️","🧘🏿‍♂️","🧘‍♀️","🧘🏻‍♀️","🧘🏼‍♀️","🧘🏽‍♀️","🧘🏾‍♀️","🧘🏿‍♀️","🛀","🛀🏻","🛀🏼","🛀🏽","🛀🏾","🛀🏿","🛌","🛌🏻","🛌🏼","🛌🏽","🛌🏾","🛌🏿","🧑‍🤝‍🧑","🧑🏻‍🤝‍🧑🏻","🧑🏻‍🤝‍🧑🏼","🧑🏻‍🤝‍🧑🏽","🧑🏻‍🤝‍🧑🏾","🧑🏻‍🤝‍🧑🏿","🧑🏼‍🤝‍🧑🏻","🧑🏼‍🤝‍🧑🏼","🧑🏼‍🤝‍🧑🏽","🧑🏼‍🤝‍🧑🏾","🧑🏼‍🤝‍🧑🏿","🧑🏽‍🤝‍🧑🏻","🧑🏽‍🤝‍🧑🏼","🧑🏽‍🤝‍🧑🏽","🧑🏽‍🤝‍🧑🏾","🧑🏽‍🤝‍🧑🏿","🧑🏾‍🤝‍🧑🏻","🧑🏾‍🤝‍🧑🏼","🧑🏾‍🤝‍🧑🏽","🧑🏾‍🤝‍🧑🏾","🧑🏾‍🤝‍🧑🏿","🧑🏿‍🤝‍🧑🏻","🧑🏿‍🤝‍🧑🏼","🧑🏿‍🤝‍🧑🏽","🧑🏿‍🤝‍🧑🏾","🧑🏿‍🤝‍🧑🏿","👭","👭🏻","👩🏻‍🤝‍👩🏼","👩🏻‍🤝‍👩🏽","👩🏻‍🤝‍👩🏾","👩🏻‍🤝‍👩🏿","👩🏼‍🤝‍👩🏻","👭🏼","👩🏼‍🤝‍👩🏽","👩🏼‍🤝‍👩🏾","👩🏼‍🤝‍👩🏿","👩🏽‍🤝‍👩🏻","👩🏽‍🤝‍👩🏼","👭🏽","👩🏽‍🤝‍👩🏾","👩🏽‍🤝‍👩🏿","👩🏾‍🤝‍👩🏻","👩🏾‍🤝‍👩🏼","👩🏾‍🤝‍👩🏽","👭🏾","👩🏾‍🤝‍👩🏿","👩🏿‍🤝‍👩🏻","👩🏿‍🤝‍👩🏼","👩🏿‍🤝‍👩🏽","👩🏿‍🤝‍👩🏾","👭🏿","👫","👫🏻","👩🏻‍🤝‍👨🏼","👩🏻‍🤝‍👨🏽","👩🏻‍🤝‍👨🏾","👩🏻‍🤝‍👨🏿","👩🏼‍🤝‍👨🏻","👫🏼","👩🏼‍🤝‍👨🏽","👩🏼‍🤝‍👨🏾","👩🏼‍🤝‍👨🏿","👩🏽‍🤝‍👨🏻","👩🏽‍🤝‍👨🏼","👫🏽","👩🏽‍🤝‍👨🏾","👩🏽‍🤝‍👨🏿","👩🏾‍🤝‍👨🏻","👩🏾‍🤝‍👨🏼","👩🏾‍🤝‍👨🏽","👫🏾","👩🏾‍🤝‍👨🏿","👩🏿‍🤝‍👨🏻","👩🏿‍🤝‍👨🏼","👩🏿‍🤝‍👨🏽","👩🏿‍🤝‍👨🏾","👫🏿","👬","👬🏻","👨🏻‍🤝‍👨🏼","👨🏻‍🤝‍👨🏽","👨🏻‍🤝‍👨🏾","👨🏻‍🤝‍👨🏿","👨🏼‍🤝‍👨🏻","👬🏼","👨🏼‍🤝‍👨🏽","👨🏼‍🤝‍👨🏾","👨🏼‍🤝‍👨🏿","👨🏽‍🤝‍👨🏻","👨🏽‍🤝‍👨🏼","👬🏽","👨🏽‍🤝‍👨🏾","👨🏽‍🤝‍👨🏿","👨🏾‍🤝‍👨🏻","👨🏾‍🤝‍👨🏼","👨🏾‍🤝‍👨🏽","👬🏾","👨🏾‍🤝‍👨🏿","👨🏿‍🤝‍👨🏻","👨🏿‍🤝‍👨🏼","👨🏿‍🤝‍👨🏽","👨🏿‍🤝‍👨🏾","👬🏿","💏","💏🏻","💏🏼","💏🏽","💏🏾","💏🏿","🧑🏻‍❤️‍💋‍🧑🏼","🧑🏻‍❤️‍💋‍🧑🏽","🧑🏻‍❤️‍💋‍🧑🏾","🧑🏻‍❤️‍💋‍🧑🏿","🧑🏼‍❤️‍💋‍🧑🏻","🧑🏼‍❤️‍💋‍🧑🏽","🧑🏼‍❤️‍💋‍🧑🏾","🧑🏼‍❤️‍💋‍🧑🏿","🧑🏽‍❤️‍💋‍🧑🏻","🧑🏽‍❤️‍💋‍🧑🏼","🧑🏽‍❤️‍💋‍🧑🏾","🧑🏽‍❤️‍💋‍🧑🏿","🧑🏾‍❤️‍💋‍🧑🏻","🧑🏾‍❤️‍💋‍🧑🏼","🧑🏾‍❤️‍💋‍🧑🏽","🧑🏾‍❤️‍💋‍🧑🏿","🧑🏿‍❤️‍💋‍🧑🏻","🧑🏿‍❤️‍💋‍🧑🏼","🧑🏿‍❤️‍💋‍🧑🏽","🧑🏿‍❤️‍💋‍🧑🏾","👩‍❤️‍💋‍👨","👩🏻‍❤️‍💋‍👨🏻","👩🏻‍❤️‍💋‍👨🏼","👩🏻‍❤️‍💋‍👨🏽","👩🏻‍❤️‍💋‍👨🏾","👩🏻‍❤️‍💋‍👨🏿","👩🏼‍❤️‍💋‍👨🏻","👩🏼‍❤️‍💋‍👨🏼","👩🏼‍❤️‍💋‍👨🏽","👩🏼‍❤️‍💋‍👨🏾","👩🏼‍❤️‍💋‍👨🏿","👩🏽‍❤️‍💋‍👨🏻","👩🏽‍❤️‍💋‍👨🏼","👩🏽‍❤️‍💋‍👨🏽","👩🏽‍❤️‍💋‍👨🏾","👩🏽‍❤️‍💋‍👨🏿","👩🏾‍❤️‍💋‍👨🏻","👩🏾‍❤️‍💋‍👨🏼","👩🏾‍❤️‍💋‍👨🏽","👩🏾‍❤️‍💋‍👨🏾","👩🏾‍❤️‍💋‍👨🏿","👩🏿‍❤️‍💋‍👨🏻","👩🏿‍❤️‍💋‍👨🏼","👩🏿‍❤️‍💋‍👨🏽","👩🏿‍❤️‍💋‍👨🏾","👩🏿‍❤️‍💋‍👨🏿","👨‍❤️‍💋‍👨","👨🏻‍❤️‍💋‍👨🏻","👨🏻‍❤️‍💋‍👨🏼","👨🏻‍❤️‍💋‍👨🏽","👨🏻‍❤️‍💋‍👨🏾","👨🏻‍❤️‍💋‍👨🏿","👨🏼‍❤️‍💋‍👨🏻","👨🏼‍❤️‍💋‍👨🏼","👨🏼‍❤️‍💋‍👨🏽","👨🏼‍❤️‍💋‍👨🏾","👨🏼‍❤️‍💋‍👨🏿","👨🏽‍❤️‍💋‍👨🏻","👨🏽‍❤️‍💋‍👨🏼","👨🏽‍❤️‍💋‍👨🏽","👨🏽‍❤️‍💋‍👨🏾","👨🏽‍❤️‍💋‍👨🏿","👨🏾‍❤️‍💋‍👨🏻","👨🏾‍❤️‍💋‍👨🏼","👨🏾‍❤️‍💋‍👨🏽","👨🏾‍❤️‍💋‍👨🏾","👨🏾‍❤️‍💋‍👨🏿","👨🏿‍❤️‍💋‍👨🏻","👨🏿‍❤️‍💋‍👨🏼","👨🏿‍❤️‍💋‍👨🏽","👨🏿‍❤️‍💋‍👨🏾","👨🏿‍❤️‍💋‍👨🏿","👩‍❤️‍💋‍👩","👩🏻‍❤️‍💋‍👩🏻","👩🏻‍❤️‍💋‍👩🏼","👩🏻‍❤️‍💋‍👩🏽","👩🏻‍❤️‍💋‍👩🏾","👩🏻‍❤️‍💋‍👩🏿","👩🏼‍❤️‍💋‍👩🏻","👩🏼‍❤️‍💋‍👩🏼","👩🏼‍❤️‍💋‍👩🏽","👩🏼‍❤️‍💋‍👩🏾","👩🏼‍❤️‍💋‍👩🏿","👩🏽‍❤️‍💋‍👩🏻","👩🏽‍❤️‍💋‍👩🏼","👩🏽‍❤️‍💋‍👩🏽","👩🏽‍❤️‍💋‍👩🏾","👩🏽‍❤️‍💋‍👩🏿","👩🏾‍❤️‍💋‍👩🏻","👩🏾‍❤️‍💋‍👩🏼","👩🏾‍❤️‍💋‍👩🏽","👩🏾‍❤️‍💋‍👩🏾","👩🏾‍❤️‍💋‍👩🏿","👩🏿‍❤️‍💋‍👩🏻","👩🏿‍❤️‍💋‍👩🏼","👩🏿‍❤️‍💋‍👩🏽","👩🏿‍❤️‍💋‍👩🏾","👩🏿‍❤️‍💋‍👩🏿","💑","💑🏻","💑🏼","💑🏽","💑🏾","💑🏿","🧑🏻‍❤️‍🧑🏼","🧑🏻‍❤️‍🧑🏽","🧑🏻‍❤️‍🧑🏾","🧑🏻‍❤️‍🧑🏿","🧑🏼‍❤️‍🧑🏻","🧑🏼‍❤️‍🧑🏽","🧑🏼‍❤️‍🧑🏾","🧑🏼‍❤️‍🧑🏿","🧑🏽‍❤️‍🧑🏻","🧑🏽‍❤️‍🧑🏼","🧑🏽‍❤️‍🧑🏾","🧑🏽‍❤️‍🧑🏿","🧑🏾‍❤️‍🧑🏻","🧑🏾‍❤️‍🧑🏼","🧑🏾‍❤️‍🧑🏽","🧑🏾‍❤️‍🧑🏿","🧑🏿‍❤️‍🧑🏻","🧑🏿‍❤️‍🧑🏼","🧑🏿‍❤️‍🧑🏽","🧑🏿‍❤️‍🧑🏾","👩‍❤️‍👨","👩🏻‍❤️‍👨🏻","👩🏻‍❤️‍👨🏼","👩🏻‍❤️‍👨🏽","👩🏻‍❤️‍👨🏾","👩🏻‍❤️‍👨🏿","👩🏼‍❤️‍👨🏻","👩🏼‍❤️‍👨🏼","👩🏼‍❤️‍👨🏽","👩🏼‍❤️‍👨🏾","👩🏼‍❤️‍👨🏿","👩🏽‍❤️‍👨🏻","👩🏽‍❤️‍👨🏼","👩🏽‍❤️‍👨🏽","👩🏽‍❤️‍👨🏾","👩🏽‍❤️‍👨🏿","👩🏾‍❤️‍👨🏻","👩🏾‍❤️‍👨🏼","👩🏾‍❤️‍👨🏽","👩🏾‍❤️‍👨🏾","👩🏾‍❤️‍👨🏿","👩🏿‍❤️‍👨🏻","👩🏿‍❤️‍👨🏼","👩🏿‍❤️‍👨🏽","👩🏿‍❤️‍👨🏾","👩🏿‍❤️‍👨🏿","👨‍❤️‍👨","👨🏻‍❤️‍👨🏻","👨🏻‍❤️‍👨🏼","👨🏻‍❤️‍👨🏽","👨🏻‍❤️‍👨🏾","👨🏻‍❤️‍👨🏿","👨🏼‍❤️‍👨🏻","👨🏼‍❤️‍👨🏼","👨🏼‍❤️‍👨🏽","👨🏼‍❤️‍👨🏾","👨🏼‍❤️‍👨🏿","👨🏽‍❤️‍👨🏻","👨🏽‍❤️‍👨🏼","👨🏽‍❤️‍👨🏽","👨🏽‍❤️‍👨🏾","👨🏽‍❤️‍👨🏿","👨🏾‍❤️‍👨🏻","👨🏾‍❤️‍👨🏼","👨🏾‍❤️‍👨🏽","👨🏾‍❤️‍👨🏾","👨🏾‍❤️‍👨🏿","👨🏿‍❤️‍👨🏻","👨🏿‍❤️‍👨🏼","👨🏿‍❤️‍👨🏽","👨🏿‍❤️‍👨🏾","👨🏿‍❤️‍👨🏿","👩‍❤️‍👩","👩🏻‍❤️‍👩🏻","👩🏻‍❤️‍👩🏼","👩🏻‍❤️‍👩🏽","👩🏻‍❤️‍👩🏾","👩🏻‍❤️‍👩🏿","👩🏼‍❤️‍👩🏻","👩🏼‍❤️‍👩🏼","👩🏼‍❤️‍👩🏽","👩🏼‍❤️‍👩🏾","👩🏼‍❤️‍👩🏿","👩🏽‍❤️‍👩🏻","👩🏽‍❤️‍👩🏼","👩🏽‍❤️‍👩🏽","👩🏽‍❤️‍👩🏾","👩🏽‍❤️‍👩🏿","👩🏾‍❤️‍👩🏻","👩🏾‍❤️‍👩🏼","👩🏾‍❤️‍👩🏽","👩🏾‍❤️‍👩🏾","👩🏾‍❤️‍👩🏿","👩🏿‍❤️‍👩🏻","👩🏿‍❤️‍👩🏼","👩🏿‍❤️‍👩🏽","👩🏿‍❤️‍👩🏾","👩🏿‍❤️‍👩🏿","👪","👨‍👩‍👦","👨‍👩‍👧","👨‍👩‍👧‍👦","👨‍👩‍👦‍👦","👨‍👩‍👧‍👧","👨‍👨‍👦","👨‍👨‍👧","👨‍👨‍👧‍👦","👨‍👨‍👦‍👦","👨‍👨‍👧‍👧","👩‍👩‍👦","👩‍👩‍👧","👩‍👩‍👧‍👦","👩‍👩‍👦‍👦","👩‍👩‍👧‍👧","👨‍👦","👨‍👦‍👦","👨‍👧","👨‍👧‍👦","👨‍👧‍👧","👩‍👦","👩‍👦‍👦","👩‍👧","👩‍👧‍👦","👩‍👧‍👧","🗣️","👤","👥","🫂","👣"],nature:["🐵","🐒","🦍","🦧","🐶","🐕","🦮","🐕‍🦺","🐩","🐺","🦊","🦝","🐱","🐈","🐈‍⬛","🦁","🐯","🐅","🐆","🐴","🐎","🦄","🦓","🦌","🦬","🐮","🐂","🐃","🐄","🐷","🐖","🐗","🐽","🐏","🐑","🐐","🐪","🐫","🦙","🦒","🐘","🦣","🦏","🦛","🐭","🐁","🐀","🐹","🐰","🐇","🐿️","🦫","🦔","🦇","🐻","🐻‍❄️","🐨","🐼","🦥","🦦","🦨","🦘","🦡","🐾","🦃","🐔","🐓","🐣","🐤","🐥","🐦","🐧","🕊️","🦅","🦆","🦢","🦉","🦤","🪶","🦩","🦚","🦜","🐸","🐊","🐢","🦎","🐍","🐲","🐉","🦕","🦖","🐳","🐋","🐬","🦭","🐟","🐠","🐡","🦈","🐙","🐚","🐌","🦋","🐛","🐜","🐝","🪲","🐞","🦗","🪳","🕷️","🕸️","🦂","🦟","🪰","🪱","🦠","💐","🌸","💮","🏵️","🌹","🥀","🌺","🌻","🌼","🌷","🌱","🪴","🌲","🌳","🌴","🌵","🌾","🌿","☘️","🍀","🍁","🍂","🍃"],food:["🍇","🍈","🍉","🍊","🍋","🍌","🍍","🥭","🍎","🍏","🍐","🍑","🍒","🍓","🫐","🥝","🍅","🫒","🥥","🥑","🍆","🥔","🥕","🌽","🌶️","🫑","🥒","🥬","🥦","🧄","🧅","🍄","🥜","🌰","🍞","🥐","🥖","🫓","🥨","🥯","🥞","🧇","🧀","🍖","🍗","🥩","🥓","🍔","🍟","🍕","🌭","🥪","🌮","🌯","🫔","🥙","🧆","🥚","🍳","🥘","🍲","🫕","🥣","🥗","🍿","🧈","🧂","🥫","🍱","🍘","🍙","🍚","🍛","🍜","🍝","🍠","🍢","🍣","🍤","🍥","🥮","🍡","🥟","🥠","🥡","🦀","🦞","🦐","🦑","🦪","🍦","🍧","🍨","🍩","🍪","🎂","🍰","🧁","🥧","🍫","🍬","🍭","🍮","🍯","🍼","🥛","☕","🫖","🍵","🍶","🍾","🍷","🍸","🍹","🍺","🍻","🥂","🥃","🥤","🧋","🧃","🧉","🧊","🥢","🍽️","🍴","🥄","🔪","🏺"],travel:["🌍","🌎","🌏","🌐","🗺️","🗾","🧭","🏔️","⛰️","🌋","🗻","🏕️","🏖️","🏜️","🏝️","🏞️","🏟️","🏛️","🏗️","🧱","🪨","🪵","🛖","🏘️","🏚️","🏠","🏡","🏢","🏣","🏤","🏥","🏦","🏨","🏩","🏪","🏫","🏬","🏭","🏯","🏰","💒","🗼","🗽","⛪","🕌","🛕","🕍","⛩️","🕋","⛲","⛺","🌁","🌃","🏙️","🌄","🌅","🌆","🌇","🌉","♨️","🎠","🎡","🎢","💈","🎪","🚂","🚃","🚄","🚅","🚆","🚇","🚈","🚉","🚊","🚝","🚞","🚋","🚌","🚍","🚎","🚐","🚑","🚒","🚓","🚔","🚕","🚖","🚗","🚘","🚙","🛻","🚚","🚛","🚜","🏎️","🏍️","🛵","🦽","🦼","🛺","🚲","🛴","🛹","🛼","🚏","🛣️","🛤️","🛢️","⛽","🚨","🚥","🚦","🛑","🚧","⚓","⛵","🛶","🚤","🛳️","⛴️","🛥️","🚢","✈️","🛩️","🛫","🛬","🪂","💺","🚁","🚟","🚠","🚡","🛰️","🚀","🛸","🛎️","🧳","⌛","⏳","⌚","⏰","⏱️","⏲️","🕰️","🕛","🕧","🕐","🕜","🕑","🕝","🕒","🕞","🕓","🕟","🕔","🕠","🕕","🕡","🕖","🕢","🕗","🕣","🕘","🕤","🕙","🕥","🕚","🕦","🌑","🌒","🌓","🌔","🌕","🌖","🌗","🌘","🌙","🌚","🌛","🌜","🌡️","☀️","🌝","🌞","🪐","⭐","🌟","🌠","🌌","☁️","⛅","⛈️","🌤️","🌥️","🌦️","🌧️","🌨️","🌩️","🌪️","🌫️","🌬️","🌀","🌈","🌂","☂️","☔","⛱️","⚡","❄️","☃️","⛄","☄️","🔥","💧","🌊"],activity:["🎃","🎄","🎆","🎇","🧨","✨","🎈","🎉","🎊","🎋","🎍","🎎","🎏","🎐","🎑","🧧","🎀","🎁","🎗️","🎟️","🎫","🎖️","🏆","🏅","🥇","🥈","🥉","⚽","⚾","🥎","🏀","🏐","🏈","🏉","🎾","🥏","🎳","🏏","🏑","🏒","🥍","🏓","🏸","🥊","🥋","🥅","⛳","⛸️","🎣","🤿","🎽","🎿","🛷","🥌","🎯","🪀","🪁","🎱","🔮","🪄","🧿","🎮","🕹️","🎰","🎲","🧩","🧸","🪅","🪆","♠️","♥️","♦️","♣️","♟️","🃏","🀄","🎴","🎭","🖼️","🎨","🧵","🪡","🧶","🪢"],object:["👓","🕶️","🥽","🥼","🦺","👔","👕","👖","🧣","🧤","🧥","🧦","👗","👘","🥻","🩱","🩲","🩳","👙","👚","👛","👜","👝","🛍️","🎒","🩴","👞","👟","🥾","🥿","👠","👡","🩰","👢","👑","👒","🎩","🎓","🧢","🪖","⛑️","📿","💄","💍","💎","🔇","🔈","🔉","🔊","📢","📣","📯","🔔","🔕","🎼","🎵","🎶","🎙️","🎚️","🎛️","🎤","🎧","📻","🎷","🪗","🎸","🎹","🎺","🎻","🪕","🥁","🪘","📱","📲","☎️","📞","📟","📠","🔋","🔌","💻","🖥️","🖨️","⌨️","🖱️","🖲️","💽","💾","💿","📀","🧮","🎥","🎞️","📽️","🎬","📺","📷","📸","📹","📼","🔍","🔎","🕯️","💡","🔦","🏮","🪔","📔","📕","📖","📗","📘","📙","📚","📓","📒","📃","📜","📄","📰","🗞️","📑","🔖","🏷️","💰","🪙","💴","💵","💶","💷","💸","💳","🧾","💹","✉️","📧","📨","📩","📤","📥","📦","📫","📪","📬","📭","📮","🗳️","✏️","✒️","🖋️","🖊️","🖌️","🖍️","📝","💼","📁","📂","🗂️","📅","📆","🗒️","🗓️","📇","📈","📉","📊","📋","📌","📍","📎","🖇️","📏","📐","✂️","🗃️","🗄️","🗑️","🔒","🔓","🔏","🔐","🔑","🗝️","🔨","🪓","⛏️","⚒️","🛠️","🗡️","⚔️","🔫","🪃","🏹","🛡️","🪚","🔧","🪛","🔩","⚙️","🗜️","⚖️","🦯","🔗","⛓️","🪝","🧰","🧲","🪜","⚗️","🧪","🧫","🧬","🔬","🔭","📡","💉","🩸","💊","🩹","🩺","🚪","🛗","🪞","🪟","🛏️","🛋️","🪑","🚽","🪠","🚿","🛁","🪤","🪒","🧴","🧷","🧹","🧺","🧻","🪣","🧼","🪥","🧽","🧯","🛒","🚬","⚰️","🪦","⚱️","🗿","🪧"],symbol:["🏧","🚮","🚰","♿","🚹","🚺","🚻","🚼","🚾","🛂","🛃","🛄","🛅","⚠️","🚸","⛔","🚫","🚳","🚭","🚯","🚱","🚷","📵","🔞","☢️","☣️","⬆️","↗️","➡️","↘️","⬇️","↙️","⬅️","↖️","↕️","↔️","↩️","↪️","⤴️","⤵️","🔃","🔄","🔙","🔚","🔛","🔜","🔝","🛐","⚛️","🕉️","✡️","☸️","☯️","✝️","☦️","☪️","☮️","🕎","🔯","♈","♉","♊","♋","♌","♍","♎","♏","♐","♑","♒","♓","⛎","🔀","🔁","🔂","▶️","⏩","⏭️","⏯️","◀️","⏪","⏮️","🔼","⏫","🔽","⏬","⏸️","⏹️","⏺️","⏏️","🎦","🔅","🔆","📶","📳","📴","♀️","♂️","⚧️","✖️","➕","➖","➗","♾️","‼️","⁉️","❓","❔","❕","❗","〰️","💱","💲","⚕️","♻️","⚜️","🔱","📛","🔰","⭕","✅","☑️","✔️","❌","❎","➰","➿","〽️","✳️","✴️","❇️","©️","®️","™️","#️⃣","*️⃣","0️⃣","1️⃣","2️⃣","3️⃣","4️⃣","5️⃣","6️⃣","7️⃣","8️⃣","9️⃣","🔟","🔠","🔡","🔢","🔣","🔤","🅰️","🆎","🅱️","🆑","🆒","🆓","ℹ️","🆔","Ⓜ️","🆕","🆖","🅾️","🆗","🅿️","🆘","🆙","🆚","🈁","🈂️","🈷️","🈶","🈯","🉐","🈹","🈚","🈲","🉑","🈸","🈴","🈳","㊗️","㊙️","🈺","🈵","🔴","🟠","🟡","🟢","🔵","🟣","🟤","⚫","⚪","🟥","🟧","🟨","🟩","🟦","🟪","🟫","⬛","⬜","◼️","◻️","◾","◽","▪️","▫️","🔶","🔷","🔸","🔹","🔺","🔻","💠","🔘","🔳","🔲"],flag:["🏁","🚩","🎌","🏴","🏳️","🏳️‍🌈","🏳️‍⚧️","🏴‍☠️","🇦🇨","🇦🇩","🇦🇪","🇦🇫","🇦🇬","🇦🇮","🇦🇱","🇦🇲","🇦🇴","🇦🇶","🇦🇷","🇦🇸","🇦🇹","🇦🇺","🇦🇼","🇦🇽","🇦🇿","🇧🇦","🇧🇧","🇧🇩","🇧🇪","🇧🇫","🇧🇬","🇧🇭","🇧🇮","🇧🇯","🇧🇱","🇧🇲","🇧🇳","🇧🇴","🇧🇶","🇧🇷","🇧🇸","🇧🇹","🇧🇻","🇧🇼","🇧🇾","🇧🇿","🇨🇦","🇨🇨","🇨🇩","🇨🇫","🇨🇬","🇨🇭","🇨🇮","🇨🇰","🇨🇱","🇨🇲","🇨🇳","🇨🇴","🇨🇵","🇨🇷","🇨🇺","🇨🇻","🇨🇼","🇨🇽","🇨🇾","🇨🇿","🇩🇪","🇩🇬","🇩🇯","🇩🇰","🇩🇲","🇩🇴","🇩🇿","🇪🇦","🇪🇨","🇪🇪","🇪🇬","🇪🇭","🇪🇷","🇪🇸","🇪🇹","🇪🇺","🇫🇮","🇫🇯","🇫🇰","🇫🇲","🇫🇴","🇫🇷","🇬🇦","🇬🇧","🇬🇩","🇬🇪","🇬🇫","🇬🇬","🇬🇭","🇬🇮","🇬🇱","🇬🇲","🇬🇳","🇬🇵","🇬🇶","🇬🇷","🇬🇸","🇬🇹","🇬🇺","🇬🇼","🇬🇾","🇭🇰","🇭🇲","🇭🇳","🇭🇷","🇭🇹","🇭🇺","🇮🇨","🇮🇩","🇮🇪","🇮🇱","🇮🇲","🇮🇳","🇮🇴","🇮🇶","🇮🇷","🇮🇸","🇮🇹","🇯🇪","🇯🇲","🇯🇴","🇯🇵","🇰🇪","🇰🇬","🇰🇭","🇰🇮","🇰🇲","🇰🇳","🇰🇵","🇰🇷","🇰🇼","🇰🇾","🇰🇿","🇱🇦","🇱🇧","🇱🇨","🇱🇮","🇱🇰","🇱🇷","🇱🇸","🇱🇹","🇱🇺","🇱🇻","🇱🇾","🇲🇦","🇲🇨","🇲🇩","🇲🇪","🇲🇫","🇲🇬","🇲🇭","🇲🇰","🇲🇱","🇲🇲","🇲🇳","🇲🇴","🇲🇵","🇲🇶","🇲🇷","🇲🇸","🇲🇹","🇲🇺","🇲🇻","🇲🇼","🇲🇽","🇲🇾","🇲🇿","🇳🇦","🇳🇨","🇳🇪","🇳🇫","🇳🇬","🇳🇮","🇳🇱","🇳🇴","🇳🇵","🇳🇷","🇳🇺","🇳🇿","🇴🇲","🇵🇦","🇵🇪","🇵🇫","🇵🇬","🇵🇭","🇵🇰","🇵🇱","🇵🇲","🇵🇳","🇵🇷","🇵🇸","🇵🇹","🇵🇼","🇵🇾","🇶🇦","🇷🇪","🇷🇴","🇷🇸","🇷🇺","🇷🇼","🇸🇦","🇸🇧","🇸🇨","🇸🇩","🇸🇪","🇸🇬","🇸🇭","🇸🇮","🇸🇯","🇸🇰","🇸🇱","🇸🇲","🇸🇳","🇸🇴","🇸🇷","🇸🇸","🇸🇹","🇸🇻","🇸🇽","🇸🇾","🇸🇿","🇹🇦","🇹🇨","🇹🇩","🇹🇫","🇹🇬","🇹🇭","🇹🇯","🇹🇰","🇹🇱","🇹🇲","🇹🇳","🇹🇴","🇹🇷","🇹🇹","🇹🇻","🇹🇼","🇹🇿","🇺🇦","🇺🇬","🇺🇲","🇺🇳","🇺🇸","🇺🇾","🇺🇿","🇻🇦","🇻🇨","🇻🇪","🇻🇬","🇻🇮","🇻🇳","🇻🇺","🇼🇫","🇼🇸","🇽🇰","🇾🇪","🇾🇹","🇿🇦","🇿🇲","🇿🇼"]},http_status_code:{informational:[100,101,102,103],success:[200,201,202,203,204,205,206,207,208,226],redirection:[300,301,302,303,304,305,306,307,308],clientError:[400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,421,422,423,424,425,426,428,429,431,451],serverError:[500,501,502,503,504,505,506,507,508,510,511]}},location:{country_code:[{alpha2:"AD",alpha3:"AND",numeric:"020"},{alpha2:"AE",alpha3:"ARE",numeric:"784"},{alpha2:"AF",alpha3:"AFG",numeric:"004"},{alpha2:"AG",alpha3:"ATG",numeric:"028"},{alpha2:"AI",alpha3:"AIA",numeric:"660"},{alpha2:"AL",alpha3:"ALB",numeric:"008"},{alpha2:"AM",alpha3:"ARM",numeric:"051"},{alpha2:"AO",alpha3:"AGO",numeric:"024"},{alpha2:"AQ",alpha3:"ATA",numeric:"010"},{alpha2:"AR",alpha3:"ARG",numeric:"032"},{alpha2:"AS",alpha3:"ASM",numeric:"016"},{alpha2:"AT",alpha3:"AUT",numeric:"040"},{alpha2:"AU",alpha3:"AUS",numeric:"036"},{alpha2:"AW",alpha3:"ABW",numeric:"533"},{alpha2:"AX",alpha3:"ALA",numeric:"248"},{alpha2:"AZ",alpha3:"AZE",numeric:"031"},{alpha2:"BA",alpha3:"BIH",numeric:"070"},{alpha2:"BB",alpha3:"BRB",numeric:"052"},{alpha2:"BD",alpha3:"BGD",numeric:"050"},{alpha2:"BE",alpha3:"BEL",numeric:"056"},{alpha2:"BF",alpha3:"BFA",numeric:"854"},{alpha2:"BG",alpha3:"BGR",numeric:"100"},{alpha2:"BH",alpha3:"BHR",numeric:"048"},{alpha2:"BI",alpha3:"BDI",numeric:"108"},{alpha2:"BJ",alpha3:"BEN",numeric:"204"},{alpha2:"BL",alpha3:"BLM",numeric:"652"},{alpha2:"BM",alpha3:"BMU",numeric:"060"},{alpha2:"BN",alpha3:"BRN",numeric:"096"},{alpha2:"BO",alpha3:"BOL",numeric:"068"},{alpha2:"BQ",alpha3:"BES",numeric:"535"},{alpha2:"BR",alpha3:"BRA",numeric:"076"},{alpha2:"BS",alpha3:"BHS",numeric:"044"},{alpha2:"BT",alpha3:"BTN",numeric:"064"},{alpha2:"BV",alpha3:"BVT",numeric:"074"},{alpha2:"BW",alpha3:"BWA",numeric:"072"},{alpha2:"BY",alpha3:"BLR",numeric:"112"},{alpha2:"BZ",alpha3:"BLZ",numeric:"084"},{alpha2:"CA",alpha3:"CAN",numeric:"124"},{alpha2:"CC",alpha3:"CCK",numeric:"166"},{alpha2:"CD",alpha3:"COD",numeric:"180"},{alpha2:"CF",alpha3:"CAF",numeric:"140"},{alpha2:"CG",alpha3:"COG",numeric:"178"},{alpha2:"CH",alpha3:"CHE",numeric:"756"},{alpha2:"CI",alpha3:"CIV",numeric:"384"},{alpha2:"CK",alpha3:"COK",numeric:"184"},{alpha2:"CL",alpha3:"CHL",numeric:"152"},{alpha2:"CM",alpha3:"CMR",numeric:"120"},{alpha2:"CN",alpha3:"CHN",numeric:"156"},{alpha2:"CO",alpha3:"COL",numeric:"170"},{alpha2:"CR",alpha3:"CRI",numeric:"188"},{alpha2:"CU",alpha3:"CUB",numeric:"192"},{alpha2:"CV",alpha3:"CPV",numeric:"132"},{alpha2:"CW",alpha3:"CUW",numeric:"531"},{alpha2:"CX",alpha3:"CXR",numeric:"162"},{alpha2:"CY",alpha3:"CYP",numeric:"196"},{alpha2:"CZ",alpha3:"CZE",numeric:"203"},{alpha2:"DE",alpha3:"DEU",numeric:"276"},{alpha2:"DJ",alpha3:"DJI",numeric:"262"},{alpha2:"DK",alpha3:"DNK",numeric:"208"},{alpha2:"DM",alpha3:"DMA",numeric:"212"},{alpha2:"DO",alpha3:"DOM",numeric:"214"},{alpha2:"DZ",alpha3:"DZA",numeric:"012"},{alpha2:"EC",alpha3:"ECU",numeric:"218"},{alpha2:"EE",alpha3:"EST",numeric:"233"},{alpha2:"EG",alpha3:"EGY",numeric:"818"},{alpha2:"EH",alpha3:"ESH",numeric:"732"},{alpha2:"ER",alpha3:"ERI",numeric:"232"},{alpha2:"ES",alpha3:"ESP",numeric:"724"},{alpha2:"ET",alpha3:"ETH",numeric:"231"},{alpha2:"FI",alpha3:"FIN",numeric:"246"},{alpha2:"FJ",alpha3:"FJI",numeric:"242"},{alpha2:"FK",alpha3:"FLK",numeric:"238"},{alpha2:"FM",alpha3:"FSM",numeric:"583"},{alpha2:"FO",alpha3:"FRO",numeric:"234"},{alpha2:"FR",alpha3:"FRA",numeric:"250"},{alpha2:"GA",alpha3:"GAB",numeric:"266"},{alpha2:"GB",alpha3:"GBR",numeric:"826"},{alpha2:"GD",alpha3:"GRD",numeric:"308"},{alpha2:"GE",alpha3:"GEO",numeric:"268"},{alpha2:"GF",alpha3:"GUF",numeric:"254"},{alpha2:"GG",alpha3:"GGY",numeric:"831"},{alpha2:"GH",alpha3:"GHA",numeric:"288"},{alpha2:"GI",alpha3:"GIB",numeric:"292"},{alpha2:"GL",alpha3:"GRL",numeric:"304"},{alpha2:"GM",alpha3:"GMB",numeric:"270"},{alpha2:"GN",alpha3:"GIN",numeric:"324"},{alpha2:"GP",alpha3:"GLP",numeric:"312"},{alpha2:"GQ",alpha3:"GNQ",numeric:"226"},{alpha2:"GR",alpha3:"GRC",numeric:"300"},{alpha2:"GS",alpha3:"SGS",numeric:"239"},{alpha2:"GT",alpha3:"GTM",numeric:"320"},{alpha2:"GU",alpha3:"GUM",numeric:"316"},{alpha2:"GW",alpha3:"GNB",numeric:"624"},{alpha2:"GY",alpha3:"GUY",numeric:"328"},{alpha2:"HK",alpha3:"HKG",numeric:"344"},{alpha2:"HM",alpha3:"HMD",numeric:"334"},{alpha2:"HN",alpha3:"HND",numeric:"340"},{alpha2:"HR",alpha3:"HRV",numeric:"191"},{alpha2:"HT",alpha3:"HTI",numeric:"332"},{alpha2:"HU",alpha3:"HUN",numeric:"348"},{alpha2:"ID",alpha3:"IDN",numeric:"360"},{alpha2:"IE",alpha3:"IRL",numeric:"372"},{alpha2:"IL",alpha3:"ISR",numeric:"376"},{alpha2:"IM",alpha3:"IMN",numeric:"833"},{alpha2:"IN",alpha3:"IND",numeric:"356"},{alpha2:"IO",alpha3:"IOT",numeric:"086"},{alpha2:"IQ",alpha3:"IRQ",numeric:"368"},{alpha2:"IR",alpha3:"IRN",numeric:"364"},{alpha2:"IS",alpha3:"ISL",numeric:"352"},{alpha2:"IT",alpha3:"ITA",numeric:"380"},{alpha2:"JE",alpha3:"JEY",numeric:"832"},{alpha2:"JM",alpha3:"JAM",numeric:"388"},{alpha2:"JO",alpha3:"JOR",numeric:"400"},{alpha2:"JP",alpha3:"JPN",numeric:"392"},{alpha2:"KE",alpha3:"KEN",numeric:"404"},{alpha2:"KG",alpha3:"KGZ",numeric:"417"},{alpha2:"KH",alpha3:"KHM",numeric:"116"},{alpha2:"KI",alpha3:"KIR",numeric:"296"},{alpha2:"KM",alpha3:"COM",numeric:"174"},{alpha2:"KN",alpha3:"KNA",numeric:"659"},{alpha2:"KP",alpha3:"PRK",numeric:"408"},{alpha2:"KR",alpha3:"KOR",numeric:"410"},{alpha2:"KW",alpha3:"KWT",numeric:"414"},{alpha2:"KY",alpha3:"CYM",numeric:"136"},{alpha2:"KZ",alpha3:"KAZ",numeric:"398"},{alpha2:"LA",alpha3:"LAO",numeric:"418"},{alpha2:"LB",alpha3:"LBN",numeric:"422"},{alpha2:"LC",alpha3:"LCA",numeric:"662"},{alpha2:"LI",alpha3:"LIE",numeric:"438"},{alpha2:"LK",alpha3:"LKA",numeric:"144"},{alpha2:"LR",alpha3:"LBR",numeric:"430"},{alpha2:"LS",alpha3:"LSO",numeric:"426"},{alpha2:"LT",alpha3:"LTU",numeric:"440"},{alpha2:"LU",alpha3:"LUX",numeric:"442"},{alpha2:"LV",alpha3:"LVA",numeric:"428"},{alpha2:"LY",alpha3:"LBY",numeric:"434"},{alpha2:"MA",alpha3:"MAR",numeric:"504"},{alpha2:"MC",alpha3:"MCO",numeric:"492"},{alpha2:"MD",alpha3:"MDA",numeric:"498"},{alpha2:"ME",alpha3:"MNE",numeric:"499"},{alpha2:"MF",alpha3:"MAF",numeric:"663"},{alpha2:"MG",alpha3:"MDG",numeric:"450"},{alpha2:"MH",alpha3:"MHL",numeric:"584"},{alpha2:"MK",alpha3:"MKD",numeric:"807"},{alpha2:"ML",alpha3:"MLI",numeric:"466"},{alpha2:"MM",alpha3:"MMR",numeric:"104"},{alpha2:"MN",alpha3:"MNG",numeric:"496"},{alpha2:"MO",alpha3:"MAC",numeric:"446"},{alpha2:"MP",alpha3:"MNP",numeric:"580"},{alpha2:"MQ",alpha3:"MTQ",numeric:"474"},{alpha2:"MR",alpha3:"MRT",numeric:"478"},{alpha2:"MS",alpha3:"MSR",numeric:"500"},{alpha2:"MT",alpha3:"MLT",numeric:"470"},{alpha2:"MU",alpha3:"MUS",numeric:"480"},{alpha2:"MV",alpha3:"MDV",numeric:"462"},{alpha2:"MW",alpha3:"MWI",numeric:"454"},{alpha2:"MX",alpha3:"MEX",numeric:"484"},{alpha2:"MY",alpha3:"MYS",numeric:"458"},{alpha2:"MZ",alpha3:"MOZ",numeric:"508"},{alpha2:"NA",alpha3:"NAM",numeric:"516"},{alpha2:"NC",alpha3:"NCL",numeric:"540"},{alpha2:"NE",alpha3:"NER",numeric:"562"},{alpha2:"NF",alpha3:"NFK",numeric:"574"},{alpha2:"NG",alpha3:"NGA",numeric:"566"},{alpha2:"NI",alpha3:"NIC",numeric:"558"},{alpha2:"NL",alpha3:"NLD",numeric:"528"},{alpha2:"NO",alpha3:"NOR",numeric:"578"},{alpha2:"NP",alpha3:"NPL",numeric:"524"},{alpha2:"NR",alpha3:"NRU",numeric:"520"},{alpha2:"NU",alpha3:"NIU",numeric:"570"},{alpha2:"NZ",alpha3:"NZL",numeric:"554"},{alpha2:"OM",alpha3:"OMN",numeric:"512"},{alpha2:"PA",alpha3:"PAN",numeric:"591"},{alpha2:"PE",alpha3:"PER",numeric:"604"},{alpha2:"PF",alpha3:"PYF",numeric:"258"},{alpha2:"PG",alpha3:"PNG",numeric:"598"},{alpha2:"PH",alpha3:"PHL",numeric:"608"},{alpha2:"PK",alpha3:"PAK",numeric:"586"},{alpha2:"PL",alpha3:"POL",numeric:"616"},{alpha2:"PM",alpha3:"SPM",numeric:"666"},{alpha2:"PN",alpha3:"PCN",numeric:"612"},{alpha2:"PR",alpha3:"PRI",numeric:"630"},{alpha2:"PS",alpha3:"PSE",numeric:"275"},{alpha2:"PT",alpha3:"PRT",numeric:"620"},{alpha2:"PW",alpha3:"PLW",numeric:"585"},{alpha2:"PY",alpha3:"PRY",numeric:"600"},{alpha2:"QA",alpha3:"QAT",numeric:"634"},{alpha2:"RE",alpha3:"REU",numeric:"638"},{alpha2:"RO",alpha3:"ROU",numeric:"642"},{alpha2:"RS",alpha3:"SRB",numeric:"688"},{alpha2:"RU",alpha3:"RUS",numeric:"643"},{alpha2:"RW",alpha3:"RWA",numeric:"646"},{alpha2:"SA",alpha3:"SAU",numeric:"682"},{alpha2:"SB",alpha3:"SLB",numeric:"090"},{alpha2:"SC",alpha3:"SYC",numeric:"690"},{alpha2:"SD",alpha3:"SDN",numeric:"729"},{alpha2:"SE",alpha3:"SWE",numeric:"752"},{alpha2:"SG",alpha3:"SGP",numeric:"702"},{alpha2:"SH",alpha3:"SHN",numeric:"654"},{alpha2:"SI",alpha3:"SVN",numeric:"705"},{alpha2:"SJ",alpha3:"SJM",numeric:"744"},{alpha2:"SK",alpha3:"SVK",numeric:"703"},{alpha2:"SL",alpha3:"SLE",numeric:"694"},{alpha2:"SM",alpha3:"SMR",numeric:"674"},{alpha2:"SN",alpha3:"SEN",numeric:"686"},{alpha2:"SO",alpha3:"SOM",numeric:"706"},{alpha2:"SR",alpha3:"SUR",numeric:"740"},{alpha2:"SS",alpha3:"SSD",numeric:"728"},{alpha2:"ST",alpha3:"STP",numeric:"678"},{alpha2:"SV",alpha3:"SLV",numeric:"222"},{alpha2:"SX",alpha3:"SXM",numeric:"534"},{alpha2:"SY",alpha3:"SYR",numeric:"760"},{alpha2:"SZ",alpha3:"SWZ",numeric:"748"},{alpha2:"TC",alpha3:"TCA",numeric:"796"},{alpha2:"TD",alpha3:"TCD",numeric:"148"},{alpha2:"TF",alpha3:"ATF",numeric:"260"},{alpha2:"TG",alpha3:"TGO",numeric:"768"},{alpha2:"TH",alpha3:"THA",numeric:"764"},{alpha2:"TJ",alpha3:"TJK",numeric:"762"},{alpha2:"TK",alpha3:"TKL",numeric:"772"},{alpha2:"TL",alpha3:"TLS",numeric:"626"},{alpha2:"TM",alpha3:"TKM",numeric:"795"},{alpha2:"TN",alpha3:"TUN",numeric:"788"},{alpha2:"TO",alpha3:"TON",numeric:"776"},{alpha2:"TR",alpha3:"TUR",numeric:"792"},{alpha2:"TT",alpha3:"TTO",numeric:"780"},{alpha2:"TV",alpha3:"TUV",numeric:"798"},{alpha2:"TW",alpha3:"TWN",numeric:"158"},{alpha2:"TZ",alpha3:"TZA",numeric:"834"},{alpha2:"UA",alpha3:"UKR",numeric:"804"},{alpha2:"UG",alpha3:"UGA",numeric:"800"},{alpha2:"UM",alpha3:"UMI",numeric:"581"},{alpha2:"US",alpha3:"USA",numeric:"840"},{alpha2:"UY",alpha3:"URY",numeric:"858"},{alpha2:"UZ",alpha3:"UZB",numeric:"860"},{alpha2:"VA",alpha3:"VAT",numeric:"336"},{alpha2:"VC",alpha3:"VCT",numeric:"670"},{alpha2:"VE",alpha3:"VEN",numeric:"862"},{alpha2:"VG",alpha3:"VGB",numeric:"092"},{alpha2:"VI",alpha3:"VIR",numeric:"850"},{alpha2:"VN",alpha3:"VNM",numeric:"704"},{alpha2:"VU",alpha3:"VUT",numeric:"548"},{alpha2:"WF",alpha3:"WLF",numeric:"876"},{alpha2:"WS",alpha3:"WSM",numeric:"882"},{alpha2:"YE",alpha3:"YEM",numeric:"887"},{alpha2:"YT",alpha3:"MYT",numeric:"175"},{alpha2:"ZA",alpha3:"ZAF",numeric:"710"},{alpha2:"ZM",alpha3:"ZMB",numeric:"894"},{alpha2:"ZW",alpha3:"ZWE",numeric:"716"}],time_zone:YC},metadata:{title:"Base",code:"base"},system:{directory_path:["/Applications","/bin","/boot","/boot/defaults","/dev","/etc","/etc/defaults","/etc/mail","/etc/namedb","/etc/periodic","/etc/ppp","/home","/home/user","/home/user/dir","/lib","/Library","/lost+found","/media","/mnt","/net","/Network","/opt","/opt/bin","/opt/include","/opt/lib","/opt/sbin","/opt/share","/private","/private/tmp","/private/var","/proc","/rescue","/root","/sbin","/selinux","/srv","/sys","/System","/tmp","/Users","/usr","/usr/X11R6","/usr/bin","/usr/include","/usr/lib","/usr/libdata","/usr/libexec","/usr/local/bin","/usr/local/src","/usr/obj","/usr/ports","/usr/sbin","/usr/share","/usr/src","/var","/var/log","/var/mail","/var/spool","/var/tmp","/var/yp"],mime_type:{"application/epub+zip":{extensions:["epub"]},"application/gzip":{extensions:["gz"]},"application/java-archive":{extensions:["jar","war","ear"]},"application/json":{extensions:["json","map"]},"application/ld+json":{extensions:["jsonld"]},"application/msword":{extensions:["doc","dot"]},"application/octet-stream":{extensions:["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"]},"application/ogg":{extensions:["ogx"]},"application/pdf":{extensions:["pdf"]},"application/rtf":{extensions:["rtf"]},"application/vnd.amazon.ebook":{extensions:["azw"]},"application/vnd.apple.installer+xml":{extensions:["mpkg"]},"application/vnd.mozilla.xul+xml":{extensions:["xul"]},"application/vnd.ms-excel":{extensions:["xls","xlm","xla","xlc","xlt","xlw"]},"application/vnd.ms-fontobject":{extensions:["eot"]},"application/vnd.ms-powerpoint":{extensions:["ppt","pps","pot"]},"application/vnd.oasis.opendocument.presentation":{extensions:["odp"]},"application/vnd.oasis.opendocument.spreadsheet":{extensions:["ods"]},"application/vnd.oasis.opendocument.text":{extensions:["odt"]},"application/vnd.openxmlformats-officedocument.presentationml.presentation":{extensions:["pptx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":{extensions:["xlsx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.document":{extensions:["docx"]},"application/vnd.rar":{extensions:["rar"]},"application/vnd.visio":{extensions:["vsd","vst","vss","vsw"]},"application/x-7z-compressed":{extensions:["7z"]},"application/x-abiword":{extensions:["abw"]},"application/x-bzip":{extensions:["bz"]},"application/x-bzip2":{extensions:["bz2","boz"]},"application/x-csh":{extensions:["csh"]},"application/x-freearc":{extensions:["arc"]},"application/x-httpd-php":{extensions:["php"]},"application/x-sh":{extensions:["sh"]},"application/x-tar":{extensions:["tar"]},"application/xhtml+xml":{extensions:["xhtml","xht"]},"application/xml":{extensions:["xml","xsl","xsd","rng"]},"application/zip":{extensions:["zip"]},"audio/3gpp":{extensions:["3gpp"]},"audio/3gpp2":{extensions:["3g2"]},"audio/aac":{extensions:["aac"]},"audio/midi":{extensions:["mid","midi","kar","rmi"]},"audio/mpeg":{extensions:["mpga","mp2","mp2a","mp3","m2a","m3a"]},"audio/ogg":{extensions:["oga","ogg","spx","opus"]},"audio/opus":{extensions:["opus"]},"audio/wav":{extensions:["wav"]},"audio/webm":{extensions:["weba"]},"font/otf":{extensions:["otf"]},"font/ttf":{extensions:["ttf"]},"font/woff":{extensions:["woff"]},"font/woff2":{extensions:["woff2"]},"image/avif":{extensions:["avif"]},"image/bmp":{extensions:["bmp"]},"image/gif":{extensions:["gif"]},"image/jpeg":{extensions:["jpeg","jpg","jpe"]},"image/png":{extensions:["png"]},"image/svg+xml":{extensions:["svg","svgz"]},"image/tiff":{extensions:["tif","tiff"]},"image/vnd.microsoft.icon":{extensions:["ico"]},"image/webp":{extensions:["webp"]},"text/calendar":{extensions:["ics","ifb"]},"text/css":{extensions:["css"]},"text/csv":{extensions:["csv"]},"text/html":{extensions:["html","htm","shtml"]},"text/javascript":{extensions:["js","mjs"]},"text/plain":{extensions:["txt","text","conf","def","list","log","in","ini"]},"video/3gpp":{extensions:["3gp","3gpp"]},"video/3gpp2":{extensions:["3g2"]},"video/mp2t":{extensions:["ts"]},"video/mp4":{extensions:["mp4","mp4v","mpg4"]},"video/mpeg":{extensions:["mpeg","mpg","mpe","m1v","m2v"]},"video/ogg":{extensions:["ogv"]},"video/webm":{extensions:["webm"]},"video/x-msvideo":{extensions:["avi"]}}}},UC=new class extends uC{rawDefinitions;definitions;airline=new Lw(this);animal=new dC(this);color=new Pw(this);commerce=new yC(this);company=new fC(this);database=new mC(this);date=new qw(this);finance=new vC(this);food=new xC(this);git=new kC(this);hacker=new wC(this);helpers=new iC(this);image=new _C(this);internet=new EC(this);location=new RC(this);lorem=new PC(this);music=new NC(this);person=new zw(this);phone=new GC(this);science=new IC(this);system=new JC(this);vehicle=new VC(this);word=new jC(this);get address(){return hC({deprecated:"faker.address",proposed:"faker.location",since:"8.0",until:"10.0"}),this.location}get name(){return hC({deprecated:"faker.name",proposed:"faker.person",since:"8.0",until:"10.0"}),this.person}constructor(e){super({randomizer:e.randomizer});let{locale:t}=e;if(Array.isArray(t)){if(0===t.length)throw new ww("The locale option must contain at least one locale definition.");t=function(e){let t={};for(let r of e)for(let e in r){let a=r[e];void 0===t[e]?t[e]={...a}:t[e]={...a,...t[e]}}return t}(t)}this.rawDefinitions=t,this.definitions=jw(this.rawDefinitions)}getMetadata(){return this.rawDefinitions.metadata??{}}}({locale:[kw,$C]});class qC{data_length=50;generated_data=[];auto_proceed=!0;locale="en_GB";imgAPIs=["https://picsum.photos/500/500?random=","https://avatar.iran.liara.run/public/"];constructor({length:e,auto_proceed:t,locale:r}){void 0!==e&&(this.data_length=e),void 0!==t&&(this.auto_proceed=t),void 0!==r&&(this.locale=r.replace("-","_")),this.auto_proceed&&this.generate()}generate(){return this.make_data()}make_data(){for(let e=0;e0&&(t.parentId=this.get_parent_id(e)),this.generated_data.push(t)}return this.generated_data}get_parent_id(e){let t=Math.floor(Math.random()*this.generated_data.length).toString();return t=0==parseInt(t)?"1":t,t==(e+1).toString()&&(t=this.get_parent_id(e)),t}generate_data(e){const t=Math.floor(2*Math.random()),r=this.imgAPIs[Math.floor(Math.random()*this.imgAPIs.length)]+e;return{id:e,name:UC.person.fullName(),role:UC.person.jobTitle(),location:UC.location.city()+", "+UC.location.country(),image:t?r:""}}}class ZC{tree_data=[];handleCollapseChildren=()=>{};center_elem=({})=>null;itemHierarchy=[];tmp_tree_data=[];tree_level_step=2;display_tree_in_step=!0;auto_display_tree_in_step=!0;link_point_position={top:e=>`translate(${parseInt(e.attr("width"))/2}, 0)`,bottom:e=>`translate(${parseInt(e.attr("width"))/2}, ${e.attr("height")})`,right:e=>`translate(${e.attr("width")}, ${e.attr("height")/2})`,left:e=>`translate(0, ${e.attr("height")/2})`};inverse_link_point_position={top:"bottom",bottom:"top",left:"right",right:"left"};chartHeadWidth=120;chartHeadHeight=130;chartHeadLandscapeWidth=240;chartHeadLandscapeHeight=80;chartHeadRoundedWidth=120;chartHeadRoundedHeight=180;color_handler={};chart_head_type="default";show_chart_head_border=!0;animation_rotation_speed=50;animation_rotation_interval=1;head_linker_thumb_circle_radius=8;linker_thumb_icon_color="bright500";linker_thumb_shape="symbolDiamond2";head_image_shape="symbolCircle";head_image_surface_area=60;chart_head_bg="#ffffff";auto_set_chart_head_bg=!1;dropshadow={x:"-50%",y:"-50%",width:"200%",height:"200%",dx:1,dy:1,stdDeviation:4,floodColor:"rgba(91, 91, 91, 0.19)"};emitEvent=()=>!1;tree_link_types={curveBumpX:Hx,curveBumpY:Dx,curveBasisClosed:bk,curveLinear:gx,curveStep:Yk,curveStepAfter:Uk,curveStepBefore:$k};tree_link_type=void 0;rootWrapperContainer=null;app_unique_id="";app_root_unique_selector="";constructor(){setTimeout((()=>{this.app_root_unique_selector=`[data-ts-unique-id='${this.app_unique_id}']`}),0)}createDynamicEl(){return new xw}splitStringIntoBatch(e,t){let r=[];for(let a=0;a1?t?.[0][0]+t?.at(-1)?.[0]:t?.[0][0]}format_employee_name(e,t=15){const r=e?.split(" "),a=r?.length>2?r?.[0]+" "+r?.at(-1):r?.join(" ");return this.splitStringIntoBatch(a,t)}symbol_type(e){const t=e.replace(/symbol/,"").toLowerCase();return["circle","cross","diamond","square","star","triangle","wye"].includes(t)?"fill":["plus","x","triangle2","asterisk","square2","diamond2"].includes(t)?"stroke":"fill"}get_page_body_bg(){const e=jt("body").node().style.getPropertyValue("background-color");return""==e?"#ffffff":e}get_chart_head_bg(){return this.auto_set_chart_head_bg?this.get_page_body_bg():this.chart_head_bg}get_image_shape_spacing(e){return{symbolCircle:10,symbolCross:10,symbolDiamond:25,symbolDiamond2:10,symbolSquare:0,symbolSquare2:-8,symbolStar:20,symbolTriangle:20,symbolTriangle2:10,symbolWye:20}[e]}makeHead(e,t=!1,r={parent:"bottom",children:"top"}){return"default"==this.chart_head_type?this.defaultHead(e,t,r):"landscape"==this.chart_head_type?this.landscapeHead(e,t,r):"rounded"==this.chart_head_type?this.roundedHead(e,t,r):this.defaultHead(e,t,r)}handleCenterHead(e){e.stopPropagation();const t=e.currentTarget.getBoundingClientRect();this.center_elem(t,"center")}defaultHead(e,t=!1,r={parent:"bottom",children:"top"}){const a=this.tree_data.filter((t=>t.parentId===e.id)).length>0,i=this.tree_data.filter((t=>t.id===e.parentId)).length>0,n=this.color_handler.getColor(e.id);let o=0;const c=this.get_chart_head_bg(),l=Yt("svg").attr("class","main-svg-el"+(this.getIsElRootTreeChild(e.id)?" root-svg-el":"")).attr("width",this.chartHeadWidth).attr("height",this.chartHeadHeight).attr("min-height","0").attr("overflow","auto").on("dblclick",(e=>this.handleCenterHead(e)));this.add_drop_shadow(l);const s=l.append("g"),u=s?.append("rect").attr("rx",16).attr("ry",16).attr("width",this.chartHeadWidth).attr("height",this.chartHeadHeight).attr("stroke",this.show_chart_head_border?n.color:"none").attr("fill",c).attr("stroke-width",0).attr("filter","url(#shadow)"),h=parseInt(u.attr("width"))/2,d=s?.append("g").attr("y",100),p=Math.pow(this.head_image_surface_area-this.get_image_shape_spacing(this.head_image_shape),2);if(e.image){let t=h-this.head_image_surface_area;t=t>10?0:t-10,t=t>0?-t:t,t=h-this.head_image_surface_area<=10&&0==t?-10:t,o=h-this.head_image_surface_area<1?Math.abs(h-this.head_image_surface_area)+15:0,d.append("defs").append("clipPath").attr("id","default-head-clip-"+e.id).append("path").attr("d",pk().type(bw[this.head_image_shape]).size(p)).attr("transform",`translate(${parseInt(u.attr("width"))/2}, ${this.head_image_surface_area+t})`).attr("fill",n.bright500),d?.append("image").attr("href",e.image).attr("preserveAspectRatio","xMaxYMax slice").attr("width",this.head_image_surface_area).attr("height",this.head_image_surface_area).attr("x",parseInt(u.attr("width"))/2-this.head_image_surface_area/2).attr("y",this.head_image_surface_area/2+t).attr("clip-path",`url(#default-head-clip-${e.id})`)}else o=h-this.head_image_surface_area<1?Math.abs(h-this.head_image_surface_area)+15:0,d?.append("path").attr("d",pk().type(bw[this.head_image_shape]).size(p)).attr("stroke","stroke"==this.symbol_type(this.head_image_shape)?n.color:"none").attr("stroke-width","stroke"==this.symbol_type(this.head_image_shape)?1:0).attr("fill","stroke"==this.symbol_type(this.head_image_shape)?"transparent":n.color).attr("transform",`translate(${parseInt(u.attr("width"))/2}, 50)`),d?.append("text").attr("class","").attr("text-anchor","middle").attr("fill","stroke"==this.symbol_type(this.head_image_shape)?n.color:n.bright500).attr("x",parseInt(u.attr("width"))/2).attr("y",56).attr("font-size","95%").text(this.get_user_initials(e.name));this.format_employee_name(e.name).forEach(((e,t)=>{s?.append("text").attr("text-anchor","middle").attr("x",parseInt(u.attr("width"))/2).attr("y",t>0?95+o:80+o).attr("font-size","85%").attr("fill",n.darker).attr("style","text-transform: "+(t>0?"none":"capitalize")).text(e),t>0&&(o+=15)}));const y=s?.append("text").attr("text-anchor","middle").attr("x",parseInt(u.attr("width"))/2).attr("y",100+o).attr("font-size","65%");if(this.splitStringIntoBatch(e.role,20).forEach(((e,t)=>{y?.append("tspan").attr("x",parseInt(u.attr("width"))/2).attr("dy",t>0?10:0).text(e.toString()).attr("fill",n.dark100),t>0&&(o+=10)})),void 0!==e.location){const t=s?.append("text").attr("text-anchor","middle").attr("x",parseInt(u.attr("width"))/2).attr("y",115+o).attr("font-size","65%").attr("fill",n.dark100);this.splitStringIntoBatch(e.location,19).forEach(((e,r)=>{t?.append("tspan").attr("x",parseInt(u.attr("width"))/2).attr("dy",r>0?10:0).text(e.toString()),r>0&&(o+=10)}))}const f=this.chartHeadHeight+o;return u?.attr("height",f),l?.attr("height",f),this.add_linker(s,i,a,r,n,u,l,e,t),this.emitEvent("chart_head.create",{headNode:l.node()}),l}landscapeHead(e,t=!1,r={parent:"bottom",children:"top"}){const a=this.tree_data.filter((t=>t.parentId===e.id)).length>0,i=this.tree_data.filter((t=>t.id===e.parentId)).length>0,n=this.color_handler.getColor(e.id);let o=0;const c=this.get_chart_head_bg(),l=Yt("svg").attr("class","main-svg-el"+(this.getIsElRootTreeChild(e.id)?" root-svg-el":"")).attr("width",this.chartHeadLandscapeWidth).attr("height",this.chartHeadLandscapeHeight).attr("style","background-color: "+this.chart_head_bg).on("dblclick",(e=>this.handleCenterHead(e))),s=l.append("g");this.add_drop_shadow(l);const u=s?.append("rect").attr("rx",16).attr("ry",16).attr("width",this.chartHeadLandscapeWidth).attr("height",this.chartHeadLandscapeHeight).attr("stroke",this.show_chart_head_border?n.color:"none").attr("fill",c).attr("filter","url(#shadow)").attr("stroke-width",0),h=parseInt(u.attr("height"))/2,d=this.format_employee_name(e.name,18),p=s.append("g").attr("x",0).attr("y",0),y=parseInt(u.attr("height"))+20,f=p?.append("text").attr("x",y).attr("y",30).attr("font-size","95%").attr("fill",n.darker);d.forEach(((e,t)=>{f?.append("tspan").attr("x",y).attr("y",30).attr("dy",t>0?o+14+t:0).attr("font-size","95%").attr("style","z-index: +9").text(e.toString()),t>0&&(o+=14)}));const m=p?.append("text").attr("x",y).attr("y",54+o).attr("font-size","65%");if(this.splitStringIntoBatch(e.role,30).forEach(((e,t)=>{m?.append("tspan").attr("x",y).attr("dy",t>0?10:0).attr("y",54+o).text(e.toString()).attr("fill",n.dark100),t>0&&(o+=10)})),void 0!==e.location){const t=p?.append("text").attr("x",y).attr("y",69+o).attr("font-size","65%").attr("fill",n.dark100);this.splitStringIntoBatch(e.location,30).forEach(((e,r)=>{t?.append("tspan").attr("x",y).attr("dy",r>0?10:0).text(e.toString()),r>0&&(o+=10)}))}const g=s.append("g"),b=this.chartHeadLandscapeHeight+o;if(u.attr("height",b),l.attr("height",b),e.image){let t=h-this.head_image_surface_area;t=t>10?0:t-10,t=t>0?-t:t,t=h-this.head_image_surface_area<=10&&0==t?-10:t;const r=this.head_image_surface_area>h?Math.abs(this.head_image_surface_area-h):0;u.attr("height",b+r),l.attr("height",b+r),l.attr("width",this.chartHeadLandscapeWidth+r),u.attr("width",this.chartHeadLandscapeWidth+r),g.append("defs").append("clipPath").attr("id","landscape-clip-"+e.id).append("path").attr("d",pk().type(bw[this.head_image_shape]).size(Math.pow(this.head_image_surface_area-this.get_image_shape_spacing(this.head_image_shape),2))).attr("transform",`translate(50, ${parseInt(u.attr("height"))/2})`).attr("fill",n.bright500),g?.append("image").attr("href",e.image).attr("preserveAspectRatio","xMaxYMax slice").attr("width",this.head_image_surface_area).attr("height",this.head_image_surface_area).attr("x",50-this.head_image_surface_area/2).attr("y",parseInt(u.attr("height"))/2-this.head_image_surface_area/2).attr("clip-path",`url(#landscape-clip-${e.id})`)}else{const t=this.head_image_surface_area>h?Math.abs(this.head_image_surface_area-h):0;u.attr("height",b+t),l.attr("height",b+t),l.attr("width",this.chartHeadLandscapeWidth+20+t),u.attr("width",this.chartHeadLandscapeWidth+20+t),g?.append("path").attr("d",pk().type(bw[this.head_image_shape]).size(Math.pow(this.head_image_surface_area-this.get_image_shape_spacing(this.head_image_shape),2))).attr("stroke","stroke"==this.symbol_type(this.head_image_shape)?n.color:"none").attr("stroke-width","stroke"==this.symbol_type(this.head_image_shape)?1:0).attr("fill","stroke"==this.symbol_type(this.head_image_shape)?"transparent":n.color).attr("transform",`translate(50, ${parseInt(u.attr("height"))/2})`),g?.append("text").attr("class","").attr("text-anchor","middle").attr("fill","stroke"==this.symbol_type(this.head_image_shape)?n.color:n.bright500).attr("x",50).attr("y",parseInt(u.attr("height"))/2+6).attr("font-size","95%").text(this.get_user_initials(e.name))}return this.add_linker(s,i,a,r,n,u,l,e,t),this.emitEvent("chart_head.create",{headNode:l.node()}),l}roundedHead(e,t=!1,r={parent:"bottom",children:"top"}){const a=this.tree_data.filter((t=>t.parentId===e.id)).length>0,i=this.tree_data.filter((t=>t.id===e.parentId)).length>0,n=this.color_handler.getColor(e.id);let o=0;const c=Yt("svg").attr("class","main-svg-el rounded-head"+(this.getIsElRootTreeChild(e.id)?" root-svg-el":"")).attr("style","overflow: visible;").attr("width",this.chartHeadRoundedWidth).attr("height",this.chartHeadRoundedHeight).attr("fill","none").on("dblclick",(e=>this.handleCenterHead(e))),l=c.append("g"),s=l?.append("rect").attr("rx",16).attr("ry",16).attr("width",this.chartHeadRoundedWidth).attr("height",this.chartHeadRoundedHeight).attr("stroke",this.show_chart_head_border?n.color:"none").attr("fill","none").attr("stroke-width",0),u=parseInt(s.attr("width"))/2,h=l?.append("g"),d=Math.pow(2*(this.head_image_surface_area-this.get_image_shape_spacing(this.head_image_shape)),2),p=bw[this.head_image_shape];if(e.image){let t=u-this.head_image_surface_area;t=t>10?0:t-10,t=t>0?-t:t,t=u-this.head_image_surface_area<=10&&0==t?-10:t,o=u-this.head_image_surface_area<0?2*Math.abs(u-this.head_image_surface_area):0,h.append("defs").append("clipPath").attr("id","rounded-corners-"+e.id).append("path").attr("d",pk().type(p).size(d)).attr("transform",`translate(${parseInt(s.attr("width"))/2}, ${2*this.head_image_surface_area-this.head_image_surface_area})`).attr("fill",n.bright500),h?.append("image").attr("href",e.image).attr("preserveAspectRatio","xMaxYMax slice").attr("width",2*this.head_image_surface_area).attr("height",2*this.head_image_surface_area).attr("x",parseInt(s.attr("width"))/2-this.head_image_surface_area).attr("y",this.head_image_surface_area-this.head_image_surface_area).attr("clip-path",`url(#rounded-corners-${e.id})`)}else{let t=u-this.head_image_surface_area;t=t>10?0:t-10,t=t>0?-t:t,t=u-this.head_image_surface_area<=10&&0==t?-10:t,o=u-this.head_image_surface_area<0?2*Math.abs(u-this.head_image_surface_area):0,h?.append("path").attr("d",pk().type(p).size(d)).attr("stroke","stroke"==this.symbol_type(this.head_image_shape)?n.color:"none").attr("stroke-width","stroke"==this.symbol_type(this.head_image_shape)?1:0).attr("fill","stroke"==this.symbol_type(this.head_image_shape)?"transparent":n.color).attr("transform",`translate(${parseInt(s.attr("width"))/2}, ${2*this.head_image_surface_area-this.head_image_surface_area})`),h?.append("text").attr("class","").attr("text-anchor","middle").attr("fill","stroke"==this.symbol_type(this.head_image_shape)?n.color:n.bright500).attr("x",parseInt(s.attr("width"))/2).attr("y",this.head_image_surface_area+Math.sqrt(d)/6).attr("font-size",this.head_image_surface_area/1.5+"px").text(this.get_user_initials(e.name))}this.format_employee_name(e.name,27).forEach(((e,t)=>{l?.append("text").attr("text-anchor","middle").attr("x",parseInt(s.attr("width"))/2).attr("y",this.chartHeadRoundedWidth+18).attr("dy",t>0?15+o:0+o).attr("font-size","105%").attr("fill",n.darker).attr("style","text-transform: "+(t>0?"none":"capitalize")).text(e),t>0&&(o+=15)}));const y=l?.append("text").attr("text-anchor","middle").attr("x",parseInt(s.attr("width"))/2).attr("y",this.chartHeadRoundedWidth+35+o).attr("font-size","65%");if(this.splitStringIntoBatch(e.role,20).forEach(((e,t)=>{y?.append("tspan").attr("x",parseInt(s.attr("width"))/2).attr("dy",t>0?10:0).text(e.toString()).attr("fill",n.dark100),t>0&&(o+=10)})),void 0!==e.location){const t=l?.append("text").attr("text-anchor","middle").attr("x",parseInt(s.attr("width"))/2).attr("y",this.chartHeadRoundedWidth+50+o).attr("font-size","65%").attr("fill",n.dark100);this.splitStringIntoBatch(e.location,19).forEach(((e,r)=>{t?.append("tspan").attr("x",parseInt(s.attr("width"))/2).attr("dy",r>0?10:0).text(e.toString()),r>0&&(o+=10)}))}const f=this.chartHeadRoundedHeight+o;return s?.attr("height",f),c?.attr("height",f),this.add_linker(l,i,a,r,n,s,c,e,t),this.emitEvent("chart_head.create",{headNode:c.node()}),c}add_linker(e,t,r,a,i,n,o,c,l){const s=Math.PI*this.head_linker_thumb_circle_radius*this.head_linker_thumb_circle_radius,u=(t,r,a)=>{null!=this.rootWrapperContainer?.querySelector("."+a)&&this.rootWrapperContainer?.querySelector("."+a)?.remove();const o="stroke"==this.symbol_type(this.linker_thumb_shape)?i.bright100:i[this.linker_thumb_icon_color];return e.append("path").attr("d",pk().type("cross"==t?Kx:uk).size(Math.sqrt(s))).attr("x",parseInt(n.attr("width"))/2).attr("y",n.attr("height")).attr("fill",o).attr("stroke","minus"==t?o:"none").attr("class",a).attr("style","pointer-events: none").attr("stroke-width","minus"==t?2:0).attr("transform",this.link_point_position[r](n))};if(0!=a&&t&&e?.append("path").attr("d",pk().type(bw[this.linker_thumb_shape]).size(s)).attr("x",parseInt(n.attr("width"))/2).attr("y",0).attr("class","ts-linker").attr("fill","fill"==this.symbol_type(this.linker_thumb_shape)?i.color:"none").attr("stroke","stroke"==this.symbol_type(this.linker_thumb_shape)?i.gray:"none").attr("stroke-width","stroke"==this.symbol_type(this.linker_thumb_shape)?1:0).attr("transform",this.link_point_position[a.children](n)),0!=a&&r){const t=this,r="bottom"==a.parent?0:n.attr("height");let h=0;if(e?.append("path").attr("d",pk().type(bw[this.linker_thumb_shape]).size(s)).attr("x",parseInt(n.attr("width"))/2).attr("y",n.attr("height")).attr("class","ts-linker").attr("style","cursor: pointer;").attr("fill","fill"==this.symbol_type(this.linker_thumb_shape)?i.color:"transparent").attr("stroke","stroke"==this.symbol_type(this.linker_thumb_shape)?i.gray:"none").attr("stroke-width","stroke"==this.symbol_type(this.linker_thumb_shape)?1:0).attr("transform",this.link_point_position[this.inverse_link_point_position[a.children]](n)).on("click",(e=>{const i=e.currentTarget.parentElement;u(h%2==0?"cross":"minus",this.inverse_link_point_position[a.children],"ts-lnk-icn-"+c.id+"-1"),h++,t.handleCollapseChildren?.(o,c.id,r);const n=i.getBoundingClientRect();setTimeout((()=>{h%2==0&&this.center_elem(n)}),0),h%2==0?this.emitEvent("chart_head.expanded",{svgNode:o,head_data:c,pointPosition:a},!1):this.emitEvent("chart_head.collapsed",{svgNode:o,head_data:c,pointPosition:a},!1)})),this.el_has_children(c.id,!0)||h++,u(this.el_has_children(c.id,!0)?"minus":"cross",this.inverse_link_point_position[a.children],"ts-lnk-icn-"+c.id+"-1"),l){const l=0==r?n.attr("height"):0;let h=0;e?.append("path").attr("d",pk().type(bw[this.linker_thumb_shape]).size(s)).attr("x",parseInt(n.attr("width"))/2).attr("y",n.attr("height")).attr("class","ts-linker").attr("style","cursor: pointer").attr("fill","fill"==this.symbol_type(this.linker_thumb_shape)?i.color:"transparent").attr("stroke","stroke"==this.symbol_type(this.linker_thumb_shape)?i.gray:"none").attr("stroke-width","stroke"==this.symbol_type(this.linker_thumb_shape)?1:0).attr("transform",this.link_point_position[this.inverse_link_point_position[a.parent]](n)).on("click",(e=>{const r=e.currentTarget.parentElement;u(h%2==0?"cross":"minus",this.inverse_link_point_position[a.parent],"ts-lnk-icn-"+c.id+"-2"),t.handleCollapseChildren?.(o,c.id,l);const i=r.getBoundingClientRect();h++,setTimeout((()=>{h%2==0&&this.center_elem(i)}),0),h%2==0?this.emitEvent("chart_head.expanded",{svgNode:o,head_data:c,pointPosition:a},!1):this.emitEvent("chart_head.collapsed",{svgNode:o,head_data:c,pointPosition:a},!1)})),u("minus",this.inverse_link_point_position[a.parent],"ts-lnk-icn-"+c.id+"-2")}}}add_drop_shadow(e){e.append("defs").append("filter").attr("id","shadow").attr("x",this.dropshadow.x).attr("y",this.dropshadow.y).attr("width",this.dropshadow.width).attr("height",this.dropshadow.height).append("feDropShadow").attr("dx",this.dropshadow.dx).attr("dy",this.dropshadow.dy).attr("stdDeviation",this.dropshadow.stdDeviation).attr("flood-color",this.dropshadow.floodColor)}get_tree_items_hierarchy(e,t,r){const a=this.tree_data.filter((t=>t.parentId==e)),i=null==t?1:t+1,n=[];a.forEach((e=>{n.push(e),null!=r&&(null!=r.item_id&&r.item_id==e.id||null!=r.level&&r.level==i)&&r.callbackFn(e,i);this.tree_data.filter((t=>t.parentId==e.id)).length>0&&this.get_tree_items_hierarchy(e.id,i,r)}));const o=this.itemHierarchy.findIndex((e=>e.level==i));return-1==o?this.itemHierarchy.push({level:i,items:n}):this.itemHierarchy[o].items=n,this.itemHierarchy}get_second_ancestor_item(e){const t=this.tree_data.find((t=>t.id==e)),r=this.tree_data.find((e=>e.id==t?.parentId)),a=null==this.tree_data.find((e=>e.id==r?.parentId))?.parentId;let i;return i=null==r?.parentId?t:a?r:this.get_second_ancestor_item(r?.id),i}getElemRelPosInTree(e){const t=this.tree_data.find((t=>t.id==e));return this.tree_data.filter((e=>e.parentId==t.parentId)).findIndex((e=>e.id==t.id))+1}set_tmp_tree_data(e){if(this.display_tree_in_step||this.tree_data.length>500&&this.auto_display_tree_in_step){const t=null==e?"1":e;this.tmp_tree_data=this.get_children_down_to_level(t,this.tree_level_step),null==e&&(this.tmp_tree_data=[this.tree_data[0],...this.tmp_tree_data])}else this.tmp_tree_data=this.tree_data}getIsParentRootEl(e){return null!=e&&null==this.tree_data.find((t=>t.id==e))?.parentId}getIsElRootTreeChild(e){return null!=e&&null==this.tree_data.find((t=>t.id==e))?.parentId}getRootTreeEl(){return this.tree_data.find((e=>null==e.parentId))}el_has_children(e,t=!1){return t?this.tmp_tree_data.filter((t=>t.parentId==e)).length>0:this.tree_data.filter((t=>t.parentId==e)).length>0}get_children_down_to_level(e,t,r=1){let a=r,i=[];const n=this.tree_data.filter((t=>t.parentId==e));let o=[];return a0&&(o=n.map((e=>this.get_children_down_to_level(e.id,t,a+1))).flat()),i=[...n,...o],i}data_to_d3_format(e,t){let r=this.tree_data?.find((t=>(null==e?t.parentId:t.id)==e));r={...r,children:[]};return this.tree_data.filter((e=>e.parentId==r.id)).forEach((e=>{t&&(e.stat=1),this.el_has_children(e.id)?r.children.push(this.data_to_d3_format(e.id,t)):r.children.push(e)})),r}}class QC{tree_data=[];color_range=["#b31212","#b34712","#b38d12","#9ab312","#2fb312","#12b362","#12b3a8","#1278b3","#1712b3","#5712b3","#8d12b3","#b3128d","#b3124a","#b31212"];interpolated_color=e=>"";pallet={h:10,s:.5,l:.5,darker:.8,brighter:.8,bright100:.5,dark100:.5,gray:50,gray85:85};constructor({tree_data:e,color_range:t,pallet:r}){this.tree_data=e,void 0!==t&&t.length>0&&(this.color_range=t),null!=r&&(this.pallet=r),this.interpolateColor()}getColor(e){const t=this.get_color_percentage(e),r=this.interpolated_color(t),a=Br(r),i=Or(a);i.h+=this.pallet.h,i.s+=this.pallet.s;const n=Or(a);n.l+=this.pallet.l;const o=ra(this.pallet.gray85);return{color:r,darker:a?.darker(this.pallet.darker).toString(),brighter:a?.brighter(this.pallet.brighter).toString(),bright100:i.brighter(this.pallet.bright100).toString(),dark100:i.darker(this.pallet.dark100).toString(),bright500:n.toString(),gray:ra(this.pallet.gray).toString(),gray85:o.toString()}}get_app_gray(){return ra(this.pallet.gray).toString()}get_color_percentage(e){return e/this.tree_data.length}interpolateColor(){this.interpolated_color=Ha(this.color_range)}}class XC{chartHelper;tree_map_arr=[];content_wrapper=null;tsInnerContainer=null;current_scale=1;constructor({tsInnerContainer:e,chartHelper:t}){this.tsInnerContainer=e,this.chartHelper=t,this.chartHelper.handleCollapseChildren=this.handleCollapseChildren.bind(this),setTimeout((()=>{this.organizeUI()}),0)}map_children_data_to_head(e,t){const r=this.chartHelper.tmp_tree_data.filter((e=>e.parentId==t)),a=this.chartHelper.createDynamicEl();return r.forEach((r=>{const i=this.chartHelper.createDynamicEl(),n=this.chartHelper.makeHead(r);i.appendChild(n?.node());const o=null==t?" st-root-el":"";i.className="ts-head-node-wrapper ts-w-id-"+r.id+o,a.appendChild(i),null!=e&&this.tree_map_arr.push({id:r.id,svgNode:e,targetChild:n?.node(),parentId:t}),this.chartHelper?.el_has_children(r.id)&&i.append(this.map_children_data_to_head(n,r.id))})),a.className="ts-head-wrapper child-container",void 0===e&&this.content_wrapper?.appendChild(a),a}organizeUI(){this.content_wrapper=this.chartHelper.createDynamicEl(),this.content_wrapper.className="ts-head-wrapper",this.chartHelper.set_tmp_tree_data(),this.map_children_data_to_head(),this.tsInnerContainer.appendChild(this.content_wrapper),this.drawBranchLinkFresh(),Bi((()=>{const e=jt(`${this.chartHelper.app_root_unique_selector} .root-svg-el`).node().getBoundingClientRect();this.chartHelper?.center_elem(e,"top")}),0)}drawBranchLinkFresh(){this.chartHelper.rootWrapperContainer?.querySelectorAll(".linker-line").forEach((e=>e.remove())),this.tree_map_arr.forEach((e=>this.drawBranchLink(e.id,e.svgNode,e.targetChild,e.parentId)))}drawBranchLink(e,t,r,a){const i=this.tsInnerContainer?.querySelector(".ts-w-id-"+a)?.getAttribute("data-ts-head-children-hidden");if("true"===i)return;const n=this.chartHelper?.color_handler.getColor(e),o=r.getBoundingClientRect(),c=t.node().getBoundingClientRect(),l=Math.sqrt(Math.PI*this.chartHelper.head_linker_thumb_circle_radius*this.chartHelper.head_linker_thumb_circle_radius)/2,s=c.width/this.current_scale/2,u=(c.height+l)/this.current_scale,h=o.x/this.current_scale-c.x/this.current_scale+r.clientWidth/2,d=o.top/this.current_scale-c.top/this.current_scale,p=Ix(null!=this.chartHelper?.tree_link_type?this.chartHelper?.tree_link_types[this.chartHelper?.tree_link_type]:Dx),y=[{source:[s,u],target:[h,d]}];t?.append("path").data(y).attr("d",p).attr("fill","none").attr("class","linker-line").attr("stroke",n?.gray).attr("stroke-width",1)}handleCollapseChildren(e,t,r){const a=e.node()?.parentElement,i=a?.getAttribute("data-ts-head-children-hidden");if(a?.hasAttribute("data-ts-head-children-hidden")||""!=a.querySelector(".child-container").innerHTML)if("true"==i){const e=a?.querySelector(".child-container");e.style.visibility="",a?.setAttribute("data-ts-head-children-hidden","false"),setTimeout((()=>{this.drawBranchLinkFresh()}),0)}else{const e=a?.querySelector(".child-container");e.style.visibility="hidden",a?.querySelectorAll(".linker-line").forEach((e=>e.remove())),a?.setAttribute("data-ts-head-children-hidden","true")}else{this.chartHelper.set_tmp_tree_data(t),a.querySelector(".child-container").remove();const r=this.map_children_data_to_head(e,t);a?.appendChild(r),a?.setAttribute("data-ts-head-children-hidden","false"),this.drawBranchLinkFresh()}}removeNodeRecursiveFromTreeMap(e){const t=this.tree_map_arr.filter((t=>t.parentId==e));t.forEach((e=>{this.tree_map_arr.splice(this.tree_map_arr.findIndex((t=>t.id==e.id)),1),this.tree_map_arr.filter((t=>t.id==e.id)).length>0&&this.removeNodeRecursiveFromTreeMap(e.id)}))}}class e_{content_wrapper=null;head_child_wrapper_center=null;head_child_wrapper_1=null;head_child_wrapper_2=null;tsInnerContainer=null;chartHelper;tree_map_arr=[];current_scale=1;constructor({tsInnerContainer:e,chartHelper:t}){this.tsInnerContainer=e,this.chartHelper=t,this.chartHelper.handleCollapseChildren=this.handleCollapseChildren.bind(this),setTimeout((()=>{this.organizeUI()}),0)}organizeUI(){this.content_wrapper=this.chartHelper.createDynamicEl(),this.head_child_wrapper_center=this.chartHelper.createDynamicEl(),this.head_child_wrapper_1=this.chartHelper.createDynamicEl(),this.head_child_wrapper_2=this.chartHelper.createDynamicEl(),this.head_child_wrapper_center.className="ts-vs-wrapper",this.head_child_wrapper_1.className="ts-vs-wrapper",this.head_child_wrapper_2.className="ts-vs-wrapper",this.content_wrapper.appendChild(this.head_child_wrapper_1),this.content_wrapper.appendChild(this.head_child_wrapper_center),this.content_wrapper.appendChild(this.head_child_wrapper_2),this.content_wrapper.className="ts-v-spider-head-wrapper",this.chartHelper.set_tmp_tree_data(),this.map_children_data_to_head(),this.tsInnerContainer.appendChild(this.content_wrapper),this.drawBranchLinkFresh(),Bi((()=>{const e=jt(`${this.chartHelper.app_root_unique_selector} .st-root-el > svg`).node().getBoundingClientRect();this.chartHelper?.center_elem(e,"center")}),0)}map_children_data_to_head(e,t,r){let a=this.chartHelper.tmp_tree_data.filter((e=>e.parentId==t));a=r||this.chartHelper.tmp_tree_data.filter((e=>e.parentId==t));const i=this.chartHelper.createDynamicEl(),n=this.chartHelper.getIsParentRootEl(t)&&null!=t;return a.forEach((r=>{const a=this.chartHelper.createDynamicEl(),o=this.chartHelper.get_second_ancestor_item(r.id);let c=null==o?1:this.chartHelper.getElemRelPosInTree(o?.id);const l=this.chartHelper.makeHead(r,null==t,{parent:"bottom",children:c%2==0?"bottom":"top"});a.appendChild(l?.node());const s=null==t?" st-root-el":"";if(a.className="ts-head-node-wrapper ts-w-id-"+r.id+s,c%2==0&&a.classList.add("top"),void 0===e?this.head_child_wrapper_center?.appendChild(a):n?this.chartHelper.getElemRelPosInTree(r.id)%2==0?this.head_child_wrapper_1?.appendChild(a):this.head_child_wrapper_2?.appendChild(a):(i.appendChild(a),c%2==0&&i.classList.add("top")),null!=e&&this.tree_map_arr.push({id:r.id,svgNode:e,targetChild:l?.node(),parentId:t,lineOrigin:c%2==0?"top":"bottom"}),this.chartHelper?.el_has_children(r.id))if(n)this.chartHelper.getElemRelPosInTree(r.id)%2==0?a.prepend(this.map_children_data_to_head(l,r.id)):a.append(this.map_children_data_to_head(l,r.id));else{const e=this.map_children_data_to_head(l,r.id);c%2==0?a.prepend(e):a.appendChild(e)}})),i.classList.add("child-container"),i}drawBranchLinkFresh(){this.chartHelper.rootWrapperContainer?.querySelectorAll(".linker-line").forEach((e=>e.remove())),this.tree_map_arr.forEach((e=>this.drawBranchLink(e.id,e.svgNode,e.targetChild,e.parentId,e.lineOrigin)))}drawBranchLink(e,t,r,a,i="bottom"){const n=this.tsInnerContainer?.querySelector(".ts-w-id-"+a)?.getAttribute("data-ts-head-children-hidden"),o=this.chartHelper.getIsParentRootEl(a);if("true"===n&&!o)return;const c=this.chartHelper?.color_handler.getColor(e),l=r.getBoundingClientRect(),s=t.node().getBoundingClientRect(),u=s.width/this.current_scale/2,h="top"==i?0:s.height/this.current_scale,d=l.x/this.current_scale-s.x/this.current_scale+r.clientWidth/2,p="top"==i?(l.top+l.height)/this.current_scale-s.top/this.current_scale:l.top/this.current_scale-s.top/this.current_scale,y=Ix(null!=this.chartHelper?.tree_link_type?this.chartHelper?.tree_link_types[this.chartHelper?.tree_link_type]:Dx),f=[{source:[u,h],target:[d,p]}];t?.append("path").data(f).attr("d",y).attr("fill","none").attr("class","linker-line linker-"+i).attr("stroke-width",1).attr("stroke",c?.gray).attr("style","z-index: -1")}handleCollapseChildren(e,t,r){const a=e.node()?.parentElement,i=this.chartHelper.getIsElRootTreeChild(t),n=a?.getAttribute("data-ts-head-children-hidden"),o=a?.querySelector(".child-container");if(i)return this.handleCollapseRootElChildren(e,t,r);if(a?.hasAttribute("data-ts-head-children-hidden")||""!=a.querySelector(".child-container").innerHTML)"true"==n?(o.style.visibility="visible",a?.setAttribute("data-ts-head-children-hidden","false"),this.drawBranchLinkFresh()):(o.style.visibility="hidden",a?.querySelectorAll(".linker-line").forEach((e=>e.remove())),a?.setAttribute("data-ts-head-children-hidden","true"));else{this.chartHelper.set_tmp_tree_data(t),a.querySelector(".child-container").remove();const r=this.map_children_data_to_head(e,t),i=this.chartHelper.get_second_ancestor_item(t);(null==i?1:this.chartHelper.getElemRelPosInTree(i?.id))%2==0?a?.prepend(r):a?.appendChild(r),a?.setAttribute("data-ts-head-children-hidden","false"),this.drawBranchLinkFresh()}}removeNodeRecursiveFromTreeMap(e,t){const r=this.tree_map_arr.filter((t=>t.parentId==e));r.forEach((e=>{this.tree_map_arr.splice(this.tree_map_arr.findIndex((t=>t.id==e.id)),1),this.tree_map_arr.filter((t=>t.id==e.id)).length>0&&this.removeNodeRecursiveFromTreeMap(e.id)})),t&&this.tree_map_arr.splice(this.tree_map_arr.findIndex((t=>t.id==e)),1)}handleCollapseRootElChildren(e,t,r){const a=e.node()?.parentElement,i=a?.getAttribute("data-ts-top-head-children-hidden"),n=a?.getAttribute("data-ts-bottom-head-children-hidden");if(0==r?this.chartHelper.tree_data.filter((e=>e.parentId==t&&this.chartHelper.getElemRelPosInTree(e.id)%2==0)):this.chartHelper.tree_data.filter((e=>e.parentId==t&&this.chartHelper.getElemRelPosInTree(e.id)%2!=0)),(i&&"false"!=i||0!=r)&&(n&&"false"!=n||0==r)){(0==r?a.parentElement.nextElementSibling:a.parentElement.previousElementSibling).style.visibility="",setTimeout((()=>{this.drawBranchLinkFresh();"true"==(0==r?a?.getAttribute("data-ts-bottom-head-children-hidden"):a?.getAttribute("data-ts-top-head-children-hidden"))&&a.querySelectorAll(".linker-"+(0==r?"top":"bottom")).forEach((e=>e.remove()))}),0),a?.setAttribute(0==r?"data-ts-top-head-children-hidden":"data-ts-bottom-head-children-hidden","false")}else{(0==r?a.parentElement.nextElementSibling:a.parentElement.previousElementSibling).style.visibility="hidden",a.querySelector("svg").querySelectorAll(".linker-"+(0==r?"bottom":"top")).forEach((e=>e.remove())),a?.setAttribute(0==r?"data-ts-top-head-children-hidden":"data-ts-bottom-head-children-hidden","true")}}}class t_{chartHelper;tree_map_arr=[];content_wrapper=null;tsInnerContainer=null;current_scale=1;constructor({tsInnerContainer:e,chartHelper:t}){this.tsInnerContainer=e,this.chartHelper=t,this.chartHelper.handleCollapseChildren=this.handleCollapseChildren.bind(this),setTimeout((()=>{this.organizeUI()}),0)}organizeUI(){this.content_wrapper=this.chartHelper.createDynamicEl(),this.content_wrapper.className="ts-head-wrapper",this.chartHelper.set_tmp_tree_data(),this.map_children_data_to_head(),this.tsInnerContainer.appendChild(this.content_wrapper),this.drawBranchLinkFresh(),Bi((()=>{const e=jt(`${this.chartHelper.app_root_unique_selector} .root-svg-el`).node().getBoundingClientRect();this.chartHelper?.center_elem(e,"left")}),0)}map_children_data_to_head(e,t){const r=this.chartHelper.tmp_tree_data.filter((e=>e.parentId==t)),a=this.chartHelper.createDynamicEl();return r.forEach((r=>{const i=this.chartHelper.createDynamicEl(),n=this.chartHelper.createDynamicEl(),o=this.chartHelper.makeHead(r,!1,{parent:"right",children:"left"});n.append(o?.node()),i.appendChild(n);const c=null==t?" st-root-el":"";i.className="ts-head-node-wrapper st-single-h ts-w-id-"+r.id+c,a.appendChild(i),null!=e&&this.tree_map_arr.push({id:r.id,svgNode:e,targetChild:o?.node(),parentId:t}),this.chartHelper?.el_has_children(r.id)&&i.append(this.map_children_data_to_head(o,r.id))})),a.className="ts-head-wrapper st-single-h-child-container",void 0===e&&this.content_wrapper?.appendChild(a),a}drawBranchLinkFresh(){this.chartHelper.rootWrapperContainer?.querySelectorAll(".linker-line").forEach((e=>e.remove())),this.tree_map_arr.forEach((e=>this.drawBranchLink(e.id,e.svgNode,e.targetChild,e.parentId)))}drawBranchLink(e,t,r,a){const i=this.tsInnerContainer?.querySelector(".ts-w-id-"+a)?.getAttribute("data-ts-head-children-hidden");if("true"===i)return;const n=this.chartHelper?.color_handler.getColor(e),o=r.getBoundingClientRect(),c=t.node().getBoundingClientRect(),l=c.width/this.current_scale,s=c.height/this.current_scale/2,u=o.x/this.current_scale-c.x/this.current_scale+0,h=(o.top+o.height/2)/this.current_scale-c.top/this.current_scale,d=Ix(null!=this.chartHelper?.tree_link_type?this.chartHelper?.tree_link_types[this.chartHelper?.tree_link_type]:Hx),p=[{source:[l,s],target:[u,h]}];t?.append("path").data(p).attr("d",d).attr("fill","none").attr("class","linker-line").attr("stroke-width",1).attr("stroke",n?.gray).attr("style","z-index: -1")}handleCollapseChildren(e,t,r){const a=e.node()?.parentElement.parentElement,i=a?.getAttribute("data-ts-head-children-hidden"),n=a?.querySelector("[class*='child-container']");if(a?.hasAttribute("data-ts-head-children-hidden")||""!=a.querySelector(".st-single-h-child-container").innerHTML)"true"==i?(n.style.visibility="",a?.setAttribute("data-ts-head-children-hidden","false"),this.drawBranchLinkFresh()):(n.style.visibility="hidden",a?.querySelectorAll(".linker-line").forEach((e=>e.remove())),a?.setAttribute("data-ts-head-children-hidden","true"));else{this.chartHelper.set_tmp_tree_data(t),a.querySelector(".st-single-h-child-container").remove();const r=this.map_children_data_to_head(e,t);a?.appendChild(r),a?.setAttribute("data-ts-head-children-hidden","false"),this.drawBranchLinkFresh()}}removeNodeRecursiveFromTreeMap(e){const t=this.tree_map_arr.filter((t=>t.parentId==e));t.forEach((e=>{this.tree_map_arr.splice(this.tree_map_arr.findIndex((t=>t.id==e.id)),1),this.tree_map_arr.filter((t=>t.id==e.id)).length>0&&this.removeNodeRecursiveFromTreeMap(e.id)}))}}class r_{content_wrapper=null;head_child_wrapper_center=null;head_child_wrapper_1=null;head_child_wrapper_2=null;tsInnerContainer=null;chartHelper;tree_map_arr=[];current_scale=1;constructor({tsInnerContainer:e,chartHelper:t}){this.tsInnerContainer=e,this.chartHelper=t,this.chartHelper.handleCollapseChildren=this.handleCollapseChildren.bind(this),setTimeout((()=>{this.organizeUI()}),0)}organizeUI(){this.content_wrapper=this.chartHelper.createDynamicEl(),this.head_child_wrapper_center=this.chartHelper.createDynamicEl(),this.head_child_wrapper_1=this.chartHelper.createDynamicEl(),this.head_child_wrapper_2=this.chartHelper.createDynamicEl(),this.head_child_wrapper_center.className="st-child-wrapper",this.head_child_wrapper_1.className="st-child-wrapper",this.head_child_wrapper_2.className="st-child-wrapper",this.content_wrapper.className="st-hsw-content-wrapper",this.content_wrapper.appendChild(this.head_child_wrapper_1),this.content_wrapper.appendChild(this.head_child_wrapper_center),this.content_wrapper.appendChild(this.head_child_wrapper_2),this.tsInnerContainer?.append(this.content_wrapper),this.chartHelper.set_tmp_tree_data(),this.map_children_data_to_head(),this.drawBranchLinkFresh(),Bi((()=>{const e=jt(`${this.chartHelper.app_root_unique_selector} .st-root-el > svg`).node().getBoundingClientRect();this.chartHelper?.center_elem(e,"center")}),0)}map_children_data_to_head(e,t,r){let a=this.chartHelper.tmp_tree_data.filter((e=>e.parentId==t));a=r||this.chartHelper.tmp_tree_data.filter((e=>e.parentId==t));const i=this.chartHelper.createDynamicEl(),n=this.chartHelper.getIsParentRootEl(t)&&null!=t;return a.forEach((r=>{const a=this.chartHelper.createDynamicEl(),o=this.chartHelper.get_second_ancestor_item(r.id);let c=null==o?1:this.chartHelper.getElemRelPosInTree(o?.id);const l=this.chartHelper.makeHead(r,null==t,{parent:"right",children:c%2==0?"right":"left"});a.appendChild(l?.node());const s=null==t?" st-root-el":"";if(a.className="ts-head-node-wrapper ts-w-id-"+r.id+s,c%2==0&&a.classList.add("top"),void 0===e?this.head_child_wrapper_center?.appendChild(a):n?this.chartHelper.getElemRelPosInTree(r.id)%2==0?this.head_child_wrapper_1?.appendChild(a):this.head_child_wrapper_2?.appendChild(a):(i.appendChild(a),c%2==0&&i.classList.add("top")),null!=e&&this.tree_map_arr.push({id:r.id,svgNode:e,targetChild:l?.node(),parentId:t,lineOrigin:c%2==0?"right":"left"}),this.chartHelper?.el_has_children(r.id))if(n)this.chartHelper.getElemRelPosInTree(r.id)%2==0?a.prepend(this.map_children_data_to_head(l,r.id)):a.append(this.map_children_data_to_head(l,r.id));else{const e=this.map_children_data_to_head(l,r.id);c%2==0?a.prepend(e):a.appendChild(e)}})),i.classList.add("child-container"),i}drawBranchLinkFresh(){this.chartHelper.rootWrapperContainer?.querySelectorAll(".linker-line").forEach((e=>e.remove())),this.tree_map_arr.forEach((e=>this.drawBranchLink(e.id,e.svgNode,e.targetChild,e.parentId,e.lineOrigin)))}drawBranchLink(e,t,r,a,i="bottom"){const n=this.tsInnerContainer?.querySelector(".ts-w-id-"+a)?.getAttribute("data-ts-head-children-hidden");if("true"===n)return;const o=this.chartHelper?.color_handler.getColor(e),c=r.getBoundingClientRect(),l=t.node().getBoundingClientRect(),s=Math.sqrt(Math.PI*this.chartHelper.head_linker_thumb_circle_radius*this.chartHelper.head_linker_thumb_circle_radius)/2,u="right"==i?0-s:(l.width+s)/this.current_scale,h=l.height/this.current_scale/2,d=(c.x+("right"==i?c.width:0))/this.current_scale-l.x/this.current_scale+0,p=(c.top+c.height/2)/this.current_scale-l.top/this.current_scale,y=Ix(null!=this.chartHelper?.tree_link_type?this.chartHelper?.tree_link_types[this.chartHelper?.tree_link_type]:Hx),f=[{source:[u,h],target:[d,p]}];t?.append("path").data(f).attr("d",y).attr("fill","none").attr("class","linker-line linker-"+i).attr("stroke-width",1).attr("stroke",o?.gray).attr("style","z-index: -1")}handleCollapseChildren(e,t,r){const a=e.node()?.parentElement,i=this.chartHelper.getIsElRootTreeChild(t),n=a?.getAttribute("data-ts-head-children-hidden");if(i)return this.handleCollapseRootElChildren(e,t,r);if(a?.hasAttribute("data-ts-head-children-hidden")||""!=a.querySelector(".child-container").innerHTML)"true"==n?(a.querySelector(".child-container").style.visibility="",a?.setAttribute("data-ts-head-children-hidden","false"),this.drawBranchLinkFresh()):(a?.setAttribute("data-ts-head-children-hidden","true"),a?.querySelectorAll(".linker-line").forEach((e=>e.remove())),a.querySelector(".child-container").style.visibility="hidden");else{this.chartHelper.set_tmp_tree_data(t),a.querySelector(".child-container").remove();const r=this.map_children_data_to_head(e,t),i=this.chartHelper.get_second_ancestor_item(t);(null==i?1:this.chartHelper.getElemRelPosInTree(i?.id))%2==0?a?.prepend(r):a?.appendChild(r),a?.setAttribute("data-ts-head-children-hidden","false"),setTimeout((()=>{this.drawBranchLinkFresh()}),0)}}removeNodeRecursiveFromTreeMap(e,t){const r=this.tree_map_arr.filter((t=>t.parentId==e));r.forEach((e=>{this.tree_map_arr.splice(this.tree_map_arr.findIndex((t=>t.id==e.id)),1),this.tree_map_arr.filter((t=>t.id==e.id)).length>0&&this.removeNodeRecursiveFromTreeMap(e.id)})),t&&this.tree_map_arr.splice(this.tree_map_arr.findIndex((t=>t.id==e)),1)}handleCollapseRootElChildren(e,t,r){const a=e.node()?.parentElement,i=a?.getAttribute("data-ts-top-head-children-hidden"),n=a?.getAttribute("data-ts-bottom-head-children-hidden");if(0==r?this.chartHelper.tree_data.filter((e=>e.parentId==t&&this.chartHelper.getElemRelPosInTree(e.id)%2==0)):this.chartHelper.tree_data.filter((e=>e.parentId==t&&this.chartHelper.getElemRelPosInTree(e.id)%2!=0)),(i&&"false"!=i||0!=r)&&(n&&"false"!=n||0==r)){(0==r?a.parentElement.previousElementSibling:a.parentElement.nextElementSibling).style.visibility="visible",setTimeout((()=>{this.drawBranchLinkFresh();"true"==(0==r?a?.getAttribute("data-ts-bottom-head-children-hidden"):a?.getAttribute("data-ts-top-head-children-hidden"))&&a.querySelectorAll(".linker-"+(0==r?"left":"right")).forEach((e=>e.remove()))}),0),a?.setAttribute(0==r?"data-ts-top-head-children-hidden":"data-ts-bottom-head-children-hidden","false")}else{const e=0==r?a.parentElement.previousElementSibling:a.parentElement.nextElementSibling;e.style.visibility="hidden",e.querySelectorAll(".linker-line").forEach((e=>e.remove())),a.querySelectorAll(".linker-"+(0==r?"right":"left")).forEach((e=>e.remove())),a?.setAttribute(0==r?"data-ts-top-head-children-hidden":"data-ts-bottom-head-children-hidden","true")}}}class a_{content_wrapper=null;head_child_wrapper_center=null;head_child_wrapper_1=null;head_child_wrapper_2=null;tsInnerContainer=null;chartHelper;tree_map_arr=[];current_scale=1;constructor({tsInnerContainer:e,chartHelper:t}){this.tsInnerContainer=e,this.chartHelper=t,this.chartHelper.handleCollapseChildren=this.handleCollapseChildren.bind(this),setTimeout((()=>{this.organizeUI()}),0)}organizeUI(){this.content_wrapper=this.chartHelper.createDynamicEl(),this.head_child_wrapper_center=this.chartHelper.createDynamicEl(),this.head_child_wrapper_1=this.chartHelper.createDynamicEl(),this.head_child_wrapper_2=this.chartHelper.createDynamicEl(),this.head_child_wrapper_center.className="st-child-wrapper",this.head_child_wrapper_1.className="st-child-wrapper",this.head_child_wrapper_2.className="st-child-wrapper",this.content_wrapper.className="st-cs-content-wrapper",this.content_wrapper.appendChild(this.head_child_wrapper_1),this.content_wrapper.appendChild(this.head_child_wrapper_2),this.content_wrapper.appendChild(this.head_child_wrapper_center),this.tsInnerContainer?.append(this.content_wrapper),this.chartHelper.set_tmp_tree_data(),this.map_children_data_to_head(),this.drawBranchLinkFresh(),Bi((()=>{const e=jt(`${this.chartHelper.app_root_unique_selector} .st-root-el > svg`).node().getBoundingClientRect();this.chartHelper?.center_elem(e,"bottom")}),0)}map_children_data_to_head(e,t,r){let a=this.chartHelper.tmp_tree_data.filter((e=>e.parentId==t));a=r||this.chartHelper.tmp_tree_data.filter((e=>e.parentId==t));const i=this.chartHelper.createDynamicEl(),n=this.chartHelper.getIsParentRootEl(t)&&null!=t;return a.forEach((r=>{const a=this.chartHelper.createDynamicEl(),o=this.chartHelper.get_second_ancestor_item(r.id);let c=null==o?1:this.chartHelper.getElemRelPosInTree(o?.id);const l=this.chartHelper.makeHead(r,!1,{parent:"right",children:null==t?"bottom":c%2==0?"right":"left"});a.appendChild(l?.node());const s=null==t?" st-root-el":"";if(a.className="ts-head-node-wrapper ts-w-id-"+r.id+s,c%2==0&&a.classList.add("top"),void 0===e?this.head_child_wrapper_center?.appendChild(a):n?this.chartHelper.getElemRelPosInTree(r.id)%2==0?this.head_child_wrapper_1?.appendChild(a):this.head_child_wrapper_2?.appendChild(a):(i.appendChild(a),c%2==0&&i.classList.add("top")),null!=e&&this.tree_map_arr.push({id:r.id,svgNode:e,targetChild:l?.node(),parentId:t,lineOrigin:c%2==0?"right":"left"}),this.chartHelper?.el_has_children(r.id))if(n)this.chartHelper.getElemRelPosInTree(r.id)%2==0?a.prepend(this.map_children_data_to_head(l,r.id)):a.append(this.map_children_data_to_head(l,r.id));else{const e=this.map_children_data_to_head(l,r.id);c%2==0?a.prepend(e):a.appendChild(e)}})),i.classList.add("child-container"),i}drawBranchLinkFresh(){this.chartHelper.rootWrapperContainer?.querySelectorAll(".linker-line").forEach((e=>e.remove())),this.tree_map_arr.forEach((e=>this.drawBranchLink(e.id,e.svgNode,e.targetChild,e.parentId,e.lineOrigin)))}drawBranchLink(e,t,r,a,i="bottom"){const n=this.tsInnerContainer?.querySelector(".ts-w-id-"+a)?.getAttribute("data-ts-head-children-hidden");if("true"===n)return;const o=this.chartHelper?.color_handler.getColor(e),c=this.chartHelper.getIsParentRootEl(a),l=r.getBoundingClientRect(),s=t.node().getBoundingClientRect();let u,h;c?(u=s.width/this.current_scale/2,h=0):(u="right"==i?0:s.width/this.current_scale,h=s.height/this.current_scale/2);const d=(l.x+("right"==i?l.width:0))/this.current_scale-s.x/this.current_scale+0,p=(l.top+l.height/2)/this.current_scale-s.top/this.current_scale,y=Ix(null!=this.chartHelper?.tree_link_type?this.chartHelper?.tree_link_types[this.chartHelper?.tree_link_type]:Hx),f=[{source:[u,h],target:[d,p]}];t?.append("path").data(f).attr("d",y).attr("fill","none").attr("class","linker-line").attr("stroke-width",1).attr("stroke",o?.gray).attr("style","z-index: -1")}handleCollapseChildren(e,t,r){const a=e.node()?.parentElement,i=this.chartHelper.getIsElRootTreeChild(t),n=a?.getAttribute("data-ts-head-children-hidden");if(i)return this.handleCollapseRootElChildren(e,t,r);if(a?.hasAttribute("data-ts-head-children-hidden")||""!=a.querySelector(".child-container").innerHTML)if("true"==n){const e=a?.querySelector(".child-container");e.style.visibility="",a?.setAttribute("data-ts-head-children-hidden","false"),this.drawBranchLinkFresh()}else{const e=a?.querySelector(".child-container");e.style.visibility="hidden",a?.querySelectorAll(".linker-line").forEach((e=>e.remove())),a?.setAttribute("data-ts-head-children-hidden","true")}else{this.chartHelper.set_tmp_tree_data(t),a.querySelector(".child-container").remove();const r=this.map_children_data_to_head(e,t),i=this.chartHelper.get_second_ancestor_item(t);(null==i?1:this.chartHelper.getElemRelPosInTree(i?.id))%2==0?a?.prepend(r):a?.appendChild(r),a?.setAttribute("data-ts-head-children-hidden","false"),this.drawBranchLinkFresh()}}removeNodeRecursiveFromTreeMap(e,t){const r=this.tree_map_arr.filter((t=>t.parentId==e));r.forEach((e=>{this.tree_map_arr.splice(this.tree_map_arr.findIndex((t=>t.id==e.id)),1),this.tree_map_arr.filter((t=>t.id==e.id)).length>0&&this.removeNodeRecursiveFromTreeMap(e.id)})),t&&this.tree_map_arr.splice(this.tree_map_arr.findIndex((t=>t.id==e)),1)}handleCollapseRootElChildren(e,t,r){const a=e.node()?.parentElement,i=a?.getAttribute("data-ts-head-children-hidden");i&&"false"!=i?(a.parentElement.previousElementSibling.style.visibility="",a.parentElement.previousElementSibling.previousElementSibling.style.visibility="",a?.setAttribute("data-ts-head-children-hidden","false")):(a.parentElement.previousElementSibling.style.visibility="hidden",a.parentElement.previousElementSibling.previousElementSibling.style.visibility="hidden",a.parentElement.previousElementSibling.querySelectorAll(".linker-line").forEach((e=>e.remove())),a.parentElement.previousElementSibling.previousElementSibling.querySelectorAll(".linker-line").forEach((e=>e.remove())),a?.setAttribute("data-ts-head-children-hidden","true")),this.drawBranchLinkFresh()}}class i_{content_wrapper=null;head_child_wrapper=null;tsInnerContainer=null;chartHelper;current_scale=1;nodes_group=void 0;links_group=void 0;rotate_deg=0;animation_interval=void 0;start_animation=!1;constructor({tsInnerContainer:e,chartHelper:t}){this.tsInnerContainer=e,this.chartHelper=t,setTimeout((()=>{this.organizeUI()}),0)}organizeUI(){this.content_wrapper=this.chartHelper.createDynamicEl(),this.head_child_wrapper=this.chartHelper.createDynamicEl(),this.head_child_wrapper.className="st-child-wrapper",this.content_wrapper.className="st-grs-content-wrapper",this.content_wrapper.appendChild(this.head_child_wrapper),this.tsInnerContainer?.append(this.content_wrapper),this.map_children_data_to_head(),Bi((()=>{const e=jt(`${this.chartHelper.app_root_unique_selector} .root-svg-el > g`).node().getBoundingClientRect();this.chartHelper?.center_elem(e,"center")}),0)}animate_chat(e=!1,t=!1){if(e)return this.rotate_deg+=this.chartHelper?.animation_rotation_interval*(t?-1:1),this.nodes_group.attr("transform",`rotate(${this.rotate_deg}, 0, 0)`),this.links_group.attr("transform",`rotate(${this.rotate_deg}, 0, 0)`);this.start_animation=!this.start_animation,this.start_animation?this.animation_interval=setInterval((()=>{this.rotate_deg+=this.chartHelper?.animation_rotation_interval*(t?-1:1),this.nodes_group.attr("transform",`rotate(${this.rotate_deg}, 0, 0)`),this.links_group.attr("transform",`rotate(${this.rotate_deg}, 0, 0)`)}),this.chartHelper?.animation_rotation_speed):(null!=this.animation_interval&&clearInterval(this.animation_interval),this.animation_interval=void 0)}map_children_data_to_head(){const e=Cp(this.chartHelper.data_to_d3_format()).sort(((e,t)=>t.height-e.height||e.data.name.localeCompare(t.data.name))),t=540*Math.sqrt(this.chartHelper.tree_data.length/3);kp().size([360,t]).separation(((e,t)=>50))(e);const r=Yt("svg");r.attr("width",580),r.attr("height",250),r.attr("style","overflow: visible");const a=r.append("g").attr("transform",`translate(${r.attr("width")/2},${r.attr("height")/2})`);a.append("g").attr("class","links"),a.append("g").attr("class","nodes"),e.each((e=>{const t=this.chartHelper?.makeHead(e.data,!1,!1);e.head=t.node(),e.head.removeEventListener("dblclick",this.chartHelper.handleCenterHead),e.head.ondblclick=e=>{e.stopPropagation(),e.preventDefault();const t=e.currentTarget.querySelector("g").getBoundingClientRect();this.chartHelper?.center_elem(t)},e.color_set=this.chartHelper?.color_handler.getColor(e.data.id)})),r.select("g.nodes").selectAll("svg.node").data(e.descendants()).enter().append((e=>("rounded"!=this.chartHelper?.chart_head_type&&this.chartHelper?.show_chart_head_border&&(e.head.querySelector("rect").style.fill="white",e.head.querySelector("rect").style.strokeWidth="1"),e.head))).classed("node",!0).select("g").attr("transform",(e=>`rotate(${e.x}, 0, 0) translate(0, ${-e.y})`)),r.select("g.nodes").selectAll("circle.node").data(e.descendants()).enter().append("circle").classed("node",!0).attr("cx",0).attr("cy",(e=>-e.y)).attr("r",5).attr("fill",(e=>e.color_set.color)).attr("stroke",(e=>e.color_set.gray)).attr("stroke-width",1).attr("transform",(e=>`rotate(${e.x}, 0, 0)`));const i=Tx().angle((e=>e.x*Math.PI/180)).radius((e=>e.y));r.select("g.links").selectAll("path.link").data(e.links()).enter().append("path").classed("link",!0).attr("stroke",(e=>e.target.color_set.gray)).attr("fill","none").attr("stroke-width",1.5).attr("d",(e=>i([e.target,e.source]))),this.nodes_group=r.select("g.nodes"),this.links_group=r.select("g.links"),this.head_child_wrapper?.append(r.node())}}class n_{content_wrapper=null;head_child_wrapper=null;tsInnerContainer=null;chartHelper;current_scale=1;root_svg=void 0;rotate_deg=0;animation_interval=void 0;start_animation=!1;constructor({tsInnerContainer:e,chartHelper:t}){this.tsInnerContainer=e,this.chartHelper=t,setTimeout((()=>{this.organizeUI()}),0)}organizeUI(){this.content_wrapper=this.chartHelper.createDynamicEl(),this.head_child_wrapper=this.chartHelper.createDynamicEl(),this.head_child_wrapper.className="st-child-wrapper",this.content_wrapper.className="st-grs-content-wrapper",this.content_wrapper.appendChild(this.head_child_wrapper),this.tsInnerContainer?.append(this.content_wrapper),this.map_children_data_to_head(),Bi((()=>{const e=jt(`${this.chartHelper.app_root_unique_selector} .root-svg-el`).node().getBoundingClientRect();this.chartHelper?.center_elem(e,"center")}),0)}animate_chat(e=!1,t=!1){if(e)return this.rotate_deg+=this.chartHelper?.animation_rotation_interval*(t?-1:1),this.root_svg.attr("transform",`rotate(${this.rotate_deg}, 0, 0)`);this.start_animation=!this.start_animation,this.start_animation?this.animation_interval=setInterval((()=>{this.rotate_deg+=this.chartHelper?.animation_rotation_interval*(t?-1:1),this.root_svg.style.transform=`rotate(${this.rotate_deg}deg)`}),this.chartHelper?.animation_rotation_speed):(null!=this.animation_interval&&clearInterval(this.animation_interval),this.animation_interval=void 0)}map_children_data_to_head(){const e=Cp(this.chartHelper.data_to_d3_format()).sort(((e,t)=>t.height-e.height||e.data.name.localeCompare(t.data.name))),t=540*Math.sqrt(this.chartHelper.tree_data.length/3),r=2*t,a=2*t;e.each((e=>{const t=this.chartHelper?.makeHead(e.data,!1,!1);e.head=t.node(),e.color_set=this.chartHelper?.color_handler.getColor(e.data.id)}));py().size([2*Math.PI,t]).separation(((e,t)=>100))(e);const i=Yt("svg").attr("viewBox",[-110-t,-110-t,r,a]).attr("width",r).attr("height",a).attr("style","background-color: none; overflow: visible;");i.append("g").attr("fill","none").attr("stroke",this.chartHelper?.color_handler.get_app_gray()).attr("stroke-opacity",1).attr("stroke-width",1.5).selectAll("path").data(e.links()).join("path").attr("d",Wx().angle((e=>e.x)).radius((e=>e.y)));const n=i.append("g").selectAll("g").data(e.descendants()).join("g").attr("transform",(e=>`rotate(${180*e.x/Math.PI-90}) translate(${e.y},0)`));n.append("circle").attr("fill",(e=>e.color_set.color)).attr("r",3),n.append((e=>("rounded"!=this.chartHelper?.chart_head_type&&this.chartHelper?.show_chart_head_border&&(e.head.querySelector("rect").style.fill="white",e.head.querySelector("rect").style.strokeWidth="1"),e.head))),n.append("title").text((e=>e.data.name+" - "+e.data.role)),this.root_svg=i.node(),this.head_child_wrapper?.append(i.node())}}var o_={zoomIn:' ',zoomOut:' zoom-out Created with Sketch Beta. ',resetZoom:' ',rotate:'',rotate_once:' ',rotate_once_anti_clockwise:' ',rotate_anticlockwise:''};class c_{root_ui_element=void 0;zoomInOut=()=>null;resetZoom=()=>null;animate_chat=()=>null;tree_type=void 0;animatable_trees=["goldenRod","radialSpiderLeg"];constructor({root_ui_element:e,zoomInOut:t,resetZoom:r,animate_chat:a}){this.root_ui_element=e,this.zoomInOut=t,this.resetZoom=r,this.animate_chat=a,setTimeout((()=>{this.make_tools()}),0)}make_tools(){const e=new xw;e.className="tools-container",this.root_ui_element?.appendChild(e);const t=new xw;t.className="tool-item",t.innerHTML=o_.zoomIn,t.title="Zoom in",t.onclick=e=>this.zoomInOut();const r=new xw;r.className="tool-item",r.innerHTML=o_.zoomOut,r.title="Zoom out",r.onclick=e=>this.zoomInOut("out");const a=new xw;a.className="tool-item",a.innerHTML=o_.resetZoom,a.title="Reset zoom & position",a.onclick=e=>this.resetZoom();const i=new xw;i.className="tool-item",i.innerHTML=o_.rotate,i.title="Start/Stop Clockwise Rotation";const n=new xw;n.className="tool-item",n.innerHTML=o_.rotate_anticlockwise,n.title="Start/Stop Anticlockwise Rotation";const o=new xw;o.className="tool-item",o.innerHTML=o_.rotate_once,o.title="Rotate Clockwise Once";const c=new xw;c.className="tool-item",c.innerHTML=o_.rotate_once_anti_clockwise,c.title="Rotate Anticlockwise Once",e.append(t),e.append(r),e.append(a),this.animatable_trees.includes(this.tree_type)&&(e.append(i),e.append(n),e.append(o),e.append(c),i.onclick=e=>this.animate_chat(),n.onclick=e=>this.animate_chat(!1,!0),o.onclick=e=>this.animate_chat(!0),c.onclick=e=>this.animate_chat(!0,!0))}}class l_ extends EventTarget{libraryName="TreeSpider";targetRootContainer=null;rootWrapperContainer=null;tsInnerContainer=null;rootCanvasEl=null;chartHelper={};currentChartUI;zoom_instace;colorHandler={};tree_default_point_position="";instance_unique_id="";options={targetContainer:"",width:"100%",height:"500px",placeEl:"override",tree_data:void 0,color_range:[],tree_type:"default",chart_head_type:"default",show_tools:!0,show_chart_head_border:!1,animation_rotation_speed:10,animation_rotation_interval:1,backgroundPattern:"default",backgroundSize:void 0,customBackground:void 0,backgroundPosition:void 0,head_linker_thumb_circle_radius:8,linker_thumb_icon_color:"bright500",linker_thumb_shape:"symbolCircle",head_image_shape:"symbolCircle",chart_head_bg:"#ffffff",auto_set_chart_head_bg:!1,display_tree_in_step:!1,auto_display_tree_in_step:!0,tree_level_step:2,pallet:{h:10,s:.5,l:.5,darker:3,brighter:.8,bright100:.5,dark100:.5,gray:50,gray85:85},tree_link_type:void 0,random_data_length:200,autoInitialize:!0,zoom_in_distance:1.5,zoom_out_distance:.5,verticalSpace:"120px",font_link:"https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap",font_name:"Lato",dropshadow:{x:"-50%",y:"-50%",width:"200%",height:"200%",dx:1,dy:1,stdDeviation:4,floodColor:"rgba(91, 91, 91, 0.19)"}};constructor(e){if(super(),null==e.targetContainer)throw new Error(this.libraryName+": The target container is required");if(null!=e.tree_data)this.options.tree_data=e.tree_data;else{const t=new qC({length:e.random_data_length||this.options.random_data_length});this.options.tree_data=t.generated_data}this.setOptions(e),this.instance_unique_id="tree_spider_"+this.options.targetContainer.replace(/[\W\D]/,"_"),this.loadFont(),console.info(this.libraryName+" ready!"),this.options.autoInitialize&&this.initialize()}initialize(){if(this.targetRootContainer=jt(this.options.targetContainer).node(),null===this.targetRootContainer)throw new Error(this.libraryName+": target container not found");this.targetRootContainer.setAttribute("data-tree-spider-initialized",this.instance_unique_id),this.createUI(),setTimeout((()=>{this.emitEvent("library.init",{rootContainer:this.rootWrapperContainer})}),0),console.info(this.libraryName+" initialized!")}initialize_root_container(){this.rootWrapperContainer=new vw,this.rootWrapperContainer.setAttribute("data-ts-unique-id",this.instance_unique_id),this.setCSSPropertyVar("--vertical-space-var",this.options.verticalSpace),this.setCSSPropertyVar("--font-family",this.options.font_name),this.setCSSPropertyVar("--root-cont-width",this.options.width),this.setCSSPropertyVar("--root-cont-height",this.options.height),this.rootWrapperContainer.setAttribute("backgroundPattern",this.options.backgroundPattern),this.rootWrapperContainer.setAttribute("backgroundSize",this.options.backgroundSize),this.rootWrapperContainer.setAttribute("customBackground",this.options.customBackground),this.rootWrapperContainer.setAttribute("backgroundPosition",this.options.backgroundPosition)}setCSSPropertyVar(e,t){this.rootWrapperContainer?.style.setProperty(e,t)}loadFont(){let e,t,r;null==jt('[href="https://fonts.googleapis.com"]').node()&&(t=Yt("link").attr("rel","preconnect").attr("href","https://fonts.googleapis.com")),null==jt('[href="https://fonts.gstatic.com"]').node()&&(r=Yt("link").attr("rel","preconnect").attr("href","https://fonts.gstatic.com").attr("crossOrigin","")),this.options.font_link&&(e=Yt("link").attr("href",this.options.font_link).attr("rel","stylesheet")),null!=t&&jt("head").node().appendChild(t.node()),null!=r&&jt("head").node().appendChild(r.node()),null!=e&&jt("head").node().appendChild(e.node())}setObjectValue(e,t){const r=e;if(0==Object.keys(r).length)return t;for(const e in r)if(Object.keys(t).includes(e)&&Object.hasOwnProperty.call(r,e))if("object"!=typeof r[e]||Array.isArray(r[e]))r[e]=t[e];else{const a=this.setObjectValue(r[e],t[e]);r[e]={...r[e],...a}}return r}createUI(){this.initialize_root_container(),this.chartHelper=new ZC,this.chartHelper.rootWrapperContainer=this.rootWrapperContainer,this.chartHelper.app_unique_id=this.instance_unique_id,this.chartHelper.tree_data=this.options.tree_data,this.chartHelper.center_elem=this.center_elem.bind(this),this.chartHelper.chart_head_type=this.options.chart_head_type,this.chartHelper.animation_rotation_speed=this.options.animation_rotation_speed,this.chartHelper.animation_rotation_interval=this.options.animation_rotation_interval,this.chartHelper.head_linker_thumb_circle_radius=this.options.head_linker_thumb_circle_radius,this.chartHelper.linker_thumb_icon_color=this.options.linker_thumb_icon_color,this.chartHelper.linker_thumb_shape=this.options.linker_thumb_shape,this.chartHelper.head_image_shape=this.options.head_image_shape,this.chartHelper.chart_head_bg=this.options.chart_head_bg,this.chartHelper.auto_set_chart_head_bg=this.options.auto_set_chart_head_bg,this.chartHelper.display_tree_in_step=this.options.display_tree_in_step,this.chartHelper.auto_display_tree_in_step=this.options.auto_display_tree_in_step,this.chartHelper.tree_level_step=this.options.tree_level_step,this.chartHelper.tree_link_type=this.options.tree_link_type,this.chartHelper.dropshadow=this.options.dropshadow,this.chartHelper.emitEvent=this.emitEvent.bind(this),this.colorHandler=new QC({tree_data:this.options.tree_data,color_range:this.options.color_range,pallet:this.options.pallet}),this.chartHelper.color_handler=this.colorHandler,this.placeRootContainer()}zoomInOut(e="in"){const t="in"==e?this.options.zoom_in_distance:this.options.zoom_out_distance;this.zoom_instace?.scaleBy(jt(`[data-ts-unique-id='${this.instance_unique_id}']`),t)}resetZoom(){const e=jt(`[data-ts-unique-id='${this.instance_unique_id}'] .root-svg-el > g`).node().getBoundingClientRect();this.center_elem(e,this.tree_default_point_position)}placeRootContainer(){if(this.tsInnerContainer=this.chartHelper.createDynamicEl(),this.tsInnerContainer.className="ts-inner-container",0==this.options.tree_data?.length){const e=new xw;e.innerText="No data provided!",this.tsInnerContainer.appendChild(e)}if(this.rootWrapperContainer?.appendChild(this.tsInnerContainer),"start"==this.options.placeEl?this.targetRootContainer?.prepend(this.rootWrapperContainer):"end"==this.options.placeEl?this.targetRootContainer?.append(this.rootWrapperContainer):"object"==typeof this.options.placeEl&&Object.keys(this.options.placeEl).length>0?this.targetRootContainer?.insertBefore(this.rootWrapperContainer,this.targetRootContainer.querySelector(this.options.placeEl.beforeEl)):(this.targetRootContainer.innerHTML="",this.targetRootContainer.appendChild(this.rootWrapperContainer)),this.bindPanning(),"default"==this.options.tree_type)this.currentChartUI=new XC({tree_data:this.options.tree_data,tsInnerContainer:this.tsInnerContainer,chartHelper:this.chartHelper});else if("vSpiderWalk"==this.options.tree_type)this.currentChartUI=new e_({tree_data:this.options.tree_data,tsInnerContainer:this.tsInnerContainer,chartHelper:this.chartHelper});else if("hSpider"==this.options.tree_type)this.currentChartUI=new t_({tree_data:this.options.tree_data,tsInnerContainer:this.tsInnerContainer,chartHelper:this.chartHelper});else if("hSpiderWalk"==this.options.tree_type)this.currentChartUI=new r_({tree_data:this.options.tree_data,tsInnerContainer:this.tsInnerContainer,chartHelper:this.chartHelper});else if("cellar"==this.options.tree_type)this.currentChartUI=new a_({tree_data:this.options.tree_data,tsInnerContainer:this.tsInnerContainer,chartHelper:this.chartHelper});else if("goldenRod"==this.options.tree_type)this.currentChartUI=new i_({tree_data:this.options.tree_data,tsInnerContainer:this.tsInnerContainer,chartHelper:this.chartHelper});else{if("radialSpiderLeg"!=this.options.tree_type)throw new Error("Not implemented and you are welcome to implement it :)");this.currentChartUI=new n_({tree_data:this.options.tree_data,tsInnerContainer:this.tsInnerContainer,chartHelper:this.chartHelper})}if(this.options.tree_data.length>0&&this.options.show_tools){new c_({root_ui_element:this.rootWrapperContainer,zoomInOut:this.zoomInOut.bind(this),resetZoom:this.resetZoom.bind(this),animate_chat:this.currentChartUI?.animate_chat?.bind(this.currentChartUI)}).tree_type=this.options.tree_type}}bindPanning(){const e=this.rootWrapperContainer?.getBoundingClientRect(),t=jt(`[data-ts-unique-id='${this.instance_unique_id}']`);this.zoom_instace=gw().extent([[0,0],[e.width,e.height]]).on("zoom",(e=>{this.emitEvent("zooming",{e:e})&&(this.tsInnerContainer.style.transform=`translate(${e.transform.x}px, ${e.transform.y}px) scale(${e.transform.k})`,this.rootWrapperContainer.style.setProperty("--ts-root-container-cursor","grabbing"),this.currentChartUI.current_scale=e.transform.k)})).on("end",(e=>{this.rootWrapperContainer.style.setProperty("--ts-root-container-cursor","grab")})),t.call(this.zoom_instace).on("dblclick.zoom",(e=>null))}center_elem(e,t){const r=jt(`[data-ts-unique-id='${this.instance_unique_id}']`);""==this.tree_default_point_position&&null!=t&&(this.tree_default_point_position=t);const a=r.node()?.getBoundingClientRect(),i=this.tsInnerContainer?.getBoundingClientRect(),n=(e.left-i.left)/this.currentChartUI.current_scale,o=(e.top-i.top)/this.currentChartUI.current_scale,c=a.width/2-e.width/2/this.currentChartUI.current_scale,l=a.height/2-e.height/2/this.currentChartUI.current_scale;let s=0,u=0;if("center"==(t||this.tree_default_point_position))s=n-c,u=o-l;else if("top"==(t||this.tree_default_point_position))s=n-c,u=o-10;else if("bottom"==(t||this.tree_default_point_position)){s=n-c;u=o-(l+(a.height/2-e.height/2))+10}else if("left"==(t||this.tree_default_point_position))s=n-10,u=o-l;else if("right"==(t||this.tree_default_point_position)){s=n-(c+(a.width/2-e.width/2))+10,u=o-l}r.transition().duration(2500).call(this.zoom_instace?.transform,cw.translate(-s,-u))}emitEvent(e,t,r=!0){const a=new CustomEvent(e,{detail:t,bubbles:!0,cancelable:r});return this.dispatchEvent(a)}updateChartHeadBg(e){"rounded"!=this.options.chart_head_type&&(this.rootWrapperContainer?.querySelectorAll(".main-svg-el").forEach((t=>t.querySelector("rect").style.fill=e)),this.addEventListener("chart_head.expanded",(()=>this.rootWrapperContainer?.querySelectorAll(".main-svg-el").forEach((t=>t.querySelector("rect").style.fill=e)))))}on(e,t){this.addEventListener(e,t)}setOptions(e){this.setObjectValue(this.options,e)}zoom(e){this.zoomInOut(e)}startStopRotateCW(){this.currentChartUI?.animate_chat()}startStopRotateACW(){this.currentChartUI?.animate_chat(!1,!0)}rotateOnceCW(){this.currentChartUI?.animate_chat(!0)}rotateOnceACW(){this.currentChartUI?.animate_chat(!0,!0)}}export{l_ as default}; diff --git a/package.json b/package.json index 9ee2724..333c5f1 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "treespider", - "version": "0.0.2", + "version": "1.0.0", "description": "An organization structure chart library for displaying organization structure in style", "main": "./dist/es/treeSpider.bundle.min.js", "author": "Abayomi Amusa", @@ -8,7 +8,7 @@ "scripts": { "test": "NODE_OPTIONS=--experimental-vm-modules npx jest", "rollup": "rollup -c", - "rollup-watch": "rollup -w", + "rollup-watch": "rollup -c='./rollup.config.mjs' -w", "sass": "sass scss/treeSpider.scss:dist/css/treeSpider.css -w", "sass-c": "sass scss/treeSpider.scss:dist/css/treeSpider.css", "tsw": "tsc -w", diff --git a/scss/treeSpider.scss b/scss/treeSpider.scss index 3d44bd6..46c2f82 100644 --- a/scss/treeSpider.scss +++ b/scss/treeSpider.scss @@ -11,10 +11,6 @@ --root-cont-height: 500px; } -$root-gray: rgb(95, 95, 95); // useless -$root-light-gray: rgb(187, 186, 186); // useless -$circle-fill: rgb(170, 170, 170); // useless -$line-gray: #545454; // useless $vertical-space: var(--vertical-space-var); .ts-root-wrapper-element * { @@ -91,15 +87,13 @@ $vertical-space: var(--vertical-space-var); } .main-svg-el { - background-color: white; overflow: visible; - border-radius: 16px; margin: 0px !important; - transition: background-color .3s linear; + background-color: transparent; +} - box-shadow: -1px 2px 14px 3px rgba(91, 91, 91, 0.19); - -webkit-box-shadow: -1px 2px 14px 3px rgba(91,91,91,0.19); - -moz-box-shadow: -1px 2px 14px 3px rgba(91,91,91,0.19); +.main-svg-el g rect { + transition: fill .3s linear; } .main-svg-el.rounded-head { @@ -114,7 +108,6 @@ $vertical-space: var(--vertical-space-var); } .main-svg-el .linker-line { - // stroke: $line-gray; pointer-events: none; } @@ -155,7 +148,7 @@ $vertical-space: var(--vertical-space-var); flex-direction: column !important; } -.ts-v-spider-head-wrapper > div { +.ts-v-spider-head-wrapper > ts-element { display: flex; flex-wrap: nowrap; justify-content: center; @@ -165,16 +158,16 @@ $vertical-space: var(--vertical-space-var); flex-shrink: 0; } -.ts-v-spider-head-wrapper > div:first-child { +.ts-v-spider-head-wrapper > ts-element:first-child { align-items: flex-end !important; } -.ts-v-spider-head-wrapper > div:nth-child(2) { +.ts-v-spider-head-wrapper > ts-element:nth-child(2) { align-items: center !important; padding-top: calc($vertical-space); } -.ts-v-spider-head-wrapper > div:nth-child(2) > div { +.ts-v-spider-head-wrapper > ts-element:nth-child(2) > ts-element { margin-bottom: $vertical-space/2 !important; } diff --git a/src/core/treeSpider.ts b/src/core/treeSpider.ts index 6deee84..b7a1383 100644 --- a/src/core/treeSpider.ts +++ b/src/core/treeSpider.ts @@ -1,22 +1,23 @@ -import { IChartHead, ITreeSpiderMain, TChartHeadType, TLinkType } from "../types/MainTypes"; -import TSRootContainer from "../utils/ts-root-container.js"; -import TSElement from "../utils/ts-element.js"; -import { TElementCenterPositions, TEventType, THeadImageShape, TLinkerCircleColor, TLinkerShape } from "../types/utils.js"; -import RandomDataGenerator from "../helpers/randomDataGenerator.js"; -import ChartMainHelper from "../helpers/chart-helper.js"; +import { IChartHead, ITreeSpiderMain } from "../types/MainTypes"; +import { TChartHeadType, TDropShadow, TLinkType } from "../types/utils"; +import TSRootContainer from "../utils/ts-root-container"; +import TSElement from "../utils/ts-element"; +import { TElementCenterPositions, TEventType, THeadImageShape, TLinkerCircleColor, TLinkerShape } from "../types/utils"; +import RandomDataGenerator from "../helpers/randomDataGenerator"; +import ChartMainHelper from "../helpers/chart-helper"; // color handler -import ColorHandler from "../helpers/colorHandler.js"; +import ColorHandler from "../helpers/colorHandler"; // trees -import DefaultTree from "../trees/default.tree.js"; -import VerticalSpiderWalkTree from "../trees/vSpiderWalk.tree.js"; -import HorizontalTreeSpider from "../trees/hSpider.tree.js"; -import HorizontalSpiderWalkTree from "../trees/hSpiderWalk.tree.js"; -import CellarTreeSpider from "../trees/cellarSpider.tree.js"; -import GoldenRodSpider from "../trees/goldenRodSpider.tree.js"; -import RadialSpiderLeg from "../trees/radialSpiderLeg.tree.js"; -import UITools from "../utils/ui-tools.js"; +import DefaultTree from "../trees/default.tree"; +import VerticalSpiderWalkTree from "../trees/vSpiderWalk.tree"; +import HorizontalTreeSpider from "../trees/hSpider.tree"; +import HorizontalSpiderWalkTree from "../trees/hSpiderWalk.tree"; +import CellarTreeSpider from "../trees/cellarSpider.tree"; +import GoldenRodSpider from "../trees/goldenRodSpider.tree"; +import RadialSpiderLeg from "../trees/radialSpiderLeg.tree"; +import UITools from "../utils/ui-tools"; import * as d3 from "d3" @@ -48,7 +49,7 @@ class TreeSpider extends EventTarget { */ protected options: ITreeSpiderMain = { targetContainer: '', - width: '900px', + width: '100%', height: '500px', placeEl: 'override', tree_data: undefined, @@ -92,6 +93,16 @@ class TreeSpider extends EventTarget { verticalSpace: '120px', font_link: "https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap", font_name: "Lato", + dropshadow: { + x: "-50%", + y: "-50%", + width: "200%", + height: "200%", + dx: 1, + dy: 1, + stdDeviation: 4, + floodColor: "rgba(91, 91, 91, 0.19)", + } } constructor (options: ITreeSpiderMain) { @@ -121,7 +132,7 @@ class TreeSpider extends EventTarget { * Method to programatically initialize TreeSpider */ public initialize() { - this.targetRootContainer = document.querySelector(this.options.targetContainer); + this.targetRootContainer = d3.select(this.options.targetContainer).node() as HTMLElement; if (this.targetRootContainer === null) throw new Error(this.libraryName + ": target container not found"); this.targetRootContainer.setAttribute('data-tree-spider-initialized', this.instance_unique_id); @@ -174,9 +185,9 @@ class TreeSpider extends EventTarget { .attr("rel", "stylesheet"); } - preconnect != undefined && document.head.appendChild(preconnect.node() as HTMLLinkElement); - crossorgin_preconnect != undefined && document.head.appendChild(crossorgin_preconnect.node() as HTMLLinkElement); - fontLink != undefined && document.head.appendChild(fontLink.node() as HTMLLinkElement); + preconnect != undefined && (d3.select('head').node() as HTMLHeadElement).appendChild(preconnect.node() as HTMLLinkElement); + crossorgin_preconnect != undefined && (d3.select('head').node() as HTMLHeadElement).appendChild(crossorgin_preconnect.node() as HTMLLinkElement); + fontLink != undefined && (d3.select('head').node() as HTMLHeadElement).appendChild(fontLink.node() as HTMLLinkElement); } protected setObjectValue (objectParent: Object, value: Object) { @@ -217,6 +228,7 @@ class TreeSpider extends EventTarget { this.chartHelper.auto_display_tree_in_step = this.options.auto_display_tree_in_step as boolean; this.chartHelper.tree_level_step = this.options.tree_level_step as number; this.chartHelper.tree_link_type = this.options.tree_link_type as TLinkType; + this.chartHelper.dropshadow = this.options.dropshadow as TDropShadow; this.chartHelper.emitEvent = this.emitEvent.bind(this); this.colorHandler = new ColorHandler({ @@ -238,7 +250,7 @@ class TreeSpider extends EventTarget { * The method to reset the zoom to the default zoom state */ public resetZoom() { - const first_svg_el = (d3.select(`[data-ts-unique-id='${this.instance_unique_id}'] .root-svg-el > g`)!.node() as SVGSVGElement)!.getBoundingClientRect() + const first_svg_el = (d3.select(`[data-ts-unique-id='${this.instance_unique_id}'] .root-svg-el > g`)!.node() as SVGSVGElement)!.getBoundingClientRect(); this.center_elem(first_svg_el as DOMRect, this.tree_default_point_position) } @@ -331,6 +343,7 @@ class TreeSpider extends EventTarget { private bindPanning () { const root_cont_rect = this.rootWrapperContainer?.getBoundingClientRect(); + // zoom filter removed because of issue on mobile browsers const zoomFilter = (event: any) => { event.preventDefault(); return (!event.ctrlKey || event.type === 'wheel') && !event.button; @@ -347,21 +360,20 @@ class TreeSpider extends EventTarget { } this.zoom_instace = d3.zoom() - .filter(zoomFilter) + // .filter(zoomFilter) // filter removed because of issue on mobile browsers .extent([[0, 0], [root_cont_rect!.width, root_cont_rect!.height]]) .on("zoom", zoomed) .on('end', (e: any) => { this.rootWrapperContainer!.style.setProperty('--ts-root-container-cursor', 'grab') }) - root_container_el.call(this.zoom_instace).on("dblclick.zoom", (e: any) => null); } - private center_elem (rect: DOMRect, position: TElementCenterPositions = 'center') { + private center_elem (rect: DOMRect, position?: TElementCenterPositions) { const root_container_el = d3?.select(`[data-ts-unique-id='${this.instance_unique_id}']`) as any; - this.tree_default_point_position == '' as TElementCenterPositions && (this.tree_default_point_position = position); + (this.tree_default_point_position == '' as TElementCenterPositions && position != undefined) && (this.tree_default_point_position = position); const root_cont_rect = root_container_el.node()?.getBoundingClientRect(); const inner_cont_rect = this.tsInnerContainer?.getBoundingClientRect(); @@ -375,20 +387,20 @@ class TreeSpider extends EventTarget { let moveX = 0; let moveY = 0; - if (position == 'center') { + if ((position || this.tree_default_point_position) == 'center') { moveX = rel_posX - offsetMoveX; moveY = rel_posY - offsetMoveY; - }else if (position == 'top') { + }else if ((position || this.tree_default_point_position) == 'top') { moveX = rel_posX - offsetMoveX; moveY = rel_posY - 10; - }else if (position == 'bottom') { + }else if ((position || this.tree_default_point_position) == 'bottom') { moveX = rel_posX - offsetMoveX; const el_chunk_sizes_y = (root_cont_rect.height / 2) - (rect.height/2) moveY = (rel_posY - (offsetMoveY + el_chunk_sizes_y)) + 10; - }else if (position == 'left') { + }else if ((position || this.tree_default_point_position) == 'left') { moveX = rel_posX - 10; moveY = rel_posY - offsetMoveY; - }else if (position == 'right') { + }else if ((position || this.tree_default_point_position) == 'right') { const el_chunk_sizes_x = (root_cont_rect.width / 2) - (rect.width/2) moveX = (rel_posX - (offsetMoveX + el_chunk_sizes_x)) + 10; moveY = rel_posY - offsetMoveY; @@ -410,15 +422,10 @@ class TreeSpider extends EventTarget { * @param color - The color value to set the chart heads to, you can pass any CSS color values to it */ public updateChartHeadBg(color: string) { - if (this.options.tree_type == 'goldenRod' || this.options.tree_type == 'radialSpiderLeg') { - this.rootWrapperContainer?.querySelectorAll('.main-svg-el').forEach(el => (el.querySelector('rect') as SVGRectElement).style.fill = color); - this.addEventListener('chart_head.expanded', () => - this.rootWrapperContainer?.querySelectorAll('.main-svg-el').forEach(el => (el.querySelector('rect') as SVGRectElement).style.fill = color)); - }else{ - this.rootWrapperContainer?.querySelectorAll('.main-svg-el').forEach(el => (el as SVGSVGElement).style.backgroundColor = color); - this.addEventListener('chart_head.expanded', () => - this.rootWrapperContainer?.querySelectorAll('.main-svg-el').forEach(el => (el as SVGSVGElement).style.backgroundColor = color)); - } + if(this.options.chart_head_type == 'rounded') return; + this.rootWrapperContainer?.querySelectorAll('.main-svg-el').forEach(el => (el.querySelector('rect') as SVGRectElement).style.fill = color); + this.addEventListener('chart_head.expanded', () => + this.rootWrapperContainer?.querySelectorAll('.main-svg-el').forEach(el => (el.querySelector('rect') as SVGRectElement).style.fill = color)); } /** @@ -450,7 +457,6 @@ class TreeSpider extends EventTarget { * The method to start rotating the chart clockwisely */ public startStopRotateCW() { - // once=false, anti=false this.currentChartUI?.animate_chat() } @@ -458,7 +464,6 @@ class TreeSpider extends EventTarget { * The method to start rotating the chart anti-clockwisely */ public startStopRotateACW() { - // once=false, anti=false this.currentChartUI?.animate_chat(false, true) } @@ -466,7 +471,6 @@ class TreeSpider extends EventTarget { * The method to rotate the chart once clockwisely */ public rotateOnceCW() { - // once=false, anti=false this.currentChartUI?.animate_chat(true) } @@ -474,7 +478,6 @@ class TreeSpider extends EventTarget { * The method to rotate the chart once clockwisely */ public rotateOnceACW() { - // once=false, anti=false this.currentChartUI?.animate_chat(true, true) } diff --git a/src/helpers/chart-helper.ts b/src/helpers/chart-helper.ts index 882d805..f778a2e 100644 --- a/src/helpers/chart-helper.ts +++ b/src/helpers/chart-helper.ts @@ -1,6 +1,7 @@ -import { TChartHeadPointPosition, TColorSet, TElementCenterPositions, TEventType, THeadImageShape, THeadPointPosition, TLinkerCircleColor, TLinkerShape, TTreeToItemHierarchy } from "../types/utils"; -import { IChartHead, ID3DataFormat, TChartHeadType, TLinkType } from "../types/MainTypes"; -import TSElement from "../utils/ts-element.js"; +import { TChartHeadPointPosition, TColorSet, TDropShadow, TElementCenterPositions, TEventType, THeadImageShape, THeadPointPosition, TLinkerCircleColor, TLinkerShape, TTreeToItemHierarchy } from "../types/utils"; +import { IChartHead, ID3DataFormat, } from "../types/MainTypes"; +import { TChartHeadType, TLinkType } from "../types/utils"; +import TSElement from "../utils/ts-element"; import ColorHandler from "./colorHandler"; import * as d3 from "d3"; @@ -54,7 +55,18 @@ class ChartMainHelper { head_image_surface_area: number = 60 chart_head_bg: string = '#ffffff' - auto_set_chart_head_bg: boolean = false + auto_set_chart_head_bg: boolean = false; + + dropshadow: TDropShadow = { + x: "-50%", + y: "-50%", + width: "200%", + height: "200%", + dx: 1, + dy: 1, + stdDeviation: 4, + floodColor: "rgba(91, 91, 91, 0.19)", + } emitEvent: (eventName: TEventType, data?: any, cancelable?: boolean) => boolean = () => false; @@ -112,7 +124,7 @@ class ChartMainHelper { } private get_page_body_bg () { - const page_style = document.body.style.getPropertyValue('background-color') + const page_style = (d3.select('body').node() as HTMLBodyElement).style.getPropertyValue('background-color') return page_style == '' ? '#ffffff' : page_style } @@ -153,7 +165,7 @@ class ChartMainHelper { e.stopPropagation(); const curr_target = e.currentTarget; const rect = curr_target.getBoundingClientRect() - this.center_elem(rect) + this.center_elem(rect, 'center') } public defaultHead (head_data: IChartHead, doubleVerticalPoints = false, pointPosition: TChartHeadPointPosition = {parent: "bottom", children: "top"}) { @@ -169,29 +181,24 @@ class ChartMainHelper { .attr("class", "main-svg-el" + (this.getIsElRootTreeChild(head_data.id) ? ' root-svg-el' : '')) .attr('width', this.chartHeadWidth) .attr('height', this.chartHeadHeight) - .attr('style', 'background-color: ' + chart_head_bg) + .attr('min-height', '0') + .attr('overflow', 'auto') .on('dblclick', (e) => this.handleCenterHead(e)); - // Gaussian blur - const defs = d3!.create('defs') - .append('filter') - .attr('id', 'blur1') - .attr('x', 0) - .attr('y', 0) - .append('feGaussianBlur') - .attr('in', 'SourceGraphic') - .attr('stdDeviation', '3') + // Dropshadow blur + this.add_drop_shadow(svgNode) const all_group = svgNode.append('g') - + const rect = all_group?.append('rect') .attr('rx', 16) .attr('ry', 16) .attr('width', this.chartHeadWidth) .attr('height', this.chartHeadHeight) .attr('stroke', this.show_chart_head_border ? color_set.color : 'none') - .attr('fill', 'none') + .attr('fill', chart_head_bg) .attr('stroke-width', 0) + .attr('filter', 'url(#shadow)') const rect_half_width = parseInt(rect!.attr('width'))/2 @@ -268,7 +275,7 @@ class ChartMainHelper { titles.forEach((title: string, index: number) => { positionTitle?.append('tspan') .attr('x', parseInt(rect!.attr('width'))/2) - .attr('dy', index > 0 ? '.6rem' : 0) + .attr('dy', index > 0 ? 10 : 0) .text(title.toString()) .attr('fill', color_set.dark100); index > 0 && (move_down += 10); @@ -287,7 +294,7 @@ class ChartMainHelper { location_title.forEach((title: string, index: number) => { employeeLocation?.append('tspan') .attr('x', parseInt(rect!.attr('width'))/2) - .attr('dy', index > 0 ? '.6rem' : 0) + .attr('dy', index > 0 ? 10 : 0) .text(title.toString()); index > 0 && (move_down += 10); }) @@ -314,6 +321,7 @@ class ChartMainHelper { const color_set = this.color_handler.getColor(head_data.id as unknown as number); let move_down = 0; + const chart_head_bg = this.get_chart_head_bg(); const svgNode = d3?.create('svg') .attr("class", "main-svg-el" + (this.getIsElRootTreeChild(head_data.id) ? ' root-svg-el' : '')) @@ -323,6 +331,7 @@ class ChartMainHelper { .on('dblclick', (e) => this.handleCenterHead(e)); const all_group = svgNode.append('g'); + this.add_drop_shadow(svgNode) const rect = all_group?.append('rect') .attr('rx', 16) @@ -330,7 +339,8 @@ class ChartMainHelper { .attr('width', this.chartHeadLandscapeWidth) .attr('height', this.chartHeadLandscapeHeight) .attr('stroke', this.show_chart_head_border ? color_set.color : 'none') - .attr('fill', 'none') + .attr('fill', chart_head_bg) + .attr('filter', 'url(#shadow)') .attr('stroke-width', 0) const rect_half_height = parseInt(rect!.attr('height'))/2 @@ -339,7 +349,61 @@ class ChartMainHelper { const rightGroup = all_group.append('g') .attr('x', 0) - .attr('y', 0) + .attr('y', 0) + + const leftStartOrigin = parseInt(rect!.attr('height')) + 20; + + const employeeName = rightGroup?.append('text') + .attr('x', leftStartOrigin) + .attr('y', 30) + .attr('font-size', '95%') + .attr('fill', color_set.darker); + + employee_name_split.forEach((title: string, index: number) => { + employeeName?.append('tspan') + .attr('x', leftStartOrigin) + .attr('y', 30) + .attr('dy', index > 0 ? move_down + 14 + index : 0) + .attr('font-size', '95%') + .attr('style', "z-index: +9") + .text(title.toString()); + index > 0 && (move_down += 14); + }) + + const positionTitle = rightGroup?.append('text') + .attr('x', leftStartOrigin) + .attr('y', 54 + move_down) + .attr('font-size', '65%') + + const titles = this.splitStringIntoBatch(head_data.role, 30) // role + + titles.forEach((title: string, index: number) => { + positionTitle?.append('tspan') + .attr('x', leftStartOrigin) + .attr('dy', index > 0 ? 10 : 0) + .attr('y', 54 + move_down) + .text(title.toString()) + .attr('fill', color_set.dark100); + index > 0 && (move_down += 10); + }) + + if (head_data.location !== undefined) { + const employeeLocation = rightGroup?.append('text') + .attr('x', leftStartOrigin) + .attr('y', 69 + move_down) + .attr('font-size', '65%') + .attr('fill', color_set.dark100); + + const location_title = this.splitStringIntoBatch(head_data.location, 30) // role + + location_title.forEach((title: string, index: number) => { + employeeLocation?.append('tspan') + .attr('x', leftStartOrigin) + .attr('dy', index > 0 ? 10 : 0) + .text(title.toString()); + index > 0 && (move_down += 10); + }) + } const leftGroup = all_group.append('g'); @@ -352,21 +416,21 @@ class ChartMainHelper { rect.attr('height', locked_height + chartHeadLandscapeHeight) svgNode.attr('height', locked_height + chartHeadLandscapeHeight) - svgNode.attr('width', this.chartHeadLandscapeWidth + chartHeadLandscapeHeight) - rect.attr('width', this.chartHeadLandscapeWidth + chartHeadLandscapeHeight) + svgNode.attr('width', this.chartHeadLandscapeWidth + 20 + chartHeadLandscapeHeight) + rect.attr('width', this.chartHeadLandscapeWidth + 20 + chartHeadLandscapeHeight) leftGroup?.append('path') .attr('d', d3!.symbol().type(d3![this.head_image_shape as unknown as keyof typeof d3] as d3.SymbolType).size(Math.pow(this.head_image_surface_area-this.get_image_shape_spacing(this.head_image_shape),2))) .attr('stroke', this.symbol_type(this.head_image_shape) == 'stroke' ? color_set.color : 'none') .attr('stroke-width', this.symbol_type(this.head_image_shape) == 'stroke' ? 1 : 0) .attr('fill', this.symbol_type(this.head_image_shape) == 'stroke' ? 'transparent' : color_set.color) - .attr('transform', `translate(${parseInt(rect!.attr('height'))/2}, 50)`) + .attr('transform', `translate(50, ${parseInt(rect!.attr('height'))/2})`) leftGroup?.append('text') .attr('class', '') .attr('text-anchor', 'middle') .attr('fill', this.symbol_type(this.head_image_shape) == 'stroke' ? color_set.color : color_set.bright500) - .attr('x', parseInt(rect!.attr('height'))/2) + .attr('x', 50) .attr('y', (parseInt(rect!.attr('height'))/2) + 6) .attr('font-size', '95%') .text(this.get_user_initials(head_data.name)); // employee initials @@ -388,7 +452,7 @@ class ChartMainHelper { .attr('id', "landscape-clip-"+head_data.id) .append('path') .attr('d', d3!.symbol().type(d3![this.head_image_shape as unknown as keyof typeof d3] as d3.SymbolType).size(Math.pow(this.head_image_surface_area-this.get_image_shape_spacing(this.head_image_shape),2))) - .attr('transform', `translate(${(parseInt(rect!.attr('height'))/2)}, ${this.head_image_surface_area + (extra_y_dist + 20)})`) + .attr('transform', `translate(50, ${parseInt(rect!.attr('height'))/2})`) .attr('fill', color_set.bright500); leftGroup?.append('image') @@ -396,64 +460,11 @@ class ChartMainHelper { .attr('preserveAspectRatio', 'xMaxYMax slice') .attr('width', this.head_image_surface_area) .attr('height', this.head_image_surface_area) - .attr('x', (parseInt(rect!.attr('height'))/2) - (this.head_image_surface_area/2)) - .attr('y', (this.head_image_surface_area/2) + (extra_y_dist + 20)) + .attr('x', 50 - (this.head_image_surface_area/2)) + .attr('y', parseInt(rect!.attr('height'))/2 - (this.head_image_surface_area/2)) .attr('clip-path', `url(#landscape-clip-${head_data.id})`); } - const leftStartOrigin = parseInt(rect!.attr('height')); - - const employeeName = rightGroup?.append('text') - .attr('x', leftStartOrigin) - .attr('y', 30) - .attr('font-size', '95%') - .attr('fill', color_set.darker); - - employee_name_split.forEach((title: string, index: number) => { - employeeName?.append('tspan') - .attr('x', leftStartOrigin) - .attr('y', 30) - .attr('dy', index > 0 ? '.7rem' : 0) - .attr('font-size', '95%') - .attr('style', "z-index: +9") - .text(title.toString()); - index > 0 && (move_down += 10); - }) - - const positionTitle = rightGroup?.append('text') - .attr('x', leftStartOrigin) - .attr('y', 50 + move_down) - .attr('font-size', '65%') - - const titles = this.splitStringIntoBatch(head_data.role, 30) // role - - titles.forEach((title: string, index: number) => { - positionTitle?.append('tspan') - .attr('x', leftStartOrigin) - .attr('dy', index > 0 ? '.6rem' : 0) - .attr('y', 50 + move_down) - .text(title.toString()) - .attr('fill', color_set.dark100); - index > 0 && (move_down += 10); - }) - - if (head_data.location !== undefined) { - const employeeLocation = rightGroup?.append('text') - .attr('x', leftStartOrigin) - .attr('y', 65 + move_down) - .attr('font-size', '65%') - .attr('fill', color_set.dark100); - - const location_title = this.splitStringIntoBatch(head_data.location, 30) // role - - location_title.forEach((title: string, index: number) => { - employeeLocation?.append('tspan') - .attr('x', leftStartOrigin) - .attr('dy', index > 0 ? '.6rem' : 0) - .text(title.toString()); - index > 0 && (move_down += 10); - }) - } this.add_linker( all_group, has_parent, has_children, pointPosition, @@ -552,7 +563,7 @@ class ChartMainHelper { .attr('text-anchor', 'middle') .attr('x', parseInt(rect!.attr('width'))/2) .attr('y', this.chartHeadRoundedWidth + 18) - .attr('dy', i > 0 ? 50+move_down : 0+move_down) + .attr('dy', i > 0 ? 15+move_down : 0+move_down) .attr('font-size', '105%') .attr('fill', color_set.darker) .attr('style', `text-transform: ${i > 0 ? 'none' : 'capitalize'}`) @@ -571,7 +582,7 @@ class ChartMainHelper { titles.forEach((title: string, index: number) => { positionTitle?.append('tspan') .attr('x', parseInt(rect!.attr('width'))/2) - .attr('dy', index > 0 ? '.6rem' : 0) + .attr('dy', index > 0 ? 10 : 0) .text(title.toString()) .attr('fill', color_set.dark100); index > 0 && (move_down += 10); @@ -590,7 +601,7 @@ class ChartMainHelper { location_title.forEach((title: string, index: number) => { employeeLocation?.append('tspan') .attr('x', parseInt(rect!.attr('width'))/2) - .attr('dy', index > 0 ? '.6rem' : 0) + .attr('dy', index > 0 ? 10 : 0) .text(title.toString()); index > 0 && (move_down += 10); }) @@ -672,7 +683,7 @@ class ChartMainHelper { }, 0); click_counter % 2 == 0 ? this.emitEvent('chart_head.expanded', {svgNode, head_data, pointPosition}, false) : this.emitEvent('chart_head.collapsed', {svgNode, head_data, pointPosition}, false); - }) + }); if (!this.el_has_children(head_data.id, true)) { click_counter++ @@ -706,7 +717,7 @@ class ChartMainHelper { }, 0); click_counter_2 % 2 == 0 ? this.emitEvent('chart_head.expanded', {svgNode, head_data, pointPosition}, false) : this.emitEvent('chart_head.collapsed', {svgNode, head_data, pointPosition}, false); - }) + }); add_link_icon('minus', this.inverse_link_point_position[pointPosition.parent], 'ts-lnk-icn-'+head_data.id+'-2') @@ -714,6 +725,22 @@ class ChartMainHelper { } } + private add_drop_shadow (svgNode: d3.Selection) { + // Dropshadow blur + svgNode.append('defs') + .append('filter') + .attr('id', 'shadow') + .attr('x', this.dropshadow.x) + .attr('y', this.dropshadow.y) + .attr('width', this.dropshadow.width) + .attr('height', this.dropshadow.height) + .append('feDropShadow') + .attr('dx', this.dropshadow.dx) + .attr('dy', this.dropshadow.dy) + .attr('stdDeviation', this.dropshadow.stdDeviation) + .attr('flood-color', this.dropshadow.floodColor) + } + public get_tree_items_hierarchy (parentId?: string, parent_index?: number, action?: {level?: number; item_id?: string; callbackFn: (item: IChartHead, level: number) => void}) { const hierarchies = this.tree_data.filter(data => data.parentId == parentId); const set_child_level = parent_index == undefined ? 1 : parent_index + 1; diff --git a/src/helpers/colorHandler.ts b/src/helpers/colorHandler.ts index 229d97c..837445a 100644 --- a/src/helpers/colorHandler.ts +++ b/src/helpers/colorHandler.ts @@ -1,5 +1,6 @@ import * as d3 from "d3"; -import { IChartHead, TColorPallet } from "../types/MainTypes"; +import { IChartHead } from "../types/MainTypes"; +import { TColorPallet } from "../types/utils"; import { TColorSet } from "../types/utils"; @@ -55,7 +56,7 @@ class ColorHandler { } public get_app_gray () { - return d3.gray(50).toString(); + return d3.gray(this.pallet.gray).toString(); } private get_color_percentage (index: number) { diff --git a/src/trees/cellarSpider.tree.ts b/src/trees/cellarSpider.tree.ts index 7c63593..615ae08 100644 --- a/src/trees/cellarSpider.tree.ts +++ b/src/trees/cellarSpider.tree.ts @@ -1,7 +1,7 @@ import { TBranchLineOrigin, TTreeClassParams, TTreeMapArr } from "../types/utils"; -import ChartMainHelper from "../helpers/chart-helper.js"; +import ChartMainHelper from "../helpers/chart-helper"; import { IChartHead } from "../types/MainTypes"; -import TSElement from "../utils/ts-element.js"; +import TSElement from "../utils/ts-element"; import * as d3 from 'd3' class CellarTreeSpider { diff --git a/src/trees/default.tree.ts b/src/trees/default.tree.ts index f8eafca..9d29b88 100644 --- a/src/trees/default.tree.ts +++ b/src/trees/default.tree.ts @@ -1,7 +1,7 @@ -import ChartMainHelper from "../helpers/chart-helper.js"; +import ChartMainHelper from "../helpers/chart-helper"; import { IChartHead } from "../types/MainTypes"; import { TChildrenMapperReturnEl, TTreeClassParams, TTreeMapArr } from "../types/utils"; -import TSElement from "../utils/ts-element.js"; +import TSElement from "../utils/ts-element"; import * as d3 from 'd3' class DefaultTree { diff --git a/src/trees/goldenRodSpider.tree.ts b/src/trees/goldenRodSpider.tree.ts index b43eea3..0c4f033 100644 --- a/src/trees/goldenRodSpider.tree.ts +++ b/src/trees/goldenRodSpider.tree.ts @@ -1,5 +1,5 @@ -import { TTreeClassParams } from "src/types/utils.js"; -import ChartMainHelper from "../helpers/chart-helper.js"; +import { TTreeClassParams } from "src/types/utils"; +import ChartMainHelper from "../helpers/chart-helper"; import * as d3 from 'd3' class GoldenRodSpider { @@ -55,7 +55,7 @@ class GoldenRodSpider { } this.start_animation = !this.start_animation if (this.start_animation) { - this.animation_interval = setInterval(() => { + this.animation_interval = setInterval(() => { this.rotate_deg += (this.chartHelper?.animation_rotation_interval as number) * (anti ? -1 : 1); this.nodes_group.attr('transform', `rotate(${this.rotate_deg}, 0, 0)`); this.links_group.attr('transform', `rotate(${this.rotate_deg}, 0, 0)`); diff --git a/src/trees/hSpider.tree.ts b/src/trees/hSpider.tree.ts index ecb09ae..3e40b46 100644 --- a/src/trees/hSpider.tree.ts +++ b/src/trees/hSpider.tree.ts @@ -1,7 +1,7 @@ import { IChartHead } from "../types/MainTypes"; -import ChartMainHelper from "../helpers/chart-helper.js"; -import { TTreeClassParams, TTreeMapArr } from "../types/utils.js"; -import TSElement from "../utils/ts-element.js"; +import ChartMainHelper from "../helpers/chart-helper"; +import { TTreeClassParams, TTreeMapArr } from "../types/utils"; +import TSElement from "../utils/ts-element"; import * as d3 from 'd3' class HorizontalTreeSpider { diff --git a/src/trees/hSpiderWalk.tree.ts b/src/trees/hSpiderWalk.tree.ts index e5e238e..7c8fa9e 100644 --- a/src/trees/hSpiderWalk.tree.ts +++ b/src/trees/hSpiderWalk.tree.ts @@ -1,7 +1,7 @@ -import { IChartHead } from "../types/MainTypes.js"; -import ChartMainHelper from "../helpers/chart-helper.js"; -import { TBranchLineOrigin, TTreeClassParams, TTreeMapArr } from "../types/utils.js"; -import TSElement from "../utils/ts-element.js"; +import { IChartHead } from "../types/MainTypes"; +import ChartMainHelper from "../helpers/chart-helper"; +import { TBranchLineOrigin, TTreeClassParams, TTreeMapArr } from "../types/utils"; +import TSElement from "../utils/ts-element"; import * as d3 from 'd3' class HorizontalSpiderWalkTree { diff --git a/src/trees/radialSpiderLeg.tree.ts b/src/trees/radialSpiderLeg.tree.ts index 1640ee4..d122ed4 100644 --- a/src/trees/radialSpiderLeg.tree.ts +++ b/src/trees/radialSpiderLeg.tree.ts @@ -1,5 +1,5 @@ -import { TTreeClassParams } from "src/types/utils.js"; -import ChartMainHelper from "../helpers/chart-helper.js"; +import { TTreeClassParams } from "src/types/utils"; +import ChartMainHelper from "../helpers/chart-helper"; import * as d3 from 'd3' class RadialSpiderLeg { @@ -54,7 +54,7 @@ class RadialSpiderLeg { if (this.start_animation) { this.animation_interval = setInterval(() => { this.rotate_deg += (this.chartHelper?.animation_rotation_interval as number) * (anti ? -1 : 1); - this.root_svg.attr('transform', `rotate(${this.rotate_deg}, 0, 0)`); + this.root_svg.style.transform = `rotate(${this.rotate_deg}deg)`; }, this.chartHelper?.animation_rotation_speed); }else{ this.animation_interval != undefined && clearInterval(this.animation_interval); @@ -96,7 +96,7 @@ class RadialSpiderLeg { .attr("viewBox", [-marginLeft - radius, -marginTop - radius, width, height]) .attr("width", width) .attr("height", height) - .attr("style", "background-color: none; max-width: 100%; height: auto; overflow: visible;") + .attr("style", "background-color: none; overflow: visible;") svg.append("g") .attr("fill", "none") @@ -133,7 +133,7 @@ class RadialSpiderLeg { mainNode.append("title") .text(d => d.data.name + " - " + d.data.role); - this.root_svg = svg; + this.root_svg = svg.node(); this.head_child_wrapper?.append(svg.node() as SVGSVGElement); diff --git a/src/trees/spiderlingsPacks.tree.ts b/src/trees/spiderlingsPacks.tree.ts index aff28cc..052a710 100644 --- a/src/trees/spiderlingsPacks.tree.ts +++ b/src/trees/spiderlingsPacks.tree.ts @@ -1,4 +1,4 @@ -import ChartMainHelper from "../helpers/chart-helper.js"; +import ChartMainHelper from "../helpers/chart-helper"; import { TTreeClassParams } from "src/types/utils"; import * as d3 from 'd3' diff --git a/src/trees/vSpiderWalk.tree.ts b/src/trees/vSpiderWalk.tree.ts index 1a19c36..022d548 100644 --- a/src/trees/vSpiderWalk.tree.ts +++ b/src/trees/vSpiderWalk.tree.ts @@ -1,7 +1,7 @@ -import ChartMainHelper from "../helpers/chart-helper.js"; +import ChartMainHelper from "../helpers/chart-helper"; import { IChartHead } from "../types/MainTypes"; import { TBranchLineOrigin, TTreeClassParams, TTreeMapArr } from "../types/utils"; -import TSElement from "../utils/ts-element.js"; +import TSElement from "../utils/ts-element"; import * as d3 from 'd3' class VerticalSpiderWalkTree { diff --git a/src/types/MainTypes.ts b/src/types/MainTypes.ts index a97253f..59231cd 100644 --- a/src/types/MainTypes.ts +++ b/src/types/MainTypes.ts @@ -1,13 +1,13 @@ -import { THeadImageShape, TLinkerCircleColor, TLinkerShape } from "./utils"; +import { TChartHeadType, TColorPallet, TDropShadow, THeadImageShape, TLinkType, TLinkerCircleColor, TLinkerShape } from "./utils"; export interface ITreeSpiderMain { /** - * The target container in which SpiderTree will be spawned in + * The target container in which TreeSpider will be spawned in */ targetContainer: string; /** - * How SpiderTree container should be placed in the target root container, - * provide a CSS selector to beforeEl if SpiderTree container should be placed + * How TreeSpider container should be placed in the target root container, + * provide a CSS selector to beforeEl if TreeSpider container should be placed * before a container in the provided target container */ placeEl?: 'override' | 'start' | 'end' | {beforeEl: string}; @@ -160,7 +160,11 @@ export interface ITreeSpiderMain { * The height of the TreeSpider wrapper container */ height?: string; -} + /** + * Drop shadow options + */ + dropshadow?: TDropShadow; +}; export interface IChartHead { /** @@ -173,27 +177,8 @@ export interface IChartHead { parentId?: string; stat?: number; image?: string; -} +}; export interface ID3DataFormat extends IChartHead { children: IChartHead[]; -} - -export type TColorPallet = { - h: number; - s: number; - l: number; - darker: number; - brighter: number; - bright100: number; - dark100: number; - gray: number; - gray85: number; -} - -export type TTreeType = 'default' | 'cellar' | 'goldenRod' | 'hSpider' | 'hSpiderWalk' | 'radialSpiderLeg' | 'spiderlingsPack' | 'vSpiderWalk'; - -export type TChartHeadType = 'default' | 'landscape' | 'rounded'; - -export type TLinkType = 'curveBumpX' | 'curveBumpY' | 'curveBasisClosed' | 'curveLinear' | -'curveStep' | 'curveStepAfter' | 'curveStepBefore' \ No newline at end of file +}; diff --git a/src/types/utils.ts b/src/types/utils.ts index a834928..a7331a4 100644 --- a/src/types/utils.ts +++ b/src/types/utils.ts @@ -8,7 +8,7 @@ export type TTreeMapArr = { parentId: string; id: string; lineOrigin?: TBranchLineOrigin; -} +}; export type TChildrenMapperReturnEl = TSElement; @@ -21,7 +21,7 @@ export type TTreeClassParams = { tree_data: Array; tsInnerContainer: HTMLElement; chartHelper: ChartMainHelper; -} +}; export type THeadPointPosition = "top" | "bottom" | "left" | "right"; @@ -43,20 +43,51 @@ export type TColorSet = { export type TTreeToItemHierarchy = Array<{level: number, items: Array}>; -export type TBranchLineOrigin = "top" | "bottom" | "left" | "right" +export type TBranchLineOrigin = "top" | "bottom" | "left" | "right"; -export type TElementCenterPositions = 'center' | 'top' | 'bottom' | 'right' | 'left' +export type TElementCenterPositions = 'center' | 'top' | 'bottom' | 'right' | 'left'; -export type TLinkerCircleColor = 'brighter' | 'bright500' | 'bright100' +export type TLinkerCircleColor = 'brighter' | 'bright500' | 'bright100'; export type TLinkerShape = 'symbolAsterisk' | 'symbolCircle' | 'symbolCross' | 'symbolDiamond' | 'symbolDiamond2' | 'symbolPlus' | 'symbolSquare' | 'symbolSquare2' | 'symbolStar' | 'symbolTriangle' | 'symbolTriangle2' | - 'symbolWye' | 'symbolX' + 'symbolWye' | 'symbolX'; export type THeadImageShape = 'symbolCircle' | 'symbolCross' | 'symbolDiamond' | 'symbolDiamond2' | 'symbolSquare' | 'symbolSquare2' | 'symbolStar' | 'symbolTriangle' | 'symbolTriangle2' | - 'symbolWye' + 'symbolWye'; + +export type TEventType = 'chart_head.create' | 'chart_head.expanded' | 'chart_head.collapsed' | 'zooming' | 'library.init'; + +export type TDropShadow = { + x: string; + y: string; + width: string; + height: string; + dx: number; + dy: number; + stdDeviation: number; + floodColor: string; +}; + + +export type TColorPallet = { + h: number; + s: number; + l: number; + darker: number; + brighter: number; + bright100: number; + dark100: number; + gray: number; + gray85: number; +}; + +export type TTreeType = 'default' | 'cellar' | 'goldenRod' | 'hSpider' | 'hSpiderWalk' | 'radialSpiderLeg' | 'spiderlingsPack' | 'vSpiderWalk'; + +export type TChartHeadType = 'default' | 'landscape' | 'rounded'; -export type TEventType = 'chart_head.create' | 'chart_head.expanded' | 'chart_head.collapsed' | 'zooming' | 'library.init' \ No newline at end of file +export type TLinkType = 'curveBumpX' | 'curveBumpY' | 'curveBasisClosed' | 'curveLinear' | +'curveStep' | 'curveStepAfter' | 'curveStepBefore'; \ No newline at end of file diff --git a/src/utils/ts-element.ts b/src/utils/ts-element.ts index 89dbcd2..ab53f87 100644 --- a/src/utils/ts-element.ts +++ b/src/utils/ts-element.ts @@ -1,4 +1,5 @@ -class TSElement extends HTMLDivElement { +class TSElement extends HTMLElement implements HTMLDivElement { + align: string = "auto" constructor () { super(); } @@ -6,6 +7,6 @@ class TSElement extends HTMLDivElement { connectedCallback () {} } -window.customElements.define('ts-element', TSElement, {extends: 'div'}) +window.customElements.define('ts-element', TSElement) export default TSElement; \ No newline at end of file diff --git a/src/utils/ts-root-container.ts b/src/utils/ts-root-container.ts index 973b80a..42d607d 100644 --- a/src/utils/ts-root-container.ts +++ b/src/utils/ts-root-container.ts @@ -1,7 +1,8 @@ -import backgrounds from "./backgrounds.js"; +import backgrounds from "./backgrounds"; import * as d3 from 'd3' -class TSRootContainer extends HTMLDivElement { +class TSRootContainer extends HTMLElement implements HTMLDivElement { + align: string = "auto"; main_svg: any = null tree_data: any = {} static observeAttributes = ['backgroundPattern', 'backgroundSize', 'customBackground'] @@ -170,5 +171,6 @@ class TSRootContainer extends HTMLDivElement { } -window.customElements.define("ts-root-container", TSRootContainer, {extends: 'div'}); +window.customElements.define("ts-root-container", TSRootContainer); + export default TSRootContainer; \ No newline at end of file diff --git a/src/utils/ui-tools.ts b/src/utils/ui-tools.ts index 61eb7dc..0bd5aff 100644 --- a/src/utils/ui-tools.ts +++ b/src/utils/ui-tools.ts @@ -1,6 +1,6 @@ -import icons from "./icons.js"; -import TSElement from "./ts-element.js"; -import { TTreeType } from "../types/MainTypes"; +import icons from "./icons"; +import TSElement from "./ts-element"; +import { TTreeType } from "../types/utils"; class UITools { private root_ui_element: HTMLElement | undefined = undefined; @@ -22,64 +22,65 @@ class UITools { } private make_tools() { - const toolWrapperEl = new TSElement() - toolWrapperEl.className = "tools-container" - this.root_ui_element?.appendChild(toolWrapperEl) + const toolWrapperEl = new TSElement(); + toolWrapperEl.className = "tools-container"; + this.root_ui_element?.appendChild(toolWrapperEl); - const zoomInIcon = document.createElement('div') - zoomInIcon.className = "tool-item" - zoomInIcon.innerHTML = icons.zoomIn - zoomInIcon.title = "Zoom in" - zoomInIcon.onclick = (e) => this.zoomInOut() + const zoomInIcon = new TSElement(); + zoomInIcon.className = "tool-item"; + zoomInIcon.innerHTML = icons.zoomIn; + zoomInIcon.title = "Zoom in"; + zoomInIcon.onclick = (e) => this.zoomInOut(); + + const zoomOutIcon = new TSElement(); + zoomOutIcon.className = "tool-item"; + zoomOutIcon.innerHTML = icons.zoomOut; + zoomOutIcon.title = "Zoom out"; + zoomOutIcon.onclick = (e) => this.zoomInOut('out'); - const zoomOutIcon = document.createElement('div') - zoomOutIcon.className = "tool-item" - zoomOutIcon.innerHTML = icons.zoomOut - zoomOutIcon.title = "Zoom out" - zoomOutIcon.onclick = (e) => this.zoomInOut('out') + const zoomResetIcon = new TSElement(); + zoomResetIcon.className = "tool-item"; + zoomResetIcon.innerHTML = icons.resetZoom; + zoomResetIcon.title = "Reset zoom & position"; + zoomResetIcon.onclick = (e) => this.resetZoom(); - const zoomResetIcon = document.createElement('div') - zoomResetIcon.className = "tool-item" - zoomResetIcon.innerHTML = icons.resetZoom - zoomResetIcon.title = "Reset zoom & position" - zoomResetIcon.onclick = (e) => this.resetZoom() + const rotateIcon = new TSElement(); + rotateIcon.className = "tool-item"; + rotateIcon.innerHTML = icons.rotate; + rotateIcon.title = "Start/Stop Clockwise Rotation"; - const rotateIcon = document.createElement('div') - rotateIcon.className = "tool-item" - rotateIcon.innerHTML = icons.rotate - rotateIcon.title = "Start/Stop Clockwise Rotation" + const rotateAnticlockwiseIcon = new TSElement(); + rotateAnticlockwiseIcon.className = "tool-item"; + rotateAnticlockwiseIcon.innerHTML = icons.rotate_anticlockwise; + rotateAnticlockwiseIcon.title = "Start/Stop Anticlockwise Rotation"; - const rotateAnticlockwiseIcon = document.createElement('div') - rotateAnticlockwiseIcon.className = "tool-item" - rotateAnticlockwiseIcon.innerHTML = icons.rotate_anticlockwise - rotateAnticlockwiseIcon.title = "Start/Stop Anticlockwise Rotation" + const rotateOnceIcon = new TSElement(); + rotateOnceIcon.className = "tool-item"; + rotateOnceIcon.innerHTML = icons.rotate_once; + rotateOnceIcon.title = "Rotate Clockwise Once"; - const rotateOnceIcon = document.createElement('div') - rotateOnceIcon.className = "tool-item" - rotateOnceIcon.innerHTML = icons.rotate_once - rotateOnceIcon.title = "Rotate Clockwise Once" + const rotateOnceAnticlockwiseIcon = new TSElement(); + rotateOnceAnticlockwiseIcon.className = "tool-item"; + rotateOnceAnticlockwiseIcon.innerHTML = icons.rotate_once_anti_clockwise; + rotateOnceAnticlockwiseIcon.title = "Rotate Anticlockwise Once"; - const rotateOnceAnticlockwiseIcon = document.createElement('div') - rotateOnceAnticlockwiseIcon.className = "tool-item" - rotateOnceAnticlockwiseIcon.innerHTML = icons.rotate_once_anti_clockwise - rotateOnceAnticlockwiseIcon.title = "Rotate Anticlockwise Once" + toolWrapperEl.append(zoomInIcon); + toolWrapperEl.append(zoomOutIcon); + toolWrapperEl.append(zoomResetIcon); - toolWrapperEl.append(zoomInIcon) - toolWrapperEl.append(zoomOutIcon) - toolWrapperEl.append(zoomResetIcon) if (this.animatable_trees.includes(this.tree_type as string)) { - toolWrapperEl.append(rotateIcon) - toolWrapperEl.append(rotateAnticlockwiseIcon) - toolWrapperEl.append(rotateOnceIcon) - toolWrapperEl.append(rotateOnceAnticlockwiseIcon) + toolWrapperEl.append(rotateIcon); + toolWrapperEl.append(rotateAnticlockwiseIcon); + toolWrapperEl.append(rotateOnceIcon); + toolWrapperEl.append(rotateOnceAnticlockwiseIcon); - rotateIcon.onclick = (e) => this.animate_chat() - rotateAnticlockwiseIcon.onclick = (e) => this.animate_chat(false, true) - rotateOnceIcon.onclick = (e) => this.animate_chat(true) - rotateOnceAnticlockwiseIcon.onclick = (e) => this.animate_chat(true, true) + rotateIcon.onclick = (e) => this.animate_chat(); + rotateAnticlockwiseIcon.onclick = (e) => this.animate_chat(false, true); + rotateOnceIcon.onclick = (e) => this.animate_chat(true); + rotateOnceAnticlockwiseIcon.onclick = (e) => this.animate_chat(true, true); } } } -export default UITools \ No newline at end of file +export default UITools; \ No newline at end of file