diff --git a/README.md b/README.md index e729f221..c49aa025 100644 --- a/README.md +++ b/README.md @@ -82,6 +82,8 @@ Pull requests are welcome. To get started, clone this repository, run `npm i`, a While developing, run `npx mix watch` to compile assets as you edit them. When you're ready to commit, run `npx mix --production` to minify them for production. -## Credits +## Changelog -This project uses [React JS](https://reactjs.org/) and [Bootstrap CSS](https://getbootstrap.com/). +| Version | Date | Changes | +| ------- | ----------- | ------------------------------------------------------------------------- | +| 1.4 | Sep 4, 2022 | Replaced `moment-timezone` with `luxon`
Restyled in-progress meetings | diff --git a/e2e/tests/meeting-details.spec.ts b/e2e/tests/meeting-details.spec.ts index 7f30cca9..375b9ae0 100644 --- a/e2e/tests/meeting-details.spec.ts +++ b/e2e/tests/meeting-details.spec.ts @@ -36,7 +36,7 @@ test.describe('Meeting Details', () => { : 'https://www.google.com/maps/dir/?api=1&destination=37.15777%2C-121.98421' ); - await expect(time).toHaveText('Thursday 7:30 pm – 8:30 pm'); + await expect(time).toHaveText('Thursday 7:30 PM – 8:30 PM'); await expect(await types.allTextContents()).toStrictEqual([ 'Birthday', diff --git a/index.d.ts b/index.d.ts index 6595930b..52dc0d7b 100644 --- a/index.d.ts +++ b/index.d.ts @@ -1,7 +1,5 @@ type Translation = import('./src/types/Translation').Translation; type MeetingType = import('./src/types/MeetingType').MeetingType; -type Timezone = import('./src/types/Timezone').Timezone; - type Lang = 'en' | 'es' | 'fr'; interface TSMLReactConfig { @@ -9,7 +7,7 @@ interface TSMLReactConfig { columns: Array< 'time' | 'distance' | 'name' | 'location_group' | 'address' | 'region' >; - timezone: Timezone; + timezone: string; conference_providers: Record; defaults: { distance: string[]; diff --git a/jest.setup.js b/jest.setup.js index f7b114a9..b5abf957 100644 --- a/jest.setup.js +++ b/jest.setup.js @@ -1,8 +1,5 @@ import '@testing-library/jest-dom/extend-expect'; import React from 'react'; -import * as momentTZ from 'moment-timezone'; - -momentTZ.tz.setDefault('America/New_York'); global.React = React; diff --git a/netlify.toml b/netlify.toml new file mode 100644 index 00000000..addc4683 --- /dev/null +++ b/netlify.toml @@ -0,0 +1,6 @@ +[build] + publish = "public/" + command = "npx mix --production" + +[[plugins]] + package = "@netlify/plugin-lighthouse" \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 414c5e8d..971b2be4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,18 +1,18 @@ { "name": "tsml-ui", - "version": "1.3.7", + "version": "1.4", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "tsml-ui", - "version": "1.3.7", + "version": "1.4", "hasInstallScript": true, "license": "MIT", "dependencies": { "bootstrap": "^5.1.3", "deepmerge": "^4.2.2", - "moment-timezone": "^0.5.37", + "luxon": "^3.0.3", "react": "^17.0.2", "react-dom": "^17.0.2", "react-infinite-scroller": "^1.2.6", @@ -22,10 +22,11 @@ "devDependencies": { "@babel/preset-react": "^7.14.5", "@babel/preset-typescript": "^7.16.7", - "@playwright/test": "^1.19.0", + "@playwright/test": "^1.25.1", "@testing-library/jest-dom": "^5.16.2", "@testing-library/react": "^12.1.2", "@types/jest": "^27.4.0", + "@types/luxon": "^3.0.1", "@types/react": "^17.0.38", "@types/react-dom": "^17.0.11", "@types/react-test-renderer": "^17.0.1", @@ -2506,14 +2507,14 @@ } }, "node_modules/@playwright/test": { - "version": "1.24.2", - "resolved": "https://packages.atlassian.com/api/npm/npm-remote/@playwright/test/-/test-1.24.2.tgz", - "integrity": "sha512-Q4X224pRHw4Dtkk5PoNJplZCokLNvVbXD9wDQEMrHcEuvWpJWEQDeJ9gEwkZ3iCWSFSWBshIX177B231XW4wOQ==", + "version": "1.25.1", + "resolved": "https://packages.atlassian.com/api/npm/npm-remote/@playwright/test/-/test-1.25.1.tgz", + "integrity": "sha512-IJ4X0yOakXtwkhbnNzKkaIgXe6df7u3H3FnuhI9Jqh+CdO0e/lYQlDLYiyI9cnXK8E7UAppAWP+VqAv6VX7HQg==", "dev": true, "license": "Apache-2.0", "dependencies": { "@types/node": "*", - "playwright-core": "1.24.2" + "playwright-core": "1.25.1" }, "bin": { "playwright": "cli.js" @@ -2940,6 +2941,13 @@ "dev": true, "license": "MIT" }, + "node_modules/@types/luxon": { + "version": "3.0.1", + "resolved": "https://packages.atlassian.com/api/npm/npm-remote/@types/luxon/-/luxon-3.0.1.tgz", + "integrity": "sha512-/LAvk1cMOJt0ghzMFrZEvByUhsiEfeeT2IF53Le+Ki3A538yEL9pRZ7a6MuCxdrYK+YNqNIDmrKU/r2nnw04zQ==", + "dev": true, + "license": "MIT" + }, "node_modules/@types/mapbox-gl": { "version": "2.6.1", "resolved": "https://registry.npmjs.org/@types/mapbox-gl/-/mapbox-gl-2.6.1.tgz", @@ -8778,6 +8786,15 @@ "node": ">=10" } }, + "node_modules/luxon": { + "version": "3.0.3", + "resolved": "https://packages.atlassian.com/api/npm/npm-remote/luxon/-/luxon-3.0.3.tgz", + "integrity": "sha512-+EfHWnF+UT7GgTnq5zXg3ldnTKL2zdv7QJgsU5bjjpbH17E3qi/puMhQyJVYuCq+FRkogvB5WB6iVvUr+E4a7w==", + "license": "MIT", + "engines": { + "node": ">=12" + } + }, "node_modules/lz-string": { "version": "1.4.4", "resolved": "https://registry.npmjs.org/lz-string/-/lz-string-1.4.4.tgz", @@ -9080,26 +9097,6 @@ "npm": ">= 3" } }, - "node_modules/moment": { - "version": "2.29.4", - "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz", - "integrity": "sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==", - "engines": { - "node": "*" - } - }, - "node_modules/moment-timezone": { - "version": "0.5.37", - "resolved": "https://packages.atlassian.com/api/npm/npm-remote/moment-timezone/-/moment-timezone-0.5.37.tgz", - "integrity": "sha512-uEDzDNFhfaywRl+vwXxffjjq1q0Vzr+fcQpQ1bU0kbzorfS7zVtZnCnGc8mhWmF39d4g4YriF6kwA75mJKE/Zg==", - "license": "MIT", - "dependencies": { - "moment": ">= 2.9.0" - }, - "engines": { - "node": "*" - } - }, "node_modules/ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", @@ -9799,9 +9796,9 @@ } }, "node_modules/playwright-core": { - "version": "1.24.2", - "resolved": "https://packages.atlassian.com/api/npm/npm-remote/playwright-core/-/playwright-core-1.24.2.tgz", - "integrity": "sha512-zfAoDoPY/0sDLsgSgLZwWmSCevIg1ym7CppBwllguVBNiHeixZkc1AdMuYUPZC6AdEYc4CxWEyLMBTw2YcmRrA==", + "version": "1.25.1", + "resolved": "https://packages.atlassian.com/api/npm/npm-remote/playwright-core/-/playwright-core-1.25.1.tgz", + "integrity": "sha512-lSvPCmA2n7LawD2Hw7gSCLScZ+vYRkhU8xH0AapMyzwN+ojoDqhkH/KIEUxwNu2PjPoE/fcE0wLAksdOhJ2O5g==", "dev": true, "license": "Apache-2.0", "bin": { @@ -15176,13 +15173,13 @@ } }, "@playwright/test": { - "version": "1.24.2", - "resolved": "https://packages.atlassian.com/api/npm/npm-remote/@playwright/test/-/test-1.24.2.tgz", - "integrity": "sha512-Q4X224pRHw4Dtkk5PoNJplZCokLNvVbXD9wDQEMrHcEuvWpJWEQDeJ9gEwkZ3iCWSFSWBshIX177B231XW4wOQ==", + "version": "1.25.1", + "resolved": "https://packages.atlassian.com/api/npm/npm-remote/@playwright/test/-/test-1.25.1.tgz", + "integrity": "sha512-IJ4X0yOakXtwkhbnNzKkaIgXe6df7u3H3FnuhI9Jqh+CdO0e/lYQlDLYiyI9cnXK8E7UAppAWP+VqAv6VX7HQg==", "dev": true, "requires": { "@types/node": "*", - "playwright-core": "1.24.2" + "playwright-core": "1.25.1" } }, "@popperjs/core": { @@ -15539,6 +15536,12 @@ "integrity": "sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==", "dev": true }, + "@types/luxon": { + "version": "3.0.1", + "resolved": "https://packages.atlassian.com/api/npm/npm-remote/@types/luxon/-/luxon-3.0.1.tgz", + "integrity": "sha512-/LAvk1cMOJt0ghzMFrZEvByUhsiEfeeT2IF53Le+Ki3A538yEL9pRZ7a6MuCxdrYK+YNqNIDmrKU/r2nnw04zQ==", + "dev": true + }, "@types/mapbox-gl": { "version": "2.6.1", "resolved": "https://registry.npmjs.org/@types/mapbox-gl/-/mapbox-gl-2.6.1.tgz", @@ -19775,6 +19778,11 @@ "yallist": "^4.0.0" } }, + "luxon": { + "version": "3.0.3", + "resolved": "https://packages.atlassian.com/api/npm/npm-remote/luxon/-/luxon-3.0.3.tgz", + "integrity": "sha512-+EfHWnF+UT7GgTnq5zXg3ldnTKL2zdv7QJgsU5bjjpbH17E3qi/puMhQyJVYuCq+FRkogvB5WB6iVvUr+E4a7w==" + }, "lz-string": { "version": "1.4.4", "resolved": "https://registry.npmjs.org/lz-string/-/lz-string-1.4.4.tgz", @@ -19997,19 +20005,6 @@ "hammerjs": "^2.0.8" } }, - "moment": { - "version": "2.29.4", - "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz", - "integrity": "sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==" - }, - "moment-timezone": { - "version": "0.5.37", - "resolved": "https://packages.atlassian.com/api/npm/npm-remote/moment-timezone/-/moment-timezone-0.5.37.tgz", - "integrity": "sha512-uEDzDNFhfaywRl+vwXxffjjq1q0Vzr+fcQpQ1bU0kbzorfS7zVtZnCnGc8mhWmF39d4g4YriF6kwA75mJKE/Zg==", - "requires": { - "moment": ">= 2.9.0" - } - }, "ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", @@ -20514,9 +20509,9 @@ } }, "playwright-core": { - "version": "1.24.2", - "resolved": "https://packages.atlassian.com/api/npm/npm-remote/playwright-core/-/playwright-core-1.24.2.tgz", - "integrity": "sha512-zfAoDoPY/0sDLsgSgLZwWmSCevIg1ym7CppBwllguVBNiHeixZkc1AdMuYUPZC6AdEYc4CxWEyLMBTw2YcmRrA==", + "version": "1.25.1", + "resolved": "https://packages.atlassian.com/api/npm/npm-remote/playwright-core/-/playwright-core-1.25.1.tgz", + "integrity": "sha512-lSvPCmA2n7LawD2Hw7gSCLScZ+vYRkhU8xH0AapMyzwN+ojoDqhkH/KIEUxwNu2PjPoE/fcE0wLAksdOhJ2O5g==", "dev": true }, "postcss": { diff --git a/package.json b/package.json index a0444625..362a9b98 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "tsml-ui", - "version": "1.3.7", + "version": "1.4", "private": false, "license": "MIT", "scripts": { @@ -14,10 +14,11 @@ "devDependencies": { "@babel/preset-react": "^7.14.5", "@babel/preset-typescript": "^7.16.7", - "@playwright/test": "^1.19.0", + "@playwright/test": "^1.25.1", "@testing-library/jest-dom": "^5.16.2", "@testing-library/react": "^12.1.2", "@types/jest": "^27.4.0", + "@types/luxon": "^3.0.1", "@types/react": "^17.0.38", "@types/react-dom": "^17.0.11", "@types/react-test-renderer": "^17.0.1", @@ -34,7 +35,7 @@ "dependencies": { "bootstrap": "^5.1.3", "deepmerge": "^4.2.2", - "moment-timezone": "^0.5.37", + "luxon": "^3.0.3", "react": "^17.0.2", "react-dom": "^17.0.2", "react-infinite-scroller": "^1.2.6", diff --git a/public/app.js b/public/app.js index 8024466a..8a1a684b 100644 --- a/public/app.js +++ b/public/app.js @@ -1,2 +1,2 @@ /*! For license information please see app.js.LICENSE.txt */ -(()=>{var e,t={3077:(e,t,o)=>{"use strict";var i=o(3935),n=o(7294);function r(...e){return Object.values(e).map((e=>"string"==typeof e?e:Array.isArray(e)?e.join(" "):"object"==typeof e?Object.keys(e).filter((t=>!!e[t])).join(" "):null)).filter((e=>e)).join(" ")}var a=o(9996),s=o.n(a);const p={cache:!1,columns:["time","distance","name","location_group","address","region"],conference_providers:{"bluejeans.com":"Bluejeans","freeconference.com":"Free Conference","freeconferencecall.com":"FreeConferenceCall","meet.google.com":"Google Hangouts","gotomeet.me":"GoToMeeting","gotomeeting.com":"GoToMeeting","meet.jit.si":"Jitsi","skype.com":"Skype","webex.com":"WebEx","zoho.com":"Zoho","zoom.us":"Zoom"},defaults:{distance:[],meeting:null,mode:"search",region:[],search:"",time:[],type:[],view:"table",weekday:[]},distance_options:[1,2,5,10,15,25],distance_unit:"mi",feedback_emails:[],filters:["region","distance","weekday","time","type"],flags:null,in_person_types:["BA","BRK","CAN","CF","AL-AN","AL","FF","OUT","SM","X","XB"],language:"en",map:{markers:{location:{backgroundImage:`url(data:image/svg+xml;base64,${window.btoa('')})`,cursor:"pointer",height:38.4,width:26}},style:"mapbox://styles/mapbox/streets-v9"},now_offset:-10,params:["search","mode","view","meeting"],show:{controls:!0,listButtons:!1,title:!0},strings:{en:{add_to_calendar:"Add to Calendar",address:"Address / Platform",alerts:{bad_data:"An error was encountered loading the data.",no_data_src:"Configuration error: a data source must be specified.",no_results:"No meetings were found matching the selected criteria.",not_found:"Meeting not found."},appointment:"Appointment",back_to_meetings:"Back to Meetings",contribute_with:"Contribute with %service%",distance:"Distance",distance_any:"Any Distance",email_edit_url:"Edit URL: %url%",email_public_url:"Public URL: %url%",email_subject:"Meeting Feedback: %name%",evening:"Evening",feedback:"Update Meeting Info",friday:"Friday",get_directions:"Get Directions",in_progress_single:"1 meeting in progress",in_progress_multiple:"%count% meetings in progress",location:"Location",location_group:"Location / Group",meeting_information:"Meeting Information",meetings:"Meetings",midday:"Midday",midnight:"Mid",monday:"Monday",morning:"Morning",name:"Name",noon:"Noon",modes:{location:"Near Location",me:"Near Me",search:"Search"},night:"Night",phone:"Phone",region:"Region",region_any:"Anywhere",remove:"Remove %filter%",saturday:"Saturday",seventh_tradition:"Seventh Tradition",sunday:"Sunday",thursday:"Thursday",time:"Time",time_any:"Any Time",title:{weekday:"%weekday%",time:"%time%",type:"%type%",meetings:"%meetings%",region:"in %region%",search_with:"with %search%",search_near:"near %search%",distance:"within %distance%"},tuesday:"Tuesday",type_any:"Any Type",type_descriptions:{C:"Closed meetings are for A.A. members only, or for those who have a drinking problem and “have a desire to stop drinking.”",O:"Open meetings are available to anyone interested in Alcoholics Anonymous’ program of recovery from alcoholism. Nonalcoholics may attend open meetings as observers."},types:{11:"11th Step Meditation","12x12":"12 Steps & 12 Traditions",active:"Active","AL-AN":"Concurrent with Al-Anon",A:"Secular",ABSI:"As Bill Sees It",AL:"Concurrent with Alateen",ASL:"American Sign Language",B:"Big Book",BA:"Babysitting Available",BE:"Newcomer",BRK:"Breakfast",BI:"Bisexual",C:"Closed",CAN:"Candlelight",CF:"Child-friendly",D:"Discussion",DB:"Digital Basket",DD:"Dual Diagnosis",DR:"Daily Reflections",EN:"English",FF:"Fragrance Free",FR:"French",G:"Gay",GR:"Grapevine",H:"Birthday",HE:"Hebrew",inactive:"Inactive","in-person":"In-person",ITA:"Italian",JA:"Japanese",KOR:"Korean",L:"Lesbian",LGBTQ:"LGBTQ",LIT:"Literature",LS:"Living Sober",M:"Men",MED:"Meditation",N:"Native American",NDG:"Indigenous",O:"Open",online:"Online",OUT:"Outdoor",P:"Professionals",POC:"People of Color",POL:"Polish",POR:"Portuguese",PUN:"Punjabi",RUS:"Russian",S:"Spanish",SEN:"Seniors",SM:"Smoking Permitted",SP:"Speaker",ST:"Step Study",T:"Transgender",TC:"Location Temporarily Closed",TR:"Tradition Study",W:"Women",X:"Wheelchair Access",XB:"Wheelchair-accessible Bathroom",XT:"Cross Talk Permitted",Y:"Young People"},unnamed_meeting:"Unnamed meeting",updated:"Updated %updated%",views:{table:"List",map:"Map"},wednesday:"Wednesday",weekday_any:"Any Day"},es:{add_to_calendar:"Añadir al calendario",address:"Dirección",alerts:{bad_data:"Se encontró un error al cargar los datos.",no_data_src:"Error de configuración: se debe especificar una fuente de datos.",no_results:"No se encontraron reuniones que coincidieran con los criterios seleccionados.",not_found:"Reunión no encontrada."},appointment:"Cita",back_to_meetings:"Volver a las reuniones",contribute_with:"Contribuya con %service%",distance:"Distancia",distance_any:"Cualquier distancia",email_edit_url:"Editar URL: %url%",email_public_url:"URL pública: %url%",email_subject:"Comentarios de la reunión: %name%",evening:"Noche",feedback:"Actualizar la información de la reunión",friday:"Viernes",get_directions:"Obtener las direcciones",in_progress_single:"1 reunión en curso",in_progress_multiple:"%count% reuniones en curso",location:"Ubicación",location_group:"Ubicación / Grupo",meeting_information:"Información de la reunión",meetings:"Reuniones",midday:"Mediodía",midnight:"Medianoche",monday:"Lunes",morning:"Mañana",name:"Nombre",noon:"Mediodía",modes:{location:"Ubicación cercana",me:"Cerca de mí",search:"Buscar"},night:"Noche",phone:"Teléfono",region:"Región",region_any:"Todos lados",remove:"Quitar %filter%",saturday:"Sábado",seventh_tradition:"Séptima Tradición",sunday:"Domingo",thursday:"Jueves",time:"Hora",time_any:"Cualquier momento",title:{weekday:"%weekday%",time:"%time%",type:"%type%",meetings:"%meetings%",region:"en %region%",search_with:"con %search%",search_near:"cerca de %search%",distance:"dentro de %distance%"},tuesday:"Martes",type_any:"Cualquier tipo",type_descriptions:{C:'Las reuniones cerradas son para A.A. solo para miembros, o para aquellos que tienen un problema con la bebida y "desean dejar de beber".',O:"Las reuniones abiertas están disponibles para cualquier persona interesada en el programa de recuperación del alcoholismo de Alcohólicos Anónimos. Los no alcohólicos pueden asistir a reuniones abiertas como observadores."},types:{11:"Meditación del Paso 11","12x12":"12 Pasos y 12 Tradiciones",active:"Activo","AL-AN":"Concurrente con Al-Anon",A:"Secular",ABSI:"Como lo ve Bill",AL:"Concurrente con Alateen",ASL:"Lenguaje por señas",B:"Libro Grande",BA:"Guardería disponible",BE:"Principiantes",BI:"Bisexual",BRK:"Desayuno",C:"Cerrada",CAN:"Luz de una vela",CF:"Niño amigable",D:"Discusión",DB:"Canasta digital",DD:"Diagnóstico dual",DR:"Reflexiones Diarias",EN:"Inglés",FF:"Sin fragancia",FR:"Francés",G:"Gay",GR:"La Viña",H:"Cumpleaños",HE:"Hebreo",inactive:"Inactiva","in-person":"En persona",ITA:"Italiano",JA:"Japonés",KOR:"Coreano",L:"Lesbianas",LGBTQ:"LGBTQ",LIT:"Literatura",LS:"Viviendo Sobrio",M:"Hombres",MED:"Meditación",N:"Nativo Americano",NDG:"Indígena",O:"Abierta",online:"En Línea",OUT:"Al aire libre",P:"Profesionales",POC:"Gente de color",POL:"Polaco",POR:"Portugués",PUN:"Punjabi",RUS:"Ruso",S:"Español",SEN:"Personas mayores",SM:"Se permite fumar",SP:"Orador",ST:"Estudio de pasos",T:"Transgénero",TC:"Ubicación temporalmente cerrada",TR:"Estudio de tradicion",W:"Mujer",X:"Acceso en silla de ruedas",XB:"Baño accesible para sillas de ruedas",XT:"Se permite opinar",Y:"Gente joven"},unnamed_meeting:"Reunión sin nombre",updated:"Actualizado el %updated%",views:{table:"Lista",map:"Mapa"},wednesday:"Miércoles",weekday_any:"Cualquier día"},fr:{add_to_calendar:"Ajouter au calendrier",address:"Adresse",alerts:{bad_data:"Une erreur s'est produite lors du chargement des données.",no_data_src:"Erreur de configuration : une source de données doit être spécifiée.",no_results:"Aucune réunion n'a été trouvée correspondant aux critères sélectionnés.",not_found:"Réunion introuvable."},appointment:"Rendez-vous",back_to_meetings:"Retour aux réunions",contribute_with:"Contribuer avec %service%",distance:"Distance",distance_any:"Toute distance",email_edit_url:"Modifier l’URL : %url%",email_public_url:"URL publique : %url%",email_subject:"Commentaires sur la réunion : %name%",evening:"Soir",feedback:"Mettre à jour les informations sur la réunion",friday:"Vendredi",get_directions:"Directions",in_progress_single:"1 réunion en cours",in_progress_multiple:"%count% rendez-vous en cours",location:"Emplacement",location_group:"Emplacement / Groupe",meeting_information:"Informations sur la réunion",meetings:"Rencontres",midday:"Midi",midnight:"Minuit",monday:"Lundi",morning:"Matin",name:"Nom",noon:"Le midi",modes:{location:"Près de l’emplacement",me:"Proche de moi",search:"Chercher"},night:"Nuit",phone:"Téléphone",region:"Région",region_any:"Partout",remove:"Supprimer %filter%",saturday:"Samedi",seventh_tradition:"Septième tradition",sunday:"Dimanche",thursday:"Jeudi",time:"Temps",time_any:"À tout moment",title:{weekday:"%weekday%",time:"%time%",type:"%type%",meetings:"%meetings%",region:"à %region%",search_with:"avec %search%",search_near:"près de %search%",distance:"à moins de %distance%"},tuesday:"Mardi",type_any:"N’importe quel type",type_descriptions:{C:"Les réunions fermées sont réservées aux AA. membres seulement, ou pour ceux qui ont un problème d’alcool et « ont le désir d’arrêter de boire ».",O:"Des réunions ouvertes sont disponibles pour toute personne intéressée par le programme de rétablissement des Alcooliques anonymes. Les non-alcooliques peuvent assister aux réunions publiques en tant qu’observateurs."},types:{11:"Méditation sur la 11e Étape","12x12":"12 Étapes et 12 Traditions,",active:"Actives","AL-AN":"En même temps qu’Al-Anon",A:"Séculier",ABSI:"Réflexions de Bill",AL:"En même temps qu’Alateen",ASL:"Langage des Signes",B:"Gros Livre",BA:"Garderie d’enfants disponible",BE:"Nouveau/nouvelle",BI:"Bisexuel",BRK:"Petit déjeuner",C:"Fermé",CAN:"À la chandelle",CF:"Enfants acceptés",D:"Discussion",DB:"Panier numérique",DD:"Double diagnostic",DR:"Réflexions quotidiennes",EN:"Anglais",FF:"Sans parfum",FR:"Français",G:"Gai",GR:"Grapevine",H:"Anniversaire",HE:"Hébreu",inactive:"Inactives","in-person":"En personne",ITA:"Italien",JA:"Japonais",KOR:"Coréen",L:"Lesbienne",LGBTQ:"LGBTQ",LIT:"Publications",LS:"Vivre… Sans alcool",M:"Hommes",MED:"Méditation",N:"Autochtone",NDG:"Indigène",O:"Ouvert(e)",online:"En ligne",OUT:"En plein air",P:"Professionnels",POC:"Gens de couleur",POL:"Polonais",POR:"Portugais",PUN:"Pendjabi",RUS:"Russe",S:"Espagnol",SEN:"Séniors",SM:"Permis de fumer",SP:"Conférencier",ST:"Sur les Étapes",T:"Transgenre",TC:"Emplacement temporairement fermé",TR:"Étude des Traditions",W:"Femmes",X:"Accès aux fauteuils roulants",XB:"Toilettes accessibles aux fauteuils roulants",XT:"Conversation croisée permise",Y:"Jeunes"},unnamed_meeting:"Réunion sans nom",updated:"Mis à jour le %updated%",views:{table:"Liste",map:"Carte"},wednesday:"Mercredi",weekday_any:"Tous les jours"}},times:["morning","midday","evening","night"],timezone:"",weekdays:["sunday","monday","tuesday","wednesday","thursday","friday","saturday"]},c="object"==typeof tsml_react_config?s()(p,tsml_react_config):p;Array.isArray(c.flags)||(c.flags=["M","W"]),"object"==typeof tsml_react_config&&Array.isArray(null===tsml_react_config||void 0===tsml_react_config?void 0:tsml_react_config.columns)&&(c.columns=tsml_react_config.columns);const l=navigator.language.substr(0,2),b=Object.keys(c.strings).includes(l)?l:c.language,d=c.strings[b];function u(){return["iPad Simulator","iPhone Simulator","iPod Simulator","iPad","iPhone","iPod"].includes(navigator.platform)||navigator.userAgent.includes("Mac")&&"ontouchend"in document}function M({formatted_address:e,latitude:t,longitude:o}){if(u()){const i=t&&o?{daddr:[t,o].join(),q:e}:{daddr:e};return`maps://?${new URLSearchParams(i)}`}return`https://www.google.com/maps/dir/?${new URLSearchParams({api:"1",destination:t&&o?[t,o].join():e})}`}function z(){const e=Object.assign({},c.defaults),t=new URLSearchParams(window.location.search);return c.filters.filter((e=>t.has(e))).forEach((o=>{e[o]=t.get(o).split("/")})),c.params.filter((e=>t.has(e))).forEach((o=>{e[o]=t.get(o)})),e}function m(e){const t={};c.filters.filter((t=>void 0!==e[t])).filter((t=>{var o;return null===(o=e[t])||void 0===o?void 0:o.length})).forEach((o=>{t[o]=e[o].join("/")})),c.params.filter((t=>void 0!==e[t])).filter((t=>e[t]!==c.defaults[t])).forEach((o=>{t[o]=e[o]}));const o=new URLSearchParams(t).toString().replace(/%2F/g,"/").replace(/%20/g,"+").replace(/%2C/g,","),[i]=window.location.href.split("?");return`${i}${o.length?`?${o}`:""}`}function h(e,t){var o;const i=m({meeting:z().meeting}),n=["","","","-----",d.email_public_url.replace("%url%",i)];return t.edit_url&&n.push(d.email_edit_url.replace("%url%",t.edit_url)),`mailto:${function(e){if(Array.isArray(e))return e;const t=typeof e;return"string"===t?[e]:"object"===t?Object.values(e):[]}(e).join()}?${new URLSearchParams({subject:d.email_subject.replace("%name%",null!==(o=t.name)&&void 0!==o?o:d.unnamed_meeting),body:n.join("\n")}).toString().replaceAll("+"," ")}`}function O(e){e=e.trim().toLowerCase();const t="åàáãäâèéëêìíïîòóöôùúüûñç·/_,:;";for(let o=0,i=t.length;o(0,f.jsx)("path",{fillRule:"evenodd",d:e},t)))})}function g({className:e,href:t,icon:o,onClick:i,small:n=!1,text:a}){return(0,f.jsxs)("a",{className:r("align-items-center btn justify-content-center",{"d-flex overflow-hidden":!n,"btn-sm d-inline-flex":n,"cursor-pointer":!(!t&&!i),"btn-outline-secondary":!n&&!e},e),href:t,onClick:i,target:t&&"_blank",children:[o&&(0,f.jsx)(_,{icon:o,size:n?18:void 0,className:n?"me-1":"me-2"}),n?a:(0,f.jsx)("div",{className:"text-truncate",children:a})]})}function q(e,t){if(!((null==e?void 0:e.latitude)&&(null==t?void 0:t.latitude)&&(null==e?void 0:e.longitude)&&(null==t?void 0:t.longitude)))return null;if(e.latitude===t.latitude&&e.longitude===t.longitude)return 0;{const o=Math.PI*e.latitude/180,i=Math.PI*t.latitude/180,n=Math.PI*(e.longitude-t.longitude)/180;let r=Math.sin(o)*Math.sin(i)+Math.cos(o)*Math.cos(i)*Math.cos(n);return r>1&&(r=1),r=Math.acos(r),r=12436.2*r/Math.PI,"km"===c.distance_unit&&(r*=1.609344),parseFloat(r.toFixed(2))}}function y(e,t){return Object.values(e).map((e=>(e.children&&(e.children=y(e.children,t)),e))).sort(t)}function v(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,i)}return o}function x(e){for(var t=1;t{r[e]={key:e.toString(),name:`${e} ${c.distance_unit}`,slugs:[]}})),o.forEach((o=>{i.meetings[o]=x(x({},i.meetings[o]),{},{distance:q({latitude:e,longitude:t},i.meetings[o])}),c.distance_options.forEach((e=>{i.meetings[o].distance<=e&&r[e].slugs.push(o)}))}));const a=y(r,((e,t)=>parseInt(e.key)-parseInt(t.key)));i.capabilities.distance=!!a.length,n(x(x({},i),{},{capabilities:i.capabilities,indexes:x(x({},i.indexes),{},{distance:a}),input:x(x({},i.input),{},{latitude:parseFloat(e.toFixed(5)),longitude:parseFloat(t.toFixed(5))}),ready:!0}))}var L=o(8),R=o.n(L);function T(e,t){for(const o of e){if(o.key===t)return o;if(o.children){const e=T(o.children,t);if(e)return e}}}function k(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,i)}return o}function B(e){for(var t=1;td[e])),s=Object.keys(d.types).filter((e=>"ONL"!==e)),p=Object.values(d.types),l={};s.forEach((e=>{l[d.types[e]]=e})),e=function(e){const t=[],o=[];return e.forEach(((e,i)=>{Array.isArray(e.day)&&(o.push(i),e.day.forEach((o=>{t.push(B(B({},e),{},{day:o,slug:e.slug+"-"+o}))})))})),o.forEach((t=>{e.splice(t,1)})),e.concat(t)}(e),e.forEach(((e,b)=>{if(Object.keys(e).filter((e=>!r.includes(e))).forEach((t=>{delete e[t]})),!e.slug)return void console.warn(`TSML no slug: ${e.edit_url}`);if(e.slug in i)return void console.warn(`TSML UI ${e.slug} duplicate slug: ${e.edit_url}`);if(e.name||(e.name=d.unnamed_meeting),e.conference_provider=e.conference_url?function(e){const t=e.split("/");if(t.length<2)return null;const o=Object.keys(c.conference_providers).filter((e=>t[2].endsWith(e)));return o.length?c.conference_providers[o[0]]:null}(e.conference_url):null,e.conference_url&&!e.conference_provider&&console.warn(`unknown conference_url ${e.conference_url}: ${e.edit_url}`),e.formatted_address||e.city&&(e.formatted_address=e.city,e.address&&(e.formatted_address=e.address+", "+e.formatted_address),e.state&&(e.formatted_address=e.formatted_address+", "+e.state),e.postal_code&&(e.formatted_address=e.formatted_address+" "+e.postal_code),e.country&&(e.formatted_address=e.formatted_address+", "+e.country)),e.address||(e.address=function(e=""){const t=e.split(", ");return t.length>3?t[0]:null}(e.formatted_address)),e.coordinates){const t=e.coordinates.split(",");e.approximate=2!==t.length,e.latitude=e.approximate?null:t[0],e.longitude=e.approximate?null:t[1]}else e.approximate=e.approximate?"yes"===e.approximate.toLowerCase():!e.address;if(e.approximate&&(e.address=null),e.types?"string"==typeof e.types&&(e.types=e.types.split(",").map((e=>e.trim()))):e.types=[],e.isOnline=!!e.conference_provider||!!e.conference_phone,e.isOnline&&e.types.push("online"),e.isTempClosed=e.types.includes("TC")||e.types.includes(d.types.TC),e.isInPerson=!e.isTempClosed&&!e.approximate,e.isActive=e.isOnline||e.isInPerson,e.isInPerson&&e.types.push("in-person"),e.isActive?e.types.push("active"):(t.inactive=!0,e.types.push("inactive")),e.isInPerson||(e.types=e.types.filter((e=>!c.in_person_types.includes(e)))),!t.location&&(e.isOnline&&e.group||e.isInPerson&&e.location)&&(t.location=!0),e.regions&&Array.isArray(e.regions)||(e.regions=[],e.region&&(e.regions.push(e.region),e.sub_region&&(e.regions.push(e.sub_region),e.sub_sub_region&&e.regions.push(e.sub_sub_region)))),e.isActive&&e.regions.length&&(n.region=D(e.regions,0,n.region,e.slug)),Number.isInteger(e.day)?e.day=e.day.toString():a.includes(e.day)&&(e.day=a.indexOf(e.day).toString()),e.latitude&&e.longitude&&(e.isInPerson?(t.coordinates=!0,e.latitude=parseFloat(e.latitude),e.longitude=parseFloat(e.longitude)):(e.latitude=null,e.longitude=null)),e.day&&e.time&&(e.isActive&&(n.weekday.hasOwnProperty(e.day)||(n.weekday[e.day]={key:e.day,name:d[c.weekdays[e.day]],slugs:[]}),n.weekday[e.day].slugs.push(e.slug)),e.timezone=E(e.timezone,o),e.start=R().tz(`${e.day} ${e.time}`,"d hh:mm",e.timezone).tz(o),e.end_time&&(e.end=R().tz(`${e.day} ${e.end_time}`,"d hh:mm",e.timezone).tz(o)),e.isActive)){const t=60*e.start.get("hour")+e.start.get("minutes");e.minutes_week=t+1440*e.day;const o=[];t>=240&&t<720&&o.push(0),t>=660&&t<1020&&o.push(1),t>=960&&t<1260&&o.push(2),(t>=1200||t<300)&&o.push(3),o.forEach((t=>{n.time.hasOwnProperty(t)||(n.time[t]={key:c.times[t],name:d[c.times[t]],slugs:[]}),n.time[t].slugs.push(e.slug)}))}e.types=Array.isArray(e.types)?e.types.map((e=>"number"==typeof e?e.toString():"string"==typeof e?e.trim():null)).filter((e=>s.includes(e)||p.includes(e))).map((e=>p.includes(e)?l[e]:e)):[];if((e.isActive?e.types:["inactive"]).forEach((t=>{n.type.hasOwnProperty(t)||(n.type[t]={key:O(d.types[t]),name:d.types[t],slugs:[]}),n.type[t].slugs.push(e.slug)})),e.updated){const t=R().utc(e.updated);e.updated=t.isValid()?t.tz(o).format("ll"):void 0}e.venmo&&(e.venmo.startsWith("@")||(console.warn(`TSML UI invalid venmo ${e.venmo}: ${e.edit_url}`),e.venmo=null)),e.square&&(e.square.startsWith("$")||(console.warn(`TSML UI invalid square ${e.square}: ${e.edit_url}`),e.square=null)),e.paypal&&(e.paypal.startsWith("https://www.paypal.me")||e.paypal.startsWith("https://paypal.me")||(console.warn(`TSML UI invalid paypal ${e.paypal}: ${e.edit_url}`),e.paypal=null)),e.search=[e.district,e.formatted_address,e.group,e.group_notes,e.location,e.location_notes,e.name,e.notes,e.regions].flat().filter((e=>e)).join("\t").toLowerCase(),i[e.slug]=e})),n.region=y(n.region,((e,t)=>e.name>t.name?1:t.name>e.name?-1:0)),n.weekday=y(n.weekday,((e,t)=>parseInt(e.key)-parseInt(t.key))),n.time=y(n.time,((e,t)=>c.times.indexOf(e.key)-c.times.indexOf(t.key))),n.type=y(n.type,((e,t)=>e.name>t.name?1:t.name>e.name?-1:0));const b=Object.keys(i).length;return["region","weekday","time","type"].forEach((e=>{t[e]=!!n[e].filter((e=>e.slugs.length!==b)).length})),t.inactive||(n.type=n.type.filter((e=>"active"!==e.key)),Object.keys(i).forEach((e=>{i[e]=B(B({},i[e]),{},{types:i[e].types.filter((e=>e!==d.types.active))})}))),t.coordinates&&(!navigator.geolocation||"https:"!==window.location.protocol&&"localhost"!==window.location.hostname||(t.geolocation=!0)),[i,n,t]}function E(e,t){return R().tz.zone(e)?e:t}function D(e,t,o,i){const n=e[t];return o.hasOwnProperty(n)||(o[n]={key:O(e.slice(0,t+1).join(" ")),name:n,slugs:[],children:{}}),o[n].slugs.push(i),e.length>t+1&&(o[n].children=D(e,t+1,o[n].children,i)),o}function C({state:e,setState:t}){return e.error?(0,f.jsxs)("div",{className:"d-flex flex-column gap-3",children:[(0,f.jsx)("div",{className:"alert alert-danger text-center m-0",children:d.alerts[e.error]}),"bad_data"===e.error&&(0,f.jsx)(g,{onClick:()=>location.reload(),text:"Reload"})]}):e.alert?(0,f.jsxs)("div",{className:"d-flex flex-column gap-3",children:[(0,f.jsx)("div",{className:"alert alert-warning text-center m-0",children:d.alerts[e.alert]}),"no_results"===e.alert&&e.input.search&&(0,f.jsx)(g,{onClick:()=>{e.input.search="",t(Object.assign({},e))},className:"btn-light btn-outline-secondary",text:d.remove.replace("%filter%",`‘${e.input.search}’`),icon:"close"}),"no_results"===e.alert&&c.filters.map((o=>e.input[o].map((i=>{var n;return(0,f.jsx)(g,{className:"btn-light btn-outline-secondary",onClick:()=>{e.input[o]=e.input[o].filter((e=>e!==i)),t(Object.assign({},e))},text:d.remove.replace("%filter%",null===(n=T(e.indexes[o],i))||void 0===n?void 0:n.name),icon:"close"},i)}))))]}):null}function N(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,i)}return o}function P(e){for(var t=1;t{if(e.preventDefault(),o)if(e.metaKey){const e=p.input[t].indexOf(o);-1===e?p.input[t].push(o):p.input[t].splice(e,1)}else p.input[t]=[o];else p.input[t]=[];p.input[t].sort(((e,o)=>p.indexes[t].findIndex((t=>e===t.key))-p.indexes[t].findIndex((e=>o===e.key)))),s(P({},p))},d=({key:e,name:t,slugs:i,children:a})=>(0,f.jsxs)(n.Fragment,{children:[(0,f.jsxs)("a",{className:r("align-items-center d-flex dropdown-item justify-content-between",{"bg-secondary text-white":l.includes(e)}),href:m(P(P({},p.input),{},{[o]:l.includes(e)?[e]:[]})),onClick:t=>b(t,o,e),children:[(0,f.jsx)("span",{children:t}),(0,f.jsx)("span",{className:"badge bg-light border ms-3 text-dark",children:i.length})]}),!!a?.length&&(0,f.jsx)("div",{className:"children",children:a.map((e=>d(e)))})]},e),u={type:["active","in-person","online"]};return(0,f.jsxs)("div",{className:"dropdown",children:[(0,f.jsx)("button",{"aria-expanded":i,className:"btn btn-outline-secondary dropdown-toggle w-100",id:o,onClick:()=>a(i?null:o),children:l?.length&&c?.length?l.map((e=>T(c,e)?.name)).join(" + "):e}),(0,f.jsxs)("div",{className:r("dropdown-menu my-1",{show:i,"dropdown-menu-end":t}),"aria-labelledby":o,children:[(0,f.jsx)("a",{className:r("dropdown-item",{"active bg-secondary text-white":!l.length}),onClick:e=>b(e,o,null),href:m(P(P({},p.input),{},{[o]:[]})),children:e}),[c?.filter((e=>u[o]?.includes(e.key))).sort(((e,t)=>u[o]?.indexOf(e.key)-u[o]?.indexOf(t.key))),c?.filter((e=>!u[o]?.includes(e.key)))].filter((e=>e.length)).map(((e,t)=>(0,f.jsxs)(n.Fragment,{children:[(0,f.jsx)("div",{className:"dropdown-divider"}),e.map((e=>d(e)))]},t)))]})]})}function j({state:e,setState:t,mapbox:o}){const[i,a]=(0,n.useState)(),[s,p]=(0,n.useState)("location"===e.input.mode?e.input.search:""),l=(0,n.useRef)(null),b=["search","location","me"].filter((t=>"location"!==t||e.capabilities.coordinates&&o)).filter((t=>"me"!==t||e.capabilities.coordinates&&e.capabilities.geolocation)),u=c.filters.filter((t=>e.capabilities[t])).filter((t=>"region"!==t||"me"!==e.input.mode)).filter((t=>"distance"!==t||"search"!==e.input.mode)),M=["table","map"].filter((t=>"map"!==t||e.capabilities.coordinates&&o)),z=M.length>1;(0,n.useEffect)((()=>(document.body.addEventListener("click",h),()=>{document.body.removeEventListener("click",h)})),[document]),(0,n.useEffect)((()=>{const t=setTimeout((()=>{e.input.search&&function({category:e,action:t,label:o}){"function"==typeof gtag?gtag("event",t,{event_category:e,event_label:o}):"function"==typeof ga&&ga("send",{hitType:"event",eventCategory:e,eventAction:t,eventLabel:o})}({category:"search",action:e.input.mode,label:e.input.search})}),2e3);return()=>clearTimeout(t)}),[e.input.search]);const h=e=>{e.target.classList.contains("dropdown-toggle")||a(void 0)};return!!Object.keys(e.meetings).length&&(0,f.jsxs)("div",{className:"row d-print-none controls",children:[(0,f.jsx)("div",{className:"col-sm-6 col-lg mb-3",children:(0,f.jsxs)("div",{className:"position-relative",children:[(0,f.jsxs)("form",{className:"input-group",onSubmit:o=>{o.preventDefault(),"location"===e.input.mode&&t(Object.assign(Object.assign({},e),{input:Object.assign(Object.assign({},e.input),{latitude:void 0,longitude:void 0,search:s})}))},children:[(0,f.jsx)("input",{"aria-label":d.modes[e.input.mode],className:"form-control",disabled:"me"===e.input.mode,onChange:o=>{"search"===e.input.mode?(e.input.search=o.target.value,t(Object.assign({},e))):p(o.target.value)},placeholder:d.modes[e.input.mode],ref:l,spellCheck:"false",type:"search",value:"location"===e.input.mode?s:e.input.search}),b.length>1&&(0,f.jsx)("button",{id:"mode","aria-label":d.modes[e.input.mode],className:"btn btn-outline-secondary dropdown-toggle",onClick:()=>a("search"===i?void 0:"search"),type:"button"})]}),b.length>1&&(0,f.jsx)("div",{className:r("dropdown-menu dropdown-menu-end my-1",{show:"search"===i}),children:b.map((o=>(0,f.jsx)("a",{className:r("align-items-center dropdown-item d-flex justify-content-between",{"active bg-secondary text-white":e.input.mode===o}),href:m(Object.assign(Object.assign({},e.input),{mode:o})),onClick:i=>((o,i)=>{o.preventDefault(),Object.keys(e.meetings).forEach((t=>{e.meetings[t].distance=void 0})),p(""),setTimeout((()=>{var e;return null===(e=l.current)||void 0===e?void 0:e.focus()}),100),t(Object.assign(Object.assign({},e),{capabilities:Object.assign(Object.assign({},e.capabilities),{distance:!1}),indexes:Object.assign(Object.assign({},e.indexes),{distance:[]}),input:Object.assign(Object.assign({},e.input),{distance:[],latitude:void 0,longitude:void 0,mode:i,search:""})}))})(i,o),children:d.modes[o]},o)))})]})}),u.map(((o,n)=>(0,f.jsx)("div",{className:"col-sm-6 col-lg mb-3",children:(0,f.jsx)(Y,{defaultValue:d[`${o}_any`],end:!z&&n===u.length-1,filter:o,open:i===o,setDropdown:a,state:e,setState:t})},o))),z&&(0,f.jsx)("div",{className:"col-sm-6 col-lg mb-3",children:(0,f.jsx)("div",{className:"btn-group h-100 w-100",role:"group",children:M.map((o=>(0,f.jsx)("button",{"aria-label":d.views[o],className:r("btn btn-outline-secondary d-flex align-items-center justify-content-center w-100",{active:e.input.view===o}),onClick:i=>((o,i)=>{o.preventDefault(),e.input.view=i,t(Object.assign({},e))})(i,o),type:"button",children:(0,f.jsx)(_,{icon:o})},o)))})})]})}function F(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,i)}return o}function H(e){for(var t=1;tt.types.includes(e))).map((e=>d.types[e])).sort().join(", ");return e&&o?(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)("a",{href:m(H(H({},e.input),{},{meeting:t.slug})),onClick:i=>{i.preventDefault(),i.stopPropagation(),o(H(H({},e),{},{input:H(H({},e.input),{},{meeting:t.slug})}))},children:t.name}),i&&(0,f.jsx)("small",{className:"ms-2 text-muted",children:i})]}):i?(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)("span",{children:t.name}),(0,f.jsx)("small",{className:"ms-2 text-muted",children:i})]}):t.name}function G(){return(0,f.jsx)("div",{className:"align-items-center d-flex flex-grow-1 h-100 justify-content-center loading",children:(0,f.jsx)("div",{className:"m-5 spinner-border text-secondary"})})}function Z(){return Z=Object.assign||function(e){for(var t=1;te.length)&&(t=e.length);for(var o=0,i=new Array(t);oo?o:e}const ce=Math.log2||function(e){return Math.log(e)*Math.LOG2E};function le(e,t,o){var i=t[0],n=t[1],r=t[2],a=t[3],s=t[4],p=t[5],c=t[6],l=t[7],b=t[8],d=t[9],u=t[10],M=t[11],z=t[12],m=t[13],h=t[14],O=t[15],f=o[0],A=o[1],_=o[2],g=o[3];return e[0]=f*i+A*s+_*b+g*z,e[1]=f*n+A*p+_*d+g*m,e[2]=f*r+A*c+_*u+g*h,e[3]=f*a+A*l+_*M+g*O,f=o[4],A=o[5],_=o[6],g=o[7],e[4]=f*i+A*s+_*b+g*z,e[5]=f*n+A*p+_*d+g*m,e[6]=f*r+A*c+_*u+g*h,e[7]=f*a+A*l+_*M+g*O,f=o[8],A=o[9],_=o[10],g=o[11],e[8]=f*i+A*s+_*b+g*z,e[9]=f*n+A*p+_*d+g*m,e[10]=f*r+A*c+_*u+g*h,e[11]=f*a+A*l+_*M+g*O,f=o[12],A=o[13],_=o[14],g=o[15],e[12]=f*i+A*s+_*b+g*z,e[13]=f*n+A*p+_*d+g*m,e[14]=f*r+A*c+_*u+g*h,e[15]=f*a+A*l+_*M+g*O,e}function be(e,t,o){var i,n,r,a,s,p,c,l,b,d,u,M,z=o[0],m=o[1],h=o[2];return t===e?(e[12]=t[0]*z+t[4]*m+t[8]*h+t[12],e[13]=t[1]*z+t[5]*m+t[9]*h+t[13],e[14]=t[2]*z+t[6]*m+t[10]*h+t[14],e[15]=t[3]*z+t[7]*m+t[11]*h+t[15]):(i=t[0],n=t[1],r=t[2],a=t[3],s=t[4],p=t[5],c=t[6],l=t[7],b=t[8],d=t[9],u=t[10],M=t[11],e[0]=i,e[1]=n,e[2]=r,e[3]=a,e[4]=s,e[5]=p,e[6]=c,e[7]=l,e[8]=b,e[9]=d,e[10]=u,e[11]=M,e[12]=i*z+s*m+b*h+t[12],e[13]=n*z+p*m+d*h+t[13],e[14]=r*z+c*m+u*h+t[14],e[15]=a*z+l*m+M*h+t[15]),e}function de(e,t,o){var i=o[0],n=o[1],r=o[2];return e[0]=t[0]*i,e[1]=t[1]*i,e[2]=t[2]*i,e[3]=t[3]*i,e[4]=t[4]*n,e[5]=t[5]*n,e[6]=t[6]*n,e[7]=t[7]*n,e[8]=t[8]*r,e[9]=t[9]*r,e[10]=t[10]*r,e[11]=t[11]*r,e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}function ue(e,t){var o=e[0],i=e[1],n=e[2],r=e[3],a=e[4],s=e[5],p=e[6],c=e[7],l=e[8],b=e[9],d=e[10],u=e[11],M=e[12],z=e[13],m=e[14],h=e[15],O=t[0],f=t[1],A=t[2],_=t[3],g=t[4],q=t[5],y=t[6],v=t[7],x=t[8],W=t[9],w=t[10],L=t[11],R=t[12],T=t[13],k=t[14],B=t[15];return Math.abs(o-O)<=oe*Math.max(1,Math.abs(o),Math.abs(O))&&Math.abs(i-f)<=oe*Math.max(1,Math.abs(i),Math.abs(f))&&Math.abs(n-A)<=oe*Math.max(1,Math.abs(n),Math.abs(A))&&Math.abs(r-_)<=oe*Math.max(1,Math.abs(r),Math.abs(_))&&Math.abs(a-g)<=oe*Math.max(1,Math.abs(a),Math.abs(g))&&Math.abs(s-q)<=oe*Math.max(1,Math.abs(s),Math.abs(q))&&Math.abs(p-y)<=oe*Math.max(1,Math.abs(p),Math.abs(y))&&Math.abs(c-v)<=oe*Math.max(1,Math.abs(c),Math.abs(v))&&Math.abs(l-x)<=oe*Math.max(1,Math.abs(l),Math.abs(x))&&Math.abs(b-W)<=oe*Math.max(1,Math.abs(b),Math.abs(W))&&Math.abs(d-w)<=oe*Math.max(1,Math.abs(d),Math.abs(w))&&Math.abs(u-L)<=oe*Math.max(1,Math.abs(u),Math.abs(L))&&Math.abs(M-R)<=oe*Math.max(1,Math.abs(M),Math.abs(R))&&Math.abs(z-T)<=oe*Math.max(1,Math.abs(z),Math.abs(T))&&Math.abs(m-k)<=oe*Math.max(1,Math.abs(m),Math.abs(k))&&Math.abs(h-B)<=oe*Math.max(1,Math.abs(h),Math.abs(B))}function Me(e,t,o){return e[0]=t[0]+o[0],e[1]=t[1]+o[1],e}function ze(e){var t=e[0],o=e[1];return Math.hypot(t,o)}function me(e,t,o,i){var n=t[0],r=t[1];return e[0]=n+i*(o[0]-n),e[1]=r+i*(o[1]-r),e}var he=function(e,t,o){return e[0]=t[0]-o[0],e[1]=t[1]-o[1],e};!function(){var e=function(){var e=new ie(2);return ie!=Float32Array&&(e[0]=0,e[1]=0),e}()}();var Oe=function(e,t,o){return e[0]=t[0]*o[0],e[1]=t[1]*o[1],e[2]=t[2]*o[2],e};!function(){var e=function(){var e=new ie(3);return ie!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0),e}()}();function fe(e,t){if(!e)throw new Error(t||"@math.gl/web-mercator: assertion failed.")}const Ae=Math.PI,_e=Ae/4,ge=Ae/180,qe=180/Ae,ye=512,ve=85.051129;function xe(e){return Math.pow(2,e)}function We(e){return ce(e)}function we([e,t]){fe(Number.isFinite(e)),fe(Number.isFinite(t)&&t>=-90&&t<=90,"invalid latitude");const o=t*ge;return[ye*(e*ge+Ae)/(2*Ae),ye*(Ae+Math.log(Math.tan(_e+.5*o)))/(2*Ae)]}function Le([e,t]){const o=e/ye*(2*Ae)-Ae,i=2*(Math.atan(Math.exp(t/ye*(2*Ae)-Ae))-_e);return[o*qe,i*qe]}function Re({latitude:e,longitude:t,highPrecision:o=!1}){fe(Number.isFinite(e)&&Number.isFinite(t));const i={},n=Math.cos(e*ge),r=512/360,a=r/n,s=12790407194604047e-21/n;if(i.unitsPerMeter=[s,s,s],i.metersPerUnit=[1/s,1/s,1/s],i.unitsPerDegree=[r,a,s],i.degreesPerUnit=[.703125,1/a,1/s],o){const t=ge*Math.tan(e*ge)/n,o=r*t/2,p=12790407194604047e-21*t,c=p/a*s;i.unitsPerDegree2=[0,o,p],i.unitsPerMeter2=[c,0,c]}return i}function Te({height:e,pitch:t,bearing:o,altitude:i,scale:n,center:r=null}){const a=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return be(a,a,[0,0,-i]),function(e,t,o){var i=Math.sin(o),n=Math.cos(o),r=t[4],a=t[5],s=t[6],p=t[7],c=t[8],l=t[9],b=t[10],d=t[11];t!==e&&(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[4]=r*n+c*i,e[5]=a*n+l*i,e[6]=s*n+b*i,e[7]=p*n+d*i,e[8]=c*n-r*i,e[9]=l*n-a*i,e[10]=b*n-s*i,e[11]=d*n-p*i}(a,a,-t*ge),function(e,t,o){var i=Math.sin(o),n=Math.cos(o),r=t[0],a=t[1],s=t[2],p=t[3],c=t[4],l=t[5],b=t[6],d=t[7];t!==e&&(e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=r*n+c*i,e[1]=a*n+l*i,e[2]=s*n+b*i,e[3]=p*n+d*i,e[4]=c*n-r*i,e[5]=l*n-a*i,e[6]=b*n-s*i,e[7]=d*n-p*i}(a,a,o*ge),de(a,a,[n/=e,n,n]),r&&be(a,a,function(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e}([],r)),a}function ke({width:e,height:t,pitch:o,altitude:i,fovy:n,nearZMultiplier:r,farZMultiplier:a}){const{fov:s,aspect:p,near:c,far:l}=function({width:e,height:t,fovy:o=Be(1.5),altitude:i,pitch:n=0,nearZMultiplier:r=1,farZMultiplier:a=1}){void 0!==i&&(o=Be(i));const s=.5*o*ge,p=Se(o),c=n*ge,l=Math.sin(s)*p/Math.sin(Math.min(Math.max(Math.PI/2-c-s,.01),Math.PI-.01));return{fov:2*s,aspect:e/t,focalDistance:p,near:r,far:(Math.sin(c)*l+p)*a}}({width:e,height:t,altitude:i,fovy:n,pitch:o,nearZMultiplier:r,farZMultiplier:a}),b=function(e,t,o,i,n){var r,a=1/Math.tan(t/2);return e[0]=a/o,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=-1,e[12]=0,e[13]=0,e[15]=0,null!=n&&n!==1/0?(r=1/(i-n),e[10]=(n+i)*r,e[14]=2*n*i*r):(e[10]=-1,e[14]=-2*i),e}([],s,p,c,l);return b}function Be(e){return 2*Math.atan(.5/e)*qe}function Se(e){return.5/Math.tan(.5*e*ge)}function Xe(e,t,o=0){const[i,n,r]=e;if(fe(Number.isFinite(i)&&Number.isFinite(n),"invalid pixel coordinate"),Number.isFinite(r)){return ae(t,[i,n,r,1])}const a=ae(t,[i,n,0,1]),s=ae(t,[i,n,1,1]),p=a[2],c=s[2];return me([],a,s,p===c?0:((o||0)-p)/(c-p))}const Ee=Math.PI/180;function De(e,t,o){const{pixelUnprojectionMatrix:i}=e,n=ae(i,[t,0,1,1]),r=ae(i,[t,e.height,1,1]),a=Le(me([],n,r,(o*e.distanceScales.unitsPerMeter[2]-n[2])/(r[2]-n[2])));return a[2]=o,a}class Ce{constructor({width:e,height:t,latitude:o=0,longitude:i=0,zoom:n=0,pitch:r=0,bearing:a=0,altitude:s=null,fovy:p=null,position:c=null,nearZMultiplier:l=.02,farZMultiplier:b=1.01}={width:1,height:1}){e=e||1,t=t||1,null===p&&null===s?p=Be(s=1.5):null===p?p=Be(s):null===s&&(s=Se(p));const d=xe(n);s=Math.max(.75,s);const u=Re({longitude:i,latitude:o}),M=we([i,o]);M[2]=0,c&&function(e,t,o){e[0]=t[0]+o[0],e[1]=t[1]+o[1],e[2]=t[2]+o[2]}(M,M,Oe([],c,u.unitsPerMeter)),this.projectionMatrix=ke({width:e,height:t,pitch:r,fovy:p,nearZMultiplier:l,farZMultiplier:b}),this.viewMatrix=Te({height:t,scale:d,center:M,pitch:r,bearing:a,altitude:s}),this.width=e,this.height=t,this.scale=d,this.latitude=o,this.longitude=i,this.zoom=n,this.pitch=r,this.bearing=a,this.altitude=s,this.fovy=p,this.center=M,this.meterOffset=c||[0,0,0],this.distanceScales=u,this._initMatrices(),this.equals=this.equals.bind(this),this.project=this.project.bind(this),this.unproject=this.unproject.bind(this),this.projectPosition=this.projectPosition.bind(this),this.unprojectPosition=this.unprojectPosition.bind(this),Object.freeze(this)}_initMatrices(){const{width:e,height:t,projectionMatrix:o,viewMatrix:i}=this,n=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];le(n,n,o),le(n,n,i),this.viewProjectionMatrix=n;const r=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];de(r,r,[e/2,-t/2,1]),be(r,r,[1,-1,0]),le(r,r,n);const a=function(e,t){var o=t[0],i=t[1],n=t[2],r=t[3],a=t[4],s=t[5],p=t[6],c=t[7],l=t[8],b=t[9],d=t[10],u=t[11],M=t[12],z=t[13],m=t[14],h=t[15],O=o*s-i*a,f=o*p-n*a,A=o*c-r*a,_=i*p-n*s,g=i*c-r*s,q=n*c-r*p,y=l*z-b*M,v=l*m-d*M,x=l*h-u*M,W=b*m-d*z,w=b*h-u*z,L=d*h-u*m,R=O*L-f*w+A*W+_*x-g*v+q*y;return R?(R=1/R,e[0]=(s*L-p*w+c*W)*R,e[1]=(n*w-i*L-r*W)*R,e[2]=(z*q-m*g+h*_)*R,e[3]=(d*g-b*q-u*_)*R,e[4]=(p*x-a*L-c*v)*R,e[5]=(o*L-n*x+r*v)*R,e[6]=(m*A-M*q-h*f)*R,e[7]=(l*q-d*A+u*f)*R,e[8]=(a*w-s*x+c*y)*R,e[9]=(i*x-o*w-r*y)*R,e[10]=(M*g-z*A+h*O)*R,e[11]=(b*A-l*g-u*O)*R,e[12]=(s*v-a*W-p*y)*R,e[13]=(o*W-i*v+n*y)*R,e[14]=(z*f-M*_-m*O)*R,e[15]=(l*_-b*f+d*O)*R,e):null}([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],r);if(!a)throw new Error("Pixel project matrix not invertible");this.pixelProjectionMatrix=r,this.pixelUnprojectionMatrix=a}equals(e){return e instanceof Ce&&(e.width===this.width&&e.height===this.height&&ue(e.projectionMatrix,this.projectionMatrix)&&ue(e.viewMatrix,this.viewMatrix))}project(e,{topLeft:t=!0}={}){const o=function(e,t){const[o,i,n=0]=e;return fe(Number.isFinite(o)&&Number.isFinite(i)&&Number.isFinite(n)),ae(t,[o,i,n,1])}(this.projectPosition(e),this.pixelProjectionMatrix),[i,n]=o,r=t?n:this.height-n;return 2===e.length?[i,r]:[i,r,o[2]]}unproject(e,{topLeft:t=!0,targetZ:o}={}){const[i,n,r]=e,a=t?n:this.height-n,s=o&&o*this.distanceScales.unitsPerMeter[2],p=Xe([i,a,r],this.pixelUnprojectionMatrix,s),[c,l,b]=this.unprojectPosition(p);return Number.isFinite(r)?[c,l,b]:Number.isFinite(o)?[c,l,o]:[c,l]}projectPosition(e){const[t,o]=we(e);return[t,o,(e[2]||0)*this.distanceScales.unitsPerMeter[2]]}unprojectPosition(e){const[t,o]=Le(e);return[t,o,(e[2]||0)*this.distanceScales.metersPerUnit[2]]}projectFlat(e){return we(e)}unprojectFlat(e){return Le(e)}getMapCenterByLngLatPosition({lngLat:e,pos:t}){const o=Xe(t,this.pixelUnprojectionMatrix),i=Me([],we(e),function(e,t){return e[0]=-t[0],e[1]=-t[1],e}([],o));return Le(Me([],this.center,i))}getLocationAtPoint({lngLat:e,pos:t}){return this.getMapCenterByLngLatPosition({lngLat:e,pos:t})}fitBounds(e,t={}){const{width:o,height:i}=this,{longitude:n,latitude:r,zoom:a}=function({width:e,height:t,bounds:o,minExtent:i=0,maxZoom:n=24,padding:r=0,offset:a=[0,0]}){const[[s,p],[c,l]]=o;Number.isFinite(r)?r={top:r,bottom:r,left:r,right:r}:fe(Number.isFinite(r.top)&&Number.isFinite(r.bottom)&&Number.isFinite(r.left)&&Number.isFinite(r.right));const b=we([s,pe(l,-85.051129,ve)]),d=we([c,pe(p,-85.051129,ve)]),u=[Math.max(Math.abs(d[0]-b[0]),i),Math.max(Math.abs(d[1]-b[1]),i)],M=[e-r.left-r.right-2*Math.abs(a[0]),t-r.top-r.bottom-2*Math.abs(a[1])];fe(M[0]>0&&M[1]>0);const z=M[0]/u[0],m=M[1]/u[1],h=(r.right-r.left)/2/z,O=(r.bottom-r.top)/2/m,f=Le([(d[0]+b[0])/2+h,(d[1]+b[1])/2+O]),A=Math.min(n,ce(Math.abs(Math.min(z,m))));return fe(Number.isFinite(A)),{longitude:f[0],latitude:f[1],zoom:A}}(Object.assign({width:o,height:i,bounds:e},t));return new Ce({width:o,height:i,longitude:n,latitude:r,zoom:a})}getBounds(e){const t=this.getBoundingRegion(e),o=Math.min(...t.map((e=>e[0]))),i=Math.max(...t.map((e=>e[0])));return[[o,Math.min(...t.map((e=>e[1])))],[i,Math.max(...t.map((e=>e[1])))]]}getBoundingRegion(e={}){return function(e,t=0){const{width:o,height:i,unproject:n}=e,r={targetZ:t},a=n([0,i],r),s=n([o,i],r);let p,c;return(e.fovy?.5*e.fovy*Ee:Math.atan(.5/e.altitude))>(90-e.pitch)*Ee-.01?(p=De(e,0,t),c=De(e,o,t)):(p=n([0,0],r),c=n([o,0],r)),[a,s,c,p]}(this,e.z||0)}}const Ne=["longitude","latitude","zoom"],Pe={curve:1.414,speed:1.2};function Ie(e,t,o){const i=(o=Object.assign({},Pe,o)).curve,n=e.zoom,r=[e.longitude,e.latitude],a=xe(n),s=t.zoom,p=[t.longitude,t.latitude],c=xe(s-n),l=we(r),b=we(p),d=he([],b,l),u=Math.max(e.width,e.height),M=u/c,z=ze(d)*a,m=Math.max(z,.01),h=i*i,O=(M*M-u*u+h*h*m*m)/(2*u*h*m),f=(M*M-u*u-h*h*m*m)/(2*M*h*m),A=Math.log(Math.sqrt(O*O+1)-O),_=Math.log(Math.sqrt(f*f+1)-f);return{startZoom:n,startCenterXY:l,uDelta:d,w0:u,u1:z,S:(_-A)/i,rho:i,rho2:h,r0:A,r1:_}}var Ye=function(){if("undefined"!=typeof Map)return Map;function e(e,t){var o=-1;return e.some((function(e,i){return e[0]===t&&(o=i,!0)})),o}return function(){function t(){this.__entries__=[]}return Object.defineProperty(t.prototype,"size",{get:function(){return this.__entries__.length},enumerable:!0,configurable:!0}),t.prototype.get=function(t){var o=e(this.__entries__,t),i=this.__entries__[o];return i&&i[1]},t.prototype.set=function(t,o){var i=e(this.__entries__,t);~i?this.__entries__[i][1]=o:this.__entries__.push([t,o])},t.prototype.delete=function(t){var o=this.__entries__,i=e(o,t);~i&&o.splice(i,1)},t.prototype.has=function(t){return!!~e(this.__entries__,t)},t.prototype.clear=function(){this.__entries__.splice(0)},t.prototype.forEach=function(e,t){void 0===t&&(t=null);for(var o=0,i=this.__entries__;o0},e.prototype.connect_=function(){je&&!this.connected_&&(document.addEventListener("transitionend",this.onTransitionEnd_),window.addEventListener("resize",this.refresh),Ve?(this.mutationsObserver_=new MutationObserver(this.refresh),this.mutationsObserver_.observe(document,{attributes:!0,childList:!0,characterData:!0,subtree:!0})):(document.addEventListener("DOMSubtreeModified",this.refresh),this.mutationEventsAdded_=!0),this.connected_=!0)},e.prototype.disconnect_=function(){je&&this.connected_&&(document.removeEventListener("transitionend",this.onTransitionEnd_),window.removeEventListener("resize",this.refresh),this.mutationsObserver_&&this.mutationsObserver_.disconnect(),this.mutationEventsAdded_&&document.removeEventListener("DOMSubtreeModified",this.refresh),this.mutationsObserver_=null,this.mutationEventsAdded_=!1,this.connected_=!1)},e.prototype.onTransitionEnd_=function(e){var t=e.propertyName,o=void 0===t?"":t;Ue.some((function(e){return!!~o.indexOf(e)}))&&this.refresh()},e.getInstance=function(){return this.instance_||(this.instance_=new e),this.instance_},e.instance_=null,e}(),Ze=function(e,t){for(var o=0,i=Object.keys(t);o0},e}(),st="undefined"!=typeof WeakMap?new WeakMap:new Ye,pt=function e(t){if(!(this instanceof e))throw new TypeError("Cannot call a class as a function.");if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");var o=Ge.getInstance(),i=new at(t,o,this);st.set(this,i)};["observe","unobserve","disconnect"].forEach((function(e){pt.prototype[e]=function(){var t;return(t=st.get(this))[e].apply(t,arguments)}}));const ct=void 0!==Fe.ResizeObserver?Fe.ResizeObserver:pt;function lt(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function bt(e,t){for(var o=0;o=e.length?{done:!0}:{done:!1,value:e[i++]}},e:function(e){throw e},f:n}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var r,a=!0,s=!1;return{s:function(){o=e[Symbol.iterator]()},n:function(){var e=o.next();return a=e.done,e},e:function(e){s=!0,r=e},f:function(){try{a||null==o.return||o.return()}finally{if(s)throw r}}}}function ht(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,i=new Array(t);o1&&void 0!==arguments[1]?arguments[1]:"component";e.debug&&ee.checkPropTypes(_t,e,"prop",t)}var yt=function(){function e(t){var o=this;if(lt(this,e),Q(this,"props",gt),Q(this,"width",0),Q(this,"height",0),Q(this,"_fireLoadEvent",(function(){o.props.onLoad({type:"load",target:o._map})})),Q(this,"_handleError",(function(e){o.props.onError(e)})),!t.mapboxgl)throw new Error("Mapbox not available");this.mapboxgl=t.mapboxgl,e.initialized||(e.initialized=!0,this._checkStyleSheet(this.mapboxgl.version)),this._initialize(t)}return dt(e,[{key:"finalize",value:function(){return this._destroy(),this}},{key:"setProps",value:function(e){return this._update(this.props,e),this}},{key:"redraw",value:function(){var e=this._map;e.style&&(e._frame&&(e._frame.cancel(),e._frame=null),e._render())}},{key:"getMap",value:function(){return this._map}},{key:"_reuse",value:function(t){this._map=e.savedMap;var o=this._map.getContainer(),i=t.container;for(i.classList.add("mapboxgl-map");o.childNodes.length>0;)i.appendChild(o.childNodes[0]);this._map._container=i,e.savedMap=null,t.mapStyle&&this._map.setStyle(ft(t.mapStyle),{diff:!1}),this._map.isStyleLoaded()?this._fireLoadEvent():this._map.once("styledata",this._fireLoadEvent)}},{key:"_create",value:function(t){if(t.reuseMaps&&e.savedMap)this._reuse(t);else{if(t.gl){var o=HTMLCanvasElement.prototype.getContext;HTMLCanvasElement.prototype.getContext=function(){return HTMLCanvasElement.prototype.getContext=o,t.gl}}var i={container:t.container,center:[0,0],zoom:8,pitch:0,bearing:0,maxZoom:24,style:ft(t.mapStyle),interactive:!1,trackResize:!1,attributionControl:t.attributionControl,preserveDrawingBuffer:t.preserveDrawingBuffer};t.transformRequest&&(i.transformRequest=t.transformRequest),this._map=new this.mapboxgl.Map(Object.assign({},i,t.mapOptions)),this._map.once("load",this._fireLoadEvent),this._map.on("error",this._handleError)}return this}},{key:"_destroy",value:function(){this._map&&(this.props.reuseMaps&&!e.savedMap?(e.savedMap=this._map,this._map.off("load",this._fireLoadEvent),this._map.off("error",this._handleError),this._map.off("styledata",this._fireLoadEvent)):this._map.remove(),this._map=null)}},{key:"_initialize",value:function(e){var t=this;qt(e=Object.assign({},gt,e),"Mapbox"),this.mapboxgl.accessToken=e.mapboxApiAccessToken||gt.mapboxApiAccessToken,this.mapboxgl.baseApiUrl=e.mapboxApiUrl,this._create(e);var o=e.container;Object.defineProperty(o,"offsetWidth",{configurable:!0,get:function(){return t.width}}),Object.defineProperty(o,"clientWidth",{configurable:!0,get:function(){return t.width}}),Object.defineProperty(o,"offsetHeight",{configurable:!0,get:function(){return t.height}}),Object.defineProperty(o,"clientHeight",{configurable:!0,get:function(){return t.height}});var i=this._map.getCanvas();i&&(i.style.outline="none"),this._updateMapViewport({},e),this._updateMapSize({},e),this.props=e}},{key:"_update",value:function(e,t){if(this._map){qt(t=Object.assign({},this.props,t),"Mapbox");var o=this._updateMapViewport(e,t),i=this._updateMapSize(e,t);this._updateMapStyle(e,t),t.asyncRender||!o&&!i||this.redraw(),this.props=t}}},{key:"_updateMapStyle",value:function(e,t){e.mapStyle!==t.mapStyle&&this._map.setStyle(ft(t.mapStyle),{diff:!t.preventStyleDiffing})}},{key:"_updateMapSize",value:function(e,t){var o=e.width!==t.width||e.height!==t.height;return o&&(this.width=t.width,this.height=t.height,this._map.resize()),o}},{key:"_updateMapViewport",value:function(e,t){var o=this._getViewState(e),i=this._getViewState(t),n=i.latitude!==o.latitude||i.longitude!==o.longitude||i.zoom!==o.zoom||i.pitch!==o.pitch||i.bearing!==o.bearing||i.altitude!==o.altitude;return n&&(this._map.jumpTo(this._viewStateToMapboxProps(i)),i.altitude!==o.altitude&&(this._map.transform.altitude=i.altitude)),n}},{key:"_getViewState",value:function(e){var t=e.viewState||e,o=t.longitude,i=t.latitude,n=t.zoom,r=t.pitch,a=void 0===r?0:r,s=t.bearing,p=void 0===s?0:s,c=t.altitude;return{longitude:o,latitude:i,zoom:n,pitch:a,bearing:p,altitude:void 0===c?1.5:c}}},{key:"_checkStyleSheet",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"0.47.0";if(void 0!==ut)try{var t=ut.createElement("div");t.className="mapboxgl-map",t.style.display="none",ut.body.appendChild(t);var o="static"!==window.getComputedStyle(t).position;if(!o){var i=ut.createElement("link");i.setAttribute("rel","stylesheet"),i.setAttribute("type","text/css"),i.setAttribute("href","https://api.tiles.mapbox.com/mapbox-gl-js/v".concat(e,"/mapbox-gl.css")),ut.head.appendChild(i)}}catch(e){}}},{key:"_viewStateToMapboxProps",value:function(e){return{center:[e.longitude,e.latitude],zoom:e.zoom,bearing:e.bearing,pitch:e.pitch}}}]),e}();Q(yt,"initialized",!1),Q(yt,"propTypes",_t),Q(yt,"defaultProps",gt),Q(yt,"savedMap",null);var vt=o(6158),xt=o.n(vt);function Wt(e){return Array.isArray(e)||ArrayBuffer.isView(e)}function wt(e,t){if(e===t)return!0;if(Wt(e)&&Wt(t)){if(e.length!==t.length)return!1;for(var o=0;o0,"`scale` must be a positive number");var n=this._state,r=n.startZoom,a=n.startZoomLngLat;Number.isFinite(r)||(r=this._viewportProps.zoom,a=this._unproject(o)||this._unproject(t)),Tt(a,"`startZoomLngLat` prop is required for zoom behavior to calculate where to position the map.");var s=this._calculateNewZoom({scale:i,startZoom:r||0}),p=te(new Ce(Object.assign({},this._viewportProps,{zoom:s})).getMapCenterByLngLatPosition({lngLat:a,pos:t}),2),c=p[0],l=p[1];return this._getUpdatedMapState({zoom:s,longitude:c,latitude:l})}},{key:"zoomEnd",value:function(){return this._getUpdatedMapState({startZoomLngLat:null,startZoom:null})}},{key:"_getUpdatedMapState",value:function(t){return new e(Object.assign({},this._viewportProps,this._state,t))}},{key:"_applyConstraints",value:function(e){var t=e.maxZoom,o=e.minZoom,i=e.zoom;e.zoom=Lt(i,o,t);var n=e.maxPitch,r=e.minPitch,a=e.pitch;return e.pitch=Lt(a,r,n),Object.assign(e,function({width:e,height:t,longitude:o,latitude:i,zoom:n,pitch:r=0,bearing:a=0}){(o<-180||o>180)&&(o=se(o+180,360)-180),(a<-180||a>180)&&(a=se(a+180,360)-180);const s=ce(t/512);if(n<=s)n=s,i=0;else{const e=t/2/Math.pow(2,n),o=Le([0,e])[1];if(it&&(i=t)}}return{width:e,height:t,longitude:o,latitude:i,zoom:n,pitch:r,bearing:a}}(e)),e}},{key:"_unproject",value:function(e){var t=new Ce(this._viewportProps);return e&&t.unproject(e)}},{key:"_calculateNewLngLat",value:function(e){var t=e.startPanLngLat,o=e.pos;return new Ce(this._viewportProps).getMapCenterByLngLatPosition({lngLat:t,pos:o})}},{key:"_calculateNewZoom",value:function(e){var t=e.scale,o=e.startZoom,i=this._viewportProps,n=i.maxZoom,r=i.minZoom;return Lt(o+Math.log2(t),r,n)}},{key:"_calculateNewPitchAndBearing",value:function(e){var t=e.deltaScaleX,o=e.deltaScaleY,i=e.startBearing,n=e.startPitch;o=Lt(o,-1,1);var r=this._viewportProps,a=r.minPitch,s=r.maxPitch,p=n;return o>0?p=n+o*(s-n):o<0&&(p=n-o*(a-n)),{pitch:p,bearing:i+180*t}}},{key:"_getRotationParams",value:function(e,t){var o=e[0]-t[0],i=e[1]-t[1],n=e[1],r=t[1],a=this._viewportProps,s=a.width,p=a.height,c=o/s,l=0;return i>0?Math.abs(p-r)>5&&(l=i/(r-p)*1.2):i<0&&r>5&&(l=1-n/r),{deltaScaleX:c,deltaScaleY:l=Math.min(1,Math.max(-1,l))}}}]),e}();function Nt(e){return e[0].toLowerCase()+e.slice(1)}function Pt(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,i)}return o}function It(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:{},i=e.current&&e.current.getMap();return i&&i.queryRenderedFeatures(t,o)}}}(c)}),[]);var z=(0,n.useCallback)((function(e){var t=e.target;t===d.current&&t.scrollTo(0,0)}),[]),m=M&&n.createElement(jt,{value:Gt(Gt({},u),{},{viewport:u.viewport||$t(Gt({map:M,props:e},s)),map:M,container:u.container||b.current})},n.createElement("div",{key:"map-overlays",className:"overlays",ref:d,style:Kt,onScroll:z},e.children)),h=e.className,O=e.width,f=e.height,A=e.style,_=e.visibilityConstraints,g=Object.assign({position:"relative"},A,{width:O,height:f}),q=e.visible&&function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:St;for(var o in t){var i=o.slice(0,3),n=Nt(o.slice(3));if("min"===i&&e[n]t[o])return!1}return!0}(e.viewState||e,_),y=Object.assign({},Kt,{visibility:q?"inherit":"hidden"});return n.createElement("div",{key:"map-container",ref:b,style:g},n.createElement("div",{key:"map-mapbox",ref:l,style:y,className:h}),m,!i&&!e.disableTokenWarning&&n.createElement(eo,null))}));to.supported=function(){return xt()&&xt().supported()},to.propTypes=Jt,to.defaultProps=Qt;const oo=to;function io(e,t){var o;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(o=function(e,t){if(!e)return;if("string"==typeof e)return no(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return no(e,t)}(e))||t&&e&&"number"==typeof e.length){o&&(e=o);var i=0,n=function(){};return{s:n,n:function(){return i>=e.length?{done:!0}:{done:!1,value:e[i++]}},e:function(e){throw e},f:n}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var r,a=!0,s=!1;return{s:function(){o=e[Symbol.iterator]()},n:function(){var e=o.next();return a=e.done,e},e:function(e){s=!0,r=e},f:function(){try{a||null==o.return||o.return()}finally{if(s)throw r}}}}function no(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,i=new Array(t);o180&&(o=o<0?o+360:o-360),o}function mo(e,t){var o;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(o=function(e,t){if(!e)return;if("string"==typeof e)return ho(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return ho(e,t)}(e))||t&&e&&"number"==typeof e.length){o&&(e=o);var i=0,n=function(){};return{s:n,n:function(){return i>=e.length?{done:!0}:{done:!1,value:e[i++]}},e:function(e){throw e},f:n}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var r,a=!0,s=!1;return{s:function(){o=e[Symbol.iterator]()},n:function(){var e=o.next();return a=e.done,e},e:function(e){s=!0,r=e},f:function(){try{a||null==o.return||o.return()}finally{if(s)throw r}}}}function ho(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,i=new Array(t);o0&&void 0!==arguments[0]?arguments[0]:{};return lt(this,o),Q(ao(e=t.call(this)),"propNames",fo),e.props=Object.assign({},go,i),e}dt(o,[{key:"initializeProps",value:function(e,t){var o,i={},n={},r=mo(Ao);try{for(r.s();!(o=r.n()).done;){var a=o.value,s=e[a],p=t[a];Tt(Mo(s)&&Mo(p),"".concat(a," must be supplied for transition")),i[a]=s,n[a]=zo(a,s,p)}}catch(e){r.e(e)}finally{r.f()}var c,l=mo(_o);try{for(l.s();!(c=l.n()).done;){var b=c.value,d=e[b]||0,u=t[b]||0;i[b]=d,n[b]=zo(b,d,u)}}catch(e){l.e(e)}finally{l.f()}return{start:i,end:n}}},{key:"interpolateProps",value:function(e,t,o){var i,n=function(e,t,o,i={}){const n={},{startZoom:r,startCenterXY:a,uDelta:s,w0:p,u1:c,S:l,rho:b,rho2:d,r0:u}=Ie(e,t,i);if(c<.01){for(const i of Ne){const r=e[i],a=t[i];n[i]=(M=o)*a+(1-M)*r}return n}var M;const z=o*l,m=Math.cosh(u)/Math.cosh(u+b*z),h=p*((Math.cosh(u)*Math.tanh(u+b*z)-Math.sinh(u))/d)/c,O=r+We(1/m),f=function(e,t,o){return e[0]=t[0]*o,e[1]=t[1]*o,e}([],s,h);Me(f,f,a);const A=Le(f);return n.longitude=A[0],n.latitude=A[1],n.zoom=O,n}(e,t,o,this.props),r=mo(_o);try{for(r.s();!(i=r.n()).done;){var a=i.value;n[a]=Rt(e[a],t[a],o)}}catch(e){r.e(e)}finally{r.f()}return n}},{key:"getDuration",value:function(e,t){var o=t.transitionDuration;return"auto"===o&&(o=function(e,t,o={}){o=Object.assign({},Pe,o);const{screenSpeed:i,speed:n,maxDuration:r}=o,{S:a,rho:s}=Ie(e,t,o),p=1e3*a;let c;return c=Number.isFinite(i)?p/(i/s):p/n,Number.isFinite(r)&&c>r?0:c}(e,t,this.props)),o}}])}(ro);function qo(e,t){var o;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(o=function(e,t){if(!e)return;if("string"==typeof e)return yo(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return yo(e,t)}(e))||t&&e&&"number"==typeof e.length){o&&(e=o);var i=0,n=function(){};return{s:n,n:function(){return i>=e.length?{done:!0}:{done:!1,value:e[i++]}},e:function(e){throw e},f:n}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var r,a=!0,s=!1;return{s:function(){o=e[Symbol.iterator]()},n:function(){var e=o.next();return a=e.done,e},e:function(e){s=!0,r=e},f:function(){try{a||null==o.return||o.return()}finally{if(s)throw r}}}}function yo(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,i=new Array(t);o0&&void 0!==arguments[0]?arguments[0]:{};return lt(this,o),e=t.call(this),Array.isArray(i)&&(i={transitionProps:i}),e.propNames=i.transitionProps||xo,i.around&&(e.around=i.around),e}return dt(o,[{key:"initializeProps",value:function(e,t){var o={},i={};if(this.around){o.around=this.around;var n=new Ce(e).unproject(this.around);Object.assign(i,t,{around:new Ce(t).project(n),aroundLngLat:n})}var r,a=qo(this.propNames);try{for(a.s();!(r=a.n()).done;){var s=r.value,p=e[s],c=t[s];Tt(Mo(p)&&Mo(c),"".concat(s," must be supplied for transition")),o[s]=p,i[s]=zo(s,p,c)}}catch(e){a.e(e)}finally{a.f()}return{start:o,end:i}}},{key:"interpolateProps",value:function(e,t,o){var i,n={},r=qo(this.propNames);try{for(r.s();!(i=r.n()).done;){var a=i.value;n[a]=Rt(e[a],t[a],o)}}catch(e){r.e(e)}finally{r.f()}if(t.around){var s=te(new Ce(Object.assign({},t,n)).getMapCenterByLngLatPosition({lngLat:t.aroundLngLat,pos:Rt(e.around,t.around,o)}),2),p=s[0],c=s[1];n.longitude=p,n.latitude=c}return n}}]),o}(ro),wo=function(){};var Lo=1,Ro=2,To=3,ko=4,Bo={transitionDuration:0,transitionEasing:function(e){return e},transitionInterpolator:new Wo,transitionInterruption:Lo,onTransitionStart:wo,onTransitionInterrupt:wo,onTransitionEnd:wo},So=function(){function e(){var t=this,o=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};lt(this,e),Q(this,"_animationFrame",null),Q(this,"_onTransitionFrame",(function(){t._animationFrame=requestAnimationFrame(t._onTransitionFrame),t._updateViewport()})),this.props=null,this.onViewportChange=o.onViewportChange||wo,this.onStateChange=o.onStateChange||wo,this.time=o.getTime||Date.now}return dt(e,[{key:"getViewportInTransition",value:function(){return this._animationFrame?this.state.propsInTransition:null}},{key:"processViewportChange",value:function(e){var t=this.props;if(this.props=e,!t||this._shouldIgnoreViewportChange(t,e))return!1;if(this._isTransitionEnabled(e)){var o=Object.assign({},t),i=Object.assign({},e);if(this._isTransitionInProgress()&&(t.onTransitionInterrupt(),this.state.interruption===Ro?Object.assign(o,this.state.endProps):Object.assign(o,this.state.propsInTransition),this.state.interruption===ko)){var n=this.time(),r=(n-this.state.startTime)/this.state.duration;i.transitionDuration=this.state.duration-(n-this.state.startTime),i.transitionEasing=function(e,t){var o=e(t);return function(i){return 1/(1-o)*(e(i*(1-t)+t)-o)}}(this.state.easing,r),i.transitionInterpolator=o.transitionInterpolator}return i.onTransitionStart(),this._triggerTransition(o,i),!0}return this._isTransitionInProgress()&&(t.onTransitionInterrupt(),this._endTransition()),!1}},{key:"_isTransitionInProgress",value:function(){return Boolean(this._animationFrame)}},{key:"_isTransitionEnabled",value:function(e){var t=e.transitionDuration,o=e.transitionInterpolator;return(t>0||"auto"===t)&&Boolean(o)}},{key:"_isUpdateDueToCurrentTransition",value:function(e){return!!this.state.propsInTransition&&this.state.interpolator.arePropsEqual(e,this.state.propsInTransition)}},{key:"_shouldIgnoreViewportChange",value:function(e,t){return!e||(this._isTransitionInProgress()?this.state.interruption===To||this._isUpdateDueToCurrentTransition(t):!this._isTransitionEnabled(t)||t.transitionInterpolator.arePropsEqual(e,t))}},{key:"_triggerTransition",value:function(e,t){Tt(this._isTransitionEnabled(t)),this._animationFrame&&cancelAnimationFrame(this._animationFrame);var o=t.transitionInterpolator,i=o.getDuration?o.getDuration(e,t):t.transitionDuration;if(0!==i){var n=t.transitionInterpolator.initializeProps(e,t),r={inTransition:!0,isZooming:e.zoom!==t.zoom,isPanning:e.longitude!==t.longitude||e.latitude!==t.latitude,isRotating:e.bearing!==t.bearing||e.pitch!==t.pitch};this.state={duration:i,easing:t.transitionEasing,interpolator:t.transitionInterpolator,interruption:t.transitionInterruption,startTime:this.time(),startProps:n.start,endProps:n.end,animation:null,propsInTransition:{}},this._onTransitionFrame(),this.onStateChange(r)}}},{key:"_endTransition",value:function(){this._animationFrame&&(cancelAnimationFrame(this._animationFrame),this._animationFrame=null),this.onStateChange({inTransition:!1,isZooming:!1,isPanning:!1,isRotating:!1})}},{key:"_updateViewport",value:function(){var e=this.time(),t=this.state,o=t.startTime,i=t.duration,n=t.easing,r=t.interpolator,a=t.startProps,s=t.endProps,p=!1,c=(e-o)/i;c>=1&&(c=1,p=!0),c=n(c);var l=r.interpolateProps(a,s,c),b=new Ct(Object.assign({},this.props,l));this.state.propsInTransition=b.getViewportProps(),this.onViewportChange(this.state.propsInTransition,this.props),p&&(this._endTransition(),this.props.onTransitionEnd())}}]),e}();Q(So,"defaultProps",Bo);var Xo=o(840),Eo=o.n(Xo);const Do={mousedown:1,mousemove:2,mouseup:4};!function(e){const t=e.prototype.handler;e.prototype.handler=function(e){const o=this.store;e.button>0&&"pointerdown"===e.type&&(function(e,t){for(let o=0;ot.pointerId===e.pointerId))||o.push(e)),t.call(this,e)}}(Eo().PointerEventInput),Eo().MouseInput.prototype.handler=function(e){let t=Do[e.type];1&t&&e.button>=0&&(this.pressed=!0),2&t&&0===e.which&&(t=4),this.pressed&&(4&t&&(this.pressed=!1),this.callback(this.manager,t,{pointers:[e],changedPointers:[e],pointerType:"mouse",srcEvent:e}))};const Co=Eo().Manager,No=Eo(),Po=No?[[No.Pan,{event:"tripan",pointers:3,threshold:0,enable:!1}],[No.Rotate,{enable:!1}],[No.Pinch,{enable:!1}],[No.Swipe,{enable:!1}],[No.Pan,{threshold:0,enable:!1}],[No.Press,{enable:!1}],[No.Tap,{event:"doubletap",taps:2,enable:!1}],[No.Tap,{event:"anytap",enable:!1}],[No.Tap,{enable:!1}]]:null,Io={tripan:["rotate","pinch","pan"],rotate:["pinch"],pinch:["pan"],pan:["press","doubletap","anytap","tap"],doubletap:["anytap"],anytap:["tap"]},Yo={doubletap:["tap"]},jo={pointerdown:"pointerdown",pointermove:"pointermove",pointerup:"pointerup",touchstart:"pointerdown",touchmove:"pointermove",touchend:"pointerup",mousedown:"pointerdown",mousemove:"pointermove",mouseup:"pointerup"},Fo={KEY_EVENTS:["keydown","keyup"],MOUSE_EVENTS:["mousedown","mousemove","mouseup","mouseover","mouseout","mouseleave"],WHEEL_EVENTS:["wheel","mousewheel"]},Ho={tap:"tap",anytap:"anytap",doubletap:"doubletap",press:"press",pinch:"pinch",pinchin:"pinch",pinchout:"pinch",pinchstart:"pinch",pinchmove:"pinch",pinchend:"pinch",pinchcancel:"pinch",rotate:"rotate",rotatestart:"rotate",rotatemove:"rotate",rotateend:"rotate",rotatecancel:"rotate",tripan:"tripan",tripanstart:"tripan",tripanmove:"tripan",tripanup:"tripan",tripandown:"tripan",tripanleft:"tripan",tripanright:"tripan",tripanend:"tripan",tripancancel:"tripan",pan:"pan",panstart:"pan",panmove:"pan",panup:"pan",pandown:"pan",panleft:"pan",panright:"pan",panend:"pan",pancancel:"pan",swipe:"swipe",swipeleft:"swipe",swiperight:"swipe",swipeup:"swipe",swipedown:"swipe"},Uo={click:"tap",anyclick:"anytap",dblclick:"doubletap",mousedown:"pointerdown",mousemove:"pointermove",mouseup:"pointerup",mouseover:"pointerover",mouseout:"pointerout",mouseleave:"pointerleave"},Vo="undefined"!=typeof navigator&&navigator.userAgent?navigator.userAgent.toLowerCase():"",Go="undefined"!=typeof window?window:o.g;void 0!==o.g?o.g:window,"undefined"!=typeof document&&document;let Zo=!1;try{const e={get passive(){return Zo=!0,!0}};Go.addEventListener("test",e,e),Go.removeEventListener("test",e,e)}catch(e){}const $o=-1!==Vo.indexOf("firefox"),{WHEEL_EVENTS:Ko}=Fo,Jo="wheel",Qo=4.000244140625;class ei{constructor(e,t,o={}){this.element=e,this.callback=t,this.options=Object.assign({enable:!0},o),this.events=Ko.concat(o.events||[]),this.handleEvent=this.handleEvent.bind(this),this.events.forEach((t=>e.addEventListener(t,this.handleEvent,!!Zo&&{passive:!1})))}destroy(){this.events.forEach((e=>this.element.removeEventListener(e,this.handleEvent)))}enableEventType(e,t){e===Jo&&(this.options.enable=t)}handleEvent(e){if(!this.options.enable)return;let t=e.deltaY;Go.WheelEvent&&($o&&e.deltaMode===Go.WheelEvent.DOM_DELTA_PIXEL&&(t/=Go.devicePixelRatio),e.deltaMode===Go.WheelEvent.DOM_DELTA_LINE&&(t*=40));const o={x:e.clientX,y:e.clientY};0!==t&&t%Qo==0&&(t=Math.floor(t/Qo)),e.shiftKey&&t&&(t*=.25),this._onWheel(e,-t,o)}_onWheel(e,t,o){this.callback({type:Jo,center:o,delta:t,srcEvent:e,pointerType:"mouse",target:e.target})}}const{MOUSE_EVENTS:ti}=Fo,oi="pointermove",ii="pointerover",ni="pointerout",ri="pointerleave";class ai{constructor(e,t,o={}){this.element=e,this.callback=t,this.pressed=!1,this.options=Object.assign({enable:!0},o),this.enableMoveEvent=this.options.enable,this.enableLeaveEvent=this.options.enable,this.enableOutEvent=this.options.enable,this.enableOverEvent=this.options.enable,this.events=ti.concat(o.events||[]),this.handleEvent=this.handleEvent.bind(this),this.events.forEach((t=>e.addEventListener(t,this.handleEvent)))}destroy(){this.events.forEach((e=>this.element.removeEventListener(e,this.handleEvent)))}enableEventType(e,t){e===oi&&(this.enableMoveEvent=t),e===ii&&(this.enableOverEvent=t),e===ni&&(this.enableOutEvent=t),e===ri&&(this.enableLeaveEvent=t)}handleEvent(e){this.handleOverEvent(e),this.handleOutEvent(e),this.handleLeaveEvent(e),this.handleMoveEvent(e)}handleOverEvent(e){this.enableOverEvent&&"mouseover"===e.type&&this.callback({type:ii,srcEvent:e,pointerType:"mouse",target:e.target})}handleOutEvent(e){this.enableOutEvent&&"mouseout"===e.type&&this.callback({type:ni,srcEvent:e,pointerType:"mouse",target:e.target})}handleLeaveEvent(e){this.enableLeaveEvent&&"mouseleave"===e.type&&this.callback({type:ri,srcEvent:e,pointerType:"mouse",target:e.target})}handleMoveEvent(e){if(this.enableMoveEvent)switch(e.type){case"mousedown":e.button>=0&&(this.pressed=!0);break;case"mousemove":0===e.which&&(this.pressed=!1),this.pressed||this.callback({type:oi,srcEvent:e,pointerType:"mouse",target:e.target});break;case"mouseup":this.pressed=!1}}}const{KEY_EVENTS:si}=Fo,pi="keydown",ci="keyup";class li{constructor(e,t,o={}){this.element=e,this.callback=t,this.options=Object.assign({enable:!0},o),this.enableDownEvent=this.options.enable,this.enableUpEvent=this.options.enable,this.events=si.concat(o.events||[]),this.handleEvent=this.handleEvent.bind(this),e.tabIndex=o.tabIndex||0,e.style.outline="none",this.events.forEach((t=>e.addEventListener(t,this.handleEvent)))}destroy(){this.events.forEach((e=>this.element.removeEventListener(e,this.handleEvent)))}enableEventType(e,t){e===pi&&(this.enableDownEvent=t),e===ci&&(this.enableUpEvent=t)}handleEvent(e){const t=e.target||e.srcElement;"INPUT"===t.tagName&&"text"===t.type||"TEXTAREA"===t.tagName||(this.enableDownEvent&&"keydown"===e.type&&this.callback({type:pi,srcEvent:e,key:e.key,target:e.target}),this.enableUpEvent&&"keyup"===e.type&&this.callback({type:ci,srcEvent:e,key:e.key,target:e.target}))}}const bi="contextmenu";class di{constructor(e,t,o={}){this.element=e,this.callback=t,this.options=Object.assign({enable:!0},o),this.handleEvent=this.handleEvent.bind(this),e.addEventListener("contextmenu",this.handleEvent)}destroy(){this.element.removeEventListener("contextmenu",this.handleEvent)}enableEventType(e,t){e===bi&&(this.options.enable=t)}handleEvent(e){this.options.enable&&this.callback({type:bi,center:{x:e.clientX,y:e.clientY},srcEvent:e,pointerType:"mouse",target:e.target})}}const ui={pointerdown:1,pointermove:2,pointerup:4,mousedown:1,mousemove:2,mouseup:4};const Mi={srcElement:"root",priority:0};class zi{constructor(e){this.eventManager=e,this.handlers=[],this.handlersByElement=new Map,this.handleEvent=this.handleEvent.bind(this),this._active=!1}isEmpty(){return!this._active}add(e,t,o,i=!1,n=!1){const{handlers:r,handlersByElement:a}=this;o&&("object"!=typeof o||o.addEventListener)&&(o={srcElement:o}),o=o?Object.assign({},Mi,o):Mi;let s=a.get(o.srcElement);s||(s=[],a.set(o.srcElement,s));const p={type:e,handler:t,srcElement:o.srcElement,priority:o.priority};i&&(p.once=!0),n&&(p.passive=!0),r.push(p),this._active=this._active||!p.passive;let c=s.length-1;for(;c>=0&&!(s[c].priority>=p.priority);)c--;s.splice(c+1,0,p)}remove(e,t){const{handlers:o,handlersByElement:i}=this;for(let n=o.length-1;n>=0;n--){const r=o[n];if(r.type===e&&r.handler===t){o.splice(n,1);const e=i.get(r.srcElement);e.splice(e.indexOf(r),1),0===e.length&&i.delete(r.srcElement)}}this._active=o.some((e=>!e.passive))}handleEvent(e){if(this.isEmpty())return;const t=this._normalizeEvent(e);let o=e.srcEvent.target;for(;o&&o!==t.rootElement;){if(this._emit(t,o),t.handled)return;o=o.parentNode}this._emit(t,"root")}_emit(e,t){const o=this.handlersByElement.get(t);if(o){let t=!1;const i=()=>{e.handled=!0},n=()=>{e.handled=!0,t=!0},r=[];for(let a=0;a{const t=this.manager.get(e);t&&Io[e].forEach((e=>{t.recognizeWith(e)}))}));for(const e in t.recognizerOptions){const o=this.manager.get(e);if(o){const i=t.recognizerOptions[e];delete i.enable,o.set(i)}}this.wheelInput=new ei(e,this._onOtherEvent,{enable:!1}),this.moveInput=new ai(e,this._onOtherEvent,{enable:!1}),this.keyInput=new li(e,this._onOtherEvent,{enable:!1,tabIndex:t.tabIndex}),this.contextmenuInput=new di(e,this._onOtherEvent,{enable:!1});for(const[e,t]of this.events)t.isEmpty()||(this._toggleRecognizer(t.recognizerName,!0),this.manager.on(e,t.handleEvent))}destroy(){this.element&&(this.wheelInput.destroy(),this.moveInput.destroy(),this.keyInput.destroy(),this.contextmenuInput.destroy(),this.manager.destroy(),this.wheelInput=null,this.moveInput=null,this.keyInput=null,this.contextmenuInput=null,this.manager=null,this.element=null)}on(e,t,o){this._addEventHandler(e,t,o,!1)}once(e,t,o){this._addEventHandler(e,t,o,!0)}watch(e,t,o){this._addEventHandler(e,t,o,!1,!0)}off(e,t){this._removeEventHandler(e,t)}_toggleRecognizer(e,t){const{manager:o}=this;if(!o)return;const i=o.get(e);if(i&&i.options.enable!==t){i.set({enable:t});const n=Yo[e];n&&!this.options.recognizers&&n.forEach((n=>{const r=o.get(n);t?(r.requireFailure(e),i.dropRequireFailure(n)):r.dropRequireFailure(e)}))}this.wheelInput.enableEventType(e,t),this.moveInput.enableEventType(e,t),this.keyInput.enableEventType(e,t),this.contextmenuInput.enableEventType(e,t)}_addEventHandler(e,t,o,i,n){if("string"!=typeof e){o=t;for(const t in e)this._addEventHandler(t,e[t],o,i,n);return}const{manager:r,events:a}=this,s=Uo[e]||e;let p=a.get(s);p||(p=new zi(this),a.set(s,p),p.recognizerName=Ho[s]||s,r&&r.on(s,p.handleEvent)),p.add(e,t,o,i,n),p.isEmpty()||this._toggleRecognizer(p.recognizerName,!0)}_removeEventHandler(e,t){if("string"!=typeof e){for(const t in e)this._removeEventHandler(t,e[t]);return}const{events:o}=this,i=Uo[e]||e,n=o.get(i);if(n&&(n.remove(e,t),n.isEmpty())){const{recognizerName:e}=n;let t=!1;for(const i of o.values())if(i.recognizerName===e&&!i.isEmpty()){t=!0;break}t||this._toggleRecognizer(e,!1)}}_onBasicInput(e){const{srcEvent:t}=e,o=jo[t.type];o&&this.manager.emit(o,e)}_onOtherEvent(e){this.manager.emit(e.type,e)}}function Oi(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,i)}return o}function fi(e){for(var t=1;t0),a=r&&!this.state.isHovering,s=!r&&this.state.isHovering;(i||a)&&(e.features=t,i&&i(e)),a&&Di.call(this,"onMouseEnter",e),s&&Di.call(this,"onMouseLeave",e),(a||s)&&this.setState({isHovering:r})}}function Ii(e){var t=this.props,o=t.onClick,i=t.onNativeClick,n=t.onDblClick,r=t.doubleClickZoom,a=[],s=n||r;switch(e.type){case"anyclick":a.push(i),s||a.push(o);break;case"click":s&&a.push(o)}(a=a.filter(Boolean)).length&&((e=Xi.call(this,e)).features=Ei.call(this,e.point),a.forEach((function(t){return t(e)})))}var Yi=(0,n.forwardRef)((function(e,t){var o=(0,n.useContext)(Ft),i=(0,n.useMemo)((function(){return e.controller||new Ri}),[]),r=(0,n.useMemo)((function(){return new hi(null,{touchAction:e.touchAction,recognizerOptions:e.eventRecognizerOptions})}),[]),a=(0,n.useRef)(null),s=(0,n.useRef)(null),p=(0,n.useRef)({width:0,height:0,state:{isHovering:!1,isDragging:!1}}).current;p.props=e,p.map=s.current&&s.current.getMap(),p.setState=function(t){p.state=ki(ki({},p.state),t),a.current.style.cursor=e.getCursor(p.state)};var c,l,b=!0,d=function(e,t,o){if(b)c=[e,t,o];else{var i=p.props,n=i.onViewStateChange,r=i.onViewportChange;Object.defineProperty(e,"position",{get:function(){return[0,0,Ut(p.map,e)]}}),n&&n({viewState:e,interactionState:t,oldViewState:o}),r&&r(e,t,o)}};(0,n.useImperativeHandle)(t,(function(){return function(e){return{getMap:e.current&&e.current.getMap,queryRenderedFeatures:e.current&&e.current.queryRenderedFeatures}}(s)}),[]);var u=(0,n.useMemo)((function(){return ki(ki({},o),{},{eventManager:r,container:o.container||a.current})}),[o,a.current]);u.onViewportChange=d,u.viewport=o.viewport||$t(p),p.viewport=u.viewport;var M=function(e){var t=e.isDragging,o=void 0!==t&&t;if(o!==p.state.isDragging&&p.setState({isDragging:o}),b)l=e;else{var i=p.props.onInteractionStateChange;i&&i(e)}},z=function(){p.width&&p.height&&i.setOptions(ki(ki(ki({},p.props),p.props.viewState),{},{isInteractive:Boolean(p.props.onViewStateChange||p.props.onViewportChange),onViewportChange:d,onStateChange:M,eventManager:r,width:p.width,height:p.height}))};(0,n.useEffect)((function(){return r.setElement(a.current),r.on({pointerdown:Ci.bind(p),pointermove:Pi.bind(p),pointerup:Ni.bind(p),pointerleave:Di.bind(p,"onMouseOut"),click:Ii.bind(p),anyclick:Ii.bind(p),dblclick:Di.bind(p,"onDblClick"),wheel:Di.bind(p,"onWheel"),contextmenu:Di.bind(p,"onContextMenu")}),function(){r.destroy()}}),[]),Ht((function(){c&&d.apply(void 0,J(c)),l&&M(l)})),z();var m=e.width,h=e.height,O=e.style,f=e.getCursor,A=(0,n.useMemo)((function(){return ki(ki({position:"relative"},O),{},{width:m,height:h,cursor:f(p.state)})}),[O,m,h,f,p.state]);return c&&p._child||(p._child=n.createElement(jt,{value:u},n.createElement("div",{key:"event-canvas",ref:a,style:A},n.createElement(oo,Z({},e,{width:"100%",height:"100%",style:null,onResize:function(e){var t=e.width,o=e.height;p.width=t,p.height=o,z(),p.props.onResize({width:t,height:o})},ref:s}))))),b=!1,p._child}));Yi.supported=oo.supported,Yi.propTypes=Bi,Yi.defaultProps=Si;const ji=Yi;function Fi(e,t){if(e===t)return!0;if(!e||!t)return!1;if(Array.isArray(e)){if(!Array.isArray(t)||e.length!==t.length)return!1;for(var o=0;o prop: ".concat(i));else e.setCoordinates(t.coordinates)}}(s,e,o.current):s=Gi(a,r,e),o.current=e,s&&n.Children.map(e.children,(function(e){return e&&(0,n.cloneElement)(e,{source:r})}))||null}Zi.propTypes=Ui;function $i(e,t){if(null==e)return{};var o,i,n=function(e,t){if(null==e)return{};var o,i,n={},r=Object.keys(e);for(i=0;i=0||(n[o]=e[o]);return n}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}function Ki(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,i)}return o}function Ji(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:{},t=(0,n.useContext)(Ft),o=(0,n.useRef)(null),i=(0,n.useRef)({props:e,state:{},context:t,containerRef:o}),r=i.current;return r.props=e,r.context=t,(0,n.useEffect)((function(){return an(r)}),[t.eventManager]),r}function pn(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var o,i=bo(e);if(t){var n=bo(this).constructor;o=Reflect.construct(i,arguments,n)}else o=i.apply(this,arguments);return lo(this,o)}}function cn(e){var t=e.instance,o=sn(e),i=o.context,n=o.containerRef;return t._context=i,t._containerRef=n,t._render()}var ln=function(e){po(o,e);var t=pn(o);function o(){var e;lt(this,o);for(var i=arguments.length,r=new Array(i),a=0;a2&&void 0!==arguments[2]?arguments[2]:"x";if(null===e)return t;var i="x"===o?e.offsetWidth:e.offsetHeight;return An(t/100*i)/i*100};function gn(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,i)}return o}var qn=Object.assign({},un,{className:ee.string,longitude:ee.number.isRequired,latitude:ee.number.isRequired,style:ee.object}),yn=Object.assign({},Mn,{className:""});function vn(e){var t=function(e){var t=te((0,n.useState)(null),2),o=t[0],i=t[1],r=te((0,n.useState)(null),2),a=r[0],s=r[1],p=sn(dn(dn({},e),{},{onDragStart:hn}));return p.callbacks=e,p.state.dragPos=o,p.state.setDragPos=i,p.state.dragOffset=a,p.state.setDragOffset=s,(0,n.useEffect)((function(){return On(p)}),[p.context.eventManager,Boolean(o)]),p}(e),o=t.state,i=t.containerRef,r=e.children,a=e.className,s=e.draggable,p=e.style,c=o.dragPos,l=function(e){var t=e.props,o=e.state,i=e.context,n=t.longitude,r=t.latitude,a=t.offsetLeft,s=t.offsetTop,p=o.dragPos,c=o.dragOffset,l=i.viewport,b=i.map;if(p&&c)return[p[0]+c[0],p[1]+c[1]];var d=Ut(b,{longitude:n,latitude:r}),u=te(l.project([n,r,d]),2),M=u[0],z=u[1];return[M+=a,z+=s]}(t),b=te(l,2),d=b[0],u=b[1],M="translate(".concat(An(d),"px, ").concat(An(u),"px)"),z=s?c?"grabbing":"grab":"auto",m=(0,n.useMemo)((function(){var e=function(e){for(var t=1;t0){var m=d,h=z;for(d=0;d<=1;d+=.5)M=(u=o-d*a)+a,(z=Math.max(0,c-u)+Math.max(0,M-n+c))0){var g=b,q=_;for(b=0;b<=1;b+=O)A=(f=t-b*r)+r,(_=Math.max(0,c-f)+Math.max(0,A-i+c))1||p<-1||a<0||a>t.width||s<0||s>t.height?h.display="none":h.zIndex=Math.floor((1-p)/2*1e5),h):h}(e,s,r.current,m,h),f=(0,n.useCallback)((function(e){o.props.onClose();var t=o.context.eventManager;t&&t.once("click",(function(e){return e.stopPropagation()}),e.target)}),[]);return n.createElement("div",{className:"mapboxgl-popup mapboxgl-popup-anchor-".concat(h," ").concat(c),style:O,ref:r},n.createElement("div",{key:"tip",className:"mapboxgl-popup-tip",style:{borderWidth:d}}),n.createElement("div",{key:"content",ref:t,className:"mapboxgl-popup-content"},u&&n.createElement("button",{key:"close-button",className:"mapboxgl-popup-close-button",type:"button",onClick:f},"×"),M))}kn.propTypes=Ln,kn.defaultProps=Rn;const Bn=n.memo(kn);function Sn(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,i)}return o}var Xn=Object.assign({},rn,{toggleLabel:ee.string,className:ee.string,style:ee.object,compact:ee.bool,customAttribution:ee.oneOfType([ee.string,ee.arrayOf(ee.string)])}),En=Object.assign({},nn,{className:"",toggleLabel:"Toggle Attribution"});function Dn(e){var t=sn(e),o=t.context,i=t.containerRef,r=(0,n.useRef)(null),a=te((0,n.useState)(!1),2),s=a[0],p=a[1];(0,n.useEffect)((function(){var t;return o.map&&(t=function(e,t,o,i){var n=new(xt().AttributionControl)(e);return n._map=t,n._container=o,n._innerContainer=i,n._updateAttributions(),n._updateEditLink(),t.on("styledata",n._updateData),t.on("sourcedata",n._updateData),n}({customAttribution:e.customAttribution},o.map,i.current,r.current)),function(){return t&&function(e){e._map.off("styledata",e._updateData),e._map.off("sourcedata",e._updateData)}(t)}}),[o.map]);var c=void 0===e.compact?o.viewport.width<=640:e.compact;(0,n.useEffect)((function(){!c&&s&&p(!1)}),[c]);var l=(0,n.useCallback)((function(){return p((function(e){return!e}))}),[]),b=(0,n.useMemo)((function(){return function(e){for(var t=1;ta)return 1}return 0}(e,"1.6.0")>=0?2:1}function er(e,t,o){var i=e.viewport,n=new Ct(Object.assign({},i,o)),r=Object.assign({},n.getViewportProps(),_i),a=t.onViewportChange||e.onViewportChange||$n;(t.onViewStateChange||e.onViewStateChange||$n)({viewState:r}),a(r)}function tr(e,t,o,i){return n.createElement("button",{key:e,className:"mapboxgl-ctrl-icon mapboxgl-ctrl-".concat(e),type:"button",title:t,onClick:o},i||n.createElement("span",{className:"mapboxgl-ctrl-icon","aria-hidden":"true"}))}function or(e){var t=sn(e),o=t.context,i=t.containerRef,r=e.className,a=e.showCompass,s=e.showZoom,p=e.zoomInLabel,c=e.zoomOutLabel,l=e.compassLabel,b=(0,n.useMemo)((function(){return function(e){for(var t=1;t{const e=()=>{const{width:e,height:t}=h.current.getBoundingClientRect();e&&t&&m({width:e-2,height:t-2})};return e(),window.addEventListener("resize",e),()=>{window.removeEventListener("resize",e)}}),[]),(0,n.useEffect)((()=>(o.input?.meeting||document.body.classList.add("tsml-ui-map"),()=>{document.body.classList.remove("tsml-ui-map")})),[o.input?.meeting]),(0,n.useEffect)((()=>{const t={},i={};e.forEach((e=>{const n=o.meetings[e];if(n?.latitude&&n?.longitude&&n?.isInPerson){const e=n.latitude+","+n.longitude;t.hasOwnProperty(e)||(t[e]={directions_url:M(n),formatted_address:n.formatted_address,latitude:n.latitude,longitude:n.longitude,meetings:[],name:n.location}),(!i.north||n.latitude>i.north)&&(i.north=n.latitude),(!i.south||n.latitudei.east)&&(i.east=n.longitude),(!i.west||n.longitudet[o].latitude-t[e].latitude));u({bounds:i,locations:t,locationKeys:n}),1===n.length&&s(n[0])}),[e]),(0,n.useEffect)((()=>{z&&b.bounds&&l(b.bounds.west===b.bounds.east?Or(Or({},z),{},{latitude:b.bounds.north,longitude:b.bounds.west,zoom:14}):new Ce(z).fitBounds([[b.bounds.west,b.bounds.south],[b.bounds.east,b.bounds.north]],{padding:Math.min(z.width,z.height)/10}))}),[b,z]),(0,f.jsx)("div",{className:"border rounded bg-light flex-grow-1 map",ref:h,children:p&&!!b.locationKeys.length&&(0,f.jsxs)(ji,Or(Or({mapStyle:c.map.style,mapboxApiAccessToken:r,onViewportChange:l},p),{},{children:[b.locationKeys.map((e=>(0,f.jsxs)("div",{children:[(0,f.jsx)(xn,{latitude:b.locations[e].latitude,longitude:b.locations[e].longitude,offsetLeft:-c.map.markers.location.width/2,offsetTop:-c.map.markers.location.height,children:(0,f.jsx)("div",{"data-testid":e,onClick:()=>s(e),style:c.map.markers.location,title:b.locations[e].name})}),a===e&&(0,f.jsx)(Bn,{captureScroll:!0,closeOnClick:!1,latitude:b.locations[e].latitude,longitude:b.locations[e].longitude,offsetTop:-c.map.markers.location.height,onClose:()=>s(null),children:(0,f.jsxs)("div",{className:"d-grid gap-2",children:[(0,f.jsx)("h4",{className:"fw-light",children:b.locations[e].name}),(0,f.jsx)("p",{children:b.locations[e].formatted_address}),t&&(0,f.jsx)("div",{className:"list-group mb-1",children:b.locations[e].meetings.sort(((e,t)=>e.start.isAfter(t.start))).map(((e,t)=>(0,f.jsxs)("div",{className:"list-group-item",children:[(0,f.jsxs)("time",{className:"d-block",children:[e.start.format("h:mm a"),(0,f.jsx)("span",{className:"ms-1",children:d[c.weekdays[e.start.format("d")]]})]}),(0,f.jsx)(V,{meeting:e,setState:i,state:o})]},t)))}),b.locations[e].directions_url&&(0,f.jsx)(g,{className:"in-person",href:b.locations[e].directions_url,icon:"geo",text:d.get_directions})]})})]},e))),(0,f.jsx)(ir,{className:"d-none d-md-block",onViewportChange:l,showCompass:!1,style:{top:10,right:10}})]}))})}function _r(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,i)}return o}function gr(e){for(var t=1;t{const e=document.getElementById("tsml-ui");if(e){const t=Math.max(0,...[...document.body.getElementsByTagName("*")].filter((e=>"fixed"===getComputedStyle(e,null).getPropertyValue("position")&&e.offsetTop<100)).map((e=>e.offsetTop+e.offsetHeight)));t&&(e.style.scrollMarginTop=`${t}px`),e.scrollIntoView()}return p.edit_url&&(console.log(`TSML UI edit ${p.name}: ${p.edit_url}`),Wr(p.edit_url)),()=>{Wr()}}),[e.input.meeting]),(0,n.useEffect)((()=>(document.body.classList.add("tsml-ui-meeting"),()=>{document.body.classList.remove("tsml-ui-meeting")})),[]);const l=p.isInPerson?M(p):void 0;document.title=p.name;const b=p.start?`${d[c.weekdays[p.start.format("d")]]} ${p.start.format("h:mm a")}${p.end?` – ${p.end.format("h:mm a")}`:""}`:d.appointment;!p.feedback_url&&i.length&&(p.feedback_url=h(c.feedback_emails,p));const z=[];p.email&&z.push({href:`mailto:${p.email}`,icon:"email",text:p.email}),p.website&&z.push({href:p.website,target:"_blank",icon:"link",text:new URL(p.website).host.replace("www.","")}),p.phone&&z.push({href:p.phone,icon:"phone",text:p.phone}),p.venmo&&z.push({href:`https://venmo.com/${p.venmo.substr(1)}`,icon:"cash",text:d.contribute_with.replace("%service%","Venmo")}),p.square&&z.push({href:`https://cash.app/${p.square}`,icon:"cash",text:d.contribute_with.replace("%service%","Cash App")}),p.paypal&&z.push({href:p.paypal,icon:"cash",text:d.contribute_with.replace("%service%","PayPal")});const O=c.weekdays.map(((t,o)=>({name:d[t],meetings:Object.values(e.meetings).filter((e=>e.start?.day()===o)).filter((e=>p.isInPerson&&e.isInPerson&&e.formatted_address===p.formatted_address)).sort(((e,t)=>e.start-t.start))}))).filter((e=>e.meetings.length));1===O.length&&1===O[0].meetings.length&&O.splice(0,1);const A=c.weekdays.map(((t,o)=>({name:d[t],meetings:Object.values(e.meetings).filter((e=>e.start?.day()===o)).filter((e=>p.group&&(e.isOnline||e.isInPerson)&&e.group===p.group)).sort(((e,t)=>e.start-t.start))}))).filter((e=>e.meetings.length));return 1===A.length&&1===A[0].meetings.length&&A.splice(0,1),(0,f.jsxs)("div",{className:r("d-flex flex-column flex-grow-1 meeting",{"in-person":p.isInPerson,inactive:!p.isActive,online:p.isOnline}),children:[(0,f.jsx)("h1",{className:"fw-light mb-1",children:(0,f.jsx)(V,{meeting:p})}),(0,f.jsxs)("div",{className:"align-items-center border-bottom d-flex h6 mb-3 pb-2",children:[(0,f.jsx)(_,{icon:"back"}),(0,f.jsx)("a",{href:m(gr(gr({},e.input),{},{meeting:null})),onClick:o=>{o.preventDefault(),t(gr(gr({},e),{},{input:gr(gr({},e.input),{},{meeting:null})}))},children:d.back_to_meetings})]}),(0,f.jsxs)("div",{className:"flex-grow-1 row",children:[(0,f.jsxs)("div",{className:"align-content-start col-md-4 d-grid gap-3 mb-3 mb-md-0",children:[l&&(0,f.jsx)(g,{className:"in-person",href:l,icon:"geo",text:d.get_directions}),(0,f.jsxs)("div",{className:"list-group",children:[(0,f.jsxs)("div",{className:"d-grid gap-2 list-group-item py-3",children:[(0,f.jsx)("h2",{className:"h5",children:d.meeting_information}),(0,f.jsx)("p",{children:b}),e.capabilities.type&&p.types&&(0,f.jsx)("ul",{className:"ms-4",children:p.types.filter((e=>"active"!==e)).sort(((e,t)=>d.types[e].localeCompare(d.types[t]))).map(((e,t)=>(0,f.jsx)("li",{className:"m-0",children:d.type_descriptions?.[e]?(0,f.jsxs)("button",{className:"d-flex flex-column bg-transparent border-0 p-0 text-start text-reset",onClick:()=>s(a===e?null:e),children:[(0,f.jsxs)("div",{className:"d-flex align-items-center gap-2",children:[(0,f.jsx)("span",{children:d.types[e]}),(0,f.jsx)(_,{icon:"info",size:13,className:a===e?"text-muted":void 0})]}),a===e&&(0,f.jsx)("small",{className:"d-block mb-2",children:d.type_descriptions[e]})]}):d.types[e]},t)))}),p.notes&&(0,f.jsx)(vr,{text:p.notes}),(p.isActive||!p.group&&!!z.length)&&(0,f.jsxs)("div",{className:"d-grid gap-3 mt-2",children:[p.conference_provider&&(0,f.jsxs)("div",{className:"d-grid gap-1",children:[(0,f.jsx)(g,{className:"online",href:p.conference_url,icon:"camera",text:p.conference_provider}),p.conference_url_notes&&(0,f.jsx)(vr,{className:"d-block text-muted",text:p.conference_url_notes})]}),p.conference_phone&&(0,f.jsxs)("div",{className:"d-grid gap-1",children:[(0,f.jsx)(g,{className:"online",href:`tel:${p.conference_phone}`,icon:"phone",text:d.phone}),p.conference_phone_notes&&(0,f.jsx)(vr,{className:"d-block text-muted",text:p.conference_phone_notes})]}),p.start&&p.isActive&&(0,f.jsx)(g,{onClick:()=>function(e){var t;const o="YYYYMMDDTHHmmss";if(!e.start)return;e.end||(e.end=e.start.clone().add(1,"hour")),e.start.isBefore()&&(e.start.add(1,"week"),e.end.add(1,"week"));const i=[`SUMMARY:${e.name}`,`DTSTAMP:${e.start.clone().tz("UTC").format(o)}Z`,`DTSTART;TZID=${e.timezone}:${e.start.format(o)}`,`DTEND;TZID=${e.timezone}:${e.end.format(o)}`],n=[];e.notes&&n.push(e.notes),e.isInPerson&&(i.push(`LOCATION:${e.location}\n${e.formatted_address}`),e.location_notes&&n.push(e.location_notes)),e.isOnline&&(e.conference_provider&&(e.conference_url_notes&&n.push(e.conference_url_notes),n.push("----( Video Call )----",e.conference_url,"---===---")),e.conference_phone&&(n.push(e.conference_phone),e.conference_phone_notes&&n.push(e.conference_phone_notes))),n.length&&i.push(`DESCRIPTION:${n.join("\n")}`),e.website&&i.push(`URL:${e.website}`);const r=["BEGIN:VCALENDAR","VERSION:2.0","BEGIN:VEVENT",...i.map((e=>e.replaceAll("\n","\\n").replaceAll(",","\\,"))),"END:VEVENT","END:VCALENDAR"].join("\n");if(u()){const e=`data:text/calendar;charset=utf8,${r}`;window.location=encodeURI(e)}else{const o=window.URL.createObjectURL(new Blob([r])),i=document.createElement("a");i.href=o,i.setAttribute("download",`${e.name}.ics`),document.body.appendChild(i),i.click(),null===(t=i.parentNode)||void 0===t||t.removeChild(i)}}(p),icon:"calendar",text:d.add_to_calendar}),!p.group&&z.map(((e,t)=>(0,n.createElement)(g,gr(gr({},e),{},{key:t}))))]})]}),!p.approximate&&(0,f.jsxs)("div",{className:r({"text-decoration-line-through text-muted":p.isTempClosed},"d-grid gap-2 list-group-item py-3 location"),children:[p.location&&(0,f.jsx)("h2",{className:"h5",children:p.location}),p.formatted_address&&(0,f.jsx)("p",{children:p.formatted_address}),p.regions&&(0,f.jsx)("p",{children:p.regions.join(" > ")}),p.location_notes&&(0,f.jsx)(vr,{text:p.location_notes}),(0,f.jsx)("div",{className:"meetings d-grid gap-2",children:xr(O,p.slug,e,t)})]}),p.group&&(p.district||p.group_notes||!!A.length||!!z.length)&&(0,f.jsxs)("div",{className:"d-grid gap-2 list-group-item py-3 group",children:[(0,f.jsx)("h2",{className:"h5",children:p.group}),p.district&&(0,f.jsx)("p",{children:p.district}),p.group_notes&&(0,f.jsx)(vr,{text:p.group_notes}),!!z.length&&(0,f.jsx)("div",{className:"d-grid gap-3 mt-2",children:z.map(((e,t)=>(0,n.createElement)(g,gr(gr({},e),{},{key:t}))))}),(0,f.jsx)("div",{className:"meetings d-grid gap-2",children:xr(A,p.slug,e,t)})]}),p.updated&&(0,f.jsx)("div",{className:"list-group-item",children:d.updated.replace("%updated%",p.updated)})]}),p.feedback_url&&(0,f.jsx)(g,{href:p.feedback_url,icon:"edit",text:d.feedback})]}),!!o&&(0,f.jsx)("div",{className:r({"d-md-block d-none":!p.isInPerson},"col-md-8"),children:(0,f.jsx)(Ar,{filteredSlugs:[p.slug],listMeetingsInPopup:!1,state:e,setState:t,mapbox:o})})]})]})}function vr({text:e,className:t}){return(0,f.jsx)("div",{className:t,children:e.split("\n").filter((e=>e)).map(((e,t)=>(0,f.jsx)("p",{children:e},t)))})}function xr(e,t,o,i){return e.map((({meetings:e,name:n},r)=>(0,f.jsxs)("div",{children:[(0,f.jsx)("h3",{className:"h6 mb-1 mt-2",children:n}),(0,f.jsx)("ol",{className:"list-unstyled",children:e.map(((e,n)=>(0,f.jsxs)("li",{className:"d-flex flex-row gap-2 justify-content-between m-0",children:[(0,f.jsx)("div",{className:"text-muted text-nowrap",children:e.start.format("h:mm a")}),(0,f.jsx)("div",{className:"flex-grow-1",children:e.slug===t?(0,f.jsx)(V,{meeting:e}):(0,f.jsx)(V,{meeting:e,setState:i,state:o})}),(0,f.jsxs)("div",{className:"align-items-start d-flex gap-1 justify-content-end pt-1",children:[e.isInPerson&&(0,f.jsx)("small",{className:"align-items-center d-flex flex-row float-end gap-2 px-2 py-1 rounded text-sm in-person",children:(0,f.jsx)(_,{icon:"geo",size:13})}),e.isOnline&&(0,f.jsxs)("small",{className:"align-items-center d-flex flex-row float-end gap-2 px-2 py-1 rounded text-sm online",children:[e.conference_provider&&(0,f.jsx)(_,{icon:"camera",size:13}),e.conference_phone&&(0,f.jsx)(_,{icon:"phone",size:13})]})]})]},n)))})]},r)))}function Wr(e){const t=document.getElementById("wp-admin-bar-root-default");if(!t)return;const o=document.getElementById("wp-admin-bar-edit-meeting");if(e){const o=document.createElement("a");o.setAttribute("class","ab-item"),o.setAttribute("href",e),o.appendChild(document.createTextNode("Edit Meeting"));const i=document.createElement("li");i.setAttribute("id","wp-admin-bar-edit-meeting"),i.appendChild(o),t.appendChild(i)}else o&&o.parentNode.removeChild(o)}var wr=o(246),Lr=o.n(wr);function Rr(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,i)}return o}function Tr(e){for(var t=1;t(document.body.classList.add("tsml-ui-table"),()=>{document.body.classList.remove("tsml-ui-table")})),[]);const O=c.columns.filter((e=>s.includes(e))).filter((e=>h||"region"!==e)).filter((e=>z||"distance"!==e)).filter((e=>m||!["location","location_group"].includes(e))),A=(o,i)=>{if("address"===i){const e=[];return o.isInPerson&&e.push({className:"in-person",href:a?M(o):void 0,icon:"geo",text:o.address}),o.conference_provider&&e.push({className:"online",href:a?o.conference_url:void 0,icon:"camera",text:o.conference_provider}),o.conference_phone&&e.push({className:"online",href:a?`tel:${o.conference_phone}`:void 0,icon:"phone",text:d.phone}),o.isInPerson||o.isOnline||e.push({className:"inactive",icon:"close",text:d.types.inactive}),(0,f.jsx)("div",{className:"d-flex flex-wrap gap-1",children:e.map(((e,t)=>(0,f.jsx)(g,Tr({small:!0},e),t)))})}return"distance"===i&&o.distance?(0,f.jsxs)(f.Fragment,{children:[o.distance,(0,f.jsx)("small",{className:"ms-1 text-muted",children:c.distance_unit})]}):"location"===i?o.location:"location_group"===i?o.isInPerson?o.location:o.group:"name"===i&&o.slug?(0,f.jsx)(V,{meeting:o,state:e,setState:t}):"region"===i&&o.regions?o.regions[o.regions.length-1]:"time"===i?o.start?(0,f.jsxs)("time",{className:"d-flex flex-column flex-lg-row gap-lg-1",children:[(0,f.jsx)("span",{className:"text-nowrap",children:o.start.format("h:mm a")}),(0,f.jsx)("span",{className:"text-nowrap",children:d[c.weekdays[o.start?.format("d")]]})]}):d.appointment:null},_=({slug:o})=>{const i=e.meetings[o];return(0,f.jsx)("tr",{className:r({"cursor-pointer":!a},"d-block d-md-table-row"),onClick:()=>{a||t(Tr(Tr({},e),{},{input:Tr(Tr({},e.input),{},{meeting:i.slug})}))},children:O.map(((e,t)=>(0,f.jsx)("td",{className:r("d-block d-md-table-cell",e),children:A(i,e)},t)))})};return!!o.length&&(0,f.jsx)("div",{className:"row",children:(0,f.jsxs)("table",{className:r("table table-striped flex-grow-1 my-0",{"clickable-rows":!a}),children:[(0,f.jsx)("thead",{children:(0,f.jsx)("tr",{className:"d-none d-md-table-row",children:O.map(((e,t)=>(0,f.jsx)("th",{className:e,children:d[e]},t)))})}),!!i.length&&(0,f.jsx)("tbody",{className:"border-0",children:b?i.map(((e,t)=>(0,f.jsx)(_,{slug:e},t))):(0,f.jsx)("tr",{children:(0,f.jsx)("td",{className:"p-0",colSpan:O.length,children:(0,f.jsx)("div",{className:"alert alert-warning m-0 opacity-50 p-2 rounded-0",children:(0,f.jsx)("button",{onClick:()=>u(!0),className:"alert-link bg-transparent border-0 d-block fw-normal mx-auto py-2 py-md-1 text-center text-decoration-underline w-100",children:1===i.length?d.in_progress_single:d.in_progress_multiple.replace("%count%",i.length)})})})})}),(0,f.jsx)(Lr(),{element:"tbody",className:"border-0",loadMore:()=>{l(p+10)},hasMore:o.length>p,children:o.slice(0,p).map(((e,t)=>(0,f.jsx)(_,{slug:e},t)))})]})})}function Sr({state:{indexes:e,input:t}}){if(!e||!t)return null;const o=[];Object.keys(d.title).forEach((i=>{if("meetings"===i)o.push(d.meetings);else if("search_with"===i&&"search"===t.mode&&t.search)o.push(d.title.search_with.replace("%search%",`‘${t.search}’`));else if("search_near"===i&&"location"===t.mode&&t.search)o.push(d.title.search_near.replace("%search%",`‘${t.search}’`));else if(e[i]&&t[i]?.length){const n=t[i].map((t=>T(e[i],t)?.name)).join(" + ");o.push(d.title[i].replace(`%${i}%`,n))}}));const i=o.join(" ");return document.title=i,(0,f.jsx)("h1",{className:"fw-light mb-2",children:i})}var Xr=o(3379),Er=o.n(Xr),Dr=o(8460),Cr={insert:"head",singleton:!1};Er()(Dr.Z,Cr);Dr.Z.locals;var Nr=o(2809),Pr={insert:"head",singleton:!1};Er()(Nr.Z,Pr);Nr.Z.locals;function Ir(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,i)}return o}function Yr(e){for(var t=1;t{const e=()=>{r(Yr(Yr({},i),{},{input:z(window.location.search)}))};window.addEventListener("popstate",e);let t=document.querySelector('link[rel="canonical"]');return t||(t=document.createElement("link"),t.setAttribute("rel","canonical"),document.getElementsByTagName("head")[0]?.appendChild(t)),t.setAttribute("href",m(i.input.meeting?{meeting:i.input.meeting}:i.input)),()=>{window.removeEventListener("popstate",e)}}),[i,window.location.search]),(0,n.useEffect)((()=>(document.body.classList.add("tsml-ui"),()=>{document.body.classList.remove("tsml-ui")})),[]),i.loading){console.log("TSML UI meeting finder: https://github.com/code4recovery/tsml-ui");const t=z();e.endsWith(".json")&&t.meeting&&(e=e.concat("?",(new Date).getTime())),fetch(e).then((e=>e.json())).then((e=>{if(!Array.isArray(e)||!e.length)return r(Yr(Yr({},i),{},{error:"bad_data",loading:!1,ready:!0}));const[n,a,s]=X(e,i.capabilities,o),p=(!t.latitude||!t.longitude)&&("location"===t.mode&&t.search||"me"===t.mode);r(Yr(Yr({},i),{},{capabilities:s,indexes:a,input:t,loading:!1,meetings:n,ready:!p}))})).catch((t=>{e&&console.error(`TSML UI data loading error: ${t}`,e),r(Yr(Yr({},i),{},{error:e?"bad_data":"no_data_src",loading:!1,ready:!0}))}))}!function(e){const t=m(e);window.location.href!==t&&window.history.pushState("","",t)}(i.input);const[a,s]=function(e,t,o){const i=[],n=R()(),r=Object.keys(e.meetings),a={};if(c.filters.forEach((t=>{e.input[t]?.length&&e.capabilities[t]&&("type"===t?e.input.type.forEach((o=>i.push(T(e.indexes[t],o)?.slugs??[]))):i.push([].concat.apply([],e.input[t].map((o=>T(e.indexes[t],o)?.slugs??[])))))})),"search"===e.input.mode){if(e.input.search){const t=e.input.search.replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replaceAll(" OR ","|").toLowerCase().split("|").map((e=>e.split('"'))).map((e=>[...new Set(e.filter(((e,t)=>t%2)).concat(e.filter(((e,t)=>!(t%2))).join(" ").split(" ")).filter((e=>e)))])).filter((e=>e.length)),o=r.filter((o=>t.some((t=>t.every((t=>-1!==e.meetings[o].search.search(t)))))));i.push([].concat.apply([],o))}}else["me","location"].includes(e.input.mode)&&(i.push(r.filter((t=>e.meetings[t].latitude&&e.meetings[t].latitude))),e.input.latitude&&e.input.longitude||(e.input.search&&"location"===e.input.mode?fetch(`https://api.mapbox.com/geocoding/v5/mapbox.places/${e.input.search}.json?${new URLSearchParams({access_token:o,autocomplete:!1,language:c.language})}`).then((e=>e.json())).then((o=>{o.features&&o.features.length&&w(o.features[0].center[1],o.features[0].center[0],s,e,t)})):"me"===e.input.mode&&navigator.geolocation.getCurrentPosition((o=>{w(o.coords.latitude,o.coords.longitude,s,e,t)}),(e=>{console.warn(`TSML UI geolocation error: ${e}`)}),{timeout:5e3})));const s=i.length?i.shift().filter((e=>i.every((t=>t.includes(e))))):r;r.forEach((t=>{a[t]=e.meetings[t].start?.diff(n,"minutes")??-9999,a[t]{const i=e.meetings[t],n=e.meetings[o];if(i.time&&!n.time)return-1;if(!i.time&&n.time)return 1;if(e.input.weekday.length){if(i.minutes_week!==n.minutes_week)return i.minutes_week-n.minutes_week}else if(a[t]!==a[o])return a[t]-a[o];return i.distance!==n.distance?null===i.distance?-1:null===n.distance?1:i.distance-n.distance:i.name!==n.name?i.name?n.name?i.name.localeCompare(n.name):1:-1:i.location!==n.location?i.location?n.location?i.location.localeCompare(n.location):1:-1:0}));const p=s.filter((t=>e.meetings[t].start?.diff(n,"minutes"){"use strict";o.d(t,{Z:()=>r});var i=o(3645),n=o.n(i)()((function(e){return e[1]}));n.push([e.id,".mapboxgl-map{-webkit-tap-highlight-color:rgba(0,0,0,0);font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative}.mapboxgl-canvas{left:0;position:absolute;top:0}.mapboxgl-map:-webkit-full-screen{height:100%;width:100%}.mapboxgl-canary{background-color:salmon}.mapboxgl-canvas-container.mapboxgl-interactive,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass{cursor:-webkit-grab;cursor:grab;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.mapboxgl-canvas-container.mapboxgl-interactive.mapboxgl-track-pointer{cursor:pointer}.mapboxgl-canvas-container.mapboxgl-interactive:active,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass:active{cursor:-webkit-grabbing;cursor:grabbing}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate .mapboxgl-canvas{touch-action:pan-x pan-y}.mapboxgl-canvas-container.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:pinch-zoom}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:none}.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-bottom-right,.mapboxgl-ctrl-top-left,.mapboxgl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.mapboxgl-ctrl-top-left{left:0;top:0}.mapboxgl-ctrl-top-right{right:0;top:0}.mapboxgl-ctrl-bottom-left{bottom:0;left:0}.mapboxgl-ctrl-bottom-right{bottom:0;right:0}.mapboxgl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.mapboxgl-ctrl-top-left .mapboxgl-ctrl{float:left;margin:10px 0 0 10px}.mapboxgl-ctrl-top-right .mapboxgl-ctrl{float:right;margin:10px 10px 0 0}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl{float:left;margin:0 0 10px 10px}.mapboxgl-ctrl-bottom-right .mapboxgl-ctrl{float:right;margin:0 10px 10px 0}.mapboxgl-ctrl-group{background:#fff;border-radius:4px}.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (-ms-high-contrast:active){.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.mapboxgl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;overflow:hidden;padding:0;width:29px}.mapboxgl-ctrl-group button+button{border-top:1px solid #ddd}.mapboxgl-ctrl button .mapboxgl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (-ms-high-contrast:active){.mapboxgl-ctrl-icon{background-color:transparent}.mapboxgl-ctrl-group button+button{border-top:1px solid ButtonText}}.mapboxgl-ctrl-attrib-button:focus,.mapboxgl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl button:disabled{cursor:not-allowed}.mapboxgl-ctrl button:disabled .mapboxgl-ctrl-icon{opacity:.25}.mapboxgl-ctrl button:not(:disabled):hover{background-color:rgba(0,0,0,.05)}.mapboxgl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.mapboxgl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.mapboxgl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.mapboxgl-ctrl-group button:focus:only-child{border-radius:inherit}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E\")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E\")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E\")}}.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E\")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E\")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E\")}}.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='m10.5 14 4-8 4 8h-8z'/%3E%3Cpath d='m10.5 16 4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E\")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='m10.5 14 4-8 4 8h-8z'/%3E%3Cpath d='m10.5 16 4 8 4-8h-8z' fill='%23999'/%3E%3C/svg%3E\")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m10.5 14 4-8 4 8h-8z'/%3E%3Cpath d='m10.5 16 4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E\")}}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23aaa'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath d='m14 5 1 1-9 9-1-1 9-9z' fill='red'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-waiting .mapboxgl-ctrl-icon{-webkit-animation:mapboxgl-spin 2s linear infinite;animation:mapboxgl-spin 2s linear infinite}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23999'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath d='m14 5 1 1-9 9-1-1 9-9z' fill='red'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3C/svg%3E\")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E\")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23666'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath d='m14 5 1 1-9 9-1-1 9-9z' fill='red'/%3E%3C/svg%3E\")}}@-webkit-keyframes mapboxgl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes mapboxgl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.mapboxgl-ctrl-logo{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='88' height='23' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd'%3E%3Cdefs%3E%3Cpath id='a' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 0 1 3.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='b' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 0 0-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 0 0 4.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 0 1-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 0 1 .3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 0 1-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='c'%3E%3Crect width='100%25' height='100%25' fill='%23fff'/%3E%3Cuse xlink:href='%23a'/%3E%3Cuse xlink:href='%23b'/%3E%3C/mask%3E%3Cg opacity='.3' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23c)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23b' mask='url(%23c)'/%3E%3C/g%3E%3Cg opacity='.9' fill='%23fff'%3E%3Cuse xlink:href='%23a'/%3E%3Cuse xlink:href='%23b'/%3E%3C/g%3E%3C/svg%3E\");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.mapboxgl-ctrl-logo.mapboxgl-compact{width:23px}@media (-ms-high-contrast:active){a.mapboxgl-ctrl-logo{background-color:transparent;background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='88' height='23' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd'%3E%3Cdefs%3E%3Cpath id='a' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 0 1 3.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='b' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 0 0-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 0 0 4.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 0 1-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 0 1 .3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 0 1-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='c'%3E%3Crect width='100%25' height='100%25' fill='%23fff'/%3E%3Cuse xlink:href='%23a'/%3E%3Cuse xlink:href='%23b'/%3E%3C/mask%3E%3Cg stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23c)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23b' mask='url(%23c)'/%3E%3C/g%3E%3Cg fill='%23fff'%3E%3Cuse xlink:href='%23a'/%3E%3Cuse xlink:href='%23b'/%3E%3C/g%3E%3C/svg%3E\")}}@media (-ms-high-contrast:black-on-white){a.mapboxgl-ctrl-logo{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='88' height='23' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd'%3E%3Cdefs%3E%3Cpath id='a' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 0 1 3.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='b' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 0 0-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 0 0 4.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 0 1-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 0 1 .3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 0 1-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='c'%3E%3Crect width='100%25' height='100%25' fill='%23fff'/%3E%3Cuse xlink:href='%23a'/%3E%3Cuse xlink:href='%23b'/%3E%3C/mask%3E%3Cg stroke='%23fff' stroke-width='3' fill='%23fff'%3E%3Ccircle mask='url(%23c)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23b' mask='url(%23c)'/%3E%3C/g%3E%3Cuse xlink:href='%23a'/%3E%3Cuse xlink:href='%23b'/%3E%3C/svg%3E\")}}.mapboxgl-ctrl.mapboxgl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.mapboxgl-ctrl-attrib.mapboxgl-compact{background-color:#fff;border-radius:12px;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.mapboxgl-ctrl-attrib.mapboxgl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show,.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner{display:none}.mapboxgl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='24' height='24' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E\");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-top-left .mapboxgl-ctrl-attrib-button{left:0}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-inner{display:block}.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-button{background-color:rgba(0,0,0,.05)}.mapboxgl-ctrl-bottom-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;right:0}.mapboxgl-ctrl-top-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{right:0;top:0}.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{left:0;top:0}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;left:0}}@media screen and (-ms-high-contrast:active){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='24' height='24' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' fill='%23fff'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E\")}}@media screen and (-ms-high-contrast:black-on-white){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='24' height='24' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E\")}}.mapboxgl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.mapboxgl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.mapboxgl-ctrl-attrib .mapbox-improve-map{font-weight:700;margin-left:2px}.mapboxgl-attrib-empty{display:none}.mapboxgl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.mapboxgl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.mapboxgl-popup-anchor-top,.mapboxgl-popup-anchor-top-left,.mapboxgl-popup-anchor-top-right{flex-direction:column}.mapboxgl-popup-anchor-bottom,.mapboxgl-popup-anchor-bottom-left,.mapboxgl-popup-anchor-bottom-right{flex-direction:column-reverse}.mapboxgl-popup-anchor-left{flex-direction:row}.mapboxgl-popup-anchor-right{flex-direction:row-reverse}.mapboxgl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.mapboxgl-popup-anchor-top .mapboxgl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.mapboxgl-popup-anchor-left .mapboxgl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.mapboxgl-popup-anchor-right .mapboxgl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.mapboxgl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.mapboxgl-popup-close-button:hover{background-color:rgba(0,0,0,.05)}.mapboxgl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:10px 10px 15px;pointer-events:auto;position:relative}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-content{border-top-left-radius:0}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-content{border-top-right-radius:0}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-content{border-bottom-left-radius:0}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-content{border-bottom-right-radius:0}.mapboxgl-popup-track-pointer{display:none}.mapboxgl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.mapboxgl-map:hover .mapboxgl-popup-track-pointer{display:flex}.mapboxgl-map:active .mapboxgl-popup-track-pointer{display:none}.mapboxgl-marker{left:0;opacity:1;position:absolute;top:0;transition:opacity .2s;will-change:transform}.mapboxgl-user-location-dot,.mapboxgl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.mapboxgl-user-location-dot:before{-webkit-animation:mapboxgl-user-location-dot-pulse 2s infinite;animation:mapboxgl-user-location-dot-pulse 2s infinite;content:\"\";position:absolute}.mapboxgl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:\"\";height:19px;left:-2px;position:absolute;top:-2px;width:19px}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading{height:0;width:0}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after,.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-bottom:7.5px solid #4aa1eb;content:\"\";position:absolute}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-left:7.5px solid transparent;transform:translateY(-28px) skewY(-20deg)}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after{border-right:7.5px solid transparent;transform:translate(7.5px,-28px) skewY(20deg)}@-webkit-keyframes mapboxgl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}@keyframes mapboxgl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.mapboxgl-user-location-dot-stale{background-color:#aaa}.mapboxgl-user-location-dot-stale:after{display:none}.mapboxgl-user-location-accuracy-circle{background-color:rgba(29,161,242,.2);border-radius:100%;height:1px;width:1px}.mapboxgl-crosshair,.mapboxgl-crosshair .mapboxgl-interactive,.mapboxgl-crosshair .mapboxgl-interactive:active{cursor:crosshair}.mapboxgl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}@media print{.mapbox-improve-map{display:none}}.mapboxgl-scroll-zoom-blocker,.mapboxgl-touch-pan-blocker{align-items:center;background:rgba(0,0,0,.7);color:#fff;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;height:100%;justify-content:center;left:0;opacity:0;pointer-events:none;position:absolute;text-align:center;top:0;transition:opacity .75s ease-in-out;transition-delay:1s;width:100%}.mapboxgl-scroll-zoom-blocker-show,.mapboxgl-touch-pan-blocker-show{opacity:1;transition:opacity .1s ease-in-out}.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page,.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page .mapboxgl-canvas{touch-action:pan-x pan-y}",""]);const r=n},8460:(e,t,o)=>{"use strict";o.d(t,{Z:()=>r});var i=o(3645),n=o.n(i)()((function(e){return e[1]}));n.push([e.id,"@charset \"UTF-8\";body,div#tsml-ui,div.tsml-ui,html,meetings{height:100%;margin:0}div.tsml-ui{-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-text-size-adjust:100%;background-color:#fff!important;color:#212529!important;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,Liberation Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji!important;font-size:1rem!important;font-weight:400!important;line-height:1.5!important}div.tsml-ui :root{--bs-blue:#0d6efd;--bs-indigo:#6610f2;--bs-purple:#6f42c1;--bs-pink:#d63384;--bs-red:#dc3545;--bs-orange:#fd7e14;--bs-yellow:#ffc107;--bs-green:#198754;--bs-teal:#20c997;--bs-cyan:#0dcaf0;--bs-white:#fff;--bs-gray:#6c757d;--bs-gray-dark:#343a40;--bs-gray-100:#f8f9fa;--bs-gray-200:#e9ecef;--bs-gray-300:#dee2e6;--bs-gray-400:#ced4da;--bs-gray-500:#adb5bd;--bs-gray-600:#6c757d;--bs-gray-700:#495057;--bs-gray-800:#343a40;--bs-gray-900:#212529;--bs-primary:#0d6efd;--bs-secondary:#6c757d;--bs-success:#198754;--bs-info:#0dcaf0;--bs-warning:#ffc107;--bs-danger:#dc3545;--bs-light:#f8f9fa;--bs-dark:#212529;--bs-primary-rgb:13,110,253;--bs-secondary-rgb:108,117,125;--bs-success-rgb:25,135,84;--bs-info-rgb:13,202,240;--bs-warning-rgb:255,193,7;--bs-danger-rgb:220,53,69;--bs-light-rgb:248,249,250;--bs-dark-rgb:33,37,41;--bs-white-rgb:255,255,255;--bs-black-rgb:0,0,0;--bs-body-color-rgb:33,37,41;--bs-body-bg-rgb:255,255,255;--bs-font-sans-serif:system-ui,-apple-system,\"Segoe UI\",Roboto,\"Helvetica Neue\",Arial,\"Noto Sans\",\"Liberation Sans\",sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\",\"Noto Color Emoji\";--bs-font-monospace:SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace;--bs-gradient:linear-gradient(180deg,hsla(0,0%,100%,.15),hsla(0,0%,100%,0));--bs-body-font-family:var(--bs-font-sans-serif);--bs-body-font-size:1rem;--bs-body-font-weight:400;--bs-body-line-height:1.5;--bs-body-color:#212529;--bs-body-bg:#fff}div.tsml-ui *,div.tsml-ui :after,div.tsml-ui :before{box-sizing:border-box}@media (prefers-reduced-motion:no-preference){div.tsml-ui :root{scroll-behavior:smooth}}div.tsml-ui body{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0);background-color:var(--bs-body-bg);color:var(--bs-body-color);font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);margin:0;text-align:var(--bs-body-text-align)}div.tsml-ui hr{background-color:currentColor;border:0;color:inherit;margin:1rem 0;opacity:.25}div.tsml-ui hr:not([size]){height:1px}div.tsml-ui .h1,div.tsml-ui .h2,div.tsml-ui .h3,div.tsml-ui .h4,div.tsml-ui .h5,div.tsml-ui .h6,div.tsml-ui h1,div.tsml-ui h2,div.tsml-ui h3,div.tsml-ui h4,div.tsml-ui h5,div.tsml-ui h6{font-weight:500;line-height:1.2;margin-bottom:.5rem;margin-top:0}div.tsml-ui .h1,div.tsml-ui h1{font-size:calc(1.375rem + 1.5vw)}@media (min-width:1200px){div.tsml-ui .h1,div.tsml-ui h1{font-size:2.5rem}}div.tsml-ui .h2,div.tsml-ui h2{font-size:calc(1.325rem + .9vw)}@media (min-width:1200px){div.tsml-ui .h2,div.tsml-ui h2{font-size:2rem}}div.tsml-ui .h3,div.tsml-ui h3{font-size:calc(1.3rem + .6vw)}@media (min-width:1200px){div.tsml-ui .h3,div.tsml-ui h3{font-size:1.75rem}}div.tsml-ui .h4,div.tsml-ui h4{font-size:calc(1.275rem + .3vw)}@media (min-width:1200px){div.tsml-ui .h4,div.tsml-ui h4{font-size:1.5rem}}div.tsml-ui .h5,div.tsml-ui h5{font-size:1.25rem}div.tsml-ui .h6,div.tsml-ui h6{font-size:1rem}div.tsml-ui p{margin-bottom:1rem;margin-top:0}div.tsml-ui abbr[data-bs-original-title],div.tsml-ui abbr[title]{cursor:help;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}div.tsml-ui address{font-style:normal;line-height:inherit;margin-bottom:1rem}div.tsml-ui ol,div.tsml-ui ul{padding-left:2rem}div.tsml-ui dl,div.tsml-ui ol,div.tsml-ui ul{margin-bottom:1rem;margin-top:0}div.tsml-ui ol ol,div.tsml-ui ol ul,div.tsml-ui ul ol,div.tsml-ui ul ul{margin-bottom:0}div.tsml-ui dt{font-weight:700}div.tsml-ui dd{margin-bottom:.5rem;margin-left:0}div.tsml-ui blockquote{margin:0 0 1rem}div.tsml-ui b,div.tsml-ui strong{font-weight:bolder}div.tsml-ui .small,div.tsml-ui small{font-size:.875em}div.tsml-ui .mark,div.tsml-ui mark{background-color:#fcf8e3;padding:.2em}div.tsml-ui sub,div.tsml-ui sup{font-size:.75em;line-height:0;position:relative;vertical-align:baseline}div.tsml-ui sub{bottom:-.25em}div.tsml-ui sup{top:-.5em}div.tsml-ui a{color:#0d6efd;text-decoration:underline}div.tsml-ui a:hover{color:#0a58ca}div.tsml-ui a:not([href]):not([class]),div.tsml-ui a:not([href]):not([class]):hover{color:inherit;text-decoration:none}div.tsml-ui code,div.tsml-ui kbd,div.tsml-ui pre,div.tsml-ui samp{direction:ltr;font-family:var(--bs-font-monospace);font-size:1em;unicode-bidi:bidi-override}div.tsml-ui pre{display:block;font-size:.875em;margin-bottom:1rem;margin-top:0;overflow:auto}div.tsml-ui pre code{color:inherit;font-size:inherit;word-break:normal}div.tsml-ui code{word-wrap:break-word;color:#d63384;font-size:.875em}a>div.tsml-ui code{color:inherit}div.tsml-ui kbd{background-color:#212529;border-radius:.2rem;color:#fff;font-size:.875em;padding:.2rem .4rem}div.tsml-ui kbd kbd{font-size:1em;font-weight:700;padding:0}div.tsml-ui figure{margin:0 0 1rem}div.tsml-ui img,div.tsml-ui svg{vertical-align:middle}div.tsml-ui table{border-collapse:collapse;caption-side:bottom}div.tsml-ui caption{color:#6c757d;padding-bottom:.5rem;padding-top:.5rem;text-align:left}div.tsml-ui th{text-align:inherit;text-align:-webkit-match-parent}div.tsml-ui tbody,div.tsml-ui td,div.tsml-ui tfoot,div.tsml-ui th,div.tsml-ui thead,div.tsml-ui tr{border:0 solid;border-color:inherit}div.tsml-ui label{display:inline-block}div.tsml-ui button{border-radius:0}div.tsml-ui button:focus:not(:focus-visible){outline:0}div.tsml-ui button,div.tsml-ui input,div.tsml-ui optgroup,div.tsml-ui select,div.tsml-ui textarea{font-family:inherit;font-size:inherit;line-height:inherit;margin:0}div.tsml-ui button,div.tsml-ui select{text-transform:none}div.tsml-ui [role=button]{cursor:pointer}div.tsml-ui select{word-wrap:normal}div.tsml-ui select:disabled{opacity:1}div.tsml-ui [list]::-webkit-calendar-picker-indicator{display:none}div.tsml-ui [type=button],div.tsml-ui [type=reset],div.tsml-ui [type=submit],div.tsml-ui button{-webkit-appearance:button}div.tsml-ui [type=button]:not(:disabled),div.tsml-ui [type=reset]:not(:disabled),div.tsml-ui [type=submit]:not(:disabled),div.tsml-ui button:not(:disabled){cursor:pointer}div.tsml-ui ::-moz-focus-inner{border-style:none;padding:0}div.tsml-ui textarea{resize:vertical}div.tsml-ui fieldset{border:0;margin:0;min-width:0;padding:0}div.tsml-ui legend{float:left;font-size:calc(1.275rem + .3vw);line-height:inherit;margin-bottom:.5rem;padding:0;width:100%}@media (min-width:1200px){div.tsml-ui legend{font-size:1.5rem}}div.tsml-ui legend+*{clear:left}div.tsml-ui ::-webkit-datetime-edit-day-field,div.tsml-ui ::-webkit-datetime-edit-fields-wrapper,div.tsml-ui ::-webkit-datetime-edit-hour-field,div.tsml-ui ::-webkit-datetime-edit-minute,div.tsml-ui ::-webkit-datetime-edit-month-field,div.tsml-ui ::-webkit-datetime-edit-text,div.tsml-ui ::-webkit-datetime-edit-year-field{padding:0}div.tsml-ui ::-webkit-inner-spin-button{height:auto}div.tsml-ui [type=search]{-webkit-appearance:textfield;outline-offset:-2px}div.tsml-ui ::-webkit-search-decoration{-webkit-appearance:none}div.tsml-ui ::-webkit-color-swatch-wrapper{padding:0}div.tsml-ui ::file-selector-button{font:inherit}div.tsml-ui ::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}div.tsml-ui output{display:inline-block}div.tsml-ui iframe{border:0}div.tsml-ui summary{cursor:pointer;display:list-item}div.tsml-ui progress{vertical-align:baseline}div.tsml-ui [hidden]{display:none!important}div.tsml-ui .lead{font-size:1.25rem;font-weight:300}div.tsml-ui .display-1{font-size:calc(1.625rem + 4.5vw);font-weight:300;line-height:1.2}@media (min-width:1200px){div.tsml-ui .display-1{font-size:5rem}}div.tsml-ui .display-2{font-size:calc(1.575rem + 3.9vw);font-weight:300;line-height:1.2}@media (min-width:1200px){div.tsml-ui .display-2{font-size:4.5rem}}div.tsml-ui .display-3{font-size:calc(1.525rem + 3.3vw);font-weight:300;line-height:1.2}@media (min-width:1200px){div.tsml-ui .display-3{font-size:4rem}}div.tsml-ui .display-4{font-size:calc(1.475rem + 2.7vw);font-weight:300;line-height:1.2}@media (min-width:1200px){div.tsml-ui .display-4{font-size:3.5rem}}div.tsml-ui .display-5{font-size:calc(1.425rem + 2.1vw);font-weight:300;line-height:1.2}@media (min-width:1200px){div.tsml-ui .display-5{font-size:3rem}}div.tsml-ui .display-6{font-size:calc(1.375rem + 1.5vw);font-weight:300;line-height:1.2}@media (min-width:1200px){div.tsml-ui .display-6{font-size:2.5rem}}div.tsml-ui .list-inline,div.tsml-ui .list-unstyled{list-style:none;padding-left:0}div.tsml-ui .list-inline-item{display:inline-block}div.tsml-ui .list-inline-item:not(:last-child){margin-right:.5rem}div.tsml-ui .initialism{font-size:.875em;text-transform:uppercase}div.tsml-ui .blockquote{font-size:1.25rem;margin-bottom:1rem}div.tsml-ui .blockquote>:last-child{margin-bottom:0}div.tsml-ui .blockquote-footer{color:#6c757d;font-size:.875em;margin-bottom:1rem;margin-top:-1rem}div.tsml-ui .blockquote-footer:before{content:\"— \"}div.tsml-ui .container,div.tsml-ui .container-fluid,div.tsml-ui .container-lg,div.tsml-ui .container-md,div.tsml-ui .container-sm,div.tsml-ui .container-xl,div.tsml-ui .container-xxl{margin-left:auto;margin-right:auto;padding-left:var(--bs-gutter-x,.75rem);padding-right:var(--bs-gutter-x,.75rem);width:100%}@media (min-width:576px){div.tsml-ui .container,div.tsml-ui .container-sm{max-width:540px}}@media (min-width:768px){div.tsml-ui .container,div.tsml-ui .container-md,div.tsml-ui .container-sm{max-width:720px}}@media (min-width:992px){div.tsml-ui .container,div.tsml-ui .container-lg,div.tsml-ui .container-md,div.tsml-ui .container-sm{max-width:960px}}@media (min-width:1200px){div.tsml-ui .container,div.tsml-ui .container-lg,div.tsml-ui .container-md,div.tsml-ui .container-sm,div.tsml-ui .container-xl{max-width:1140px}}@media (min-width:1400px){div.tsml-ui .container,div.tsml-ui .container-lg,div.tsml-ui .container-md,div.tsml-ui .container-sm,div.tsml-ui .container-xl,div.tsml-ui .container-xxl{max-width:1320px}}div.tsml-ui .row{--bs-gutter-x:1.5rem;--bs-gutter-y:0;display:flex;flex-wrap:wrap;margin-left:calc(var(--bs-gutter-x)*-.5);margin-right:calc(var(--bs-gutter-x)*-.5);margin-top:calc(var(--bs-gutter-y)*-1)}div.tsml-ui .row>*{flex-shrink:0;margin-top:var(--bs-gutter-y);max-width:100%;padding-left:calc(var(--bs-gutter-x)*.5);padding-right:calc(var(--bs-gutter-x)*.5);width:100%}div.tsml-ui .col{flex:1 0 0%}div.tsml-ui .row-cols-auto>*{flex:0 0 auto;width:auto}div.tsml-ui .row-cols-1>*{flex:0 0 auto;width:100%}div.tsml-ui .row-cols-2>*{flex:0 0 auto;width:50%}div.tsml-ui .row-cols-3>*{flex:0 0 auto;width:33.3333333333%}div.tsml-ui .row-cols-4>*{flex:0 0 auto;width:25%}div.tsml-ui .row-cols-5>*{flex:0 0 auto;width:20%}div.tsml-ui .row-cols-6>*{flex:0 0 auto;width:16.6666666667%}div.tsml-ui .col-auto{flex:0 0 auto;width:auto}div.tsml-ui .col-1{flex:0 0 auto;width:8.33333333%}div.tsml-ui .col-2{flex:0 0 auto;width:16.66666667%}div.tsml-ui .col-3{flex:0 0 auto;width:25%}div.tsml-ui .col-4{flex:0 0 auto;width:33.33333333%}div.tsml-ui .col-5{flex:0 0 auto;width:41.66666667%}div.tsml-ui .col-6{flex:0 0 auto;width:50%}div.tsml-ui .col-7{flex:0 0 auto;width:58.33333333%}div.tsml-ui .col-8{flex:0 0 auto;width:66.66666667%}div.tsml-ui .col-9{flex:0 0 auto;width:75%}div.tsml-ui .col-10{flex:0 0 auto;width:83.33333333%}div.tsml-ui .col-11{flex:0 0 auto;width:91.66666667%}div.tsml-ui .col-12{flex:0 0 auto;width:100%}div.tsml-ui .offset-1{margin-left:8.33333333%}div.tsml-ui .offset-2{margin-left:16.66666667%}div.tsml-ui .offset-3{margin-left:25%}div.tsml-ui .offset-4{margin-left:33.33333333%}div.tsml-ui .offset-5{margin-left:41.66666667%}div.tsml-ui .offset-6{margin-left:50%}div.tsml-ui .offset-7{margin-left:58.33333333%}div.tsml-ui .offset-8{margin-left:66.66666667%}div.tsml-ui .offset-9{margin-left:75%}div.tsml-ui .offset-10{margin-left:83.33333333%}div.tsml-ui .offset-11{margin-left:91.66666667%}div.tsml-ui .g-0,div.tsml-ui .gx-0{--bs-gutter-x:0}div.tsml-ui .g-0,div.tsml-ui .gy-0{--bs-gutter-y:0}div.tsml-ui .g-1,div.tsml-ui .gx-1{--bs-gutter-x:0.25rem}div.tsml-ui .g-1,div.tsml-ui .gy-1{--bs-gutter-y:0.25rem}div.tsml-ui .g-2,div.tsml-ui .gx-2{--bs-gutter-x:0.5rem}div.tsml-ui .g-2,div.tsml-ui .gy-2{--bs-gutter-y:0.5rem}div.tsml-ui .g-3,div.tsml-ui .gx-3{--bs-gutter-x:1rem}div.tsml-ui .g-3,div.tsml-ui .gy-3{--bs-gutter-y:1rem}div.tsml-ui .g-4,div.tsml-ui .gx-4{--bs-gutter-x:1.5rem}div.tsml-ui .g-4,div.tsml-ui .gy-4{--bs-gutter-y:1.5rem}div.tsml-ui .g-5,div.tsml-ui .gx-5{--bs-gutter-x:3rem}div.tsml-ui .g-5,div.tsml-ui .gy-5{--bs-gutter-y:3rem}@media (min-width:576px){div.tsml-ui .col-sm{flex:1 0 0%}div.tsml-ui .row-cols-sm-auto>*{flex:0 0 auto;width:auto}div.tsml-ui .row-cols-sm-1>*{flex:0 0 auto;width:100%}div.tsml-ui .row-cols-sm-2>*{flex:0 0 auto;width:50%}div.tsml-ui .row-cols-sm-3>*{flex:0 0 auto;width:33.3333333333%}div.tsml-ui .row-cols-sm-4>*{flex:0 0 auto;width:25%}div.tsml-ui .row-cols-sm-5>*{flex:0 0 auto;width:20%}div.tsml-ui .row-cols-sm-6>*{flex:0 0 auto;width:16.6666666667%}div.tsml-ui .col-sm-auto{flex:0 0 auto;width:auto}div.tsml-ui .col-sm-1{flex:0 0 auto;width:8.33333333%}div.tsml-ui .col-sm-2{flex:0 0 auto;width:16.66666667%}div.tsml-ui .col-sm-3{flex:0 0 auto;width:25%}div.tsml-ui .col-sm-4{flex:0 0 auto;width:33.33333333%}div.tsml-ui .col-sm-5{flex:0 0 auto;width:41.66666667%}div.tsml-ui .col-sm-6{flex:0 0 auto;width:50%}div.tsml-ui .col-sm-7{flex:0 0 auto;width:58.33333333%}div.tsml-ui .col-sm-8{flex:0 0 auto;width:66.66666667%}div.tsml-ui .col-sm-9{flex:0 0 auto;width:75%}div.tsml-ui .col-sm-10{flex:0 0 auto;width:83.33333333%}div.tsml-ui .col-sm-11{flex:0 0 auto;width:91.66666667%}div.tsml-ui .col-sm-12{flex:0 0 auto;width:100%}div.tsml-ui .offset-sm-0{margin-left:0}div.tsml-ui .offset-sm-1{margin-left:8.33333333%}div.tsml-ui .offset-sm-2{margin-left:16.66666667%}div.tsml-ui .offset-sm-3{margin-left:25%}div.tsml-ui .offset-sm-4{margin-left:33.33333333%}div.tsml-ui .offset-sm-5{margin-left:41.66666667%}div.tsml-ui .offset-sm-6{margin-left:50%}div.tsml-ui .offset-sm-7{margin-left:58.33333333%}div.tsml-ui .offset-sm-8{margin-left:66.66666667%}div.tsml-ui .offset-sm-9{margin-left:75%}div.tsml-ui .offset-sm-10{margin-left:83.33333333%}div.tsml-ui .offset-sm-11{margin-left:91.66666667%}div.tsml-ui .g-sm-0,div.tsml-ui .gx-sm-0{--bs-gutter-x:0}div.tsml-ui .g-sm-0,div.tsml-ui .gy-sm-0{--bs-gutter-y:0}div.tsml-ui .g-sm-1,div.tsml-ui .gx-sm-1{--bs-gutter-x:0.25rem}div.tsml-ui .g-sm-1,div.tsml-ui .gy-sm-1{--bs-gutter-y:0.25rem}div.tsml-ui .g-sm-2,div.tsml-ui .gx-sm-2{--bs-gutter-x:0.5rem}div.tsml-ui .g-sm-2,div.tsml-ui .gy-sm-2{--bs-gutter-y:0.5rem}div.tsml-ui .g-sm-3,div.tsml-ui .gx-sm-3{--bs-gutter-x:1rem}div.tsml-ui .g-sm-3,div.tsml-ui .gy-sm-3{--bs-gutter-y:1rem}div.tsml-ui .g-sm-4,div.tsml-ui .gx-sm-4{--bs-gutter-x:1.5rem}div.tsml-ui .g-sm-4,div.tsml-ui .gy-sm-4{--bs-gutter-y:1.5rem}div.tsml-ui .g-sm-5,div.tsml-ui .gx-sm-5{--bs-gutter-x:3rem}div.tsml-ui .g-sm-5,div.tsml-ui .gy-sm-5{--bs-gutter-y:3rem}}@media (min-width:768px){div.tsml-ui .col-md{flex:1 0 0%}div.tsml-ui .row-cols-md-auto>*{flex:0 0 auto;width:auto}div.tsml-ui .row-cols-md-1>*{flex:0 0 auto;width:100%}div.tsml-ui .row-cols-md-2>*{flex:0 0 auto;width:50%}div.tsml-ui .row-cols-md-3>*{flex:0 0 auto;width:33.3333333333%}div.tsml-ui .row-cols-md-4>*{flex:0 0 auto;width:25%}div.tsml-ui .row-cols-md-5>*{flex:0 0 auto;width:20%}div.tsml-ui .row-cols-md-6>*{flex:0 0 auto;width:16.6666666667%}div.tsml-ui .col-md-auto{flex:0 0 auto;width:auto}div.tsml-ui .col-md-1{flex:0 0 auto;width:8.33333333%}div.tsml-ui .col-md-2{flex:0 0 auto;width:16.66666667%}div.tsml-ui .col-md-3{flex:0 0 auto;width:25%}div.tsml-ui .col-md-4{flex:0 0 auto;width:33.33333333%}div.tsml-ui .col-md-5{flex:0 0 auto;width:41.66666667%}div.tsml-ui .col-md-6{flex:0 0 auto;width:50%}div.tsml-ui .col-md-7{flex:0 0 auto;width:58.33333333%}div.tsml-ui .col-md-8{flex:0 0 auto;width:66.66666667%}div.tsml-ui .col-md-9{flex:0 0 auto;width:75%}div.tsml-ui .col-md-10{flex:0 0 auto;width:83.33333333%}div.tsml-ui .col-md-11{flex:0 0 auto;width:91.66666667%}div.tsml-ui .col-md-12{flex:0 0 auto;width:100%}div.tsml-ui .offset-md-0{margin-left:0}div.tsml-ui .offset-md-1{margin-left:8.33333333%}div.tsml-ui .offset-md-2{margin-left:16.66666667%}div.tsml-ui .offset-md-3{margin-left:25%}div.tsml-ui .offset-md-4{margin-left:33.33333333%}div.tsml-ui .offset-md-5{margin-left:41.66666667%}div.tsml-ui .offset-md-6{margin-left:50%}div.tsml-ui .offset-md-7{margin-left:58.33333333%}div.tsml-ui .offset-md-8{margin-left:66.66666667%}div.tsml-ui .offset-md-9{margin-left:75%}div.tsml-ui .offset-md-10{margin-left:83.33333333%}div.tsml-ui .offset-md-11{margin-left:91.66666667%}div.tsml-ui .g-md-0,div.tsml-ui .gx-md-0{--bs-gutter-x:0}div.tsml-ui .g-md-0,div.tsml-ui .gy-md-0{--bs-gutter-y:0}div.tsml-ui .g-md-1,div.tsml-ui .gx-md-1{--bs-gutter-x:0.25rem}div.tsml-ui .g-md-1,div.tsml-ui .gy-md-1{--bs-gutter-y:0.25rem}div.tsml-ui .g-md-2,div.tsml-ui .gx-md-2{--bs-gutter-x:0.5rem}div.tsml-ui .g-md-2,div.tsml-ui .gy-md-2{--bs-gutter-y:0.5rem}div.tsml-ui .g-md-3,div.tsml-ui .gx-md-3{--bs-gutter-x:1rem}div.tsml-ui .g-md-3,div.tsml-ui .gy-md-3{--bs-gutter-y:1rem}div.tsml-ui .g-md-4,div.tsml-ui .gx-md-4{--bs-gutter-x:1.5rem}div.tsml-ui .g-md-4,div.tsml-ui .gy-md-4{--bs-gutter-y:1.5rem}div.tsml-ui .g-md-5,div.tsml-ui .gx-md-5{--bs-gutter-x:3rem}div.tsml-ui .g-md-5,div.tsml-ui .gy-md-5{--bs-gutter-y:3rem}}@media (min-width:992px){div.tsml-ui .col-lg{flex:1 0 0%}div.tsml-ui .row-cols-lg-auto>*{flex:0 0 auto;width:auto}div.tsml-ui .row-cols-lg-1>*{flex:0 0 auto;width:100%}div.tsml-ui .row-cols-lg-2>*{flex:0 0 auto;width:50%}div.tsml-ui .row-cols-lg-3>*{flex:0 0 auto;width:33.3333333333%}div.tsml-ui .row-cols-lg-4>*{flex:0 0 auto;width:25%}div.tsml-ui .row-cols-lg-5>*{flex:0 0 auto;width:20%}div.tsml-ui .row-cols-lg-6>*{flex:0 0 auto;width:16.6666666667%}div.tsml-ui .col-lg-auto{flex:0 0 auto;width:auto}div.tsml-ui .col-lg-1{flex:0 0 auto;width:8.33333333%}div.tsml-ui .col-lg-2{flex:0 0 auto;width:16.66666667%}div.tsml-ui .col-lg-3{flex:0 0 auto;width:25%}div.tsml-ui .col-lg-4{flex:0 0 auto;width:33.33333333%}div.tsml-ui .col-lg-5{flex:0 0 auto;width:41.66666667%}div.tsml-ui .col-lg-6{flex:0 0 auto;width:50%}div.tsml-ui .col-lg-7{flex:0 0 auto;width:58.33333333%}div.tsml-ui .col-lg-8{flex:0 0 auto;width:66.66666667%}div.tsml-ui .col-lg-9{flex:0 0 auto;width:75%}div.tsml-ui .col-lg-10{flex:0 0 auto;width:83.33333333%}div.tsml-ui .col-lg-11{flex:0 0 auto;width:91.66666667%}div.tsml-ui .col-lg-12{flex:0 0 auto;width:100%}div.tsml-ui .offset-lg-0{margin-left:0}div.tsml-ui .offset-lg-1{margin-left:8.33333333%}div.tsml-ui .offset-lg-2{margin-left:16.66666667%}div.tsml-ui .offset-lg-3{margin-left:25%}div.tsml-ui .offset-lg-4{margin-left:33.33333333%}div.tsml-ui .offset-lg-5{margin-left:41.66666667%}div.tsml-ui .offset-lg-6{margin-left:50%}div.tsml-ui .offset-lg-7{margin-left:58.33333333%}div.tsml-ui .offset-lg-8{margin-left:66.66666667%}div.tsml-ui .offset-lg-9{margin-left:75%}div.tsml-ui .offset-lg-10{margin-left:83.33333333%}div.tsml-ui .offset-lg-11{margin-left:91.66666667%}div.tsml-ui .g-lg-0,div.tsml-ui .gx-lg-0{--bs-gutter-x:0}div.tsml-ui .g-lg-0,div.tsml-ui .gy-lg-0{--bs-gutter-y:0}div.tsml-ui .g-lg-1,div.tsml-ui .gx-lg-1{--bs-gutter-x:0.25rem}div.tsml-ui .g-lg-1,div.tsml-ui .gy-lg-1{--bs-gutter-y:0.25rem}div.tsml-ui .g-lg-2,div.tsml-ui .gx-lg-2{--bs-gutter-x:0.5rem}div.tsml-ui .g-lg-2,div.tsml-ui .gy-lg-2{--bs-gutter-y:0.5rem}div.tsml-ui .g-lg-3,div.tsml-ui .gx-lg-3{--bs-gutter-x:1rem}div.tsml-ui .g-lg-3,div.tsml-ui .gy-lg-3{--bs-gutter-y:1rem}div.tsml-ui .g-lg-4,div.tsml-ui .gx-lg-4{--bs-gutter-x:1.5rem}div.tsml-ui .g-lg-4,div.tsml-ui .gy-lg-4{--bs-gutter-y:1.5rem}div.tsml-ui .g-lg-5,div.tsml-ui .gx-lg-5{--bs-gutter-x:3rem}div.tsml-ui .g-lg-5,div.tsml-ui .gy-lg-5{--bs-gutter-y:3rem}}@media (min-width:1200px){div.tsml-ui .col-xl{flex:1 0 0%}div.tsml-ui .row-cols-xl-auto>*{flex:0 0 auto;width:auto}div.tsml-ui .row-cols-xl-1>*{flex:0 0 auto;width:100%}div.tsml-ui .row-cols-xl-2>*{flex:0 0 auto;width:50%}div.tsml-ui .row-cols-xl-3>*{flex:0 0 auto;width:33.3333333333%}div.tsml-ui .row-cols-xl-4>*{flex:0 0 auto;width:25%}div.tsml-ui .row-cols-xl-5>*{flex:0 0 auto;width:20%}div.tsml-ui .row-cols-xl-6>*{flex:0 0 auto;width:16.6666666667%}div.tsml-ui .col-xl-auto{flex:0 0 auto;width:auto}div.tsml-ui .col-xl-1{flex:0 0 auto;width:8.33333333%}div.tsml-ui .col-xl-2{flex:0 0 auto;width:16.66666667%}div.tsml-ui .col-xl-3{flex:0 0 auto;width:25%}div.tsml-ui .col-xl-4{flex:0 0 auto;width:33.33333333%}div.tsml-ui .col-xl-5{flex:0 0 auto;width:41.66666667%}div.tsml-ui .col-xl-6{flex:0 0 auto;width:50%}div.tsml-ui .col-xl-7{flex:0 0 auto;width:58.33333333%}div.tsml-ui .col-xl-8{flex:0 0 auto;width:66.66666667%}div.tsml-ui .col-xl-9{flex:0 0 auto;width:75%}div.tsml-ui .col-xl-10{flex:0 0 auto;width:83.33333333%}div.tsml-ui .col-xl-11{flex:0 0 auto;width:91.66666667%}div.tsml-ui .col-xl-12{flex:0 0 auto;width:100%}div.tsml-ui .offset-xl-0{margin-left:0}div.tsml-ui .offset-xl-1{margin-left:8.33333333%}div.tsml-ui .offset-xl-2{margin-left:16.66666667%}div.tsml-ui .offset-xl-3{margin-left:25%}div.tsml-ui .offset-xl-4{margin-left:33.33333333%}div.tsml-ui .offset-xl-5{margin-left:41.66666667%}div.tsml-ui .offset-xl-6{margin-left:50%}div.tsml-ui .offset-xl-7{margin-left:58.33333333%}div.tsml-ui .offset-xl-8{margin-left:66.66666667%}div.tsml-ui .offset-xl-9{margin-left:75%}div.tsml-ui .offset-xl-10{margin-left:83.33333333%}div.tsml-ui .offset-xl-11{margin-left:91.66666667%}div.tsml-ui .g-xl-0,div.tsml-ui .gx-xl-0{--bs-gutter-x:0}div.tsml-ui .g-xl-0,div.tsml-ui .gy-xl-0{--bs-gutter-y:0}div.tsml-ui .g-xl-1,div.tsml-ui .gx-xl-1{--bs-gutter-x:0.25rem}div.tsml-ui .g-xl-1,div.tsml-ui .gy-xl-1{--bs-gutter-y:0.25rem}div.tsml-ui .g-xl-2,div.tsml-ui .gx-xl-2{--bs-gutter-x:0.5rem}div.tsml-ui .g-xl-2,div.tsml-ui .gy-xl-2{--bs-gutter-y:0.5rem}div.tsml-ui .g-xl-3,div.tsml-ui .gx-xl-3{--bs-gutter-x:1rem}div.tsml-ui .g-xl-3,div.tsml-ui .gy-xl-3{--bs-gutter-y:1rem}div.tsml-ui .g-xl-4,div.tsml-ui .gx-xl-4{--bs-gutter-x:1.5rem}div.tsml-ui .g-xl-4,div.tsml-ui .gy-xl-4{--bs-gutter-y:1.5rem}div.tsml-ui .g-xl-5,div.tsml-ui .gx-xl-5{--bs-gutter-x:3rem}div.tsml-ui .g-xl-5,div.tsml-ui .gy-xl-5{--bs-gutter-y:3rem}}@media (min-width:1400px){div.tsml-ui .col-xxl{flex:1 0 0%}div.tsml-ui .row-cols-xxl-auto>*{flex:0 0 auto;width:auto}div.tsml-ui .row-cols-xxl-1>*{flex:0 0 auto;width:100%}div.tsml-ui .row-cols-xxl-2>*{flex:0 0 auto;width:50%}div.tsml-ui .row-cols-xxl-3>*{flex:0 0 auto;width:33.3333333333%}div.tsml-ui .row-cols-xxl-4>*{flex:0 0 auto;width:25%}div.tsml-ui .row-cols-xxl-5>*{flex:0 0 auto;width:20%}div.tsml-ui .row-cols-xxl-6>*{flex:0 0 auto;width:16.6666666667%}div.tsml-ui .col-xxl-auto{flex:0 0 auto;width:auto}div.tsml-ui .col-xxl-1{flex:0 0 auto;width:8.33333333%}div.tsml-ui .col-xxl-2{flex:0 0 auto;width:16.66666667%}div.tsml-ui .col-xxl-3{flex:0 0 auto;width:25%}div.tsml-ui .col-xxl-4{flex:0 0 auto;width:33.33333333%}div.tsml-ui .col-xxl-5{flex:0 0 auto;width:41.66666667%}div.tsml-ui .col-xxl-6{flex:0 0 auto;width:50%}div.tsml-ui .col-xxl-7{flex:0 0 auto;width:58.33333333%}div.tsml-ui .col-xxl-8{flex:0 0 auto;width:66.66666667%}div.tsml-ui .col-xxl-9{flex:0 0 auto;width:75%}div.tsml-ui .col-xxl-10{flex:0 0 auto;width:83.33333333%}div.tsml-ui .col-xxl-11{flex:0 0 auto;width:91.66666667%}div.tsml-ui .col-xxl-12{flex:0 0 auto;width:100%}div.tsml-ui .offset-xxl-0{margin-left:0}div.tsml-ui .offset-xxl-1{margin-left:8.33333333%}div.tsml-ui .offset-xxl-2{margin-left:16.66666667%}div.tsml-ui .offset-xxl-3{margin-left:25%}div.tsml-ui .offset-xxl-4{margin-left:33.33333333%}div.tsml-ui .offset-xxl-5{margin-left:41.66666667%}div.tsml-ui .offset-xxl-6{margin-left:50%}div.tsml-ui .offset-xxl-7{margin-left:58.33333333%}div.tsml-ui .offset-xxl-8{margin-left:66.66666667%}div.tsml-ui .offset-xxl-9{margin-left:75%}div.tsml-ui .offset-xxl-10{margin-left:83.33333333%}div.tsml-ui .offset-xxl-11{margin-left:91.66666667%}div.tsml-ui .g-xxl-0,div.tsml-ui .gx-xxl-0{--bs-gutter-x:0}div.tsml-ui .g-xxl-0,div.tsml-ui .gy-xxl-0{--bs-gutter-y:0}div.tsml-ui .g-xxl-1,div.tsml-ui .gx-xxl-1{--bs-gutter-x:0.25rem}div.tsml-ui .g-xxl-1,div.tsml-ui .gy-xxl-1{--bs-gutter-y:0.25rem}div.tsml-ui .g-xxl-2,div.tsml-ui .gx-xxl-2{--bs-gutter-x:0.5rem}div.tsml-ui .g-xxl-2,div.tsml-ui .gy-xxl-2{--bs-gutter-y:0.5rem}div.tsml-ui .g-xxl-3,div.tsml-ui .gx-xxl-3{--bs-gutter-x:1rem}div.tsml-ui .g-xxl-3,div.tsml-ui .gy-xxl-3{--bs-gutter-y:1rem}div.tsml-ui .g-xxl-4,div.tsml-ui .gx-xxl-4{--bs-gutter-x:1.5rem}div.tsml-ui .g-xxl-4,div.tsml-ui .gy-xxl-4{--bs-gutter-y:1.5rem}div.tsml-ui .g-xxl-5,div.tsml-ui .gx-xxl-5{--bs-gutter-x:3rem}div.tsml-ui .g-xxl-5,div.tsml-ui .gy-xxl-5{--bs-gutter-y:3rem}}div.tsml-ui .table{--bs-table-bg:transparent;--bs-table-accent-bg:transparent;--bs-table-striped-color:#212529;--bs-table-striped-bg:rgba(0,0,0,.05);--bs-table-active-color:#212529;--bs-table-active-bg:rgba(0,0,0,.1);--bs-table-hover-color:#212529;--bs-table-hover-bg:rgba(0,0,0,.075);border-color:#dee2e6;color:#212529;margin-bottom:1rem;vertical-align:top;width:100%}div.tsml-ui .table>:not(caption)>*>*{background-color:var(--bs-table-bg);border-bottom-width:1px;box-shadow:inset 0 0 0 9999px var(--bs-table-accent-bg);padding:.5rem}div.tsml-ui .table>tbody{vertical-align:inherit}div.tsml-ui .table>thead{vertical-align:bottom}div.tsml-ui .table>:not(:first-child){border-top:2px solid}div.tsml-ui .caption-top{caption-side:top}div.tsml-ui .table-sm>:not(caption)>*>*{padding:.25rem}div.tsml-ui .table-bordered>:not(caption)>*{border-width:1px 0}div.tsml-ui .table-bordered>:not(caption)>*>*{border-width:0 1px}div.tsml-ui .table-borderless>:not(caption)>*>*{border-bottom-width:0}div.tsml-ui .table-borderless>:not(:first-child){border-top-width:0}div.tsml-ui .table-striped>tbody>tr:nth-of-type(odd)>*{--bs-table-accent-bg:var(--bs-table-striped-bg);color:var(--bs-table-striped-color)}div.tsml-ui .table-active{--bs-table-accent-bg:var(--bs-table-active-bg);color:var(--bs-table-active-color)}div.tsml-ui .table-hover>tbody>tr:hover>*{--bs-table-accent-bg:var(--bs-table-hover-bg);color:var(--bs-table-hover-color)}div.tsml-ui .table-primary{--bs-table-bg:#cfe2ff;--bs-table-striped-bg:#c5d7f2;--bs-table-striped-color:#000;--bs-table-active-bg:#bacbe6;--bs-table-active-color:#000;--bs-table-hover-bg:#bfd1ec;--bs-table-hover-color:#000;border-color:#bacbe6;color:#000}div.tsml-ui .table-secondary{--bs-table-bg:#e2e3e5;--bs-table-striped-bg:#d7d8da;--bs-table-striped-color:#000;--bs-table-active-bg:#cbccce;--bs-table-active-color:#000;--bs-table-hover-bg:#d1d2d4;--bs-table-hover-color:#000;border-color:#cbccce;color:#000}div.tsml-ui .table-success{--bs-table-bg:#d1e7dd;--bs-table-striped-bg:#c7dbd2;--bs-table-striped-color:#000;--bs-table-active-bg:#bcd0c7;--bs-table-active-color:#000;--bs-table-hover-bg:#c1d6cc;--bs-table-hover-color:#000;border-color:#bcd0c7;color:#000}div.tsml-ui .table-info{--bs-table-bg:#cff4fc;--bs-table-striped-bg:#c5e8ef;--bs-table-striped-color:#000;--bs-table-active-bg:#badce3;--bs-table-active-color:#000;--bs-table-hover-bg:#bfe2e9;--bs-table-hover-color:#000;border-color:#badce3;color:#000}div.tsml-ui .table-warning{--bs-table-bg:#fff3cd;--bs-table-striped-bg:#f2e7c3;--bs-table-striped-color:#000;--bs-table-active-bg:#e6dbb9;--bs-table-active-color:#000;--bs-table-hover-bg:#ece1be;--bs-table-hover-color:#000;border-color:#e6dbb9;color:#000}div.tsml-ui .table-danger{--bs-table-bg:#f8d7da;--bs-table-striped-bg:#eccccf;--bs-table-striped-color:#000;--bs-table-active-bg:#dfc2c4;--bs-table-active-color:#000;--bs-table-hover-bg:#e5c7ca;--bs-table-hover-color:#000;border-color:#dfc2c4;color:#000}div.tsml-ui .table-light{--bs-table-bg:#f8f9fa;--bs-table-striped-bg:#ecedee;--bs-table-striped-color:#000;--bs-table-active-bg:#dfe0e1;--bs-table-active-color:#000;--bs-table-hover-bg:#e5e6e7;--bs-table-hover-color:#000;border-color:#dfe0e1;color:#000}div.tsml-ui .table-dark{--bs-table-bg:#212529;--bs-table-striped-bg:#2c3034;--bs-table-striped-color:#fff;--bs-table-active-bg:#373b3e;--bs-table-active-color:#fff;--bs-table-hover-bg:#323539;--bs-table-hover-color:#fff;border-color:#373b3e;color:#fff}div.tsml-ui .table-responsive{-webkit-overflow-scrolling:touch;overflow-x:auto}@media (max-width:575.98px){div.tsml-ui .table-responsive-sm{-webkit-overflow-scrolling:touch;overflow-x:auto}}@media (max-width:767.98px){div.tsml-ui .table-responsive-md{-webkit-overflow-scrolling:touch;overflow-x:auto}}@media (max-width:991.98px){div.tsml-ui .table-responsive-lg{-webkit-overflow-scrolling:touch;overflow-x:auto}}@media (max-width:1199.98px){div.tsml-ui .table-responsive-xl{-webkit-overflow-scrolling:touch;overflow-x:auto}}@media (max-width:1399.98px){div.tsml-ui .table-responsive-xxl{-webkit-overflow-scrolling:touch;overflow-x:auto}}div.tsml-ui .form-label{margin-bottom:.5rem}div.tsml-ui .col-form-label{font-size:inherit;line-height:1.5;margin-bottom:0;padding-bottom:calc(.375rem + 1px);padding-top:calc(.375rem + 1px)}div.tsml-ui .col-form-label-lg{font-size:1.25rem;padding-bottom:calc(.5rem + 1px);padding-top:calc(.5rem + 1px)}div.tsml-ui .col-form-label-sm{font-size:.875rem;padding-bottom:calc(.25rem + 1px);padding-top:calc(.25rem + 1px)}div.tsml-ui .form-text{color:#6c757d;font-size:.875em;margin-top:.25rem}div.tsml-ui .form-control{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-clip:padding-box;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem;color:#212529;display:block;font-size:1rem;font-weight:400;line-height:1.5;padding:.375rem .75rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;width:100%}@media (prefers-reduced-motion:reduce){div.tsml-ui .form-control{transition:none}}div.tsml-ui .form-control[type=file]{overflow:hidden}div.tsml-ui .form-control[type=file]:not(:disabled):not([readonly]){cursor:pointer}div.tsml-ui .form-control:focus{background-color:#fff;border-color:#86b7fe;box-shadow:0 0 0 .25rem rgba(13,110,253,.25);color:#212529;outline:0}div.tsml-ui .form-control::-webkit-date-and-time-value{height:1.5em}div.tsml-ui .form-control::-moz-placeholder{color:#6c757d;opacity:1}div.tsml-ui .form-control:-ms-input-placeholder{color:#6c757d;opacity:1}div.tsml-ui .form-control::placeholder{color:#6c757d;opacity:1}div.tsml-ui .form-control:disabled,div.tsml-ui .form-control[readonly]{background-color:#e9ecef;opacity:1}div.tsml-ui .form-control::file-selector-button{-webkit-margin-end:.75rem;background-color:#e9ecef;border:0 solid;border-color:inherit;border-inline-end-width:1px;border-radius:0;color:#212529;margin:-.375rem -.75rem;margin-inline-end:.75rem;padding:.375rem .75rem;pointer-events:none;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){div.tsml-ui .form-control::-webkit-file-upload-button{-webkit-transition:none;transition:none}div.tsml-ui .form-control::file-selector-button{transition:none}}div.tsml-ui .form-control:hover:not(:disabled):not([readonly])::file-selector-button{background-color:#dde0e3}div.tsml-ui .form-control::-webkit-file-upload-button{-webkit-margin-end:.75rem;background-color:#e9ecef;border:0 solid;border-color:inherit;border-inline-end-width:1px;border-radius:0;color:#212529;margin:-.375rem -.75rem;margin-inline-end:.75rem;padding:.375rem .75rem;pointer-events:none;-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){div.tsml-ui .form-control::-webkit-file-upload-button{-webkit-transition:none;transition:none}}div.tsml-ui .form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button{background-color:#dde0e3}div.tsml-ui .form-control-plaintext{background-color:transparent;border:solid transparent;border-width:1px 0;color:#212529;display:block;line-height:1.5;margin-bottom:0;padding:.375rem 0;width:100%}div.tsml-ui .form-control-plaintext.form-control-lg,div.tsml-ui .form-control-plaintext.form-control-sm{padding-left:0;padding-right:0}div.tsml-ui .form-control-sm{border-radius:.2rem;font-size:.875rem;min-height:calc(1.5em + .5rem + 2px);padding:.25rem .5rem}div.tsml-ui .form-control-sm::file-selector-button{-webkit-margin-end:.5rem;margin:-.25rem -.5rem;margin-inline-end:.5rem;padding:.25rem .5rem}div.tsml-ui .form-control-sm::-webkit-file-upload-button{-webkit-margin-end:.5rem;margin:-.25rem -.5rem;margin-inline-end:.5rem;padding:.25rem .5rem}div.tsml-ui .form-control-lg{border-radius:.3rem;font-size:1.25rem;min-height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem}div.tsml-ui .form-control-lg::file-selector-button{-webkit-margin-end:1rem;margin:-.5rem -1rem;margin-inline-end:1rem;padding:.5rem 1rem}div.tsml-ui .form-control-lg::-webkit-file-upload-button{-webkit-margin-end:1rem;margin:-.5rem -1rem;margin-inline-end:1rem;padding:.5rem 1rem}div.tsml-ui textarea.form-control{min-height:calc(1.5em + .75rem + 2px)}div.tsml-ui textarea.form-control-sm{min-height:calc(1.5em + .5rem + 2px)}div.tsml-ui textarea.form-control-lg{min-height:calc(1.5em + 1rem + 2px)}div.tsml-ui .form-control-color{height:auto;padding:.375rem;width:3rem}div.tsml-ui .form-control-color:not(:disabled):not([readonly]){cursor:pointer}div.tsml-ui .form-control-color::-moz-color-swatch{border-radius:.25rem;height:1.5em}div.tsml-ui .form-control-color::-webkit-color-swatch{border-radius:.25rem;height:1.5em}div.tsml-ui .form-select{-moz-padding-start:calc(.75rem - 3px);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3E%3C/svg%3E\");background-position:right .75rem center;background-repeat:no-repeat;background-size:16px 12px;border:1px solid #ced4da;border-radius:.25rem;color:#212529;display:block;font-size:1rem;font-weight:400;line-height:1.5;padding:.375rem 2.25rem .375rem .75rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;width:100%}@media (prefers-reduced-motion:reduce){div.tsml-ui .form-select{transition:none}}div.tsml-ui .form-select:focus{border-color:#86b7fe;box-shadow:0 0 0 .25rem rgba(13,110,253,.25);outline:0}div.tsml-ui .form-select[multiple],div.tsml-ui .form-select[size]:not([size=\"1\"]){background-image:none;padding-right:.75rem}div.tsml-ui .form-select:disabled{background-color:#e9ecef}div.tsml-ui .form-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #212529}div.tsml-ui .form-select-sm{border-radius:.2rem;font-size:.875rem;padding-bottom:.25rem;padding-left:.5rem;padding-top:.25rem}div.tsml-ui .form-select-lg{border-radius:.3rem;font-size:1.25rem;padding-bottom:.5rem;padding-left:1rem;padding-top:.5rem}div.tsml-ui .form-check{display:block;margin-bottom:.125rem;min-height:1.5rem;padding-left:1.5em}div.tsml-ui .form-check .form-check-input{float:left;margin-left:-1.5em}div.tsml-ui .form-check-input{color-adjust:exact;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;background-position:50%;background-repeat:no-repeat;background-size:contain;border:1px solid rgba(0,0,0,.25);height:1em;margin-top:.25em;-webkit-print-color-adjust:exact;vertical-align:top;width:1em}div.tsml-ui .form-check-input[type=checkbox]{border-radius:.25em}div.tsml-ui .form-check-input[type=radio]{border-radius:50%}div.tsml-ui .form-check-input:active{filter:brightness(90%)}div.tsml-ui .form-check-input:focus{border-color:#86b7fe;box-shadow:0 0 0 .25rem rgba(13,110,253,.25);outline:0}div.tsml-ui .form-check-input:checked{background-color:#0d6efd;border-color:#0d6efd}div.tsml-ui .form-check-input:checked[type=checkbox]{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3E%3C/svg%3E\")}div.tsml-ui .form-check-input:checked[type=radio]{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='2' fill='%23fff'/%3E%3C/svg%3E\")}div.tsml-ui .form-check-input[type=checkbox]:indeterminate{background-color:#0d6efd;background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3E%3C/svg%3E\");border-color:#0d6efd}div.tsml-ui .form-check-input:disabled{filter:none;opacity:.5;pointer-events:none}div.tsml-ui .form-check-input:disabled~.form-check-label,div.tsml-ui .form-check-input[disabled]~.form-check-label{opacity:.5}div.tsml-ui .form-switch{padding-left:2.5em}div.tsml-ui .form-switch .form-check-input{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='rgba(0, 0, 0, 0.25)'/%3E%3C/svg%3E\");background-position:0;border-radius:2em;margin-left:-2.5em;transition:background-position .15s ease-in-out;width:2em}@media (prefers-reduced-motion:reduce){div.tsml-ui .form-switch .form-check-input{transition:none}}div.tsml-ui .form-switch .form-check-input:focus{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%2386b7fe'/%3E%3C/svg%3E\")}div.tsml-ui .form-switch .form-check-input:checked{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23fff'/%3E%3C/svg%3E\");background-position:100%}div.tsml-ui .form-check-inline{display:inline-block;margin-right:1rem}div.tsml-ui .btn-check{clip:rect(0,0,0,0);pointer-events:none;position:absolute}div.tsml-ui .btn-check:disabled+.btn,div.tsml-ui .btn-check[disabled]+.btn{filter:none;opacity:.65;pointer-events:none}div.tsml-ui .form-range{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent;height:1.5rem;padding:0;width:100%}div.tsml-ui .form-range:focus{outline:0}div.tsml-ui .form-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(13,110,253,.25)}div.tsml-ui .form-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(13,110,253,.25)}div.tsml-ui .form-range::-moz-focus-outer{border:0}div.tsml-ui .form-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background-color:#0d6efd;border:0;border-radius:1rem;height:1rem;margin-top:-.25rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;width:1rem}@media (prefers-reduced-motion:reduce){div.tsml-ui .form-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}div.tsml-ui .form-range::-webkit-slider-thumb:active{background-color:#b6d4fe}div.tsml-ui .form-range::-webkit-slider-runnable-track{background-color:#dee2e6;border-color:transparent;border-radius:1rem;color:transparent;cursor:pointer;height:.5rem;width:100%}div.tsml-ui .form-range::-moz-range-thumb{-moz-appearance:none;appearance:none;background-color:#0d6efd;border:0;border-radius:1rem;height:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;width:1rem}@media (prefers-reduced-motion:reduce){div.tsml-ui .form-range::-moz-range-thumb{-moz-transition:none;transition:none}}div.tsml-ui .form-range::-moz-range-thumb:active{background-color:#b6d4fe}div.tsml-ui .form-range::-moz-range-track{background-color:#dee2e6;border-color:transparent;border-radius:1rem;color:transparent;cursor:pointer;height:.5rem;width:100%}div.tsml-ui .form-range:disabled{pointer-events:none}div.tsml-ui .form-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}div.tsml-ui .form-range:disabled::-moz-range-thumb{background-color:#adb5bd}div.tsml-ui .form-floating{position:relative}div.tsml-ui .form-floating>.form-control,div.tsml-ui .form-floating>.form-select{height:calc(3.5rem + 2px);line-height:1.25}div.tsml-ui .form-floating>label{border:1px solid transparent;height:100%;left:0;padding:1rem .75rem;pointer-events:none;position:absolute;top:0;transform-origin:0 0;transition:opacity .1s ease-in-out,transform .1s ease-in-out}@media (prefers-reduced-motion:reduce){div.tsml-ui .form-floating>label{transition:none}}div.tsml-ui .form-floating>.form-control{padding:1rem .75rem}div.tsml-ui .form-floating>.form-control::-moz-placeholder{color:transparent}div.tsml-ui .form-floating>.form-control:-ms-input-placeholder{color:transparent}div.tsml-ui .form-floating>.form-control::placeholder{color:transparent}div.tsml-ui .form-floating>.form-control:not(:-moz-placeholder-shown){padding-bottom:.625rem;padding-top:1.625rem}div.tsml-ui .form-floating>.form-control:not(:-ms-input-placeholder){padding-bottom:.625rem;padding-top:1.625rem}div.tsml-ui .form-floating>.form-control:focus,div.tsml-ui .form-floating>.form-control:not(:placeholder-shown){padding-bottom:.625rem;padding-top:1.625rem}div.tsml-ui .form-floating>.form-control:-webkit-autofill{padding-bottom:.625rem;padding-top:1.625rem}div.tsml-ui .form-floating>.form-select{padding-bottom:.625rem;padding-top:1.625rem}div.tsml-ui .form-floating>.form-control:not(:-moz-placeholder-shown)~label{opacity:.65;transform:scale(.85) translateY(-.5rem) translateX(.15rem)}div.tsml-ui .form-floating>.form-control:not(:-ms-input-placeholder)~label{opacity:.65;transform:scale(.85) translateY(-.5rem) translateX(.15rem)}div.tsml-ui .form-floating>.form-control:focus~label,div.tsml-ui .form-floating>.form-control:not(:placeholder-shown)~label,div.tsml-ui .form-floating>.form-select~label{opacity:.65;transform:scale(.85) translateY(-.5rem) translateX(.15rem)}div.tsml-ui .form-floating>.form-control:-webkit-autofill~label{opacity:.65;transform:scale(.85) translateY(-.5rem) translateX(.15rem)}div.tsml-ui .input-group{align-items:stretch;display:flex;flex-wrap:wrap;position:relative;width:100%}div.tsml-ui .input-group>.form-control,div.tsml-ui .input-group>.form-select{flex:1 1 auto;min-width:0;position:relative;width:1%}div.tsml-ui .input-group>.form-control:focus,div.tsml-ui .input-group>.form-select:focus{z-index:3}div.tsml-ui .input-group .btn{position:relative;z-index:2}div.tsml-ui .input-group .btn:focus{z-index:3}div.tsml-ui .input-group-text{align-items:center;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem;color:#212529;display:flex;font-size:1rem;font-weight:400;line-height:1.5;padding:.375rem .75rem;text-align:center;white-space:nowrap}div.tsml-ui .input-group-lg>.btn,div.tsml-ui .input-group-lg>.form-control,div.tsml-ui .input-group-lg>.form-select,div.tsml-ui .input-group-lg>.input-group-text{border-radius:.3rem;font-size:1.25rem;padding:.5rem 1rem}div.tsml-ui .input-group-sm>.btn,div.tsml-ui .input-group-sm>.form-control,div.tsml-ui .input-group-sm>.form-select,div.tsml-ui .input-group-sm>.input-group-text{border-radius:.2rem;font-size:.875rem;padding:.25rem .5rem}div.tsml-ui .input-group-lg>.form-select,div.tsml-ui .input-group-sm>.form-select{padding-right:3rem}div.tsml-ui .input-group.has-validation>.dropdown-toggle:nth-last-child(n+4),div.tsml-ui .input-group.has-validation>:nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu),div.tsml-ui .input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3),div.tsml-ui .input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu){border-bottom-right-radius:0;border-top-right-radius:0}div.tsml-ui .input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback){border-bottom-left-radius:0;border-top-left-radius:0;margin-left:-1px}div.tsml-ui .valid-feedback{color:#198754;display:none;font-size:.875em;margin-top:.25rem;width:100%}div.tsml-ui .valid-tooltip{background-color:rgba(25,135,84,.9);border-radius:.25rem;color:#fff;display:none;font-size:.875rem;margin-top:.1rem;max-width:100%;padding:.25rem .5rem;position:absolute;top:100%;z-index:5}.was-validated div.tsml-ui:valid~.valid-feedback,.was-validated div.tsml-ui:valid~.valid-tooltip,div.tsml-ui.is-valid~.valid-feedback,div.tsml-ui.is-valid~.valid-tooltip{display:block}.was-validated div.tsml-ui .form-control:valid,div.tsml-ui .form-control.is-valid{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3E%3C/svg%3E\");background-position:right calc(.375em + .1875rem) center;background-repeat:no-repeat;background-size:calc(.75em + .375rem) calc(.75em + .375rem);border-color:#198754;padding-right:calc(1.5em + .75rem)}.was-validated div.tsml-ui .form-control:valid:focus,div.tsml-ui .form-control.is-valid:focus{border-color:#198754;box-shadow:0 0 0 .25rem rgba(25,135,84,.25)}.was-validated div.tsml-ui textarea.form-control:valid,div.tsml-ui textarea.form-control.is-valid{background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem);padding-right:calc(1.5em + .75rem)}.was-validated div.tsml-ui .form-select:valid,div.tsml-ui .form-select.is-valid{border-color:#198754}.was-validated div.tsml-ui .form-select:valid:not([multiple]):not([size]),.was-validated div.tsml-ui .form-select:valid:not([multiple])[size=\"1\"],div.tsml-ui .form-select.is-valid:not([multiple]):not([size]),div.tsml-ui .form-select.is-valid:not([multiple])[size=\"1\"]{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3E%3C/svg%3E\"),url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3E%3C/svg%3E\");background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem);padding-right:4.125rem}.was-validated div.tsml-ui .form-select:valid:focus,div.tsml-ui .form-select.is-valid:focus{border-color:#198754;box-shadow:0 0 0 .25rem rgba(25,135,84,.25)}.was-validated div.tsml-ui .form-check-input:valid,div.tsml-ui .form-check-input.is-valid{border-color:#198754}.was-validated div.tsml-ui .form-check-input:valid:checked,div.tsml-ui .form-check-input.is-valid:checked{background-color:#198754}.was-validated div.tsml-ui .form-check-input:valid:focus,div.tsml-ui .form-check-input.is-valid:focus{box-shadow:0 0 0 .25rem rgba(25,135,84,.25)}.was-validated div.tsml-ui .form-check-input:valid~.form-check-label,div.tsml-ui .form-check-input.is-valid~.form-check-label{color:#198754}div.tsml-ui .form-check-inline .form-check-input~.valid-feedback{margin-left:.5em}.was-validated div.tsml-ui .input-group .form-control:valid,.was-validated div.tsml-ui .input-group .form-select:valid,div.tsml-ui .input-group .form-control.is-valid,div.tsml-ui .input-group .form-select.is-valid{z-index:1}.was-validated div.tsml-ui .input-group .form-control:valid:focus,.was-validated div.tsml-ui .input-group .form-select:valid:focus,div.tsml-ui .input-group .form-control.is-valid:focus,div.tsml-ui .input-group .form-select.is-valid:focus{z-index:3}div.tsml-ui .invalid-feedback{color:#dc3545;display:none;font-size:.875em;margin-top:.25rem;width:100%}div.tsml-ui .invalid-tooltip{background-color:rgba(220,53,69,.9);border-radius:.25rem;color:#fff;display:none;font-size:.875rem;margin-top:.1rem;max-width:100%;padding:.25rem .5rem;position:absolute;top:100%;z-index:5}.was-validated div.tsml-ui:invalid~.invalid-feedback,.was-validated div.tsml-ui:invalid~.invalid-tooltip,div.tsml-ui.is-invalid~.invalid-feedback,div.tsml-ui.is-invalid~.invalid-tooltip{display:block}.was-validated div.tsml-ui .form-control:invalid,div.tsml-ui .form-control.is-invalid{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545'%3E%3Ccircle cx='6' cy='6' r='4.5'/%3E%3Cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3E%3Ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3E%3C/svg%3E\");background-position:right calc(.375em + .1875rem) center;background-repeat:no-repeat;background-size:calc(.75em + .375rem) calc(.75em + .375rem);border-color:#dc3545;padding-right:calc(1.5em + .75rem)}.was-validated div.tsml-ui .form-control:invalid:focus,div.tsml-ui .form-control.is-invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .25rem rgba(220,53,69,.25)}.was-validated div.tsml-ui textarea.form-control:invalid,div.tsml-ui textarea.form-control.is-invalid{background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem);padding-right:calc(1.5em + .75rem)}.was-validated div.tsml-ui .form-select:invalid,div.tsml-ui .form-select.is-invalid{border-color:#dc3545}.was-validated div.tsml-ui .form-select:invalid:not([multiple]):not([size]),.was-validated div.tsml-ui .form-select:invalid:not([multiple])[size=\"1\"],div.tsml-ui .form-select.is-invalid:not([multiple]):not([size]),div.tsml-ui .form-select.is-invalid:not([multiple])[size=\"1\"]{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3E%3C/svg%3E\"),url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545'%3E%3Ccircle cx='6' cy='6' r='4.5'/%3E%3Cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3E%3Ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3E%3C/svg%3E\");background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem);padding-right:4.125rem}.was-validated div.tsml-ui .form-select:invalid:focus,div.tsml-ui .form-select.is-invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .25rem rgba(220,53,69,.25)}.was-validated div.tsml-ui .form-check-input:invalid,div.tsml-ui .form-check-input.is-invalid{border-color:#dc3545}.was-validated div.tsml-ui .form-check-input:invalid:checked,div.tsml-ui .form-check-input.is-invalid:checked{background-color:#dc3545}.was-validated div.tsml-ui .form-check-input:invalid:focus,div.tsml-ui .form-check-input.is-invalid:focus{box-shadow:0 0 0 .25rem rgba(220,53,69,.25)}.was-validated div.tsml-ui .form-check-input:invalid~.form-check-label,div.tsml-ui .form-check-input.is-invalid~.form-check-label{color:#dc3545}div.tsml-ui .form-check-inline .form-check-input~.invalid-feedback{margin-left:.5em}.was-validated div.tsml-ui .input-group .form-control:invalid,.was-validated div.tsml-ui .input-group .form-select:invalid,div.tsml-ui .input-group .form-control.is-invalid,div.tsml-ui .input-group .form-select.is-invalid{z-index:2}.was-validated div.tsml-ui .input-group .form-control:invalid:focus,.was-validated div.tsml-ui .input-group .form-select:invalid:focus,div.tsml-ui .input-group .form-control.is-invalid:focus,div.tsml-ui .input-group .form-select.is-invalid:focus{z-index:3}div.tsml-ui .btn{background-color:transparent;border:1px solid transparent;border-radius:.25rem;color:#212529;cursor:pointer;display:inline-block;font-size:1rem;font-weight:400;line-height:1.5;padding:.375rem .75rem;text-align:center;text-decoration:none;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;vertical-align:middle}@media (prefers-reduced-motion:reduce){div.tsml-ui .btn{transition:none}}div.tsml-ui .btn:hover{color:#212529}.btn-check:focus+div.tsml-ui .btn,div.tsml-ui .btn:focus{box-shadow:0 0 0 .25rem rgba(13,110,253,.25);outline:0}div.tsml-ui .btn.disabled,div.tsml-ui .btn:disabled,fieldset:disabled div.tsml-ui .btn{opacity:.65;pointer-events:none}div.tsml-ui .btn-primary{background-color:#0d6efd;border-color:#0d6efd;color:#fff}div.tsml-ui .btn-primary:hover{background-color:#0b5ed7;border-color:#0a58ca;color:#fff}.btn-check:focus+div.tsml-ui .btn-primary,div.tsml-ui .btn-primary:focus{background-color:#0b5ed7;border-color:#0a58ca;box-shadow:0 0 0 .25rem rgba(49,132,253,.5);color:#fff}.btn-check:active+div.tsml-ui .btn-primary,.btn-check:checked+div.tsml-ui .btn-primary,.show>div.tsml-ui .btn-primary.dropdown-toggle,div.tsml-ui .btn-primary.active,div.tsml-ui .btn-primary:active{background-color:#0a58ca;border-color:#0a53be;color:#fff}.btn-check:active+div.tsml-ui .btn-primary:focus,.btn-check:checked+div.tsml-ui .btn-primary:focus,.show>div.tsml-ui .btn-primary.dropdown-toggle:focus,div.tsml-ui .btn-primary.active:focus,div.tsml-ui .btn-primary:active:focus{box-shadow:0 0 0 .25rem rgba(49,132,253,.5)}div.tsml-ui .btn-primary.disabled,div.tsml-ui .btn-primary:disabled{background-color:#0d6efd;border-color:#0d6efd;color:#fff}div.tsml-ui .btn-secondary{background-color:#6c757d;border-color:#6c757d;color:#fff}div.tsml-ui .btn-secondary:hover{background-color:#5c636a;border-color:#565e64;color:#fff}.btn-check:focus+div.tsml-ui .btn-secondary,div.tsml-ui .btn-secondary:focus{background-color:#5c636a;border-color:#565e64;box-shadow:0 0 0 .25rem hsla(208,6%,54%,.5);color:#fff}.btn-check:active+div.tsml-ui .btn-secondary,.btn-check:checked+div.tsml-ui .btn-secondary,.show>div.tsml-ui .btn-secondary.dropdown-toggle,div.tsml-ui .btn-secondary.active,div.tsml-ui .btn-secondary:active{background-color:#565e64;border-color:#51585e;color:#fff}.btn-check:active+div.tsml-ui .btn-secondary:focus,.btn-check:checked+div.tsml-ui .btn-secondary:focus,.show>div.tsml-ui .btn-secondary.dropdown-toggle:focus,div.tsml-ui .btn-secondary.active:focus,div.tsml-ui .btn-secondary:active:focus{box-shadow:0 0 0 .25rem hsla(208,6%,54%,.5)}div.tsml-ui .btn-secondary.disabled,div.tsml-ui .btn-secondary:disabled{background-color:#6c757d;border-color:#6c757d;color:#fff}div.tsml-ui .btn-success{background-color:#198754;border-color:#198754;color:#fff}div.tsml-ui .btn-success:hover{background-color:#157347;border-color:#146c43;color:#fff}.btn-check:focus+div.tsml-ui .btn-success,div.tsml-ui .btn-success:focus{background-color:#157347;border-color:#146c43;box-shadow:0 0 0 .25rem rgba(60,153,110,.5);color:#fff}.btn-check:active+div.tsml-ui .btn-success,.btn-check:checked+div.tsml-ui .btn-success,.show>div.tsml-ui .btn-success.dropdown-toggle,div.tsml-ui .btn-success.active,div.tsml-ui .btn-success:active{background-color:#146c43;border-color:#13653f;color:#fff}.btn-check:active+div.tsml-ui .btn-success:focus,.btn-check:checked+div.tsml-ui .btn-success:focus,.show>div.tsml-ui .btn-success.dropdown-toggle:focus,div.tsml-ui .btn-success.active:focus,div.tsml-ui .btn-success:active:focus{box-shadow:0 0 0 .25rem rgba(60,153,110,.5)}div.tsml-ui .btn-success.disabled,div.tsml-ui .btn-success:disabled{background-color:#198754;border-color:#198754;color:#fff}div.tsml-ui .btn-info{background-color:#0dcaf0;border-color:#0dcaf0;color:#000}div.tsml-ui .btn-info:hover{background-color:#31d2f2;border-color:#25cff2;color:#000}.btn-check:focus+div.tsml-ui .btn-info,div.tsml-ui .btn-info:focus{background-color:#31d2f2;border-color:#25cff2;box-shadow:0 0 0 .25rem rgba(11,172,204,.5);color:#000}.btn-check:active+div.tsml-ui .btn-info,.btn-check:checked+div.tsml-ui .btn-info,.show>div.tsml-ui .btn-info.dropdown-toggle,div.tsml-ui .btn-info.active,div.tsml-ui .btn-info:active{background-color:#3dd5f3;border-color:#25cff2;color:#000}.btn-check:active+div.tsml-ui .btn-info:focus,.btn-check:checked+div.tsml-ui .btn-info:focus,.show>div.tsml-ui .btn-info.dropdown-toggle:focus,div.tsml-ui .btn-info.active:focus,div.tsml-ui .btn-info:active:focus{box-shadow:0 0 0 .25rem rgba(11,172,204,.5)}div.tsml-ui .btn-info.disabled,div.tsml-ui .btn-info:disabled{background-color:#0dcaf0;border-color:#0dcaf0;color:#000}div.tsml-ui .btn-warning{background-color:#ffc107;border-color:#ffc107;color:#000}div.tsml-ui .btn-warning:hover{background-color:#ffca2c;border-color:#ffc720;color:#000}.btn-check:focus+div.tsml-ui .btn-warning,div.tsml-ui .btn-warning:focus{background-color:#ffca2c;border-color:#ffc720;box-shadow:0 0 0 .25rem rgba(217,164,6,.5);color:#000}.btn-check:active+div.tsml-ui .btn-warning,.btn-check:checked+div.tsml-ui .btn-warning,.show>div.tsml-ui .btn-warning.dropdown-toggle,div.tsml-ui .btn-warning.active,div.tsml-ui .btn-warning:active{background-color:#ffcd39;border-color:#ffc720;color:#000}.btn-check:active+div.tsml-ui .btn-warning:focus,.btn-check:checked+div.tsml-ui .btn-warning:focus,.show>div.tsml-ui .btn-warning.dropdown-toggle:focus,div.tsml-ui .btn-warning.active:focus,div.tsml-ui .btn-warning:active:focus{box-shadow:0 0 0 .25rem rgba(217,164,6,.5)}div.tsml-ui .btn-warning.disabled,div.tsml-ui .btn-warning:disabled{background-color:#ffc107;border-color:#ffc107;color:#000}div.tsml-ui .btn-danger{background-color:#dc3545;border-color:#dc3545;color:#fff}div.tsml-ui .btn-danger:hover{background-color:#bb2d3b;border-color:#b02a37;color:#fff}.btn-check:focus+div.tsml-ui .btn-danger,div.tsml-ui .btn-danger:focus{background-color:#bb2d3b;border-color:#b02a37;box-shadow:0 0 0 .25rem rgba(225,83,97,.5);color:#fff}.btn-check:active+div.tsml-ui .btn-danger,.btn-check:checked+div.tsml-ui .btn-danger,.show>div.tsml-ui .btn-danger.dropdown-toggle,div.tsml-ui .btn-danger.active,div.tsml-ui .btn-danger:active{background-color:#b02a37;border-color:#a52834;color:#fff}.btn-check:active+div.tsml-ui .btn-danger:focus,.btn-check:checked+div.tsml-ui .btn-danger:focus,.show>div.tsml-ui .btn-danger.dropdown-toggle:focus,div.tsml-ui .btn-danger.active:focus,div.tsml-ui .btn-danger:active:focus{box-shadow:0 0 0 .25rem rgba(225,83,97,.5)}div.tsml-ui .btn-danger.disabled,div.tsml-ui .btn-danger:disabled{background-color:#dc3545;border-color:#dc3545;color:#fff}div.tsml-ui .btn-light{background-color:#f8f9fa;border-color:#f8f9fa;color:#000}div.tsml-ui .btn-light:hover{background-color:#f9fafb;border-color:#f9fafb;color:#000}.btn-check:focus+div.tsml-ui .btn-light,div.tsml-ui .btn-light:focus{background-color:#f9fafb;border-color:#f9fafb;box-shadow:0 0 0 .25rem hsla(210,2%,83%,.5);color:#000}.btn-check:active+div.tsml-ui .btn-light,.btn-check:checked+div.tsml-ui .btn-light,.show>div.tsml-ui .btn-light.dropdown-toggle,div.tsml-ui .btn-light.active,div.tsml-ui .btn-light:active{background-color:#f9fafb;border-color:#f9fafb;color:#000}.btn-check:active+div.tsml-ui .btn-light:focus,.btn-check:checked+div.tsml-ui .btn-light:focus,.show>div.tsml-ui .btn-light.dropdown-toggle:focus,div.tsml-ui .btn-light.active:focus,div.tsml-ui .btn-light:active:focus{box-shadow:0 0 0 .25rem hsla(210,2%,83%,.5)}div.tsml-ui .btn-light.disabled,div.tsml-ui .btn-light:disabled{background-color:#f8f9fa;border-color:#f8f9fa;color:#000}div.tsml-ui .btn-dark{background-color:#212529;border-color:#212529;color:#fff}div.tsml-ui .btn-dark:hover{background-color:#1c1f23;border-color:#1a1e21;color:#fff}.btn-check:focus+div.tsml-ui .btn-dark,div.tsml-ui .btn-dark:focus{background-color:#1c1f23;border-color:#1a1e21;box-shadow:0 0 0 .25rem rgba(66,70,73,.5);color:#fff}.btn-check:active+div.tsml-ui .btn-dark,.btn-check:checked+div.tsml-ui .btn-dark,.show>div.tsml-ui .btn-dark.dropdown-toggle,div.tsml-ui .btn-dark.active,div.tsml-ui .btn-dark:active{background-color:#1a1e21;border-color:#191c1f;color:#fff}.btn-check:active+div.tsml-ui .btn-dark:focus,.btn-check:checked+div.tsml-ui .btn-dark:focus,.show>div.tsml-ui .btn-dark.dropdown-toggle:focus,div.tsml-ui .btn-dark.active:focus,div.tsml-ui .btn-dark:active:focus{box-shadow:0 0 0 .25rem rgba(66,70,73,.5)}div.tsml-ui .btn-dark.disabled,div.tsml-ui .btn-dark:disabled{background-color:#212529;border-color:#212529;color:#fff}div.tsml-ui .btn-outline-primary{border-color:#0d6efd;color:#0d6efd}div.tsml-ui .btn-outline-primary:hover{background-color:#0d6efd;border-color:#0d6efd;color:#fff}.btn-check:focus+div.tsml-ui .btn-outline-primary,div.tsml-ui .btn-outline-primary:focus{box-shadow:0 0 0 .25rem rgba(13,110,253,.5)}.btn-check:active+div.tsml-ui .btn-outline-primary,.btn-check:checked+div.tsml-ui .btn-outline-primary,div.tsml-ui .btn-outline-primary.active,div.tsml-ui .btn-outline-primary.dropdown-toggle.show,div.tsml-ui .btn-outline-primary:active{background-color:#0d6efd;border-color:#0d6efd;color:#fff}.btn-check:active+div.tsml-ui .btn-outline-primary:focus,.btn-check:checked+div.tsml-ui .btn-outline-primary:focus,div.tsml-ui .btn-outline-primary.active:focus,div.tsml-ui .btn-outline-primary.dropdown-toggle.show:focus,div.tsml-ui .btn-outline-primary:active:focus{box-shadow:0 0 0 .25rem rgba(13,110,253,.5)}div.tsml-ui .btn-outline-primary.disabled,div.tsml-ui .btn-outline-primary:disabled{background-color:transparent;color:#0d6efd}div.tsml-ui .btn-outline-secondary{border-color:#6c757d;color:#6c757d}div.tsml-ui .btn-outline-secondary:hover{background-color:#6c757d;border-color:#6c757d;color:#fff}.btn-check:focus+div.tsml-ui .btn-outline-secondary,div.tsml-ui .btn-outline-secondary:focus{box-shadow:0 0 0 .25rem hsla(208,7%,46%,.5)}.btn-check:active+div.tsml-ui .btn-outline-secondary,.btn-check:checked+div.tsml-ui .btn-outline-secondary,div.tsml-ui .btn-outline-secondary.active,div.tsml-ui .btn-outline-secondary.dropdown-toggle.show,div.tsml-ui .btn-outline-secondary:active{background-color:#6c757d;border-color:#6c757d;color:#fff}.btn-check:active+div.tsml-ui .btn-outline-secondary:focus,.btn-check:checked+div.tsml-ui .btn-outline-secondary:focus,div.tsml-ui .btn-outline-secondary.active:focus,div.tsml-ui .btn-outline-secondary.dropdown-toggle.show:focus,div.tsml-ui .btn-outline-secondary:active:focus{box-shadow:0 0 0 .25rem hsla(208,7%,46%,.5)}div.tsml-ui .btn-outline-secondary.disabled,div.tsml-ui .btn-outline-secondary:disabled{background-color:transparent;color:#6c757d}div.tsml-ui .btn-outline-success{border-color:#198754;color:#198754}div.tsml-ui .btn-outline-success:hover{background-color:#198754;border-color:#198754;color:#fff}.btn-check:focus+div.tsml-ui .btn-outline-success,div.tsml-ui .btn-outline-success:focus{box-shadow:0 0 0 .25rem rgba(25,135,84,.5)}.btn-check:active+div.tsml-ui .btn-outline-success,.btn-check:checked+div.tsml-ui .btn-outline-success,div.tsml-ui .btn-outline-success.active,div.tsml-ui .btn-outline-success.dropdown-toggle.show,div.tsml-ui .btn-outline-success:active{background-color:#198754;border-color:#198754;color:#fff}.btn-check:active+div.tsml-ui .btn-outline-success:focus,.btn-check:checked+div.tsml-ui .btn-outline-success:focus,div.tsml-ui .btn-outline-success.active:focus,div.tsml-ui .btn-outline-success.dropdown-toggle.show:focus,div.tsml-ui .btn-outline-success:active:focus{box-shadow:0 0 0 .25rem rgba(25,135,84,.5)}div.tsml-ui .btn-outline-success.disabled,div.tsml-ui .btn-outline-success:disabled{background-color:transparent;color:#198754}div.tsml-ui .btn-outline-info{border-color:#0dcaf0;color:#0dcaf0}div.tsml-ui .btn-outline-info:hover{background-color:#0dcaf0;border-color:#0dcaf0;color:#000}.btn-check:focus+div.tsml-ui .btn-outline-info,div.tsml-ui .btn-outline-info:focus{box-shadow:0 0 0 .25rem rgba(13,202,240,.5)}.btn-check:active+div.tsml-ui .btn-outline-info,.btn-check:checked+div.tsml-ui .btn-outline-info,div.tsml-ui .btn-outline-info.active,div.tsml-ui .btn-outline-info.dropdown-toggle.show,div.tsml-ui .btn-outline-info:active{background-color:#0dcaf0;border-color:#0dcaf0;color:#000}.btn-check:active+div.tsml-ui .btn-outline-info:focus,.btn-check:checked+div.tsml-ui .btn-outline-info:focus,div.tsml-ui .btn-outline-info.active:focus,div.tsml-ui .btn-outline-info.dropdown-toggle.show:focus,div.tsml-ui .btn-outline-info:active:focus{box-shadow:0 0 0 .25rem rgba(13,202,240,.5)}div.tsml-ui .btn-outline-info.disabled,div.tsml-ui .btn-outline-info:disabled{background-color:transparent;color:#0dcaf0}div.tsml-ui .btn-outline-warning{border-color:#ffc107;color:#ffc107}div.tsml-ui .btn-outline-warning:hover{background-color:#ffc107;border-color:#ffc107;color:#000}.btn-check:focus+div.tsml-ui .btn-outline-warning,div.tsml-ui .btn-outline-warning:focus{box-shadow:0 0 0 .25rem rgba(255,193,7,.5)}.btn-check:active+div.tsml-ui .btn-outline-warning,.btn-check:checked+div.tsml-ui .btn-outline-warning,div.tsml-ui .btn-outline-warning.active,div.tsml-ui .btn-outline-warning.dropdown-toggle.show,div.tsml-ui .btn-outline-warning:active{background-color:#ffc107;border-color:#ffc107;color:#000}.btn-check:active+div.tsml-ui .btn-outline-warning:focus,.btn-check:checked+div.tsml-ui .btn-outline-warning:focus,div.tsml-ui .btn-outline-warning.active:focus,div.tsml-ui .btn-outline-warning.dropdown-toggle.show:focus,div.tsml-ui .btn-outline-warning:active:focus{box-shadow:0 0 0 .25rem rgba(255,193,7,.5)}div.tsml-ui .btn-outline-warning.disabled,div.tsml-ui .btn-outline-warning:disabled{background-color:transparent;color:#ffc107}div.tsml-ui .btn-outline-danger{border-color:#dc3545;color:#dc3545}div.tsml-ui .btn-outline-danger:hover{background-color:#dc3545;border-color:#dc3545;color:#fff}.btn-check:focus+div.tsml-ui .btn-outline-danger,div.tsml-ui .btn-outline-danger:focus{box-shadow:0 0 0 .25rem rgba(220,53,69,.5)}.btn-check:active+div.tsml-ui .btn-outline-danger,.btn-check:checked+div.tsml-ui .btn-outline-danger,div.tsml-ui .btn-outline-danger.active,div.tsml-ui .btn-outline-danger.dropdown-toggle.show,div.tsml-ui .btn-outline-danger:active{background-color:#dc3545;border-color:#dc3545;color:#fff}.btn-check:active+div.tsml-ui .btn-outline-danger:focus,.btn-check:checked+div.tsml-ui .btn-outline-danger:focus,div.tsml-ui .btn-outline-danger.active:focus,div.tsml-ui .btn-outline-danger.dropdown-toggle.show:focus,div.tsml-ui .btn-outline-danger:active:focus{box-shadow:0 0 0 .25rem rgba(220,53,69,.5)}div.tsml-ui .btn-outline-danger.disabled,div.tsml-ui .btn-outline-danger:disabled{background-color:transparent;color:#dc3545}div.tsml-ui .btn-outline-light{border-color:#f8f9fa;color:#f8f9fa}div.tsml-ui .btn-outline-light:hover{background-color:#f8f9fa;border-color:#f8f9fa;color:#000}.btn-check:focus+div.tsml-ui .btn-outline-light,div.tsml-ui .btn-outline-light:focus{box-shadow:0 0 0 .25rem rgba(248,249,250,.5)}.btn-check:active+div.tsml-ui .btn-outline-light,.btn-check:checked+div.tsml-ui .btn-outline-light,div.tsml-ui .btn-outline-light.active,div.tsml-ui .btn-outline-light.dropdown-toggle.show,div.tsml-ui .btn-outline-light:active{background-color:#f8f9fa;border-color:#f8f9fa;color:#000}.btn-check:active+div.tsml-ui .btn-outline-light:focus,.btn-check:checked+div.tsml-ui .btn-outline-light:focus,div.tsml-ui .btn-outline-light.active:focus,div.tsml-ui .btn-outline-light.dropdown-toggle.show:focus,div.tsml-ui .btn-outline-light:active:focus{box-shadow:0 0 0 .25rem rgba(248,249,250,.5)}div.tsml-ui .btn-outline-light.disabled,div.tsml-ui .btn-outline-light:disabled{background-color:transparent;color:#f8f9fa}div.tsml-ui .btn-outline-dark{border-color:#212529;color:#212529}div.tsml-ui .btn-outline-dark:hover{background-color:#212529;border-color:#212529;color:#fff}.btn-check:focus+div.tsml-ui .btn-outline-dark,div.tsml-ui .btn-outline-dark:focus{box-shadow:0 0 0 .25rem rgba(33,37,41,.5)}.btn-check:active+div.tsml-ui .btn-outline-dark,.btn-check:checked+div.tsml-ui .btn-outline-dark,div.tsml-ui .btn-outline-dark.active,div.tsml-ui .btn-outline-dark.dropdown-toggle.show,div.tsml-ui .btn-outline-dark:active{background-color:#212529;border-color:#212529;color:#fff}.btn-check:active+div.tsml-ui .btn-outline-dark:focus,.btn-check:checked+div.tsml-ui .btn-outline-dark:focus,div.tsml-ui .btn-outline-dark.active:focus,div.tsml-ui .btn-outline-dark.dropdown-toggle.show:focus,div.tsml-ui .btn-outline-dark:active:focus{box-shadow:0 0 0 .25rem rgba(33,37,41,.5)}div.tsml-ui .btn-outline-dark.disabled,div.tsml-ui .btn-outline-dark:disabled{background-color:transparent;color:#212529}div.tsml-ui .btn-link{color:#0d6efd;font-weight:400;text-decoration:underline}div.tsml-ui .btn-link:hover{color:#0a58ca}div.tsml-ui .btn-link.disabled,div.tsml-ui .btn-link:disabled{color:#6c757d}div.tsml-ui .btn-group-lg>.btn,div.tsml-ui .btn-lg{border-radius:.3rem;font-size:1.25rem;padding:.5rem 1rem}div.tsml-ui .btn-group-sm>.btn,div.tsml-ui .btn-sm{border-radius:.2rem;font-size:.875rem;padding:.25rem .5rem}div.tsml-ui .dropdown,div.tsml-ui .dropend,div.tsml-ui .dropstart,div.tsml-ui .dropup{position:relative}div.tsml-ui .dropdown-toggle{white-space:nowrap}div.tsml-ui .dropdown-toggle:after{border-bottom:0;border-left:.3em solid transparent;border-right:.3em solid transparent;border-top:.3em solid;content:\"\";display:inline-block;margin-left:.255em;vertical-align:.255em}div.tsml-ui .dropdown-toggle:empty:after{margin-left:0}div.tsml-ui .dropdown-menu{background-clip:padding-box;background-color:#fff;border:1px solid rgba(0,0,0,.15);border-radius:.25rem;color:#212529;display:none;font-size:1rem;list-style:none;margin:0;min-width:10rem;padding:.5rem 0;position:absolute;text-align:left;z-index:1000}div.tsml-ui .dropdown-menu[data-bs-popper]{left:0;margin-top:.125rem;top:100%}div.tsml-ui .dropdown-menu-start{--bs-position:start}div.tsml-ui .dropdown-menu-start[data-bs-popper]{left:0;right:auto}div.tsml-ui .dropdown-menu-end{--bs-position:end}div.tsml-ui .dropdown-menu-end[data-bs-popper]{left:auto;right:0}@media (min-width:576px){div.tsml-ui .dropdown-menu-sm-start{--bs-position:start}div.tsml-ui .dropdown-menu-sm-start[data-bs-popper]{left:0;right:auto}div.tsml-ui .dropdown-menu-sm-end{--bs-position:end}div.tsml-ui .dropdown-menu-sm-end[data-bs-popper]{left:auto;right:0}}@media (min-width:768px){div.tsml-ui .dropdown-menu-md-start{--bs-position:start}div.tsml-ui .dropdown-menu-md-start[data-bs-popper]{left:0;right:auto}div.tsml-ui .dropdown-menu-md-end{--bs-position:end}div.tsml-ui .dropdown-menu-md-end[data-bs-popper]{left:auto;right:0}}@media (min-width:992px){div.tsml-ui .dropdown-menu-lg-start{--bs-position:start}div.tsml-ui .dropdown-menu-lg-start[data-bs-popper]{left:0;right:auto}div.tsml-ui .dropdown-menu-lg-end{--bs-position:end}div.tsml-ui .dropdown-menu-lg-end[data-bs-popper]{left:auto;right:0}}@media (min-width:1200px){div.tsml-ui .dropdown-menu-xl-start{--bs-position:start}div.tsml-ui .dropdown-menu-xl-start[data-bs-popper]{left:0;right:auto}div.tsml-ui .dropdown-menu-xl-end{--bs-position:end}div.tsml-ui .dropdown-menu-xl-end[data-bs-popper]{left:auto;right:0}}@media (min-width:1400px){div.tsml-ui .dropdown-menu-xxl-start{--bs-position:start}div.tsml-ui .dropdown-menu-xxl-start[data-bs-popper]{left:0;right:auto}div.tsml-ui .dropdown-menu-xxl-end{--bs-position:end}div.tsml-ui .dropdown-menu-xxl-end[data-bs-popper]{left:auto;right:0}}div.tsml-ui .dropup .dropdown-menu[data-bs-popper]{bottom:100%;margin-bottom:.125rem;margin-top:0;top:auto}div.tsml-ui .dropup .dropdown-toggle:after{border-bottom:.3em solid;border-left:.3em solid transparent;border-right:.3em solid transparent;border-top:0;content:\"\";display:inline-block;margin-left:.255em;vertical-align:.255em}div.tsml-ui .dropup .dropdown-toggle:empty:after{margin-left:0}div.tsml-ui .dropend .dropdown-menu[data-bs-popper]{left:100%;margin-left:.125rem;margin-top:0;right:auto;top:0}div.tsml-ui .dropend .dropdown-toggle:after{border-bottom:.3em solid transparent;border-left:.3em solid;border-right:0;border-top:.3em solid transparent;content:\"\";display:inline-block;margin-left:.255em;vertical-align:.255em}div.tsml-ui .dropend .dropdown-toggle:empty:after{margin-left:0}div.tsml-ui .dropend .dropdown-toggle:after{vertical-align:0}div.tsml-ui .dropstart .dropdown-menu[data-bs-popper]{left:auto;margin-right:.125rem;margin-top:0;right:100%;top:0}div.tsml-ui .dropstart .dropdown-toggle:after{content:\"\";display:inline-block;display:none;margin-left:.255em;vertical-align:.255em}div.tsml-ui .dropstart .dropdown-toggle:before{border-bottom:.3em solid transparent;border-right:.3em solid;border-top:.3em solid transparent;content:\"\";display:inline-block;margin-right:.255em;vertical-align:.255em}div.tsml-ui .dropstart .dropdown-toggle:empty:after{margin-left:0}div.tsml-ui .dropstart .dropdown-toggle:before{vertical-align:0}div.tsml-ui .dropdown-divider{border-top:1px solid rgba(0,0,0,.15);height:0;margin:.5rem 0;overflow:hidden}div.tsml-ui .dropdown-item{background-color:transparent;border:0;clear:both;color:#212529;display:block;font-weight:400;padding:.25rem 1rem;text-align:inherit;text-decoration:none;white-space:nowrap;width:100%}div.tsml-ui .dropdown-item:focus,div.tsml-ui .dropdown-item:hover{background-color:#e9ecef;color:#1e2125}div.tsml-ui .dropdown-item.active,div.tsml-ui .dropdown-item:active{background-color:#0d6efd;color:#fff;text-decoration:none}div.tsml-ui .dropdown-item.disabled,div.tsml-ui .dropdown-item:disabled{background-color:transparent;color:#adb5bd;pointer-events:none}div.tsml-ui .dropdown-menu.show{display:block}div.tsml-ui .dropdown-header{color:#6c757d;display:block;font-size:.875rem;margin-bottom:0;padding:.5rem 1rem;white-space:nowrap}div.tsml-ui .dropdown-item-text{color:#212529;display:block;padding:.25rem 1rem}div.tsml-ui .dropdown-menu-dark{background-color:#343a40;border-color:rgba(0,0,0,.15);color:#dee2e6}div.tsml-ui .dropdown-menu-dark .dropdown-item{color:#dee2e6}div.tsml-ui .dropdown-menu-dark .dropdown-item:focus,div.tsml-ui .dropdown-menu-dark .dropdown-item:hover{background-color:hsla(0,0%,100%,.15);color:#fff}div.tsml-ui .dropdown-menu-dark .dropdown-item.active,div.tsml-ui .dropdown-menu-dark .dropdown-item:active{background-color:#0d6efd;color:#fff}div.tsml-ui .dropdown-menu-dark .dropdown-item.disabled,div.tsml-ui .dropdown-menu-dark .dropdown-item:disabled{color:#adb5bd}div.tsml-ui .dropdown-menu-dark .dropdown-divider{border-color:rgba(0,0,0,.15)}div.tsml-ui .dropdown-menu-dark .dropdown-item-text{color:#dee2e6}div.tsml-ui .dropdown-menu-dark .dropdown-header{color:#adb5bd}div.tsml-ui .btn-group,div.tsml-ui .btn-group-vertical{display:inline-flex;position:relative;vertical-align:middle}div.tsml-ui .btn-group-vertical>.btn,div.tsml-ui .btn-group>.btn{flex:1 1 auto;position:relative}div.tsml-ui .btn-group-vertical>.btn-check:checked+.btn,div.tsml-ui .btn-group-vertical>.btn-check:focus+.btn,div.tsml-ui .btn-group-vertical>.btn.active,div.tsml-ui .btn-group-vertical>.btn:active,div.tsml-ui .btn-group-vertical>.btn:focus,div.tsml-ui .btn-group-vertical>.btn:hover,div.tsml-ui .btn-group>.btn-check:checked+.btn,div.tsml-ui .btn-group>.btn-check:focus+.btn,div.tsml-ui .btn-group>.btn.active,div.tsml-ui .btn-group>.btn:active,div.tsml-ui .btn-group>.btn:focus,div.tsml-ui .btn-group>.btn:hover{z-index:1}div.tsml-ui .btn-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-start}div.tsml-ui .btn-toolbar .input-group{width:auto}div.tsml-ui .btn-group>.btn-group:not(:first-child),div.tsml-ui .btn-group>.btn:not(:first-child){margin-left:-1px}div.tsml-ui .btn-group>.btn-group:not(:last-child)>.btn,div.tsml-ui .btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}div.tsml-ui .btn-group>.btn-group:not(:first-child)>.btn,div.tsml-ui .btn-group>.btn:nth-child(n+3),div.tsml-ui .btn-group>:not(.btn-check)+.btn{border-bottom-left-radius:0;border-top-left-radius:0}div.tsml-ui .dropdown-toggle-split{padding-left:.5625rem;padding-right:.5625rem}.dropend div.tsml-ui .dropdown-toggle-split:after,.dropup div.tsml-ui .dropdown-toggle-split:after,div.tsml-ui .dropdown-toggle-split:after{margin-left:0}.dropstart div.tsml-ui .dropdown-toggle-split:before{margin-right:0}div.tsml-ui .btn-group-sm>.btn+.dropdown-toggle-split,div.tsml-ui .btn-sm+.dropdown-toggle-split{padding-left:.375rem;padding-right:.375rem}div.tsml-ui .btn-group-lg>.btn+.dropdown-toggle-split,div.tsml-ui .btn-lg+.dropdown-toggle-split{padding-left:.75rem;padding-right:.75rem}div.tsml-ui .btn-group-vertical{align-items:flex-start;flex-direction:column;justify-content:center}div.tsml-ui .btn-group-vertical>.btn,div.tsml-ui .btn-group-vertical>.btn-group{width:100%}div.tsml-ui .btn-group-vertical>.btn-group:not(:first-child),div.tsml-ui .btn-group-vertical>.btn:not(:first-child){margin-top:-1px}div.tsml-ui .btn-group-vertical>.btn-group:not(:last-child)>.btn,div.tsml-ui .btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-left-radius:0;border-bottom-right-radius:0}div.tsml-ui .btn-group-vertical>.btn-group:not(:first-child)>.btn,div.tsml-ui .btn-group-vertical>.btn~.btn{border-top-left-radius:0;border-top-right-radius:0}div.tsml-ui .badge{border-radius:.25rem;color:#fff;display:inline-block;font-size:.75em;font-weight:700;line-height:1;padding:.35em .65em;text-align:center;vertical-align:baseline;white-space:nowrap}div.tsml-ui .badge:empty{display:none}div.tsml-ui .btn .badge{position:relative;top:-1px}div.tsml-ui .alert{border:1px solid transparent;border-radius:.25rem;margin-bottom:1rem;padding:1rem;position:relative}div.tsml-ui .alert-heading{color:inherit}div.tsml-ui .alert-link{font-weight:700}div.tsml-ui .alert-dismissible{padding-right:3rem}div.tsml-ui .alert-dismissible .btn-close{padding:1.25rem 1rem;position:absolute;right:0;top:0;z-index:2}div.tsml-ui .alert-primary{background-color:#cfe2ff;border-color:#b6d4fe;color:#084298}div.tsml-ui .alert-primary .alert-link{color:#06357a}div.tsml-ui .alert-secondary{background-color:#e2e3e5;border-color:#d3d6d8;color:#41464b}div.tsml-ui .alert-secondary .alert-link{color:#34383c}div.tsml-ui .alert-success{background-color:#d1e7dd;border-color:#badbcc;color:#0f5132}div.tsml-ui .alert-success .alert-link{color:#0c4128}div.tsml-ui .alert-info{background-color:#cff4fc;border-color:#b6effb;color:#055160}div.tsml-ui .alert-info .alert-link{color:#04414d}div.tsml-ui .alert-warning{background-color:#fff3cd;border-color:#ffecb5;color:#664d03}div.tsml-ui .alert-warning .alert-link{color:#523e02}div.tsml-ui .alert-danger{background-color:#f8d7da;border-color:#f5c2c7;color:#842029}div.tsml-ui .alert-danger .alert-link{color:#6a1a21}div.tsml-ui .alert-light{background-color:#fefefe;border-color:#fdfdfe;color:#636464}div.tsml-ui .alert-light .alert-link{color:#4f5050}div.tsml-ui .alert-dark{background-color:#d3d3d4;border-color:#bcbebf;color:#141619}div.tsml-ui .alert-dark .alert-link{color:#101214}div.tsml-ui .list-group{border-radius:.25rem;display:flex;flex-direction:column;margin-bottom:0;padding-left:0}div.tsml-ui .list-group-numbered{counter-reset:section;list-style-type:none}div.tsml-ui .list-group-numbered>li:before{content:counters(section,\".\") \". \";counter-increment:section}div.tsml-ui .list-group-item-action{color:#495057;text-align:inherit;width:100%}div.tsml-ui .list-group-item-action:focus,div.tsml-ui .list-group-item-action:hover{background-color:#f8f9fa;color:#495057;text-decoration:none;z-index:1}div.tsml-ui .list-group-item-action:active{background-color:#e9ecef;color:#212529}div.tsml-ui .list-group-item{background-color:#fff;border:1px solid rgba(0,0,0,.125);color:#212529;display:block;padding:.5rem 1rem;position:relative;text-decoration:none}div.tsml-ui .list-group-item:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}div.tsml-ui .list-group-item:last-child{border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}div.tsml-ui .list-group-item.disabled,div.tsml-ui .list-group-item:disabled{background-color:#fff;color:#6c757d;pointer-events:none}div.tsml-ui .list-group-item.active{background-color:#0d6efd;border-color:#0d6efd;color:#fff;z-index:2}div.tsml-ui .list-group-item+div.tsml-ui .list-group-item{border-top-width:0}div.tsml-ui .list-group-item+div.tsml-ui .list-group-item.active{border-top-width:1px;margin-top:-1px}div.tsml-ui .list-group-horizontal{flex-direction:row}div.tsml-ui .list-group-horizontal>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}div.tsml-ui .list-group-horizontal>.list-group-item:last-child{border-bottom-left-radius:0;border-top-right-radius:.25rem}div.tsml-ui .list-group-horizontal>.list-group-item.active{margin-top:0}div.tsml-ui .list-group-horizontal>.list-group-item+.list-group-item{border-left-width:0;border-top-width:1px}div.tsml-ui .list-group-horizontal>.list-group-item+.list-group-item.active{border-left-width:1px;margin-left:-1px}@media (min-width:576px){div.tsml-ui .list-group-horizontal-sm{flex-direction:row}div.tsml-ui .list-group-horizontal-sm>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}div.tsml-ui .list-group-horizontal-sm>.list-group-item:last-child{border-bottom-left-radius:0;border-top-right-radius:.25rem}div.tsml-ui .list-group-horizontal-sm>.list-group-item.active{margin-top:0}div.tsml-ui .list-group-horizontal-sm>.list-group-item+.list-group-item{border-left-width:0;border-top-width:1px}div.tsml-ui .list-group-horizontal-sm>.list-group-item+.list-group-item.active{border-left-width:1px;margin-left:-1px}}@media (min-width:768px){div.tsml-ui .list-group-horizontal-md{flex-direction:row}div.tsml-ui .list-group-horizontal-md>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}div.tsml-ui .list-group-horizontal-md>.list-group-item:last-child{border-bottom-left-radius:0;border-top-right-radius:.25rem}div.tsml-ui .list-group-horizontal-md>.list-group-item.active{margin-top:0}div.tsml-ui .list-group-horizontal-md>.list-group-item+.list-group-item{border-left-width:0;border-top-width:1px}div.tsml-ui .list-group-horizontal-md>.list-group-item+.list-group-item.active{border-left-width:1px;margin-left:-1px}}@media (min-width:992px){div.tsml-ui .list-group-horizontal-lg{flex-direction:row}div.tsml-ui .list-group-horizontal-lg>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}div.tsml-ui .list-group-horizontal-lg>.list-group-item:last-child{border-bottom-left-radius:0;border-top-right-radius:.25rem}div.tsml-ui .list-group-horizontal-lg>.list-group-item.active{margin-top:0}div.tsml-ui .list-group-horizontal-lg>.list-group-item+.list-group-item{border-left-width:0;border-top-width:1px}div.tsml-ui .list-group-horizontal-lg>.list-group-item+.list-group-item.active{border-left-width:1px;margin-left:-1px}}@media (min-width:1200px){div.tsml-ui .list-group-horizontal-xl{flex-direction:row}div.tsml-ui .list-group-horizontal-xl>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}div.tsml-ui .list-group-horizontal-xl>.list-group-item:last-child{border-bottom-left-radius:0;border-top-right-radius:.25rem}div.tsml-ui .list-group-horizontal-xl>.list-group-item.active{margin-top:0}div.tsml-ui .list-group-horizontal-xl>.list-group-item+.list-group-item{border-left-width:0;border-top-width:1px}div.tsml-ui .list-group-horizontal-xl>.list-group-item+.list-group-item.active{border-left-width:1px;margin-left:-1px}}@media (min-width:1400px){div.tsml-ui .list-group-horizontal-xxl{flex-direction:row}div.tsml-ui .list-group-horizontal-xxl>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}div.tsml-ui .list-group-horizontal-xxl>.list-group-item:last-child{border-bottom-left-radius:0;border-top-right-radius:.25rem}div.tsml-ui .list-group-horizontal-xxl>.list-group-item.active{margin-top:0}div.tsml-ui .list-group-horizontal-xxl>.list-group-item+.list-group-item{border-left-width:0;border-top-width:1px}div.tsml-ui .list-group-horizontal-xxl>.list-group-item+.list-group-item.active{border-left-width:1px;margin-left:-1px}}div.tsml-ui .list-group-flush{border-radius:0}div.tsml-ui .list-group-flush>.list-group-item{border-width:0 0 1px}div.tsml-ui .list-group-flush>.list-group-item:last-child{border-bottom-width:0}div.tsml-ui .list-group-item-primary{background-color:#cfe2ff;color:#084298}div.tsml-ui .list-group-item-primary.list-group-item-action:focus,div.tsml-ui .list-group-item-primary.list-group-item-action:hover{background-color:#bacbe6;color:#084298}div.tsml-ui .list-group-item-primary.list-group-item-action.active{background-color:#084298;border-color:#084298;color:#fff}div.tsml-ui .list-group-item-secondary{background-color:#e2e3e5;color:#41464b}div.tsml-ui .list-group-item-secondary.list-group-item-action:focus,div.tsml-ui .list-group-item-secondary.list-group-item-action:hover{background-color:#cbccce;color:#41464b}div.tsml-ui .list-group-item-secondary.list-group-item-action.active{background-color:#41464b;border-color:#41464b;color:#fff}div.tsml-ui .list-group-item-success{background-color:#d1e7dd;color:#0f5132}div.tsml-ui .list-group-item-success.list-group-item-action:focus,div.tsml-ui .list-group-item-success.list-group-item-action:hover{background-color:#bcd0c7;color:#0f5132}div.tsml-ui .list-group-item-success.list-group-item-action.active{background-color:#0f5132;border-color:#0f5132;color:#fff}div.tsml-ui .list-group-item-info{background-color:#cff4fc;color:#055160}div.tsml-ui .list-group-item-info.list-group-item-action:focus,div.tsml-ui .list-group-item-info.list-group-item-action:hover{background-color:#badce3;color:#055160}div.tsml-ui .list-group-item-info.list-group-item-action.active{background-color:#055160;border-color:#055160;color:#fff}div.tsml-ui .list-group-item-warning{background-color:#fff3cd;color:#664d03}div.tsml-ui .list-group-item-warning.list-group-item-action:focus,div.tsml-ui .list-group-item-warning.list-group-item-action:hover{background-color:#e6dbb9;color:#664d03}div.tsml-ui .list-group-item-warning.list-group-item-action.active{background-color:#664d03;border-color:#664d03;color:#fff}div.tsml-ui .list-group-item-danger{background-color:#f8d7da;color:#842029}div.tsml-ui .list-group-item-danger.list-group-item-action:focus,div.tsml-ui .list-group-item-danger.list-group-item-action:hover{background-color:#dfc2c4;color:#842029}div.tsml-ui .list-group-item-danger.list-group-item-action.active{background-color:#842029;border-color:#842029;color:#fff}div.tsml-ui .list-group-item-light{background-color:#fefefe;color:#636464}div.tsml-ui .list-group-item-light.list-group-item-action:focus,div.tsml-ui .list-group-item-light.list-group-item-action:hover{background-color:#e5e5e5;color:#636464}div.tsml-ui .list-group-item-light.list-group-item-action.active{background-color:#636464;border-color:#636464;color:#fff}div.tsml-ui .list-group-item-dark{background-color:#d3d3d4;color:#141619}div.tsml-ui .list-group-item-dark.list-group-item-action:focus,div.tsml-ui .list-group-item-dark.list-group-item-action:hover{background-color:#bebebf;color:#141619}div.tsml-ui .list-group-item-dark.list-group-item-action.active{background-color:#141619;border-color:#141619;color:#fff}@-webkit-keyframes spinner-border{to{transform:rotate(1turn)}}@keyframes spinner-border{to{transform:rotate(1turn)}}div.tsml-ui .spinner-border{-webkit-animation:spinner-border .75s linear infinite;animation:spinner-border .75s linear infinite;border:.25em solid;border-radius:50%;border-right:.25em solid transparent;display:inline-block;height:2rem;vertical-align:-.125em;width:2rem}div.tsml-ui .spinner-border-sm{border-width:.2em;height:1rem;width:1rem}@-webkit-keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}div.tsml-ui .spinner-grow{-webkit-animation:spinner-grow .75s linear infinite;animation:spinner-grow .75s linear infinite;background-color:currentColor;border-radius:50%;display:inline-block;height:2rem;opacity:0;vertical-align:-.125em;width:2rem}div.tsml-ui .spinner-grow-sm{height:1rem;width:1rem}@media (prefers-reduced-motion:reduce){div.tsml-ui .spinner-border,div.tsml-ui .spinner-grow{-webkit-animation-duration:1.5s;animation-duration:1.5s}}div.tsml-ui .offcanvas{background-clip:padding-box;background-color:#fff;bottom:0;display:flex;flex-direction:column;max-width:100%;outline:0;position:fixed;transition:transform .3s ease-in-out;visibility:hidden;z-index:1045}@media (prefers-reduced-motion:reduce){div.tsml-ui .offcanvas{transition:none}}div.tsml-ui .offcanvas-backdrop{background-color:#000;height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:1040}div.tsml-ui .offcanvas-backdrop.fade{opacity:0}div.tsml-ui .offcanvas-backdrop.show{opacity:.5}div.tsml-ui .offcanvas-header{align-items:center;display:flex;justify-content:space-between;padding:1rem}div.tsml-ui .offcanvas-header .btn-close{margin-bottom:-.5rem;margin-right:-.5rem;margin-top:-.5rem;padding:.5rem}div.tsml-ui .offcanvas-title{line-height:1.5;margin-bottom:0}div.tsml-ui .offcanvas-body{flex-grow:1;overflow-y:auto;padding:1rem}div.tsml-ui .offcanvas-start{border-right:1px solid rgba(0,0,0,.2);left:0;top:0;transform:translateX(-100%);width:400px}div.tsml-ui .offcanvas-end{border-left:1px solid rgba(0,0,0,.2);right:0;top:0;transform:translateX(100%);width:400px}div.tsml-ui .offcanvas-top{border-bottom:1px solid rgba(0,0,0,.2);height:30vh;left:0;max-height:100%;right:0;top:0;transform:translateY(-100%)}div.tsml-ui .offcanvas-bottom{border-top:1px solid rgba(0,0,0,.2);height:30vh;left:0;max-height:100%;right:0;transform:translateY(100%)}div.tsml-ui .offcanvas.show{transform:none}div.tsml-ui .clearfix:after{clear:both;content:\"\";display:block}div.tsml-ui .link-primary{color:#0d6efd}div.tsml-ui .link-primary:focus,div.tsml-ui .link-primary:hover{color:#0a58ca}div.tsml-ui .link-secondary{color:#6c757d}div.tsml-ui .link-secondary:focus,div.tsml-ui .link-secondary:hover{color:#565e64}div.tsml-ui .link-success{color:#198754}div.tsml-ui .link-success:focus,div.tsml-ui .link-success:hover{color:#146c43}div.tsml-ui .link-info{color:#0dcaf0}div.tsml-ui .link-info:focus,div.tsml-ui .link-info:hover{color:#3dd5f3}div.tsml-ui .link-warning{color:#ffc107}div.tsml-ui .link-warning:focus,div.tsml-ui .link-warning:hover{color:#ffcd39}div.tsml-ui .link-danger{color:#dc3545}div.tsml-ui .link-danger:focus,div.tsml-ui .link-danger:hover{color:#b02a37}div.tsml-ui .link-light{color:#f8f9fa}div.tsml-ui .link-light:focus,div.tsml-ui .link-light:hover{color:#f9fafb}div.tsml-ui .link-dark{color:#212529}div.tsml-ui .link-dark:focus,div.tsml-ui .link-dark:hover{color:#1a1e21}div.tsml-ui .ratio{position:relative;width:100%}div.tsml-ui .ratio:before{content:\"\";display:block;padding-top:var(--bs-aspect-ratio)}div.tsml-ui .ratio>*{height:100%;left:0;position:absolute;top:0;width:100%}div.tsml-ui .ratio-1x1{--bs-aspect-ratio:100%}div.tsml-ui .ratio-4x3{--bs-aspect-ratio:75%}div.tsml-ui .ratio-16x9{--bs-aspect-ratio:56.25%}div.tsml-ui .ratio-21x9{--bs-aspect-ratio:42.8571428571%}div.tsml-ui .fixed-top{left:0;position:fixed;right:0;top:0;z-index:1030}div.tsml-ui .fixed-bottom{bottom:0;left:0;position:fixed;right:0;z-index:1030}div.tsml-ui .sticky-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}@media (min-width:576px){div.tsml-ui .sticky-sm-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}@media (min-width:768px){div.tsml-ui .sticky-md-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}@media (min-width:992px){div.tsml-ui .sticky-lg-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}@media (min-width:1200px){div.tsml-ui .sticky-xl-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}@media (min-width:1400px){div.tsml-ui .sticky-xxl-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}div.tsml-ui .hstack{align-items:center;align-self:stretch;display:flex;flex-direction:row}div.tsml-ui .vstack{align-self:stretch;display:flex;flex:1 1 auto;flex-direction:column}div.tsml-ui .visually-hidden,div.tsml-ui .visually-hidden-focusable:not(:focus):not(:focus-within){clip:rect(0,0,0,0)!important;border:0!important;height:1px!important;margin:-1px!important;overflow:hidden!important;padding:0!important;position:absolute!important;white-space:nowrap!important;width:1px!important}div.tsml-ui .stretched-link:after{bottom:0;content:\"\";left:0;position:absolute;right:0;top:0;z-index:1}div.tsml-ui .text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}div.tsml-ui .vr{align-self:stretch;background-color:currentColor;display:inline-block;min-height:1em;opacity:.25;width:1px}div.tsml-ui .align-baseline{vertical-align:baseline!important}div.tsml-ui .align-top{vertical-align:top!important}div.tsml-ui .align-middle{vertical-align:middle!important}div.tsml-ui .align-bottom{vertical-align:bottom!important}div.tsml-ui .align-text-bottom{vertical-align:text-bottom!important}div.tsml-ui .align-text-top{vertical-align:text-top!important}div.tsml-ui .float-start{float:left!important}div.tsml-ui .float-end{float:right!important}div.tsml-ui .float-none{float:none!important}div.tsml-ui .opacity-0{opacity:0!important}div.tsml-ui .opacity-25{opacity:.25!important}div.tsml-ui .opacity-50{opacity:.5!important}div.tsml-ui .opacity-75{opacity:.75!important}div.tsml-ui .opacity-100{opacity:1!important}div.tsml-ui .overflow-auto{overflow:auto!important}div.tsml-ui .overflow-hidden{overflow:hidden!important}div.tsml-ui .overflow-visible{overflow:visible!important}div.tsml-ui .overflow-scroll{overflow:scroll!important}div.tsml-ui .d-inline{display:inline!important}div.tsml-ui .d-inline-block{display:inline-block!important}div.tsml-ui .d-block{display:block!important}div.tsml-ui .d-grid{display:grid!important}div.tsml-ui .d-table{display:table!important}div.tsml-ui .d-table-row{display:table-row!important}div.tsml-ui .d-table-cell{display:table-cell!important}div.tsml-ui .d-flex{display:flex!important}div.tsml-ui .d-inline-flex{display:inline-flex!important}div.tsml-ui .d-none{display:none!important}div.tsml-ui .shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}div.tsml-ui .shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}div.tsml-ui .shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}div.tsml-ui .shadow-none{box-shadow:none!important}div.tsml-ui .position-static{position:static!important}div.tsml-ui .position-relative{position:relative!important}div.tsml-ui .position-absolute{position:absolute!important}div.tsml-ui .position-fixed{position:fixed!important}div.tsml-ui .position-sticky{position:-webkit-sticky!important;position:sticky!important}div.tsml-ui .top-0{top:0!important}div.tsml-ui .top-50{top:50%!important}div.tsml-ui .top-100{top:100%!important}div.tsml-ui .bottom-0{bottom:0!important}div.tsml-ui .bottom-50{bottom:50%!important}div.tsml-ui .bottom-100{bottom:100%!important}div.tsml-ui .start-0{left:0!important}div.tsml-ui .start-50{left:50%!important}div.tsml-ui .start-100{left:100%!important}div.tsml-ui .end-0{right:0!important}div.tsml-ui .end-50{right:50%!important}div.tsml-ui .end-100{right:100%!important}div.tsml-ui .translate-middle{transform:translate(-50%,-50%)!important}div.tsml-ui .translate-middle-x{transform:translateX(-50%)!important}div.tsml-ui .translate-middle-y{transform:translateY(-50%)!important}div.tsml-ui .border{border:1px solid #dee2e6!important}div.tsml-ui .border-0{border:0!important}div.tsml-ui .border-top{border-top:1px solid #dee2e6!important}div.tsml-ui .border-top-0{border-top:0!important}div.tsml-ui .border-end{border-right:1px solid #dee2e6!important}div.tsml-ui .border-end-0{border-right:0!important}div.tsml-ui .border-bottom{border-bottom:1px solid #dee2e6!important}div.tsml-ui .border-bottom-0{border-bottom:0!important}div.tsml-ui .border-start{border-left:1px solid #dee2e6!important}div.tsml-ui .border-start-0{border-left:0!important}div.tsml-ui .border-primary{border-color:#0d6efd!important}div.tsml-ui .border-secondary{border-color:#6c757d!important}div.tsml-ui .border-success{border-color:#198754!important}div.tsml-ui .border-info{border-color:#0dcaf0!important}div.tsml-ui .border-warning{border-color:#ffc107!important}div.tsml-ui .border-danger{border-color:#dc3545!important}div.tsml-ui .border-light{border-color:#f8f9fa!important}div.tsml-ui .border-dark{border-color:#212529!important}div.tsml-ui .border-white{border-color:#fff!important}div.tsml-ui .border-1{border-width:1px!important}div.tsml-ui .border-2{border-width:2px!important}div.tsml-ui .border-3{border-width:3px!important}div.tsml-ui .border-4{border-width:4px!important}div.tsml-ui .border-5{border-width:5px!important}div.tsml-ui .w-25{width:25%!important}div.tsml-ui .w-50{width:50%!important}div.tsml-ui .w-75{width:75%!important}div.tsml-ui .w-100{width:100%!important}div.tsml-ui .w-auto{width:auto!important}div.tsml-ui .mw-100{max-width:100%!important}div.tsml-ui .vw-100{width:100vw!important}div.tsml-ui .min-vw-100{min-width:100vw!important}div.tsml-ui .h-25{height:25%!important}div.tsml-ui .h-50{height:50%!important}div.tsml-ui .h-75{height:75%!important}div.tsml-ui .h-100{height:100%!important}div.tsml-ui .h-auto{height:auto!important}div.tsml-ui .mh-100{max-height:100%!important}div.tsml-ui .vh-100{height:100vh!important}div.tsml-ui .min-vh-100{min-height:100vh!important}div.tsml-ui .flex-fill{flex:1 1 auto!important}div.tsml-ui .flex-row{flex-direction:row!important}div.tsml-ui .flex-column{flex-direction:column!important}div.tsml-ui .flex-row-reverse{flex-direction:row-reverse!important}div.tsml-ui .flex-column-reverse{flex-direction:column-reverse!important}div.tsml-ui .flex-grow-0{flex-grow:0!important}div.tsml-ui .flex-grow-1{flex-grow:1!important}div.tsml-ui .flex-shrink-0{flex-shrink:0!important}div.tsml-ui .flex-shrink-1{flex-shrink:1!important}div.tsml-ui .flex-wrap{flex-wrap:wrap!important}div.tsml-ui .flex-nowrap{flex-wrap:nowrap!important}div.tsml-ui .flex-wrap-reverse{flex-wrap:wrap-reverse!important}div.tsml-ui .gap-0{gap:0!important}div.tsml-ui .gap-1{gap:.25rem!important}div.tsml-ui .gap-2{gap:.5rem!important}div.tsml-ui .gap-3{gap:1rem!important}div.tsml-ui .gap-4{gap:1.5rem!important}div.tsml-ui .gap-5{gap:3rem!important}div.tsml-ui .justify-content-start{justify-content:flex-start!important}div.tsml-ui .justify-content-end{justify-content:flex-end!important}div.tsml-ui .justify-content-center{justify-content:center!important}div.tsml-ui .justify-content-between{justify-content:space-between!important}div.tsml-ui .justify-content-around{justify-content:space-around!important}div.tsml-ui .justify-content-evenly{justify-content:space-evenly!important}div.tsml-ui .align-items-start{align-items:flex-start!important}div.tsml-ui .align-items-end{align-items:flex-end!important}div.tsml-ui .align-items-center{align-items:center!important}div.tsml-ui .align-items-baseline{align-items:baseline!important}div.tsml-ui .align-items-stretch{align-items:stretch!important}div.tsml-ui .align-content-start{align-content:flex-start!important}div.tsml-ui .align-content-end{align-content:flex-end!important}div.tsml-ui .align-content-center{align-content:center!important}div.tsml-ui .align-content-between{align-content:space-between!important}div.tsml-ui .align-content-around{align-content:space-around!important}div.tsml-ui .align-content-stretch{align-content:stretch!important}div.tsml-ui .align-self-auto{align-self:auto!important}div.tsml-ui .align-self-start{align-self:flex-start!important}div.tsml-ui .align-self-end{align-self:flex-end!important}div.tsml-ui .align-self-center{align-self:center!important}div.tsml-ui .align-self-baseline{align-self:baseline!important}div.tsml-ui .align-self-stretch{align-self:stretch!important}div.tsml-ui .order-first{order:-1!important}div.tsml-ui .order-0{order:0!important}div.tsml-ui .order-1{order:1!important}div.tsml-ui .order-2{order:2!important}div.tsml-ui .order-3{order:3!important}div.tsml-ui .order-4{order:4!important}div.tsml-ui .order-5{order:5!important}div.tsml-ui .order-last{order:6!important}div.tsml-ui .m-0{margin:0!important}div.tsml-ui .m-1{margin:.25rem!important}div.tsml-ui .m-2{margin:.5rem!important}div.tsml-ui .m-3{margin:1rem!important}div.tsml-ui .m-4{margin:1.5rem!important}div.tsml-ui .m-5{margin:3rem!important}div.tsml-ui .m-auto{margin:auto!important}div.tsml-ui .mx-0{margin-left:0!important;margin-right:0!important}div.tsml-ui .mx-1{margin-left:.25rem!important;margin-right:.25rem!important}div.tsml-ui .mx-2{margin-left:.5rem!important;margin-right:.5rem!important}div.tsml-ui .mx-3{margin-left:1rem!important;margin-right:1rem!important}div.tsml-ui .mx-4{margin-left:1.5rem!important;margin-right:1.5rem!important}div.tsml-ui .mx-5{margin-left:3rem!important;margin-right:3rem!important}div.tsml-ui .mx-auto{margin-left:auto!important;margin-right:auto!important}div.tsml-ui .my-0{margin-bottom:0!important;margin-top:0!important}div.tsml-ui .my-1{margin-bottom:.25rem!important;margin-top:.25rem!important}div.tsml-ui .my-2{margin-bottom:.5rem!important;margin-top:.5rem!important}div.tsml-ui .my-3{margin-bottom:1rem!important;margin-top:1rem!important}div.tsml-ui .my-4{margin-bottom:1.5rem!important;margin-top:1.5rem!important}div.tsml-ui .my-5{margin-bottom:3rem!important;margin-top:3rem!important}div.tsml-ui .my-auto{margin-bottom:auto!important;margin-top:auto!important}div.tsml-ui .mt-0{margin-top:0!important}div.tsml-ui .mt-1{margin-top:.25rem!important}div.tsml-ui .mt-2{margin-top:.5rem!important}div.tsml-ui .mt-3{margin-top:1rem!important}div.tsml-ui .mt-4{margin-top:1.5rem!important}div.tsml-ui .mt-5{margin-top:3rem!important}div.tsml-ui .mt-auto{margin-top:auto!important}div.tsml-ui .me-0{margin-right:0!important}div.tsml-ui .me-1{margin-right:.25rem!important}div.tsml-ui .me-2{margin-right:.5rem!important}div.tsml-ui .me-3{margin-right:1rem!important}div.tsml-ui .me-4{margin-right:1.5rem!important}div.tsml-ui .me-5{margin-right:3rem!important}div.tsml-ui .me-auto{margin-right:auto!important}div.tsml-ui .mb-0{margin-bottom:0!important}div.tsml-ui .mb-1{margin-bottom:.25rem!important}div.tsml-ui .mb-2{margin-bottom:.5rem!important}div.tsml-ui .mb-3{margin-bottom:1rem!important}div.tsml-ui .mb-4{margin-bottom:1.5rem!important}div.tsml-ui .mb-5{margin-bottom:3rem!important}div.tsml-ui .mb-auto{margin-bottom:auto!important}div.tsml-ui .ms-0{margin-left:0!important}div.tsml-ui .ms-1{margin-left:.25rem!important}div.tsml-ui .ms-2{margin-left:.5rem!important}div.tsml-ui .ms-3{margin-left:1rem!important}div.tsml-ui .ms-4{margin-left:1.5rem!important}div.tsml-ui .ms-5{margin-left:3rem!important}div.tsml-ui .ms-auto{margin-left:auto!important}div.tsml-ui .p-0{padding:0!important}div.tsml-ui .p-1{padding:.25rem!important}div.tsml-ui .p-2{padding:.5rem!important}div.tsml-ui .p-3{padding:1rem!important}div.tsml-ui .p-4{padding:1.5rem!important}div.tsml-ui .p-5{padding:3rem!important}div.tsml-ui .px-0{padding-left:0!important;padding-right:0!important}div.tsml-ui .px-1{padding-left:.25rem!important;padding-right:.25rem!important}div.tsml-ui .px-2{padding-left:.5rem!important;padding-right:.5rem!important}div.tsml-ui .px-3{padding-left:1rem!important;padding-right:1rem!important}div.tsml-ui .px-4{padding-left:1.5rem!important;padding-right:1.5rem!important}div.tsml-ui .px-5{padding-left:3rem!important;padding-right:3rem!important}div.tsml-ui .py-0{padding-bottom:0!important;padding-top:0!important}div.tsml-ui .py-1{padding-bottom:.25rem!important;padding-top:.25rem!important}div.tsml-ui .py-2{padding-bottom:.5rem!important;padding-top:.5rem!important}div.tsml-ui .py-3{padding-bottom:1rem!important;padding-top:1rem!important}div.tsml-ui .py-4{padding-bottom:1.5rem!important;padding-top:1.5rem!important}div.tsml-ui .py-5{padding-bottom:3rem!important;padding-top:3rem!important}div.tsml-ui .pt-0{padding-top:0!important}div.tsml-ui .pt-1{padding-top:.25rem!important}div.tsml-ui .pt-2{padding-top:.5rem!important}div.tsml-ui .pt-3{padding-top:1rem!important}div.tsml-ui .pt-4{padding-top:1.5rem!important}div.tsml-ui .pt-5{padding-top:3rem!important}div.tsml-ui .pe-0{padding-right:0!important}div.tsml-ui .pe-1{padding-right:.25rem!important}div.tsml-ui .pe-2{padding-right:.5rem!important}div.tsml-ui .pe-3{padding-right:1rem!important}div.tsml-ui .pe-4{padding-right:1.5rem!important}div.tsml-ui .pe-5{padding-right:3rem!important}div.tsml-ui .pb-0{padding-bottom:0!important}div.tsml-ui .pb-1{padding-bottom:.25rem!important}div.tsml-ui .pb-2{padding-bottom:.5rem!important}div.tsml-ui .pb-3{padding-bottom:1rem!important}div.tsml-ui .pb-4{padding-bottom:1.5rem!important}div.tsml-ui .pb-5{padding-bottom:3rem!important}div.tsml-ui .ps-0{padding-left:0!important}div.tsml-ui .ps-1{padding-left:.25rem!important}div.tsml-ui .ps-2{padding-left:.5rem!important}div.tsml-ui .ps-3{padding-left:1rem!important}div.tsml-ui .ps-4{padding-left:1.5rem!important}div.tsml-ui .ps-5{padding-left:3rem!important}div.tsml-ui .font-monospace{font-family:var(--bs-font-monospace)!important}div.tsml-ui .fs-1{font-size:calc(1.375rem + 1.5vw)!important}div.tsml-ui .fs-2{font-size:calc(1.325rem + .9vw)!important}div.tsml-ui .fs-3{font-size:calc(1.3rem + .6vw)!important}div.tsml-ui .fs-4{font-size:calc(1.275rem + .3vw)!important}div.tsml-ui .fs-5{font-size:1.25rem!important}div.tsml-ui .fs-6{font-size:1rem!important}div.tsml-ui .fst-italic{font-style:italic!important}div.tsml-ui .fst-normal{font-style:normal!important}div.tsml-ui .fw-light{font-weight:300!important}div.tsml-ui .fw-lighter{font-weight:lighter!important}div.tsml-ui .fw-normal{font-weight:400!important}div.tsml-ui .fw-bold{font-weight:700!important}div.tsml-ui .fw-bolder{font-weight:bolder!important}div.tsml-ui .lh-1{line-height:1!important}div.tsml-ui .lh-sm{line-height:1.25!important}div.tsml-ui .lh-base{line-height:1.5!important}div.tsml-ui .lh-lg{line-height:2!important}div.tsml-ui .text-start{text-align:left!important}div.tsml-ui .text-end{text-align:right!important}div.tsml-ui .text-center{text-align:center!important}div.tsml-ui .text-decoration-none{text-decoration:none!important}div.tsml-ui .text-decoration-underline{text-decoration:underline!important}div.tsml-ui .text-decoration-line-through{text-decoration:line-through!important}div.tsml-ui .text-lowercase{text-transform:lowercase!important}div.tsml-ui .text-uppercase{text-transform:uppercase!important}div.tsml-ui .text-capitalize{text-transform:capitalize!important}div.tsml-ui .text-wrap{white-space:normal!important}div.tsml-ui .text-nowrap{white-space:nowrap!important}div.tsml-ui .text-break{word-wrap:break-word!important;word-break:break-word!important}div.tsml-ui .text-primary{--bs-text-opacity:1;color:rgba(var(--bs-primary-rgb),var(--bs-text-opacity))!important}div.tsml-ui .text-secondary{--bs-text-opacity:1;color:rgba(var(--bs-secondary-rgb),var(--bs-text-opacity))!important}div.tsml-ui .text-success{--bs-text-opacity:1;color:rgba(var(--bs-success-rgb),var(--bs-text-opacity))!important}div.tsml-ui .text-info{--bs-text-opacity:1;color:rgba(var(--bs-info-rgb),var(--bs-text-opacity))!important}div.tsml-ui .text-warning{--bs-text-opacity:1;color:rgba(var(--bs-warning-rgb),var(--bs-text-opacity))!important}div.tsml-ui .text-danger{--bs-text-opacity:1;color:rgba(var(--bs-danger-rgb),var(--bs-text-opacity))!important}div.tsml-ui .text-light{--bs-text-opacity:1;color:rgba(var(--bs-light-rgb),var(--bs-text-opacity))!important}div.tsml-ui .text-dark{--bs-text-opacity:1;color:rgba(var(--bs-dark-rgb),var(--bs-text-opacity))!important}div.tsml-ui .text-black{--bs-text-opacity:1;color:rgba(var(--bs-black-rgb),var(--bs-text-opacity))!important}div.tsml-ui .text-white{--bs-text-opacity:1;color:rgba(var(--bs-white-rgb),var(--bs-text-opacity))!important}div.tsml-ui .text-body{--bs-text-opacity:1;color:rgba(var(--bs-body-color-rgb),var(--bs-text-opacity))!important}div.tsml-ui .text-muted{--bs-text-opacity:1;color:#6c757d!important}div.tsml-ui .text-black-50{--bs-text-opacity:1;color:rgba(0,0,0,.5)!important}div.tsml-ui .text-white-50{--bs-text-opacity:1;color:hsla(0,0%,100%,.5)!important}div.tsml-ui .text-reset{--bs-text-opacity:1;color:inherit!important}div.tsml-ui .text-opacity-25{--bs-text-opacity:0.25}div.tsml-ui .text-opacity-50{--bs-text-opacity:0.5}div.tsml-ui .text-opacity-75{--bs-text-opacity:0.75}div.tsml-ui .text-opacity-100{--bs-text-opacity:1}div.tsml-ui .bg-primary{--bs-bg-opacity:1;background-color:rgba(var(--bs-primary-rgb),var(--bs-bg-opacity))!important}div.tsml-ui .bg-secondary{--bs-bg-opacity:1;background-color:rgba(var(--bs-secondary-rgb),var(--bs-bg-opacity))!important}div.tsml-ui .bg-success{--bs-bg-opacity:1;background-color:rgba(var(--bs-success-rgb),var(--bs-bg-opacity))!important}div.tsml-ui .bg-info{--bs-bg-opacity:1;background-color:rgba(var(--bs-info-rgb),var(--bs-bg-opacity))!important}div.tsml-ui .bg-warning{--bs-bg-opacity:1;background-color:rgba(var(--bs-warning-rgb),var(--bs-bg-opacity))!important}div.tsml-ui .bg-danger{--bs-bg-opacity:1;background-color:rgba(var(--bs-danger-rgb),var(--bs-bg-opacity))!important}div.tsml-ui .bg-light{--bs-bg-opacity:1;background-color:rgba(var(--bs-light-rgb),var(--bs-bg-opacity))!important}div.tsml-ui .bg-dark{--bs-bg-opacity:1;background-color:rgba(var(--bs-dark-rgb),var(--bs-bg-opacity))!important}div.tsml-ui .bg-black{--bs-bg-opacity:1;background-color:rgba(var(--bs-black-rgb),var(--bs-bg-opacity))!important}div.tsml-ui .bg-white{--bs-bg-opacity:1;background-color:rgba(var(--bs-white-rgb),var(--bs-bg-opacity))!important}div.tsml-ui .bg-body{--bs-bg-opacity:1;background-color:rgba(var(--bs-body-bg-rgb),var(--bs-bg-opacity))!important}div.tsml-ui .bg-transparent{--bs-bg-opacity:1;background-color:transparent!important}div.tsml-ui .bg-opacity-10{--bs-bg-opacity:0.1}div.tsml-ui .bg-opacity-25{--bs-bg-opacity:0.25}div.tsml-ui .bg-opacity-50{--bs-bg-opacity:0.5}div.tsml-ui .bg-opacity-75{--bs-bg-opacity:0.75}div.tsml-ui .bg-opacity-100{--bs-bg-opacity:1}div.tsml-ui .bg-gradient{background-image:var(--bs-gradient)!important}div.tsml-ui .user-select-all{-webkit-user-select:all!important;-moz-user-select:all!important;user-select:all!important}div.tsml-ui .user-select-auto{-webkit-user-select:auto!important;-moz-user-select:auto!important;-ms-user-select:auto!important;user-select:auto!important}div.tsml-ui .user-select-none{-webkit-user-select:none!important;-moz-user-select:none!important;-ms-user-select:none!important;user-select:none!important}div.tsml-ui .pe-none{pointer-events:none!important}div.tsml-ui .pe-auto{pointer-events:auto!important}div.tsml-ui .rounded{border-radius:.25rem!important}div.tsml-ui .rounded-0{border-radius:0!important}div.tsml-ui .rounded-1{border-radius:.2rem!important}div.tsml-ui .rounded-2{border-radius:.25rem!important}div.tsml-ui .rounded-3{border-radius:.3rem!important}div.tsml-ui .rounded-circle{border-radius:50%!important}div.tsml-ui .rounded-pill{border-radius:50rem!important}div.tsml-ui .rounded-top{border-top-left-radius:.25rem!important;border-top-right-radius:.25rem!important}div.tsml-ui .rounded-end{border-bottom-right-radius:.25rem!important;border-top-right-radius:.25rem!important}div.tsml-ui .rounded-bottom{border-bottom-left-radius:.25rem!important;border-bottom-right-radius:.25rem!important}div.tsml-ui .rounded-start{border-bottom-left-radius:.25rem!important;border-top-left-radius:.25rem!important}div.tsml-ui .visible{visibility:visible!important}div.tsml-ui .invisible{visibility:hidden!important}@media (min-width:576px){div.tsml-ui .float-sm-start{float:left!important}div.tsml-ui .float-sm-end{float:right!important}div.tsml-ui .float-sm-none{float:none!important}div.tsml-ui .d-sm-inline{display:inline!important}div.tsml-ui .d-sm-inline-block{display:inline-block!important}div.tsml-ui .d-sm-block{display:block!important}div.tsml-ui .d-sm-grid{display:grid!important}div.tsml-ui .d-sm-table{display:table!important}div.tsml-ui .d-sm-table-row{display:table-row!important}div.tsml-ui .d-sm-table-cell{display:table-cell!important}div.tsml-ui .d-sm-flex{display:flex!important}div.tsml-ui .d-sm-inline-flex{display:inline-flex!important}div.tsml-ui .d-sm-none{display:none!important}div.tsml-ui .flex-sm-fill{flex:1 1 auto!important}div.tsml-ui .flex-sm-row{flex-direction:row!important}div.tsml-ui .flex-sm-column{flex-direction:column!important}div.tsml-ui .flex-sm-row-reverse{flex-direction:row-reverse!important}div.tsml-ui .flex-sm-column-reverse{flex-direction:column-reverse!important}div.tsml-ui .flex-sm-grow-0{flex-grow:0!important}div.tsml-ui .flex-sm-grow-1{flex-grow:1!important}div.tsml-ui .flex-sm-shrink-0{flex-shrink:0!important}div.tsml-ui .flex-sm-shrink-1{flex-shrink:1!important}div.tsml-ui .flex-sm-wrap{flex-wrap:wrap!important}div.tsml-ui .flex-sm-nowrap{flex-wrap:nowrap!important}div.tsml-ui .flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}div.tsml-ui .gap-sm-0{gap:0!important}div.tsml-ui .gap-sm-1{gap:.25rem!important}div.tsml-ui .gap-sm-2{gap:.5rem!important}div.tsml-ui .gap-sm-3{gap:1rem!important}div.tsml-ui .gap-sm-4{gap:1.5rem!important}div.tsml-ui .gap-sm-5{gap:3rem!important}div.tsml-ui .justify-content-sm-start{justify-content:flex-start!important}div.tsml-ui .justify-content-sm-end{justify-content:flex-end!important}div.tsml-ui .justify-content-sm-center{justify-content:center!important}div.tsml-ui .justify-content-sm-between{justify-content:space-between!important}div.tsml-ui .justify-content-sm-around{justify-content:space-around!important}div.tsml-ui .justify-content-sm-evenly{justify-content:space-evenly!important}div.tsml-ui .align-items-sm-start{align-items:flex-start!important}div.tsml-ui .align-items-sm-end{align-items:flex-end!important}div.tsml-ui .align-items-sm-center{align-items:center!important}div.tsml-ui .align-items-sm-baseline{align-items:baseline!important}div.tsml-ui .align-items-sm-stretch{align-items:stretch!important}div.tsml-ui .align-content-sm-start{align-content:flex-start!important}div.tsml-ui .align-content-sm-end{align-content:flex-end!important}div.tsml-ui .align-content-sm-center{align-content:center!important}div.tsml-ui .align-content-sm-between{align-content:space-between!important}div.tsml-ui .align-content-sm-around{align-content:space-around!important}div.tsml-ui .align-content-sm-stretch{align-content:stretch!important}div.tsml-ui .align-self-sm-auto{align-self:auto!important}div.tsml-ui .align-self-sm-start{align-self:flex-start!important}div.tsml-ui .align-self-sm-end{align-self:flex-end!important}div.tsml-ui .align-self-sm-center{align-self:center!important}div.tsml-ui .align-self-sm-baseline{align-self:baseline!important}div.tsml-ui .align-self-sm-stretch{align-self:stretch!important}div.tsml-ui .order-sm-first{order:-1!important}div.tsml-ui .order-sm-0{order:0!important}div.tsml-ui .order-sm-1{order:1!important}div.tsml-ui .order-sm-2{order:2!important}div.tsml-ui .order-sm-3{order:3!important}div.tsml-ui .order-sm-4{order:4!important}div.tsml-ui .order-sm-5{order:5!important}div.tsml-ui .order-sm-last{order:6!important}div.tsml-ui .m-sm-0{margin:0!important}div.tsml-ui .m-sm-1{margin:.25rem!important}div.tsml-ui .m-sm-2{margin:.5rem!important}div.tsml-ui .m-sm-3{margin:1rem!important}div.tsml-ui .m-sm-4{margin:1.5rem!important}div.tsml-ui .m-sm-5{margin:3rem!important}div.tsml-ui .m-sm-auto{margin:auto!important}div.tsml-ui .mx-sm-0{margin-left:0!important;margin-right:0!important}div.tsml-ui .mx-sm-1{margin-left:.25rem!important;margin-right:.25rem!important}div.tsml-ui .mx-sm-2{margin-left:.5rem!important;margin-right:.5rem!important}div.tsml-ui .mx-sm-3{margin-left:1rem!important;margin-right:1rem!important}div.tsml-ui .mx-sm-4{margin-left:1.5rem!important;margin-right:1.5rem!important}div.tsml-ui .mx-sm-5{margin-left:3rem!important;margin-right:3rem!important}div.tsml-ui .mx-sm-auto{margin-left:auto!important;margin-right:auto!important}div.tsml-ui .my-sm-0{margin-bottom:0!important;margin-top:0!important}div.tsml-ui .my-sm-1{margin-bottom:.25rem!important;margin-top:.25rem!important}div.tsml-ui .my-sm-2{margin-bottom:.5rem!important;margin-top:.5rem!important}div.tsml-ui .my-sm-3{margin-bottom:1rem!important;margin-top:1rem!important}div.tsml-ui .my-sm-4{margin-bottom:1.5rem!important;margin-top:1.5rem!important}div.tsml-ui .my-sm-5{margin-bottom:3rem!important;margin-top:3rem!important}div.tsml-ui .my-sm-auto{margin-bottom:auto!important;margin-top:auto!important}div.tsml-ui .mt-sm-0{margin-top:0!important}div.tsml-ui .mt-sm-1{margin-top:.25rem!important}div.tsml-ui .mt-sm-2{margin-top:.5rem!important}div.tsml-ui .mt-sm-3{margin-top:1rem!important}div.tsml-ui .mt-sm-4{margin-top:1.5rem!important}div.tsml-ui .mt-sm-5{margin-top:3rem!important}div.tsml-ui .mt-sm-auto{margin-top:auto!important}div.tsml-ui .me-sm-0{margin-right:0!important}div.tsml-ui .me-sm-1{margin-right:.25rem!important}div.tsml-ui .me-sm-2{margin-right:.5rem!important}div.tsml-ui .me-sm-3{margin-right:1rem!important}div.tsml-ui .me-sm-4{margin-right:1.5rem!important}div.tsml-ui .me-sm-5{margin-right:3rem!important}div.tsml-ui .me-sm-auto{margin-right:auto!important}div.tsml-ui .mb-sm-0{margin-bottom:0!important}div.tsml-ui .mb-sm-1{margin-bottom:.25rem!important}div.tsml-ui .mb-sm-2{margin-bottom:.5rem!important}div.tsml-ui .mb-sm-3{margin-bottom:1rem!important}div.tsml-ui .mb-sm-4{margin-bottom:1.5rem!important}div.tsml-ui .mb-sm-5{margin-bottom:3rem!important}div.tsml-ui .mb-sm-auto{margin-bottom:auto!important}div.tsml-ui .ms-sm-0{margin-left:0!important}div.tsml-ui .ms-sm-1{margin-left:.25rem!important}div.tsml-ui .ms-sm-2{margin-left:.5rem!important}div.tsml-ui .ms-sm-3{margin-left:1rem!important}div.tsml-ui .ms-sm-4{margin-left:1.5rem!important}div.tsml-ui .ms-sm-5{margin-left:3rem!important}div.tsml-ui .ms-sm-auto{margin-left:auto!important}div.tsml-ui .p-sm-0{padding:0!important}div.tsml-ui .p-sm-1{padding:.25rem!important}div.tsml-ui .p-sm-2{padding:.5rem!important}div.tsml-ui .p-sm-3{padding:1rem!important}div.tsml-ui .p-sm-4{padding:1.5rem!important}div.tsml-ui .p-sm-5{padding:3rem!important}div.tsml-ui .px-sm-0{padding-left:0!important;padding-right:0!important}div.tsml-ui .px-sm-1{padding-left:.25rem!important;padding-right:.25rem!important}div.tsml-ui .px-sm-2{padding-left:.5rem!important;padding-right:.5rem!important}div.tsml-ui .px-sm-3{padding-left:1rem!important;padding-right:1rem!important}div.tsml-ui .px-sm-4{padding-left:1.5rem!important;padding-right:1.5rem!important}div.tsml-ui .px-sm-5{padding-left:3rem!important;padding-right:3rem!important}div.tsml-ui .py-sm-0{padding-bottom:0!important;padding-top:0!important}div.tsml-ui .py-sm-1{padding-bottom:.25rem!important;padding-top:.25rem!important}div.tsml-ui .py-sm-2{padding-bottom:.5rem!important;padding-top:.5rem!important}div.tsml-ui .py-sm-3{padding-bottom:1rem!important;padding-top:1rem!important}div.tsml-ui .py-sm-4{padding-bottom:1.5rem!important;padding-top:1.5rem!important}div.tsml-ui .py-sm-5{padding-bottom:3rem!important;padding-top:3rem!important}div.tsml-ui .pt-sm-0{padding-top:0!important}div.tsml-ui .pt-sm-1{padding-top:.25rem!important}div.tsml-ui .pt-sm-2{padding-top:.5rem!important}div.tsml-ui .pt-sm-3{padding-top:1rem!important}div.tsml-ui .pt-sm-4{padding-top:1.5rem!important}div.tsml-ui .pt-sm-5{padding-top:3rem!important}div.tsml-ui .pe-sm-0{padding-right:0!important}div.tsml-ui .pe-sm-1{padding-right:.25rem!important}div.tsml-ui .pe-sm-2{padding-right:.5rem!important}div.tsml-ui .pe-sm-3{padding-right:1rem!important}div.tsml-ui .pe-sm-4{padding-right:1.5rem!important}div.tsml-ui .pe-sm-5{padding-right:3rem!important}div.tsml-ui .pb-sm-0{padding-bottom:0!important}div.tsml-ui .pb-sm-1{padding-bottom:.25rem!important}div.tsml-ui .pb-sm-2{padding-bottom:.5rem!important}div.tsml-ui .pb-sm-3{padding-bottom:1rem!important}div.tsml-ui .pb-sm-4{padding-bottom:1.5rem!important}div.tsml-ui .pb-sm-5{padding-bottom:3rem!important}div.tsml-ui .ps-sm-0{padding-left:0!important}div.tsml-ui .ps-sm-1{padding-left:.25rem!important}div.tsml-ui .ps-sm-2{padding-left:.5rem!important}div.tsml-ui .ps-sm-3{padding-left:1rem!important}div.tsml-ui .ps-sm-4{padding-left:1.5rem!important}div.tsml-ui .ps-sm-5{padding-left:3rem!important}div.tsml-ui .text-sm-start{text-align:left!important}div.tsml-ui .text-sm-end{text-align:right!important}div.tsml-ui .text-sm-center{text-align:center!important}}@media (min-width:768px){div.tsml-ui .float-md-start{float:left!important}div.tsml-ui .float-md-end{float:right!important}div.tsml-ui .float-md-none{float:none!important}div.tsml-ui .d-md-inline{display:inline!important}div.tsml-ui .d-md-inline-block{display:inline-block!important}div.tsml-ui .d-md-block{display:block!important}div.tsml-ui .d-md-grid{display:grid!important}div.tsml-ui .d-md-table{display:table!important}div.tsml-ui .d-md-table-row{display:table-row!important}div.tsml-ui .d-md-table-cell{display:table-cell!important}div.tsml-ui .d-md-flex{display:flex!important}div.tsml-ui .d-md-inline-flex{display:inline-flex!important}div.tsml-ui .d-md-none{display:none!important}div.tsml-ui .flex-md-fill{flex:1 1 auto!important}div.tsml-ui .flex-md-row{flex-direction:row!important}div.tsml-ui .flex-md-column{flex-direction:column!important}div.tsml-ui .flex-md-row-reverse{flex-direction:row-reverse!important}div.tsml-ui .flex-md-column-reverse{flex-direction:column-reverse!important}div.tsml-ui .flex-md-grow-0{flex-grow:0!important}div.tsml-ui .flex-md-grow-1{flex-grow:1!important}div.tsml-ui .flex-md-shrink-0{flex-shrink:0!important}div.tsml-ui .flex-md-shrink-1{flex-shrink:1!important}div.tsml-ui .flex-md-wrap{flex-wrap:wrap!important}div.tsml-ui .flex-md-nowrap{flex-wrap:nowrap!important}div.tsml-ui .flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}div.tsml-ui .gap-md-0{gap:0!important}div.tsml-ui .gap-md-1{gap:.25rem!important}div.tsml-ui .gap-md-2{gap:.5rem!important}div.tsml-ui .gap-md-3{gap:1rem!important}div.tsml-ui .gap-md-4{gap:1.5rem!important}div.tsml-ui .gap-md-5{gap:3rem!important}div.tsml-ui .justify-content-md-start{justify-content:flex-start!important}div.tsml-ui .justify-content-md-end{justify-content:flex-end!important}div.tsml-ui .justify-content-md-center{justify-content:center!important}div.tsml-ui .justify-content-md-between{justify-content:space-between!important}div.tsml-ui .justify-content-md-around{justify-content:space-around!important}div.tsml-ui .justify-content-md-evenly{justify-content:space-evenly!important}div.tsml-ui .align-items-md-start{align-items:flex-start!important}div.tsml-ui .align-items-md-end{align-items:flex-end!important}div.tsml-ui .align-items-md-center{align-items:center!important}div.tsml-ui .align-items-md-baseline{align-items:baseline!important}div.tsml-ui .align-items-md-stretch{align-items:stretch!important}div.tsml-ui .align-content-md-start{align-content:flex-start!important}div.tsml-ui .align-content-md-end{align-content:flex-end!important}div.tsml-ui .align-content-md-center{align-content:center!important}div.tsml-ui .align-content-md-between{align-content:space-between!important}div.tsml-ui .align-content-md-around{align-content:space-around!important}div.tsml-ui .align-content-md-stretch{align-content:stretch!important}div.tsml-ui .align-self-md-auto{align-self:auto!important}div.tsml-ui .align-self-md-start{align-self:flex-start!important}div.tsml-ui .align-self-md-end{align-self:flex-end!important}div.tsml-ui .align-self-md-center{align-self:center!important}div.tsml-ui .align-self-md-baseline{align-self:baseline!important}div.tsml-ui .align-self-md-stretch{align-self:stretch!important}div.tsml-ui .order-md-first{order:-1!important}div.tsml-ui .order-md-0{order:0!important}div.tsml-ui .order-md-1{order:1!important}div.tsml-ui .order-md-2{order:2!important}div.tsml-ui .order-md-3{order:3!important}div.tsml-ui .order-md-4{order:4!important}div.tsml-ui .order-md-5{order:5!important}div.tsml-ui .order-md-last{order:6!important}div.tsml-ui .m-md-0{margin:0!important}div.tsml-ui .m-md-1{margin:.25rem!important}div.tsml-ui .m-md-2{margin:.5rem!important}div.tsml-ui .m-md-3{margin:1rem!important}div.tsml-ui .m-md-4{margin:1.5rem!important}div.tsml-ui .m-md-5{margin:3rem!important}div.tsml-ui .m-md-auto{margin:auto!important}div.tsml-ui .mx-md-0{margin-left:0!important;margin-right:0!important}div.tsml-ui .mx-md-1{margin-left:.25rem!important;margin-right:.25rem!important}div.tsml-ui .mx-md-2{margin-left:.5rem!important;margin-right:.5rem!important}div.tsml-ui .mx-md-3{margin-left:1rem!important;margin-right:1rem!important}div.tsml-ui .mx-md-4{margin-left:1.5rem!important;margin-right:1.5rem!important}div.tsml-ui .mx-md-5{margin-left:3rem!important;margin-right:3rem!important}div.tsml-ui .mx-md-auto{margin-left:auto!important;margin-right:auto!important}div.tsml-ui .my-md-0{margin-bottom:0!important;margin-top:0!important}div.tsml-ui .my-md-1{margin-bottom:.25rem!important;margin-top:.25rem!important}div.tsml-ui .my-md-2{margin-bottom:.5rem!important;margin-top:.5rem!important}div.tsml-ui .my-md-3{margin-bottom:1rem!important;margin-top:1rem!important}div.tsml-ui .my-md-4{margin-bottom:1.5rem!important;margin-top:1.5rem!important}div.tsml-ui .my-md-5{margin-bottom:3rem!important;margin-top:3rem!important}div.tsml-ui .my-md-auto{margin-bottom:auto!important;margin-top:auto!important}div.tsml-ui .mt-md-0{margin-top:0!important}div.tsml-ui .mt-md-1{margin-top:.25rem!important}div.tsml-ui .mt-md-2{margin-top:.5rem!important}div.tsml-ui .mt-md-3{margin-top:1rem!important}div.tsml-ui .mt-md-4{margin-top:1.5rem!important}div.tsml-ui .mt-md-5{margin-top:3rem!important}div.tsml-ui .mt-md-auto{margin-top:auto!important}div.tsml-ui .me-md-0{margin-right:0!important}div.tsml-ui .me-md-1{margin-right:.25rem!important}div.tsml-ui .me-md-2{margin-right:.5rem!important}div.tsml-ui .me-md-3{margin-right:1rem!important}div.tsml-ui .me-md-4{margin-right:1.5rem!important}div.tsml-ui .me-md-5{margin-right:3rem!important}div.tsml-ui .me-md-auto{margin-right:auto!important}div.tsml-ui .mb-md-0{margin-bottom:0!important}div.tsml-ui .mb-md-1{margin-bottom:.25rem!important}div.tsml-ui .mb-md-2{margin-bottom:.5rem!important}div.tsml-ui .mb-md-3{margin-bottom:1rem!important}div.tsml-ui .mb-md-4{margin-bottom:1.5rem!important}div.tsml-ui .mb-md-5{margin-bottom:3rem!important}div.tsml-ui .mb-md-auto{margin-bottom:auto!important}div.tsml-ui .ms-md-0{margin-left:0!important}div.tsml-ui .ms-md-1{margin-left:.25rem!important}div.tsml-ui .ms-md-2{margin-left:.5rem!important}div.tsml-ui .ms-md-3{margin-left:1rem!important}div.tsml-ui .ms-md-4{margin-left:1.5rem!important}div.tsml-ui .ms-md-5{margin-left:3rem!important}div.tsml-ui .ms-md-auto{margin-left:auto!important}div.tsml-ui .p-md-0{padding:0!important}div.tsml-ui .p-md-1{padding:.25rem!important}div.tsml-ui .p-md-2{padding:.5rem!important}div.tsml-ui .p-md-3{padding:1rem!important}div.tsml-ui .p-md-4{padding:1.5rem!important}div.tsml-ui .p-md-5{padding:3rem!important}div.tsml-ui .px-md-0{padding-left:0!important;padding-right:0!important}div.tsml-ui .px-md-1{padding-left:.25rem!important;padding-right:.25rem!important}div.tsml-ui .px-md-2{padding-left:.5rem!important;padding-right:.5rem!important}div.tsml-ui .px-md-3{padding-left:1rem!important;padding-right:1rem!important}div.tsml-ui .px-md-4{padding-left:1.5rem!important;padding-right:1.5rem!important}div.tsml-ui .px-md-5{padding-left:3rem!important;padding-right:3rem!important}div.tsml-ui .py-md-0{padding-bottom:0!important;padding-top:0!important}div.tsml-ui .py-md-1{padding-bottom:.25rem!important;padding-top:.25rem!important}div.tsml-ui .py-md-2{padding-bottom:.5rem!important;padding-top:.5rem!important}div.tsml-ui .py-md-3{padding-bottom:1rem!important;padding-top:1rem!important}div.tsml-ui .py-md-4{padding-bottom:1.5rem!important;padding-top:1.5rem!important}div.tsml-ui .py-md-5{padding-bottom:3rem!important;padding-top:3rem!important}div.tsml-ui .pt-md-0{padding-top:0!important}div.tsml-ui .pt-md-1{padding-top:.25rem!important}div.tsml-ui .pt-md-2{padding-top:.5rem!important}div.tsml-ui .pt-md-3{padding-top:1rem!important}div.tsml-ui .pt-md-4{padding-top:1.5rem!important}div.tsml-ui .pt-md-5{padding-top:3rem!important}div.tsml-ui .pe-md-0{padding-right:0!important}div.tsml-ui .pe-md-1{padding-right:.25rem!important}div.tsml-ui .pe-md-2{padding-right:.5rem!important}div.tsml-ui .pe-md-3{padding-right:1rem!important}div.tsml-ui .pe-md-4{padding-right:1.5rem!important}div.tsml-ui .pe-md-5{padding-right:3rem!important}div.tsml-ui .pb-md-0{padding-bottom:0!important}div.tsml-ui .pb-md-1{padding-bottom:.25rem!important}div.tsml-ui .pb-md-2{padding-bottom:.5rem!important}div.tsml-ui .pb-md-3{padding-bottom:1rem!important}div.tsml-ui .pb-md-4{padding-bottom:1.5rem!important}div.tsml-ui .pb-md-5{padding-bottom:3rem!important}div.tsml-ui .ps-md-0{padding-left:0!important}div.tsml-ui .ps-md-1{padding-left:.25rem!important}div.tsml-ui .ps-md-2{padding-left:.5rem!important}div.tsml-ui .ps-md-3{padding-left:1rem!important}div.tsml-ui .ps-md-4{padding-left:1.5rem!important}div.tsml-ui .ps-md-5{padding-left:3rem!important}div.tsml-ui .text-md-start{text-align:left!important}div.tsml-ui .text-md-end{text-align:right!important}div.tsml-ui .text-md-center{text-align:center!important}}@media (min-width:992px){div.tsml-ui .float-lg-start{float:left!important}div.tsml-ui .float-lg-end{float:right!important}div.tsml-ui .float-lg-none{float:none!important}div.tsml-ui .d-lg-inline{display:inline!important}div.tsml-ui .d-lg-inline-block{display:inline-block!important}div.tsml-ui .d-lg-block{display:block!important}div.tsml-ui .d-lg-grid{display:grid!important}div.tsml-ui .d-lg-table{display:table!important}div.tsml-ui .d-lg-table-row{display:table-row!important}div.tsml-ui .d-lg-table-cell{display:table-cell!important}div.tsml-ui .d-lg-flex{display:flex!important}div.tsml-ui .d-lg-inline-flex{display:inline-flex!important}div.tsml-ui .d-lg-none{display:none!important}div.tsml-ui .flex-lg-fill{flex:1 1 auto!important}div.tsml-ui .flex-lg-row{flex-direction:row!important}div.tsml-ui .flex-lg-column{flex-direction:column!important}div.tsml-ui .flex-lg-row-reverse{flex-direction:row-reverse!important}div.tsml-ui .flex-lg-column-reverse{flex-direction:column-reverse!important}div.tsml-ui .flex-lg-grow-0{flex-grow:0!important}div.tsml-ui .flex-lg-grow-1{flex-grow:1!important}div.tsml-ui .flex-lg-shrink-0{flex-shrink:0!important}div.tsml-ui .flex-lg-shrink-1{flex-shrink:1!important}div.tsml-ui .flex-lg-wrap{flex-wrap:wrap!important}div.tsml-ui .flex-lg-nowrap{flex-wrap:nowrap!important}div.tsml-ui .flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}div.tsml-ui .gap-lg-0{gap:0!important}div.tsml-ui .gap-lg-1{gap:.25rem!important}div.tsml-ui .gap-lg-2{gap:.5rem!important}div.tsml-ui .gap-lg-3{gap:1rem!important}div.tsml-ui .gap-lg-4{gap:1.5rem!important}div.tsml-ui .gap-lg-5{gap:3rem!important}div.tsml-ui .justify-content-lg-start{justify-content:flex-start!important}div.tsml-ui .justify-content-lg-end{justify-content:flex-end!important}div.tsml-ui .justify-content-lg-center{justify-content:center!important}div.tsml-ui .justify-content-lg-between{justify-content:space-between!important}div.tsml-ui .justify-content-lg-around{justify-content:space-around!important}div.tsml-ui .justify-content-lg-evenly{justify-content:space-evenly!important}div.tsml-ui .align-items-lg-start{align-items:flex-start!important}div.tsml-ui .align-items-lg-end{align-items:flex-end!important}div.tsml-ui .align-items-lg-center{align-items:center!important}div.tsml-ui .align-items-lg-baseline{align-items:baseline!important}div.tsml-ui .align-items-lg-stretch{align-items:stretch!important}div.tsml-ui .align-content-lg-start{align-content:flex-start!important}div.tsml-ui .align-content-lg-end{align-content:flex-end!important}div.tsml-ui .align-content-lg-center{align-content:center!important}div.tsml-ui .align-content-lg-between{align-content:space-between!important}div.tsml-ui .align-content-lg-around{align-content:space-around!important}div.tsml-ui .align-content-lg-stretch{align-content:stretch!important}div.tsml-ui .align-self-lg-auto{align-self:auto!important}div.tsml-ui .align-self-lg-start{align-self:flex-start!important}div.tsml-ui .align-self-lg-end{align-self:flex-end!important}div.tsml-ui .align-self-lg-center{align-self:center!important}div.tsml-ui .align-self-lg-baseline{align-self:baseline!important}div.tsml-ui .align-self-lg-stretch{align-self:stretch!important}div.tsml-ui .order-lg-first{order:-1!important}div.tsml-ui .order-lg-0{order:0!important}div.tsml-ui .order-lg-1{order:1!important}div.tsml-ui .order-lg-2{order:2!important}div.tsml-ui .order-lg-3{order:3!important}div.tsml-ui .order-lg-4{order:4!important}div.tsml-ui .order-lg-5{order:5!important}div.tsml-ui .order-lg-last{order:6!important}div.tsml-ui .m-lg-0{margin:0!important}div.tsml-ui .m-lg-1{margin:.25rem!important}div.tsml-ui .m-lg-2{margin:.5rem!important}div.tsml-ui .m-lg-3{margin:1rem!important}div.tsml-ui .m-lg-4{margin:1.5rem!important}div.tsml-ui .m-lg-5{margin:3rem!important}div.tsml-ui .m-lg-auto{margin:auto!important}div.tsml-ui .mx-lg-0{margin-left:0!important;margin-right:0!important}div.tsml-ui .mx-lg-1{margin-left:.25rem!important;margin-right:.25rem!important}div.tsml-ui .mx-lg-2{margin-left:.5rem!important;margin-right:.5rem!important}div.tsml-ui .mx-lg-3{margin-left:1rem!important;margin-right:1rem!important}div.tsml-ui .mx-lg-4{margin-left:1.5rem!important;margin-right:1.5rem!important}div.tsml-ui .mx-lg-5{margin-left:3rem!important;margin-right:3rem!important}div.tsml-ui .mx-lg-auto{margin-left:auto!important;margin-right:auto!important}div.tsml-ui .my-lg-0{margin-bottom:0!important;margin-top:0!important}div.tsml-ui .my-lg-1{margin-bottom:.25rem!important;margin-top:.25rem!important}div.tsml-ui .my-lg-2{margin-bottom:.5rem!important;margin-top:.5rem!important}div.tsml-ui .my-lg-3{margin-bottom:1rem!important;margin-top:1rem!important}div.tsml-ui .my-lg-4{margin-bottom:1.5rem!important;margin-top:1.5rem!important}div.tsml-ui .my-lg-5{margin-bottom:3rem!important;margin-top:3rem!important}div.tsml-ui .my-lg-auto{margin-bottom:auto!important;margin-top:auto!important}div.tsml-ui .mt-lg-0{margin-top:0!important}div.tsml-ui .mt-lg-1{margin-top:.25rem!important}div.tsml-ui .mt-lg-2{margin-top:.5rem!important}div.tsml-ui .mt-lg-3{margin-top:1rem!important}div.tsml-ui .mt-lg-4{margin-top:1.5rem!important}div.tsml-ui .mt-lg-5{margin-top:3rem!important}div.tsml-ui .mt-lg-auto{margin-top:auto!important}div.tsml-ui .me-lg-0{margin-right:0!important}div.tsml-ui .me-lg-1{margin-right:.25rem!important}div.tsml-ui .me-lg-2{margin-right:.5rem!important}div.tsml-ui .me-lg-3{margin-right:1rem!important}div.tsml-ui .me-lg-4{margin-right:1.5rem!important}div.tsml-ui .me-lg-5{margin-right:3rem!important}div.tsml-ui .me-lg-auto{margin-right:auto!important}div.tsml-ui .mb-lg-0{margin-bottom:0!important}div.tsml-ui .mb-lg-1{margin-bottom:.25rem!important}div.tsml-ui .mb-lg-2{margin-bottom:.5rem!important}div.tsml-ui .mb-lg-3{margin-bottom:1rem!important}div.tsml-ui .mb-lg-4{margin-bottom:1.5rem!important}div.tsml-ui .mb-lg-5{margin-bottom:3rem!important}div.tsml-ui .mb-lg-auto{margin-bottom:auto!important}div.tsml-ui .ms-lg-0{margin-left:0!important}div.tsml-ui .ms-lg-1{margin-left:.25rem!important}div.tsml-ui .ms-lg-2{margin-left:.5rem!important}div.tsml-ui .ms-lg-3{margin-left:1rem!important}div.tsml-ui .ms-lg-4{margin-left:1.5rem!important}div.tsml-ui .ms-lg-5{margin-left:3rem!important}div.tsml-ui .ms-lg-auto{margin-left:auto!important}div.tsml-ui .p-lg-0{padding:0!important}div.tsml-ui .p-lg-1{padding:.25rem!important}div.tsml-ui .p-lg-2{padding:.5rem!important}div.tsml-ui .p-lg-3{padding:1rem!important}div.tsml-ui .p-lg-4{padding:1.5rem!important}div.tsml-ui .p-lg-5{padding:3rem!important}div.tsml-ui .px-lg-0{padding-left:0!important;padding-right:0!important}div.tsml-ui .px-lg-1{padding-left:.25rem!important;padding-right:.25rem!important}div.tsml-ui .px-lg-2{padding-left:.5rem!important;padding-right:.5rem!important}div.tsml-ui .px-lg-3{padding-left:1rem!important;padding-right:1rem!important}div.tsml-ui .px-lg-4{padding-left:1.5rem!important;padding-right:1.5rem!important}div.tsml-ui .px-lg-5{padding-left:3rem!important;padding-right:3rem!important}div.tsml-ui .py-lg-0{padding-bottom:0!important;padding-top:0!important}div.tsml-ui .py-lg-1{padding-bottom:.25rem!important;padding-top:.25rem!important}div.tsml-ui .py-lg-2{padding-bottom:.5rem!important;padding-top:.5rem!important}div.tsml-ui .py-lg-3{padding-bottom:1rem!important;padding-top:1rem!important}div.tsml-ui .py-lg-4{padding-bottom:1.5rem!important;padding-top:1.5rem!important}div.tsml-ui .py-lg-5{padding-bottom:3rem!important;padding-top:3rem!important}div.tsml-ui .pt-lg-0{padding-top:0!important}div.tsml-ui .pt-lg-1{padding-top:.25rem!important}div.tsml-ui .pt-lg-2{padding-top:.5rem!important}div.tsml-ui .pt-lg-3{padding-top:1rem!important}div.tsml-ui .pt-lg-4{padding-top:1.5rem!important}div.tsml-ui .pt-lg-5{padding-top:3rem!important}div.tsml-ui .pe-lg-0{padding-right:0!important}div.tsml-ui .pe-lg-1{padding-right:.25rem!important}div.tsml-ui .pe-lg-2{padding-right:.5rem!important}div.tsml-ui .pe-lg-3{padding-right:1rem!important}div.tsml-ui .pe-lg-4{padding-right:1.5rem!important}div.tsml-ui .pe-lg-5{padding-right:3rem!important}div.tsml-ui .pb-lg-0{padding-bottom:0!important}div.tsml-ui .pb-lg-1{padding-bottom:.25rem!important}div.tsml-ui .pb-lg-2{padding-bottom:.5rem!important}div.tsml-ui .pb-lg-3{padding-bottom:1rem!important}div.tsml-ui .pb-lg-4{padding-bottom:1.5rem!important}div.tsml-ui .pb-lg-5{padding-bottom:3rem!important}div.tsml-ui .ps-lg-0{padding-left:0!important}div.tsml-ui .ps-lg-1{padding-left:.25rem!important}div.tsml-ui .ps-lg-2{padding-left:.5rem!important}div.tsml-ui .ps-lg-3{padding-left:1rem!important}div.tsml-ui .ps-lg-4{padding-left:1.5rem!important}div.tsml-ui .ps-lg-5{padding-left:3rem!important}div.tsml-ui .text-lg-start{text-align:left!important}div.tsml-ui .text-lg-end{text-align:right!important}div.tsml-ui .text-lg-center{text-align:center!important}}@media (min-width:1200px){div.tsml-ui .float-xl-start{float:left!important}div.tsml-ui .float-xl-end{float:right!important}div.tsml-ui .float-xl-none{float:none!important}div.tsml-ui .d-xl-inline{display:inline!important}div.tsml-ui .d-xl-inline-block{display:inline-block!important}div.tsml-ui .d-xl-block{display:block!important}div.tsml-ui .d-xl-grid{display:grid!important}div.tsml-ui .d-xl-table{display:table!important}div.tsml-ui .d-xl-table-row{display:table-row!important}div.tsml-ui .d-xl-table-cell{display:table-cell!important}div.tsml-ui .d-xl-flex{display:flex!important}div.tsml-ui .d-xl-inline-flex{display:inline-flex!important}div.tsml-ui .d-xl-none{display:none!important}div.tsml-ui .flex-xl-fill{flex:1 1 auto!important}div.tsml-ui .flex-xl-row{flex-direction:row!important}div.tsml-ui .flex-xl-column{flex-direction:column!important}div.tsml-ui .flex-xl-row-reverse{flex-direction:row-reverse!important}div.tsml-ui .flex-xl-column-reverse{flex-direction:column-reverse!important}div.tsml-ui .flex-xl-grow-0{flex-grow:0!important}div.tsml-ui .flex-xl-grow-1{flex-grow:1!important}div.tsml-ui .flex-xl-shrink-0{flex-shrink:0!important}div.tsml-ui .flex-xl-shrink-1{flex-shrink:1!important}div.tsml-ui .flex-xl-wrap{flex-wrap:wrap!important}div.tsml-ui .flex-xl-nowrap{flex-wrap:nowrap!important}div.tsml-ui .flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}div.tsml-ui .gap-xl-0{gap:0!important}div.tsml-ui .gap-xl-1{gap:.25rem!important}div.tsml-ui .gap-xl-2{gap:.5rem!important}div.tsml-ui .gap-xl-3{gap:1rem!important}div.tsml-ui .gap-xl-4{gap:1.5rem!important}div.tsml-ui .gap-xl-5{gap:3rem!important}div.tsml-ui .justify-content-xl-start{justify-content:flex-start!important}div.tsml-ui .justify-content-xl-end{justify-content:flex-end!important}div.tsml-ui .justify-content-xl-center{justify-content:center!important}div.tsml-ui .justify-content-xl-between{justify-content:space-between!important}div.tsml-ui .justify-content-xl-around{justify-content:space-around!important}div.tsml-ui .justify-content-xl-evenly{justify-content:space-evenly!important}div.tsml-ui .align-items-xl-start{align-items:flex-start!important}div.tsml-ui .align-items-xl-end{align-items:flex-end!important}div.tsml-ui .align-items-xl-center{align-items:center!important}div.tsml-ui .align-items-xl-baseline{align-items:baseline!important}div.tsml-ui .align-items-xl-stretch{align-items:stretch!important}div.tsml-ui .align-content-xl-start{align-content:flex-start!important}div.tsml-ui .align-content-xl-end{align-content:flex-end!important}div.tsml-ui .align-content-xl-center{align-content:center!important}div.tsml-ui .align-content-xl-between{align-content:space-between!important}div.tsml-ui .align-content-xl-around{align-content:space-around!important}div.tsml-ui .align-content-xl-stretch{align-content:stretch!important}div.tsml-ui .align-self-xl-auto{align-self:auto!important}div.tsml-ui .align-self-xl-start{align-self:flex-start!important}div.tsml-ui .align-self-xl-end{align-self:flex-end!important}div.tsml-ui .align-self-xl-center{align-self:center!important}div.tsml-ui .align-self-xl-baseline{align-self:baseline!important}div.tsml-ui .align-self-xl-stretch{align-self:stretch!important}div.tsml-ui .order-xl-first{order:-1!important}div.tsml-ui .order-xl-0{order:0!important}div.tsml-ui .order-xl-1{order:1!important}div.tsml-ui .order-xl-2{order:2!important}div.tsml-ui .order-xl-3{order:3!important}div.tsml-ui .order-xl-4{order:4!important}div.tsml-ui .order-xl-5{order:5!important}div.tsml-ui .order-xl-last{order:6!important}div.tsml-ui .m-xl-0{margin:0!important}div.tsml-ui .m-xl-1{margin:.25rem!important}div.tsml-ui .m-xl-2{margin:.5rem!important}div.tsml-ui .m-xl-3{margin:1rem!important}div.tsml-ui .m-xl-4{margin:1.5rem!important}div.tsml-ui .m-xl-5{margin:3rem!important}div.tsml-ui .m-xl-auto{margin:auto!important}div.tsml-ui .mx-xl-0{margin-left:0!important;margin-right:0!important}div.tsml-ui .mx-xl-1{margin-left:.25rem!important;margin-right:.25rem!important}div.tsml-ui .mx-xl-2{margin-left:.5rem!important;margin-right:.5rem!important}div.tsml-ui .mx-xl-3{margin-left:1rem!important;margin-right:1rem!important}div.tsml-ui .mx-xl-4{margin-left:1.5rem!important;margin-right:1.5rem!important}div.tsml-ui .mx-xl-5{margin-left:3rem!important;margin-right:3rem!important}div.tsml-ui .mx-xl-auto{margin-left:auto!important;margin-right:auto!important}div.tsml-ui .my-xl-0{margin-bottom:0!important;margin-top:0!important}div.tsml-ui .my-xl-1{margin-bottom:.25rem!important;margin-top:.25rem!important}div.tsml-ui .my-xl-2{margin-bottom:.5rem!important;margin-top:.5rem!important}div.tsml-ui .my-xl-3{margin-bottom:1rem!important;margin-top:1rem!important}div.tsml-ui .my-xl-4{margin-bottom:1.5rem!important;margin-top:1.5rem!important}div.tsml-ui .my-xl-5{margin-bottom:3rem!important;margin-top:3rem!important}div.tsml-ui .my-xl-auto{margin-bottom:auto!important;margin-top:auto!important}div.tsml-ui .mt-xl-0{margin-top:0!important}div.tsml-ui .mt-xl-1{margin-top:.25rem!important}div.tsml-ui .mt-xl-2{margin-top:.5rem!important}div.tsml-ui .mt-xl-3{margin-top:1rem!important}div.tsml-ui .mt-xl-4{margin-top:1.5rem!important}div.tsml-ui .mt-xl-5{margin-top:3rem!important}div.tsml-ui .mt-xl-auto{margin-top:auto!important}div.tsml-ui .me-xl-0{margin-right:0!important}div.tsml-ui .me-xl-1{margin-right:.25rem!important}div.tsml-ui .me-xl-2{margin-right:.5rem!important}div.tsml-ui .me-xl-3{margin-right:1rem!important}div.tsml-ui .me-xl-4{margin-right:1.5rem!important}div.tsml-ui .me-xl-5{margin-right:3rem!important}div.tsml-ui .me-xl-auto{margin-right:auto!important}div.tsml-ui .mb-xl-0{margin-bottom:0!important}div.tsml-ui .mb-xl-1{margin-bottom:.25rem!important}div.tsml-ui .mb-xl-2{margin-bottom:.5rem!important}div.tsml-ui .mb-xl-3{margin-bottom:1rem!important}div.tsml-ui .mb-xl-4{margin-bottom:1.5rem!important}div.tsml-ui .mb-xl-5{margin-bottom:3rem!important}div.tsml-ui .mb-xl-auto{margin-bottom:auto!important}div.tsml-ui .ms-xl-0{margin-left:0!important}div.tsml-ui .ms-xl-1{margin-left:.25rem!important}div.tsml-ui .ms-xl-2{margin-left:.5rem!important}div.tsml-ui .ms-xl-3{margin-left:1rem!important}div.tsml-ui .ms-xl-4{margin-left:1.5rem!important}div.tsml-ui .ms-xl-5{margin-left:3rem!important}div.tsml-ui .ms-xl-auto{margin-left:auto!important}div.tsml-ui .p-xl-0{padding:0!important}div.tsml-ui .p-xl-1{padding:.25rem!important}div.tsml-ui .p-xl-2{padding:.5rem!important}div.tsml-ui .p-xl-3{padding:1rem!important}div.tsml-ui .p-xl-4{padding:1.5rem!important}div.tsml-ui .p-xl-5{padding:3rem!important}div.tsml-ui .px-xl-0{padding-left:0!important;padding-right:0!important}div.tsml-ui .px-xl-1{padding-left:.25rem!important;padding-right:.25rem!important}div.tsml-ui .px-xl-2{padding-left:.5rem!important;padding-right:.5rem!important}div.tsml-ui .px-xl-3{padding-left:1rem!important;padding-right:1rem!important}div.tsml-ui .px-xl-4{padding-left:1.5rem!important;padding-right:1.5rem!important}div.tsml-ui .px-xl-5{padding-left:3rem!important;padding-right:3rem!important}div.tsml-ui .py-xl-0{padding-bottom:0!important;padding-top:0!important}div.tsml-ui .py-xl-1{padding-bottom:.25rem!important;padding-top:.25rem!important}div.tsml-ui .py-xl-2{padding-bottom:.5rem!important;padding-top:.5rem!important}div.tsml-ui .py-xl-3{padding-bottom:1rem!important;padding-top:1rem!important}div.tsml-ui .py-xl-4{padding-bottom:1.5rem!important;padding-top:1.5rem!important}div.tsml-ui .py-xl-5{padding-bottom:3rem!important;padding-top:3rem!important}div.tsml-ui .pt-xl-0{padding-top:0!important}div.tsml-ui .pt-xl-1{padding-top:.25rem!important}div.tsml-ui .pt-xl-2{padding-top:.5rem!important}div.tsml-ui .pt-xl-3{padding-top:1rem!important}div.tsml-ui .pt-xl-4{padding-top:1.5rem!important}div.tsml-ui .pt-xl-5{padding-top:3rem!important}div.tsml-ui .pe-xl-0{padding-right:0!important}div.tsml-ui .pe-xl-1{padding-right:.25rem!important}div.tsml-ui .pe-xl-2{padding-right:.5rem!important}div.tsml-ui .pe-xl-3{padding-right:1rem!important}div.tsml-ui .pe-xl-4{padding-right:1.5rem!important}div.tsml-ui .pe-xl-5{padding-right:3rem!important}div.tsml-ui .pb-xl-0{padding-bottom:0!important}div.tsml-ui .pb-xl-1{padding-bottom:.25rem!important}div.tsml-ui .pb-xl-2{padding-bottom:.5rem!important}div.tsml-ui .pb-xl-3{padding-bottom:1rem!important}div.tsml-ui .pb-xl-4{padding-bottom:1.5rem!important}div.tsml-ui .pb-xl-5{padding-bottom:3rem!important}div.tsml-ui .ps-xl-0{padding-left:0!important}div.tsml-ui .ps-xl-1{padding-left:.25rem!important}div.tsml-ui .ps-xl-2{padding-left:.5rem!important}div.tsml-ui .ps-xl-3{padding-left:1rem!important}div.tsml-ui .ps-xl-4{padding-left:1.5rem!important}div.tsml-ui .ps-xl-5{padding-left:3rem!important}div.tsml-ui .text-xl-start{text-align:left!important}div.tsml-ui .text-xl-end{text-align:right!important}div.tsml-ui .text-xl-center{text-align:center!important}}@media (min-width:1400px){div.tsml-ui .float-xxl-start{float:left!important}div.tsml-ui .float-xxl-end{float:right!important}div.tsml-ui .float-xxl-none{float:none!important}div.tsml-ui .d-xxl-inline{display:inline!important}div.tsml-ui .d-xxl-inline-block{display:inline-block!important}div.tsml-ui .d-xxl-block{display:block!important}div.tsml-ui .d-xxl-grid{display:grid!important}div.tsml-ui .d-xxl-table{display:table!important}div.tsml-ui .d-xxl-table-row{display:table-row!important}div.tsml-ui .d-xxl-table-cell{display:table-cell!important}div.tsml-ui .d-xxl-flex{display:flex!important}div.tsml-ui .d-xxl-inline-flex{display:inline-flex!important}div.tsml-ui .d-xxl-none{display:none!important}div.tsml-ui .flex-xxl-fill{flex:1 1 auto!important}div.tsml-ui .flex-xxl-row{flex-direction:row!important}div.tsml-ui .flex-xxl-column{flex-direction:column!important}div.tsml-ui .flex-xxl-row-reverse{flex-direction:row-reverse!important}div.tsml-ui .flex-xxl-column-reverse{flex-direction:column-reverse!important}div.tsml-ui .flex-xxl-grow-0{flex-grow:0!important}div.tsml-ui .flex-xxl-grow-1{flex-grow:1!important}div.tsml-ui .flex-xxl-shrink-0{flex-shrink:0!important}div.tsml-ui .flex-xxl-shrink-1{flex-shrink:1!important}div.tsml-ui .flex-xxl-wrap{flex-wrap:wrap!important}div.tsml-ui .flex-xxl-nowrap{flex-wrap:nowrap!important}div.tsml-ui .flex-xxl-wrap-reverse{flex-wrap:wrap-reverse!important}div.tsml-ui .gap-xxl-0{gap:0!important}div.tsml-ui .gap-xxl-1{gap:.25rem!important}div.tsml-ui .gap-xxl-2{gap:.5rem!important}div.tsml-ui .gap-xxl-3{gap:1rem!important}div.tsml-ui .gap-xxl-4{gap:1.5rem!important}div.tsml-ui .gap-xxl-5{gap:3rem!important}div.tsml-ui .justify-content-xxl-start{justify-content:flex-start!important}div.tsml-ui .justify-content-xxl-end{justify-content:flex-end!important}div.tsml-ui .justify-content-xxl-center{justify-content:center!important}div.tsml-ui .justify-content-xxl-between{justify-content:space-between!important}div.tsml-ui .justify-content-xxl-around{justify-content:space-around!important}div.tsml-ui .justify-content-xxl-evenly{justify-content:space-evenly!important}div.tsml-ui .align-items-xxl-start{align-items:flex-start!important}div.tsml-ui .align-items-xxl-end{align-items:flex-end!important}div.tsml-ui .align-items-xxl-center{align-items:center!important}div.tsml-ui .align-items-xxl-baseline{align-items:baseline!important}div.tsml-ui .align-items-xxl-stretch{align-items:stretch!important}div.tsml-ui .align-content-xxl-start{align-content:flex-start!important}div.tsml-ui .align-content-xxl-end{align-content:flex-end!important}div.tsml-ui .align-content-xxl-center{align-content:center!important}div.tsml-ui .align-content-xxl-between{align-content:space-between!important}div.tsml-ui .align-content-xxl-around{align-content:space-around!important}div.tsml-ui .align-content-xxl-stretch{align-content:stretch!important}div.tsml-ui .align-self-xxl-auto{align-self:auto!important}div.tsml-ui .align-self-xxl-start{align-self:flex-start!important}div.tsml-ui .align-self-xxl-end{align-self:flex-end!important}div.tsml-ui .align-self-xxl-center{align-self:center!important}div.tsml-ui .align-self-xxl-baseline{align-self:baseline!important}div.tsml-ui .align-self-xxl-stretch{align-self:stretch!important}div.tsml-ui .order-xxl-first{order:-1!important}div.tsml-ui .order-xxl-0{order:0!important}div.tsml-ui .order-xxl-1{order:1!important}div.tsml-ui .order-xxl-2{order:2!important}div.tsml-ui .order-xxl-3{order:3!important}div.tsml-ui .order-xxl-4{order:4!important}div.tsml-ui .order-xxl-5{order:5!important}div.tsml-ui .order-xxl-last{order:6!important}div.tsml-ui .m-xxl-0{margin:0!important}div.tsml-ui .m-xxl-1{margin:.25rem!important}div.tsml-ui .m-xxl-2{margin:.5rem!important}div.tsml-ui .m-xxl-3{margin:1rem!important}div.tsml-ui .m-xxl-4{margin:1.5rem!important}div.tsml-ui .m-xxl-5{margin:3rem!important}div.tsml-ui .m-xxl-auto{margin:auto!important}div.tsml-ui .mx-xxl-0{margin-left:0!important;margin-right:0!important}div.tsml-ui .mx-xxl-1{margin-left:.25rem!important;margin-right:.25rem!important}div.tsml-ui .mx-xxl-2{margin-left:.5rem!important;margin-right:.5rem!important}div.tsml-ui .mx-xxl-3{margin-left:1rem!important;margin-right:1rem!important}div.tsml-ui .mx-xxl-4{margin-left:1.5rem!important;margin-right:1.5rem!important}div.tsml-ui .mx-xxl-5{margin-left:3rem!important;margin-right:3rem!important}div.tsml-ui .mx-xxl-auto{margin-left:auto!important;margin-right:auto!important}div.tsml-ui .my-xxl-0{margin-bottom:0!important;margin-top:0!important}div.tsml-ui .my-xxl-1{margin-bottom:.25rem!important;margin-top:.25rem!important}div.tsml-ui .my-xxl-2{margin-bottom:.5rem!important;margin-top:.5rem!important}div.tsml-ui .my-xxl-3{margin-bottom:1rem!important;margin-top:1rem!important}div.tsml-ui .my-xxl-4{margin-bottom:1.5rem!important;margin-top:1.5rem!important}div.tsml-ui .my-xxl-5{margin-bottom:3rem!important;margin-top:3rem!important}div.tsml-ui .my-xxl-auto{margin-bottom:auto!important;margin-top:auto!important}div.tsml-ui .mt-xxl-0{margin-top:0!important}div.tsml-ui .mt-xxl-1{margin-top:.25rem!important}div.tsml-ui .mt-xxl-2{margin-top:.5rem!important}div.tsml-ui .mt-xxl-3{margin-top:1rem!important}div.tsml-ui .mt-xxl-4{margin-top:1.5rem!important}div.tsml-ui .mt-xxl-5{margin-top:3rem!important}div.tsml-ui .mt-xxl-auto{margin-top:auto!important}div.tsml-ui .me-xxl-0{margin-right:0!important}div.tsml-ui .me-xxl-1{margin-right:.25rem!important}div.tsml-ui .me-xxl-2{margin-right:.5rem!important}div.tsml-ui .me-xxl-3{margin-right:1rem!important}div.tsml-ui .me-xxl-4{margin-right:1.5rem!important}div.tsml-ui .me-xxl-5{margin-right:3rem!important}div.tsml-ui .me-xxl-auto{margin-right:auto!important}div.tsml-ui .mb-xxl-0{margin-bottom:0!important}div.tsml-ui .mb-xxl-1{margin-bottom:.25rem!important}div.tsml-ui .mb-xxl-2{margin-bottom:.5rem!important}div.tsml-ui .mb-xxl-3{margin-bottom:1rem!important}div.tsml-ui .mb-xxl-4{margin-bottom:1.5rem!important}div.tsml-ui .mb-xxl-5{margin-bottom:3rem!important}div.tsml-ui .mb-xxl-auto{margin-bottom:auto!important}div.tsml-ui .ms-xxl-0{margin-left:0!important}div.tsml-ui .ms-xxl-1{margin-left:.25rem!important}div.tsml-ui .ms-xxl-2{margin-left:.5rem!important}div.tsml-ui .ms-xxl-3{margin-left:1rem!important}div.tsml-ui .ms-xxl-4{margin-left:1.5rem!important}div.tsml-ui .ms-xxl-5{margin-left:3rem!important}div.tsml-ui .ms-xxl-auto{margin-left:auto!important}div.tsml-ui .p-xxl-0{padding:0!important}div.tsml-ui .p-xxl-1{padding:.25rem!important}div.tsml-ui .p-xxl-2{padding:.5rem!important}div.tsml-ui .p-xxl-3{padding:1rem!important}div.tsml-ui .p-xxl-4{padding:1.5rem!important}div.tsml-ui .p-xxl-5{padding:3rem!important}div.tsml-ui .px-xxl-0{padding-left:0!important;padding-right:0!important}div.tsml-ui .px-xxl-1{padding-left:.25rem!important;padding-right:.25rem!important}div.tsml-ui .px-xxl-2{padding-left:.5rem!important;padding-right:.5rem!important}div.tsml-ui .px-xxl-3{padding-left:1rem!important;padding-right:1rem!important}div.tsml-ui .px-xxl-4{padding-left:1.5rem!important;padding-right:1.5rem!important}div.tsml-ui .px-xxl-5{padding-left:3rem!important;padding-right:3rem!important}div.tsml-ui .py-xxl-0{padding-bottom:0!important;padding-top:0!important}div.tsml-ui .py-xxl-1{padding-bottom:.25rem!important;padding-top:.25rem!important}div.tsml-ui .py-xxl-2{padding-bottom:.5rem!important;padding-top:.5rem!important}div.tsml-ui .py-xxl-3{padding-bottom:1rem!important;padding-top:1rem!important}div.tsml-ui .py-xxl-4{padding-bottom:1.5rem!important;padding-top:1.5rem!important}div.tsml-ui .py-xxl-5{padding-bottom:3rem!important;padding-top:3rem!important}div.tsml-ui .pt-xxl-0{padding-top:0!important}div.tsml-ui .pt-xxl-1{padding-top:.25rem!important}div.tsml-ui .pt-xxl-2{padding-top:.5rem!important}div.tsml-ui .pt-xxl-3{padding-top:1rem!important}div.tsml-ui .pt-xxl-4{padding-top:1.5rem!important}div.tsml-ui .pt-xxl-5{padding-top:3rem!important}div.tsml-ui .pe-xxl-0{padding-right:0!important}div.tsml-ui .pe-xxl-1{padding-right:.25rem!important}div.tsml-ui .pe-xxl-2{padding-right:.5rem!important}div.tsml-ui .pe-xxl-3{padding-right:1rem!important}div.tsml-ui .pe-xxl-4{padding-right:1.5rem!important}div.tsml-ui .pe-xxl-5{padding-right:3rem!important}div.tsml-ui .pb-xxl-0{padding-bottom:0!important}div.tsml-ui .pb-xxl-1{padding-bottom:.25rem!important}div.tsml-ui .pb-xxl-2{padding-bottom:.5rem!important}div.tsml-ui .pb-xxl-3{padding-bottom:1rem!important}div.tsml-ui .pb-xxl-4{padding-bottom:1.5rem!important}div.tsml-ui .pb-xxl-5{padding-bottom:3rem!important}div.tsml-ui .ps-xxl-0{padding-left:0!important}div.tsml-ui .ps-xxl-1{padding-left:.25rem!important}div.tsml-ui .ps-xxl-2{padding-left:.5rem!important}div.tsml-ui .ps-xxl-3{padding-left:1rem!important}div.tsml-ui .ps-xxl-4{padding-left:1.5rem!important}div.tsml-ui .ps-xxl-5{padding-left:3rem!important}div.tsml-ui .text-xxl-start{text-align:left!important}div.tsml-ui .text-xxl-end{text-align:right!important}div.tsml-ui .text-xxl-center{text-align:center!important}}@media (min-width:1200px){div.tsml-ui .fs-1{font-size:2.5rem!important}div.tsml-ui .fs-2{font-size:2rem!important}div.tsml-ui .fs-3{font-size:1.75rem!important}div.tsml-ui .fs-4{font-size:1.5rem!important}}@media print{div.tsml-ui .d-print-inline{display:inline!important}div.tsml-ui .d-print-inline-block{display:inline-block!important}div.tsml-ui .d-print-block{display:block!important}div.tsml-ui .d-print-grid{display:grid!important}div.tsml-ui .d-print-table{display:table!important}div.tsml-ui .d-print-table-row{display:table-row!important}div.tsml-ui .d-print-table-cell{display:table-cell!important}div.tsml-ui .d-print-flex{display:flex!important}div.tsml-ui .d-print-inline-flex{display:inline-flex!important}div.tsml-ui .d-print-none{display:none!important}}div.tsml-ui .h1,div.tsml-ui .h2,div.tsml-ui .h3,div.tsml-ui .h4,div.tsml-ui .h5,div.tsml-ui .h6,div.tsml-ui h1,div.tsml-ui h2,div.tsml-ui h3,div.tsml-ui h4,div.tsml-ui h5,div.tsml-ui h6,div.tsml-ui ol,div.tsml-ui p,div.tsml-ui ul{margin:0;padding:0;text-align:left;text-transform:none}div.tsml-ui .h1,div.tsml-ui h1{font-size:2.5rem!important}div.tsml-ui .h2,div.tsml-ui h2{font-size:2.25rem!important}div.tsml-ui .h3,div.tsml-ui h3{font-size:2rem!important}div.tsml-ui .h4,div.tsml-ui h4{font-size:1.5rem!important}div.tsml-ui .h5,div.tsml-ui h5{font-size:1.25rem!important}div.tsml-ui .h6,div.tsml-ui h6{font-size:1rem!important;letter-spacing:normal!important}div.tsml-ui .btn-group-sm>.btn,div.tsml-ui .btn-sm{font-size:.875rem!important}div.tsml-ui .badge,div.tsml-ui .mapboxgl-ctrl-attrib-inner{font-size:.75rem!important}div.tsml-ui .btn{cursor:inherit}div.tsml-ui .btn[href]{cursor:pointer}div.tsml-ui .online.small,div.tsml-ui a.btn.online,div.tsml-ui small.online{background-color:#cfe2ff;border-color:#cfe2ff;color:#0a58ca!important}div.tsml-ui .online[href].small,div.tsml-ui a.btn.online[href],div.tsml-ui small.online[href]{border-color:#9ec5fe}div.tsml-ui .online[href].small:hover,div.tsml-ui a.btn.online[href]:hover,div.tsml-ui small.online[href]:hover{background-color:#3d8bfd;color:#fff!important}div.tsml-ui .in-person.small,div.tsml-ui a.btn.in-person,div.tsml-ui small.in-person{background-color:#d1e7dd;border-color:#d1e7dd;color:#146c43!important}div.tsml-ui .in-person[href].small,div.tsml-ui a.btn.in-person[href],div.tsml-ui small.in-person[href]{border-color:#a3cfbb}div.tsml-ui .in-person[href].small:hover,div.tsml-ui a.btn.in-person[href]:hover,div.tsml-ui small.in-person[href]:hover{background-color:#479f76;color:#fff!important}div.tsml-ui .inactive.small,div.tsml-ui a.btn.inactive,div.tsml-ui small.inactive{background-color:#f8d7da;border-color:#f8d7da;color:#b02a37!important}div.tsml-ui .inactive[href].small,div.tsml-ui a.btn.inactive[href],div.tsml-ui small.inactive[href]{border-color:#f1aeb5}div.tsml-ui .inactive[href].small:hover,div.tsml-ui a.btn.inactive[href]:hover,div.tsml-ui small.inactive[href]:hover{background-color:#e35d6a;color:#fff!important}div.tsml-ui .bg-light{background-color:#f8f9fa!important}div.tsml-ui .bg-secondary{background-color:#6c757d!important}div.tsml-ui .text-white{color:#fff!important}div.tsml-ui .text-dark{color:#343a40!important}div.tsml-ui .container-fluid,div.tsml-ui .container-lg,div.tsml-ui .container-md,div.tsml-ui .container-sm,div.tsml-ui .container-xl,div.tsml-ui .container-xxl{padding-left:var(--bs-gutter-x,.75rem)!important;padding-right:var(--bs-gutter-x,.75rem)!important}@media (min-width:768px){div.tsml-ui .container-fluid,div.tsml-ui .container-lg,div.tsml-ui .container-md,div.tsml-ui .container-sm,div.tsml-ui .container-xl,div.tsml-ui .container-xxl{min-height:100%}}div.tsml-ui .cursor-pointer{cursor:pointer}div.tsml-ui .list-group{overflow-x:hidden}div.tsml-ui .list-group .list-group-item+.list-group-item{border-top-width:0}div.tsml-ui .controls{flex:none}div.tsml-ui .controls input[type=search]::-webkit-search-cancel-button{-webkit-appearance:searchfield-cancel-button}div.tsml-ui .controls .dropdown .dropdown-menu{min-width:100%}div.tsml-ui .controls .dropdown .children a{padding-left:2rem}div.tsml-ui .controls .dropdown .children .children a{padding-left:4rem}div.tsml-ui .controls .dropdown .children .children .children a{padding-left:6rem}div.tsml-ui .controls .dropdown-menu-end{right:0}div.tsml-ui .meeting .map{height:100%;max-height:1000px;overflow:hidden;position:relative}div.tsml-ui .map{min-height:500px}div.tsml-ui .map .mapboxgl-popup{max-width:85%;width:320px;z-index:100}div.tsml-ui .map .mapboxgl-popup .mapboxgl-popup-content{padding:.75rem;position:relative}div.tsml-ui .map .mapboxgl-popup .mapboxgl-popup-content .list-group{max-height:250px}div.tsml-ui .map .mapboxgl-popup .mapboxgl-popup-content .list-group .list-group-item{font-size:.9rem;padding:.5rem}div.tsml-ui .map .mapboxgl-popup .mapboxgl-popup-content .mapboxgl-popup-close-button{background:#fff;border:1px solid #dee2e6;border-radius:100%;color:#adb5bd;font-size:1.5rem;height:30px;line-height:1;padding:0 .25rem .25rem;position:absolute;right:-10px;top:-10px;width:30px}div.tsml-ui .map .mapboxgl-popup .mapboxgl-popup-content .mapboxgl-popup-close-button:hover{background-color:inherit;color:#343a40}div.tsml-ui table.table{border-width:0;table-layout:auto}div.tsml-ui table.table td{border:0;vertical-align:middle}div.tsml-ui table.table tr{border-bottom:1px solid #dee2e6}div.tsml-ui table.table thead tr{border-bottom:1px solid #ced4da}div.tsml-ui table.table .distance{text-align:right}div.tsml-ui table.table td:first-child,div.tsml-ui table.table tr th:first-child{padding-left:1rem}div.tsml-ui table.table.table-striped>tbody>tr:nth-of-type(odd){background-color:#f8f9fa}div.tsml-ui table.table.table-striped>tbody>tr:nth-of-type(odd) td,div.tsml-ui table.table.table-striped>tbody>tr:nth-of-type(odd) time{box-shadow:none}div.tsml-ui table.table.clickable-rows tbody tr:hover a{color:#084298}@media (max-width:767.98px){div.tsml-ui table.table tr{padding:.5rem 1rem;position:relative}div.tsml-ui table.table tr td{border:0;padding:0 0 0 6rem}div.tsml-ui table.table tr td.time{left:1rem;padding-left:0;position:absolute;width:5.5rem}div.tsml-ui table.table tr td.distance{font-size:1.5rem;left:1rem;padding-left:0;position:absolute;top:3.5rem}}#wpadminbar #wp-admin-bar-edit-meeting>.ab-item:before{content:\"\\f464\";top:2px}body.theme-twentyfourteen #page:before,body.theme-twentyfourteen #secondary,body.theme-twentyfourteen .entry-header,body.twentyfourteen #page:before,body.twentyfourteen #secondary,body.twentyfourteen .entry-header{display:none}body.theme-twentyfourteen #primary,body.twentyfourteen #primary{padding-top:0}body.theme-twentyfourteen #content,body.twentyfourteen #content{margin-left:0}body.theme-twentyfourteen .entry-content,body.twentyfourteen .entry-content{max-width:none;min-height:100vh;padding:0!important}body.theme-twentyfourteen #tsml-ui table,body.twentyfourteen #tsml-ui table{font-size:1rem!important}body.theme-twentyfourteen #tsml-ui table th,body.twentyfourteen #tsml-ui table th{text-transform:none}body.theme-twentyfourteen #tsml-ui button,body.twentyfourteen #tsml-ui button{font-weight:inherit}body[class*=avada-] .fusion-tb-header{margin-bottom:0!important}body[class*=avada-] .post-content,body[class*=avada-] main#main{padding:0!important}body[class*=avada-] .avada-page-titlebar-wrapper{display:none}",""]);const r=n},3645:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var o=e(t);return t[2]?"@media ".concat(t[2]," {").concat(o,"}"):o})).join("")},t.i=function(e,o,i){"string"==typeof e&&(e=[[null,e,""]]);var n={};if(i)for(var r=0;r{"use strict";var t=function(e){return function(e){return!!e&&"object"==typeof e}(e)&&!function(e){var t=Object.prototype.toString.call(e);return"[object RegExp]"===t||"[object Date]"===t||function(e){return e.$$typeof===o}(e)}(e)};var o="function"==typeof Symbol&&Symbol.for?Symbol.for("react.element"):60103;function i(e,t){return!1!==t.clone&&t.isMergeableObject(e)?p((o=e,Array.isArray(o)?[]:{}),e,t):e;var o}function n(e,t,o){return e.concat(t).map((function(e){return i(e,o)}))}function r(e){return Object.keys(e).concat(function(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter((function(t){return e.propertyIsEnumerable(t)})):[]}(e))}function a(e,t){try{return t in e}catch(e){return!1}}function s(e,t,o){var n={};return o.isMergeableObject(e)&&r(e).forEach((function(t){n[t]=i(e[t],o)})),r(t).forEach((function(r){(function(e,t){return a(e,t)&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))})(e,r)||(a(e,r)&&o.isMergeableObject(t[r])?n[r]=function(e,t){if(!t.customMerge)return p;var o=t.customMerge(e);return"function"==typeof o?o:p}(r,o)(e[r],t[r],o):n[r]=i(t[r],o))})),n}function p(e,o,r){(r=r||{}).arrayMerge=r.arrayMerge||n,r.isMergeableObject=r.isMergeableObject||t,r.cloneUnlessOtherwiseSpecified=i;var a=Array.isArray(o);return a===Array.isArray(e)?a?r.arrayMerge(e,o,r):s(e,o,r):i(o,r)}p.all=function(e,t){if(!Array.isArray(e))throw new Error("first argument should be an array");return e.reduce((function(e,o){return p(e,o,t)}),{})};var c=p;e.exports=c},840:(e,t,o)=>{var i;!function(n,r,a,s){"use strict";var p,c=["","webkit","Moz","MS","ms","o"],l=r.createElement("div"),b=Math.round,d=Math.abs,u=Date.now;function M(e,t,o){return setTimeout(_(e,o),t)}function z(e,t,o){return!!Array.isArray(e)&&(m(e,o[t],o),!0)}function m(e,t,o){var i;if(e)if(e.forEach)e.forEach(t,o);else if(e.length!==s)for(i=0;i\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",r=n.console&&(n.console.warn||n.console.log);return r&&r.call(n.console,i,o),e.apply(this,arguments)}}p="function"!=typeof Object.assign?function(e){if(e===s||null===e)throw new TypeError("Cannot convert undefined or null to object");for(var t=Object(e),o=1;o-1}function w(e){return e.trim().split(/\s+/g)}function L(e,t,o){if(e.indexOf&&!o)return e.indexOf(t);for(var i=0;io[t]})):i.sort()),i}function k(e,t){for(var o,i,n=t[0].toUpperCase()+t.slice(1),r=0;r1&&!o.firstMultiple?o.firstMultiple=H(t):1===n&&(o.firstMultiple=!1);var r=o.firstInput,a=o.firstMultiple,p=a?a.center:r.center,c=t.center=U(i);t.timeStamp=u(),t.deltaTime=t.timeStamp-r.timeStamp,t.angle=$(p,c),t.distance=Z(p,c),function(e,t){var o=t.center,i=e.offsetDelta||{},n=e.prevDelta||{},r=e.prevInput||{};1!==t.eventType&&4!==r.eventType||(n=e.prevDelta={x:r.deltaX||0,y:r.deltaY||0},i=e.offsetDelta={x:o.x,y:o.y});t.deltaX=n.x+(o.x-i.x),t.deltaY=n.y+(o.y-i.y)}(o,t),t.offsetDirection=G(t.deltaX,t.deltaY);var l=V(t.deltaTime,t.deltaX,t.deltaY);t.overallVelocityX=l.x,t.overallVelocityY=l.y,t.overallVelocity=d(l.x)>d(l.y)?l.x:l.y,t.scale=a?(b=a.pointers,M=i,Z(M[0],M[1],Y)/Z(b[0],b[1],Y)):1,t.rotation=a?function(e,t){return $(t[1],t[0],Y)+$(e[1],e[0],Y)}(a.pointers,i):0,t.maxPointers=o.prevInput?t.pointers.length>o.prevInput.maxPointers?t.pointers.length:o.prevInput.maxPointers:t.pointers.length,function(e,t){var o,i,n,r,a=e.lastInterval||t,p=t.timeStamp-a.timeStamp;if(8!=t.eventType&&(p>25||a.velocity===s)){var c=t.deltaX-a.deltaX,l=t.deltaY-a.deltaY,b=V(p,c,l);i=b.x,n=b.y,o=d(b.x)>d(b.y)?b.x:b.y,r=G(c,l),e.lastInterval=t}else o=a.velocity,i=a.velocityX,n=a.velocityY,r=a.direction;t.velocity=o,t.velocityX=i,t.velocityY=n,t.direction=r}(o,t);var b,M;var z=e.element;x(t.srcEvent.target,z)&&(z=t.srcEvent.target);t.target=z}(e,o),e.emit("hammer.input",o),e.recognize(o),e.session.prevInput=o}function H(e){for(var t=[],o=0;o=d(t)?e<0?2:4:t<0?8:16}function Z(e,t,o){o||(o=I);var i=t[o[0]]-e[o[0]],n=t[o[1]]-e[o[1]];return Math.sqrt(i*i+n*n)}function $(e,t,o){o||(o=I);var i=t[o[0]]-e[o[0]],n=t[o[1]]-e[o[1]];return 180*Math.atan2(n,i)/Math.PI}j.prototype={handler:function(){},init:function(){this.evEl&&y(this.element,this.evEl,this.domHandler),this.evTarget&&y(this.target,this.evTarget,this.domHandler),this.evWin&&y(S(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&v(this.element,this.evEl,this.domHandler),this.evTarget&&v(this.target,this.evTarget,this.domHandler),this.evWin&&v(S(this.element),this.evWin,this.domHandler)}};var K={mousedown:1,mousemove:2,mouseup:4},J="mousedown",Q="mousemove mouseup";function ee(){this.evEl=J,this.evWin=Q,this.pressed=!1,j.apply(this,arguments)}A(ee,j,{handler:function(e){var t=K[e.type];1&t&&0===e.button&&(this.pressed=!0),2&t&&1!==e.which&&(t=4),this.pressed&&(4&t&&(this.pressed=!1),this.callback(this.manager,t,{pointers:[e],changedPointers:[e],pointerType:N,srcEvent:e}))}});var te={pointerdown:1,pointermove:2,pointerup:4,pointercancel:8,pointerout:8},oe={2:C,3:"pen",4:N,5:"kinect"},ie="pointerdown",ne="pointermove pointerup pointercancel";function re(){this.evEl=ie,this.evWin=ne,j.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}n.MSPointerEvent&&!n.PointerEvent&&(ie="MSPointerDown",ne="MSPointerMove MSPointerUp MSPointerCancel"),A(re,j,{handler:function(e){var t=this.store,o=!1,i=e.type.toLowerCase().replace("ms",""),n=te[i],r=oe[e.pointerType]||e.pointerType,a=r==C,s=L(t,e.pointerId,"pointerId");1&n&&(0===e.button||a)?s<0&&(t.push(e),s=t.length-1):12&n&&(o=!0),s<0||(t[s]=e,this.callback(this.manager,n,{pointers:t,changedPointers:[e],pointerType:r,srcEvent:e}),o&&t.splice(s,1))}});var ae={touchstart:1,touchmove:2,touchend:4,touchcancel:8},se="touchstart",pe="touchstart touchmove touchend touchcancel";function ce(){this.evTarget=se,this.evWin=pe,this.started=!1,j.apply(this,arguments)}function le(e,t){var o=R(e.touches),i=R(e.changedTouches);return 12&t&&(o=T(o.concat(i),"identifier",!0)),[o,i]}A(ce,j,{handler:function(e){var t=ae[e.type];if(1===t&&(this.started=!0),this.started){var o=le.call(this,e,t);12&t&&o[0].length-o[1].length==0&&(this.started=!1),this.callback(this.manager,t,{pointers:o[0],changedPointers:o[1],pointerType:C,srcEvent:e})}}});var be={touchstart:1,touchmove:2,touchend:4,touchcancel:8},de="touchstart touchmove touchend touchcancel";function ue(){this.evTarget=de,this.targetIds={},j.apply(this,arguments)}function Me(e,t){var o=R(e.touches),i=this.targetIds;if(3&t&&1===o.length)return i[o[0].identifier]=!0,[o,o];var n,r,a=R(e.changedTouches),s=[],p=this.target;if(r=o.filter((function(e){return x(e.target,p)})),1===t)for(n=0;n-1&&i.splice(e,1)}),2500)}}function Oe(e){for(var t=e.srcEvent.clientX,o=e.srcEvent.clientY,i=0;i-1&&this.requireFail.splice(t,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(e){return!!this.simultaneous[e.id]},emit:function(e){var t=this,o=this.state;function i(o){t.manager.emit(o,e)}o<8&&i(t.options.event+Te(o)),i(t.options.event),e.additionalEvent&&i(e.additionalEvent),o>=8&&i(t.options.event+Te(o))},tryEmit:function(e){if(this.canEmit())return this.emit(e);this.state=Le},canEmit:function(){for(var e=0;et.threshold&&n&t.direction},attrTest:function(e){return Se.prototype.attrTest.call(this,e)&&(2&this.state||!(2&this.state)&&this.directionTest(e))},emit:function(e){this.pX=e.deltaX,this.pY=e.deltaY;var t=ke(e.direction);t&&(e.additionalEvent=this.options.event+t),this._super.emit.call(this,e)}}),A(Ee,Se,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[ye]},attrTest:function(e){return this._super.attrTest.call(this,e)&&(Math.abs(e.scale-1)>this.options.threshold||2&this.state)},emit:function(e){if(1!==e.scale){var t=e.scale<1?"in":"out";e.additionalEvent=this.options.event+t}this._super.emit.call(this,e)}}),A(De,Re,{defaults:{event:"press",pointers:1,time:251,threshold:9},getTouchAction:function(){return[ge]},process:function(e){var t=this.options,o=e.pointers.length===t.pointers,i=e.distancet.time;if(this._input=e,!i||!o||12&e.eventType&&!n)this.reset();else if(1&e.eventType)this.reset(),this._timer=M((function(){this.state=8,this.tryEmit()}),t.time,this);else if(4&e.eventType)return 8;return Le},reset:function(){clearTimeout(this._timer)},emit:function(e){8===this.state&&(e&&4&e.eventType?this.manager.emit(this.options.event+"up",e):(this._input.timeStamp=u(),this.manager.emit(this.options.event,this._input)))}}),A(Ce,Se,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[ye]},attrTest:function(e){return this._super.attrTest.call(this,e)&&(Math.abs(e.rotation)>this.options.threshold||2&this.state)}}),A(Ne,Se,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:30,pointers:1},getTouchAction:function(){return Xe.prototype.getTouchAction.call(this)},attrTest:function(e){var t,o=this.options.direction;return 30&o?t=e.overallVelocity:6&o?t=e.overallVelocityX:o&P&&(t=e.overallVelocityY),this._super.attrTest.call(this,e)&&o&e.offsetDirection&&e.distance>this.options.threshold&&e.maxPointers==this.options.pointers&&d(t)>this.options.velocity&&4&e.eventType},emit:function(e){var t=ke(e.offsetDirection);t&&this.manager.emit(this.options.event+t,e),this.manager.emit(this.options.event,e)}}),A(Pe,Re,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[qe]},process:function(e){var t=this.options,o=e.pointers.length===t.pointers,i=e.distance(i=1))return i;for(;or?o=n:i=n,n=.5*(i-o)+o}return n},n.prototype.solve=function(e,t){return this.sampleCurveY(this.solveCurveX(e,t))};var r=a;function a(e,t){this.x=e,this.y=t}a.prototype={clone:function(){return new a(this.x,this.y)},add:function(e){return this.clone()._add(e)},sub:function(e){return this.clone()._sub(e)},multByPoint:function(e){return this.clone()._multByPoint(e)},divByPoint:function(e){return this.clone()._divByPoint(e)},mult:function(e){return this.clone()._mult(e)},div:function(e){return this.clone()._div(e)},rotate:function(e){return this.clone()._rotate(e)},rotateAround:function(e,t){return this.clone()._rotateAround(e,t)},matMult:function(e){return this.clone()._matMult(e)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(e){return this.x===e.x&&this.y===e.y},dist:function(e){return Math.sqrt(this.distSqr(e))},distSqr:function(e){var t=e.x-this.x,o=e.y-this.y;return t*t+o*o},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(e){return Math.atan2(this.y-e.y,this.x-e.x)},angleWith:function(e){return this.angleWithSep(e.x,e.y)},angleWithSep:function(e,t){return Math.atan2(this.x*t-this.y*e,this.x*e+this.y*t)},_matMult:function(e){var t=e[2]*this.x+e[3]*this.y;return this.x=e[0]*this.x+e[1]*this.y,this.y=t,this},_add:function(e){return this.x+=e.x,this.y+=e.y,this},_sub:function(e){return this.x-=e.x,this.y-=e.y,this},_mult:function(e){return this.x*=e,this.y*=e,this},_div:function(e){return this.x/=e,this.y/=e,this},_multByPoint:function(e){return this.x*=e.x,this.y*=e.y,this},_divByPoint:function(e){return this.x/=e.x,this.y/=e.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var e=this.y;return this.y=this.x,this.x=-e,this},_rotate:function(e){var t=Math.cos(e),o=Math.sin(e),i=o*this.x+t*this.y;return this.x=t*this.x-o*this.y,this.y=i,this},_rotateAround:function(e,t){var o=Math.cos(e),i=Math.sin(e),n=t.y+i*(this.x-t.x)+o*(this.y-t.y);return this.x=t.x+o*(this.x-t.x)-i*(this.y-t.y),this.y=n,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},a.convert=function(e){return e instanceof a?e:Array.isArray(e)?new a(e[0],e[1]):e};var s="undefined"!=typeof self?self:{},p=1e-6,c="undefined"!=typeof Float32Array?Float32Array:Array;function l(){var e=new c(9);return c!=Float32Array&&(e[1]=0,e[2]=0,e[3]=0,e[5]=0,e[6]=0,e[7]=0),e[0]=1,e[4]=1,e[8]=1,e}function b(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function d(e,t,o){var i=t[0],n=t[1],r=t[2],a=t[3],s=t[4],p=t[5],c=t[6],l=t[7],b=t[8],d=t[9],u=t[10],M=t[11],z=t[12],m=t[13],h=t[14],O=t[15],f=o[0],A=o[1],_=o[2],g=o[3];return e[0]=f*i+A*s+_*b+g*z,e[1]=f*n+A*p+_*d+g*m,e[2]=f*r+A*c+_*u+g*h,e[3]=f*a+A*l+_*M+g*O,e[4]=(f=o[4])*i+(A=o[5])*s+(_=o[6])*b+(g=o[7])*z,e[5]=f*n+A*p+_*d+g*m,e[6]=f*r+A*c+_*u+g*h,e[7]=f*a+A*l+_*M+g*O,e[8]=(f=o[8])*i+(A=o[9])*s+(_=o[10])*b+(g=o[11])*z,e[9]=f*n+A*p+_*d+g*m,e[10]=f*r+A*c+_*u+g*h,e[11]=f*a+A*l+_*M+g*O,e[12]=(f=o[12])*i+(A=o[13])*s+(_=o[14])*b+(g=o[15])*z,e[13]=f*n+A*p+_*d+g*m,e[14]=f*r+A*c+_*u+g*h,e[15]=f*a+A*l+_*M+g*O,e}function u(e,t,o){var i,n,r,a,s,p,c,l,b,d,u,M,z=o[0],m=o[1],h=o[2];return t===e?(e[12]=t[0]*z+t[4]*m+t[8]*h+t[12],e[13]=t[1]*z+t[5]*m+t[9]*h+t[13],e[14]=t[2]*z+t[6]*m+t[10]*h+t[14],e[15]=t[3]*z+t[7]*m+t[11]*h+t[15]):(n=t[1],r=t[2],a=t[3],s=t[4],p=t[5],c=t[6],l=t[7],b=t[8],d=t[9],u=t[10],M=t[11],e[0]=i=t[0],e[1]=n,e[2]=r,e[3]=a,e[4]=s,e[5]=p,e[6]=c,e[7]=l,e[8]=b,e[9]=d,e[10]=u,e[11]=M,e[12]=i*z+s*m+b*h+t[12],e[13]=n*z+p*m+d*h+t[13],e[14]=r*z+c*m+u*h+t[14],e[15]=a*z+l*m+M*h+t[15]),e}function M(e,t,o){var i=o[0],n=o[1],r=o[2];return e[0]=t[0]*i,e[1]=t[1]*i,e[2]=t[2]*i,e[3]=t[3]*i,e[4]=t[4]*n,e[5]=t[5]*n,e[6]=t[6]*n,e[7]=t[7]*n,e[8]=t[8]*r,e[9]=t[9]*r,e[10]=t[10]*r,e[11]=t[11]*r,e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}function z(e,t,o){var i=Math.sin(o),n=Math.cos(o),r=t[4],a=t[5],s=t[6],p=t[7],c=t[8],l=t[9],b=t[10],d=t[11];return t!==e&&(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[4]=r*n+c*i,e[5]=a*n+l*i,e[6]=s*n+b*i,e[7]=p*n+d*i,e[8]=c*n-r*i,e[9]=l*n-a*i,e[10]=b*n-s*i,e[11]=d*n-p*i,e}function m(e,t,o){var i=Math.sin(o),n=Math.cos(o),r=t[0],a=t[1],s=t[2],p=t[3],c=t[8],l=t[9],b=t[10],d=t[11];return t!==e&&(e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=r*n-c*i,e[1]=a*n-l*i,e[2]=s*n-b*i,e[3]=p*n-d*i,e[8]=r*i+c*n,e[9]=a*i+l*n,e[10]=s*i+b*n,e[11]=p*i+d*n,e}Math.hypot||(Math.hypot=function(){for(var e=0,t=arguments.length;t--;)e+=arguments[t]*arguments[t];return Math.sqrt(e)});var h=d;function O(){var e=new c(3);return c!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0),e}function f(e){var t=new c(3);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}function A(e){return Math.hypot(e[0],e[1],e[2])}function _(e,t,o){var i=new c(3);return i[0]=e,i[1]=t,i[2]=o,i}function g(e,t,o){return e[0]=t[0]+o[0],e[1]=t[1]+o[1],e[2]=t[2]+o[2],e}function q(e,t,o){return e[0]=t[0]-o[0],e[1]=t[1]-o[1],e[2]=t[2]-o[2],e}function y(e,t,o){return e[0]=t[0]*o[0],e[1]=t[1]*o[1],e[2]=t[2]*o[2],e}function v(e,t,o){return e[0]=Math.max(t[0],o[0]),e[1]=Math.max(t[1],o[1]),e[2]=Math.max(t[2],o[2]),e}function x(e,t,o){return e[0]=t[0]*o,e[1]=t[1]*o,e[2]=t[2]*o,e}function W(e,t,o,i){return e[0]=t[0]+o[0]*i,e[1]=t[1]+o[1]*i,e[2]=t[2]+o[2]*i,e}function w(e,t){var o=t[0],i=t[1],n=t[2],r=o*o+i*i+n*n;return r>0&&(r=1/Math.sqrt(r)),e[0]=t[0]*r,e[1]=t[1]*r,e[2]=t[2]*r,e}function L(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}function R(e,t,o){var i=t[0],n=t[1],r=t[2],a=o[0],s=o[1],p=o[2];return e[0]=n*p-r*s,e[1]=r*a-i*p,e[2]=i*s-n*a,e}function T(e,t,o){var i=t[0],n=t[1],r=t[2],a=o[3]*i+o[7]*n+o[11]*r+o[15];return e[0]=(o[0]*i+o[4]*n+o[8]*r+o[12])/(a=a||1),e[1]=(o[1]*i+o[5]*n+o[9]*r+o[13])/a,e[2]=(o[2]*i+o[6]*n+o[10]*r+o[14])/a,e}function k(e,t,o){var i=o[0],n=o[1],r=o[2],a=t[0],s=t[1],p=t[2],c=n*p-r*s,l=r*a-i*p,b=i*s-n*a,d=n*b-r*l,u=r*c-i*b,M=i*l-n*c,z=2*o[3];return l*=z,b*=z,u*=2,M*=2,e[0]=a+(c*=z)+(d*=2),e[1]=s+l+u,e[2]=p+b+M,e}var B,S=q,X=y,E=A;function D(e,t,o){var i=t[0],n=t[1],r=t[2],a=t[3];return e[0]=o[0]*i+o[4]*n+o[8]*r+o[12]*a,e[1]=o[1]*i+o[5]*n+o[9]*r+o[13]*a,e[2]=o[2]*i+o[6]*n+o[10]*r+o[14]*a,e[3]=o[3]*i+o[7]*n+o[11]*r+o[15]*a,e}function C(){var e=new c(4);return c!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0),e[3]=1,e}function N(e){return e[0]=0,e[1]=0,e[2]=0,e[3]=1,e}function P(e,t,o){o*=.5;var i=t[0],n=t[1],r=t[2],a=t[3],s=Math.sin(o),p=Math.cos(o);return e[0]=i*p+a*s,e[1]=n*p+r*s,e[2]=r*p-n*s,e[3]=a*p-i*s,e}function I(e,t){return e[0]===t[0]&&e[1]===t[1]}O(),B=new c(4),c!=Float32Array&&(B[0]=0,B[1]=0,B[2]=0,B[3]=0),O(),_(1,0,0),_(0,1,0),C(),C(),l(),function(){var e;e=new c(2),c!=Float32Array&&(e[0]=0,e[1]=0)}();const Y=Math.PI/180,j=180/Math.PI;function F(e){return e*Y}function H(e){return e*j}const U=[[0,0],[1,0],[1,1],[0,1]];function V(e){if(e<=0)return 0;if(e>=1)return 1;const t=e*e,o=t*e;return 4*(e<.5?o:3*(e-t)+o-.75)}function G(e,t,i,n){const r=new o(e,t,i,n);return function(e){return r.solve(e)}}const Z=G(.25,.1,.25,1);function $(e,t,o){return Math.min(o,Math.max(t,e))}function K(e,t,o){return(o=$((o-e)/(t-e),0,1))*o*(3-2*o)}function J(e,t,o){const i=o-t,n=((e-t)%i+i)%i+t;return n===t?o:n}function Q(e,t,o){if(!e.length)return o(null,[]);let i=e.length;const n=new Array(e.length);let r=null;e.forEach(((e,a)=>{t(e,((e,t)=>{e&&(r=e),n[a]=t,0==--i&&o(r,n)}))}))}function ee(e){const t=[];for(const o in e)t.push(e[o]);return t}function te(e,...t){for(const o of t)for(const t in o)e[t]=o[t];return e}let oe=1;function ie(){return oe++}function ne(){return function e(t){return t?(t^16*Math.random()>>t/4).toString(16):([1e7]+-[1e3]+-4e3+-8e3+-1e11).replace(/[018]/g,e)}()}function re(e){return e<=1?1:Math.pow(2,Math.ceil(Math.log(e)/Math.LN2))}function ae(e){return!!e&&/^[0-9a-f]{8}-[0-9a-f]{4}-[4][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(e)}function se(e,t){e.forEach((e=>{t[e]&&(t[e]=t[e].bind(t))}))}function pe(e,t){return-1!==e.indexOf(t,e.length-t.length)}function ce(e,t,o){const i={};for(const n in e)i[n]=t.call(o||this,e[n],n,e);return i}function le(e,t,o){const i={};for(const n in e)t.call(o||this,e[n],n,e)&&(i[n]=e[n]);return i}function be(e){return Array.isArray(e)?e.map(be):"object"==typeof e&&e?ce(e,be):e}const de={};function ue(e){de[e]||("undefined"!=typeof console&&console.warn(e),de[e]=!0)}function Me(e,t,o){return(o.y-e.y)*(t.x-e.x)>(t.y-e.y)*(o.x-e.x)}function ze(e){let t=0;for(let o,i,n=0,r=e.length,a=r-1;n@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,((e,o,i,n)=>{const r=i||n;return t[o]=!r||r.toLowerCase(),""})),t["max-age"]){const e=parseInt(t["max-age"],10);isNaN(e)?delete t["max-age"]:t["max-age"]=e}return t}let Oe,fe,Ae,_e=null;function ge(e){if(null==_e){const t=e.navigator?e.navigator.userAgent:null;_e=!!e.safari||!(!t||!(/\b(iPad|iPhone|iPod)\b/.test(t)||t.match("Safari")&&!t.match("Chrome")))}return _e}function qe(e){try{const t=s[e];return t.setItem("_mapbox_test_",1),t.removeItem("_mapbox_test_"),!0}catch(e){return!1}}const ye={now:()=>void 0!==Ae?Ae:s.performance.now(),setNow(e){Ae=e},restoreNow(){Ae=void 0},frame(e){const t=s.requestAnimationFrame(e);return{cancel:()=>s.cancelAnimationFrame(t)}},getImageData(e,t=0){const o=s.document.createElement("canvas"),i=o.getContext("2d");if(!i)throw new Error("failed to create canvas 2d context");return o.width=e.width,o.height=e.height,i.drawImage(e,0,0,e.width,e.height),i.getImageData(-t,-t,e.width+2*t,e.height+2*t)},resolveURL:e=>(Oe||(Oe=s.document.createElement("a")),Oe.href=e,Oe.href),get devicePixelRatio(){return s.devicePixelRatio},get prefersReducedMotion(){return!!s.matchMedia&&(null==fe&&(fe=s.matchMedia("(prefers-reduced-motion: reduce)")),fe.matches)}};let ve;const xe={API_URL:"https://api.mapbox.com",get API_URL_REGEX(){if(null==ve){const e=/^((https?:)?\/\/)?([^\/]+\.)?mapbox\.c(n|om)(\/|\?|$)/i;try{ve=null!=i.env.API_URL_REGEX?new RegExp(i.env.API_URL_REGEX):e}catch(t){ve=e}}return ve},get EVENTS_URL(){return this.API_URL?0===this.API_URL.indexOf("https://api.mapbox.cn")?"https://events.mapbox.cn/events/v2":0===this.API_URL.indexOf("https://api.mapbox.com")?"https://events.mapbox.com/events/v2":null:null},SESSION_PATH:"/map-sessions/v1",FEEDBACK_URL:"https://apps.mapbox.com/feedback",TILE_URL_VERSION:"v4",RASTER_URL_PREFIX:"raster/v1",REQUIRE_ACCESS_TOKEN:!0,ACCESS_TOKEN:null,MAX_PARALLEL_IMAGE_REQUESTS:16},We={supported:!1,testSupport:function(e){!Re&&Le&&(Te?ke(e):we=e)}};let we,Le,Re=!1,Te=!1;function ke(e){const t=e.createTexture();e.bindTexture(e.TEXTURE_2D,t);try{if(e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,Le),e.isContextLost())return;We.supported=!0}catch(e){}e.deleteTexture(t),Re=!0}s.document&&(Le=s.document.createElement("img"),Le.onload=function(){we&&ke(we),we=null,Te=!0},Le.onerror=function(){Re=!0,we=null},Le.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=");const Be="01",Se="NO_ACCESS_TOKEN";function Xe(e){return 0===e.indexOf("mapbox:")}function Ee(e){return xe.API_URL_REGEX.test(e)}const De=/^(\w+):\/\/([^/?]*)(\/[^?]+)?\??(.+)?/;function Ce(e){const t=e.match(De);if(!t)throw new Error("Unable to parse URL object");return{protocol:t[1],authority:t[2],path:t[3]||"/",params:t[4]?t[4].split("&"):[]}}function Ne(e){const t=e.params.length?`?${e.params.join("&")}`:"";return`${e.protocol}://${e.authority}${e.path}${t}`}function Pe(e){if(!e)return null;const t=e.split(".");if(!t||3!==t.length)return null;try{return JSON.parse(decodeURIComponent(s.atob(t[1]).split("").map((e=>"%"+("00"+e.charCodeAt(0).toString(16)).slice(-2))).join("")))}catch(e){return null}}class Ie{constructor(e){this.type=e,this.anonId=null,this.eventData={},this.queue=[],this.pendingRequest=null}getStorageKey(e){const t=Pe(xe.ACCESS_TOKEN);let o="";return o=t&&t.u?s.btoa(encodeURIComponent(t.u).replace(/%([0-9A-F]{2})/g,((e,t)=>String.fromCharCode(Number("0x"+t))))):xe.ACCESS_TOKEN||"",e?`mapbox.eventData.${e}:${o}`:`mapbox.eventData:${o}`}fetchEventData(){const e=qe("localStorage"),t=this.getStorageKey(),o=this.getStorageKey("uuid");if(e)try{const e=s.localStorage.getItem(t);e&&(this.eventData=JSON.parse(e));const i=s.localStorage.getItem(o);i&&(this.anonId=i)}catch(e){ue("Unable to read from LocalStorage")}}saveEventData(){const e=qe("localStorage"),t=this.getStorageKey(),o=this.getStorageKey("uuid");if(e)try{s.localStorage.setItem(o,this.anonId),Object.keys(this.eventData).length>=1&&s.localStorage.setItem(t,JSON.stringify(this.eventData))}catch(e){ue("Unable to write to LocalStorage")}}processRequests(e){}postEvent(e,o,i,n){if(!xe.EVENTS_URL)return;const r=Ce(xe.EVENTS_URL);r.params.push(`access_token=${n||xe.ACCESS_TOKEN||""}`);const a={event:this.type,created:new Date(e).toISOString(),sdkIdentifier:"mapbox-gl-js",sdkVersion:t,skuId:Be,userId:this.anonId},s=o?te(a,o):a,p={url:Ne(r),headers:{"Content-Type":"text/plain"},body:JSON.stringify([s])};this.pendingRequest=pt(p,(e=>{this.pendingRequest=null,i(e),this.saveEventData(),this.processRequests(n)}))}queueRequest(e,t){this.queue.push(e),this.processRequests(t)}}const Ye=new class extends Ie{constructor(e){super("appUserTurnstile"),this._customAccessToken=e}postTurnstileEvent(e,t){xe.EVENTS_URL&&xe.ACCESS_TOKEN&&Array.isArray(e)&&e.some((e=>Xe(e)||Ee(e)))&&this.queueRequest(Date.now(),t)}processRequests(e){if(this.pendingRequest||0===this.queue.length)return;this.anonId&&this.eventData.lastSuccess&&this.eventData.tokenU||this.fetchEventData();const t=Pe(xe.ACCESS_TOKEN),o=t?t.u:xe.ACCESS_TOKEN;let i=o!==this.eventData.tokenU;ae(this.anonId)||(this.anonId=ne(),i=!0);const n=this.queue.shift();if(this.eventData.lastSuccess){const e=new Date(this.eventData.lastSuccess),t=new Date(n),o=(n-this.eventData.lastSuccess)/864e5;i=i||o>=1||o<-1||e.getDate()!==t.getDate()}else i=!0;if(!i)return this.processRequests();this.postEvent(n,{"enabled.telemetry":!1},(e=>{e||(this.eventData.lastSuccess=n,this.eventData.tokenU=o)}),e)}},je=Ye.postTurnstileEvent.bind(Ye),Fe=new class extends Ie{constructor(){super("map.load"),this.success={},this.skuToken=""}postMapLoadEvent(e,t,o,i){this.skuToken=t,this.errorCb=i,xe.EVENTS_URL&&(o||xe.ACCESS_TOKEN?this.queueRequest({id:e,timestamp:Date.now()},o):this.errorCb(new Error(Se)))}processRequests(e){if(this.pendingRequest||0===this.queue.length)return;const{id:t,timestamp:o}=this.queue.shift();t&&this.success[t]||(this.anonId||this.fetchEventData(),ae(this.anonId)||(this.anonId=ne()),this.postEvent(o,{skuToken:this.skuToken},(e=>{e?this.errorCb(e):t&&(this.success[t]=!0)}),e))}},He=Fe.postMapLoadEvent.bind(Fe),Ue=new class extends Ie{constructor(){super("map.auth"),this.success={},this.skuToken=""}getSession(e,t,o,i){if(!xe.API_URL||!xe.SESSION_PATH)return;const n=Ce(xe.API_URL+xe.SESSION_PATH);n.params.push(`sku=${t||""}`),n.params.push(`access_token=${i||xe.ACCESS_TOKEN||""}`);const r={url:Ne(n),headers:{"Content-Type":"text/plain"}};this.pendingRequest=ct(r,(e=>{this.pendingRequest=null,o(e),this.saveEventData(),this.processRequests(i)}))}getSessionAPI(e,t,o,i){this.skuToken=t,this.errorCb=i,xe.SESSION_PATH&&xe.API_URL&&(o||xe.ACCESS_TOKEN?this.queueRequest({id:e,timestamp:Date.now()},o):this.errorCb(new Error(Se)))}processRequests(e){if(this.pendingRequest||0===this.queue.length)return;const{id:t,timestamp:o}=this.queue.shift();t&&this.success[t]||this.getSession(o,this.skuToken,(e=>{e?this.errorCb(e):t&&(this.success[t]=!0)}),e)}},Ve=Ue.getSessionAPI.bind(Ue),Ge=new Set,Ze="mapbox-tiles";let $e,Ke,Je=500,Qe=50;function et(){s.caches&&!$e&&($e=s.caches.open(Ze))}function tt(e){const t=e.indexOf("?");return t<0?e:e.slice(0,t)}let ot=1/0;const it={Unknown:"Unknown",Style:"Style",Source:"Source",Tile:"Tile",Glyphs:"Glyphs",SpriteImage:"SpriteImage",SpriteJSON:"SpriteJSON",Image:"Image"};"function"==typeof Object.freeze&&Object.freeze(it);class nt extends Error{constructor(e,t,o){401===t&&Ee(o)&&(e+=": you may have provided an invalid Mapbox access token. See https://www.mapbox.com/api-documentation/#access-tokens-and-token-scopes"),super(e),this.status=t,this.url=o}toString(){return`${this.name}: ${this.message} (${this.status}): ${this.url}`}}const rt=me()?()=>self.worker&&self.worker.referrer:()=>("blob:"===s.location.protocol?s.parent:s).location.href,at=function(e,t){if(!(/^file:/.test(o=e.url)||/^file:/.test(rt())&&!/^\w+:/.test(o))){if(s.fetch&&s.Request&&s.AbortController&&s.Request.prototype.hasOwnProperty("signal"))return function(e,t){const o=new s.AbortController,i=new s.Request(e.url,{method:e.method||"GET",body:e.body,credentials:e.credentials,headers:e.headers,referrer:rt(),signal:o.signal});let n=!1,r=!1;const a=(p=i.url).indexOf("sku=")>0&&Ee(p);var p;"json"===e.type&&i.headers.set("Accept","application/json");const c=(o,n,p)=>{if(r)return;if(o&&"SecurityError"!==o.message&&ue(o),n&&p)return l(n);const c=Date.now();s.fetch(i).then((o=>{if(o.ok){const e=a?o.clone():null;return l(o,e,c)}return t(new nt(o.statusText,o.status,e.url))})).catch((e=>{20!==e.code&&t(new Error(e.message))}))},l=(o,a,p)=>{("arrayBuffer"===e.type?o.arrayBuffer():"json"===e.type?o.json():o.text()).then((e=>{r||(a&&p&&function(e,t,o){if(et(),!$e)return;const i={status:t.status,statusText:t.statusText,headers:new s.Headers};t.headers.forEach(((e,t)=>i.headers.set(t,e)));const n=he(t.headers.get("Cache-Control")||"");n["no-store"]||(n["max-age"]&&i.headers.set("Expires",new Date(o+1e3*n["max-age"]).toUTCString()),new Date(i.headers.get("Expires")).getTime()-o<42e4||function(e,t){if(void 0===Ke)try{new Response(new ReadableStream),Ke=!0}catch(e){Ke=!1}Ke?t(e.body):e.blob().then(t)}(t,(t=>{const o=new s.Response(t,i);et(),$e&&$e.then((t=>t.put(tt(e.url),o))).catch((e=>ue(e.message)))})))}(i,a,p),n=!0,t(null,e,o.headers.get("Cache-Control"),o.headers.get("Expires")))})).catch((e=>{r||t(new Error(e.message))}))};return a?function(e,t){if(et(),!$e)return t(null);const o=tt(e.url);$e.then((e=>{e.match(o).then((i=>{const n=function(e){if(!e)return!1;const t=new Date(e.headers.get("Expires")||0),o=he(e.headers.get("Cache-Control")||"");return t>Date.now()&&!o["no-cache"]}(i);e.delete(o),n&&e.put(o,i.clone()),t(null,i,n)})).catch(t)})).catch(t)}(i,c):c(null,null),{cancel:()=>{r=!0,n||o.abort()}}}(e,t);if(me()&&self.worker&&self.worker.actor)return self.worker.actor.send("getResource",e,t,void 0,!0)}var o;return function(e,t){const o=new s.XMLHttpRequest;o.open(e.method||"GET",e.url,!0),"arrayBuffer"===e.type&&(o.responseType="arraybuffer");for(const t in e.headers)o.setRequestHeader(t,e.headers[t]);return"json"===e.type&&(o.responseType="text",o.setRequestHeader("Accept","application/json")),o.withCredentials="include"===e.credentials,o.onerror=()=>{t(new Error(o.statusText))},o.onload=()=>{if((o.status>=200&&o.status<300||0===o.status)&&null!==o.response){let i=o.response;if("json"===e.type)try{i=JSON.parse(o.response)}catch(e){return t(e)}t(null,i,o.getResponseHeader("Cache-Control"),o.getResponseHeader("Expires"))}else t(new nt(o.statusText,o.status,e.url))},o.send(e.body),{cancel:()=>o.abort()}}(e,t)},st=function(e,t){return at(te(e,{type:"arrayBuffer"}),t)},pt=function(e,t){return at(te(e,{method:"POST"}),t)},ct=function(e,t){return at(te(e,{method:"GET"}),t)};function lt(e){const t=s.document.createElement("a");return t.href=e,t.protocol===s.document.location.protocol&&t.host===s.document.location.host}const bt="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";let dt,ut;dt=[],ut=0;const Mt=function(e,t){if(We.supported&&(e.headers||(e.headers={}),e.headers.accept="image/webp,*/*"),ut>=xe.MAX_PARALLEL_IMAGE_REQUESTS){const o={requestParameters:e,callback:t,cancelled:!1,cancel(){this.cancelled=!0}};return dt.push(o),o}ut++;let o=!1;const i=()=>{if(!o)for(o=!0,ut--;dt.length&&ut{i(),e?t(e):o&&(s.createImageBitmap?function(e,t){const o=new s.Blob([new Uint8Array(e)],{type:"image/png"});s.createImageBitmap(o).then((e=>{t(null,e)})).catch((e=>{t(new Error(`Could not load image because of ${e.message}. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported.`))}))}(o,((e,o)=>t(e,o,n,r))):function(e,t){const o=new s.Image,i=s.URL;o.onload=()=>{t(null,o),i.revokeObjectURL(o.src),o.onload=null,s.requestAnimationFrame((()=>{o.src=bt}))},o.onerror=()=>t(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."));const n=new s.Blob([new Uint8Array(e)],{type:"image/png"});o.src=e.byteLength?i.createObjectURL(n):bt}(o,((e,o)=>t(e,o,n,r))))}));return{cancel:()=>{n.cancel(),i()}}};function zt(e,t,o){o[e]&&-1!==o[e].indexOf(t)||(o[e]=o[e]||[],o[e].push(t))}function mt(e,t,o){if(o&&o[e]){const i=o[e].indexOf(t);-1!==i&&o[e].splice(i,1)}}class ht{constructor(e,t={}){te(this,t),this.type=e}}class Ot extends ht{constructor(e,t={}){super("error",te({error:e},t))}}class ft{on(e,t){return this._listeners=this._listeners||{},zt(e,t,this._listeners),this}off(e,t){return mt(e,t,this._listeners),mt(e,t,this._oneTimeListeners),this}once(e,t){return t?(this._oneTimeListeners=this._oneTimeListeners||{},zt(e,t,this._oneTimeListeners),this):new Promise((t=>this.once(e,t)))}fire(e,t){"string"==typeof e&&(e=new ht(e,t||{}));const o=e.type;if(this.listens(o)){e.target=this;const t=this._listeners&&this._listeners[o]?this._listeners[o].slice():[];for(const o of t)o.call(this,e);const i=this._oneTimeListeners&&this._oneTimeListeners[o]?this._oneTimeListeners[o].slice():[];for(const t of i)mt(o,t,this._oneTimeListeners),t.call(this,e);const n=this._eventedParent;n&&(te(e,"function"==typeof this._eventedParentData?this._eventedParentData():this._eventedParentData),n.fire(e))}else e instanceof Ot&&console.error(e.error);return this}listens(e){return!!(this._listeners&&this._listeners[e]&&this._listeners[e].length>0||this._oneTimeListeners&&this._oneTimeListeners[e]&&this._oneTimeListeners[e].length>0||this._eventedParent&&this._eventedParent.listens(e))}setEventedParent(e,t){return this._eventedParent=e,this._eventedParentData=t,this}}var At=JSON.parse('{"$version":8,"$root":{"version":{"required":true,"type":"enum","values":[8]},"name":{"type":"string"},"metadata":{"type":"*"},"center":{"type":"array","value":"number"},"zoom":{"type":"number"},"bearing":{"type":"number","default":0,"period":360,"units":"degrees"},"pitch":{"type":"number","default":0,"units":"degrees"},"light":{"type":"light"},"terrain":{"type":"terrain"},"fog":{"type":"fog"},"sources":{"required":true,"type":"sources"},"sprite":{"type":"string"},"glyphs":{"type":"string"},"transition":{"type":"transition"},"projection":{"type":"projection"},"layers":{"required":true,"type":"array","value":"layer"}},"sources":{"*":{"type":"source"}},"source":["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],"source_vector":{"type":{"required":true,"type":"enum","values":{"vector":{}}},"url":{"type":"string"},"tiles":{"type":"array","value":"string"},"bounds":{"type":"array","value":"number","length":4,"default":[-180,-85.051129,180,85.051129]},"scheme":{"type":"enum","values":{"xyz":{},"tms":{}},"default":"xyz"},"minzoom":{"type":"number","default":0},"maxzoom":{"type":"number","default":22},"attribution":{"type":"string"},"promoteId":{"type":"promoteId"},"volatile":{"type":"boolean","default":false},"*":{"type":"*"}},"source_raster":{"type":{"required":true,"type":"enum","values":{"raster":{}}},"url":{"type":"string"},"tiles":{"type":"array","value":"string"},"bounds":{"type":"array","value":"number","length":4,"default":[-180,-85.051129,180,85.051129]},"minzoom":{"type":"number","default":0},"maxzoom":{"type":"number","default":22},"tileSize":{"type":"number","default":512,"units":"pixels"},"scheme":{"type":"enum","values":{"xyz":{},"tms":{}},"default":"xyz"},"attribution":{"type":"string"},"volatile":{"type":"boolean","default":false},"*":{"type":"*"}},"source_raster_dem":{"type":{"required":true,"type":"enum","values":{"raster-dem":{}}},"url":{"type":"string"},"tiles":{"type":"array","value":"string"},"bounds":{"type":"array","value":"number","length":4,"default":[-180,-85.051129,180,85.051129]},"minzoom":{"type":"number","default":0},"maxzoom":{"type":"number","default":22},"tileSize":{"type":"number","default":512,"units":"pixels"},"attribution":{"type":"string"},"encoding":{"type":"enum","values":{"terrarium":{},"mapbox":{}},"default":"mapbox"},"volatile":{"type":"boolean","default":false},"*":{"type":"*"}},"source_geojson":{"type":{"required":true,"type":"enum","values":{"geojson":{}}},"data":{"type":"*"},"maxzoom":{"type":"number","default":18},"attribution":{"type":"string"},"buffer":{"type":"number","default":128,"maximum":512,"minimum":0},"filter":{"type":"*"},"tolerance":{"type":"number","default":0.375},"cluster":{"type":"boolean","default":false},"clusterRadius":{"type":"number","default":50,"minimum":0},"clusterMaxZoom":{"type":"number"},"clusterMinPoints":{"type":"number"},"clusterProperties":{"type":"*"},"lineMetrics":{"type":"boolean","default":false},"generateId":{"type":"boolean","default":false},"promoteId":{"type":"promoteId"}},"source_video":{"type":{"required":true,"type":"enum","values":{"video":{}}},"urls":{"required":true,"type":"array","value":"string"},"coordinates":{"required":true,"type":"array","length":4,"value":{"type":"array","length":2,"value":"number"}}},"source_image":{"type":{"required":true,"type":"enum","values":{"image":{}}},"url":{"required":true,"type":"string"},"coordinates":{"required":true,"type":"array","length":4,"value":{"type":"array","length":2,"value":"number"}}},"layer":{"id":{"type":"string","required":true},"type":{"type":"enum","values":{"fill":{},"line":{},"symbol":{},"circle":{},"heatmap":{},"fill-extrusion":{},"raster":{},"hillshade":{},"background":{},"sky":{}},"required":true},"metadata":{"type":"*"},"source":{"type":"string"},"source-layer":{"type":"string"},"minzoom":{"type":"number","minimum":0,"maximum":24},"maxzoom":{"type":"number","minimum":0,"maximum":24},"filter":{"type":"filter"},"layout":{"type":"layout"},"paint":{"type":"paint"}},"layout":["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background","layout_sky"],"layout_background":{"visibility":{"type":"enum","values":{"visible":{},"none":{}},"default":"visible","property-type":"constant"}},"layout_sky":{"visibility":{"type":"enum","values":{"visible":{},"none":{}},"default":"visible","property-type":"constant"}},"layout_fill":{"fill-sort-key":{"type":"number","expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"data-driven"},"visibility":{"type":"enum","values":{"visible":{},"none":{}},"default":"visible","property-type":"constant"}},"layout_circle":{"circle-sort-key":{"type":"number","expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"data-driven"},"visibility":{"type":"enum","values":{"visible":{},"none":{}},"default":"visible","property-type":"constant"}},"layout_heatmap":{"visibility":{"type":"enum","values":{"visible":{},"none":{}},"default":"visible","property-type":"constant"}},"layout_fill-extrusion":{"visibility":{"type":"enum","values":{"visible":{},"none":{}},"default":"visible","property-type":"constant"}},"layout_line":{"line-cap":{"type":"enum","values":{"butt":{},"round":{},"square":{}},"default":"butt","expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"data-driven"},"line-join":{"type":"enum","values":{"bevel":{},"round":{},"miter":{}},"default":"miter","expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{"type":"number","default":2,"requires":[{"line-join":"miter"}],"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"line-round-limit":{"type":"number","default":1.05,"requires":[{"line-join":"round"}],"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"line-sort-key":{"type":"number","expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"data-driven"},"visibility":{"type":"enum","values":{"visible":{},"none":{}},"default":"visible","property-type":"constant"}},"layout_symbol":{"symbol-placement":{"type":"enum","values":{"point":{},"line":{},"line-center":{}},"default":"point","expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"symbol-spacing":{"type":"number","default":250,"minimum":1,"units":"pixels","requires":[{"symbol-placement":"line"}],"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{"type":"boolean","default":false,"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{"type":"number","expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{"type":"enum","values":{"auto":{},"viewport-y":{},"source":{}},"default":"auto","expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{"type":"boolean","default":false,"requires":["icon-image"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{"type":"boolean","default":false,"requires":["icon-image"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"icon-optional":{"type":"boolean","default":false,"requires":["icon-image","text-field"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{"type":"enum","values":{"map":{},"viewport":{},"auto":{}},"default":"auto","requires":["icon-image"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"icon-size":{"type":"number","default":1,"minimum":0,"units":"factor of the original icon size","requires":["icon-image"],"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{"type":"enum","values":{"none":{},"width":{},"height":{},"both":{}},"default":"none","requires":["icon-image","text-field"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{"type":"array","value":"number","length":4,"default":[0,0,0,0],"units":"pixels","requires":["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"icon-image":{"type":"resolvedImage","tokens":true,"expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{"type":"number","default":0,"period":360,"units":"degrees","requires":["icon-image"],"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{"type":"number","default":2,"minimum":0,"units":"pixels","requires":["icon-image"],"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"icon-keep-upright":{"type":"boolean","default":false,"requires":["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"icon-offset":{"type":"array","value":"number","length":2,"default":[0,0],"requires":["icon-image"],"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{"type":"enum","values":{"center":{},"left":{},"right":{},"top":{},"bottom":{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},"default":"center","requires":["icon-image"],"expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{"type":"enum","values":{"map":{},"viewport":{},"auto":{}},"default":"auto","requires":["icon-image"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{"type":"enum","values":{"map":{},"viewport":{},"auto":{}},"default":"auto","requires":["text-field"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{"type":"enum","values":{"map":{},"viewport":{},"auto":{}},"default":"auto","requires":["text-field"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"text-field":{"type":"formatted","default":"","tokens":true,"expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-font":{"type":"array","value":"string","default":["Open Sans Regular","Arial Unicode MS Regular"],"requires":["text-field"],"expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-size":{"type":"number","default":16,"minimum":0,"units":"pixels","requires":["text-field"],"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{"type":"number","default":10,"minimum":0,"units":"ems","requires":["text-field",{"symbol-placement":["point"]}],"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{"type":"number","default":1.2,"units":"ems","requires":["text-field"],"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-letter-spacing":{"type":"number","default":0,"units":"ems","requires":["text-field"],"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-justify":{"type":"enum","values":{"auto":{},"left":{},"center":{},"right":{}},"default":"center","requires":["text-field"],"expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{"type":"number","units":"ems","default":0,"requires":["text-field"],"property-type":"data-driven","expression":{"interpolated":true,"parameters":["zoom","feature"]}},"text-variable-anchor":{"type":"array","value":"enum","values":{"center":{},"left":{},"right":{},"top":{},"bottom":{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},"requires":["text-field",{"symbol-placement":["point"]}],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"text-anchor":{"type":"enum","values":{"center":{},"left":{},"right":{},"top":{},"bottom":{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},"default":"center","requires":["text-field",{"!":"text-variable-anchor"}],"expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{"type":"number","default":45,"units":"degrees","requires":["text-field",{"symbol-placement":["line","line-center"]}],"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"text-writing-mode":{"type":"array","value":"enum","values":{"horizontal":{},"vertical":{}},"requires":["text-field"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"text-rotate":{"type":"number","default":0,"period":360,"units":"degrees","requires":["text-field"],"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-padding":{"type":"number","default":2,"minimum":0,"units":"pixels","requires":["text-field"],"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"text-keep-upright":{"type":"boolean","default":true,"requires":["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"text-transform":{"type":"enum","values":{"none":{},"uppercase":{},"lowercase":{}},"default":"none","requires":["text-field"],"expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-offset":{"type":"array","value":"number","units":"ems","length":2,"default":[0,0],"requires":["text-field",{"!":"text-radial-offset"}],"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{"type":"boolean","default":false,"requires":["text-field"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{"type":"boolean","default":false,"requires":["text-field"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"text-optional":{"type":"boolean","default":false,"requires":["text-field","icon-image"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"visibility":{"type":"enum","values":{"visible":{},"none":{}},"default":"visible","property-type":"constant"}},"layout_raster":{"visibility":{"type":"enum","values":{"visible":{},"none":{}},"default":"visible","property-type":"constant"}},"layout_hillshade":{"visibility":{"type":"enum","values":{"visible":{},"none":{}},"default":"visible","property-type":"constant"}},"filter":{"type":"array","value":"*"},"filter_symbol":{"type":"boolean","default":false,"transition":false,"property-type":"data-driven","expression":{"interpolated":false,"parameters":["zoom","feature","pitch","distance-from-center"]}},"filter_fill":{"type":"boolean","default":false,"transition":false,"property-type":"data-driven","expression":{"interpolated":false,"parameters":["zoom","feature"]}},"filter_line":{"type":"boolean","default":false,"transition":false,"property-type":"data-driven","expression":{"interpolated":false,"parameters":["zoom","feature"]}},"filter_circle":{"type":"boolean","default":false,"transition":false,"property-type":"data-driven","expression":{"interpolated":false,"parameters":["zoom","feature"]}},"filter_fill-extrusion":{"type":"boolean","default":false,"transition":false,"property-type":"data-driven","expression":{"interpolated":false,"parameters":["zoom","feature"]}},"filter_heatmap":{"type":"boolean","default":false,"transition":false,"property-type":"data-driven","expression":{"interpolated":false,"parameters":["zoom","feature"]}},"filter_operator":{"type":"enum","values":{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},"in":{},"!in":{},"all":{},"any":{},"none":{},"has":{},"!has":{},"within":{}}},"geometry_type":{"type":"enum","values":{"Point":{},"LineString":{},"Polygon":{}}},"function":{"expression":{"type":"expression"},"stops":{"type":"array","value":"function_stop"},"base":{"type":"number","default":1,"minimum":0},"property":{"type":"string","default":"$zoom"},"type":{"type":"enum","values":{"identity":{},"exponential":{},"interval":{},"categorical":{}},"default":"exponential"},"colorSpace":{"type":"enum","values":{"rgb":{},"lab":{},"hcl":{}},"default":"rgb"},"default":{"type":"*","required":false}},"function_stop":{"type":"array","minimum":0,"maximum":24,"value":["number","color"],"length":2},"expression":{"type":"array","value":"*","minimum":1},"fog":{"range":{"type":"array","default":[0.5,10],"minimum":-20,"maximum":20,"length":2,"value":"number","property-type":"data-constant","transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"color":{"type":"color","property-type":"data-constant","default":"#ffffff","expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"horizon-blend":{"type":"number","property-type":"data-constant","default":0.1,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true}},"light":{"anchor":{"type":"enum","default":"viewport","values":{"map":{},"viewport":{}},"property-type":"data-constant","transition":false,"expression":{"interpolated":false,"parameters":["zoom"]}},"position":{"type":"array","default":[1.15,210,30],"length":3,"value":"number","property-type":"data-constant","transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"color":{"type":"color","property-type":"data-constant","default":"#ffffff","expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"intensity":{"type":"number","property-type":"data-constant","default":0.5,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true}},"projection":{"name":{"type":"enum","values":{"albers":{},"equalEarth":{},"equirectangular":{},"lambertConformalConic":{},"mercator":{},"naturalEarth":{},"winkelTripel":{}},"default":"mercator","required":true},"center":{"type":"array","length":2,"value":"number","property-type":"data-constant","transition":false,"requires":[{"name":["albers","lambertConformalConic"]}]},"parallels":{"type":"array","length":2,"value":"number","property-type":"data-constant","transition":false,"requires":[{"name":["albers","lambertConformalConic"]}]}},"terrain":{"source":{"type":"string","required":true},"exaggeration":{"type":"number","property-type":"data-constant","default":1,"minimum":0,"maximum":1000,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true}},"paint":["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background","paint_sky"],"paint_fill":{"fill-antialias":{"type":"boolean","default":true,"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"fill-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{"type":"color","default":"#000000","transition":true,"requires":[{"!":"fill-pattern"}],"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{"type":"color","transition":true,"requires":[{"!":"fill-pattern"},{"fill-antialias":true}],"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{"type":"array","value":"number","length":2,"default":[0,0],"transition":true,"units":"pixels","expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{"type":"enum","values":{"map":{},"viewport":{}},"default":"map","requires":["fill-translate"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"fill-pattern":{"type":"resolvedImage","transition":true,"expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"cross-faded-data-driven"}},"paint_fill-extrusion":{"fill-extrusion-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{"type":"color","default":"#000000","transition":true,"requires":[{"!":"fill-extrusion-pattern"}],"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{"type":"array","value":"number","length":2,"default":[0,0],"transition":true,"units":"pixels","expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{"type":"enum","values":{"map":{},"viewport":{}},"default":"map","requires":["fill-extrusion-translate"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{"type":"resolvedImage","transition":true,"expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"cross-faded-data-driven"},"fill-extrusion-height":{"type":"number","default":0,"minimum":0,"units":"meters","transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{"type":"number","default":0,"minimum":0,"units":"meters","transition":true,"requires":["fill-extrusion-height"],"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{"type":"boolean","default":true,"transition":false,"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"}},"paint_line":{"line-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{"type":"color","default":"#000000","transition":true,"requires":[{"!":"line-pattern"}],"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{"type":"array","value":"number","length":2,"default":[0,0],"transition":true,"units":"pixels","expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{"type":"enum","values":{"map":{},"viewport":{}},"default":"map","requires":["line-translate"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"line-width":{"type":"number","default":1,"minimum":0,"transition":true,"units":"pixels","expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{"type":"number","default":0,"minimum":0,"transition":true,"units":"pixels","expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{"type":"number","default":0,"transition":true,"units":"pixels","expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{"type":"number","default":0,"minimum":0,"transition":true,"units":"pixels","expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{"type":"array","value":"number","minimum":0,"transition":true,"units":"line widths","requires":[{"!":"line-pattern"}],"expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-pattern":{"type":"resolvedImage","transition":true,"expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-gradient":{"type":"color","transition":false,"requires":[{"!":"line-pattern"},{"source":"geojson","has":{"lineMetrics":true}}],"expression":{"interpolated":true,"parameters":["line-progress"]},"property-type":"color-ramp"}},"paint_circle":{"circle-radius":{"type":"number","default":5,"minimum":0,"transition":true,"units":"pixels","expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{"type":"color","default":"#000000","transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{"type":"number","default":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{"type":"array","value":"number","length":2,"default":[0,0],"transition":true,"units":"pixels","expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{"type":"enum","values":{"map":{},"viewport":{}},"default":"map","requires":["circle-translate"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{"type":"enum","values":{"map":{},"viewport":{}},"default":"map","expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{"type":"enum","values":{"map":{},"viewport":{}},"default":"viewport","expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{"type":"number","default":0,"minimum":0,"transition":true,"units":"pixels","expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{"type":"color","default":"#000000","transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"}},"paint_heatmap":{"heatmap-radius":{"type":"number","default":30,"minimum":1,"transition":true,"units":"pixels","expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{"type":"number","default":1,"minimum":0,"transition":false,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{"type":"number","default":1,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"heatmap-color":{"type":"color","default":["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",0.1,"royalblue",0.3,"cyan",0.5,"lime",0.7,"yellow",1,"red"],"transition":false,"expression":{"interpolated":true,"parameters":["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"}},"paint_symbol":{"icon-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"requires":["icon-image"],"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{"type":"color","default":"#000000","transition":true,"requires":["icon-image"],"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{"type":"color","default":"rgba(0, 0, 0, 0)","transition":true,"requires":["icon-image"],"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{"type":"number","default":0,"minimum":0,"transition":true,"units":"pixels","requires":["icon-image"],"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{"type":"number","default":0,"minimum":0,"transition":true,"units":"pixels","requires":["icon-image"],"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{"type":"array","value":"number","length":2,"default":[0,0],"transition":true,"units":"pixels","requires":["icon-image"],"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{"type":"enum","values":{"map":{},"viewport":{}},"default":"map","requires":["icon-image","icon-translate"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"text-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"requires":["text-field"],"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{"type":"color","default":"#000000","transition":true,"overridable":true,"requires":["text-field"],"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{"type":"color","default":"rgba(0, 0, 0, 0)","transition":true,"requires":["text-field"],"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{"type":"number","default":0,"minimum":0,"transition":true,"units":"pixels","requires":["text-field"],"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{"type":"number","default":0,"minimum":0,"transition":true,"units":"pixels","requires":["text-field"],"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{"type":"array","value":"number","length":2,"default":[0,0],"transition":true,"units":"pixels","requires":["text-field"],"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{"type":"enum","values":{"map":{},"viewport":{}},"default":"map","requires":["text-field","text-translate"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"}},"paint_raster":{"raster-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{"type":"number","default":0,"period":360,"transition":true,"units":"degrees","expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{"type":"number","default":0,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"raster-saturation":{"type":"number","default":0,"minimum":-1,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"raster-contrast":{"type":"number","default":0,"minimum":-1,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"raster-resampling":{"type":"enum","values":{"linear":{},"nearest":{}},"default":"linear","expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{"type":"number","default":300,"minimum":0,"transition":false,"units":"milliseconds","expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"}},"paint_hillshade":{"hillshade-illumination-direction":{"type":"number","default":335,"minimum":0,"maximum":359,"transition":false,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{"type":"enum","values":{"map":{},"viewport":{}},"default":"viewport","expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{"type":"number","default":0.5,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{"type":"color","default":"#000000","transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{"type":"color","default":"#FFFFFF","transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{"type":"color","default":"#000000","transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"}},"paint_background":{"background-color":{"type":"color","default":"#000000","transition":true,"requires":[{"!":"background-pattern"}],"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"background-pattern":{"type":"resolvedImage","transition":true,"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"cross-faded"},"background-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"}},"paint_sky":{"sky-type":{"type":"enum","values":{"gradient":{},"atmosphere":{}},"default":"atmosphere","expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"sky-atmosphere-sun":{"type":"array","value":"number","length":2,"units":"degrees","minimum":[0,0],"maximum":[360,180],"transition":false,"requires":[{"sky-type":"atmosphere"}],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"sky-atmosphere-sun-intensity":{"type":"number","requires":[{"sky-type":"atmosphere"}],"default":10,"minimum":0,"maximum":100,"transition":false,"property-type":"data-constant"},"sky-gradient-center":{"type":"array","requires":[{"sky-type":"gradient"}],"value":"number","default":[0,0],"length":2,"units":"degrees","minimum":[0,0],"maximum":[360,180],"transition":false,"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"sky-gradient-radius":{"type":"number","requires":[{"sky-type":"gradient"}],"default":90,"minimum":0,"maximum":180,"transition":false,"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"sky-gradient":{"type":"color","default":["interpolate",["linear"],["sky-radial-progress"],0.8,"#87ceeb",1,"white"],"transition":false,"requires":[{"sky-type":"gradient"}],"expression":{"interpolated":true,"parameters":["sky-radial-progress"]},"property-type":"color-ramp"},"sky-atmosphere-halo-color":{"type":"color","default":"white","transition":false,"requires":[{"sky-type":"atmosphere"}],"property-type":"data-constant"},"sky-atmosphere-color":{"type":"color","default":"white","transition":false,"requires":[{"sky-type":"atmosphere"}],"property-type":"data-constant"},"sky-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"}},"transition":{"duration":{"type":"number","default":300,"minimum":0,"units":"milliseconds"},"delay":{"type":"number","default":0,"minimum":0,"units":"milliseconds"}},"property-type":{"data-driven":{"type":"property-type"},"cross-faded":{"type":"property-type"},"cross-faded-data-driven":{"type":"property-type"},"color-ramp":{"type":"property-type"},"data-constant":{"type":"property-type"},"constant":{"type":"property-type"}},"promoteId":{"*":{"type":"string"}}}');class _t{constructor(e,t,o,i){this.message=(e?`${e}: `:"")+o,i&&(this.identifier=i),null!=t&&t.__line__&&(this.line=t.__line__)}}function gt(e){const t=e.value;return t?[new _t(e.key,t,"constants have been deprecated as of v8")]:[]}function qt(e,...t){for(const o of t)for(const t in o)e[t]=o[t];return e}function yt(e){return e instanceof Number||e instanceof String||e instanceof Boolean?e.valueOf():e}function vt(e){if(Array.isArray(e))return e.map(vt);if(e instanceof Object&&!(e instanceof Number||e instanceof String||e instanceof Boolean)){const t={};for(const o in e)t[o]=vt(e[o]);return t}return yt(e)}class xt extends Error{constructor(e,t){super(t),this.message=t,this.key=e}}class Wt{constructor(e,t=[]){this.parent=e,this.bindings={};for(const[e,o]of t)this.bindings[e]=o}concat(e){return new Wt(this,e)}get(e){if(this.bindings[e])return this.bindings[e];if(this.parent)return this.parent.get(e);throw new Error(`${e} not found in scope.`)}has(e){return!!this.bindings[e]||!!this.parent&&this.parent.has(e)}}const wt={kind:"null"},Lt={kind:"number"},Rt={kind:"string"},Tt={kind:"boolean"},kt={kind:"color"},Bt={kind:"object"},St={kind:"value"},Xt={kind:"collator"},Et={kind:"formatted"},Dt={kind:"resolvedImage"};function Ct(e,t){return{kind:"array",itemType:e,N:t}}function Nt(e){if("array"===e.kind){const t=Nt(e.itemType);return"number"==typeof e.N?`array<${t}, ${e.N}>`:"value"===e.itemType.kind?"array":`array<${t}>`}return e.kind}const Pt=[wt,Lt,Rt,Tt,kt,Et,Bt,Ct(St),Dt];function It(e,t){if("error"===t.kind)return null;if("array"===e.kind){if("array"===t.kind&&(0===t.N&&"value"===t.itemType.kind||!It(e.itemType,t.itemType))&&("number"!=typeof e.N||e.N===t.N))return null}else{if(e.kind===t.kind)return null;if("value"===e.kind)for(const e of Pt)if(!It(e,t))return null}return`Expected ${Nt(e)} but found ${Nt(t)} instead.`}function Yt(e,t){return t.some((t=>t.kind===e.kind))}function jt(e,t){return t.some((t=>"null"===t?null===e:"array"===t?Array.isArray(e):"object"===t?e&&!Array.isArray(e)&&"object"==typeof e:t===typeof e))}function Ft(e){var t={exports:{}};return e(t,t.exports),t.exports}var Ht=Ft((function(e,t){var o={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],rebeccapurple:[102,51,153,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};function i(e){return(e=Math.round(e))<0?0:e>255?255:e}function n(e){return i("%"===e[e.length-1]?parseFloat(e)/100*255:parseInt(e))}function r(e){return(t="%"===e[e.length-1]?parseFloat(e)/100:parseFloat(e))<0?0:t>1?1:t;var t}function a(e,t,o){return o<0?o+=1:o>1&&(o-=1),6*o<1?e+(t-e)*o*6:2*o<1?t:3*o<2?e+(t-e)*(2/3-o)*6:e}try{t.parseCSSColor=function(e){var t,s=e.replace(/ /g,"").toLowerCase();if(s in o)return o[s].slice();if("#"===s[0])return 4===s.length?(t=parseInt(s.substr(1),16))>=0&&t<=4095?[(3840&t)>>4|(3840&t)>>8,240&t|(240&t)>>4,15&t|(15&t)<<4,1]:null:7===s.length&&(t=parseInt(s.substr(1),16))>=0&&t<=16777215?[(16711680&t)>>16,(65280&t)>>8,255&t,1]:null;var p=s.indexOf("("),c=s.indexOf(")");if(-1!==p&&c+1===s.length){var l=s.substr(0,p),b=s.substr(p+1,c-(p+1)).split(","),d=1;switch(l){case"rgba":if(4!==b.length)return null;d=r(b.pop());case"rgb":return 3!==b.length?null:[n(b[0]),n(b[1]),n(b[2]),d];case"hsla":if(4!==b.length)return null;d=r(b.pop());case"hsl":if(3!==b.length)return null;var u=(parseFloat(b[0])%360+360)%360/360,M=r(b[1]),z=r(b[2]),m=z<=.5?z*(M+1):z+M-z*M,h=2*z-m;return[i(255*a(h,m,u+1/3)),i(255*a(h,m,u)),i(255*a(h,m,u-1/3)),d];default:return null}}return null}}catch(e){}}));class Ut{constructor(e,t,o,i=1){this.r=e,this.g=t,this.b=o,this.a=i}static parse(e){if(!e)return;if(e instanceof Ut)return e;if("string"!=typeof e)return;const t=Ht.parseCSSColor(e);return t?new Ut(t[0]/255*t[3],t[1]/255*t[3],t[2]/255*t[3],t[3]):void 0}toString(){const[e,t,o,i]=this.toArray();return`rgba(${Math.round(e)},${Math.round(t)},${Math.round(o)},${i})`}toArray(){const{r:e,g:t,b:o,a:i}=this;return 0===i?[0,0,0,0]:[255*e/i,255*t/i,255*o/i,i]}}Ut.black=new Ut(0,0,0,1),Ut.white=new Ut(1,1,1,1),Ut.transparent=new Ut(0,0,0,0),Ut.red=new Ut(1,0,0,1),Ut.blue=new Ut(0,0,1,1);class Vt{constructor(e,t,o){this.sensitivity=e?t?"variant":"case":t?"accent":"base",this.locale=o,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})}compare(e,t){return this.collator.compare(e,t)}resolvedLocale(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale}}class Gt{constructor(e,t,o,i,n){this.text=e.normalize?e.normalize():e,this.image=t,this.scale=o,this.fontStack=i,this.textColor=n}}class Zt{constructor(e){this.sections=e}static fromString(e){return new Zt([new Gt(e,null,null,null,null)])}isEmpty(){return 0===this.sections.length||!this.sections.some((e=>0!==e.text.length||e.image&&0!==e.image.name.length))}static factory(e){return e instanceof Zt?e:Zt.fromString(e)}toString(){return 0===this.sections.length?"":this.sections.map((e=>e.text)).join("")}serialize(){const e=["format"];for(const t of this.sections){if(t.image){e.push(["image",t.image.name]);continue}e.push(t.text);const o={};t.fontStack&&(o["text-font"]=["literal",t.fontStack.split(",")]),t.scale&&(o["font-scale"]=t.scale),t.textColor&&(o["text-color"]=["rgba"].concat(t.textColor.toArray())),e.push(o)}return e}}class $t{constructor(e){this.name=e.name,this.available=e.available}toString(){return this.name}static fromString(e){return e?new $t({name:e,available:!1}):null}serialize(){return["image",this.name]}}function Kt(e,t,o,i){return"number"==typeof e&&e>=0&&e<=255&&"number"==typeof t&&t>=0&&t<=255&&"number"==typeof o&&o>=0&&o<=255?void 0===i||"number"==typeof i&&i>=0&&i<=1?null:`Invalid rgba value [${[e,t,o,i].join(", ")}]: 'a' must be between 0 and 1.`:`Invalid rgba value [${("number"==typeof i?[e,t,o,i]:[e,t,o]).join(", ")}]: 'r', 'g', and 'b' must be between 0 and 255.`}function Jt(e){if(null===e)return!0;if("string"==typeof e)return!0;if("boolean"==typeof e)return!0;if("number"==typeof e)return!0;if(e instanceof Ut)return!0;if(e instanceof Vt)return!0;if(e instanceof Zt)return!0;if(e instanceof $t)return!0;if(Array.isArray(e)){for(const t of e)if(!Jt(t))return!1;return!0}if("object"==typeof e){for(const t in e)if(!Jt(e[t]))return!1;return!0}return!1}function Qt(e){if(null===e)return wt;if("string"==typeof e)return Rt;if("boolean"==typeof e)return Tt;if("number"==typeof e)return Lt;if(e instanceof Ut)return kt;if(e instanceof Vt)return Xt;if(e instanceof Zt)return Et;if(e instanceof $t)return Dt;if(Array.isArray(e)){const t=e.length;let o;for(const t of e){const e=Qt(t);if(o){if(o===e)continue;o=St;break}o=e}return Ct(o||St,t)}return Bt}function eo(e){const t=typeof e;return null===e?"":"string"===t||"number"===t||"boolean"===t?String(e):e instanceof Ut||e instanceof Zt||e instanceof $t?e.toString():JSON.stringify(e)}class to{constructor(e,t){this.type=e,this.value=t}static parse(e,t){if(2!==e.length)return t.error(`'literal' expression requires exactly one argument, but found ${e.length-1} instead.`);if(!Jt(e[1]))return t.error("invalid value");const o=e[1];let i=Qt(o);const n=t.expectedType;return"array"!==i.kind||0!==i.N||!n||"array"!==n.kind||"number"==typeof n.N&&0!==n.N||(i=n),new to(i,o)}evaluate(){return this.value}eachChild(){}outputDefined(){return!0}serialize(){return"array"===this.type.kind||"object"===this.type.kind?["literal",this.value]:this.value instanceof Ut?["rgba"].concat(this.value.toArray()):this.value instanceof Zt?this.value.serialize():this.value}}class oo{constructor(e){this.name="ExpressionEvaluationError",this.message=e}toJSON(){return this.message}}const io={string:Rt,number:Lt,boolean:Tt,object:Bt};class no{constructor(e,t){this.type=e,this.args=t}static parse(e,t){if(e.length<2)return t.error("Expected at least one argument.");let o,i=1;const n=e[0];if("array"===n){let n,r;if(e.length>2){const o=e[1];if("string"!=typeof o||!(o in io)||"object"===o)return t.error('The item type argument of "array" must be one of string, number, boolean',1);n=io[o],i++}else n=St;if(e.length>3){if(null!==e[2]&&("number"!=typeof e[2]||e[2]<0||e[2]!==Math.floor(e[2])))return t.error('The length argument to "array" must be a positive integer literal',2);r=e[2],i++}o=Ct(n,r)}else o=io[n];const r=[];for(;ie.outputDefined()))}serialize(){const e=this.type,t=[e.kind];if("array"===e.kind){const o=e.itemType;if("string"===o.kind||"number"===o.kind||"boolean"===o.kind){t.push(o.kind);const i=e.N;("number"==typeof i||this.args.length>1)&&t.push(i)}}return t.concat(this.args.map((e=>e.serialize())))}}class ro{constructor(e){this.type=Et,this.sections=e}static parse(e,t){if(e.length<2)return t.error("Expected at least one argument.");const o=e[1];if(!Array.isArray(o)&&"object"==typeof o)return t.error("First argument must be an image or text section.");const i=[];let n=!1;for(let o=1;o<=e.length-1;++o){const r=e[o];if(n&&"object"==typeof r&&!Array.isArray(r)){n=!1;let e=null;if(r["font-scale"]&&(e=t.parse(r["font-scale"],1,Lt),!e))return null;let o=null;if(r["text-font"]&&(o=t.parse(r["text-font"],1,Ct(Rt)),!o))return null;let a=null;if(r["text-color"]&&(a=t.parse(r["text-color"],1,kt),!a))return null;const s=i[i.length-1];s.scale=e,s.font=o,s.textColor=a}else{const r=t.parse(e[o],1,St);if(!r)return null;const a=r.type.kind;if("string"!==a&&"value"!==a&&"null"!==a&&"resolvedImage"!==a)return t.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");n=!0,i.push({content:r,scale:null,font:null,textColor:null})}}return new ro(i)}evaluate(e){return new Zt(this.sections.map((t=>{const o=t.content.evaluate(e);return Qt(o)===Dt?new Gt("",o,null,null,null):new Gt(eo(o),null,t.scale?t.scale.evaluate(e):null,t.font?t.font.evaluate(e).join(","):null,t.textColor?t.textColor.evaluate(e):null)})))}eachChild(e){for(const t of this.sections)e(t.content),t.scale&&e(t.scale),t.font&&e(t.font),t.textColor&&e(t.textColor)}outputDefined(){return!1}serialize(){const e=["format"];for(const t of this.sections){e.push(t.content.serialize());const o={};t.scale&&(o["font-scale"]=t.scale.serialize()),t.font&&(o["text-font"]=t.font.serialize()),t.textColor&&(o["text-color"]=t.textColor.serialize()),e.push(o)}return e}}class ao{constructor(e){this.type=Dt,this.input=e}static parse(e,t){if(2!==e.length)return t.error("Expected two arguments.");const o=t.parse(e[1],1,Rt);return o?new ao(o):t.error("No image name provided.")}evaluate(e){const t=this.input.evaluate(e),o=$t.fromString(t);return o&&e.availableImages&&(o.available=e.availableImages.indexOf(t)>-1),o}eachChild(e){e(this.input)}outputDefined(){return!1}serialize(){return["image",this.input.serialize()]}}const so={"to-boolean":Tt,"to-color":kt,"to-number":Lt,"to-string":Rt};class po{constructor(e,t){this.type=e,this.args=t}static parse(e,t){if(e.length<2)return t.error("Expected at least one argument.");const o=e[0];if(("to-boolean"===o||"to-string"===o)&&2!==e.length)return t.error("Expected one argument.");const i=so[o],n=[];for(let o=1;o4?`Invalid rbga value ${JSON.stringify(t)}: expected an array containing either three or four numeric values.`:Kt(t[0],t[1],t[2],t[3]),!o))return new Ut(t[0]/255,t[1]/255,t[2]/255,t[3])}throw new oo(o||`Could not parse color from value '${"string"==typeof t?t:String(JSON.stringify(t))}'`)}if("number"===this.type.kind){let t=null;for(const o of this.args){if(t=o.evaluate(e),null===t)return 0;const i=Number(t);if(!isNaN(i))return i}throw new oo(`Could not convert ${JSON.stringify(t)} to number.`)}return"formatted"===this.type.kind?Zt.fromString(eo(this.args[0].evaluate(e))):"resolvedImage"===this.type.kind?$t.fromString(eo(this.args[0].evaluate(e))):eo(this.args[0].evaluate(e))}eachChild(e){this.args.forEach(e)}outputDefined(){return this.args.every((e=>e.outputDefined()))}serialize(){if("formatted"===this.type.kind)return new ro([{content:this.args[0],scale:null,font:null,textColor:null}]).serialize();if("resolvedImage"===this.type.kind)return new ao(this.args[0]).serialize();const e=[`to-${this.type.kind}`];return this.eachChild((t=>{e.push(t.serialize())})),e}}const co=["Unknown","Point","LineString","Polygon"];class lo{constructor(){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache={},this.availableImages=null,this.canonical=null,this.featureTileCoord=null,this.featureDistanceData=null}id(){return this.feature&&"id"in this.feature?this.feature.id:null}geometryType(){return this.feature?"number"==typeof this.feature.type?co[this.feature.type]:this.feature.type:null}geometry(){return this.feature&&"geometry"in this.feature?this.feature.geometry:null}canonicalID(){return this.canonical}properties(){return this.feature&&this.feature.properties||{}}distanceFromCenter(){if(this.featureTileCoord&&this.featureDistanceData){const e=this.featureDistanceData.center,t=this.featureDistanceData.scale,{x:o,y:i}=this.featureTileCoord;return this.featureDistanceData.bearing[0]*(o*t-e[0])+this.featureDistanceData.bearing[1]*(i*t-e[1])}return 0}parseColor(e){let t=this._parseColorCache[e];return t||(t=this._parseColorCache[e]=Ut.parse(e)),t}}class bo{constructor(e,t,o,i){this.name=e,this.type=t,this._evaluate=o,this.args=i}evaluate(e){return this._evaluate(e,this.args)}eachChild(e){this.args.forEach(e)}outputDefined(){return!1}serialize(){return[this.name].concat(this.args.map((e=>e.serialize())))}static parse(e,t){const o=e[0],i=bo.definitions[o];if(!i)return t.error(`Unknown expression "${o}". If you wanted a literal array, use ["literal", [...]].`,0);const n=Array.isArray(i)?i[0]:i.type,r=Array.isArray(i)?[[i[1],i[2]]]:i.overloads,a=r.filter((([t])=>!Array.isArray(t)||t.length===e.length-1));let s=null;for(const[i,r]of a){s=new Xo(t.registry,t.path,null,t.scope);const a=[];let p=!1;for(let t=1;t{return t=e,Array.isArray(t)?`(${t.map(Nt).join(", ")})`:`(${Nt(t.type)}...)`;var t})).join(" | "),i=[];for(let o=1;o=t[2]||e[1]<=t[1]||e[3]>=t[3])}function ho(e,t){const o=(180+e[0])/360,i=(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+e[1]*Math.PI/360)))/360,n=Math.pow(2,t.z);return[Math.round(o*n*Mo),Math.round(i*n*Mo)]}function Oo(e,t,o){const i=e[0]-t[0],n=e[1]-t[1],r=e[0]-o[0],a=e[1]-o[1];return i*a-r*n==0&&i*r<=0&&n*a<=0}function fo(e,t){let o=!1;for(let a=0,s=t.length;a(i=e)[1]!=(r=s[t+1])[1]>i[1]&&i[0]<(r[0]-n[0])*(i[1]-n[1])/(r[1]-n[1])+n[0]&&(o=!o)}}var i,n,r;return o}function Ao(e,t){for(let o=0;o0&&s<0||a<0&&s>0}function go(e,t,o){for(const c of o)for(let o=0;oo[2]){const t=.5*i;let n=e[0]-o[0]>t?-i:o[0]-e[0]>t?i:0;0===n&&(n=e[0]-o[2]>t?-i:o[2]-e[0]>t?i:0),e[0]+=n}zo(t,e)}function wo(e,t,o,i){const n=Math.pow(2,i.z)*Mo,r=[i.x*Mo,i.y*Mo],a=[];for(const i of e)for(const e of i){const i=[e.x+r[0],e.y+r[1]];Wo(i,t,o,n),a.push(i)}return a}function Lo(e,t,o,i){const n=Math.pow(2,i.z)*Mo,r=[i.x*Mo,i.y*Mo],a=[];for(const o of e){const e=[];for(const i of o){const o=[i.x+r[0],i.y+r[1]];zo(t,o),e.push(o)}a.push(e)}if(t[2]-t[0]<=n/2){(s=t)[0]=s[1]=1/0,s[2]=s[3]=-1/0;for(const e of a)for(const i of e)Wo(i,t,o,n)}var s;return a}class Ro{constructor(e,t){this.type=Tt,this.geojson=e,this.geometries=t}static parse(e,t){if(2!==e.length)return t.error(`'within' expression requires exactly one argument, but found ${e.length-1} instead.`);if(Jt(e[1])){const t=e[1];if("FeatureCollection"===t.type)for(let e=0;e{t&&!To(e)&&(t=!1)})),t}function ko(e){if(e instanceof bo&&"feature-state"===e.name)return!1;let t=!0;return e.eachChild((e=>{t&&!ko(e)&&(t=!1)})),t}function Bo(e,t){if(e instanceof bo&&t.indexOf(e.name)>=0)return!1;let o=!0;return e.eachChild((e=>{o&&!Bo(e,t)&&(o=!1)})),o}class So{constructor(e,t){this.type=t.type,this.name=e,this.boundExpression=t}static parse(e,t){if(2!==e.length||"string"!=typeof e[1])return t.error("'var' expression requires exactly one string literal argument.");const o=e[1];return t.scope.has(o)?new So(o,t.scope.get(o)):t.error(`Unknown variable "${o}". Make sure "${o}" has been bound in an enclosing "let" expression before using it.`,1)}evaluate(e){return this.boundExpression.evaluate(e)}eachChild(){}outputDefined(){return!1}serialize(){return["var",this.name]}}class Xo{constructor(e,t=[],o,i=new Wt,n=[]){this.registry=e,this.path=t,this.key=t.map((e=>`[${e}]`)).join(""),this.scope=i,this.errors=n,this.expectedType=o}parse(e,t,o,i,n={}){return t?this.concat(t,o,i)._parse(e,n):this._parse(e,n)}_parse(e,t){function o(e,t,o){return"assert"===o?new no(t,[e]):"coerce"===o?new po(t,[e]):e}if(null!==e&&"string"!=typeof e&&"boolean"!=typeof e&&"number"!=typeof e||(e=["literal",e]),Array.isArray(e)){if(0===e.length)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');const i=e[0];if("string"!=typeof i)return this.error(`Expression name must be a string, but found ${typeof i} instead. If you wanted a literal array, use ["literal", [...]].`,0),null;const n=this.registry[i];if(n){let i=n.parse(e,this);if(!i)return null;if(this.expectedType){const e=this.expectedType,n=i.type;if("string"!==e.kind&&"number"!==e.kind&&"boolean"!==e.kind&&"object"!==e.kind&&"array"!==e.kind||"value"!==n.kind)if("color"!==e.kind&&"formatted"!==e.kind&&"resolvedImage"!==e.kind||"value"!==n.kind&&"string"!==n.kind){if(this.checkSubtype(e,n))return null}else i=o(i,e,t.typeAnnotation||"coerce");else i=o(i,e,t.typeAnnotation||"assert")}if(!(i instanceof to)&&"resolvedImage"!==i.type.kind&&Eo(i)){const t=new lo;try{i=new to(i.type,i.evaluate(t))}catch(e){return this.error(e.message),null}}return i}return this.error(`Unknown expression "${i}". If you wanted a literal array, use ["literal", [...]].`,0)}return this.error(void 0===e?"'undefined' value invalid. Use null instead.":"object"==typeof e?'Bare objects invalid. Use ["literal", {...}] instead.':`Expected an array, but found ${typeof e} instead.`)}concat(e,t,o){const i="number"==typeof e?this.path.concat(e):this.path,n=o?this.scope.concat(o):this.scope;return new Xo(this.registry,i,t||null,n,this.errors)}error(e,...t){const o=`${this.key}${t.map((e=>`[${e}]`)).join("")}`;this.errors.push(new xt(o,e))}checkSubtype(e,t){const o=It(e,t);return o&&this.error(o),o}}function Eo(e){if(e instanceof So)return Eo(e.boundExpression);if(e instanceof bo&&"error"===e.name)return!1;if(e instanceof uo)return!1;if(e instanceof Ro)return!1;const t=e instanceof po||e instanceof no;let o=!0;return e.eachChild((e=>{o=t?o&&Eo(e):o&&e instanceof to})),!!o&&To(e)&&Bo(e,["zoom","heatmap-density","line-progress","sky-radial-progress","accumulated","is-supported-script","pitch","distance-from-center"])}function Do(e,t){const o=e.length-1;let i,n,r=0,a=o,s=0;for(;r<=a;)if(s=Math.floor((r+a)/2),i=e[s],n=e[s+1],i<=t){if(s===o||tt))throw new oo("Input is not a number.");a=s-1}return 0}class Co{constructor(e,t,o){this.type=e,this.input=t,this.labels=[],this.outputs=[];for(const[e,t]of o)this.labels.push(e),this.outputs.push(t)}static parse(e,t){if(e.length-1<4)return t.error(`Expected at least 4 arguments, but found only ${e.length-1}.`);if((e.length-1)%2!=0)return t.error("Expected an even number of arguments.");const o=t.parse(e[1],1,Lt);if(!o)return null;const i=[];let n=null;t.expectedType&&"value"!==t.expectedType.kind&&(n=t.expectedType);for(let o=1;o=r)return t.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',s);const c=t.parse(a,p,n);if(!c)return null;n=n||c.type,i.push([r,c])}return new Co(n,o,i)}evaluate(e){const t=this.labels,o=this.outputs;if(1===t.length)return o[0].evaluate(e);const i=this.input.evaluate(e);if(i<=t[0])return o[0].evaluate(e);const n=t.length;return i>=t[n-1]?o[n-1].evaluate(e):o[Do(t,i)].evaluate(e)}eachChild(e){e(this.input);for(const t of this.outputs)e(t)}outputDefined(){return this.outputs.every((e=>e.outputDefined()))}serialize(){const e=["step",this.input.serialize()];for(let t=0;t0&&e.push(this.labels[t]),e.push(this.outputs[t].serialize());return e}}function No(e,t,o){return e*(1-o)+t*o}var Po=Object.freeze({__proto__:null,number:No,color:function(e,t,o){return new Ut(No(e.r,t.r,o),No(e.g,t.g,o),No(e.b,t.b,o),No(e.a,t.a,o))},array:function(e,t,o){return e.map(((e,i)=>No(e,t[i],o)))}});const Io=.95047,Yo=1.08883,jo=4/29,Fo=6/29,Ho=3*Fo*Fo,Uo=Math.PI/180,Vo=180/Math.PI;function Go(e){return e>.008856451679035631?Math.pow(e,1/3):e/Ho+jo}function Zo(e){return e>Fo?e*e*e:Ho*(e-jo)}function $o(e){return 255*(e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055)}function Ko(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function Jo(e){const t=Ko(e.r),o=Ko(e.g),i=Ko(e.b),n=Go((.4124564*t+.3575761*o+.1804375*i)/Io),r=Go((.2126729*t+.7151522*o+.072175*i)/1);return{l:116*r-16,a:500*(n-r),b:200*(r-Go((.0193339*t+.119192*o+.9503041*i)/Yo)),alpha:e.a}}function Qo(e){let t=(e.l+16)/116,o=isNaN(e.a)?t:t+e.a/500,i=isNaN(e.b)?t:t-e.b/200;return t=1*Zo(t),o=Io*Zo(o),i=Yo*Zo(i),new Ut($o(3.2404542*o-1.5371385*t-.4985314*i),$o(-.969266*o+1.8760108*t+.041556*i),$o(.0556434*o-.2040259*t+1.0572252*i),e.alpha)}function ei(e,t,o){const i=t-e;return e+o*(i>180||i<-180?i-360*Math.round(i/360):i)}const ti={forward:Jo,reverse:Qo,interpolate:function(e,t,o){return{l:No(e.l,t.l,o),a:No(e.a,t.a,o),b:No(e.b,t.b,o),alpha:No(e.alpha,t.alpha,o)}}},oi={forward:function(e){const{l:t,a:o,b:i}=Jo(e),n=Math.atan2(i,o)*Vo;return{h:n<0?n+360:n,c:Math.sqrt(o*o+i*i),l:t,alpha:e.a}},reverse:function(e){const t=e.h*Uo,o=e.c;return Qo({l:e.l,a:Math.cos(t)*o,b:Math.sin(t)*o,alpha:e.alpha})},interpolate:function(e,t,o){return{h:ei(e.h,t.h,o),c:No(e.c,t.c,o),l:No(e.l,t.l,o),alpha:No(e.alpha,t.alpha,o)}}};var ii=Object.freeze({__proto__:null,lab:ti,hcl:oi});class ni{constructor(e,t,o,i,n){this.type=e,this.operator=t,this.interpolation=o,this.input=i,this.labels=[],this.outputs=[];for(const[e,t]of n)this.labels.push(e),this.outputs.push(t)}static interpolationFactor(e,t,i,n){let r=0;if("exponential"===e.name)r=ri(t,e.base,i,n);else if("linear"===e.name)r=ri(t,1,i,n);else if("cubic-bezier"===e.name){const a=e.controlPoints;r=new o(a[0],a[1],a[2],a[3]).solve(ri(t,1,i,n))}return r}static parse(e,t){let[o,i,n,...r]=e;if(!Array.isArray(i)||0===i.length)return t.error("Expected an interpolation type expression.",1);if("linear"===i[0])i={name:"linear"};else if("exponential"===i[0]){const e=i[1];if("number"!=typeof e)return t.error("Exponential interpolation requires a numeric base.",1,1);i={name:"exponential",base:e}}else{if("cubic-bezier"!==i[0])return t.error(`Unknown interpolation type ${String(i[0])}`,1,0);{const e=i.slice(1);if(4!==e.length||e.some((e=>"number"!=typeof e||e<0||e>1)))return t.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);i={name:"cubic-bezier",controlPoints:e}}}if(e.length-1<4)return t.error(`Expected at least 4 arguments, but found only ${e.length-1}.`);if((e.length-1)%2!=0)return t.error("Expected an even number of arguments.");if(n=t.parse(n,2,Lt),!n)return null;const a=[];let s=null;"interpolate-hcl"===o||"interpolate-lab"===o?s=kt:t.expectedType&&"value"!==t.expectedType.kind&&(s=t.expectedType);for(let e=0;e=o)return t.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',n);const c=t.parse(i,p,s);if(!c)return null;s=s||c.type,a.push([o,c])}return"number"===s.kind||"color"===s.kind||"array"===s.kind&&"number"===s.itemType.kind&&"number"==typeof s.N?new ni(s,o,i,n,a):t.error(`Type ${Nt(s)} is not interpolatable.`)}evaluate(e){const t=this.labels,o=this.outputs;if(1===t.length)return o[0].evaluate(e);const i=this.input.evaluate(e);if(i<=t[0])return o[0].evaluate(e);const n=t.length;if(i>=t[n-1])return o[n-1].evaluate(e);const r=Do(t,i),a=ni.interpolationFactor(this.interpolation,i,t[r],t[r+1]),s=o[r].evaluate(e),p=o[r+1].evaluate(e);return"interpolate"===this.operator?Po[this.type.kind.toLowerCase()](s,p,a):"interpolate-hcl"===this.operator?oi.reverse(oi.interpolate(oi.forward(s),oi.forward(p),a)):ti.reverse(ti.interpolate(ti.forward(s),ti.forward(p),a))}eachChild(e){e(this.input);for(const t of this.outputs)e(t)}outputDefined(){return this.outputs.every((e=>e.outputDefined()))}serialize(){let e;e="linear"===this.interpolation.name?["linear"]:"exponential"===this.interpolation.name?1===this.interpolation.base?["linear"]:["exponential",this.interpolation.base]:["cubic-bezier"].concat(this.interpolation.controlPoints);const t=[this.operator,e,this.input.serialize()];for(let e=0;eIt(i,e.type)));return new ai(r?St:o,n)}evaluate(e){let t,o=null,i=0;for(const n of this.args){if(i++,o=n.evaluate(e),o&&o instanceof $t&&!o.available&&(t||(t=o),o=null,i===this.args.length))return t;if(null!==o)break}return o}eachChild(e){this.args.forEach(e)}outputDefined(){return this.args.every((e=>e.outputDefined()))}serialize(){const e=["coalesce"];return this.eachChild((t=>{e.push(t.serialize())})),e}}class si{constructor(e,t){this.type=t.type,this.bindings=[].concat(e),this.result=t}evaluate(e){return this.result.evaluate(e)}eachChild(e){for(const t of this.bindings)e(t[1]);e(this.result)}static parse(e,t){if(e.length<4)return t.error(`Expected at least 3 arguments, but found ${e.length-1} instead.`);const o=[];for(let i=1;i=o.length)throw new oo(`Array index out of bounds: ${t} > ${o.length-1}.`);if(t!==Math.floor(t))throw new oo(`Array index must be an integer, but found ${t} instead.`);return o[t]}eachChild(e){e(this.index),e(this.input)}outputDefined(){return!1}serialize(){return["at",this.index.serialize(),this.input.serialize()]}}class ci{constructor(e,t){this.type=Tt,this.needle=e,this.haystack=t}static parse(e,t){if(3!==e.length)return t.error(`Expected 2 arguments, but found ${e.length-1} instead.`);const o=t.parse(e[1],1,St),i=t.parse(e[2],2,St);return o&&i?Yt(o.type,[Tt,Rt,Lt,wt,St])?new ci(o,i):t.error(`Expected first argument to be of type boolean, string, number or null, but found ${Nt(o.type)} instead`):null}evaluate(e){const t=this.needle.evaluate(e),o=this.haystack.evaluate(e);if(!o)return!1;if(!jt(t,["boolean","string","number","null"]))throw new oo(`Expected first argument to be of type boolean, string, number or null, but found ${Nt(Qt(t))} instead.`);if(!jt(o,["string","array"]))throw new oo(`Expected second argument to be of type array or string, but found ${Nt(Qt(o))} instead.`);return o.indexOf(t)>=0}eachChild(e){e(this.needle),e(this.haystack)}outputDefined(){return!0}serialize(){return["in",this.needle.serialize(),this.haystack.serialize()]}}class li{constructor(e,t,o){this.type=Lt,this.needle=e,this.haystack=t,this.fromIndex=o}static parse(e,t){if(e.length<=2||e.length>=5)return t.error(`Expected 3 or 4 arguments, but found ${e.length-1} instead.`);const o=t.parse(e[1],1,St),i=t.parse(e[2],2,St);if(!o||!i)return null;if(!Yt(o.type,[Tt,Rt,Lt,wt,St]))return t.error(`Expected first argument to be of type boolean, string, number or null, but found ${Nt(o.type)} instead`);if(4===e.length){const n=t.parse(e[3],3,Lt);return n?new li(o,i,n):null}return new li(o,i)}evaluate(e){const t=this.needle.evaluate(e),o=this.haystack.evaluate(e);if(!jt(t,["boolean","string","number","null"]))throw new oo(`Expected first argument to be of type boolean, string, number or null, but found ${Nt(Qt(t))} instead.`);if(!jt(o,["string","array"]))throw new oo(`Expected second argument to be of type array or string, but found ${Nt(Qt(o))} instead.`);if(this.fromIndex){const i=this.fromIndex.evaluate(e);return o.indexOf(t,i)}return o.indexOf(t)}eachChild(e){e(this.needle),e(this.haystack),this.fromIndex&&e(this.fromIndex)}outputDefined(){return!1}serialize(){if(null!=this.fromIndex&&void 0!==this.fromIndex){const e=this.fromIndex.serialize();return["index-of",this.needle.serialize(),this.haystack.serialize(),e]}return["index-of",this.needle.serialize(),this.haystack.serialize()]}}class bi{constructor(e,t,o,i,n,r){this.inputType=e,this.type=t,this.input=o,this.cases=i,this.outputs=n,this.otherwise=r}static parse(e,t){if(e.length<5)return t.error(`Expected at least 4 arguments, but found only ${e.length-1}.`);if(e.length%2!=1)return t.error("Expected an even number of arguments.");let o,i;t.expectedType&&"value"!==t.expectedType.kind&&(i=t.expectedType);const n={},r=[];for(let a=2;aNumber.MAX_SAFE_INTEGER)return c.error(`Branch labels must be integers no larger than ${Number.MAX_SAFE_INTEGER}.`);if("number"==typeof e&&Math.floor(e)!==e)return c.error("Numeric branch labels must be integer values.");if(o){if(c.checkSubtype(o,Qt(e)))return null}else o=Qt(e);if(void 0!==n[String(e)])return c.error("Branch labels must be unique.");n[String(e)]=r.length}const l=t.parse(p,a,i);if(!l)return null;i=i||l.type,r.push(l)}const a=t.parse(e[1],1,St);if(!a)return null;const s=t.parse(e[e.length-1],e.length-1,i);return s?"value"!==a.type.kind&&t.concat(1).checkSubtype(o,a.type)?null:new bi(o,i,a,n,r,s):null}evaluate(e){const t=this.input.evaluate(e);return(Qt(t)===this.inputType&&this.outputs[this.cases[t]]||this.otherwise).evaluate(e)}eachChild(e){e(this.input),this.outputs.forEach(e),e(this.otherwise)}outputDefined(){return this.outputs.every((e=>e.outputDefined()))&&this.otherwise.outputDefined()}serialize(){const e=["match",this.input.serialize()],t=Object.keys(this.cases).sort(),o=[],i={};for(const e of t){const t=i[this.cases[e]];void 0===t?(i[this.cases[e]]=o.length,o.push([this.cases[e],[e]])):o[t][1].push(e)}const n=e=>"number"===this.inputType.kind?Number(e):e;for(const[t,i]of o)e.push(1===i.length?n(i[0]):i.map(n)),e.push(this.outputs[t].serialize());return e.push(this.otherwise.serialize()),e}}class di{constructor(e,t,o){this.type=e,this.branches=t,this.otherwise=o}static parse(e,t){if(e.length<4)return t.error(`Expected at least 3 arguments, but found only ${e.length-1}.`);if(e.length%2!=0)return t.error("Expected an odd number of arguments.");let o;t.expectedType&&"value"!==t.expectedType.kind&&(o=t.expectedType);const i=[];for(let n=1;nt.outputDefined()))&&this.otherwise.outputDefined()}serialize(){const e=["case"];return this.eachChild((t=>{e.push(t.serialize())})),e}}class ui{constructor(e,t,o,i){this.type=e,this.input=t,this.beginIndex=o,this.endIndex=i}static parse(e,t){if(e.length<=2||e.length>=5)return t.error(`Expected 3 or 4 arguments, but found ${e.length-1} instead.`);const o=t.parse(e[1],1,St),i=t.parse(e[2],2,Lt);if(!o||!i)return null;if(!Yt(o.type,[Ct(St),Rt,St]))return t.error(`Expected first argument to be of type array or string, but found ${Nt(o.type)} instead`);if(4===e.length){const n=t.parse(e[3],3,Lt);return n?new ui(o.type,o,i,n):null}return new ui(o.type,o,i)}evaluate(e){const t=this.input.evaluate(e),o=this.beginIndex.evaluate(e);if(!jt(t,["string","array"]))throw new oo(`Expected first argument to be of type array or string, but found ${Nt(Qt(t))} instead.`);if(this.endIndex){const i=this.endIndex.evaluate(e);return t.slice(o,i)}return t.slice(o)}eachChild(e){e(this.input),e(this.beginIndex),this.endIndex&&e(this.endIndex)}outputDefined(){return!1}serialize(){if(null!=this.endIndex&&void 0!==this.endIndex){const e=this.endIndex.serialize();return["slice",this.input.serialize(),this.beginIndex.serialize(),e]}return["slice",this.input.serialize(),this.beginIndex.serialize()]}}function Mi(e,t){return"=="===e||"!="===e?"boolean"===t.kind||"string"===t.kind||"number"===t.kind||"null"===t.kind||"value"===t.kind:"string"===t.kind||"number"===t.kind||"value"===t.kind}function zi(e,t,o,i){return 0===i.compare(t,o)}function mi(e,t,o){const i="=="!==e&&"!="!==e;return class n{constructor(e,t,o){this.type=Tt,this.lhs=e,this.rhs=t,this.collator=o,this.hasUntypedArgument="value"===e.type.kind||"value"===t.type.kind}static parse(e,t){if(3!==e.length&&4!==e.length)return t.error("Expected two or three arguments.");const o=e[0];let r=t.parse(e[1],1,St);if(!r)return null;if(!Mi(o,r.type))return t.concat(1).error(`"${o}" comparisons are not supported for type '${Nt(r.type)}'.`);let a=t.parse(e[2],2,St);if(!a)return null;if(!Mi(o,a.type))return t.concat(2).error(`"${o}" comparisons are not supported for type '${Nt(a.type)}'.`);if(r.type.kind!==a.type.kind&&"value"!==r.type.kind&&"value"!==a.type.kind)return t.error(`Cannot compare types '${Nt(r.type)}' and '${Nt(a.type)}'.`);i&&("value"===r.type.kind&&"value"!==a.type.kind?r=new no(a.type,[r]):"value"!==r.type.kind&&"value"===a.type.kind&&(a=new no(r.type,[a])));let s=null;if(4===e.length){if("string"!==r.type.kind&&"string"!==a.type.kind&&"value"!==r.type.kind&&"value"!==a.type.kind)return t.error("Cannot use collator to compare non-string types.");if(s=t.parse(e[3],3,Xt),!s)return null}return new n(r,a,s)}evaluate(n){const r=this.lhs.evaluate(n),a=this.rhs.evaluate(n);if(i&&this.hasUntypedArgument){const t=Qt(r),o=Qt(a);if(t.kind!==o.kind||"string"!==t.kind&&"number"!==t.kind)throw new oo(`Expected arguments for "${e}" to be (string, string) or (number, number), but found (${t.kind}, ${o.kind}) instead.`)}if(this.collator&&!i&&this.hasUntypedArgument){const e=Qt(r),o=Qt(a);if("string"!==e.kind||"string"!==o.kind)return t(n,r,a)}return this.collator?o(n,r,a,this.collator.evaluate(n)):t(n,r,a)}eachChild(e){e(this.lhs),e(this.rhs),this.collator&&e(this.collator)}outputDefined(){return!0}serialize(){const t=[e];return this.eachChild((e=>{t.push(e.serialize())})),t}}}const hi=mi("==",(function(e,t,o){return t===o}),zi),Oi=mi("!=",(function(e,t,o){return t!==o}),(function(e,t,o,i){return!zi(0,t,o,i)})),fi=mi("<",(function(e,t,o){return t",(function(e,t,o){return t>o}),(function(e,t,o,i){return i.compare(t,o)>0})),_i=mi("<=",(function(e,t,o){return t<=o}),(function(e,t,o,i){return i.compare(t,o)<=0})),gi=mi(">=",(function(e,t,o){return t>=o}),(function(e,t,o,i){return i.compare(t,o)>=0}));class qi{constructor(e,t,o,i,n){this.type=Rt,this.number=e,this.locale=t,this.currency=o,this.minFractionDigits=i,this.maxFractionDigits=n}static parse(e,t){if(3!==e.length)return t.error("Expected two arguments.");const o=t.parse(e[1],1,Lt);if(!o)return null;const i=e[2];if("object"!=typeof i||Array.isArray(i))return t.error("NumberFormat options argument must be an object.");let n=null;if(i.locale&&(n=t.parse(i.locale,1,Rt),!n))return null;let r=null;if(i.currency&&(r=t.parse(i.currency,1,Rt),!r))return null;let a=null;if(i["min-fraction-digits"]&&(a=t.parse(i["min-fraction-digits"],1,Lt),!a))return null;let s=null;return i["max-fraction-digits"]&&(s=t.parse(i["max-fraction-digits"],1,Lt),!s)?null:new qi(o,n,r,a,s)}evaluate(e){return new Intl.NumberFormat(this.locale?this.locale.evaluate(e):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(e):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(e):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(e):void 0}).format(this.number.evaluate(e))}eachChild(e){e(this.number),this.locale&&e(this.locale),this.currency&&e(this.currency),this.minFractionDigits&&e(this.minFractionDigits),this.maxFractionDigits&&e(this.maxFractionDigits)}outputDefined(){return!1}serialize(){const e={};return this.locale&&(e.locale=this.locale.serialize()),this.currency&&(e.currency=this.currency.serialize()),this.minFractionDigits&&(e["min-fraction-digits"]=this.minFractionDigits.serialize()),this.maxFractionDigits&&(e["max-fraction-digits"]=this.maxFractionDigits.serialize()),["number-format",this.number.serialize(),e]}}class yi{constructor(e){this.type=Lt,this.input=e}static parse(e,t){if(2!==e.length)return t.error(`Expected 1 argument, but found ${e.length-1} instead.`);const o=t.parse(e[1],1);return o?"array"!==o.type.kind&&"string"!==o.type.kind&&"value"!==o.type.kind?t.error(`Expected argument of type string or array, but found ${Nt(o.type)} instead.`):new yi(o):null}evaluate(e){const t=this.input.evaluate(e);if("string"==typeof t)return t.length;if(Array.isArray(t))return t.length;throw new oo(`Expected value to be of type string or array, but found ${Nt(Qt(t))} instead.`)}eachChild(e){e(this.input)}outputDefined(){return!1}serialize(){const e=["length"];return this.eachChild((t=>{e.push(t.serialize())})),e}}const vi={"==":hi,"!=":Oi,">":Ai,"<":fi,">=":gi,"<=":_i,array:no,at:pi,boolean:no,case:di,coalesce:ai,collator:uo,format:ro,image:ao,in:ci,"index-of":li,interpolate:ni,"interpolate-hcl":ni,"interpolate-lab":ni,length:yi,let:si,literal:to,match:bi,number:no,"number-format":qi,object:no,slice:ui,step:Co,string:no,"to-boolean":po,"to-color":po,"to-number":po,"to-string":po,var:So,within:Ro};function xi(e,[t,o,i,n]){t=t.evaluate(e),o=o.evaluate(e),i=i.evaluate(e);const r=n?n.evaluate(e):1,a=Kt(t,o,i,r);if(a)throw new oo(a);return new Ut(t/255*r,o/255*r,i/255*r,r)}function Wi(e,t){return e in t}function wi(e,t){const o=t[e];return void 0===o?null:o}function Li(e){return{type:e}}function Ri(e){return{result:"success",value:e}}function Ti(e){return{result:"error",value:e}}function ki(e){return"data-driven"===e["property-type"]||"cross-faded-data-driven"===e["property-type"]}function Bi(e){return!!e.expression&&e.expression.parameters.indexOf("zoom")>-1}function Si(e){return!!e.expression&&e.expression.interpolated}function Xi(e){return e instanceof Number?"number":e instanceof String?"string":e instanceof Boolean?"boolean":Array.isArray(e)?"array":null===e?"null":typeof e}function Ei(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function Di(e){return e}function Ci(e,t){const o="color"===t.type,i=e.stops&&"object"==typeof e.stops[0][0],n=i||!(i||void 0!==e.property),r=e.type||(Si(t)?"exponential":"interval");if(o&&((e=qt({},e)).stops&&(e.stops=e.stops.map((e=>[e[0],Ut.parse(e[1])]))),e.default=Ut.parse(e.default?e.default:t.default)),e.colorSpace&&"rgb"!==e.colorSpace&&!ii[e.colorSpace])throw new Error(`Unknown color space: ${e.colorSpace}`);let a,s,p;if("exponential"===r)a=Yi;else if("interval"===r)a=Ii;else if("categorical"===r){a=Pi,s=Object.create(null);for(const t of e.stops)s[t[0]]=t[1];p=typeof e.stops[0][0]}else{if("identity"!==r)throw new Error(`Unknown function type "${r}"`);a=ji}if(i){const o={},i=[];for(let t=0;te[0])),evaluate:({zoom:o},i)=>Yi({stops:n,base:e.base},t,o).evaluate(o,i)}}if(n){const o="exponential"===r?{name:"exponential",base:void 0!==e.base?e.base:1}:null;return{kind:"camera",interpolationType:o,interpolationFactor:ni.interpolationFactor.bind(void 0,o),zoomStops:e.stops.map((e=>e[0])),evaluate:({zoom:o})=>a(e,t,o,s,p)}}return{kind:"source",evaluate(o,i){const n=i&&i.properties?i.properties[e.property]:void 0;return void 0===n?Ni(e.default,t.default):a(e,t,n,s,p)}}}function Ni(e,t,o){return void 0!==e?e:void 0!==t?t:void 0!==o?o:void 0}function Pi(e,t,o,i,n){return Ni(typeof o===n?i[o]:void 0,e.default,t.default)}function Ii(e,t,o){if("number"!==Xi(o))return Ni(e.default,t.default);const i=e.stops.length;if(1===i)return e.stops[0][1];if(o<=e.stops[0][0])return e.stops[0][1];if(o>=e.stops[i-1][0])return e.stops[i-1][1];const n=Do(e.stops.map((e=>e[0])),o);return e.stops[n][1]}function Yi(e,t,o){const i=void 0!==e.base?e.base:1;if("number"!==Xi(o))return Ni(e.default,t.default);const n=e.stops.length;if(1===n)return e.stops[0][1];if(o<=e.stops[0][0])return e.stops[0][1];if(o>=e.stops[n-1][0])return e.stops[n-1][1];const r=Do(e.stops.map((e=>e[0])),o),a=function(e,t,o,i){const n=i-o,r=e-o;return 0===n?0:1===t?r/n:(Math.pow(t,r)-1)/(Math.pow(t,n)-1)}(o,i,e.stops[r][0],e.stops[r+1][0]),s=e.stops[r][1],p=e.stops[r+1][1];let c=Po[t.type]||Di;if(e.colorSpace&&"rgb"!==e.colorSpace){const t=ii[e.colorSpace];c=(e,o)=>t.reverse(t.interpolate(t.forward(e),t.forward(o),a))}return"function"==typeof s.evaluate?{evaluate(...e){const t=s.evaluate.apply(void 0,e),o=p.evaluate.apply(void 0,e);if(void 0!==t&&void 0!==o)return c(t,o,a)}}:c(s,p,a)}function ji(e,t,o){return"color"===t.type?o=Ut.parse(o):"formatted"===t.type?o=Zt.fromString(o.toString()):"resolvedImage"===t.type?o=$t.fromString(o.toString()):Xi(o)===t.type||"enum"===t.type&&t.values[o]||(o=void 0),Ni(o,e.default,t.default)}bo.register(vi,{error:[{kind:"error"},[Rt],(e,[t])=>{throw new oo(t.evaluate(e))}],typeof:[Rt,[St],(e,[t])=>Nt(Qt(t.evaluate(e)))],"to-rgba":[Ct(Lt,4),[kt],(e,[t])=>t.evaluate(e).toArray()],rgb:[kt,[Lt,Lt,Lt],xi],rgba:[kt,[Lt,Lt,Lt,Lt],xi],has:{type:Tt,overloads:[[[Rt],(e,[t])=>Wi(t.evaluate(e),e.properties())],[[Rt,Bt],(e,[t,o])=>Wi(t.evaluate(e),o.evaluate(e))]]},get:{type:St,overloads:[[[Rt],(e,[t])=>wi(t.evaluate(e),e.properties())],[[Rt,Bt],(e,[t,o])=>wi(t.evaluate(e),o.evaluate(e))]]},"feature-state":[St,[Rt],(e,[t])=>wi(t.evaluate(e),e.featureState||{})],properties:[Bt,[],e=>e.properties()],"geometry-type":[Rt,[],e=>e.geometryType()],id:[St,[],e=>e.id()],zoom:[Lt,[],e=>e.globals.zoom],pitch:[Lt,[],e=>e.globals.pitch||0],"distance-from-center":[Lt,[],e=>e.distanceFromCenter()],"heatmap-density":[Lt,[],e=>e.globals.heatmapDensity||0],"line-progress":[Lt,[],e=>e.globals.lineProgress||0],"sky-radial-progress":[Lt,[],e=>e.globals.skyRadialProgress||0],accumulated:[St,[],e=>void 0===e.globals.accumulated?null:e.globals.accumulated],"+":[Lt,Li(Lt),(e,t)=>{let o=0;for(const i of t)o+=i.evaluate(e);return o}],"*":[Lt,Li(Lt),(e,t)=>{let o=1;for(const i of t)o*=i.evaluate(e);return o}],"-":{type:Lt,overloads:[[[Lt,Lt],(e,[t,o])=>t.evaluate(e)-o.evaluate(e)],[[Lt],(e,[t])=>-t.evaluate(e)]]},"/":[Lt,[Lt,Lt],(e,[t,o])=>t.evaluate(e)/o.evaluate(e)],"%":[Lt,[Lt,Lt],(e,[t,o])=>t.evaluate(e)%o.evaluate(e)],ln2:[Lt,[],()=>Math.LN2],pi:[Lt,[],()=>Math.PI],e:[Lt,[],()=>Math.E],"^":[Lt,[Lt,Lt],(e,[t,o])=>Math.pow(t.evaluate(e),o.evaluate(e))],sqrt:[Lt,[Lt],(e,[t])=>Math.sqrt(t.evaluate(e))],log10:[Lt,[Lt],(e,[t])=>Math.log(t.evaluate(e))/Math.LN10],ln:[Lt,[Lt],(e,[t])=>Math.log(t.evaluate(e))],log2:[Lt,[Lt],(e,[t])=>Math.log(t.evaluate(e))/Math.LN2],sin:[Lt,[Lt],(e,[t])=>Math.sin(t.evaluate(e))],cos:[Lt,[Lt],(e,[t])=>Math.cos(t.evaluate(e))],tan:[Lt,[Lt],(e,[t])=>Math.tan(t.evaluate(e))],asin:[Lt,[Lt],(e,[t])=>Math.asin(t.evaluate(e))],acos:[Lt,[Lt],(e,[t])=>Math.acos(t.evaluate(e))],atan:[Lt,[Lt],(e,[t])=>Math.atan(t.evaluate(e))],min:[Lt,Li(Lt),(e,t)=>Math.min(...t.map((t=>t.evaluate(e))))],max:[Lt,Li(Lt),(e,t)=>Math.max(...t.map((t=>t.evaluate(e))))],abs:[Lt,[Lt],(e,[t])=>Math.abs(t.evaluate(e))],round:[Lt,[Lt],(e,[t])=>{const o=t.evaluate(e);return o<0?-Math.round(-o):Math.round(o)}],floor:[Lt,[Lt],(e,[t])=>Math.floor(t.evaluate(e))],ceil:[Lt,[Lt],(e,[t])=>Math.ceil(t.evaluate(e))],"filter-==":[Tt,[Rt,St],(e,[t,o])=>e.properties()[t.value]===o.value],"filter-id-==":[Tt,[St],(e,[t])=>e.id()===t.value],"filter-type-==":[Tt,[Rt],(e,[t])=>e.geometryType()===t.value],"filter-<":[Tt,[Rt,St],(e,[t,o])=>{const i=e.properties()[t.value],n=o.value;return typeof i==typeof n&&i{const o=e.id(),i=t.value;return typeof o==typeof i&&o":[Tt,[Rt,St],(e,[t,o])=>{const i=e.properties()[t.value],n=o.value;return typeof i==typeof n&&i>n}],"filter-id->":[Tt,[St],(e,[t])=>{const o=e.id(),i=t.value;return typeof o==typeof i&&o>i}],"filter-<=":[Tt,[Rt,St],(e,[t,o])=>{const i=e.properties()[t.value],n=o.value;return typeof i==typeof n&&i<=n}],"filter-id-<=":[Tt,[St],(e,[t])=>{const o=e.id(),i=t.value;return typeof o==typeof i&&o<=i}],"filter->=":[Tt,[Rt,St],(e,[t,o])=>{const i=e.properties()[t.value],n=o.value;return typeof i==typeof n&&i>=n}],"filter-id->=":[Tt,[St],(e,[t])=>{const o=e.id(),i=t.value;return typeof o==typeof i&&o>=i}],"filter-has":[Tt,[St],(e,[t])=>t.value in e.properties()],"filter-has-id":[Tt,[],e=>null!==e.id()&&void 0!==e.id()],"filter-type-in":[Tt,[Ct(Rt)],(e,[t])=>t.value.indexOf(e.geometryType())>=0],"filter-id-in":[Tt,[Ct(St)],(e,[t])=>t.value.indexOf(e.id())>=0],"filter-in-small":[Tt,[Rt,Ct(St)],(e,[t,o])=>o.value.indexOf(e.properties()[t.value])>=0],"filter-in-large":[Tt,[Rt,Ct(St)],(e,[t,o])=>function(e,t,o,i){for(;o<=i;){const n=o+i>>1;if(t[n]===e)return!0;t[n]>e?i=n-1:o=n+1}return!1}(e.properties()[t.value],o.value,0,o.value.length-1)],all:{type:Tt,overloads:[[[Tt,Tt],(e,[t,o])=>t.evaluate(e)&&o.evaluate(e)],[Li(Tt),(e,t)=>{for(const o of t)if(!o.evaluate(e))return!1;return!0}]]},any:{type:Tt,overloads:[[[Tt,Tt],(e,[t,o])=>t.evaluate(e)||o.evaluate(e)],[Li(Tt),(e,t)=>{for(const o of t)if(o.evaluate(e))return!0;return!1}]]},"!":[Tt,[Tt],(e,[t])=>!t.evaluate(e)],"is-supported-script":[Tt,[Rt],(e,[t])=>{const o=e.globals&&e.globals.isSupportedScript;return!o||o(t.evaluate(e))}],upcase:[Rt,[Rt],(e,[t])=>t.evaluate(e).toUpperCase()],downcase:[Rt,[Rt],(e,[t])=>t.evaluate(e).toLowerCase()],concat:[Rt,Li(St),(e,t)=>t.map((t=>eo(t.evaluate(e)))).join("")],"resolved-locale":[Rt,[Xt],(e,[t])=>t.evaluate(e).resolvedLocale()]});class Fi{constructor(e,t){this.expression=e,this._warningHistory={},this._evaluator=new lo,this._defaultValue=t?function(e){return"color"===e.type&&Ei(e.default)?new Ut(0,0,0,0):"color"===e.type?Ut.parse(e.default)||null:void 0===e.default?null:e.default}(t):null,this._enumValues=t&&"enum"===t.type?t.values:null}evaluateWithoutErrorHandling(e,t,o,i,n,r,a,s){return this._evaluator.globals=e,this._evaluator.feature=t,this._evaluator.featureState=o,this._evaluator.canonical=i,this._evaluator.availableImages=n||null,this._evaluator.formattedSection=r,this._evaluator.featureTileCoord=a||null,this._evaluator.featureDistanceData=s||null,this.expression.evaluate(this._evaluator)}evaluate(e,t,o,i,n,r,a,s){this._evaluator.globals=e,this._evaluator.feature=t||null,this._evaluator.featureState=o||null,this._evaluator.canonical=i,this._evaluator.availableImages=n||null,this._evaluator.formattedSection=r||null,this._evaluator.featureTileCoord=a||null,this._evaluator.featureDistanceData=s||null;try{const e=this.expression.evaluate(this._evaluator);if(null==e||"number"==typeof e&&e!=e)return this._defaultValue;if(this._enumValues&&!(e in this._enumValues))throw new oo(`Expected value to be one of ${Object.keys(this._enumValues).map((e=>JSON.stringify(e))).join(", ")}, but found ${JSON.stringify(e)} instead.`);return e}catch(e){return this._warningHistory[e.message]||(this._warningHistory[e.message]=!0,"undefined"!=typeof console&&console.warn(e.message)),this._defaultValue}}}function Hi(e){return Array.isArray(e)&&e.length>0&&"string"==typeof e[0]&&e[0]in vi}function Ui(e,t){const o=new Xo(vi,[],t?function(e){const t={color:kt,string:Rt,number:Lt,enum:Rt,boolean:Tt,formatted:Et,resolvedImage:Dt};return"array"===e.type?Ct(t[e.value]||St,e.length):t[e.type]}(t):void 0),i=o.parse(e,void 0,void 0,void 0,t&&"string"===t.type?{typeAnnotation:"coerce"}:void 0);return i?Ri(new Fi(i,t)):Ti(o.errors)}class Vi{constructor(e,t){this.kind=e,this._styleExpression=t,this.isStateDependent="constant"!==e&&!ko(t.expression)}evaluateWithoutErrorHandling(e,t,o,i,n,r){return this._styleExpression.evaluateWithoutErrorHandling(e,t,o,i,n,r)}evaluate(e,t,o,i,n,r){return this._styleExpression.evaluate(e,t,o,i,n,r)}}class Gi{constructor(e,t,o,i){this.kind=e,this.zoomStops=o,this._styleExpression=t,this.isStateDependent="camera"!==e&&!ko(t.expression),this.interpolationType=i}evaluateWithoutErrorHandling(e,t,o,i,n,r){return this._styleExpression.evaluateWithoutErrorHandling(e,t,o,i,n,r)}evaluate(e,t,o,i,n,r){return this._styleExpression.evaluate(e,t,o,i,n,r)}interpolationFactor(e,t,o){return this.interpolationType?ni.interpolationFactor(this.interpolationType,e,t,o):0}}function Zi(e,t){if("error"===(e=Ui(e,t)).result)return e;const o=e.value.expression,i=To(o);if(!i&&!ki(t))return Ti([new xt("","data expressions not supported")]);const n=Bo(o,["zoom","pitch","distance-from-center"]);if(!n&&!Bi(t))return Ti([new xt("","zoom expressions not supported")]);const r=Ki(o);return r||n?r instanceof xt?Ti([r]):r instanceof ni&&!Si(t)?Ti([new xt("",'"interpolate" expressions cannot be used with this property')]):Ri(r?new Gi(i?"camera":"composite",e.value,r.labels,r instanceof ni?r.interpolation:void 0):new Vi(i?"constant":"source",e.value)):Ti([new xt("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')])}class $i{constructor(e,t){this._parameters=e,this._specification=t,qt(this,Ci(this._parameters,this._specification))}static deserialize(e){return new $i(e._parameters,e._specification)}static serialize(e){return{_parameters:e._parameters,_specification:e._specification}}}function Ki(e){let t=null;if(e instanceof si)t=Ki(e.result);else if(e instanceof ai){for(const o of e.args)if(t=Ki(o),t)break}else(e instanceof Co||e instanceof ni)&&e.input instanceof bo&&"zoom"===e.input.name&&(t=e);return t instanceof xt||e.eachChild((e=>{const o=Ki(e);o instanceof xt?t=o:!t&&o?t=new xt("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.'):t&&o&&t!==o&&(t=new xt("",'Only one zoom-based "step" or "interpolate" subexpression may be used in an expression.'))})),t}function Ji(e){const t=e.key,o=e.value,i=e.valueSpec||{},n=e.objectElementValidators||{},r=e.style,a=e.styleSpec;let s=[];const p=Xi(o);if("object"!==p)return[new _t(t,o,`object expected, ${p} found`)];for(const e in o){const p=e.split(".")[0],c=i[p]||i["*"];let l;if(n[p])l=n[p];else if(i[p])l=kn;else if(n["*"])l=n["*"];else{if(!i["*"]){s.push(new _t(t,o[e],`unknown property "${e}"`));continue}l=kn}s=s.concat(l({key:(t?`${t}.`:t)+e,value:o[e],valueSpec:c,style:r,styleSpec:a,object:o,objectKey:e},o))}for(const e in i)n[e]||i[e].required&&void 0===i[e].default&&void 0===o[e]&&s.push(new _t(t,o,`missing required property "${e}"`));return s}function Qi(e){const t=e.value,o=e.valueSpec,i=e.style,n=e.styleSpec,r=e.key,a=e.arrayElementValidator||kn;if("array"!==Xi(t))return[new _t(r,t,`array expected, ${Xi(t)} found`)];if(o.length&&t.length!==o.length)return[new _t(r,t,`array length ${o.length} expected, length ${t.length} found`)];if(o["min-length"]&&t.lengthn)return[new _t(t,o,`${o} is greater than the maximum value ${n}`)]}return[]}function tn(e){const t=e.valueSpec,o=yt(e.value.type);let i,n,r,a={};const s="categorical"!==o&&void 0===e.value.property,p=!s,c="array"===Xi(e.value.stops)&&"array"===Xi(e.value.stops[0])&&"object"===Xi(e.value.stops[0][0]),l=Ji({key:e.key,value:e.value,valueSpec:e.styleSpec.function,style:e.style,styleSpec:e.styleSpec,objectElementValidators:{stops:function(e){if("identity"===o)return[new _t(e.key,e.value,'identity function may not have a "stops" property')];let t=[];const i=e.value;return t=t.concat(Qi({key:e.key,value:i,valueSpec:e.valueSpec,style:e.style,styleSpec:e.styleSpec,arrayElementValidator:b})),"array"===Xi(i)&&0===i.length&&t.push(new _t(e.key,i,"array must have at least one stop")),t},default:function(e){return kn({key:e.key,value:e.value,valueSpec:t,style:e.style,styleSpec:e.styleSpec})}}});return"identity"===o&&s&&l.push(new _t(e.key,e.value,'missing required property "property"')),"identity"===o||e.value.stops||l.push(new _t(e.key,e.value,'missing required property "stops"')),"exponential"===o&&e.valueSpec.expression&&!Si(e.valueSpec)&&l.push(new _t(e.key,e.value,"exponential functions not supported")),e.styleSpec.$version>=8&&(p&&!ki(e.valueSpec)?l.push(new _t(e.key,e.value,"property functions not supported")):s&&!Bi(e.valueSpec)&&l.push(new _t(e.key,e.value,"zoom functions not supported"))),"categorical"!==o&&!c||void 0!==e.value.property||l.push(new _t(e.key,e.value,'"property" property is required')),l;function b(e){let o=[];const i=e.value,s=e.key;if("array"!==Xi(i))return[new _t(s,i,`array expected, ${Xi(i)} found`)];if(2!==i.length)return[new _t(s,i,`array length 2 expected, length ${i.length} found`)];if(c){if("object"!==Xi(i[0]))return[new _t(s,i,`object expected, ${Xi(i[0])} found`)];if(void 0===i[0].zoom)return[new _t(s,i,"object stop key must have zoom")];if(void 0===i[0].value)return[new _t(s,i,"object stop key must have value")];if(r&&r>yt(i[0].zoom))return[new _t(s,i[0].zoom,"stop zoom values must appear in ascending order")];yt(i[0].zoom)!==r&&(r=yt(i[0].zoom),n=void 0,a={}),o=o.concat(Ji({key:`${s}[0]`,value:i[0],valueSpec:{zoom:{}},style:e.style,styleSpec:e.styleSpec,objectElementValidators:{zoom:en,value:d}}))}else o=o.concat(d({key:`${s}[0]`,value:i[0],valueSpec:{},style:e.style,styleSpec:e.styleSpec},i));return Hi(vt(i[1]))?o.concat([new _t(`${s}[1]`,i[1],"expressions are not allowed in function stops.")]):o.concat(kn({key:`${s}[1]`,value:i[1],valueSpec:t,style:e.style,styleSpec:e.styleSpec}))}function d(e,r){const s=Xi(e.value),p=yt(e.value),c=null!==e.value?e.value:r;if(i){if(s!==i)return[new _t(e.key,c,`${s} stop domain type must match previous stop domain type ${i}`)]}else i=s;if("number"!==s&&"string"!==s&&"boolean"!==s)return[new _t(e.key,c,"stop domain value must be a number, string, or boolean")];if("number"!==s&&"categorical"!==o){let i=`number expected, ${s} found`;return ki(t)&&void 0===o&&(i+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new _t(e.key,c,i)]}return"categorical"!==o||"number"!==s||isFinite(p)&&Math.floor(p)===p?"categorical"!==o&&"number"===s&&void 0!==n&&pnew _t(`${e.key}${t.key}`,e.value,t.message)));const o=t.value.expression||t.value._styleExpression.expression;if("property"===e.expressionContext&&"text-font"===e.propertyKey&&!o.outputDefined())return[new _t(e.key,e.value,`Invalid data expression for "${e.propertyKey}". Output values must be contained as literals within the expression.`)];if("property"===e.expressionContext&&"layout"===e.propertyType&&!ko(o))return[new _t(e.key,e.value,'"feature-state" data expressions are not supported with layout properties.')];if("filter"===e.expressionContext)return nn(o,e);if(e.expressionContext&&0===e.expressionContext.indexOf("cluster")){if(!Bo(o,["zoom","feature-state"]))return[new _t(e.key,e.value,'"zoom" and "feature-state" expressions are not supported with cluster properties.')];if("cluster-initial"===e.expressionContext&&!To(o))return[new _t(e.key,e.value,"Feature data expressions are not supported with initial expression part of cluster properties.")]}return[]}function nn(e,t){const o=new Set(["zoom","feature-state","pitch","distance-from-center"]);for(const e of t.valueSpec.expression.parameters)o.delete(e);if(0===o.size)return[];const i=[];return e instanceof bo&&o.has(e.name)?[new _t(t.key,t.value,`["${e.name}"] expression is not supported in a filter for a ${t.object.type} layer with id: ${t.object.id}`)]:(e.eachChild((e=>{i.push(...nn(e,t))})),i)}function rn(e){const t=e.key,o=e.value,i=e.valueSpec,n=[];return Array.isArray(i.values)?-1===i.values.indexOf(yt(o))&&n.push(new _t(t,o,`expected one of [${i.values.join(", ")}], ${JSON.stringify(o)} found`)):-1===Object.keys(i.values).indexOf(yt(o))&&n.push(new _t(t,o,`expected one of [${Object.keys(i.values).join(", ")}], ${JSON.stringify(o)} found`)),n}function an(e){if(!0===e||!1===e)return!0;if(!Array.isArray(e)||0===e.length)return!1;switch(e[0]){case"has":return e.length>=2&&"$id"!==e[1]&&"$type"!==e[1];case"in":return e.length>=3&&("string"!=typeof e[1]||Array.isArray(e[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return 3!==e.length||Array.isArray(e[1])||Array.isArray(e[2]);case"any":case"all":for(const t of e.slice(1))if(!an(t)&&"boolean"!=typeof t)return!1;return!0;default:return!0}}function sn(e,t="fill"){if(null==e)return{filter:()=>!0,needGeometry:!1,needFeature:!1};an(e)||(e=Mn(e));const o=e;let i=!0;try{i=function(e){if(!ln(e))return e;let t=vt(e);return cn(t),t=pn(t),t}(o)}catch(e){console.warn(`Failed to extract static filter. Filter will continue working, but at higher memory usage and slower framerate.\nThis is most likely a bug, please report this via https://github.com/mapbox/mapbox-gl-js/issues/new?assignees=&labels=&template=Bug_report.md\nand paste the contents of this message in the report.\nThank you!\nFilter Expression:\n${JSON.stringify(o,null,2)}\n `)}const n=At[`filter_${t}`],r=Ui(i,n);let a=null;if("error"===r.result)throw new Error(r.value.map((e=>`${e.key}: ${e.message}`)).join(", "));a=(e,t,o)=>r.value.evaluate(e,t,{},o);let s=null,p=null;if(i!==o){const e=Ui(o,n);if("error"===e.result)throw new Error(e.value.map((e=>`${e.key}: ${e.message}`)).join(", "));s=(t,o,i,n,r)=>e.value.evaluate(t,o,{},i,void 0,void 0,n,r),p=!To(e.value.expression)}return{filter:a,dynamicFilter:s||void 0,needGeometry:un(i),needFeature:!!p}}function pn(e){if(!Array.isArray(e))return e;const t=function(e){if(bn.has(e[0]))for(let t=1;tpn(e)))}function cn(e){let t=!1;const o=[];if("case"===e[0]){for(let i=1;i",">=","<","<=","to-boolean"]);function dn(e,t){return et?1:0}function un(e){if(!Array.isArray(e))return!1;if("within"===e[0])return!0;for(let t=1;t"===t||"<="===t||">="===t?zn(e[1],e[2],t):"any"===t?(o=e.slice(1),["any"].concat(o.map(Mn))):"all"===t?["all"].concat(e.slice(1).map(Mn)):"none"===t?["all"].concat(e.slice(1).map(Mn).map(On)):"in"===t?mn(e[1],e.slice(2)):"!in"===t?On(mn(e[1],e.slice(2))):"has"===t?hn(e[1]):"!has"===t?On(hn(e[1])):"within"!==t||e;var o}function zn(e,t,o){switch(e){case"$type":return[`filter-type-${o}`,t];case"$id":return[`filter-id-${o}`,t];default:return[`filter-${o}`,e,t]}}function mn(e,t){if(0===t.length)return!1;switch(e){case"$type":return["filter-type-in",["literal",t]];case"$id":return["filter-id-in",["literal",t]];default:return t.length>200&&!t.some((e=>typeof e!=typeof t[0]))?["filter-in-large",e,["literal",t.sort(dn)]]:["filter-in-small",e,["literal",t]]}}function hn(e){switch(e){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",e]}}function On(e){return["!",e]}function fn(e){if(an(vt(e.value))){const t=vt(e.layerType);return on(qt({},e,{expressionContext:"filter",valueSpec:e.styleSpec[`filter_${t||"fill"}`]}))}return An(e)}function An(e){const t=e.value,o=e.key;if("array"!==Xi(t))return[new _t(o,t,`array expected, ${Xi(t)} found`)];const i=e.styleSpec;let n,r=[];if(t.length<1)return[new _t(o,t,"filter array must have at least 1 element")];switch(r=r.concat(rn({key:`${o}[0]`,value:t[0],valueSpec:i.filter_operator,style:e.style,styleSpec:e.styleSpec})),yt(t[0])){case"<":case"<=":case">":case">=":t.length>=2&&"$type"===yt(t[1])&&r.push(new _t(o,t,`"$type" cannot be use with operator "${t[0]}"`));case"==":case"!=":3!==t.length&&r.push(new _t(o,t,`filter array for operator "${t[0]}" must have 3 elements`));case"in":case"!in":t.length>=2&&(n=Xi(t[1]),"string"!==n&&r.push(new _t(`${o}[1]`,t[1],`string expected, ${n} found`)));for(let a=2;a{e in o&&t.push(new _t(i,o[e],`"${e}" is prohibited for ref layers`))})),n.layers.forEach((t=>{yt(t.id)===s&&(e=t)})),e?e.ref?t.push(new _t(i,o.ref,"ref cannot reference another ref layer")):a=yt(e.type):t.push(new _t(i,o.ref,`ref layer "${s}" not found`))}else if("background"!==a&&"sky"!==a)if(o.source){const e=n.sources&&n.sources[o.source],r=e&&yt(e.type);e?"vector"===r&&"raster"===a?t.push(new _t(i,o.source,`layer "${o.id}" requires a raster source`)):"raster"===r&&"raster"!==a?t.push(new _t(i,o.source,`layer "${o.id}" requires a vector source`)):"vector"!==r||o["source-layer"]?"raster-dem"===r&&"hillshade"!==a?t.push(new _t(i,o.source,"raster-dem source can only be used with layer type 'hillshade'.")):"line"!==a||!o.paint||!o.paint["line-gradient"]||"geojson"===r&&e.lineMetrics||t.push(new _t(i,o,`layer "${o.id}" specifies a line-gradient, which requires a GeoJSON source with \`lineMetrics\` enabled.`)):t.push(new _t(i,o,`layer "${o.id}" must specify a "source-layer"`)):t.push(new _t(i,o.source,`source "${o.source}" not found`))}else t.push(new _t(i,o,'missing required property "source"'));return t=t.concat(Ji({key:i,value:o,valueSpec:r.layer,style:e.style,styleSpec:e.styleSpec,objectElementValidators:{"*":()=>[],type:()=>kn({key:`${i}.type`,value:o.type,valueSpec:r.layer.type,style:e.style,styleSpec:e.styleSpec,object:o,objectKey:"type"}),filter:e=>fn(qt({layerType:a},e)),layout:e=>Ji({layer:o,key:e.key,value:e.value,style:e.style,styleSpec:e.styleSpec,objectElementValidators:{"*":e=>qn(qt({layerType:a},e))}}),paint:e=>Ji({layer:o,key:e.key,value:e.value,style:e.style,styleSpec:e.styleSpec,objectElementValidators:{"*":e=>gn(qt({layerType:a},e))}})}})),t}function vn(e){const t=e.value,o=e.key,i=Xi(t);return"string"!==i?[new _t(o,t,`string expected, ${i} found`)]:[]}const xn={promoteId:function({key:e,value:t}){if("string"===Xi(t))return vn({key:e,value:t});{const o=[];for(const i in t)o.push(...vn({key:`${e}.${i}`,value:t[i]}));return o}}};function Wn(e){const t=e.value,o=e.key,i=e.styleSpec,n=e.style;if(!t.type)return[new _t(o,t,'"type" is required')];const r=yt(t.type);let a;switch(r){case"vector":case"raster":case"raster-dem":return a=Ji({key:o,value:t,valueSpec:i[`source_${r.replace("-","_")}`],style:e.style,styleSpec:i,objectElementValidators:xn}),a;case"geojson":if(a=Ji({key:o,value:t,valueSpec:i.source_geojson,style:n,styleSpec:i,objectElementValidators:xn}),t.cluster)for(const e in t.clusterProperties){const[i,n]=t.clusterProperties[e],r="string"==typeof i?[i,["accumulated"],["get",e]]:i;a.push(...on({key:`${o}.${e}.map`,value:n,expressionContext:"cluster-map"})),a.push(...on({key:`${o}.${e}.reduce`,value:r,expressionContext:"cluster-reduce"}))}return a;case"video":return Ji({key:o,value:t,valueSpec:i.source_video,style:n,styleSpec:i});case"image":return Ji({key:o,value:t,valueSpec:i.source_image,style:n,styleSpec:i});case"canvas":return[new _t(o,null,"Please use runtime APIs to add canvas sources, rather than including them in stylesheets.","source.canvas")];default:return rn({key:`${o}.type`,value:t.type,valueSpec:{values:["vector","raster","raster-dem","geojson","video","image"]},style:n,styleSpec:i})}}function wn(e){const t=e.value,o=e.styleSpec,i=o.light,n=e.style;let r=[];const a=Xi(t);if(void 0===t)return r;if("object"!==a)return r=r.concat([new _t("light",t,`object expected, ${a} found`)]),r;for(const e in t){const a=e.match(/^(.*)-transition$/);r=r.concat(a&&i[a[1]]&&i[a[1]].transition?kn({key:e,value:t[e],valueSpec:o.transition,style:n,styleSpec:o}):i[e]?kn({key:e,value:t[e],valueSpec:i[e],style:n,styleSpec:o}):[new _t(e,t[e],`unknown property "${e}"`)])}return r}function Ln(e){const t=e.value,o=e.key,i=e.style,n=e.styleSpec,r=n.terrain;let a=[];const s=Xi(t);if(void 0===t)return a;if("object"!==s)return a=a.concat([new _t("terrain",t,`object expected, ${s} found`)]),a;for(const e in t){const o=e.match(/^(.*)-transition$/);a=a.concat(o&&r[o[1]]&&r[o[1]].transition?kn({key:e,value:t[e],valueSpec:n.transition,style:i,styleSpec:n}):r[e]?kn({key:e,value:t[e],valueSpec:r[e],style:i,styleSpec:n}):[new _t(e,t[e],`unknown property "${e}"`)])}if(t.source){const e=i.sources&&i.sources[t.source],n=e&&yt(e.type);e?"raster-dem"!==n&&a.push(new _t(o,t.source,`terrain cannot be used with a source of type ${n}, it only be used with a "raster-dem" source type`)):a.push(new _t(o,t.source,`source "${t.source}" not found`))}else a.push(new _t(o,t,'terrain is missing required property "source"'));return a}function Rn(e){const t=e.value,o=e.style,i=e.styleSpec,n=i.fog;let r=[];const a=Xi(t);if(void 0===t)return r;if("object"!==a)return r=r.concat([new _t("fog",t,`object expected, ${a} found`)]),r;for(const e in t){const a=e.match(/^(.*)-transition$/);r=r.concat(a&&n[a[1]]&&n[a[1]].transition?kn({key:e,value:t[e],valueSpec:i.transition,style:o,styleSpec:i}):n[e]?kn({key:e,value:t[e],valueSpec:n[e],style:o,styleSpec:i}):[new _t(e,t[e],`unknown property "${e}"`)])}return r}const Tn={"*":()=>[],array:Qi,boolean:function(e){const t=e.value,o=e.key,i=Xi(t);return"boolean"!==i?[new _t(o,t,`boolean expected, ${i} found`)]:[]},number:en,color:function(e){const t=e.key,o=e.value,i=Xi(o);return"string"!==i?[new _t(t,o,`color expected, ${i} found`)]:null===Ht.parseCSSColor(o)?[new _t(t,o,`color expected, "${o}" found`)]:[]},constants:gt,enum:rn,filter:fn,function:tn,layer:yn,object:Ji,source:Wn,light:wn,terrain:Ln,fog:Rn,string:vn,formatted:function(e){return 0===vn(e).length?[]:on(e)},resolvedImage:function(e){return 0===vn(e).length?[]:on(e)},projection:function(e){const t=e.value,o=e.styleSpec,i=o.projection,n=e.style;let r=[];const a=Xi(t);if("object"===a)for(const e in t)r=r.concat(kn({key:e,value:t[e],valueSpec:i[e],style:n,styleSpec:o}));else"string"!==a&&(r=r.concat([new _t("projection",t,`object or string expected, ${a} found`)]));return r}};function kn(e){const t=e.value,o=e.valueSpec,i=e.styleSpec;return o.expression&&Ei(yt(t))?tn(e):o.expression&&Hi(vt(t))?on(e):o.type&&Tn[o.type]?Tn[o.type](e):Ji(qt({},e,{valueSpec:o.type?i[o.type]:o}))}function Bn(e){const t=e.value,o=e.key,i=vn(e);return i.length||(-1===t.indexOf("{fontstack}")&&i.push(new _t(o,t,'"glyphs" url must include a "{fontstack}" token')),-1===t.indexOf("{range}")&&i.push(new _t(o,t,'"glyphs" url must include a "{range}" token'))),i}function Sn(e,t=At){let o=[];return o=o.concat(kn({key:"",value:e,valueSpec:t.$root,styleSpec:t,style:e,objectElementValidators:{glyphs:Bn,"*":()=>[]}})),e.constants&&(o=o.concat(gt({key:"constants",value:e.constants,style:e,styleSpec:t}))),Xn(o)}function Xn(e){return[].concat(e).sort(((e,t)=>e.line-t.line))}function En(e){return function(...t){return Xn(e.apply(this,t))}}Sn.source=En(Wn),Sn.light=En(wn),Sn.terrain=En(Ln),Sn.fog=En(Rn),Sn.layer=En(yn),Sn.filter=En(fn),Sn.paintProperty=En(gn),Sn.layoutProperty=En(qn);const Dn=Sn,Cn=Dn.light,Nn=Dn.fog,Pn=Dn.paintProperty,In=Dn.layoutProperty;function Yn(e,t){let o=!1;if(t&&t.length)for(const i of t)e.fire(new Ot(new Error(i.message))),o=!0;return o}var jn=Fn;function Fn(e,t,o){var i=this.cells=[];if(e instanceof ArrayBuffer){this.arrayBuffer=e;var n=new Int32Array(this.arrayBuffer);e=n[0],this.d=(t=n[1])+2*(o=n[2]);for(var r=0;r=l[u+0]&&i>=l[u+1])?(a[d]=!0,r.push(c[d])):a[d]=!1}}},Fn.prototype._forEachCell=function(e,t,o,i,n,r,a,s){for(var p=this._convertToCellCoord(e),c=this._convertToCellCoord(t),l=this._convertToCellCoord(o),b=this._convertToCellCoord(i),d=p;d<=l;d++)for(var u=c;u<=b;u++){var M=this.d*u+d;if((!s||s(this._convertFromCellCoord(d),this._convertFromCellCoord(u),this._convertFromCellCoord(d+1),this._convertFromCellCoord(u+1)))&&n.call(this,e,t,o,i,M,r,a,s))return}},Fn.prototype._convertFromCellCoord=function(e){return(e-this.padding)/this.scale},Fn.prototype._convertToCellCoord=function(e){return Math.max(0,Math.min(this.d-1,Math.floor(e*this.scale)+this.padding))},Fn.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var e=this.cells,t=3+this.cells.length+1+1,o=0,i=0;i=0)continue;const r=e[o];n[o]=Vn[i].shallow.indexOf(o)>=0?r:Kn(r,t)}e instanceof Error&&(n.message=e.message)}if(n.$name)throw new Error("$name property is reserved for worker serialization logic.");return"Object"!==i&&(n.$name=i),n}throw new Error("can't serialize object of type "+typeof e)}function Jn(e){if(null==e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||e instanceof Boolean||e instanceof Number||e instanceof String||e instanceof Date||e instanceof RegExp||Zn(e)||$n(e)||ArrayBuffer.isView(e)||e instanceof Hn)return e;if(Array.isArray(e))return e.map(Jn);if("object"==typeof e){const t=e.$name||"Object",{klass:o}=Vn[t];if(!o)throw new Error(`can't deserialize unregistered class ${t}`);if(o.deserialize)return o.deserialize(e);const i=Object.create(o.prototype);for(const o of Object.keys(e)){if("$name"===o)continue;const n=e[o];i[o]=Vn[t].shallow.indexOf(o)>=0?n:Jn(n)}return i}throw new Error("can't deserialize object of type "+typeof e)}class Qn{constructor(){this.first=!0}update(e,t){const o=Math.floor(e);return this.first?(this.first=!1,this.lastIntegerZoom=o,this.lastIntegerZoomTime=0,this.lastZoom=e,this.lastFloorZoom=o,!0):(this.lastFloorZoom>o?(this.lastIntegerZoom=o+1,this.lastIntegerZoomTime=t):this.lastFloorZoome>=1536&&e<=1791,tr=e=>e>=1872&&e<=1919,or=e=>e>=2208&&e<=2303,ir=e=>e>=11904&&e<=12031,nr=e=>e>=12032&&e<=12255,rr=e=>e>=12272&&e<=12287,ar=e=>e>=12288&&e<=12351,sr=e=>e>=12352&&e<=12447,pr=e=>e>=12448&&e<=12543,cr=e=>e>=12544&&e<=12591,lr=e=>e>=12704&&e<=12735,br=e=>e>=12736&&e<=12783,dr=e=>e>=12784&&e<=12799,ur=e=>e>=12800&&e<=13055,Mr=e=>e>=13056&&e<=13311,zr=e=>e>=13312&&e<=19903,mr=e=>e>=19968&&e<=40959,hr=e=>e>=40960&&e<=42127,Or=e=>e>=42128&&e<=42191,fr=e=>e>=44032&&e<=55215,Ar=e=>e>=63744&&e<=64255,_r=e=>e>=64336&&e<=65023,gr=e=>e>=65040&&e<=65055,qr=e=>e>=65072&&e<=65103,yr=e=>e>=65104&&e<=65135,vr=e=>e>=65136&&e<=65279,xr=e=>e>=65280&&e<=65519;function Wr(e){for(const t of e)if(Rr(t.charCodeAt(0)))return!0;return!1}function wr(e){for(const t of e)if(!Lr(t.charCodeAt(0)))return!1;return!0}function Lr(e){return!(er(e)||tr(e)||or(e)||_r(e)||vr(e))}function Rr(e){return!(746!==e&&747!==e&&(e<4352||!(lr(e)||cr(e)||qr(e)&&!(e>=65097&&e<=65103)||Ar(e)||Mr(e)||ir(e)||br(e)||!(!ar(e)||e>=12296&&e<=12305||e>=12308&&e<=12319||12336===e)||zr(e)||mr(e)||ur(e)||(e=>e>=12592&&e<=12687)(e)||(e=>e>=43360&&e<=43391)(e)||(e=>e>=55216&&e<=55295)(e)||(e=>e>=4352&&e<=4607)(e)||fr(e)||sr(e)||rr(e)||(e=>e>=12688&&e<=12703)(e)||nr(e)||dr(e)||pr(e)&&12540!==e||!(!xr(e)||65288===e||65289===e||65293===e||e>=65306&&e<=65310||65339===e||65341===e||65343===e||e>=65371&&e<=65503||65507===e||e>=65512&&e<=65519)||!(!yr(e)||e>=65112&&e<=65118||e>=65123&&e<=65126)||(e=>e>=5120&&e<=5759)(e)||(e=>e>=6320&&e<=6399)(e)||gr(e)||(e=>e>=19904&&e<=19967)(e)||hr(e)||Or(e))))}function Tr(e){return!(Rr(e)||function(e){return!!((e=>e>=128&&e<=255)(e)&&(167===e||169===e||174===e||177===e||188===e||189===e||190===e||215===e||247===e)||(e=>e>=8192&&e<=8303)(e)&&(8214===e||8224===e||8225===e||8240===e||8241===e||8251===e||8252===e||8258===e||8263===e||8264===e||8265===e||8273===e)||(e=>e>=8448&&e<=8527)(e)||(e=>e>=8528&&e<=8591)(e)||(e=>e>=8960&&e<=9215)(e)&&(e>=8960&&e<=8967||e>=8972&&e<=8991||e>=8996&&e<=9e3||9003===e||e>=9085&&e<=9114||e>=9150&&e<=9165||9167===e||e>=9169&&e<=9179||e>=9186&&e<=9215)||(e=>e>=9216&&e<=9279)(e)&&9251!==e||(e=>e>=9280&&e<=9311)(e)||(e=>e>=9312&&e<=9471)(e)||(e=>e>=9632&&e<=9727)(e)||(e=>e>=9728&&e<=9983)(e)&&!(e>=9754&&e<=9759)||(e=>e>=11008&&e<=11263)(e)&&(e>=11026&&e<=11055||e>=11088&&e<=11097||e>=11192&&e<=11243)||ar(e)||pr(e)||(e=>e>=57344&&e<=63743)(e)||qr(e)||yr(e)||xr(e)||8734===e||8756===e||8757===e||e>=9984&&e<=10087||e>=10102&&e<=10131||65532===e||65533===e)}(e))}function kr(e){return e>=1424&&e<=2303||_r(e)||vr(e)}function Br(e,t){return!(!t&&kr(e)||e>=2304&&e<=3583||e>=3840&&e<=4255||(e=>e>=6016&&e<=6143)(e))}function Sr(e){for(const t of e)if(kr(t.charCodeAt(0)))return!0;return!1}const Xr="deferred",Er="loading",Dr="loaded";let Cr=null,Nr="unavailable",Pr=null;const Ir=function(e){e&&"string"==typeof e&&e.indexOf("NetworkError")>-1&&(Nr="error"),Cr&&Cr(e)};function Yr(){jr.fire(new ht("pluginStateChange",{pluginStatus:Nr,pluginURL:Pr}))}const jr=new ft,Fr=function(){return Nr},Hr=function(){if(Nr!==Xr||!Pr)throw new Error("rtl-text-plugin cannot be downloaded unless a pluginURL is specified");Nr=Er,Yr(),Pr&&st({url:Pr},(e=>{e?Ir(e):(Nr=Dr,Yr())}))},Ur={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:()=>Nr===Dr||null!=Ur.applyArabicShaping,isLoading:()=>Nr===Er,setState(e){Nr=e.pluginStatus,Pr=e.pluginURL},isParsed:()=>null!=Ur.applyArabicShaping&&null!=Ur.processBidirectionalText&&null!=Ur.processStyledBidirectionalText,getPluginURL:()=>Pr};class Vr{constructor(e,t){this.zoom=e,t?(this.now=t.now,this.fadeDuration=t.fadeDuration,this.zoomHistory=t.zoomHistory,this.transition=t.transition,this.pitch=t.pitch):(this.now=0,this.fadeDuration=0,this.zoomHistory=new Qn,this.transition={},this.pitch=0)}isSupportedScript(e){return function(e,t){for(const o of e)if(!Br(o.charCodeAt(0),t))return!1;return!0}(e,Ur.isLoaded())}crossFadingFactor(){return 0===this.fadeDuration?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)}getCrossfadeParameters(){const e=this.zoom,t=e-Math.floor(e),o=this.crossFadingFactor();return e>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:t+(1-t)*o}:{fromScale:.5,toScale:1,t:1-(1-o)*t}}}class Gr{constructor(e,t){this.property=e,this.value=t,this.expression=function(e,t){if(Ei(e))return new $i(e,t);if(Hi(e)){const o=Zi(e,t);if("error"===o.result)throw new Error(o.value.map((e=>`${e.key}: ${e.message}`)).join(", "));return o.value}{let o=e;return"string"==typeof e&&"color"===t.type&&(o=Ut.parse(e)),{kind:"constant",evaluate:()=>o}}}(void 0===t?e.specification.default:t,e.specification)}isDataDriven(){return"source"===this.expression.kind||"composite"===this.expression.kind}possiblyEvaluate(e,t,o){return this.property.possiblyEvaluate(this,e,t,o)}}class Zr{constructor(e){this.property=e,this.value=new Gr(e,void 0)}transitioned(e,t){return new Kr(this.property,this.value,t,te({},e.transition,this.transition),e.now)}untransitioned(){return new Kr(this.property,this.value,null,{},0)}}class $r{constructor(e){this._properties=e,this._values=Object.create(e.defaultTransitionablePropertyValues)}getValue(e){return be(this._values[e].value.value)}setValue(e,t){this._values.hasOwnProperty(e)||(this._values[e]=new Zr(this._values[e].property)),this._values[e].value=new Gr(this._values[e].property,null===t?void 0:be(t))}getTransition(e){return be(this._values[e].transition)}setTransition(e,t){this._values.hasOwnProperty(e)||(this._values[e]=new Zr(this._values[e].property)),this._values[e].transition=be(t)||void 0}serialize(){const e={};for(const t of Object.keys(this._values)){const o=this.getValue(t);void 0!==o&&(e[t]=o);const i=this.getTransition(t);void 0!==i&&(e[`${t}-transition`]=i)}return e}transitioned(e,t){const o=new Jr(this._properties);for(const i of Object.keys(this._values))o._values[i]=this._values[i].transitioned(e,t._values[i]);return o}untransitioned(){const e=new Jr(this._properties);for(const t of Object.keys(this._values))e._values[t]=this._values[t].untransitioned();return e}}class Kr{constructor(e,t,o,i,n){const r=i.delay||0,a=i.duration||0;n=n||0,this.property=e,this.value=t,this.begin=n+r,this.end=this.begin+a,e.specification.transition&&(i.delay||i.duration)&&(this.prior=o)}possiblyEvaluate(e,t,o){const i=e.now||0,n=this.value.possiblyEvaluate(e,t,o),r=this.prior;if(r){if(i>this.end)return this.prior=null,n;if(this.value.isDataDriven())return this.prior=null,n;if(ii.zoomHistory.lastIntegerZoom?{from:e,to:t,other:o}:{from:o,to:t,other:e}}interpolate(e){return e}}class ra{constructor(e){this.specification=e}possiblyEvaluate(e,t,o,i){if(void 0!==e.value){if("constant"===e.expression.kind){const n=e.expression.evaluate(t,null,{},o,i);return this._calculate(n,n,n,t)}return this._calculate(e.expression.evaluate(new Vr(Math.floor(t.zoom-1),t)),e.expression.evaluate(new Vr(Math.floor(t.zoom),t)),e.expression.evaluate(new Vr(Math.floor(t.zoom+1),t)),t)}}_calculate(e,t,o,i){return i.zoom>i.zoomHistory.lastIntegerZoom?{from:e,to:t}:{from:o,to:t}}interpolate(e){return e}}class aa{constructor(e){this.specification=e}possiblyEvaluate(e,t,o,i){return!!e.expression.evaluate(t,null,{},o,i)}interpolate(){return!1}}class sa{constructor(e){this.properties=e,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];for(const t in e){const o=e[t];o.specification.overridable&&this.overridableProperties.push(t);const i=this.defaultPropertyValues[t]=new Gr(o,void 0),n=this.defaultTransitionablePropertyValues[t]=new Zr(o);this.defaultTransitioningPropertyValues[t]=n.untransitioned(),this.defaultPossiblyEvaluatedValues[t]=i.possiblyEvaluate({})}}}function pa(e,t){return 256*(e=$(Math.floor(e),0,255))+$(Math.floor(t),0,255)}Gn("DataDrivenProperty",ia),Gn("DataConstantProperty",oa),Gn("CrossFadedDataDrivenProperty",na),Gn("CrossFadedProperty",ra),Gn("ColorRampProperty",aa);const ca={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array};class la{constructor(e,t){this._structArray=e,this._pos1=t*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8}}class ba{constructor(){this.isTransferred=!1,this.capacity=-1,this.resize(0)}static serialize(e,t){return e._trim(),t&&(e.isTransferred=!0,t.push(e.arrayBuffer)),{length:e.length,arrayBuffer:e.arrayBuffer}}static deserialize(e){const t=Object.create(this.prototype);return t.arrayBuffer=e.arrayBuffer,t.length=e.length,t.capacity=e.arrayBuffer.byteLength/t.bytesPerElement,t._refreshViews(),t}_trim(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())}clear(){this.length=0}resize(e){this.reserve(e),this.length=e}reserve(e){if(e>this.capacity){this.capacity=Math.max(e,Math.floor(5*this.capacity),128),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);const t=this.uint8;this._refreshViews(),t&&this.uint8.set(t)}}_refreshViews(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")}}function da(e,t=1){let o=0,i=0;return{members:e.map((e=>{const n=ca[e.type].BYTES_PER_ELEMENT,r=o=ua(o,Math.max(t,n)),a=e.components||1;return i=Math.max(i,n),o+=n*a,{name:e.name,type:e.type,components:a,offset:r}})),size:ua(o,Math.max(i,t)),alignment:t}}function ua(e,t){return Math.ceil(e/t)*t}class Ma extends ba{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(e,t){const o=this.length;return this.resize(o+1),this.emplace(o,e,t)}emplace(e,t,o){const i=2*e;return this.int16[i+0]=t,this.int16[i+1]=o,e}}Ma.prototype.bytesPerElement=4,Gn("StructArrayLayout2i4",Ma);class za extends ba{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(e,t,o,i){const n=this.length;return this.resize(n+1),this.emplace(n,e,t,o,i)}emplace(e,t,o,i,n){const r=4*e;return this.int16[r+0]=t,this.int16[r+1]=o,this.int16[r+2]=i,this.int16[r+3]=n,e}}za.prototype.bytesPerElement=8,Gn("StructArrayLayout4i8",za);class ma extends ba{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(e,t,o,i,n,r,a){const s=this.length;return this.resize(s+1),this.emplace(s,e,t,o,i,n,r,a)}emplace(e,t,o,i,n,r,a,s){const p=6*e,c=12*e,l=3*e;return this.int16[p+0]=t,this.int16[p+1]=o,this.uint8[c+4]=i,this.uint8[c+5]=n,this.uint8[c+6]=r,this.uint8[c+7]=a,this.float32[l+2]=s,e}}ma.prototype.bytesPerElement=12,Gn("StructArrayLayout2i4ub1f12",ma);class ha extends ba{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(e,t,o){const i=this.length;return this.resize(i+1),this.emplace(i,e,t,o)}emplace(e,t,o,i){const n=3*e;return this.float32[n+0]=t,this.float32[n+1]=o,this.float32[n+2]=i,e}}ha.prototype.bytesPerElement=12,Gn("StructArrayLayout3f12",ha);class Oa extends ba{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(e,t,o,i,n,r,a,s,p,c){const l=this.length;return this.resize(l+1),this.emplace(l,e,t,o,i,n,r,a,s,p,c)}emplace(e,t,o,i,n,r,a,s,p,c,l){const b=10*e;return this.uint16[b+0]=t,this.uint16[b+1]=o,this.uint16[b+2]=i,this.uint16[b+3]=n,this.uint16[b+4]=r,this.uint16[b+5]=a,this.uint16[b+6]=s,this.uint16[b+7]=p,this.uint16[b+8]=c,this.uint16[b+9]=l,e}}Oa.prototype.bytesPerElement=20,Gn("StructArrayLayout10ui20",Oa);class fa extends ba{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(e,t,o,i,n,r,a,s){const p=this.length;return this.resize(p+1),this.emplace(p,e,t,o,i,n,r,a,s)}emplace(e,t,o,i,n,r,a,s,p){const c=8*e;return this.uint16[c+0]=t,this.uint16[c+1]=o,this.uint16[c+2]=i,this.uint16[c+3]=n,this.uint16[c+4]=r,this.uint16[c+5]=a,this.uint16[c+6]=s,this.uint16[c+7]=p,e}}fa.prototype.bytesPerElement=16,Gn("StructArrayLayout8ui16",fa);class Aa extends ba{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(e,t,o,i,n,r,a,s,p,c,l,b,d,u,M,z){const m=this.length;return this.resize(m+1),this.emplace(m,e,t,o,i,n,r,a,s,p,c,l,b,d,u,M,z)}emplace(e,t,o,i,n,r,a,s,p,c,l,b,d,u,M,z,m){const h=16*e;return this.int16[h+0]=t,this.int16[h+1]=o,this.int16[h+2]=i,this.int16[h+3]=n,this.uint16[h+4]=r,this.uint16[h+5]=a,this.uint16[h+6]=s,this.uint16[h+7]=p,this.int16[h+8]=c,this.int16[h+9]=l,this.int16[h+10]=b,this.int16[h+11]=d,this.int16[h+12]=u,this.int16[h+13]=M,this.int16[h+14]=z,this.int16[h+15]=m,e}}Aa.prototype.bytesPerElement=32,Gn("StructArrayLayout4i4ui4i4i32",Aa);class _a extends ba{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)}emplaceBack(e){const t=this.length;return this.resize(t+1),this.emplace(t,e)}emplace(e,t){return this.uint32[1*e+0]=t,e}}_a.prototype.bytesPerElement=4,Gn("StructArrayLayout1ul4",_a);class ga extends ba{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(e,t,o,i,n,r,a,s,p,c,l,b,d){const u=this.length;return this.resize(u+1),this.emplace(u,e,t,o,i,n,r,a,s,p,c,l,b,d)}emplace(e,t,o,i,n,r,a,s,p,c,l,b,d,u){const M=20*e,z=10*e;return this.int16[M+0]=t,this.int16[M+1]=o,this.int16[M+2]=i,this.int16[M+3]=n,this.int16[M+4]=r,this.float32[z+3]=a,this.float32[z+4]=s,this.float32[z+5]=p,this.float32[z+6]=c,this.int16[M+14]=l,this.uint32[z+8]=b,this.uint16[M+18]=d,this.uint16[M+19]=u,e}}ga.prototype.bytesPerElement=40,Gn("StructArrayLayout5i4f1i1ul2ui40",ga);class qa extends ba{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(e,t,o,i,n,r,a){const s=this.length;return this.resize(s+1),this.emplace(s,e,t,o,i,n,r,a)}emplace(e,t,o,i,n,r,a,s){const p=8*e;return this.int16[p+0]=t,this.int16[p+1]=o,this.int16[p+2]=i,this.int16[p+4]=n,this.int16[p+5]=r,this.int16[p+6]=a,this.int16[p+7]=s,e}}qa.prototype.bytesPerElement=16,Gn("StructArrayLayout3i2i2i16",qa);class ya extends ba{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(e,t,o,i,n){const r=this.length;return this.resize(r+1),this.emplace(r,e,t,o,i,n)}emplace(e,t,o,i,n,r){const a=4*e,s=8*e;return this.float32[a+0]=t,this.float32[a+1]=o,this.float32[a+2]=i,this.int16[s+6]=n,this.int16[s+7]=r,e}}ya.prototype.bytesPerElement=16,Gn("StructArrayLayout2f1f2i16",ya);class va extends ba{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(e,t,o,i){const n=this.length;return this.resize(n+1),this.emplace(n,e,t,o,i)}emplace(e,t,o,i,n){const r=12*e,a=3*e;return this.uint8[r+0]=t,this.uint8[r+1]=o,this.float32[a+1]=i,this.float32[a+2]=n,e}}va.prototype.bytesPerElement=12,Gn("StructArrayLayout2ub2f12",va);class xa extends ba{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(e,t,o){const i=this.length;return this.resize(i+1),this.emplace(i,e,t,o)}emplace(e,t,o,i){const n=3*e;return this.uint16[n+0]=t,this.uint16[n+1]=o,this.uint16[n+2]=i,e}}xa.prototype.bytesPerElement=6,Gn("StructArrayLayout3ui6",xa);class Wa extends ba{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)}emplaceBack(e,t,o,i,n,r,a,s,p,c,l,b,d,u,M,z,m,h,O,f,A){const _=this.length;return this.resize(_+1),this.emplace(_,e,t,o,i,n,r,a,s,p,c,l,b,d,u,M,z,m,h,O,f,A)}emplace(e,t,o,i,n,r,a,s,p,c,l,b,d,u,M,z,m,h,O,f,A,_){const g=30*e,q=15*e,y=60*e;return this.int16[g+0]=t,this.int16[g+1]=o,this.int16[g+2]=i,this.float32[q+2]=n,this.float32[q+3]=r,this.uint16[g+8]=a,this.uint16[g+9]=s,this.uint32[q+5]=p,this.uint32[q+6]=c,this.uint32[q+7]=l,this.uint16[g+16]=b,this.uint16[g+17]=d,this.uint16[g+18]=u,this.float32[q+10]=M,this.float32[q+11]=z,this.uint8[y+48]=m,this.uint8[y+49]=h,this.uint8[y+50]=O,this.uint32[q+13]=f,this.int16[g+28]=A,this.uint8[y+58]=_,e}}Wa.prototype.bytesPerElement=60,Gn("StructArrayLayout3i2f2ui3ul3ui2f3ub1ul1i1ub60",Wa);class wa extends ba{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)}emplaceBack(e,t,o,i,n,r,a,s,p,c,l,b,d,u,M,z,m,h,O,f,A,_,g,q,y,v,x,W,w,L){const R=this.length;return this.resize(R+1),this.emplace(R,e,t,o,i,n,r,a,s,p,c,l,b,d,u,M,z,m,h,O,f,A,_,g,q,y,v,x,W,w,L)}emplace(e,t,o,i,n,r,a,s,p,c,l,b,d,u,M,z,m,h,O,f,A,_,g,q,y,v,x,W,w,L,R){const T=38*e,k=19*e;return this.int16[T+0]=t,this.int16[T+1]=o,this.int16[T+2]=i,this.float32[k+2]=n,this.float32[k+3]=r,this.int16[T+8]=a,this.int16[T+9]=s,this.int16[T+10]=p,this.int16[T+11]=c,this.int16[T+12]=l,this.int16[T+13]=b,this.uint16[T+14]=d,this.uint16[T+15]=u,this.uint16[T+16]=M,this.uint16[T+17]=z,this.uint16[T+18]=m,this.uint16[T+19]=h,this.uint16[T+20]=O,this.uint16[T+21]=f,this.uint16[T+22]=A,this.uint16[T+23]=_,this.uint16[T+24]=g,this.uint16[T+25]=q,this.uint16[T+26]=y,this.uint16[T+27]=v,this.uint16[T+28]=x,this.uint32[k+15]=W,this.float32[k+16]=w,this.float32[k+17]=L,this.float32[k+18]=R,e}}wa.prototype.bytesPerElement=76,Gn("StructArrayLayout3i2f6i15ui1ul3f76",wa);class La extends ba{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(e){const t=this.length;return this.resize(t+1),this.emplace(t,e)}emplace(e,t){return this.float32[1*e+0]=t,e}}La.prototype.bytesPerElement=4,Gn("StructArrayLayout1f4",La);class Ra extends ba{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(e,t,o){const i=this.length;return this.resize(i+1),this.emplace(i,e,t,o)}emplace(e,t,o,i){const n=3*e;return this.int16[n+0]=t,this.int16[n+1]=o,this.int16[n+2]=i,e}}Ra.prototype.bytesPerElement=6,Gn("StructArrayLayout3i6",Ra);class Ta extends ba{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(e,t,o,i,n,r,a){const s=this.length;return this.resize(s+1),this.emplace(s,e,t,o,i,n,r,a)}emplace(e,t,o,i,n,r,a,s){const p=7*e;return this.float32[p+0]=t,this.float32[p+1]=o,this.float32[p+2]=i,this.float32[p+3]=n,this.float32[p+4]=r,this.float32[p+5]=a,this.float32[p+6]=s,e}}Ta.prototype.bytesPerElement=28,Gn("StructArrayLayout7f28",Ta);class ka extends ba{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(e,t,o,i){const n=this.length;return this.resize(n+1),this.emplace(n,e,t,o,i)}emplace(e,t,o,i,n){const r=6*e;return this.uint32[3*e+0]=t,this.uint16[r+2]=o,this.uint16[r+3]=i,this.uint16[r+4]=n,e}}ka.prototype.bytesPerElement=12,Gn("StructArrayLayout1ul3ui12",ka);class Ba extends ba{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(e,t){const o=this.length;return this.resize(o+1),this.emplace(o,e,t)}emplace(e,t,o){const i=2*e;return this.uint16[i+0]=t,this.uint16[i+1]=o,e}}Ba.prototype.bytesPerElement=4,Gn("StructArrayLayout2ui4",Ba);class Sa extends ba{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(e){const t=this.length;return this.resize(t+1),this.emplace(t,e)}emplace(e,t){return this.uint16[1*e+0]=t,e}}Sa.prototype.bytesPerElement=2,Gn("StructArrayLayout1ui2",Sa);class Xa extends ba{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(e,t){const o=this.length;return this.resize(o+1),this.emplace(o,e,t)}emplace(e,t,o){const i=2*e;return this.float32[i+0]=t,this.float32[i+1]=o,e}}Xa.prototype.bytesPerElement=8,Gn("StructArrayLayout2f8",Xa);class Ea extends ba{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(e,t,o,i){const n=this.length;return this.resize(n+1),this.emplace(n,e,t,o,i)}emplace(e,t,o,i,n){const r=4*e;return this.float32[r+0]=t,this.float32[r+1]=o,this.float32[r+2]=i,this.float32[r+3]=n,e}}Ea.prototype.bytesPerElement=16,Gn("StructArrayLayout4f16",Ea);class Da extends la{get projectedAnchorX(){return this._structArray.int16[this._pos2+0]}get projectedAnchorY(){return this._structArray.int16[this._pos2+1]}get projectedAnchorZ(){return this._structArray.int16[this._pos2+2]}get tileAnchorX(){return this._structArray.int16[this._pos2+3]}get tileAnchorY(){return this._structArray.int16[this._pos2+4]}get x1(){return this._structArray.float32[this._pos4+3]}get y1(){return this._structArray.float32[this._pos4+4]}get x2(){return this._structArray.float32[this._pos4+5]}get y2(){return this._structArray.float32[this._pos4+6]}get padding(){return this._structArray.int16[this._pos2+14]}get featureIndex(){return this._structArray.uint32[this._pos4+8]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+18]}get bucketIndex(){return this._structArray.uint16[this._pos2+19]}}Da.prototype.size=40;class Ca extends ga{get(e){return new Da(this,e)}}Gn("CollisionBoxArray",Ca);class Na extends la{get projectedAnchorX(){return this._structArray.int16[this._pos2+0]}get projectedAnchorY(){return this._structArray.int16[this._pos2+1]}get projectedAnchorZ(){return this._structArray.int16[this._pos2+2]}get tileAnchorX(){return this._structArray.float32[this._pos4+2]}get tileAnchorY(){return this._structArray.float32[this._pos4+3]}get glyphStartIndex(){return this._structArray.uint16[this._pos2+8]}get numGlyphs(){return this._structArray.uint16[this._pos2+9]}get vertexStartIndex(){return this._structArray.uint32[this._pos4+5]}get lineStartIndex(){return this._structArray.uint32[this._pos4+6]}get lineLength(){return this._structArray.uint32[this._pos4+7]}get segment(){return this._structArray.uint16[this._pos2+16]}get lowerSize(){return this._structArray.uint16[this._pos2+17]}get upperSize(){return this._structArray.uint16[this._pos2+18]}get lineOffsetX(){return this._structArray.float32[this._pos4+10]}get lineOffsetY(){return this._structArray.float32[this._pos4+11]}get writingMode(){return this._structArray.uint8[this._pos1+48]}get placedOrientation(){return this._structArray.uint8[this._pos1+49]}set placedOrientation(e){this._structArray.uint8[this._pos1+49]=e}get hidden(){return this._structArray.uint8[this._pos1+50]}set hidden(e){this._structArray.uint8[this._pos1+50]=e}get crossTileID(){return this._structArray.uint32[this._pos4+13]}set crossTileID(e){this._structArray.uint32[this._pos4+13]=e}get associatedIconIndex(){return this._structArray.int16[this._pos2+28]}get flipState(){return this._structArray.uint8[this._pos1+58]}set flipState(e){this._structArray.uint8[this._pos1+58]=e}}Na.prototype.size=60;class Pa extends Wa{get(e){return new Na(this,e)}}Gn("PlacedSymbolArray",Pa);class Ia extends la{get projectedAnchorX(){return this._structArray.int16[this._pos2+0]}get projectedAnchorY(){return this._structArray.int16[this._pos2+1]}get projectedAnchorZ(){return this._structArray.int16[this._pos2+2]}get tileAnchorX(){return this._structArray.float32[this._pos4+2]}get tileAnchorY(){return this._structArray.float32[this._pos4+3]}get rightJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+8]}get centerJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+9]}get leftJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+10]}get verticalPlacedTextSymbolIndex(){return this._structArray.int16[this._pos2+11]}get placedIconSymbolIndex(){return this._structArray.int16[this._pos2+12]}get verticalPlacedIconSymbolIndex(){return this._structArray.int16[this._pos2+13]}get key(){return this._structArray.uint16[this._pos2+14]}get textBoxStartIndex(){return this._structArray.uint16[this._pos2+15]}get textBoxEndIndex(){return this._structArray.uint16[this._pos2+16]}get verticalTextBoxStartIndex(){return this._structArray.uint16[this._pos2+17]}get verticalTextBoxEndIndex(){return this._structArray.uint16[this._pos2+18]}get iconBoxStartIndex(){return this._structArray.uint16[this._pos2+19]}get iconBoxEndIndex(){return this._structArray.uint16[this._pos2+20]}get verticalIconBoxStartIndex(){return this._structArray.uint16[this._pos2+21]}get verticalIconBoxEndIndex(){return this._structArray.uint16[this._pos2+22]}get featureIndex(){return this._structArray.uint16[this._pos2+23]}get numHorizontalGlyphVertices(){return this._structArray.uint16[this._pos2+24]}get numVerticalGlyphVertices(){return this._structArray.uint16[this._pos2+25]}get numIconVertices(){return this._structArray.uint16[this._pos2+26]}get numVerticalIconVertices(){return this._structArray.uint16[this._pos2+27]}get useRuntimeCollisionCircles(){return this._structArray.uint16[this._pos2+28]}get crossTileID(){return this._structArray.uint32[this._pos4+15]}set crossTileID(e){this._structArray.uint32[this._pos4+15]=e}get textOffset0(){return this._structArray.float32[this._pos4+16]}get textOffset1(){return this._structArray.float32[this._pos4+17]}get collisionCircleDiameter(){return this._structArray.float32[this._pos4+18]}}Ia.prototype.size=76;class Ya extends wa{get(e){return new Ia(this,e)}}Gn("SymbolInstanceArray",Ya);class ja extends La{getoffsetX(e){return this.float32[1*e+0]}}Gn("GlyphOffsetArray",ja);class Fa extends Ra{getx(e){return this.int16[3*e+0]}gety(e){return this.int16[3*e+1]}gettileUnitDistanceFromAnchor(e){return this.int16[3*e+2]}}Gn("SymbolLineVertexArray",Fa);class Ha extends la{get featureIndex(){return this._structArray.uint32[this._pos4+0]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+2]}get bucketIndex(){return this._structArray.uint16[this._pos2+3]}get layoutVertexArrayOffset(){return this._structArray.uint16[this._pos2+4]}}Ha.prototype.size=12;class Ua extends ka{get(e){return new Ha(this,e)}}Gn("FeatureIndexArray",Ua);class Va extends la{get a_centroid_pos0(){return this._structArray.uint16[this._pos2+0]}get a_centroid_pos1(){return this._structArray.uint16[this._pos2+1]}}Va.prototype.size=4;class Ga extends Ba{get(e){return new Va(this,e)}}Gn("FillExtrusionCentroidArray",Ga);const Za=da([{name:"a_pattern_to",components:4,type:"Uint16"},{name:"a_pattern_from",components:4,type:"Uint16"},{name:"a_pixel_ratio_to",components:1,type:"Uint16"},{name:"a_pixel_ratio_from",components:1,type:"Uint16"}]),$a=da([{name:"a_dash_to",components:4,type:"Uint16"},{name:"a_dash_from",components:4,type:"Uint16"}]);var Ka=Ft((function(e){e.exports=function(e,t){var o,i,n,r,a,s,p,c;for(i=e.length-(o=3&e.length),n=t,a=3432918353,s=461845907,c=0;c>>16)*a&65535)<<16)&4294967295)<<15|p>>>17))*s+(((p>>>16)*s&65535)<<16)&4294967295)<<13|n>>>19))+((5*(n>>>16)&65535)<<16)&4294967295))+((58964+(r>>>16)&65535)<<16);switch(p=0,o){case 3:p^=(255&e.charCodeAt(c+2))<<16;case 2:p^=(255&e.charCodeAt(c+1))<<8;case 1:n^=p=(65535&(p=(p=(65535&(p^=255&e.charCodeAt(c)))*a+(((p>>>16)*a&65535)<<16)&4294967295)<<15|p>>>17))*s+(((p>>>16)*s&65535)<<16)&4294967295}return n^=e.length,n=2246822507*(65535&(n^=n>>>16))+((2246822507*(n>>>16)&65535)<<16)&4294967295,n=3266489909*(65535&(n^=n>>>13))+((3266489909*(n>>>16)&65535)<<16)&4294967295,(n^=n>>>16)>>>0}})),Ja=Ft((function(e){e.exports=function(e,t){for(var o,i=e.length,n=t^i,r=0;i>=4;)o=1540483477*(65535&(o=255&e.charCodeAt(r)|(255&e.charCodeAt(++r))<<8|(255&e.charCodeAt(++r))<<16|(255&e.charCodeAt(++r))<<24))+((1540483477*(o>>>16)&65535)<<16),n=1540483477*(65535&n)+((1540483477*(n>>>16)&65535)<<16)^(o=1540483477*(65535&(o^=o>>>24))+((1540483477*(o>>>16)&65535)<<16)),i-=4,++r;switch(i){case 3:n^=(255&e.charCodeAt(r+2))<<16;case 2:n^=(255&e.charCodeAt(r+1))<<8;case 1:n=1540483477*(65535&(n^=255&e.charCodeAt(r)))+((1540483477*(n>>>16)&65535)<<16)}return n=1540483477*(65535&(n^=n>>>13))+((1540483477*(n>>>16)&65535)<<16),(n^=n>>>15)>>>0}})),Qa=Ka,es=Ja;Qa.murmur3=Ka,Qa.murmur2=es;class ts{constructor(){this.ids=[],this.positions=[],this.indexed=!1}add(e,t,o,i){this.ids.push(os(e)),this.positions.push(t,o,i)}getPositions(e){const t=os(e);let o=0,i=this.ids.length-1;for(;o>1;this.ids[e]>=t?i=e:o=e+1}const n=[];for(;this.ids[o]===t;)n.push({index:this.positions[3*o],start:this.positions[3*o+1],end:this.positions[3*o+2]}),o++;return n}static serialize(e,t){const o=new Float64Array(e.ids),i=new Uint32Array(e.positions);return is(o,i,0,o.length-1),t&&t.push(o.buffer,i.buffer),{ids:o,positions:i}}static deserialize(e){const t=new ts;return t.ids=e.ids,t.positions=e.positions,t.indexed=!0,t}}function os(e){const t=+e;return!isNaN(t)&&Number.MIN_SAFE_INTEGER<=t&&t<=Number.MAX_SAFE_INTEGER?t:Qa(String(e))}function is(e,t,o,i){for(;o>1];let r=o-1,a=i+1;for(;;){do{r++}while(e[r]n);if(r>=a)break;ns(e,r,a),ns(t,3*r,3*a),ns(t,3*r+1,3*a+1),ns(t,3*r+2,3*a+2)}a-o`u_${e}`)),this.type=o}setUniform(e,t,o){e.set(o.constantOr(this.value))}getBinding(e,t,o){return"color"===this.type?new ps(e,t):new as(e,t)}}class Ms{constructor(e,t){this.uniformNames=t.map((e=>`u_${e}`)),this.patternFrom=null,this.patternTo=null,this.pixelRatioFrom=1,this.pixelRatioTo=1}setConstantPatternPositions(e,t){this.pixelRatioFrom=t.pixelRatio,this.pixelRatioTo=e.pixelRatio,this.patternFrom=t.tl.concat(t.br),this.patternTo=e.tl.concat(e.br)}setUniform(e,t,o,i){const n="u_pattern_to"===i||"u_dash_to"===i?this.patternTo:"u_pattern_from"===i||"u_dash_from"===i?this.patternFrom:"u_pixel_ratio_to"===i?this.pixelRatioTo:"u_pixel_ratio_from"===i?this.pixelRatioFrom:null;n&&e.set(n)}getBinding(e,t,o){return"u_pattern_from"===o||"u_pattern_to"===o||"u_dash_from"===o||"u_dash_to"===o?new ss(e,t):new as(e,t)}}class zs{constructor(e,t,o,i){this.expression=e,this.type=o,this.maxValue=0,this.paintVertexAttributes=t.map((e=>({name:`a_${e}`,type:"Float32",components:"color"===o?2:1,offset:0}))),this.paintVertexArray=new i}populatePaintArray(e,t,o,i,n,r){const a=this.paintVertexArray.length,s=this.expression.evaluate(new Vr(0),t,{},n,i,r);this.paintVertexArray.resize(e),this._setPaintValue(a,e,s)}updatePaintArray(e,t,o,i,n){const r=this.expression.evaluate({zoom:0},o,i,void 0,n);this._setPaintValue(e,t,r)}_setPaintValue(e,t,o){if("color"===this.type){const i=ds(o);for(let o=e;o`u_${e}_t`)),this.type=o,this.useIntegerZoom=i,this.zoom=n,this.maxValue=0,this.paintVertexAttributes=t.map((e=>({name:`a_${e}`,type:"Float32",components:"color"===o?4:2,offset:0}))),this.paintVertexArray=new r}populatePaintArray(e,t,o,i,n,r){const a=this.expression.evaluate(new Vr(this.zoom),t,{},n,i,r),s=this.expression.evaluate(new Vr(this.zoom+1),t,{},n,i,r),p=this.paintVertexArray.length;this.paintVertexArray.resize(e),this._setPaintValue(p,e,a,s)}updatePaintArray(e,t,o,i,n){const r=this.expression.evaluate({zoom:this.zoom},o,i,void 0,n),a=this.expression.evaluate({zoom:this.zoom+1},o,i,void 0,n);this._setPaintValue(e,t,r,a)}_setPaintValue(e,t,o,i){if("color"===this.type){const n=ds(o),r=ds(i);for(let o=e;o!0)){this.binders={},this._buffers=[];const i=[];for(const n in e.paint._values){if(!o(n))continue;const r=e.paint.get(n);if(!(r instanceof ea&&ki(r.property.specification)))continue;const a=_s(n,e.type),s=r.value,p=r.property.specification.type,c=r.property.useIntegerZoom,l=r.property.specification["property-type"],b="cross-faded"===l||"cross-faded-data-driven"===l,d="line-dasharray"===String(n)&&"constant"!==e.layout.get("line-cap").value.kind;if("constant"!==s.kind||d)if("source"===s.kind||d||b){const o=ys(n,p,"source");this.binders[n]=b?new hs(s,a,p,c,t,o,e.id):new zs(s,a,p,o),i.push(`/a_${n}`)}else{const e=ys(n,p,"composite");this.binders[n]=new ms(s,a,p,c,t,e),i.push(`/z_${n}`)}else this.binders[n]=b?new Ms(s.value,a):new us(s.value,a,p),i.push(`/u_${n}`)}this.cacheKey=i.sort().join("")}getMaxValue(e){const t=this.binders[e];return t instanceof zs||t instanceof ms?t.maxValue:0}populatePaintArrays(e,t,o,i,n,r){for(const a in this.binders){const s=this.binders[a];(s instanceof zs||s instanceof ms||s instanceof hs)&&s.populatePaintArray(e,t,o,i,n,r)}}setConstantPatternPositions(e,t){for(const o in this.binders){const i=this.binders[o];i instanceof Ms&&i.setConstantPatternPositions(e,t)}}updatePaintArrays(e,t,o,i,n,r){let a=!1;for(const s in e){const p=t.getPositions(s);for(const t of p){const p=o.feature(t.index);for(const o in this.binders){const c=this.binders[o];if((c instanceof zs||c instanceof ms||c instanceof hs)&&!0===c.expression.isStateDependent){const l=i.paint.get(o);c.expression=l.value,c.updatePaintArray(t.start,t.end,p,e[s],n,r),a=!0}}}}return a}defines(){const e=[];for(const t in this.binders){const o=this.binders[t];(o instanceof us||o instanceof Ms)&&e.push(...o.uniformNames.map((e=>`#define HAS_UNIFORM_${e}`)))}return e}getBinderAttributes(){const e=[];for(const t in this.binders){const o=this.binders[t];if(o instanceof zs||o instanceof ms||o instanceof hs)for(let t=0;t!0)){this.programConfigurations={};for(const i of e)this.programConfigurations[i.id]=new Os(i,t,o);this.needsUpload=!1,this._featureMap=new ts,this._bufferOffset=0}populatePaintArrays(e,t,o,i,n,r,a){for(const o in this.programConfigurations)this.programConfigurations[o].populatePaintArrays(e,t,i,n,r,a);void 0!==t.id&&this._featureMap.add(t.id,o,this._bufferOffset,e),this._bufferOffset=e,this.needsUpload=!0}updatePaintArrays(e,t,o,i,n){for(const r of o)this.needsUpload=this.programConfigurations[r.id].updatePaintArrays(e,this._featureMap,t,r,i,n)||this.needsUpload}get(e){return this.programConfigurations[e]}upload(e){if(this.needsUpload){for(const t in this.programConfigurations)this.programConfigurations[t].upload(e);this.needsUpload=!1}}destroy(){for(const e in this.programConfigurations)this.programConfigurations[e].destroy()}}const As={"text-opacity":["opacity"],"icon-opacity":["opacity"],"text-color":["fill_color"],"icon-color":["fill_color"],"text-halo-color":["halo_color"],"icon-halo-color":["halo_color"],"text-halo-blur":["halo_blur"],"icon-halo-blur":["halo_blur"],"text-halo-width":["halo_width"],"icon-halo-width":["halo_width"],"line-gap-width":["gapwidth"],"line-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-extrusion-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"line-dasharray":["dash_to","dash_from"]};function _s(e,t){return As[e]||[e.replace(`${t}-`,"").replace(/-/g,"_")]}const gs={"line-pattern":{source:Oa,composite:Oa},"fill-pattern":{source:Oa,composite:Oa},"fill-extrusion-pattern":{source:Oa,composite:Oa},"line-dasharray":{source:fa,composite:fa}},qs={color:{source:Xa,composite:Ea},number:{source:La,composite:Xa}};function ys(e,t,o){const i=gs[e];return i&&i[o]||qs[t][o]}Gn("ConstantBinder",us),Gn("CrossFadedConstantBinder",Ms),Gn("SourceExpressionBinder",zs),Gn("CrossFadedCompositeBinder",hs),Gn("CompositeExpressionBinder",ms),Gn("ProgramConfiguration",Os,{omit:["_buffers"]}),Gn("ProgramConfigurationSet",fs);const vs="-transition";class xs extends ft{constructor(e,t){if(super(),this.id=e.id,this.type=e.type,this._featureFilter={filter:()=>!0,needGeometry:!1,needFeature:!1},this._filterCompiled=!1,"custom"!==e.type&&(this.metadata=e.metadata,this.minzoom=e.minzoom,this.maxzoom=e.maxzoom,"background"!==e.type&&"sky"!==e.type&&(this.source=e.source,this.sourceLayer=e["source-layer"],this.filter=e.filter),t.layout&&(this._unevaluatedLayout=new Qr(t.layout)),t.paint)){this._transitionablePaint=new $r(t.paint);for(const t in e.paint)this.setPaintProperty(t,e.paint[t],{validate:!1});for(const t in e.layout)this.setLayoutProperty(t,e.layout[t],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new ta(t.paint)}}getCrossfadeParameters(){return this._crossfadeParameters}getLayoutProperty(e){return"visibility"===e?this.visibility:this._unevaluatedLayout.getValue(e)}setLayoutProperty(e,t,o={}){null!=t&&this._validate(In,`layers.${this.id}.layout.${e}`,e,t,o)||("visibility"!==e?this._unevaluatedLayout.setValue(e,t):this.visibility=t)}getPaintProperty(e){return pe(e,vs)?this._transitionablePaint.getTransition(e.slice(0,-vs.length)):this._transitionablePaint.getValue(e)}setPaintProperty(e,t,o={}){if(null!=t&&this._validate(Pn,`layers.${this.id}.paint.${e}`,e,t,o))return!1;if(pe(e,vs))return this._transitionablePaint.setTransition(e.slice(0,-vs.length),t||void 0),!1;{const o=this._transitionablePaint._values[e],i="cross-faded-data-driven"===o.property.specification["property-type"],n=o.value.isDataDriven(),r=o.value;this._transitionablePaint.setValue(e,t),this._handleSpecialPaintPropertyUpdate(e);const a=this._transitionablePaint._values[e].value;return a.isDataDriven()||n||i||this._handleOverridablePaintPropertyUpdate(e,r,a)}}_handleSpecialPaintPropertyUpdate(e){}getProgramIds(){return null}getProgramConfiguration(e){return null}_handleOverridablePaintPropertyUpdate(e,t,o){return!1}isHidden(e){return!!(this.minzoom&&e=this.maxzoom)||"none"===this.visibility}updateTransitions(e){this._transitioningPaint=this._transitionablePaint.transitioned(e,this._transitioningPaint)}hasTransition(){return this._transitioningPaint.hasTransition()}recalculate(e,t){e.getCrossfadeParameters&&(this._crossfadeParameters=e.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(e,void 0,t)),this.paint=this._transitioningPaint.possiblyEvaluate(e,void 0,t)}serialize(){const e={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(e.layout=e.layout||{},e.layout.visibility=this.visibility),le(e,((e,t)=>!(void 0===e||"layout"===t&&!Object.keys(e).length||"paint"===t&&!Object.keys(e).length)))}_validate(e,t,o,i,n={}){return(!n||!1!==n.validate)&&Yn(this,e.call(Dn,{key:t,layerType:this.type,objectKey:o,value:i,styleSpec:At,style:{glyphs:!0,sprite:!0}}))}is3D(){return!1}isSky(){return!1}isTileClipped(){return!1}hasOffscreenPass(){return!1}resize(){}isStateDependent(){for(const e in this.paint._values){const t=this.paint.get(e);if(t instanceof ea&&ki(t.property.specification)&&("source"===t.value.kind||"composite"===t.value.kind)&&t.value.isStateDependent)return!0}return!1}compileFilter(){this._filterCompiled||(this._featureFilter=sn(this.filter),this._filterCompiled=!0)}invalidateCompiledFilter(){this._filterCompiled=!1}dynamicFilter(){return this._featureFilter.dynamicFilter}dynamicFilterNeedsFeature(){return this._featureFilter.needFeature}}const Ws=da([{name:"a_pos",components:2,type:"Int16"}],4),{members:ws}=Ws;class Ls{constructor(e=[]){this.segments=e}prepareSegment(e,t,o,i){let n=this.segments[this.segments.length-1];return e>Ls.MAX_VERTEX_ARRAY_LENGTH&&ue(`Max vertices per segment is ${Ls.MAX_VERTEX_ARRAY_LENGTH}: bucket requested ${e}`),(!n||n.vertexLength+e>Ls.MAX_VERTEX_ARRAY_LENGTH||n.sortKey!==i)&&(n={vertexOffset:t.length,primitiveOffset:o.length,vertexLength:0,primitiveLength:0},void 0!==i&&(n.sortKey=i),this.segments.push(n)),n}get(){return this.segments}destroy(){for(const e of this.segments)for(const t in e.vaos)e.vaos[t].destroy()}static simpleSegment(e,t,o,i){return new Ls([{vertexOffset:e,primitiveOffset:t,vertexLength:o,primitiveLength:i,vaos:{},sortKey:0}])}}Ls.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,Gn("SegmentVector",Ls);var Rs=8192;class Ts{constructor(e,t){e&&(t?this.setSouthWest(e).setNorthEast(t):4===e.length?this.setSouthWest([e[0],e[1]]).setNorthEast([e[2],e[3]]):this.setSouthWest(e[0]).setNorthEast(e[1]))}setNorthEast(e){return this._ne=e instanceof Bs?new Bs(e.lng,e.lat):Bs.convert(e),this}setSouthWest(e){return this._sw=e instanceof Bs?new Bs(e.lng,e.lat):Bs.convert(e),this}extend(e){const t=this._sw,o=this._ne;let i,n;if(e instanceof Bs)i=e,n=e;else{if(!(e instanceof Ts))return Array.isArray(e)?4===e.length||e.every(Array.isArray)?this.extend(Ts.convert(e)):this.extend(Bs.convert(e)):this;if(i=e._sw,n=e._ne,!i||!n)return this}return t||o?(t.lng=Math.min(i.lng,t.lng),t.lat=Math.min(i.lat,t.lat),o.lng=Math.max(n.lng,o.lng),o.lat=Math.max(n.lat,o.lat)):(this._sw=new Bs(i.lng,i.lat),this._ne=new Bs(n.lng,n.lat)),this}getCenter(){return new Bs((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)}getSouthWest(){return this._sw}getNorthEast(){return this._ne}getNorthWest(){return new Bs(this.getWest(),this.getNorth())}getSouthEast(){return new Bs(this.getEast(),this.getSouth())}getWest(){return this._sw.lng}getSouth(){return this._sw.lat}getEast(){return this._ne.lng}getNorth(){return this._ne.lat}toArray(){return[this._sw.toArray(),this._ne.toArray()]}toString(){return`LngLatBounds(${this._sw.toString()}, ${this._ne.toString()})`}isEmpty(){return!(this._sw&&this._ne)}contains(e){const{lng:t,lat:o}=Bs.convert(e);let i=this._sw.lng<=t&&t<=this._ne.lng;return this._sw.lng>this._ne.lng&&(i=this._sw.lng>=t&&t>=this._ne.lng),this._sw.lat<=o&&o<=this._ne.lat&&i}static convert(e){return!e||e instanceof Ts?e:new Ts(e)}}const ks=6371008.8;class Bs{constructor(e,t){if(isNaN(e)||isNaN(t))throw new Error(`Invalid LngLat object: (${e}, ${t})`);if(this.lng=+e,this.lat=+t,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")}wrap(){return new Bs(J(this.lng,-180,180),this.lat)}toArray(){return[this.lng,this.lat]}toString(){return`LngLat(${this.lng}, ${this.lat})`}distanceTo(e){const t=Math.PI/180,o=this.lat*t,i=e.lat*t,n=Math.sin(o)*Math.sin(i)+Math.cos(o)*Math.cos(i)*Math.cos((e.lng-this.lng)*t);return ks*Math.acos(Math.min(n,1))}toBounds(e=0){const t=360*e/40075017,o=t/Math.cos(Math.PI/180*this.lat);return new Ts(new Bs(this.lng-o,this.lat-t),new Bs(this.lng+o,this.lat+t))}static convert(e){if(e instanceof Bs)return e;if(Array.isArray(e)&&(2===e.length||3===e.length))return new Bs(Number(e[0]),Number(e[1]));if(!Array.isArray(e)&&"object"==typeof e&&null!==e)return new Bs(Number("lng"in e?e.lng:e.lon),Number(e.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, an object {lon: , lat: }, or an array of [, ]")}}const Ss=2*Math.PI*ks;function Xs(e){return Ss*Math.cos(e*Math.PI/180)}function Es(e){return(180+e)/360}function Ds(e){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+e*Math.PI/360)))/360}function Cs(e,t){return e/Xs(t)}function Ns(e){return 360*e-180}function Ps(e){return 360/Math.PI*Math.atan(Math.exp((180-360*e)*Math.PI/180))-90}function Is(e,t){return e*Xs(Ps(t))}const Ys=85.051129;class js{constructor(e,t,o=0){this.x=+e,this.y=+t,this.z=+o}static fromLngLat(e,t=0){const o=Bs.convert(e);return new js(Es(o.lng),Ds(o.lat),Cs(t,o.lat))}toLngLat(){return new Bs(Ns(this.x),Ps(this.y))}toAltitude(){return Is(this.z,this.y)}meterInMercatorCoordinateUnits(){return 1/Ss*(e=Ps(this.y),1/Math.cos(e*Math.PI/180));var e}}function Fs(e,t,o,i,n,a,s,p,c){const l=(t+i)/2,b=(o+n)/2,d=new r(l,b);p(d),function(e,t,o,i,n,r){const a=o-n,s=i-r;return Math.abs((i-t)*a-(o-e)*s)/Math.hypot(a,s)}(d.x,d.y,a.x,a.y,s.x,s.y)>=c?(Fs(e,t,o,l,b,a,d,p,c),Fs(e,l,b,i,n,d,s,p,c)):e.push(s)}function Hs(e,t,o){const i=[];let n,r,a;for(const s of e){const{x:e,y:p}=s;t(s),a?Fs(i,n,r,e,p,a,s,t,o):i.push(s),n=e,r=p,a=s}return i}const Us=Math.pow(2,14)-1,Vs=-Us-1;function Gs(e,t){const o=Math.round(e.x*t),i=Math.round(e.y*t);return e.x=$(o,Vs,Us),e.y=$(i,Vs,Us),(oe.x+1||ie.y+1)&&ue("Geometry exceeds allowed extent, reduce your vector tile buffer size"),e}function Zs(e,t,o){const i=e.loadGeometry(),n=e.extent,r=Rs/n;if(t&&o&&o.projection.isReprojectedInTileSpace){const r=1<{const o=Ns((t.x+e.x/n)/r),i=Ps((t.y+e.y/n)/r),l=c.project(o,i);e.x=(l.x*a-s)*n,e.y=(l.y*a-p)*n};for(let t=0;t=n||o.y<0||o.y>=n||(l(o),e.push(o));i[t]=e}}for(const e of i)for(const t of e)Gs(t,r);return i}function $s(e,t){return{type:e.type,id:e.id,properties:e.properties,geometry:t?Zs(e):[]}}function Ks(e,t,o,i,n){e.emplaceBack(2*t+(i+1)/2,2*o+(n+1)/2)}class Js{constructor(e){this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.layerIds=this.layers.map((e=>e.id)),this.index=e.index,this.hasPattern=!1,this.layoutVertexArray=new Ma,this.indexArray=new xa,this.segments=new Ls,this.programConfigurations=new fs(e.layers,e.zoom),this.stateDependentLayerIds=this.layers.filter((e=>e.isStateDependent())).map((e=>e.id))}populate(e,t,o,i){const n=this.layers[0],r=[];let a=null;"circle"===n.type&&(a=n.layout.get("circle-sort-key"));for(const{feature:t,id:n,index:s,sourceLayerIndex:p}of e){const e=this.layers[0]._featureFilter.needGeometry,c=$s(t,e);if(!this.layers[0]._featureFilter.filter(new Vr(this.zoom),c,o))continue;const l=a?a.evaluate(c,{},o):void 0,b={id:n,properties:t.properties,type:t.type,sourceLayerIndex:p,index:s,geometry:e?c.geometry:Zs(t,o,i),patterns:{},sortKey:l};r.push(b)}a&&r.sort(((e,t)=>e.sortKey-t.sortKey));for(const i of r){const{geometry:n,index:r,sourceLayerIndex:a}=i,s=e[r].feature;this.addFeature(i,n,r,t.availableImages,o),t.featureIndex.insert(s,n,r,a,this.index)}}update(e,t,o,i){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(e,t,this.stateDependentLayers,o,i)}isEmpty(){return 0===this.layoutVertexArray.length}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(e){this.uploaded||(this.layoutVertexBuffer=e.createVertexBuffer(this.layoutVertexArray,ws),this.indexBuffer=e.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(e),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}addFeature(e,t,o,i,n){for(const o of t)for(const t of o){const o=t.x,i=t.y;if(o<0||o>=Rs||i<0||i>=Rs)continue;const n=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,e.sortKey),r=n.vertexLength;Ks(this.layoutVertexArray,o,i,-1,-1),Ks(this.layoutVertexArray,o,i,1,-1),Ks(this.layoutVertexArray,o,i,1,1),Ks(this.layoutVertexArray,o,i,-1,1),this.indexArray.emplaceBack(r,r+1,r+2),this.indexArray.emplaceBack(r,r+3,r+2),n.vertexLength+=4,n.primitiveLength+=2}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,e,o,{},i,n)}}function Qs(e,t){for(let o=0;o1){if(ip(e,t))return!0;for(let i=0;i1?o:o.sub(t)._mult(n)._add(t))}function sp(e,t){let o,i,n,r=!1;for(let a=0;at.y!=n.y>t.y&&t.x<(n.x-i.x)*(t.y-i.y)/(n.y-i.y)+i.x&&(r=!r)}return r}function pp(e,t){let o=!1;for(let i=0,n=e.length-1;it.y!=a.y>t.y&&t.x<(a.x-r.x)*(t.y-r.y)/(a.y-r.y)+r.x&&(o=!o)}return o}function cp(e,t,o,i,n){for(const r of e)if(t<=r.x&&o<=r.y&&i>=r.x&&n>=r.y)return!0;const a=[new r(t,o),new r(t,n),new r(i,n),new r(i,o)];if(e.length>2)for(const t of a)if(pp(e,t))return!0;for(let t=0;tn.x&&t.x>n.x||e.yn.y&&t.y>n.y)return!1;const r=Me(e,t,o[0]);return r!==Me(e,t,o[1])||r!==Me(e,t,o[2])||r!==Me(e,t,o[3])}function bp(e,t,o){const i=t.paint.get(e).value;return"constant"===i.kind?i.value:o.programConfigurations.get(t.id).getMaxValue(e)}function dp(e){return Math.sqrt(e[0]*e[0]+e[1]*e[1])}function up(e,t,o,i,n){if(!t[0]&&!t[1])return e;const a=r.convert(t)._mult(n);"viewport"===o&&a._rotate(-i);const s=[];for(let t=0;t{const r=D([],o,e),a=1/r[3]/t*n;return function(e,t,o){return e[0]=t[0]*o[0],e[1]=t[1]*o[1],e[2]=t[2]*o[2],e[3]=t[3]*o[3],e}(r,r,[a,a,i?1/r[3]:a,a])})),a=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]].map((e=>{const t=w([],R([],S([],r[e[0]],r[e[1]]),S([],r[e[2]],r[e[1]]))),o=-L(t,r[e[1]]);return t.concat(o)}));return new hp(r,a)}}class Op{constructor(e,t){this.min=e,this.max=t,this.center=x([],g([],this.min,this.max),.5)}quadrant(e){const t=[e%2==0,e<2],o=f(this.min),i=f(this.max);for(let e=0;e=0;if(0===r)return 0;r!==t.length&&(o=!1)}if(o)return 2;for(let t=0;t<3;t++){let o=Number.MAX_VALUE,i=-Number.MAX_VALUE;for(let n=0;nthis.max[t]-this.min[t])return 0}return 1}}function fp(e,t,o,i,n,r,a,s,p){if(r&&e.queryGeometry.isAboveHorizon)return!1;r&&(p*=e.pixelToTileUnitsFactor);for(const c of t)for(const t of c){const c=t.add(s),l=n&&o.elevation?o.elevation.exaggeration()*n.getElevationAt(c.x,c.y,!0):0,b=r?c:Ap(c,l,i),d=r?e.tilespaceRays.map((e=>qp(e,l))):e.queryGeometry.screenGeometry,u=D([],[t.x,t.y,l,1],i);if(!a&&r?p*=u[3]/o.cameraToCenterDistance:a&&!r&&(p*=o.cameraToCenterDistance/u[3]),ep(d,b,p))return!0}return!1}function Ap(e,t,o){const i=D([],[e.x,e.y,t,1],o);return new r(i[0]/i[3],i[1]/i[3])}const _p=_(0,0,0),gp=_(0,0,1);function qp(e,t){const o=O();return _p[2]=t,e.intersectsPlane(_p,gp,o),new r(o[0],o[1])}class yp extends Js{}function vp(e,{width:t,height:o},i,n){if(n){if(n instanceof Uint8ClampedArray)n=new Uint8Array(n.buffer);else if(n.length!==t*o*i)throw new RangeError("mismatched image size")}else n=new Uint8Array(t*o*i);return e.width=t,e.height=o,e.data=n,e}function xp(e,{width:t,height:o},i){if(t===e.width&&o===e.height)return;const n=vp({},{width:t,height:o},i);Wp(e,n,{x:0,y:0},{x:0,y:0},{width:Math.min(e.width,t),height:Math.min(e.height,o)},i),e.width=t,e.height=o,e.data=n.data}function Wp(e,t,o,i,n,r){if(0===n.width||0===n.height)return t;if(n.width>e.width||n.height>e.height||o.x>e.width-n.width||o.y>e.height-n.height)throw new RangeError("out of range source coordinates for image copy");if(n.width>t.width||n.height>t.height||i.x>t.width-n.width||i.y>t.height-n.height)throw new RangeError("out of range destination coordinates for image copy");const a=e.data,s=t.data;for(let p=0;p{t[e.evaluationKey]=r;const a=e.expression.evaluate(t);n.data[o+i+0]=Math.floor(255*a.r/a.a),n.data[o+i+1]=Math.floor(255*a.g/a.a),n.data[o+i+2]=Math.floor(255*a.b/a.a),n.data[o+i+3]=Math.floor(255*a.a)};if(e.clips)for(let t=0,n=0;t80*o){i=r=e[0],n=a=e[1];for(var M=o;Mr&&(r=s),p>a&&(a=p);c=0!==(c=Math.max(r-i,a-n))?1/c:0}return Pp(d,u,o,i,n,c),u}function Cp(e,t,o,i,n){var r,a;if(n===pc(e,t,o,i)>0)for(r=t;r=t;r-=i)a=rc(r,e[r],e[r+1],a);return a&&Qp(a,a.next)&&(ac(a),a=a.next),a}function Np(e,t){if(!e)return e;t||(t=e);var o,i=e;do{if(o=!1,i.steiner||!Qp(i,i.next)&&0!==Jp(i.prev,i,i.next))i=i.next;else{if(ac(i),(i=t=i.prev)===i.next)break;o=!0}}while(o||i!==t);return t}function Pp(e,t,o,i,n,r,a){if(e){!a&&r&&function(e,t,o,i){var n=e;do{null===n.z&&(n.z=Gp(n.x,n.y,t,o,i)),n.prevZ=n.prev,n.nextZ=n.next,n=n.next}while(n!==e);n.prevZ.nextZ=null,n.prevZ=null,function(e){var t,o,i,n,r,a,s,p,c=1;do{for(o=e,e=null,r=null,a=0;o;){for(a++,i=o,s=0,t=0;t0||p>0&&i;)0!==s&&(0===p||!i||o.z<=i.z)?(n=o,o=o.nextZ,s--):(n=i,i=i.nextZ,p--),r?r.nextZ=n:e=n,n.prevZ=r,r=n;o=i}r.nextZ=null,c*=2}while(a>1)}(n)}(e,i,n,r);for(var s,p,c=e;e.prev!==e.next;)if(s=e.prev,p=e.next,r?Yp(e,i,n,r):Ip(e))t.push(s.i/o),t.push(e.i/o),t.push(p.i/o),ac(e),e=p.next,c=p.next;else if((e=p)===c){a?1===a?Pp(e=jp(Np(e),t,o),t,o,i,n,r,2):2===a&&Fp(e,t,o,i,n,r):Pp(Np(e),t,o,i,n,r,1);break}}}function Ip(e){var t=e.prev,o=e,i=e.next;if(Jp(t,o,i)>=0)return!1;for(var n=e.next.next;n!==e.prev;){if($p(t.x,t.y,o.x,o.y,i.x,i.y,n.x,n.y)&&Jp(n.prev,n,n.next)>=0)return!1;n=n.next}return!0}function Yp(e,t,o,i){var n=e.prev,r=e,a=e.next;if(Jp(n,r,a)>=0)return!1;for(var s=n.x>r.x?n.x>a.x?n.x:a.x:r.x>a.x?r.x:a.x,p=n.y>r.y?n.y>a.y?n.y:a.y:r.y>a.y?r.y:a.y,c=Gp(n.x=c&&d&&d.z<=l;){if(b!==e.prev&&b!==e.next&&$p(n.x,n.y,r.x,r.y,a.x,a.y,b.x,b.y)&&Jp(b.prev,b,b.next)>=0)return!1;if(b=b.prevZ,d!==e.prev&&d!==e.next&&$p(n.x,n.y,r.x,r.y,a.x,a.y,d.x,d.y)&&Jp(d.prev,d,d.next)>=0)return!1;d=d.nextZ}for(;b&&b.z>=c;){if(b!==e.prev&&b!==e.next&&$p(n.x,n.y,r.x,r.y,a.x,a.y,b.x,b.y)&&Jp(b.prev,b,b.next)>=0)return!1;b=b.prevZ}for(;d&&d.z<=l;){if(d!==e.prev&&d!==e.next&&$p(n.x,n.y,r.x,r.y,a.x,a.y,d.x,d.y)&&Jp(d.prev,d,d.next)>=0)return!1;d=d.nextZ}return!0}function jp(e,t,o){var i=e;do{var n=i.prev,r=i.next.next;!Qp(n,r)&&ec(n,i,i.next,r)&&ic(n,r)&&ic(r,n)&&(t.push(n.i/o),t.push(i.i/o),t.push(r.i/o),ac(i),ac(i.next),i=e=r),i=i.next}while(i!==e);return Np(i)}function Fp(e,t,o,i,n,r){var a=e;do{for(var s=a.next.next;s!==a.prev;){if(a.i!==s.i&&Kp(a,s)){var p=nc(a,s);return a=Np(a,a.next),p=Np(p,p.next),Pp(a,t,o,i,n,r),void Pp(p,t,o,i,n,r)}s=s.next}a=a.next}while(a!==e)}function Hp(e,t){return e.x-t.x}function Up(e,t){var o=function(e,t){var o,i=t,n=e.x,r=e.y,a=-1/0;do{if(r<=i.y&&r>=i.next.y&&i.next.y!==i.y){var s=i.x+(r-i.y)*(i.next.x-i.x)/(i.next.y-i.y);if(s<=n&&s>a){if(a=s,s===n){if(r===i.y)return i;if(r===i.next.y)return i.next}o=i.x=i.x&&i.x>=l&&n!==i.x&&$p(ro.x||i.x===o.x&&Vp(o,i)))&&(o=i,d=p)),i=i.next}while(i!==c);return o}(e,t);if(!o)return t;var i=nc(o,e),n=Np(o,o.next);return Np(i,i.next),t===o?n:t}function Vp(e,t){return Jp(e.prev,e,t.prev)<0&&Jp(t.next,e,e.next)<0}function Gp(e,t,o,i,n){return(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767*(e-o)*n)|e<<8))|e<<4))|e<<2))|e<<1))|(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=32767*(t-i)*n)|t<<8))|t<<4))|t<<2))|t<<1))<<1}function Zp(e){var t=e,o=e;do{(t.x=0&&(e-a)*(i-s)-(o-a)*(t-s)>=0&&(o-a)*(r-s)-(n-a)*(i-s)>=0}function Kp(e,t){return e.next.i!==t.i&&e.prev.i!==t.i&&!function(e,t){var o=e;do{if(o.i!==e.i&&o.next.i!==e.i&&o.i!==t.i&&o.next.i!==t.i&&ec(o,o.next,e,t))return!0;o=o.next}while(o!==e);return!1}(e,t)&&(ic(e,t)&&ic(t,e)&&function(e,t){var o=e,i=!1,n=(e.x+t.x)/2,r=(e.y+t.y)/2;do{o.y>r!=o.next.y>r&&o.next.y!==o.y&&n<(o.next.x-o.x)*(r-o.y)/(o.next.y-o.y)+o.x&&(i=!i),o=o.next}while(o!==e);return i}(e,t)&&(Jp(e.prev,e,t.prev)||Jp(e,t.prev,t))||Qp(e,t)&&Jp(e.prev,e,e.next)>0&&Jp(t.prev,t,t.next)>0)}function Jp(e,t,o){return(t.y-e.y)*(o.x-t.x)-(t.x-e.x)*(o.y-t.y)}function Qp(e,t){return e.x===t.x&&e.y===t.y}function ec(e,t,o,i){var n=oc(Jp(e,t,o)),r=oc(Jp(e,t,i)),a=oc(Jp(o,i,e)),s=oc(Jp(o,i,t));return n!==r&&a!==s||!(0!==n||!tc(e,o,t))||!(0!==r||!tc(e,i,t))||!(0!==a||!tc(o,e,i))||!(0!==s||!tc(o,t,i))}function tc(e,t,o){return t.x<=Math.max(e.x,o.x)&&t.x>=Math.min(e.x,o.x)&&t.y<=Math.max(e.y,o.y)&&t.y>=Math.min(e.y,o.y)}function oc(e){return e>0?1:e<0?-1:0}function ic(e,t){return Jp(e.prev,e,e.next)<0?Jp(e,t,e.next)>=0&&Jp(e,e.prev,t)>=0:Jp(e,t,e.prev)<0||Jp(e,e.next,t)<0}function nc(e,t){var o=new sc(e.i,e.x,e.y),i=new sc(t.i,t.x,t.y),n=e.next,r=t.prev;return e.next=t,t.prev=e,o.next=n,n.prev=o,i.next=o,o.prev=i,r.next=i,i.prev=r,i}function rc(e,t,o,i){var n=new sc(e,t,o);return i?(n.next=i.next,n.prev=i,i.next.prev=n,i.next=n):(n.prev=n,n.next=n),n}function ac(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function sc(e,t,o){this.i=e,this.x=t,this.y=o,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function pc(e,t,o,i){for(var n=0,r=t,a=o-i;ro;){if(i-o>600){var r=i-o+1,a=t-o+1,s=Math.log(r),p=.5*Math.exp(2*s/3),c=.5*Math.sqrt(s*p*(r-p)/r)*(a-r/2<0?-1:1);lc(e,t,Math.max(o,Math.floor(t-a*p/r+c)),Math.min(i,Math.floor(t+(r-a)*p/r+c)),n)}var l=e[t],b=o,d=i;for(bc(e,o,t),n(e[i],l)>0&&bc(e,o,i);b0;)d--}0===n(e[o],l)?bc(e,o,d):bc(e,++d,i),d<=t&&(o=d+1),t<=d&&(i=d-1)}}function bc(e,t,o){var i=e[t];e[t]=e[o],e[o]=i}function dc(e,t){return et?1:0}function uc(e,t){const o=e.length;if(o<=1)return[e];const i=[];let n,r;for(let t=0;t1)for(let e=0;e0&&o.holes.push(i+=e[n-1].length)}return o},Xp.default=Ep;class hc{constructor(e){this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.layerIds=this.layers.map((e=>e.id)),this.index=e.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new Ma,this.indexArray=new xa,this.indexArray2=new Ba,this.programConfigurations=new fs(e.layers,e.zoom),this.segments=new Ls,this.segments2=new Ls,this.stateDependentLayerIds=this.layers.filter((e=>e.isStateDependent())).map((e=>e.id))}populate(e,t,o,i){this.hasPattern=zc("fill",this.layers,t);const n=this.layers[0].layout.get("fill-sort-key"),r=[];for(const{feature:a,id:s,index:p,sourceLayerIndex:c}of e){const e=this.layers[0]._featureFilter.needGeometry,l=$s(a,e);if(!this.layers[0]._featureFilter.filter(new Vr(this.zoom),l,o))continue;const b=n?n.evaluate(l,{},o,t.availableImages):void 0,d={id:s,properties:a.properties,type:a.type,sourceLayerIndex:c,index:p,geometry:e?l.geometry:Zs(a,o,i),patterns:{},sortKey:b};r.push(d)}n&&r.sort(((e,t)=>e.sortKey-t.sortKey));for(const i of r){const{geometry:n,index:r,sourceLayerIndex:a}=i;if(this.hasPattern){const e=mc("fill",this.layers,i,this.zoom,t);this.patternFeatures.push(e)}else this.addFeature(i,n,r,o,{},t.availableImages);t.featureIndex.insert(e[r].feature,n,r,a,this.index)}}update(e,t,o,i){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(e,t,this.stateDependentLayers,o,i)}addFeatures(e,t,o,i){for(const e of this.patternFeatures)this.addFeature(e,e.geometry,e.index,t,o,i)}isEmpty(){return 0===this.layoutVertexArray.length}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(e){this.uploaded||(this.layoutVertexBuffer=e.createVertexBuffer(this.layoutVertexArray,Sp),this.indexBuffer=e.createIndexBuffer(this.indexArray),this.indexBuffer2=e.createIndexBuffer(this.indexArray2)),this.programConfigurations.upload(e),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())}addFeature(e,t,o,i,n,r=[]){for(const e of uc(t,500)){let t=0;for(const o of e)t+=o.length;const o=this.segments.prepareSegment(t,this.layoutVertexArray,this.indexArray),i=o.vertexLength,n=[],r=[];for(const t of e){if(0===t.length)continue;t!==e[0]&&r.push(n.length/2);const o=this.segments2.prepareSegment(t.length,this.layoutVertexArray,this.indexArray2),i=o.vertexLength;this.layoutVertexArray.emplaceBack(t[0].x,t[0].y),this.indexArray2.emplaceBack(i+t.length-1,i),n.push(t[0].x),n.push(t[0].y);for(let e=1;e>3}if(n--,1===i||2===i)a+=e.readSVarint(),s+=e.readSVarint(),1===i&&(t&&p.push(t),t=[]),t.push(new r(a,s));else{if(7!==i)throw new Error("unknown command "+i);t&&t.push(t[0].clone())}}return t&&p.push(t),p},yc.prototype.bbox=function(){var e=this._pbf;e.pos=this._geometry;for(var t=e.readVarint()+e.pos,o=1,i=0,n=0,r=0,a=1/0,s=-1/0,p=1/0,c=-1/0;e.pos>3}if(i--,1===o||2===o)(n+=e.readSVarint())s&&(s=n),(r+=e.readSVarint())c&&(c=r);else if(7!==o)throw new Error("unknown command "+o)}return[a,p,s,c]},yc.prototype.toGeoJSON=function(e,t,o){var i,n,r=this.extent*Math.pow(2,o),a=this.extent*e,s=this.extent*t,p=this.loadGeometry(),c=yc.types[this.type];function l(e){for(var t=0;t>3;t=1===i?e.readString():2===i?e.readFloat():3===i?e.readDouble():4===i?e.readVarint64():5===i?e.readVarint():6===i?e.readSVarint():7===i?e.readBoolean():null}return t}(o))}function Rc(e,t,o){if(3===e){var i=new Wc(o,o.readVarint()+o.pos);i.length&&(t[i.name]=i)}}wc.prototype.feature=function(e){if(e<0||e>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[e];var t=this._pbf.readVarint()+this._pbf.pos;return new qc(this._pbf,t,this.extent,this._keys,this._values)};var Tc={VectorTile:function(e,t){this.layers=e.readFields(Rc,{},t)},VectorTileFeature:qc,VectorTileLayer:Wc};const kc=Tc.VectorTileFeature.types,Bc=Math.pow(2,13);function Sc(e,t,o,i,n,r,a,s){e.emplaceBack((t<<1)+a,(o<<1)+r,(Math.floor(i*Bc)<<1)+n,Math.round(s))}class Xc{constructor(){this.acc=new r(0,0),this.polyCount=[]}startRing(e){this.currentPolyCount={edges:0,top:0},this.polyCount.push(this.currentPolyCount),this.min||(this.min=new r(e.x,e.y),this.max=new r(e.x,e.y))}append(e,t){this.currentPolyCount.edges++,this.acc._add(e);let o=!!this.borders;const i=this.min,n=this.max;e.xn.x&&(n.x=e.x,o=!0),e.yn.y&&(n.y=e.y,o=!0),((0===e.x||e.x===Rs)&&e.x===t.x)!=((0===e.y||e.y===Rs)&&e.y===t.y)&&this.processBorderOverlap(e,t),o&&this.checkBorderIntersection(e,t)}checkBorderIntersection(e,t){t.x<0!=e.x<0&&this.addBorderIntersection(0,No(t.y,e.y,(0-t.x)/(e.x-t.x))),t.x>Rs!=e.x>Rs&&this.addBorderIntersection(1,No(t.y,e.y,(Rs-t.x)/(e.x-t.x))),t.y<0!=e.y<0&&this.addBorderIntersection(2,No(t.x,e.x,(0-t.y)/(e.y-t.y))),t.y>Rs!=e.y>Rs&&this.addBorderIntersection(3,No(t.x,e.x,(Rs-t.y)/(e.y-t.y)))}addBorderIntersection(e,t){this.borders||(this.borders=[[Number.MAX_VALUE,-Number.MAX_VALUE],[Number.MAX_VALUE,-Number.MAX_VALUE],[Number.MAX_VALUE,-Number.MAX_VALUE],[Number.MAX_VALUE,-Number.MAX_VALUE]]);const o=this.borders[e];to[1]&&(o[1]=t)}processBorderOverlap(e,t){if(e.x===t.x){if(e.y===t.y)return;const o=0===e.x?0:1;this.addBorderIntersection(o,t.y),this.addBorderIntersection(o,e.y)}else{const o=0===e.y?2:3;this.addBorderIntersection(o,t.x),this.addBorderIntersection(o,e.x)}}centroid(){const e=this.polyCount.reduce(((e,t)=>e+t.edges),0);return 0!==e?this.acc.div(e)._round():new r(0,0)}span(){return new r(this.max.x-this.min.x,this.max.y-this.min.y)}intersectsCount(){return this.borders.reduce(((e,t)=>e+ +(t[0]!==Number.MAX_VALUE)),0)}}class Ec{constructor(e){this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.layerIds=this.layers.map((e=>e.id)),this.index=e.index,this.hasPattern=!1,this.layoutVertexArray=new za,this.centroidVertexArray=new Ga,this.indexArray=new xa,this.programConfigurations=new fs(e.layers,e.zoom),this.segments=new Ls,this.stateDependentLayerIds=this.layers.filter((e=>e.isStateDependent())).map((e=>e.id)),this.enableTerrain=e.enableTerrain}populate(e,t,o,i){this.features=[],this.hasPattern=zc("fill-extrusion",this.layers,t),this.featuresOnBorder=[],this.borders=[[],[],[],[]],this.borderDone=[!1,!1,!1,!1],this.tileToMeter=function(e){const t=Math.exp(Math.PI*(1-e.y/(1<e.x<=0))||s.every((e=>e.x>=Rs))||s.every((e=>e.y<=0))||s.every((e=>e.y>=Rs)))continue;for(let e=0;e=1){const o=n[e-1];if(!Dc(t,o)){a&&a.append(t,o),i.vertexLength+4>Ls.MAX_VERTEX_ARRAY_LENGTH&&(i=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));const e=t.sub(o)._perp(),n=e.x/(Math.abs(e.x)+Math.abs(e.y)),s=e.y>0?1:0,p=o.dist(t);r+p>32768&&(r=0),Sc(this.layoutVertexArray,t.x,t.y,n,s,0,0,r),Sc(this.layoutVertexArray,t.x,t.y,n,s,0,1,r),r+=p,Sc(this.layoutVertexArray,o.x,o.y,n,s,0,0,r),Sc(this.layoutVertexArray,o.x,o.y,n,s,0,1,r);const c=i.vertexLength;this.indexArray.emplaceBack(c,c+2,c+1),this.indexArray.emplaceBack(c+1,c+2,c+3),i.vertexLength+=4,i.primitiveLength+=2}}}}if(i.vertexLength+t>Ls.MAX_VERTEX_ARRAY_LENGTH&&(i=this.segments.prepareSegment(t,this.layoutVertexArray,this.indexArray)),"Polygon"!==kc[e.type])continue;const n=[],r=[],p=i.vertexLength;for(let e=0;e0){if(a.borders){a.vertexArrayOffset=this.centroidVertexArray.length;const e=a.borders,t=this.featuresOnBorder.push(a)-1;for(let o=0;o<4;o++)e[o][0]!==Number.MAX_VALUE&&this.borders[o].push(t)}this.encodeCentroid(a.borders?void 0:a.centroid(),a)}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,e,o,n,r,i)}sortBorders(){for(let e=0;e<4;e++)this.borders[e].sort(((t,o)=>this.featuresOnBorder[t].borders[e][0]-this.featuresOnBorder[o].borders[e][0]))}encodeCentroid(e,t,o=!0){let i,n;if(e)if(0!==e.y){const o=t.span()._mult(this.tileToMeter);i=(Math.max(e.x,1)<<3)+Math.min(7,Math.round(o.x/10)),n=(Math.max(e.y,1)<<3)+Math.min(7,Math.round(o.y/10))}else i=Math.ceil(7*(e.x+450)),n=0;else i=0,n=+o;let r=o?this.centroidVertexArray.length:t.vertexArrayOffset;for(const e of t.polyCount){o&&this.centroidVertexArray.resize(this.centroidVertexArray.length+4*e.edges+e.top);for(let t=0;t<2*e.edges;t++)this.centroidVertexArray.emplace(r++,0,n),this.centroidVertexArray.emplace(r++,i,n);for(let t=0;tRs)||e.y===t.y&&(e.y<0||e.y>Rs)}Gn("FillExtrusionBucket",Ec,{omit:["layers","features"]}),Gn("PartMetadata",Xc);var Cc={paint:new sa({"fill-extrusion-opacity":new oa(At["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new ia(At["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new oa(At["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new oa(At["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new na(At["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new ia(At["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new ia(At["paint_fill-extrusion"]["fill-extrusion-base"]),"fill-extrusion-vertical-gradient":new oa(At["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"])})};function Nc(e,t){return e.x*t.x+e.y*t.y}function Pc(e,t){if(1===e.length){let o=0;const i=t[o++];let n;for(;!n||i.equals(n);)if(n=t[o++],!n)return 1/0;for(;oe.id)),this.index=e.index,this.hasPattern=!1,this.patternFeatures=[],this.lineClipsArray=[],this.gradients={},this.layers.forEach((e=>{this.gradients[e.id]={}})),this.layoutVertexArray=new ma,this.layoutVertexArray2=new ha,this.indexArray=new xa,this.programConfigurations=new fs(e.layers,e.zoom),this.segments=new Ls,this.maxLineLength=0,this.stateDependentLayerIds=this.layers.filter((e=>e.isStateDependent())).map((e=>e.id))}populate(e,t,o,i){this.hasPattern=zc("line",this.layers,t);const n=this.layers[0].layout.get("line-sort-key"),r=[];for(const{feature:t,id:a,index:s,sourceLayerIndex:p}of e){const e=this.layers[0]._featureFilter.needGeometry,c=$s(t,e);if(!this.layers[0]._featureFilter.filter(new Vr(this.zoom),c,o))continue;const l=n?n.evaluate(c,{},o):void 0,b={id:a,properties:t.properties,type:t.type,sourceLayerIndex:p,index:s,geometry:e?c.geometry:Zs(t,o,i),patterns:{},sortKey:l};r.push(b)}n&&r.sort(((e,t)=>e.sortKey-t.sortKey));const{lineAtlas:a,featureIndex:s}=t,p=this.addConstantDashes(a);for(const i of r){const{geometry:n,index:r,sourceLayerIndex:c}=i;if(p&&this.addFeatureDashes(i,a),this.hasPattern){const e=mc("line",this.layers,i,this.zoom,t);this.patternFeatures.push(e)}else this.addFeature(i,n,r,o,a.positions,t.availableImages);s.insert(e[r].feature,n,r,c,this.index)}}addConstantDashes(e){let t=!1;for(const o of this.layers){const i=o.paint.get("line-dasharray").value,n=o.layout.get("line-cap").value;if("constant"!==i.kind||"constant"!==n.kind)t=!0;else{const t=n.value,o=i.value;if(!o)continue;e.addDash(o.from,t),e.addDash(o.to,t),o.other&&e.addDash(o.other,t)}}return t}addFeatureDashes(e,t){const o=this.zoom;for(const i of this.layers){const n=i.paint.get("line-dasharray").value,r=i.layout.get("line-cap").value;if("constant"===n.kind&&"constant"===r.kind)continue;let a,s,p,c,l,b;if("constant"===n.kind){const e=n.value;if(!e)continue;a=e.other||e.to,s=e.to,p=e.from}else a=n.evaluate({zoom:o-1},e),s=n.evaluate({zoom:o},e),p=n.evaluate({zoom:o+1},e);"constant"===r.kind?c=l=b=r.value:(c=r.evaluate({zoom:o-1},e),l=r.evaluate({zoom:o},e),b=r.evaluate({zoom:o+1},e)),t.addDash(a,c),t.addDash(s,l),t.addDash(p,b);const d=t.getKey(a,c),u=t.getKey(s,l),M=t.getKey(p,b);e.patterns[i.id]={min:d,mid:u,max:M}}}update(e,t,o,i){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(e,t,this.stateDependentLayers,o,i)}addFeatures(e,t,o,i){for(const e of this.patternFeatures)this.addFeature(e,e.geometry,e.index,t,o,i)}isEmpty(){return 0===this.layoutVertexArray.length}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(e){this.uploaded||(0!==this.layoutVertexArray2.length&&(this.layoutVertexBuffer2=e.createVertexBuffer(this.layoutVertexArray2,Uc)),this.layoutVertexBuffer=e.createVertexBuffer(this.layoutVertexArray,Fc),this.indexBuffer=e.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(e),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}lineFeatureClips(e){if(e.properties&&e.properties.hasOwnProperty("mapbox_clip_start")&&e.properties.hasOwnProperty("mapbox_clip_end"))return{start:+e.properties.mapbox_clip_start,end:+e.properties.mapbox_clip_end}}addFeature(e,t,o,i,n,r){const a=this.layers[0].layout,s=a.get("line-join").evaluate(e,{}),p=a.get("line-cap").evaluate(e,{}),c=a.get("line-miter-limit"),l=a.get("line-round-limit");this.lineClips=this.lineFeatureClips(e);for(const o of t)this.addLine(o,e,s,p,c,l);this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,e,o,n,r,i)}addLine(e,t,o,i,n,r){if(this.distance=0,this.scaledDistance=0,this.totalDistance=0,this.lineSoFar=0,this.lineClips){this.lineClipsArray.push(this.lineClips);for(let t=0;t=2&&e[s-1].equals(e[s-2]);)s--;let p=0;for(;p0;if(_&&t>p){const e=b.dist(d);if(e>2*c){const t=b.sub(b.sub(d)._mult(c/e)._round());this.updateDistance(d,t),this.addCurrentVertex(t,M,0,0,l),d=t}}const q=d&&u;let y=q?o:a?"butt":i;if(q&&"round"===y&&(fn&&(y="bevel"),"bevel"===y&&(f>2&&(y="flipbevel"),f100)m=z.mult(-1);else{const e=f*M.add(z).mag()/M.sub(z).mag();m._perp()._mult(e*(g?-1:1))}this.addCurrentVertex(b,m,0,0,l),this.addCurrentVertex(b,m.mult(-1),0,0,l)}else if("bevel"===y||"fakeround"===y){const e=-Math.sqrt(f*f-1),t=g?e:0,o=g?0:e;if(d&&this.addCurrentVertex(b,M,t,o,l),"fakeround"===y){const e=Math.round(180*A/Math.PI/20);for(let t=1;t2*c){const t=b.add(u.sub(b)._mult(c/e)._round());this.updateDistance(b,t),this.addCurrentVertex(t,z,0,0,l),b=t}}}}addCurrentVertex(e,t,o,i,n,r=!1){const a=t.y*i-t.x,s=-t.y-t.x*i;this.addHalfVertex(e,t.x+t.y*o,t.y-t.x*o,r,!1,o,n),this.addHalfVertex(e,a,s,r,!0,-i,n)}addHalfVertex({x:e,y:t},o,i,n,r,a,s){this.layoutVertexArray.emplaceBack((e<<1)+(n?1:0),(t<<1)+(r?1:0),Math.round(63*o)+128,Math.round(63*i)+128,1+(0===a?0:a<0?-1:1),0,this.lineSoFar),this.lineClips&&this.layoutVertexArray2.emplaceBack(this.scaledDistance,this.lineClipsArray.length,this.lineSoFar);const p=s.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,p),s.primitiveLength++),r?this.e2=p:this.e1=p}updateScaledDistance(){if(this.lineClips){const e=this.totalDistance/(this.lineClips.end-this.lineClips.start);this.scaledDistance=this.distance/this.totalDistance,this.lineSoFar=e*this.lineClips.start+this.distance}else this.lineSoFar=this.distance}updateDistance(e,t){this.distance+=e.dist(t),this.updateScaledDistance()}}Gn("LineBucket",Zc,{omit:["layers","patternFeatures"]});const $c=new sa({"line-cap":new ia(At.layout_line["line-cap"]),"line-join":new ia(At.layout_line["line-join"]),"line-miter-limit":new oa(At.layout_line["line-miter-limit"]),"line-round-limit":new oa(At.layout_line["line-round-limit"]),"line-sort-key":new ia(At.layout_line["line-sort-key"])});var Kc={paint:new sa({"line-opacity":new ia(At.paint_line["line-opacity"]),"line-color":new ia(At.paint_line["line-color"]),"line-translate":new oa(At.paint_line["line-translate"]),"line-translate-anchor":new oa(At.paint_line["line-translate-anchor"]),"line-width":new ia(At.paint_line["line-width"]),"line-gap-width":new ia(At.paint_line["line-gap-width"]),"line-offset":new ia(At.paint_line["line-offset"]),"line-blur":new ia(At.paint_line["line-blur"]),"line-dasharray":new na(At.paint_line["line-dasharray"]),"line-pattern":new na(At.paint_line["line-pattern"]),"line-gradient":new aa(At.paint_line["line-gradient"])}),layout:$c};const Jc=new class extends ia{possiblyEvaluate(e,t){return t=new Vr(Math.floor(t.zoom),{now:t.now,fadeDuration:t.fadeDuration,zoomHistory:t.zoomHistory,transition:t.transition}),super.possiblyEvaluate(e,t)}evaluate(e,t,o,i){return t=te({},t,{zoom:Math.floor(t.zoom)}),super.evaluate(e,t,o,i)}}(Kc.paint.properties["line-width"].specification);function Qc(e,t){return t>0?t+2*e:e}Jc.useIntegerZoom=!0;const el=da([{name:"a_pos_offset",components:4,type:"Int16"},{name:"a_tex_size",components:4,type:"Uint16"},{name:"a_pixeloffset",components:4,type:"Int16"},{name:"a_z_tile_anchor",components:4,type:"Int16"}],4),tl=da([{name:"a_projected_pos",components:3,type:"Float32"}],4);da([{name:"a_fade_opacity",components:1,type:"Uint32"}],4);const ol=da([{name:"a_placed",components:2,type:"Uint8"},{name:"a_shift",components:2,type:"Float32"}]),il=da([{name:"a_size_scale",components:1,type:"Float32"},{name:"a_padding",components:2,type:"Float32"}]);da([{type:"Int16",name:"projectedAnchorX"},{type:"Int16",name:"projectedAnchorY"},{type:"Int16",name:"projectedAnchorZ"},{type:"Int16",name:"tileAnchorX"},{type:"Int16",name:"tileAnchorY"},{type:"Float32",name:"x1"},{type:"Float32",name:"y1"},{type:"Float32",name:"x2"},{type:"Float32",name:"y2"},{type:"Int16",name:"padding"},{type:"Uint32",name:"featureIndex"},{type:"Uint16",name:"sourceLayerIndex"},{type:"Uint16",name:"bucketIndex"}]);const nl=da([{name:"a_pos",components:3,type:"Int16"},{name:"a_anchor_pos",components:2,type:"Int16"},{name:"a_extrude",components:2,type:"Int16"}],4),rl=da([{name:"a_pos_2f",components:2,type:"Float32"},{name:"a_radius",components:1,type:"Float32"},{name:"a_flags",components:2,type:"Int16"}],4);da([{name:"triangle",components:3,type:"Uint16"}]),da([{type:"Int16",name:"projectedAnchorX"},{type:"Int16",name:"projectedAnchorY"},{type:"Int16",name:"projectedAnchorZ"},{type:"Float32",name:"tileAnchorX"},{type:"Float32",name:"tileAnchorY"},{type:"Uint16",name:"glyphStartIndex"},{type:"Uint16",name:"numGlyphs"},{type:"Uint32",name:"vertexStartIndex"},{type:"Uint32",name:"lineStartIndex"},{type:"Uint32",name:"lineLength"},{type:"Uint16",name:"segment"},{type:"Uint16",name:"lowerSize"},{type:"Uint16",name:"upperSize"},{type:"Float32",name:"lineOffsetX"},{type:"Float32",name:"lineOffsetY"},{type:"Uint8",name:"writingMode"},{type:"Uint8",name:"placedOrientation"},{type:"Uint8",name:"hidden"},{type:"Uint32",name:"crossTileID"},{type:"Int16",name:"associatedIconIndex"},{type:"Uint8",name:"flipState"}]),da([{type:"Int16",name:"projectedAnchorX"},{type:"Int16",name:"projectedAnchorY"},{type:"Int16",name:"projectedAnchorZ"},{type:"Float32",name:"tileAnchorX"},{type:"Float32",name:"tileAnchorY"},{type:"Int16",name:"rightJustifiedTextSymbolIndex"},{type:"Int16",name:"centerJustifiedTextSymbolIndex"},{type:"Int16",name:"leftJustifiedTextSymbolIndex"},{type:"Int16",name:"verticalPlacedTextSymbolIndex"},{type:"Int16",name:"placedIconSymbolIndex"},{type:"Int16",name:"verticalPlacedIconSymbolIndex"},{type:"Uint16",name:"key"},{type:"Uint16",name:"textBoxStartIndex"},{type:"Uint16",name:"textBoxEndIndex"},{type:"Uint16",name:"verticalTextBoxStartIndex"},{type:"Uint16",name:"verticalTextBoxEndIndex"},{type:"Uint16",name:"iconBoxStartIndex"},{type:"Uint16",name:"iconBoxEndIndex"},{type:"Uint16",name:"verticalIconBoxStartIndex"},{type:"Uint16",name:"verticalIconBoxEndIndex"},{type:"Uint16",name:"featureIndex"},{type:"Uint16",name:"numHorizontalGlyphVertices"},{type:"Uint16",name:"numVerticalGlyphVertices"},{type:"Uint16",name:"numIconVertices"},{type:"Uint16",name:"numVerticalIconVertices"},{type:"Uint16",name:"useRuntimeCollisionCircles"},{type:"Uint32",name:"crossTileID"},{type:"Float32",components:2,name:"textOffset"},{type:"Float32",name:"collisionCircleDiameter"}]),da([{type:"Float32",name:"offsetX"}]),da([{type:"Int16",name:"x"},{type:"Int16",name:"y"},{type:"Int16",name:"tileUnitDistanceFromAnchor"}]);var al=24;const sl=128;function pl(e,t){const{expression:o}=t;if("constant"===o.kind)return{kind:"constant",layoutSize:o.evaluate(new Vr(e+1))};if("source"===o.kind)return{kind:"source"};{const{zoomStops:t,interpolationType:i}=o;let n=0;for(;n{e.text=function(e,t,o){const i=t.layout.get("text-transform").evaluate(o,{});return"uppercase"===i?e=e.toLocaleUpperCase():"lowercase"===i&&(e=e.toLocaleLowerCase()),Ur.applyArabicShaping&&(e=Ur.applyArabicShaping(e)),e}(e.text,t,o)})),e}const ul={"!":"︕","#":"#",$:"$","%":"%","&":"&","(":"︵",")":"︶","*":"*","+":"+",",":"︐","-":"︲",".":"・","/":"/",":":"︓",";":"︔","<":"︿","=":"=",">":"﹀","?":"︖","@":"@","[":"﹇","\\":"\","]":"﹈","^":"^",_:"︳","`":"`","{":"︷","|":"―","}":"︸","~":"~","¢":"¢","£":"£","¥":"¥","¦":"¦","¬":"¬","¯":" ̄","–":"︲","—":"︱","‘":"﹃","’":"﹄","“":"﹁","”":"﹂","…":"︙","‧":"・","₩":"₩","、":"︑","。":"︒","〈":"︿","〉":"﹀","《":"︽","》":"︾","「":"﹁","」":"﹂","『":"﹃","』":"﹄","【":"︻","】":"︼","〔":"︹","〕":"︺","〖":"︗","〗":"︘","!":"︕","(":"︵",")":"︶",",":"︐","-":"︲",".":"・",":":"︓",";":"︔","<":"︿",">":"﹀","?":"︖","[":"﹇","]":"﹈","_":"︳","{":"︷","|":"―","}":"︸","⦅":"︵","⦆":"︶","。":"︒","「":"﹁","」":"﹂"};function Ml(e){return"︶"===e||"﹈"===e||"︸"===e||"﹄"===e||"﹂"===e||"︾"===e||"︼"===e||"︺"===e||"︘"===e||"﹀"===e||"︐"===e||"︓"===e||"︔"===e||"`"===e||" ̄"===e||"︑"===e||"︒"===e}function zl(e){return"︵"===e||"﹇"===e||"︷"===e||"﹃"===e||"﹁"===e||"︽"===e||"︻"===e||"︹"===e||"︗"===e||"︿"===e}var ml=function(e,t,o,i,n){var r,a,s=8*n-i-1,p=(1<>1,l=-7,b=o?n-1:0,d=o?-1:1,u=e[t+b];for(b+=d,r=u&(1<<-l)-1,u>>=-l,l+=s;l>0;r=256*r+e[t+b],b+=d,l-=8);for(a=r&(1<<-l)-1,r>>=-l,l+=i;l>0;a=256*a+e[t+b],b+=d,l-=8);if(0===r)r=1-c;else{if(r===p)return a?NaN:1/0*(u?-1:1);a+=Math.pow(2,i),r-=c}return(u?-1:1)*a*Math.pow(2,r-i)},hl=function(e,t,o,i,n,r){var a,s,p,c=8*r-n-1,l=(1<>1,d=23===n?Math.pow(2,-24)-Math.pow(2,-77):0,u=i?0:r-1,M=i?1:-1,z=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,a=l):(a=Math.floor(Math.log(t)/Math.LN2),t*(p=Math.pow(2,-a))<1&&(a--,p*=2),(t+=a+b>=1?d/p:d*Math.pow(2,1-b))*p>=2&&(a++,p/=2),a+b>=l?(s=0,a=l):a+b>=1?(s=(t*p-1)*Math.pow(2,n),a+=b):(s=t*Math.pow(2,b-1)*Math.pow(2,n),a=0));n>=8;e[o+u]=255&s,u+=M,s/=256,n-=8);for(a=a<0;e[o+u]=255&a,u+=M,a/=256,c-=8);e[o+u-M]|=128*z},Ol=fl;function fl(e){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(e)?e:new Uint8Array(e||0),this.pos=0,this.type=0,this.length=this.buf.length}fl.Varint=0,fl.Fixed64=1,fl.Bytes=2,fl.Fixed32=5;var Al=4294967296,_l=1/Al,gl="undefined"==typeof TextDecoder?null:new TextDecoder("utf8");function ql(e){return e.type===fl.Bytes?e.readVarint()+e.pos:e.pos+1}function yl(e,t,o){return o?4294967296*t+(e>>>0):4294967296*(t>>>0)+(e>>>0)}function vl(e,t,o){var i=t<=16383?1:t<=2097151?2:t<=268435455?3:Math.floor(Math.log(t)/(7*Math.LN2));o.realloc(i);for(var n=o.pos-1;n>=e;n--)o.buf[n+i]=o.buf[n]}function xl(e,t){for(var o=0;o>>8,e[o+2]=t>>>16,e[o+3]=t>>>24}function Dl(e,t){return(e[t]|e[t+1]<<8|e[t+2]<<16)+(e[t+3]<<24)}function Cl(e,t,o){t.glyphs=[],1===e&&o.readMessage(Nl,t)}function Nl(e,t,o){if(3===e){const{id:e,bitmap:i,width:n,height:r,left:a,top:s,advance:p}=o.readMessage(Pl,{});t.glyphs.push({id:e,bitmap:new wp({width:n+6,height:r+6},i),metrics:{width:n,height:r,left:a,top:s,advance:p}})}else 4===e?t.ascender=o.readSVarint():5===e&&(t.descender=o.readSVarint())}function Pl(e,t,o){1===e?t.id=o.readVarint():2===e?t.bitmap=o.readBytes():3===e?t.width=o.readVarint():4===e?t.height=o.readVarint():5===e?t.left=o.readSVarint():6===e?t.top=o.readSVarint():7===e&&(t.advance=o.readVarint())}function Il(e){let t=0,o=0;for(const i of e)t+=i.w*i.h,o=Math.max(o,i.w);e.sort(((e,t)=>t.h-e.h));const i=[{x:0,y:0,w:Math.max(Math.ceil(Math.sqrt(t/.95)),o),h:1/0}];let n=0,r=0;for(const t of e)for(let e=i.length-1;e>=0;e--){const o=i[e];if(!(t.w>o.w||t.h>o.h)){if(t.x=o.x,t.y=o.y,r=Math.max(r,t.y+t.h),n=Math.max(n,t.x+t.w),t.w===o.w&&t.h===o.h){const t=i.pop();e>3,r=this.pos;this.type=7&i,e(n,t,this),this.pos===r&&this.skip(i)}return t},readMessage:function(e,t){return this.readFields(e,t,this.readVarint()+this.pos)},readFixed32:function(){var e=Xl(this.buf,this.pos);return this.pos+=4,e},readSFixed32:function(){var e=Dl(this.buf,this.pos);return this.pos+=4,e},readFixed64:function(){var e=Xl(this.buf,this.pos)+Xl(this.buf,this.pos+4)*Al;return this.pos+=8,e},readSFixed64:function(){var e=Xl(this.buf,this.pos)+Dl(this.buf,this.pos+4)*Al;return this.pos+=8,e},readFloat:function(){var e=ml(this.buf,this.pos,!0,23,4);return this.pos+=4,e},readDouble:function(){var e=ml(this.buf,this.pos,!0,52,8);return this.pos+=8,e},readVarint:function(e){var t,o,i=this.buf;return t=127&(o=i[this.pos++]),o<128?t:(t|=(127&(o=i[this.pos++]))<<7,o<128?t:(t|=(127&(o=i[this.pos++]))<<14,o<128?t:(t|=(127&(o=i[this.pos++]))<<21,o<128?t:function(e,t,o){var i,n,r=o.buf;if(i=(112&(n=r[o.pos++]))>>4,n<128)return yl(e,i,t);if(i|=(127&(n=r[o.pos++]))<<3,n<128)return yl(e,i,t);if(i|=(127&(n=r[o.pos++]))<<10,n<128)return yl(e,i,t);if(i|=(127&(n=r[o.pos++]))<<17,n<128)return yl(e,i,t);if(i|=(127&(n=r[o.pos++]))<<24,n<128)return yl(e,i,t);if(i|=(1&(n=r[o.pos++]))<<31,n<128)return yl(e,i,t);throw new Error("Expected varint not more than 10 bytes")}(t|=(15&(o=i[this.pos]))<<28,e,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var e=this.readVarint();return e%2==1?(e+1)/-2:e/2},readBoolean:function(){return Boolean(this.readVarint())},readString:function(){var e=this.readVarint()+this.pos,t=this.pos;return this.pos=e,e-t>=12&&gl?function(e,t,o){return gl.decode(e.subarray(t,o))}(this.buf,t,e):function(e,t,o){for(var i="",n=t;n239?4:p>223?3:p>191?2:1;if(n+l>o)break;1===l?p<128&&(c=p):2===l?128==(192&(r=e[n+1]))&&(c=(31&p)<<6|63&r)<=127&&(c=null):3===l?(a=e[n+2],128==(192&(r=e[n+1]))&&128==(192&a)&&((c=(15&p)<<12|(63&r)<<6|63&a)<=2047||c>=55296&&c<=57343)&&(c=null)):4===l&&(a=e[n+2],s=e[n+3],128==(192&(r=e[n+1]))&&128==(192&a)&&128==(192&s)&&((c=(15&p)<<18|(63&r)<<12|(63&a)<<6|63&s)<=65535||c>=1114112)&&(c=null)),null===c?(c=65533,l=1):c>65535&&(c-=65536,i+=String.fromCharCode(c>>>10&1023|55296),c=56320|1023&c),i+=String.fromCharCode(c),n+=l}return i}(this.buf,t,e)},readBytes:function(){var e=this.readVarint()+this.pos,t=this.buf.subarray(this.pos,e);return this.pos=e,t},readPackedVarint:function(e,t){if(this.type!==fl.Bytes)return e.push(this.readVarint(t));var o=ql(this);for(e=e||[];this.pos127;);else if(t===fl.Bytes)this.pos=this.readVarint()+this.pos;else if(t===fl.Fixed32)this.pos+=4;else{if(t!==fl.Fixed64)throw new Error("Unimplemented type: "+t);this.pos+=8}},writeTag:function(e,t){this.writeVarint(e<<3|t)},realloc:function(e){for(var t=this.length||16;t268435455||e<0?function(e,t){var o,i;if(e>=0?(o=e%4294967296|0,i=e/4294967296|0):(i=~(-e/4294967296),4294967295^(o=~(-e%4294967296))?o=o+1|0:(o=0,i=i+1|0)),e>=0x10000000000000000||e<-0x10000000000000000)throw new Error("Given varint doesn't fit into 10 bytes");t.realloc(10),function(e,t,o){o.buf[o.pos++]=127&e|128,e>>>=7,o.buf[o.pos++]=127&e|128,e>>>=7,o.buf[o.pos++]=127&e|128,e>>>=7,o.buf[o.pos++]=127&e|128,o.buf[o.pos]=127&(e>>>=7)}(o,0,t),function(e,t){var o=(7&e)<<4;t.buf[t.pos++]|=o|((e>>>=3)?128:0),e&&(t.buf[t.pos++]=127&e|((e>>>=7)?128:0),e&&(t.buf[t.pos++]=127&e|((e>>>=7)?128:0),e&&(t.buf[t.pos++]=127&e|((e>>>=7)?128:0),e&&(t.buf[t.pos++]=127&e|((e>>>=7)?128:0),e&&(t.buf[t.pos++]=127&e)))))}(i,t)}(e,this):(this.realloc(4),this.buf[this.pos++]=127&e|(e>127?128:0),e<=127||(this.buf[this.pos++]=127&(e>>>=7)|(e>127?128:0),e<=127||(this.buf[this.pos++]=127&(e>>>=7)|(e>127?128:0),e<=127||(this.buf[this.pos++]=e>>>7&127))))},writeSVarint:function(e){this.writeVarint(e<0?2*-e-1:2*e)},writeBoolean:function(e){this.writeVarint(Boolean(e))},writeString:function(e){e=String(e),this.realloc(4*e.length),this.pos++;var t=this.pos;this.pos=function(e,t,o){for(var i,n,r=0;r55295&&i<57344){if(!n){i>56319||r+1===t.length?(e[o++]=239,e[o++]=191,e[o++]=189):n=i;continue}if(i<56320){e[o++]=239,e[o++]=191,e[o++]=189,n=i;continue}i=n-55296<<10|i-56320|65536,n=null}else n&&(e[o++]=239,e[o++]=191,e[o++]=189,n=null);i<128?e[o++]=i:(i<2048?e[o++]=i>>6|192:(i<65536?e[o++]=i>>12|224:(e[o++]=i>>18|240,e[o++]=i>>12&63|128),e[o++]=i>>6&63|128),e[o++]=63&i|128)}return o}(this.buf,e,this.pos);var o=this.pos-t;o>=128&&vl(t,o,this),this.pos=t-1,this.writeVarint(o),this.pos+=o},writeFloat:function(e){this.realloc(4),hl(this.buf,e,this.pos,!0,23,4),this.pos+=4},writeDouble:function(e){this.realloc(8),hl(this.buf,e,this.pos,!0,52,8),this.pos+=8},writeBytes:function(e){var t=e.length;this.writeVarint(t),this.realloc(t);for(var o=0;o=128&&vl(o,i,this),this.pos=o-1,this.writeVarint(i),this.pos+=i},writeMessage:function(e,t,o){this.writeTag(e,fl.Bytes),this.writeRawMessage(t,o)},writePackedVarint:function(e,t){t.length&&this.writeMessage(e,xl,t)},writePackedSVarint:function(e,t){t.length&&this.writeMessage(e,Wl,t)},writePackedBoolean:function(e,t){t.length&&this.writeMessage(e,Rl,t)},writePackedFloat:function(e,t){t.length&&this.writeMessage(e,wl,t)},writePackedDouble:function(e,t){t.length&&this.writeMessage(e,Ll,t)},writePackedFixed32:function(e,t){t.length&&this.writeMessage(e,Tl,t)},writePackedSFixed32:function(e,t){t.length&&this.writeMessage(e,kl,t)},writePackedFixed64:function(e,t){t.length&&this.writeMessage(e,Bl,t)},writePackedSFixed64:function(e,t){t.length&&this.writeMessage(e,Sl,t)},writeBytesField:function(e,t){this.writeTag(e,fl.Bytes),this.writeBytes(t)},writeFixed32Field:function(e,t){this.writeTag(e,fl.Fixed32),this.writeFixed32(t)},writeSFixed32Field:function(e,t){this.writeTag(e,fl.Fixed32),this.writeSFixed32(t)},writeFixed64Field:function(e,t){this.writeTag(e,fl.Fixed64),this.writeFixed64(t)},writeSFixed64Field:function(e,t){this.writeTag(e,fl.Fixed64),this.writeSFixed64(t)},writeVarintField:function(e,t){this.writeTag(e,fl.Varint),this.writeVarint(t)},writeSVarintField:function(e,t){this.writeTag(e,fl.Varint),this.writeSVarint(t)},writeStringField:function(e,t){this.writeTag(e,fl.Bytes),this.writeString(t)},writeFloatField:function(e,t){this.writeTag(e,fl.Fixed32),this.writeFloat(t)},writeDoubleField:function(e,t){this.writeTag(e,fl.Fixed64),this.writeDouble(t)},writeBooleanField:function(e,t){this.writeVarintField(e,Boolean(t))}};class Yl{constructor(e,{pixelRatio:t,version:o,stretchX:i,stretchY:n,content:r}){this.paddedRect=e,this.pixelRatio=t,this.stretchX=i,this.stretchY=n,this.content=r,this.version=o}get tl(){return[this.paddedRect.x+1,this.paddedRect.y+1]}get br(){return[this.paddedRect.x+this.paddedRect.w-1,this.paddedRect.y+this.paddedRect.h-1]}get displaySize(){return[(this.paddedRect.w-2)/this.pixelRatio,(this.paddedRect.h-2)/this.pixelRatio]}}class jl{constructor(e,t){const o={},i={};this.haveRenderCallbacks=[];const n=[];this.addImages(e,o,n),this.addImages(t,i,n);const{w:r,h:a}=Il(n),s=new Lp({width:r||1,height:a||1});for(const t in e){const i=e[t],n=o[t].paddedRect;Lp.copy(i.data,s,{x:0,y:0},{x:n.x+1,y:n.y+1},i.data)}for(const e in t){const o=t[e],n=i[e].paddedRect,r=n.x+1,a=n.y+1,p=o.data.width,c=o.data.height;Lp.copy(o.data,s,{x:0,y:0},{x:r,y:a},o.data),Lp.copy(o.data,s,{x:0,y:c-1},{x:r,y:a-1},{width:p,height:1}),Lp.copy(o.data,s,{x:0,y:0},{x:r,y:a+c},{width:p,height:1}),Lp.copy(o.data,s,{x:p-1,y:0},{x:r-1,y:a},{width:1,height:c}),Lp.copy(o.data,s,{x:0,y:0},{x:r+p,y:a},{width:1,height:c})}this.image=s,this.iconPositions=o,this.patternPositions=i}addImages(e,t,o){for(const i in e){const n=e[i],r={x:0,y:0,w:n.data.width+2,h:n.data.height+2};o.push(r),t[i]=new Yl(r,n),n.hasRenderCallback&&this.haveRenderCallbacks.push(i)}}patchUpdatedImages(e,t){e.dispatchRenderCallbacks(this.haveRenderCallbacks);for(const o in e.updatedImages)this.patchUpdatedImage(this.iconPositions[o],e.getImage(o),t),this.patchUpdatedImage(this.patternPositions[o],e.getImage(o),t)}patchUpdatedImage(e,t,o){if(!e||!t)return;if(e.version===t.version)return;e.version=t.version;const[i,n]=e.tl;o.update(t.data,void 0,{x:i,y:n})}}Gn("ImagePosition",Yl),Gn("ImageAtlas",jl);const Fl={horizontal:1,vertical:2,horizontalOnly:3};class Hl{constructor(){this.scale=1,this.fontStack="",this.imageName=null}static forText(e,t){const o=new Hl;return o.scale=e||1,o.fontStack=t,o}static forImage(e){const t=new Hl;return t.imageName=e,t}}class Ul{constructor(){this.text="",this.sectionIndex=[],this.sections=[],this.imageSectionID=null}static fromFeature(e,t){const o=new Ul;for(let i=0;i=0&&o>=e&&Gl[this.text.charCodeAt(o)];o--)t--;this.text=this.text.substring(e,t),this.sectionIndex=this.sectionIndex.slice(e,t)}substring(e,t){const o=new Ul;return o.text=this.text.substring(e,t),o.sectionIndex=this.sectionIndex.slice(e,t),o.sections=this.sections,o}toString(){return this.text}getMaxScale(){return this.sectionIndex.reduce(((e,t)=>Math.max(e,this.sections[t].scale)),0)}addTextSection(e,t){this.text+=e.text,this.sections.push(Hl.forText(e.scale,e.fontStack||t));const o=this.sections.length-1;for(let t=0;t=63743?null:++this.imageSectionID:(this.imageSectionID=57344,this.imageSectionID)}}function Vl(e,t,o,i,n,r,a,s,p,c,l,b,d,u,M,z){const m=Ul.fromFeature(e,n);let h;b===Fl.vertical&&m.verticalizePunctuation(d);const{processBidirectionalText:O,processStyledBidirectionalText:f}=Ur;if(O&&1===m.sections.length){h=[];const e=O(m.toString(),tb(m,c,r,t,i,u,M));for(const t of e){const e=new Ul;e.text=t,e.sections=m.sections;for(let o=0;o0&&r>_&&(_=r)}else{const e=o[s.fontStack];if(!e)continue;e[z]&&(y=e[z]);const i=t[s.fontStack];if(!i)continue;const r=i.glyphs[z];if(!r)continue;if(f=r.metrics,x=8203!==z?al:0,m){const e=void 0!==i.ascender?Math.abs(i.ascender):0,t=void 0!==i.descender?Math.abs(i.descender):0,o=(e+t)*h;g=0;let l=0;for(let o=0;o-o/2;){if(a--,a<0)return!1;s-=e[a].dist(r),r=e[a]}s+=e[a].dist(e[a+1]),a++;const p=[];let c=0;for(;si;)c-=p.shift().angleDelta;if(c>n)return!1;a++,s+=t.dist(o)}return!0}function pb(e){let t=0;for(let o=0;oc){const l=(c-p)/r,b=No(i.x,n.x,l),d=No(i.y,n.y,l),u=new ab(b,d,0,n.angleTo(i),o);return!a||sb(e,u,s,a,t)?u:void 0}p+=r}}function db(e,t,o,i,n,r,a,s,p){const c=cb(i,r,a),l=lb(i,n),b=l*a,d=0===e[0].x||e[0].x===p||0===e[0].y||e[0].y===p;return t-b=0&&h=0&&O=0&&d+c<=l){const o=new ab(h,O,0,z,t);o._round(),i&&!sb(e,o,r,i,n)||u.push(o)}}b+=M}return s||u.length||a||(u=ub(e,b/2,o,i,n,r,a,!0,p)),u}function Mb(e,t,o,i,n){const a=[];for(let s=0;s=i&&l.x>=i||(s.x>=i?s=new r(i,s.y+(i-s.x)/(l.x-s.x)*(l.y-s.y))._round():l.x>=i&&(l=new r(i,s.y+(i-s.x)/(l.x-s.x)*(l.y-s.y))._round()),s.y>=n&&l.y>=n||(s.y>=n?s=new r(s.x+(n-s.y)/(l.y-s.y)*(l.x-s.x),n)._round():l.y>=n&&(l=new r(s.x+(n-s.y)/(l.y-s.y)*(l.x-s.x),n)._round()),c&&s.equals(c[c.length-1])||(c=[s],a.push(c)),c.push(l)))))}}return a}Gn("Anchor",ab);const zb=1e20;function mb(e,t,o,i,n,r,a,s,p){for(let c=t;c-1);p++,r[p]=s,a[p]=c,a[p+1]=zb}for(let s=0,p=0;s{let i=this.entries[e];i||(i=this.entries[e]={glyphs:{},requests:{},ranges:{},ascender:void 0,descender:void 0});let n=i.glyphs[t];if(void 0!==n)return void o(null,{stack:e,id:t,glyph:n});if(n=this._tinySDF(i,e,t),n)return i.glyphs[t]=n,void o(null,{stack:e,id:t,glyph:n});const r=Math.floor(t/256);if(256*r>65535)return void o(new Error("glyphs > 65535 not supported"));if(i.ranges[r])return void o(null,{stack:e,id:t,glyph:n});let a=i.requests[r];a||(a=i.requests[r]=[],fb.loadGlyphRange(e,r,this.url,this.requestManager,((e,t)=>{if(t){i.ascender=t.ascender,i.descender=t.descender;for(const e in t.glyphs)this._doesCharSupportLocalGlyph(+e)||(i.glyphs[+e]=t.glyphs[+e]);i.ranges[r]=!0}for(const o of a)o(e,t);delete i.requests[r]}))),a.push(((i,n)=>{i?o(i):n&&o(null,{stack:e,id:t,glyph:n.glyphs[t]||null})}))}),((e,o)=>{if(e)t(e);else if(o){const e={};for(const{stack:t,id:i,glyph:n}of o)void 0===e[t]&&(e[t]={}),void 0===e[t].glyphs&&(e[t].glyphs={}),e[t].glyphs[i]=n&&{id:n.id,bitmap:n.bitmap.clone(),metrics:n.metrics},e[t].ascender=this.entries[t].ascender,e[t].descender=this.entries[t].descender;t(null,e)}}))}_doesCharSupportLocalGlyph(e){return this.localGlyphMode!==Ob.none&&(this.localGlyphMode===Ob.all?!!this.localFontFamily:!!this.localFontFamily&&(mr(e)||fr(e)||sr(e)||pr(e))||ar(e))}_tinySDF(e,t,o){const i=this.localFontFamily;if(!i||!this._doesCharSupportLocalGlyph(o))return;let n=e.tinySDF;if(!n){let o="400";/bold/i.test(t)?o="900":/medium/i.test(t)?o="500":/light/i.test(t)&&(o="200"),n=e.tinySDF=new fb.TinySDF({fontFamily:i,fontWeight:o,fontSize:48,buffer:6,radius:16}),n.fontWeight=o}if(this.localGlyphs[n.fontWeight][o])return this.localGlyphs[n.fontWeight][o];const r=String.fromCharCode(o),{data:a,width:s,height:p,glyphWidth:c,glyphHeight:l,glyphLeft:b,glyphTop:d,glyphAdvance:u}=n.draw(r);return this.localGlyphs[n.fontWeight][o]={id:o,bitmap:new wp({width:s,height:p},a),metrics:{width:c/2,height:l/2,left:b/2,top:d/2-27,advance:u/2,localGlyph:!0}}}}function Ab(e,t,o,i){const n=[],a=e.image,s=a.pixelRatio,p=a.paddedRect.w-2,c=a.paddedRect.h-2,l=e.right-e.left,b=e.bottom-e.top,d=a.stretchX||[[0,p]],u=a.stretchY||[[0,c]],M=(e,t)=>e+t[1]-t[0],z=d.reduce(M,0),m=u.reduce(M,0),h=p-z,O=c-m;let f=0,A=z,_=0,g=m,q=0,y=h,v=0,x=O;if(a.content&&i){const e=a.content;f=_b(d,0,e[0]),_=_b(u,0,e[1]),A=_b(d,e[0],e[2]),g=_b(u,e[1],e[3]),q=e[0]-f,v=e[1]-_,y=e[2]-e[0]-A,x=e[3]-e[1]-g}const W=(i,n,p,c)=>{const d=qb(i.stretch-f,A,l,e.left),u=yb(i.fixed-q,y,i.stretch,z),M=qb(n.stretch-_,g,b,e.top),h=yb(n.fixed-v,x,n.stretch,m),O=qb(p.stretch-f,A,l,e.left),W=yb(p.fixed-q,y,p.stretch,z),w=qb(c.stretch-_,g,b,e.top),L=yb(c.fixed-v,x,c.stretch,m),R=new r(d,M),T=new r(O,M),k=new r(O,w),B=new r(d,w),S=new r(u/s,h/s),X=new r(W/s,L/s),E=t*Math.PI/180;if(E){const e=Math.sin(E),t=Math.cos(E),o=[t,-e,e,t];R._matMult(o),T._matMult(o),B._matMult(o),k._matMult(o)}const D=i.stretch+i.fixed,C=n.stretch+n.fixed;return{tl:R,tr:T,bl:B,br:k,tex:{x:a.paddedRect.x+1+D,y:a.paddedRect.y+1+C,w:p.stretch+p.fixed-D,h:c.stretch+c.fixed-C},writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:S,pixelOffsetBR:X,minFontScaleX:y/s/l,minFontScaleY:x/s/b,isSDF:o}};if(i&&(a.stretchX||a.stretchY)){const e=gb(d,h,z),t=gb(u,O,m);for(let o=0;o{if(e)n(e);else if(t){const e={},o=function(e){return new Ol(e).readFields(Cl,{})}(t);for(const t of o.glyphs)e[t.id]=t;n(null,{glyphs:e,ascender:o.ascender,descender:o.descender})}}))},fb.TinySDF=class{constructor({fontSize:e=24,buffer:t=3,radius:o=8,cutoff:i=.25,fontFamily:n="sans-serif",fontWeight:r="normal",fontStyle:a="normal"}){this.buffer=t,this.cutoff=i,this.radius=o;const s=this.size=e+4*t,p=this._createCanvas(s),c=this.ctx=p.getContext("2d",{willReadFrequently:!0});c.font=`${a} ${r} ${e}px ${n}`,c.textBaseline="alphabetic",c.textAlign="left",c.fillStyle="black",this.gridOuter=new Float64Array(s*s),this.gridInner=new Float64Array(s*s),this.f=new Float64Array(s),this.z=new Float64Array(s+1),this.v=new Uint16Array(s)}_createCanvas(e){const t=document.createElement("canvas");return t.width=t.height=e,t}draw(e){const{width:t,actualBoundingBoxAscent:o,actualBoundingBoxDescent:i,actualBoundingBoxLeft:n,actualBoundingBoxRight:r}=this.ctx.measureText(e),a=Math.floor(o),s=Math.min(this.size-this.buffer,Math.ceil(r-n)),p=Math.min(this.size-this.buffer,Math.ceil(o)+Math.ceil(i)),c=s+2*this.buffer,l=p+2*this.buffer,b=c*l,d=new Uint8ClampedArray(b),u={data:d,width:c,height:l,glyphWidth:s,glyphHeight:p,glyphTop:a,glyphLeft:0,glyphAdvance:t};if(0===s||0===p)return u;const{ctx:M,buffer:z,gridInner:m,gridOuter:h}=this;M.clearRect(z,z,s,p),M.fillText(e,z,z+a+1);const O=M.getImageData(z,z,s,p);h.fill(zb,0,b),m.fill(0,0,b);for(let e=0;e0?e*e:0,m[i]=e<0?e*e:0}}mb(h,0,0,c,l,c,this.f,this.v,this.z),mb(m,z,z,s,p,c,this.f,this.v,this.z);for(let e=0;e0)for(let e=(this.length>>1)-1;e>=0;e--)this._down(e)}push(e){this.data.push(e),this.length++,this._up(this.length-1)}pop(){if(0===this.length)return;const e=this.data[0],t=this.data.pop();return this.length--,this.length>0&&(this.data[0]=t,this._down(0)),e}peek(){return this.data[0]}_up(e){const{data:t,compare:o}=this,i=t[e];for(;e>0;){const n=e-1>>1,r=t[n];if(o(i,r)>=0)break;t[e]=r,e=n}t[e]=i}_down(e){const{data:t,compare:o}=this,i=this.length>>1,n=t[e];for(;e=0)break;t[e]=r,e=i}t[e]=n}}function Wb(e,t){return et?1:0}function wb(e,t=1,o=!1){let i=1/0,n=1/0,a=-1/0,s=-1/0;const p=e[0];for(let e=0;ea)&&(a=t.x),(!e||t.y>s)&&(s=t.y)}const c=Math.min(a-i,s-n);let l=c/2;const b=new xb([],Lb);if(0===c)return new r(i,n);for(let t=i;td.d||!d.d)&&(d=i,o&&console.log("found best %d after %d probes",Math.round(1e4*i.d)/1e4,u)),i.max-d.d<=t||(l=i.h/2,b.push(new Rb(i.p.x-l,i.p.y-l,l,e)),b.push(new Rb(i.p.x+l,i.p.y-l,l,e)),b.push(new Rb(i.p.x-l,i.p.y+l,l,e)),b.push(new Rb(i.p.x+l,i.p.y+l,l,e)),u+=4)}return o&&(console.log(`num probes: ${u}`),console.log(`best distance: ${d.d}`)),d.p}function Lb(e,t){return t.max-e.max}function Rb(e,t,o,i){this.p=new r(e,t),this.h=o,this.d=function(e,t){let o=!1,i=1/0;for(let n=0;ne.y!=s.y>e.y&&e.x<(s.x-n.x)*(e.y-n.y)/(s.y-n.y)+n.x&&(o=!o),i=Math.min(i,ap(e,n,s))}}return(o?1:-1)*Math.sqrt(i)}(this.p,i),this.max=this.d+this.h*Math.SQRT2}const Tb=Number.POSITIVE_INFINITY,kb=Math.sqrt(2);function Bb(e,t){return t[1]!==Tb?function(e,t,o){let i=0,n=0;switch(t=Math.abs(t),o=Math.abs(o),e){case"top-right":case"top-left":case"top":n=o-7;break;case"bottom-right":case"bottom-left":case"bottom":n=7-o}switch(e){case"top-right":case"bottom-right":case"right":i=-t;break;case"top-left":case"bottom-left":case"left":i=t}return[i,n]}(e,t[0],t[1]):function(e,t){let o=0,i=0;t<0&&(t=0);const n=t/kb;switch(e){case"top-right":case"top-left":i=n-7;break;case"bottom-right":case"bottom-left":i=7-n;break;case"bottom":i=7-t;break;case"top":i=t-7}switch(e){case"top-right":case"bottom-right":o=-n;break;case"top-left":case"bottom-left":o=n;break;case"left":o=t;break;case"right":o=-t}return[o,i]}(e,t[0])}function Sb(e,t,o,i,n,r,a,s,p,c){e.createArrays(),e.tilePixelRatio=Rs/(512*e.overscaling),e.compareText={},e.iconsNeedLinear=!1;const l=e.layers[0].layout,b=e.layers[0]._unevaluatedLayout._values,d={};if("composite"===e.textSizeData.kind){const{minZoom:t,maxZoom:o}=e.textSizeData;d.compositeTextSizes=[b["text-size"].possiblyEvaluate(new Vr(t),s),b["text-size"].possiblyEvaluate(new Vr(o),s)]}if("composite"===e.iconSizeData.kind){const{minZoom:t,maxZoom:o}=e.iconSizeData;d.compositeIconSizes=[b["icon-size"].possiblyEvaluate(new Vr(t),s),b["icon-size"].possiblyEvaluate(new Vr(o),s)]}d.layoutTextSize=b["text-size"].possiblyEvaluate(new Vr(p+1),s),d.layoutIconSize=b["icon-size"].possiblyEvaluate(new Vr(p+1),s),d.textMaxSize=b["text-size"].possiblyEvaluate(new Vr(18),s);const u="map"===l.get("text-rotation-alignment")&&"point"!==l.get("symbol-placement"),M=l.get("text-size");for(const r of e.features){const p=l.get("text-font").evaluate(r,{},s).join(","),b=M.evaluate(r,{},s),z=d.layoutTextSize.evaluate(r,{},s),m=(d.layoutIconSize.evaluate(r,{},s),{horizontal:{},vertical:void 0}),h=r.text;let O,f=[0,0];if(h){const i=h.toString(),a=l.get("text-letter-spacing").evaluate(r,{},s)*al,c=l.get("text-line-height").evaluate(r,{},s)*al,d=wr(i)?a:0,M=l.get("text-anchor").evaluate(r,{},s),O=l.get("text-variable-anchor");if(!O){const e=l.get("text-radial-offset").evaluate(r,{},s);f=e?Bb(M,[e*al,Tb]):l.get("text-offset").evaluate(r,{},s).map((e=>e*al))}let A=u?"center":l.get("text-justify").evaluate(r,{},s);const _=l.get("symbol-placement"),g="point"===_,q="point"===_?l.get("text-max-width").evaluate(r,{},s)*al:0,y=r=>{e.allowVerticalPlacement&&Wr(i)&&(m.vertical=Vl(h,t,o,n,p,q,c,M,r,d,f,Fl.vertical,!0,_,z,b))};if(!u&&O){const e="auto"===A?O.map((e=>Xb(e))):[A];let i=!1;for(let r=0;r=0||!Wr(i)){const e=Vl(h,t,o,n,p,q,c,M,A,d,f,Fl.horizontal,!1,_,z,b);e&&(m.horizontal[A]=e)}y("point"===_?"left":A)}}let A=!1;if(r.icon&&r.icon.name){const t=i[r.icon.name];t&&(O=nb(n[r.icon.name],l.get("icon-offset").evaluate(r,{},s),l.get("icon-anchor").evaluate(r,{},s)),A=t.sdf,void 0===e.sdfIcons?e.sdfIcons=t.sdf:e.sdfIcons!==t.sdf&&ue("Style sheet warning: Cannot mix SDF and non-SDF icons in one buffer"),(t.pixelRatio!==e.pixelRatio||0!==l.get("icon-rotate").constantOr(1))&&(e.iconsNeedLinear=!0))}const _=Nb(m.horizontal)||m.vertical;e.iconsInText||(e.iconsInText=!!_&&_.iconsInText),(_||O)&&Eb(e,r,m,O,i,d,z,0,f,A,a,s,c)}r&&e.generateCollisionDebugBuffers(p,e.collisionBoxArray)}function Xb(e){switch(e){case"right":case"top-right":case"bottom-right":return"right";case"left":case"top-left":case"bottom-left":return"left"}return"center"}function Eb(e,t,o,i,n,r,a,s,p,c,l,b,d){let u=r.textMaxSize.evaluate(t,{},b);void 0===u&&(u=a);const M=e.layers[0].layout,z=M.get("icon-offset").evaluate(t,{},b),m=Nb(o.horizontal)||o.vertical,h=a/24,O=e.tilePixelRatio*u/24,f=e.tilePixelRatio*M.get("symbol-spacing"),A=M.get("text-padding")*e.tilePixelRatio,_=M.get("icon-padding")*e.tilePixelRatio,g=F(M.get("text-max-angle")),q="map"===M.get("text-rotation-alignment")&&"point"!==M.get("symbol-placement"),y="map"===M.get("icon-rotation-alignment")&&"point"!==M.get("symbol-placement"),v=M.get("symbol-placement"),x=f/2,W=M.get("icon-text-fit");let w;i&&"none"!==W&&(e.allowVerticalPlacement&&o.vertical&&(w=rb(i,o.vertical,W,M.get("icon-text-fit-padding"),z,h)),m&&(i=rb(i,m,W,M.get("icon-text-fit-padding"),z,h)));const L=(a,s,u)=>{if(s.x<0||s.x>=Rs||s.y<0||s.y>=Rs)return;const{x:M,y:m,z:h}=d.projectTilePoint(s.x,s.y,u),O=new ab(M,m,h,0,void 0);!function(e,t,o,i,n,r,a,s,p,c,l,b,d,u,M,z,m,h,O,f,A,_,g,q,y){const v=e.addToLineVertexArray(t,i);let x,W,w,L,R,T,k,B=0,S=0,X=0,E=0,D=-1,C=-1;const N={};let P=Qa(""),I=0,Y=0;if(void 0===p._unevaluatedLayout.getValue("text-radial-offset")?[I,Y]=p.layout.get("text-offset").evaluate(A,{},y).map((e=>e*al)):(I=p.layout.get("text-radial-offset").evaluate(A,{},y)*al,Y=Tb),e.allowVerticalPlacement&&n.vertical){const e=n.vertical;if(M)T=Ib(e),s&&(k=Ib(s));else{const i=p.layout.get("text-rotate").evaluate(A,{},y)+90;w=Pb(c,o,t,l,b,d,e,u,i,z),s&&(L=Pb(c,o,t,l,b,d,s,h,i))}}if(r){const i=p.layout.get("icon-rotate").evaluate(A,{},y),n="none"!==p.layout.get("icon-text-fit"),a=Ab(r,i,g,n),u=s?Ab(s,i,g,n):void 0;W=Pb(c,o,t,l,b,d,r,h,i),B=4*a.length;const M=e.iconSizeData;let z=null;"source"===M.kind?(z=[sl*p.layout.get("icon-size").evaluate(A,{},y)],z[0]>Db&&ue(`${e.layerIds[0]}: Value for "icon-size" is >= 255. Reduce your "icon-size".`)):"composite"===M.kind&&(z=[sl*_.compositeIconSizes[0].evaluate(A,{},y),sl*_.compositeIconSizes[1].evaluate(A,{},y)],(z[0]>Db||z[1]>Db)&&ue(`${e.layerIds[0]}: Value for "icon-size" is >= 255. Reduce your "icon-size".`)),e.addSymbols(e.icon,a,z,f,O,A,!1,o,t,v.lineStartIndex,v.lineLength,-1,q,y),D=e.icon.placedSymbolArray.length-1,u&&(S=4*u.length,e.addSymbols(e.icon,u,z,f,O,A,Fl.vertical,o,t,v.lineStartIndex,v.lineLength,-1,q,y),C=e.icon.placedSymbolArray.length-1)}for(const i in n.horizontal){const r=n.horizontal[i];x||(P=Qa(r.text),M?R=Ib(r):x=Pb(c,o,t,l,b,d,r,u,p.layout.get("text-rotate").evaluate(A,{},y),z));const s=1===r.positionedLines.length;if(X+=Cb(e,o,t,r,a,p,M,A,z,v,n.vertical?Fl.horizontal:Fl.horizontalOnly,s?Object.keys(n.horizontal):[i],N,D,_,q,y),s)break}n.vertical&&(E+=Cb(e,o,t,n.vertical,a,p,M,A,z,v,Fl.vertical,["vertical"],N,C,_,q,y));let j=-1;const F=(e,t)=>e?Math.max(e,t):t;j=F(R,j),j=F(T,j),j=F(k,j);const H=j>-1?1:0;e.glyphOffsetArray.length>=$b.MAX_GLYPHS&&ue("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),void 0!==A.sortKey&&e.addToSortKeyRanges(e.symbolInstances.length,A.sortKey),e.symbolInstances.emplaceBack(o.x,o.y,o.z,t.x,t.y,N.right>=0?N.right:-1,N.center>=0?N.center:-1,N.left>=0?N.left:-1,N.vertical>=0?N.vertical:-1,D,C,P,void 0!==x?x:e.collisionBoxArray.length,void 0!==x?x+1:e.collisionBoxArray.length,void 0!==w?w:e.collisionBoxArray.length,void 0!==w?w+1:e.collisionBoxArray.length,void 0!==W?W:e.collisionBoxArray.length,void 0!==W?W+1:e.collisionBoxArray.length,L||e.collisionBoxArray.length,L?L+1:e.collisionBoxArray.length,l,X,E,B,S,H,0,I,Y,j)}(e,s,O,a,o,i,n,w,e.layers[0],e.collisionBoxArray,t.index,t.sourceLayerIndex,e.index,A,q,p,0,_,y,z,t,r,c,l,b)};if("line"===v)for(const n of Mb(t.geometry,0,0,Rs,Rs)){const t=db(n,f,g,o.vertical||m,i,24,O,e.overscaling,Rs);for(const o of t){const t=m;t&&Yb(e,t.text,x,o)||L(n,o,b)}}else if("line-center"===v){for(const e of t.geometry)if(e.length>1){const t=bb(e,g,o.vertical||m,i,24,O);t&&L(e,t,b)}}else if("Polygon"===t.type)for(const e of uc(t.geometry,0)){const t=wb(e,16);L(e[0],new ab(t.x,t.y,0,0,void 0),b)}else if("LineString"===t.type)for(const e of t.geometry)L(e,new ab(e[0].x,e[0].y,0,0,void 0),b);else if("Point"===t.type)for(const e of t.geometry)for(const t of e)L([t],new ab(t.x,t.y,0,0,void 0),b)}const Db=32640;function Cb(e,t,o,i,n,a,s,p,c,l,b,d,u,M,z,m,h){const O=function(e,t,o,i,n,a,s,p){const c=[];if(0===t.positionedLines.length)return c;const l=i.layout.get("text-rotate").evaluate(a,{})*Math.PI/180,b=function(e){const t=e[0],o=e[1],i=t*o;return i>0?[t,-o]:i<0?[-t,o]:0===t?[o,t]:[o,-t]}(o);let d=Math.abs(t.top-t.bottom);for(const e of t.positionedLines)d-=e.lineOffset;const u=t.positionedLines.length,M=d/u;let z=t.top-o[1];for(let e=0;eDb&&ue(`${e.layerIds[0]}: Value for "text-size" is >= 255. Reduce your "text-size".`)):"composite"===f.kind&&(A=[sl*z.compositeTextSizes[0].evaluate(p,{},h),sl*z.compositeTextSizes[1].evaluate(p,{},h)],(A[0]>Db||A[1]>Db)&&ue(`${e.layerIds[0]}: Value for "text-size" is >= 255. Reduce your "text-size".`)),e.addSymbols(e.text,O,A,c,s,p,b,t,o,l.lineStartIndex,l.lineLength,M,m,h);for(const t of d)u[t]=e.text.placedSymbolArray.length-1;return 4*O.length}function Nb(e){for(const t in e)return e[t];return null}function Pb(e,t,o,i,n,a,s,p,c,l){let b=s.top,d=s.bottom,u=s.left,M=s.right;const z=s.collisionPadding;if(z&&(u-=z[0],b-=z[1],M+=z[2],d+=z[3]),c){const e=new r(u,b),t=new r(M,b),o=new r(u,d),i=new r(M,d),n=F(c);let a=new r(0,0);l&&(a=new r(l[0],l[1])),e._rotateAround(n,a),t._rotateAround(n,a),o._rotateAround(n,a),i._rotateAround(n,a),u=Math.min(e.x,t.x,o.x,i.x),M=Math.max(e.x,t.x,o.x,i.x),b=Math.min(e.y,t.y,o.y,i.y),d=Math.max(e.y,t.y,o.y,i.y)}return e.emplaceBack(t.x,t.y,t.z,o.x,o.y,u,b,M,d,p,i,n,a),e.length-1}function Ib(e){e.collisionPadding&&(e.top-=e.collisionPadding[1],e.bottom+=e.collisionPadding[3]);const t=e.bottom-e.top;return t>0?Math.max(10,t):null}function Yb(e,t,o,i){const n=e.compareText;if(t in n){const e=n[t];for(let t=e.length-1;t>=0;t--)if(i.dist(e[t])e.id)),this.index=e.index,this.pixelRatio=e.pixelRatio,this.sourceLayerIndex=e.sourceLayerIndex,this.hasPattern=!1,this.hasRTLText=!1,this.fullyClipped=!1,this.sortKeyRanges=[],this.collisionCircleArray=[],this.placementInvProjMatrix=b([]),this.placementViewportMatrix=b([]);const t=this.layers[0]._unevaluatedLayout._values;this.textSizeData=pl(this.zoom,t["text-size"]),this.iconSizeData=pl(this.zoom,t["icon-size"]);const o=this.layers[0].layout,i=o.get("symbol-sort-key"),n=o.get("symbol-z-order");this.canOverlap=o.get("text-allow-overlap")||o.get("icon-allow-overlap")||o.get("text-ignore-placement")||o.get("icon-ignore-placement"),this.sortFeaturesByKey="viewport-y"!==n&&void 0!==i.constantOr(1),this.sortFeaturesByY=("viewport-y"===n||"auto"===n&&!this.sortFeaturesByKey)&&this.canOverlap,this.writingModes=o.get("text-writing-mode").map((e=>Fl[e])),this.stateDependentLayerIds=this.layers.filter((e=>e.isStateDependent())).map((e=>e.id)),this.sourceID=e.sourceID}createArrays(){this.text=new Gb(new fs(this.layers,this.zoom,(e=>/^text/.test(e)))),this.icon=new Gb(new fs(this.layers,this.zoom,(e=>/^icon/.test(e)))),this.glyphOffsetArray=new ja,this.lineVertexArray=new Fa,this.symbolInstances=new Ya}calculateGlyphDependencies(e,t,o,i,n){for(let o=0;o0)&&("constant"!==a.value.kind||a.value.value.length>0),l="constant"!==p.value.kind||!!p.value.value||Object.keys(p.parameters).length>0,b=r.get("symbol-sort-key");if(this.features=[],!c&&!l)return;const d=t.iconDependencies,u=t.glyphDependencies,M=t.availableImages,z=new Vr(this.zoom);for(const{feature:t,id:s,index:p,sourceLayerIndex:m}of e){const e=n._featureFilter.needGeometry,h=$s(t,e);if(!n._featureFilter.filter(z,h,o))continue;let O,f;if(e||(h.geometry=Zs(t,o,i)),c){const e=n.getValueAndResolveTokens("text-field",h,o,M),t=Zt.factory(e);Vb(t)&&(this.hasRTLText=!0),(!this.hasRTLText||"unavailable"===Fr()||this.hasRTLText&&Ur.isParsed())&&(O=dl(t,n,h))}if(l){const e=n.getValueAndResolveTokens("icon-image",h,o,M);f=e instanceof $t?e:$t.fromString(e)}if(!O&&!f)continue;const A=this.sortFeaturesByKey?b.evaluate(h,{},o):void 0;if(this.features.push({id:s,text:O,icon:f,index:p,sourceLayerIndex:m,geometry:h.geometry,properties:t.properties,type:jb[t.type],sortKey:A}),f&&(d[f.name]=!0),O){const e=a.evaluate(h,{},o).join(","),t="map"===r.get("text-rotation-alignment")&&"point"!==r.get("symbol-placement");this.allowVerticalPlacement=this.writingModes&&this.writingModes.indexOf(Fl.vertical)>=0;for(const o of O.sections)if(o.image)d[o.image.name]=!0;else{const i=Wr(O.toString()),n=o.fontStack||e,r=u[n]=u[n]||{};this.calculateGlyphDependencies(o.text,r,t,this.allowVerticalPlacement,i)}}}"line"===r.get("symbol-placement")&&(this.features=function(e){const t={},o={},i=[];let n=0;function r(t){i.push(e[t]),n++}function a(e,t,n){const r=o[e];return delete o[e],o[t]=r,i[r].geometry[0].pop(),i[r].geometry[0]=i[r].geometry[0].concat(n[0]),r}function s(e,o,n){const r=t[o];return delete t[o],t[e]=r,i[r].geometry[0].shift(),i[r].geometry[0]=n[0].concat(i[r].geometry[0]),r}function p(e,t,o){const i=o?t[0][t[0].length-1]:t[0][0];return`${e}:${i.x}:${i.y}`}for(let c=0;ce.geometry))}(this.features)),this.sortFeaturesByKey&&this.features.sort(((e,t)=>e.sortKey-t.sortKey))}update(e,t,o,i){this.stateDependentLayers.length&&(this.text.programConfigurations.updatePaintArrays(e,t,this.layers,o,i),this.icon.programConfigurations.updatePaintArrays(e,t,this.layers,o,i))}isEmpty(){return 0===this.symbolInstances.length&&!this.hasRTLText}uploadPending(){return!this.uploaded||this.text.programConfigurations.needsUpload||this.icon.programConfigurations.needsUpload}upload(e){!this.uploaded&&this.hasDebugData()&&(this.textCollisionBox.upload(e),this.iconCollisionBox.upload(e)),this.text.upload(e,this.sortFeaturesByY,!this.uploaded,this.text.programConfigurations.needsUpload),this.icon.upload(e,this.sortFeaturesByY,!this.uploaded,this.icon.programConfigurations.needsUpload),this.uploaded=!0}destroyDebugData(){this.textCollisionBox.destroy(),this.iconCollisionBox.destroy()}destroy(){this.text.destroy(),this.icon.destroy(),this.hasDebugData()&&this.destroyDebugData()}addToLineVertexArray(e,t){const o=this.lineVertexArray.length;if(void 0!==e.segment){let o=e.dist(t[e.segment+1]),i=e.dist(t[e.segment]);const n={};for(let i=e.segment+1;i=0;o--)n[o]={x:t[o].x,y:t[o].y,tileUnitDistanceFromAnchor:i},o>0&&(i+=t[o-1].dist(t[o]));for(let e=0;e=0?t.rightJustifiedTextSymbolIndex:t.centerJustifiedTextSymbolIndex>=0?t.centerJustifiedTextSymbolIndex:t.leftJustifiedTextSymbolIndex>=0?t.leftJustifiedTextSymbolIndex:t.verticalPlacedTextSymbolIndex>=0?t.verticalPlacedTextSymbolIndex:i),r=cl(this.textSizeData,e,n)/al;return this.tilePixelRatio*r}getSymbolInstanceIconSize(e,t,o){const i=this.icon.placedSymbolArray.get(o),n=cl(this.iconSizeData,e,i);return this.tilePixelRatio*n}_commitDebugCollisionVertexUpdate(e,t,o){e.emplaceBack(t,-o,-o),e.emplaceBack(t,o,-o),e.emplaceBack(t,o,o),e.emplaceBack(t,-o,o)}_updateTextDebugCollisionBoxes(e,t,o,i,n,r){for(let a=i;a0}hasIconData(){return this.icon.segments.get().length>0}hasDebugData(){return this.textCollisionBox&&this.iconCollisionBox}hasTextCollisionBoxData(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0}hasIconCollisionBoxData(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0}addIndicesForPlacedSymbol(e,t){const o=e.placedSymbolArray.get(t),i=o.vertexStartIndex+4*o.numGlyphs;for(let t=o.vertexStartIndex;ti[e]-i[t]||n[t]-n[e])),r}addToSortKeyRanges(e,t){const o=this.sortKeyRanges[this.sortKeyRanges.length-1];o&&o.sortKey===t?o.symbolInstanceEnd=e+1:this.sortKeyRanges.push({sortKey:t,symbolInstanceStart:e,symbolInstanceEnd:e+1})}sortFeatures(e){if(this.sortFeaturesByY&&this.sortedAngle!==e&&!(this.text.segments.get().length>1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(e),this.sortedAngle=e,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(const e of this.symbolInstanceIndexes){const t=this.symbolInstances.get(e);this.featureSortOrder.push(t.featureIndex),[t.rightJustifiedTextSymbolIndex,t.centerJustifiedTextSymbolIndex,t.leftJustifiedTextSymbolIndex].forEach(((e,t,o)=>{e>=0&&o.indexOf(e)===t&&this.addIndicesForPlacedSymbol(this.text,e)})),t.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,t.verticalPlacedTextSymbolIndex),t.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,t.placedIconSymbolIndex),t.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,t.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}}}Gn("SymbolBucket",$b,{omit:["layers","collisionBoxArray","features","compareText"]}),$b.MAX_GLYPHS=65535,$b.addDynamicAttributes=Ub;const Kb=new sa({"symbol-placement":new oa(At.layout_symbol["symbol-placement"]),"symbol-spacing":new oa(At.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new oa(At.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new ia(At.layout_symbol["symbol-sort-key"]),"symbol-z-order":new oa(At.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new oa(At.layout_symbol["icon-allow-overlap"]),"icon-ignore-placement":new oa(At.layout_symbol["icon-ignore-placement"]),"icon-optional":new oa(At.layout_symbol["icon-optional"]),"icon-rotation-alignment":new oa(At.layout_symbol["icon-rotation-alignment"]),"icon-size":new ia(At.layout_symbol["icon-size"]),"icon-text-fit":new oa(At.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new oa(At.layout_symbol["icon-text-fit-padding"]),"icon-image":new ia(At.layout_symbol["icon-image"]),"icon-rotate":new ia(At.layout_symbol["icon-rotate"]),"icon-padding":new oa(At.layout_symbol["icon-padding"]),"icon-keep-upright":new oa(At.layout_symbol["icon-keep-upright"]),"icon-offset":new ia(At.layout_symbol["icon-offset"]),"icon-anchor":new ia(At.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new oa(At.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new oa(At.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new oa(At.layout_symbol["text-rotation-alignment"]),"text-field":new ia(At.layout_symbol["text-field"]),"text-font":new ia(At.layout_symbol["text-font"]),"text-size":new ia(At.layout_symbol["text-size"]),"text-max-width":new ia(At.layout_symbol["text-max-width"]),"text-line-height":new ia(At.layout_symbol["text-line-height"]),"text-letter-spacing":new ia(At.layout_symbol["text-letter-spacing"]),"text-justify":new ia(At.layout_symbol["text-justify"]),"text-radial-offset":new ia(At.layout_symbol["text-radial-offset"]),"text-variable-anchor":new oa(At.layout_symbol["text-variable-anchor"]),"text-anchor":new ia(At.layout_symbol["text-anchor"]),"text-max-angle":new oa(At.layout_symbol["text-max-angle"]),"text-writing-mode":new oa(At.layout_symbol["text-writing-mode"]),"text-rotate":new ia(At.layout_symbol["text-rotate"]),"text-padding":new oa(At.layout_symbol["text-padding"]),"text-keep-upright":new oa(At.layout_symbol["text-keep-upright"]),"text-transform":new ia(At.layout_symbol["text-transform"]),"text-offset":new ia(At.layout_symbol["text-offset"]),"text-allow-overlap":new oa(At.layout_symbol["text-allow-overlap"]),"text-ignore-placement":new oa(At.layout_symbol["text-ignore-placement"]),"text-optional":new oa(At.layout_symbol["text-optional"])});var Jb={paint:new sa({"icon-opacity":new ia(At.paint_symbol["icon-opacity"]),"icon-color":new ia(At.paint_symbol["icon-color"]),"icon-halo-color":new ia(At.paint_symbol["icon-halo-color"]),"icon-halo-width":new ia(At.paint_symbol["icon-halo-width"]),"icon-halo-blur":new ia(At.paint_symbol["icon-halo-blur"]),"icon-translate":new oa(At.paint_symbol["icon-translate"]),"icon-translate-anchor":new oa(At.paint_symbol["icon-translate-anchor"]),"text-opacity":new ia(At.paint_symbol["text-opacity"]),"text-color":new ia(At.paint_symbol["text-color"],{runtimeType:kt,getOverride:e=>e.textColor,hasOverride:e=>!!e.textColor}),"text-halo-color":new ia(At.paint_symbol["text-halo-color"]),"text-halo-width":new ia(At.paint_symbol["text-halo-width"]),"text-halo-blur":new ia(At.paint_symbol["text-halo-blur"]),"text-translate":new oa(At.paint_symbol["text-translate"]),"text-translate-anchor":new oa(At.paint_symbol["text-translate-anchor"])}),layout:Kb};class Qb{constructor(e){this.type=e.property.overrides?e.property.overrides.runtimeType:wt,this.defaultValue=e}evaluate(e){if(e.formattedSection){const t=this.defaultValue.property.overrides;if(t&&t.hasOverride(e.formattedSection))return t.getOverride(e.formattedSection)}return e.feature&&e.featureState?this.defaultValue.evaluate(e.feature,e.featureState):this.defaultValue.property.specification.default}eachChild(e){this.defaultValue.isConstant()||e(this.defaultValue.value._styleExpression.expression)}outputDefined(){return!1}serialize(){return null}}Gn("FormatSectionOverride",Qb,{omit:["defaultValue"]});class ed extends xs{constructor(e){super(e,Jb)}recalculate(e,t){super.recalculate(e,t),"auto"===this.layout.get("icon-rotation-alignment")&&(this.layout._values["icon-rotation-alignment"]="point"!==this.layout.get("symbol-placement")?"map":"viewport"),"auto"===this.layout.get("text-rotation-alignment")&&(this.layout._values["text-rotation-alignment"]="point"!==this.layout.get("symbol-placement")?"map":"viewport"),"auto"===this.layout.get("text-pitch-alignment")&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")),"auto"===this.layout.get("icon-pitch-alignment")&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment"));const o=this.layout.get("text-writing-mode");if(o){const e=[];for(const t of o)e.indexOf(t)<0&&e.push(t);this.layout._values["text-writing-mode"]=e}else this.layout._values["text-writing-mode"]="point"===this.layout.get("symbol-placement")?["horizontal"]:["horizontal","vertical"];this._setPaintOverrides()}getValueAndResolveTokens(e,t,o,i){const n=this.layout.get(e).evaluate(t,{},o,i),r=this._unevaluatedLayout._values[e];return r.isDataDriven()||Hi(r.value)||!n?n:function(e,t){return t.replace(/{([^{}]+)}/g,((t,o)=>o in e?String(e[o]):""))}(t.properties,n)}createBucket(e){return new $b(e)}queryRadius(){return 0}queryIntersectsFeature(){return!1}_setPaintOverrides(){for(const e of Jb.paint.overridableProperties){if(!ed.hasPaintOverride(this.layout,e))continue;const t=this.paint.get(e),o=new Qb(t),i=new Fi(o,t.property.specification);let n=null;n="constant"===t.value.kind||"source"===t.value.kind?new Vi("source",i):new Gi("composite",i,t.value.zoomStops,t.value._interpolationType),this.paint._values[e]=new ea(t.property,n,t.parameters)}}_handleOverridablePaintPropertyUpdate(e,t,o){return!(!this.layout||t.isDataDriven()||o.isDataDriven())&&ed.hasPaintOverride(this.layout,e)}static hasPaintOverride(e,t){const o=e.get("text-field"),i=Jb.paint.properties[t];let n=!1;const r=e=>{for(const t of e)if(i.overrides&&i.overrides.hasOverride(t))return void(n=!0)};if("constant"===o.value.kind&&o.value.value instanceof Zt)r(o.value.value.sections);else if("source"===o.value.kind){const e=t=>{n||(t instanceof to&&Qt(t.value)===Et?r(t.value.sections):t instanceof ro?r(t.sections):t.eachChild(e))},t=o.value;t._styleExpression&&e(t._styleExpression.expression)}return n}getProgramConfiguration(e){return new Os(this,e)}}var td={paint:new sa({"background-color":new oa(At.paint_background["background-color"]),"background-pattern":new ra(At.paint_background["background-pattern"]),"background-opacity":new oa(At.paint_background["background-opacity"])})},od={paint:new sa({"raster-opacity":new oa(At.paint_raster["raster-opacity"]),"raster-hue-rotate":new oa(At.paint_raster["raster-hue-rotate"]),"raster-brightness-min":new oa(At.paint_raster["raster-brightness-min"]),"raster-brightness-max":new oa(At.paint_raster["raster-brightness-max"]),"raster-saturation":new oa(At.paint_raster["raster-saturation"]),"raster-contrast":new oa(At.paint_raster["raster-contrast"]),"raster-resampling":new oa(At.paint_raster["raster-resampling"]),"raster-fade-duration":new oa(At.paint_raster["raster-fade-duration"])})};class id extends xs{constructor(e){super(e,{}),this.implementation=e}is3D(){return"3d"===this.implementation.renderingMode}hasOffscreenPass(){return void 0!==this.implementation.prerender}recalculate(){}updateTransitions(){}hasTransition(){}serialize(){}onAdd(e){this.implementation.onAdd&&this.implementation.onAdd(e,e.painter.context.gl)}onRemove(e){this.implementation.onRemove&&this.implementation.onRemove(e,e.painter.context.gl)}}var nd={paint:new sa({"sky-type":new oa(At.paint_sky["sky-type"]),"sky-atmosphere-sun":new oa(At.paint_sky["sky-atmosphere-sun"]),"sky-atmosphere-sun-intensity":new oa(At.paint_sky["sky-atmosphere-sun-intensity"]),"sky-gradient-center":new oa(At.paint_sky["sky-gradient-center"]),"sky-gradient-radius":new oa(At.paint_sky["sky-gradient-radius"]),"sky-gradient":new aa(At.paint_sky["sky-gradient"]),"sky-atmosphere-halo-color":new oa(At.paint_sky["sky-atmosphere-halo-color"]),"sky-atmosphere-color":new oa(At.paint_sky["sky-atmosphere-color"]),"sky-opacity":new oa(At.paint_sky["sky-opacity"])})};function rd(e,t,o){const i=_(0,0,1),n=N(C());return function(e,t,o){o*=.5;var i=t[0],n=t[1],r=t[2],a=t[3],s=Math.sin(o),p=Math.cos(o);e[0]=i*p-r*s,e[1]=n*p+a*s,e[2]=r*p+i*s,e[3]=a*p-n*s}(n,n,o?-F(e)+Math.PI:F(e)),P(n,n,-F(t)),k(i,i,n),w(i,i)}const ad={circle:class extends xs{constructor(e){super(e,mp)}createBucket(e){return new Js(e)}queryRadius(e){const t=e;return bp("circle-radius",this,t)+bp("circle-stroke-width",this,t)+dp(this.paint.get("circle-translate"))}queryIntersectsFeature(e,t,o,i,n,r,a,s){const p=Mp(this.paint.get("circle-translate"),this.paint.get("circle-translate-anchor"),r.angle,e.pixelToTileUnitsFactor),c=this.paint.get("circle-radius").evaluate(t,o)+this.paint.get("circle-stroke-width").evaluate(t,o);return fp(e,i,r,a,s,"map"===this.paint.get("circle-pitch-alignment"),"map"===this.paint.get("circle-pitch-scale"),p,c)}getProgramIds(){return["circle"]}getProgramConfiguration(e){return new Os(this,e)}},heatmap:class extends xs{createBucket(e){return new yp(e)}constructor(e){super(e,Rp),this._updateColorRamp()}_handleSpecialPaintPropertyUpdate(e){"heatmap-color"===e&&this._updateColorRamp()}_updateColorRamp(){this.colorRamp=Tp({expression:this._transitionablePaint._values["heatmap-color"].value.expression,evaluationKey:"heatmapDensity",image:this.colorRamp}),this.colorRampTexture=null}resize(){this.heatmapFbo&&(this.heatmapFbo.destroy(),this.heatmapFbo=null)}queryRadius(e){return bp("heatmap-radius",this,e)}queryIntersectsFeature(e,t,o,i,n,a,s,p){const c=this.paint.get("heatmap-radius").evaluate(t,o);return fp(e,i,a,s,p,!0,!0,new r(0,0),c)}hasOffscreenPass(){return 0!==this.paint.get("heatmap-opacity")&&"none"!==this.visibility}getProgramIds(){return["heatmap","heatmapTexture"]}getProgramConfiguration(e){return new Os(this,e)}},hillshade:class extends xs{constructor(e){super(e,kp)}hasOffscreenPass(){return 0!==this.paint.get("hillshade-exaggeration")&&"none"!==this.visibility}getProgramIds(){return["hillshade","hillshadePrepare"]}getProgramConfiguration(e){return new Os(this,e)}},fill:class extends xs{constructor(e){super(e,fc)}getProgramIds(){const e=this.paint.get("fill-pattern"),t=e&&e.constantOr(1),o=[t?"fillPattern":"fill"];return this.paint.get("fill-antialias")&&o.push(t&&!this.getPaintProperty("fill-outline-color")?"fillOutlinePattern":"fillOutline"),o}getProgramConfiguration(e){return new Os(this,e)}recalculate(e,t){super.recalculate(e,t);const o=this.paint._values["fill-outline-color"];"constant"===o.value.kind&&void 0===o.value.value&&(this.paint._values["fill-outline-color"]=this.paint._values["fill-color"])}createBucket(e){return new hc(e)}queryRadius(){return dp(this.paint.get("fill-translate"))}queryIntersectsFeature(e,t,o,i,n,r){return!e.queryGeometry.isAboveHorizon&&tp(up(e.tilespaceGeometry,this.paint.get("fill-translate"),this.paint.get("fill-translate-anchor"),r.angle,e.pixelToTileUnitsFactor),i)}isTileClipped(){return!0}},"fill-extrusion":class extends xs{constructor(e){super(e,Cc)}createBucket(e){return new Ec(e)}queryRadius(){return dp(this.paint.get("fill-extrusion-translate"))}is3D(){return!0}getProgramIds(){return[this.paint.get("fill-extrusion-pattern").constantOr(1)?"fillExtrusionPattern":"fillExtrusion"]}getProgramConfiguration(e){return new Os(this,e)}queryIntersectsFeature(e,t,o,i,n,a,s,p,c){const l=Mp(this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),a.angle,e.pixelToTileUnitsFactor),b=this.paint.get("fill-extrusion-height").evaluate(t,o),d=this.paint.get("fill-extrusion-base").evaluate(t,o),u=[0,0],M=p&&a.elevation,z=a.elevation?a.elevation.exaggeration():1;if(M){const t=e.tile.getBucket(this).centroidVertexArray,o=c+1;if(o=3)for(let t=0;t1&&(a=e[++r]);const p=Math.abs(s-a.left),c=Math.abs(s-a.right),l=Math.min(p,c);let b;const d=t/o*(i+1);if(a.isDash){const e=i-Math.abs(d);b=Math.sqrt(l*l+e*e)}else b=i-Math.sqrt(l*l+d*d);this.image.data[n+s]=Math.max(0,Math.min(255,b+128))}}}addRegularDash(e,t){for(let t=e.length-1;t>=0;--t){const o=e[t],i=e[t+1];o.zeroLength?e.splice(t,1):i&&i.isDash===o.isDash&&(i.left=o.left,e.splice(t,1))}const o=e[0],i=e[e.length-1];o.isDash===i.isDash&&(o.left=i.left-this.width,i.right=o.right+this.width);const n=this.width*this.nextRow;let r=0,a=e[r];for(let o=0;o1&&(a=e[++r]);const i=Math.abs(o-a.left),s=Math.abs(o-a.right),p=Math.min(i,s);this.image.data[n+o]=Math.max(0,Math.min(255,(a.isDash?p:-p)+t+128))}}addDash(e,t){const o=this.getKey(e,t);if(this.positions[o])return this.positions[o];const i="round"===t,n=i?7:0,r=2*n+1;if(this.nextRow+r>this.height)return ue("LineAtlas out of space"),null;0===e.length&&e.push(1);let a=0;for(let t=0;t{this._triggered=!1,this._callback()})}trigger(){this._triggered||(this._triggered=!0,this._channel?this._channel.port1.postMessage(!0):setTimeout((()=>{this._triggered=!1,this._callback()}),0))}remove(){delete this._channel,this._callback=()=>{}}}const zd=s.performance;function md(e){const t=e?e.url.toString():void 0;return zd.getEntriesByName(t)}class hd{constructor(){this.tasks={},this.taskQueue=[],se(["process"],this),this.invoker=new Md(this.process),this.nextId=0}add(e,t){const o=this.nextId++,i=function({type:e,isSymbolTile:t,zoom:o}){return o=o||0,"message"===e?0:"maybePrepare"!==e||t?"parseTile"!==e||t?"parseTile"===e&&t?300-o:"maybePrepare"===e&&t?400-o:500:200-o:100-o}(t);if(0===i){me();try{e()}finally{}return{cancel:()=>{}}}return this.tasks[o]={fn:e,metadata:t,priority:i,id:o},this.taskQueue.push(o),this.invoker.trigger(),{cancel:()=>{delete this.tasks[o]}}}process(){me();try{if(this.taskQueue=this.taskQueue.filter((e=>!!this.tasks[e])),!this.taskQueue.length)return;const e=this.pick();if(null===e)return;const t=this.tasks[e];if(delete this.tasks[e],this.taskQueue.length&&this.invoker.trigger(),!t)return;t.fn()}finally{}}pick(){let e=null,t=1/0;for(let o=0;o0;r--)i=1<this.canonical.z?new _d(e,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new _d(e,this.wrap,e,this.canonical.x>>t,this.canonical.y>>t)}calculateScaledKey(e,t=!0){if(this.overscaledZ===e&&t)return this.key;if(e>this.canonical.z)return gd(this.wrap*+t,e,this.canonical.z,this.canonical.x,this.canonical.y);{const o=this.canonical.z-e;return gd(this.wrap*+t,e,e,this.canonical.x>>o,this.canonical.y>>o)}}isChildOf(e){if(e.wrap!==this.wrap)return!1;const t=this.canonical.z-e.canonical.z;return 0===e.overscaledZ||e.overscaledZ>t&&e.canonical.y===this.canonical.y>>t}children(e){if(this.overscaledZ>=e)return[new _d(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];const t=this.canonical.z+1,o=2*this.canonical.x,i=2*this.canonical.y;return[new _d(t,this.wrap,t,o,i),new _d(t,this.wrap,t,o+1,i),new _d(t,this.wrap,t,o,i+1),new _d(t,this.wrap,t,o+1,i+1)]}isLessThan(e){return this.wrape.wrap)&&(this.overscaledZe.overscaledZ)&&(this.canonical.xe.canonical.x)&&this.canonical.yt[a])return null}else{const s=1/i[a];let p=(e[a]-o[a])*s,c=(t[a]-o[a])*s;if(p>c){const e=p;p=c,c=e}if(p>n&&(n=p),cr)return null}return n}function Xd(e,t,o,i,n,r,a,s,p,c,l){const b=i-e,d=n-t,u=r-o,M=a-e,z=s-t,m=p-o,h=l[1]*m-l[2]*z,O=l[2]*M-l[0]*m,f=l[0]*z-l[1]*M,A=b*h+d*O+u*f;if(Math.abs(A)<1e-15)return null;const _=1/A,g=c[0]-e,q=c[1]-t,y=c[2]-o,v=(g*h+q*O+y*f)*_;if(v<0||v>1)return null;const x=q*u-y*d,W=y*b-g*u,w=g*d-q*b,L=(l[0]*x+l[1]*W+l[2]*w)*_;return L<0||v+L>1?null:(M*x+z*W+m*w)*_}function Ed(e,t,o){return(e-t)/(o-t)}function Dd(e,t,o,i,n,r,a,s,p){const c=1<{const r=i?1:0,a=(e+1)*o-r,s=t*o,p=(t+1)*o-r;n[0]=e*o,n[1]=s,n[2]=a,n[3]=p};let a=new Bd(i);const s=[];for(let t=0;t=1;i/=2){const e=o[o.length-1];a=new Bd(i);for(let t=0;t0;){const{idx:s,t:u,nodex:M,nodey:z,depth:m}=d.pop();if(this.leaves[s]){Dd(M,z,m,e,t,o,i,l,b);const s=1<=e[2])return u}continue}let h=0;for(let d=0;d=p[c[o]]&&(c.splice(o,0,d),t=!0);t||(c[h]=d),h++}}for(let e=0;e=this.dim+1||t<-1||t>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(t+1)*this.stride+(e+1)}_unpackMapbox(e,t,o){return(256*e*256+256*t+o)/10-1e4}_unpackTerrarium(e,t,o){return 256*e+t+o/256-32768}static pack(e,t){const o=[0,0,0,0],i=Yd.getUnpackVector(t);let n=Math.floor((e+i[3])/i[2]);return o[2]=n%256,n=Math.floor(n/256),o[1]=n%256,n=Math.floor(n/256),o[0]=n,o}getPixels(){return new Lp({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))}backfillBorder(e,t,o){if(this.dim!==e.dim)throw new Error("dem dimension mismatch");let i=t*this.dim,n=t*this.dim+this.dim,r=o*this.dim,a=o*this.dim+this.dim;switch(t){case-1:i=n-1;break;case 1:n=i+1}switch(o){case-1:r=a-1;break;case 1:a=r+1}const s=-t*this.dim,p=-o*this.dim;for(let t=r;t{this.remove(e,n)}),o)),this.data[i].push(n),this.order.push(i),this.order.length>this.max){const e=this._getAndRemoveByKey(this.order[0]);e&&this.onRemove(e)}return this}has(e){return e.wrapped().key in this.data}getAndRemove(e){return this.has(e)?this._getAndRemoveByKey(e.wrapped().key):null}_getAndRemoveByKey(e){const t=this.data[e].shift();return t.timeout&&clearTimeout(t.timeout),0===this.data[e].length&&delete this.data[e],this.order.splice(this.order.indexOf(e),1),t.value}getByKey(e){const t=this.data[e];return t?t[0].value:null}get(e){return this.has(e)?this.data[e.wrapped().key][0].value:null}remove(e,t){if(!this.has(e))return this;const o=e.wrapped().key,i=void 0===t?0:this.data[o].indexOf(t),n=this.data[o][i];return this.data[o].splice(i,1),n.timeout&&clearTimeout(n.timeout),0===this.data[o].length&&delete this.data[o],this.onRemove(n.value),this.order.splice(this.order.indexOf(o),1),this}setMaxSize(e){for(this.max=e;this.order.length>this.max;){const e=this._getAndRemoveByKey(this.order[0]);e&&this.onRemove(e)}return this}filter(e){const t=[];for(const o in this.data)for(const i of this.data[o])e(i.value)||t.push(i);for(const e of t)this.remove(e.value.tileID,e)}}class Fd extends ft{constructor(e,t,o){super(),this.id=e,this._onlySymbols=o,t.on("data",(e=>{"source"===e.dataType&&"metadata"===e.sourceDataType&&(this._sourceLoaded=!0),this._sourceLoaded&&!this._paused&&"source"===e.dataType&&"content"===e.sourceDataType&&(this.reload(),this.transform&&this.update(this.transform))})),t.on("error",(()=>{this._sourceErrored=!0})),this._source=t,this._tiles={},this._cache=new jd(0,this._unloadTile.bind(this)),this._timers={},this._cacheTimers={},this._minTileCacheSize=null,this._maxTileCacheSize=null,this._loadedParentTiles={},this._coveredTiles={},this._state=new kd}onAdd(e){this.map=e,this._minTileCacheSize=e?e._minTileCacheSize:null,this._maxTileCacheSize=e?e._maxTileCacheSize:null}loaded(){if(this._sourceErrored)return!0;if(!this._sourceLoaded)return!1;if(!this._source.loaded())return!1;for(const e in this._tiles){const t=this._tiles[e];if("loaded"!==t.state&&"errored"!==t.state)return!1}return!0}getSource(){return this._source}pause(){this._paused=!0}resume(){if(!this._paused)return;const e=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,e&&this.reload(),this.transform&&this.update(this.transform)}_loadTile(e,t){return e.isSymbolTile=this._onlySymbols,this._source.loadTile(e,t)}_unloadTile(e){if(this._source.unloadTile)return this._source.unloadTile(e,(()=>{}))}_abortTile(e){if(this._source.abortTile)return this._source.abortTile(e,(()=>{}))}serialize(){return this._source.serialize()}prepare(e){this._source.prepare&&this._source.prepare(),this._state.coalesceChanges(this._tiles,this.map?this.map.painter:null);for(const t in this._tiles){const o=this._tiles[t];o.upload(e),o.prepare(this.map.style.imageManager)}}getIds(){return ee(this._tiles).map((e=>e.tileID)).sort(Hd).map((e=>e.key))}getRenderableIds(e){const t=[];for(const o in this._tiles)this._isIdRenderable(+o,e)&&t.push(this._tiles[o]);return e?t.sort(((e,t)=>{const o=e.tileID,i=t.tileID,n=new r(o.canonical.x,o.canonical.y)._rotate(this.transform.angle),a=new r(i.canonical.x,i.canonical.y)._rotate(this.transform.angle);return o.overscaledZ-i.overscaledZ||a.y-n.y||a.x-n.x})).map((e=>e.tileID.key)):t.map((e=>e.tileID)).sort(Hd).map((e=>e.key))}hasRenderableParent(e){const t=this.findLoadedParent(e,0);return!!t&&this._isIdRenderable(t.tileID.key)}_isIdRenderable(e,t){return this._tiles[e]&&this._tiles[e].hasData()&&!this._coveredTiles[e]&&(t||!this._tiles[e].holdingForFade())}reload(){if(this._paused)this._shouldReloadOnResume=!0;else{this._cache.reset();for(const e in this._tiles)"errored"!==this._tiles[e].state&&this._reloadTile(+e,"reloading")}}_reloadTile(e,t){const o=this._tiles[e];o&&("loading"!==o.state&&(o.state=t),this._loadTile(o,this._tileLoaded.bind(this,o,e,t)))}_tileLoaded(e,t,o,i){if(i)if(e.state="errored",404!==i.status)this._source.fire(new Ot(i,{tile:e}));else if("raster-dem"===this._source.type&&this.usedForTerrain&&this.map.painter.terrain){const e=this.map.painter.terrain;this.update(this.transform,e.getScaledDemTileSize(),!0),e.resetTileLookupCache(this.id)}else this.update(this.transform);else e.timeAdded=ye.now(),"expired"===o&&(e.refreshedUponExpiration=!0),this._setTileReloadTimer(t,e),"raster-dem"===this._source.type&&e.dem&&this._backfillDEM(e),this._state.initializeTileState(e,this.map?this.map.painter:null),this._source.fire(new ht("data",{dataType:"source",tile:e,coord:e.tileID,sourceCacheId:this.id}))}_backfillDEM(e){const t=this.getRenderableIds();for(let i=0;i1||(Math.abs(o)>1&&(1===Math.abs(o+n)?o+=n:1===Math.abs(o-n)&&(o-=n)),t.dem&&e.dem&&(e.dem.backfillBorder(t.dem,o,i),e.neighboringTiles&&e.neighboringTiles[r]&&(e.neighboringTiles[r].backfilled=!0)))}}getTile(e){return this.getTileByID(e.key)}getTileByID(e){return this._tiles[e]}_retainLoadedChildren(e,t,o,i){for(const n in this._tiles){let r=this._tiles[n];if(i[n]||!r.hasData()||r.tileID.overscaledZ<=t||r.tileID.overscaledZ>o)continue;let a=r.tileID;for(;r&&r.tileID.overscaledZ>t+1;){const e=r.tileID.scaledTo(r.tileID.overscaledZ-1);r=this._tiles[e.key],r&&r.hasData()&&(a=e)}let s=a;for(;s.overscaledZ>t;)if(s=s.scaledTo(s.overscaledZ-1),e[s.key]){i[a.key]=a;break}}}findLoadedParent(e,t){if(e.key in this._loadedParentTiles){const o=this._loadedParentTiles[e.key];return o&&o.tileID.overscaledZ>=t?o:null}for(let o=e.overscaledZ-1;o>=t;o--){const t=e.scaledTo(o),i=this._getLoadedTile(t);if(i)return i}}_getLoadedTile(e){const t=this._tiles[e.key];return t&&t.hasData()?t:this._cache.getByKey(this._source.reparseOverscaled?e.wrapped().key:e.canonical.key)}updateCacheSize(e,t){t=t||this._source.tileSize;const o=Math.ceil(e.width/t)+1,i=Math.ceil(e.height/t)+1,n=Math.floor(o*i*5),r="number"==typeof this._minTileCacheSize?Math.max(this._minTileCacheSize,n):n,a="number"==typeof this._maxTileCacheSize?Math.min(this._maxTileCacheSize,r):r;this._cache.setMaxSize(a)}handleWrapJump(e){const t=Math.round((e-(void 0===this._prevLng?e:this._prevLng))/360);if(this._prevLng=e,t){const e={};for(const o in this._tiles){const i=this._tiles[o];i.tileID=i.tileID.unwrapTo(i.tileID.wrap+t),e[i.tileID.key]=i}this._tiles=e;for(const e in this._timers)clearTimeout(this._timers[e]),delete this._timers[e];for(const e in this._tiles)this._setTileReloadTimer(+e,this._tiles[e])}}update(e,t,o){if(this.transform=e,!this._sourceLoaded||this._paused||this.transform.freezeTileCoverage)return;if(this.usedForTerrain&&!o)return;let i;this.updateCacheSize(e,t),"globe"!==this.transform.projection.name&&this.handleWrapJump(this.transform.center.lng),this._coveredTiles={},this.used||this.usedForTerrain?this._source.tileID?i=e.getVisibleUnwrappedCoordinates(this._source.tileID).map((e=>new _d(e.canonical.z,e.wrap,e.canonical.z,e.canonical.x,e.canonical.y))):(i=e.coveringTiles({tileSize:t||this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom&&!o,reparseOverscaled:this._source.reparseOverscaled,isTerrainDEM:this.usedForTerrain}),this._source.hasTile&&(i=i.filter((e=>this._source.hasTile(e))))):i=[];const n=this._updateRetainedTiles(i);if(Ud(this._source.type)&&0!==i.length){const e={},t={},o=Object.keys(n);for(const i of o){const o=n[i],r=this._tiles[i];if(!r||r.fadeEndTime&&r.fadeEndTime<=ye.now())continue;const a=this.findLoadedParent(o,Math.max(o.overscaledZ-Fd.maxOverzooming,this._source.minzoom));a&&(this._addTile(a.tileID),e[a.tileID.key]=a.tileID),t[i]=o}const r=i[i.length-1].overscaledZ;for(const e in this._tiles){const o=this._tiles[e];if(n[e]||!o.hasData())continue;let i=o.tileID;for(;i.overscaledZ>r;){i=i.scaledTo(i.overscaledZ-1);const r=this._tiles[i.key];if(r&&r.hasData()&&t[i.key]){n[e]=o.tileID;break}}}for(const t in e)n[t]||(this._coveredTiles[t]=!0,n[t]=e[t])}for(const e in n)this._tiles[e].clearFadeHold();const r=function(e,t){const o=[];for(const i in e)i in t||o.push(i);return o}(this._tiles,n);for(const e of r){const t=this._tiles[e];t.hasSymbolBuckets&&!t.holdingForFade()?t.setHoldDuration(this.map._fadeDuration):t.hasSymbolBuckets&&!t.symbolFadeFinished()||this._removeTile(+e)}this._updateLoadedParentTileCache(),this._onlySymbols&&this._source.afterUpdate&&this._source.afterUpdate()}releaseSymbolFadeTiles(){for(const e in this._tiles)this._tiles[e].holdingForFade()&&this._removeTile(+e)}_updateRetainedTiles(e){const t={};if(0===e.length)return t;const o={},i=e.reduce(((e,t)=>Math.min(e,t.overscaledZ)),1/0),n=e[0].overscaledZ,r=Math.max(n-Fd.maxOverzooming,this._source.minzoom),a=Math.max(n+Fd.maxUnderzooming,this._source.minzoom),s={};for(const o of e){const e=this._addTile(o);t[o.key]=o,e.hasData()||i=this._source.maxzoom){const e=i.children(this._source.maxzoom)[0],o=this.getTile(e);if(o&&o.hasData()){t[e.key]=e;continue}}else{const e=i.children(this._source.maxzoom);if(t[e[0].key]&&t[e[1].key]&&t[e[2].key]&&t[e[3].key])continue}let n=e.wasRequested();for(let a=i.overscaledZ-1;a>=r;--a){const r=i.scaledTo(a);if(o[r.key])break;if(o[r.key]=!0,e=this.getTile(r),!e&&n&&(e=this._addTile(r)),e&&(t[r.key]=r,n=e.wasRequested(),e.hasData()))break}}return t}_updateLoadedParentTileCache(){this._loadedParentTiles={};for(const e in this._tiles){const t=[];let o,i=this._tiles[e].tileID;for(;i.overscaledZ>0;){if(i.key in this._loadedParentTiles){o=this._loadedParentTiles[i.key];break}t.push(i.key);const e=i.scaledTo(i.overscaledZ-1);if(o=this._getLoadedTile(e),o)break;i=e}for(const e of t)this._loadedParentTiles[e]=o}}_addTile(e){let t=this._tiles[e.key];if(t)return t;t=this._cache.getAndRemove(e),t&&(this._setTileReloadTimer(e.key,t),t.tileID=e,this._state.initializeTileState(t,this.map?this.map.painter:null),this._cacheTimers[e.key]&&(clearTimeout(this._cacheTimers[e.key]),delete this._cacheTimers[e.key],this._setTileReloadTimer(e.key,t)));const o=Boolean(t);if(!o){const o=this.map?this.map.painter:null,i="raster"===this._source.type||"raster-dem"===this._source.type;t=new su(e,this._source.tileSize*e.overscaleFactor(),this.transform.tileZoom,o,i),this._loadTile(t,this._tileLoaded.bind(this,t,e.key,t.state))}return t?(t.uses++,this._tiles[e.key]=t,o||this._source.fire(new ht("dataloading",{tile:t,coord:t.tileID,dataType:"source"})),t):null}_setTileReloadTimer(e,t){e in this._timers&&(clearTimeout(this._timers[e]),delete this._timers[e]);const o=t.getExpiryTimeout();o&&(this._timers[e]=setTimeout((()=>{this._reloadTile(e,"expired"),delete this._timers[e]}),o))}_removeTile(e){const t=this._tiles[e];t&&(t.uses--,delete this._tiles[e],this._timers[e]&&(clearTimeout(this._timers[e]),delete this._timers[e]),t.uses>0||(t.hasData()&&"reloading"!==t.state?this._cache.add(t.tileID,t,t.getExpiryTimeout()):(t.aborted=!0,this._abortTile(t),this._unloadTile(t))))}clearTiles(){this._shouldReloadOnResume=!1,this._paused=!1;for(const e in this._tiles)this._removeTile(+e);this._source._clear&&this._source._clear(),this._cache.reset()}tilesIn(e,t,o){const i=[],n=this.transform;if(!n)return i;for(const r in this._tiles){const a=this._tiles[r];if(o&&a.clearQueryDebugViz(),a.holdingForFade())continue;const s=e.containsTile(a,n,t);s&&i.push(s)}return i}getVisibleCoordinates(e){const t=this.getRenderableIds(e).map((e=>this._tiles[e].tileID));for(const e of t)e.projMatrix=this.transform.calculateProjMatrix(e.toUnwrapped());return t}hasTransition(){if(this._source.hasTransition())return!0;if(Ud(this._source.type))for(const e in this._tiles){const t=this._tiles[e];if(void 0!==t.fadeEndTime&&t.fadeEndTime>=ye.now())return!0}return!1}setFeatureState(e,t,o){this._state.updateState(e=e||"_geojsonTileLayer",t,o)}removeFeatureState(e,t,o){this._state.removeFeatureState(e=e||"_geojsonTileLayer",t,o)}getFeatureState(e,t){return this._state.getState(e=e||"_geojsonTileLayer",t)}setDependencies(e,t,o){const i=this._tiles[e];i&&i.setDependencies(t,o)}reloadTilesForDependencies(e,t){for(const o in this._tiles)this._tiles[o].hasDependency(e,t)&&this._reloadTile(+o,"reloading");this._cache.filter((o=>!o.hasDependency(e,t)))}_preloadTiles(e,t){const o=new Map,i=Array.isArray(e)?e:[e],n=this.map.painter.terrain,r=this.usedForTerrain&&n?n.getScaledDemTileSize():this._source.tileSize;for(const e of i){const t=e.coveringTiles({tileSize:r,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom&&!this.usedForTerrain,reparseOverscaled:this._source.reparseOverscaled,isTerrainDEM:this.usedForTerrain});for(const e of t)o.set(e.key,e);this.usedForTerrain&&e.updateElevation(!1)}const a=Array.from(o.values()),s="raster"===this._source.type||"raster-dem"===this._source.type;Q(a,((e,t)=>{const o=new su(e,this._source.tileSize*e.overscaleFactor(),this.transform.tileZoom,this.map.painter,s);this._loadTile(o,(e=>{"raster-dem"===this._source.type&&o.dem&&this._backfillDEM(o),t(e,o)}))}),t)}}function Hd(e,t){const o=Math.abs(2*e.wrap)-+(e.wrap<0),i=Math.abs(2*t.wrap)-+(t.wrap<0);return e.overscaledZ-t.overscaledZ||i-o||t.canonical.y-e.canonical.y||t.canonical.x-e.canonical.x}function Ud(e){return"raster"===e||"image"===e||"video"===e}Fd.maxOverzooming=10,Fd.maxUnderzooming=3;class Vd{constructor(e,t,o){this._demTile=e,this._dem=this._demTile.dem,this._scale=t,this._offset=o}static create(e,t,o){const i=o||e.findDEMTileFor(t);if(!i||!i.dem)return;const n=i.dem,r=i.tileID,a=1<=0&&i[3]>=0&&s.insert(a,i[0],i[1],i[2],i[3])}}loadVTLayers(){if(!this.vtLayers){this.vtLayers=new Tc.VectorTile(new Ol(this.rawTileData)).layers,this.sourceLayerCoder=new Rd(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"]),this.vtFeatures={};for(const e in this.vtLayers)this.vtFeatures[e]=[]}return this.vtLayers}query(e,t,o,i){this.loadVTLayers();const n=e.params||{},r=sn(n.filter),a=e.tileResult,s=e.transform,p=a.bufferedTilespaceBounds,c=this.grid.query(p.min.x,p.min.y,p.max.x,p.max.y,((e,t,o,i)=>cp(a.bufferedTilespaceGeometry,e,t,o,i)));c.sort($d);let l=null;s.elevation&&c.length>0&&(l=Vd.create(s.elevation,this.tileID));const b={};let d;for(let s=0;s(M||(M=Zs(t,this.tileID.canonical,e.tileTransform)),o.queryIntersectsFeature(a,t,i,M,this.z,e.transform,e.pixelPosMatrix,l,n))))}return b}loadMatchingFeature(e,t,o,i,n,r,a,s,p){const{featureIndex:c,bucketIndex:l,sourceLayerIndex:b,layoutVertexArrayOffset:d}=t,u=this.bucketLayerIDs[l];if(i&&!function(e,t){for(let o=0;o=0)return!0;return!1}(i,u))return;const M=this.sourceLayerCoder.decode(b),z=this.vtLayers[M].feature(c);if(o.needGeometry){const e=$s(z,!0);if(!o.filter(new Vr(this.tileID.overscaledZ),e,this.tileID.canonical))return}else if(!o.filter(new Vr(this.tileID.overscaledZ),z))return;const m=this.getId(z,M);for(let t=0;t{const a=t instanceof ta?t.get(r):null;return a&&a.evaluate?a.evaluate(o,i,n):a}))}function $d(e,t){return t-e}Gn("FeatureIndex",Gd,{omit:["rawTileData","sourceLayerCoder"]});var Kd=da([{name:"a_pos",type:"Int16",components:2}]);const Jd=32,Qd=33,eu=new Uint16Array(8184);for(let e=0;e<2046;e++){let t=e+2,o=0,i=0,n=0,r=0,a=0,s=0;for(1&t?n=r=a=Jd:o=i=s=Jd;(t>>=1)>1;){const e=o+n>>1,p=i+r>>1;1&t?(n=o,r=i,o=a,i=s):(o=n,i=r,n=a,r=s),a=e,s=p}const p=4*e;eu[p+0]=o,eu[p+1]=i,eu[p+2]=n,eu[p+3]=r}const tu=new Uint16Array(2178),ou=new Uint8Array(1089),iu=new Uint16Array(1089);function nu(e){return 0===e?-.03125:32===e?.03125:0}var ru=da([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]);const au={type:2,extent:Rs,loadGeometry:()=>[[new r(0,0),new r(8193,0),new r(8193,8193),new r(0,8193),new r(0,0)]]};class su{constructor(e,t,o,i,n){this.tileID=e,this.uid=ie(),this.uses=0,this.tileSize=t,this.tileZoom=o,this.buckets={},this.expirationTime=null,this.queryPadding=0,this.hasSymbolBuckets=!1,this.hasRTLText=!1,this.dependencies={},this.isRaster=n,this.expiredRequestCount=0,this.state="loading",i&&i.transform&&(this.projection=i.transform.projection)}registerFadeDuration(e){const t=e+this.timeAdded;tt.getLayer(e))).filter(Boolean);if(0!==e.length){i.layers=e,i.stateDependentLayerIds&&(i.stateDependentLayers=i.stateDependentLayerIds.map((t=>e.filter((e=>e.id===t))[0])));for(const t of e)o[t.id]=i}}return o}(e.buckets,t.style),this.hasSymbolBuckets=!1;for(const e in this.buckets){const t=this.buckets[e];if(t instanceof $b){if(this.hasSymbolBuckets=!0,!o)break;t.justReloaded=!0}}if(this.hasRTLText=!1,this.hasSymbolBuckets)for(const e in this.buckets){const t=this.buckets[e];if(t instanceof $b&&t.hasRTLText){this.hasRTLText=!0,Ur.isLoading()||Ur.isLoaded()||"deferred"!==Fr()||Hr();break}}this.queryPadding=0;for(const e in this.buckets){const o=this.buckets[e];this.queryPadding=Math.max(this.queryPadding,t.style.getLayer(e).queryRadius(o))}e.imageAtlas&&(this.imageAtlas=e.imageAtlas),e.glyphAtlasImage&&(this.glyphAtlasImage=e.glyphAtlasImage),e.lineAtlas&&(this.lineAtlas=e.lineAtlas)}else this.collisionBoxArray=new Ca}unloadVectorData(){if(this.hasData()){for(const e in this.buckets)this.buckets[e].destroy();this.buckets={},this.imageAtlas&&(this.imageAtlas=null),this.lineAtlas&&(this.lineAtlas=null),this.imageAtlasTexture&&this.imageAtlasTexture.destroy(),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.lineAtlasTexture&&this.lineAtlasTexture.destroy(),this._tileBoundsBuffer&&(this._tileBoundsBuffer.destroy(),this._tileBoundsIndexBuffer.destroy(),this._tileBoundsSegments.destroy(),this._tileBoundsBuffer=null),this._tileDebugBuffer&&(this._tileDebugBuffer.destroy(),this._tileDebugIndexBuffer.destroy(),this._tileDebugSegments.destroy(),this._tileDebugBuffer=null),this.globeGridBuffer&&(this.globeGridBuffer.destroy(),this.globeGridBuffer=null),this.globePoleBuffer&&(this.globePoleBuffer.destroy(),this.globePoleBuffer=null),this.latestFeatureIndex=null,this.state="unloaded"}}getBucket(e){return this.buckets[e.id]}upload(e){for(const t in this.buckets){const o=this.buckets[t];o.uploadPending()&&o.upload(e)}const t=e.gl;this.imageAtlas&&!this.imageAtlas.uploaded&&(this.imageAtlasTexture=new dd(e,this.imageAtlas.image,t.RGBA),this.imageAtlas.uploaded=!0),this.glyphAtlasImage&&(this.glyphAtlasTexture=new dd(e,this.glyphAtlasImage,t.ALPHA),this.glyphAtlasImage=null),this.lineAtlas&&!this.lineAtlas.uploaded&&(this.lineAtlasTexture=new dd(e,this.lineAtlas.image,t.ALPHA),this.lineAtlas.uploaded=!0)}prepare(e){this.imageAtlas&&this.imageAtlas.patchUpdatedImages(e,this.imageAtlasTexture)}queryRenderedFeatures(e,t,o,i,n,r,a,s){return this.latestFeatureIndex&&this.latestFeatureIndex.rawTileData?this.latestFeatureIndex.query({tileResult:i,pixelPosMatrix:a,transform:r,params:n,tileTransform:this.tileTransform},e,t,o):{}}querySourceFeatures(e,t){const o=this.latestFeatureIndex;if(!o||!o.rawTileData)return;const i=o.loadVTLayers(),n=t?t.sourceLayer:"",r=i._geojsonTileLayer||i[n];if(!r)return;const a=sn(t&&t.filter),{z:s,x:p,y:c}=this.tileID.canonical,l={z:s,x:p,y:c};for(let t=0;te)o=!1;else if(t)if(this.expirationTime=0;e--){const t=4*e,o=eu[t+0],i=eu[t+1],n=eu[t+2],r=eu[t+3],a=o+n>>1,s=i+r>>1,p=a+s-i,c=s+o-a,l=i*Qd+o,b=r*Qd+n,d=s*Qd+a,u=Math.hypot((tu[2*l+0]+tu[2*b+0])/2-tu[2*d+0],(tu[2*l+1]+tu[2*b+1])/2-tu[2*d+1])>=16;if(ou[d]=ou[d]||(u?1:0),e<1022){const e=(i+c>>1)*Qd+(o+p>>1),t=(r+c>>1)*Qd+(n+p>>1);ou[d]=ou[d]||ou[e]||ou[t]}}const n=new za,r=new xa;let a=0;function s(e,t){const o=t*Qd+e;return 0===iu[o]&&(n.emplaceBack(tu[2*o+0],tu[2*o+1],e*Rs/Jd,t*Rs/Jd),iu[o]=++a),iu[o]-1}function p(e,t,o,i,n,a){const c=e+o>>1,l=t+i>>1;if(Math.abs(e-n)+Math.abs(t-a)>1&&ou[l*Qd+c])p(n,a,e,t,c,l),p(o,i,n,a,c,l);else{const p=s(e,t),c=s(o,i),l=s(n,a);r.emplaceBack(p,c,l)}}return p(0,0,Jd,Jd,Jd,0),p(Jd,Jd,0,0,0,Jd),{vertices:n,indices:r}}(this.tileID.canonical,t);i=e.vertices,n=e.indices}else{i=new za,n=new xa;for(const{x:e,y:t}of o)i.emplaceBack(e,t,0,0);const e=Xp(i.int16,void 0,4);for(let t=0;te*(1-o)+t*o,[i,n]=hu(e),r=new Ta,a=function(e){const t=b(new Float64Array(16)),o=Au(e);var i,n;return M(t,t,[o,o,o]),u(t,t,((i=[])[0]=-(n=e.min)[0],i[1]=-n[1],i[2]=-n[2],i)),t}(mu(e));r.reserve(4096);for(let s=0;s<65;s++){const p=o(i[0],n[0],s/64),c=Ds(p),l=c*t-e.y,b=Math.sin(F(p)),d=Math.cos(F(p));for(let e=0;e<65;e++){const t=e/64,s=o(i[1],n[1],t),p=Ou(d,b,s);T(p,p,a);const u=Es(s);r.emplaceBack(p[0],p[1],p[2],u,c,t,l)}}return r}_createGridIndices(){const e=new xa,t=(t,o)=>{const i=65*o+t;e.emplaceBack(i+1,i,i+65),e.emplaceBack(i+65,i+65+1,i+1)};for(let e=0;e<64;e++)for(let o=0;o<64;o++)t(o,e);return e}getWirefameBuffer(e){if(!this.wireframeSegments){const t=this._createWireframeGrid();this.wireframeIndexBuffer=e.createIndexBuffer(t),this.wireframeSegments=Ls.simpleSegment(0,0,4096,t.length)}return[this.wireframeIndexBuffer,this.wireframeSegments]}_createWireframeGrid(){const e=new Ba,t=(t,o)=>{const i=65*o+t;e.emplaceBack(i,i+1),e.emplaceBack(i,i+65),e.emplaceBack(i,i+65+1)};for(let e=0;e<64;e++)for(let o=0;o<64;o++)t(o,e);return e}}function yu(e,t){if(!t.isReprojectedInTileSpace)return{scale:1<f&&(A(e,c,i,n,s,p),A(c,o,s,p,r,a))}A(b,d,i,r,n,r),A(d,u,n,r,n,a),A(u,M,n,a,i,a),A(M,b,i,a,i,r),z-=f,m-=f,h+=f,O+=f;const _=1/Math.max(h-z,O-m);return{scale:_,x:z*_,y:m*_,x2:h*_,y2:O*_,projection:t}}class vu{constructor(e){const t={},o=[];for(const i in e){const n=e[i],r=t[i]={};for(const e in n.glyphs){const t=n.glyphs[+e];if(!t||0===t.bitmap.width||0===t.bitmap.height)continue;const i=t.metrics.localGlyph?2:1,a={x:0,y:0,w:t.bitmap.width+2*i,h:t.bitmap.height+2*i};o.push(a),r[e]=a}}const{w:i,h:n}=Il(o),r=new wp({width:i||1,height:n||1});for(const o in e){const i=e[o];for(const e in i.glyphs){const n=i.glyphs[+e];if(!n||0===n.bitmap.width||0===n.bitmap.height)continue;const a=t[o][e],s=n.metrics.localGlyph?2:1;wp.copy(n.bitmap,r,{x:0,y:0},{x:a.x+s,y:a.y+s},n.bitmap)}}this.image=r,this.positions=t}}Gn("GlyphAtlas",vu);class xu{constructor(e){this.tileID=new _d(e.tileID.overscaledZ,e.tileID.wrap,e.tileID.canonical.z,e.tileID.canonical.x,e.tileID.canonical.y),this.tileZoom=e.tileZoom,this.uid=e.uid,this.zoom=e.zoom,this.canonical=e.tileID.canonical,this.pixelRatio=e.pixelRatio,this.tileSize=e.tileSize,this.source=e.source,this.overscaling=this.tileID.overscaleFactor(),this.showCollisionBoxes=e.showCollisionBoxes,this.collectResourceTiming=!!e.collectResourceTiming,this.returnDependencies=!!e.returnDependencies,this.promoteId=e.promoteId,this.enableTerrain=!!e.enableTerrain,this.isSymbolTile=e.isSymbolTile,this.tileTransform=yu(e.tileID.canonical,e.projection),this.projection=e.projection}parse(e,t,o,i,n){this.status="parsing",this.data=e,this.collisionBoxArray=new Ca;const r=new Rd(Object.keys(e.layers).sort()),a=new Gd(this.tileID,this.promoteId);a.bucketLayerIDs=[];const s={},p=new ud(256,256),c={featureIndex:a,iconDependencies:{},patternDependencies:{},glyphDependencies:{},lineAtlas:p,availableImages:o},l=t.familiesBySource[this.source];for(const t in l){const i=e.layers[t];if(!i)continue;let n=!1,p=!1;for(const e of l[t])"symbol"===e[0].type?n=!0:p=!0;if(!0===this.isSymbolTile&&!n)continue;if(!1===this.isSymbolTile&&!p)continue;1===i.version&&ue(`Vector tile source "${this.source}" layer "${t}" does not use vector tile spec v2 and therefore may have some rendering errors.`);const b=r.encode(t),d=[];for(let e=0;e=t.maxzoom||"none"!==t.visibility&&(Wu(e,this.zoom,o),(s[t.id]=t.createBucket({index:a.bucketLayerIDs.length,layers:e,zoom:this.zoom,canonical:this.canonical,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:b,sourceID:this.source,enableTerrain:this.enableTerrain,availableImages:o})).populate(d,c,this.tileID.canonical,this.tileTransform),a.bucketLayerIDs.push(e.map((e=>e.id))))}}let b,d,u,M;p.trim();const z={type:"maybePrepare",isSymbolTile:this.isSymbolTile,zoom:this.zoom},m=ce(c.glyphDependencies,(e=>Object.keys(e).map(Number)));Object.keys(m).length?i.send("getGlyphs",{uid:this.uid,stacks:m},((e,t)=>{b||(b=e,d=t,f.call(this))}),void 0,!1,z):d={};const h=Object.keys(c.iconDependencies);h.length?i.send("getImages",{icons:h,source:this.source,tileID:this.tileID,type:"icons"},((e,t)=>{b||(b=e,u=t,f.call(this))}),void 0,!1,z):u={};const O=Object.keys(c.patternDependencies);function f(){if(b)return n(b);if(d&&u&&M){const e=new vu(d),t=new jl(u,M);for(const i in s){const n=s[i];n instanceof $b?(Wu(n.layers,this.zoom,o),Sb(n,d,e.positions,u,t.iconPositions,this.showCollisionBoxes,o,this.tileID.canonical,this.tileZoom,this.projection),n.projection=this.projection.name):n.hasPattern&&(n instanceof Zc||n instanceof hc||n instanceof Ec)&&(Wu(n.layers,this.zoom,o),n.addFeatures(c,this.tileID.canonical,t.patternPositions,o))}this.status="done",n(null,{buckets:ee(s).filter((e=>!e.isEmpty())),featureIndex:a,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:e.image,lineAtlas:p,imageAtlas:t,glyphMap:this.returnDependencies?d:null,iconMap:this.returnDependencies?u:null,glyphPositions:this.returnDependencies?e.positions:null})}}O.length?i.send("getImages",{icons:O,source:this.source,tileID:this.tileID,type:"patterns"},((e,t)=>{b||(b=e,M=t,f.call(this))}),void 0,!1,z):M={},f.call(this)}}function Wu(e,t,o){const i=new Vr(t);for(const t of e)t.recalculate(i,o)}class wu{constructor(e){this.entries={},this.scheduler=e}request(e,t,o,i){const n=this.entries[e]=this.entries[e]||{callbacks:[]};if(n.result){const[e,o]=n.result;return this.scheduler?this.scheduler.add((()=>{i(e,o)}),t):i(e,o),()=>{}}return n.callbacks.push(i),n.cancel||(n.cancel=o(((o,i)=>{n.result=[o,i];for(const e of n.callbacks)this.scheduler?this.scheduler.add((()=>{e(o,i)}),t):e(o,i);setTimeout((()=>delete this.entries[e]),3e3)}))),()=>{n.result||(n.callbacks=n.callbacks.filter((e=>e!==i)),n.callbacks.length||(n.cancel(),delete this.entries[e]))}}}function Lu(e,t,o){const i=JSON.stringify(e.request);return e.data&&(this.deduped.entries[i]={result:[null,e.data]}),this.deduped.request(i,{type:"parseTile",isSymbolTile:e.isSymbolTile,zoom:e.tileZoom},(t=>{const i=st(e.request,((e,i,n,r)=>{e?t(e):i&&t(null,{vectorTile:o?void 0:new Tc.VectorTile(new Ol(i)),rawData:i,cacheControl:n,expires:r})}));return()=>{i.cancel(),t()}}),t)}const Ru=b(new Float64Array(16));class Tu{constructor(e,t){this._tr=e,this._worldSize=t}createInversionMatrix(){return Ru}createTileMatrix(e){let t,o,i;const n=e.canonical,r=b(new Float64Array(16)),a=this._tr.projection;if(a.isReprojectedInTileSpace){const s=yu(n,a);t=1,o=s.x+e.wrap*s.scale,i=s.y,M(r,r,[t/s.scale,t/s.scale,this._tr.pixelsPerMeter/this._worldSize])}else t=this._worldSize/this._tr.zoomScale(n.z),o=(n.x+Math.pow(2,n.z)*e.wrap)*t,i=n.y*t;return u(r,r,[o,i,0]),M(r,r,[t/Rs,t/Rs,1]),r}pointCoordinate(e,t,o){const i=this._tr.horizonLineFromTop(!1),n=new r(e,Math.max(i,t));return this._tr.rayIntersectionCoordinate(this._tr.pointRayIntersection(n,o))}upVector(){return[0,0,1]}upVectorScale(){return 1}}var ku={name:"albers",range:[4,7],center:[-96,37.5],parallels:[29.5,45.5],zAxisUnit:"meters",conic:!0,isReprojectedInTileSpace:!0,unsupportedLayers:["custom"],initializeConstants(){if(this.constants&&I(this.parallels,this.constants.parallels))return;const e=Math.sin(F(this.parallels[0])),t=(e+Math.sin(F(this.parallels[1])))/2,o=1+e*(2*t-e),i=Math.sqrt(o)/t;this.constants={n:t,c:o,r0:i,parallels:this.parallels}},project(e,t){this.initializeConstants();const o=F(e-this.center[0]),i=F(t),{n,c:r,r0:a}=this.constants,s=Math.sqrt(r-2*n*Math.sin(i))/n;return{x:s*Math.sin(o*n),y:s*Math.cos(o*n)-a,z:0}},unproject(e,t){this.initializeConstants();const{n:o,c:i,r0:n}=this.constants,r=n+t;let a=Math.atan2(e,Math.abs(r))*Math.sign(r);r*o<0&&(a-=Math.PI*Math.sign(e)*Math.sign(r));const s=F(this.center[0])*o;a=J(a,-Math.PI-s,Math.PI-s);const p=H(a/o)+this.center[0],c=Math.asin($((i-(e*e+r*r)*o*o)/(2*o),-1,1)),l=$(H(c),-85.051129,Ys);return new Bs(p,l)},projectTilePoint:(e,t)=>({x:e,y:t,z:0}),locationPoint:(e,t)=>e._coordinatePoint(e.locationCoordinate(t),!1),pixelsPerMeter:(e,t)=>Cs(1,e)*t,farthestPixelDistance(e){return bu(e,this.pixelsPerMeter(e.center.lat,e.worldSize))},createTileTransform:(e,t)=>new Tu(e,t)};const Bu=1.340264,Su=-.081106,Xu=893e-6,Eu=.003796,Du=Math.sqrt(3)/2;var Cu={name:"equalEarth",center:[0,0],range:[3.5,7],zAxisUnit:"meters",isReprojectedInTileSpace:!0,unsupportedLayers:["custom"],project(e,t){t=t/180*Math.PI,e=e/180*Math.PI;const o=Math.asin(Du*Math.sin(t)),i=o*o,n=i*i*i;return{x:.5*(e*Math.cos(o)/(Du*(Bu+3*Su*i+n*(7*Xu+9*Eu*i)))/Math.PI+.5),y:1-.5*(o*(Bu+Su*i+n*(Xu+Eu*i))/Math.PI+1),z:0}},unproject(e,t){e=(2*e-.5)*Math.PI;let o=t=(2*(1-t)-1)*Math.PI,i=o*o,n=i*i*i;for(let e,r,a,s=0;s<12&&(r=o*(Bu+Su*i+n*(Xu+Eu*i))-t,a=Bu+3*Su*i+n*(7*Xu+9*Eu*i),e=r/a,o=$(o-e,-Math.PI/3,Math.PI/3),i=o*o,n=i*i*i,!(Math.abs(e)<1e-12));++s);const r=Du*e*(Bu+3*Su*i+n*(7*Xu+9*Eu*i))/Math.cos(o),a=Math.asin(Math.sin(o)/Du),s=$(180*r/Math.PI,-180,180),p=$(180*a/Math.PI,-85.051129,Ys);return new Bs(s,p)},projectTilePoint:(e,t)=>({x:e,y:t,z:0}),locationPoint:(e,t)=>e._coordinatePoint(e.locationCoordinate(t),!1),pixelsPerMeter:(e,t)=>Cs(1,e)*t,farthestPixelDistance(e){return bu(e,this.pixelsPerMeter(e.center.lat,e.worldSize))},createTileTransform:(e,t)=>new Tu(e,t)},Nu={name:"equirectangular",supportsWorldCopies:!0,center:[0,0],range:[3.5,7],zAxisUnit:"meters",wrap:!0,isReprojectedInTileSpace:!0,unsupportedLayers:["custom"],project:(e,t)=>({x:.5+e/360,y:.5-t/360,z:0}),unproject(e,t){const o=360*(e-.5),i=$(360*(.5-t),-85.051129,Ys);return new Bs(o,i)},projectTilePoint:(e,t)=>({x:e,y:t,z:0}),locationPoint:(e,t)=>e._coordinatePoint(e.locationCoordinate(t),!1),pixelsPerMeter:(e,t)=>Cs(1,e)*t,farthestPixelDistance(e){return bu(e,this.pixelsPerMeter(e.center.lat,e.worldSize))},createTileTransform:(e,t)=>new Tu(e,t)};const Pu=Math.PI/2;function Iu(e){return Math.tan((Pu+e)/2)}var Yu={name:"lambertConformalConic",range:[3.5,7],zAxisUnit:"meters",center:[0,30],parallels:[30,30],conic:!0,isReprojectedInTileSpace:!0,unsupportedLayers:["custom"],initializeConstants(){if(this.constants&&I(this.parallels,this.constants.parallels))return;const e=F(this.parallels[0]),t=F(this.parallels[1]),o=Math.cos(e),i=e===t?Math.sin(e):Math.log(o/Math.cos(t))/Math.log(Iu(t)/Iu(e)),n=o*Math.pow(Iu(e),i)/i;this.constants={n:i,f:n,parallels:this.parallels}},project(e,t){this.initializeConstants(),t=F(t),e=F(e-this.center[0]);const o=1e-6,{n:i,f:n}=this.constants;n>0?t<-Pu+o&&(t=-Pu+o):t>Pu-o&&(t=Pu-o);const r=n/Math.pow(Iu(t),i),a=r*Math.sin(i*e),s=n-r*Math.cos(i*e);return{x:.5*(a/Math.PI+.5),y:1-.5*(s/Math.PI+.5),z:0}},unproject(e,t){this.initializeConstants(),e=(2*e-.5)*Math.PI,t=(2*(1-t)-.5)*Math.PI;const{n:o,f:i}=this.constants,n=i-t,r=Math.sign(n),a=Math.sign(o)*Math.sqrt(e*e+n*n);let s=Math.atan2(e,Math.abs(n))*r;n*o<0&&(s-=Math.PI*Math.sign(e)*r);const p=$(H(s/o)+this.center[0],-180,180),c=$(H(2*Math.atan(Math.pow(i/a,1/o))-Pu),-85.051129,Ys);return new Bs(p,c)},projectTilePoint:(e,t)=>({x:e,y:t,z:0}),locationPoint:(e,t)=>e._coordinatePoint(e.locationCoordinate(t),!1),pixelsPerMeter:(e,t)=>Cs(1,e)*t,farthestPixelDistance(e){return bu(e,this.pixelsPerMeter(e.center.lat,e.worldSize))},createTileTransform:(e,t)=>new Tu(e,t)},ju={name:"mercator",wrap:!0,requiresDraping:!1,supportsWorldCopies:!0,supportsTerrain:!0,supportsFog:!0,supportsFreeCamera:!0,zAxisUnit:"meters",center:[0,0],project:(e,t)=>({x:Es(e),y:Ds(t),z:0}),unproject(e,t){const o=Ns(e),i=Ps(t);return new Bs(o,i)},projectTilePoint:(e,t)=>({x:e,y:t,z:0}),locationPoint:(e,t)=>e._coordinatePoint(e.locationCoordinate(t),!1),pixelsPerMeter:(e,t)=>Cs(1,e)*t,farthestPixelDistance(e){return bu(e,this.pixelsPerMeter(e.center.lat,e.worldSize))},createTileTransform:(e,t)=>new Tu(e,t)};const Fu=F(Ys);var Hu={name:"naturalEarth",center:[0,0],range:[3.5,7],isReprojectedInTileSpace:!0,zAxisUnit:"meters",unsupportedLayers:["custom"],project(e,t){const o=(t=F(t))*t,i=o*o;return{x:.5*((e=F(e))*(.8707-.131979*o+i*(i*(.003971*o-.001529*i)-.013791))/Math.PI+.5),y:1-.5*(t*(1.007226+o*(.015085+i*(.028874*o-.044475-.005916*i)))/Math.PI+1),z:0}},unproject(e,t){e=(2*e-.5)*Math.PI;let o=t=(2*(1-t)-1)*Math.PI,i=25,n=0,r=o*o;do{r=o*o;const e=r*r;n=(o*(1.007226+r*(.015085+e*(.028874*r-.044475-.005916*e)))-t)/(1.007226+r*(.045255+e*(.259866*r-.311325-.005916*11*e))),o=$(o-n,-Fu,Fu)}while(Math.abs(n)>1e-6&&--i>0);r=o*o;const a=$(H(e/(.8707+r*(r*(r*r*r*(.003971-.001529*r)-.013791)-.131979))),-180,180),s=H(o);return new Bs(a,s)},projectTilePoint:(e,t)=>({x:e,y:t,z:0}),locationPoint:(e,t)=>e._coordinatePoint(e.locationCoordinate(t),!1),pixelsPerMeter:(e,t)=>Cs(1,e)*t,farthestPixelDistance(e){return bu(e,this.pixelsPerMeter(e.center.lat,e.worldSize))},createTileTransform:(e,t)=>new Tu(e,t)};const Uu=F(Ys),Vu={albers:ku,equalEarth:Cu,equirectangular:Nu,lambertConformalConic:Yu,mercator:ju,naturalEarth:Hu,winkelTripel:{name:"winkelTripel",center:[0,0],range:[3.5,7],zAxisUnit:"meters",isReprojectedInTileSpace:!0,unsupportedLayers:["custom"],project(e,t){t=F(t),e=F(e);const o=Math.cos(t),i=2/Math.PI,n=Math.acos(o*Math.cos(e/2)),r=Math.sin(n)/n,a=.5*(e*i+2*o*Math.sin(e/2)/r)||0,s=.5*(t+Math.sin(t)/r)||0;return{x:.5*(a/Math.PI+.5),y:1-.5*(s/Math.PI+1),z:0}},unproject(e,t){let o=e=(2*e-.5)*Math.PI,i=t=(2*(1-t)-1)*Math.PI,n=25;const r=1e-6;let a=0,s=0;do{const n=Math.cos(i),r=Math.sin(i),p=2*r*n,c=r*r,l=n*n,b=Math.cos(o/2),d=Math.sin(o/2),u=2*b*d,M=d*d,z=1-l*b*b,m=z?1/z:0,h=z?Math.acos(n*b)*Math.sqrt(1/z):0,O=.5*(2*h*n*d+2*o/Math.PI)-e,f=.5*(h*r+i)-t,A=.5*m*(l*M+h*n*b*c)+1/Math.PI,_=m*(u*p/4-h*r*d),g=.125*m*(p*d-h*r*l*u),q=.5*m*(c*b+h*M*n)+.5,y=_*g-q*A;a=(f*_-O*q)/y,s=(O*g-f*A)/y,o=$(o-a,-Math.PI,Math.PI),i=$(i-s,-Uu,Uu)}while((Math.abs(a)>r||Math.abs(s)>r)&&--n>0);return new Bs(H(o),H(i))},projectTilePoint:(e,t)=>({x:e,y:t,z:0}),locationPoint:(e,t)=>e._coordinatePoint(e.locationCoordinate(t),!1),pixelsPerMeter:(e,t)=>Cs(1,e)*t,farthestPixelDistance(e){return bu(e,this.pixelsPerMeter(e.center.lat,e.worldSize))},createTileTransform:(e,t)=>new Tu(e,t)}};e.ARRAY_TYPE=c,e.AUTH_ERR_MSG=Se,e.Aabb=Op,e.Actor=class{constructor(e,t,o){this.target=e,this.parent=t,this.mapId=o,this.callbacks={},this.cancelCallbacks={},se(["receive"],this),this.target.addEventListener("message",this.receive,!1),this.globalScope=me()?e:s,this.scheduler=new hd}send(e,t,o,i,n=!1,r){const a=Math.round(1e18*Math.random()).toString(36).substring(0,10);o&&(o.metadata=r,this.callbacks[a]=o);const s=ge(this.globalScope)?void 0:[];return this.target.postMessage({id:a,type:e,hasCallback:!!o,targetMapId:i,mustQueue:n,sourceMapId:this.mapId,data:Kn(t,s)},s),{cancel:()=>{o&&delete this.callbacks[a],this.target.postMessage({id:a,type:"",targetMapId:i,sourceMapId:this.mapId})}}}receive(e){const t=e.data,o=t.id;if(o&&(!t.targetMapId||this.mapId===t.targetMapId))if(""===t.type){const e=this.cancelCallbacks[o];delete this.cancelCallbacks[o],e&&e.cancel()}else if(t.mustQueue||me()){const e=this.callbacks[o];this.cancelCallbacks[o]=this.scheduler.add((()=>this.processTask(o,t)),e&&e.metadata||{type:"message"})}else this.processTask(o,t)}processTask(e,t){if(""===t.type){const o=this.callbacks[e];delete this.callbacks[e],o&&(t.error?o(Jn(t.error)):o(null,Jn(t.data)))}else{const o=ge(this.globalScope)?void 0:[],i=t.hasCallback?(t,i)=>{delete this.cancelCallbacks[e],this.target.postMessage({id:e,type:"",sourceMapId:this.mapId,error:t?Kn(t):null,data:Kn(i,o)},o)}:e=>{},n=Jn(t.data);if(this.parent[t.type])this.parent[t.type](t.sourceMapId,n,i);else if(this.parent.getWorkerSource){const e=t.type.split(".");this.parent.getWorkerSource(t.sourceMapId,e[0],n.source)[e[1]](n,i)}else i(new Error(`Could not find function ${t.type}`))}}remove(){this.scheduler.remove(),this.target.removeEventListener("message",this.receive,!1)}},e.CanonicalTileID=fd,e.Color=Ut,e.ColorMode=xd,e.CullFaceMode=Ld,e.DEMData=Yd,e.DataConstantProperty=oa,e.DedupedRequest=wu,e.DepthMode=qd,e.EXTENT=Rs,e.Elevation=class{getAtPointOrZero(e,t=0){return this.getAtPoint(e,t)||0}getAtPoint(e,t,o=!0){null==t&&(t=null);const i=this._source();if(!i)return t;if(e.y<0||e.y>1)return t;const n=i.getSource().maxzoom,r=1<{const i=this.getAtTileOffset(e,o.x,o.y),n=t.upVector(e.canonical,o.x,o.y);return x(n,n,i*t.upVectorScale(e.canonical)),n}}getForTilePoints(e,t,o,i){const n=Vd.create(this,e,i);return!!n&&(t.forEach((e=>{e[2]=this.exaggeration()*n.getElevationAt(e[0],e[1],o)})),!0)}getMinMaxForTile(e){const t=this.findDEMTileFor(e);if(!t||!t.dem)return null;const o=t.dem.tree,i=t.tileID,n=1<this._skuTokenExpiresAt}transformRequest(e,t){return this._transformRequestFn&&this._transformRequestFn(e,t)||{url:e}}normalizeStyleURL(e,t){if(!Xe(e))return e;const o=Ce(e);return o.path=`/styles/v1${o.path}`,this._makeAPIURL(o,this._customAccessToken||t)}normalizeGlyphsURL(e,t){if(!Xe(e))return e;const o=Ce(e);return o.path=`/fonts/v1${o.path}`,this._makeAPIURL(o,this._customAccessToken||t)}normalizeSourceURL(e,t){if(!Xe(e))return e;const o=Ce(e);return o.path=`/v4/${o.authority}.json`,o.params.push("secure"),this._makeAPIURL(o,this._customAccessToken||t)}normalizeSpriteURL(e,t,o,i){const n=Ce(e);return Xe(e)?(n.path=`/styles/v1${n.path}/sprite${t}${o}`,this._makeAPIURL(n,this._customAccessToken||i)):(n.path+=`${t}${o}`,Ne(n))}normalizeTileURL(e,t,o){if(this._isSkuTokenExpired()&&this._createSkuToken(),e&&!Xe(e))return e;const i=Ce(e);i.path=i.path.replace(/(\.(png|jpg)\d*)(?=$)/,`${t||o&&"raster"!==i.authority&&512===o?"@2x":""}${We.supported?".webp":"$1"}`),"raster"===i.authority?i.path=`/${xe.RASTER_URL_PREFIX}${i.path}`:(i.path=i.path.replace(/^.+\/v4\//,"/"),i.path=`/${xe.TILE_URL_VERSION}${i.path}`);const n=this._customAccessToken||function(e){for(const t of e){const e=t.match(/^access_token=(.*)$/);if(e)return e[1]}return null}(i.params)||xe.ACCESS_TOKEN;return xe.REQUIRE_ACCESS_TOKEN&&n&&this._skuToken&&i.params.push(`sku=${this._skuToken}`),this._makeAPIURL(i,n)}canonicalizeTileURL(e,t){const o=Ce(e);if(!o.path.match(/^(\/v4\/|\/raster\/v1\/)/)||!o.path.match(/\.[\w]+$/))return e;let i="mapbox://";o.path.match(/^\/raster\/v1\//)?i+=`raster/${o.path.replace(`/${xe.RASTER_URL_PREFIX}/`,"")}`:i+=`tiles/${o.path.replace(`/${xe.TILE_URL_VERSION}/`,"")}`;let n=o.params;return t&&(n=n.filter((e=>!e.match(/^access_token=/)))),n.length&&(i+=`?${n.join("&")}`),i}canonicalizeTileset(e,t){const o=!!t&&Xe(t),i=[];for(const t of e.tiles||[])Ee(t)?i.push(this.canonicalizeTileURL(t,o)):i.push(t);return i}_makeAPIURL(e,t){const o="See https://www.mapbox.com/api-documentation/#access-tokens-and-token-scopes",i=Ce(xe.API_URL);if(e.protocol=i.protocol,e.authority=i.authority,"http"===e.protocol){const t=e.params.indexOf("secure");t>=0&&e.params.splice(t,1)}if("/"!==i.path&&(e.path=`${i.path}${e.path}`),!xe.REQUIRE_ACCESS_TOKEN)return Ne(e);if(t=t||xe.ACCESS_TOKEN,!this._silenceAuthErrors){if(!t)throw new Error(`An API access token is required to use Mapbox GL. ${o}`);if("s"===t[0])throw new Error(`Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). ${o}`)}return e.params=e.params.filter((e=>-1===e.indexOf("access_token"))),e.params.push(`access_token=${t||""}`),Ne(e)}},e.ResourceType=it,e.SegmentVector=Ls,e.SourceCache=Fd,e.StencilMode=vd,e.StructArrayLayout1ui2=Sa,e.StructArrayLayout2f1f2i16=ya,e.StructArrayLayout2i4=Ma,e.StructArrayLayout2ui4=Ba,e.StructArrayLayout3f12=ha,e.StructArrayLayout3ui6=xa,e.StructArrayLayout4i8=za,e.Texture=dd,e.Tile=su,e.Transitionable=$r,e.Uniform1f=as,e.Uniform1i=class extends rs{constructor(e,t){super(e,t),this.current=0}set(e){this.current!==e&&(this.current=e,this.gl.uniform1i(this.location,e))}},e.Uniform2f=class extends rs{constructor(e,t){super(e,t),this.current=[0,0]}set(e){e[0]===this.current[0]&&e[1]===this.current[1]||(this.current=e,this.gl.uniform2f(this.location,e[0],e[1]))}},e.Uniform3f=class extends rs{constructor(e,t){super(e,t),this.current=[0,0,0]}set(e){e[0]===this.current[0]&&e[1]===this.current[1]&&e[2]===this.current[2]||(this.current=e,this.gl.uniform3f(this.location,e[0],e[1],e[2]))}},e.Uniform4f=ss,e.UniformColor=ps,e.UniformMatrix2f=class extends rs{constructor(e,t){super(e,t),this.current=bs}set(e){for(let t=0;t<4;t++)if(e[t]!==this.current[t]){this.current=e,this.gl.uniformMatrix2fv(this.location,!1,e);break}}},e.UniformMatrix3f=class extends rs{constructor(e,t){super(e,t),this.current=ls}set(e){for(let t=0;t<9;t++)if(e[t]!==this.current[t]){this.current=e,this.gl.uniformMatrix3fv(this.location,!1,e);break}}},e.UniformMatrix4f=class extends rs{constructor(e,t){super(e,t),this.current=cs}set(e){if(e[12]!==this.current[12]||e[0]!==this.current[0])return this.current=e,void this.gl.uniformMatrix4fv(this.location,!1,e);for(let t=1;t<16;t++)if(e[t]!==this.current[t]){this.current=e,this.gl.uniformMatrix4fv(this.location,!1,e);break}}},e.UnwrappedTileID=Ad,e.ValidationError=_t,e.VectorTileWorkerSource=class extends ft{constructor(e,t,o,i,n){super(),this.actor=e,this.layerIndex=t,this.availableImages=o,this.loadVectorData=n||Lu,this.loading={},this.loaded={},this.deduped=new wu(e.scheduler),this.isSpriteLoaded=i,this.scheduler=e.scheduler}loadTile(e,t){const o=e.uid,i=e&&e.request,n=i&&i.collectResourceTiming,r=this.loading[o]=new xu(e);r.abort=this.loadVectorData(e,((a,s)=>{const p=!this.loading[o];if(delete this.loading[o],p||a||!s)return r.status="done",p||(this.loaded[o]=r),t(a);const c=s.rawData,l={};s.expires&&(l.expires=s.expires),s.cacheControl&&(l.cacheControl=s.cacheControl),r.vectorTile=s.vectorTile||new Tc.VectorTile(new Ol(c));const b=()=>{r.parse(r.vectorTile,this.layerIndex,this.availableImages,this.actor,((e,o)=>{if(e||!o)return t(e);const r={};if(n){const e=md(i);e.length>0&&(r.resourceTiming=JSON.parse(JSON.stringify(e)))}t(null,te({rawTileData:c.slice(0)},o,l,r))}))};this.isSpriteLoaded?b():this.once("isSpriteLoaded",(()=>{this.scheduler?this.scheduler.add(b,{type:"parseTile",isSymbolTile:e.isSymbolTile,zoom:e.tileZoom}):b()})),this.loaded=this.loaded||{},this.loaded[o]=r}))}reloadTile(e,t){const o=this.loaded,i=e.uid,n=this;if(o&&o[i]){const r=o[i];r.showCollisionBoxes=e.showCollisionBoxes,r.enableTerrain=!!e.enableTerrain,r.projection=e.projection;const a=(e,o)=>{const i=r.reloadCallback;i&&(delete r.reloadCallback,r.parse(r.vectorTile,n.layerIndex,this.availableImages,n.actor,i)),t(e,o)};"parsing"===r.status?r.reloadCallback=a:"done"===r.status&&(r.vectorTile?r.parse(r.vectorTile,this.layerIndex,this.availableImages,this.actor,a):a())}}abortTile(e,t){const o=e.uid,i=this.loading[o];i&&(i.abort&&i.abort(),delete this.loading[o]),t()}removeTile(e,t){const o=this.loaded,i=e.uid;o&&o[i]&&delete o[i],t()}},e.WritingMode=Fl,e.ZoomHistory=Qn,e.add=g,e.addDynamicAttributes=Ub,e.adjoint=function(e,t){var o=t[0],i=t[1],n=t[2],r=t[3],a=t[4],s=t[5],p=t[6],c=t[7],l=t[8];return e[0]=a*l-s*c,e[1]=n*c-i*l,e[2]=i*s-n*a,e[3]=s*p-r*l,e[4]=o*l-n*p,e[5]=n*r-o*s,e[6]=r*c-a*p,e[7]=i*p-o*c,e[8]=o*a-i*r,e},e.asyncAll=Q,e.bezier=G,e.bindAll=se,e.boundsAttributes=ru,e.bufferConvexPolygon=function(e,t){const o=[];for(let i=0;iQe&&(e.getActor().send("enforceCacheSizeLimit",Je),ot=0)},e.calculateGlobeMatrix=gu,e.calculateGlobeMercatorMatrix=function(e){const t=e.worldSize,o=$(e.center.lat,-85.051129,Ys),i=new r(Es(e.center.lng)*t,Ds(o)*t),n=Cs(1,e.center.lat)*t,a=e.pixelsPerMeter,s=t/(n/e.pixelsPerMeter),p=b(new Float64Array(16));return u(p,p,[i.x,i.y,0]),M(p,p,[s,s,a]),p},e.clamp=$,e.clearTileCache=function(e){const t=s.caches.delete(Ze);e&&t.catch(e).then((()=>e()))},e.clipLine=Mb,e.clone=function(e){var t=new c(16);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t},e.clone$1=be,e.collisionCircleLayout=rl,e.config=xe,e.conjugate=function(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e[3]=t[3],e},e.create=function(){var e=new c(16);return c!=Float32Array&&(e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0),e[0]=1,e[5]=1,e[10]=1,e[15]=1,e},e.create$1=l,e.createExpression=Ui,e.createLayout=da,e.createStyleLayer=function(e){return"custom"===e.type?new id(e):new ad[e.type](e)},e.cross=R,e.degToRad=F,e.div=function(e,t,o){return e[0]=t[0]/o[0],e[1]=t[1]/o[1],e[2]=t[2]/o[2],e},e.dot=L,e.ease=Z,e.easeCubicInOut=V,e.emitValidationErrors=Yn,e.endsWith=pe,e.enforceCacheSizeLimit=function(e){et(),$e&&$e.then((t=>{t.keys().then((o=>{for(let i=0;ir&&(i+=(e[n]-r)*(e[n]-r)),t[n]{}}},e.globeBuffersForTileMesh=function(e,t,o,i){const n=e.context,r=e.transform;let a=t.globeGridBuffer,s=t.globePoleBuffer;if(!a){const e=qu.createGridVertices(o.canonical);a=t.globeGridBuffer=n.createVertexBuffer(e,lu,!1)}if(!s){const e=qu.createPoleTriangleVertices(i,r.tileSize*i,0===o.canonical.y);s=t.globePoleBuffer=n.createVertexBuffer(e,lu,!1)}return[a,s]},e.globeDenormalizeECEF=_u,e.globeMatrixForTile=function(e,t){const o=_u(mu(e)),i=((n=new Float64Array(16))[0]=(r=t)[0],n[1]=r[1],n[2]=r[2],n[3]=r[3],n[4]=r[4],n[5]=r[5],n[6]=r[6],n[7]=r[7],n[8]=r[8],n[9]=r[9],n[10]=r[10],n[11]=r[11],n[12]=r[12],n[13]=r[13],n[14]=r[14],n[15]=r[15],n);var n,r;return h(i,i,o),i},e.globePoleMatrixForTile=function(e,t,o){const i=b(new Float64Array(16)),n=Math.pow(2,e.z),r=(e.x-n/2)/n*Math.PI*2,a=o.point,s=o.worldSize/(o.tileSize*n);return u(i,i,[a.x,a.y,-o.worldSize/Math.PI/2]),M(i,i,[s,s,s]),z(i,i,F(-o._center.lat)),m(i,i,F(-o._center.lng)),m(i,i,r),t&&M(i,i,[1,-1,1]),i},e.globeTileBounds=mu,e.globeToMercatorTransition=function(e){return K(5,6,e)},e.identity=b,e.identity$1=N,e.invert=function(e,t){var o=t[0],i=t[1],n=t[2],r=t[3],a=t[4],s=t[5],p=t[6],c=t[7],l=t[8],b=t[9],d=t[10],u=t[11],M=t[12],z=t[13],m=t[14],h=t[15],O=o*s-i*a,f=o*p-n*a,A=o*c-r*a,_=i*p-n*s,g=i*c-r*s,q=n*c-r*p,y=l*z-b*M,v=l*m-d*M,x=l*h-u*M,W=b*m-d*z,w=b*h-u*z,L=d*h-u*m,R=O*L-f*w+A*W+_*x-g*v+q*y;return R?(e[0]=(s*L-p*w+c*W)*(R=1/R),e[1]=(n*w-i*L-r*W)*R,e[2]=(z*q-m*g+h*_)*R,e[3]=(d*g-b*q-u*_)*R,e[4]=(p*x-a*L-c*v)*R,e[5]=(o*L-n*x+r*v)*R,e[6]=(m*A-M*q-h*f)*R,e[7]=(l*q-d*A+u*f)*R,e[8]=(a*w-s*x+c*y)*R,e[9]=(i*x-o*w-r*y)*R,e[10]=(M*g-z*A+h*O)*R,e[11]=(b*A-l*g-u*O)*R,e[12]=(s*v-a*W-p*y)*R,e[13]=(o*W-i*v+n*y)*R,e[14]=(z*f-M*_-m*O)*R,e[15]=(l*_-b*f+d*O)*R,e):null},e.isMapAuthenticated=function(e){return Ge.has(e)},e.isMapboxURL=Xe,e.latFromMercatorY=Ps,e.len=E,e.length=A,e.length$1=function(e){return Math.hypot(e[0],e[1],e[2],e[3])},e.loadVectorTile=Lu,e.makeRequest=at,e.mercatorXfromLng=Es,e.mercatorYfromLat=Ds,e.mercatorZfromAltitude=Cs,e.mul=h,e.mul$1=X,e.multiply=function(e,t,o){var i=t[0],n=t[1],r=t[2],a=t[3],s=t[4],p=t[5],c=t[6],l=t[7],b=t[8],d=o[0],u=o[1],M=o[2],z=o[3],m=o[4],h=o[5],O=o[6],f=o[7],A=o[8];return e[0]=d*i+u*a+M*c,e[1]=d*n+u*s+M*l,e[2]=d*r+u*p+M*b,e[3]=z*i+m*a+h*c,e[4]=z*n+m*s+h*l,e[5]=z*r+m*p+h*b,e[6]=O*i+f*a+A*c,e[7]=O*n+f*s+A*l,e[8]=O*r+f*p+A*b,e},e.multiply$1=d,e.multiply$2=y,e.nextPowerOfTwo=re,e.normalize=w,e.normalize$1=function(e,t){var o=t[0],i=t[1],n=t[2],r=t[3],a=o*o+i*i+n*n+r*r;return a>0&&(a=1/Math.sqrt(a)),e[0]=o*a,e[1]=i*a,e[2]=n*a,e[3]=r*a,e},e.number=No,e.ortho=function(e,t,o,i,n,r,a){var s=1/(t-o),p=1/(i-n),c=1/(r-a);return e[0]=-2*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*p,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*c,e[11]=0,e[12]=(t+o)*s,e[13]=(n+i)*p,e[14]=(a+r)*c,e[15]=1,e},e.pbf=Ol,e.perspective=function(e,t,o,i,n){var r,a=1/Math.tan(t/2);return e[0]=a/o,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=-1,e[12]=0,e[13]=0,e[15]=0,null!=n&&n!==1/0?(e[10]=(n+i)*(r=1/(i-n)),e[14]=2*n*i*r):(e[10]=-1,e[14]=-2*i),e},e.pick=function(e,t){const o={};for(let i=0;ithis._layers[e.id])),o=t[0];if("none"===o.visibility)continue;const i=o.source||"";let n=this.familiesBySource[i];n||(n=this.familiesBySource[i]={});const r=o.sourceLayer||"_geojsonTileLayer";let a=n[r];a||(a=n[r]=[]),a.push(t)}}}const{ImageBitmap:n}=e.window;class r{loadTile(t,o){const{uid:i,encoding:r,rawImageData:a,padding:s,buildQuadTree:p}=t,c=n&&a instanceof n?this.getImageData(a,s):a;o(null,new e.DEMData(i,c,r,s<1,p))}getImageData(t,o){this.offscreenCanvas&&this.offscreenCanvasContext||(this.offscreenCanvas=new OffscreenCanvas(t.width,t.height),this.offscreenCanvasContext=this.offscreenCanvas.getContext("2d")),this.offscreenCanvas.width=t.width,this.offscreenCanvas.height=t.height,this.offscreenCanvasContext.drawImage(t,0,0,t.width,t.height);const i=this.offscreenCanvasContext.getImageData(-o,-o,t.width+2*o,t.height+2*o);return this.offscreenCanvasContext.clearRect(0,0,this.offscreenCanvas.width,this.offscreenCanvas.height),new e.RGBAImage({width:i.width,height:i.height},i.data)}}var a=function e(t,o){var i,n=t&&t.type;if("FeatureCollection"===n)for(i=0;i=Math.abs(s)?o-p+s:s-p+o,o=p}o+i>=0!=!!t&&e.reverse()}const c=e.vectorTile.VectorTileFeature.prototype.toGeoJSON;class l{constructor(t){this._feature=t,this.extent=e.EXTENT,this.type=t.type,this.properties=t.tags,"id"in t&&!isNaN(t.id)&&(this.id=parseInt(t.id,10))}loadGeometry(){if(1===this._feature.type){const t=[];for(const o of this._feature.geometry)t.push([new e.pointGeometry(o[0],o[1])]);return t}{const t=[];for(const o of this._feature.geometry){const i=[];for(const t of o)i.push(new e.pointGeometry(t[0],t[1]));t.push(i)}return t}}toGeoJSON(e,t,o){return c.call(this,e,t,o)}}class b{constructor(t){this.layers={_geojsonTileLayer:this},this.name="_geojsonTileLayer",this.extent=e.EXTENT,this.length=t.length,this._features=t}feature(e){return new l(this._features[e])}}var d=e.vectorTile.VectorTileFeature,u=M;function M(e,t){this.options=t||{},this.features=e,this.length=e.length}function z(e,t){this.id="number"==typeof e.id?e.id:void 0,this.type=e.type,this.rawGeometry=1===e.type?[e.geometry]:e.geometry,this.properties=e.tags,this.extent=t||4096}M.prototype.feature=function(e){return new z(this.features[e],this.options.extent)},z.prototype.loadGeometry=function(){var t=this.rawGeometry;this.geometry=[];for(var o=0;o>31}function y(e,t){for(var o=e.loadGeometry(),i=e.type,n=0,r=0,a=o.length,s=0;s>1;W(e,t,a,i,n,r%2),x(e,t,o,i,a-1,r+1),x(e,t,o,a+1,n,r+1)}function W(e,t,o,i,n,r){for(;n>i;){if(n-i>600){const a=n-i+1,s=o-i+1,p=Math.log(a),c=.5*Math.exp(2*p/3),l=.5*Math.sqrt(p*c*(a-c)/a)*(s-a/2<0?-1:1);W(e,t,o,Math.max(i,Math.floor(o-s*c/a+l)),Math.min(n,Math.floor(o+(a-s)*c/a+l)),r)}const a=t[2*o+r];let s=i,p=n;for(w(e,t,i,o),t[2*n+r]>a&&w(e,t,i,n);sa;)p--}t[2*i+r]===a?w(e,t,i,p):(p++,w(e,t,p,n)),p<=o&&(i=p+1),o<=p&&(n=p-1)}}function w(e,t,o,i){L(e,o,i),L(t,2*o,2*i),L(t,2*o+1,2*i+1)}function L(e,t,o){const i=e[t];e[t]=e[o],e[o]=i}function R(e,t,o,i){const n=e-o,r=t-i;return n*n+r*r}m.fromVectorTileJs=O,m.fromGeojsonVt=function(e,t){t=t||{};var o={};for(var i in e)o[i]=new u(e[i].features,t),o[i].name=i,o[i].version=t.version,o[i].extent=t.extent;return O({layers:o})},m.GeoJSONWrapper=h;const T=e=>e[0],k=e=>e[1];class B{constructor(e,t=T,o=k,i=64,n=Float64Array){this.nodeSize=i,this.points=e;const r=e.length<65536?Uint16Array:Uint32Array,a=this.ids=new r(e.length),s=this.coords=new n(2*e.length);for(let i=0;i=o&&c<=n&&l>=i&&l<=r&&p.push(e[a]);continue}const M=Math.floor((u+d)/2);c=t[2*M],l=t[2*M+1],c>=o&&c<=n&&l>=i&&l<=r&&p.push(e[M]);const z=(b+1)%2;(0===b?o<=c:i<=l)&&(s.push(u),s.push(M-1),s.push(z)),(0===b?n>=c:r>=l)&&(s.push(M+1),s.push(d),s.push(z))}return p}(this.ids,this.coords,e,t,o,i,this.nodeSize)}within(e,t,o){return function(e,t,o,i,n,r){const a=[0,e.length-1,0],s=[],p=n*n;for(;a.length;){const c=a.pop(),l=a.pop(),b=a.pop();if(l-b<=r){for(let n=b;n<=l;n++)R(t[2*n],t[2*n+1],o,i)<=p&&s.push(e[n]);continue}const d=Math.floor((b+l)/2),u=t[2*d],M=t[2*d+1];R(u,M,o,i)<=p&&s.push(e[d]);const z=(c+1)%2;(0===c?o-n<=u:i-n<=M)&&(a.push(b),a.push(d-1),a.push(z)),(0===c?o+n>=u:i+n>=M)&&(a.push(d+1),a.push(l),a.push(z))}return s}(this.ids,this.coords,e,t,o,this.nodeSize)}}const S={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:e=>e},X=Math.fround||(E=new Float32Array(1),e=>(E[0]=+e,E[0]));var E;class D{constructor(e){this.options=H(Object.create(S),e),this.trees=new Array(this.options.maxZoom+1)}load(e){const{log:t,minZoom:o,maxZoom:i,nodeSize:n}=this.options;t&&console.time("total time");const r=`prepare ${e.length} points`;t&&console.time(r),this.points=e;let a=[];for(let t=0;t=o;e--){const o=+Date.now();a=this._cluster(a,e),this.trees[e]=new B(a,U,V,n,Float32Array),t&&console.log("z%d: %d clusters in %dms",e,a.length,+Date.now()-o)}return t&&console.timeEnd("total time"),this}getClusters(e,t){let o=((e[0]+180)%360+360)%360-180;const i=Math.max(-90,Math.min(90,e[1]));let n=180===e[2]?180:((e[2]+180)%360+360)%360-180;const r=Math.max(-90,Math.min(90,e[3]));if(e[2]-e[0]>=360)o=-180,n=180;else if(o>n){const e=this.getClusters([o,i,180,r],t),a=this.getClusters([-180,i,n,r],t);return e.concat(a)}const a=this.trees[this._limitZoom(t)],s=a.range(Y(o),j(r),Y(n),j(i)),p=[];for(const e of s){const t=a.points[e];p.push(t.numPoints?P(t):this.points[t.index])}return p}getChildren(e){const t=this._getOriginId(e),o=this._getOriginZoom(e),i="No cluster with the specified id.",n=this.trees[o];if(!n)throw new Error(i);const r=n.points[t];if(!r)throw new Error(i);const a=this.options.radius/(this.options.extent*Math.pow(2,o-1)),s=n.within(r.x,r.y,a),p=[];for(const t of s){const o=n.points[t];o.parentId===e&&p.push(o.numPoints?P(o):this.points[o.index])}if(0===p.length)throw new Error(i);return p}getLeaves(e,t,o){const i=[];return this._appendLeaves(i,e,t=t||10,o=o||0,0),i}getTile(e,t,o){const i=this.trees[this._limitZoom(e)],n=Math.pow(2,e),{extent:r,radius:a}=this.options,s=a/r,p=(o-s)/n,c=(o+1+s)/n,l={features:[]};return this._addTileFeatures(i.range((t-s)/n,p,(t+1+s)/n,c),i.points,t,o,n,l),0===t&&this._addTileFeatures(i.range(1-s/n,p,1,c),i.points,n,o,n,l),t===n-1&&this._addTileFeatures(i.range(0,p,s/n,c),i.points,-1,o,n,l),l.features.length?l:null}getClusterExpansionZoom(e){let t=this._getOriginZoom(e)-1;for(;t<=this.options.maxZoom;){const o=this.getChildren(e);if(t++,1!==o.length)break;e=o[0].properties.cluster_id}return t}_appendLeaves(e,t,o,i,n){const r=this.getChildren(t);for(const t of r){const r=t.properties;if(r&&r.cluster?n+r.point_count<=i?n+=r.point_count:n=this._appendLeaves(e,r.cluster_id,o,i,n):nt&&(b+=o.numPoints||1)}if(b>l&&b>=a){let e=n.x*l,a=n.y*l,s=r&&l>1?this._map(n,!0):null;const d=(i<<5)+(t+1)+this.points.length;for(const o of c){const i=p.points[o];if(i.zoom<=t)continue;i.zoom=t;const c=i.numPoints||1;e+=i.x*c,a+=i.y*c,i.parentId=d,r&&(s||(s=this._map(n,!0)),r(s,this._map(i)))}n.parentId=d,o.push(C(e/b,a/b,d,b,s))}else if(o.push(n),b>1)for(const e of c){const i=p.points[e];i.zoom<=t||(i.zoom=t,o.push(i))}}return o}_getOriginId(e){return e-this.points.length>>5}_getOriginZoom(e){return(e-this.points.length)%32}_map(e,t){if(e.numPoints)return t?H({},e.properties):e.properties;const o=this.points[e.index].properties,i=this.options.map(o);return t&&i===o?H({},i):i}}function C(e,t,o,i,n){return{x:X(e),y:X(t),zoom:1/0,id:o,parentId:-1,numPoints:i,properties:n}}function N(e,t){const[o,i]=e.geometry.coordinates;return{x:X(Y(o)),y:X(j(i)),zoom:1/0,index:t,parentId:-1}}function P(e){return{type:"Feature",id:e.id,properties:I(e),geometry:{type:"Point",coordinates:[(t=e.x,360*(t-.5)),F(e.y)]}};var t}function I(e){const t=e.numPoints,o=t>=1e4?`${Math.round(t/1e3)}k`:t>=1e3?Math.round(t/100)/10+"k":t;return H(H({},e.properties),{cluster:!0,cluster_id:e.id,point_count:t,point_count_abbreviated:o})}function Y(e){return e/360+.5}function j(e){const t=Math.sin(e*Math.PI/180),o=.5-.25*Math.log((1+t)/(1-t))/Math.PI;return o<0?0:o>1?1:o}function F(e){const t=(180-360*e)*Math.PI/180;return 360*Math.atan(Math.exp(t))/Math.PI-90}function H(e,t){for(const o in t)e[o]=t[o];return e}function U(e){return e.x}function V(e){return e.y}function G(e,t,o,i){for(var n,r=i,a=o-t>>1,s=o-t,p=e[t],c=e[t+1],l=e[o],b=e[o+1],d=t+3;dr)n=d,r=u;else if(u===r){var M=Math.abs(d-a);Mi&&(n-t>3&&G(e,t,n,i),e[n+2]=r,o-n>3&&G(e,n,o,i))}function Z(e,t,o,i,n,r){var a=n-o,s=r-i;if(0!==a||0!==s){var p=((e-o)*a+(t-i)*s)/(a*a+s*s);p>1?(o=n,i=r):p>0&&(o+=a*p,i+=s*p)}return(a=e-o)*a+(s=t-i)*s}function $(e,t,o,i){var n={id:void 0===e?null:e,type:t,geometry:o,tags:i,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};return function(e){var t=e.geometry,o=e.type;if("Point"===o||"MultiPoint"===o||"LineString"===o)K(e,t);else if("Polygon"===o||"MultiLineString"===o)for(var i=0;i0&&(a+=i?(n*c-p*r)/2:Math.sqrt(Math.pow(p-n,2)+Math.pow(c-r,2))),n=p,r=c}var l=t.length-3;t[2]=1,G(t,0,l,o),t[l+2]=1,t.size=Math.abs(a),t.start=0,t.end=t.size}function te(e,t,o,i){for(var n=0;n1?1:o}function ne(e,t,o,i,n,r,a,s){if(i/=t,r>=(o/=t)&&a=i)return null;for(var p=[],c=0;c=o&&M=i)){var z=[];if("Point"===d||"MultiPoint"===d)re(b,z,o,i,n);else if("LineString"===d)ae(b,z,o,i,n,!1,s.lineMetrics);else if("MultiLineString"===d)pe(b,z,o,i,n,!1);else if("Polygon"===d)pe(b,z,o,i,n,!0);else if("MultiPolygon"===d)for(var m=0;m=o&&a<=i&&(t.push(e[r]),t.push(e[r+1]),t.push(e[r+2]))}}function ae(e,t,o,i,n,r,a){for(var s,p,c=se(e),l=0===n?le:be,b=e.start,d=0;do&&(p=l(c,u,M,m,h,o),a&&(c.start=b+s*p)):O>i?f=o&&(p=l(c,u,M,m,h,o),A=!0),f>i&&O<=i&&(p=l(c,u,M,m,h,i),A=!0),!r&&A&&(a&&(c.end=b+s*p),t.push(c),c=se(e)),a&&(b+=s)}var _=e.length-3;u=e[_],M=e[_+1],z=e[_+2],(O=0===n?u:M)>=o&&O<=i&&ce(c,u,M,z),_=c.length-3,r&&_>=3&&(c[_]!==c[0]||c[_+1]!==c[1])&&ce(c,c[0],c[1],c[2]),c.length&&t.push(c)}function se(e){var t=[];return t.size=e.size,t.start=e.start,t.end=e.end,t}function pe(e,t,o,i,n,r){for(var a=0;aa.maxX&&(a.maxX=l),b>a.maxY&&(a.maxY=b)}return a}function he(e,t,o,i){var n=t.geometry,r=t.type,a=[];if("Point"===r||"MultiPoint"===r)for(var s=0;s0&&t.size<(n?a:i))o.numPoints+=t.length/3;else{for(var s=[],p=0;pa)&&(o.numSimplified++,s.push(t[p]),s.push(t[p+1])),o.numPoints++;n&&function(e,t){for(var o=0,i=0,n=e.length,r=n-2;i0===t)for(i=0,n=e.length;i24)throw new Error("maxZoom should be in the 0-24 range");if(t.promoteId&&t.generateId)throw new Error("promoteId and generateId cannot be used together.");var i=function(e,t){var o=[];if("FeatureCollection"===e.type)for(var i=0;i1&&console.time("creation"),d=this.tiles[b]=me(e,t,o,i,p),this.tileCoords.push({z:t,x:o,y:i}),c)){c>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",t,o,i,d.numFeatures,d.numPoints,d.numSimplified),console.timeEnd("creation"));var u="z"+t;this.stats[u]=(this.stats[u]||0)+1,this.total++}if(d.source=e,n){if(t===p.maxZoom||t===n)continue;var M=1<1&&console.time("clipping");var z,m,h,O,f,A,_=.5*p.buffer/p.extent,g=.5-_,q=.5+_,y=1+_;z=m=h=O=null,f=ne(e,l,o-_,o+q,0,d.minX,d.maxX,p),A=ne(e,l,o+g,o+y,0,d.minX,d.maxX,p),e=null,f&&(z=ne(f,l,i-_,i+q,1,d.minY,d.maxY,p),m=ne(f,l,i+g,i+y,1,d.minY,d.maxY,p),f=null),A&&(h=ne(A,l,i-_,i+q,1,d.minY,d.maxY,p),O=ne(A,l,i+g,i+y,1,d.minY,d.maxY,p),A=null),c>1&&console.timeEnd("clipping"),s.push(z||[],t+1,2*o,2*i),s.push(m||[],t+1,2*o,2*i+1),s.push(h||[],t+1,2*o+1,2*i),s.push(O||[],t+1,2*o+1,2*i+1)}}},fe.prototype.getTile=function(e,t,o){var i=this.options,n=i.extent,r=i.debug;if(e<0||e>24)return null;var a=1<1&&console.log("drilling down to z%d-%d-%d",e,t,o);for(var p,c=e,l=t,b=o;!p&&c>0;)c--,l=Math.floor(l/2),b=Math.floor(b/2),p=this.tiles[Ae(c,l,b)];return p&&p.source?(r>1&&console.log("found parent tile z%d-%d-%d",c,l,b),r>1&&console.time("drilling down"),this.splitTile(p.source,c,l,b,e,t,o),r>1&&console.timeEnd("drilling down"),this.tiles[s]?Me(this.tiles[s],n):null):null};class ge extends e.VectorTileWorkerSource{constructor(e,t,o,i,n){super(e,t,o,i,_e),n&&(this.loadGeoJSON=n)}loadData(t,o){const i=t&&t.request,n=i&&i.collectResourceTiming;this.loadGeoJSON(t,((r,s)=>{if(r||!s)return o(r);if("object"!=typeof s)return o(new Error(`Input data given to '${t.source}' is not a valid GeoJSON object.`));{a(s,!0);try{if(t.filter){const o=e.createExpression(t.filter,{type:"boolean","property-type":"data-driven",overridable:!1,transition:!1});if("error"===o.result)throw new Error(o.value.map((e=>`${e.key}: ${e.message}`)).join(", "));const i=s.features.filter((e=>o.value.evaluate({zoom:0},e)));s={type:"FeatureCollection",features:i}}this._geoJSONIndex=t.cluster?new D(function({superclusterOptions:t,clusterProperties:o}){if(!o||!t)return t;const i={},n={},r={accumulated:null,zoom:0},a={properties:null},s=Object.keys(o);for(const t of s){const[r,a]=o[t],s=e.createExpression(a),p=e.createExpression("string"==typeof r?[r,["accumulated"],["get",t]]:r);i[t]=s.value,n[t]=p.value}return t.map=e=>{a.properties=e;const t={};for(const e of s)t[e]=i[e].evaluate(r,a);return t},t.reduce=(e,t)=>{a.properties=t;for(const t of s)r.accumulated=e[t],e[t]=n[t].evaluate(r,a)},t}(t)).load(s.features):function(e,t){return new fe(e,t)}(s,t.geojsonVtOptions)}catch(r){return o(r)}this.loaded={};const p={};if(n){const o=e.getPerformanceMeasurement(i);o&&(p.resourceTiming={},p.resourceTiming[t.source]=JSON.parse(JSON.stringify(o)))}o(null,p)}}))}reloadTile(e,t){const o=this.loaded;return o&&o[e.uid]?super.reloadTile(e,t):this.loadTile(e,t)}loadGeoJSON(t,o){if(t.request)e.getJSON(t.request,o);else{if("string"!=typeof t.data)return o(new Error(`Input data given to '${t.source}' is not a valid GeoJSON object.`));try{return o(null,JSON.parse(t.data))}catch(e){return o(new Error(`Input data given to '${t.source}' is not a valid GeoJSON object.`))}}}getClusterExpansionZoom(e,t){try{t(null,this._geoJSONIndex.getClusterExpansionZoom(e.clusterId))}catch(e){t(e)}}getClusterChildren(e,t){try{t(null,this._geoJSONIndex.getChildren(e.clusterId))}catch(e){t(e)}}getClusterLeaves(e,t){try{t(null,this._geoJSONIndex.getLeaves(e.clusterId,e.limit,e.offset))}catch(e){t(e)}}}class qe{constructor(t){this.self=t,this.actor=new e.Actor(t,this),this.layerIndexes={},this.availableImages={},this.isSpriteLoaded={},this.projections={},this.defaultProjection=e.getProjection({name:"mercator"}),this.workerSourceTypes={vector:e.VectorTileWorkerSource,geojson:ge},this.workerSources={},this.demWorkerSources={},this.self.registerWorkerSource=(e,t)=>{if(this.workerSourceTypes[e])throw new Error(`Worker source with name "${e}" already registered.`);this.workerSourceTypes[e]=t},this.self.registerRTLTextPlugin=t=>{if(e.plugin.isParsed())throw new Error("RTL text plugin already registered.");e.plugin.applyArabicShaping=t.applyArabicShaping,e.plugin.processBidirectionalText=t.processBidirectionalText,e.plugin.processStyledBidirectionalText=t.processStyledBidirectionalText}}clearCaches(e,t,o){delete this.layerIndexes[e],delete this.availableImages[e],delete this.workerSources[e],delete this.demWorkerSources[e],o()}checkIfReady(e,t,o){o()}setReferrer(e,t){this.referrer=t}spriteLoaded(t,o){this.isSpriteLoaded[t]=o;for(const i in this.workerSources[t]){const n=this.workerSources[t][i];for(const t in n)n[t]instanceof e.VectorTileWorkerSource&&(n[t].isSpriteLoaded=o,n[t].fire(new e.Event("isSpriteLoaded")))}}setImages(e,t,o){this.availableImages[e]=t;for(const o in this.workerSources[e]){const i=this.workerSources[e][o];for(const e in i)i[e].availableImages=t}o()}enableTerrain(e,t,o){this.terrain=t,o()}setProjection(t,o){this.projections[t]=e.getProjection(o)}setLayers(e,t,o){this.getLayerIndex(e).replace(t),o()}updateLayers(e,t,o){this.getLayerIndex(e).update(t.layers,t.removedIds),o()}loadTile(t,o,i){const n=this.enableTerrain?e.extend({enableTerrain:this.terrain},o):o;n.projection=this.projections[t]||this.defaultProjection,this.getWorkerSource(t,o.type,o.source).loadTile(n,i)}loadDEMTile(t,o,i){const n=this.enableTerrain?e.extend({buildQuadTree:this.terrain},o):o;this.getDEMWorkerSource(t,o.source).loadTile(n,i)}reloadTile(t,o,i){const n=this.enableTerrain?e.extend({enableTerrain:this.terrain},o):o;n.projection=this.projections[t]||this.defaultProjection,this.getWorkerSource(t,o.type,o.source).reloadTile(n,i)}abortTile(e,t,o){this.getWorkerSource(e,t.type,t.source).abortTile(t,o)}removeTile(e,t,o){this.getWorkerSource(e,t.type,t.source).removeTile(t,o)}removeSource(e,t,o){if(!this.workerSources[e]||!this.workerSources[e][t.type]||!this.workerSources[e][t.type][t.source])return;const i=this.workerSources[e][t.type][t.source];delete this.workerSources[e][t.type][t.source],void 0!==i.removeSource?i.removeSource(t,o):o()}loadWorkerSource(e,t,o){try{this.self.importScripts(t.url),o()}catch(e){o(e.toString())}}syncRTLPluginState(t,o,i){try{e.plugin.setState(o);const t=e.plugin.getPluginURL();if(e.plugin.isLoaded()&&!e.plugin.isParsed()&&null!=t){this.self.importScripts(t);const o=e.plugin.isParsed();i(o?void 0:new Error(`RTL Text Plugin failed to import scripts from ${t}`),o)}}catch(e){i(e.toString())}}getAvailableImages(e){let t=this.availableImages[e];return t||(t=[]),t}getLayerIndex(e){let t=this.layerIndexes[e];return t||(t=this.layerIndexes[e]=new i),t}getWorkerSource(e,t,o){return this.workerSources[e]||(this.workerSources[e]={}),this.workerSources[e][t]||(this.workerSources[e][t]={}),this.workerSources[e][t][o]||(this.workerSources[e][t][o]=new this.workerSourceTypes[t]({send:(t,o,i,n,r,a)=>{this.actor.send(t,o,i,e,r,a)},scheduler:this.actor.scheduler},this.getLayerIndex(e),this.getAvailableImages(e),this.isSpriteLoaded[e])),this.workerSources[e][t][o]}getDEMWorkerSource(e,t){return this.demWorkerSources[e]||(this.demWorkerSources[e]={}),this.demWorkerSources[e][t]||(this.demWorkerSources[e][t]=new r),this.demWorkerSources[e][t]}enforceCacheSizeLimit(t,o){e.enforceCacheSizeLimit(o)}getWorkerPerformanceMetrics(e,t,o){o(void 0,void 0)}}return"undefined"!=typeof WorkerGlobalScope&&"undefined"!=typeof self&&self instanceof WorkerGlobalScope&&(self.worker=new qe(self)),qe})),n(["./shared"],(function(e){var t=o;function o(e){return!function(e){return"undefined"==typeof window||"undefined"==typeof document?"not a browser":Array.prototype&&Array.prototype.every&&Array.prototype.filter&&Array.prototype.forEach&&Array.prototype.indexOf&&Array.prototype.lastIndexOf&&Array.prototype.map&&Array.prototype.some&&Array.prototype.reduce&&Array.prototype.reduceRight&&Array.isArray?Function.prototype&&Function.prototype.bind?Object.keys&&Object.create&&Object.getPrototypeOf&&Object.getOwnPropertyNames&&Object.isSealed&&Object.isFrozen&&Object.isExtensible&&Object.getOwnPropertyDescriptor&&Object.defineProperty&&Object.defineProperties&&Object.seal&&Object.freeze&&Object.preventExtensions?"JSON"in window&&"parse"in JSON&&"stringify"in JSON?function(){if(!("Worker"in window&&"Blob"in window&&"URL"in window))return!1;var e,t,o=new Blob([""],{type:"text/javascript"}),i=URL.createObjectURL(o);try{t=new Worker(i),e=!0}catch(t){e=!1}return t&&t.terminate(),URL.revokeObjectURL(i),e}()?"Uint8ClampedArray"in window?ArrayBuffer.isView?function(){var e=document.createElement("canvas");e.width=e.height=1;var t=e.getContext("2d");if(!t)return!1;var o=t.getImageData(0,0,1,1);return o&&o.width===e.width}()?(void 0===i[t=e&&e.failIfMajorPerformanceCaveat]&&(i[t]=function(e){var t,i=function(e){var t=document.createElement("canvas"),i=Object.create(o.webGLContextAttributes);return i.failIfMajorPerformanceCaveat=e,t.getContext("webgl",i)||t.getContext("experimental-webgl",i)}(e);if(!i)return!1;try{t=i.createShader(i.VERTEX_SHADER)}catch(e){return!1}return!(!t||i.isContextLost())&&(i.shaderSource(t,"void main() {}"),i.compileShader(t),!0===i.getShaderParameter(t,i.COMPILE_STATUS))}(t)),i[t]?document.documentMode?"insufficient ECMAScript 6 support":void 0:"insufficient WebGL support"):"insufficient Canvas/getImageData support":"insufficient ArrayBuffer support":"insufficient Uint8ClampedArray support":"insufficient worker support":"insufficient JSON support":"insufficient Object support":"insufficient Function support":"insufficent Array support";var t}(e)}var i={};function n(e,t){var o=t[0],i=t[1],n=t[2],r=t[3],a=o*r-n*i;return a?(e[0]=r*(a=1/a),e[1]=-i*a,e[2]=-n*a,e[3]=o*a,e):null}function r(e,t){if(Array.isArray(e)){if(!Array.isArray(t)||e.length!==t.length)return!1;for(let o=0;o{e.window.removeEventListener("click",l,!0)}),0)},a.mousePos=function(e,t){const o=e.getBoundingClientRect();return b(e,o,t)},a.touchPos=function(e,t){const o=e.getBoundingClientRect(),i=[];for(let n=0;n=0?0:t.button};class u extends e.Evented{constructor(){super(),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new e.RGBAImage({width:1,height:1}),this.dirty=!0}isLoaded(){return this.loaded}setLoaded(e){if(this.loaded!==e&&(this.loaded=e,e)){for(const{ids:e,callback:t}of this.requestors)this._notify(e,t);this.requestors=[]}}getImage(e){return this.images[e]}addImage(e,t){this._validate(e,t)&&(this.images[e]=t)}_validate(t,o){let i=!0;return this._validateStretch(o.stretchX,o.data&&o.data.width)||(this.fire(new e.ErrorEvent(new Error(`Image "${t}" has invalid "stretchX" value`))),i=!1),this._validateStretch(o.stretchY,o.data&&o.data.height)||(this.fire(new e.ErrorEvent(new Error(`Image "${t}" has invalid "stretchY" value`))),i=!1),this._validateContent(o.content,o)||(this.fire(new e.ErrorEvent(new Error(`Image "${t}" has invalid "content" value`))),i=!1),i}_validateStretch(e,t){if(!e)return!0;let o=0;for(const i of e){if(i[0]{this.ready=!0}))}broadcast(t,o,i){e.asyncAll(this.actors,((e,i)=>{e.send(t,o,i)}),i=i||function(){})}getActor(){return this.currentActor=(this.currentActor+1)%this.actors.length,this.actors[this.currentActor]}remove(){this.actors.forEach((e=>{e.remove()})),this.actors=[],this.workerPool.release(this.id)}}function x(t,o,i){return o*(e.EXTENT/(t.tileSize*Math.pow(2,i-t.tileID.overscaledZ)))}v.Actor=e.Actor;class W{constructor(e,t,o){this.context=e;const i=e.gl;this.buffer=i.createBuffer(),this.dynamicDraw=Boolean(o),this.context.unbindVAO(),e.bindElementBuffer.set(this.buffer),i.bufferData(i.ELEMENT_ARRAY_BUFFER,t.arrayBuffer,this.dynamicDraw?i.DYNAMIC_DRAW:i.STATIC_DRAW),this.dynamicDraw||delete t.arrayBuffer}bind(){this.context.bindElementBuffer.set(this.buffer)}updateData(e){const t=this.context.gl;this.context.unbindVAO(),this.bind(),t.bufferSubData(t.ELEMENT_ARRAY_BUFFER,0,e.arrayBuffer)}destroy(){this.buffer&&(this.context.gl.deleteBuffer(this.buffer),delete this.buffer)}}const w={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT",Int32:"INT",Uint32:"UNSIGNED_INT",Float32:"FLOAT"};class L{constructor(e,t,o,i){this.length=t.length,this.attributes=o,this.itemSize=t.bytesPerElement,this.dynamicDraw=i,this.context=e;const n=e.gl;this.buffer=n.createBuffer(),e.bindVertexBuffer.set(this.buffer),n.bufferData(n.ARRAY_BUFFER,t.arrayBuffer,this.dynamicDraw?n.DYNAMIC_DRAW:n.STATIC_DRAW),this.dynamicDraw||delete t.arrayBuffer}bind(){this.context.bindVertexBuffer.set(this.buffer)}updateData(e){const t=this.context.gl;this.bind(),t.bufferSubData(t.ARRAY_BUFFER,0,e.arrayBuffer)}enableAttributes(e,t){for(let o=0;oi.pointCoordinate3D(e))),this.cameraGeometry=this.bufferedCameraGeometry(0)}static createFromScreenPoints(t,o){let i,n;if(t instanceof e.pointGeometry||"number"==typeof t[0]){const r=e.pointGeometry.convert(t);i=[e.pointGeometry.convert(t)],n=o.isPointAboveHorizon(r)}else{const r=e.pointGeometry.convert(t[0]),a=e.pointGeometry.convert(t[1]);i=[r,a],n=e.polygonizeBounds(r,a).every((e=>o.isPointAboveHorizon(e)))}return new Me(i,o.getCameraPoint(),n,o)}isPointQuery(){return 1===this.screenBounds.length}bufferedScreenGeometry(t){return e.polygonizeBounds(this.screenBounds[0],1===this.screenBounds.length?this.screenBounds[0]:this.screenBounds[1],t)}bufferedCameraGeometry(t){const o=this.screenBounds[0],i=1===this.screenBounds.length?this.screenBounds[0].add(new e.pointGeometry(1,1)):this.screenBounds[1],n=e.polygonizeBounds(o,i,0,!1);return this.cameraPoint.y>i.y&&(this.cameraPoint.x>o.x&&this.cameraPoint.x=i.x?n[2]=this.cameraPoint:this.cameraPoint.x<=o.x&&(n[3]=this.cameraPoint)),e.bufferConvexPolygon(n,t)}containsTile(t,o,i){const n=t.queryPadding+1,r=t.tileID.wrap,a=i?this._bufferedCameraMercator(n,o).map((o=>e.getTilePoint(t.tileTransform,o,r))):this._bufferedScreenMercator(n,o).map((o=>e.getTilePoint(t.tileTransform,o,r))),s=this.screenGeometryMercator.map((o=>e.getTileVec3(t.tileTransform,o,r))),p=s.map((t=>new e.pointGeometry(t[0],t[1]))),c=o.getFreeCameraOptions().position||new e.MercatorCoordinate(0,0,0),l=e.getTileVec3(t.tileTransform,c,r),b=s.map((t=>{const o=e.sub(t,t,l);return e.normalize(o,o),new e.Ray(l,o)})),d=x(t,1,o.zoom);if(e.polygonIntersectsBox(a,0,0,e.EXTENT,e.EXTENT))return{queryGeometry:this,tilespaceGeometry:p,tilespaceRays:b,bufferedTilespaceGeometry:a,bufferedTilespaceBounds:(u=e.getBounds(a),u.min.x=e.clamp(u.min.x,0,e.EXTENT),u.min.y=e.clamp(u.min.y,0,e.EXTENT),u.max.x=e.clamp(u.max.x,0,e.EXTENT),u.max.y=e.clamp(u.max.y,0,e.EXTENT),u),tile:t,tileID:t.tileID,pixelToTileUnitsFactor:d};var u}_bufferedScreenMercator(e,t){const o=ze(e);if(this._screenRaycastCache[o])return this._screenRaycastCache[o];{const i=this.bufferedScreenGeometry(e).map((e=>t.pointCoordinate3D(e)));return this._screenRaycastCache[o]=i,i}}_bufferedCameraMercator(e,t){const o=ze(e);if(this._cameraRaycastCache[o])return this._cameraRaycastCache[o];{const i=this.bufferedCameraGeometry(e).map((e=>t.pointCoordinate3D(e)));return this._cameraRaycastCache[o]=i,i}}}function ze(e){return 100*e|0}function me(t,o,i){const n=function(n,r){if(n)return i(n);if(r){const n=e.pick(e.extend(r,t),["tiles","minzoom","maxzoom","attribution","mapbox_logo","bounds","scheme","tileSize","encoding"]);r.vector_layers&&(n.vectorLayers=r.vector_layers,n.vectorLayerIds=n.vectorLayers.map((e=>e.id))),n.tiles=o.canonicalizeTileset(n,t.url),i(null,n)}};return t.url?e.getJSON(o.transformRequest(o.normalizeSourceURL(t.url),e.ResourceType.Source),n):e.exported.frame((()=>n(null,t)))}class he{constructor(t,o,i){this.bounds=e.LngLatBounds.convert(this.validateBounds(t)),this.minzoom=o||0,this.maxzoom=i||24}validateBounds(e){return Array.isArray(e)&&4===e.length?[Math.max(-180,e[0]),Math.max(-90,e[1]),Math.min(180,e[2]),Math.min(90,e[3])]:[-180,-90,180,90]}contains(t){const o=Math.pow(2,t.z),i=Math.floor(e.mercatorXfromLng(this.bounds.getWest())*o),n=Math.floor(e.mercatorYfromLat(this.bounds.getNorth())*o),r=Math.ceil(e.mercatorXfromLng(this.bounds.getEast())*o),a=Math.ceil(e.mercatorYfromLat(this.bounds.getSouth())*o);return t.x>=i&&t.x=n&&t.y{this._tileJSONRequest=null,this._loaded=!0,t?this.fire(new e.ErrorEvent(t)):o&&(e.extend(this,o),o.bounds&&(this.tileBounds=new he(o.bounds,this.minzoom,this.maxzoom)),e.postTurnstileEvent(o.tiles),this.fire(new e.Event("data",{dataType:"source",sourceDataType:"metadata"})),this.fire(new e.Event("data",{dataType:"source",sourceDataType:"content"})))}))}loaded(){return this._loaded}onAdd(e){this.map=e,this.load()}onRemove(){this._tileJSONRequest&&(this._tileJSONRequest.cancel(),this._tileJSONRequest=null)}serialize(){return e.extend({},this._options)}hasTile(e){return!this.tileBounds||this.tileBounds.contains(e.canonical)}loadTile(t,o){const i=e.exported.devicePixelRatio>=2,n=this.map._requestManager.normalizeTileURL(t.tileID.canonical.url(this.tiles,this.scheme),i,this.tileSize);t.request=e.getImage(this.map._requestManager.transformRequest(n,e.ResourceType.Tile),((i,n,r,a)=>{if(delete t.request,t.aborted)t.state="unloaded",o(null);else if(i)t.state="errored",o(i);else if(n){this.map._refreshExpiredTiles&&t.setExpiryData({cacheControl:r,expires:a});const i=this.map.painter.context,s=i.gl;t.texture=this.map.painter.getTileTexture(n.width),t.texture?t.texture.update(n,{useMipmap:!0}):(t.texture=new e.Texture(i,n,s.RGBA,{useMipmap:!0}),t.texture.bind(s.LINEAR,s.CLAMP_TO_EDGE),i.extTextureFilterAnisotropic&&s.texParameterf(s.TEXTURE_2D,i.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,i.extTextureFilterAnisotropicMax)),t.state="loaded",e.cacheEntryPossiblyAdded(this.dispatcher),o(null)}}))}abortTile(e,t){e.request&&(e.request.cancel(),delete e.request),t()}unloadTile(e,t){e.texture&&this.map.painter.saveTileTexture(e.texture),t()}hasTransition(){return!1}}let fe;function Ae(t,o,i,n,r,a,s,p){const c=[t,i,r,o,n,a,1,1,1],l=[s,p,1],b=e.adjoint([],c),[d,u,M]=e.transformMat3(l,l,e.transpose(b,b));return e.multiply(c,[d,0,0,0,u,0,0,0,M],c)}class _e extends e.Evented{constructor(e,t,o,i){super(),this.id=e,this.dispatcher=o,this.coordinates=t.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(i),this.options=t}load(t,o){this._loaded=!1,this.fire(new e.Event("dataloading",{dataType:"source"})),this.url=this.options.url,e.getImage(this.map._requestManager.transformRequest(this.url,e.ResourceType.Image),((i,n)=>{this._loaded=!0,i?this.fire(new e.ErrorEvent(i)):n&&(this.image=e.exported.getImageData(n),this.width=this.image.width,this.height=this.image.height,t&&(this.coordinates=t),o&&o(),this._finishLoading())}))}loaded(){return this._loaded}updateImage(e){return this.image&&e.url?(this.options.url=e.url,this.load(e.coordinates,(()=>{this.texture=null})),this):this}_finishLoading(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new e.Event("data",{dataType:"source",sourceDataType:"metadata"})))}onAdd(e){this.map=e,this.load()}setCoordinates(t){this.coordinates=t,delete this._boundsArray;const o=t.map(e.MercatorCoordinate.fromLngLat);return this.tileID=function(t){let o=1/0,i=1/0,n=-1/0,r=-1/0;for(const e of t)o=Math.min(o,e.x),i=Math.min(i,e.y),n=Math.max(n,e.x),r=Math.max(r,e.y);const a=Math.max(n-o,r-i),s=Math.max(0,Math.floor(-Math.log(a)/Math.LN2)),p=Math.pow(2,s);return new e.CanonicalTileID(s,Math.floor((o+n)/2*p),Math.floor((i+r)/2*p))}(o),this.minzoom=this.maxzoom=this.tileID.z,this.fire(new e.Event("data",{dataType:"source",sourceDataType:"content"})),this}_clear(){delete this._boundsArray}_makeBoundsArray(){const t=e.tileTransform(this.tileID,this.map.transform.projection),[o,i,n,r]=this.coordinates.map((o=>{const i=t.projection.project(o[0],o[1]);return e.getTilePoint(t,i)._round()}));return this.perspectiveTransform=function(t,o,i,n,r,a,s,p,c,l){const b=Ae(0,0,t,0,0,o,t,o),d=Ae(i,n,r,a,s,p,c,l);return e.multiply(d,e.adjoint(b,b),d),[d[6]/d[8]*t/e.EXTENT,d[7]/d[8]*o/e.EXTENT]}(this.width,this.height,o.x,o.y,i.x,i.y,r.x,r.y,n.x,n.y),this._boundsArray=new e.StructArrayLayout4i8,this._boundsArray.emplaceBack(o.x,o.y,0,0),this._boundsArray.emplaceBack(i.x,i.y,e.EXTENT,0),this._boundsArray.emplaceBack(r.x,r.y,0,e.EXTENT),this._boundsArray.emplaceBack(n.x,n.y,e.EXTENT,e.EXTENT),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this}prepare(){if(0===Object.keys(this.tiles).length||!this.image)return;const t=this.map.painter.context,o=t.gl;this._boundsArray||this._makeBoundsArray(),this.boundsBuffer||(this.boundsBuffer=t.createVertexBuffer(this._boundsArray,e.boundsAttributes.members)),this.boundsSegments||(this.boundsSegments=e.SegmentVector.simpleSegment(0,0,4,2)),this.texture||(this.texture=new e.Texture(t,this.image,o.RGBA),this.texture.bind(o.LINEAR,o.CLAMP_TO_EDGE));for(const e in this.tiles){const t=this.tiles[e];"loaded"!==t.state&&(t.state="loaded",t.texture=this.texture)}}loadTile(e,t){this.tileID&&this.tileID.equals(e.tileID.canonical)?(this.tiles[String(e.tileID.wrap)]=e,e.buckets={},t(null)):(e.state="errored",t(null))}serialize(){return{type:"image",url:this.options.url,coordinates:this.coordinates}}hasTransition(){return!1}}const ge={vector:class extends e.Evented{constructor(t,o,i,n){if(super(),this.id=t,this.dispatcher=i,this.type="vector",this.minzoom=0,this.maxzoom=22,this.scheme="xyz",this.tileSize=512,this.reparseOverscaled=!0,this.isTileClipped=!0,this._loaded=!1,e.extend(this,e.pick(o,["url","scheme","tileSize","promoteId"])),this._options=e.extend({type:"vector"},o),this._collectResourceTiming=o.collectResourceTiming,512!==this.tileSize)throw new Error("vector tile sources must have a tileSize of 512");this.setEventedParent(n),this._tileWorkers={},this._deduped=new e.DedupedRequest}load(){this._loaded=!1,this.fire(new e.Event("dataloading",{dataType:"source"})),this._tileJSONRequest=me(this._options,this.map._requestManager,((t,o)=>{this._tileJSONRequest=null,this._loaded=!0,t?this.fire(new e.ErrorEvent(t)):o&&(e.extend(this,o),o.bounds&&(this.tileBounds=new he(o.bounds,this.minzoom,this.maxzoom)),e.postTurnstileEvent(o.tiles,this.map._requestManager._customAccessToken),this.fire(new e.Event("data",{dataType:"source",sourceDataType:"metadata"})),this.fire(new e.Event("data",{dataType:"source",sourceDataType:"content"})))}))}loaded(){return this._loaded}hasTile(e){return!this.tileBounds||this.tileBounds.contains(e.canonical)}onAdd(e){this.map=e,this.load()}setSourceProperty(e){this._tileJSONRequest&&this._tileJSONRequest.cancel(),e();const t=this.map.style._getSourceCaches(this.id);for(const e of t)e.clearTiles();this.load()}setTiles(e){return this.setSourceProperty((()=>{this._options.tiles=e})),this}setUrl(e){return this.setSourceProperty((()=>{this.url=e,this._options.url=e})),this}onRemove(){this._tileJSONRequest&&(this._tileJSONRequest.cancel(),this._tileJSONRequest=null)}serialize(){return e.extend({},this._options)}loadTile(t,o){const i=this.map._requestManager.normalizeTileURL(t.tileID.canonical.url(this.tiles,this.scheme)),n={request:this.map._requestManager.transformRequest(i,e.ResourceType.Tile),data:void 0,uid:t.uid,tileID:t.tileID,tileZoom:t.tileZoom,zoom:t.tileID.overscaledZ,tileSize:this.tileSize*t.tileID.overscaleFactor(),type:this.type,source:this.id,pixelRatio:e.exported.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId,isSymbolTile:t.isSymbolTile};if(n.request.collectResourceTiming=this._collectResourceTiming,t.actor&&"expired"!==t.state)"loading"===t.state?t.reloadCallback=o:t.request=t.actor.send("reloadTile",n,r.bind(this));else if(t.actor=this._tileWorkers[i]=this._tileWorkers[i]||this.dispatcher.getActor(),this.dispatcher.ready)t.request=t.actor.send("loadTile",n,r.bind(this),void 0,!0);else{const o=e.loadVectorTile.call({deduped:this._deduped},n,((e,o)=>{e||!o?r.call(this,e):(n.data={cacheControl:o.cacheControl,expires:o.expires,rawData:o.rawData.slice(0)},t.actor&&t.actor.send("loadTile",n,r.bind(this),void 0,!0))}),!0);t.request={cancel:o}}function r(i,n){return delete t.request,t.aborted?o(null):i&&404!==i.status?o(i):(n&&n.resourceTiming&&(t.resourceTiming=n.resourceTiming),this.map._refreshExpiredTiles&&n&&t.setExpiryData(n),t.loadVectorData(n,this.map.painter),e.cacheEntryPossiblyAdded(this.dispatcher),o(null),void(t.reloadCallback&&(this.loadTile(t,t.reloadCallback),t.reloadCallback=null)))}}abortTile(e){e.request&&(e.request.cancel(),delete e.request),e.actor&&e.actor.send("abortTile",{uid:e.uid,type:this.type,source:this.id})}unloadTile(e){e.unloadVectorData(),e.actor&&e.actor.send("removeTile",{uid:e.uid,type:this.type,source:this.id})}hasTransition(){return!1}afterUpdate(){this._tileWorkers={}}},raster:Oe,"raster-dem":class extends Oe{constructor(t,o,i,n){super(t,o,i,n),this.type="raster-dem",this.maxzoom=22,this._options=e.extend({type:"raster-dem"},o),this.encoding=o.encoding||"mapbox"}loadTile(t,o){const i=this.map._requestManager.normalizeTileURL(t.tileID.canonical.url(this.tiles,this.scheme),!1,this.tileSize);function n(e,i){e&&(t.state="errored",o(e)),i&&(t.dem=i,t.dem.onDeserialize(),t.needsHillshadePrepare=!0,t.needsDEMTextureUpload=!0,t.state="loaded",o(null))}t.request=e.getImage(this.map._requestManager.transformRequest(i,e.ResourceType.Tile),function(i,r,a,s){if(delete t.request,t.aborted)t.state="unloaded",o(null);else if(i)t.state="errored",o(i);else if(r){this.map._refreshExpiredTiles&&t.setExpiryData({cacheControl:a,expires:s});const o=e.window.ImageBitmap&&r instanceof e.window.ImageBitmap&&(null==fe&&(fe=e.window.OffscreenCanvas&&new e.window.OffscreenCanvas(1,1).getContext("2d")&&"function"==typeof e.window.createImageBitmap),fe),i=1-(r.width-e.prevPowerOfTwo(r.width))/2;i<1||t.neighboringTiles||(t.neighboringTiles=this._getNeighboringTiles(t.tileID));const p=o?r:e.exported.getImageData(r,i),c={uid:t.uid,coord:t.tileID,source:this.id,rawImageData:p,encoding:this.encoding,padding:i};t.actor&&"expired"!==t.state||(t.actor=this.dispatcher.getActor(),t.actor.send("loadDEMTile",c,n.bind(this),void 0,!0))}}.bind(this))}_getNeighboringTiles(t){const o=t.canonical,i=Math.pow(2,o.z),n=(o.x-1+i)%i,r=0===o.x?t.wrap-1:t.wrap,a=(o.x+1+i)%i,s=o.x+1===i?t.wrap+1:t.wrap,p={};return p[new e.OverscaledTileID(t.overscaledZ,r,o.z,n,o.y).key]={backfilled:!1},p[new e.OverscaledTileID(t.overscaledZ,s,o.z,a,o.y).key]={backfilled:!1},o.y>0&&(p[new e.OverscaledTileID(t.overscaledZ,r,o.z,n,o.y-1).key]={backfilled:!1},p[new e.OverscaledTileID(t.overscaledZ,t.wrap,o.z,o.x,o.y-1).key]={backfilled:!1},p[new e.OverscaledTileID(t.overscaledZ,s,o.z,a,o.y-1).key]={backfilled:!1}),o.y+1{if(this._loaded=!0,this._pendingLoad=null,t)this.fire(new e.ErrorEvent(t));else{const t={dataType:"source",sourceDataType:this._metadataFired?"content":"metadata"};this._collectResourceTiming&&o&&o.resourceTiming&&o.resourceTiming[this.id]&&(t.resourceTiming=o.resourceTiming[this.id]),this.fire(new e.Event("data",t)),this._metadataFired=!0}this._coalesce&&(this._updateWorkerData(),this._coalesce=!1)}))}loaded(){return this._loaded}loadTile(t,o){const i=t.actor?"reloadTile":"loadTile";t.actor=this.actor,t.request=this.actor.send(i,{type:this.type,uid:t.uid,tileID:t.tileID,tileZoom:t.tileZoom,zoom:t.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:e.exported.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId},((e,n)=>(delete t.request,t.unloadVectorData(),t.aborted?o(null):e?o(e):(t.loadVectorData(n,this.map.painter,"reloadTile"===i),o(null)))),void 0,"loadTile"===i)}abortTile(e){e.request&&(e.request.cancel(),delete e.request),e.aborted=!0}unloadTile(e){e.unloadVectorData(),this.actor.send("removeTile",{uid:e.uid,type:this.type,source:this.id})}onRemove(){this._pendingLoad&&this._pendingLoad.cancel()}serialize(){return e.extend({},this._options,{type:this.type,data:this._data})}hasTransition(){return!1}},video:class extends _e{constructor(e,t,o,i){super(e,t,o,i),this.roundZoom=!0,this.type="video",this.options=t}load(){this._loaded=!1;const t=this.options;this.urls=[];for(const o of t.urls)this.urls.push(this.map._requestManager.transformRequest(o,e.ResourceType.Source).url);e.getVideo(this.urls,((t,o)=>{this._loaded=!0,t?this.fire(new e.ErrorEvent(t)):o&&(this.video=o,this.video.loop=!0,this.video.setAttribute("playsinline",""),this.video.addEventListener("playing",(()=>{this.map.triggerRepaint()})),this.map&&this.video.play(),this._finishLoading())}))}pause(){this.video&&this.video.pause()}play(){this.video&&this.video.play()}seek(t){if(this.video){const o=this.video.seekable;to.end(0)?this.fire(new e.ErrorEvent(new e.ValidationError(`sources.${this.id}`,null,`Playback for this video can be set only between the ${o.start(0)} and ${o.end(0)}-second mark.`))):this.video.currentTime=t}}getVideo(){return this.video}onAdd(e){this.map||(this.map=e,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))}prepare(){if(0===Object.keys(this.tiles).length||this.video.readyState<2)return;const t=this.map.painter.context,o=t.gl;this.texture?this.video.paused||(this.texture.bind(o.LINEAR,o.CLAMP_TO_EDGE),o.texSubImage2D(o.TEXTURE_2D,0,0,0,o.RGBA,o.UNSIGNED_BYTE,this.video)):(this.texture=new e.Texture(t,this.video,o.RGBA),this.texture.bind(o.LINEAR,o.CLAMP_TO_EDGE),this.width=this.video.videoWidth,this.height=this.video.videoHeight),this._boundsArray||this._makeBoundsArray(),this.boundsBuffer||(this.boundsBuffer=t.createVertexBuffer(this._boundsArray,e.boundsAttributes.members)),this.boundsSegments||(this.boundsSegments=e.SegmentVector.simpleSegment(0,0,4,2));for(const e in this.tiles){const t=this.tiles[e];"loaded"!==t.state&&(t.state="loaded",t.texture=this.texture)}}serialize(){return{type:"video",urls:this.urls,coordinates:this.coordinates}}hasTransition(){return this.video&&!this.video.paused}},image:_e,canvas:class extends _e{constructor(t,o,i,n){super(t,o,i,n),o.coordinates?Array.isArray(o.coordinates)&&4===o.coordinates.length&&!o.coordinates.some((e=>!Array.isArray(e)||2!==e.length||e.some((e=>"number"!=typeof e))))||this.fire(new e.ErrorEvent(new e.ValidationError(`sources.${t}`,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new e.ErrorEvent(new e.ValidationError(`sources.${t}`,null,'missing required property "coordinates"'))),o.animate&&"boolean"!=typeof o.animate&&this.fire(new e.ErrorEvent(new e.ValidationError(`sources.${t}`,null,'optional "animate" property must be a boolean value'))),o.canvas?"string"==typeof o.canvas||o.canvas instanceof e.window.HTMLCanvasElement||this.fire(new e.ErrorEvent(new e.ValidationError(`sources.${t}`,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new e.ErrorEvent(new e.ValidationError(`sources.${t}`,null,'missing required property "canvas"'))),this.options=o,this.animate=void 0===o.animate||o.animate}load(){this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof e.window.HTMLCanvasElement?this.options.canvas:e.window.document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()?this.fire(new e.ErrorEvent(new Error("Canvas dimensions cannot be less than or equal to zero."))):(this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading())}getCanvas(){return this.canvas}onAdd(e){this.map=e,this.load(),this.canvas&&this.animate&&this.play()}onRemove(){this.pause()}prepare(){let t=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,t=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,t=!0),this._hasInvalidDimensions())return;if(0===Object.keys(this.tiles).length)return;const o=this.map.painter.context,i=o.gl;this._boundsArray||this._makeBoundsArray(),this.boundsBuffer||(this.boundsBuffer=o.createVertexBuffer(this._boundsArray,e.boundsAttributes.members)),this.boundsSegments||(this.boundsSegments=e.SegmentVector.simpleSegment(0,0,4,2)),this.texture?(t||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new e.Texture(o,this.canvas,i.RGBA,{premultiply:!0});for(const e in this.tiles){const t=this.tiles[e];"loaded"!==t.state&&(t.state="loaded",t.texture=this.texture)}}serialize(){return{type:"canvas",coordinates:this.coordinates}}hasTransition(){return this._playing}_hasInvalidDimensions(){for(const e of[this.canvas.width,this.canvas.height])if(isNaN(e)||e<=0)return!0;return!1}}},qe=function(t,o,i,n){const r=new ge[o.type](t,o,i,n);if(r.id!==t)throw new Error(`Expected Source id to be ${t} instead of ${r.id}`);return e.bindAll(["load","abort","unload","serialize","prepare"],r),r};function ye(t,o){const i=e.identity([]);return e.scale(i,i,[.5*t.width,.5*-t.height,1]),e.translate(i,i,[1,-1,0]),e.multiply$1(i,i,t.calculateProjMatrix(o.toUnwrapped()))}function ve(e,t,o,i,n,r,a,s=!1){const p=e.tilesIn(i,a,s);p.sort(We);const c=[];for(const i of p)c.push({wrappedTileID:i.tile.tileID.wrapped().key,queryResults:i.tile.queryRenderedFeatures(t,o,e._state,i,n,r,ye(e.transform,i.tile.tileID),s)});const l=function(e){const t={},o={};for(const i of e){const e=i.queryResults,n=i.wrappedTileID,r=o[n]=o[n]||{};for(const o in e){const i=e[o],n=r[o]=r[o]||{},a=t[o]=t[o]||[];for(const e of i)n[e.featureIndex]||(n[e.featureIndex]=!0,a.push(e))}}return t}(c);for(const t in l)l[t].forEach((t=>{const o=t.feature,i=e.getFeatureState(o.layer["source-layer"],o.id);o.source=o.layer.source,o.layer["source-layer"]&&(o.sourceLayer=o.layer["source-layer"]),o.state=i}));return l}function xe(e,t){const o=e.getRenderableIds().map((t=>e.getTileByID(t))),i=[],n={};for(let e=0;e{e.terminate()})),this.workers=null)}isPreloaded(){return!!this.active[Le]}numActive(){return Object.keys(this.active).length}}let Te;function ke(){return Te||(Te=new Re),Te}function Be(t,o){const i={};for(const e in t)"ref"!==e&&(i[e]=t[e]);return e.refProperties.forEach((e=>{e in o&&(i[e]=o[e])})),i}function Se(e){e=e.slice();const t=Object.create(null);for(let o=0;o0?(n-a)/s:0;return this.points[r].mult(1-p).add(this.points[o].mult(p))}}class Fe{constructor(e,t,o){const i=this.boxCells=[],n=this.circleCells=[];this.xCellCount=Math.ceil(e/o),this.yCellCount=Math.ceil(t/o);for(let e=0;ethis.width||i<0||t>this.height)return!n&&[];const a=[];if(e<=0&&t<=0&&this.width<=o&&this.height<=i){if(n)return!0;for(let e=0;e0:a}_queryCircle(e,t,o,i,n){const r=e-o,a=e+o,s=t-o,p=t+o;if(a<0||r>this.width||p<0||s>this.height)return!i&&[];const c=[];return this._forEachCell(r,s,a,p,this._queryCellCircle,c,{hitTest:i,circle:{x:e,y:t,radius:o},seenUids:{box:{},circle:{}}},n),i?c.length>0:c}query(e,t,o,i,n){return this._query(e,t,o,i,!1,n)}hitTest(e,t,o,i,n){return this._query(e,t,o,i,!0,n)}hitTestCircle(e,t,o,i){return this._queryCircle(e,t,o,!0,i)}_queryCell(e,t,o,i,n,r,a,s){const p=a.seenUids,c=this.boxCells[n];if(null!==c){const n=this.bboxes;for(const l of c)if(!p.box[l]){p.box[l]=!0;const c=4*l;if(e<=n[c+2]&&t<=n[c+3]&&o>=n[c+0]&&i>=n[c+1]&&(!s||s(this.boxKeys[l]))){if(a.hitTest)return r.push(!0),!0;r.push({key:this.boxKeys[l],x1:n[c],y1:n[c+1],x2:n[c+2],y2:n[c+3]})}}}const l=this.circleCells[n];if(null!==l){const n=this.circles;for(const c of l)if(!p.circle[c]){p.circle[c]=!0;const l=3*c;if(this._circleAndRectCollide(n[l],n[l+1],n[l+2],e,t,o,i)&&(!s||s(this.circleKeys[c]))){if(a.hitTest)return r.push(!0),!0;{const e=n[l],t=n[l+1],o=n[l+2];r.push({key:this.circleKeys[c],x1:e-o,y1:t-o,x2:e+o,y2:t+o})}}}}}_queryCellCircle(e,t,o,i,n,r,a,s){const p=a.circle,c=a.seenUids,l=this.boxCells[n];if(null!==l){const e=this.bboxes;for(const t of l)if(!c.box[t]){c.box[t]=!0;const o=4*t;if(this._circleAndRectCollide(p.x,p.y,p.radius,e[o+0],e[o+1],e[o+2],e[o+3])&&(!s||s(this.boxKeys[t])))return r.push(!0),!0}}const b=this.circleCells[n];if(null!==b){const e=this.circles;for(const t of b)if(!c.circle[t]){c.circle[t]=!0;const o=3*t;if(this._circlesCollide(e[o],e[o+1],e[o+2],p.x,p.y,p.radius)&&(!s||s(this.circleKeys[t])))return r.push(!0),!0}}}_forEachCell(e,t,o,i,n,r,a,s){const p=this._convertToXCellCoord(e),c=this._convertToYCellCoord(t),l=this._convertToXCellCoord(o),b=this._convertToYCellCoord(i);for(let d=p;d<=l;d++)for(let p=c;p<=b;p++)if(n.call(this,e,t,o,i,this.xCellCount*p+d,r,a,s))return}_convertToXCellCoord(e){return Math.max(0,Math.min(this.xCellCount-1,Math.floor(e*this.xScale)))}_convertToYCellCoord(e){return Math.max(0,Math.min(this.yCellCount-1,Math.floor(e*this.yScale)))}_circlesCollide(e,t,o,i,n,r){const a=i-e,s=n-t,p=o+r;return p*p>a*a+s*s}_circleAndRectCollide(e,t,o,i,n,r,a){const s=(r-i)/2,p=Math.abs(e-(i+s));if(p>s+o)return!1;const c=(a-n)/2,l=Math.abs(t-(n+c));if(l>c+o)return!1;if(p<=s||l<=c)return!0;const b=p-s,d=l-c;return b*b+d*d<=o*o}}const He=Math.tan(85*Math.PI/180);function Ue(t,o,i,r,a,s){let p=e.create();if(i){if("globe"===a.projection.name)p=e.calculateGlobeMatrix(a,a.worldSize/a._projectionScaler,[0,0]),e.multiply$1(p,p,e.globeDenormalizeECEF(e.globeTileBounds(o)));else{const e=n([],s);p[0]=e[0],p[1]=e[1],p[4]=e[2],p[5]=e[3]}r||e.rotateZ(p,p,a.angle)}else e.multiply$1(p,a.labelPlaneMatrix,t);return p}function Ve(t,o,i,n,r,a){if(i){if("globe"===r.projection.name){const s=Ue(t,o,i,n,r,a);return e.invert(s,s),e.multiply$1(s,t,s),s}{const o=e.clone(t),i=e.identity([]);return i[0]=a[0],i[1]=a[1],i[4]=a[2],i[5]=a[3],e.multiply$1(o,o,i),n||e.rotateZ(o,o,-r.angle),o}}return r.glCoordMatrix}function Ge(t,o,i=0){const n=[t.x,t.y,i,1];i?e.transformMat4$1(n,n,o):at(n,n,o);const r=n[3];return{point:new e.pointGeometry(n[0]/r,n[1]/r),signedDistanceFromCamera:r}}function Ze(e,t){return Math.min(.5+e/t*.5,1.5)}function $e(e,t){const o=e[0]/e[3],i=e[1]/e[3];return o>=-t[0]&&o<=t[0]&&i>=-t[1]&&i<=t[1]}function Ke(t,o,i,n,r,a,s,p,c,l){const b=i.transform,d=n?t.textSizeData:t.iconSizeData,u=e.evaluateSizeForZoom(d,i.transform.zoom),M=[256/i.width*2+1,256/i.height*2+1],z=n?t.text.dynamicLayoutVertexArray:t.icon.dynamicLayoutVertexArray;z.clear();const m=t.lineVertexArray,h=n?t.text.placedSymbolArray:t.icon.placedSymbolArray,O=i.transform.width/i.transform.height;let f=!1;for(let n=0;nMath.abs(i.x-o.x)*n?{useVertical:!0}:t.writingMode===e.WritingMode.vertical?o.yHe}(o,i,n)?1===t.flipState?{needsFlipping:!0}:null:o.x>i.x?{needsFlipping:!0}:null}function et(t,o,i,n,r,a,s,p,c,l,b,d,u,M,z,m,h){const O=o/24,f=t.lineOffsetX*O,A=t.lineOffsetY*O;let _;if(t.numGlyphs>1){const e=t.glyphStartIndex+t.numGlyphs,o=t.lineStartIndex,r=t.lineStartIndex+t.lineLength,l=Je(O,p,f,A,i,b,d,t,c,a,u,z,!1,m,h);if(!l)return{notEnoughRoom:!0};const g=Ge(l.first.point,s).point,q=Ge(l.last.point,s).point;if(n&&!i){const e=Qe(t,g,q,M);if(t.flipState=e&&e.needsFlipping?1:2,e)return e}_=[l.first];for(let n=t.glyphStartIndex+1;n0?a.point:ot(d,n,o,1,r,void 0,m,h.canonical),M);if(t.flipState=s&&s.needsFlipping?1:2,s)return s}const o=it(O*p.getoffsetX(t.glyphStartIndex),f,A,i,b,d,t.segment,t.lineStartIndex,t.lineStartIndex+t.lineLength,c,a,u,z,!1,!1,m,h);if(!o)return{notEnoughRoom:!0};_=[o]}for(const t of _)e.addDynamicAttributes(l,t.point,t.angle);return{}}function tt(t,o,i,n,r){const a=n.projectTilePoint(t.x,t.y,o);if(!r)return Ge(a,i,a.z);const s=r(t);return Ge(new e.pointGeometry(a.x+s[0],a.y+s[1]),i,a.z+s[2])}function ot(e,t,o,i,n,r,a,s){const p=tt(e.add(e.sub(t)._unit()),s,n,a,r).point,c=o.sub(p);return o.add(c._mult(i/c.mag()))}function it(t,o,i,n,r,a,s,p,c,l,b,d,u,M,z,m,h){const O=n?t-o:t+o;let f=O>0?1:-1,A=0;n&&(f*=-1,A=Math.PI),f<0&&(A+=Math.PI);let _=f>0?p+s:p+s+1,g=r,q=r,y=0,v=0;const x=Math.abs(O),W=[],w=[];let L=a;const R=()=>{const t=_-f;return 0===y?a:new e.pointGeometry(l.getx(t),l.gety(t))},T=()=>ot(R(),L,q,x-y+1,b,u,m,h.canonical);for(;y+v<=x;){if(_+=f,_=c)return null;if(q=g,W.push(g),M&&w.push(L||R()),g=d[_],void 0===g){L=new e.pointGeometry(l.getx(_),l.gety(_));const t=tt(L,h.canonical,b,m,u);g=t.signedDistanceFromCamera>0?d[_]=t.point:T()}else L=null;y+=v,v=q.dist(g)}z&&u&&(L=L||new e.pointGeometry(l.getx(_),l.gety(_)),d[_]=g=void 0===d[_]?g:T(),v=q.dist(g));const k=(x-y)/v,B=g.sub(q),S=B.mult(k)._add(q);i&&S._add(B._unit()._perp()._mult(i*f));const X=A+Math.atan2(g.y-q.y,g.x-q.x);return W.push(S),M&&(L=L||new e.pointGeometry(l.getx(_),l.gety(_)),w.push(function(t,o,i){const n=1-i;return new e.pointGeometry(t.x*n+o.x*i,t.y*n+o.y*i)}(w.length>0?w[w.length-1]:L,L,k))),{point:S,angle:X,path:W,tilePath:w}}const nt=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function rt(e,t){for(let o=0;o[0,0,0],f=new e.pointGeometry(o.tileAnchorX,o.tileAnchorY),A=this.transform.projection.projectTilePoint(o.tileAnchorX,o.tileAnchorY,M.canonical),_=O(f),g=[A.x+_[0],A.y+_[1],A.z+_[2]],q=this.projectAndGetPerspectiveRatio(a,g[0],g[1],g[2],M),{perspectiveRatio:y}=q,v=(l?r/y:r*y)/e.ONE_EM,x=Ge(new e.pointGeometry(g[0],g[1]),s,g[2]).point,W=q.signedDistanceFromCamera>0?Je(v,n,o.lineOffsetX*v,o.lineOffsetY*v,!1,x,f,o,i,s,{},m&&!l?O:null,l&&!!m,this.transform.projection,M):null;let w=!1,L=!1,R=!0;if(W&&!q.aboveHorizon){const o=.5*d*y+u,i=new e.pointGeometry(-100,-100),n=new e.pointGeometry(this.screenRightBoundary,this.screenBottomBoundary),r=new je,a=W.first,s=W.last;let l=[];for(let e=a.path.length-1;e>=1;e--)l.push(a.path[e]);for(let e=1;e{const o=O(tGe(e,p));l=e.some((e=>e.signedDistanceFromCamera<=0))?[]:e.map((e=>e.point))}let h=[];if(l.length>0){const t=l[0].clone(),o=l[0].clone();for(let e=1;e=i.x&&o.x<=n.x&&t.y>=i.y&&o.y<=n.y?[l]:o.xn.x||o.yn.y?[]:e.clipLine([l],i.x,i.y,n.x,n.y)}for(const e of h){r.reset(e,.25*o);let i=0;i=r.length<=.5*o?1:Math.ceil(r.paddedLength/M)+1;for(let e=0;e0){e.transformMat4$1(a,a,t);let p=!1;this.fogState&&r&&(p=function(t,o,i,n,r,a){const s=a.calculateFogTileMatrix(r),p=[o,i,n];return e.transformMat4(p,p,s),A(t,p,a.pitch,a._fov)}(this.fogState,o,i,n||0,r.toUnwrapped(),this.transform)>.9),s=a[2]>a[3]||p}else at(a,a,t);return{point:new e.pointGeometry((a[0]/a[3]+1)/2*this.transform.width+st,(-a[1]/a[3]+1)/2*this.transform.height+st),perspectiveRatio:Math.min(.5+this.transform.cameraToCenterDistance/a[3]*.5,1.5),signedDistanceFromCamera:a[3],aboveHorizon:s}}isOffscreen(e,t,o,i){return o=this.screenRightBoundary||ithis.screenBottomBoundary}isInsideGrid(e,t,o,i){return o>=0&&e=0&&te.collisionGroupID===t}}return this.collisionGroups[e]}}function zt(t,o,i,n,r){const{horizontalAlign:a,verticalAlign:s}=e.getAnchorAlignment(t),p=-(a-.5)*o,c=-(s-.5)*i,l=e.evaluateVariableOffset(t,n);return new e.pointGeometry(p+l[0]*r,c+l[1]*r)}function mt(t,o,i,n,r){const a=new e.pointGeometry(t,o);return i&&a._rotate(n?r:-r),a}class ht{constructor(e,t,o,i,n){this.transform=e.clone(),this.collisionIndex=new pt(this.transform,n),this.placements={},this.opacities={},this.variableOffsets={},this.stale=!1,this.commitTime=0,this.fadeDuration=t,this.retainedQueryData={},this.collisionGroups=new Mt(o),this.collisionCircleArrays={},this.prevPlacement=i,i&&(i.prevPlacement=void 0),this.placedOrientations={}}getBucketParts(t,o,i,n){const r=i.getBucket(o),a=i.latestFeatureIndex;if(!r||!a||o.id!==r.layerIds[0])return;const s=r.layers[0].layout,p=i.collisionBoxArray,c=Math.pow(2,this.transform.zoom-i.tileID.overscaledZ),l=i.tileSize/e.EXTENT,b=i.tileID.toUnwrapped(),d=this.transform.calculateProjMatrix(b),u="map"===s.get("text-pitch-alignment"),M="map"===s.get("text-rotation-alignment");o.compileFilter();const z=o.dynamicFilter(),m=o.dynamicFilterNeedsFeature(),h=this.transform.calculatePixelsToTileUnitsMatrix(i),O=Ue(d,i.tileID.canonical,u,M,this.transform,h);let f=null;if(u){const t=Ve(d,i.tileID.canonical,u,M,this.transform,h);f=e.multiply$1([],this.transform.labelPlaneMatrix,t)}let A=null;z&&i.latestFeatureIndex&&(A={unwrappedTileID:b,dynamicFilter:z,dynamicFilterNeedsFeature:m,featureIndex:i.latestFeatureIndex}),this.retainedQueryData[r.bucketInstanceId]=new ut(r.bucketInstanceId,a,r.sourceLayerIndex,r.index,i.tileID);const _={bucket:r,layout:s,posMatrix:d,textLabelPlaneMatrix:O,labelToScreenMatrix:f,clippingData:A,scale:c,textPixelRatio:l,holdingForFade:i.holdingForFade(),collisionBoxArray:p,partiallyEvaluatedTextSize:e.evaluateSizeForZoom(r.textSizeData,this.transform.zoom),partiallyEvaluatedIconSize:e.evaluateSizeForZoom(r.iconSizeData,this.transform.zoom),collisionGroup:this.collisionGroups.get(r.sourceID)};if(n)for(const e of r.sortKeyRanges){const{sortKey:o,symbolInstanceStart:i,symbolInstanceEnd:n}=e;t.push({sortKey:o,symbolInstanceStart:i,symbolInstanceEnd:n,parameters:_})}else t.push({symbolInstanceStart:0,symbolInstanceEnd:r.symbolInstances.length,parameters:_})}attemptAnchorPlacement(e,t,o,i,n,r,a,s,p,c,l,b,d,u,M,z,m,h){const O=[b.textOffset0,b.textOffset1],f=zt(e,o,i,O,n),A=this.collisionIndex.placeCollisionBox(n,t,mt(f.x,f.y,r,a,this.transform.angle),l,s,p,c.predicate);if((!z||0!==this.collisionIndex.placeCollisionBox(u.getSymbolInstanceIconSize(h,this.transform.zoom,d),z,mt(f.x,f.y,r,a,this.transform.angle),l,s,p,c.predicate).box.length)&&A.box.length>0){let t;return this.prevPlacement&&this.prevPlacement.variableOffsets[b.crossTileID]&&this.prevPlacement.placements[b.crossTileID]&&this.prevPlacement.placements[b.crossTileID].text&&(t=this.prevPlacement.variableOffsets[b.crossTileID].anchor),this.variableOffsets[b.crossTileID]={textOffset:O,width:o,height:i,anchor:e,textScale:n,prevAnchor:t},this.markUsedJustification(u,e,b,M),u.allowVerticalPlacement&&(this.markUsedOrientation(u,M,b),this.placedOrientations[b.crossTileID]=M),{shift:f,placedGlyphBoxes:A}}}placeLayerBucketPart(t,o,i,n){const{bucket:r,layout:a,posMatrix:s,textLabelPlaneMatrix:p,labelToScreenMatrix:c,clippingData:l,textPixelRatio:b,holdingForFade:d,collisionBoxArray:u,partiallyEvaluatedTextSize:M,partiallyEvaluatedIconSize:z,collisionGroup:m}=t.parameters,h=a.get("text-optional"),O=a.get("icon-optional"),f=a.get("text-allow-overlap"),A=a.get("icon-allow-overlap"),_="map"===a.get("text-rotation-alignment"),g="map"===a.get("text-pitch-alignment"),q="none"!==a.get("icon-text-fit"),y="viewport-y"===a.get("symbol-z-order"),v=f&&(A||!r.hasIconData()||O),x=A&&(f||!r.hasTextData()||h);!r.collisionArrays&&u&&r.deserializeCollisionBoxes(u),i&&n&&r.updateCollisionDebugBuffers(this.transform.zoom,u);const W=(t,n,u)=>{if(l){const i={zoom:this.transform.zoom,pitch:this.transform.pitch};let n=null;if(l.dynamicFilterNeedsFeature){const e=this.retainedQueryData[r.bucketInstanceId];n=l.featureIndex.loadFeature({featureIndex:t.featureIndex,bucketIndex:e.bucketIndex,sourceLayerIndex:e.sourceLayerIndex,layoutVertexArrayOffset:0})}if(!(0,l.dynamicFilter)(i,n,this.retainedQueryData[r.bucketInstanceId].tileID.canonical,new e.pointGeometry(t.tileAnchorX,t.tileAnchorY),this.transform.calculateDistanceTileData(l.unwrappedTileID)))return this.placements[t.crossTileID]=new bt(!1,!1,!1,!0),void(o[t.crossTileID]=!0)}if(o[t.crossTileID])return;if(d)return void(this.placements[t.crossTileID]=new bt(!1,!1,!1));let y=!1,W=!1,w=!0,L=null,R={box:null,offscreen:null},T={box:null,offscreen:null},k=null,B=null,S=null,X=0,E=0,D=0;u.textFeatureIndex?X=u.textFeatureIndex:t.useRuntimeCollisionCircles&&(X=t.featureIndex),u.verticalTextFeatureIndex&&(E=u.verticalTextFeatureIndex);const C=e=>{e.tileID=this.retainedQueryData[r.bucketInstanceId].tileID,(this.transform.elevation||e.elevation)&&(e.elevation=this.transform.elevation?this.transform.elevation.getAtTileOffset(this.retainedQueryData[r.bucketInstanceId].tileID,e.tileAnchorX,e.tileAnchorY):0)},N=u.textBox;if(N){C(N);const o=o=>{let i=e.WritingMode.horizontal;if(r.allowVerticalPlacement&&!o&&this.prevPlacement){const e=this.prevPlacement.placedOrientations[t.crossTileID];e&&(this.placedOrientations[t.crossTileID]=e,i=e,this.markUsedOrientation(r,i,t))}return i},i=(o,i)=>{if(r.allowVerticalPlacement&&t.numVerticalGlyphVertices>0&&u.verticalTextBox){for(const t of r.writingModes)if(t===e.WritingMode.vertical?(R=i(),T=R):R=o(),R&&R.box&&R.box.length)break}else R=o()};if(a.get("text-variable-anchor")){let p=a.get("text-variable-anchor");if(this.prevPlacement&&this.prevPlacement.variableOffsets[t.crossTileID]){const e=this.prevPlacement.variableOffsets[t.crossTileID];p.indexOf(e.anchor)>0&&(p=p.filter((t=>t!==e.anchor)),p.unshift(e.anchor))}const c=(e,o,i)=>{const a=r.getSymbolInstanceTextSize(M,t,this.transform.zoom,n),c=(e.x2-e.x1)*a+2*e.padding,l=(e.y2-e.y1)*a+2*e.padding,d=q&&!A?o:null;d&&C(d);let u={box:[],offscreen:!1};const h=f?2*p.length:p.length;for(let o=0;o=p.length,t,n,r,i,d,M,z);if(h&&(u=h.placedGlyphBoxes,u&&u.box&&u.box.length)){y=!0,L=h.shift;break}}return u};i((()=>c(N,u.iconBox,e.WritingMode.horizontal)),(()=>{const o=u.verticalTextBox;return o&&C(o),r.allowVerticalPlacement&&!(R&&R.box&&R.box.length)&&t.numVerticalGlyphVertices>0&&o?c(o,u.verticalIconBox,e.WritingMode.vertical):{box:null,offscreen:null}})),R&&(y=R.box,w=R.offscreen);const l=o(R&&R.box);if(!y&&this.prevPlacement){const e=this.prevPlacement.variableOffsets[t.crossTileID];e&&(this.variableOffsets[t.crossTileID]=e,this.markUsedJustification(r,e.anchor,t,l))}}else{const a=(o,i)=>{const a=r.getSymbolInstanceTextSize(M,t,this.transform.zoom,n),p=this.collisionIndex.placeCollisionBox(a,o,new e.pointGeometry(0,0),f,b,s,m.predicate);return p&&p.box&&p.box.length&&(this.markUsedOrientation(r,i,t),this.placedOrientations[t.crossTileID]=i),p};i((()=>a(N,e.WritingMode.horizontal)),(()=>{const o=u.verticalTextBox;return r.allowVerticalPlacement&&t.numVerticalGlyphVertices>0&&o?(C(o),a(o,e.WritingMode.vertical)):{box:null,offscreen:null}})),o(R&&R.box&&R.box.length)}}if(k=R,y=k&&k.box&&k.box.length>0,w=k&&k.offscreen,t.useRuntimeCollisionCircles){const o=r.text.placedSymbolArray.get(t.centerJustifiedTextSymbolIndex>=0?t.centerJustifiedTextSymbolIndex:t.verticalPlacedTextSymbolIndex),n=e.evaluateSizeForFeature(r.textSizeData,M,o),l=a.get("text-padding");B=this.collisionIndex.placeCollisionCircles(f,o,r.lineVertexArray,r.glyphOffsetArray,n,s,p,c,i,g,m.predicate,t.collisionCircleDiameter*n/e.ONE_EM,l,this.retainedQueryData[r.bucketInstanceId].tileID),y=f||B.circles.length>0&&!B.collisionDetected,w=w&&B.offscreen}if(u.iconFeatureIndex&&(D=u.iconFeatureIndex),u.iconBox){const t=t=>{C(t);const o=q&&L?mt(L.x,L.y,_,g,this.transform.angle):new e.pointGeometry(0,0),i=r.getSymbolInstanceIconSize(z,this.transform.zoom,n);return this.collisionIndex.placeCollisionBox(i,t,o,A,b,s,m.predicate)};T&&T.box&&T.box.length&&u.verticalIconBox?(S=t(u.verticalIconBox),W=S.box.length>0):(S=t(u.iconBox),W=S.box.length>0),w=w&&S.offscreen}const P=h||0===t.numHorizontalGlyphVertices&&0===t.numVerticalGlyphVertices,I=O||0===t.numIconVertices;if(P||I?I?P||(W=W&&y):y=W&&y:W=y=W&&y,y&&k&&k.box&&this.collisionIndex.insertCollisionBox(k.box,a.get("text-ignore-placement"),r.bucketInstanceId,T&&T.box&&E?E:X,m.ID),W&&S&&this.collisionIndex.insertCollisionBox(S.box,a.get("icon-ignore-placement"),r.bucketInstanceId,D,m.ID),B&&(y&&this.collisionIndex.insertCollisionCircles(B.circles,a.get("text-ignore-placement"),r.bucketInstanceId,X,m.ID),i)){const e=r.bucketInstanceId;let t=this.collisionCircleArrays[e];void 0===t&&(t=this.collisionCircleArrays[e]=new dt);for(let e=0;e=0;--t){const o=e[t];W(r.symbolInstances.get(o),o,r.collisionArrays[o])}}else for(let e=t.symbolInstanceStart;e=0&&(t.text.placedSymbolArray.get(e).crossTileID=r>=0&&e!==r?0:i.crossTileID)}markUsedOrientation(t,o,i){const n=o===e.WritingMode.horizontal||o===e.WritingMode.horizontalOnly?o:0,r=o===e.WritingMode.vertical?o:0,a=[i.leftJustifiedTextSymbolIndex,i.centerJustifiedTextSymbolIndex,i.rightJustifiedTextSymbolIndex];for(const e of a)t.text.placedSymbolArray.get(e).placedOrientation=n;i.verticalPlacedTextSymbolIndex&&(t.text.placedSymbolArray.get(i.verticalPlacedTextSymbolIndex).placedOrientation=r)}commit(e){this.commitTime=e,this.zoomAtLastRecencyCheck=this.transform.zoom;const t=this.prevPlacement;let o=!1;this.prevZoomAdjustment=t?t.zoomAdjustment(this.transform.zoom):0;const i=t?t.symbolFadeChange(e):1,n=t?t.opacities:{},r=t?t.variableOffsets:{},a=t?t.placedOrientations:{};for(const e in this.placements){const t=this.placements[e],r=n[e];r?(this.opacities[e]=new lt(r,i,t.text,t.icon,null,t.clipped),o=o||t.text!==r.text.placed||t.icon!==r.icon.placed):(this.opacities[e]=new lt(null,i,t.text,t.icon,t.skipFade,t.clipped),o=o||t.text||t.icon)}for(const e in n){const t=n[e];if(!this.opacities[e]){const n=new lt(t,i,!1,!1);n.isHidden()||(this.opacities[e]=n,o=o||t.text.placed||t.icon.placed)}}for(const e in r)this.variableOffsets[e]||!this.opacities[e]||this.opacities[e].isHidden()||(this.variableOffsets[e]=r[e]);for(const e in a)this.placedOrientations[e]||!this.opacities[e]||this.opacities[e].isHidden()||(this.placedOrientations[e]=a[e]);o?this.lastPlacementChangeTime=e:"number"!=typeof this.lastPlacementChangeTime&&(this.lastPlacementChangeTime=t?t.lastPlacementChangeTime:e)}updateLayerOpacities(e,t){const o={};for(const i of t){const t=i.getBucket(e);t&&i.latestFeatureIndex&&e.id===t.layerIds[0]&&this.updateBucketOpacities(t,o,i.collisionBoxArray)}}updateBucketOpacities(t,o,i){t.hasTextData()&&t.text.opacityVertexArray.clear(),t.hasIconData()&&t.icon.opacityVertexArray.clear(),t.hasIconCollisionBoxData()&&t.iconCollisionBox.collisionVertexArray.clear(),t.hasTextCollisionBoxData()&&t.textCollisionBox.collisionVertexArray.clear();const n=t.layers[0].layout,r=!!t.layers[0].dynamicFilter(),a=new lt(null,0,!1,!1,!0),s=n.get("text-allow-overlap"),p=n.get("icon-allow-overlap"),c=n.get("text-variable-anchor"),l="map"===n.get("text-rotation-alignment"),b="map"===n.get("text-pitch-alignment"),d="none"!==n.get("icon-text-fit"),u=new lt(null,0,s&&(p||!t.hasIconData()||n.get("icon-optional")),p&&(s||!t.hasTextData()||n.get("text-optional")),!0);!t.collisionArrays&&i&&(t.hasIconCollisionBoxData()||t.hasTextCollisionBoxData())&&t.deserializeCollisionBoxes(i);const M=(e,t,o)=>{for(let i=0;i0||p>0,f=n.numIconVertices>0,A=this.placedOrientations[n.crossTileID],_=A===e.WritingMode.vertical,g=A===e.WritingMode.horizontal||A===e.WritingMode.horizontalOnly;if(!O&&!f||h.isHidden()||z++,O){const e=xt(h.text);M(t.text,s,_?Wt:e),M(t.text,p,g?Wt:e);const o=h.text.isHidden();[n.rightJustifiedTextSymbolIndex,n.centerJustifiedTextSymbolIndex,n.leftJustifiedTextSymbolIndex].forEach((e=>{e>=0&&(t.text.placedSymbolArray.get(e).hidden=o||_?1:0)})),n.verticalPlacedTextSymbolIndex>=0&&(t.text.placedSymbolArray.get(n.verticalPlacedTextSymbolIndex).hidden=o||g?1:0);const i=this.variableOffsets[n.crossTileID];i&&this.markUsedJustification(t,i.anchor,n,A);const r=this.placedOrientations[n.crossTileID];r&&(this.markUsedJustification(t,"left",n,r),this.markUsedOrientation(t,r,n))}if(f){const e=xt(h.icon);n.placedIconSymbolIndex>=0&&(M(t.icon,n.numIconVertices,_?Wt:e),t.icon.placedSymbolArray.get(n.placedIconSymbolIndex).hidden=h.icon.isHidden()),n.verticalPlacedIconSymbolIndex>=0&&(M(t.icon,n.numVerticalIconVertices,g?Wt:e),t.icon.placedSymbolArray.get(n.verticalPlacedIconSymbolIndex).hidden=h.icon.isHidden())}if(t.hasIconCollisionBoxData()||t.hasTextCollisionBoxData()){const o=t.collisionArrays[i];if(o){let i=new e.pointGeometry(0,0),n=!0;if(o.textBox||o.verticalTextBox){if(c){const e=this.variableOffsets[m];e?(i=zt(e.anchor,e.width,e.height,e.textOffset,e.textScale),l&&i._rotate(b?this.transform.angle:-this.transform.angle)):n=!1}r&&(n=!h.clipped),o.textBox&&Ot(t.textCollisionBox.collisionVertexArray,h.text.placed,!n||_,i.x,i.y),o.verticalTextBox&&Ot(t.textCollisionBox.collisionVertexArray,h.text.placed,!n||g,i.x,i.y)}const a=n&&Boolean(!g&&o.verticalIconBox);o.iconBox&&Ot(t.iconCollisionBox.collisionVertexArray,h.icon.placed,a,d?i.x:0,d?i.y:0),o.verticalIconBox&&Ot(t.iconCollisionBox.collisionVertexArray,h.icon.placed,!a,d?i.x:0,d?i.y:0)}}}if(t.fullyClipped=0===z,t.sortFeatures(this.transform.angle),this.retainedQueryData[t.bucketInstanceId]&&(this.retainedQueryData[t.bucketInstanceId].featureSortOrder=t.featureSortOrder),t.hasTextData()&&t.text.opacityVertexBuffer&&t.text.opacityVertexBuffer.updateData(t.text.opacityVertexArray),t.hasIconData()&&t.icon.opacityVertexBuffer&&t.icon.opacityVertexBuffer.updateData(t.icon.opacityVertexArray),t.hasIconCollisionBoxData()&&t.iconCollisionBox.collisionVertexBuffer&&t.iconCollisionBox.collisionVertexBuffer.updateData(t.iconCollisionBox.collisionVertexArray),t.hasTextCollisionBoxData()&&t.textCollisionBox.collisionVertexBuffer&&t.textCollisionBox.collisionVertexBuffer.updateData(t.textCollisionBox.collisionVertexArray),t.bucketInstanceId in this.collisionCircleArrays){const e=this.collisionCircleArrays[t.bucketInstanceId];t.placementInvProjMatrix=e.invProjMatrix,t.placementViewportMatrix=e.viewportMatrix,t.collisionCircleArray=e.circles,delete this.collisionCircleArrays[t.bucketInstanceId]}}symbolFadeChange(e){return 0===this.fadeDuration?1:(e-this.commitTime)/this.fadeDuration+this.prevZoomAdjustment}zoomAdjustment(e){return Math.max(0,(this.transform.zoom-e)/1.5)}hasTransitions(e){return this.stale||e-this.lastPlacementChangeTimee}setStale(){this.stale=!0}}function Ot(e,t,o,i,n){e.emplaceBack(t?1:0,o?1:0,i||0,n||0),e.emplaceBack(t?1:0,o?1:0,i||0,n||0),e.emplaceBack(t?1:0,o?1:0,i||0,n||0),e.emplaceBack(t?1:0,o?1:0,i||0,n||0)}const ft=Math.pow(2,25),At=Math.pow(2,24),_t=Math.pow(2,17),gt=Math.pow(2,16),qt=Math.pow(2,9),yt=Math.pow(2,8),vt=Math.pow(2,1);function xt(e){if(0===e.opacity&&!e.placed)return 0;if(1===e.opacity&&e.placed)return 4294967295;const t=e.placed?1:0,o=Math.floor(127*e.opacity);return o*ft+t*At+o*_t+t*gt+o*qt+t*yt+o*vt+t}const Wt=0;class wt{constructor(e){this._sortAcrossTiles="viewport-y"!==e.layout.get("symbol-z-order")&&void 0!==e.layout.get("symbol-sort-key").constantOr(1),this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]}continuePlacement(e,t,o,i,n){const r=this._bucketParts;for(;this._currentTileIndexe.sortKey-t.sortKey)));this._currentPartIndex{const t=e.exported.now()-n;return!this._forceFullPlacement&&t>2};for(;this._currentPlacementIndex>=0;){const e=o[t[this._currentPlacementIndex]],n=this.placement.collisionIndex.transform.zoom;if("symbol"===e.type&&(!e.minzoom||e.minzoom<=n)&&(!e.maxzoom||e.maxzoom>n)){if(this._inProgressLayer||(this._inProgressLayer=new wt(e)),this._inProgressLayer.continuePlacement(i[e.source],this.placement,this._showCollisionBoxes,e,r))return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0}commit(e){return this.placement.commit(e),this.placement}}const Rt=512/e.EXTENT/2;class Tt{constructor(e,t,o){this.tileID=e,this.indexedSymbolInstances={},this.bucketInstanceId=o;for(let o=0;oe.overscaledZ)for(const o in n){const r=n[o];r.tileID.isChildOf(e)&&r.findMatches(t.symbolInstances,e,i)}else{const r=n[e.scaledTo(Number(o)).key];r&&r.findMatches(t.symbolInstances,e,i)}}for(let e=0;e{t[e]=!0}));for(const e in this.layerIndexes)t[e]||delete this.layerIndexes[e]}}const Xt=(t,o)=>e.emitValidationErrors(t,o&&o.filter((e=>"source.canvas"!==e.identifier))),Et=e.pick(Xe,["addLayer","removeLayer","setPaintProperty","setLayoutProperty","setFilter","addSource","removeSource","setLayerZoomRange","setLight","setTransition","setGeoJSONSourceData","setTerrain","setFog","setProjection"]),Dt=e.pick(Xe,["setCenter","setZoom","setBearing","setPitch"]),Ct=function(){const t={},o=e.spec.$version;for(const i in e.spec.$root){const n=e.spec.$root[i];if(n.required){let e=null;e="version"===i?o:"array"===n.type?[]:{},null!=e&&(t[i]=e)}}return t}(),Nt={fill:!0,line:!0,background:!0,hillshade:!0,raster:!0};class Pt extends e.Evented{constructor(t,o={}){super(),this.map=t,this.dispatcher=new v(ke(),this),this.imageManager=new u,this.imageManager.setEventedParent(this),this.glyphManager=new e.GlyphManager(t._requestManager,o.localFontFamily?e.LocalGlyphMode.all:o.localIdeographFontFamily?e.LocalGlyphMode.ideographs:e.LocalGlyphMode.none,o.localFontFamily||o.localIdeographFontFamily),this.lineAtlas=new e.LineAtlas(256,512),this.crossTileSymbolIndex=new St,this._layers={},this._num3DLayers=0,this._numSymbolLayers=0,this._numCircleLayers=0,this._serializedLayers={},this._sourceCaches={},this._otherSourceCaches={},this._symbolSourceCaches={},this.zoomHistory=new e.ZoomHistory,this._loaded=!1,this._availableImages=[],this._order=[],this._drapedFirstOrder=[],this._markersNeedUpdate=!1,this._resetUpdates(),this.dispatcher.broadcast("setReferrer",e.getReferrer());const i=this;this._rtlTextPluginCallback=Pt.registerForPluginStateChange((t=>{i.dispatcher.broadcast("syncRTLPluginState",{pluginStatus:t.pluginStatus,pluginURL:t.pluginURL},((t,o)=>{if(e.triggerPluginCompletionEvent(t),o&&o.every((e=>e)))for(const e in i._sourceCaches){const t=i._sourceCaches[e],o=t.getSource().type;"vector"!==o&&"geojson"!==o||t.reload()}}))})),this.on("data",(e=>{if("source"!==e.dataType||"metadata"!==e.sourceDataType)return;const t=this.getSource(e.sourceId);if(t&&t.vectorLayerIds)for(const e in this._layers){const o=this._layers[e];o.source===t.id&&this._validateLayer(o)}}))}loadURL(t,o={}){this.fire(new e.Event("dataloading",{dataType:"style"}));const i="boolean"==typeof o.validate?o.validate:!e.isMapboxURL(t);t=this.map._requestManager.normalizeStyleURL(t,o.accessToken);const n=this.map._requestManager.transformRequest(t,e.ResourceType.Style);this._request=e.getJSON(n,((t,o)=>{this._request=null,t?this.fire(new e.ErrorEvent(t)):o&&this._load(o,i)}))}loadJSON(t,o={}){this.fire(new e.Event("dataloading",{dataType:"style"})),this._request=e.exported.frame((()=>{this._request=null,this._load(t,!1!==o.validate)}))}loadEmpty(){this.fire(new e.Event("dataloading",{dataType:"style"})),this._load(Ct,!1)}_updateLayerCount(e,t){const o=t?1:-1;e.is3D()&&(this._num3DLayers+=o),"circle"===e.type&&(this._numCircleLayers+=o),"symbol"===e.type&&(this._numSymbolLayers+=o)}_load(t,o){if(o&&Xt(this,e.validateStyle(t)))return;this._loaded=!0,this.stylesheet=t,this.updateProjection();for(const e in t.sources)this.addSource(e,t.sources[e],{validate:!1});this._changed=!1,t.sprite?this._loadSprite(t.sprite):(this.imageManager.setLoaded(!0),this.dispatcher.broadcast("spriteLoaded",!0)),this.glyphManager.setURL(t.glyphs);const i=Se(this.stylesheet.layers);this._order=i.map((e=>e.id)),this._layers={},this._serializedLayers={};for(let t of i)t=e.createStyleLayer(t),t.setEventedParent(this,{layer:{id:t.id}}),this._layers[t.id]=t,this._serializedLayers[t.id]=t.serialize(),this._updateLayerCount(t,!0);this.dispatcher.broadcast("setLayers",this._serializeLayers(this._order)),this.light=new m(this.stylesheet.light),this.stylesheet.terrain&&!this.terrainSetForDrapingOnly()&&this._createTerrain(this.stylesheet.terrain,1),this.stylesheet.fog&&this._createFog(this.stylesheet.fog),this._updateDrapeFirstLayers(),this.fire(new e.Event("data",{dataType:"style"})),this.fire(new e.Event("style.load"))}terrainSetForDrapingOnly(){return this.terrain&&0===this.terrain.drapeRenderMode}setProjection(e){e?this.stylesheet.projection=e:delete this.stylesheet.projection,this.updateProjection()}updateProjection(){const e=this.map.transform.projection,t=this.map.transform.setProjection(this.map._runtimeProjection||(this.stylesheet?this.stylesheet.projection:void 0)),o=this.map.transform.projection;if(this._loaded&&(o.requiresDraping?this.getTerrain()||this.stylesheet.terrain||this.setTerrainForDraping():this.terrainSetForDrapingOnly()&&this.setTerrain(null)),this.dispatcher.broadcast("setProjection",this.map.transform.projectionOptions),t){if(o.isReprojectedInTileSpace||e.isReprojectedInTileSpace){this.map.painter.clearBackgroundTiles();for(const e in this._sourceCaches)this._sourceCaches[e].clearTiles()}else this._forceSymbolLayerUpdate();this.map._update(!0)}}_loadSprite(t){this._spriteRequest=function(t,o,i){let n,r,a;const s=e.exported.devicePixelRatio>1?"@2x":"";let p=e.getJSON(o.transformRequest(o.normalizeSpriteURL(t,s,".json"),e.ResourceType.SpriteJSON),((e,t)=>{p=null,a||(a=e,n=t,l())})),c=e.getImage(o.transformRequest(o.normalizeSpriteURL(t,s,".png"),e.ResourceType.SpriteImage),((e,t)=>{c=null,a||(a=e,r=t,l())}));function l(){if(a)i(a);else if(n&&r){const t=e.exported.getImageData(r),o={};for(const i in n){const{width:r,height:a,x:s,y:p,sdf:c,pixelRatio:l,stretchX:b,stretchY:d,content:u}=n[i],M=new e.RGBAImage({width:r,height:a});e.RGBAImage.copy(t,M,{x:s,y:p},{x:0,y:0},{width:r,height:a}),o[i]={data:M,pixelRatio:l,sdf:c,stretchX:b,stretchY:d,content:u}}i(null,o)}}return{cancel(){p&&(p.cancel(),p=null),c&&(c.cancel(),c=null)}}}(t,this.map._requestManager,((t,o)=>{if(this._spriteRequest=null,t)this.fire(new e.ErrorEvent(t));else if(o)for(const e in o)this.imageManager.addImage(e,o[e]);this.imageManager.setLoaded(!0),this._availableImages=this.imageManager.listImages(),this.dispatcher.broadcast("setImages",this._availableImages),this.dispatcher.broadcast("spriteLoaded",!0),this.fire(new e.Event("data",{dataType:"style"}))}))}_validateLayer(t){const o=this.getSource(t.source);if(!o)return;const i=t.sourceLayer;i&&("geojson"===o.type||o.vectorLayerIds&&-1===o.vectorLayerIds.indexOf(i))&&this.fire(new e.ErrorEvent(new Error(`Source layer "${i}" does not exist on source "${o.id}" as specified by style layer "${t.id}"`)))}loaded(){if(!this._loaded)return!1;if(Object.keys(this._updatedSources).length)return!1;for(const e in this._sourceCaches)if(!this._sourceCaches[e].loaded())return!1;return!!this.imageManager.isLoaded()}_serializeLayers(e){const t=[];for(const o of e){const e=this._layers[o];"custom"!==e.type&&t.push(e.serialize())}return t}hasTransitions(){if(this.light&&this.light.hasTransition())return!0;if(this.fog&&this.fog.hasTransition())return!0;for(const e in this._sourceCaches)if(this._sourceCaches[e].hasTransition())return!0;for(const e in this._layers)if(this._layers[e].hasTransition())return!0;return!1}get order(){return this.map._optimizeForTerrain&&this.terrain?this._drapedFirstOrder:this._order}isLayerDraped(e){return!!this.terrain&&Nt[e.type]}_checkLoaded(){if(!this._loaded)throw new Error("Style is not done loading")}update(t){if(!this._loaded)return;const o=this._changed;if(this._changed){const e=Object.keys(this._updatedLayers),o=Object.keys(this._removedLayers);(e.length||o.length)&&this._updateWorkerLayers(e,o);for(const e in this._updatedSources){const t=this._updatedSources[e];"reload"===t?this._reloadSource(e):"clear"===t&&this._clearSource(e)}this._updateTilesForChangedImages();for(const e in this._updatedPaintProps)this._layers[e].updateTransitions(t);this.light.updateTransitions(t),this.fog&&this.fog.updateTransitions(t),this._resetUpdates()}const i={};for(const e in this._sourceCaches){const t=this._sourceCaches[e];i[e]=t.used,t.used=!1}for(const e of this._order){const o=this._layers[e];if(o.recalculate(t,this._availableImages),!o.isHidden(t.zoom)){const e=this._getLayerSourceCache(o);e&&(e.used=!0)}const i=this.map.painter;if(i){const e=o.getProgramIds();if(!e)continue;const n=o.getProgramConfiguration(t.zoom);for(const t of e)i.useProgram(t,n)}}for(const t in i){const o=this._sourceCaches[t];i[t]!==o.used&&o.getSource().fire(new e.Event("data",{sourceDataType:"visibility",dataType:"source",sourceId:o.getSource().id}))}this.light.recalculate(t),this.terrain&&this.terrain.recalculate(t),this.fog&&this.fog.recalculate(t),this.z=t.zoom,this._markersNeedUpdate&&(this._updateMarkersOpacity(),this._markersNeedUpdate=!1),o&&this.fire(new e.Event("data",{dataType:"style"}))}_updateTilesForChangedImages(){const e=Object.keys(this._changedImages);if(e.length){for(const t in this._sourceCaches)this._sourceCaches[t].reloadTilesForDependencies(["icons","patterns"],e);this._changedImages={}}}_updateWorkerLayers(e,t){this.dispatcher.broadcast("updateLayers",{layers:this._serializeLayers(e),removedIds:t})}_resetUpdates(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSources={},this._updatedPaintProps={},this._changedImages={}}setState(t){if(this._checkLoaded(),Xt(this,e.validateStyle(t)))return!1;(t=e.clone$1(t)).layers=Se(t.layers);const o=function(e,t){if(!e)return[{command:Xe.setStyle,args:[t]}];let o=[];try{if(!r(e.version,t.version))return[{command:Xe.setStyle,args:[t]}];r(e.center,t.center)||o.push({command:Xe.setCenter,args:[t.center]}),r(e.zoom,t.zoom)||o.push({command:Xe.setZoom,args:[t.zoom]}),r(e.bearing,t.bearing)||o.push({command:Xe.setBearing,args:[t.bearing]}),r(e.pitch,t.pitch)||o.push({command:Xe.setPitch,args:[t.pitch]}),r(e.sprite,t.sprite)||o.push({command:Xe.setSprite,args:[t.sprite]}),r(e.glyphs,t.glyphs)||o.push({command:Xe.setGlyphs,args:[t.glyphs]}),r(e.transition,t.transition)||o.push({command:Xe.setTransition,args:[t.transition]}),r(e.light,t.light)||o.push({command:Xe.setLight,args:[t.light]}),r(e.fog,t.fog)||o.push({command:Xe.setFog,args:[t.fog]}),r(e.projection,t.projection)||o.push({command:Xe.setProjection,args:[t.projection]});const i={},n=[];!function(e,t,o,i){let n;for(n in t=t||{},e=e||{})e.hasOwnProperty(n)&&(t.hasOwnProperty(n)||De(n,o,i));for(n in t)t.hasOwnProperty(n)&&(e.hasOwnProperty(n)?r(e[n],t[n])||("geojson"===e[n].type&&"geojson"===t[n].type&&Ne(e,t,n)?o.push({command:Xe.setGeoJSONSourceData,args:[n,t[n].data]}):Ce(n,t,o,i)):Ee(n,t,o))}(e.sources,t.sources,n,i);const a=[];e.layers&&e.layers.forEach((e=>{i[e.source]?o.push({command:Xe.removeLayer,args:[e.id]}):a.push(e)}));let s=e.terrain;s&&i[s.source]&&(o.push({command:Xe.setTerrain,args:[void 0]}),s=void 0),o=o.concat(n),r(s,t.terrain)||o.push({command:Xe.setTerrain,args:[t.terrain]}),function(e,t,o){t=t||[];const i=(e=e||[]).map(Ie),n=t.map(Ie),a=e.reduce(Ye,{}),s=t.reduce(Ye,{}),p=i.slice(),c=Object.create(null);let l,b,d,u,M,z,m;for(l=0,b=0;l!(e.command in Dt)));if(0===o.length)return!1;const i=o.filter((e=>!(e.command in Et)));if(i.length>0)throw new Error(`Unimplemented: ${i.map((e=>e.command)).join(", ")}.`);return o.forEach((e=>{"setTransition"!==e.command&&this[e.command].apply(this,e.args)})),this.stylesheet=t,this.updateProjection(),!0}addImage(t,o){if(this.getImage(t))return this.fire(new e.ErrorEvent(new Error("An image with this name already exists.")));this.imageManager.addImage(t,o),this._afterImageUpdated(t)}updateImage(e,t){this.imageManager.updateImage(e,t)}getImage(e){return this.imageManager.getImage(e)}removeImage(t){if(!this.getImage(t))return this.fire(new e.ErrorEvent(new Error("No image with this name exists.")));this.imageManager.removeImage(t),this._afterImageUpdated(t)}_afterImageUpdated(t){this._availableImages=this.imageManager.listImages(),this._changedImages[t]=!0,this._changed=!0,this.dispatcher.broadcast("setImages",this._availableImages),this.fire(new e.Event("data",{dataType:"style"}))}listImages(){return this._checkLoaded(),this._availableImages.slice()}addSource(t,o,i={}){if(this._checkLoaded(),void 0!==this.getSource(t))throw new Error("There is already a source with this ID");if(!o.type)throw new Error(`The type property must be defined, but only the following properties were given: ${Object.keys(o).join(", ")}.`);if(["vector","raster","geojson","video","image"].indexOf(o.type)>=0&&this._validate(e.validateStyle.source,`sources.${t}`,o,null,i))return;this.map&&this.map._collectResourceTiming&&(o.collectResourceTiming=!0);const n=qe(t,o,this.dispatcher,this);n.setEventedParent(this,(()=>({isSourceLoaded:this.loaded(),source:n.serialize(),sourceId:t})));const r=o=>{const i=(o?"symbol:":"other:")+t,r=this._sourceCaches[i]=new e.SourceCache(i,n,o);(o?this._symbolSourceCaches:this._otherSourceCaches)[t]=r,r.style=this,r.onAdd(this.map)};r(!1),"vector"!==o.type&&"geojson"!==o.type||r(!0),n.onAdd&&n.onAdd(this.map),this._changed=!0}removeSource(t){this._checkLoaded();const o=this.getSource(t);if(void 0===o)throw new Error("There is no source with this ID");for(const o in this._layers)if(this._layers[o].source===t)return this.fire(new e.ErrorEvent(new Error(`Source "${t}" cannot be removed while layer "${o}" is using it.`)));if(this.terrain&&this.terrain.get().source===t)return this.fire(new e.ErrorEvent(new Error(`Source "${t}" cannot be removed while terrain is using it.`)));const i=this._getSourceCaches(t);for(const t of i)delete this._sourceCaches[t.id],delete this._updatedSources[t.id],t.fire(new e.Event("data",{sourceDataType:"metadata",dataType:"source",sourceId:t.getSource().id})),t.setEventedParent(null),t.clearTiles();delete this._otherSourceCaches[t],delete this._symbolSourceCaches[t],o.setEventedParent(null),o.onRemove&&o.onRemove(this.map),this._changed=!0}setGeoJSONSourceData(e,t){this._checkLoaded(),this.getSource(e).setData(t),this._changed=!0}getSource(e){const t=this._getSourceCache(e);return t&&t.getSource()}addLayer(t,o,i={}){this._checkLoaded();const n=t.id;if(this.getLayer(n))return void this.fire(new e.ErrorEvent(new Error(`Layer with id "${n}" already exists on this map`)));let r;if("custom"===t.type){if(Xt(this,e.validateCustomStyleLayer(t)))return;r=e.createStyleLayer(t)}else{if("object"==typeof t.source&&(this.addSource(n,t.source),t=e.clone$1(t),t=e.extend(t,{source:n})),this._validate(e.validateStyle.layer,`layers.${n}`,t,{arrayIndex:-1},i))return;r=e.createStyleLayer(t),this._validateLayer(r),r.setEventedParent(this,{layer:{id:n}}),this._serializedLayers[r.id]=r.serialize(),this._updateLayerCount(r,!0)}const a=o?this._order.indexOf(o):this._order.length;if(o&&-1===a)return void this.fire(new e.ErrorEvent(new Error(`Layer with id "${o}" does not exist on this map.`)));this._order.splice(a,0,n),this._layerOrderChanged=!0,this._layers[n]=r;const s=this._getLayerSourceCache(r);if(this._removedLayers[n]&&r.source&&s&&"custom"!==r.type){const e=this._removedLayers[n];delete this._removedLayers[n],e.type!==r.type?this._updatedSources[r.source]="clear":(this._updatedSources[r.source]="reload",s.pause())}this._updateLayer(r),r.onAdd&&r.onAdd(this.map),this._updateDrapeFirstLayers()}moveLayer(t,o){if(this._checkLoaded(),this._changed=!0,!this._layers[t])return void this.fire(new e.ErrorEvent(new Error(`The layer '${t}' does not exist in the map's style and cannot be moved.`)));if(t===o)return;const i=this._order.indexOf(t);this._order.splice(i,1);const n=o?this._order.indexOf(o):this._order.length;o&&-1===n?this.fire(new e.ErrorEvent(new Error(`Layer with id "${o}" does not exist on this map.`))):(this._order.splice(n,0,t),this._layerOrderChanged=!0,this._updateDrapeFirstLayers())}removeLayer(t){this._checkLoaded();const o=this._layers[t];if(!o)return void this.fire(new e.ErrorEvent(new Error(`The layer '${t}' does not exist in the map's style and cannot be removed.`)));o.setEventedParent(null),this._updateLayerCount(o,!1);const i=this._order.indexOf(t);this._order.splice(i,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[t]=o,delete this._layers[t],delete this._serializedLayers[t],delete this._updatedLayers[t],delete this._updatedPaintProps[t],o.onRemove&&o.onRemove(this.map),this._updateDrapeFirstLayers()}getLayer(e){return this._layers[e]}hasLayer(e){return e in this._layers}hasLayerType(e){for(const t in this._layers)if(this._layers[t].type===e)return!0;return!1}setLayerZoomRange(t,o,i){this._checkLoaded();const n=this.getLayer(t);n?n.minzoom===o&&n.maxzoom===i||(null!=o&&(n.minzoom=o),null!=i&&(n.maxzoom=i),this._updateLayer(n)):this.fire(new e.ErrorEvent(new Error(`The layer '${t}' does not exist in the map's style and cannot have zoom extent.`)))}setFilter(t,o,i={}){this._checkLoaded();const n=this.getLayer(t);if(n){if(!r(n.filter,o))return null==o?(n.filter=void 0,void this._updateLayer(n)):void(this._validate(e.validateStyle.filter,`layers.${n.id}.filter`,o,{layerType:n.type},i)||(n.filter=e.clone$1(o),this._updateLayer(n)))}else this.fire(new e.ErrorEvent(new Error(`The layer '${t}' does not exist in the map's style and cannot be filtered.`)))}getFilter(t){return e.clone$1(this.getLayer(t).filter)}setLayoutProperty(t,o,i,n={}){this._checkLoaded();const a=this.getLayer(t);a?r(a.getLayoutProperty(o),i)||(a.setLayoutProperty(o,i,n),this._updateLayer(a)):this.fire(new e.ErrorEvent(new Error(`The layer '${t}' does not exist in the map's style and cannot be styled.`)))}getLayoutProperty(t,o){const i=this.getLayer(t);if(i)return i.getLayoutProperty(o);this.fire(new e.ErrorEvent(new Error(`The layer '${t}' does not exist in the map's style.`)))}setPaintProperty(t,o,i,n={}){this._checkLoaded();const a=this.getLayer(t);a?r(a.getPaintProperty(o),i)||(a.setPaintProperty(o,i,n)&&this._updateLayer(a),this._changed=!0,this._updatedPaintProps[t]=!0):this.fire(new e.ErrorEvent(new Error(`The layer '${t}' does not exist in the map's style and cannot be styled.`)))}getPaintProperty(e,t){return this.getLayer(e).getPaintProperty(t)}setFeatureState(t,o){this._checkLoaded();const i=t.source,n=t.sourceLayer,r=this.getSource(i);if(void 0===r)return void this.fire(new e.ErrorEvent(new Error(`The source '${i}' does not exist in the map's style.`)));const a=r.type;if("geojson"===a&&n)return void this.fire(new e.ErrorEvent(new Error("GeoJSON sources cannot have a sourceLayer parameter.")));if("vector"===a&&!n)return void this.fire(new e.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));void 0===t.id&&this.fire(new e.ErrorEvent(new Error("The feature id parameter must be provided.")));const s=this._getSourceCaches(i);for(const e of s)e.setFeatureState(n,t.id,o)}removeFeatureState(t,o){this._checkLoaded();const i=t.source,n=this.getSource(i);if(void 0===n)return void this.fire(new e.ErrorEvent(new Error(`The source '${i}' does not exist in the map's style.`)));const r=n.type,a="vector"===r?t.sourceLayer:void 0;if("vector"===r&&!a)return void this.fire(new e.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));if(o&&"string"!=typeof t.id&&"number"!=typeof t.id)return void this.fire(new e.ErrorEvent(new Error("A feature id is required to remove its specific state property.")));const s=this._getSourceCaches(i);for(const e of s)e.removeFeatureState(a,t.id,o)}getFeatureState(t){this._checkLoaded();const o=t.source,i=t.sourceLayer,n=this.getSource(o);if(void 0!==n){if("vector"!==n.type||i)return void 0===t.id&&this.fire(new e.ErrorEvent(new Error("The feature id parameter must be provided."))),this._getSourceCaches(o)[0].getFeatureState(i,t.id);this.fire(new e.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")))}else this.fire(new e.ErrorEvent(new Error(`The source '${o}' does not exist in the map's style.`)))}getTransition(){return e.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)}serialize(){const t={};for(const e in this._sourceCaches){const o=this._sourceCaches[e].getSource();t[o.id]||(t[o.id]=o.serialize())}return e.filterObject({version:this.stylesheet.version,name:this.stylesheet.name,metadata:this.stylesheet.metadata,light:this.stylesheet.light,terrain:this.stylesheet.terrain,fog:this.stylesheet.fog,center:this.stylesheet.center,zoom:this.stylesheet.zoom,bearing:this.stylesheet.bearing,pitch:this.stylesheet.pitch,sprite:this.stylesheet.sprite,glyphs:this.stylesheet.glyphs,transition:this.stylesheet.transition,projection:this.stylesheet.projection,sources:t,layers:this._serializeLayers(this._order)},(e=>void 0!==e))}_updateLayer(e){this._updatedLayers[e.id]=!0;const t=this._getLayerSourceCache(e);e.source&&!this._updatedSources[e.source]&&t&&"raster"!==t.getSource().type&&(this._updatedSources[e.source]="reload",t.pause()),this._changed=!0,e.invalidateCompiledFilter()}_flattenAndSortRenderedFeatures(e){const t=e=>"fill-extrusion"===this._layers[e].type,o={},i=[];for(let n=this._order.length-1;n>=0;n--){const r=this._order[n];if(t(r)){o[r]=n;for(const t of e){const e=t[r];if(e)for(const t of e)i.push(t)}}}i.sort(((e,t)=>t.intersectionZ-e.intersectionZ));const n=[];for(let r=this._order.length-1;r>=0;r--){const a=this._order[r];if(t(a))for(let e=i.length-1;e>=0;e--){const t=i[e].feature;if(o[t.layer.id]{const t=this.getLayer(e);return t&&t.is3D()})):this.has3DLayers(),s=Me.createFromScreenPoints(t,i);for(const e in this._sourceCaches){const t=this._sourceCaches[e].getSource().id;o.layers&&!n[t]||r.push(ve(this._sourceCaches[e],this._layers,this._serializedLayers,s,o,i,a,!!this.map._showQueryGeometry))}return this.placement&&r.push(function(e,t,o,i,n,r,a){const s={},p=r.queryRenderedSymbols(i),c=[];for(const e of Object.keys(p).map(Number))c.push(a[e]);c.sort(We);for(const o of c){const i=o.featureIndex.lookupSymbolFeatures(p[o.bucketInstanceId],t,o.bucketIndex,o.sourceLayerIndex,n.filter,n.layers,n.availableImages,e);for(const e in i){const t=s[e]=s[e]||[],n=i[e];n.sort(((e,t)=>{const i=o.featureSortOrder;if(i){const o=i.indexOf(e.featureIndex);return i.indexOf(t.featureIndex)-o}return t.featureIndex-e.featureIndex}));for(const e of n)t.push(e)}}for(const t in s)s[t].forEach((i=>{const n=i.feature,r=o(e[t]).getFeatureState(n.layer["source-layer"],n.id);n.source=n.layer.source,n.layer["source-layer"]&&(n.sourceLayer=n.layer["source-layer"]),n.state=r}));return s}(this._layers,this._serializedLayers,this._getLayerSourceCache.bind(this),s.screenGeometry,o,this.placement.collisionIndex,this.placement.retainedQueryData)),this._flattenAndSortRenderedFeatures(r)}querySourceFeatures(t,o){o&&o.filter&&this._validate(e.validateStyle.filter,"querySourceFeatures.filter",o.filter,null,o);const i=this._getSourceCaches(t);let n=[];for(const e of i)n=n.concat(xe(e,o));return n}addSourceType(e,t,o){return Pt.getSourceType(e)?o(new Error(`A source type called "${e}" already exists.`)):(Pt.setSourceType(e,t),t.workerSourceURL?void this.dispatcher.broadcast("loadWorkerSource",{name:e,url:t.workerSourceURL},o):o(null,null))}getLight(){return this.light.getLight()}setLight(t,o={}){this._checkLoaded();const i=this.light.getLight();let n=!1;for(const e in t)if(!r(t[e],i[e])){n=!0;break}if(!n)return;const a={now:e.exported.now(),transition:e.extend({duration:300,delay:0},this.stylesheet.transition)};this.light.setLight(t,o),this.light.updateTransitions(a)}getTerrain(){return this.terrain&&1===this.terrain.drapeRenderMode?this.terrain.get():null}setTerrainForDraping(){this.setTerrain({source:"",exaggeration:0},0)}setTerrain(t,o=1){if(this._checkLoaded(),!t)return delete this.terrain,delete this.stylesheet.terrain,this.dispatcher.broadcast("enableTerrain",!1),this._force3DLayerUpdate(),void(this._markersNeedUpdate=!0);if(1===o){if("object"==typeof t.source){const o="terrain-dem-src";this.addSource(o,t.source),t=e.clone$1(t),t=e.extend(t,{source:o})}if(this._validate(e.validateStyle.terrain,"terrain",t))return}if(!this.terrain||this.terrain&&o!==this.terrain.drapeRenderMode)this._createTerrain(t,o);else{const o=this.terrain,i=o.get();for(const n in t)if(!r(t[n],i[n])){o.set(t),this.stylesheet.terrain=t;const i={now:e.exported.now(),transition:e.extend({duration:0},this.stylesheet.transition)};o.updateTransitions(i);break}}this._updateDrapeFirstLayers(),this._markersNeedUpdate=!0}_createFog(t){const o=this.fog=new y(t,this.map.transform);this.stylesheet.fog=t;const i={now:e.exported.now(),transition:e.extend({duration:0},this.stylesheet.transition)};o.updateTransitions(i)}_updateMarkersOpacity(){0!==this.map._markers.length&&this.map._requestDomTask((()=>{for(const e of this.map._markers)e._evaluateOpacity()}))}getFog(){return this.fog?this.fog.get():null}setFog(t){if(this._checkLoaded(),!t)return delete this.fog,delete this.stylesheet.fog,void(this._markersNeedUpdate=!0);if(this.fog){const o=this.fog,i=o.get();for(const n in t)if(!r(t[n],i[n])){o.set(t),this.stylesheet.fog=t;const i={now:e.exported.now(),transition:e.extend({duration:0},this.stylesheet.transition)};o.updateTransitions(i);break}}else this._createFog(t);this._markersNeedUpdate=!0}_updateDrapeFirstLayers(){if(!this.map._optimizeForTerrain||!this.terrain)return;const e=this._order.filter((e=>this.isLayerDraped(this._layers[e]))),t=this._order.filter((e=>!this.isLayerDraped(this._layers[e])));this._drapedFirstOrder=[],this._drapedFirstOrder.push(...e),this._drapedFirstOrder.push(...t)}_createTerrain(t,o){const i=this.terrain=new f(t,o);this.stylesheet.terrain=t,this.dispatcher.broadcast("enableTerrain",!0),this._force3DLayerUpdate();const n={now:e.exported.now(),transition:e.extend({duration:0},this.stylesheet.transition)};i.updateTransitions(n)}_force3DLayerUpdate(){for(const e in this._layers){const t=this._layers[e];"fill-extrusion"===t.type&&this._updateLayer(t)}}_forceSymbolLayerUpdate(){for(const e in this._layers){const t=this._layers[e];"symbol"===t.type&&this._updateLayer(t)}}_validate(t,o,i,n,r={}){return(!r||!1!==r.validate)&&Xt(this,t.call(e.validateStyle,e.extend({key:o,style:this.serialize(),value:i,styleSpec:e.spec},n)))}_remove(){this._request&&(this._request.cancel(),this._request=null),this._spriteRequest&&(this._spriteRequest.cancel(),this._spriteRequest=null),e.evented.off("pluginStateChange",this._rtlTextPluginCallback);for(const e in this._layers)this._layers[e].setEventedParent(null);for(const e in this._sourceCaches)this._sourceCaches[e].clearTiles(),this._sourceCaches[e].setEventedParent(null);this.imageManager.setEventedParent(null),this.setEventedParent(null),this.dispatcher.remove()}_clearSource(e){const t=this._getSourceCaches(e);for(const e of t)e.clearTiles()}_reloadSource(e){const t=this._getSourceCaches(e);for(const e of t)e.resume(),e.reload()}_updateSources(e){for(const t in this._sourceCaches)this._sourceCaches[t].update(e)}_generateCollisionBoxes(){for(const e in this._sourceCaches){const t=this._sourceCaches[e];t.resume(),t.reload()}}_updatePlacement(t,o,i,n,r=!1){let a=!1,s=!1;const p={};for(const e of this._order){const o=this._layers[e];if("symbol"!==o.type)continue;if(!p[o.source]){const e=this._getLayerSourceCache(o);if(!e)continue;p[o.source]=e.getRenderableIds(!0).map((t=>e.getTileByID(t))).sort(((e,t)=>t.tileID.overscaledZ-e.tileID.overscaledZ||(e.tileID.isLessThan(t.tileID)?-1:1)))}const i=this.crossTileSymbolIndex.addLayer(o,p[o.source],t.center.lng,t.projection);a=a||i}if(this.crossTileSymbolIndex.pruneUnusedLayers(this._order),r=r||this._layerOrderChanged||0===i,this._layerOrderChanged&&this.fire(new e.Event("neworder")),(r||!this.pauseablePlacement||this.pauseablePlacement.isDone()&&!this.placement.stillRecent(e.exported.now(),t.zoom))&&(this.pauseablePlacement=new Lt(t,this._order,r,o,i,n,this.placement,this.fog&&t.projection.supportsFog?this.fog.state:null),this._layerOrderChanged=!1),this.pauseablePlacement.isDone()?this.placement.setStale():(this.pauseablePlacement.continuePlacement(this._order,this._layers,p),this.pauseablePlacement.isDone()&&(this.placement=this.pauseablePlacement.commit(e.exported.now()),s=!0),a&&this.pauseablePlacement.placement.setStale()),s||a)for(const e of this._order){const t=this._layers[e];"symbol"===t.type&&this.placement.updateLayerOpacities(t,p[t.source])}return!this.pauseablePlacement.isDone()||this.placement.hasTransitions(e.exported.now())}_releaseSymbolFadeTiles(){for(const e in this._sourceCaches)this._sourceCaches[e].releaseSymbolFadeTiles()}getImages(e,t,o){this.imageManager.getImages(t.icons,o),this._updateTilesForChangedImages();const i=e=>{e&&e.setDependencies(t.tileID.key,t.type,t.icons)};i(this._otherSourceCaches[t.source]),i(this._symbolSourceCaches[t.source])}getGlyphs(e,t,o){this.glyphManager.getGlyphs(t.stacks,o)}getResource(t,o,i){return e.makeRequest(o,i)}_getSourceCache(e){return this._otherSourceCaches[e]}_getLayerSourceCache(e){return"symbol"===e.type?this._symbolSourceCaches[e.source]:this._otherSourceCaches[e.source]}_getSourceCaches(e){const t=[];return this._otherSourceCaches[e]&&t.push(this._otherSourceCaches[e]),this._symbolSourceCaches[e]&&t.push(this._symbolSourceCaches[e]),t}has3DLayers(){return this._num3DLayers>0}hasSymbolLayers(){return this._numSymbolLayers>0}hasCircleLayers(){return this._numCircleLayers>0}_clearWorkerCaches(){this.dispatcher.broadcast("clearCaches")}destroy(){this._clearWorkerCaches(),this.terrainSetForDrapingOnly()&&(delete this.terrain,delete this.stylesheet.terrain)}}Pt.getSourceType=function(e){return ge[e]},Pt.setSourceType=function(e,t){ge[e]=t},Pt.registerForPluginStateChange=e.registerForPluginStateChange;var It="\n#define EPSILON 0.0000001\n#define PI 3.141592653589793\n#define EXTENT 8192.0\n#ifdef FOG\nuniform mediump vec4 u_fog_color;uniform mediump vec2 u_fog_range;uniform mediump float u_fog_horizon_blend;varying vec3 v_fog_pos;float fog_range(float depth) {return (depth-u_fog_range[0])/(u_fog_range[1]-u_fog_range[0]);}float fog_horizon_blending(vec3 camera_dir) {float t=max(0.0,camera_dir.z/u_fog_horizon_blend);return u_fog_color.a*exp(-3.0*t*t);}float fog_opacity(float t) {const float decay=6.0;float falloff=1.0-min(1.0,exp(-decay*t));falloff*=falloff*falloff;return u_fog_color.a*min(1.0,1.00747*falloff);}\n#endif",Yt="attribute highp vec3 a_pos_3f;uniform lowp mat4 u_matrix;varying highp vec3 v_uv;void main() {const mat3 half_neg_pi_around_x=mat3(1.0,0.0, 0.0,0.0,0.0,-1.0,0.0,1.0, 0.0);v_uv=half_neg_pi_around_x*a_pos_3f;vec4 pos=u_matrix*vec4(a_pos_3f,1.0);gl_Position=pos.xyww;}";let jt={},Ft={};jt=Gt("","\n#define ELEVATION_SCALE 7.0\n#define ELEVATION_OFFSET 450.0\n#ifdef PROJECTION_GLOBE_VIEW\nuniform vec3 u_tile_tl_up;uniform vec3 u_tile_tr_up;uniform vec3 u_tile_br_up;uniform vec3 u_tile_bl_up;uniform float u_tile_up_scale;vec3 elevationVector(vec2 pos) {vec2 uv=pos/EXTENT;vec3 up=normalize(mix(\nmix(u_tile_tl_up,u_tile_tr_up,uv.xxx),mix(u_tile_bl_up,u_tile_br_up,uv.xxx),uv.yyy));return up*u_tile_up_scale;}\n#else\nvec3 elevationVector(vec2 pos) { return vec3(0,0,1); }\n#endif\n#ifdef TERRAIN\n#ifdef TERRAIN_DEM_FLOAT_FORMAT\nuniform highp sampler2D u_dem;uniform highp sampler2D u_dem_prev;\n#else\nuniform sampler2D u_dem;uniform sampler2D u_dem_prev;\n#endif\nuniform vec4 u_dem_unpack;uniform vec2 u_dem_tl;uniform vec2 u_dem_tl_prev;uniform float u_dem_scale;uniform float u_dem_scale_prev;uniform float u_dem_size;uniform float u_dem_lerp;uniform float u_exaggeration;uniform float u_meter_to_dem;uniform mat4 u_label_plane_matrix_inv;uniform sampler2D u_depth;uniform vec2 u_depth_size_inv;vec4 tileUvToDemSample(vec2 uv,float dem_size,float dem_scale,vec2 dem_tl) {vec2 pos=dem_size*(uv*dem_scale+dem_tl)+1.0;vec2 f=fract(pos);return vec4((pos-f+0.5)/(dem_size+2.0),f);}float decodeElevation(vec4 v) {return dot(vec4(v.xyz*255.0,-1.0),u_dem_unpack);}float currentElevation(vec2 apos) {\n#ifdef TERRAIN_DEM_FLOAT_FORMAT\nvec2 pos=(u_dem_size*(apos/8192.0*u_dem_scale+u_dem_tl)+1.5)/(u_dem_size+2.0);return u_exaggeration*texture2D(u_dem,pos).a;\n#else\nfloat dd=1.0/(u_dem_size+2.0);vec4 r=tileUvToDemSample(apos/8192.0,u_dem_size,u_dem_scale,u_dem_tl);vec2 pos=r.xy;vec2 f=r.zw;float tl=decodeElevation(texture2D(u_dem,pos));\n#ifdef TERRAIN_DEM_NEAREST_FILTER\nreturn u_exaggeration*tl;\n#endif\nfloat tr=decodeElevation(texture2D(u_dem,pos+vec2(dd,0.0)));float bl=decodeElevation(texture2D(u_dem,pos+vec2(0.0,dd)));float br=decodeElevation(texture2D(u_dem,pos+vec2(dd,dd)));return u_exaggeration*mix(mix(tl,tr,f.x),mix(bl,br,f.x),f.y);\n#endif\n}float prevElevation(vec2 apos) {\n#ifdef TERRAIN_DEM_FLOAT_FORMAT\nvec2 pos=(u_dem_size*(apos/8192.0*u_dem_scale_prev+u_dem_tl_prev)+1.5)/(u_dem_size+2.0);return u_exaggeration*texture2D(u_dem_prev,pos).a;\n#else\nfloat dd=1.0/(u_dem_size+2.0);vec4 r=tileUvToDemSample(apos/8192.0,u_dem_size,u_dem_scale_prev,u_dem_tl_prev);vec2 pos=r.xy;vec2 f=r.zw;float tl=decodeElevation(texture2D(u_dem_prev,pos));float tr=decodeElevation(texture2D(u_dem_prev,pos+vec2(dd,0.0)));float bl=decodeElevation(texture2D(u_dem_prev,pos+vec2(0.0,dd)));float br=decodeElevation(texture2D(u_dem_prev,pos+vec2(dd,dd)));return u_exaggeration*mix(mix(tl,tr,f.x),mix(bl,br,f.x),f.y);\n#endif\n}\n#ifdef TERRAIN_VERTEX_MORPHING\nfloat elevation(vec2 apos) {float nextElevation=currentElevation(apos);float prevElevation=prevElevation(apos);return mix(prevElevation,nextElevation,u_dem_lerp);}\n#else\nfloat elevation(vec2 apos) {return currentElevation(apos);}\n#endif\nfloat unpack_depth(vec4 rgba_depth)\n{const vec4 bit_shift=vec4(1.0/(256.0*256.0*256.0),1.0/(256.0*256.0),1.0/256.0,1.0);return dot(rgba_depth,bit_shift)*2.0-1.0;}bool isOccluded(vec4 frag) {vec3 coord=frag.xyz/frag.w;float depth=unpack_depth(texture2D(u_depth,(coord.xy+1.0)*0.5));return coord.z > depth+0.0005;}float occlusionFade(vec4 frag) {vec3 coord=frag.xyz/frag.w;vec3 df=vec3(5.0*u_depth_size_inv,0.0);vec2 uv=0.5*coord.xy+0.5;vec4 depth=vec4(\nunpack_depth(texture2D(u_depth,uv-df.xz)),unpack_depth(texture2D(u_depth,uv+df.xz)),unpack_depth(texture2D(u_depth,uv-df.zy)),unpack_depth(texture2D(u_depth,uv+df.zy))\n);return dot(vec4(0.25),vec4(1.0)-clamp(300.0*(vec4(coord.z-0.001)-depth),0.0,1.0));}vec4 fourSample(vec2 pos,vec2 off) {\n#ifdef TERRAIN_DEM_FLOAT_FORMAT\nfloat tl=texture2D(u_dem,pos).a;float tr=texture2D(u_dem,pos+vec2(off.x,0.0)).a;float bl=texture2D(u_dem,pos+vec2(0.0,off.y)).a;float br=texture2D(u_dem,pos+off).a;\n#else\nvec4 demtl=vec4(texture2D(u_dem,pos).xyz*255.0,-1.0);float tl=dot(demtl,u_dem_unpack);vec4 demtr=vec4(texture2D(u_dem,pos+vec2(off.x,0.0)).xyz*255.0,-1.0);float tr=dot(demtr,u_dem_unpack);vec4 dembl=vec4(texture2D(u_dem,pos+vec2(0.0,off.y)).xyz*255.0,-1.0);float bl=dot(dembl,u_dem_unpack);vec4 dembr=vec4(texture2D(u_dem,pos+off).xyz*255.0,-1.0);float br=dot(dembr,u_dem_unpack);\n#endif\nreturn vec4(tl,tr,bl,br);}float flatElevation(vec2 pack) {vec2 apos=floor(pack/8.0);vec2 span=10.0*(pack-apos*8.0);vec2 uvTex=(apos-vec2(1.0,1.0))/8190.0;float size=u_dem_size+2.0;float dd=1.0/size;vec2 pos=u_dem_size*(uvTex*u_dem_scale+u_dem_tl)+1.0;vec2 f=fract(pos);pos=(pos-f+0.5)*dd;vec4 h=fourSample(pos,vec2(dd));float z=mix(mix(h.x,h.y,f.x),mix(h.z,h.w,f.x),f.y);vec2 w=floor(0.5*(span*u_meter_to_dem-1.0));vec2 d=dd*w;vec4 bounds=vec4(d,vec2(1.0)-d);h=fourSample(pos-d,2.0*d+vec2(dd));vec4 diff=abs(h.xzxy-h.ywzw);vec2 slope=min(vec2(0.25),u_meter_to_dem*0.5*(diff.xz+diff.yw)/(2.0*w+vec2(1.0)));vec2 fix=slope*span;float base=z+max(fix.x,fix.y);return u_exaggeration*base;}float elevationFromUint16(float word) {return u_exaggeration*(word/ELEVATION_SCALE-ELEVATION_OFFSET);}\n#else\nfloat elevation(vec2 pos) { return 0.0; }bool isOccluded(vec4 frag) { return false; }float occlusionFade(vec4 frag) { return 1.0; }\n#endif",!0),Ft=Gt("#ifdef FOG\nuniform float u_fog_temporal_offset;float fog_opacity(vec3 pos) {float depth=length(pos);return fog_opacity(fog_range(depth));}vec3 fog_apply(vec3 color,vec3 pos) {float depth=length(pos);float opacity=fog_opacity(fog_range(depth));opacity*=fog_horizon_blending(pos/depth);return mix(color,u_fog_color.rgb,opacity);}vec4 fog_apply_from_vert(vec4 color,float fog_opac) {float alpha=EPSILON+color.a;color.rgb=mix(color.rgb/alpha,u_fog_color.rgb,fog_opac)*alpha;return color;}vec3 fog_apply_sky_gradient(vec3 camera_ray,vec3 sky_color) {float horizon_blend=fog_horizon_blending(normalize(camera_ray));return mix(sky_color,u_fog_color.rgb,horizon_blend);}vec4 fog_apply_premultiplied(vec4 color,vec3 pos) {float alpha=EPSILON+color.a;color.rgb=fog_apply(color.rgb/alpha,pos)*alpha;return color;}vec3 fog_dither(vec3 color) {vec2 dither_seed=gl_FragCoord.xy+u_fog_temporal_offset;return dither(color,dither_seed);}vec4 fog_dither(vec4 color) {return vec4(fog_dither(color.rgb),color.a);}\n#endif","#ifdef FOG\nuniform mat4 u_fog_matrix;vec3 fog_position(vec3 pos) {return (u_fog_matrix*vec4(pos,1.0)).xyz;}vec3 fog_position(vec2 pos) {return fog_position(vec3(pos,0.0));}float fog(vec3 pos) {float depth=length(pos);float opacity=fog_opacity(fog_range(depth));return opacity*fog_horizon_blending(pos/depth);}\n#endif",!0);const Ht=Gt("\nhighp vec3 hash(highp vec2 p) {highp vec3 p3=fract(p.xyx*vec3(443.8975,397.2973,491.1871));p3+=dot(p3,p3.yxz+19.19);return fract((p3.xxy+p3.yzz)*p3.zyx);}vec3 dither(vec3 color,highp vec2 seed) {vec3 rnd=hash(seed)+hash(seed+0.59374)-0.5;return color+rnd/255.0;}\n#ifdef TERRAIN\nhighp vec4 pack_depth(highp float ndc_z) {highp float depth=ndc_z*0.5+0.5;const highp vec4 bit_shift=vec4(256.0*256.0*256.0,256.0*256.0,256.0,1.0);const highp vec4 bit_mask =vec4(0.0,1.0/256.0,1.0/256.0,1.0/256.0);highp vec4 res=fract(depth*bit_shift);res-=res.xxyz*bit_mask;return res;}\n#endif","\nfloat wrap(float n,float min,float max) {float d=max-min;float w=mod(mod(n-min,d)+d,d)+min;return (w==min) ? max : w;}vec3 mercator_tile_position(mat4 matrix,vec2 tile_anchor,vec3 tile_id,vec2 mercator_center) {\n#if defined(PROJECTION_GLOBE_VIEW) && !defined(PROJECTED_POS_ON_VIEWPORT)\nfloat tiles=tile_id.z;vec2 mercator=(tile_anchor/EXTENT+tile_id.xy)/tiles;mercator-=mercator_center;mercator.x=wrap(mercator.x,-0.5,0.5);vec4 mercator_tile=vec4(mercator.xy*EXTENT,EXTENT/(2.0*PI),1.0);mercator_tile=matrix*mercator_tile;return mercator_tile.xyz;\n#else\nreturn vec3(0.0);\n#endif\n}vec3 mix_globe_mercator(vec3 globe,vec3 mercator,float t) {\n#if defined(PROJECTION_GLOBE_VIEW) && !defined(PROJECTED_POS_ON_VIEWPORT)\nreturn mix(globe,mercator,t);\n#else\nreturn globe;\n#endif\n}\n#ifdef PROJECTION_GLOBE_VIEW\nmat3 globe_mercator_surface_vectors(vec3 pos_normal,vec3 up_dir,float zoom_transition) {vec3 normal=zoom_transition==0.0 ? pos_normal : normalize(mix(pos_normal,up_dir,zoom_transition));vec3 xAxis=normalize(vec3(normal.z,0.0,-normal.x));vec3 yAxis=normalize(cross(normal,xAxis));return mat3(xAxis,yAxis,normal);}\n#endif\nvec2 unpack_float(const float packedValue) {int packedIntValue=int(packedValue);int v0=packedIntValue/256;return vec2(v0,packedIntValue-v0*256);}vec2 unpack_opacity(const float packedOpacity) {int intOpacity=int(packedOpacity)/2;return vec2(float(intOpacity)/127.0,mod(packedOpacity,2.0));}vec4 decode_color(const vec2 encodedColor) {return vec4(\nunpack_float(encodedColor[0])/255.0,unpack_float(encodedColor[1])/255.0\n);}float unpack_mix_vec2(const vec2 packedValue,const float t) {return mix(packedValue[0],packedValue[1],t);}vec4 unpack_mix_color(const vec4 packedColors,const float t) {vec4 minColor=decode_color(vec2(packedColors[0],packedColors[1]));vec4 maxColor=decode_color(vec2(packedColors[2],packedColors[3]));return mix(minColor,maxColor,t);}vec2 get_pattern_pos(const vec2 pixel_coord_upper,const vec2 pixel_coord_lower,const vec2 pattern_size,const float tile_units_to_pixels,const vec2 pos) {vec2 offset=mod(mod(mod(pixel_coord_upper,pattern_size)*256.0,pattern_size)*256.0+pixel_coord_lower,pattern_size);return (tile_units_to_pixels*pos+offset)/pattern_size;}const vec4 AWAY=vec4(-1000.0,-1000.0,-1000.0,1);//Normalized device coordinate that is not rendered."),Ut=It;var Vt={background:Gt("uniform vec4 u_color;uniform float u_opacity;void main() {vec4 out_color=u_color;\n#ifdef FOG\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\n#endif\ngl_FragColor=out_color*u_opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);\n#ifdef FOG\nv_fog_pos=fog_position(a_pos);\n#endif\n}"),backgroundPattern:Gt("uniform vec2 u_pattern_tl_a;uniform vec2 u_pattern_br_a;uniform vec2 u_pattern_tl_b;uniform vec2 u_pattern_br_b;uniform vec2 u_texsize;uniform float u_mix;uniform float u_opacity;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;void main() {vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(u_pattern_tl_a/u_texsize,u_pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(u_pattern_tl_b/u_texsize,u_pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);vec4 out_color=mix(color1,color2,u_mix);\n#ifdef FOG\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\n#endif\ngl_FragColor=out_color*u_opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_pattern_size_a;uniform vec2 u_pattern_size_b;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_scale_a;uniform float u_scale_b;uniform float u_tile_units_to_pixels;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_scale_a*u_pattern_size_a,u_tile_units_to_pixels,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_scale_b*u_pattern_size_b,u_tile_units_to_pixels,a_pos);\n#ifdef FOG\nv_fog_pos=fog_position(a_pos);\n#endif\n}"),circle:Gt("varying vec3 v_data;varying float v_visibility;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define mediump float radius\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define highp vec4 stroke_color\n#pragma mapbox: define mediump float stroke_width\n#pragma mapbox: define lowp float stroke_opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize mediump float radius\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize highp vec4 stroke_color\n#pragma mapbox: initialize mediump float stroke_width\n#pragma mapbox: initialize lowp float stroke_opacity\nvec2 extrude=v_data.xy;float extrude_length=length(extrude);lowp float antialiasblur=v_data.z;float antialiased_blur=-max(blur,antialiasblur);float opacity_t=smoothstep(0.0,antialiased_blur,extrude_length-1.0);float color_t=stroke_width < 0.01 ? 0.0 : smoothstep(\nantialiased_blur,0.0,extrude_length-radius/(radius+stroke_width)\n);vec4 out_color=mix(color*opacity,stroke_color*stroke_opacity,color_t);\n#ifdef FOG\nout_color=fog_apply_premultiplied(out_color,v_fog_pos);\n#endif\ngl_FragColor=out_color*(v_visibility*opacity_t);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","#define NUM_VISIBILITY_RINGS 2\n#define INV_SQRT2 0.70710678\n#define ELEVATION_BIAS 0.0001\n#define NUM_SAMPLES_PER_RING 16\nuniform mat4 u_matrix;uniform mat2 u_extrude_scale;uniform lowp float u_device_pixel_ratio;uniform highp float u_camera_to_center_distance;attribute vec2 a_pos;\n#ifdef PROJECTION_GLOBE_VIEW\nattribute vec3 a_pos_3;attribute vec3 a_pos_normal_3;attribute float a_scale;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_tile_id;uniform float u_zoom_transition;uniform vec3 u_up_dir;\n#endif\nvarying vec3 v_data;varying float v_visibility;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define mediump float radius\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define highp vec4 stroke_color\n#pragma mapbox: define mediump float stroke_width\n#pragma mapbox: define lowp float stroke_opacity\nvec2 calc_offset(vec2 extrusion,float radius,float stroke_width, float view_scale) {return extrusion*(radius+stroke_width)*u_extrude_scale*view_scale;}float cantilevered_elevation(vec2 pos,float radius,float stroke_width,float view_scale) {vec2 c1=pos+calc_offset(vec2(-1,-1),radius,stroke_width,view_scale);vec2 c2=pos+calc_offset(vec2(1,-1),radius,stroke_width,view_scale);vec2 c3=pos+calc_offset(vec2(1,1),radius,stroke_width,view_scale);vec2 c4=pos+calc_offset(vec2(-1,1),radius,stroke_width,view_scale);float h1=elevation(c1)+ELEVATION_BIAS;float h2=elevation(c2)+ELEVATION_BIAS;float h3=elevation(c3)+ELEVATION_BIAS;float h4=elevation(c4)+ELEVATION_BIAS;return max(h4,max(h3,max(h1,h2)));}float circle_elevation(vec2 pos) {\n#if defined(TERRAIN)\nreturn elevation(pos)+ELEVATION_BIAS;\n#else\nreturn 0.0;\n#endif\n}vec4 project_vertex(vec2 extrusion,vec4 world_center,vec4 projected_center,float radius,float stroke_width, float view_scale,mat3 surface_vectors) {vec2 sample_offset=calc_offset(extrusion,radius,stroke_width,view_scale);\n#ifdef PITCH_WITH_MAP\n#ifdef PROJECTION_GLOBE_VIEW\nreturn u_matrix*( world_center+vec4(sample_offset.x*surface_vectors[0]+sample_offset.y*surface_vectors[1],0) );\n#else\nreturn u_matrix*( world_center+vec4(sample_offset,0,0) );\n#endif\n#else\nreturn projected_center+vec4(sample_offset,0,0);\n#endif\n}float get_sample_step() {\n#ifdef PITCH_WITH_MAP\nreturn 2.0*PI/float(NUM_SAMPLES_PER_RING);\n#else\nreturn PI/float(NUM_SAMPLES_PER_RING);\n#endif\n}void main(void) {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize mediump float radius\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize highp vec4 stroke_color\n#pragma mapbox: initialize mediump float stroke_width\n#pragma mapbox: initialize lowp float stroke_opacity\nvec2 extrude=vec2(mod(a_pos,2.0)*2.0-1.0);vec2 circle_center=floor(a_pos*0.5);\n#ifdef PROJECTION_GLOBE_VIEW\nvec2 scaled_extrude=extrude*a_scale;vec3 pos_normal_3=a_pos_normal_3/16384.0;mat3 surface_vectors=globe_mercator_surface_vectors(pos_normal_3,u_up_dir,u_zoom_transition);vec3 surface_extrusion=scaled_extrude.x*surface_vectors[0]+scaled_extrude.y*surface_vectors[1];vec3 globe_elevation=elevationVector(circle_center)*circle_elevation(circle_center);vec3 globe_pos=a_pos_3+surface_extrusion+globe_elevation;vec3 mercator_elevation=u_up_dir*u_tile_up_scale*circle_elevation(circle_center);vec3 merc_pos=mercator_tile_position(u_inv_rot_matrix,circle_center,u_tile_id,u_merc_center)+surface_extrusion+mercator_elevation;vec3 pos=mix_globe_mercator(globe_pos,merc_pos,u_zoom_transition);vec4 world_center=vec4(pos,1);\n#else \nmat3 surface_vectors=mat3(1.0);float height=circle_elevation(circle_center);vec4 world_center=vec4(circle_center,height,1);\n#endif\nvec4 projected_center=u_matrix*world_center;float view_scale=0.0;\n#ifdef PITCH_WITH_MAP\n#ifdef SCALE_WITH_MAP\nview_scale=1.0;\n#else\nview_scale=projected_center.w/u_camera_to_center_distance;\n#endif\n#else\n#ifdef SCALE_WITH_MAP\nview_scale=u_camera_to_center_distance;\n#else\nview_scale=projected_center.w;\n#endif\n#endif\n#if defined(SCALE_WITH_MAP) && defined(PROJECTION_GLOBE_VIEW)\nview_scale*=a_scale;\n#endif\ngl_Position=project_vertex(extrude,world_center,projected_center,radius,stroke_width,view_scale,surface_vectors);float visibility=0.0;\n#ifdef TERRAIN\nfloat step=get_sample_step();\n#ifdef PITCH_WITH_MAP\nfloat cantilevered_height=cantilevered_elevation(circle_center,radius,stroke_width,view_scale);vec4 occlusion_world_center=vec4(circle_center,cantilevered_height,1);vec4 occlusion_projected_center=u_matrix*occlusion_world_center;\n#else\nvec4 occlusion_world_center=world_center;vec4 occlusion_projected_center=projected_center;\n#endif\nfor(int ring=0; ring < NUM_VISIBILITY_RINGS; ring++) {float scale=(float(ring)+1.0)/float(NUM_VISIBILITY_RINGS);for(int i=0; i < NUM_SAMPLES_PER_RING; i++) {vec2 extrusion=vec2(cos(step*float(i)),-sin(step*float(i)))*scale;vec4 frag_pos=project_vertex(extrusion,occlusion_world_center,occlusion_projected_center,radius,stroke_width,view_scale,surface_vectors);visibility+=float(!isOccluded(frag_pos));}}visibility/=float(NUM_VISIBILITY_RINGS)*float(NUM_SAMPLES_PER_RING);\n#else\nvisibility=1.0;\n#endif\n#ifdef PROJECTION_GLOBE_VIEW\nvisibility=1.0;\n#endif\nv_visibility=visibility;lowp float antialiasblur=1.0/u_device_pixel_ratio/(radius+stroke_width);v_data=vec3(extrude.x,extrude.y,antialiasblur);\n#ifdef FOG\nv_fog_pos=fog_position(world_center.xyz);\n#endif\n}"),clippingMask:Gt("void main() {gl_FragColor=vec4(1.0);}","attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}"),heatmap:Gt("uniform highp float u_intensity;varying vec2 v_extrude;\n#pragma mapbox: define highp float weight\n#define GAUSS_COEF 0.3989422804014327\nvoid main() {\n#pragma mapbox: initialize highp float weight\nfloat d=-0.5*3.0*3.0*dot(v_extrude,v_extrude);float val=weight*u_intensity*GAUSS_COEF*exp(d);gl_FragColor=vec4(val,1.0,1.0,1.0);\n#ifdef FOG\ngl_FragColor.r*=pow(1.0-fog_opacity(v_fog_pos),2.0);\n#endif\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform float u_extrude_scale;uniform float u_opacity;uniform float u_intensity;attribute vec2 a_pos;\n#ifdef PROJECTION_GLOBE_VIEW\nattribute vec3 a_pos_3;attribute vec3 a_pos_normal_3;attribute float a_scale;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_tile_id;uniform float u_zoom_transition;uniform vec3 u_up_dir;\n#endif\nvarying vec2 v_extrude;\n#pragma mapbox: define highp float weight\n#pragma mapbox: define mediump float radius\nconst highp float ZERO=1.0/255.0/16.0;\n#define GAUSS_COEF 0.3989422804014327\nvoid main(void) {\n#pragma mapbox: initialize highp float weight\n#pragma mapbox: initialize mediump float radius\nvec2 unscaled_extrude=vec2(mod(a_pos,2.0)*2.0-1.0);float S=sqrt(-2.0*log(ZERO/weight/u_intensity/GAUSS_COEF))/3.0;v_extrude=S*unscaled_extrude;vec2 extrude=v_extrude*radius*u_extrude_scale;vec2 tilePos=floor(a_pos*0.5);\n#ifdef PROJECTION_GLOBE_VIEW\nextrude*=a_scale;vec3 pos_normal_3=a_pos_normal_3/16384.0;mat3 surface_vectors=globe_mercator_surface_vectors(pos_normal_3,u_up_dir,u_zoom_transition);vec3 surface_extrusion=extrude.x*surface_vectors[0]+extrude.y*surface_vectors[1];vec3 globe_elevation=elevationVector(tilePos)*elevation(tilePos);vec3 globe_pos=a_pos_3+surface_extrusion+globe_elevation;vec3 mercator_elevation=u_up_dir*u_tile_up_scale*elevation(tilePos);vec3 merc_pos=mercator_tile_position(u_inv_rot_matrix,tilePos,u_tile_id,u_merc_center)+surface_extrusion+mercator_elevation;vec3 pos=mix_globe_mercator(globe_pos,merc_pos,u_zoom_transition);\n#else\nvec3 pos=vec3(tilePos+extrude,elevation(tilePos));\n#endif\ngl_Position=u_matrix*vec4(pos,1);\n#ifdef FOG\nv_fog_pos=fog_position(pos);\n#endif\n}"),heatmapTexture:Gt("uniform sampler2D u_image;uniform sampler2D u_color_ramp;uniform float u_opacity;varying vec2 v_pos;void main() {float t=texture2D(u_image,v_pos).r;vec4 color=texture2D(u_color_ramp,vec2(t,0.5));gl_FragColor=color*u_opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(0.0);\n#endif\n}","attribute vec2 a_pos;varying vec2 v_pos;void main() {gl_Position=vec4(a_pos,0,1);v_pos=a_pos*0.5+0.5;}"),collisionBox:Gt("varying float v_placed;varying float v_notUsed;void main() {vec4 red =vec4(1.0,0.0,0.0,1.0);vec4 blue=vec4(0.0,0.0,1.0,0.5);gl_FragColor =mix(red,blue,step(0.5,v_placed))*0.5;gl_FragColor*=mix(1.0,0.1,step(0.5,v_notUsed));}","attribute vec3 a_pos;attribute vec2 a_anchor_pos;attribute vec2 a_extrude;attribute vec2 a_placed;attribute vec2 a_shift;attribute float a_size_scale;attribute vec2 a_padding;uniform mat4 u_matrix;uniform vec2 u_extrude_scale;uniform float u_camera_to_center_distance;varying float v_placed;varying float v_notUsed;void main() {vec4 projectedPoint=u_matrix*vec4(a_pos+elevationVector(a_anchor_pos)*elevation(a_anchor_pos),1);highp float camera_to_anchor_distance=projectedPoint.w;highp float collision_perspective_ratio=clamp(\n0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,1.5);gl_Position=projectedPoint;gl_Position.xy+=(a_extrude*a_size_scale+a_shift+a_padding)*u_extrude_scale*gl_Position.w*collision_perspective_ratio;v_placed=a_placed.x;v_notUsed=a_placed.y;}"),collisionCircle:Gt("varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;void main() {float alpha=0.5*min(v_perspective_ratio,1.0);float stroke_radius=0.9*max(v_perspective_ratio,1.0);float distance_to_center=length(v_extrude);float distance_to_edge=abs(distance_to_center-v_radius);float opacity_t=smoothstep(-stroke_radius,0.0,-distance_to_edge);vec4 color=mix(vec4(0.0,0.0,1.0,0.5),vec4(1.0,0.0,0.0,1.0),v_collision);gl_FragColor=color*alpha*opacity_t;}","attribute vec2 a_pos_2f;attribute float a_radius;attribute vec2 a_flags;uniform mat4 u_matrix;uniform mat4 u_inv_matrix;uniform vec2 u_viewport_size;uniform float u_camera_to_center_distance;varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;vec3 toTilePosition(vec2 screenPos) {vec4 rayStart=u_inv_matrix*vec4(screenPos,-1.0,1.0);vec4 rayEnd =u_inv_matrix*vec4(screenPos, 1.0,1.0);rayStart.xyz/=rayStart.w;rayEnd.xyz /=rayEnd.w;highp float t=(0.0-rayStart.z)/(rayEnd.z-rayStart.z);return mix(rayStart.xyz,rayEnd.xyz,t);}void main() {vec2 quadCenterPos=a_pos_2f;float radius=a_radius;float collision=a_flags.x;float vertexIdx=a_flags.y;vec2 quadVertexOffset=vec2(\nmix(-1.0,1.0,float(vertexIdx >=2.0)),mix(-1.0,1.0,float(vertexIdx >=1.0 && vertexIdx <=2.0)));vec2 quadVertexExtent=quadVertexOffset*radius;vec3 tilePos=toTilePosition(quadCenterPos);vec4 clipPos=u_matrix*vec4(tilePos,1.0);highp float camera_to_anchor_distance=clipPos.w;highp float collision_perspective_ratio=clamp(\n0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,4.0);float padding_factor=1.2;v_radius=radius;v_extrude=quadVertexExtent*padding_factor;v_perspective_ratio=collision_perspective_ratio;v_collision=collision;gl_Position=vec4(clipPos.xyz/clipPos.w,1.0)+vec4(quadVertexExtent*padding_factor/u_viewport_size*2.0,0.0,0.0);}"),debug:Gt("uniform highp vec4 u_color;uniform sampler2D u_overlay;varying vec2 v_uv;void main() {vec4 overlay_color=texture2D(u_overlay,v_uv);gl_FragColor=mix(u_color,overlay_color,overlay_color.a);}","attribute vec2 a_pos;\n#ifdef PROJECTION_GLOBE_VIEW\nattribute vec3 a_pos_3;\n#endif\nvarying vec2 v_uv;uniform mat4 u_matrix;uniform float u_overlay_scale;void main() {float h=elevation(a_pos);v_uv=a_pos/8192.0;\n#ifdef PROJECTION_GLOBE_VIEW\ngl_Position=u_matrix*vec4(a_pos_3+elevationVector(a_pos)*h,1);\n#else\ngl_Position=u_matrix*vec4(a_pos*u_overlay_scale,h,1);\n#endif\n}"),fill:Gt("#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float opacity\nvec4 out_color=color;\n#ifdef FOG\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\n#endif\ngl_FragColor=out_color*opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","attribute vec2 a_pos;uniform mat4 u_matrix;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float opacity\ngl_Position=u_matrix*vec4(a_pos,0,1);\n#ifdef FOG\nv_fog_pos=fog_position(a_pos);\n#endif\n}"),fillOutline:Gt("varying vec2 v_pos;\n#pragma mapbox: define highp vec4 outline_color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 outline_color\n#pragma mapbox: initialize lowp float opacity\nfloat dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);vec4 out_color=outline_color;\n#ifdef FOG\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\n#endif\ngl_FragColor=out_color*(alpha*opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","attribute vec2 a_pos;uniform mat4 u_matrix;uniform vec2 u_world;varying vec2 v_pos;\n#pragma mapbox: define highp vec4 outline_color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 outline_color\n#pragma mapbox: initialize lowp float opacity\ngl_Position=u_matrix*vec4(a_pos,0,1);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;\n#ifdef FOG\nv_fog_pos=fog_position(a_pos);\n#endif\n}"),fillOutlinePattern:Gt("uniform vec2 u_texsize;uniform sampler2D u_image;uniform float u_fade;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec2 v_pos;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);float dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);vec4 out_color=mix(color1,color2,u_fade);\n#ifdef FOG\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\n#endif\ngl_FragColor=out_color*(alpha*opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_world;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform vec3 u_scale;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec2 v_pos;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;gl_Position=u_matrix*vec4(a_pos,0,1);vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileRatio,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileRatio,a_pos);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;\n#ifdef FOG\nv_fog_pos=fog_position(a_pos);\n#endif\n}"),fillPattern:Gt("uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);vec4 out_color=mix(color1,color2,u_fade);\n#ifdef FOG\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\n#endif\ngl_FragColor=out_color*opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform vec3 u_scale;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileZoomRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;gl_Position=u_matrix*vec4(a_pos,0,1);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileZoomRatio,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileZoomRatio,a_pos);\n#ifdef FOG\nv_fog_pos=fog_position(a_pos);\n#endif\n}"),fillExtrusion:Gt("varying vec4 v_color;void main() {vec4 color=v_color;\n#ifdef FOG\ncolor=fog_dither(fog_apply_premultiplied(color,v_fog_pos));\n#endif\ngl_FragColor=color;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;uniform float u_vertical_gradient;uniform lowp float u_opacity;attribute vec4 a_pos_normal_ed;attribute vec2 a_centroid_pos;\n#ifdef PROJECTION_GLOBE_VIEW\nattribute vec3 a_pos_3;attribute vec3 a_pos_normal_3;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_tile_id;uniform float u_zoom_transition;uniform vec3 u_up_dir;uniform float u_height_lift;\n#endif\nvarying vec4 v_color;\n#pragma mapbox: define highp float base\n#pragma mapbox: define highp float height\n#pragma mapbox: define highp vec4 color\nvoid main() {\n#pragma mapbox: initialize highp float base\n#pragma mapbox: initialize highp float height\n#pragma mapbox: initialize highp vec4 color\nvec3 pos_nx=floor(a_pos_normal_ed.xyz*0.5);mediump vec3 top_up_ny=a_pos_normal_ed.xyz-2.0*pos_nx;float x_normal=pos_nx.z/8192.0;vec3 normal=top_up_ny.y==1.0 ? vec3(0.0,0.0,1.0) : normalize(vec3(x_normal,(2.0*top_up_ny.z-1.0)*(1.0-abs(x_normal)),0.0));base=max(0.0,base);height=max(0.0,height);float t=top_up_ny.x;vec2 centroid_pos=vec2(0.0);\n#if defined(HAS_CENTROID) || defined(TERRAIN)\ncentroid_pos=a_centroid_pos;\n#endif\n#ifdef TERRAIN\nbool flat_roof=centroid_pos.x !=0.0 && t > 0.0;float ele=elevation(pos_nx.xy);float c_ele=flat_roof ? centroid_pos.y==0.0 ? elevationFromUint16(centroid_pos.x) : flatElevation(centroid_pos) : ele;float h=flat_roof ? max(c_ele+height,ele+base+2.0) : ele+(t > 0.0 ? height : base==0.0 ?-5.0 : base);vec3 pos=vec3(pos_nx.xy,h);\n#else\nvec3 pos=vec3(pos_nx.xy,t > 0.0 ? height : base);\n#endif\n#ifdef PROJECTION_GLOBE_VIEW\nfloat lift=float((t+base) > 0.0)*u_height_lift;vec3 globe_normal=normalize(mix(a_pos_normal_3/16384.0,u_up_dir,u_zoom_transition));vec3 globe_pos=a_pos_3+globe_normal*(u_tile_up_scale*(pos.z+lift));vec3 merc_pos=mercator_tile_position(u_inv_rot_matrix,pos.xy,u_tile_id,u_merc_center)+u_up_dir*u_tile_up_scale*pos.z;pos=mix_globe_mercator(globe_pos,merc_pos,u_zoom_transition);\n#endif\nfloat hidden=float(centroid_pos.x==0.0 && centroid_pos.y==1.0);gl_Position=mix(u_matrix*vec4(pos,1),AWAY,hidden);float colorvalue=color.r*0.2126+color.g*0.7152+color.b*0.0722;v_color=vec4(0.0,0.0,0.0,1.0);vec4 ambientlight=vec4(0.03,0.03,0.03,1.0);color+=ambientlight;float directional=clamp(dot(normal,u_lightpos),0.0,1.0);directional=mix((1.0-u_lightintensity),max((1.0-colorvalue+u_lightintensity),1.0),directional);if (normal.y !=0.0) {directional*=(\n(1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),mix(0.7,0.98,1.0-u_lightintensity),1.0)));}v_color.rgb+=clamp(color.rgb*directional*u_lightcolor,mix(vec3(0.0),vec3(0.3),1.0-u_lightcolor),vec3(1.0));v_color*=u_opacity;\n#ifdef FOG\nv_fog_pos=fog_position(pos);\n#endif\n}"),fillExtrusionPattern:Gt("uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting;\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float base\n#pragma mapbox: initialize lowp float height\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);vec4 out_color=mix(color1,color2,u_fade);out_color=out_color*v_lighting;\n#ifdef FOG\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\n#endif\ngl_FragColor=out_color;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_height_factor;uniform vec3 u_scale;uniform float u_vertical_gradient;uniform lowp float u_opacity;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;attribute vec4 a_pos_normal_ed;attribute vec2 a_centroid_pos;\n#ifdef PROJECTION_GLOBE_VIEW\nattribute vec3 a_pos_3;attribute vec3 a_pos_normal_3;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_tile_id;uniform float u_zoom_transition;uniform vec3 u_up_dir;uniform float u_height_lift;\n#endif\nvarying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting;\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float base\n#pragma mapbox: initialize lowp float height\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec3 pos_nx=floor(a_pos_normal_ed.xyz*0.5);mediump vec3 top_up_ny=a_pos_normal_ed.xyz-2.0*pos_nx;float x_normal=pos_nx.z/8192.0;vec3 normal=top_up_ny.y==1.0 ? vec3(0.0,0.0,1.0) : normalize(vec3(x_normal,(2.0*top_up_ny.z-1.0)*(1.0-abs(x_normal)),0.0));float edgedistance=a_pos_normal_ed.w;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;base=max(0.0,base);height=max(0.0,height);float t=top_up_ny.x;float z=t > 0.0 ? height : base;vec2 centroid_pos=vec2(0.0);\n#if defined(HAS_CENTROID) || defined(TERRAIN)\ncentroid_pos=a_centroid_pos;\n#endif\n#ifdef TERRAIN\nbool flat_roof=centroid_pos.x !=0.0 && t > 0.0;float ele=elevation(pos_nx.xy);float c_ele=flat_roof ? centroid_pos.y==0.0 ? elevationFromUint16(centroid_pos.x) : flatElevation(centroid_pos) : ele;float h=flat_roof ? max(c_ele+height,ele+base+2.0) : ele+(t > 0.0 ? height : base==0.0 ?-5.0 : base);vec3 p=vec3(pos_nx.xy,h);\n#else\nvec3 p=vec3(pos_nx.xy,z);\n#endif\n#ifdef PROJECTION_GLOBE_VIEW\nfloat lift=float((t+base) > 0.0)*u_height_lift;vec3 globe_normal=normalize(mix(a_pos_normal_3/16384.0,u_up_dir,u_zoom_transition));vec3 globe_pos=a_pos_3+globe_normal*(u_tile_up_scale*(p.z+lift));vec3 merc_pos=mercator_tile_position(u_inv_rot_matrix,p.xy,u_tile_id,u_merc_center)+u_up_dir*u_tile_up_scale*p.z;p=mix_globe_mercator(globe_pos,merc_pos,u_zoom_transition);\n#endif\nfloat hidden=float(centroid_pos.x==0.0 && centroid_pos.y==1.0);gl_Position=mix(u_matrix*vec4(p,1),AWAY,hidden);vec2 pos=normal.z==1.0\n? pos_nx.xy\n: vec2(edgedistance,z*u_height_factor);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileRatio,pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileRatio,pos);v_lighting=vec4(0.0,0.0,0.0,1.0);float directional=clamp(dot(normal,u_lightpos),0.0,1.0);directional=mix((1.0-u_lightintensity),max((0.5+u_lightintensity),1.0),directional);if (normal.y !=0.0) {directional*=(\n(1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),mix(0.7,0.98,1.0-u_lightintensity),1.0)));}v_lighting.rgb+=clamp(directional*u_lightcolor,mix(vec3(0.0),vec3(0.3),1.0-u_lightcolor),vec3(1.0));v_lighting*=u_opacity;\n#ifdef FOG\nv_fog_pos=fog_position(p);\n#endif\n}"),hillshadePrepare:Gt("#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_dimension;uniform float u_zoom;uniform vec4 u_unpack;float getElevation(vec2 coord) {\n#ifdef TERRAIN_DEM_FLOAT_FORMAT\nreturn texture2D(u_image,coord).a/4.0;\n#else\nvec4 data=texture2D(u_image,coord)*255.0;data.a=-1.0;return dot(data,u_unpack)/4.0;\n#endif\n}void main() {vec2 epsilon=1.0/u_dimension;float a=getElevation(v_pos+vec2(-epsilon.x,-epsilon.y));float b=getElevation(v_pos+vec2(0,-epsilon.y));float c=getElevation(v_pos+vec2(epsilon.x,-epsilon.y));float d=getElevation(v_pos+vec2(-epsilon.x,0));float e=getElevation(v_pos);float f=getElevation(v_pos+vec2(epsilon.x,0));float g=getElevation(v_pos+vec2(-epsilon.x,epsilon.y));float h=getElevation(v_pos+vec2(0,epsilon.y));float i=getElevation(v_pos+vec2(epsilon.x,epsilon.y));float exaggerationFactor=u_zoom < 2.0 ? 0.4 : u_zoom < 4.5 ? 0.35 : 0.3;float exaggeration=u_zoom < 15.0 ? (u_zoom-15.0)*exaggerationFactor : 0.0;vec2 deriv=vec2(\n(c+f+f+i)-(a+d+d+g),(g+h+h+i)-(a+b+b+c)\n)/pow(2.0,exaggeration+(19.2562-u_zoom));gl_FragColor=clamp(vec4(\nderiv.x/2.0+0.5,deriv.y/2.0+0.5,1.0,1.0),0.0,1.0);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_dimension;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);highp vec2 epsilon=1.0/u_dimension;float scale=(u_dimension.x-2.0)/u_dimension.x;v_pos=(a_texture_pos/8192.0)*scale+epsilon;}"),hillshade:Gt("uniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_latrange;uniform vec2 u_light;uniform vec4 u_shadow;uniform vec4 u_highlight;uniform vec4 u_accent;void main() {vec4 pixel=texture2D(u_image,v_pos);vec2 deriv=((pixel.rg*2.0)-1.0);float scaleFactor=cos(radians((u_latrange[0]-u_latrange[1])*(1.0-v_pos.y)+u_latrange[1]));float slope=atan(1.25*length(deriv)/scaleFactor);float aspect=deriv.x !=0.0 ? atan(deriv.y,-deriv.x) : PI/2.0*(deriv.y > 0.0 ? 1.0 :-1.0);float intensity=u_light.x;float azimuth=u_light.y+PI;float base=1.875-intensity*1.75;float maxValue=0.5*PI;float scaledSlope=intensity !=0.5 ? ((pow(base,slope)-1.0)/(pow(base,maxValue)-1.0))*maxValue : slope;float accent=cos(scaledSlope);vec4 accent_color=(1.0-accent)*u_accent*clamp(intensity*2.0,0.0,1.0);float shade=abs(mod((aspect+azimuth)/PI+0.5,2.0)-1.0);vec4 shade_color=mix(u_shadow,u_highlight,shade)*sin(scaledSlope)*clamp(intensity*2.0,0.0,1.0);gl_FragColor=accent_color*(1.0-shade_color.a)+shade_color;\n#ifdef FOG\ngl_FragColor=fog_dither(fog_apply_premultiplied(gl_FragColor,v_fog_pos));\n#endif\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=a_texture_pos/8192.0;\n#ifdef FOG\nv_fog_pos=fog_position(a_pos);\n#endif\n}"),line:Gt("uniform lowp float u_device_pixel_ratio;uniform float u_alpha_discard_threshold;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;\n#ifdef RENDER_LINE_DASH\nuniform sampler2D u_dash_image;uniform float u_mix;uniform vec3 u_scale;varying vec2 v_tex_a;varying vec2 v_tex_b;\n#endif\n#ifdef RENDER_LINE_GRADIENT\nuniform sampler2D u_gradient_image;varying highp vec2 v_uv;\n#endif\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float floorwidth\n#pragma mapbox: define lowp vec4 dash_from\n#pragma mapbox: define lowp vec4 dash_to\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float floorwidth\n#pragma mapbox: initialize lowp vec4 dash_from\n#pragma mapbox: initialize lowp vec4 dash_to\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\nfloat dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);\n#ifdef RENDER_LINE_DASH\nfloat sdfdist_a=texture2D(u_dash_image,v_tex_a).a;float sdfdist_b=texture2D(u_dash_image,v_tex_b).a;float sdfdist=mix(sdfdist_a,sdfdist_b,u_mix);float sdfwidth=min(dash_from.z*u_scale.y,dash_to.z*u_scale.z);float sdfgamma=1.0/(2.0*u_device_pixel_ratio)/sdfwidth;alpha*=smoothstep(0.5-sdfgamma/floorwidth,0.5+sdfgamma/floorwidth,sdfdist);\n#endif\n#ifdef RENDER_LINE_GRADIENT\nvec4 out_color=texture2D(u_gradient_image,v_uv);\n#else\nvec4 out_color=color;\n#endif\n#ifdef FOG\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\n#endif\n#ifdef RENDER_LINE_ALPHA_DISCARD\nif (alpha < u_alpha_discard_threshold) {discard;}\n#endif\ngl_FragColor=out_color*(alpha*opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","\n#define EXTRUDE_SCALE 0.015873016\nattribute vec2 a_pos_normal;attribute vec4 a_data;\n#ifdef RENDER_LINE_GRADIENT\nattribute vec3 a_packed;\n#else\nattribute float a_linesofar;\n#endif\nuniform mat4 u_matrix;uniform mat2 u_pixels_to_tile_units;uniform vec2 u_units_to_pixels;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;\n#ifdef RENDER_LINE_DASH\nuniform vec2 u_texsize;uniform mediump vec3 u_scale;varying vec2 v_tex_a;varying vec2 v_tex_b;\n#endif\n#ifdef RENDER_LINE_GRADIENT\nuniform float u_image_height;varying highp vec2 v_uv;\n#endif\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float floorwidth\n#pragma mapbox: define lowp vec4 dash_from\n#pragma mapbox: define lowp vec4 dash_to\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float width\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float floorwidth\n#pragma mapbox: initialize lowp vec4 dash_from\n#pragma mapbox: initialize lowp vec4 dash_to\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float width\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*EXTRUDE_SCALE;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*EXTRUDE_SCALE*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist*u_pixels_to_tile_units,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2*u_pixels_to_tile_units,0.0,1.0)+projected_extrude;\n#ifndef RENDER_TO_TEXTURE\nfloat extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;\n#else\nv_gamma_scale=1.0;\n#endif\n#ifdef RENDER_LINE_GRADIENT\nfloat a_uv_x=a_packed[0];float a_split_index=a_packed[1];float a_linesofar=a_packed[2];highp float texel_height=1.0/u_image_height;highp float half_texel_height=0.5*texel_height;v_uv=vec2(a_uv_x,a_split_index*texel_height-half_texel_height);\n#endif\n#ifdef RENDER_LINE_DASH\nfloat tileZoomRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;float scaleA=dash_from.z==0.0 ? 0.0 : tileZoomRatio/(dash_from.z*fromScale);float scaleB=dash_to.z==0.0 ? 0.0 : tileZoomRatio/(dash_to.z*toScale);float heightA=dash_from.y;float heightB=dash_to.y;v_tex_a=vec2(a_linesofar*scaleA/floorwidth,(-normal.y*heightA+dash_from.x+0.5)/u_texsize.y);v_tex_b=vec2(a_linesofar*scaleB/floorwidth,(-normal.y*heightB+dash_to.x+0.5)/u_texsize.y);\n#endif\nv_width2=vec2(outset,inset);\n#ifdef FOG\nv_fog_pos=fog_position(pos);\n#endif\n}"),linePattern:Gt("uniform lowp float u_device_pixel_ratio;uniform vec2 u_texsize;uniform float u_fade;uniform mediump vec3 u_scale;uniform sampler2D u_image;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width;\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileZoomRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;vec2 pattern_size_a=vec2(display_size_a.x*fromScale/tileZoomRatio,display_size_a.y);vec2 pattern_size_b=vec2(display_size_b.x*toScale/tileZoomRatio,display_size_b.y);float aspect_a=display_size_a.y/v_width;float aspect_b=display_size_b.y/v_width;float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float x_a=mod(v_linesofar/pattern_size_a.x*aspect_a,1.0);float x_b=mod(v_linesofar/pattern_size_b.x*aspect_b,1.0);float y=0.5*v_normal.y+0.5;vec2 texel_size=1.0/u_texsize;vec2 pos_a=mix(pattern_tl_a*texel_size-texel_size,pattern_br_a*texel_size+texel_size,vec2(x_a,y));vec2 pos_b=mix(pattern_tl_b*texel_size-texel_size,pattern_br_b*texel_size+texel_size,vec2(x_b,y));vec4 color=mix(texture2D(u_image,pos_a),texture2D(u_image,pos_b),u_fade);\n#ifdef FOG\ncolor=fog_dither(fog_apply_premultiplied(color,v_fog_pos));\n#endif\ngl_FragColor=color*(alpha*opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","\n#define scale 0.015873016\nattribute vec2 a_pos_normal;attribute vec4 a_data;attribute float a_linesofar;uniform mat4 u_matrix;uniform vec2 u_units_to_pixels;uniform mat2 u_pixels_to_tile_units;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width;\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define mediump float width\n#pragma mapbox: define lowp float floorwidth\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize mediump float width\n#pragma mapbox: initialize lowp float floorwidth\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist*u_pixels_to_tile_units,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2*u_pixels_to_tile_units,0.0,1.0)+projected_extrude;\n#ifndef RENDER_TO_TEXTURE\nfloat extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;\n#else\nv_gamma_scale=1.0;\n#endif\nv_linesofar=a_linesofar;v_width2=vec2(outset,inset);v_width=floorwidth;\n#ifdef FOG\nv_fog_pos=fog_position(pos);\n#endif\n}"),raster:Gt("uniform float u_fade_t;uniform float u_opacity;uniform sampler2D u_image0;uniform sampler2D u_image1;varying vec2 v_pos0;varying vec2 v_pos1;uniform float u_brightness_low;uniform float u_brightness_high;uniform float u_saturation_factor;uniform float u_contrast_factor;uniform vec3 u_spin_weights;void main() {vec4 color0=texture2D(u_image0,v_pos0);vec4 color1=texture2D(u_image1,v_pos1);if (color0.a > 0.0) {color0.rgb=color0.rgb/color0.a;}if (color1.a > 0.0) {color1.rgb=color1.rgb/color1.a;}vec4 color=mix(color0,color1,u_fade_t);color.a*=u_opacity;vec3 rgb=color.rgb;rgb=vec3(\ndot(rgb,u_spin_weights.xyz),dot(rgb,u_spin_weights.zxy),dot(rgb,u_spin_weights.yzx));float average=(color.r+color.g+color.b)/3.0;rgb+=(average-rgb)*u_saturation_factor;rgb=(rgb-0.5)*u_contrast_factor+0.5;vec3 u_high_vec=vec3(u_brightness_low,u_brightness_low,u_brightness_low);vec3 u_low_vec=vec3(u_brightness_high,u_brightness_high,u_brightness_high);vec3 out_color=mix(u_high_vec,u_low_vec,rgb);\n#ifdef FOG\nout_color=fog_dither(fog_apply(out_color,v_fog_pos));\n#endif\ngl_FragColor=vec4(out_color*color.a,color.a);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_tl_parent;uniform float u_scale_parent;uniform vec2 u_perspective_transform;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos0;varying vec2 v_pos1;void main() {float w=1.0+dot(a_texture_pos,u_perspective_transform);gl_Position=u_matrix*vec4(a_pos*w,0,w);v_pos0=a_texture_pos/8192.0;v_pos1=(v_pos0*u_scale_parent)+u_tl_parent;\n#ifdef FOG\nv_fog_pos=fog_position(a_pos);\n#endif\n}"),symbolIcon:Gt("uniform sampler2D u_texture;varying vec2 v_tex;varying float v_fade_opacity;\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\nlowp float alpha=opacity*v_fade_opacity;gl_FragColor=texture2D(u_texture,v_tex)*alpha;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","attribute vec4 a_pos_offset;attribute vec4 a_tex_size;attribute vec4 a_pixeloffset;attribute vec4 a_z_tile_anchor;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform highp float u_camera_to_center_distance;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform float u_fade_change;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_tile_id;uniform float u_zoom_transition;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform vec2 u_texsize;varying vec2 v_tex;varying float v_fade_opacity;\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_tex_size.xy;vec2 a_size=a_tex_size.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;vec2 a_minFontScale=a_pixeloffset.zw/256.0;highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}float anchorZ=a_z_tile_anchor.x;vec2 tileAnchor=a_z_tile_anchor.yz;vec3 h=elevationVector(tileAnchor)*elevation(tileAnchor);vec3 mercator_pos=mercator_tile_position(u_inv_rot_matrix,tileAnchor,u_tile_id,u_merc_center);vec3 world_pos=mix_globe_mercator(vec3(a_pos,anchorZ)+h,mercator_pos,u_zoom_transition);vec4 projectedPoint=u_matrix*vec4(world_pos,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?\ncamera_to_anchor_distance/u_camera_to_center_distance :\nu_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(\n0.5+0.5*distance_ratio,0.0,1.5);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=u_matrix*vec4(a_pos+vec2(1,0),anchorZ,1);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}vec3 proj_pos=mix_globe_mercator(vec3(a_projected_pos.xy,anchorZ),mercator_pos,u_zoom_transition);\n#ifdef PROJECTED_POS_ON_VIEWPORT\nvec4 projected_pos=u_label_plane_matrix*vec4(proj_pos.xy,0.0,1.0);\n#else\nvec4 projected_pos=u_label_plane_matrix*vec4(proj_pos.xyz+h,1.0);\n#endif\nhighp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);float z=0.0;vec2 offset=rotation_matrix*(a_offset/32.0*max(a_minFontScale,fontScale)+a_pxoffset/16.0);\n#ifdef PITCH_WITH_MAP_TERRAIN\nvec4 tile_pos=u_label_plane_matrix_inv*vec4(a_projected_pos.xy+offset,0.0,1.0);z=elevation(tile_pos.xy);\n#endif\nfloat occlusion_fade=occlusionFade(projectedPoint);gl_Position=mix(u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+offset,z,1.0),AWAY,float(projectedPoint.w <=0.0 || occlusion_fade==0.0));float projection_transition_fade=1.0;\n#if defined(PROJECTED_POS_ON_VIEWPORT) && defined(PROJECTION_GLOBE_VIEW)\nprojection_transition_fade=1.0-step(EPSILON,u_zoom_transition);\n#endif\nv_tex=a_tex/u_texsize;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;v_fade_opacity=max(0.0,min(occlusion_fade,fade_opacity[0]+fade_change))*projection_transition_fade;}"),symbolSDF:Gt("#define SDF_PX 8.0\nuniform bool u_is_halo;uniform sampler2D u_texture;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;uniform bool u_is_text;varying vec2 v_data0;varying vec3 v_data1;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nfloat EDGE_GAMMA=0.105/u_device_pixel_ratio;vec2 tex=v_data0.xy;float gamma_scale=v_data1.x;float size=v_data1.y;float fade_opacity=v_data1[2];float fontScale=u_is_text ? size/24.0 : size;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);gl_FragColor=color*(alpha*opacity*fade_opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","attribute vec4 a_pos_offset;attribute vec4 a_tex_size;attribute vec4 a_pixeloffset;attribute vec4 a_z_tile_anchor;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;uniform vec3 u_tile_id;uniform float u_zoom_transition;varying vec2 v_data0;varying vec3 v_data1;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_tex_size.xy;vec2 a_size=a_tex_size.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}float anchorZ=a_z_tile_anchor.x;vec2 tileAnchor=a_z_tile_anchor.yz;vec3 h=elevationVector(tileAnchor)*elevation(tileAnchor);vec3 mercator_pos=mercator_tile_position(u_inv_rot_matrix,tileAnchor,u_tile_id,u_merc_center);vec3 world_pos=mix_globe_mercator(vec3(a_pos,anchorZ)+h,mercator_pos,u_zoom_transition);vec4 projectedPoint=u_matrix*vec4(world_pos,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?\ncamera_to_anchor_distance/u_camera_to_center_distance :\nu_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(\n0.5+0.5*distance_ratio,0.0,1.5);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=u_matrix*vec4(a_pos+vec2(1,0),anchorZ,1);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}vec3 proj_pos=mix_globe_mercator(vec3(a_projected_pos.xy,anchorZ),mercator_pos,u_zoom_transition);\n#ifdef PROJECTED_POS_ON_VIEWPORT\nvec4 projected_pos=u_label_plane_matrix*vec4(proj_pos.xy,0.0,1.0);\n#else\nvec4 projected_pos=u_label_plane_matrix*vec4(proj_pos.xyz+h,1.0);\n#endif\nhighp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);float z=0.0;vec2 offset=rotation_matrix*(a_offset/32.0*fontScale+a_pxoffset);\n#ifdef PITCH_WITH_MAP_TERRAIN\nvec4 tile_pos=u_label_plane_matrix_inv*vec4(a_projected_pos.xy+offset,0.0,1.0);z=elevation(tile_pos.xy);\n#endif\nfloat occlusion_fade=occlusionFade(projectedPoint);gl_Position=mix(u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+offset,z,1.0),AWAY,float(projectedPoint.w <=0.0 || occlusion_fade==0.0));float gamma_scale=gl_Position.w;float projection_transition_fade=1.0;\n#if defined(PROJECTED_POS_ON_VIEWPORT) && defined(PROJECTION_GLOBE_VIEW)\nprojection_transition_fade=1.0-step(EPSILON,u_zoom_transition);\n#endif\nvec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(occlusion_fade,fade_opacity[0]+fade_change));v_data0=a_tex/u_texsize;v_data1=vec3(gamma_scale,size,interpolated_fade_opacity*projection_transition_fade);}"),symbolTextAndIcon:Gt("#define SDF_PX 8.0\n#define SDF 1.0\n#define ICON 0.0\nuniform bool u_is_halo;uniform sampler2D u_texture;uniform sampler2D u_texture_icon;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;varying vec4 v_data0;varying vec4 v_data1;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nfloat fade_opacity=v_data1[2];if (v_data1.w==ICON) {vec2 tex_icon=v_data0.zw;lowp float alpha=opacity*fade_opacity;gl_FragColor=texture2D(u_texture_icon,tex_icon)*alpha;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\nreturn;}vec2 tex=v_data0.xy;float EDGE_GAMMA=0.105/u_device_pixel_ratio;float gamma_scale=v_data1.x;float size=v_data1.y;float fontScale=size/24.0;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);gl_FragColor=color*(alpha*opacity*fade_opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","attribute vec4 a_pos_offset;attribute vec4 a_tex_size;attribute vec4 a_z_tile_anchor;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;uniform vec2 u_texsize_icon;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_tile_id;uniform float u_zoom_transition;varying vec4 v_data0;varying vec4 v_data1;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_tex_size.xy;vec2 a_size=a_tex_size.zw;float a_size_min=floor(a_size[0]*0.5);float is_sdf=a_size[0]-2.0*a_size_min;highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}float anchorZ=a_z_tile_anchor.x;vec2 tileAnchor=a_z_tile_anchor.yz;vec3 h=elevationVector(tileAnchor)*elevation(tileAnchor);vec3 mercator_pos=mercator_tile_position(u_inv_rot_matrix,tileAnchor,u_tile_id,u_merc_center);vec3 world_pos=mix_globe_mercator(vec3(a_pos,anchorZ)+h,mercator_pos,u_zoom_transition);vec4 projectedPoint=u_matrix*vec4(world_pos,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?\ncamera_to_anchor_distance/u_camera_to_center_distance :\nu_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(\n0.5+0.5*distance_ratio,0.0,1.5);size*=perspective_ratio;float fontScale=size/24.0;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=u_matrix*vec4(a_pos+vec2(1,0),anchorZ,1);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}vec3 proj_pos=mix_globe_mercator(vec3(a_projected_pos.xy,anchorZ),mercator_pos,u_zoom_transition);\n#ifdef PROJECTED_POS_ON_VIEWPORT\nvec4 projected_pos=u_label_plane_matrix*vec4(proj_pos.xy,0.0,1.0);\n#else\nvec4 projected_pos=u_label_plane_matrix*vec4(proj_pos.xyz+h,1.0);\n#endif\nhighp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);float z=0.0;vec2 offset=rotation_matrix*(a_offset/32.0*fontScale);\n#ifdef PITCH_WITH_MAP_TERRAIN\nvec4 tile_pos=u_label_plane_matrix_inv*vec4(a_projected_pos.xy+offset,0.0,1.0);z=elevation(tile_pos.xy);\n#endif\nfloat occlusion_fade=occlusionFade(projectedPoint);gl_Position=mix(u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+offset,z,1.0),AWAY,float(projectedPoint.w <=0.0 || occlusion_fade==0.0));float gamma_scale=gl_Position.w;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(occlusion_fade,fade_opacity[0]+fade_change));float projection_transition_fade=1.0;\n#if defined(PROJECTED_POS_ON_VIEWPORT) && defined(PROJECTION_GLOBE_VIEW)\nprojection_transition_fade=1.0-step(EPSILON,u_zoom_transition);\n#endif\nv_data0.xy=a_tex/u_texsize;v_data0.zw=a_tex/u_texsize_icon;v_data1=vec4(gamma_scale,size,interpolated_fade_opacity*projection_transition_fade,is_sdf);}"),terrainRaster:Gt("uniform sampler2D u_image0;varying vec2 v_pos0;\n#ifdef FOG\nvarying float v_fog_opacity;\n#endif\nvoid main() {vec4 color=texture2D(u_image0,v_pos0);\n#ifdef FOG\ncolor=fog_dither(fog_apply_from_vert(color,v_fog_opacity));\n#endif\ngl_FragColor=color;\n#ifdef TERRAIN_WIREFRAME\ngl_FragColor=vec4(1.0,0.0,0.0,0.8);\n#endif\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform float u_skirt_height;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos0;\n#ifdef FOG\nvarying float v_fog_opacity;\n#endif\nconst float skirtOffset=24575.0;const float wireframeOffset=0.00015;void main() {v_pos0=a_texture_pos/8192.0;float skirt=float(a_pos.x >=skirtOffset);float elevation=elevation(a_texture_pos)-skirt*u_skirt_height;\n#ifdef TERRAIN_WIREFRAME\nelevation+=u_skirt_height*u_skirt_height*wireframeOffset;\n#endif\nvec2 decodedPos=a_pos-vec2(skirt*skirtOffset,0.0);gl_Position=u_matrix*vec4(decodedPos,elevation,1.0);\n#ifdef FOG\nv_fog_opacity=fog(fog_position(vec3(decodedPos,elevation)));\n#endif\n}"),terrainDepth:Gt("#ifdef GL_ES\nprecision highp float;\n#endif\nvarying float v_depth;void main() {gl_FragColor=pack_depth(v_depth);}","uniform mat4 u_matrix;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying float v_depth;void main() {float elevation=elevation(a_texture_pos);gl_Position=u_matrix*vec4(a_pos,elevation,1.0);v_depth=gl_Position.z/gl_Position.w;}"),skybox:Gt("\nvarying lowp vec3 v_uv;uniform lowp samplerCube u_cubemap;uniform lowp float u_opacity;uniform highp float u_temporal_offset;uniform highp vec3 u_sun_direction;float sun_disk(highp vec3 ray_direction,highp vec3 sun_direction) {highp float cos_angle=dot(normalize(ray_direction),sun_direction);const highp float cos_sun_angular_diameter=0.99996192306;const highp float smoothstep_delta=1e-5;return smoothstep(\ncos_sun_angular_diameter-smoothstep_delta,cos_sun_angular_diameter+smoothstep_delta,cos_angle);}float map(float value,float start,float end,float new_start,float new_end) {return ((value-start)*(new_end-new_start))/(end-start)+new_start;}void main() {vec3 uv=v_uv;const float y_bias=0.015;uv.y+=y_bias;uv.y=pow(abs(uv.y),1.0/5.0);uv.y=map(uv.y,0.0,1.0,-1.0,1.0);vec3 sky_color=textureCube(u_cubemap,uv).rgb;\n#ifdef FOG\nsky_color=fog_apply_sky_gradient(v_uv.xzy,sky_color);\n#endif\nsky_color.rgb=dither(sky_color.rgb,gl_FragCoord.xy+u_temporal_offset);sky_color+=0.1*sun_disk(v_uv,u_sun_direction);gl_FragColor=vec4(sky_color*u_opacity,u_opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",Yt),skyboxGradient:Gt("varying highp vec3 v_uv;uniform lowp sampler2D u_color_ramp;uniform highp vec3 u_center_direction;uniform lowp float u_radius;uniform lowp float u_opacity;uniform highp float u_temporal_offset;void main() {float progress=acos(dot(normalize(v_uv),u_center_direction))/u_radius;vec4 color=texture2D(u_color_ramp,vec2(progress,0.5));\n#ifdef FOG\ncolor.rgb=fog_apply_sky_gradient(v_uv.xzy,color.rgb/color.a)*color.a;\n#endif\ncolor*=u_opacity;color.rgb=dither(color.rgb,gl_FragCoord.xy+u_temporal_offset);gl_FragColor=color;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",Yt),skyboxCapture:Gt("\nvarying highp vec3 v_position;uniform highp float u_sun_intensity;uniform highp float u_luminance;uniform lowp vec3 u_sun_direction;uniform highp vec4 u_color_tint_r;uniform highp vec4 u_color_tint_m;\n#ifdef GL_ES\nprecision highp float;\n#endif\n#define BETA_R vec3(5.5e-6,13.0e-6,22.4e-6)\n#define BETA_M vec3(21e-6,21e-6,21e-6)\n#define MIE_G 0.76\n#define DENSITY_HEIGHT_SCALE_R 8000.0\n#define DENSITY_HEIGHT_SCALE_M 1200.0\n#define PLANET_RADIUS 6360e3\n#define ATMOSPHERE_RADIUS 6420e3\n#define SAMPLE_STEPS 10\n#define DENSITY_STEPS 4\nfloat ray_sphere_exit(vec3 orig,vec3 dir,float radius) {float a=dot(dir,dir);float b=2.0*dot(dir,orig);float c=dot(orig,orig)-radius*radius;float d=sqrt(b*b-4.0*a*c);return (-b+d)/(2.0*a);}vec3 extinction(vec2 density) {return exp(-vec3(BETA_R*u_color_tint_r.a*density.x+BETA_M*u_color_tint_m.a*density.y));}vec2 local_density(vec3 point) {float height=max(length(point)-PLANET_RADIUS,0.0);float exp_r=exp(-height/DENSITY_HEIGHT_SCALE_R);float exp_m=exp(-height/DENSITY_HEIGHT_SCALE_M);return vec2(exp_r,exp_m);}float phase_ray(float cos_angle) {return (3.0/(16.0*PI))*(1.0+cos_angle*cos_angle);}float phase_mie(float cos_angle) {return (3.0/(8.0*PI))*((1.0-MIE_G*MIE_G)*(1.0+cos_angle*cos_angle))/((2.0+MIE_G*MIE_G)*pow(1.0+MIE_G*MIE_G-2.0*MIE_G*cos_angle,1.5));}vec2 density_to_atmosphere(vec3 point,vec3 light_dir) {float ray_len=ray_sphere_exit(point,light_dir,ATMOSPHERE_RADIUS);float step_len=ray_len/float(DENSITY_STEPS);vec2 density_point_to_atmosphere=vec2(0.0);for (int i=0; i < DENSITY_STEPS;++i) {vec3 point_on_ray=point+light_dir*((float(i)+0.5)*step_len);density_point_to_atmosphere+=local_density(point_on_ray)*step_len;;}return density_point_to_atmosphere;}vec3 atmosphere(vec3 ray_dir,vec3 sun_direction,float sun_intensity) {vec2 density_orig_to_point=vec2(0.0);vec3 scatter_r=vec3(0.0);vec3 scatter_m=vec3(0.0);vec3 origin=vec3(0.0,PLANET_RADIUS,0.0);float ray_len=ray_sphere_exit(origin,ray_dir,ATMOSPHERE_RADIUS);float step_len=ray_len/float(SAMPLE_STEPS);for (int i=0; i < SAMPLE_STEPS;++i) {vec3 point_on_ray=origin+ray_dir*((float(i)+0.5)*step_len);vec2 density=local_density(point_on_ray)*step_len;density_orig_to_point+=density;vec2 density_point_to_atmosphere=density_to_atmosphere(point_on_ray,sun_direction);vec2 density_orig_to_atmosphere=density_orig_to_point+density_point_to_atmosphere;vec3 extinction=extinction(density_orig_to_atmosphere);scatter_r+=density.x*extinction;scatter_m+=density.y*extinction;}float cos_angle=dot(ray_dir,sun_direction);float phase_r=phase_ray(cos_angle);float phase_m=phase_mie(cos_angle);vec3 beta_r=BETA_R*u_color_tint_r.rgb*u_color_tint_r.a;vec3 beta_m=BETA_M*u_color_tint_m.rgb*u_color_tint_m.a;return (scatter_r*phase_r*beta_r+scatter_m*phase_m*beta_m)*sun_intensity;}const float A=0.15;const float B=0.50;const float C=0.10;const float D=0.20;const float E=0.02;const float F=0.30;vec3 uncharted2_tonemap(vec3 x) {return ((x*(A*x+C*B)+D*E)/(x*(A*x+B)+D*F))-E/F;}void main() {vec3 ray_direction=v_position;ray_direction.y=pow(ray_direction.y,5.0);const float y_bias=0.015;ray_direction.y+=y_bias;vec3 color=atmosphere(normalize(ray_direction),u_sun_direction,u_sun_intensity);float white_scale=1.0748724675633854;color=uncharted2_tonemap((log2(2.0/pow(u_luminance,4.0)))*color)*white_scale;gl_FragColor=vec4(color,1.0);}","attribute highp vec3 a_pos_3f;uniform mat3 u_matrix_3f;varying highp vec3 v_position;float map(float value,float start,float end,float new_start,float new_end) {return ((value-start)*(new_end-new_start))/(end-start)+new_start;}void main() {vec4 pos=vec4(u_matrix_3f*a_pos_3f,1.0);v_position=pos.xyz;v_position.y*=-1.0;v_position.y=map(v_position.y,-1.0,1.0,0.0,1.0);gl_Position=vec4(a_pos_3f.xy,0.0,1.0);}"),globeRaster:Gt("uniform sampler2D u_image0;varying vec2 v_pos0;void main() {gl_FragColor=texture2D(u_image0,v_pos0);\n#ifdef TERRAIN_WIREFRAME\ngl_FragColor=vec4(1.0,0.0,0.0,0.8);\n#endif\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_proj_matrix;uniform mat4 u_globe_matrix;uniform mat4 u_merc_matrix;uniform float u_zoom_transition;uniform vec2 u_merc_center;attribute vec3 a_globe_pos;attribute vec2 a_merc_pos;attribute vec2 a_uv;varying vec2 v_pos0;const float wireframeOffset=1e3;void main() {v_pos0=a_uv;vec2 uv=a_uv*EXTENT;vec4 up_vector=vec4(elevationVector(uv),1.0);float height=elevation(uv);\n#ifdef TERRAIN_WIREFRAME\nheight+=wireframeOffset;\n#endif\nvec4 globe=u_globe_matrix*vec4(a_globe_pos+up_vector.xyz*height,1.0);vec4 mercator=vec4(0.0);if (u_zoom_transition > 0.0) {mercator=vec4(a_merc_pos,height,1.0);mercator.xy-=u_merc_center;mercator.x=wrap(mercator.x,-0.5,0.5);mercator=u_merc_matrix*mercator;}vec3 position=mix(globe.xyz,mercator.xyz,u_zoom_transition);gl_Position=u_proj_matrix*vec4(position,1.0);}"),globeAtmosphere:Gt("uniform vec2 u_center;uniform float u_radius;uniform vec2 u_screen_size;uniform float u_opacity;uniform highp float u_fadeout_range;uniform vec3 u_start_color;uniform vec3 u_end_color;uniform float u_pixel_ratio;void main() {highp vec2 fragCoord=gl_FragCoord.xy/u_pixel_ratio;fragCoord.y=u_screen_size.y-fragCoord.y;float distFromCenter=length(fragCoord-u_center);float normDistFromCenter=length(fragCoord-u_center)/u_radius;if (normDistFromCenter < 1.0)\ndiscard;float t=clamp(1.0-sqrt(normDistFromCenter-1.0)/u_fadeout_range,0.0,1.0);vec3 color=mix(u_start_color,u_end_color,1.0-t);gl_FragColor=vec4(color*t*u_opacity,u_opacity);}","attribute vec3 a_pos;void main() {gl_Position=vec4(a_pos,1.0);}")};function Gt(e,t,o){const i=/#pragma mapbox: ([\w]+) ([\w]+) ([\w]+) ([\w]+)/g,n=/uniform (highp |mediump |lowp )?([\w]+) ([\w]+)([\s]*)([\w]*)/g,r=t.match(/attribute (highp |mediump |lowp )?([\w]+) ([\w]+)/g),a=e.match(n),s=t.match(n),p=It.match(n);let c=s?s.concat(a):a;o||(jt.staticUniforms&&(c=jt.staticUniforms.concat(c)),Ft.staticUniforms&&(c=Ft.staticUniforms.concat(c))),c&&(c=c.concat(p));const l={};return{fragmentSource:e=e.replace(i,((e,t,o,i,n)=>(l[n]=!0,"define"===t?`\n#ifndef HAS_UNIFORM_u_${n}\nvarying ${o} ${i} ${n};\n#else\nuniform ${o} ${i} u_${n};\n#endif\n`:`\n#ifdef HAS_UNIFORM_u_${n}\n ${o} ${i} ${n} = u_${n};\n#endif\n`))),vertexSource:t=t.replace(i,((e,t,o,i,n)=>{const r="float"===i?"vec2":"vec4",a=n.match(/color/)?"color":r;return l[n]?"define"===t?`\n#ifndef HAS_UNIFORM_u_${n}\nuniform lowp float u_${n}_t;\nattribute ${o} ${r} a_${n};\nvarying ${o} ${i} ${n};\n#else\nuniform ${o} ${i} u_${n};\n#endif\n`:"vec4"===a?`\n#ifndef HAS_UNIFORM_u_${n}\n ${n} = a_${n};\n#else\n ${o} ${i} ${n} = u_${n};\n#endif\n`:`\n#ifndef HAS_UNIFORM_u_${n}\n ${n} = unpack_mix_${a}(a_${n}, u_${n}_t);\n#else\n ${o} ${i} ${n} = u_${n};\n#endif\n`:"define"===t?`\n#ifndef HAS_UNIFORM_u_${n}\nuniform lowp float u_${n}_t;\nattribute ${o} ${r} a_${n};\n#else\nuniform ${o} ${i} u_${n};\n#endif\n`:"vec4"===a?`\n#ifndef HAS_UNIFORM_u_${n}\n ${o} ${i} ${n} = a_${n};\n#else\n ${o} ${i} ${n} = u_${n};\n#endif\n`:`\n#ifndef HAS_UNIFORM_u_${n}\n ${o} ${i} ${n} = unpack_mix_${a}(a_${n}, u_${n}_t);\n#else\n ${o} ${i} ${n} = u_${n};\n#endif\n`})),staticAttributes:r,staticUniforms:c}}class Zt{constructor(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null}bind(e,t,o,i,n,r,a,s){this.context=e;let p=this.boundPaintVertexBuffers.length!==i.length;for(let e=0;!p&&e{const n=o.paint.get("hillshade-shadow-color"),r=o.paint.get("hillshade-highlight-color"),a=o.paint.get("hillshade-accent-color");let s=o.paint.get("hillshade-illumination-direction")*(Math.PI/180);"viewport"===o.paint.get("hillshade-illumination-anchor")&&(s-=e.transform.angle);const p=!e.options.moving;return{u_matrix:i||e.transform.calculateProjMatrix(t.tileID.toUnwrapped(),p),u_image:0,u_latrange:$t(0,t.tileID),u_light:[o.paint.get("hillshade-exaggeration"),s],u_shadow:n,u_highlight:r,u_accent:a}})(t,i,n,t.terrain?o.projMatrix:null);t.prepareDrawProgram(p,b,o.toUnwrapped());const{tileBoundsBuffer:u,tileBoundsIndexBuffer:M,tileBoundsSegments:z}=t.getTileBoundsBuffers(i);b.draw(p,c.TRIANGLES,r,a,s,e.CullFaceMode.disabled,d,n.id,u,M,z)}function Jt(t,o,i){if(!o.needsDEMTextureUpload)return;const n=t.context,r=n.gl;n.pixelStoreUnpackPremultiplyAlpha.set(!1),o.demTexture=o.demTexture||t.getTileTexture(i.stride);const a=i.getPixels();o.demTexture?o.demTexture.update(a,{premultiply:!1}):o.demTexture=new e.Texture(n,a,r.RGBA,{premultiply:!1}),o.needsDEMTextureUpload=!1}function Qt(t,o,i,n,r,a){const s=t.context,p=s.gl;if(!o.dem)return;const c=o.dem;if(s.activeTexture.set(p.TEXTURE1),Jt(t,o,c),!o.demTexture)return;o.demTexture.bind(p.NEAREST,p.CLAMP_TO_EDGE);const l=c.dim;s.activeTexture.set(p.TEXTURE0);let b=o.fbo;if(!b){const t=new e.Texture(s,{width:l,height:l,data:null},p.RGBA);t.bind(p.LINEAR,p.CLAMP_TO_EDGE),b=o.fbo=s.createFramebuffer(l,l,!0),b.colorAttachment.set(t.texture)}s.bindFramebuffer.set(b.framebuffer),s.viewport.set([0,0,l,l]);const{tileBoundsBuffer:d,tileBoundsIndexBuffer:u,tileBoundsSegments:M}=t.getMercatorTileBoundsBuffers();t.useProgram("hillshadePrepare").draw(s,p.TRIANGLES,n,r,a,e.CullFaceMode.disabled,((t,o)=>{const i=o.stride,n=e.create();return e.ortho(n,0,e.EXTENT,-e.EXTENT,0,0,1),e.translate(n,n,[0,-e.EXTENT,0]),{u_matrix:n,u_image:1,u_dimension:[i,i],u_zoom:t.overscaledZ,u_unpack:o.unpackVector}})(o.tileID,c),i.id,d,u,M),o.needsHillshadePrepare=!1}const eo=(t,o)=>({u_matrix:new e.UniformMatrix4f(t,o.u_matrix),u_image0:new e.Uniform1i(t,o.u_image0),u_skirt_height:new e.Uniform1f(t,o.u_skirt_height)}),to=(e,t)=>({u_matrix:e,u_image0:0,u_skirt_height:t}),oo=(e,t,o,i,n)=>({u_proj_matrix:Float32Array.from(e),u_globe_matrix:t,u_merc_matrix:o,u_zoom_transition:i,u_merc_center:n,u_image0:0});function io(e,t){return null!=e&&null!=t&&!(!e.hasData()||!t.hasData())&&null!=e.demTexture&&null!=t.demTexture&&e.tileID.key!==t.tileID.key}const no=new class{constructor(){this.operations={}}newMorphing(e,t,o,i,n){if(e in this.operations){const t=this.operations[e];t.to.tileID.key!==o.tileID.key&&(t.queued=o)}else this.operations[e]={startTime:i,phase:0,duration:n,from:t,to:o,queued:null}}getMorphValuesForProxy(e){if(!(e in this.operations))return null;const t=this.operations[e];return{from:t.from,to:t.to,phase:t.phase}}update(e){for(const t in this.operations){const o=this.operations[t];for(o.phase=(e-o.startTime)/o.duration;o.phase>=1||!this._validOp(o);)if(!this._nextOp(o,e)){delete this.operations[t];break}}}_nextOp(e,t){return!!e.queued&&(e.from=e.to,e.to=e.queued,e.queued=null,e.phase=0,e.startTime=t,!0)}_validOp(e){return e.from.hasData()&&e.to.hasData()}},ro={0:null,1:"TERRAIN_VERTEX_MORPHING",2:"TERRAIN_WIREFRAME"};function ao(e,t){const o=1<({u_matrix:e});function po(t,o,i,n,r){if(r>0){const a=e.exported.now(),s=(a-t.timeAdded)/r,p=o?(a-o.timeAdded)/r:-1,c=i.getSource(),l=n.coveringZoomLevel({tileSize:c.tileSize,roundZoom:c.roundZoom}),b=!o||Math.abs(o.tileID.overscaledZ-l)>Math.abs(t.tileID.overscaledZ-l),d=b&&t.refreshedUponExpiration?1:e.clamp(b?s:1-p,0,1);return t.refreshedUponExpiration&&s>=1&&(t.refreshedUponExpiration=!1),o?{opacity:1,mix:1-d}:{opacity:d,mix:0}}return{opacity:1,mix:0}}class co extends e.SourceCache{constructor(e){const t={type:"raster-dem",maxzoom:e.transform.maxZoom},o=new v(ke(),null),i=qe("mock-dem",t,o,e.style);super("mock-dem",i,!1),i.setEventedParent(this),this._sourceLoaded=!0}_loadTile(e,t){e.state="loaded",t(null)}}class lo extends e.SourceCache{constructor(e){const t=qe("proxy",{type:"geojson",maxzoom:e.transform.maxZoom},new v(ke(),null),e.style);super("proxy",t,!1),t.setEventedParent(this),this.map=this.getSource().map=e,this.used=this._sourceLoaded=!0,this.renderCache=[],this.renderCachePool=[],this.proxyCachedFBO={}}update(t,o,i){if(t.freezeTileCoverage)return;this.transform=t;const n=t.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}).reduce(((o,i)=>{if(o[i.key]="",!this._tiles[i.key]){const o=new e.Tile(i,this._source.tileSize*i.overscaleFactor(),t.tileZoom);o.state="loaded",this._tiles[i.key]=o}return o}),{});for(const e in this._tiles)e in n||(this.freeFBO(e),this._tiles[e].unloadVectorData(),delete this._tiles[e])}freeFBO(e){const t=this.proxyCachedFBO[e];if(void 0!==t){const o=Object.values(t);this.renderCachePool.push(...o),delete this.proxyCachedFBO[e]}}deallocRenderCache(){this.renderCache.forEach((e=>e.fb.destroy())),this.renderCache=[],this.renderCachePool=[],this.proxyCachedFBO={}}}class bo extends e.OverscaledTileID{constructor(e,t,o){super(e.overscaledZ,e.wrap,e.canonical.z,e.canonical.x,e.canonical.y),this.proxyTileKey=t,this.projMatrix=o}}class uo extends e.Elevation{constructor(t,o){super(),this.painter=t,this.terrainTileForTile={},this.prevTerrainTileForTile={};const[i,n,r]=function(t){const o=new e.StructArrayLayout4i8,i=new e.StructArrayLayout3ui6,n=131;o.reserve(17161),i.reserve(33800);const r=e.EXTENT/128,a=e.EXTENT+r/2,s=a+r;for(let t=-r;ta||t<0||t>a?24575:0,r=e.clamp(Math.round(i),0,e.EXTENT),s=e.clamp(Math.round(t),0,e.EXTENT);o.emplaceBack(r+n,s,r,s)}const p=(e,t)=>{const o=t*n+e;i.emplaceBack(o+1,o,o+n),i.emplaceBack(o+n,o+n+1,o+1)};for(let e=1;e<129;e++)for(let t=1;t<129;t++)p(t,e);return[0,129].forEach((e=>{for(let t=0;t<130;t++)p(t,e),p(e,t)})),[o,i,32768]}(),a=t.context;this.gridBuffer=a.createVertexBuffer(i,e.boundsAttributes.members),this.gridIndexBuffer=a.createIndexBuffer(n),this.gridSegments=e.SegmentVector.simpleSegment(0,0,i.length,n.length),this.gridNoSkirtSegments=e.SegmentVector.simpleSegment(0,0,i.length,r),this.proxyCoords=[],this.proxiedCoords={},this._visibleDemTiles=[],this._drapedRenderBatches=[],this._sourceTilesOverlap={},this.proxySourceCache=new lo(o.map),this.orthoMatrix=e.create(),e.ortho(this.orthoMatrix,0,e.EXTENT,0,e.EXTENT,0,1);const s=a.gl;this._overlapStencilMode=new e.StencilMode({func:s.GEQUAL,mask:255},0,255,s.KEEP,s.KEEP,s.REPLACE),this._previousZoom=t.transform.zoom,this.pool=[],this._findCoveringTileCache={},this._tilesDirty={},this.style=o,this._useVertexMorphing=!0,this._exaggeration=1,this._mockSourceCache=new co(o.map)}set style(e){e.on("data",this._onStyleDataEvent.bind(this)),e.on("neworder",this._checkRenderCacheEfficiency.bind(this)),this._style=e,this._checkRenderCacheEfficiency()}update(t,o,i){if(t&&t.terrain){this._style!==t&&(this.style=t),this.enabled=!0;const n=t.terrain.properties;this.sourceCache=0===t.terrain.drapeRenderMode?this._mockSourceCache:t._getSourceCache(n.get("source")),this._exaggeration=n.get("exaggeration");const r=()=>{this.sourceCache.used&&e.warnOnce(`Raster DEM source '${this.sourceCache.id}' is used both for terrain and as layer source.\nThis leads to lower resolution of hillshade. For full hillshade resolution but higher memory consumption, define another raster DEM source.`);const t=this.getScaledDemTileSize();this.sourceCache.update(o,t,!0),this.resetTileLookupCache(this.sourceCache.id)};this.sourceCache.usedForTerrain||(this.resetTileLookupCache(this.sourceCache.id),this.sourceCache.usedForTerrain=!0,r(),this._initializing=!0),r(),o.updateElevation(!i),this.resetTileLookupCache(this.proxySourceCache.id),this.proxySourceCache.update(o),this._emptyDEMTextureDirty=!0}else this._disable()}resetTileLookupCache(e){this._findCoveringTileCache[e]={}}getScaledDemTileSize(){return this.sourceCache.getSource().tileSize/128*this.proxySourceCache.getSource().tileSize}_checkRenderCacheEfficiency(){const t=this.renderCacheEfficiency(this._style);this._style.map._optimizeForTerrain||100!==t.efficiency&&e.warnOnce(`Terrain render cache efficiency is not optimal (${t.efficiency}%) and performance\n may be affected negatively, consider placing all background, fill and line layers before layer\n with id '${t.firstUndrapedLayer}' or create a map using optimizeForTerrain: true option.`)}_onStyleDataEvent(e){e.coord&&"source"===e.dataType?this._clearRenderCacheForTile(e.sourceCacheId,e.coord):"style"===e.dataType&&(this._invalidateRenderCache=!0)}_disable(){if(this.enabled&&(this.enabled=!1,this._sharedDepthStencil=void 0,this.proxySourceCache.deallocRenderCache(),this._style))for(const e in this._style._sourceCaches)this._style._sourceCaches[e].usedForTerrain=!1}destroy(){this._disable(),this._emptyDEMTexture&&this._emptyDEMTexture.destroy(),this._emptyDepthBufferTexture&&this._emptyDepthBufferTexture.destroy(),this.pool.forEach((e=>e.fb.destroy())),this.pool=[],this._depthFBO&&(this._depthFBO.destroy(),delete this._depthFBO,delete this._depthTexture)}_source(){return this.enabled?this.sourceCache:null}exaggeration(){return this._exaggeration}get visibleDemTiles(){return this._visibleDemTiles}get drapeBufferSize(){const e=2*this.proxySourceCache.getSource().tileSize;return[e,e]}set useVertexMorphing(e){this._useVertexMorphing=e}updateTileBinding(t){if(!this.enabled)return;this.prevTerrainTileForTile=this.terrainTileForTile;const o=this.proxySourceCache,i=this.painter.transform;this._initializing&&(this._initializing=0===i._centerAltitude&&-1===this.getAtPointOrZero(e.MercatorCoordinate.fromLngLat(i.center),-1),this._emptyDEMTextureDirty=!this._initializing);const n=this.proxyCoords=o.getIds().map((e=>{const t=o.getTileByID(e).tileID;return t.projMatrix=i.calculateProjMatrix(t.toUnwrapped()),t}));!function(t,o){const i=o.transform.pointCoordinate(o.transform.getCameraPoint()),n=new e.pointGeometry(i.x,i.y);t.sort(((t,o)=>{if(o.overscaledZ-t.overscaledZ)return o.overscaledZ-t.overscaledZ;const i=new e.pointGeometry(t.canonical.x+(1<{this.proxyToSource[e.key]={}})),this.terrainTileForTile={};const a=this._style._sourceCaches;for(const e in a){const o=a[e];if(!o.used)continue;if(o!==this.sourceCache&&this.resetTileLookupCache(o.id),this._setupProxiedCoordsForOrtho(o,t[e],r),o.usedForTerrain)continue;const i=t[e];o.getSource().reparseOverscaled&&this._assignTerrainTiles(i)}this.proxiedCoords[o.id]=n.map((e=>new bo(e,e.key,this.orthoMatrix))),this._assignTerrainTiles(n),this._prepareDEMTextures(),this._setupDrapedRenderBatches(),this._initFBOPool(),this._setupRenderCache(r),this.renderingToTexture=!1,this._updateTimestamp=e.exported.now();const s={};this._visibleDemTiles=[];for(const e of this.proxyCoords){const t=this.terrainTileForTile[e.key];if(!t)continue;const o=t.tileID.key;o in s||(this._visibleDemTiles.push(t),s[o]=o)}}_assignTerrainTiles(e){this._initializing||e.forEach((e=>{if(this.terrainTileForTile[e.key])return;const t=this._findTileCoveringTileID(e,this.sourceCache);t&&(this.terrainTileForTile[e.key]=t)}))}_prepareDEMTextures(){const e=this.painter.context,t=e.gl;for(const o in this.terrainTileForTile){const i=this.terrainTileForTile[o],n=i.dem;!n||i.demTexture&&!i.needsDEMTextureUpload||(e.activeTexture.set(t.TEXTURE1),Jt(this.painter,i,n))}}_prepareDemTileUniforms(e,t,o,i){if(!t||null==t.demTexture)return!1;const n=e.tileID.canonical,r=Math.pow(2,t.tileID.canonical.z-n.z),a=i||"";return o[`u_dem_tl${a}`]=[n.x*r%1,n.y*r%1],o[`u_dem_scale${a}`]=r,!0}get emptyDEMTexture(){return!this._emptyDEMTextureDirty&&this._emptyDEMTexture?this._emptyDEMTexture:this._updateEmptyDEMTexture()}get emptyDepthBufferTexture(){const t=this.painter.context,o=t.gl;if(!this._emptyDepthBufferTexture){const i={width:1,height:1,data:new Uint8Array([255,255,255,255])};this._emptyDepthBufferTexture=new e.Texture(t,i,o.RGBA,{premultiply:!1})}return this._emptyDepthBufferTexture}_getLoadedAreaMinimum(){let e=0;const t=this._visibleDemTiles.reduce(((t,o)=>{if(!o.dem)return t;const i=o.dem.tree.minimums[0];return i>0&&e++,t+i}),0);return e?t/e:0}_updateEmptyDEMTexture(){const t=this.painter.context,o=t.gl;t.activeTexture.set(o.TEXTURE2);const i=this._getLoadedAreaMinimum(),n={width:1,height:1,data:new Uint8Array(e.DEMData.pack(i,this.sourceCache.getSource().encoding))};this._emptyDEMTextureDirty=!1;let r=this._emptyDEMTexture;return r?r.update(n,{premultiply:!1}):r=this._emptyDEMTexture=new e.Texture(t,n,o.RGBA,{premultiply:!1}),r}setupElevationDraw(t,o,i){const n=this.painter.context,r=n.gl,a=(s=this.sourceCache.getSource().encoding,{u_dem:2,u_dem_prev:4,u_dem_unpack:e.DEMData.getUnpackVector(s),u_dem_tl:[0,0],u_dem_tl_prev:[0,0],u_dem_scale:0,u_dem_scale_prev:0,u_dem_size:0,u_dem_lerp:1,u_depth:3,u_depth_size_inv:[0,0],u_exaggeration:0,u_tile_tl_up:[0,0,1],u_tile_tr_up:[0,0,1],u_tile_br_up:[0,0,1],u_tile_bl_up:[0,0,1],u_tile_up_scale:1});var s;a.u_dem_size=this.sourceCache.getSource().tileSize,a.u_exaggeration=this.exaggeration();const p=this.painter.transform,c=p.projection.createTileTransform(p,p.worldSize),l=t.tileID.canonical;a.u_tile_tl_up=c.upVector(l,0,0),a.u_tile_tr_up=c.upVector(l,e.EXTENT,0),a.u_tile_br_up=c.upVector(l,e.EXTENT,e.EXTENT),a.u_tile_bl_up=c.upVector(l,0,e.EXTENT),a.u_tile_up_scale=c.upVectorScale(l);let b=null,d=null,u=1;if(i&&i.morphing&&this._useVertexMorphing){const e=i.morphing.srcDemTile,o=i.morphing.dstDemTile;u=i.morphing.phase,e&&o&&(this._prepareDemTileUniforms(t,e,a,"_prev")&&(d=e),this._prepareDemTileUniforms(t,o,a)&&(b=o))}if(d&&b?(n.activeTexture.set(r.TEXTURE2),b.demTexture.bind(r.NEAREST,r.CLAMP_TO_EDGE,r.NEAREST),n.activeTexture.set(r.TEXTURE4),d.demTexture.bind(r.NEAREST,r.CLAMP_TO_EDGE,r.NEAREST),a.u_dem_lerp=u):(b=this.terrainTileForTile[t.tileID.key],n.activeTexture.set(r.TEXTURE2),(this._prepareDemTileUniforms(t,b,a)?b.demTexture:this.emptyDEMTexture).bind(r.NEAREST,r.CLAMP_TO_EDGE)),n.activeTexture.set(r.TEXTURE3),i&&i.useDepthForOcclusion?(this._depthTexture.bind(r.NEAREST,r.CLAMP_TO_EDGE),a.u_depth_size_inv=[1/this._depthFBO.width,1/this._depthFBO.height]):(this.emptyDepthBufferTexture.bind(r.NEAREST,r.CLAMP_TO_EDGE),a.u_depth_size_inv=[1,1]),i&&i.useMeterToDem&&b){const t=(1<{if(c===e)return;const i=[];o&&i.push(ro[l]),i.push(ro[e]),i.push("PROJECTION_GLOBE_VIEW"),p=t.useProgram("globeRaster",null,i),c=e},d=t.colorModeForRenderPass(),u=new e.DepthMode(s.LEQUAL,e.DepthMode.ReadWrite,t.depthRangeFor3D);no.update(r);const M=t.transform,z=e.calculateGlobeMatrix(M,M.worldSize),m=e.calculateGlobeMercatorMatrix(M),h=[e.mercatorXfromLng(M.center.lng),e.mercatorYfromLat(M.center.lat)],O=t.globeSharedBuffers;(l?[!1,!0]:[!1]).forEach((l=>{c=-1;const f=l?s.LINES:s.TRIANGLES;for(const c of n){const n=i.getTile(c),A=Math.pow(2,c.canonical.z),[_,g]=e.globeBuffersForTileMesh(t,n,c,A),q=e.StencilMode.disabled,y=o.prevTerrainTileForTile[c.key],v=o.terrainTileForTile[c.key];io(y,v)&&no.newMorphing(c.key,y,v,r,250),a.activeTexture.set(s.TEXTURE0),n.texture.bind(s.LINEAR,s.CLAMP_TO_EDGE);const x=no.getMorphValuesForProxy(c.key),W=x?1:0,w={};x&&e.extend$1(w,{morphing:{srcDemTile:x.from,dstDemTile:x.to,phase:e.easeCubicInOut(x.phase)}});const L=e.globeMatrixForTile(c.canonical,z),R=oo(M.projMatrix,L,m,e.globeToMercatorTransition(M.zoom),h);if(b(W,l),o.setupElevationDraw(n,p,w),t.prepareDrawProgram(a,p,c.toUnwrapped()),O){const[o,i]=l?O.getWirefameBuffer(t.context):[O.gridIndexBuffer,O.gridSegments];p.draw(a,f,u,q,d,e.CullFaceMode.backCCW,R,"globe_raster",_,o,i)}if(!l){const t=[0===c.canonical.y?e.globePoleMatrixForTile(c.canonical,!1,M):null,c.canonical.y===A-1?e.globePoleMatrixForTile(c.canonical,!0,M):null];for(const o of t){if(!o)continue;const t=oo(M.projMatrix,o,o,0,h);O&&p.draw(a,f,u,q,d,e.CullFaceMode.disabled,t,"globe_pole_raster",g,O.poleIndexBuffer,O.poleSegments)}}}}))}(t,o,i,n,r);else{const a=t.context,s=a.gl;let p,c;const l=t.options.showTerrainWireframe?2:0,b=(e,o)=>{if(c===e)return;const i=[ro[e]];o&&i.push(ro[l]),p=t.useProgram("terrainRaster",null,i),c=e},d=t.colorModeForRenderPass(),u=new e.DepthMode(s.LEQUAL,e.DepthMode.ReadWrite,t.depthRangeFor3D);no.update(r);const M=t.transform,z=6*Math.pow(1.5,22-M.zoom)*o.exaggeration();(l?[!1,!0]:[!1]).forEach((l=>{c=-1;const m=l?s.LINES:s.TRIANGLES,[h,O]=l?o.getWirefameBuffer():[o.gridIndexBuffer,o.gridSegments];for(const c of n){const n=i.getTile(c),f=e.StencilMode.disabled,A=o.prevTerrainTileForTile[c.key],_=o.terrainTileForTile[c.key];io(A,_)&&no.newMorphing(c.key,A,_,r,250),a.activeTexture.set(s.TEXTURE0),n.texture.bind(s.LINEAR,s.CLAMP_TO_EDGE,s.LINEAR_MIPMAP_NEAREST);const g=no.getMorphValuesForProxy(c.key),q=g?1:0;let y;g&&(y={morphing:{srcDemTile:g.from,dstDemTile:g.to,phase:e.easeCubicInOut(g.phase)}});const v=to(c.projMatrix,ao(c.canonical,M.renderWorldCopies)?z/10:z);b(q,l),o.setupElevationDraw(n,p,y),t.prepareDrawProgram(a,p,c.toUnwrapped()),p.draw(a,m,u,f,d,e.CullFaceMode.backCCW,v,"terrain_raster",o.gridBuffer,h,O)}}))}}(o,this,this.proxySourceCache,t,this._updateTimestamp),this.renderingToTexture=!0,t.splice(0,t.length))}renderBatch(t){if(0===this._drapedRenderBatches.length)return t+1;this.renderingToTexture=!0;const o=this.painter,i=this.painter.context,n=this.proxySourceCache,r=this.proxiedCoords[n.id],a=this._drapedRenderBatches.shift(),s=[],p=o.style.order;let c=0;for(const l of r){const r=n.getTileByID(l.proxyTileKey),b=n.proxyCachedFBO[l.key]?n.proxyCachedFBO[l.key][t]:void 0,d=void 0!==b?n.renderCache[b]:this.pool[c++],u=void 0!==b;if(r.texture=d.tex,u&&!d.dirty){s.push(r.tileID);continue}let M;i.bindFramebuffer.set(d.fb.framebuffer),this.renderedToTile=!1,d.dirty&&(i.clear({color:e.Color.transparent,stencil:0}),d.dirty=!1);for(let e=a.start;e<=a.end;++e){const t=o.style._layers[p[e]];if(t.isHidden(o.transform.zoom))continue;const n=o.style._getLayerSourceCache(t),r=n?this.proxyToSource[l.key][n.id]:[l];if(!r)continue;const a=r;i.viewport.set([0,0,d.fb.width,d.fb.height]),M!==(n?n.id:null)&&(this._setupStencil(d,r,t,n),M=n?n.id:null),o.renderLayer(o,n,t,a)}this.renderedToTile?(d.dirty=!0,s.push(r.tileID)):u||--c,5===c&&(c=0,this.renderToBackBuffer(s))}return this.renderToBackBuffer(s),this.renderingToTexture=!1,i.bindFramebuffer.set(null),i.viewport.set([0,0,o.width,o.height]),a.end+1}postRender(){}renderCacheEfficiency(e){const t=e.order.length;if(0===t)return{efficiency:100};let o,i=0,n=0,r=!1;for(let a=0;ae.dem)).forEach((t=>{e=Math.min(e,t.dem.tree.minimums[0])})),0===e?e:(e-30)*this._exaggeration}raycast(e,t,o){if(!this._visibleDemTiles)return null;const i=this._visibleDemTiles.filter((e=>e.dem)).map((i=>{const n=i.tileID,r=Math.pow(2,n.overscaledZ),{x:a,y:s}=n.canonical,p=a/r,c=(a+1)/r,l=s/r,b=(s+1)/r;return{minx:p,miny:l,maxx:c,maxy:b,t:i.dem.tree.raycastRoot(p,l,c,b,e,t,o),tile:i}}));i.sort(((e,t)=>(null!==e.t?e.t:Number.MAX_VALUE)-(null!==t.t?t.t:Number.MAX_VALUE)));for(const n of i){if(null==n.t)return null;const i=n.tile.dem.tree.raycast(n.minx,n.miny,n.maxx,n.maxy,e,t,o);if(null!=i)return i}return null}_createFBO(){const t=this.painter.context,o=t.gl,i=this.drapeBufferSize;t.activeTexture.set(o.TEXTURE0);const n=new e.Texture(t,{width:i[0],height:i[1],data:null},o.RGBA);n.bind(o.LINEAR,o.CLAMP_TO_EDGE);const r=t.createFramebuffer(i[0],i[1],!1);return r.colorAttachment.set(n.texture),r.depthAttachment=new be(t,r.framebuffer),void 0===this._sharedDepthStencil?(this._sharedDepthStencil=t.createRenderbuffer(t.gl.DEPTH_STENCIL,i[0],i[1]),this._stencilRef=0,r.depthAttachment.set(this._sharedDepthStencil),t.clear({stencil:0})):r.depthAttachment.set(this._sharedDepthStencil),t.extTextureFilterAnisotropic&&!t.extTextureFilterAnisotropicForceOff&&o.texParameterf(o.TEXTURE_2D,t.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,t.extTextureFilterAnisotropicMax),{fb:r,tex:n,dirty:!1}}_initFBOPool(){for(;this.pool.length{const t=this._style._layers[e],o=t.isHidden(this.painter.transform.zoom),i=t.getCrossfadeParameters(),n=!!i&&1!==i.t,r=t.hasTransition();return"custom"!==t.type&&!o&&(n||r)}))}_clearRasterFadeFromRenderCache(){let e=!1;for(const t in this._style._sourceCaches)if(this._style._sourceCaches[t]._source instanceof Oe){e=!0;break}if(e)for(let e=0;et.renderCachePool.length){const e=Object.values(t.proxyCachedFBO);t.proxyCachedFBO={};for(let o=0;o=0;n--){const r=o[n];if(t.getTileByID(r.key),void 0!==t.proxyCachedFBO[r.key]){const o=e[r.key],n=this.proxyToSource[r.key];let a=0;for(const e in n){const t=n[e],r=o[e];if(!r||r.length!==t.length||t.some(((t,o)=>t!==r[o]||i[e]&&i[e].hasOwnProperty(t.key)))){a=-1;break}++a}for(const e in t.proxyCachedFBO[r.key])t.renderCache[t.proxyCachedFBO[r.key][e]].dirty=a<0||a!==Object.values(o).length}}const n=[...this._drapedRenderBatches];n.sort(((e,t)=>t.end-t.start-(e.end-e.start)));for(const e of n)for(const i of o){if(t.proxyCachedFBO[i.key])continue;let o=t.renderCachePool.pop();void 0===o&&t.renderCache.length<50&&(o=t.renderCache.length,t.renderCache.push(this._createFBO())),void 0!==o&&(t.proxyCachedFBO[i.key]={},t.proxyCachedFBO[i.key][e.start]=o,t.renderCache[o].dirty=!0)}this._tilesDirty={}}_setupStencil(e,t,o,i){if(!i||!this._sourceTilesOverlap[i.id])return void(this._overlapStencilType&&(this._overlapStencilType=!1));const n=this.painter.context,r=n.gl;if(t.length<=1)return void(this._overlapStencilType=!1);let a;if(o.isTileClipped())a=t.length,this._overlapStencilMode.test={func:r.EQUAL,mask:255},this._overlapStencilType="Clip";else{if(!(t[0].overscaledZ>t[t.length-1].overscaledZ))return void(this._overlapStencilType=!1);a=1,this._overlapStencilMode.test={func:r.GREATER,mask:255},this._overlapStencilType="Mask"}this._stencilRef+a>255&&(n.clear({stencil:0}),this._stencilRef=0),this._stencilRef+=a,this._overlapStencilMode.ref=this._stencilRef,o.isTileClipped()&&this._renderTileClippingMasks(t,this._overlapStencilMode.ref)}clipOrMaskOverlapStencilType(){return"Clip"===this._overlapStencilType||"Mask"===this._overlapStencilType}stencilModeForRTTOverlap(t){return this.renderingToTexture&&this._overlapStencilType?("Clip"===this._overlapStencilType&&(this._overlapStencilMode.ref=this.painter._tileClippingMaskIDs[t.key]),this._overlapStencilMode):e.StencilMode.disabled}_renderTileClippingMasks(t,o){const i=this.painter,n=this.painter.context,r=n.gl;i._tileClippingMaskIDs={},n.setColorMode(e.ColorMode.disabled),n.setDepthMode(e.DepthMode.disabled);const a=i.useProgram("clippingMask");for(const s of t){const t=i._tileClippingMaskIDs[s.key]=--o;a.draw(n,r.TRIANGLES,e.DepthMode.disabled,new e.StencilMode({func:r.ALWAYS,mask:0},t,255,r.KEEP,r.KEEP,r.REPLACE),e.ColorMode.disabled,e.CullFaceMode.disabled,so(s.projMatrix),"$clipping",i.tileExtentBuffer,i.quadTriangleIndexBuffer,i.tileExtentSegments)}}pointCoordinate(t){const o=this.painter.transform;if(t.x<0||t.x>o.width||t.y<0||t.y>o.height)return null;const i=[t.x,t.y,1,1];e.transformMat4$1(i,i,o.pixelMatrixInverse),e.scale$1(i,i,1/i[3]),i[0]/=o.worldSize,i[1]/=o.worldSize;const n=o._camera.position,r=e.mercatorZfromAltitude(1,o.center.lat),a=[n[0],n[1],n[2]/r,0],s=e.subtract([],i.slice(0,3),a);e.normalize(s,s);const p=this.raycast(a,s,this._exaggeration);return null!==p&&p?(e.scaleAndAdd(a,a,s,p),a[3]=a[2],a[2]*=r,a):null}drawDepth(){const t=this.painter,o=t.context,i=this.proxySourceCache,n=Math.ceil(t.width),r=Math.ceil(t.height);if(!this._depthFBO||this._depthFBO.width===n&&this._depthFBO.height===r||(this._depthFBO.destroy(),delete this._depthFBO,delete this._depthTexture),!this._depthFBO){const t=o.gl,i=o.createFramebuffer(n,r,!0);o.activeTexture.set(t.TEXTURE0);const a=new e.Texture(o,{width:n,height:r,data:null},t.RGBA);a.bind(t.NEAREST,t.CLAMP_TO_EDGE),i.colorAttachment.set(a.texture);const s=o.createRenderbuffer(o.gl.DEPTH_COMPONENT16,n,r);i.depthAttachment.set(s),this._depthFBO=i,this._depthTexture=a}o.bindFramebuffer.set(this._depthFBO.framebuffer),o.viewport.set([0,0,n,r]),function(t,o,i,n){if("globe"===t.transform.projection.name)return;const r=t.context,a=r.gl;r.clear({depth:1});const s=t.useProgram("terrainDepth"),p=new e.DepthMode(a.LESS,e.DepthMode.ReadWrite,t.depthRangeFor3D);for(const t of n){const n=i.getTile(t),c=to(t.projMatrix,0);o.setupElevationDraw(n,s),s.draw(r,a.TRIANGLES,p,e.StencilMode.disabled,e.ColorMode.unblended,e.CullFaceMode.backCCW,c,"terrain_depth",o.gridBuffer,o.gridIndexBuffer,o.gridNoSkirtSegments)}}(t,this,i,this.proxyCoords)}_setupProxiedCoordsForOrtho(e,t,o){if(e.getSource()instanceof _e)return this._setupProxiedCoordsForImageSource(e,t,o);this._findCoveringTileCache[e.id]=this._findCoveringTileCache[e.id]||{};const i=this.proxiedCoords[e.id]=[],n=this.proxyCoords;for(let t=0;t(e.min.x=Math.min(e.min.x,t.x-s.x),e.min.y=Math.min(e.min.y,t.y-s.y),e.max.x=Math.max(e.max.x,t.x-s.x),e.max.y=Math.max(e.max.y,t.y-s.y),e)),{min:new e.pointGeometry(Number.MAX_VALUE,Number.MAX_VALUE),max:new e.pointGeometry(-Number.MAX_VALUE,-Number.MAX_VALUE)}),c=(t,o)=>{const i=t.wrap+t.canonical.x/(1<a+p.max.x||n+rs+p.max.y};for(let e=0;ee.key===o.tileID.key));if(e)return e}if(o.tileID.key!==t.key){const i=t.canonical.z-o.tileID.canonical.z;let r,a,s;n=e.create();const p=o.tileID.wrap-t.wrap<0?(r=e.EXTENT>>i,a=r*((o.tileID.canonical.x<=n){const i=t.canonical.z-n;o.getSource().reparseOverscaled?(s=Math.max(t.canonical.z+2,o.transform.tileZoom),a=new e.OverscaledTileID(s,t.wrap,n,t.canonical.x>>i,t.canonical.y>>i)):0!==i&&(s=n,a=new e.OverscaledTileID(s,t.wrap,n,t.canonical.x>>i,t.canonical.y>>i))}a.key!==t.key&&(c.push(a.key),i=o.getTile(a))}const l=e=>{c.forEach((t=>{n[t]=e})),c.length=0};for(s-=1;s>=p&&(!i||!i.hasData());s--){i&&l(i.tileID.key);const e=a.calculateScaledKey(s);if(i=o.getTileByID(e),i&&i.hasData())break;const t=n[e];if(null===t)break;void 0===t?c.push(e):i=o.getTileByID(t)}return l(i?i.tileID.key:null),i&&i.hasData()?i:null}findDEMTileFor(e){return this.enabled?this._findTileCoveringTileID(e,this.sourceCache):null}prepareDrawTile(e){this.renderedToTile=!0}_clearRenderCacheForTile(e,t){let o=this._tilesDirty[e];o||(o=this._tilesDirty[e]={}),o[t.key]=!0}getWirefameBuffer(){if(!this.wireframeSegments){const t=function(t){let o,i,n;const r=new e.StructArrayLayout2ui4,a=131;for(i=1;i<129;i++){for(o=1;o<129;o++)n=i*a+o,r.emplaceBack(n,n+1),r.emplaceBack(n,n+a),r.emplaceBack(n+1,n+a),128===i&&r.emplaceBack(n+a,n+a+1);r.emplaceBack(n+1,n+1+a)}return r}();this.wireframeIndexBuffer=this.painter.context.createIndexBuffer(t),this.wireframeSegments=e.SegmentVector.simpleSegment(0,0,this.gridBuffer.length,t.length)}return[this.wireframeIndexBuffer,this.wireframeSegments]}}function Mo(e){const t=[];for(let o=0;o`#define ${e}`)));const m=z.concat("\n#ifdef GL_ES\nprecision mediump float;\n#else\n\n#if !defined(lowp)\n#define lowp\n#endif\n\n#if !defined(mediump)\n#define mediump\n#endif\n\n#if !defined(highp)\n#define highp\n#endif\n\n#endif",Ut,Ht.fragmentSource,Ft.fragmentSource,i.fragmentSource).join("\n"),h=z.concat("\n#ifdef GL_ES\nprecision highp float;\n#else\n\n#if !defined(lowp)\n#define lowp\n#endif\n\n#if !defined(mediump)\n#define mediump\n#endif\n\n#if !defined(highp)\n#define highp\n#endif\n\n#endif",Ut,Ht.vertexSource,Ft.vertexSource,jt.vertexSource,i.vertexSource).join("\n"),O=s.createShader(s.FRAGMENT_SHADER);if(s.isContextLost())return void(this.failedToCreate=!0);s.shaderSource(O,m),s.compileShader(O),s.attachShader(this.program,O);const f=s.createShader(s.VERTEX_SHADER);if(s.isContextLost())return void(this.failedToCreate=!0);s.shaderSource(f,h),s.compileShader(f),s.attachShader(this.program,f),this.attributes={};const A={};this.numAttributes=l.length;for(let e=0;e({u_dem:new e.Uniform1i(t,o.u_dem),u_dem_prev:new e.Uniform1i(t,o.u_dem_prev),u_dem_unpack:new e.Uniform4f(t,o.u_dem_unpack),u_dem_tl:new e.Uniform2f(t,o.u_dem_tl),u_dem_scale:new e.Uniform1f(t,o.u_dem_scale),u_dem_tl_prev:new e.Uniform2f(t,o.u_dem_tl_prev),u_dem_scale_prev:new e.Uniform1f(t,o.u_dem_scale_prev),u_dem_size:new e.Uniform1f(t,o.u_dem_size),u_dem_lerp:new e.Uniform1f(t,o.u_dem_lerp),u_exaggeration:new e.Uniform1f(t,o.u_exaggeration),u_depth:new e.Uniform1i(t,o.u_depth),u_depth_size_inv:new e.Uniform2f(t,o.u_depth_size_inv),u_meter_to_dem:new e.Uniform1f(t,o.u_meter_to_dem),u_label_plane_matrix_inv:new e.UniformMatrix4f(t,o.u_label_plane_matrix_inv),u_tile_tl_up:new e.Uniform3f(t,o.u_tile_tl_up),u_tile_tr_up:new e.Uniform3f(t,o.u_tile_tr_up),u_tile_br_up:new e.Uniform3f(t,o.u_tile_br_up),u_tile_bl_up:new e.Uniform3f(t,o.u_tile_bl_up),u_tile_up_scale:new e.Uniform1f(t,o.u_tile_up_scale)}))(t,A)),-1!==a.indexOf("FOG")&&(this.fogUniforms=((t,o)=>({u_fog_matrix:new e.UniformMatrix4f(t,o.u_fog_matrix),u_fog_range:new e.Uniform2f(t,o.u_fog_range),u_fog_color:new e.Uniform4f(t,o.u_fog_color),u_fog_horizon_blend:new e.Uniform1f(t,o.u_fog_horizon_blend),u_fog_temporal_offset:new e.Uniform1f(t,o.u_fog_temporal_offset)}))(t,A))}setTerrainUniformValues(e,t){if(!this.terrainUniforms)return;const o=this.terrainUniforms;if(!this.failedToCreate){e.program.set(this.program);for(const e in t)o[e].set(t[e])}}setFogUniformValues(e,t){if(!this.fogUniforms)return;const o=this.fogUniforms;if(!this.failedToCreate){e.program.set(this.program);for(const e in t)o[e].location&&o[e].set(t[e])}}draw(e,t,o,i,n,r,a,s,p,c,l,b,d,u,M,z){const m=e.gl;if(this.failedToCreate)return;e.program.set(this.program),e.setDepthMode(o),e.setStencilMode(i),e.setColorMode(n),e.setCullFace(r);for(const e of Object.keys(this.fixedUniforms))this.fixedUniforms[e].set(a[e]);u&&u.setUniforms(e,this.binderUniforms,b,{zoom:d});const h={[m.LINES]:2,[m.TRIANGLES]:3,[m.LINE_STRIP]:1}[t];for(const o of l.get()){const i=o.vaos||(o.vaos={});(i[s]||(i[s]=new Zt)).bind(e,this,p,u?u.getPaintVertexBuffers():[],c,o.vertexOffset,M,z),m.drawElements(t,o.primitiveLength*h,m.UNSIGNED_SHORT,o.primitiveOffset*h*2)}}}function mo(e,t,o){const i=1/x(o,1,t.transform.tileZoom),n=Math.pow(2,o.tileID.overscaledZ),r=o.tileSize*Math.pow(2,t.transform.tileZoom)/n,a=r*(o.tileID.canonical.x+o.tileID.wrap*n),s=r*o.tileID.canonical.y;return{u_image:0,u_texsize:o.imageAtlasTexture.size,u_scale:[i,e.fromScale,e.toScale],u_fade:e.t,u_pixel_coord_upper:[a>>16,s>>16],u_pixel_coord_lower:[65535&a,65535&s]}}const ho=(t,o,i,n)=>{const r=o.style.light,a=r.properties.get("position"),s=[a.x,a.y,a.z],p=e.create$1();"viewport"===r.properties.get("anchor")&&(e.fromRotation(p,-o.transform.angle),e.transformMat3(s,s,p));const c=r.properties.get("color");return{u_matrix:t,u_lightpos:s,u_lightintensity:r.properties.get("intensity"),u_lightcolor:[c.r,c.g,c.b],u_vertical_gradient:+i,u_opacity:n}},Oo=(t,o,i,n,r,a,s)=>e.extend(ho(t,o,i,n),mo(a,o,s),{u_height_factor:-Math.pow(2,r.overscaledZ)/s.tileSize/8}),fo=e=>({u_matrix:e}),Ao=(t,o,i,n)=>e.extend(fo(t),mo(i,o,n)),_o=(e,t)=>({u_matrix:e,u_world:t}),go=(t,o,i,n,r)=>e.extend(Ao(t,o,i,n),{u_world:r}),qo=(t,o,i,n)=>{const r=t.transform;let a;return a="map"===n.paint.get("circle-pitch-alignment")?r.calculatePixelsToTileUnitsMatrix(i):new Float32Array([r.pixelsToGLUnits[0],0,0,r.pixelsToGLUnits[1]]),{u_camera_to_center_distance:r.cameraToCenterDistance,u_matrix:t.translatePosMatrix(o.projMatrix,i,n.paint.get("circle-translate"),n.paint.get("circle-translate-anchor")),u_device_pixel_ratio:e.exported.devicePixelRatio,u_extrude_scale:a}},yo=e=>{const t=[];return"map"===e.paint.get("circle-pitch-alignment")&&t.push("PITCH_WITH_MAP"),"map"===e.paint.get("circle-pitch-scale")&&t.push("SCALE_WITH_MAP"),t},vo=(t,o,i)=>{const n=e.EXTENT/i.tileSize;return{u_matrix:t,u_camera_to_center_distance:o.cameraToCenterDistance,u_extrude_scale:[o.pixelsToGLUnits[0]/n,o.pixelsToGLUnits[1]/n]}},xo=(e,t,o=1)=>({u_matrix:e,u_color:t,u_overlay:0,u_overlay_scale:o}),Wo=(e,t,o,i)=>({u_matrix:e,u_extrude_scale:x(t,1,o),u_intensity:i}),wo=(t,o,i,n,r,a)=>{const s=t.transform,p=s.calculatePixelsToTileUnitsMatrix(o),c={u_matrix:To(t,o,i,r),u_pixels_to_tile_units:p,u_device_pixel_ratio:e.exported.devicePixelRatio,u_units_to_pixels:[1/s.pixelsToGLUnits[0],1/s.pixelsToGLUnits[1]],u_dash_image:0,u_gradient_image:1,u_image_height:a,u_texsize:[0,0],u_scale:[0,0,0],u_mix:0,u_alpha_discard_threshold:0};if(ko(i)){const e=Ro(o,t.transform);c.u_texsize=o.lineAtlasTexture.size,c.u_scale=[e,n.fromScale,n.toScale],c.u_mix=n.t}return c},Lo=(t,o,i,n,r)=>{const a=t.transform,s=Ro(o,a);return{u_matrix:To(t,o,i,r),u_texsize:o.imageAtlasTexture.size,u_pixels_to_tile_units:a.calculatePixelsToTileUnitsMatrix(o),u_device_pixel_ratio:e.exported.devicePixelRatio,u_image:0,u_scale:[s,n.fromScale,n.toScale],u_fade:n.t,u_units_to_pixels:[1/a.pixelsToGLUnits[0],1/a.pixelsToGLUnits[1]],u_alpha_discard_threshold:0}};function Ro(e,t){return 1/x(e,1,t.tileZoom)}function To(e,t,o,i){return e.translatePosMatrix(i||t.tileID.projMatrix,t,o.paint.get("line-translate"),o.paint.get("line-translate-anchor"))}function ko(e){const t=e.paint.get("line-dasharray").value;return t.value||"constant"!==t.kind}const Bo=(e,t,o,i,n,r)=>{return{u_matrix:e,u_tl_parent:t,u_scale_parent:o,u_fade_t:i.mix,u_opacity:i.opacity*n.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:n.paint.get("raster-brightness-min"),u_brightness_high:n.paint.get("raster-brightness-max"),u_saturation_factor:(s=n.paint.get("raster-saturation"),s>0?1-1/(1.001-s):-s),u_contrast_factor:(a=n.paint.get("raster-contrast"),a>0?1/(1-a):1+a),u_spin_weights:So(n.paint.get("raster-hue-rotate")),u_perspective_transform:r};var a,s};function So(e){e*=Math.PI/180;const t=Math.sin(e),o=Math.cos(e);return[(2*o+1)/3,(-Math.sqrt(3)*t-o+1)/3,(Math.sqrt(3)*t-o+1)/3]}const Xo=(e,t,o,i,n,r,a,s,p,c,l,b,d,u)=>{const M=n.transform;return{u_is_size_zoom_constant:+("constant"===e||"source"===e),u_is_size_feature_constant:+("constant"===e||"camera"===e),u_size_t:t?t.uSizeT:0,u_size:t?t.uSize:0,u_camera_to_center_distance:M.cameraToCenterDistance,u_pitch:M.pitch/360*2*Math.PI,u_rotate_symbol:+o,u_aspect_ratio:M.width/M.height,u_fade_change:n.options.fadeDuration?n.symbolFadeChange:1,u_matrix:r,u_label_plane_matrix:a,u_coord_matrix:s,u_is_text:+p,u_pitch_with_map:+i,u_texsize:c,u_tile_id:l,u_zoom_transition:b,u_inv_rot_matrix:d,u_merc_center:u,u_texture:0}},Eo=(t,o,i,n,r,a,s,p,c,l,b,d,u,M,z)=>{const{cameraToCenterDistance:m,_pitch:h}=r.transform;return e.extend(Xo(t,o,i,n,r,a,s,p,c,l,d,u,M,z),{u_gamma_scale:n?m*Math.cos(r.terrain?0:h):1,u_device_pixel_ratio:e.exported.devicePixelRatio,u_is_halo:+b})},Do=(t,o,i,n,r,a,s,p,c,l,b,d,u,M)=>e.extend(Eo(t,o,i,n,r,a,s,p,!0,c,!0,b,d,u,M),{u_texsize_icon:l,u_texture_icon:1}),Co=(e,t,o)=>({u_matrix:e,u_opacity:t,u_color:o}),No=(t,o,i,n,r,a)=>e.extend(function(e,t,o,i){const n=o.imageManager.getPattern(e.from.toString()),r=o.imageManager.getPattern(e.to.toString()),{width:a,height:s}=o.imageManager.getPixelSize(),p=Math.pow(2,i.tileID.overscaledZ),c=i.tileSize*Math.pow(2,o.transform.tileZoom)/p,l=c*(i.tileID.canonical.x+i.tileID.wrap*p),b=c*i.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:n.tl,u_pattern_br_a:n.br,u_pattern_tl_b:r.tl,u_pattern_br_b:r.br,u_texsize:[a,s],u_mix:t.t,u_pattern_size_a:n.displaySize,u_pattern_size_b:r.displaySize,u_scale_a:t.fromScale,u_scale_b:t.toScale,u_tile_units_to_pixels:1/x(i,1,o.transform.tileZoom),u_pixel_coord_upper:[l>>16,b>>16],u_pixel_coord_lower:[65535&l,65535&b]}}(n,a,i,r),{u_matrix:t,u_opacity:o}),Po={fillExtrusion:(t,o)=>({u_matrix:new e.UniformMatrix4f(t,o.u_matrix),u_lightpos:new e.Uniform3f(t,o.u_lightpos),u_lightintensity:new e.Uniform1f(t,o.u_lightintensity),u_lightcolor:new e.Uniform3f(t,o.u_lightcolor),u_vertical_gradient:new e.Uniform1f(t,o.u_vertical_gradient),u_opacity:new e.Uniform1f(t,o.u_opacity)}),fillExtrusionPattern:(t,o)=>({u_matrix:new e.UniformMatrix4f(t,o.u_matrix),u_lightpos:new e.Uniform3f(t,o.u_lightpos),u_lightintensity:new e.Uniform1f(t,o.u_lightintensity),u_lightcolor:new e.Uniform3f(t,o.u_lightcolor),u_vertical_gradient:new e.Uniform1f(t,o.u_vertical_gradient),u_height_factor:new e.Uniform1f(t,o.u_height_factor),u_image:new e.Uniform1i(t,o.u_image),u_texsize:new e.Uniform2f(t,o.u_texsize),u_pixel_coord_upper:new e.Uniform2f(t,o.u_pixel_coord_upper),u_pixel_coord_lower:new e.Uniform2f(t,o.u_pixel_coord_lower),u_scale:new e.Uniform3f(t,o.u_scale),u_fade:new e.Uniform1f(t,o.u_fade),u_opacity:new e.Uniform1f(t,o.u_opacity)}),fill:(t,o)=>({u_matrix:new e.UniformMatrix4f(t,o.u_matrix)}),fillPattern:(t,o)=>({u_matrix:new e.UniformMatrix4f(t,o.u_matrix),u_image:new e.Uniform1i(t,o.u_image),u_texsize:new e.Uniform2f(t,o.u_texsize),u_pixel_coord_upper:new e.Uniform2f(t,o.u_pixel_coord_upper),u_pixel_coord_lower:new e.Uniform2f(t,o.u_pixel_coord_lower),u_scale:new e.Uniform3f(t,o.u_scale),u_fade:new e.Uniform1f(t,o.u_fade)}),fillOutline:(t,o)=>({u_matrix:new e.UniformMatrix4f(t,o.u_matrix),u_world:new e.Uniform2f(t,o.u_world)}),fillOutlinePattern:(t,o)=>({u_matrix:new e.UniformMatrix4f(t,o.u_matrix),u_world:new e.Uniform2f(t,o.u_world),u_image:new e.Uniform1i(t,o.u_image),u_texsize:new e.Uniform2f(t,o.u_texsize),u_pixel_coord_upper:new e.Uniform2f(t,o.u_pixel_coord_upper),u_pixel_coord_lower:new e.Uniform2f(t,o.u_pixel_coord_lower),u_scale:new e.Uniform3f(t,o.u_scale),u_fade:new e.Uniform1f(t,o.u_fade)}),circle:(t,o)=>({u_camera_to_center_distance:new e.Uniform1f(t,o.u_camera_to_center_distance),u_extrude_scale:new e.UniformMatrix2f(t,o.u_extrude_scale),u_device_pixel_ratio:new e.Uniform1f(t,o.u_device_pixel_ratio),u_matrix:new e.UniformMatrix4f(t,o.u_matrix)}),collisionBox:(t,o)=>({u_matrix:new e.UniformMatrix4f(t,o.u_matrix),u_camera_to_center_distance:new e.Uniform1f(t,o.u_camera_to_center_distance),u_extrude_scale:new e.Uniform2f(t,o.u_extrude_scale)}),collisionCircle:(t,o)=>({u_matrix:new e.UniformMatrix4f(t,o.u_matrix),u_inv_matrix:new e.UniformMatrix4f(t,o.u_inv_matrix),u_camera_to_center_distance:new e.Uniform1f(t,o.u_camera_to_center_distance),u_viewport_size:new e.Uniform2f(t,o.u_viewport_size)}),debug:(t,o)=>({u_color:new e.UniformColor(t,o.u_color),u_matrix:new e.UniformMatrix4f(t,o.u_matrix),u_overlay:new e.Uniform1i(t,o.u_overlay),u_overlay_scale:new e.Uniform1f(t,o.u_overlay_scale)}),clippingMask:(t,o)=>({u_matrix:new e.UniformMatrix4f(t,o.u_matrix)}),heatmap:(t,o)=>({u_extrude_scale:new e.Uniform1f(t,o.u_extrude_scale),u_intensity:new e.Uniform1f(t,o.u_intensity),u_matrix:new e.UniformMatrix4f(t,o.u_matrix)}),heatmapTexture:(t,o)=>({u_image:new e.Uniform1i(t,o.u_image),u_color_ramp:new e.Uniform1i(t,o.u_color_ramp),u_opacity:new e.Uniform1f(t,o.u_opacity)}),hillshade:(t,o)=>({u_matrix:new e.UniformMatrix4f(t,o.u_matrix),u_image:new e.Uniform1i(t,o.u_image),u_latrange:new e.Uniform2f(t,o.u_latrange),u_light:new e.Uniform2f(t,o.u_light),u_shadow:new e.UniformColor(t,o.u_shadow),u_highlight:new e.UniformColor(t,o.u_highlight),u_accent:new e.UniformColor(t,o.u_accent)}),hillshadePrepare:(t,o)=>({u_matrix:new e.UniformMatrix4f(t,o.u_matrix),u_image:new e.Uniform1i(t,o.u_image),u_dimension:new e.Uniform2f(t,o.u_dimension),u_zoom:new e.Uniform1f(t,o.u_zoom),u_unpack:new e.Uniform4f(t,o.u_unpack)}),line:(t,o)=>({u_matrix:new e.UniformMatrix4f(t,o.u_matrix),u_pixels_to_tile_units:new e.UniformMatrix2f(t,o.u_pixels_to_tile_units),u_device_pixel_ratio:new e.Uniform1f(t,o.u_device_pixel_ratio),u_units_to_pixels:new e.Uniform2f(t,o.u_units_to_pixels),u_dash_image:new e.Uniform1i(t,o.u_dash_image),u_gradient_image:new e.Uniform1i(t,o.u_gradient_image),u_image_height:new e.Uniform1f(t,o.u_image_height),u_texsize:new e.Uniform2f(t,o.u_texsize),u_scale:new e.Uniform3f(t,o.u_scale),u_mix:new e.Uniform1f(t,o.u_mix),u_alpha_discard_threshold:new e.Uniform1f(t,o.u_alpha_discard_threshold)}),linePattern:(t,o)=>({u_matrix:new e.UniformMatrix4f(t,o.u_matrix),u_texsize:new e.Uniform2f(t,o.u_texsize),u_pixels_to_tile_units:new e.UniformMatrix2f(t,o.u_pixels_to_tile_units),u_device_pixel_ratio:new e.Uniform1f(t,o.u_device_pixel_ratio),u_image:new e.Uniform1i(t,o.u_image),u_units_to_pixels:new e.Uniform2f(t,o.u_units_to_pixels),u_scale:new e.Uniform3f(t,o.u_scale),u_fade:new e.Uniform1f(t,o.u_fade),u_alpha_discard_threshold:new e.Uniform1f(t,o.u_alpha_discard_threshold)}),raster:(t,o)=>({u_matrix:new e.UniformMatrix4f(t,o.u_matrix),u_tl_parent:new e.Uniform2f(t,o.u_tl_parent),u_scale_parent:new e.Uniform1f(t,o.u_scale_parent),u_fade_t:new e.Uniform1f(t,o.u_fade_t),u_opacity:new e.Uniform1f(t,o.u_opacity),u_image0:new e.Uniform1i(t,o.u_image0),u_image1:new e.Uniform1i(t,o.u_image1),u_brightness_low:new e.Uniform1f(t,o.u_brightness_low),u_brightness_high:new e.Uniform1f(t,o.u_brightness_high),u_saturation_factor:new e.Uniform1f(t,o.u_saturation_factor),u_contrast_factor:new e.Uniform1f(t,o.u_contrast_factor),u_spin_weights:new e.Uniform3f(t,o.u_spin_weights),u_perspective_transform:new e.Uniform2f(t,o.u_perspective_transform)}),symbolIcon:(t,o)=>({u_is_size_zoom_constant:new e.Uniform1i(t,o.u_is_size_zoom_constant),u_is_size_feature_constant:new e.Uniform1i(t,o.u_is_size_feature_constant),u_size_t:new e.Uniform1f(t,o.u_size_t),u_size:new e.Uniform1f(t,o.u_size),u_camera_to_center_distance:new e.Uniform1f(t,o.u_camera_to_center_distance),u_pitch:new e.Uniform1f(t,o.u_pitch),u_rotate_symbol:new e.Uniform1i(t,o.u_rotate_symbol),u_aspect_ratio:new e.Uniform1f(t,o.u_aspect_ratio),u_fade_change:new e.Uniform1f(t,o.u_fade_change),u_matrix:new e.UniformMatrix4f(t,o.u_matrix),u_label_plane_matrix:new e.UniformMatrix4f(t,o.u_label_plane_matrix),u_coord_matrix:new e.UniformMatrix4f(t,o.u_coord_matrix),u_is_text:new e.Uniform1i(t,o.u_is_text),u_pitch_with_map:new e.Uniform1i(t,o.u_pitch_with_map),u_texsize:new e.Uniform2f(t,o.u_texsize),u_tile_id:new e.Uniform3f(t,o.u_tile_id),u_zoom_transition:new e.Uniform1f(t,o.u_zoom_transition),u_inv_rot_matrix:new e.UniformMatrix4f(t,o.u_inv_rot_matrix),u_merc_center:new e.Uniform2f(t,o.u_merc_center),u_texture:new e.Uniform1i(t,o.u_texture)}),symbolSDF:(t,o)=>({u_is_size_zoom_constant:new e.Uniform1i(t,o.u_is_size_zoom_constant),u_is_size_feature_constant:new e.Uniform1i(t,o.u_is_size_feature_constant),u_size_t:new e.Uniform1f(t,o.u_size_t),u_size:new e.Uniform1f(t,o.u_size),u_camera_to_center_distance:new e.Uniform1f(t,o.u_camera_to_center_distance),u_pitch:new e.Uniform1f(t,o.u_pitch),u_rotate_symbol:new e.Uniform1i(t,o.u_rotate_symbol),u_aspect_ratio:new e.Uniform1f(t,o.u_aspect_ratio),u_fade_change:new e.Uniform1f(t,o.u_fade_change),u_matrix:new e.UniformMatrix4f(t,o.u_matrix),u_label_plane_matrix:new e.UniformMatrix4f(t,o.u_label_plane_matrix),u_coord_matrix:new e.UniformMatrix4f(t,o.u_coord_matrix),u_is_text:new e.Uniform1i(t,o.u_is_text),u_pitch_with_map:new e.Uniform1i(t,o.u_pitch_with_map),u_texsize:new e.Uniform2f(t,o.u_texsize),u_texture:new e.Uniform1i(t,o.u_texture),u_gamma_scale:new e.Uniform1f(t,o.u_gamma_scale),u_device_pixel_ratio:new e.Uniform1f(t,o.u_device_pixel_ratio),u_tile_id:new e.Uniform3f(t,o.u_tile_id),u_zoom_transition:new e.Uniform1f(t,o.u_zoom_transition),u_inv_rot_matrix:new e.UniformMatrix4f(t,o.u_inv_rot_matrix),u_merc_center:new e.Uniform2f(t,o.u_merc_center),u_is_halo:new e.Uniform1i(t,o.u_is_halo)}),symbolTextAndIcon:(t,o)=>({u_is_size_zoom_constant:new e.Uniform1i(t,o.u_is_size_zoom_constant),u_is_size_feature_constant:new e.Uniform1i(t,o.u_is_size_feature_constant),u_size_t:new e.Uniform1f(t,o.u_size_t),u_size:new e.Uniform1f(t,o.u_size),u_camera_to_center_distance:new e.Uniform1f(t,o.u_camera_to_center_distance),u_pitch:new e.Uniform1f(t,o.u_pitch),u_rotate_symbol:new e.Uniform1i(t,o.u_rotate_symbol),u_aspect_ratio:new e.Uniform1f(t,o.u_aspect_ratio),u_fade_change:new e.Uniform1f(t,o.u_fade_change),u_matrix:new e.UniformMatrix4f(t,o.u_matrix),u_label_plane_matrix:new e.UniformMatrix4f(t,o.u_label_plane_matrix),u_coord_matrix:new e.UniformMatrix4f(t,o.u_coord_matrix),u_is_text:new e.Uniform1i(t,o.u_is_text),u_pitch_with_map:new e.Uniform1i(t,o.u_pitch_with_map),u_texsize:new e.Uniform2f(t,o.u_texsize),u_texsize_icon:new e.Uniform2f(t,o.u_texsize_icon),u_texture:new e.Uniform1i(t,o.u_texture),u_texture_icon:new e.Uniform1i(t,o.u_texture_icon),u_gamma_scale:new e.Uniform1f(t,o.u_gamma_scale),u_device_pixel_ratio:new e.Uniform1f(t,o.u_device_pixel_ratio),u_is_halo:new e.Uniform1i(t,o.u_is_halo)}),background:(t,o)=>({u_matrix:new e.UniformMatrix4f(t,o.u_matrix),u_opacity:new e.Uniform1f(t,o.u_opacity),u_color:new e.UniformColor(t,o.u_color)}),backgroundPattern:(t,o)=>({u_matrix:new e.UniformMatrix4f(t,o.u_matrix),u_opacity:new e.Uniform1f(t,o.u_opacity),u_image:new e.Uniform1i(t,o.u_image),u_pattern_tl_a:new e.Uniform2f(t,o.u_pattern_tl_a),u_pattern_br_a:new e.Uniform2f(t,o.u_pattern_br_a),u_pattern_tl_b:new e.Uniform2f(t,o.u_pattern_tl_b),u_pattern_br_b:new e.Uniform2f(t,o.u_pattern_br_b),u_texsize:new e.Uniform2f(t,o.u_texsize),u_mix:new e.Uniform1f(t,o.u_mix),u_pattern_size_a:new e.Uniform2f(t,o.u_pattern_size_a),u_pattern_size_b:new e.Uniform2f(t,o.u_pattern_size_b),u_scale_a:new e.Uniform1f(t,o.u_scale_a),u_scale_b:new e.Uniform1f(t,o.u_scale_b),u_pixel_coord_upper:new e.Uniform2f(t,o.u_pixel_coord_upper),u_pixel_coord_lower:new e.Uniform2f(t,o.u_pixel_coord_lower),u_tile_units_to_pixels:new e.Uniform1f(t,o.u_tile_units_to_pixels)}),terrainRaster:eo,terrainDepth:eo,skybox:(t,o)=>({u_matrix:new e.UniformMatrix4f(t,o.u_matrix),u_sun_direction:new e.Uniform3f(t,o.u_sun_direction),u_cubemap:new e.Uniform1i(t,o.u_cubemap),u_opacity:new e.Uniform1f(t,o.u_opacity),u_temporal_offset:new e.Uniform1f(t,o.u_temporal_offset)}),skyboxGradient:(t,o)=>({u_matrix:new e.UniformMatrix4f(t,o.u_matrix),u_color_ramp:new e.Uniform1i(t,o.u_color_ramp),u_center_direction:new e.Uniform3f(t,o.u_center_direction),u_radius:new e.Uniform1f(t,o.u_radius),u_opacity:new e.Uniform1f(t,o.u_opacity),u_temporal_offset:new e.Uniform1f(t,o.u_temporal_offset)}),skyboxCapture:(t,o)=>({u_matrix_3f:new e.UniformMatrix3f(t,o.u_matrix_3f),u_sun_direction:new e.Uniform3f(t,o.u_sun_direction),u_sun_intensity:new e.Uniform1f(t,o.u_sun_intensity),u_color_tint_r:new e.Uniform4f(t,o.u_color_tint_r),u_color_tint_m:new e.Uniform4f(t,o.u_color_tint_m),u_luminance:new e.Uniform1f(t,o.u_luminance)}),globeRaster:(t,o)=>({u_proj_matrix:new e.UniformMatrix4f(t,o.u_proj_matrix),u_globe_matrix:new e.UniformMatrix4f(t,o.u_globe_matrix),u_merc_matrix:new e.UniformMatrix4f(t,o.u_merc_matrix),u_zoom_transition:new e.Uniform1f(t,o.u_zoom_transition),u_merc_center:new e.Uniform2f(t,o.u_merc_center),u_image0:new e.Uniform1i(t,o.u_image0)}),globeAtmosphere:(t,o)=>({u_center:new e.Uniform2f(t,o.u_center),u_radius:new e.Uniform1f(t,o.u_radius),u_screen_size:new e.Uniform2f(t,o.u_screen_size),u_pixel_ratio:new e.Uniform1f(t,o.u_pixel_ratio),u_opacity:new e.Uniform1f(t,o.u_opacity),u_fadeout_range:new e.Uniform1f(t,o.u_fadeout_range),u_start_color:new e.Uniform3f(t,o.u_start_color),u_end_color:new e.Uniform3f(t,o.u_end_color)})};let Io;function Yo(t,o,i,n,r,a,s){const p=t.context,c=p.gl,l=t.useProgram("collisionBox"),b=[];let d=0,u=0;for(let M=0;M0){const o=e.create(),i=O;e.mul(o,h.placementInvProjMatrix,t.transform.glCoordMatrix),e.mul(o,o,h.placementViewportMatrix),b.push({circleArray:A,circleOffset:u,transform:i,invTransform:o}),d+=A.length/4,u=d}f&&(t.terrain&&t.terrain.setupElevationDraw(m,l),l.draw(p,c.LINES,e.DepthMode.disabled,e.StencilMode.disabled,t.colorModeForRenderPass(),e.CullFaceMode.disabled,vo(O,t.transform,m),i.id,f.layoutVertexBuffer,f.indexBuffer,f.segments,null,t.transform.zoom,null,f.collisionVertexBuffer,f.collisionVertexBufferExt))}if(!s||!b.length)return;const M=t.useProgram("collisionCircle"),z=new e.StructArrayLayout2f1f2i16;z.resize(4*d),z._trim();let m=0;for(const e of b)for(let t=0;t[0,0,0];M.clear();for(let p=0;p=0&&(m[d.associatedIconIndex]={shiftedAnchor:W,angle:w})}else rt(d.numGlyphs,M)}if(b){z.clear();const o=t.icon.placedSymbolArray;for(let t=0;t[0,0,0];Ke(c,p.projMatrix,t,r,P,Y,O,l,o,p)}const H=t.translatePosMatrix(p.projMatrix,n,a,s),U=f||r&&v||F?jo:P,V=t.translatePosMatrix(Y,n,a,s,!0),G=u&&0!==i.paint.get(r?"text-halo-width":"icon-halo-width").constantOr(1);let Z;const $=m.createInversionMatrix(p.toUnwrapped());Z=u?c.iconsInText?Do(q.kind,T,A,O,t,H,U,V,B,D,k,W,$,y):Eo(q.kind,T,A,O,t,H,U,V,r,B,!0,k,W,$,y):Xo(q.kind,T,A,O,t,H,U,V,r,B,k,W,$,y);const K={program:R,buffers:b,uniformValues:Z,atlasTexture:S,atlasTextureIcon:C,atlasInterpolation:X,atlasInterpolationIcon:E,isSDF:u,hasHalo:G,tile:n,labelPlaneMatrixInv:I};if(_&&c.canOverlap){g=!0;const t=b.segments.get();for(const o of t)w.push({segments:new e.SegmentVector([o]),sortKey:o.sortKey,state:K})}else w.push({segments:b.segments,sortKey:0,state:K})}g&&w.sort(((e,t)=>e.sortKey-t.sortKey));for(const e of w){const o=e.state;if(t.terrain&&t.terrain.setupElevationDraw(o.tile,o.program,{useDepthForOcclusion:!x,labelPlaneMatrixInv:o.labelPlaneMatrixInv}),u.activeTexture.set(M.TEXTURE0),o.atlasTexture.bind(o.atlasInterpolation,M.CLAMP_TO_EDGE),o.atlasTextureIcon&&(u.activeTexture.set(M.TEXTURE1),o.atlasTextureIcon&&o.atlasTextureIcon.bind(o.atlasInterpolationIcon,M.CLAMP_TO_EDGE)),o.isSDF){const n=o.uniformValues;o.hasHalo&&(n.u_is_halo=1,Go(o.buffers,e.segments,i,t,o.program,q,b,d,n)),n.u_is_halo=0}Go(o.buffers,e.segments,i,t,o.program,q,b,d,o.uniformValues)}}function Go(t,o,i,n,r,a,s,p,c){const l=n.context;r.draw(l,l.gl.TRIANGLES,a,s,p,e.CullFaceMode.disabled,c,i.id,t.layoutVertexBuffer,t.indexBuffer,o,i.paint,n.transform.zoom,t.programConfigurations.get(i.id),t.dynamicLayoutVertexBuffer,t.opacityVertexBuffer)}function Zo(t,o,i,n,r,a,s){const p=t.context.gl,c=i.paint.get("fill-pattern"),l=c&&c.constantOr(1),b=i.getCrossfadeParameters();let d,u,M,z,m;s?(u=l&&!i.getPaintProperty("fill-outline-color")?"fillOutlinePattern":"fillOutline",d=p.LINES):(u=l?"fillPattern":"fill",d=p.TRIANGLES);for(const h of n){const n=o.getTile(h);if(l&&!n.patternsLoaded())continue;const O=n.getBucket(i);if(!O)continue;t.prepareDrawTile(h);const f=O.programConfigurations.get(i.id),A=t.useProgram(u,f);l&&(t.context.activeTexture.set(p.TEXTURE0),n.imageAtlasTexture.bind(p.LINEAR,p.CLAMP_TO_EDGE),f.updatePaintBuffers(b));const _=c.constantOr(null);if(_&&n.imageAtlas){const e=n.imageAtlas,t=e.patternPositions[_.to.toString()],o=e.patternPositions[_.from.toString()];t&&o&&f.setConstantPatternPositions(t,o)}const g=t.translatePosMatrix(h.projMatrix,n,i.paint.get("fill-translate"),i.paint.get("fill-translate-anchor"));if(s){z=O.indexBuffer2,m=O.segments2;const e=t.terrain&&t.terrain.renderingToTexture?t.terrain.drapeBufferSize:[p.drawingBufferWidth,p.drawingBufferHeight];M="fillOutlinePattern"===u&&l?go(g,t,b,n,e):_o(g,e)}else z=O.indexBuffer,m=O.segments,M=l?Ao(g,t,b,n):fo(g);t.prepareDrawProgram(t.context,A,h.toUnwrapped()),A.draw(t.context,d,r,t.stencilModeForClipping(h),a,e.CullFaceMode.disabled,M,i.id,O.layoutVertexBuffer,z,m,i.paint,t.transform.zoom,f)}}function $o(t,o,i,n,r,a,s){const p=t.context,c=p.gl,l=i.paint.get("fill-extrusion-pattern"),b=l.constantOr(1),d=i.getCrossfadeParameters(),u=i.paint.get("fill-extrusion-opacity");for(const M of n){const n=o.getTile(M),z=n.getBucket(i);if(!z)continue;const m=z.programConfigurations.get(i.id),h=t.useProgram(b?"fillExtrusionPattern":"fillExtrusion",m);if(t.terrain){const e=t.terrain;if(!z.enableTerrain)continue;if(e.setupElevationDraw(n,h,{useMeterToDem:!0}),Ko(p,o,M,z,i,e),!z.centroidVertexBuffer){const e=h.attributes.a_centroid_pos;void 0!==e&&c.vertexAttrib2f(e,0,0)}}b&&(t.context.activeTexture.set(c.TEXTURE0),n.imageAtlasTexture.bind(c.LINEAR,c.CLAMP_TO_EDGE),m.updatePaintBuffers(d));const O=l.constantOr(null);if(O&&n.imageAtlas){const e=n.imageAtlas,t=e.patternPositions[O.to.toString()],o=e.patternPositions[O.from.toString()];t&&o&&m.setConstantPatternPositions(t,o)}const f=t.translatePosMatrix(M.projMatrix,n,i.paint.get("fill-extrusion-translate"),i.paint.get("fill-extrusion-translate-anchor")),A=i.paint.get("fill-extrusion-vertical-gradient"),_=b?Oo(f,t,A,u,M,d,n):ho(f,t,A,u);t.prepareDrawProgram(p,h,M.toUnwrapped()),h.draw(p,p.gl.TRIANGLES,r,a,s,e.CullFaceMode.backCCW,_,i.id,z.layoutVertexBuffer,z.indexBuffer,z.segments,i.paint,t.transform.zoom,m,t.terrain?z.centroidVertexBuffer:null)}}function Ko(t,o,i,n,r,a){const s=[t=>{let o=t.canonical.x-1,i=t.wrap;return o<0&&(o=(1<{let o=t.canonical.x+1,i=t.wrap;return o===1<new e.OverscaledTileID(t.overscaledZ,t.wrap,t.canonical.z,t.canonical.x,(0===t.canonical.y?1<new e.OverscaledTileID(t.overscaledZ,t.wrap,t.canonical.z,t.canonical.x,t.canonical.y===(1<{const t=o.getSource().maxzoom,i=e=>{const t=o.getTileByID(e);if(t&&t.hasData())return t.getBucket(r)};let n,a,s;return(e.overscaledZ===e.canonical.z||e.overscaledZ>=t)&&(n=i(e.key)),e.overscaledZ>=t&&(a=i(e.calculateScaledKey(e.overscaledZ+1))),e.overscaledZ>t&&(s=i(e.calculateScaledKey(e.overscaledZ-1))),n||a||s},c=[0,0,0],l=(t,o)=>(c[0]=Math.min(t.min.y,o.min.y),c[1]=Math.max(t.max.y,o.max.y),c[2]=e.EXTENT-o.min.x>t.max.x?o.min.x-e.EXTENT:t.max.x,c),b=(t,o)=>(c[0]=Math.min(t.min.x,o.min.x),c[1]=Math.max(t.max.x,o.max.x),c[2]=e.EXTENT-o.min.y>t.max.y?o.min.y-e.EXTENT:t.max.y,c),d=[(e,t)=>l(e,t),(e,t)=>l(t,e),(e,t)=>b(e,t),(e,t)=>b(t,e)],u=new e.pointGeometry(0,0);let M,z,m;const h=(t,o,n,r,s)=>{const p=[[r?n:t,r?t:n,0],[r?n:o,r?o:n,0]],c=s<0?e.EXTENT+s:s,l=[r?c:(t+o)/2,r?(t+o)/2:c,0];return 0===n&&s<0||0!==n&&s>0?a.getForTilePoints(m,[l],!0,z):p.push(l),a.getForTilePoints(i,p,!0,M),Math.max(p[0][2],p[1][2],l[2])/a.exaggeration()};for(let t=0;t<4;t++){const o=n.borders[t];if(0===o.length&&(n.borderDone[t]=!0),n.borderDone[t])continue;const r=m=s[t](i),c=p(r);if(!c||!c.enableTerrain)continue;if(z=a.findDEMTileFor(r),!z||!z.dem)continue;if(!M){const e=a.findDEMTileFor(i);if(!e||!e.dem)return;M=e}const l=(t<2?1:5)-t,b=c.borders[l];let O=0;for(let i=0;ia[0]+3));)c.borderDone[l]||c.encodeCentroid(void 0,s,!1),O++;if(s&&Oa[1]-3)&&(i++,++O!==b.length);)s=c.featuresOnBorder[b[O]];if(s=c.featuresOnBorder[b[o]],r.intersectsCount()>1||s.intersectsCount()>1||1!==i){1!==i&&(O=o),n.encodeCentroid(void 0,r,!1),c.borderDone[l]||c.encodeCentroid(void 0,s,!1);continue}const p=d[t](r,s),M=t%2?e.EXTENT-1:0;u.x=h(p[0],Math.min(e.EXTENT-1,p[1]),M,t<2,p[2]),u.y=0,n.encodeCentroid(u,r,!1),c.borderDone[l]||c.encodeCentroid(u,s,!1)}else n.encodeCentroid(void 0,r,!1)}n.borderDone[t]=n.needsCentroidUpdate=!0,c.borderDone[l]||(c.borderDone[l]=c.needsCentroidUpdate=!0)}(n.needsCentroidUpdate||!n.centroidVertexBuffer&&0!==n.centroidVertexArray.length)&&n.uploadCentroid(t)}const Jo=new e.Color(1,0,0,1),Qo=new e.Color(0,1,0,1),ei=new e.Color(0,0,1,1),ti=new e.Color(1,0,1,1),oi=new e.Color(0,1,1,1);function ii(e,t,o,i){ri(e,0,t+o/2,e.transform.width,o,i)}function ni(e,t,o,i){ri(e,t-o/2,0,o,e.transform.height,i)}function ri(t,o,i,n,r,a){const s=t.context,p=s.gl;p.enable(p.SCISSOR_TEST),p.scissor(o*e.exported.devicePixelRatio,i*e.exported.devicePixelRatio,n*e.exported.devicePixelRatio,r*e.exported.devicePixelRatio),s.clear({color:a}),p.disable(p.SCISSOR_TEST)}function ai(t,o,i){const n=t.context,r=n.gl,a=i.projMatrix,s=t.useProgram("debug"),p=o.getTileByID(i.key);t.terrain&&t.terrain.setupElevationDraw(p,s);const c=e.DepthMode.disabled,l=e.StencilMode.disabled,b=t.colorModeForRenderPass(),d="$debug";n.activeTexture.set(r.TEXTURE0),t.emptyTexture.bind(r.LINEAR,r.CLAMP_TO_EDGE),p._makeDebugTileBoundsBuffers(t.context,t.transform.projection);const u=p._tileDebugBuffer||t.debugBuffer,M=p._tileDebugIndexBuffer||t.debugIndexBuffer,z=p._tileDebugSegments||t.debugSegments;s.draw(n,r.LINE_STRIP,c,l,b,e.CullFaceMode.disabled,xo(a,e.Color.red),d,u,M,z);const m=p.latestRawTileData,h=Math.floor((m&&m.byteLength||0)/1024),O=o.getTile(i).tileSize,f=512/Math.min(O,512)*(i.overscaledZ/t.transform.zoom)*.5;let A=i.canonical.toString();i.overscaledZ!==i.canonical.z&&(A+=` => ${i.overscaledZ}`),function(e,t){e.initDebugOverlayCanvas();const o=e.debugOverlayCanvas,i=e.context.gl,n=e.debugOverlayCanvas.getContext("2d");n.clearRect(0,0,o.width,o.height),n.shadowColor="white",n.shadowBlur=2,n.lineWidth=1.5,n.strokeStyle="white",n.textBaseline="top",n.font="bold 36px Open Sans, sans-serif",n.fillText(t,5,5),n.strokeText(t,5,5),e.debugOverlayTexture.update(o),e.debugOverlayTexture.bind(i.LINEAR,i.CLAMP_TO_EDGE)}(t,`${A} ${h}kb`),s.draw(n,r.TRIANGLES,c,l,e.ColorMode.alphaBlended,e.CullFaceMode.disabled,xo(a,e.Color.transparent,f),d,t.debugBuffer,t.quadTriangleIndexBuffer,t.debugSegments)}const si=e.createLayout([{name:"a_pos_3f",components:3,type:"Float32"}]),{members:pi}=si;function ci(e,t,o,i){e.emplaceBack(t,o,i)}class li{constructor(t){this.vertexArray=new e.StructArrayLayout3f12,this.indices=new e.StructArrayLayout3ui6,ci(this.vertexArray,-1,-1,1),ci(this.vertexArray,1,-1,1),ci(this.vertexArray,-1,1,1),ci(this.vertexArray,1,1,1),ci(this.vertexArray,-1,-1,-1),ci(this.vertexArray,1,-1,-1),ci(this.vertexArray,-1,1,-1),ci(this.vertexArray,1,1,-1),this.indices.emplaceBack(5,1,3),this.indices.emplaceBack(3,7,5),this.indices.emplaceBack(6,2,0),this.indices.emplaceBack(0,4,6),this.indices.emplaceBack(2,6,7),this.indices.emplaceBack(7,3,2),this.indices.emplaceBack(5,4,0),this.indices.emplaceBack(0,1,5),this.indices.emplaceBack(0,2,3),this.indices.emplaceBack(3,1,0),this.indices.emplaceBack(7,6,4),this.indices.emplaceBack(4,5,7),this.vertexBuffer=t.createVertexBuffer(this.vertexArray,pi),this.indexBuffer=t.createIndexBuffer(this.indices),this.segment=e.SegmentVector.simpleSegment(0,0,36,12)}}function bi(t,o,i,n,r,a){const s=t.gl,p=o.paint.get("sky-atmosphere-color"),c=o.paint.get("sky-atmosphere-halo-color"),l=o.paint.get("sky-atmosphere-sun-intensity"),b=((e,t,o,i,n)=>({u_matrix_3f:e,u_sun_direction:t,u_sun_intensity:o,u_color_tint_r:[i.r,i.g,i.b,i.a],u_color_tint_m:[n.r,n.g,n.b,n.a],u_luminance:5e-5}))(e.fromMat4([],n),r,l,p,c);s.framebufferTexture2D(s.FRAMEBUFFER,s.COLOR_ATTACHMENT0,s.TEXTURE_CUBE_MAP_POSITIVE_X+a,o.skyboxTexture,0),i.draw(t,s.TRIANGLES,e.DepthMode.disabled,e.StencilMode.disabled,e.ColorMode.unblended,e.CullFaceMode.frontCW,b,"skyboxCapture",o.skyboxGeometry.vertexBuffer,o.skyboxGeometry.indexBuffer,o.skyboxGeometry.segment)}const di={symbol:function(t,o,i,n,r){if("translucent"!==t.renderPass)return;const a=e.StencilMode.disabled,s=t.colorModeForRenderPass();i.layout.get("text-variable-anchor")&&function(t,o,i,n,r,a,s){const p=o.transform,c="map"===r,l="map"===a,b=p.projection.createTileTransform(p,p.worldSize);for(const r of t){const t=n.getTile(r),a=t.getBucket(i);if(!a||a.projection!==p.projection.name||!a.text||!a.text.segments.get().length)continue;const d=e.evaluateSizeForZoom(a.textSizeData,p.zoom),u=o.transform.calculatePixelsToTileUnitsMatrix(t),M=Ue(r.projMatrix,t.tileID.canonical,l,c,o.transform,u),z="none"!==i.layout.get("icon-text-fit")&&a.hasIconData();if(d){const o=Math.pow(2,p.zoom-t.tileID.overscaledZ);Ho(a,c,l,s,e.symbolSize,p,M,r,o,d,z,b)}}}(n,t,i,o,i.layout.get("text-rotation-alignment"),i.layout.get("text-pitch-alignment"),r),0!==i.paint.get("icon-opacity").constantOr(1)&&Vo(t,o,i,n,!1,i.paint.get("icon-translate"),i.paint.get("icon-translate-anchor"),i.layout.get("icon-rotation-alignment"),i.layout.get("icon-pitch-alignment"),i.layout.get("icon-keep-upright"),a,s),0!==i.paint.get("text-opacity").constantOr(1)&&Vo(t,o,i,n,!0,i.paint.get("text-translate"),i.paint.get("text-translate-anchor"),i.layout.get("text-rotation-alignment"),i.layout.get("text-pitch-alignment"),i.layout.get("text-keep-upright"),a,s),o.map.showCollisionBoxes&&(Yo(t,o,i,n,i.paint.get("text-translate"),i.paint.get("text-translate-anchor"),!0),Yo(t,o,i,n,i.paint.get("icon-translate"),i.paint.get("icon-translate-anchor"),!1))},circle:function(t,o,i,n){if("translucent"!==t.renderPass)return;const r=i.paint.get("circle-opacity"),a=i.paint.get("circle-stroke-width"),s=i.paint.get("circle-stroke-opacity"),p=void 0!==i.layout.get("circle-sort-key").constantOr(1);if(0===r.constantOr(1)&&(0===a.constantOr(1)||0===s.constantOr(1)))return;const c=t.context,l=c.gl,b=t.depthModeForSublayer(0,e.DepthMode.ReadOnly),d=e.StencilMode.disabled,u=t.colorModeForRenderPass(),M=[];for(let r=0;re.sortKey-t.sortKey));const z={useDepthForOcclusion:!("globe"===t.transform.projection.name)};for(const o of M){const{programConfiguration:n,program:r,layoutVertexBuffer:a,indexBuffer:s,uniformValues:p,tile:M}=o.state,m=o.segments;t.terrain&&t.terrain.setupElevationDraw(M,r,z),t.prepareDrawProgram(c,r,M.tileID.toUnwrapped()),r.draw(c,l.TRIANGLES,b,d,u,e.CullFaceMode.disabled,p,i.id,a,s,m,i.paint,t.transform.zoom,n)}},heatmap:function(t,o,i,n){if(0!==i.paint.get("heatmap-opacity"))if("offscreen"===t.renderPass){const r=t.context,a=r.gl,s=e.StencilMode.disabled,p=new e.ColorMode([a.ONE,a.ONE],e.Color.transparent,[!0,!0,!0,!0]);!function(e,t,o){const i=e.gl;e.activeTexture.set(i.TEXTURE1),e.viewport.set([0,0,t.width/4,t.height/4]);let n=o.heatmapFbo;if(n)i.bindTexture(i.TEXTURE_2D,n.colorAttachment.get()),e.bindFramebuffer.set(n.framebuffer);else{const r=i.createTexture();i.bindTexture(i.TEXTURE_2D,r),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_WRAP_S,i.CLAMP_TO_EDGE),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_WRAP_T,i.CLAMP_TO_EDGE),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_MIN_FILTER,i.LINEAR),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_MAG_FILTER,i.LINEAR),n=o.heatmapFbo=e.createFramebuffer(t.width/4,t.height/4,!1),function(e,t,o,i){const n=e.gl;n.texImage2D(n.TEXTURE_2D,0,n.RGBA,t.width/4,t.height/4,0,n.RGBA,e.extRenderToTextureHalfFloat?e.extTextureHalfFloat.HALF_FLOAT_OES:n.UNSIGNED_BYTE,null),i.colorAttachment.set(o)}(e,t,r,n)}}(r,t,i),r.clear({color:e.Color.transparent});for(let c=0;c({u_image:0,u_color_ramp:1,u_opacity:t.paint.get("heatmap-opacity")}))(0,o),o.id,t.viewportBuffer,t.quadTriangleIndexBuffer,t.viewportSegments,o.paint,t.transform.zoom)}(t,i))},line:function(t,o,i,n){if("translucent"!==t.renderPass)return;const r=i.paint.get("line-opacity"),a=i.paint.get("line-width");if(0===r.constantOr(1)||0===a.constantOr(1))return;const s=t.depthModeForSublayer(0,e.DepthMode.ReadOnly),p=t.colorModeForRenderPass(),c=i.paint.get("line-dasharray"),l=c.constantOr(1),b=i.layout.get("line-cap"),d=i.paint.get("line-pattern"),u=d.constantOr(1),M=i.paint.get("line-gradient"),z=i.getCrossfadeParameters(),m=u?"linePattern":"line",h=t.context,O=h.gl,f=(e=>{const t=[];ko(e)&&t.push("RENDER_LINE_DASH"),e.paint.get("line-gradient")&&t.push("RENDER_LINE_GRADIENT");const o=e.paint.get("line-pattern").constantOr(1),i=1!==e.paint.get("line-opacity").constantOr(1);return!o&&i&&t.push("RENDER_LINE_ALPHA_DISCARD"),t})(i);let A=f.includes("RENDER_LINE_ALPHA_DISCARD");t.terrain&&t.terrain.clipOrMaskOverlapStencilType()&&(A=!1);for(const r of n){const n=o.getTile(r);if(u&&!n.patternsLoaded())continue;const a=n.getBucket(i);if(!a)continue;t.prepareDrawTile(r);const _=a.programConfigurations.get(i.id),g=t.useProgram(m,_,f),q=d.constantOr(null);if(q&&n.imageAtlas){const e=n.imageAtlas,t=e.patternPositions[q.to.toString()],o=e.patternPositions[q.from.toString()];t&&o&&_.setConstantPatternPositions(t,o)}const y=c.constantOr(null),v=b.constantOr(null);if(!u&&y&&v&&n.lineAtlas){const e=n.lineAtlas,t=e.getDash(y.to,v),o=e.getDash(y.from,v);t&&o&&_.setConstantPatternPositions(t,o)}const x=t.terrain?r.projMatrix:null,W=u?Lo(t,n,i,z,x):wo(t,n,i,z,x,a.lineClipsArray.length);if(M){const n=a.gradients[i.id];let s=n.texture;if(i.gradientVersion!==n.version){let p=256;if(i.stepInterpolant){const i=o.getSource().maxzoom,n=r.canonical.z===i?Math.ceil(1<{g.draw(h,O.TRIANGLES,s,o,p,e.CullFaceMode.disabled,W,i.id,a.layoutVertexBuffer,a.indexBuffer,a.segments,i.paint,t.transform.zoom,_,a.layoutVertexBuffer2)};if(A){const o=t.stencilModeForClipping(r).ref;0===o&&t.terrain&&h.clear({stencil:0});const i={func:O.EQUAL,mask:255};W.u_alpha_discard_threshold=.8,w(new e.StencilMode(i,o,255,O.KEEP,O.KEEP,O.INVERT)),W.u_alpha_discard_threshold=0,w(new e.StencilMode(i,o,255,O.KEEP,O.KEEP,O.KEEP))}else w(t.stencilModeForClipping(r))}A&&(t.resetStencilClippingMasks(),t.terrain&&h.clear({stencil:0}))},fill:function(t,o,i,n){const r=i.paint.get("fill-color"),a=i.paint.get("fill-opacity");if(0===a.constantOr(1))return;const s=t.colorModeForRenderPass(),p=i.paint.get("fill-pattern"),c=t.opaquePassEnabledForLayer()&&!p.constantOr(1)&&1===r.constantOr(e.Color.transparent).a&&1===a.constantOr(0)?"opaque":"translucent";if(t.renderPass===c){const r=t.depthModeForSublayer(1,"opaque"===t.renderPass?e.DepthMode.ReadWrite:e.DepthMode.ReadOnly);Zo(t,o,i,n,r,s,!1)}if("translucent"===t.renderPass&&i.paint.get("fill-antialias")){const r=t.depthModeForSublayer(i.getPaintProperty("fill-outline-color")?2:0,e.DepthMode.ReadOnly);Zo(t,o,i,n,r,s,!0)}},"fill-extrusion":function(t,o,i,n){const r=i.paint.get("fill-extrusion-opacity");if(0!==r&&"translucent"===t.renderPass){const a=new e.DepthMode(t.context.gl.LEQUAL,e.DepthMode.ReadWrite,t.depthRangeFor3D);if(1!==r||i.paint.get("fill-extrusion-pattern").constantOr(1))$o(t,o,i,n,a,e.StencilMode.disabled,e.ColorMode.disabled),$o(t,o,i,n,a,t.stencilModeFor3D(),t.colorModeForRenderPass()),t.resetStencilClippingMasks();else{const r=t.colorModeForRenderPass();$o(t,o,i,n,a,e.StencilMode.disabled,r)}}},hillshade:function(t,o,i,n){if("offscreen"!==t.renderPass&&"translucent"!==t.renderPass)return;const r=t.context,a=t.depthModeForSublayer(0,e.DepthMode.ReadOnly),s=t.colorModeForRenderPass(),p=t.terrain&&t.terrain.renderingToTexture,[c,l]="translucent"!==t.renderPass||p?[{},n]:t.stencilConfigForOverlap(n);for(const n of l){const r=o.getTile(n);if(r.needsHillshadePrepare&&"offscreen"===t.renderPass)Qt(t,r,i,a,e.StencilMode.disabled,s);else if("translucent"===t.renderPass){const e=p&&t.terrain?t.terrain.stencilModeForRTTOverlap(n):c[n.overscaledZ];Kt(t,n,r,i,a,e,s)}}r.viewport.set([0,0,t.width,t.height]),t.resetStencilClippingMasks()},raster:function(t,o,i,n,r,a){if("translucent"!==t.renderPass)return;if(0===i.paint.get("raster-opacity"))return;if(!n.length)return;const s=t.context,p=s.gl,c=o.getSource(),l=t.useProgram("raster"),b=t.colorModeForRenderPass(),d=t.terrain&&t.terrain.renderingToTexture,[u,M]=c instanceof _e||d?[{},n]:t.stencilConfigForOverlap(n),z=M[M.length-1].overscaledZ,m=!t.options.moving;for(const n of M){const r=d?e.DepthMode.disabled:t.depthModeForSublayer(n.overscaledZ-z,1===i.paint.get("raster-opacity")?e.DepthMode.ReadWrite:e.DepthMode.ReadOnly,p.LESS),M=n.toUnwrapped(),h=o.getTile(n);if(d&&(!h||!h.hasData()))continue;const O=d?n.projMatrix:t.transform.calculateProjMatrix(M,m),f=t.terrain&&d?t.terrain.stencilModeForRTTOverlap(n):u[n.overscaledZ],A=a?0:i.paint.get("raster-fade-duration");h.registerFadeDuration(A);const _=o.findLoadedParent(n,0),g=po(h,_,o,t.transform,A);let q,y;t.terrain&&t.terrain.prepareDrawTile(n);const v="nearest"===i.paint.get("raster-resampling")?p.NEAREST:p.LINEAR;s.activeTexture.set(p.TEXTURE0),h.texture.bind(v,p.CLAMP_TO_EDGE),s.activeTexture.set(p.TEXTURE1),_?(_.texture.bind(v,p.CLAMP_TO_EDGE),q=Math.pow(2,_.tileID.overscaledZ-h.tileID.overscaledZ),y=[h.tileID.canonical.x*q%1,h.tileID.canonical.y*q%1]):h.texture.bind(v,p.CLAMP_TO_EDGE);const x=Bo(O,y||[0,0],q||1,g,i,c instanceof _e?c.perspectiveTransform:[0,0]);if(t.prepareDrawProgram(s,l,M),c instanceof _e)l.draw(s,p.TRIANGLES,r,e.StencilMode.disabled,b,e.CullFaceMode.disabled,x,i.id,c.boundsBuffer,t.quadTriangleIndexBuffer,c.boundsSegments);else{const{tileBoundsBuffer:o,tileBoundsIndexBuffer:n,tileBoundsSegments:a}=t.getTileBoundsBuffers(h);l.draw(s,p.TRIANGLES,r,f,b,e.CullFaceMode.disabled,x,i.id,o,n,a)}}t.resetStencilClippingMasks()},background:function(t,o,i,n){const r=i.paint.get("background-color"),a=i.paint.get("background-opacity");if(0===a)return;const s=t.context,p=s.gl,c=t.transform,l=c.tileSize,b=i.paint.get("background-pattern");if(t.isPatternMissing(b))return;const d=!b&&1===r.a&&1===a&&t.opaquePassEnabledForLayer()?"opaque":"translucent";if(t.renderPass!==d)return;const u=e.StencilMode.disabled,M=t.depthModeForSublayer(0,"opaque"===d?e.DepthMode.ReadWrite:e.DepthMode.ReadOnly),z=t.colorModeForRenderPass(),m=t.useProgram(b?"backgroundPattern":"background");let h,O=n;O||(h=t.getBackgroundTiles(),O=Object.values(h).map((e=>e.tileID))),b&&(s.activeTexture.set(p.TEXTURE0),t.imageManager.bind(t.context));const f=i.getCrossfadeParameters();for(const d of O){const O=d.toUnwrapped(),A=n?d.projMatrix:t.transform.calculateProjMatrix(O);t.prepareDrawTile(d);const _=o?o.getTile(d):h?h[d.key]:new e.Tile(d,l,c.zoom,t),g=b?No(A,a,t,b,{tileID:d,tileSize:l},f):Co(A,a,r);t.prepareDrawProgram(s,m,O);const{tileBoundsBuffer:q,tileBoundsIndexBuffer:y,tileBoundsSegments:v}=t.getTileBoundsBuffers(_);m.draw(s,p.TRIANGLES,M,u,z,e.CullFaceMode.disabled,g,i.id,q,y,v)}},sky:function(t,o,i){const n=t.transform,r="mercator"===n.projection.name||"globe"===n.projection.name?1:e.smoothstep(7,8,n.zoom),a=i.paint.get("sky-opacity")*r;if(0===a)return;const s=t.context,p=i.paint.get("sky-type"),c=new e.DepthMode(s.gl.LEQUAL,e.DepthMode.ReadOnly,[0,1]),l=t.frameCounter/1e3%1;"atmosphere"===p?"offscreen"===t.renderPass?i.needsSkyboxCapture(t)&&(function(t,o,i,n){const r=t.context,a=r.gl;let s=o.skyboxFbo;if(!s){s=o.skyboxFbo=r.createFramebuffer(32,32,!1),o.skyboxGeometry=new li(r),o.skyboxTexture=r.gl.createTexture(),a.bindTexture(a.TEXTURE_CUBE_MAP,o.skyboxTexture),a.texParameteri(a.TEXTURE_CUBE_MAP,a.TEXTURE_WRAP_S,a.CLAMP_TO_EDGE),a.texParameteri(a.TEXTURE_CUBE_MAP,a.TEXTURE_WRAP_T,a.CLAMP_TO_EDGE),a.texParameteri(a.TEXTURE_CUBE_MAP,a.TEXTURE_MIN_FILTER,a.LINEAR),a.texParameteri(a.TEXTURE_CUBE_MAP,a.TEXTURE_MAG_FILTER,a.LINEAR);for(let e=0;e<6;++e)a.texImage2D(a.TEXTURE_CUBE_MAP_POSITIVE_X+e,0,a.RGBA,32,32,0,a.RGBA,a.UNSIGNED_BYTE,null)}r.bindFramebuffer.set(s.framebuffer),r.viewport.set([0,0,32,32]);const p=o.getCenter(t,!0),c=t.useProgram("skyboxCapture"),l=new Float64Array(16);e.identity(l),e.rotateY(l,l,.5*-Math.PI),bi(r,o,c,l,p,0),e.identity(l),e.rotateY(l,l,.5*Math.PI),bi(r,o,c,l,p,1),e.identity(l),e.rotateX(l,l,.5*-Math.PI),bi(r,o,c,l,p,2),e.identity(l),e.rotateX(l,l,.5*Math.PI),bi(r,o,c,l,p,3),e.identity(l),bi(r,o,c,l,p,4),e.identity(l),e.rotateY(l,l,Math.PI),bi(r,o,c,l,p,5),r.viewport.set([0,0,t.width,t.height])}(t,i),i.markSkyboxValid(t)):"sky"===t.renderPass&&function(t,o,i,n,r){const a=t.context,s=a.gl,p=t.transform,c=t.useProgram("skybox");a.activeTexture.set(s.TEXTURE0),s.bindTexture(s.TEXTURE_CUBE_MAP,o.skyboxTexture);const l=((e,t,o,i,n)=>({u_matrix:e,u_sun_direction:t,u_cubemap:0,u_opacity:i,u_temporal_offset:n}))(p.skyboxMatrix,o.getCenter(t,!1),0,n,r);t.prepareDrawProgram(a,c),c.draw(a,s.TRIANGLES,i,e.StencilMode.disabled,t.colorModeForRenderPass(),e.CullFaceMode.backCW,l,"skybox",o.skyboxGeometry.vertexBuffer,o.skyboxGeometry.indexBuffer,o.skyboxGeometry.segment)}(t,i,c,a,l):"gradient"===p&&"sky"===t.renderPass&&function(t,o,i,n,r){const a=t.context,s=a.gl,p=t.transform,c=t.useProgram("skyboxGradient");o.skyboxGeometry||(o.skyboxGeometry=new li(a)),a.activeTexture.set(s.TEXTURE0);let l=o.colorRampTexture;l||(l=o.colorRampTexture=new e.Texture(a,o.colorRamp,s.RGBA)),l.bind(s.LINEAR,s.CLAMP_TO_EDGE);const b=((t,o,i,n,r)=>({u_matrix:t,u_color_ramp:0,u_center_direction:o,u_radius:e.degToRad(i),u_opacity:n,u_temporal_offset:r}))(p.skyboxMatrix,o.getCenter(t,!1),o.paint.get("sky-gradient-radius"),n,r);t.prepareDrawProgram(a,c),c.draw(a,s.TRIANGLES,i,e.StencilMode.disabled,t.colorModeForRenderPass(),e.CullFaceMode.backCW,b,"skyboxGradient",o.skyboxGeometry.vertexBuffer,o.skyboxGeometry.indexBuffer,o.skyboxGeometry.segment)}(t,i,c,a,l)},debug:function(e,t,o){for(let i=0;ii)return void(this.transform.fogCullDistSq=null);const n=o+.78*(i-o);this.transform.fogCullDistSq=n*n}get terrain(){return this.transform._terrainEnabled()&&this._terrain&&this._terrain.enabled?this._terrain:null}resize(t,o){if(this.width=t*e.exported.devicePixelRatio,this.height=o*e.exported.devicePixelRatio,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(const e of this.style.order)this.style._layers[e].resize()}setup(){const t=this.context,o=new e.StructArrayLayout2i4;o.emplaceBack(0,0),o.emplaceBack(e.EXTENT,0),o.emplaceBack(0,e.EXTENT),o.emplaceBack(e.EXTENT,e.EXTENT),this.tileExtentBuffer=t.createVertexBuffer(o,e.posAttributes.members),this.tileExtentSegments=e.SegmentVector.simpleSegment(0,0,4,2);const i=new e.StructArrayLayout2i4;i.emplaceBack(0,0),i.emplaceBack(e.EXTENT,0),i.emplaceBack(0,e.EXTENT),i.emplaceBack(e.EXTENT,e.EXTENT),this.debugBuffer=t.createVertexBuffer(i,e.posAttributes.members),this.debugSegments=e.SegmentVector.simpleSegment(0,0,4,5);const n=new e.StructArrayLayout2i4;n.emplaceBack(-1,-1),n.emplaceBack(1,-1),n.emplaceBack(-1,1),n.emplaceBack(1,1),this.viewportBuffer=t.createVertexBuffer(n,e.posAttributes.members),this.viewportSegments=e.SegmentVector.simpleSegment(0,0,4,2);const r=new e.StructArrayLayout4i8;r.emplaceBack(0,0,0,0),r.emplaceBack(e.EXTENT,0,e.EXTENT,0),r.emplaceBack(0,e.EXTENT,0,e.EXTENT),r.emplaceBack(e.EXTENT,e.EXTENT,e.EXTENT,e.EXTENT),this.mercatorBoundsBuffer=t.createVertexBuffer(r,e.boundsAttributes.members),this.mercatorBoundsSegments=e.SegmentVector.simpleSegment(0,0,4,2);const a=new e.StructArrayLayout3ui6;a.emplaceBack(0,1,2),a.emplaceBack(2,1,3),this.quadTriangleIndexBuffer=t.createIndexBuffer(a);const s=new e.StructArrayLayout1ui2;for(const e of[0,1,3,2,0])s.emplaceBack(e);this.debugIndexBuffer=t.createIndexBuffer(s),this.emptyTexture=new e.Texture(t,{width:1,height:1,data:new Uint8Array([0,0,0,0])},t.gl.RGBA),this.identityMat=e.create();const p=this.context.gl;this.stencilClearMode=new e.StencilMode({func:p.ALWAYS,mask:0},0,255,p.ZERO,p.ZERO,p.ZERO),this.loadTimeStamps.push(e.window.performance.now())}getMercatorTileBoundsBuffers(){return{tileBoundsBuffer:this.mercatorBoundsBuffer,tileBoundsIndexBuffer:this.quadTriangleIndexBuffer,tileBoundsSegments:this.mercatorBoundsSegments}}getTileBoundsBuffers(e){return e._makeTileBoundsBuffers(this.context,this.transform.projection),e._tileBoundsBuffer?{tileBoundsBuffer:e._tileBoundsBuffer,tileBoundsIndexBuffer:e._tileBoundsIndexBuffer,tileBoundsSegments:e._tileBoundsSegments}:this.getMercatorTileBoundsBuffers()}clearStencil(){const t=this.context,o=t.gl;this.nextStencilID=1,this.currentStencilSource=void 0,this._tileClippingMaskIDs={},this.useProgram("clippingMask").draw(t,o.TRIANGLES,e.DepthMode.disabled,this.stencilClearMode,e.ColorMode.disabled,e.CullFaceMode.disabled,so(this.identityMat),"$clipping",this.viewportBuffer,this.quadTriangleIndexBuffer,this.viewportSegments)}resetStencilClippingMasks(){this.terrain||(this.currentStencilSource=void 0,this._tileClippingMaskIDs={})}_renderTileClippingMasks(t,o,i){if(!o||this.currentStencilSource===o.id||!t.isTileClipped()||!i||0===i.length)return;if(this._tileClippingMaskIDs&&!this.terrain){let e=!1;for(const t of i)if(void 0===this._tileClippingMaskIDs[t.key]){e=!0;break}if(!e)return}this.currentStencilSource=o.id;const n=this.context,r=n.gl;this.nextStencilID+i.length>256&&this.clearStencil(),n.setColorMode(e.ColorMode.disabled),n.setDepthMode(e.DepthMode.disabled);const a=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(const t of i){const i=o.getTile(t),s=this._tileClippingMaskIDs[t.key]=this.nextStencilID++,{tileBoundsBuffer:p,tileBoundsIndexBuffer:c,tileBoundsSegments:l}=this.getTileBoundsBuffers(i);a.draw(n,r.TRIANGLES,e.DepthMode.disabled,new e.StencilMode({func:r.ALWAYS,mask:0},s,255,r.KEEP,r.KEEP,r.REPLACE),e.ColorMode.disabled,e.CullFaceMode.disabled,so(t.projMatrix),"$clipping",p,c,l)}}stencilModeFor3D(){this.currentStencilSource=void 0,this.nextStencilID+1>256&&this.clearStencil();const t=this.nextStencilID++,o=this.context.gl;return new e.StencilMode({func:o.NOTEQUAL,mask:255},t,255,o.KEEP,o.KEEP,o.REPLACE)}stencilModeForClipping(t){if(this.terrain)return this.terrain.stencilModeForRTTOverlap(t);const o=this.context.gl;return new e.StencilMode({func:o.EQUAL,mask:255},this._tileClippingMaskIDs[t.key],0,o.KEEP,o.KEEP,o.REPLACE)}stencilConfigForOverlap(t){const o=this.context.gl,i=t.sort(((e,t)=>t.overscaledZ-e.overscaledZ)),n=i[i.length-1].overscaledZ,r=i[0].overscaledZ-n+1;if(r>1){this.currentStencilSource=void 0,this.nextStencilID+r>256&&this.clearStencil();const t={};for(let i=0;i=0;this.currentLayer--){const e=this.style._layers[i[this.currentLayer]],o=t._getLayerSourceCache(e);if(e.isSky())continue;const n=o?a[o.id]:void 0;this._renderTileClippingMasks(e,o,n),this.renderLayer(this,o,e,n)}if(this.renderPass="sky",(e.globeToMercatorTransition(this.transform.zoom)>0||"globe"!==this.transform.projection.name)&&this.transform.isHorizonVisible())for(this.currentLayer=0;this.currentLayer{const i=t._getLayerSourceCache(e);i&&!e.isHidden(this.transform.zoom)&&(!o||o.getSource().maxzoom0?t.pop():null}isPatternMissing(e){if(!e)return!1;if(!e.from||!e.to)return!0;const t=this.imageManager.getPattern(e.from.toString()),o=this.imageManager.getPattern(e.to.toString());return!t||!o}currentGlobalDefines(){const e=this.terrain&&this.terrain.renderingToTexture,t=this.style&&this.style.fog,o=[];return this.terrain&&!this.terrain.renderingToTexture&&o.push("TERRAIN"),t&&!e&&0!==t.getOpacity(this.transform.pitch)&&o.push("FOG"),e&&o.push("RENDER_TO_TEXTURE"),this._showOverdrawInspector&&o.push("OVERDRAW_INSPECTOR"),o}useProgram(e,t,o){this.cache=this.cache||{};const i=o||[],n=this.currentGlobalDefines().concat(i),r=zo.cacheKey(e,n,t);return this.cache[r]||(this.cache[r]=new zo(this.context,e,Vt[e],t,Po[e],n)),this.cache[r]}setCustomLayerDefaults(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.frontFace.setDefault(),this.context.cullFaceSide.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()}setBaseState(){const e=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(e.FUNC_ADD)}initDebugOverlayCanvas(){null==this.debugOverlayCanvas&&(this.debugOverlayCanvas=e.window.document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512,this.debugOverlayTexture=new e.Texture(this.context,this.debugOverlayCanvas,this.context.gl.RGBA))}destroy(){this._terrain&&this._terrain.destroy(),this.globeSharedBuffers&&this.globeSharedBuffers.destroy(),this.emptyTexture.destroy(),this.debugOverlayTexture&&this.debugOverlayTexture.destroy()}prepareDrawTile(e){this.terrain&&this.terrain.prepareDrawTile(e)}prepareDrawProgram(e,t,o){if(this.terrain&&this.terrain.renderingToTexture)return;const i=this.style.fog;if(i){const n=i.getOpacity(this.transform.pitch);0!==n&&t.setFogUniformValues(e,((e,t,o,i)=>{const n=t.properties.get("color"),r=e.frameCounter/1e3%1,a=[n.r/n.a,n.g/n.a,n.b/n.a,i];return{u_fog_matrix:o?e.transform.calculateFogTileMatrix(o):e.identityMat,u_fog_range:t.getFovAdjustedRange(e.transform._fov),u_fog_color:a,u_fog_horizon_blend:t.properties.get("horizon-blend"),u_fog_temporal_offset:r}})(this,i,o,n))}}setTileLoadedFlag(e){this.tileLoaded=e}saveCanvasCopy(){this.frameCopies.push(this.canvasCopy()),this.tileLoaded=!1}canvasCopy(){const e=this.context.gl,t=e.createTexture();return e.bindTexture(e.TEXTURE_2D,t),e.copyTexImage2D(e.TEXTURE_2D,0,e.RGBA,0,0,e.drawingBufferWidth,e.drawingBufferHeight,0),t}getCanvasCopiesAndTimestamps(){return{canvasCopies:this.frameCopies,timeStamps:this.loadTimeStamps}}averageElevationNeedsEasing(){if(!this.transform._elevation)return!1;const e=this.style&&this.style.fog;return!!e&&0!==e.getOpacity(this.transform.pitch)}getBackgroundTiles(){const t=this._backgroundTiles,o=this._backgroundTiles={},i=this.transform.coveringTiles({tileSize:512});for(const n of i)o[n.key]=t[n.key]||new e.Tile(n,512,this.transform.tileZoom,this);return o}clearBackgroundTiles(){this._backgroundTiles={}}}class Mi{constructor(e=0,t=0,o=0,i=0){if(isNaN(e)||e<0||isNaN(t)||t<0||isNaN(o)||o<0||isNaN(i)||i<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=e,this.bottom=t,this.left=o,this.right=i}interpolate(t,o,i){return null!=o.top&&null!=t.top&&(this.top=e.number(t.top,o.top,i)),null!=o.bottom&&null!=t.bottom&&(this.bottom=e.number(t.bottom,o.bottom,i)),null!=o.left&&null!=t.left&&(this.left=e.number(t.left,o.left,i)),null!=o.right&&null!=t.right&&(this.right=e.number(t.right,o.right,i)),this}getCenter(t,o){const i=e.clamp((this.left+t-this.right)/2,0,t),n=e.clamp((this.top+o-this.bottom)/2,0,o);return new e.pointGeometry(i,n)}equals(e){return this.top===e.top&&this.bottom===e.bottom&&this.left===e.left&&this.right===e.right}clone(){return new Mi(this.top,this.bottom,this.left,this.right)}toJSON(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}}}function zi(t,o){const i=e.getColumn(t,3);e.fromQuat(t,o),e.setColumn(t,3,i)}function mi(t,o){e.setColumn(t,3,[o[0],o[1],o[2],1])}function hi(t,o){const i=e.identity$1([]);return e.rotateZ$1(i,i,-o),e.rotateX$1(i,i,-t),i}function Oi(t,o){const i=[t[0],t[1],0],n=[o[0],o[1],0];if(e.length(i)>=1e-15){const t=e.normalize([],i);e.scale$2(n,t,e.dot(n,t)),o[0]=n[0],o[1]=n[1]}const r=e.cross([],o,t);if(e.len(r)<1e-15)return null;const a=Math.atan2(-r[1],r[0]);return hi(Math.atan2(Math.sqrt(t[0]*t[0]+t[1]*t[1]),-t[2]),a)}class fi{constructor(e,t){this.position=e,this.orientation=t}get position(){return this._position}set position(t){this._position=this._renderWorldCopies?function(t){if(!t)return;const o=Array.isArray(t)?new e.MercatorCoordinate(t[0],t[1],t[2]):t;return o.x=e.wrap(o.x,0,1),o}(t):t}lookAtPoint(t,o){if(this.orientation=null,!this.position)return;const i=this._elevation?this._elevation.getAtPointOrZero(e.MercatorCoordinate.fromLngLat(t)):0,n=this.position,r=e.MercatorCoordinate.fromLngLat(t,i),a=[r.x-n.x,r.y-n.y,r.z-n.z];o||(o=[0,0,1]),o[2]=Math.abs(o[2]),this.orientation=Oi(a,o)}setPitchBearing(t,o){this.orientation=hi(e.degToRad(t),e.degToRad(-o))}}class Ai{constructor(t,o){this._transform=e.identity([]),this._orientation=e.identity$1([]),o&&(this._orientation=o,zi(this._transform,this._orientation)),t&&mi(this._transform,t)}get mercatorPosition(){const t=this.position;return new e.MercatorCoordinate(t[0],t[1],t[2])}get position(){const t=e.getColumn(this._transform,3);return[t[0],t[1],t[2]]}set position(e){mi(this._transform,e)}get orientation(){return this._orientation}set orientation(e){this._orientation=e,zi(this._transform,this._orientation)}getPitchBearing(){const e=this.forward(),t=this.right();return{bearing:Math.atan2(-t[1],t[0]),pitch:Math.atan2(Math.sqrt(e[0]*e[0]+e[1]*e[1]),-e[2])}}setPitchBearing(e,t){this._orientation=hi(e,t),zi(this._transform,this._orientation)}forward(){const t=e.getColumn(this._transform,2);return[-t[0],-t[1],-t[2]]}up(){const t=e.getColumn(this._transform,1);return[-t[0],-t[1],-t[2]]}right(){const t=e.getColumn(this._transform,0);return[t[0],t[1],t[2]]}getCameraToWorld(t,o){const i=new Float64Array(16);return e.invert(i,this.getWorldToCamera(t,o)),i}getWorldToCameraPosition(t,o,i){const n=this.position;e.scale$2(n,n,-t);const r=new Float64Array(16);return e.fromScaling(r,[i,i,i]),e.translate(r,r,n),r[10]*=o,r}getWorldToCamera(t,o){const i=new Float64Array(16),n=new Float64Array(4),r=this.position;return e.conjugate(n,this._orientation),e.scale$2(r,r,-t),e.fromQuat(i,n),e.translate(i,i,r),i[1]*=-1,i[5]*=-1,i[9]*=-1,i[13]*=-1,i[8]*=o,i[9]*=o,i[10]*=o,i[11]*=o,i}getCameraToClipPerspective(t,o,i,n){const r=new Float64Array(16);return e.perspective(r,t,o,i,n),r}getDistanceToElevation(t){const o=0===t?0:e.mercatorZfromAltitude(t,this.position[1]),i=this.forward();return(o-this.position[2])/i[2]}clone(){return new Ai([...this.position],[...this.orientation])}}function _i(t,o){const i=qi(t),n=function(t,o,i,n,r){const a=new e.LngLat(i.lng-180*yi,i.lat),s=new e.LngLat(i.lng+180*yi,i.lat),p=t.project(a.lng,a.lat),c=t.project(s.lng,s.lat),l=-Math.atan2(c.y-p.y,c.x-p.x),b=e.MercatorCoordinate.fromLngLat(i);b.y=e.clamp(b.y,-.999975,.999975);const d=b.toLngLat(),u=t.project(d.lng,d.lat),M=e.MercatorCoordinate.fromLngLat(d);M.x+=yi;const z=M.toLngLat(),m=t.project(z.lng,z.lat),h=xi(m.x-u.x,m.y-u.y,l),O=e.MercatorCoordinate.fromLngLat(d);O.y+=yi;const f=O.toLngLat(),A=t.project(f.lng,f.lat),_=xi(A.x-u.x,A.y-u.y,l),g=Math.abs(h.x)/Math.abs(_.y),q=e.identity([]);e.rotateZ(q,q,-l*(1-(r?0:n)));const y=e.identity([]);return e.scale(y,y,[1,1-(1-g)*n,1]),y[4]=-_.x/_.y*n,e.rotateZ(y,y,l),e.multiply$1(y,q,y),y}(t.projection,0,t.center,i,o),r=gi(t);return e.scale(n,n,[r,r,1]),n}function gi(t){const o=t.projection,i=qi(t),n=vi(o,t.center),r=vi(o,e.LngLat.convert(o.center));return Math.pow(2,n*i+(1-i)*r)}function qi(t){const o=t.projection.range;if(!o)return 0;const i=Math.max(t.width,t.height),n=Math.log(i/1024)/Math.LN2;return e.smoothstep(o[0]+n,o[1]+n,t.zoom)}const yi=1/4e4;function vi(t,o){const i=e.clamp(o.lat,-e.MAX_MERCATOR_LATITUDE,e.MAX_MERCATOR_LATITUDE),n=new e.LngLat(o.lng-180*yi,i),r=new e.LngLat(o.lng+180*yi,i),a=t.project(n.lng,i),s=t.project(r.lng,i),p=e.MercatorCoordinate.fromLngLat(n),c=e.MercatorCoordinate.fromLngLat(r),l=s.x-a.x,b=s.y-a.y,d=c.x-p.x,u=c.y-p.y,M=Math.sqrt((d*d+u*u)/(l*l+b*b));return Math.log(M)/Math.LN2}function xi(e,t,o){const i=Math.cos(o),n=Math.sin(o);return{x:e*i-t*n,y:e*n+t*i}}class Wi{constructor(t,o,i,n,r){this.tileSize=512,this._renderWorldCopies=void 0===r||r,this._minZoom=t||0,this._maxZoom=o||22,this._minPitch=null==i?0:i,this._maxPitch=null==n?60:n,this.setProjection(),this.setMaxBounds(),this.width=0,this.height=0,this._center=new e.LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._nearZ=0,this._farZ=0,this._unmodified=!0,this._edgeInsets=new Mi,this._projMatrixCache={},this._alignedProjMatrixCache={},this._fogTileMatrixCache={},this._distanceTileDataCache={},this._camera=new Ai,this._centerAltitude=0,this._averageElevation=0,this.cameraElevationReference="ground",this._projectionScaler=1,this._horizonShift=.1}clone(){const e=new Wi(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return e.setProjection(this.getProjection()),e._elevation=this._elevation,e._centerAltitude=this._centerAltitude,e.tileSize=this.tileSize,e.setMaxBounds(this.getMaxBounds()),e.width=this.width,e.height=this.height,e.cameraElevationReference=this.cameraElevationReference,e._center=this._center,e._setZoom(this.zoom),e._cameraZoom=this._cameraZoom,e.angle=this.angle,e._fov=this._fov,e._pitch=this._pitch,e._nearZ=this._nearZ,e._farZ=this._farZ,e._averageElevation=this._averageElevation,e._unmodified=this._unmodified,e._edgeInsets=this._edgeInsets.clone(),e._camera=this._camera.clone(),e._calcMatrices(),e.freezeTileCoverage=this.freezeTileCoverage,e}get elevation(){return this._elevation}set elevation(e){this._elevation!==e&&(this._elevation=e,e?this._updateCenterElevation()&&this._updateCameraOnTerrain():(this._cameraZoom=null,this._centerAltitude=0),this._calcMatrices())}updateElevation(e){this._terrainEnabled()&&null==this._cameraZoom&&this._updateCenterElevation()&&this._updateCameraOnTerrain(),e&&this._constrainCameraAltitude(),this._calcMatrices()}getProjection(){return e.pick(this.projection,["name","center","parallels"])}setProjection(t){null==t&&(t={name:"mercator"}),this.projectionOptions=t;const o=this.projection?this.getProjection():void 0;return this.projection=e.getProjection(t),!r(o,this.getProjection())&&(this._calcMatrices(),!0)}get minZoom(){return this._minZoom}set minZoom(e){this._minZoom!==e&&(this._minZoom=e,this.zoom=Math.max(this.zoom,e))}get maxZoom(){return this._maxZoom}set maxZoom(e){this._maxZoom!==e&&(this._maxZoom=e,this.zoom=Math.min(this.zoom,e))}get minPitch(){return this._minPitch}set minPitch(e){this._minPitch!==e&&(this._minPitch=e,this.pitch=Math.max(this.pitch,e))}get maxPitch(){return this._maxPitch}set maxPitch(e){this._maxPitch!==e&&(this._maxPitch=e,this.pitch=Math.min(this.pitch,e))}get renderWorldCopies(){return this._renderWorldCopies&&!0===this.projection.supportsWorldCopies}set renderWorldCopies(e){void 0===e?e=!0:null===e&&(e=!1),this._renderWorldCopies=e}get worldSize(){return this.tileSize*this.scale}get cameraWorldSize(){const e=Math.max(this._camera.getDistanceToElevation(this._averageElevation),Number.EPSILON);return this._worldSizeFromZoom(this._zoomFromMercatorZ(e))}get pixelsPerMeter(){return this.projection.pixelsPerMeter(this.center.lat,this.worldSize)}get cameraPixelsPerMeter(){return this.projection.pixelsPerMeter(this.center.lat,this.cameraWorldSize)}get centerOffset(){return this.centerPoint._sub(this.size._div(2))}get size(){return new e.pointGeometry(this.width,this.height)}get bearing(){return e.wrap(this.rotation,-180,180)}set bearing(e){this.rotation=e}get rotation(){return-this.angle/Math.PI*180}set rotation(t){const o=-t*Math.PI/180;var i;this.angle!==o&&(this._unmodified=!1,this.angle=o,this._calcMatrices(),this.rotationMatrix=(i=new e.ARRAY_TYPE(4),e.ARRAY_TYPE!=Float32Array&&(i[1]=0,i[2]=0),i[0]=1,i[3]=1,i),function(e,t,o){var i=t[0],n=t[1],r=t[2],a=t[3],s=Math.sin(o),p=Math.cos(o);e[0]=i*p+r*s,e[1]=n*p+a*s,e[2]=i*-s+r*p,e[3]=n*-s+a*p}(this.rotationMatrix,this.rotationMatrix,this.angle))}get pitch(){return this._pitch/Math.PI*180}set pitch(t){const o=e.clamp(t,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==o&&(this._unmodified=!1,this._pitch=o,this._calcMatrices())}get fov(){return this._fov/Math.PI*180}set fov(e){e=Math.max(.01,Math.min(60,e)),this._fov!==e&&(this._unmodified=!1,this._fov=e/180*Math.PI,this._calcMatrices())}get averageElevation(){return this._averageElevation}set averageElevation(e){this._averageElevation=e,this._calcFogMatrices()}get zoom(){return this._zoom}set zoom(e){const t=Math.min(Math.max(e,this.minZoom),this.maxZoom);this._zoom!==t&&(this._unmodified=!1,this._setZoom(t),this._terrainEnabled()&&this._updateCameraOnTerrain(),this._constrain(),this._calcMatrices())}_setZoom(e){this._zoom=e,this.scale=this.zoomScale(e),this.tileZoom=Math.floor(e),this.zoomFraction=e-this.tileZoom}_updateCenterElevation(){if(!this._elevation)return!1;const e=this._elevation.getAtPointOrZero(this.locationCoordinate(this.center),-1);return-1===e?(this._cameraZoom=null,!1):(this._centerAltitude=e,!0)}_updateCameraOnTerrain(){this._cameraZoom=this._zoomFromMercatorZ((this.pixelsPerMeter*this._centerAltitude+this.cameraToCenterDistance)/this.worldSize)}sampleAverageElevation(){if(!this._elevation)return 0;const t=this._elevation,o=[[.5,.2],[.3,.5],[.5,.5],[.7,.5],[.5,.8]],i=this.horizonLineFromTop();let n=0,r=0;for(let a=0;at.maxzoom&&(o=t.maxzoom);const a=this.locationCoordinate(this.center),s=1<{const o=1/4e4,i=new e.MercatorCoordinate(t.x+o,t.y,t.z),n=new e.MercatorCoordinate(t.x,t.y+o,t.z),r=t.toLngLat(),a=i.toLngLat(),s=n.toLngLat(),p=this.locationCoordinate(r),c=this.locationCoordinate(a),l=this.locationCoordinate(s),b=Math.hypot(c.x-p.x,c.y-p.y),d=Math.hypot(l.x-p.x,l.y-p.y);return Math.sqrt(b*d)*O/o},A=t=>{const o=m,i=h;return{aabb:e.tileAABB(this,s,0,0,0,t,i,o,this.projection),zoom:0,x:0,y:0,minZ:i,maxZ:o,wrap:t,fullyVisible:!1}},_=[];let g=[];const q=o,y=t.reparseOverscaled?i:o,v=e=>e*e,x=v((d-this._centerAltitude)*b),W=e=>{if(!this._elevation||!e.tileID||!r)return;const t=this._elevation.getMinMaxForTile(e.tileID),o=e.aabb;t?(o.min[2]=t.min,o.max[2]=t.max,o.center[2]=(o.min[2]+o.max[2])/2):(e.shouldSplit=w(e),e.shouldSplit||(o.min[2]=o.max[2]=o.center[2]=this._centerAltitude))},w=t=>{if(t.zoom.85?1:i}const p=o*o+r*r+a;return p{if(t*v(.707)0;){const i=_.pop(),a=i.x,l=i.y;let b=i.fullyVisible;if(!b){const e=i.aabb.intersects(c);if(0===e)continue;b=2===e}if(i.zoom!==q&&w(i))for(let t=0;t<4;t++){const o=(a<<1)+t%2,p=(l<<1)+(t>>1),c={aabb:r?i.aabb.quadrant(t):e.tileAABB(this,s,i.zoom+1,o,p,i.wrap,i.minZ,i.maxZ,this.projection),zoom:i.zoom+1,x:o,y:p,wrap:i.wrap,fullyVisible:b,tileID:void 0,shouldSplit:void 0,minZ:i.minZ,maxZ:i.maxZ};n&&(c.tileID=new e.OverscaledTileID(i.zoom+1===q?y:i.zoom+1,i.wrap,i.zoom+1,o,p),W(c)),_.push(c)}else{const n=i.zoom===q?y:i.zoom;if(t.minzoom&&t.minzoom>n)continue;const r=p[0]-(.5+a+(i.wrap<{const r=[0,0,0,1],a=[e.EXTENT,e.EXTENT,0,1],s=this.calculateFogTileMatrix(n.tileID.toUnwrapped());e.transformMat4$1(r,r,s),e.transformMat4$1(a,a,s);const p=e.getAABBPointSquareDist(r,a);if(0===p)return!0;let c=!1;const l=this._elevation;if(l&&p>o&&0!==i){const o=this.calculateProjMatrix(n.tileID.toUnwrapped());let r;t.isTerrainDEM||(r=l.getMinMaxForTile(n.tileID)),r||(r={min:h,max:m});const a=e.furthestTileCorner(this.rotation),s=[a[0]*e.EXTENT,a[1]*e.EXTENT,r.max];e.transformMat4(s,s,o),c=(1-s[1])*this.height*.5e.distanceSq-t.distanceSq)).map((e=>e.tileID))}resize(e,t){this.width=e,this.height=t,this.pixelsToGLUnits=[2/e,-2/t],this._constrain(),this._calcMatrices()}get unmodified(){return this._unmodified}zoomScale(e){return Math.pow(2,e)}scaleZoom(e){return Math.log(e)/Math.LN2}project(t){const o=e.clamp(t.lat,-e.MAX_MERCATOR_LATITUDE,e.MAX_MERCATOR_LATITUDE),i=this.projection.project(t.lng,o);return new e.pointGeometry(i.x*this.worldSize,i.y*this.worldSize)}unproject(e){return this.projection.unproject(e.x/this.worldSize,e.y/this.worldSize)}get point(){return this.project(this.center)}setLocationAtPoint(t,o){const i=this.pointCoordinate(o),n=this.pointCoordinate(this.centerPoint),r=this.locationCoordinate(t);this.setLocation(new e.MercatorCoordinate(r.x-(i.x-n.x),r.y-(i.y-n.y)))}setLocation(e){this.center=this.coordinateLocation(e),this.projection.wrap&&(this.center=this.center.wrap())}locationPoint(e){return this.projection.locationPoint(this,e)}locationPoint3D(e){return this._coordinatePoint(this.locationCoordinate(e),!0)}pointLocation(e){return this.coordinateLocation(this.pointCoordinate(e))}pointLocation3D(e){return this.coordinateLocation(this.pointCoordinate3D(e))}locationCoordinate(t,o){const i=o?e.mercatorZfromAltitude(o,t.lat):void 0,n=this.projection.project(t.lng,t.lat);return new e.MercatorCoordinate(n.x,n.y,i)}coordinateLocation(e){return this.projection.unproject(e.x,e.y)}pointRayIntersection(t,o){const i=null!=o?o:this._centerAltitude,n=[t.x,t.y,0,1],r=[t.x,t.y,1,1];e.transformMat4$1(n,n,this.pixelMatrixInverse),e.transformMat4$1(r,r,this.pixelMatrixInverse);const a=r[3];e.scale$1(n,n,1/n[3]),e.scale$1(r,r,1/a);const s=n[2],p=r[2];return{p0:n,p1:r,t:s===p?0:(i-s)/(p-s)}}screenPointToMercatorRay(t){const o=[t.x,t.y,0,1],i=[t.x,t.y,1,1];return e.transformMat4$1(o,o,this.pixelMatrixInverse),e.transformMat4$1(i,i,this.pixelMatrixInverse),e.scale$1(o,o,1/o[3]),e.scale$1(i,i,1/i[3]),o[2]=e.mercatorZfromAltitude(o[2],this._center.lat)*this.worldSize,i[2]=e.mercatorZfromAltitude(i[2],this._center.lat)*this.worldSize,e.scale$1(o,o,1/this.worldSize),e.scale$1(i,i,1/this.worldSize),new e.Ray([o[0],o[1],o[2]],e.normalize([],e.sub([],i,o)))}rayIntersectionCoordinate(t){const{p0:o,p1:i,t:n}=t,r=e.mercatorZfromAltitude(o[2],this._center.lat),a=e.mercatorZfromAltitude(i[2],this._center.lat);return new e.MercatorCoordinate(e.number(o[0],i[0],n)/this.worldSize,e.number(o[1],i[1],n)/this.worldSize,e.number(r,a,n))}pointCoordinate(e,t=this._centerAltitude){return this.projection.createTileTransform(this,this.worldSize).pointCoordinate(e.x,e.y,t)}pointCoordinate3D(t){if(!this.elevation)return this.pointCoordinate(t);const o=this.elevation;let i=this.elevation.pointCoordinate(t);if(i)return new e.MercatorCoordinate(i[0],i[1],i[2]);let n=0,r=this.horizonLineFromTop();if(t.y>r)return this.pointCoordinate(t);const a=.02*r,s=t.clone();for(let t=0;t<10&&r-n>a;t++){s.y=e.number(n,r,.66);const t=o.pointCoordinate(s);t?(r=s.y,i=t):n=s.y}return i?new e.MercatorCoordinate(i[0],i[1],i[2]):this.pointCoordinate(t)}isPointAboveHorizon(e){if(this.elevation)return!this.elevation.pointCoordinate(e);{const t=this.horizonLineFromTop();return e.y0?new e.pointGeometry(n[0]/n[3],n[1]/n[3]):new e.pointGeometry(Number.MAX_VALUE,Number.MAX_VALUE)}_getBounds(t,o){const i=new e.pointGeometry(this._edgeInsets.left,this._edgeInsets.top),n=new e.pointGeometry(this.width-this._edgeInsets.right,this._edgeInsets.top),r=new e.pointGeometry(this.width-this._edgeInsets.right,this.height-this._edgeInsets.bottom),a=new e.pointGeometry(this._edgeInsets.left,this.height-this._edgeInsets.bottom);let s=this.pointCoordinate(i,t),p=this.pointCoordinate(n,t);const c=this.pointCoordinate(r,o),l=this.pointCoordinate(a,o),b=(e,t)=>(t.y-e.y)/(t.x-e.x);return s.y>1&&p.y>=0?s=new e.MercatorCoordinate((1-l.y)/b(l,s)+l.x,1):s.y<0&&p.y<=1&&(s=new e.MercatorCoordinate(-l.y/b(l,s)+l.x,0)),p.y>1&&s.y>=0?p=new e.MercatorCoordinate((1-c.y)/b(c,p)+c.x,1):p.y<0&&s.y<=1&&(p=new e.MercatorCoordinate(-c.y/b(c,p)+c.x,0)),(new e.LngLatBounds).extend(this.coordinateLocation(s)).extend(this.coordinateLocation(p)).extend(this.coordinateLocation(l)).extend(this.coordinateLocation(c))}_getBounds3D(){const e=this.elevation;if(!e.visibleDemTiles.length)return this._getBounds(0,0);const t=e.visibleDemTiles.reduce(((e,t)=>{if(t.dem){const o=t.dem.tree;e.min=Math.min(e.min,o.minimums[0]),e.max=Math.max(e.max,o.maximums[0])}return e}),{min:Number.MAX_VALUE,max:0});return this._getBounds(t.min*e.exaggeration(),t.max*e.exaggeration())}getBounds(){return this._terrainEnabled()?this._getBounds3D():this._getBounds(0,0)}horizonLineFromTop(e=!0){const t=this.height/2/Math.tan(this._fov/2)/Math.tan(Math.max(this._pitch,.1))+this.centerOffset.y,o=this.height/2-t*(1-this._horizonShift);return e?Math.max(0,o):o}getMaxBounds(){return this.maxBounds}setMaxBounds(t){this.maxBounds=t,this.minLat=-e.MAX_MERCATOR_LATITUDE,this.maxLat=e.MAX_MERCATOR_LATITUDE,this.minLng=-180,this.maxLng=180,t&&(this.minLat=t.getSouth(),this.maxLat=t.getNorth(),this.minLng=t.getWest(),this.maxLng=t.getEast(),this.maxLngl&&(a=l-p),l-ct&&(r=t-s),t-e.5?O-1:O,f>.5?f-1:f,0]),this.alignedProjMatrix=A,s=e.create(),e.scale(s,s,[this.width/2,-this.height/2,1]),e.translate(s,s,[1,-1,0]),this.labelPlaneMatrix=s,s=e.create(),e.scale(s,s,[1,-1,1]),e.translate(s,s,[-1,-1,0]),e.scale(s,s,[2/this.width,2/this.height,1]),this.glCoordMatrix=s,this.pixelMatrix=e.multiply$1(new Float64Array(16),this.labelPlaneMatrix,this.projMatrix),this._calcFogMatrices(),this._distanceTileDataCache={},s=e.invert(new Float64Array(16),this.pixelMatrix),!s)throw new Error("failed to invert matrix");this.pixelMatrixInverse=s,this._projMatrixCache={},this._alignedProjMatrixCache={},this._pixelsToTileUnitsCache={}}_calcFogMatrices(){this._fogTileMatrixCache={};const t=this.cameraWorldSize,o=this.cameraPixelsPerMeter,i=this._camera.position,n=1/this.height,r=[t,t,o];e.scale$2(r,r,n),e.scale$2(i,i,-1),e.multiply$2(i,i,r);const a=e.create();e.translate(a,a,i),e.scale(a,a,r),this.mercatorFogMatrix=a,this.worldToFogMatrix=this._camera.getWorldToCameraPosition(t,o,n)}_computeCameraPosition(e){const t=(e=e||this.pixelsPerMeter)/this.pixelsPerMeter,o=this._camera.forward(),i=this.point,n=this._mercatorZfromZoom(this._cameraZoom?this._cameraZoom:this._zoom)*t-e/this.worldSize*this._centerAltitude;return[i.x/this.worldSize-o[0]*n,i.y/this.worldSize-o[1]*n,e/this.worldSize*this._centerAltitude-o[2]*n]}_updateCameraState(){this.height&&(this._camera.setPitchBearing(this._pitch,this.angle),this._camera.position=this._computeCameraPosition())}_translateCameraConstrained(t){const o=this._maxCameraBoundsDistance()*Math.cos(this._pitch),i=t[2];let n=1;i>0&&(n=Math.min((o-this._camera.position[2])/i,1)),this._camera.position=e.scaleAndAdd([],this._camera.position,t,n),this._updateStateFromCamera()}_updateStateFromCamera(){const t=this._camera.position,o=this._camera.forward(),{pitch:i,bearing:n}=this._camera.getPitchBearing(),r=e.mercatorZfromAltitude(this._centerAltitude,this.center.lat)*this._projectionScaler,a=this._mercatorZfromZoom(this._maxZoom)*Math.cos(e.degToRad(this._maxPitch)),s=Math.max((t[2]-r)/Math.cos(i),a),p=this._zoomFromMercatorZ(s);e.scaleAndAdd(t,t,o,s),this._pitch=e.clamp(i,e.degToRad(this.minPitch),e.degToRad(this.maxPitch)),this.angle=e.wrap(n,-Math.PI,Math.PI),this._setZoom(e.clamp(p,this._minZoom,this._maxZoom)),this._terrainEnabled()&&this._updateCameraOnTerrain(),this._center=this.coordinateLocation(new e.MercatorCoordinate(t[0],t[1],t[2])),this._unmodified=!1,this._constrain(),this._calcMatrices()}_worldSizeFromZoom(e){return Math.pow(2,e)*this.tileSize}_mercatorZfromZoom(e){return this.cameraToCenterDistance/this._worldSizeFromZoom(e)}_minimumHeightOverTerrain(){const e=Math.min((null!=this._cameraZoom?this._cameraZoom:this._zoom)+2,this._maxZoom);return this._mercatorZfromZoom(e)}_zoomFromMercatorZ(e){return this.scaleZoom(this.cameraToCenterDistance/(e*this.tileSize))}_terrainEnabled(){return!(!this._elevation||!this.projection.supportsTerrain&&(e.warnOnce("Terrain is not yet supported with alternate projections. Use mercator to enable terrain."),1))}anyCornerOffEdge(t,o){const i=Math.min(t.x,o.x),n=Math.max(t.x,o.x),r=Math.min(t.y,o.y),a=Math.max(t.y,o.y);if(rc||o.y>1)return!0}return!1}isHorizonVisible(){return this.pitch+e.radToDeg(this.fovAboveCenter)>88||this.anyCornerOffEdge(new e.pointGeometry(0,0),new e.pointGeometry(this.width,this.height))}zoomDeltaToMovement(t,o){const i=e.length(e.sub([],this._camera.position,t)),n=this._zoomFromMercatorZ(i)+o;return i-this._mercatorZfromZoom(n)}getCameraPoint(){const t=Math.tan(this._pitch)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new e.pointGeometry(0,t))}}function wi(e,t){let o=!1,i=null;const n=()=>{i=null,o&&(e(),i=setTimeout(n,t),o=!1)};return()=>(o=!0,i||n(),i)}class Li{constructor(t){this._hashName=t&&encodeURIComponent(t),e.bindAll(["_getCurrentHash","_onHashChange","_updateHash"],this),this._updateHash=wi(this._updateHashUnthrottled.bind(this),300)}addTo(t){return this._map=t,e.window.addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this}remove(){return e.window.removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),clearTimeout(this._updateHash()),delete this._map,this}getHashString(t){const o=this._map.getCenter(),i=Math.round(100*this._map.getZoom())/100,n=Math.ceil((i*Math.LN2+Math.log(512/360/.5))/Math.LN10),r=Math.pow(10,n),a=Math.round(o.lng*r)/r,s=Math.round(o.lat*r)/r,p=this._map.getBearing(),c=this._map.getPitch();let l="";if(l+=t?`/${a}/${s}/${i}`:`${i}/${s}/${a}`,(p||c)&&(l+="/"+Math.round(10*p)/10),c&&(l+=`/${Math.round(c)}`),this._hashName){const t=this._hashName;let o=!1;const i=e.window.location.hash.slice(1).split("&").map((e=>{const i=e.split("=")[0];return i===t?(o=!0,`${i}=${l}`):e})).filter((e=>e));return o||i.push(`${t}=${l}`),`#${i.join("&")}`}return`#${l}`}_getCurrentHash(){const t=e.window.location.hash.replace("#","");if(this._hashName){let e;return t.split("&").map((e=>e.split("="))).forEach((t=>{t[0]===this._hashName&&(e=t)})),(e&&e[1]||"").split("/")}return t.split("/")}_onHashChange(){const e=this._getCurrentHash();if(e.length>=3&&!e.some((e=>isNaN(e)))){const t=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(e[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+e[2],+e[1]],zoom:+e[0],bearing:t,pitch:+(e[4]||0)}),!0}return!1}_updateHashUnthrottled(){const t=e.window.location.href.replace(/(#.+)?$/,this.getHashString());e.window.history.replaceState(e.window.history.state,null,t)}}const Ri={linearity:.3,easing:e.bezier(0,0,.3,1)},Ti=e.extend({deceleration:2500,maxSpeed:1400},Ri),ki=e.extend({deceleration:20,maxSpeed:1400},Ri),Bi=e.extend({deceleration:1e3,maxSpeed:360},Ri),Si=e.extend({deceleration:1e3,maxSpeed:90},Ri);class Xi{constructor(e){this._map=e,this.clear()}clear(){this._inertiaBuffer=[]}record(t){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:e.exported.now(),settings:t})}_drainInertiaBuffer(){const t=this._inertiaBuffer,o=e.exported.now();for(;t.length>0&&o-t[0].time>160;)t.shift()}_onMoveEnd(t){if(this._drainInertiaBuffer(),this._inertiaBuffer.length<2)return;const o={zoom:0,bearing:0,pitch:0,pan:new e.pointGeometry(0,0),pinchAround:void 0,around:void 0};for(const{settings:e}of this._inertiaBuffer)o.zoom+=e.zoomDelta||0,o.bearing+=e.bearingDelta||0,o.pitch+=e.pitchDelta||0,e.panDelta&&o.pan._add(e.panDelta),e.around&&(o.around=e.around),e.pinchAround&&(o.pinchAround=e.pinchAround);const i=this._inertiaBuffer[this._inertiaBuffer.length-1].time-this._inertiaBuffer[0].time,n={};if(o.pan.mag()){const r=Di(o.pan.mag(),i,e.extend({},Ti,t||{}));n.offset=o.pan.mult(r.amount/o.pan.mag()),n.center=this._map.transform.center,Ei(n,r)}if(o.zoom){const e=Di(o.zoom,i,ki);n.zoom=this._map.transform.zoom+e.amount,Ei(n,e)}if(o.bearing){const t=Di(o.bearing,i,Bi);n.bearing=this._map.transform.bearing+e.clamp(t.amount,-179,179),Ei(n,t)}if(o.pitch){const e=Di(o.pitch,i,Si);n.pitch=this._map.transform.pitch+e.amount,Ei(n,e)}if(n.zoom||n.bearing){const e=void 0===o.pinchAround?o.around:o.pinchAround;n.around=e?this._map.unproject(e):this._map.getCenter()}return this.clear(),e.extend(n,{noMoveStart:!0})}}function Ei(e,t){(!e.duration||e.durationo.unproject(e))),p=r.reduce(((e,t,o,i)=>e.add(t.div(i.length))),new e.pointGeometry(0,0));super(t,{points:r,point:p,lngLats:s,lngLat:o.unproject(p),originalEvent:i}),this._defaultPrevented=!1}}class Pi extends e.Event{preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}constructor(e,t,o){super(e,{originalEvent:o}),this._defaultPrevented=!1}}class Ii{constructor(e,t){this._map=e,this._clickTolerance=t.clickTolerance}reset(){delete this._mousedownPos}wheel(e){return this._firePreventable(new Pi(e.type,this._map,e))}mousedown(e,t){return this._mousedownPos=t,this._firePreventable(new Ci(e.type,this._map,e))}mouseup(e){this._map.fire(new Ci(e.type,this._map,e))}preclick(t){const o=e.extend({},t);o.type="preclick",this._map.fire(new Ci(o.type,this._map,o))}click(e,t){this._mousedownPos&&this._mousedownPos.dist(t)>=this._clickTolerance||(this.preclick(e),this._map.fire(new Ci(e.type,this._map,e)))}dblclick(e){return this._firePreventable(new Ci(e.type,this._map,e))}mouseover(e){this._map.fire(new Ci(e.type,this._map,e))}mouseout(e){this._map.fire(new Ci(e.type,this._map,e))}touchstart(e){return this._firePreventable(new Ni(e.type,this._map,e))}touchmove(e){this._map.fire(new Ni(e.type,this._map,e))}touchend(e){this._map.fire(new Ni(e.type,this._map,e))}touchcancel(e){this._map.fire(new Ni(e.type,this._map,e))}_firePreventable(e){if(this._map.fire(e),e.defaultPrevented)return{}}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class Yi{constructor(e){this._map=e}reset(){this._delayContextMenu=!1,delete this._contextMenuEvent}mousemove(e){this._map.fire(new Ci(e.type,this._map,e))}mousedown(){this._delayContextMenu=!0}mouseup(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new Ci("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)}contextmenu(e){this._delayContextMenu?this._contextMenuEvent=e:this._map.fire(new Ci(e.type,this._map,e)),this._map.listens("contextmenu")&&e.preventDefault()}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class ji{constructor(e,t){this._map=e,this._el=e.getCanvasContainer(),this._container=e.getContainer(),this._clickTolerance=t.clickTolerance||1}isEnabled(){return!!this._enabled}isActive(){return!!this._active}enable(){this.isEnabled()||(this._enabled=!0)}disable(){this.isEnabled()&&(this._enabled=!1)}mousedown(e,t){this.isEnabled()&&e.shiftKey&&0===e.button&&(a.disableDrag(),this._startPos=this._lastPos=t,this._active=!0)}mousemoveWindow(e,t){if(!this._active)return;const o=t;if(this._lastPos.equals(o)||!this._box&&o.dist(this._startPos){this._box&&(this._box.style.transform=`translate(${n}px,${s}px)`,this._box.style.width=r-n+"px",this._box.style.height=p-s+"px")}))}mouseupWindow(t,o){if(!this._active)return;if(0!==t.button)return;const i=this._startPos,n=o;if(this.reset(),a.suppressClick(),i.x!==n.x||i.y!==n.y)return this._map.fire(new e.Event("boxzoomend",{originalEvent:t})),{cameraAnimation:e=>e.fitScreenCoordinates(i,n,this._map.getBearing(),{linear:!1})};this._fireEvent("boxzoomcancel",t)}keydown(e){this._active&&27===e.keyCode&&(this.reset(),this._fireEvent("boxzoomcancel",e))}blur(){this.reset()}reset(){this._active=!1,this._container.classList.remove("mapboxgl-crosshair"),this._box&&(this._box.remove(),this._box=null),a.enableDrag(),delete this._startPos,delete this._lastPos}_fireEvent(t,o){return this._map.fire(new e.Event(t,{originalEvent:o}))}}function Fi(e,t){const o={};for(let i=0;ithis.numTouches)&&(this.aborted=!0),this.aborted||(void 0===this.startTime&&(this.startTime=t.timeStamp),i.length===this.numTouches&&(this.centroid=function(t){const o=new e.pointGeometry(0,0);for(const e of t)o._add(e);return o.div(t.length)}(o),this.touches=Fi(i,o)))}touchmove(e,t,o){if(this.aborted||!this.centroid)return;const i=Fi(o,t);for(const e in this.touches){const t=this.touches[e],o=i[e];(!o||o.dist(t)>30)&&(this.aborted=!0)}}touchend(e,t,o){if((!this.centroid||e.timeStamp-this.startTime>500)&&(this.aborted=!0),0===o.length){const e=!this.aborted&&this.centroid;if(this.reset(),e)return e}}}class Ui{constructor(e){this.singleTap=new Hi(e),this.numTaps=e.numTaps,this.reset()}reset(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()}touchstart(e,t,o){this.singleTap.touchstart(e,t,o)}touchmove(e,t,o){this.singleTap.touchmove(e,t,o)}touchend(e,t,o){const i=this.singleTap.touchend(e,t,o);if(i){const t=e.timeStamp-this.lastTime<500,o=!this.lastTap||this.lastTap.dist(i)<30;if(t&&o||this.reset(),this.count++,this.lastTime=e.timeStamp,this.lastTap=i,this.count===this.numTaps)return this.reset(),i}}}class Vi{constructor(){this._zoomIn=new Ui({numTouches:1,numTaps:2}),this._zoomOut=new Ui({numTouches:2,numTaps:1}),this.reset()}reset(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset()}touchstart(e,t,o){this._zoomIn.touchstart(e,t,o),this._zoomOut.touchstart(e,t,o)}touchmove(e,t,o){this._zoomIn.touchmove(e,t,o),this._zoomOut.touchmove(e,t,o)}touchend(e,t,o){const i=this._zoomIn.touchend(e,t,o),n=this._zoomOut.touchend(e,t,o);return i?(this._active=!0,e.preventDefault(),setTimeout((()=>this.reset()),0),{cameraAnimation:t=>t.easeTo({duration:300,zoom:t.getZoom()+1,around:t.unproject(i)},{originalEvent:e})}):n?(this._active=!0,e.preventDefault(),setTimeout((()=>this.reset()),0),{cameraAnimation:t=>t.easeTo({duration:300,zoom:t.getZoom()-1,around:t.unproject(n)},{originalEvent:e})}):void 0}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}const Gi={0:1,2:2};class Zi{constructor(e){this.reset(),this._clickTolerance=e.clickTolerance||1}blur(){this.reset()}reset(){this._active=!1,this._moved=!1,delete this._lastPoint,delete this._eventButton}_correctButton(e,t){return!1}_move(e,t){return{}}mousedown(e,t){if(this._lastPoint)return;const o=a.mouseButton(e);this._correctButton(e,o)&&(this._lastPoint=t,this._eventButton=o)}mousemoveWindow(e,t){const o=this._lastPoint;if(o)if(e.preventDefault(),function(e,t){const o=Gi[t];return void 0===e.buttons||(e.buttons&o)!==o}(e,this._eventButton))this.reset();else if(this._moved||!(t.dist(o)0&&(this._active=!0);const n=Fi(i,o),r=new e.pointGeometry(0,0),a=new e.pointGeometry(0,0);let s=0;for(const e in n){const t=n[e],o=this._touches[e];o&&(r._add(t),a._add(t.sub(o)),s++,n[e]=t)}if(this._touches=n,s{this._alertContainer.classList.remove("mapboxgl-touch-pan-blocker-show")}),500)}}class en{constructor(){this.reset()}reset(){this._active=!1,delete this._firstTwoTouches}_start(e){}_move(e,t,o){return{}}touchstart(e,t,o){this._firstTwoTouches||o.length<2||(this._firstTwoTouches=[o[0].identifier,o[1].identifier],this._start([t[0],t[1]]))}touchmove(e,t,o){if(!this._firstTwoTouches)return;e.preventDefault();const[i,n]=this._firstTwoTouches,r=tn(o,t,i),a=tn(o,t,n);if(!r||!a)return;const s=this._aroundCenter?null:r.add(a).div(2);return this._move([r,a],s,e)}touchend(e,t,o){if(!this._firstTwoTouches)return;const[i,n]=this._firstTwoTouches,r=tn(o,t,i),s=tn(o,t,n);r&&s||(this._active&&a.suppressClick(),this.reset())}touchcancel(){this.reset()}enable(e){this._enabled=!0,this._aroundCenter=!!e&&"center"===e.around}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}function tn(e,t,o){for(let i=0;iMath.abs(e.x)}class pn extends en{constructor(e){super(),this._map=e}reset(){super.reset(),this._valid=void 0,delete this._firstMove,delete this._lastPoints}_start(e){this._lastPoints=e,sn(e[0].sub(e[1]))&&(this._valid=!1)}_move(e,t,o){const i=e[0].sub(this._lastPoints[0]),n=e[1].sub(this._lastPoints[1]);if(!(this._map._cooperativeGestures&&o.touches.length<3)&&(this._valid=this.gestureBeginsVertically(i,n,o.timeStamp),this._valid))return this._lastPoints=e,this._active=!0,{pitchDelta:(i.y+n.y)/2*-.5}}gestureBeginsVertically(e,t,o){if(void 0!==this._valid)return this._valid;const i=e.mag()>=2,n=t.mag()>=2;if(!i&&!n)return;if(!i||!n)return void 0===this._firstMove&&(this._firstMove=o),o-this._firstMove<100&&void 0;const r=e.y>0==t.y>0;return sn(e)&&sn(t)&&r}}const cn={panStep:100,bearingStep:15,pitchStep:10};class ln{constructor(){const e=cn;this._panStep=e.panStep,this._bearingStep=e.bearingStep,this._pitchStep=e.pitchStep,this._rotationDisabled=!1}blur(){this.reset()}reset(){this._active=!1}keydown(e){if(e.altKey||e.ctrlKey||e.metaKey)return;let t=0,o=0,i=0,n=0,r=0;switch(e.keyCode){case 61:case 107:case 171:case 187:t=1;break;case 189:case 109:case 173:t=-1;break;case 37:e.shiftKey?o=-1:(e.preventDefault(),n=-1);break;case 39:e.shiftKey?o=1:(e.preventDefault(),n=1);break;case 38:e.shiftKey?i=1:(e.preventDefault(),r=-1);break;case 40:e.shiftKey?i=-1:(e.preventDefault(),r=1);break;default:return}return this._rotationDisabled&&(o=0,i=0),{cameraAnimation:a=>{const s=a.getZoom();a.easeTo({duration:300,easeId:"keyboardHandler",easing:bn,zoom:t?Math.round(s)+t*(e.shiftKey?2:1):s,bearing:a.getBearing()+o*this._bearingStep,pitch:a.getPitch()+i*this._pitchStep,offset:[-n*this._panStep,-r*this._panStep],center:a.getCenter()},{originalEvent:e})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}disableRotation(){this._rotationDisabled=!0}enableRotation(){this._rotationDisabled=!1}}function bn(e){return e*(2-e)}const dn=4.000244140625;class un{constructor(t,o){this._map=t,this._el=t.getCanvasContainer(),this._handler=o,this._delta=0,this._defaultZoomRate=.01,this._wheelZoomRate=.0022222222222222222,e.bindAll(["_onTimeout","_addScrollZoomBlocker","_showBlockerAlert","_isFullscreen"],this)}setZoomRate(e){this._defaultZoomRate=e}setWheelZoomRate(e){this._wheelZoomRate=e}isEnabled(){return!!this._enabled}isActive(){return!!this._active||void 0!==this._finishTimeout}isZooming(){return!!this._zooming}enable(e){this.isEnabled()||(this._enabled=!0,this._aroundCenter=!!e&&"center"===e.around,this._map._cooperativeGestures&&this._addScrollZoomBlocker())}disable(){this.isEnabled()&&(this._enabled=!1,this._map._cooperativeGestures&&(clearTimeout(this._alertTimer),this._alertContainer.remove()))}wheel(t){if(!this.isEnabled())return;if(this._map._cooperativeGestures){if(!(t.ctrlKey||t.metaKey||this.isZooming()||this._isFullscreen()))return void this._showBlockerAlert();"hidden"!==this._alertContainer.style.visibility&&(this._alertContainer.style.visibility="hidden",clearTimeout(this._alertTimer))}let o=t.deltaMode===e.window.WheelEvent.DOM_DELTA_LINE?40*t.deltaY:t.deltaY;const i=e.exported.now(),n=i-(this._lastWheelEventTime||0);this._lastWheelEventTime=i,0!==o&&o%dn==0?this._type="wheel":0!==o&&Math.abs(o)<4?this._type="trackpad":n>400?(this._type=null,this._lastValue=o,this._timeout=setTimeout(this._onTimeout,40,t)):this._type||(this._type=Math.abs(n*o)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,o+=this._lastValue)),t.shiftKey&&o&&(o/=4),this._type&&(this._lastWheelEvent=t,this._delta-=o,this._active||this._start(t)),t.preventDefault()}_onTimeout(e){this._type="wheel",this._delta-=this._lastValue,this._active||this._start(e)}_start(e){if(!this._delta)return;this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);const t=a.mousePos(this._el,e);this._aroundPoint=this._aroundCenter?this._map.transform.centerPoint:t,this._aroundCoord=this._map.transform.pointCoordinate3D(this._aroundPoint),this._targetZoom=void 0,this._frameId||(this._frameId=!0,this._handler._triggerRenderFrame())}renderFrame(){if(!this._frameId)return;if(this._frameId=null,!this.isActive())return;const t=this._map.transform,o=()=>t._terrainEnabled()&&this._aroundCoord?t.computeZoomRelativeTo(this._aroundCoord):t.zoom;if(0!==this._delta){const e="wheel"===this._type&&Math.abs(this._delta)>dn?this._wheelZoomRate:this._defaultZoomRate;let i=2/(1+Math.exp(-Math.abs(this._delta*e)));this._delta<0&&0!==i&&(i=1/i);const n=o(),r=Math.pow(2,n),a="number"==typeof this._targetZoom?t.zoomScale(this._targetZoom):r;this._targetZoom=Math.min(t.maxZoom,Math.max(t.minZoom,t.scaleZoom(a*i))),"wheel"===this._type&&(this._startZoom=o(),this._easing=this._smoothOutEasing(200)),this._delta=0}const i="number"==typeof this._targetZoom?this._targetZoom:o(),n=this._startZoom,r=this._easing;let a,s=!1;if("wheel"===this._type&&n&&r){const t=Math.min((e.exported.now()-this._lastWheelEventTime)/200,1),o=r(t);a=e.number(n,i,o),t<1?this._frameId||(this._frameId=!0):s=!0}else a=i,s=!0;return this._active=!0,s&&(this._active=!1,this._finishTimeout=setTimeout((()=>{this._zooming=!1,this._handler._triggerRenderFrame(),delete this._targetZoom,delete this._finishTimeout}),200)),{noInertia:!0,needsRenderFrame:!s,zoomDelta:a-o(),around:this._aroundPoint,aroundCoord:this._aroundCoord,originalEvent:this._lastWheelEvent}}_smoothOutEasing(t){let o=e.ease;if(this._prevEase){const t=this._prevEase,i=(e.exported.now()-t.start)/t.duration,n=t.easing(i+.01)-t.easing(i),r=.27/Math.sqrt(n*n+1e-4)*.01,a=Math.sqrt(.0729-r*r);o=e.bezier(r,a,.25,1)}return this._prevEase={start:e.exported.now(),duration:t,easing:o},o}blur(){this.reset()}reset(){this._active=!1}_addScrollZoomBlocker(){this._map&&!this._alertContainer&&(this._alertContainer=a.create("div","mapboxgl-scroll-zoom-blocker",this._map._container),this._alertContainer.textContent=/(Mac|iPad)/i.test(e.window.navigator.userAgent)?this._map._getUIString("ScrollZoomBlocker.CmdMessage"):this._map._getUIString("ScrollZoomBlocker.CtrlMessage"),this._alertContainer.style.fontSize=`${Math.max(10,Math.min(24,Math.floor(.05*this._el.clientWidth)))}px`)}_isFullscreen(){return!!e.window.document.fullscreenElement}_showBlockerAlert(){"hidden"===this._alertContainer.style.visibility&&(this._alertContainer.style.visibility="visible"),this._alertContainer.classList.add("mapboxgl-scroll-zoom-blocker-show"),clearTimeout(this._alertTimer),this._alertTimer=setTimeout((()=>{this._alertContainer.classList.remove("mapboxgl-scroll-zoom-blocker-show")}),200)}}class Mn{constructor(e,t){this._clickZoom=e,this._tapZoom=t}enable(){this._clickZoom.enable(),this._tapZoom.enable()}disable(){this._clickZoom.disable(),this._tapZoom.disable()}isEnabled(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()}isActive(){return this._clickZoom.isActive()||this._tapZoom.isActive()}}class zn{constructor(){this.reset()}reset(){this._active=!1}blur(){this.reset()}dblclick(e,t){return e.preventDefault(),{cameraAnimation:o=>{o.easeTo({duration:300,zoom:o.getZoom()+(e.shiftKey?-1:1),around:o.unproject(t)},{originalEvent:e})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class mn{constructor(){this._tap=new Ui({numTouches:1,numTaps:1}),this.reset()}reset(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,this._tap.reset()}touchstart(e,t,o){this._swipePoint||(this._tapTime&&e.timeStamp-this._tapTime>500&&this.reset(),this._tapTime?o.length>0&&(this._swipePoint=t[0],this._swipeTouch=o[0].identifier):this._tap.touchstart(e,t,o))}touchmove(e,t,o){if(this._tapTime){if(this._swipePoint){if(o[0].identifier!==this._swipeTouch)return;const i=t[0],n=i.y-this._swipePoint.y;return this._swipePoint=i,e.preventDefault(),this._active=!0,{zoomDelta:n/128}}}else this._tap.touchmove(e,t,o)}touchend(e,t,o){this._tapTime?this._swipePoint&&0===o.length&&this.reset():this._tap.touchend(e,t,o)&&(this._tapTime=e.timeStamp)}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class hn{constructor(e,t,o){this._el=e,this._mousePan=t,this._touchPan=o}enable(e){this._inertiaOptions=e||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("mapboxgl-touch-drag-pan")}disable(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("mapboxgl-touch-drag-pan")}isEnabled(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()}isActive(){return this._mousePan.isActive()||this._touchPan.isActive()}}class On{constructor(e,t,o){this._pitchWithRotate=e.pitchWithRotate,this._mouseRotate=t,this._mousePitch=o}enable(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()}disable(){this._mouseRotate.disable(),this._mousePitch.disable()}isEnabled(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())}isActive(){return this._mouseRotate.isActive()||this._mousePitch.isActive()}}class fn{constructor(e,t,o,i){this._el=e,this._touchZoom=t,this._touchRotate=o,this._tapDragZoom=i,this._rotationDisabled=!1,this._enabled=!0}enable(e){this._touchZoom.enable(e),this._rotationDisabled||this._touchRotate.enable(e),this._tapDragZoom.enable(),this._el.classList.add("mapboxgl-touch-zoom-rotate")}disable(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("mapboxgl-touch-zoom-rotate")}isEnabled(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()}isActive(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()}disableRotation(){this._rotationDisabled=!0,this._touchRotate.disable()}enableRotation(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()}}const An=e=>e.zoom||e.drag||e.pitch||e.rotate;class _n extends e.Event{}class gn{constructor(){this.constants=[1,1,.01],this.radius=0}setup(t,o){const i=e.sub([],o,t);this.radius=e.length(i[2]<0?e.div([],i,this.constants):[i[0],i[1],0])}projectRay(t){e.div(t,t,this.constants),e.normalize(t,t),e.mul$1(t,t,this.constants);const o=e.scale$2([],t,this.radius);if(o[2]>0){const t=e.scale$2([],[0,0,1],e.dot(o,[0,0,1])),i=e.scale$2([],e.normalize([],[o[0],o[1],0]),this.radius),n=e.add([],o,e.scale$2([],e.sub([],e.add([],i,t),o),2));o[0]=n[0],o[1]=n[1]}return o}}function qn(e){return e.panDelta&&e.panDelta.mag()||e.zoomDelta||e.bearingDelta||e.pitchDelta}class yn{constructor(t,o){this._map=t,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new Xi(t),this._bearingSnap=o.bearingSnap,this._previousActiveHandlers={},this._trackingEllipsoid=new gn,this._dragOrigin=null,this._eventsInProgress={},this._addDefaultHandlers(o),e.bindAll(["handleEvent","handleWindowEvent"],this);const i=this._el;this._listeners=[[i,"touchstart",{passive:!0}],[i,"touchmove",{passive:!1}],[i,"touchend",void 0],[i,"touchcancel",void 0],[i,"mousedown",void 0],[i,"mousemove",void 0],[i,"mouseup",void 0],[e.window.document,"mousemove",{capture:!0}],[e.window.document,"mouseup",void 0],[i,"mouseover",void 0],[i,"mouseout",void 0],[i,"dblclick",void 0],[i,"click",void 0],[i,"keydown",{capture:!1}],[i,"keyup",void 0],[i,"wheel",{passive:!1}],[i,"contextmenu",void 0],[e.window,"blur",void 0]];for(const[t,o,i]of this._listeners)t.addEventListener(o,t===e.window.document?this.handleWindowEvent:this.handleEvent,i)}destroy(){for(const[t,o,i]of this._listeners)t.removeEventListener(o,t===e.window.document?this.handleWindowEvent:this.handleEvent,i)}_addDefaultHandlers(e){const t=this._map,o=t.getCanvasContainer();this._add("mapEvent",new Ii(t,e));const i=t.boxZoom=new ji(t,e);this._add("boxZoom",i);const n=new Vi,r=new zn;t.doubleClickZoom=new Mn(r,n),this._add("tapZoom",n),this._add("clickZoom",r);const a=new mn;this._add("tapDragZoom",a);const s=t.touchPitch=new pn(t);this._add("touchPitch",s);const p=new Ki(e),c=new Ji(e);t.dragRotate=new On(e,p,c),this._add("mouseRotate",p,["mousePitch"]),this._add("mousePitch",c,["mouseRotate"]);const l=new $i(e),b=new Qi(t,e);t.dragPan=new hn(o,l,b),this._add("mousePan",l),this._add("touchPan",b,["touchZoom","touchRotate"]);const d=new an,u=new nn;t.touchZoomRotate=new fn(o,u,d,a),this._add("touchRotate",d,["touchPan","touchZoom"]),this._add("touchZoom",u,["touchPan","touchRotate"]),this._add("blockableMapEvent",new Yi(t));const M=t.scrollZoom=new un(t,this);this._add("scrollZoom",M,["mousePan"]);const z=t.keyboard=new ln;this._add("keyboard",z);for(const o of["boxZoom","doubleClickZoom","tapDragZoom","touchPitch","dragRotate","dragPan","touchZoomRotate","scrollZoom","keyboard"])e.interactive&&e[o]&&t[o].enable(e[o])}_add(e,t,o){this._handlers.push({handlerName:e,handler:t,allowed:o}),this._handlersById[e]=t}stop(e){if(!this._updatingCamera){for(const{handler:e}of this._handlers)e.reset();this._inertia.clear(),this._fireEvents({},{},e),this._changes=[]}}isActive(){for(const{handler:e}of this._handlers)if(e.isActive())return!0;return!1}isZooming(){return!!this._eventsInProgress.zoom||this._map.scrollZoom.isZooming()}isRotating(){return!!this._eventsInProgress.rotate}isMoving(){return Boolean(An(this._eventsInProgress))||this.isZooming()}_blockedByActive(e,t,o){for(const i in e)if(i!==o&&(!t||t.indexOf(i)<0))return!0;return!1}handleWindowEvent(e){this.handleEvent(e,`${e.type}Window`)}_getMapTouches(e){const t=[];for(const o of e)this._el.contains(o.target)&&t.push(o);return t}handleEvent(e,t){this._updatingCamera=!0;const o="renderFrame"===e.type,i=o?void 0:e,n={needsRenderFrame:!1},r={},s={},p=e.touches?this._getMapTouches(e.touches):void 0,c=p?a.touchPos(this._el,p):o?void 0:a.mousePos(this._el,e);for(const{handlerName:o,handler:a,allowed:l}of this._handlers){if(!a.isEnabled())continue;let b;this._blockedByActive(s,l,o)?a.reset():a[t||e.type]&&(b=a[t||e.type](e,c,p),this.mergeHandlerResult(n,r,b,o,i),b&&b.needsRenderFrame&&this._triggerRenderFrame()),(b||a.isActive())&&(s[o]=a)}const l={};for(const e in this._previousActiveHandlers)s[e]||(l[e]=i);this._previousActiveHandlers=s,(Object.keys(l).length||qn(n))&&(this._changes.push([n,r,l]),this._triggerRenderFrame()),(Object.keys(s).length||qn(n))&&this._map._stop(!0),this._updatingCamera=!1;const{cameraAnimation:b}=n;b&&(this._inertia.clear(),this._fireEvents({},{},!0),this._changes=[],b(this._map))}mergeHandlerResult(t,o,i,n,r){if(!i)return;e.extend(t,i);const a={handlerName:n,originalEvent:i.originalEvent||r};void 0!==i.zoomDelta&&(o.zoom=a),void 0!==i.panDelta&&(o.drag=a),void 0!==i.pitchDelta&&(o.pitch=a),void 0!==i.bearingDelta&&(o.rotate=a)}_applyChanges(){const t={},o={},i={};for(const[n,r,a]of this._changes)n.panDelta&&(t.panDelta=(t.panDelta||new e.pointGeometry(0,0))._add(n.panDelta)),n.zoomDelta&&(t.zoomDelta=(t.zoomDelta||0)+n.zoomDelta),n.bearingDelta&&(t.bearingDelta=(t.bearingDelta||0)+n.bearingDelta),n.pitchDelta&&(t.pitchDelta=(t.pitchDelta||0)+n.pitchDelta),void 0!==n.around&&(t.around=n.around),void 0!==n.aroundCoord&&(t.aroundCoord=n.aroundCoord),void 0!==n.pinchAround&&(t.pinchAround=n.pinchAround),n.noInertia&&(t.noInertia=n.noInertia),e.extend(o,r),e.extend(i,a);this._updateMapTransform(t,o,i),this._changes=[]}_updateMapTransform(t,o,i){const n=this._map,r=n.transform,a=e=>[e.x,e.y,e.z];if((e=>{const t=this._eventsInProgress.drag;return t&&!this._handlersById[t.handlerName].isActive()})()&&!qn(t)){const e=r.zoom;r.cameraElevationReference="sea",r.recenterOnTerrain(),r.cameraElevationReference="ground",e!==r.zoom&&this._map._update(!0)}if(!qn(t))return this._fireEvents(o,i,!0);let{panDelta:s,zoomDelta:p,bearingDelta:c,pitchDelta:l,around:b,aroundCoord:d,pinchAround:u}=t;void 0!==u&&(b=u),(e=>o.drag&&!this._eventsInProgress.drag)()&&b&&(this._dragOrigin=a(r.pointCoordinate3D(b)),this._trackingEllipsoid.setup(r._camera.position,this._dragOrigin)),r.cameraElevationReference="sea",n._stop(!0),b=b||n.transform.centerPoint,c&&(r.bearing+=c),l&&(r.pitch+=l),r._updateCameraState();const M=[0,0,0];if(s){const e=r.pointCoordinate(b),t=r.pointCoordinate(b.sub(s));e&&t&&(M[0]=t.x-e.x,M[1]=t.y-e.y)}const z=r.zoom,m=[0,0,0];if(p){const t=a(d||r.pointCoordinate3D(b)),o={dir:e.normalize([],e.sub([],t,r._camera.position))};if(o.dir[2]<0){const i=r.zoomDeltaToMovement(t,p);e.scale$2(m,o.dir,i)}}const h=e.add(M,M,m);r._translateCameraConstrained(h),p&&Math.abs(r.zoom-z)>1e-4&&r.recenterOnTerrain(),r.cameraElevationReference="ground",this._map._update(),t.noInertia||this._inertia.record(t),this._fireEvents(o,i,!0)}_fireEvents(t,o,i){const n=An(this._eventsInProgress),r=An(t),a={};for(const e in t){const{originalEvent:o}=t[e];this._eventsInProgress[e]||(a[`${e}start`]=o),this._eventsInProgress[e]=t[e]}!n&&r&&this._fireEvent("movestart",r.originalEvent);for(const e in a)this._fireEvent(e,a[e]);r&&this._fireEvent("move",r.originalEvent);for(const e in t){const{originalEvent:o}=t[e];this._fireEvent(e,o)}const s={};let p;for(const e in this._eventsInProgress){const{handlerName:t,originalEvent:i}=this._eventsInProgress[e];this._handlersById[t].isActive()||(delete this._eventsInProgress[e],p=o[t]||i,s[`${e}end`]=p)}for(const e in s)this._fireEvent(e,s[e]);const c=An(this._eventsInProgress);if(i&&(n||r)&&!c){this._updatingCamera=!0;const t=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),o=e=>0!==e&&-this._bearingSnap{delete this._frameId,this.handleEvent(new _n("renderFrame",{timeStamp:e})),this._applyChanges()}))}_triggerRenderFrame(){void 0===this._frameId&&(this._frameId=this._requestFrame())}}const vn="map.setFreeCameraOptions(...) and map.getFreeCameraOptions() are not yet supported for non-mercator projections.";class xn extends e.Evented{constructor(t,o){super(),this._moving=!1,this._zooming=!1,this.transform=t,this._bearingSnap=o.bearingSnap,e.bindAll(["_renderFrameCallback"],this)}getCenter(){return new e.LngLat(this.transform.center.lng,this.transform.center.lat)}setCenter(e,t){return this.jumpTo({center:e},t)}panBy(t,o,i){return t=e.pointGeometry.convert(t).mult(-1),this.panTo(this.transform.center,e.extend({offset:t},o),i)}panTo(t,o,i){return this.easeTo(e.extend({center:t},o),i)}getZoom(){return this.transform.zoom}setZoom(e,t){return this.jumpTo({zoom:e},t),this}zoomTo(t,o,i){return this.easeTo(e.extend({zoom:t},o),i)}zoomIn(e,t){return this.zoomTo(this.getZoom()+1,e,t),this}zoomOut(e,t){return this.zoomTo(this.getZoom()-1,e,t),this}getBearing(){return this.transform.bearing}setBearing(e,t){return this.jumpTo({bearing:e},t),this}getPadding(){return this.transform.padding}setPadding(e,t){return this.jumpTo({padding:e},t),this}rotateTo(t,o,i){return this.easeTo(e.extend({bearing:t},o),i)}resetNorth(t,o){return this.rotateTo(0,e.extend({duration:1e3},t),o),this}resetNorthPitch(t,o){return this.easeTo(e.extend({bearing:0,pitch:0,duration:1e3},t),o),this}snapToNorth(e,t){return Math.abs(this.getBearing())M=>{if(_&&(i.zoom=e.number(n,p,M)),g&&(i.bearing=e.number(r,c,M)),q&&(i.pitch=e.number(a,l,M)),y&&(i.interpolatePadding(s,b,M),u=i.centerPoint.add(d)),f)i.setLocationAtPoint(f,A);else{const e=i.zoomScale(i.zoom-n),t=p>n?Math.min(2,O):Math.max(.5,O),o=Math.pow(t,1-M),r=i.unproject(m.add(h.mult(M*o)).mult(e));i.setLocationAtPoint(i.renderWorldCopies?r.wrap():r,u)}return t.preloadOnly||this._fireMoveEvents(o),i};if(t.preloadOnly){const e=this._emulate(v,t.duration,i);return this._preloadTiles(e),this}const x={moving:this._moving,zooming:this._zooming,rotating:this._rotating,pitching:this._pitching};return this._zooming=_,this._rotating=g,this._pitching=q,this._padding=y,this._easeId=t.easeId,this._prepareEase(o,t.noMoveStart,x),this._ease(v(i),(e=>{i.recenterOnTerrain(),this._afterEase(o,e)}),t),this}_prepareEase(t,o,i={}){this._moving=!0,this.transform.cameraElevationReference="sea",o||i.moving||this.fire(new e.Event("movestart",t)),this._zooming&&!i.zooming&&this.fire(new e.Event("zoomstart",t)),this._rotating&&!i.rotating&&this.fire(new e.Event("rotatestart",t)),this._pitching&&!i.pitching&&this.fire(new e.Event("pitchstart",t))}_fireMoveEvents(t){this.fire(new e.Event("move",t)),this._zooming&&this.fire(new e.Event("zoom",t)),this._rotating&&this.fire(new e.Event("rotate",t)),this._pitching&&this.fire(new e.Event("pitch",t))}_afterEase(t,o){if(this._easeId&&o&&this._easeId===o)return;delete this._easeId,this.transform.cameraElevationReference="ground";const i=this._zooming,n=this._rotating,r=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,i&&this.fire(new e.Event("zoomend",t)),n&&this.fire(new e.Event("rotateend",t)),r&&this.fire(new e.Event("pitchend",t)),this.fire(new e.Event("moveend",t))}flyTo(t,o){if(!t.essential&&e.exported.prefersReducedMotion){const i=e.pick(t,["center","zoom","bearing","pitch","around"]);return this.jumpTo(i,o)}this.stop(),t=e.extend({offset:[0,0],speed:1.2,curve:1.42,easing:e.ease},t);const i=this.transform,n=this.getZoom(),r=this.getBearing(),a=this.getPitch(),s=this.getPadding(),p="zoom"in t?e.clamp(+t.zoom,i.minZoom,i.maxZoom):n,c="bearing"in t?this._normalizeBearing(t.bearing,r):r,l="pitch"in t?+t.pitch:a,b="padding"in t?t.padding:i.padding,d=i.zoomScale(p-n),u=e.pointGeometry.convert(t.offset);let M=i.centerPoint.add(u);const z=i.pointLocation(M),m=e.LngLat.convert(t.center||z);this._normalizeCenter(m);const h=i.project(z),O=i.project(m).sub(h);let f=t.curve;const A=Math.max(i.width,i.height),_=A/d,g=O.mag();if("minZoom"in t){const o=e.clamp(Math.min(t.minZoom,n,p),i.minZoom,i.maxZoom),r=A/i.zoomScale(o-n);f=Math.sqrt(r/g*2)}const q=f*f;function y(e){const t=(_*_-A*A+(e?-1:1)*q*q*g*g)/(2*(e?_:A)*q*g);return Math.log(Math.sqrt(t*t+1)-t)}function v(e){return(Math.exp(e)-Math.exp(-e))/2}function x(e){return(Math.exp(e)+Math.exp(-e))/2}const W=y(0);let w=function(e){return x(W)/x(W+f*e)},L=function(e){return A*((x(W)*(v(t=W+f*e)/x(t))-v(W))/q)/g;var t},R=(y(1)-W)/f;if(Math.abs(g)<1e-6||!isFinite(R)){if(Math.abs(A-_)<1e-6)return this.easeTo(t,o);const e=_t.maxDuration&&(t.duration=0);const T=r!==c,k=l!==a,B=!i.isPaddingEqual(b),S=i=>d=>{const z=d*R,f=1/w(z);i.zoom=1===d?p:n+i.scaleZoom(f),T&&(i.bearing=e.number(r,c,d)),k&&(i.pitch=e.number(a,l,d)),B&&(i.interpolatePadding(s,b,d),M=i.centerPoint.add(u));const A=1===d?m:i.unproject(h.add(O.mult(L(z))).mult(f));return i.setLocationAtPoint(i.renderWorldCopies?A.wrap():A,M),i._updateCenterElevation(),t.preloadOnly||this._fireMoveEvents(o),i};if(t.preloadOnly){const e=this._emulate(S,t.duration,i);return this._preloadTiles(e),this}return this._zooming=!0,this._rotating=T,this._pitching=k,this._padding=B,this._prepareEase(o,!1),this._ease(S(i),(()=>this._afterEase(o)),t),this}isEasing(){return!!this._easeFrameId}stop(){return this._stop()}_stop(e,t){if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){const e=this._onEaseEnd;delete this._onEaseEnd,e.call(this,t)}if(!e){const e=this.handlers;e&&e.stop(!1)}return this}_ease(t,o,i){!1===i.animate||0===i.duration?(t(1),o()):(this._easeStart=e.exported.now(),this._easeOptions=i,this._onEaseFrame=t,this._onEaseEnd=o,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))}_renderFrameCallback(){const t=Math.min((e.exported.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(t)),t<1?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()}_normalizeBearing(t,o){t=e.wrap(t,-180,180);const i=Math.abs(t-o);return Math.abs(t-360-o)180?-360:o<-180?360:0}_emulate(e,t,o){const i=Math.ceil(15*t/1e3),n=[],r=e(o.clone());for(let e=0;e<=i;e++){const t=r(e/i);n.push(t.clone())}return n}}class Wn{constructor(t={}){this.options=t,e.bindAll(["_toggleAttribution","_updateEditLink","_updateData","_updateCompact"],this)}getDefaultPosition(){return"bottom-right"}onAdd(e){const t=this.options&&this.options.compact;return this._map=e,this._container=a.create("div","mapboxgl-ctrl mapboxgl-ctrl-attrib"),this._compactButton=a.create("button","mapboxgl-ctrl-attrib-button",this._container),a.create("span","mapboxgl-ctrl-icon",this._compactButton).setAttribute("aria-hidden",!0),this._compactButton.type="button",this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=a.create("div","mapboxgl-ctrl-attrib-inner",this._container),this._innerContainer.setAttribute("role","list"),t&&this._container.classList.add("mapboxgl-compact"),this._updateAttributions(),this._updateEditLink(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("moveend",this._updateEditLink),void 0===t&&(this._map.on("resize",this._updateCompact),this._updateCompact()),this._container}onRemove(){this._container.remove(),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("moveend",this._updateEditLink),this._map.off("resize",this._updateCompact),this._map=void 0,this._attribHTML=void 0}_setElementTitle(e,t){const o=this._map._getUIString(`AttributionControl.${t}`);e.setAttribute("aria-label",o),e.removeAttribute("title"),e.firstElementChild&&e.firstElementChild.setAttribute("title",o)}_toggleAttribution(){this._container.classList.contains("mapboxgl-compact-show")?(this._container.classList.remove("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-expanded","false")):(this._container.classList.add("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-expanded","true"))}_updateEditLink(){let t=this._editLink;t||(t=this._editLink=this._container.querySelector(".mapbox-improve-map"));const o=[{key:"owner",value:this.styleOwner},{key:"id",value:this.styleId},{key:"access_token",value:this._map._requestManager._customAccessToken||e.config.ACCESS_TOKEN}];if(t){const i=o.reduce(((e,t,i)=>(t.value&&(e+=`${t.key}=${t.value}${ie.length-t.length)),e=e.filter(((t,o)=>{for(let i=o+1;i=0)return!1;return!0})),this.options.customAttribution&&(Array.isArray(this.options.customAttribution)?e=[...this.options.customAttribution,...e]:e.unshift(this.options.customAttribution));const o=e.join(" | ");o!==this._attribHTML&&(this._attribHTML=o,e.length?(this._innerContainer.innerHTML=o,this._container.classList.remove("mapboxgl-attrib-empty")):this._container.classList.add("mapboxgl-attrib-empty"),this._editLink=null)}_updateCompact(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add("mapboxgl-compact"):this._container.classList.remove("mapboxgl-compact","mapboxgl-compact-show")}}class wn{constructor(){e.bindAll(["_updateLogo"],this),e.bindAll(["_updateCompact"],this)}onAdd(e){this._map=e,this._container=a.create("div","mapboxgl-ctrl");const t=a.create("a","mapboxgl-ctrl-logo");return t.target="_blank",t.rel="noopener nofollow",t.href="https://www.mapbox.com/",t.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),t.setAttribute("rel","noopener nofollow"),this._container.appendChild(t),this._container.style.display="none",this._map.on("sourcedata",this._updateLogo),this._updateLogo(),this._map.on("resize",this._updateCompact),this._updateCompact(),this._container}onRemove(){this._container.remove(),this._map.off("sourcedata",this._updateLogo),this._map.off("resize",this._updateCompact)}getDefaultPosition(){return"bottom-left"}_updateLogo(e){e&&"metadata"!==e.sourceDataType||(this._container.style.display=this._logoRequired()?"block":"none")}_logoRequired(){if(!this._map.style)return!0;const e=this._map.style._sourceCaches;if(0===Object.entries(e).length)return!0;for(const t in e){const o=e[t].getSource();if(o.hasOwnProperty("mapbox_logo")&&!o.mapbox_logo)return!1}return!0}_updateCompact(){const e=this._container.children;if(e.length){const t=e[0];this._map.getCanvasContainer().offsetWidth<250?t.classList.add("mapboxgl-compact"):t.classList.remove("mapboxgl-compact")}}}class Ln{constructor(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1}add(e){const t=++this._id;return this._queue.push({callback:e,id:t,cancelled:!1}),t}remove(e){const t=this._currentlyRunning,o=t?this._queue.concat(t):this._queue;for(const t of o)if(t.id===e)return void(t.cancelled=!0)}run(e=0){const t=this._currentlyRunning=this._queue;this._queue=[];for(const o of t)if(!o.cancelled&&(o.callback(e),this._cleared))break;this._cleared=!1,this._currentlyRunning=!1}clear(){this._currentlyRunning&&(this._cleared=!0),this._queue=[]}}function Rn(t,o,i){if(t=new e.LngLat(t.lng,t.lat),o){const n=new e.LngLat(t.lng-360,t.lat),r=new e.LngLat(t.lng+360,t.lat),a=360*Math.ceil(Math.abs(t.lng-i.center.lng)/360),s=i.locationPoint(t).distSqr(o),p=o.x<0||o.y<0||o.x>i.width||o.y>i.height;i.locationPoint(n).distSqr(o)180;){const e=i.locationPoint(t);if(e.x>=0&&e.y>=0&&e.x<=i.width&&e.y<=i.height)break;t.lng>i.center.lng?t.lng-=360:t.lng+=360}return t}const Tn={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};class kn extends e.Evented{constructor(t,o){if(super(),(t instanceof e.window.HTMLElement||o)&&(t=e.extend({element:t},o)),e.bindAll(["_update","_onMove","_onUp","_addDragHandler","_onMapClick","_onKeyPress","_clearFadeTimer"],this),this._anchor=t&&t.anchor||"center",this._color=t&&t.color||"#3FB1CE",this._scale=t&&t.scale||1,this._draggable=t&&t.draggable||!1,this._clickTolerance=t&&t.clickTolerance||0,this._isDragging=!1,this._state="inactive",this._rotation=t&&t.rotation||0,this._rotationAlignment=t&&t.rotationAlignment||"auto",this._pitchAlignment=t&&t.pitchAlignment&&"auto"!==t.pitchAlignment?t.pitchAlignment:this._rotationAlignment,this._updateMoving=()=>this._update(!0),t&&t.element)this._element=t.element,this._offset=e.pointGeometry.convert(t&&t.offset||[0,0]);else{this._defaultMarker=!0,this._element=a.create("div");const o=41,i=27,n=a.createSVG("svg",{display:"block",height:o*this._scale+"px",width:i*this._scale+"px",viewBox:`0 0 ${i} ${o}`},this._element),r=a.createSVG("radialGradient",{id:"shadowGradient"},a.createSVG("defs",{},n));a.createSVG("stop",{offset:"10%","stop-opacity":.4},r),a.createSVG("stop",{offset:"100%","stop-opacity":.05},r),a.createSVG("ellipse",{cx:13.5,cy:34.8,rx:10.5,ry:5.25,fill:"url(#shadowGradient)"},n),a.createSVG("path",{fill:this._color,d:"M27,13.5C27,19.07 20.25,27 14.75,34.5C14.02,35.5 12.98,35.5 12.25,34.5C6.75,27 0,19.22 0,13.5C0,6.04 6.04,0 13.5,0C20.96,0 27,6.04 27,13.5Z"},n),a.createSVG("path",{opacity:.25,d:"M13.5,0C6.04,0 0,6.04 0,13.5C0,19.22 6.75,27 12.25,34.5C13,35.52 14.02,35.5 14.75,34.5C20.25,27 27,19.07 27,13.5C27,6.04 20.96,0 13.5,0ZM13.5,1C20.42,1 26,6.58 26,13.5C26,15.9 24.5,19.18 22.22,22.74C19.95,26.3 16.71,30.14 13.94,33.91C13.74,34.18 13.61,34.32 13.5,34.44C13.39,34.32 13.26,34.18 13.06,33.91C10.28,30.13 7.41,26.31 5.02,22.77C2.62,19.23 1,15.95 1,13.5C1,6.58 6.58,1 13.5,1Z"},n),a.createSVG("circle",{fill:"white",cx:13.5,cy:13.5,r:5.5},n),this._offset=e.pointGeometry.convert(t&&t.offset||[0,-14])}this._element.hasAttribute("aria-label")||this._element.setAttribute("aria-label","Map marker"),this._element.classList.add("mapboxgl-marker"),this._element.addEventListener("dragstart",(e=>{e.preventDefault()})),this._element.addEventListener("mousedown",(e=>{e.preventDefault()}));const i=this._element.classList;for(const e in Tn)i.remove(`mapboxgl-marker-anchor-${e}`);i.add(`mapboxgl-marker-anchor-${this._anchor}`),this._popup=null}addTo(e){return e===this._map||(this.remove(),this._map=e,e.getCanvasContainer().appendChild(this._element),e.on("move",this._updateMoving),e.on("moveend",this._update),e.on("remove",this._clearFadeTimer),e._addMarker(this),this.setDraggable(this._draggable),this._update(),this._map.on("click",this._onMapClick)),this}remove(){return this._map&&(this._map.off("click",this._onMapClick),this._map.off("move",this._updateMoving),this._map.off("moveend",this._update),this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler),this._map.off("mouseup",this._onUp),this._map.off("touchend",this._onUp),this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),this._map.off("remove",this._clearFadeTimer),this._map._removeMarker(this),delete this._map),this._clearFadeTimer(),this._element.remove(),this._popup&&this._popup.remove(),this}getLngLat(){return this._lngLat}setLngLat(t){return this._lngLat=e.LngLat.convert(t),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(!0),this}getElement(){return this._element}setPopup(e){if(this._popup&&(this._popup.remove(),this._popup=null,this._element.removeAttribute("role"),this._element.removeEventListener("keypress",this._onKeyPress),this._originalTabIndex||this._element.removeAttribute("tabindex")),e){if(!("offset"in e.options)){const t=38.1,o=13.5,i=Math.sqrt(Math.pow(o,2)/2);e.options.offset=this._defaultMarker?{top:[0,0],"top-left":[0,0],"top-right":[0,0],bottom:[0,-t],"bottom-left":[i,-1*(t-o+i)],"bottom-right":[-i,-1*(t-o+i)],left:[o,-1*(t-o)],right:[-o,-1*(t-o)]}:this._offset}this._popup=e,this._lngLat&&this._popup.setLngLat(this._lngLat),this._element.setAttribute("role","button"),this._originalTabIndex=this._element.getAttribute("tabindex"),this._originalTabIndex||this._element.setAttribute("tabindex","0"),this._element.addEventListener("keypress",this._onKeyPress),this._element.setAttribute("aria-expanded","false")}return this}_onKeyPress(e){const t=e.code,o=e.charCode||e.keyCode;"Space"!==t&&"Enter"!==t&&32!==o&&13!==o||this.togglePopup()}_onMapClick(e){const t=e.originalEvent.target,o=this._element;this._popup&&(t===o||o.contains(t))&&this.togglePopup()}getPopup(){return this._popup}togglePopup(){const e=this._popup;return e?(e.isOpen()?(e.remove(),this._element.setAttribute("aria-expanded","false")):(e.addTo(this._map),this._element.setAttribute("aria-expanded","true")),this):this}_evaluateOpacity(){const e=this._pos?this._pos.sub(this._transformedOffset()):null;if(!this._withinScreenBounds(e))return void this._clearFadeTimer();const t=this._map.unproject(e);let o=!1;if(this._map.transform._terrainEnabled()&&this._map.getTerrain()){const e=this._map.getFreeCameraOptions();if(e.position){const i=e.position.toLngLat();o=i.distanceTo(t)<.9*i.distanceTo(this._lngLat)}}const i=(1-this._map._queryFogOpacity(t))*(o?.2:1);this._element.style.opacity=`${i}`,this._popup&&this._popup._setOpacity(`${i}`),this._fadeTimer=null}_clearFadeTimer(){this._fadeTimer&&(clearTimeout(this._fadeTimer),this._fadeTimer=null)}_withinScreenBounds(e){const t=this._map.transform;return!!e&&e.x>=0&&e.x=0&&e.y{this._element&&this._pos&&this._anchor&&(this._pos=this._pos.round(),this._updateDOM())})):this._pos=this._pos.round(),this._map._requestDomTask((()=>{this._map&&(this._element&&this._pos&&this._anchor&&this._updateDOM(),!this._map.getTerrain()&&!this._map.getFog()||this._fadeTimer||(this._fadeTimer=setTimeout(this._evaluateOpacity.bind(this),60)))})))}_transformedOffset(){if(!this._defaultMarker)return this._offset;const e=this._map.transform,t=this._offset.mult(this._scale);return"map"===this._rotationAlignment&&t._rotate(e.angle),"map"===this._pitchAlignment&&(t.y*=Math.cos(e._pitch)),t}getOffset(){return this._offset}setOffset(t){return this._offset=e.pointGeometry.convert(t),this._update(),this}_onMove(t){if(!this._isDragging){const e=this._clickTolerance||this._map._clickTolerance;this._isDragging=t.point.dist(this._pointerdownPos)>=e}this._isDragging&&(this._pos=t.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none","pending"===this._state&&(this._state="active",this.fire(new e.Event("dragstart"))),this.fire(new e.Event("drag")))}_onUp(){this._element.style.pointerEvents="auto",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1,this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),"active"===this._state&&this.fire(new e.Event("dragend")),this._state="inactive"}_addDragHandler(e){this._element.contains(e.originalEvent.target)&&(e.preventDefault(),this._positionDelta=e.point.sub(this._pos).add(this._transformedOffset()),this._pointerdownPos=e.point,this._state="pending",this._map.on("mousemove",this._onMove),this._map.on("touchmove",this._onMove),this._map.once("mouseup",this._onUp),this._map.once("touchend",this._onUp))}setDraggable(e){return this._draggable=!!e,this._map&&(e?(this._map.on("mousedown",this._addDragHandler),this._map.on("touchstart",this._addDragHandler)):(this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler))),this}isDraggable(){return this._draggable}setRotation(e){return this._rotation=e||0,this._update(),this}getRotation(){return this._rotation}setRotationAlignment(e){return this._rotationAlignment=e||"auto",this._update(),this}getRotationAlignment(){return this._rotationAlignment}setPitchAlignment(e){return this._pitchAlignment=e&&"auto"!==e?e:this._rotationAlignment,this._update(),this}getPitchAlignment(){return this._pitchAlignment}}class Bn{constructor(e){this.jumpTo(e)}getValue(t){if(t<=this._startTime)return this._start;if(t>=this._endTime)return this._end;const o=e.easeCubicInOut((t-this._startTime)/(this._endTime-this._startTime));return this._start*(1-o)+this._end*o}isEasing(e){return e>=this._startTime&&e<=this._endTime}jumpTo(e){this._startTime=-1/0,this._endTime=-1/0,this._start=e,this._end=e}easeTo(e,t,o){this._start=this.getValue(t),this._end=e,this._startTime=t,this._endTime=t+o}}const Sn={"AttributionControl.ToggleAttribution":"Toggle attribution","AttributionControl.MapFeedback":"Map feedback","FullscreenControl.Enter":"Enter fullscreen","FullscreenControl.Exit":"Exit fullscreen","GeolocateControl.FindMyLocation":"Find my location","GeolocateControl.LocationNotAvailable":"Location not available","LogoControl.Title":"Mapbox logo","NavigationControl.ResetBearing":"Reset bearing to north","NavigationControl.ZoomIn":"Zoom in","NavigationControl.ZoomOut":"Zoom out","ScaleControl.Feet":"ft","ScaleControl.Meters":"m","ScaleControl.Kilometers":"km","ScaleControl.Miles":"mi","ScaleControl.NauticalMiles":"nm","ScrollZoomBlocker.CtrlMessage":"Use ctrl + scroll to zoom the map","ScrollZoomBlocker.CmdMessage":"Use ⌘ + scroll to zoom the map","TouchPanBlocker.Message":"Use two fingers to move the map"},{HTMLImageElement:Xn,HTMLElement:En,ImageBitmap:Dn}=e.window,Cn={center:[0,0],zoom:0,bearing:0,pitch:0,minZoom:-2,maxZoom:22,minPitch:0,maxPitch:85,interactive:!0,scrollZoom:!0,boxZoom:!0,dragRotate:!0,dragPan:!0,keyboard:!0,doubleClickZoom:!0,touchZoomRotate:!0,touchPitch:!0,cooperativeGestures:!1,bearingSnap:7,clickTolerance:3,pitchWithRotate:!0,hash:!1,attributionControl:!0,failIfMajorPerformanceCaveat:!1,preserveDrawingBuffer:!1,trackResize:!0,optimizeForTerrain:!0,renderWorldCopies:!0,refreshExpiredTiles:!0,maxTileCacheSize:null,localIdeographFontFamily:"sans-serif",localFontFamily:null,transformRequest:null,accessToken:null,fadeDuration:300,crossSourceCollisions:!0};function Nn(e){e.parentNode&&e.parentNode.removeChild(e)}const Pn={showCompass:!0,showZoom:!0,visualizePitch:!1};class In{constructor(t,o,i=!1){this._clickTolerance=10,this.element=o,this.mouseRotate=new Ki({clickTolerance:t.dragRotate._mouseRotate._clickTolerance}),this.map=t,i&&(this.mousePitch=new Ji({clickTolerance:t.dragRotate._mousePitch._clickTolerance})),e.bindAll(["mousedown","mousemove","mouseup","touchstart","touchmove","touchend","reset"],this),o.addEventListener("mousedown",this.mousedown),o.addEventListener("touchstart",this.touchstart,{passive:!1}),o.addEventListener("touchmove",this.touchmove),o.addEventListener("touchend",this.touchend),o.addEventListener("touchcancel",this.reset)}down(e,t){this.mouseRotate.mousedown(e,t),this.mousePitch&&this.mousePitch.mousedown(e,t),a.disableDrag()}move(e,t){const o=this.map,i=this.mouseRotate.mousemoveWindow(e,t);if(i&&i.bearingDelta&&o.setBearing(o.getBearing()+i.bearingDelta),this.mousePitch){const i=this.mousePitch.mousemoveWindow(e,t);i&&i.pitchDelta&&o.setPitch(o.getPitch()+i.pitchDelta)}}off(){const e=this.element;e.removeEventListener("mousedown",this.mousedown),e.removeEventListener("touchstart",this.touchstart,{passive:!1}),e.removeEventListener("touchmove",this.touchmove),e.removeEventListener("touchend",this.touchend),e.removeEventListener("touchcancel",this.reset),this.offTemp()}offTemp(){a.enableDrag(),e.window.removeEventListener("mousemove",this.mousemove),e.window.removeEventListener("mouseup",this.mouseup)}mousedown(t){this.down(e.extend({},t,{ctrlKey:!0,preventDefault:()=>t.preventDefault()}),a.mousePos(this.element,t)),e.window.addEventListener("mousemove",this.mousemove),e.window.addEventListener("mouseup",this.mouseup)}mousemove(e){this.move(e,a.mousePos(this.element,e))}mouseup(e){this.mouseRotate.mouseupWindow(e),this.mousePitch&&this.mousePitch.mouseupWindow(e),this.offTemp()}touchstart(e){1!==e.targetTouches.length?this.reset():(this._startPos=this._lastPos=a.touchPos(this.element,e.targetTouches)[0],this.down({type:"mousedown",button:0,ctrlKey:!0,preventDefault:()=>e.preventDefault()},this._startPos))}touchmove(e){1!==e.targetTouches.length?this.reset():(this._lastPos=a.touchPos(this.element,e.targetTouches)[0],this.move({preventDefault:()=>e.preventDefault()},this._lastPos))}touchend(e){0===e.targetTouches.length&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos)5280?Gn(t,i,o/5280,e._getUIString("ScaleControl.Miles"),e):Gn(t,i,o,e._getUIString("ScaleControl.Feet"),e)}else o&&"nautical"===o.unit?Gn(t,i,s/1852,e._getUIString("ScaleControl.NauticalMiles"),e):s>=1e3?Gn(t,i,s/1e3,e._getUIString("ScaleControl.Kilometers"),e):Gn(t,i,s,e._getUIString("ScaleControl.Meters"),e)}function Gn(e,t,o,i,n){const r=function(e){const t=Math.pow(10,`${Math.floor(e)}`.length-1);let o=e/t;return o=o>=10?10:o>=5?5:o>=3?3:o>=2?2:o>=1?1:function(e){const t=Math.pow(10,Math.ceil(-Math.log(e)/Math.LN10));return Math.round(e*t)/t}(o),t*o}(o),a=r/o;n._requestDomTask((()=>{e.style.width=t*a+"px",e.innerHTML=`${r} ${i}`}))}const Zn={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px"},$n=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", "),Kn={version:e.version,supported:t,setRTLTextPlugin:e.setRTLTextPlugin,getRTLTextPluginStatus:e.getRTLTextPluginStatus,Map:class extends xn{constructor(t){if(null!=(t=e.extend({},Cn,t)).minZoom&&null!=t.maxZoom&&t.minZoom>t.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(null!=t.minPitch&&null!=t.maxPitch&&t.minPitch>t.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(null!=t.minPitch&&t.minPitch<0)throw new Error("minPitch must be greater than or equal to 0");if(null!=t.maxPitch&&t.maxPitch>85)throw new Error("maxPitch must be less than or equal to 85");if(super(new Wi(t.minZoom,t.maxZoom,t.minPitch,t.maxPitch,t.renderWorldCopies),t),this._interactive=t.interactive,this._minTileCacheSize=t.minTileCacheSize,this._maxTileCacheSize=t.maxTileCacheSize,this._failIfMajorPerformanceCaveat=t.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=t.preserveDrawingBuffer,this._antialias=t.antialias,this._trackResize=t.trackResize,this._bearingSnap=t.bearingSnap,this._refreshExpiredTiles=t.refreshExpiredTiles,this._fadeDuration=t.fadeDuration,this._isInitialLoad=!0,this._crossSourceCollisions=t.crossSourceCollisions,this._crossFadingFactor=1,this._collectResourceTiming=t.collectResourceTiming,this._optimizeForTerrain=t.optimizeForTerrain,this._renderTaskQueue=new Ln,this._domRenderTaskQueue=new Ln,this._controls=[],this._markers=[],this._mapId=e.uniqueId(),this._locale=e.extend({},Sn,t.locale),this._clickTolerance=t.clickTolerance,this._cooperativeGestures=t.cooperativeGestures,this._containerWidth=0,this._containerHeight=0,this._averageElevationLastSampledAt=-1/0,this._averageElevation=new Bn(0),this._requestManager=new e.RequestManager(t.transformRequest,t.accessToken,t.testMode),this._silenceAuthErrors=!!t.testMode,"string"==typeof t.container){if(this._container=e.window.document.getElementById(t.container),!this._container)throw new Error(`Container '${t.container}' not found.`)}else{if(!(t.container instanceof En))throw new Error("Invalid type: 'container' must be a String or HTMLElement.");this._container=t.container}if(this._container.childNodes.length>0&&e.warnOnce("The map container element should be empty, otherwise the map's interactivity will be negatively impacted. If you want to display a message when WebGL is not supported, use the Mapbox GL Supported plugin instead."),t.maxBounds&&this.setMaxBounds(t.maxBounds),e.bindAll(["_onWindowOnline","_onWindowResize","_onMapScroll","_contextLost","_contextRestored"],this),this._setupContainer(),this._setupPainter(),void 0===this.painter)throw new Error("Failed to initialize WebGL.");this.on("move",(()=>this._update(!1))),this.on("moveend",(()=>this._update(!1))),this.on("zoom",(()=>this._update(!0))),void 0!==e.window&&(e.window.addEventListener("online",this._onWindowOnline,!1),e.window.addEventListener("resize",this._onWindowResize,!1),e.window.addEventListener("orientationchange",this._onWindowResize,!1),e.window.addEventListener("webkitfullscreenchange",this._onWindowResize,!1)),this.handlers=new yn(this,t),this._localFontFamily=t.localFontFamily,this._localIdeographFontFamily=t.localIdeographFontFamily,t.style&&this.setStyle(t.style,{localFontFamily:this._localFontFamily,localIdeographFontFamily:this._localIdeographFontFamily}),t.projection&&this.setProjection(t.projection),this._hash=t.hash&&new Li("string"==typeof t.hash&&t.hash||void 0).addTo(this),this._hash&&this._hash._onHashChange()||(this.jumpTo({center:t.center,zoom:t.zoom,bearing:t.bearing,pitch:t.pitch}),t.bounds&&(this.resize(),this.fitBounds(t.bounds,e.extend({},t.fitBoundsOptions,{duration:0})))),this.resize(),t.attributionControl&&this.addControl(new Wn({customAttribution:t.customAttribution})),this._logoControl=new wn,this.addControl(this._logoControl,t.logoPosition),this.on("style.load",(()=>{this.transform.unmodified&&this.jumpTo(this.style.stylesheet)})),this.on("data",(t=>{this._update("style"===t.dataType),this.fire(new e.Event(`${t.dataType}data`,t))})),this.on("dataloading",(t=>{this.fire(new e.Event(`${t.dataType}dataloading`,t))}))}_getMapId(){return this._mapId}addControl(t,o){if(void 0===o&&(o=t.getDefaultPosition?t.getDefaultPosition():"top-right"),!t||!t.onAdd)return this.fire(new e.ErrorEvent(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));const i=t.onAdd(this);this._controls.push(t);const n=this._controlPositions[o];return-1!==o.indexOf("bottom")?n.insertBefore(i,n.firstChild):n.appendChild(i),this}removeControl(t){if(!t||!t.onRemove)return this.fire(new e.ErrorEvent(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));const o=this._controls.indexOf(t);return o>-1&&this._controls.splice(o,1),t.onRemove(this),this}hasControl(e){return this._controls.indexOf(e)>-1}getContainer(){return this._container}getCanvasContainer(){return this._canvasContainer}getCanvas(){return this._canvas}resize(t){if(this._updateContainerDimensions(),this._containerWidth===this.transform.width&&this._containerHeight===this.transform.height)return this;this._resizeCanvas(this._containerWidth,this._containerHeight),this.transform.resize(this._containerWidth,this._containerHeight),this.painter.resize(Math.ceil(this._containerWidth),Math.ceil(this._containerHeight));const o=!this._moving;return o&&this.fire(new e.Event("movestart",t)).fire(new e.Event("move",t)),this.fire(new e.Event("resize",t)),o&&this.fire(new e.Event("moveend",t)),this}getBounds(){return this.transform.getBounds()}getMaxBounds(){return this.transform.getMaxBounds()||null}setMaxBounds(t){return this.transform.setMaxBounds(e.LngLatBounds.convert(t)),this._update()}setMinZoom(t){if((t=null==t?-2:t)>=-2&&t<=this.transform.maxZoom)return this.transform.minZoom=t,this._update(),this.getZoom()=this.transform.minZoom)return this.transform.maxZoom=t,this._update(),this.getZoom()>t?this.setZoom(t):this.fire(new e.Event("zoomstart")).fire(new e.Event("zoom")).fire(new e.Event("zoomend")),this;throw new Error("maxZoom must be greater than the current minZoom")}getMaxZoom(){return this.transform.maxZoom}setMinPitch(t){if((t=null==t?0:t)<0)throw new Error("minPitch must be greater than or equal to 0");if(t>=0&&t<=this.transform.maxPitch)return this.transform.minPitch=t,this._update(),this.getPitch()85)throw new Error("maxPitch must be less than or equal to 85");if(t>=this.transform.minPitch)return this.transform.maxPitch=t,this._update(),this.getPitch()>t?this.setPitch(t):this.fire(new e.Event("pitchstart")).fire(new e.Event("pitch")).fire(new e.Event("pitchend")),this;throw new Error("maxPitch must be greater than the current minPitch")}getMaxPitch(){return this.transform.maxPitch}getRenderWorldCopies(){return this.transform.renderWorldCopies}setRenderWorldCopies(e){return this.transform.renderWorldCopies=e,this._update()}getProjection(){return this.transform.getProjection()}setProjection(e){return this._lazyInitEmptyStyle(),"string"==typeof e&&(e={name:e}),this._runtimeProjection=e,this.style.updateProjection(),this._transitionFromGlobe=!1,this}project(t){return this.transform.locationPoint3D(e.LngLat.convert(t))}unproject(t){return this.transform.pointLocation3D(e.pointGeometry.convert(t))}isMoving(){return this._moving||this.handlers&&this.handlers.isMoving()}isZooming(){return this._zooming||this.handlers&&this.handlers.isZooming()}isRotating(){return this._rotating||this.handlers&&this.handlers.isRotating()}_createDelegatedListener(e,t,o){if("mouseenter"===e||"mouseover"===e){let i=!1;const n=n=>{const r=t.filter((e=>this.getLayer(e))),a=r.length?this.queryRenderedFeatures(n.point,{layers:r}):[];a.length?i||(i=!0,o.call(this,new Ci(e,this,n.originalEvent,{features:a}))):i=!1},r=()=>{i=!1};return{layers:new Set(t),listener:o,delegates:{mousemove:n,mouseout:r}}}if("mouseleave"===e||"mouseout"===e){let i=!1;const n=n=>{const r=t.filter((e=>this.getLayer(e)));(r.length?this.queryRenderedFeatures(n.point,{layers:r}):[]).length?i=!0:i&&(i=!1,o.call(this,new Ci(e,this,n.originalEvent)))},r=t=>{i&&(i=!1,o.call(this,new Ci(e,this,t.originalEvent)))};return{layers:new Set(t),listener:o,delegates:{mousemove:n,mouseout:r}}}{const i=e=>{const i=t.filter((e=>this.getLayer(e))),n=i.length?this.queryRenderedFeatures(e.point,{layers:i}):[];n.length&&(e.features=n,o.call(this,e),delete e.features)};return{layers:new Set(t),listener:o,delegates:{[e]:i}}}}on(e,t,o){if(void 0===o)return super.on(e,t);Array.isArray(t)||(t=[t]);const i=this._createDelegatedListener(e,t,o);this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[e]=this._delegatedListeners[e]||[],this._delegatedListeners[e].push(i);for(const e in i.delegates)this.on(e,i.delegates[e]);return this}once(e,t,o){if(void 0===o)return super.once(e,t);Array.isArray(t)||(t=[t]);const i=this._createDelegatedListener(e,t,o);for(const e in i.delegates)this.once(e,i.delegates[e]);return this}off(e,t,o){if(void 0===o)return super.off(e,t);t=new Set(Array.isArray(t)?t:[t]);const i=(e,t)=>{if(e.size!==t.size)return!1;for(const o of e)if(!t.has(o))return!1;return!0},n=this._delegatedListeners?this._delegatedListeners[e]:void 0;return n&&(e=>{for(let n=0;n{t?this.fire(new e.ErrorEvent(t)):i&&this._updateDiff(i,o)}))}else"object"==typeof t&&this._updateDiff(t,o)}_updateDiff(t,o){try{this.style.setState(t)&&this._update(!0)}catch(i){e.warnOnce(`Unable to perform style diff: ${i.message||i.error||i}. Rebuilding the style from scratch.`),this._updateStyle(t,o)}}getStyle(){if(this.style)return this.style.serialize()}isStyleLoaded(){return this.style?this.style.loaded():e.warnOnce("There is no style added to the map.")}addSource(e,t){return this._lazyInitEmptyStyle(),this.style.addSource(e,t),this._update(!0)}isSourceLoaded(t){const o=this.style&&this.style._getSourceCaches(t);if(0!==o.length)return o.every((e=>e.loaded()));this.fire(new e.ErrorEvent(new Error(`There is no source with ID '${t}'`)))}areTilesLoaded(){const e=this.style&&this.style._sourceCaches;for(const t in e){const o=e[t]._tiles;for(const e in o){const t=o[e];if("loaded"!==t.state&&"errored"!==t.state)return!1}}return!0}addSourceType(e,t,o){return this._lazyInitEmptyStyle(),this.style.addSourceType(e,t,o)}removeSource(e){return this.style.removeSource(e),this._updateTerrain(),this._update(!0)}getSource(e){return this.style.getSource(e)}addImage(t,o,{pixelRatio:i=1,sdf:n=!1,stretchX:r,stretchY:a,content:s}={}){if(this._lazyInitEmptyStyle(),o instanceof Xn||Dn&&o instanceof Dn){const{width:p,height:c,data:l}=e.exported.getImageData(o);this.style.addImage(t,{data:new e.RGBAImage({width:p,height:c},l),pixelRatio:i,stretchX:r,stretchY:a,content:s,sdf:n,version:0})}else{if(void 0===o.width||void 0===o.height)return this.fire(new e.ErrorEvent(new Error("Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));{const{width:p,height:c,data:l}=o,b=o;this.style.addImage(t,{data:new e.RGBAImage({width:p,height:c},new Uint8Array(l)),pixelRatio:i,stretchX:r,stretchY:a,content:s,sdf:n,version:0,userImage:b}),b.onAdd&&b.onAdd(this,t)}}}updateImage(t,o){const i=this.style.getImage(t);if(!i)return this.fire(new e.ErrorEvent(new Error("The map has no image with that id. If you are adding a new image use `map.addImage(...)` instead.")));const n=o instanceof Xn||Dn&&o instanceof Dn?e.exported.getImageData(o):o,{width:r,height:a,data:s}=n;return void 0===r||void 0===a?this.fire(new e.ErrorEvent(new Error("Invalid arguments to map.updateImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`"))):r!==i.data.width||a!==i.data.height?this.fire(new e.ErrorEvent(new Error("The width and height of the updated image must be that same as the previous version of the image"))):(i.data.replace(s,!(o instanceof Xn||Dn&&o instanceof Dn)),void this.style.updateImage(t,i))}hasImage(t){return t?!!this.style.getImage(t):(this.fire(new e.ErrorEvent(new Error("Missing required image id"))),!1)}removeImage(e){this.style.removeImage(e)}loadImage(t,o){e.getImage(this._requestManager.transformRequest(t,e.ResourceType.Image),((t,i)=>{o(t,i instanceof Xn?e.exported.getImageData(i):i)}))}listImages(){return this.style.listImages()}addLayer(e,t){return this._lazyInitEmptyStyle(),this.style.addLayer(e,t),this._update(!0)}moveLayer(e,t){return this.style.moveLayer(e,t),this._update(!0)}removeLayer(e){return this.style.removeLayer(e),this._update(!0)}getLayer(e){return this.style.getLayer(e)}setLayerZoomRange(e,t,o){return this.style.setLayerZoomRange(e,t,o),this._update(!0)}setFilter(e,t,o={}){return this.style.setFilter(e,t,o),this._update(!0)}getFilter(e){return this.style.getFilter(e)}setPaintProperty(e,t,o,i={}){return this.style.setPaintProperty(e,t,o,i),this._update(!0)}getPaintProperty(e,t){return this.style.getPaintProperty(e,t)}setLayoutProperty(e,t,o,i={}){return this.style.setLayoutProperty(e,t,o,i),this._update(!0)}getLayoutProperty(e,t){return this.style.getLayoutProperty(e,t)}setLight(e,t={}){return this._lazyInitEmptyStyle(),this.style.setLight(e,t),this._update(!0)}getLight(){return this.style.getLight()}setTerrain(e){return this._lazyInitEmptyStyle(),!e&&this.transform.projection.requiresDraping?this.style.setTerrainForDraping():this.style.setTerrain(e),this._averageElevationLastSampledAt=-1/0,this._update(!0)}_updateProjection(){"globe"===this.transform.projection.name&&this.transform.zoom>=e.GLOBE_ZOOM_THRESHOLD_MAX&&!this._transitionFromGlobe&&(this.setProjection({name:"mercator"}),this._transitionFromGlobe=!0)}getTerrain(){return this.style?this.style.getTerrain():null}setFog(e){return this._lazyInitEmptyStyle(),this.style.setFog(e),this._update(!0)}getFog(){return this.style?this.style.getFog():null}_queryFogOpacity(t){return this.style&&this.style.fog?this.style.fog.getOpacityAtLatLng(e.LngLat.convert(t),this.transform):0}setFeatureState(e,t){return this.style.setFeatureState(e,t),this._update()}removeFeatureState(e,t){return this.style.removeFeatureState(e,t),this._update()}getFeatureState(e){return this.style.getFeatureState(e)}_updateContainerDimensions(){if(!this._container)return;const t=this._container.getBoundingClientRect().width||400,o=this._container.getBoundingClientRect().height||300;let i,n=this._container;for(;n&&!i;){const t=e.window.getComputedStyle(n).transform;t&&"none"!==t&&(i=t.match(/matrix.*\((.+)\)/)[1].split(", ")),n=n.parentElement}i?(this._containerWidth=i[0]&&"0"!==i[0]?Math.abs(t/i[0]):t,this._containerHeight=i[3]&&"0"!==i[3]?Math.abs(o/i[3]):o):(this._containerWidth=t,this._containerHeight=o)}_detectMissingCSS(){"rgb(250, 128, 114)"!==e.window.getComputedStyle(this._missingCSSCanary).getPropertyValue("background-color")&&e.warnOnce("This page appears to be missing CSS declarations for Mapbox GL JS, which may cause the map to display incorrectly. Please ensure your page includes mapbox-gl.css, as described in https://www.mapbox.com/mapbox-gl-js/api/.")}_setupContainer(){const e=this._container;e.classList.add("mapboxgl-map"),(this._missingCSSCanary=a.create("div","mapboxgl-canary",e)).style.visibility="hidden",this._detectMissingCSS();const t=this._canvasContainer=a.create("div","mapboxgl-canvas-container",e);this._interactive&&t.classList.add("mapboxgl-interactive"),this._canvas=a.create("canvas","mapboxgl-canvas",t),this._canvas.addEventListener("webglcontextlost",this._contextLost,!1),this._canvas.addEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.setAttribute("tabindex","0"),this._canvas.setAttribute("aria-label","Map"),this._canvas.setAttribute("role","region"),this._updateContainerDimensions(),this._resizeCanvas(this._containerWidth,this._containerHeight);const o=this._controlContainer=a.create("div","mapboxgl-control-container",e),i=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach((e=>{i[e]=a.create("div",`mapboxgl-ctrl-${e}`,o)})),this._container.addEventListener("scroll",this._onMapScroll,!1)}_resizeCanvas(t,o){const i=e.exported.devicePixelRatio||1;this._canvas.width=i*Math.ceil(t),this._canvas.height=i*Math.ceil(o),this._canvas.style.width=`${t}px`,this._canvas.style.height=`${o}px`}_addMarker(e){this._markers.push(e)}_removeMarker(e){const t=this._markers.indexOf(e);-1!==t&&this._markers.splice(t,1)}_setupPainter(){const o=e.extend({},t.webGLContextAttributes,{failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1}),i=this._canvas.getContext("webgl",o)||this._canvas.getContext("experimental-webgl",o);i?(e.storeAuthState(i,!0),this.painter=new ui(i,this.transform),this.on("data",(e=>{"source"===e.dataType&&this.painter.setTileLoadedFlag(!0)})),e.exported$1.testSupport(i)):this.fire(new e.ErrorEvent(new Error("Failed to initialize WebGL")))}_contextLost(t){t.preventDefault(),this._frame&&(this._frame.cancel(),this._frame=null),this.fire(new e.Event("webglcontextlost",{originalEvent:t}))}_contextRestored(t){this._setupPainter(),this.resize(),this._update(),this.fire(new e.Event("webglcontextrestored",{originalEvent:t}))}_onMapScroll(e){if(e.target===this._container)return this._container.scrollTop=0,this._container.scrollLeft=0,!1}loaded(){return!this._styleDirty&&!this._sourcesDirty&&!!this.style&&this.style.loaded()}_update(e){return this.style?(this._styleDirty=this._styleDirty||e,this._sourcesDirty=!0,this.triggerRepaint(),this):this}_requestRenderFrame(e){return this._update(),this._renderTaskQueue.add(e)}_cancelRenderFrame(e){this._renderTaskQueue.remove(e)}_requestDomTask(e){!this.loaded()||this.loaded()&&!this.isMoving()?e():this._domRenderTaskQueue.add(e)}_render(t){let o;const i=this.painter.context.extTimerQuery,n=e.exported.now();this.listens("gpu-timing-frame")&&(o=i.createQueryEXT(),i.beginQueryEXT(i.TIME_ELAPSED_EXT,o));let r=this._updateAverageElevation(n);if(this.painter.context.setDirty(),this.painter.setBaseState(),this._renderTaskQueue.run(t),this._domRenderTaskQueue.run(t),this._removed)return;this._updateProjection();let a=!1;const s=this._isInitialLoad?0:this._fadeDuration;if(this.style&&this._styleDirty){this._styleDirty=!1;const t=this.transform.zoom,o=this.transform.pitch,i=e.exported.now();this.style.zoomHistory.update(t,i);const n=new e.EvaluationParameters(t,{now:i,fadeDuration:s,pitch:o,zoomHistory:this.style.zoomHistory,transition:this.style.getTransition()}),r=n.crossFadingFactor();1===r&&r===this._crossFadingFactor||(a=!0,this._crossFadingFactor=r),this.style.update(n)}if(this.style&&this.style.fog&&this.style.fog.hasTransition()&&(this.style._markersNeedUpdate=!0,this._sourcesDirty=!0),this.style&&this._sourcesDirty&&(this._sourcesDirty=!1,this.painter._updateFog(this.style),this._updateTerrain(),this.style._updateSources(this.transform),this._forceMarkerUpdate()),this._placementDirty=this.style&&this.style._updatePlacement(this.painter.transform,this.showCollisionBoxes,s,this._crossSourceCollisions),this.style&&this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showTerrainWireframe:this.showTerrainWireframe,showOverdrawInspector:this._showOverdrawInspector,showQueryGeometry:!!this._showQueryGeometry,rotating:this.isRotating(),zooming:this.isZooming(),moving:this.isMoving(),fadeDuration:s,isInitialLoad:this._isInitialLoad,showPadding:this.showPadding,gpuTiming:!!this.listens("gpu-timing-layer"),speedIndexTiming:this.speedIndexTiming}),this.fire(new e.Event("render")),this.loaded()&&!this._loaded&&(this._loaded=!0,this.fire(new e.Event("load"))),this.style&&(this.style.hasTransitions()||a)&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles(),this.listens("gpu-timing-frame")){const t=e.exported.now()-n;i.endQueryEXT(i.TIME_ELAPSED_EXT,o),setTimeout((()=>{const n=i.getQueryObjectEXT(o,i.QUERY_RESULT_EXT)/1e6;i.deleteQueryEXT(o),this.fire(new e.Event("gpu-timing-frame",{cpuTime:t,gpuTime:n}))}),50)}if(this.listens("gpu-timing-layer")){const t=this.painter.collectGpuTimers();setTimeout((()=>{const o=this.painter.queryGpuTimers(t);this.fire(new e.Event("gpu-timing-layer",{layerTimes:o}))}),50)}const p=this._sourcesDirty||this._styleDirty||this._placementDirty||r;if(p||this._repaint)this.triggerRepaint();else{const t=!this.isMoving()&&this.loaded();if(t&&(r=this._updateAverageElevation(n,!0)),r)this.triggerRepaint();else if(this._triggerFrame(!1),t&&(this.fire(new e.Event("idle")),this._isInitialLoad=!1,this.speedIndexTiming)){const t=this._calculateSpeedIndex();this.fire(new e.Event("speedindexcompleted",{speedIndex:t})),this.speedIndexTiming=!1}}return!this._loaded||this._fullyLoaded||p||(this._fullyLoaded=!0,this._authenticate()),this}_forceMarkerUpdate(){for(const e of this._markers)e._update()}_updateAverageElevation(e,t=!1){const o=e=>(this.transform.averageElevation=e,this._update(!1),!0);if(!this.painter.averageElevationNeedsEasing())return 0!==this.transform.averageElevation&&o(0);if((t||e-this._averageElevationLastSampledAt>500)&&!this._averageElevation.isEasing(e)){const t=this.transform.averageElevation;let i=this.transform.sampleAverageElevation();isNaN(i)?i=0:this._averageElevationLastSampledAt=e;const n=Math.abs(t-i);if(n>1){if(this._isInitialLoad)return this._averageElevation.jumpTo(i),o(i);this._averageElevation.easeTo(i,e,300)}else if(n>1e-4)return this._averageElevation.jumpTo(i),o(i)}return!!this._averageElevation.isEasing(e)&&o(this._averageElevation.getValue(e))}_authenticate(){e.getMapSessionAPI(this._getMapId(),this._requestManager._skuToken,this._requestManager._customAccessToken,(t=>{if(t&&(t.message===e.AUTH_ERR_MSG||401===t.status)){const t=this.painter.context.gl;e.storeAuthState(t,!1),this._logoControl instanceof wn&&this._logoControl._updateLogo(),t&&t.clear(t.DEPTH_BUFFER_BIT|t.COLOR_BUFFER_BIT|t.STENCIL_BUFFER_BIT),this._silenceAuthErrors||this.fire(new e.ErrorEvent(new Error("A valid Mapbox access token is required to use Mapbox GL JS. To create an account or a new access token, visit https://account.mapbox.com/")))}})),e.postMapLoadEvent(this._getMapId(),this._requestManager._skuToken,this._requestManager._customAccessToken,(()=>{}))}_updateTerrain(){this.painter.updateTerrain(this.style,this.isMoving()||this.isRotating()||this.isZooming())}_calculateSpeedIndex(){const e=this.painter.canvasCopy(),t=this.painter.getCanvasCopiesAndTimestamps();t.timeStamps.push(performance.now());const o=this.painter.context.gl,i=o.createFramebuffer();function n(e){o.framebufferTexture2D(o.FRAMEBUFFER,o.COLOR_ATTACHMENT0,o.TEXTURE_2D,e,0);const t=new Uint8Array(o.drawingBufferWidth*o.drawingBufferHeight*4);return o.readPixels(0,0,o.drawingBufferWidth,o.drawingBufferHeight,o.RGBA,o.UNSIGNED_BYTE,t),t}return o.bindFramebuffer(o.FRAMEBUFFER,i),this._canvasPixelComparison(n(e),t.canvasCopies.map(n),t.timeStamps)}_canvasPixelComparison(e,t,o){let i=o[1]-o[0];const n=e.length/4;for(let r=0;r{const t=!!this._renderNextFrame;this._frame=null,this._renderNextFrame=null,t&&this._render(e)})))}_preloadTiles(t){const o=this.style&&Object.values(this.style._sourceCaches)||[];return e.asyncAll(o,((e,o)=>e._preloadTiles(t,o)),(()=>{this.triggerRepaint()})),this}_onWindowOnline(){this._update()}_onWindowResize(e){this._trackResize&&this.resize({originalEvent:e})._update()}get showTileBoundaries(){return!!this._showTileBoundaries}set showTileBoundaries(e){this._showTileBoundaries!==e&&(this._showTileBoundaries=e,this._update())}get showTerrainWireframe(){return!!this._showTerrainWireframe}set showTerrainWireframe(e){this._showTerrainWireframe!==e&&(this._showTerrainWireframe=e,this._update())}get speedIndexTiming(){return!!this._speedIndexTiming}set speedIndexTiming(e){this._speedIndexTiming!==e&&(this._speedIndexTiming=e,this._update())}get showPadding(){return!!this._showPadding}set showPadding(e){this._showPadding!==e&&(this._showPadding=e,this._update())}get showCollisionBoxes(){return!!this._showCollisionBoxes}set showCollisionBoxes(e){this._showCollisionBoxes!==e&&(this._showCollisionBoxes=e,e?this.style._generateCollisionBoxes():this._update())}get showOverdrawInspector(){return!!this._showOverdrawInspector}set showOverdrawInspector(e){this._showOverdrawInspector!==e&&(this._showOverdrawInspector=e,this._update())}get repaint(){return!!this._repaint}set repaint(e){this._repaint!==e&&(this._repaint=e,this.triggerRepaint())}get vertices(){return!!this._vertices}set vertices(e){this._vertices=e,this._update()}_setCacheLimits(t,o){e.setCacheLimits(t,o)}get version(){return e.version}},NavigationControl:class{constructor(t){this.options=e.extend({},Pn,t),this._container=a.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._container.addEventListener("contextmenu",(e=>e.preventDefault())),this.options.showZoom&&(e.bindAll(["_setButtonTitle","_updateZoomButtons"],this),this._zoomInButton=this._createButton("mapboxgl-ctrl-zoom-in",(e=>this._map.zoomIn({},{originalEvent:e}))),a.create("span","mapboxgl-ctrl-icon",this._zoomInButton).setAttribute("aria-hidden",!0),this._zoomOutButton=this._createButton("mapboxgl-ctrl-zoom-out",(e=>this._map.zoomOut({},{originalEvent:e}))),a.create("span","mapboxgl-ctrl-icon",this._zoomOutButton).setAttribute("aria-hidden",!0)),this.options.showCompass&&(e.bindAll(["_rotateCompassArrow"],this),this._compass=this._createButton("mapboxgl-ctrl-compass",(e=>{this.options.visualizePitch?this._map.resetNorthPitch({},{originalEvent:e}):this._map.resetNorth({},{originalEvent:e})})),this._compassIcon=a.create("span","mapboxgl-ctrl-icon",this._compass),this._compassIcon.setAttribute("aria-hidden",!0))}_updateZoomButtons(){const e=this._map.getZoom(),t=e===this._map.getMaxZoom(),o=e===this._map.getMinZoom();this._zoomInButton.disabled=t,this._zoomOutButton.disabled=o,this._zoomInButton.setAttribute("aria-disabled",t.toString()),this._zoomOutButton.setAttribute("aria-disabled",o.toString())}_rotateCompassArrow(){const e=this.options.visualizePitch?`scale(${1/Math.pow(Math.cos(this._map.transform.pitch*(Math.PI/180)),.5)}) rotateX(${this._map.transform.pitch}deg) rotateZ(${this._map.transform.angle*(180/Math.PI)}deg)`:`rotate(${this._map.transform.angle*(180/Math.PI)}deg)`;this._map._requestDomTask((()=>{this._compassIcon&&(this._compassIcon.style.transform=e)}))}onAdd(e){return this._map=e,this.options.showZoom&&(this._setButtonTitle(this._zoomInButton,"ZoomIn"),this._setButtonTitle(this._zoomOutButton,"ZoomOut"),this._map.on("zoom",this._updateZoomButtons),this._updateZoomButtons()),this.options.showCompass&&(this._setButtonTitle(this._compass,"ResetBearing"),this.options.visualizePitch&&this._map.on("pitch",this._rotateCompassArrow),this._map.on("rotate",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new In(this._map,this._compass,this.options.visualizePitch)),this._container}onRemove(){this._container.remove(),this.options.showZoom&&this._map.off("zoom",this._updateZoomButtons),this.options.showCompass&&(this.options.visualizePitch&&this._map.off("pitch",this._rotateCompassArrow),this._map.off("rotate",this._rotateCompassArrow),this._handler.off(),delete this._handler),delete this._map}_createButton(e,t){const o=a.create("button",e,this._container);return o.type="button",o.addEventListener("click",t),o}_setButtonTitle(e,t){const o=this._map._getUIString(`NavigationControl.${t}`);e.setAttribute("aria-label",o),e.firstElementChild&&e.firstElementChild.setAttribute("title",o)}},GeolocateControl:class extends e.Evented{constructor(t){super(),this.options=e.extend({},Yn,t),e.bindAll(["_onSuccess","_onError","_onZoom","_finish","_setupUI","_updateCamera","_updateMarker","_updateMarkerRotation"],this),this._onDeviceOrientationListener=this._onDeviceOrientation.bind(this),this._updateMarkerRotationThrottled=wi(this._updateMarkerRotation,20)}onAdd(t){var o;return this._map=t,this._container=a.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),o=this._setupUI,void 0!==jn?o(jn):void 0!==e.window.navigator.permissions?e.window.navigator.permissions.query({name:"geolocation"}).then((e=>{jn="denied"!==e.state,o(jn)})):(jn=!!e.window.navigator.geolocation,o(jn)),this._container}onRemove(){void 0!==this._geolocationWatchID&&(e.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),this._container.remove(),this._map.off("zoom",this._onZoom),this._map=void 0,Fn=0,Hn=!1}_isOutOfMapMaxBounds(e){const t=this._map.getMaxBounds(),o=e.coords;return t&&(o.longitudet.getEast()||o.latitudet.getNorth())}_setErrorState(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting")}}_onSuccess(t){if(this._map){if(this._isOutOfMapMaxBounds(t))return this._setErrorState(),this.fire(new e.Event("outofmaxbounds",t)),this._updateMarker(),void this._finish();if(this.options.trackUserLocation)switch(this._lastKnownPosition=t,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background")}this.options.showUserLocation&&"OFF"!==this._watchState&&this._updateMarker(t),this.options.trackUserLocation&&"ACTIVE_LOCK"!==this._watchState||this._updateCamera(t),this.options.showUserLocation&&this._dotElement.classList.remove("mapboxgl-user-location-dot-stale"),this.fire(new e.Event("geolocate",t)),this._finish()}}_updateCamera(t){const o=new e.LngLat(t.coords.longitude,t.coords.latitude),i=t.coords.accuracy,n=this._map.getBearing(),r=e.extend({bearing:n},this.options.fitBoundsOptions);this._map.fitBounds(o.toBounds(i),r,{geolocateSource:!0})}_updateMarker(t){if(t){const o=new e.LngLat(t.coords.longitude,t.coords.latitude);this._accuracyCircleMarker.setLngLat(o).addTo(this._map),this._userLocationDotMarker.setLngLat(o).addTo(this._map),this._accuracy=t.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()}_updateCircleRadius(){const e=this._map._containerHeight/2,t=this._map.unproject([0,e]),o=this._map.unproject([100,e]),i=t.distanceTo(o)/100,n=Math.ceil(2*this._accuracy/i);this._circleElement.style.width=`${n}px`,this._circleElement.style.height=`${n}px`}_onZoom(){this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}_updateMarkerRotation(){this._userLocationDotMarker&&"number"==typeof this._heading?(this._userLocationDotMarker.setRotation(this._heading),this._dotElement.classList.add("mapboxgl-user-location-show-heading")):(this._dotElement.classList.remove("mapboxgl-user-location-show-heading"),this._userLocationDotMarker.setRotation(0))}_onError(t){if(this._map){if(this.options.trackUserLocation)if(1===t.code){this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;const e=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.setAttribute("aria-label",e),this._geolocateButton.firstElementChild&&this._geolocateButton.firstElementChild.setAttribute("title",e),void 0!==this._geolocationWatchID&&this._clearWatch()}else{if(3===t.code&&Hn)return;this._setErrorState()}"OFF"!==this._watchState&&this.options.showUserLocation&&this._dotElement.classList.add("mapboxgl-user-location-dot-stale"),this.fire(new e.Event("error",t)),this._finish()}}_finish(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0}_setupUI(t){if(this._container.addEventListener("contextmenu",(e=>e.preventDefault())),this._geolocateButton=a.create("button","mapboxgl-ctrl-geolocate",this._container),a.create("span","mapboxgl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden",!0),this._geolocateButton.type="button",!1===t){e.warnOnce("Geolocation support is not available so the GeolocateControl will be disabled.");const t=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.setAttribute("aria-label",t),this._geolocateButton.firstElementChild&&this._geolocateButton.firstElementChild.setAttribute("title",t)}else{const e=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.setAttribute("aria-label",e),this._geolocateButton.firstElementChild&&this._geolocateButton.firstElementChild.setAttribute("title",e)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=a.create("div","mapboxgl-user-location"),this._dotElement.appendChild(a.create("div","mapboxgl-user-location-dot")),this._dotElement.appendChild(a.create("div","mapboxgl-user-location-heading")),this._userLocationDotMarker=new kn({element:this._dotElement,rotationAlignment:"map",pitchAlignment:"map"}),this._circleElement=a.create("div","mapboxgl-user-location-accuracy-circle"),this._accuracyCircleMarker=new kn({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",this.trigger.bind(this)),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",(t=>{t.geolocateSource||"ACTIVE_LOCK"!==this._watchState||t.originalEvent&&"resize"===t.originalEvent.type||(this._watchState="BACKGROUND",this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this.fire(new e.Event("trackuserlocationend")))}))}_onDeviceOrientation(e){this._userLocationDotMarker&&(e.webkitCompassHeading?this._heading=e.webkitCompassHeading:!0===e.absolute&&(this._heading=-1*e.alpha),this._updateMarkerRotationThrottled())}trigger(){if(!this._setup)return e.warnOnce("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new e.Event("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":Fn--,Hn=!1,this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this.fire(new e.Event("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new e.Event("trackuserlocationstart"))}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"BACKGROUND":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break;case"BACKGROUND_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error")}if("OFF"===this._watchState&&void 0!==this._geolocationWatchID)this._clearWatch();else if(void 0===this._geolocationWatchID){let t;this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),Fn++,Fn>1?(t={maximumAge:6e5,timeout:0},Hn=!0):(t=this.options.positionOptions,Hn=!1),this._geolocationWatchID=e.window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,t),this.options.showUserHeading&&this._addDeviceOrientationListener()}}else e.window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0}_addDeviceOrientationListener(){const t=()=>{e.window.addEventListener("ondeviceorientationabsolute"in e.window?"deviceorientationabsolute":"deviceorientation",this._onDeviceOrientationListener)};void 0!==e.window.DeviceMotionEvent&&"function"==typeof e.window.DeviceMotionEvent.requestPermission?DeviceOrientationEvent.requestPermission().then((e=>{"granted"===e&&t()})).catch(console.error):t()}_clearWatch(){e.window.navigator.geolocation.clearWatch(this._geolocationWatchID),e.window.removeEventListener("deviceorientation",this._onDeviceOrientationListener),e.window.removeEventListener("deviceorientationabsolute",this._onDeviceOrientationListener),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)}},AttributionControl:Wn,ScaleControl:class{constructor(t){this.options=e.extend({},Un,t),e.bindAll(["_onMove","setUnit"],this)}getDefaultPosition(){return"bottom-left"}_onMove(){Vn(this._map,this._container,this.options)}onAdd(e){return this._map=e,this._container=a.create("div","mapboxgl-ctrl mapboxgl-ctrl-scale",e.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container}onRemove(){this._container.remove(),this._map.off("move",this._onMove),this._map=void 0}setUnit(e){this.options.unit=e,Vn(this._map,this._container,this.options)}},FullscreenControl:class{constructor(t){this._fullscreen=!1,t&&t.container&&(t.container instanceof e.window.HTMLElement?this._container=t.container:e.warnOnce("Full screen control 'container' must be a DOM element.")),e.bindAll(["_onClickFullscreen","_changeIcon"],this),"onfullscreenchange"in e.window.document?this._fullscreenchange="fullscreenchange":"onwebkitfullscreenchange"in e.window.document&&(this._fullscreenchange="webkitfullscreenchange")}onAdd(t){return this._map=t,this._container||(this._container=this._map.getContainer()),this._controlContainer=a.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._checkFullscreenSupport()?this._setupUI():(this._controlContainer.style.display="none",e.warnOnce("This device does not support fullscreen mode.")),this._controlContainer}onRemove(){this._controlContainer.remove(),this._map=null,e.window.document.removeEventListener(this._fullscreenchange,this._changeIcon)}_checkFullscreenSupport(){return!(!e.window.document.fullscreenEnabled&&!e.window.document.webkitFullscreenEnabled)}_setupUI(){const t=this._fullscreenButton=a.create("button","mapboxgl-ctrl-fullscreen",this._controlContainer);a.create("span","mapboxgl-ctrl-icon",t).setAttribute("aria-hidden",!0),t.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),e.window.document.addEventListener(this._fullscreenchange,this._changeIcon)}_updateTitle(){const e=this._getTitle();this._fullscreenButton.setAttribute("aria-label",e),this._fullscreenButton.firstElementChild&&this._fullscreenButton.firstElementChild.setAttribute("title",e)}_getTitle(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")}_isFullscreen(){return this._fullscreen}_changeIcon(){(e.window.document.fullscreenElement||e.window.document.webkitFullscreenElement)===this._container!==this._fullscreen&&(this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("mapboxgl-ctrl-shrink"),this._fullscreenButton.classList.toggle("mapboxgl-ctrl-fullscreen"),this._updateTitle())}_onClickFullscreen(){this._isFullscreen()?e.window.document.exitFullscreen?e.window.document.exitFullscreen():e.window.document.webkitCancelFullScreen&&e.window.document.webkitCancelFullScreen():this._container.requestFullscreen?this._container.requestFullscreen():this._container.webkitRequestFullscreen&&this._container.webkitRequestFullscreen()}},Popup:class extends e.Evented{constructor(t){super(),this.options=e.extend(Object.create(Zn),t),e.bindAll(["_update","_onClose","remove","_onMouseMove","_onMouseUp","_onDrag"],this),this._classList=new Set(t&&t.className?t.className.trim().split(/\s+/):[])}addTo(t){return this._map&&this.remove(),this._map=t,this.options.closeOnClick&&this._map.on("preclick",this._onClose),this.options.closeOnMove&&this._map.on("move",this._onClose),this._map.on("remove",this.remove),this._update(),this._focusFirstElement(),this._trackPointer?(this._map.on("mousemove",this._onMouseMove),this._map.on("mouseup",this._onMouseUp),this._map._canvasContainer.classList.add("mapboxgl-track-pointer")):this._map.on("move",this._update),this.fire(new e.Event("open")),this}isOpen(){return!!this._map}remove(){return this._content&&this._content.remove(),this._container&&(this._container.remove(),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("move",this._onClose),this._map.off("click",this._onClose),this._map.off("remove",this.remove),this._map.off("mousemove",this._onMouseMove),this._map.off("mouseup",this._onMouseUp),this._map.off("drag",this._onDrag),delete this._map),this.fire(new e.Event("close")),this}getLngLat(){return this._lngLat}setLngLat(t){return this._lngLat=e.LngLat.convert(t),this._pos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._map._canvasContainer.classList.remove("mapboxgl-track-pointer")),this}trackPointer(){return this._trackPointer=!0,this._pos=null,this._update(),this._map&&(this._map.off("move",this._update),this._map.on("mousemove",this._onMouseMove),this._map.on("drag",this._onDrag),this._map._canvasContainer.classList.add("mapboxgl-track-pointer")),this}getElement(){return this._container}setText(t){return this.setDOMContent(e.window.document.createTextNode(t))}setHTML(t){const o=e.window.document.createDocumentFragment(),i=e.window.document.createElement("body");let n;for(i.innerHTML=t;n=i.firstChild,n;)o.appendChild(n);return this.setDOMContent(o)}getMaxWidth(){return this._container&&this._container.style.maxWidth}setMaxWidth(e){return this.options.maxWidth=e,this._update(),this}setDOMContent(e){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=a.create("div","mapboxgl-popup-content",this._container);return this._content.appendChild(e),this._createCloseButton(),this._update(),this._focusFirstElement(),this}addClassName(e){return this._classList.add(e),this._container&&this._updateClassList(),this}removeClassName(e){return this._classList.delete(e),this._container&&this._updateClassList(),this}setOffset(e){return this.options.offset=e,this._update(),this}toggleClassName(e){let t;return this._classList.delete(e)?t=!1:(this._classList.add(e),t=!0),this._container&&this._updateClassList(),t}_createCloseButton(){this.options.closeButton&&(this._closeButton=a.create("button","mapboxgl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.setAttribute("aria-label","Close popup"),this._closeButton.setAttribute("aria-hidden","true"),this._closeButton.innerHTML="×",this._closeButton.addEventListener("click",this._onClose))}_onMouseUp(e){this._update(e.point)}_onMouseMove(e){this._update(e.point)}_onDrag(e){this._update(e.point)}_getAnchor(e){if(this.options.anchor)return this.options.anchor;const t=this._pos,o=this._container.offsetWidth,i=this._container.offsetHeight;let n;return n=t.y+e.bottom.ythis._map.transform.height-i?["bottom"]:[],t.xthis._map.transform.width-o/2&&n.push("right"),0===n.length?"bottom":n.join("-")}_updateClassList(){const e=[...this._classList];e.push("mapboxgl-popup"),this._anchor&&e.push(`mapboxgl-popup-anchor-${this._anchor}`),this._trackPointer&&e.push("mapboxgl-popup-track-pointer"),this._container.className=e.join(" ")}_update(t){if(this._map&&(this._lngLat||this._trackPointer)&&this._content){if(this._container||(this._container=a.create("div","mapboxgl-popup",this._map.getContainer()),this._tip=a.create("div","mapboxgl-popup-tip",this._container),this._container.appendChild(this._content)),this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._map.transform.renderWorldCopies&&!this._trackPointer&&(this._lngLat=Rn(this._lngLat,this._pos,this._map.transform)),!this._trackPointer||t){const o=this._pos=this._trackPointer&&t?t:this._map.project(this._lngLat),i=function(t){if(t||(t=new e.pointGeometry(0,0)),"number"==typeof t){const o=Math.round(Math.sqrt(.5*Math.pow(t,2)));return{center:new e.pointGeometry(0,0),top:new e.pointGeometry(0,t),"top-left":new e.pointGeometry(o,o),"top-right":new e.pointGeometry(-o,o),bottom:new e.pointGeometry(0,-t),"bottom-left":new e.pointGeometry(o,-o),"bottom-right":new e.pointGeometry(-o,-o),left:new e.pointGeometry(t,0),right:new e.pointGeometry(-t,0)}}if(t instanceof e.pointGeometry||Array.isArray(t)){const o=e.pointGeometry.convert(t);return{center:o,top:o,"top-left":o,"top-right":o,bottom:o,"bottom-left":o,"bottom-right":o,left:o,right:o}}return{center:e.pointGeometry.convert(t.center||[0,0]),top:e.pointGeometry.convert(t.top||[0,0]),"top-left":e.pointGeometry.convert(t["top-left"]||[0,0]),"top-right":e.pointGeometry.convert(t["top-right"]||[0,0]),bottom:e.pointGeometry.convert(t.bottom||[0,0]),"bottom-left":e.pointGeometry.convert(t["bottom-left"]||[0,0]),"bottom-right":e.pointGeometry.convert(t["bottom-right"]||[0,0]),left:e.pointGeometry.convert(t.left||[0,0]),right:e.pointGeometry.convert(t.right||[0,0])}}(this.options.offset),n=this._anchor=this._getAnchor(i),r=o.add(i[n]).round();this._map._requestDomTask((()=>{this._container&&n&&(this._container.style.transform=`${Tn[n]} translate(${r.x}px,${r.y}px)`)}))}this._updateClassList()}}_focusFirstElement(){if(!this.options.focusAfterOpen||!this._container)return;const e=this._container.querySelector($n);e&&e.focus()}_onClose(){this.remove()}_setOpacity(e){this._content&&(this._content.style.opacity=e),this._tip&&(this._tip.style.opacity=e)}},Marker:kn,Style:Pt,LngLat:e.LngLat,LngLatBounds:e.LngLatBounds,Point:e.pointGeometry,MercatorCoordinate:e.MercatorCoordinate,FreeCameraOptions:fi,Evented:e.Evented,config:e.config,prewarm:function(){ke().acquire(Le)},clearPrewarmedResources:function(){const e=Te;e&&(e.isPreloaded()&&1===e.numActive()?(e.release(Le),Te=null):console.warn("Could not clear WebWorkers since there are active Map instances that still reference it. The pre-warmed WebWorker pool can only be cleared when all map instances have been removed with map.remove()"))},get accessToken(){return e.config.ACCESS_TOKEN},set accessToken(t){e.config.ACCESS_TOKEN=t},get baseApiUrl(){return e.config.API_URL},set baseApiUrl(t){e.config.API_URL=t},get workerCount(){return Re.workerCount},set workerCount(e){Re.workerCount=e},get maxParallelImageRequests(){return e.config.MAX_PARALLEL_IMAGE_REQUESTS},set maxParallelImageRequests(t){e.config.MAX_PARALLEL_IMAGE_REQUESTS=t},clearStorage(t){e.clearTileCache(t)},workerUrl:"",workerClass:null,setNow:e.exported.setNow,restoreNow:e.exported.restoreNow};return Kn})),o}()},2395:()=>{},8:(e,t,o)=>{(e.exports=o(5177)).tz.load(o(1128))},5177:function(e,t,o){var i,n,r;!function(a,s){"use strict";e.exports?e.exports=s(o(381)):(n=[o(381)],void 0===(r="function"==typeof(i=s)?i.apply(t,n):i)||(e.exports=r))}(0,(function(e){"use strict";void 0===e.version&&e.default&&(e=e.default);var t,o={},i={},n={},r={},a={};e&&"string"==typeof e.version||L("Moment Timezone requires Moment.js. See https://momentjs.com/timezone/docs/#/use-it/browser/");var s=e.version.split("."),p=+s[0],c=+s[1];function l(e){return e>96?e-87:e>64?e-29:e-48}function b(e){var t=0,o=e.split("."),i=o[0],n=o[1]||"",r=1,a=0,s=1;for(45===e.charCodeAt(0)&&(t=1,s=-1);t3){var t=r[y(e)];if(t)return t;L("Moment Timezone found "+e+" from the Intl api, but did not have that data loaded.")}}catch(e){}var o,i,n,a=function(){var e,t,o,i=(new Date).getFullYear()-2,n=new h(new Date(i,0,1)),r=[n];for(o=1;o<48;o++)(t=new h(new Date(i,o,1))).offset!==n.offset&&(e=f(n,t),r.push(e),r.push(new h(new Date(e.at+6e4)))),n=t;for(o=0;o<4;o++)r.push(new h(new Date(i+o,0,1))),r.push(new h(new Date(i+o,6,1)));return r}(),s=a.length,p=g(a),c=[];for(i=0;i0?c[0].zone.name:void 0}function y(e){return(e||"").toLowerCase().replace(/\//g,"_")}function v(e){var t,i,n,a;for("string"==typeof e&&(e=[e]),t=0;t= 2.6.0. You are using Moment.js "+e.version+". See momentjs.com"),z.prototype={_set:function(e){this.name=e.name,this.abbrs=e.abbrs,this.untils=e.untils,this.offsets=e.offsets,this.population=e.population},_index:function(e){var t,o=+e,i=this.untils;for(t=0;ti&&R.moveInvalidForward&&(t=i),r0&&(this._z=null),T.apply(this,arguments)}),e.tz.setDefault=function(t){return(p<2||2===p&&c<9)&&L("Moment Timezone setDefault() requires Moment.js >= 2.9.0. You are using Moment.js "+e.version+"."),e.defaultZone=t?x(t):null,e};var X=e.momentProperties;return"[object Array]"===Object.prototype.toString.call(X)?(X.push("_z"),X.push("_a")):X&&(X._z=null),e}))},2786:function(e,t,o){!function(e){"use strict";e.defineLocale("af",{months:"Januarie_Februarie_Maart_April_Mei_Junie_Julie_Augustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mrt_Apr_Mei_Jun_Jul_Aug_Sep_Okt_Nov_Des".split("_"),weekdays:"Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag".split("_"),weekdaysShort:"Son_Maa_Din_Woe_Don_Vry_Sat".split("_"),weekdaysMin:"So_Ma_Di_Wo_Do_Vr_Sa".split("_"),meridiemParse:/vm|nm/i,isPM:function(e){return/^nm$/i.test(e)},meridiem:function(e,t,o){return e<12?o?"vm":"VM":o?"nm":"NM"},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Vandag om] LT",nextDay:"[Môre om] LT",nextWeek:"dddd [om] LT",lastDay:"[Gister om] LT",lastWeek:"[Laas] dddd [om] LT",sameElse:"L"},relativeTime:{future:"oor %s",past:"%s gelede",s:"'n paar sekondes",ss:"%d sekondes",m:"'n minuut",mm:"%d minute",h:"'n uur",hh:"%d ure",d:"'n dag",dd:"%d dae",M:"'n maand",MM:"%d maande",y:"'n jaar",yy:"%d jaar"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(e){return e+(1===e||8===e||e>=20?"ste":"de")},week:{dow:1,doy:4}})}(o(381))},4130:function(e,t,o){!function(e){"use strict";var t=function(e){return 0===e?0:1===e?1:2===e?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5},o={s:["أقل من ثانية","ثانية واحدة",["ثانيتان","ثانيتين"],"%d ثوان","%d ثانية","%d ثانية"],m:["أقل من دقيقة","دقيقة واحدة",["دقيقتان","دقيقتين"],"%d دقائق","%d دقيقة","%d دقيقة"],h:["أقل من ساعة","ساعة واحدة",["ساعتان","ساعتين"],"%d ساعات","%d ساعة","%d ساعة"],d:["أقل من يوم","يوم واحد",["يومان","يومين"],"%d أيام","%d يومًا","%d يوم"],M:["أقل من شهر","شهر واحد",["شهران","شهرين"],"%d أشهر","%d شهرا","%d شهر"],y:["أقل من عام","عام واحد",["عامان","عامين"],"%d أعوام","%d عامًا","%d عام"]},i=function(e){return function(i,n,r,a){var s=t(i),p=o[e][t(i)];return 2===s&&(p=p[n?0:1]),p.replace(/%d/i,i)}},n=["جانفي","فيفري","مارس","أفريل","ماي","جوان","جويلية","أوت","سبتمبر","أكتوبر","نوفمبر","ديسمبر"];e.defineLocale("ar-dz",{months:n,monthsShort:n,weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/‏M/‏YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/ص|م/,isPM:function(e){return"م"===e},meridiem:function(e,t,o){return e<12?"ص":"م"},calendar:{sameDay:"[اليوم عند الساعة] LT",nextDay:"[غدًا عند الساعة] LT",nextWeek:"dddd [عند الساعة] LT",lastDay:"[أمس عند الساعة] LT",lastWeek:"dddd [عند الساعة] LT",sameElse:"L"},relativeTime:{future:"بعد %s",past:"منذ %s",s:i("s"),ss:i("s"),m:i("m"),mm:i("m"),h:i("h"),hh:i("h"),d:i("d"),dd:i("d"),M:i("M"),MM:i("M"),y:i("y"),yy:i("y")},postformat:function(e){return e.replace(/,/g,"،")},week:{dow:0,doy:4}})}(o(381))},6135:function(e,t,o){!function(e){"use strict";e.defineLocale("ar-kw",{months:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),weekdays:"الأحد_الإتنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"احد_اتنين_ثلاثاء_اربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",ss:"%d ثانية",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:0,doy:12}})}(o(381))},6440:function(e,t,o){!function(e){"use strict";var t={1:"1",2:"2",3:"3",4:"4",5:"5",6:"6",7:"7",8:"8",9:"9",0:"0"},o=function(e){return 0===e?0:1===e?1:2===e?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5},i={s:["أقل من ثانية","ثانية واحدة",["ثانيتان","ثانيتين"],"%d ثوان","%d ثانية","%d ثانية"],m:["أقل من دقيقة","دقيقة واحدة",["دقيقتان","دقيقتين"],"%d دقائق","%d دقيقة","%d دقيقة"],h:["أقل من ساعة","ساعة واحدة",["ساعتان","ساعتين"],"%d ساعات","%d ساعة","%d ساعة"],d:["أقل من يوم","يوم واحد",["يومان","يومين"],"%d أيام","%d يومًا","%d يوم"],M:["أقل من شهر","شهر واحد",["شهران","شهرين"],"%d أشهر","%d شهرا","%d شهر"],y:["أقل من عام","عام واحد",["عامان","عامين"],"%d أعوام","%d عامًا","%d عام"]},n=function(e){return function(t,n,r,a){var s=o(t),p=i[e][o(t)];return 2===s&&(p=p[n?0:1]),p.replace(/%d/i,t)}},r=["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر"];e.defineLocale("ar-ly",{months:r,monthsShort:r,weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/‏M/‏YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/ص|م/,isPM:function(e){return"م"===e},meridiem:function(e,t,o){return e<12?"ص":"م"},calendar:{sameDay:"[اليوم عند الساعة] LT",nextDay:"[غدًا عند الساعة] LT",nextWeek:"dddd [عند الساعة] LT",lastDay:"[أمس عند الساعة] LT",lastWeek:"dddd [عند الساعة] LT",sameElse:"L"},relativeTime:{future:"بعد %s",past:"منذ %s",s:n("s"),ss:n("s"),m:n("m"),mm:n("m"),h:n("h"),hh:n("h"),d:n("d"),dd:n("d"),M:n("M"),MM:n("M"),y:n("y"),yy:n("y")},preparse:function(e){return e.replace(/،/g,",")},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]})).replace(/,/g,"،")},week:{dow:6,doy:12}})}(o(381))},7702:function(e,t,o){!function(e){"use strict";e.defineLocale("ar-ma",{months:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"احد_اثنين_ثلاثاء_اربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",ss:"%d ثانية",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:1,doy:4}})}(o(381))},6040:function(e,t,o){!function(e){"use strict";var t={1:"١",2:"٢",3:"٣",4:"٤",5:"٥",6:"٦",7:"٧",8:"٨",9:"٩",0:"٠"},o={"١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","٠":"0"};e.defineLocale("ar-sa",{months:"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/ص|م/,isPM:function(e){return"م"===e},meridiem:function(e,t,o){return e<12?"ص":"م"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",ss:"%d ثانية",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},preparse:function(e){return e.replace(/[١٢٣٤٥٦٧٨٩٠]/g,(function(e){return o[e]})).replace(/،/g,",")},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]})).replace(/,/g,"،")},week:{dow:0,doy:6}})}(o(381))},7100:function(e,t,o){!function(e){"use strict";e.defineLocale("ar-tn",{months:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),monthsShort:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",ss:"%d ثانية",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:1,doy:4}})}(o(381))},867:function(e,t,o){!function(e){"use strict";var t={1:"١",2:"٢",3:"٣",4:"٤",5:"٥",6:"٦",7:"٧",8:"٨",9:"٩",0:"٠"},o={"١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","٠":"0"},i=function(e){return 0===e?0:1===e?1:2===e?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5},n={s:["أقل من ثانية","ثانية واحدة",["ثانيتان","ثانيتين"],"%d ثوان","%d ثانية","%d ثانية"],m:["أقل من دقيقة","دقيقة واحدة",["دقيقتان","دقيقتين"],"%d دقائق","%d دقيقة","%d دقيقة"],h:["أقل من ساعة","ساعة واحدة",["ساعتان","ساعتين"],"%d ساعات","%d ساعة","%d ساعة"],d:["أقل من يوم","يوم واحد",["يومان","يومين"],"%d أيام","%d يومًا","%d يوم"],M:["أقل من شهر","شهر واحد",["شهران","شهرين"],"%d أشهر","%d شهرا","%d شهر"],y:["أقل من عام","عام واحد",["عامان","عامين"],"%d أعوام","%d عامًا","%d عام"]},r=function(e){return function(t,o,r,a){var s=i(t),p=n[e][i(t)];return 2===s&&(p=p[o?0:1]),p.replace(/%d/i,t)}},a=["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر"];e.defineLocale("ar",{months:a,monthsShort:a,weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/‏M/‏YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/ص|م/,isPM:function(e){return"م"===e},meridiem:function(e,t,o){return e<12?"ص":"م"},calendar:{sameDay:"[اليوم عند الساعة] LT",nextDay:"[غدًا عند الساعة] LT",nextWeek:"dddd [عند الساعة] LT",lastDay:"[أمس عند الساعة] LT",lastWeek:"dddd [عند الساعة] LT",sameElse:"L"},relativeTime:{future:"بعد %s",past:"منذ %s",s:r("s"),ss:r("s"),m:r("m"),mm:r("m"),h:r("h"),hh:r("h"),d:r("d"),dd:r("d"),M:r("M"),MM:r("M"),y:r("y"),yy:r("y")},preparse:function(e){return e.replace(/[١٢٣٤٥٦٧٨٩٠]/g,(function(e){return o[e]})).replace(/،/g,",")},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]})).replace(/,/g,"،")},week:{dow:6,doy:12}})}(o(381))},1083:function(e,t,o){!function(e){"use strict";var t={1:"-inci",5:"-inci",8:"-inci",70:"-inci",80:"-inci",2:"-nci",7:"-nci",20:"-nci",50:"-nci",3:"-üncü",4:"-üncü",100:"-üncü",6:"-ncı",9:"-uncu",10:"-uncu",30:"-uncu",60:"-ıncı",90:"-ıncı"};e.defineLocale("az",{months:"yanvar_fevral_mart_aprel_may_iyun_iyul_avqust_sentyabr_oktyabr_noyabr_dekabr".split("_"),monthsShort:"yan_fev_mar_apr_may_iyn_iyl_avq_sen_okt_noy_dek".split("_"),weekdays:"Bazar_Bazar ertəsi_Çərşənbə axşamı_Çərşənbə_Cümə axşamı_Cümə_Şənbə".split("_"),weekdaysShort:"Baz_BzE_ÇAx_Çər_CAx_Cüm_Şən".split("_"),weekdaysMin:"Bz_BE_ÇA_Çə_CA_Cü_Şə".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[bugün saat] LT",nextDay:"[sabah saat] LT",nextWeek:"[gələn həftə] dddd [saat] LT",lastDay:"[dünən] LT",lastWeek:"[keçən həftə] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s əvvəl",s:"bir neçə saniyə",ss:"%d saniyə",m:"bir dəqiqə",mm:"%d dəqiqə",h:"bir saat",hh:"%d saat",d:"bir gün",dd:"%d gün",M:"bir ay",MM:"%d ay",y:"bir il",yy:"%d il"},meridiemParse:/gecə|səhər|gündüz|axşam/,isPM:function(e){return/^(gündüz|axşam)$/.test(e)},meridiem:function(e,t,o){return e<4?"gecə":e<12?"səhər":e<17?"gündüz":"axşam"},dayOfMonthOrdinalParse:/\d{1,2}-(ıncı|inci|nci|üncü|ncı|uncu)/,ordinal:function(e){if(0===e)return e+"-ıncı";var o=e%10,i=e%100-o,n=e>=100?100:null;return e+(t[o]||t[i]||t[n])},week:{dow:1,doy:7}})}(o(381))},9808:function(e,t,o){!function(e){"use strict";function t(e,t){var o=e.split("_");return t%10==1&&t%100!=11?o[0]:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?o[1]:o[2]}function o(e,o,i){return"m"===i?o?"хвіліна":"хвіліну":"h"===i?o?"гадзіна":"гадзіну":e+" "+t({ss:o?"секунда_секунды_секунд":"секунду_секунды_секунд",mm:o?"хвіліна_хвіліны_хвілін":"хвіліну_хвіліны_хвілін",hh:o?"гадзіна_гадзіны_гадзін":"гадзіну_гадзіны_гадзін",dd:"дзень_дні_дзён",MM:"месяц_месяцы_месяцаў",yy:"год_гады_гадоў"}[i],+e)}e.defineLocale("be",{months:{format:"студзеня_лютага_сакавіка_красавіка_траўня_чэрвеня_ліпеня_жніўня_верасня_кастрычніка_лістапада_снежня".split("_"),standalone:"студзень_люты_сакавік_красавік_травень_чэрвень_ліпень_жнівень_верасень_кастрычнік_лістапад_снежань".split("_")},monthsShort:"студ_лют_сак_крас_трав_чэрв_ліп_жнів_вер_каст_ліст_снеж".split("_"),weekdays:{format:"нядзелю_панядзелак_аўторак_сераду_чацвер_пятніцу_суботу".split("_"),standalone:"нядзеля_панядзелак_аўторак_серада_чацвер_пятніца_субота".split("_"),isFormat:/\[ ?[Ууў] ?(?:мінулую|наступную)? ?\] ?dddd/},weekdaysShort:"нд_пн_ат_ср_чц_пт_сб".split("_"),weekdaysMin:"нд_пн_ат_ср_чц_пт_сб".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY г.",LLL:"D MMMM YYYY г., HH:mm",LLLL:"dddd, D MMMM YYYY г., HH:mm"},calendar:{sameDay:"[Сёння ў] LT",nextDay:"[Заўтра ў] LT",lastDay:"[Учора ў] LT",nextWeek:function(){return"[У] dddd [ў] LT"},lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return"[У мінулую] dddd [ў] LT";case 1:case 2:case 4:return"[У мінулы] dddd [ў] LT"}},sameElse:"L"},relativeTime:{future:"праз %s",past:"%s таму",s:"некалькі секунд",m:o,mm:o,h:o,hh:o,d:"дзень",dd:o,M:"месяц",MM:o,y:"год",yy:o},meridiemParse:/ночы|раніцы|дня|вечара/,isPM:function(e){return/^(дня|вечара)$/.test(e)},meridiem:function(e,t,o){return e<4?"ночы":e<12?"раніцы":e<17?"дня":"вечара"},dayOfMonthOrdinalParse:/\d{1,2}-(і|ы|га)/,ordinal:function(e,t){switch(t){case"M":case"d":case"DDD":case"w":case"W":return e%10!=2&&e%10!=3||e%100==12||e%100==13?e+"-ы":e+"-і";case"D":return e+"-га";default:return e}},week:{dow:1,doy:7}})}(o(381))},8338:function(e,t,o){!function(e){"use strict";e.defineLocale("bg",{months:"януари_февруари_март_април_май_юни_юли_август_септември_октомври_ноември_декември".split("_"),monthsShort:"яну_фев_мар_апр_май_юни_юли_авг_сеп_окт_ное_дек".split("_"),weekdays:"неделя_понеделник_вторник_сряда_четвъртък_петък_събота".split("_"),weekdaysShort:"нед_пон_вто_сря_чет_пет_съб".split("_"),weekdaysMin:"нд_пн_вт_ср_чт_пт_сб".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[Днес в] LT",nextDay:"[Утре в] LT",nextWeek:"dddd [в] LT",lastDay:"[Вчера в] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[Миналата] dddd [в] LT";case 1:case 2:case 4:case 5:return"[Миналия] dddd [в] LT"}},sameElse:"L"},relativeTime:{future:"след %s",past:"преди %s",s:"няколко секунди",ss:"%d секунди",m:"минута",mm:"%d минути",h:"час",hh:"%d часа",d:"ден",dd:"%d дена",w:"седмица",ww:"%d седмици",M:"месец",MM:"%d месеца",y:"година",yy:"%d години"},dayOfMonthOrdinalParse:/\d{1,2}-(ев|ен|ти|ви|ри|ми)/,ordinal:function(e){var t=e%10,o=e%100;return 0===e?e+"-ев":0===o?e+"-ен":o>10&&o<20?e+"-ти":1===t?e+"-ви":2===t?e+"-ри":7===t||8===t?e+"-ми":e+"-ти"},week:{dow:1,doy:7}})}(o(381))},7438:function(e,t,o){!function(e){"use strict";e.defineLocale("bm",{months:"Zanwuyekalo_Fewuruyekalo_Marisikalo_Awirilikalo_Mɛkalo_Zuwɛnkalo_Zuluyekalo_Utikalo_Sɛtanburukalo_ɔkutɔburukalo_Nowanburukalo_Desanburukalo".split("_"),monthsShort:"Zan_Few_Mar_Awi_Mɛ_Zuw_Zul_Uti_Sɛt_ɔku_Now_Des".split("_"),weekdays:"Kari_Ntɛnɛn_Tarata_Araba_Alamisa_Juma_Sibiri".split("_"),weekdaysShort:"Kar_Ntɛ_Tar_Ara_Ala_Jum_Sib".split("_"),weekdaysMin:"Ka_Nt_Ta_Ar_Al_Ju_Si".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"MMMM [tile] D [san] YYYY",LLL:"MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm",LLLL:"dddd MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm"},calendar:{sameDay:"[Bi lɛrɛ] LT",nextDay:"[Sini lɛrɛ] LT",nextWeek:"dddd [don lɛrɛ] LT",lastDay:"[Kunu lɛrɛ] LT",lastWeek:"dddd [tɛmɛnen lɛrɛ] LT",sameElse:"L"},relativeTime:{future:"%s kɔnɔ",past:"a bɛ %s bɔ",s:"sanga dama dama",ss:"sekondi %d",m:"miniti kelen",mm:"miniti %d",h:"lɛrɛ kelen",hh:"lɛrɛ %d",d:"tile kelen",dd:"tile %d",M:"kalo kelen",MM:"kalo %d",y:"san kelen",yy:"san %d"},week:{dow:1,doy:4}})}(o(381))},6225:function(e,t,o){!function(e){"use strict";var t={1:"১",2:"২",3:"৩",4:"৪",5:"৫",6:"৬",7:"৭",8:"৮",9:"৯",0:"০"},o={"১":"1","২":"2","৩":"3","৪":"4","৫":"5","৬":"6","৭":"7","৮":"8","৯":"9","০":"0"};e.defineLocale("bn-bd",{months:"জানুয়ারি_ফেব্রুয়ারি_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর".split("_"),monthsShort:"জানু_ফেব্রু_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্ট_অক্টো_নভে_ডিসে".split("_"),weekdays:"রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পতিবার_শুক্রবার_শনিবার".split("_"),weekdaysShort:"রবি_সোম_মঙ্গল_বুধ_বৃহস্পতি_শুক্র_শনি".split("_"),weekdaysMin:"রবি_সোম_মঙ্গল_বুধ_বৃহ_শুক্র_শনি".split("_"),longDateFormat:{LT:"A h:mm সময়",LTS:"A h:mm:ss সময়",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm সময়",LLLL:"dddd, D MMMM YYYY, A h:mm সময়"},calendar:{sameDay:"[আজ] LT",nextDay:"[আগামীকাল] LT",nextWeek:"dddd, LT",lastDay:"[গতকাল] LT",lastWeek:"[গত] dddd, LT",sameElse:"L"},relativeTime:{future:"%s পরে",past:"%s আগে",s:"কয়েক সেকেন্ড",ss:"%d সেকেন্ড",m:"এক মিনিট",mm:"%d মিনিট",h:"এক ঘন্টা",hh:"%d ঘন্টা",d:"এক দিন",dd:"%d দিন",M:"এক মাস",MM:"%d মাস",y:"এক বছর",yy:"%d বছর"},preparse:function(e){return e.replace(/[১২৩৪৫৬৭৮৯০]/g,(function(e){return o[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},meridiemParse:/রাত|ভোর|সকাল|দুপুর|বিকাল|সন্ধ্যা|রাত/,meridiemHour:function(e,t){return 12===e&&(e=0),"রাত"===t?e<4?e:e+12:"ভোর"===t||"সকাল"===t?e:"দুপুর"===t?e>=3?e:e+12:"বিকাল"===t||"সন্ধ্যা"===t?e+12:void 0},meridiem:function(e,t,o){return e<4?"রাত":e<6?"ভোর":e<12?"সকাল":e<15?"দুপুর":e<18?"বিকাল":e<20?"সন্ধ্যা":"রাত"},week:{dow:0,doy:6}})}(o(381))},8905:function(e,t,o){!function(e){"use strict";var t={1:"১",2:"২",3:"৩",4:"৪",5:"৫",6:"৬",7:"৭",8:"৮",9:"৯",0:"০"},o={"১":"1","২":"2","৩":"3","৪":"4","৫":"5","৬":"6","৭":"7","৮":"8","৯":"9","০":"0"};e.defineLocale("bn",{months:"জানুয়ারি_ফেব্রুয়ারি_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর".split("_"),monthsShort:"জানু_ফেব্রু_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্ট_অক্টো_নভে_ডিসে".split("_"),weekdays:"রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পতিবার_শুক্রবার_শনিবার".split("_"),weekdaysShort:"রবি_সোম_মঙ্গল_বুধ_বৃহস্পতি_শুক্র_শনি".split("_"),weekdaysMin:"রবি_সোম_মঙ্গল_বুধ_বৃহ_শুক্র_শনি".split("_"),longDateFormat:{LT:"A h:mm সময়",LTS:"A h:mm:ss সময়",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm সময়",LLLL:"dddd, D MMMM YYYY, A h:mm সময়"},calendar:{sameDay:"[আজ] LT",nextDay:"[আগামীকাল] LT",nextWeek:"dddd, LT",lastDay:"[গতকাল] LT",lastWeek:"[গত] dddd, LT",sameElse:"L"},relativeTime:{future:"%s পরে",past:"%s আগে",s:"কয়েক সেকেন্ড",ss:"%d সেকেন্ড",m:"এক মিনিট",mm:"%d মিনিট",h:"এক ঘন্টা",hh:"%d ঘন্টা",d:"এক দিন",dd:"%d দিন",M:"এক মাস",MM:"%d মাস",y:"এক বছর",yy:"%d বছর"},preparse:function(e){return e.replace(/[১২৩৪৫৬৭৮৯০]/g,(function(e){return o[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},meridiemParse:/রাত|সকাল|দুপুর|বিকাল|রাত/,meridiemHour:function(e,t){return 12===e&&(e=0),"রাত"===t&&e>=4||"দুপুর"===t&&e<5||"বিকাল"===t?e+12:e},meridiem:function(e,t,o){return e<4?"রাত":e<10?"সকাল":e<17?"দুপুর":e<20?"বিকাল":"রাত"},week:{dow:0,doy:6}})}(o(381))},1560:function(e,t,o){!function(e){"use strict";var t={1:"༡",2:"༢",3:"༣",4:"༤",5:"༥",6:"༦",7:"༧",8:"༨",9:"༩",0:"༠"},o={"༡":"1","༢":"2","༣":"3","༤":"4","༥":"5","༦":"6","༧":"7","༨":"8","༩":"9","༠":"0"};e.defineLocale("bo",{months:"ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ".split("_"),monthsShort:"ཟླ་1_ཟླ་2_ཟླ་3_ཟླ་4_ཟླ་5_ཟླ་6_ཟླ་7_ཟླ་8_ཟླ་9_ཟླ་10_ཟླ་11_ཟླ་12".split("_"),monthsShortRegex:/^(ཟླ་\d{1,2})/,monthsParseExact:!0,weekdays:"གཟའ་ཉི་མ་_གཟའ་ཟླ་བ་_གཟའ་མིག་དམར་_གཟའ་ལྷག་པ་_གཟའ་ཕུར་བུ_གཟའ་པ་སངས་_གཟའ་སྤེན་པ་".split("_"),weekdaysShort:"ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་".split("_"),weekdaysMin:"ཉི_ཟླ_མིག_ལྷག_ཕུར_སངས_སྤེན".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm",LLLL:"dddd, D MMMM YYYY, A h:mm"},calendar:{sameDay:"[དི་རིང] LT",nextDay:"[སང་ཉིན] LT",nextWeek:"[བདུན་ཕྲག་རྗེས་མ], LT",lastDay:"[ཁ་སང] LT",lastWeek:"[བདུན་ཕྲག་མཐའ་མ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s ལ་",past:"%s སྔན་ལ",s:"ལམ་སང",ss:"%d སྐར་ཆ།",m:"སྐར་མ་གཅིག",mm:"%d སྐར་མ",h:"ཆུ་ཚོད་གཅིག",hh:"%d ཆུ་ཚོད",d:"ཉིན་གཅིག",dd:"%d ཉིན་",M:"ཟླ་བ་གཅིག",MM:"%d ཟླ་བ",y:"ལོ་གཅིག",yy:"%d ལོ"},preparse:function(e){return e.replace(/[༡༢༣༤༥༦༧༨༩༠]/g,(function(e){return o[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},meridiemParse:/མཚན་མོ|ཞོགས་ཀས|ཉིན་གུང|དགོང་དག|མཚན་མོ/,meridiemHour:function(e,t){return 12===e&&(e=0),"མཚན་མོ"===t&&e>=4||"ཉིན་གུང"===t&&e<5||"དགོང་དག"===t?e+12:e},meridiem:function(e,t,o){return e<4?"མཚན་མོ":e<10?"ཞོགས་ཀས":e<17?"ཉིན་གུང":e<20?"དགོང་དག":"མཚན་མོ"},week:{dow:0,doy:6}})}(o(381))},1278:function(e,t,o){!function(e){"use strict";function t(e,t,o){return e+" "+n({mm:"munutenn",MM:"miz",dd:"devezh"}[o],e)}function o(e){switch(i(e)){case 1:case 3:case 4:case 5:case 9:return e+" bloaz";default:return e+" vloaz"}}function i(e){return e>9?i(e%10):e}function n(e,t){return 2===t?r(e):e}function r(e){var t={m:"v",b:"v",d:"z"};return void 0===t[e.charAt(0)]?e:t[e.charAt(0)]+e.substring(1)}var a=[/^gen/i,/^c[ʼ\']hwe/i,/^meu/i,/^ebr/i,/^mae/i,/^(mez|eve)/i,/^gou/i,/^eos/i,/^gwe/i,/^her/i,/^du/i,/^ker/i],s=/^(genver|c[ʼ\']hwevrer|meurzh|ebrel|mae|mezheven|gouere|eost|gwengolo|here|du|kerzu|gen|c[ʼ\']hwe|meu|ebr|mae|eve|gou|eos|gwe|her|du|ker)/i,p=/^(genver|c[ʼ\']hwevrer|meurzh|ebrel|mae|mezheven|gouere|eost|gwengolo|here|du|kerzu)/i,c=/^(gen|c[ʼ\']hwe|meu|ebr|mae|eve|gou|eos|gwe|her|du|ker)/i,l=[/^sul/i,/^lun/i,/^meurzh/i,/^merc[ʼ\']her/i,/^yaou/i,/^gwener/i,/^sadorn/i],b=[/^Sul/i,/^Lun/i,/^Meu/i,/^Mer/i,/^Yao/i,/^Gwe/i,/^Sad/i],d=[/^Su/i,/^Lu/i,/^Me([^r]|$)/i,/^Mer/i,/^Ya/i,/^Gw/i,/^Sa/i];e.defineLocale("br",{months:"Genver_Cʼhwevrer_Meurzh_Ebrel_Mae_Mezheven_Gouere_Eost_Gwengolo_Here_Du_Kerzu".split("_"),monthsShort:"Gen_Cʼhwe_Meu_Ebr_Mae_Eve_Gou_Eos_Gwe_Her_Du_Ker".split("_"),weekdays:"Sul_Lun_Meurzh_Mercʼher_Yaou_Gwener_Sadorn".split("_"),weekdaysShort:"Sul_Lun_Meu_Mer_Yao_Gwe_Sad".split("_"),weekdaysMin:"Su_Lu_Me_Mer_Ya_Gw_Sa".split("_"),weekdaysParse:d,fullWeekdaysParse:l,shortWeekdaysParse:b,minWeekdaysParse:d,monthsRegex:s,monthsShortRegex:s,monthsStrictRegex:p,monthsShortStrictRegex:c,monthsParse:a,longMonthsParse:a,shortMonthsParse:a,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [a viz] MMMM YYYY",LLL:"D [a viz] MMMM YYYY HH:mm",LLLL:"dddd, D [a viz] MMMM YYYY HH:mm"},calendar:{sameDay:"[Hiziv da] LT",nextDay:"[Warcʼhoazh da] LT",nextWeek:"dddd [da] LT",lastDay:"[Decʼh da] LT",lastWeek:"dddd [paset da] LT",sameElse:"L"},relativeTime:{future:"a-benn %s",past:"%s ʼzo",s:"un nebeud segondennoù",ss:"%d eilenn",m:"ur vunutenn",mm:t,h:"un eur",hh:"%d eur",d:"un devezh",dd:t,M:"ur miz",MM:t,y:"ur bloaz",yy:o},dayOfMonthOrdinalParse:/\d{1,2}(añ|vet)/,ordinal:function(e){return e+(1===e?"añ":"vet")},week:{dow:1,doy:4},meridiemParse:/a.m.|g.m./,isPM:function(e){return"g.m."===e},meridiem:function(e,t,o){return e<12?"a.m.":"g.m."}})}(o(381))},622:function(e,t,o){!function(e){"use strict";function t(e,t,o){var i=e+" ";switch(o){case"ss":return i+=1===e?"sekunda":2===e||3===e||4===e?"sekunde":"sekundi";case"m":return t?"jedna minuta":"jedne minute";case"mm":return i+=1===e?"minuta":2===e||3===e||4===e?"minute":"minuta";case"h":return t?"jedan sat":"jednog sata";case"hh":return i+=1===e?"sat":2===e||3===e||4===e?"sata":"sati";case"dd":return i+=1===e?"dan":"dana";case"MM":return i+=1===e?"mjesec":2===e||3===e||4===e?"mjeseca":"mjeseci";case"yy":return i+=1===e?"godina":2===e||3===e||4===e?"godine":"godina"}}e.defineLocale("bs",{months:"januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar".split("_"),monthsShort:"jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_pe_su".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[jučer u] LT",lastWeek:function(){switch(this.day()){case 0:case 3:return"[prošlu] dddd [u] LT";case 6:return"[prošle] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[prošli] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",ss:t,m:t,mm:t,h:t,hh:t,d:"dan",dd:t,M:"mjesec",MM:t,y:"godinu",yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(o(381))},2468:function(e,t,o){!function(e){"use strict";e.defineLocale("ca",{months:{standalone:"gener_febrer_març_abril_maig_juny_juliol_agost_setembre_octubre_novembre_desembre".split("_"),format:"de gener_de febrer_de març_d'abril_de maig_de juny_de juliol_d'agost_de setembre_d'octubre_de novembre_de desembre".split("_"),isFormat:/D[oD]?(\s)+MMMM/},monthsShort:"gen._febr._març_abr._maig_juny_jul._ag._set._oct._nov._des.".split("_"),monthsParseExact:!0,weekdays:"diumenge_dilluns_dimarts_dimecres_dijous_divendres_dissabte".split("_"),weekdaysShort:"dg._dl._dt._dc._dj._dv._ds.".split("_"),weekdaysMin:"dg_dl_dt_dc_dj_dv_ds".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM [de] YYYY",ll:"D MMM YYYY",LLL:"D MMMM [de] YYYY [a les] H:mm",lll:"D MMM YYYY, H:mm",LLLL:"dddd D MMMM [de] YYYY [a les] H:mm",llll:"ddd D MMM YYYY, H:mm"},calendar:{sameDay:function(){return"[avui a "+(1!==this.hours()?"les":"la")+"] LT"},nextDay:function(){return"[demà a "+(1!==this.hours()?"les":"la")+"] LT"},nextWeek:function(){return"dddd [a "+(1!==this.hours()?"les":"la")+"] LT"},lastDay:function(){return"[ahir a "+(1!==this.hours()?"les":"la")+"] LT"},lastWeek:function(){return"[el] dddd [passat a "+(1!==this.hours()?"les":"la")+"] LT"},sameElse:"L"},relativeTime:{future:"d'aquí %s",past:"fa %s",s:"uns segons",ss:"%d segons",m:"un minut",mm:"%d minuts",h:"una hora",hh:"%d hores",d:"un dia",dd:"%d dies",M:"un mes",MM:"%d mesos",y:"un any",yy:"%d anys"},dayOfMonthOrdinalParse:/\d{1,2}(r|n|t|è|a)/,ordinal:function(e,t){var o=1===e?"r":2===e?"n":3===e?"r":4===e?"t":"è";return"w"!==t&&"W"!==t||(o="a"),e+o},week:{dow:1,doy:4}})}(o(381))},5822:function(e,t,o){!function(e){"use strict";var t={format:"leden_únor_březen_duben_květen_červen_červenec_srpen_září_říjen_listopad_prosinec".split("_"),standalone:"ledna_února_března_dubna_května_června_července_srpna_září_října_listopadu_prosince".split("_")},o="led_úno_bře_dub_kvě_čvn_čvc_srp_zář_říj_lis_pro".split("_"),i=[/^led/i,/^úno/i,/^bře/i,/^dub/i,/^kvě/i,/^(čvn|červen$|června)/i,/^(čvc|červenec|července)/i,/^srp/i,/^zář/i,/^říj/i,/^lis/i,/^pro/i],n=/^(leden|únor|březen|duben|květen|červenec|července|červen|června|srpen|září|říjen|listopad|prosinec|led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i;function r(e){return e>1&&e<5&&1!=~~(e/10)}function a(e,t,o,i){var n=e+" ";switch(o){case"s":return t||i?"pár sekund":"pár sekundami";case"ss":return t||i?n+(r(e)?"sekundy":"sekund"):n+"sekundami";case"m":return t?"minuta":i?"minutu":"minutou";case"mm":return t||i?n+(r(e)?"minuty":"minut"):n+"minutami";case"h":return t?"hodina":i?"hodinu":"hodinou";case"hh":return t||i?n+(r(e)?"hodiny":"hodin"):n+"hodinami";case"d":return t||i?"den":"dnem";case"dd":return t||i?n+(r(e)?"dny":"dní"):n+"dny";case"M":return t||i?"měsíc":"měsícem";case"MM":return t||i?n+(r(e)?"měsíce":"měsíců"):n+"měsíci";case"y":return t||i?"rok":"rokem";case"yy":return t||i?n+(r(e)?"roky":"let"):n+"lety"}}e.defineLocale("cs",{months:t,monthsShort:o,monthsRegex:n,monthsShortRegex:n,monthsStrictRegex:/^(leden|ledna|února|únor|březen|března|duben|dubna|květen|května|červenec|července|červen|června|srpen|srpna|září|říjen|října|listopadu|listopad|prosinec|prosince)/i,monthsShortStrictRegex:/^(led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i,monthsParse:i,longMonthsParse:i,shortMonthsParse:i,weekdays:"neděle_pondělí_úterý_středa_čtvrtek_pátek_sobota".split("_"),weekdaysShort:"ne_po_út_st_čt_pá_so".split("_"),weekdaysMin:"ne_po_út_st_čt_pá_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd D. MMMM YYYY H:mm",l:"D. M. YYYY"},calendar:{sameDay:"[dnes v] LT",nextDay:"[zítra v] LT",nextWeek:function(){switch(this.day()){case 0:return"[v neděli v] LT";case 1:case 2:return"[v] dddd [v] LT";case 3:return"[ve středu v] LT";case 4:return"[ve čtvrtek v] LT";case 5:return"[v pátek v] LT";case 6:return"[v sobotu v] LT"}},lastDay:"[včera v] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulou neděli v] LT";case 1:case 2:return"[minulé] dddd [v] LT";case 3:return"[minulou středu v] LT";case 4:case 5:return"[minulý] dddd [v] LT";case 6:return"[minulou sobotu v] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"před %s",s:a,ss:a,m:a,mm:a,h:a,hh:a,d:a,dd:a,M:a,MM:a,y:a,yy:a},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(o(381))},877:function(e,t,o){!function(e){"use strict";e.defineLocale("cv",{months:"кӑрлач_нарӑс_пуш_ака_май_ҫӗртме_утӑ_ҫурла_авӑн_юпа_чӳк_раштав".split("_"),monthsShort:"кӑр_нар_пуш_ака_май_ҫӗр_утӑ_ҫур_авн_юпа_чӳк_раш".split("_"),weekdays:"вырсарникун_тунтикун_ытларикун_юнкун_кӗҫнерникун_эрнекун_шӑматкун".split("_"),weekdaysShort:"выр_тун_ытл_юн_кӗҫ_эрн_шӑм".split("_"),weekdaysMin:"вр_тн_ыт_юн_кҫ_эр_шм".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ]",LLL:"YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm",LLLL:"dddd, YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm"},calendar:{sameDay:"[Паян] LT [сехетре]",nextDay:"[Ыран] LT [сехетре]",lastDay:"[Ӗнер] LT [сехетре]",nextWeek:"[Ҫитес] dddd LT [сехетре]",lastWeek:"[Иртнӗ] dddd LT [сехетре]",sameElse:"L"},relativeTime:{future:function(e){return e+(/сехет$/i.exec(e)?"рен":/ҫул$/i.exec(e)?"тан":"ран")},past:"%s каялла",s:"пӗр-ик ҫеккунт",ss:"%d ҫеккунт",m:"пӗр минут",mm:"%d минут",h:"пӗр сехет",hh:"%d сехет",d:"пӗр кун",dd:"%d кун",M:"пӗр уйӑх",MM:"%d уйӑх",y:"пӗр ҫул",yy:"%d ҫул"},dayOfMonthOrdinalParse:/\d{1,2}-мӗш/,ordinal:"%d-мӗш",week:{dow:1,doy:7}})}(o(381))},7373:function(e,t,o){!function(e){"use strict";e.defineLocale("cy",{months:"Ionawr_Chwefror_Mawrth_Ebrill_Mai_Mehefin_Gorffennaf_Awst_Medi_Hydref_Tachwedd_Rhagfyr".split("_"),monthsShort:"Ion_Chwe_Maw_Ebr_Mai_Meh_Gor_Aws_Med_Hyd_Tach_Rhag".split("_"),weekdays:"Dydd Sul_Dydd Llun_Dydd Mawrth_Dydd Mercher_Dydd Iau_Dydd Gwener_Dydd Sadwrn".split("_"),weekdaysShort:"Sul_Llun_Maw_Mer_Iau_Gwe_Sad".split("_"),weekdaysMin:"Su_Ll_Ma_Me_Ia_Gw_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Heddiw am] LT",nextDay:"[Yfory am] LT",nextWeek:"dddd [am] LT",lastDay:"[Ddoe am] LT",lastWeek:"dddd [diwethaf am] LT",sameElse:"L"},relativeTime:{future:"mewn %s",past:"%s yn ôl",s:"ychydig eiliadau",ss:"%d eiliad",m:"munud",mm:"%d munud",h:"awr",hh:"%d awr",d:"diwrnod",dd:"%d diwrnod",M:"mis",MM:"%d mis",y:"blwyddyn",yy:"%d flynedd"},dayOfMonthOrdinalParse:/\d{1,2}(fed|ain|af|il|ydd|ed|eg)/,ordinal:function(e){var t="";return e>20?t=40===e||50===e||60===e||80===e||100===e?"fed":"ain":e>0&&(t=["","af","il","ydd","ydd","ed","ed","ed","fed","fed","fed","eg","fed","eg","eg","fed","eg","eg","fed","eg","fed"][e]),e+t},week:{dow:1,doy:4}})}(o(381))},4780:function(e,t,o){!function(e){"use strict";e.defineLocale("da",{months:"januar_februar_marts_april_maj_juni_juli_august_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"),weekdays:"søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag".split("_"),weekdaysShort:"søn_man_tir_ons_tor_fre_lør".split("_"),weekdaysMin:"sø_ma_ti_on_to_fr_lø".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd [d.] D. MMMM YYYY [kl.] HH:mm"},calendar:{sameDay:"[i dag kl.] LT",nextDay:"[i morgen kl.] LT",nextWeek:"på dddd [kl.] LT",lastDay:"[i går kl.] LT",lastWeek:"[i] dddd[s kl.] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s siden",s:"få sekunder",ss:"%d sekunder",m:"et minut",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dage",M:"en måned",MM:"%d måneder",y:"et år",yy:"%d år"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(o(381))},217:function(e,t,o){!function(e){"use strict";function t(e,t,o,i){var n={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[e+" Tage",e+" Tagen"],w:["eine Woche","einer Woche"],M:["ein Monat","einem Monat"],MM:[e+" Monate",e+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[e+" Jahre",e+" Jahren"]};return t?n[o][0]:n[o][1]}e.defineLocale("de-at",{months:"Jänner_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jän._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},calendar:{sameDay:"[heute um] LT [Uhr]",sameElse:"L",nextDay:"[morgen um] LT [Uhr]",nextWeek:"dddd [um] LT [Uhr]",lastDay:"[gestern um] LT [Uhr]",lastWeek:"[letzten] dddd [um] LT [Uhr]"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",ss:"%d Sekunden",m:t,mm:"%d Minuten",h:t,hh:"%d Stunden",d:t,dd:t,w:t,ww:"%d Wochen",M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(o(381))},894:function(e,t,o){!function(e){"use strict";function t(e,t,o,i){var n={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[e+" Tage",e+" Tagen"],w:["eine Woche","einer Woche"],M:["ein Monat","einem Monat"],MM:[e+" Monate",e+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[e+" Jahre",e+" Jahren"]};return t?n[o][0]:n[o][1]}e.defineLocale("de-ch",{months:"Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},calendar:{sameDay:"[heute um] LT [Uhr]",sameElse:"L",nextDay:"[morgen um] LT [Uhr]",nextWeek:"dddd [um] LT [Uhr]",lastDay:"[gestern um] LT [Uhr]",lastWeek:"[letzten] dddd [um] LT [Uhr]"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",ss:"%d Sekunden",m:t,mm:"%d Minuten",h:t,hh:"%d Stunden",d:t,dd:t,w:t,ww:"%d Wochen",M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(o(381))},9740:function(e,t,o){!function(e){"use strict";function t(e,t,o,i){var n={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[e+" Tage",e+" Tagen"],w:["eine Woche","einer Woche"],M:["ein Monat","einem Monat"],MM:[e+" Monate",e+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[e+" Jahre",e+" Jahren"]};return t?n[o][0]:n[o][1]}e.defineLocale("de",{months:"Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},calendar:{sameDay:"[heute um] LT [Uhr]",sameElse:"L",nextDay:"[morgen um] LT [Uhr]",nextWeek:"dddd [um] LT [Uhr]",lastDay:"[gestern um] LT [Uhr]",lastWeek:"[letzten] dddd [um] LT [Uhr]"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",ss:"%d Sekunden",m:t,mm:"%d Minuten",h:t,hh:"%d Stunden",d:t,dd:t,w:t,ww:"%d Wochen",M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(o(381))},5300:function(e,t,o){!function(e){"use strict";var t=["ޖެނުއަރީ","ފެބްރުއަރީ","މާރިޗު","އޭޕްރީލު","މޭ","ޖޫން","ޖުލައި","އޯގަސްޓު","ސެޕްޓެމްބަރު","އޮކްޓޯބަރު","ނޮވެމްބަރު","ޑިސެމްބަރު"],o=["އާދިއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"];e.defineLocale("dv",{months:t,monthsShort:t,weekdays:o,weekdaysShort:o,weekdaysMin:"އާދި_ހޯމަ_އަން_ބުދަ_ބުރާ_ހުކު_ހޮނި".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/M/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/މކ|މފ/,isPM:function(e){return"މފ"===e},meridiem:function(e,t,o){return e<12?"މކ":"މފ"},calendar:{sameDay:"[މިއަދު] LT",nextDay:"[މާދަމާ] LT",nextWeek:"dddd LT",lastDay:"[އިއްޔެ] LT",lastWeek:"[ފާއިތުވި] dddd LT",sameElse:"L"},relativeTime:{future:"ތެރޭގައި %s",past:"ކުރިން %s",s:"ސިކުންތުކޮޅެއް",ss:"d% ސިކުންތު",m:"މިނިޓެއް",mm:"މިނިޓު %d",h:"ގަޑިއިރެއް",hh:"ގަޑިއިރު %d",d:"ދުވަހެއް",dd:"ދުވަސް %d",M:"މަހެއް",MM:"މަސް %d",y:"އަހަރެއް",yy:"އަހަރު %d"},preparse:function(e){return e.replace(/،/g,",")},postformat:function(e){return e.replace(/,/g,"،")},week:{dow:7,doy:12}})}(o(381))},837:function(e,t,o){!function(e){"use strict";function t(e){return"undefined"!=typeof Function&&e instanceof Function||"[object Function]"===Object.prototype.toString.call(e)}e.defineLocale("el",{monthsNominativeEl:"Ιανουάριος_Φεβρουάριος_Μάρτιος_Απρίλιος_Μάιος_Ιούνιος_Ιούλιος_Αύγουστος_Σεπτέμβριος_Οκτώβριος_Νοέμβριος_Δεκέμβριος".split("_"),monthsGenitiveEl:"Ιανουαρίου_Φεβρουαρίου_Μαρτίου_Απριλίου_Μαΐου_Ιουνίου_Ιουλίου_Αυγούστου_Σεπτεμβρίου_Οκτωβρίου_Νοεμβρίου_Δεκεμβρίου".split("_"),months:function(e,t){return e?"string"==typeof t&&/D/.test(t.substring(0,t.indexOf("MMMM")))?this._monthsGenitiveEl[e.month()]:this._monthsNominativeEl[e.month()]:this._monthsNominativeEl},monthsShort:"Ιαν_Φεβ_Μαρ_Απρ_Μαϊ_Ιουν_Ιουλ_Αυγ_Σεπ_Οκτ_Νοε_Δεκ".split("_"),weekdays:"Κυριακή_Δευτέρα_Τρίτη_Τετάρτη_Πέμπτη_Παρασκευή_Σάββατο".split("_"),weekdaysShort:"Κυρ_Δευ_Τρι_Τετ_Πεμ_Παρ_Σαβ".split("_"),weekdaysMin:"Κυ_Δε_Τρ_Τε_Πε_Πα_Σα".split("_"),meridiem:function(e,t,o){return e>11?o?"μμ":"ΜΜ":o?"πμ":"ΠΜ"},isPM:function(e){return"μ"===(e+"").toLowerCase()[0]},meridiemParse:/[ΠΜ]\.?Μ?\.?/i,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendarEl:{sameDay:"[Σήμερα {}] LT",nextDay:"[Αύριο {}] LT",nextWeek:"dddd [{}] LT",lastDay:"[Χθες {}] LT",lastWeek:function(){return 6===this.day()?"[το προηγούμενο] dddd [{}] LT":"[την προηγούμενη] dddd [{}] LT"},sameElse:"L"},calendar:function(e,o){var i=this._calendarEl[e],n=o&&o.hours();return t(i)&&(i=i.apply(o)),i.replace("{}",n%12==1?"στη":"στις")},relativeTime:{future:"σε %s",past:"%s πριν",s:"λίγα δευτερόλεπτα",ss:"%d δευτερόλεπτα",m:"ένα λεπτό",mm:"%d λεπτά",h:"μία ώρα",hh:"%d ώρες",d:"μία μέρα",dd:"%d μέρες",M:"ένας μήνας",MM:"%d μήνες",y:"ένας χρόνος",yy:"%d χρόνια"},dayOfMonthOrdinalParse:/\d{1,2}η/,ordinal:"%dη",week:{dow:1,doy:4}})}(o(381))},8348:function(e,t,o){!function(e){"use strict";e.defineLocale("en-au",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var t=e%10;return e+(1==~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")},week:{dow:0,doy:4}})}(o(381))},7925:function(e,t,o){!function(e){"use strict";e.defineLocale("en-ca",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"YYYY-MM-DD",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var t=e%10;return e+(1==~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")}})}(o(381))},2243:function(e,t,o){!function(e){"use strict";e.defineLocale("en-gb",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var t=e%10;return e+(1==~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")},week:{dow:1,doy:4}})}(o(381))},6436:function(e,t,o){!function(e){"use strict";e.defineLocale("en-ie",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var t=e%10;return e+(1==~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")},week:{dow:1,doy:4}})}(o(381))},7207:function(e,t,o){!function(e){"use strict";e.defineLocale("en-il",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var t=e%10;return e+(1==~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")}})}(o(381))},4175:function(e,t,o){!function(e){"use strict";e.defineLocale("en-in",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var t=e%10;return e+(1==~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")},week:{dow:0,doy:6}})}(o(381))},6319:function(e,t,o){!function(e){"use strict";e.defineLocale("en-nz",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var t=e%10;return e+(1==~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")},week:{dow:1,doy:4}})}(o(381))},1662:function(e,t,o){!function(e){"use strict";e.defineLocale("en-sg",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var t=e%10;return e+(1==~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")},week:{dow:1,doy:4}})}(o(381))},2915:function(e,t,o){!function(e){"use strict";e.defineLocale("eo",{months:"januaro_februaro_marto_aprilo_majo_junio_julio_aŭgusto_septembro_oktobro_novembro_decembro".split("_"),monthsShort:"jan_feb_mart_apr_maj_jun_jul_aŭg_sept_okt_nov_dec".split("_"),weekdays:"dimanĉo_lundo_mardo_merkredo_ĵaŭdo_vendredo_sabato".split("_"),weekdaysShort:"dim_lun_mard_merk_ĵaŭ_ven_sab".split("_"),weekdaysMin:"di_lu_ma_me_ĵa_ve_sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"[la] D[-an de] MMMM, YYYY",LLL:"[la] D[-an de] MMMM, YYYY HH:mm",LLLL:"dddd[n], [la] D[-an de] MMMM, YYYY HH:mm",llll:"ddd, [la] D[-an de] MMM, YYYY HH:mm"},meridiemParse:/[ap]\.t\.m/i,isPM:function(e){return"p"===e.charAt(0).toLowerCase()},meridiem:function(e,t,o){return e>11?o?"p.t.m.":"P.T.M.":o?"a.t.m.":"A.T.M."},calendar:{sameDay:"[Hodiaŭ je] LT",nextDay:"[Morgaŭ je] LT",nextWeek:"dddd[n je] LT",lastDay:"[Hieraŭ je] LT",lastWeek:"[pasintan] dddd[n je] LT",sameElse:"L"},relativeTime:{future:"post %s",past:"antaŭ %s",s:"kelkaj sekundoj",ss:"%d sekundoj",m:"unu minuto",mm:"%d minutoj",h:"unu horo",hh:"%d horoj",d:"unu tago",dd:"%d tagoj",M:"unu monato",MM:"%d monatoj",y:"unu jaro",yy:"%d jaroj"},dayOfMonthOrdinalParse:/\d{1,2}a/,ordinal:"%da",week:{dow:1,doy:7}})}(o(381))},2088:function(e,t,o){!function(e){"use strict";var t="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),o="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),i=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],n=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i;e.defineLocale("es-do",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(e,i){return e?/-MMM-/.test(i)?o[e.month()]:t[e.month()]:t},monthsRegex:n,monthsShortRegex:n,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:i,longMonthsParse:i,shortMonthsParse:i,weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY h:mm A",LLLL:"dddd, D [de] MMMM [de] YYYY h:mm A"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[mañana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un día",dd:"%d días",w:"una semana",ww:"%d semanas",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(o(381))},6112:function(e,t,o){!function(e){"use strict";var t="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),o="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),i=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],n=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i;e.defineLocale("es-mx",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(e,i){return e?/-MMM-/.test(i)?o[e.month()]:t[e.month()]:t},monthsRegex:n,monthsShortRegex:n,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:i,longMonthsParse:i,shortMonthsParse:i,weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY H:mm",LLLL:"dddd, D [de] MMMM [de] YYYY H:mm"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[mañana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un día",dd:"%d días",w:"una semana",ww:"%d semanas",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:0,doy:4},invalidDate:"Fecha inválida"})}(o(381))},1146:function(e,t,o){!function(e){"use strict";var t="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),o="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),i=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],n=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i;e.defineLocale("es-us",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(e,i){return e?/-MMM-/.test(i)?o[e.month()]:t[e.month()]:t},monthsRegex:n,monthsShortRegex:n,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:i,longMonthsParse:i,shortMonthsParse:i,weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"MM/DD/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY h:mm A",LLLL:"dddd, D [de] MMMM [de] YYYY h:mm A"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[mañana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un día",dd:"%d días",w:"una semana",ww:"%d semanas",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:0,doy:6}})}(o(381))},5655:function(e,t,o){!function(e){"use strict";var t="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),o="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),i=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],n=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i;e.defineLocale("es",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(e,i){return e?/-MMM-/.test(i)?o[e.month()]:t[e.month()]:t},monthsRegex:n,monthsShortRegex:n,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:i,longMonthsParse:i,shortMonthsParse:i,weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY H:mm",LLLL:"dddd, D [de] MMMM [de] YYYY H:mm"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[mañana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un día",dd:"%d días",w:"una semana",ww:"%d semanas",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4},invalidDate:"Fecha inválida"})}(o(381))},5603:function(e,t,o){!function(e){"use strict";function t(e,t,o,i){var n={s:["mõne sekundi","mõni sekund","paar sekundit"],ss:[e+"sekundi",e+"sekundit"],m:["ühe minuti","üks minut"],mm:[e+" minuti",e+" minutit"],h:["ühe tunni","tund aega","üks tund"],hh:[e+" tunni",e+" tundi"],d:["ühe päeva","üks päev"],M:["kuu aja","kuu aega","üks kuu"],MM:[e+" kuu",e+" kuud"],y:["ühe aasta","aasta","üks aasta"],yy:[e+" aasta",e+" aastat"]};return t?n[o][2]?n[o][2]:n[o][1]:i?n[o][0]:n[o][1]}e.defineLocale("et",{months:"jaanuar_veebruar_märts_aprill_mai_juuni_juuli_august_september_oktoober_november_detsember".split("_"),monthsShort:"jaan_veebr_märts_apr_mai_juuni_juuli_aug_sept_okt_nov_dets".split("_"),weekdays:"pühapäev_esmaspäev_teisipäev_kolmapäev_neljapäev_reede_laupäev".split("_"),weekdaysShort:"P_E_T_K_N_R_L".split("_"),weekdaysMin:"P_E_T_K_N_R_L".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[Täna,] LT",nextDay:"[Homme,] LT",nextWeek:"[Järgmine] dddd LT",lastDay:"[Eile,] LT",lastWeek:"[Eelmine] dddd LT",sameElse:"L"},relativeTime:{future:"%s pärast",past:"%s tagasi",s:t,ss:t,m:t,mm:t,h:t,hh:t,d:t,dd:"%d päeva",M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(o(381))},7763:function(e,t,o){!function(e){"use strict";e.defineLocale("eu",{months:"urtarrila_otsaila_martxoa_apirila_maiatza_ekaina_uztaila_abuztua_iraila_urria_azaroa_abendua".split("_"),monthsShort:"urt._ots._mar._api._mai._eka._uzt._abu._ira._urr._aza._abe.".split("_"),monthsParseExact:!0,weekdays:"igandea_astelehena_asteartea_asteazkena_osteguna_ostirala_larunbata".split("_"),weekdaysShort:"ig._al._ar._az._og._ol._lr.".split("_"),weekdaysMin:"ig_al_ar_az_og_ol_lr".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY[ko] MMMM[ren] D[a]",LLL:"YYYY[ko] MMMM[ren] D[a] HH:mm",LLLL:"dddd, YYYY[ko] MMMM[ren] D[a] HH:mm",l:"YYYY-M-D",ll:"YYYY[ko] MMM D[a]",lll:"YYYY[ko] MMM D[a] HH:mm",llll:"ddd, YYYY[ko] MMM D[a] HH:mm"},calendar:{sameDay:"[gaur] LT[etan]",nextDay:"[bihar] LT[etan]",nextWeek:"dddd LT[etan]",lastDay:"[atzo] LT[etan]",lastWeek:"[aurreko] dddd LT[etan]",sameElse:"L"},relativeTime:{future:"%s barru",past:"duela %s",s:"segundo batzuk",ss:"%d segundo",m:"minutu bat",mm:"%d minutu",h:"ordu bat",hh:"%d ordu",d:"egun bat",dd:"%d egun",M:"hilabete bat",MM:"%d hilabete",y:"urte bat",yy:"%d urte"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(o(381))},6959:function(e,t,o){!function(e){"use strict";var t={1:"۱",2:"۲",3:"۳",4:"۴",5:"۵",6:"۶",7:"۷",8:"۸",9:"۹",0:"۰"},o={"۱":"1","۲":"2","۳":"3","۴":"4","۵":"5","۶":"6","۷":"7","۸":"8","۹":"9","۰":"0"};e.defineLocale("fa",{months:"ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر".split("_"),monthsShort:"ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر".split("_"),weekdays:"یک‌شنبه_دوشنبه_سه‌شنبه_چهارشنبه_پنج‌شنبه_جمعه_شنبه".split("_"),weekdaysShort:"یک‌شنبه_دوشنبه_سه‌شنبه_چهارشنبه_پنج‌شنبه_جمعه_شنبه".split("_"),weekdaysMin:"ی_د_س_چ_پ_ج_ش".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},meridiemParse:/قبل از ظهر|بعد از ظهر/,isPM:function(e){return/بعد از ظهر/.test(e)},meridiem:function(e,t,o){return e<12?"قبل از ظهر":"بعد از ظهر"},calendar:{sameDay:"[امروز ساعت] LT",nextDay:"[فردا ساعت] LT",nextWeek:"dddd [ساعت] LT",lastDay:"[دیروز ساعت] LT",lastWeek:"dddd [پیش] [ساعت] LT",sameElse:"L"},relativeTime:{future:"در %s",past:"%s پیش",s:"چند ثانیه",ss:"%d ثانیه",m:"یک دقیقه",mm:"%d دقیقه",h:"یک ساعت",hh:"%d ساعت",d:"یک روز",dd:"%d روز",M:"یک ماه",MM:"%d ماه",y:"یک سال",yy:"%d سال"},preparse:function(e){return e.replace(/[۰-۹]/g,(function(e){return o[e]})).replace(/،/g,",")},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]})).replace(/,/g,"،")},dayOfMonthOrdinalParse:/\d{1,2}م/,ordinal:"%dم",week:{dow:6,doy:12}})}(o(381))},1897:function(e,t,o){!function(e){"use strict";var t="nolla yksi kaksi kolme neljä viisi kuusi seitsemän kahdeksan yhdeksän".split(" "),o=["nolla","yhden","kahden","kolmen","neljän","viiden","kuuden",t[7],t[8],t[9]];function i(e,t,o,i){var r="";switch(o){case"s":return i?"muutaman sekunnin":"muutama sekunti";case"ss":r=i?"sekunnin":"sekuntia";break;case"m":return i?"minuutin":"minuutti";case"mm":r=i?"minuutin":"minuuttia";break;case"h":return i?"tunnin":"tunti";case"hh":r=i?"tunnin":"tuntia";break;case"d":return i?"päivän":"päivä";case"dd":r=i?"päivän":"päivää";break;case"M":return i?"kuukauden":"kuukausi";case"MM":r=i?"kuukauden":"kuukautta";break;case"y":return i?"vuoden":"vuosi";case"yy":r=i?"vuoden":"vuotta"}return r=n(e,i)+" "+r}function n(e,i){return e<10?i?o[e]:t[e]:e}e.defineLocale("fi",{months:"tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kesäkuu_heinäkuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu".split("_"),monthsShort:"tammi_helmi_maalis_huhti_touko_kesä_heinä_elo_syys_loka_marras_joulu".split("_"),weekdays:"sunnuntai_maanantai_tiistai_keskiviikko_torstai_perjantai_lauantai".split("_"),weekdaysShort:"su_ma_ti_ke_to_pe_la".split("_"),weekdaysMin:"su_ma_ti_ke_to_pe_la".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD.MM.YYYY",LL:"Do MMMM[ta] YYYY",LLL:"Do MMMM[ta] YYYY, [klo] HH.mm",LLLL:"dddd, Do MMMM[ta] YYYY, [klo] HH.mm",l:"D.M.YYYY",ll:"Do MMM YYYY",lll:"Do MMM YYYY, [klo] HH.mm",llll:"ddd, Do MMM YYYY, [klo] HH.mm"},calendar:{sameDay:"[tänään] [klo] LT",nextDay:"[huomenna] [klo] LT",nextWeek:"dddd [klo] LT",lastDay:"[eilen] [klo] LT",lastWeek:"[viime] dddd[na] [klo] LT",sameElse:"L"},relativeTime:{future:"%s päästä",past:"%s sitten",s:i,ss:i,m:i,mm:i,h:i,hh:i,d:i,dd:i,M:i,MM:i,y:i,yy:i},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(o(381))},2549:function(e,t,o){!function(e){"use strict";e.defineLocale("fil",{months:"Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre".split("_"),monthsShort:"Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis".split("_"),weekdays:"Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado".split("_"),weekdaysShort:"Lin_Lun_Mar_Miy_Huw_Biy_Sab".split("_"),weekdaysMin:"Li_Lu_Ma_Mi_Hu_Bi_Sab".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"MM/D/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY HH:mm",LLLL:"dddd, MMMM DD, YYYY HH:mm"},calendar:{sameDay:"LT [ngayong araw]",nextDay:"[Bukas ng] LT",nextWeek:"LT [sa susunod na] dddd",lastDay:"LT [kahapon]",lastWeek:"LT [noong nakaraang] dddd",sameElse:"L"},relativeTime:{future:"sa loob ng %s",past:"%s ang nakalipas",s:"ilang segundo",ss:"%d segundo",m:"isang minuto",mm:"%d minuto",h:"isang oras",hh:"%d oras",d:"isang araw",dd:"%d araw",M:"isang buwan",MM:"%d buwan",y:"isang taon",yy:"%d taon"},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal:function(e){return e},week:{dow:1,doy:4}})}(o(381))},4694:function(e,t,o){!function(e){"use strict";e.defineLocale("fo",{months:"januar_februar_mars_apríl_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"),weekdays:"sunnudagur_mánadagur_týsdagur_mikudagur_hósdagur_fríggjadagur_leygardagur".split("_"),weekdaysShort:"sun_mán_týs_mik_hós_frí_ley".split("_"),weekdaysMin:"su_má_tý_mi_hó_fr_le".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D. MMMM, YYYY HH:mm"},calendar:{sameDay:"[Í dag kl.] LT",nextDay:"[Í morgin kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[Í gjár kl.] LT",lastWeek:"[síðstu] dddd [kl] LT",sameElse:"L"},relativeTime:{future:"um %s",past:"%s síðani",s:"fá sekund",ss:"%d sekundir",m:"ein minuttur",mm:"%d minuttir",h:"ein tími",hh:"%d tímar",d:"ein dagur",dd:"%d dagar",M:"ein mánaður",MM:"%d mánaðir",y:"eitt ár",yy:"%d ár"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(o(381))},3049:function(e,t,o){!function(e){"use strict";e.defineLocale("fr-ca",{months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"),monthsParseExact:!0,weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"di_lu_ma_me_je_ve_sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd’hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",ss:"%d secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},dayOfMonthOrdinalParse:/\d{1,2}(er|e)/,ordinal:function(e,t){switch(t){default:case"M":case"Q":case"D":case"DDD":case"d":return e+(1===e?"er":"e");case"w":case"W":return e+(1===e?"re":"e")}}})}(o(381))},2330:function(e,t,o){!function(e){"use strict";e.defineLocale("fr-ch",{months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"),monthsParseExact:!0,weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"di_lu_ma_me_je_ve_sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd’hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",ss:"%d secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},dayOfMonthOrdinalParse:/\d{1,2}(er|e)/,ordinal:function(e,t){switch(t){default:case"M":case"Q":case"D":case"DDD":case"d":return e+(1===e?"er":"e");case"w":case"W":return e+(1===e?"re":"e")}},week:{dow:1,doy:4}})}(o(381))},4470:function(e,t,o){!function(e){"use strict";var t=/^(janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)/i,o=/(janv\.?|févr\.?|mars|avr\.?|mai|juin|juil\.?|août|sept\.?|oct\.?|nov\.?|déc\.?)/i,i=/(janv\.?|févr\.?|mars|avr\.?|mai|juin|juil\.?|août|sept\.?|oct\.?|nov\.?|déc\.?|janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)/i,n=[/^janv/i,/^févr/i,/^mars/i,/^avr/i,/^mai/i,/^juin/i,/^juil/i,/^août/i,/^sept/i,/^oct/i,/^nov/i,/^déc/i];e.defineLocale("fr",{months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"),monthsRegex:i,monthsShortRegex:i,monthsStrictRegex:t,monthsShortStrictRegex:o,monthsParse:n,longMonthsParse:n,shortMonthsParse:n,weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"di_lu_ma_me_je_ve_sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd’hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",ss:"%d secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",w:"une semaine",ww:"%d semaines",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},dayOfMonthOrdinalParse:/\d{1,2}(er|)/,ordinal:function(e,t){switch(t){case"D":return e+(1===e?"er":"");default:case"M":case"Q":case"DDD":case"d":return e+(1===e?"er":"e");case"w":case"W":return e+(1===e?"re":"e")}},week:{dow:1,doy:4}})}(o(381))},5044:function(e,t,o){!function(e){"use strict";var t="jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.".split("_"),o="jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_");e.defineLocale("fy",{months:"jannewaris_febrewaris_maart_april_maaie_juny_july_augustus_septimber_oktober_novimber_desimber".split("_"),monthsShort:function(e,i){return e?/-MMM-/.test(i)?o[e.month()]:t[e.month()]:t},monthsParseExact:!0,weekdays:"snein_moandei_tiisdei_woansdei_tongersdei_freed_sneon".split("_"),weekdaysShort:"si._mo._ti._wo._to._fr._so.".split("_"),weekdaysMin:"Si_Mo_Ti_Wo_To_Fr_So".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[hjoed om] LT",nextDay:"[moarn om] LT",nextWeek:"dddd [om] LT",lastDay:"[juster om] LT",lastWeek:"[ôfrûne] dddd [om] LT",sameElse:"L"},relativeTime:{future:"oer %s",past:"%s lyn",s:"in pear sekonden",ss:"%d sekonden",m:"ien minút",mm:"%d minuten",h:"ien oere",hh:"%d oeren",d:"ien dei",dd:"%d dagen",M:"ien moanne",MM:"%d moannen",y:"ien jier",yy:"%d jierren"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(e){return e+(1===e||8===e||e>=20?"ste":"de")},week:{dow:1,doy:4}})}(o(381))},9295:function(e,t,o){!function(e){"use strict";var t=["Eanáir","Feabhra","Márta","Aibreán","Bealtaine","Meitheamh","Iúil","Lúnasa","Meán Fómhair","Deireadh Fómhair","Samhain","Nollaig"],o=["Ean","Feabh","Márt","Aib","Beal","Meith","Iúil","Lún","M.F.","D.F.","Samh","Noll"],i=["Dé Domhnaigh","Dé Luain","Dé Máirt","Dé Céadaoin","Déardaoin","Dé hAoine","Dé Sathairn"],n=["Domh","Luan","Máirt","Céad","Déar","Aoine","Sath"],r=["Do","Lu","Má","Cé","Dé","A","Sa"];e.defineLocale("ga",{months:t,monthsShort:o,monthsParseExact:!0,weekdays:i,weekdaysShort:n,weekdaysMin:r,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Inniu ag] LT",nextDay:"[Amárach ag] LT",nextWeek:"dddd [ag] LT",lastDay:"[Inné ag] LT",lastWeek:"dddd [seo caite] [ag] LT",sameElse:"L"},relativeTime:{future:"i %s",past:"%s ó shin",s:"cúpla soicind",ss:"%d soicind",m:"nóiméad",mm:"%d nóiméad",h:"uair an chloig",hh:"%d uair an chloig",d:"lá",dd:"%d lá",M:"mí",MM:"%d míonna",y:"bliain",yy:"%d bliain"},dayOfMonthOrdinalParse:/\d{1,2}(d|na|mh)/,ordinal:function(e){return e+(1===e?"d":e%10==2?"na":"mh")},week:{dow:1,doy:4}})}(o(381))},2101:function(e,t,o){!function(e){"use strict";var t=["Am Faoilleach","An Gearran","Am Màrt","An Giblean","An Cèitean","An t-Ògmhios","An t-Iuchar","An Lùnastal","An t-Sultain","An Dàmhair","An t-Samhain","An Dùbhlachd"],o=["Faoi","Gear","Màrt","Gibl","Cèit","Ògmh","Iuch","Lùn","Sult","Dàmh","Samh","Dùbh"],i=["Didòmhnaich","Diluain","Dimàirt","Diciadain","Diardaoin","Dihaoine","Disathairne"],n=["Did","Dil","Dim","Dic","Dia","Dih","Dis"],r=["Dò","Lu","Mà","Ci","Ar","Ha","Sa"];e.defineLocale("gd",{months:t,monthsShort:o,monthsParseExact:!0,weekdays:i,weekdaysShort:n,weekdaysMin:r,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[An-diugh aig] LT",nextDay:"[A-màireach aig] LT",nextWeek:"dddd [aig] LT",lastDay:"[An-dè aig] LT",lastWeek:"dddd [seo chaidh] [aig] LT",sameElse:"L"},relativeTime:{future:"ann an %s",past:"bho chionn %s",s:"beagan diogan",ss:"%d diogan",m:"mionaid",mm:"%d mionaidean",h:"uair",hh:"%d uairean",d:"latha",dd:"%d latha",M:"mìos",MM:"%d mìosan",y:"bliadhna",yy:"%d bliadhna"},dayOfMonthOrdinalParse:/\d{1,2}(d|na|mh)/,ordinal:function(e){return e+(1===e?"d":e%10==2?"na":"mh")},week:{dow:1,doy:4}})}(o(381))},8794:function(e,t,o){!function(e){"use strict";e.defineLocale("gl",{months:"xaneiro_febreiro_marzo_abril_maio_xuño_xullo_agosto_setembro_outubro_novembro_decembro".split("_"),monthsShort:"xan._feb._mar._abr._mai._xuñ._xul._ago._set._out._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"domingo_luns_martes_mércores_xoves_venres_sábado".split("_"),weekdaysShort:"dom._lun._mar._mér._xov._ven._sáb.".split("_"),weekdaysMin:"do_lu_ma_mé_xo_ve_sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY H:mm",LLLL:"dddd, D [de] MMMM [de] YYYY H:mm"},calendar:{sameDay:function(){return"[hoxe "+(1!==this.hours()?"ás":"á")+"] LT"},nextDay:function(){return"[mañá "+(1!==this.hours()?"ás":"á")+"] LT"},nextWeek:function(){return"dddd ["+(1!==this.hours()?"ás":"a")+"] LT"},lastDay:function(){return"[onte "+(1!==this.hours()?"á":"a")+"] LT"},lastWeek:function(){return"[o] dddd [pasado "+(1!==this.hours()?"ás":"a")+"] LT"},sameElse:"L"},relativeTime:{future:function(e){return 0===e.indexOf("un")?"n"+e:"en "+e},past:"hai %s",s:"uns segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"unha hora",hh:"%d horas",d:"un día",dd:"%d días",M:"un mes",MM:"%d meses",y:"un ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(o(381))},7884:function(e,t,o){!function(e){"use strict";function t(e,t,o,i){var n={s:["थोडया सॅकंडांनी","थोडे सॅकंड"],ss:[e+" सॅकंडांनी",e+" सॅकंड"],m:["एका मिणटान","एक मिनूट"],mm:[e+" मिणटांनी",e+" मिणटां"],h:["एका वरान","एक वर"],hh:[e+" वरांनी",e+" वरां"],d:["एका दिसान","एक दीस"],dd:[e+" दिसांनी",e+" दीस"],M:["एका म्हयन्यान","एक म्हयनो"],MM:[e+" म्हयन्यानी",e+" म्हयने"],y:["एका वर्सान","एक वर्स"],yy:[e+" वर्सांनी",e+" वर्सां"]};return i?n[o][0]:n[o][1]}e.defineLocale("gom-deva",{months:{standalone:"जानेवारी_फेब्रुवारी_मार्च_एप्रील_मे_जून_जुलय_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर".split("_"),format:"जानेवारीच्या_फेब्रुवारीच्या_मार्चाच्या_एप्रीलाच्या_मेयाच्या_जूनाच्या_जुलयाच्या_ऑगस्टाच्या_सप्टेंबराच्या_ऑक्टोबराच्या_नोव्हेंबराच्या_डिसेंबराच्या".split("_"),isFormat:/MMMM(\s)+D[oD]?/},monthsShort:"जाने._फेब्रु._मार्च_एप्री._मे_जून_जुल._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.".split("_"),monthsParseExact:!0,weekdays:"आयतार_सोमार_मंगळार_बुधवार_बिरेस्तार_सुक्रार_शेनवार".split("_"),weekdaysShort:"आयत._सोम._मंगळ._बुध._ब्रेस्त._सुक्र._शेन.".split("_"),weekdaysMin:"आ_सो_मं_बु_ब्रे_सु_शे".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"A h:mm [वाजतां]",LTS:"A h:mm:ss [वाजतां]",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY A h:mm [वाजतां]",LLLL:"dddd, MMMM Do, YYYY, A h:mm [वाजतां]",llll:"ddd, D MMM YYYY, A h:mm [वाजतां]"},calendar:{sameDay:"[आयज] LT",nextDay:"[फाल्यां] LT",nextWeek:"[फुडलो] dddd[,] LT",lastDay:"[काल] LT",lastWeek:"[फाटलो] dddd[,] LT",sameElse:"L"},relativeTime:{future:"%s",past:"%s आदीं",s:t,ss:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}(वेर)/,ordinal:function(e,t){return"D"===t?e+"वेर":e},week:{dow:0,doy:3},meridiemParse:/राती|सकाळीं|दनपारां|सांजे/,meridiemHour:function(e,t){return 12===e&&(e=0),"राती"===t?e<4?e:e+12:"सकाळीं"===t?e:"दनपारां"===t?e>12?e:e+12:"सांजे"===t?e+12:void 0},meridiem:function(e,t,o){return e<4?"राती":e<12?"सकाळीं":e<16?"दनपारां":e<20?"सांजे":"राती"}})}(o(381))},3168:function(e,t,o){!function(e){"use strict";function t(e,t,o,i){var n={s:["thoddea sekondamni","thodde sekond"],ss:[e+" sekondamni",e+" sekond"],m:["eka mintan","ek minut"],mm:[e+" mintamni",e+" mintam"],h:["eka voran","ek vor"],hh:[e+" voramni",e+" voram"],d:["eka disan","ek dis"],dd:[e+" disamni",e+" dis"],M:["eka mhoinean","ek mhoino"],MM:[e+" mhoineamni",e+" mhoine"],y:["eka vorsan","ek voros"],yy:[e+" vorsamni",e+" vorsam"]};return i?n[o][0]:n[o][1]}e.defineLocale("gom-latn",{months:{standalone:"Janer_Febrer_Mars_Abril_Mai_Jun_Julai_Agost_Setembr_Otubr_Novembr_Dezembr".split("_"),format:"Janerachea_Febrerachea_Marsachea_Abrilachea_Maiachea_Junachea_Julaiachea_Agostachea_Setembrachea_Otubrachea_Novembrachea_Dezembrachea".split("_"),isFormat:/MMMM(\s)+D[oD]?/},monthsShort:"Jan._Feb._Mars_Abr._Mai_Jun_Jul._Ago._Set._Otu._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Aitar_Somar_Mongllar_Budhvar_Birestar_Sukrar_Son'var".split("_"),weekdaysShort:"Ait._Som._Mon._Bud._Bre._Suk._Son.".split("_"),weekdaysMin:"Ai_Sm_Mo_Bu_Br_Su_Sn".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"A h:mm [vazta]",LTS:"A h:mm:ss [vazta]",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY A h:mm [vazta]",LLLL:"dddd, MMMM Do, YYYY, A h:mm [vazta]",llll:"ddd, D MMM YYYY, A h:mm [vazta]"},calendar:{sameDay:"[Aiz] LT",nextDay:"[Faleam] LT",nextWeek:"[Fuddlo] dddd[,] LT",lastDay:"[Kal] LT",lastWeek:"[Fattlo] dddd[,] LT",sameElse:"L"},relativeTime:{future:"%s",past:"%s adim",s:t,ss:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}(er)/,ordinal:function(e,t){return"D"===t?e+"er":e},week:{dow:0,doy:3},meridiemParse:/rati|sokallim|donparam|sanje/,meridiemHour:function(e,t){return 12===e&&(e=0),"rati"===t?e<4?e:e+12:"sokallim"===t?e:"donparam"===t?e>12?e:e+12:"sanje"===t?e+12:void 0},meridiem:function(e,t,o){return e<4?"rati":e<12?"sokallim":e<16?"donparam":e<20?"sanje":"rati"}})}(o(381))},5349:function(e,t,o){!function(e){"use strict";var t={1:"૧",2:"૨",3:"૩",4:"૪",5:"૫",6:"૬",7:"૭",8:"૮",9:"૯",0:"૦"},o={"૧":"1","૨":"2","૩":"3","૪":"4","૫":"5","૬":"6","૭":"7","૮":"8","૯":"9","૦":"0"};e.defineLocale("gu",{months:"જાન્યુઆરી_ફેબ્રુઆરી_માર્ચ_એપ્રિલ_મે_જૂન_જુલાઈ_ઑગસ્ટ_સપ્ટેમ્બર_ઑક્ટ્બર_નવેમ્બર_ડિસેમ્બર".split("_"),monthsShort:"જાન્યુ._ફેબ્રુ._માર્ચ_એપ્રિ._મે_જૂન_જુલા._ઑગ._સપ્ટે._ઑક્ટ્._નવે._ડિસે.".split("_"),monthsParseExact:!0,weekdays:"રવિવાર_સોમવાર_મંગળવાર_બુધ્વાર_ગુરુવાર_શુક્રવાર_શનિવાર".split("_"),weekdaysShort:"રવિ_સોમ_મંગળ_બુધ્_ગુરુ_શુક્ર_શનિ".split("_"),weekdaysMin:"ર_સો_મં_બુ_ગુ_શુ_શ".split("_"),longDateFormat:{LT:"A h:mm વાગ્યે",LTS:"A h:mm:ss વાગ્યે",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm વાગ્યે",LLLL:"dddd, D MMMM YYYY, A h:mm વાગ્યે"},calendar:{sameDay:"[આજ] LT",nextDay:"[કાલે] LT",nextWeek:"dddd, LT",lastDay:"[ગઇકાલે] LT",lastWeek:"[પાછલા] dddd, LT",sameElse:"L"},relativeTime:{future:"%s મા",past:"%s પહેલા",s:"અમુક પળો",ss:"%d સેકંડ",m:"એક મિનિટ",mm:"%d મિનિટ",h:"એક કલાક",hh:"%d કલાક",d:"એક દિવસ",dd:"%d દિવસ",M:"એક મહિનો",MM:"%d મહિનો",y:"એક વર્ષ",yy:"%d વર્ષ"},preparse:function(e){return e.replace(/[૧૨૩૪૫૬૭૮૯૦]/g,(function(e){return o[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},meridiemParse:/રાત|બપોર|સવાર|સાંજ/,meridiemHour:function(e,t){return 12===e&&(e=0),"રાત"===t?e<4?e:e+12:"સવાર"===t?e:"બપોર"===t?e>=10?e:e+12:"સાંજ"===t?e+12:void 0},meridiem:function(e,t,o){return e<4?"રાત":e<10?"સવાર":e<17?"બપોર":e<20?"સાંજ":"રાત"},week:{dow:0,doy:6}})}(o(381))},4206:function(e,t,o){!function(e){"use strict";e.defineLocale("he",{months:"ינואר_פברואר_מרץ_אפריל_מאי_יוני_יולי_אוגוסט_ספטמבר_אוקטובר_נובמבר_דצמבר".split("_"),monthsShort:"ינו׳_פבר׳_מרץ_אפר׳_מאי_יוני_יולי_אוג׳_ספט׳_אוק׳_נוב׳_דצמ׳".split("_"),weekdays:"ראשון_שני_שלישי_רביעי_חמישי_שישי_שבת".split("_"),weekdaysShort:"א׳_ב׳_ג׳_ד׳_ה׳_ו׳_ש׳".split("_"),weekdaysMin:"א_ב_ג_ד_ה_ו_ש".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [ב]MMMM YYYY",LLL:"D [ב]MMMM YYYY HH:mm",LLLL:"dddd, D [ב]MMMM YYYY HH:mm",l:"D/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY HH:mm",llll:"ddd, D MMM YYYY HH:mm"},calendar:{sameDay:"[היום ב־]LT",nextDay:"[מחר ב־]LT",nextWeek:"dddd [בשעה] LT",lastDay:"[אתמול ב־]LT",lastWeek:"[ביום] dddd [האחרון בשעה] LT",sameElse:"L"},relativeTime:{future:"בעוד %s",past:"לפני %s",s:"מספר שניות",ss:"%d שניות",m:"דקה",mm:"%d דקות",h:"שעה",hh:function(e){return 2===e?"שעתיים":e+" שעות"},d:"יום",dd:function(e){return 2===e?"יומיים":e+" ימים"},M:"חודש",MM:function(e){return 2===e?"חודשיים":e+" חודשים"},y:"שנה",yy:function(e){return 2===e?"שנתיים":e%10==0&&10!==e?e+" שנה":e+" שנים"}},meridiemParse:/אחה"צ|לפנה"צ|אחרי הצהריים|לפני הצהריים|לפנות בוקר|בבוקר|בערב/i,isPM:function(e){return/^(אחה"צ|אחרי הצהריים|בערב)$/.test(e)},meridiem:function(e,t,o){return e<5?"לפנות בוקר":e<10?"בבוקר":e<12?o?'לפנה"צ':"לפני הצהריים":e<18?o?'אחה"צ':"אחרי הצהריים":"בערב"}})}(o(381))},94:function(e,t,o){!function(e){"use strict";var t={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},o={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"},i=[/^जन/i,/^फ़र|फर/i,/^मार्च/i,/^अप्रै/i,/^मई/i,/^जून/i,/^जुल/i,/^अग/i,/^सितं|सित/i,/^अक्टू/i,/^नव|नवं/i,/^दिसं|दिस/i],n=[/^जन/i,/^फ़र/i,/^मार्च/i,/^अप्रै/i,/^मई/i,/^जून/i,/^जुल/i,/^अग/i,/^सित/i,/^अक्टू/i,/^नव/i,/^दिस/i];e.defineLocale("hi",{months:{format:"जनवरी_फ़रवरी_मार्च_अप्रैल_मई_जून_जुलाई_अगस्त_सितम्बर_अक्टूबर_नवम्बर_दिसम्बर".split("_"),standalone:"जनवरी_फरवरी_मार्च_अप्रैल_मई_जून_जुलाई_अगस्त_सितंबर_अक्टूबर_नवंबर_दिसंबर".split("_")},monthsShort:"जन._फ़र._मार्च_अप्रै._मई_जून_जुल._अग._सित._अक्टू._नव._दिस.".split("_"),weekdays:"रविवार_सोमवार_मंगलवार_बुधवार_गुरूवार_शुक्रवार_शनिवार".split("_"),weekdaysShort:"रवि_सोम_मंगल_बुध_गुरू_शुक्र_शनि".split("_"),weekdaysMin:"र_सो_मं_बु_गु_शु_श".split("_"),longDateFormat:{LT:"A h:mm बजे",LTS:"A h:mm:ss बजे",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm बजे",LLLL:"dddd, D MMMM YYYY, A h:mm बजे"},monthsParse:i,longMonthsParse:i,shortMonthsParse:n,monthsRegex:/^(जनवरी|जन\.?|फ़रवरी|फरवरी|फ़र\.?|मार्च?|अप्रैल|अप्रै\.?|मई?|जून?|जुलाई|जुल\.?|अगस्त|अग\.?|सितम्बर|सितंबर|सित\.?|अक्टूबर|अक्टू\.?|नवम्बर|नवंबर|नव\.?|दिसम्बर|दिसंबर|दिस\.?)/i,monthsShortRegex:/^(जनवरी|जन\.?|फ़रवरी|फरवरी|फ़र\.?|मार्च?|अप्रैल|अप्रै\.?|मई?|जून?|जुलाई|जुल\.?|अगस्त|अग\.?|सितम्बर|सितंबर|सित\.?|अक्टूबर|अक्टू\.?|नवम्बर|नवंबर|नव\.?|दिसम्बर|दिसंबर|दिस\.?)/i,monthsStrictRegex:/^(जनवरी?|फ़रवरी|फरवरी?|मार्च?|अप्रैल?|मई?|जून?|जुलाई?|अगस्त?|सितम्बर|सितंबर|सित?\.?|अक्टूबर|अक्टू\.?|नवम्बर|नवंबर?|दिसम्बर|दिसंबर?)/i,monthsShortStrictRegex:/^(जन\.?|फ़र\.?|मार्च?|अप्रै\.?|मई?|जून?|जुल\.?|अग\.?|सित\.?|अक्टू\.?|नव\.?|दिस\.?)/i,calendar:{sameDay:"[आज] LT",nextDay:"[कल] LT",nextWeek:"dddd, LT",lastDay:"[कल] LT",lastWeek:"[पिछले] dddd, LT",sameElse:"L"},relativeTime:{future:"%s में",past:"%s पहले",s:"कुछ ही क्षण",ss:"%d सेकंड",m:"एक मिनट",mm:"%d मिनट",h:"एक घंटा",hh:"%d घंटे",d:"एक दिन",dd:"%d दिन",M:"एक महीने",MM:"%d महीने",y:"एक वर्ष",yy:"%d वर्ष"},preparse:function(e){return e.replace(/[१२३४५६७८९०]/g,(function(e){return o[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},meridiemParse:/रात|सुबह|दोपहर|शाम/,meridiemHour:function(e,t){return 12===e&&(e=0),"रात"===t?e<4?e:e+12:"सुबह"===t?e:"दोपहर"===t?e>=10?e:e+12:"शाम"===t?e+12:void 0},meridiem:function(e,t,o){return e<4?"रात":e<10?"सुबह":e<17?"दोपहर":e<20?"शाम":"रात"},week:{dow:0,doy:6}})}(o(381))},316:function(e,t,o){!function(e){"use strict";function t(e,t,o){var i=e+" ";switch(o){case"ss":return i+=1===e?"sekunda":2===e||3===e||4===e?"sekunde":"sekundi";case"m":return t?"jedna minuta":"jedne minute";case"mm":return i+=1===e?"minuta":2===e||3===e||4===e?"minute":"minuta";case"h":return t?"jedan sat":"jednog sata";case"hh":return i+=1===e?"sat":2===e||3===e||4===e?"sata":"sati";case"dd":return i+=1===e?"dan":"dana";case"MM":return i+=1===e?"mjesec":2===e||3===e||4===e?"mjeseca":"mjeseci";case"yy":return i+=1===e?"godina":2===e||3===e||4===e?"godine":"godina"}}e.defineLocale("hr",{months:{format:"siječnja_veljače_ožujka_travnja_svibnja_lipnja_srpnja_kolovoza_rujna_listopada_studenoga_prosinca".split("_"),standalone:"siječanj_veljača_ožujak_travanj_svibanj_lipanj_srpanj_kolovoz_rujan_listopad_studeni_prosinac".split("_")},monthsShort:"sij._velj._ožu._tra._svi._lip._srp._kol._ruj._lis._stu._pro.".split("_"),monthsParseExact:!0,weekdays:"nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_pe_su".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"Do MMMM YYYY",LLL:"Do MMMM YYYY H:mm",LLLL:"dddd, Do MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[jučer u] LT",lastWeek:function(){switch(this.day()){case 0:return"[prošlu] [nedjelju] [u] LT";case 3:return"[prošlu] [srijedu] [u] LT";case 6:return"[prošle] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[prošli] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",ss:t,m:t,mm:t,h:t,hh:t,d:"dan",dd:t,M:"mjesec",MM:t,y:"godinu",yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(o(381))},2138:function(e,t,o){!function(e){"use strict";var t="vasárnap hétfőn kedden szerdán csütörtökön pénteken szombaton".split(" ");function o(e,t,o,i){var n=e;switch(o){case"s":return i||t?"néhány másodperc":"néhány másodperce";case"ss":return n+(i||t)?" másodperc":" másodperce";case"m":return"egy"+(i||t?" perc":" perce");case"mm":return n+(i||t?" perc":" perce");case"h":return"egy"+(i||t?" óra":" órája");case"hh":return n+(i||t?" óra":" órája");case"d":return"egy"+(i||t?" nap":" napja");case"dd":return n+(i||t?" nap":" napja");case"M":return"egy"+(i||t?" hónap":" hónapja");case"MM":return n+(i||t?" hónap":" hónapja");case"y":return"egy"+(i||t?" év":" éve");case"yy":return n+(i||t?" év":" éve")}return""}function i(e){return(e?"":"[múlt] ")+"["+t[this.day()]+"] LT[-kor]"}e.defineLocale("hu",{months:"január_február_március_április_május_június_július_augusztus_szeptember_október_november_december".split("_"),monthsShort:"jan._feb._márc._ápr._máj._jún._júl._aug._szept._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"vasárnap_hétfő_kedd_szerda_csütörtök_péntek_szombat".split("_"),weekdaysShort:"vas_hét_kedd_sze_csüt_pén_szo".split("_"),weekdaysMin:"v_h_k_sze_cs_p_szo".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"YYYY.MM.DD.",LL:"YYYY. MMMM D.",LLL:"YYYY. MMMM D. H:mm",LLLL:"YYYY. MMMM D., dddd H:mm"},meridiemParse:/de|du/i,isPM:function(e){return"u"===e.charAt(1).toLowerCase()},meridiem:function(e,t,o){return e<12?!0===o?"de":"DE":!0===o?"du":"DU"},calendar:{sameDay:"[ma] LT[-kor]",nextDay:"[holnap] LT[-kor]",nextWeek:function(){return i.call(this,!0)},lastDay:"[tegnap] LT[-kor]",lastWeek:function(){return i.call(this,!1)},sameElse:"L"},relativeTime:{future:"%s múlva",past:"%s",s:o,ss:o,m:o,mm:o,h:o,hh:o,d:o,dd:o,M:o,MM:o,y:o,yy:o},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(o(381))},1423:function(e,t,o){!function(e){"use strict";e.defineLocale("hy-am",{months:{format:"հունվարի_փետրվարի_մարտի_ապրիլի_մայիսի_հունիսի_հուլիսի_օգոստոսի_սեպտեմբերի_հոկտեմբերի_նոյեմբերի_դեկտեմբերի".split("_"),standalone:"հունվար_փետրվար_մարտ_ապրիլ_մայիս_հունիս_հուլիս_օգոստոս_սեպտեմբեր_հոկտեմբեր_նոյեմբեր_դեկտեմբեր".split("_")},monthsShort:"հնվ_փտր_մրտ_ապր_մյս_հնս_հլս_օգս_սպտ_հկտ_նմբ_դկտ".split("_"),weekdays:"կիրակի_երկուշաբթի_երեքշաբթի_չորեքշաբթի_հինգշաբթի_ուրբաթ_շաբաթ".split("_"),weekdaysShort:"կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ".split("_"),weekdaysMin:"կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY թ.",LLL:"D MMMM YYYY թ., HH:mm",LLLL:"dddd, D MMMM YYYY թ., HH:mm"},calendar:{sameDay:"[այսօր] LT",nextDay:"[վաղը] LT",lastDay:"[երեկ] LT",nextWeek:function(){return"dddd [օրը ժամը] LT"},lastWeek:function(){return"[անցած] dddd [օրը ժամը] LT"},sameElse:"L"},relativeTime:{future:"%s հետո",past:"%s առաջ",s:"մի քանի վայրկյան",ss:"%d վայրկյան",m:"րոպե",mm:"%d րոպե",h:"ժամ",hh:"%d ժամ",d:"օր",dd:"%d օր",M:"ամիս",MM:"%d ամիս",y:"տարի",yy:"%d տարի"},meridiemParse:/գիշերվա|առավոտվա|ցերեկվա|երեկոյան/,isPM:function(e){return/^(ցերեկվա|երեկոյան)$/.test(e)},meridiem:function(e){return e<4?"գիշերվա":e<12?"առավոտվա":e<17?"ցերեկվա":"երեկոյան"},dayOfMonthOrdinalParse:/\d{1,2}|\d{1,2}-(ին|րդ)/,ordinal:function(e,t){switch(t){case"DDD":case"w":case"W":case"DDDo":return 1===e?e+"-ին":e+"-րդ";default:return e}},week:{dow:1,doy:7}})}(o(381))},9218:function(e,t,o){!function(e){"use strict";e.defineLocale("id",{months:"Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Agt_Sep_Okt_Nov_Des".split("_"),weekdays:"Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu".split("_"),weekdaysShort:"Min_Sen_Sel_Rab_Kam_Jum_Sab".split("_"),weekdaysMin:"Mg_Sn_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/pagi|siang|sore|malam/,meridiemHour:function(e,t){return 12===e&&(e=0),"pagi"===t?e:"siang"===t?e>=11?e:e+12:"sore"===t||"malam"===t?e+12:void 0},meridiem:function(e,t,o){return e<11?"pagi":e<15?"siang":e<19?"sore":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Besok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kemarin pukul] LT",lastWeek:"dddd [lalu pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lalu",s:"beberapa detik",ss:"%d detik",m:"semenit",mm:"%d menit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:0,doy:6}})}(o(381))},135:function(e,t,o){!function(e){"use strict";function t(e){return e%100==11||e%10!=1}function o(e,o,i,n){var r=e+" ";switch(i){case"s":return o||n?"nokkrar sekúndur":"nokkrum sekúndum";case"ss":return t(e)?r+(o||n?"sekúndur":"sekúndum"):r+"sekúnda";case"m":return o?"mínúta":"mínútu";case"mm":return t(e)?r+(o||n?"mínútur":"mínútum"):o?r+"mínúta":r+"mínútu";case"hh":return t(e)?r+(o||n?"klukkustundir":"klukkustundum"):r+"klukkustund";case"d":return o?"dagur":n?"dag":"degi";case"dd":return t(e)?o?r+"dagar":r+(n?"daga":"dögum"):o?r+"dagur":r+(n?"dag":"degi");case"M":return o?"mánuður":n?"mánuð":"mánuði";case"MM":return t(e)?o?r+"mánuðir":r+(n?"mánuði":"mánuðum"):o?r+"mánuður":r+(n?"mánuð":"mánuði");case"y":return o||n?"ár":"ári";case"yy":return t(e)?r+(o||n?"ár":"árum"):r+(o||n?"ár":"ári")}}e.defineLocale("is",{months:"janúar_febrúar_mars_apríl_maí_júní_júlí_ágúst_september_október_nóvember_desember".split("_"),monthsShort:"jan_feb_mar_apr_maí_jún_júl_ágú_sep_okt_nóv_des".split("_"),weekdays:"sunnudagur_mánudagur_þriðjudagur_miðvikudagur_fimmtudagur_föstudagur_laugardagur".split("_"),weekdaysShort:"sun_mán_þri_mið_fim_fös_lau".split("_"),weekdaysMin:"Su_Má_Þr_Mi_Fi_Fö_La".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] H:mm",LLLL:"dddd, D. MMMM YYYY [kl.] H:mm"},calendar:{sameDay:"[í dag kl.] LT",nextDay:"[á morgun kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[í gær kl.] LT",lastWeek:"[síðasta] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"eftir %s",past:"fyrir %s síðan",s:o,ss:o,m:o,mm:o,h:"klukkustund",hh:o,d:o,dd:o,M:o,MM:o,y:o,yy:o},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(o(381))},150:function(e,t,o){!function(e){"use strict";e.defineLocale("it-ch",{months:"gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre".split("_"),monthsShort:"gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic".split("_"),weekdays:"domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato".split("_"),weekdaysShort:"dom_lun_mar_mer_gio_ven_sab".split("_"),weekdaysMin:"do_lu_ma_me_gi_ve_sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Oggi alle] LT",nextDay:"[Domani alle] LT",nextWeek:"dddd [alle] LT",lastDay:"[Ieri alle] LT",lastWeek:function(){return 0===this.day()?"[la scorsa] dddd [alle] LT":"[lo scorso] dddd [alle] LT"},sameElse:"L"},relativeTime:{future:function(e){return(/^[0-9].+$/.test(e)?"tra":"in")+" "+e},past:"%s fa",s:"alcuni secondi",ss:"%d secondi",m:"un minuto",mm:"%d minuti",h:"un'ora",hh:"%d ore",d:"un giorno",dd:"%d giorni",M:"un mese",MM:"%d mesi",y:"un anno",yy:"%d anni"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(o(381))},626:function(e,t,o){!function(e){"use strict";e.defineLocale("it",{months:"gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre".split("_"),monthsShort:"gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic".split("_"),weekdays:"domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato".split("_"),weekdaysShort:"dom_lun_mar_mer_gio_ven_sab".split("_"),weekdaysMin:"do_lu_ma_me_gi_ve_sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:function(){return"[Oggi a"+(this.hours()>1?"lle ":0===this.hours()?" ":"ll'")+"]LT"},nextDay:function(){return"[Domani a"+(this.hours()>1?"lle ":0===this.hours()?" ":"ll'")+"]LT"},nextWeek:function(){return"dddd [a"+(this.hours()>1?"lle ":0===this.hours()?" ":"ll'")+"]LT"},lastDay:function(){return"[Ieri a"+(this.hours()>1?"lle ":0===this.hours()?" ":"ll'")+"]LT"},lastWeek:function(){return 0===this.day()?"[La scorsa] dddd [a"+(this.hours()>1?"lle ":0===this.hours()?" ":"ll'")+"]LT":"[Lo scorso] dddd [a"+(this.hours()>1?"lle ":0===this.hours()?" ":"ll'")+"]LT"},sameElse:"L"},relativeTime:{future:"tra %s",past:"%s fa",s:"alcuni secondi",ss:"%d secondi",m:"un minuto",mm:"%d minuti",h:"un'ora",hh:"%d ore",d:"un giorno",dd:"%d giorni",w:"una settimana",ww:"%d settimane",M:"un mese",MM:"%d mesi",y:"un anno",yy:"%d anni"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(o(381))},9183:function(e,t,o){!function(e){"use strict";e.defineLocale("ja",{eras:[{since:"2019-05-01",offset:1,name:"令和",narrow:"㋿",abbr:"R"},{since:"1989-01-08",until:"2019-04-30",offset:1,name:"平成",narrow:"㍻",abbr:"H"},{since:"1926-12-25",until:"1989-01-07",offset:1,name:"昭和",narrow:"㍼",abbr:"S"},{since:"1912-07-30",until:"1926-12-24",offset:1,name:"大正",narrow:"㍽",abbr:"T"},{since:"1873-01-01",until:"1912-07-29",offset:6,name:"明治",narrow:"㍾",abbr:"M"},{since:"0001-01-01",until:"1873-12-31",offset:1,name:"西暦",narrow:"AD",abbr:"AD"},{since:"0000-12-31",until:-1/0,offset:1,name:"紀元前",narrow:"BC",abbr:"BC"}],eraYearOrdinalRegex:/(元|\d+)年/,eraYearOrdinalParse:function(e,t){return"元"===t[1]?1:parseInt(t[1]||e,10)},months:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"日曜日_月曜日_火曜日_水曜日_木曜日_金曜日_土曜日".split("_"),weekdaysShort:"日_月_火_水_木_金_土".split("_"),weekdaysMin:"日_月_火_水_木_金_土".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日 HH:mm",LLLL:"YYYY年M月D日 dddd HH:mm",l:"YYYY/MM/DD",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日(ddd) HH:mm"},meridiemParse:/午前|午後/i,isPM:function(e){return"午後"===e},meridiem:function(e,t,o){return e<12?"午前":"午後"},calendar:{sameDay:"[今日] LT",nextDay:"[明日] LT",nextWeek:function(e){return e.week()!==this.week()?"[来週]dddd LT":"dddd LT"},lastDay:"[昨日] LT",lastWeek:function(e){return this.week()!==e.week()?"[先週]dddd LT":"dddd LT"},sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}日/,ordinal:function(e,t){switch(t){case"y":return 1===e?"元年":e+"年";case"d":case"D":case"DDD":return e+"日";default:return e}},relativeTime:{future:"%s後",past:"%s前",s:"数秒",ss:"%d秒",m:"1分",mm:"%d分",h:"1時間",hh:"%d時間",d:"1日",dd:"%d日",M:"1ヶ月",MM:"%dヶ月",y:"1年",yy:"%d年"}})}(o(381))},4286:function(e,t,o){!function(e){"use strict";e.defineLocale("jv",{months:"Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_Nopember_Desember".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nop_Des".split("_"),weekdays:"Minggu_Senen_Seloso_Rebu_Kemis_Jemuwah_Septu".split("_"),weekdaysShort:"Min_Sen_Sel_Reb_Kem_Jem_Sep".split("_"),weekdaysMin:"Mg_Sn_Sl_Rb_Km_Jm_Sp".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/enjing|siyang|sonten|ndalu/,meridiemHour:function(e,t){return 12===e&&(e=0),"enjing"===t?e:"siyang"===t?e>=11?e:e+12:"sonten"===t||"ndalu"===t?e+12:void 0},meridiem:function(e,t,o){return e<11?"enjing":e<15?"siyang":e<19?"sonten":"ndalu"},calendar:{sameDay:"[Dinten puniko pukul] LT",nextDay:"[Mbenjang pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kala wingi pukul] LT",lastWeek:"dddd [kepengker pukul] LT",sameElse:"L"},relativeTime:{future:"wonten ing %s",past:"%s ingkang kepengker",s:"sawetawis detik",ss:"%d detik",m:"setunggal menit",mm:"%d menit",h:"setunggal jam",hh:"%d jam",d:"sedinten",dd:"%d dinten",M:"sewulan",MM:"%d wulan",y:"setaun",yy:"%d taun"},week:{dow:1,doy:7}})}(o(381))},2105:function(e,t,o){!function(e){"use strict";e.defineLocale("ka",{months:"იანვარი_თებერვალი_მარტი_აპრილი_მაისი_ივნისი_ივლისი_აგვისტო_სექტემბერი_ოქტომბერი_ნოემბერი_დეკემბერი".split("_"),monthsShort:"იან_თებ_მარ_აპრ_მაი_ივნ_ივლ_აგვ_სექ_ოქტ_ნოე_დეკ".split("_"),weekdays:{standalone:"კვირა_ორშაბათი_სამშაბათი_ოთხშაბათი_ხუთშაბათი_პარასკევი_შაბათი".split("_"),format:"კვირას_ორშაბათს_სამშაბათს_ოთხშაბათს_ხუთშაბათს_პარასკევს_შაბათს".split("_"),isFormat:/(წინა|შემდეგ)/},weekdaysShort:"კვი_ორშ_სამ_ოთხ_ხუთ_პარ_შაბ".split("_"),weekdaysMin:"კვ_ორ_სა_ოთ_ხუ_პა_შა".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[დღეს] LT[-ზე]",nextDay:"[ხვალ] LT[-ზე]",lastDay:"[გუშინ] LT[-ზე]",nextWeek:"[შემდეგ] dddd LT[-ზე]",lastWeek:"[წინა] dddd LT-ზე",sameElse:"L"},relativeTime:{future:function(e){return e.replace(/(წამ|წუთ|საათ|წელ|დღ|თვ)(ი|ე)/,(function(e,t,o){return"ი"===o?t+"ში":t+o+"ში"}))},past:function(e){return/(წამი|წუთი|საათი|დღე|თვე)/.test(e)?e.replace(/(ი|ე)$/,"ის წინ"):/წელი/.test(e)?e.replace(/წელი$/,"წლის წინ"):e},s:"რამდენიმე წამი",ss:"%d წამი",m:"წუთი",mm:"%d წუთი",h:"საათი",hh:"%d საათი",d:"დღე",dd:"%d დღე",M:"თვე",MM:"%d თვე",y:"წელი",yy:"%d წელი"},dayOfMonthOrdinalParse:/0|1-ლი|მე-\d{1,2}|\d{1,2}-ე/,ordinal:function(e){return 0===e?e:1===e?e+"-ლი":e<20||e<=100&&e%20==0||e%100==0?"მე-"+e:e+"-ე"},week:{dow:1,doy:7}})}(o(381))},7772:function(e,t,o){!function(e){"use strict";var t={0:"-ші",1:"-ші",2:"-ші",3:"-ші",4:"-ші",5:"-ші",6:"-шы",7:"-ші",8:"-ші",9:"-шы",10:"-шы",20:"-шы",30:"-шы",40:"-шы",50:"-ші",60:"-шы",70:"-ші",80:"-ші",90:"-шы",100:"-ші"};e.defineLocale("kk",{months:"қаңтар_ақпан_наурыз_сәуір_мамыр_маусым_шілде_тамыз_қыркүйек_қазан_қараша_желтоқсан".split("_"),monthsShort:"қаң_ақп_нау_сәу_мам_мау_шіл_там_қыр_қаз_қар_жел".split("_"),weekdays:"жексенбі_дүйсенбі_сейсенбі_сәрсенбі_бейсенбі_жұма_сенбі".split("_"),weekdaysShort:"жек_дүй_сей_сәр_бей_жұм_сен".split("_"),weekdaysMin:"жк_дй_сй_ср_бй_жм_сн".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Бүгін сағат] LT",nextDay:"[Ертең сағат] LT",nextWeek:"dddd [сағат] LT",lastDay:"[Кеше сағат] LT",lastWeek:"[Өткен аптаның] dddd [сағат] LT",sameElse:"L"},relativeTime:{future:"%s ішінде",past:"%s бұрын",s:"бірнеше секунд",ss:"%d секунд",m:"бір минут",mm:"%d минут",h:"бір сағат",hh:"%d сағат",d:"бір күн",dd:"%d күн",M:"бір ай",MM:"%d ай",y:"бір жыл",yy:"%d жыл"},dayOfMonthOrdinalParse:/\d{1,2}-(ші|шы)/,ordinal:function(e){var o=e%10,i=e>=100?100:null;return e+(t[e]||t[o]||t[i])},week:{dow:1,doy:7}})}(o(381))},8758:function(e,t,o){!function(e){"use strict";var t={1:"១",2:"២",3:"៣",4:"៤",5:"៥",6:"៦",7:"៧",8:"៨",9:"៩",0:"០"},o={"១":"1","២":"2","៣":"3","៤":"4","៥":"5","៦":"6","៧":"7","៨":"8","៩":"9","០":"0"};e.defineLocale("km",{months:"មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ".split("_"),monthsShort:"មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ".split("_"),weekdays:"អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍".split("_"),weekdaysShort:"អា_ច_អ_ព_ព្រ_សុ_ស".split("_"),weekdaysMin:"អា_ច_អ_ព_ព្រ_សុ_ស".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},meridiemParse:/ព្រឹក|ល្ងាច/,isPM:function(e){return"ល្ងាច"===e},meridiem:function(e,t,o){return e<12?"ព្រឹក":"ល្ងាច"},calendar:{sameDay:"[ថ្ងៃនេះ ម៉ោង] LT",nextDay:"[ស្អែក ម៉ោង] LT",nextWeek:"dddd [ម៉ោង] LT",lastDay:"[ម្សិលមិញ ម៉ោង] LT",lastWeek:"dddd [សប្តាហ៍មុន] [ម៉ោង] LT",sameElse:"L"},relativeTime:{future:"%sទៀត",past:"%sមុន",s:"ប៉ុន្មានវិនាទី",ss:"%d វិនាទី",m:"មួយនាទី",mm:"%d នាទី",h:"មួយម៉ោង",hh:"%d ម៉ោង",d:"មួយថ្ងៃ",dd:"%d ថ្ងៃ",M:"មួយខែ",MM:"%d ខែ",y:"មួយឆ្នាំ",yy:"%d ឆ្នាំ"},dayOfMonthOrdinalParse:/ទី\d{1,2}/,ordinal:"ទី%d",preparse:function(e){return e.replace(/[១២៣៤៥៦៧៨៩០]/g,(function(e){return o[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},week:{dow:1,doy:4}})}(o(381))},9282:function(e,t,o){!function(e){"use strict";var t={1:"೧",2:"೨",3:"೩",4:"೪",5:"೫",6:"೬",7:"೭",8:"೮",9:"೯",0:"೦"},o={"೧":"1","೨":"2","೩":"3","೪":"4","೫":"5","೬":"6","೭":"7","೮":"8","೯":"9","೦":"0"};e.defineLocale("kn",{months:"ಜನವರಿ_ಫೆಬ್ರವರಿ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂಬರ್_ಅಕ್ಟೋಬರ್_ನವೆಂಬರ್_ಡಿಸೆಂಬರ್".split("_"),monthsShort:"ಜನ_ಫೆಬ್ರ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂ_ಅಕ್ಟೋ_ನವೆಂ_ಡಿಸೆಂ".split("_"),monthsParseExact:!0,weekdays:"ಭಾನುವಾರ_ಸೋಮವಾರ_ಮಂಗಳವಾರ_ಬುಧವಾರ_ಗುರುವಾರ_ಶುಕ್ರವಾರ_ಶನಿವಾರ".split("_"),weekdaysShort:"ಭಾನು_ಸೋಮ_ಮಂಗಳ_ಬುಧ_ಗುರು_ಶುಕ್ರ_ಶನಿ".split("_"),weekdaysMin:"ಭಾ_ಸೋ_ಮಂ_ಬು_ಗು_ಶು_ಶ".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm",LLLL:"dddd, D MMMM YYYY, A h:mm"},calendar:{sameDay:"[ಇಂದು] LT",nextDay:"[ನಾಳೆ] LT",nextWeek:"dddd, LT",lastDay:"[ನಿನ್ನೆ] LT",lastWeek:"[ಕೊನೆಯ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s ನಂತರ",past:"%s ಹಿಂದೆ",s:"ಕೆಲವು ಕ್ಷಣಗಳು",ss:"%d ಸೆಕೆಂಡುಗಳು",m:"ಒಂದು ನಿಮಿಷ",mm:"%d ನಿಮಿಷ",h:"ಒಂದು ಗಂಟೆ",hh:"%d ಗಂಟೆ",d:"ಒಂದು ದಿನ",dd:"%d ದಿನ",M:"ಒಂದು ತಿಂಗಳು",MM:"%d ತಿಂಗಳು",y:"ಒಂದು ವರ್ಷ",yy:"%d ವರ್ಷ"},preparse:function(e){return e.replace(/[೧೨೩೪೫೬೭೮೯೦]/g,(function(e){return o[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},meridiemParse:/ರಾತ್ರಿ|ಬೆಳಿಗ್ಗೆ|ಮಧ್ಯಾಹ್ನ|ಸಂಜೆ/,meridiemHour:function(e,t){return 12===e&&(e=0),"ರಾತ್ರಿ"===t?e<4?e:e+12:"ಬೆಳಿಗ್ಗೆ"===t?e:"ಮಧ್ಯಾಹ್ನ"===t?e>=10?e:e+12:"ಸಂಜೆ"===t?e+12:void 0},meridiem:function(e,t,o){return e<4?"ರಾತ್ರಿ":e<10?"ಬೆಳಿಗ್ಗೆ":e<17?"ಮಧ್ಯಾಹ್ನ":e<20?"ಸಂಜೆ":"ರಾತ್ರಿ"},dayOfMonthOrdinalParse:/\d{1,2}(ನೇ)/,ordinal:function(e){return e+"ನೇ"},week:{dow:0,doy:6}})}(o(381))},3730:function(e,t,o){!function(e){"use strict";e.defineLocale("ko",{months:"1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월".split("_"),monthsShort:"1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월".split("_"),weekdays:"일요일_월요일_화요일_수요일_목요일_금요일_토요일".split("_"),weekdaysShort:"일_월_화_수_목_금_토".split("_"),weekdaysMin:"일_월_화_수_목_금_토".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"YYYY.MM.DD.",LL:"YYYY년 MMMM D일",LLL:"YYYY년 MMMM D일 A h:mm",LLLL:"YYYY년 MMMM D일 dddd A h:mm",l:"YYYY.MM.DD.",ll:"YYYY년 MMMM D일",lll:"YYYY년 MMMM D일 A h:mm",llll:"YYYY년 MMMM D일 dddd A h:mm"},calendar:{sameDay:"오늘 LT",nextDay:"내일 LT",nextWeek:"dddd LT",lastDay:"어제 LT",lastWeek:"지난주 dddd LT",sameElse:"L"},relativeTime:{future:"%s 후",past:"%s 전",s:"몇 초",ss:"%d초",m:"1분",mm:"%d분",h:"한 시간",hh:"%d시간",d:"하루",dd:"%d일",M:"한 달",MM:"%d달",y:"일 년",yy:"%d년"},dayOfMonthOrdinalParse:/\d{1,2}(일|월|주)/,ordinal:function(e,t){switch(t){case"d":case"D":case"DDD":return e+"일";case"M":return e+"월";case"w":case"W":return e+"주";default:return e}},meridiemParse:/오전|오후/,isPM:function(e){return"오후"===e},meridiem:function(e,t,o){return e<12?"오전":"오후"}})}(o(381))},1408:function(e,t,o){!function(e){"use strict";var t={1:"١",2:"٢",3:"٣",4:"٤",5:"٥",6:"٦",7:"٧",8:"٨",9:"٩",0:"٠"},o={"١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","٠":"0"},i=["کانونی دووەم","شوبات","ئازار","نیسان","ئایار","حوزەیران","تەمموز","ئاب","ئەیلوول","تشرینی یەكەم","تشرینی دووەم","كانونی یەکەم"];e.defineLocale("ku",{months:i,monthsShort:i,weekdays:"یه‌كشه‌ممه‌_دووشه‌ممه‌_سێشه‌ممه‌_چوارشه‌ممه‌_پێنجشه‌ممه‌_هه‌ینی_شه‌ممه‌".split("_"),weekdaysShort:"یه‌كشه‌م_دووشه‌م_سێشه‌م_چوارشه‌م_پێنجشه‌م_هه‌ینی_شه‌ممه‌".split("_"),weekdaysMin:"ی_د_س_چ_پ_ه_ش".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},meridiemParse:/ئێواره‌|به‌یانی/,isPM:function(e){return/ئێواره‌/.test(e)},meridiem:function(e,t,o){return e<12?"به‌یانی":"ئێواره‌"},calendar:{sameDay:"[ئه‌مرۆ كاتژمێر] LT",nextDay:"[به‌یانی كاتژمێر] LT",nextWeek:"dddd [كاتژمێر] LT",lastDay:"[دوێنێ كاتژمێر] LT",lastWeek:"dddd [كاتژمێر] LT",sameElse:"L"},relativeTime:{future:"له‌ %s",past:"%s",s:"چه‌ند چركه‌یه‌ك",ss:"چركه‌ %d",m:"یه‌ك خوله‌ك",mm:"%d خوله‌ك",h:"یه‌ك كاتژمێر",hh:"%d كاتژمێر",d:"یه‌ك ڕۆژ",dd:"%d ڕۆژ",M:"یه‌ك مانگ",MM:"%d مانگ",y:"یه‌ك ساڵ",yy:"%d ساڵ"},preparse:function(e){return e.replace(/[١٢٣٤٥٦٧٨٩٠]/g,(function(e){return o[e]})).replace(/،/g,",")},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]})).replace(/,/g,"،")},week:{dow:6,doy:12}})}(o(381))},3291:function(e,t,o){!function(e){"use strict";var t={0:"-чү",1:"-чи",2:"-чи",3:"-чү",4:"-чү",5:"-чи",6:"-чы",7:"-чи",8:"-чи",9:"-чу",10:"-чу",20:"-чы",30:"-чу",40:"-чы",50:"-чү",60:"-чы",70:"-чи",80:"-чи",90:"-чу",100:"-чү"};e.defineLocale("ky",{months:"январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь".split("_"),monthsShort:"янв_фев_март_апр_май_июнь_июль_авг_сен_окт_ноя_дек".split("_"),weekdays:"Жекшемби_Дүйшөмбү_Шейшемби_Шаршемби_Бейшемби_Жума_Ишемби".split("_"),weekdaysShort:"Жек_Дүй_Шей_Шар_Бей_Жум_Ише".split("_"),weekdaysMin:"Жк_Дй_Шй_Шр_Бй_Жм_Иш".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Бүгүн саат] LT",nextDay:"[Эртең саат] LT",nextWeek:"dddd [саат] LT",lastDay:"[Кечээ саат] LT",lastWeek:"[Өткөн аптанын] dddd [күнү] [саат] LT",sameElse:"L"},relativeTime:{future:"%s ичинде",past:"%s мурун",s:"бирнече секунд",ss:"%d секунд",m:"бир мүнөт",mm:"%d мүнөт",h:"бир саат",hh:"%d саат",d:"бир күн",dd:"%d күн",M:"бир ай",MM:"%d ай",y:"бир жыл",yy:"%d жыл"},dayOfMonthOrdinalParse:/\d{1,2}-(чи|чы|чү|чу)/,ordinal:function(e){var o=e%10,i=e>=100?100:null;return e+(t[e]||t[o]||t[i])},week:{dow:1,doy:7}})}(o(381))},6841:function(e,t,o){!function(e){"use strict";function t(e,t,o,i){var n={m:["eng Minutt","enger Minutt"],h:["eng Stonn","enger Stonn"],d:["een Dag","engem Dag"],M:["ee Mount","engem Mount"],y:["ee Joer","engem Joer"]};return t?n[o][0]:n[o][1]}function o(e){return n(e.substr(0,e.indexOf(" ")))?"a "+e:"an "+e}function i(e){return n(e.substr(0,e.indexOf(" ")))?"viru "+e:"virun "+e}function n(e){if(e=parseInt(e,10),isNaN(e))return!1;if(e<0)return!0;if(e<10)return 4<=e&&e<=7;if(e<100){var t=e%10;return n(0===t?e/10:t)}if(e<1e4){for(;e>=10;)e/=10;return n(e)}return n(e/=1e3)}e.defineLocale("lb",{months:"Januar_Februar_Mäerz_Abrëll_Mee_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Febr._Mrz._Abr._Mee_Jun._Jul._Aug._Sept._Okt._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Sonndeg_Méindeg_Dënschdeg_Mëttwoch_Donneschdeg_Freideg_Samschdeg".split("_"),weekdaysShort:"So._Mé._Dë._Më._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mé_Dë_Më_Do_Fr_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm [Auer]",LTS:"H:mm:ss [Auer]",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm [Auer]",LLLL:"dddd, D. MMMM YYYY H:mm [Auer]"},calendar:{sameDay:"[Haut um] LT",sameElse:"L",nextDay:"[Muer um] LT",nextWeek:"dddd [um] LT",lastDay:"[Gëschter um] LT",lastWeek:function(){switch(this.day()){case 2:case 4:return"[Leschten] dddd [um] LT";default:return"[Leschte] dddd [um] LT"}}},relativeTime:{future:o,past:i,s:"e puer Sekonnen",ss:"%d Sekonnen",m:t,mm:"%d Minutten",h:t,hh:"%d Stonnen",d:t,dd:"%d Deeg",M:t,MM:"%d Méint",y:t,yy:"%d Joer"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(o(381))},5466:function(e,t,o){!function(e){"use strict";e.defineLocale("lo",{months:"ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ".split("_"),monthsShort:"ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ".split("_"),weekdays:"ອາທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ".split("_"),weekdaysShort:"ທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ".split("_"),weekdaysMin:"ທ_ຈ_ອຄ_ພ_ພຫ_ສກ_ສ".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"ວັນdddd D MMMM YYYY HH:mm"},meridiemParse:/ຕອນເຊົ້າ|ຕອນແລງ/,isPM:function(e){return"ຕອນແລງ"===e},meridiem:function(e,t,o){return e<12?"ຕອນເຊົ້າ":"ຕອນແລງ"},calendar:{sameDay:"[ມື້ນີ້ເວລາ] LT",nextDay:"[ມື້ອື່ນເວລາ] LT",nextWeek:"[ວັນ]dddd[ໜ້າເວລາ] LT",lastDay:"[ມື້ວານນີ້ເວລາ] LT",lastWeek:"[ວັນ]dddd[ແລ້ວນີ້ເວລາ] LT",sameElse:"L"},relativeTime:{future:"ອີກ %s",past:"%sຜ່ານມາ",s:"ບໍ່ເທົ່າໃດວິນາທີ",ss:"%d ວິນາທີ",m:"1 ນາທີ",mm:"%d ນາທີ",h:"1 ຊົ່ວໂມງ",hh:"%d ຊົ່ວໂມງ",d:"1 ມື້",dd:"%d ມື້",M:"1 ເດືອນ",MM:"%d ເດືອນ",y:"1 ປີ",yy:"%d ປີ"},dayOfMonthOrdinalParse:/(ທີ່)\d{1,2}/,ordinal:function(e){return"ທີ່"+e}})}(o(381))},7010:function(e,t,o){!function(e){"use strict";var t={ss:"sekundė_sekundžių_sekundes",m:"minutė_minutės_minutę",mm:"minutės_minučių_minutes",h:"valanda_valandos_valandą",hh:"valandos_valandų_valandas",d:"diena_dienos_dieną",dd:"dienos_dienų_dienas",M:"mėnuo_mėnesio_mėnesį",MM:"mėnesiai_mėnesių_mėnesius",y:"metai_metų_metus",yy:"metai_metų_metus"};function o(e,t,o,i){return t?"kelios sekundės":i?"kelių sekundžių":"kelias sekundes"}function i(e,t,o,i){return t?r(o)[0]:i?r(o)[1]:r(o)[2]}function n(e){return e%10==0||e>10&&e<20}function r(e){return t[e].split("_")}function a(e,t,o,a){var s=e+" ";return 1===e?s+i(e,t,o[0],a):t?s+(n(e)?r(o)[1]:r(o)[0]):a?s+r(o)[1]:s+(n(e)?r(o)[1]:r(o)[2])}e.defineLocale("lt",{months:{format:"sausio_vasario_kovo_balandžio_gegužės_birželio_liepos_rugpjūčio_rugsėjo_spalio_lapkričio_gruodžio".split("_"),standalone:"sausis_vasaris_kovas_balandis_gegužė_birželis_liepa_rugpjūtis_rugsėjis_spalis_lapkritis_gruodis".split("_"),isFormat:/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?|MMMM?(\[[^\[\]]*\]|\s)+D[oD]?/},monthsShort:"sau_vas_kov_bal_geg_bir_lie_rgp_rgs_spa_lap_grd".split("_"),weekdays:{format:"sekmadienį_pirmadienį_antradienį_trečiadienį_ketvirtadienį_penktadienį_šeštadienį".split("_"),standalone:"sekmadienis_pirmadienis_antradienis_trečiadienis_ketvirtadienis_penktadienis_šeštadienis".split("_"),isFormat:/dddd HH:mm/},weekdaysShort:"Sek_Pir_Ant_Tre_Ket_Pen_Šeš".split("_"),weekdaysMin:"S_P_A_T_K_Pn_Š".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY [m.] MMMM D [d.]",LLL:"YYYY [m.] MMMM D [d.], HH:mm [val.]",LLLL:"YYYY [m.] MMMM D [d.], dddd, HH:mm [val.]",l:"YYYY-MM-DD",ll:"YYYY [m.] MMMM D [d.]",lll:"YYYY [m.] MMMM D [d.], HH:mm [val.]",llll:"YYYY [m.] MMMM D [d.], ddd, HH:mm [val.]"},calendar:{sameDay:"[Šiandien] LT",nextDay:"[Rytoj] LT",nextWeek:"dddd LT",lastDay:"[Vakar] LT",lastWeek:"[Praėjusį] dddd LT",sameElse:"L"},relativeTime:{future:"po %s",past:"prieš %s",s:o,ss:a,m:i,mm:a,h:i,hh:a,d:i,dd:a,M:i,MM:a,y:i,yy:a},dayOfMonthOrdinalParse:/\d{1,2}-oji/,ordinal:function(e){return e+"-oji"},week:{dow:1,doy:4}})}(o(381))},7595:function(e,t,o){!function(e){"use strict";var t={ss:"sekundes_sekundēm_sekunde_sekundes".split("_"),m:"minūtes_minūtēm_minūte_minūtes".split("_"),mm:"minūtes_minūtēm_minūte_minūtes".split("_"),h:"stundas_stundām_stunda_stundas".split("_"),hh:"stundas_stundām_stunda_stundas".split("_"),d:"dienas_dienām_diena_dienas".split("_"),dd:"dienas_dienām_diena_dienas".split("_"),M:"mēneša_mēnešiem_mēnesis_mēneši".split("_"),MM:"mēneša_mēnešiem_mēnesis_mēneši".split("_"),y:"gada_gadiem_gads_gadi".split("_"),yy:"gada_gadiem_gads_gadi".split("_")};function o(e,t,o){return o?t%10==1&&t%100!=11?e[2]:e[3]:t%10==1&&t%100!=11?e[0]:e[1]}function i(e,i,n){return e+" "+o(t[n],e,i)}function n(e,i,n){return o(t[n],e,i)}function r(e,t){return t?"dažas sekundes":"dažām sekundēm"}e.defineLocale("lv",{months:"janvāris_februāris_marts_aprīlis_maijs_jūnijs_jūlijs_augusts_septembris_oktobris_novembris_decembris".split("_"),monthsShort:"jan_feb_mar_apr_mai_jūn_jūl_aug_sep_okt_nov_dec".split("_"),weekdays:"svētdiena_pirmdiena_otrdiena_trešdiena_ceturtdiena_piektdiena_sestdiena".split("_"),weekdaysShort:"Sv_P_O_T_C_Pk_S".split("_"),weekdaysMin:"Sv_P_O_T_C_Pk_S".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY.",LL:"YYYY. [gada] D. MMMM",LLL:"YYYY. [gada] D. MMMM, HH:mm",LLLL:"YYYY. [gada] D. MMMM, dddd, HH:mm"},calendar:{sameDay:"[Šodien pulksten] LT",nextDay:"[Rīt pulksten] LT",nextWeek:"dddd [pulksten] LT",lastDay:"[Vakar pulksten] LT",lastWeek:"[Pagājušā] dddd [pulksten] LT",sameElse:"L"},relativeTime:{future:"pēc %s",past:"pirms %s",s:r,ss:i,m:n,mm:i,h:n,hh:i,d:n,dd:i,M:n,MM:i,y:n,yy:i},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(o(381))},9861:function(e,t,o){!function(e){"use strict";var t={words:{ss:["sekund","sekunda","sekundi"],m:["jedan minut","jednog minuta"],mm:["minut","minuta","minuta"],h:["jedan sat","jednog sata"],hh:["sat","sata","sati"],dd:["dan","dana","dana"],MM:["mjesec","mjeseca","mjeseci"],yy:["godina","godine","godina"]},correctGrammaticalCase:function(e,t){return 1===e?t[0]:e>=2&&e<=4?t[1]:t[2]},translate:function(e,o,i){var n=t.words[i];return 1===i.length?o?n[0]:n[1]:e+" "+t.correctGrammaticalCase(e,n)}};e.defineLocale("me",{months:"januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar".split("_"),monthsShort:"jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_pe_su".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sjutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[juče u] LT",lastWeek:function(){return["[prošle] [nedjelje] [u] LT","[prošlog] [ponedjeljka] [u] LT","[prošlog] [utorka] [u] LT","[prošle] [srijede] [u] LT","[prošlog] [četvrtka] [u] LT","[prošlog] [petka] [u] LT","[prošle] [subote] [u] LT"][this.day()]},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"nekoliko sekundi",ss:t.translate,m:t.translate,mm:t.translate,h:t.translate,hh:t.translate,d:"dan",dd:t.translate,M:"mjesec",MM:t.translate,y:"godinu",yy:t.translate},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(o(381))},5493:function(e,t,o){!function(e){"use strict";e.defineLocale("mi",{months:"Kohi-tāte_Hui-tanguru_Poutū-te-rangi_Paenga-whāwhā_Haratua_Pipiri_Hōngoingoi_Here-turi-kōkā_Mahuru_Whiringa-ā-nuku_Whiringa-ā-rangi_Hakihea".split("_"),monthsShort:"Kohi_Hui_Pou_Pae_Hara_Pipi_Hōngoi_Here_Mahu_Whi-nu_Whi-ra_Haki".split("_"),monthsRegex:/(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i,monthsStrictRegex:/(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i,monthsShortRegex:/(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i,monthsShortStrictRegex:/(?:['a-z\u0101\u014D\u016B]+\-?){1,2}/i,weekdays:"Rātapu_Mane_Tūrei_Wenerei_Tāite_Paraire_Hātarei".split("_"),weekdaysShort:"Ta_Ma_Tū_We_Tāi_Pa_Hā".split("_"),weekdaysMin:"Ta_Ma_Tū_We_Tāi_Pa_Hā".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [i] HH:mm",LLLL:"dddd, D MMMM YYYY [i] HH:mm"},calendar:{sameDay:"[i teie mahana, i] LT",nextDay:"[apopo i] LT",nextWeek:"dddd [i] LT",lastDay:"[inanahi i] LT",lastWeek:"dddd [whakamutunga i] LT",sameElse:"L"},relativeTime:{future:"i roto i %s",past:"%s i mua",s:"te hēkona ruarua",ss:"%d hēkona",m:"he meneti",mm:"%d meneti",h:"te haora",hh:"%d haora",d:"he ra",dd:"%d ra",M:"he marama",MM:"%d marama",y:"he tau",yy:"%d tau"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(o(381))},5966:function(e,t,o){!function(e){"use strict";e.defineLocale("mk",{months:"јануари_февруари_март_април_мај_јуни_јули_август_септември_октомври_ноември_декември".split("_"),monthsShort:"јан_фев_мар_апр_мај_јун_јул_авг_сеп_окт_ное_дек".split("_"),weekdays:"недела_понеделник_вторник_среда_четврток_петок_сабота".split("_"),weekdaysShort:"нед_пон_вто_сре_чет_пет_саб".split("_"),weekdaysMin:"нe_пo_вт_ср_че_пе_сa".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[Денес во] LT",nextDay:"[Утре во] LT",nextWeek:"[Во] dddd [во] LT",lastDay:"[Вчера во] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[Изминатата] dddd [во] LT";case 1:case 2:case 4:case 5:return"[Изминатиот] dddd [во] LT"}},sameElse:"L"},relativeTime:{future:"за %s",past:"пред %s",s:"неколку секунди",ss:"%d секунди",m:"една минута",mm:"%d минути",h:"еден час",hh:"%d часа",d:"еден ден",dd:"%d дена",M:"еден месец",MM:"%d месеци",y:"една година",yy:"%d години"},dayOfMonthOrdinalParse:/\d{1,2}-(ев|ен|ти|ви|ри|ми)/,ordinal:function(e){var t=e%10,o=e%100;return 0===e?e+"-ев":0===o?e+"-ен":o>10&&o<20?e+"-ти":1===t?e+"-ви":2===t?e+"-ри":7===t||8===t?e+"-ми":e+"-ти"},week:{dow:1,doy:7}})}(o(381))},7341:function(e,t,o){!function(e){"use strict";e.defineLocale("ml",{months:"ജനുവരി_ഫെബ്രുവരി_മാർച്ച്_ഏപ്രിൽ_മേയ്_ജൂൺ_ജൂലൈ_ഓഗസ്റ്റ്_സെപ്റ്റംബർ_ഒക്ടോബർ_നവംബർ_ഡിസംബർ".split("_"),monthsShort:"ജനു._ഫെബ്രു._മാർ._ഏപ്രി._മേയ്_ജൂൺ_ജൂലൈ._ഓഗ._സെപ്റ്റ._ഒക്ടോ._നവം._ഡിസം.".split("_"),monthsParseExact:!0,weekdays:"ഞായറാഴ്ച_തിങ്കളാഴ്ച_ചൊവ്വാഴ്ച_ബുധനാഴ്ച_വ്യാഴാഴ്ച_വെള്ളിയാഴ്ച_ശനിയാഴ്ച".split("_"),weekdaysShort:"ഞായർ_തിങ്കൾ_ചൊവ്വ_ബുധൻ_വ്യാഴം_വെള്ളി_ശനി".split("_"),weekdaysMin:"ഞാ_തി_ചൊ_ബു_വ്യാ_വെ_ശ".split("_"),longDateFormat:{LT:"A h:mm -നു",LTS:"A h:mm:ss -നു",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm -നു",LLLL:"dddd, D MMMM YYYY, A h:mm -നു"},calendar:{sameDay:"[ഇന്ന്] LT",nextDay:"[നാളെ] LT",nextWeek:"dddd, LT",lastDay:"[ഇന്നലെ] LT",lastWeek:"[കഴിഞ്ഞ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s കഴിഞ്ഞ്",past:"%s മുൻപ്",s:"അൽപ നിമിഷങ്ങൾ",ss:"%d സെക്കൻഡ്",m:"ഒരു മിനിറ്റ്",mm:"%d മിനിറ്റ്",h:"ഒരു മണിക്കൂർ",hh:"%d മണിക്കൂർ",d:"ഒരു ദിവസം",dd:"%d ദിവസം",M:"ഒരു മാസം",MM:"%d മാസം",y:"ഒരു വർഷം",yy:"%d വർഷം"},meridiemParse:/രാത്രി|രാവിലെ|ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി/i,meridiemHour:function(e,t){return 12===e&&(e=0),"രാത്രി"===t&&e>=4||"ഉച്ച കഴിഞ്ഞ്"===t||"വൈകുന്നേരം"===t?e+12:e},meridiem:function(e,t,o){return e<4?"രാത്രി":e<12?"രാവിലെ":e<17?"ഉച്ച കഴിഞ്ഞ്":e<20?"വൈകുന്നേരം":"രാത്രി"}})}(o(381))},5115:function(e,t,o){!function(e){"use strict";function t(e,t,o,i){switch(o){case"s":return t?"хэдхэн секунд":"хэдхэн секундын";case"ss":return e+(t?" секунд":" секундын");case"m":case"mm":return e+(t?" минут":" минутын");case"h":case"hh":return e+(t?" цаг":" цагийн");case"d":case"dd":return e+(t?" өдөр":" өдрийн");case"M":case"MM":return e+(t?" сар":" сарын");case"y":case"yy":return e+(t?" жил":" жилийн");default:return e}}e.defineLocale("mn",{months:"Нэгдүгээр сар_Хоёрдугаар сар_Гуравдугаар сар_Дөрөвдүгээр сар_Тавдугаар сар_Зургадугаар сар_Долдугаар сар_Наймдугаар сар_Есдүгээр сар_Аравдугаар сар_Арван нэгдүгээр сар_Арван хоёрдугаар сар".split("_"),monthsShort:"1 сар_2 сар_3 сар_4 сар_5 сар_6 сар_7 сар_8 сар_9 сар_10 сар_11 сар_12 сар".split("_"),monthsParseExact:!0,weekdays:"Ням_Даваа_Мягмар_Лхагва_Пүрэв_Баасан_Бямба".split("_"),weekdaysShort:"Ням_Дав_Мяг_Лха_Пүр_Баа_Бям".split("_"),weekdaysMin:"Ня_Да_Мя_Лх_Пү_Ба_Бя".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY оны MMMMын D",LLL:"YYYY оны MMMMын D HH:mm",LLLL:"dddd, YYYY оны MMMMын D HH:mm"},meridiemParse:/ҮӨ|ҮХ/i,isPM:function(e){return"ҮХ"===e},meridiem:function(e,t,o){return e<12?"ҮӨ":"ҮХ"},calendar:{sameDay:"[Өнөөдөр] LT",nextDay:"[Маргааш] LT",nextWeek:"[Ирэх] dddd LT",lastDay:"[Өчигдөр] LT",lastWeek:"[Өнгөрсөн] dddd LT",sameElse:"L"},relativeTime:{future:"%s дараа",past:"%s өмнө",s:t,ss:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2} өдөр/,ordinal:function(e,t){switch(t){case"d":case"D":case"DDD":return e+" өдөр";default:return e}}})}(o(381))},370:function(e,t,o){!function(e){"use strict";var t={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},o={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"};function i(e,t,o,i){var n="";if(t)switch(o){case"s":n="काही सेकंद";break;case"ss":n="%d सेकंद";break;case"m":n="एक मिनिट";break;case"mm":n="%d मिनिटे";break;case"h":n="एक तास";break;case"hh":n="%d तास";break;case"d":n="एक दिवस";break;case"dd":n="%d दिवस";break;case"M":n="एक महिना";break;case"MM":n="%d महिने";break;case"y":n="एक वर्ष";break;case"yy":n="%d वर्षे"}else switch(o){case"s":n="काही सेकंदां";break;case"ss":n="%d सेकंदां";break;case"m":n="एका मिनिटा";break;case"mm":n="%d मिनिटां";break;case"h":n="एका तासा";break;case"hh":n="%d तासां";break;case"d":n="एका दिवसा";break;case"dd":n="%d दिवसां";break;case"M":n="एका महिन्या";break;case"MM":n="%d महिन्यां";break;case"y":n="एका वर्षा";break;case"yy":n="%d वर्षां"}return n.replace(/%d/i,e)}e.defineLocale("mr",{months:"जानेवारी_फेब्रुवारी_मार्च_एप्रिल_मे_जून_जुलै_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर".split("_"),monthsShort:"जाने._फेब्रु._मार्च._एप्रि._मे._जून._जुलै._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.".split("_"),monthsParseExact:!0,weekdays:"रविवार_सोमवार_मंगळवार_बुधवार_गुरूवार_शुक्रवार_शनिवार".split("_"),weekdaysShort:"रवि_सोम_मंगळ_बुध_गुरू_शुक्र_शनि".split("_"),weekdaysMin:"र_सो_मं_बु_गु_शु_श".split("_"),longDateFormat:{LT:"A h:mm वाजता",LTS:"A h:mm:ss वाजता",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm वाजता",LLLL:"dddd, D MMMM YYYY, A h:mm वाजता"},calendar:{sameDay:"[आज] LT",nextDay:"[उद्या] LT",nextWeek:"dddd, LT",lastDay:"[काल] LT",lastWeek:"[मागील] dddd, LT",sameElse:"L"},relativeTime:{future:"%sमध्ये",past:"%sपूर्वी",s:i,ss:i,m:i,mm:i,h:i,hh:i,d:i,dd:i,M:i,MM:i,y:i,yy:i},preparse:function(e){return e.replace(/[१२३४५६७८९०]/g,(function(e){return o[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},meridiemParse:/पहाटे|सकाळी|दुपारी|सायंकाळी|रात्री/,meridiemHour:function(e,t){return 12===e&&(e=0),"पहाटे"===t||"सकाळी"===t?e:"दुपारी"===t||"सायंकाळी"===t||"रात्री"===t?e>=12?e:e+12:void 0},meridiem:function(e,t,o){return e>=0&&e<6?"पहाटे":e<12?"सकाळी":e<17?"दुपारी":e<20?"सायंकाळी":"रात्री"},week:{dow:0,doy:6}})}(o(381))},1237:function(e,t,o){!function(e){"use strict";e.defineLocale("ms-my",{months:"Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis".split("_"),weekdays:"Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu".split("_"),weekdaysShort:"Ahd_Isn_Sel_Rab_Kha_Jum_Sab".split("_"),weekdaysMin:"Ah_Is_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/pagi|tengahari|petang|malam/,meridiemHour:function(e,t){return 12===e&&(e=0),"pagi"===t?e:"tengahari"===t?e>=11?e:e+12:"petang"===t||"malam"===t?e+12:void 0},meridiem:function(e,t,o){return e<11?"pagi":e<15?"tengahari":e<19?"petang":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Esok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kelmarin pukul] LT",lastWeek:"dddd [lepas pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lepas",s:"beberapa saat",ss:"%d saat",m:"seminit",mm:"%d minit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}})}(o(381))},9847:function(e,t,o){!function(e){"use strict";e.defineLocale("ms",{months:"Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis".split("_"),weekdays:"Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu".split("_"),weekdaysShort:"Ahd_Isn_Sel_Rab_Kha_Jum_Sab".split("_"),weekdaysMin:"Ah_Is_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/pagi|tengahari|petang|malam/,meridiemHour:function(e,t){return 12===e&&(e=0),"pagi"===t?e:"tengahari"===t?e>=11?e:e+12:"petang"===t||"malam"===t?e+12:void 0},meridiem:function(e,t,o){return e<11?"pagi":e<15?"tengahari":e<19?"petang":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Esok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kelmarin pukul] LT",lastWeek:"dddd [lepas pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lepas",s:"beberapa saat",ss:"%d saat",m:"seminit",mm:"%d minit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}})}(o(381))},2126:function(e,t,o){!function(e){"use strict";e.defineLocale("mt",{months:"Jannar_Frar_Marzu_April_Mejju_Ġunju_Lulju_Awwissu_Settembru_Ottubru_Novembru_Diċembru".split("_"),monthsShort:"Jan_Fra_Mar_Apr_Mej_Ġun_Lul_Aww_Set_Ott_Nov_Diċ".split("_"),weekdays:"Il-Ħadd_It-Tnejn_It-Tlieta_L-Erbgħa_Il-Ħamis_Il-Ġimgħa_Is-Sibt".split("_"),weekdaysShort:"Ħad_Tne_Tli_Erb_Ħam_Ġim_Sib".split("_"),weekdaysMin:"Ħa_Tn_Tl_Er_Ħa_Ġi_Si".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Illum fil-]LT",nextDay:"[Għada fil-]LT",nextWeek:"dddd [fil-]LT",lastDay:"[Il-bieraħ fil-]LT",lastWeek:"dddd [li għadda] [fil-]LT",sameElse:"L"},relativeTime:{future:"f’ %s",past:"%s ilu",s:"ftit sekondi",ss:"%d sekondi",m:"minuta",mm:"%d minuti",h:"siegħa",hh:"%d siegħat",d:"ġurnata",dd:"%d ġranet",M:"xahar",MM:"%d xhur",y:"sena",yy:"%d sni"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(o(381))},6165:function(e,t,o){!function(e){"use strict";var t={1:"၁",2:"၂",3:"၃",4:"၄",5:"၅",6:"၆",7:"၇",8:"၈",9:"၉",0:"၀"},o={"၁":"1","၂":"2","၃":"3","၄":"4","၅":"5","၆":"6","၇":"7","၈":"8","၉":"9","၀":"0"};e.defineLocale("my",{months:"ဇန်နဝါရီ_ဖေဖော်ဝါရီ_မတ်_ဧပြီ_မေ_ဇွန်_ဇူလိုင်_သြဂုတ်_စက်တင်ဘာ_အောက်တိုဘာ_နိုဝင်ဘာ_ဒီဇင်ဘာ".split("_"),monthsShort:"ဇန်_ဖေ_မတ်_ပြီ_မေ_ဇွန်_လိုင်_သြ_စက်_အောက်_နို_ဒီ".split("_"),weekdays:"တနင်္ဂနွေ_တနင်္လာ_အင်္ဂါ_ဗုဒ္ဓဟူး_ကြာသပတေး_သောကြာ_စနေ".split("_"),weekdaysShort:"နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ".split("_"),weekdaysMin:"နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[ယနေ.] LT [မှာ]",nextDay:"[မနက်ဖြန်] LT [မှာ]",nextWeek:"dddd LT [မှာ]",lastDay:"[မနေ.က] LT [မှာ]",lastWeek:"[ပြီးခဲ့သော] dddd LT [မှာ]",sameElse:"L"},relativeTime:{future:"လာမည့် %s မှာ",past:"လွန်ခဲ့သော %s က",s:"စက္ကန်.အနည်းငယ်",ss:"%d စက္ကန့်",m:"တစ်မိနစ်",mm:"%d မိနစ်",h:"တစ်နာရီ",hh:"%d နာရီ",d:"တစ်ရက်",dd:"%d ရက်",M:"တစ်လ",MM:"%d လ",y:"တစ်နှစ်",yy:"%d နှစ်"},preparse:function(e){return e.replace(/[၁၂၃၄၅၆၇၈၉၀]/g,(function(e){return o[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},week:{dow:1,doy:4}})}(o(381))},4924:function(e,t,o){!function(e){"use strict";e.defineLocale("nb",{months:"januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan._feb._mars_apr._mai_juni_juli_aug._sep._okt._nov._des.".split("_"),monthsParseExact:!0,weekdays:"søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag".split("_"),weekdaysShort:"sø._ma._ti._on._to._fr._lø.".split("_"),weekdaysMin:"sø_ma_ti_on_to_fr_lø".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] HH:mm",LLLL:"dddd D. MMMM YYYY [kl.] HH:mm"},calendar:{sameDay:"[i dag kl.] LT",nextDay:"[i morgen kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[i går kl.] LT",lastWeek:"[forrige] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s siden",s:"noen sekunder",ss:"%d sekunder",m:"ett minutt",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dager",w:"en uke",ww:"%d uker",M:"en måned",MM:"%d måneder",y:"ett år",yy:"%d år"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(o(381))},6744:function(e,t,o){!function(e){"use strict";var t={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},o={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"};e.defineLocale("ne",{months:"जनवरी_फेब्रुवरी_मार्च_अप्रिल_मई_जुन_जुलाई_अगष्ट_सेप्टेम्बर_अक्टोबर_नोभेम्बर_डिसेम्बर".split("_"),monthsShort:"जन._फेब्रु._मार्च_अप्रि._मई_जुन_जुलाई._अग._सेप्ट._अक्टो._नोभे._डिसे.".split("_"),monthsParseExact:!0,weekdays:"आइतबार_सोमबार_मङ्गलबार_बुधबार_बिहिबार_शुक्रबार_शनिबार".split("_"),weekdaysShort:"आइत._सोम._मङ्गल._बुध._बिहि._शुक्र._शनि.".split("_"),weekdaysMin:"आ._सो._मं._बु._बि._शु._श.".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"Aको h:mm बजे",LTS:"Aको h:mm:ss बजे",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, Aको h:mm बजे",LLLL:"dddd, D MMMM YYYY, Aको h:mm बजे"},preparse:function(e){return e.replace(/[१२३४५६७८९०]/g,(function(e){return o[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},meridiemParse:/राति|बिहान|दिउँसो|साँझ/,meridiemHour:function(e,t){return 12===e&&(e=0),"राति"===t?e<4?e:e+12:"बिहान"===t?e:"दिउँसो"===t?e>=10?e:e+12:"साँझ"===t?e+12:void 0},meridiem:function(e,t,o){return e<3?"राति":e<12?"बिहान":e<16?"दिउँसो":e<20?"साँझ":"राति"},calendar:{sameDay:"[आज] LT",nextDay:"[भोलि] LT",nextWeek:"[आउँदो] dddd[,] LT",lastDay:"[हिजो] LT",lastWeek:"[गएको] dddd[,] LT",sameElse:"L"},relativeTime:{future:"%sमा",past:"%s अगाडि",s:"केही क्षण",ss:"%d सेकेण्ड",m:"एक मिनेट",mm:"%d मिनेट",h:"एक घण्टा",hh:"%d घण्टा",d:"एक दिन",dd:"%d दिन",M:"एक महिना",MM:"%d महिना",y:"एक बर्ष",yy:"%d बर्ष"},week:{dow:0,doy:6}})}(o(381))},9814:function(e,t,o){!function(e){"use strict";var t="jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.".split("_"),o="jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec".split("_"),i=[/^jan/i,/^feb/i,/^maart|mrt.?$/i,/^apr/i,/^mei$/i,/^jun[i.]?$/i,/^jul[i.]?$/i,/^aug/i,/^sep/i,/^okt/i,/^nov/i,/^dec/i],n=/^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december|jan\.?|feb\.?|mrt\.?|apr\.?|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i;e.defineLocale("nl-be",{months:"januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december".split("_"),monthsShort:function(e,i){return e?/-MMM-/.test(i)?o[e.month()]:t[e.month()]:t},monthsRegex:n,monthsShortRegex:n,monthsStrictRegex:/^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i,monthsShortStrictRegex:/^(jan\.?|feb\.?|mrt\.?|apr\.?|mei|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i,monthsParse:i,longMonthsParse:i,shortMonthsParse:i,weekdays:"zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag".split("_"),weekdaysShort:"zo._ma._di._wo._do._vr._za.".split("_"),weekdaysMin:"zo_ma_di_wo_do_vr_za".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[vandaag om] LT",nextDay:"[morgen om] LT",nextWeek:"dddd [om] LT",lastDay:"[gisteren om] LT",lastWeek:"[afgelopen] dddd [om] LT",sameElse:"L"},relativeTime:{future:"over %s",past:"%s geleden",s:"een paar seconden",ss:"%d seconden",m:"één minuut",mm:"%d minuten",h:"één uur",hh:"%d uur",d:"één dag",dd:"%d dagen",M:"één maand",MM:"%d maanden",y:"één jaar",yy:"%d jaar"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(e){return e+(1===e||8===e||e>=20?"ste":"de")},week:{dow:1,doy:4}})}(o(381))},3901:function(e,t,o){!function(e){"use strict";var t="jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.".split("_"),o="jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec".split("_"),i=[/^jan/i,/^feb/i,/^maart|mrt.?$/i,/^apr/i,/^mei$/i,/^jun[i.]?$/i,/^jul[i.]?$/i,/^aug/i,/^sep/i,/^okt/i,/^nov/i,/^dec/i],n=/^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december|jan\.?|feb\.?|mrt\.?|apr\.?|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i;e.defineLocale("nl",{months:"januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december".split("_"),monthsShort:function(e,i){return e?/-MMM-/.test(i)?o[e.month()]:t[e.month()]:t},monthsRegex:n,monthsShortRegex:n,monthsStrictRegex:/^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i,monthsShortStrictRegex:/^(jan\.?|feb\.?|mrt\.?|apr\.?|mei|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i,monthsParse:i,longMonthsParse:i,shortMonthsParse:i,weekdays:"zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag".split("_"),weekdaysShort:"zo._ma._di._wo._do._vr._za.".split("_"),weekdaysMin:"zo_ma_di_wo_do_vr_za".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[vandaag om] LT",nextDay:"[morgen om] LT",nextWeek:"dddd [om] LT",lastDay:"[gisteren om] LT",lastWeek:"[afgelopen] dddd [om] LT",sameElse:"L"},relativeTime:{future:"over %s",past:"%s geleden",s:"een paar seconden",ss:"%d seconden",m:"één minuut",mm:"%d minuten",h:"één uur",hh:"%d uur",d:"één dag",dd:"%d dagen",w:"één week",ww:"%d weken",M:"één maand",MM:"%d maanden",y:"één jaar",yy:"%d jaar"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(e){return e+(1===e||8===e||e>=20?"ste":"de")},week:{dow:1,doy:4}})}(o(381))},3877:function(e,t,o){!function(e){"use strict";e.defineLocale("nn",{months:"januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan._feb._mars_apr._mai_juni_juli_aug._sep._okt._nov._des.".split("_"),monthsParseExact:!0,weekdays:"sundag_måndag_tysdag_onsdag_torsdag_fredag_laurdag".split("_"),weekdaysShort:"su._må._ty._on._to._fr._lau.".split("_"),weekdaysMin:"su_må_ty_on_to_fr_la".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] H:mm",LLLL:"dddd D. MMMM YYYY [kl.] HH:mm"},calendar:{sameDay:"[I dag klokka] LT",nextDay:"[I morgon klokka] LT",nextWeek:"dddd [klokka] LT",lastDay:"[I går klokka] LT",lastWeek:"[Føregåande] dddd [klokka] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s sidan",s:"nokre sekund",ss:"%d sekund",m:"eit minutt",mm:"%d minutt",h:"ein time",hh:"%d timar",d:"ein dag",dd:"%d dagar",w:"ei veke",ww:"%d veker",M:"ein månad",MM:"%d månader",y:"eit år",yy:"%d år"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(o(381))},2135:function(e,t,o){!function(e){"use strict";e.defineLocale("oc-lnc",{months:{standalone:"genièr_febrièr_març_abril_mai_junh_julhet_agost_setembre_octòbre_novembre_decembre".split("_"),format:"de genièr_de febrièr_de març_d'abril_de mai_de junh_de julhet_d'agost_de setembre_d'octòbre_de novembre_de decembre".split("_"),isFormat:/D[oD]?(\s)+MMMM/},monthsShort:"gen._febr._març_abr._mai_junh_julh._ago._set._oct._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"dimenge_diluns_dimars_dimècres_dijòus_divendres_dissabte".split("_"),weekdaysShort:"dg._dl._dm._dc._dj._dv._ds.".split("_"),weekdaysMin:"dg_dl_dm_dc_dj_dv_ds".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM [de] YYYY",ll:"D MMM YYYY",LLL:"D MMMM [de] YYYY [a] H:mm",lll:"D MMM YYYY, H:mm",LLLL:"dddd D MMMM [de] YYYY [a] H:mm",llll:"ddd D MMM YYYY, H:mm"},calendar:{sameDay:"[uèi a] LT",nextDay:"[deman a] LT",nextWeek:"dddd [a] LT",lastDay:"[ièr a] LT",lastWeek:"dddd [passat a] LT",sameElse:"L"},relativeTime:{future:"d'aquí %s",past:"fa %s",s:"unas segondas",ss:"%d segondas",m:"una minuta",mm:"%d minutas",h:"una ora",hh:"%d oras",d:"un jorn",dd:"%d jorns",M:"un mes",MM:"%d meses",y:"un an",yy:"%d ans"},dayOfMonthOrdinalParse:/\d{1,2}(r|n|t|è|a)/,ordinal:function(e,t){var o=1===e?"r":2===e?"n":3===e?"r":4===e?"t":"è";return"w"!==t&&"W"!==t||(o="a"),e+o},week:{dow:1,doy:4}})}(o(381))},5858:function(e,t,o){!function(e){"use strict";var t={1:"੧",2:"੨",3:"੩",4:"੪",5:"੫",6:"੬",7:"੭",8:"੮",9:"੯",0:"੦"},o={"੧":"1","੨":"2","੩":"3","੪":"4","੫":"5","੬":"6","੭":"7","੮":"8","੯":"9","੦":"0"};e.defineLocale("pa-in",{months:"ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ".split("_"),monthsShort:"ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ".split("_"),weekdays:"ਐਤਵਾਰ_ਸੋਮਵਾਰ_ਮੰਗਲਵਾਰ_ਬੁਧਵਾਰ_ਵੀਰਵਾਰ_ਸ਼ੁੱਕਰਵਾਰ_ਸ਼ਨੀਚਰਵਾਰ".split("_"),weekdaysShort:"ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ".split("_"),weekdaysMin:"ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ".split("_"),longDateFormat:{LT:"A h:mm ਵਜੇ",LTS:"A h:mm:ss ਵਜੇ",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm ਵਜੇ",LLLL:"dddd, D MMMM YYYY, A h:mm ਵਜੇ"},calendar:{sameDay:"[ਅਜ] LT",nextDay:"[ਕਲ] LT",nextWeek:"[ਅਗਲਾ] dddd, LT",lastDay:"[ਕਲ] LT",lastWeek:"[ਪਿਛਲੇ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s ਵਿੱਚ",past:"%s ਪਿਛਲੇ",s:"ਕੁਝ ਸਕਿੰਟ",ss:"%d ਸਕਿੰਟ",m:"ਇਕ ਮਿੰਟ",mm:"%d ਮਿੰਟ",h:"ਇੱਕ ਘੰਟਾ",hh:"%d ਘੰਟੇ",d:"ਇੱਕ ਦਿਨ",dd:"%d ਦਿਨ",M:"ਇੱਕ ਮਹੀਨਾ",MM:"%d ਮਹੀਨੇ",y:"ਇੱਕ ਸਾਲ",yy:"%d ਸਾਲ"},preparse:function(e){return e.replace(/[੧੨੩੪੫੬੭੮੯੦]/g,(function(e){return o[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},meridiemParse:/ਰਾਤ|ਸਵੇਰ|ਦੁਪਹਿਰ|ਸ਼ਾਮ/,meridiemHour:function(e,t){return 12===e&&(e=0),"ਰਾਤ"===t?e<4?e:e+12:"ਸਵੇਰ"===t?e:"ਦੁਪਹਿਰ"===t?e>=10?e:e+12:"ਸ਼ਾਮ"===t?e+12:void 0},meridiem:function(e,t,o){return e<4?"ਰਾਤ":e<10?"ਸਵੇਰ":e<17?"ਦੁਪਹਿਰ":e<20?"ਸ਼ਾਮ":"ਰਾਤ"},week:{dow:0,doy:6}})}(o(381))},4495:function(e,t,o){!function(e){"use strict";var t="styczeń_luty_marzec_kwiecień_maj_czerwiec_lipiec_sierpień_wrzesień_październik_listopad_grudzień".split("_"),o="stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_września_października_listopada_grudnia".split("_"),i=[/^sty/i,/^lut/i,/^mar/i,/^kwi/i,/^maj/i,/^cze/i,/^lip/i,/^sie/i,/^wrz/i,/^paź/i,/^lis/i,/^gru/i];function n(e){return e%10<5&&e%10>1&&~~(e/10)%10!=1}function r(e,t,o){var i=e+" ";switch(o){case"ss":return i+(n(e)?"sekundy":"sekund");case"m":return t?"minuta":"minutę";case"mm":return i+(n(e)?"minuty":"minut");case"h":return t?"godzina":"godzinę";case"hh":return i+(n(e)?"godziny":"godzin");case"ww":return i+(n(e)?"tygodnie":"tygodni");case"MM":return i+(n(e)?"miesiące":"miesięcy");case"yy":return i+(n(e)?"lata":"lat")}}e.defineLocale("pl",{months:function(e,i){return e?/D MMMM/.test(i)?o[e.month()]:t[e.month()]:t},monthsShort:"sty_lut_mar_kwi_maj_cze_lip_sie_wrz_paź_lis_gru".split("_"),monthsParse:i,longMonthsParse:i,shortMonthsParse:i,weekdays:"niedziela_poniedziałek_wtorek_środa_czwartek_piątek_sobota".split("_"),weekdaysShort:"ndz_pon_wt_śr_czw_pt_sob".split("_"),weekdaysMin:"Nd_Pn_Wt_Śr_Cz_Pt_So".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Dziś o] LT",nextDay:"[Jutro o] LT",nextWeek:function(){switch(this.day()){case 0:return"[W niedzielę o] LT";case 2:return"[We wtorek o] LT";case 3:return"[W środę o] LT";case 6:return"[W sobotę o] LT";default:return"[W] dddd [o] LT"}},lastDay:"[Wczoraj o] LT",lastWeek:function(){switch(this.day()){case 0:return"[W zeszłą niedzielę o] LT";case 3:return"[W zeszłą środę o] LT";case 6:return"[W zeszłą sobotę o] LT";default:return"[W zeszły] dddd [o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"%s temu",s:"kilka sekund",ss:r,m:r,mm:r,h:r,hh:r,d:"1 dzień",dd:"%d dni",w:"tydzień",ww:r,M:"miesiąc",MM:r,y:"rok",yy:r},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(o(381))},7971:function(e,t,o){!function(e){"use strict";e.defineLocale("pt-br",{months:"janeiro_fevereiro_março_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro".split("_"),monthsShort:"jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez".split("_"),weekdays:"domingo_segunda-feira_terça-feira_quarta-feira_quinta-feira_sexta-feira_sábado".split("_"),weekdaysShort:"dom_seg_ter_qua_qui_sex_sáb".split("_"),weekdaysMin:"do_2ª_3ª_4ª_5ª_6ª_sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY [às] HH:mm",LLLL:"dddd, D [de] MMMM [de] YYYY [às] HH:mm"},calendar:{sameDay:"[Hoje às] LT",nextDay:"[Amanhã às] LT",nextWeek:"dddd [às] LT",lastDay:"[Ontem às] LT",lastWeek:function(){return 0===this.day()||6===this.day()?"[Último] dddd [às] LT":"[Última] dddd [às] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"há %s",s:"poucos segundos",ss:"%d segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",M:"um mês",MM:"%d meses",y:"um ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",invalidDate:"Data inválida"})}(o(381))},9520:function(e,t,o){!function(e){"use strict";e.defineLocale("pt",{months:"janeiro_fevereiro_março_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro".split("_"),monthsShort:"jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez".split("_"),weekdays:"Domingo_Segunda-feira_Terça-feira_Quarta-feira_Quinta-feira_Sexta-feira_Sábado".split("_"),weekdaysShort:"Dom_Seg_Ter_Qua_Qui_Sex_Sáb".split("_"),weekdaysMin:"Do_2ª_3ª_4ª_5ª_6ª_Sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY HH:mm",LLLL:"dddd, D [de] MMMM [de] YYYY HH:mm"},calendar:{sameDay:"[Hoje às] LT",nextDay:"[Amanhã às] LT",nextWeek:"dddd [às] LT",lastDay:"[Ontem às] LT",lastWeek:function(){return 0===this.day()||6===this.day()?"[Último] dddd [às] LT":"[Última] dddd [às] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"há %s",s:"segundos",ss:"%d segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",w:"uma semana",ww:"%d semanas",M:"um mês",MM:"%d meses",y:"um ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(o(381))},6459:function(e,t,o){!function(e){"use strict";function t(e,t,o){var i=" ";return(e%100>=20||e>=100&&e%100==0)&&(i=" de "),e+i+{ss:"secunde",mm:"minute",hh:"ore",dd:"zile",ww:"săptămâni",MM:"luni",yy:"ani"}[o]}e.defineLocale("ro",{months:"ianuarie_februarie_martie_aprilie_mai_iunie_iulie_august_septembrie_octombrie_noiembrie_decembrie".split("_"),monthsShort:"ian._feb._mart._apr._mai_iun._iul._aug._sept._oct._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"duminică_luni_marți_miercuri_joi_vineri_sâmbătă".split("_"),weekdaysShort:"Dum_Lun_Mar_Mie_Joi_Vin_Sâm".split("_"),weekdaysMin:"Du_Lu_Ma_Mi_Jo_Vi_Sâ".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[azi la] LT",nextDay:"[mâine la] LT",nextWeek:"dddd [la] LT",lastDay:"[ieri la] LT",lastWeek:"[fosta] dddd [la] LT",sameElse:"L"},relativeTime:{future:"peste %s",past:"%s în urmă",s:"câteva secunde",ss:t,m:"un minut",mm:t,h:"o oră",hh:t,d:"o zi",dd:t,w:"o săptămână",ww:t,M:"o lună",MM:t,y:"un an",yy:t},week:{dow:1,doy:7}})}(o(381))},1793:function(e,t,o){!function(e){"use strict";function t(e,t){var o=e.split("_");return t%10==1&&t%100!=11?o[0]:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?o[1]:o[2]}function o(e,o,i){return"m"===i?o?"минута":"минуту":e+" "+t({ss:o?"секунда_секунды_секунд":"секунду_секунды_секунд",mm:o?"минута_минуты_минут":"минуту_минуты_минут",hh:"час_часа_часов",dd:"день_дня_дней",ww:"неделя_недели_недель",MM:"месяц_месяца_месяцев",yy:"год_года_лет"}[i],+e)}var i=[/^янв/i,/^фев/i,/^мар/i,/^апр/i,/^ма[йя]/i,/^июн/i,/^июл/i,/^авг/i,/^сен/i,/^окт/i,/^ноя/i,/^дек/i];e.defineLocale("ru",{months:{format:"января_февраля_марта_апреля_мая_июня_июля_августа_сентября_октября_ноября_декабря".split("_"),standalone:"январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь".split("_")},monthsShort:{format:"янв._февр._мар._апр._мая_июня_июля_авг._сент._окт._нояб._дек.".split("_"),standalone:"янв._февр._март_апр._май_июнь_июль_авг._сент._окт._нояб._дек.".split("_")},weekdays:{standalone:"воскресенье_понедельник_вторник_среда_четверг_пятница_суббота".split("_"),format:"воскресенье_понедельник_вторник_среду_четверг_пятницу_субботу".split("_"),isFormat:/\[ ?[Вв] ?(?:прошлую|следующую|эту)? ?] ?dddd/},weekdaysShort:"вс_пн_вт_ср_чт_пт_сб".split("_"),weekdaysMin:"вс_пн_вт_ср_чт_пт_сб".split("_"),monthsParse:i,longMonthsParse:i,shortMonthsParse:i,monthsRegex:/^(январ[ья]|янв\.?|феврал[ья]|февр?\.?|марта?|мар\.?|апрел[ья]|апр\.?|ма[йя]|июн[ья]|июн\.?|июл[ья]|июл\.?|августа?|авг\.?|сентябр[ья]|сент?\.?|октябр[ья]|окт\.?|ноябр[ья]|нояб?\.?|декабр[ья]|дек\.?)/i,monthsShortRegex:/^(январ[ья]|янв\.?|феврал[ья]|февр?\.?|марта?|мар\.?|апрел[ья]|апр\.?|ма[йя]|июн[ья]|июн\.?|июл[ья]|июл\.?|августа?|авг\.?|сентябр[ья]|сент?\.?|октябр[ья]|окт\.?|ноябр[ья]|нояб?\.?|декабр[ья]|дек\.?)/i,monthsStrictRegex:/^(январ[яь]|феврал[яь]|марта?|апрел[яь]|ма[яй]|июн[яь]|июл[яь]|августа?|сентябр[яь]|октябр[яь]|ноябр[яь]|декабр[яь])/i,monthsShortStrictRegex:/^(янв\.|февр?\.|мар[т.]|апр\.|ма[яй]|июн[ья.]|июл[ья.]|авг\.|сент?\.|окт\.|нояб?\.|дек\.)/i,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY г.",LLL:"D MMMM YYYY г., H:mm",LLLL:"dddd, D MMMM YYYY г., H:mm"},calendar:{sameDay:"[Сегодня, в] LT",nextDay:"[Завтра, в] LT",lastDay:"[Вчера, в] LT",nextWeek:function(e){if(e.week()===this.week())return 2===this.day()?"[Во] dddd, [в] LT":"[В] dddd, [в] LT";switch(this.day()){case 0:return"[В следующее] dddd, [в] LT";case 1:case 2:case 4:return"[В следующий] dddd, [в] LT";case 3:case 5:case 6:return"[В следующую] dddd, [в] LT"}},lastWeek:function(e){if(e.week()===this.week())return 2===this.day()?"[Во] dddd, [в] LT":"[В] dddd, [в] LT";switch(this.day()){case 0:return"[В прошлое] dddd, [в] LT";case 1:case 2:case 4:return"[В прошлый] dddd, [в] LT";case 3:case 5:case 6:return"[В прошлую] dddd, [в] LT"}},sameElse:"L"},relativeTime:{future:"через %s",past:"%s назад",s:"несколько секунд",ss:o,m:o,mm:o,h:"час",hh:o,d:"день",dd:o,w:"неделя",ww:o,M:"месяц",MM:o,y:"год",yy:o},meridiemParse:/ночи|утра|дня|вечера/i,isPM:function(e){return/^(дня|вечера)$/.test(e)},meridiem:function(e,t,o){return e<4?"ночи":e<12?"утра":e<17?"дня":"вечера"},dayOfMonthOrdinalParse:/\d{1,2}-(й|го|я)/,ordinal:function(e,t){switch(t){case"M":case"d":case"DDD":return e+"-й";case"D":return e+"-го";case"w":case"W":return e+"-я";default:return e}},week:{dow:1,doy:4}})}(o(381))},950:function(e,t,o){!function(e){"use strict";var t=["جنوري","فيبروري","مارچ","اپريل","مئي","جون","جولاءِ","آگسٽ","سيپٽمبر","آڪٽوبر","نومبر","ڊسمبر"],o=["آچر","سومر","اڱارو","اربع","خميس","جمع","ڇنڇر"];e.defineLocale("sd",{months:t,monthsShort:t,weekdays:o,weekdaysShort:o,weekdaysMin:o,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd، D MMMM YYYY HH:mm"},meridiemParse:/صبح|شام/,isPM:function(e){return"شام"===e},meridiem:function(e,t,o){return e<12?"صبح":"شام"},calendar:{sameDay:"[اڄ] LT",nextDay:"[سڀاڻي] LT",nextWeek:"dddd [اڳين هفتي تي] LT",lastDay:"[ڪالهه] LT",lastWeek:"[گزريل هفتي] dddd [تي] LT",sameElse:"L"},relativeTime:{future:"%s پوء",past:"%s اڳ",s:"چند سيڪنڊ",ss:"%d سيڪنڊ",m:"هڪ منٽ",mm:"%d منٽ",h:"هڪ ڪلاڪ",hh:"%d ڪلاڪ",d:"هڪ ڏينهن",dd:"%d ڏينهن",M:"هڪ مهينو",MM:"%d مهينا",y:"هڪ سال",yy:"%d سال"},preparse:function(e){return e.replace(/،/g,",")},postformat:function(e){return e.replace(/,/g,"،")},week:{dow:1,doy:4}})}(o(381))},490:function(e,t,o){!function(e){"use strict";e.defineLocale("se",{months:"ođđajagemánnu_guovvamánnu_njukčamánnu_cuoŋománnu_miessemánnu_geassemánnu_suoidnemánnu_borgemánnu_čakčamánnu_golggotmánnu_skábmamánnu_juovlamánnu".split("_"),monthsShort:"ođđj_guov_njuk_cuo_mies_geas_suoi_borg_čakč_golg_skáb_juov".split("_"),weekdays:"sotnabeaivi_vuossárga_maŋŋebárga_gaskavahkku_duorastat_bearjadat_lávvardat".split("_"),weekdaysShort:"sotn_vuos_maŋ_gask_duor_bear_láv".split("_"),weekdaysMin:"s_v_m_g_d_b_L".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"MMMM D. [b.] YYYY",LLL:"MMMM D. [b.] YYYY [ti.] HH:mm",LLLL:"dddd, MMMM D. [b.] YYYY [ti.] HH:mm"},calendar:{sameDay:"[otne ti] LT",nextDay:"[ihttin ti] LT",nextWeek:"dddd [ti] LT",lastDay:"[ikte ti] LT",lastWeek:"[ovddit] dddd [ti] LT",sameElse:"L"},relativeTime:{future:"%s geažes",past:"maŋit %s",s:"moadde sekunddat",ss:"%d sekunddat",m:"okta minuhta",mm:"%d minuhtat",h:"okta diimmu",hh:"%d diimmut",d:"okta beaivi",dd:"%d beaivvit",M:"okta mánnu",MM:"%d mánut",y:"okta jahki",yy:"%d jagit"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(o(381))},124:function(e,t,o){!function(e){"use strict";e.defineLocale("si",{months:"ජනවාරි_පෙබරවාරි_මාර්තු_අප්‍රේල්_මැයි_ජූනි_ජූලි_අගෝස්තු_සැප්තැම්බර්_ඔක්තෝබර්_නොවැම්බර්_දෙසැම්බර්".split("_"),monthsShort:"ජන_පෙබ_මාර්_අප්_මැයි_ජූනි_ජූලි_අගෝ_සැප්_ඔක්_නොවැ_දෙසැ".split("_"),weekdays:"ඉරිදා_සඳුදා_අඟහරුවාදා_බදාදා_බ්‍රහස්පතින්දා_සිකුරාදා_සෙනසුරාදා".split("_"),weekdaysShort:"ඉරි_සඳු_අඟ_බදා_බ්‍රහ_සිකු_සෙන".split("_"),weekdaysMin:"ඉ_ස_අ_බ_බ්‍ර_සි_සෙ".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"a h:mm",LTS:"a h:mm:ss",L:"YYYY/MM/DD",LL:"YYYY MMMM D",LLL:"YYYY MMMM D, a h:mm",LLLL:"YYYY MMMM D [වැනි] dddd, a h:mm:ss"},calendar:{sameDay:"[අද] LT[ට]",nextDay:"[හෙට] LT[ට]",nextWeek:"dddd LT[ට]",lastDay:"[ඊයේ] LT[ට]",lastWeek:"[පසුගිය] dddd LT[ට]",sameElse:"L"},relativeTime:{future:"%sකින්",past:"%sකට පෙර",s:"තත්පර කිහිපය",ss:"තත්පර %d",m:"මිනිත්තුව",mm:"මිනිත්තු %d",h:"පැය",hh:"පැය %d",d:"දිනය",dd:"දින %d",M:"මාසය",MM:"මාස %d",y:"වසර",yy:"වසර %d"},dayOfMonthOrdinalParse:/\d{1,2} වැනි/,ordinal:function(e){return e+" වැනි"},meridiemParse:/පෙර වරු|පස් වරු|පෙ.ව|ප.ව./,isPM:function(e){return"ප.ව."===e||"පස් වරු"===e},meridiem:function(e,t,o){return e>11?o?"ප.ව.":"පස් වරු":o?"පෙ.ව.":"පෙර වරු"}})}(o(381))},4249:function(e,t,o){!function(e){"use strict";var t="január_február_marec_apríl_máj_jún_júl_august_september_október_november_december".split("_"),o="jan_feb_mar_apr_máj_jún_júl_aug_sep_okt_nov_dec".split("_");function i(e){return e>1&&e<5}function n(e,t,o,n){var r=e+" ";switch(o){case"s":return t||n?"pár sekúnd":"pár sekundami";case"ss":return t||n?r+(i(e)?"sekundy":"sekúnd"):r+"sekundami";case"m":return t?"minúta":n?"minútu":"minútou";case"mm":return t||n?r+(i(e)?"minúty":"minút"):r+"minútami";case"h":return t?"hodina":n?"hodinu":"hodinou";case"hh":return t||n?r+(i(e)?"hodiny":"hodín"):r+"hodinami";case"d":return t||n?"deň":"dňom";case"dd":return t||n?r+(i(e)?"dni":"dní"):r+"dňami";case"M":return t||n?"mesiac":"mesiacom";case"MM":return t||n?r+(i(e)?"mesiace":"mesiacov"):r+"mesiacmi";case"y":return t||n?"rok":"rokom";case"yy":return t||n?r+(i(e)?"roky":"rokov"):r+"rokmi"}}e.defineLocale("sk",{months:t,monthsShort:o,weekdays:"nedeľa_pondelok_utorok_streda_štvrtok_piatok_sobota".split("_"),weekdaysShort:"ne_po_ut_st_št_pi_so".split("_"),weekdaysMin:"ne_po_ut_st_št_pi_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd D. MMMM YYYY H:mm"},calendar:{sameDay:"[dnes o] LT",nextDay:"[zajtra o] LT",nextWeek:function(){switch(this.day()){case 0:return"[v nedeľu o] LT";case 1:case 2:return"[v] dddd [o] LT";case 3:return"[v stredu o] LT";case 4:return"[vo štvrtok o] LT";case 5:return"[v piatok o] LT";case 6:return"[v sobotu o] LT"}},lastDay:"[včera o] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulú nedeľu o] LT";case 1:case 2:case 4:case 5:return"[minulý] dddd [o] LT";case 3:return"[minulú stredu o] LT";case 6:return"[minulú sobotu o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"pred %s",s:n,ss:n,m:n,mm:n,h:n,hh:n,d:n,dd:n,M:n,MM:n,y:n,yy:n},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(o(381))},4985:function(e,t,o){!function(e){"use strict";function t(e,t,o,i){var n=e+" ";switch(o){case"s":return t||i?"nekaj sekund":"nekaj sekundami";case"ss":return n+=1===e?t?"sekundo":"sekundi":2===e?t||i?"sekundi":"sekundah":e<5?t||i?"sekunde":"sekundah":"sekund";case"m":return t?"ena minuta":"eno minuto";case"mm":return n+=1===e?t?"minuta":"minuto":2===e?t||i?"minuti":"minutama":e<5?t||i?"minute":"minutami":t||i?"minut":"minutami";case"h":return t?"ena ura":"eno uro";case"hh":return n+=1===e?t?"ura":"uro":2===e?t||i?"uri":"urama":e<5?t||i?"ure":"urami":t||i?"ur":"urami";case"d":return t||i?"en dan":"enim dnem";case"dd":return n+=1===e?t||i?"dan":"dnem":2===e?t||i?"dni":"dnevoma":t||i?"dni":"dnevi";case"M":return t||i?"en mesec":"enim mesecem";case"MM":return n+=1===e?t||i?"mesec":"mesecem":2===e?t||i?"meseca":"mesecema":e<5?t||i?"mesece":"meseci":t||i?"mesecev":"meseci";case"y":return t||i?"eno leto":"enim letom";case"yy":return n+=1===e?t||i?"leto":"letom":2===e?t||i?"leti":"letoma":e<5?t||i?"leta":"leti":t||i?"let":"leti"}}e.defineLocale("sl",{months:"januar_februar_marec_april_maj_junij_julij_avgust_september_oktober_november_december".split("_"),monthsShort:"jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"nedelja_ponedeljek_torek_sreda_četrtek_petek_sobota".split("_"),weekdaysShort:"ned._pon._tor._sre._čet._pet._sob.".split("_"),weekdaysMin:"ne_po_to_sr_če_pe_so".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danes ob] LT",nextDay:"[jutri ob] LT",nextWeek:function(){switch(this.day()){case 0:return"[v] [nedeljo] [ob] LT";case 3:return"[v] [sredo] [ob] LT";case 6:return"[v] [soboto] [ob] LT";case 1:case 2:case 4:case 5:return"[v] dddd [ob] LT"}},lastDay:"[včeraj ob] LT",lastWeek:function(){switch(this.day()){case 0:return"[prejšnjo] [nedeljo] [ob] LT";case 3:return"[prejšnjo] [sredo] [ob] LT";case 6:return"[prejšnjo] [soboto] [ob] LT";case 1:case 2:case 4:case 5:return"[prejšnji] dddd [ob] LT"}},sameElse:"L"},relativeTime:{future:"čez %s",past:"pred %s",s:t,ss:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(o(381))},1104:function(e,t,o){!function(e){"use strict";e.defineLocale("sq",{months:"Janar_Shkurt_Mars_Prill_Maj_Qershor_Korrik_Gusht_Shtator_Tetor_Nëntor_Dhjetor".split("_"),monthsShort:"Jan_Shk_Mar_Pri_Maj_Qer_Kor_Gus_Sht_Tet_Nën_Dhj".split("_"),weekdays:"E Diel_E Hënë_E Martë_E Mërkurë_E Enjte_E Premte_E Shtunë".split("_"),weekdaysShort:"Die_Hën_Mar_Mër_Enj_Pre_Sht".split("_"),weekdaysMin:"D_H_Ma_Më_E_P_Sh".split("_"),weekdaysParseExact:!0,meridiemParse:/PD|MD/,isPM:function(e){return"M"===e.charAt(0)},meridiem:function(e,t,o){return e<12?"PD":"MD"},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Sot në] LT",nextDay:"[Nesër në] LT",nextWeek:"dddd [në] LT",lastDay:"[Dje në] LT",lastWeek:"dddd [e kaluar në] LT",sameElse:"L"},relativeTime:{future:"në %s",past:"%s më parë",s:"disa sekonda",ss:"%d sekonda",m:"një minutë",mm:"%d minuta",h:"një orë",hh:"%d orë",d:"një ditë",dd:"%d ditë",M:"një muaj",MM:"%d muaj",y:"një vit",yy:"%d vite"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(o(381))},9915:function(e,t,o){!function(e){"use strict";var t={words:{ss:["секунда","секунде","секунди"],m:["један минут","једног минута"],mm:["минут","минута","минута"],h:["један сат","једног сата"],hh:["сат","сата","сати"],d:["један дан","једног дана"],dd:["дан","дана","дана"],M:["један месец","једног месеца"],MM:["месец","месеца","месеци"],y:["једну годину","једне године"],yy:["годину","године","година"]},correctGrammaticalCase:function(e,t){return e%10>=1&&e%10<=4&&(e%100<10||e%100>=20)?e%10==1?t[0]:t[1]:t[2]},translate:function(e,o,i,n){var r,a=t.words[i];return 1===i.length?"y"===i&&o?"једна година":n||o?a[0]:a[1]:(r=t.correctGrammaticalCase(e,a),"yy"===i&&o&&"годину"===r?e+" година":e+" "+r)}};e.defineLocale("sr-cyrl",{months:"јануар_фебруар_март_април_мај_јун_јул_август_септембар_октобар_новембар_децембар".split("_"),monthsShort:"јан._феб._мар._апр._мај_јун_јул_авг._сеп._окт._нов._дец.".split("_"),monthsParseExact:!0,weekdays:"недеља_понедељак_уторак_среда_четвртак_петак_субота".split("_"),weekdaysShort:"нед._пон._уто._сре._чет._пет._суб.".split("_"),weekdaysMin:"не_по_ут_ср_че_пе_су".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"D. M. YYYY.",LL:"D. MMMM YYYY.",LLL:"D. MMMM YYYY. H:mm",LLLL:"dddd, D. MMMM YYYY. H:mm"},calendar:{sameDay:"[данас у] LT",nextDay:"[сутра у] LT",nextWeek:function(){switch(this.day()){case 0:return"[у] [недељу] [у] LT";case 3:return"[у] [среду] [у] LT";case 6:return"[у] [суботу] [у] LT";case 1:case 2:case 4:case 5:return"[у] dddd [у] LT"}},lastDay:"[јуче у] LT",lastWeek:function(){return["[прошле] [недеље] [у] LT","[прошлог] [понедељка] [у] LT","[прошлог] [уторка] [у] LT","[прошле] [среде] [у] LT","[прошлог] [четвртка] [у] LT","[прошлог] [петка] [у] LT","[прошле] [суботе] [у] LT"][this.day()]},sameElse:"L"},relativeTime:{future:"за %s",past:"пре %s",s:"неколико секунди",ss:t.translate,m:t.translate,mm:t.translate,h:t.translate,hh:t.translate,d:t.translate,dd:t.translate,M:t.translate,MM:t.translate,y:t.translate,yy:t.translate},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(o(381))},9131:function(e,t,o){!function(e){"use strict";var t={words:{ss:["sekunda","sekunde","sekundi"],m:["jedan minut","jednog minuta"],mm:["minut","minuta","minuta"],h:["jedan sat","jednog sata"],hh:["sat","sata","sati"],d:["jedan dan","jednog dana"],dd:["dan","dana","dana"],M:["jedan mesec","jednog meseca"],MM:["mesec","meseca","meseci"],y:["jednu godinu","jedne godine"],yy:["godinu","godine","godina"]},correctGrammaticalCase:function(e,t){return e%10>=1&&e%10<=4&&(e%100<10||e%100>=20)?e%10==1?t[0]:t[1]:t[2]},translate:function(e,o,i,n){var r,a=t.words[i];return 1===i.length?"y"===i&&o?"jedna godina":n||o?a[0]:a[1]:(r=t.correctGrammaticalCase(e,a),"yy"===i&&o&&"godinu"===r?e+" godina":e+" "+r)}};e.defineLocale("sr",{months:"januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar".split("_"),monthsShort:"jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"nedelja_ponedeljak_utorak_sreda_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sre._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_pe_su".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"D. M. YYYY.",LL:"D. MMMM YYYY.",LLL:"D. MMMM YYYY. H:mm",LLLL:"dddd, D. MMMM YYYY. H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedelju] [u] LT";case 3:return"[u] [sredu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[juče u] LT",lastWeek:function(){return["[prošle] [nedelje] [u] LT","[prošlog] [ponedeljka] [u] LT","[prošlog] [utorka] [u] LT","[prošle] [srede] [u] LT","[prošlog] [četvrtka] [u] LT","[prošlog] [petka] [u] LT","[prošle] [subote] [u] LT"][this.day()]},sameElse:"L"},relativeTime:{future:"za %s",past:"pre %s",s:"nekoliko sekundi",ss:t.translate,m:t.translate,mm:t.translate,h:t.translate,hh:t.translate,d:t.translate,dd:t.translate,M:t.translate,MM:t.translate,y:t.translate,yy:t.translate},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(o(381))},5606:function(e,t,o){!function(e){"use strict";e.defineLocale("ss",{months:"Bhimbidvwane_Indlovana_Indlov'lenkhulu_Mabasa_Inkhwekhweti_Inhlaba_Kholwane_Ingci_Inyoni_Imphala_Lweti_Ingongoni".split("_"),monthsShort:"Bhi_Ina_Inu_Mab_Ink_Inh_Kho_Igc_Iny_Imp_Lwe_Igo".split("_"),weekdays:"Lisontfo_Umsombuluko_Lesibili_Lesitsatfu_Lesine_Lesihlanu_Umgcibelo".split("_"),weekdaysShort:"Lis_Umb_Lsb_Les_Lsi_Lsh_Umg".split("_"),weekdaysMin:"Li_Us_Lb_Lt_Ls_Lh_Ug".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Namuhla nga] LT",nextDay:"[Kusasa nga] LT",nextWeek:"dddd [nga] LT",lastDay:"[Itolo nga] LT",lastWeek:"dddd [leliphelile] [nga] LT",sameElse:"L"},relativeTime:{future:"nga %s",past:"wenteka nga %s",s:"emizuzwana lomcane",ss:"%d mzuzwana",m:"umzuzu",mm:"%d emizuzu",h:"lihora",hh:"%d emahora",d:"lilanga",dd:"%d emalanga",M:"inyanga",MM:"%d tinyanga",y:"umnyaka",yy:"%d iminyaka"},meridiemParse:/ekuseni|emini|entsambama|ebusuku/,meridiem:function(e,t,o){return e<11?"ekuseni":e<15?"emini":e<19?"entsambama":"ebusuku"},meridiemHour:function(e,t){return 12===e&&(e=0),"ekuseni"===t?e:"emini"===t?e>=11?e:e+12:"entsambama"===t||"ebusuku"===t?0===e?0:e+12:void 0},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal:"%d",week:{dow:1,doy:4}})}(o(381))},8760:function(e,t,o){!function(e){"use strict";e.defineLocale("sv",{months:"januari_februari_mars_april_maj_juni_juli_augusti_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"),weekdays:"söndag_måndag_tisdag_onsdag_torsdag_fredag_lördag".split("_"),weekdaysShort:"sön_mån_tis_ons_tor_fre_lör".split("_"),weekdaysMin:"sö_må_ti_on_to_fr_lö".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [kl.] HH:mm",LLLL:"dddd D MMMM YYYY [kl.] HH:mm",lll:"D MMM YYYY HH:mm",llll:"ddd D MMM YYYY HH:mm"},calendar:{sameDay:"[Idag] LT",nextDay:"[Imorgon] LT",lastDay:"[Igår] LT",nextWeek:"[På] dddd LT",lastWeek:"[I] dddd[s] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"för %s sedan",s:"några sekunder",ss:"%d sekunder",m:"en minut",mm:"%d minuter",h:"en timme",hh:"%d timmar",d:"en dag",dd:"%d dagar",M:"en månad",MM:"%d månader",y:"ett år",yy:"%d år"},dayOfMonthOrdinalParse:/\d{1,2}(\:e|\:a)/,ordinal:function(e){var t=e%10;return e+(1==~~(e%100/10)?":e":1===t||2===t?":a":":e")},week:{dow:1,doy:4}})}(o(381))},1172:function(e,t,o){!function(e){"use strict";e.defineLocale("sw",{months:"Januari_Februari_Machi_Aprili_Mei_Juni_Julai_Agosti_Septemba_Oktoba_Novemba_Desemba".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ago_Sep_Okt_Nov_Des".split("_"),weekdays:"Jumapili_Jumatatu_Jumanne_Jumatano_Alhamisi_Ijumaa_Jumamosi".split("_"),weekdaysShort:"Jpl_Jtat_Jnne_Jtan_Alh_Ijm_Jmos".split("_"),weekdaysMin:"J2_J3_J4_J5_Al_Ij_J1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"hh:mm A",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[leo saa] LT",nextDay:"[kesho saa] LT",nextWeek:"[wiki ijayo] dddd [saat] LT",lastDay:"[jana] LT",lastWeek:"[wiki iliyopita] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s baadaye",past:"tokea %s",s:"hivi punde",ss:"sekunde %d",m:"dakika moja",mm:"dakika %d",h:"saa limoja",hh:"masaa %d",d:"siku moja",dd:"siku %d",M:"mwezi mmoja",MM:"miezi %d",y:"mwaka mmoja",yy:"miaka %d"},week:{dow:1,doy:7}})}(o(381))},7333:function(e,t,o){!function(e){"use strict";var t={1:"௧",2:"௨",3:"௩",4:"௪",5:"௫",6:"௬",7:"௭",8:"௮",9:"௯",0:"௦"},o={"௧":"1","௨":"2","௩":"3","௪":"4","௫":"5","௬":"6","௭":"7","௮":"8","௯":"9","௦":"0"};e.defineLocale("ta",{months:"ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்".split("_"),monthsShort:"ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்".split("_"),weekdays:"ஞாயிற்றுக்கிழமை_திங்கட்கிழமை_செவ்வாய்கிழமை_புதன்கிழமை_வியாழக்கிழமை_வெள்ளிக்கிழமை_சனிக்கிழமை".split("_"),weekdaysShort:"ஞாயிறு_திங்கள்_செவ்வாய்_புதன்_வியாழன்_வெள்ளி_சனி".split("_"),weekdaysMin:"ஞா_தி_செ_பு_வி_வெ_ச".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, HH:mm",LLLL:"dddd, D MMMM YYYY, HH:mm"},calendar:{sameDay:"[இன்று] LT",nextDay:"[நாளை] LT",nextWeek:"dddd, LT",lastDay:"[நேற்று] LT",lastWeek:"[கடந்த வாரம்] dddd, LT",sameElse:"L"},relativeTime:{future:"%s இல்",past:"%s முன்",s:"ஒரு சில விநாடிகள்",ss:"%d விநாடிகள்",m:"ஒரு நிமிடம்",mm:"%d நிமிடங்கள்",h:"ஒரு மணி நேரம்",hh:"%d மணி நேரம்",d:"ஒரு நாள்",dd:"%d நாட்கள்",M:"ஒரு மாதம்",MM:"%d மாதங்கள்",y:"ஒரு வருடம்",yy:"%d ஆண்டுகள்"},dayOfMonthOrdinalParse:/\d{1,2}வது/,ordinal:function(e){return e+"வது"},preparse:function(e){return e.replace(/[௧௨௩௪௫௬௭௮௯௦]/g,(function(e){return o[e]}))},postformat:function(e){return e.replace(/\d/g,(function(e){return t[e]}))},meridiemParse:/யாமம்|வைகறை|காலை|நண்பகல்|எற்பாடு|மாலை/,meridiem:function(e,t,o){return e<2?" யாமம்":e<6?" வைகறை":e<10?" காலை":e<14?" நண்பகல்":e<18?" எற்பாடு":e<22?" மாலை":" யாமம்"},meridiemHour:function(e,t){return 12===e&&(e=0),"யாமம்"===t?e<2?e:e+12:"வைகறை"===t||"காலை"===t||"நண்பகல்"===t&&e>=10?e:e+12},week:{dow:0,doy:6}})}(o(381))},3110:function(e,t,o){!function(e){"use strict";e.defineLocale("te",{months:"జనవరి_ఫిబ్రవరి_మార్చి_ఏప్రిల్_మే_జూన్_జులై_ఆగస్టు_సెప్టెంబర్_అక్టోబర్_నవంబర్_డిసెంబర్".split("_"),monthsShort:"జన._ఫిబ్ర._మార్చి_ఏప్రి._మే_జూన్_జులై_ఆగ._సెప్._అక్టో._నవ._డిసె.".split("_"),monthsParseExact:!0,weekdays:"ఆదివారం_సోమవారం_మంగళవారం_బుధవారం_గురువారం_శుక్రవారం_శనివారం".split("_"),weekdaysShort:"ఆది_సోమ_మంగళ_బుధ_గురు_శుక్ర_శని".split("_"),weekdaysMin:"ఆ_సో_మం_బు_గు_శు_శ".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm",LLLL:"dddd, D MMMM YYYY, A h:mm"},calendar:{sameDay:"[నేడు] LT",nextDay:"[రేపు] LT",nextWeek:"dddd, LT",lastDay:"[నిన్న] LT",lastWeek:"[గత] dddd, LT",sameElse:"L"},relativeTime:{future:"%s లో",past:"%s క్రితం",s:"కొన్ని క్షణాలు",ss:"%d సెకన్లు",m:"ఒక నిమిషం",mm:"%d నిమిషాలు",h:"ఒక గంట",hh:"%d గంటలు",d:"ఒక రోజు",dd:"%d రోజులు",M:"ఒక నెల",MM:"%d నెలలు",y:"ఒక సంవత్సరం",yy:"%d సంవత్సరాలు"},dayOfMonthOrdinalParse:/\d{1,2}వ/,ordinal:"%dవ",meridiemParse:/రాత్రి|ఉదయం|మధ్యాహ్నం|సాయంత్రం/,meridiemHour:function(e,t){return 12===e&&(e=0),"రాత్రి"===t?e<4?e:e+12:"ఉదయం"===t?e:"మధ్యాహ్నం"===t?e>=10?e:e+12:"సాయంత్రం"===t?e+12:void 0},meridiem:function(e,t,o){return e<4?"రాత్రి":e<10?"ఉదయం":e<17?"మధ్యాహ్నం":e<20?"సాయంత్రం":"రాత్రి"},week:{dow:0,doy:6}})}(o(381))},2095:function(e,t,o){!function(e){"use strict";e.defineLocale("tet",{months:"Janeiru_Fevereiru_Marsu_Abril_Maiu_Juñu_Jullu_Agustu_Setembru_Outubru_Novembru_Dezembru".split("_"),monthsShort:"Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez".split("_"),weekdays:"Domingu_Segunda_Tersa_Kuarta_Kinta_Sesta_Sabadu".split("_"),weekdaysShort:"Dom_Seg_Ters_Kua_Kint_Sest_Sab".split("_"),weekdaysMin:"Do_Seg_Te_Ku_Ki_Ses_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Ohin iha] LT",nextDay:"[Aban iha] LT",nextWeek:"dddd [iha] LT",lastDay:"[Horiseik iha] LT",lastWeek:"dddd [semana kotuk] [iha] LT",sameElse:"L"},relativeTime:{future:"iha %s",past:"%s liuba",s:"segundu balun",ss:"segundu %d",m:"minutu ida",mm:"minutu %d",h:"oras ida",hh:"oras %d",d:"loron ida",dd:"loron %d",M:"fulan ida",MM:"fulan %d",y:"tinan ida",yy:"tinan %d"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var t=e%10;return e+(1==~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")},week:{dow:1,doy:4}})}(o(381))},7321:function(e,t,o){!function(e){"use strict";var t={0:"-ум",1:"-ум",2:"-юм",3:"-юм",4:"-ум",5:"-ум",6:"-ум",7:"-ум",8:"-ум",9:"-ум",10:"-ум",12:"-ум",13:"-ум",20:"-ум",30:"-юм",40:"-ум",50:"-ум",60:"-ум",70:"-ум",80:"-ум",90:"-ум",100:"-ум"};e.defineLocale("tg",{months:{format:"январи_феврали_марти_апрели_майи_июни_июли_августи_сентябри_октябри_ноябри_декабри".split("_"),standalone:"январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр".split("_")},monthsShort:"янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек".split("_"),weekdays:"якшанбе_душанбе_сешанбе_чоршанбе_панҷшанбе_ҷумъа_шанбе".split("_"),weekdaysShort:"яшб_дшб_сшб_чшб_пшб_ҷум_шнб".split("_"),weekdaysMin:"яш_дш_сш_чш_пш_ҷм_шб".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Имрӯз соати] LT",nextDay:"[Фардо соати] LT",lastDay:"[Дирӯз соати] LT",nextWeek:"dddd[и] [ҳафтаи оянда соати] LT",lastWeek:"dddd[и] [ҳафтаи гузашта соати] LT",sameElse:"L"},relativeTime:{future:"баъди %s",past:"%s пеш",s:"якчанд сония",m:"як дақиқа",mm:"%d дақиқа",h:"як соат",hh:"%d соат",d:"як рӯз",dd:"%d рӯз",M:"як моҳ",MM:"%d моҳ",y:"як сол",yy:"%d сол"},meridiemParse:/шаб|субҳ|рӯз|бегоҳ/,meridiemHour:function(e,t){return 12===e&&(e=0),"шаб"===t?e<4?e:e+12:"субҳ"===t?e:"рӯз"===t?e>=11?e:e+12:"бегоҳ"===t?e+12:void 0},meridiem:function(e,t,o){return e<4?"шаб":e<11?"субҳ":e<16?"рӯз":e<19?"бегоҳ":"шаб"},dayOfMonthOrdinalParse:/\d{1,2}-(ум|юм)/,ordinal:function(e){var o=e%10,i=e>=100?100:null;return e+(t[e]||t[o]||t[i])},week:{dow:1,doy:7}})}(o(381))},9041:function(e,t,o){!function(e){"use strict";e.defineLocale("th",{months:"มกราคม_กุมภาพันธ์_มีนาคม_เมษายน_พฤษภาคม_มิถุนายน_กรกฎาคม_สิงหาคม_กันยายน_ตุลาคม_พฤศจิกายน_ธันวาคม".split("_"),monthsShort:"ม.ค._ก.พ._มี.ค._เม.ย._พ.ค._มิ.ย._ก.ค._ส.ค._ก.ย._ต.ค._พ.ย._ธ.ค.".split("_"),monthsParseExact:!0,weekdays:"อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัสบดี_ศุกร์_เสาร์".split("_"),weekdaysShort:"อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัส_ศุกร์_เสาร์".split("_"),weekdaysMin:"อา._จ._อ._พ._พฤ._ศ._ส.".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY เวลา H:mm",LLLL:"วันddddที่ D MMMM YYYY เวลา H:mm"},meridiemParse:/ก่อนเที่ยง|หลังเที่ยง/,isPM:function(e){return"หลังเที่ยง"===e},meridiem:function(e,t,o){return e<12?"ก่อนเที่ยง":"หลังเที่ยง"},calendar:{sameDay:"[วันนี้ เวลา] LT",nextDay:"[พรุ่งนี้ เวลา] LT",nextWeek:"dddd[หน้า เวลา] LT",lastDay:"[เมื่อวานนี้ เวลา] LT",lastWeek:"[วัน]dddd[ที่แล้ว เวลา] LT",sameElse:"L"},relativeTime:{future:"อีก %s",past:"%sที่แล้ว",s:"ไม่กี่วินาที",ss:"%d วินาที",m:"1 นาที",mm:"%d นาที",h:"1 ชั่วโมง",hh:"%d ชั่วโมง",d:"1 วัน",dd:"%d วัน",w:"1 สัปดาห์",ww:"%d สัปดาห์",M:"1 เดือน",MM:"%d เดือน",y:"1 ปี",yy:"%d ปี"}})}(o(381))},9005:function(e,t,o){!function(e){"use strict";var t={1:"'inji",5:"'inji",8:"'inji",70:"'inji",80:"'inji",2:"'nji",7:"'nji",20:"'nji",50:"'nji",3:"'ünji",4:"'ünji",100:"'ünji",6:"'njy",9:"'unjy",10:"'unjy",30:"'unjy",60:"'ynjy",90:"'ynjy"};e.defineLocale("tk",{months:"Ýanwar_Fewral_Mart_Aprel_Maý_Iýun_Iýul_Awgust_Sentýabr_Oktýabr_Noýabr_Dekabr".split("_"),monthsShort:"Ýan_Few_Mar_Apr_Maý_Iýn_Iýl_Awg_Sen_Okt_Noý_Dek".split("_"),weekdays:"Ýekşenbe_Duşenbe_Sişenbe_Çarşenbe_Penşenbe_Anna_Şenbe".split("_"),weekdaysShort:"Ýek_Duş_Siş_Çar_Pen_Ann_Şen".split("_"),weekdaysMin:"Ýk_Dş_Sş_Çr_Pn_An_Şn".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[bugün sagat] LT",nextDay:"[ertir sagat] LT",nextWeek:"[indiki] dddd [sagat] LT",lastDay:"[düýn] LT",lastWeek:"[geçen] dddd [sagat] LT",sameElse:"L"},relativeTime:{future:"%s soň",past:"%s öň",s:"birnäçe sekunt",m:"bir minut",mm:"%d minut",h:"bir sagat",hh:"%d sagat",d:"bir gün",dd:"%d gün",M:"bir aý",MM:"%d aý",y:"bir ýyl",yy:"%d ýyl"},ordinal:function(e,o){switch(o){case"d":case"D":case"Do":case"DD":return e;default:if(0===e)return e+"'unjy";var i=e%10,n=e%100-i,r=e>=100?100:null;return e+(t[i]||t[n]||t[r])}},week:{dow:1,doy:7}})}(o(381))},5768:function(e,t,o){!function(e){"use strict";e.defineLocale("tl-ph",{months:"Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre".split("_"),monthsShort:"Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis".split("_"),weekdays:"Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado".split("_"),weekdaysShort:"Lin_Lun_Mar_Miy_Huw_Biy_Sab".split("_"),weekdaysMin:"Li_Lu_Ma_Mi_Hu_Bi_Sab".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"MM/D/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY HH:mm",LLLL:"dddd, MMMM DD, YYYY HH:mm"},calendar:{sameDay:"LT [ngayong araw]",nextDay:"[Bukas ng] LT",nextWeek:"LT [sa susunod na] dddd",lastDay:"LT [kahapon]",lastWeek:"LT [noong nakaraang] dddd",sameElse:"L"},relativeTime:{future:"sa loob ng %s",past:"%s ang nakalipas",s:"ilang segundo",ss:"%d segundo",m:"isang minuto",mm:"%d minuto",h:"isang oras",hh:"%d oras",d:"isang araw",dd:"%d araw",M:"isang buwan",MM:"%d buwan",y:"isang taon",yy:"%d taon"},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal:function(e){return e},week:{dow:1,doy:4}})}(o(381))},9444:function(e,t,o){!function(e){"use strict";var t="pagh_wa’_cha’_wej_loS_vagh_jav_Soch_chorgh_Hut".split("_");function o(e){var t=e;return t=-1!==e.indexOf("jaj")?t.slice(0,-3)+"leS":-1!==e.indexOf("jar")?t.slice(0,-3)+"waQ":-1!==e.indexOf("DIS")?t.slice(0,-3)+"nem":t+" pIq"}function i(e){var t=e;return t=-1!==e.indexOf("jaj")?t.slice(0,-3)+"Hu’":-1!==e.indexOf("jar")?t.slice(0,-3)+"wen":-1!==e.indexOf("DIS")?t.slice(0,-3)+"ben":t+" ret"}function n(e,t,o,i){var n=r(e);switch(o){case"ss":return n+" lup";case"mm":return n+" tup";case"hh":return n+" rep";case"dd":return n+" jaj";case"MM":return n+" jar";case"yy":return n+" DIS"}}function r(e){var o=Math.floor(e%1e3/100),i=Math.floor(e%100/10),n=e%10,r="";return o>0&&(r+=t[o]+"vatlh"),i>0&&(r+=(""!==r?" ":"")+t[i]+"maH"),n>0&&(r+=(""!==r?" ":"")+t[n]),""===r?"pagh":r}e.defineLocale("tlh",{months:"tera’ jar wa’_tera’ jar cha’_tera’ jar wej_tera’ jar loS_tera’ jar vagh_tera’ jar jav_tera’ jar Soch_tera’ jar chorgh_tera’ jar Hut_tera’ jar wa’maH_tera’ jar wa’maH wa’_tera’ jar wa’maH cha’".split("_"),monthsShort:"jar wa’_jar cha’_jar wej_jar loS_jar vagh_jar jav_jar Soch_jar chorgh_jar Hut_jar wa’maH_jar wa’maH wa’_jar wa’maH cha’".split("_"),monthsParseExact:!0,weekdays:"lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj".split("_"),weekdaysShort:"lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj".split("_"),weekdaysMin:"lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[DaHjaj] LT",nextDay:"[wa’leS] LT",nextWeek:"LLL",lastDay:"[wa’Hu’] LT",lastWeek:"LLL",sameElse:"L"},relativeTime:{future:o,past:i,s:"puS lup",ss:n,m:"wa’ tup",mm:n,h:"wa’ rep",hh:n,d:"wa’ jaj",dd:n,M:"wa’ jar",MM:n,y:"wa’ DIS",yy:n},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(o(381))},2397:function(e,t,o){!function(e){"use strict";var t={1:"'inci",5:"'inci",8:"'inci",70:"'inci",80:"'inci",2:"'nci",7:"'nci",20:"'nci",50:"'nci",3:"'üncü",4:"'üncü",100:"'üncü",6:"'ncı",9:"'uncu",10:"'uncu",30:"'uncu",60:"'ıncı",90:"'ıncı"};e.defineLocale("tr",{months:"Ocak_Şubat_Mart_Nisan_Mayıs_Haziran_Temmuz_Ağustos_Eylül_Ekim_Kasım_Aralık".split("_"),monthsShort:"Oca_Şub_Mar_Nis_May_Haz_Tem_Ağu_Eyl_Eki_Kas_Ara".split("_"),weekdays:"Pazar_Pazartesi_Salı_Çarşamba_Perşembe_Cuma_Cumartesi".split("_"),weekdaysShort:"Paz_Pzt_Sal_Çar_Per_Cum_Cmt".split("_"),weekdaysMin:"Pz_Pt_Sa_Ça_Pe_Cu_Ct".split("_"),meridiem:function(e,t,o){return e<12?o?"öö":"ÖÖ":o?"ös":"ÖS"},meridiemParse:/öö|ÖÖ|ös|ÖS/,isPM:function(e){return"ös"===e||"ÖS"===e},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[bugün saat] LT",nextDay:"[yarın saat] LT",nextWeek:"[gelecek] dddd [saat] LT",lastDay:"[dün] LT",lastWeek:"[geçen] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s önce",s:"birkaç saniye",ss:"%d saniye",m:"bir dakika",mm:"%d dakika",h:"bir saat",hh:"%d saat",d:"bir gün",dd:"%d gün",w:"bir hafta",ww:"%d hafta",M:"bir ay",MM:"%d ay",y:"bir yıl",yy:"%d yıl"},ordinal:function(e,o){switch(o){case"d":case"D":case"Do":case"DD":return e;default:if(0===e)return e+"'ıncı";var i=e%10,n=e%100-i,r=e>=100?100:null;return e+(t[i]||t[n]||t[r])}},week:{dow:1,doy:7}})}(o(381))},8254:function(e,t,o){!function(e){"use strict";function t(e,t,o,i){var n={s:["viensas secunds","'iensas secunds"],ss:[e+" secunds",e+" secunds"],m:["'n míut","'iens míut"],mm:[e+" míuts",e+" míuts"],h:["'n þora","'iensa þora"],hh:[e+" þoras",e+" þoras"],d:["'n ziua","'iensa ziua"],dd:[e+" ziuas",e+" ziuas"],M:["'n mes","'iens mes"],MM:[e+" mesen",e+" mesen"],y:["'n ar","'iens ar"],yy:[e+" ars",e+" ars"]};return i||t?n[o][0]:n[o][1]}e.defineLocale("tzl",{months:"Januar_Fevraglh_Març_Avrïu_Mai_Gün_Julia_Guscht_Setemvar_Listopäts_Noemvar_Zecemvar".split("_"),monthsShort:"Jan_Fev_Mar_Avr_Mai_Gün_Jul_Gus_Set_Lis_Noe_Zec".split("_"),weekdays:"Súladi_Lúneçi_Maitzi_Márcuri_Xhúadi_Viénerçi_Sáturi".split("_"),weekdaysShort:"Súl_Lún_Mai_Már_Xhú_Vié_Sát".split("_"),weekdaysMin:"Sú_Lú_Ma_Má_Xh_Vi_Sá".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD.MM.YYYY",LL:"D. MMMM [dallas] YYYY",LLL:"D. MMMM [dallas] YYYY HH.mm",LLLL:"dddd, [li] D. MMMM [dallas] YYYY HH.mm"},meridiemParse:/d\'o|d\'a/i,isPM:function(e){return"d'o"===e.toLowerCase()},meridiem:function(e,t,o){return e>11?o?"d'o":"D'O":o?"d'a":"D'A"},calendar:{sameDay:"[oxhi à] LT",nextDay:"[demà à] LT",nextWeek:"dddd [à] LT",lastDay:"[ieiri à] LT",lastWeek:"[sür el] dddd [lasteu à] LT",sameElse:"L"},relativeTime:{future:"osprei %s",past:"ja%s",s:t,ss:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(o(381))},699:function(e,t,o){!function(e){"use strict";e.defineLocale("tzm-latn",{months:"innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir".split("_"),monthsShort:"innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir".split("_"),weekdays:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),weekdaysShort:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),weekdaysMin:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[asdkh g] LT",nextDay:"[aska g] LT",nextWeek:"dddd [g] LT",lastDay:"[assant g] LT",lastWeek:"dddd [g] LT",sameElse:"L"},relativeTime:{future:"dadkh s yan %s",past:"yan %s",s:"imik",ss:"%d imik",m:"minuḍ",mm:"%d minuḍ",h:"saɛa",hh:"%d tassaɛin",d:"ass",dd:"%d ossan",M:"ayowr",MM:"%d iyyirn",y:"asgas",yy:"%d isgasn"},week:{dow:6,doy:12}})}(o(381))},1106:function(e,t,o){!function(e){"use strict";e.defineLocale("tzm",{months:"ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ".split("_"),monthsShort:"ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ".split("_"),weekdays:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),weekdaysShort:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),weekdaysMin:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[ⴰⵙⴷⵅ ⴴ] LT",nextDay:"[ⴰⵙⴽⴰ ⴴ] LT",nextWeek:"dddd [ⴴ] LT",lastDay:"[ⴰⵚⴰⵏⵜ ⴴ] LT",lastWeek:"dddd [ⴴ] LT",sameElse:"L"},relativeTime:{future:"ⴷⴰⴷⵅ ⵙ ⵢⴰⵏ %s",past:"ⵢⴰⵏ %s",s:"ⵉⵎⵉⴽ",ss:"%d ⵉⵎⵉⴽ",m:"ⵎⵉⵏⵓⴺ",mm:"%d ⵎⵉⵏⵓⴺ",h:"ⵙⴰⵄⴰ",hh:"%d ⵜⴰⵙⵙⴰⵄⵉⵏ",d:"ⴰⵙⵙ",dd:"%d oⵙⵙⴰⵏ",M:"ⴰⵢoⵓⵔ",MM:"%d ⵉⵢⵢⵉⵔⵏ",y:"ⴰⵙⴳⴰⵙ",yy:"%d ⵉⵙⴳⴰⵙⵏ"},week:{dow:6,doy:12}})}(o(381))},9288:function(e,t,o){!function(e){"use strict";e.defineLocale("ug-cn",{months:"يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر".split("_"),monthsShort:"يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر".split("_"),weekdays:"يەكشەنبە_دۈشەنبە_سەيشەنبە_چارشەنبە_پەيشەنبە_جۈمە_شەنبە".split("_"),weekdaysShort:"يە_دۈ_سە_چا_پە_جۈ_شە".split("_"),weekdaysMin:"يە_دۈ_سە_چا_پە_جۈ_شە".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY-يىلىM-ئاينىڭD-كۈنى",LLL:"YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm",LLLL:"dddd، YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm"},meridiemParse:/يېرىم كېچە|سەھەر|چۈشتىن بۇرۇن|چۈش|چۈشتىن كېيىن|كەچ/,meridiemHour:function(e,t){return 12===e&&(e=0),"يېرىم كېچە"===t||"سەھەر"===t||"چۈشتىن بۇرۇن"===t?e:"چۈشتىن كېيىن"===t||"كەچ"===t?e+12:e>=11?e:e+12},meridiem:function(e,t,o){var i=100*e+t;return i<600?"يېرىم كېچە":i<900?"سەھەر":i<1130?"چۈشتىن بۇرۇن":i<1230?"چۈش":i<1800?"چۈشتىن كېيىن":"كەچ"},calendar:{sameDay:"[بۈگۈن سائەت] LT",nextDay:"[ئەتە سائەت] LT",nextWeek:"[كېلەركى] dddd [سائەت] LT",lastDay:"[تۆنۈگۈن] LT",lastWeek:"[ئالدىنقى] dddd [سائەت] LT",sameElse:"L"},relativeTime:{future:"%s كېيىن",past:"%s بۇرۇن",s:"نەچچە سېكونت",ss:"%d سېكونت",m:"بىر مىنۇت",mm:"%d مىنۇت",h:"بىر سائەت",hh:"%d سائەت",d:"بىر كۈن",dd:"%d كۈن",M:"بىر ئاي",MM:"%d ئاي",y:"بىر يىل",yy:"%d يىل"},dayOfMonthOrdinalParse:/\d{1,2}(-كۈنى|-ئاي|-ھەپتە)/,ordinal:function(e,t){switch(t){case"d":case"D":case"DDD":return e+"-كۈنى";case"w":case"W":return e+"-ھەپتە";default:return e}},preparse:function(e){return e.replace(/،/g,",")},postformat:function(e){return e.replace(/,/g,"،")},week:{dow:1,doy:7}})}(o(381))},7691:function(e,t,o){!function(e){"use strict";function t(e,t){var o=e.split("_");return t%10==1&&t%100!=11?o[0]:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?o[1]:o[2]}function o(e,o,i){return"m"===i?o?"хвилина":"хвилину":"h"===i?o?"година":"годину":e+" "+t({ss:o?"секунда_секунди_секунд":"секунду_секунди_секунд",mm:o?"хвилина_хвилини_хвилин":"хвилину_хвилини_хвилин",hh:o?"година_години_годин":"годину_години_годин",dd:"день_дні_днів",MM:"місяць_місяці_місяців",yy:"рік_роки_років"}[i],+e)}function i(e,t){var o={nominative:"неділя_понеділок_вівторок_середа_четвер_п’ятниця_субота".split("_"),accusative:"неділю_понеділок_вівторок_середу_четвер_п’ятницю_суботу".split("_"),genitive:"неділі_понеділка_вівторка_середи_четверга_п’ятниці_суботи".split("_")};return!0===e?o.nominative.slice(1,7).concat(o.nominative.slice(0,1)):e?o[/(\[[ВвУу]\]) ?dddd/.test(t)?"accusative":/\[?(?:минулої|наступної)? ?\] ?dddd/.test(t)?"genitive":"nominative"][e.day()]:o.nominative}function n(e){return function(){return e+"о"+(11===this.hours()?"б":"")+"] LT"}}e.defineLocale("uk",{months:{format:"січня_лютого_березня_квітня_травня_червня_липня_серпня_вересня_жовтня_листопада_грудня".split("_"),standalone:"січень_лютий_березень_квітень_травень_червень_липень_серпень_вересень_жовтень_листопад_грудень".split("_")},monthsShort:"січ_лют_бер_квіт_трав_черв_лип_серп_вер_жовт_лист_груд".split("_"),weekdays:i,weekdaysShort:"нд_пн_вт_ср_чт_пт_сб".split("_"),weekdaysMin:"нд_пн_вт_ср_чт_пт_сб".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY р.",LLL:"D MMMM YYYY р., HH:mm",LLLL:"dddd, D MMMM YYYY р., HH:mm"},calendar:{sameDay:n("[Сьогодні "),nextDay:n("[Завтра "),lastDay:n("[Вчора "),nextWeek:n("[У] dddd ["),lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return n("[Минулої] dddd [").call(this);case 1:case 2:case 4:return n("[Минулого] dddd [").call(this)}},sameElse:"L"},relativeTime:{future:"за %s",past:"%s тому",s:"декілька секунд",ss:o,m:o,mm:o,h:"годину",hh:o,d:"день",dd:o,M:"місяць",MM:o,y:"рік",yy:o},meridiemParse:/ночі|ранку|дня|вечора/,isPM:function(e){return/^(дня|вечора)$/.test(e)},meridiem:function(e,t,o){return e<4?"ночі":e<12?"ранку":e<17?"дня":"вечора"},dayOfMonthOrdinalParse:/\d{1,2}-(й|го)/,ordinal:function(e,t){switch(t){case"M":case"d":case"DDD":case"w":case"W":return e+"-й";case"D":return e+"-го";default:return e}},week:{dow:1,doy:7}})}(o(381))},3795:function(e,t,o){!function(e){"use strict";var t=["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر"],o=["اتوار","پیر","منگل","بدھ","جمعرات","جمعہ","ہفتہ"];e.defineLocale("ur",{months:t,monthsShort:t,weekdays:o,weekdaysShort:o,weekdaysMin:o,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd، D MMMM YYYY HH:mm"},meridiemParse:/صبح|شام/,isPM:function(e){return"شام"===e},meridiem:function(e,t,o){return e<12?"صبح":"شام"},calendar:{sameDay:"[آج بوقت] LT",nextDay:"[کل بوقت] LT",nextWeek:"dddd [بوقت] LT",lastDay:"[گذشتہ روز بوقت] LT",lastWeek:"[گذشتہ] dddd [بوقت] LT",sameElse:"L"},relativeTime:{future:"%s بعد",past:"%s قبل",s:"چند سیکنڈ",ss:"%d سیکنڈ",m:"ایک منٹ",mm:"%d منٹ",h:"ایک گھنٹہ",hh:"%d گھنٹے",d:"ایک دن",dd:"%d دن",M:"ایک ماہ",MM:"%d ماہ",y:"ایک سال",yy:"%d سال"},preparse:function(e){return e.replace(/،/g,",")},postformat:function(e){return e.replace(/,/g,"،")},week:{dow:1,doy:4}})}(o(381))},588:function(e,t,o){!function(e){"use strict";e.defineLocale("uz-latn",{months:"Yanvar_Fevral_Mart_Aprel_May_Iyun_Iyul_Avgust_Sentabr_Oktabr_Noyabr_Dekabr".split("_"),monthsShort:"Yan_Fev_Mar_Apr_May_Iyun_Iyul_Avg_Sen_Okt_Noy_Dek".split("_"),weekdays:"Yakshanba_Dushanba_Seshanba_Chorshanba_Payshanba_Juma_Shanba".split("_"),weekdaysShort:"Yak_Dush_Sesh_Chor_Pay_Jum_Shan".split("_"),weekdaysMin:"Ya_Du_Se_Cho_Pa_Ju_Sha".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"D MMMM YYYY, dddd HH:mm"},calendar:{sameDay:"[Bugun soat] LT [da]",nextDay:"[Ertaga] LT [da]",nextWeek:"dddd [kuni soat] LT [da]",lastDay:"[Kecha soat] LT [da]",lastWeek:"[O'tgan] dddd [kuni soat] LT [da]",sameElse:"L"},relativeTime:{future:"Yaqin %s ichida",past:"Bir necha %s oldin",s:"soniya",ss:"%d soniya",m:"bir daqiqa",mm:"%d daqiqa",h:"bir soat",hh:"%d soat",d:"bir kun",dd:"%d kun",M:"bir oy",MM:"%d oy",y:"bir yil",yy:"%d yil"},week:{dow:1,doy:7}})}(o(381))},6791:function(e,t,o){!function(e){"use strict";e.defineLocale("uz",{months:"январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр".split("_"),monthsShort:"янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек".split("_"),weekdays:"Якшанба_Душанба_Сешанба_Чоршанба_Пайшанба_Жума_Шанба".split("_"),weekdaysShort:"Якш_Душ_Сеш_Чор_Пай_Жум_Шан".split("_"),weekdaysMin:"Як_Ду_Се_Чо_Па_Жу_Ша".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"D MMMM YYYY, dddd HH:mm"},calendar:{sameDay:"[Бугун соат] LT [да]",nextDay:"[Эртага] LT [да]",nextWeek:"dddd [куни соат] LT [да]",lastDay:"[Кеча соат] LT [да]",lastWeek:"[Утган] dddd [куни соат] LT [да]",sameElse:"L"},relativeTime:{future:"Якин %s ичида",past:"Бир неча %s олдин",s:"фурсат",ss:"%d фурсат",m:"бир дакика",mm:"%d дакика",h:"бир соат",hh:"%d соат",d:"бир кун",dd:"%d кун",M:"бир ой",MM:"%d ой",y:"бир йил",yy:"%d йил"},week:{dow:1,doy:7}})}(o(381))},5666:function(e,t,o){!function(e){"use strict";e.defineLocale("vi",{months:"tháng 1_tháng 2_tháng 3_tháng 4_tháng 5_tháng 6_tháng 7_tháng 8_tháng 9_tháng 10_tháng 11_tháng 12".split("_"),monthsShort:"Thg 01_Thg 02_Thg 03_Thg 04_Thg 05_Thg 06_Thg 07_Thg 08_Thg 09_Thg 10_Thg 11_Thg 12".split("_"),monthsParseExact:!0,weekdays:"chủ nhật_thứ hai_thứ ba_thứ tư_thứ năm_thứ sáu_thứ bảy".split("_"),weekdaysShort:"CN_T2_T3_T4_T5_T6_T7".split("_"),weekdaysMin:"CN_T2_T3_T4_T5_T6_T7".split("_"),weekdaysParseExact:!0,meridiemParse:/sa|ch/i,isPM:function(e){return/^ch$/i.test(e)},meridiem:function(e,t,o){return e<12?o?"sa":"SA":o?"ch":"CH"},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM [năm] YYYY",LLL:"D MMMM [năm] YYYY HH:mm",LLLL:"dddd, D MMMM [năm] YYYY HH:mm",l:"DD/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY HH:mm",llll:"ddd, D MMM YYYY HH:mm"},calendar:{sameDay:"[Hôm nay lúc] LT",nextDay:"[Ngày mai lúc] LT",nextWeek:"dddd [tuần tới lúc] LT",lastDay:"[Hôm qua lúc] LT",lastWeek:"dddd [tuần trước lúc] LT",sameElse:"L"},relativeTime:{future:"%s tới",past:"%s trước",s:"vài giây",ss:"%d giây",m:"một phút",mm:"%d phút",h:"một giờ",hh:"%d giờ",d:"một ngày",dd:"%d ngày",w:"một tuần",ww:"%d tuần",M:"một tháng",MM:"%d tháng",y:"một năm",yy:"%d năm"},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal:function(e){return e},week:{dow:1,doy:4}})}(o(381))},4378:function(e,t,o){!function(e){"use strict";e.defineLocale("x-pseudo",{months:"J~áñúá~rý_F~ébrú~árý_~Márc~h_Áp~ríl_~Máý_~Júñé~_Júl~ý_Áú~gúst~_Sép~témb~ér_Ó~ctób~ér_Ñ~óvém~bér_~Décé~mbér".split("_"),monthsShort:"J~áñ_~Féb_~Már_~Ápr_~Máý_~Júñ_~Júl_~Áúg_~Sép_~Óct_~Ñóv_~Déc".split("_"),monthsParseExact:!0,weekdays:"S~úñdá~ý_Mó~ñdáý~_Túé~sdáý~_Wéd~ñésd~áý_T~húrs~dáý_~Fríd~áý_S~átúr~dáý".split("_"),weekdaysShort:"S~úñ_~Móñ_~Túé_~Wéd_~Thú_~Frí_~Sát".split("_"),weekdaysMin:"S~ú_Mó~_Tú_~Wé_T~h_Fr~_Sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[T~ódá~ý át] LT",nextDay:"[T~ómó~rró~w át] LT",nextWeek:"dddd [át] LT",lastDay:"[Ý~ést~érdá~ý át] LT",lastWeek:"[L~ást] dddd [át] LT",sameElse:"L"},relativeTime:{future:"í~ñ %s",past:"%s á~gó",s:"á ~féw ~sécó~ñds",ss:"%d s~écóñ~ds",m:"á ~míñ~úté",mm:"%d m~íñú~tés",h:"á~ñ hó~úr",hh:"%d h~óúrs",d:"á ~dáý",dd:"%d d~áýs",M:"á ~móñ~th",MM:"%d m~óñt~hs",y:"á ~ýéár",yy:"%d ý~éárs"},dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(e){var t=e%10;return e+(1==~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")},week:{dow:1,doy:4}})}(o(381))},5805:function(e,t,o){!function(e){"use strict";e.defineLocale("yo",{months:"Sẹ́rẹ́_Èrèlè_Ẹrẹ̀nà_Ìgbé_Èbibi_Òkùdu_Agẹmo_Ògún_Owewe_Ọ̀wàrà_Bélú_Ọ̀pẹ̀̀".split("_"),monthsShort:"Sẹ́r_Èrl_Ẹrn_Ìgb_Èbi_Òkù_Agẹ_Ògú_Owe_Ọ̀wà_Bél_Ọ̀pẹ̀̀".split("_"),weekdays:"Àìkú_Ajé_Ìsẹ́gun_Ọjọ́rú_Ọjọ́bọ_Ẹtì_Àbámẹ́ta".split("_"),weekdaysShort:"Àìk_Ajé_Ìsẹ́_Ọjr_Ọjb_Ẹtì_Àbá".split("_"),weekdaysMin:"Àì_Aj_Ìs_Ọr_Ọb_Ẹt_Àb".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Ònì ni] LT",nextDay:"[Ọ̀la ni] LT",nextWeek:"dddd [Ọsẹ̀ tón'bọ] [ni] LT",lastDay:"[Àna ni] LT",lastWeek:"dddd [Ọsẹ̀ tólọ́] [ni] LT",sameElse:"L"},relativeTime:{future:"ní %s",past:"%s kọjá",s:"ìsẹjú aayá die",ss:"aayá %d",m:"ìsẹjú kan",mm:"ìsẹjú %d",h:"wákati kan",hh:"wákati %d",d:"ọjọ́ kan",dd:"ọjọ́ %d",M:"osù kan",MM:"osù %d",y:"ọdún kan",yy:"ọdún %d"},dayOfMonthOrdinalParse:/ọjọ́\s\d{1,2}/,ordinal:"ọjọ́ %d",week:{dow:1,doy:4}})}(o(381))},3839:function(e,t,o){!function(e){"use strict";e.defineLocale("zh-cn",{months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"周日_周一_周二_周三_周四_周五_周六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日Ah点mm分",LLLL:"YYYY年M月D日ddddAh点mm分",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},meridiemParse:/凌晨|早上|上午|中午|下午|晚上/,meridiemHour:function(e,t){return 12===e&&(e=0),"凌晨"===t||"早上"===t||"上午"===t?e:"下午"===t||"晚上"===t?e+12:e>=11?e:e+12},meridiem:function(e,t,o){var i=100*e+t;return i<600?"凌晨":i<900?"早上":i<1130?"上午":i<1230?"中午":i<1800?"下午":"晚上"},calendar:{sameDay:"[今天]LT",nextDay:"[明天]LT",nextWeek:function(e){return e.week()!==this.week()?"[下]dddLT":"[本]dddLT"},lastDay:"[昨天]LT",lastWeek:function(e){return this.week()!==e.week()?"[上]dddLT":"[本]dddLT"},sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(日|月|周)/,ordinal:function(e,t){switch(t){case"d":case"D":case"DDD":return e+"日";case"M":return e+"月";case"w":case"W":return e+"周";default:return e}},relativeTime:{future:"%s后",past:"%s前",s:"几秒",ss:"%d 秒",m:"1 分钟",mm:"%d 分钟",h:"1 小时",hh:"%d 小时",d:"1 天",dd:"%d 天",w:"1 周",ww:"%d 周",M:"1 个月",MM:"%d 个月",y:"1 年",yy:"%d 年"},week:{dow:1,doy:4}})}(o(381))},5726:function(e,t,o){!function(e){"use strict";e.defineLocale("zh-hk",{months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"週日_週一_週二_週三_週四_週五_週六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日 HH:mm",LLLL:"YYYY年M月D日dddd HH:mm",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},meridiemParse:/凌晨|早上|上午|中午|下午|晚上/,meridiemHour:function(e,t){return 12===e&&(e=0),"凌晨"===t||"早上"===t||"上午"===t?e:"中午"===t?e>=11?e:e+12:"下午"===t||"晚上"===t?e+12:void 0},meridiem:function(e,t,o){var i=100*e+t;return i<600?"凌晨":i<900?"早上":i<1200?"上午":1200===i?"中午":i<1800?"下午":"晚上"},calendar:{sameDay:"[今天]LT",nextDay:"[明天]LT",nextWeek:"[下]ddddLT",lastDay:"[昨天]LT",lastWeek:"[上]ddddLT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(日|月|週)/,ordinal:function(e,t){switch(t){case"d":case"D":case"DDD":return e+"日";case"M":return e+"月";case"w":case"W":return e+"週";default:return e}},relativeTime:{future:"%s後",past:"%s前",s:"幾秒",ss:"%d 秒",m:"1 分鐘",mm:"%d 分鐘",h:"1 小時",hh:"%d 小時",d:"1 天",dd:"%d 天",M:"1 個月",MM:"%d 個月",y:"1 年",yy:"%d 年"}})}(o(381))},9807:function(e,t,o){!function(e){"use strict";e.defineLocale("zh-mo",{months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"週日_週一_週二_週三_週四_週五_週六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"YYYY年M月D日",LLL:"YYYY年M月D日 HH:mm",LLLL:"YYYY年M月D日dddd HH:mm",l:"D/M/YYYY",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},meridiemParse:/凌晨|早上|上午|中午|下午|晚上/,meridiemHour:function(e,t){return 12===e&&(e=0),"凌晨"===t||"早上"===t||"上午"===t?e:"中午"===t?e>=11?e:e+12:"下午"===t||"晚上"===t?e+12:void 0},meridiem:function(e,t,o){var i=100*e+t;return i<600?"凌晨":i<900?"早上":i<1130?"上午":i<1230?"中午":i<1800?"下午":"晚上"},calendar:{sameDay:"[今天] LT",nextDay:"[明天] LT",nextWeek:"[下]dddd LT",lastDay:"[昨天] LT",lastWeek:"[上]dddd LT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(日|月|週)/,ordinal:function(e,t){switch(t){case"d":case"D":case"DDD":return e+"日";case"M":return e+"月";case"w":case"W":return e+"週";default:return e}},relativeTime:{future:"%s內",past:"%s前",s:"幾秒",ss:"%d 秒",m:"1 分鐘",mm:"%d 分鐘",h:"1 小時",hh:"%d 小時",d:"1 天",dd:"%d 天",M:"1 個月",MM:"%d 個月",y:"1 年",yy:"%d 年"}})}(o(381))},4152:function(e,t,o){!function(e){"use strict";e.defineLocale("zh-tw",{months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"週日_週一_週二_週三_週四_週五_週六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日 HH:mm",LLLL:"YYYY年M月D日dddd HH:mm",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},meridiemParse:/凌晨|早上|上午|中午|下午|晚上/,meridiemHour:function(e,t){return 12===e&&(e=0),"凌晨"===t||"早上"===t||"上午"===t?e:"中午"===t?e>=11?e:e+12:"下午"===t||"晚上"===t?e+12:void 0},meridiem:function(e,t,o){var i=100*e+t;return i<600?"凌晨":i<900?"早上":i<1130?"上午":i<1230?"中午":i<1800?"下午":"晚上"},calendar:{sameDay:"[今天] LT",nextDay:"[明天] LT",nextWeek:"[下]dddd LT",lastDay:"[昨天] LT",lastWeek:"[上]dddd LT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(日|月|週)/,ordinal:function(e,t){switch(t){case"d":case"D":case"DDD":return e+"日";case"M":return e+"月";case"w":case"W":return e+"週";default:return e}},relativeTime:{future:"%s後",past:"%s前",s:"幾秒",ss:"%d 秒",m:"1 分鐘",mm:"%d 分鐘",h:"1 小時",hh:"%d 小時",d:"1 天",dd:"%d 天",M:"1 個月",MM:"%d 個月",y:"1 年",yy:"%d 年"}})}(o(381))},6700:(e,t,o)=>{var i={"./af":2786,"./af.js":2786,"./ar":867,"./ar-dz":4130,"./ar-dz.js":4130,"./ar-kw":6135,"./ar-kw.js":6135,"./ar-ly":6440,"./ar-ly.js":6440,"./ar-ma":7702,"./ar-ma.js":7702,"./ar-sa":6040,"./ar-sa.js":6040,"./ar-tn":7100,"./ar-tn.js":7100,"./ar.js":867,"./az":1083,"./az.js":1083,"./be":9808,"./be.js":9808,"./bg":8338,"./bg.js":8338,"./bm":7438,"./bm.js":7438,"./bn":8905,"./bn-bd":6225,"./bn-bd.js":6225,"./bn.js":8905,"./bo":1560,"./bo.js":1560,"./br":1278,"./br.js":1278,"./bs":622,"./bs.js":622,"./ca":2468,"./ca.js":2468,"./cs":5822,"./cs.js":5822,"./cv":877,"./cv.js":877,"./cy":7373,"./cy.js":7373,"./da":4780,"./da.js":4780,"./de":9740,"./de-at":217,"./de-at.js":217,"./de-ch":894,"./de-ch.js":894,"./de.js":9740,"./dv":5300,"./dv.js":5300,"./el":837,"./el.js":837,"./en-au":8348,"./en-au.js":8348,"./en-ca":7925,"./en-ca.js":7925,"./en-gb":2243,"./en-gb.js":2243,"./en-ie":6436,"./en-ie.js":6436,"./en-il":7207,"./en-il.js":7207,"./en-in":4175,"./en-in.js":4175,"./en-nz":6319,"./en-nz.js":6319,"./en-sg":1662,"./en-sg.js":1662,"./eo":2915,"./eo.js":2915,"./es":5655,"./es-do":2088,"./es-do.js":2088,"./es-mx":6112,"./es-mx.js":6112,"./es-us":1146,"./es-us.js":1146,"./es.js":5655,"./et":5603,"./et.js":5603,"./eu":7763,"./eu.js":7763,"./fa":6959,"./fa.js":6959,"./fi":1897,"./fi.js":1897,"./fil":2549,"./fil.js":2549,"./fo":4694,"./fo.js":4694,"./fr":4470,"./fr-ca":3049,"./fr-ca.js":3049,"./fr-ch":2330,"./fr-ch.js":2330,"./fr.js":4470,"./fy":5044,"./fy.js":5044,"./ga":9295,"./ga.js":9295,"./gd":2101,"./gd.js":2101,"./gl":8794,"./gl.js":8794,"./gom-deva":7884,"./gom-deva.js":7884,"./gom-latn":3168,"./gom-latn.js":3168,"./gu":5349,"./gu.js":5349,"./he":4206,"./he.js":4206,"./hi":94,"./hi.js":94,"./hr":316,"./hr.js":316,"./hu":2138,"./hu.js":2138,"./hy-am":1423,"./hy-am.js":1423,"./id":9218,"./id.js":9218,"./is":135,"./is.js":135,"./it":626,"./it-ch":150,"./it-ch.js":150,"./it.js":626,"./ja":9183,"./ja.js":9183,"./jv":4286,"./jv.js":4286,"./ka":2105,"./ka.js":2105,"./kk":7772,"./kk.js":7772,"./km":8758,"./km.js":8758,"./kn":9282,"./kn.js":9282,"./ko":3730,"./ko.js":3730,"./ku":1408,"./ku.js":1408,"./ky":3291,"./ky.js":3291,"./lb":6841,"./lb.js":6841,"./lo":5466,"./lo.js":5466,"./lt":7010,"./lt.js":7010,"./lv":7595,"./lv.js":7595,"./me":9861,"./me.js":9861,"./mi":5493,"./mi.js":5493,"./mk":5966,"./mk.js":5966,"./ml":7341,"./ml.js":7341,"./mn":5115,"./mn.js":5115,"./mr":370,"./mr.js":370,"./ms":9847,"./ms-my":1237,"./ms-my.js":1237,"./ms.js":9847,"./mt":2126,"./mt.js":2126,"./my":6165,"./my.js":6165,"./nb":4924,"./nb.js":4924,"./ne":6744,"./ne.js":6744,"./nl":3901,"./nl-be":9814,"./nl-be.js":9814,"./nl.js":3901,"./nn":3877,"./nn.js":3877,"./oc-lnc":2135,"./oc-lnc.js":2135,"./pa-in":5858,"./pa-in.js":5858,"./pl":4495,"./pl.js":4495,"./pt":9520,"./pt-br":7971,"./pt-br.js":7971,"./pt.js":9520,"./ro":6459,"./ro.js":6459,"./ru":1793,"./ru.js":1793,"./sd":950,"./sd.js":950,"./se":490,"./se.js":490,"./si":124,"./si.js":124,"./sk":4249,"./sk.js":4249,"./sl":4985,"./sl.js":4985,"./sq":1104,"./sq.js":1104,"./sr":9131,"./sr-cyrl":9915,"./sr-cyrl.js":9915,"./sr.js":9131,"./ss":5606,"./ss.js":5606,"./sv":8760,"./sv.js":8760,"./sw":1172,"./sw.js":1172,"./ta":7333,"./ta.js":7333,"./te":3110,"./te.js":3110,"./tet":2095,"./tet.js":2095,"./tg":7321,"./tg.js":7321,"./th":9041,"./th.js":9041,"./tk":9005,"./tk.js":9005,"./tl-ph":5768,"./tl-ph.js":5768,"./tlh":9444,"./tlh.js":9444,"./tr":2397,"./tr.js":2397,"./tzl":8254,"./tzl.js":8254,"./tzm":1106,"./tzm-latn":699,"./tzm-latn.js":699,"./tzm.js":1106,"./ug-cn":9288,"./ug-cn.js":9288,"./uk":7691,"./uk.js":7691,"./ur":3795,"./ur.js":3795,"./uz":6791,"./uz-latn":588,"./uz-latn.js":588,"./uz.js":6791,"./vi":5666,"./vi.js":5666,"./x-pseudo":4378,"./x-pseudo.js":4378,"./yo":5805,"./yo.js":5805,"./zh-cn":3839,"./zh-cn.js":3839,"./zh-hk":5726,"./zh-hk.js":5726,"./zh-mo":9807,"./zh-mo.js":9807,"./zh-tw":4152,"./zh-tw.js":4152};function n(e){var t=r(e);return o(t)}function r(e){if(!o.o(i,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return i[e]}n.keys=function(){return Object.keys(i)},n.resolve=r,e.exports=n,n.id=6700},381:function(e,t,o){(e=o.nmd(e)).exports=function(){"use strict";var t,i;function n(){return t.apply(null,arguments)}function r(e){t=e}function a(e){return e instanceof Array||"[object Array]"===Object.prototype.toString.call(e)}function s(e){return null!=e&&"[object Object]"===Object.prototype.toString.call(e)}function p(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function c(e){if(Object.getOwnPropertyNames)return 0===Object.getOwnPropertyNames(e).length;var t;for(t in e)if(p(e,t))return!1;return!0}function l(e){return void 0===e}function b(e){return"number"==typeof e||"[object Number]"===Object.prototype.toString.call(e)}function d(e){return e instanceof Date||"[object Date]"===Object.prototype.toString.call(e)}function u(e,t){var o,i=[],n=e.length;for(o=0;o>>0;for(t=0;t0)for(o=0;o=0?o?"+":"":"-")+Math.pow(10,Math.max(0,n)).toString().substr(1)+i}var D=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,C=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,N={},P={};function I(e,t,o,i){var n=i;"string"==typeof i&&(n=function(){return this[i]()}),e&&(P[e]=n),t&&(P[t[0]]=function(){return E(n.apply(this,arguments),t[1],t[2])}),o&&(P[o]=function(){return this.localeData().ordinal(n.apply(this,arguments),e)})}function Y(e){return e.match(/\[[\s\S]/)?e.replace(/^\[|\]$/g,""):e.replace(/\\/g,"")}function j(e){var t,o,i=e.match(D);for(t=0,o=i.length;t=0&&C.test(e);)e=e.replace(C,i),C.lastIndex=0,o-=1;return e}var U={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"};function V(e){var t=this._longDateFormat[e],o=this._longDateFormat[e.toUpperCase()];return t||!o?t:(this._longDateFormat[e]=o.match(D).map((function(e){return"MMMM"===e||"MM"===e||"DD"===e||"dddd"===e?e.slice(1):e})).join(""),this._longDateFormat[e])}var G="Invalid date";function Z(){return this._invalidDate}var $="%d",K=/\d{1,2}/;function J(e){return this._ordinal.replace("%d",e)}var Q={future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",w:"a week",ww:"%d weeks",M:"a month",MM:"%d months",y:"a year",yy:"%d years"};function ee(e,t,o,i){var n=this._relativeTime[o];return R(n)?n(e,t,o,i):n.replace(/%d/i,e)}function te(e,t){var o=this._relativeTime[e>0?"future":"past"];return R(o)?o(t):o.replace(/%s/i,t)}var oe={};function ie(e,t){var o=e.toLowerCase();oe[o]=oe[o+"s"]=oe[t]=e}function ne(e){return"string"==typeof e?oe[e]||oe[e.toLowerCase()]:void 0}function re(e){var t,o,i={};for(o in e)p(e,o)&&(t=ne(o))&&(i[t]=e[o]);return i}var ae={};function se(e,t){ae[e]=t}function pe(e){var t,o=[];for(t in e)p(e,t)&&o.push({unit:t,priority:ae[t]});return o.sort((function(e,t){return e.priority-t.priority})),o}function ce(e){return e%4==0&&e%100!=0||e%400==0}function le(e){return e<0?Math.ceil(e)||0:Math.floor(e)}function be(e){var t=+e,o=0;return 0!==t&&isFinite(t)&&(o=le(t)),o}function de(e,t){return function(o){return null!=o?(Me(this,e,o),n.updateOffset(this,t),this):ue(this,e)}}function ue(e,t){return e.isValid()?e._d["get"+(e._isUTC?"UTC":"")+t]():NaN}function Me(e,t,o){e.isValid()&&!isNaN(o)&&("FullYear"===t&&ce(e.year())&&1===e.month()&&29===e.date()?(o=be(o),e._d["set"+(e._isUTC?"UTC":"")+t](o,e.month(),et(o,e.month()))):e._d["set"+(e._isUTC?"UTC":"")+t](o))}function ze(e){return R(this[e=ne(e)])?this[e]():this}function me(e,t){if("object"==typeof e){var o,i=pe(e=re(e)),n=i.length;for(o=0;o68?1900:2e3)};var ht=de("FullYear",!0);function Ot(){return ce(this.year())}function ft(e,t,o,i,n,r,a){var s;return e<100&&e>=0?(s=new Date(e+400,t,o,i,n,r,a),isFinite(s.getFullYear())&&s.setFullYear(e)):s=new Date(e,t,o,i,n,r,a),s}function At(e){var t,o;return e<100&&e>=0?((o=Array.prototype.slice.call(arguments))[0]=e+400,t=new Date(Date.UTC.apply(null,o)),isFinite(t.getUTCFullYear())&&t.setUTCFullYear(e)):t=new Date(Date.UTC.apply(null,arguments)),t}function _t(e,t,o){var i=7+t-o;return-(7+At(e,0,i).getUTCDay()-t)%7+i-1}function gt(e,t,o,i,n){var r,a,s=1+7*(t-1)+(7+o-i)%7+_t(e,i,n);return s<=0?a=mt(r=e-1)+s:s>mt(e)?(r=e+1,a=s-mt(e)):(r=e,a=s),{year:r,dayOfYear:a}}function qt(e,t,o){var i,n,r=_t(e.year(),t,o),a=Math.floor((e.dayOfYear()-r-1)/7)+1;return a<1?i=a+yt(n=e.year()-1,t,o):a>yt(e.year(),t,o)?(i=a-yt(e.year(),t,o),n=e.year()+1):(n=e.year(),i=a),{week:i,year:n}}function yt(e,t,o){var i=_t(e,t,o),n=_t(e+1,t,o);return(mt(e)-i+n)/7}function vt(e){return qt(e,this._week.dow,this._week.doy).week}I("w",["ww",2],"wo","week"),I("W",["WW",2],"Wo","isoWeek"),ie("week","w"),ie("isoWeek","W"),se("week",5),se("isoWeek",5),Xe("w",qe),Xe("ww",qe,fe),Xe("W",qe),Xe("WW",qe,fe),Ie(["w","ww","W","WW"],(function(e,t,o,i){t[i.substr(0,1)]=be(e)}));var xt={dow:0,doy:6};function Wt(){return this._week.dow}function wt(){return this._week.doy}function Lt(e){var t=this.localeData().week(this);return null==e?t:this.add(7*(e-t),"d")}function Rt(e){var t=qt(this,1,4).week;return null==e?t:this.add(7*(e-t),"d")}function Tt(e,t){return"string"!=typeof e?e:isNaN(e)?"number"==typeof(e=t.weekdaysParse(e))?e:null:parseInt(e,10)}function kt(e,t){return"string"==typeof e?t.weekdaysParse(e)%7||7:isNaN(e)?null:e}function Bt(e,t){return e.slice(t,7).concat(e.slice(0,t))}I("d",0,"do","day"),I("dd",0,0,(function(e){return this.localeData().weekdaysMin(this,e)})),I("ddd",0,0,(function(e){return this.localeData().weekdaysShort(this,e)})),I("dddd",0,0,(function(e){return this.localeData().weekdays(this,e)})),I("e",0,0,"weekday"),I("E",0,0,"isoWeekday"),ie("day","d"),ie("weekday","e"),ie("isoWeekday","E"),se("day",11),se("weekday",11),se("isoWeekday",11),Xe("d",qe),Xe("e",qe),Xe("E",qe),Xe("dd",(function(e,t){return t.weekdaysMinRegex(e)})),Xe("ddd",(function(e,t){return t.weekdaysShortRegex(e)})),Xe("dddd",(function(e,t){return t.weekdaysRegex(e)})),Ie(["dd","ddd","dddd"],(function(e,t,o,i){var n=o._locale.weekdaysParse(e,i,o._strict);null!=n?t.d=n:h(o).invalidWeekday=e})),Ie(["d","e","E"],(function(e,t,o,i){t[i]=be(e)}));var St="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),Xt="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),Et="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),Dt=Se,Ct=Se,Nt=Se;function Pt(e,t){var o=a(this._weekdays)?this._weekdays:this._weekdays[e&&!0!==e&&this._weekdays.isFormat.test(t)?"format":"standalone"];return!0===e?Bt(o,this._week.dow):e?o[e.day()]:o}function It(e){return!0===e?Bt(this._weekdaysShort,this._week.dow):e?this._weekdaysShort[e.day()]:this._weekdaysShort}function Yt(e){return!0===e?Bt(this._weekdaysMin,this._week.dow):e?this._weekdaysMin[e.day()]:this._weekdaysMin}function jt(e,t,o){var i,n,r,a=e.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],i=0;i<7;++i)r=z([2e3,1]).day(i),this._minWeekdaysParse[i]=this.weekdaysMin(r,"").toLocaleLowerCase(),this._shortWeekdaysParse[i]=this.weekdaysShort(r,"").toLocaleLowerCase(),this._weekdaysParse[i]=this.weekdays(r,"").toLocaleLowerCase();return o?"dddd"===t?-1!==(n=je.call(this._weekdaysParse,a))?n:null:"ddd"===t?-1!==(n=je.call(this._shortWeekdaysParse,a))?n:null:-1!==(n=je.call(this._minWeekdaysParse,a))?n:null:"dddd"===t?-1!==(n=je.call(this._weekdaysParse,a))||-1!==(n=je.call(this._shortWeekdaysParse,a))||-1!==(n=je.call(this._minWeekdaysParse,a))?n:null:"ddd"===t?-1!==(n=je.call(this._shortWeekdaysParse,a))||-1!==(n=je.call(this._weekdaysParse,a))||-1!==(n=je.call(this._minWeekdaysParse,a))?n:null:-1!==(n=je.call(this._minWeekdaysParse,a))||-1!==(n=je.call(this._weekdaysParse,a))||-1!==(n=je.call(this._shortWeekdaysParse,a))?n:null}function Ft(e,t,o){var i,n,r;if(this._weekdaysParseExact)return jt.call(this,e,t,o);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),i=0;i<7;i++){if(n=z([2e3,1]).day(i),o&&!this._fullWeekdaysParse[i]&&(this._fullWeekdaysParse[i]=new RegExp("^"+this.weekdays(n,"").replace(".","\\.?")+"$","i"),this._shortWeekdaysParse[i]=new RegExp("^"+this.weekdaysShort(n,"").replace(".","\\.?")+"$","i"),this._minWeekdaysParse[i]=new RegExp("^"+this.weekdaysMin(n,"").replace(".","\\.?")+"$","i")),this._weekdaysParse[i]||(r="^"+this.weekdays(n,"")+"|^"+this.weekdaysShort(n,"")+"|^"+this.weekdaysMin(n,""),this._weekdaysParse[i]=new RegExp(r.replace(".",""),"i")),o&&"dddd"===t&&this._fullWeekdaysParse[i].test(e))return i;if(o&&"ddd"===t&&this._shortWeekdaysParse[i].test(e))return i;if(o&&"dd"===t&&this._minWeekdaysParse[i].test(e))return i;if(!o&&this._weekdaysParse[i].test(e))return i}}function Ht(e){if(!this.isValid())return null!=e?this:NaN;var t=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=e?(e=Tt(e,this.localeData()),this.add(e-t,"d")):t}function Ut(e){if(!this.isValid())return null!=e?this:NaN;var t=(this.day()+7-this.localeData()._week.dow)%7;return null==e?t:this.add(e-t,"d")}function Vt(e){if(!this.isValid())return null!=e?this:NaN;if(null!=e){var t=kt(e,this.localeData());return this.day(this.day()%7?t:t-7)}return this.day()||7}function Gt(e){return this._weekdaysParseExact?(p(this,"_weekdaysRegex")||Kt.call(this),e?this._weekdaysStrictRegex:this._weekdaysRegex):(p(this,"_weekdaysRegex")||(this._weekdaysRegex=Dt),this._weekdaysStrictRegex&&e?this._weekdaysStrictRegex:this._weekdaysRegex)}function Zt(e){return this._weekdaysParseExact?(p(this,"_weekdaysRegex")||Kt.call(this),e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(p(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=Ct),this._weekdaysShortStrictRegex&&e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}function $t(e){return this._weekdaysParseExact?(p(this,"_weekdaysRegex")||Kt.call(this),e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(p(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=Nt),this._weekdaysMinStrictRegex&&e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}function Kt(){function e(e,t){return t.length-e.length}var t,o,i,n,r,a=[],s=[],p=[],c=[];for(t=0;t<7;t++)o=z([2e3,1]).day(t),i=Ce(this.weekdaysMin(o,"")),n=Ce(this.weekdaysShort(o,"")),r=Ce(this.weekdays(o,"")),a.push(i),s.push(n),p.push(r),c.push(i),c.push(n),c.push(r);a.sort(e),s.sort(e),p.sort(e),c.sort(e),this._weekdaysRegex=new RegExp("^("+c.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+p.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+s.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+a.join("|")+")","i")}function Jt(){return this.hours()%12||12}function Qt(){return this.hours()||24}function eo(e,t){I(e,0,0,(function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)}))}function to(e,t){return t._meridiemParse}function oo(e){return"p"===(e+"").toLowerCase().charAt(0)}I("H",["HH",2],0,"hour"),I("h",["hh",2],0,Jt),I("k",["kk",2],0,Qt),I("hmm",0,0,(function(){return""+Jt.apply(this)+E(this.minutes(),2)})),I("hmmss",0,0,(function(){return""+Jt.apply(this)+E(this.minutes(),2)+E(this.seconds(),2)})),I("Hmm",0,0,(function(){return""+this.hours()+E(this.minutes(),2)})),I("Hmmss",0,0,(function(){return""+this.hours()+E(this.minutes(),2)+E(this.seconds(),2)})),eo("a",!0),eo("A",!1),ie("hour","h"),se("hour",13),Xe("a",to),Xe("A",to),Xe("H",qe),Xe("h",qe),Xe("k",qe),Xe("HH",qe,fe),Xe("hh",qe,fe),Xe("kk",qe,fe),Xe("hmm",ye),Xe("hmmss",ve),Xe("Hmm",ye),Xe("Hmmss",ve),Pe(["H","HH"],Ve),Pe(["k","kk"],(function(e,t,o){var i=be(e);t[Ve]=24===i?0:i})),Pe(["a","A"],(function(e,t,o){o._isPm=o._locale.isPM(e),o._meridiem=e})),Pe(["h","hh"],(function(e,t,o){t[Ve]=be(e),h(o).bigHour=!0})),Pe("hmm",(function(e,t,o){var i=e.length-2;t[Ve]=be(e.substr(0,i)),t[Ge]=be(e.substr(i)),h(o).bigHour=!0})),Pe("hmmss",(function(e,t,o){var i=e.length-4,n=e.length-2;t[Ve]=be(e.substr(0,i)),t[Ge]=be(e.substr(i,2)),t[Ze]=be(e.substr(n)),h(o).bigHour=!0})),Pe("Hmm",(function(e,t,o){var i=e.length-2;t[Ve]=be(e.substr(0,i)),t[Ge]=be(e.substr(i))})),Pe("Hmmss",(function(e,t,o){var i=e.length-4,n=e.length-2;t[Ve]=be(e.substr(0,i)),t[Ge]=be(e.substr(i,2)),t[Ze]=be(e.substr(n))}));var io=/[ap]\.?m?\.?/i,no=de("Hours",!0);function ro(e,t,o){return e>11?o?"pm":"PM":o?"am":"AM"}var ao,so={calendar:S,longDateFormat:U,invalidDate:G,ordinal:$,dayOfMonthOrdinalParse:K,relativeTime:Q,months:tt,monthsShort:ot,week:xt,weekdays:St,weekdaysMin:Et,weekdaysShort:Xt,meridiemParse:io},po={},co={};function lo(e,t){var o,i=Math.min(e.length,t.length);for(o=0;o0;){if(i=zo(n.slice(0,t).join("-")))return i;if(o&&o.length>=t&&lo(n,o)>=t-1)break;t--}r++}return ao}function Mo(e){return null!=e.match("^[^/\\\\]*$")}function zo(t){var i=null;if(void 0===po[t]&&e&&e.exports&&Mo(t))try{i=ao._abbr,o(6700)("./"+t),mo(i)}catch(e){po[t]=null}return po[t]}function mo(e,t){var o;return e&&((o=l(t)?fo(e):ho(e,t))?ao=o:"undefined"!=typeof console&&console.warn&&console.warn("Locale "+e+" not found. Did you forget to load it?")),ao._abbr}function ho(e,t){if(null!==t){var o,i=so;if(t.abbr=e,null!=po[e])L("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),i=po[e]._config;else if(null!=t.parentLocale)if(null!=po[t.parentLocale])i=po[t.parentLocale]._config;else{if(null==(o=zo(t.parentLocale)))return co[t.parentLocale]||(co[t.parentLocale]=[]),co[t.parentLocale].push({name:e,config:t}),null;i=o._config}return po[e]=new B(k(i,t)),co[e]&&co[e].forEach((function(e){ho(e.name,e.config)})),mo(e),po[e]}return delete po[e],null}function Oo(e,t){if(null!=t){var o,i,n=so;null!=po[e]&&null!=po[e].parentLocale?po[e].set(k(po[e]._config,t)):(null!=(i=zo(e))&&(n=i._config),t=k(n,t),null==i&&(t.abbr=e),(o=new B(t)).parentLocale=po[e],po[e]=o),mo(e)}else null!=po[e]&&(null!=po[e].parentLocale?(po[e]=po[e].parentLocale,e===mo()&&mo(e)):null!=po[e]&&delete po[e]);return po[e]}function fo(e){var t;if(e&&e._locale&&e._locale._abbr&&(e=e._locale._abbr),!e)return ao;if(!a(e)){if(t=zo(e))return t;e=[e]}return uo(e)}function Ao(){return W(po)}function _o(e){var t,o=e._a;return o&&-2===h(e).overflow&&(t=o[He]<0||o[He]>11?He:o[Ue]<1||o[Ue]>et(o[Fe],o[He])?Ue:o[Ve]<0||o[Ve]>24||24===o[Ve]&&(0!==o[Ge]||0!==o[Ze]||0!==o[$e])?Ve:o[Ge]<0||o[Ge]>59?Ge:o[Ze]<0||o[Ze]>59?Ze:o[$e]<0||o[$e]>999?$e:-1,h(e)._overflowDayOfYear&&(tUe)&&(t=Ue),h(e)._overflowWeeks&&-1===t&&(t=Ke),h(e)._overflowWeekday&&-1===t&&(t=Je),h(e).overflow=t),e}var go=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,qo=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,yo=/Z|[+-]\d\d(?::?\d\d)?/,vo=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/],["YYYYMM",/\d{6}/,!1],["YYYY",/\d{4}/,!1]],xo=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],Wo=/^\/?Date\((-?\d+)/i,wo=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,Lo={UT:0,GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function Ro(e){var t,o,i,n,r,a,s=e._i,p=go.exec(s)||qo.exec(s),c=vo.length,l=xo.length;if(p){for(h(e).iso=!0,t=0,o=c;tmt(r)||0===e._dayOfYear)&&(h(e)._overflowDayOfYear=!0),o=At(r,0,e._dayOfYear),e._a[He]=o.getUTCMonth(),e._a[Ue]=o.getUTCDate()),t=0;t<3&&null==e._a[t];++t)e._a[t]=a[t]=i[t];for(;t<7;t++)e._a[t]=a[t]=null==e._a[t]?2===t?1:0:e._a[t];24===e._a[Ve]&&0===e._a[Ge]&&0===e._a[Ze]&&0===e._a[$e]&&(e._nextDay=!0,e._a[Ve]=0),e._d=(e._useUTC?At:ft).apply(null,a),n=e._useUTC?e._d.getUTCDay():e._d.getDay(),null!=e._tzm&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[Ve]=24),e._w&&void 0!==e._w.d&&e._w.d!==n&&(h(e).weekdayMismatch=!0)}}function Io(e){var t,o,i,n,r,a,s,p,c;null!=(t=e._w).GG||null!=t.W||null!=t.E?(r=1,a=4,o=Co(t.GG,e._a[Fe],qt($o(),1,4).year),i=Co(t.W,1),((n=Co(t.E,1))<1||n>7)&&(p=!0)):(r=e._locale._week.dow,a=e._locale._week.doy,c=qt($o(),r,a),o=Co(t.gg,e._a[Fe],c.year),i=Co(t.w,c.week),null!=t.d?((n=t.d)<0||n>6)&&(p=!0):null!=t.e?(n=t.e+r,(t.e<0||t.e>6)&&(p=!0)):n=r),i<1||i>yt(o,r,a)?h(e)._overflowWeeks=!0:null!=p?h(e)._overflowWeekday=!0:(s=gt(o,i,n,r,a),e._a[Fe]=s.year,e._dayOfYear=s.dayOfYear)}function Yo(e){if(e._f!==n.ISO_8601)if(e._f!==n.RFC_2822){e._a=[],h(e).empty=!0;var t,o,i,r,a,s,p,c=""+e._i,l=c.length,b=0;for(p=(i=H(e._f,e._locale).match(D)||[]).length,t=0;t0&&h(e).unusedInput.push(a),c=c.slice(c.indexOf(o)+o.length),b+=o.length),P[r]?(o?h(e).empty=!1:h(e).unusedTokens.push(r),Ye(r,o,e)):e._strict&&!o&&h(e).unusedTokens.push(r);h(e).charsLeftOver=l-b,c.length>0&&h(e).unusedInput.push(c),e._a[Ve]<=12&&!0===h(e).bigHour&&e._a[Ve]>0&&(h(e).bigHour=void 0),h(e).parsedDateParts=e._a.slice(0),h(e).meridiem=e._meridiem,e._a[Ve]=jo(e._locale,e._a[Ve],e._meridiem),null!==(s=h(e).era)&&(e._a[Fe]=e._locale.erasConvertYear(s,e._a[Fe])),Po(e),_o(e)}else Eo(e);else Ro(e)}function jo(e,t,o){var i;return null==o?t:null!=e.meridiemHour?e.meridiemHour(t,o):null!=e.isPM?((i=e.isPM(o))&&t<12&&(t+=12),i||12!==t||(t=0),t):t}function Fo(e){var t,o,i,n,r,a,s=!1,p=e._f.length;if(0===p)return h(e).invalidFormat=!0,void(e._d=new Date(NaN));for(n=0;nthis?this:e:f()}));function Qo(e,t){var o,i;if(1===t.length&&a(t[0])&&(t=t[0]),!t.length)return $o();for(o=t[0],i=1;ithis.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function qi(){if(!l(this._isDSTShifted))return this._isDSTShifted;var e,t={};return g(t,this),(t=Vo(t))._a?(e=t._isUTC?z(t._a):$o(t._a),this._isDSTShifted=this.isValid()&&li(t._a,e.toArray())>0):this._isDSTShifted=!1,this._isDSTShifted}function yi(){return!!this.isValid()&&!this._isUTC}function vi(){return!!this.isValid()&&this._isUTC}function xi(){return!!this.isValid()&&this._isUTC&&0===this._offset}n.updateOffset=function(){};var Wi=/^(-|\+)?(?:(\d*)[. ])?(\d+):(\d+)(?::(\d+)(\.\d*)?)?$/,wi=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function Li(e,t){var o,i,n,r=e,a=null;return pi(e)?r={ms:e._milliseconds,d:e._days,M:e._months}:b(e)||!isNaN(+e)?(r={},t?r[t]=+e:r.milliseconds=+e):(a=Wi.exec(e))?(o="-"===a[1]?-1:1,r={y:0,d:be(a[Ue])*o,h:be(a[Ve])*o,m:be(a[Ge])*o,s:be(a[Ze])*o,ms:be(ci(1e3*a[$e]))*o}):(a=wi.exec(e))?(o="-"===a[1]?-1:1,r={y:Ri(a[2],o),M:Ri(a[3],o),w:Ri(a[4],o),d:Ri(a[5],o),h:Ri(a[6],o),m:Ri(a[7],o),s:Ri(a[8],o)}):null==r?r={}:"object"==typeof r&&("from"in r||"to"in r)&&(n=ki($o(r.from),$o(r.to)),(r={}).ms=n.milliseconds,r.M=n.months),i=new si(r),pi(e)&&p(e,"_locale")&&(i._locale=e._locale),pi(e)&&p(e,"_isValid")&&(i._isValid=e._isValid),i}function Ri(e,t){var o=e&&parseFloat(e.replace(",","."));return(isNaN(o)?0:o)*t}function Ti(e,t){var o={};return o.months=t.month()-e.month()+12*(t.year()-e.year()),e.clone().add(o.months,"M").isAfter(t)&&--o.months,o.milliseconds=+t-+e.clone().add(o.months,"M"),o}function ki(e,t){var o;return e.isValid()&&t.isValid()?(t=Mi(t,e),e.isBefore(t)?o=Ti(e,t):((o=Ti(t,e)).milliseconds=-o.milliseconds,o.months=-o.months),o):{milliseconds:0,months:0}}function Bi(e,t){return function(o,i){var n;return null===i||isNaN(+i)||(L(t,"moment()."+t+"(period, number) is deprecated. Please use moment()."+t+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),n=o,o=i,i=n),Si(this,Li(o,i),e),this}}function Si(e,t,o,i){var r=t._milliseconds,a=ci(t._days),s=ci(t._months);e.isValid()&&(i=null==i||i,s&<(e,ue(e,"Month")+s*o),a&&Me(e,"Date",ue(e,"Date")+a*o),r&&e._d.setTime(e._d.valueOf()+r*o),i&&n.updateOffset(e,a||s))}Li.fn=si.prototype,Li.invalid=ai;var Xi=Bi(1,"add"),Ei=Bi(-1,"subtract");function Di(e){return"string"==typeof e||e instanceof String}function Ci(e){return y(e)||d(e)||Di(e)||b(e)||Pi(e)||Ni(e)||null==e}function Ni(e){var t,o,i=s(e)&&!c(e),n=!1,r=["years","year","y","months","month","M","days","day","d","dates","date","D","hours","hour","h","minutes","minute","m","seconds","second","s","milliseconds","millisecond","ms"],a=r.length;for(t=0;to.valueOf():o.valueOf()9999?F(o,t?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):R(Date.prototype.toISOString)?t?this.toDate().toISOString():new Date(this.valueOf()+60*this.utcOffset()*1e3).toISOString().replace("Z",F(o,"Z")):F(o,t?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")}function tn(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var e,t,o,i,n="moment",r="";return this.isLocal()||(n=0===this.utcOffset()?"moment.utc":"moment.parseZone",r="Z"),e="["+n+'("]',t=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",o="-MM-DD[T]HH:mm:ss.SSS",i=r+'[")]',this.format(e+t+o+i)}function on(e){e||(e=this.isUtc()?n.defaultFormatUtc:n.defaultFormat);var t=F(this,e);return this.localeData().postformat(t)}function nn(e,t){return this.isValid()&&(y(e)&&e.isValid()||$o(e).isValid())?Li({to:this,from:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function rn(e){return this.from($o(),e)}function an(e,t){return this.isValid()&&(y(e)&&e.isValid()||$o(e).isValid())?Li({from:this,to:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function sn(e){return this.to($o(),e)}function pn(e){var t;return void 0===e?this._locale._abbr:(null!=(t=fo(e))&&(this._locale=t),this)}n.defaultFormat="YYYY-MM-DDTHH:mm:ssZ",n.defaultFormatUtc="YYYY-MM-DDTHH:mm:ss[Z]";var cn=x("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",(function(e){return void 0===e?this.localeData():this.locale(e)}));function ln(){return this._locale}var bn=1e3,dn=60*bn,un=60*dn,Mn=3506328*un;function zn(e,t){return(e%t+t)%t}function mn(e,t,o){return e<100&&e>=0?new Date(e+400,t,o)-Mn:new Date(e,t,o).valueOf()}function hn(e,t,o){return e<100&&e>=0?Date.UTC(e+400,t,o)-Mn:Date.UTC(e,t,o)}function On(e){var t,o;if(void 0===(e=ne(e))||"millisecond"===e||!this.isValid())return this;switch(o=this._isUTC?hn:mn,e){case"year":t=o(this.year(),0,1);break;case"quarter":t=o(this.year(),this.month()-this.month()%3,1);break;case"month":t=o(this.year(),this.month(),1);break;case"week":t=o(this.year(),this.month(),this.date()-this.weekday());break;case"isoWeek":t=o(this.year(),this.month(),this.date()-(this.isoWeekday()-1));break;case"day":case"date":t=o(this.year(),this.month(),this.date());break;case"hour":t=this._d.valueOf(),t-=zn(t+(this._isUTC?0:this.utcOffset()*dn),un);break;case"minute":t=this._d.valueOf(),t-=zn(t,dn);break;case"second":t=this._d.valueOf(),t-=zn(t,bn)}return this._d.setTime(t),n.updateOffset(this,!0),this}function fn(e){var t,o;if(void 0===(e=ne(e))||"millisecond"===e||!this.isValid())return this;switch(o=this._isUTC?hn:mn,e){case"year":t=o(this.year()+1,0,1)-1;break;case"quarter":t=o(this.year(),this.month()-this.month()%3+3,1)-1;break;case"month":t=o(this.year(),this.month()+1,1)-1;break;case"week":t=o(this.year(),this.month(),this.date()-this.weekday()+7)-1;break;case"isoWeek":t=o(this.year(),this.month(),this.date()-(this.isoWeekday()-1)+7)-1;break;case"day":case"date":t=o(this.year(),this.month(),this.date()+1)-1;break;case"hour":t=this._d.valueOf(),t+=un-zn(t+(this._isUTC?0:this.utcOffset()*dn),un)-1;break;case"minute":t=this._d.valueOf(),t+=dn-zn(t,dn)-1;break;case"second":t=this._d.valueOf(),t+=bn-zn(t,bn)-1}return this._d.setTime(t),n.updateOffset(this,!0),this}function An(){return this._d.valueOf()-6e4*(this._offset||0)}function _n(){return Math.floor(this.valueOf()/1e3)}function gn(){return new Date(this.valueOf())}function qn(){var e=this;return[e.year(),e.month(),e.date(),e.hour(),e.minute(),e.second(),e.millisecond()]}function yn(){var e=this;return{years:e.year(),months:e.month(),date:e.date(),hours:e.hours(),minutes:e.minutes(),seconds:e.seconds(),milliseconds:e.milliseconds()}}function vn(){return this.isValid()?this.toISOString():null}function xn(){return O(this)}function Wn(){return M({},h(this))}function wn(){return h(this).overflow}function Ln(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}function Rn(e,t){var o,i,r,a=this._eras||fo("en")._eras;for(o=0,i=a.length;o=0)return p[i]}function kn(e,t){var o=e.since<=e.until?1:-1;return void 0===t?n(e.since).year():n(e.since).year()+(t-e.offset)*o}function Bn(){var e,t,o,i=this.localeData().eras();for(e=0,t=i.length;e(r=yt(e,i,n))&&(t=r),Qn.call(this,e,t,o,i,n))}function Qn(e,t,o,i,n){var r=gt(e,t,o,i,n),a=At(r.year,0,r.dayOfYear);return this.year(a.getUTCFullYear()),this.month(a.getUTCMonth()),this.date(a.getUTCDate()),this}function er(e){return null==e?Math.ceil((this.month()+1)/3):this.month(3*(e-1)+this.month()%3)}I("N",0,0,"eraAbbr"),I("NN",0,0,"eraAbbr"),I("NNN",0,0,"eraAbbr"),I("NNNN",0,0,"eraName"),I("NNNNN",0,0,"eraNarrow"),I("y",["y",1],"yo","eraYear"),I("y",["yy",2],0,"eraYear"),I("y",["yyy",3],0,"eraYear"),I("y",["yyyy",4],0,"eraYear"),Xe("N",Pn),Xe("NN",Pn),Xe("NNN",Pn),Xe("NNNN",In),Xe("NNNNN",Yn),Pe(["N","NN","NNN","NNNN","NNNNN"],(function(e,t,o,i){var n=o._locale.erasParse(e,i,o._strict);n?h(o).era=n:h(o).invalidEra=e})),Xe("y",Le),Xe("yy",Le),Xe("yyy",Le),Xe("yyyy",Le),Xe("yo",jn),Pe(["y","yy","yyy","yyyy"],Fe),Pe(["yo"],(function(e,t,o,i){var n;o._locale._eraYearOrdinalRegex&&(n=e.match(o._locale._eraYearOrdinalRegex)),o._locale.eraYearOrdinalParse?t[Fe]=o._locale.eraYearOrdinalParse(e,n):t[Fe]=parseInt(e,10)})),I(0,["gg",2],0,(function(){return this.weekYear()%100})),I(0,["GG",2],0,(function(){return this.isoWeekYear()%100})),Hn("gggg","weekYear"),Hn("ggggg","weekYear"),Hn("GGGG","isoWeekYear"),Hn("GGGGG","isoWeekYear"),ie("weekYear","gg"),ie("isoWeekYear","GG"),se("weekYear",1),se("isoWeekYear",1),Xe("G",Re),Xe("g",Re),Xe("GG",qe,fe),Xe("gg",qe,fe),Xe("GGGG",We,_e),Xe("gggg",We,_e),Xe("GGGGG",we,ge),Xe("ggggg",we,ge),Ie(["gggg","ggggg","GGGG","GGGGG"],(function(e,t,o,i){t[i.substr(0,2)]=be(e)})),Ie(["gg","GG"],(function(e,t,o,i){t[i]=n.parseTwoDigitYear(e)})),I("Q",0,"Qo","quarter"),ie("quarter","Q"),se("quarter",7),Xe("Q",Oe),Pe("Q",(function(e,t){t[He]=3*(be(e)-1)})),I("D",["DD",2],"Do","date"),ie("date","D"),se("date",9),Xe("D",qe),Xe("DD",qe,fe),Xe("Do",(function(e,t){return e?t._dayOfMonthOrdinalParse||t._ordinalParse:t._dayOfMonthOrdinalParseLenient})),Pe(["D","DD"],Ue),Pe("Do",(function(e,t){t[Ue]=be(e.match(qe)[0])}));var tr=de("Date",!0);function or(e){var t=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return null==e?t:this.add(e-t,"d")}I("DDD",["DDDD",3],"DDDo","dayOfYear"),ie("dayOfYear","DDD"),se("dayOfYear",4),Xe("DDD",xe),Xe("DDDD",Ae),Pe(["DDD","DDDD"],(function(e,t,o){o._dayOfYear=be(e)})),I("m",["mm",2],0,"minute"),ie("minute","m"),se("minute",14),Xe("m",qe),Xe("mm",qe,fe),Pe(["m","mm"],Ge);var ir=de("Minutes",!1);I("s",["ss",2],0,"second"),ie("second","s"),se("second",15),Xe("s",qe),Xe("ss",qe,fe),Pe(["s","ss"],Ze);var nr,rr,ar=de("Seconds",!1);for(I("S",0,0,(function(){return~~(this.millisecond()/100)})),I(0,["SS",2],0,(function(){return~~(this.millisecond()/10)})),I(0,["SSS",3],0,"millisecond"),I(0,["SSSS",4],0,(function(){return 10*this.millisecond()})),I(0,["SSSSS",5],0,(function(){return 100*this.millisecond()})),I(0,["SSSSSS",6],0,(function(){return 1e3*this.millisecond()})),I(0,["SSSSSSS",7],0,(function(){return 1e4*this.millisecond()})),I(0,["SSSSSSSS",8],0,(function(){return 1e5*this.millisecond()})),I(0,["SSSSSSSSS",9],0,(function(){return 1e6*this.millisecond()})),ie("millisecond","ms"),se("millisecond",16),Xe("S",xe,Oe),Xe("SS",xe,fe),Xe("SSS",xe,Ae),nr="SSSS";nr.length<=9;nr+="S")Xe(nr,Le);function sr(e,t){t[$e]=be(1e3*("0."+e))}for(nr="S";nr.length<=9;nr+="S")Pe(nr,sr);function pr(){return this._isUTC?"UTC":""}function cr(){return this._isUTC?"Coordinated Universal Time":""}rr=de("Milliseconds",!1),I("z",0,0,"zoneAbbr"),I("zz",0,0,"zoneName");var lr=q.prototype;function br(e){return $o(1e3*e)}function dr(){return $o.apply(null,arguments).parseZone()}function ur(e){return e}lr.add=Xi,lr.calendar=ji,lr.clone=Fi,lr.diff=Ki,lr.endOf=fn,lr.format=on,lr.from=nn,lr.fromNow=rn,lr.to=an,lr.toNow=sn,lr.get=ze,lr.invalidAt=wn,lr.isAfter=Hi,lr.isBefore=Ui,lr.isBetween=Vi,lr.isSame=Gi,lr.isSameOrAfter=Zi,lr.isSameOrBefore=$i,lr.isValid=xn,lr.lang=cn,lr.locale=pn,lr.localeData=ln,lr.max=Jo,lr.min=Ko,lr.parsingFlags=Wn,lr.set=me,lr.startOf=On,lr.subtract=Ei,lr.toArray=qn,lr.toObject=yn,lr.toDate=gn,lr.toISOString=en,lr.inspect=tn,"undefined"!=typeof Symbol&&null!=Symbol.for&&(lr[Symbol.for("nodejs.util.inspect.custom")]=function(){return"Moment<"+this.format()+">"}),lr.toJSON=vn,lr.toString=Qi,lr.unix=_n,lr.valueOf=An,lr.creationData=Ln,lr.eraName=Bn,lr.eraNarrow=Sn,lr.eraAbbr=Xn,lr.eraYear=En,lr.year=ht,lr.isLeapYear=Ot,lr.weekYear=Un,lr.isoWeekYear=Vn,lr.quarter=lr.quarters=er,lr.month=bt,lr.daysInMonth=dt,lr.week=lr.weeks=Lt,lr.isoWeek=lr.isoWeeks=Rt,lr.weeksInYear=$n,lr.weeksInWeekYear=Kn,lr.isoWeeksInYear=Gn,lr.isoWeeksInISOWeekYear=Zn,lr.date=tr,lr.day=lr.days=Ht,lr.weekday=Ut,lr.isoWeekday=Vt,lr.dayOfYear=or,lr.hour=lr.hours=no,lr.minute=lr.minutes=ir,lr.second=lr.seconds=ar,lr.millisecond=lr.milliseconds=rr,lr.utcOffset=mi,lr.utc=Oi,lr.local=fi,lr.parseZone=Ai,lr.hasAlignedHourOffset=_i,lr.isDST=gi,lr.isLocal=yi,lr.isUtcOffset=vi,lr.isUtc=xi,lr.isUTC=xi,lr.zoneAbbr=pr,lr.zoneName=cr,lr.dates=x("dates accessor is deprecated. Use date instead.",tr),lr.months=x("months accessor is deprecated. Use month instead",bt),lr.years=x("years accessor is deprecated. Use year instead",ht),lr.zone=x("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",hi),lr.isDSTShifted=x("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",qi);var Mr=B.prototype;function zr(e,t,o,i){var n=fo(),r=z().set(i,t);return n[o](r,e)}function mr(e,t,o){if(b(e)&&(t=e,e=void 0),e=e||"",null!=t)return zr(e,t,o,"month");var i,n=[];for(i=0;i<12;i++)n[i]=zr(e,i,o,"month");return n}function hr(e,t,o,i){"boolean"==typeof e?(b(t)&&(o=t,t=void 0),t=t||""):(o=t=e,e=!1,b(t)&&(o=t,t=void 0),t=t||"");var n,r=fo(),a=e?r._week.dow:0,s=[];if(null!=o)return zr(t,(o+a)%7,i,"day");for(n=0;n<7;n++)s[n]=zr(t,(n+a)%7,i,"day");return s}function Or(e,t){return mr(e,t,"months")}function fr(e,t){return mr(e,t,"monthsShort")}function Ar(e,t,o){return hr(e,t,o,"weekdays")}function _r(e,t,o){return hr(e,t,o,"weekdaysShort")}function gr(e,t,o){return hr(e,t,o,"weekdaysMin")}Mr.calendar=X,Mr.longDateFormat=V,Mr.invalidDate=Z,Mr.ordinal=J,Mr.preparse=ur,Mr.postformat=ur,Mr.relativeTime=ee,Mr.pastFuture=te,Mr.set=T,Mr.eras=Rn,Mr.erasParse=Tn,Mr.erasConvertYear=kn,Mr.erasAbbrRegex=Cn,Mr.erasNameRegex=Dn,Mr.erasNarrowRegex=Nn,Mr.months=at,Mr.monthsShort=st,Mr.monthsParse=ct,Mr.monthsRegex=Mt,Mr.monthsShortRegex=ut,Mr.week=vt,Mr.firstDayOfYear=wt,Mr.firstDayOfWeek=Wt,Mr.weekdays=Pt,Mr.weekdaysMin=Yt,Mr.weekdaysShort=It,Mr.weekdaysParse=Ft,Mr.weekdaysRegex=Gt,Mr.weekdaysShortRegex=Zt,Mr.weekdaysMinRegex=$t,Mr.isPM=oo,Mr.meridiem=ro,mo("en",{eras:[{since:"0001-01-01",until:1/0,offset:1,name:"Anno Domini",narrow:"AD",abbr:"AD"},{since:"0000-12-31",until:-1/0,offset:1,name:"Before Christ",narrow:"BC",abbr:"BC"}],dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(e){var t=e%10;return e+(1===be(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th")}}),n.lang=x("moment.lang is deprecated. Use moment.locale instead.",mo),n.langData=x("moment.langData is deprecated. Use moment.localeData instead.",fo);var qr=Math.abs;function yr(){var e=this._data;return this._milliseconds=qr(this._milliseconds),this._days=qr(this._days),this._months=qr(this._months),e.milliseconds=qr(e.milliseconds),e.seconds=qr(e.seconds),e.minutes=qr(e.minutes),e.hours=qr(e.hours),e.months=qr(e.months),e.years=qr(e.years),this}function vr(e,t,o,i){var n=Li(t,o);return e._milliseconds+=i*n._milliseconds,e._days+=i*n._days,e._months+=i*n._months,e._bubble()}function xr(e,t){return vr(this,e,t,1)}function Wr(e,t){return vr(this,e,t,-1)}function wr(e){return e<0?Math.floor(e):Math.ceil(e)}function Lr(){var e,t,o,i,n,r=this._milliseconds,a=this._days,s=this._months,p=this._data;return r>=0&&a>=0&&s>=0||r<=0&&a<=0&&s<=0||(r+=864e5*wr(Tr(s)+a),a=0,s=0),p.milliseconds=r%1e3,e=le(r/1e3),p.seconds=e%60,t=le(e/60),p.minutes=t%60,o=le(t/60),p.hours=o%24,a+=le(o/24),s+=n=le(Rr(a)),a-=wr(Tr(n)),i=le(s/12),s%=12,p.days=a,p.months=s,p.years=i,this}function Rr(e){return 4800*e/146097}function Tr(e){return 146097*e/4800}function kr(e){if(!this.isValid())return NaN;var t,o,i=this._milliseconds;if("month"===(e=ne(e))||"quarter"===e||"year"===e)switch(t=this._days+i/864e5,o=this._months+Rr(t),e){case"month":return o;case"quarter":return o/3;case"year":return o/12}else switch(t=this._days+Math.round(Tr(this._months)),e){case"week":return t/7+i/6048e5;case"day":return t+i/864e5;case"hour":return 24*t+i/36e5;case"minute":return 1440*t+i/6e4;case"second":return 86400*t+i/1e3;case"millisecond":return Math.floor(864e5*t)+i;default:throw new Error("Unknown unit "+e)}}function Br(){return this.isValid()?this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*be(this._months/12):NaN}function Sr(e){return function(){return this.as(e)}}var Xr=Sr("ms"),Er=Sr("s"),Dr=Sr("m"),Cr=Sr("h"),Nr=Sr("d"),Pr=Sr("w"),Ir=Sr("M"),Yr=Sr("Q"),jr=Sr("y");function Fr(){return Li(this)}function Hr(e){return e=ne(e),this.isValid()?this[e+"s"]():NaN}function Ur(e){return function(){return this.isValid()?this._data[e]:NaN}}var Vr=Ur("milliseconds"),Gr=Ur("seconds"),Zr=Ur("minutes"),$r=Ur("hours"),Kr=Ur("days"),Jr=Ur("months"),Qr=Ur("years");function ea(){return le(this.days()/7)}var ta=Math.round,oa={ss:44,s:45,m:45,h:22,d:26,w:null,M:11};function ia(e,t,o,i,n){return n.relativeTime(t||1,!!o,e,i)}function na(e,t,o,i){var n=Li(e).abs(),r=ta(n.as("s")),a=ta(n.as("m")),s=ta(n.as("h")),p=ta(n.as("d")),c=ta(n.as("M")),l=ta(n.as("w")),b=ta(n.as("y")),d=r<=o.ss&&["s",r]||r0,d[4]=i,ia.apply(null,d)}function ra(e){return void 0===e?ta:"function"==typeof e&&(ta=e,!0)}function aa(e,t){return void 0!==oa[e]&&(void 0===t?oa[e]:(oa[e]=t,"s"===e&&(oa.ss=t-1),!0))}function sa(e,t){if(!this.isValid())return this.localeData().invalidDate();var o,i,n=!1,r=oa;return"object"==typeof e&&(t=e,e=!1),"boolean"==typeof e&&(n=e),"object"==typeof t&&(r=Object.assign({},oa,t),null!=t.s&&null==t.ss&&(r.ss=t.s-1)),i=na(this,!n,r,o=this.localeData()),n&&(i=o.pastFuture(+this,i)),o.postformat(i)}var pa=Math.abs;function ca(e){return(e>0)-(e<0)||+e}function la(){if(!this.isValid())return this.localeData().invalidDate();var e,t,o,i,n,r,a,s,p=pa(this._milliseconds)/1e3,c=pa(this._days),l=pa(this._months),b=this.asSeconds();return b?(e=le(p/60),t=le(e/60),p%=60,e%=60,o=le(l/12),l%=12,i=p?p.toFixed(3).replace(/\.?0+$/,""):"",n=b<0?"-":"",r=ca(this._months)!==ca(b)?"-":"",a=ca(this._days)!==ca(b)?"-":"",s=ca(this._milliseconds)!==ca(b)?"-":"",n+"P"+(o?r+o+"Y":"")+(l?r+l+"M":"")+(c?a+c+"D":"")+(t||e||p?"T":"")+(t?s+t+"H":"")+(e?s+e+"M":"")+(p?s+i+"S":"")):"P0D"}var ba=si.prototype;return ba.isValid=ri,ba.abs=yr,ba.add=xr,ba.subtract=Wr,ba.as=kr,ba.asMilliseconds=Xr,ba.asSeconds=Er,ba.asMinutes=Dr,ba.asHours=Cr,ba.asDays=Nr,ba.asWeeks=Pr,ba.asMonths=Ir,ba.asQuarters=Yr,ba.asYears=jr,ba.valueOf=Br,ba._bubble=Lr,ba.clone=Fr,ba.get=Hr,ba.milliseconds=Vr,ba.seconds=Gr,ba.minutes=Zr,ba.hours=$r,ba.days=Kr,ba.weeks=ea,ba.months=Jr,ba.years=Qr,ba.humanize=sa,ba.toISOString=la,ba.toString=la,ba.toJSON=la,ba.locale=pn,ba.localeData=ln,ba.toIsoString=x("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",la),ba.lang=cn,I("X",0,0,"unix"),I("x",0,0,"valueOf"),Xe("x",Re),Xe("X",Be),Pe("X",(function(e,t,o){o._d=new Date(1e3*parseFloat(e))})),Pe("x",(function(e,t,o){o._d=new Date(be(e))})),n.version="2.29.4",r($o),n.fn=lr,n.min=ei,n.max=ti,n.now=oi,n.utc=z,n.unix=br,n.months=Or,n.isDate=d,n.locale=mo,n.invalid=f,n.duration=Li,n.isMoment=y,n.weekdays=Ar,n.parseZone=dr,n.localeData=fo,n.isDuration=pi,n.monthsShort=fr,n.weekdaysMin=gr,n.defineLocale=ho,n.updateLocale=Oo,n.locales=Ao,n.weekdaysShort=_r,n.normalizeUnits=ne,n.relativeTimeRounding=ra,n.relativeTimeThreshold=aa,n.calendarFormat=Yi,n.prototype=lr,n.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"GGGG-[W]WW",MONTH:"YYYY-MM"},n}()},7418:e=>{"use strict";var t=Object.getOwnPropertySymbols,o=Object.prototype.hasOwnProperty,i=Object.prototype.propertyIsEnumerable;function n(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},o=0;o<10;o++)t["_"+String.fromCharCode(o)]=o;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var i={};return"abcdefghijklmnopqrst".split("").forEach((function(e){i[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},i)).join("")}catch(e){return!1}}()?Object.assign:function(e,r){for(var a,s,p=n(e),c=1;c{var t,o,i=e.exports={};function n(){throw new Error("setTimeout has not been defined")}function r(){throw new Error("clearTimeout has not been defined")}function a(e){if(t===setTimeout)return setTimeout(e,0);if((t===n||!t)&&setTimeout)return t=setTimeout,setTimeout(e,0);try{return t(e,0)}catch(o){try{return t.call(null,e,0)}catch(o){return t.call(this,e,0)}}}!function(){try{t="function"==typeof setTimeout?setTimeout:n}catch(e){t=n}try{o="function"==typeof clearTimeout?clearTimeout:r}catch(e){o=r}}();var s,p=[],c=!1,l=-1;function b(){c&&s&&(c=!1,s.length?p=s.concat(p):l=-1,p.length&&d())}function d(){if(!c){var e=a(b);c=!0;for(var t=p.length;t;){for(s=p,p=[];++l1)for(var o=1;o{"use strict";var i=o(414);function n(){}function r(){}r.resetWarningCache=n,e.exports=function(){function e(e,t,o,n,r,a){if(a!==i){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function t(){return e}e.isRequired=e;var o={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:r,resetWarningCache:n};return o.PropTypes=o,o}},5697:(e,t,o)=>{e.exports=o(2703)()},414:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},4448:(e,t,o)=>{"use strict";var i=o(7294),n=o(7418),r=o(3840);function a(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,o=1;o