@noe-teritorio/opening_hours 3.14.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +816 -0
- package/LICENSES/AGPL-3.0-only.txt +235 -0
- package/LICENSES/AGPL-3.0-or-later.txt +235 -0
- package/LICENSES/CC0-1.0.txt +121 -0
- package/LICENSES/LGPL-3.0-only.txt +304 -0
- package/LICENSES/ODbL-1.0.txt +540 -0
- package/Makefile +526 -0
- package/README.md +926 -0
- package/REUSE.toml +40 -0
- package/build/opening_hours.esm.mjs +45870 -0
- package/build/opening_hours.esm.mjs.map +1 -0
- package/build/opening_hours.js +45875 -0
- package/package.json +133 -0
- package/site/js/countryToLanguageMapping.js +247 -0
- package/site/js/helpers.js +735 -0
- package/site/js/i18n-resources.js +2284 -0
- package/site/js/main.js +401 -0
- package/site/js/opening_hours_table.js +414 -0
- package/site/js/theme.js +73 -0
- package/site/js/yohours_model.js +2791 -0
- package/src/locales/i18n.js +97 -0
- package/types/index.d.ts +159 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"opening_hours.esm.mjs","sources":["../src/holidays/generated-openholidays.js","../src/holidays/index.js","../src/locales/i18n.js","../src/locale-resolver/normalize.mjs","../src/locale-resolver/resolver.mjs","../src/locale-resolver/region-languages.mjs","../src/index.js"],"sourcesContent":["// @ts-nocheck\n/**\n * Auto-generated school holidays from OpenHolidays API Data (Git Submodule)\n * DO NOT EDIT MANUALLY - Run: node scripts/fetch-school-holidays.mjs\n * Submodule: a42b397 (2026-04-13)\n */\n\nexport const ad = {\n SH: [\n {\n name: \"Vacances de Nadal\",\n 2019: [12,23,1,6],\n 2020: [12,23,1,6],\n 2021: [12,23,1,7],\n 2022: [12,23,1,6],\n 2023: [12,25,1,5],\n 2024: [12,23,1,6],\n 2025: [12,22,1,6],\n 2026: [12,23,1,6],\n },\n {\n name: \"Vacances de Carnaval\",\n 2020: [2,24,2,28],\n 2021: [2,15,2,18],\n 2022: [2,28,3,4],\n 2023: [2,20,2,24],\n 2024: [2,12,2,16],\n 2025: [2,24,3,3],\n 2026: [2,16,2,20],\n 2027: [2,8,2,12],\n },\n {\n name: \"Vacances de Pasqua\",\n 2020: [4,6,4,17],\n 2021: [3,29,4,6],\n 2022: [4,11,4,22],\n 2023: [4,3,4,14],\n 2024: [3,28,4,5],\n 2025: [4,17,5,2],\n 2026: [3,30,4,10],\n 2027: [3,22,4,2],\n },\n {\n name: \"Vacances de Pentecosta\",\n 2020: [5,25,6,1],\n 2021: [5,24,5,28],\n 2022: [6,2,6,6],\n 2023: [5,29,5,30],\n 2024: [5,20,5,24],\n 2025: [6,9,6,9],\n 2026: [5,25,5,29],\n 2027: [5,17,5,21],\n },\n {\n name: \"Vacances d'estiu\",\n 2020: [7,2,9,8],\n 2021: [7,3,9,8],\n 2022: [7,2,9,8],\n 2023: [7,1,9,10],\n 2024: [6,29,9,8],\n 2025: [7,1,9,8],\n 2026: [7,4,9,8],\n },\n {\n name: \"Vacances de Tots Sants\",\n 2020: [10,26,10,30],\n 2021: [11,1,11,1],\n 2022: [10,31,11,4],\n 2023: [10,30,11,3],\n 2024: [10,28,11,1],\n 2025: [10,27,10,31],\n 2026: [10,26,10,30],\n },\n {\n name: \"Final de classe\",\n 2027: [7,2,7,2],\n },\n ]\n};\n\nexport const al = {\n SH: [\n {\n name: \"Pushimet dimërore\",\n 2019: [12,21,1,5],\n 2020: [12,24,1,4],\n 2021: [12,24,1,4],\n 2022: [12,26,1,4],\n 2023: [12,26,1,5],\n 2024: [12,23,1,3],\n 2025: [12,22,1,2],\n },\n {\n name: \"Pushimet verore\",\n 2020: [6,13,9,13],\n 2021: [6,9,9,26],\n 2022: [6,18,9,11],\n 2023: [6,15,9,10],\n 2024: [6,14,9,8],\n 2025: [6,13,9,8],\n },\n {\n name: \"Pushimet e pranveres\",\n 2023: [4,3,4,9],\n 2024: [4,1,4,5],\n 2025: [3,31,4,4],\n 2026: [3,30,4,3],\n },\n {\n name: \"Fundi i klasës\",\n 2026: [6,13,6,13],\n },\n ]\n};\n\nexport const ar = {\n PH: [{\"name\":\"Año Nuevo\",\"fixed_date\":[1,1]},{\"name\":\"Carnaval\",\"variable_date\":\"easter\",\"offset\":-48},{\"name\":\"Carnaval\",\"variable_date\":\"easter\",\"offset\":-47},{\"name\":\"Día Nacional de la Memoria por la Verdad y la Justicia\",\"fixed_date\":[3,24]},{\"name\":\"Viernes Santo\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Día del Veterano y de los Caídos en la Guerra de Malvinas\",\"fixed_date\":[4,2]},{\"name\":\"Día del Trabajador\",\"fixed_date\":[5,1]},{\"name\":\"Día de la Revolución de Mayo\",\"fixed_date\":[5,25]},{\"name\":\"Paso a la Inmortalidad del General Don Martín Miguel de Güemes\",\"fixed_date\":[6,17],\"shift_rule\":\"if tuesday,wednesday then previous monday if thursday,friday then next monday\"},{\"name\":\"Paso a la Inmortalidad del General D. Manuel Belgrano\",\"fixed_date\":[6,20]},{\"name\":\"Día de la Independencia\",\"fixed_date\":[7,9]},{\"name\":\"Día no laborable con fines turísticos\",\"fixed_date\":[7,10],\"year\":2026},{\"name\":\"Paso a la Inmortalidad del General José de San Martín\",\"fixed_date\":[8,17],\"shift_rule\":\"if tuesday,wednesday then previous monday if thursday,friday then next monday\"},{\"name\":\"Día del Respeto a la Diversidad Cultural\",\"fixed_date\":[10,12],\"shift_rule\":\"if tuesday,wednesday then previous monday if thursday,friday then next monday\"},{\"name\":\"Día de la Soberanía Nacional\",\"fixed_date\":[11,20],\"shift_rule\":\"if tuesday,wednesday then previous monday if thursday,friday then next monday\"},{\"name\":\"Día no laborable con fines turísticos\",\"fixed_date\":[12,7],\"year\":2026},{\"name\":\"Inmaculada Concepción de María\",\"fixed_date\":[12,8]},{\"name\":\"Navidad\",\"fixed_date\":[12,25]}],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=-34.60377&lon=-58.38159&zoom=16&addressdetails=1&accept-language=es\"\n};\n\nexport const at = {\n PH: [{\"name\":\"Neujahr\",\"fixed_date\":[1,1]},{\"name\":\"Heilige Drei Könige\",\"fixed_date\":[1,6]},{\"name\":\"Ostermontag\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Staatsfeiertag\",\"fixed_date\":[5,1]},{\"name\":\"Christi Himmelfahrt\",\"variable_date\":\"easter\",\"offset\":39},{\"name\":\"Pfingstmontag\",\"variable_date\":\"easter\",\"offset\":50},{\"name\":\"Fronleichnam\",\"variable_date\":\"easter\",\"offset\":60},{\"name\":\"Mariä Himmelfahrt\",\"fixed_date\":[8,15]},{\"name\":\"Nationalfeiertag\",\"fixed_date\":[10,26]},{\"name\":\"Allerheiligen\",\"fixed_date\":[11,1]},{\"name\":\"Mariä Empfängnis\",\"fixed_date\":[12,8]},{\"name\":\"Christtag\",\"fixed_date\":[12,25]},{\"name\":\"Stefanitag\",\"fixed_date\":[12,26]}],\n SH: [\n {\n name: \"Osterferien\",\n 2017: [4,8,4,18],\n 2018: [3,24,4,3],\n 2019: [4,13,4,23],\n 2020: [4,4,4,14],\n 2021: [3,27,4,5],\n 2022: [4,9,4,18],\n 2023: [4,1,4,10],\n 2024: [3,23,4,1],\n 2025: [4,12,4,21],\n 2026: [3,28,4,6],\n 2027: [3,20,3,29],\n 2028: [4,8,4,17],\n },\n {\n name: \"Pfingstferien\",\n 2017: [6,3,6,6],\n 2018: [5,19,5,22],\n 2019: [6,8,6,11],\n 2020: [5,30,6,2],\n 2021: [5,22,5,24],\n 2022: [6,4,6,6],\n 2023: [5,27,5,29],\n 2024: [5,18,5,20],\n 2025: [6,7,6,9],\n 2026: [5,23,5,25],\n 2027: [5,15,5,17],\n 2028: [6,3,6,5],\n },\n {\n name: \"Herbstferien\",\n 2020: [10,27,10,31],\n 2021: [10,27,10,31],\n 2022: [10,27,10,31],\n 2023: [10,27,10,31],\n 2024: [10,27,10,31],\n 2025: [10,27,10,31],\n 2026: [10,27,10,31],\n 2027: [10,27,10,31],\n 2028: [10,27,10,31],\n },\n {\n name: \"Weihnachtsferien\",\n 2016: [12,24,1,7],\n 2017: [12,24,1,6],\n 2018: [12,24,1,6],\n 2019: [12,23,1,6],\n 2020: [12,24,1,6],\n 2021: [12,24,1,6],\n 2022: [12,24,1,6],\n 2023: [12,23,1,6],\n 2024: [12,24,1,6],\n 2025: [12,24,1,6],\n 2026: [12,24,1,6],\n 2027: [12,24,1,6],\n 2028: [12,24,1,6],\n },\n {\n name: \"Allerseelen\",\n 2020: [11,2,11,2],\n 2021: [11,2,11,2],\n 2022: [11,2,11,2],\n 2023: [11,2,11,2],\n 2024: [11,2,11,2],\n 2025: [11,2,11,2],\n 2026: [11,2,11,2],\n 2027: [11,2,11,2],\n 2028: [11,2,11,2],\n },\n ],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lon=16.3725042&lat=48.2083537&zoom=18&addressdetails=1&accept-language=de,en\",\n \"Burgenland\": {\n \"_state_code\": \"bl\",\n SH: [\n {\n name: \"Sommerferien\",\n 2020: [7,4,9,6],\n 2021: [7,3,9,5],\n 2022: [7,2,9,4],\n 2023: [7,1,9,3],\n 2024: [6,29,9,1],\n 2025: [6,28,8,31],\n 2026: [7,4,9,6],\n 2027: [7,3,9,5],\n 2028: [7,1,9,3],\n },\n {\n name: \"Semesterferien\",\n 2020: [2,10,2,15],\n 2021: [2,8,2,13],\n 2022: [2,14,2,19],\n 2023: [2,13,2,18],\n 2024: [2,12,2,17],\n 2025: [2,10,2,15],\n 2026: [2,9,2,14],\n 2027: [2,8,2,13],\n 2028: [2,14,2,19],\n },\n {\n name: \"St. Martin\",\n 2020: [11,11,11,11],\n 2021: [11,11,11,11],\n 2022: [11,11,11,11],\n 2023: [11,11,11,11],\n 2024: [11,11,11,11],\n 2025: [11,11,11,11],\n 2027: [11,11,11,11],\n 2028: [11,11,11,11],\n },\n ]\n },\n \"Kärnten\": {\n \"_state_code\": \"kä\",\n SH: [\n {\n name: \"Sommerferien\",\n 2020: [7,11,9,13],\n 2021: [7,10,9,12],\n 2022: [7,9,9,11],\n 2023: [7,8,9,10],\n 2024: [7,6,9,8],\n 2025: [7,5,9,7],\n 2026: [7,11,9,13],\n 2027: [7,10,9,12],\n 2028: [7,8,9,10],\n },\n {\n name: \"Semesterferien\",\n 2020: [2,10,2,15],\n 2021: [2,8,2,13],\n 2022: [2,14,2,19],\n 2023: [2,13,2,18],\n 2024: [2,12,2,17],\n 2025: [2,10,2,15],\n 2026: [2,9,2,14],\n 2027: [2,8,2,13],\n 2028: [2,14,2,19],\n },\n {\n name: \"St. Josef\",\n 2020: [3,19,3,19],\n 2021: [3,19,3,19],\n 2022: [3,19,3,19],\n 2023: [3,19,3,19],\n 2024: [3,19,3,19],\n 2025: [3,19,3,19],\n 2026: [3,19,3,19],\n 2027: [3,19,3,19],\n },\n ]\n },\n \"Niederösterreich\": {\n \"_state_code\": \"nö\",\n SH: [\n {\n name: \"Sommerferien\",\n 2020: [7,4,9,6],\n 2021: [7,3,9,5],\n 2022: [7,2,9,4],\n 2023: [7,1,9,3],\n 2024: [6,29,9,1],\n 2025: [6,28,8,31],\n 2026: [7,4,9,6],\n 2027: [7,3,9,5],\n 2028: [7,1,9,3],\n },\n {\n name: \"Semesterferien\",\n 2020: [2,3,2,8],\n 2021: [2,1,2,6],\n 2022: [2,7,2,12],\n 2023: [2,6,2,11],\n 2024: [2,5,2,10],\n 2025: [2,3,2,8],\n 2026: [2,2,2,7],\n 2027: [1,30,2,6],\n 2028: [2,5,2,12],\n },\n {\n name: \"St. Leopold\",\n 2020: [11,15,11,15],\n 2021: [11,15,11,15],\n 2022: [11,15,11,15],\n 2023: [11,15,11,15],\n 2024: [11,15,11,15],\n 2025: [11,15,11,15],\n 2027: [11,15,11,15],\n 2028: [11,15,11,15],\n },\n ]\n },\n \"Oberösterreich\": {\n \"_state_code\": \"oö\",\n SH: [\n {\n name: \"Sommerferien\",\n 2020: [7,11,9,13],\n 2021: [7,10,9,12],\n 2022: [7,9,9,11],\n 2023: [7,8,9,10],\n 2024: [7,6,9,8],\n 2025: [7,5,9,7],\n 2026: [7,11,9,13],\n 2027: [7,10,9,12],\n 2028: [7,8,9,10],\n },\n {\n name: \"Semesterferien\",\n 2020: [2,17,2,22],\n 2021: [2,8,2,13],\n 2022: [2,21,2,26],\n 2023: [2,20,2,25],\n 2024: [2,19,2,24],\n 2025: [2,17,2,22],\n 2026: [2,16,2,21],\n 2027: [2,15,2,20],\n 2028: [2,21,2,26],\n },\n {\n name: \"St. Florian\",\n 2020: [5,4,5,4],\n 2021: [5,4,5,4],\n 2022: [5,4,5,4],\n 2023: [5,4,5,4],\n 2024: [5,4,5,4],\n 2025: [5,4,5,4],\n 2026: [5,4,5,4],\n 2027: [5,4,5,4],\n 2028: [5,4,5,4],\n },\n ]\n },\n \"Salzburg\": {\n \"_state_code\": \"sb\",\n SH: [\n {\n name: \"Sommerferien\",\n 2020: [7,11,9,13],\n 2021: [7,10,9,12],\n 2022: [7,9,9,11],\n 2023: [7,8,9,10],\n 2024: [7,6,9,8],\n 2025: [7,5,9,7],\n 2026: [7,11,9,13],\n 2027: [7,10,9,12],\n 2028: [7,8,9,10],\n },\n {\n name: \"Semesterferien\",\n 2020: [2,10,2,15],\n 2021: [2,8,2,13],\n 2022: [2,14,2,19],\n 2023: [2,13,2,18],\n 2024: [2,12,2,17],\n 2025: [2,10,2,15],\n 2026: [2,9,2,14],\n 2027: [2,8,2,13],\n 2028: [2,14,2,19],\n },\n {\n name: \"St. Rupert\",\n 2020: [9,24,9,24],\n 2021: [9,24,9,24],\n 2022: [9,24,9,24],\n 2023: [9,24,9,24],\n 2024: [9,24,9,24],\n 2025: [9,24,9,24],\n 2027: [9,24,9,24],\n 2028: [9,24,9,24],\n },\n ]\n },\n \"Steiermark\": {\n \"_state_code\": \"sm\",\n SH: [\n {\n name: \"Sommerferien\",\n 2020: [7,11,9,13],\n 2021: [7,10,9,12],\n 2022: [7,9,9,11],\n 2023: [7,8,9,10],\n 2024: [7,6,9,8],\n 2025: [7,5,9,7],\n 2026: [7,11,9,13],\n 2027: [7,10,9,12],\n 2028: [7,8,9,10],\n },\n {\n name: \"Semesterferien\",\n 2020: [2,17,2,22],\n 2021: [2,8,2,13],\n 2022: [2,21,2,26],\n 2023: [2,20,2,25],\n 2024: [2,19,2,24],\n 2025: [2,17,2,22],\n 2026: [2,16,2,21],\n 2027: [2,15,2,20],\n 2028: [2,21,2,26],\n },\n {\n name: \"St. Josef\",\n 2020: [3,19,3,19],\n 2021: [3,19,3,19],\n 2022: [3,19,3,19],\n 2023: [3,19,3,19],\n 2024: [3,19,3,19],\n 2025: [3,19,3,19],\n 2026: [3,19,3,19],\n 2027: [3,19,3,19],\n },\n ]\n },\n \"Tirol\": {\n \"_state_code\": \"ti\",\n SH: [\n {\n name: \"Sommerferien\",\n 2020: [7,11,9,13],\n 2021: [7,10,9,12],\n 2022: [7,9,9,11],\n 2023: [7,8,9,10],\n 2024: [7,6,9,8],\n 2025: [7,5,9,7],\n 2026: [7,11,9,13],\n 2027: [7,10,9,12],\n 2028: [7,8,9,10],\n },\n {\n name: \"Semesterferien\",\n 2020: [2,10,2,15],\n 2021: [2,8,2,13],\n 2022: [2,14,2,19],\n 2023: [2,13,2,18],\n 2024: [2,12,2,17],\n 2025: [2,10,2,15],\n 2026: [2,9,2,14],\n 2027: [2,8,2,13],\n 2028: [2,14,2,19],\n },\n {\n name: \"St. Josef\",\n 2020: [3,19,3,19],\n 2021: [3,19,3,19],\n 2022: [3,19,3,19],\n 2023: [3,19,3,19],\n 2024: [3,19,3,19],\n 2025: [3,19,3,19],\n 2026: [3,19,3,19],\n 2027: [3,19,3,19],\n },\n {\n name: \"schulfrei\",\n 2025: [6,20,6,20],\n },\n ]\n },\n \"Vorarlberg\": {\n \"_state_code\": \"va\",\n SH: [\n {\n name: \"Sommerferien\",\n 2020: [7,11,9,13],\n 2021: [7,10,9,12],\n 2022: [7,9,9,11],\n 2023: [7,8,9,10],\n 2024: [7,6,9,8],\n 2025: [7,5,9,7],\n 2026: [7,11,9,13],\n 2027: [7,10,9,12],\n 2028: [7,8,9,10],\n },\n {\n name: \"Semesterferien\",\n 2020: [2,10,2,15],\n 2021: [2,8,2,13],\n 2022: [2,14,2,19],\n 2023: [2,13,2,18],\n 2024: [2,5,2,10],\n 2025: [2,10,2,15],\n 2026: [2,9,2,14],\n 2027: [2,8,2,13],\n 2028: [2,14,2,19],\n },\n {\n name: \"St. Josef\",\n 2020: [3,19,3,19],\n 2021: [3,19,3,19],\n 2022: [3,19,3,19],\n 2023: [3,19,3,19],\n 2024: [3,19,3,19],\n 2025: [3,19,3,19],\n 2026: [3,19,3,19],\n 2027: [3,19,3,19],\n },\n ]\n },\n \"Wien\": {\n \"_state_code\": \"wi\",\n SH: [\n {\n name: \"Sommerferien\",\n 2020: [7,4,9,6],\n 2021: [7,3,9,5],\n 2022: [7,2,9,4],\n 2023: [7,1,9,3],\n 2024: [6,29,9,1],\n 2025: [6,28,8,31],\n 2026: [7,4,9,6],\n 2027: [7,3,9,5],\n 2028: [7,1,9,3],\n },\n {\n name: \"Semesterferien\",\n 2020: [2,3,2,8],\n 2021: [2,1,2,6],\n 2022: [2,7,2,12],\n 2023: [2,6,2,11],\n 2024: [2,5,2,10],\n 2025: [2,3,2,8],\n 2026: [2,2,2,7],\n 2027: [1,30,2,6],\n 2028: [2,5,2,12],\n },\n {\n name: \"St. Leopold\",\n 2020: [11,15,11,15],\n 2021: [11,15,11,15],\n 2022: [11,15,11,15],\n 2023: [11,15,11,15],\n 2024: [11,15,11,15],\n 2025: [11,15,11,15],\n 2027: [11,15,11,15],\n 2028: [11,15,11,15],\n },\n ]\n }\n};\n\nexport const au = {\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if saturday,sunday then next monday\"},{\"name\":\"Australia Day\",\"fixed_date\":[1,26],\"shift_rule\":\"if saturday,sunday then next monday\"},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Easter Monday\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Anzac Day\",\"fixed_date\":[4,25]},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\"},{\"name\":\"Boxing Day\",\"fixed_date\":[12,26],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\"}],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=-35.2809&lon=149.1300&zoom=16&addressdetails=1&accept-language=en\",\n \"Australian Capital Territory\": {\n \"_state_code\": \"act\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=-35.2809&lon=149.1300&zoom=16&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if saturday,sunday then next monday\"},{\"name\":\"Australia Day\",\"fixed_date\":[1,26],\"shift_rule\":\"if saturday,sunday then next monday\"},{\"name\":\"Canberra Day\",\"variable_date\":\"firstMarchMonday\",\"offset\":7},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Easter Saturday\",\"variable_date\":\"easter\",\"offset\":-1},{\"name\":\"Easter Sunday\",\"variable_date\":\"easter\"},{\"name\":\"Easter Monday\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Anzac Day\",\"fixed_date\":[4,25],\"substitute_rule\":\"if saturday,sunday then next monday\"},{\"name\":\"Reconciliation Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"King's Birthday\",\"variable_date\":\"firstJuneMonday\",\"offset\":7},{\"name\":\"Labour Day\",\"variable_date\":\"firstOctoberMonday\"},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\"},{\"name\":\"Boxing Day\",\"fixed_date\":[12,26],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\"}]\n },\n \"New South Wales\": {\n \"_state_code\": \"nsw\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=-33.8688&lon=151.2093&zoom=16&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if saturday,sunday then next monday\"},{\"name\":\"Australia Day\",\"fixed_date\":[1,26],\"shift_rule\":\"if saturday,sunday then next monday\"},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Easter Saturday\",\"variable_date\":\"easter\",\"offset\":-1},{\"name\":\"Easter Sunday\",\"variable_date\":\"easter\"},{\"name\":\"Easter Monday\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Anzac Day\",\"fixed_date\":[4,25],\"substitute_rule\":\"if saturday,sunday then next monday\"},{\"name\":\"King's Birthday\",\"variable_date\":\"firstJuneMonday\",\"offset\":7},{\"name\":\"Labour Day\",\"variable_date\":\"firstOctoberMonday\"},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\"},{\"name\":\"Boxing Day\",\"fixed_date\":[12,26],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\"}]\n },\n \"Northern Territory\": {\n \"_state_code\": \"nt\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=-12.4634&lon=130.8456&zoom=16&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if saturday,sunday then next monday\"},{\"name\":\"Australia Day\",\"fixed_date\":[1,26],\"shift_rule\":\"if saturday,sunday then next monday\"},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Easter Saturday\",\"variable_date\":\"easter\",\"offset\":-1},{\"name\":\"Easter Sunday\",\"variable_date\":\"easter\"},{\"name\":\"Easter Monday\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Anzac Day\",\"fixed_date\":[4,25],\"shift_rule\":\"if sunday then next monday\"},{\"name\":\"May Day\",\"variable_date\":\"firstMayMonday\"},{\"name\":\"King's Birthday\",\"variable_date\":\"firstJuneMonday\",\"offset\":7},{\"name\":\"Picnic Day\",\"variable_date\":\"firstAugustMonday\"},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"shift_rule\":\"if saturday then next monday if sunday then next tuesday\"},{\"name\":\"Boxing Day\",\"fixed_date\":[12,26],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\"}]\n },\n \"Queensland\": {\n \"_state_code\": \"qld\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=-27.4698&lon=153.0251&zoom=16&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if saturday,sunday then next monday\"},{\"name\":\"Australia Day\",\"fixed_date\":[1,26],\"shift_rule\":\"if saturday,sunday then next monday\"},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Easter Saturday\",\"variable_date\":\"easter\",\"offset\":-1},{\"name\":\"Easter Sunday\",\"variable_date\":\"easter\"},{\"name\":\"Easter Monday\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Anzac Day\",\"fixed_date\":[4,25],\"shift_rule\":\"if sunday then next monday\"},{\"name\":\"Labour Day\",\"variable_date\":\"firstMayMonday\"},{\"name\":\"King's Birthday\",\"variable_date\":\"firstOctoberMonday\"},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\"},{\"name\":\"Boxing Day\",\"fixed_date\":[12,26],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\"}]\n },\n \"South Australia\": {\n \"_state_code\": \"sa\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=-34.9285&lon=138.6007&zoom=16&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if saturday,sunday then next monday\"},{\"name\":\"Australia Day\",\"fixed_date\":[1,26],\"shift_rule\":\"if saturday,sunday then next monday\"},{\"name\":\"Adelaide Cup Day\",\"variable_date\":\"firstMarchMonday\",\"offset\":7},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Easter Saturday\",\"variable_date\":\"easter\",\"offset\":-1},{\"name\":\"Easter Sunday\",\"variable_date\":\"easter\"},{\"name\":\"Easter Monday\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Anzac Day\",\"fixed_date\":[4,25]},{\"name\":\"King's Birthday\",\"variable_date\":\"firstJuneMonday\",\"offset\":7},{\"name\":\"Labour Day\",\"variable_date\":\"firstOctoberMonday\"},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"shift_rule\":\"if saturday then next monday if sunday then next tuesday\"},{\"name\":\"Proclamation Day\",\"fixed_date\":[12,26],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\"}]\n },\n \"Tasmania\": {\n \"_state_code\": \"tas\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=-42.8821&lon=147.3272&zoom=16&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"shift_rule\":\"if saturday then next monday if sunday then next tuesday\"},{\"name\":\"Australia Day\",\"fixed_date\":[1,26],\"shift_rule\":\"if saturday,sunday then next monday\"},{\"name\":\"Eight Hours Day\",\"variable_date\":\"firstMarchMonday\",\"offset\":7},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Easter Monday\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Anzac Day\",\"fixed_date\":[4,25]},{\"name\":\"King's Birthday\",\"variable_date\":\"firstJuneMonday\",\"offset\":7},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\"},{\"name\":\"Boxing Day\",\"fixed_date\":[12,26],\"shift_rule\":\"if saturday then next monday if sunday then next tuesday\"}]\n },\n \"Victoria\": {\n \"_state_code\": \"vic\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=-37.8136&lon=144.9631&zoom=16&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if saturday,sunday then next monday\"},{\"name\":\"Australia Day\",\"fixed_date\":[1,26],\"shift_rule\":\"if saturday,sunday then next monday\"},{\"name\":\"Labour Day\",\"variable_date\":\"firstMarchMonday\",\"offset\":7},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Easter Saturday\",\"variable_date\":\"easter\",\"offset\":-1},{\"name\":\"Easter Sunday\",\"variable_date\":\"easter\"},{\"name\":\"Easter Monday\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Anzac Day\",\"fixed_date\":[4,25]},{\"name\":\"King's Birthday\",\"variable_date\":\"firstJuneMonday\",\"offset\":7},{\"name\":\"AFL Grand Final Friday\",\"variable_date\":\"lastSeptemberFriday\"},{\"name\":\"Melbourne Cup\",\"variable_date\":\"firstNovemberTuesday\"},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\"},{\"name\":\"Boxing Day\",\"fixed_date\":[12,26],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\"}]\n },\n \"Western Australia\": {\n \"_state_code\": \"wa\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=-31.9505&lon=115.8605&zoom=16&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if saturday,sunday then next monday\"},{\"name\":\"Australia Day\",\"fixed_date\":[1,26],\"shift_rule\":\"if saturday,sunday then next monday\"},{\"name\":\"Labour Day\",\"variable_date\":\"firstMarchMonday\"},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Easter Sunday\",\"variable_date\":\"easter\"},{\"name\":\"Easter Monday\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Anzac Day\",\"fixed_date\":[4,25],\"substitute_rule\":\"if saturday,sunday then next monday\"},{\"name\":\"Western Australia Day\",\"variable_date\":\"firstJuneMonday\"},{\"name\":\"King's Birthday\",\"variable_date\":\"lastSeptemberMonday\"},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\"},{\"name\":\"Boxing Day\",\"fixed_date\":[12,26],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\"}]\n }\n};\n\nexport const be = {\n PH: [{\"name\":\"Nieuwjaar - Nouvel An\",\"fixed_date\":[1,1]},{\"name\":\"Paasmaandag - Lundi de Pâques\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Dag van de Arbeid - Fête du travail\",\"fixed_date\":[5,1]},{\"name\":\"Hemelvaartsdag - Ascension\",\"variable_date\":\"easter\",\"offset\":39},{\"name\":\"Pinkstermaandag - Lundi de Pentecôte\",\"variable_date\":\"easter\",\"offset\":50},{\"name\":\"Nationale feestdag - Fête nationale\",\"fixed_date\":[7,21]},{\"name\":\"Tenhemelopneming - Assomption\",\"fixed_date\":[8,15]},{\"name\":\"Allerheiligen - Toussaint\",\"fixed_date\":[11,1]},{\"name\":\"Wapenstilstand - Armistice\",\"fixed_date\":[11,11]},{\"name\":\"Kerstmis - Noël\",\"fixed_date\":[12,25]}],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Belgium&zoom=18&addressdetails=1&limit=1&accept-language=nl,fr,de,en\",\n \"DE\": {\n \"_state_code\": \"de\",\n SH: [\n {\n name: \"Osterferien\",\n 2020: [4,6,4,17],\n 2021: [4,6,4,16],\n 2022: [4,4,4,15],\n 2023: [4,3,4,16],\n 2024: [4,1,4,13],\n 2025: [4,21,5,3],\n 2026: [4,6,4,18],\n },\n {\n name: \"Sommerferien\",\n 2020: [7,1,8,30],\n 2021: [7,1,8,31],\n 2022: [7,1,8,31],\n 2023: [7,1,8,31],\n 2024: [6,29,8,31],\n 2025: [7,1,8,31],\n 2026: [7,1,8,31],\n },\n {\n name: \"Weihnachtsferien\",\n 2019: [12,23,1,3],\n 2020: [12,21,1,1],\n 2021: [12,27,1,7],\n 2022: [12,26,1,8],\n 2023: [12,25,1,6],\n 2024: [12,23,1,4],\n 2025: [12,22,1,3],\n },\n {\n name: \"Karnevalsferien\",\n 2020: [2,24,2,28],\n 2021: [2,15,2,19],\n 2022: [2,28,3,4],\n 2023: [2,20,2,26],\n 2024: [2,12,2,17],\n 2025: [3,3,3,8],\n 2026: [2,16,2,21],\n },\n {\n name: \"Allerheiligenferien\",\n 2020: [11,2,11,6],\n 2021: [11,1,11,5],\n 2022: [10,31,11,6],\n 2023: [10,30,11,4],\n 2024: [10,28,11,2],\n 2025: [10,27,11,1],\n },\n {\n name: \"Tag der Deutschsprachigen Gemeinschaft\",\n 2020: [11,15,11,15],\n 2021: [11,15,11,15],\n 2022: [11,15,11,15],\n 2023: [11,15,11,15],\n 2024: [11,15,11,15],\n 2025: [11,15,11,15],\n },\n ]\n },\n \"FR\": {\n \"_state_code\": \"fr\",\n SH: [\n {\n name: \"Vacances d'hiver (Noël)\",\n 2019: [12,23,1,3],\n 2020: [12,21,1,1],\n 2021: [12,27,1,9],\n 2022: [12,26,1,6],\n 2023: [12,25,1,5],\n 2024: [12,23,1,5],\n 2025: [12,22,1,4],\n 2026: [12,21,1,3],\n },\n {\n name: \"Congé de détente (Carnaval)\",\n 2020: [2,24,2,28],\n 2021: [2,15,2,19],\n 2022: [2,28,3,4],\n 2023: [2,20,3,3],\n 2024: [2,26,3,8],\n 2025: [2,24,3,9],\n 2026: [2,16,3,1],\n 2027: [2,22,3,7],\n },\n {\n name: \"Vacances de printemps (Pâques)\",\n 2020: [4,6,4,17],\n 2021: [4,5,4,16],\n 2022: [4,4,4,15],\n 2023: [5,1,5,12],\n 2024: [4,29,5,10],\n 2025: [4,28,5,11],\n 2026: [4,27,5,10],\n 2027: [4,26,5,9],\n },\n {\n name: \"Vacances d'été\",\n 2020: [7,1,8,31],\n 2021: [7,1,8,31],\n 2022: [7,1,8,28],\n 2023: [7,8,8,27],\n 2024: [7,6,8,25],\n 2025: [7,5,8,24],\n 2026: [7,4,8,23],\n },\n {\n name: \"Fête de la Communauté française\",\n 2020: [9,27,9,27],\n 2021: [9,27,9,27],\n 2022: [9,27,9,27],\n 2023: [9,27,9,27],\n 2024: [9,27,9,27],\n 2025: [9,27,9,27],\n },\n {\n name: \"Congé d'automne (Toussaint)\",\n 2020: [11,2,11,6],\n 2021: [11,1,11,5],\n 2022: [10,24,11,4],\n 2023: [10,23,11,3],\n 2024: [10,21,11,3],\n 2025: [10,20,11,2],\n 2026: [10,19,11,1],\n },\n {\n name: \"Début des vacances d'été\",\n 2027: [7,3,7,3],\n },\n ]\n },\n \"NL\": {\n \"_state_code\": \"nl\",\n SH: [\n {\n name: \"Kerstvakantie\",\n 2019: [12,23,1,5],\n 2020: [12,21,1,3],\n 2021: [12,24,1,9],\n 2022: [12,26,1,8],\n 2023: [12,25,1,7],\n 2024: [12,23,1,5],\n 2025: [12,22,1,4],\n 2026: [12,21,1,3],\n 2027: [12,27,1,9],\n 2028: [12,25,1,7],\n },\n {\n name: \"Krokusvakantie\",\n 2020: [2,24,3,1],\n 2021: [2,15,2,21],\n 2022: [2,28,3,6],\n 2023: [2,20,2,26],\n 2024: [2,12,2,18],\n 2025: [3,3,3,9],\n 2026: [2,16,2,22],\n 2027: [2,8,2,14],\n 2028: [2,28,3,5],\n 2029: [2,12,2,18],\n },\n {\n name: \"Paasvakantie\",\n 2020: [4,6,4,19],\n 2021: [4,5,4,18],\n 2022: [4,4,4,18],\n 2023: [4,3,4,16],\n 2024: [4,1,4,14],\n 2025: [4,7,4,21],\n 2026: [4,6,4,19],\n 2027: [3,29,4,11],\n 2028: [4,3,4,17],\n 2029: [4,2,4,15],\n },\n {\n name: \"Zomervakantie\",\n 2020: [7,1,8,31],\n 2021: [7,1,8,31],\n 2022: [7,1,8,31],\n 2023: [7,1,8,31],\n 2024: [7,1,8,31],\n 2025: [7,1,8,31],\n 2026: [7,1,8,31],\n 2027: [7,1,8,31],\n 2028: [7,1,8,31],\n 2029: [7,1,8,31],\n },\n {\n name: \"Herfstvakantie\",\n 2020: [11,2,11,15],\n 2021: [11,1,11,7],\n 2022: [10,31,11,6],\n 2023: [10,30,11,5],\n 2024: [10,28,11,3],\n 2025: [10,27,11,2],\n 2026: [11,2,11,8],\n 2027: [11,1,11,7],\n 2028: [10,30,11,5],\n },\n ]\n }\n};\n\nexport const bg = {\n PH: [{\"name\":\"Нова Година\",\"fixed_date\":[1,1]},{\"name\":\"Ден на Освобождението на България от Османската Империя\",\"fixed_date\":[3,3]},{\"name\":\"Разпети петък\",\"variable_date\":\"orthodox easter\",\"offset\":-2},{\"name\":\"Великден\",\"variable_date\":\"orthodox easter\"},{\"name\":\"Велики понеделник\",\"variable_date\":\"orthodox easter\",\"offset\":1},{\"name\":\"Ден на труда\",\"fixed_date\":[5,1]},{\"name\":\"Гергьовден\",\"fixed_date\":[5,6]},{\"name\":\"Ден на азбуката, културата и просветата\",\"fixed_date\":[5,24]},{\"name\":\"Ден на съединението\",\"fixed_date\":[9,6]},{\"name\":\"Ден на независимостта\",\"fixed_date\":[9,22]},{\"name\":\"Бъдни вечер\",\"fixed_date\":[12,24]},{\"name\":\"Коледа\",\"fixed_date\":[12,25]}],\n SH: [\n {\n name: \"Коледна ваканция\",\n 2019: [12,21,1,5],\n 2020: [12,22,1,3],\n 2021: [12,24,1,3],\n 2022: [12,24,1,2],\n 2023: [12,23,1,2],\n 2024: [12,21,1,2],\n 2025: [12,24,1,4],\n },\n {\n name: \"Междусрочна ваканция\",\n 2020: [2,5,2,5],\n 2021: [1,30,2,3],\n 2022: [2,1,2,1],\n 2023: [2,1,2,5],\n 2024: [2,3,2,5],\n 2025: [2,5,2,5],\n 2026: [1,31,2,2],\n },\n {\n name: \"Пролетна ваканция\",\n 2020: [4,16,4,20],\n 2021: [4,8,4,11],\n 2022: [4,7,4,10],\n 2023: [4,12,4,17],\n 2024: [4,5,4,7],\n 2025: [4,4,4,6],\n 2026: [4,8,4,13],\n },\n {\n name: \"Лятна ваканция\",\n 2020: [7,1,9,14],\n 2021: [7,1,9,14],\n 2022: [7,1,9,14],\n 2023: [7,1,9,14],\n 2024: [6,29,9,14],\n 2025: [7,1,9,14],\n 2026: [7,1,9,14],\n },\n {\n name: \"Есенна ваканция\",\n 2020: [10,30,11,1],\n 2021: [10,30,11,1],\n 2022: [10,29,11,1],\n 2023: [11,1,11,5],\n 2024: [10,31,11,3],\n 2025: [10,31,11,3],\n },\n {\n name: \"Свободен от училище\",\n 2022: [2,2,2,4],\n 2026: [3,2,3,2],\n },\n ],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=42.6977&lon=23.3219&zoom=18&addressdetails=1&accept-language=bg,en\"\n};\n\nexport const br = {\n PH: [{\"name\":\"Ano Novo\",\"fixed_date\":[1,1]},{\"name\":\"Sexta-Feira Santa\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Dia de Tiradentes\",\"fixed_date\":[4,21]},{\"name\":\"Dia do trabalhador\",\"fixed_date\":[5,1]},{\"name\":\"Dia da Independência\",\"fixed_date\":[9,7]},{\"name\":\"Nossa Senhora Aparecida\",\"fixed_date\":[10,12]},{\"name\":\"Dia de Finados\",\"fixed_date\":[11,2]},{\"name\":\"Proclamação da República\",\"fixed_date\":[11,15]},{\"name\":\"Dia da Consciência Negra\",\"fixed_date\":[11,20]},{\"name\":\"Natal\",\"fixed_date\":[12,25]}],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=-10&lon=-52&zoom=18&addressdetails=1&accept-language=pt,en\",\n \"Acre\": {\n \"_state_code\": \"ac\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Brasil&state=Acre&zoom=18&addressdetails=1&limit=1&accept-language=pt,en\",\n PH: [{\"name\":\"Ano Novo\",\"fixed_date\":[1,1]},{\"name\":\"Dia do evangélico\",\"fixed_date\":[1,12]},{\"name\":\"Alusivo ao Dia Internacional da Mulher\",\"fixed_date\":[3,8]},{\"name\":\"Sexta-Feira Santa\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Dia de Tiradentes\",\"fixed_date\":[4,21]},{\"name\":\"Dia do trabalhador\",\"fixed_date\":[5,1]},{\"name\":\"Aniversário do estado\",\"fixed_date\":[6,15]},{\"name\":\"Dia da Amazônia\",\"fixed_date\":[9,5]},{\"name\":\"Dia da Independência\",\"fixed_date\":[9,7]},{\"name\":\"Nossa Senhora Aparecida\",\"fixed_date\":[10,12]},{\"name\":\"Dia de Finados\",\"fixed_date\":[11,2]},{\"name\":\"Proclamação da República\",\"fixed_date\":[11,15]},{\"name\":\"Dia da Consciência Negra\",\"fixed_date\":[11,20]},{\"name\":\"Natal\",\"fixed_date\":[12,25]}]\n },\n \"Alagoas\": {\n \"_state_code\": \"al\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Brasil&state=Alagoas&zoom=18&addressdetails=1&limit=1&accept-language=pt,en\",\n PH: [{\"name\":\"Ano Novo\",\"fixed_date\":[1,1]},{\"name\":\"Sexta-Feira Santa\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Dia de Tiradentes\",\"fixed_date\":[4,21]},{\"name\":\"Dia do trabalhador\",\"fixed_date\":[5,1]},{\"name\":\"São João\",\"fixed_date\":[6,24]},{\"name\":\"São Pedro\",\"fixed_date\":[6,29]},{\"name\":\"Dia da Independência\",\"fixed_date\":[9,7]},{\"name\":\"Emancipação política\",\"fixed_date\":[9,16]},{\"name\":\"Nossa Senhora Aparecida\",\"fixed_date\":[10,12]},{\"name\":\"Dia de Finados\",\"fixed_date\":[11,2]},{\"name\":\"Proclamação da República\",\"fixed_date\":[11,15]},{\"name\":\"Morte de Zumbi dos Palmares\",\"fixed_date\":[11,20]},{\"name\":\"Natal\",\"fixed_date\":[12,25]}]\n },\n \"Amapá\": {\n \"_state_code\": \"ap\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Brasil&state=Amap%C3%A1&zoom=18&addressdetails=1&limit=1&accept-language=pt,en\",\n PH: [{\"name\":\"Ano Novo\",\"fixed_date\":[1,1]},{\"name\":\"Dia de São José\",\"fixed_date\":[3,19]},{\"name\":\"Sexta-Feira Santa\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Dia de Tiradentes\",\"fixed_date\":[4,21]},{\"name\":\"Dia do trabalhador\",\"fixed_date\":[5,1]},{\"name\":\"Dia da Independência\",\"fixed_date\":[9,7]},{\"name\":\"Criação do Território Federal\",\"fixed_date\":[9,13]},{\"name\":\"Nossa Senhora Aparecida\",\"fixed_date\":[10,12]},{\"name\":\"Dia de Finados\",\"fixed_date\":[11,2]},{\"name\":\"Proclamação da República\",\"fixed_date\":[11,15]},{\"name\":\"Dia da Consciência Negra\",\"fixed_date\":[11,20]},{\"name\":\"Natal\",\"fixed_date\":[12,25]}]\n },\n \"Amazonas\": {\n \"_state_code\": \"am\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Brasil&state=Amazonas&zoom=18&addressdetails=1&limit=1&accept-language=pt,en\",\n PH: [{\"name\":\"Ano Novo\",\"fixed_date\":[1,1]},{\"name\":\"Sexta-Feira Santa\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Dia de Tiradentes\",\"fixed_date\":[4,21]},{\"name\":\"Dia do trabalhador\",\"fixed_date\":[5,1]},{\"name\":\"Elevação do Amazonas à categoria de província\",\"fixed_date\":[9,5]},{\"name\":\"Dia da Independência\",\"fixed_date\":[9,7]},{\"name\":\"Nossa Senhora Aparecida\",\"fixed_date\":[10,12]},{\"name\":\"Dia de Finados\",\"fixed_date\":[11,2]},{\"name\":\"Proclamação da República\",\"fixed_date\":[11,15]},{\"name\":\"Dia da Consciência Negra\",\"fixed_date\":[11,20]},{\"name\":\"Natal\",\"fixed_date\":[12,25]}]\n },\n \"Bahia\": {\n \"_state_code\": \"ba\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Brasil&state=Bahia&zoom=18&addressdetails=1&limit=1&accept-language=pt,en\",\n PH: [{\"name\":\"Ano Novo\",\"fixed_date\":[1,1]},{\"name\":\"Sexta-Feira Santa\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Dia de Tiradentes\",\"fixed_date\":[4,21]},{\"name\":\"Dia do trabalhador\",\"fixed_date\":[5,1]},{\"name\":\"Independência da Bahia\",\"fixed_date\":[7,2]},{\"name\":\"Dia da Independência\",\"fixed_date\":[9,7]},{\"name\":\"Nossa Senhora Aparecida\",\"fixed_date\":[10,12]},{\"name\":\"Dia de Finados\",\"fixed_date\":[11,2]},{\"name\":\"Proclamação da República\",\"fixed_date\":[11,15]},{\"name\":\"Dia da Consciência Negra\",\"fixed_date\":[11,20]},{\"name\":\"Natal\",\"fixed_date\":[12,25]}]\n },\n \"Ceará\": {\n \"_state_code\": \"ce\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Brasil&state=Cear%C3%A1&zoom=18&addressdetails=1&limit=1&accept-language=pt,en\",\n PH: [{\"name\":\"Ano Novo\",\"fixed_date\":[1,1]},{\"name\":\"Data magna do estado\",\"fixed_date\":[3,25]},{\"name\":\"Sexta-Feira Santa\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Dia de Tiradentes\",\"fixed_date\":[4,21]},{\"name\":\"Dia do trabalhador\",\"fixed_date\":[5,1]},{\"name\":\"Dia da Independência\",\"fixed_date\":[9,7]},{\"name\":\"Nossa Senhora Aparecida\",\"fixed_date\":[10,12]},{\"name\":\"Dia de Finados\",\"fixed_date\":[11,2]},{\"name\":\"Proclamação da República\",\"fixed_date\":[11,15]},{\"name\":\"Dia da Consciência Negra\",\"fixed_date\":[11,20]},{\"name\":\"Natal\",\"fixed_date\":[12,25]}]\n },\n \"Distrito Federal\": {\n \"_state_code\": \"df\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Brasil&state=Distrito+Federal&zoom=18&addressdetails=1&limit=1&accept-language=pt,en\",\n PH: [{\"name\":\"Ano Novo\",\"fixed_date\":[1,1]},{\"name\":\"Sexta-Feira Santa\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Fundação de Brasília\",\"fixed_date\":[4,21]},{\"name\":\"Dia do trabalhador\",\"fixed_date\":[5,1]},{\"name\":\"Dia da Independência\",\"fixed_date\":[9,7]},{\"name\":\"Nossa Senhora Aparecida\",\"fixed_date\":[10,12]},{\"name\":\"Dia de Finados\",\"fixed_date\":[11,2]},{\"name\":\"Proclamação da República\",\"fixed_date\":[11,15]},{\"name\":\"Dia da Consciência Negra\",\"fixed_date\":[11,20]},{\"name\":\"Dia do Evangélico\",\"fixed_date\":[11,30]},{\"name\":\"Natal\",\"fixed_date\":[12,25]}]\n },\n \"Espírito Santo\": {\n \"_state_code\": \"es\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Brasil&state=Esp%C3%ADrito+Santo&zoom=18&addressdetails=1&limit=1&accept-language=pt,en\",\n PH: [{\"name\":\"Ano Novo\",\"fixed_date\":[1,1]},{\"name\":\"Sexta-Feira Santa\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Dia de Nossa Senhora da Penha\",\"variable_date\":\"easter\",\"offset\":8},{\"name\":\"Dia de Tiradentes\",\"fixed_date\":[4,21]},{\"name\":\"Dia do trabalhador\",\"fixed_date\":[5,1]},{\"name\":\"Dia da Independência\",\"fixed_date\":[9,7]},{\"name\":\"Nossa Senhora Aparecida\",\"fixed_date\":[10,12]},{\"name\":\"Dia de Finados\",\"fixed_date\":[11,2]},{\"name\":\"Proclamação da República\",\"fixed_date\":[11,15]},{\"name\":\"Dia da Consciência Negra\",\"fixed_date\":[11,20]},{\"name\":\"Natal\",\"fixed_date\":[12,25]}]\n },\n \"Goiás\": {\n \"_state_code\": \"go\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Brasil&state=Goi%C3%A1s&zoom=18&addressdetails=1&limit=1&accept-language=pt,en\",\n PH: [{\"name\":\"Ano Novo\",\"fixed_date\":[1,1]},{\"name\":\"Sexta-Feira Santa\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Dia de Tiradentes\",\"fixed_date\":[4,21]},{\"name\":\"Dia do trabalhador\",\"fixed_date\":[5,1]},{\"name\":\"Nossa Senhora Auxiliadora\",\"fixed_date\":[5,24]},{\"name\":\"Fundação da Cidade de Goiás\",\"fixed_date\":[7,26]},{\"name\":\"Dia da Independência\",\"fixed_date\":[9,7]},{\"name\":\"Nossa Senhora Aparecida\",\"fixed_date\":[10,12]},{\"name\":\"Lançamento da pedra fundamental de Goiânia\",\"fixed_date\":[10,24]},{\"name\":\"Dia de Finados\",\"fixed_date\":[11,2]},{\"name\":\"Proclamação da República\",\"fixed_date\":[11,15]},{\"name\":\"Dia da Consciência Negra\",\"fixed_date\":[11,20]},{\"name\":\"Natal\",\"fixed_date\":[12,25]}]\n },\n \"Maranhão\": {\n \"_state_code\": \"ma\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Brasil&state=Maranh%C3%A3o&zoom=18&addressdetails=1&limit=1&accept-language=pt,en\",\n PH: [{\"name\":\"Ano Novo\",\"fixed_date\":[1,1]},{\"name\":\"Sexta-Feira Santa\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Dia de Tiradentes\",\"fixed_date\":[4,21]},{\"name\":\"Dia do trabalhador\",\"fixed_date\":[5,1]},{\"name\":\"Adesão do Maranhão à independência do Brasil\",\"fixed_date\":[7,28]},{\"name\":\"Dia da Independência\",\"fixed_date\":[9,7]},{\"name\":\"Nossa Senhora Aparecida\",\"fixed_date\":[10,12]},{\"name\":\"Dia de Finados\",\"fixed_date\":[11,2]},{\"name\":\"Proclamação da República\",\"fixed_date\":[11,15]},{\"name\":\"Dia da Consciência Negra\",\"fixed_date\":[11,20]},{\"name\":\"Natal\",\"fixed_date\":[12,25]}]\n },\n \"Mato Grosso\": {\n \"_state_code\": \"mt\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Brasil&state=Mato+Grosso&zoom=18&addressdetails=1&limit=1&accept-language=pt,en\",\n PH: [{\"name\":\"Ano Novo\",\"fixed_date\":[1,1]},{\"name\":\"Sexta-Feira Santa\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Dia de Tiradentes\",\"fixed_date\":[4,21]},{\"name\":\"Dia do trabalhador\",\"fixed_date\":[5,1]},{\"name\":\"Dia da Independência\",\"fixed_date\":[9,7]},{\"name\":\"Nossa Senhora Aparecida\",\"fixed_date\":[10,12]},{\"name\":\"Dia de Finados\",\"fixed_date\":[11,2]},{\"name\":\"Proclamação da República\",\"fixed_date\":[11,15]},{\"name\":\"Dia da Consciência Negra\",\"fixed_date\":[11,20]},{\"name\":\"Natal\",\"fixed_date\":[12,25]}]\n },\n \"Mato Grosso do Sul\": {\n \"_state_code\": \"ms\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Brasil&state=Mato+Grosso+do+Sul&zoom=18&addressdetails=1&limit=1&accept-language=pt,en\",\n PH: [{\"name\":\"Ano Novo\",\"fixed_date\":[1,1]},{\"name\":\"Sexta-Feira Santa\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Dia de Tiradentes\",\"fixed_date\":[4,21]},{\"name\":\"Dia do trabalhador\",\"fixed_date\":[5,1]},{\"name\":\"Dia da Independência\",\"fixed_date\":[9,7]},{\"name\":\"Criação do estado\",\"fixed_date\":[10,11]},{\"name\":\"Nossa Senhora Aparecida\",\"fixed_date\":[10,12]},{\"name\":\"Dia de Finados\",\"fixed_date\":[11,2]},{\"name\":\"Proclamação da República\",\"fixed_date\":[11,15]},{\"name\":\"Dia da Consciência Negra\",\"fixed_date\":[11,20]},{\"name\":\"Natal\",\"fixed_date\":[12,25]}]\n },\n \"Minas Gerais\": {\n \"_state_code\": \"mg\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Brasil&state=Minas+Gerais&zoom=18&addressdetails=1&limit=1&accept-language=pt,en\",\n PH: [{\"name\":\"Ano Novo\",\"fixed_date\":[1,1]},{\"name\":\"Sexta-Feira Santa\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Data magna do estado\",\"fixed_date\":[4,21]},{\"name\":\"Dia do trabalhador\",\"fixed_date\":[5,1]},{\"name\":\"Assunção de Nossa Senhora\",\"fixed_date\":[8,15]},{\"name\":\"Dia da Independência\",\"fixed_date\":[9,7]},{\"name\":\"Nossa Senhora Aparecida\",\"fixed_date\":[10,12]},{\"name\":\"Dia de Finados\",\"fixed_date\":[11,2]},{\"name\":\"Proclamação da República\",\"fixed_date\":[11,15]},{\"name\":\"Dia da Consciência Negra\",\"fixed_date\":[11,20]},{\"name\":\"Imaculada Conceição\",\"fixed_date\":[12,8]},{\"name\":\"Natal\",\"fixed_date\":[12,25]}]\n },\n \"Pará\": {\n \"_state_code\": \"pa\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Brasil&state=Par%C3%A1&zoom=18&addressdetails=1&limit=1&accept-language=pt,en\",\n PH: [{\"name\":\"Ano Novo\",\"fixed_date\":[1,1]},{\"name\":\"Sexta-Feira Santa\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Dia de Tiradentes\",\"fixed_date\":[4,21]},{\"name\":\"Dia do trabalhador\",\"fixed_date\":[5,1]},{\"name\":\"Adesão do Grão-Pará à independência do Brasil\",\"fixed_date\":[8,15]},{\"name\":\"Dia da Independência\",\"fixed_date\":[9,7]},{\"name\":\"Nossa Senhora Aparecida\",\"fixed_date\":[10,12]},{\"name\":\"Dia de Finados\",\"fixed_date\":[11,2]},{\"name\":\"Proclamação da República\",\"fixed_date\":[11,15]},{\"name\":\"Dia da Consciência Negra\",\"fixed_date\":[11,20]},{\"name\":\"Natal\",\"fixed_date\":[12,25]}]\n },\n \"Paraíba\": {\n \"_state_code\": \"pb\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Brasil&state=Para%C3%ADba&zoom=18&addressdetails=1&limit=1&accept-language=pt,en\",\n PH: [{\"name\":\"Ano Novo\",\"fixed_date\":[1,1]},{\"name\":\"Sexta-Feira Santa\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Dia de Tiradentes\",\"fixed_date\":[4,21]},{\"name\":\"Dia do trabalhador\",\"fixed_date\":[5,1]},{\"name\":\"Homenagem à memória do ex-presidente João Pessoa\",\"fixed_date\":[7,26]},{\"name\":\"Nossa Senhora das Neves\",\"fixed_date\":[8,5]},{\"name\":\"Dia da Independência\",\"fixed_date\":[9,7]},{\"name\":\"Nossa Senhora Aparecida\",\"fixed_date\":[10,12]},{\"name\":\"Dia de Finados\",\"fixed_date\":[11,2]},{\"name\":\"Proclamação da República\",\"fixed_date\":[11,15]},{\"name\":\"Dia da Consciência Negra\",\"fixed_date\":[11,20]},{\"name\":\"Natal\",\"fixed_date\":[12,25]}]\n },\n \"Paraná\": {\n \"_state_code\": \"pr\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Brasil&state=Paran%C3%A1&zoom=18&addressdetails=1&limit=1&accept-language=pt,en\",\n PH: [{\"name\":\"Ano Novo\",\"fixed_date\":[1,1]},{\"name\":\"Sexta-Feira Santa\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Dia de Tiradentes\",\"fixed_date\":[4,21]},{\"name\":\"Dia do trabalhador\",\"fixed_date\":[5,1]},{\"name\":\"Dia da Independência\",\"fixed_date\":[9,7]},{\"name\":\"Nossa Senhora da Luz dos Pinhais\",\"fixed_date\":[9,8]},{\"name\":\"Nossa Senhora Aparecida\",\"fixed_date\":[10,12]},{\"name\":\"Dia de Finados\",\"fixed_date\":[11,2]},{\"name\":\"Proclamação da República\",\"fixed_date\":[11,15]},{\"name\":\"Dia da Consciência Negra\",\"fixed_date\":[11,20]},{\"name\":\"Emancipação política do estado do Paraná\",\"fixed_date\":[12,19]},{\"name\":\"Natal\",\"fixed_date\":[12,25]}]\n },\n \"Pernambuco\": {\n \"_state_code\": \"pe\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Brasil&state=Pernambuco&zoom=18&addressdetails=1&limit=1&accept-language=pt,en\",\n PH: [{\"name\":\"Ano Novo\",\"fixed_date\":[1,1]},{\"name\":\"Sexta-Feira Santa\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Dia de Tiradentes\",\"fixed_date\":[4,21]},{\"name\":\"Dia do trabalhador\",\"fixed_date\":[5,1]},{\"name\":\"São João\",\"fixed_date\":[6,24]},{\"name\":\"Nossa Senhora do Carmo\",\"fixed_date\":[7,16]},{\"name\":\"Dia da Independência\",\"fixed_date\":[9,7]},{\"name\":\"Nossa Senhora Aparecida\",\"fixed_date\":[10,12]},{\"name\":\"Dia de Finados\",\"fixed_date\":[11,2]},{\"name\":\"Proclamação da República\",\"fixed_date\":[11,15]},{\"name\":\"Dia da Consciência Negra\",\"fixed_date\":[11,20]},{\"name\":\"Nossa Senhora da Conceição\",\"fixed_date\":[12,8]},{\"name\":\"Natal\",\"fixed_date\":[12,25]}]\n },\n \"Piauí\": {\n \"_state_code\": \"pi\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Brasil&state=Piau%C3%AD&zoom=18&addressdetails=1&limit=1&accept-language=pt,en\",\n PH: [{\"name\":\"Ano Novo\",\"fixed_date\":[1,1]},{\"name\":\"Sexta-Feira Santa\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Dia de Tiradentes\",\"fixed_date\":[4,21]},{\"name\":\"Dia do trabalhador\",\"fixed_date\":[5,1]},{\"name\":\"Dia da Independência\",\"fixed_date\":[9,7]},{\"name\":\"Nossa Senhora Aparecida\",\"fixed_date\":[10,12]},{\"name\":\"Dia do Piauí\",\"fixed_date\":[10,19]},{\"name\":\"Dia de Finados\",\"fixed_date\":[11,2]},{\"name\":\"Proclamação da República\",\"fixed_date\":[11,15]},{\"name\":\"Dia da Consciência Negra\",\"fixed_date\":[11,20]},{\"name\":\"Natal\",\"fixed_date\":[12,25]}]\n },\n \"Rio de Janeiro\": {\n \"_state_code\": \"rj\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Brasil&state=Rio+de+Janeiro&zoom=18&addressdetails=1&limit=1&accept-language=pt,en\",\n PH: [{\"name\":\"Ano Novo\",\"fixed_date\":[1,1]},{\"name\":\"Dia de São Sebastião\",\"fixed_date\":[1,20]},{\"name\":\"Carnaval\",\"variable_date\":\"easter\",\"offset\":-47},{\"name\":\"Sexta-Feira Santa\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Dia de Tiradentes\",\"fixed_date\":[4,21]},{\"name\":\"Dia de São Jorge\",\"fixed_date\":[4,23]},{\"name\":\"Dia do trabalhador\",\"fixed_date\":[5,1]},{\"name\":\"Dia da Independência\",\"fixed_date\":[9,7]},{\"name\":\"Nossa Senhora Aparecida\",\"fixed_date\":[10,12]},{\"name\":\"Dia de Finados\",\"fixed_date\":[11,2]},{\"name\":\"Proclamação da República\",\"fixed_date\":[11,15]},{\"name\":\"Dia da Consciência Negra\",\"fixed_date\":[11,20]},{\"name\":\"Natal\",\"fixed_date\":[12,25]}]\n },\n \"Rio Grande do Norte\": {\n \"_state_code\": \"rn\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Brasil&state=Rio+Grande+do+Norte&zoom=18&addressdetails=1&limit=1&accept-language=pt,en\",\n PH: [{\"name\":\"Ano Novo\",\"fixed_date\":[1,1]},{\"name\":\"Sexta-Feira Santa\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Dia de Tiradentes\",\"fixed_date\":[4,21]},{\"name\":\"Dia do trabalhador\",\"fixed_date\":[5,1]},{\"name\":\"Dia da Independência\",\"fixed_date\":[9,7]},{\"name\":\"Mártires de Cunhaú e Uruaçu\",\"fixed_date\":[10,3]},{\"name\":\"Nossa Senhora Aparecida\",\"fixed_date\":[10,12]},{\"name\":\"Dia de Finados\",\"fixed_date\":[11,2]},{\"name\":\"Proclamação da República\",\"fixed_date\":[11,15]},{\"name\":\"Dia da Consciência Negra\",\"fixed_date\":[11,20]},{\"name\":\"Natal\",\"fixed_date\":[12,25]}]\n },\n \"Rio Grande do Sul\": {\n \"_state_code\": \"rs\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Brasil&state=Rio+Grande+do+Sul&zoom=18&addressdetails=1&limit=1&accept-language=pt,en\",\n PH: [{\"name\":\"Ano Novo\",\"fixed_date\":[1,1]},{\"name\":\"Sexta-Feira Santa\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Dia de Tiradentes\",\"fixed_date\":[4,21]},{\"name\":\"Dia do trabalhador\",\"fixed_date\":[5,1]},{\"name\":\"Dia da Independência\",\"fixed_date\":[9,7]},{\"name\":\"Proclamação da República Rio-Grandense\",\"fixed_date\":[9,20]},{\"name\":\"Nossa Senhora Aparecida\",\"fixed_date\":[10,12]},{\"name\":\"Dia de Finados\",\"fixed_date\":[11,2]},{\"name\":\"Proclamação da República\",\"fixed_date\":[11,15]},{\"name\":\"Dia da Consciência Negra\",\"fixed_date\":[11,20]},{\"name\":\"Natal\",\"fixed_date\":[12,25]}]\n },\n \"Rondônia\": {\n \"_state_code\": \"ro\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Brasil&state=Rond%C3%B4nia&zoom=18&addressdetails=1&limit=1&accept-language=pt,en\",\n PH: [{\"name\":\"Ano Novo\",\"fixed_date\":[1,1]},{\"name\":\"Criação do estado\",\"fixed_date\":[1,4]},{\"name\":\"Sexta-Feira Santa\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Dia de Tiradentes\",\"fixed_date\":[4,21]},{\"name\":\"Dia do trabalhador\",\"fixed_date\":[5,1]},{\"name\":\"Dia do evangélico\",\"fixed_date\":[6,18]},{\"name\":\"Dia da Independência\",\"fixed_date\":[9,7]},{\"name\":\"Nossa Senhora Aparecida\",\"fixed_date\":[10,12]},{\"name\":\"Dia de Finados\",\"fixed_date\":[11,2]},{\"name\":\"Proclamação da República\",\"fixed_date\":[11,15]},{\"name\":\"Dia da Consciência Negra\",\"fixed_date\":[11,20]},{\"name\":\"Natal\",\"fixed_date\":[12,25]}]\n },\n \"Roraima\": {\n \"_state_code\": \"rr\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Brasil&state=Roraima&zoom=18&addressdetails=1&limit=1&accept-language=pt,en\",\n PH: [{\"name\":\"Ano Novo\",\"fixed_date\":[1,1]},{\"name\":\"Sexta-Feira Santa\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Dia de Tiradentes\",\"fixed_date\":[4,21]},{\"name\":\"Dia do trabalhador\",\"fixed_date\":[5,1]},{\"name\":\"Dia da Independência\",\"fixed_date\":[9,7]},{\"name\":\"Criação do estado\",\"fixed_date\":[10,5]},{\"name\":\"Nossa Senhora Aparecida\",\"fixed_date\":[10,12]},{\"name\":\"Dia de Finados\",\"fixed_date\":[11,2]},{\"name\":\"Proclamação da República\",\"fixed_date\":[11,15]},{\"name\":\"Dia da Consciência Negra\",\"fixed_date\":[11,20]},{\"name\":\"Natal\",\"fixed_date\":[12,25]}]\n },\n \"Santa Catarina\": {\n \"_state_code\": \"sc\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Brasil&state=Santa+Catarina&zoom=18&addressdetails=1&limit=1&accept-language=pt,en\",\n PH: [{\"name\":\"Ano Novo\",\"fixed_date\":[1,1]},{\"name\":\"Sexta-Feira Santa\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Dia de Tiradentes\",\"fixed_date\":[4,21]},{\"name\":\"Dia do trabalhador\",\"fixed_date\":[5,1]},{\"name\":\"Dia de Santa Catarina\",\"fixed_date\":[8,11],\"shift_rule\":\"if monday,tuesday,wednesday,thursday,friday,saturday then next sunday\"},{\"name\":\"Dia da Independência\",\"fixed_date\":[9,7]},{\"name\":\"Nossa Senhora Aparecida\",\"fixed_date\":[10,12]},{\"name\":\"Dia de Finados\",\"fixed_date\":[11,2]},{\"name\":\"Proclamação da República\",\"fixed_date\":[11,15]},{\"name\":\"Dia da Consciência Negra\",\"fixed_date\":[11,20]},{\"name\":\"Dia de Santa Catarina de Alexandria\",\"fixed_date\":[11,25],\"shift_rule\":\"if monday,tuesday,wednesday,thursday,friday,saturday then next sunday\"},{\"name\":\"Natal\",\"fixed_date\":[12,25]}]\n },\n \"São Paulo\": {\n \"_state_code\": \"sp\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Brasil&state=S%C3%A3o+Paulo&zoom=18&addressdetails=1&limit=1&accept-language=pt,en\",\n PH: [{\"name\":\"Ano Novo\",\"fixed_date\":[1,1]},{\"name\":\"Aniversário da Cidade\",\"fixed_date\":[1,25]},{\"name\":\"Sexta-Feira Santa\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Dia de Tiradentes\",\"fixed_date\":[4,21]},{\"name\":\"Dia do trabalhador\",\"fixed_date\":[5,1]},{\"name\":\"Corpo de Deus\",\"variable_date\":\"easter\",\"offset\":60},{\"name\":\"Revolução Constitucionalista\",\"fixed_date\":[7,9]},{\"name\":\"Dia da Independência\",\"fixed_date\":[9,7]},{\"name\":\"Nossa Senhora Aparecida\",\"fixed_date\":[10,12]},{\"name\":\"Dia de Finados\",\"fixed_date\":[11,2]},{\"name\":\"Proclamação da República\",\"fixed_date\":[11,15]},{\"name\":\"Dia da Consciência Negra\",\"fixed_date\":[11,20]},{\"name\":\"Natal\",\"fixed_date\":[12,25]}]\n },\n \"Sergipe\": {\n \"_state_code\": \"se\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Brasil&state=Sergipe&zoom=18&addressdetails=1&limit=1&accept-language=pt,en\",\n PH: [{\"name\":\"Ano Novo\",\"fixed_date\":[1,1]},{\"name\":\"Sexta-Feira Santa\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Dia de Tiradentes\",\"fixed_date\":[4,21]},{\"name\":\"Dia do trabalhador\",\"fixed_date\":[5,1]},{\"name\":\"Emancipação política de Sergipe\",\"fixed_date\":[7,8]},{\"name\":\"Dia da Independência\",\"fixed_date\":[9,7]},{\"name\":\"Nossa Senhora Aparecida\",\"fixed_date\":[10,12]},{\"name\":\"Dia de Finados\",\"fixed_date\":[11,2]},{\"name\":\"Proclamação da República\",\"fixed_date\":[11,15]},{\"name\":\"Dia da Consciência Negra\",\"fixed_date\":[11,20]},{\"name\":\"Natal\",\"fixed_date\":[12,25]}]\n },\n \"Tocantins\": {\n \"_state_code\": \"to\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Brasil&state=Tocantins&zoom=18&addressdetails=1&limit=1&accept-language=pt,en\",\n PH: [{\"name\":\"Ano Novo\",\"fixed_date\":[1,1]},{\"name\":\"Autonomia do Estado\",\"fixed_date\":[3,18]},{\"name\":\"Sexta-Feira Santa\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Dia de Tiradentes\",\"fixed_date\":[4,21]},{\"name\":\"Dia do trabalhador\",\"fixed_date\":[5,1]},{\"name\":\"Dia da Independência\",\"fixed_date\":[9,7]},{\"name\":\"Nossa Senhora da Natividade\",\"fixed_date\":[9,8]},{\"name\":\"Criação do estado\",\"fixed_date\":[10,5]},{\"name\":\"Nossa Senhora Aparecida\",\"fixed_date\":[10,12]},{\"name\":\"Dia de Finados\",\"fixed_date\":[11,2]},{\"name\":\"Proclamação da República\",\"fixed_date\":[11,15]},{\"name\":\"Dia da Consciência Negra\",\"fixed_date\":[11,20]},{\"name\":\"Natal\",\"fixed_date\":[12,25]}]\n }\n};\n\nexport const by = {\n PH: [{\"name\":\"Новы год\",\"fixed_date\":[1,1]},{\"name\":\"Мiжнародны жаночы дзень\",\"fixed_date\":[3,8]},{\"name\":\"Радунiца\",\"variable_date\":\"orthodox easter\",\"offset\":9},{\"name\":\"Дзень працы\",\"fixed_date\":[5,1]},{\"name\":\"Дзень Перамогi\",\"fixed_date\":[5,9]},{\"name\":\"Дзень Незалежнасцi\",\"fixed_date\":[7,3]},{\"name\":\"Дзень Кастрычніцкай рэвалюцыі\",\"fixed_date\":[11,7]},{\"name\":\"Каляды каталiцкiя\",\"fixed_date\":[12,25]}],\n SH: [\n {\n name: \"Зімовыя вакацыі\",\n 2019: [12,26,1,11],\n 2020: [12,25,1,10],\n 2021: [12,25,1,9],\n 2022: [12,25,1,8],\n 2023: [12,24,1,7],\n 2024: [12,25,1,7],\n 2025: [12,25,1,7],\n },\n {\n name: \"Вясновыя вакацыі\",\n 2020: [3,30,4,18],\n 2021: [3,28,4,4],\n 2022: [3,27,4,3],\n 2023: [3,26,4,2],\n 2024: [3,24,3,31],\n 2025: [3,23,3,30],\n 2026: [3,22,3,29],\n },\n {\n name: \"Летнія вакацыі\",\n 2020: [6,1,8,31],\n 2021: [6,1,8,31],\n 2022: [6,1,8,31],\n 2023: [6,1,8,31],\n 2024: [6,1,8,31],\n 2025: [6,1,8,31],\n 2026: [6,1,8,31],\n },\n {\n name: \"Восеньскія вакацыі\",\n 2020: [11,1,11,8],\n 2021: [10,31,11,7],\n 2022: [10,30,11,7],\n 2023: [10,29,11,7],\n 2024: [10,27,11,5],\n 2025: [11,2,11,9],\n },\n ],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=53.9045&lon=27.5615&zoom=18&addressdetails=1&accept-language=be,en\"\n};\n\nexport const ca = {\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1]},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Canada Day\",\"variable_date\":\"canadaDay\"},{\"name\":\"Labour Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25]}],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=45.4215&lon=-75.6972&zoom=18&addressdetails=1&accept-language=en,fr\",\n \"Alberta\": {\n \"_state_code\": \"ab\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Canada&state=Alberta&zoom=18&addressdetails=1&limit=1&accept-language=en,fr\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1]},{\"name\":\"Family Day\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Victoria Day\",\"variable_date\":\"victoriaDay\"},{\"name\":\"Canada Day\",\"variable_date\":\"canadaDay\"},{\"name\":\"Labour Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Thanksgiving\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Remembrance Day\",\"fixed_date\":[11,11]},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25]}]\n },\n \"British Columbia\": {\n \"_state_code\": \"bc\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Canada&state=British+Columbia&zoom=18&addressdetails=1&limit=1&accept-language=en,fr\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1]},{\"name\":\"Family Day\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Victoria Day\",\"variable_date\":\"victoriaDay\"},{\"name\":\"Canada Day\",\"variable_date\":\"canadaDay\"},{\"name\":\"British Columbia Day\",\"variable_date\":\"firstAugustMonday\"},{\"name\":\"Labour Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Thanksgiving\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Remembrance Day\",\"fixed_date\":[11,11]},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25]}]\n },\n \"Manitoba\": {\n \"_state_code\": \"mb\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Canada&state=Manitoba&zoom=18&addressdetails=1&limit=1&accept-language=en,fr\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1]},{\"name\":\"Louis Riel Day\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Victoria Day\",\"variable_date\":\"victoriaDay\"},{\"name\":\"Canada Day\",\"variable_date\":\"canadaDay\"},{\"name\":\"Labour Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Thanksgiving\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25]}]\n },\n \"New Brunswick\": {\n \"_state_code\": \"nb\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Canada&state=New+Brunswick&zoom=18&addressdetails=1&limit=1&accept-language=en,fr\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1]},{\"name\":\"Family Day\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Canada Day\",\"variable_date\":\"canadaDay\"},{\"name\":\"New Brunswick Day\",\"variable_date\":\"firstAugustMonday\"},{\"name\":\"Labour Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Remembrance Day\",\"fixed_date\":[11,11]},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25]}]\n },\n \"Newfoundland and Labrador\": {\n \"_state_code\": \"nl\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Canada&state=Newfoundland+and+Labrador&zoom=18&addressdetails=1&limit=1&accept-language=en,fr\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1]},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Memorial Day\",\"fixed_date\":[7,1]},{\"name\":\"Labour Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Armistice Day\",\"fixed_date\":[11,11]},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25]}]\n },\n \"Northwest Territories\": {\n \"_state_code\": \"nt\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Canada&state=Northwest+Territories&zoom=18&addressdetails=1&limit=1&accept-language=en,fr\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1]},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Easter Monday\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Victoria Day\",\"variable_date\":\"victoriaDay\"},{\"name\":\"National Indigenous Peoples Day\",\"fixed_date\":[6,21]},{\"name\":\"Canada Day\",\"variable_date\":\"canadaDay\"},{\"name\":\"Civic Holiday\",\"variable_date\":\"firstAugustMonday\"},{\"name\":\"Labour Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Thanksgiving\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Remembrance Day\",\"fixed_date\":[11,11]},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25]},{\"name\":\"Boxing Day\",\"fixed_date\":[12,26]}]\n },\n \"Nova Scotia\": {\n \"_state_code\": \"ns\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Canada&state=Nova+Scotia&zoom=18&addressdetails=1&limit=1&accept-language=en,fr\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1]},{\"name\":\"Heritage Day\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Canada Day\",\"variable_date\":\"canadaDay\"},{\"name\":\"Labour Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Remembrance Day\",\"fixed_date\":[11,11]},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25]}]\n },\n \"Nunavut\": {\n \"_state_code\": \"nu\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Canada&state=Nunavut&zoom=18&addressdetails=1&limit=1&accept-language=en,fr\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1]},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Victoria Day\",\"variable_date\":\"victoriaDay\"},{\"name\":\"Canada Day\",\"variable_date\":\"canadaDay\"},{\"name\":\"Nunavut Day\",\"fixed_date\":[7,9]},{\"name\":\"Civic Holiday\",\"variable_date\":\"firstAugustMonday\"},{\"name\":\"Labour Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Thanksgiving\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Remembrance Day\",\"fixed_date\":[11,11]},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25]}]\n },\n \"Ontario\": {\n \"_state_code\": \"on\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Canada&state=Ontario&zoom=18&addressdetails=1&limit=1&accept-language=en,fr\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1]},{\"name\":\"Family Day\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Easter Monday\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Victoria Day\",\"variable_date\":\"victoriaDay\"},{\"name\":\"Canada Day\",\"variable_date\":\"canadaDay\"},{\"name\":\"Labour Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Thanksgiving\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25]},{\"name\":\"Boxing Day\",\"fixed_date\":[12,26]}]\n },\n \"Prince Edward Island\": {\n \"_state_code\": \"pe\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Canada&state=Prince+Edward+Island&zoom=18&addressdetails=1&limit=1&accept-language=en,fr\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1]},{\"name\":\"Islander Day\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Canada Day\",\"variable_date\":\"canadaDay\"},{\"name\":\"Gold Cup Parade Day\",\"variable_date\":\"firstAugustFriday\",\"offset\":14},{\"name\":\"Labour Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Remembrance Day\",\"fixed_date\":[11,11]},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25]}]\n },\n \"Quebec\": {\n \"_state_code\": \"qc\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Canada&state=Quebec&zoom=18&addressdetails=1&limit=1&accept-language=en,fr\",\n PH: [{\"name\":\"Nouvel An\",\"fixed_date\":[1,1]},{\"name\":\"Vendredi saint\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Lundi de Pâques\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Journée nationale des patriotes\",\"variable_date\":\"victoriaDay\"},{\"name\":\"Fête nationale du Québec\",\"fixed_date\":[6,24]},{\"name\":\"Fête du Canada\",\"variable_date\":\"canadaDay\"},{\"name\":\"Fête du travail\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Action de grâce\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Noël\",\"fixed_date\":[12,25]}]\n },\n \"Saskatchewan\": {\n \"_state_code\": \"sk\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Canada&state=Saskatchewan&zoom=18&addressdetails=1&limit=1&accept-language=en,fr\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1]},{\"name\":\"Family Day\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Victoria Day\",\"variable_date\":\"victoriaDay\"},{\"name\":\"Canada Day\",\"variable_date\":\"canadaDay\"},{\"name\":\"Saskatchewan Day\",\"variable_date\":\"firstAugustMonday\"},{\"name\":\"Labour Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Thanksgiving\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Remembrance Day\",\"fixed_date\":[11,11]},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25]}]\n },\n \"Yukon\": {\n \"_state_code\": \"yt\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Canada&state=Yukon&zoom=18&addressdetails=1&limit=1&accept-language=en,fr\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1]},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Easter Monday\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Victoria Day\",\"variable_date\":\"victoriaDay\"},{\"name\":\"National Indigenous Peoples Day\",\"fixed_date\":[6,21]},{\"name\":\"Canada Day\",\"variable_date\":\"canadaDay\"},{\"name\":\"Discovery Day\",\"variable_date\":\"firstAugustMonday\",\"offset\":14},{\"name\":\"Labour Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Thanksgiving\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Remembrance Day\",\"fixed_date\":[11,11]},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25]}]\n }\n};\n\nexport const ch = {\n PH: [{\"name\":\"Neujahr/Nouvel An/Capodanno\",\"fixed_date\":[1,1]},{\"name\":\"Berchtoldstag/2 janvier\",\"fixed_date\":[1,2],\"only_states\":[\"Aargau\",\"Bern\",\"Jura\",\"Thurgau\",\"Waadt\"]},{\"name\":\"Heilige Drei Könige/l'Épiphanie/Epifania\",\"fixed_date\":[1,6],\"only_states\":[\"Schwyz\",\"Tessin\",\"Uri\"]},{\"name\":\"Jahrestag Ausrufung der Republik/Instauration de la République\",\"fixed_date\":[3,1],\"only_states\":[\"Neuenburg\"]},{\"name\":\"Josefstag/San Giuseppe\",\"fixed_date\":[3,19],\"only_states\":[\"Nidwalden\",\"Schwyz\",\"Solothurn\",\"Tessin\",\"Uri\",\"Wallis\"]},{\"name\":\"Karfreitag/Vendredi saint/Venerdì santo\",\"variable_date\":\"easter\",\"offset\":-2,\"only_states\":[\"Aargau\",\"Appenzell Ausserrhoden\",\"Appenzell Innerrhoden\",\"Basel-Landschaft\",\"Basel-Stadt\",\"Bern\",\"Freiburg\",\"Genf\",\"Glarus\",\"Graubünden\",\"Jura\",\"Luzern\",\"Neuenburg\",\"Nidwalden\",\"Obwalden\",\"Schaffhausen\",\"Schwyz\",\"Solothurn\",\"St. Gallen\",\"Thurgau\",\"Uri\",\"Waadt\",\"Zug\",\"Zürich\"]},{\"name\":\"Ostersonntag/Pâques/Domenica di Pasqua\",\"variable_date\":\"easter\"},{\"name\":\"Ostermontag/Lundi de Pâques/Lunedì dell’Angelo\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Tag der Arbeit/Fête du travail/Festa del Lavoro\",\"fixed_date\":[5,1],\"only_states\":[\"Aargau\",\"Basel-Landschaft\",\"Basel-Stadt\",\"Jura\",\"Neuenburg\",\"Schaffhausen\",\"Tessin\",\"Thurgau\",\"Zürich\"]},{\"name\":\"Auffahrt/Ascension/Ascensione\",\"variable_date\":\"easter\",\"offset\":39},{\"name\":\"Pfingstsonntag/Pentecôte/Pentecoste\",\"variable_date\":\"easter\",\"offset\":49},{\"name\":\"Pfingstmontag/Lundi de Pentecôte/Lunedì di Pentecoste\",\"variable_date\":\"easter\",\"offset\":50},{\"name\":\"Fronleichnam/la Fête-Dieu/Corpus Domini\",\"variable_date\":\"easter\",\"offset\":60,\"only_states\":[\"Aargau\",\"Appenzell Innerrhoden\",\"Freiburg\",\"Jura\",\"Luzern\",\"Neuenburg\",\"Nidwalden\",\"Obwalden\",\"Schwyz\",\"Solothurn\",\"Tessin\",\"Uri\",\"Wallis\",\"Zug\"]},{\"name\":\"Fest der Unabhängigkeit/Plébiscite jurassien\",\"fixed_date\":[6,23],\"only_states\":[\"Jura\"]},{\"name\":\"Peter und Paul/Saint Pierre et Paul/Santi Pietro e Paolo\",\"fixed_date\":[6,29],\"only_states\":[\"Tessin\"]},{\"name\":\"Bundesfeiertag/Fête nationale/Giorno festivo federale\",\"fixed_date\":[8,1]},{\"name\":\"Mariä Himmelfahrt/Assomption/Assunzione\",\"fixed_date\":[8,15],\"only_states\":[\"Aargau\",\"Appenzell Innerrhoden\",\"Freiburg\",\"Jura\",\"Luzern\",\"Nidwalden\",\"Obwalden\",\"Schwyz\",\"Solothurn\",\"Tessin\",\"Uri\",\"Wallis\",\"Zug\"]},{\"name\":\"Eidg. Dank-, Buss- und Bettag/Jeûne fédéral/Digiuno federale\",\"variable_date\":\"firstSeptemberSunday\",\"offset\":14,\"only_states\":[\"Aargau\",\"Appenzell Ausserrhoden\",\"Appenzell Innerrhoden\",\"Basel-Landschaft\",\"Basel-Stadt\",\"Bern\",\"Freiburg\",\"Graubünden\",\"Jura\",\"Luzern\",\"Neuenburg\",\"Nidwalden\",\"Obwalden\",\"Schaffhausen\",\"Schwyz\",\"Solothurn\",\"St. Gallen\",\"Tessin\",\"Thurgau\",\"Uri\",\"Waadt\",\"Wallis\",\"Zug\",\"Zürich\"]},{\"name\":\"Mauritiustag\",\"fixed_date\":[9,22],\"only_states\":[\"Appenzell Innerrhoden\"]},{\"name\":\"Bruderklausenfest/Saint-Nicholas-de-Flüe\",\"fixed_date\":[9,25],\"only_states\":[\"Obwalden\"]},{\"name\":\"Allerheiligen/Toussaint/Ognissanti\",\"fixed_date\":[11,1],\"only_states\":[\"Aargau\",\"Appenzell Innerrhoden\",\"Freiburg\",\"Glarus\",\"Jura\",\"Luzern\",\"Nidwalden\",\"Obwalden\",\"Schwyz\",\"Solothurn\",\"St. Gallen\",\"Tessin\",\"Uri\",\"Wallis\",\"Zug\"]},{\"name\":\"Mariä Empfängnis/Immaculée Conception/Immacolata Concezione\",\"fixed_date\":[12,8],\"only_states\":[\"Aargau\",\"Freiburg\",\"Luzern\",\"Nidwalden\",\"Obwalden\",\"Schwyz\",\"Tessin\",\"Uri\",\"Wallis\",\"Zug\"]},{\"name\":\"Heiliger Abend/Veille de Noël\",\"fixed_date\":[12,24],\"only_states\":[\"Glarus\"]},{\"name\":\"Weihnachtstag/Noël/Natale\",\"fixed_date\":[12,25]},{\"name\":\"Stephanstag/Saint-Etienne/Santo Stefano\",\"fixed_date\":[12,26],\"only_states\":[\"Aargau\",\"Appenzell Innerrhoden\",\"Basel-Landschaft\",\"Basel-Stadt\",\"Bern\",\"Freiburg\",\"Genf\",\"Glarus\",\"Graubünden\",\"Luzern\",\"Neuenburg\",\"Nidwalden\",\"Obwalden\",\"Schaffhausen\",\"Schwyz\",\"Solothurn\",\"St. Gallen\",\"Tessin\",\"Thurgau\",\"Wallis\",\"Zug\",\"Zürich\"]},{\"name\":\"Silvester/Saint-Sylvestre/Ultimo dell’anno\",\"fixed_date\":[12,31],\"only_states\":[\"Glarus\"]},{\"name\":\"Wiederherstellung der Republik/Restauration de la République\",\"fixed_date\":[12,31],\"only_states\":[\"Genf\"]}],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Switzerland&zoom=18&addressdetails=1&limit=1&accept-language=de,fr,it,rm\",\n \"Aargau\": {\n \"_state_code\": \"ag\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Schweiz&state=Aargau&zoom=18&addressdetails=1&limit=1&accept-language=de,fr,it,rm\",\n SH: [\n {\n name: \"Winterferien\",\n 2019: [12,23,1,3],\n 2020: [12,21,12,31],\n 2021: [12,24,1,7],\n 2022: [12,27,1,6],\n 2023: [12,27,1,5],\n 2024: [12,23,1,3],\n 2025: [12,22,1,2],\n 2026: [12,21,12,31],\n 2027: [12,24,1,7],\n 2028: [12,27,1,5],\n 2029: [12,24,1,4],\n 2030: [12,23,1,3],\n 2031: [12,22,12,31],\n 2032: [12,24,1,7],\n 2033: [12,27,1,6],\n 2034: [12,27,1,5],\n },\n {\n name: \"Sommerferien\",\n 2020: [7,20,8,7],\n 2021: [7,19,8,6],\n 2022: [7,18,8,5],\n 2023: [7,24,8,11],\n 2024: [7,22,8,9],\n 2025: [7,21,8,8],\n 2026: [7,20,8,7],\n 2027: [7,19,8,6],\n 2028: [7,24,8,11],\n 2029: [7,23,8,10],\n 2030: [7,22,8,9],\n 2031: [7,21,8,8],\n 2032: [7,19,8,6],\n 2033: [7,18,8,5],\n 2034: [7,24,8,11],\n 2035: [7,23,8,10],\n },\n {\n name: \"Herbstferien\",\n 2020: [9,28,10,9],\n 2021: [10,4,10,15],\n 2022: [10,3,10,14],\n 2023: [10,2,10,13],\n 2024: [9,30,10,11],\n 2025: [9,29,10,10],\n 2026: [9,28,10,9],\n 2027: [10,4,10,15],\n 2028: [10,2,10,13],\n 2029: [10,1,10,12],\n 2030: [9,30,10,11],\n 2031: [9,29,10,10],\n 2032: [9,27,10,8],\n 2033: [10,3,10,14],\n 2034: [10,2,10,13],\n },\n {\n name: \"Frühlingsferien\",\n 2020: [4,6,4,17],\n 2021: [4,12,4,23],\n 2022: [4,11,4,21],\n 2023: [4,11,4,21],\n 2024: [4,8,4,19],\n 2025: [4,7,4,18],\n 2026: [4,7,4,17],\n 2027: [4,12,4,23],\n 2028: [4,10,4,21],\n 2029: [4,9,4,20],\n 2030: [4,6,4,18],\n 2031: [4,7,4,18],\n 2032: [4,5,4,16],\n 2033: [4,11,4,22],\n 2034: [4,11,4,21],\n 2035: [4,9,4,20],\n },\n ]\n },\n \"Albula\": {\n \"_state_code\": \"gr-ab\",\n SH: [\n {\n name: \"Herbstferien\",\n 2020: [10,10,10,25],\n 2021: [10,9,10,24],\n 2022: [10,8,10,23],\n 2023: [10,7,10,22],\n 2024: [10,5,10,20],\n 2025: [10,6,10,17],\n 2026: [10,10,10,25],\n 2027: [10,9,10,24],\n 2028: [10,7,10,22],\n 2029: [10,6,10,21],\n },\n {\n name: \"Weihnachtsferien\",\n 2019: [12,21,1,5],\n 2020: [12,23,1,5],\n 2021: [12,23,1,5],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,5],\n 2025: [12,22,1,2],\n 2026: [12,23,1,5],\n 2027: [12,23,1,5],\n 2028: [12,23,1,7],\n 2029: [12,22,1,6],\n },\n {\n name: \"Schulbeginn\",\n 2020: [8,17,8,17],\n 2021: [8,16,8,16],\n 2022: [8,15,8,15],\n 2023: [8,14,8,14],\n 2024: [8,12,8,12],\n 2025: [8,11,8,11],\n 2026: [8,17,8,17],\n 2027: [8,16,8,16],\n 2028: [8,14,8,14],\n 2029: [8,13,8,13],\n },\n ]\n },\n \"Appenzell\": {\n \"_state_code\": \"ai-ap\",\n SH: [\n {\n name: \"Sommerferien\",\n 2020: [7,4,8,16],\n 2021: [7,3,8,15],\n 2022: [7,2,8,15],\n 2023: [7,1,8,13],\n 2024: [6,29,8,11],\n 2025: [7,5,8,17],\n 2026: [7,4,8,16],\n 2027: [7,3,8,15],\n 2028: [7,1,8,13],\n },\n {\n name: \"Herbstferien\",\n 2020: [10,3,10,18],\n 2021: [10,9,10,24],\n 2022: [10,8,10,23],\n 2023: [10,7,10,22],\n 2024: [10,5,10,20],\n 2025: [10,4,10,19],\n 2026: [10,3,10,18],\n 2027: [10,2,10,17],\n },\n {\n name: \"Sportferien\",\n 2020: [2,21,3,1],\n 2021: [2,12,2,21],\n 2022: [2,25,3,6],\n 2023: [2,17,2,26],\n 2024: [2,9,2,18],\n 2025: [2,22,2,28],\n 2026: [2,13,2,22],\n 2027: [2,5,2,14],\n },\n ]\n },\n \"Appenzell Ausserrhoden\": {\n \"_state_code\": \"ar\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Schweiz&state=Appenzell+Ausserrhoden&zoom=18&addressdetails=1&limit=1&accept-language=de,fr,it,rm\",\n SH: [\n {\n name: \"Sommerferien\",\n 2020: [7,6,8,7],\n 2021: [7,12,8,15],\n 2022: [7,11,8,12],\n 2023: [7,10,8,11],\n 2024: [7,8,8,9],\n 2025: [7,7,8,8],\n 2026: [7,6,8,7],\n 2027: [7,12,8,13],\n 2028: [7,10,8,11],\n },\n {\n name: \"Herbstferien\",\n 2020: [10,5,10,16],\n 2021: [10,11,10,24],\n 2022: [10,20,10,21],\n 2023: [10,9,10,20],\n 2024: [10,7,10,18],\n 2025: [10,6,10,17],\n 2026: [10,5,10,16],\n 2027: [10,11,10,22],\n },\n {\n name: \"Weihnachtsferien\",\n 2020: [12,21,1,1],\n 2021: [12,26,12,31],\n 2022: [12,26,1,6],\n 2023: [12,25,1,5],\n 2024: [12,23,1,3],\n 2025: [12,22,1,2],\n 2026: [12,21,1,1],\n 2027: [12,20,12,31],\n },\n {\n name: \"Frühlingsferien\",\n 2020: [4,6,4,17],\n 2021: [4,12,4,23],\n 2022: [4,11,4,22],\n 2023: [4,10,4,21],\n 2024: [4,8,4,19],\n 2025: [4,7,4,18],\n 2026: [4,3,4,17],\n 2027: [4,12,4,23],\n 2028: [4,10,4,21],\n },\n ]\n },\n \"Appenzell Innerrhoden\": {\n \"_state_code\": \"ai\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Schweiz&state=Appenzell+Innerrhoden&zoom=18&addressdetails=1&limit=1&accept-language=de,fr,it,rm\",\n SH: [\n {\n name: \"Weihnachtsferien\",\n 2020: [12,19,1,3],\n 2021: [12,18,1,2],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,5],\n 2025: [12,20,1,4],\n 2026: [12,19,1,3],\n 2027: [12,18,1,2],\n },\n {\n name: \"Frühlingsferien\",\n 2020: [4,4,4,19],\n 2021: [4,10,4,25],\n 2022: [4,9,4,24],\n 2023: [4,7,4,23],\n 2024: [4,6,4,21],\n 2025: [4,5,4,20],\n 2026: [4,3,4,19],\n 2027: [4,10,4,25],\n 2028: [4,8,4,23],\n },\n ]\n },\n \"Basel-Landschaft\": {\n \"_state_code\": \"bl\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Schweiz&state=Basel-Landschaft&zoom=18&addressdetails=1&limit=1&accept-language=de,fr,it,rm\",\n SH: [\n {\n name: \"Sommerferien\",\n 2020: [6,27,8,9],\n 2021: [7,3,8,15],\n 2022: [7,2,8,14],\n 2023: [7,2,8,13],\n 2024: [6,29,8,11],\n 2025: [6,28,8,10],\n 2026: [6,27,8,9],\n 2027: [7,3,8,15],\n 2028: [7,1,8,13],\n 2029: [6,30,8,12],\n 2030: [6,29,8,11],\n 2031: [6,28,8,10],\n 2032: [6,26,8,8],\n },\n {\n name: \"Herbstferien\",\n 2020: [9,26,10,9],\n 2021: [10,2,10,17],\n 2022: [10,2,10,16],\n 2023: [9,30,10,15],\n 2024: [9,28,10,13],\n 2025: [9,27,10,12],\n 2026: [9,26,10,11],\n 2027: [10,2,10,17],\n 2028: [9,30,10,15],\n 2029: [9,29,10,14],\n 2030: [9,28,10,13],\n 2031: [9,27,10,12],\n },\n {\n name: \"Weihnachtsferien\",\n 2019: [12,21,1,5],\n 2020: [12,19,1,3],\n 2021: [12,18,1,2],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,5],\n 2025: [12,20,1,4],\n 2026: [12,19,1,3],\n 2027: [12,18,1,2],\n 2028: [12,23,1,7],\n 2029: [12,22,1,6],\n 2030: [12,21,1,5],\n 2031: [12,20,1,4],\n },\n {\n name: \"Fasnachtsferien\",\n 2020: [2,22,3,8],\n 2021: [2,13,2,28],\n 2022: [2,26,3,13],\n 2023: [2,18,3,5],\n 2024: [2,10,2,25],\n 2025: [3,1,3,16],\n 2026: [2,14,3,1],\n 2027: [2,6,2,21],\n 2028: [2,26,3,12],\n 2029: [2,10,2,25],\n 2030: [3,2,3,17],\n 2031: [2,22,3,9],\n 2032: [2,7,2,22],\n },\n {\n name: \"Frühlingsferien\",\n 2020: [4,4,4,19],\n 2021: [3,27,4,11],\n 2022: [4,9,4,24],\n 2023: [4,1,4,16],\n 2024: [3,23,4,7],\n 2025: [4,12,4,27],\n 2026: [3,28,4,12],\n 2027: [3,20,4,4],\n 2028: [4,8,4,23],\n 2029: [3,24,4,8],\n 2030: [4,13,4,28],\n 2031: [4,5,4,20],\n 2032: [3,20,4,4],\n },\n {\n name: \"Auffahrtsbrücke\",\n 2020: [5,22,5,22],\n 2021: [5,14,5,14],\n 2022: [5,27,5,27],\n 2023: [5,19,5,19],\n 2024: [5,10,5,10],\n 2025: [5,30,5,30],\n 2026: [5,25,5,25],\n 2027: [5,7,5,7],\n 2028: [6,26,6,26],\n 2029: [5,11,5,11],\n 2030: [5,31,5,31],\n 2031: [5,23,5,23],\n 2032: [5,7,5,7],\n },\n ]\n },\n \"Basel-Stadt\": {\n \"_state_code\": \"bs\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Schweiz&state=Basel-Stadt&zoom=18&addressdetails=1&limit=1&accept-language=de,fr,it,rm\",\n SH: [\n {\n name: \"Sommerferien\",\n 2020: [6,27,8,9],\n 2021: [7,3,8,15],\n 2022: [7,2,8,14],\n 2023: [7,1,8,13],\n 2024: [6,29,8,11],\n 2025: [6,28,8,10],\n 2026: [6,27,8,9],\n 2027: [7,3,8,15],\n 2028: [7,1,8,13],\n 2029: [6,30,8,12],\n 2030: [6,29,8,11],\n 2031: [6,28,8,10],\n 2032: [6,26,8,8],\n },\n {\n name: \"Herbstferien\",\n 2020: [9,26,10,11],\n 2021: [10,2,10,17],\n 2022: [10,1,10,16],\n 2023: [9,30,10,15],\n 2024: [9,28,10,13],\n 2025: [9,27,10,12],\n 2026: [9,26,10,11],\n 2027: [10,2,10,17],\n 2028: [9,30,10,15],\n 2029: [9,29,10,14],\n 2030: [9,28,10,13],\n 2031: [9,27,10,12],\n },\n {\n name: \"Weihnachtsferien\",\n 2019: [12,21,1,5],\n 2020: [12,19,1,3],\n 2021: [12,18,1,2],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,5],\n 2025: [12,20,1,4],\n 2026: [12,19,1,3],\n 2027: [12,18,1,2],\n 2028: [12,23,1,7],\n 2029: [12,22,1,6],\n 2030: [12,21,1,5],\n 2031: [12,20,1,4],\n },\n {\n name: \"Fasnachtsferien\",\n 2020: [2,22,3,8],\n 2021: [2,13,2,28],\n 2022: [2,26,3,13],\n 2023: [2,18,3,5],\n 2024: [2,10,2,25],\n 2025: [3,1,3,16],\n 2026: [2,14,3,1],\n 2027: [2,6,2,21],\n 2028: [2,16,3,12],\n 2029: [2,10,2,25],\n 2030: [3,2,3,17],\n 2031: [2,22,3,9],\n 2032: [2,7,2,22],\n },\n {\n name: \"Frühlingsferien\",\n 2020: [4,4,4,19],\n 2021: [3,27,4,11],\n 2022: [4,9,4,24],\n 2023: [4,1,4,16],\n 2024: [3,23,4,7],\n 2025: [4,12,4,27],\n 2026: [3,28,4,12],\n 2027: [3,20,4,4],\n 2028: [4,8,4,23],\n 2029: [3,24,4,8],\n 2030: [4,13,4,28],\n 2031: [4,5,4,20],\n 2032: [3,20,4,4],\n },\n {\n name: \"Auffahrtsbrücke\",\n 2020: [5,22,5,22],\n 2021: [5,14,5,14],\n 2022: [5,27,5,27],\n 2023: [5,19,5,19],\n 2024: [5,10,5,10],\n 2025: [5,30,5,30],\n 2026: [5,25,5,25],\n 2027: [5,7,5,7],\n 2028: [6,26,6,26],\n 2029: [5,11,5,11],\n 2030: [5,31,5,31],\n 2031: [5,23,5,23],\n 2032: [5,7,5,7],\n },\n ]\n },\n \"Bern\": {\n \"_state_code\": \"be\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Schweiz&state=Bern&zoom=18&addressdetails=1&limit=1&accept-language=de,fr,it,rm\",\n SH: [\n {\n name: \"Winterferien\",\n 2020: [12,24,1,10],\n 2021: [12,24,1,9],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,5],\n 2025: [12,20,1,4],\n 2026: [12,25,1,10],\n 2027: [12,25,1,9],\n },\n {\n name: \"Sommerferien\",\n 2020: [7,4,8,9],\n 2021: [7,3,8,15],\n 2022: [7,9,8,14],\n 2023: [7,8,8,13],\n 2024: [7,6,8,11],\n 2025: [7,5,8,10],\n 2026: [7,4,8,9],\n 2027: [7,3,8,15],\n },\n {\n name: \"Herbstferien\",\n 2020: [9,19,10,11],\n 2021: [9,25,10,17],\n 2022: [9,24,10,16],\n 2023: [9,23,10,15],\n 2024: [9,21,10,13],\n 2025: [9,20,10,12],\n 2026: [9,19,10,11],\n 2027: [9,25,10,17],\n },\n {\n name: \"Februarwoche\",\n 2020: [2,1,2,9],\n 2021: [2,6,2,14],\n 2022: [2,5,2,13],\n 2023: [2,4,2,12],\n 2024: [2,3,2,11],\n 2025: [2,1,2,9],\n 2026: [1,31,2,8],\n 2027: [2,6,2,14],\n },\n {\n name: \"Frühlingsferien\",\n 2020: [4,4,4,19],\n 2021: [4,10,4,25],\n 2022: [4,9,4,24],\n 2023: [4,7,4,23],\n 2024: [4,6,4,21],\n 2025: [4,5,4,21],\n 2026: [4,3,4,19],\n 2027: [4,10,4,25],\n },\n {\n name: \"Vacances de printemps\",\n 2020: [4,10,4,26],\n 2021: [4,2,4,18],\n 2022: [4,11,4,22],\n 2023: [4,7,4,21],\n 2024: [3,29,4,12],\n 2025: [4,14,4,25],\n 2026: [4,3,4,17],\n 2027: [3,26,4,9],\n },\n {\n name: \"Vacances d'été\",\n 2020: [7,4,8,16],\n 2021: [7,3,8,15],\n 2022: [7,11,8,19],\n 2023: [7,10,8,18],\n 2024: [7,8,8,16],\n 2025: [7,7,8,15],\n 2026: [7,6,8,14],\n 2027: [7,5,8,13],\n },\n {\n name: \"Vacances d'automne\",\n 2020: [10,3,10,18],\n 2021: [10,11,10,22],\n 2022: [10,10,10,21],\n 2023: [10,9,10,20],\n 2024: [10,7,10,18],\n 2025: [10,6,10,27],\n 2026: [10,5,10,16],\n 2027: [10,4,10,15],\n },\n {\n name: \"Vacances d'hiver\",\n 2020: [12,25,1,10],\n 2021: [12,27,1,7],\n 2022: [12,26,1,6],\n 2023: [12,25,1,5],\n 2024: [12,23,1,3],\n 2025: [12,22,1,2],\n 2026: [12,25,1,8],\n 2027: [12,27,1,7],\n },\n ]\n },\n \"Bernina\": {\n \"_state_code\": \"gr-bn\",\n SH: [\n {\n name: \"Herbstferien\",\n 2020: [10,10,10,25],\n 2021: [10,9,10,24],\n 2022: [10,8,10,23],\n 2023: [10,7,10,22],\n 2024: [10,5,10,20],\n 2025: [10,6,10,17],\n 2026: [10,10,10,25],\n 2027: [10,9,10,24],\n 2028: [10,7,10,22],\n 2029: [10,6,10,21],\n },\n {\n name: \"Weihnachtsferien\",\n 2019: [12,21,1,5],\n 2020: [12,23,1,5],\n 2021: [12,23,1,5],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,5],\n 2025: [12,22,1,2],\n 2026: [12,23,1,5],\n 2027: [12,23,1,5],\n 2028: [12,23,1,7],\n 2029: [12,22,1,6],\n },\n {\n name: \"Schulbeginn\",\n 2020: [8,17,8,17],\n 2021: [8,16,8,16],\n 2022: [8,15,8,15],\n 2023: [8,14,8,14],\n 2024: [8,12,8,12],\n 2025: [8,11,8,11],\n 2026: [8,17,8,17],\n 2027: [8,16,8,16],\n 2028: [8,14,8,14],\n 2029: [8,13,8,13],\n },\n ]\n },\n \"Engiadina Bassa/Val Müstair\": {\n \"_state_code\": \"gr-eb\",\n SH: [\n {\n name: \"Herbstferien\",\n 2020: [10,10,10,25],\n 2021: [10,9,10,24],\n 2022: [10,8,10,23],\n 2023: [10,7,10,22],\n 2024: [10,5,10,20],\n 2025: [10,6,10,17],\n 2026: [10,10,10,25],\n 2027: [10,9,10,24],\n 2028: [10,7,10,22],\n 2029: [10,6,10,21],\n },\n {\n name: \"Weihnachtsferien\",\n 2019: [12,21,1,5],\n 2020: [12,23,1,5],\n 2021: [12,23,1,5],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,5],\n 2025: [12,22,1,2],\n 2026: [12,23,1,5],\n 2027: [12,23,1,5],\n 2028: [12,23,1,7],\n 2029: [12,22,1,6],\n },\n {\n name: \"Schulbeginn\",\n 2020: [8,17,8,17],\n 2021: [8,16,8,16],\n 2022: [8,15,8,15],\n 2023: [8,14,8,14],\n 2024: [8,12,8,12],\n 2025: [8,11,8,11],\n 2026: [8,17,8,17],\n 2027: [8,16,8,16],\n 2028: [8,14,8,14],\n 2029: [8,13,8,13],\n },\n ]\n },\n \"Freiburg\": {\n \"_state_code\": \"fr\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Schweiz&state=Freiburg&zoom=18&addressdetails=1&limit=1&accept-language=de,fr,it,rm\"\n },\n \"Fribourg\": {\n \"_state_code\": \"fr\",\n SH: [\n {\n name: \"Sport\",\n 2020: [2,22,3,1],\n 2021: [2,13,2,21],\n 2022: [2,26,3,6],\n 2023: [2,18,2,26],\n 2024: [2,10,2,18],\n 2025: [3,1,3,9],\n 2026: [2,14,2,22],\n },\n {\n name: \"Frühling\",\n 2020: [4,4,4,19],\n 2021: [4,2,4,18],\n 2022: [4,15,5,1],\n 2023: [4,7,4,23],\n 2024: [3,29,4,14],\n 2025: [4,18,5,4],\n 2026: [4,3,4,19],\n },\n {\n name: \"Sommer\",\n 2020: [7,4,8,26],\n 2021: [7,10,8,25],\n 2022: [7,9,8,24],\n 2023: [7,8,8,23],\n 2024: [7,6,8,21],\n 2025: [7,4,8,27],\n 2026: [7,11,8,26],\n },\n {\n name: \"Herbst\",\n 2020: [10,17,11,1],\n 2021: [10,16,11,1],\n 2022: [10,15,10,30],\n 2023: [10,14,10,29],\n 2024: [10,12,10,27],\n 2025: [10,11,10,26],\n 2026: [10,10,10,25],\n },\n {\n name: \"Winter\",\n 2020: [12,19,1,3],\n 2021: [12,24,1,9],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,5],\n 2025: [12,20,1,2],\n 2026: [12,19,1,3],\n },\n ]\n },\n \"Genève\": {\n \"_state_code\": \"ge\",\n SH: [\n {\n name: \"Vacances de février\",\n 2020: [2,8,2,16],\n 2021: [2,13,2,21],\n 2022: [2,12,2,20],\n 2023: [2,18,2,26],\n 2024: [2,17,2,25],\n 2025: [2,24,2,28],\n 2026: [2,23,2,27],\n 2027: [2,15,2,19],\n 2028: [2,21,2,25],\n 2029: [2,19,2,23],\n 2030: [2,25,3,1],\n },\n {\n name: \"Vacances de Pâques\",\n 2020: [4,9,4,19],\n 2021: [4,1,4,11],\n 2022: [4,14,4,24],\n 2023: [4,7,4,23],\n 2024: [3,29,4,14],\n 2025: [4,18,5,2],\n 2026: [4,3,4,17],\n 2027: [3,26,4,9],\n 2028: [4,13,4,21],\n 2029: [3,29,4,6],\n 2030: [4,18,4,26],\n },\n {\n name: \"Vacances d'été\",\n 2020: [6,27,8,23],\n 2021: [7,3,8,29],\n 2022: [7,2,8,21],\n 2023: [7,1,8,20],\n 2024: [6,29,8,18],\n 2025: [6,30,8,15],\n 2026: [6,29,8,16],\n 2027: [7,5,8,25],\n 2028: [7,3,8,23],\n 2029: [7,2,8,22],\n 2030: [7,1,8,21],\n },\n {\n name: \"Vacances d'automne\",\n 2020: [10,17,10,25],\n 2021: [10,23,10,31],\n 2022: [10,22,10,30],\n 2023: [10,21,10,29],\n 2024: [10,19,10,27],\n 2025: [10,20,10,24],\n 2026: [10,19,10,23],\n 2027: [10,25,10,29],\n 2028: [10,23,10,27],\n 2029: [10,22,10,26],\n },\n {\n name: \"Vacances de Noël et Nouvel An\",\n 2020: [12,24,1,10],\n 2021: [12,24,1,9],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,5],\n 2025: [12,22,1,2],\n 2026: [12,24,1,8],\n 2027: [12,24,1,7],\n 2028: [12,25,1,5],\n 2029: [12,24,1,4],\n },\n {\n name: \"Pont de l'Ascension\",\n 2023: [5,18,5,19],\n 2024: [5,9,5,10],\n 2025: [5,29,5,30],\n 2026: [5,14,5,15],\n 2027: [5,6,5,7],\n 2028: [5,25,5,26],\n 2029: [5,10,5,11],\n 2030: [5,30,5,31],\n },\n ]\n },\n \"Genf\": {\n \"_state_code\": \"ge\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Schweiz&state=Genf&zoom=18&addressdetails=1&limit=1&accept-language=de,fr,it,rm\"\n },\n \"Glarus\": {\n \"_state_code\": \"gl\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Schweiz&state=Glarus&zoom=18&addressdetails=1&limit=1&accept-language=de,fr,it,rm\",\n SH: [\n {\n name: \"Sport\",\n 2020: [1,25,2,2],\n 2021: [1,30,2,7],\n 2022: [1,29,2,6],\n 2023: [1,28,2,5],\n 2024: [1,27,2,4],\n 2025: [1,25,2,2],\n 2026: [1,24,2,1],\n },\n {\n name: \"Frühling\",\n 2020: [4,2,4,19],\n 2021: [4,2,4,18],\n 2022: [4,7,4,24],\n 2023: [4,7,4,23],\n 2024: [3,29,4,14],\n 2025: [4,3,4,20],\n 2026: [4,3,4,19],\n },\n {\n name: \"Sommer\",\n 2020: [6,27,8,9],\n 2021: [7,3,8,15],\n 2022: [7,2,8,14],\n 2023: [7,1,8,13],\n 2024: [6,29,8,11],\n 2025: [6,28,8,10],\n 2026: [6,27,8,9],\n },\n {\n name: \"Herbst\",\n 2020: [10,3,10,18],\n 2021: [10,9,10,24],\n 2022: [10,8,10,23],\n 2023: [10,7,10,22],\n 2024: [10,5,10,20],\n 2025: [10,4,10,19],\n 2026: [10,3,10,18],\n },\n {\n name: \"Winter\",\n 2020: [12,24,1,10],\n 2021: [12,24,1,9],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,5],\n 2025: [12,20,1,4],\n 2026: [12,24,1,10],\n },\n ]\n },\n \"Gonten\": {\n \"_state_code\": \"ai-go\",\n SH: [\n {\n name: \"Sommerferien\",\n 2020: [7,4,8,16],\n 2021: [7,3,8,15],\n 2022: [7,2,8,15],\n 2023: [7,1,8,13],\n 2024: [6,29,8,11],\n 2025: [7,5,8,17],\n 2026: [7,4,8,16],\n 2027: [7,3,8,15],\n 2028: [7,1,8,13],\n },\n {\n name: \"Herbstferien\",\n 2020: [10,3,10,18],\n 2021: [10,9,10,24],\n 2022: [10,8,10,23],\n 2023: [10,7,10,22],\n 2024: [10,5,10,20],\n 2025: [10,4,10,19],\n 2026: [10,3,10,18],\n 2027: [10,2,10,17],\n },\n {\n name: \"Sportferien\",\n 2020: [2,21,3,1],\n 2021: [2,12,2,21],\n 2022: [2,25,3,6],\n 2023: [2,17,2,26],\n 2024: [2,9,2,18],\n 2025: [2,22,2,28],\n 2026: [2,13,2,22],\n 2027: [2,5,2,14],\n },\n ]\n },\n \"Graubünden\": {\n \"_state_code\": \"gr\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Schweiz&state=Graub%C3%BCnden&zoom=18&addressdetails=1&limit=1&accept-language=de,fr,it,rm\"\n },\n \"Imboden\": {\n \"_state_code\": \"gr-ib\",\n SH: [\n {\n name: \"Herbstferien\",\n 2020: [10,10,10,25],\n 2021: [10,9,10,24],\n 2022: [10,8,10,23],\n 2023: [10,7,10,22],\n 2024: [10,5,10,20],\n 2025: [10,6,10,17],\n 2026: [10,10,10,25],\n 2027: [10,9,10,24],\n 2028: [10,7,10,22],\n 2029: [10,6,10,21],\n },\n {\n name: \"Weihnachtsferien\",\n 2019: [12,21,1,5],\n 2020: [12,23,1,5],\n 2021: [12,23,1,5],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,5],\n 2025: [12,22,1,2],\n 2026: [12,23,1,5],\n 2027: [12,23,1,5],\n 2028: [12,23,1,7],\n 2029: [12,22,1,6],\n },\n {\n name: \"Schulbeginn\",\n 2020: [8,17,8,17],\n 2021: [8,16,8,16],\n 2022: [8,15,8,15],\n 2023: [8,14,8,14],\n 2024: [8,12,8,12],\n 2025: [8,11,8,11],\n 2026: [8,17,8,17],\n 2027: [8,16,8,16],\n 2028: [8,14,8,14],\n 2029: [8,13,8,13],\n },\n ]\n },\n \"Jura\": {\n \"_state_code\": \"ju\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Schweiz&state=Jura&zoom=18&addressdetails=1&limit=1&accept-language=de,fr,it,rm\",\n SH: [\n {\n name: \"Vacances de Noël\",\n 2019: [12,23,1,3],\n 2020: [12,24,1,8],\n 2021: [12,24,1,7],\n 2022: [12,26,1,6],\n 2023: [12,25,1,5],\n 2024: [12,23,1,3],\n 2025: [12,22,1,2],\n 2026: [12,24,1,8],\n 2027: [12,24,1,7],\n },\n {\n name: \"Semaine de relâche hivernale\",\n 2020: [2,17,2,21],\n 2021: [2,22,2,26],\n 2022: [2,21,2,25],\n 2023: [2,20,2,24],\n 2024: [2,19,2,23],\n 2025: [2,24,2,28],\n 2026: [2,16,2,20],\n 2027: [2,15,2,19],\n 2028: [2,21,2,25],\n },\n {\n name: \"Vacances de Pâques\",\n 2020: [4,10,4,24],\n 2021: [4,2,4,16],\n 2022: [4,11,4,22],\n 2023: [4,7,4,21],\n 2024: [3,29,4,12],\n 2025: [3,18,5,2],\n 2026: [4,3,4,17],\n 2027: [3,26,4,9],\n 2028: [4,14,4,28],\n },\n {\n name: \"Ascension\",\n 2020: [4,21,4,22],\n 2021: [5,13,5,14],\n 2022: [5,26,5,27],\n 2023: [5,18,5,19],\n 2024: [5,9,5,10],\n 2025: [5,29,5,30],\n 2026: [5,14,5,15],\n 2027: [5,6,5,7],\n 2028: [5,25,5,26],\n },\n {\n name: \"Vacances d'été\",\n 2020: [7,6,8,14],\n 2021: [7,5,8,13],\n 2022: [7,4,8,12],\n 2023: [7,3,8,18],\n 2024: [7,8,8,16],\n 2025: [7,7,8,15],\n 2026: [7,6,8,14],\n 2027: [7,5,8,13],\n 2028: [7,3,8,18],\n },\n {\n name: \"Vacances d'automne\",\n 2020: [10,12,10,23],\n 2021: [10,11,10,22],\n 2022: [10,10,10,21],\n 2023: [10,16,10,27],\n 2024: [10,14,10,25],\n 2025: [10,6,10,17],\n 2026: [10,5,10,16],\n 2027: [10,11,10,22],\n },\n ]\n },\n \"Landquart\": {\n \"_state_code\": \"gr-lq\",\n SH: [\n {\n name: \"Herbstferien\",\n 2020: [10,10,10,25],\n 2021: [10,9,10,24],\n 2022: [10,8,10,23],\n 2023: [10,7,10,22],\n 2024: [10,5,10,20],\n 2025: [10,6,10,17],\n 2026: [10,10,10,25],\n 2027: [10,9,10,24],\n 2028: [10,7,10,22],\n 2029: [10,6,10,21],\n },\n {\n name: \"Weihnachtsferien\",\n 2019: [12,21,1,5],\n 2020: [12,23,1,5],\n 2021: [12,23,1,5],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,5],\n 2025: [12,22,1,2],\n 2026: [12,23,1,5],\n 2027: [12,23,1,5],\n 2028: [12,23,1,7],\n 2029: [12,22,1,6],\n },\n {\n name: \"Schulbeginn\",\n 2020: [8,17,8,17],\n 2021: [8,16,8,16],\n 2022: [8,15,8,15],\n 2023: [8,14,8,14],\n 2024: [8,12,8,12],\n 2025: [8,11,8,11],\n 2026: [8,17,8,17],\n 2027: [8,16,8,16],\n 2028: [8,14,8,14],\n 2029: [8,13,8,13],\n },\n ]\n },\n \"Luzern\": {\n \"_state_code\": \"lu\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Schweiz&state=Luzern&zoom=18&addressdetails=1&limit=1&accept-language=de,fr,it,rm\",\n SH: [\n {\n name: \"Sommerferien\",\n 2020: [7,4,8,16],\n 2021: [7,10,8,22],\n 2022: [7,9,8,21],\n 2023: [7,8,8,20],\n 2024: [7,6,8,18],\n 2025: [7,5,8,17],\n 2026: [7,4,8,16],\n 2027: [7,3,8,15],\n 2028: [7,8,8,20],\n },\n {\n name: \"Herbstferien\",\n 2020: [9,26,10,11],\n 2021: [10,2,10,17],\n 2022: [10,1,10,16],\n 2023: [9,30,10,15],\n 2024: [9,28,10,13],\n 2025: [9,27,10,12],\n 2026: [9,26,10,11],\n 2027: [9,25,10,10],\n },\n {\n name: \"Weihnachtsferien\",\n 2020: [12,19,1,3],\n 2021: [12,18,1,2],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,5],\n 2025: [12,20,1,4],\n 2026: [12,19,1,3],\n 2027: [12,18,1,2],\n },\n {\n name: \"Fasnachtsferien\",\n 2020: [2,15,3,1],\n 2021: [2,6,2,21],\n 2022: [2,19,3,6],\n 2023: [2,11,2,26],\n 2024: [2,3,2,18],\n 2025: [2,22,3,9],\n 2026: [2,7,2,22],\n 2027: [1,30,2,14],\n 2028: [2,19,3,5],\n },\n {\n name: \"Frühlingsferien\",\n 2020: [4,10,4,26],\n 2021: [4,2,4,18],\n 2022: [4,15,5,1],\n 2023: [4,7,4,23],\n 2024: [3,29,4,14],\n 2025: [4,18,5,4],\n 2026: [4,3,4,19],\n 2027: [3,26,4,11],\n 2028: [4,14,4,30],\n },\n ]\n },\n \"Maloja\": {\n \"_state_code\": \"gr-ml\",\n SH: [\n {\n name: \"Herbstferien\",\n 2020: [10,10,10,25],\n 2021: [10,9,10,24],\n 2022: [10,8,10,23],\n 2023: [10,7,10,22],\n 2024: [10,5,10,20],\n 2025: [10,6,10,17],\n 2026: [10,10,10,25],\n 2027: [10,9,10,24],\n 2028: [10,7,10,22],\n 2029: [10,6,10,21],\n },\n {\n name: \"Weihnachtsferien\",\n 2019: [12,21,1,5],\n 2020: [12,23,1,5],\n 2021: [12,23,1,5],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,5],\n 2025: [12,22,1,2],\n 2026: [12,23,1,5],\n 2027: [12,23,1,5],\n 2028: [12,23,1,7],\n 2029: [12,22,1,6],\n },\n {\n name: \"Schulbeginn\",\n 2020: [8,17,8,17],\n 2021: [8,16,8,16],\n 2022: [8,15,8,15],\n 2023: [8,14,8,14],\n 2024: [8,12,8,12],\n 2025: [8,11,8,11],\n 2026: [8,17,8,17],\n 2027: [8,16,8,16],\n 2028: [8,14,8,14],\n 2029: [8,13,8,13],\n },\n ]\n },\n \"Moesa\": {\n \"_state_code\": \"gr-ms\",\n SH: [\n {\n name: \"Herbstferien\",\n 2023: [10,28,11,5],\n 2024: [10,26,11,3],\n 2025: [11,1,11,9],\n 2026: [10,31,11,8],\n },\n {\n name: \"Weihnachtsferien\",\n 2023: [12,23,1,7],\n 2024: [12,21,1,6],\n 2025: [12,24,1,6],\n 2026: [12,24,1,6],\n },\n {\n name: \"Schulbeginn\",\n 2023: [8,21,8,21],\n 2024: [8,26,8,26],\n 2025: [8,25,8,25],\n 2026: [8,24,8,24],\n },\n ]\n },\n \"Neuchâtel\": {\n \"_state_code\": \"ne\",\n SH: [\n {\n name: \"Sport\",\n 2020: [2,22,3,1],\n 2021: [2,27,3,7],\n 2022: [2,26,3,6],\n 2023: [2,25,3,5],\n 2024: [2,24,3,3],\n 2025: [2,22,3,2],\n 2026: [2,21,3,1],\n },\n {\n name: \"Frühling\",\n 2020: [4,10,4,26],\n 2021: [4,2,4,18],\n 2022: [4,9,4,24],\n 2023: [4,7,4,23],\n 2024: [3,29,4,14],\n 2025: [4,12,4,27],\n 2026: [4,3,4,19],\n },\n {\n name: \"Sommer\",\n 2020: [7,4,8,16],\n 2021: [7,3,8,15],\n 2022: [7,2,8,14],\n 2023: [7,1,8,13],\n 2024: [7,6,8,18],\n 2025: [7,5,8,17],\n 2026: [7,4,8,16],\n },\n {\n name: \"Herbst\",\n 2020: [10,3,10,18],\n 2021: [10,2,10,17],\n 2022: [10,1,10,16],\n 2023: [9,30,10,15],\n 2024: [10,5,10,20],\n 2025: [10,4,10,19],\n 2026: [10,3,10,18],\n },\n {\n name: \"Winter\",\n 2020: [12,24,1,10],\n 2021: [12,24,1,9],\n 2022: [12,24,1,8],\n 2023: [12,21,1,7],\n 2024: [12,21,1,5],\n 2025: [12,20,1,4],\n 2026: [12,19,1,3],\n },\n ]\n },\n \"Neuenburg\": {\n \"_state_code\": \"ne\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Schweiz&state=Neuenburg&zoom=18&addressdetails=1&limit=1&accept-language=de,fr,it,rm\"\n },\n \"Nidwalden\": {\n \"_state_code\": \"nw\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Schweiz&state=Nidwalden&zoom=18&addressdetails=1&limit=1&accept-language=de,fr,it,rm\",\n SH: [\n {\n name: \"Sport\",\n 2020: [2,15,3,1],\n 2021: [2,6,2,21],\n 2022: [2,19,3,6],\n 2023: [2,11,2,26],\n 2024: [2,3,2,18],\n 2025: [2,22,3,9],\n 2026: [2,7,2,22],\n },\n {\n name: \"Frühling\",\n 2020: [4,10,4,26],\n 2021: [4,2,4,18],\n 2022: [4,15,5,1],\n 2023: [4,7,4,23],\n 2024: [3,29,4,14],\n 2025: [4,18,5,4],\n 2026: [4,3,4,19],\n },\n {\n name: \"Sommer\",\n 2020: [7,4,8,23],\n 2021: [7,3,8,22],\n 2022: [7,9,8,28],\n 2023: [7,8,8,27],\n 2024: [7,6,8,25],\n 2025: [7,5,8,17],\n 2026: [7,4,8,16],\n },\n {\n name: \"Herbst\",\n 2020: [9,26,10,11],\n 2021: [9,25,10,10],\n 2022: [10,1,10,16],\n 2023: [9,30,10,15],\n 2024: [9,28,10,13],\n 2025: [9,27,10,12],\n 2026: [9,26,10,11],\n },\n {\n name: \"Winter\",\n 2020: [12,19,1,3],\n 2021: [12,18,1,2],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,5],\n 2025: [12,20,1,4],\n 2026: [12,19,1,3],\n },\n ]\n },\n \"Oberegg\": {\n \"_state_code\": \"ai-ob\",\n SH: [\n {\n name: \"Sommerferien\",\n 2020: [7,4,8,9],\n 2021: [7,10,8,15],\n 2022: [7,9,8,15],\n 2023: [7,8,8,13],\n 2024: [7,6,8,11],\n 2026: [7,4,8,9],\n 2027: [7,10,8,15],\n 2028: [7,8,8,13],\n },\n {\n name: \"Herbstferien\",\n 2020: [9,26,10,18],\n 2021: [10,2,10,24],\n 2022: [10,1,10,23],\n 2023: [9,30,10,22],\n 2024: [9,28,10,20],\n 2025: [10,4,10,19],\n 2026: [9,26,10,18],\n 2027: [10,2,10,24],\n },\n {\n name: \"Sportferien\",\n 2020: [1,25,2,2],\n 2021: [1,30,2,7],\n 2022: [1,29,2,6],\n 2023: [1,28,2,5],\n 2024: [1,27,2,4],\n 2026: [1,24,2,1],\n 2027: [1,30,2,7],\n },\n ]\n },\n \"Obwalden\": {\n \"_state_code\": \"ow\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Schweiz&state=Obwalden&zoom=18&addressdetails=1&limit=1&accept-language=de,fr,it,rm\",\n SH: [\n {\n name: \"Sport\",\n 2020: [2,15,3,1],\n 2021: [2,6,2,21],\n 2022: [2,19,3,6],\n 2023: [2,11,2,26],\n 2024: [2,3,2,18],\n 2025: [2,27,3,9],\n 2026: [2,12,2,22],\n },\n {\n name: \"Frühling\",\n 2020: [4,10,4,26],\n 2021: [4,2,4,18],\n 2022: [4,15,5,1],\n 2023: [4,7,4,23],\n 2024: [3,29,4,14],\n 2025: [4,18,5,4],\n 2026: [4,3,4,19],\n },\n {\n name: \"Sommer\",\n 2020: [7,4,8,16],\n 2021: [7,10,8,22],\n 2022: [7,2,8,15],\n 2023: [7,8,8,20],\n 2024: [7,6,8,18],\n 2025: [7,5,8,17],\n 2026: [7,4,8,16],\n },\n {\n name: \"Herbst\",\n 2020: [9,26,10,11],\n 2021: [10,2,10,24],\n 2022: [10,1,10,16],\n 2023: [9,30,10,15],\n 2024: [9,28,10,13],\n 2025: [10,4,10,26],\n 2026: [10,3,10,25],\n },\n {\n name: \"Winter\",\n 2020: [12,24,1,6],\n 2021: [12,24,1,6],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,5],\n 2025: [12,24,1,6],\n 2026: [12,24,1,6],\n },\n ]\n },\n \"Plessur\": {\n \"_state_code\": \"gr-ps\",\n SH: [\n {\n name: \"Herbstferien\",\n 2020: [10,10,10,25],\n 2021: [10,9,10,24],\n 2022: [10,8,10,23],\n 2023: [10,7,10,22],\n 2024: [10,5,10,20],\n 2025: [10,6,10,17],\n 2026: [10,10,10,25],\n 2027: [10,9,10,24],\n 2028: [10,7,10,22],\n 2029: [10,6,10,21],\n },\n {\n name: \"Weihnachtsferien\",\n 2019: [12,21,1,5],\n 2020: [12,23,1,5],\n 2021: [12,23,1,5],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,5],\n 2025: [12,22,1,2],\n 2026: [12,23,1,5],\n 2027: [12,23,1,5],\n 2028: [12,23,1,7],\n 2029: [12,22,1,6],\n },\n {\n name: \"Schulbeginn\",\n 2020: [8,17,8,17],\n 2021: [8,16,8,16],\n 2022: [8,15,8,15],\n 2023: [8,14,8,14],\n 2024: [8,12,8,12],\n 2025: [8,11,8,11],\n 2026: [8,17,8,17],\n 2027: [8,16,8,16],\n 2028: [8,14,8,14],\n 2029: [8,13,8,13],\n },\n ]\n },\n \"Prättigau / Davos\": {\n \"_state_code\": \"gr-pd\",\n SH: [\n {\n name: \"Herbstferien\",\n 2020: [10,10,10,25],\n 2021: [10,9,10,24],\n 2022: [10,8,10,23],\n 2023: [10,7,10,22],\n 2024: [10,5,10,20],\n 2025: [10,6,10,17],\n 2026: [10,10,10,25],\n 2027: [10,9,10,24],\n 2028: [10,7,10,22],\n 2029: [10,6,10,21],\n },\n {\n name: \"Weihnachtsferien\",\n 2019: [12,21,1,5],\n 2020: [12,23,1,5],\n 2021: [12,23,1,5],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,5],\n 2025: [12,22,1,2],\n 2026: [12,23,1,5],\n 2027: [12,23,1,5],\n 2028: [12,23,1,7],\n 2029: [12,22,1,6],\n },\n {\n name: \"Schulbeginn\",\n 2020: [8,17,8,17],\n 2021: [8,16,8,16],\n 2022: [8,15,8,15],\n 2023: [8,14,8,14],\n 2024: [8,12,8,12],\n 2025: [8,11,8,11],\n 2026: [8,17,8,17],\n 2027: [8,16,8,16],\n 2028: [8,14,8,14],\n 2029: [8,13,8,13],\n },\n ]\n },\n \"Schaffhausen\": {\n \"_state_code\": \"sh\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Schweiz&state=Schaffhausen&zoom=18&addressdetails=1&limit=1&accept-language=de,fr,it,rm\",\n SH: [\n {\n name: \"Sport\",\n 2020: [1,25,2,9],\n 2021: [1,30,2,14],\n 2022: [1,29,2,13],\n 2023: [1,28,2,12],\n 2024: [1,27,2,11],\n 2025: [1,25,2,9],\n 2026: [1,24,2,8],\n },\n {\n name: \"Frühling\",\n 2020: [4,11,4,26],\n 2021: [4,17,5,2],\n 2022: [4,15,5,1],\n 2023: [4,15,5,1],\n 2024: [4,13,4,28],\n 2025: [4,12,4,27],\n 2026: [4,11,4,26],\n },\n {\n name: \"Sommer\",\n 2020: [7,4,8,9],\n 2021: [7,10,8,15],\n 2022: [7,9,8,14],\n 2023: [7,8,8,13],\n 2024: [7,6,8,11],\n 2025: [7,5,8,10],\n 2026: [7,4,8,9],\n },\n {\n name: \"Herbst\",\n 2020: [9,26,10,18],\n 2021: [10,2,10,24],\n 2022: [10,1,10,23],\n 2023: [9,30,10,22],\n 2024: [9,28,10,20],\n 2025: [9,27,10,19],\n 2026: [9,26,10,18],\n },\n {\n name: \"Winter\",\n 2020: [12,24,1,3],\n 2021: [12,24,1,2],\n 2022: [12,24,1,2],\n 2023: [12,23,1,2],\n 2024: [12,24,1,5],\n 2025: [12,24,1,4],\n 2026: [12,24,1,3],\n },\n ]\n },\n \"Schlatt-Haslen\": {\n \"_state_code\": \"ai-sh\",\n SH: [\n {\n name: \"Sommerferien\",\n 2020: [7,4,8,16],\n 2021: [7,3,8,15],\n 2022: [7,2,8,15],\n 2023: [7,1,8,13],\n 2024: [6,29,8,11],\n 2025: [7,5,8,17],\n 2026: [7,4,8,16],\n 2027: [7,3,8,15],\n 2028: [7,1,8,13],\n },\n {\n name: \"Herbstferien\",\n 2020: [10,3,10,18],\n 2021: [10,9,10,24],\n 2022: [10,8,10,23],\n 2023: [10,7,10,22],\n 2024: [10,5,10,20],\n 2025: [10,4,10,19],\n 2026: [10,3,10,18],\n 2027: [10,2,10,17],\n },\n {\n name: \"Sportferien\",\n 2020: [2,21,3,1],\n 2021: [2,12,2,21],\n 2022: [2,25,3,6],\n 2023: [2,17,2,26],\n 2024: [2,9,2,18],\n 2025: [2,22,2,28],\n 2026: [2,13,2,22],\n 2027: [2,5,2,14],\n },\n ]\n },\n \"Schwende-Rüte\": {\n \"_state_code\": \"ai-sr\",\n SH: [\n {\n name: \"Sommerferien\",\n 2020: [7,4,8,16],\n 2021: [7,3,8,15],\n 2022: [7,2,8,15],\n 2023: [7,1,8,13],\n 2024: [6,29,8,11],\n 2025: [7,5,8,17],\n 2026: [7,4,8,16],\n 2027: [7,3,8,15],\n 2028: [7,1,8,13],\n },\n {\n name: \"Herbstferien\",\n 2020: [10,3,10,18],\n 2021: [10,9,10,24],\n 2022: [10,8,10,23],\n 2023: [10,7,10,22],\n 2024: [10,5,10,20],\n 2025: [10,4,10,19],\n 2026: [10,3,10,18],\n 2027: [10,2,10,17],\n },\n {\n name: \"Sportferien\",\n 2020: [2,21,3,1],\n 2021: [2,12,2,21],\n 2022: [2,25,3,6],\n 2023: [2,17,2,26],\n 2024: [2,9,2,18],\n 2025: [2,22,2,28],\n 2026: [2,13,2,22],\n 2027: [2,5,2,14],\n },\n ]\n },\n \"Schwyz\": {\n \"_state_code\": \"sz\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Schweiz&state=Schwyz&zoom=18&addressdetails=1&limit=1&accept-language=de,fr,it,rm\",\n SH: [\n {\n name: \"Sport\",\n 2020: [2,22,3,1],\n 2021: [2,27,3,7],\n 2022: [2,26,3,6],\n 2023: [2,25,3,5],\n 2024: [2,24,3,3],\n 2025: [2,22,3,2],\n 2026: [2,21,3,1],\n },\n {\n name: \"Frühling\",\n 2020: [4,25,5,10],\n 2021: [5,1,5,16],\n 2022: [4,30,5,15],\n 2023: [4,29,5,14],\n 2024: [4,27,5,12],\n 2025: [4,26,5,11],\n 2026: [4,25,5,10],\n },\n {\n name: \"Sommer\",\n 2020: [7,4,8,9],\n 2021: [7,10,8,15],\n 2022: [7,9,8,14],\n 2023: [7,8,8,13],\n 2024: [7,6,8,11],\n 2025: [7,5,8,17],\n 2026: [7,4,8,9],\n },\n {\n name: \"Herbst\",\n 2020: [9,26,10,11],\n 2021: [10,2,10,17],\n 2022: [10,1,10,16],\n 2023: [9,30,10,15],\n 2024: [9,28,10,13],\n 2025: [9,27,10,12],\n 2026: [9,26,10,11],\n },\n {\n name: \"Winter\",\n 2020: [12,24,1,6],\n 2021: [12,24,1,6],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,25,1,6],\n 2025: [12,20,1,4],\n 2026: [12,25,1,6],\n },\n ]\n },\n \"Solothurn\": {\n \"_state_code\": \"so\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Schweiz&state=Solothurn&zoom=18&addressdetails=1&limit=1&accept-language=de,fr,it,rm\",\n SH: [\n {\n name: \"Winterferien\",\n 2020: [2,3,2,14],\n 2021: [2,8,2,19],\n 2022: [2,7,2,18],\n 2023: [2,6,2,17],\n 2024: [2,5,2,16],\n 2025: [2,3,2,14],\n 2026: [2,2,2,13],\n 2027: [2,8,2,19],\n 2028: [2,7,2,18],\n 2029: [2,5,2,16],\n 2030: [2,4,2,15],\n 2031: [2,3,2,14],\n },\n {\n name: \"Sommerferien\",\n 2020: [7,6,8,7],\n 2021: [7,10,8,15],\n 2022: [7,11,8,12],\n 2023: [7,10,8,15],\n 2024: [7,8,8,9],\n 2025: [7,7,8,8],\n 2026: [7,6,8,7],\n 2027: [7,12,8,13],\n 2028: [7,10,8,11],\n 2029: [7,9,8,10],\n 2030: [7,8,8,9],\n 2031: [7,7,8,8],\n },\n {\n name: \"Herbstferien\",\n 2020: [9,28,10,16],\n 2021: [10,4,10,22],\n 2022: [10,3,10,21],\n 2023: [10,2,10,20],\n 2024: [9,30,10,18],\n 2025: [9,29,10,17],\n 2026: [9,28,10,16],\n 2027: [10,4,10,22],\n 2028: [10,2,10,20],\n 2029: [10,1,10,19],\n 2030: [9,30,10,18],\n },\n {\n name: \"Weihnachtsferien\",\n 2019: [12,23,1,3],\n 2020: [12,21,1,1],\n 2021: [12,27,1,7],\n 2022: [12,26,1,6],\n 2023: [12,25,1,5],\n 2024: [12,23,1,3],\n 2025: [12,22,1,2],\n 2026: [12,21,1,1],\n 2027: [12,27,1,7],\n 2028: [12,25,1,5],\n 2029: [12,24,1,4],\n 2030: [12,23,1,3],\n },\n {\n name: \"Frühlingsferien\",\n 2020: [4,6,4,17],\n 2021: [4,12,4,23],\n 2022: [4,11,4,22],\n 2023: [4,10,4,21],\n 2024: [4,8,4,19],\n 2025: [4,7,4,21],\n 2026: [4,6,4,17],\n 2027: [4,2,4,23],\n 2028: [4,10,4,21],\n 2029: [4,9,4,20],\n 2030: [4,8,4,22],\n 2031: [4,7,4,18],\n },\n ]\n },\n \"St. Gallen\": {\n \"_state_code\": \"sg\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Schweiz&state=St.+Gallen&zoom=18&addressdetails=1&limit=1&accept-language=de,fr,it,rm\",\n SH: [\n {\n name: \"Sommerferien\",\n 2020: [7,5,8,9],\n 2021: [7,11,8,15],\n 2022: [7,10,8,14],\n 2023: [7,9,8,13],\n 2024: [7,7,8,11],\n 2025: [7,6,8,10],\n 2026: [7,5,8,9],\n 2027: [7,11,8,15],\n 2028: [7,9,8,13],\n 2029: [7,8,8,12],\n },\n {\n name: \"Herbstferien\",\n 2020: [9,27,10,18],\n 2021: [10,3,10,24],\n 2022: [10,2,10,23],\n 2023: [10,1,10,22],\n 2024: [9,29,10,20],\n 2025: [9,28,10,19],\n 2026: [9,27,10,18],\n 2027: [10,3,10,24],\n 2028: [10,1,10,22],\n },\n {\n name: \"Weihnachtsferien\",\n 2019: [12,22,1,5],\n 2020: [12,20,1,3],\n 2021: [12,19,1,2],\n 2022: [12,25,1,8],\n 2023: [12,24,1,7],\n 2024: [12,22,1,5],\n 2025: [12,21,1,4],\n 2026: [12,20,1,3],\n 2027: [12,19,1,2],\n 2028: [12,24,1,7],\n },\n {\n name: \"Frühlingsferien\",\n 2020: [4,5,4,19],\n 2021: [4,11,4,25],\n 2022: [4,10,4,24],\n 2023: [4,9,4,23],\n 2024: [4,7,4,21],\n 2025: [4,6,4,20],\n 2026: [4,5,4,19],\n 2027: [4,11,4,25],\n 2028: [4,9,4,23],\n 2029: [4,8,4,22],\n },\n ]\n },\n \"Surselva\": {\n \"_state_code\": \"gr-ss\",\n SH: [\n {\n name: \"Herbstferien\",\n 2020: [10,10,10,25],\n 2021: [10,9,10,24],\n 2022: [10,8,10,23],\n 2023: [10,7,10,22],\n 2024: [10,5,10,20],\n 2025: [10,6,10,17],\n 2026: [10,10,10,25],\n 2027: [10,9,10,24],\n 2028: [10,7,10,22],\n 2029: [10,6,10,21],\n },\n {\n name: \"Weihnachtsferien\",\n 2019: [12,21,1,5],\n 2020: [12,23,1,5],\n 2021: [12,23,1,5],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,5],\n 2025: [12,22,1,2],\n 2026: [12,23,1,5],\n 2027: [12,23,1,5],\n 2028: [12,23,1,7],\n 2029: [12,22,1,6],\n },\n {\n name: \"Schulbeginn\",\n 2020: [8,17,8,17],\n 2021: [8,16,8,16],\n 2022: [8,15,8,15],\n 2023: [8,14,8,14],\n 2024: [8,12,8,12],\n 2025: [8,11,8,11],\n 2026: [8,17,8,17],\n 2027: [8,16,8,16],\n 2028: [8,14,8,14],\n 2029: [8,13,8,13],\n },\n ]\n },\n \"Tessin\": {\n \"_state_code\": \"ti\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Schweiz&state=Tessin&zoom=18&addressdetails=1&limit=1&accept-language=de,fr,it,rm\"\n },\n \"Thurgau\": {\n \"_state_code\": \"tg\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Schweiz&state=Thurgau&zoom=18&addressdetails=1&limit=1&accept-language=de,fr,it,rm\",\n SH: [\n {\n name: \"Sport\",\n 2020: [1,25,2,2],\n 2021: [1,30,2,7],\n 2022: [1,29,2,6],\n 2023: [1,28,2,5],\n 2024: [1,27,2,4],\n 2025: [1,25,2,2],\n 2026: [1,24,2,1],\n },\n {\n name: \"Frühling\",\n 2020: [3,28,4,13],\n 2021: [4,2,4,18],\n 2022: [4,2,4,18],\n 2023: [3,25,4,10],\n 2024: [3,29,4,14],\n 2025: [4,12,4,27],\n 2026: [4,3,4,19],\n },\n {\n name: \"Sommer\",\n 2020: [7,4,8,9],\n 2021: [7,10,8,15],\n 2022: [7,9,8,14],\n 2023: [7,8,8,13],\n 2024: [7,6,8,11],\n 2025: [7,5,8,10],\n 2026: [7,4,8,9],\n },\n {\n name: \"Herbst\",\n 2020: [10,3,10,18],\n 2021: [10,9,10,24],\n 2022: [10,8,10,23],\n 2023: [10,7,10,22],\n 2024: [10,5,10,20],\n 2025: [10,4,10,19],\n 2026: [10,3,10,18],\n },\n {\n name: \"Winter\",\n 2020: [12,19,1,3],\n 2021: [12,18,1,2],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,5],\n 2025: [12,20,1,4],\n 2026: [12,19,1,3],\n },\n {\n name: \"Pfingsten\",\n 2026: [5,14,5,25],\n },\n ]\n },\n \"Ticino\": {\n \"_state_code\": \"ti\",\n SH: [\n {\n name: \"Sport\",\n 2020: [2,22,3,1],\n 2021: [2,13,2,21],\n 2022: [2,26,3,6],\n 2023: [2,18,2,26],\n 2024: [2,10,2,18],\n 2025: [3,1,3,9],\n 2026: [2,14,2,22],\n },\n {\n name: \"Frühling\",\n 2020: [4,10,4,19],\n 2021: [4,2,4,11],\n 2022: [4,15,4,24],\n 2023: [4,7,4,16],\n 2024: [3,29,4,7],\n 2025: [4,18,4,27],\n 2026: [4,3,4,12],\n },\n {\n name: \"Sommer\",\n 2020: [6,20,8,30],\n 2021: [6,19,8,29],\n 2022: [6,16,8,28],\n 2023: [6,17,8,27],\n 2024: [6,15,9,1],\n 2025: [6,19,8,31],\n 2026: [6,18,8,30],\n },\n {\n name: \"Herbst\",\n 2020: [10,31,11,8],\n 2021: [10,30,11,7],\n 2022: [10,29,11,6],\n 2023: [10,28,11,5],\n 2024: [10,26,11,3],\n 2025: [11,1,11,9],\n 2026: [10,31,11,8],\n },\n {\n name: \"Winter\",\n 2020: [12,24,1,6],\n 2021: [12,24,1,9],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,6],\n 2025: [12,24,1,6],\n 2026: [12,24,1,6],\n },\n ]\n },\n \"Uri\": {\n \"_state_code\": \"ur\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Schweiz&state=Uri&zoom=18&addressdetails=1&limit=1&accept-language=de,fr,it,rm\",\n SH: [\n {\n name: \"Sport\",\n 2020: [2,15,3,1],\n 2021: [2,27,3,7],\n 2022: [2,19,3,6],\n 2023: [3,4,3,12],\n 2024: [3,2,3,10],\n 2025: [2,22,3,9],\n 2026: [2,28,3,8],\n },\n {\n name: \"Frühling\",\n 2020: [4,25,5,10],\n 2021: [5,1,5,16],\n 2022: [4,30,5,15],\n 2023: [4,22,5,7],\n 2024: [4,27,5,12],\n 2025: [4,26,5,11],\n 2026: [5,2,5,17],\n },\n {\n name: \"Sommer\",\n 2020: [7,4,8,16],\n 2021: [7,3,8,15],\n 2022: [7,2,8,15],\n 2023: [7,1,8,20],\n 2024: [7,6,8,18],\n 2025: [7,5,8,17],\n 2026: [7,4,8,16],\n },\n {\n name: \"Herbst\",\n 2020: [10,3,10,18],\n 2021: [10,2,10,17],\n 2022: [10,1,10,16],\n 2023: [10,7,10,22],\n 2024: [10,5,10,20],\n 2025: [10,4,10,19],\n 2026: [10,3,10,18],\n },\n {\n name: \"Winter\",\n 2020: [12,24,1,10],\n 2021: [12,24,1,9],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,6],\n 2025: [12,20,1,6],\n 2026: [12,24,1,10],\n },\n ]\n },\n \"Valais\": {\n \"_state_code\": \"vs\",\n SH: [\n {\n name: \"Sport\",\n 2020: [2,29,3,8],\n 2021: [2,27,3,7],\n 2022: [3,5,3,13],\n 2023: [3,4,3,12],\n 2024: [3,2,3,10],\n 2025: [3,1,3,9],\n 2026: [2,28,3,8],\n },\n {\n name: \"Frühling\",\n 2020: [5,16,5,24],\n 2021: [5,8,5,16],\n 2022: [5,7,5,15],\n 2023: [5,13,5,29],\n 2024: [5,4,5,12],\n 2025: [4,18,4,27],\n 2026: [5,9,5,17],\n },\n {\n name: \"Sommer\",\n 2020: [6,27,8,16],\n 2021: [6,26,8,15],\n 2022: [6,30,8,15],\n 2023: [7,1,8,15],\n 2024: [6,29,8,18],\n 2025: [6,28,8,17],\n 2026: [7,1,8,16],\n },\n {\n name: \"Herbst\",\n 2020: [10,22,11,1],\n 2021: [10,13,10,24],\n 2022: [10,13,10,23],\n 2023: [10,19,10,29],\n 2024: [10,17,10,27],\n 2025: [10,16,10,26],\n 2026: [10,15,10,25],\n },\n {\n name: \"Winter\",\n 2020: [12,24,1,6],\n 2021: [12,24,1,9],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,5],\n 2025: [12,20,1,4],\n 2026: [12,24,1,10],\n },\n ]\n },\n \"Vaud\": {\n \"_state_code\": \"vd\",\n SH: [\n {\n name: \"Sport\",\n 2020: [2,15,2,23],\n 2021: [2,20,2,28],\n 2022: [2,19,2,27],\n 2023: [2,11,2,19],\n 2024: [2,10,2,18],\n 2025: [2,15,2,23],\n 2026: [2,14,2,22],\n },\n {\n name: \"Frühling\",\n 2020: [4,10,4,26],\n 2021: [4,2,4,18],\n 2022: [4,15,5,1],\n 2023: [4,7,4,23],\n 2024: [3,29,4,14],\n 2025: [4,12,4,27],\n 2026: [4,3,4,19],\n },\n {\n name: \"Sommer\",\n 2020: [7,4,8,23],\n 2021: [7,3,8,22],\n 2022: [7,2,8,21],\n 2023: [7,1,8,20],\n 2024: [6,29,8,18],\n 2025: [6,28,8,17],\n 2026: [6,27,8,16],\n },\n {\n name: \"Herbst\",\n 2020: [10,10,10,25],\n 2021: [10,16,10,31],\n 2022: [10,15,10,30],\n 2023: [10,14,10,29],\n 2024: [10,12,10,27],\n 2025: [10,11,10,26],\n 2026: [10,10,10,25],\n },\n {\n name: \"Winter\",\n 2020: [12,19,1,3],\n 2021: [12,24,1,9],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,5],\n 2025: [12,20,1,4],\n 2026: [12,24,1,10],\n },\n ]\n },\n \"Viamala\": {\n \"_state_code\": \"gr-vm\",\n SH: [\n {\n name: \"Herbstferien\",\n 2020: [10,10,10,25],\n 2021: [10,9,10,24],\n 2022: [10,8,10,23],\n 2023: [10,7,10,22],\n 2024: [10,5,10,20],\n 2025: [10,6,10,17],\n 2026: [10,10,10,25],\n 2027: [10,9,10,24],\n 2028: [10,7,10,22],\n 2029: [10,6,10,21],\n },\n {\n name: \"Weihnachtsferien\",\n 2019: [12,21,1,5],\n 2020: [12,23,1,5],\n 2021: [12,23,1,5],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,5],\n 2025: [12,22,1,2],\n 2026: [12,23,1,5],\n 2027: [12,23,1,5],\n 2028: [12,23,1,7],\n 2029: [12,22,1,6],\n },\n {\n name: \"Schulbeginn\",\n 2020: [8,17,8,17],\n 2021: [8,16,8,16],\n 2022: [8,15,8,15],\n 2023: [8,14,8,14],\n 2024: [8,12,8,12],\n 2025: [8,11,8,11],\n 2026: [8,17,8,17],\n 2027: [8,16,8,16],\n 2028: [8,14,8,14],\n 2029: [8,13,8,13],\n },\n ]\n },\n \"Waadt\": {\n \"_state_code\": \"vd\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Schweiz&state=Waadt&zoom=18&addressdetails=1&limit=1&accept-language=de,fr,it,rm\"\n },\n \"Wallis\": {\n \"_state_code\": \"vs\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Schweiz&state=Wallis&zoom=18&addressdetails=1&limit=1&accept-language=de,fr,it,rm\"\n },\n \"Zug\": {\n \"_state_code\": \"zg\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Schweiz&state=Zug&zoom=18&addressdetails=1&limit=1&accept-language=de,fr,it,rm\",\n SH: [\n {\n name: \"Winterferien\",\n 2020: [12,19,1,3],\n 2021: [12,23,1,5],\n 2022: [12,22,1,4],\n 2023: [12,23,1,7],\n 2024: [12,21,1,5],\n 2025: [12,20,1,4],\n 2026: [12,19,1,3],\n 2027: [12,19,1,3],\n 2028: [12,23,1,7],\n 2029: [12,22,1,6],\n },\n {\n name: \"Sommerferien\",\n 2020: [7,4,8,16],\n 2021: [7,3,8,15],\n 2022: [7,9,8,21],\n 2023: [7,8,8,20],\n 2024: [7,6,8,18],\n 2025: [6,21,8,17],\n 2026: [7,4,8,16],\n 2027: [7,3,8,15],\n 2028: [7,8,8,20],\n 2029: [7,7,8,19],\n 2030: [7,6,8,18],\n },\n {\n name: \"Herbstferien\",\n 2020: [10,3,10,18],\n 2021: [10,2,10,17],\n 2022: [10,8,10,23],\n 2023: [10,7,10,22],\n 2024: [10,5,10,20],\n 2025: [10,4,10,19],\n 2026: [10,3,10,18],\n 2027: [10,3,10,18],\n 2028: [10,7,10,22],\n 2029: [10,6,10,21],\n },\n {\n name: \"Sportferien\",\n 2020: [2,1,2,16],\n 2021: [2,6,2,21],\n 2022: [2,5,2,20],\n 2023: [2,4,2,19],\n 2024: [2,3,2,18],\n 2025: [2,1,2,16],\n 2026: [1,31,2,15],\n 2027: [2,6,2,21],\n 2028: [2,5,2,20],\n 2029: [2,3,2,18],\n 2030: [2,2,2,17],\n },\n {\n name: \"Frühlingsferien\",\n 2020: [4,11,4,26],\n 2021: [4,17,5,2],\n 2022: [4,15,5,1],\n 2023: [4,15,4,30],\n 2024: [4,13,4,28],\n 2025: [4,12,4,27],\n 2026: [4,11,4,26],\n 2027: [4,17,5,2],\n 2028: [4,15,4,30],\n 2029: [4,4,4,29],\n 2030: [4,13,4,28],\n },\n {\n name: \"Auffahrtsferien\",\n 2020: [5,21,5,24],\n 2021: [5,13,5,16],\n 2022: [5,26,5,29],\n 2023: [5,18,5,21],\n 2024: [5,9,5,12],\n 2025: [5,29,6,1],\n 2026: [5,14,5,17],\n 2027: [5,6,5,9],\n 2028: [5,25,5,28],\n 2029: [5,10,5,13],\n 2030: [5,30,6,2],\n },\n ]\n },\n \"Zürich\": {\n \"_state_code\": \"zh\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Schweiz&state=Z%C3%BCrich&zoom=18&addressdetails=1&limit=1&accept-language=de,fr,it,rm\",\n SH: [\n {\n name: \"Sommerferien\",\n 2020: [7,13,8,15],\n 2021: [7,19,8,21],\n 2022: [7,18,8,20],\n 2023: [7,17,8,19],\n 2024: [7,15,8,17],\n 2025: [7,14,8,16],\n 2026: [7,13,8,15],\n 2027: [7,19,8,21],\n 2028: [7,17,8,19],\n 2029: [7,16,8,18],\n 2030: [7,15,8,17],\n 2031: [7,14,8,16],\n 2032: [7,12,8,14],\n 2033: [7,18,8,20],\n },\n {\n name: \"Herbstferien\",\n 2020: [10,5,10,17],\n 2021: [10,11,10,23],\n 2022: [10,10,10,22],\n 2023: [10,9,10,21],\n 2024: [10,7,10,19],\n 2025: [10,6,10,18],\n 2026: [10,5,10,17],\n 2027: [10,11,10,23],\n 2028: [10,9,10,21],\n 2029: [10,8,10,20],\n 2030: [10,7,10,19],\n 2031: [10,6,10,18],\n 2032: [10,4,10,16],\n },\n {\n name: \"Weihnachtsferien\",\n 2020: [12,21,1,2],\n 2021: [12,20,1,1],\n 2022: [12,26,1,7],\n 2023: [12,25,1,6],\n 2024: [12,23,1,4],\n 2025: [12,22,1,3],\n 2026: [12,21,1,2],\n 2027: [12,20,1,1],\n 2028: [12,25,1,6],\n 2029: [12,24,1,5],\n 2030: [12,23,1,5],\n 2031: [12,22,1,3],\n 2032: [12,20,1,1],\n },\n {\n name: \"Ostern\",\n 2020: [4,10,4,13],\n 2021: [4,2,4,5],\n 2022: [4,15,4,18],\n 2023: [4,7,4,10],\n 2024: [3,29,4,1],\n 2025: [4,18,4,21],\n 2026: [4,3,4,6],\n 2027: [3,26,3,29],\n 2028: [4,14,4,17],\n 2029: [3,30,4,2],\n 2030: [4,19,4,22],\n 2031: [4,11,4,14],\n 2032: [3,26,3,29],\n 2033: [4,15,4,18],\n },\n {\n name: \"Frühlingsferien\",\n 2020: [4,13,4,25],\n 2021: [4,26,5,8],\n 2022: [4,18,4,30],\n 2023: [4,24,5,6],\n 2024: [4,22,5,4],\n 2025: [4,21,5,3],\n 2026: [4,20,5,2],\n 2027: [4,26,5,8],\n 2028: [4,17,4,29],\n 2029: [4,23,5,5],\n 2030: [4,22,5,4],\n 2031: [4,14,4,26],\n 2032: [4,19,5,1],\n 2033: [4,18,4,30],\n },\n {\n name: \"Auffahrtsbrücke\",\n 2020: [5,21,5,23],\n 2021: [5,13,5,15],\n 2022: [5,26,5,28],\n 2024: [5,9,5,11],\n 2025: [5,29,5,31],\n 2026: [5,14,5,16],\n 2027: [5,6,5,8],\n 2028: [5,25,5,27],\n 2029: [5,10,5,12],\n 2030: [5,30,6,1],\n 2031: [5,22,5,24],\n 2032: [5,6,5,8],\n 2033: [5,26,5,28],\n },\n ]\n }\n};\n\nexport const ci = {\n PH: [{\"name\":\"Fête du 1ᵉʳ janvier\",\"fixed_date\":[1,1]},{\"name\":\"Lundi de Pâques\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Fête du travail\",\"fixed_date\":[5,1]},{\"name\":\"Lendemain de la Fête du travail\",\"variable_date\":\"nextMo-Sa01May\"},{\"name\":\"Jour de l’Ascension\",\"variable_date\":\"easter\",\"offset\":39},{\"name\":\"Lundi de la Pentecôte\",\"variable_date\":\"easter\",\"offset\":50},{\"name\":\"Fête nationale\",\"fixed_date\":[8,7]},{\"name\":\"Lendemain de la Fête nationale\",\"variable_date\":\"nextMo-Sa07August\"},{\"name\":\"Fête de l’Assomption\",\"fixed_date\":[8,15]},{\"name\":\"Fête de la Toussaint\",\"fixed_date\":[11,1]},{\"name\":\"Journée Nationale de la Paix\",\"fixed_date\":[11,15]},{\"name\":\"Fête de Noël\",\"fixed_date\":[12,25]},{\"name\":\"Lendemain de la Fête de Noël\",\"variable_date\":\"nextMo-Sa25December\"}],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=5.3203570&lon=-4.0161070&zoom=18&addressdetails=1&accept-language=fr\"\n};\n\nexport const cn = {\n PH: [{\"name\":\"元旦\",\"fixed_date\":[1,1]},{\"name\":\"妇女节\",\"fixed_date\":[3,8]},{\"name\":\"劳动节\",\"fixed_date\":[5,1]},{\"name\":\"青年节\",\"fixed_date\":[5,4]},{\"name\":\"儿童节\",\"fixed_date\":[6,1]},{\"name\":\"国庆节\",\"fixed_date\":[10,1]},{\"name\":\"国庆节休息日\",\"fixed_date\":[10,2]},{\"name\":\"国庆节休息日\",\"fixed_date\":[10,3]}],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=%E4%B8%AD%E5%9B%BD&&zoom=18&addressdetails=1&limit=1&accept-language=zh,en\",\n \"西藏自治区\": {\n \"_state_code\": \"xz\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&state=%E8%A5%BF%E8%97%8F%E8%87%AA%E6%B2%BB%E5%8C%BA&zoom=1&addressdetails=1&limit=1&accept-language=zh,en\",\n PH: [{\"name\":\"元旦\",\"fixed_date\":[1,1]},{\"name\":\"西藏百万农奴解放纪念日\",\"fixed_date\":[3,28]},{\"name\":\"妇女节\",\"fixed_date\":[3,8]},{\"name\":\"劳动节\",\"fixed_date\":[5,1]},{\"name\":\"青年节\",\"fixed_date\":[5,4]},{\"name\":\"儿童节\",\"fixed_date\":[6,1]},{\"name\":\"国庆节\",\"fixed_date\":[10,1]},{\"name\":\"国庆节休息日\",\"fixed_date\":[10,2]},{\"name\":\"国庆节休息日\",\"fixed_date\":[10,3]}]\n }\n};\n\nexport const cz = {\n PH: [{\"name\":\"Den obnovy samostatného českého státu; Nový rok\",\"fixed_date\":[1,1]},{\"name\":\"Velký pátek\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Velikonoční pondělí\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Svátek práce\",\"fixed_date\":[5,1]},{\"name\":\"Den vítězství\",\"fixed_date\":[5,8]},{\"name\":\"Den slovanských věrozvěstů Cyrila a Metoděje\",\"fixed_date\":[7,5]},{\"name\":\"Den upálení mistra Jana Husa\",\"fixed_date\":[7,6]},{\"name\":\"Den české státnosti\",\"fixed_date\":[9,28]},{\"name\":\"Den vzniku samostatného československého státu\",\"fixed_date\":[10,28]},{\"name\":\"Den boje za svobodu a demokracii\",\"fixed_date\":[11,17]},{\"name\":\"Štědrý den\",\"fixed_date\":[12,24]},{\"name\":\"1. svátek vánoční\",\"fixed_date\":[12,25]},{\"name\":\"2. svátek vánoční\",\"fixed_date\":[12,26]}],\n SH: [\n {\n name: \"Vánoční prázdniny\",\n 2019: [12,23,1,3],\n 2020: [12,23,1,3],\n 2021: [12,23,1,2],\n 2022: [12,23,1,2],\n 2023: [12,23,1,2],\n 2024: [12,23,1,3],\n 2025: [12,22,1,2],\n 2026: [12,23,1,3],\n 2027: [12,23,1,2],\n },\n {\n name: \"Pololetní prázdniny\",\n 2020: [1,31,1,31],\n 2021: [1,29,1,29],\n 2022: [2,4,2,4],\n 2023: [2,3,2,3],\n 2024: [2,2,2,2],\n 2025: [1,31,1,31],\n 2026: [1,30,1,30],\n 2027: [1,29,1,29],\n 2028: [2,4,2,4],\n },\n {\n name: \"Velikonoční prázdniny\",\n 2020: [4,9,4,9],\n 2021: [4,1,4,1],\n 2022: [4,14,4,14],\n 2023: [4,6,4,6],\n 2024: [3,28,3,28],\n 2025: [4,17,4,17],\n 2026: [4,2,4,2],\n 2027: [3,25,3,25],\n 2028: [4,13,4,13],\n },\n {\n name: \"Hlavní prázdniny\",\n 2020: [7,1,8,31],\n 2021: [7,1,8,31],\n 2022: [7,1,8,31],\n 2023: [7,1,9,3],\n 2024: [6,29,9,1],\n 2025: [7,1,8,31],\n 2026: [7,1,8,31],\n 2027: [7,1,8,31],\n 2028: [7,1,9,3],\n },\n {\n name: \"Podzimní prázdniny\",\n 2020: [10,29,10,30],\n 2021: [10,27,10,29],\n 2022: [10,26,10,27],\n 2023: [10,26,10,27],\n 2024: [10,29,10,30],\n 2025: [10,27,10,29],\n 2026: [10,29,10,30],\n 2027: [10,27,10,29],\n },\n ],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=50.0874401&lon=14.4212556&zoom=18&addressdetails=1&accept-language=cs,en\",\n \"Benešov\": {\n \"_state_code\": \"st-bn\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,10,2,16],\n 2021: [2,15,2,21],\n 2022: [2,28,3,6],\n 2023: [3,6,3,12],\n 2024: [3,11,3,17],\n 2025: [2,3,2,9],\n 2026: [2,9,2,15],\n 2027: [2,15,2,21],\n 2028: [2,28,3,5],\n },\n ]\n },\n \"Beroun\": {\n \"_state_code\": \"st-be\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,10,2,16],\n 2021: [2,15,2,21],\n 2022: [2,28,3,6],\n 2023: [3,6,3,12],\n 2024: [3,11,3,17],\n 2025: [2,3,2,9],\n 2026: [2,9,2,15],\n 2027: [2,15,2,21],\n 2028: [2,28,3,5],\n },\n ]\n },\n \"Blansko\": {\n \"_state_code\": \"jm-bk\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,17,2,23],\n 2021: [2,22,2,28],\n 2022: [3,7,3,13],\n 2023: [3,13,3,19],\n 2024: [2,5,2,11],\n 2025: [2,10,2,16],\n 2026: [2,16,2,22],\n 2027: [2,22,2,28],\n 2028: [3,6,3,12],\n },\n ]\n },\n \"Břeclav\": {\n \"_state_code\": \"jm-bv\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,17,2,23],\n 2021: [2,22,2,28],\n 2022: [3,7,3,13],\n 2023: [3,13,3,19],\n 2024: [2,5,2,11],\n 2025: [2,10,2,16],\n 2026: [2,16,2,22],\n 2027: [2,22,2,28],\n 2028: [3,6,3,12],\n },\n ]\n },\n \"Brno-město\": {\n \"_state_code\": \"jm-bm\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,17,2,23],\n 2021: [2,22,2,28],\n 2022: [3,7,3,13],\n 2023: [3,13,3,19],\n 2024: [2,5,2,11],\n 2025: [2,10,2,16],\n 2026: [2,16,2,22],\n 2027: [2,22,2,28],\n 2028: [3,6,3,12],\n },\n ]\n },\n \"Brno-venkov\": {\n \"_state_code\": \"jm-bo\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,17,2,23],\n 2021: [2,22,2,28],\n 2022: [3,7,3,13],\n 2023: [3,13,3,19],\n 2024: [2,5,2,11],\n 2025: [2,10,2,16],\n 2026: [2,16,2,22],\n 2027: [2,22,2,28],\n 2028: [3,6,3,12],\n },\n ]\n },\n \"Bruntál\": {\n \"_state_code\": \"mo-br\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [3,9,3,15],\n 2021: [2,1,2,7],\n 2022: [2,14,2,20],\n 2023: [2,20,2,26],\n 2024: [2,26,3,3],\n 2025: [3,3,3,9],\n 2026: [3,9,3,15],\n 2027: [2,1,2,7],\n 2028: [2,14,2,20],\n },\n ]\n },\n \"Česká Lípa\": {\n \"_state_code\": \"li-cl\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [3,9,3,15],\n 2021: [2,1,2,7],\n 2022: [2,14,2,20],\n 2023: [2,20,2,26],\n 2024: [2,26,3,3],\n 2025: [3,3,3,9],\n 2026: [3,9,3,15],\n 2027: [2,1,2,7],\n 2028: [2,14,2,20],\n },\n ]\n },\n \"České Budějovice\": {\n \"_state_code\": \"jc-cb\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,10,2,16],\n 2021: [2,15,2,21],\n 2022: [2,28,3,6],\n 2023: [3,6,3,12],\n 2024: [3,11,3,17],\n 2025: [2,3,2,9],\n 2026: [2,9,2,15],\n 2027: [2,15,2,21],\n 2028: [2,28,3,5],\n },\n ]\n },\n \"Český Krumlov\": {\n \"_state_code\": \"jc-ck\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,10,2,16],\n 2021: [2,15,2,21],\n 2022: [2,28,3,6],\n 2023: [3,6,3,12],\n 2024: [3,11,3,17],\n 2025: [2,3,2,9],\n 2026: [2,9,2,15],\n 2027: [2,15,2,21],\n 2028: [2,28,3,5],\n },\n ]\n },\n \"Cheb\": {\n \"_state_code\": \"ka-ch\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,24,3,1],\n 2021: [3,1,3,7],\n 2022: [3,14,3,20],\n 2023: [2,6,2,12],\n 2024: [2,12,2,18],\n 2025: [2,17,2,23],\n 2026: [2,23,3,1],\n 2027: [3,1,3,7],\n 2028: [3,13,3,19],\n },\n ]\n },\n \"Chomutov\": {\n \"_state_code\": \"us-cv\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,3,2,9],\n 2021: [2,8,2,14],\n 2022: [2,21,2,27],\n 2023: [2,27,3,5],\n 2024: [3,4,3,10],\n 2025: [3,10,3,16],\n 2026: [2,2,2,8],\n 2027: [2,8,2,14],\n 2028: [2,21,2,27],\n },\n ]\n },\n \"Chrudim\": {\n \"_state_code\": \"pa-cr\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,10,2,16],\n 2021: [2,15,2,21],\n 2022: [2,28,3,6],\n 2023: [3,6,3,12],\n 2024: [3,11,3,17],\n 2025: [2,3,2,9],\n 2026: [2,9,2,15],\n 2027: [2,15,2,21],\n 2028: [2,28,3,5],\n },\n ]\n },\n \"Děčín\": {\n \"_state_code\": \"us-dc\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,24,3,1],\n 2021: [3,1,3,7],\n 2022: [3,14,3,20],\n 2023: [2,6,2,12],\n 2024: [2,12,2,18],\n 2025: [2,17,2,23],\n 2026: [2,23,3,1],\n 2027: [3,1,3,7],\n 2028: [3,13,3,19],\n },\n ]\n },\n \"Domažlice\": {\n \"_state_code\": \"pl-do\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,17,2,23],\n 2021: [2,22,2,28],\n 2022: [3,7,3,13],\n 2023: [3,13,3,19],\n 2024: [2,5,2,11],\n 2025: [2,10,2,16],\n 2026: [2,16,2,22],\n 2027: [2,22,2,28],\n 2028: [3,6,3,12],\n },\n ]\n },\n \"Frýdek-Místek\": {\n \"_state_code\": \"mo-fm\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,24,3,1],\n 2021: [3,1,3,7],\n 2022: [3,14,3,20],\n 2023: [2,6,2,12],\n 2024: [2,12,2,18],\n 2025: [2,17,2,23],\n 2026: [2,23,3,1],\n 2027: [3,1,3,7],\n 2028: [3,13,3,19],\n },\n ]\n },\n \"Havlíčkův Brod\": {\n \"_state_code\": \"vy-hb\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [3,9,3,15],\n 2021: [2,1,2,7],\n 2022: [2,14,2,20],\n 2023: [2,20,2,26],\n 2024: [2,26,3,3],\n 2025: [3,3,3,9],\n 2026: [3,9,3,15],\n 2027: [2,1,2,7],\n 2028: [2,14,2,20],\n },\n ]\n },\n \"Hodonín\": {\n \"_state_code\": \"jm-ho\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,17,2,23],\n 2021: [2,22,2,28],\n 2022: [3,7,3,13],\n 2023: [3,13,3,19],\n 2024: [2,5,2,11],\n 2025: [2,10,2,16],\n 2026: [2,16,2,22],\n 2027: [2,22,2,28],\n 2028: [3,6,3,12],\n },\n ]\n },\n \"Hradec Králov\": {\n \"_state_code\": \"kr-hk\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [3,2,3,8],\n 2021: [3,8,3,14],\n 2022: [2,7,2,13],\n 2023: [2,13,2,19],\n 2024: [2,19,2,25],\n 2025: [2,24,3,2],\n 2026: [3,2,3,8],\n 2027: [3,8,3,14],\n 2028: [2,7,2,13],\n },\n ]\n },\n \"Jablonec nad Nisou\": {\n \"_state_code\": \"li-jn\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [3,9,3,15],\n 2021: [2,1,2,7],\n 2022: [2,14,2,20],\n 2023: [2,20,2,26],\n 2024: [2,26,3,3],\n 2025: [3,3,3,9],\n 2026: [3,9,3,15],\n 2027: [2,1,2,7],\n 2028: [2,14,2,20],\n },\n ]\n },\n \"Jeseník\": {\n \"_state_code\": \"ol-je\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,3,2,9],\n 2021: [2,8,2,14],\n 2022: [2,21,2,27],\n 2023: [2,27,3,5],\n 2024: [3,4,3,10],\n 2025: [3,10,3,16],\n 2026: [2,2,2,8],\n 2027: [2,8,2,14],\n 2028: [2,21,2,27],\n },\n ]\n },\n \"Jičín\": {\n \"_state_code\": \"kr-jc\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,3,2,9],\n 2021: [2,8,2,14],\n 2022: [2,21,2,27],\n 2023: [2,27,3,5],\n 2024: [3,4,3,10],\n 2025: [3,10,3,16],\n 2026: [2,2,2,8],\n 2027: [2,8,2,14],\n 2028: [2,21,2,27],\n },\n ]\n },\n \"Jihlava\": {\n \"_state_code\": \"vy-ji\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [3,9,3,15],\n 2021: [2,1,2,7],\n 2022: [2,14,2,20],\n 2023: [2,20,2,26],\n 2024: [2,26,3,3],\n 2025: [3,3,3,9],\n 2026: [3,9,3,15],\n 2027: [2,1,2,7],\n 2028: [2,14,2,20],\n },\n ]\n },\n \"Jindřichův Hradec\": {\n \"_state_code\": \"jc-jh\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,24,3,1],\n 2021: [3,1,3,7],\n 2022: [3,14,3,20],\n 2023: [2,6,2,12],\n 2024: [2,12,2,18],\n 2025: [2,17,2,23],\n 2026: [2,23,3,1],\n 2027: [3,1,3,7],\n 2028: [3,13,3,19],\n },\n ]\n },\n \"Karlovy Vary\": {\n \"_state_code\": \"ka-kv\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,24,3,1],\n 2021: [3,1,3,7],\n 2022: [3,14,3,20],\n 2023: [2,6,2,12],\n 2024: [2,12,2,18],\n 2025: [2,17,2,23],\n 2026: [2,23,3,1],\n 2027: [3,1,3,7],\n 2028: [3,13,3,19],\n },\n ]\n },\n \"Karviná\": {\n \"_state_code\": \"mo-ki\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,17,2,23],\n 2021: [2,22,2,28],\n 2022: [3,7,3,13],\n 2023: [3,13,3,19],\n 2024: [2,5,2,11],\n 2025: [2,10,2,16],\n 2026: [2,16,2,22],\n 2027: [2,22,2,28],\n 2028: [3,6,3,12],\n },\n ]\n },\n \"Kladno\": {\n \"_state_code\": \"st-kl\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [3,9,3,15],\n 2021: [2,1,2,7],\n 2022: [2,14,2,20],\n 2023: [2,20,2,26],\n 2024: [2,26,3,3],\n 2025: [3,3,3,9],\n 2026: [3,9,3,15],\n 2027: [2,1,2,7],\n 2028: [2,14,2,20],\n },\n ]\n },\n \"Klatovy\": {\n \"_state_code\": \"pl-kt\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,10,2,16],\n 2021: [2,15,2,21],\n 2022: [2,28,3,6],\n 2023: [3,6,3,12],\n 2024: [3,11,3,17],\n 2025: [2,3,2,9],\n 2026: [2,9,2,15],\n 2027: [2,15,2,21],\n 2028: [2,28,3,5],\n },\n ]\n },\n \"Kolín\": {\n \"_state_code\": \"st-ko\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [3,9,3,15],\n 2021: [2,1,2,7],\n 2022: [2,14,2,20],\n 2023: [2,20,2,26],\n 2024: [2,26,3,3],\n 2025: [3,3,3,9],\n 2026: [3,9,3,15],\n 2027: [2,1,2,7],\n 2028: [2,14,2,20],\n },\n ]\n },\n \"Kroměříž\": {\n \"_state_code\": \"zl-km\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [3,2,3,8],\n 2021: [3,8,3,14],\n 2022: [2,7,2,13],\n 2023: [2,13,2,19],\n 2024: [2,19,2,25],\n 2025: [2,24,3,2],\n 2026: [3,2,3,8],\n 2027: [3,8,3,14],\n 2028: [2,7,2,13],\n },\n ]\n },\n \"Kutná Hora\": {\n \"_state_code\": \"st-kh\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [3,9,3,15],\n 2021: [2,1,2,7],\n 2022: [2,14,2,20],\n 2023: [2,20,2,26],\n 2024: [2,26,3,3],\n 2025: [3,3,3,9],\n 2026: [3,9,3,15],\n 2027: [2,1,2,7],\n 2028: [2,14,2,20],\n },\n ]\n },\n \"Liberec\": {\n \"_state_code\": \"li-lb\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [3,9,3,15],\n 2021: [2,1,2,7],\n 2022: [2,14,2,20],\n 2023: [2,20,2,26],\n 2024: [2,26,3,3],\n 2025: [3,3,3,9],\n 2026: [3,9,3,15],\n 2027: [2,1,2,7],\n 2028: [2,14,2,20],\n },\n ]\n },\n \"Litoměřice\": {\n \"_state_code\": \"us-lt\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,24,3,1],\n 2021: [3,1,3,7],\n 2022: [3,14,3,20],\n 2023: [2,6,2,12],\n 2024: [2,12,2,18],\n 2025: [2,17,2,23],\n 2026: [2,23,3,1],\n 2027: [3,1,3,7],\n 2028: [3,13,3,19],\n },\n ]\n },\n \"Louny\": {\n \"_state_code\": \"us-ln\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,17,2,23],\n 2021: [2,22,2,28],\n 2022: [3,7,3,13],\n 2023: [3,13,3,19],\n 2024: [2,5,2,11],\n 2025: [2,10,2,16],\n 2026: [2,16,2,22],\n 2027: [2,22,2,28],\n 2028: [3,6,3,12],\n },\n ]\n },\n \"Mělník\": {\n \"_state_code\": \"st-me\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [3,2,3,8],\n 2021: [3,8,3,14],\n 2022: [2,7,2,13],\n 2023: [2,13,2,19],\n 2024: [2,19,2,25],\n 2025: [2,24,3,2],\n 2026: [3,2,3,8],\n 2027: [3,8,3,14],\n 2028: [2,7,2,13],\n },\n ]\n },\n \"Mladá Boleslav\": {\n \"_state_code\": \"st-mb\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,3,2,9],\n 2021: [2,8,2,14],\n 2022: [2,21,2,27],\n 2023: [2,27,3,5],\n 2024: [3,4,3,10],\n 2025: [3,10,3,16],\n 2026: [2,2,2,8],\n 2027: [2,8,2,14],\n 2028: [2,21,2,27],\n },\n ]\n },\n \"Most\": {\n \"_state_code\": \"us-mo\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,3,2,9],\n 2021: [2,8,2,14],\n 2022: [2,21,2,27],\n 2023: [2,27,3,5],\n 2024: [3,4,3,10],\n 2025: [3,10,3,16],\n 2026: [2,2,2,8],\n 2027: [2,8,2,14],\n 2028: [2,21,2,27],\n },\n ]\n },\n \"Náchod\": {\n \"_state_code\": \"kr-na\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [3,9,3,15],\n 2021: [2,1,2,7],\n 2022: [2,14,2,20],\n 2023: [2,20,2,26],\n 2024: [2,26,3,3],\n 2025: [3,3,3,9],\n 2026: [3,9,3,15],\n 2027: [2,1,2,7],\n 2028: [2,14,2,20],\n },\n ]\n },\n \"Nový Jičín\": {\n \"_state_code\": \"mo-nj\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [3,2,3,8],\n 2021: [3,8,3,14],\n 2022: [2,7,2,13],\n 2023: [2,13,2,19],\n 2024: [2,19,2,25],\n 2025: [2,24,3,2],\n 2026: [3,2,3,8],\n 2027: [3,8,3,14],\n 2028: [2,7,2,13],\n },\n ]\n },\n \"Nymburk\": {\n \"_state_code\": \"st-nb\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,24,3,1],\n 2021: [3,1,3,7],\n 2022: [3,14,3,20],\n 2023: [2,6,2,12],\n 2024: [2,12,2,18],\n 2025: [2,17,2,23],\n 2026: [2,23,3,1],\n 2027: [3,1,3,7],\n 2028: [3,13,3,19],\n },\n ]\n },\n \"Olomouc\": {\n \"_state_code\": \"ol-oc\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,3,2,9],\n 2021: [2,8,2,14],\n 2022: [2,21,2,27],\n 2023: [2,27,3,5],\n 2024: [3,4,3,10],\n 2025: [3,10,3,16],\n 2026: [2,2,2,8],\n 2027: [2,8,2,14],\n 2028: [2,21,2,27],\n },\n ]\n },\n \"Opava\": {\n \"_state_code\": \"mo-op\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,3,2,9],\n 2021: [2,8,2,14],\n 2022: [2,21,2,27],\n 2023: [2,27,3,5],\n 2024: [3,4,3,10],\n 2025: [3,10,3,16],\n 2026: [2,2,2,8],\n 2027: [2,8,2,14],\n 2028: [2,21,2,27],\n },\n ]\n },\n \"Ostrava-město\": {\n \"_state_code\": \"mo-ov\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,10,2,16],\n 2021: [2,15,2,21],\n 2022: [2,28,3,6],\n 2023: [3,6,3,12],\n 2024: [3,11,3,17],\n 2025: [2,3,2,9],\n 2026: [2,9,2,15],\n 2027: [2,15,2,21],\n 2028: [2,28,3,5],\n },\n ]\n },\n \"Pardubice\": {\n \"_state_code\": \"pa-pu\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,10,2,16],\n 2021: [2,15,2,21],\n 2022: [2,28,3,6],\n 2023: [3,6,3,12],\n 2024: [3,11,3,17],\n 2025: [2,3,2,9],\n 2026: [2,9,2,15],\n 2027: [2,15,2,21],\n 2028: [2,28,3,5],\n },\n ]\n },\n \"Pelhřimov\": {\n \"_state_code\": \"vy-pe\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [3,9,3,15],\n 2021: [2,1,2,7],\n 2022: [2,14,2,20],\n 2023: [2,20,2,26],\n 2024: [2,26,3,3],\n 2025: [3,3,3,9],\n 2026: [3,9,3,15],\n 2027: [2,1,2,7],\n 2028: [2,14,2,20],\n },\n ]\n },\n \"Písek\": {\n \"_state_code\": \"jc-pi\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [3,9,3,15],\n 2021: [2,1,2,7],\n 2022: [2,14,2,20],\n 2023: [2,20,2,26],\n 2024: [2,26,3,3],\n 2025: [3,3,3,9],\n 2026: [3,9,3,15],\n 2027: [2,1,2,7],\n 2028: [2,14,2,20],\n },\n ]\n },\n \"Plzeň-jih\": {\n \"_state_code\": \"pl-pj\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [3,2,3,8],\n 2021: [3,8,3,14],\n 2022: [2,7,2,13],\n 2023: [2,13,2,19],\n 2024: [2,19,2,25],\n 2025: [2,24,3,2],\n 2026: [3,2,3,8],\n 2027: [3,8,3,14],\n 2028: [2,7,2,13],\n },\n ]\n },\n \"Plzeň-město\": {\n \"_state_code\": \"pl-pm\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [3,2,3,8],\n 2021: [3,8,3,14],\n 2022: [2,7,2,13],\n 2023: [2,13,2,19],\n 2024: [2,19,2,25],\n 2025: [2,24,3,2],\n 2026: [3,2,3,8],\n 2027: [3,8,3,14],\n 2028: [2,7,2,13],\n },\n ]\n },\n \"Plzeň-sever\": {\n \"_state_code\": \"pl-ps\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [3,2,3,8],\n 2021: [3,8,3,14],\n 2022: [2,7,2,13],\n 2023: [2,13,2,19],\n 2024: [2,19,2,25],\n 2025: [2,24,3,2],\n 2026: [3,2,3,8],\n 2027: [3,8,3,14],\n 2028: [2,7,2,13],\n },\n ]\n },\n \"Prachatice\": {\n \"_state_code\": \"jc-pt\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,3,2,9],\n 2021: [2,8,2,14],\n 2022: [2,21,2,27],\n 2023: [2,27,3,5],\n 2024: [3,4,3,10],\n 2025: [3,10,3,16],\n 2026: [2,2,2,8],\n 2027: [2,8,2,14],\n 2028: [2,21,2,27],\n },\n ]\n },\n \"Praha\": {\n \"_state_code\": \"pr\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,24,3,1],\n 2021: [3,1,3,7],\n 2022: [3,14,3,20],\n 2023: [3,13,3,19],\n 2024: [2,12,2,18],\n 2025: [2,17,2,23],\n 2026: [2,23,3,1],\n 2027: [3,1,3,7],\n 2028: [3,13,3,19],\n },\n ]\n },\n \"Praha-východ\": {\n \"_state_code\": \"st-ph\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [3,2,3,8],\n 2021: [3,8,3,14],\n 2022: [2,7,2,13],\n 2023: [2,13,2,19],\n 2024: [2,19,2,25],\n 2025: [2,24,3,2],\n 2026: [3,2,3,8],\n 2027: [3,8,3,14],\n 2028: [2,7,2,13],\n },\n ]\n },\n \"Praha-západ\": {\n \"_state_code\": \"st-pz\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [3,2,3,8],\n 2021: [3,8,3,14],\n 2022: [2,7,2,13],\n 2023: [2,13,2,19],\n 2024: [2,19,2,25],\n 2025: [2,24,3,2],\n 2026: [3,2,3,8],\n 2027: [3,8,3,14],\n 2028: [2,7,2,13],\n },\n ]\n },\n \"Přerov\": {\n \"_state_code\": \"ol-pr\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,24,3,1],\n 2021: [3,1,3,7],\n 2022: [3,14,3,20],\n 2023: [2,6,2,12],\n 2024: [2,12,2,18],\n 2025: [2,17,2,23],\n 2026: [2,23,3,1],\n 2027: [3,1,3,7],\n 2028: [3,13,3,19],\n },\n ]\n },\n \"Příbram\": {\n \"_state_code\": \"st-pb\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,3,2,9],\n 2021: [2,8,2,14],\n 2022: [2,21,2,27],\n 2023: [2,27,3,5],\n 2024: [3,4,3,10],\n 2025: [3,10,3,16],\n 2026: [2,2,2,8],\n 2027: [2,8,2,14],\n 2028: [2,21,2,27],\n },\n ]\n },\n \"Prostějov\": {\n \"_state_code\": \"ol-pv\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,10,2,16],\n 2021: [2,15,2,21],\n 2022: [2,28,3,6],\n 2023: [3,6,3,12],\n 2024: [3,11,3,17],\n 2025: [2,3,2,9],\n 2026: [2,9,2,15],\n 2027: [2,15,2,21],\n 2028: [2,28,3,5],\n },\n ]\n },\n \"Rakovník\": {\n \"_state_code\": \"st-ra\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [3,2,3,8],\n 2021: [3,8,3,14],\n 2022: [2,7,2,13],\n 2023: [2,13,2,19],\n 2024: [2,19,2,25],\n 2025: [2,24,3,2],\n 2026: [3,2,3,8],\n 2027: [3,8,3,14],\n 2028: [2,7,2,13],\n },\n ]\n },\n \"Rokycany\": {\n \"_state_code\": \"pl-ro\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,10,2,16],\n 2021: [2,15,2,21],\n 2022: [2,28,3,6],\n 2023: [3,6,3,12],\n 2024: [3,11,3,17],\n 2025: [2,3,2,9],\n 2026: [2,9,2,15],\n 2027: [2,15,2,21],\n 2028: [2,28,3,5],\n },\n ]\n },\n \"Rychnov nad Kněžnou\": {\n \"_state_code\": \"kr-rk\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,3,2,9],\n 2021: [2,8,2,14],\n 2022: [2,21,2,27],\n 2023: [2,27,3,5],\n 2024: [3,4,3,10],\n 2025: [3,10,3,16],\n 2026: [2,2,2,8],\n 2027: [2,8,2,14],\n 2028: [2,21,2,27],\n },\n ]\n },\n \"Semily\": {\n \"_state_code\": \"li-sm\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [3,9,3,15],\n 2021: [2,1,2,7],\n 2022: [2,14,2,20],\n 2023: [2,20,2,26],\n 2024: [2,26,3,3],\n 2025: [3,3,3,9],\n 2026: [3,9,3,15],\n 2027: [2,1,2,7],\n 2028: [2,14,2,20],\n },\n ]\n },\n \"Sokolov\": {\n \"_state_code\": \"ka-so\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,24,3,1],\n 2021: [3,1,3,7],\n 2022: [3,14,3,20],\n 2023: [2,6,2,12],\n 2024: [2,12,2,18],\n 2025: [2,17,2,23],\n 2026: [2,23,3,1],\n 2027: [3,1,3,7],\n 2028: [3,13,3,19],\n },\n ]\n },\n \"Strakonice\": {\n \"_state_code\": \"jc-st\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,3,2,9],\n 2021: [2,8,2,14],\n 2022: [2,21,2,27],\n 2023: [2,27,3,5],\n 2024: [3,4,3,10],\n 2025: [3,10,3,16],\n 2026: [2,2,2,8],\n 2027: [2,8,2,14],\n 2028: [2,21,2,27],\n },\n ]\n },\n \"Šumperk\": {\n \"_state_code\": \"ol-su\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,3,2,9],\n 2021: [2,8,2,14],\n 2022: [2,21,2,27],\n 2023: [2,27,3,5],\n 2024: [3,4,3,10],\n 2025: [3,10,3,16],\n 2026: [2,2,2,8],\n 2027: [2,8,2,14],\n 2028: [2,21,2,27],\n },\n ]\n },\n \"Svitavy\": {\n \"_state_code\": \"pa-sy\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,10,2,16],\n 2021: [2,15,2,21],\n 2022: [2,28,3,6],\n 2023: [3,6,3,12],\n 2024: [3,11,3,17],\n 2025: [2,3,2,9],\n 2026: [2,9,2,15],\n 2027: [2,15,2,21],\n 2028: [2,28,3,5],\n },\n ]\n },\n \"Tábor\": {\n \"_state_code\": \"jc-ta\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,3,2,9],\n 2021: [2,8,2,14],\n 2022: [2,21,2,27],\n 2023: [2,27,3,5],\n 2024: [3,4,3,10],\n 2025: [3,10,3,16],\n 2026: [2,2,2,8],\n 2027: [2,8,2,14],\n 2028: [2,21,2,27],\n },\n ]\n },\n \"Tachov\": {\n \"_state_code\": \"pl-tc\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,17,2,23],\n 2021: [2,22,2,28],\n 2022: [3,7,3,13],\n 2023: [3,13,3,19],\n 2024: [2,5,2,11],\n 2025: [2,10,2,16],\n 2026: [2,16,2,22],\n 2027: [2,22,2,28],\n 2028: [3,6,3,12],\n },\n ]\n },\n \"Teplice\": {\n \"_state_code\": \"us-tp\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [3,2,3,8],\n 2021: [3,8,3,14],\n 2022: [2,7,2,13],\n 2023: [2,13,2,19],\n 2024: [2,19,2,25],\n 2025: [2,24,3,2],\n 2026: [3,2,3,8],\n 2027: [3,8,3,14],\n 2028: [2,7,2,13],\n },\n ]\n },\n \"Třebíč\": {\n \"_state_code\": \"vy-tr\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [3,9,3,15],\n 2021: [2,1,2,7],\n 2022: [2,14,2,20],\n 2023: [2,20,2,26],\n 2024: [2,26,3,3],\n 2025: [3,3,3,9],\n 2026: [3,9,3,15],\n 2027: [2,1,2,7],\n 2028: [2,14,2,20],\n },\n ]\n },\n \"Trutnov\": {\n \"_state_code\": \"kr-tu\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,10,2,16],\n 2021: [2,15,2,21],\n 2022: [2,28,3,6],\n 2023: [3,6,3,12],\n 2024: [3,11,3,17],\n 2025: [2,3,2,9],\n 2026: [2,9,2,15],\n 2027: [2,15,2,21],\n 2028: [2,28,3,5],\n },\n ]\n },\n \"Uherské Hradiště\": {\n \"_state_code\": \"zl-uh\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [3,2,3,8],\n 2021: [3,8,3,14],\n 2022: [2,7,2,13],\n 2023: [2,13,2,19],\n 2024: [2,19,2,25],\n 2025: [2,24,3,2],\n 2026: [3,2,3,8],\n 2027: [3,8,3,14],\n 2028: [2,7,2,13],\n },\n ]\n },\n \"Ústí nad Labem\": {\n \"_state_code\": \"us-ul\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,3,2,9],\n 2021: [2,8,2,14],\n 2022: [2,21,2,27],\n 2023: [2,27,3,5],\n 2024: [3,4,3,10],\n 2025: [3,10,3,16],\n 2026: [2,2,2,8],\n 2027: [2,8,2,14],\n 2028: [2,21,2,27],\n },\n ]\n },\n \"Ústí nad Orlicí\": {\n \"_state_code\": \"pa-uo\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,10,2,16],\n 2021: [2,15,2,21],\n 2022: [2,28,3,6],\n 2023: [3,6,3,12],\n 2024: [3,11,3,17],\n 2025: [2,3,2,9],\n 2026: [2,9,2,15],\n 2027: [2,15,2,21],\n 2028: [2,28,3,5],\n },\n ]\n },\n \"Vsetín\": {\n \"_state_code\": \"zl-vs\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [3,2,3,8],\n 2021: [3,8,3,14],\n 2022: [2,7,2,13],\n 2023: [2,13,2,19],\n 2024: [2,19,2,25],\n 2025: [2,24,3,2],\n 2026: [3,2,3,8],\n 2027: [3,8,3,14],\n 2028: [2,7,2,13],\n },\n ]\n },\n \"Vyškov\": {\n \"_state_code\": \"jm-vy\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,17,2,23],\n 2021: [2,22,2,28],\n 2022: [3,7,3,13],\n 2023: [3,13,3,19],\n 2024: [2,5,2,11],\n 2025: [2,10,2,16],\n 2026: [2,16,2,22],\n 2027: [2,22,2,28],\n 2028: [3,6,3,12],\n },\n ]\n },\n \"Žďár nad Sázavou\": {\n \"_state_code\": \"vy-zr\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [3,9,3,15],\n 2021: [2,1,2,7],\n 2022: [2,14,2,20],\n 2023: [2,20,2,26],\n 2024: [2,26,3,3],\n 2025: [3,3,3,9],\n 2026: [3,9,3,15],\n 2027: [2,1,2,7],\n 2028: [2,14,2,20],\n },\n ]\n },\n \"Zlín\": {\n \"_state_code\": \"zl-zl\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [3,2,3,8],\n 2021: [3,8,3,14],\n 2022: [2,7,2,13],\n 2023: [2,13,2,19],\n 2024: [2,19,2,25],\n 2025: [2,24,3,2],\n 2026: [3,2,3,8],\n 2027: [3,8,3,14],\n 2028: [2,7,2,13],\n },\n ]\n },\n \"Znojmom\": {\n \"_state_code\": \"jm-zn\",\n SH: [\n {\n name: \"Jarní prázdniny\",\n 2020: [2,17,2,23],\n 2021: [2,22,2,28],\n 2022: [3,7,3,13],\n 2023: [3,13,3,19],\n 2024: [2,5,2,11],\n 2025: [2,10,2,16],\n 2026: [2,16,2,22],\n 2027: [2,22,2,28],\n 2028: [3,6,3,12],\n },\n ]\n }\n};\n\nexport const de = {\n PH: [{\"name\":\"Neujahr\",\"fixed_date\":[1,1]},{\"name\":\"Heilige Drei Könige\",\"fixed_date\":[1,6],\"only_states\":[\"Baden-Württemberg\",\"Bayern\",\"Sachsen-Anhalt\"]},{\"name\":\"Internationaler Frauentag\",\"fixed_date\":[3,8],\"only_states\":[\"Berlin\",\"Mecklenburg-Vorpommern\"]},{\"name\":\"Karfreitag\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Ostersonntag\",\"variable_date\":\"easter\",\"only_states\":[\"Brandenburg\"]},{\"name\":\"Ostermontag\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Maifeiertag\",\"fixed_date\":[5,1]},{\"name\":\"Christi Himmelfahrt\",\"variable_date\":\"easter\",\"offset\":39},{\"name\":\"Pfingstsonntag\",\"variable_date\":\"easter\",\"offset\":49,\"only_states\":[\"Brandenburg\"]},{\"name\":\"Pfingstmontag\",\"variable_date\":\"easter\",\"offset\":50},{\"name\":\"Fronleichnam\",\"variable_date\":\"easter\",\"offset\":60,\"only_states\":[\"Baden-Württemberg\",\"Bayern\",\"Hessen\",\"Nordrhein-Westfalen\",\"Rheinland-Pfalz\",\"Saarland\"]},{\"name\":\"75-jähriges Jubiläum des Volksaufstands in der DDR\",\"fixed_date\":[6,17],\"year\":2028,\"only_states\":[\"Berlin\"]},{\"name\":\"Augsburger Friedensfest\",\"fixed_date\":[8,8],\"only_states\":[\"Bayern\"]},{\"name\":\"Mariä Himmelfahrt\",\"fixed_date\":[8,15],\"only_states\":[\"Bayern\",\"Saarland\"]},{\"name\":\"Weltkindertag\",\"fixed_date\":[9,20],\"only_states\":[\"Thüringen\"]},{\"name\":\"Tag der Deutschen Einheit\",\"fixed_date\":[10,3]},{\"name\":\"Reformationstag\",\"fixed_date\":[10,31],\"only_states\":[\"Brandenburg\",\"Bremen\",\"Hamburg\",\"Mecklenburg-Vorpommern\",\"Niedersachsen\",\"Sachsen\",\"Sachsen-Anhalt\",\"Schleswig-Holstein\",\"Thüringen\"]},{\"name\":\"Allerheiligen\",\"fixed_date\":[11,1],\"only_states\":[\"Baden-Württemberg\",\"Bayern\",\"Nordrhein-Westfalen\",\"Rheinland-Pfalz\",\"Saarland\"]},{\"name\":\"Buß- und Bettag\",\"variable_date\":\"nextWednesday16Nov\",\"only_states\":[\"Sachsen\"]},{\"name\":\"1. Weihnachtstag\",\"fixed_date\":[12,25]},{\"name\":\"2. Weihnachtstag\",\"fixed_date\":[12,26]}],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=49.5487&lon=9.8160&zoom=18&addressdetails=1&accept-language=de,en\",\n \"Baden-Württemberg\": {\n \"_state_code\": \"bw\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Deutschland&state=Baden-W%C3%BCrttemberg&zoom=18&addressdetails=1&limit=1&accept-language=de,en\",\n SH: [\n {\n name: \"Osterferien\",\n 2012: [4,2,4,13],\n 2013: [3,25,4,5],\n 2014: [4,14,4,25],\n 2015: [3,30,4,10],\n 2016: [3,29,4,2],\n 2017: [4,10,4,21],\n 2018: [3,26,4,6],\n 2019: [4,15,4,27],\n 2020: [4,6,4,18],\n 2021: [4,6,4,10],\n 2022: [4,19,4,23],\n 2023: [4,11,4,15],\n 2024: [3,23,4,5],\n 2025: [4,14,4,26],\n 2026: [3,30,4,11],\n 2027: [3,30,4,3],\n 2028: [4,18,4,22],\n 2029: [3,26,4,7],\n 2030: [4,15,4,26],\n },\n {\n name: \"Pfingstferien\",\n 2012: [5,29,6,9],\n 2013: [5,21,6,1],\n 2014: [6,10,6,21],\n 2015: [5,26,6,6],\n 2016: [5,17,5,28],\n 2017: [6,6,6,16],\n 2018: [5,22,6,2],\n 2019: [6,11,6,21],\n 2020: [6,2,6,13],\n 2021: [5,25,6,5],\n 2022: [6,7,6,18],\n 2023: [5,30,6,9],\n 2024: [5,21,5,31],\n 2025: [6,10,6,20],\n 2026: [5,26,6,5],\n 2027: [5,18,5,29],\n 2028: [6,6,6,17],\n 2029: [5,22,6,1],\n 2030: [6,11,6,21],\n },\n {\n name: \"Sommerferien\",\n 2012: [7,26,9,8],\n 2013: [7,25,9,7],\n 2014: [7,31,9,13],\n 2015: [7,30,9,12],\n 2016: [7,28,9,10],\n 2017: [7,27,9,9],\n 2018: [7,26,9,8],\n 2019: [7,29,9,10],\n 2020: [7,30,9,12],\n 2021: [7,29,9,11],\n 2022: [7,28,9,10],\n 2023: [7,27,9,9],\n 2024: [7,25,9,7],\n 2025: [7,31,9,13],\n 2026: [7,30,9,12],\n 2027: [7,29,9,11],\n 2028: [7,27,9,9],\n 2029: [7,26,9,8],\n 2030: [7,25,9,7],\n },\n {\n name: \"Herbstferien\",\n 2012: [10,29,11,2],\n 2013: [10,28,10,30],\n 2014: [10,27,10,30],\n 2015: [11,2,11,6],\n 2016: [11,2,11,4],\n 2017: [10,30,11,3],\n 2018: [10,29,11,2],\n 2019: [10,28,10,30],\n 2020: [10,26,10,30],\n 2021: [11,2,11,6],\n 2022: [11,2,11,4],\n 2023: [10,30,11,3],\n 2024: [10,28,10,30],\n 2025: [10,27,10,30],\n 2026: [10,26,10,30],\n 2027: [11,2,11,6],\n 2028: [10,30,11,3],\n 2029: [10,29,11,2],\n },\n {\n name: \"Weihnachtsferien\",\n 2011: [12,23,1,5],\n 2012: [12,24,1,5],\n 2013: [12,23,1,4],\n 2014: [12,22,1,5],\n 2015: [12,23,1,9],\n 2016: [12,23,1,7],\n 2017: [12,22,1,5],\n 2018: [12,24,1,5],\n 2019: [12,23,1,4],\n 2020: [12,23,1,9],\n 2021: [12,23,1,8],\n 2022: [12,21,1,7],\n 2023: [12,23,1,5],\n 2024: [12,23,1,4],\n 2025: [12,22,1,5],\n 2026: [12,23,1,9],\n 2027: [12,23,1,8],\n 2028: [12,23,1,5],\n 2029: [12,22,1,5],\n },\n {\n name: \"Reformationsfest\",\n 2022: [10,31,10,31],\n 2024: [10,31,10,31],\n 2025: [10,31,10,31],\n 2026: [10,31,10,31],\n },\n {\n name: \"Gründonnerstag\",\n 2023: [4,6,4,6],\n 2027: [3,25,3,25],\n 2028: [4,13,4,13],\n },\n ]\n },\n \"Bayern\": {\n \"_state_code\": \"by\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Deutschland&state=Bayern&zoom=18&addressdetails=1&limit=1&accept-language=de,en\",\n SH: [\n {\n name: \"Winterferien\",\n 2012: [2,20,2,24],\n 2013: [2,11,2,15],\n 2014: [3,3,3,7],\n 2015: [2,16,2,20],\n 2016: [2,8,2,12],\n 2017: [2,27,3,3],\n 2018: [2,12,2,16],\n 2019: [3,4,3,8],\n },\n {\n name: \"Osterferien\",\n 2012: [4,2,4,14],\n 2013: [3,25,4,6],\n 2014: [4,14,4,26],\n 2015: [3,30,4,11],\n 2016: [3,21,4,1],\n 2017: [4,10,4,22],\n 2018: [3,26,4,7],\n 2019: [4,15,4,27],\n 2020: [4,6,4,18],\n 2021: [3,29,4,10],\n 2022: [4,11,4,23],\n 2023: [4,3,4,15],\n 2024: [3,25,4,6],\n 2025: [4,14,4,25],\n 2026: [3,30,4,10],\n 2027: [3,22,4,2],\n 2028: [4,10,4,21],\n 2029: [3,26,4,6],\n 2030: [4,15,4,26],\n },\n {\n name: \"Pfingstferien\",\n 2012: [5,29,6,9],\n 2013: [5,21,5,31],\n 2014: [6,10,6,21],\n 2015: [5,26,6,5],\n 2016: [5,17,5,28],\n 2017: [6,6,6,16],\n 2018: [5,22,6,2],\n 2019: [6,11,6,21],\n 2020: [6,2,6,13],\n 2021: [5,25,6,4],\n 2022: [6,7,6,18],\n 2023: [5,30,6,9],\n 2024: [5,21,6,1],\n 2025: [6,10,6,20],\n 2026: [5,26,6,5],\n 2027: [5,18,5,28],\n 2028: [6,6,6,16],\n 2029: [5,22,6,1],\n 2030: [6,11,6,21],\n },\n {\n name: \"Sommerferien\",\n 2012: [8,1,9,12],\n 2013: [7,31,9,11],\n 2014: [7,30,9,15],\n 2015: [8,1,9,14],\n 2016: [7,30,9,12],\n 2017: [7,29,9,11],\n 2018: [7,30,9,10],\n 2019: [7,29,9,9],\n 2020: [7,27,9,7],\n 2021: [7,30,9,13],\n 2022: [8,1,9,12],\n 2023: [7,31,9,11],\n 2024: [7,29,9,9],\n 2025: [8,1,9,15],\n 2026: [8,3,9,14],\n 2027: [8,2,9,13],\n 2028: [7,31,9,11],\n 2029: [7,30,9,10],\n 2030: [7,29,9,9],\n },\n {\n name: \"Herbstferien\",\n 2012: [10,29,11,3],\n 2013: [10,28,10,31],\n 2014: [11,19,11,19],\n 2015: [11,18,11,18],\n 2016: [11,16,11,16],\n 2017: [11,22,11,22],\n 2018: [11,21,11,21],\n 2019: [11,20,11,20],\n 2020: [10,31,11,6],\n 2021: [11,2,11,5],\n 2022: [10,31,11,4],\n 2023: [10,30,11,4],\n 2024: [10,28,10,31],\n 2025: [11,3,11,7],\n 2026: [11,2,11,6],\n 2027: [11,2,11,5],\n 2028: [10,30,11,3],\n 2029: [10,29,11,2],\n },\n {\n name: \"Weihnachtsferien\",\n 2011: [12,27,1,5],\n 2012: [12,24,1,5],\n 2013: [12,23,1,4],\n 2014: [12,24,1,5],\n 2015: [12,24,1,5],\n 2016: [12,24,1,5],\n 2017: [12,23,1,5],\n 2018: [12,22,1,5],\n 2019: [12,23,1,4],\n 2020: [12,23,1,9],\n 2021: [12,24,1,8],\n 2022: [12,24,1,7],\n 2023: [12,23,1,5],\n 2024: [12,23,1,3],\n 2025: [12,22,1,5],\n 2026: [12,24,1,8],\n 2027: [12,24,1,7],\n 2028: [12,23,1,5],\n 2029: [12,24,1,4],\n },\n {\n name: \"Frühjahrsferien\",\n 2020: [2,24,2,28],\n 2022: [2,28,3,4],\n 2023: [2,20,2,24],\n 2024: [2,12,2,16],\n 2025: [3,3,3,7],\n 2026: [2,16,2,20],\n 2027: [2,8,2,12],\n 2028: [2,28,3,3],\n 2029: [2,12,2,16],\n 2030: [3,4,3,8],\n },\n {\n name: \"Buß- und Bettag\",\n 2020: [11,18,11,18],\n 2021: [11,17,11,17],\n 2022: [11,16,11,16],\n 2023: [11,22,11,22],\n 2024: [11,20,11,20],\n 2025: [11,19,11,19],\n 2026: [11,18,11,18],\n 2027: [11,17,11,17],\n 2028: [11,22,11,22],\n 2029: [11,21,11,21],\n 2030: [11,20,11,20],\n },\n ]\n },\n \"Berlin\": {\n \"_state_code\": \"be\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Deutschland&state=Berlin&zoom=18&addressdetails=1&limit=1&accept-language=de,en\",\n SH: [\n {\n name: \"Winterferien\",\n 2012: [1,30,2,4],\n 2013: [2,4,2,9],\n 2014: [2,3,2,8],\n 2015: [2,2,2,7],\n 2016: [2,1,2,6],\n 2017: [1,30,2,3],\n 2018: [2,5,2,10],\n 2019: [2,4,2,9],\n 2020: [2,3,2,8],\n 2021: [2,1,2,6],\n 2022: [1,30,2,4],\n 2023: [1,30,2,4],\n 2024: [2,5,2,10],\n 2025: [2,3,2,8],\n 2026: [2,2,2,7],\n 2027: [2,1,2,6],\n 2028: [1,31,2,5],\n 2029: [1,29,2,3],\n 2030: [2,4,2,9],\n },\n {\n name: \"Osterferien\",\n 2012: [4,30,4,30],\n 2013: [3,25,4,6],\n 2014: [5,2,5,2],\n 2015: [3,30,4,11],\n 2016: [3,21,4,2],\n 2017: [4,10,4,18],\n 2018: [3,26,4,6],\n 2019: [4,15,4,26],\n 2020: [4,6,4,17],\n 2021: [3,29,4,10],\n 2022: [4,11,4,23],\n 2023: [4,3,4,14],\n 2024: [3,25,4,5],\n 2025: [4,14,4,25],\n 2026: [3,30,4,10],\n 2027: [3,22,4,2],\n 2028: [4,10,4,22],\n 2029: [3,26,4,6],\n 2030: [4,15,4,26],\n },\n {\n name: \"Pfingstferien\",\n 2012: [5,18,5,18],\n 2013: [5,21,5,21],\n 2014: [5,30,5,30],\n 2015: [5,26,5,26],\n 2016: [5,17,5,18],\n 2017: [6,6,6,9],\n 2018: [5,22,5,22],\n 2019: [6,11,6,11],\n 2022: [6,7,6,7],\n 2023: [5,30,5,30],\n 2025: [6,10,6,10],\n 2026: [5,26,5,26],\n 2027: [5,18,5,19],\n 2028: [6,1,6,2],\n 2029: [5,22,5,25],\n 2030: [6,7,6,7],\n },\n {\n name: \"Sommerferien\",\n 2012: [6,20,8,3],\n 2013: [6,19,8,2],\n 2014: [7,9,8,22],\n 2015: [7,16,8,28],\n 2016: [7,21,9,2],\n 2017: [7,20,9,1],\n 2018: [7,5,8,17],\n 2019: [6,20,8,2],\n 2020: [6,25,8,7],\n 2021: [6,24,8,6],\n 2022: [7,7,8,18],\n 2023: [7,13,8,25],\n 2024: [7,18,8,30],\n 2025: [7,24,9,6],\n 2026: [7,9,8,22],\n 2027: [7,1,8,14],\n 2028: [7,1,8,12],\n 2029: [7,1,8,11],\n 2030: [7,4,8,17],\n },\n {\n name: \"Herbstferien\",\n 2012: [10,1,10,13],\n 2013: [9,30,10,12],\n 2014: [10,20,11,1],\n 2015: [10,19,10,31],\n 2016: [10,17,10,28],\n 2017: [10,23,11,4],\n 2018: [10,22,11,2],\n 2019: [10,7,10,19],\n 2020: [10,12,10,24],\n 2021: [10,11,10,23],\n 2022: [10,24,11,5],\n 2023: [10,23,11,4],\n 2024: [10,21,11,2],\n 2025: [10,20,11,1],\n 2026: [10,19,10,31],\n 2027: [10,11,10,23],\n 2028: [10,2,10,14],\n 2029: [10,1,10,12],\n },\n {\n name: \"Weihnachtsferien\",\n 2011: [12,23,1,3],\n 2012: [12,24,1,4],\n 2013: [12,23,1,3],\n 2014: [12,22,1,2],\n 2015: [12,23,1,2],\n 2016: [12,23,1,3],\n 2017: [12,21,1,2],\n 2018: [12,22,1,5],\n 2019: [12,23,1,4],\n 2020: [12,21,1,2],\n 2021: [12,23,12,31],\n 2022: [12,22,1,2],\n 2023: [12,23,1,5],\n 2024: [12,23,12,31],\n 2025: [12,22,1,2],\n 2026: [12,23,1,2],\n 2027: [12,22,12,31],\n 2028: [12,22,1,2],\n 2029: [12,21,1,4],\n },\n {\n name: \"Unterrichtsfreier Tag\",\n 2020: [5,22,5,22],\n 2021: [5,14,5,14],\n 2022: [5,27,5,27],\n 2023: [10,2,10,2],\n 2024: [10,4,10,4],\n 2025: [5,30,5,30],\n 2026: [5,15,5,15],\n 2027: [5,7,5,7],\n 2028: [5,26,5,26],\n 2029: [5,11,5,11],\n 2030: [5,31,5,31],\n },\n ]\n },\n \"Brandenburg\": {\n \"_state_code\": \"bb\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Deutschland&state=Brandenburg&zoom=18&addressdetails=1&limit=1&accept-language=de,en\",\n SH: [\n {\n name: \"Winterferien\",\n 2012: [1,30,2,4],\n 2013: [2,4,2,9],\n 2014: [2,3,2,8],\n 2015: [2,2,2,7],\n 2016: [2,1,2,6],\n 2017: [1,30,2,4],\n 2018: [2,5,2,10],\n 2019: [2,4,2,9],\n 2020: [2,3,2,8],\n 2021: [2,1,2,6],\n 2022: [1,31,2,5],\n 2023: [1,30,2,3],\n 2024: [2,5,2,9],\n 2025: [2,3,2,8],\n 2026: [2,2,2,7],\n 2027: [2,1,2,6],\n 2028: [1,31,2,5],\n 2029: [1,29,2,3],\n 2030: [2,4,2,9],\n },\n {\n name: \"Osterferien\",\n 2012: [4,30,4,30],\n 2013: [3,27,4,6],\n 2014: [5,2,5,2],\n 2015: [4,1,4,11],\n 2016: [3,23,4,2],\n 2017: [4,10,4,22],\n 2018: [3,26,4,6],\n 2019: [4,15,4,26],\n 2020: [4,6,4,17],\n 2021: [3,29,4,9],\n 2022: [4,11,4,24],\n 2023: [4,3,4,14],\n 2024: [3,25,4,5],\n 2025: [4,14,4,25],\n 2026: [3,30,4,10],\n 2027: [3,22,4,3],\n 2028: [4,10,4,22],\n 2029: [3,26,4,6],\n 2030: [4,15,4,26],\n },\n {\n name: \"Pfingstferien\",\n 2012: [5,18,5,18],\n 2013: [5,10,5,10],\n 2014: [5,30,5,30],\n 2015: [5,15,5,15],\n 2016: [5,17,5,17],\n 2017: [5,26,5,26],\n 2018: [5,11,5,11],\n 2019: [5,31,5,31],\n 2025: [6,10,6,10],\n 2026: [5,26,5,26],\n 2027: [5,18,5,18],\n 2029: [5,22,5,22],\n },\n {\n name: \"Sommerferien\",\n 2012: [6,21,8,3],\n 2013: [6,20,8,2],\n 2014: [7,10,8,22],\n 2015: [7,16,8,28],\n 2016: [7,21,9,3],\n 2017: [7,20,9,1],\n 2018: [7,5,8,18],\n 2019: [6,20,8,3],\n 2020: [6,25,8,8],\n 2021: [6,24,8,7],\n 2022: [7,7,8,20],\n 2023: [7,13,8,26],\n 2024: [7,18,8,31],\n 2025: [7,24,9,6],\n 2026: [7,9,8,22],\n 2027: [7,1,8,14],\n 2028: [6,29,8,12],\n 2029: [6,28,8,11],\n 2030: [7,4,8,17],\n },\n {\n name: \"Herbstferien\",\n 2012: [10,1,10,13],\n 2013: [11,1,11,1],\n 2014: [10,20,11,1],\n 2015: [10,19,10,30],\n 2016: [10,17,10,28],\n 2017: [10,23,11,4],\n 2018: [10,22,11,2],\n 2019: [11,1,11,1],\n 2020: [10,12,10,24],\n 2021: [10,11,10,23],\n 2022: [10,24,11,5],\n 2023: [10,23,11,4],\n 2024: [10,21,11,2],\n 2025: [10,20,11,1],\n 2026: [10,19,10,30],\n 2027: [10,11,10,23],\n 2028: [10,2,10,14],\n 2029: [10,1,10,12],\n },\n {\n name: \"Weihnachtsferien\",\n 2011: [12,23,1,3],\n 2012: [12,24,1,4],\n 2013: [12,23,1,3],\n 2014: [12,22,1,2],\n 2015: [12,23,1,2],\n 2016: [12,23,1,3],\n 2017: [12,21,1,2],\n 2018: [12,21,1,5],\n 2019: [12,23,1,3],\n 2020: [12,21,1,2],\n 2021: [12,23,12,31],\n 2022: [12,22,1,3],\n 2023: [12,23,1,5],\n 2024: [12,23,12,31],\n 2025: [12,22,1,2],\n 2026: [12,23,1,2],\n 2027: [12,23,12,31],\n 2028: [12,22,1,2],\n 2029: [12,21,1,4],\n },\n {\n name: \"Variabler Ferientag\",\n 2020: [5,22,5,22],\n 2021: [5,14,5,14],\n 2022: [5,27,5,27],\n 2023: [10,2,10,2],\n 2024: [10,4,10,4],\n 2025: [5,30,5,30],\n 2026: [5,15,5,15],\n 2027: [5,7,5,7],\n 2028: [10,30,10,30],\n 2029: [5,11,5,11],\n 2030: [5,31,5,31],\n },\n ]\n },\n \"Bremen\": {\n \"_state_code\": \"hb\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Deutschland&state=Bremen&zoom=18&addressdetails=1&limit=1&accept-language=de,en\",\n SH: [\n {\n name: \"Winterferien\",\n 2012: [1,30,1,31],\n 2013: [1,31,2,1],\n 2014: [1,30,1,31],\n 2015: [2,2,2,3],\n 2016: [1,28,1,29],\n 2017: [1,30,1,31],\n 2018: [2,1,2,2],\n 2019: [1,31,2,1],\n },\n {\n name: \"Halbjahresferien\",\n 2021: [2,1,2,2],\n 2022: [1,31,2,1],\n 2023: [1,30,1,31],\n 2024: [2,1,2,2],\n 2025: [2,3,2,4],\n 2026: [2,2,2,3],\n 2027: [2,1,2,2],\n 2028: [1,31,2,1],\n 2029: [2,1,2,2],\n 2030: [1,31,2,1],\n },\n {\n name: \"Osterferien\",\n 2012: [4,30,4,30],\n 2013: [3,16,4,2],\n 2014: [5,2,5,2],\n 2015: [3,25,4,10],\n 2016: [3,18,4,2],\n 2017: [4,10,4,22],\n 2018: [3,19,4,3],\n 2019: [4,6,4,23],\n 2021: [3,27,4,10],\n 2022: [4,4,4,19],\n 2023: [3,27,4,11],\n 2024: [3,18,3,28],\n 2025: [4,7,4,19],\n 2026: [3,23,4,7],\n 2027: [3,22,4,3],\n 2028: [4,10,4,22],\n 2029: [3,19,4,3],\n 2030: [4,8,4,23],\n },\n {\n name: \"Kirchentag und Tag nach dem 1. Mai\",\n 2025: [4,30,5,2],\n },\n {\n name: \"Pfingstferien\",\n 2012: [5,29,5,29],\n 2013: [5,21,5,21],\n 2014: [6,10,6,10],\n 2015: [5,26,5,26],\n 2016: [5,17,5,17],\n 2017: [6,6,6,6],\n 2018: [5,22,5,22],\n 2019: [6,11,6,11],\n 2021: [5,25,5,25],\n 2022: [6,7,6,7],\n 2023: [5,30,5,30],\n 2024: [5,21,5,21],\n 2025: [6,10,6,10],\n 2026: [5,26,5,26],\n 2027: [5,18,5,18],\n 2028: [6,6,6,6],\n 2029: [5,22,5,22],\n 2030: [6,11,6,11],\n },\n {\n name: \"Tag nach Himmelfahrt\",\n 2021: [5,14,5,14],\n 2022: [5,27,5,27],\n 2023: [5,19,5,19],\n 2024: [5,10,5,10],\n 2025: [5,30,5,30],\n 2026: [5,15,5,15],\n 2027: [5,7,5,7],\n 2028: [5,26,5,26],\n 2029: [5,11,5,11],\n 2030: [5,31,5,31],\n },\n {\n name: \"Sommerferien\",\n 2012: [7,23,8,31],\n 2013: [6,27,8,7],\n 2014: [7,31,9,10],\n 2015: [7,23,9,2],\n 2016: [6,23,8,3],\n 2017: [6,22,8,2],\n 2018: [6,28,8,8],\n 2019: [7,4,8,14],\n 2020: [7,16,8,26],\n 2021: [7,22,9,1],\n 2022: [7,14,8,24],\n 2023: [7,6,8,16],\n 2024: [6,24,8,2],\n 2025: [7,3,8,13],\n 2026: [7,2,8,12],\n 2027: [7,8,8,18],\n 2028: [7,20,8,30],\n 2029: [7,19,8,29],\n 2030: [7,11,8,21],\n },\n {\n name: \"Tag vor dem 3. Oktober\",\n 2023: [10,2,10,2],\n 2028: [10,2,10,2],\n },\n {\n name: \"Herbstferien\",\n 2012: [10,22,11,3],\n 2013: [10,4,10,18],\n 2014: [10,27,11,8],\n 2015: [10,19,10,31],\n 2016: [10,4,10,15],\n 2017: [10,30,10,30],\n 2018: [10,1,10,13],\n 2019: [10,4,10,18],\n 2020: [10,12,10,24],\n 2021: [10,18,10,30],\n 2022: [10,17,10,29],\n 2023: [10,16,10,30],\n 2024: [10,4,10,19],\n 2025: [10,13,10,25],\n 2026: [10,12,10,24],\n 2027: [10,18,10,30],\n 2028: [10,23,11,4],\n 2029: [10,22,11,2],\n },\n {\n name: \"Tag nach dem Reformationstag\",\n 2024: [11,1,11,1],\n },\n {\n name: \"Weihnachtsferien\",\n 2011: [12,23,1,4],\n 2012: [12,24,1,5],\n 2013: [12,23,1,3],\n 2014: [12,22,1,5],\n 2015: [12,23,1,6],\n 2016: [12,21,1,6],\n 2017: [12,22,1,6],\n 2018: [12,24,1,4],\n 2019: [12,21,1,6],\n 2020: [12,23,1,8],\n 2021: [12,23,1,8],\n 2022: [12,23,1,6],\n 2023: [12,23,1,5],\n 2024: [12,23,1,4],\n 2025: [12,22,1,5],\n 2026: [12,23,1,9],\n 2027: [12,23,1,8],\n 2028: [12,27,1,6],\n 2029: [12,21,1,5],\n },\n {\n name: \"Tag vor dem 1. Mai\",\n 2029: [4,30,4,30],\n },\n {\n name: \"Tage nach dem 3. Oktober\",\n 2029: [10,4,10,5],\n },\n ]\n },\n \"Hamburg\": {\n \"_state_code\": \"hh\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Deutschland&state=Hamburg&zoom=18&addressdetails=1&limit=1&accept-language=de,en\",\n SH: [\n {\n name: \"Winterferien\",\n 2012: [1,30,1,30],\n 2013: [2,1,2,1],\n 2014: [1,31,1,31],\n 2015: [1,30,1,30],\n 2016: [1,29,1,29],\n 2017: [1,30,1,30],\n 2018: [2,2,2,2],\n 2019: [2,1,2,1],\n },\n {\n name: \"Osterferien\",\n 2012: [3,5,3,16],\n 2013: [3,4,3,15],\n 2014: [3,3,3,14],\n 2015: [3,2,3,13],\n 2016: [3,7,3,18],\n 2017: [3,6,3,17],\n 2018: [4,30,4,30],\n 2019: [3,4,3,15],\n },\n {\n name: \"Pfingstferien\",\n 2012: [5,18,5,18],\n 2013: [5,2,5,10],\n 2014: [5,30,5,30],\n 2015: [5,11,5,15],\n 2016: [5,17,5,20],\n 2017: [5,22,5,26],\n 2018: [5,7,5,11],\n 2019: [5,31,5,31],\n 2020: [5,18,5,22],\n 2021: [5,10,5,14],\n 2022: [5,23,5,27],\n 2023: [5,15,5,19],\n 2024: [5,21,5,24],\n 2025: [5,26,5,30],\n 2026: [5,11,5,15],\n 2027: [5,7,5,14],\n 2028: [5,22,5,26],\n 2029: [5,11,5,18],\n 2030: [5,20,5,24],\n },\n {\n name: \"Sommerferien\",\n 2012: [6,21,8,1],\n 2013: [6,20,7,31],\n 2014: [7,10,8,20],\n 2015: [7,16,8,26],\n 2016: [7,21,8,31],\n 2017: [7,20,8,30],\n 2018: [7,5,8,15],\n 2019: [6,27,8,7],\n 2020: [6,25,8,5],\n 2021: [6,24,8,4],\n 2022: [7,7,8,17],\n 2023: [7,13,8,23],\n 2024: [7,18,8,28],\n 2025: [7,24,9,3],\n 2026: [7,9,8,19],\n 2027: [7,1,8,11],\n 2028: [7,3,8,11],\n 2029: [7,2,8,10],\n 2030: [7,4,8,14],\n },\n {\n name: \"Herbstferien\",\n 2012: [10,1,10,12],\n 2013: [9,30,10,11],\n 2014: [10,13,10,24],\n 2015: [10,19,10,30],\n 2016: [10,17,10,28],\n 2017: [10,16,10,27],\n 2018: [10,1,10,12],\n 2019: [10,4,10,18],\n 2020: [10,5,10,16],\n 2021: [10,4,10,15],\n 2022: [10,10,10,21],\n 2023: [10,16,10,27],\n 2024: [10,21,11,1],\n 2025: [10,20,10,31],\n 2026: [10,19,10,30],\n 2027: [10,11,10,22],\n 2028: [10,2,10,13],\n 2029: [10,1,10,12],\n },\n {\n name: \"Weihnachtsferien\",\n 2011: [12,27,1,6],\n 2012: [12,21,1,4],\n 2013: [12,19,1,3],\n 2014: [12,22,1,6],\n 2015: [12,21,1,1],\n 2016: [12,27,1,6],\n 2017: [12,22,1,5],\n 2018: [12,20,1,4],\n 2019: [12,20,1,3],\n 2020: [12,21,1,4],\n 2021: [12,23,1,4],\n 2022: [12,23,1,6],\n 2023: [12,22,1,5],\n 2024: [12,20,1,3],\n 2025: [12,17,1,2],\n 2026: [12,21,1,1],\n 2027: [12,20,12,31],\n 2028: [12,18,12,29],\n 2029: [12,21,1,4],\n },\n {\n name: \"Halbjahrespause\",\n 2020: [1,31,1,31],\n 2021: [1,29,1,29],\n 2022: [1,28,1,28],\n 2023: [1,27,1,27],\n 2024: [2,2,2,2],\n 2025: [1,31,1,31],\n 2026: [1,30,1,30],\n 2027: [1,29,1,29],\n 2028: [1,28,1,28],\n 2029: [2,2,2,2],\n 2030: [2,1,2,1],\n },\n {\n name: \"Frühjahrsferien\",\n 2020: [3,2,3,13],\n 2021: [3,1,3,12],\n 2022: [3,7,3,18],\n 2023: [3,6,3,17],\n 2024: [3,18,3,28],\n 2025: [3,10,3,21],\n 2026: [3,2,3,13],\n 2027: [3,1,3,12],\n 2028: [3,6,3,17],\n 2029: [3,5,3,16],\n 2030: [3,4,3,15],\n },\n {\n name: \"Brückentag\",\n 2023: [10,2,10,2],\n 2024: [10,4,10,4],\n 2025: [5,2,5,2],\n 2028: [10,30,10,30],\n 2030: [5,31,5,31],\n },\n ]\n },\n \"Hessen\": {\n \"_state_code\": \"he\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Deutschland&state=Hessen&zoom=18&addressdetails=1&limit=1&accept-language=de,en\",\n SH: [\n {\n name: \"Osterferien\",\n 2012: [4,2,4,14],\n 2013: [3,25,4,6],\n 2014: [4,14,4,26],\n 2015: [3,30,4,11],\n 2016: [3,29,4,9],\n 2017: [4,3,4,15],\n 2018: [3,26,4,7],\n 2019: [4,14,4,27],\n 2020: [4,6,4,18],\n 2021: [4,6,4,16],\n 2022: [4,11,4,23],\n 2023: [4,3,4,22],\n 2024: [3,25,4,13],\n 2025: [4,7,4,21],\n 2026: [3,30,4,10],\n 2027: [3,22,4,2],\n 2028: [4,3,4,14],\n 2029: [3,29,4,13],\n 2030: [4,8,4,22],\n },\n {\n name: \"Sommerferien\",\n 2012: [7,2,8,10],\n 2013: [7,8,8,16],\n 2014: [7,28,9,5],\n 2015: [7,27,9,4],\n 2016: [7,18,8,26],\n 2017: [7,3,8,11],\n 2018: [6,25,8,3],\n 2019: [7,1,8,9],\n 2020: [7,6,8,14],\n 2021: [7,19,8,27],\n 2022: [7,25,9,2],\n 2023: [7,24,9,1],\n 2024: [7,15,8,23],\n 2025: [7,7,8,15],\n 2026: [6,29,8,7],\n 2027: [6,28,8,6],\n 2028: [7,3,8,11],\n 2029: [7,16,8,24],\n 2030: [7,22,8,30],\n },\n {\n name: \"Herbstferien\",\n 2012: [10,15,10,27],\n 2013: [10,14,10,26],\n 2014: [10,20,11,1],\n 2015: [10,19,10,31],\n 2016: [10,17,10,29],\n 2017: [10,9,10,21],\n 2018: [10,1,10,13],\n 2019: [9,30,10,12],\n 2020: [10,5,10,17],\n 2021: [10,11,10,23],\n 2022: [10,24,10,29],\n 2023: [10,23,10,28],\n 2024: [10,14,10,25],\n 2025: [10,6,10,18],\n 2026: [10,5,10,17],\n 2027: [10,4,10,16],\n 2028: [10,9,10,20],\n 2029: [10,15,10,26],\n },\n {\n name: \"Weihnachtsferien\",\n 2011: [12,21,1,6],\n 2012: [12,24,1,12],\n 2013: [12,23,1,11],\n 2014: [12,22,1,10],\n 2015: [12,23,1,9],\n 2016: [12,22,1,7],\n 2017: [12,24,1,13],\n 2018: [12,24,1,12],\n 2019: [12,23,1,11],\n 2020: [12,21,1,9],\n 2021: [12,23,1,8],\n 2022: [12,22,1,7],\n 2023: [12,27,1,13],\n 2024: [12,23,1,10],\n 2025: [12,22,1,10],\n 2026: [12,23,1,12],\n 2027: [12,23,1,11],\n 2028: [12,27,1,12],\n 2029: [12,24,1,11],\n },\n ]\n },\n \"Mecklenburg-Vorpommern\": {\n \"_state_code\": \"mv\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Deutschland&state=Mecklenburg-Vorpommern&zoom=18&addressdetails=1&limit=1&accept-language=de,en\"\n },\n \"MV-ABS\": {\n \"_state_code\": \"mv-abs\",\n SH: [\n {\n name: \"Winterferien\",\n 2012: [2,6,2,17],\n 2013: [2,4,2,15],\n 2014: [2,3,2,15],\n 2015: [2,2,2,14],\n 2016: [2,1,2,13],\n 2017: [2,6,2,18],\n 2018: [2,5,2,16],\n 2019: [2,4,2,15],\n 2020: [2,10,2,21],\n 2021: [2,6,2,18],\n 2022: [2,5,2,17],\n 2023: [2,6,2,18],\n 2024: [2,5,2,16],\n 2025: [2,3,2,14],\n 2026: [2,9,2,20],\n 2027: [2,8,2,19],\n 2028: [2,5,2,17],\n 2029: [2,5,2,16],\n 2030: [2,4,2,15],\n },\n {\n name: \"Osterferien\",\n 2012: [4,2,4,11],\n 2013: [3,25,4,3],\n 2014: [4,14,4,23],\n 2015: [3,30,4,8],\n 2016: [3,21,3,30],\n 2017: [4,10,4,19],\n 2018: [3,26,4,4],\n 2019: [4,15,4,24],\n 2020: [4,6,4,15],\n 2021: [3,29,4,7],\n 2022: [4,11,4,20],\n 2023: [4,3,4,12],\n 2024: [3,25,4,3],\n 2025: [4,14,4,23],\n 2026: [3,30,4,8],\n 2027: [3,24,4,2],\n 2028: [4,12,4,21],\n 2029: [3,28,4,6],\n 2030: [4,17,4,26],\n },\n {\n name: \"Pfingstferien\",\n 2012: [5,25,5,29],\n 2013: [5,17,5,21],\n 2014: [6,6,6,10],\n 2015: [5,22,5,26],\n 2016: [5,14,5,17],\n 2017: [6,2,6,6],\n 2018: [5,18,5,22],\n 2019: [6,7,6,11],\n 2020: [5,29,6,2],\n 2021: [5,21,5,25],\n 2022: [6,3,6,7],\n 2023: [5,26,5,30],\n 2024: [5,17,5,21],\n 2025: [6,6,6,10],\n 2026: [5,22,5,26],\n 2027: [5,14,5,18],\n 2028: [6,2,6,6],\n 2029: [5,18,5,22],\n 2030: [6,7,6,11],\n },\n {\n name: \"Sommerferien\",\n 2012: [6,23,8,4],\n 2013: [6,22,8,3],\n 2014: [7,14,8,23],\n 2015: [7,20,8,29],\n 2016: [7,25,9,3],\n 2017: [7,24,9,2],\n 2018: [7,9,8,18],\n 2019: [7,1,8,10],\n 2020: [6,22,8,1],\n 2021: [6,21,7,31],\n 2022: [7,4,8,13],\n 2023: [7,17,8,26],\n 2024: [7,22,8,31],\n 2025: [7,28,9,6],\n 2026: [7,13,8,22],\n 2027: [7,5,8,14],\n 2028: [6,26,8,5],\n 2029: [6,18,7,28],\n 2030: [7,1,8,10],\n },\n {\n name: \"Herbstferien\",\n 2012: [10,1,10,5],\n 2013: [10,14,10,19],\n 2014: [10,20,10,25],\n 2015: [10,24,10,30],\n 2016: [10,24,10,28],\n 2017: [10,23,10,30],\n 2018: [11,1,11,2],\n 2019: [11,1,11,1],\n 2020: [10,5,10,10],\n 2021: [10,2,10,9],\n 2022: [10,10,10,14],\n 2023: [10,9,10,14],\n 2024: [10,21,10,26],\n 2025: [10,20,10,24],\n 2026: [10,15,10,24],\n 2027: [10,14,10,23],\n 2028: [10,23,10,28],\n 2029: [10,22,10,27],\n },\n {\n name: \"Weihnachtsferien\",\n 2011: [12,23,1,3],\n 2012: [12,21,1,4],\n 2013: [12,23,1,3],\n 2014: [12,22,1,2],\n 2015: [12,21,1,2],\n 2016: [12,22,1,2],\n 2017: [12,21,1,3],\n 2018: [12,24,1,5],\n 2019: [12,23,1,4],\n 2020: [12,21,1,2],\n 2021: [12,22,12,31],\n 2022: [12,22,1,2],\n 2023: [12,21,1,3],\n 2024: [12,23,1,6],\n 2025: [12,20,1,3],\n 2026: [12,21,1,2],\n 2027: [12,22,1,4],\n 2028: [12,22,1,2],\n 2029: [12,21,1,4],\n },\n {\n name: \"Zusätzlicher Ferientag\",\n 2020: [11,3,11,3],\n 2021: [11,2,11,2],\n 2022: [11,2,11,2],\n 2023: [11,1,11,1],\n 2024: [11,1,11,1],\n 2025: [11,3,11,3],\n 2026: [11,27,11,27],\n 2027: [11,26,11,26],\n 2028: [10,30,10,30],\n 2029: [10,30,10,30],\n 2030: [5,31,5,31],\n },\n {\n name: \"Schulfrei\",\n 2021: [2,19,2,19],\n 2022: [2,18,2,18],\n 2028: [2,18,2,18],\n },\n ]\n },\n \"MV-BBS\": {\n \"_state_code\": \"mv-bbs\",\n SH: [\n {\n name: \"Winterferien\",\n 2020: [2,10,2,15],\n 2021: [2,5,2,13],\n 2022: [2,5,2,12],\n 2023: [2,6,2,11],\n 2024: [2,5,2,10],\n 2025: [2,3,2,8],\n 2026: [2,9,2,14],\n 2027: [2,8,2,13],\n 2028: [2,5,2,12],\n 2029: [2,5,2,10],\n 2030: [2,4,2,9],\n },\n {\n name: \"Osterferien\",\n 2020: [4,6,4,17],\n 2021: [3,29,4,9],\n 2022: [4,11,4,22],\n 2023: [4,3,4,15],\n 2024: [3,25,4,5],\n 2025: [4,14,4,25],\n 2026: [3,30,4,10],\n 2027: [3,22,4,2],\n 2028: [4,12,4,21],\n 2029: [3,28,4,6],\n 2030: [4,17,4,26],\n },\n {\n name: \"Sommerferien\",\n 2020: [7,13,8,29],\n 2021: [7,12,8,28],\n 2022: [7,11,8,27],\n 2023: [7,17,9,1],\n 2024: [7,15,8,31],\n 2025: [7,14,8,30],\n 2026: [7,13,8,29],\n 2027: [7,12,8,28],\n 2028: [7,17,9,2],\n 2029: [7,16,9,1],\n 2030: [7,15,8,31],\n },\n {\n name: \"Herbstferien\",\n 2020: [10,5,10,10],\n 2021: [10,2,10,9],\n 2022: [10,10,10,15],\n 2023: [10,9,10,14],\n 2024: [10,21,10,26],\n 2025: [10,20,10,25],\n 2026: [10,19,10,24],\n 2027: [10,16,10,23],\n 2028: [10,23,10,28],\n 2029: [10,22,10,27],\n },\n {\n name: \"Weihnachtsferien\",\n 2019: [12,23,1,4],\n 2020: [12,21,1,2],\n 2021: [12,22,1,3],\n 2022: [12,22,1,2],\n 2023: [12,21,1,3],\n 2024: [12,23,1,4],\n 2025: [12,22,1,3],\n 2026: [12,19,1,2],\n 2027: [12,22,12,31],\n 2028: [12,21,1,2],\n 2029: [12,21,1,4],\n },\n {\n name: \"Zusätzlicher Ferientag\",\n 2020: [5,22,5,22],\n 2021: [5,14,5,14],\n 2022: [10,28,10,28],\n 2023: [10,30,10,30],\n 2024: [11,1,11,1],\n 2025: [11,3,11,3],\n 2026: [11,27,11,27],\n 2027: [11,26,11,26],\n 2028: [10,30,10,30],\n 2029: [10,30,10,30],\n 2030: [5,31,5,31],\n },\n ]\n },\n \"Niedersachsen\": {\n \"_state_code\": \"ni\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Deutschland&state=Niedersachsen&zoom=18&addressdetails=1&limit=1&accept-language=de,en\",\n SH: [\n {\n name: \"Winterferien\",\n 2012: [1,30,1,31],\n 2013: [1,31,2,1],\n 2014: [1,30,1,31],\n 2015: [2,2,2,3],\n 2016: [1,28,1,29],\n 2017: [1,30,1,31],\n 2018: [2,1,2,2],\n 2019: [1,31,2,1],\n },\n {\n name: \"Halbjahresferien\",\n 2020: [2,3,2,4],\n 2021: [2,1,2,2],\n 2022: [1,31,2,1],\n 2023: [1,30,1,31],\n 2024: [2,1,2,2],\n 2025: [2,3,2,4],\n 2026: [2,2,2,3],\n 2027: [2,1,2,2],\n 2028: [1,31,2,1],\n 2029: [2,1,2,2],\n 2030: [1,31,2,1],\n },\n {\n name: \"Osterferien\",\n 2012: [4,30,4,30],\n 2013: [3,16,4,2],\n 2014: [5,2,5,2],\n 2015: [3,25,4,10],\n 2016: [3,18,4,2],\n 2017: [4,10,4,22],\n 2018: [3,19,4,3],\n 2019: [4,8,4,23],\n 2020: [3,30,4,14],\n 2021: [3,29,4,9],\n 2022: [4,4,4,19],\n 2023: [3,27,4,11],\n 2024: [3,18,3,28],\n 2025: [4,7,4,19],\n 2026: [3,23,4,7],\n 2027: [3,22,4,3],\n 2028: [4,10,4,22],\n 2029: [3,19,4,3],\n 2030: [4,8,4,23],\n },\n {\n name: \"Pfingstferien\",\n 2012: [5,29,5,29],\n 2013: [5,21,5,21],\n 2014: [6,10,6,10],\n 2015: [5,26,5,26],\n 2016: [5,17,5,17],\n 2017: [6,6,6,6],\n 2018: [5,22,5,22],\n 2019: [6,11,6,11],\n 2020: [6,2,6,2],\n 2021: [5,25,5,25],\n 2022: [6,7,6,7],\n 2023: [5,30,5,30],\n 2024: [5,21,5,21],\n 2025: [6,10,6,10],\n 2026: [5,26,5,26],\n 2027: [5,18,5,18],\n 2028: [6,6,6,6],\n 2029: [5,22,5,22],\n 2030: [6,11,6,11],\n },\n {\n name: \"Tag nach Himmelfahrt\",\n 2020: [5,22,5,22],\n 2021: [5,14,5,14],\n 2022: [5,27,5,27],\n 2023: [5,19,5,19],\n 2024: [5,10,5,10],\n 2025: [5,30,5,30],\n 2026: [5,15,5,15],\n 2027: [5,7,5,7],\n 2028: [5,26,5,26],\n 2029: [5,11,5,11],\n 2030: [5,31,5,31],\n },\n {\n name: \"Sommerferien\",\n 2012: [7,23,8,31],\n 2013: [6,27,8,7],\n 2014: [7,31,9,10],\n 2015: [7,23,9,2],\n 2016: [6,23,8,3],\n 2017: [6,22,8,2],\n 2018: [6,28,8,8],\n 2019: [7,4,8,14],\n 2020: [7,16,8,26],\n 2021: [7,22,9,1],\n 2022: [7,14,8,24],\n 2023: [7,6,8,16],\n 2024: [6,24,8,3],\n 2025: [7,3,8,13],\n 2026: [7,2,8,12],\n 2027: [7,8,8,18],\n 2028: [7,20,8,30],\n 2029: [7,19,8,29],\n 2030: [7,11,8,21],\n },\n {\n name: \"Tag vor dem 3. Oktober\",\n 2023: [10,2,10,2],\n 2028: [10,2,10,2],\n },\n {\n name: \"Herbstferien\",\n 2012: [10,22,11,3],\n 2013: [10,4,10,18],\n 2014: [10,27,11,8],\n 2015: [10,19,10,31],\n 2016: [10,4,10,15],\n 2017: [10,30,10,30],\n 2018: [10,1,10,12],\n 2019: [10,4,10,18],\n 2020: [10,12,10,23],\n 2021: [10,18,10,29],\n 2022: [10,17,10,28],\n 2023: [10,16,10,30],\n 2024: [10,4,10,19],\n 2025: [10,13,10,25],\n 2026: [10,12,10,24],\n 2027: [10,16,10,30],\n 2028: [10,23,11,4],\n 2029: [10,22,11,2],\n },\n {\n name: \"Tag nach dem Reformationstag\",\n 2024: [11,1,11,1],\n },\n {\n name: \"Weihnachtsferien\",\n 2011: [12,23,1,4],\n 2012: [12,24,1,5],\n 2013: [12,23,1,3],\n 2014: [12,22,1,5],\n 2015: [12,23,1,6],\n 2016: [12,21,1,6],\n 2017: [12,22,1,5],\n 2018: [12,24,1,4],\n 2019: [12,23,1,6],\n 2020: [12,23,1,8],\n 2021: [12,23,1,7],\n 2022: [12,23,1,6],\n 2023: [12,27,1,5],\n 2024: [12,23,1,4],\n 2025: [12,22,1,5],\n 2026: [12,23,1,9],\n 2027: [12,23,1,8],\n 2028: [12,27,1,6],\n 2029: [12,21,1,5],\n },\n {\n name: \"Kirchentag\",\n 2025: [4,30,4,30],\n },\n {\n name: \"Tag nach dem 1. Mai\",\n 2025: [5,2,5,2],\n },\n {\n name: \"Tag vor dem 1. Mai\",\n 2029: [4,30,4,30],\n },\n {\n name: \"Tage nach dem 3. Oktober\",\n 2029: [10,4,10,5],\n },\n ]\n },\n \"Nordrhein-Westfalen\": {\n \"_state_code\": \"nw\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Deutschland&state=Nordrhein-Westfalen&zoom=18&addressdetails=1&limit=1&accept-language=de,en\",\n SH: [\n {\n name: \"Osterferien\",\n 2012: [4,2,4,14],\n 2013: [3,25,4,6],\n 2014: [4,14,4,26],\n 2015: [3,30,4,11],\n 2016: [3,21,4,2],\n 2017: [4,10,4,22],\n 2018: [3,26,4,7],\n 2019: [4,15,4,27],\n 2020: [4,6,4,18],\n 2021: [3,29,4,10],\n 2022: [4,11,4,23],\n 2023: [4,3,4,15],\n 2024: [3,25,4,6],\n 2025: [4,14,4,26],\n 2026: [3,30,4,11],\n 2027: [3,22,4,3],\n 2028: [4,10,4,22],\n 2029: [3,26,4,7],\n 2030: [4,15,4,27],\n },\n {\n name: \"Pfingstferien\",\n 2012: [5,29,5,29],\n 2013: [5,21,5,21],\n 2014: [6,10,6,10],\n 2015: [5,26,5,26],\n 2016: [5,17,5,17],\n 2017: [6,6,6,6],\n 2018: [5,22,5,25],\n 2019: [6,11,6,11],\n 2020: [6,2,6,2],\n 2021: [5,25,5,25],\n 2023: [5,30,5,30],\n 2024: [5,21,5,21],\n 2025: [6,10,6,10],\n 2026: [5,26,5,26],\n 2027: [5,18,5,18],\n 2029: [5,22,5,22],\n },\n {\n name: \"Sommerferien\",\n 2012: [7,9,8,21],\n 2013: [7,22,9,3],\n 2014: [7,7,8,19],\n 2015: [6,29,8,11],\n 2016: [7,11,8,23],\n 2017: [7,17,8,29],\n 2018: [7,16,8,28],\n 2019: [7,15,8,27],\n 2020: [6,29,8,11],\n 2021: [7,5,8,17],\n 2022: [6,27,8,9],\n 2023: [6,22,8,4],\n 2024: [7,8,8,20],\n 2025: [7,14,8,26],\n 2026: [7,20,9,1],\n 2027: [7,19,8,31],\n 2028: [7,10,8,22],\n 2029: [7,2,8,14],\n 2030: [6,24,8,6],\n },\n {\n name: \"Herbstferien\",\n 2012: [10,8,10,20],\n 2013: [10,21,11,2],\n 2014: [10,6,10,18],\n 2015: [10,5,10,17],\n 2016: [10,10,10,21],\n 2017: [10,23,11,4],\n 2018: [10,15,10,27],\n 2019: [10,14,10,26],\n 2020: [10,12,10,24],\n 2021: [10,11,10,23],\n 2022: [10,4,10,15],\n 2023: [10,2,10,14],\n 2024: [10,14,10,26],\n 2025: [10,13,10,25],\n 2026: [10,17,10,31],\n 2027: [10,23,11,6],\n 2028: [10,23,11,4],\n 2029: [10,15,10,27],\n },\n {\n name: \"Weihnachtsferien\",\n 2011: [12,23,1,6],\n 2012: [12,21,1,4],\n 2013: [12,23,1,7],\n 2014: [12,22,1,6],\n 2015: [12,23,1,6],\n 2016: [12,23,1,6],\n 2017: [12,27,1,6],\n 2018: [12,21,1,4],\n 2019: [12,23,1,6],\n 2020: [12,21,1,6],\n 2021: [12,24,1,8],\n 2022: [12,23,1,6],\n 2023: [12,21,1,5],\n 2024: [12,23,1,6],\n 2025: [12,22,1,6],\n 2026: [12,23,1,6],\n 2027: [12,24,1,8],\n 2028: [12,21,1,5],\n 2029: [12,20,1,4],\n },\n ]\n },\n \"Rheinland-Pfalz\": {\n \"_state_code\": \"rp\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Deutschland&state=Rheinland-Pfalz&zoom=18&addressdetails=1&limit=1&accept-language=de,en\",\n SH: [\n {\n name: \"Winterferien\",\n 2019: [2,25,3,1],\n 2020: [2,17,2,21],\n 2022: [2,21,2,25],\n },\n {\n name: \"Osterferien\",\n 2012: [3,29,4,13],\n 2013: [3,20,4,5],\n 2014: [4,11,4,25],\n 2015: [3,26,4,10],\n 2016: [3,18,4,1],\n 2017: [4,10,4,21],\n 2018: [3,26,4,6],\n 2019: [4,23,4,30],\n 2020: [4,9,4,17],\n 2021: [3,29,4,6],\n 2022: [4,13,4,22],\n 2023: [4,3,4,6],\n 2024: [3,25,4,2],\n 2025: [4,14,4,25],\n 2026: [3,30,4,10],\n 2027: [3,22,4,2],\n 2028: [4,10,4,21],\n 2029: [3,26,4,6],\n 2030: [4,15,4,30],\n },\n {\n name: \"Pfingstferien\",\n 2021: [5,25,6,2],\n 2023: [5,30,6,7],\n 2024: [5,21,5,29],\n },\n {\n name: \"Sommerferien\",\n 2012: [7,2,8,10],\n 2013: [7,8,8,16],\n 2014: [7,28,9,5],\n 2015: [7,27,9,4],\n 2016: [7,18,8,26],\n 2017: [7,3,8,11],\n 2018: [6,25,8,3],\n 2019: [7,1,8,9],\n 2020: [7,6,8,14],\n 2021: [7,19,8,27],\n 2022: [7,25,9,2],\n 2023: [7,24,9,1],\n 2024: [7,15,8,23],\n 2025: [7,7,8,15],\n 2026: [6,29,8,7],\n 2027: [6,28,8,6],\n 2028: [7,3,8,11],\n 2029: [7,16,8,24],\n 2030: [7,22,8,30],\n },\n {\n name: \"Herbstferien\",\n 2012: [10,1,10,12],\n 2013: [10,4,10,18],\n 2014: [10,20,10,31],\n 2015: [10,19,10,30],\n 2016: [10,10,10,21],\n 2017: [10,2,10,13],\n 2018: [10,1,10,12],\n 2019: [9,30,10,11],\n 2020: [10,12,10,23],\n 2021: [10,11,10,22],\n 2022: [10,17,10,31],\n 2023: [10,16,10,27],\n 2024: [10,14,10,25],\n 2025: [10,13,10,24],\n 2026: [10,5,10,16],\n 2027: [10,4,10,15],\n 2028: [10,9,10,20],\n 2029: [10,22,11,2],\n },\n {\n name: \"Weihnachtsferien\",\n 2011: [12,22,1,6],\n 2012: [12,20,1,4],\n 2013: [12,23,1,7],\n 2014: [12,22,1,7],\n 2015: [12,23,1,8],\n 2016: [12,22,1,6],\n 2017: [12,22,1,9],\n 2018: [12,20,1,4],\n 2019: [12,23,1,6],\n 2020: [12,21,12,31],\n 2021: [12,23,12,31],\n 2022: [12,23,1,2],\n 2023: [12,27,1,5],\n 2024: [12,23,1,8],\n 2025: [12,22,1,7],\n 2026: [12,23,1,8],\n 2027: [12,23,1,7],\n 2028: [12,21,1,8],\n 2029: [12,24,1,9],\n },\n ]\n },\n \"Saarland\": {\n \"_state_code\": \"sl\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Deutschland&state=Saarland&zoom=18&addressdetails=1&limit=1&accept-language=de,en\",\n SH: [\n {\n name: \"Winterferien\",\n 2012: [2,20,2,25],\n 2013: [2,11,2,16],\n 2014: [3,3,3,8],\n 2015: [2,16,2,21],\n 2016: [2,8,2,13],\n 2017: [2,27,3,4],\n 2018: [2,12,2,17],\n 2019: [2,25,3,5],\n },\n {\n name: \"Osterferien\",\n 2012: [4,2,4,14],\n 2013: [3,25,4,6],\n 2014: [4,14,4,26],\n 2015: [3,30,4,11],\n 2016: [3,29,4,9],\n 2017: [4,10,4,22],\n 2018: [3,26,4,6],\n 2019: [4,17,4,26],\n 2020: [4,14,4,24],\n 2021: [3,29,4,7],\n 2022: [4,14,4,22],\n 2023: [4,3,4,12],\n 2024: [3,25,4,5],\n 2025: [4,14,4,25],\n 2026: [4,7,4,17],\n 2027: [3,30,4,9],\n 2028: [4,12,4,21],\n 2029: [3,26,4,6],\n 2030: [4,15,4,26],\n },\n {\n name: \"Pfingstferien\",\n 2021: [5,25,5,28],\n 2022: [6,7,6,10],\n 2023: [5,30,6,2],\n 2024: [5,21,5,24],\n 2029: [5,22,5,25],\n },\n {\n name: \"Sommerferien\",\n 2012: [7,2,8,14],\n 2013: [7,8,8,17],\n 2014: [7,28,9,6],\n 2015: [7,27,9,5],\n 2016: [7,18,8,27],\n 2017: [7,3,8,14],\n 2018: [6,25,8,3],\n 2019: [7,1,8,9],\n 2020: [7,6,8,14],\n 2021: [7,19,8,27],\n 2022: [7,25,9,2],\n 2023: [7,24,9,1],\n 2024: [7,15,8,23],\n 2025: [7,7,8,14],\n 2026: [6,29,8,7],\n 2027: [6,28,8,6],\n 2028: [7,3,8,11],\n 2029: [7,16,8,24],\n 2030: [7,22,8,30],\n },\n {\n name: \"Herbstferien\",\n 2012: [10,22,11,3],\n 2013: [10,21,11,2],\n 2014: [10,20,10,31],\n 2015: [10,19,10,31],\n 2016: [10,10,10,22],\n 2017: [10,2,10,14],\n 2018: [10,1,10,12],\n 2019: [10,7,10,18],\n 2020: [10,12,10,23],\n 2021: [10,18,10,29],\n 2022: [10,24,11,4],\n 2023: [10,23,11,3],\n 2024: [10,14,10,25],\n 2025: [10,13,10,24],\n 2026: [10,5,10,16],\n 2027: [10,4,10,15],\n 2028: [10,9,10,20],\n 2029: [10,22,11,2],\n },\n {\n name: \"Weihnachtsferien\",\n 2011: [12,23,1,4],\n 2012: [12,24,1,5],\n 2013: [12,20,1,4],\n 2014: [12,22,1,7],\n 2015: [12,21,1,2],\n 2016: [12,19,12,31],\n 2017: [12,21,1,5],\n 2018: [12,20,1,4],\n 2019: [12,23,1,3],\n 2020: [12,21,12,31],\n 2021: [12,23,1,3],\n 2022: [12,22,1,4],\n 2023: [12,21,1,2],\n 2024: [12,23,1,3],\n 2025: [12,22,1,2],\n 2026: [12,21,12,31],\n 2027: [12,20,12,31],\n 2028: [12,20,1,2],\n 2029: [12,21,1,4],\n },\n {\n name: \"Fastnachtsferien\",\n 2020: [2,17,2,25],\n 2021: [2,15,2,19],\n 2022: [2,21,3,1],\n 2023: [2,20,2,24],\n 2024: [2,12,2,16],\n 2025: [2,24,3,4],\n 2026: [2,16,2,20],\n 2027: [2,8,2,12],\n 2028: [2,21,2,29],\n 2029: [2,12,2,16],\n 2030: [2,25,3,5],\n },\n ]\n },\n \"Sachsen\": {\n \"_state_code\": \"sn\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Deutschland&state=Sachsen&zoom=18&addressdetails=1&limit=1&accept-language=de,en\",\n SH: [\n {\n name: \"Winterferien\",\n 2012: [2,13,2,25],\n 2013: [2,4,2,15],\n 2014: [2,17,3,1],\n 2015: [2,9,2,21],\n 2016: [2,8,2,20],\n 2017: [2,13,2,24],\n 2018: [2,12,2,23],\n 2019: [2,18,3,2],\n 2020: [2,10,2,22],\n 2021: [1,31,2,6],\n 2022: [2,12,2,26],\n 2023: [2,13,2,24],\n 2024: [2,12,2,23],\n 2025: [2,17,3,1],\n 2026: [2,9,2,21],\n 2027: [2,8,2,19],\n 2028: [2,14,2,26],\n 2029: [2,5,2,16],\n 2030: [2,18,3,1],\n },\n {\n name: \"Osterferien\",\n 2012: [4,6,4,14],\n 2013: [3,29,4,6],\n 2014: [4,18,4,26],\n 2015: [4,2,4,11],\n 2016: [3,25,4,2],\n 2017: [4,13,4,22],\n 2018: [3,29,4,6],\n 2019: [4,19,4,26],\n 2020: [4,10,4,18],\n 2021: [3,27,4,10],\n 2022: [4,15,4,23],\n 2023: [4,7,4,15],\n 2024: [3,28,4,5],\n 2025: [4,18,4,25],\n 2026: [4,3,4,10],\n 2027: [3,26,4,2],\n 2028: [4,14,4,22],\n 2029: [3,29,4,6],\n 2030: [4,19,4,26],\n },\n {\n name: \"Pfingstferien\",\n 2012: [5,18,5,18],\n 2013: [5,18,5,22],\n 2014: [5,30,5,30],\n 2015: [5,15,5,15],\n 2016: [5,6,5,6],\n 2017: [5,26,5,26],\n 2018: [5,19,5,22],\n 2019: [5,31,5,31],\n 2024: [5,18,5,21],\n 2027: [5,15,5,18],\n 2029: [5,19,5,22],\n 2030: [6,8,6,11],\n },\n {\n name: \"Sommerferien\",\n 2012: [7,23,8,31],\n 2013: [7,15,8,23],\n 2014: [7,21,8,29],\n 2015: [7,13,8,21],\n 2016: [6,27,8,5],\n 2017: [6,26,8,4],\n 2018: [7,2,8,10],\n 2019: [7,8,8,16],\n 2020: [7,20,8,28],\n 2021: [7,26,9,3],\n 2022: [7,18,8,26],\n 2023: [7,10,8,18],\n 2024: [6,20,8,2],\n 2025: [6,28,8,8],\n 2026: [7,4,8,14],\n 2027: [7,10,8,20],\n 2028: [7,22,9,1],\n 2029: [7,21,8,31],\n 2030: [7,13,8,23],\n },\n {\n name: \"Herbstferien\",\n 2012: [10,22,11,2],\n 2013: [10,21,11,1],\n 2014: [10,20,10,31],\n 2015: [10,12,10,24],\n 2016: [10,3,10,15],\n 2017: [10,30,10,30],\n 2018: [10,8,10,20],\n 2019: [10,14,10,25],\n 2020: [10,19,10,31],\n 2021: [10,18,10,30],\n 2022: [10,17,10,29],\n 2023: [10,2,10,14],\n 2024: [10,7,10,19],\n 2025: [10,6,10,18],\n 2026: [10,12,10,24],\n 2027: [10,11,10,23],\n 2028: [10,23,11,3],\n 2029: [10,22,11,2],\n },\n {\n name: \"Weihnachtsferien\",\n 2011: [12,23,1,2],\n 2012: [12,22,1,2],\n 2013: [12,21,1,3],\n 2014: [12,22,1,3],\n 2015: [12,21,1,2],\n 2016: [12,23,1,2],\n 2017: [12,23,1,2],\n 2018: [12,22,1,4],\n 2019: [12,21,1,3],\n 2020: [12,19,1,2],\n 2021: [12,23,1,1],\n 2022: [12,22,1,2],\n 2023: [12,23,1,2],\n 2024: [12,23,1,3],\n 2025: [12,22,1,2],\n 2026: [12,23,1,2],\n 2027: [12,23,1,1],\n 2028: [12,23,1,3],\n 2029: [12,22,1,4],\n },\n {\n name: \"Unterrichtsfreier Tag\",\n 2022: [5,27,5,27],\n 2023: [10,30,10,30],\n 2024: [5,10,5,10],\n 2025: [5,30,5,30],\n 2026: [5,15,5,15],\n 2027: [5,7,5,7],\n 2028: [5,26,5,26],\n 2029: [5,11,5,11],\n 2030: [5,31,5,31],\n },\n ]\n },\n \"Sachsen-Anhalt\": {\n \"_state_code\": \"st\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Deutschland&state=Sachsen-Anhalt&zoom=18&addressdetails=1&limit=1&accept-language=de,en\",\n SH: [\n {\n name: \"Winterferien\",\n 2012: [2,4,2,11],\n 2013: [2,1,2,8],\n 2014: [2,1,2,12],\n 2015: [2,2,2,14],\n 2016: [2,1,2,10],\n 2017: [2,4,2,11],\n 2018: [2,5,2,9],\n 2019: [2,11,2,15],\n 2020: [2,10,2,14],\n 2021: [2,8,2,13],\n 2022: [2,12,2,19],\n 2023: [2,6,2,11],\n 2024: [2,5,2,10],\n 2025: [1,27,1,31],\n 2026: [1,31,2,6],\n 2027: [2,1,2,6],\n 2028: [2,7,2,12],\n 2029: [2,5,2,10],\n 2030: [2,4,2,8],\n },\n {\n name: \"Osterferien\",\n 2012: [4,2,4,7],\n 2013: [3,25,3,30],\n 2014: [4,14,4,17],\n 2015: [4,2,4,2],\n 2016: [3,24,3,24],\n 2017: [4,10,4,13],\n 2018: [4,30,4,30],\n 2019: [4,18,4,30],\n 2020: [4,6,4,11],\n 2021: [3,29,4,3],\n 2022: [4,11,4,16],\n 2023: [4,3,4,8],\n 2024: [3,25,3,30],\n 2025: [4,7,4,19],\n 2026: [3,30,4,4],\n 2027: [3,22,3,27],\n 2028: [4,10,4,22],\n 2029: [3,26,3,31],\n 2030: [4,8,4,20],\n },\n {\n name: \"Pfingstferien\",\n 2012: [5,18,5,25],\n 2013: [5,10,5,18],\n 2014: [5,30,6,7],\n 2015: [5,15,5,23],\n 2016: [5,6,5,14],\n 2017: [5,26,5,26],\n 2018: [5,11,5,19],\n 2019: [5,31,6,1],\n 2020: [5,18,5,30],\n 2021: [5,10,5,22],\n 2022: [5,23,5,28],\n 2023: [5,15,5,19],\n 2024: [5,21,5,24],\n 2026: [5,26,5,29],\n 2027: [5,15,5,22],\n 2028: [6,3,6,10],\n 2029: [5,11,5,25],\n 2030: [6,3,6,8],\n },\n {\n name: \"Sommerferien\",\n 2012: [7,23,9,5],\n 2013: [7,15,8,28],\n 2014: [7,21,9,3],\n 2015: [7,13,8,26],\n 2016: [6,27,8,10],\n 2017: [6,26,8,9],\n 2018: [6,28,8,8],\n 2019: [7,4,8,14],\n 2020: [7,16,8,26],\n 2021: [7,22,9,1],\n 2022: [7,14,8,24],\n 2023: [7,6,8,16],\n 2024: [6,24,8,3],\n 2025: [6,28,8,8],\n 2026: [7,4,8,14],\n 2027: [7,10,8,20],\n 2028: [7,22,9,1],\n 2029: [7,21,8,31],\n 2030: [7,13,8,23],\n },\n {\n name: \"Herbstferien\",\n 2012: [10,29,11,2],\n 2013: [10,21,10,25],\n 2014: [10,27,10,30],\n 2015: [10,17,10,24],\n 2016: [10,4,10,15],\n 2017: [10,30,10,30],\n 2018: [10,1,10,12],\n 2019: [11,1,11,1],\n 2020: [10,19,10,24],\n 2021: [10,25,10,30],\n 2022: [10,24,11,4],\n 2023: [10,16,10,30],\n 2024: [9,30,10,12],\n 2025: [10,13,10,25],\n 2026: [10,19,10,30],\n 2027: [10,18,10,23],\n 2028: [10,30,11,3],\n 2029: [10,29,11,2],\n },\n {\n name: \"Weihnachtsferien\",\n 2011: [12,22,1,7],\n 2012: [12,19,1,4],\n 2013: [12,21,1,3],\n 2014: [12,22,1,5],\n 2015: [12,21,1,5],\n 2016: [12,19,1,2],\n 2017: [12,21,1,3],\n 2018: [12,19,1,4],\n 2019: [12,23,1,4],\n 2020: [12,21,1,10],\n 2021: [12,22,1,8],\n 2022: [12,21,1,5],\n 2023: [12,21,1,3],\n 2024: [12,23,1,4],\n 2025: [12,22,1,5],\n 2026: [12,21,1,2],\n 2027: [12,20,12,31],\n 2028: [12,21,1,2],\n 2029: [12,21,1,5],\n },\n {\n name: \"Ferientag\",\n 2023: [10,2,10,2],\n 2024: [11,1,11,1],\n 2025: [5,30,5,30],\n 2028: [10,2,10,2],\n 2029: [4,30,4,30],\n 2030: [5,31,5,31],\n },\n ]\n },\n \"Schleswig-Holstein\": {\n \"_state_code\": \"sh\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Deutschland&state=Schleswig-Holstein&zoom=18&addressdetails=1&limit=1&accept-language=de,en\",\n SH: [\n {\n name: \"Osterferien\",\n 2011: [4,15,4,30],\n 2012: [3,30,4,13],\n 2013: [3,25,4,9],\n 2014: [4,16,5,2],\n 2015: [4,1,4,17],\n 2016: [3,24,4,9],\n 2017: [4,7,4,21],\n 2018: [3,29,4,13],\n 2019: [4,4,4,18],\n 2020: [3,30,4,17],\n 2021: [4,1,4,16],\n 2022: [4,4,4,16],\n 2023: [4,6,4,22],\n 2024: [4,2,4,19],\n 2025: [4,11,4,25],\n 2026: [3,26,4,10],\n 2027: [3,30,4,10],\n 2028: [4,3,4,15],\n 2029: [3,23,4,6],\n 2030: [4,8,4,20],\n 2031: [3,28,4,10],\n },\n {\n name: \"Sommerferien\",\n 2011: [7,4,8,13],\n 2012: [6,25,8,4],\n 2013: [6,24,8,3],\n 2014: [7,14,8,23],\n 2015: [7,20,8,29],\n 2016: [7,25,9,3],\n 2017: [7,24,9,2],\n 2018: [7,9,8,18],\n 2019: [7,1,8,10],\n 2020: [6,29,8,8],\n 2021: [6,21,7,31],\n 2022: [7,4,8,13],\n 2023: [7,17,8,26],\n 2024: [7,22,8,31],\n 2025: [7,28,9,6],\n 2026: [7,4,8,15],\n 2027: [7,3,8,14],\n 2028: [6,24,8,4],\n 2029: [6,23,8,3],\n 2030: [7,8,8,17],\n },\n {\n name: \"Herbstferien\",\n 2011: [10,10,10,22],\n 2012: [10,4,10,19],\n 2013: [10,4,10,18],\n 2014: [10,13,10,25],\n 2015: [10,19,10,31],\n 2016: [10,17,10,29],\n 2017: [10,16,10,27],\n 2018: [10,1,10,19],\n 2019: [10,4,10,18],\n 2020: [10,5,10,17],\n 2021: [10,4,10,16],\n 2022: [10,10,10,21],\n 2023: [10,16,10,27],\n 2024: [10,21,11,1],\n 2025: [10,20,10,30],\n 2026: [10,12,10,24],\n 2027: [10,11,10,23],\n 2028: [10,16,10,30],\n 2029: [10,8,10,19],\n 2030: [10,14,10,25],\n },\n {\n name: \"Weihnachtsferien\",\n 2011: [12,23,1,6],\n 2012: [12,24,1,5],\n 2013: [12,23,1,6],\n 2014: [12,22,1,6],\n 2015: [12,21,1,6],\n 2016: [12,23,1,6],\n 2017: [12,21,1,6],\n 2018: [12,21,1,4],\n 2019: [12,23,1,6],\n 2020: [12,21,1,6],\n 2021: [12,23,1,8],\n 2022: [12,23,1,7],\n 2023: [12,27,1,6],\n 2024: [12,19,1,7],\n 2025: [12,19,1,6],\n 2026: [12,21,1,6],\n 2027: [12,23,1,8],\n 2028: [12,21,1,5],\n 2029: [12,21,1,8],\n 2030: [12,20,1,6],\n },\n {\n name: \"Himmelfahrt\",\n 2011: [6,3,6,4],\n 2012: [5,18,5,18],\n 2013: [5,10,5,10],\n 2014: [5,30,5,30],\n 2015: [5,15,5,15],\n 2016: [5,6,5,6],\n 2017: [5,26,5,26],\n 2018: [5,11,5,11],\n 2019: [5,31,5,31],\n 2020: [5,22,5,22],\n 2021: [5,14,5,15],\n 2022: [5,27,5,28],\n 2023: [5,19,5,20],\n 2024: [5,10,5,11],\n 2025: [5,30,5,30],\n 2026: [5,15,5,15],\n 2027: [5,7,5,7],\n 2028: [5,26,5,26],\n 2029: [5,11,5,11],\n 2030: [5,31,5,31],\n 2031: [5,23,5,23],\n },\n ]\n },\n \"Thüringen\": {\n \"_state_code\": \"th\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Deutschland&state=Th%C3%BCringen&zoom=18&addressdetails=1&limit=1&accept-language=de,en\",\n SH: [\n {\n name: \"Winterferien\",\n 2012: [2,6,2,11],\n 2013: [2,18,2,23],\n 2014: [2,17,2,22],\n 2015: [2,2,2,7],\n 2016: [2,1,2,6],\n 2017: [2,6,2,11],\n 2018: [2,5,2,9],\n 2019: [2,11,2,15],\n 2020: [2,10,2,14],\n 2021: [1,25,1,30],\n 2022: [2,12,2,19],\n 2023: [2,13,2,17],\n 2024: [2,12,2,16],\n 2025: [2,3,2,8],\n 2026: [2,16,2,21],\n 2027: [2,1,2,6],\n 2028: [2,7,2,12],\n 2029: [2,12,2,17],\n 2030: [2,11,2,16],\n },\n {\n name: \"Osterferien\",\n 2012: [4,2,4,13],\n 2013: [3,25,4,6],\n 2014: [4,19,5,2],\n 2015: [3,30,4,11],\n 2016: [3,24,4,2],\n 2017: [4,10,4,21],\n 2018: [3,26,4,7],\n 2019: [4,15,4,27],\n 2020: [4,6,4,18],\n 2021: [3,29,4,10],\n 2022: [4,11,4,23],\n 2023: [4,3,4,15],\n 2024: [3,25,4,6],\n 2025: [4,7,4,19],\n 2026: [4,7,4,17],\n 2027: [3,22,4,3],\n 2028: [4,3,4,15],\n 2029: [3,26,4,7],\n 2030: [4,8,4,20],\n },\n {\n name: \"Pfingstferien\",\n 2012: [5,25,5,29],\n 2013: [5,10,5,10],\n 2014: [5,30,5,30],\n 2015: [5,15,5,15],\n 2016: [5,6,5,6],\n 2017: [5,26,5,26],\n 2018: [5,11,5,11],\n 2019: [5,31,5,31],\n },\n {\n name: \"Sommerferien\",\n 2012: [7,23,8,31],\n 2013: [7,15,8,23],\n 2014: [7,21,8,29],\n 2015: [7,13,8,21],\n 2016: [6,27,8,10],\n 2017: [6,26,8,9],\n 2018: [7,2,8,11],\n 2019: [7,8,8,17],\n 2020: [7,20,8,29],\n 2021: [7,26,9,4],\n 2022: [7,18,8,27],\n 2023: [7,10,8,19],\n 2024: [6,20,7,31],\n 2025: [6,28,8,8],\n 2026: [7,4,8,14],\n 2027: [7,10,8,20],\n 2028: [7,22,9,1],\n 2029: [7,21,8,31],\n 2030: [7,13,8,23],\n },\n {\n name: \"Herbstferien\",\n 2012: [10,22,11,3],\n 2013: [10,21,11,2],\n 2014: [10,6,10,18],\n 2015: [10,5,10,17],\n 2016: [10,10,10,22],\n 2017: [10,2,10,14],\n 2018: [10,1,10,13],\n 2019: [10,7,10,19],\n 2020: [10,17,10,30],\n 2021: [10,25,11,6],\n 2022: [10,17,10,29],\n 2023: [10,2,10,14],\n 2024: [9,30,10,12],\n 2025: [10,6,10,18],\n 2026: [10,12,10,24],\n 2027: [10,9,10,23],\n 2028: [10,23,11,3],\n 2029: [10,22,11,3],\n },\n {\n name: \"Weihnachtsferien\",\n 2011: [12,23,1,1],\n 2012: [12,24,1,5],\n 2013: [12,23,1,4],\n 2014: [12,22,1,3],\n 2015: [12,23,1,2],\n 2016: [12,23,12,31],\n 2017: [12,22,1,5],\n 2018: [12,21,1,4],\n 2019: [12,21,1,3],\n 2020: [12,23,1,2],\n 2021: [12,23,12,31],\n 2022: [12,22,1,3],\n 2023: [12,22,1,5],\n 2024: [12,23,1,3],\n 2025: [12,22,1,3],\n 2026: [12,23,1,2],\n 2027: [12,23,12,31],\n 2028: [12,23,1,5],\n 2029: [12,22,1,4],\n },\n {\n name: \"Schulfreier Tag\",\n 2020: [5,22,5,22],\n 2021: [5,14,5,14],\n 2022: [5,27,5,27],\n 2023: [5,19,5,19],\n 2024: [5,10,5,10],\n 2025: [5,30,5,30],\n 2026: [5,15,5,15],\n 2027: [5,7,5,7],\n 2028: [5,26,5,26],\n 2029: [5,11,5,11],\n 2030: [5,31,5,31],\n },\n ]\n }\n};\n\nexport const dk = {\n PH: [{\"name\":\"Nytårsdag\",\"fixed_date\":[1,1]},{\"name\":\"Skærtorsdag\",\"variable_date\":\"easter\",\"offset\":-3},{\"name\":\"Langfredag\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Påskedag\",\"variable_date\":\"easter\"},{\"name\":\"Anden påskedag\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Kristi Himmelfartsdag\",\"variable_date\":\"easter\",\"offset\":39},{\"name\":\"Pinsedag\",\"variable_date\":\"easter\",\"offset\":49},{\"name\":\"Anden Pinsedag\",\"variable_date\":\"easter\",\"offset\":50},{\"name\":\"Grundlovsdag\",\"fixed_date\":[6,5]},{\"name\":\"Juleaftensdag\",\"fixed_date\":[12,24]},{\"name\":\"Juledag\",\"fixed_date\":[12,25]},{\"name\":\"Anden Juledag\",\"fixed_date\":[12,26]}],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=55.670249&lon=10.3333283&zoom=18&addressdetails=1&accept-language=da,en\"\n};\n\nexport const ee = {\n PH: [{\"name\":\"uusaasta\",\"fixed_date\":[1,1]},{\"name\":\"iseseisvuspäev\",\"fixed_date\":[2,24]},{\"name\":\"suur reede\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"lihavõtted\",\"variable_date\":\"easter\"},{\"name\":\"kevadpüha\",\"fixed_date\":[5,1]},{\"name\":\"nelipühade 1. püha\",\"variable_date\":\"easter\",\"offset\":49},{\"name\":\"võidupüha\",\"fixed_date\":[6,23]},{\"name\":\"jaanipäev\",\"fixed_date\":[6,24]},{\"name\":\"taasiseseisvumispäev\",\"fixed_date\":[8,20]},{\"name\":\"jõululaupäev\",\"fixed_date\":[12,24]},{\"name\":\"esimene jõulupüha\",\"fixed_date\":[12,25]},{\"name\":\"teine jõulupüha\",\"fixed_date\":[12,26]}],\n SH: [\n {\n name: \"jõulupühad\",\n 2019: [12,23,1,5],\n 2020: [12,23,1,10],\n 2021: [12,23,1,9],\n 2022: [12,22,1,8],\n 2023: [12,21,1,7],\n 2024: [12,23,1,5],\n 2025: [12,22,1,11],\n 2026: [12,23,1,10],\n },\n {\n name: \"talvepuhkus\",\n 2020: [2,24,3,1],\n 2021: [2,22,2,28],\n 2022: [2,28,3,6],\n 2023: [2,27,3,5],\n 2024: [2,26,3,3],\n 2025: [2,24,3,2],\n 2026: [2,23,3,1],\n 2027: [2,22,2,28],\n },\n {\n name: \"kevadpühad\",\n 2020: [4,20,4,26],\n 2021: [4,19,4,25],\n 2022: [4,25,5,1],\n 2023: [4,24,4,30],\n 2024: [4,22,4,28],\n 2025: [4,14,4,20],\n 2026: [4,13,4,19],\n 2027: [4,12,4,18],\n },\n {\n name: \"suvepuhkus\",\n 2020: [6,10,8,31],\n 2021: [6,14,8,31],\n 2022: [6,14,8,31],\n 2023: [6,14,8,31],\n 2024: [6,13,8,31],\n 2025: [6,10,8,31],\n 2026: [6,17,8,31],\n 2027: [6,14,8,31],\n },\n {\n name: \"sügispuhkus\",\n 2020: [10,19,10,25],\n 2021: [10,25,10,31],\n 2022: [10,24,10,30],\n 2023: [10,23,10,29],\n 2024: [10,21,10,27],\n 2025: [10,20,10,26],\n 2026: [10,26,11,1],\n },\n ],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=59.4370&lon=24.7536&zoom=18&addressdetails=1&accept-language=et,en\"\n};\n\nexport const es = {\n PH: [{\"name\":\"Año Nuevo\",\"fixed_date\":[1,1]},{\"name\":\"Día de los Reyes Magos\",\"fixed_date\":[1,6]},{\"name\":\"Día de Andalucía\",\"fixed_date\":[2,28],\"substitute_rule\":\"if sunday then next monday\",\"only_states\":[\"Andalucía\"]},{\"name\":\"Día de les Illes Balears\",\"fixed_date\":[3,1],\"substitute_rule\":\"if sunday then next monday\",\"only_states\":[\"Illes Balears\"]},{\"name\":\"San José\",\"fixed_date\":[3,19],\"only_states\":[\"Comunidad Foral de Navarra\",\"Comunitat Valenciana\",\"Galicia\",\"País Vasco\",\"Región de Murcia\"]},{\"name\":\"Jueves Santo\",\"variable_date\":\"easter\",\"offset\":-3,\"only_states\":[\"Andalucía\",\"Aragón\",\"Asturias\",\"Cantabria\",\"Castilla y León\",\"Castilla-La Mancha\",\"Ceuta\",\"Comunidad de Madrid\",\"Comunidad Foral de Navarra\",\"Extremadura\",\"Galicia\",\"Illes Balears\",\"La Rioja\",\"Melilla\",\"País Vasco\",\"Región de Murcia\"]},{\"name\":\"Viernes Santo\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Lunes de Pascua\",\"variable_date\":\"easter\",\"offset\":1,\"only_states\":[\"Cataluña\",\"Comunidad Foral de Navarra\",\"Comunitat Valenciana\",\"Illes Balears\",\"La Rioja\",\"País Vasco\"]},{\"name\":\"Día de Aragón\",\"fixed_date\":[4,23],\"substitute_rule\":\"if sunday then next monday\",\"only_states\":[\"Aragón\"]},{\"name\":\"Fiesta de Castilla y León\",\"fixed_date\":[4,23],\"substitute_rule\":\"if sunday then next monday\",\"only_states\":[\"Castilla y León\"]},{\"name\":\"Día del Trabajador\",\"fixed_date\":[5,1]},{\"name\":\"Día de la Comunidad de Madrid\",\"fixed_date\":[5,2],\"shift_rule\":\"if sunday then next monday\",\"only_states\":[\"Comunidad de Madrid\"]},{\"name\":\"Día de las Letras Gallegas\",\"fixed_date\":[5,17],\"only_states\":[\"Galicia\"]},{\"name\":\"Día de Castilla-La Mancha\",\"fixed_date\":[5,31],\"only_states\":[\"Castilla-La Mancha\"]},{\"name\":\"Corpus Christi\",\"variable_date\":\"easter\",\"offset\":60,\"only_states\":[\"Castilla-La Mancha\"]},{\"name\":\"Día de La Rioja\",\"fixed_date\":[6,9],\"only_states\":[\"La Rioja\"]},{\"name\":\"San Juan\",\"fixed_date\":[6,24],\"only_states\":[\"Cataluña\",\"Comunitat Valenciana\"]},{\"name\":\"Día de las Instituciones de Cantabria\",\"fixed_date\":[6,28],\"only_states\":[\"Cantabria\"]},{\"name\":\"Día Nacional de Galicia\",\"fixed_date\":[7,25],\"only_states\":[\"Galicia\"]},{\"name\":\"Santiago Apóstol\",\"fixed_date\":[7,25],\"only_states\":[\"País Vasco\"]},{\"name\":\"Nuestra Señora de África\",\"fixed_date\":[8,5],\"substitute_rule\":\"if sunday then next monday\",\"only_states\":[\"Ceuta\"]},{\"name\":\"Asunción\",\"fixed_date\":[8,15]},{\"name\":\"Día de Ceuta\",\"fixed_date\":[9,2],\"substitute_rule\":\"if sunday then next monday\",\"only_states\":[\"Ceuta\"]},{\"name\":\"Día de Asturias\",\"fixed_date\":[9,8],\"substitute_rule\":\"if sunday then next monday\",\"only_states\":[\"Asturias\"]},{\"name\":\"Día de Extremadura\",\"fixed_date\":[9,8],\"substitute_rule\":\"if sunday then next monday\",\"only_states\":[\"Extremadura\"]},{\"name\":\"Dia de Cataluña\",\"fixed_date\":[9,11],\"only_states\":[\"Cataluña\"]},{\"name\":\"La Bien Aparecida\",\"fixed_date\":[9,15],\"substitute_rule\":\"if sunday then next monday\",\"only_states\":[\"Cantabria\"]},{\"name\":\"Nuestra Señora de la Merced\",\"fixed_date\":[9,24],\"only_states\":[\"Cataluña\"]},{\"name\":\"Fiesta Nacional de España\",\"fixed_date\":[10,12]},{\"name\":\"Todos los Santos\",\"fixed_date\":[11,1]},{\"name\":\"Día de la Constitución Española\",\"fixed_date\":[12,6]},{\"name\":\"La inmaculada concepción\",\"fixed_date\":[12,8]},{\"name\":\"Navidad\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday\"},{\"name\":\"San Esteban\",\"fixed_date\":[12,26],\"only_states\":[\"Cataluña\"]}],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=41.60333&lon=2.18920&zoom=18&addressdetails=1&limit=1&accept-language=es,ca,eu,gl,oc,ast\",\n \"Almería\": {\n \"_state_code\": \"an-al\",\n SH: [\n {\n name: \"Vacaciones de Navidad\",\n 2019: [12,23,1,6],\n 2020: [12,24,1,6],\n 2021: [12,24,1,6],\n 2022: [12,24,1,6],\n 2023: [12,23,1,7],\n 2024: [12,24,1,6],\n 2025: [12,24,1,6],\n },\n {\n name: \"Día no lectivo\",\n 2020: [12,23,12,23],\n 2021: [12,23,12,23],\n 2022: [12,7,12,7],\n 2023: [12,22,12,22],\n 2024: [12,23,12,23],\n 2025: [12,23,12,23],\n 2026: [5,4,5,4],\n },\n {\n name: \"Día de la Comunidad Educativa\",\n 2020: [2,27,2,27],\n 2021: [3,2,3,2],\n 2022: [3,1,3,1],\n 2023: [2,27,2,27],\n 2024: [2,29,2,29],\n 2025: [2,27,2,27],\n 2026: [2,27,2,27],\n },\n {\n name: \"Vacaciones de Semana Santa\",\n 2020: [4,5,4,12],\n 2021: [3,28,4,4],\n 2022: [4,10,4,17],\n 2023: [4,2,4,9],\n 2024: [3,23,3,31],\n 2025: [4,14,4,20],\n 2026: [3,30,4,5],\n },\n {\n name: \"Vacaciones de verano\",\n 2020: [6,24,9,9],\n 2021: [6,23,9,9],\n 2022: [6,23,9,11],\n 2023: [6,23,9,10],\n 2024: [6,22,9,9],\n 2025: [6,24,9,9],\n },\n {\n name: \"Fin de lecciones\",\n 2026: [6,23,6,23],\n },\n ]\n },\n \"Andalucía\": {\n \"_state_code\": \"an\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Espa%C3%B1a&state=Andaluc%C3%ADa&zoom=18&addressdetails=1&limit=1&accept-language=es,ca,eu,gl,oc,ast\"\n },\n \"Aragón\": {\n \"_state_code\": \"ar\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Espa%C3%B1a&state=Arag%C3%B3n&zoom=18&addressdetails=1&limit=1&accept-language=es,ca,eu,gl,oc,ast\",\n SH: [\n {\n name: \"Vacaciones de Navidad\",\n 2019: [12,20,1,6],\n 2020: [12,22,1,6],\n 2021: [12,23,1,7],\n 2022: [12,22,1,6],\n 2023: [12,22,1,5],\n 2024: [12,20,1,6],\n 2025: [12,20,1,6],\n },\n {\n name: \"Vacaciones de Semana Santa\",\n 2020: [4,6,4,13],\n 2021: [3,29,4,2],\n 2022: [4,11,4,18],\n 2023: [4,3,4,10],\n 2024: [3,28,4,5],\n 2025: [4,14,4,21],\n 2026: [3,30,4,6],\n },\n {\n name: \"Vacaciones de verano\",\n 2020: [6,24,9,6],\n 2021: [6,23,9,10],\n 2022: [6,23,9,10],\n 2023: [6,24,9,6],\n 2024: [6,25,9,8],\n 2025: [6,25,9,11],\n },\n {\n name: \"Día no lectivo\",\n 2021: [12,7,12,7],\n 2022: [12,5,12,5],\n 2023: [12,7,12,7],\n 2025: [11,3,11,3],\n },\n {\n name: \"Fin de lecciones\",\n 2026: [6,19,6,19],\n },\n ]\n },\n \"Asturias\": {\n \"_state_code\": \"as\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Espa%C3%B1a&state=Asturias&zoom=18&addressdetails=1&limit=1&accept-language=es,ca,eu,gl,oc,ast\",\n SH: [\n {\n name: \"Vacaciones de Navidad\",\n 2019: [12,23,1,7],\n 2020: [12,23,1,8],\n 2021: [12,24,1,7],\n 2022: [12,27,1,5],\n 2023: [12,26,1,5],\n 2024: [12,23,1,7],\n 2025: [12,22,1,7],\n },\n {\n name: \"Día no lectivo\",\n 2020: [10,30,10,30],\n 2021: [12,7,12,7],\n 2022: [12,5,12,5],\n 2023: [12,7,12,7],\n 2024: [10,31,10,31],\n 2025: [11,4,11,4],\n 2026: [5,4,5,4],\n },\n {\n name: \"Vacaciones de Semana Santa\",\n 2020: [4,6,4,12],\n 2021: [3,29,4,5],\n 2022: [4,11,4,15],\n 2023: [4,3,4,11],\n 2024: [3,25,4,1],\n 2025: [4,14,4,20],\n 2026: [3,30,4,5],\n },\n {\n name: \"Vacaciones de verano\",\n 2020: [6,24,9,21],\n 2021: [7,1,9,7],\n 2022: [6,25,9,11],\n 2023: [6,24,9,10],\n 2024: [6,22,9,8],\n 2025: [6,21,9,7],\n },\n {\n name: \"Fin de lecciones\",\n 2026: [6,19,6,19],\n },\n ]\n },\n \"Cádiz\": {\n \"_state_code\": \"an-ca\",\n SH: [\n {\n name: \"Vacaciones de Navidad\",\n 2019: [12,23,1,6],\n 2020: [12,24,1,10],\n 2021: [12,24,1,9],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,23,1,7],\n 2025: [12,22,1,7],\n },\n {\n name: \"Día no lectivo\",\n 2020: [5,4,5,4],\n 2023: [3,1,3,1],\n 2024: [2,27,2,27],\n 2025: [10,13,10,13],\n },\n {\n name: \"Día de la Comunidad Educativa\",\n 2020: [3,2,3,2],\n 2021: [5,3,5,3],\n 2022: [3,1,3,1],\n 2023: [12,7,12,7],\n 2025: [5,2,5,2],\n 2026: [2,27,2,27],\n },\n {\n name: \"Vacaciones de Semana Santa\",\n 2020: [4,6,4,12],\n 2021: [3,29,4,4],\n 2022: [4,11,4,17],\n 2023: [4,3,4,9],\n 2024: [3,25,3,31],\n 2025: [4,14,4,20],\n 2026: [3,30,4,5],\n },\n {\n name: \"Vacaciones de verano\",\n 2020: [6,24,9,9],\n 2021: [6,23,9,9],\n 2022: [6,23,9,11],\n 2023: [6,23,9,10],\n 2024: [6,25,9,9],\n 2025: [6,24,9,9],\n },\n {\n name: \"Fin de lecciones\",\n 2026: [6,23,6,23],\n },\n ]\n },\n \"Canarias\": {\n \"_state_code\": \"cn\",\n SH: [\n {\n name: \"Vacaciones de Navidad\",\n 2019: [12,23,1,7],\n 2020: [12,23,1,7],\n 2021: [12,23,1,7],\n 2022: [12,23,1,6],\n 2023: [12,25,1,5],\n 2024: [12,23,1,7],\n 2025: [12,22,1,7],\n },\n {\n name: \"Vacaciones de Semana Santa\",\n 2020: [4,6,4,10],\n 2021: [3,29,4,2],\n 2022: [4,11,4,15],\n 2023: [4,3,4,7],\n 2024: [3,25,3,29],\n 2025: [4,14,4,18],\n 2026: [3,30,4,5],\n },\n {\n name: \"Vacaciones de verano\",\n 2020: [6,20,9,14],\n 2021: [6,24,9,8],\n 2022: [6,24,9,8],\n 2023: [6,24,9,10],\n 2024: [6,22,9,9],\n 2025: [6,21,9,8],\n },\n {\n name: \"Fin de lecciones\",\n 2026: [6,19,6,19],\n },\n ]\n },\n \"Cantabria\": {\n \"_state_code\": \"cb\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Espa%C3%B1a&state=Cantabria&zoom=18&addressdetails=1&limit=1&accept-language=es,ca,eu,gl,oc,ast\",\n SH: [\n {\n name: \"No lectivos\",\n 2019: [12,23,1,7],\n 2020: [12,23,1,7],\n 2021: [12,23,1,7],\n 2022: [12,23,1,5],\n 2023: [12,26,1,5],\n 2024: [12,23,1,7],\n 2025: [12,24,1,5],\n 2026: [3,30,4,1],\n },\n {\n name: \"Fin de lecciones\",\n 2026: [6,22,6,22],\n },\n ]\n },\n \"Castilla y León\": {\n \"_state_code\": \"cl\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Espa%C3%B1a&state=Castilla+y+Le%C3%B3n&zoom=18&addressdetails=1&limit=1&accept-language=es,ca,eu,gl,oc,ast\",\n SH: [\n {\n name: \"Vacaciones de Navidad\",\n 2019: [12,21,1,7],\n 2020: [12,22,1,11],\n 2021: [12,22,1,10],\n 2022: [12,22,1,9],\n 2023: [12,22,1,8],\n 2024: [12,21,1,7],\n 2025: [12,19,1,8],\n },\n {\n name: \"Carnavales\",\n 2020: [2,24,2,25],\n 2021: [2,15,2,16],\n 2022: [2,28,3,1],\n 2023: [2,20,2,21],\n 2024: [2,12,2,13],\n 2025: [3,3,3,4],\n 2026: [2,16,2,17],\n },\n {\n name: \"Día no lectivo\",\n 2020: [10,9,10,9],\n 2021: [12,7,12,7],\n 2022: [12,9,12,9],\n 2023: [12,7,12,7],\n 2024: [10,31,10,31],\n 2025: [10,31,10,31],\n 2026: [4,24,4,24],\n },\n {\n name: \"Vacaciones de Semana Santa\",\n 2020: [4,3,4,14],\n 2021: [3,25,4,6],\n 2022: [4,6,4,18],\n 2023: [3,29,4,10],\n 2024: [3,22,4,3],\n 2025: [4,12,4,22],\n 2026: [3,26,4,7],\n },\n {\n name: \"Vacaciones de verano\",\n 2020: [6,24,9,8],\n 2021: [6,24,9,9],\n 2022: [6,24,9,8],\n 2023: [6,24,9,6],\n 2024: [6,22,9,5],\n 2025: [6,24,9,7],\n },\n {\n name: \"Fin de lecciones\",\n 2026: [6,24,6,24],\n },\n ]\n },\n \"Castilla-La Mancha\": {\n \"_state_code\": \"cm\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Espa%C3%B1a&state=Castilla-La+Mancha&zoom=18&addressdetails=1&limit=1&accept-language=es,ca,eu,gl,oc,ast\",\n SH: [\n {\n name: \"Descanso de Navidad\",\n 2019: [12,23,1,7],\n 2020: [12,23,1,7],\n 2021: [12,23,1,7],\n 2022: [12,23,1,8],\n 2023: [12,23,1,7],\n 2024: [12,23,1,6],\n 2025: [12,22,1,6],\n },\n {\n name: \"Días de libre disposición\",\n 2020: [2,24,2,25],\n 2021: [2,15,2,15],\n 2022: [2,28,3,1],\n 2023: [2,20,2,21],\n 2024: [2,12,2,13],\n 2025: [3,3,3,4],\n 2026: [2,16,2,17],\n },\n {\n name: \"Día no lectivo\",\n 2020: [11,13,11,13],\n 2021: [11,19,11,19],\n 2022: [11,18,11,18],\n 2023: [12,7,12,7],\n 2024: [11,15,11,15],\n 2025: [11,14,11,14],\n 2026: [5,2,5,2],\n },\n {\n name: \"Descanso de Semana Santa\",\n 2020: [4,6,4,13],\n 2021: [3,29,4,5],\n 2022: [4,11,4,18],\n 2023: [4,3,4,10],\n 2024: [3,25,4,1],\n 2025: [4,14,4,21],\n 2026: [3,30,4,6],\n },\n {\n name: \"Vacaciones de verano\",\n 2020: [6,26,9,8],\n 2021: [6,29,9,8],\n 2022: [6,25,9,7],\n 2023: [6,24,9,10],\n 2024: [6,22,9,8],\n 2025: [6,19,9,7],\n },\n {\n name: \"Fin de lecciones\",\n 2026: [6,17,6,17],\n },\n ]\n },\n \"Cataluña\": {\n \"_state_code\": \"ct\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Espa%C3%B1a&state=Catalu%C3%B1a&zoom=18&addressdetails=1&limit=1&accept-language=es,ca,eu,gl,oc,ast\"\n },\n \"Catalunya\": {\n \"_state_code\": \"ct\",\n SH: [\n {\n name: \"Vacaciones de Navidad\",\n 2019: [12,21,1,7],\n 2020: [12,22,1,7],\n 2021: [12,23,1,7],\n 2022: [12,22,1,8],\n 2023: [12,21,1,7],\n 2024: [12,21,1,7],\n 2025: [12,20,1,7],\n },\n {\n name: \"Vacaciones de Semana Santa\",\n 2020: [4,4,4,13],\n 2021: [3,27,4,5],\n 2022: [4,11,4,18],\n 2023: [4,3,4,10],\n 2024: [3,23,4,1],\n 2025: [4,12,4,21],\n 2026: [3,28,4,6],\n },\n {\n name: \"Vacaciones de verano\",\n 2020: [6,20,9,13],\n 2021: [6,23,9,12],\n 2022: [6,23,9,4],\n 2023: [6,23,9,5],\n 2024: [6,22,9,9],\n 2025: [6,19,9,7],\n },\n {\n name: \"Fin de lecciones\",\n 2026: [6,19,6,19],\n },\n ]\n },\n \"Ceuta\": {\n \"_state_code\": \"ce\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Espa%C3%B1a&state=Ceuta&zoom=18&addressdetails=1&limit=1&accept-language=es,ca,eu,gl,oc,ast\",\n SH: [\n {\n name: \"Vacaciones de Navidad\",\n 2019: [12,23,1,7],\n 2020: [12,23,1,7],\n 2021: [12,23,1,7],\n 2022: [12,23,1,5],\n 2023: [12,25,1,5],\n 2024: [12,23,1,7],\n 2025: [12,22,1,7],\n },\n {\n name: \"Día de libre disposición\",\n 2020: [5,25,5,25],\n 2021: [12,7,12,7],\n 2022: [12,5,12,5],\n 2023: [12,7,12,7],\n 2024: [4,10,4,10],\n 2025: [5,2,5,2],\n },\n {\n name: \"Días de libre disposición\",\n 2020: [4,1,4,3],\n 2022: [4,4,4,8],\n 2023: [4,20,4,21],\n 2024: [3,18,3,22],\n 2025: [4,7,4,11],\n 2026: [5,25,5,26],\n },\n {\n name: \"Vacaciones de Semana Santa\",\n 2020: [4,6,4,8],\n 2021: [3,29,4,11],\n 2022: [4,11,4,15],\n 2023: [4,3,4,5],\n 2024: [3,25,3,29],\n 2025: [4,14,4,18],\n 2026: [3,30,4,3],\n },\n {\n name: \"Vacaciones de verano\",\n 2020: [6,23,9,9],\n 2021: [6,23,9,9],\n 2022: [6,24,9,7],\n 2023: [6,24,9,6],\n 2024: [6,22,9,8],\n 2025: [6,24,9,7],\n },\n {\n name: \"Fin del Ramadán\",\n 2021: [5,13,5,14],\n 2022: [5,3,5,3],\n },\n {\n name: \"Fin de lecciones\",\n 2026: [6,23,6,23],\n },\n ]\n },\n \"Comunidad de Madrid\": {\n \"_state_code\": \"md\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Espa%C3%B1a&state=Comunidad+de+Madrid&zoom=18&addressdetails=1&limit=1&accept-language=es,ca,eu,gl,oc,ast\",\n SH: [\n {\n name: \"Vacaciones de Navidad\",\n 2019: [12,21,1,6],\n 2020: [12,23,1,6],\n 2021: [12,23,1,6],\n 2022: [12,23,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,6],\n 2025: [12,20,1,6],\n },\n {\n name: \"Día no lectivo\",\n 2020: [11,2,11,2],\n 2021: [12,7,12,7],\n 2022: [12,7,12,7],\n 2023: [12,7,12,7],\n 2024: [5,3,5,3],\n 2025: [11,3,11,3],\n 2026: [4,6,4,6],\n },\n {\n name: \"Vacaciones de Pascua\",\n 2020: [4,4,4,12],\n 2021: [3,27,4,4],\n 2022: [4,9,4,17],\n 2023: [4,1,4,9],\n 2024: [3,23,3,31],\n 2025: [4,12,4,20],\n 2026: [3,28,4,5],\n },\n {\n name: \"Vacaciones de verano\",\n 2020: [6,20,9,20],\n 2021: [6,26,9,5],\n 2022: [6,25,9,11],\n 2023: [6,22,9,5],\n 2024: [6,22,9,5],\n 2025: [6,21,9,7],\n },\n {\n name: \"Días de libre disposición\",\n 2020: [12,7,12,8],\n 2021: [1,7,1,8],\n 2024: [2,22,2,23],\n },\n {\n name: \"Fin de lecciones\",\n 2026: [6,19,6,19],\n },\n ]\n },\n \"Comunidad Foral de Navarra\": {\n \"_state_code\": \"nc\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Espa%C3%B1a&state=Comunidad+Foral+de+Navarra&zoom=18&addressdetails=1&limit=1&accept-language=es,ca,eu,gl,oc,ast\"\n },\n \"Comunitat Valenciana\": {\n \"_state_code\": \"vc\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Espa%C3%B1a&state=Comunitat+Valenciana&zoom=18&addressdetails=1&limit=1&accept-language=es,ca,eu,gl,oc,ast\",\n SH: [\n {\n name: \"Vacaciones de Navidad\",\n 2019: [12,23,1,6],\n 2020: [12,23,1,6],\n 2021: [12,23,1,7],\n 2022: [12,23,1,6],\n 2023: [12,23,1,7],\n 2024: [12,23,1,6],\n 2025: [12,23,1,6],\n },\n {\n name: \"Vacaciones de Pascua\",\n 2020: [4,9,4,20],\n 2021: [4,1,4,12],\n 2022: [4,14,4,25],\n 2023: [4,6,4,17],\n 2024: [3,28,4,8],\n 2025: [4,17,4,28],\n 2026: [4,2,4,13],\n },\n {\n name: \"Vacaciones de verano\",\n 2020: [6,19,9,6],\n 2021: [6,24,9,7],\n 2022: [6,22,9,11],\n 2023: [6,22,9,10],\n 2024: [6,22,9,8],\n 2025: [6,19,9,7],\n },\n {\n name: \"Fin de lecciones\",\n 2026: [6,19,6,19],\n },\n ]\n },\n \"Córdoba\": {\n \"_state_code\": \"an-co\",\n SH: [\n {\n name: \"Vacaciones de Navidad\",\n 2019: [12,23,1,7],\n 2020: [12,23,1,7],\n 2021: [12,23,1,9],\n 2022: [12,23,1,8],\n 2023: [12,23,1,7],\n 2024: [12,23,1,6],\n 2025: [12,22,1,6],\n },\n {\n name: \"Día de la Comunidad Educativa\",\n 2020: [3,2,3,2],\n 2021: [2,26,2,26],\n 2022: [2,25,2,25],\n 2023: [2,27,2,27],\n 2024: [2,27,2,27],\n 2025: [2,27,2,27],\n 2026: [3,2,3,2],\n },\n {\n name: \"Vacaciones de Semana Santa\",\n 2020: [4,5,4,12],\n 2021: [3,29,4,4],\n 2022: [4,11,4,17],\n 2023: [4,3,4,9],\n 2024: [3,23,3,31],\n 2025: [4,14,4,20],\n 2026: [3,30,4,5],\n },\n {\n name: \"Vacaciones de verano\",\n 2020: [6,24,9,9],\n 2021: [6,23,9,9],\n 2022: [6,25,9,11],\n 2023: [6,24,9,10],\n 2024: [6,23,9,1],\n 2025: [6,25,8,31],\n },\n {\n name: \"Día no lectivo\",\n 2021: [12,7,12,7],\n 2022: [12,5,12,5],\n 2023: [12,7,12,7],\n 2024: [3,1,3,1],\n 2025: [5,2,5,2],\n 2026: [1,7,1,7],\n },\n {\n name: \"Fin de lecciones\",\n 2026: [6,22,6,22],\n },\n ]\n },\n \"Euskal Herria\": {\n \"_state_code\": \"pv\",\n SH: [\n {\n name: \"Vacaciones de Navidad\",\n 2019: [12,21,1,6],\n 2020: [12,24,1,6],\n 2021: [12,24,1,6],\n 2022: [12,24,1,6],\n 2023: [12,23,1,7],\n 2024: [12,24,1,6],\n 2025: [12,24,1,6],\n },\n {\n name: \"Vacaciones de Pascua\",\n 2020: [4,9,4,13],\n 2021: [4,1,4,5],\n 2022: [4,14,4,18],\n 2023: [4,6,4,10],\n 2024: [3,28,4,1],\n 2025: [4,17,4,21],\n 2026: [4,2,4,6],\n },\n {\n name: \"Vacaciones de verano\",\n 2020: [6,20,9,7],\n 2021: [6,19,9,7],\n 2022: [6,22,9,7],\n 2023: [6,22,9,6],\n 2024: [6,22,9,29],\n 2025: [5,16,9,4],\n },\n {\n name: \"Fin de lecciones\",\n 2026: [6,19,6,19],\n },\n ]\n },\n \"Extremadura\": {\n \"_state_code\": \"ex\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Espa%C3%B1a&state=Extremadura&zoom=18&addressdetails=1&limit=1&accept-language=es,ca,eu,gl,oc,ast\",\n SH: [\n {\n name: \"Vacaciones de Navidad\",\n 2019: [12,23,1,7],\n 2020: [12,23,1,8],\n 2021: [12,23,1,7],\n 2022: [12,23,1,5],\n 2023: [12,22,1,5],\n 2024: [12,23,1,7],\n 2025: [12,23,1,7],\n },\n {\n name: \"Día no lectivo\",\n 2020: [12,7,12,7],\n 2021: [11,22,11,22],\n 2022: [12,9,12,9],\n 2023: [12,7,12,7],\n 2024: [11,25,11,25],\n 2025: [11,28,11,28],\n },\n {\n name: \"Carnavales\",\n 2020: [2,24,2,25],\n 2021: [2,15,2,16],\n 2022: [2,28,3,1],\n 2023: [2,20,2,21],\n 2024: [2,12,2,13],\n 2025: [3,3,3,4],\n 2026: [2,16,2,17],\n },\n {\n name: \"Vacaciones de Pascua\",\n 2020: [4,6,4,13],\n 2021: [3,29,4,5],\n 2022: [4,11,4,18],\n 2023: [4,3,4,10],\n 2024: [3,25,4,1],\n 2025: [4,14,4,21],\n 2026: [3,30,4,6],\n },\n {\n name: \"Vacaciones de verano\",\n 2020: [6,18,9,9],\n 2021: [6,19,9,9],\n 2022: [6,22,9,11],\n 2023: [6,23,9,10],\n 2024: [6,21,9,10],\n 2025: [6,24,9,10],\n },\n {\n name: \"Día de la Comunitat Valenciana\",\n 2020: [10,9,10,9],\n 2023: [10,9,10,9],\n },\n {\n name: \"Fin de lecciones\",\n 2026: [7,23,7,23],\n },\n ]\n },\n \"Galicia\": {\n \"_state_code\": \"ga\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Espa%C3%B1a&state=Galicia&zoom=18&addressdetails=1&limit=1&accept-language=es,ca,eu,gl,oc,ast\",\n SH: [\n {\n name: \"Vacaciones de Navidad\",\n 2019: [12,21,1,7],\n 2020: [12,23,1,7],\n 2021: [12,22,1,7],\n 2022: [12,23,1,6],\n 2023: [12,22,1,7],\n 2024: [12,23,1,7],\n 2025: [12,22,1,7],\n },\n {\n name: \"Vacaciones de Pascua\",\n 2020: [4,4,4,13],\n 2021: [3,27,4,5],\n 2022: [4,11,4,18],\n 2023: [4,3,4,10],\n 2024: [3,25,4,1],\n 2025: [4,14,4,21],\n 2026: [3,30,4,6],\n },\n {\n name: \"Vacaciones de verano\",\n 2020: [6,20,9,9],\n 2021: [6,23,9,8],\n 2022: [6,23,9,7],\n 2023: [6,22,9,10],\n 2024: [6,22,9,10],\n 2025: [6,21,9,7],\n },\n {\n name: \"Día de la Educación\",\n 2020: [12,7,12,7],\n 2021: [10,11,10,11],\n 2022: [10,31,10,31],\n 2023: [12,7,12,7],\n 2024: [10,31,10,31],\n 2025: [10,31,10,31],\n },\n {\n name: \"Carnavales\",\n 2021: [2,24,2,26],\n 2022: [2,28,3,2],\n 2023: [2,20,2,22],\n 2024: [2,12,2,14],\n 2025: [3,3,4,5],\n 2026: [2,16,2,18],\n },\n {\n name: \"Día no lectivo\",\n 2025: [11,3,11,3],\n },\n {\n name: \"Fin de lecciones\",\n 2026: [6,19,6,19],\n },\n ]\n },\n \"Granada\": {\n \"_state_code\": \"an-gr\",\n SH: [\n {\n name: \"Vacaciones de Navidad\",\n 2019: [12,23,1,7],\n 2020: [12,23,1,7],\n 2021: [12,24,1,6],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,24,1,6],\n 2025: [12,22,1,6],\n },\n {\n name: \"Día de la Comunidad Educativa\",\n 2020: [3,2,3,2],\n 2021: [2,26,2,26],\n 2022: [3,1,3,1],\n 2023: [2,27,2,27],\n 2024: [2,29,2,29],\n 2025: [2,27,2,27],\n 2026: [3,2,3,2],\n },\n {\n name: \"Vacaciones de Semana Santa\",\n 2020: [4,6,4,10],\n 2021: [3,28,4,4],\n 2022: [4,10,4,17],\n 2023: [4,2,4,9],\n 2024: [3,25,3,31],\n 2025: [4,14,4,20],\n 2026: [3,30,4,5],\n },\n {\n name: \"Día no lectivo\",\n 2020: [5,4,5,4],\n 2021: [12,7,12,7],\n 2022: [10,31,10,31],\n 2023: [12,7,12,7],\n 2024: [3,1,3,1],\n 2025: [11,3,11,3],\n 2026: [6,5,6,5],\n },\n {\n name: \"Vacaciones de verano\",\n 2020: [6,24,9,9],\n 2021: [6,23,9,9],\n 2022: [6,25,9,11],\n 2023: [6,24,9,10],\n 2024: [6,24,9,1],\n 2025: [6,25,8,31],\n },\n {\n name: \"Fin de lecciones\",\n 2026: [6,22,6,22],\n },\n ]\n },\n \"Huelva\": {\n \"_state_code\": \"an-hl\",\n SH: [\n {\n name: \"Vacaciones de Navidad\",\n 2019: [12,21,1,6],\n 2020: [12,23,1,6],\n 2021: [12,23,1,9],\n 2022: [12,23,1,8],\n 2023: [12,23,1,7],\n 2024: [12,23,1,6],\n 2025: [12,23,1,6],\n },\n {\n name: \"Día de la Comunidad Educativa\",\n 2020: [3,2,3,2],\n 2021: [2,26,2,26],\n 2022: [2,25,2,25],\n 2023: [11,2,11,2],\n 2025: [3,3,3,3],\n 2026: [3,2,3,2],\n },\n {\n name: \"Vacaciones de Semana Santa\",\n 2020: [4,4,4,12],\n 2021: [3,29,4,4],\n 2022: [4,11,4,17],\n 2023: [4,3,4,9],\n 2024: [3,25,3,31],\n 2025: [4,14,4,20],\n 2026: [3,30,4,1],\n },\n {\n name: \"Vacaciones de verano\",\n 2020: [6,24,9,9],\n 2021: [6,23,9,9],\n 2022: [6,24,9,11],\n 2023: [6,24,9,10],\n 2024: [6,26,9,9],\n 2025: [6,25,9,9],\n },\n {\n name: \"Día no lectivo\",\n 2025: [1,7,1,7],\n 2026: [1,7,1,7],\n },\n {\n name: \"Fin de lecciones\",\n 2026: [6,22,6,22],\n },\n ]\n },\n \"Huesca\": {\n \"_state_code\": \"ar-hu\",\n SH: [\n {\n name: \"Día no lectivo\",\n 2020: [2,14,2,14],\n 2021: [2,19,2,19],\n 2022: [2,18,2,18],\n 2023: [2,17,2,17],\n 2024: [2,16,2,16],\n 2025: [2,14,2,14],\n 2026: [2,20,2,20],\n },\n ]\n },\n \"Illes Balears\": {\n \"_state_code\": \"ib\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Espa%C3%B1a&state=Illes+Balears&zoom=18&addressdetails=1&limit=1&accept-language=es,ca,eu,gl,oc,ast\",\n SH: [\n {\n name: \"Vacaciones de Navidad\",\n 2019: [12,23,1,7],\n 2020: [12,23,1,7],\n 2021: [12,23,1,7],\n 2022: [12,23,1,5],\n 2023: [12,22,1,5],\n 2024: [12,21,1,7],\n 2025: [12,22,1,6],\n },\n {\n name: \"Fiesta Escolar Unificada\",\n 2020: [2,28,2,28],\n 2021: [2,26,2,26],\n 2022: [2,28,2,28],\n 2023: [2,28,2,28],\n 2024: [2,29,2,29],\n 2025: [2,28,2,28],\n 2026: [2,27,2,27],\n },\n {\n name: \"Vacaciones de Semana Santa\",\n 2020: [4,8,4,19],\n 2021: [4,1,4,11],\n 2022: [4,14,4,22],\n 2023: [4,6,4,14],\n 2024: [3,28,4,5],\n 2025: [4,17,4,27],\n 2026: [4,2,4,12],\n },\n {\n name: \"Vacaciones de verano\",\n 2020: [6,20,9,9],\n 2021: [6,23,9,9],\n 2022: [6,24,9,11],\n 2023: [6,24,9,10],\n 2024: [6,22,9,10],\n 2025: [6,28,9,9],\n },\n {\n name: \"Fin de lecciones\",\n 2026: [6,19,6,19],\n },\n ]\n },\n \"Islas Canarias\": {\n \"_state_code\": \"cn\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Espa%C3%B1a&state=Islas+Canarias&zoom=18&addressdetails=1&limit=1&accept-language=es,ca,eu,gl,oc,ast\"\n },\n \"Jaén\": {\n \"_state_code\": \"an-ja\",\n SH: [\n {\n name: \"Vacaciones de Navidad\",\n 2019: [12,21,1,7],\n 2020: [12,23,1,10],\n 2021: [12,23,1,9],\n 2022: [12,23,1,8],\n 2023: [12,25,1,7],\n 2024: [12,23,1,7],\n 2025: [12,23,1,7],\n },\n {\n name: \"Día de la Comunidad Educativa\",\n 2020: [3,2,3,2],\n 2021: [5,3,5,3],\n 2022: [3,1,3,1],\n 2023: [2,27,2,27],\n 2024: [2,29,2,29],\n 2025: [3,3,3,3],\n 2026: [3,2,3,2],\n },\n {\n name: \"Vacaciones de Semana Santa\",\n 2020: [4,4,4,12],\n 2021: [3,27,4,4],\n 2022: [4,11,4,17],\n 2023: [4,3,4,9],\n 2024: [3,25,3,31],\n 2025: [4,14,4,20],\n 2026: [3,30,4,5],\n },\n {\n name: \"Vacaciones de verano\",\n 2020: [6,24,9,9],\n 2021: [6,24,9,9],\n 2022: [6,24,9,11],\n 2023: [6,23,9,10],\n 2024: [6,24,9,1],\n 2025: [6,25,9,1],\n },\n {\n name: \"Día no lectivo\",\n 2023: [12,7,12,7],\n 2025: [5,2,5,2],\n },\n {\n name: \"Fin de lecciones\",\n 2026: [6,22,6,22],\n },\n ]\n },\n \"La Rioja\": {\n \"_state_code\": \"ri\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Espa%C3%B1a&state=La+Rioja&zoom=18&addressdetails=1&limit=1&accept-language=es,ca,eu,gl,oc,ast\",\n SH: [\n {\n name: \"Vacaciones de Navidad\",\n 2019: [12,23,1,7],\n 2020: [12,23,1,8],\n 2021: [12,23,1,7],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,23,1,6],\n 2025: [12,23,1,7],\n },\n {\n name: \"Día de la Comunidad Educativa\",\n 2020: [2,24,2,24],\n 2021: [2,15,2,15],\n 2022: [3,11,3,11],\n 2023: [3,10,3,10],\n 2024: [2,17,2,17],\n 2025: [2,28,2,28],\n 2026: [2,27,2,27],\n },\n {\n name: \"Vacaciones de Pascua\",\n 2020: [4,9,4,17],\n 2021: [4,1,4,9],\n 2022: [4,11,4,15],\n 2023: [4,1,4,10],\n 2024: [3,28,4,7],\n 2025: [4,17,4,25],\n 2026: [3,30,4,6],\n },\n {\n name: \"Vacaciones de verano\",\n 2020: [6,23,9,6],\n 2021: [6,23,9,5],\n 2022: [6,25,9,7],\n 2023: [6,24,9,6],\n 2024: [6,22,9,5],\n 2025: [6,20,9,8],\n },\n {\n name: \"Día no lectivo\",\n 2021: [12,7,12,7],\n 2022: [10,31,10,31],\n 2023: [12,7,12,7],\n 2025: [5,2,5,2],\n 2026: [6,8,6,8],\n },\n {\n name: \"Fin de lecciones\",\n 2026: [6,22,6,22],\n },\n ]\n },\n \"Málaga\": {\n \"_state_code\": \"an-ma\",\n SH: [\n {\n name: \"Vacaciones de Navidad\",\n 2019: [12,23,1,6],\n 2020: [12,23,1,6],\n 2021: [12,24,1,6],\n 2022: [12,24,1,8],\n 2023: [12,25,1,5],\n 2024: [12,23,1,5],\n 2025: [12,22,1,5],\n },\n {\n name: \"Semana Blanca\",\n 2020: [2,24,2,28],\n 2021: [2,22,2,26],\n 2022: [2,28,3,4],\n 2023: [2,27,3,3],\n 2024: [2,26,3,1],\n 2025: [2,24,2,26],\n 2026: [2,23,2,26],\n },\n {\n name: \"Vacaciones de Semana Santa\",\n 2020: [4,6,4,12],\n 2021: [3,29,4,4],\n 2022: [4,11,4,15],\n 2023: [4,3,4,7],\n 2024: [3,25,3,29],\n 2025: [4,14,4,20],\n 2026: [3,30,4,1],\n },\n {\n name: \"Vacaciones de verano\",\n 2020: [6,25,9,9],\n 2021: [6,25,9,9],\n 2022: [6,25,9,11],\n 2023: [6,24,9,10],\n 2024: [6,25,9,9],\n 2025: [6,25,9,4],\n },\n {\n name: \"Día de la Comunidad Educativa\",\n 2022: [1,7,1,7],\n 2025: [2,27,2,27],\n 2026: [2,27,2,27],\n },\n {\n name: \"Fin de lecciones\",\n 2026: [6,23,6,23],\n },\n ]\n },\n \"Melilla\": {\n \"_state_code\": \"ml\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Espa%C3%B1a&state=Melilla&zoom=18&addressdetails=1&limit=1&accept-language=es,ca,eu,gl,oc,ast\",\n SH: [\n {\n name: \"Vacaciones de Navidad\",\n 2019: [12,23,1,7],\n 2020: [12,23,1,5],\n 2021: [12,23,1,7],\n 2022: [12,23,1,5],\n 2023: [12,23,1,6],\n 2024: [12,23,1,7],\n 2025: [12,20,1,7],\n },\n {\n name: \"Días de libre disposición\",\n 2020: [4,1,4,3],\n 2021: [3,22,3,26],\n 2022: [4,4,4,8],\n 2023: [3,27,3,31],\n 2024: [3,18,3,22],\n 2025: [4,7,4,11],\n 2026: [3,23,3,27],\n },\n {\n name: \"Vacaciones de Semana Santa\",\n 2020: [4,6,4,10],\n 2021: [3,29,4,2],\n 2022: [4,11,4,15],\n 2023: [4,3,4,7],\n 2024: [3,25,3,29],\n 2025: [4,14,4,18],\n 2026: [3,30,4,1],\n },\n {\n name: \"Día de libre disposición\",\n 2020: [12,7,12,7],\n 2021: [12,7,12,7],\n 2022: [12,5,12,5],\n 2023: [12,7,12,7],\n 2025: [5,2,5,2],\n 2026: [5,2,5,2],\n },\n {\n name: \"Vacaciones de verano\",\n 2020: [6,23,9,7],\n 2021: [6,19,9,6],\n 2022: [6,23,9,5],\n 2023: [6,22,9,6],\n 2024: [6,22,9,8],\n 2025: [6,24,9,9],\n },\n {\n name: \"Fin de lecciones\",\n 2026: [6,19,6,19],\n },\n ]\n },\n \"Nafarroako Foru Komunitatea\": {\n \"_state_code\": \"nc\",\n SH: [\n {\n name: \"Vacaciones de Navidad\",\n 2019: [12,21,1,7],\n 2020: [12,23,1,8],\n 2021: [12,23,1,9],\n 2022: [12,23,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,7],\n 2025: [12,20,1,7],\n },\n {\n name: \"Vacaciones de Pascua\",\n 2020: [4,9,4,19],\n 2021: [4,1,4,11],\n 2022: [4,14,4,24],\n 2023: [4,6,4,16],\n 2024: [3,28,4,7],\n 2025: [4,17,4,27],\n 2026: [4,2,4,12],\n },\n {\n name: \"Vacaciones de verano\",\n 2020: [6,20,9,8],\n 2021: [6,23,9,7],\n 2022: [6,23,9,6],\n 2023: [6,21,9,6],\n 2024: [6,19,9,4],\n 2025: [6,21,9,3],\n },\n {\n name: \"Festividad patronal del nivel educativo\",\n 2020: [11,27,11,27],\n 2022: [11,28,11,28],\n 2023: [11,27,11,27],\n 2024: [11,27,11,27],\n 2025: [11,27,11,27],\n },\n {\n name: \"Fin de lecciones\",\n 2026: [6,19,6,19],\n },\n ]\n },\n \"País Vasco\": {\n \"_state_code\": \"pv\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Espa%C3%B1a&state=Pa%C3%ADs+Vasco&zoom=18&addressdetails=1&limit=1&accept-language=es,ca,eu,gl,oc,ast\"\n },\n \"Región de Murcia\": {\n \"_state_code\": \"mc\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Espa%C3%B1a&state=Regi%C3%B3n+de+Murcia&zoom=18&addressdetails=1&limit=1&accept-language=es,ca,eu,gl,oc,ast\",\n SH: [\n {\n name: \"Vacaciones de Navidad\",\n 2019: [12,24,1,6],\n 2020: [12,24,1,6],\n 2021: [12,24,1,6],\n 2022: [12,24,1,6],\n 2023: [12,24,1,6],\n 2024: [12,24,1,6],\n 2025: [12,24,1,6],\n },\n {\n name: \"Vacaciones de Pascua\",\n 2020: [4,6,4,10],\n 2021: [3,29,4,2],\n 2022: [4,11,4,15],\n 2023: [4,3,4,7],\n 2024: [3,25,4,1],\n 2025: [4,14,4,21],\n 2026: [3,30,4,6],\n },\n {\n name: \"Vacaciones de verano\",\n 2020: [6,24,9,6],\n 2021: [6,24,9,6],\n 2022: [6,24,9,7],\n 2023: [6,24,9,6],\n 2024: [6,20,9,8],\n 2025: [6,25,9,7],\n },\n {\n name: \"Fin de lecciones\",\n 2026: [6,22,6,22],\n },\n ]\n },\n \"Sevilla\": {\n \"_state_code\": \"an-se\",\n SH: [\n {\n name: \"Vacaciones de Navidad\",\n 2019: [12,23,1,6],\n 2020: [12,23,1,6],\n 2021: [12,23,1,7],\n 2022: [12,23,1,6],\n 2023: [12,25,1,7],\n 2024: [12,23,1,6],\n 2025: [12,22,1,6],\n },\n {\n name: \"Día de la Comunidad Educativa\",\n 2020: [3,2,3,2],\n 2021: [2,26,2,26],\n 2022: [2,25,2,25],\n 2023: [2,27,2,27],\n 2024: [2,27,2,27],\n 2025: [2,27,2,27],\n 2026: [2,27,2,27],\n },\n {\n name: \"Vacaciones de Semana Santa\",\n 2020: [4,6,4,12],\n 2021: [3,29,4,4],\n 2022: [4,11,4,17],\n 2023: [4,3,4,9],\n 2024: [3,25,3,31],\n 2025: [4,14,4,20],\n 2026: [3,30,4,5],\n },\n {\n name: \"Vacaciones de verano\",\n 2020: [6,25,9,9],\n 2021: [6,22,9,9],\n 2022: [6,25,9,11],\n 2023: [6,24,9,10],\n 2024: [6,25,9,1],\n 2025: [6,25,9,2],\n },\n {\n name: \"Día no lectivo\",\n 2025: [1,7,1,7],\n 2026: [1,7,1,7],\n },\n {\n name: \"Fin de lecciones\",\n 2026: [6,22,6,22],\n },\n ]\n },\n \"Teruel\": {\n \"_state_code\": \"ar-te\",\n SH: [\n {\n name: \"Día no lectivo\",\n 2020: [2,21,2,21],\n 2021: [2,19,2,19],\n 2022: [2,18,2,18],\n 2023: [2,17,2,17],\n 2024: [2,16,2,16],\n 2025: [2,14,2,14],\n 2026: [2,20,2,20],\n },\n ]\n },\n \"Zaragoza\": {\n \"_state_code\": \"ar-zg\",\n SH: [\n {\n name: \"Día no lectivo\",\n 2020: [10,14,10,14],\n 2021: [10,13,10,13],\n 2022: [10,10,10,10],\n 2023: [3,2,3,2],\n 2024: [10,11,10,11],\n 2025: [10,10,10,10],\n 2026: [4,24,4,24],\n },\n ]\n }\n};\n\nexport const fi = {\n PH: [{\"name\":\"uudenvuodenpäivä - nyårsdagen\",\"fixed_date\":[1,1]},{\"name\":\"loppiainen - trettondedagen\",\"fixed_date\":[1,6]},{\"name\":\"pitkäperjantai - långfredagen\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"pääsiäispäivä - påskdagen\",\"variable_date\":\"easter\"},{\"name\":\"toinen pääsiäispäivä - annandag påsk\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"vappu - första maj\",\"fixed_date\":[5,1]},{\"name\":\"helatorstai - Kristi himmelsfärdsdag\",\"variable_date\":\"easter\",\"offset\":39},{\"name\":\"helluntai - pingst\",\"variable_date\":\"easter\",\"offset\":49},{\"name\":\"juhannuspäivä - midsommardagen\",\"variable_date\":\"nextSaturday20Jun\"},{\"name\":\"pyhäinpäivä - alla helgons dag\",\"variable_date\":\"nextSaturday31Oct\"},{\"name\":\"itsenäisyyspäivä - självständighetsdagen\",\"fixed_date\":[12,6]},{\"name\":\"joulupäivä - juldagen\",\"fixed_date\":[12,25]},{\"name\":\"toinen joulupäivä - annandag jul\",\"fixed_date\":[12,26]}],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=63.4965&lon=26.8429&zoom=18&addressdetails=1&accept-language=fi,sv,en\"\n};\n\nexport const fr = {\n PH: [{\"name\":\"Jour de l'an\",\"fixed_date\":[1,1]},{\"name\":\"Vendredi saint\",\"variable_date\":\"easter\",\"offset\":-2,\"only_states\":[\"Moselle\",\"Bas-Rhin\",\"Haut-Rhin\",\"Guadeloupe\",\"Martinique\",\"Polynésie française\"]},{\"name\":\"Lundi de Pâques\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Abolition de l'esclavage (Mayotte)\",\"fixed_date\":[4,27],\"only_states\":[\"Mayotte\"]},{\"name\":\"Saint-Pierre-Chanel\",\"fixed_date\":[4,28],\"only_states\":[\"Wallis-et-Futuna\"]},{\"name\":\"Fête du Travail\",\"fixed_date\":[5,1]},{\"name\":\"Fête de la Victoire\",\"fixed_date\":[5,8]},{\"name\":\"Abolition de l'esclavage (Martinique)\",\"fixed_date\":[5,22],\"only_states\":[\"Martinique\"]},{\"name\":\"Abolition de l'esclavage (Guadeloupe)\",\"fixed_date\":[5,27],\"only_states\":[\"Guadeloupe\"]},{\"name\":\"Abolition de l'esclavage (Saint-Martin)\",\"fixed_date\":[5,28],\"only_states\":[\"Saint-Martin (France)\"]},{\"name\":\"Jeudi de l'Ascension\",\"variable_date\":\"easter\",\"offset\":39},{\"name\":\"Lundi de Pentecôte\",\"variable_date\":\"easter\",\"offset\":50},{\"name\":\"Abolition de l'esclavage (Guyane)\",\"fixed_date\":[6,10],\"only_states\":[\"Guyane\"]},{\"name\":\"Fête de l'autonomie\",\"fixed_date\":[6,29],\"only_states\":[\"Polynésie française\"]},{\"name\":\"Fête nationale\",\"fixed_date\":[7,14]},{\"name\":\"Fête Victor Schoelcher\",\"fixed_date\":[7,21],\"only_states\":[\"Guadeloupe\",\"Martinique\"]},{\"name\":\"Fête du Territoire\",\"fixed_date\":[7,29],\"only_states\":[\"Wallis-et-Futuna\"]},{\"name\":\"Assomption\",\"fixed_date\":[8,15]},{\"name\":\"Fête de la citoyenneté\",\"fixed_date\":[9,24],\"only_states\":[\"Nouvelle-Calédonie\"]},{\"name\":\"Abolition de l'esclavage (Saint-Barthélemy)\",\"fixed_date\":[10,9],\"only_states\":[\"Saint-Barthélemy\"]},{\"name\":\"Toussaint\",\"fixed_date\":[11,1]},{\"name\":\"Armistice\",\"fixed_date\":[11,11]},{\"name\":\"Abolition de l'esclavage (Réunion)\",\"fixed_date\":[12,20],\"only_states\":[\"Réunion\"]},{\"name\":\"Noël\",\"fixed_date\":[12,25]},{\"name\":\"Saint-Étienne \",\"fixed_date\":[12,26],\"only_states\":[\"Moselle\",\"Bas-Rhin\",\"Haut-Rhin\"]}],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=46.60333&lon=1.88920&zoom=18&addressdetails=1&accept-language=fr,en\",\n \"Auvergne-Rhône-Alpes\": {\n \"_state_code\": \"ar\",\n SH: [\n {\n name: \"Vacances d'hiver\",\n 2018: [2,11,2,25],\n 2019: [2,17,3,3],\n 2021: [2,7,2,21],\n 2022: [2,13,2,27],\n 2023: [2,5,2,19],\n 2024: [2,18,3,3],\n 2025: [2,23,3,9],\n 2026: [2,8,2,22],\n 2027: [2,14,2,28],\n },\n {\n name: \"Vacances de printemps\",\n 2018: [4,8,4,22],\n 2019: [4,14,4,28],\n 2020: [4,19,5,3],\n 2021: [4,11,4,25],\n 2022: [4,17,5,1],\n 2023: [4,9,4,23],\n 2024: [4,14,4,28],\n 2025: [4,20,5,4],\n 2026: [4,5,4,19],\n 2027: [4,11,4,25],\n },\n {\n name: \"Pont de l'Ascension\",\n 2018: [5,10,5,10],\n 2019: [5,30,6,2],\n 2020: [5,21,5,24],\n 2021: [5,13,5,16],\n 2022: [5,26,5,29],\n 2023: [5,18,5,21],\n 2027: [5,6,5,9],\n },\n {\n name: \"Vacances d'été\",\n 2018: [7,8,9,2],\n 2019: [7,7,9,1],\n 2020: [7,5,8,31],\n 2021: [7,7,9,1],\n 2022: [7,8,8,31],\n 2023: [7,9,9,3],\n 2024: [7,7,9,1],\n 2025: [7,6,8,31],\n 2026: [7,5,8,31],\n },\n {\n name: \"Vacances de la Toussaint\",\n 2018: [10,21,11,4],\n 2019: [10,20,11,3],\n 2020: [10,18,11,1],\n 2021: [10,24,11,7],\n 2022: [10,23,11,6],\n 2023: [10,22,11,5],\n 2024: [10,20,11,3],\n 2025: [10,19,11,2],\n 2026: [10,18,11,1],\n },\n {\n name: \"Vacances de Noël\",\n 2018: [12,23,1,6],\n 2019: [12,22,1,5],\n 2020: [12,20,1,3],\n 2021: [12,19,1,2],\n 2022: [12,18,1,2],\n 2023: [12,24,1,7],\n 2024: [12,22,1,5],\n 2025: [12,21,1,4],\n 2026: [12,20,1,3],\n },\n {\n name: \"Fin des cours\",\n 2027: [7,3,7,3],\n },\n ]\n },\n \"Bourgogne-Franche-Comté\": {\n \"_state_code\": \"bf\",\n SH: [\n {\n name: \"Vacances d'hiver\",\n 2018: [2,11,2,25],\n 2019: [2,17,3,3],\n 2021: [2,7,2,21],\n 2022: [2,13,2,27],\n 2023: [2,5,2,19],\n 2024: [2,18,3,3],\n 2025: [2,23,3,9],\n 2026: [2,8,2,22],\n 2027: [2,14,2,28],\n },\n {\n name: \"Vacances de printemps\",\n 2018: [4,8,4,22],\n 2019: [4,14,4,28],\n 2020: [4,19,5,3],\n 2021: [4,11,4,25],\n 2022: [4,17,5,1],\n 2023: [4,9,4,23],\n 2024: [4,14,4,28],\n 2025: [4,20,5,4],\n 2026: [4,5,4,19],\n 2027: [4,11,4,25],\n },\n {\n name: \"Pont de l'Ascension\",\n 2018: [5,10,5,10],\n 2019: [5,30,6,2],\n 2020: [5,21,5,24],\n 2021: [5,13,5,16],\n 2022: [5,26,5,29],\n 2023: [5,18,5,21],\n 2027: [5,6,5,9],\n },\n {\n name: \"Vacances d'été\",\n 2018: [7,8,9,2],\n 2019: [7,7,9,1],\n 2020: [7,5,8,31],\n 2021: [7,7,9,1],\n 2022: [7,8,8,31],\n 2023: [7,9,9,3],\n 2024: [7,7,9,1],\n 2025: [7,6,8,31],\n 2026: [7,5,8,31],\n },\n {\n name: \"Vacances de la Toussaint\",\n 2018: [10,21,11,4],\n 2019: [10,20,11,3],\n 2020: [10,18,11,1],\n 2021: [10,24,11,7],\n 2022: [10,23,11,6],\n 2023: [10,22,11,5],\n 2024: [10,20,11,3],\n 2025: [10,19,11,2],\n 2026: [10,18,11,1],\n },\n {\n name: \"Vacances de Noël\",\n 2018: [12,23,1,6],\n 2019: [12,22,1,5],\n 2020: [12,20,1,3],\n 2021: [12,19,1,2],\n 2022: [12,18,1,2],\n 2023: [12,24,1,7],\n 2024: [12,22,1,5],\n 2025: [12,21,1,4],\n 2026: [12,20,1,3],\n },\n {\n name: \"Fin des cours\",\n 2027: [7,3,7,3],\n },\n ]\n },\n \"Bretagne\": {\n \"_state_code\": \"bt\",\n SH: [\n {\n name: \"Vacances d'hiver\",\n 2018: [2,25,3,11],\n 2019: [2,10,2,24],\n 2020: [2,16,3,1],\n 2021: [2,21,3,7],\n 2022: [2,6,2,20],\n 2023: [2,12,2,26],\n 2024: [2,25,3,10],\n 2025: [2,9,2,23],\n 2026: [2,15,3,1],\n 2027: [2,21,3,7],\n },\n {\n name: \"Vacances de printemps\",\n 2018: [4,22,5,6],\n 2019: [4,7,4,22],\n 2020: [4,12,5,26],\n 2021: [4,11,4,25],\n 2022: [4,10,4,24],\n 2023: [4,16,5,1],\n 2024: [4,21,5,5],\n 2025: [4,6,4,21],\n 2026: [4,12,4,26],\n 2027: [4,18,5,2],\n },\n {\n name: \"Pont de l'Ascension\",\n 2018: [5,10,5,10],\n 2019: [5,30,6,2],\n 2020: [5,21,5,24],\n 2021: [5,13,5,16],\n 2022: [5,26,5,29],\n 2023: [5,18,5,21],\n 2027: [5,6,5,9],\n },\n {\n name: \"Vacances d'été\",\n 2018: [7,8,9,2],\n 2019: [7,7,9,1],\n 2020: [7,5,8,31],\n 2021: [7,7,9,1],\n 2022: [7,8,8,31],\n 2023: [7,9,9,3],\n 2024: [7,7,9,1],\n 2025: [7,6,8,31],\n 2026: [7,5,8,31],\n },\n {\n name: \"Vacances de la Toussaint\",\n 2018: [10,21,11,4],\n 2019: [10,20,11,3],\n 2020: [10,18,11,1],\n 2021: [10,24,11,7],\n 2022: [10,23,11,6],\n 2023: [10,22,11,5],\n 2024: [10,20,11,3],\n 2025: [10,19,11,2],\n 2026: [10,18,11,1],\n },\n {\n name: \"Vacances de Noël\",\n 2018: [12,23,1,6],\n 2019: [12,22,1,5],\n 2020: [12,20,1,3],\n 2021: [12,19,1,2],\n 2022: [12,18,1,2],\n 2023: [12,24,1,7],\n 2024: [12,22,1,5],\n 2025: [12,21,1,4],\n 2026: [12,20,1,3],\n },\n {\n name: \"Fin des cours\",\n 2027: [7,3,7,3],\n },\n ]\n },\n \"Centre-Val de Loire\": {\n \"_state_code\": \"cv\",\n SH: [\n {\n name: \"Vacances d'hiver\",\n 2018: [2,25,3,11],\n 2019: [2,10,2,24],\n 2020: [2,16,3,1],\n 2021: [2,21,3,7],\n 2022: [2,6,2,20],\n 2023: [2,12,2,26],\n 2024: [2,25,3,10],\n 2025: [2,9,2,23],\n 2026: [2,15,3,1],\n 2027: [2,21,3,7],\n },\n {\n name: \"Vacances de printemps\",\n 2018: [4,22,5,6],\n 2019: [4,7,4,22],\n 2020: [4,12,5,26],\n 2021: [4,11,4,25],\n 2022: [4,10,4,24],\n 2023: [4,16,5,1],\n 2024: [4,21,5,5],\n 2025: [4,6,4,21],\n 2026: [4,12,4,26],\n 2027: [4,18,5,2],\n },\n {\n name: \"Pont de l'Ascension\",\n 2018: [5,10,5,10],\n 2019: [5,30,6,2],\n 2020: [5,21,5,24],\n 2021: [5,13,5,16],\n 2022: [5,26,5,29],\n 2023: [5,18,5,21],\n 2027: [5,6,5,9],\n },\n {\n name: \"Vacances d'été\",\n 2018: [7,8,9,2],\n 2019: [7,7,9,1],\n 2020: [7,5,8,31],\n 2021: [7,7,9,1],\n 2022: [7,8,8,31],\n 2023: [7,9,9,3],\n 2024: [7,7,9,1],\n 2025: [7,6,8,31],\n 2026: [7,5,8,31],\n },\n {\n name: \"Vacances de la Toussaint\",\n 2018: [10,21,11,4],\n 2019: [10,20,11,3],\n 2020: [10,18,11,1],\n 2021: [10,24,11,7],\n 2022: [10,23,11,6],\n 2023: [10,22,11,5],\n 2024: [10,20,11,3],\n 2025: [10,19,11,2],\n 2026: [10,18,11,1],\n },\n {\n name: \"Vacances de Noël\",\n 2018: [12,23,1,6],\n 2019: [12,22,1,5],\n 2020: [12,20,1,3],\n 2021: [12,19,1,2],\n 2022: [12,18,1,2],\n 2023: [12,24,1,7],\n 2024: [12,22,1,5],\n 2025: [12,21,1,4],\n 2026: [12,20,1,3],\n },\n {\n name: \"Fin des cours\",\n 2027: [7,3,7,3],\n },\n ]\n },\n \"Corse\": {\n \"_state_code\": \"co\",\n SH: [\n {\n name: \"Vacances de Noël\",\n 2019: [12,22,1,5],\n 2020: [12,20,1,3],\n 2021: [12,19,1,2],\n 2022: [12,18,1,2],\n 2023: [12,24,1,7],\n 2024: [12,22,1,5],\n 2025: [12,21,1,4],\n },\n {\n name: \"Vacances d'hiver\",\n 2020: [2,16,3,1],\n 2021: [2,14,2,28],\n 2022: [2,20,3,6],\n 2023: [2,19,3,5],\n 2024: [2,25,3,10],\n 2025: [2,16,3,2],\n 2026: [2,15,3,1],\n },\n {\n name: \"Vacances de printemps\",\n 2020: [4,19,5,3],\n 2021: [4,11,4,25],\n 2022: [4,24,5,8],\n 2023: [4,16,5,1],\n 2024: [4,28,5,12],\n 2025: [4,13,4,27],\n 2026: [4,12,4,26],\n },\n {\n name: \"Pont de l'Ascension\",\n 2020: [5,21,5,24],\n 2021: [5,13,5,16],\n 2022: [5,26,5,29],\n 2023: [5,18,5,21],\n },\n {\n name: \"Vacances d'été\",\n 2020: [7,5,9,2],\n 2021: [7,9,9,2],\n 2022: [7,9,8,1],\n 2023: [7,8,9,4],\n 2024: [7,7,9,2],\n 2025: [7,6,8,31],\n },\n {\n name: \"Vacances de la Toussaint\",\n 2020: [10,18,11,1],\n 2021: [10,24,11,7],\n 2022: [10,23,11,6],\n 2023: [10,22,11,5],\n 2024: [10,20,11,3],\n 2025: [10,19,11,2],\n },\n {\n name: \"Fin des cours\",\n 2026: [7,4,7,4],\n },\n ]\n },\n \"Grand Est\": {\n \"_state_code\": \"ge\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=France&state=Grand+Est&zoom=18&addressdetails=1&limit=1&accept-language=fr,en\",\n SH: [\n {\n name: \"Vacances d'hiver\",\n 2018: [2,25,3,11],\n 2019: [2,10,2,24],\n 2020: [2,16,3,1],\n 2021: [2,21,3,7],\n 2022: [2,6,2,20],\n 2023: [2,12,2,26],\n 2024: [2,25,3,10],\n 2025: [2,9,2,23],\n 2026: [2,15,3,1],\n 2027: [2,21,3,7],\n },\n {\n name: \"Vacances de printemps\",\n 2018: [4,22,5,6],\n 2019: [4,7,4,22],\n 2020: [4,12,5,26],\n 2021: [4,11,4,25],\n 2022: [4,10,4,24],\n 2023: [4,16,5,1],\n 2024: [4,21,5,5],\n 2025: [4,6,4,21],\n 2026: [4,12,4,26],\n 2027: [4,18,5,2],\n },\n {\n name: \"Pont de l'Ascension\",\n 2018: [5,10,5,10],\n 2019: [5,30,6,2],\n 2020: [5,21,5,24],\n 2021: [5,13,5,16],\n 2022: [5,26,5,29],\n 2023: [5,18,5,21],\n 2027: [5,6,5,9],\n },\n {\n name: \"Vacances d'été\",\n 2018: [7,8,9,2],\n 2019: [7,7,9,1],\n 2020: [7,5,8,31],\n 2021: [7,7,9,1],\n 2022: [7,8,8,31],\n 2023: [7,9,9,3],\n 2024: [7,7,9,1],\n 2025: [7,6,8,31],\n 2026: [7,5,8,31],\n },\n {\n name: \"Vacances de la Toussaint\",\n 2018: [10,21,11,4],\n 2019: [10,20,11,3],\n 2020: [10,18,11,1],\n 2021: [10,24,11,7],\n 2022: [10,23,11,6],\n 2023: [10,22,11,5],\n 2024: [10,20,11,3],\n 2025: [10,19,11,2],\n 2026: [10,18,11,1],\n },\n {\n name: \"Vacances de Noël\",\n 2018: [12,23,1,6],\n 2019: [12,22,1,5],\n 2020: [12,20,1,3],\n 2021: [12,19,1,2],\n 2022: [12,18,1,2],\n 2023: [12,24,1,7],\n 2024: [12,22,1,5],\n 2025: [12,21,1,4],\n 2026: [12,20,1,3],\n },\n {\n name: \"Fin des cours\",\n 2027: [7,3,7,3],\n },\n ]\n },\n \"Guadeloupe\": {\n \"_state_code\": \"gp\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=France&state=Guadeloupe&zoom=18&addressdetails=1&limit=1&accept-language=fr,en\",\n SH: [\n {\n name: \"Vacances de Noël\",\n 2019: [12,22,1,5],\n 2020: [12,20,1,3],\n 2021: [12,19,1,2],\n 2022: [12,18,1,2],\n 2023: [12,24,1,7],\n 2024: [12,22,1,5],\n 2025: [12,21,1,4],\n },\n {\n name: \"Vacances de Carnaval\",\n 2020: [2,16,3,1],\n 2021: [2,10,2,21],\n 2022: [2,20,3,6],\n 2023: [2,12,2,26],\n 2025: [2,23,3,9],\n 2026: [2,8,2,22],\n },\n {\n name: \"Vacances de Pâques\",\n 2020: [4,9,4,22],\n 2021: [3,28,4,11],\n 2022: [4,10,4,24],\n 2023: [4,2,4,26],\n 2025: [4,18,5,4],\n 2026: [4,18,5,4],\n },\n {\n name: \"Semaine en Mai\",\n 2020: [5,22,5,23],\n 2021: [5,29,5,29],\n 2022: [5,23,5,25],\n 2024: [5,10,5,11],\n 2025: [5,30,5,31],\n 2026: [5,15,5,16],\n },\n {\n name: \"Vacances d'été\",\n 2020: [7,5,8,31],\n 2022: [7,8,8,31],\n 2023: [7,9,9,3],\n 2024: [7,7,9,1],\n 2025: [7,6,8,31],\n },\n {\n name: \"Vacances de la Toussaint\",\n 2020: [10,18,11,1],\n 2021: [10,24,11,7],\n 2022: [10,23,11,6],\n 2023: [10,22,11,5],\n 2024: [10,23,11,3],\n 2025: [10,19,11,2],\n },\n {\n name: \"Fin des cours\",\n 2026: [7,4,7,4],\n },\n ]\n },\n \"Guyane\": {\n \"_state_code\": \"gf\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=France&state=Guyane&zoom=18&addressdetails=1&limit=1&accept-language=fr,en\",\n SH: [\n {\n name: \"Vacances de Noël\",\n 2019: [12,22,1,5],\n 2020: [12,20,1,3],\n 2021: [12,19,1,2],\n 2022: [12,18,1,2],\n 2023: [12,24,1,7],\n 2024: [12,22,1,5],\n 2025: [12,21,1,4],\n },\n {\n name: \"Vacances de Carnaval\",\n 2020: [2,16,3,1],\n 2021: [2,14,2,28],\n 2022: [2,20,3,6],\n 2024: [2,11,2,25],\n 2025: [2,23,3,9],\n 2026: [2,8,2,22],\n },\n {\n name: \"Vacances de Pâques\",\n 2020: [4,10,4,27],\n 2021: [4,2,4,18],\n 2022: [4,15,5,1],\n 2024: [4,21,5,2],\n 2025: [4,18,5,4],\n 2026: [4,2,4,15],\n },\n {\n name: \"Pont de l'Ascension\",\n 2020: [5,23,5,24],\n 2021: [5,14,5,15],\n 2022: [5,27,5,28],\n 2023: [5,14,5,21],\n 2024: [5,10,5,11],\n 2025: [5,30,5,31],\n },\n {\n name: \"Vacances d'été\",\n 2020: [7,5,8,31],\n 2021: [7,4,9,1],\n 2023: [7,9,9,3],\n 2025: [7,6,8,31],\n },\n {\n name: \"Vacances de la Toussaint\",\n 2020: [10,25,11,8],\n 2021: [10,24,11,7],\n 2022: [10,23,11,6],\n 2023: [10,22,11,5],\n 2024: [10,20,11,3],\n 2025: [10,19,11,2],\n },\n {\n name: \"Vacances d'hiver\",\n 2023: [2,19,3,5],\n },\n {\n name: \"Semaine en Mai\",\n 2026: [5,15,5,16],\n },\n {\n name: \"Fin des cours\",\n 2026: [7,4,7,4],\n },\n ]\n },\n \"Hauts-de-France\": {\n \"_state_code\": \"hf\",\n SH: [\n {\n name: \"Vacances d'hiver\",\n 2018: [2,25,3,11],\n 2019: [2,10,2,24],\n 2020: [2,16,3,1],\n 2021: [2,21,3,7],\n 2022: [2,6,2,20],\n 2023: [2,12,2,26],\n 2024: [2,25,3,10],\n 2025: [2,9,2,23],\n 2026: [2,15,3,1],\n 2027: [2,21,3,7],\n },\n {\n name: \"Vacances de printemps\",\n 2018: [4,22,5,6],\n 2019: [4,7,4,22],\n 2020: [4,12,5,26],\n 2021: [4,11,4,25],\n 2022: [4,10,4,24],\n 2023: [4,16,5,1],\n 2024: [4,21,5,5],\n 2025: [4,6,4,21],\n 2026: [4,12,4,26],\n 2027: [4,18,5,2],\n },\n {\n name: \"Pont de l'Ascension\",\n 2018: [5,10,5,10],\n 2019: [5,30,6,2],\n 2020: [5,21,5,24],\n 2021: [5,13,5,16],\n 2022: [5,26,5,29],\n 2023: [5,18,5,21],\n 2027: [5,6,5,9],\n },\n {\n name: \"Vacances d'été\",\n 2018: [7,8,9,2],\n 2019: [7,7,9,1],\n 2020: [7,5,8,31],\n 2021: [7,7,9,1],\n 2022: [7,8,8,31],\n 2023: [7,9,9,3],\n 2024: [7,7,9,1],\n 2025: [7,6,8,31],\n 2026: [7,5,8,31],\n },\n {\n name: \"Vacances de la Toussaint\",\n 2018: [10,21,11,4],\n 2019: [10,20,11,3],\n 2020: [10,18,11,1],\n 2021: [10,24,11,7],\n 2022: [10,23,11,6],\n 2023: [10,22,11,5],\n 2024: [10,20,11,3],\n 2025: [10,19,11,2],\n 2026: [10,18,11,1],\n },\n {\n name: \"Vacances de Noël\",\n 2018: [12,23,1,6],\n 2019: [12,22,1,5],\n 2020: [12,20,1,3],\n 2021: [12,19,1,2],\n 2022: [12,18,1,2],\n 2023: [12,24,1,7],\n 2024: [12,22,1,5],\n 2025: [12,21,1,4],\n 2026: [12,20,1,3],\n },\n {\n name: \"Fin des cours\",\n 2027: [7,3,7,3],\n },\n ]\n },\n \"Île-de-France\": {\n \"_state_code\": \"if\",\n SH: [\n {\n name: \"Vacances d'hiver\",\n 2018: [2,18,3,4],\n 2019: [2,24,3,10],\n 2020: [2,9,2,23],\n 2021: [2,14,2,28],\n 2022: [2,20,3,6],\n 2023: [2,19,3,5],\n 2024: [2,11,2,25],\n 2025: [2,16,3,2],\n 2026: [2,22,3,8],\n 2027: [2,7,2,21],\n },\n {\n name: \"Vacances de printemps\",\n 2018: [4,15,4,29],\n 2019: [4,21,5,5],\n 2020: [4,5,4,19],\n 2021: [4,11,4,25],\n 2022: [4,24,5,8],\n 2023: [4,23,5,8],\n 2024: [4,7,4,21],\n 2025: [4,13,4,27],\n 2026: [4,19,5,3],\n 2027: [4,4,4,18],\n },\n {\n name: \"Pont de l'Ascension\",\n 2018: [5,10,5,10],\n 2019: [5,30,6,2],\n 2020: [5,21,5,24],\n 2021: [5,13,5,16],\n 2022: [5,26,5,29],\n 2023: [5,18,5,21],\n 2027: [5,6,5,9],\n },\n {\n name: \"Vacances d'été\",\n 2018: [7,8,9,2],\n 2019: [7,7,9,1],\n 2020: [7,5,8,31],\n 2021: [7,7,9,1],\n 2022: [7,8,8,31],\n 2023: [7,9,9,3],\n 2024: [7,7,9,1],\n 2025: [7,6,8,31],\n 2026: [7,5,8,31],\n },\n {\n name: \"Vacances de la Toussaint\",\n 2018: [10,21,11,4],\n 2019: [10,20,11,3],\n 2020: [10,18,11,1],\n 2021: [10,24,11,7],\n 2022: [10,23,11,6],\n 2023: [10,22,11,5],\n 2024: [10,20,11,3],\n 2025: [10,19,11,2],\n 2026: [10,18,11,1],\n },\n {\n name: \"Vacances de Noël\",\n 2018: [12,23,1,6],\n 2019: [12,22,1,5],\n 2020: [12,20,1,3],\n 2021: [12,19,1,2],\n 2022: [12,18,1,2],\n 2023: [12,24,1,7],\n 2024: [12,22,1,5],\n 2025: [12,21,1,4],\n 2026: [12,20,1,3],\n },\n {\n name: \"Fin des cours\",\n 2027: [7,3,7,3],\n },\n ]\n },\n \"La Réunion\": {\n \"_state_code\": \"re\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=France&state=La+R%C3%A9union&zoom=18&addressdetails=1&limit=1&accept-language=fr,en\",\n SH: [\n {\n name: \"Vacances d'été austral\",\n 2019: [12,20,1,26],\n 2020: [12,20,1,24],\n 2021: [12,19,1,23],\n 2022: [12,18,1,22],\n 2023: [12,20,1,21],\n 2024: [12,20,1,20],\n 2025: [12,20,1,20],\n 2026: [12,20,1,31],\n },\n {\n name: \"Vacances après troisième période\",\n 2020: [3,9,3,22],\n 2021: [3,7,3,21],\n 2022: [3,13,3,27],\n 2023: [3,12,3,26],\n 2024: [3,3,3,17],\n 2025: [3,2,3,16],\n 2026: [3,1,3,15],\n 2027: [3,17,3,29],\n },\n {\n name: \"Vacances après quatrième période\",\n 2020: [5,1,5,13],\n 2021: [5,5,5,16],\n 2022: [5,15,5,29],\n 2023: [5,14,5,29],\n 2024: [5,5,5,20],\n 2025: [5,4,5,18],\n 2026: [5,3,5,17],\n 2027: [5,6,5,18],\n },\n {\n name: \"Vacances d'hiver austral\",\n 2020: [7,5,8,16],\n 2021: [7,8,8,15],\n 2022: [7,10,8,15],\n 2023: [7,9,8,16],\n 2024: [7,7,8,18],\n 2025: [7,6,8,18],\n 2026: [7,5,8,17],\n 2027: [7,11,8,15],\n },\n {\n name: \"Vacances après première période\",\n 2020: [10,11,10,25],\n 2021: [10,10,10,24],\n 2022: [10,9,10,23],\n 2023: [10,15,10,29],\n 2024: [10,13,10,27],\n 2025: [10,12,10,26],\n 2026: [10,11,10,24],\n },\n ]\n },\n \"Martinique\": {\n \"_state_code\": \"mq\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=France&state=Martinique&zoom=18&addressdetails=1&limit=1&accept-language=fr,en\",\n SH: [\n {\n name: \"Vacances de Noël\",\n 2019: [12,22,1,5],\n 2020: [12,20,1,3],\n 2021: [12,19,1,2],\n 2022: [12,18,1,2],\n 2023: [12,24,1,7],\n 2024: [12,22,1,5],\n 2025: [12,21,1,4],\n },\n {\n name: \"Vacances de Carnaval\",\n 2020: [2,23,3,8],\n 2021: [2,7,2,21],\n 2022: [2,20,3,6],\n 2023: [2,12,2,26],\n 2024: [2,11,2,25],\n 2025: [2,23,3,9],\n 2026: [2,8,2,22],\n },\n {\n name: \"Vacances de Pâques\",\n 2020: [4,5,4,19],\n 2021: [3,28,4,11],\n 2022: [4,10,4,24],\n 2023: [4,2,4,16],\n 2024: [3,24,4,7],\n 2025: [4,13,4,27],\n 2026: [3,28,4,12],\n },\n {\n name: \"Pas de cours\",\n 2020: [5,22,5,23],\n 2021: [5,14,5,15],\n 2022: [5,27,5,28],\n 2023: [5,19,5,20],\n 2024: [5,10,5,11],\n 2025: [5,30,5,31],\n 2026: [5,15,5,16],\n },\n {\n name: \"Vacances d'été\",\n 2020: [7,5,8,31],\n 2021: [7,7,9,1],\n 2022: [7,8,8,31],\n 2023: [7,9,9,3],\n 2024: [7,7,9,1],\n 2025: [7,6,8,31],\n },\n {\n name: \"Vacances de la Toussaint\",\n 2020: [10,25,11,8],\n 2021: [10,24,11,7],\n 2022: [10,23,11,6],\n 2023: [10,22,11,5],\n 2024: [10,20,11,3],\n 2025: [10,19,11,2],\n },\n {\n name: \"Fin des cours\",\n 2026: [7,4,7,4],\n },\n ]\n },\n \"Mayotte\": {\n \"_state_code\": \"yt\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=France&state=Mayotte&zoom=18&addressdetails=1&limit=1&accept-language=fr,en\",\n SH: [\n {\n name: \"Vacances de Noël\",\n 2019: [12,15,1,12],\n 2020: [12,13,1,10],\n 2021: [12,12,1,9],\n 2022: [12,11,1,8],\n 2023: [12,17,1,14],\n 2024: [12,15,1,12],\n 2025: [12,14,1,11],\n },\n {\n name: \"Vacances de février\",\n 2020: [3,1,3,15],\n 2021: [2,28,3,14],\n 2022: [2,27,3,13],\n 2023: [2,19,3,5],\n 2024: [2,25,3,10],\n 2025: [3,2,3,16],\n 2026: [3,2,3,8],\n },\n {\n name: \"Vacances de Pâques\",\n 2020: [5,3,5,10],\n 2021: [5,2,5,16],\n 2022: [5,1,5,15],\n 2023: [4,23,5,7],\n 2024: [4,28,5,12],\n 2025: [4,27,5,11],\n 2026: [4,26,5,11],\n },\n {\n name: \"Vacances d'été\",\n 2020: [7,5,8,23],\n 2021: [7,7,8,23],\n 2022: [7,6,8,23],\n 2023: [7,8,8,22],\n 2024: [7,7,8,25],\n 2025: [7,5,8,22],\n },\n {\n name: \"Vacances de la Toussaint\",\n 2020: [10,11,10,25],\n 2021: [10,10,10,24],\n 2022: [10,9,10,23],\n 2023: [10,15,10,29],\n 2024: [10,13,10,27],\n 2025: [10,12,10,26],\n },\n {\n name: \"Fin des cours\",\n 2026: [7,4,8,21],\n },\n ]\n },\n \"Normandie\": {\n \"_state_code\": \"no\",\n SH: [\n {\n name: \"Vacances d'hiver\",\n 2018: [2,25,3,11],\n 2019: [2,10,2,24],\n 2020: [2,16,3,1],\n 2021: [2,21,3,7],\n 2022: [2,6,2,20],\n 2023: [2,12,2,26],\n 2024: [2,25,3,10],\n 2025: [2,9,2,23],\n 2026: [2,15,3,1],\n 2027: [2,21,3,7],\n },\n {\n name: \"Vacances de printemps\",\n 2018: [4,22,5,6],\n 2019: [4,7,4,22],\n 2020: [4,12,5,26],\n 2021: [4,11,4,25],\n 2022: [4,10,4,24],\n 2023: [4,16,5,1],\n 2024: [4,21,5,5],\n 2025: [4,6,4,21],\n 2026: [4,12,4,26],\n 2027: [4,18,5,2],\n },\n {\n name: \"Pont de l'Ascension\",\n 2018: [5,10,5,10],\n 2019: [5,30,6,2],\n 2020: [5,21,5,24],\n 2021: [5,13,5,16],\n 2022: [5,26,5,29],\n 2023: [5,18,5,21],\n 2027: [5,6,5,9],\n },\n {\n name: \"Vacances d'été\",\n 2018: [7,8,9,2],\n 2019: [7,7,9,1],\n 2020: [7,5,8,31],\n 2021: [7,7,9,1],\n 2022: [7,8,8,31],\n 2023: [7,9,9,3],\n 2024: [7,7,9,1],\n 2025: [7,6,8,31],\n 2026: [7,5,8,31],\n },\n {\n name: \"Vacances de la Toussaint\",\n 2018: [10,21,11,4],\n 2019: [10,20,11,3],\n 2020: [10,18,11,1],\n 2021: [10,24,11,7],\n 2022: [10,23,11,6],\n 2023: [10,22,11,5],\n 2024: [10,20,11,3],\n 2025: [10,19,11,2],\n 2026: [10,18,11,1],\n },\n {\n name: \"Vacances de Noël\",\n 2018: [12,23,1,6],\n 2019: [12,22,1,5],\n 2020: [12,20,1,3],\n 2021: [12,19,1,2],\n 2022: [12,18,1,2],\n 2023: [12,24,1,7],\n 2024: [12,22,1,5],\n 2025: [12,21,1,4],\n 2026: [12,20,1,3],\n },\n {\n name: \"Fin des cours\",\n 2027: [7,3,7,3],\n },\n ]\n },\n \"Nouvelle-Aquitaine\": {\n \"_state_code\": \"na\",\n SH: [\n {\n name: \"Vacances d'hiver\",\n 2018: [2,11,2,25],\n 2019: [2,17,3,3],\n 2021: [2,7,2,21],\n 2022: [2,13,2,27],\n 2023: [2,5,2,19],\n 2024: [2,18,3,3],\n 2025: [2,23,3,9],\n 2026: [2,8,2,22],\n 2027: [2,14,2,28],\n },\n {\n name: \"Vacances de printemps\",\n 2018: [4,8,4,22],\n 2019: [4,14,4,28],\n 2020: [4,19,5,3],\n 2021: [4,11,4,25],\n 2022: [4,17,5,1],\n 2023: [4,9,4,23],\n 2024: [4,14,4,28],\n 2025: [4,20,5,4],\n 2026: [4,5,4,19],\n 2027: [4,11,4,25],\n },\n {\n name: \"Pont de l'Ascension\",\n 2018: [5,10,5,10],\n 2019: [5,30,6,2],\n 2020: [5,21,5,24],\n 2021: [5,13,5,16],\n 2022: [5,26,5,29],\n 2023: [5,18,5,21],\n 2027: [5,6,5,9],\n },\n {\n name: \"Vacances d'été\",\n 2018: [7,8,9,2],\n 2019: [7,7,9,1],\n 2020: [7,5,8,31],\n 2021: [7,7,9,1],\n 2022: [7,8,8,31],\n 2023: [7,9,9,3],\n 2024: [7,7,9,1],\n 2025: [7,6,8,31],\n 2026: [7,5,8,31],\n },\n {\n name: \"Vacances de la Toussaint\",\n 2018: [10,21,11,4],\n 2019: [10,20,11,3],\n 2020: [10,18,11,1],\n 2021: [10,24,11,7],\n 2022: [10,23,11,6],\n 2023: [10,22,11,5],\n 2024: [10,20,11,3],\n 2025: [10,19,11,2],\n 2026: [10,18,11,1],\n },\n {\n name: \"Vacances de Noël\",\n 2018: [12,23,1,6],\n 2019: [12,22,1,5],\n 2020: [12,20,1,3],\n 2021: [12,19,1,2],\n 2022: [12,18,1,2],\n 2023: [12,24,1,7],\n 2024: [12,22,1,5],\n 2025: [12,21,1,4],\n 2026: [12,20,1,3],\n },\n {\n name: \"Fin des cours\",\n 2027: [7,3,7,3],\n },\n ]\n },\n \"Nouvelle-Calédonie\": {\n \"_state_code\": \"nc\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=France&state=Nouvelle-Cal%C3%A9donie&zoom=18&addressdetails=1&limit=1&accept-language=fr,en\"\n },\n \"Occitanie\": {\n \"_state_code\": \"oc\",\n SH: [\n {\n name: \"Vacances d'hiver\",\n 2018: [2,18,3,4],\n 2019: [2,24,3,10],\n 2020: [2,9,2,23],\n 2021: [2,14,2,28],\n 2022: [2,20,3,6],\n 2023: [2,19,3,5],\n 2024: [2,11,2,25],\n 2025: [2,16,3,2],\n 2026: [2,22,3,8],\n },\n {\n name: \"Vacances de printemps\",\n 2018: [4,15,4,29],\n 2019: [4,21,5,5],\n 2020: [4,5,4,19],\n 2021: [4,11,4,25],\n 2022: [4,24,5,8],\n 2023: [4,23,5,8],\n 2024: [4,7,4,21],\n 2025: [4,13,4,27],\n 2026: [4,19,5,3],\n 2027: [4,4,4,18],\n },\n {\n name: \"Pont de l'Ascension\",\n 2018: [5,10,5,10],\n 2019: [5,30,6,2],\n 2020: [5,21,5,24],\n 2021: [5,13,5,16],\n 2022: [5,26,5,29],\n 2023: [5,18,5,21],\n 2027: [5,6,5,9],\n },\n {\n name: \"Vacances d'été\",\n 2018: [7,8,9,2],\n 2019: [7,7,9,1],\n 2020: [7,5,8,31],\n 2021: [7,7,9,1],\n 2022: [7,8,8,31],\n 2023: [7,9,9,3],\n 2024: [7,7,9,1],\n 2025: [7,6,8,31],\n 2026: [7,5,8,31],\n },\n {\n name: \"Vacances de la Toussaint\",\n 2018: [10,21,11,4],\n 2019: [10,20,11,3],\n 2020: [10,18,11,1],\n 2021: [10,24,11,7],\n 2022: [10,23,11,6],\n 2023: [10,22,11,5],\n 2024: [10,20,11,3],\n 2025: [10,19,11,2],\n 2026: [10,18,11,1],\n },\n {\n name: \"Vacances de Noël\",\n 2018: [12,23,1,6],\n 2019: [12,22,1,5],\n 2020: [12,20,1,3],\n 2021: [12,19,1,2],\n 2022: [12,18,1,2],\n 2023: [12,24,1,7],\n 2024: [12,22,1,5],\n 2025: [12,21,1,4],\n 2026: [12,20,1,3],\n },\n {\n name: \"Fin des cours\",\n 2027: [7,3,7,3],\n },\n ]\n },\n \"Pays de la Loire\": {\n \"_state_code\": \"pl\",\n SH: [\n {\n name: \"Vacances d'hiver\",\n 2018: [2,25,3,11],\n 2019: [2,10,2,24],\n 2020: [2,16,3,1],\n 2021: [2,21,3,7],\n 2022: [2,6,2,20],\n 2023: [2,12,2,26],\n 2024: [2,25,3,10],\n 2025: [2,9,2,23],\n 2026: [2,15,3,1],\n 2027: [2,21,3,7],\n },\n {\n name: \"Vacances de printemps\",\n 2018: [4,22,5,6],\n 2019: [4,7,4,22],\n 2020: [4,12,5,26],\n 2021: [4,11,4,25],\n 2022: [4,10,4,24],\n 2023: [4,16,5,1],\n 2024: [4,21,5,5],\n 2025: [4,6,4,21],\n 2026: [4,12,4,26],\n 2027: [4,18,5,2],\n },\n {\n name: \"Pont de l'Ascension\",\n 2018: [5,10,5,10],\n 2019: [5,30,6,2],\n 2020: [5,21,5,24],\n 2021: [5,13,5,16],\n 2022: [5,26,5,29],\n 2023: [5,18,5,21],\n 2027: [5,6,5,9],\n },\n {\n name: \"Vacances d'été\",\n 2018: [7,8,9,2],\n 2019: [7,7,9,1],\n 2020: [7,5,8,31],\n 2021: [7,7,9,1],\n 2022: [7,8,8,31],\n 2023: [7,9,9,3],\n 2024: [7,7,9,1],\n 2025: [7,6,8,31],\n 2026: [7,5,8,31],\n },\n {\n name: \"Vacances de la Toussaint\",\n 2018: [10,21,11,4],\n 2019: [10,20,11,3],\n 2020: [10,18,11,1],\n 2021: [10,24,11,7],\n 2022: [10,23,11,6],\n 2023: [10,22,11,5],\n 2024: [10,20,11,3],\n 2025: [10,19,11,2],\n 2026: [10,18,11,1],\n },\n {\n name: \"Vacances de Noël\",\n 2018: [12,23,1,6],\n 2019: [12,22,1,5],\n 2020: [12,20,1,3],\n 2021: [12,19,1,2],\n 2022: [12,18,1,2],\n 2023: [12,24,1,7],\n 2024: [12,22,1,5],\n 2025: [12,21,1,4],\n 2026: [12,20,1,3],\n },\n {\n name: \"Fin des cours\",\n 2027: [7,3,7,3],\n },\n ]\n },\n \"Polynésie française\": {\n \"_state_code\": \"pf\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=France&state=Polyn%C3%A9sie+fran%C3%A7aise&zoom=18&addressdetails=1&limit=1&accept-language=fr,en\"\n },\n \"Provence-Alpes-Côte d'Azur\": {\n \"_state_code\": \"pc\",\n SH: [\n {\n name: \"Vacances d'hiver\",\n 2018: [2,25,3,11],\n 2019: [2,10,2,24],\n 2020: [2,16,3,1],\n 2021: [2,21,3,7],\n 2022: [2,6,2,20],\n 2023: [2,12,2,26],\n 2024: [2,25,3,10],\n 2025: [2,9,2,23],\n 2026: [2,15,3,1],\n 2027: [2,21,3,7],\n },\n {\n name: \"Vacances de printemps\",\n 2018: [4,22,5,6],\n 2019: [4,7,4,22],\n 2020: [4,12,5,26],\n 2021: [4,11,4,25],\n 2022: [4,10,4,24],\n 2023: [4,16,5,1],\n 2024: [4,21,5,5],\n 2025: [4,6,4,21],\n 2026: [4,12,4,26],\n 2027: [4,18,5,2],\n },\n {\n name: \"Pont de l'Ascension\",\n 2018: [5,10,5,10],\n 2019: [5,30,6,2],\n 2020: [5,21,5,24],\n 2021: [5,13,5,16],\n 2022: [5,26,5,29],\n 2023: [5,18,5,21],\n 2027: [5,6,5,9],\n },\n {\n name: \"Vacances d'été\",\n 2018: [7,8,9,2],\n 2019: [7,7,9,1],\n 2020: [7,5,8,31],\n 2021: [7,7,9,1],\n 2022: [7,8,8,31],\n 2023: [7,9,9,3],\n 2024: [7,7,9,1],\n 2025: [7,6,8,31],\n 2026: [7,5,8,31],\n },\n {\n name: \"Vacances de la Toussaint\",\n 2018: [10,21,11,4],\n 2019: [10,20,11,3],\n 2020: [10,18,11,1],\n 2021: [10,24,11,7],\n 2022: [10,23,11,6],\n 2023: [10,22,11,5],\n 2024: [10,20,11,3],\n 2025: [10,19,11,2],\n 2026: [10,18,11,1],\n },\n {\n name: \"Vacances de Noël\",\n 2018: [12,23,1,6],\n 2019: [12,22,1,5],\n 2020: [12,20,1,3],\n 2021: [12,19,1,2],\n 2022: [12,18,1,2],\n 2023: [12,24,1,7],\n 2024: [12,22,1,5],\n 2025: [12,21,1,4],\n 2026: [12,20,1,3],\n },\n {\n name: \"Fin des cours\",\n 2027: [7,3,7,3],\n },\n ]\n },\n \"Saint-Barthélemy\": {\n \"_state_code\": \"bl\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=France&state=Saint-Barth%C3%A9lemy&zoom=18&addressdetails=1&limit=1&accept-language=fr,en\",\n SH: [\n {\n name: \"Vacances de Noël\",\n 2019: [12,22,1,5],\n 2020: [12,20,1,3],\n 2021: [12,19,1,2],\n 2022: [12,18,1,2],\n 2023: [12,24,1,7],\n 2024: [12,22,1,5],\n 2025: [12,21,1,4],\n },\n {\n name: \"Vacances de Carnaval\",\n 2020: [2,16,3,1],\n 2021: [2,10,2,21],\n 2022: [2,20,3,6],\n 2023: [2,12,2,26],\n 2025: [2,23,3,9],\n 2026: [2,8,2,22],\n },\n {\n name: \"Vacances de Pâques\",\n 2020: [4,9,4,22],\n 2021: [3,28,4,11],\n 2022: [4,10,4,24],\n 2023: [4,2,4,26],\n 2025: [4,18,5,4],\n 2026: [4,18,5,4],\n },\n {\n name: \"Semaine en Mai\",\n 2020: [5,22,5,23],\n 2024: [5,10,5,11],\n 2025: [5,30,5,31],\n 2026: [5,15,5,16],\n },\n {\n name: \"Vacances d'été\",\n 2020: [7,5,8,31],\n 2022: [7,8,8,31],\n 2023: [7,9,9,3],\n 2024: [7,7,9,1],\n 2025: [7,6,8,31],\n },\n {\n name: \"Vacances de la Toussaint\",\n 2020: [10,18,11,1],\n 2021: [10,24,11,7],\n 2022: [10,23,11,6],\n 2023: [10,22,11,5],\n 2024: [10,23,11,3],\n 2025: [10,19,11,2],\n },\n {\n name: \"Fin des cours\",\n 2026: [7,4,7,4],\n },\n ]\n },\n \"Saint-Martin\": {\n \"_state_code\": \"mf\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=France&state=Saint-Martin&zoom=18&addressdetails=1&limit=1&accept-language=fr,en\",\n SH: [\n {\n name: \"Vacances de Noël\",\n 2019: [12,22,1,5],\n 2020: [12,20,1,3],\n 2021: [12,19,1,2],\n 2022: [12,18,1,2],\n 2023: [12,24,1,7],\n 2024: [12,22,1,5],\n 2025: [12,21,1,4],\n },\n {\n name: \"Vacances de Carnaval\",\n 2020: [2,16,3,1],\n 2021: [2,10,2,21],\n 2022: [2,20,3,6],\n 2023: [2,12,2,26],\n 2025: [2,23,3,9],\n 2026: [2,8,2,22],\n },\n {\n name: \"Vacances de Pâques\",\n 2020: [4,9,4,22],\n 2021: [3,28,4,11],\n 2022: [4,10,4,24],\n 2023: [4,2,4,26],\n 2025: [4,18,5,4],\n 2026: [4,18,5,4],\n },\n {\n name: \"Semaine en Mai\",\n 2020: [5,22,5,23],\n 2021: [5,29,5,29],\n 2022: [5,23,5,25],\n 2024: [5,10,5,11],\n 2025: [5,30,5,31],\n },\n {\n name: \"Vacances d'été\",\n 2020: [7,5,8,31],\n 2022: [7,8,8,31],\n 2023: [7,9,9,3],\n 2024: [7,7,9,1],\n 2025: [7,6,8,31],\n },\n {\n name: \"Vacances de la Toussaint\",\n 2020: [10,18,11,1],\n 2021: [10,24,11,7],\n 2022: [10,23,11,6],\n 2023: [10,22,11,5],\n 2024: [10,23,11,3],\n 2025: [10,19,11,2],\n },\n {\n name: \"Fin des cours\",\n 2026: [7,4,7,4],\n },\n ]\n },\n \"Saint-Pierre-et-Miquelon\": {\n \"_state_code\": \"sp\",\n SH: [\n {\n name: \"Vacances de Noël\",\n 2019: [12,22,1,5],\n 2020: [12,20,1,3],\n 2021: [12,19,1,2],\n 2022: [12,18,1,2],\n 2023: [12,24,1,7],\n 2024: [12,22,1,5],\n 2025: [12,21,1,4],\n },\n {\n name: \"Pont de l'Ascension\",\n 2020: [5,21,5,24],\n 2021: [5,13,5,16],\n 2022: [5,26,5,29],\n 2023: [5,18,5,21],\n 2025: [5,28,6,1],\n },\n {\n name: \"Vacances d'été\",\n 2020: [7,5,8,31],\n 2021: [7,7,9,1],\n 2022: [7,8,8,31],\n 2023: [7,9,9,3],\n 2024: [7,7,9,1],\n 2025: [7,6,8,31],\n },\n {\n name: \"Vacances de la Toussaint\",\n 2020: [10,18,11,1],\n 2021: [10,24,11,7],\n 2022: [10,23,11,6],\n 2023: [10,22,11,5],\n 2024: [10,23,11,3],\n 2025: [10,19,11,2],\n },\n {\n name: \"Vacances de printemps\",\n 2021: [4,11,4,25],\n 2025: [4,19,5,4],\n },\n {\n name: \"Vacances d'hiver\",\n 2025: [2,23,3,9],\n },\n {\n name: \"Fin des cours\",\n 2026: [7,4,7,4],\n },\n ]\n },\n \"Wallis-et-Futuna\": {\n \"_state_code\": \"wf\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=France&state=Wallis-et-Futuna&zoom=18&addressdetails=1&limit=1&accept-language=fr,en\"\n },\n \"Zone A\": {\n \"_state_code\": \"za\",\n SH: [\n {\n name: \"Vacances de Noël\",\n 2019: [12,22,1,5],\n 2020: [12,20,1,3],\n 2021: [12,19,1,2],\n 2022: [12,18,1,2],\n 2023: [12,24,1,7],\n 2024: [12,22,1,5],\n 2025: [12,21,1,4],\n 2026: [12,20,1,3],\n },\n {\n name: \"Vacances de printemps\",\n 2020: [4,19,5,3],\n 2021: [4,11,4,25],\n 2022: [4,17,5,1],\n 2023: [4,9,4,23],\n 2024: [4,14,4,28],\n 2025: [4,20,5,4],\n 2026: [4,5,4,19],\n 2027: [4,11,4,25],\n },\n {\n name: \"Pont de l'Ascension\",\n 2020: [5,21,5,24],\n 2021: [5,13,5,16],\n 2022: [5,26,5,29],\n 2023: [5,18,5,21],\n 2027: [5,6,5,9],\n },\n {\n name: \"Vacances d'été\",\n 2020: [7,5,8,31],\n 2021: [7,7,9,1],\n 2022: [7,8,8,31],\n 2023: [7,9,9,3],\n 2024: [7,7,9,1],\n 2025: [7,6,8,31],\n 2026: [7,5,8,31],\n },\n {\n name: \"Vacances de la Toussaint\",\n 2020: [10,18,11,1],\n 2021: [10,24,11,7],\n 2022: [10,23,11,6],\n 2023: [10,22,11,5],\n 2024: [10,20,11,3],\n 2025: [10,19,11,2],\n 2026: [10,18,11,1],\n },\n {\n name: \"Vacances d'hiver\",\n 2021: [2,7,2,21],\n 2022: [2,13,2,27],\n 2023: [2,5,2,19],\n 2024: [2,18,3,3],\n 2025: [2,23,3,9],\n 2026: [2,8,2,22],\n 2027: [2,14,2,28],\n },\n {\n name: \"Fin des cours\",\n 2027: [7,3,7,3],\n },\n ]\n },\n \"Zone B\": {\n \"_state_code\": \"zb\",\n SH: [\n {\n name: \"Vacances de Noël\",\n 2019: [12,22,1,5],\n 2020: [12,20,1,3],\n 2021: [12,19,1,2],\n 2022: [12,18,1,2],\n 2023: [12,24,1,7],\n 2024: [12,22,1,5],\n 2025: [12,21,1,4],\n 2026: [12,20,1,3],\n },\n {\n name: \"Vacances d'hiver\",\n 2020: [2,16,3,1],\n 2021: [2,21,3,7],\n 2022: [2,6,2,20],\n 2023: [2,12,2,26],\n 2024: [2,25,3,10],\n 2025: [2,9,2,23],\n 2026: [2,15,3,1],\n 2027: [2,21,3,7],\n },\n {\n name: \"Vacances de printemps\",\n 2020: [4,12,5,26],\n 2021: [4,11,4,25],\n 2022: [4,10,4,24],\n 2023: [4,16,5,1],\n 2024: [4,21,5,5],\n 2025: [4,6,4,21],\n 2026: [4,12,4,26],\n 2027: [4,18,5,2],\n },\n {\n name: \"Pont de l'Ascension\",\n 2020: [5,21,5,24],\n 2021: [5,13,5,16],\n 2022: [5,26,5,29],\n 2023: [5,18,5,21],\n 2027: [5,6,5,9],\n },\n {\n name: \"Vacances d'été\",\n 2020: [7,5,8,31],\n 2021: [7,7,9,1],\n 2022: [7,8,8,31],\n 2023: [7,9,9,3],\n 2024: [7,7,9,1],\n 2025: [7,6,8,31],\n 2026: [7,5,8,31],\n },\n {\n name: \"Vacances de la Toussaint\",\n 2020: [10,18,11,1],\n 2021: [10,24,11,7],\n 2022: [10,23,11,6],\n 2023: [10,22,11,5],\n 2024: [10,20,11,3],\n 2025: [10,19,11,2],\n 2026: [10,18,11,1],\n },\n {\n name: \"Fin des cours\",\n 2027: [7,3,7,3],\n },\n ]\n },\n \"Zone C\": {\n \"_state_code\": \"zc\",\n SH: [\n {\n name: \"Vacances de Noël\",\n 2019: [12,22,1,5],\n 2020: [12,20,1,3],\n 2021: [12,19,1,2],\n 2022: [12,18,1,2],\n 2023: [12,24,1,7],\n 2024: [12,22,1,5],\n 2025: [12,21,1,4],\n 2026: [12,20,1,3],\n },\n {\n name: \"Vacances d'hiver\",\n 2020: [2,9,2,23],\n 2021: [2,14,2,28],\n 2022: [2,20,3,6],\n 2023: [2,19,3,5],\n 2024: [2,11,2,25],\n 2025: [2,16,3,2],\n 2026: [2,22,3,8],\n 2027: [2,7,2,21],\n },\n {\n name: \"Vacances de printemps\",\n 2020: [4,5,4,19],\n 2021: [4,11,4,25],\n 2022: [4,24,5,8],\n 2023: [4,23,5,8],\n 2024: [4,7,4,21],\n 2025: [4,13,4,27],\n 2026: [4,19,5,3],\n 2027: [4,4,4,18],\n },\n {\n name: \"Pont de l'Ascension\",\n 2020: [5,21,5,24],\n 2021: [5,13,5,16],\n 2022: [5,26,5,29],\n 2023: [5,18,5,21],\n 2027: [5,6,5,9],\n },\n {\n name: \"Vacances d'été\",\n 2020: [7,5,8,31],\n 2021: [7,7,9,1],\n 2022: [7,8,8,31],\n 2023: [7,9,9,3],\n 2024: [7,7,9,1],\n 2025: [7,6,8,31],\n 2026: [7,5,8,31],\n },\n {\n name: \"Vacances de la Toussaint\",\n 2020: [10,18,11,1],\n 2021: [10,24,11,7],\n 2022: [10,23,11,6],\n 2023: [10,22,11,5],\n 2024: [10,20,11,3],\n 2025: [10,19,11,2],\n 2026: [10,18,11,1],\n },\n {\n name: \"Fin des cours\",\n 2027: [7,3,7,3],\n },\n ]\n }\n};\n\nexport const gb = {\n \"England\": {\n \"_state_code\": \"eng\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=51.5073219&lon=-0.1276474&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year’s Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if saturday,sunday then next monday\",\"substitute_name\":\"New Year’s Day (substitute day)\"},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Easter Monday\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Early May bank holiday\",\"variable_date\":\"firstMayMonday\"},{\"name\":\"Spring bank holiday\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Summer bank holiday\",\"variable_date\":\"lastAugustMonday\"},{\"name\":\"Christmas\",\"fixed_date\":[12,25],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\",\"substitute_name\":\"Christmas Day (substitute day)\"},{\"name\":\"Boxing Day\",\"fixed_date\":[12,26],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\",\"substitute_name\":\"Boxing Day (substitute day)\"}]\n },\n \"Northern Ireland\": {\n \"_state_code\": \"nir\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=54.5950675&lon=-5.9298401&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year’s Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if saturday,sunday then next monday\",\"substitute_name\":\"New Year’s Day (substitute day)\"},{\"name\":\"St Patrick’s Day\",\"variable_date\":\"nextMo-Fr17March\"},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Easter Monday\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Early May bank holiday\",\"variable_date\":\"firstMayMonday\"},{\"name\":\"Spring bank holiday\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Battle of the Boyne\",\"variable_date\":\"nextMo-Fr12July\"},{\"name\":\"Summer bank holiday\",\"variable_date\":\"lastAugustMonday\"},{\"name\":\"Christmas\",\"fixed_date\":[12,25],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\",\"substitute_name\":\"Christmas Day (substitute day)\"},{\"name\":\"Boxing Day\",\"fixed_date\":[12,26],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\",\"substitute_name\":\"Boxing Day (substitute day)\"}]\n },\n \"Scotland\": {\n \"_state_code\": \"sct\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=55.9557307&lon=-3.1976026&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year’s Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if saturday,sunday then next monday\",\"substitute_name\":\"New Year’s Day (substitute day)\"},{\"name\":\"2nd January\",\"fixed_date\":[1,2],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday if monday then next tuesday\",\"substitute_name\":\"2nd January (substitute day)\"},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Early May bank holiday\",\"variable_date\":\"firstMayMonday\"},{\"name\":\"Spring bank holiday\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Summer bank holiday\",\"variable_date\":\"firstAugustMonday\"},{\"name\":\"St. Andrew’s Day\",\"variable_date\":\"nextMo-Fr30November\"},{\"name\":\"Christmas\",\"fixed_date\":[12,25],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\",\"substitute_name\":\"Christmas Day (substitute day)\"},{\"name\":\"Boxing Day\",\"fixed_date\":[12,26],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\",\"substitute_name\":\"Boxing Day (substitute day)\"}]\n },\n \"Wales\": {\n \"_state_code\": \"wls\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=52.2928116&lon=-3.73893&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year’s Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if saturday,sunday then next monday\",\"substitute_name\":\"New Year’s Day (substitute day)\"},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Easter Monday\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Early May bank holiday\",\"variable_date\":\"firstMayMonday\"},{\"name\":\"Spring bank holiday\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Summer bank holiday\",\"variable_date\":\"lastAugustMonday\"},{\"name\":\"Christmas\",\"fixed_date\":[12,25],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\",\"substitute_name\":\"Christmas Day (substitute day)\"},{\"name\":\"Boxing Day\",\"fixed_date\":[12,26],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\",\"substitute_name\":\"Boxing Day (substitute day)\"}]\n }\n};\n\nexport const ge = {\n PH: [{\"name\":\"ახალი წელი\",\"fixed_date\":[1,1]},{\"name\":\"ბედობა\",\"fixed_date\":[1,2]},{\"name\":\"შობა\",\"fixed_date\":[1,7]},{\"name\":\"ნათლისღება\",\"fixed_date\":[1,19]},{\"name\":\"დედის დღე\",\"fixed_date\":[3,3]},{\"name\":\"ქალთა საერთაშორისო დღე\",\"fixed_date\":[3,8]},{\"name\":\"ეროვნული ერთიანობის დღე\",\"fixed_date\":[4,9]},{\"name\":\"წითელი პარასკევი\",\"variable_date\":\"orthodox easter\",\"offset\":-2},{\"name\":\"დიდი შაბათი\",\"variable_date\":\"orthodox easter\",\"offset\":-1},{\"name\":\"აღდგომა\",\"variable_date\":\"orthodox easter\"},{\"name\":\"აღდგომის ორშაბათი\",\"variable_date\":\"orthodox easter\",\"offset\":1},{\"name\":\"ფაშიზმზე გამარჯვების დღე\",\"fixed_date\":[5,9]},{\"name\":\"წმინდა ანდრია პირველწოდებულის ხსენების დღე\",\"fixed_date\":[5,12]},{\"name\":\"დამოუკიდებლობის დღე\",\"fixed_date\":[5,26]},{\"name\":\"მარიამობა\",\"fixed_date\":[8,28]},{\"name\":\"სვეტიცხოვლობა\",\"fixed_date\":[10,14]},{\"name\":\"გიორგობა\",\"fixed_date\":[11,23]}],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=41.7151&lon=44.8271&zoom=18&addressdetails=1&accept-language=ka,en\"\n};\n\nexport const gg = {\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if saturday,sunday then next monday\"},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Easter Monday\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Early May bank holiday\",\"variable_date\":\"firstMayMonday\"},{\"name\":\"Liberation Day\",\"fixed_date\":[5,9]},{\"name\":\"Spring bank holiday\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\"},{\"name\":\"Boxing Day\",\"fixed_date\":[12,26],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\"}]\n};\n\nexport const gi = {\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if saturday,sunday then next monday\"},{\"name\":\"Commonwealth Day\",\"variable_date\":\"firstMarchMonday\",\"offset\":7},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Easter Monday\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Workers Memorial Day\",\"fixed_date\":[4,28]},{\"name\":\"May Day\",\"fixed_date\":[5,1],\"shift_rule\":\"if sunday, saturday then next monday\"},{\"name\":\"Spring bank holiday\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Late Summer Bank Holiday\",\"variable_date\":\"lastAugustMonday\"},{\"name\":\"Gibraltar National Day\",\"fixed_date\":[9,10],\"substitute_rule\":\"if sunday, saturday then previous monday\"},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\"},{\"name\":\"Boxing Day\",\"fixed_date\":[12,26],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\"},{\"name\":\"Queen's Birthday\",\"variable_date\":\"mondayBefore20Jun\"}]\n};\n\nexport const gr = {\n PH: [{\"name\":\"Πρωτοχρονιά\",\"fixed_date\":[1,1]},{\"name\":\"Θεοφάνια\",\"fixed_date\":[1,6]},{\"name\":\"25η Μαρτίου\",\"fixed_date\":[3,25]},{\"name\":\"Καθαρά Δευτέρα\",\"variable_date\":\"orthodox easter\",\"offset\":-48},{\"name\":\"Μεγάλη Παρασκευή\",\"variable_date\":\"orthodox easter\",\"offset\":-2},{\"name\":\"Πάσχα\",\"variable_date\":\"orthodox easter\"},{\"name\":\"Δευτέρα του Πάσχα\",\"variable_date\":\"orthodox easter\",\"offset\":1},{\"name\":\"Αγίου Πνεύματος\",\"variable_date\":\"orthodox easter\",\"offset\":50},{\"name\":\"Εργατική Πρωτομαγιά\",\"fixed_date\":[5,1]},{\"name\":\"Κοίμηση της Θεοτόκου\",\"fixed_date\":[8,15]},{\"name\":\"Επέτειος του Όχι\",\"fixed_date\":[10,28]},{\"name\":\"Χριστούγεννα\",\"fixed_date\":[12,25]},{\"name\":\"Δεύτερη μέρα των Χριστουγέννων\",\"fixed_date\":[12,26]}],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Greece&zoom=18&addressdetails=1&limit=1&accept-language=el,en\"\n};\n\nexport const hr = {\n PH: [{\"name\":\"Nova godina\",\"fixed_date\":[1,1]},{\"name\":\"Bogojavljenje ili Sveta tri kralja\",\"fixed_date\":[1,6]},{\"name\":\"Uskrs\",\"variable_date\":\"easter\"},{\"name\":\"Uskršnji ponedjeljak\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Praznik rada\",\"fixed_date\":[5,1]},{\"name\":\"Dan državnosti\",\"fixed_date\":[5,30]},{\"name\":\"Tijelovo\",\"variable_date\":\"easter\",\"offset\":60},{\"name\":\"Dan antifašističke borbe\",\"fixed_date\":[6,22]},{\"name\":\"Dan pobjede i domovinske zahvalnosti i Dan hrvatskih branitelja\",\"fixed_date\":[8,5]},{\"name\":\"Velika Gospa\",\"fixed_date\":[8,15]},{\"name\":\"Svi sveti\",\"fixed_date\":[11,1]},{\"name\":\"Dan sjećanja na žrtve Domovinskog rata i Dan sjećanja na žrtvu Vukovara i Škabrnje\",\"fixed_date\":[11,18]},{\"name\":\"Božić\",\"fixed_date\":[12,25]},{\"name\":\"Sveti Stjepan\",\"fixed_date\":[12,26]}],\n SH: [\n {\n name: \"Zimski odmor\",\n 2019: [12,23,1,3],\n 2025: [12,24,1,9],\n },\n {\n name: \"Zimski odmor (prvi dio)\",\n 2019: [12,23,1,3],\n 2020: [12,24,1,8],\n 2021: [12,24,1,7],\n 2022: [12,27,1,5],\n 2023: [12,27,1,5],\n 2024: [12,23,1,6],\n },\n {\n name: \"Zimski odmor (drugi dio)\",\n 2020: [2,24,2,28],\n 2021: [2,23,2,26],\n 2022: [2,21,2,25],\n 2023: [2,20,2,24],\n 2024: [2,19,2,23],\n 2025: [2,24,2,28],\n },\n {\n name: \"Proljetni odmor\",\n 2020: [4,10,4,17],\n 2021: [4,2,4,9],\n 2022: [4,14,4,22],\n 2023: [4,6,4,14],\n 2024: [3,28,4,5],\n 2025: [4,17,4,25],\n 2026: [3,30,4,6],\n },\n {\n name: \"Ljetni odmor\",\n 2020: [6,18,9,6],\n 2021: [6,21,9,5],\n 2022: [6,23,9,4],\n 2023: [6,23,9,3],\n 2024: [6,24,9,1],\n 2025: [6,19,8,31],\n 2026: [6,15,8,31],\n },\n {\n name: \"Jesenski odmor\",\n 2020: [11,2,11,3],\n 2021: [11,2,11,3],\n 2022: [10,31,11,1],\n 2023: [10,30,11,1],\n 2024: [10,31,11,1],\n },\n ],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lon=15.977&lat=45.813&zoom=18&addressdetails=1&accept-language=hr,en\"\n};\n\nexport const hu = {\n PH: [{\"name\":\"újév\",\"fixed_date\":[1,1]},{\"name\":\"az 1848-as forradalom ünnepe\",\"fixed_date\":[3,15]},{\"name\":\"nagypéntek\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"húsvétvasárnap\",\"variable_date\":\"easter\"},{\"name\":\"húsvéthétfő\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"pünkösdvasárnap\",\"variable_date\":\"easter\",\"offset\":49},{\"name\":\"pünkösdhétfő\",\"variable_date\":\"easter\",\"offset\":50},{\"name\":\"a munka ünnepe\",\"fixed_date\":[5,1]},{\"name\":\"az államalapítás ünnepe\",\"fixed_date\":[8,20]},{\"name\":\"az 1956-os forradalom ünnepe\",\"fixed_date\":[10,23]},{\"name\":\"mindenszentek\",\"fixed_date\":[11,1]},{\"name\":\"karácsony\",\"fixed_date\":[12,25]},{\"name\":\"karácsony másnap\",\"fixed_date\":[12,26]}],\n SH: [\n {\n name: \"Őszi szünet\",\n 2014: [10,23,11,2],\n 2015: [10,23,11,1],\n 2016: [10,29,11,6],\n 2017: [10,28,11,5],\n 2018: [10,27,11,4],\n 2019: [10,26,11,3],\n 2020: [10,22,11,1],\n 2021: [10,23,11,1],\n 2022: [10,29,11,6],\n 2023: [10,28,11,5],\n 2024: [10,26,11,3],\n 2025: [10,23,11,2],\n },\n {\n name: \"Téli szünet\",\n 2014: [12,20,1,4],\n 2015: [12,19,1,3],\n 2016: [12,22,1,2],\n 2017: [12,23,1,2],\n 2018: [12,22,1,2],\n 2019: [12,23,1,5],\n 2020: [12,18,1,3],\n 2021: [12,22,1,2],\n 2022: [12,22,1,8],\n 2023: [12,21,1,7],\n 2024: [12,21,1,5],\n 2025: [12,20,1,4],\n },\n {\n name: \"Tavaszi szünet\",\n 2015: [4,2,4,7],\n 2016: [3,24,3,29],\n 2017: [4,13,4,18],\n 2018: [3,29,4,3],\n 2019: [4,18,4,23],\n 2020: [4,9,4,14],\n 2021: [3,31,4,6],\n 2022: [4,14,4,19],\n 2023: [4,6,4,11],\n 2024: [3,29,4,7],\n 2025: [4,17,4,27],\n 2026: [4,2,4,12],\n },\n {\n name: \"Nyári szünet\",\n 2015: [6,16,8,31],\n 2016: [6,16,8,31],\n 2017: [6,16,8,31],\n 2018: [6,16,9,2],\n 2019: [6,15,9,1],\n 2020: [6,16,8,31],\n 2021: [6,16,8,31],\n 2022: [6,16,8,31],\n 2023: [6,16,8,31],\n 2024: [6,16,8,31],\n 2025: [6,21,8,31],\n 2026: [6,20,8,31],\n },\n ],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=47.4821&lon=19.0640&zoom=18&addressdetails=1&accept-language=hu,en\"\n};\n\nexport const ie = {\n PH: [{\"name\":\"New Year’s Day\",\"fixed_date\":[1,1]},{\"name\":\"St. Patrick’s Day\",\"fixed_date\":[3,17]},{\"name\":\"St. Patrick’s Day\",\"variable_date\":\"nextMo-Fr17March\"},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Easter Monday\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"May Bank Holiday\",\"variable_date\":\"firstMayMonday\"},{\"name\":\"June Bank Holiday\",\"variable_date\":\"firstJuneMonday\"},{\"name\":\"August Bank Holiday\",\"variable_date\":\"firstAugustMonday\"},{\"name\":\"October Bank Holiday\",\"variable_date\":\"lastOctoberMonday\"},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25]},{\"name\":\"St. Stephen’s Day\",\"fixed_date\":[12,26]},{\"name\":\"Bank Holiday\",\"fixed_date\":[12,27]}],\n SH: [\n {\n name: \"Christmas\",\n 2019: [12,20,1,5],\n 2020: [12,22,1,5],\n 2021: [12,22,1,5],\n 2022: [12,21,1,4],\n 2023: [12,22,1,7],\n 2024: [12,20,1,5],\n 2025: [12,19,1,4],\n },\n {\n name: \"February mid-term break\",\n 2020: [2,20,2,21],\n 2021: [2,18,2,19],\n 2022: [2,24,2,25],\n 2023: [2,16,2,17],\n 2024: [2,15,2,16],\n 2025: [2,20,2,21],\n 2026: [2,19,2,20],\n },\n {\n name: \"Easter\",\n 2020: [4,3,4,19],\n 2021: [3,26,4,11],\n 2022: [4,8,4,24],\n 2023: [3,31,4,16],\n 2024: [3,22,4,7],\n 2025: [4,11,4,27],\n 2026: [3,27,4,12],\n },\n {\n name: \"October mid-term break\",\n 2020: [10,26,10,30],\n 2021: [10,25,10,29],\n 2022: [10,31,11,4],\n 2023: [10,30,11,3],\n 2024: [10,28,11,1],\n 2025: [10,27,10,31],\n },\n ],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=53.1424&lon=-7.6921&zoom=18&addressdetails=1&accept-language=ga,en\"\n};\n\nexport const im = {\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if saturday,sunday then next monday\"},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Easter Monday\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Early May bank holiday\",\"variable_date\":\"firstMayMonday\"},{\"name\":\"Spring bank holiday\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Tourist Trophy, Senior Race Day\",\"variable_date\":\"firstJuneFriday\",\"offset\":7},{\"name\":\"Tynwald Day\",\"fixed_date\":[7,5]},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\"},{\"name\":\"Boxing Day\",\"fixed_date\":[12,26],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\"}]\n};\n\nexport const it = {\n PH: [{\"name\":\"Capodanno\",\"fixed_date\":[1,1]},{\"name\":\"Epifania\",\"fixed_date\":[1,6]},{\"name\":\"Liberazione dal nazifascismo (1945)\",\"fixed_date\":[4,25]},{\"name\":\"Pasqua\",\"variable_date\":\"easter\"},{\"name\":\"Lunedì di Pasqua\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Festa del lavoro\",\"fixed_date\":[5,1]},{\"name\":\"Festa della Repubblica\",\"fixed_date\":[6,2]},{\"name\":\"Assunzione di Maria\",\"fixed_date\":[8,15]},{\"name\":\"Ognissanti\",\"fixed_date\":[11,1]},{\"name\":\"Immacolata Concezione\",\"fixed_date\":[12,8]},{\"name\":\"Natale di Gesù\",\"fixed_date\":[12,25]},{\"name\":\"Santo Stefano\",\"fixed_date\":[12,26]}],\n SH: [\n {\n name: \"festività pasquali\",\n 2020: [4,9,4,14],\n 2021: [4,1,4,6],\n 2022: [4,14,4,19],\n },\n {\n name: \"vacanza galleggiante\",\n 2020: [4,24,4,24],\n },\n ],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=41.9808038&lon=12.7662312&zoom=18&addressdetails=1&accept-language=it,en\",\n \"Abruzzo\": {\n \"_state_code\": \"ab\",\n SH: [\n {\n name: \"festività natalizie\",\n 2019: [12,24,1,6],\n 2020: [12,24,1,5],\n 2021: [12,24,1,5],\n 2022: [12,24,1,7],\n 2023: [12,23,1,5],\n 2024: [12,23,1,6],\n 2025: [12,22,1,6],\n },\n {\n name: \"vacanza galleggiante\",\n 2020: [12,7,12,7],\n 2021: [11,2,11,2],\n 2022: [10,31,10,31],\n 2023: [12,9,12,9],\n 2024: [11,2,11,2],\n 2025: [4,26,4,26],\n 2026: [6,1,6,1],\n },\n {\n name: \"vacanze estive\",\n 2020: [6,9,9,24],\n 2021: [6,11,9,12],\n 2022: [6,9,9,11],\n 2023: [6,11,9,12],\n 2024: [6,8,9,15],\n 2025: [6,8,9,14],\n },\n {\n name: \"festività pasquali\",\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n },\n {\n name: \"Fine delle lezioni\",\n 2026: [6,9,6,9],\n },\n ]\n },\n \"Basilicata\": {\n \"_state_code\": \"ba\",\n SH: [\n {\n name: \"festività natalizie\",\n 2019: [12,23,1,6],\n 2020: [12,24,1,5],\n 2021: [12,24,1,5],\n 2022: [12,24,1,7],\n 2023: [12,23,1,5],\n 2024: [12,23,1,6],\n 2025: [12,22,1,6],\n },\n {\n name: \"vacanza galleggiante\",\n 2020: [12,7,12,7],\n 2021: [11,2,11,2],\n 2022: [11,2,11,2],\n 2023: [12,9,12,9],\n 2024: [11,2,11,2],\n 2025: [4,26,4,26],\n 2026: [6,1,6,1],\n },\n {\n name: \"vacanze estive\",\n 2020: [6,12,9,24],\n 2021: [6,12,9,12],\n 2022: [6,9,9,11],\n 2023: [6,11,9,12],\n 2024: [6,8,9,15],\n 2025: [6,11,9,14],\n },\n {\n name: \"festività pasquali\",\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n },\n {\n name: \"vacanze galleggianti\",\n 2024: [4,26,4,27],\n 2025: [3,3,3,4],\n },\n {\n name: \"Fine delle lezioni\",\n 2026: [6,10,6,10],\n },\n ]\n },\n \"Bolzano\": {\n \"_state_code\": \"tr-bz\",\n SH: [\n {\n name: \"festività natalizie\",\n 2019: [12,21,1,6],\n 2020: [12,24,1,5],\n 2021: [12,24,1,8],\n 2022: [12,24,1,5],\n 2023: [12,27,1,5],\n 2024: [12,24,1,6],\n 2025: [12,24,1,6],\n },\n {\n name: \"vacanza galleggiante\",\n 2020: [11,2,11,2],\n 2021: [11,2,11,2],\n 2022: [11,2,11,2],\n 2023: [5,29,5,29],\n 2024: [5,20,5,20],\n 2025: [6,9,6,9],\n 2026: [6,1,6,1],\n },\n {\n name: \"vacanze estive\",\n 2020: [6,17,9,7],\n 2021: [6,17,9,5],\n 2022: [6,17,9,4],\n 2023: [6,17,9,4],\n 2024: [6,14,9,4],\n 2025: [6,14,9,7],\n },\n {\n name: \"vacanze galleggianti\",\n 2020: [11,3,11,7],\n 2021: [11,3,11,6],\n 2022: [12,9,12,10],\n 2023: [11,1,11,3],\n 2024: [10,26,11,3],\n 2025: [3,1,3,9],\n 2026: [2,14,2,22],\n },\n {\n name: \"festività pasquali\",\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,8],\n },\n {\n name: \"Fine delle lezioni\",\n 2026: [6,16,6,16],\n },\n ]\n },\n \"Calabria\": {\n \"_state_code\": \"cl\",\n SH: [\n {\n name: \"festività natalizie\",\n 2019: [12,23,1,6],\n 2020: [12,23,1,5],\n 2021: [12,24,1,6],\n 2022: [12,23,1,7],\n 2023: [12,23,1,5],\n 2024: [12,23,1,6],\n 2025: [12,23,1,6],\n },\n {\n name: \"vacanza galleggiante\",\n 2020: [12,7,12,7],\n 2021: [11,2,11,2],\n 2022: [10,31,10,31],\n 2023: [12,9,12,9],\n 2024: [11,2,11,2],\n 2025: [4,26,4,26],\n 2026: [5,2,5,2],\n },\n {\n name: \"vacanze estive\",\n 2020: [6,10,9,24],\n 2021: [6,13,9,19],\n 2022: [6,10,9,13],\n 2023: [6,11,9,13],\n 2024: [6,8,9,15],\n 2025: [6,8,9,15],\n },\n {\n name: \"vacanze galleggianti\",\n 2022: [12,9,12,10],\n 2024: [4,26,4,27],\n 2025: [5,2,5,3],\n },\n {\n name: \"festività pasquali\",\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n },\n {\n name: \"Fine delle lezioni\",\n 2026: [6,8,6,8],\n },\n ]\n },\n \"Campania\": {\n \"_state_code\": \"cm\",\n SH: [\n {\n name: \"festività natalizie\",\n 2019: [12,21,1,6],\n 2020: [12,23,1,5],\n 2021: [12,23,1,8],\n 2022: [12,23,1,5],\n 2023: [12,23,1,5],\n 2024: [12,23,1,6],\n 2025: [12,23,1,6],\n },\n {\n name: \"vacanza galleggiante\",\n 2020: [12,7,12,7],\n 2021: [11,2,11,2],\n 2022: [11,2,11,2],\n 2023: [12,9,12,9],\n 2024: [11,2,11,2],\n 2025: [4,26,4,26],\n },\n {\n name: \"vacanze estive\",\n 2020: [6,7,9,24],\n 2021: [6,13,9,14],\n 2022: [6,9,9,12],\n 2023: [6,11,9,12],\n 2024: [6,8,9,15],\n 2025: [6,8,9,14],\n },\n {\n name: \"festività pasquali\",\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n },\n {\n name: \"vacanze galleggianti\",\n 2024: [2,12,2,13],\n 2025: [5,2,5,3],\n 2026: [2,16,2,17],\n },\n {\n name: \"Fine delle lezioni\",\n 2026: [6,6,6,6],\n },\n ]\n },\n \"Emilia-Romagna\": {\n \"_state_code\": \"er\",\n SH: [\n {\n name: \"festività natalizie\",\n 2019: [12,24,1,6],\n 2020: [12,24,1,5],\n 2021: [12,24,1,5],\n 2022: [12,24,1,5],\n 2023: [12,24,1,5],\n 2024: [12,24,1,6],\n 2025: [12,24,1,6],\n },\n {\n name: \"vacanze estive\",\n 2020: [6,7,9,14],\n 2021: [6,6,9,12],\n 2022: [6,5,9,14],\n 2023: [6,8,9,14],\n 2024: [6,6,9,15],\n 2025: [6,7,9,14],\n },\n {\n name: \"vacanza galleggiante\",\n 2020: [11,2,11,2],\n 2021: [11,2,11,2],\n 2022: [11,2,11,2],\n 2023: [11,2,11,2],\n 2024: [11,2,11,2],\n },\n {\n name: \"festività pasquali\",\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n },\n {\n name: \"Fine delle lezioni\",\n 2026: [6,6,6,6],\n },\n ]\n },\n \"Friuli Venezia Giulia\": {\n \"_state_code\": \"fv\",\n SH: [\n {\n name: \"festività natalizie\",\n 2019: [12,23,1,6],\n 2020: [12,24,1,5],\n 2021: [12,24,1,5],\n 2022: [12,24,1,7],\n 2023: [12,27,1,5],\n 2024: [12,23,1,6],\n 2025: [12,23,1,6],\n },\n {\n name: \"vacanza galleggiante\",\n 2020: [12,7,12,7],\n 2021: [2,17,2,17],\n 2022: [10,31,10,31],\n 2023: [4,24,4,24],\n 2024: [11,2,11,2],\n 2025: [4,26,4,26],\n 2026: [6,1,6,1],\n },\n {\n name: \"vacanze estive\",\n 2020: [6,11,9,16],\n 2021: [6,11,9,15],\n 2022: [6,12,9,11],\n 2023: [6,11,9,12],\n 2024: [6,8,9,15],\n 2025: [6,8,9,10],\n },\n {\n name: \"festività pasquali\",\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n },\n {\n name: \"vacanze galleggianti\",\n 2024: [2,12,2,14],\n 2025: [3,3,3,5],\n 2026: [2,16,2,18],\n },\n {\n name: \"Fine delle lezioni\",\n 2026: [6,9,6,9],\n },\n ]\n },\n \"Lazio\": {\n \"_state_code\": \"la\",\n SH: [\n {\n name: \"festività natalizie\",\n 2019: [12,23,1,6],\n 2020: [12,23,1,5],\n 2021: [12,23,1,6],\n 2022: [12,23,1,5],\n 2023: [12,23,1,5],\n 2024: [12,23,1,6],\n 2025: [12,23,1,6],\n },\n {\n name: \"vacanze estive\",\n 2020: [6,8,9,14],\n 2021: [6,9,9,12],\n 2022: [6,9,9,14],\n 2023: [6,9,9,14],\n 2024: [6,8,9,15],\n 2025: [6,8,9,14],\n },\n {\n name: \"vacanza galleggiante\",\n 2020: [12,7,12,7],\n },\n {\n name: \"vacanze galleggianti\",\n 2021: [5,31,6,1],\n },\n {\n name: \"festività pasquali\",\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n },\n {\n name: \"Fine delle lezioni\",\n 2026: [6,8,6,8],\n },\n ]\n },\n \"Liguria\": {\n \"_state_code\": \"li\",\n SH: [\n {\n name: \"festività natalizie\",\n 2019: [12,23,1,6],\n 2020: [12,24,1,5],\n 2021: [12,24,1,8],\n 2022: [12,23,1,7],\n 2023: [12,27,1,5],\n 2024: [12,23,1,6],\n 2025: [12,22,1,6],\n },\n {\n name: \"vacanza galleggiante\",\n 2020: [12,7,12,7],\n 2023: [4,24,4,24],\n 2026: [6,1,6,1],\n },\n {\n name: \"vacanze estive\",\n 2020: [6,11,9,14],\n 2021: [6,10,9,14],\n 2022: [6,11,9,13],\n 2023: [6,11,9,13],\n 2024: [6,8,9,15],\n 2025: [6,11,9,14],\n },\n {\n name: \"vacanze galleggianti\",\n 2022: [6,3,6,4],\n 2024: [4,29,4,30],\n 2025: [5,2,5,3],\n 2026: [2,16,2,17],\n },\n {\n name: \"festività pasquali\",\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,21],\n 2026: [4,2,4,7],\n },\n {\n name: \"Fine delle lezioni\",\n 2026: [6,11,6,11],\n },\n ]\n },\n \"Lombardia\": {\n \"_state_code\": \"lo\",\n SH: [\n {\n name: \"festività natalizie\",\n 2019: [12,23,1,6],\n 2020: [12,23,1,5],\n 2021: [12,23,1,5],\n 2022: [12,23,1,5],\n 2023: [12,23,1,5],\n 2024: [12,23,1,6],\n 2025: [12,23,1,6],\n },\n {\n name: \"vacanza galleggiante\",\n 2020: [2,29,2,29],\n 2021: [11,2,11,2],\n 2022: [3,1,3,1],\n },\n {\n name: \"vacanze estive\",\n 2020: [6,8,9,14],\n 2021: [6,9,9,12],\n 2022: [6,9,9,11],\n 2023: [6,9,9,11],\n 2024: [6,8,9,15],\n 2025: [6,8,9,11],\n },\n {\n name: \"vacanze galleggianti\",\n 2021: [2,19,2,20],\n 2022: [3,4,3,5],\n 2023: [2,24,2,25],\n 2024: [2,12,2,13],\n 2025: [3,3,3,4],\n 2026: [2,16,2,17],\n },\n {\n name: \"festività pasquali\",\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,21],\n 2026: [4,2,4,7],\n },\n {\n name: \"Fine delle lezioni\",\n 2026: [6,8,6,8],\n },\n ]\n },\n \"Marche\": {\n \"_state_code\": \"ma\",\n SH: [\n {\n name: \"festività natalizie\",\n 2019: [12,24,1,6],\n 2020: [12,24,1,5],\n 2021: [12,24,1,5],\n 2022: [12,24,1,7],\n 2023: [12,24,1,6],\n 2024: [12,23,1,6],\n 2025: [12,23,1,6],\n },\n {\n name: \"vacanze estive\",\n 2020: [6,7,9,14],\n 2021: [6,6,9,14],\n 2022: [6,5,9,13],\n 2023: [6,11,9,12],\n 2024: [6,6,9,15],\n 2025: [6,8,9,14],\n },\n {\n name: \"vacanza galleggiante\",\n 2020: [11,2,11,2],\n 2021: [11,2,11,2],\n 2022: [11,2,11,2],\n 2023: [12,9,12,9],\n 2024: [11,2,11,2],\n 2025: [4,26,4,26],\n 2026: [6,1,6,1],\n },\n {\n name: \"festività pasquali\",\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n },\n {\n name: \"vacanze galleggianti\",\n 2023: [11,1,11,3],\n 2024: [4,26,4,27],\n 2025: [5,2,5,3],\n },\n {\n name: \"Fine delle lezioni\",\n 2026: [6,6,6,6],\n },\n ]\n },\n \"Molise\": {\n \"_state_code\": \"mo\",\n SH: [\n {\n name: \"festività natalizie\",\n 2019: [12,23,1,6],\n 2020: [12,23,1,5],\n 2021: [12,23,1,8],\n 2022: [12,23,1,7],\n 2023: [12,23,1,5],\n 2024: [12,23,1,6],\n 2025: [12,22,1,6],\n },\n {\n name: \"vacanza galleggiante\",\n 2020: [11,2,11,2],\n 2021: [11,2,11,2],\n 2022: [11,2,11,2],\n 2023: [12,9,12,9],\n 2024: [12,7,12,7],\n 2025: [4,26,4,26],\n 2026: [6,1,6,1],\n },\n {\n name: \"vacanze estive\",\n 2020: [6,7,9,14],\n 2021: [6,6,9,14],\n 2022: [6,9,9,13],\n 2023: [6,11,9,13],\n 2024: [6,8,9,15],\n 2025: [6,8,9,14],\n },\n {\n name: \"vacanze galleggianti\",\n 2022: [12,9,12,10],\n 2024: [4,29,4,30],\n 2025: [5,2,5,3],\n },\n {\n name: \"festività pasquali\",\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n },\n {\n name: \"Fine delle lezioni\",\n 2026: [6,9,6,9],\n },\n ]\n },\n \"Piemonte\": {\n \"_state_code\": \"pi\",\n SH: [\n {\n name: \"festività natalizie\",\n 2019: [12,23,1,6],\n 2020: [12,23,1,5],\n 2021: [12,24,1,8],\n 2022: [12,24,1,7],\n 2023: [12,23,1,5],\n 2024: [12,23,1,6],\n 2025: [12,22,1,6],\n },\n {\n name: \"vacanza galleggiante\",\n 2020: [12,7,12,7],\n 2021: [2,17,2,17],\n 2022: [3,1,3,1],\n 2023: [12,9,12,9],\n 2024: [11,2,11,2],\n 2025: [3,1,3,1],\n 2026: [6,1,6,1],\n },\n {\n name: \"vacanze estive\",\n 2020: [6,11,9,14],\n 2021: [6,12,9,12],\n 2022: [6,9,9,11],\n 2023: [6,11,9,10],\n 2024: [6,8,9,15],\n 2025: [6,8,9,9],\n },\n {\n name: \"vacanze galleggianti\",\n 2022: [12,9,12,10],\n 2024: [4,26,4,27],\n 2025: [5,2,5,3],\n 2026: [2,14,2,17],\n },\n {\n name: \"festività pasquali\",\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n },\n {\n name: \"Fine delle lezioni\",\n 2026: [6,10,6,10],\n },\n ]\n },\n \"Puglia\": {\n \"_state_code\": \"pu\",\n SH: [\n {\n name: \"festività natalizie\",\n 2019: [12,23,1,6],\n 2020: [12,23,1,5],\n 2021: [12,23,1,9],\n 2022: [12,23,1,7],\n 2023: [12,23,1,5],\n 2024: [12,23,1,6],\n 2025: [12,22,1,6],\n },\n {\n name: \"vacanza galleggiante\",\n 2020: [12,2,12,2],\n 2021: [11,2,11,2],\n 2022: [10,31,10,31],\n 2023: [12,9,12,9],\n 2025: [4,26,4,26],\n 2026: [6,1,6,1],\n },\n {\n name: \"vacanze estive\",\n 2020: [6,11,9,24],\n 2021: [6,12,9,19],\n 2022: [6,10,9,13],\n 2023: [6,11,9,13],\n 2024: [6,7,9,15],\n 2025: [6,8,9,15],\n },\n {\n name: \"vacanze galleggianti\",\n 2022: [12,9,12,10],\n 2024: [2,12,2,13],\n },\n {\n name: \"festività pasquali\",\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n },\n {\n name: \"Fine delle lezioni\",\n 2026: [6,9,6,9],\n },\n ]\n },\n \"Sardegna\": {\n \"_state_code\": \"sa\",\n SH: [\n {\n name: \"festività natalizie\",\n 2019: [12,23,1,6],\n 2020: [12,23,1,5],\n 2021: [12,23,1,5],\n 2022: [12,23,1,5],\n 2023: [12,23,1,5],\n 2024: [12,23,1,6],\n 2025: [12,23,1,6],\n },\n {\n name: \"vacanza galleggiante\",\n 2020: [11,2,11,2],\n 2021: [11,2,11,2],\n 2022: [11,2,11,2],\n 2023: [11,2,11,2],\n 2024: [11,2,11,2],\n 2025: [4,28,4,28],\n 2026: [5,2,5,2],\n },\n {\n name: \"vacanze estive\",\n 2020: [6,7,9,22],\n 2021: [6,13,9,13],\n 2022: [6,9,9,13],\n 2023: [6,11,9,13],\n 2024: [6,7,9,15],\n 2025: [6,8,9,14],\n },\n {\n name: \"festività pasquali\",\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n },\n {\n name: \"vacanze galleggianti\",\n 2024: [2,13,2,13],\n 2025: [3,3,3,4],\n },\n {\n name: \"Fine delle lezioni\",\n 2026: [6,8,6,8],\n },\n ]\n },\n \"Sicilia\": {\n \"_state_code\": \"si\",\n SH: [\n {\n name: \"festività natalizie\",\n 2019: [12,23,1,7],\n 2020: [12,23,1,7],\n 2021: [12,23,1,6],\n 2022: [12,23,1,7],\n 2023: [12,23,1,5],\n 2024: [12,23,1,6],\n 2025: [12,23,1,6],\n },\n {\n name: \"vacanze estive\",\n 2020: [6,7,9,14],\n 2021: [6,9,9,15],\n 2022: [6,11,9,18],\n 2023: [6,11,9,12],\n 2024: [6,8,9,15],\n 2025: [6,8,9,14],\n },\n {\n name: \"festività pasquali\",\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n },\n {\n name: \"vacanza galleggiante\",\n 2023: [11,2,11,2],\n 2024: [11,2,11,2],\n },\n {\n name: \"Fine delle lezioni\",\n 2026: [6,9,6,9],\n },\n ]\n },\n \"Toscana\": {\n \"_state_code\": \"to\",\n SH: [\n {\n name: \"festività natalizie\",\n 2019: [12,24,1,6],\n 2020: [12,24,1,5],\n 2021: [12,24,1,5],\n 2022: [12,24,1,5],\n 2023: [12,24,1,5],\n 2024: [12,24,1,6],\n 2025: [12,24,1,6],\n },\n {\n name: \"vacanze estive\",\n 2020: [6,11,9,14],\n 2021: [6,11,9,14],\n 2022: [6,11,9,14],\n 2023: [6,11,9,14],\n 2024: [6,10,9,15],\n 2025: [6,11,9,14],\n },\n {\n name: \"festività pasquali\",\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n },\n {\n name: \"Fine delle lezioni\",\n 2026: [6,10,6,10],\n },\n ]\n },\n \"Trento\": {\n \"_state_code\": \"tr-tn\",\n SH: [\n {\n name: \"festività natalizie\",\n 2019: [12,23,1,6],\n 2020: [12,24,1,5],\n 2021: [12,23,1,6],\n 2022: [12,23,1,5],\n 2023: [12,23,1,5],\n 2024: [12,23,1,6],\n 2025: [12,22,1,6],\n },\n {\n name: \"vacanza galleggiante\",\n 2020: [12,7,12,7],\n 2021: [11,2,11,2],\n 2022: [10,31,10,31],\n 2023: [12,9,12,9],\n 2024: [11,2,11,2],\n 2026: [6,1,6,1],\n },\n {\n name: \"vacanze estive\",\n 2020: [6,11,9,14],\n 2021: [6,11,9,12],\n 2022: [6,11,9,11],\n 2023: [6,10,9,10],\n 2024: [6,11,9,8],\n 2025: [6,13,9,9],\n },\n {\n name: \"festività pasquali\",\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,18,4,26],\n 2026: [4,2,4,8],\n },\n {\n name: \"vacanze galleggianti\",\n 2024: [2,8,2,13],\n 2025: [5,1,5,3],\n 2026: [2,16,2,18],\n },\n {\n name: \"Fine delle lezioni\",\n 2026: [6,10,6,10],\n },\n ]\n },\n \"Umbria\": {\n \"_state_code\": \"um\",\n SH: [\n {\n name: \"festività natalizie\",\n 2019: [12,23,1,6],\n 2020: [12,23,1,5],\n 2021: [12,23,1,6],\n 2022: [12,23,1,7],\n 2023: [12,22,1,5],\n 2024: [12,23,1,6],\n 2025: [12,22,1,6],\n },\n {\n name: \"vacanza galleggiante\",\n 2020: [12,7,12,7],\n 2021: [11,2,11,2],\n 2022: [10,31,10,31],\n 2023: [12,9,12,9],\n 2024: [11,2,11,2],\n 2025: [4,26,4,26],\n 2026: [6,1,6,1],\n },\n {\n name: \"vacanze estive\",\n 2020: [6,10,9,14],\n 2021: [6,10,9,12],\n 2022: [6,10,9,13],\n 2023: [6,11,9,12],\n 2024: [6,8,9,15],\n 2025: [6,8,9,14],\n },\n {\n name: \"vacanze galleggianti\",\n 2021: [5,31,6,1],\n },\n {\n name: \"festività pasquali\",\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n },\n {\n name: \"Fine delle lezioni\",\n 2026: [6,9,6,9],\n },\n ]\n },\n \"Valle d'Aosta\": {\n \"_state_code\": \"va\",\n SH: [\n {\n name: \"festività natalizie\",\n 2019: [12,23,1,6],\n 2020: [12,24,1,5],\n 2021: [12,23,1,8],\n 2022: [12,24,1,7],\n 2023: [12,24,1,7],\n 2024: [12,23,1,6],\n 2025: [12,24,1,6],\n },\n {\n name: \"vacanza galleggiante\",\n 2020: [12,7,12,7],\n 2021: [2,17,2,17],\n 2022: [3,1,3,1],\n 2023: [12,9,12,9],\n 2024: [11,2,11,2],\n 2025: [4,26,4,26],\n 2026: [6,1,6,1],\n },\n {\n name: \"vacanze estive\",\n 2020: [6,13,9,14],\n 2021: [6,9,9,12],\n 2022: [6,9,9,18],\n 2023: [6,16,9,10],\n 2024: [6,6,9,15],\n 2025: [6,11,9,9],\n },\n {\n name: \"vacanze galleggianti\",\n 2023: [1,30,1,31],\n 2024: [4,26,4,27],\n 2025: [5,2,5,3],\n 2026: [2,16,2,18],\n },\n {\n name: \"festività pasquali\",\n 2023: [4,6,4,11],\n 2024: [3,28,4,1],\n 2025: [4,17,4,21],\n 2026: [4,2,4,7],\n },\n {\n name: \"Fine delle lezioni\",\n 2026: [6,10,6,10],\n },\n ]\n },\n \"Veneto\": {\n \"_state_code\": \"ve\",\n SH: [\n {\n name: \"festività natalizie\",\n 2019: [12,23,1,6],\n 2020: [12,24,1,5],\n 2021: [12,24,1,8],\n 2022: [12,24,1,7],\n 2023: [12,23,1,5],\n 2024: [12,23,1,6],\n 2025: [12,24,1,6],\n },\n {\n name: \"vacanza galleggiante\",\n 2020: [12,7,12,7],\n 2021: [2,17,2,17],\n 2022: [10,31,10,31],\n 2023: [12,9,12,9],\n 2024: [11,2,11,2],\n 2025: [4,26,4,26],\n 2026: [6,1,6,1],\n },\n {\n name: \"vacanze estive\",\n 2020: [6,7,9,14],\n 2021: [6,6,9,12],\n 2022: [6,9,9,11],\n 2023: [6,11,9,12],\n 2024: [6,8,9,15],\n 2025: [6,8,9,9],\n },\n {\n name: \"vacanze galleggianti\",\n 2022: [12,9,12,10],\n 2024: [4,26,4,27],\n 2025: [5,2,5,3],\n 2026: [2,16,2,18],\n },\n {\n name: \"festività pasquali\",\n 2023: [4,6,4,8],\n 2024: [3,28,4,2],\n 2025: [4,17,4,19],\n 2026: [4,2,4,7],\n },\n {\n name: \"Fine delle lezioni\",\n 2026: [6,6,6,6],\n },\n ]\n }\n};\n\nexport const je = {\n PH: [{\"name\":\"New Year’s Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if saturday,sunday then next monday\"},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Easter Monday\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Early May bank holiday\",\"variable_date\":\"firstMayMonday\"},{\"name\":\"Liberation Day\",\"fixed_date\":[5,9]},{\"name\":\"Spring bank holiday\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Summer bank holiday\",\"variable_date\":\"lastAugustMonday\"},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\"},{\"name\":\"Boxing Day\",\"fixed_date\":[12,26],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\"}],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=49.2&lon=-2.1&zoom=11&addressdetails=1&accept-language=en\"\n};\n\nexport const jp = {\n PH: [{\"name\":\"元日\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday\"},{\"name\":\"成人の日\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":7},{\"name\":\"建国記念の日\",\"fixed_date\":[2,11],\"substitute_rule\":\"if sunday then next monday\"},{\"name\":\"天皇誕生日\",\"fixed_date\":[2,23],\"substitute_rule\":\"if sunday then next monday\"},{\"name\":\"昭和の日\",\"fixed_date\":[4,29],\"substitute_rule\":\"if sunday then next monday\"},{\"name\":\"憲法記念日\",\"fixed_date\":[5,3],\"substitute_rule\":\"if sunday then next wednesday\"},{\"name\":\"みどりの日\",\"fixed_date\":[5,4],\"substitute_rule\":\"if sunday then next tuesday\"},{\"name\":\"こどもの日\",\"fixed_date\":[5,5],\"substitute_rule\":\"if sunday then next monday\"},{\"name\":\"海の日\",\"variable_date\":\"firstJulyMonday\",\"offset\":14},{\"name\":\"山の日\",\"fixed_date\":[8,11],\"substitute_rule\":\"if sunday then next monday\"},{\"name\":\"敬老の日\",\"variable_date\":\"firstSeptemberMonday\",\"offset\":14},{\"name\":\"スポーツの日\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"文化の日\",\"fixed_date\":[11,3],\"substitute_rule\":\"if sunday then next monday\"},{\"name\":\"勤労感謝の日\",\"fixed_date\":[11,23],\"substitute_rule\":\"if sunday then next monday\"},{\"name\":\"春分の日\",\"variable_date\":\"springEquinox\"},{\"name\":\"秋分の日\",\"variable_date\":\"autumnalEquinox\"}],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=35.39291572&lon=139.44288869&zoom=18&addressdetails=1&accept-language=ja,en\"\n};\n\nexport const li = {\n SH: [\n {\n name: \"Winterferien\",\n 2019: [12,21,1,6],\n 2020: [12,24,1,6],\n 2021: [12,24,1,9],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,6],\n 2025: [12,24,1,6],\n 2026: [12,24,1,6],\n },\n {\n name: \"Sommerferien\",\n 2020: [7,4,8,16],\n 2021: [7,3,8,15],\n 2022: [7,2,8,16],\n 2023: [7,8,8,20],\n 2024: [7,6,8,18],\n 2025: [7,5,8,17],\n 2026: [7,4,8,16],\n },\n {\n name: \"Herbstferien\",\n 2020: [10,3,10,18],\n 2021: [10,2,10,17],\n 2022: [10,1,10,16],\n 2023: [10,7,10,22],\n 2024: [10,5,10,20],\n 2025: [10,4,10,19],\n 2026: [10,3,10,18],\n },\n {\n name: \"Sportferien\",\n 2020: [2,22,3,1],\n 2021: [2,13,2,21],\n 2022: [2,26,3,6],\n 2023: [2,18,2,26],\n 2024: [2,10,2,18],\n 2025: [3,1,3,9],\n 2026: [2,14,2,22],\n },\n {\n name: \"Schulfrei\",\n 2020: [6,12,6,12],\n 2021: [6,4,6,4],\n 2022: [6,17,6,17],\n 2023: [6,9,6,9],\n 2024: [5,31,5,31],\n 2025: [6,20,6,20],\n 2026: [6,5,6,5],\n },\n {\n name: \"Frühlingsferien\",\n 2020: [4,10,4,26],\n 2021: [4,2,4,18],\n 2022: [4,13,5,1],\n 2023: [4,7,4,23],\n 2024: [3,29,4,14],\n 2025: [4,18,5,4],\n 2026: [4,3,4,19],\n },\n ]\n};\n\nexport const lt = {\n PH: [{\"name\":\"Naujieji metai\",\"fixed_date\":[1,1]},{\"name\":\"Lietuvos valstybės atkūrimo diena\",\"fixed_date\":[2,16]},{\"name\":\"Lietuvos nepriklausomybės atkūrimo diena\",\"fixed_date\":[3,11]},{\"name\":\"Velykos\",\"variable_date\":\"easter\"},{\"name\":\"Velykų pirmadienis\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Tarptautinė darbo diena\",\"fixed_date\":[5,1]},{\"name\":\"Joninės, Rasos\",\"fixed_date\":[6,24]},{\"name\":\"Valstybės diena\",\"fixed_date\":[7,6]},{\"name\":\"Žolinė\",\"fixed_date\":[8,15]},{\"name\":\"Visų šventųjų diena\",\"fixed_date\":[11,1]},{\"name\":\"Vėlinės\",\"fixed_date\":[11,2]},{\"name\":\"Šv. Kūčios\",\"fixed_date\":[12,24]},{\"name\":\"Šv. Kalėdos\",\"fixed_date\":[12,25]},{\"name\":\"2. Kalėdų diena\",\"fixed_date\":[12,26]}],\n SH: [\n {\n name: \"Žiemos atostogos\",\n 2019: [12,23,1,3],\n 2020: [12,23,1,5],\n 2021: [12,27,1,7],\n 2022: [12,27,1,6],\n 2023: [12,27,1,5],\n 2024: [12,27,1,3],\n 2025: [12,24,1,4],\n 2026: [12,23,1,3],\n 2027: [2,15,2,21],\n },\n {\n name: \"Pavasario atostogos\",\n 2020: [4,14,4,17],\n 2021: [4,6,4,9],\n 2022: [4,19,4,22],\n 2023: [4,11,4,14],\n 2024: [4,2,4,5],\n 2025: [4,22,4,25],\n 2026: [4,6,4,12],\n 2027: [3,29,4,4],\n },\n {\n name: \"Atgal į mokyklą\",\n 2020: [9,1,9,1],\n 2021: [9,1,9,1],\n 2022: [9,1,9,1],\n 2023: [9,1,9,1],\n 2024: [9,1,9,1],\n 2025: [9,1,9,1],\n 2026: [9,1,9,1],\n 2027: [9,1,9,1],\n },\n {\n name: \"Rudens atostogos\",\n 2020: [10,26,10,30],\n 2021: [11,3,11,5],\n 2022: [10,31,11,4],\n 2023: [10,30,11,3],\n 2024: [10,28,10,31],\n 2025: [11,3,11,9],\n 2026: [11,2,11,8],\n },\n ],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=54.6872&lon=25.2797&zoom=18&addressdetails=1&accept-language=lt,en\"\n};\n\nexport const lu = {\n PH: [{\"name\":\"Neijoerschdag - Neujahr - Nouvel An\",\"fixed_date\":[1,1]},{\"name\":\"Ouschterméindeg - Ostermontag - Lundi de Pâques\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Dag vun der Aarbecht - Tag der Arbeit - Premier Mai\",\"fixed_date\":[5,1]},{\"name\":\"Europadag - Europatag - Journée de l'Europe\",\"fixed_date\":[5,1]},{\"name\":\"Christi Himmelfaart - Christi Himmelfahrt - Ascension\",\"variable_date\":\"easter\",\"offset\":39},{\"name\":\"Péngschtméindeg - Pfingstmontag - Lundi de Pentecôte\",\"variable_date\":\"easter\",\"offset\":50},{\"name\":\"Nationalfeierdag - Nationalfeiertag - Fête nationale\",\"fixed_date\":[6,23]},{\"name\":\"Mariä Himmelfaart - Maria Himmelfahrt - Assomption\",\"fixed_date\":[8,15]},{\"name\":\"Allerhellgen - Weihnachten - Allerheiligen - Toussaint\",\"fixed_date\":[11,1]},{\"name\":\"Chrëschtdag - Noël\",\"fixed_date\":[12,25]},{\"name\":\"Stiefesdag - Zweiter Weihnachtsfeiertag - St. Etienne\",\"fixed_date\":[12,26]}],\n SH: [\n {\n name: \"Vacances de Noël\",\n 2019: [12,21,1,5],\n 2020: [12,19,1,3],\n 2021: [12,18,1,2],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,5],\n 2025: [12,20,1,4],\n 2026: [12,19,1,3],\n },\n {\n name: \"Congé de Carnaval\",\n 2020: [2,15,2,23],\n 2021: [2,13,2,21],\n 2022: [2,12,2,20],\n 2023: [2,11,2,19],\n 2024: [2,10,2,18],\n 2025: [2,15,2,23],\n 2026: [2,14,2,22],\n 2027: [2,6,2,14],\n },\n {\n name: \"Vacances de Pâques\",\n 2020: [4,4,4,19],\n 2021: [4,3,4,22],\n 2022: [4,2,4,18],\n 2023: [4,1,4,16],\n 2024: [3,30,4,14],\n 2025: [4,5,4,20],\n 2026: [3,28,4,12],\n 2027: [3,27,4,11],\n },\n {\n name: \"Congé de la Pentecôte\",\n 2020: [5,30,6,7],\n 2021: [5,22,5,30],\n 2022: [5,21,5,29],\n 2023: [5,27,6,4],\n 2024: [5,25,6,2],\n 2025: [5,24,6,1],\n 2026: [5,23,5,31],\n 2027: [5,29,6,6],\n },\n {\n name: \"Vacances d’été\",\n 2020: [7,16,9,14],\n 2021: [7,16,9,14],\n 2022: [7,16,9,14],\n 2023: [7,15,9,14],\n 2024: [7,16,9,15],\n 2025: [7,16,9,14],\n 2026: [7,16,9,14],\n 2027: [7,16,9,14],\n },\n {\n name: \"Congé de la Toussaint\",\n 2020: [10,31,11,8],\n 2021: [10,30,11,7],\n 2022: [10,29,11,6],\n 2023: [10,28,11,5],\n 2024: [10,26,11,3],\n 2025: [11,1,11,9],\n 2026: [10,31,11,8],\n },\n ],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Luxembourg&zoom=18&addressdetails=1&limit=1&accept-language=lb,fr,de,en\"\n};\n\nexport const lv = {\n PH: [{\"name\":\"Jaunais Gads\",\"fixed_date\":[1,1]},{\"name\":\"Lielā Piektdiena\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Lieldienas\",\"variable_date\":\"easter\"},{\"name\":\"Otrās Lieldienas\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Darba svētki\",\"fixed_date\":[5,1]},{\"name\":\"Latvijas Republikas Neatkarības atjaunošanas diena\",\"fixed_date\":[5,4],\"substitute_rule\":\"if saturday,sunday then next monday\"},{\"name\":\"Līgo Diena\",\"fixed_date\":[6,23]},{\"name\":\"Jāņi\",\"fixed_date\":[6,24]},{\"name\":\"Latvijas Republikas proklamēšanas diena\",\"fixed_date\":[11,18],\"substitute_rule\":\"if saturday,sunday then next monday\"},{\"name\":\"Ziemassvētku vakars\",\"fixed_date\":[12,24]},{\"name\":\"Ziemassvētki\",\"fixed_date\":[12,25]},{\"name\":\"Otrie Ziemassvētki\",\"fixed_date\":[12,26]},{\"name\":\"Vecgada vakars\",\"fixed_date\":[12,31]}],\n SH: [\n {\n name: \"Ziemas brīvdienas\",\n 2019: [12,23,1,3],\n 2020: [12,21,1,1],\n 2021: [12,22,1,4],\n 2022: [12,26,1,6],\n 2023: [12,25,1,5],\n 2024: [12,23,1,5],\n },\n {\n name: \"Pavasara brīvdienas\",\n 2020: [3,16,3,20],\n 2021: [3,15,3,19],\n 2022: [3,14,3,18],\n 2023: [3,13,3,17],\n 2024: [3,11,3,15],\n 2025: [3,10,3,16],\n },\n {\n name: \"Vasaras brīvdienas\",\n 2020: [6,1,8,31],\n 2021: [6,1,8,31],\n 2022: [6,1,8,31],\n 2023: [6,1,8,31],\n 2024: [6,1,8,31],\n 2025: [5,31,8,31],\n },\n {\n name: \"Rudens brīvdienas\",\n 2020: [10,19,10,23],\n 2021: [10,18,10,22],\n 2022: [10,24,10,28],\n 2023: [10,23,10,27],\n 2024: [10,21,10,27],\n },\n ],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=56.9460&lon=24.1059&zoom=18&addressdetails=1&accept-language=lv,en\"\n};\n\nexport const mc = {\n PH: [{\"name\":\"Nouvel An\",\"fixed_date\":[1,1]},{\"name\":\"Sainte Dévote\",\"fixed_date\":[1,27],\"substitute_rule\":\"if sunday then next monday\"},{\"name\":\"Lundi de Pâques\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"1er mai\",\"fixed_date\":[5,1],\"substitute_rule\":\"if sunday then next monday\"},{\"name\":\"Ascension\",\"variable_date\":\"easter\",\"offset\":39},{\"name\":\"Lundi de Pentecôte\",\"variable_date\":\"easter\",\"offset\":50},{\"name\":\"la Fête-Dieu\",\"variable_date\":\"easter\",\"offset\":60},{\"name\":\"Assomption\",\"fixed_date\":[8,15]},{\"name\":\"Toussaint\",\"fixed_date\":[11,1]},{\"name\":\"La Fête du Prince\",\"fixed_date\":[11,19],\"substitute_rule\":\"if sunday then next monday\"},{\"name\":\"Immaculée Conception\",\"fixed_date\":[12,8]},{\"name\":\"Noël\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday\"}],\n SH: [\n {\n name: \"Vacances de Noël\",\n 2019: [12,21,1,5],\n 2020: [12,19,1,3],\n 2021: [12,18,1,2],\n 2022: [12,17,1,2],\n 2023: [12,23,1,7],\n 2024: [12,21,1,5],\n 2025: [12,20,1,4],\n },\n {\n name: \"Vacances d’hiver\",\n 2020: [2,15,3,1],\n 2021: [2,20,3,7],\n 2022: [2,5,2,20],\n 2023: [2,11,2,26],\n 2024: [2,24,3,10],\n 2025: [2,8,2,23],\n 2026: [2,14,3,1],\n },\n {\n name: \"Vacances de printemps\",\n 2020: [4,11,4,26],\n 2021: [4,10,4,25],\n 2022: [4,9,4,24],\n 2023: [4,15,5,1],\n 2024: [4,20,5,5],\n 2025: [4,5,4,21],\n 2026: [4,11,4,26],\n },\n {\n name: \"Grand Prix historique\",\n 2020: [5,8,5,8],\n 2022: [5,13,5,15],\n },\n {\n name: \"Grand Prix de Formule 1 et Pentecôte\",\n 2020: [5,21,5,24],\n 2021: [5,15,5,24],\n 2022: [5,26,5,29],\n 2023: [5,25,5,29],\n 2024: [5,23,5,26],\n 2025: [5,22,5,25],\n 2026: [5,21,5,25],\n },\n {\n name: \"Vacances d’été\",\n 2020: [6,27,9,6],\n 2021: [7,1,9,5],\n 2022: [7,2,9,4],\n 2023: [7,1,9,10],\n 2024: [6,29,9,8],\n 2025: [6,28,9,7],\n 2026: [6,27,9,6],\n },\n {\n name: \"Vacances de la Toussaint\",\n 2020: [10,22,11,2],\n 2021: [10,28,11,7],\n 2022: [10,22,11,2],\n 2023: [10,21,11,1],\n 2024: [10,24,11,3],\n 2025: [10,23,11,2],\n },\n ],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=43.7384&lon=7.4246&zoom=18&addressdetails=1&accept-language=fr,en\"\n};\n\nexport const md = {\n PH: [{\"name\":\"Anul nou\",\"fixed_date\":[1,1]},{\"name\":\"Ziua Internationala a Femeii\",\"fixed_date\":[3,8]},{\"name\":\"Paștele\",\"variable_date\":\"orthodox easter\"},{\"name\":\"A doua zi de Pasti\",\"variable_date\":\"orthodox easter\",\"offset\":1},{\"name\":\"Paştele Blăjinilor\",\"variable_date\":\"orthodox easter\",\"offset\":8},{\"name\":\"Ziua muncii\",\"fixed_date\":[5,1]},{\"name\":\"Ziua Victoriei\",\"fixed_date\":[5,9]},{\"name\":\"Ziua Independentei\",\"fixed_date\":[8,27]},{\"name\":\"Limba noastră\",\"fixed_date\":[8,31]},{\"name\":\"Craciun pe stil Nou\",\"fixed_date\":[12,25]}],\n SH: [\n {\n name: \"Vacanţa de iarnă\",\n 2019: [12,25,1,8],\n 2020: [12,25,1,10],\n 2021: [12,25,1,9],\n 2022: [12,24,1,8],\n 2023: [12,23,1,8],\n 2024: [12,25,1,8],\n 2025: [12,25,1,8],\n },\n {\n name: \"Vacanţa de primăvară\",\n 2020: [3,5,3,8],\n 2021: [3,5,3,8],\n 2022: [3,5,3,8],\n 2023: [3,8,3,12],\n 2024: [3,8,3,12],\n 2025: [3,3,3,9],\n 2026: [3,5,3,8],\n },\n {\n name: \"Vacanţa de Paşti\",\n 2020: [4,18,4,27],\n 2021: [5,1,5,10],\n 2022: [4,23,5,2],\n 2023: [4,15,4,24],\n 2024: [5,4,5,13],\n 2025: [4,19,4,28],\n 2026: [4,11,4,20],\n },\n {\n name: \"Vacanţa de vară\",\n 2020: [6,1,8,31],\n 2021: [6,1,8,31],\n 2022: [6,1,8,31],\n 2023: [6,1,8,31],\n 2024: [6,1,8,31],\n 2025: [6,1,8,31],\n 2026: [5,30,8,31],\n },\n {\n name: \"Vacanţa de toamnă\",\n 2020: [10,24,11,1],\n 2021: [10,27,10,31],\n 2022: [10,26,10,30],\n 2023: [11,1,11,5],\n 2024: [10,28,11,3],\n 2025: [10,27,11,2],\n },\n ],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=47.0105&lon=28.8638&zoom=18&addressdetails=1&accept-language=ro,en\"\n};\n\nexport const mt = {\n PH: [{\"name\":\"L-Ewwel tas-Sena\",\"fixed_date\":[1,1]},{\"name\":\"Nawfraġju ta' San Pawl\",\"fixed_date\":[2,10]},{\"name\":\"San Ġużepp\",\"fixed_date\":[3,19]},{\"name\":\"Jum il-Ħelsien\",\"fixed_date\":[3,31]},{\"name\":\"Il-Ġimgħa l-Kbira\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Jum il-Ħaddiem\",\"fixed_date\":[5,1]},{\"name\":\"Sette Giugno\",\"fixed_date\":[6,7]},{\"name\":\"L-Imnarja\",\"fixed_date\":[6,29]},{\"name\":\"Santa Marija\",\"fixed_date\":[8,15]},{\"name\":\"Jum il-Vitorja\",\"fixed_date\":[9,8]},{\"name\":\"Jum l-Indipendenza\",\"fixed_date\":[9,21]},{\"name\":\"Il-Kunċizzjoni\",\"fixed_date\":[12,8]},{\"name\":\"Jum ir-Repubblika\",\"fixed_date\":[12,13]},{\"name\":\"Il-Milied\",\"fixed_date\":[12,25]}],\n SH: [\n {\n name: \"Vaganzi tal-Milied\",\n 2019: [12,23,1,6],\n 2020: [12,23,1,6],\n 2021: [12,23,1,6],\n 2022: [12,23,1,6],\n 2023: [12,23,1,6],\n 2024: [12,23,1,6],\n 2025: [12,23,1,6],\n },\n {\n name: \"Festi tal-Karnival\",\n 2020: [2,24,2,25],\n 2021: [2,15,2,17],\n 2022: [2,28,3,2],\n 2023: [2,20,2,21],\n 2024: [2,12,2,14],\n 2025: [3,1,3,4],\n 2026: [2,16,2,17],\n },\n {\n name: \"Vaganzi tal-Għid\",\n 2020: [4,8,4,15],\n 2021: [3,31,4,7],\n 2022: [4,13,4,20],\n 2023: [4,5,4,12],\n 2024: [3,27,4,3],\n 2025: [4,16,4,23],\n 2026: [4,1,4,8],\n },\n {\n name: \"Kumpens għall-vaganzi fi tmiem il-ġimgħa\",\n 2020: [4,16,4,17],\n 2021: [4,8,4,9],\n 2022: [5,2,5,2],\n 2023: [4,13,4,14],\n 2024: [12,12,12,12],\n 2025: [5,30,5,30],\n 2026: [4,9,4,10],\n },\n {\n name: \"Vaganzi tas-sajf\",\n 2020: [6,29,9,29],\n 2021: [6,29,9,28],\n 2022: [6,30,9,27],\n 2023: [6,28,9,26],\n 2024: [6,28,9,24],\n 2025: [6,27,9,23],\n 2026: [7,1,9,29],\n },\n {\n name: \"Btajjel ta' nofs it-terminu\",\n 2020: [11,2,11,4],\n 2021: [11,1,11,3],\n 2022: [10,31,11,2],\n 2023: [11,1,11,3],\n 2024: [11,1,11,5],\n 2025: [11,3,11,5],\n },\n ],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=35.8997&lon=14.5147&zoom=18&addressdetails=1&accept-language=mt,en\"\n};\n\nexport const mx = {\n PH: [{\"name\":\"Año Nuevo\",\"fixed_date\":[1,1]},{\"name\":\"Día de la Constitución\",\"variable_date\":\"firstFebruaryMonday\"},{\"name\":\"Natalicio de Benito Juárez\",\"variable_date\":\"firstMarchMonday\",\"offset\":14},{\"name\":\"Día del Trabajador\",\"fixed_date\":[5,1]},{\"name\":\"Día de la Independencia\",\"fixed_date\":[9,16]},{\"name\":\"Día de la Revolución\",\"variable_date\":\"firstNovemberMonday\",\"offset\":14},{\"name\":\"Navidad\",\"fixed_date\":[12,25]}],\n SH: [\n {\n name: \"Receso de invierno\",\n 2019: [12,23,1,7],\n 2020: [12,21,1,5],\n 2021: [12,20,12,31],\n 2022: [12,19,12,30],\n 2023: [12,18,1,2],\n 2024: [12,19,1,3],\n 2025: [12,22,1,6],\n },\n {\n name: \"Receso de primavera\",\n 2020: [4,6,4,17],\n 2021: [3,29,4,9],\n 2022: [4,11,4,22],\n 2023: [4,3,4,14],\n 2024: [3,25,4,5],\n 2025: [4,14,4,25],\n 2026: [3,30,4,10],\n },\n {\n name: \"Receso de clases\",\n 2020: [7,7,8,23],\n 2021: [7,10,8,29],\n 2022: [7,29,8,28],\n 2023: [7,27,8,27],\n 2024: [7,17,8,25],\n 2025: [7,16,8,31],\n },\n {\n name: \"Fin de lecciones\",\n 2026: [7,15,7,15],\n },\n ],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=19.4326&lon=-99.1332&zoom=18&addressdetails=1&accept-language=es,en\"\n};\n\nexport const na = {\n PH: [{\"name\":\"New Year’s Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday\",\"substitute_name\":\"Public Holiday\"},{\"name\":\"Independence Day\",\"fixed_date\":[3,21],\"substitute_rule\":\"if sunday then next monday\",\"substitute_name\":\"Public Holiday\"},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Easter Monday\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Workers’ Day\",\"fixed_date\":[5,1],\"substitute_rule\":\"if sunday then next monday\",\"substitute_name\":\"Public Holiday\"},{\"name\":\"Cassinga Day\",\"fixed_date\":[5,4],\"substitute_rule\":\"if sunday then next monday\",\"substitute_name\":\"Public Holiday\"},{\"name\":\"Ascension Day\",\"variable_date\":\"easter\",\"offset\":39},{\"name\":\"Africa Day\",\"fixed_date\":[5,25],\"substitute_rule\":\"if sunday then next monday\",\"substitute_name\":\"Public Holiday\"},{\"name\":\"Heroes’ Day\",\"fixed_date\":[8,26],\"substitute_rule\":\"if sunday then next monday\",\"substitute_name\":\"Public Holiday\"},{\"name\":\"Human Rights Day\",\"fixed_date\":[12,10],\"substitute_rule\":\"if sunday then next monday\",\"substitute_name\":\"Public Holiday\"},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25]},{\"name\":\"Family Day\",\"fixed_date\":[12,26],\"substitute_rule\":\"if sunday then next monday\",\"substitute_name\":\"Public Holiday\"}],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/search?format=json&country=Namibia&zoom=18&addressdetails=1&limit=1\"\n};\n\nexport const nf = {\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if saturday,sunday then next monday\"},{\"name\":\"Australia Day\",\"fixed_date\":[1,26],\"shift_rule\":\"if saturday,sunday then next monday\"},{\"name\":\"Foundation Day\",\"fixed_date\":[3,6],\"substitute_rule\":\"if saturday,sunday then next monday\"},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Easter Monday\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Anzac Day\",\"fixed_date\":[4,25]},{\"name\":\"Anniversary (Bounty) Day\",\"fixed_date\":[6,8],\"shift_rule\":\"if saturday,sunday then next monday\"},{\"name\":\"Norfolk Island Agricultural Show\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"lastNovemberWednesday\"},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\"},{\"name\":\"Boxing Day\",\"fixed_date\":[12,26],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\"}]\n};\n\nexport const nl = {\n PH: [{\"name\":\"Nieuwjaarsdag\",\"fixed_date\":[1,1]},{\"name\":\"Goede vrijdag\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Tweede Paasdag\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Koningsdag\",\"fixed_date\":[4,27],\"shift_rule\":\"if sunday then previous saturday\"},{\"name\":\"Bevrijdingsdag\",\"fixed_date\":[5,5]},{\"name\":\"Hemelvaartsdag\",\"variable_date\":\"easter\",\"offset\":39},{\"name\":\"Tweede Pinksterdag\",\"variable_date\":\"easter\",\"offset\":50},{\"name\":\"Eerste Kerstdag\",\"fixed_date\":[12,25]},{\"name\":\"Tweede Kerstdag\",\"fixed_date\":[12,26]}],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=52.3702&lon=4.8952&zoom=18&addressdetails=1&accept-language=nl,en\",\n \"MI\": {\n \"_state_code\": \"mi\",\n SH: [\n {\n name: \"Kerstvakantie\",\n 2019: [12,21,1,5],\n 2020: [12,19,1,3],\n 2021: [12,25,1,9],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,5],\n 2025: [12,20,1,4],\n 2026: [12,19,1,3],\n 2027: [12,25,1,9],\n 2028: [12,23,1,7],\n 2029: [12,22,1,6],\n },\n {\n name: \"Voorjaarsvakantie\",\n 2020: [2,22,3,1],\n 2021: [2,20,2,28],\n 2022: [2,26,3,6],\n 2023: [2,25,3,5],\n 2024: [2,17,2,25],\n 2025: [2,22,3,2],\n 2026: [2,14,2,22],\n 2027: [2,20,2,28],\n 2028: [2,26,3,5],\n 2029: [2,17,2,25],\n 2030: [2,23,3,3],\n },\n {\n name: \"Meivakantie\",\n 2020: [4,25,5,3],\n 2021: [5,1,5,9],\n 2022: [4,30,5,8],\n 2023: [4,29,5,7],\n 2024: [4,27,5,5],\n 2025: [4,26,5,4],\n 2026: [4,25,5,3],\n 2027: [4,24,5,2],\n 2028: [4,29,5,7],\n 2029: [4,28,5,6],\n 2030: [4,27,5,5],\n },\n {\n name: \"Zomervakantie\",\n 2020: [7,18,8,30],\n 2021: [7,17,8,29],\n 2022: [7,9,8,21],\n 2023: [7,8,8,20],\n 2024: [7,13,8,25],\n 2025: [7,19,8,31],\n 2026: [7,18,8,30],\n 2027: [7,17,8,29],\n 2028: [7,8,8,20],\n 2029: [7,7,8,19],\n 2030: [7,13,8,25],\n },\n {\n name: \"Herfstvakantie\",\n 2020: [10,17,10,25],\n 2021: [10,16,10,24],\n 2022: [10,22,10,30],\n 2023: [10,14,10,22],\n 2024: [10,26,11,3],\n 2025: [10,18,10,26],\n 2026: [10,17,10,25],\n 2027: [10,16,10,24],\n 2028: [10,21,10,29],\n 2029: [10,20,10,28],\n },\n ]\n },\n \"NO\": {\n \"_state_code\": \"no\",\n SH: [\n {\n name: \"Kerstvakantie\",\n 2019: [12,21,1,5],\n 2020: [12,19,1,3],\n 2021: [12,25,1,9],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,5],\n 2025: [12,20,1,4],\n 2026: [12,19,1,3],\n 2027: [12,25,1,9],\n 2028: [12,23,1,7],\n 2029: [12,22,1,6],\n },\n {\n name: \"Voorjaarsvakantie\",\n 2020: [2,15,2,23],\n 2021: [2,20,2,28],\n 2022: [2,19,2,27],\n 2023: [2,25,3,5],\n 2024: [2,17,2,25],\n 2025: [2,15,2,23],\n 2026: [2,21,3,1],\n 2027: [2,20,2,28],\n 2028: [2,19,2,27],\n 2029: [2,17,2,25],\n 2030: [2,16,2,24],\n },\n {\n name: \"Meivakantie\",\n 2020: [4,25,5,3],\n 2021: [5,1,5,9],\n 2022: [4,30,5,8],\n 2023: [4,29,5,7],\n 2024: [4,27,5,5],\n 2025: [4,26,5,4],\n 2026: [4,25,5,3],\n 2027: [4,24,5,2],\n 2028: [4,29,5,7],\n 2029: [4,28,5,6],\n 2030: [4,27,5,5],\n },\n {\n name: \"Zomervakantie\",\n 2020: [7,4,8,16],\n 2021: [7,10,8,22],\n 2022: [7,16,8,28],\n 2023: [7,22,9,3],\n 2024: [7,20,9,1],\n 2025: [7,12,8,24],\n 2026: [7,4,8,16],\n 2027: [7,10,8,22],\n 2028: [7,15,8,27],\n 2029: [7,21,9,2],\n 2030: [7,20,9,1],\n },\n {\n name: \"Herfstvakantie\",\n 2020: [10,10,10,18],\n 2021: [10,16,10,24],\n 2022: [10,15,10,23],\n 2023: [10,21,10,29],\n 2024: [10,26,11,3],\n 2025: [10,18,10,26],\n 2026: [10,10,10,18],\n 2027: [10,16,10,24],\n 2028: [10,14,10,22],\n 2029: [10,20,10,28],\n },\n ]\n },\n \"ZU\": {\n \"_state_code\": \"zu\",\n SH: [\n {\n name: \"Kerstvakantie\",\n 2019: [12,21,1,5],\n 2020: [12,19,1,3],\n 2021: [12,25,1,9],\n 2022: [12,24,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,5],\n 2025: [12,20,1,4],\n 2026: [12,19,1,3],\n 2027: [12,25,1,9],\n 2028: [12,23,1,7],\n 2029: [12,22,1,6],\n },\n {\n name: \"Voorjaarsvakantie\",\n 2020: [2,22,3,1],\n 2021: [2,13,2,21],\n 2022: [2,26,3,6],\n 2023: [2,18,2,26],\n 2024: [2,10,2,18],\n 2025: [2,22,3,2],\n 2026: [2,14,2,22],\n 2027: [2,13,3,21],\n 2028: [2,26,3,5],\n 2029: [2,10,3,18],\n 2030: [2,23,3,3],\n },\n {\n name: \"Meivakantie\",\n 2020: [4,25,5,3],\n 2021: [5,1,5,9],\n 2022: [4,30,5,8],\n 2023: [4,29,5,7],\n 2024: [4,27,5,5],\n 2025: [4,26,5,4],\n 2026: [4,25,5,3],\n 2027: [4,24,5,2],\n 2028: [4,29,5,7],\n 2029: [4,28,5,6],\n 2030: [4,27,5,5],\n },\n {\n name: \"Zomervakantie\",\n 2020: [7,11,8,23],\n 2021: [7,24,9,5],\n 2022: [7,23,9,4],\n 2023: [7,15,8,27],\n 2024: [7,6,8,18],\n 2025: [7,5,8,17],\n 2026: [7,11,8,23],\n 2027: [7,24,9,5],\n 2028: [7,22,9,3],\n 2029: [7,14,8,26],\n 2030: [7,6,8,18],\n },\n {\n name: \"Herfstvakantie\",\n 2020: [10,17,10,25],\n 2021: [10,23,10,31],\n 2022: [10,22,10,30],\n 2023: [10,14,10,22],\n 2024: [10,19,10,27],\n 2025: [10,11,10,19],\n 2026: [10,17,10,25],\n 2027: [10,23,10,31],\n 2028: [10,21,10,29],\n 2029: [10,13,10,21],\n },\n ]\n }\n};\n\nexport const no = {\n PH: [{\"name\":\"Første nyttårsdag\",\"fixed_date\":[1,1]},{\"name\":\"Skjærtorsdag\",\"variable_date\":\"easter\",\"offset\":-3},{\"name\":\"Langfredag\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Første påskedag\",\"variable_date\":\"easter\"},{\"name\":\"Andre påskedag\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Arbeidernes dag\",\"fixed_date\":[5,1]},{\"name\":\"Kristi himmelfartsdag\",\"variable_date\":\"easter\",\"offset\":39},{\"name\":\"Grunnlovsdagen\",\"fixed_date\":[5,17]},{\"name\":\"Første pinsedag\",\"variable_date\":\"easter\",\"offset\":49},{\"name\":\"Andre pinsedag\",\"variable_date\":\"easter\",\"offset\":50},{\"name\":\"Første juledag\",\"fixed_date\":[12,25]},{\"name\":\"Andre juledag\",\"fixed_date\":[12,26]}],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=61.0&lon=8.0&zoom=8&addressdetails=1&accept-language=no,en\"\n};\n\nexport const nz = {\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\"},{\"name\":\"Day after New Year's Day\",\"fixed_date\":[1,2],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\"},{\"name\":\"Waitangi Day\",\"fixed_date\":[2,6],\"substitute_rule\":\"if saturday,sunday then next monday\"},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Easter Monday\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Anzac Day\",\"fixed_date\":[4,25],\"substitute_rule\":\"if saturday,sunday then next monday\"},{\"name\":\"King's Birthday\",\"variable_date\":\"firstJuneMonday\"},{\"name\":\"Matariki\",\"fixed_date\":[6,25],\"year\":2027},{\"name\":\"Matariki\",\"fixed_date\":[7,6],\"year\":2029},{\"name\":\"Matariki\",\"fixed_date\":[7,10],\"year\":2026},{\"name\":\"Matariki\",\"fixed_date\":[7,14],\"year\":2028},{\"name\":\"Labour Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\"},{\"name\":\"Boxing Day\",\"fixed_date\":[12,26],\"substitute_rule\":\"if saturday then next monday if sunday then next tuesday\"}],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=-41.2922255&lon=174.7763033&zoom=16&addressdetails=1&accept-language=en\"\n};\n\nexport const pl = {\n PH: [{\"name\":\"Nowy Rok\",\"fixed_date\":[1,1]},{\"name\":\"Święto Trzech Króli\",\"fixed_date\":[1,6]},{\"name\":\"pierwszy dzień Wielkiej Nocy\",\"variable_date\":\"easter\"},{\"name\":\"drugi dzień Wielkiej Nocy\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Święto Państwowe\",\"fixed_date\":[5,1]},{\"name\":\"Święto Narodowe Trzeciego Maja\",\"fixed_date\":[5,3]},{\"name\":\"pierwszy dzień Zielonych Świątek\",\"variable_date\":\"easter\",\"offset\":49},{\"name\":\"dzień Bożego Ciała\",\"variable_date\":\"easter\",\"offset\":60},{\"name\":\"Wniebowzięcie Najświętszej Marii Panny\",\"fixed_date\":[8,15]},{\"name\":\"Wszystkich Świętych\",\"fixed_date\":[11,1]},{\"name\":\"Narodowe Święto Niepodległości\",\"fixed_date\":[11,11]},{\"name\":\"Wigilia Bożego Narodzenia\",\"fixed_date\":[12,24]},{\"name\":\"pierwszy dzień Bożego Narodzenia\",\"fixed_date\":[12,25]},{\"name\":\"drugi dzień Bożego Narodzenia\",\"fixed_date\":[12,26]}],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=53.4825&lon=18.75823&zoom=18&addressdetails=1&accept-language=pl,en\",\n \"Dolnośląskie\": {\n \"_state_code\": \"ds\",\n SH: [\n {\n name: \"Zimowa przerwa świąteczna\",\n 2019: [12,23,12,31],\n 2020: [12,23,12,31],\n 2021: [12,23,12,31],\n 2022: [12,23,12,31],\n 2023: [12,23,12,31],\n 2024: [12,23,12,31],\n 2025: [12,22,12,31],\n },\n {\n name: \"Ferie zimowe\",\n 2020: [1,10,1,23],\n 2021: [1,4,1,17],\n 2022: [1,14,1,27],\n 2023: [1,13,1,26],\n 2024: [1,15,1,28],\n 2025: [2,3,2,16],\n 2026: [2,2,2,15],\n 2027: [1,18,1,31],\n },\n {\n name: \"Wiosenna przerwa świąteczna\",\n 2020: [4,9,4,14],\n 2021: [4,1,4,6],\n 2022: [4,14,4,19],\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n },\n {\n name: \"Ferie letnie\",\n 2020: [6,27,8,31],\n 2021: [6,26,8,31],\n 2022: [6,25,8,31],\n 2023: [6,24,8,31],\n 2024: [6,22,8,31],\n 2025: [6,28,8,31],\n 2026: [6,27,8,31],\n },\n ]\n },\n \"Kujawsko-pomorskie\": {\n \"_state_code\": \"kp\",\n SH: [\n {\n name: \"Zimowa przerwa świąteczna\",\n 2019: [12,23,12,31],\n 2020: [12,23,12,31],\n 2021: [12,23,12,31],\n 2022: [12,23,12,31],\n 2023: [12,23,12,31],\n 2024: [12,23,12,31],\n 2025: [12,22,12,31],\n },\n {\n name: \"Ferie zimowe\",\n 2020: [1,27,2,9],\n 2021: [1,4,1,17],\n 2022: [1,31,2,13],\n 2023: [1,30,2,12],\n 2024: [2,12,2,25],\n 2025: [1,20,2,2],\n 2026: [2,2,2,15],\n 2027: [2,15,2,28],\n },\n {\n name: \"Wiosenna przerwa świąteczna\",\n 2020: [4,9,4,14],\n 2021: [4,1,4,6],\n 2022: [4,14,4,19],\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n },\n {\n name: \"Ferie letnie\",\n 2020: [6,27,8,31],\n 2021: [6,26,8,31],\n 2022: [6,25,8,31],\n 2023: [6,24,8,31],\n 2024: [6,22,8,31],\n 2025: [6,28,8,31],\n 2026: [6,27,8,31],\n },\n ]\n },\n \"Łódzkie\": {\n \"_state_code\": \"ld\",\n SH: [\n {\n name: \"Zimowa przerwa świąteczna\",\n 2019: [12,23,12,31],\n 2020: [12,23,12,31],\n 2021: [12,23,12,31],\n 2022: [12,23,12,31],\n 2023: [12,23,12,31],\n 2024: [12,23,12,31],\n 2025: [12,22,12,31],\n },\n {\n name: \"Ferie zimowe\",\n 2020: [1,13,1,26],\n 2021: [1,4,1,17],\n 2022: [1,17,1,30],\n 2023: [1,16,1,29],\n 2024: [1,29,2,11],\n 2025: [2,17,3,2],\n 2026: [2,2,2,15],\n 2027: [1,18,1,31],\n },\n {\n name: \"Wiosenna przerwa świąteczna\",\n 2020: [4,9,4,14],\n 2021: [4,1,4,6],\n 2022: [4,14,4,19],\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n },\n {\n name: \"Ferie letnie\",\n 2020: [6,27,8,31],\n 2021: [6,26,8,31],\n 2022: [6,25,8,31],\n 2023: [6,24,8,31],\n 2024: [6,22,8,31],\n 2025: [6,28,8,31],\n 2026: [6,27,8,31],\n },\n ]\n },\n \"Lubelskie\": {\n \"_state_code\": \"lb\",\n SH: [\n {\n name: \"Zimowa przerwa świąteczna\",\n 2019: [12,23,12,31],\n 2020: [12,23,12,31],\n 2021: [12,23,12,31],\n 2022: [12,23,12,31],\n 2023: [12,23,12,31],\n 2024: [12,23,12,31],\n 2025: [12,22,12,31],\n },\n {\n name: \"Ferie zimowe\",\n 2020: [1,13,1,26],\n 2021: [1,4,1,17],\n 2022: [1,17,1,30],\n 2023: [1,16,1,29],\n 2024: [1,29,2,11],\n 2025: [2,17,3,2],\n 2026: [2,16,3,1],\n },\n {\n name: \"Wiosenna przerwa świąteczna\",\n 2020: [4,9,4,14],\n 2021: [4,1,4,6],\n 2022: [4,14,4,19],\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n },\n {\n name: \"Ferie letnie\",\n 2020: [6,27,8,31],\n 2021: [6,26,8,31],\n 2022: [6,25,8,31],\n 2023: [6,24,8,31],\n 2024: [6,22,8,31],\n 2025: [6,28,8,31],\n 2026: [6,27,8,31],\n },\n ]\n },\n \"Lubuskie\": {\n \"_state_code\": \"lu\",\n SH: [\n {\n name: \"Zimowa przerwa świąteczna\",\n 2019: [12,23,12,31],\n 2020: [12,23,12,31],\n 2021: [12,23,12,31],\n 2022: [12,23,12,31],\n 2023: [12,23,12,31],\n 2024: [12,23,12,31],\n 2025: [12,22,12,31],\n },\n {\n name: \"Ferie zimowe\",\n 2020: [1,27,2,9],\n 2021: [1,4,1,17],\n 2022: [1,31,2,13],\n 2023: [1,30,2,12],\n 2024: [2,12,2,25],\n 2025: [1,20,2,2],\n 2026: [2,16,3,1],\n 2027: [2,1,2,14],\n },\n {\n name: \"Wiosenna przerwa świąteczna\",\n 2020: [4,9,4,14],\n 2021: [4,1,4,6],\n 2022: [4,14,4,19],\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n },\n {\n name: \"Ferie letnie\",\n 2020: [6,27,8,31],\n 2021: [6,26,8,31],\n 2022: [6,25,8,31],\n 2023: [6,24,8,31],\n 2024: [6,22,8,31],\n 2025: [6,28,8,31],\n 2026: [6,27,8,31],\n },\n ]\n },\n \"Małopolskie\": {\n \"_state_code\": \"ma\",\n SH: [\n {\n name: \"Zimowa przerwa świąteczna\",\n 2019: [12,23,12,31],\n 2020: [12,23,12,31],\n 2021: [12,23,12,31],\n 2022: [12,23,12,31],\n 2023: [12,23,12,31],\n 2024: [12,23,12,31],\n 2025: [12,22,12,31],\n },\n {\n name: \"Ferie zimowe\",\n 2020: [1,27,2,9],\n 2021: [1,4,1,17],\n 2022: [1,31,2,13],\n 2023: [1,30,2,12],\n 2024: [2,12,2,25],\n 2025: [1,20,2,2],\n 2026: [2,2,2,15],\n 2027: [2,15,2,28],\n },\n {\n name: \"Wiosenna przerwa świąteczna\",\n 2020: [4,9,4,14],\n 2021: [4,1,4,6],\n 2022: [4,14,4,19],\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n },\n {\n name: \"Ferie letnie\",\n 2020: [6,27,8,31],\n 2021: [6,26,8,31],\n 2022: [6,25,8,31],\n 2023: [6,24,8,31],\n 2024: [6,22,8,31],\n 2025: [6,28,8,31],\n 2026: [6,27,8,31],\n },\n ]\n },\n \"Mazowieckie\": {\n \"_state_code\": \"mz\",\n SH: [\n {\n name: \"Zimowa przerwa świąteczna\",\n 2019: [12,23,12,31],\n 2020: [12,23,12,31],\n 2021: [12,23,12,31],\n 2022: [12,23,12,31],\n 2023: [12,23,12,31],\n 2024: [12,23,12,31],\n 2025: [12,22,12,31],\n },\n {\n name: \"Ferie zimowe\",\n 2020: [1,10,1,23],\n 2021: [1,4,1,17],\n 2022: [1,14,1,27],\n 2023: [1,13,1,26],\n 2024: [1,15,1,28],\n 2025: [2,3,2,16],\n 2026: [1,19,2,1],\n 2027: [2,1,2,14],\n },\n {\n name: \"Wiosenna przerwa świąteczna\",\n 2020: [4,9,4,14],\n 2021: [4,1,4,6],\n 2022: [4,14,4,19],\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n },\n {\n name: \"Ferie letnie\",\n 2020: [6,27,8,31],\n 2021: [6,26,8,31],\n 2022: [6,25,8,31],\n 2023: [6,24,8,31],\n 2024: [6,22,8,31],\n 2025: [6,28,8,31],\n 2026: [6,27,8,31],\n },\n ]\n },\n \"Opolskie\": {\n \"_state_code\": \"op\",\n SH: [\n {\n name: \"Zimowa przerwa świąteczna\",\n 2019: [12,23,12,31],\n 2020: [12,23,12,31],\n 2021: [12,23,12,31],\n 2022: [12,23,12,31],\n 2023: [12,23,12,31],\n 2024: [12,23,12,31],\n 2025: [12,22,12,31],\n },\n {\n name: \"Ferie zimowe\",\n 2020: [1,10,1,23],\n 2021: [1,4,1,17],\n 2022: [1,14,1,27],\n 2023: [1,13,1,26],\n 2024: [1,15,1,28],\n 2025: [2,3,2,16],\n 2026: [2,2,2,15],\n 2027: [1,18,1,31],\n },\n {\n name: \"Wiosenna przerwa świąteczna\",\n 2020: [4,9,4,14],\n 2021: [4,1,4,6],\n 2022: [4,14,4,19],\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n },\n {\n name: \"Ferie letnie\",\n 2020: [6,27,8,31],\n 2021: [6,26,8,31],\n 2022: [6,25,8,31],\n 2023: [6,24,8,31],\n 2024: [6,22,8,31],\n 2025: [6,28,8,31],\n 2026: [6,27,8,31],\n },\n ]\n },\n \"Podkarpackie\": {\n \"_state_code\": \"pd\",\n SH: [\n {\n name: \"Zimowa przerwa świąteczna\",\n 2019: [12,23,12,31],\n 2020: [12,23,12,31],\n 2021: [12,23,12,31],\n 2022: [12,23,12,31],\n 2023: [12,23,12,31],\n 2024: [12,23,12,31],\n 2025: [12,22,12,31],\n },\n {\n name: \"Ferie zimowe\",\n 2020: [1,13,1,26],\n 2021: [1,4,1,17],\n 2022: [1,17,1,30],\n 2023: [1,16,1,29],\n 2024: [1,29,2,11],\n 2025: [2,17,3,2],\n 2026: [2,16,3,1],\n 2027: [1,18,1,31],\n },\n {\n name: \"Wiosenna przerwa świąteczna\",\n 2020: [4,9,4,14],\n 2021: [4,1,4,6],\n 2022: [4,14,4,19],\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n },\n {\n name: \"Ferie letnie\",\n 2020: [6,27,8,31],\n 2021: [6,26,8,31],\n 2022: [6,25,8,31],\n 2023: [6,24,8,31],\n 2024: [6,22,8,31],\n 2025: [6,28,8,31],\n 2026: [6,27,8,31],\n },\n ]\n },\n \"Podlaskie\": {\n \"_state_code\": \"pk\",\n SH: [\n {\n name: \"Zimowa przerwa świąteczna\",\n 2019: [12,23,12,31],\n 2020: [12,23,12,31],\n 2021: [12,23,12,31],\n 2022: [12,23,12,31],\n 2023: [12,23,12,31],\n 2024: [12,23,12,31],\n 2025: [12,22,12,31],\n },\n {\n name: \"Ferie zimowe\",\n 2020: [1,20,2,2],\n 2021: [1,4,1,17],\n 2022: [1,24,2,6],\n 2023: [1,23,2,5],\n 2024: [1,22,2,4],\n 2025: [1,27,2,9],\n 2026: [1,19,2,1],\n 2027: [1,18,1,31],\n },\n {\n name: \"Wiosenna przerwa świąteczna\",\n 2020: [4,9,4,14],\n 2021: [4,1,4,6],\n 2022: [4,14,4,19],\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n },\n {\n name: \"Ferie letnie\",\n 2020: [6,27,8,31],\n 2021: [6,26,8,31],\n 2022: [6,25,8,31],\n 2023: [6,24,8,31],\n 2024: [6,22,8,31],\n 2025: [6,28,8,31],\n 2026: [6,27,8,31],\n },\n ]\n },\n \"Pomorskie\": {\n \"_state_code\": \"pm\",\n SH: [\n {\n name: \"Zimowa przerwa świąteczna\",\n 2019: [12,23,12,31],\n 2020: [12,23,12,31],\n 2021: [12,23,12,31],\n 2022: [12,23,12,31],\n 2023: [12,23,12,31],\n 2024: [12,23,12,31],\n 2025: [12,22,12,31],\n },\n {\n name: \"Ferie zimowe\",\n 2020: [1,13,1,26],\n 2021: [1,4,1,17],\n 2022: [1,17,1,30],\n 2023: [1,16,1,29],\n 2024: [1,29,2,11],\n 2025: [2,17,3,2],\n 2026: [1,19,2,1],\n 2027: [2,1,2,14],\n },\n {\n name: \"Wiosenna przerwa świąteczna\",\n 2020: [4,9,4,14],\n 2021: [4,1,4,6],\n 2022: [4,14,4,19],\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n },\n {\n name: \"Ferie letnie\",\n 2020: [6,27,8,31],\n 2021: [6,26,8,31],\n 2022: [6,25,8,31],\n 2023: [6,24,8,31],\n 2024: [6,22,8,31],\n 2025: [6,28,8,31],\n 2026: [6,27,8,31],\n },\n ]\n },\n \"Śląskie\": {\n \"_state_code\": \"sk\",\n SH: [\n {\n name: \"Zimowa przerwa świąteczna\",\n 2019: [12,23,12,31],\n 2020: [12,23,12,31],\n 2021: [12,23,12,31],\n 2022: [12,23,12,31],\n 2023: [12,23,12,31],\n 2024: [12,23,12,31],\n 2025: [12,22,12,31],\n },\n {\n name: \"Ferie zimowe\",\n 2020: [1,13,1,26],\n 2021: [1,4,1,17],\n 2022: [1,17,1,30],\n 2023: [1,16,1,29],\n 2024: [1,29,2,11],\n 2025: [2,17,3,2],\n 2026: [2,16,3,1],\n 2027: [1,18,1,31],\n },\n {\n name: \"Wiosenna przerwa świąteczna\",\n 2020: [4,9,4,14],\n 2021: [4,1,4,6],\n 2022: [4,14,4,19],\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n },\n {\n name: \"Ferie letnie\",\n 2020: [6,27,8,31],\n 2021: [6,26,8,31],\n 2022: [6,25,8,31],\n 2023: [6,24,8,31],\n 2024: [6,22,8,31],\n 2025: [6,28,8,31],\n 2026: [6,27,8,31],\n },\n ]\n },\n \"Świętokrzyskie\": {\n \"_state_code\": \"sl\",\n SH: [\n {\n name: \"Zimowa przerwa świąteczna\",\n 2019: [12,23,12,31],\n 2020: [12,23,12,31],\n 2021: [12,23,12,31],\n 2022: [12,23,12,31],\n 2023: [12,23,12,31],\n 2024: [12,23,12,31],\n 2025: [12,22,12,31],\n },\n {\n name: \"Ferie zimowe\",\n 2020: [1,27,2,9],\n 2021: [1,4,1,17],\n 2022: [1,31,2,13],\n 2023: [1,30,2,12],\n 2024: [2,12,2,25],\n 2025: [1,20,2,2],\n 2026: [1,19,2,1],\n 2027: [2,1,2,14],\n },\n {\n name: \"Wiosenna przerwa świąteczna\",\n 2020: [4,9,4,14],\n 2021: [4,1,4,6],\n 2022: [4,14,4,19],\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n },\n {\n name: \"Ferie letnie\",\n 2020: [6,27,8,31],\n 2021: [6,26,8,31],\n 2022: [6,25,8,31],\n 2023: [6,24,8,31],\n 2024: [6,22,8,31],\n 2025: [6,28,8,31],\n 2026: [6,27,8,31],\n },\n ]\n },\n \"Warmińsko-mazurskie\": {\n \"_state_code\": \"wn\",\n SH: [\n {\n name: \"Zimowa przerwa świąteczna\",\n 2019: [12,23,12,31],\n 2020: [12,23,12,31],\n 2021: [12,23,12,31],\n 2022: [12,23,12,31],\n 2023: [12,23,12,31],\n 2024: [12,23,12,31],\n 2025: [12,22,12,31],\n },\n {\n name: \"Ferie zimowe\",\n 2020: [1,20,2,2],\n 2021: [1,4,1,17],\n 2022: [1,24,2,6],\n 2023: [1,23,2,5],\n 2024: [1,22,2,4],\n 2025: [1,27,2,9],\n 2026: [1,19,2,1],\n 2027: [2,15,2,28],\n },\n {\n name: \"Wiosenna przerwa świąteczna\",\n 2020: [4,9,4,14],\n 2021: [4,1,4,6],\n 2022: [4,14,4,19],\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n },\n {\n name: \"Ferie letnie\",\n 2020: [6,27,8,31],\n 2021: [6,26,8,31],\n 2022: [6,25,8,31],\n 2023: [6,24,8,31],\n 2024: [6,22,8,31],\n 2025: [6,28,8,31],\n 2026: [6,27,8,31],\n },\n ]\n },\n \"Wielkopolskie\": {\n \"_state_code\": \"wp\",\n SH: [\n {\n name: \"Zimowa przerwa świąteczna\",\n 2019: [12,23,12,31],\n 2020: [12,23,12,31],\n 2021: [12,23,12,31],\n 2022: [12,23,12,31],\n 2023: [12,23,12,31],\n 2024: [12,23,12,31],\n 2025: [12,22,12,31],\n },\n {\n name: \"Ferie zimowe\",\n 2020: [1,27,2,9],\n 2021: [1,4,1,17],\n 2022: [1,31,2,13],\n 2023: [1,30,2,12],\n 2024: [2,12,2,25],\n 2025: [1,20,2,2],\n 2026: [2,16,3,1],\n 2027: [2,15,2,28],\n },\n {\n name: \"Wiosenna przerwa świąteczna\",\n 2020: [4,9,4,14],\n 2021: [4,1,4,6],\n 2022: [4,14,4,19],\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n },\n {\n name: \"Ferie letnie\",\n 2020: [6,27,8,31],\n 2021: [6,26,8,31],\n 2022: [6,25,8,31],\n 2023: [6,24,8,31],\n 2024: [6,22,8,31],\n 2025: [6,28,8,31],\n 2026: [6,27,8,31],\n },\n ]\n },\n \"Zachodniopomorskie\": {\n \"_state_code\": \"zp\",\n SH: [\n {\n name: \"Zimowa przerwa świąteczna\",\n 2019: [12,23,12,31],\n 2020: [12,23,12,31],\n 2021: [12,23,12,31],\n 2022: [12,23,12,31],\n 2023: [12,23,12,31],\n 2024: [12,23,12,31],\n 2025: [12,22,12,31],\n },\n {\n name: \"Ferie zimowe\",\n 2020: [1,10,1,23],\n 2021: [1,4,1,17],\n 2022: [1,14,1,27],\n 2023: [1,13,1,26],\n 2024: [1,15,1,28],\n 2025: [2,3,2,16],\n 2026: [2,2,2,15],\n 2027: [2,15,2,28],\n },\n {\n name: \"Wiosenna przerwa świąteczna\",\n 2020: [4,9,4,14],\n 2021: [4,1,4,6],\n 2022: [4,14,4,19],\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n },\n {\n name: \"Ferie letnie\",\n 2020: [6,27,8,31],\n 2021: [6,26,8,31],\n 2022: [6,25,8,31],\n 2023: [6,24,8,31],\n 2024: [6,22,8,31],\n 2025: [6,28,8,31],\n 2026: [6,27,8,31],\n },\n ]\n }\n};\n\nexport const pm = {\n PH: [{\"name\":\"Nouvel An\",\"fixed_date\":[1,1]},{\"name\":\"Lundi de Pâques\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Fête du travail\",\"fixed_date\":[5,1]},{\"name\":\"Fête de la Victoire 1945\",\"fixed_date\":[5,8]},{\"name\":\"Ascension\",\"variable_date\":\"easter\",\"offset\":39},{\"name\":\"Lundi de Pentecôte\",\"variable_date\":\"easter\",\"offset\":50},{\"name\":\"Fête Nationale de la France\",\"fixed_date\":[7,14]},{\"name\":\"Assomption\",\"fixed_date\":[8,15]},{\"name\":\"Toussaint\",\"fixed_date\":[11,1]},{\"name\":\"Armistice 1918\",\"fixed_date\":[11,11]},{\"name\":\"Noël\",\"fixed_date\":[12,25]}]\n};\n\nexport const pt = {\n PH: [{\"name\":\"Ano Novo\",\"fixed_date\":[1,1]},{\"name\":\"Sexta-Feira Santa\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Páscoa\",\"variable_date\":\"easter\"},{\"name\":\"Dia da Liberdade\",\"fixed_date\":[4,25]},{\"name\":\"Dia do trabalhador\",\"fixed_date\":[5,1]},{\"name\":\"Corpo de Deus\",\"variable_date\":\"easter\",\"offset\":60},{\"name\":\"Dia de Portugal\",\"fixed_date\":[6,10]},{\"name\":\"Assunção de Maria\",\"fixed_date\":[8,15]},{\"name\":\"Implantação da República\",\"fixed_date\":[10,5]},{\"name\":\"Todos os santos\",\"fixed_date\":[11,1]},{\"name\":\"Restauração da Independência\",\"fixed_date\":[12,1]},{\"name\":\"Imaculada Conceição\",\"fixed_date\":[12,8]},{\"name\":\"Natal\",\"fixed_date\":[12,25]}],\n SH: [\n {\n name: \"Férias de Natal\",\n 2019: [12,18,1,3],\n 2020: [12,21,12,31],\n 2021: [12,20,1,7],\n 2022: [12,19,1,2],\n 2023: [12,18,1,2],\n 2024: [12,18,1,3],\n 2025: [12,16,1,5],\n 2026: [12,16,12,31],\n 2027: [12,20,12,31],\n },\n {\n name: \"Férias de Carnaval\",\n 2020: [2,24,2,26],\n 2022: [3,1,3,1],\n 2023: [2,20,2,22],\n 2024: [2,12,2,14],\n 2025: [3,3,3,5],\n 2026: [2,16,2,18],\n 2027: [2,8,2,10],\n 2028: [2,28,3,1],\n },\n {\n name: \"Férias de Páscoa\",\n 2020: [3,30,4,13],\n 2021: [3,29,4,1],\n 2022: [4,11,4,18],\n 2023: [4,3,4,14],\n 2024: [3,25,4,5],\n 2025: [4,7,4,21],\n 2026: [3,30,4,10],\n 2027: [3,22,4,2],\n 2028: [4,3,4,17],\n },\n {\n name: \"Férias de verão\",\n 2020: [6,20,9,13],\n 2021: [7,9,9,13],\n 2022: [7,1,9,12],\n 2023: [7,1,9,11],\n 2024: [6,29,9,11],\n 2025: [6,28,9,10],\n 2026: [7,1,9,10],\n 2027: [7,1,9,12],\n },\n {\n name: \"Fim das aulas\",\n 2028: [6,30,6,30],\n },\n ],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=38.7223&lon=-9.1393&zoom=18&addressdetails=1&accept-language=pt,en\"\n};\n\nexport const ro = {\n PH: [{\"name\":\"Anul Nou\",\"fixed_date\":[1,1]},{\"name\":\"A doua zi de Anul Nou\",\"fixed_date\":[1,2]},{\"name\":\"Bobotează\",\"fixed_date\":[1,6]},{\"name\":\"Sfântul Ioan Botezătorul\",\"fixed_date\":[1,7]},{\"name\":\"Ziua Unirii Principatelor Române\",\"fixed_date\":[1,24]},{\"name\":\"Vinerea Mare\",\"variable_date\":\"orthodox easter\",\"offset\":-2},{\"name\":\"Paștele\",\"variable_date\":\"orthodox easter\"},{\"name\":\"A doua zi de Paști\",\"variable_date\":\"orthodox easter\",\"offset\":1},{\"name\":\"Ziua Muncii\",\"fixed_date\":[5,1]},{\"name\":\"Ziua Copilului\",\"fixed_date\":[6,1]},{\"name\":\"Rusaliile\",\"variable_date\":\"orthodox easter\",\"offset\":50},{\"name\":\"A doua zi de Rusalii\",\"variable_date\":\"orthodox easter\",\"offset\":51},{\"name\":\"Adormirea Maicii Domnului\",\"fixed_date\":[8,15]},{\"name\":\"Sfântul Andrei\",\"fixed_date\":[11,30]},{\"name\":\"Ziua Națională a României\",\"fixed_date\":[12,1]},{\"name\":\"Crăciunul\",\"fixed_date\":[12,25]},{\"name\":\"A doua zi de Crăciun\",\"fixed_date\":[12,26]}],\n SH: [\n {\n name: \"Vacanța de iarnă\",\n 2014: [12,20,1,4],\n 2015: [12,19,1,3],\n },\n {\n name: \"Vacanţa intersemestrială\",\n 2015: [1,31,2,8],\n 2016: [1,30,2,7],\n 2021: [1,30,2,7],\n },\n {\n name: \"Vacanța de primăvară\",\n 2015: [4,11,4,19],\n 2016: [4,23,5,3],\n },\n {\n name: \"Vacanța de vară\",\n 2015: [6,20,9,13],\n 2016: [6,18,9,4],\n },\n {\n name: \"Vacanţa de iarnă\",\n 2019: [12,21,1,12],\n 2020: [12,23,1,10],\n 2021: [12,24,1,9],\n 2022: [12,23,1,8],\n 2023: [12,23,1,7],\n 2024: [12,21,1,7],\n 2025: [12,20,1,7],\n },\n {\n name: \"Vacanţa de primăvară\",\n 2020: [4,4,4,21],\n 2022: [4,15,5,1],\n 2023: [4,7,4,18],\n 2024: [4,27,5,7],\n 2025: [4,18,4,27],\n 2026: [4,4,4,14],\n },\n {\n name: \"Vacanţa de vară\",\n 2020: [6,13,9,13],\n 2021: [6,19,9,12],\n 2022: [6,11,9,4],\n 2023: [6,17,9,3],\n 2024: [6,22,9,8],\n 2025: [6,21,9,7],\n 2026: [6,20,9,6],\n },\n {\n name: \"Vacanţa de toamnă\",\n 2020: [10,24,11,1],\n 2021: [10,23,11,7],\n 2022: [10,22,10,30],\n 2023: [10,28,11,5],\n 2024: [10,26,11,3],\n 2025: [10,25,11,1],\n },\n {\n name: \"Vacanţa de primăvară 1\",\n 2021: [4,2,4,11],\n },\n {\n name: \"Vacanţa de primăvară 2\",\n 2021: [4,30,5,9],\n },\n {\n name: \"Vacanţa de schi\",\n 2024: [2,12,2,18],\n },\n ],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=45.9852129&lon=24.6859225&zoom=18&addressdetails=1&accept-language=ro,en\",\n \"Alba\": {\n \"_state_code\": \"ab\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,20,2,26],\n 2024: [2,26,3,3],\n 2025: [2,24,2,28],\n 2026: [2,23,2,27],\n },\n ]\n },\n \"Arad\": {\n \"_state_code\": \"ar\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,20,2,26],\n 2024: [2,26,3,3],\n 2025: [2,24,2,28],\n 2026: [2,16,2,20],\n },\n ]\n },\n \"Argeș\": {\n \"_state_code\": \"ag\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,13,2,19],\n 2024: [2,19,2,25],\n 2025: [2,17,2,21],\n 2026: [2,16,2,20],\n },\n ]\n },\n \"Bacău\": {\n \"_state_code\": \"bc\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,20,2,26],\n 2024: [2,26,3,3],\n 2025: [2,24,2,28],\n 2026: [2,23,2,27],\n },\n ]\n },\n \"Bihor\": {\n \"_state_code\": \"bh\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,13,2,19],\n 2024: [2,19,2,25],\n 2025: [2,17,2,21],\n 2026: [2,16,2,20],\n },\n ]\n },\n \"Bistrița-Năsăud\": {\n \"_state_code\": \"bn\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,13,2,19],\n 2024: [2,12,2,18],\n 2025: [2,10,2,14],\n 2026: [2,9,2,13],\n },\n ]\n },\n \"Botoșani\": {\n \"_state_code\": \"bt\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,20,2,26],\n 2024: [2,19,2,25],\n 2025: [2,24,2,28],\n 2026: [2,23,2,27],\n },\n ]\n },\n \"Brăila\": {\n \"_state_code\": \"br\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,20,2,26],\n 2024: [2,19,2,25],\n 2025: [2,17,2,21],\n 2026: [2,23,2,27],\n },\n ]\n },\n \"Brașov\": {\n \"_state_code\": \"bv\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,20,2,26],\n 2024: [2,26,3,3],\n 2025: [2,24,2,28],\n 2026: [2,16,2,20],\n },\n ]\n },\n \"București\": {\n \"_state_code\": \"bu\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,20,2,26],\n 2024: [2,19,2,25],\n 2025: [2,17,2,21],\n 2026: [2,16,2,20],\n },\n ]\n },\n \"Buzău\": {\n \"_state_code\": \"bz\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,20,2,26],\n 2024: [2,19,2,25],\n 2025: [2,17,2,21],\n 2026: [2,16,2,20],\n },\n ]\n },\n \"Călărași\": {\n \"_state_code\": \"cl\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,13,2,19],\n 2024: [2,19,2,25],\n 2025: [2,17,2,21],\n 2026: [2,16,2,20],\n },\n ]\n },\n \"Caraș-Severin\": {\n \"_state_code\": \"cs\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,20,2,26],\n 2024: [2,19,2,25],\n 2025: [2,17,2,21],\n 2026: [2,16,2,20],\n },\n ]\n },\n \"Cluj\": {\n \"_state_code\": \"cj\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,13,2,19],\n 2024: [2,19,2,25],\n 2025: [2,17,2,21],\n 2026: [2,9,2,13],\n },\n ]\n },\n \"Constanța\": {\n \"_state_code\": \"ct\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,20,2,26],\n 2024: [2,26,3,3],\n 2025: [2,24,2,28],\n 2026: [2,23,2,27],\n },\n ]\n },\n \"Covasna\": {\n \"_state_code\": \"cv\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,20,2,26],\n 2024: [2,19,2,25],\n 2025: [2,24,2,28],\n 2026: [2,23,2,27],\n },\n ]\n },\n \"Dâmbovița\": {\n \"_state_code\": \"db\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,13,2,19],\n 2024: [2,19,2,25],\n 2025: [2,17,2,21],\n 2026: [2,16,2,20],\n },\n ]\n },\n \"Dolj\": {\n \"_state_code\": \"dj\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,20,2,26],\n 2024: [2,26,3,3],\n 2025: [2,24,2,28],\n 2026: [2,16,2,20],\n },\n ]\n },\n \"Galați\": {\n \"_state_code\": \"gl\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,20,2,26],\n 2024: [2,19,2,25],\n 2025: [2,24,2,28],\n 2026: [2,23,2,27],\n },\n ]\n },\n \"Giurgiu\": {\n \"_state_code\": \"gr\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,20,2,26],\n 2024: [2,19,2,25],\n 2025: [2,17,2,21],\n 2026: [2,23,2,27],\n },\n ]\n },\n \"Gorj\": {\n \"_state_code\": \"gj\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,13,2,19],\n 2024: [2,19,2,25],\n 2025: [2,17,2,21],\n 2026: [2,16,2,20],\n },\n ]\n },\n \"Harghita\": {\n \"_state_code\": \"hr\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,20,2,26],\n 2024: [2,19,2,25],\n 2025: [2,24,2,28],\n 2026: [2,23,2,27],\n },\n ]\n },\n \"Hunedoara\": {\n \"_state_code\": \"hd\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,13,2,19],\n 2024: [2,19,2,25],\n 2025: [2,17,2,21],\n 2026: [2,16,2,20],\n },\n ]\n },\n \"Ialomița\": {\n \"_state_code\": \"il\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,20,2,26],\n 2024: [2,19,2,25],\n 2025: [2,17,2,21],\n 2026: [2,16,2,20],\n },\n ]\n },\n \"Iași\": {\n \"_state_code\": \"is\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,20,2,26],\n 2024: [2,19,2,25],\n 2025: [2,24,2,28],\n 2026: [2,16,2,20],\n },\n ]\n },\n \"Ilfov\": {\n \"_state_code\": \"if\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,6,2,12],\n 2024: [2,19,2,25],\n 2025: [2,17,2,21],\n 2026: [2,16,2,20],\n },\n ]\n },\n \"Maramureș\": {\n \"_state_code\": \"mm\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,20,2,26],\n 2024: [2,26,3,3],\n 2025: [2,24,2,28],\n 2026: [2,23,2,27],\n },\n ]\n },\n \"Mehedinți\": {\n \"_state_code\": \"mh\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,20,2,26],\n 2024: [2,26,3,3],\n 2025: [2,17,2,21],\n 2026: [2,16,2,20],\n },\n ]\n },\n \"Mureș\": {\n \"_state_code\": \"ms\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,20,2,26],\n 2024: [2,26,3,3],\n 2025: [2,24,2,28],\n 2026: [2,23,2,27],\n },\n ]\n },\n \"Neamț\": {\n \"_state_code\": \"nt\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,20,2,26],\n 2024: [2,19,2,25],\n 2025: [2,24,2,28],\n 2026: [2,23,2,27],\n },\n ]\n },\n \"Olt\": {\n \"_state_code\": \"ot\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,20,2,26],\n 2024: [2,19,2,25],\n 2025: [2,17,2,21],\n 2026: [2,16,2,20],\n },\n ]\n },\n \"Prahova\": {\n \"_state_code\": \"ph\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,13,2,19],\n 2024: [2,19,2,25],\n 2025: [2,17,2,21],\n 2026: [2,16,2,20],\n },\n ]\n },\n \"Sălaj\": {\n \"_state_code\": \"sj\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,20,2,26],\n 2024: [2,19,2,25],\n 2025: [2,17,2,21],\n 2026: [2,16,2,20],\n },\n ]\n },\n \"Satu Mare\": {\n \"_state_code\": \"sm\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,20,2,26],\n 2024: [2,12,2,18],\n 2025: [2,24,2,28],\n 2026: [2,23,2,27],\n },\n ]\n },\n \"Sibiu\": {\n \"_state_code\": \"sb\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,20,2,26],\n 2024: [2,26,3,3],\n 2025: [2,24,2,28],\n 2026: [2,23,2,27],\n },\n ]\n },\n \"Suceava\": {\n \"_state_code\": \"sv\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,6,2,12],\n 2024: [2,26,3,3],\n 2025: [2,24,2,28],\n 2026: [2,23,2,27],\n },\n ]\n },\n \"Teleorman\": {\n \"_state_code\": \"tr\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,13,2,19],\n 2024: [2,19,2,25],\n 2025: [2,17,2,21],\n 2026: [2,16,2,20],\n },\n ]\n },\n \"Timiș\": {\n \"_state_code\": \"tm\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,20,2,26],\n 2024: [2,26,3,3],\n 2025: [2,17,2,21],\n 2026: [2,9,2,13],\n },\n ]\n },\n \"Tulcea\": {\n \"_state_code\": \"tl\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,20,2,26],\n 2024: [2,26,3,3],\n 2025: [2,24,2,28],\n 2026: [2,16,2,20],\n },\n ]\n },\n \"Vâlcea\": {\n \"_state_code\": \"vl\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,20,2,26],\n 2024: [2,26,3,3],\n 2025: [2,17,2,21],\n 2026: [2,16,2,20],\n },\n ]\n },\n \"Vaslui\": {\n \"_state_code\": \"vs\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,20,2,26],\n 2024: [2,19,2,25],\n 2025: [2,17,2,21],\n 2026: [2,23,2,27],\n },\n ]\n },\n \"Vrancea\": {\n \"_state_code\": \"vn\",\n SH: [\n {\n name: \"Vacanţa de schi\",\n 2023: [2,20,2,26],\n 2024: [2,19,2,25],\n 2025: [2,17,2,21],\n 2026: [2,23,2,27],\n },\n ]\n }\n};\n\nexport const rs = {\n PH: [{\"name\":\"Нова година\",\"fixed_date\":[1,1],\"shift_rule\":\"if sunday then next tuesday\"},{\"name\":\"Нова година\",\"fixed_date\":[1,2],\"shift_rule\":\"if sunday then next monday\"},{\"name\":\"Дан државности Србије\",\"fixed_date\":[2,15],\"shift_rule\":\"if sunday then next tuesday\"},{\"name\":\"Дан државности Србије\",\"fixed_date\":[2,16],\"shift_rule\":\"if sunday then next monday\"},{\"name\":\"Велики петак\",\"variable_date\":\"orthodox easter\",\"offset\":-2},{\"name\":\"Васкрс\",\"variable_date\":\"orthodox easter\"},{\"name\":\"Васкрсни понедељак\",\"variable_date\":\"orthodox easter\",\"offset\":1},{\"name\":\"Празник рада\",\"fixed_date\":[5,1],\"shift_rule\":\"if sunday then next tuesday\"},{\"name\":\"Празник рада\",\"fixed_date\":[5,2],\"shift_rule\":\"if sunday then next monday\"},{\"name\":\"Дан примирја\",\"fixed_date\":[11,11],\"shift_rule\":\"if sunday then next monday\"}],\n SH: [\n {\n name: \"Зимски распуст\",\n 2019: [12,30,1,7],\n 2020: [12,31,1,8],\n 2021: [12,31,1,21],\n 2022: [1,4,1,21],\n 2023: [1,3,1,20],\n 2024: [12,30,1,17],\n 2025: [12,31,1,16],\n },\n {\n name: \"Пролећни распуст\",\n 2020: [4,15,4,20],\n 2021: [4,30,5,7],\n 2022: [4,22,5,3],\n 2023: [4,11,4,18],\n 2024: [4,29,5,6],\n 2025: [4,16,4,21],\n 2026: [4,10,4,14],\n },\n {\n name: \"Летњи распуст\",\n 2020: [6,22,8,31],\n 2021: [6,23,8,31],\n 2022: [6,22,8,31],\n 2023: [6,21,8,31],\n 2024: [6,24,8,30],\n 2025: [6,23,8,29],\n 2026: [6,22,8,31],\n },\n {\n name: \"Јесењи распуст\",\n 2020: [11,11,11,13],\n 2021: [11,12,11,12],\n 2023: [11,8,11,10],\n 2024: [11,11,11,12],\n 2025: [11,10,11,11],\n },\n {\n name: \"Сретењски распуст\",\n 2026: [2,16,2,20],\n },\n ],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=44.8176&lon=20.4569&zoom=18&addressdetails=1&accept-language=sr,en\"\n};\n\nexport const ru = {\n PH: [{\"name\":\"1. Новогодние каникулы\",\"fixed_date\":[1,1]},{\"name\":\"2. Новогодние каникулы\",\"fixed_date\":[1,2]},{\"name\":\"3. Новогодние каникулы\",\"fixed_date\":[1,3]},{\"name\":\"4. Новогодние каникулы\",\"fixed_date\":[1,4]},{\"name\":\"5. Новогодние каникулы\",\"fixed_date\":[1,5]},{\"name\":\"6. Новогодние каникулы\",\"fixed_date\":[1,6]},{\"name\":\"Рождество Христово\",\"fixed_date\":[1,7]},{\"name\":\"8. Новогодние каникулы\",\"fixed_date\":[1,8]},{\"name\":\"День защитника Отечества\",\"fixed_date\":[2,23]},{\"name\":\"Международный женский день\",\"fixed_date\":[3,8],\"substitute_rule\":\"if sunday then next monday\"},{\"name\":\"День Победы\",\"fixed_date\":[5,9]},{\"name\":\"Праздник Весны и Труда\",\"fixed_date\":[5,1]},{\"name\":\"День народного единства\",\"fixed_date\":[11,4]},{\"name\":\"День России\",\"fixed_date\":[6,12]}],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=55.7780&lon=49.1303&zoom=18&addressdetails=1&accept-language=ru,en\",\n \"Адыгея\": {\n \"_state_code\": \"adygea\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=44.60627&lon=40.10432&zoom=18&addressdetails=1&accept-language=ru,us\",\n PH: [{\"name\":\"1. Новогодние каникулы\",\"fixed_date\":[1,1]},{\"name\":\"2. Новогодние каникулы\",\"fixed_date\":[1,2]},{\"name\":\"3. Новогодние каникулы\",\"fixed_date\":[1,3]},{\"name\":\"4. Новогодние каникулы\",\"fixed_date\":[1,4]},{\"name\":\"5. Новогодние каникулы\",\"fixed_date\":[1,5]},{\"name\":\"6. Новогодние каникулы\",\"fixed_date\":[1,6]},{\"name\":\"Рождество Христово\",\"fixed_date\":[1,7]},{\"name\":\"8. Новогодние каникулы\",\"fixed_date\":[1,8]},{\"name\":\"День защитника Отечества\",\"fixed_date\":[2,23]},{\"name\":\"Международный женский день\",\"fixed_date\":[3,8]},{\"name\":\"День Победы\",\"fixed_date\":[5,9]},{\"name\":\"Праздник Весны и Труда\",\"fixed_date\":[5,1]},{\"name\":\"День народного единства\",\"fixed_date\":[11,4]},{\"name\":\"День России\",\"fixed_date\":[6,12]},{\"name\":\"Ураза-байрам\",\"fixed_date\":[7,28]},{\"name\":\"Курбан-байрам\",\"fixed_date\":[10,4]},{\"name\":\"День образования Республики Адыгея\",\"fixed_date\":[10,5]}]\n },\n \"Башкортостан\": {\n \"_state_code\": \"bashkortostan\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=54.1264&lon=56.5797&zoom=18&addressdetails=1&accept-language=ru,en\",\n PH: [{\"name\":\"1. Новогодние каникулы\",\"fixed_date\":[1,1]},{\"name\":\"2. Новогодние каникулы\",\"fixed_date\":[1,2]},{\"name\":\"3. Новогодние каникулы\",\"fixed_date\":[1,3]},{\"name\":\"4. Новогодние каникулы\",\"fixed_date\":[1,4]},{\"name\":\"5. Новогодние каникулы\",\"fixed_date\":[1,5]},{\"name\":\"6. Новогодние каникулы\",\"fixed_date\":[1,6]},{\"name\":\"Рождество Христово\",\"fixed_date\":[1,7]},{\"name\":\"8. Новогодние каникулы\",\"fixed_date\":[1,8]},{\"name\":\"День защитника Отечества\",\"fixed_date\":[2,23]},{\"name\":\"Международный женский день\",\"fixed_date\":[3,8]},{\"name\":\"День Победы\",\"fixed_date\":[5,9]},{\"name\":\"Праздник Весны и Труда\",\"fixed_date\":[5,1]},{\"name\":\"День народного единства\",\"fixed_date\":[11,4]},{\"name\":\"День России\",\"fixed_date\":[6,12]},{\"name\":\"Ураза-байрам\",\"fixed_date\":[7,28]},{\"name\":\"Курбан-байрам\",\"fixed_date\":[10,4]},{\"name\":\"День Республики Башкирии\",\"fixed_date\":[10,11]},{\"name\":\"День Конституции Башкортостана\",\"fixed_date\":[12,24]}]\n },\n \"Брянская область\": {\n \"_state_code\": \"bryansk\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=52.952&lon=33.283&zoom=18&addressdetails=1&accept-language=ru,en\",\n PH: [{\"name\":\"1. Новогодние каникулы\",\"fixed_date\":[1,1]},{\"name\":\"2. Новогодние каникулы\",\"fixed_date\":[1,2]},{\"name\":\"3. Новогодние каникулы\",\"fixed_date\":[1,3]},{\"name\":\"4. Новогодние каникулы\",\"fixed_date\":[1,4]},{\"name\":\"5. Новогодние каникулы\",\"fixed_date\":[1,5]},{\"name\":\"6. Новогодние каникулы\",\"fixed_date\":[1,6]},{\"name\":\"Рождество Христово\",\"fixed_date\":[1,7]},{\"name\":\"8. Новогодние каникулы\",\"fixed_date\":[1,8]},{\"name\":\"День защитника Отечества\",\"fixed_date\":[2,23]},{\"name\":\"Международный женский день\",\"fixed_date\":[3,8]},{\"name\":\"День Победы\",\"fixed_date\":[5,9]},{\"name\":\"Праздник Весны и Труда\",\"fixed_date\":[5,1]},{\"name\":\"День народного единства\",\"fixed_date\":[11,4]},{\"name\":\"День России\",\"fixed_date\":[6,12]},{\"name\":\"Радоница\",\"fixed_date\":[4,29]},{\"name\":\"День освобождения города Брянска\",\"fixed_date\":[9,17]}]\n },\n \"Дагестан\": {\n \"_state_code\": \"dagestan\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=43.118&lon=46.959&zoom=18&addressdetails=1&accept-language=ru,en\",\n PH: [{\"name\":\"1. Новогодние каникулы\",\"fixed_date\":[1,1]},{\"name\":\"2. Новогодние каникулы\",\"fixed_date\":[1,2]},{\"name\":\"3. Новогодние каникулы\",\"fixed_date\":[1,3]},{\"name\":\"4. Новогодние каникулы\",\"fixed_date\":[1,4]},{\"name\":\"5. Новогодние каникулы\",\"fixed_date\":[1,5]},{\"name\":\"6. Новогодние каникулы\",\"fixed_date\":[1,6]},{\"name\":\"Рождество Христово\",\"fixed_date\":[1,7]},{\"name\":\"8. Новогодние каникулы\",\"fixed_date\":[1,8]},{\"name\":\"День защитника Отечества\",\"fixed_date\":[2,23]},{\"name\":\"Международный женский день\",\"fixed_date\":[3,8]},{\"name\":\"День Победы\",\"fixed_date\":[5,9]},{\"name\":\"Праздник Весны и Труда\",\"fixed_date\":[5,1]},{\"name\":\"День народного единства\",\"fixed_date\":[11,4]},{\"name\":\"День России\",\"fixed_date\":[6,12]},{\"name\":\"День Конституции Республики Дагестан\",\"fixed_date\":[7,26]},{\"name\":\"Ураза-байрам\",\"fixed_date\":[7,28]},{\"name\":\"День единства народов Дагестана\",\"fixed_date\":[9,15]},{\"name\":\"Курбан-байрам\",\"fixed_date\":[10,4]}]\n },\n \"Ингушетия\": {\n \"_state_code\": \"ingushetia\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=43.1171&lon=44.8626&zoom=18&addressdetails=1&accept-language=ru,en\",\n PH: [{\"name\":\"1. Новогодние каникулы\",\"fixed_date\":[1,1]},{\"name\":\"2. Новогодние каникулы\",\"fixed_date\":[1,2]},{\"name\":\"3. Новогодние каникулы\",\"fixed_date\":[1,3]},{\"name\":\"4. Новогодние каникулы\",\"fixed_date\":[1,4]},{\"name\":\"5. Новогодние каникулы\",\"fixed_date\":[1,5]},{\"name\":\"6. Новогодние каникулы\",\"fixed_date\":[1,6]},{\"name\":\"Рождество Христово\",\"fixed_date\":[1,7]},{\"name\":\"8. Новогодние каникулы\",\"fixed_date\":[1,8]},{\"name\":\"День защитника Отечества\",\"fixed_date\":[2,23]},{\"name\":\"Международный женский день\",\"fixed_date\":[3,8]},{\"name\":\"День Победы\",\"fixed_date\":[5,9]},{\"name\":\"Праздник Весны и Труда\",\"fixed_date\":[5,1]},{\"name\":\"День народного единства\",\"fixed_date\":[11,4]},{\"name\":\"День России\",\"fixed_date\":[6,12]},{\"name\":\"День образования Республики Ингушетия\",\"fixed_date\":[6,4]},{\"name\":\"Ураза-байрам\",\"fixed_date\":[7,28]},{\"name\":\"Курбан-байрам\",\"fixed_date\":[10,4]}]\n },\n \"Кабардино-Балкария\": {\n \"_state_code\": \"kabardino_balkaria\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=43.497&lon=43.423&zoom=18&addressdetails=1&accept-language=ru,en\",\n PH: [{\"name\":\"1. Новогодние каникулы\",\"fixed_date\":[1,1]},{\"name\":\"2. Новогодние каникулы\",\"fixed_date\":[1,2]},{\"name\":\"3. Новогодние каникулы\",\"fixed_date\":[1,3]},{\"name\":\"4. Новогодние каникулы\",\"fixed_date\":[1,4]},{\"name\":\"5. Новогодние каникулы\",\"fixed_date\":[1,5]},{\"name\":\"6. Новогодние каникулы\",\"fixed_date\":[1,6]},{\"name\":\"Рождество Христово\",\"fixed_date\":[1,7]},{\"name\":\"8. Новогодние каникулы\",\"fixed_date\":[1,8]},{\"name\":\"День защитника Отечества\",\"fixed_date\":[2,23]},{\"name\":\"Международный женский день\",\"fixed_date\":[3,8]},{\"name\":\"День Победы\",\"fixed_date\":[5,9]},{\"name\":\"Праздник Весны и Труда\",\"fixed_date\":[5,1]},{\"name\":\"День народного единства\",\"fixed_date\":[11,4]},{\"name\":\"День России\",\"fixed_date\":[6,12]},{\"name\":\"День возрождения балкарского народа\",\"fixed_date\":[3,28]},{\"name\":\"Черкесский день траура\",\"fixed_date\":[5,21]},{\"name\":\"Ураза-байрам\",\"fixed_date\":[7,28]},{\"name\":\"День государственности Кабардино-Балкарской Республики\",\"fixed_date\":[9,1]},{\"name\":\"Курбан-байрам\",\"fixed_date\":[10,4]}]\n },\n \"Калмыкия\": {\n \"_state_code\": \"kalmykia\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=46.524&lon=44.731&zoom=18&addressdetails=1&accept-language=ru,en\",\n PH: [{\"name\":\"1. Новогодние каникулы\",\"fixed_date\":[1,1]},{\"name\":\"2. Новогодние каникулы\",\"fixed_date\":[1,2]},{\"name\":\"3. Новогодние каникулы\",\"fixed_date\":[1,3]},{\"name\":\"4. Новогодние каникулы\",\"fixed_date\":[1,4]},{\"name\":\"5. Новогодние каникулы\",\"fixed_date\":[1,5]},{\"name\":\"6. Новогодние каникулы\",\"fixed_date\":[1,6]},{\"name\":\"Рождество Христово\",\"fixed_date\":[1,7]},{\"name\":\"8. Новогодние каникулы\",\"fixed_date\":[1,8]},{\"name\":\"День защитника Отечества\",\"fixed_date\":[2,23]},{\"name\":\"Международный женский день\",\"fixed_date\":[3,8]},{\"name\":\"День Победы\",\"fixed_date\":[5,9]},{\"name\":\"Праздник Весны и Труда\",\"fixed_date\":[5,1]},{\"name\":\"День народного единства\",\"fixed_date\":[11,4]},{\"name\":\"День России\",\"fixed_date\":[6,12]},{\"name\":\"Цаган Сар\",\"fixed_date\":[1,14]},{\"name\":\"День принятия Степного Уложения (Конституции) Республики Калмыкия\",\"fixed_date\":[4,5]},{\"name\":\"День рождения Будды Шакьямун\",\"fixed_date\":[6,6]},{\"name\":\"Зул\",\"fixed_date\":[12,15]},{\"name\":\"День памяти жертв депортации калмыцкого народа\",\"fixed_date\":[12,28]}]\n },\n \"Карачаево-Черкесия\": {\n \"_state_code\": \"karachay_cherkess\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=43.7916&lon=41.7268&zoom=18&addressdetails=1&accept-language=ru,en\",\n PH: [{\"name\":\"1. Новогодние каникулы\",\"fixed_date\":[1,1]},{\"name\":\"2. Новогодние каникулы\",\"fixed_date\":[1,2]},{\"name\":\"3. Новогодние каникулы\",\"fixed_date\":[1,3]},{\"name\":\"4. Новогодние каникулы\",\"fixed_date\":[1,4]},{\"name\":\"5. Новогодние каникулы\",\"fixed_date\":[1,5]},{\"name\":\"6. Новогодние каникулы\",\"fixed_date\":[1,6]},{\"name\":\"Рождество Христово\",\"fixed_date\":[1,7]},{\"name\":\"8. Новогодние каникулы\",\"fixed_date\":[1,8]},{\"name\":\"День защитника Отечества\",\"fixed_date\":[2,23]},{\"name\":\"Международный женский день\",\"fixed_date\":[3,8]},{\"name\":\"День Победы\",\"fixed_date\":[5,9]},{\"name\":\"Праздник Весны и Труда\",\"fixed_date\":[5,1]},{\"name\":\"День народного единства\",\"fixed_date\":[11,4]},{\"name\":\"День России\",\"fixed_date\":[6,12]},{\"name\":\"День возрождения карачаевского народа\",\"fixed_date\":[5,3]},{\"name\":\"Ураза-байрам\",\"fixed_date\":[7,28]},{\"name\":\"Курбан-байрам\",\"fixed_date\":[10,4]}]\n },\n \"Приволжский федеральный округ\": {\n \"_state_code\": \"udmurtia\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=56.8642&lon=53.2054&zoom=18&addressdetails=1&accept-language=ru,en\",\n PH: [{\"name\":\"1. Новогодние каникулы\",\"fixed_date\":[1,1]},{\"name\":\"2. Новогодние каникулы\",\"fixed_date\":[1,2]},{\"name\":\"3. Новогодние каникулы\",\"fixed_date\":[1,3]},{\"name\":\"4. Новогодние каникулы\",\"fixed_date\":[1,4]},{\"name\":\"5. Новогодние каникулы\",\"fixed_date\":[1,5]},{\"name\":\"6. Новогодние каникулы\",\"fixed_date\":[1,6]},{\"name\":\"Рождество Христово\",\"fixed_date\":[1,7]},{\"name\":\"8. Новогодние каникулы\",\"fixed_date\":[1,8]},{\"name\":\"День защитника Отечества\",\"fixed_date\":[2,23]},{\"name\":\"Международный женский день\",\"fixed_date\":[3,8]},{\"name\":\"День Победы\",\"fixed_date\":[5,9]},{\"name\":\"Праздник Весны и Труда\",\"fixed_date\":[5,1]},{\"name\":\"День народного единства\",\"fixed_date\":[11,4]},{\"name\":\"День России\",\"fixed_date\":[6,12]},{\"name\":\"День Государственности Удмуртской Республики\",\"fixed_date\":[5,31]}]\n },\n \"Республика Алтай\": {\n \"_state_code\": \"altai\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=50.900&lon=86.899&zoom=18&addressdetails=1&accept-language=ru,en\",\n PH: [{\"name\":\"1. Новогодние каникулы\",\"fixed_date\":[1,1]},{\"name\":\"2. Новогодние каникулы\",\"fixed_date\":[1,2]},{\"name\":\"3. Новогодние каникулы\",\"fixed_date\":[1,3]},{\"name\":\"4. Новогодние каникулы\",\"fixed_date\":[1,4]},{\"name\":\"5. Новогодние каникулы\",\"fixed_date\":[1,5]},{\"name\":\"6. Новогодние каникулы\",\"fixed_date\":[1,6]},{\"name\":\"Рождество Христово\",\"fixed_date\":[1,7]},{\"name\":\"8. Новогодние каникулы\",\"fixed_date\":[1,8]},{\"name\":\"День защитника Отечества\",\"fixed_date\":[2,23]},{\"name\":\"Международный женский день\",\"fixed_date\":[3,8]},{\"name\":\"День Победы\",\"fixed_date\":[5,9]},{\"name\":\"Праздник Весны и Труда\",\"fixed_date\":[5,1]},{\"name\":\"День народного единства\",\"fixed_date\":[11,4]},{\"name\":\"День России\",\"fixed_date\":[6,12]},{\"name\":\"Чага-Байрам\",\"fixed_date\":[1,14]}]\n },\n \"Республика Бурятия\": {\n \"_state_code\": \"buryatia\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=52.014&lon=109.366&zoom=18&addressdetails=1&accept-language=ru,en\",\n PH: [{\"name\":\"1. Новогодние каникулы\",\"fixed_date\":[1,1]},{\"name\":\"2. Новогодние каникулы\",\"fixed_date\":[1,2]},{\"name\":\"3. Новогодние каникулы\",\"fixed_date\":[1,3]},{\"name\":\"4. Новогодние каникулы\",\"fixed_date\":[1,4]},{\"name\":\"5. Новогодние каникулы\",\"fixed_date\":[1,5]},{\"name\":\"6. Новогодние каникулы\",\"fixed_date\":[1,6]},{\"name\":\"Рождество Христово\",\"fixed_date\":[1,7]},{\"name\":\"8. Новогодние каникулы\",\"fixed_date\":[1,8]},{\"name\":\"День защитника Отечества\",\"fixed_date\":[2,23]},{\"name\":\"Международный женский день\",\"fixed_date\":[3,8]},{\"name\":\"День Победы\",\"fixed_date\":[5,9]},{\"name\":\"Праздник Весны и Труда\",\"fixed_date\":[5,1]},{\"name\":\"День народного единства\",\"fixed_date\":[11,4]},{\"name\":\"День России\",\"fixed_date\":[6,12]},{\"name\":\"Сагаалган\",\"fixed_date\":[1,14]}]\n },\n \"Республика Карелия\": {\n \"_state_code\": \"karelia\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=63.832&lon=33.626&zoom=18&addressdetails=1&accept-language=ru,en\",\n PH: [{\"name\":\"1. Новогодние каникулы\",\"fixed_date\":[1,1]},{\"name\":\"2. Новогодние каникулы\",\"fixed_date\":[1,2]},{\"name\":\"3. Новогодние каникулы\",\"fixed_date\":[1,3]},{\"name\":\"4. Новогодние каникулы\",\"fixed_date\":[1,4]},{\"name\":\"5. Новогодние каникулы\",\"fixed_date\":[1,5]},{\"name\":\"6. Новогодние каникулы\",\"fixed_date\":[1,6]},{\"name\":\"Рождество Христово\",\"fixed_date\":[1,7]},{\"name\":\"8. Новогодние каникулы\",\"fixed_date\":[1,8]},{\"name\":\"День защитника Отечества\",\"fixed_date\":[2,23]},{\"name\":\"Международный женский день\",\"fixed_date\":[3,8]},{\"name\":\"День Победы\",\"fixed_date\":[5,9]},{\"name\":\"Праздник Весны и Труда\",\"fixed_date\":[5,1]},{\"name\":\"День народного единства\",\"fixed_date\":[11,4]},{\"name\":\"День России\",\"fixed_date\":[6,12]},{\"name\":\"День Республики Карелия\",\"fixed_date\":[6,8]},{\"name\":\"День освобождения Карелии от фашистских захватчиков\",\"fixed_date\":[9,30]}]\n },\n \"Республика Коми\": {\n \"_state_code\": \"komi\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=64.191&lon=55.826&zoom=18&addressdetails=1&accept-language=ru,en\",\n PH: [{\"name\":\"1. Новогодние каникулы\",\"fixed_date\":[1,1]},{\"name\":\"2. Новогодние каникулы\",\"fixed_date\":[1,2]},{\"name\":\"3. Новогодние каникулы\",\"fixed_date\":[1,3]},{\"name\":\"4. Новогодние каникулы\",\"fixed_date\":[1,4]},{\"name\":\"5. Новогодние каникулы\",\"fixed_date\":[1,5]},{\"name\":\"6. Новогодние каникулы\",\"fixed_date\":[1,6]},{\"name\":\"Рождество Христово\",\"fixed_date\":[1,7]},{\"name\":\"8. Новогодние каникулы\",\"fixed_date\":[1,8]},{\"name\":\"День защитника Отечества\",\"fixed_date\":[2,23]},{\"name\":\"Международный женский день\",\"fixed_date\":[3,8]},{\"name\":\"День Победы\",\"fixed_date\":[5,9]},{\"name\":\"Праздник Весны и Труда\",\"fixed_date\":[5,1]},{\"name\":\"День народного единства\",\"fixed_date\":[11,4]},{\"name\":\"День России\",\"fixed_date\":[6,12]},{\"name\":\"День Республики Коми\",\"fixed_date\":[8,22]}]\n },\n \"Республика Саха (Якутия)\": {\n \"_state_code\": \"sakha\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=62.1010&lon=129.7176&zoom=18&addressdetails=1&accept-language=ru,en\",\n PH: [{\"name\":\"1. Новогодние каникулы\",\"fixed_date\":[1,1]},{\"name\":\"2. Новогодние каникулы\",\"fixed_date\":[1,2]},{\"name\":\"3. Новогодние каникулы\",\"fixed_date\":[1,3]},{\"name\":\"4. Новогодние каникулы\",\"fixed_date\":[1,4]},{\"name\":\"5. Новогодние каникулы\",\"fixed_date\":[1,5]},{\"name\":\"6. Новогодние каникулы\",\"fixed_date\":[1,6]},{\"name\":\"Рождество Христово\",\"fixed_date\":[1,7]},{\"name\":\"8. Новогодние каникулы\",\"fixed_date\":[1,8]},{\"name\":\"День защитника Отечества\",\"fixed_date\":[2,23]},{\"name\":\"Международный женский день\",\"fixed_date\":[3,8]},{\"name\":\"День Победы\",\"fixed_date\":[5,9]},{\"name\":\"Праздник Весны и Труда\",\"fixed_date\":[5,1]},{\"name\":\"День народного единства\",\"fixed_date\":[11,4]},{\"name\":\"День России\",\"fixed_date\":[6,12]},{\"name\":\"День Республики Саха\",\"fixed_date\":[4,27]},{\"name\":\"Ысыах\",\"fixed_date\":[6,23]},{\"name\":\"День государственности Республики Саха\",\"fixed_date\":[9,27]}]\n },\n \"Республика Тыва\": {\n \"_state_code\": \"tuva\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=51.781&lon=94.033&zoom=18&addressdetails=1&accept-language=ru,en\",\n PH: [{\"name\":\"1. Новогодние каникулы\",\"fixed_date\":[1,1]},{\"name\":\"2. Новогодние каникулы\",\"fixed_date\":[1,2]},{\"name\":\"3. Новогодние каникулы\",\"fixed_date\":[1,3]},{\"name\":\"4. Новогодние каникулы\",\"fixed_date\":[1,4]},{\"name\":\"5. Новогодние каникулы\",\"fixed_date\":[1,5]},{\"name\":\"6. Новогодние каникулы\",\"fixed_date\":[1,6]},{\"name\":\"Рождество Христово\",\"fixed_date\":[1,7]},{\"name\":\"8. Новогодние каникулы\",\"fixed_date\":[1,8]},{\"name\":\"День защитника Отечества\",\"fixed_date\":[2,23]},{\"name\":\"Международный женский день\",\"fixed_date\":[3,8]},{\"name\":\"День Победы\",\"fixed_date\":[5,9]},{\"name\":\"Праздник Весны и Труда\",\"fixed_date\":[5,1]},{\"name\":\"День народного единства\",\"fixed_date\":[11,4]},{\"name\":\"День России\",\"fixed_date\":[6,12]},{\"name\":\"Народный праздник Шагаа\",\"fixed_date\":[1,14]},{\"name\":\"День Республики Тыва\",\"fixed_date\":[8,15]}]\n },\n \"Саратовская область\": {\n \"_state_code\": \"saratov\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=51.335&lon=46.668&zoom=18&addressdetails=1&accept-language=ru,en\",\n PH: [{\"name\":\"1. Новогодние каникулы\",\"fixed_date\":[1,1]},{\"name\":\"2. Новогодние каникулы\",\"fixed_date\":[1,2]},{\"name\":\"3. Новогодние каникулы\",\"fixed_date\":[1,3]},{\"name\":\"4. Новогодние каникулы\",\"fixed_date\":[1,4]},{\"name\":\"5. Новогодние каникулы\",\"fixed_date\":[1,5]},{\"name\":\"6. Новогодние каникулы\",\"fixed_date\":[1,6]},{\"name\":\"Рождество Христово\",\"fixed_date\":[1,7]},{\"name\":\"8. Новогодние каникулы\",\"fixed_date\":[1,8]},{\"name\":\"День защитника Отечества\",\"fixed_date\":[2,23]},{\"name\":\"Международный женский день\",\"fixed_date\":[3,8]},{\"name\":\"День Победы\",\"fixed_date\":[5,9]},{\"name\":\"Праздник Весны и Труда\",\"fixed_date\":[5,1]},{\"name\":\"День народного единства\",\"fixed_date\":[11,4]},{\"name\":\"День России\",\"fixed_date\":[6,12]},{\"name\":\"Радоница\",\"fixed_date\":[4,29]}]\n },\n \"Татарстан\": {\n \"_state_code\": \"tatarstan\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=55.7780&lon=49.1303&zoom=18&addressdetails=1&accept-language=ru,en\",\n PH: [{\"name\":\"1. Новогодние каникулы\",\"fixed_date\":[1,1]},{\"name\":\"2. Новогодние каникулы\",\"fixed_date\":[1,2]},{\"name\":\"3. Новогодние каникулы\",\"fixed_date\":[1,3]},{\"name\":\"4. Новогодние каникулы\",\"fixed_date\":[1,4]},{\"name\":\"5. Новогодние каникулы\",\"fixed_date\":[1,5]},{\"name\":\"6. Новогодние каникулы\",\"fixed_date\":[1,6]},{\"name\":\"Рождество Христово\",\"fixed_date\":[1,7]},{\"name\":\"8. Новогодние каникулы\",\"fixed_date\":[1,8]},{\"name\":\"День защитника Отечества\",\"fixed_date\":[2,23]},{\"name\":\"Международный женский день\",\"fixed_date\":[3,8]},{\"name\":\"День Победы\",\"fixed_date\":[5,9]},{\"name\":\"Праздник Весны и Труда\",\"fixed_date\":[5,1]},{\"name\":\"День народного единства\",\"fixed_date\":[11,4]},{\"name\":\"День России\",\"fixed_date\":[6,12]},{\"name\":\"Ураза-байрам\",\"fixed_date\":[7,28]},{\"name\":\"День Республики Татарстан\",\"fixed_date\":[8,30]},{\"name\":\"Курбан-байрам\",\"fixed_date\":[10,4]},{\"name\":\"День Конституции Республики Татарстан\",\"fixed_date\":[11,6]}]\n },\n \"Чечня\": {\n \"_state_code\": \"chechnya\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=43.451&lon=45.700&zoom=18&addressdetails=1&accept-language=ru,en\",\n PH: [{\"name\":\"1. Новогодние каникулы\",\"fixed_date\":[1,1]},{\"name\":\"2. Новогодние каникулы\",\"fixed_date\":[1,2]},{\"name\":\"3. Новогодние каникулы\",\"fixed_date\":[1,3]},{\"name\":\"4. Новогодние каникулы\",\"fixed_date\":[1,4]},{\"name\":\"5. Новогодние каникулы\",\"fixed_date\":[1,5]},{\"name\":\"6. Новогодние каникулы\",\"fixed_date\":[1,6]},{\"name\":\"Рождество Христово\",\"fixed_date\":[1,7]},{\"name\":\"8. Новогодние каникулы\",\"fixed_date\":[1,8]},{\"name\":\"День защитника Отечества\",\"fixed_date\":[2,23]},{\"name\":\"Международный женский день\",\"fixed_date\":[3,8]},{\"name\":\"День Победы\",\"fixed_date\":[5,9]},{\"name\":\"Праздник Весны и Труда\",\"fixed_date\":[5,1]},{\"name\":\"День народного единства\",\"fixed_date\":[11,4]},{\"name\":\"День России\",\"fixed_date\":[6,12]},{\"name\":\"День мира в Чеченской Республике\",\"fixed_date\":[4,16]},{\"name\":\"Ураза-байрам\",\"fixed_date\":[7,28]},{\"name\":\"Курбан-байрам\",\"fixed_date\":[10,4]}]\n },\n \"Чувашия\": {\n \"_state_code\": \"chuvashia\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=55.4871&lon=47.1659&zoom=18&addressdetails=1&accept-language=ru,en\",\n PH: [{\"name\":\"1. Новогодние каникулы\",\"fixed_date\":[1,1]},{\"name\":\"2. Новогодние каникулы\",\"fixed_date\":[1,2]},{\"name\":\"3. Новогодние каникулы\",\"fixed_date\":[1,3]},{\"name\":\"4. Новогодние каникулы\",\"fixed_date\":[1,4]},{\"name\":\"5. Новогодние каникулы\",\"fixed_date\":[1,5]},{\"name\":\"6. Новогодние каникулы\",\"fixed_date\":[1,6]},{\"name\":\"Рождество Христово\",\"fixed_date\":[1,7]},{\"name\":\"8. Новогодние каникулы\",\"fixed_date\":[1,8]},{\"name\":\"День защитника Отечества\",\"fixed_date\":[2,23]},{\"name\":\"Международный женский день\",\"fixed_date\":[3,8]},{\"name\":\"День Победы\",\"fixed_date\":[5,9]},{\"name\":\"Праздник Весны и Труда\",\"fixed_date\":[5,1]},{\"name\":\"День народного единства\",\"fixed_date\":[11,4]},{\"name\":\"День России\",\"fixed_date\":[6,12]},{\"name\":\"День Чувашской республики\",\"fixed_date\":[6,24]}]\n }\n};\n\nexport const se = {\n PH: [{\"name\":\"nyårsdagen\",\"fixed_date\":[1,1]},{\"name\":\"trettondedag jul\",\"fixed_date\":[1,6]},{\"name\":\"långfredagen\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"påskdagen\",\"variable_date\":\"easter\"},{\"name\":\"annandag påsk\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"första maj\",\"fixed_date\":[5,1]},{\"name\":\"Kristi himmelsfärdsdag\",\"variable_date\":\"easter\",\"offset\":39},{\"name\":\"pingstdagen\",\"variable_date\":\"easter\",\"offset\":49},{\"name\":\"nationaldagen\",\"fixed_date\":[6,6]},{\"name\":\"midsommardagen\",\"variable_date\":\"nextSaturday20Jun\"},{\"name\":\"alla helgons dag\",\"variable_date\":\"nextSaturday31Oct\"},{\"name\":\"juldagen\",\"fixed_date\":[12,25]},{\"name\":\"annandag jul\",\"fixed_date\":[12,26]}],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=63.1151&lon=16.5767&zoom=18&addressdetails=1&accept-language=sv,en\"\n};\n\nexport const si = {\n PH: [{\"name\":\"novo leto\",\"fixed_date\":[1,1]},{\"name\":\"novo leto\",\"fixed_date\":[1,2]},{\"name\":\"Prešernov dan, slovenski kulturni praznik\",\"fixed_date\":[2,8]},{\"name\":\"velikonočna nedelja\",\"variable_date\":\"easter\"},{\"name\":\"velikonočni ponedeljek\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"dan upora proti okupatorju\",\"fixed_date\":[4,27]},{\"name\":\"praznik dela 1\",\"fixed_date\":[5,1]},{\"name\":\"praznik dela 2\",\"fixed_date\":[5,2]},{\"name\":\"binkoštna nedelja - binkošti\",\"variable_date\":\"easter\",\"offset\":49},{\"name\":\"dan državnosti\",\"fixed_date\":[6,25]},{\"name\":\"Marijino vnebovzetje\",\"fixed_date\":[8,15]},{\"name\":\"dan reformacije\",\"fixed_date\":[10,31]},{\"name\":\"dan spomina na mrtve\",\"fixed_date\":[11,1]},{\"name\":\"božič\",\"fixed_date\":[12,25]},{\"name\":\"dan samostojnosti in enotnosti\",\"fixed_date\":[12,26]}],\n SH: [\n {\n name: \"Novoletne počitnice\",\n 2019: [12,25,1,2],\n 2020: [12,28,12,31],\n 2021: [12,27,12,31],\n 2022: [12,27,12,30],\n 2023: [12,27,1,2],\n 2024: [12,27,1,2],\n 2025: [12,29,12,31],\n },\n {\n name: \"Prvomajske počitnice\",\n 2020: [4,27,5,1],\n 2021: [4,28,4,30],\n 2022: [4,28,4,29],\n 2023: [4,28,4,28],\n 2024: [4,28,5,2],\n 2025: [4,28,5,2],\n 2026: [4,28,4,30],\n },\n {\n name: \"Poletne počitnice\",\n 2020: [6,26,8,31],\n 2021: [6,26,8,31],\n 2022: [6,26,8,31],\n 2023: [6,26,8,31],\n 2024: [6,26,8,31],\n 2025: [6,26,8,31],\n 2026: [6,26,8,31],\n },\n {\n name: \"Jesenske počitnice\",\n 2020: [10,26,10,30],\n 2021: [10,25,11,1],\n 2022: [10,31,11,4],\n 2023: [10,30,11,1],\n 2024: [10,28,11,1],\n 2025: [10,27,10,31],\n },\n {\n name: \"Pouka prost dan\",\n 2024: [5,3,5,3],\n },\n ],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=46.0569&lon=14.5058&zoom=18&addressdetails=1&accept-language=sl,en\",\n \"vzhodne regije\": {\n \"_state_code\": \"vr\",\n SH: [\n {\n name: \"Zimske počitnice\",\n 2020: [2,24,2,28],\n 2021: [2,15,2,19],\n 2022: [2,28,3,4],\n 2023: [1,30,2,3],\n 2024: [2,26,3,1],\n 2025: [2,17,2,21],\n 2026: [2,23,2,27],\n },\n ]\n },\n \"zahodne regije\": {\n \"_state_code\": \"zr\",\n SH: [\n {\n name: \"Zimske počitnice\",\n 2020: [2,17,2,21],\n 2021: [2,22,2,26],\n 2022: [2,21,2,25],\n 2023: [2,6,2,10],\n 2024: [2,19,2,23],\n 2025: [2,24,2,28],\n 2026: [2,16,2,20],\n },\n ]\n }\n};\n\nexport const sj = {\n PH: [{\"name\":\"Første nyttårsdag\",\"fixed_date\":[1,1]},{\"name\":\"Skjærtorsdag\",\"variable_date\":\"easter\",\"offset\":-3},{\"name\":\"Langfredag\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Første påskedag\",\"variable_date\":\"easter\"},{\"name\":\"Andre påskedag\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Arbeidernes dag\",\"fixed_date\":[5,1]},{\"name\":\"Grunnlovsdagen\",\"fixed_date\":[5,17]},{\"name\":\"Kristi himmelfartsdag\",\"variable_date\":\"easter\",\"offset\":39},{\"name\":\"Første pinsedag\",\"variable_date\":\"easter\",\"offset\":49},{\"name\":\"Andre pinsedag\",\"variable_date\":\"easter\",\"offset\":50},{\"name\":\"Første juledag\",\"fixed_date\":[12,25]},{\"name\":\"Andre juledag\",\"fixed_date\":[12,26]}]\n};\n\nexport const sk = {\n PH: [{\"name\":\"Deň vzniku Slovenskej republiky\",\"fixed_date\":[1,1]},{\"name\":\"Zjavenie Pána\",\"fixed_date\":[1,6]},{\"name\":\"Veľký piatok\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Veľkonočná nedeľa\",\"variable_date\":\"easter\"},{\"name\":\"Veľkonočný pondelok\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Sviatok práce\",\"fixed_date\":[5,1]},{\"name\":\"Sviatok svätého Cyrila a Metoda\",\"fixed_date\":[7,5]},{\"name\":\"Výročie Slovenského národného povstania\",\"fixed_date\":[8,29]},{\"name\":\"Sviatok všetkých svätých\",\"fixed_date\":[11,1]},{\"name\":\"Štedrý deň\",\"fixed_date\":[12,24]},{\"name\":\"Prvý sviatok vianočný\",\"fixed_date\":[12,25]},{\"name\":\"Druhý sviatok vianočný\",\"fixed_date\":[12,26]}],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=48.7411522&lon=19.4528646&zoom=18&addressdetails=1&accept-language=sk,en\",\n \"Banskobystrický kraj\": {\n \"_state_code\": \"bc\",\n SH: [\n {\n name: \"Vianočné prázdniny\",\n 2019: [12,23,1,7],\n 2020: [12,23,1,7],\n 2021: [12,23,1,7],\n 2022: [12,23,1,7],\n 2023: [12,23,1,7],\n 2024: [12,23,1,7],\n 2025: [12,22,1,7],\n 2026: [12,23,1,7],\n 2027: [12,23,1,7],\n },\n {\n name: \"Jarné prázdniny\",\n 2020: [2,24,2,28],\n 2021: [2,15,2,19],\n 2022: [3,7,3,11],\n 2023: [2,27,3,3],\n 2024: [2,19,2,23],\n 2025: [3,3,3,7],\n 2026: [2,23,2,27],\n 2027: [2,15,2,19],\n 2028: [3,6,3,10],\n },\n {\n name: \"Veľkonočné prázdniny\",\n 2020: [4,9,4,14],\n 2021: [4,1,4,6],\n 2022: [4,14,4,19],\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n 2027: [3,25,3,30],\n 2028: [4,13,4,18],\n },\n {\n name: \"Letné prázdniny\",\n 2020: [7,1,8,31],\n 2021: [7,1,8,31],\n 2022: [7,1,8,31],\n 2023: [7,1,8,31],\n 2024: [7,1,9,1],\n 2025: [6,28,9,1],\n 2026: [7,1,8,31],\n 2027: [7,1,8,31],\n 2028: [7,3,9,1],\n },\n {\n name: \"Jesenné prázdniny\",\n 2020: [10,28,10,29],\n 2021: [10,28,10,29],\n 2022: [10,28,10,31],\n 2023: [10,30,10,31],\n 2024: [10,30,10,31],\n 2025: [10,30,10,31],\n 2026: [10,29,10,30],\n 2027: [10,28,10,29],\n },\n ]\n },\n \"Bratislavský kraj\": {\n \"_state_code\": \"bl\",\n SH: [\n {\n name: \"Vianočné prázdniny\",\n 2019: [12,23,1,7],\n 2020: [12,23,1,7],\n 2021: [12,23,1,7],\n 2022: [12,23,1,7],\n 2023: [12,23,1,7],\n 2024: [12,23,1,7],\n 2025: [12,22,1,7],\n 2026: [12,23,1,7],\n 2027: [12,23,1,7],\n },\n {\n name: \"Jarné prázdniny\",\n 2020: [2,17,2,21],\n 2021: [3,1,3,5],\n 2022: [2,28,3,4],\n 2023: [2,20,2,24],\n 2024: [3,4,3,8],\n 2025: [2,24,2,28],\n 2026: [2,16,2,20],\n 2027: [3,1,3,5],\n 2028: [2,28,3,3],\n },\n {\n name: \"Veľkonočné prázdniny\",\n 2020: [4,9,4,14],\n 2021: [4,1,4,6],\n 2022: [4,14,4,19],\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n 2027: [3,25,3,30],\n 2028: [4,13,4,18],\n },\n {\n name: \"Letné prázdniny\",\n 2020: [7,1,8,31],\n 2021: [7,1,8,31],\n 2022: [7,1,8,31],\n 2023: [7,1,8,31],\n 2024: [7,1,9,1],\n 2025: [6,28,9,1],\n 2026: [7,1,8,31],\n 2027: [7,1,8,31],\n 2028: [7,3,9,1],\n },\n {\n name: \"Jesenné prázdniny\",\n 2020: [10,28,10,29],\n 2021: [10,28,10,29],\n 2022: [10,28,10,31],\n 2023: [10,30,10,31],\n 2024: [10,30,10,31],\n 2025: [10,30,10,31],\n 2026: [10,29,10,30],\n 2027: [10,28,10,29],\n },\n ]\n },\n \"Košický kraj\": {\n \"_state_code\": \"ki\",\n SH: [\n {\n name: \"Vianočné prázdniny\",\n 2019: [12,23,1,7],\n 2020: [12,23,1,7],\n 2021: [12,23,1,7],\n 2022: [12,23,1,7],\n 2023: [12,23,1,7],\n 2024: [12,23,1,7],\n 2025: [12,22,1,7],\n 2026: [12,23,1,7],\n 2027: [12,23,1,7],\n },\n {\n name: \"Jarné prázdniny\",\n 2020: [3,2,3,6],\n 2021: [2,22,2,26],\n 2022: [2,21,2,25],\n 2023: [3,6,3,10],\n 2024: [2,26,3,1],\n 2025: [2,17,2,21],\n 2026: [3,2,3,6],\n 2027: [2,22,2,26],\n 2028: [2,21,2,25],\n },\n {\n name: \"Veľkonočné prázdniny\",\n 2020: [4,9,4,14],\n 2021: [4,1,4,6],\n 2022: [4,14,4,19],\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n 2027: [3,25,3,30],\n 2028: [4,13,4,18],\n },\n {\n name: \"Letné prázdniny\",\n 2020: [7,1,8,31],\n 2021: [7,1,8,31],\n 2022: [7,1,8,31],\n 2023: [7,1,8,31],\n 2024: [7,1,9,1],\n 2025: [6,28,9,1],\n 2026: [7,1,8,31],\n 2027: [7,1,8,31],\n 2028: [7,3,9,1],\n },\n {\n name: \"Jesenné prázdniny\",\n 2020: [10,28,10,29],\n 2021: [10,28,10,29],\n 2022: [10,28,10,31],\n 2023: [10,30,10,31],\n 2024: [10,30,10,31],\n 2025: [10,30,10,31],\n 2026: [10,29,10,30],\n 2027: [10,28,10,29],\n },\n ]\n },\n \"Nitriansky kraj\": {\n \"_state_code\": \"ni\",\n SH: [\n {\n name: \"Vianočné prázdniny\",\n 2019: [12,23,1,7],\n 2020: [12,23,1,7],\n 2021: [12,23,1,7],\n 2022: [12,23,1,7],\n 2023: [12,23,1,7],\n 2024: [12,23,1,7],\n 2025: [12,22,1,7],\n 2026: [12,23,1,7],\n 2027: [12,23,1,7],\n },\n {\n name: \"Jarné prázdniny\",\n 2020: [2,17,2,21],\n 2021: [3,1,3,5],\n 2022: [2,28,3,4],\n 2023: [2,20,2,24],\n 2024: [3,4,3,8],\n 2025: [2,24,2,28],\n 2026: [2,16,2,20],\n 2027: [3,1,3,5],\n 2028: [2,28,3,3],\n },\n {\n name: \"Veľkonočné prázdniny\",\n 2020: [4,9,4,14],\n 2021: [4,1,4,6],\n 2022: [4,14,4,19],\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n 2027: [3,25,3,30],\n 2028: [4,13,4,18],\n },\n {\n name: \"Letné prázdniny\",\n 2020: [7,1,8,31],\n 2021: [7,1,8,31],\n 2022: [7,1,8,31],\n 2023: [7,1,8,31],\n 2024: [7,1,9,1],\n 2025: [6,28,9,1],\n 2026: [7,1,8,31],\n 2027: [7,1,8,31],\n 2028: [7,3,9,1],\n },\n {\n name: \"Jesenné prázdniny\",\n 2020: [10,28,10,29],\n 2021: [10,28,10,29],\n 2022: [10,28,10,31],\n 2023: [10,30,10,31],\n 2024: [10,30,10,31],\n 2025: [10,30,10,31],\n 2026: [10,29,10,30],\n 2027: [10,28,10,29],\n },\n ]\n },\n \"Prešovský kraj\": {\n \"_state_code\": \"pv\",\n SH: [\n {\n name: \"Vianočné prázdniny\",\n 2019: [12,23,1,7],\n 2020: [12,23,1,7],\n 2021: [12,23,1,7],\n 2022: [12,23,1,7],\n 2023: [12,23,1,7],\n 2024: [12,23,1,7],\n 2025: [12,22,1,7],\n 2026: [12,23,1,7],\n 2027: [12,23,1,7],\n },\n {\n name: \"Jarné prázdniny\",\n 2020: [3,2,3,6],\n 2021: [2,22,2,26],\n 2022: [2,21,2,25],\n 2023: [3,6,3,10],\n 2024: [2,26,3,1],\n 2025: [2,17,2,21],\n 2026: [3,2,3,6],\n 2027: [2,22,2,26],\n 2028: [2,21,2,25],\n },\n {\n name: \"Veľkonočné prázdniny\",\n 2020: [4,9,4,14],\n 2021: [4,1,4,6],\n 2022: [4,14,4,19],\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n 2027: [3,25,3,30],\n 2028: [4,13,4,18],\n },\n {\n name: \"Letné prázdniny\",\n 2020: [7,1,8,31],\n 2021: [7,1,8,31],\n 2022: [7,1,8,31],\n 2023: [7,1,8,31],\n 2024: [7,1,9,1],\n 2025: [6,28,9,1],\n 2026: [7,1,8,31],\n 2027: [7,1,8,31],\n 2028: [7,3,9,1],\n },\n {\n name: \"Jesenné prázdniny\",\n 2020: [10,28,10,29],\n 2021: [10,28,10,29],\n 2022: [10,28,10,31],\n 2023: [10,30,10,31],\n 2024: [10,30,10,31],\n 2025: [10,30,10,31],\n 2026: [10,29,10,30],\n 2027: [10,28,10,29],\n },\n ]\n },\n \"Trenčiansky kraj\": {\n \"_state_code\": \"tc\",\n SH: [\n {\n name: \"Vianočné prázdniny\",\n 2019: [12,23,1,7],\n 2020: [12,23,1,7],\n 2021: [12,23,1,7],\n 2022: [12,23,1,7],\n 2023: [12,23,1,7],\n 2024: [12,23,1,7],\n 2025: [12,22,1,7],\n 2026: [12,23,1,7],\n 2027: [12,23,1,7],\n },\n {\n name: \"Jarné prázdniny\",\n 2020: [2,24,2,28],\n 2021: [2,15,2,19],\n 2022: [3,7,3,11],\n 2023: [2,27,3,3],\n 2024: [2,19,2,23],\n 2025: [3,3,3,7],\n 2026: [2,23,2,27],\n 2027: [2,15,2,19],\n 2028: [3,6,3,10],\n },\n {\n name: \"Veľkonočné prázdniny\",\n 2020: [4,9,4,14],\n 2021: [4,1,4,6],\n 2022: [4,14,4,19],\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n 2027: [3,25,3,30],\n 2028: [4,13,4,18],\n },\n {\n name: \"Letné prázdniny\",\n 2020: [7,1,8,31],\n 2021: [7,1,8,31],\n 2022: [7,1,8,31],\n 2023: [7,1,8,31],\n 2024: [7,1,9,1],\n 2025: [6,28,9,1],\n 2026: [7,1,8,31],\n 2027: [7,1,8,31],\n 2028: [7,3,9,1],\n },\n {\n name: \"Jesenné prázdniny\",\n 2020: [10,28,10,29],\n 2021: [10,28,10,29],\n 2022: [10,28,10,31],\n 2023: [10,30,10,31],\n 2024: [10,30,10,31],\n 2025: [10,30,10,31],\n 2026: [10,29,10,30],\n 2027: [10,28,10,29],\n },\n ]\n },\n \"Trnavský kraj\": {\n \"_state_code\": \"ta\",\n SH: [\n {\n name: \"Vianočné prázdniny\",\n 2019: [12,23,1,7],\n 2020: [12,23,1,7],\n 2021: [12,23,1,7],\n 2022: [12,23,1,7],\n 2023: [12,23,1,7],\n 2024: [12,23,1,7],\n 2025: [12,22,1,7],\n 2026: [12,23,1,7],\n 2027: [12,23,1,7],\n },\n {\n name: \"Jarné prázdniny\",\n 2020: [2,17,2,21],\n 2021: [3,1,3,5],\n 2022: [2,28,3,4],\n 2023: [2,20,2,24],\n 2024: [3,4,3,8],\n 2025: [2,24,2,28],\n 2026: [2,16,2,20],\n 2027: [3,1,3,5],\n 2028: [2,28,3,3],\n },\n {\n name: \"Veľkonočné prázdniny\",\n 2020: [4,9,4,14],\n 2021: [4,1,4,6],\n 2022: [4,14,4,19],\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n 2027: [3,25,3,30],\n 2028: [4,13,4,18],\n },\n {\n name: \"Letné prázdniny\",\n 2020: [7,1,8,31],\n 2021: [7,1,8,31],\n 2022: [7,1,8,31],\n 2023: [7,1,8,31],\n 2024: [7,1,9,1],\n 2025: [6,28,9,1],\n 2026: [7,1,8,31],\n 2027: [7,1,8,31],\n 2028: [7,3,9,1],\n },\n {\n name: \"Jesenné prázdniny\",\n 2020: [10,28,10,29],\n 2021: [10,28,10,29],\n 2022: [10,28,10,31],\n 2023: [10,30,10,31],\n 2024: [10,30,10,31],\n 2025: [10,30,10,31],\n 2026: [10,29,10,30],\n 2027: [10,28,10,29],\n },\n ]\n },\n \"Žilinský kraj\": {\n \"_state_code\": \"zi\",\n SH: [\n {\n name: \"Vianočné prázdniny\",\n 2019: [12,23,1,7],\n 2020: [12,23,1,7],\n 2021: [12,23,1,7],\n 2022: [12,23,1,7],\n 2023: [12,23,1,7],\n 2024: [12,23,1,7],\n 2025: [12,22,1,7],\n 2026: [12,23,1,7],\n 2027: [12,23,1,7],\n },\n {\n name: \"Jarné prázdniny\",\n 2020: [2,24,2,28],\n 2021: [2,15,2,19],\n 2022: [3,7,3,11],\n 2023: [2,27,3,3],\n 2024: [2,19,2,23],\n 2025: [3,3,3,7],\n 2026: [2,23,2,27],\n 2027: [2,15,2,19],\n 2028: [3,6,3,10],\n },\n {\n name: \"Veľkonočné prázdniny\",\n 2020: [4,9,4,14],\n 2021: [4,1,4,6],\n 2022: [4,14,4,19],\n 2023: [4,6,4,11],\n 2024: [3,28,4,2],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n 2027: [3,25,3,30],\n 2028: [4,13,4,18],\n },\n {\n name: \"Letné prázdniny\",\n 2020: [7,1,8,31],\n 2021: [7,1,8,31],\n 2022: [7,1,8,31],\n 2023: [7,1,8,31],\n 2024: [7,1,9,1],\n 2025: [6,28,9,1],\n 2026: [7,1,8,31],\n 2027: [7,1,8,31],\n 2028: [7,3,9,1],\n },\n {\n name: \"Jesenné prázdniny\",\n 2020: [10,28,10,29],\n 2021: [10,28,10,29],\n 2022: [10,28,10,31],\n 2023: [10,30,10,31],\n 2024: [10,30,10,31],\n 2025: [10,30,10,31],\n 2026: [10,29,10,30],\n 2027: [10,28,10,29],\n },\n ]\n }\n};\n\nexport const sm = {\n PH: [{\"name\":\"Capodanno\",\"fixed_date\":[1,1]},{\"name\":\"Epifania\",\"fixed_date\":[1,6]},{\"name\":\"Festa di Sant’Agata\",\"fixed_date\":[2,5]},{\"name\":\"Anniversario dell'Arengo\",\"fixed_date\":[3,25]},{\"name\":\"Cerimonia di investitura dei Capitani Reggenti\",\"fixed_date\":[4,1]},{\"name\":\"Domenica di Pasqua\",\"variable_date\":\"easter\"},{\"name\":\"Lunedì dell’Angelo\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Festa del Lavoro\",\"fixed_date\":[5,1]},{\"name\":\"Corpus Domini\",\"variable_date\":\"easter\",\"offset\":60},{\"name\":\"Anniversario della caduta del Fascismo e Festa della Libertà\",\"fixed_date\":[7,28]},{\"name\":\"Ferragosto\",\"fixed_date\":[8,15]},{\"name\":\"Festa di San Marino e di Fondazione della Repubblica\",\"fixed_date\":[9,3]},{\"name\":\"Cerimonia di investitura dei Capitani Reggenti\",\"fixed_date\":[10,1]},{\"name\":\"Tutti i Santi\",\"fixed_date\":[11,1]},{\"name\":\"Commemorazione dei defunti\",\"fixed_date\":[11,2]},{\"name\":\"Immacolata Concezione\",\"fixed_date\":[12,8]},{\"name\":\"Natale\",\"fixed_date\":[12,25]},{\"name\":\"Santo Stefano\",\"fixed_date\":[12,26]}],\n SH: [\n {\n name: \"Vacanze Natalizie\",\n 2019: [12,24,1,4],\n 2020: [12,24,1,5],\n 2021: [12,24,1,5],\n 2022: [12,24,1,7],\n 2023: [12,24,1,5],\n 2024: [12,23,1,5],\n 2025: [12,24,1,5],\n },\n {\n name: \"Vacanze Pasquali\",\n 2020: [4,9,4,14],\n 2021: [4,2,4,6],\n 2022: [4,14,4,19],\n 2023: [4,3,4,10],\n 2024: [3,26,4,1],\n 2025: [4,17,4,22],\n 2026: [4,2,4,7],\n },\n {\n name: \"Vacanze Estive\",\n 2020: [6,11,9,6],\n 2021: [6,12,9,12],\n 2022: [6,12,9,14],\n 2023: [6,8,9,17],\n 2024: [6,8,9,17],\n 2025: [6,11,9,14],\n },\n {\n name: \"Termine lezioni\",\n 2026: [6,17,6,17],\n },\n ],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=43.9424&lon=12.4578&zoom=18&addressdetails=1&accept-language=it,en\"\n};\n\nexport const ua = {\n PH: [{\"name\":\"Новий Рік\",\"fixed_date\":[1,1],\"substitute_rule\":\"if saturday, sunday then next tuesday\"},{\"name\":\"Новий Рік\",\"fixed_date\":[1,2],\"substitute_rule\":\"if saturday, sunday then next monday\"},{\"name\":\"Міжнародний жіночий день\",\"fixed_date\":[3,8],\"substitute_rule\":\"if saturday, sunday then next monday\"},{\"name\":\"Великдень\",\"variable_date\":\"orthodox easter\"},{\"name\":\"Трійця\",\"variable_date\":\"orthodox easter\",\"offset\":49},{\"name\":\"День міжнародної солідарності трудящих\",\"fixed_date\":[5,1],\"substitute_rule\":\"if saturday, sunday then next tuesday\"},{\"name\":\"День перемоги над нацизмом у Другій світовій війні\",\"fixed_date\":[5,9],\"substitute_rule\":\"if saturday, sunday then next monday\"},{\"name\":\"День Конституції\",\"fixed_date\":[6,28],\"substitute_rule\":\"if saturday, sunday then next monday\"},{\"name\":\"День Української Державності\",\"fixed_date\":[7,15],\"substitute_rule\":\"if saturday, sunday then next monday\"},{\"name\":\"День Незалежності\",\"fixed_date\":[8,24],\"substitute_rule\":\"if saturday, sunday then next monday\"},{\"name\":\"День захисників і захисниць України\",\"fixed_date\":[10,1],\"substitute_rule\":\"if saturday, sunday then next monday\"},{\"name\":\"Різдво Христове\",\"fixed_date\":[12,25],\"substitute_rule\":\"if saturday, sunday then next monday\"}],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=50.4501&lon=30.5234&zoom=18&addressdetails=1&accept-language=uk,en\"\n};\n\nexport const us = {\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"}],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=32.3673&lon=-86.2983&zoom=18&addressdetails=1&accept-language=en\",\n \"Alabama\": {\n \"_state_code\": \"al\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=32.3673&lon=-86.2983&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Confederate Memorial Day\",\"variable_date\":\"firstAprilMonday\",\"offset\":21},{\"name\":\"Jefferson Davis' birthday\",\"variable_date\":\"firstJuneMonday\"}]\n },\n \"Alaska\": {\n \"_state_code\": \"ak\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=64.5082&lon=-165.4066&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Seward's Day\",\"variable_date\":\"lastMarchMonday\"},{\"name\":\"Alaska Day\",\"fixed_date\":[10,18]}]\n },\n \"American Samoa\": {\n \"_state_code\": \"as\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=-14.2756&lon=-170.7020&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"American Samoa Flag Day\",\"fixed_date\":[4,17],\"substitute_rule\":\"if sunday then next monday\"}]\n },\n \"Arizona\": {\n \"_state_code\": \"az\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=34.9378&lon=-109.7565&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"}]\n },\n \"Arkansas\": {\n \"_state_code\": \"ar\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=34.74610&lon=-92.29054&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Christmas Eve\",\"fixed_date\":[12,24]}]\n },\n \"California\": {\n \"_state_code\": \"ca\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=40.8001&lon=-124.1698&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"César Chávez Day\",\"fixed_date\":[3,31],\"substitute_rule\":\"if sunday then next monday\"}]\n },\n \"Colorado\": {\n \"_state_code\": \"co\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=39.1804&lon=-106.8218&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Frances Xavier Cabrini Day\",\"variable_date\":\"firstOctoberMonday\"}]\n },\n \"Connecticut\": {\n \"_state_code\": \"ct\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=41.9111&lon=-72.16014&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Lincoln's Birthday\",\"fixed_date\":[2,12]},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2}]\n },\n \"Delaware\": {\n \"_state_code\": \"de\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=38.7113&lon=-75.0978&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2}]\n },\n \"District of Columbia\": {\n \"_state_code\": \"dc\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=38.8953&lon=-77.0356&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Emancipation Day\",\"fixed_date\":[4,16]}]\n },\n \"Florida\": {\n \"_state_code\": \"fl\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=25.7720&lon=-80.1324&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Susan B. Anthony Day\",\"fixed_date\":[2,15]},{\"name\":\"Commemoration of America's 250th Birthday\",\"fixed_date\":[2,16],\"year\":2026}]\n },\n \"Georgia\": {\n \"_state_code\": \"ga\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=31.0823&lon=-81.4192&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"State Holiday\",\"variable_date\":\"lastAprilMonday\"},{\"name\":\"Washington's Birthday\",\"fixed_date\":[12,24],\"substitute_rule\":\"if wednesday then next friday\"}]\n },\n \"Guam\": {\n \"_state_code\": \"gu\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=13.4311&lon=144.6549&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Guam History and Chamorro Heritage Day\",\"variable_date\":\"firstMarchMonday\"},{\"name\":\"Liberation Day\",\"fixed_date\":[7,21],\"shift_rule\":\"if sunday then next monday\"},{\"name\":\"All Souls' Day\",\"fixed_date\":[11,2]},{\"name\":\"Our Lady of Camarin Day\",\"fixed_date\":[12,8],\"shift_rule\":\"if sunday then next monday\"}]\n },\n \"Hawaii\": {\n \"_state_code\": \"hi\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=19.6423&lon=-155.4837&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Prince Jonah Kuhio Kalanianaole Day\",\"fixed_date\":[3,26],\"substitute_rule\":\"if saturday then previous friday if sunday then next monday\"},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Kamehameha Day\",\"fixed_date\":[6,11],\"substitute_rule\":\"if saturday then previous friday if sunday then next monday\"},{\"name\":\"Statehood Day\",\"variable_date\":\"firstAugustFriday\",\"offset\":14}]\n },\n \"Idaho\": {\n \"_state_code\": \"id\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=47.6710&lon=-116.7671&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"}]\n },\n \"Illinois\": {\n \"_state_code\": \"il\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=42.05202&lon=-87.67594&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Lincoln's Birthday\",\"fixed_date\":[2,12]},{\"name\":\"Casimir Pulaski Day\",\"variable_date\":\"firstMarchMonday\"},{\"name\":\"Malcolm X Day\",\"fixed_date\":[5,19]}]\n },\n \"Indiana\": {\n \"_state_code\": \"in\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=40.4179&lon=-86.8969&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2}]\n },\n \"Iowa\": {\n \"_state_code\": \"ia\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=41.9747&lon=-91.6760&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Lincoln's Birthday\",\"fixed_date\":[2,12]}]\n },\n \"Kansas\": {\n \"_state_code\": \"ks\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=37.6888&lon=-97.3271&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"}]\n },\n \"Kentucky\": {\n \"_state_code\": \"ky\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=36.8446&lon=-83.3196&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Christmas Eve\",\"fixed_date\":[12,24]},{\"name\":\"New Year's Eve\",\"fixed_date\":[12,31]}]\n },\n \"Louisiana\": {\n \"_state_code\": \"la\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=30.1800&lon=-90.1787&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Mardi Gras\",\"variable_date\":\"easter\",\"offset\":-47},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2}]\n },\n \"Maine\": {\n \"_state_code\": \"me\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=44.7903&lon=-68.7829&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Patriots' Day\",\"variable_date\":\"firstAprilMonday\",\"offset\":14}]\n },\n \"Maryland\": {\n \"_state_code\": \"md\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=38.3206&lon=-75.6213&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"}]\n },\n \"Massachusetts\": {\n \"_state_code\": \"ma\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=42.3550&lon=-71.0645&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Evacuation Day\",\"fixed_date\":[3,17]},{\"name\":\"Patriots' Day\",\"variable_date\":\"firstAprilMonday\",\"offset\":14},{\"name\":\"Bunker Hill Day\",\"fixed_date\":[6,17]}]\n },\n \"Michigan\": {\n \"_state_code\": \"mi\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=42.7153&lon=-84.4995&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Christmas Eve\",\"fixed_date\":[12,24]},{\"name\":\"New Year's Eve\",\"fixed_date\":[12,31]}]\n },\n \"Minnesota\": {\n \"_state_code\": \"mn\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=47.8278&lon=-90.0484&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"}]\n },\n \"Mississippi\": {\n \"_state_code\": \"ms\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=30.3986&lon=-88.8820&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Confederate Memorial Day\",\"variable_date\":\"lastAprilMonday\"}]\n },\n \"Missouri\": {\n \"_state_code\": \"mo\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=37.0799&lon=-94.5060&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Lincoln's Birthday\",\"fixed_date\":[2,12]},{\"name\":\"Truman Day\",\"fixed_date\":[5,8]}]\n },\n \"Montana\": {\n \"_state_code\": \"mt\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=48.3866&lon=-115.5498&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Christmas Eve\",\"fixed_date\":[12,24]},{\"name\":\"New Year's Eve\",\"fixed_date\":[12,31]}]\n },\n \"Nebraska\": {\n \"_state_code\": \"ne\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=41.2587&lon=-95.9374&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Arbor Day\",\"variable_date\":\"lastAprilFriday\"}]\n },\n \"Nevada\": {\n \"_state_code\": \"nv\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=36.1215&lon=-115.1704&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Nevada Day\",\"variable_date\":\"lastOctoberFriday\"}]\n },\n \"New Hampshire\": {\n \"_state_code\": \"nh\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=43.5628&lon=-71.9447&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"}]\n },\n \"New Jersey\": {\n \"_state_code\": \"nj\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=39.9475&lon=-75.1066&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Lincoln's Birthday\",\"fixed_date\":[2,12]},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2}]\n },\n \"New Mexico\": {\n \"_state_code\": \"nm\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=34.0790&lon=-107.6179&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"}]\n },\n \"New York\": {\n \"_state_code\": \"ny\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=42.8126&lon=-73.9379&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Lincoln's Birthday\",\"fixed_date\":[2,12]},{\"name\":\"Susan B. Anthony Day\",\"fixed_date\":[2,15]}]\n },\n \"North Carolina\": {\n \"_state_code\": \"nc\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=35.7802&lon=-78.6394&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Christmas Eve\",\"fixed_date\":[12,24],\"substitute_rule\":\"if friday then previous thursday if saturday,sunday then previous friday\"}]\n },\n \"North Dakota\": {\n \"_state_code\": \"nd\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=48.1459&lon=-103.6232&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"}]\n },\n \"Ohio\": {\n \"_state_code\": \"oh\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=41.4846&lon=-82.6852&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"}]\n },\n \"Oklahoma\": {\n \"_state_code\": \"ok\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=36.0514&lon=-95.7892&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"}]\n },\n \"Oregon\": {\n \"_state_code\": \"or\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=45.3732&lon=-121.6959&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"}]\n },\n \"Pennsylvania\": {\n \"_state_code\": \"pa\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=40.3340&lon=-75.9300&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Flag Day\",\"fixed_date\":[6,14]}]\n },\n \"Puerto Rico\": {\n \"_state_code\": \"pr\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=18.4364&lon=-66.1188&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Día de los Reyes Magos\",\"fixed_date\":[1,6]},{\"name\":\"Natalicio de Eugenio María de Hostos\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":7},{\"name\":\"Natalicio de Luis Muñoz Marín\",\"fixed_date\":[2,18]},{\"name\":\"Día de la Ciudadanía Americana\",\"fixed_date\":[3,2]},{\"name\":\"Día de la Abolición de Esclavitud\",\"fixed_date\":[3,22]},{\"name\":\"Natalicio de José de Diego\",\"fixed_date\":[4,16]},{\"name\":\"Natalicio de Don Luis Muñoz Rivera\",\"variable_date\":\"firstJulyMonday\",\"offset\":14},{\"name\":\"Constitución de Puerto Rico\",\"fixed_date\":[7,25]},{\"name\":\"Natalicio de Dr. José Celso Barbosa\",\"fixed_date\":[7,27]},{\"name\":\"Día del Descubrimiento de Puerto Rico\",\"fixed_date\":[11,19]}]\n },\n \"Rhode Island\": {\n \"_state_code\": \"ri\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=41.8251&lon=-71.4194&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Victory Day\",\"variable_date\":\"firstAugustMonday\",\"offset\":7}]\n },\n \"South Carolina\": {\n \"_state_code\": \"sc\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=32.7878&lon=-79.9392&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Confederate Memorial Day\",\"fixed_date\":[5,10]},{\"name\":\"Boxing Day\",\"fixed_date\":[12,26]}]\n },\n \"South Dakota\": {\n \"_state_code\": \"sd\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=43.7148&lon=-98.0249&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"}]\n },\n \"Tennessee\": {\n \"_state_code\": \"tn\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=35.1438&lon=-90.0231&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Christmas Eve\",\"fixed_date\":[12,24]}]\n },\n \"Texas\": {\n \"_state_code\": \"tx\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=30.2655&lon=-97.7559&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Christmas Eve\",\"fixed_date\":[12,24]},{\"name\":\"Day after Christmas\",\"fixed_date\":[12,26]}]\n },\n \"United States Virgin Islands\": {\n \"_state_code\": \"vi\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=18.3433&lon=-64.9347&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Three Kings Day\",\"fixed_date\":[1,6]},{\"name\":\"Transfer Day\",\"fixed_date\":[3,31]},{\"name\":\"Maundy Thursday\",\"variable_date\":\"easter\",\"offset\":-3},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Easter Monday\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Emancipation Day\",\"fixed_date\":[7,3]},{\"name\":\"Hurricane Supplication Day\",\"variable_date\":\"firstJulyMonday\",\"offset\":21}]\n },\n \"Utah\": {\n \"_state_code\": \"ut\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=40.5888&lon=-111.6378&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Pioneer Day\",\"fixed_date\":[7,24]}]\n },\n \"Vermont\": {\n \"_state_code\": \"vt\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=44.2597&lon=-72.5800&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Town Meeting Day\",\"variable_date\":\"firstMarchTuesday\"},{\"name\":\"Bennington Battle Day\",\"variable_date\":\"firstAugustMonday\",\"offset\":14}]\n },\n \"Virginia\": {\n \"_state_code\": \"va\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=36.9454&lon=-76.2888&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"}]\n },\n \"Washington\": {\n \"_state_code\": \"wa\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=46.8598&lon=-121.7256&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"}]\n },\n \"West Virginia\": {\n \"_state_code\": \"wv\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=38.3686&lon=-81.6070&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Susan B. Anthony Day\",\"fixed_date\":[2,15]},{\"name\":\"West Virginia Day\",\"fixed_date\":[6,20]}]\n },\n \"Wisconsin\": {\n \"_state_code\": \"wi\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=45.8719&lon=-89.6930&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Susan B. Anthony Day\",\"fixed_date\":[2,15]},{\"name\":\"Primary Election Day\",\"variable_date\":\"firstSeptemberTuesday\",\"offset\":7}]\n },\n \"Wyoming\": {\n \"_state_code\": \"wy\",\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=42.8590&lon=-106.3126&zoom=18&addressdetails=1&accept-language=en\",\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Martin Luther King Jr. Day\",\"variable_date\":\"firstJanuaryMonday\",\"offset\":14},{\"name\":\"Washington's Birthday\",\"variable_date\":\"firstFebruaryMonday\",\"offset\":14},{\"name\":\"Memorial Day\",\"variable_date\":\"lastMayMonday\"},{\"name\":\"Juneteenth\",\"fixed_date\":[6,19],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Independence Day\",\"fixed_date\":[7,4],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"},{\"name\":\"Labor Day\",\"variable_date\":\"firstSeptemberMonday\"},{\"name\":\"Columbus Day\",\"variable_date\":\"firstOctoberMonday\",\"offset\":7},{\"name\":\"Veterans Day\",\"fixed_date\":[11,11]},{\"name\":\"Thanksgiving Day\",\"variable_date\":\"firstNovemberThursday\",\"offset\":21},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25],\"substitute_rule\":\"if sunday then next monday if saturday then previous friday\"}]\n }\n};\n\nexport const vn = {\n PH: [{\"name\":\"Tết Dương Lịch\",\"fixed_date\":[1,1]},{\"name\":\"Ngày Quốc tế Phụ nữ\",\"fixed_date\":[3,8]},{\"name\":\"Ngày thành lập Đoàn Thanh niên Cộng sản Hồ Chí Minh\",\"fixed_date\":[3,26]},{\"name\":\"Ngày Quốc tế Thiếu nhi\",\"fixed_date\":[6,1]},{\"name\":\"Ngày Nhà giáo Việt Nam\",\"fixed_date\":[11,20]},{\"name\":\"Ngày Giải phóng miền Nam, Thống nhất Đất nước\",\"fixed_date\":[4,30]},{\"name\":\"Ngày Quốc tế lao động\",\"fixed_date\":[5,1]},{\"name\":\"Quốc Khánh\",\"fixed_date\":[9,2]},{\"name\":\"Lễ Giáng Sinh\",\"fixed_date\":[12,25]}],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=10.77374&lon=106.70094&zoom=16&addressdetails=1&accept-language=en\"\n};\n\nexport const xa = {\n PH: [{\"name\":\"New Year\",\"fixed_date\":[1,1]}],\n SH: [\n {\n name: \"Summer\",\n 2020: [6,21,9,23],\n 2021: [6,21,9,23],\n 2022: [6,21,9,23],\n 2023: [6,21,9,23],\n 2024: [6,21,9,23],\n 2025: [6,21,9,23],\n 2026: [6,21,9,23],\n 2027: [6,21,9,23],\n 2028: [6,21,9,23],\n 2029: [6,21,9,23],\n 2030: [6,21,9,23],\n 2031: [6,21,9,23],\n 2032: [6,21,9,23],\n },\n ],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=0.0&lon=0.0&zoom=18&addressdetails=1&accept-language=en\"\n};\n\nexport const za = {\n PH: [{\"name\":\"New Year's Day\",\"fixed_date\":[1,1],\"substitute_rule\":\"if sunday then next monday\",\"substitute_name\":\"Public Holiday\"},{\"name\":\"Human Rights Day\",\"fixed_date\":[3,21],\"substitute_rule\":\"if sunday then next monday\",\"substitute_name\":\"Public Holiday\"},{\"name\":\"Good Friday\",\"variable_date\":\"easter\",\"offset\":-2},{\"name\":\"Family Day\",\"variable_date\":\"easter\",\"offset\":1},{\"name\":\"Freedom Day\",\"fixed_date\":[4,27],\"substitute_rule\":\"if sunday then next monday\",\"substitute_name\":\"Public Holiday\"},{\"name\":\"Workers' Day\",\"fixed_date\":[5,1],\"substitute_rule\":\"if sunday then next monday\",\"substitute_name\":\"Public Holiday\"},{\"name\":\"Youth Day\",\"fixed_date\":[6,16],\"substitute_rule\":\"if sunday then next monday\",\"substitute_name\":\"Public Holiday\"},{\"name\":\"National Women's Day\",\"fixed_date\":[8,9],\"substitute_rule\":\"if sunday then next monday\",\"substitute_name\":\"Public Holiday\"},{\"name\":\"Heritage Day\",\"fixed_date\":[9,24],\"substitute_rule\":\"if sunday then next monday\",\"substitute_name\":\"Public Holiday\"},{\"name\":\"Day of Reconciliation\",\"fixed_date\":[12,16],\"substitute_rule\":\"if sunday then next monday\",\"substitute_name\":\"Public Holiday\"},{\"name\":\"Christmas Day\",\"fixed_date\":[12,25]},{\"name\":\"Day of Goodwill\",\"fixed_date\":[12,26],\"substitute_rule\":\"if sunday then next monday\",\"substitute_name\":\"Public Holiday\"}],\n SH: [\n {\n name: \"Summer Break\",\n 2019: [12,7,1,12],\n 2020: [12,17,1,10],\n 2021: [12,11,1,9],\n 2022: [12,17,1,8],\n 2023: [12,16,1,14],\n 2024: [12,14,1,12],\n 2025: [12,13,1,11],\n 2026: [12,12,1,10],\n 2027: [12,11,1,9],\n },\n {\n name: \"Autumn Break\",\n 2020: [3,19,5,31],\n 2021: [3,27,4,12],\n 2022: [3,18,4,4],\n 2023: [3,25,4,11],\n 2024: [3,22,4,2],\n 2025: [3,29,4,7],\n 2026: [3,28,4,7],\n 2027: [3,20,4,5],\n },\n {\n name: \"Winter Break\",\n 2020: [8,11,8,11],\n 2021: [6,26,7,19],\n 2022: [6,25,7,18],\n 2023: [6,24,7,17],\n 2024: [6,15,7,8],\n 2025: [6,28,7,21],\n 2026: [6,27,7,20],\n 2027: [6,26,7,19],\n },\n {\n name: \"Spring Break\",\n 2020: [9,25,10,4],\n 2021: [10,2,10,11],\n 2022: [10,1,10,10],\n 2023: [9,30,10,9],\n 2024: [9,21,9,30],\n 2025: [10,4,10,12],\n 2026: [10,3,10,12],\n 2027: [10,2,10,10],\n },\n {\n name: \"Special School Holiday\",\n 2021: [4,26,4,26],\n 2022: [8,8,8,8],\n 2023: [4,28,4,28],\n 2024: [4,26,4,26],\n 2025: [6,2,6,2],\n 2026: [9,25,9,25],\n 2027: [4,26,4,26],\n },\n ],\n \"_nominatim_url\": \"https://nominatim.openstreetmap.org/reverse?format=json&lat=-25.7462&lon=28.1881&zoom=18&addressdetails=1&accept-language=en,af\"\n};\n","/**\n * SPDX-FileCopyrightText: © opening_hours.js contributors\n *\n * SPDX-License-Identifier: LGPL-3.0-only\n *\n * Holiday definitions for opening_hours.js\n *\n * All countries are now sourced from generated-openholidays.js\n * - Countries with OpenHolidays API: School holidays 2020-2027\n * - YAML-only countries: Public holidays + legacy school holidays\n *\n * To update: Run `node scripts/fetch-school-holidays.mjs`\n */\n\n// Re-export all countries from generated file (OpenHolidays + YAML)\nexport * from './generated-openholidays.js';\n","/**\n * SPDX-FileCopyrightText: © 2025 Kristjan ESPERANTO <https://github.com/KristjanESPERANTO>\n *\n * SPDX-License-Identifier: LGPL-3.0-only\n */\nimport resources from './translations.yaml';\n\n/**\n * Replace `{{varName}}` (or `{{-varName}}`) placeholders in a translation string.\n * The `-` prefix is a legacy i18next no-HTML-escape marker; it has no effect here.\n * @param {string} str - Translation string containing `{{…}}` placeholders.\n * @param {object} vars - Map of placeholder names to replacement values.\n * @returns {string} The interpolated translation string.\n */\nfunction interpolate(str, vars) {\n return str.replace(/{{-?([^{}]*)}}/g, function(match, varName) {\n const name = varName.trim();\n if (name in vars) {\n return vars[name];\n }\n return match;\n });\n}\n\n/**\n * Extract the base language subtag from a locale tag (e.g. 'de-DE' → 'de').\n *\n * Accepts BCP 47 tags (e.g. 'de-DE') and POSIX identifiers per ISO 15897 (e.g. 'de_DE').\n * For non-strings, returns 'en' (the default fallback locale).\n * @param {string|null|undefined} locale - Locale tag.\n * @returns {string} Base language, e.g. 'de'.\n */\nfunction baseLanguage(locale) {\n if (locale && typeof locale === 'string') {\n return locale.split(/[-_]/)[0];\n }\n return 'en';\n}\n\n/**\n * Build the locale fallback chain for a given locale tag.\n *\n * 'de-DE' → ['de-DE', 'de', 'en']\n * 'de' → ['de', 'en']\n * null → ['en']\n * @param {string|null|undefined} locale - BCP 47 locale tag.\n * @returns {string[]} Locale tags ordered from most to least specific.\n */\nfunction localeChain(locale) {\n const base = baseLanguage(locale);\n // Deduplicate entries like ['de', 'de', 'en'] or ['en', 'en'].\n return [...new Set([locale, base, 'en'].filter(Boolean))];\n}\n\n/**\n * Walk the resource tree for the first locale in the fallback chain that has\n * a translation for the given key.\n *\n * Tree shape: resources[locale][section][…key segments]\n * @param {string|null|undefined} locale - BCP 47 locale tag.\n * @param {string} section - 'texts' or 'pretty'.\n * @param {string} key - Translation key (dot-separated for nesting).\n * @returns {string|object|undefined} Matched value, or `undefined` if not found anywhere in the chain.\n */\nfunction lookup(locale, section, key) {\n const keyPath = key.split('.');\n for (const loc of localeChain(locale)) {\n let value = resources[loc]?.[section];\n for (const segment of keyPath) value = value?.[segment];\n // Return as soon as we find a value defined by the resource tree.\n if (value !== undefined) return value;\n }\n return undefined;\n}\n\n/**\n * Translate a key into the requested locale, falling back through the locale\n * chain to English. Returns the key itself when no translation is found.\n * @param {string|null|undefined} locale - BCP 47 locale tag (e.g. 'de', 'de-DE').\n * @param {string} section - 'texts' (error/warning messages) or\n * 'pretty' (prettified output tokens).\n * @param {string} key - Translation key (dot-separated for nesting).\n * @param {object} [vars] - Variables to interpolate via `{{varName}}`.\n * @returns {string} The translated string, or the key when no translation exists.\n */\nexport function translate(locale, section, key, vars) {\n const result = lookup(locale, section, key);\n\n if (typeof result === 'string') {\n if (vars) {\n return interpolate(result, vars);\n }\n return result;\n }\n\n return key;\n}\n","/*\n * SPDX-FileCopyrightText: © 2026 opening_hours.js contributors\n *\n * SPDX-License-Identifier: LGPL-3.0-only\n */\n\n/**\n * Shared token normalization for the locale resolver.\n *\n * Lower-cases, trims and strips trailing abbreviation dots (e.g. German \"Mo.\")\n * so that generated layer keys and runtime lookups use the same shape.\n * @param {string} value - Token value to normalize.\n * @returns {string} Normalized token value.\n */\nexport function normalizeToken(value) {\n return String(value ?? '')\n .trim()\n .toLowerCase()\n .replace(/\\.+$/, '');\n}\n","/*\n * SPDX-FileCopyrightText: © 2026 opening_hours.js contributors\n *\n * SPDX-License-Identifier: LGPL-3.0-only\n */\n\n/**\n * Layered, context-sensitive resolver for weekdays and months.\n *\n * Pure function — no I/O, no globals. Given a sequence of raw lexemes (e.g. the\n * operands of `Mo-Tr` or `Jan-Mär`), the active locale, the expected token TYPE\n * (which the parser's grammatical context always knows) and the generated layer\n * data, it resolves each token and reports a confidence per token and per range.\n *\n * Resolution order per token (within the expected type):\n * Layer 0 canonical → silent (locale-neutral syntax, always valid)\n * Layer 2 universal → info (unambiguous English aliases)\n * Layer 3 cross-locale → info if it matches the active locale\n * → warning if it matches a language of the POI's country (geo tier-2)\n * → warning if unambiguous AND coherent with neighbour tokens\n * → warning if the value is purely foreign (no English anchor) and unambiguous\n * → error if it mixes canonical English syntax with a foreign token, or is ambiguous\n *\n * The active locale is not a separate data layer — it is one of the trusted\n * languages applied to the cross-locale index (parallel to the geo languages).\n * A former per-locale table is fully recoverable from the cross-locale index by\n * base language, so it is neither generated nor consulted.\n *\n * Geo tier-2: the POI's country (from the nominatim country code) yields the set\n * of locally plausible languages. A foreign token that matches one of them is\n * accepted with a warning — this is what separates `Mo-Tr` `@DE` (reject, #588)\n * from `Mo-Tr` `@LT` (accept, Lithuanian) and `Mo-montag` `@DE` (accept, German).\n *\n * Coherence (two pass) resolves Layer 3 tokens against their neighbours:\n * - `Mo-Tr` (en): `Tr` only matches lt, no lt context, locale is en → ERROR (#588)\n * - `Mo-Tr` (lt): `Tr` is Lithuanian, matches active locale → info\n * - понедельник-пятница (en): both corroborate ru → warning\n */\n\nimport { normalizeToken } from './normalize.mjs';\n\nconst SEVERITY = { silent: 0, info: 1, warning: 2, error: 3 };\nconst SEVERITY_NAME = ['silent', 'info', 'warning', 'error'];\n\nconst CANONICAL_HINT = {\n weekday: 'Mo, Tu, We, Th, Fr, Sa, Su',\n month: 'Jan, Feb, Mar, … Dec',\n};\n\nfunction classify(raw, type, layers) {\n const token = normalizeToken(raw);\n const result = {\n raw, token, type, meaning: null, lang: null, layer: null,\n kind: 'unknown', confidence: 'error', candidates: null, message: null,\n };\n\n if (token in layers.canonical[type]) {\n return Object.assign(result, {\n meaning: layers.canonical[type][token], layer: 0, kind: 'canonical', confidence: 'silent',\n });\n }\n\n if (token in layers.universal[type]) {\n return Object.assign(result, {\n meaning: layers.universal[type][token], layer: 2, kind: 'universal', confidence: 'info',\n });\n }\n\n // Layer 3: only candidates matching the grammatically expected type.\n const candidates = (layers.crossLocale[token] || []).filter(candidate => candidate.type === type);\n if (candidates.length) {\n return Object.assign(result, { kind: 'foreign', candidates });\n }\n\n result.message = `Unknown ${type} token \"${raw}\".`;\n return result;\n}\n\nfunction uniqueMeaning(candidates) {\n const meanings = new Set(candidates.map(candidate => candidate.meaning));\n return meanings.size === 1 ? [...meanings][0] : null;\n}\n\nfunction candidateSummary(candidates) {\n return candidates\n .map(candidate => `${candidate.meaning} (${candidate.lang})`)\n .join(', ');\n}\n\nfunction resolveForeign(token, allForeign, localeLang, regionLangs, hasAnchor) {\n const candidates = token.candidates;\n\n // 1. Matches the active locale directly → accept.\n const localeMatches = candidates.filter(candidate => candidate.lang === localeLang);\n if (localeMatches.length) {\n const meaning = uniqueMeaning(localeMatches);\n if (meaning) {\n return Object.assign(token, { meaning, lang: localeLang, layer: 3, confidence: 'info' });\n }\n }\n\n // 1b. Geo tier-2: matches an official language of the POI's country → accept\n // with a warning (it may mean something else in another language).\n if (regionLangs && regionLangs.size) {\n const regionMatches = candidates.filter(candidate => regionLangs.has(candidate.lang));\n const meaning = uniqueMeaning(regionMatches);\n if (meaning) {\n const lang = regionMatches[0].lang;\n return Object.assign(token, {\n meaning, lang, layer: 3, confidence: 'warning',\n message: `Interpreted \"${token.raw}\" as ${meaning} (${lang}); a local language at this location.`,\n });\n }\n }\n\n // 2. Mutual corroboration: a sibling foreign token supports the same language.\n const neighbourLangs = new Set();\n for (const other of allForeign) {\n if (other === token) {\n continue;\n }\n for (const candidate of other.candidates) {\n neighbourLangs.add(candidate.lang);\n }\n }\n const sharedLangs = [...new Set(candidates.map(candidate => candidate.lang))]\n .filter(lang => neighbourLangs.has(lang))\n .sort((a, b) => a.localeCompare(b, 'en'));\n if (sharedLangs.length) {\n const lang = sharedLangs[0];\n const meaning = uniqueMeaning(candidates.filter(candidate => candidate.lang === lang));\n if (meaning) {\n return Object.assign(token, {\n meaning, lang, layer: 3, confidence: 'warning',\n message: `Interpreted \"${token.raw}\" as ${meaning} (${lang}); coherent with neighbouring tokens.`,\n });\n }\n }\n\n // 4. Pure-foreign value: no canonical/English anchor in the group. The user is\n // writing consistently in a non-English language, not mixing a typo into\n // English syntax (which is the `Mo-Tr` / #588 signature). Tolerate an\n // unambiguous foreign token with a warning; only genuinely ambiguous ones\n // (e.g. `listopad` = Nov/Oct) still need a locale/location.\n if (!hasAnchor) {\n const meaning = uniqueMeaning(candidates);\n if (meaning) {\n const lang = candidates.find(candidate => candidate.meaning === meaning).lang;\n return Object.assign(token, {\n meaning, lang, layer: 3, confidence: 'warning',\n message: `Interpreted \"${token.raw}\" as ${meaning} (${lang}); non-English value without a set locale or location.`,\n });\n }\n }\n\n // 5. Mixed canonical + foreign (suspicious, e.g. Mo-Tr) or ambiguous → reject.\n const hint = `Use a canonical abbreviation (${CANONICAL_HINT[token.type]}) or set the intended locale.`;\n token.confidence = 'error';\n token.layer = 3;\n token.meaning = uniqueMeaning(candidates);\n token.message = token.meaning\n ? `Token \"${token.raw}\" is not valid for locale \"${localeLang}\"; it only matches ${candidateSummary(candidates)}. ${hint}`\n : `Token \"${token.raw}\" is ambiguous across languages (${candidateSummary(candidates)}). ${hint}`;\n return token;\n}\n\n/**\n * Resolve a sequence of raw lexemes of a single grammatical type.\n * @param {string[]} rawTokens - e.g. ['Mo', 'Tr'] for `Mo-Tr`, ['Jan', 'Mär'] for `Jan-Mär`.\n * @param {{ locale: string, type: 'weekday'|'month', layers: object, regionLangs?: Set<string> }} options - Locale and resolver data.\n * @returns {{ ok: boolean, confidence: string, tokens: object[] }} Resolved tokens and overall confidence.\n */\nexport function resolveRange(rawTokens, { locale, type, layers, regionLangs }) {\n const localeLang = String(locale || '').split('-')[0].toLowerCase();\n\n // Pass A — classify every token by layer.\n const tokens = rawTokens.map(raw => classify(raw, type, layers));\n\n // Whether the value mixes canonical / universal English syntax with the\n // foreign token(s). Purely-foreign values are treated more leniently.\n const hasAnchor = tokens.some(token => token.kind === 'canonical' || token.kind === 'universal');\n\n // Pass B — resolve foreign (Layer 3) tokens using neighbour context + geo tier-2.\n const foreign = tokens.filter(token => token.kind === 'foreign');\n for (const token of foreign) {\n resolveForeign(token, foreign, localeLang, regionLangs, hasAnchor);\n // For an accepted but cross-locale ambiguous token, record the alternative\n // meanings (and the languages that use them) so the caller can warn that the\n // same lexeme means something else elsewhere.\n if (token.meaning && token.confidence !== 'error' && Array.isArray(token.candidates)) {\n const byMeaning = new Map();\n for (const candidate of token.candidates) {\n if (!byMeaning.has(candidate.meaning)) {\n byMeaning.set(candidate.meaning, new Set());\n }\n byMeaning.get(candidate.meaning).add(candidate.lang);\n }\n if (byMeaning.size > 1) {\n token.alternatives = [...byMeaning.entries()]\n .filter(([meaning]) => meaning !== token.meaning)\n .map(([meaning, langs]) => ({\n meaning,\n langs: [...langs].sort((a, b) => a.localeCompare(b, 'en')),\n }));\n }\n }\n }\n\n const severity = tokens.reduce((max, token) => Math.max(max, SEVERITY[token.confidence]), 0);\n return {\n ok: severity < SEVERITY.error,\n confidence: SEVERITY_NAME[severity],\n tokens,\n };\n}\n","/*\n * SPDX-FileCopyrightText: © 2026 opening_hours.js contributors\n *\n * SPDX-License-Identifier: LGPL-3.0-only\n */\n\n/**\n * Geo tier-2 source: map a POI country code to the set of languages that are\n * plausible at that location (its official languages).\n *\n * The data itself is generated from CLDR `territoryInfo` into `layers.regionLangs`\n * (see gen_locale_resolver_layers.mjs), so this module ships no CLDR dependency — it only looks\n * up and caches.\n */\n\nconst cache = new Map();\n\n/**\n * @param {string|undefined} countryCode - e.g. \"de\", \"LT\" (case-insensitive).\n * @param {{ regionLangs?: Record<string, string[]> }} layers - generated layer data; uses `layers.regionLangs`.\n * @returns {Set<string>} language codes plausible at that location (may be empty).\n */\nexport function regionLanguages(countryCode, layers) {\n if (typeof countryCode !== 'string' || countryCode === '') {\n return new Set();\n }\n const cc = countryCode.toLowerCase();\n if (cache.has(cc)) {\n return cache.get(cc);\n }\n\n const generated = (layers && layers.regionLangs && layers.regionLangs[cc]) || [];\n const langs = new Set(generated);\n\n cache.set(cc, langs);\n return langs;\n}\n\n/** Test helper: drop memoised results (e.g. between unit tests with different data). */\nexport function clearRegionLanguageCache() {\n cache.clear();\n}\n","/*\n * SPDX-FileCopyrightText: © 2013 Robin Schneider <ypid@riseup.net>\n *\n * SPDX-License-Identifier: LGPL-3.0-only\n *\n * This file is based on work under the following copyright and\n * BSD-2-Clause permission notice:\n *\n * SPDX-FileCopyrightText: © 2012 Dmitry Marakasov <amdmi3@amdmi3.ru>\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions are met:\n *\n * 1. Redistributions of source code must retain the above copyright notice, this\n * list of conditions and the following disclaimer.\n *\n * 2. Redistributions in binary form must reproduce the above copyright notice,\n * this list of conditions and the following disclaimer in the documentation\n * and/or other materials provided with the distribution.\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND\n * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED\n * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\n * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE\n * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL\n * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR\n * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER\n * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,\n * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\nimport * as holiday_definitions from './holidays/index';\nimport word_error_correction from './locales/word_error_correction.yaml';\n\nimport { getTimes } from 'suncalc';\nimport { translate } from './locales/i18n';\n\nimport { resolveRange } from './locale-resolver/resolver.mjs';\nimport { regionLanguages } from './locale-resolver/region-languages.mjs';\nimport { normalizeToken } from './locale-resolver/normalize.mjs';\nimport resolver_layers from './locale-resolver/layers.json';\n\n/**\n * Creates an opening hours parser for an OSM opening-hours value.\n * @param {string} value The opening-hours value to parse.\n * @param {object|null} [nominatim_object] Location and address data used for holidays and solar times.\n * @param {number|object} [optional_conf_parm] Parser mode or parser configuration.\n */\nexport default function(value, nominatim_object, optional_conf_parm) {\n // Short constants {{{\n const word_value_replacement = { // If the correct values can not be calculated.\n dawn : 60 * 5 + 30,\n sunrise : 60 * 6,\n sunset : 60 * 18,\n dusk : 60 * 18 + 30,\n };\n const months = ['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'];\n const weekdays = ['Su','Mo','Tu','We','Th','Fr','Sa'];\n const INTL_DAY_MONTH_REF_DATE = new Date(2024, 2, 6); // fixed reference date for Intl.DateTimeFormat#formatToParts\n const string_to_token_map = {\n 'su': [ 0, 'weekday' ],\n 'mo': [ 1, 'weekday' ],\n 'tu': [ 2, 'weekday' ],\n 'we': [ 3, 'weekday' ],\n 'th': [ 4, 'weekday' ],\n 'fr': [ 5, 'weekday' ],\n 'sa': [ 6, 'weekday' ],\n 'jan': [ 0, 'month' ],\n 'feb': [ 1, 'month' ],\n 'mar': [ 2, 'month' ],\n 'apr': [ 3, 'month' ],\n 'may': [ 4, 'month' ],\n 'jun': [ 5, 'month' ],\n 'jul': [ 6, 'month' ],\n 'aug': [ 7, 'month' ],\n 'sep': [ 8, 'month' ],\n 'oct': [ 9, 'month' ],\n 'nov': [ 10, 'month' ],\n 'dec': [ 11, 'month' ],\n 'day': [ 'day', 'calcday' ],\n 'days': [ 'days', 'calcday' ],\n 'sunrise': [ 'sunrise', 'timevar' ],\n 'sunset': [ 'sunset', 'timevar' ],\n 'dawn': [ 'dawn', 'timevar' ],\n 'dusk': [ 'dusk', 'timevar' ],\n 'easter': [ 'easter', 'event' ],\n 'week': [ 'week', 'week' ],\n 'open': [ 'open', 'state' ],\n 'closed': [ 'closed', 'state' ],\n 'off': [ 'off', 'state' ],\n 'unknown': [ 'unknown', 'state' ],\n }\n // Flatten all replacement rules into one longest-pattern-first lookup list,\n // so a specific phrase wins over a shorter pattern matching its prefix.\n const correction_entries = Object.entries(word_error_correction)\n .filter(([comment]) => comment !== 'Ambiguous words')\n .flatMap(([comment, corrections]) => Object.entries(corrections)\n .map(([pattern, replacement]) => ({ comment, pattern, replacement })))\n .sort((left, right) => right.pattern.length - left.pattern.length);\n // Multi-word rules only; single-word rules must not override valid tokens\n // such as the month abbreviation \"Mar\" and are left to returnCorrectWordOrToken.\n const phrase_correction_entries = correction_entries.filter(({ pattern }) =>\n pattern.includes(' ') || pattern.includes('\\\\s')\n );\n const findPhraseCorrection = (input) => {\n for (const correction of phrase_correction_entries) {\n const match = input.match(new RegExp(\n '^(' + correction.pattern + ')(\\\\.?)' +\n '(?=$|[^\\\\p{L}\\\\p{N}_])',\n 'iu'\n ));\n if (match) {\n return match;\n }\n }\n return undefined;\n };\n const ambiguous_season_words = new Set([\n 'spring', 'summer', 'autumn', 'winter', // en\n 'frühling', 'fruehling', 'frühjahr', 'sommer', 'herbst', // de\n 'primavera', 'estate', 'autunno', 'inverno', // it\n ]);\n\n const default_prettify_conf = {\n // Update README.md if changed.\n 'zero_pad_hour': true, // enforce (\"%02d\", hour)\n 'one_zero_if_hour_zero': false, // only one zero \"0\" if hour is zero \"0\"\n 'leave_off_closed': true, // leave keywords \"off\" and \"closed\" as is\n 'keyword_for_off_closed': 'off', // use given keyword instead of \"off\" or \"closed\"\n 'rule_sep_string': ' ', // separate rules by string\n 'print_semicolon': true, // print token which separates normal rules\n 'leave_weekday_sep_one_day_betw': true, // use the separator (either \",\" or \"-\" which is used to separate days which follow to each other like Sa,Su or Su-Mo\n 'sep_one_day_between': ',', // separator which should be used\n 'zero_pad_month_and_week_numbers': true, // Format week (e.g. `week 01`) and month day numbers (e.g. `Jan 01`) with \"%02d\".\n 'locale': 'en', // locale for translations (currently 'en', 'de' and 'fr' are supported)\n 'date_format': 'short' // Use short or long date format (for day and month names)\n };\n\n const osm_tag_defaults = {\n 'opening_hours' : { 'mode' : 0, 'warn_for_PH_missing' : true, },\n 'collection_times' : { 'mode' : 2, },\n /* oh_mode 2: \"including the hyphen because there are post boxes which are\n * emptied several (undefined) times or one (undefined) time in a certain time\n * frame. This shall be covered also.\".\n * Ref: https://wiki.openstreetmap.org/wiki/Key:collection_times */\n 'opening_hours:.+' : { 'mode' : 0, },\n '.+:opening_hours' : { 'mode' : 0, },\n '.+:opening_hours:.+' : { 'mode' : 0, },\n '.+:conditional' : { 'mode' : 0, },\n 'smoking_hours' : { 'mode' : 0, },\n 'service_times' : { 'mode' : 2, },\n 'happy_hours' : { 'mode' : 0, },\n 'lit' : { 'mode' : 0,\n map: {\n 'yes' : 'sunset-sunrise open \"specified as yes: At night (unknown time schedule or daylight detection)\"',\n 'automatic': 'unknown \"specified as automatic: When someone enters the way the lights are turned on.\"',\n 'no' : 'off \"specified as no: There are no lights installed.\"',\n 'interval' : 'unknown \"specified as interval\"',\n 'limited' : 'unknown \"specified as limited\"',\n }\n },\n };\n\n const minutes_in_day = 60 * 24;\n const msec_in_day = 1000 * 60 * minutes_in_day;\n // let msec_in_week = msec_in_day * 7;\n\n const library_name = 'opening_hours.js';\n const repository_url = 'https://github.com/opening-hours/' + library_name;\n // let issues_url = repository_url + '/issues?state=open';\n /* }}} */\n\n /* Translation function {{{ */\n // Parser messages use the `texts` translations. Pretty output translates separately.\n const parser_locale = optional_conf_parm && typeof optional_conf_parm['locale'] === 'string'\n ? optional_conf_parm['locale']\n : 'en';\n\n // Parser errors and warnings only need message translations.\n const t = (key, variables) => translate(parser_locale, 'texts', key, variables);\n /* }}} */\n\n /* Optional constructor parameters {{{ */\n\n /* nominatim_object {{{\n *\n * Required to reasonably calculate 'sunrise' and holidays.\n */\n let location_cc, location_state, lat, lon;\n if (typeof nominatim_object === 'object' && nominatim_object !== null) {\n if (typeof nominatim_object.address === 'object') {\n if (typeof nominatim_object.address.country_code === 'string') {\n location_cc = nominatim_object.address.country_code;\n }\n if (typeof nominatim_object.address.state === 'string') {\n location_state = nominatim_object.address.state;\n } else if (typeof nominatim_object.address.county === 'string') {\n location_state = nominatim_object.address.county;\n }\n }\n\n if (typeof nominatim_object.lon === 'string' && typeof nominatim_object.lat === 'string') {\n lat = nominatim_object.lat;\n lon = nominatim_object.lon;\n }\n } else if (nominatim_object === null) {\n /* Set the location to some random value. This can be used if you don’t\n * care about correct opening hours for more complex opening_hours\n * values.\n */\n location_cc = 'de';\n location_state = 'Baden-W\\u00fcrttemberg';\n lat = '49.5400039';\n lon = '9.7937133';\n } else if (typeof nominatim_object !== 'undefined') {\n throw 'The nominatim_object parameter is of unknown type.'\n + ' Given ' + typeof(nominatim_object)\n + ', expected object.';\n }\n\n function getTimevarMinutes(date, timevar_name, timevar_add_minutes) {\n const event_time = getTimes(date, lat, lon)[timevar_name];\n return event_time.getHours() * 60 + event_time.getMinutes() + timevar_add_minutes;\n }\n /* }}} */\n\n /* mode, locale, warnings_severity, tag_key, map_value {{{\n *\n * 0: time ranges (default), tags: opening_hours, lit, …\n * 1: points in time\n * 2: both (time ranges and points in time), tags: collection_times, service_times\n */\n\n let warnings_severity = 4;\n /* Default, currently the highest severity supported.\n * This number is expected to be >= 4. This is not explicitly checked.\n */\n\n let oh_mode;\n let oh_map_value = false;\n let oh_key, oh_regex_key;\n\n if (typeof optional_conf_parm === 'number') {\n oh_mode = optional_conf_parm;\n } else if (typeof optional_conf_parm === 'object') {\n if (checkOptionalConfParm('mode', 'number')) {\n oh_mode = optional_conf_parm['mode'];\n }\n if (checkOptionalConfParm('warnings_severity', 'number')) {\n warnings_severity = optional_conf_parm['warnings_severity'];\n if ([ 0, 1, 2, 3, 4, 5, 6, 7 ].indexOf(warnings_severity) === -1) {\n throw t('warnings severity', { 'severity': warnings_severity, 'allowed': '[ 0, 1, 2, 3, 4, 5, 6, 7 ]' });\n }\n }\n if (checkOptionalConfParm('tag_key', 'string')) {\n oh_key = optional_conf_parm['tag_key'];\n }\n if (checkOptionalConfParm('map_value', 'boolean')) {\n oh_map_value = optional_conf_parm.map_value;\n }\n } else if (typeof optional_conf_parm !== 'undefined') {\n throw t('optional conf parm type', { 'given': typeof(optional_conf_parm) });\n }\n\n if (typeof oh_key === 'string') {\n oh_regex_key = getRegexKeyForKeyFromOsmDefaults(oh_key)\n\n if (oh_map_value\n && typeof osm_tag_defaults[oh_regex_key] === 'object'\n && typeof osm_tag_defaults[oh_regex_key]['map'] === 'object'\n && typeof osm_tag_defaults[oh_regex_key]['map'][value] === 'string'\n ) {\n\n value = osm_tag_defaults[oh_regex_key]['map'][value];\n }\n } else if (oh_map_value) {\n throw t('conf param tag key missing');\n }\n\n if (typeof oh_mode === 'undefined') {\n if (typeof oh_key === 'string' && osm_tag_defaults[oh_regex_key] !== undefined) {\n if (typeof osm_tag_defaults[oh_regex_key]['mode'] === 'number') {\n oh_mode = osm_tag_defaults[oh_regex_key]['mode'];\n } else {\n oh_mode = 0;\n }\n } else {\n oh_mode = 0;\n }\n } else if ([ 0, 1, 2 ].indexOf(oh_mode) === -1) {\n throw t('conf param mode invalid', { 'given': oh_mode, 'allowed': '[ 0, 1, 2 ]' });\n }\n\n /* }}} */\n /* }}} */\n\n // Tokenize value and generate selector functions. {{{\n if (typeof value !== 'string') {\n throw t('no string');\n }\n if (/^(?:\\s*;?)+$/.test(value)) {\n throw t('nothing');\n }\n\n const parsing_warnings = []; // Elements are arrays [nrule, at, type, message, tokens_to_use?] fed into formatWarnErrorMessage().\n let done_with_warnings = false; // The functions which returns warnings can be called multiple times.\n let done_with_selector_reordering = false;\n let done_with_selector_reordering_warnings = false;\n // Rule indices for which prettify must keep the original selector order,\n // because reordering time/state would change the meaning (#596).\n const rules_without_selector_reordering = new Set();\n // eslint-disable-next-line no-var\n var tokens = tokenize(value); // TODO: Figure out why tests fail if this is const or let.\n // console.log(JSON.stringify(tokens, null, ' '));\n let prettified_value = '';\n let week_stable = true;\n\n let rule, nrule;\n const rules = [];\n const rule_infos = {};\n /* Not reliable because tokens !== new_tokens */\n // for (var nrule = 0; nrule < tokens.length; nrule++) {\n // rule_infos[nrule] = {};\n // }\n const new_tokens = [];\n\n for (nrule = 0; nrule < tokens.length; nrule++) {\n if (tokens[nrule][0].length === 0) {\n // Rule does contain nothing useful e.g. second rule of '10:00-12:00;' (empty) which needs to be handled.\n parsing_warnings.push([nrule, -1,\n 'nothing_useful',\n t('nothing useful')\n + (nrule === tokens.length - 1 && nrule > 0 && !tokens[nrule][1] ?\n ' ' + t('programmers joke') : '')\n ]);\n continue;\n }\n\n let continue_at = 0;\n let next_rule_is_additional = false;\n\n do {\n if (continue_at === tokens[nrule][0].length) {\n /* Additional rule does contain nothing useful e.g. second rule\n * of '10:00-12:00,' (empty) which needs to be handled.\n */\n break;\n }\n\n rule = {\n // Time selectors\n time: [],\n\n // Temporary array of selectors from time wrapped to the next day\n wraptime: [],\n\n // Date selectors\n weekday: [],\n holiday: [],\n week: [],\n month: [],\n monthday: [],\n year: [],\n\n // Array with non-empty date selector types, with most optimal ordering\n date: [],\n\n fallback: tokens[nrule][1],\n additional: continue_at ? true : false,\n meaning: true,\n unknown: false,\n comment: undefined,\n build_from_token_rule: undefined,\n };\n\n rule.build_from_token_rule = [ nrule, continue_at, new_tokens.length ];\n continue_at = parseGroup(tokens[nrule][0], continue_at, rule, nrule);\n if (typeof continue_at === 'object') {\n continue_at = continue_at[0];\n } else {\n continue_at = 0;\n }\n\n // console.log('Current tokens: ' + JSON.stringify(tokens[nrule], null, ' '));\n\n new_tokens.push(\n [\n tokens[nrule][0].slice(\n rule.build_from_token_rule[1],\n continue_at === 0\n ? tokens[nrule][0].length\n : continue_at\n ),\n tokens[nrule][1],\n tokens[nrule][2],\n ]\n );\n\n if (next_rule_is_additional && new_tokens.length > 1) {\n // Move 'rule separator' from last token of last rule to first token of this rule.\n new_tokens[new_tokens.length - 1][0].unshift(new_tokens[new_tokens.length - 2][0].pop());\n }\n\n next_rule_is_additional = continue_at === 0 ? false : true;\n\n const optimal_selector_order = ['year', 'holiday', 'month', 'monthday', 'week', 'weekday'];\n optimal_selector_order.forEach(function (element) {\n if (rule[element].length > 0) {\n rule.date.push(rule[element]);\n rule[element] = [];\n }\n });\n\n // console.log('Rule: ' + JSON.stringify(rule, null, ' '));\n rules.push(rule);\n\n /* This handles selectors with time ranges wrapping over midnight (e.g. 10:00-02:00).\n * It generates wrappers for all selectors and creates a new rule.\n */\n if (rule.wraptime.length > 0) {\n const wrapselectors = {\n time: rule.wraptime,\n date: [],\n\n meaning: rule.meaning,\n unknown: rule.unknown,\n comment: rule.comment,\n\n wrapped: true,\n build_from_token_rule: rule.build_from_token_rule,\n };\n\n for (let dselg = 0; dselg < rule.date.length; dselg++) {\n wrapselectors.date.push([]);\n for (let dsel = 0; dsel < rule.date[dselg].length; dsel++) {\n wrapselectors.date[wrapselectors.date.length-1].push(\n generateDateShifter(rule.date[dselg][dsel], -msec_in_day)\n );\n }\n }\n\n rules.push(wrapselectors);\n }\n } while (continue_at);\n }\n // console.log(JSON.stringify(tokens, null, ' '));\n // console.log(JSON.stringify(new_tokens, null, ' '));\n /* }}} */\n\n /* Helper functions {{{ */\n /**\n * Get the regex key for an OpenStreetMap tag key. {{{\n * @param {string} key Tag key, e.g. `opening_hours:kitchen`.\n * @returns {string|undefined} Matching key from `osm_tag_defaults`.\n */\n function getRegexKeyForKeyFromOsmDefaults(key) {\n let regex_key;\n let exact_match = false;\n\n Object.keys(osm_tag_defaults).forEach(function (osm_key) {\n if (exact_match === true) {\n return;\n }\n if (key === osm_key) { // Exact match.\n regex_key = osm_key;\n // We can't just return here as some old browsers\n // don't interpret it as a final return (like a loop break)\n exact_match = true;\n } else if (new RegExp(osm_key).test(key)) {\n regex_key = osm_key;\n }\n });\n return regex_key;\n }\n /* }}} */\n\n /**\n * Check the type of an optional constructor parameter. {{{\n * @param {string} key Key of `optional_conf_parm`.\n * @param {string} expected_type Expected result of `typeof`.\n * @returns {boolean} Whether the value has the expected type.\n */\n function checkOptionalConfParm(key, expected_type) {\n if (typeof optional_conf_parm[key] === expected_type) {\n return true;\n } else if (typeof optional_conf_parm[key] !== 'undefined') {\n throw t('conf param unknown type', { 'key': key, 'given': typeof(optional_conf_parm[key]), 'expected': expected_type });\n }\n return false;\n }\n /* }}} */\n /* }}} */\n\n /**\n * Resolve the position a warning or error points to. {{{\n * Computes the base string and the character offset into it where the\n * `<--- ` marker belongs. This is the single source of truth for both the\n * formatted string (formatWarnErrorMessage) and the structured warning\n * objects (getStructuredWarnings), so both stay consistent.\n * @param {number|string} nrule Rule number starting with 0. `-1` means an\n * error during tokenization; a string means the prettified value.\n * @param {number} at Token position. `-1` means the end of a rule.\n * @param {Array} [tokens_to_use] Token array, defaulting to `tokens`. Pass\n * `new_tokens` from `getWarnings()` because additional rules can make\n * it longer than `tokens`.\n * @returns {{value: string, position: number|null}} The value the position\n * refers to and its character offset, or `null` if it is unknown.\n */\n function resolveWarnErrorPosition(nrule, at, tokens_to_use) {\n if (typeof tokens_to_use === 'undefined') {\n tokens_to_use = tokens;\n }\n if (typeof nrule === 'number') {\n let pos;\n if (nrule === -1) {\n // at is remaining value.length at the point of the error.\n pos = value.length - at;\n } else if (typeof tokens_to_use[nrule] === 'undefined') {\n // Caller passed the wrong token array (tokens instead of new_tokens?).\n formatLibraryBugMessage('Bug in warning generation code: tokens_to_use[nrule] is undefined for nrule=' + nrule + '.');\n pos = value.length;\n } else if (typeof tokens_to_use[nrule][0][at] === 'undefined') {\n if (typeof tokens_to_use[nrule][0] !== 'undefined' && at === -1) {\n // at === -1: point to end of rule, use offset of next rule entry if available.\n pos = value.length;\n if (typeof tokens_to_use[nrule+1] === 'object' && typeof tokens_to_use[nrule+1][2] === 'number') {\n pos -= tokens_to_use[nrule+1][2];\n } else if (typeof tokens_to_use[nrule][2] === 'number') {\n pos -= tokens_to_use[nrule][2];\n }\n } else {\n // Token position is out of range. Run real_test regularly to catch this.\n formatLibraryBugMessage('Bug in warning generation code which could not determine the exact position of the warning or error in value.');\n pos = value.length;\n if (typeof tokens_to_use[nrule][2] === 'number') {\n // Fallback: point to last token in the rule which caused the problem.\n pos -= tokens_to_use[nrule][2];\n console.warn('Last token for rule: ' + JSON.stringify(tokens_to_use[nrule]));\n } else {\n console.warn('tokens_to_use[nrule][2] is undefined. This is ok if nrule is the last rule.');\n }\n }\n } else {\n pos = value.length;\n if (typeof tokens_to_use[nrule][0][at+1] === 'object') {\n pos -= tokens_to_use[nrule][0][at+1][2];\n } else if (typeof tokens_to_use[nrule][2] === 'number') {\n pos -= tokens_to_use[nrule][2];\n }\n }\n return { value: value, position: pos };\n } else if (typeof nrule === 'string') {\n return { value: nrule, position: at };\n }\n return { value: value, position: null };\n }\n /* }}} */\n\n /**\n * Format a warning or error message and mark its position in the input. {{{\n * @param {number|string} nrule Rule number, or the prettified value when the\n * position refers to that value.\n * @param {number} at Token or character position to mark.\n * @param {string} message Human-readable warning or error message.\n * @param {Array} [tokens_to_use] Token array used to resolve the position.\n * @returns {string} Message with the position marker, or the original message\n * when no position can be determined.\n */\n function formatWarnErrorMessage(nrule, at, message, tokens_to_use) {\n // console.log(`Called formatWarnErrorMessage: ${nrule}, ${at}, ${message}`);\n const resolved = resolveWarnErrorPosition(nrule, at, tokens_to_use);\n if (resolved.position === null) {\n return message;\n }\n return resolved.value.substring(0, resolved.position) + ' <--- (' + message + ')';\n }\n /* }}} */\n\n /**\n * Format an internal library error message. {{{\n * @param {string} [message] Human-readable error message.\n * @param {string} [text_template] Translation template, defaulting to `library bug`.\n * @returns {string} Formatted error message.\n */\n function formatLibraryBugMessage(message, text_template) {\n if (typeof message === 'undefined') {\n message = '';\n } else {\n message = ' ' + message;\n }\n if (typeof text_template !== 'string') {\n text_template = 'library bug';\n }\n\n message = t(text_template, { 'value': value, 'url': repository_url, 'message': message });\n console.error(message);\n return message;\n } /* }}} */\n\n /**\n * Tokenize an opening-hours input stream. {{{\n * @param {string} value Raw opening-hours value.\n * @returns {Array} Tokenized list. See the internal documentation in `docs/`.\n */\n function tokenize(value) {\n // Negative list approach: Match anything that's NOT punctuation, digits, or special chars\n // This automatically supports all Unicode letter categories without explicit enumeration\n const WORD_REGEX = /^([^\\s\\d\\p{P}\\p{S}\\p{C}]{2,})(?=\\s|$|[\\s\\d\\p{P}\\p{S}\\p{C}])((?:[.]| before| after)?)/iu;\n\n const all_tokens = [];\n let curr_rule_tokens = [];\n\n // Two-phase locale resolver: collect the raw lexemes of the weekday/month\n // operands per rule, then resolve each group together (Pass B). Grouping\n // per rule gives cross-token coherence (e.g. понедельник-пятница) that a\n // greedy single-token pass cannot, and the POI country adds the geo tier.\n const resolver_region_langs = regionLanguages(location_cc, resolver_layers);\n const range_meaning_index = { weekday: weekdays, month: months };\n let curr_rule_range_raw = { weekday: [], month: [] };\n const recordRangeTerm = (raw, range_type, token_index, warning_index) => {\n if (range_type === 'weekday' || range_type === 'month') {\n curr_rule_range_raw[range_type].push({\n raw,\n token_index,\n warning_index: typeof warning_index === 'number' ? warning_index : null,\n });\n }\n };\n const finalizeRuleRanges = () => {\n for (const range_type of ['weekday', 'month']) {\n const entries = curr_rule_range_raw[range_type];\n if (entries.length === 0) {\n continue;\n }\n const res = resolveRange(entries.map(entry => entry.raw), {\n locale: parser_locale,\n type: range_type,\n layers: resolver_layers,\n regionLangs: resolver_region_langs,\n });\n res.tokens.forEach((resolved, index) => {\n // Reject foreign/ambiguous tokens the resolver actively rejects,\n // but defer 'unknown' ones to the manual correction table.\n if (resolved.confidence === 'error' && resolved.kind !== 'unknown') {\n const token = curr_rule_tokens[entries[index].token_index];\n const at = token ? token[2] : -1;\n throw formatWarnErrorMessage(-1, at, resolved.message);\n }\n // Correct the token to the context-resolved meaning, overriding a\n // locale-blind flat-map guess (e.g. `ne`→Su becomes Th at a Sesotho\n // location). The resolver — not the greedy map — is authoritative.\n if (resolved.meaning && resolved.kind !== 'unknown') {\n const meaning_index = range_meaning_index[range_type].indexOf(resolved.meaning);\n const token = curr_rule_tokens[entries[index].token_index];\n if (meaning_index >= 0 && token && token[1] === range_type) {\n const overridden = token[0] !== meaning_index;\n if (overridden) {\n token[0] = meaning_index;\n }\n // Rewrite the correction warning when the resolver overrode the\n // meaning, or append an auto-generated note when the lexeme is\n // cross-locale ambiguous (e.g. `so` = Su here, Sa elsewhere).\n const has_note = Array.isArray(resolved.alternatives) && resolved.alternatives.length > 0;\n if (overridden || has_note) {\n const raw_lexeme = entries[index].raw;\n let message = t('please use English abbreviation ok for ko',\n { ko: raw_lexeme, ok: resolved.meaning });\n if (has_note) {\n const alternatives = resolved.alternatives\n .map(alt => alt.meaning + ' (' + alt.langs.join(', ') + ')')\n .join('; ');\n message += ' ' + t('ambiguous elsewhere', { ko: raw_lexeme, alternatives });\n }\n // Rewrite exactly the warning this token produced (tracked\n // by index), so a repeated lexeme in the same rule cannot\n // patch the wrong occurrence.\n const warn_idx = entries[index].warning_index;\n if (warn_idx !== null && warn_idx >= 0 && warn_idx < parsing_warnings.length) {\n const warning = parsing_warnings[warn_idx];\n if (warning[2] === 'word_error_correction'\n && typeof warning[3] === 'string') {\n warning[3] = message;\n }\n }\n }\n }\n }\n });\n }\n curr_rule_range_raw = { weekday: [], month: [] };\n };\n\n // Recognise a word the flat map does not know but the cross-locale index\n // does (e.g. an ambiguous foreign weekday like `ne`). Returns a provisional\n // { index, type }; finalizeRuleRanges resolves the real meaning by context.\n const recognizeRangeToken = (word) => {\n const candidates = resolver_layers.crossLocale[normalizeToken(word)];\n if (!candidates) {\n return null;\n }\n const weekday = candidates.find(candidate => candidate.type === 'weekday');\n const month = candidates.find(candidate => candidate.type === 'month');\n // The same lexeme can be a weekday in one language and a month in\n // another. Without grammatical context we cannot commit to a type\n // here, so defer to the normal error handling instead of guessing.\n if (weekday && month) {\n return null;\n }\n if (weekday) {\n return { index: weekdays.indexOf(weekday.meaning), type: 'weekday' };\n }\n if (month) {\n return { index: months.indexOf(month.meaning), type: 'month' };\n }\n return null;\n };\n\n let last_rule_fallback_terminated = false;\n const NUMERIC_DAY_OFFSET_PATTERN = String.raw`\\d+\\s*days?(?!\\s*(?:a|\\/)\\s*week)\\b`;\n const ERROR_TOLERANCE_ALTERNATIVES = [\n String.raw`&|_|→|‐|‑|‒|–|−|—|ー|=|·`,\n String.raw`öffnungszeit(?:en)?:?|opening_hours\\s*=|\\?|~|~|:`,\n String.raw`always (?:open|closed)|24x7|24 hours 7 days a week|24 hours`,\n String.raw`7 ?days(?:(?: a |\\/)week)?|7j?\\/7|all days?|every day`,\n String.raw`(?:bis|till?|-|–)? ?(?:open ?end|late)`,\n String.raw`(?:(?:one )?day (?:before|after) )?(?:school|public) holidays?`,\n String.raw`days(?=\\s|$|[^\\p{L}_])|до|рм|ам|jours fériés|on work days?|sonntags?`,\n String.raw`(?:nur |an )?sonn-?(?:(?: und |\\/)feiertag(?:s|en?)?)?`,\n String.raw`(?:an )?feiertag(?:s|en?)?|(?:nach|on|by) (?:appointments?|vereinbarung|absprache)`,\n String.raw`p\\.m\\.|a\\.m\\.`,\n String.raw`(?:[^\\s\\d\\p{P}\\p{S}\\p{C}]|_)+(?=\\s|$|[\\s\\d\\p{Po}\\p{Ps}\\p{Pe}\\p{Pd}\\p{Pf}\\p{Pi}\\p{S}\\p{C}])`,\n String.raw`à|á|mo|tu|we|th|fr|sa|su|jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec`,\n ].join('|');\n const ERROR_TOLERANCE_REGEX = new RegExp(\n String.raw`^(?!${NUMERIC_DAY_OFFSET_PATTERN})(${ERROR_TOLERANCE_ALTERNATIVES})(\\.?)`,\n 'iu'\n );\n while (value !== '') {\n /* Ordered after likelihood of input for performance reasons.\n * Also, error tolerance is supposed to happen at the end.\n */\n // console.log(\"Parsing value: \" + value);\n\n // Check correction phrases before the regular word and error-tolerance patterns.\n const phrase_match = findPhraseCorrection(value);\n let tmp = phrase_match || value.match(WORD_REGEX);\n let token_from_map = undefined;\n if (!phrase_match && tmp && tmp[2] === '') {\n token_from_map = string_to_token_map[tmp[1].toLowerCase()];\n }\n if (typeof token_from_map === 'object') {\n curr_rule_tokens.push(token_from_map.concat([value.length]));\n recordRangeTerm(tmp[1], token_from_map[1], curr_rule_tokens.length - 1);\n value = value.substr(tmp[1].length);\n } else if ((tmp = value.match(/^\\s+/))) {\n // whitespace is ignored\n value = value.substr(tmp[0].length);\n } else if ((tmp = value.match(/^24\\/7/))) {\n // Reserved keyword.\n curr_rule_tokens.push([tmp[0], tmp[0], value.length ]);\n value = value.substr(tmp[0].length);\n } else if (/^;/.test(value)) {\n // semicolon terminates rule.\n // Next token belong to a new rule.\n finalizeRuleRanges();\n all_tokens.push([ curr_rule_tokens, last_rule_fallback_terminated, value.length ]);\n value = value.substr(1);\n\n curr_rule_tokens = [];\n last_rule_fallback_terminated = false;\n } else if (/^[:.]/.test(value)) {\n // Time separator (timesep).\n if (value[0] === '.' && !done_with_warnings) {\n parsing_warnings.push([ -1, value.length - 1, 'hour_min_separator', t('hour min separator')]);\n }\n curr_rule_tokens.push([ ':', 'timesep', value.length ]);\n value = value.substr(1);\n } else if ((tmp = value.match(/^(?:PH|SH)/i))) {\n // special day name (holidays)\n curr_rule_tokens.push([tmp[0].toUpperCase(), 'holiday', value.length ]);\n value = value.substr(2);\n } else if ((tmp = value.match(/^[°\\u2070-\\u209F\\u00B2\\u00B3\\u00B9]{1,2}/))) {\n const unicode_code_point_to_digit = {\n 176: 0,\n 0x2070: 0,\n 185: 1,\n 178: 2,\n 179: 3,\n }\n const regular_number = tmp[0].split('').map(function (ch) {\n const code_point = ch.charCodeAt(0);\n if (typeof unicode_code_point_to_digit[code_point] === 'number') {\n return unicode_code_point_to_digit[code_point];\n } else if (0x2074 <= code_point && code_point <= 0x2079) {\n return code_point - 0x2070;\n } else if (0x2080 <= code_point && code_point <= 0x2089) {\n return code_point - 0x2080;\n }\n }).join('');\n let ok = '';\n if (curr_rule_tokens.length > 0 && matchTokens(curr_rule_tokens, curr_rule_tokens.length-1, 'number')) {\n ok += ':';\n }\n ok += regular_number;\n if (!done_with_warnings) {\n for (let i = 0; i <= tmp[0].length; i++) {\n if (value.charCodeAt(i) === 176) {\n parsing_warnings.push([ -1, value.length - (1 + i),\n 'rant_degree_sign_used_for_zero', t('rant degree sign used for zero')]);\n }\n }\n parsing_warnings.push([ -1, value.length - tmp[0].length,\n 'please_use_ok_for_ko', t('please use ok for ko', {'ko': tmp[0], 'ok': ok})]);\n }\n value = ok + value.substr(tmp[0].length);\n } else if ((tmp = phrase_match || value.match(ERROR_TOLERANCE_REGEX))) {\n /* Handle all remaining words and specific other characters with error tolerance.\n *\n * à|á: Word boundary does not work with Unicode chars: 'test à test'.match(/\\bà\\b/i)\n * https://stackoverflow.com/questions/10590098/javascript-regexp-word-boundaries-unicode-characters\n * Order in the regular expression capturing group is important in some cases.\n *\n * mo|tu|we|th|fr|sa|su|jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec: Prefer defended keywords\n * if used in cases like 'mo12:00-14:00' (when keyword is followed by number).\n */\n const lower_word = tmp[1].toLowerCase();\n const warn_count_before = parsing_warnings.length;\n // returnCorrectWordOrToken looks up the same correction_entries,\n // so a pre-matched phrase resolves here just like a single word.\n let correct_val = returnCorrectWordOrToken(lower_word, value.length);\n // A word_error_correction warning, if any, is the last one pushed by\n // returnCorrectWordOrToken; remember its index so the resolver can\n // rewrite exactly this warning later (not a same-word duplicate).\n const correction_warning_index = parsing_warnings.length > warn_count_before\n ? parsing_warnings.length - 1\n : null;\n // console.log('Error tolerance for string \"' + tmp[1] + '\" returned \"' + correct_val + '\".');\n if (typeof correct_val === 'object') {\n curr_rule_tokens.push([ correct_val[0], correct_val[1], value.length ]);\n recordRangeTerm(lower_word, correct_val[1], curr_rule_tokens.length - 1);\n value = value.substr(tmp[0].length);\n } else if (typeof correct_val === 'string') {\n if (correct_val === 'am' || correct_val === 'pm') {\n let hours_token_at = curr_rule_tokens.length - 1;\n let hours_token;\n if (hours_token_at >= 0) {\n if (hours_token_at -2 >= 0 &&\n matchTokens(\n curr_rule_tokens, hours_token_at - 2,\n 'number', 'timesep', 'number'\n )\n ) {\n hours_token_at -= 2;\n hours_token = curr_rule_tokens[hours_token_at];\n } else if (matchTokens(curr_rule_tokens, hours_token_at, 'number')) {\n hours_token = curr_rule_tokens[hours_token_at];\n }\n\n if (typeof hours_token === 'object') {\n if (correct_val === 'pm' && hours_token[0] < 12) {\n hours_token[0] += 12;\n }\n if (correct_val === 'am' && hours_token[0] === 12) {\n hours_token[0] = 0;\n }\n curr_rule_tokens[hours_token_at] = hours_token;\n }\n }\n correct_val = '';\n }\n const correct_tokens = tokenize(correct_val)[0];\n if (correct_tokens[1] === true) { // last_rule_fallback_terminated\n throw formatLibraryBugMessage();\n }\n for (let i = 0; i < correct_tokens[0].length; i++) {\n curr_rule_tokens.push([correct_tokens[0][i][0], correct_tokens[0][i][1], value.length]);\n // value.length - tmp[0].length does not have the desired effect for all test cases.\n }\n if (correct_tokens[0].length === 1) {\n recordRangeTerm(lower_word, correct_tokens[0][0][1], curr_rule_tokens.length - 1, correction_warning_index);\n }\n\n value = value.substr(tmp[0].length);\n // value = correct_val + value.substr(tmp[0].length);\n // Does not work because it would generate the wrong length for formatWarnErrorMessage.\n } else {\n const recognized = recognizeRangeToken(lower_word);\n if (recognized && recognized.index >= 0) {\n // Not in the flat map, but the cross-locale index recognises it\n // as a weekday/month name. Push provisionally; finalizeRuleRanges\n // resolves the actual meaning by locale/geo/coherence or rejects it.\n curr_rule_tokens.push([recognized.index, recognized.type, value.length]);\n // Emit the same \"use the English abbreviation\" hint the flat map\n // used to; finalizeRuleRanges rewrites it if the resolved meaning\n // differs from this provisional one.\n let recognition_warning_index = null;\n if (!done_with_warnings) {\n const provisional = (recognized.type === 'weekday' ? weekdays : months)[recognized.index];\n recognition_warning_index = parsing_warnings.length;\n parsing_warnings.push([\n -1,\n value.length - lower_word.length,\n 'word_error_correction',\n t('please use English abbreviation ok for ko', { ko: lower_word, ok: provisional }),\n ]);\n }\n recordRangeTerm(lower_word, recognized.type, curr_rule_tokens.length - 1, recognition_warning_index);\n value = value.substr(tmp[0].length);\n } else if (ambiguous_season_words.has(lower_word)) {\n throw formatWarnErrorMessage(\n -1,\n value.length - tmp[0].length,\n t('season words ambiguous')\n );\n } else {\n // No correction available. Insert as single character token and let the parser handle the error.\n curr_rule_tokens.push([value[0].toLowerCase(), value[0].toLowerCase(), value.length - 1 ]);\n value = value.substr(1);\n }\n }\n if (typeof tmp[2] === 'string' && tmp[2] !== '' && !done_with_warnings) {\n parsing_warnings.push([ -1, value.length, 'omit_ko', t('omit ko', {'ko': tmp[2]})]);\n }\n } else if ((tmp = value.match(/^(\\d+)(?:([.])([^\\d]))?/))) {\n // number\n if (Number(tmp[1]) > 1900) { // Assumed to be a year number.\n curr_rule_tokens.push([Number(tmp[1]), 'year', value.length ]);\n if (Number(tmp[1]) >= 2100) // Probably an error\n parsing_warnings.push([ -1, value.length - 1,\n 'interpreted_as_year', t('interpreted as year', {number: Number(tmp[1])})\n ]);\n } else {\n const number_token = [ Number(tmp[1]), 'number', value.length ];\n // Store whether the original numeric lexeme had a single digit (e.g. \"9\").\n // Only consulted at hour positions, where a single digit (0-9) is ambiguous.\n number_token.single_digit_lexeme = tmp[1].length === 1;\n curr_rule_tokens.push(number_token);\n }\n\n value = value.substr(tmp[1].length + (typeof tmp[2] === 'string' ? tmp[2].length : 0));\n if (typeof tmp[2] === 'string' && tmp[2] !== '' && !done_with_warnings) {\n parsing_warnings.push([ -1, value.length, 'omit_ko', t('omit ko', {'ko': tmp[2]})]);\n }\n } else if (/^\\|\\|/.test(value)) {\n // || terminates rule.\n // Next token belong to a fallback rule.\n if (curr_rule_tokens.length === 0) {\n throw formatWarnErrorMessage(-1, value.length - 2, t('rule before fallback empty'));\n }\n\n finalizeRuleRanges();\n all_tokens.push([ curr_rule_tokens, last_rule_fallback_terminated, value.length ]);\n curr_rule_tokens = [];\n // curr_rule_tokens = [ [ '||', 'rule separator', value.length ] ];\n // FIXME: Use this. Unknown bug needs to be solved in the process.\n value = value.substr(2);\n\n last_rule_fallback_terminated = true;\n } else if ((tmp = value.match(/^\"([^\"]+)\"/))) {\n // Comment following the specification.\n // Any character is allowed inside the comment except \" itself.\n curr_rule_tokens.push([tmp[1], 'comment', value.length ]);\n value = value.substr(tmp[0].length);\n } else if ((tmp = value.match(/^([\"'„“‚‘’«「『])([^\"'“”‘’»」』;|]*)([\"'”“‘’»」』])/))) {\n // Comments with error tolerance.\n // The comments still have to be somewhat correct meaning\n // the start and end quote signs used have to be\n // appropriate. So “testing„ will not match as it is not a\n // quote but rather something unknown which the user should\n // fix first.\n // console.log('Matched: ' + JSON.stringify(tmp));\n for (let pos = 1; pos <= 3; pos += 2) {\n // console.log('Pos: ' + pos + ', substring: ' + tmp[pos]);\n const correct_val = returnCorrectWordOrToken(tmp[pos],\n value.length - (pos === 3 ? tmp[1].length + tmp[2].length : 0)\n );\n if (typeof correct_val !== 'string' && tmp[pos] !== '\"') {\n throw formatLibraryBugMessage(\n 'A character for error tolerance was allowed in the regular expression'\n + ' but is not covered by word_error_correction'\n + ' which is needed to format a proper message for the user.'\n );\n }\n }\n curr_rule_tokens.push([tmp[2], 'comment', value.length ]);\n value = value.substr(tmp[0].length);\n } else if (/^(?:␣|\\s)/.test(value)) {\n // Using \"␣\" as space is not expected to be a normal\n // mistake. Just ignore it to make using taginfo easier.\n value = value.substr(1);\n } else {\n // other single-character tokens\n curr_rule_tokens.push([value[0].toLowerCase(), value[0].toLowerCase(), value.length ]);\n value = value.substr(1);\n }\n }\n\n finalizeRuleRanges();\n all_tokens.push([ curr_rule_tokens, last_rule_fallback_terminated ]);\n\n return all_tokens;\n }\n /* }}} */\n\n /* error correction/tolerance function {{{\n * Go through word_error_correction hash and get correct value back.\n *\n * :param word: Wrong word or character.\n * :param value_length: Current value_length (used for warnings).\n * :returns:\n * * (valid) opening_hours sub string.\n * * object with [ internal_value, token_name ] if value is correct.\n * * undefined if word could not be found (and thus is not corrected).\n */\n function returnCorrectWordOrToken(word, value_length) {\n let correctWordOrToken;\n const token_from_map = string_to_token_map[word];\n if (typeof token_from_map === 'object') {\n return token_from_map;\n }\n\n // Check for ambiguous words first - show warning and provide default correction\n if (word_error_correction['Ambiguous words'] && word_error_correction['Ambiguous words'][word]) {\n if (!done_with_warnings) {\n const warningMessage = word_error_correction['Ambiguous words'][word];\n parsing_warnings.push([\n -1,\n value_length - word.length,\n 'ambiguous_word',\n warningMessage\n ]);\n }\n // For ambiguous words, extract the first possible correction from the warning message\n // and use it as a default to keep parsing working\n const warningText = word_error_correction['Ambiguous words'][word];\n const match = warningText.match(/: (\\w+) \\(/);\n if (match && match[1]) {\n return match[1]; // Return the first suggested correction (e.g. \"Nov\" from \"Nov (Czech)\")\n }\n // Fallback: continue with normal processing\n return undefined;\n }\n\n const correction = correction_entries.find(entry =>\n new RegExp('^' + entry.pattern + '$', 'iu').test(word)\n );\n if (correction) {\n if (!done_with_warnings) {\n const warningMessage = t(correction.comment, {'ko': word, 'ok': correction.replacement});\n\n parsing_warnings.push([\n -1,\n value_length - word.length,\n 'word_error_correction',\n warningMessage\n ]);\n }\n correctWordOrToken = correction.replacement;\n }\n\n return correctWordOrToken;\n }\n /* }}} */\n\n /* return warnings as list {{{\n *\n * :param it: Iterator object if available (optional).\n * :param structured: If true, return structured warning objects\n * ({ type, message, value, position }) instead of formatted message strings.\n * :returns: Warnings as list. By default one formatted message string per element.\n * With structured === true: array of objects with `type`, `message`,\n * `value` (the string the offset refers to) and `position` (character\n * offset of the `<--- ` marker, or null) fields.\n */\n function getWarnings(it, structured = false) {\n if (warnings_severity < 4) {\n return [];\n }\n\n // FIXME: Guard is too broad; `typeof null === 'object'`\n if (!done_with_warnings && typeof it === 'object') {\n /* getWarnings was called in a state without critical errors.\n * We can do extended tests.\n */\n\n /* Place all tests in this function if an additional (high\n * level) test is added and this does not require to rewrite\n * big parts of (sub) selector parsers only to get the\n * position. If that is the case, then rather place the test\n * code in the (sub) selector parser function directly.\n */\n\n const wide_range_selector_order = [ 'year', 'month', 'week', 'holiday' ];\n const small_range_selector_order = [ 'weekday', 'time', '24/7', 'state', 'comment'];\n\n // How many times was a selector_type used per rule? {{{\n const used_selectors = [];\n const used_selectors_types_array = [];\n const has_token = {};\n\n for (let nrule = 0; nrule < new_tokens.length; nrule++) {\n if (new_tokens[nrule][0].length === 0) continue;\n // Rule does contain nothing useful e.g. second rule of '10:00-12:00;' (empty) which needs to be handled.\n\n let selector_start_end_type = [ 0, 0, undefined ];\n // console.log(new_tokens[nrule][0]);\n\n used_selectors[nrule] = {};\n used_selectors_types_array[nrule] = [];\n\n do {\n selector_start_end_type = getSelectorRange(new_tokens[nrule][0], selector_start_end_type[1]);\n // console.log(selector_start_end_type, new_tokens[nrule][0].length);\n\n for (let token_pos = 0; token_pos <= selector_start_end_type[1]; token_pos++) {\n if (typeof new_tokens[nrule][0][token_pos] === 'object' && new_tokens[nrule][0][token_pos][0] === 'PH') {\n has_token['PH'] = true;\n }\n }\n\n if (selector_start_end_type[0] === selector_start_end_type[1] &&\n new_tokens[nrule][0][selector_start_end_type[0]][0] === '24/7'\n ) {\n has_token['24/7'] = true;\n }\n\n if (typeof used_selectors[nrule][selector_start_end_type[2]] !== 'object') {\n used_selectors[nrule][selector_start_end_type[2]] = [ selector_start_end_type[1] ];\n } else {\n used_selectors[nrule][selector_start_end_type[2]].push(selector_start_end_type[1]);\n }\n used_selectors_types_array[nrule].push(selector_start_end_type[2]);\n\n selector_start_end_type[1]++;\n } while (selector_start_end_type[1] < new_tokens[nrule][0].length);\n }\n // console.log('used_selectors: ' + JSON.stringify(used_selectors, null, ' '));\n // console.log('used_selectors_types_array: ' + JSON.stringify(used_selectors_types_array, null, ' '));\n /* }}} */\n\n for (let nrule = 0; nrule < used_selectors.length; nrule++) {\n\n /* Check if more than one not connected selector of the same type is used in one rule {{{ */\n Object.keys(used_selectors[nrule]).forEach(function (selector_type) {\n // console.log(selector_type + ' use at: ' + used_selectors[nrule][selector_type].length);\n if (used_selectors[nrule][selector_type].length > 1) {\n parsing_warnings.push([nrule, used_selectors[nrule][selector_type][used_selectors[nrule][selector_type].length - 1],\n 'use_multi',\n t('use multi', {\n 'count': used_selectors[nrule][selector_type].length,\n 'part2': (\n /^(?:comment|state)/.test(selector_type) ?\n t('selector multi 2a', {'what': (selector_type === 'state' ? t('selector state'): t('comments'))})\n :\n t('selector multi 2b', {'what': t(selector_type + (/^(?:month|weekday)$/.test(selector_type) ? 's' : ' ranges'))})\n )\n }),\n new_tokens]\n );\n done_with_selector_reordering = true; // Correcting the selector order makes no sense if this kind of issue exists.\n }\n });\n /* }}} */\n /* Check if change default state rule is not the first rule {{{ */\n if ( typeof used_selectors[nrule].state === 'object'\n && Object.keys(used_selectors[nrule]).length === 1\n ) {\n if (nrule !== 0) {\n parsing_warnings.push([nrule, new_tokens[nrule][0].length - 1, 'default_state', t('default state'), new_tokens]);\n }\n /* }}} */\n /* Check if a rule (with state open) has no time selector {{{ */\n } else if (typeof used_selectors[nrule].time === 'undefined') {\n if ( ( typeof used_selectors[nrule].state === 'object'\n && new_tokens[nrule][0][used_selectors[nrule].state[0]][0] === 'open'\n && typeof used_selectors[nrule].comment === 'undefined'\n ) || ( typeof used_selectors[nrule].comment === 'undefined'\n && typeof used_selectors[nrule].state === 'undefined'\n ) &&\n typeof used_selectors[nrule]['24/7'] === 'undefined'\n ) {\n\n parsing_warnings.push([nrule, new_tokens[nrule][0].length - 1, 'vague', t('vague'), new_tokens]);\n }\n }\n /* }}} */\n /* Check if empty comment was given {{{ */\n if (typeof used_selectors[nrule].comment === 'object'\n && new_tokens[nrule][0][used_selectors[nrule].comment[0]][0].length === 0\n ) {\n\n parsing_warnings.push([nrule, used_selectors[nrule].comment[0], 'empty_comment', t('empty comment'), new_tokens]);\n }\n /* }}} */\n /* Check for valid use of <separator_for_readability> {{{ */\n for (let i = 0; i < used_selectors_types_array[nrule].length - 1; i++) {\n const selector_type = used_selectors_types_array[nrule][i];\n const next_selector_type = used_selectors_types_array[nrule][i+1];\n if ( ( wide_range_selector_order.indexOf(selector_type) !== -1\n && wide_range_selector_order.indexOf(next_selector_type) !== -1\n ) || ( small_range_selector_order.indexOf(selector_type) !== -1\n && small_range_selector_order.indexOf(next_selector_type) !== -1)\n ) {\n\n if (new_tokens[nrule][0][used_selectors[nrule][selector_type][0]][0] === ':') {\n parsing_warnings.push([nrule, used_selectors[nrule][selector_type][0],\n 'separator_for_readability',\n t('separator_for_readability'),\n new_tokens\n ]);\n }\n }\n }\n /* }}} */\n /* Check for missing use of <additional_rule_separator> for time wrapping midnight {{{ */\n if (typeof rule_infos[nrule] === 'object'\n && typeof rule_infos[nrule]['time_wraps_over_midnight'] === 'boolean'\n && rule_infos[nrule]['time_wraps_over_midnight'] === true\n && typeof used_selectors[nrule+1] === 'object'\n && typeof used_selectors[nrule+1]['rule separator'] === 'undefined' // Not an additional rule\n && new_tokens[nrule+1][1] === false // Not a fallback rule\n ) {\n\n const rules_too_complex = [ nrule, nrule+1 ].map(function (nrule){\n for (let i = 0; i < wide_range_selector_order.length - 1; i++) {\n if (typeof used_selectors[nrule][wide_range_selector_order[i]] === 'object') {\n return true;\n }\n }\n return false;\n });\n const rules_too_complex_count = rules_too_complex.filter(function (el){ return el; }).length;\n let next_rule_selects_next_day = false;\n if (\n typeof rule_infos[nrule] === 'object'\n && typeof rule_infos[nrule] === 'object'\n && typeof rule_infos[nrule]['week_days'] === 'object'\n && typeof rule_infos[nrule+1] === 'object'\n && typeof rule_infos[nrule+1]['week_days'] === 'object'\n ) {\n for (let i = 0; i < rule_infos[nrule]['week_days'].length; i++) {\n const week_day = rule_infos[nrule]['week_days'][i];\n // console.log(rule_infos[nrule+1]['week_days']);\n // console.log(week_day);\n if (rule_infos[nrule+1]['week_days'].indexOf(week_day === 6 ? 0 : week_day+1) !== -1) {\n next_rule_selects_next_day = true;\n break;\n }\n }\n } else {\n next_rule_selects_next_day = true;\n }\n // console.log(rule_infos);\n // console.log(next_rule_selects_next_day);\n const additional_rule_separator_enabled = (optional_conf_parm||{}).additional_rule_separator !== false;\n if (rules_too_complex_count < 2 && next_rule_selects_next_day && additional_rule_separator_enabled) {\n parsing_warnings.push([nrule+1, new_tokens[nrule+1][0].length - 1,\n 'additional_rule_separator_not_used_after_time_wrapping_midnight',\n t('additional_rule_separator not used after time wrapping midnight'),\n new_tokens\n ]);\n }\n }\n /* }}} */\n /* Check if rule with closed|off modifier is additional {{{ */\n if (typeof new_tokens[nrule][0][0] === 'object'\n && new_tokens[nrule][0][0][0] === ','\n && new_tokens[nrule][0][0][1] === 'rule separator'\n && typeof used_selectors[nrule].state === 'object'\n && (\n new_tokens[nrule][0][used_selectors[nrule].state[0]][0] === 'closed'\n || new_tokens[nrule][0][used_selectors[nrule].state[0]][0] === 'off'\n )\n ) {\n\n parsing_warnings.push([nrule, new_tokens[nrule][0].length - 1,\n 'additional_rule_which_evaluates_to_closed',\n t('additional rule which evaluates to closed'),\n new_tokens\n ]);\n // Reordering would move time before state (e.g. \"off\") and\n // can change semantics for additional rules (#596).\n rules_without_selector_reordering.add(nrule);\n }\n /* }}} */\n\n }\n\n /* Check if 24/7 is used and it does not mean 24/7 because there are other rules {{{ */\n const has_advanced = it.advance();\n\n if (has_advanced === true && has_token['24/7'] && !done_with_warnings) {\n parsing_warnings.push([ -1, 0,\n // Probably because of: \"24/7; 12:00-14:00 open\", \". Needs extra testing.\n 'strange_24_7',\n t('strange 24/7')\n ]);\n }\n /* }}} */\n\n /* Check for missing PH. {{{ */\n if ( warnings_severity >= 5\n && !has_token['PH']\n && !has_token['24/7']\n && !done_with_warnings\n && (\n (\n typeof oh_key === 'string'\n && oh_regex_key\n && osm_tag_defaults[oh_regex_key]['warn_for_PH_missing']\n )\n || (typeof oh_key !== 'string')\n )\n ) {\n\n const keys_with_warn_for_PH_missing = [];\n Object.keys(osm_tag_defaults).forEach(function (key) {\n if (osm_tag_defaults[key]['warn_for_PH_missing']) {\n keys_with_warn_for_PH_missing.push(key);\n }\n });\n parsing_warnings.push([ -1, 0,\n 'public_holiday',\n t('public holiday', { 'part2': (typeof oh_key !== 'string'\n ? t('public holiday part2', {'keys': keys_with_warn_for_PH_missing.join(', ')}) : '')})\n // + '(see README how to provide it)' // UI of the evaluation tool does not allow to provide it (currently).\n ]);\n }\n /* }}} */\n\n /* Check if value consists of multiple rules each only using a time selector {{{ */\n if (used_selectors_types_array.length > 1\n && used_selectors_types_array.filter(function (el){\n return el.length === 1 && el[0] === 'time';\n }).length === used_selectors_types_array.length\n ) {\n parsing_warnings.push([ -1, 0,\n 'combine_rules',\n t('combine rules', { 'ok': ',' }),\n ]);\n }\n /* }}} */\n\n prettifyValue();\n }\n done_with_warnings = true;\n\n const warnings = [];\n /* FIXME: Warnings come out in parse order, not sorted by position.\n * The character offset from resolveWarnErrorPosition() would be a good\n * sort key (better than the rule-relative parsing_warnings[1]).\n */\n for (let i = 0; i < parsing_warnings.length; i++) {\n const pw = parsing_warnings[i];\n if (structured) {\n const resolved = resolveWarnErrorPosition(pw[0], pw[1], pw[4]);\n warnings.push({\n type: pw[2],\n message: pw[3],\n value: resolved.value,\n position: resolved.position,\n });\n } else {\n warnings.push( formatWarnErrorMessage(pw[0], pw[1], pw[3], pw[4]) );\n }\n }\n return warnings;\n }\n\n /* Helpers for getWarnings {{{ */\n\n /* Check if token is the begin of a selector and why. {{{\n *\n * :param tokens: List of token objects.\n * :param at: Position where to start.\n * :returns:\n * * false if the current token is not the begin of a selector.\n * * Position in token array from where the decision was made that\n * the token is the start of a selector.\n */\n function tokenIsTheBeginOfSelector(tokens, at) {\n if (typeof tokens[at][3] === 'string') {\n return 3;\n } else if (tokens[at][1] === 'comment'\n || tokens[at][1] === 'state'\n || tokens[at][1] === '24/7'\n || tokens[at][1] === 'rule separator'\n ){\n\n return 1;\n } else {\n return false;\n }\n }\n /* }}} */\n\n /* Get start and end position of a selector. {{{\n * For example this value 'Mo-We,Fr' will return the position of the\n * token lexeme 'Mo' and 'Fr' e.g. there indexes [ 0, 4 ] in the\n * selector array of tokens.\n *\n * :param tokens: List of token objects.\n * :param at: Position where to start.\n * :returns: Array:\n * 0. Index of first token in selector array of tokens.\n * 1. Index of last token in selector array of tokens.\n * 2. Selector type.\n */\n function getSelectorRange(tokens, at) {\n let selector_start = at,\n selector_end,\n pos_in_token_array;\n\n for (; selector_start >= 0; selector_start--) {\n pos_in_token_array = tokenIsTheBeginOfSelector(tokens, selector_start);\n if (pos_in_token_array) {\n break;\n }\n }\n selector_end = selector_start;\n\n if (pos_in_token_array === 1) {\n // Selector consists of a single token.\n\n // Include tailing colon.\n if (selector_end + 1 < tokens.length && tokens[selector_end + 1][0] === ':')\n selector_end++;\n\n return [ selector_start, selector_end, tokens[selector_start][pos_in_token_array] ];\n }\n\n for (selector_end++; selector_end < tokens.length ; selector_end++) {\n if (tokenIsTheBeginOfSelector(tokens, selector_end))\n return [ selector_start, selector_end - 1, tokens[selector_start][pos_in_token_array] ];\n }\n\n return [ selector_start, selector_end - 1, tokens[selector_start][pos_in_token_array] ];\n }\n /* }}} */\n /* }}} */\n /* }}} */\n\n /* Prettify raw value from user. {{{\n * The value is generated by putting the tokens back together to a string.\n *\n * :param argument_hash: Hash which can contain:\n * 'conf': Configuration hash.\n * 'get_internals: If true export internal data structures.\n * 'rule_index: Only prettify the rule with this index.\n * :returns: Prettified value string or object if get_internals is true.\n */\n function prettifyValue(argument_hash) {\n let user_conf = {};\n let get_internals = false;\n let rule_index;\n\n prettified_value = '';\n const prettified_value_array = [];\n\n if (typeof argument_hash === 'object') {\n if (typeof argument_hash.conf === 'object') {\n user_conf = argument_hash.conf;\n }\n\n if (typeof argument_hash.rule_index === 'number') {\n rule_index = argument_hash.rule_index;\n }\n\n if (argument_hash.get_internals === true) {\n get_internals = true;\n }\n\n }\n\n Object.keys(default_prettify_conf).forEach(function (key) {\n if (typeof user_conf[key] === 'undefined') {\n user_conf[key] = default_prettify_conf[key];\n }\n });\n\n // Locale-aware day/month order and separator for month-day pairs.\n // Uses Intl.DateTimeFormat#formatToParts to derive both the order (e.g. \"6 mars\" vs \"March 6\")\n // and the literal separator (e.g. \". \" for de, \" de \" for long es).\n // Skipped for 'en' (always month-first) and 'all' ('all' is not a valid BCP 47 tag).\n const _is_en_or_all = user_conf['locale'] === 'en' || user_conf['locale'] === 'all';\n let day_before_month = false;\n let day_month_sep = ' ';\n if (!_is_en_or_all) {\n const dmParts = new Intl.DateTimeFormat(user_conf['locale'], { day: 'numeric', month: user_conf['date_format'] })\n .formatToParts(INTL_DAY_MONTH_REF_DATE);\n const dayIdx = dmParts.findIndex(p => p.type === 'day');\n const monthIdx = dmParts.findIndex(p => p.type === 'month');\n day_before_month = dayIdx < monthIdx;\n day_month_sep = dmParts\n .slice(Math.min(dayIdx, monthIdx) + 1, Math.max(dayIdx, monthIdx))\n .map(p => p.value).join('');\n }\n user_conf['day_before_month'] = day_before_month;\n user_conf['day_month_sep'] = day_month_sep;\n\n for (let nrule = 0; nrule < new_tokens.length; nrule++) {\n if (new_tokens[nrule][0].length === 0) continue;\n // Rule does contain nothing useful e.g. second rule of '10:00-12:00;' (empty) which needs to be handled.\n\n if (typeof rule_index === 'number') {\n if (rule_index !== nrule) continue;\n } else {\n if (nrule !== 0)\n prettified_value += (\n new_tokens[nrule][1]\n ? user_conf.rule_sep_string + '|| '\n : (\n new_tokens[nrule][0][0][1] === 'rule separator'\n ? ','\n : (\n user_conf.print_semicolon\n ? ';'\n : ''\n )\n ) +\n user_conf.rule_sep_string);\n }\n\n let selector_start_end_type = [ 0, 0, undefined ];\n const prettified_group_value = [];\n let count = 0;\n // console.log(new_tokens[nrule][0]);\n\n do {\n selector_start_end_type = getSelectorRange(new_tokens[nrule][0], selector_start_end_type[1]);\n // console.log(selector_start_end_type, new_tokens[nrule][0].length, count);\n\n if (count > 50) {\n throw formatLibraryBugMessage('Infinite loop.');\n }\n\n if (selector_start_end_type[2] !== 'rule separator') {\n prettified_group_value.push(\n [\n selector_start_end_type,\n prettifySelector(\n new_tokens[nrule][0],\n selector_start_end_type[0],\n selector_start_end_type[1],\n selector_start_end_type[2],\n user_conf\n ),\n ]\n );\n }\n\n selector_start_end_type[1]++;\n count++;\n // console.log(selector_start_end_type, new_tokens[nrule][0].length, count);\n } while (selector_start_end_type[1] < new_tokens[nrule][0].length);\n // console.log('Prettified value: ' + JSON.stringify(prettified_group_value, null, ' '));\n const not_sorted_prettified_group_value = prettified_group_value.slice();\n const contains_comment_selector = prettified_group_value.some(function (array) {\n return array[0][2] === 'comment';\n });\n\n if (!done_with_selector_reordering && !rules_without_selector_reordering.has(nrule) && !contains_comment_selector) {\n prettified_group_value.sort(\n function (a, b) {\n const selector_order = [ 'year', 'month', 'week', 'holiday', 'weekday', 'time', '24/7', 'state', 'comment'];\n return selector_order.indexOf(a[0][2]) - selector_order.indexOf(b[0][2]);\n }\n );\n }\n\n const old_prettified_value_length = prettified_value.length;\n\n prettified_value += prettified_group_value.map(function (array) {\n return array[1];\n }).join(' ');\n\n prettified_value_array.push( prettified_group_value );\n\n if (!done_with_selector_reordering_warnings) {\n for (let i = 0, l = not_sorted_prettified_group_value.length; i < l; i++) {\n if (not_sorted_prettified_group_value[i] !== prettified_group_value[i]) {\n // console.log(i + ': ' + prettified_group_value[i][0][2]);\n let length = i + old_prettified_value_length; // i: Number of spaces in string.\n for (let x = 0; x <= i; x++) {\n length += prettified_group_value[x][1].length;\n // console.log('Length: ' + length + ' ' + prettified_group_value[x][1]);\n }\n // console.log(length);\n parsing_warnings.push([ prettified_value, length, 'switched', t('switched', {\n 'first': prettified_group_value[i][0][2],\n 'second': not_sorted_prettified_group_value[i][0][2]\n })\n ]);\n }\n }\n }\n }\n\n done_with_selector_reordering_warnings = true;\n // console.log(JSON.stringify(prettified_value_array, null, ' '));\n\n if (get_internals) {\n return [ prettified_value_array, new_tokens ];\n } else {\n return prettified_value;\n }\n }\n /* }}} */\n\n /* Check selector array of tokens for specific token name pattern. {{{\n *\n * :param tokens: List of token objects.\n * :param at: Position at which the matching should begin.\n * :param token_name(s): One or many token_name strings which have to match in that order.\n * :returns: true if token_name(s) match in order false otherwise.\n */\n function matchTokens(tokens, at /*, matches... */) {\n if (at + arguments.length - 2 > tokens.length)\n return false;\n for (let i = 0; i < arguments.length - 2; i++) {\n if (tokens[at + i][1] !== arguments[i + 2]) {\n return false;\n }\n }\n\n return true;\n }\n /* }}} */\n\n /* Generate selector wrapper with time offset {{{\n *\n * :param func: Generated selector code function.\n * :param shirt: Time to shift in milliseconds.\n * :param token_name(s): One or many token_name strings which have to match in that order.\n * :returns: See selector code.\n */\n function generateDateShifter(func, shift) {\n return function(date) {\n const res = func(new Date(date.getTime() + shift));\n\n if (typeof res[1] === 'undefined')\n return res;\n return [ res[0], new Date(res[1].getTime() - shift) ];\n };\n }\n /* }}} */\n\n /* Top-level parser {{{\n *\n * :param tokens: List of token objects.\n * :param at: Position where to start.\n * :param rule: Reference to rule object.\n * :param nrule: Rule number starting with 0.\n * :returns: See selector code.\n */\n function parseGroup(tokens, at, rule, nrule) {\n let rule_modifier_specified = false;\n\n // console.log(tokens); // useful for debugging of tokenize\n let last_selector = [];\n while (at < tokens.length) {\n // console.log('Parsing at position', at +':', tokens[at]);\n if (matchTokens(tokens, at, 'weekday')) {\n at = parseWeekdayRange(tokens, at, rule, undefined, nrule);\n } else if (matchTokens(tokens, at, '24/7')) {\n rule.time.push(function() { return [true]; });\n // Not needed. If there is no selector it automatically matches everything.\n // WRONG: This only works if there is no other selector in this selector group ...\n at++;\n } else if (matchTokens(tokens, at, 'holiday')) {\n if (matchTokens(tokens, at+1, ',')) {\n at = parseHoliday(tokens, at, rule, true);\n } else {\n at = parseHoliday(tokens, at, rule, false);\n }\n week_stable = false;\n } else if (matchTokens(tokens, at, 'month', 'number')\n || matchTokens(tokens, at, 'month', 'weekday')\n || matchTokens(tokens, at, 'year', 'month', 'number')\n || matchTokens(tokens, at, 'year', 'event')\n || matchTokens(tokens, at, 'event')) {\n\n at = parseMonthdayRange(tokens, at, nrule);\n week_stable = false;\n } else if (matchTokens(tokens, at, 'year')) {\n at = parseYearRange(tokens, at);\n week_stable = false;\n } else if (matchTokens(tokens, at, 'month')) {\n at = parseMonthRange(tokens, at);\n // week_stable = false; // Decided based on the actual value/tokens.\n } else if (matchTokens(tokens, at, 'week')) {\n tokens[at][3] = 'week';\n at = parseWeekRange(tokens, at);\n\n } else if (at !== 0 && at !== tokens.length - 1 && tokens[at][0] === ':'\n && !(typeof last_selector[1] === 'string' && last_selector[1] === 'time')) {\n /* Ignore colon if they appear somewhere else than as time separator.\n * Except the start or end of the value.\n * This provides compatibility with the syntax proposed by Netzwolf:\n * https://wiki.openstreetmap.org/wiki/Key:opening_hours/specification#separator_for_readability\n * Check for valid use of <separator_for_readability> is implemented in function getWarnings().\n */\n\n if (!done_with_warnings && matchTokens(tokens, at-1, 'holiday')) {\n parsing_warnings.push([nrule, at, 'no_colon_after', t('no colon after', { 'token': tokens[at-1][1] })]);\n }\n\n at++;\n } else if (matchTokens(tokens, at, 'number', 'timesep')\n || matchTokens(tokens, at, 'timevar')\n || matchTokens(tokens, at, '(', 'timevar')\n || matchTokens(tokens, at, 'number', '-')) {\n\n at = parseTimeRange(tokens, at, rule, false, nrule);\n last_selector = [ at, 'time' ];\n\n } else if (matchTokens(tokens, at, 'state')) {\n\n if (tokens[at][0] === 'open') {\n rule.meaning = true;\n } else if (tokens[at][0] === 'closed' || tokens[at][0] === 'off') {\n rule.meaning = false;\n } else {\n rule.meaning = false;\n rule.unknown = true;\n }\n\n rule_modifier_specified = true;\n at++;\n if (typeof tokens[at] === 'object' && tokens[at][0] === ',') // additional rule\n at = [ at + 1 ];\n\n } else if (matchTokens(tokens, at, 'comment')) {\n rule.comment = tokens[at][0];\n if (!rule_modifier_specified) {\n // Then it is unknown. Either with unknown explicitly\n // specified or just a comment.\n rule.meaning = false;\n rule.unknown = true;\n }\n\n rule_modifier_specified = true;\n at++;\n if (typeof tokens[at] === 'object' && tokens[at][0] === ',') { // additional rule\n at = [ at + 1 ];\n }\n } else if ((at === 0 || at === tokens.length - 1) && matchTokens(tokens, at, 'rule separator')) {\n at++;\n // console.log(\"value: \" + nrule);\n // throw formatLibraryBugMessage('Not implemented yet.');\n } else {\n const warnings = getWarnings();\n throw formatWarnErrorMessage(nrule, at, t('unexpected token', {token: tokens[at][1] })) + (warnings ? (' ' + warnings.join('; ')) : '');\n }\n\n if (typeof at === 'object') { // additional rule\n tokens[at[0] - 1][1] = 'rule separator';\n break;\n }\n if (typeof last_selector[0] === 'number' && last_selector[0] !== at) {\n last_selector = [];\n }\n }\n\n return at;\n }\n\n /* Not used\n function get_last_token_pos_in_token_group(tokens, at, last_at) {\n for (at++; at < last_at; at++) {\n if (typeof tokens[at] === 'object') {\n if (typeof tokens[at][3] === 'string'\n || tokens[at][1] === 'comment'\n || tokens[at][1] === 'state'){\n\n return at - 1;\n }\n }\n }\n return last_at;\n }\n */\n\n /* }}} */\n\n // helper functions for sub parser {{{\n\n /* For given date, returns date moved to the start of the day with an offset specified in minutes. {{{\n * For example, if date is 2014-05-19_18:17:12, dateAtDayMinutes would\n * return 2014-05-19_02:00:00 for minutes=120.\n *\n * :param date: Date object.\n * :param minutes: Minutes used as offset starting from midnight of current day.\n * :returns: Moved date object.\n */\n function dateAtDayMinutes(date, minutes) {\n return new Date(date.getFullYear(), date.getMonth(), date.getDate(), 0, minutes);\n }\n /* }}} */\n\n /* For given date, returns date moved to the specific day of week {{{\n *\n * :param date: Date object.\n * :param weekday: Integer number for day of week. Starting with zero (Sunday).\n * :returns: Moved date object.\n */\n function dateAtNextWeekday(date, weekday) {\n const delta = weekday - date.getDay();\n return new Date(date.getFullYear(), date.getMonth(), date.getDate() + delta + (delta < 0 ? 7 : 0));\n }\n /* }}} */\n\n /* Numeric list parser (1,2,3-4,-1) {{{\n * Used in weekday parser above.\n *\n * :param tokens: List of token objects.\n * :param at: Position where to start.\n * :param func: Function func(from, to, at).\n * :returns: Position at which the token does not belong to the list any more.\n */\n function parseNumRange(tokens, at, func) {\n for (; at < tokens.length; at++) {\n if (matchTokens(tokens, at, 'number', '-', 'number')) {\n // Number range\n func(tokens[at][0], tokens[at+2][0], at);\n at += 3;\n } else if (matchTokens(tokens, at, '-', 'number')) {\n // Negative number\n func(-tokens[at+1][0], -tokens[at+1][0], at);\n at += 2;\n } else if (matchTokens(tokens, at, 'number')) {\n // Single number\n func(tokens[at][0], tokens[at][0], at);\n at++;\n } else {\n throw formatWarnErrorMessage(nrule, at + matchTokens(tokens, at, '-'),\n 'Unexpected token in number range: ' + tokens[at][1]);\n }\n\n if (!matchTokens(tokens, at, ','))\n break;\n }\n\n return at;\n }\n /* }}} */\n\n /* List parser for constrained weekdays in month range {{{\n * e.g. Su[-1] which selects the last Sunday of the month.\n *\n * :param tokens: List of token objects.\n * :param at: Position where to start.\n * :returns: Array:\n * 0. Constrained weekday number.\n * 1. Position at which the token does not belong to the list any more (after ']' token).\n */\n function getConstrainedWeekday(tokens, at) {\n let number = 0;\n const endat = parseNumRange(tokens, at, function(from, to, at) {\n\n // bad number\n if (from === 0 || from < -5 || from > 5)\n throw formatWarnErrorMessage(nrule, at,\n t('number -5 to 5'));\n\n if (from === to) {\n if (number !== 0)\n throw formatWarnErrorMessage(nrule, at,\n t('one weekday constraint'));\n number = from;\n } else {\n throw formatWarnErrorMessage(nrule, at+2,\n t('range constrained weekdays'));\n }\n });\n for (let i = at; i < endat; i++) {\n tokens[i][4] = 'positive_number';\n }\n\n if (!matchTokens(tokens, endat, ']'))\n throw formatWarnErrorMessage(nrule, endat, t('expected', {symbol: ']'}));\n\n return [ number, endat + 1 ];\n }\n /* }}} */\n\n // Check if period is ok. Period 0 or 1 don’t make much sense.\n function checkPeriod(at, period, period_type, parm_string) {\n if (done_with_warnings)\n return;\n\n if (period === 0) {\n throw formatWarnErrorMessage(nrule, at,\n t('range zero', { 'type': period_type }));\n } else if (period === 1) {\n if (typeof parm_string === 'string' && parm_string === 'no_end_year')\n parsing_warnings.push([nrule, at, 'period_one_year_plus', t('period one year+', {'type': period_type})]);\n else\n parsing_warnings.push([nrule, at, 'period_one', t('period one', {'type': period_type})]);\n }\n }\n\n /* Get date moved to constrained weekday (and moved for add_days. {{{\n * E.g. used for 'Aug Su[-1] -1 day'.\n *\n * :param year: Year as integer.\n * :param month: Month as integer starting with zero.\n * :param weekday: Integer number for day of week. Starting with zero (Sunday).\n * :param constrained_weekday: Position where to start.\n * :returns: Date object.\n */\n function getDateForConstrainedWeekday(year, month, weekday, constrained_weekday, add_days) {\n const tmp_date = dateAtNextWeekday(\n new Date(year, month + (constrained_weekday[0] > 0 ? 0 : 1), 1), weekday);\n\n tmp_date.setDate(tmp_date.getDate() + (constrained_weekday[0] + (constrained_weekday[0] > 0 ? -1 : 0)) * 7);\n\n if (typeof add_days === 'object' && add_days[1])\n tmp_date.setDate(tmp_date.getDate() + add_days[0]);\n\n return tmp_date;\n }\n /* }}} */\n\n /* Check if date is valid. {{{\n *\n * :param month: Month as integer starting with zero.\n * :param date: Day of month as integer.\n * :param nrule: Rule number starting with 0.\n * :param at: Position at which the matching should begin.\n * :returns: undefined. There is no real return value. This function just throws an exception if something is wrong.\n */\n function checkIfDateIsValid(month, day, nrule, at) {\n // May use this instead. The problem is that this does not give feedback as precise as the code which is used in this function.\n // let testDate = new Date(year, month, day);\n // if (testDate.getDate() !== day || testDate.getMonth() !== month || testDate.getFullYear() !== year) {\n // console.error('date not valid');\n // }\n\n // https://en.wikipedia.org/wiki/Month#Julian_and_Gregorian_calendars\n if (day < 1 || day > 31) {\n throw formatWarnErrorMessage(nrule, at, t('month 31', {'month': months[month]}));\n } else if ((month === 3 || month === 5 || month === 8 || month === 10) && day === 31) {\n throw formatWarnErrorMessage(nrule, at, t('month 30', {'month': months[month]}));\n } else if (month === 1 && day === 30) {\n throw formatWarnErrorMessage(nrule, at, t('month feb', {'month': months[month]}));\n }\n }\n /* }}} */\n /* }}} */\n\n /* Time range parser (10:00-12:00,14:00-16:00) {{{\n *\n * :param tokens: List of token objects.\n * :param at: Position where to start.\n * :param rule: Reference to rule object.\n * :param extended_open_end: Used for combined time range with open end.\n * :param nrule: Rule number starting with 0.\n * extended_open_end: <time> - <time> +\n * parameter at is here A (if extended_open_end is true)\n * :returns: Position at which the token does not belong to the selector anymore.\n */\n function parseTimeRange(tokens, at, rule, extended_open_end, nrule) {\n if (!extended_open_end)\n tokens[at][3] = 'time';\n\n for (; at < tokens.length; at++) {\n const has_time_var_calc = [], has_normal_time = []; // element 0: start time, 1: end time\n has_normal_time[0] = matchTokens(tokens, at, 'number', 'timesep', 'number');\n has_time_var_calc[0] = matchTokens(tokens, at, '(', 'timevar');\n let minutes_from,\n minutes_to,\n has_open_end = false; // default no open end\n if (has_normal_time[0] || matchTokens(tokens, at, 'timevar') || has_time_var_calc[0]) {\n // relying on the fact that always *one* of them is true\n\n let is_point_in_time = false; // default no time range\n const timevar_add = [ 0, 0 ];\n let timevar_string = []; // capture timevar string like 'sunrise' to calculate it for the current date.\n let point_in_time_period;\n\n // minutes_from\n if (has_normal_time[0]) {\n minutes_from = getMinutesByHoursMinutes(tokens, nrule, at+has_time_var_calc[0]);\n } else {\n timevar_string[0] = tokens[at+has_time_var_calc[0]][0];\n minutes_from = word_value_replacement[timevar_string[0]];\n\n if (has_time_var_calc[0]) {\n timevar_add[0] = parseTimevarCalc(tokens, at);\n minutes_from += timevar_add[0];\n }\n }\n\n const at_end_time = at+(has_normal_time[0] ? 3 : (has_time_var_calc[0] ? 7 : 1))+1; // after '-'\n if (!matchTokens(tokens, at_end_time - 1, '-')) { // not time range\n if (matchTokens(tokens, at_end_time - 1, '+')) {\n has_open_end = true;\n } else {\n if (oh_mode === 0) {\n throw formatWarnErrorMessage(nrule,\n at+(\n has_normal_time[0] ? (\n typeof tokens[at+3] === 'object' ? 3 : 2\n ) : (\n has_time_var_calc[0] ? 2 : (\n typeof tokens[at+1] === 'object' ? 1 : 0\n )\n )\n ),\n t('point in time', {\n 'calc': (has_time_var_calc[0] ? t('calculation') + ' ' : ''),\n 'libraryname': library_name\n }));\n } else {\n minutes_to = minutes_from + 1;\n is_point_in_time = true;\n }\n }\n }\n\n // minutes_to\n if (has_open_end) {\n if (extended_open_end === 1) {\n minutes_from += minutes_in_day;\n }\n if (minutes_from >= 22 * 60) {\n\n minutes_to = minutes_from + 8 * 60;\n } else if (minutes_from >= 17 * 60) {\n minutes_to = minutes_from + 10 * 60;\n } else {\n minutes_to = minutes_in_day;\n }\n } else if (!is_point_in_time) {\n has_normal_time[1] = matchTokens(tokens, at_end_time, 'number', 'timesep', 'number');\n has_time_var_calc[1] = matchTokens(tokens, at_end_time, '(', 'timevar');\n if (!has_normal_time[1] && !matchTokens(tokens, at_end_time, 'timevar') && !has_time_var_calc[1]) {\n throw formatWarnErrorMessage(nrule, at_end_time - (typeof tokens[at_end_time] === 'object' ? 0 : 1),\n t('time range continue'));\n } else {\n if (has_normal_time[1]) {\n minutes_to = getMinutesByHoursMinutes(tokens, nrule, at_end_time);\n const from_hour = tokens[at][0];\n const to_hour = tokens[at_end_time][0];\n // to_hour < 12: am/pm correction can raise the value of a single-digit\n // lexeme to >= 12 (e.g. \"8pm\" -> 20), which is not ambiguous.\n const ambiguous_end_hour = tokens[at_end_time].single_digit_lexeme === true && to_hour < 12;\n\n // The end hour is ambiguous regardless of the start type\n // (e.g. \"12:00-6:00\" or \"sunrise-6:00\").\n if (!done_with_warnings && ambiguous_end_hour) {\n const ambiguous_hours = [];\n // The start hour only adds ambiguity when it is a single-digit\n // clock time (not a variable time) and the end hour is ambiguous too.\n if (tokens[at].single_digit_lexeme === true && from_hour < 12) {\n ambiguous_hours.push([at, from_hour]);\n }\n ambiguous_hours.push([at_end_time, to_hour]);\n\n for (const [token_index, hour] of ambiguous_hours) {\n parsing_warnings.push([nrule, token_index, 'ambiguous_single_digit_hour', t('ambiguous single digit hour', {\n 'hour': hour,\n 'hour_pm': hour + 12,\n })]);\n }\n }\n } else {\n timevar_string[1] = tokens[at_end_time+has_time_var_calc[1]][0];\n minutes_to = word_value_replacement[timevar_string[1]];\n }\n\n if (has_time_var_calc[1]) {\n timevar_add[1] = parseTimevarCalc(tokens, at_end_time);\n minutes_to += timevar_add[1];\n }\n }\n }\n\n at = at_end_time + (is_point_in_time ? -1 :\n (has_normal_time[1] ? 3 : (has_time_var_calc[1] ? 7 : !has_open_end))\n );\n\n if (matchTokens(tokens, at, '/', 'number')) {\n if (matchTokens(tokens, at + 2, 'timesep', 'number')) { // /hours:minutes\n point_in_time_period = getMinutesByHoursMinutes(tokens, nrule, at + 1);\n at += 4;\n } else { // /minutes\n point_in_time_period = tokens[at + 1][0];\n at += 2;\n if (matchTokens(tokens, at, 'timesep'))\n throw formatWarnErrorMessage(nrule, at,\n t('period continue'));\n }\n\n // Check at this later state in the if condition to get the correct position.\n if (oh_mode === 0) {\n throw formatWarnErrorMessage(nrule, at - 1,\n t('time range mode', {'libraryname': library_name}));\n }\n\n is_point_in_time = true;\n } else if (matchTokens(tokens, at, '+')) {\n parseTimeRange(tokens, at_end_time, rule, minutes_to < minutes_from ? 1 : true, nrule);\n at++;\n } else if (oh_mode === 1 && !is_point_in_time) {\n throw formatWarnErrorMessage(nrule, at_end_time,\n t('point in time mode', {'libraryname': library_name}));\n }\n\n if (typeof lat === 'string') { // lon will also be defined (see above)\n if (!has_normal_time[0] || !(has_normal_time[1] || has_open_end || is_point_in_time) ) {\n week_stable = false;\n }\n } else { // we can not calculate exact times so we use the already applied constants (word_value_replacement).\n timevar_string = [];\n }\n\n // Normalize minutes into range.\n if (!extended_open_end && minutes_from >= minutes_in_day) {\n throw formatWarnErrorMessage(nrule, at_end_time - 2,\n t('outside current day'));\n }\n if (minutes_to < minutes_from || ((has_normal_time[0] && has_normal_time[1]) && minutes_from === minutes_to)) {\n minutes_to += minutes_in_day;\n }\n if (minutes_to > minutes_in_day * 2) {\n throw formatWarnErrorMessage(nrule, at_end_time + (has_normal_time[1] ? 4 : (has_time_var_calc[1] ? 7 : 1)) - 2,\n t('two midnights'));\n }\n\n // This shortcut makes always-open range check faster.\n if (minutes_from === 0 && minutes_to === minutes_in_day) {\n rule.time.push(function() { return [true]; });\n } else {\n if (minutes_to > minutes_in_day) { // has_normal_time[1] must be true\n rule.time.push(function(minutes_from, minutes_to, timevar_string, timevar_add, has_open_end, is_point_in_time, point_in_time_period, extended_open_end) { return function(date) {\n const ourminutes = date.getHours() * 60 + date.getMinutes();\n\n if (timevar_string[0]) {\n minutes_from = getTimevarMinutes(date, timevar_string[0], timevar_add[0]);\n }\n if (timevar_string[1]) {\n minutes_to = getTimevarMinutes(date, timevar_string[1], timevar_add[1]);\n minutes_to += minutes_in_day;\n // Needs to be added because it was added by\n // normal times: if (minutes_to < minutes_from)\n // above the selector construction.\n } else if (is_point_in_time && typeof point_in_time_period !== 'number') {\n minutes_to = minutes_from + 1;\n }\n\n if (typeof point_in_time_period === 'number') {\n if (ourminutes < minutes_from) {\n return [false, dateAtDayMinutes(date, minutes_from)];\n } else if (ourminutes <= minutes_to) {\n for (let cur_min = minutes_from; ourminutes + point_in_time_period >= cur_min; cur_min += point_in_time_period) {\n if (cur_min === ourminutes) {\n return [true, dateAtDayMinutes(date, ourminutes + 1)];\n } else if (ourminutes < cur_min) {\n return [false, dateAtDayMinutes(date, cur_min)];\n }\n }\n }\n return [false, dateAtDayMinutes(date, minutes_in_day)];\n } else {\n if (ourminutes < minutes_from)\n return [false, dateAtDayMinutes(date, minutes_from)];\n else\n return [true, dateAtDayMinutes(date, minutes_to), has_open_end, extended_open_end];\n }\n }}(minutes_from, minutes_to, timevar_string, timevar_add, has_open_end, is_point_in_time, point_in_time_period, extended_open_end));\n\n if (minutes_to - minutes_in_day > 0) {\n if (typeof rule_infos[nrule] === 'undefined') {\n rule_infos[nrule] = {};\n }\n rule_infos[nrule]['time_wraps_over_midnight'] = true;\n rule.wraptime.push(function(minutes_to, timevar_string, timevar_add, has_open_end, point_in_time_period, extended_open_end) { return function(date) {\n const ourminutes = date.getHours() * 60 + date.getMinutes();\n\n if (timevar_string[1]) {\n minutes_to = getTimevarMinutes(date, timevar_string[1], timevar_add[1]);\n // minutes_in_day does not need to be added.\n // For normal times in it was added in: if (minutes_to < // minutes_from)\n // above the selector construction and\n // subtracted in the selector construction call\n // which returns the selector function.\n }\n\n if (typeof point_in_time_period === 'number') {\n if (ourminutes <= minutes_to) {\n for (let cur_min = 0; ourminutes + point_in_time_period >= cur_min; cur_min += point_in_time_period) {\n if (cur_min === ourminutes) {\n return [true, dateAtDayMinutes(date, ourminutes + 1)];\n } else if (ourminutes < cur_min) {\n return [false, dateAtDayMinutes(date, cur_min)];\n }\n }\n }\n } else {\n if (ourminutes < minutes_to)\n return [true, dateAtDayMinutes(date, minutes_to), has_open_end, extended_open_end];\n }\n return [false, undefined];\n }}(minutes_to - minutes_in_day, timevar_string, timevar_add, has_open_end, point_in_time_period, extended_open_end));\n }\n } else {\n rule.time.push(function(minutes_from, minutes_to, timevar_string, timevar_add, has_open_end, is_point_in_time, point_in_time_period) { return function(date) {\n const ourminutes = date.getHours() * 60 + date.getMinutes();\n\n if (timevar_string[0]) {\n minutes_from = getTimevarMinutes(date, timevar_string[0], timevar_add[0]);\n }\n if (timevar_string[1]) {\n minutes_to = getTimevarMinutes(date, timevar_string[1], timevar_add[1]);\n } else if (is_point_in_time && typeof point_in_time_period !== 'number') {\n minutes_to = minutes_from + 1;\n }\n\n if (typeof point_in_time_period === 'number') {\n if (ourminutes < minutes_from) {\n return [false, dateAtDayMinutes(date, minutes_from)];\n } else if (ourminutes <= minutes_to) {\n for (let cur_min = minutes_from; ourminutes + point_in_time_period >= cur_min; cur_min += point_in_time_period) {\n if (cur_min === ourminutes) {\n return [true, dateAtDayMinutes(date, ourminutes + 1)];\n } else if (ourminutes < cur_min) {\n return [false, dateAtDayMinutes(date, cur_min)];\n }\n }\n }\n return [false, dateAtDayMinutes(date, minutes_in_day)];\n } else {\n if (ourminutes < minutes_from)\n return [false, dateAtDayMinutes(date, minutes_from)];\n else if (ourminutes < minutes_to)\n return [true, dateAtDayMinutes(date, minutes_to), has_open_end];\n else\n return [false, dateAtDayMinutes(date, minutes_from + minutes_in_day)];\n }\n }}(minutes_from, minutes_to, timevar_string, timevar_add, has_open_end, is_point_in_time, point_in_time_period));\n }\n }\n\n } else if (matchTokens(tokens, at, 'number', '-', 'number')) { // \"Mo 09-18\" (Please don’t use this) -> \"Mo 09:00-18:00\".\n minutes_from = tokens[at][0] * 60;\n minutes_to = tokens[at+2][0] * 60;\n if (!done_with_warnings) {\n parsing_warnings.push([nrule, at + 2, 'without_minutes', t('without minutes', {\n 'syntax': (tokens[at][0] < 10 ? '0' : '') + tokens[at][0] + ':00-'\n + (tokens[at+2][0] < 10 ? '0' : '') + tokens[at+2][0] + ':00'\n })]);\n }\n\n if (minutes_from >= minutes_in_day)\n throw formatWarnErrorMessage(nrule, at, t('outside day'));\n if (minutes_to < minutes_from)\n minutes_to += minutes_in_day;\n if (minutes_to > minutes_in_day * 2)\n throw formatWarnErrorMessage(nrule, at + 2, t('two midnights'));\n\n if (minutes_to > minutes_in_day) {\n rule.time.push(function(minutes_from, minutes_to) { return function(date) {\n const ourminutes = date.getHours() * 60 + date.getMinutes();\n\n if (ourminutes < minutes_from)\n return [false, dateAtDayMinutes(date, minutes_from)];\n else\n return [true, dateAtDayMinutes(date, minutes_to)];\n }}(minutes_from, minutes_to));\n\n if (minutes_to - minutes_in_day > 0) {\n if (typeof rule_infos[nrule] === 'undefined') {\n rule_infos[nrule] = {};\n }\n rule_infos[nrule]['time_wraps_over_midnight'] = true;\n rule.wraptime.push(function(minutes_to) { return function(date) {\n const ourminutes = date.getHours() * 60 + date.getMinutes();\n\n if (ourminutes < minutes_to) {\n return [true, dateAtDayMinutes(date, minutes_to)];\n } else {\n return [false, undefined];\n }\n }}(minutes_to - minutes_in_day));\n }\n } else {\n rule.time.push(function(minutes_from, minutes_to) { return function(date) {\n const ourminutes = date.getHours() * 60 + date.getMinutes();\n\n if (ourminutes < minutes_from)\n return [false, dateAtDayMinutes(date, minutes_from)];\n else if (ourminutes < minutes_to)\n return [true, dateAtDayMinutes(date, minutes_to), has_open_end];\n else\n return [false, dateAtDayMinutes(date, minutes_from + minutes_in_day)];\n }}(minutes_from, minutes_to));\n }\n\n at += 3;\n } else { // additional rule\n if (matchTokens(tokens, at, '('))\n throw formatWarnErrorMessage(nrule, at, 'Missing variable time (e.g. sunrise) after: \"' + tokens[at][1] + '\"');\n if (matchTokens(tokens, at, 'number', 'timesep'))\n throw formatWarnErrorMessage(nrule, at+1, 'Missing minutes in time range after: \"' + tokens[at+1][1] + '\"');\n if (matchTokens(tokens, at, 'number'))\n throw formatWarnErrorMessage(nrule, at + (typeof tokens[at+1] === 'object' ? 1 : 0),\n 'Missing time separator in time range after: \"' + tokens[at][1] + '\"');\n return [ at ];\n }\n\n if (!matchTokens(tokens, at, ',')) {\n break;\n }\n\n if (typeof tokens[at+1] === 'undefined' && !done_with_warnings) {\n parsing_warnings.push([nrule, at, 'value_ends_with_token', t('value ends with token', { 'token': tokens[at][1] }) ]);\n }\n }\n\n return at;\n }\n /* }}} */\n\n /* Helpers for time range parser {{{ */\n\n /* Get time in minutes from <hour>:<minute> (tokens). {{{\n * Only used if throwing an error is wanted.\n *\n * :param tokens: List of token objects.\n * :param nrule: Rule number starting with 0.\n * :param at: Position at which the time begins.\n * :returns: Time in minutes.\n */\n function getMinutesByHoursMinutes(tokens, nrule, at) {\n if (tokens[at+2][0] > 59)\n throw formatWarnErrorMessage(nrule, at+2,\n 'Minutes are greater than 59.');\n return tokens[at][0] * 60 + tokens[at+2][0];\n }\n /* }}} */\n\n /* Get time in minutes from \"(sunrise-01:30)\" {{{\n * Extract the added or subtracted time from \"(sunrise-01:30)\"\n * returns time in minutes e.g. -90.\n *\n * :param tokens: List of token objects.\n * :param at: Position where the specification for the point in time could be.\n * :returns: Time in minutes on suggest, throws an exception otherwise.\n */\n function parseTimevarCalc(tokens, at) {\n let error;\n if (matchTokens(tokens, at+2, '+') || matchTokens(tokens, at+2, '-')) {\n if (matchTokens(tokens, at+3, 'number', 'timesep', 'number')) {\n if (matchTokens(tokens, at+6, ')')) {\n const add_or_subtract = tokens[at+2][0] === '+' ? '1' : '-1';\n const minutes = getMinutesByHoursMinutes(tokens, nrule, at+3) * add_or_subtract;\n if (minutes === 0)\n parsing_warnings.push([ nrule, at+5, 'zero_calculation', t('zero calculation') ]\n );\n return minutes;\n } else {\n error = [ at+6, '. ' + t('missing', {'symbol': ')'}) + '.'];\n }\n } else if (matchTokens(tokens, at+3, 'number') && matchTokens(tokens, at+4, ')')) {\n // User likely meant hours without minutes, e.g. (sunset-1) instead of (sunset-01:00)\n const hours = ('0' + tokens[at+3][0]).slice(-2);\n const suggestion = '(' + tokens[at+1][0] + tokens[at+2][0] + hours + ':00)';\n throw formatWarnErrorMessage(nrule, at+3,\n t('time offset hours only', { suggestion: suggestion }));\n } else {\n error = [ at+5, ' ' + t('(time)') + '.'];\n }\n } else {\n error = [ at+2, '. ' + t('expected', {'symbol': '+\" or \"-'})];\n }\n\n if (error)\n throw formatWarnErrorMessage(nrule, error[0],\n t('calculation syntax')+ error[1]);\n }\n /* }}} */\n /* }}} */\n\n /* Weekday range parser (Mo,We-Fr,Sa[1-2,-1],PH). {{{\n *\n * :param tokens: List of token objects.\n * :param at: Position where the weekday tokens could be.\n * :param rule: Reference to rule object.\n * :param nrule: Rule number starting with 0.\n * :returns: Position at which the token does not belong to the selector anymore.\n */\n function parseWeekdayRange(tokens, at, rule, in_holiday_selector, nrule) {\n if (!in_holiday_selector) {\n in_holiday_selector = true;\n tokens[at][3] = 'weekday';\n }\n\n for (; at < tokens.length; at++) {\n if (matchTokens(tokens, at, 'weekday', '[')) {\n // Conditional weekday (Mo[3])\n const numbers = [];\n\n // Get list of constraints\n const endat = parseNumRange(tokens, at+2, function(from, to, at) {\n\n // bad number\n if (from === 0 || from < -5 || from > 5)\n throw formatWarnErrorMessage(nrule, at,\n t('number -5 to 5'));\n\n if (from === to) {\n numbers.push(from);\n } else if (from < to) {\n for (let i = from; i <= to; i++) {\n // bad number\n if (i === 0 || i < -5 || i > 5)\n throw formatWarnErrorMessage(nrule, at+2,\n t('number -5 to 5'));\n\n numbers.push(i);\n }\n } else {\n throw formatWarnErrorMessage(nrule, at+2,\n t('bad range',{'from': from, 'to': to}));\n }\n });\n\n if (!matchTokens(tokens, endat, ']')) {\n throw formatWarnErrorMessage(\n nrule,\n endat + (typeof tokens[endat] === 'object' ? 0 : -1),\n t('] or more numbers')\n );\n }\n\n const add_days = getMoveDays(tokens, endat+1, 6, 'max differ name constrained weekdays');\n week_stable = false;\n\n // Create selector for each list element.\n for (let nnumber = 0; nnumber < numbers.length; nnumber++) {\n\n rule.weekday.push(function(weekday, number, add_days) { return function(date) {\n const date_num = getValueForDate(date, false); // Year not needed to distinguish.\n const start_of_this_month = new Date(date.getFullYear(), date.getMonth(), 1);\n const start_of_next_month = new Date(date.getFullYear(), date.getMonth() + 1, 1);\n\n const target_day_this_month = getDateForConstrainedWeekday(date.getFullYear(), date.getMonth(), weekday, [ number ]);\n\n let target_day_with_added_days_this_month = new Date(target_day_this_month.getFullYear(),\n target_day_this_month.getMonth(), target_day_this_month.getDate() + add_days);\n\n // The target day with added days can be before this month\n if (target_day_with_added_days_this_month.getTime() < start_of_this_month.getTime()) {\n // but in this case, the target day without the days added needs to be in this month\n if (target_day_this_month.getTime() >= start_of_this_month.getTime()) {\n // so we calculate it for the month\n // following this month and hope that the\n // target day will actually be this month.\n\n target_day_with_added_days_this_month = dateAtNextWeekday(\n new Date(date.getFullYear(), date.getMonth() + (number > 0 ? 0 : 1) + 1, 1), weekday);\n target_day_this_month.setDate(target_day_with_added_days_this_month.getDate()\n + (number + (number > 0 ? -1 : 0)) * 7 + add_days);\n } else {\n // Calculated target day is not inside this month\n // therefore the specified weekday (e.g. fifth Sunday)\n // does not exist this month. Try it next month.\n return [false, start_of_next_month];\n }\n } else if (target_day_with_added_days_this_month.getTime() >= start_of_next_month.getTime()) {\n // The target day is in the next month. If the target day without the added days is not in this month\n if (target_day_this_month.getTime() >= start_of_next_month.getTime())\n return [false, start_of_next_month];\n } else if (target_day_this_month.getTime() >= start_of_next_month.getTime()) {\n // The nth weekday overflows to next month (e.g. no 5th Sunday in February),\n // but negative add_days pulled the result back into this month.\n // The nth weekday still does not exist this month, so do not match.\n return [false, start_of_next_month];\n }\n\n let target_day_with_added_moved_days_this_month;\n if (add_days > 0) {\n target_day_with_added_moved_days_this_month = dateAtNextWeekday(\n new Date(date.getFullYear(), date.getMonth() + (number > 0 ? 0 : 1) -1, 1), weekday);\n target_day_with_added_moved_days_this_month.setDate(target_day_with_added_moved_days_this_month.getDate()\n + (number + (number > 0 ? -1 : 0)) * 7 + add_days);\n\n if (date_num === getValueForDate(target_day_with_added_moved_days_this_month, false))\n return [true, dateAtDayMinutes(date, minutes_in_day)];\n } else if (add_days < 0) {\n target_day_with_added_moved_days_this_month = dateAtNextWeekday(\n new Date(date.getFullYear(), date.getMonth() + (number > 0 ? 0 : 1) + 1, 1), weekday);\n target_day_with_added_moved_days_this_month.setDate(target_day_with_added_moved_days_this_month.getDate()\n + (number + (number > 0 ? -1 : 0)) * 7 + add_days);\n\n if (target_day_with_added_moved_days_this_month.getTime() >= start_of_next_month.getTime()) {\n if (target_day_with_added_days_this_month.getTime() >= start_of_next_month.getTime())\n return [false, target_day_with_added_moved_days_this_month];\n } else {\n if (target_day_with_added_days_this_month.getTime() < start_of_next_month.getTime()\n && getValueForDate(target_day_with_added_days_this_month, false) === date_num)\n return [true, dateAtDayMinutes(date, minutes_in_day)];\n\n target_day_with_added_days_this_month = target_day_with_added_moved_days_this_month;\n }\n }\n\n // we hit the target day\n const currentDateOnly = new Date(date.getFullYear(), date.getMonth(), date.getDate());\n const targetDateOnly = new Date(target_day_with_added_days_this_month.getFullYear(), target_day_with_added_days_this_month.getMonth(), target_day_with_added_days_this_month.getDate());\n\n if (currentDateOnly.getTime() === targetDateOnly.getTime()) {\n return [true, dateAtDayMinutes(date, minutes_in_day)];\n }\n\n // we're before target day\n if (currentDateOnly.getTime() < targetDateOnly.getTime()) {\n return [false, target_day_with_added_days_this_month];\n }\n\n // we're after target day, set check date to next month\n return [false, start_of_next_month];\n }}(tokens[at][0], numbers[nnumber], add_days[0]));\n }\n\n at = endat + 1 + add_days[1];\n } else if (matchTokens(tokens, at, 'weekday')) {\n // Single weekday (Mo) or weekday range (Mo-Fr)\n const is_range = matchTokens(tokens, at+1, '-', 'weekday');\n\n let weekday_from = tokens[at][0];\n let weekday_to = is_range ? tokens[at+2][0] : weekday_from;\n\n let inside = true;\n\n // handle reversed range\n if (weekday_to < weekday_from) {\n const tmp = weekday_to;\n weekday_to = weekday_from - 1;\n weekday_from = tmp + 1;\n inside = false;\n }\n const weekday_list = Array.apply(0, Array(weekday_to - weekday_from + 1)).map(function (_, index) {\n return index + weekday_to;\n });\n if (typeof rule_infos[nrule] === 'undefined') {\n rule_infos[nrule] = {};\n }\n if (typeof rule_infos[nrule]['week_days'] === 'object') {\n Array.prototype.push.apply(rule_infos[nrule]['week_days'], weekday_list);\n } else {\n rule_infos[nrule]['week_days'] = weekday_list;\n }\n\n if (weekday_to < weekday_from) { // handle full range\n rule.weekday.push(function() { return [true]; });\n // Not needed. If there is no selector it automatically matches everything.\n // WRONG: This only works if there is no other selector in this selector group ...\n } else {\n rule.weekday.push(function(weekday_from, weekday_to, inside) { return function(date) {\n const ourweekday = date.getDay();\n\n if (ourweekday < weekday_from || ourweekday > weekday_to) {\n return [!inside, dateAtNextWeekday(date, weekday_from)];\n } else {\n return [inside, dateAtNextWeekday(date, weekday_to + 1)];\n }\n }}(weekday_from, weekday_to, inside));\n }\n\n at += is_range ? 3 : 1;\n } else if (matchTokens(tokens, at, 'holiday')) {\n week_stable = false;\n return parseHoliday(tokens, at, rule, true, in_holiday_selector);\n } else if (matchTokens(tokens, at - 1, ',')) { // additional rule\n throw formatWarnErrorMessage(\n nrule,\n at - 1,\n t('additional rule no sense'));\n } else {\n throw formatWarnErrorMessage(nrule, at, t('unexpected token weekday range', {'token': tokens[at][1]}));\n }\n\n if (!matchTokens(tokens, at, ',')) {\n break;\n }\n }\n\n return at;\n }\n /* }}} */\n\n /* Get the number of days a date should be moved (if any). {{{\n *\n * :param tokens: List of token objects.\n * :param at: Position where the date moving tokens could be.\n * :param max_differ: Maximal number of days to move (could also be zero if there are no day move tokens).\n * :returns: Array:\n * 0. Days to add.\n * 1. How many tokens.\n */\n function getMoveDays(tokens, at, max_differ, name_key) {\n const add_days = [ 0, 0 ]; // [ 'days to add', 'how many tokens' ]\n add_days[0] = matchTokens(tokens, at, '+') || (matchTokens(tokens, at, '-') ? -1 : 0);\n if (add_days[0] !== 0 && matchTokens(tokens, at+1, 'number', 'calcday')) {\n // continues with '+ 5 days' or something like that\n if (tokens[at+1][0] > max_differ)\n throw formatWarnErrorMessage(nrule, at+2,\n t('max differ', {'maxdiffer': max_differ, 'name': t(name_key)}));\n add_days[0] *= tokens[at+1][0];\n if (add_days[0] === 0 && !done_with_warnings)\n parsing_warnings.push([ nrule, at+2, 'adding_0', t('adding 0') ]);\n add_days[1] = 3;\n } else {\n add_days[0] = 0;\n }\n return add_days;\n }\n /* }}} */\n\n\n /* Parses a single holiday token (PH or SH) and adds the selector to the rule. {{{\n *\n * :param tokens: List of token objects.\n * :param at: Position of the holiday token.\n * :param target_array: Array to push the selector to (rule.weekday or rule.holiday).\n * :returns: New token position after this holiday token.\n */\n function parseSingleHolidayToken(tokens, at, target_array) {\n const holiday_type = tokens[at][0];\n const applying_holidays = getMatchingHoliday(holiday_type);\n\n if (holiday_type === 'PH') {\n const add_days = getMoveDays(tokens, at + 1, 1, 'max differ name public holiday');\n const selector = createPublicHolidaySelector(applying_holidays, add_days);\n target_array.push(selector);\n return at + 1 + add_days[1];\n } else { // SH\n const selector = createSchoolHolidaySelector(applying_holidays);\n target_array.push(selector);\n return at + 1;\n }\n }\n /* }}} */\n\n\n /* Holiday parser for public and school holidays (PH,SH) {{{\n *\n * Handles holiday tokens followed by optional weekday selectors:\n * - \"PH\" → public holiday\n * - \"PH,SH\" → public holiday or school holiday\n * - \"PH Mo-Fr\" → public holiday that falls on Monday-Friday\n * - \"SH\" → school holiday periods\n *\n * :param tokens: List of token objects.\n * :param at: Position where to start.\n * :param rule: Reference to rule object.\n * :param push_to_weekday: Will push the selector into the weekday selector array which has the desired side effect of working in conjunction with the weekday selectors (either the holiday match or the weekday), which is the normal and expected behavior.\n * :returns: Position at which the token does not belong to the selector anymore.\n */\n function parseHoliday(tokens, at, rule, push_to_weekday, in_holiday_selector) {\n if (!in_holiday_selector) {\n tokens[at][3] = push_to_weekday ? 'weekday' : 'holiday';\n }\n\n const target_array = push_to_weekday ? rule.weekday : rule.holiday;\n\n while (at < tokens.length) {\n if (matchTokens(tokens, at, 'holiday')) {\n at = parseSingleHolidayToken(tokens, at, target_array);\n } else if (matchTokens(tokens, at, 'weekday')) {\n return parseWeekdayRange(tokens, at, rule, true, nrule);\n } else if (matchTokens(tokens, at - 1, ',')) {\n throw formatWarnErrorMessage(\n nrule,\n at - 1,\n t('additional rule no sense'));\n } else {\n throw formatWarnErrorMessage(nrule, at, t('unexpected token holiday', {'token': tokens[at][1]}));\n }\n\n // Continue only if followed by comma separator\n if (!matchTokens(tokens, at, ','))\n break;\n\n at++; // Skip comma\n }\n\n return at;\n }\n /* }}} */\n\n // Helpers for holiday parsers {{{\n\n /* Returns a number for a date which can then be used to compare just the dates (without the time). {{{\n *\n * This is necessary because a selector could be called for the middle of the day and we need to tell if it matches that day.\n * Example: Returns 20150015 for Jan 15 2015.\n *\n * :param date: Date object.\n * :param include_year: Boolean. If true include the year.\n * :returns: Number for the date.\n */\n function getValueForDate(date, include_year) {\n // Implicit because undefined evaluates to false.\n // include_year = typeof include_year !== 'undefined' ? include_year : false;\n\n return (include_year ? (date.getFullYear() * 10000) : 0) + (date.getMonth() * 100) + date.getDate();\n }\n /* }}} */\n\n /* Return the school holiday definition e.g. [ 5, 25, to 6, 5 ], for the specified year {{{\n *\n * :param SH_hash:\n * :param year: Year as integer.\n * :param fatal: Defines the behavior in case no definition is find. Throw an error if set to true. Return return undefined otherwise.\n * :returns: school holidays for the given year.\n */\n function getSHForYear(SH_hash, year, fatal) {\n if (typeof fatal !== 'boolean') {\n fatal = true;\n }\n\n let holiday = SH_hash[year];\n if (typeof holiday === 'undefined') {\n holiday = SH_hash['default']; // applies for any year without explicit definition\n if (typeof holiday === 'undefined') {\n if (fatal) {\n throw formatLibraryBugMessage(t('no SH definition', {\n 'name': SH_hash.name + ' ',\n 'year': year,\n }), 'library bug PR only');\n } else {\n return undefined;\n }\n }\n }\n return holiday;\n }\n /* }}} */\n\n /* Convert month and day to a comparable number (month * 100 + day). {{{\n * For example: Jan 15 -> 115, Dec 25 -> 1225\n *\n * :param month: Month as integer (1-12).\n * :param day: Day as integer (1-31).\n * :returns: Number for comparison.\n */\n function getDateNumber(month, day) {\n return (month - 1) * 100 + day;\n }\n /* }}} */\n\n /* Collect all school holiday ranges for a given year from multiple holiday definitions. {{{\n *\n * :param applying_holidays: Array of holiday definition objects.\n * :param year: Year as integer.\n * :returns: Array of range objects with from_month, from_day, to_month, to_day, name, holiday_obj.\n */\n function collectSHRangesForYear(applying_holidays, year) {\n const all_ranges = [];\n for (let i = 0; i < applying_holidays.length; i++) {\n const holiday = getSHForYear(applying_holidays[i], year, false);\n if (typeof holiday === 'undefined') {\n continue;\n }\n for (let h = 0; h < holiday.length; h += 4) {\n all_ranges.push({\n from_month: holiday[0 + h],\n from_day: holiday[1 + h],\n to_month: holiday[2 + h],\n to_day: holiday[3 + h],\n name: applying_holidays[i].name,\n holiday_obj: applying_holidays[i]\n });\n }\n }\n return all_ranges;\n }\n /* }}} */\n\n /* Sort holiday ranges by their start date (chronologically). {{{\n *\n * :param ranges: Array of range objects (will be sorted in-place).\n * :returns: The sorted ranges array.\n */\n function sortRangesByStartDate(ranges) {\n return ranges.sort((a, b) => {\n const a_from = getDateNumber(a.from_month, a.from_day);\n const b_from = getDateNumber(b.from_month, b.from_day);\n return a_from - b_from;\n });\n }\n /* }}} */\n\n /* Create a school holiday selector function for checking if a date falls within school holidays. {{{\n *\n * :param applying_holidays: Array of school holiday definition objects.\n * :returns: Selector function that checks if a date is within school holiday ranges.\n */\n function createSchoolHolidaySelector(applying_holidays) {\n return function(date) {\n const date_num = getValueForDate(date);\n const year = date.getFullYear();\n\n // Collect all holiday ranges from all holiday types for this year,\n // sorted chronologically by start date.\n const all_ranges = collectSHRangesForYear(applying_holidays, year);\n sortRangesByStartDate(all_ranges);\n\n // Check for holidays from last year spanning into this year\n for (let i = 0; i < applying_holidays.length; i++) {\n const last_year_holiday = getSHForYear(applying_holidays[i], year - 1, false);\n if (typeof last_year_holiday === 'object') {\n // Check the last range of this holiday type from last year\n const last_idx = last_year_holiday.length - 4;\n const last_year_holiday_from = getDateNumber(last_year_holiday[last_idx], last_year_holiday[last_idx + 1]);\n const last_year_holiday_to = getDateNumber(last_year_holiday[last_idx + 2], last_year_holiday[last_idx + 3]);\n\n // If holiday spans into next year and we're still in that period\n if (last_year_holiday_from > last_year_holiday_to && date_num <= last_year_holiday_to) {\n return [true, new Date(year,\n last_year_holiday[last_idx + 2] - 1,\n last_year_holiday[last_idx + 3] + 1),\n applying_holidays[i].name];\n }\n }\n }\n\n // Check each holiday range\n for (let r = 0; r < all_ranges.length; r++) {\n const range = all_ranges[r];\n const holiday_from = getDateNumber(range.from_month, range.from_day);\n const holiday_to = getDateNumber(range.to_month, range.to_day);\n const holiday_ends_next_year = holiday_to < holiday_from;\n\n if (date_num < holiday_from) {\n // Date is before this holiday range - return false with next holiday start\n return [false, new Date(year, range.from_month - 1, range.from_day)];\n } else if (holiday_from <= date_num && (date_num <= holiday_to || holiday_ends_next_year)) {\n // Date is within this holiday range\n return [true, new Date(year + holiday_ends_next_year, range.to_month - 1, range.to_day + 1),\n range.name];\n }\n // Date is after this holiday range - check next range\n }\n\n // Date is after all holidays this year - check next year's first holiday\n const next_year_ranges = [];\n for (let i = 0; i < applying_holidays.length; i++) {\n const holiday = getSHForYear(applying_holidays[i], year + 1, false);\n if (typeof holiday === 'undefined') {\n continue;\n }\n next_year_ranges.push({\n from_month: holiday[0],\n from_day: holiday[1],\n name: applying_holidays[i].name\n });\n }\n if (next_year_ranges.length > 0) {\n sortRangesByStartDate(next_year_ranges);\n return [false, new Date(year + 1, next_year_ranges[0].from_month - 1, next_year_ranges[0].from_day)];\n }\n\n throw formatLibraryBugMessage(t('no SH definition', {\n 'name': '',\n 'year': year,\n }), 'library bug PR only');\n };\n }\n /* }}} */\n\n /* Create a selector function for public holidays (PH). {{{\n *\n * :param applying_holidays: Array of holiday definition objects.\n * :param add_days: Array [days_to_add, token_count] from getMoveDays().\n * :returns: Selector function that checks if a date matches a public holiday.\n */\n function createPublicHolidaySelector(applying_holidays, add_days) {\n return function(date) {\n const holidays = getApplyingHolidaysForYear(applying_holidays, date.getFullYear(), add_days);\n // Needs to be calculated each time because of movable days.\n\n const date_num = getValueForDate(date, true);\n\n for (let i = 0; i < holidays.length; i++) {\n const next_holiday_date_num = getValueForDate(holidays[i][0], true);\n\n if (date_num < next_holiday_date_num) {\n\n if (add_days[0] > 0) {\n // Calculate the last holiday from previous year to tested against it.\n const holidays_last_year = getApplyingHolidaysForYear(applying_holidays, date.getFullYear() - 1, add_days);\n const last_holiday_last_year = holidays_last_year[holidays_last_year.length - 1];\n const last_holiday_last_year_num = getValueForDate(last_holiday_last_year[0], true);\n\n if (date_num < last_holiday_last_year_num ) {\n return [ false, last_holiday_last_year[0] ];\n } else if (date_num === last_holiday_last_year_num) {\n return [true, dateAtDayMinutes(last_holiday_last_year[0], minutes_in_day),\n 'Day after ' +last_holiday_last_year[1] ];\n }\n }\n\n return [ false, holidays[i][0] ];\n } else if (date_num === next_holiday_date_num) {\n return [true, new Date(date.getFullYear(), date.getMonth(), date.getDate() + 1),\n (add_days[0] > 0 ? 'Day after ' : (add_days[0] < 0 ? 'Day before ' : '')) + holidays[i][1] ];\n }\n }\n\n if (add_days[0] < 0) {\n // Calculate the first holiday from next year to tested against it.\n const holidays_next_year = getApplyingHolidaysForYear(applying_holidays, date.getFullYear() + 1, add_days);\n const first_holidays_next_year = holidays_next_year[0];\n const first_holidays_next_year_num = getValueForDate(first_holidays_next_year[0], true);\n if (date_num === first_holidays_next_year_num) {\n return [true, dateAtDayMinutes(first_holidays_next_year[0], minutes_in_day),\n 'Day before ' + first_holidays_next_year[1] ];\n }\n }\n\n // continue next year\n return [ false, new Date(holidays[0][0].getFullYear() + 1,\n holidays[0][0].getMonth(),\n holidays[0][0].getDate()) ];\n };\n }\n /* }}} */\n\n function isPublicHoliday(date) {\n try {\n const applying_holidays = getMatchingHoliday('PH');\n return createPublicHolidaySelector(applying_holidays, [0, 0])(date)[0];\n } catch {\n return false;\n }\n }\n\n /* Return closest holiday definition available. {{{\n *\n * First try to get the state, if missing get the country wide holidays\n * (which can on it’s own be limited to some states).\n *\n * :param type_of_holidays: Choices: PH, SH.\n * :returns: Public or school holiday list.\n */\n function getMatchingHoliday(type_of_holidays) {\n if (typeof location_cc !== 'string') {\n /* We have no idea which holidays do apply because the country code was not provided. */\n throw t('no country code');\n }\n\n if (!holiday_definitions[location_cc]) {\n throw formatLibraryBugMessage(t('no holiday definition', {\n 'name': type_of_holidays,\n 'cc': location_cc,\n }), 'library bug PR only');\n }\n\n let matching_holiday = [];\n if (typeof location_state === 'string'\n && typeof holiday_definitions[location_cc][location_state] === 'object'\n && typeof holiday_definitions[location_cc][location_state][type_of_holidays] === 'object') {\n\n /* If holiday_definitions for the state are specified,\n * use it and ignore lesser specific ones (for the\n * country).\n */\n\n const country_holidays = holiday_definitions[location_cc][type_of_holidays] || [];\n const state_holidays = holiday_definitions[location_cc][location_state][type_of_holidays];\n if (type_of_holidays === 'PH') {\n matching_holiday = state_holidays;\n } else if (!country_holidays.length) {\n matching_holiday = state_holidays;\n } else {\n // Merge country and state holidays chronologically\n const country_holiday_names = country_holidays.map(function(country_holiday) {\n return country_holiday.name;\n });\n matching_holiday.push.apply(matching_holiday, country_holidays);\n matching_holiday.push.apply(matching_holiday, state_holidays.filter(function is_not_a_country_holiday(state_holiday) {\n return country_holiday_names.indexOf(state_holiday.name) === -1;\n }));\n matching_holiday.sort(function(h1, h2) {\n const h1_year = Object.keys(h1).find(function(k) {return k !== 'name';});\n const h2_year = Object.keys(h2).find(function(k) {return k !== 'name';});\n const h1_date = h1[h1_year];\n const h2_date = h2[h2_year];\n // compare both months, or to break a tie both days\n return (h1_date[0] - h2_date[0]) || (h1_date[1] - h2_date[1]);\n });\n }\n } else if (holiday_definitions[location_cc][type_of_holidays]) {\n /* Holidays are defined country wide. Some\n * countries only have country-wide holiday definitions\n * so that is ok too.\n */\n const applying_holidays_for_country = holiday_definitions[location_cc][type_of_holidays];\n\n switch (type_of_holidays) {\n case 'PH':\n applying_holidays_for_country.forEach(function (holiday_item) {\n /* Holidays in the country-wide scope can be limited to certain states. */\n if ('only_states' in holiday_item) {\n if (-1 === holiday_item.only_states.indexOf(location_state)) {\n return;\n }\n }\n\n matching_holiday.push(holiday_item);\n });\n break;\n case 'SH':\n matching_holiday = applying_holidays_for_country;\n break;\n }\n } else {\n throw formatLibraryBugMessage(t('no holiday definition state', {\n 'name': type_of_holidays,\n 'cc': location_cc,\n 'state': location_state,\n }), 'library bug PR only');\n }\n\n if (matching_holiday.length === 0) {\n throw formatLibraryBugMessage(t('no holiday definition', {\n 'name': type_of_holidays,\n 'cc': location_cc,\n }), 'library bug PR only');\n }\n\n return matching_holiday;\n }\n /* }}} */\n\n /* Return variable dates used for holiday calculation. {{{\n *\n * :param year: Year as integer.\n * :returns: Hash of variables dates. Key is the name of the variable date. Value is the variable date date object.\n */\n function getMovableEventsForYear(year) {\n /* Calculate easter {{{ */\n const C = Math.floor(year/100);\n const N = year - 19*Math.floor(year/19);\n const K = Math.floor((C - 17)/25);\n let I = C - Math.floor(C/4) - Math.floor((C - K)/3) + 19*N + 15;\n I = I - 30*Math.floor((I/30));\n I = I - Math.floor(I/28)*(1 - Math.floor(I/28)*Math.floor(29/(I + 1))*Math.floor((21 - N)/11));\n let J = year + Math.floor(year/4) + I + 2 - C + Math.floor(C/4);\n J = J - 7*Math.floor(J/7);\n const L = I - J;\n const M = 3 + Math.floor((L + 40)/44);\n const D = L + 28 - 31*Math.floor(M/4);\n /* }}} */\n\n /* Calculate orthodox easter {{{ */\n const oA = year % 4;\n const oB = year % 7;\n const oC = year % 19;\n const oD = (19*oC + 15) % 30;\n const oE = (2*oA+4*oB - oD + 34) % 7;\n const oF = oD+oE;\n\n let oDate;\n if (oF < 9) {\n oDate = new Date(year, 4-1, oF+4);\n } else {\n if ((oF+4)<31) {\n oDate = new Date(year, 4-1, oF+4);\n } else {\n oDate = new Date(year, 5-1, oF-26);\n }\n }\n /* }}} */\n\n /* Calculate last Sunday in February {{{ */\n const lastFebruaryDay = new Date(year, 2, 0);\n const lastFebruarySunday = lastFebruaryDay.getDate() - lastFebruaryDay.getDay();\n /* }}} */\n\n /* Calculate Victoria Day. last Monday before or on May 24 {{{ */\n const may_24 = new Date(year, 4, 24);\n const victoriaDay = 24 - ((6 + may_24.getDay()) % 7);\n /* }}} */\n\n /* Calculate Canada Day. July 1st unless 1st is on Sunday, then July 2. {{{ */\n const july_1 = new Date(year, 6, 1);\n const canadaDay = july_1.getDay() === 0 ? 2 : 1;\n /* }}} */\n\n /* Calculation of the spring and autumnal equinoxes (for Public holidays in Japan). {{{ */\n function springEquinoxCalc(year){\n if(year >= 1900 && year <= 1923){\n if(year % 4 === 3) return new Date(year, 2, 22)\n else return new Date(year, 2, 21)\n } else if(year >= 1924 && year <= 1959){\n return new Date(year, 2, 21)\n } else if(year >= 1960 && year <= 1991){\n if(year % 4 === 0) return new Date(year, 2, 20)\n else return new Date(year, 2, 21)\n } else if(year >= 1992 && year <= 2023){\n if(year % 4 === 0 || year % 4 === 1) return new Date(year, 2, 20)\n else return new Date(year, 2, 21)\n } else if(year >= 2024 && year <= 2055){\n if(year % 4 === 3) return new Date(year, 2, 21)\n else return new Date(year, 2, 20)\n } else if(year >= 2056 && year <= 2091){\n return new Date(year, 2, 20)\n } else if(year >= 2092 && year <= 2099){\n if(year % 4 === 0) return new Date(year, 2, 19)\n else return new Date(year, 2, 20)\n }\n }\n\n function autumnalEquinoxCalc(year){\n if(year >= 1900 && year <= 1919){\n if(year % 4 === 0) return new Date(year, 8, 23)\n else return new Date(year, 8, 24)\n } else if(year >= 1920 && year <= 1947){\n if(year % 4 === 0 || year % 4 === 1) return new Date(year, 8, 23)\n else return new Date(year, 8, 24)\n } else if(year >= 1948 && year <= 1979){\n if(year % 4 === 3) return new Date(year, 8, 24)\n else return new Date(year, 8, 23)\n } else if(year >= 1980 && year <= 2011){\n return new Date(year, 8, 23)\n } else if(year >= 2012 && year <= 2043){\n if(year % 4 === 0) return new Date(year, 8, 22)\n else return new Date(year, 8, 23)\n } else if(year >= 2044 && year <= 2075){\n if(year % 4 === 0 || year % 4 === 1) return new Date(year, 8, 22)\n else return new Date(year, 8, 23)\n } else if(year >= 2076 && year <= 2099){\n if(year % 4 === 3) return new Date(year, 8, 23)\n else return new Date(year, 8, 22)\n }\n }\n\n /* Helper functions {{{ */\n function firstWeekdayOfMonth(month, weekday){\n const first = new Date(year, month, 1);\n return 1 + ((7 + weekday - first.getDay()) % 7);\n }\n\n function lastWeekdayOfMonth(month, weekday){\n const last = new Date(year, month+1, 0);\n const offset = ((7 + last.getDay() - weekday) % 7);\n return last.getDate() - offset;\n }\n\n function weekdayBefore(month, day, weekday){\n const date = new Date(year, month, day);\n let days = (date.getDay() - weekday + 7) % 7;\n if (days === 0) days = 7;\n date.setDate(date.getDate() - days);\n return date;\n }\n\n function getDateOfWeekdayInDateRange(weekday, start_date){\n let days_to_dest_date = weekday - start_date.getDay();\n if (days_to_dest_date < 0) {\n days_to_dest_date += 7;\n }\n start_date.setDate(start_date.getDate() + days_to_dest_date);\n return start_date;\n }\n\n /* Date of next weekday range. {{{\n *\n * :param first_weekday: First weekday in range of wanted weekday (1 is Mo).\n * :param last_weekday: Last weekday in range of wanted weekday (1 is Mo).\n * :param start_date: Earliest possible date to consider.\n * :returns: start_date if in weekday range, otherwise the next day which is in range.\n */\n function getDateOfNextWeekdayRange(first_weekday, last_weekday, start_date){\n if (first_weekday >= last_weekday) {\n throw formatLibraryBugMessage('Not implemented yet.');\n }\n\n if (first_weekday <= start_date.getDay() && start_date.getDay() <= last_weekday) {\n return start_date;\n } else {\n let days_to_dest_date = first_weekday - start_date.getDay();\n if (days_to_dest_date < 0) {\n days_to_dest_date += 7;\n }\n start_date.setDate(start_date.getDate() + days_to_dest_date);\n return start_date;\n }\n\n }\n /* }}} */\n\n return {\n 'easter' : new Date(year, M - 1, D),\n 'orthodox easter' : oDate,\n 'victoriaDay' : new Date(year, 4, victoriaDay),\n 'canadaDay' : new Date(year, 6, canadaDay),\n 'firstJanuaryMonday' : new Date(year, 0, firstWeekdayOfMonth(0, 1)),\n 'firstFebruaryMonday' : new Date(year, 1, firstWeekdayOfMonth(1, 1)),\n 'lastFebruarySunday' : new Date(year, 1, lastFebruarySunday),\n 'firstMarchMonday' : new Date(year, 2, firstWeekdayOfMonth(2, 1)),\n 'firstAprilMonday' : new Date(year, 3, firstWeekdayOfMonth(3, 1)),\n 'firstMayMonday' : new Date(year, 4, firstWeekdayOfMonth(4, 1)),\n 'firstJuneMonday' : new Date(year, 5, firstWeekdayOfMonth(5, 1)),\n 'firstJuneFriday' : new Date(year, 5, firstWeekdayOfMonth(5, 5)),\n 'firstJulyMonday' : new Date(year, 6, firstWeekdayOfMonth(6, 1)),\n 'firstAugustMonday' : new Date(year, 7, firstWeekdayOfMonth(7, 1)),\n 'firstSeptemberMonday' : new Date(year, 8, firstWeekdayOfMonth(8, 1)),\n 'firstSeptemberTuesday' : new Date(year, 8, firstWeekdayOfMonth(8, 2)),\n 'firstSeptemberSunday' : new Date(year, 8, firstWeekdayOfMonth(8, 0)),\n 'firstOctoberMonday' : new Date(year, 9, firstWeekdayOfMonth(9, 1)),\n 'firstNovemberMonday' : new Date(year, 10, firstWeekdayOfMonth(10, 1)),\n 'firstNovemberTuesday' : new Date(year, 10, firstWeekdayOfMonth(10, 2)),\n 'firstMarchTuesday' : new Date(year, 2, firstWeekdayOfMonth(2, 2)),\n 'firstAugustTuesday' : new Date(year, 7, firstWeekdayOfMonth(7, 2)),\n 'firstAugustFriday' : new Date(year, 7, firstWeekdayOfMonth(7, 5)),\n 'firstNovemberThursday' : new Date(year, 10, firstWeekdayOfMonth(10, 4)),\n 'lastNovemberWednesday' : new Date(year, 10, lastWeekdayOfMonth(10, 3)),\n 'lastMayMonday' : new Date(year, 4, lastWeekdayOfMonth(4, 1)),\n 'lastMarchMonday' : new Date(year, 2, lastWeekdayOfMonth(2, 1)),\n 'lastAprilMonday' : new Date(year, 3, lastWeekdayOfMonth(3, 1)),\n 'lastAprilFriday' : new Date(year, 3, lastWeekdayOfMonth(3, 5)),\n 'lastAugustMonday' : new Date(year, 7, lastWeekdayOfMonth(7, 1)),\n 'lastSeptemberMonday' : new Date(year, 8, lastWeekdayOfMonth(8, 1)),\n 'lastSeptemberFriday' : new Date(year, 8, lastWeekdayOfMonth(8, 5)),\n 'lastOctoberMonday' : new Date(year, 9, lastWeekdayOfMonth(9, 1)),\n 'lastOctoberFriday' : new Date(year, 9, lastWeekdayOfMonth(9, 5)),\n 'nextSaturday20Jun' : getDateOfWeekdayInDateRange(6, new Date(year, 5, 20)),\n 'nextSaturday31Oct' : getDateOfWeekdayInDateRange(6, new Date(year, 9, 31)),\n 'nextWednesday16Nov' : getDateOfWeekdayInDateRange(3, new Date(year, 10, 16)),\n 'nextMo-Fr17March' : getDateOfNextWeekdayRange(1, 5, new Date(year, 2, 17)),\n 'nextMo-Sa01May' : getDateOfNextWeekdayRange(1, 6, new Date(year, 4, 1)),\n 'nextMo-Fr12July' : getDateOfNextWeekdayRange(1, 5, new Date(year, 6, 12)),\n 'nextMo-Sa07August' : getDateOfNextWeekdayRange(1, 6, new Date(year, 7, 7)),\n 'nextMo-Fr30November' : getDateOfNextWeekdayRange(1, 5, new Date(year, 10, 30)),\n 'nextMo-Sa25December' : getDateOfNextWeekdayRange(1, 6, new Date(year, 11, 25)),\n 'springEquinox' : springEquinoxCalc(year),\n 'autumnalEquinox' : autumnalEquinoxCalc(year),\n 'mondayBefore20Jun' : weekdayBefore(5, 20, 1),\n };\n }\n /* }}} */\n\n // Shift rule support for transferable holidays. {{{\n\n const weekday_name_to_num = {\n sunday: 0, monday: 1, tuesday: 2, wednesday: 3,\n thursday: 4, friday: 5, saturday: 6,\n };\n\n const shift_rule_cache = Object.create(null);\n\n /* Compile a shift_rule string into a (Date) => Date shifter.\n *\n * A `shift_rule` field on a holiday definition moves the holiday’s date\n * depending on the weekday it falls on. The syntax is a subset of the\n * date-holidays DSL: chained `if … then …` clauses, first match wins,\n * unmatched dates stay unchanged.\n *\n * Format:\n * “if <wd>[,<wd>...] then <next|previous> <wd> [if … then … <wd>]*”\n *\n * Collision behaviour: if the shifted date would land on another\n * non-shifted holiday in the same year, the holiday keeps its original\n * date instead.\n */\n function compileShiftRule(rule) {\n if (shift_rule_cache[rule]) {\n return shift_rule_cache[rule];\n }\n const clauses = parseShiftRule(rule);\n const shifter = function (date) {\n return applyShiftClauses(clauses, date);\n };\n shift_rule_cache[rule] = shifter;\n return shifter;\n }\n\n /* Parse a shift_rule string into a list of clause objects.\n *\n * Each clause has the shape:\n * { from_wds: [<int>, ...], direction: \"next\"|\"previous\", target_wd: <int> }\n * where weekdays are 0–6 (Sunday–Saturday).\n */\n function parseShiftRule(rule) {\n function fail(detail) {\n throw formatLibraryBugMessage(\n 'shift_rule: ' + detail + ' in \"' + rule + '\"'\n );\n }\n function toWeekdayNum(name) {\n const n = name.trim();\n if (!(n in weekday_name_to_num)) {\n fail('unknown weekday \"' + n + '\"');\n }\n return weekday_name_to_num[n];\n }\n\n const clause_regex = /if\\s+([a-z,\\s]+?)\\s+then\\s+(next|previous)\\s+([a-z]+)/g;\n const clauses = [];\n let last_end = 0;\n let match;\n while ((match = clause_regex.exec(rule)) !== null) {\n // Any text before the first match or between matches must be blank.\n if (rule.slice(last_end, match.index).trim() !== '') {\n fail('cannot parse');\n }\n clauses.push({\n from_wds: match[1].split(',').map(toWeekdayNum),\n direction: match[2],\n target_wd: toWeekdayNum(match[3]),\n });\n last_end = clause_regex.lastIndex;\n }\n if (clauses.length === 0 || rule.slice(last_end).trim() !== '') {\n fail('cannot parse');\n }\n return clauses;\n }\n\n /* Apply the first matching clause to `date` and return the shifted date.\n * Returns the original date if no clause matches.\n */\n function applyShiftClauses(clauses, date) {\n const wd = date.getDay();\n for (let i = 0; i < clauses.length; i++) {\n const c = clauses[i];\n if (c.from_wds.indexOf(wd) === -1) continue;\n\n // Distance to the target weekday, always in the range [1, 7].\n // The modulo alone could yield 0 when wd === target_wd, but the\n // from_wds guard above prevents that for well-formed rules.\n // The \"|| 7\" is a safety net: if it ever did produce 0 we would\n // shift by a full week rather than silently not moving the date.\n let diff;\n if (c.direction === 'next') {\n diff = ((c.target_wd - wd + 7) % 7) || 7; // move forward\n } else {\n diff = -(((wd - c.target_wd + 7) % 7) || 7); // move backward\n }\n return new Date(date.getFullYear(), date.getMonth(), date.getDate() + diff);\n }\n return date;\n }\n\n function getApplyingHolidaysForYear(applying_holidays, year, add_days) {\n const movableDays = getMovableEventsForYear(year);\n\n /* Pass 1: resolve the base date of every holiday (no shift, no add_days). */\n const resolved = applying_holidays\n .filter(function (holiday_item) {\n return !('year' in holiday_item) || holiday_item.year === year;\n })\n .map(function (holiday_item) {\n let base_date;\n if ('fixed_date' in holiday_item) {\n base_date = new Date(year,\n holiday_item.fixed_date[0] - 1,\n holiday_item.fixed_date[1]\n );\n } else if ('variable_date' in holiday_item) {\n const selected_movableDay = movableDays[holiday_item.variable_date];\n if (!selected_movableDay) {\n throw t('movable no formula', {'name': holiday_item.name});\n }\n const date_offset = 'offset' in holiday_item ? holiday_item.offset : 0;\n base_date = new Date(selected_movableDay.getFullYear(),\n selected_movableDay.getMonth(),\n selected_movableDay.getDate() + date_offset\n );\n if (year !== base_date.getFullYear()) {\n throw t('movable not in year', {\n 'name': holiday_item.variable_date, 'days': date_offset});\n }\n } else {\n throw formatLibraryBugMessage('Unexpected object: ' + JSON.stringify(holiday_item, null, ' '));\n }\n return { date: base_date, holiday: holiday_item };\n });\n\n /* Pass 2: apply shift_rule with collision detection.\n * Collisions are checked against the nominal (non-shifted, no-add_days)\n * dates of all non-shifted holidays — never against other shifted ones,\n * to keep the result deterministic regardless of declaration order.\n */\n const fixed_times = new Set();\n resolved.forEach(function (r) {\n if (!r.holiday.shift_rule) {\n fixed_times.add(r.date.getTime());\n }\n });\n resolved.forEach(function (r) {\n if (!r.holiday.shift_rule) return;\n const shifter = compileShiftRule(r.holiday.shift_rule);\n const shifted = shifter(r.date);\n if (shifted.getTime() === r.date.getTime()) return;\n // Keep original date on collision with a non-shifted holiday.\n if (fixed_times.has(shifted.getTime())) return;\n r.date = shifted;\n });\n\n /* Pass 2b: apply substitute_rule — additive substitutes.\n * The original date stays a holiday; an extra entry is appended when\n * the original falls on one of the trigger weekdays.\n * Unlike shift_rule there is no collision detection, so this relies on\n * the holiday data being arranged such that a substitute never lands on\n * another holiday (e.g. ZA omits the rule on Christmas Day because\n * Day of Goodwill already covers the following Monday).\n * Example: New Year's Day on Sunday → Jan 1 stays + extra day on Monday.\n */\n const substitutes = [];\n resolved.forEach(function (holiday_entry) {\n const original = holiday_entry.holiday;\n if (!original.substitute_rule) return;\n\n const shifter = compileShiftRule(original.substitute_rule);\n const substitute_date = shifter(holiday_entry.date);\n\n // The rule didn't match this weekday, so no substitute is needed.\n if (substitute_date.getTime() === holiday_entry.date.getTime()) return;\n\n // Clone the definition so renaming the substitute doesn't mutate the\n // shared holiday object. A substitute is itself a plain holiday, so\n // drop the rule fields that only make sense on the original.\n const substitute = { ...original };\n if (original.substitute_name) {\n substitute.name = original.substitute_name;\n }\n delete substitute.substitute_rule;\n delete substitute.substitute_name;\n\n substitutes.push({ date: substitute_date, holiday: substitute });\n });\n\n // Merge the substitute days into the resolved holidays list.\n resolved.push(...substitutes);\n\n /* Pass 3: apply add_days uniformly and sort. */\n let sorted_holidays = resolved.map(function (r) {\n let d = r.date;\n if (add_days[0]) {\n d = new Date(d.getFullYear(), d.getMonth(), d.getDate() + add_days[0]);\n }\n return [ d, r.holiday.name ];\n });\n\n sorted_holidays = sorted_holidays.sort(function(a,b){\n if (a[0].getTime() < b[0].getTime()) return -1;\n if (a[0].getTime() > b[0].getTime()) return 1;\n return 0;\n });\n\n return sorted_holidays;\n }\n /* }}} */\n /* }}} */\n\n /* Year range parser (2013,2016-2018,2020/2). {{{\n *\n * :param tokens: List of token objects.\n * :param at: Position where to start.\n * :returns: Position at which the token does not belong to the selector anymore.\n */\n function parseYearRange(tokens, at) {\n tokens[at][3] = 'year';\n for (; at < tokens.length; at++) {\n if (matchTokens(tokens, at, 'year')) {\n let is_range,\n has_period,\n period;\n if (matchTokens(tokens, at+1, '-', 'year', '/', 'number')) {\n is_range = true;\n has_period = true;\n period = parseInt(tokens[at+4][0]);\n checkPeriod(at+4, period, 'year');\n } else {\n is_range = matchTokens(tokens, at+1, '-', 'year');\n has_period = matchTokens(tokens, at+1, '/', 'number');\n if (has_period) {\n period = parseInt(tokens[at+2][0]);\n checkPeriod(at+2, period, 'year', 'no_end_year');\n } else if (matchTokens(tokens, at+1, '+')) {\n period = 1;\n has_period = 2;\n }\n }\n\n const year_from = parseInt(tokens[at][0]);\n // error checking {{{\n if (is_range && tokens[at+2][0] <= year_from) {\n // handle reversed range\n if (tokens[at+2][0] === year_from) {\n throw formatWarnErrorMessage(nrule, at, t('year range one year', {'year': year_from }));\n } else {\n throw formatWarnErrorMessage(nrule, at, t('year range reverse'));\n }\n }\n if (!is_range && year_from < new Date().getFullYear()) {\n parsing_warnings.push([ nrule, at, 'year_past', t('year past') ]);\n }\n if (is_range && tokens[at+2][0] < new Date().getFullYear()) {\n parsing_warnings.push([ nrule, at+2, 'year_past', t('year past') ]);\n }\n /* }}} */\n\n rule.year.push(function(tokens, at, year_from, is_range, has_period, period) { return function(date) {\n const ouryear = date.getFullYear();\n const year_to = is_range ? parseInt(tokens[at+2][0]) : year_from;\n\n if (ouryear < year_from ){\n return [false, new Date(year_from, 0, 1)];\n } else if (has_period) {\n if (year_from <= ouryear) {\n if (is_range && ouryear > year_to)\n return [false];\n if (period > 0) {\n if ((ouryear - year_from) % period === 0) {\n return [true, new Date(ouryear + 1, 0, 1)];\n } else {\n return [false, new Date(ouryear + period - 1, 0, 1)];\n }\n }\n }\n } else if (is_range) {\n if (ouryear <= year_to)\n return [true, new Date(year_to + 1, 0, 1)];\n } else if (ouryear === year_from) {\n return [true];\n }\n\n return [false];\n\n }}(tokens, at, year_from, is_range, has_period, period));\n\n at += 1 + (is_range ? 2 : 0) + (has_period ? (has_period === 2 ? 1 : 2) : 0);\n } else if (matchTokens(tokens, at - 1, ',')) { // additional rule\n throw formatWarnErrorMessage(nrule, at - 1, t('additional rule no sense'));\n } else {\n throw formatWarnErrorMessage(nrule, at, t('unexpected token year range', {'token': tokens[at][1]}));\n }\n\n if (!matchTokens(tokens, at, ','))\n break;\n }\n\n return at;\n }\n /* }}} */\n\n /* Week range parser (week 11-20, week 1-53/2). {{{\n *\n * :param tokens: List of token objects.\n * :param at: Position where to start.\n * :returns: Position at which the token does not belong to the selector anymore.\n */\n function parseWeekRange(tokens, at) {\n for (; at < tokens.length; at++) {\n if (matchTokens(tokens, at, 'week')) {\n at++;\n }\n if (matchTokens(tokens, at, 'number')) {\n const is_range = matchTokens(tokens, at+1, '-', 'number');\n let period = 0;\n const week_from = tokens[at][0];\n const week_to = is_range ? tokens[at+2][0] : week_from;\n if (week_from > week_to) {\n throw formatWarnErrorMessage(nrule, at+2, t('week range reverse'));\n }\n if (week_from < 1) {\n throw formatWarnErrorMessage(nrule, at, t('week negative'));\n }\n if (week_to > 53) {\n throw formatWarnErrorMessage(nrule, is_range ? at+2 : at, t('week exceed'));\n }\n if (is_range) {\n period = matchTokens(tokens, at+3, '/', 'number');\n if (period) {\n period = tokens[at+4][0];\n tokens[at+4][4] = 'positive_number';\n if (period < 2) {\n throw formatWarnErrorMessage(nrule, at+4, t('week period less than 2', {\n 'weekfrom': week_from, 'weekto': week_to, 'period': period}));\n } else if (period > 26) {\n throw formatWarnErrorMessage(nrule, at+4, t('week period greater than 26', {\n 'weekfrom': week_from\n }));\n }\n }\n }\n\n if (week_stable && (!(week_from <= 1 && week_to >= 53) || period)) {\n week_stable = false;\n }\n\n if (!period && week_from === 1 && week_to === 53) {\n /* Shortcut and work around bug. */\n rule.week.push(function() { return [true]; });\n } else {\n\n rule.week.push(function(week_from, week_to, period) { return function(date) {\n const ourweek = getWeekNumber(date);\n\n // console.log(\"week_from: %s, week_to: %s\", week_from, week_to);\n // console.log(\"ourweek: %s, date: %s\", ourweek, date);\n\n // before range\n if (ourweek < week_from) {\n // console.log(\"Before: \" + getNextDateOfISOWeek(week_from, date));\n return [false, getNextDateOfISOWeek(week_from, date)];\n }\n\n // we're after range, set check date to next year\n if (ourweek > week_to) {\n // console.log(\"After\");\n return [false, getNextDateOfISOWeek(week_from, date)];\n }\n\n // we're in range\n if (period) {\n const in_period = (ourweek - week_from) % period === 0;\n if (in_period) {\n return [true, getNextDateOfISOWeek(ourweek + 1, date)];\n } else {\n // Calculate how many weeks we need to skip to land on the next period-aligned week\n const weeks_until_next_match = period - ((ourweek - week_from) % period);\n const next_matching_week = ourweek + weeks_until_next_match;\n if (next_matching_week <= week_to) {\n return [false, getNextDateOfISOWeek(next_matching_week, date)];\n } else {\n // No further match within the range; wrap to the first matching week in the next year\n return [false, getNextDateOfISOWeek(week_from, date)];\n }\n }\n }\n\n // console.log(\"Match\");\n return [true, getNextDateOfISOWeek(week_to === 53 ? 1 : week_to + 1, date)];\n }}(week_from, week_to, period));\n }\n\n at += 1 + (is_range ? 2 : 0) + (period ? 2 : 0);\n } else if (matchTokens(tokens, at - 1, ',')) { // additional rule\n throw formatWarnErrorMessage(nrule, at - 1, t('additional rule no sense'));\n } else {\n throw formatWarnErrorMessage(nrule, at, t('unexpected token week range', {'token': tokens[at][1]}));\n }\n\n if (!matchTokens(tokens, at, ','))\n break;\n }\n\n return at;\n }\n\n // https://stackoverflow.com/a/6117889\n /* For a given date, get the ISO week number.\n *\n * Based on information at:\n *\n * http://www.merlyn.demon.co.uk/weekcalc.htm#WNR\n *\n * Algorithm is to find nearest Thursday, it's year\n * is the year of the week number. Then get weeks\n * between that date and the first day of that year.\n *\n * Note that dates in one year can be weeks of previous\n * or next year, overlap is up to 3 days.\n *\n * e.g. 2014/12/29 is Monday in week 1 of 2015\n * 2012/1/1 is Sunday in week 52 of 2011\n */\n function getWeekNumber(d) {\n // Copy date so don't modify original\n d = new Date(+d);\n d.setHours(0,0,0,0);\n // Set to nearest Thursday: current date + 4 - current day number\n // Make Sunday's day number 7\n d.setDate(d.getDate() + 4 - (d.getDay()||7));\n // Get first day of year\n const yearStart = new Date(d.getFullYear(),0,1);\n // Calculate full weeks to nearest Thursday\n return Math.ceil(( ( (d - yearStart) / 86400000) + 1)/7)\n }\n // https://stackoverflow.com/a/16591175\n function getDateOfISOWeek(w, year) {\n const simple = new Date(year, 0, 1 + (w - 1) * 7);\n const dow = simple.getDay();\n const ISOweekStart = simple;\n if (dow <= 4)\n ISOweekStart.setDate(simple.getDate() - simple.getDay() + 1);\n else\n ISOweekStart.setDate(simple.getDate() + 8 - simple.getDay());\n return ISOweekStart;\n }\n function getNextDateOfISOWeek(week, date) {\n let next_date;\n for (let i = -1; i <= 1; i++) {\n next_date = getDateOfISOWeek(week, date.getFullYear() + i);\n if (next_date.getTime() > date.getTime()) {\n return next_date;\n }\n }\n throw formatLibraryBugMessage();\n }\n /* }}} */\n\n /* Month range parser (Jan,Feb-Mar). {{{\n *\n * :param tokens: List of token objects.\n * :param at: Position where to start.\n * :param push_to_monthday: Will push the selector into the monthday selector array which has the desired side effect of working in conjunction with the monthday selectors (either the month match or the monthday).\n * :returns: Position at which the token does not belong to the selector anymore.\n */\n function parseMonthRange(tokens, at, push_to_monthday, in_selector) {\n if (!in_selector)\n tokens[at][3] = 'month';\n\n for (; at < tokens.length; at++) {\n // Use parseMonthdayRange if '<month> <daynum>' and not '<month> <hour>:<minute>'\n if (matchTokens(tokens, at, 'month', 'number') && !matchTokens(tokens, at+2, 'timesep', 'number')) {\n return parseMonthdayRange(tokens, at, nrule, true);\n } else if (matchTokens(tokens, at, 'month')) {\n // Single month (Jan) or month range (Feb-Mar)\n const is_range = matchTokens(tokens, at+1, '-', 'month');\n\n let month_from = tokens[at][0];\n let month_to = is_range ? tokens[at+2][0] : month_from;\n\n if (is_range && week_stable) {\n if (month_from !== (month_to + 1) % 12)\n week_stable = false;\n } else {\n week_stable = false;\n }\n\n let inside = true;\n\n // handle reversed range\n if (month_to < month_from) {\n const tmp = month_to;\n month_to = month_from - 1;\n month_from = tmp + 1;\n inside = false;\n }\n\n const selector = function(month_from, month_to, inside) { return function(date) {\n const ourmonth = date.getMonth();\n\n if (month_to < month_from) {\n /* Handle full range. */\n return [!inside];\n }\n\n if (ourmonth < month_from || ourmonth > month_to) {\n return [!inside, dateAtNextMonth(date, month_from)];\n } else {\n return [inside, dateAtNextMonth(date, month_to + 1)];\n }\n }}(month_from, month_to, inside);\n\n if (push_to_monthday === true)\n rule.monthday.push(selector);\n else\n rule.month.push(selector);\n\n at += is_range ? 3 : 1;\n } else {\n throw formatWarnErrorMessage(nrule, at, t('unexpected token month range', {'token': tokens[at][1]}));\n }\n\n if (!matchTokens(tokens, at, ','))\n break;\n }\n\n return at;\n }\n\n function dateAtNextMonth(date, month) {\n return new Date(date.getFullYear(), month < date.getMonth() ? month + 12 : month);\n }\n /* }}} */\n\n /* Month day range parser (Jan 26-31; Jan 26-Feb 26). {{{\n *\n * :param tokens: List of token objects.\n * :param at: Position where to start.\n * :param nrule: Rule number starting with 0.\n * :param push_to_month: Will push the selector into the month selector array which has the desired side effect of working in conjunction with the month selectors (either the month match or the monthday).\n * :returns: Position at which the token does not belong to the selector anymore.\n */\n function parseMonthdayRange(tokens, at, nrule, push_to_month) {\n if (!push_to_month)\n tokens[at][3] = 'month';\n\n for (; at < tokens.length; at++) {\n let has_year = [];\n const has_month = [], has_event = [], has_calc = [], has_constrained_weekday = [];\n has_year[0] = matchTokens(tokens, at, 'year');\n has_month[0] = matchTokens(tokens, at+has_year[0], 'month', 'number');\n has_event[0] = matchTokens(tokens, at+has_year[0], 'event');\n\n if (has_event[0])\n has_calc[0] = getMoveDays(tokens, at+has_year[0]+1, 200, 'max differ name event like easter');\n\n let at_range_sep;\n if (matchTokens(tokens, at+has_year[0], 'month', 'weekday', '[')) {\n has_constrained_weekday[0] = getConstrainedWeekday(tokens, at+has_year[0]+3);\n has_calc[0] = getMoveDays(tokens, has_constrained_weekday[0][1], 6, 'max differ name constrained weekdays');\n at_range_sep = has_constrained_weekday[0][1] + (typeof has_calc[0] === 'object' && has_calc[0][1] ? 3 : 0);\n } else {\n at_range_sep = at+has_year[0]\n + (has_event[0]\n ? (typeof has_calc[0] === 'object' && has_calc[0][1] ? 4 : 1)\n : 2);\n }\n\n let at_sec_event_or_month;\n if ((has_month[0] || has_event[0] || has_constrained_weekday[0]) && matchTokens(tokens, at_range_sep, '-')) {\n has_year[1] = matchTokens(tokens, at_range_sep+1, 'year');\n at_sec_event_or_month = at_range_sep+1+has_year[1];\n has_month[1] = matchTokens(tokens, at_sec_event_or_month, 'month', 'number');\n if (!has_month[1]) {\n has_event[1] = matchTokens(tokens, at_sec_event_or_month, 'event');\n if (has_event[1]) {\n has_calc[1] = getMoveDays(tokens, at_sec_event_or_month+1, 366, 'max differ name event like easter');\n } else if (matchTokens(tokens, at_sec_event_or_month, 'month', 'weekday', '[')) {\n has_constrained_weekday[1] = getConstrainedWeekday(tokens, at_sec_event_or_month+3);\n has_calc[1] = getMoveDays(tokens, has_constrained_weekday[1][1], 6, 'max differ name constrained weekdays');\n }\n }\n }\n\n // monthday range like Jan 26-Feb 26 {{{\n if (has_year[0] === has_year[1] && (has_month[1] || has_event[1] || has_constrained_weekday[1])) {\n\n if (has_month[0])\n checkIfDateIsValid(tokens[at+has_year[0]][0], tokens[at+has_year[0]+1][0], nrule, at+has_year[0]+1);\n if (has_month[1])\n checkIfDateIsValid(tokens[at_sec_event_or_month][0], tokens[at_sec_event_or_month+1][0], nrule, at_sec_event_or_month+1);\n\n const selector = function(tokens, at, nrule, has_year, has_event, has_calc, at_sec_event_or_month, has_constrained_weekday) { return function(date) {\n const start_of_next_year = new Date(date.getFullYear() + 1, 0, 1);\n\n let movableDays, from_date;\n if (has_event[0]) {\n movableDays = getMovableEventsForYear(has_year[0] ? parseInt(tokens[at][0]) : date.getFullYear());\n from_date = movableDays[tokens[at+has_year[0]][0]];\n\n if (typeof has_calc[0] === 'object' && has_calc[0][1]) {\n const from_year_before_calc = from_date.getFullYear();\n from_date.setDate(from_date.getDate() + has_calc[0][0]);\n if (from_year_before_calc !== from_date.getFullYear())\n throw formatWarnErrorMessage(nrule, at+has_year[0]+has_calc[0][1]*3,\n t('movable not in year', {'name': tokens[at+has_year[0]][0], 'days': has_calc[0][0]}));\n }\n } else if (has_constrained_weekday[0]) {\n from_date = getDateForConstrainedWeekday((has_year[0] ? tokens[at][0] : date.getFullYear()), // year\n tokens[at+has_year[0]][0], // month\n tokens[at+has_year[0]+1][0], // weekday\n has_constrained_weekday[0],\n has_calc[0]);\n } else {\n from_date = new Date((has_year[0] ? tokens[at][0] : date.getFullYear()),\n tokens[at+has_year[0]][0], tokens[at+has_year[0]+1][0]);\n }\n\n let to_date;\n if (has_event[1]) {\n movableDays = getMovableEventsForYear(has_year[1]\n ? parseInt(tokens[at_sec_event_or_month-1][0])\n : date.getFullYear());\n to_date = movableDays[tokens[at_sec_event_or_month][0]];\n\n if (typeof has_calc[1] === 'object' && has_calc[1][1]) {\n const to_year_before_calc = to_date.getFullYear();\n to_date.setDate(to_date.getDate() + has_calc[1][0]);\n if (to_year_before_calc !== to_date.getFullYear()) {\n throw formatWarnErrorMessage(nrule, at_sec_event_or_month+has_calc[1][1],\n t('movable not in year', {'name': tokens[at_sec_event_or_month][0], 'days': has_calc[1][0] }));\n }\n }\n } else if (has_constrained_weekday[1]) {\n const to_year = has_year[1]\n ? tokens[at_sec_event_or_month-1][0]\n : date.getFullYear();\n const to_month = tokens[at_sec_event_or_month][0];\n const to_weekday = tokens[at_sec_event_or_month+1][0];\n\n to_date = getDateForConstrainedWeekday(\n to_year,\n to_month,\n to_weekday,\n has_constrained_weekday[1],\n has_calc[1]\n );\n to_date.setDate(to_date.getDate() + 1);\n } else {\n to_date = new Date((has_year[1] ? tokens[at_sec_event_or_month-1][0] : date.getFullYear()),\n tokens[at_sec_event_or_month][0], tokens[at_sec_event_or_month+1][0] + 1);\n }\n\n let inside = true;\n\n if (to_date < from_date) {\n const tmp = to_date;\n to_date = from_date;\n from_date = tmp;\n inside = false;\n }\n\n if (date.getTime() < from_date.getTime()) {\n return [!inside, from_date];\n } else if (date.getTime() < to_date.getTime()) {\n return [inside, to_date];\n } else {\n if (has_year[0]) {\n return [!inside];\n } else {\n return [!inside, start_of_next_year];\n }\n }\n }}(tokens, at, nrule, has_year, has_event, has_calc, at_sec_event_or_month, has_constrained_weekday);\n\n if (push_to_month === true)\n rule.month.push(selector);\n else\n rule.monthday.push(selector);\n\n at = (has_constrained_weekday[1]\n ? has_constrained_weekday[1][1]\n : at_sec_event_or_month + (has_event[1] ? 1 : 2))\n + (typeof has_calc[1] === 'object' ? has_calc[1][1] : 0);\n\n /* }}} */\n // Monthday range like Jan 26-31 {{{\n } else if (has_month[0]) {\n\n has_year = has_year[0];\n const year = tokens[at][0]; // Could be month if has no year. Tested later.\n const month = tokens[at+has_year][0];\n\n let first_round = true;\n let is_range;\n\n do {\n const range_from = tokens[at+1 + has_year][0];\n is_range = matchTokens(tokens, at+2+has_year, '-', 'number');\n let period = undefined;\n const range_to = tokens[at+has_year+(is_range ? 3 : 1)][0] + 1;\n if (is_range && matchTokens(tokens, at+has_year+4, '/', 'number')) {\n period = tokens[at+has_year+5][0];\n tokens[at+has_year+5][4] = 'positive_number';\n checkPeriod(at+has_year+5, period, 'day');\n }\n\n if (first_round) {\n const at_timesep_if_monthRange = at + has_year + 1 // at month number\n + (is_range ? 2 : 0) + (period ? 2 : 0)\n + !(is_range || period); // if not range nor has period, add one\n\n // Check for '<month> <timespan>'\n if (matchTokens(tokens, at_timesep_if_monthRange, 'timesep', 'number')\n && (matchTokens(tokens, at_timesep_if_monthRange+2, '+')\n || matchTokens(tokens, at_timesep_if_monthRange+2, '-')\n || oh_mode !== 0)\n ) {\n return parseMonthRange(tokens, at, true, true);\n }\n }\n\n // error checking {{{\n if (range_to < range_from)\n throw formatWarnErrorMessage(nrule, at+has_year+3, t('day range reverse'));\n\n checkIfDateIsValid(month, range_from, nrule, at+1 + has_year);\n checkIfDateIsValid(month, range_to - 1 /* added previously */,\n nrule, at+has_year+(is_range ? 3 : 1));\n /* }}} */\n\n const selector = function(year, has_year, month, range_from, range_to, period) { return function(date) {\n const start_of_next_year = new Date(date.getFullYear() + 1, 0, 1);\n\n const from_date = new Date(has_year ? year : date.getFullYear(),\n month, range_from);\n if (month === 1 && range_from !== from_date.getDate()) // Only on leap years does this day exist.\n return [false]; // If day 29 does not exist,\n // then the date object adds one day to date\n // and this selector should not match.\n const to_date = new Date(from_date.getFullYear(),\n month, range_to);\n if (month === 1 && is_range && range_to !== to_date.getDate()) // Only on leap years does this day exist.\n return [false];\n\n if (date.getTime() < from_date.getTime())\n return [false, from_date];\n else if (date.getTime() >= to_date.getTime())\n return [false, start_of_next_year];\n else if (!period)\n return [true, to_date];\n\n const nday = Math.floor((date.getTime() - from_date.getTime()) / msec_in_day);\n const in_period = nday % period;\n\n if (in_period === 0)\n return [true, new Date(date.getFullYear(), date.getMonth(), date.getDate() + 1)];\n else\n return [false, new Date(date.getFullYear(), date.getMonth(), date.getDate() + period - in_period)];\n\n }}(year, has_year, month, range_from, range_to, period);\n\n if (push_to_month === true)\n rule.month.push(selector);\n else\n rule.monthday.push(selector);\n\n at += 2 + has_year + (is_range ? 2 : 0) + (period ? 2 : 0);\n\n first_round = false;\n }\n while (matchTokens(tokens, at, ',', 'number'))\n\n\n /* }}} */\n // Only event like easter {{{\n } else if (has_event[0]) {\n\n const selector = function(tokens, at, nrule, has_year, add_days) { return function(date) {\n\n // console.log('enter selector with date: ' + date);\n const movableDays = getMovableEventsForYear((has_year ? tokens[at][0] : date.getFullYear()));\n const event_date = movableDays[tokens[at+has_year][0]];\n if (!event_date)\n throw t('movable no formula', {'name': tokens[at+has_year][0]});\n\n if (add_days[0]) {\n event_date.setDate(event_date.getDate() + add_days[0]);\n if (date.getFullYear() !== event_date.getFullYear())\n throw formatWarnErrorMessage(nrule, at+has_year+add_days[1], t('movable not in year', {\n 'name': tokens[at+has_year][0], 'days': add_days[0]}));\n }\n\n if (date.getTime() < event_date.getTime())\n return [false, event_date];\n // else if (date.getTime() < event_date.getTime() + msec_in_day) // does not work because of daylight saving times\n else if (event_date.getMonth() * 100 + event_date.getDate() === date.getMonth() * 100 + date.getDate())\n return [true, new Date(date.getFullYear(), date.getMonth(), date.getDate() + 1)];\n else\n return [false, new Date(date.getFullYear() + 1, 0, 1)];\n\n }}(tokens, at, nrule, has_year[0], has_calc[0]);\n\n if (push_to_month === true)\n rule.month.push(selector);\n else\n rule.monthday.push(selector);\n\n at += has_year[0] + has_event[0] + (typeof has_calc[0][1] === 'number' && has_calc[0][1] ? 3 : 0);\n /* }}} */\n } else if (has_constrained_weekday[0]) {\n at = parseMonthRange(tokens, at);\n } else if (matchTokens(tokens, at, 'month')) {\n return parseMonthRange(tokens, at, true, true);\n } else if (matchTokens(tokens, at - 1, ',')) { // additional rule\n throw formatWarnErrorMessage(nrule, at - 1, t('additional rule no sense'));\n } else {\n // throw 'Unexpected token in monthday range: \"' + tokens[at] + '\"';\n return at;\n }\n\n if (!matchTokens(tokens, at, ','))\n break;\n }\n\n return at;\n }\n /* }}} */\n\n /* Main selector traversal function (return state array for date). {{{\n * Checks for given date which rule and those which state and comment applies.\n *\n * :param date: Date object.\n * :returns: Array:\n * 0. resultstate: State: true for 'open', false for 'closed'.\n * 1. changedate: Next change as date object.\n * 2. unknown: true if state open is not sure.\n * 3. comment: Comment which applies for this time range (from date to changedate).\n * 4. match_rule: Rule number starting with 0 (nrule).\n */\n this.getStatePair = function(date) {\n let resultstate = false;\n let changedate;\n let unknown = false;\n let comment;\n let match_rule;\n\n let date_matching_rules = [];\n\n /* Go though all date selectors and check if they return something\n * else than closed for the given date.\n */\n for (let nrule = 0; nrule < rules.length; nrule++) {\n let matching_date_rule = true;\n // console.log(nrule, 'length', rules[nrule].date.length);\n\n /* Try each date selector type. */\n for (let ndateselector = 0; ndateselector < rules[nrule].date.length; ndateselector++) {\n const dateselectors = rules[nrule].date[ndateselector];\n // console.log(nrule, ndateselector);\n\n let has_matching_selector = false;\n for (let datesel = 0; datesel < dateselectors.length; datesel++) {\n const res = dateselectors[datesel](date);\n if (res[0]) {\n has_matching_selector = true;\n\n if (typeof res[2] === 'string') { // holiday name\n comment = [ res[2], nrule ];\n }\n\n }\n if (typeof changedate === 'undefined' || (typeof res[1] === 'object' && res[1].getTime() < changedate.getTime()))\n changedate = res[1];\n }\n\n if (!has_matching_selector) {\n matching_date_rule = false;\n // We can ignore other date selectors, as the state won't change\n // anyway until THIS selector matches (due to conjunction of date\n // selectors of different types).\n // This is also an optimization, if widest date selector types\n // are checked first.\n break;\n }\n }\n\n if (matching_date_rule) {\n /* The following lines implement date overwriting logic (e.g. for\n * \"Mo-Fr 10:00-20:00; We 10:00-16:00\", We rule overrides Mo-Fr rule partly (We).\n *\n * This is the only way to be consistent. I thought about (\"22:00-02:00; Tu 12:00-14:00\") letting Th override 22:00-02:00 partly:\n * Like: Th 00:00-02:00,12:00-14:00 but this would result in including 22:00-00:00 for Th which is probably not what you want.\n */\n if ((rules[nrule].date.length > 0 || nrule > 0 && rules[nrule].meaning && rules[nrule-1].date.length === 0)\n && (rules[nrule].meaning || rules[nrule].unknown)\n && !rules[nrule].wrapped && !rules[nrule].additional && !rules[nrule].fallback\n ) {\n\n // let old_date_matching_rules = date_matching_rules;\n date_matching_rules = [];\n // for (var nrule = 0; nrule < old_date_matching_rules.length; nrule++) {\n // if (!rules[old_date_matching_rules[nrule]].wrapped)\n // date_matching_rules.push(nrule);\n // }\n }\n date_matching_rules.push(nrule);\n }\n }\n\n // console.log(date_matching_rules);\n for (let nrule = 0; nrule < date_matching_rules.length; nrule++) {\n const rule = date_matching_rules[nrule];\n\n // console.log('Processing rule ' + rule + ': with date ' + date\n // + ' and ' + rules[rule].time.length + ' time selectors (comment: \"' + rules[rule].comment + '\").');\n\n /* There is no time specified, state applies to the whole day. */\n if (rules[rule].time.length === 0) {\n // console.log('there is no time', date);\n if (!rules[rule].fallback || (rules[rule].fallback && !(resultstate || unknown))) {\n resultstate = rules[rule].meaning;\n unknown = rules[rule].unknown;\n match_rule = rule;\n\n // if (rules[rule].fallback)\n // break rule; // fallback rule matched, no need for checking the rest\n // WRONG: What if closing rules follow?\n }\n }\n\n for (let timesel = 0; timesel < rules[rule].time.length; timesel++) {\n const res = rules[rule].time[timesel](date);\n\n // console.log('res:', res);\n if (res[0]) {\n if (!rules[rule].fallback || (rules[rule].fallback && !(resultstate || unknown))) {\n resultstate = rules[rule].meaning;\n unknown = rules[rule].unknown;\n match_rule = rule;\n\n /* Reset open end comment */\n if (typeof comment === 'object' && comment[0] === t('open end'))\n comment = undefined;\n\n // open end\n if (res[2] === true && (resultstate || unknown)) {\n comment = [ t('open end'), match_rule ];\n\n resultstate = false;\n unknown = true;\n\n /* Hack to make second rule in '07:00+,12:00-16:00; 16:00-24:00 closed \"needed because of open end\"' obsolete {{{ */\n if (typeof rules[rule].time[timesel+1] === 'function') {\n\n const next_res = rules[rule].time[timesel+1](date);\n if ( !next_res[0]\n // && next_res[2]\n && typeof next_res[1] === 'object'\n // && getValueForDate(next_res[1], true) !== getValueForDate(date, true) // Just to be sure.\n && rules[rule].time[timesel](new Date(date.getTime() - 1))[0]\n /* To distinguish the following two values:\n * 'sunrise-14:00,14:00+',\n * '07:00+,12:00-16:00',\n */\n ) {\n\n // console.log(\"07:00+,12:00-16:00 matched.\");\n\n resultstate = false;\n unknown = false;\n }\n }\n\n /* Hack to handle '17:00+,13:00-02:00' {{{ */\n /* Not enabled. To complicated, just don‘t use them …\n * It gets even crazier …\n * Time wrapping over midnight is\n * stored in the next internal rule:\n * '17:00-00:00 unknown \"Specified as open end. Closing time was guessed.\", 13:00-00:00 open' // First internal rule.\n * + ', ' overwritten part: 00:00-03:00 open + '00:00-02:00 open', // Second internal rule.\n */\n\n /*\n if (\n typeof rules[rule-1] === 'object'\n && rules[rule].build_from_token_rule.toString() === rules[rule-1].build_from_token_rule.toString()\n && typeof rules[rule] === 'object'\n && rules[rule].build_from_token_rule.toString() === rules[rule].build_from_token_rule.toString()\n ) {\n\n let last_wrapping_time_selector = rules[rule].time[rules[rule].time.length - 1];\n let last_w_res = last_wrapping_time_selector(new Date(date.getTime() - 1));\n // console.log(last_w_res);\n\n if ( last_w_res[0]\n && typeof last_w_res[2] === 'undefined'\n && (typeof last_w_res[2] === 'undefined' || last_w_res[2] === false) // Do not match for 'Tu 23:59-40:00+'\n && typeof last_w_res[1] === 'object'\n && date.getTime() === last_w_res[1].getTime()\n ) {\n\n // '05:00-06:00,17:00+,13:00-02:00',\n\n // console.log(\"17:00+,13:00-02:00 matched.\");\n // console.log(JSON.stringify(rules, null, ' '));\n\n resultstate = false;\n unknown = false;\n }\n }\n /* }}} */\n }\n\n if (rules[rule].fallback) {\n if (typeof changedate === 'undefined' || (typeof res[1] !== 'undefined' && res[1] < changedate)) {\n // FIXME: Changing undefined does not break the test framework.\n changedate = res[1];\n }\n\n // break rule; // Fallback rule matched, no need for checking the rest.\n // WRONG: What if 'off' is used after fallback rule.\n }\n }\n }\n if (typeof changedate === 'undefined' || (typeof res[1] === 'object' && res[1] < changedate))\n changedate = res[1];\n }\n }\n\n if (typeof rules[match_rule] === 'object' && typeof rules[match_rule].comment === 'string') {\n /* Only use comment if one is explicitly specified. */\n comment = rules[match_rule].comment;\n } else if (typeof comment === 'object') {\n if (comment[1] === match_rule) {\n comment = comment[0];\n } else {\n comment = undefined;\n }\n }\n\n // console.log('changedate', changedate, resultstate, comment, match_rule);\n return [ resultstate, changedate, unknown, comment, match_rule ];\n };\n /* }}} */\n\n /* Memoized localized month/weekday names for prettified output.\n * :param conf: Prettify configuration (locale/date_format).\n * :param kind: Either 'weekday' or 'month'.\n * :returns: Localized name array with stable index mapping.\n */\n const localized_name_cache = {};\n\n function getLocalizedNames(conf, kind) {\n const useEnglishShortNames =\n (conf['locale'] === 'en' || conf['locale'] === 'all') && conf['date_format'] === 'short';\n if (useEnglishShortNames) {\n return kind === 'weekday' ? weekdays : months;\n }\n\n const cache_key = kind + '|' + conf['locale'] + '|' + conf['date_format'];\n if (!localized_name_cache[cache_key]) {\n localized_name_cache[cache_key] = kind === 'weekday'\n // 2026-02-01 is a Sunday, so day 1..7 maps to Su..Sa.\n ? [1, 2, 3, 4, 5, 6, 7].map(function (weekday) {\n return new Date(2026, 1, weekday).toLocaleString(conf['locale'], {weekday: conf['date_format']});\n })\n // The year is arbitrary; only the month index affects the name.\n : [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12].map(function (month) {\n return new Date(2026, month - 1, 1).toLocaleString(conf['locale'], {month: conf['date_format']});\n });\n }\n return localized_name_cache[cache_key];\n }\n\n /* Translate prettify output token-wise (fixes PH/SH inside grouped selectors, #319).\n * :param value: Token value (index for month/weekday, string otherwise).\n * :param token_type: Token type, e.g. 'weekday', 'month', 'state'.\n * :param conf: Prettify configuration (locale/date_format).\n * :returns: Translated token string or unchanged value.\n */\n function translatePrettyToken(value, token_type, conf) {\n if (token_type === 'weekday') {\n return getLocalizedNames(conf, 'weekday')[value];\n }\n\n if (token_type === 'month') {\n return getLocalizedNames(conf, 'month')[value];\n }\n\n // Other tokens (e.g. holidays 'PH'/'SH' or the 'off'/'closed' state)\n // only need translation for non-English locales.\n if (typeof conf['locale'] !== 'string' || conf['locale'] === 'en') {\n return value;\n }\n\n return translate(conf['locale'], 'pretty', value);\n }\n\n /* Generate prettified value for selector based on tokens. {{{\n *\n * :param tokens: List of token objects.\n * :param at: Position where to start.\n * :param last_at: Position where to stop.\n * :param conf: Configuration options.\n * :returns: Prettified value.\n */\n function prettifySelector(tokens, selector_start, selector_end, selector_type, conf) {\n\n let prettified_value = '';\n let at = selector_start;\n // Preserve a leading malformed ':' before a time selector so the\n // prettified form keeps the same meaning as the tolerated input.\n if (selector_type === 'time'\n && selector_start > 1\n && matchTokens(tokens, selector_start - 1, 'timesep')\n && matchTokens(tokens, selector_start, 'number')\n && (matchTokens(tokens, selector_start - 2, 'rule separator')\n || matchTokens(tokens, selector_start - 2, ','))) {\n prettified_value += ':';\n }\n // console.log(selector_type);\n while (at <= selector_end) {\n const token_value = tokens[at][0];\n const token_type = tokens[at][1];\n // console.log('At: ' + at + ', token: ' + tokens[at]);\n if (matchTokens(tokens, at, 'weekday')) {\n if (!conf.leave_weekday_sep_one_day_betw\n && at - selector_start > 1 && (matchTokens(tokens, at-1, ',') || matchTokens(tokens, at-1, '-'))\n && matchTokens(tokens, at-2, 'weekday')\n && tokens[at][0] === (tokens[at-2][0] + 1) % 7) {\n prettified_value = prettified_value.substring(0, prettified_value.length - 1) + conf.sep_one_day_between;\n }\n prettified_value += translatePrettyToken(token_value, 'weekday', conf);\n } else if (at - selector_start > 0 // e.g. '09:0' -> '09:00'\n && selector_type === 'time'\n && matchTokens(tokens, at-1, 'timesep')\n && matchTokens(tokens, at, 'number')) {\n prettified_value += (tokens[at][0] < 10 ? '0' : '') + tokens[at][0].toString();\n } else if (selector_type === 'time' // e.g. '9:00' -> ' 09:00'\n && conf.zero_pad_hour\n && at !== tokens.length\n && matchTokens(tokens, at, 'number')\n && matchTokens(tokens, at+1, 'timesep')) {\n prettified_value += (\n tokens[at][0] < 10 ?\n (tokens[at][0] === 0 && conf.one_zero_if_hour_zero ?\n '' : '0') :\n '') + tokens[at][0].toString();\n } else if (selector_type === 'time' // e.g. '9-18' -> '09:00-18:00'\n && at + 2 <= selector_end\n && matchTokens(tokens, at, 'number')\n && matchTokens(tokens, at+1, '-')\n && matchTokens(tokens, at+2, 'number')\n && tokens[at][0] !== tokens[at+2][0]) {\n prettified_value += (tokens[at][0] < 10 ?\n (tokens[at][0] === 0 && conf.one_zero_if_hour_zero ? '' : '0')\n : '') + tokens[at][0].toString();\n prettified_value += ':00-'\n + (tokens[at+2][0] < 10 ? '0' : '') + tokens[at+2][0].toString()\n + ':00';\n at += 2;\n } else if (matchTokens(tokens, at, 'comment')) {\n prettified_value += '\"' + tokens[at][0].toString() + '\"';\n } else if (matchTokens(tokens, at, 'closed')) {\n prettified_value += translatePrettyToken(conf.leave_off_closed ? token_value : conf.keyword_for_off_closed, 'state', conf);\n } else if (at - selector_start > 0 && matchTokens(tokens, at, 'number')\n && (selector_type === 'month' || selector_type === 'week')) {\n prettified_value +=\n (matchTokens(tokens, at-1, 'month') || matchTokens(tokens, at-1, 'week') ? ' ' : '')\n + (conf.zero_pad_month_and_week_numbers && tokens[at][4] !== 'positive_number' && tokens[at][0] < 10 ? '0' : '')\n + tokens[at][0];\n } else if (at - selector_start > 0 && matchTokens(tokens, at, 'month')\n && matchTokens(tokens, at-1, 'year')) {\n prettified_value += ' ' + translatePrettyToken(token_value, 'month', conf);\n } else if (at - selector_start > 0 && matchTokens(tokens, at, 'event')\n && matchTokens(tokens, at-1, 'year')) {\n prettified_value += ' ' + tokens[at][0];\n } else if (matchTokens(tokens, at, 'month')) {\n if (conf.day_before_month && at + 1 <= selector_end && matchTokens(tokens, at+1, 'number')) {\n prettified_value += tokens[at+1][0] + conf.day_month_sep + translatePrettyToken(token_value, 'month', conf);\n at++;\n } else {\n prettified_value += translatePrettyToken(token_value, 'month', conf);\n if (at + 1 <= selector_end && matchTokens(tokens, at+1, 'weekday'))\n prettified_value += ' ';\n }\n } else if (at + 2 <= selector_end\n && (matchTokens(tokens, at, '-') || matchTokens(tokens, at, '+'))\n && matchTokens(tokens, at+1, 'number', 'calcday')) {\n prettified_value += ' ' + tokens[at][0] + tokens[at+1][0] + ' day' + (Math.abs(tokens[at+1][0]) === 1 ? '' : 's');\n at += 2;\n } else if (at === selector_end\n && selector_type === 'weekday'\n && tokens[at][0] === ':') {\n // Do nothing.\n } else if (at === selector_end\n && selector_type === 'time'\n && tokens[at][0] === ',') {\n /* Remove trailing , which is ignored in parseTimeRange. */\n } else {\n prettified_value += translatePrettyToken(token_value.toString(), token_type, conf);\n }\n at++;\n }\n return prettified_value;\n }\n /* }}} */\n\n //======================================================================\n // Public interface {{{\n // All functions below are considered public.\n //======================================================================\n\n // Simple API {{{\n\n this.getState = function(date) {\n const it = this.getIterator(date);\n return it.getState();\n };\n\n this.getUnknown = function(date) {\n const it = this.getIterator(date);\n return it.getUnknown();\n };\n\n this.getStateString = function(date, past) {\n const it = this.getIterator(date);\n return it.getStateString(past);\n };\n\n this.getComment = function(date) {\n const it = this.getIterator(date);\n return it.getComment();\n };\n\n this.getMatchingRule = function(date) {\n const it = this.getIterator(date);\n return it.getMatchingRule();\n };\n\n this.getPublicHolidayContext = function(date) {\n return {\n isHoliday: isPublicHoliday(date),\n };\n };\n\n /* Not available for iterator API {{{ */\n /* getWarnings: Get warnings, empty list if none. {{{ */\n this.getWarnings = function() {\n const it = this.getIterator();\n return getWarnings(it);\n };\n /* }}} */\n\n /* getStructuredWarnings: Get warnings as structured objects. {{{\n * Returns an array of objects for each warning, empty list if none. Each object\n * has a stable, machine-readable `type`, a human-readable `message`, the `value`\n * the warning refers to and the character `position` of the marker within it.\n * The formatted string from getWarnings() equals\n * `value.substring(0, position) + ' <--- (' + message + ')'`.\n */\n this.getStructuredWarnings = function() {\n const it = this.getIterator();\n return getWarnings(it, true);\n };\n /* }}} */\n\n /* prettifyValue: Get a nicely formated value {{{ */\n this.prettifyValue = function(argument_hash) {\n this.getWarnings();\n /* getWarnings has to be run before prettifyValue because some\n * decisions if certain aspects makes sense to prettify or not\n * are influenced by warnings.\n * Basically, both functions depend on each other in some way :(\n * See done_with_selector_reordering.\n */\n return prettifyValue(argument_hash);\n };\n /* }}} */\n\n /* getNextChange: Get time of next status change {{{ */\n /*\n * Return next visible state change (open/closed/unknown).\n * Skip comment-only boundaries; use getIterator(...).advance() for those.\n */\n this.getNextChange = function(date, maxdate) {\n const it = this.getIterator(date);\n const initial_state = it.getState();\n const initial_unknown = it.getUnknown();\n while (it.advance(maxdate)) {\n if (it.getState() !== initial_state || it.getUnknown() !== initial_unknown) {\n return it.getDate();\n }\n }\n return undefined;\n };\n /* }}} */\n\n /* isWeekStable: Checks whether open intervals are same for every week. {{{ */\n this.isWeekStable = function() {\n return week_stable;\n };\n /* }}} */\n\n /* isEqualTo: Check if this opening_hours object has the same meaning as the given opening_hours object. {{{ */\n this.isEqualTo = function(second_oh_object, start_date) {\n if (typeof start_date === 'undefined') {\n start_date = new Date();\n }\n let datelimit;\n\n if (this.isWeekStable() && second_oh_object.isWeekStable()) {\n datelimit = new Date(start_date.getTime() + msec_in_day * 10);\n // } else if (this.isWeekStable() !== second_oh_object.isWeekStable()) {\n // return [ false,\n // {\n // 'reason': 'isWeekStable do not match',\n // }\n // ];\n } else {\n datelimit = new Date(start_date.getTime() + msec_in_day * 366 * 5);\n }\n\n const first_it = this.getIterator(start_date);\n const second_it = second_oh_object.getIterator(start_date);\n\n while (first_it.advance(datelimit)) {\n second_it.advance(datelimit);\n\n const not_equal = [];\n\n if (first_it.getDate().getTime() !== second_it.getDate().getTime()) {\n not_equal.push('getDate');\n }\n\n if (first_it.getState() !== second_it.getState()) {\n not_equal.push('getState');\n }\n\n if (first_it.getUnknown() !== second_it.getUnknown()) {\n not_equal.push('getUnknown');\n }\n\n if (first_it.getComment() !== second_it.getComment()) {\n not_equal.push('getComment');\n }\n\n if (not_equal.length) {\n const deviation_for_time = {};\n deviation_for_time[first_it.getDate().getTime()] = not_equal;\n return [ false,\n {\n 'matching_rule': first_it.getMatchingRule(),\n 'matching_rule_other': second_it.getMatchingRule(),\n 'deviation_for_time': deviation_for_time,\n }\n ];\n }\n }\n\n return [ true ];\n };\n /* }}} */\n /* }}} */\n /* }}} */\n\n // High-level API {{{\n /* getOpenIntervals: Get array of open intervals between two dates {{{ */\n this.getOpenIntervals = function(from, to) {\n const res = [];\n\n const it = this.getIterator(from);\n\n if (it.getState() || it.getUnknown()) {\n res.push([from, undefined, it.getUnknown(), it.getComment()]);\n }\n\n while (it.advance(to)) {\n if (it.getState() || it.getUnknown()) {\n if (res.length !== 0 && typeof res[res.length - 1][1] === 'undefined') {\n // last state was also open or unknown\n res[res.length - 1][1] = it.getDate();\n }\n res.push([it.getDate(), undefined, it.getUnknown(), it.getComment()]);\n } else {\n if (res.length !== 0 && typeof res[res.length - 1][1] === 'undefined') {\n // only use the first time as closing/change time and ignore closing times which might follow\n res[res.length - 1][1] = it.getDate();\n }\n }\n }\n\n if (res.length > 0 && typeof res[res.length - 1][1] === 'undefined') {\n res[res.length - 1][1] = to;\n }\n\n return res;\n };\n /* }}} */\n\n /* getOpenDuration: Get total number of milliseconds a facility is open,unknown within a given date range {{{ */\n this.getOpenDuration = function(from, to) {\n\n let open = 0;\n let unknown = 0;\n\n const it = this.getIterator(from);\n let prevdate = (it.getState() || it.getUnknown()) ? from : undefined;\n let prevstate = it.getState();\n let prevunknown = it.getUnknown();\n\n while (it.advance(to)) {\n if (it.getState() || it.getUnknown()) {\n\n if (typeof prevdate === 'object') {\n // last state was also open or unknown\n if (prevunknown) //\n unknown += it.getDate().getTime() - prevdate.getTime();\n else if (prevstate)\n open += it.getDate().getTime() - prevdate.getTime();\n }\n\n prevdate = it.getDate();\n prevstate = it.getState();\n prevunknown = it.getUnknown();\n // console.log('if', prevdate, open / (1000 * 60 * 60), unknown / (1000 * 60 * 60));\n } else {\n // console.log('else', prevdate);\n if (typeof prevdate === 'object') {\n if (prevunknown)\n unknown += it.getDate().getTime() - prevdate.getTime();\n else\n open += it.getDate().getTime() - prevdate.getTime();\n prevdate = undefined;\n }\n }\n }\n\n if (typeof prevdate === 'object') {\n if (prevunknown)\n unknown += to.getTime() - prevdate.getTime();\n else\n open += to.getTime() - prevdate.getTime();\n }\n\n return [ open, unknown ];\n };\n /* }}} */\n /* }}} */\n\n // Iterator API {{{\n this.getIterator = function(date) {\n return new function(oh) {\n if (typeof date === 'undefined')\n date = new Date();\n\n let prevstate = [ undefined, date, undefined, undefined, undefined ];\n let state = oh.getStatePair(date);\n\n /* getDate {{{ */\n this.getDate = function() {\n return prevstate[1];\n };\n /* }}} */\n\n /* setDate {{{ */\n this.setDate = function(date) {\n if (typeof date !== 'object')\n throw t('date parameter needed');\n\n prevstate = [ undefined, date, undefined, undefined, undefined ];\n state = oh.getStatePair(date);\n };\n /* }}} */\n\n /* getState: Check whether facility is `open' {{{ */\n this.getState = function() {\n return state[0];\n };\n /* }}} */\n\n /* getUnknown: Checks whether the opening state is conditional or unknown {{{ */\n this.getUnknown = function() {\n return state[2];\n };\n /* }}} */\n\n /* getStateString: Get state string. Either 'open', 'unknown' or 'closed' {{{ */\n this.getStateString = function(past) {\n return (state[0] ? 'open' : (state[2] ? 'unknown' : (past ? 'closed' : 'close')));\n };\n /* }}} */\n\n /* getComment: Get the comment, undefined in none {{{ */\n this.getComment = function() {\n return state[3];\n };\n /* }}} */\n\n /* getMatchingRule: Get the rule which matched thus deterrents the current state {{{ */\n this.getMatchingRule = function() {\n if (typeof state[4] === 'undefined')\n return undefined;\n\n return rules[state[4]].build_from_token_rule[2];\n };\n /* }}} */\n\n /* advance: Advances to the next position {{{ */\n this.advance = function(datelimit) {\n if (typeof datelimit === 'undefined') {\n datelimit = new Date(prevstate[1].getTime() + msec_in_day * 366 * 5);\n } else if (datelimit.getTime() <= prevstate[1].getTime()) {\n return false; /* The limit for advance needs to be after the current time. */\n }\n\n do {\n if (typeof state[1] === 'undefined') {\n return false; /* open range, we won't be able to advance */\n }\n\n // console.log('\\n' + 'previous check time:', prevstate[1]\n // + ', current check time:',\n // state[1],\n // (state[0] ? 'open' : (state[2] ? 'unknown' : 'closed'))\n // + ', comment:', state[3]\n // + ', match_rule:', state[4]);\n\n if (state[1].getTime() <= prevstate[1].getTime()) {\n /* We're going backwards or staying at the same time.\n * This most likely indicates an error in a selector code.\n */\n throw 'Fatal: infinite loop in nextChange';\n }\n\n if (state[1].getTime() >= datelimit.getTime()) {\n /* Don't advance beyond limits. */\n return false;\n }\n\n // do advance\n prevstate = state;\n state = oh.getStatePair(prevstate[1]);\n // console.log(state);\n } while (state[0] === prevstate[0] && state[2] === prevstate[2] && state[3] === prevstate[3]);\n return true;\n };\n /* }}} */\n }(this);\n };\n /* }}} */\n\n /* }}} */\n}\n\n/* vim: set ts=4 sw=4 tw=0 et foldmarker={{{,}}} foldlevel=0 foldmethod=marker : */\n"],"names":["resources","word_error_correction"],"mappings":"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AC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACxB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACxB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACxB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACxB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACxB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACxB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACxB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACxB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACxB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE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E,kBAAkB;AAChC,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AAC3B,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AAC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,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC1B,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC1B,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC1B,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC1B,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC1B,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC1B,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC1B,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC1B,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC1B,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC1B,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC1B,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC1B,QAAQ,IAAI,EAAE,CAAC,EAAE,C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AAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACvB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACvB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACxB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACxB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACvB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACxB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACxB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAA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AQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACxB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACxB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACxB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACxB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACxB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACxB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACxB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACxB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACxB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACxB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACxB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACxB,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACxB,QAAQ,IAAI,EAAE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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}
|