diff --git a/public/infection-map/assets/index.css b/public/infection-map/assets/index.css index cda1e19f..b1bf8bb8 100644 --- a/public/infection-map/assets/index.css +++ b/public/infection-map/assets/index.css @@ -1 +1 @@ -:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.3;font-weight:400;color-scheme:light;color:#213547;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#747bff}body{margin:0;display:flex;min-width:320px}h1{margin:0;padding:0;font-size:3.2em;line-height:1.1}button{border:1px solid #cccccc44;padding:.25em .75em;font-size:.9em;font-weight:500;font-family:inherit;cursor:pointer;transition:border-color .25s;background-color:#f9f9f9}button:hover{border-color:#646cff}#app{max-width:1280px}.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px #0000001a}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:#0000000d}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%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 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%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.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%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 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%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.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%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 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%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.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%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-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%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-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%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-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%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-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%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-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%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-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%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.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:#ffffff80;margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:#ffffff80;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%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}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:#0000000d}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%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 (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%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")}}.maplibregl-ctrl-attrib a{color:#000000bf;text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:#ffffffbf;border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:#0000000d}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px #0000001a;padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px #00000059;box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:#0006;color:#fff;display:flex;font-size:1.4em;top:0;right:0;bottom:0;left:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}.time-slider[data-v-04bdd2c0]{position:relative;background-color:#fff;display:flex;flex-direction:row;border:2px solid #4972e2;opacity:.9;height:5rem;-webkit-user-select:none;user-select:none}#dailybar[data-v-04bdd2c0]{position:absolute;top:0;bottom:0;left:0;right:0;display:flex;flex-direction:column;z-index:3;padding:4px}.labels[data-v-04bdd2c0]{font-size:.7rem;display:flex;flex-direction:row;line-height:.7rem;position:relative;width:100%;height:.6rem}.bars[data-v-04bdd2c0]{display:flex;flex-direction:row;flex:1}.week[data-v-04bdd2c0]{flex:1;background-color:#e24986;margin-right:1px;margin-top:auto;padding-bottom:1px}#dragthumb[data-v-04bdd2c0]{position:absolute;top:0;bottom:0;left:0;background-color:#8ad2f9;z-index:5;color:#000;opacity:.6;display:flex;flex-direction:row;border-radius:5px}#dragthumb[data-v-04bdd2c0]:active,#dragthumb[data-v-04bdd2c0]:hover{background-color:#0cf;cursor:grab;transition:background-color .2s,border-color .2s;opacity:.7}#dragleftie[data-v-04bdd2c0],#dragrightie[data-v-04bdd2c0]{margin:0 auto 0 0;width:4px;background-color:#218f3a;opacity:0;z-index:10}#dragthumb:hover #dragleftie[data-v-04bdd2c0],#dragthumb:hover #dragrightie[data-v-04bdd2c0]{transition:opacity .2s;opacity:1;cursor:ew-resize}#dragleftie[data-v-04bdd2c0]{border-top-left-radius:5px;border-bottom-left-radius:5px}#dragrightie[data-v-04bdd2c0]{margin:0 0 0 auto;border-top-right-radius:5px;border-bottom-right-radius:5px}.date-label[data-v-04bdd2c0]{position:absolute;top:0;bottom:0;height:2rem}:where([data-v-db21c9ed]:not(html,iframe,canvas,img,svg,video,audio):not(svg *,symbol *)){all:unset;display:revert}[data-v-db21c9ed],[data-v-db21c9ed]:before,[data-v-db21c9ed]:after{box-sizing:border-box}html[data-v-db21c9ed]{-moz-text-size-adjust:none;-webkit-text-size-adjust:none;text-size-adjust:none}a[data-v-db21c9ed],button[data-v-db21c9ed]{cursor:revert}ol[data-v-db21c9ed],ul[data-v-db21c9ed],menu[data-v-db21c9ed],summary[data-v-db21c9ed]{list-style:none}img[data-v-db21c9ed]{max-inline-size:100%;max-block-size:100%}table[data-v-db21c9ed]{border-collapse:collapse}input[data-v-db21c9ed],textarea[data-v-db21c9ed]{-webkit-user-select:auto}textarea[data-v-db21c9ed]{white-space:revert}meter[data-v-db21c9ed]{-webkit-appearance:revert;-moz-appearance:revert;appearance:revert}:where(pre[data-v-db21c9ed]){all:revert;box-sizing:border-box}[data-v-db21c9ed]::placeholder{color:unset}:where([hidden][data-v-db21c9ed]){display:none}:where([contenteditable][data-v-db21c9ed]:not([contenteditable=false])){-moz-user-modify:read-write;-webkit-user-modify:read-write;overflow-wrap:break-word;-webkit-line-break:after-white-space;-webkit-user-select:auto}:where([draggable=true][data-v-db21c9ed]){-webkit-user-drag:element}:where(dialog[data-v-db21c9ed]:modal){all:revert;box-sizing:border-box}[data-v-db21c9ed]::-webkit-details-marker{display:none}html[data-v-db21c9ed]{box-sizing:border-box}[data-v-db21c9ed],[data-v-db21c9ed]:before,[data-v-db21c9ed]:after{box-sizing:inherit}body[data-v-db21c9ed],html[data-v-db21c9ed]{height:100%;overscroll-behavior:contain}html[data-v-db21c9ed]{overflow-y:auto;color:var(--text)}b[data-v-db21c9ed]{font-weight:700}.app[data-v-db21c9ed]{position:absolute;top:0;bottom:0;left:0;right:0;margin:.5rem;padding:.5rem;background-color:#e4e4b6;display:grid;grid-template-rows:auto 1fr auto;grid-template-columns:1fr}.button-row[data-v-db21c9ed]{grid-row:1/2;grid-column:1/2;display:flex;flex-direction:row;margin-bottom:.5rem}.button-row p[data-v-db21c9ed]{font-size:1.1rem}.flex1[data-v-db21c9ed]{flex:1}#mymap[data-v-db21c9ed]{flex:1;width:100%;grid-row:2/4;grid-column:1/2}button[data-v-db21c9ed]{width:4rem;text-align:center}button.isActive[data-v-db21c9ed]{background-color:#457ec0;color:#fff;border-radius:0}.time-slider[data-v-db21c9ed]{grid-column:1/2;grid-row:3/4;z-index:2;margin:1rem 1rem 2.75rem} +:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.3;font-weight:400;color-scheme:light;color:#213547;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#747bff}body{margin:0;display:flex;min-width:320px}h1{margin:0;padding:0;font-size:3.2em;line-height:1.1}button{border:1px solid #cccccc44;padding:.25em .75em;font-size:.9em;font-weight:500;font-family:inherit;cursor:pointer;transition:border-color .25s;background-color:#f9f9f9}button:hover{border-color:#646cff}#app{max-width:1280px}.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px #0000001a}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:#0000000d}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%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 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%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.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%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 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%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.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%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 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%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.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%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-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%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-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%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-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%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-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%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-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%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-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%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.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:#ffffff80;margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:#ffffff80;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%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}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:#0000000d}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%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 (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%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")}}.maplibregl-ctrl-attrib a{color:#000000bf;text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:#ffffffbf;border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:#0000000d}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px #0000001a;padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px #00000059;box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:#0006;color:#fff;display:flex;font-size:1.4em;top:0;right:0;bottom:0;left:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}.time-slider[data-v-04bdd2c0]{position:relative;background-color:#fff;display:flex;flex-direction:row;border:2px solid #4972e2;opacity:.9;height:5rem;-webkit-user-select:none;user-select:none}#dailybar[data-v-04bdd2c0]{position:absolute;top:0;bottom:0;left:0;right:0;display:flex;flex-direction:column;z-index:3;padding:4px}.labels[data-v-04bdd2c0]{font-size:.7rem;display:flex;flex-direction:row;line-height:.7rem;position:relative;width:100%;height:.6rem}.bars[data-v-04bdd2c0]{display:flex;flex-direction:row;flex:1}.week[data-v-04bdd2c0]{flex:1;background-color:#e24986;margin-right:1px;margin-top:auto;padding-bottom:1px}#dragthumb[data-v-04bdd2c0]{position:absolute;top:0;bottom:0;left:0;background-color:#8ad2f9;z-index:5;color:#000;opacity:.6;display:flex;flex-direction:row;border-radius:5px}#dragthumb[data-v-04bdd2c0]:active,#dragthumb[data-v-04bdd2c0]:hover{background-color:#0cf;cursor:grab;transition:background-color .2s,border-color .2s;opacity:.7}#dragleftie[data-v-04bdd2c0],#dragrightie[data-v-04bdd2c0]{margin:0 auto 0 0;width:4px;background-color:#218f3a;opacity:0;z-index:10}#dragthumb:hover #dragleftie[data-v-04bdd2c0],#dragthumb:hover #dragrightie[data-v-04bdd2c0]{transition:opacity .2s;opacity:1;cursor:ew-resize}#dragleftie[data-v-04bdd2c0]{border-top-left-radius:5px;border-bottom-left-radius:5px}#dragrightie[data-v-04bdd2c0]{margin:0 0 0 auto;border-top-right-radius:5px;border-bottom-right-radius:5px}.date-label[data-v-04bdd2c0]{position:absolute;top:0;bottom:0;height:2rem}:where([data-v-8f04284c]:not(html,iframe,canvas,img,svg,video,audio):not(svg *,symbol *)){all:unset;display:revert}[data-v-8f04284c],[data-v-8f04284c]:before,[data-v-8f04284c]:after{box-sizing:border-box}html[data-v-8f04284c]{-moz-text-size-adjust:none;-webkit-text-size-adjust:none;text-size-adjust:none}a[data-v-8f04284c],button[data-v-8f04284c]{cursor:revert}ol[data-v-8f04284c],ul[data-v-8f04284c],menu[data-v-8f04284c],summary[data-v-8f04284c]{list-style:none}img[data-v-8f04284c]{max-inline-size:100%;max-block-size:100%}table[data-v-8f04284c]{border-collapse:collapse}input[data-v-8f04284c],textarea[data-v-8f04284c]{-webkit-user-select:auto}textarea[data-v-8f04284c]{white-space:revert}meter[data-v-8f04284c]{-webkit-appearance:revert;-moz-appearance:revert;appearance:revert}:where(pre[data-v-8f04284c]){all:revert;box-sizing:border-box}[data-v-8f04284c]::placeholder{color:unset}:where([hidden][data-v-8f04284c]){display:none}:where([contenteditable][data-v-8f04284c]:not([contenteditable=false])){-moz-user-modify:read-write;-webkit-user-modify:read-write;overflow-wrap:break-word;-webkit-line-break:after-white-space;-webkit-user-select:auto}:where([draggable=true][data-v-8f04284c]){-webkit-user-drag:element}:where(dialog[data-v-8f04284c]:modal){all:revert;box-sizing:border-box}[data-v-8f04284c]::-webkit-details-marker{display:none}html[data-v-8f04284c]{box-sizing:border-box}[data-v-8f04284c],[data-v-8f04284c]:before,[data-v-8f04284c]:after{box-sizing:inherit}body[data-v-8f04284c],html[data-v-8f04284c]{height:100%;overscroll-behavior:contain}html[data-v-8f04284c]{overflow-y:auto;color:var(--text)}b[data-v-8f04284c]{font-weight:700}.app[data-v-8f04284c]{position:absolute;top:0;bottom:0;left:0;right:0;margin:.5rem;padding:.5rem;background-color:#e4e4b6;display:grid;grid-template-rows:auto 1fr auto;grid-template-columns:1fr}.button-row[data-v-8f04284c]{grid-row:1/2;grid-column:1/2;display:flex;flex-direction:row;margin-bottom:.5rem}.button-row p[data-v-8f04284c]{font-size:1.1rem}.flex1[data-v-8f04284c]{flex:1}#mymap[data-v-8f04284c]{flex:1;width:100%;grid-row:2/4;grid-column:1/2}button[data-v-8f04284c]{width:4rem;text-align:center}button.isActive[data-v-8f04284c]{background-color:#457ec0;color:#fff;border-radius:0}.time-slider[data-v-8f04284c]{grid-column:1/2;grid-row:3/4;z-index:2;margin:1rem 1rem 2.75rem} diff --git a/public/infection-map/assets/index.js b/public/infection-map/assets/index.js index b661e795..7dbfa78b 100644 --- a/public/infection-map/assets/index.js +++ b/public/infection-map/assets/index.js @@ -1831,4 +1831,4 @@ uniform ${F} ${N} u_${$}; #endif `}),staticAttributes:p,staticUniforms:S}}class ca{constructor(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null}bind(o,d,p,g,y,S,A,M,k){this.context=o;let F=this.boundPaintVertexBuffers.length!==g.length;for(let N=0;!F&&N({u_matrix:b,u_texture:0,u_ele_delta:o,u_fog_matrix:d,u_fog_color:p?p.properties.get("fog-color"):c.aN.white,u_fog_ground_blend:p?p.properties.get("fog-ground-blend"):1,u_fog_ground_blend_opacity:p?p.calculateFogBlendOpacity(g):0,u_horizon_color:p?p.properties.get("horizon-color"):c.aN.white,u_horizon_fog_blend:p?p.properties.get("horizon-fog-blend"):1});function ua(b){const o=[];for(let d=0;d({u_depth:new c.aI(Me,Ve.u_depth),u_terrain:new c.aI(Me,Ve.u_terrain),u_terrain_dim:new c.aJ(Me,Ve.u_terrain_dim),u_terrain_matrix:new c.aK(Me,Ve.u_terrain_matrix),u_terrain_unpack:new c.aL(Me,Ve.u_terrain_unpack),u_terrain_exaggeration:new c.aJ(Me,Ve.u_terrain_exaggeration)}))(o,Ie),this.binderUniforms=p?p.getUniforms(o,Ie):[]}draw(o,d,p,g,y,S,A,M,k,F,N,$,X,Q,re,se,ae,me){const te=o.gl;if(this.failedToCreate)return;if(o.program.set(this.program),o.setDepthMode(p),o.setStencilMode(g),o.setColorMode(y),o.setCullFace(S),M){o.activeTexture.set(te.TEXTURE2),te.bindTexture(te.TEXTURE_2D,M.depthTexture),o.activeTexture.set(te.TEXTURE3),te.bindTexture(te.TEXTURE_2D,M.texture);for(const Ie in this.terrainUniforms)this.terrainUniforms[Ie].set(M[Ie])}for(const Ie in this.fixedUniforms)this.fixedUniforms[Ie].set(A[Ie]);re&&re.setUniforms(o,this.binderUniforms,X,{zoom:Q});let ve=0;switch(d){case te.LINES:ve=2;break;case te.TRIANGLES:ve=3;break;case te.LINE_STRIP:ve=1}for(const Ie of $.get()){const Me=Ie.vaos||(Ie.vaos={});(Me[k]||(Me[k]=new ca)).bind(o,this,F,re?re.getPaintVertexBuffers():[],N,Ie.vertexOffset,se,ae,me),te.drawElements(d,Ie.primitiveLength*ve,te.UNSIGNED_SHORT,Ie.primitiveOffset*ve*2)}}}function G(b,o,d){const p=1/Ut(d,1,o.transform.tileZoom),g=Math.pow(2,d.tileID.overscaledZ),y=d.tileSize*Math.pow(2,o.transform.tileZoom)/g,S=y*(d.tileID.canonical.x+d.tileID.wrap*g),A=y*d.tileID.canonical.y;return{u_image:0,u_texsize:d.imageAtlasTexture.size,u_scale:[p,b.fromScale,b.toScale],u_fade:b.t,u_pixel_coord_upper:[S>>16,A>>16],u_pixel_coord_lower:[65535&S,65535&A]}}const ge=(b,o,d,p)=>{const g=o.style.light,y=g.properties.get("position"),S=[y.x,y.y,y.z],A=function(){var k=new c.A(9);return c.A!=Float32Array&&(k[1]=0,k[2]=0,k[3]=0,k[5]=0,k[6]=0,k[7]=0),k[0]=1,k[4]=1,k[8]=1,k}();g.properties.get("anchor")==="viewport"&&function(k,F){var N=Math.sin(F),$=Math.cos(F);k[0]=$,k[1]=N,k[2]=0,k[3]=-N,k[4]=$,k[5]=0,k[6]=0,k[7]=0,k[8]=1}(A,-o.transform.angle),function(k,F,N){var $=F[0],X=F[1],Q=F[2];k[0]=$*N[0]+X*N[3]+Q*N[6],k[1]=$*N[1]+X*N[4]+Q*N[7],k[2]=$*N[2]+X*N[5]+Q*N[8]}(S,S,A);const M=g.properties.get("color");return{u_matrix:b,u_lightpos:S,u_lightintensity:g.properties.get("intensity"),u_lightcolor:[M.r,M.g,M.b],u_vertical_gradient:+d,u_opacity:p}},De=(b,o,d,p,g,y,S)=>c.e(ge(b,o,d,p),G(y,o,S),{u_height_factor:-Math.pow(2,g.overscaledZ)/S.tileSize/8}),Ye=b=>({u_matrix:b}),_t=(b,o,d,p)=>c.e(Ye(b),G(d,o,p)),Kt=(b,o)=>({u_matrix:b,u_world:o}),gs=(b,o,d,p,g)=>c.e(_t(b,o,d,p),{u_world:g}),ms=(b,o,d,p)=>{const g=b.transform;let y,S;if(p.paint.get("circle-pitch-alignment")==="map"){const A=Ut(d,1,g.zoom);y=!0,S=[A,A]}else y=!1,S=g.pixelsToGLUnits;return{u_camera_to_center_distance:g.cameraToCenterDistance,u_scale_with_map:+(p.paint.get("circle-pitch-scale")==="map"),u_matrix:b.translatePosMatrix(o.posMatrix,d,p.paint.get("circle-translate"),p.paint.get("circle-translate-anchor")),u_pitch_with_map:+y,u_device_pixel_ratio:b.pixelRatio,u_extrude_scale:S}},Bs=(b,o,d)=>({u_matrix:b,u_inv_matrix:o,u_camera_to_center_distance:d.cameraToCenterDistance,u_viewport_size:[d.width,d.height]}),ws=(b,o,d=1)=>({u_matrix:b,u_color:o,u_overlay:0,u_overlay_scale:d}),ec=b=>({u_matrix:b}),Dn=(b,o,d,p)=>({u_matrix:b,u_extrude_scale:Ut(o,1,d),u_intensity:p});function Fn(b,o){const d=Math.pow(2,o.canonical.z),p=o.canonical.y;return[new c.Z(0,p/d).toLngLat().lat,new c.Z(0,(p+1)/d).toLngLat().lat]}const tc=(b,o,d,p)=>{const g=b.transform;return{u_matrix:_g(b,o,d,p),u_ratio:1/Ut(o,1,g.zoom),u_device_pixel_ratio:b.pixelRatio,u_units_to_pixels:[1/g.pixelsToGLUnits[0],1/g.pixelsToGLUnits[1]]}},yu=(b,o,d,p,g)=>c.e(tc(b,o,d,g),{u_image:0,u_image_height:p}),gg=(b,o,d,p,g)=>{const y=b.transform,S=ha(o,y);return{u_matrix:_g(b,o,d,g),u_texsize:o.imageAtlasTexture.size,u_ratio:1/Ut(o,1,y.zoom),u_device_pixel_ratio:b.pixelRatio,u_image:0,u_scale:[S,p.fromScale,p.toScale],u_fade:p.t,u_units_to_pixels:[1/y.pixelsToGLUnits[0],1/y.pixelsToGLUnits[1]]}},mg=(b,o,d,p,g,y)=>{const S=b.lineAtlas,A=ha(o,b.transform),M=d.layout.get("line-cap")==="round",k=S.getDash(p.from,M),F=S.getDash(p.to,M),N=k.width*g.fromScale,$=F.width*g.toScale;return c.e(tc(b,o,d,y),{u_patternscale_a:[A/N,-k.height/2],u_patternscale_b:[A/$,-F.height/2],u_sdfgamma:S.width/(256*Math.min(N,$)*b.pixelRatio)/2,u_image:0,u_tex_y_a:k.y,u_tex_y_b:F.y,u_mix:g.t})};function ha(b,o){return 1/Ut(b,1,o.tileZoom)}function _g(b,o,d,p){return b.translatePosMatrix(p?p.posMatrix:o.tileID.posMatrix,o,d.paint.get("line-translate"),d.paint.get("line-translate-anchor"))}const V0=(b,o,d,p,g)=>{return{u_matrix:b,u_tl_parent:o,u_scale_parent:d,u_buffer_scale:1,u_fade_t:p.mix,u_opacity:p.opacity*g.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:g.paint.get("raster-brightness-min"),u_brightness_high:g.paint.get("raster-brightness-max"),u_saturation_factor:(S=g.paint.get("raster-saturation"),S>0?1-1/(1.001-S):-S),u_contrast_factor:(y=g.paint.get("raster-contrast"),y>0?1/(1-y):1+y),u_spin_weights:j0(g.paint.get("raster-hue-rotate"))};var y,S};function j0(b){b*=Math.PI/180;const o=Math.sin(b),d=Math.cos(b);return[(2*d+1)/3,(-Math.sqrt(3)*o-d+1)/3,(Math.sqrt(3)*o-d+1)/3]}const yg=(b,o,d,p,g,y,S,A,M,k,F,N,$,X)=>{const Q=S.transform;return{u_is_size_zoom_constant:+(b==="constant"||b==="source"),u_is_size_feature_constant:+(b==="constant"||b==="camera"),u_size_t:o?o.uSizeT:0,u_size:o?o.uSize:0,u_camera_to_center_distance:Q.cameraToCenterDistance,u_pitch:Q.pitch/360*2*Math.PI,u_rotate_symbol:+d,u_aspect_ratio:Q.width/Q.height,u_fade_change:S.options.fadeDuration?S.symbolFadeChange:1,u_matrix:A,u_label_plane_matrix:M,u_coord_matrix:k,u_is_text:+N,u_pitch_with_map:+p,u_is_along_line:g,u_is_variable_anchor:y,u_texsize:$,u_texture:0,u_translation:F,u_pitched_scale:X}},bg=(b,o,d,p,g,y,S,A,M,k,F,N,$,X,Q)=>{const re=S.transform;return c.e(yg(b,o,d,p,g,y,S,A,M,k,F,N,$,Q),{u_gamma_scale:p?Math.cos(re._pitch)*re.cameraToCenterDistance:1,u_device_pixel_ratio:S.pixelRatio,u_is_halo:+X})},$0=(b,o,d,p,g,y,S,A,M,k,F,N,$,X)=>c.e(bg(b,o,d,p,g,y,S,A,M,k,F,!0,N,!0,X),{u_texsize_icon:$,u_texture_icon:1}),bu=(b,o,d)=>({u_matrix:b,u_opacity:o,u_color:d}),Id=(b,o,d,p,g,y)=>c.e(function(S,A,M,k){const F=M.imageManager.getPattern(S.from.toString()),N=M.imageManager.getPattern(S.to.toString()),{width:$,height:X}=M.imageManager.getPixelSize(),Q=Math.pow(2,k.tileID.overscaledZ),re=k.tileSize*Math.pow(2,M.transform.tileZoom)/Q,se=re*(k.tileID.canonical.x+k.tileID.wrap*Q),ae=re*k.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:F.tl,u_pattern_br_a:F.br,u_pattern_tl_b:N.tl,u_pattern_br_b:N.br,u_texsize:[$,X],u_mix:A.t,u_pattern_size_a:F.displaySize,u_pattern_size_b:N.displaySize,u_scale_a:A.fromScale,u_scale_b:A.toScale,u_tile_units_to_pixels:1/Ut(k,1,M.transform.tileZoom),u_pixel_coord_upper:[se>>16,ae>>16],u_pixel_coord_lower:[65535&se,65535&ae]}}(p,y,d,g),{u_matrix:b,u_opacity:o}),vu={fillExtrusion:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_lightpos:new c.aO(b,o.u_lightpos),u_lightintensity:new c.aJ(b,o.u_lightintensity),u_lightcolor:new c.aO(b,o.u_lightcolor),u_vertical_gradient:new c.aJ(b,o.u_vertical_gradient),u_opacity:new c.aJ(b,o.u_opacity)}),fillExtrusionPattern:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_lightpos:new c.aO(b,o.u_lightpos),u_lightintensity:new c.aJ(b,o.u_lightintensity),u_lightcolor:new c.aO(b,o.u_lightcolor),u_vertical_gradient:new c.aJ(b,o.u_vertical_gradient),u_height_factor:new c.aJ(b,o.u_height_factor),u_image:new c.aI(b,o.u_image),u_texsize:new c.aP(b,o.u_texsize),u_pixel_coord_upper:new c.aP(b,o.u_pixel_coord_upper),u_pixel_coord_lower:new c.aP(b,o.u_pixel_coord_lower),u_scale:new c.aO(b,o.u_scale),u_fade:new c.aJ(b,o.u_fade),u_opacity:new c.aJ(b,o.u_opacity)}),fill:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix)}),fillPattern:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_image:new c.aI(b,o.u_image),u_texsize:new c.aP(b,o.u_texsize),u_pixel_coord_upper:new c.aP(b,o.u_pixel_coord_upper),u_pixel_coord_lower:new c.aP(b,o.u_pixel_coord_lower),u_scale:new c.aO(b,o.u_scale),u_fade:new c.aJ(b,o.u_fade)}),fillOutline:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_world:new c.aP(b,o.u_world)}),fillOutlinePattern:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_world:new c.aP(b,o.u_world),u_image:new c.aI(b,o.u_image),u_texsize:new c.aP(b,o.u_texsize),u_pixel_coord_upper:new c.aP(b,o.u_pixel_coord_upper),u_pixel_coord_lower:new c.aP(b,o.u_pixel_coord_lower),u_scale:new c.aO(b,o.u_scale),u_fade:new c.aJ(b,o.u_fade)}),circle:(b,o)=>({u_camera_to_center_distance:new c.aJ(b,o.u_camera_to_center_distance),u_scale_with_map:new c.aI(b,o.u_scale_with_map),u_pitch_with_map:new c.aI(b,o.u_pitch_with_map),u_extrude_scale:new c.aP(b,o.u_extrude_scale),u_device_pixel_ratio:new c.aJ(b,o.u_device_pixel_ratio),u_matrix:new c.aK(b,o.u_matrix)}),collisionBox:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_pixel_extrude_scale:new c.aP(b,o.u_pixel_extrude_scale)}),collisionCircle:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_inv_matrix:new c.aK(b,o.u_inv_matrix),u_camera_to_center_distance:new c.aJ(b,o.u_camera_to_center_distance),u_viewport_size:new c.aP(b,o.u_viewport_size)}),debug:(b,o)=>({u_color:new c.aM(b,o.u_color),u_matrix:new c.aK(b,o.u_matrix),u_overlay:new c.aI(b,o.u_overlay),u_overlay_scale:new c.aJ(b,o.u_overlay_scale)}),clippingMask:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix)}),heatmap:(b,o)=>({u_extrude_scale:new c.aJ(b,o.u_extrude_scale),u_intensity:new c.aJ(b,o.u_intensity),u_matrix:new c.aK(b,o.u_matrix)}),heatmapTexture:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_world:new c.aP(b,o.u_world),u_image:new c.aI(b,o.u_image),u_color_ramp:new c.aI(b,o.u_color_ramp),u_opacity:new c.aJ(b,o.u_opacity)}),hillshade:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_image:new c.aI(b,o.u_image),u_latrange:new c.aP(b,o.u_latrange),u_light:new c.aP(b,o.u_light),u_shadow:new c.aM(b,o.u_shadow),u_highlight:new c.aM(b,o.u_highlight),u_accent:new c.aM(b,o.u_accent)}),hillshadePrepare:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_image:new c.aI(b,o.u_image),u_dimension:new c.aP(b,o.u_dimension),u_zoom:new c.aJ(b,o.u_zoom),u_unpack:new c.aL(b,o.u_unpack)}),line:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_ratio:new c.aJ(b,o.u_ratio),u_device_pixel_ratio:new c.aJ(b,o.u_device_pixel_ratio),u_units_to_pixels:new c.aP(b,o.u_units_to_pixels)}),lineGradient:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_ratio:new c.aJ(b,o.u_ratio),u_device_pixel_ratio:new c.aJ(b,o.u_device_pixel_ratio),u_units_to_pixels:new c.aP(b,o.u_units_to_pixels),u_image:new c.aI(b,o.u_image),u_image_height:new c.aJ(b,o.u_image_height)}),linePattern:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_texsize:new c.aP(b,o.u_texsize),u_ratio:new c.aJ(b,o.u_ratio),u_device_pixel_ratio:new c.aJ(b,o.u_device_pixel_ratio),u_image:new c.aI(b,o.u_image),u_units_to_pixels:new c.aP(b,o.u_units_to_pixels),u_scale:new c.aO(b,o.u_scale),u_fade:new c.aJ(b,o.u_fade)}),lineSDF:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_ratio:new c.aJ(b,o.u_ratio),u_device_pixel_ratio:new c.aJ(b,o.u_device_pixel_ratio),u_units_to_pixels:new c.aP(b,o.u_units_to_pixels),u_patternscale_a:new c.aP(b,o.u_patternscale_a),u_patternscale_b:new c.aP(b,o.u_patternscale_b),u_sdfgamma:new c.aJ(b,o.u_sdfgamma),u_image:new c.aI(b,o.u_image),u_tex_y_a:new c.aJ(b,o.u_tex_y_a),u_tex_y_b:new c.aJ(b,o.u_tex_y_b),u_mix:new c.aJ(b,o.u_mix)}),raster:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_tl_parent:new c.aP(b,o.u_tl_parent),u_scale_parent:new c.aJ(b,o.u_scale_parent),u_buffer_scale:new c.aJ(b,o.u_buffer_scale),u_fade_t:new c.aJ(b,o.u_fade_t),u_opacity:new c.aJ(b,o.u_opacity),u_image0:new c.aI(b,o.u_image0),u_image1:new c.aI(b,o.u_image1),u_brightness_low:new c.aJ(b,o.u_brightness_low),u_brightness_high:new c.aJ(b,o.u_brightness_high),u_saturation_factor:new c.aJ(b,o.u_saturation_factor),u_contrast_factor:new c.aJ(b,o.u_contrast_factor),u_spin_weights:new c.aO(b,o.u_spin_weights)}),symbolIcon:(b,o)=>({u_is_size_zoom_constant:new c.aI(b,o.u_is_size_zoom_constant),u_is_size_feature_constant:new c.aI(b,o.u_is_size_feature_constant),u_size_t:new c.aJ(b,o.u_size_t),u_size:new c.aJ(b,o.u_size),u_camera_to_center_distance:new c.aJ(b,o.u_camera_to_center_distance),u_pitch:new c.aJ(b,o.u_pitch),u_rotate_symbol:new c.aI(b,o.u_rotate_symbol),u_aspect_ratio:new c.aJ(b,o.u_aspect_ratio),u_fade_change:new c.aJ(b,o.u_fade_change),u_matrix:new c.aK(b,o.u_matrix),u_label_plane_matrix:new c.aK(b,o.u_label_plane_matrix),u_coord_matrix:new c.aK(b,o.u_coord_matrix),u_is_text:new c.aI(b,o.u_is_text),u_pitch_with_map:new c.aI(b,o.u_pitch_with_map),u_is_along_line:new c.aI(b,o.u_is_along_line),u_is_variable_anchor:new c.aI(b,o.u_is_variable_anchor),u_texsize:new c.aP(b,o.u_texsize),u_texture:new c.aI(b,o.u_texture),u_translation:new c.aP(b,o.u_translation),u_pitched_scale:new c.aJ(b,o.u_pitched_scale)}),symbolSDF:(b,o)=>({u_is_size_zoom_constant:new c.aI(b,o.u_is_size_zoom_constant),u_is_size_feature_constant:new c.aI(b,o.u_is_size_feature_constant),u_size_t:new c.aJ(b,o.u_size_t),u_size:new c.aJ(b,o.u_size),u_camera_to_center_distance:new c.aJ(b,o.u_camera_to_center_distance),u_pitch:new c.aJ(b,o.u_pitch),u_rotate_symbol:new c.aI(b,o.u_rotate_symbol),u_aspect_ratio:new c.aJ(b,o.u_aspect_ratio),u_fade_change:new c.aJ(b,o.u_fade_change),u_matrix:new c.aK(b,o.u_matrix),u_label_plane_matrix:new c.aK(b,o.u_label_plane_matrix),u_coord_matrix:new c.aK(b,o.u_coord_matrix),u_is_text:new c.aI(b,o.u_is_text),u_pitch_with_map:new c.aI(b,o.u_pitch_with_map),u_is_along_line:new c.aI(b,o.u_is_along_line),u_is_variable_anchor:new c.aI(b,o.u_is_variable_anchor),u_texsize:new c.aP(b,o.u_texsize),u_texture:new c.aI(b,o.u_texture),u_gamma_scale:new c.aJ(b,o.u_gamma_scale),u_device_pixel_ratio:new c.aJ(b,o.u_device_pixel_ratio),u_is_halo:new c.aI(b,o.u_is_halo),u_translation:new c.aP(b,o.u_translation),u_pitched_scale:new c.aJ(b,o.u_pitched_scale)}),symbolTextAndIcon:(b,o)=>({u_is_size_zoom_constant:new c.aI(b,o.u_is_size_zoom_constant),u_is_size_feature_constant:new c.aI(b,o.u_is_size_feature_constant),u_size_t:new c.aJ(b,o.u_size_t),u_size:new c.aJ(b,o.u_size),u_camera_to_center_distance:new c.aJ(b,o.u_camera_to_center_distance),u_pitch:new c.aJ(b,o.u_pitch),u_rotate_symbol:new c.aI(b,o.u_rotate_symbol),u_aspect_ratio:new c.aJ(b,o.u_aspect_ratio),u_fade_change:new c.aJ(b,o.u_fade_change),u_matrix:new c.aK(b,o.u_matrix),u_label_plane_matrix:new c.aK(b,o.u_label_plane_matrix),u_coord_matrix:new c.aK(b,o.u_coord_matrix),u_is_text:new c.aI(b,o.u_is_text),u_pitch_with_map:new c.aI(b,o.u_pitch_with_map),u_is_along_line:new c.aI(b,o.u_is_along_line),u_is_variable_anchor:new c.aI(b,o.u_is_variable_anchor),u_texsize:new c.aP(b,o.u_texsize),u_texsize_icon:new c.aP(b,o.u_texsize_icon),u_texture:new c.aI(b,o.u_texture),u_texture_icon:new c.aI(b,o.u_texture_icon),u_gamma_scale:new c.aJ(b,o.u_gamma_scale),u_device_pixel_ratio:new c.aJ(b,o.u_device_pixel_ratio),u_is_halo:new c.aI(b,o.u_is_halo),u_translation:new c.aP(b,o.u_translation),u_pitched_scale:new c.aJ(b,o.u_pitched_scale)}),background:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_opacity:new c.aJ(b,o.u_opacity),u_color:new c.aM(b,o.u_color)}),backgroundPattern:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_opacity:new c.aJ(b,o.u_opacity),u_image:new c.aI(b,o.u_image),u_pattern_tl_a:new c.aP(b,o.u_pattern_tl_a),u_pattern_br_a:new c.aP(b,o.u_pattern_br_a),u_pattern_tl_b:new c.aP(b,o.u_pattern_tl_b),u_pattern_br_b:new c.aP(b,o.u_pattern_br_b),u_texsize:new c.aP(b,o.u_texsize),u_mix:new c.aJ(b,o.u_mix),u_pattern_size_a:new c.aP(b,o.u_pattern_size_a),u_pattern_size_b:new c.aP(b,o.u_pattern_size_b),u_scale_a:new c.aJ(b,o.u_scale_a),u_scale_b:new c.aJ(b,o.u_scale_b),u_pixel_coord_upper:new c.aP(b,o.u_pixel_coord_upper),u_pixel_coord_lower:new c.aP(b,o.u_pixel_coord_lower),u_tile_units_to_pixels:new c.aJ(b,o.u_tile_units_to_pixels)}),terrain:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_texture:new c.aI(b,o.u_texture),u_ele_delta:new c.aJ(b,o.u_ele_delta),u_fog_matrix:new c.aK(b,o.u_fog_matrix),u_fog_color:new c.aM(b,o.u_fog_color),u_fog_ground_blend:new c.aJ(b,o.u_fog_ground_blend),u_fog_ground_blend_opacity:new c.aJ(b,o.u_fog_ground_blend_opacity),u_horizon_color:new c.aM(b,o.u_horizon_color),u_horizon_fog_blend:new c.aJ(b,o.u_horizon_fog_blend)}),terrainDepth:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_ele_delta:new c.aJ(b,o.u_ele_delta)}),terrainCoords:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_texture:new c.aI(b,o.u_texture),u_terrain_coords_id:new c.aJ(b,o.u_terrain_coords_id),u_ele_delta:new c.aJ(b,o.u_ele_delta)}),sky:(b,o)=>({u_sky_color:new c.aM(b,o.u_sky_color),u_horizon_color:new c.aM(b,o.u_horizon_color),u_horizon:new c.aJ(b,o.u_horizon),u_sky_horizon_blend:new c.aJ(b,o.u_sky_horizon_blend)})};class Cd{constructor(o,d,p){this.context=o;const g=o.gl;this.buffer=g.createBuffer(),this.dynamicDraw=!!p,this.context.unbindVAO(),o.bindElementBuffer.set(this.buffer),g.bufferData(g.ELEMENT_ARRAY_BUFFER,d.arrayBuffer,this.dynamicDraw?g.DYNAMIC_DRAW:g.STATIC_DRAW),this.dynamicDraw||delete d.arrayBuffer}bind(){this.context.bindElementBuffer.set(this.buffer)}updateData(o){const d=this.context.gl;if(!this.dynamicDraw)throw new Error("Attempted to update data while not in dynamic mode.");this.context.unbindVAO(),this.bind(),d.bufferSubData(d.ELEMENT_ARRAY_BUFFER,0,o.arrayBuffer)}destroy(){this.buffer&&(this.context.gl.deleteBuffer(this.buffer),delete this.buffer)}}const Pd={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT",Int32:"INT",Uint32:"UNSIGNED_INT",Float32:"FLOAT"};class Br{constructor(o,d,p,g){this.length=d.length,this.attributes=p,this.itemSize=d.bytesPerElement,this.dynamicDraw=g,this.context=o;const y=o.gl;this.buffer=y.createBuffer(),o.bindVertexBuffer.set(this.buffer),y.bufferData(y.ARRAY_BUFFER,d.arrayBuffer,this.dynamicDraw?y.DYNAMIC_DRAW:y.STATIC_DRAW),this.dynamicDraw||delete d.arrayBuffer}bind(){this.context.bindVertexBuffer.set(this.buffer)}updateData(o){if(o.length!==this.length)throw new Error(`Length of new data is ${o.length}, which doesn't match current length of ${this.length}`);const d=this.context.gl;this.bind(),d.bufferSubData(d.ARRAY_BUFFER,0,o.arrayBuffer)}enableAttributes(o,d){for(let p=0;p0){const Me=c.H();c.aR(Me,te.placementInvProjMatrix,b.transform.glCoordMatrix),c.aR(Me,Me,te.placementViewportMatrix),M.push({circleArray:Ie,circleOffset:F,transform:me.posMatrix,invTransform:Me,coord:me}),k+=Ie.length/4,F=k}ve&&A.draw(y,S.LINES,Jt.disabled,ji.disabled,b.colorModeForRenderPass(),Pi.disabled,{u_matrix:me.posMatrix,u_pixel_extrude_scale:[1/(N=b.transform).width,1/N.height]},b.style.map.terrain&&b.style.map.terrain.getTerrainData(me),d.id,ve.layoutVertexBuffer,ve.indexBuffer,ve.segments,null,b.transform.zoom,null,null,ve.collisionVertexBuffer)}var N;if(!g||!M.length)return;const $=b.useProgram("collisionCircle"),X=new c.aS;X.resize(4*k),X._trim();let Q=0;for(const ae of M)for(let me=0;me=0&&(ae[te.associatedIconIndex]={shiftedAnchor:Ft,angle:Mi})}else Ct(te.numGlyphs,re)}if(k){se.clear();const me=b.icon.placedSymbolArray;for(let te=0;teb.style.map.terrain.getElevation(Je,yf,Ts):null,el=d.layout.get("text-rotation-alignment")==="map";Y(bt,Je.posMatrix,b,g,va,Ga,ae,k,el,re,Je.toUnwrapped(),Q.width,Q.height,xa,Yi)}const Ls=Je.posMatrix,br=g&&Ke||_f,Io=me||br?Ld:va,Qa=Vu,Zs=lt&&d.paint.get(g?"text-halo-width":"icon-halo-width").constantOr(1)!==0;let Ys;Ys=lt?bt.iconsInText?$0(Ft.kind,Gt,te,ae,me,br,b,Ls,Io,Qa,xa,Hs,on,ft):bg(Ft.kind,Gt,te,ae,me,br,b,Ls,Io,Qa,xa,g,Hs,!0,ft):yg(Ft.kind,Gt,te,ae,me,br,b,Ls,Io,Qa,xa,g,Hs,ft);const Ms={program:qt,buffers:Vt,uniformValues:Ys,atlasTexture:_r,atlasTextureIcon:qs,atlasInterpolation:Oi,atlasInterpolationIcon:mn,isSDF:lt,hasHalo:Zs};if(Ie&&bt.canOverlap){Me=!0;const Yi=Vt.segments.get();for(const el of Yi)ht.push({segments:new c.a0([el]),sortKey:el.sortKey,state:Ms,terrainData:ki})}else ht.push({segments:Vt.segments,sortKey:0,state:Ms,terrainData:ki})}Me&&ht.sort((Je,it)=>Je.sortKey-it.sortKey);for(const Je of ht){const it=Je.state;if($.activeTexture.set(X.TEXTURE0),it.atlasTexture.bind(it.atlasInterpolation,X.CLAMP_TO_EDGE),it.atlasTextureIcon&&($.activeTexture.set(X.TEXTURE1),it.atlasTextureIcon&&it.atlasTextureIcon.bind(it.atlasInterpolationIcon,X.CLAMP_TO_EDGE)),it.isSDF){const bt=it.uniformValues;it.hasHalo&&(bt.u_is_halo=1,fa(it.buffers,Je.segments,d,b,it.program,Ve,F,N,bt,Je.terrainData)),bt.u_is_halo=0}fa(it.buffers,Je.segments,d,b,it.program,Ve,F,N,it.uniformValues,Je.terrainData)}}function fa(b,o,d,p,g,y,S,A,M,k){const F=p.context;g.draw(F,F.gl.TRIANGLES,y,S,A,Pi.disabled,M,k,d.id,b.layoutVertexBuffer,b.indexBuffer,o,d.paint,p.transform.zoom,b.programConfigurations.get(d.id),b.dynamicLayoutVertexBuffer,b.opacityVertexBuffer)}function Nn(b,o,d,p,g){if(!d||!p||!p.imageAtlas)return;const y=p.imageAtlas.patternPositions;let S=y[d.to.toString()],A=y[d.from.toString()];if(!S&&A&&(S=A),!A&&S&&(A=S),!S||!A){const M=g.getPaintProperty(o);S=y[M],A=y[M]}S&&A&&b.setConstantPatternPositions(S,A)}function Ud(b,o,d,p,g,y,S){const A=b.context.gl,M="fill-pattern",k=d.paint.get(M),F=k&&k.constantOr(1),N=d.getCrossfadeParameters();let $,X,Q,re,se;S?(X=F&&!d.getPaintProperty("fill-outline-color")?"fillOutlinePattern":"fillOutline",$=A.LINES):(X=F?"fillPattern":"fill",$=A.TRIANGLES);const ae=k.constantOr(null);for(const me of p){const te=o.getTile(me);if(F&&!te.patternsLoaded())continue;const ve=te.getBucket(d);if(!ve)continue;const Ie=ve.programConfigurations.get(d.id),Me=b.useProgram(X,Ie),Ve=b.style.map.terrain&&b.style.map.terrain.getTerrainData(me);F&&(b.context.activeTexture.set(A.TEXTURE0),te.imageAtlasTexture.bind(A.LINEAR,A.CLAMP_TO_EDGE),Ie.updatePaintBuffers(N)),Nn(Ie,M,ae,te,d);const Ke=Ve?me:null,ht=b.translatePosMatrix(Ke?Ke.posMatrix:me.posMatrix,te,d.paint.get("fill-translate"),d.paint.get("fill-translate-anchor"));if(S){re=ve.indexBuffer2,se=ve.segments2;const ft=[A.drawingBufferWidth,A.drawingBufferHeight];Q=X==="fillOutlinePattern"&&F?gs(ht,b,N,te,ft):Kt(ht,ft)}else re=ve.indexBuffer,se=ve.segments,Q=F?_t(ht,b,N,te):Ye(ht);Me.draw(b.context,$,g,b.stencilModeForClipping(me),y,Pi.disabled,Q,Ve,d.id,ve.layoutVertexBuffer,re,se,d.paint,b.transform.zoom,Ie)}}function Iu(b,o,d,p,g,y,S){const A=b.context,M=A.gl,k="fill-extrusion-pattern",F=d.paint.get(k),N=F.constantOr(1),$=d.getCrossfadeParameters(),X=d.paint.get("fill-extrusion-opacity"),Q=F.constantOr(null);for(const re of p){const se=o.getTile(re),ae=se.getBucket(d);if(!ae)continue;const me=b.style.map.terrain&&b.style.map.terrain.getTerrainData(re),te=ae.programConfigurations.get(d.id),ve=b.useProgram(N?"fillExtrusionPattern":"fillExtrusion",te);N&&(b.context.activeTexture.set(M.TEXTURE0),se.imageAtlasTexture.bind(M.LINEAR,M.CLAMP_TO_EDGE),te.updatePaintBuffers($)),Nn(te,k,Q,se,d);const Ie=b.translatePosMatrix(re.posMatrix,se,d.paint.get("fill-extrusion-translate"),d.paint.get("fill-extrusion-translate-anchor")),Me=d.paint.get("fill-extrusion-vertical-gradient"),Ve=N?De(Ie,b,Me,X,re,$,se):ge(Ie,b,Me,X);ve.draw(A,A.gl.TRIANGLES,g,y,S,Pi.backCCW,Ve,me,d.id,ae.layoutVertexBuffer,ae.indexBuffer,ae.segments,d.paint,b.transform.zoom,te,b.style.map.terrain&&ae.centroidVertexBuffer)}}function Vd(b,o,d,p,g,y,S){const A=b.context,M=A.gl,k=d.fbo;if(!k)return;const F=b.useProgram("hillshade"),N=b.style.map.terrain&&b.style.map.terrain.getTerrainData(o);A.activeTexture.set(M.TEXTURE0),M.bindTexture(M.TEXTURE_2D,k.colorAttachment.get()),F.draw(A,M.TRIANGLES,g,y,S,Pi.disabled,(($,X,Q,re)=>{const se=Q.paint.get("hillshade-shadow-color"),ae=Q.paint.get("hillshade-highlight-color"),me=Q.paint.get("hillshade-accent-color");let te=Q.paint.get("hillshade-illumination-direction")*(Math.PI/180);Q.paint.get("hillshade-illumination-anchor")==="viewport"&&(te-=$.transform.angle);const ve=!$.options.moving;return{u_matrix:re?re.posMatrix:$.transform.calculatePosMatrix(X.tileID.toUnwrapped(),ve),u_image:0,u_latrange:Fn(0,X.tileID),u_light:[Q.paint.get("hillshade-exaggeration"),te],u_shadow:se,u_highlight:ae,u_accent:me}})(b,d,p,N?o:null),N,p.id,b.rasterBoundsBuffer,b.quadTriangleIndexBuffer,b.rasterBoundsSegments)}function pa(b,o,d,p,g,y){const S=b.context,A=S.gl,M=o.dem;if(M&&M.data){const k=M.dim,F=M.stride,N=M.getPixels();if(S.activeTexture.set(A.TEXTURE1),S.pixelStoreUnpackPremultiplyAlpha.set(!1),o.demTexture=o.demTexture||b.getTileTexture(F),o.demTexture){const X=o.demTexture;X.update(N,{premultiply:!1}),X.bind(A.NEAREST,A.CLAMP_TO_EDGE)}else o.demTexture=new ot(S,N,A.RGBA,{premultiply:!1}),o.demTexture.bind(A.NEAREST,A.CLAMP_TO_EDGE);S.activeTexture.set(A.TEXTURE0);let $=o.fbo;if(!$){const X=new ot(S,{width:k,height:k,data:null},A.RGBA);X.bind(A.LINEAR,A.CLAMP_TO_EDGE),$=o.fbo=S.createFramebuffer(k,k,!0,!1),$.colorAttachment.set(X.texture)}S.bindFramebuffer.set($.framebuffer),S.viewport.set([0,0,k,k]),b.useProgram("hillshadePrepare").draw(S,A.TRIANGLES,p,g,y,Pi.disabled,((X,Q)=>{const re=Q.stride,se=c.H();return c.aQ(se,0,c.X,-c.X,0,0,1),c.J(se,se,[0,-c.X,0]),{u_matrix:se,u_image:1,u_dimension:[re,re],u_zoom:X.overscaledZ,u_unpack:Q.getUnpackVector()}})(o.tileID,M),null,d.id,b.rasterBoundsBuffer,b.quadTriangleIndexBuffer,b.rasterBoundsSegments),o.needsHillshadePrepare=!1}}function Cu(b,o,d,p,g,y){const S=p.paint.get("raster-fade-duration");if(!y&&S>0){const A=C.now(),M=(A-b.timeAdded)/S,k=o?(A-o.timeAdded)/S:-1,F=d.getSource(),N=g.coveringZoomLevel({tileSize:F.tileSize,roundZoom:F.roundZoom}),$=!o||Math.abs(o.tileID.overscaledZ-N)>Math.abs(b.tileID.overscaledZ-N),X=$&&b.refreshedUponExpiration?1:c.ad($?M:1-k,0,1);return b.refreshedUponExpiration&&M>=1&&(b.refreshedUponExpiration=!1),o?{opacity:1,mix:1-X}:{opacity:X,mix:0}}return{opacity:1,mix:0}}const Pu=new c.aN(1,0,0,1),oc=new c.aN(0,1,0,1),Ru=new c.aN(0,0,1,1),Dg=new c.aN(1,0,1,1),Wa=new c.aN(0,1,1,1);function ga(b,o,d,p){Ha(b,0,o+d/2,b.transform.width,d,p)}function jd(b,o,d,p){Ha(b,o-d/2,0,d,b.transform.height,p)}function Ha(b,o,d,p,g,y){const S=b.context,A=S.gl;A.enable(A.SCISSOR_TEST),A.scissor(o*b.pixelRatio,d*b.pixelRatio,p*b.pixelRatio,g*b.pixelRatio),S.clear({color:y}),A.disable(A.SCISSOR_TEST)}function ai(b,o,d){const p=b.context,g=p.gl,y=d.posMatrix,S=b.useProgram("debug"),A=Jt.disabled,M=ji.disabled,k=b.colorModeForRenderPass(),F="$debug",N=b.style.map.terrain&&b.style.map.terrain.getTerrainData(d);p.activeTexture.set(g.TEXTURE0);const $=o.getTileByID(d.key).latestRawTileData,X=Math.floor(($&&$.byteLength||0)/1024),Q=o.getTile(d).tileSize,re=512/Math.min(Q,512)*(d.overscaledZ/b.transform.zoom)*.5;let se=d.canonical.toString();d.overscaledZ!==d.canonical.z&&(se+=` => ${d.overscaledZ}`),function(ae,me){ae.initDebugOverlayCanvas();const te=ae.debugOverlayCanvas,ve=ae.context.gl,Ie=ae.debugOverlayCanvas.getContext("2d");Ie.clearRect(0,0,te.width,te.height),Ie.shadowColor="white",Ie.shadowBlur=2,Ie.lineWidth=1.5,Ie.strokeStyle="white",Ie.textBaseline="top",Ie.font="bold 36px Open Sans, sans-serif",Ie.fillText(me,5,5),Ie.strokeText(me,5,5),ae.debugOverlayTexture.update(te),ae.debugOverlayTexture.bind(ve.LINEAR,ve.CLAMP_TO_EDGE)}(b,`${se} ${X}kB`),S.draw(p,g.TRIANGLES,A,M,Ti.alphaBlended,Pi.disabled,ws(y,c.aN.transparent,re),null,F,b.debugBuffer,b.quadTriangleIndexBuffer,b.debugSegments),S.draw(p,g.LINE_STRIP,A,M,k,Pi.disabled,ws(y,c.aN.red),N,F,b.debugBuffer,b.tileBorderIndexBuffer,b.debugSegments)}function ac(b,o,d){const p=b.context,g=p.gl,y=b.colorModeForRenderPass(),S=new Jt(g.LEQUAL,Jt.ReadWrite,b.depthRangeFor3D),A=b.useProgram("terrain"),M=o.getTerrainMesh();p.bindFramebuffer.set(null),p.viewport.set([0,0,b.width,b.height]);for(const k of d){const F=b.renderToTexture.getTexture(k),N=o.getTerrainData(k.tileID);p.activeTexture.set(g.TEXTURE0),g.bindTexture(g.TEXTURE_2D,F.texture);const $=b.transform.calculatePosMatrix(k.tileID.toUnwrapped()),X=o.getMeshFrameDelta(b.transform.zoom),Q=b.transform.calculateFogMatrix(k.tileID.toUnwrapped()),re=Ql($,X,Q,b.style.sky,b.transform.pitch);A.draw(p,g.TRIANGLES,S,ji.disabled,y,Pi.backCCW,re,N,"terrain",M.vertexBuffer,M.indexBuffer,M.segments)}}class Fg{constructor(o,d,p){this.vertexBuffer=o,this.indexBuffer=d,this.segments=p}destroy(){this.vertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.vertexBuffer=null,this.indexBuffer=null,this.segments=null}}class Ng{constructor(o,d){this.context=new Nd(o),this.transform=d,this._tileTextures={},this.terrainFacilitator={dirty:!0,matrix:c.ao(new Float64Array(16)),renderTime:0},this.setup(),this.numSublayers=Pt.maxUnderzooming+Pt.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new Ws}resize(o,d,p){if(this.width=Math.floor(o*p),this.height=Math.floor(d*p),this.pixelRatio=p,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(const g of this.style._order)this.style._layers[g].resize()}setup(){const o=this.context,d=new c.aX;d.emplaceBack(0,0),d.emplaceBack(c.X,0),d.emplaceBack(0,c.X),d.emplaceBack(c.X,c.X),this.tileExtentBuffer=o.createVertexBuffer(d,la.members),this.tileExtentSegments=c.a0.simpleSegment(0,0,4,2);const p=new c.aX;p.emplaceBack(0,0),p.emplaceBack(c.X,0),p.emplaceBack(0,c.X),p.emplaceBack(c.X,c.X),this.debugBuffer=o.createVertexBuffer(p,la.members),this.debugSegments=c.a0.simpleSegment(0,0,4,5);const g=new c.$;g.emplaceBack(0,0,0,0),g.emplaceBack(c.X,0,c.X,0),g.emplaceBack(0,c.X,0,c.X),g.emplaceBack(c.X,c.X,c.X,c.X),this.rasterBoundsBuffer=o.createVertexBuffer(g,Xe.members),this.rasterBoundsSegments=c.a0.simpleSegment(0,0,4,2);const y=new c.aX;y.emplaceBack(0,0),y.emplaceBack(1,0),y.emplaceBack(0,1),y.emplaceBack(1,1),this.viewportBuffer=o.createVertexBuffer(y,la.members),this.viewportSegments=c.a0.simpleSegment(0,0,4,2);const S=new c.aZ;S.emplaceBack(0),S.emplaceBack(1),S.emplaceBack(3),S.emplaceBack(2),S.emplaceBack(0),this.tileBorderIndexBuffer=o.createIndexBuffer(S);const A=new c.aY;A.emplaceBack(0,1,2),A.emplaceBack(2,1,3),this.quadTriangleIndexBuffer=o.createIndexBuffer(A);const M=this.context.gl;this.stencilClearMode=new ji({func:M.ALWAYS,mask:0},0,255,M.ZERO,M.ZERO,M.ZERO)}clearStencil(){const o=this.context,d=o.gl;this.nextStencilID=1,this.currentStencilSource=void 0;const p=c.H();c.aQ(p,0,this.width,this.height,0,0,1),c.K(p,p,[d.drawingBufferWidth,d.drawingBufferHeight,0]),this.useProgram("clippingMask").draw(o,d.TRIANGLES,Jt.disabled,this.stencilClearMode,Ti.disabled,Pi.disabled,ec(p),null,"$clipping",this.viewportBuffer,this.quadTriangleIndexBuffer,this.viewportSegments)}_renderTileClippingMasks(o,d){if(this.currentStencilSource===o.source||!o.isTileClipped()||!d||!d.length)return;this.currentStencilSource=o.source;const p=this.context,g=p.gl;this.nextStencilID+d.length>256&&this.clearStencil(),p.setColorMode(Ti.disabled),p.setDepthMode(Jt.disabled);const y=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(const S of d){const A=this._tileClippingMaskIDs[S.key]=this.nextStencilID++,M=this.style.map.terrain&&this.style.map.terrain.getTerrainData(S);y.draw(p,g.TRIANGLES,Jt.disabled,new ji({func:g.ALWAYS,mask:0},A,255,g.KEEP,g.KEEP,g.REPLACE),Ti.disabled,Pi.disabled,ec(S.posMatrix),M,"$clipping",this.tileExtentBuffer,this.quadTriangleIndexBuffer,this.tileExtentSegments)}}stencilModeFor3D(){this.currentStencilSource=void 0,this.nextStencilID+1>256&&this.clearStencil();const o=this.nextStencilID++,d=this.context.gl;return new ji({func:d.NOTEQUAL,mask:255},o,255,d.KEEP,d.KEEP,d.REPLACE)}stencilModeForClipping(o){const d=this.context.gl;return new ji({func:d.EQUAL,mask:255},this._tileClippingMaskIDs[o.key],0,d.KEEP,d.KEEP,d.REPLACE)}stencilConfigForOverlap(o){const d=this.context.gl,p=o.sort((S,A)=>A.overscaledZ-S.overscaledZ),g=p[p.length-1].overscaledZ,y=p[0].overscaledZ-g+1;if(y>1){this.currentStencilSource=void 0,this.nextStencilID+y>256&&this.clearStencil();const S={};for(let A=0;A({u_sky_color:me.properties.get("sky-color"),u_horizon_color:me.properties.get("horizon-color"),u_horizon:(te.height/2+te.getHorizon())*ve,u_sky_horizon_blend:me.properties.get("sky-horizon-blend")*te.height/2*ve}))(F,k.style.map.transform,k.pixelRatio),Q=new Jt($.LEQUAL,Jt.ReadWrite,[0,1]),re=ji.disabled,se=k.colorModeForRenderPass(),ae=k.useProgram("sky");if(!F.mesh){const me=new c.aX;me.emplaceBack(-1,-1),me.emplaceBack(1,-1),me.emplaceBack(1,1),me.emplaceBack(-1,1);const te=new c.aY;te.emplaceBack(0,1,2),te.emplaceBack(0,2,3),F.mesh=new Fg(N.createVertexBuffer(me,la.members),N.createIndexBuffer(te),c.a0.simpleSegment(0,0,me.length,te.length))}ae.draw(N,$.TRIANGLES,Q,re,se,Pi.disabled,X,void 0,"sky",F.mesh.vertexBuffer,F.mesh.indexBuffer,F.mesh.segments)}(this,this.style.sky),this._showOverdrawInspector=d.showOverdrawInspector,this.depthRangeFor3D=[0,1-(o._order.length+2)*this.numSublayers*this.depthEpsilon],!this.renderToTexture)for(this.renderPass="opaque",this.currentLayer=g.length-1;this.currentLayer>=0;this.currentLayer--){const k=this.style._layers[g[this.currentLayer]],F=y[k.source],N=S[k.source];this._renderTileClippingMasks(k,N),this.renderLayer(this,F,k,N)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayerae.source&&!ae.isHidden(N)?[F.sourceCaches[ae.source]]:[]),Q=X.filter(ae=>ae.getSource().type==="vector"),re=X.filter(ae=>ae.getSource().type!=="vector"),se=ae=>{(!$||$.getSource().maxzoomse(ae)),$||re.forEach(ae=>se(ae)),$}(this.style,this.transform.zoom);k&&function(F,N,$){for(let X=0;X<$.length;X++)ai(F,N,$[X])}(this,k,k.getVisibleCoordinates())}this.options.showPadding&&function(k){const F=k.transform.padding;ga(k,k.transform.height-(F.top||0),3,Pu),ga(k,F.bottom||0,3,oc),jd(k,F.left||0,3,Ru),jd(k,k.transform.width-(F.right||0),3,Dg);const N=k.transform.centerPoint;(function($,X,Q,re){Ha($,X-1,Q-10,2,20,re),Ha($,X-10,Q-1,20,2,re)})(k,N.x,k.transform.height-N.y,Wa)}(this),this.context.setDefault()}maybeDrawDepthAndCoords(o){if(!this.style||!this.style.map||!this.style.map.terrain)return;const d=this.terrainFacilitator.matrix,p=this.transform.modelViewProjectionMatrix;let g=this.terrainFacilitator.dirty;g||(g=o?!c.a_(d,p):!c.a$(d,p)),g||(g=this.style.map.terrain.sourceCache.tilesAfterTime(this.terrainFacilitator.renderTime).length>0),g&&(c.b0(d,p),this.terrainFacilitator.renderTime=Date.now(),this.terrainFacilitator.dirty=!1,function(y,S){const A=y.context,M=A.gl,k=Ti.unblended,F=new Jt(M.LEQUAL,Jt.ReadWrite,[0,1]),N=S.getTerrainMesh(),$=S.sourceCache.getRenderableTiles(),X=y.useProgram("terrainDepth");A.bindFramebuffer.set(S.getFramebuffer("depth").framebuffer),A.viewport.set([0,0,y.width/devicePixelRatio,y.height/devicePixelRatio]),A.clear({color:c.aN.transparent,depth:1});for(const Q of $){const re=S.getTerrainData(Q.tileID),se={u_matrix:y.transform.calculatePosMatrix(Q.tileID.toUnwrapped()),u_ele_delta:S.getMeshFrameDelta(y.transform.zoom)};X.draw(A,M.TRIANGLES,F,ji.disabled,k,Pi.backCCW,se,re,"terrain",N.vertexBuffer,N.indexBuffer,N.segments)}A.bindFramebuffer.set(null),A.viewport.set([0,0,y.width,y.height])}(this,this.style.map.terrain),function(y,S){const A=y.context,M=A.gl,k=Ti.unblended,F=new Jt(M.LEQUAL,Jt.ReadWrite,[0,1]),N=S.getTerrainMesh(),$=S.getCoordsTexture(),X=S.sourceCache.getRenderableTiles(),Q=y.useProgram("terrainCoords");A.bindFramebuffer.set(S.getFramebuffer("coords").framebuffer),A.viewport.set([0,0,y.width/devicePixelRatio,y.height/devicePixelRatio]),A.clear({color:c.aN.transparent,depth:1}),S.coordsIndex=[];for(const re of X){const se=S.getTerrainData(re.tileID);A.activeTexture.set(M.TEXTURE0),M.bindTexture(M.TEXTURE_2D,$.texture);const ae={u_matrix:y.transform.calculatePosMatrix(re.tileID.toUnwrapped()),u_terrain_coords_id:(255-S.coordsIndex.length)/255,u_texture:0,u_ele_delta:S.getMeshFrameDelta(y.transform.zoom)};Q.draw(A,M.TRIANGLES,F,ji.disabled,k,Pi.backCCW,ae,se,"terrain",N.vertexBuffer,N.indexBuffer,N.segments),S.coordsIndex.push(re.tileID.key)}A.bindFramebuffer.set(null),A.viewport.set([0,0,y.width,y.height])}(this,this.style.map.terrain))}renderLayer(o,d,p,g){if(!p.isHidden(this.transform.zoom)&&(p.type==="background"||p.type==="custom"||(g||[]).length))switch(this.id=p.id,p.type){case"symbol":(function(y,S,A,M,k){if(y.renderPass!=="translucent")return;const F=ji.disabled,N=y.colorModeForRenderPass();(A._unevaluatedLayout.hasValue("text-variable-anchor")||A._unevaluatedLayout.hasValue("text-variable-anchor-offset"))&&function($,X,Q,re,se,ae,me,te,ve){const Ie=X.transform,Me=aa(),Ve=se==="map",Ke=ae==="map";for(const ht of $){const ft=re.getTile(ht),Je=ft.getBucket(Q);if(!Je||!Je.text||!Je.text.segments.get().length)continue;const it=c.ah(Je.textSizeData,Ie.zoom),bt=Ut(ft,1,X.transform.zoom),Vt=fr(ht.posMatrix,Ke,Ve,X.transform,bt),nt=Q.layout.get("icon-text-fit")!=="none"&&Je.hasIconData();if(it){const lt=Math.pow(2,Ie.zoom-ft.tileID.overscaledZ),Ft=X.style.map.terrain?(qt,Gt)=>X.style.map.terrain.getElevation(ht,qt,Gt):null,Mi=Me.translatePosition(Ie,ft,me,te);Au(Je,Ve,Ke,ve,Ie,Vt,ht.posMatrix,lt,it,nt,Me,Mi,ht.toUnwrapped(),Ft)}}}(M,y,A,S,A.layout.get("text-rotation-alignment"),A.layout.get("text-pitch-alignment"),A.paint.get("text-translate"),A.paint.get("text-translate-anchor"),k),A.paint.get("icon-opacity").constantOr(1)!==0&&So(y,S,A,M,!1,A.paint.get("icon-translate"),A.paint.get("icon-translate-anchor"),A.layout.get("icon-rotation-alignment"),A.layout.get("icon-pitch-alignment"),A.layout.get("icon-keep-upright"),F,N),A.paint.get("text-opacity").constantOr(1)!==0&&So(y,S,A,M,!0,A.paint.get("text-translate"),A.paint.get("text-translate-anchor"),A.layout.get("text-rotation-alignment"),A.layout.get("text-pitch-alignment"),A.layout.get("text-keep-upright"),F,N),S.map.showCollisionBoxes&&(Og(y,S,A,M,!0),Og(y,S,A,M,!1))})(o,d,p,g,this.style.placement.variableOffsets);break;case"circle":(function(y,S,A,M){if(y.renderPass!=="translucent")return;const k=A.paint.get("circle-opacity"),F=A.paint.get("circle-stroke-width"),N=A.paint.get("circle-stroke-opacity"),$=!A.layout.get("circle-sort-key").isConstant();if(k.constantOr(1)===0&&(F.constantOr(1)===0||N.constantOr(1)===0))return;const X=y.context,Q=X.gl,re=y.depthModeForSublayer(0,Jt.ReadOnly),se=ji.disabled,ae=y.colorModeForRenderPass(),me=[];for(let te=0;tete.sortKey-ve.sortKey);for(const te of me){const{programConfiguration:ve,program:Ie,layoutVertexBuffer:Me,indexBuffer:Ve,uniformValues:Ke,terrainData:ht}=te.state;Ie.draw(X,Q.TRIANGLES,re,se,ae,Pi.disabled,Ke,ht,A.id,Me,Ve,te.segments,A.paint,y.transform.zoom,ve)}})(o,d,p,g);break;case"heatmap":(function(y,S,A,M){if(A.paint.get("heatmap-opacity")!==0)if(y.renderPass==="offscreen"){const k=y.context,F=k.gl,N=ji.disabled,$=new Ti([F.ONE,F.ONE],c.aN.transparent,[!0,!0,!0,!0]);(function(X,Q,re){const se=X.gl;X.activeTexture.set(se.TEXTURE1),X.viewport.set([0,0,Q.width/4,Q.height/4]);let ae=re.heatmapFbo;if(ae)se.bindTexture(se.TEXTURE_2D,ae.colorAttachment.get()),X.bindFramebuffer.set(ae.framebuffer);else{const me=se.createTexture();se.bindTexture(se.TEXTURE_2D,me),se.texParameteri(se.TEXTURE_2D,se.TEXTURE_WRAP_S,se.CLAMP_TO_EDGE),se.texParameteri(se.TEXTURE_2D,se.TEXTURE_WRAP_T,se.CLAMP_TO_EDGE),se.texParameteri(se.TEXTURE_2D,se.TEXTURE_MIN_FILTER,se.LINEAR),se.texParameteri(se.TEXTURE_2D,se.TEXTURE_MAG_FILTER,se.LINEAR),ae=re.heatmapFbo=X.createFramebuffer(Q.width/4,Q.height/4,!1,!1),function(te,ve,Ie,Me){var Ve,Ke;const ht=te.gl,ft=(Ve=te.HALF_FLOAT)!==null&&Ve!==void 0?Ve:ht.UNSIGNED_BYTE,Je=(Ke=te.RGBA16F)!==null&&Ke!==void 0?Ke:ht.RGBA;ht.texImage2D(ht.TEXTURE_2D,0,Je,ve.width/4,ve.height/4,0,ht.RGBA,ft,null),Me.colorAttachment.set(Ie)}(X,Q,me,ae)}})(k,y,A),k.clear({color:c.aN.transparent});for(let X=0;X{const te=c.H();c.aQ(te,0,re.width,re.height,0,0,1);const ve=re.context.gl;return{u_matrix:te,u_world:[ve.drawingBufferWidth,ve.drawingBufferHeight],u_image:0,u_color_ramp:1,u_opacity:se.paint.get("heatmap-opacity")}})(k,F),null,F.id,k.viewportBuffer,k.quadTriangleIndexBuffer,k.viewportSegments,F.paint,k.transform.zoom)}(y,A))})(o,d,p,g);break;case"line":(function(y,S,A,M){if(y.renderPass!=="translucent")return;const k=A.paint.get("line-opacity"),F=A.paint.get("line-width");if(k.constantOr(1)===0||F.constantOr(1)===0)return;const N=y.depthModeForSublayer(0,Jt.ReadOnly),$=y.colorModeForRenderPass(),X=A.paint.get("line-dasharray"),Q=A.paint.get("line-pattern"),re=Q.constantOr(1),se=A.paint.get("line-gradient"),ae=A.getCrossfadeParameters(),me=re?"linePattern":X?"lineSDF":se?"lineGradient":"line",te=y.context,ve=te.gl;let Ie=!0;for(const Me of M){const Ve=S.getTile(Me);if(re&&!Ve.patternsLoaded())continue;const Ke=Ve.getBucket(A);if(!Ke)continue;const ht=Ke.programConfigurations.get(A.id),ft=y.context.program.get(),Je=y.useProgram(me,ht),it=Ie||Je.program!==ft,bt=y.style.map.terrain&&y.style.map.terrain.getTerrainData(Me),Vt=Q.constantOr(null);if(Vt&&Ve.imageAtlas){const Ft=Ve.imageAtlas,Mi=Ft.patternPositions[Vt.to.toString()],qt=Ft.patternPositions[Vt.from.toString()];Mi&&qt&&ht.setConstantPatternPositions(Mi,qt)}const nt=bt?Me:null,lt=re?gg(y,Ve,A,ae,nt):X?mg(y,Ve,A,X,ae,nt):se?yu(y,Ve,A,Ke.lineClipsArray.length,nt):tc(y,Ve,A,nt);if(re)te.activeTexture.set(ve.TEXTURE0),Ve.imageAtlasTexture.bind(ve.LINEAR,ve.CLAMP_TO_EDGE),ht.updatePaintBuffers(ae);else if(X&&(it||y.lineAtlas.dirty))te.activeTexture.set(ve.TEXTURE0),y.lineAtlas.bind(te);else if(se){const Ft=Ke.gradients[A.id];let Mi=Ft.texture;if(A.gradientVersion!==Ft.version){let qt=256;if(A.stepInterpolant){const Gt=S.getSource().maxzoom,ki=Me.canonical.z===Gt?Math.ceil(1<20&&F.texParameterf(F.TEXTURE_2D,k.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,k.extTextureFilterAnisotropicMax);const Je=y.style.map.terrain&&y.style.map.terrain.getTerrainData(me),it=Je?me:null,bt=it?it.posMatrix:y.transform.calculatePosMatrix(me.toUnwrapped(),ae),Vt=V0(bt,ht||[0,0],Ke||1,Ve,A);N instanceof pt?$.draw(k,F.TRIANGLES,te,ji.disabled,X,Pi.disabled,Vt,Je,A.id,N.boundsBuffer,y.quadTriangleIndexBuffer,N.boundsSegments):$.draw(k,F.TRIANGLES,te,Q[me.overscaledZ],X,Pi.disabled,Vt,Je,A.id,y.rasterBoundsBuffer,y.quadTriangleIndexBuffer,y.rasterBoundsSegments)}})(o,d,p,g);break;case"background":(function(y,S,A,M){const k=A.paint.get("background-color"),F=A.paint.get("background-opacity");if(F===0)return;const N=y.context,$=N.gl,X=y.transform,Q=X.tileSize,re=A.paint.get("background-pattern");if(y.isPatternMissing(re))return;const se=!re&&k.a===1&&F===1&&y.opaquePassEnabledForLayer()?"opaque":"translucent";if(y.renderPass!==se)return;const ae=ji.disabled,me=y.depthModeForSublayer(0,se==="opaque"?Jt.ReadWrite:Jt.ReadOnly),te=y.colorModeForRenderPass(),ve=y.useProgram(re?"backgroundPattern":"background"),Ie=M||X.coveringTiles({tileSize:Q,terrain:y.style.map.terrain});re&&(N.activeTexture.set($.TEXTURE0),y.imageManager.bind(y.context));const Me=A.getCrossfadeParameters();for(const Ve of Ie){const Ke=M?Ve.posMatrix:y.transform.calculatePosMatrix(Ve.toUnwrapped()),ht=re?Id(Ke,F,y,re,{tileID:Ve,tileSize:Q},Me):bu(Ke,F,k),ft=y.style.map.terrain&&y.style.map.terrain.getTerrainData(Ve);ve.draw(N,$.TRIANGLES,me,ae,te,Pi.disabled,ht,ft,A.id,y.tileExtentBuffer,y.quadTriangleIndexBuffer,y.tileExtentSegments)}})(o,0,p,g);break;case"custom":(function(y,S,A){const M=y.context,k=A.implementation;if(y.renderPass==="offscreen"){const F=k.prerender;F&&(y.setCustomLayerDefaults(),M.setColorMode(y.colorModeForRenderPass()),F.call(k,M.gl,y.transform.customLayerMatrix()),M.setDirty(),y.setBaseState())}else if(y.renderPass==="translucent"){y.setCustomLayerDefaults(),M.setColorMode(y.colorModeForRenderPass()),M.setStencilMode(ji.disabled);const F=k.renderingMode==="3d"?new Jt(y.context.gl.LEQUAL,Jt.ReadWrite,y.depthRangeFor3D):y.depthModeForSublayer(0,Jt.ReadOnly);M.setDepthMode(F),k.render(M.gl,y.transform.customLayerMatrix(),{farZ:y.transform.farZ,nearZ:y.transform.nearZ,fov:y.transform._fov,modelViewProjectionMatrix:y.transform.modelViewProjectionMatrix,projectionMatrix:y.transform.projectionMatrix}),M.setDirty(),y.setBaseState(),M.bindFramebuffer.set(null)}})(o,0,p)}}translatePosMatrix(o,d,p,g,y){if(!p[0]&&!p[1])return o;const S=y?g==="map"?this.transform.angle:0:g==="viewport"?-this.transform.angle:0;if(S){const k=Math.sin(S),F=Math.cos(S);p=[p[0]*F-p[1]*k,p[0]*k+p[1]*F]}const A=[y?p[0]:Ut(d,p[0],this.transform.zoom),y?p[1]:Ut(d,p[1],this.transform.zoom),0],M=new Float32Array(16);return c.J(M,o,A),M}saveTileTexture(o){const d=this._tileTextures[o.size[0]];d?d.push(o):this._tileTextures[o.size[0]]=[o]}getTileTexture(o){const d=this._tileTextures[o];return d&&d.length>0?d.pop():null}isPatternMissing(o){if(!o)return!1;if(!o.from||!o.to)return!0;const d=this.imageManager.getPattern(o.from.toString()),p=this.imageManager.getPattern(o.to.toString());return!d||!p}useProgram(o,d){this.cache=this.cache||{};const p=o+(d?d.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"")+(this.style.map.terrain?"/terrain":"");return this.cache[p]||(this.cache[p]=new H(this.context,pr[o],d,vu[o],this._showOverdrawInspector,this.style.map.terrain)),this.cache[p]}setCustomLayerDefaults(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()}setBaseState(){const o=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(o.FUNC_ADD)}initDebugOverlayCanvas(){this.debugOverlayCanvas==null&&(this.debugOverlayCanvas=document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512,this.debugOverlayTexture=new ot(this.context,this.debugOverlayCanvas,this.context.gl.RGBA))}destroy(){this.debugOverlayTexture&&this.debugOverlayTexture.destroy()}overLimit(){const{drawingBufferWidth:o,drawingBufferHeight:d}=this.context.gl;return this.width!==o||this.height!==d}}class ma{constructor(o,d){this.points=o,this.planes=d}static fromInvProjectionMatrix(o,d,p){const g=Math.pow(2,p),y=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]].map(A=>{const M=1/(A=c.ag([],A,o))[3]/d*g;return c.b1(A,A,[M,M,1/A[3],M])}),S=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]].map(A=>{const M=function($,X){var Q=X[0],re=X[1],se=X[2],ae=Q*Q+re*re+se*se;return ae>0&&(ae=1/Math.sqrt(ae)),$[0]=X[0]*ae,$[1]=X[1]*ae,$[2]=X[2]*ae,$}([],function($,X,Q){var re=X[0],se=X[1],ae=X[2],me=Q[0],te=Q[1],ve=Q[2];return $[0]=se*ve-ae*te,$[1]=ae*me-re*ve,$[2]=re*te-se*me,$}([],We([],y[A[0]],y[A[1]]),We([],y[A[2]],y[A[1]]))),k=-((F=M)[0]*(N=y[A[1]])[0]+F[1]*N[1]+F[2]*N[2]);var F,N;return M.concat(k)});return new ma(y,S)}}class Mu{constructor(o,d){this.min=o,this.max=d,this.center=function(p,g,y){return p[0]=.5*g[0],p[1]=.5*g[1],p[2]=.5*g[2],p}([],function(p,g,y){return p[0]=g[0]+y[0],p[1]=g[1]+y[1],p[2]=g[2]+y[2],p}([],this.min,this.max))}quadrant(o){const d=[o%2==0,o<2],p=Oe(this.min),g=Oe(this.max);for(let y=0;y=0&&S++;if(S===0)return 0;S!==d.length&&(p=!1)}if(p)return 2;for(let g=0;g<3;g++){let y=Number.MAX_VALUE,S=-Number.MAX_VALUE;for(let A=0;Athis.max[g]-this.min[g])return 0}return 1}}class ku{constructor(o=0,d=0,p=0,g=0){if(isNaN(o)||o<0||isNaN(d)||d<0||isNaN(p)||p<0||isNaN(g)||g<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=o,this.bottom=d,this.left=p,this.right=g}interpolate(o,d,p){return d.top!=null&&o.top!=null&&(this.top=c.z.number(o.top,d.top,p)),d.bottom!=null&&o.bottom!=null&&(this.bottom=c.z.number(o.bottom,d.bottom,p)),d.left!=null&&o.left!=null&&(this.left=c.z.number(o.left,d.left,p)),d.right!=null&&o.right!=null&&(this.right=c.z.number(o.right,d.right,p)),this}getCenter(o,d){const p=c.ad((this.left+o-this.right)/2,0,o),g=c.ad((this.top+d-this.bottom)/2,0,d);return new c.P(p,g)}equals(o){return this.top===o.top&&this.bottom===o.bottom&&this.left===o.left&&this.right===o.right}clone(){return new ku(this.top,this.bottom,this.left,this.right)}toJSON(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}}}const $d=85.051129;class Wd{constructor(o,d,p,g,y){this.tileSize=512,this._renderWorldCopies=y===void 0||!!y,this._minZoom=o||0,this._maxZoom=d||22,this._minPitch=p??0,this._maxPitch=g??60,this.setMaxBounds(),this.width=0,this.height=0,this._center=new c.N(0,0),this._elevation=0,this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new ku,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={},this.minElevationForCurrentTile=0}clone(){const o=new Wd(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return o.apply(this),o}apply(o){this.tileSize=o.tileSize,this.latRange=o.latRange,this.width=o.width,this.height=o.height,this._center=o._center,this._elevation=o._elevation,this.minElevationForCurrentTile=o.minElevationForCurrentTile,this.zoom=o.zoom,this.angle=o.angle,this._fov=o._fov,this._pitch=o._pitch,this._unmodified=o._unmodified,this._edgeInsets=o._edgeInsets.clone(),this._calcMatrices()}get minZoom(){return this._minZoom}set minZoom(o){this._minZoom!==o&&(this._minZoom=o,this.zoom=Math.max(this.zoom,o))}get maxZoom(){return this._maxZoom}set maxZoom(o){this._maxZoom!==o&&(this._maxZoom=o,this.zoom=Math.min(this.zoom,o))}get minPitch(){return this._minPitch}set minPitch(o){this._minPitch!==o&&(this._minPitch=o,this.pitch=Math.max(this.pitch,o))}get maxPitch(){return this._maxPitch}set maxPitch(o){this._maxPitch!==o&&(this._maxPitch=o,this.pitch=Math.min(this.pitch,o))}get renderWorldCopies(){return this._renderWorldCopies}set renderWorldCopies(o){o===void 0?o=!0:o===null&&(o=!1),this._renderWorldCopies=o}get worldSize(){return this.tileSize*this.scale}get centerOffset(){return this.centerPoint._sub(this.size._div(2))}get size(){return new c.P(this.width,this.height)}get bearing(){return-this.angle/Math.PI*180}set bearing(o){const d=-c.b3(o,-180,180)*Math.PI/180;this.angle!==d&&(this._unmodified=!1,this.angle=d,this._calcMatrices(),this.rotationMatrix=function(){var p=new c.A(4);return c.A!=Float32Array&&(p[1]=0,p[2]=0),p[0]=1,p[3]=1,p}(),function(p,g,y){var S=g[0],A=g[1],M=g[2],k=g[3],F=Math.sin(y),N=Math.cos(y);p[0]=S*N+M*F,p[1]=A*N+k*F,p[2]=S*-F+M*N,p[3]=A*-F+k*N}(this.rotationMatrix,this.rotationMatrix,this.angle))}get pitch(){return this._pitch/Math.PI*180}set pitch(o){const d=c.ad(o,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==d&&(this._unmodified=!1,this._pitch=d,this._calcMatrices())}get fov(){return this._fov/Math.PI*180}set fov(o){o=Math.max(.01,Math.min(60,o)),this._fov!==o&&(this._unmodified=!1,this._fov=o/180*Math.PI,this._calcMatrices())}get zoom(){return this._zoom}set zoom(o){const d=Math.min(Math.max(o,this.minZoom),this.maxZoom);this._zoom!==d&&(this._unmodified=!1,this._zoom=d,this.tileZoom=Math.max(0,Math.floor(d)),this.scale=this.zoomScale(d),this._constrain(),this._calcMatrices())}get center(){return this._center}set center(o){o.lat===this._center.lat&&o.lng===this._center.lng||(this._unmodified=!1,this._center=o,this._constrain(),this._calcMatrices())}get elevation(){return this._elevation}set elevation(o){o!==this._elevation&&(this._elevation=o,this._constrain(),this._calcMatrices())}get padding(){return this._edgeInsets.toJSON()}set padding(o){this._edgeInsets.equals(o)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,o,1),this._calcMatrices())}get centerPoint(){return this._edgeInsets.getCenter(this.width,this.height)}isPaddingEqual(o){return this._edgeInsets.equals(o)}interpolatePadding(o,d,p){this._unmodified=!1,this._edgeInsets.interpolate(o,d,p),this._constrain(),this._calcMatrices()}coveringZoomLevel(o){const d=(o.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/o.tileSize));return Math.max(0,d)}getVisibleUnwrappedCoordinates(o){const d=[new c.b4(0,o)];if(this._renderWorldCopies){const p=this.pointCoordinate(new c.P(0,0)),g=this.pointCoordinate(new c.P(this.width,0)),y=this.pointCoordinate(new c.P(this.width,this.height)),S=this.pointCoordinate(new c.P(0,this.height)),A=Math.floor(Math.min(p.x,g.x,y.x,S.x)),M=Math.floor(Math.max(p.x,g.x,y.x,S.x)),k=1;for(let F=A-k;F<=M+k;F++)F!==0&&d.push(new c.b4(F,o))}return d}coveringTiles(o){var d,p;let g=this.coveringZoomLevel(o);const y=g;if(o.minzoom!==void 0&&go.maxzoom&&(g=o.maxzoom);const S=this.pointCoordinate(this.getCameraPoint()),A=c.Z.fromLngLat(this.center),M=Math.pow(2,g),k=[M*S.x,M*S.y,0],F=[M*A.x,M*A.y,0],N=ma.fromInvProjectionMatrix(this.invModelViewProjectionMatrix,this.worldSize,g);let $=o.minzoom||0;!o.terrain&&this.pitch<=60&&this._edgeInsets.top<.1&&($=g);const X=o.terrain?2/Math.min(this.tileSize,o.tileSize)*this.tileSize:3,Q=te=>({aabb:new Mu([te*M,0,0],[(te+1)*M,M,0]),zoom:0,x:0,y:0,wrap:te,fullyVisible:!1}),re=[],se=[],ae=g,me=o.reparseOverscaled?y:g;if(this._renderWorldCopies)for(let te=1;te<=3;te++)re.push(Q(-te)),re.push(Q(te));for(re.push(Q(0));re.length>0;){const te=re.pop(),ve=te.x,Ie=te.y;let Me=te.fullyVisible;if(!Me){const Je=te.aabb.intersects(N);if(Je===0)continue;Me=Je===2}const Ve=o.terrain?k:F,Ke=te.aabb.distanceX(Ve),ht=te.aabb.distanceY(Ve),ft=Math.max(Math.abs(Ke),Math.abs(ht));if(te.zoom===ae||ft>X+(1<=$){const Je=ae-te.zoom,it=k[0]-.5-(ve<>1),Vt=te.zoom+1;let nt=te.aabb.quadrant(Je);if(o.terrain){const lt=new c.S(Vt,te.wrap,Vt,it,bt),Ft=o.terrain.getMinMaxElevation(lt),Mi=(d=Ft.minElevation)!==null&&d!==void 0?d:this.elevation,qt=(p=Ft.maxElevation)!==null&&p!==void 0?p:this.elevation;nt=new Mu([nt.min[0],nt.min[1],Mi],[nt.max[0],nt.max[1],qt])}re.push({aabb:nt,zoom:Vt,x:it,y:bt,wrap:te.wrap,fullyVisible:Me})}}return se.sort((te,ve)=>te.distanceSq-ve.distanceSq).map(te=>te.tileID)}resize(o,d){this.width=o,this.height=d,this.pixelsToGLUnits=[2/o,-2/d],this._constrain(),this._calcMatrices()}get unmodified(){return this._unmodified}zoomScale(o){return Math.pow(2,o)}scaleZoom(o){return Math.log(o)/Math.LN2}project(o){const d=c.ad(o.lat,-85.051129,$d);return new c.P(c.O(o.lng)*this.worldSize,c.Q(d)*this.worldSize)}unproject(o){return new c.Z(o.x/this.worldSize,o.y/this.worldSize).toLngLat()}get point(){return this.project(this.center)}getCameraPosition(){return{lngLat:this.pointLocation(this.getCameraPoint()),altitude:Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter+this.elevation}}recalculateZoom(o){const d=this.elevation,p=Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter,g=this.pointLocation(this.centerPoint,o),y=o.getElevationForLngLatZoom(g,this.tileZoom);if(!(this.elevation-y))return;const S=p+d-y,A=Math.cos(this._pitch)*this.cameraToCenterDistance/S/c.b5(1,g.lat),M=this.scaleZoom(A/this.tileSize);this._elevation=y,this._center=g,this.zoom=M}setLocationAtPoint(o,d){const p=this.pointCoordinate(d),g=this.pointCoordinate(this.centerPoint),y=this.locationCoordinate(o),S=new c.Z(y.x-(p.x-g.x),y.y-(p.y-g.y));this.center=this.coordinateLocation(S),this._renderWorldCopies&&(this.center=this.center.wrap())}locationPoint(o,d){return d?this.coordinatePoint(this.locationCoordinate(o),d.getElevationForLngLatZoom(o,this.tileZoom),this.pixelMatrix3D):this.coordinatePoint(this.locationCoordinate(o))}pointLocation(o,d){return this.coordinateLocation(this.pointCoordinate(o,d))}locationCoordinate(o){return c.Z.fromLngLat(o)}coordinateLocation(o){return o&&o.toLngLat()}pointCoordinate(o,d){if(d){const $=d.pointCoordinate(o);if($!=null)return $}const p=[o.x,o.y,0,1],g=[o.x,o.y,1,1];c.ag(p,p,this.pixelMatrixInverse),c.ag(g,g,this.pixelMatrixInverse);const y=p[3],S=g[3],A=p[1]/y,M=g[1]/S,k=p[2]/y,F=g[2]/S,N=k===F?0:(0-k)/(F-k);return new c.Z(c.z.number(p[0]/y,g[0]/S,N)/this.worldSize,c.z.number(A,M,N)/this.worldSize)}coordinatePoint(o,d=0,p=this.pixelMatrix){const g=[o.x*this.worldSize,o.y*this.worldSize,d,1];return c.ag(g,g,p),new c.P(g[0]/g[3],g[1]/g[3])}getBounds(){const o=Math.max(0,this.height/2-this.getHorizon());return new le().extend(this.pointLocation(new c.P(0,o))).extend(this.pointLocation(new c.P(this.width,o))).extend(this.pointLocation(new c.P(this.width,this.height))).extend(this.pointLocation(new c.P(0,this.height)))}getMaxBounds(){return this.latRange&&this.latRange.length===2&&this.lngRange&&this.lngRange.length===2?new le([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]]):null}getHorizon(){return Math.tan(Math.PI/2-this._pitch)*this.cameraToCenterDistance*.85}setMaxBounds(o){o?(this.lngRange=[o.getWest(),o.getEast()],this.latRange=[o.getSouth(),o.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-85.051129,$d])}calculateTileMatrix(o){const d=o.canonical,p=this.worldSize/this.zoomScale(d.z),g=d.x+Math.pow(2,d.z)*o.wrap,y=c.ao(new Float64Array(16));return c.J(y,y,[g*p,d.y*p,0]),c.K(y,y,[p/c.X,p/c.X,1]),y}calculatePosMatrix(o,d=!1){const p=o.key,g=d?this._alignedPosMatrixCache:this._posMatrixCache;if(g[p])return g[p];const y=this.calculateTileMatrix(o);return c.L(y,d?this.alignedModelViewProjectionMatrix:this.modelViewProjectionMatrix,y),g[p]=new Float32Array(y),g[p]}calculateFogMatrix(o){const d=o.key,p=this._fogMatrixCache;if(p[d])return p[d];const g=this.calculateTileMatrix(o);return c.L(g,this.fogMatrix,g),p[d]=new Float32Array(g),p[d]}customLayerMatrix(){return this.mercatorMatrix.slice()}getConstrained(o,d){d=c.ad(+d,this.minZoom,this.maxZoom);const p={center:new c.N(o.lng,o.lat),zoom:d};let g=this.lngRange;if(!this._renderWorldCopies&&g===null){const te=179.9999999999;g=[-te,te]}const y=this.tileSize*this.zoomScale(p.zoom);let S=0,A=y,M=0,k=y,F=0,N=0;const{x:$,y:X}=this.size;if(this.latRange){const te=this.latRange;S=c.Q(te[1])*y,A=c.Q(te[0])*y,A-SA&&(ae=A-te)}if(g){const te=(M+k)/2;let ve=Q;this._renderWorldCopies&&(ve=c.b3(Q,te-y/2,te+y/2));const Ie=$/2;ve-Iek&&(se=k-Ie)}if(se!==void 0||ae!==void 0){const te=new c.P(se??Q,ae??re);p.center=this.unproject.call({worldSize:y},te).wrap()}return p}_constrain(){if(!this.center||!this.width||!this.height||this._constraining)return;this._constraining=!0;const o=this._unmodified,{center:d,zoom:p}=this.getConstrained(this.center,this.zoom);this.center=d,this.zoom=p,this._unmodified=o,this._constraining=!1}_calcMatrices(){if(!this.height)return;const o=this.centerOffset,d=this.point.x,p=this.point.y;this.cameraToCenterDistance=.5/Math.tan(this._fov/2)*this.height,this._pixelPerMeter=c.b5(1,this.center.lat)*this.worldSize;let g=c.ao(new Float64Array(16));c.K(g,g,[this.width/2,-this.height/2,1]),c.J(g,g,[1,-1,0]),this.labelPlaneMatrix=g,g=c.ao(new Float64Array(16)),c.K(g,g,[1,-1,1]),c.J(g,g,[-1,-1,0]),c.K(g,g,[2/this.width,2/this.height,1]),this.glCoordMatrix=g;const y=this.cameraToCenterDistance+this._elevation*this._pixelPerMeter/Math.cos(this._pitch),S=Math.min(this.elevation,this.minElevationForCurrentTile),A=y-S*this._pixelPerMeter/Math.cos(this._pitch),M=S<0?A:y,k=Math.PI/2+this._pitch,F=this._fov*(.5+o.y/this.height),N=Math.sin(F)*M/Math.sin(c.ad(Math.PI-k-F,.01,Math.PI-.01)),$=this.getHorizon(),X=2*Math.atan($/this.cameraToCenterDistance)*(.5+o.y/(2*$)),Q=Math.sin(X)*M/Math.sin(c.ad(Math.PI-k-X,.01,Math.PI-.01)),re=Math.min(N,Q);this.farZ=1.01*(Math.cos(Math.PI/2-this._pitch)*re+M),this.nearZ=this.height/50,g=new Float64Array(16),c.b6(g,this._fov,this.width/this.height,this.nearZ,this.farZ),g[8]=2*-o.x/this.width,g[9]=2*o.y/this.height,this.projectionMatrix=c.af(g),c.K(g,g,[1,-1,1]),c.J(g,g,[0,0,-this.cameraToCenterDistance]),c.b7(g,g,this._pitch),c.ae(g,g,this.angle),c.J(g,g,[-d,-p,0]),this.mercatorMatrix=c.K([],g,[this.worldSize,this.worldSize,this.worldSize]),c.K(g,g,[1,1,this._pixelPerMeter]),this.pixelMatrix=c.L(new Float64Array(16),this.labelPlaneMatrix,g),c.J(g,g,[0,0,-this.elevation]),this.modelViewProjectionMatrix=g,this.invModelViewProjectionMatrix=c.at([],g),this.fogMatrix=new Float64Array(16),c.b6(this.fogMatrix,this._fov,this.width/this.height,y,this.farZ),this.fogMatrix[8]=2*-o.x/this.width,this.fogMatrix[9]=2*o.y/this.height,c.K(this.fogMatrix,this.fogMatrix,[1,-1,1]),c.J(this.fogMatrix,this.fogMatrix,[0,0,-this.cameraToCenterDistance]),c.b7(this.fogMatrix,this.fogMatrix,this._pitch),c.ae(this.fogMatrix,this.fogMatrix,this.angle),c.J(this.fogMatrix,this.fogMatrix,[-d,-p,0]),c.K(this.fogMatrix,this.fogMatrix,[1,1,this._pixelPerMeter]),c.J(this.fogMatrix,this.fogMatrix,[0,0,-this.elevation]),this.pixelMatrix3D=c.L(new Float64Array(16),this.labelPlaneMatrix,g);const se=this.width%2/2,ae=this.height%2/2,me=Math.cos(this.angle),te=Math.sin(this.angle),ve=d-Math.round(d)+me*se+te*ae,Ie=p-Math.round(p)+me*ae+te*se,Me=new Float64Array(g);if(c.J(Me,Me,[ve>.5?ve-1:ve,Ie>.5?Ie-1:Ie,0]),this.alignedModelViewProjectionMatrix=Me,g=c.at(new Float64Array(16),this.pixelMatrix),!g)throw new Error("failed to invert matrix");this.pixelMatrixInverse=g,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={}}maxPitchScaleFactor(){if(!this.pixelMatrixInverse)return 1;const o=this.pointCoordinate(new c.P(0,0)),d=[o.x*this.worldSize,o.y*this.worldSize,0,1];return c.ag(d,d,this.pixelMatrix)[3]/this.cameraToCenterDistance}getCameraPoint(){const o=Math.tan(this._pitch)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new c.P(0,o))}getCameraQueryGeometry(o){const d=this.getCameraPoint();if(o.length===1)return[o[0],d];{let p=d.x,g=d.y,y=d.x,S=d.y;for(const A of o)p=Math.min(p,A.x),g=Math.min(g,A.y),y=Math.max(y,A.x),S=Math.max(S,A.y);return[new c.P(p,g),new c.P(y,g),new c.P(y,S),new c.P(p,S),new c.P(p,g)]}}lngLatToCameraDepth(o,d){const p=this.locationCoordinate(o),g=[p.x*this.worldSize,p.y*this.worldSize,d,1];return c.ag(g,g,this.modelViewProjectionMatrix),g[2]/g[3]}}function Ou(b,o){let d,p=!1,g=null,y=null;const S=()=>{g=null,p&&(b.apply(y,d),g=setTimeout(S,o),p=!1)};return(...A)=>(p=!0,y=this,d=A,g||S(),g)}class lc{constructor(o){this._getCurrentHash=()=>{const d=window.location.hash.replace("#","");if(this._hashName){let p;return d.split("&").map(g=>g.split("=")).forEach(g=>{g[0]===this._hashName&&(p=g)}),(p&&p[1]||"").split("/")}return d.split("/")},this._onHashChange=()=>{const d=this._getCurrentHash();if(d.length>=3&&!d.some(p=>isNaN(p))){const p=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(d[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+d[2],+d[1]],zoom:+d[0],bearing:p,pitch:+(d[4]||0)}),!0}return!1},this._updateHashUnthrottled=()=>{const d=window.location.href.replace(/(#.+)?$/,this.getHashString());window.history.replaceState(window.history.state,null,d)},this._removeHash=()=>{const d=this._getCurrentHash();if(d.length===0)return;const p=d.join("/");let g=p;g.split("&").length>0&&(g=g.split("&")[0]),this._hashName&&(g=`${this._hashName}=${p}`);let y=window.location.hash.replace(g,"");y.startsWith("#&")?y=y.slice(0,1)+y.slice(2):y==="#"&&(y="");let S=window.location.href.replace(/(#.+)?$/,y);S=S.replace("&&","&"),window.history.replaceState(window.history.state,null,S)},this._updateHash=Ou(this._updateHashUnthrottled,300),this._hashName=o&&encodeURIComponent(o)}addTo(o){return this._map=o,addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this}remove(){return removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),clearTimeout(this._updateHash()),this._removeHash(),delete this._map,this}getHashString(o){const d=this._map.getCenter(),p=Math.round(100*this._map.getZoom())/100,g=Math.ceil((p*Math.LN2+Math.log(512/360/.5))/Math.LN10),y=Math.pow(10,g),S=Math.round(d.lng*y)/y,A=Math.round(d.lat*y)/y,M=this._map.getBearing(),k=this._map.getPitch();let F="";if(F+=o?`/${S}/${A}/${p}`:`${p}/${A}/${S}`,(M||k)&&(F+="/"+Math.round(10*M)/10),k&&(F+=`/${Math.round(k)}`),this._hashName){const N=this._hashName;let $=!1;const X=window.location.hash.slice(1).split("&").map(Q=>{const re=Q.split("=")[0];return re===N?($=!0,`${re}=${F}`):Q}).filter(Q=>Q);return $||X.push(`${N}=${F}`),`#${X.join("&")}`}return`#${F}`}}const _a={linearity:.3,easing:c.b8(0,0,.3,1)},Hd=c.e({deceleration:2500,maxSpeed:1400},_a),qd=c.e({deceleration:20,maxSpeed:1400},_a),Bg=c.e({deceleration:1e3,maxSpeed:360},_a),Du=c.e({deceleration:1e3,maxSpeed:90},_a);class Fu{constructor(o){this._map=o,this.clear()}clear(){this._inertiaBuffer=[]}record(o){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:C.now(),settings:o})}_drainInertiaBuffer(){const o=this._inertiaBuffer,d=C.now();for(;o.length>0&&d-o[0].time>160;)o.shift()}_onMoveEnd(o){if(this._drainInertiaBuffer(),this._inertiaBuffer.length<2)return;const d={zoom:0,bearing:0,pitch:0,pan:new c.P(0,0),pinchAround:void 0,around:void 0};for(const{settings:y}of this._inertiaBuffer)d.zoom+=y.zoomDelta||0,d.bearing+=y.bearingDelta||0,d.pitch+=y.pitchDelta||0,y.panDelta&&d.pan._add(y.panDelta),y.around&&(d.around=y.around),y.pinchAround&&(d.pinchAround=y.pinchAround);const p=this._inertiaBuffer[this._inertiaBuffer.length-1].time-this._inertiaBuffer[0].time,g={};if(d.pan.mag()){const y=Nu(d.pan.mag(),p,c.e({},Hd,o||{}));g.offset=d.pan.mult(y.amount/d.pan.mag()),g.center=this._map.transform.center,qa(g,y)}if(d.zoom){const y=Nu(d.zoom,p,qd);g.zoom=this._map.transform.zoom+y.amount,qa(g,y)}if(d.bearing){const y=Nu(d.bearing,p,Bg);g.bearing=this._map.transform.bearing+c.ad(y.amount,-179,179),qa(g,y)}if(d.pitch){const y=Nu(d.pitch,p,Du);g.pitch=this._map.transform.pitch+y.amount,qa(g,y)}if(g.zoom||g.bearing){const y=d.pinchAround===void 0?d.around:d.pinchAround;g.around=y?this._map.unproject(y):this._map.getCenter()}return this.clear(),c.e(g,{noMoveStart:!0})}}function qa(b,o){(!b.duration||b.durationd.unproject(M)),A=y.reduce((M,k,F,N)=>M.add(k.div(N.length)),new c.P(0,0));super(o,{points:y,point:A,lngLats:S,lngLat:d.unproject(A),originalEvent:p}),this._defaultPrevented=!1}}class Xd extends c.k{preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}constructor(o,d,p){super(o,{originalEvent:p}),this._defaultPrevented=!1}}class Bu{constructor(o,d){this._map=o,this._clickTolerance=d.clickTolerance}reset(){delete this._mousedownPos}wheel(o){return this._firePreventable(new Xd(o.type,this._map,o))}mousedown(o,d){return this._mousedownPos=d,this._firePreventable(new rn(o.type,this._map,o))}mouseup(o){this._map.fire(new rn(o.type,this._map,o))}click(o,d){this._mousedownPos&&this._mousedownPos.dist(d)>=this._clickTolerance||this._map.fire(new rn(o.type,this._map,o))}dblclick(o){return this._firePreventable(new rn(o.type,this._map,o))}mouseover(o){this._map.fire(new rn(o.type,this._map,o))}mouseout(o){this._map.fire(new rn(o.type,this._map,o))}touchstart(o){return this._firePreventable(new cc(o.type,this._map,o))}touchmove(o){this._map.fire(new cc(o.type,this._map,o))}touchend(o){this._map.fire(new cc(o.type,this._map,o))}touchcancel(o){this._map.fire(new cc(o.type,this._map,o))}_firePreventable(o){if(this._map.fire(o),o.defaultPrevented)return{}}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class Zd{constructor(o){this._map=o}reset(){this._delayContextMenu=!1,this._ignoreContextMenu=!0,delete this._contextMenuEvent}mousemove(o){this._map.fire(new rn(o.type,this._map,o))}mousedown(){this._delayContextMenu=!0,this._ignoreContextMenu=!1}mouseup(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new rn("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)}contextmenu(o){this._delayContextMenu?this._contextMenuEvent=o:this._ignoreContextMenu||this._map.fire(new rn(o.type,this._map,o)),this._map.listens("contextmenu")&&o.preventDefault()}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class Xa{constructor(o){this._map=o}get transform(){return this._map._requestedCameraState||this._map.transform}get center(){return{lng:this.transform.center.lng,lat:this.transform.center.lat}}get zoom(){return this.transform.zoom}get pitch(){return this.transform.pitch}get bearing(){return this.transform.bearing}unproject(o){return this.transform.pointLocation(c.P.convert(o),this._map.terrain)}}class Yd{constructor(o,d){this._map=o,this._tr=new Xa(o),this._el=o.getCanvasContainer(),this._container=o.getContainer(),this._clickTolerance=d.clickTolerance||1}isEnabled(){return!!this._enabled}isActive(){return!!this._active}enable(){this.isEnabled()||(this._enabled=!0)}disable(){this.isEnabled()&&(this._enabled=!1)}mousedown(o,d){this.isEnabled()&&o.shiftKey&&o.button===0&&(P.disableDrag(),this._startPos=this._lastPos=d,this._active=!0)}mousemoveWindow(o,d){if(!this._active)return;const p=d;if(this._lastPos.equals(p)||!this._box&&p.dist(this._startPos)y.fitScreenCoordinates(p,g,this._tr.bearing,{linear:!0})};this._fireEvent("boxzoomcancel",o)}keydown(o){this._active&&o.keyCode===27&&(this.reset(),this._fireEvent("boxzoomcancel",o))}reset(){this._active=!1,this._container.classList.remove("maplibregl-crosshair"),this._box&&(P.remove(this._box),this._box=null),P.enableDrag(),delete this._startPos,delete this._lastPos}_fireEvent(o,d){return this._map.fire(new c.k(o,{originalEvent:d}))}}function Za(b,o){if(b.length!==o.length)throw new Error(`The number of touches and points are not equal - touches ${b.length}, points ${o.length}`);const d={};for(let p=0;pthis.numTouches)&&(this.aborted=!0),this.aborted||(this.startTime===void 0&&(this.startTime=o.timeStamp),p.length===this.numTouches&&(this.centroid=function(g){const y=new c.P(0,0);for(const S of g)y._add(S);return y.div(g.length)}(d),this.touches=Za(p,d)))}touchmove(o,d,p){if(this.aborted||!this.centroid)return;const g=Za(p,d);for(const y in this.touches){const S=g[y];(!S||S.dist(this.touches[y])>30)&&(this.aborted=!0)}}touchend(o,d,p){if((!this.centroid||o.timeStamp-this.startTime>500)&&(this.aborted=!0),p.length===0){const g=!this.aborted&&this.centroid;if(this.reset(),g)return g}}}class Jd{constructor(o){this.singleTap=new Kd(o),this.numTaps=o.numTaps,this.reset()}reset(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()}touchstart(o,d,p){this.singleTap.touchstart(o,d,p)}touchmove(o,d,p){this.singleTap.touchmove(o,d,p)}touchend(o,d,p){const g=this.singleTap.touchend(o,d,p);if(g){const y=o.timeStamp-this.lastTime<500,S=!this.lastTap||this.lastTap.dist(g)<30;if(y&&S||this.reset(),this.count++,this.lastTime=o.timeStamp,this.lastTap=g,this.count===this.numTaps)return this.reset(),g}}}class Lg{constructor(o){this._tr=new Xa(o),this._zoomIn=new Jd({numTouches:1,numTaps:2}),this._zoomOut=new Jd({numTouches:2,numTaps:1}),this.reset()}reset(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset()}touchstart(o,d,p){this._zoomIn.touchstart(o,d,p),this._zoomOut.touchstart(o,d,p)}touchmove(o,d,p){this._zoomIn.touchmove(o,d,p),this._zoomOut.touchmove(o,d,p)}touchend(o,d,p){const g=this._zoomIn.touchend(o,d,p),y=this._zoomOut.touchend(o,d,p),S=this._tr;return g?(this._active=!0,o.preventDefault(),setTimeout(()=>this.reset(),0),{cameraAnimation:A=>A.easeTo({duration:300,zoom:S.zoom+1,around:S.unproject(g)},{originalEvent:o})}):y?(this._active=!0,o.preventDefault(),setTimeout(()=>this.reset(),0),{cameraAnimation:A=>A.easeTo({duration:300,zoom:S.zoom-1,around:S.unproject(y)},{originalEvent:o})}):void 0}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class Ri{constructor(o){this._enabled=!!o.enable,this._moveStateManager=o.moveStateManager,this._clickTolerance=o.clickTolerance||1,this._moveFunction=o.move,this._activateOnStart=!!o.activateOnStart,o.assignEvents(this),this.reset()}reset(o){this._active=!1,this._moved=!1,delete this._lastPoint,this._moveStateManager.endMove(o)}_move(...o){const d=this._moveFunction(...o);if(d.bearingDelta||d.pitchDelta||d.around||d.panDelta)return this._active=!0,d}dragStart(o,d){this.isEnabled()&&!this._lastPoint&&this._moveStateManager.isValidStartEvent(o)&&(this._moveStateManager.startMove(o),this._lastPoint=d.length?d[0]:d,this._activateOnStart&&this._lastPoint&&(this._active=!0))}dragMove(o,d){if(!this.isEnabled())return;const p=this._lastPoint;if(!p)return;if(o.preventDefault(),!this._moveStateManager.isValidMoveEvent(o))return void this.reset(o);const g=d.length?d[0]:d;return!this._moved&&g.dist(p){b.mousedown=b.dragStart,b.mousemoveWindow=b.dragMove,b.mouseup=b.dragEnd,b.contextmenu=o=>{o.preventDefault()}},Gd=({enable:b,clickTolerance:o,bearingDegreesPerPixelMoved:d=.8})=>{const p=new gn({checkCorrectEvent:g=>P.mouseButton(g)===0&&g.ctrlKey||P.mouseButton(g)===2});return new Ri({clickTolerance:o,move:(g,y)=>({bearingDelta:(y.x-g.x)*d}),moveStateManager:p,enable:b,assignEvents:uc})},ba=({enable:b,clickTolerance:o,pitchDegreesPerPixelMoved:d=-.5})=>{const p=new gn({checkCorrectEvent:g=>P.mouseButton(g)===0&&g.ctrlKey||P.mouseButton(g)===2});return new Ri({clickTolerance:o,move:(g,y)=>({pitchDelta:(y.y-g.y)*d}),moveStateManager:p,enable:b,assignEvents:uc})};class hc{constructor(o,d){this._clickTolerance=o.clickTolerance||1,this._map=d,this.reset()}reset(){this._active=!1,this._touches={},this._sum=new c.P(0,0)}_shouldBePrevented(o){return o<(this._map.cooperativeGestures.isEnabled()?2:1)}touchstart(o,d,p){return this._calculateTransform(o,d,p)}touchmove(o,d,p){if(this._active){if(!this._shouldBePrevented(p.length))return o.preventDefault(),this._calculateTransform(o,d,p);this._map.cooperativeGestures.notifyGestureBlocked("touch_pan",o)}}touchend(o,d,p){this._calculateTransform(o,d,p),this._active&&this._shouldBePrevented(p.length)&&this.reset()}touchcancel(){this.reset()}_calculateTransform(o,d,p){p.length>0&&(this._active=!0);const g=Za(p,d),y=new c.P(0,0),S=new c.P(0,0);let A=0;for(const k in g){const F=g[k],N=this._touches[k];N&&(y._add(F),S._add(F.sub(N)),A++,g[k]=F)}if(this._touches=g,this._shouldBePrevented(A)||!S.mag())return;const M=S.div(A);return this._sum._add(M),this._sum.mag()Math.abs(b.x)}class nf extends dc{constructor(o){super(),this._currentTouchCount=0,this._map=o}reset(){super.reset(),this._valid=void 0,delete this._firstMove,delete this._lastPoints}touchstart(o,d,p){super.touchstart(o,d,p),this._currentTouchCount=p.length}_start(o){this._lastPoints=o,to(o[0].sub(o[1]))&&(this._valid=!1)}_move(o,d,p){if(this._map.cooperativeGestures.isEnabled()&&this._currentTouchCount<3)return;const g=o[0].sub(this._lastPoints[0]),y=o[1].sub(this._lastPoints[1]);return this._valid=this.gestureBeginsVertically(g,y,p.timeStamp),this._valid?(this._lastPoints=o,this._active=!0,{pitchDelta:(g.y+y.y)/2*-.5}):void 0}gestureBeginsVertically(o,d,p){if(this._valid!==void 0)return this._valid;const g=o.mag()>=2,y=d.mag()>=2;if(!g&&!y)return;if(!g||!y)return this._firstMove===void 0&&(this._firstMove=p),p-this._firstMove<100&&void 0;const S=o.y>0==d.y>0;return to(o)&&to(d)&&S}}const zg={panStep:100,bearingStep:15,pitchStep:10};class rf{constructor(o){this._tr=new Xa(o);const d=zg;this._panStep=d.panStep,this._bearingStep=d.bearingStep,this._pitchStep=d.pitchStep,this._rotationDisabled=!1}reset(){this._active=!1}keydown(o){if(o.altKey||o.ctrlKey||o.metaKey)return;let d=0,p=0,g=0,y=0,S=0;switch(o.keyCode){case 61:case 107:case 171:case 187:d=1;break;case 189:case 109:case 173:d=-1;break;case 37:o.shiftKey?p=-1:(o.preventDefault(),y=-1);break;case 39:o.shiftKey?p=1:(o.preventDefault(),y=1);break;case 38:o.shiftKey?g=1:(o.preventDefault(),S=-1);break;case 40:o.shiftKey?g=-1:(o.preventDefault(),S=1);break;default:return}return this._rotationDisabled&&(p=0,g=0),{cameraAnimation:A=>{const M=this._tr;A.easeTo({duration:300,easeId:"keyboardHandler",easing:Ug,zoom:d?Math.round(M.zoom)+d*(o.shiftKey?2:1):M.zoom,bearing:M.bearing+p*this._bearingStep,pitch:M.pitch+g*this._pitchStep,offset:[-y*this._panStep,-S*this._panStep],center:M.center},{originalEvent:o})}}}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 Ug(b){return b*(2-b)}const of=4.000244140625;class af{constructor(o,d){this._onTimeout=p=>{this._type="wheel",this._delta-=this._lastValue,this._active||this._start(p)},this._map=o,this._tr=new Xa(o),this._triggerRenderFrame=d,this._delta=0,this._defaultZoomRate=.01,this._wheelZoomRate=.0022222222222222222}setZoomRate(o){this._defaultZoomRate=o}setWheelZoomRate(o){this._wheelZoomRate=o}isEnabled(){return!!this._enabled}isActive(){return!!this._active||this._finishTimeout!==void 0}isZooming(){return!!this._zooming}enable(o){this.isEnabled()||(this._enabled=!0,this._aroundCenter=!!o&&o.around==="center")}disable(){this.isEnabled()&&(this._enabled=!1)}_shouldBePrevented(o){return!!this._map.cooperativeGestures.isEnabled()&&!(o.ctrlKey||this._map.cooperativeGestures.isBypassed(o))}wheel(o){if(!this.isEnabled())return;if(this._shouldBePrevented(o))return void this._map.cooperativeGestures.notifyGestureBlocked("wheel_zoom",o);let d=o.deltaMode===WheelEvent.DOM_DELTA_LINE?40*o.deltaY:o.deltaY;const p=C.now(),g=p-(this._lastWheelEventTime||0);this._lastWheelEventTime=p,d!==0&&d%of==0?this._type="wheel":d!==0&&Math.abs(d)<4?this._type="trackpad":g>400?(this._type=null,this._lastValue=d,this._timeout=setTimeout(this._onTimeout,40,o)):this._type||(this._type=Math.abs(g*d)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,d+=this._lastValue)),o.shiftKey&&d&&(d/=4),this._type&&(this._lastWheelEvent=o,this._delta-=d,this._active||this._start(o)),o.preventDefault()}_start(o){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 d=P.mousePos(this._map.getCanvas(),o),p=this._tr;this._around=d.y>p.transform.height/2-p.transform.getHorizon()?c.N.convert(this._aroundCenter?p.center:p.unproject(d)):c.N.convert(p.center),this._aroundPoint=p.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._triggerRenderFrame())}renderFrame(){if(!this._frameId||(this._frameId=null,!this.isActive()))return;const o=this._tr.transform;if(this._delta!==0){const M=this._type==="wheel"&&Math.abs(this._delta)>of?this._wheelZoomRate:this._defaultZoomRate;let k=2/(1+Math.exp(-Math.abs(this._delta*M)));this._delta<0&&k!==0&&(k=1/k);const F=typeof this._targetZoom=="number"?o.zoomScale(this._targetZoom):o.scale;this._targetZoom=Math.min(o.maxZoom,Math.max(o.minZoom,o.scaleZoom(F*k))),this._type==="wheel"&&(this._startZoom=o.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}const d=typeof this._targetZoom=="number"?this._targetZoom:o.zoom,p=this._startZoom,g=this._easing;let y,S=!1;const A=C.now()-this._lastWheelEventTime;if(this._type==="wheel"&&p&&g&&A){const M=Math.min(A/200,1),k=g(M);y=c.z.number(p,d,k),M<1?this._frameId||(this._frameId=!0):S=!0}else y=d,S=!0;return this._active=!0,S&&(this._active=!1,this._finishTimeout=setTimeout(()=>{this._zooming=!1,this._triggerRenderFrame(),delete this._targetZoom,delete this._finishTimeout},200)),{noInertia:!0,needsRenderFrame:!S,zoomDelta:y-o.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}_smoothOutEasing(o){let d=c.b9;if(this._prevEase){const p=this._prevEase,g=(C.now()-p.start)/p.duration,y=p.easing(g+.01)-p.easing(g),S=.27/Math.sqrt(y*y+1e-4)*.01,A=Math.sqrt(.0729-S*S);d=c.b8(S,A,.25,1)}return this._prevEase={start:C.now(),duration:o,easing:d},d}reset(){this._active=!1,this._zooming=!1,delete this._targetZoom,this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout)}}class lf{constructor(o,d){this._clickZoom=o,this._tapZoom=d}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 pc{constructor(o){this._tr=new Xa(o),this.reset()}reset(){this._active=!1}dblclick(o,d){return o.preventDefault(),{cameraAnimation:p=>{p.easeTo({duration:300,zoom:this._tr.zoom+(o.shiftKey?-1:1),around:this._tr.unproject(d)},{originalEvent:o})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class Vg{constructor(){this._tap=new Jd({numTouches:1,numTaps:1}),this.reset()}reset(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,delete this._tapPoint,this._tap.reset()}touchstart(o,d,p){if(!this._swipePoint)if(this._tapTime){const g=d[0],y=o.timeStamp-this._tapTime<500,S=this._tapPoint.dist(g)<30;y&&S?p.length>0&&(this._swipePoint=g,this._swipeTouch=p[0].identifier):this.reset()}else this._tap.touchstart(o,d,p)}touchmove(o,d,p){if(this._tapTime){if(this._swipePoint){if(p[0].identifier!==this._swipeTouch)return;const g=d[0],y=g.y-this._swipePoint.y;return this._swipePoint=g,o.preventDefault(),this._active=!0,{zoomDelta:y/128}}}else this._tap.touchmove(o,d,p)}touchend(o,d,p){if(this._tapTime)this._swipePoint&&p.length===0&&this.reset();else{const g=this._tap.touchend(o,d,p);g&&(this._tapTime=o.timeStamp,this._tapPoint=g)}}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class Jn{constructor(o,d,p){this._el=o,this._mousePan=d,this._touchPan=p}enable(o){this._inertiaOptions=o||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("maplibregl-touch-drag-pan")}disable(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("maplibregl-touch-drag-pan")}isEnabled(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()}isActive(){return this._mousePan.isActive()||this._touchPan.isActive()}}class gr{constructor(o,d,p){this._pitchWithRotate=o.pitchWithRotate,this._mouseRotate=d,this._mousePitch=p}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 cf{constructor(o,d,p,g){this._el=o,this._touchZoom=d,this._touchRotate=p,this._tapDragZoom=g,this._rotationDisabled=!1,this._enabled=!0}enable(o){this._touchZoom.enable(o),this._rotationDisabled||this._touchRotate.enable(o),this._tapDragZoom.enable(),this._el.classList.add("maplibregl-touch-zoom-rotate")}disable(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("maplibregl-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()}}class mr{constructor(o,d){this._bypassKey=navigator.userAgent.indexOf("Mac")!==-1?"metaKey":"ctrlKey",this._map=o,this._options=d,this._enabled=!1}isActive(){return!1}reset(){}_setupUI(){if(this._container)return;const o=this._map.getCanvasContainer();o.classList.add("maplibregl-cooperative-gestures"),this._container=P.create("div","maplibregl-cooperative-gesture-screen",o);let d=this._map._getUIString("CooperativeGesturesHandler.WindowsHelpText");this._bypassKey==="metaKey"&&(d=this._map._getUIString("CooperativeGesturesHandler.MacHelpText"));const p=this._map._getUIString("CooperativeGesturesHandler.MobileHelpText"),g=document.createElement("div");g.className="maplibregl-desktop-message",g.textContent=d,this._container.appendChild(g);const y=document.createElement("div");y.className="maplibregl-mobile-message",y.textContent=p,this._container.appendChild(y),this._container.setAttribute("aria-hidden","true")}_destroyUI(){this._container&&(P.remove(this._container),this._map.getCanvasContainer().classList.remove("maplibregl-cooperative-gestures")),delete this._container}enable(){this._setupUI(),this._enabled=!0}disable(){this._enabled=!1,this._destroyUI()}isEnabled(){return this._enabled}isBypassed(o){return o[this._bypassKey]}notifyGestureBlocked(o,d){this._enabled&&(this._map.fire(new c.k("cooperativegestureprevented",{gestureType:o,originalEvent:d})),this._container.classList.add("maplibregl-show"),setTimeout(()=>{this._container.classList.remove("maplibregl-show")},100))}}const io=b=>b.zoom||b.drag||b.pitch||b.rotate;class Q0 extends c.k{}function uf(b){return b.panDelta&&b.panDelta.mag()||b.zoomDelta||b.bearingDelta||b.pitchDelta}class eb{constructor(o,d){this.handleWindowEvent=g=>{this.handleEvent(g,`${g.type}Window`)},this.handleEvent=(g,y)=>{if(g.type==="blur")return void this.stop(!0);this._updatingCamera=!0;const S=g.type==="renderFrame"?void 0:g,A={needsRenderFrame:!1},M={},k={},F=g.touches,N=F?this._getMapTouches(F):void 0,$=N?P.touchPos(this._map.getCanvas(),N):P.mousePos(this._map.getCanvas(),g);for(const{handlerName:re,handler:se,allowed:ae}of this._handlers){if(!se.isEnabled())continue;let me;this._blockedByActive(k,ae,re)?se.reset():se[y||g.type]&&(me=se[y||g.type](g,$,N),this.mergeHandlerResult(A,M,me,re,S),me&&me.needsRenderFrame&&this._triggerRenderFrame()),(me||se.isActive())&&(k[re]=se)}const X={};for(const re in this._previousActiveHandlers)k[re]||(X[re]=S);this._previousActiveHandlers=k,(Object.keys(X).length||uf(A))&&(this._changes.push([A,M,X]),this._triggerRenderFrame()),(Object.keys(k).length||uf(A))&&this._map._stop(!0),this._updatingCamera=!1;const{cameraAnimation:Q}=A;Q&&(this._inertia.clear(),this._fireEvents({},{},!0),this._changes=[],Q(this._map))},this._map=o,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new Fu(o),this._bearingSnap=d.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(d);const p=this._el;this._listeners=[[p,"touchstart",{passive:!0}],[p,"touchmove",{passive:!1}],[p,"touchend",void 0],[p,"touchcancel",void 0],[p,"mousedown",void 0],[p,"mousemove",void 0],[p,"mouseup",void 0],[document,"mousemove",{capture:!0}],[document,"mouseup",void 0],[p,"mouseover",void 0],[p,"mouseout",void 0],[p,"dblclick",void 0],[p,"click",void 0],[p,"keydown",{capture:!1}],[p,"keyup",void 0],[p,"wheel",{passive:!1}],[p,"contextmenu",void 0],[window,"blur",void 0]];for(const[g,y,S]of this._listeners)P.addEventListener(g,y,g===document?this.handleWindowEvent:this.handleEvent,S)}destroy(){for(const[o,d,p]of this._listeners)P.removeEventListener(o,d,o===document?this.handleWindowEvent:this.handleEvent,p)}_addDefaultHandlers(o){const d=this._map,p=d.getCanvasContainer();this._add("mapEvent",new Bu(d,o));const g=d.boxZoom=new Yd(d,o);this._add("boxZoom",g),o.interactive&&o.boxZoom&&g.enable();const y=d.cooperativeGestures=new mr(d,o.cooperativeGestures);this._add("cooperativeGestures",y),o.cooperativeGestures&&y.enable();const S=new Lg(d),A=new pc(d);d.doubleClickZoom=new lf(A,S),this._add("tapZoom",S),this._add("clickZoom",A),o.interactive&&o.doubleClickZoom&&d.doubleClickZoom.enable();const M=new Vg;this._add("tapDragZoom",M);const k=d.touchPitch=new nf(d);this._add("touchPitch",k),o.interactive&&o.touchPitch&&d.touchPitch.enable(o.touchPitch);const F=Gd(o),N=ba(o);d.dragRotate=new gr(o,F,N),this._add("mouseRotate",F,["mousePitch"]),this._add("mousePitch",N,["mouseRotate"]),o.interactive&&o.dragRotate&&d.dragRotate.enable();const $=(({enable:me,clickTolerance:te})=>{const ve=new gn({checkCorrectEvent:Ie=>P.mouseButton(Ie)===0&&!Ie.ctrlKey});return new Ri({clickTolerance:te,move:(Ie,Me)=>({around:Me,panDelta:Me.sub(Ie)}),activateOnStart:!0,moveStateManager:ve,enable:me,assignEvents:uc})})(o),X=new hc(o,d);d.dragPan=new Jn(p,$,X),this._add("mousePan",$),this._add("touchPan",X,["touchZoom","touchRotate"]),o.interactive&&o.dragPan&&d.dragPan.enable(o.dragPan);const Q=new sf,re=new ef;d.touchZoomRotate=new cf(p,re,Q,M),this._add("touchRotate",Q,["touchPan","touchZoom"]),this._add("touchZoom",re,["touchPan","touchRotate"]),o.interactive&&o.touchZoomRotate&&d.touchZoomRotate.enable(o.touchZoomRotate);const se=d.scrollZoom=new af(d,()=>this._triggerRenderFrame());this._add("scrollZoom",se,["mousePan"]),o.interactive&&o.scrollZoom&&d.scrollZoom.enable(o.scrollZoom);const ae=d.keyboard=new rf(d);this._add("keyboard",ae),o.interactive&&o.keyboard&&d.keyboard.enable(),this._add("blockableMapEvent",new Zd(d))}_add(o,d,p){this._handlers.push({handlerName:o,handler:d,allowed:p}),this._handlersById[o]=d}stop(o){if(!this._updatingCamera){for(const{handler:d}of this._handlers)d.reset();this._inertia.clear(),this._fireEvents({},{},o),this._changes=[]}}isActive(){for(const{handler:o}of this._handlers)if(o.isActive())return!0;return!1}isZooming(){return!!this._eventsInProgress.zoom||this._map.scrollZoom.isZooming()}isRotating(){return!!this._eventsInProgress.rotate}isMoving(){return!!io(this._eventsInProgress)||this.isZooming()}_blockedByActive(o,d,p){for(const g in o)if(g!==p&&(!d||d.indexOf(g)<0))return!0;return!1}_getMapTouches(o){const d=[];for(const p of o)this._el.contains(p.target)&&d.push(p);return d}mergeHandlerResult(o,d,p,g,y){if(!p)return;c.e(o,p);const S={handlerName:g,originalEvent:p.originalEvent||y};p.zoomDelta!==void 0&&(d.zoom=S),p.panDelta!==void 0&&(d.drag=S),p.pitchDelta!==void 0&&(d.pitch=S),p.bearingDelta!==void 0&&(d.rotate=S)}_applyChanges(){const o={},d={},p={};for(const[g,y,S]of this._changes)g.panDelta&&(o.panDelta=(o.panDelta||new c.P(0,0))._add(g.panDelta)),g.zoomDelta&&(o.zoomDelta=(o.zoomDelta||0)+g.zoomDelta),g.bearingDelta&&(o.bearingDelta=(o.bearingDelta||0)+g.bearingDelta),g.pitchDelta&&(o.pitchDelta=(o.pitchDelta||0)+g.pitchDelta),g.around!==void 0&&(o.around=g.around),g.pinchAround!==void 0&&(o.pinchAround=g.pinchAround),g.noInertia&&(o.noInertia=g.noInertia),c.e(d,y),c.e(p,S);this._updateMapTransform(o,d,p),this._changes=[]}_updateMapTransform(o,d,p){const g=this._map,y=g._getTransformForUpdate(),S=g.terrain;if(!(uf(o)||S&&this._terrainMovement))return this._fireEvents(d,p,!0);let{panDelta:A,zoomDelta:M,bearingDelta:k,pitchDelta:F,around:N,pinchAround:$}=o;$!==void 0&&(N=$),g._stop(!0),N=N||g.transform.centerPoint;const X=y.pointLocation(A?N.sub(A):N);k&&(y.bearing+=k),F&&(y.pitch+=F),M&&(y.zoom+=M),S?this._terrainMovement||!d.drag&&!d.zoom?d.drag&&this._terrainMovement?y.center=y.pointLocation(y.centerPoint.sub(A)):y.setLocationAtPoint(X,N):(this._terrainMovement=!0,this._map._elevationFreeze=!0,y.setLocationAtPoint(X,N)):y.setLocationAtPoint(X,N),g._applyUpdatedTransform(y),this._map._update(),o.noInertia||this._inertia.record(o),this._fireEvents(d,p,!0)}_fireEvents(o,d,p){const g=io(this._eventsInProgress),y=io(o),S={};for(const N in o){const{originalEvent:$}=o[N];this._eventsInProgress[N]||(S[`${N}start`]=$),this._eventsInProgress[N]=o[N]}!g&&y&&this._fireEvent("movestart",y.originalEvent);for(const N in S)this._fireEvent(N,S[N]);y&&this._fireEvent("move",y.originalEvent);for(const N in o){const{originalEvent:$}=o[N];this._fireEvent(N,$)}const A={};let M;for(const N in this._eventsInProgress){const{handlerName:$,originalEvent:X}=this._eventsInProgress[N];this._handlersById[$].isActive()||(delete this._eventsInProgress[N],M=d[$]||X,A[`${N}end`]=M)}for(const N in A)this._fireEvent(N,A[N]);const k=io(this._eventsInProgress),F=(g||y)&&!k;if(F&&this._terrainMovement){this._map._elevationFreeze=!1,this._terrainMovement=!1;const N=this._map._getTransformForUpdate();N.recalculateZoom(this._map.terrain),this._map._applyUpdatedTransform(N)}if(p&&F){this._updatingCamera=!0;const N=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),$=X=>X!==0&&-this._bearingSnap{delete this._frameId,this.handleEvent(new Q0("renderFrame",{timeStamp:o})),this._applyChanges()})}_triggerRenderFrame(){this._frameId===void 0&&(this._frameId=this._requestFrame())}}class tb extends c.E{constructor(o,d){super(),this._renderFrameCallback=()=>{const p=Math.min((C.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(p)),p<1&&this._easeFrameId?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},this._moving=!1,this._zooming=!1,this.transform=o,this._bearingSnap=d.bearingSnap,this.on("moveend",()=>{delete this._requestedCameraState})}getCenter(){return new c.N(this.transform.center.lng,this.transform.center.lat)}setCenter(o,d){return this.jumpTo({center:o},d)}panBy(o,d,p){return o=c.P.convert(o).mult(-1),this.panTo(this.transform.center,c.e({offset:o},d),p)}panTo(o,d,p){return this.easeTo(c.e({center:o},d),p)}getZoom(){return this.transform.zoom}setZoom(o,d){return this.jumpTo({zoom:o},d),this}zoomTo(o,d,p){return this.easeTo(c.e({zoom:o},d),p)}zoomIn(o,d){return this.zoomTo(this.getZoom()+1,o,d),this}zoomOut(o,d){return this.zoomTo(this.getZoom()-1,o,d),this}getBearing(){return this.transform.bearing}setBearing(o,d){return this.jumpTo({bearing:o},d),this}getPadding(){return this.transform.padding}setPadding(o,d){return this.jumpTo({padding:o},d),this}rotateTo(o,d,p){return this.easeTo(c.e({bearing:o},d),p)}resetNorth(o,d){return this.rotateTo(0,c.e({duration:1e3},o),d),this}resetNorthPitch(o,d){return this.easeTo(c.e({bearing:0,pitch:0,duration:1e3},o),d),this}snapToNorth(o,d){return Math.abs(this.getBearing()){if(this._zooming&&(g.zoom=c.z.number(y,se,Ve)),this._rotating&&(g.bearing=c.z.number(S,k,Ve)),this._pitching&&(g.pitch=c.z.number(A,F,Ve)),this._padding&&(g.interpolatePadding(M,N,Ve),X=g.centerPoint.add($)),this.terrain&&!o.freezeElevation&&this._updateElevation(Ve),ve)g.setLocationAtPoint(ve,Ie);else{const Ke=g.zoomScale(g.zoom-y),ht=se>y?Math.min(2,te):Math.max(.5,te),ft=Math.pow(ht,1-Ve),Je=g.unproject(ae.add(me.mult(Ve*ft)).mult(Ke));g.setLocationAtPoint(g.renderWorldCopies?Je.wrap():Je,X)}this._applyUpdatedTransform(g),this._fireMoveEvents(d)},Ve=>{this.terrain&&o.freezeElevation&&this._finalizeElevation(),this._afterEase(d,Ve)},o),this}_prepareEase(o,d,p={}){this._moving=!0,d||p.moving||this.fire(new c.k("movestart",o)),this._zooming&&!p.zooming&&this.fire(new c.k("zoomstart",o)),this._rotating&&!p.rotating&&this.fire(new c.k("rotatestart",o)),this._pitching&&!p.pitching&&this.fire(new c.k("pitchstart",o))}_prepareElevation(o){this._elevationCenter=o,this._elevationStart=this.transform.elevation,this._elevationTarget=this.terrain.getElevationForLngLatZoom(o,this.transform.tileZoom),this._elevationFreeze=!0}_updateElevation(o){this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this._elevationCenter,this.transform.tileZoom);const d=this.terrain.getElevationForLngLatZoom(this._elevationCenter,this.transform.tileZoom);if(o<1&&d!==this._elevationTarget){const p=this._elevationTarget-this._elevationStart;this._elevationStart+=o*(p-(d-(p*o+this._elevationStart))/(1-o)),this._elevationTarget=d}this.transform.elevation=c.z.number(this._elevationStart,this._elevationTarget,o)}_finalizeElevation(){this._elevationFreeze=!1,this.transform.recalculateZoom(this.terrain)}_getTransformForUpdate(){return this.transformCameraUpdate||this.terrain?(this._requestedCameraState||(this._requestedCameraState=this.transform.clone()),this._requestedCameraState):this.transform}_elevateCameraIfInsideTerrain(o){const d=o.getCameraPosition(),p=this.terrain.getElevationForLngLatZoom(d.lngLat,o.zoom);if(d.altitudethis._elevateCameraIfInsideTerrain(g)),this.transformCameraUpdate&&d.push(g=>this.transformCameraUpdate(g)),!d.length)return;const p=o.clone();for(const g of d){const y=p.clone(),{center:S,zoom:A,pitch:M,bearing:k,elevation:F}=g(y);S&&(y.center=S),A!==void 0&&(y.zoom=A),M!==void 0&&(y.pitch=M),k!==void 0&&(y.bearing=k),F!==void 0&&(y.elevation=F),p.apply(y)}this.transform.apply(p)}_fireMoveEvents(o){this.fire(new c.k("move",o)),this._zooming&&this.fire(new c.k("zoom",o)),this._rotating&&this.fire(new c.k("rotate",o)),this._pitching&&this.fire(new c.k("pitch",o))}_afterEase(o,d){if(this._easeId&&d&&this._easeId===d)return;delete this._easeId;const p=this._zooming,g=this._rotating,y=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,p&&this.fire(new c.k("zoomend",o)),g&&this.fire(new c.k("rotateend",o)),y&&this.fire(new c.k("pitchend",o)),this.fire(new c.k("moveend",o))}flyTo(o,d){var p;if(!o.essential&&C.prefersReducedMotion){const lt=c.M(o,["center","zoom","bearing","pitch","around"]);return this.jumpTo(lt,d)}this.stop(),o=c.e({offset:[0,0],speed:1.2,curve:1.42,easing:c.b9},o);const g=this._getTransformForUpdate(),y=g.zoom,S=g.bearing,A=g.pitch,M=g.padding,k="bearing"in o?this._normalizeBearing(o.bearing,S):S,F="pitch"in o?+o.pitch:A,N="padding"in o?o.padding:g.padding,$=c.P.convert(o.offset);let X=g.centerPoint.add($);const Q=g.pointLocation(X),{center:re,zoom:se}=g.getConstrained(c.N.convert(o.center||Q),(p=o.zoom)!==null&&p!==void 0?p:y);this._normalizeCenter(re,g);const ae=g.zoomScale(se-y),me=g.project(Q),te=g.project(re).sub(me);let ve=o.curve;const Ie=Math.max(g.width,g.height),Me=Ie/ae,Ve=te.mag();if("minZoom"in o){const lt=c.ad(Math.min(o.minZoom,y,se),g.minZoom,g.maxZoom),Ft=Ie/g.zoomScale(lt-y);ve=Math.sqrt(Ft/Ve*2)}const Ke=ve*ve;function ht(lt){const Ft=(Me*Me-Ie*Ie+(lt?-1:1)*Ke*Ke*Ve*Ve)/(2*(lt?Me:Ie)*Ke*Ve);return Math.log(Math.sqrt(Ft*Ft+1)-Ft)}function ft(lt){return(Math.exp(lt)-Math.exp(-lt))/2}function Je(lt){return(Math.exp(lt)+Math.exp(-lt))/2}const it=ht(!1);let bt=function(lt){return Je(it)/Je(it+ve*lt)},Vt=function(lt){return Ie*((Je(it)*(ft(Ft=it+ve*lt)/Je(Ft))-ft(it))/Ke)/Ve;var Ft},nt=(ht(!0)-it)/ve;if(Math.abs(Ve)<1e-6||!isFinite(nt)){if(Math.abs(Ie-Me)<1e-6)return this.easeTo(o,d);const lt=Me0,bt=Ft=>Math.exp(lt*ve*Ft)}return o.duration="duration"in o?+o.duration:1e3*nt/("screenSpeed"in o?+o.screenSpeed/ve:+o.speed),o.maxDuration&&o.duration>o.maxDuration&&(o.duration=0),this._zooming=!0,this._rotating=S!==k,this._pitching=F!==A,this._padding=!g.isPaddingEqual(N),this._prepareEase(d,!1),this.terrain&&this._prepareElevation(re),this._ease(lt=>{const Ft=lt*nt,Mi=1/bt(Ft);g.zoom=lt===1?se:y+g.scaleZoom(Mi),this._rotating&&(g.bearing=c.z.number(S,k,lt)),this._pitching&&(g.pitch=c.z.number(A,F,lt)),this._padding&&(g.interpolatePadding(M,N,lt),X=g.centerPoint.add($)),this.terrain&&!o.freezeElevation&&this._updateElevation(lt);const qt=lt===1?re:g.unproject(me.add(te.mult(Vt(Ft))).mult(Mi));g.setLocationAtPoint(g.renderWorldCopies?qt.wrap():qt,X),this._applyUpdatedTransform(g),this._fireMoveEvents(d)},()=>{this.terrain&&o.freezeElevation&&this._finalizeElevation(),this._afterEase(d)},o),this}isEasing(){return!!this._easeFrameId}stop(){return this._stop()}_stop(o,d){var p;if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){const g=this._onEaseEnd;delete this._onEaseEnd,g.call(this,d)}return o||(p=this.handlers)===null||p===void 0||p.stop(!1),this}_ease(o,d,p){p.animate===!1||p.duration===0?(o(1),d()):(this._easeStart=C.now(),this._easeOptions=p,this._onEaseFrame=o,this._onEaseEnd=d,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))}_normalizeBearing(o,d){o=c.b3(o,-180,180);const p=Math.abs(o-d);return Math.abs(o-360-d)180?-360:p<-180?360:0}queryTerrainElevation(o){return this.terrain?this.terrain.getElevationForLngLatZoom(c.N.convert(o),this.transform.tileZoom)-this.transform.elevation:null}}const hf={compact:!0,customAttribution:'MapLibre'};class Ya{constructor(o=hf){this._toggleAttribution=()=>{this._container.classList.contains("maplibregl-compact")&&(this._container.classList.contains("maplibregl-compact-show")?(this._container.setAttribute("open",""),this._container.classList.remove("maplibregl-compact-show")):(this._container.classList.add("maplibregl-compact-show"),this._container.removeAttribute("open")))},this._updateData=d=>{!d||d.sourceDataType!=="metadata"&&d.sourceDataType!=="visibility"&&d.dataType!=="style"&&d.type!=="terrain"||this._updateAttributions()},this._updateCompact=()=>{this._map.getCanvasContainer().offsetWidth<=640||this._compact?this._compact===!1?this._container.setAttribute("open",""):this._container.classList.contains("maplibregl-compact")||this._container.classList.contains("maplibregl-attrib-empty")||(this._container.setAttribute("open",""),this._container.classList.add("maplibregl-compact","maplibregl-compact-show")):(this._container.setAttribute("open",""),this._container.classList.contains("maplibregl-compact")&&this._container.classList.remove("maplibregl-compact","maplibregl-compact-show"))},this._updateCompactMinimize=()=>{this._container.classList.contains("maplibregl-compact")&&this._container.classList.contains("maplibregl-compact-show")&&this._container.classList.remove("maplibregl-compact-show")},this.options=o}getDefaultPosition(){return"bottom-right"}onAdd(o){return this._map=o,this._compact=this.options.compact,this._container=P.create("details","maplibregl-ctrl maplibregl-ctrl-attrib"),this._compactButton=P.create("summary","maplibregl-ctrl-attrib-button",this._container),this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=P.create("div","maplibregl-ctrl-attrib-inner",this._container),this._updateAttributions(),this._updateCompact(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("terrain",this._updateData),this._map.on("resize",this._updateCompact),this._map.on("drag",this._updateCompactMinimize),this._container}onRemove(){P.remove(this._container),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("terrain",this._updateData),this._map.off("resize",this._updateCompact),this._map.off("drag",this._updateCompactMinimize),this._map=void 0,this._compact=void 0,this._attribHTML=void 0}_setElementTitle(o,d){const p=this._map._getUIString(`AttributionControl.${d}`);o.title=p,o.setAttribute("aria-label",p)}_updateAttributions(){if(!this._map.style)return;let o=[];if(this.options.customAttribution&&(Array.isArray(this.options.customAttribution)?o=o.concat(this.options.customAttribution.map(g=>typeof g!="string"?"":g)):typeof this.options.customAttribution=="string"&&o.push(this.options.customAttribution)),this._map.style.stylesheet){const g=this._map.style.stylesheet;this.styleOwner=g.owner,this.styleId=g.id}const d=this._map.style.sourceCaches;for(const g in d){const y=d[g];if(y.used||y.usedForTerrain){const S=y.getSource();S.attribution&&o.indexOf(S.attribution)<0&&o.push(S.attribution)}}o=o.filter(g=>String(g).trim()),o.sort((g,y)=>g.length-y.length),o=o.filter((g,y)=>{for(let S=y+1;S=0)return!1;return!0});const p=o.join(" | ");p!==this._attribHTML&&(this._attribHTML=p,o.length?(this._innerContainer.innerHTML=p,this._container.classList.remove("maplibregl-attrib-empty")):this._container.classList.add("maplibregl-attrib-empty"),this._updateCompact(),this._editLink=null)}}class Lr{constructor(o={}){this._updateCompact=()=>{const d=this._container.children;if(d.length){const p=d[0];this._map.getCanvasContainer().offsetWidth<=640||this._compact?this._compact!==!1&&p.classList.add("maplibregl-compact"):p.classList.remove("maplibregl-compact")}},this.options=o}getDefaultPosition(){return"bottom-left"}onAdd(o){this._map=o,this._compact=this.options&&this.options.compact,this._container=P.create("div","maplibregl-ctrl");const d=P.create("a","maplibregl-ctrl-logo");return d.target="_blank",d.rel="noopener nofollow",d.href="https://maplibre.org/",d.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),d.setAttribute("rel","noopener nofollow"),this._container.appendChild(d),this._container.style.display="block",this._map.on("resize",this._updateCompact),this._updateCompact(),this._container}onRemove(){P.remove(this._container),this._map.off("resize",this._updateCompact),this._map=void 0,this._compact=void 0}}class mt{constructor(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1}add(o){const d=++this._id;return this._queue.push({callback:o,id:d,cancelled:!1}),d}remove(o){const d=this._currentlyRunning,p=d?this._queue.concat(d):this._queue;for(const g of p)if(g.id===o)return void(g.cancelled=!0)}run(o=0){if(this._currentlyRunning)throw new Error("Attempting to run(), but is already running.");const d=this._currentlyRunning=this._queue;this._queue=[];for(const p of d)if(!p.cancelled&&(p.callback(o),this._cleared))break;this._cleared=!1,this._currentlyRunning=!1}clear(){this._currentlyRunning&&(this._cleared=!0),this._queue=[]}}var jg=c.Y([{name:"a_pos3d",type:"Int16",components:3}]);class df extends c.E{constructor(o){super(),this.sourceCache=o,this._tiles={},this._renderableTilesKeys=[],this._sourceTileCache={},this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.deltaZoom=1,o.usedForTerrain=!0,o.tileSize=this.tileSize*2**this.deltaZoom}destruct(){this.sourceCache.usedForTerrain=!1,this.sourceCache.tileSize=null}update(o,d){this.sourceCache.update(o,d),this._renderableTilesKeys=[];const p={};for(const g of o.coveringTiles({tileSize:this.tileSize,minzoom:this.minzoom,maxzoom:this.maxzoom,reparseOverscaled:!1,terrain:d}))p[g.key]=!0,this._renderableTilesKeys.push(g.key),this._tiles[g.key]||(g.posMatrix=new Float64Array(16),c.aQ(g.posMatrix,0,c.X,0,c.X,0,1),this._tiles[g.key]=new xs(g,this.tileSize));for(const g in this._tiles)p[g]||delete this._tiles[g]}freeRtt(o){for(const d in this._tiles){const p=this._tiles[d];(!o||p.tileID.equals(o)||p.tileID.isChildOf(o)||o.isChildOf(p.tileID))&&(p.rtt=[])}}getRenderableTiles(){return this._renderableTilesKeys.map(o=>this.getTileByID(o))}getTileByID(o){return this._tiles[o]}getTerrainCoords(o){const d={};for(const p of this._renderableTilesKeys){const g=this._tiles[p].tileID;if(g.canonical.equals(o.canonical)){const y=o.clone();y.posMatrix=new Float64Array(16),c.aQ(y.posMatrix,0,c.X,0,c.X,0,1),d[p]=y}else if(g.canonical.isChildOf(o.canonical)){const y=o.clone();y.posMatrix=new Float64Array(16);const S=g.canonical.z-o.canonical.z,A=g.canonical.x-(g.canonical.x>>S<>S<>S;c.aQ(y.posMatrix,0,k,0,k,0,1),c.J(y.posMatrix,y.posMatrix,[-A*k,-M*k,0]),d[p]=y}else if(o.canonical.isChildOf(g.canonical)){const y=o.clone();y.posMatrix=new Float64Array(16);const S=o.canonical.z-g.canonical.z,A=o.canonical.x-(o.canonical.x>>S<>S<>S;c.aQ(y.posMatrix,0,c.X,0,c.X,0,1),c.J(y.posMatrix,y.posMatrix,[A*k,M*k,0]),c.K(y.posMatrix,y.posMatrix,[1/2**S,1/2**S,0]),d[p]=y}}return d}getSourceTile(o,d){const p=this.sourceCache._source;let g=o.overscaledZ-this.deltaZoom;if(g>p.maxzoom&&(g=p.maxzoom),g=p.minzoom&&(!y||!y.dem);)y=this.sourceCache.getTileByID(o.scaledTo(g--).key);return y}tilesAfterTime(o=Date.now()){return Object.values(this._tiles).filter(d=>d.timeAdded>=o)}}class $g{constructor(o,d,p){this.painter=o,this.sourceCache=new df(d),this.options=p,this.exaggeration=typeof p.exaggeration=="number"?p.exaggeration:1,this.qualityFactor=2,this.meshSize=128,this._demMatrixCache={},this.coordsIndex=[],this._coordsTextureSize=1024}getDEMElevation(o,d,p,g=c.X){var y;if(!(d>=0&&d=0&&po.canonical.z&&(o.canonical.z>=g?y=o.canonical.z-g:c.w("cannot calculate elevation if elevation maxzoom > source.maxzoom"));const S=o.canonical.x-(o.canonical.x>>y<>y<>8<<4|y>>8,d[S+3]=0;const p=new c.R({width:this._coordsTextureSize,height:this._coordsTextureSize},new Uint8Array(d.buffer)),g=new ot(o,p,o.gl.RGBA,{premultiply:!1});return g.bind(o.gl.NEAREST,o.gl.CLAMP_TO_EDGE),this._coordsTexture=g,g}pointCoordinate(o){this.painter.maybeDrawDepthAndCoords(!0);const d=new Uint8Array(4),p=this.painter.context,g=p.gl,y=Math.round(o.x*this.painter.pixelRatio/devicePixelRatio),S=Math.round(o.y*this.painter.pixelRatio/devicePixelRatio),A=Math.round(this.painter.height/devicePixelRatio);p.bindFramebuffer.set(this.getFramebuffer("coords").framebuffer),g.readPixels(y,A-S-1,1,1,g.RGBA,g.UNSIGNED_BYTE,d),p.bindFramebuffer.set(null);const M=d[0]+(d[2]>>4<<8),k=d[1]+((15&d[2])<<8),F=this.coordsIndex[255-d[3]],N=F&&this.sourceCache.getTileByID(F);if(!N)return null;const $=this._coordsTextureSize,X=(1<o.id!==d),this._recentlyUsed.push(o.id)}stampObject(o){o.stamp=++this._stamp}getOrCreateFreeObject(){for(const d of this._recentlyUsed)if(!this._objects[d].inUse)return this._objects[d];if(this._objects.length>=this._size)throw new Error("No free RenderPool available, call freeAllObjects() required!");const o=this._createObject(this._objects.length);return this._objects.push(o),o}freeObject(o){o.inUse=!1}freeAllObjects(){for(const o of this._objects)this.freeObject(o)}isFull(){return!(this._objects.length!o.inUse)===!1}}const zr={background:!0,fill:!0,line:!0,raster:!0,hillshade:!0};class Wg{constructor(o,d){this.painter=o,this.terrain=d,this.pool=new gc(o.context,30,d.sourceCache.tileSize*d.qualityFactor)}destruct(){this.pool.destruct()}getTexture(o){return this.pool.getObjectForId(o.rtt[this._stacks.length-1].id).texture}prepareForRender(o,d){this._stacks=[],this._prevType=null,this._rttTiles=[],this._renderableTiles=this.terrain.sourceCache.getRenderableTiles(),this._renderableLayerIds=o._order.filter(p=>!o._layers[p].isHidden(d)),this._coordsDescendingInv={};for(const p in o.sourceCaches){this._coordsDescendingInv[p]={};const g=o.sourceCaches[p].getVisibleCoordinates();for(const y of g){const S=this.terrain.sourceCache.getTerrainCoords(y);for(const A in S)this._coordsDescendingInv[p][A]||(this._coordsDescendingInv[p][A]=[]),this._coordsDescendingInv[p][A].push(S[A])}}this._coordsDescendingInvStr={};for(const p of o._order){const g=o._layers[p],y=g.source;if(zr[g.type]&&!this._coordsDescendingInvStr[y]){this._coordsDescendingInvStr[y]={};for(const S in this._coordsDescendingInv[y])this._coordsDescendingInvStr[y][S]=this._coordsDescendingInv[y][S].map(A=>A.key).sort().join()}}for(const p of this._renderableTiles)for(const g in this._coordsDescendingInvStr){const y=this._coordsDescendingInvStr[g][p.tileID.key];y&&y!==p.rttCoords[g]&&(p.rtt=[])}}renderLayer(o){if(o.isHidden(this.painter.transform.zoom))return!1;const d=o.type,p=this.painter,g=this._renderableLayerIds[this._renderableLayerIds.length-1]===o.id;if(zr[d]&&(this._prevType&&zr[this._prevType]||this._stacks.push([]),this._prevType=d,this._stacks[this._stacks.length-1].push(o.id),!g))return!0;if(zr[this._prevType]||zr[d]&&g){this._prevType=d;const y=this._stacks.length-1,S=this._stacks[y]||[];for(const A of this._renderableTiles){if(this.pool.isFull()&&(ac(this.painter,this.terrain,this._rttTiles),this._rttTiles=[],this.pool.freeAllObjects()),this._rttTiles.push(A),A.rtt[y]){const k=this.pool.getObjectForId(A.rtt[y].id);if(k.stamp===A.rtt[y].stamp){this.pool.useObject(k);continue}}const M=this.pool.getOrCreateFreeObject();this.pool.useObject(M),this.pool.stampObject(M),A.rtt[y]={id:M.id,stamp:M.stamp},p.context.bindFramebuffer.set(M.fbo.framebuffer),p.context.clear({color:c.aN.transparent,stencil:0}),p.currentStencilSource=void 0;for(let k=0;k{b.touchstart=b.dragStart,b.touchmoveWindow=b.dragMove,b.touchend=b.dragEnd},pf={showCompass:!0,showZoom:!0,visualizePitch:!1};class qg{constructor(o,d,p=!1){this.mousedown=S=>{this.startMouse(c.e({},S,{ctrlKey:!0,preventDefault:()=>S.preventDefault()}),P.mousePos(this.element,S)),P.addEventListener(window,"mousemove",this.mousemove),P.addEventListener(window,"mouseup",this.mouseup)},this.mousemove=S=>{this.moveMouse(S,P.mousePos(this.element,S))},this.mouseup=S=>{this.mouseRotate.dragEnd(S),this.mousePitch&&this.mousePitch.dragEnd(S),this.offTemp()},this.touchstart=S=>{S.targetTouches.length!==1?this.reset():(this._startPos=this._lastPos=P.touchPos(this.element,S.targetTouches)[0],this.startTouch(S,this._startPos),P.addEventListener(window,"touchmove",this.touchmove,{passive:!1}),P.addEventListener(window,"touchend",this.touchend))},this.touchmove=S=>{S.targetTouches.length!==1?this.reset():(this._lastPos=P.touchPos(this.element,S.targetTouches)[0],this.moveTouch(S,this._lastPos))},this.touchend=S=>{S.targetTouches.length===0&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos){this.mouseRotate.reset(),this.mousePitch&&this.mousePitch.reset(),this.touchRotate.reset(),this.touchPitch&&this.touchPitch.reset(),delete this._startPos,delete this._lastPos,this.offTemp()},this._clickTolerance=10;const g=o.dragRotate._mouseRotate.getClickTolerance(),y=o.dragRotate._mousePitch.getClickTolerance();this.element=d,this.mouseRotate=Gd({clickTolerance:g,enable:!0}),this.touchRotate=(({enable:S,clickTolerance:A,bearingDegreesPerPixelMoved:M=.8})=>{const k=new Lu;return new Ri({clickTolerance:A,move:(F,N)=>({bearingDelta:(N.x-F.x)*M}),moveStateManager:k,enable:S,assignEvents:Hg})})({clickTolerance:g,enable:!0}),this.map=o,p&&(this.mousePitch=ba({clickTolerance:y,enable:!0}),this.touchPitch=(({enable:S,clickTolerance:A,pitchDegreesPerPixelMoved:M=-.5})=>{const k=new Lu;return new Ri({clickTolerance:A,move:(F,N)=>({pitchDelta:(N.y-F.y)*M}),moveStateManager:k,enable:S,assignEvents:Hg})})({clickTolerance:y,enable:!0})),P.addEventListener(d,"mousedown",this.mousedown),P.addEventListener(d,"touchstart",this.touchstart,{passive:!1}),P.addEventListener(d,"touchcancel",this.reset)}startMouse(o,d){this.mouseRotate.dragStart(o,d),this.mousePitch&&this.mousePitch.dragStart(o,d),P.disableDrag()}startTouch(o,d){this.touchRotate.dragStart(o,d),this.touchPitch&&this.touchPitch.dragStart(o,d),P.disableDrag()}moveMouse(o,d){const p=this.map,{bearingDelta:g}=this.mouseRotate.dragMove(o,d)||{};if(g&&p.setBearing(p.getBearing()+g),this.mousePitch){const{pitchDelta:y}=this.mousePitch.dragMove(o,d)||{};y&&p.setPitch(p.getPitch()+y)}}moveTouch(o,d){const p=this.map,{bearingDelta:g}=this.touchRotate.dragMove(o,d)||{};if(g&&p.setBearing(p.getBearing()+g),this.touchPitch){const{pitchDelta:y}=this.touchPitch.dragMove(o,d)||{};y&&p.setPitch(p.getPitch()+y)}}off(){const o=this.element;P.removeEventListener(o,"mousedown",this.mousedown),P.removeEventListener(o,"touchstart",this.touchstart,{passive:!1}),P.removeEventListener(window,"touchmove",this.touchmove,{passive:!1}),P.removeEventListener(window,"touchend",this.touchend),P.removeEventListener(o,"touchcancel",this.reset),this.offTemp()}offTemp(){P.enableDrag(),P.removeEventListener(window,"mousemove",this.mousemove),P.removeEventListener(window,"mouseup",this.mouseup),P.removeEventListener(window,"touchmove",this.touchmove,{passive:!1}),P.removeEventListener(window,"touchend",this.touchend)}}let Eo;function Xg(b,o,d){const p=new c.N(b.lng,b.lat);if(b=new c.N(b.lng,b.lat),o){const g=new c.N(b.lng-360,b.lat),y=new c.N(b.lng+360,b.lat),S=d.locationPoint(b).distSqr(o);d.locationPoint(g).distSqr(o)180;){const g=d.locationPoint(b);if(g.x>=0&&g.y>=0&&g.x<=d.width&&g.y<=d.height)break;b.lng>d.center.lng?b.lng-=360:b.lng+=360}return b.lng!==p.lng&&d.locationPoint(b).y>d.height/2-d.getHorizon()?b:p}const gf={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%)"};function Ao(b,o,d){const p=b.classList;for(const g in gf)p.remove(`maplibregl-${d}-anchor-${g}`);p.add(`maplibregl-${d}-anchor-${o}`)}class Si extends c.E{constructor(o){if(super(),this._onKeyPress=d=>{const p=d.code,g=d.charCode||d.keyCode;p!=="Space"&&p!=="Enter"&&g!==32&&g!==13||this.togglePopup()},this._onMapClick=d=>{const p=d.originalEvent.target,g=this._element;this._popup&&(p===g||g.contains(p))&&this.togglePopup()},this._update=d=>{var p;if(!this._map)return;const g=this._map.loaded()&&!this._map.isMoving();((d==null?void 0:d.type)==="terrain"||(d==null?void 0:d.type)==="render"&&!g)&&this._map.once("render",this._update),this._lngLat=this._map.transform.renderWorldCopies?Xg(this._lngLat,this._flatPos,this._map.transform):(p=this._lngLat)===null||p===void 0?void 0:p.wrap(),this._flatPos=this._pos=this._map.project(this._lngLat)._add(this._offset),this._map.terrain&&(this._flatPos=this._map.transform.locationPoint(this._lngLat)._add(this._offset));let y="";this._rotationAlignment==="viewport"||this._rotationAlignment==="auto"?y=`rotateZ(${this._rotation}deg)`:this._rotationAlignment==="map"&&(y=`rotateZ(${this._rotation-this._map.getBearing()}deg)`);let S="";this._pitchAlignment==="viewport"||this._pitchAlignment==="auto"?S="rotateX(0deg)":this._pitchAlignment==="map"&&(S=`rotateX(${this._map.getPitch()}deg)`),this._subpixelPositioning||d&&d.type!=="moveend"||(this._pos=this._pos.round()),P.setTransform(this._element,`${gf[this._anchor]} translate(${this._pos.x}px, ${this._pos.y}px) ${S} ${y}`),C.frameAsync(new AbortController).then(()=>{this._updateOpacity(d&&d.type==="moveend")}).catch(()=>{})},this._onMove=d=>{if(!this._isDragging){const p=this._clickTolerance||this._map._clickTolerance;this._isDragging=d.point.dist(this._pointerdownPos)>=p}this._isDragging&&(this._pos=d.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none",this._state==="pending"&&(this._state="active",this.fire(new c.k("dragstart"))),this.fire(new c.k("drag")))},this._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),this._state==="active"&&this.fire(new c.k("dragend")),this._state="inactive"},this._addDragHandler=d=>{this._element.contains(d.originalEvent.target)&&(d.preventDefault(),this._positionDelta=d.point.sub(this._pos).add(this._offset),this._pointerdownPos=d.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))},this._anchor=o&&o.anchor||"center",this._color=o&&o.color||"#3FB1CE",this._scale=o&&o.scale||1,this._draggable=o&&o.draggable||!1,this._clickTolerance=o&&o.clickTolerance||0,this._subpixelPositioning=o&&o.subpixelPositioning||!1,this._isDragging=!1,this._state="inactive",this._rotation=o&&o.rotation||0,this._rotationAlignment=o&&o.rotationAlignment||"auto",this._pitchAlignment=o&&o.pitchAlignment&&o.pitchAlignment!=="auto"?o.pitchAlignment:this._rotationAlignment,this.setOpacity(),this.setOpacity(o==null?void 0:o.opacity,o==null?void 0:o.opacityWhenCovered),o&&o.element)this._element=o.element,this._offset=c.P.convert(o&&o.offset||[0,0]);else{this._defaultMarker=!0,this._element=P.create("div");const d=P.createNS("http://www.w3.org/2000/svg","svg"),p=41,g=27;d.setAttributeNS(null,"display","block"),d.setAttributeNS(null,"height",`${p}px`),d.setAttributeNS(null,"width",`${g}px`),d.setAttributeNS(null,"viewBox",`0 0 ${g} ${p}`);const y=P.createNS("http://www.w3.org/2000/svg","g");y.setAttributeNS(null,"stroke","none"),y.setAttributeNS(null,"stroke-width","1"),y.setAttributeNS(null,"fill","none"),y.setAttributeNS(null,"fill-rule","evenodd");const S=P.createNS("http://www.w3.org/2000/svg","g");S.setAttributeNS(null,"fill-rule","nonzero");const A=P.createNS("http://www.w3.org/2000/svg","g");A.setAttributeNS(null,"transform","translate(3.0, 29.0)"),A.setAttributeNS(null,"fill","#000000");const M=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}];for(const ae of M){const me=P.createNS("http://www.w3.org/2000/svg","ellipse");me.setAttributeNS(null,"opacity","0.04"),me.setAttributeNS(null,"cx","10.5"),me.setAttributeNS(null,"cy","5.80029008"),me.setAttributeNS(null,"rx",ae.rx),me.setAttributeNS(null,"ry",ae.ry),A.appendChild(me)}const k=P.createNS("http://www.w3.org/2000/svg","g");k.setAttributeNS(null,"fill",this._color);const F=P.createNS("http://www.w3.org/2000/svg","path");F.setAttributeNS(null,"d","M27,13.5 C27,19.074644 20.250001,27.000002 14.75,34.500002 C14.016665,35.500004 12.983335,35.500004 12.25,34.500002 C6.7499993,27.000002 0,19.222562 0,13.5 C0,6.0441559 6.0441559,0 13.5,0 C20.955844,0 27,6.0441559 27,13.5 Z"),k.appendChild(F);const N=P.createNS("http://www.w3.org/2000/svg","g");N.setAttributeNS(null,"opacity","0.25"),N.setAttributeNS(null,"fill","#000000");const $=P.createNS("http://www.w3.org/2000/svg","path");$.setAttributeNS(null,"d","M13.5,0 C6.0441559,0 0,6.0441559 0,13.5 C0,19.222562 6.7499993,27 12.25,34.5 C13,35.522727 14.016664,35.500004 14.75,34.5 C20.250001,27 27,19.074644 27,13.5 C27,6.0441559 20.955844,0 13.5,0 Z M13.5,1 C20.415404,1 26,6.584596 26,13.5 C26,15.898657 24.495584,19.181431 22.220703,22.738281 C19.945823,26.295132 16.705119,30.142167 13.943359,33.908203 C13.743445,34.180814 13.612715,34.322738 13.5,34.441406 C13.387285,34.322738 13.256555,34.180814 13.056641,33.908203 C10.284481,30.127985 7.4148684,26.314159 5.015625,22.773438 C2.6163816,19.232715 1,15.953538 1,13.5 C1,6.584596 6.584596,1 13.5,1 Z"),N.appendChild($);const X=P.createNS("http://www.w3.org/2000/svg","g");X.setAttributeNS(null,"transform","translate(6.0, 7.0)"),X.setAttributeNS(null,"fill","#FFFFFF");const Q=P.createNS("http://www.w3.org/2000/svg","g");Q.setAttributeNS(null,"transform","translate(8.0, 8.0)");const re=P.createNS("http://www.w3.org/2000/svg","circle");re.setAttributeNS(null,"fill","#000000"),re.setAttributeNS(null,"opacity","0.25"),re.setAttributeNS(null,"cx","5.5"),re.setAttributeNS(null,"cy","5.5"),re.setAttributeNS(null,"r","5.4999962");const se=P.createNS("http://www.w3.org/2000/svg","circle");se.setAttributeNS(null,"fill","#FFFFFF"),se.setAttributeNS(null,"cx","5.5"),se.setAttributeNS(null,"cy","5.5"),se.setAttributeNS(null,"r","5.4999962"),Q.appendChild(re),Q.appendChild(se),S.appendChild(A),S.appendChild(k),S.appendChild(N),S.appendChild(X),S.appendChild(Q),d.appendChild(S),d.setAttributeNS(null,"height",p*this._scale+"px"),d.setAttributeNS(null,"width",g*this._scale+"px"),this._element.appendChild(d),this._offset=c.P.convert(o&&o.offset||[0,-14])}if(this._element.classList.add("maplibregl-marker"),this._element.addEventListener("dragstart",d=>{d.preventDefault()}),this._element.addEventListener("mousedown",d=>{d.preventDefault()}),Ao(this._element,this._anchor,"marker"),o&&o.className)for(const d of o.className.split(" "))this._element.classList.add(d);this._popup=null}addTo(o){return this.remove(),this._map=o,this._element.setAttribute("aria-label",o._getUIString("Marker.Title")),o.getCanvasContainer().appendChild(this._element),o.on("move",this._update),o.on("moveend",this._update),o.on("terrain",this._update),this.setDraggable(this._draggable),this._update(),this._map.on("click",this._onMapClick),this}remove(){return this._opacityTimeout&&(clearTimeout(this._opacityTimeout),delete this._opacityTimeout),this._map&&(this._map.off("click",this._onMapClick),this._map.off("move",this._update),this._map.off("moveend",this._update),this._map.off("terrain",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),delete this._map),P.remove(this._element),this._popup&&this._popup.remove(),this}getLngLat(){return this._lngLat}setLngLat(o){return this._lngLat=c.N.convert(o),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this}getElement(){return this._element}setPopup(o){if(this._popup&&(this._popup.remove(),this._popup=null,this._element.removeEventListener("keypress",this._onKeyPress),this._originalTabIndex||this._element.removeAttribute("tabindex")),o){if(!("offset"in o.options)){const g=Math.abs(13.5)/Math.SQRT2;o.options.offset=this._defaultMarker?{top:[0,0],"top-left":[0,0],"top-right":[0,0],bottom:[0,-38.1],"bottom-left":[g,-1*(38.1-13.5+g)],"bottom-right":[-g,-1*(38.1-13.5+g)],left:[13.5,-1*(38.1-13.5)],right:[-13.5,-1*(38.1-13.5)]}:this._offset}this._popup=o,this._originalTabIndex=this._element.getAttribute("tabindex"),this._originalTabIndex||this._element.setAttribute("tabindex","0"),this._element.addEventListener("keypress",this._onKeyPress)}return this}setSubpixelPositioning(o){return this._subpixelPositioning=o,this}getPopup(){return this._popup}togglePopup(){const o=this._popup;return this._element.style.opacity===this._opacityWhenCovered?this:o?(o.isOpen()?o.remove():(o.setLngLat(this._lngLat),o.addTo(this._map)),this):this}_updateOpacity(o=!1){var d,p;if(!(!((d=this._map)===null||d===void 0)&&d.terrain))return void(this._element.style.opacity!==this._opacity&&(this._element.style.opacity=this._opacity));if(o)this._opacityTimeout=null;else{if(this._opacityTimeout)return;this._opacityTimeout=setTimeout(()=>{this._opacityTimeout=null},100)}const g=this._map,y=g.terrain.depthAtPoint(this._pos),S=g.terrain.getElevationForLngLatZoom(this._lngLat,g.transform.tileZoom);if(g.transform.lngLatToCameraDepth(this._lngLat,S)-y<.006)return void(this._element.style.opacity=this._opacity);const A=-this._offset.y/g.transform._pixelPerMeter,M=Math.sin(g.getPitch()*Math.PI/180)*A,k=g.terrain.depthAtPoint(new c.P(this._pos.x,this._pos.y-this._offset.y)),F=g.transform.lngLatToCameraDepth(this._lngLat,S+M)-k>.006;!((p=this._popup)===null||p===void 0)&&p.isOpen()&&F&&this._popup.remove(),this._element.style.opacity=F?this._opacityWhenCovered:this._opacity}getOffset(){return this._offset}setOffset(o){return this._offset=c.P.convert(o),this._update(),this}addClassName(o){this._element.classList.add(o)}removeClassName(o){this._element.classList.remove(o)}toggleClassName(o){return this._element.classList.toggle(o)}setDraggable(o){return this._draggable=!!o,this._map&&(o?(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(o){return this._rotation=o||0,this._update(),this}getRotation(){return this._rotation}setRotationAlignment(o){return this._rotationAlignment=o||"auto",this._update(),this}getRotationAlignment(){return this._rotationAlignment}setPitchAlignment(o){return this._pitchAlignment=o&&o!=="auto"?o:this._rotationAlignment,this._update(),this}getPitchAlignment(){return this._pitchAlignment}setOpacity(o,d){return o===void 0&&d===void 0&&(this._opacity="1",this._opacityWhenCovered="0.2"),o!==void 0&&(this._opacity=o),d!==void 0&&(this._opacityWhenCovered=d),this._map&&this._updateOpacity(!0),this}}const zu={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0};let Ka=0,Ja=!1;const Zg={maxWidth:100,unit:"metric"};function mf(b,o,d){const p=d&&d.maxWidth||100,g=b._container.clientHeight/2,y=b.unproject([0,g]),S=b.unproject([p,g]),A=y.distanceTo(S);if(d&&d.unit==="imperial"){const M=3.2808*A;M>5280?mc(o,p,M/5280,b._getUIString("ScaleControl.Miles")):mc(o,p,M,b._getUIString("ScaleControl.Feet"))}else d&&d.unit==="nautical"?mc(o,p,A/1852,b._getUIString("ScaleControl.NauticalMiles")):A>=1e3?mc(o,p,A/1e3,b._getUIString("ScaleControl.Kilometers")):mc(o,p,A,b._getUIString("ScaleControl.Meters"))}function mc(b,o,d,p){const g=function(y){const S=Math.pow(10,`${Math.floor(y)}`.length-1);let A=y/S;return A=A>=10?10:A>=5?5:A>=3?3:A>=2?2:A>=1?1:function(M){const k=Math.pow(10,Math.ceil(-Math.log(M)/Math.LN10));return Math.round(M*k)/k}(A),S*A}(d);b.style.width=o*(g/d)+"px",b.innerHTML=`${g} ${p}`}const Ur={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px",subpixelPositioning:!1},Uu=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", ");function Et(b){if(b){if(typeof b=="number"){const o=Math.round(Math.abs(b)/Math.SQRT2);return{center:new c.P(0,0),top:new c.P(0,b),"top-left":new c.P(o,o),"top-right":new c.P(-o,o),bottom:new c.P(0,-b),"bottom-left":new c.P(o,-o),"bottom-right":new c.P(-o,-o),left:new c.P(b,0),right:new c.P(-b,0)}}if(b instanceof c.P||Array.isArray(b)){const o=c.P.convert(b);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:c.P.convert(b.center||[0,0]),top:c.P.convert(b.top||[0,0]),"top-left":c.P.convert(b["top-left"]||[0,0]),"top-right":c.P.convert(b["top-right"]||[0,0]),bottom:c.P.convert(b.bottom||[0,0]),"bottom-left":c.P.convert(b["bottom-left"]||[0,0]),"bottom-right":c.P.convert(b["bottom-right"]||[0,0]),left:c.P.convert(b.left||[0,0]),right:c.P.convert(b.right||[0,0])}}return Et(new c.P(0,0))}const Mt=_;h.AJAXError=c.bg,h.Evented=c.E,h.LngLat=c.N,h.MercatorCoordinate=c.Z,h.Point=c.P,h.addProtocol=c.bh,h.config=c.a,h.removeProtocol=c.bi,h.AttributionControl=Ya,h.BoxZoomHandler=Yd,h.CanvasSource=vt,h.CooperativeGesturesHandler=mr,h.DoubleClickZoomHandler=lf,h.DragPanHandler=Jn,h.DragRotateHandler=gr,h.EdgeInsets=ku,h.FullscreenControl=class extends c.E{constructor(b={}){super(),this._onFullscreenChange=()=>{var o;let d=window.document.fullscreenElement||window.document.mozFullScreenElement||window.document.webkitFullscreenElement||window.document.msFullscreenElement;for(;!((o=d==null?void 0:d.shadowRoot)===null||o===void 0)&&o.fullscreenElement;)d=d.shadowRoot.fullscreenElement;d===this._container!==this._fullscreen&&this._handleFullscreenChange()},this._onClickFullscreen=()=>{this._isFullscreen()?this._exitFullscreen():this._requestFullscreen()},this._fullscreen=!1,b&&b.container&&(b.container instanceof HTMLElement?this._container=b.container:c.w("Full screen control 'container' must be a DOM element.")),"onfullscreenchange"in document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in document&&(this._fullscreenchange="MSFullscreenChange")}onAdd(b){return this._map=b,this._container||(this._container=this._map.getContainer()),this._controlContainer=P.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._setupUI(),this._controlContainer}onRemove(){P.remove(this._controlContainer),this._map=null,window.document.removeEventListener(this._fullscreenchange,this._onFullscreenChange)}_setupUI(){const b=this._fullscreenButton=P.create("button","maplibregl-ctrl-fullscreen",this._controlContainer);P.create("span","maplibregl-ctrl-icon",b).setAttribute("aria-hidden","true"),b.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),window.document.addEventListener(this._fullscreenchange,this._onFullscreenChange)}_updateTitle(){const b=this._getTitle();this._fullscreenButton.setAttribute("aria-label",b),this._fullscreenButton.title=b}_getTitle(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")}_isFullscreen(){return this._fullscreen}_handleFullscreenChange(){this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("maplibregl-ctrl-shrink"),this._fullscreenButton.classList.toggle("maplibregl-ctrl-fullscreen"),this._updateTitle(),this._fullscreen?(this.fire(new c.k("fullscreenstart")),this._prevCooperativeGesturesEnabled=this._map.cooperativeGestures.isEnabled(),this._map.cooperativeGestures.disable()):(this.fire(new c.k("fullscreenend")),this._prevCooperativeGesturesEnabled&&this._map.cooperativeGestures.enable())}_exitFullscreen(){window.document.exitFullscreen?window.document.exitFullscreen():window.document.mozCancelFullScreen?window.document.mozCancelFullScreen():window.document.msExitFullscreen?window.document.msExitFullscreen():window.document.webkitCancelFullScreen?window.document.webkitCancelFullScreen():this._togglePseudoFullScreen()}_requestFullscreen(){this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen?this._container.webkitRequestFullscreen():this._togglePseudoFullScreen()}_togglePseudoFullScreen(){this._container.classList.toggle("maplibregl-pseudo-fullscreen"),this._handleFullscreenChange(),this._map.resize()}},h.GeoJSONSource=et,h.GeolocateControl=class extends c.E{constructor(b){super(),this._onSuccess=o=>{if(this._map){if(this._isOutOfMapMaxBounds(o))return this._setErrorState(),this.fire(new c.k("outofmaxbounds",o)),this._updateMarker(),void this._finish();if(this.options.trackUserLocation)switch(this._lastKnownPosition=o,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background");break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}this.options.showUserLocation&&this._watchState!=="OFF"&&this._updateMarker(o),this.options.trackUserLocation&&this._watchState!=="ACTIVE_LOCK"||this._updateCamera(o),this.options.showUserLocation&&this._dotElement.classList.remove("maplibregl-user-location-dot-stale"),this.fire(new c.k("geolocate",o)),this._finish()}},this._updateCamera=o=>{const d=new c.N(o.coords.longitude,o.coords.latitude),p=o.coords.accuracy,g=this._map.getBearing(),y=c.e({bearing:g},this.options.fitBoundsOptions),S=le.fromLngLat(d,p);this._map.fitBounds(S,y,{geolocateSource:!0})},this._updateMarker=o=>{if(o){const d=new c.N(o.coords.longitude,o.coords.latitude);this._accuracyCircleMarker.setLngLat(d).addTo(this._map),this._userLocationDotMarker.setLngLat(d).addTo(this._map),this._accuracy=o.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},this._onZoom=()=>{this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},this._onError=o=>{if(this._map){if(this.options.trackUserLocation)if(o.code===1){this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;const d=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=d,this._geolocateButton.setAttribute("aria-label",d),this._geolocationWatchID!==void 0&&this._clearWatch()}else{if(o.code===3&&Ja)return;this._setErrorState()}this._watchState!=="OFF"&&this.options.showUserLocation&&this._dotElement.classList.add("maplibregl-user-location-dot-stale"),this.fire(new c.k("error",o)),this._finish()}},this._finish=()=>{this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},this._setupUI=()=>{this._map&&(this._container.addEventListener("contextmenu",o=>o.preventDefault()),this._geolocateButton=P.create("button","maplibregl-ctrl-geolocate",this._container),P.create("span","maplibregl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden","true"),this._geolocateButton.type="button",this._geolocateButton.disabled=!0)},this._finishSetupUI=o=>{if(this._map){if(o===!1){c.w("Geolocation support is not available so the GeolocateControl will be disabled.");const d=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=d,this._geolocateButton.setAttribute("aria-label",d)}else{const d=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.disabled=!1,this._geolocateButton.title=d,this._geolocateButton.setAttribute("aria-label",d)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=P.create("div","maplibregl-user-location-dot"),this._userLocationDotMarker=new Si({element:this._dotElement}),this._circleElement=P.create("div","maplibregl-user-location-accuracy-circle"),this._accuracyCircleMarker=new Si({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",()=>this.trigger()),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",d=>{d.geolocateSource||this._watchState!=="ACTIVE_LOCK"||d.originalEvent&&d.originalEvent.type==="resize"||(this._watchState="BACKGROUND",this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this.fire(new c.k("trackuserlocationend")),this.fire(new c.k("userlocationlostfocus")))})}},this.options=c.e({},zu,b)}onAdd(b){return this._map=b,this._container=P.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._setupUI(),function(){return c._(this,arguments,void 0,function*(o=!1){if(Eo!==void 0&&!o)return Eo;if(window.navigator.permissions===void 0)return Eo=!!window.navigator.geolocation,Eo;try{Eo=(yield window.navigator.permissions.query({name:"geolocation"})).state!=="denied"}catch{Eo=!!window.navigator.geolocation}return Eo})}().then(o=>this._finishSetupUI(o)),this._container}onRemove(){this._geolocationWatchID!==void 0&&(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(),P.remove(this._container),this._map.off("zoom",this._onZoom),this._map=void 0,Ka=0,Ja=!1}_isOutOfMapMaxBounds(b){const o=this._map.getMaxBounds(),d=b.coords;return o&&(d.longitudeo.getEast()||d.latitudeo.getNorth())}_setErrorState(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting");break;case"ACTIVE_ERROR":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}}_updateCircleRadius(){const b=this._map.getBounds(),o=b.getSouthEast(),d=b.getNorthEast(),p=o.distanceTo(d),g=Math.ceil(this._accuracy/(p/this._map._container.clientHeight)*2);this._circleElement.style.width=`${g}px`,this._circleElement.style.height=`${g}px`}trigger(){if(!this._setup)return c.w("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 c.k("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":Ka--,Ja=!1,this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this.fire(new c.k("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new c.k("trackuserlocationstart")),this.fire(new c.k("userlocationfocus"));break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"OFF":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}if(this._watchState==="OFF"&&this._geolocationWatchID!==void 0)this._clearWatch();else if(this._geolocationWatchID===void 0){let b;this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),Ka++,Ka>1?(b={maximumAge:6e5,timeout:0},Ja=!0):(b=this.options.positionOptions,Ja=!1),this._geolocationWatchID=window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,b)}}else window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0}_clearWatch(){window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)}},h.Hash=lc,h.ImageSource=pt,h.KeyboardHandler=rf,h.LngLatBounds=le,h.LogoControl=Lr,h.Map=class extends tb{constructor(b){c.be.mark(c.bf.create);const o=Object.assign(Object.assign({},ib),b);if(o.minZoom!=null&&o.maxZoom!=null&&o.minZoom>o.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(o.minPitch!=null&&o.maxPitch!=null&&o.minPitch>o.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(o.minPitch!=null&&o.minPitch<0)throw new Error("minPitch must be greater than or equal to 0");if(o.maxPitch!=null&&o.maxPitch>85)throw new Error("maxPitch must be less than or equal to 85");if(super(new Wd(o.minZoom,o.maxZoom,o.minPitch,o.maxPitch,o.renderWorldCopies),{bearingSnap:o.bearingSnap}),this._idleTriggered=!1,this._crossFadingFactor=1,this._renderTaskQueue=new mt,this._controls=[],this._mapId=c.a4(),this._contextLost=d=>{d.preventDefault(),this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this.fire(new c.k("webglcontextlost",{originalEvent:d}))},this._contextRestored=d=>{this._setupPainter(),this.resize(),this._update(),this.fire(new c.k("webglcontextrestored",{originalEvent:d}))},this._onMapScroll=d=>{if(d.target===this._container)return this._container.scrollTop=0,this._container.scrollLeft=0,!1},this._onWindowOnline=()=>{this._update()},this._interactive=o.interactive,this._maxTileCacheSize=o.maxTileCacheSize,this._maxTileCacheZoomLevels=o.maxTileCacheZoomLevels,this._failIfMajorPerformanceCaveat=o.failIfMajorPerformanceCaveat===!0,this._preserveDrawingBuffer=o.preserveDrawingBuffer===!0,this._antialias=o.antialias===!0,this._trackResize=o.trackResize===!0,this._bearingSnap=o.bearingSnap,this._refreshExpiredTiles=o.refreshExpiredTiles===!0,this._fadeDuration=o.fadeDuration,this._crossSourceCollisions=o.crossSourceCollisions===!0,this._collectResourceTiming=o.collectResourceTiming===!0,this._locale=Object.assign(Object.assign({},ut),o.locale),this._clickTolerance=o.clickTolerance,this._overridePixelRatio=o.pixelRatio,this._maxCanvasSize=o.maxCanvasSize,this.transformCameraUpdate=o.transformCameraUpdate,this.cancelPendingTileRequestsWhileZooming=o.cancelPendingTileRequestsWhileZooming===!0,this._imageQueueHandle=pe.addThrottleControl(()=>this.isMoving()),this._requestManager=new Pe(o.transformRequest),typeof o.container=="string"){if(this._container=document.getElementById(o.container),!this._container)throw new Error(`Container '${o.container}' not found.`)}else{if(!(o.container instanceof HTMLElement))throw new Error("Invalid type: 'container' must be a String or HTMLElement.");this._container=o.container}if(o.maxBounds&&this.setMaxBounds(o.maxBounds),this._setupContainer(),this._setupPainter(),this.on("move",()=>this._update(!1)).on("moveend",()=>this._update(!1)).on("zoom",()=>this._update(!0)).on("terrain",()=>{this.painter.terrainFacilitator.dirty=!0,this._update(!0)}).once("idle",()=>{this._idleTriggered=!0}),typeof window<"u"){addEventListener("online",this._onWindowOnline,!1);let d=!1;const p=Ou(g=>{this._trackResize&&!this._removed&&this.resize(g)._update()},50);this._resizeObserver=new ResizeObserver(g=>{d?p(g):d=!0}),this._resizeObserver.observe(this._container)}this.handlers=new eb(this,o),this._hash=o.hash&&new lc(typeof o.hash=="string"&&o.hash||void 0).addTo(this),this._hash&&this._hash._onHashChange()||(this.jumpTo({center:o.center,zoom:o.zoom,bearing:o.bearing,pitch:o.pitch}),o.bounds&&(this.resize(),this.fitBounds(o.bounds,c.e({},o.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=o.localIdeographFontFamily,this._validateStyle=o.validateStyle,o.style&&this.setStyle(o.style,{localIdeographFontFamily:o.localIdeographFontFamily}),o.attributionControl&&this.addControl(new Ya(typeof o.attributionControl=="boolean"?void 0:o.attributionControl)),o.maplibreLogo&&this.addControl(new Lr,o.logoPosition),this.on("style.load",()=>{this.transform.unmodified&&this.jumpTo(this.style.stylesheet)}),this.on("data",d=>{this._update(d.dataType==="style"),this.fire(new c.k(`${d.dataType}data`,d))}),this.on("dataloading",d=>{this.fire(new c.k(`${d.dataType}dataloading`,d))}),this.on("dataabort",d=>{this.fire(new c.k("sourcedataabort",d))})}_getMapId(){return this._mapId}addControl(b,o){if(o===void 0&&(o=b.getDefaultPosition?b.getDefaultPosition():"top-right"),!b||!b.onAdd)return this.fire(new c.j(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));const d=b.onAdd(this);this._controls.push(b);const p=this._controlPositions[o];return o.indexOf("bottom")!==-1?p.insertBefore(d,p.firstChild):p.appendChild(d),this}removeControl(b){if(!b||!b.onRemove)return this.fire(new c.j(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));const o=this._controls.indexOf(b);return o>-1&&this._controls.splice(o,1),b.onRemove(this),this}hasControl(b){return this._controls.indexOf(b)>-1}calculateCameraOptionsFromTo(b,o,d,p){return p==null&&this.terrain&&(p=this.terrain.getElevationForLngLatZoom(d,this.transform.tileZoom)),super.calculateCameraOptionsFromTo(b,o,d,p)}resize(b){var o;const d=this._containerDimensions(),p=d[0],g=d[1],y=this._getClampedPixelRatio(p,g);if(this._resizeCanvas(p,g,y),this.painter.resize(p,g,y),this.painter.overLimit()){const A=this.painter.context.gl;this._maxCanvasSize=[A.drawingBufferWidth,A.drawingBufferHeight];const M=this._getClampedPixelRatio(p,g);this._resizeCanvas(p,g,M),this.painter.resize(p,g,M)}this.transform.resize(p,g),(o=this._requestedCameraState)===null||o===void 0||o.resize(p,g);const S=!this._moving;return S&&(this.stop(),this.fire(new c.k("movestart",b)).fire(new c.k("move",b))),this.fire(new c.k("resize",b)),S&&this.fire(new c.k("moveend",b)),this}_getClampedPixelRatio(b,o){const{0:d,1:p}=this._maxCanvasSize,g=this.getPixelRatio(),y=b*g,S=o*g;return Math.min(y>d?d/y:1,S>p?p/S:1)*g}getPixelRatio(){var b;return(b=this._overridePixelRatio)!==null&&b!==void 0?b:devicePixelRatio}setPixelRatio(b){this._overridePixelRatio=b,this.resize()}getBounds(){return this.transform.getBounds()}getMaxBounds(){return this.transform.getMaxBounds()}setMaxBounds(b){return this.transform.setMaxBounds(le.convert(b)),this._update()}setMinZoom(b){if((b=b??-2)>=-2&&b<=this.transform.maxZoom)return this.transform.minZoom=b,this._update(),this.getZoom()=this.transform.minZoom)return this.transform.maxZoom=b,this._update(),this.getZoom()>b&&this.setZoom(b),this;throw new Error("maxZoom must be greater than the current minZoom")}getMaxZoom(){return this.transform.maxZoom}setMinPitch(b){if((b=b??0)<0)throw new Error("minPitch must be greater than or equal to 0");if(b>=0&&b<=this.transform.maxPitch)return this.transform.minPitch=b,this._update(),this.getPitch()85)throw new Error("maxPitch must be less than or equal to 85");if(b>=this.transform.minPitch)return this.transform.maxPitch=b,this._update(),this.getPitch()>b&&this.setPitch(b),this;throw new Error("maxPitch must be greater than the current minPitch")}getMaxPitch(){return this.transform.maxPitch}getRenderWorldCopies(){return this.transform.renderWorldCopies}setRenderWorldCopies(b){return this.transform.renderWorldCopies=b,this._update()}project(b){return this.transform.locationPoint(c.N.convert(b),this.style&&this.terrain)}unproject(b){return this.transform.pointLocation(c.P.convert(b),this.terrain)}isMoving(){var b;return this._moving||((b=this.handlers)===null||b===void 0?void 0:b.isMoving())}isZooming(){var b;return this._zooming||((b=this.handlers)===null||b===void 0?void 0:b.isZooming())}isRotating(){var b;return this._rotating||((b=this.handlers)===null||b===void 0?void 0:b.isRotating())}_createDelegatedListener(b,o,d){if(b==="mouseenter"||b==="mouseover"){let p=!1;return{layer:o,listener:d,delegates:{mousemove:y=>{const S=this.getLayer(o)?this.queryRenderedFeatures(y.point,{layers:[o]}):[];S.length?p||(p=!0,d.call(this,new rn(b,this,y.originalEvent,{features:S}))):p=!1},mouseout:()=>{p=!1}}}}if(b==="mouseleave"||b==="mouseout"){let p=!1;return{layer:o,listener:d,delegates:{mousemove:S=>{(this.getLayer(o)?this.queryRenderedFeatures(S.point,{layers:[o]}):[]).length?p=!0:p&&(p=!1,d.call(this,new rn(b,this,S.originalEvent)))},mouseout:S=>{p&&(p=!1,d.call(this,new rn(b,this,S.originalEvent)))}}}}{const p=g=>{const y=this.getLayer(o)?this.queryRenderedFeatures(g.point,{layers:[o]}):[];y.length&&(g.features=y,d.call(this,g),delete g.features)};return{layer:o,listener:d,delegates:{[b]:p}}}}on(b,o,d){if(d===void 0)return super.on(b,o);const p=this._createDelegatedListener(b,o,d);this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[b]=this._delegatedListeners[b]||[],this._delegatedListeners[b].push(p);for(const g in p.delegates)this.on(g,p.delegates[g]);return this}once(b,o,d){if(d===void 0)return super.once(b,o);const p=this._createDelegatedListener(b,o,d);for(const g in p.delegates)this.once(g,p.delegates[g]);return this}off(b,o,d){return d===void 0?super.off(b,o):(this._delegatedListeners&&this._delegatedListeners[b]&&(p=>{const g=this._delegatedListeners[b];for(let y=0;ythis._updateStyle(b,o));const d=this.style&&o.transformStyle?this.style.serialize():void 0;return this.style&&(this.style.setEventedParent(null),this.style._remove(!b)),b?(this.style=new Kn(this,o||{}),this.style.setEventedParent(this,{style:this.style}),typeof b=="string"?this.style.loadURL(b,o,d):this.style.loadJSON(b,o,d),this):(delete this.style,this)}_lazyInitEmptyStyle(){this.style||(this.style=new Kn(this,{}),this.style.setEventedParent(this,{style:this.style}),this.style.loadEmpty())}_diffStyle(b,o){if(typeof b=="string"){const d=this._requestManager.transformRequest(b,"Style");c.h(d,new AbortController).then(p=>{this._updateDiff(p.data,o)}).catch(p=>{p&&this.fire(new c.j(p))})}else typeof b=="object"&&this._updateDiff(b,o)}_updateDiff(b,o){try{this.style.setState(b,o)&&this._update(!0)}catch(d){c.w(`Unable to perform style diff: ${d.message||d.error||d}. Rebuilding the style from scratch.`),this._updateStyle(b,o)}}getStyle(){if(this.style)return this.style.serialize()}isStyleLoaded(){return this.style?this.style.loaded():c.w("There is no style added to the map.")}addSource(b,o){return this._lazyInitEmptyStyle(),this.style.addSource(b,o),this._update(!0)}isSourceLoaded(b){const o=this.style&&this.style.sourceCaches[b];if(o!==void 0)return o.loaded();this.fire(new c.j(new Error(`There is no source with ID '${b}'`)))}setTerrain(b){if(this.style._checkLoaded(),this._terrainDataCallback&&this.style.off("data",this._terrainDataCallback),b){const o=this.style.sourceCaches[b.source];if(!o)throw new Error(`cannot load terrain, because there exists no source with ID: ${b.source}`);this.terrain===null&&o.reload();for(const d in this.style._layers){const p=this.style._layers[d];p.type==="hillshade"&&p.source===b.source&&c.w("You are using the same source for a hillshade layer and for 3D terrain. Please consider using two separate sources to improve rendering quality.")}this.terrain=new $g(this.painter,o,b),this.painter.renderToTexture=new Wg(this.painter,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._terrainDataCallback=d=>{d.dataType==="style"?this.terrain.sourceCache.freeRtt():d.dataType==="source"&&d.tile&&(d.sourceId!==b.source||this._elevationFreeze||(this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom)),this.terrain.sourceCache.freeRtt(d.tile.tileID))},this.style.on("data",this._terrainDataCallback)}else this.terrain&&this.terrain.sourceCache.destruct(),this.terrain=null,this.painter.renderToTexture&&this.painter.renderToTexture.destruct(),this.painter.renderToTexture=null,this.transform.minElevationForCurrentTile=0,this.transform.elevation=0;return this.fire(new c.k("terrain",{terrain:b})),this}getTerrain(){var b,o;return(o=(b=this.terrain)===null||b===void 0?void 0:b.options)!==null&&o!==void 0?o:null}areTilesLoaded(){const b=this.style&&this.style.sourceCaches;for(const o in b){const d=b[o]._tiles;for(const p in d){const g=d[p];if(g.state!=="loaded"&&g.state!=="errored")return!1}}return!0}removeSource(b){return this.style.removeSource(b),this._update(!0)}getSource(b){return this.style.getSource(b)}addImage(b,o,d={}){const{pixelRatio:p=1,sdf:g=!1,stretchX:y,stretchY:S,content:A,textFitWidth:M,textFitHeight:k}=d;if(this._lazyInitEmptyStyle(),!(o instanceof HTMLImageElement||c.b(o))){if(o.width===void 0||o.height===void 0)return this.fire(new c.j(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:F,height:N,data:$}=o,X=o;return this.style.addImage(b,{data:new c.R({width:F,height:N},new Uint8Array($)),pixelRatio:p,stretchX:y,stretchY:S,content:A,textFitWidth:M,textFitHeight:k,sdf:g,version:0,userImage:X}),X.onAdd&&X.onAdd(this,b),this}}{const{width:F,height:N,data:$}=C.getImageData(o);this.style.addImage(b,{data:new c.R({width:F,height:N},$),pixelRatio:p,stretchX:y,stretchY:S,content:A,textFitWidth:M,textFitHeight:k,sdf:g,version:0})}}updateImage(b,o){const d=this.style.getImage(b);if(!d)return this.fire(new c.j(new Error("The map has no image with that id. If you are adding a new image use `map.addImage(...)` instead.")));const p=o instanceof HTMLImageElement||c.b(o)?C.getImageData(o):o,{width:g,height:y,data:S}=p;if(g===void 0||y===void 0)return this.fire(new c.j(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`")));if(g!==d.data.width||y!==d.data.height)return this.fire(new c.j(new Error("The width and height of the updated image must be that same as the previous version of the image")));const A=!(o instanceof HTMLImageElement||c.b(o));return d.data.replace(S,A),this.style.updateImage(b,d),this}getImage(b){return this.style.getImage(b)}hasImage(b){return b?!!this.style.getImage(b):(this.fire(new c.j(new Error("Missing required image id"))),!1)}removeImage(b){this.style.removeImage(b)}loadImage(b){return pe.getImage(this._requestManager.transformRequest(b,"Image"),new AbortController)}listImages(){return this.style.listImages()}addLayer(b,o){return this._lazyInitEmptyStyle(),this.style.addLayer(b,o),this._update(!0)}moveLayer(b,o){return this.style.moveLayer(b,o),this._update(!0)}removeLayer(b){return this.style.removeLayer(b),this._update(!0)}getLayer(b){return this.style.getLayer(b)}getLayersOrder(){return this.style.getLayersOrder()}setLayerZoomRange(b,o,d){return this.style.setLayerZoomRange(b,o,d),this._update(!0)}setFilter(b,o,d={}){return this.style.setFilter(b,o,d),this._update(!0)}getFilter(b){return this.style.getFilter(b)}setPaintProperty(b,o,d,p={}){return this.style.setPaintProperty(b,o,d,p),this._update(!0)}getPaintProperty(b,o){return this.style.getPaintProperty(b,o)}setLayoutProperty(b,o,d,p={}){return this.style.setLayoutProperty(b,o,d,p),this._update(!0)}getLayoutProperty(b,o){return this.style.getLayoutProperty(b,o)}setGlyphs(b,o={}){return this._lazyInitEmptyStyle(),this.style.setGlyphs(b,o),this._update(!0)}getGlyphs(){return this.style.getGlyphsUrl()}addSprite(b,o,d={}){return this._lazyInitEmptyStyle(),this.style.addSprite(b,o,d,p=>{p||this._update(!0)}),this}removeSprite(b){return this._lazyInitEmptyStyle(),this.style.removeSprite(b),this._update(!0)}getSprite(){return this.style.getSprite()}setSprite(b,o={}){return this._lazyInitEmptyStyle(),this.style.setSprite(b,o,d=>{d||this._update(!0)}),this}setLight(b,o={}){return this._lazyInitEmptyStyle(),this.style.setLight(b,o),this._update(!0)}getLight(){return this.style.getLight()}setSky(b){return this._lazyInitEmptyStyle(),this.style.setSky(b),this._update(!0)}getSky(){return this.style.getSky()}setFeatureState(b,o){return this.style.setFeatureState(b,o),this._update()}removeFeatureState(b,o){return this.style.removeFeatureState(b,o),this._update()}getFeatureState(b){return this.style.getFeatureState(b)}getContainer(){return this._container}getCanvasContainer(){return this._canvasContainer}getCanvas(){return this._canvas}_containerDimensions(){let b=0,o=0;return this._container&&(b=this._container.clientWidth||400,o=this._container.clientHeight||300),[b,o]}_setupContainer(){const b=this._container;b.classList.add("maplibregl-map");const o=this._canvasContainer=P.create("div","maplibregl-canvas-container",b);this._interactive&&o.classList.add("maplibregl-interactive"),this._canvas=P.create("canvas","maplibregl-canvas",o),this._canvas.addEventListener("webglcontextlost",this._contextLost,!1),this._canvas.addEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.setAttribute("tabindex",this._interactive?"0":"-1"),this._canvas.setAttribute("aria-label",this._getUIString("Map.Title")),this._canvas.setAttribute("role","region");const d=this._containerDimensions(),p=this._getClampedPixelRatio(d[0],d[1]);this._resizeCanvas(d[0],d[1],p);const g=this._controlContainer=P.create("div","maplibregl-control-container",b),y=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach(S=>{y[S]=P.create("div",`maplibregl-ctrl-${S} `,g)}),this._container.addEventListener("scroll",this._onMapScroll,!1)}_resizeCanvas(b,o,d){this._canvas.width=Math.floor(d*b),this._canvas.height=Math.floor(d*o),this._canvas.style.width=`${b}px`,this._canvas.style.height=`${o}px`}_setupPainter(){const b={alpha:!0,stencil:!0,depth:!0,failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1};let o=null;this._canvas.addEventListener("webglcontextcreationerror",p=>{o={requestedAttributes:b},p&&(o.statusMessage=p.statusMessage,o.type=p.type)},{once:!0});const d=this._canvas.getContext("webgl2",b)||this._canvas.getContext("webgl",b);if(!d){const p="Failed to initialize WebGL";throw o?(o.message=p,new Error(JSON.stringify(o))):new Error(p)}this.painter=new Ng(d,this.transform),B.testSupport(d)}loaded(){return!this._styleDirty&&!this._sourcesDirty&&!!this.style&&this.style.loaded()}_update(b){return this.style&&this.style._loaded?(this._styleDirty=this._styleDirty||b,this._sourcesDirty=!0,this.triggerRepaint(),this):this}_requestRenderFrame(b){return this._update(),this._renderTaskQueue.add(b)}_cancelRenderFrame(b){this._renderTaskQueue.remove(b)}_render(b){const o=this._idleTriggered?this._fadeDuration:0;if(this.painter.context.setDirty(),this.painter.setBaseState(),this._renderTaskQueue.run(b),this._removed)return;let d=!1;if(this.style&&this._styleDirty){this._styleDirty=!1;const g=this.transform.zoom,y=C.now();this.style.zoomHistory.update(g,y);const S=new c.a9(g,{now:y,fadeDuration:o,zoomHistory:this.style.zoomHistory,transition:this.style.getTransition()}),A=S.crossFadingFactor();A===1&&A===this._crossFadingFactor||(d=!0,this._crossFadingFactor=A),this.style.update(S)}this.style&&this._sourcesDirty&&(this._sourcesDirty=!1,this.style._updateSources(this.transform)),this.terrain?(this.terrain.sourceCache.update(this.transform,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._elevationFreeze||(this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom))):(this.transform.minElevationForCurrentTile=0,this.transform.elevation=0),this._placementDirty=this.style&&this.style._updatePlacement(this.painter.transform,this.showCollisionBoxes,o,this._crossSourceCollisions),this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showOverdrawInspector:this._showOverdrawInspector,rotating:this.isRotating(),zooming:this.isZooming(),moving:this.isMoving(),fadeDuration:o,showPadding:this.showPadding}),this.fire(new c.k("render")),this.loaded()&&!this._loaded&&(this._loaded=!0,c.be.mark(c.bf.load),this.fire(new c.k("load"))),this.style&&(this.style.hasTransitions()||d)&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles();const p=this._sourcesDirty||this._styleDirty||this._placementDirty;return p||this._repaint?this.triggerRepaint():!this.isMoving()&&this.loaded()&&this.fire(new c.k("idle")),!this._loaded||this._fullyLoaded||p||(this._fullyLoaded=!0,c.be.mark(c.bf.fullLoad)),this}redraw(){return this.style&&(this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._render(0)),this}remove(){var b;this._hash&&this._hash.remove();for(const d of this._controls)d.onRemove(this);this._controls=[],this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._renderTaskQueue.clear(),this.painter.destroy(),this.handlers.destroy(),delete this.handlers,this.setStyle(null),typeof window<"u"&&removeEventListener("online",this._onWindowOnline,!1),pe.removeThrottleControl(this._imageQueueHandle),(b=this._resizeObserver)===null||b===void 0||b.disconnect();const o=this.painter.context.gl.getExtension("WEBGL_lose_context");o!=null&&o.loseContext&&o.loseContext(),this._canvas.removeEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.removeEventListener("webglcontextlost",this._contextLost,!1),P.remove(this._canvasContainer),P.remove(this._controlContainer),this._container.classList.remove("maplibregl-map"),c.be.clearMetrics(),this._removed=!0,this.fire(new c.k("remove"))}triggerRepaint(){this.style&&!this._frameRequest&&(this._frameRequest=new AbortController,C.frameAsync(this._frameRequest).then(b=>{c.be.frame(b),this._frameRequest=null,this._render(b)}).catch(()=>{}))}get showTileBoundaries(){return!!this._showTileBoundaries}set showTileBoundaries(b){this._showTileBoundaries!==b&&(this._showTileBoundaries=b,this._update())}get showPadding(){return!!this._showPadding}set showPadding(b){this._showPadding!==b&&(this._showPadding=b,this._update())}get showCollisionBoxes(){return!!this._showCollisionBoxes}set showCollisionBoxes(b){this._showCollisionBoxes!==b&&(this._showCollisionBoxes=b,b?this.style._generateCollisionBoxes():this._update())}get showOverdrawInspector(){return!!this._showOverdrawInspector}set showOverdrawInspector(b){this._showOverdrawInspector!==b&&(this._showOverdrawInspector=b,this._update())}get repaint(){return!!this._repaint}set repaint(b){this._repaint!==b&&(this._repaint=b,this.triggerRepaint())}get vertices(){return!!this._vertices}set vertices(b){this._vertices=b,this._update()}get version(){return ff}getCameraTargetElevation(){return this.transform.elevation}},h.MapMouseEvent=rn,h.MapTouchEvent=cc,h.MapWheelEvent=Xd,h.Marker=Si,h.NavigationControl=class{constructor(b){this._updateZoomButtons=()=>{const o=this._map.getZoom(),d=o===this._map.getMaxZoom(),p=o===this._map.getMinZoom();this._zoomInButton.disabled=d,this._zoomOutButton.disabled=p,this._zoomInButton.setAttribute("aria-disabled",d.toString()),this._zoomOutButton.setAttribute("aria-disabled",p.toString())},this._rotateCompassArrow=()=>{const o=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._compassIcon.style.transform=o},this._setButtonTitle=(o,d)=>{const p=this._map._getUIString(`NavigationControl.${d}`);o.title=p,o.setAttribute("aria-label",p)},this.options=c.e({},pf,b),this._container=P.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._container.addEventListener("contextmenu",o=>o.preventDefault()),this.options.showZoom&&(this._zoomInButton=this._createButton("maplibregl-ctrl-zoom-in",o=>this._map.zoomIn({},{originalEvent:o})),P.create("span","maplibregl-ctrl-icon",this._zoomInButton).setAttribute("aria-hidden","true"),this._zoomOutButton=this._createButton("maplibregl-ctrl-zoom-out",o=>this._map.zoomOut({},{originalEvent:o})),P.create("span","maplibregl-ctrl-icon",this._zoomOutButton).setAttribute("aria-hidden","true")),this.options.showCompass&&(this._compass=this._createButton("maplibregl-ctrl-compass",o=>{this.options.visualizePitch?this._map.resetNorthPitch({},{originalEvent:o}):this._map.resetNorth({},{originalEvent:o})}),this._compassIcon=P.create("span","maplibregl-ctrl-icon",this._compass),this._compassIcon.setAttribute("aria-hidden","true"))}onAdd(b){return this._map=b,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 qg(this._map,this._compass,this.options.visualizePitch)),this._container}onRemove(){P.remove(this._container),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(b,o){const d=P.create("button",b,this._container);return d.type="button",d.addEventListener("click",o),d}},h.Popup=class extends c.E{constructor(b){super(),this.remove=()=>(this._content&&P.remove(this._content),this._container&&(P.remove(this._container),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),this._map._canvasContainer.classList.remove("maplibregl-track-pointer"),delete this._map,this.fire(new c.k("close"))),this),this._onMouseUp=o=>{this._update(o.point)},this._onMouseMove=o=>{this._update(o.point)},this._onDrag=o=>{this._update(o.point)},this._update=o=>{var d;if(!this._map||!this._lngLat&&!this._trackPointer||!this._content)return;if(!this._container){if(this._container=P.create("div","maplibregl-popup",this._map.getContainer()),this._tip=P.create("div","maplibregl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className)for(const A of this.options.className.split(" "))this._container.classList.add(A);this._closeButton&&this._closeButton.setAttribute("aria-label",this._map._getUIString("Popup.Close")),this._trackPointer&&this._container.classList.add("maplibregl-popup-track-pointer")}if(this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._lngLat=this._map.transform.renderWorldCopies&&!this._trackPointer?Xg(this._lngLat,this._flatPos,this._map.transform):(d=this._lngLat)===null||d===void 0?void 0:d.wrap(),this._trackPointer&&!o)return;const p=this._flatPos=this._pos=this._trackPointer&&o?o:this._map.project(this._lngLat);this._map.terrain&&(this._flatPos=this._trackPointer&&o?o:this._map.transform.locationPoint(this._lngLat));let g=this.options.anchor;const y=Et(this.options.offset);if(!g){const A=this._container.offsetWidth,M=this._container.offsetHeight;let k;k=p.y+y.bottom.ythis._map.transform.height-M?["bottom"]:[],p.xthis._map.transform.width-A/2&&k.push("right"),g=k.length===0?"bottom":k.join("-")}let S=p.add(y[g]);this.options.subpixelPositioning||(S=S.round()),P.setTransform(this._container,`${gf[g]} translate(${S.x}px,${S.y}px)`),Ao(this._container,g,"popup")},this._onClose=()=>{this.remove()},this.options=c.e(Object.create(Ur),b)}addTo(b){return this._map&&this.remove(),this._map=b,this.options.closeOnClick&&this._map.on("click",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._container&&this._container.classList.add("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer")):this._map.on("move",this._update),this.fire(new c.k("open")),this}isOpen(){return!!this._map}getLngLat(){return this._lngLat}setLngLat(b){return this._lngLat=c.N.convert(b),this._pos=null,this._flatPos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._container&&this._container.classList.remove("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.remove("maplibregl-track-pointer")),this}trackPointer(){return this._trackPointer=!0,this._pos=null,this._flatPos=null,this._update(),this._map&&(this._map.off("move",this._update),this._map.on("mousemove",this._onMouseMove),this._map.on("drag",this._onDrag),this._container&&this._container.classList.add("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer")),this}getElement(){return this._container}setText(b){return this.setDOMContent(document.createTextNode(b))}setHTML(b){const o=document.createDocumentFragment(),d=document.createElement("body");let p;for(d.innerHTML=b;p=d.firstChild,p;)o.appendChild(p);return this.setDOMContent(o)}getMaxWidth(){var b;return(b=this._container)===null||b===void 0?void 0:b.style.maxWidth}setMaxWidth(b){return this.options.maxWidth=b,this._update(),this}setDOMContent(b){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=P.create("div","maplibregl-popup-content",this._container);return this._content.appendChild(b),this._createCloseButton(),this._update(),this._focusFirstElement(),this}addClassName(b){return this._container&&this._container.classList.add(b),this}removeClassName(b){return this._container&&this._container.classList.remove(b),this}setOffset(b){return this.options.offset=b,this._update(),this}toggleClassName(b){if(this._container)return this._container.classList.toggle(b)}setSubpixelPositioning(b){this.options.subpixelPositioning=b}_createCloseButton(){this.options.closeButton&&(this._closeButton=P.create("button","maplibregl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.innerHTML="×",this._closeButton.addEventListener("click",this._onClose))}_focusFirstElement(){if(!this.options.focusAfterOpen||!this._container)return;const b=this._container.querySelector(Uu);b&&b.focus()}},h.RasterDEMTileSource=qe,h.RasterTileSource=He,h.ScaleControl=class{constructor(b){this._onMove=()=>{mf(this._map,this._container,this.options)},this.setUnit=o=>{this.options.unit=o,mf(this._map,this._container,this.options)},this.options=Object.assign(Object.assign({},Zg),b)}getDefaultPosition(){return"bottom-left"}onAdd(b){return this._map=b,this._container=P.create("div","maplibregl-ctrl maplibregl-ctrl-scale",b.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container}onRemove(){P.remove(this._container),this._map.off("move",this._onMove),this._map=void 0}},h.ScrollZoomHandler=af,h.Style=Kn,h.TerrainControl=class{constructor(b){this._toggleTerrain=()=>{this._map.getTerrain()?this._map.setTerrain(null):this._map.setTerrain(this.options),this._updateTerrainIcon()},this._updateTerrainIcon=()=>{this._terrainButton.classList.remove("maplibregl-ctrl-terrain"),this._terrainButton.classList.remove("maplibregl-ctrl-terrain-enabled"),this._map.terrain?(this._terrainButton.classList.add("maplibregl-ctrl-terrain-enabled"),this._terrainButton.title=this._map._getUIString("TerrainControl.Disable")):(this._terrainButton.classList.add("maplibregl-ctrl-terrain"),this._terrainButton.title=this._map._getUIString("TerrainControl.Enable"))},this.options=b}onAdd(b){return this._map=b,this._container=P.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._terrainButton=P.create("button","maplibregl-ctrl-terrain",this._container),P.create("span","maplibregl-ctrl-icon",this._terrainButton).setAttribute("aria-hidden","true"),this._terrainButton.type="button",this._terrainButton.addEventListener("click",this._toggleTerrain),this._updateTerrainIcon(),this._map.on("terrain",this._updateTerrainIcon),this._container}onRemove(){P.remove(this._container),this._map.off("terrain",this._updateTerrainIcon),this._map=void 0}},h.TwoFingersTouchPitchHandler=nf,h.TwoFingersTouchRotateHandler=sf,h.TwoFingersTouchZoomHandler=ef,h.TwoFingersTouchZoomRotateHandler=cf,h.VectorTileSource=Qe,h.VideoSource=It,h.addSourceType=(b,o)=>c._(void 0,void 0,void 0,function*(){if(Wt(b))throw new Error(`A source type called "${b}" already exists.`);((d,p)=>{Lt[d]=p})(b,o)}),h.clearPrewarmedResources=function(){const b=oi;b&&(b.isPreloaded()&&b.numActive()===1?(b.release(dn),oi=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()"))},h.getMaxParallelImageRequests=function(){return c.a.MAX_PARALLEL_IMAGE_REQUESTS},h.getRTLTextPluginStatus=function(){return wi().getRTLTextPluginStatus()},h.getVersion=function(){return Mt},h.getWorkerCount=function(){return fn.workerCount},h.getWorkerUrl=function(){return c.a.WORKER_URL},h.importScriptInWorkers=function(b){return Mn().broadcast("IS",b)},h.prewarm=function(){ui().acquire(dn)},h.setMaxParallelImageRequests=function(b){c.a.MAX_PARALLEL_IMAGE_REQUESTS=b},h.setRTLTextPlugin=function(b,o){return wi().setRTLTextPlugin(b,o)},h.setWorkerCount=function(b){fn.workerCount=b},h.setWorkerUrl=function(b){c.a.WORKER_URL=b}});var l=i;return l})})(QM);var AH=QM.exports;const dI=BR(AH);function Ir(t,e,i,s,n){return ho(e,tk(t,e),i,s,n)}function ho(t,e,i,s,n,l){const h=Jx(e,i,s);if(n&&e!==h)throw new RangeError(w3(t,e,i,s,l));return h}function tk(t,e){const i=t[e];if(i===void 0)throw new TypeError(eT(e));return i}function qn(t){return t!==null&&/object|function/.test(typeof t)}function Yr(t,e=Map){const i=new e;return(s,...n)=>{if(i.has(s))return i.get(s);const l=t(s,...n);return i.set(s,l),l}}function fI(t){return Gh({name:t},1)}function Gh(t,e){return Jo(i=>({value:i,configurable:1,writable:!e}),t)}function IH(t){return Jo(e=>({get:e,configurable:1}),t)}function u1(t){return{[Symbol.toStringTag]:{value:t,configurable:1}}}function dd(t,e){const i={};let s=t.length;for(const n of e)i[t[--s]]=n;return i}function Jo(t,e,i){const s={};for(const n in e)s[n]=t(e[n],n,i);return s}function e0(t,e,i){const s={};for(let n=0;nt(...e,...i)}function gI(t){return t[0].toUpperCase()+t.substring(1)}function eg(t){return t.slice().sort()}function $_(t,e){return String(e).padStart(t,"0")}function Ml(t,e){return Math.sign(t-e)}function Jx(t,e,i){return Math.min(Math.max(t,e),i)}function Da(t,e){return[Math.floor(t/e),fp(t,e)]}function fp(t,e){return(t%e+e)%e}function Ll(t,e){return[t0(t,e),h1(t,e)]}function t0(t,e){return Math.trunc(t/e)||0}function h1(t,e){return t%e||0}function Wm(t){return Math.abs(t%1)===.5}function rk(t,e,i){let s=0,n=0;for(let c=0;c<=e;c++){const _=t[i[c]],w=Go[c],I=vs/w,[C,P]=Ll(_,I);s+=P*w,n+=C}const[l,h]=Ll(s,vs);return[n+l,h]}function i0(t,e,i){const s={};for(let n=e;n>=0;n--){const l=Go[n];s[i[n]]=t0(t,l),t=h1(t,l)}return s}function RH(t){return t===xi?k0:[]}function MH(t){return t===xi?rg:[]}function kH(t){return t===xi?["year","day"]:[]}function OH(t){if(t!==void 0)return hn(t)}function DH(t){if(t!==void 0)return Ho(t)}function ok(t){if(t!==void 0)return s0(t)}function Ho(t){return ck(s0(t))}function s0(t){return lk(tZ(t))}function mI(t){if(t==null)throw new TypeError("Cannot be null or undefined");return t}function ak(t,e){if(e==null)throw new RangeError(eT(t));return e}function Hl(t){if(!qn(t))throw new TypeError(x3);return t}function n0(t,e,i=t){if(typeof e!==t)throw new TypeError(sg(i,e));return e}function lk(t,e="number"){if(!Number.isInteger(t))throw new RangeError(vX(e,t));return t||0}function ck(t,e="number"){if(t<=0)throw new RangeError(xX(e,t));return t}function d1(t){if(typeof t=="symbol")throw new TypeError(EX);return String(t)}function W_(t,e){return qn(t)?String(t):hn(t,e)}function r0(t){if(typeof t=="string")return BigInt(t);if(typeof t!="bigint")throw new TypeError(SX(t));return t}function uk(t,e="number"){if(typeof t=="bigint")throw new TypeError(TX(e));if(t=Number(t),!Number.isFinite(t))throw new RangeError(wX(e,t));return t}function nr(t,e){return Math.trunc(uk(t,e))||0}function hk(t,e){return lk(uk(t,e),e)}function _I(t,e){return ck(nr(t,e),e)}function f1(t,e){let[i,s]=Ll(e,vs),n=t+i;const l=Math.sign(n);return l&&l===-Math.sign(s)&&(n-=l,s+=l*vs),[n,s]}function Qh(t,e,i=1){return f1(t[0]+e[0]*i,t[1]+e[1]*i)}function ed(t,e){return f1(t[0],t[1]+e)}function _o(t,e){return Qh(e,t,-1)}function Dr(t,e){return Ml(t[0],e[0])||Ml(t[1],e[1])}function dk(t,e,i){return Dr(t,e)===-1||Dr(t,i)===1}function o0(t,e=1){const i=BigInt(vs/e);return[Number(t/i),Number(t%i)*e]}function Np(t,e=1){const i=vs/e,[s,n]=Ll(t,i);return[s,n*e]}function fk(t,e=1){const[i,s]=t,n=Math.floor(s/e),l=vs/e;return BigInt(i)*BigInt(l)+BigInt(n)}function yo(t,e=1,i){const[s,n]=t,[l,h]=Ll(n,e);return s*(vs/e)+(l+(i?h/e:0))}function p1(t,e,i=Da){const[s,n]=t,[l,h]=i(n,e);return[s*(vs/e)+l,h]}function g1(t,e){const i=t.formatToParts(e),s={};for(const n of i)s[n.type]=n.value;return s}function m1(t){return Ir(t,"isoYear",Vp,Up,1),t.isoYear===Vp?Ir(t,"isoMonth",4,12,1):t.isoYear===Up&&Ir(t,"isoMonth",1,9,1),t}function kl(t){return Ua({...t,...Qo,isoHour:12}),t}function Ua(t){const e=Ir(t,"isoYear",Vp,Up,1),i=e===Vp?1:e===Up?-1:0;return i&&Gr(rr({...t,isoDay:t.isoDay+i,isoNanosecond:t.isoNanosecond-i})),t}function Gr(t){if(!t||dk(t,cZ,lZ))throw new RangeError(I0);return t}function zl(t){return rk(t,5,ia)[1]}function a0(t){const[e,i]=Da(t,vs);return[i0(i,5,ia),e]}function pk(t){return gk(t)[0]}function gk(t){return p1(t,go)}function ar(t){return fd(t.isoYear,t.isoMonth,t.isoDay,t.isoHour,t.isoMinute,t.isoSecond,t.isoMillisecond)}function rr(t){const e=ar(t);if(e!==void 0){const[i,s]=Ll(e,kr);return[i,s*Va+(t.isoMicrosecond||0)*mu+(t.isoNanosecond||0)]}}function _1(t,e){const[i,s]=a0(zl(t)-e);return Gr(rr({...t,isoDay:t.isoDay+s,...i}))}function H_(...t){return fd(...t)/P3}function fd(...t){const[e,i]=mk(...t),s=e.valueOf();if(!isNaN(s))return s-i*kr}function mk(t,e=1,i=1,s=0,n=0,l=0,h=0){const c=t===Vp?1:t===Up?-1:0,_=new Date;return _.setUTCHours(s,n,l,h),_.setUTCFullYear(t,e-1,i+c),[_,c]}function cu(t,e){let[i,s]=ed(t,e);s<0&&(s+=vs,i-=1);const[n,l]=Da(s,Va),[h,c]=Da(l,mu);return l0(i*kr+n,h,c)}function l0(t,e=0,i=0){const s=Math.ceil(Math.max(0,Math.abs(t)-aZ)/kr)*Math.sign(t),n=new Date(t-s*kr);return dd(D0,[n.getUTCFullYear(),n.getUTCMonth()+1,n.getUTCDate()+s,n.getUTCHours(),n.getUTCMinutes(),n.getUTCSeconds(),n.getUTCMilliseconds(),e,i])}function _k(t){return[t.isoYear,t.isoMonth,t.isoDay]}function yk(){return Ia}function y1(t,e){switch(e){case 2:return b1(t)?29:28;case 4:case 6:case 9:case 11:return 30}return 31}function bk(t){return b1(t)?366:365}function b1(t){return t%4==0&&(t%100!=0||t%400==0)}function vk(t){const[e,i]=mk(t.isoYear,t.isoMonth,t.isoDay);return fp(e.getUTCDay()-i,7)||7}function xk({isoYear:t}){return t<1?["bce",1-t]:["ce",t]}function FH(t){const e=ar(t);if(eI<4?(I+2)%4:I)(_)),[h,w,c,_]}function d0(t,e=6,i){let s=w1(t=S1(t,J_));const n=ag(t,7);let l=og(t,e);return l=ak(J_,l),s=T1(s,l,void 0,i),[l,s,n]}function v1(t){return dT(xo(t))}function Sk(t,e){return x1(xo(t),e)}function x1(t,e=4){const i=Ak(t);return[ag(t,4),...Ek(og(t,e),i)]}function Ek(t,e){return t!=null?[Go[t],t<4?9-3*t:-1]:[e===void 0?1:10**(9-e),e]}function w1(t){const e=t[pp];return e===void 0?1:nr(e,pp)}function T1(t,e,i,s){const n=s?vs:Go[e+1];if(n){const l=Go[e];if(n%((t=ho(pp,t,1,n/l-(s?0:1),1))*l))throw new RangeError(sg(pp,t))}else t=ho(pp,t,1,i?10**9:1,1);return t}function Ak(t){let e=t[jv];if(e!==void 0){if(typeof e!="number"){if(d1(e)==="auto")return;throw new RangeError(sg(jv,e))}e=ho(jv,Math.floor(e),0,9,1)}return e}function xo(t){return t===void 0?{}:Hl(t)}function S1(t,e){return typeof t=="string"?{[e]:t}:Hl(t)}function Rn(t){if(t!==void 0){if(qn(t))return Object.assign(Object.create(null),t);throw new TypeError(x3)}}function f0(t,e){return t&&Object.assign(Object.create(null),t,{overflow:fZ[e]})}function E1(t,e,i=9,s=0,n){let l=e[t];if(l===void 0)return n?s:void 0;if(l=d1(l),l==="auto")return n?s:null;let h=tw[l];if(h===void 0&&(h=rZ[l]),h===void 0)throw new RangeError(E3(t,l,tw));return ho(t,h,s,i,1,P0),h}function hu(t,e,i,s=0){const n=i[t];if(n===void 0)return s;const l=d1(n),h=e[l];if(h===void 0)throw new RangeError(E3(t,l,e));return h}function Ik(t,e){if(e>t)throw new RangeError(XX)}function Wn(t){return{branding:pT,epochNanoseconds:t}}function lr(t,e,i){return{branding:Jl,calendar:i,timeZone:e,epochNanoseconds:t}}function In(t,e=t.calendar){return{branding:Sd,calendar:e,...Jr(U3,t)}}function Cn(t,e=t.calendar){return{branding:Td,calendar:e,...Jr(cT,t)}}function eu(t,e=t.calendar){return{branding:jp,calendar:e,...Jr(cT,t)}}function q_(t,e=t.calendar){return{branding:$p,calendar:e,...Jr(cT,t)}}function ea(t){return{branding:fT,...Jr(z3,t)}}function nn(t){return{branding:gT,sign:ql(t),...Jr(rT,t)}}function BH(t){return pk(t.epochNanoseconds)}function A1(t){return p1(t.epochNanoseconds,Va)[0]}function LH(t){return fk(t.epochNanoseconds,mu)}function zH(t){return fk(t.epochNanoseconds)}function Ck(t){return t.epochNanoseconds}function cr(t){return typeof t=="string"?t:hn(t.id)}function gd(t,e){return t===e||cr(t)===cr(e)}function UH(t,e,i,s,n){const l=tu(s),[h,c]=((J,ue)=>{const he=ue((J=S1(J,nw))[j3]);let pe=vZ(J);return pe=ak(nw,pe),[pe,he]})(n,t);if(Lp(Math.max(h,l),c))return bI(s,h);if(!c)throw new RangeError(C0);const[_,w,I]=y0(e,i,c),C=F1(I),P=b0(I),B=N1(I),q=P(w,_,s),V=B(w,_,q,h);return Lp(h,c)?bI(V,h):((J,ue,he,pe,Pe,Oe,Ae)=>{const We=ql(J),[ze,Ge]=I1(pe,aT(he,J),he,We,Pe,Oe,Ae),wt=C1(ue,ze,Ge);return J[ss[he]]+wt*We})(V,C(q),h,w,_,C,P)}function bI(t,e){return yo(Pn(t),Go[e],1)}function I1(t,e,i,s,n,l,h){const c=ss[i],_={...e,[c]:e[c]+s},w=h(t,n,e),I=h(t,n,_);return[l(w),l(I)]}function C1(t,e,i){const s=yo(_o(e,i));if(!s)throw new RangeError(ng);return yo(_o(e,t))/s}function VH(t,e){const[i,s,n]=d0(e,5,1);return Wn(g0(t.epochNanoseconds,i,s,n,1))}function jH(t,e,i){let{epochNanoseconds:s,timeZone:n,calendar:l}=e;const[h,c,_]=d0(i);if(h===0&&c===1)return e;const w=t(n);if(h===6)s=((I,C,P,B)=>{const q=Fr(P,C),[V,J]=I(q),ue=P.epochNanoseconds,he=Kr(C,V),pe=Kr(C,J);if(dk(ue,he,pe))throw new RangeError(ng);return Ok(C1(ue,he,pe),B)?pe:he})(Mk,w,e,_);else{const I=w.getOffsetNanosecondsFor(s);s=du(w,Pk(cu(s,I),h,c,_),I,2,0,1)}return lr(s,n,l)}function $H(t,e){return In(Pk(t,...d0(e)),t.calendar)}function WH(t,e){const[i,s,n]=d0(e,5);var l;return ea((l=n,P1(t,tg(i,s),l)[0]))}function HH(t,e){const i=t(e.timeZone),s=Fr(e,i),[n,l]=Mk(s),h=yo(_o(Kr(i,n),Kr(i,l)),M0,1);if(h<=0)throw new RangeError(ng);return h}function qH(t,e){const{timeZone:i,calendar:s}=e,n=((l,h,c)=>Kr(h,l(Fr(c,h))))(kk,t(i),e);return lr(n,i,s)}function Pk(t,e,i,s){return Rk(t,tg(e,i),s)}function Rk(t,e,i){const[s,n]=P1(t,e,i);return Ua({...fu(t,n),...s})}function P1(t,e,i){return a0(Ul(zl(t),e,i))}function X_(t){return Ul(t,R0,7)}function tg(t,e){return Go[t]*e}function Mk(t){const e=kk(t);return[e,fu(e,1)]}function kk(t){return oZ(6,t)}function XH(t,e,i){const s=Math.min(tu(t),6);return yd(m0(Pn(t,s),e,i),s)}function p0(t,e,i,s,n,l,h,c,_,w){if(s===0&&n===1)return t;const I=Lp(s,c)?v0(c)&&s<6&&i>=6?YH:ZH:KH;let[C,P,B]=I(t,e,i,s,n,l,h,c,_,w);return B&&s!==7&&(C=((q,V,J,ue,he,pe,Pe,Oe)=>{const Ae=ql(q);for(let We=ue+1;We<=J;We++){if(We===7&&J!==7)continue;const ze=aT(We,q);ze[ss[We]]+=Ae;const Ge=yo(_o(Pe(Oe(he,pe,ze)),V));if(Ge&&Math.sign(Ge)!==Ae)break;q=ze}return q})(C,P,i,Math.max(6,s),h,c,_,w)),C}function g0(t,e,i,s,n){if(e===6){const l=(h=>h[0]+h[1]/vs)(t);return[Ul(l,i,s),0]}return m0(t,tg(e,i),s,n)}function m0(t,e,i,s){let[n,l]=t;s&&l<0&&(l+=vs,n-=1);const[h,c]=Da(Ul(l,e,i),vs);return f1(n+h,c)}function Ul(t,e,i){return Ok(t/e,i)*e}function Ok(t,e){return SZ[e](t)}function ZH(t,e,i,s,n,l){const h=ql(t),c=Pn(t),_=g0(c,s,n,l),w=_o(c,_),I=Math.sign(_[0]-c[0])===h,C=yd(_,Math.min(i,6));return[{...t,...C},Qh(e,w),I]}function YH(t,e,i,s,n,l,h,c,_,w){const I=ql(t),C=yo(Pn(t,5)),P=tg(s,n);let B=Ul(C,P,l);const[q,V]=I1(h,{...t,...oT},6,I,c,_,w),J=B-yo(_o(q,V));let ue=0;J&&Math.sign(J)!==I?e=ed(q,B):(ue+=I,B=Ul(J,P,l),e=ed(V,B));const he=x0(B);return[{...t,...he,days:t.days+ue},e,!!ue]}function KH(t,e,i,s,n,l,h,c,_,w){const I=ql(t),C=ss[s],P=aT(s,t);s===7&&(t={...t,weeks:t.weeks+Math.trunc(t.days/7)});const B=t0(t[C],n)*n;P[C]=B;const[q,V]=I1(h,P,s,n*I,c,_,w),J=B+C1(e,q,V)*I*n,ue=Ul(J,n,l),he=Math.sign(ue-J)===I;return P[C]=ue,[P,he?V:q,he]}function vI(t,e,i,s){const[n,l,h,c]=(w=>{const I=x1(w=xo(w));return[w.timeZone,...I]})(s),_=n!==void 0;return((w,I,C,P,B,q)=>{C=m0(C,B,P,1);const V=I.getOffsetNanosecondsFor(C);return R1(cu(C,V),q)+(w?md(X_(V)):"Z")})(_,e(_?t(n):_u),i.epochNanoseconds,l,h,c)}function xI(t,e,i){const[s,n,l,h,c,_]=(w=>{w=xo(w);const I=dT(w),C=Ak(w),P=TZ(w),B=ag(w,4),q=og(w,4);return[I,wZ(w),P,B,...Ek(q,C)]})(i);return((w,I,C,P,B,q,V,J,ue,he)=>{P=m0(P,ue,J,1);const pe=w(C).getOffsetNanosecondsFor(P);return R1(cu(P,pe),he)+md(X_(pe),V)+((Pe,Oe)=>Oe!==1?"["+(Oe===2?"!":"")+cr(Pe)+"]":"")(C,q)+M1(I,B)})(t,e.calendar,e.timeZone,e.epochNanoseconds,s,n,l,h,c,_)}function wI(t,e){const[i,s,n,l]=(w=>(w=xo(w),[dT(w),...x1(w)]))(e);return h=t.calendar,c=i,_=l,R1(Rk(t,n,s),_)+M1(h,c);var h,c,_}function TI(t,e){return i=t.calendar,s=t,n=v1(e),Z_(s)+M1(i,n);var i,s,n}function SI(t,e){return Dk(t.calendar,Fk,t,v1(e))}function EI(t,e){return Dk(t.calendar,JH,t,v1(e))}function AI(t,e){const[i,s,n]=Sk(e);return l=n,Nk(P1(t,s,i)[0],l);var l}function Lv(t,e){const[i,s,n]=Sk(e,3);return s>1&&(t={...t,...XH(t,s,i)}),((l,h)=>{const{sign:c}=l,_=c===-1?ur(l):l,{hours:w,minutes:I}=_,[C,P]=p1(Pn(_,3),go,Ll);jk(C);const B=k1(P,h),q=h>=0||!c||B;return(c<0?"-":"")+"P"+II({Y:Ic(_.years),M:Ic(_.months),W:Ic(_.weeks),D:Ic(_.days)})+(w||I||C||q?"T"+II({H:Ic(w),M:Ic(I),S:Ic(C,q)+B}):"")})(t,n)}function Dk(t,e,i,s){const n=cr(t),l=s>1||s===0&&n!==xi;return s===1?n===xi?e(i):Z_(i):l?Z_(i)+Bk(n,s===2):e(i)}function II(t){const e=[];for(const i in t){const s=t[i];s&&e.push(s,i)}return e.join("")}function R1(t,e){return Z_(t)+"T"+Nk(t,e)}function Z_(t){return Fk(t)+"-"+po(t.isoDay)}function Fk(t){const{isoYear:e}=t;return(e<0||e>9999?Lk(e)+$_(6,Math.abs(e)):$_(4,e))+"-"+po(t.isoMonth)}function JH(t){return po(t.isoMonth)+"-"+po(t.isoDay)}function Nk(t,e){const i=[po(t.isoHour),po(t.isoMinute)];return e!==-1&&i.push(po(t.isoSecond)+((s,n,l,h)=>k1(s*Va+n*mu+l,h))(t.isoMillisecond,t.isoMicrosecond,t.isoNanosecond,e)),i.join(":")}function md(t,e=0){if(e===1)return"";const[i,s]=Da(Math.abs(t),M0),[n,l]=Da(s,R0),[h,c]=Da(l,go);return Lk(t)+po(i)+":"+po(n)+(h||c?":"+po(h)+k1(c):"")}function M1(t,e){if(e!==1){const i=cr(t);if(e>1||e===0&&i!==xi)return Bk(i,e===2)}return""}function Bk(t,e){return"["+(e?"!":"")+"u-ca="+t+"]"}function k1(t,e){let i=$_(9,t);return i=e===void 0?i.replace(IZ,""):i.slice(0,e),i?"."+i:""}function Lk(t){return t<0?"-":"+"}function Ic(t,e){return t||e?t.toLocaleString("fullwide",{useGrouping:0}):""}function GH(t,e){const{epochNanoseconds:i}=t,s=(e.getOffsetNanosecondsFor?e:e(t.timeZone)).getOffsetNanosecondsFor(i),n=cu(i,s);return{calendar:t.calendar,...n,offsetNanoseconds:s}}function QH(t,e){const i=Fr(e,t);return{calendar:e.calendar,...Jr(U3,i),offset:md(i.offsetNanoseconds),timeZone:e.timeZone}}function du(t,e,i,s=0,n=0,l,h){if(i!==void 0&&s===1&&(s===1||h))return _1(e,i);const c=t.getPossibleInstantsFor(e);if(i!==void 0&&s!==3){const _=((w,I,C,P)=>{const B=rr(I);P&&(C=X_(C));for(const q of w){let V=yo(_o(q,B));if(P&&(V=X_(V)),V===C)return q}})(c,e,i,l);if(_!==void 0)return _;if(s===0)throw new RangeError(VX)}return h?rr(e):Kr(t,e,n,c)}function Kr(t,e,i=0,s=t.getPossibleInstantsFor(e)){if(s.length===1)return s[0];if(i===1)throw new RangeError(jX);if(s.length)return s[i===3?1:0];const n=rr(e),l=((c,_)=>{const w=c.getOffsetNanosecondsFor(ed(_,-vs));return Uk(c.getOffsetNanosecondsFor(ed(_,vs))-w)})(t,n),h=l*(i===2?-1:1);return(s=t.getPossibleInstantsFor(cu(n,h)))[i===2?0:s.length-1]}function zk(t){if(Math.abs(t)>=vs)throw new RangeError(zX);return t}function Uk(t){if(t>vs)throw new RangeError(UX);return t}function CI(t,e,i){return Wn(Gr(Qh(e.epochNanoseconds,(s=>{if($k(s))throw new RangeError(HX);return Pn(s,5)})(t?ur(i):i))))}function PI(t,e,i,s,n,l=Object.create(null)){const h=e(s.timeZone),c=t(s.calendar);return{...s,...O1(h,c,s,i?ur(n):n,l)}}function RI(t,e,i,s,n=Object.create(null)){const{calendar:l}=i;return In(D1(t(l),i,e?ur(s):s,n),l)}function MI(t,e,i,s,n){const{calendar:l}=i;return Cn(_0(t(l),i,e?ur(s):s,n),l)}function kI(t,e,i,s,n=Object.create(null)){const l=i.calendar,h=t(l);let c=Bp(h,i);e&&(s=B1(s)),s.sign<0&&(c=h.dateAdd(c,{...Hn,months:1}),c=fu(c,-1));const _=h.dateAdd(c,s,n);return eu(Bp(h,_),l)}function OI(t,e,i){return ea(Vk(e,t?ur(i):i)[0])}function O1(t,e,i,s,n){const l=Pn(s,5);let h=i.epochNanoseconds;if($k(s)){const c=Fr(i,t);h=Qh(Kr(t,{..._0(e,c,{...s,...oT},n),...Jr(ia,c)}),l)}else h=Qh(h,l),Ji(n);return{epochNanoseconds:Gr(h)}}function D1(t,e,i,s){const[n,l]=Vk(e,i);return Ua({..._0(t,e,{...i,...oT,days:i.days+l},s),...n})}function _0(t,e,i,s){if(i.years||i.months||i.weeks)return t.dateAdd(e,i,s);Ji(s);const n=i.days+Pn(i,5)[0];return n?kl(fu(e,n)):e}function Bp(t,e,i=1){return fu(e,i-t.day(e))}function Vk(t,e){const[i,s]=Pn(e,5),[n,l]=a0(zl(t)+s);return[n,i+l]}function fu(t,e){return e?{...t,...l0(ar(t)+e*kr)}:t}function y0(t,e,i){const s=t(i.calendar);return v0(i)?[i,s,e(i.timeZone)]:[{...i,...Qo},s]}function F1(t){return t?Ck:rr}function b0(t){return t?_i(O1,t):D1}function N1(t){return t?_i(Tq,t):Sq}function v0(t){return t&&t.epochNanoseconds}function Lp(t,e){return t<=6-(v0(e)?1:0)}function DI(t,e,i,s,n,l,h){const c=t(xo(h).relativeTo),_=Math.max(tu(n),tu(l));if(Lp(_,c))return nn(_d(((V,J,ue,he)=>{const pe=Qh(Pn(V),Pn(J),he?-1:1);if(!Number.isFinite(pe[0]))throw new RangeError(I0);return{...Hn,...yd(pe,ue)}})(n,l,_,s)));if(!c)throw new RangeError(C0);s&&(l=ur(l));const[w,I,C]=y0(e,i,c),P=b0(C),B=N1(C),q=P(I,w,n);return nn(B(I,w,P(I,q,l),_))}function eq(t,e,i,s,n){const l=tu(s),[h,c,_,w,I]=((Ae,We,ze)=>{Ae=S1(Ae,J_);let Ge=hT(Ae);const wt=ze(Ae[j3]);let ot=w1(Ae);const Ot=ag(Ae,7);let Nt=og(Ae);if(Ge===void 0&&Nt===void 0)throw new RangeError(qX);return Nt==null&&(Nt=0),Ge==null&&(Ge=Math.max(Nt,We)),Ik(Ge,Nt),ot=T1(ot,Nt,1),[Ge,Nt,ot,Ot,wt]})(n,l,t),C=Math.max(l,h);if(!v0(I)&&C<=6)return nn(_d(((Ae,We,ze,Ge,wt)=>{const ot=g0(Pn(Ae),ze,Ge,wt);return{...Hn,...yd(ot,We)}})(s,h,c,_,w)));if(!I)throw new RangeError(C0);const[P,B,q]=y0(e,i,I),V=F1(q),J=b0(q),ue=N1(q),he=J(B,P,s);let pe=ue(B,P,he,h);const Pe=s.sign,Oe=ql(pe);if(Pe&&Oe&&Pe!==Oe)throw new RangeError(ng);return Oe&&(pe=p0(pe,V(he),h,c,_,w,B,P,V,J)),nn(pe)}function tq(t){return t.sign===-1?B1(t):t}function B1(t){return nn(ur(t))}function ur(t){const e={};for(const i of ss)e[i]=-1*t[i]||0;return e}function iq(t){return!t.sign}function ql(t,e=ss){let i=0;for(const s of e){const n=Math.sign(t[s]);if(n){if(i&&i!==n)throw new RangeError(WX);i=n}}return i}function _d(t){for(const e of nZ)ho(e,t[e],-YI,YI,1);return jk(yo(Pn(t),go)),t}function jk(t){if(!Number.isSafeInteger(t))throw new RangeError($X)}function Pn(t,e=6){return rk(t,e,ss)}function yd(t,e=6){const[i,s]=t,n=i0(s,e,ss);if(n[ss[e]]+=i*(vs/Go[e]),!Number.isFinite(n[ss[e]]))throw new RangeError(I0);return n}function x0(t,e=5){return i0(t,e,ss)}function $k(t){return!!ql(t,L3)}function tu(t){let e=9;for(;e>0&&!t[ss[e]];e--);return e}function sq(t,e){return[t,e]}function FI(t){const e=Math.floor(t/l_)*l_;return[e,e+l_]}function nq(t){const e=Xl(t=W_(t));if(!e)throw new RangeError(Mr(t));let i;if(e.m)i=0;else{if(!e.offset)throw new RangeError(Mr(t));i=bd(e.offset)}return e.timeZone&&j1(e.timeZone,1),Wn(_1(c0(e),i))}function rq(t){const e=Xl(hn(t));if(!e)throw new RangeError(Mr(t));if(e.timeZone)return Wk(e,e.offset?bd(e.offset):void 0);if(e.m)throw new RangeError(Mr(t));return qk(e)}function oq(t,e){const i=Xl(hn(t));if(!i||!i.timeZone)throw new RangeError(Mr(t));const{offset:s}=i,n=s?bd(s):void 0,[,l,h]=h0(e);return Wk(i,n,l,h)}function bd(t){const e=j1(t);if(e===void 0)throw new RangeError(Mr(t));return e}function aq(t){const e=Xl(hn(t));if(!e||e.m)throw new RangeError(Mr(t));return In(Hk(e))}function L1(t){const e=Xl(hn(t));if(!e||e.m)throw new RangeError(Mr(t));return Cn(e.p?Hk(e):qk(e))}function lq(t,e){const i=U1(hn(e));if(i)return z1(i),eu(m1(uu(i)));const s=L1(e);return eu(Bp(t(s.calendar),s))}function z1(t){if(t.calendar!==xi)throw new RangeError(Fa(t.calendar))}function cq(t,e){const i=V1(hn(e));if(i)return z1(i),q_(uu(i));const s=L1(e),{calendar:n}=s,l=t(n),[h,c,_]=l.h(s),[w,I]=l.I(h,c),[C,P]=l.N(w,I,_);return q_(kl(l.P(C,P,_)),n)}function uq(t){let e,i=(s=>{const n=DZ.exec(s);return n?(w0(n[10]),Yk(n)):void 0})(hn(t));if(!i){if(i=Xl(t),!i)throw new RangeError(Mr(t));if(!i.p)throw new RangeError(Mr(t));if(i.m)throw new RangeError(Fa("Z"));z1(i)}if((e=U1(t))&&yI(e))throw new RangeError(Mr(t));if((e=V1(t))&&yI(e))throw new RangeError(Mr(t));return ea(u0(i,1))}function hq(t){const e=(i=>{const s=BZ.exec(i);return s?(n=>{function l(I,C,P){let B=0,q=0;if(P&&([B,_]=Da(_,Go[P])),I!==void 0){if(c)throw new RangeError(Fa(I));q=(V=>{const J=parseInt(V);if(!Number.isFinite(J))throw new RangeError(Fa(V));return J})(I),h=1,C&&(_=$1(C)*(Go[P]/go),c=1)}return B+q}let h=0,c=0,_=0,w={...dd(ss,[l(n[2]),l(n[3]),l(n[4]),l(n[5]),l(n[6],n[7],5),l(n[8],n[9],4),l(n[10],n[11],3)]),...i0(_,2,ss)};if(!h)throw new RangeError(S3(ss));return W1(n[1])<0&&(w=ur(w)),w})(s):void 0})(hn(t));if(!e)throw new RangeError(Mr(t));return nn(_d(e))}function dq(t){const e=Xl(t)||U1(t)||V1(t);return e?e.calendar:t}function fq(t){const e=Xl(t);return e&&(e.timeZone||e.m&&_u||e.offset)||t}function Wk(t,e,i=0,s=0){const n=H1(t.timeZone),l=mT(n);return lr(du(l,c0(t),e,i,s,!l.v,t.m),n,A0(t.calendar))}function Hk(t){return Xk(Ua(c0(t)))}function qk(t){return Xk(kl(uu(t)))}function Xk(t){return{...t,calendar:A0(t.calendar)}}function Xl(t){const e=OZ.exec(t);return e?(i=>{const s=i[10],n=(s||"").toUpperCase()==="Z";return{isoYear:Zk(i),isoMonth:parseInt(i[4]),isoDay:parseInt(i[5]),...Yk(i.slice(5)),...w0(i[16]),p:!!i[6],m:n,offset:n?void 0:s}})(e):void 0}function U1(t){const e=MZ.exec(t);return e?(i=>({isoYear:Zk(i),isoMonth:parseInt(i[4]),isoDay:1,...w0(i[5])}))(e):void 0}function V1(t){const e=kZ.exec(t);return e?(i=>({isoYear:id,isoMonth:parseInt(i[1]),isoDay:parseInt(i[2]),...w0(i[3])}))(e):void 0}function j1(t,e){const i=FZ.exec(t);return i?((s,n)=>{const l=s[4]||s[5];if(n&&l)throw new RangeError(Fa(l));return zk((zh(s[2])*M0+zh(s[3])*R0+zh(s[4])*go+$1(s[5]||""))*W1(s[1]))})(i,e):void 0}function Zk(t){const e=W1(t[1]),i=parseInt(t[2]||t[3]);if(e<0&&!i)throw new RangeError(Fa(-0));return e*i}function Yk(t){const e=zh(t[3]);return{...a0($1(t[4]||""))[0],isoHour:zh(t[1]),isoMinute:zh(t[2]),isoSecond:e===60?59:e}}function w0(t){let e,i;const s=[];if(t.replace(NZ,(n,l,h)=>{const c=!!l,[_,w]=h.split("=").reverse();if(w){if(w==="u-ca")s.push(_),e||(e=c);else if(c||/[A-Z]/.test(w))throw new RangeError(Fa(n))}else{if(i)throw new RangeError(Fa(n));i=_}return""}),s.length>1&&e)throw new RangeError(Fa(t));return{timeZone:i,calendar:s[0]||xi}}function $1(t){return parseInt(t.padEnd(9,"0"))}function vd(t){return new RegExp(`^${t}$`,"i")}function W1(t){return t&&t!=="+"?-1:1}function zh(t){return t===void 0?0:parseInt(t)}function pq(t){return H1(hn(t))}function H1(t){const e=q1(t);return typeof e=="number"?md(e):e?(i=>{if(zZ.test(i))throw new RangeError(LX);return i.toLowerCase().split("/").map((s,n)=>(s.length<=3||/\d/.test(s))&&!/etc|yap/.test(s)?s.toUpperCase():s.replace(/baja|dumont|[a-z]+/g,(l,h)=>l.length<=2&&!n||l==="in"||l==="chat"?l.toUpperCase():l.length>2||!h?gI(l).replace(/island|noronha|murdo|rivadavia|urville/,gI):l)).join("/")})(t):_u}function NI(t){const e=q1(t);return typeof e=="number"?e:e?e.resolvedOptions().timeZone:_u}function q1(t){const e=j1(t=t.toUpperCase(),1);return e!==void 0?e:t!==_u?LZ(t):void 0}function Kk(t,e){return Dr(t.epochNanoseconds,e.epochNanoseconds)}function Jk(t,e){return Dr(t.epochNanoseconds,e.epochNanoseconds)}function gq(t,e,i,s,n,l){const h=t(xo(l).relativeTo),c=Math.max(tu(s),tu(n));if(sk(ss,s,n))return 0;if(Lp(c,h))return Dr(Pn(s),Pn(n));if(!h)throw new RangeError(C0);const[_,w,I]=y0(e,i,h),C=F1(I),P=b0(I);return Dr(C(P(w,_,s)),C(P(w,_,n)))}function Gk(t,e){return xd(t,e)||X1(t,e)}function xd(t,e){return Ml(ar(t),ar(e))}function X1(t,e){return Ml(zl(t),zl(e))}function mq(t,e){return!Kk(t,e)}function _q(t,e){return!Jk(t,e)&&!!Z1(t.timeZone,e.timeZone)&&gd(t.calendar,e.calendar)}function yq(t,e){return!Gk(t,e)&&gd(t.calendar,e.calendar)}function bq(t,e){return!xd(t,e)&&gd(t.calendar,e.calendar)}function vq(t,e){return!xd(t,e)&&gd(t.calendar,e.calendar)}function xq(t,e){return!xd(t,e)&&gd(t.calendar,e.calendar)}function wq(t,e){return!X1(t,e)}function Z1(t,e){if(t===e)return 1;const i=cr(t),s=cr(e);if(i===s)return 1;try{return NI(i)===NI(s)}catch{}}function BI(t,e,i,s){const n=pd(t,Rn(s),3,5),l=T0(e.epochNanoseconds,i.epochNanoseconds,...n);return nn(t?ur(l):l)}function LI(t,e,i,s,n,l){const h=E0(s.calendar,n.calendar),c=Rn(l),[_,w,I,C]=pd(i,c,5),P=s.epochNanoseconds,B=n.epochNanoseconds,q=Dr(B,P);let V;if(q)if(_<6)V=T0(P,B,_,w,I,C);else{const J=e(((he,pe)=>{if(!Z1(he,pe))throw new RangeError(I3);return he})(s.timeZone,n.timeZone)),ue=t(h);V=e3(ue,J,s,n,q,_,c),V=p0(V,B,_,w,I,C,ue,s,Ck,_i(O1,J))}else V=Hn;return nn(i?ur(V):V)}function zI(t,e,i,s,n){const l=E0(i.calendar,s.calendar),h=Rn(n),[c,_,w,I]=pd(e,h,6),C=rr(i),P=rr(s),B=Dr(P,C);let q;if(B)if(c<=6)q=T0(C,P,c,_,w,I);else{const V=t(l);q=t3(V,i,s,B,c,h),q=p0(q,P,c,_,w,I,V,i,rr,D1)}else q=Hn;return nn(e?ur(q):q)}function UI(t,e,i,s,n){const l=E0(i.calendar,s.calendar),h=Rn(n);return Qk(e,()=>t(l),i,s,...pd(e,h,6,9,6),h)}function VI(t,e,i,s,n){const l=E0(i.calendar,s.calendar),h=Rn(n),c=pd(e,h,9,9,8),_=t(l);return Qk(e,()=>_,Bp(_,i),Bp(_,s),...c,h)}function Qk(t,e,i,s,n,l,h,c,_){const w=rr(i),I=rr(s);let C;if(Dr(I,w))if(n===6)C=T0(w,I,n,l,h,c);else{const P=e();C=P.dateUntil(i,s,n,_),l===6&&h===1||(C=p0(C,I,n,l,h,c,P,i,rr,_0))}else C=Hn;return nn(t?ur(C):C)}function jI(t,e,i,s){const n=Rn(s),[l,h,c,_]=pd(t,n,5,5),w=Ul(Y1(e,i),tg(h,c),_),I={...Hn,...x0(w,l)};return nn(t?ur(I):I)}function Tq(t,e,i,s,n,l){const h=Dr(s.epochNanoseconds,i.epochNanoseconds);return h?n<6?i3(i.epochNanoseconds,s.epochNanoseconds,n):e3(e,t,i,s,h,n,l):Hn}function Sq(t,e,i,s,n){const l=rr(e),h=rr(i),c=Dr(h,l);return c?s<=6?i3(l,h,s):t3(t,e,i,c,s,n):Hn}function e3(t,e,i,s,n,l,h){const[c,_,w]=((P,B,q,V)=>{function J(){return We={...fu(pe,Oe++*-V),...he},ze=Kr(P,We),Dr(Pe,ze)===-V}const ue=Fr(B,P),he=Jr(ia,ue),pe=Fr(q,P),Pe=q.epochNanoseconds;let Oe=0;const Ae=Y1(ue,pe);let We,ze;if(Math.sign(Ae)===-V&&Oe++,J()&&(V===-1||J()))throw new RangeError(ng);const Ge=yo(_o(ze,Pe));return[ue,We,Ge]})(e,i,s,n);var I,C;return{...l===6?(I=c,C=_,{...Hn,days:s3(I,C)}):t.dateUntil(c,_,l,h),...x0(w)}}function t3(t,e,i,s,n,l){const[h,c,_]=((w,I,C)=>{let P=I,B=Y1(w,I);return Math.sign(B)===-C&&(P=fu(I,-C),B+=vs*C),[w,P,B]})(e,i,s);return{...t.dateUntil(h,c,n,l),...x0(_)}}function T0(t,e,i,s,n,l){return{...Hn,...yd(g0(_o(t,e),s,n,l),i)}}function i3(t,e,i){return{...Hn,...yd(_o(t,e),i)}}function s3(t,e){return S0(ar(t),ar(e))}function S0(t,e){return Math.trunc((e-t)/kr)}function Y1(t,e){return zl(e)-zl(t)}function E0(t,e){if(!gd(t,e))throw new RangeError(tT);return t}function Eq(t){function e(n){return((l,h)=>({...n3(l,h),F:l.month,day:parseInt(l.day)}))(g1(i,n),s)}const i=vT(t),s=Y_(t);return{id:t,O:Aq(e),B:Iq(e)}}function Aq(t){return Yr(e=>{const i=ar(e);return t(i)},WeakMap)}function Iq(t){const e=t(0).year-uZ;return Yr(i=>{let s,n=fd(i-e);const l=[],h=[];do n+=400*kr;while((s=t(n)).year<=i);do n+=(1-s.day)*kr,s.year===i&&(l.push(n),h.push(s.F)),n-=kr;while((s=t(n)).year>=i);return{k:l.reverse(),C:C3(h.reverse())}})}function n3(t,e){let i,s,n=r3(t);if(t.era){const l=B3[e];l!==void 0&&(i=e==="islamic"?"ah":t.era.normalize("NFD").toLowerCase().replace(/[^a-z0-9]/g,""),i==="bc"||i==="b"?i="bce":i!=="ad"&&i!=="a"||(i="ce"),s=n,n=c3(s,l[i]||0))}return{era:i,eraYear:s,year:n}}function r3(t){return parseInt(t.relatedYear||t.year)}function Gx(t){const{year:e,F:i,day:s}=this.O(t),{C:n}=this.B(e);return[e,n[i]+1,s]}function zp(t,e=1,i=1){return this.B(t).k[e-1]+(i-1)*kr}function Hm(t){const e=WI(this,t),i=WI(this,t-1),s=e.length;if(s>i.length){const n=u3(this);if(n<0)return-n;for(let l=0;li.length&&(s=1,n=this.B(t+1).k),S0(i[e-1],n[s-1])}function Xm(t){return this.B(t).k.length}function WI(t,e){return Object.keys(t.B(e).C)}function Cq(t){return A0(hn(t))}function A0(t){if((t=t.toLowerCase())!==xi&&t!==O0&&Y_(t)!==Y_(vT(t).resolvedOptions().calendar))throw new RangeError(BX(t));return t}function Y_(t){return t==="islamicc"&&(t="islamic"),t.split("-")[0]}function o3(t){return this.R(t)[0]}function a3(t){return this.R(t)[1]}function K1(t){const[e]=this.h(t);return S0(this.q(e),ar(t))+1}function l3(t){const e=VZ.exec(t);if(!e)throw new RangeError(DX(t));return[parseInt(e[1]),!!e[2]]}function K_(t,e,i){return t+(e||i&&t>=i?1:0)}function Qx(t,e){return t-(e&&t>=e?1:0)}function c3(t,e){return(e+t)*(Math.sign(e)||1)||0}function ew(t){return B3[h3(t)]}function u3(t){return QX[h3(t)]}function h3(t){return Y_(t.id||xi)}function Pq(t,e,i,s){const n=Zl(i,s,ta,[],O3);if(n.timeZone!==void 0){const l=i.dateFromFields(n),h=pu(n),c=t(n.timeZone);return{epochNanoseconds:du(e(c),{...l,...h},n.offset!==void 0?bd(n.offset):void 0),timeZone:c}}return{...i.dateFromFields(n),...Qo}}function Rq(t,e,i,s,n,l){const h=Zl(i,n,ta,M3,O3),c=t(h.timeZone),[_,w,I]=h0(l),C=i.dateFromFields(h,f0(l,_)),P=pu(h,_);return lr(du(e(c),{...C,...P},h.offset!==void 0?bd(h.offset):void 0,w,I),c,s)}function Mq(t,e,i){const s=Zl(t,e,ta,[],Kl),n=Ji(i);return In(Ua({...t.dateFromFields(s,f0(i,n)),...pu(s,n)}))}function d3(t,e,i,s=[]){const n=Zl(t,e,ta,s);return t.dateFromFields(n,i)}function f3(t,e,i,s){const n=Zl(t,e,nT,s);return t.yearMonthFromFields(n,i)}function p3(t,e,i,s,n=[]){const l=Zl(t,i,ta,n);return e&&l.month!==void 0&&l.monthCode===void 0&&l.year===void 0&&(l.year=id),t.monthDayFromFields(l,s)}function kq(t,e){const i=Ji(e);return ea(pu(Zo(t,iw,[],1),i))}function Oq(t){const e=Zo(t,rT);return nn(_d({...Hn,...e}))}function Zl(t,e,i,s=[],n=[]){return Zo(e,[...t.fields(i),...n].sort(),s)}function Zo(t,e,i,s=!i){const n={};let l,h=0;for(const c of e){if(c===l)throw new RangeError(AX(c));if(c==="constructor"||c==="__proto__")throw new RangeError(T3(c));let _=t[c];if(_!==void 0)h=1,KI[c]&&(_=KI[c](_,c)),n[c]=_;else if(i){if(i.includes(c))throw new TypeError(eT(c));n[c]=N3[c]}l=c}if(s&&!h)throw new TypeError(S3(e));return n}function pu(t,e){return u0(HZ({...N3,...t}),e)}function Dq(t,e,i,s,n,l){const h=Rn(l),{calendar:c,timeZone:_}=i;return lr(((w,I,C,P,B)=>{const q=ig(w,C,P,ta,k3,R3),[V,J,ue]=h0(B,2);return du(I,{...w.dateFromFields(q,f0(B,V)),...pu(q,V)},bd(q.offset),J,ue)})(t(c),e(_),s,n,h),_,c)}function Fq(t,e,i,s,n){const l=Rn(n);return In(((h,c,_,w)=>{const I=ig(h,c,_,ta,Kl),C=Ji(w);return Ua({...h.dateFromFields(I,f0(w,C)),...pu(I,C)})})(t(e.calendar),i,s,l))}function Nq(t,e,i,s,n){const l=Rn(n);return((h,c,_,w)=>{const I=ig(h,c,_,ta);return h.dateFromFields(I,w)})(t(e.calendar),i,s,l)}function Bq(t,e,i,s,n){const l=Rn(n);return eu(((h,c,_,w)=>{const I=ig(h,c,_,nT);return h.yearMonthFromFields(I,w)})(t(e.calendar),i,s,l))}function Lq(t,e,i,s,n){const l=Rn(n);return((h,c,_,w)=>{const I=ig(h,c,_,ta);return h.monthDayFromFields(I,w)})(t(e.calendar),i,s,l)}function zq(t,e,i){return ea(((s,n,l)=>{const h=Ji(l);return pu({...Jr(iw,s),...Zo(n,iw)},h)})(t,e,i))}function Uq(t,e){return nn((i=t,s=e,_d({...i,...Zo(s,rT)})));var i,s}function ig(t,e,i,s,n=[],l=[]){const h=[...t.fields(s),...n].sort();let c=Zo(e,h,l);const _=Zo(i,h);return c=t.mergeFields(c,_),Zo(c,h,[])}function J1(t,e){const i=Zl(t,e,F3);return t.monthDayFromFields(i)}function G1(t,e,i){const s=Zl(t,e,D3);return t.yearMonthFromFields(s,i)}function g3(t,e,i,s,n){e=Jr(i=t.fields(i),e),s=Zo(s,n=t.fields(n),[]);let l=t.mergeFields(e,s);return l=Zo(l,[...i,...n].sort(),[]),t.dateFromFields(l)}function zv(t,e){let{era:i,eraYear:s,year:n}=e;const l=ew(t);if(i!==void 0||s!==void 0){if(i===void 0||s===void 0)throw new TypeError(RX);if(!l)throw new RangeError(PX);const h=l[i];if(h===void 0)throw new RangeError(kX(i));const c=c3(s,h);if(n!==void 0&&n!==c)throw new RangeError(MX);n=c}else if(n===void 0)throw new TypeError(OX(l));return n}function Uv(t,e,i,s){let{month:n,monthCode:l}=e;if(l!==void 0){const h=((c,_,w,I)=>{const C=c.U(w),[P,B]=l3(_);let q=K_(P,B,C);if(B){const V=u3(c);if(V===void 0)throw new RangeError(Yf);if(V>0){if(q>V)throw new RangeError(Yf);if(C===void 0){if(I===1)throw new RangeError(Yf);q--}}else{if(q!==-V)throw new RangeError(Yf);if(C===void 0&&I===1)throw new RangeError(Yf)}}return q})(t,l,i,s);if(n!==void 0&&n!==h)throw new RangeError(A3);n=h,s=1}else if(n===void 0)throw new TypeError(FX);return ho("month",n,1,t.L(i),s)}function HI(t,e,i,s,n){return Ir(e,"day",1,t.j(s,i),n)}function Vv(t,e,i,s){let n=0;const l=[];for(const h of i)e[h]!==void 0?n=1:l.push(h);if(Object.assign(t,e),n)for(const h of s||l)delete t[h]}function Vq(t){return Wn(Gr(o0(r0(t))))}function jq(t,e,i,s,n=xi){return lr(Gr(o0(r0(i))),e(s),t(n))}function $q(t,e,i,s,n=0,l=0,h=0,c=0,_=0,w=0,I=xi){return In(Ua(c0(Jo(nr,dd(D0,[e,i,s,n,l,h,c,_,w])))),t(I))}function Wq(t,e,i,s,n=xi){return Cn(kl(uu(Jo(nr,{isoYear:e,isoMonth:i,isoDay:s}))),t(n))}function Hq(t,e,i,s=xi,n=1){const l=nr(e),h=nr(i),c=t(s);return eu(m1(uu({isoYear:l,isoMonth:h,isoDay:nr(n)})),c)}function qq(t,e,i,s=xi,n=id){const l=nr(e),h=nr(i),c=t(s);return q_(kl(uu({isoYear:nr(n),isoMonth:l,isoDay:h})),c)}function Xq(t=0,e=0,i=0,s=0,n=0,l=0){return ea(u0(Jo(nr,dd(ia,[t,e,i,s,n,l])),1))}function Zq(t=0,e=0,i=0,s=0,n=0,l=0,h=0,c=0,_=0,w=0){return nn(_d(Jo(hk,dd(ss,[t,e,i,s,n,l,h,c,_,w]))))}function qI(t,e,i=xi){return lr(t.epochNanoseconds,e,i)}function Yq(t){return Wn(t.epochNanoseconds)}function m3(t,e){return In(Fr(e,t))}function _3(t,e){return Cn(Fr(e,t))}function Kq(t,e,i){return G1(t(e.calendar),i)}function Jq(t,e,i){return J1(t(e.calendar),i)}function y3(t,e){return ea(Fr(e,t))}function Gq(t,e,i,s){const n=((l,h,c,_)=>{const w=Tk(_);return Kr(l(h),c,w)})(t,i,e,s);return lr(Gr(n),i,e.calendar)}function Qq(t,e,i){const s=t(e.calendar);return eu({...e,...G1(s,i)})}function eX(t,e,i){return J1(t(e.calendar),i)}function tX(t,e,i,s,n){const l=t(n.timeZone),h=n.plainTime,c=h!==void 0?e(h):Qo;return lr(Kr(i(l),{...s,...c}),l,s.calendar)}function iX(t,e=Qo){return In(Ua({...t,...e}))}function sX(t,e,i){return G1(t(e.calendar),i)}function nX(t,e,i){return J1(t(e.calendar),i)}function rX(t,e,i,s){return((n,l,h)=>g3(n,l,D3,Hl(h),rg))(t(e.calendar),i,s)}function oX(t,e,i,s){return((n,l,h)=>g3(n,l,F3,Hl(h),k0))(t(e.calendar),i,s)}function aX(t,e,i,s,n){const l=Hl(n),h=e(l.plainDate),c=t(l.timeZone);return lr(Kr(i(c),{...h,...s}),c,h.calendar)}function lX(t,e){return In(Ua({...t,...e}))}function cX(t){return Wn(Gr(Np(t,go)))}function uX(t){return Wn(Gr(Np(t,Va)))}function hX(t){return Wn(Gr(o0(r0(t),mu)))}function dX(t){return Wn(Gr(o0(r0(t))))}function fX(t,e,i=Qo){const s=e.timeZone,n=t(s),l={...Fr(e,n),...i};return lr(du(n,l,l.offsetNanoseconds,2),s,e.calendar)}function pX(t,e,i){const s=e.timeZone,n=t(s),l={...Fr(e,n),...i},h=b3(e.calendar,i.calendar);return lr(du(n,l,l.offsetNanoseconds,2),s,h)}function gX(t,e=Qo){return In({...t,...e})}function mX(t,e){return In({...t,...e},b3(t.calendar,e.calendar))}function Q1(t,e){return{...t,calendar:e}}function _X(t,e){return{...t,timeZone:e}}function b3(t,e){if(t===e)return t;const i=cr(t),s=cr(e);if(i===s||i===xi)return e;if(s===xi)return t;throw new RangeError(tT)}function yX(t,e){return i=>i===xi?t:i===O0||i===td?Object.assign(Object.create(t),{id:i}):Object.assign(Object.create(e),UZ(i))}function gu(t,e,i){const s=new Set(i);return n=>(((l,h)=>{for(const c of h)if(c in l)return 1;return 0})(n=ik(s,n),t)||Object.assign(n,e),i&&(n.timeZone=_u,["full","long"].includes(n.timeStyle)&&(n.timeStyle="medium")),n)}function Yl(t,e=v3){const[i,,,s]=t;return(n,l=aY,...h)=>{const c=e(s&&s(...h),n,l,i),_=c.resolvedOptions();return[c,...bX(t,_,h)]}}function v3(t,e,i,s){if(i=s(i),t){if(i.timeZone!==void 0)throw new TypeError(KX);i.timeZone=t}return new Zc(e,i)}function bX(t,e,i){const[,s,n]=t;return i.map(l=>(l.calendar&&((h,c,_)=>{if((_||h!==xi)&&h!==c)throw new RangeError(tT)})(cr(l.calendar),e.calendar,n),s(l,e)))}function Zf(t){const e=a_();return cu(e,t.getOffsetNanosecondsFor(e))}function a_(){return Np(Date.now(),Va)}function gl(){return GI||(GI=new Zc().resolvedOptions().timeZone)}const vX=(t,e)=>`Non-integer ${t}: ${e}`,xX=(t,e)=>`Non-positive ${t}: ${e}`,wX=(t,e)=>`Non-finite ${t}: ${e}`,TX=t=>`Cannot convert bigint to ${t}`,SX=t=>`Invalid bigint: ${t}`,EX="Cannot convert Symbol to string",x3="Invalid object",w3=(t,e,i,s,n)=>n?w3(t,n[e],n[i],n[s]):sg(t,e)+`; must be between ${i}-${s}`,sg=(t,e)=>`Invalid ${t}: ${e}`,eT=t=>`Missing ${t}`,T3=t=>`Invalid field ${t}`,AX=t=>`Duplicate field ${t}`,S3=t=>"No valid fields: "+t.join(),IX="Invalid bag",E3=(t,e,i)=>sg(t,e)+"; must be "+Object.keys(i).join(),CX="Cannot use valueOf",XI="Invalid calling context",PX="Forbidden era/eraYear",RX="Mismatching era/eraYear",MX="Mismatching year/eraYear",kX=t=>`Invalid era: ${t}`,OX=t=>"Missing year"+(t?"/era/eraYear":""),DX=t=>`Invalid monthCode: ${t}`,A3="Mismatching month/monthCode",FX="Missing month/monthCode",ZI="Cannot guess year",Yf="Invalid leap month",NX="Invalid protocol",ng="Invalid protocol results",tT="Mismatching Calendars",BX=t=>`Invalid Calendar: ${t}`,I3="Mismatching TimeZones",LX="Forbidden ICU TimeZone",zX="Out-of-bounds offset",UX="Out-of-bounds TimeZone gap",VX="Invalid TimeZone offset",jX="Ambiguous offset",I0="Out-of-bounds date",$X="Out-of-bounds duration",WX="Cannot mix duration signs",C0="Missing relativeTo",HX="Cannot use large units",qX="Required smallestUnit or largestUnit",XX="smallestUnit > largestUnit",Mr=t=>`Cannot parse: ${t}`,Fa=t=>`Invalid substring: ${t}`,ZX=t=>`Cannot format ${t}`,YX="Mismatching types for formatting",KX="Cannot specify TimeZone",C3=_i(e0,(t,e)=>e),wd=_i(e0,(t,e,i)=>i),po=_i($_,2),tw={nanosecond:0,microsecond:1,millisecond:2,second:3,minute:4,hour:5,day:6,week:7,month:8,year:9},P0=Object.keys(tw),kr=864e5,P3=1e3,mu=1e3,Va=1e6,go=1e9,R0=6e10,M0=36e11,vs=864e11,Go=[1,mu,Va,go,R0,M0,vs],Kl=P0.slice(0,6),iw=eg(Kl),R3=["offset"],M3=["timeZone"],k3=Kl.concat(R3),O3=k3.concat(M3),sw=["era","eraYear"],JX=sw.concat(["year"]),k0=["year"],iT=["monthCode"],sT=["month"].concat(iT),rg=["day"],nT=sT.concat(k0),D3=iT.concat(k0),ta=rg.concat(nT),GX=rg.concat(sT),F3=rg.concat(iT),N3=wd(Kl,0),xi="iso8601",O0="gregory",td="japanese",B3={[O0]:{bce:-1,ce:0},[td]:{bce:-1,ce:0,meiji:1867,taisho:1911,showa:1925,heisei:1988,reiwa:2018},ethioaa:{era0:0},ethiopic:{era0:0,era1:5500},coptic:{era0:-1,era1:0},roc:{beforeroc:-1,minguo:0},buddhist:{be:0},islamic:{ah:0},indian:{saka:0},persian:{ap:0}},QX={chinese:13,dangi:13,hebrew:-6},hn=_i(n0,"string"),eZ=_i(n0,"boolean"),tZ=_i(n0,"number"),iZ=_i(n0,"function"),ss=P0.map(t=>t+"s"),rT=eg(ss),sZ=ss.slice(0,6),L3=ss.slice(6),nZ=L3.slice(1),rZ=C3(ss),Hn=wd(ss,0),oT=wd(sZ,0),aT=_i(nk,ss),ia=["isoNanosecond","isoMicrosecond","isoMillisecond","isoSecond","isoMinute","isoHour"],lT=["isoDay","isoMonth","isoYear"],D0=ia.concat(lT),cT=eg(lT),z3=eg(ia),U3=eg(D0),Qo=wd(z3,0),oZ=_i(nk,D0),Zc=Intl.DateTimeFormat,V3="en-GB",uT=1e8,aZ=uT*kr,lZ=[uT,0],cZ=[-uT,0],Up=275760,Vp=-271821,uZ=1970,id=1972,Ia=12,hZ=fd(1868,9,8),dZ=Yr(FH,WeakMap),J_="smallestUnit",nw="unit",pp="roundingIncrement",jv="fractionalSecondDigits",j3="relativeTo",$3={constrain:0,reject:1},fZ=Object.keys($3),pZ={compatible:0,reject:1,earlier:2,later:3},gZ={reject:0,use:1,prefer:2,ignore:3},mZ={auto:0,never:1,critical:2,always:3},_Z={auto:0,never:1,critical:2},yZ={auto:0,never:1},bZ={floor:0,halfFloor:1,ceil:2,halfCeil:3,trunc:4,halfTrunc:5,expand:6,halfExpand:7,halfEven:8},og=_i(E1,J_),hT=_i(E1,"largestUnit"),vZ=_i(E1,nw),W3=_i(hu,"overflow",$3),H3=_i(hu,"disambiguation",pZ),xZ=_i(hu,"offset",gZ),dT=_i(hu,"calendarName",mZ),wZ=_i(hu,"timeZoneName",_Z),TZ=_i(hu,"offset",yZ),ag=_i(hu,"roundingMode",bZ),jp="PlainYearMonth",$p="PlainMonthDay",Td="PlainDate",Sd="PlainDateTime",fT="PlainTime",Jl="ZonedDateTime",pT="Instant",gT="Duration",SZ=[Math.floor,t=>Wm(t)?Math.floor(t):Math.round(t),Math.ceil,t=>Wm(t)?Math.ceil(t):Math.round(t),Math.trunc,t=>Wm(t)?Math.trunc(t)||0:Math.round(t),t=>t<0?Math.floor(t):Math.ceil(t),t=>Math.sign(t)*Math.round(Math.abs(t))||0,t=>Wm(t)?(t=Math.trunc(t)||0)+t%2:Math.round(t)],_u="UTC",l_=5184e3,EZ=H_(1847),AZ=H_(new Date().getUTCFullYear()+10),IZ=/0+$/,Fr=Yr(GH,WeakMap),YI=2**32-1,mT=Yr(t=>{const e=q1(t);return typeof e=="object"?new PZ(e):new CZ(e||0)});class CZ{constructor(e){this.v=e}getOffsetNanosecondsFor(){return this.v}getPossibleInstantsFor(e){return[_1(e,this.v)]}l(){}}class PZ{constructor(e){this.$=(i=>{function s(w){const I=Jx(w,c,_),[C,P]=FI(I),B=l(C),q=l(P);return B===q?B:n(h(C,P),B,q,w)}function n(w,I,C,P){let B,q;for(;(P===void 0||(B=P=w[1]?C:void 0)===void 0)&&(q=w[1]-w[0]);){const V=w[0]+Math.floor(q/2);i(V)===C?w[1]=V:w[0]=V+1}return B}const l=Yr(i),h=Yr(sq);let c=EZ,_=AZ;return{G(w){const I=s(w-86400),C=s(w+86400),P=w-I,B=w-C;if(I===C)return[P];const q=s(P);return q===s(B)?[w-q]:I>C?[P,B]:[]},V:s,l(w,I){const C=Jx(w,c,_);let[P,B]=FI(C);const q=l_*I,V=I<0?()=>B>c||(c=C,0):()=>P<_||(_=C,0);for(;V();){const J=l(P),ue=l(B);if(J!==ue){const he=h(P,B);n(he,J,ue);const pe=he[0];if((Ml(pe,w)||1)===I)return pe}P+=q,B+=q}}}})((i=>s=>{const n=g1(i,s*P3);return H_(r3(n),parseInt(n.month),parseInt(n.day),parseInt(n.hour),parseInt(n.minute),parseInt(n.second))-s})(e))}getOffsetNanosecondsFor(e){return this.$.V(pk(e))*go}getPossibleInstantsFor(e){const[i,s]=[H_((n=e).isoYear,n.isoMonth,n.isoDay,n.isoHour,n.isoMinute,n.isoSecond),n.isoMillisecond*Va+n.isoMicrosecond*mu+n.isoNanosecond];var n;return this.$.G(i).map(l=>Gr(ed(Np(l,go),s)))}l(e,i){const[s,n]=gk(e),l=this.$.l(s+(i>0||n?1:0),i);if(l!==void 0)return Np(l,go)}}const _T="([+−-])",c_="(?:[.,](\\d{1,9}))?",q3=`(?:(?:${_T}(\\d{6}))|(\\d{4}))-?(\\d{2})`,yT="(\\d{2})(?::?(\\d{2})(?::?(\\d{2})"+c_+")?)?",bT=_T+yT,RZ=q3+"-?(\\d{2})(?:[T ]"+yT+"(Z|"+bT+")?)?",X3="\\[(!?)([^\\]]*)\\]",F0=`((?:${X3}){0,9})`,MZ=vd(q3+F0),kZ=vd("(?:--)?(\\d{2})-?(\\d{2})"+F0),OZ=vd(RZ+F0),DZ=vd("T?"+yT+"(?:"+bT+")?"+F0),FZ=vd(bT),NZ=new RegExp(X3,"g"),BZ=vd(`${_T}?P(\\d+Y)?(\\d+M)?(\\d+W)?(\\d+D)?(?:T(?:(\\d+)${c_}H)?(?:(\\d+)${c_}M)?(?:(\\d+)${c_}S)?)?`),LZ=Yr(t=>new Zc(V3,{timeZone:t,era:"short",year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"})),zZ=/^(AC|AE|AG|AR|AS|BE|BS|CA|CN|CS|CT|EA|EC|IE|IS|JS|MI|NE|NS|PL|PN|PR|PS|SS|VS)T$/,UZ=Yr(Eq),vT=Yr(t=>new Zc(V3,{calendar:t,timeZone:_u,era:"short",year:"numeric",month:"short",day:"numeric"})),VZ=/^M(\d{2})(L?)$/,jZ={era:W_,eraYear:nr,year:nr,month:_I,monthCode:W_,day:_I},$Z=wd(Kl,nr),WZ=wd(ss,hk),KI=Object.assign({},jZ,$Z,WZ,{offset:W_}),HZ=_i(CH,Kl,ia),JI={dateAdd(t,e,i){const s=Ji(i);let n,{years:l,months:h,weeks:c,days:_}=e;if(_+=Pn(e,5)[0],l||h)n=((w,I,C,P,B)=>{let[q,V,J]=w.h(I);if(C){const[ue,he]=w.I(q,V);q+=C,V=K_(ue,he,w.U(q)),V=ho("month",V,1,w.L(q),B)}return P&&([q,V]=w._(q,V,P)),J=ho("day",J,1,w.j(q,V),B),w.q(q,V,J)})(this,t,l,h,s);else{if(!c&&!_)return t;n=ar(t)}return n+=(7*c+_)*kr,kl(l0(n))},dateUntil(t,e,i){if(i<=7){let _=0,w=s3({...t,...Qo},{...e,...Qo});return i===7&&([_,w]=Ll(w,7)),{...Hn,weeks:_,days:w}}const s=this.h(t),n=this.h(e);let[l,h,c]=((_,w,I,C,P,B,q)=>{let V=P-w,J=B-I,ue=q-C;if(V||J){const he=Math.sign(V||J);let pe=_.j(P,B),Pe=0;if(Math.sign(ue)===-he){const Oe=pe;[P,B]=_._(P,B,-he),V=P-w,J=B-I,pe=_.j(P,B),Pe=he<0?-Oe:pe}if(ue=q-Math.min(C,pe)+Pe,V){const[Oe,Ae]=_.I(w,I),[We,ze]=_.I(P,B);if(J=We-Oe||Number(ze)-Number(Ae),Math.sign(J)===-he){const Ge=he<0&&-_.L(P);V=(P-=he)-w,J=B-K_(Oe,Ae,_.U(P))+(Ge||_.L(P))}}}return[V,J,ue]})(this,...s,...n);return i===8&&(h+=this.J(l,s[0]),l=0),{...Hn,years:l,months:h,days:c}},dateFromFields(t,e){const i=Ji(e),s=zv(this,t),n=Uv(this,t,s,i),l=HI(this,t,n,s,i);return Cn(kl(this.P(s,n,l)),this.id||xi)},yearMonthFromFields(t,e){const i=Ji(e),s=zv(this,t),n=Uv(this,t,s,i);return eu(m1(this.P(s,n,1)),this.id||xi)},monthDayFromFields(t,e){const i=Ji(e),s=!this.id,{monthCode:n,year:l,month:h}=t;let c,_,w,I,C;if(n!==void 0){[c,_]=l3(n),C=tk(t,"day");const P=this.N(c,_,C);if(!P)throw new RangeError(ZI);if([w,I]=P,h!==void 0&&h!==I)throw new RangeError(A3);s&&(I=ho("month",I,1,Ia,1),C=ho("day",C,1,y1(l!==void 0?l:w,I),i))}else{w=l===void 0&&s?id:zv(this,t),I=Uv(this,t,w,i),C=HI(this,t,I,w,i);const P=this.U(w);_=I===P,c=Qx(I,P);const B=this.N(c,_,C);if(!B)throw new RangeError(ZI);[w,I]=B}return q_(kl(this.P(w,I,C)),this.id||xi)},fields(t){return ew(this)&&t.includes("year")?[...t,...sw]:t},mergeFields(t,e){const i=Object.assign(Object.create(null),t);return Vv(i,e,sT),ew(this)&&(Vv(i,e,JX),this.id===td&&Vv(i,e,GX,sw)),i},inLeapYear(t){const[e]=this.h(t);return this.K(e)},monthsInYear(t){const[e]=this.h(t);return this.L(e)},daysInMonth(t){const[e,i]=this.h(t);return this.j(e,i)},daysInYear(t){const[e]=this.h(t);return this.X(e)},dayOfYear:K1,era(t){return this.ee(t)[0]},eraYear(t){return this.ee(t)[1]},monthCode(t){const[e,i]=this.h(t),[s,n]=this.I(e,i);return((l,h)=>"M"+po(l)+(h?"L":""))(s,n)},dayOfWeek:vk,daysInWeek(){return 7}},qZ={dayOfYear:K1,h:_k,q:fd},XZ=Object.assign({},qZ,{weekOfYear:o3,yearOfWeek:a3,R(t){function e(B){return(7-Bi(0)&&(C=1,P++):(C=i(-1),P--),[C,P,I]}}),ZZ={dayOfYear:K1,h:Gx,q:zp,weekOfYear:o3,yearOfWeek:a3,R(){return[]}},lg=yX(Object.assign({},JI,XZ,{h:_k,ee(t){return this.id===O0?xk(t):this.id===td?dZ(t):[]},I:(t,e)=>[e,0],N(t,e){if(!e)return[id,t]},K:b1,U(){},L:yk,J:t=>t*Ia,j:y1,X:bk,P:(t,e,i)=>({isoYear:t,isoMonth:e,isoDay:i}),q:fd,_:(t,e,i)=>(t+=t0(i,Ia),(e+=h1(i,Ia))<1?(t--,e+=Ia):e>Ia&&(t++,e-=Ia),[t,e]),year(t){return t.isoYear},month(t){return t.isoMonth},day:t=>t.isoDay}),Object.assign({},JI,ZZ,{h:Gx,ee(t){const e=this.O(t);return[e.era,e.eraYear]},I(t,e){const i=Hm.call(this,t);return[Qx(e,i),i===e]},N(t,e,i){let[s,n,l]=Gx.call(this,{isoYear:id,isoMonth:Ia,isoDay:31});const h=Hm.call(this,s),c=n===h;(Ml(t,Qx(n,h))||Ml(Number(e),Number(c))||Ml(i,l))===1&&s--;for(let _=0;_<100;_++){const w=s-_,I=Hm.call(this,w),C=K_(t,e,I);if(e===(C===I)&&i<=$I.call(this,w,C))return[w,C]}},K(t){const e=qm.call(this,t);return e>qm.call(this,t-1)&&e>qm.call(this,t+1)},U:Hm,L:Xm,J(t,e){const i=e+t,s=Math.sign(t),n=s<0?-1:0;let l=0;for(let h=e;h!==i;h+=s)l+=Xm.call(this,h+n);return l},j:$I,X:qm,P(t,e,i){return l0(zp.call(this,t,e,i))},q:zp,_(t,e,i){if(i){if(e+=i,!Number.isSafeInteger(e))throw new RangeError(I0);if(i<0)for(;e<1;)e+=Xm.call(this,--t);else{let s;for(;e>(s=Xm.call(this,t));)e-=s,t++}}return[t,e]},year(t){return this.O(t).year},month(t){const{year:e,F:i}=this.O(t),{C:s}=this.B(e);return s[i]+1},day(t){return this.O(t).day}})),Ol="numeric",Ed=["timeZoneName"],Z3={month:Ol,day:Ol},xT={year:Ol,month:Ol},wT=Object.assign({},xT,{day:Ol}),TT={hour:Ol,minute:Ol,second:Ol},ST=Object.assign({},wT,TT),YZ=Object.assign({},ST,{timeZoneName:"short"}),KZ=Object.keys(xT),JZ=Object.keys(Z3),GZ=Object.keys(wT),QZ=Object.keys(TT),ET=["dateStyle"],eY=KZ.concat(ET),tY=JZ.concat(ET),AT=GZ.concat(ET,["weekday"]),cg=QZ.concat(["dayPeriod","timeStyle"]),IT=AT.concat(cg),iY=IT.concat(Ed),sY=Ed.concat(cg),nY=Ed.concat(AT),rY=Ed.concat(["day","weekday"],cg),oY=Ed.concat(["year","weekday"],cg),aY={},Y3=[gu(IT,ST),A1],lY=[gu(iY,YZ),A1,0,(t,e)=>{const i=cr(t.timeZone);if(e&&cr(e.timeZone)!==i)throw new RangeError(I3);return i}],K3=[gu(IT,ST,Ed),ar],J3=[gu(AT,wT,sY),ar],G3=[gu(cg,TT,nY),t=>zl(t)/Va],Q3=[gu(eY,xT,rY),ar,1],eO=[gu(tY,Z3,oY),ar,1];let GI;function sa(t,e,i,s,n){function l(..._){if(!(this instanceof l))throw new TypeError(XI);iC(this,e(..._))}function h(_,w){return Object.defineProperties(function(...I){return _.call(this,c(this),...I)},fI(w))}function c(_){const w=Xn(_);if(!w||w.branding!==t)throw new TypeError(XI);return w}return Object.defineProperties(l.prototype,{...IH(Jo(h,i)),...Gh(Jo(h,s)),...u1("Temporal."+t)}),Object.defineProperties(l,{...Gh(n),...fI(t)}),[l,_=>{const w=Object.create(l.prototype);return iC(w,_),w},c]}function tO(t){return t=t.concat("id").sort(),e=>{if(!PH(e,t))throw new TypeError(NX);return e}}function Ad(t){if(Xn(t)||t.calendar!==void 0||t.timeZone!==void 0)throw new TypeError(IX);return t}function Zm(t,e){const i={};for(const s in t)i[s]=({o:n},l)=>{const h=Xn(l)||{},{branding:c}=h,_=c===Td||e.includes(c)?h:sr(l);return n[s](_)};return i}function CT(t){const e={};for(const i in t)e[i]=s=>{const{calendar:n}=s;return(l=n,typeof l=="string"?lg(l):(h=l,Object.assign(Object.create(SY),{i:h})))[i](s);var l,h};return e}function Gl(){throw new TypeError(CX)}function ug({calendar:t}){return typeof t=="string"?new BT(t):t}function QI(t,e){if(e=Rn(e),qn(t)){const s=Xn(t);if(s&&s.branding===$p)return Ji(e),s;const n=nO(t);return p3(U0(n||xi),!n,t,e)}const i=cq(lg,t);return Ji(e),i}function iO(t,e,i){return s=e.call(t,er(Wn(i))),zk(s0(s));var s}function u_(t,e=lO){const i=Object.keys(e).sort(),s={};for(const n of i)s[n]=_i(e[n],t,iZ(t[n]));return s}function Es(t,e){return typeof t=="string"?mT(t):u_(t,e)}function un(t){return Es(t,ow)}function Uo(t){if(qn(t)){const e=Xn(t);if(e)switch(e.branding){case pT:return e;case Jl:return Wn(e.epochNanoseconds)}}return nq(t)}function eC(t,e,i){const s=e.l(Uo(i).epochNanoseconds,t);return s?er(Wn(s)):null}function Ns(t){return qn(t)?(Xn(t)||{}).timeZone||RY(t):(e=>H1(fq(hn(e))))(t)}function bl(t,e){if(qn(t)){const i=Xn(t)||{};switch(i.branding){case fT:return Ji(e),i;case Sd:return Ji(e),ea(i);case Jl:return Ji(e),y3(un,i)}return kq(t,e)}return Ji(e),uq(t)}function PT(t){return t===void 0?void 0:bl(t)}function fh(t,e){if(e=Rn(e),qn(t)){const s=Xn(t);return s&&s.branding===jp?(Ji(e),s):f3(L0(hg(t)),t,e)}const i=lq(lg,t);return Ji(e),i}function vl(t,e){if(e=Rn(e),qn(t)){const s=Xn(t)||{};switch(s.branding){case Sd:return Ji(e),s;case Td:return Ji(e),In({...s,...Qo});case Jl:return Ji(e),m3(un,s)}return Mq(z0(hg(t)),t,e)}const i=aq(t);return Ji(e),i}function sr(t,e){if(e=Rn(e),qn(t)){const s=Xn(t)||{};switch(s.branding){case Td:return Ji(e),s;case Sd:return Ji(e),Cn(s);case Jl:return Ji(e),_3(un,s)}return d3(z0(hg(t)),t,e)}const i=L1(t);return Ji(e),i}function sO(t,e,i){return Ho(e.call(t,sn(Cn(i,t))))}function na(t){return e=>typeof e=="string"?lg(e):((i,s)=>{const n=Object.keys(s).sort(),l={};for(const h of n)l[h]=_i(s[h],i,i[h]);return l})(e,t)}function tn(t){if(qn(t)){const e=Xn(t);return e&&e.branding===gT?e:Oq(t)}return hq(t)}function Kf(t){if(t!==void 0){if(qn(t)){const e=Xn(t)||{};switch(e.branding){case Jl:case Td:return e;case Sd:return Cn(e)}const i=hg(t);return{...Pq(Ns,Es,z0(i),t),calendar:i}}return rq(t)}}function hg(t){return nO(t)||xi}function nO(t){const{calendar:e}=t;if(e!==void 0)return $n(e)}function $n(t){return qn(t)?(Xn(t)||{}).calendar||HY(t):(e=>A0(dq(hn(e))))(t)}function ph(t,e){if(e=Rn(e),qn(t)){const i=Xn(t);if(i&&i.branding===Jl)return h0(e),i;const s=hg(t);return Rq(Ns,Es,z0(s),s,t,e)}return oq(t,e)}function tC(t){return Jo(e=>i=>e(rw(i)),t)}function rw(t){return Fr(t,un)}function cY(){const t=Zc.prototype,e=Object.getOwnPropertyDescriptors(t),i=Object.getOwnPropertyDescriptors(Zc),s=function(n,l={}){if(!(this instanceof s))return new s(n,l);LT.set(this,((h,c={})=>{const _=new Zc(h,c),w=_.resolvedOptions(),I=w.locale,C=Jr(Object.keys(c),w),P=Yr(dY),B=(...q)=>{let V;const J=q.map((ue,he)=>{const pe=Xn(ue),Pe=(pe||{}).branding;if(he&&V&&V!==Pe)throw new TypeError(YX);return V=Pe,pe});return V?P(V)(I,C,...J):[_,...q]};return B.u=_,B})(n,l))};for(const n in e){const l=e[n],h=n.startsWith("format")&&uY(n);typeof l.value=="function"?l.value=n==="constructor"?s:h||hY(n):h&&(l.get=function(){return h.bind(this)})}return i.prototype.value=Object.create(t,e),Object.defineProperties(s,i),s}function uY(t){return function(...e){const i=LT.get(this),[s,...n]=i(...e);return s[t](...n)}}function hY(t){return function(...e){return LT.get(this).u[t](...e)}}function dY(t){const e=fY[t];if(!e)throw new TypeError(ZX(t));return Yl(e,Yr(v3))}const fY={Instant:Y3,PlainDateTime:K3,PlainDate:J3,PlainTime:G3,PlainYearMonth:Q3,PlainMonthDay:eO},pY=Yl(Y3),gY=Yl(lY),mY=Yl(K3),_Y=Yl(J3),yY=Yl(G3),bY=Yl(Q3),vY=Yl(eO),RT={era:OH,eraYear:ok,year:s0,month:Ho,daysInMonth:Ho,daysInYear:Ho,inLeapYear:eZ,monthsInYear:Ho},N0={monthCode:hn},MT={day:Ho},rO={dayOfWeek:Ho,dayOfYear:Ho,weekOfYear:DH,yearOfWeek:ok,daysInWeek:Ho},oO=Object.assign({},RT,N0,MT,rO),G_=new WeakMap,Xn=G_.get.bind(G_),iC=G_.set.bind(G_),xY={...Zm(RT,[jp]),...Zm(rO,[]),...Zm(N0,[jp,$p]),...Zm(MT,[$p])},kT=CT(oO),wY=CT({...RT,...N0}),TY=CT({...N0,...MT}),dg={calendarId:t=>cr(t.calendar)},SY=Jo((t,e)=>function(i){const{i:s}=this;return t(s[e](sn(Cn(i,s))))},oO),EY=e0(t=>e=>e[t],ss.concat("sign")),OT=e0((t,e)=>i=>i[ia[e]],Kl),aO={epochSeconds:BH,epochMilliseconds:A1,epochMicroseconds:LH,epochNanoseconds:zH},fg=_i(ik,new Set(["branding"])),[AY,sd,IY]=sa($p,_i(qq,$n),{...dg,...TY},{getISOFields:fg,getCalendar:ug,with(t,e,i){return sd(Lq(jY,t,this,Ad(e),i))},equals:(t,e)=>xq(t,QI(e)),toPlainDate(t,e){return sn(oX(pg,t,this,e))},toLocaleString(t,e,i){const[s,n]=vY(e,i,t);return s.format(n)},toString:EI,toJSON:t=>EI(t),valueOf:Gl},{from:(t,e)=>sd(QI(t,e))}),lO={getOffsetNanosecondsFor:iO,getPossibleInstantsFor(t,e,i){const s=[...e.call(t,Vn(In(i,xi)))].map(l=>PY(l).epochNanoseconds),n=s.length;return n>1&&(s.sort(Dr),Uk(yo(_o(s[0],s[n-1])))),s}},ow={getOffsetNanosecondsFor:iO},[CY,er,PY]=sa(pT,Vq,aO,{add:(t,e)=>er(CI(0,t,tn(e))),subtract:(t,e)=>er(CI(1,t,tn(e))),until:(t,e,i)=>As(BI(0,t,Uo(e),i)),since:(t,e,i)=>As(BI(1,t,Uo(e),i)),round:(t,e)=>er(VH(t,e)),equals:(t,e)=>mq(t,Uo(e)),toZonedDateTime(t,e){const i=Hl(e);return cn(qI(t,Ns(i.timeZone),$n(i.calendar)))},toZonedDateTimeISO:(t,e)=>cn(qI(t,Ns(e))),toLocaleString(t,e,i){const[s,n]=pY(e,i,t);return s.format(n)},toString:(t,e)=>vI(Ns,un,t,e),toJSON:t=>vI(Ns,un,t),valueOf:Gl},{from:t=>er(Uo(t)),fromEpochSeconds:t=>er(cX(t)),fromEpochMilliseconds:t=>er(uX(t)),fromEpochMicroseconds:t=>er(hX(t)),fromEpochNanoseconds:t=>er(dX(t)),compare:(t,e)=>Kk(Uo(t),Uo(e))}),[B0,mK]=sa("TimeZone",t=>{const e=pq(t);return{branding:"TimeZone",id:e,o:mT(e)}},{id:t=>t.id},{getPossibleInstantsFor:({o:t},e)=>t.getPossibleInstantsFor(vl(e)).map(i=>er(Wn(i))),getOffsetNanosecondsFor:({o:t},e)=>t.getOffsetNanosecondsFor(Uo(e).epochNanoseconds),getOffsetStringFor(t,e){const i=Uo(e).epochNanoseconds,s=u_(this,ow).getOffsetNanosecondsFor(i);return md(s)},getPlainDateTimeFor(t,e,i=xi){const s=Uo(e).epochNanoseconds,n=u_(this,ow).getOffsetNanosecondsFor(s);return Vn(In(cu(s,n),$n(i)))},getInstantFor(t,e,i){const s=vl(e),n=Tk(i),l=u_(this);return er(Wn(Kr(l,s,n)))},getNextTransition:({o:t},e)=>eC(1,t,e),getPreviousTransition:({o:t},e)=>eC(-1,t,e),equals(t,e){return!!Z1(this,Ns(e))},toString:t=>t.id,toJSON:t=>t.id},{from(t){const e=Ns(t);return typeof e=="string"?new B0(e):e}}),RY=tO(Object.keys(lO)),[MY,wl]=sa(fT,Xq,OT,{getISOFields:fg,with(t,e,i){return wl(zq(this,Ad(e),i))},add:(t,e)=>wl(OI(0,t,tn(e))),subtract:(t,e)=>wl(OI(1,t,tn(e))),until:(t,e,i)=>As(jI(0,t,bl(e),i)),since:(t,e,i)=>As(jI(1,t,bl(e),i)),round:(t,e)=>wl(WH(t,e)),equals:(t,e)=>wq(t,bl(e)),toZonedDateTime:(t,e)=>cn(aX(Ns,sr,Es,t,e)),toPlainDateTime:(t,e)=>Vn(lX(t,sr(e))),toLocaleString(t,e,i){const[s,n]=yY(e,i,t);return s.format(n)},toString:AI,toJSON:t=>AI(t),valueOf:Gl},{from:(t,e)=>wl(bl(t,e)),compare:(t,e)=>X1(bl(t),bl(e))}),[kY,Al,OY]=sa(jp,_i(Hq,$n),{...dg,...wY},{getISOFields:fg,getCalendar:ug,with(t,e,i){return Al(Bq(VY,t,this,Ad(e),i))},add:(t,e,i)=>Al(kI(sC,0,t,tn(e),i)),subtract:(t,e,i)=>Al(kI(sC,1,t,tn(e),i)),until:(t,e,i)=>As(VI(nC,0,t,fh(e),i)),since:(t,e,i)=>As(VI(nC,1,t,fh(e),i)),equals:(t,e)=>vq(t,fh(e)),toPlainDate(t,e){return sn(rX(pg,t,this,e))},toLocaleString(t,e,i){const[s,n]=bY(e,i,t);return s.format(n)},toString:SI,toJSON:t=>SI(t),valueOf:Gl},{from:(t,e)=>Al(fh(t,e)),compare:(t,e)=>xd(fh(t),fh(e))}),[DY,Vn]=sa(Sd,_i($q,$n),{...dg,...kT,...OT},{getISOFields:fg,getCalendar:ug,with(t,e,i){return Vn(Fq(pg,t,this,Ad(e),i))},withCalendar:(t,e)=>Vn(Q1(t,$n(e))),withPlainDate:(t,e)=>Vn(mX(t,sr(e))),withPlainTime:(t,e)=>Vn(gX(t,PT(e))),add:(t,e,i)=>Vn(RI(iu,0,t,tn(e),i)),subtract:(t,e,i)=>Vn(RI(iu,1,t,tn(e),i)),until:(t,e,i)=>As(zI(qo,0,t,vl(e),i)),since:(t,e,i)=>As(zI(qo,1,t,vl(e),i)),round:(t,e)=>Vn($H(t,e)),equals:(t,e)=>yq(t,vl(e)),toZonedDateTime:(t,e,i)=>cn(Gq(Es,t,Ns(e),i)),toPlainDate:t=>sn(Cn(t)),toPlainTime:t=>wl(ea(t)),toPlainYearMonth(t){return Al(Qq(L0,t,this))},toPlainMonthDay(t){return sd(eX(U0,t,this))},toLocaleString(t,e,i){const[s,n]=mY(e,i,t);return s.format(n)},toString:wI,toJSON:t=>wI(t),valueOf:Gl},{from:(t,e)=>Vn(vl(t,e)),compare:(t,e)=>Gk(vl(t),vl(e))}),[FY,sn,cO]=sa(Td,_i(Wq,$n),{...dg,...kT},{getISOFields:fg,getCalendar:ug,with(t,e,i){return sn(Nq(pg,t,this,Ad(e),i))},withCalendar:(t,e)=>sn(Q1(t,$n(e))),add:(t,e,i)=>sn(MI(iu,0,t,tn(e),i)),subtract:(t,e,i)=>sn(MI(iu,1,t,tn(e),i)),until:(t,e,i)=>As(UI(qo,0,t,sr(e),i)),since:(t,e,i)=>As(UI(qo,1,t,sr(e),i)),equals:(t,e)=>bq(t,sr(e)),toZonedDateTime(t,e){const i=!qn(e)||e instanceof B0?{timeZone:e}:e;return cn(tX(Ns,bl,Es,t,i))},toPlainDateTime:(t,e)=>Vn(iX(t,PT(e))),toPlainYearMonth(t){return Al(sX(L0,t,this))},toPlainMonthDay(t){return sd(nX(U0,t,this))},toLocaleString(t,e,i){const[s,n]=_Y(e,i,t);return s.format(n)},toString:TI,toJSON:t=>TI(t),valueOf:Gl},{from:(t,e)=>sn(sr(t,e)),compare:(t,e)=>xd(sr(t),sr(e))}),DT={fields(t,e,i){return[...e.call(t,i)]}},uO=Object.assign({dateFromFields(t,e,i,s){return cO(e.call(t,Object.assign(Object.create(null),i),s))}},DT),hO=Object.assign({yearMonthFromFields(t,e,i,s){return OY(e.call(t,Object.assign(Object.create(null),i),s))}},DT),dO=Object.assign({monthDayFromFields(t,e,i,s){return IY(e.call(t,Object.assign(Object.create(null),i),s))}},DT),FT={mergeFields(t,e,i,s){return Hl(e.call(t,Object.assign(Object.create(null),i),Object.assign(Object.create(null),s)))}},NY=Object.assign({},uO,FT),BY=Object.assign({},hO,FT),LY=Object.assign({},dO,FT),NT={dateAdd(t,e,i,s,n){return cO(e.call(t,sn(Cn(i,t)),As(nn(s)),n))}},fO=Object.assign({},NT,{dateUntil(t,e,i,s,n,l){return WY(e.call(t,sn(Cn(i,t)),sn(Cn(s,t)),Object.assign(Object.create(null),l,{largestUnit:P0[n]})))}}),zY=Object.assign({},NT,{day:sO}),UY=Object.assign({},fO,{day:sO}),L0=na(hO),z0=na(uO),U0=na(dO),VY=na(BY),pg=na(NY),jY=na(LY),iu=na(NT),qo=na(fO),sC=na(zY),nC=na(UY),[$Y,As,WY]=sa(gT,Zq,{...EY,blank:iq},{with:(t,e)=>As(Uq(t,e)),negated:t=>As(B1(t)),abs:t=>As(tq(t)),add:(t,e,i)=>As(DI(Kf,qo,Es,0,t,tn(e),i)),subtract:(t,e,i)=>As(DI(Kf,qo,Es,1,t,tn(e),i)),round:(t,e)=>As(eq(Kf,qo,Es,t,e)),total:(t,e)=>UH(Kf,qo,Es,t,e),toLocaleString(t,e,i){return Intl.DurationFormat?new Intl.DurationFormat(e,i).format(this):Lv(t)},toString:Lv,toJSON:t=>Lv(t),valueOf:Gl},{from:t=>As(tn(t)),compare:(t,e,i)=>gq(Kf,iu,Es,tn(t),tn(e),i)}),pO={toString:t=>t.id,toJSON:t=>t.id,...xY,dateAdd:({id:t,o:e},i,s,n)=>sn(Cn(e.dateAdd(sr(i),tn(s),n),t)),dateUntil:({o:t},e,i,s)=>As(nn(t.dateUntil(sr(e),sr(i),NH(s)))),dateFromFields:({id:t,o:e},i,s)=>sn(d3(e,i,s,kH(t))),yearMonthFromFields:({id:t,o:e},i,s)=>Al(f3(e,i,s,RH(t))),monthDayFromFields:({id:t,o:e},i,s)=>sd(p3(e,0,i,s,MH(t))),fields({o:t},e){const i=new Set(ta),s=[];for(const n of e){if(hn(n),!i.has(n))throw new RangeError(T3(n));i.delete(n),s.push(n)}return t.fields(s)},mergeFields:({o:t},e,i)=>t.mergeFields(pI(mI(e)),pI(mI(i)))},[BT]=sa("Calendar",t=>{const e=Cq(t);return{branding:"Calendar",id:e,o:lg(e)}},{id:t=>t.id},pO,{from(t){const e=$n(t);return typeof e=="string"?new BT(e):e}}),HY=tO(Object.keys(pO).slice(4)),[qY,cn]=sa(Jl,_i(jq,$n,Ns),{...aO,...dg,...tC(kT),...tC(OT),offset:t=>md(rw(t).offsetNanoseconds),offsetNanoseconds:t=>rw(t).offsetNanoseconds,timeZoneId:t=>cr(t.timeZone),hoursInDay:t=>HH(Es,t)},{getISOFields:t=>QH(un,t),getCalendar:ug,getTimeZone:({timeZone:t})=>typeof t=="string"?new B0(t):t,with(t,e,i){return cn(Dq(pg,Es,t,this,Ad(e),i))},withCalendar:(t,e)=>cn(Q1(t,$n(e))),withTimeZone:(t,e)=>cn(_X(t,Ns(e))),withPlainDate:(t,e)=>cn(pX(Es,t,sr(e))),withPlainTime:(t,e)=>cn(fX(Es,t,PT(e))),add:(t,e,i)=>cn(PI(iu,Es,0,t,tn(e),i)),subtract:(t,e,i)=>cn(PI(iu,Es,1,t,tn(e),i)),until:(t,e,i)=>As(nn(LI(qo,Es,0,t,ph(e),i))),since:(t,e,i)=>As(nn(LI(qo,Es,1,t,ph(e),i))),round:(t,e)=>cn(jH(Es,t,e)),startOfDay:t=>cn(qH(Es,t)),equals:(t,e)=>_q(t,ph(e)),toInstant:t=>er(Yq(t)),toPlainDateTime:t=>Vn(m3(un,t)),toPlainDate:t=>sn(_3(un,t)),toPlainTime:t=>wl(y3(un,t)),toPlainYearMonth(t){return Al(Kq(L0,t,this))},toPlainMonthDay(t){return sd(Jq(U0,t,this))},toLocaleString(t,e,i={}){const[s,n]=gY(e,i,t);return s.format(n)},toString:(t,e)=>xI(un,t,e),toJSON:t=>xI(un,t),valueOf:Gl},{from:(t,e)=>cn(ph(t,e)),compare:(t,e)=>Jk(ph(t),ph(e))}),XY=Object.defineProperties({},{...u1("Temporal.Now"),...Gh({timeZoneId:()=>gl(),instant:()=>er(Wn(a_())),zonedDateTime:(t,e=gl())=>cn(lr(a_(),Ns(e),$n(t))),zonedDateTimeISO:(t=gl())=>cn(lr(a_(),Ns(t),xi)),plainDateTime:(t,e=gl())=>Vn(In(Zf(un(Ns(e))),$n(t))),plainDateTimeISO:(t=gl())=>Vn(In(Zf(un(Ns(t))),xi)),plainDate:(t,e=gl())=>sn(Cn(Zf(un(Ns(e))),$n(t))),plainDateISO:(t=gl())=>sn(Cn(Zf(un(Ns(t))),xi)),plainTimeISO:(t=gl())=>wl(ea(Zf(un(Ns(t)))))})}),rC=Object.defineProperties({},{...u1("Temporal"),...Gh({PlainYearMonth:kY,PlainMonthDay:AY,PlainDate:FY,PlainTime:MY,PlainDateTime:DY,ZonedDateTime:qY,Instant:CY,Calendar:BT,TimeZone:B0,Duration:$Y,Now:XY})}),ZY=cY(),LT=new WeakMap;Object.create(Intl),Gh({DateTimeFormat:ZY});const YY=NC({name:"TimeSlider",components:{},props:{numDays:Number,dailyTotals:{type:Object,required:!0},weeks:{type:Object,required:!0},initial:{type:Object,required:!0},labels:{type:Object,required:!1}},data:()=>({leftside:0,rightside:0,isDraggingDivider:0,isDragHappening:!1,dragStartWidth:100,thumbLeft:100,thumbWidth:0,pctStart:0,pctEnd:1,maxInfections:1,side:"",useInitial:!0}),computed:{},watch:{},mounted(){this.rightside=this.numDays||0,this.updateWeeks();const e=document.getElementById("dailybar").clientWidth;this.thumbLeft=Math.floor(this.initial[0]*e),this.thumbWidth=Math.ceil((this.initial[1]-this.initial[0])*e);const i=new ResizeObserver(n=>{const h=document.getElementById("dailybar").clientWidth;let c=this.useInitial?this.initial[0]:this.pctStart,_=this.useInitial?this.initial[1]:this.pctEnd;this.useInitial=!1,this.thumbLeft=Math.floor(c*h),this.thumbWidth=Math.ceil((_-c)*h)}),s=document.getElementById("dailybar");s&&i.observe(s)},methods:{updateWeeks(){this.maxInfections=Math.max(...this.weeks)},getWeekHeight(t){return Math.floor(100*t/this.maxInfections)},dividerDragStart(t,e){this.isDraggingDivider=t.clientX,this.dragStartWidth=this.thumbLeft,this.side=e},dividerDragEnd(t){this.isDraggingDivider=0,this.side=""},dividerDragging(t){if(!this.isDraggingDivider)return;if(this.side=="left")return this.adjustLeftSide(t);if(this.side=="right")return this.adjustRightSide(t);const i=document.getElementById("dailybar").clientWidth,s=t.clientX-this.isDraggingDivider;this.thumbLeft=Math.max(0,this.dragStartWidth+s),this.thumbLeft=Math.min(this.thumbLeft,i-this.thumbWidth),this.pctStart=this.thumbLeft/i,this.pctEnd=(this.thumbLeft+this.thumbWidth)/i,this.$emit("range",{start:this.pctStart,end:this.pctEnd})},adjustLeftSide(t){const i=document.getElementById("dailybar").clientWidth,s=t.clientX-this.isDraggingDivider,n=this.thumbLeft+s;n<0||n>=this.thumbLeft+this.thumbWidth-16||(this.isDraggingDivider+=s,this.thumbLeft+=s,this.thumbWidth-=s,this.thumbLeft=Math.max(0,this.thumbLeft),this.pctStart=this.thumbLeft/i,this.pctEnd=(this.thumbLeft+this.thumbWidth)/i,console.log(this.pctStart,this.pctEnd),this.$emit("range",{start:this.pctStart,end:this.pctEnd}))},adjustRightSide(t){const i=document.getElementById("dailybar").clientWidth,s=t.clientX-this.isDraggingDivider,n=this.thumbWidth+s;n<16||this.thumbLeft+n>i||(this.thumbWidth+=s,this.isDraggingDivider=t.clientX,this.pctStart=this.thumbLeft/i,this.pctEnd=(this.thumbLeft+this.thumbWidth)/i,console.log(this.pctStart,this.pctEnd),this.$emit("range",{start:this.pctStart,end:this.pctEnd}))},sizerDragStart(t){console.log("dragStart",t),this.isDraggingDivider=t.clientX,this.dragStartWidth=this.thumbLeft},sizerDragEnd(t){this.isDraggingDivider=0},sizerDragging(t){if(!this.isDraggingDivider)return;console.log("sizer",this.isDraggingDivider,t.clientX,this.thumbLeft,this.thumbWidth);const i=document.getElementById("dailybar").clientWidth,s=t.clientX-this.isDraggingDivider;console.log({deltaX:s});let n=s;console.log(n),console.log("oldwidth",this.thumbWidth,"newwidth",this.thumbWidth-n),console.log("oldleft",this.thumbLeft,"newleft",this.thumbLeft+n),this.thumbWidth-=n,this.thumbLeft+=n,this.pctStart=this.thumbLeft/i,this.pctEnd=(this.thumbLeft+this.thumbWidth)/i,this.$emit("range",{start:this.pctStart,end:this.pctEnd})},filterByDate(){}}}),KY={id:"dailybar"},JY={class:"bars"},GY={key:0,class:"labels"};function QY(t,e,i,s,n,l){return Pa(),Cc("div",{class:"time-slider",onMousemove:e[9]||(e[9]=ul((...h)=>t.dividerDragging&&t.dividerDragging(...h),["stop"])),onMouseup:e[10]||(e[10]=(...h)=>t.dividerDragEnd&&t.dividerDragEnd(...h))},[tr("div",KY,[tr("div",JY,[(Pa(!0),Cc(lo,null,DE(t.weeks,h=>(Pa(),Cc("div",{class:"week",style:Ph({height:`${t.getWeekHeight(h)}%`})},null,4))),256))]),t.labels?(Pa(),Cc("div",GY,[(Pa(!0),Cc(lo,null,DE(t.labels,h=>(Pa(),Cc("div",{class:"date-label",style:Ph({left:`${h.leftPct}%`})},h_(h.text),5))),256))])):rP("",!0)]),tr("div",{id:"dragthumb",style:Ph({left:`${t.thumbLeft}px`,width:`${t.thumbWidth}px`}),onMousedown:e[6]||(e[6]=(...h)=>t.dividerDragStart&&t.dividerDragStart(...h)),onMouseup:e[7]||(e[7]=(...h)=>t.dividerDragEnd&&t.dividerDragEnd(...h)),onMousemove:e[8]||(e[8]=ul((...h)=>t.dividerDragging&&t.dividerDragging(...h),["stop"]))},[tr("div",{id:"dragleftie",onMousedown:e[0]||(e[0]=ul(h=>t.dividerDragStart(h,"left"),["stop"])),onMouseup:e[1]||(e[1]=ul(h=>t.dividerDragEnd(h,"left"),["stop"])),onMousemove:e[2]||(e[2]=ul(h=>t.dividerDragging(h,"left"),["stop"]))},null,32),tr("div",{id:"dragrightie",onMousedown:e[3]||(e[3]=ul(h=>t.dividerDragStart(h,"right"),["stop"])),onMouseup:e[4]||(e[4]=ul(h=>t.dividerDragEnd(h,"right"),["stop"])),onMousemove:e[5]||(e[5]=ul(h=>t.dividerDragging(h,"right"),["stop"]))},null,32)],36)],32)}const gO=(t,e)=>{const i=t.__vccOpts||t;for(const[s,n]of e)i[s]=n;return i},eK=gO(YY,[["render",QY],["__scopeId","data-v-04bdd2c0"]]);function tK(t){return new Worker("/assets/CSVStreamer.worker-DUKFFnIK.js",{name:t==null?void 0:t.name})}const iK="https://svn.vsp.tu-berlin.de/repos/public-svn/matsim/scenarios/countries/de/episim/battery",sK=NC({name:"InfectionMap",components:{TimeSlider:eK},data:()=>({map:{},allInfections:[],isLoaded:!1,population:[],numInfections:0,statusText:"Loading...",coordinates:new Float64Array(1),view:0,deckOverlay:{},startDate:"",numDays:0,dailyTotals:new Float32Array(0),filterStartDate:0,filterEndDate:0,weeks:[],labels:[],csvStreamer:null}),computed:{},watch:{view(){this.updateLayers()}},beforeDestroy(){this.csvStreamer&&this.csvStreamer.terminate(),this.allInfections=[],this.coordinates=new Float64Array(1),this.population=[]},mounted(){this.map=null,this.map=new dI.Map({container:"mymap",style:"https://basemaps.cartocdn.com/gl/positron-gl-style/style.json",center:[8,49.9],zoom:7,bearing:0,pitch:50}),this.loadInfections()},methods:{filterByDate(t){const e=Math.floor(this.numDays*t.start),i=Math.ceil(this.numDays*t.end);this.filterStartDate=e,this.filterEndDate=i,this.updateLayers()},async loadInfections(){let e=new URLSearchParams(document.location.search).get("path")||"";if(!e){this.statusText="Need file path in URL";return}const i=`${iK}/${e}`;console.log({batteryUrl:i});const s=i.lastIndexOf("summaries/"),n=i.substring(0,s)+"metadata.yaml",l=await(await fetch(n)).text(),h=EH.parse(l);this.startDate=h.startDates?h.startDates[0]:"2020-02-25",console.log(this.startDate),this.csvStreamer=new tK;let c=0,_=0,w=0;this.csvStreamer.onmessage=async I=>{if(I.data.status&&(this.statusText=I.data.status),I.data.error&&(this.statusText=I.data.error),I.data.finished){const C=c/w,P=_/w;this.finishedLoadingInfections(C,P)}if(I.data.data){const C=I.data.data;this.numInfections+=C.length,this.statusText="Reading infections: "+this.numInfections,C.length&&(c+=C[0].home_lon,_+=C[0].home_lat,w+=1);for(const P of C)this.allInfections.push({home_lon:P.home_lon,home_lat:P.home_lat,daysSinceStart:P.daysSinceStart})}},this.csvStreamer.postMessage({url:i,options:{preview:5e4,header:!0,dynamicTyping:!0,skipEmptyLines:!0}})},finishedLoadingInfections(t,e){if(this.csvStreamer.terminate(),!this.allInfections.length){this.statusText="ERROR: No infections file found";return}this.setupDailyTotals(),this.isLoaded=!0,this.buildDeckLayer(t,e)},setupDailyTotals(){this.numDays=this.allInfections[this.allInfections.length-1].daysSinceStart||0,this.filterEndDate=this.numDays,this.dailyTotals=new Float32Array(this.numDays+1),this.allInfections.forEach(l=>{this.dailyTotals[l.daysSinceStart]+=1});let t=0;for(let l=0;l96.5&&(this.labels[this.labels.length-1].leftPct=96.5)},buildDeckLayer(t,e){this.statusText="Generating map...",this.deckOverlay=new eW({layers:[]}),this.map.addControl(this.deckOverlay),this.map.addControl(new dI.NavigationControl),t&&e&&this.map.jumpTo({center:[t,e],zoom:9}),this.statusText="Home locations of infected people",this.updateLayers()},updateLayers(){const t=[];t.push(new $x({visible:this.view==0,id:"pointlayer-1",data:this.allInfections,getFillColor:[50,0,180],getRadius:20,getPosition:e=>[e.home_lon,e.home_lat],radiusScale:1,stroked:!1,filled:!0,autoHighlight:!0,highlightColor:[255,255,255],opacity:.05,pickable:!1,useDevicePixels:!1,transitions:{},parameters:{depthTest:!1},glOptions:{fp64:!1},extensions:[new Wx({filterSize:1})],filterRange:[this.filterStartDate,this.filterEndDate],getFilterValue:e=>e.daysSinceStart})),this.deckOverlay._deck.setProps({layers:t})}}}),nK=t=>(sN("data-v-db21c9ed"),t=t(),nN(),t),rK={class:"app"},oK={class:"button-row"},aK={class:"flex1",style:{margin:"auto 0"}},lK=nK(()=>tr("div",{class:"mymap flex1",id:"mymap"},null,-1));function cK(t,e,i,s,n,l){const h=bN("time-slider");return Pa(),Cc("div",rK,[tr("div",oK,[tr("p",aK,[tr("b",null,h_(t.statusText)+" "+h_(t.filterStartDate+t.filterEndDate?`Day ${t.filterStartDate} - ${t.filterEndDate}`:""),1)]),tr("button",{onClick:e[0]||(e[0]=c=>t.view=0),class:Rh({isActive:t.view==0})},"Points",2),tr("button",{onClick:e[1]||(e[1]=c=>t.view=1),class:Rh({isActive:t.view==1})},"Hexagons",2),tr("button",{onClick:e[2]||(e[2]=c=>t.view=2),class:Rh({isActive:t.view==2})},"Districts",2)]),lK,t.isLoaded?(Pa(),sP(h,{key:0,class:"time-slider",numDays:t.numDays,dailyTotals:t.dailyTotals,weeks:t.weeks,initial:[0,30/t.numDays],labels:t.labels,onRange:t.filterByDate},null,8,["numDays","dailyTotals","weeks","initial","labels","onRange"])):rP("",!0)])}const uK=gO(sK,[["render",cK],["__scopeId","data-v-db21c9ed"]]);jB(uK).mount("#app"); +`),te=A.createShader(A.FRAGMENT_SHADER);if(A.isContextLost())return void(this.failedToCreate=!0);if(A.shaderSource(te,ae),A.compileShader(te),!A.getShaderParameter(te,A.COMPILE_STATUS))throw new Error(`Could not compile fragment shader: ${A.getShaderInfoLog(te)}`);A.attachShader(this.program,te);const ve=A.createShader(A.VERTEX_SHADER);if(A.isContextLost())return void(this.failedToCreate=!0);if(A.shaderSource(ve,me),A.compileShader(ve),!A.getShaderParameter(ve,A.COMPILE_STATUS))throw new Error(`Could not compile vertex shader: ${A.getShaderInfoLog(ve)}`);A.attachShader(this.program,ve),this.attributes={};const Ie={};this.numAttributes=F.length;for(let Me=0;Me({u_depth:new c.aI(Me,Ve.u_depth),u_terrain:new c.aI(Me,Ve.u_terrain),u_terrain_dim:new c.aJ(Me,Ve.u_terrain_dim),u_terrain_matrix:new c.aK(Me,Ve.u_terrain_matrix),u_terrain_unpack:new c.aL(Me,Ve.u_terrain_unpack),u_terrain_exaggeration:new c.aJ(Me,Ve.u_terrain_exaggeration)}))(o,Ie),this.binderUniforms=p?p.getUniforms(o,Ie):[]}draw(o,d,p,g,y,S,A,M,k,F,N,$,X,Q,re,se,ae,me){const te=o.gl;if(this.failedToCreate)return;if(o.program.set(this.program),o.setDepthMode(p),o.setStencilMode(g),o.setColorMode(y),o.setCullFace(S),M){o.activeTexture.set(te.TEXTURE2),te.bindTexture(te.TEXTURE_2D,M.depthTexture),o.activeTexture.set(te.TEXTURE3),te.bindTexture(te.TEXTURE_2D,M.texture);for(const Ie in this.terrainUniforms)this.terrainUniforms[Ie].set(M[Ie])}for(const Ie in this.fixedUniforms)this.fixedUniforms[Ie].set(A[Ie]);re&&re.setUniforms(o,this.binderUniforms,X,{zoom:Q});let ve=0;switch(d){case te.LINES:ve=2;break;case te.TRIANGLES:ve=3;break;case te.LINE_STRIP:ve=1}for(const Ie of $.get()){const Me=Ie.vaos||(Ie.vaos={});(Me[k]||(Me[k]=new ca)).bind(o,this,F,re?re.getPaintVertexBuffers():[],N,Ie.vertexOffset,se,ae,me),te.drawElements(d,Ie.primitiveLength*ve,te.UNSIGNED_SHORT,Ie.primitiveOffset*ve*2)}}}function G(b,o,d){const p=1/Ut(d,1,o.transform.tileZoom),g=Math.pow(2,d.tileID.overscaledZ),y=d.tileSize*Math.pow(2,o.transform.tileZoom)/g,S=y*(d.tileID.canonical.x+d.tileID.wrap*g),A=y*d.tileID.canonical.y;return{u_image:0,u_texsize:d.imageAtlasTexture.size,u_scale:[p,b.fromScale,b.toScale],u_fade:b.t,u_pixel_coord_upper:[S>>16,A>>16],u_pixel_coord_lower:[65535&S,65535&A]}}const ge=(b,o,d,p)=>{const g=o.style.light,y=g.properties.get("position"),S=[y.x,y.y,y.z],A=function(){var k=new c.A(9);return c.A!=Float32Array&&(k[1]=0,k[2]=0,k[3]=0,k[5]=0,k[6]=0,k[7]=0),k[0]=1,k[4]=1,k[8]=1,k}();g.properties.get("anchor")==="viewport"&&function(k,F){var N=Math.sin(F),$=Math.cos(F);k[0]=$,k[1]=N,k[2]=0,k[3]=-N,k[4]=$,k[5]=0,k[6]=0,k[7]=0,k[8]=1}(A,-o.transform.angle),function(k,F,N){var $=F[0],X=F[1],Q=F[2];k[0]=$*N[0]+X*N[3]+Q*N[6],k[1]=$*N[1]+X*N[4]+Q*N[7],k[2]=$*N[2]+X*N[5]+Q*N[8]}(S,S,A);const M=g.properties.get("color");return{u_matrix:b,u_lightpos:S,u_lightintensity:g.properties.get("intensity"),u_lightcolor:[M.r,M.g,M.b],u_vertical_gradient:+d,u_opacity:p}},De=(b,o,d,p,g,y,S)=>c.e(ge(b,o,d,p),G(y,o,S),{u_height_factor:-Math.pow(2,g.overscaledZ)/S.tileSize/8}),Ye=b=>({u_matrix:b}),_t=(b,o,d,p)=>c.e(Ye(b),G(d,o,p)),Kt=(b,o)=>({u_matrix:b,u_world:o}),gs=(b,o,d,p,g)=>c.e(_t(b,o,d,p),{u_world:g}),ms=(b,o,d,p)=>{const g=b.transform;let y,S;if(p.paint.get("circle-pitch-alignment")==="map"){const A=Ut(d,1,g.zoom);y=!0,S=[A,A]}else y=!1,S=g.pixelsToGLUnits;return{u_camera_to_center_distance:g.cameraToCenterDistance,u_scale_with_map:+(p.paint.get("circle-pitch-scale")==="map"),u_matrix:b.translatePosMatrix(o.posMatrix,d,p.paint.get("circle-translate"),p.paint.get("circle-translate-anchor")),u_pitch_with_map:+y,u_device_pixel_ratio:b.pixelRatio,u_extrude_scale:S}},Bs=(b,o,d)=>({u_matrix:b,u_inv_matrix:o,u_camera_to_center_distance:d.cameraToCenterDistance,u_viewport_size:[d.width,d.height]}),ws=(b,o,d=1)=>({u_matrix:b,u_color:o,u_overlay:0,u_overlay_scale:d}),ec=b=>({u_matrix:b}),Dn=(b,o,d,p)=>({u_matrix:b,u_extrude_scale:Ut(o,1,d),u_intensity:p});function Fn(b,o){const d=Math.pow(2,o.canonical.z),p=o.canonical.y;return[new c.Z(0,p/d).toLngLat().lat,new c.Z(0,(p+1)/d).toLngLat().lat]}const tc=(b,o,d,p)=>{const g=b.transform;return{u_matrix:_g(b,o,d,p),u_ratio:1/Ut(o,1,g.zoom),u_device_pixel_ratio:b.pixelRatio,u_units_to_pixels:[1/g.pixelsToGLUnits[0],1/g.pixelsToGLUnits[1]]}},yu=(b,o,d,p,g)=>c.e(tc(b,o,d,g),{u_image:0,u_image_height:p}),gg=(b,o,d,p,g)=>{const y=b.transform,S=ha(o,y);return{u_matrix:_g(b,o,d,g),u_texsize:o.imageAtlasTexture.size,u_ratio:1/Ut(o,1,y.zoom),u_device_pixel_ratio:b.pixelRatio,u_image:0,u_scale:[S,p.fromScale,p.toScale],u_fade:p.t,u_units_to_pixels:[1/y.pixelsToGLUnits[0],1/y.pixelsToGLUnits[1]]}},mg=(b,o,d,p,g,y)=>{const S=b.lineAtlas,A=ha(o,b.transform),M=d.layout.get("line-cap")==="round",k=S.getDash(p.from,M),F=S.getDash(p.to,M),N=k.width*g.fromScale,$=F.width*g.toScale;return c.e(tc(b,o,d,y),{u_patternscale_a:[A/N,-k.height/2],u_patternscale_b:[A/$,-F.height/2],u_sdfgamma:S.width/(256*Math.min(N,$)*b.pixelRatio)/2,u_image:0,u_tex_y_a:k.y,u_tex_y_b:F.y,u_mix:g.t})};function ha(b,o){return 1/Ut(b,1,o.tileZoom)}function _g(b,o,d,p){return b.translatePosMatrix(p?p.posMatrix:o.tileID.posMatrix,o,d.paint.get("line-translate"),d.paint.get("line-translate-anchor"))}const V0=(b,o,d,p,g)=>{return{u_matrix:b,u_tl_parent:o,u_scale_parent:d,u_buffer_scale:1,u_fade_t:p.mix,u_opacity:p.opacity*g.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:g.paint.get("raster-brightness-min"),u_brightness_high:g.paint.get("raster-brightness-max"),u_saturation_factor:(S=g.paint.get("raster-saturation"),S>0?1-1/(1.001-S):-S),u_contrast_factor:(y=g.paint.get("raster-contrast"),y>0?1/(1-y):1+y),u_spin_weights:j0(g.paint.get("raster-hue-rotate"))};var y,S};function j0(b){b*=Math.PI/180;const o=Math.sin(b),d=Math.cos(b);return[(2*d+1)/3,(-Math.sqrt(3)*o-d+1)/3,(Math.sqrt(3)*o-d+1)/3]}const yg=(b,o,d,p,g,y,S,A,M,k,F,N,$,X)=>{const Q=S.transform;return{u_is_size_zoom_constant:+(b==="constant"||b==="source"),u_is_size_feature_constant:+(b==="constant"||b==="camera"),u_size_t:o?o.uSizeT:0,u_size:o?o.uSize:0,u_camera_to_center_distance:Q.cameraToCenterDistance,u_pitch:Q.pitch/360*2*Math.PI,u_rotate_symbol:+d,u_aspect_ratio:Q.width/Q.height,u_fade_change:S.options.fadeDuration?S.symbolFadeChange:1,u_matrix:A,u_label_plane_matrix:M,u_coord_matrix:k,u_is_text:+N,u_pitch_with_map:+p,u_is_along_line:g,u_is_variable_anchor:y,u_texsize:$,u_texture:0,u_translation:F,u_pitched_scale:X}},bg=(b,o,d,p,g,y,S,A,M,k,F,N,$,X,Q)=>{const re=S.transform;return c.e(yg(b,o,d,p,g,y,S,A,M,k,F,N,$,Q),{u_gamma_scale:p?Math.cos(re._pitch)*re.cameraToCenterDistance:1,u_device_pixel_ratio:S.pixelRatio,u_is_halo:+X})},$0=(b,o,d,p,g,y,S,A,M,k,F,N,$,X)=>c.e(bg(b,o,d,p,g,y,S,A,M,k,F,!0,N,!0,X),{u_texsize_icon:$,u_texture_icon:1}),bu=(b,o,d)=>({u_matrix:b,u_opacity:o,u_color:d}),Id=(b,o,d,p,g,y)=>c.e(function(S,A,M,k){const F=M.imageManager.getPattern(S.from.toString()),N=M.imageManager.getPattern(S.to.toString()),{width:$,height:X}=M.imageManager.getPixelSize(),Q=Math.pow(2,k.tileID.overscaledZ),re=k.tileSize*Math.pow(2,M.transform.tileZoom)/Q,se=re*(k.tileID.canonical.x+k.tileID.wrap*Q),ae=re*k.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:F.tl,u_pattern_br_a:F.br,u_pattern_tl_b:N.tl,u_pattern_br_b:N.br,u_texsize:[$,X],u_mix:A.t,u_pattern_size_a:F.displaySize,u_pattern_size_b:N.displaySize,u_scale_a:A.fromScale,u_scale_b:A.toScale,u_tile_units_to_pixels:1/Ut(k,1,M.transform.tileZoom),u_pixel_coord_upper:[se>>16,ae>>16],u_pixel_coord_lower:[65535&se,65535&ae]}}(p,y,d,g),{u_matrix:b,u_opacity:o}),vu={fillExtrusion:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_lightpos:new c.aO(b,o.u_lightpos),u_lightintensity:new c.aJ(b,o.u_lightintensity),u_lightcolor:new c.aO(b,o.u_lightcolor),u_vertical_gradient:new c.aJ(b,o.u_vertical_gradient),u_opacity:new c.aJ(b,o.u_opacity)}),fillExtrusionPattern:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_lightpos:new c.aO(b,o.u_lightpos),u_lightintensity:new c.aJ(b,o.u_lightintensity),u_lightcolor:new c.aO(b,o.u_lightcolor),u_vertical_gradient:new c.aJ(b,o.u_vertical_gradient),u_height_factor:new c.aJ(b,o.u_height_factor),u_image:new c.aI(b,o.u_image),u_texsize:new c.aP(b,o.u_texsize),u_pixel_coord_upper:new c.aP(b,o.u_pixel_coord_upper),u_pixel_coord_lower:new c.aP(b,o.u_pixel_coord_lower),u_scale:new c.aO(b,o.u_scale),u_fade:new c.aJ(b,o.u_fade),u_opacity:new c.aJ(b,o.u_opacity)}),fill:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix)}),fillPattern:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_image:new c.aI(b,o.u_image),u_texsize:new c.aP(b,o.u_texsize),u_pixel_coord_upper:new c.aP(b,o.u_pixel_coord_upper),u_pixel_coord_lower:new c.aP(b,o.u_pixel_coord_lower),u_scale:new c.aO(b,o.u_scale),u_fade:new c.aJ(b,o.u_fade)}),fillOutline:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_world:new c.aP(b,o.u_world)}),fillOutlinePattern:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_world:new c.aP(b,o.u_world),u_image:new c.aI(b,o.u_image),u_texsize:new c.aP(b,o.u_texsize),u_pixel_coord_upper:new c.aP(b,o.u_pixel_coord_upper),u_pixel_coord_lower:new c.aP(b,o.u_pixel_coord_lower),u_scale:new c.aO(b,o.u_scale),u_fade:new c.aJ(b,o.u_fade)}),circle:(b,o)=>({u_camera_to_center_distance:new c.aJ(b,o.u_camera_to_center_distance),u_scale_with_map:new c.aI(b,o.u_scale_with_map),u_pitch_with_map:new c.aI(b,o.u_pitch_with_map),u_extrude_scale:new c.aP(b,o.u_extrude_scale),u_device_pixel_ratio:new c.aJ(b,o.u_device_pixel_ratio),u_matrix:new c.aK(b,o.u_matrix)}),collisionBox:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_pixel_extrude_scale:new c.aP(b,o.u_pixel_extrude_scale)}),collisionCircle:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_inv_matrix:new c.aK(b,o.u_inv_matrix),u_camera_to_center_distance:new c.aJ(b,o.u_camera_to_center_distance),u_viewport_size:new c.aP(b,o.u_viewport_size)}),debug:(b,o)=>({u_color:new c.aM(b,o.u_color),u_matrix:new c.aK(b,o.u_matrix),u_overlay:new c.aI(b,o.u_overlay),u_overlay_scale:new c.aJ(b,o.u_overlay_scale)}),clippingMask:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix)}),heatmap:(b,o)=>({u_extrude_scale:new c.aJ(b,o.u_extrude_scale),u_intensity:new c.aJ(b,o.u_intensity),u_matrix:new c.aK(b,o.u_matrix)}),heatmapTexture:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_world:new c.aP(b,o.u_world),u_image:new c.aI(b,o.u_image),u_color_ramp:new c.aI(b,o.u_color_ramp),u_opacity:new c.aJ(b,o.u_opacity)}),hillshade:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_image:new c.aI(b,o.u_image),u_latrange:new c.aP(b,o.u_latrange),u_light:new c.aP(b,o.u_light),u_shadow:new c.aM(b,o.u_shadow),u_highlight:new c.aM(b,o.u_highlight),u_accent:new c.aM(b,o.u_accent)}),hillshadePrepare:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_image:new c.aI(b,o.u_image),u_dimension:new c.aP(b,o.u_dimension),u_zoom:new c.aJ(b,o.u_zoom),u_unpack:new c.aL(b,o.u_unpack)}),line:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_ratio:new c.aJ(b,o.u_ratio),u_device_pixel_ratio:new c.aJ(b,o.u_device_pixel_ratio),u_units_to_pixels:new c.aP(b,o.u_units_to_pixels)}),lineGradient:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_ratio:new c.aJ(b,o.u_ratio),u_device_pixel_ratio:new c.aJ(b,o.u_device_pixel_ratio),u_units_to_pixels:new c.aP(b,o.u_units_to_pixels),u_image:new c.aI(b,o.u_image),u_image_height:new c.aJ(b,o.u_image_height)}),linePattern:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_texsize:new c.aP(b,o.u_texsize),u_ratio:new c.aJ(b,o.u_ratio),u_device_pixel_ratio:new c.aJ(b,o.u_device_pixel_ratio),u_image:new c.aI(b,o.u_image),u_units_to_pixels:new c.aP(b,o.u_units_to_pixels),u_scale:new c.aO(b,o.u_scale),u_fade:new c.aJ(b,o.u_fade)}),lineSDF:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_ratio:new c.aJ(b,o.u_ratio),u_device_pixel_ratio:new c.aJ(b,o.u_device_pixel_ratio),u_units_to_pixels:new c.aP(b,o.u_units_to_pixels),u_patternscale_a:new c.aP(b,o.u_patternscale_a),u_patternscale_b:new c.aP(b,o.u_patternscale_b),u_sdfgamma:new c.aJ(b,o.u_sdfgamma),u_image:new c.aI(b,o.u_image),u_tex_y_a:new c.aJ(b,o.u_tex_y_a),u_tex_y_b:new c.aJ(b,o.u_tex_y_b),u_mix:new c.aJ(b,o.u_mix)}),raster:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_tl_parent:new c.aP(b,o.u_tl_parent),u_scale_parent:new c.aJ(b,o.u_scale_parent),u_buffer_scale:new c.aJ(b,o.u_buffer_scale),u_fade_t:new c.aJ(b,o.u_fade_t),u_opacity:new c.aJ(b,o.u_opacity),u_image0:new c.aI(b,o.u_image0),u_image1:new c.aI(b,o.u_image1),u_brightness_low:new c.aJ(b,o.u_brightness_low),u_brightness_high:new c.aJ(b,o.u_brightness_high),u_saturation_factor:new c.aJ(b,o.u_saturation_factor),u_contrast_factor:new c.aJ(b,o.u_contrast_factor),u_spin_weights:new c.aO(b,o.u_spin_weights)}),symbolIcon:(b,o)=>({u_is_size_zoom_constant:new c.aI(b,o.u_is_size_zoom_constant),u_is_size_feature_constant:new c.aI(b,o.u_is_size_feature_constant),u_size_t:new c.aJ(b,o.u_size_t),u_size:new c.aJ(b,o.u_size),u_camera_to_center_distance:new c.aJ(b,o.u_camera_to_center_distance),u_pitch:new c.aJ(b,o.u_pitch),u_rotate_symbol:new c.aI(b,o.u_rotate_symbol),u_aspect_ratio:new c.aJ(b,o.u_aspect_ratio),u_fade_change:new c.aJ(b,o.u_fade_change),u_matrix:new c.aK(b,o.u_matrix),u_label_plane_matrix:new c.aK(b,o.u_label_plane_matrix),u_coord_matrix:new c.aK(b,o.u_coord_matrix),u_is_text:new c.aI(b,o.u_is_text),u_pitch_with_map:new c.aI(b,o.u_pitch_with_map),u_is_along_line:new c.aI(b,o.u_is_along_line),u_is_variable_anchor:new c.aI(b,o.u_is_variable_anchor),u_texsize:new c.aP(b,o.u_texsize),u_texture:new c.aI(b,o.u_texture),u_translation:new c.aP(b,o.u_translation),u_pitched_scale:new c.aJ(b,o.u_pitched_scale)}),symbolSDF:(b,o)=>({u_is_size_zoom_constant:new c.aI(b,o.u_is_size_zoom_constant),u_is_size_feature_constant:new c.aI(b,o.u_is_size_feature_constant),u_size_t:new c.aJ(b,o.u_size_t),u_size:new c.aJ(b,o.u_size),u_camera_to_center_distance:new c.aJ(b,o.u_camera_to_center_distance),u_pitch:new c.aJ(b,o.u_pitch),u_rotate_symbol:new c.aI(b,o.u_rotate_symbol),u_aspect_ratio:new c.aJ(b,o.u_aspect_ratio),u_fade_change:new c.aJ(b,o.u_fade_change),u_matrix:new c.aK(b,o.u_matrix),u_label_plane_matrix:new c.aK(b,o.u_label_plane_matrix),u_coord_matrix:new c.aK(b,o.u_coord_matrix),u_is_text:new c.aI(b,o.u_is_text),u_pitch_with_map:new c.aI(b,o.u_pitch_with_map),u_is_along_line:new c.aI(b,o.u_is_along_line),u_is_variable_anchor:new c.aI(b,o.u_is_variable_anchor),u_texsize:new c.aP(b,o.u_texsize),u_texture:new c.aI(b,o.u_texture),u_gamma_scale:new c.aJ(b,o.u_gamma_scale),u_device_pixel_ratio:new c.aJ(b,o.u_device_pixel_ratio),u_is_halo:new c.aI(b,o.u_is_halo),u_translation:new c.aP(b,o.u_translation),u_pitched_scale:new c.aJ(b,o.u_pitched_scale)}),symbolTextAndIcon:(b,o)=>({u_is_size_zoom_constant:new c.aI(b,o.u_is_size_zoom_constant),u_is_size_feature_constant:new c.aI(b,o.u_is_size_feature_constant),u_size_t:new c.aJ(b,o.u_size_t),u_size:new c.aJ(b,o.u_size),u_camera_to_center_distance:new c.aJ(b,o.u_camera_to_center_distance),u_pitch:new c.aJ(b,o.u_pitch),u_rotate_symbol:new c.aI(b,o.u_rotate_symbol),u_aspect_ratio:new c.aJ(b,o.u_aspect_ratio),u_fade_change:new c.aJ(b,o.u_fade_change),u_matrix:new c.aK(b,o.u_matrix),u_label_plane_matrix:new c.aK(b,o.u_label_plane_matrix),u_coord_matrix:new c.aK(b,o.u_coord_matrix),u_is_text:new c.aI(b,o.u_is_text),u_pitch_with_map:new c.aI(b,o.u_pitch_with_map),u_is_along_line:new c.aI(b,o.u_is_along_line),u_is_variable_anchor:new c.aI(b,o.u_is_variable_anchor),u_texsize:new c.aP(b,o.u_texsize),u_texsize_icon:new c.aP(b,o.u_texsize_icon),u_texture:new c.aI(b,o.u_texture),u_texture_icon:new c.aI(b,o.u_texture_icon),u_gamma_scale:new c.aJ(b,o.u_gamma_scale),u_device_pixel_ratio:new c.aJ(b,o.u_device_pixel_ratio),u_is_halo:new c.aI(b,o.u_is_halo),u_translation:new c.aP(b,o.u_translation),u_pitched_scale:new c.aJ(b,o.u_pitched_scale)}),background:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_opacity:new c.aJ(b,o.u_opacity),u_color:new c.aM(b,o.u_color)}),backgroundPattern:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_opacity:new c.aJ(b,o.u_opacity),u_image:new c.aI(b,o.u_image),u_pattern_tl_a:new c.aP(b,o.u_pattern_tl_a),u_pattern_br_a:new c.aP(b,o.u_pattern_br_a),u_pattern_tl_b:new c.aP(b,o.u_pattern_tl_b),u_pattern_br_b:new c.aP(b,o.u_pattern_br_b),u_texsize:new c.aP(b,o.u_texsize),u_mix:new c.aJ(b,o.u_mix),u_pattern_size_a:new c.aP(b,o.u_pattern_size_a),u_pattern_size_b:new c.aP(b,o.u_pattern_size_b),u_scale_a:new c.aJ(b,o.u_scale_a),u_scale_b:new c.aJ(b,o.u_scale_b),u_pixel_coord_upper:new c.aP(b,o.u_pixel_coord_upper),u_pixel_coord_lower:new c.aP(b,o.u_pixel_coord_lower),u_tile_units_to_pixels:new c.aJ(b,o.u_tile_units_to_pixels)}),terrain:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_texture:new c.aI(b,o.u_texture),u_ele_delta:new c.aJ(b,o.u_ele_delta),u_fog_matrix:new c.aK(b,o.u_fog_matrix),u_fog_color:new c.aM(b,o.u_fog_color),u_fog_ground_blend:new c.aJ(b,o.u_fog_ground_blend),u_fog_ground_blend_opacity:new c.aJ(b,o.u_fog_ground_blend_opacity),u_horizon_color:new c.aM(b,o.u_horizon_color),u_horizon_fog_blend:new c.aJ(b,o.u_horizon_fog_blend)}),terrainDepth:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_ele_delta:new c.aJ(b,o.u_ele_delta)}),terrainCoords:(b,o)=>({u_matrix:new c.aK(b,o.u_matrix),u_texture:new c.aI(b,o.u_texture),u_terrain_coords_id:new c.aJ(b,o.u_terrain_coords_id),u_ele_delta:new c.aJ(b,o.u_ele_delta)}),sky:(b,o)=>({u_sky_color:new c.aM(b,o.u_sky_color),u_horizon_color:new c.aM(b,o.u_horizon_color),u_horizon:new c.aJ(b,o.u_horizon),u_sky_horizon_blend:new c.aJ(b,o.u_sky_horizon_blend)})};class Cd{constructor(o,d,p){this.context=o;const g=o.gl;this.buffer=g.createBuffer(),this.dynamicDraw=!!p,this.context.unbindVAO(),o.bindElementBuffer.set(this.buffer),g.bufferData(g.ELEMENT_ARRAY_BUFFER,d.arrayBuffer,this.dynamicDraw?g.DYNAMIC_DRAW:g.STATIC_DRAW),this.dynamicDraw||delete d.arrayBuffer}bind(){this.context.bindElementBuffer.set(this.buffer)}updateData(o){const d=this.context.gl;if(!this.dynamicDraw)throw new Error("Attempted to update data while not in dynamic mode.");this.context.unbindVAO(),this.bind(),d.bufferSubData(d.ELEMENT_ARRAY_BUFFER,0,o.arrayBuffer)}destroy(){this.buffer&&(this.context.gl.deleteBuffer(this.buffer),delete this.buffer)}}const Pd={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT",Int32:"INT",Uint32:"UNSIGNED_INT",Float32:"FLOAT"};class Br{constructor(o,d,p,g){this.length=d.length,this.attributes=p,this.itemSize=d.bytesPerElement,this.dynamicDraw=g,this.context=o;const y=o.gl;this.buffer=y.createBuffer(),o.bindVertexBuffer.set(this.buffer),y.bufferData(y.ARRAY_BUFFER,d.arrayBuffer,this.dynamicDraw?y.DYNAMIC_DRAW:y.STATIC_DRAW),this.dynamicDraw||delete d.arrayBuffer}bind(){this.context.bindVertexBuffer.set(this.buffer)}updateData(o){if(o.length!==this.length)throw new Error(`Length of new data is ${o.length}, which doesn't match current length of ${this.length}`);const d=this.context.gl;this.bind(),d.bufferSubData(d.ARRAY_BUFFER,0,o.arrayBuffer)}enableAttributes(o,d){for(let p=0;p0){const Me=c.H();c.aR(Me,te.placementInvProjMatrix,b.transform.glCoordMatrix),c.aR(Me,Me,te.placementViewportMatrix),M.push({circleArray:Ie,circleOffset:F,transform:me.posMatrix,invTransform:Me,coord:me}),k+=Ie.length/4,F=k}ve&&A.draw(y,S.LINES,Jt.disabled,ji.disabled,b.colorModeForRenderPass(),Pi.disabled,{u_matrix:me.posMatrix,u_pixel_extrude_scale:[1/(N=b.transform).width,1/N.height]},b.style.map.terrain&&b.style.map.terrain.getTerrainData(me),d.id,ve.layoutVertexBuffer,ve.indexBuffer,ve.segments,null,b.transform.zoom,null,null,ve.collisionVertexBuffer)}var N;if(!g||!M.length)return;const $=b.useProgram("collisionCircle"),X=new c.aS;X.resize(4*k),X._trim();let Q=0;for(const ae of M)for(let me=0;me=0&&(ae[te.associatedIconIndex]={shiftedAnchor:Ft,angle:Mi})}else Ct(te.numGlyphs,re)}if(k){se.clear();const me=b.icon.placedSymbolArray;for(let te=0;teb.style.map.terrain.getElevation(Je,yf,Ts):null,el=d.layout.get("text-rotation-alignment")==="map";Y(bt,Je.posMatrix,b,g,va,Ga,ae,k,el,re,Je.toUnwrapped(),Q.width,Q.height,xa,Yi)}const Ls=Je.posMatrix,br=g&&Ke||_f,Io=me||br?Ld:va,Qa=Vu,Zs=lt&&d.paint.get(g?"text-halo-width":"icon-halo-width").constantOr(1)!==0;let Ys;Ys=lt?bt.iconsInText?$0(Ft.kind,Gt,te,ae,me,br,b,Ls,Io,Qa,xa,Hs,on,ft):bg(Ft.kind,Gt,te,ae,me,br,b,Ls,Io,Qa,xa,g,Hs,!0,ft):yg(Ft.kind,Gt,te,ae,me,br,b,Ls,Io,Qa,xa,g,Hs,ft);const Ms={program:qt,buffers:Vt,uniformValues:Ys,atlasTexture:_r,atlasTextureIcon:qs,atlasInterpolation:Oi,atlasInterpolationIcon:mn,isSDF:lt,hasHalo:Zs};if(Ie&&bt.canOverlap){Me=!0;const Yi=Vt.segments.get();for(const el of Yi)ht.push({segments:new c.a0([el]),sortKey:el.sortKey,state:Ms,terrainData:ki})}else ht.push({segments:Vt.segments,sortKey:0,state:Ms,terrainData:ki})}Me&&ht.sort((Je,it)=>Je.sortKey-it.sortKey);for(const Je of ht){const it=Je.state;if($.activeTexture.set(X.TEXTURE0),it.atlasTexture.bind(it.atlasInterpolation,X.CLAMP_TO_EDGE),it.atlasTextureIcon&&($.activeTexture.set(X.TEXTURE1),it.atlasTextureIcon&&it.atlasTextureIcon.bind(it.atlasInterpolationIcon,X.CLAMP_TO_EDGE)),it.isSDF){const bt=it.uniformValues;it.hasHalo&&(bt.u_is_halo=1,fa(it.buffers,Je.segments,d,b,it.program,Ve,F,N,bt,Je.terrainData)),bt.u_is_halo=0}fa(it.buffers,Je.segments,d,b,it.program,Ve,F,N,it.uniformValues,Je.terrainData)}}function fa(b,o,d,p,g,y,S,A,M,k){const F=p.context;g.draw(F,F.gl.TRIANGLES,y,S,A,Pi.disabled,M,k,d.id,b.layoutVertexBuffer,b.indexBuffer,o,d.paint,p.transform.zoom,b.programConfigurations.get(d.id),b.dynamicLayoutVertexBuffer,b.opacityVertexBuffer)}function Nn(b,o,d,p,g){if(!d||!p||!p.imageAtlas)return;const y=p.imageAtlas.patternPositions;let S=y[d.to.toString()],A=y[d.from.toString()];if(!S&&A&&(S=A),!A&&S&&(A=S),!S||!A){const M=g.getPaintProperty(o);S=y[M],A=y[M]}S&&A&&b.setConstantPatternPositions(S,A)}function Ud(b,o,d,p,g,y,S){const A=b.context.gl,M="fill-pattern",k=d.paint.get(M),F=k&&k.constantOr(1),N=d.getCrossfadeParameters();let $,X,Q,re,se;S?(X=F&&!d.getPaintProperty("fill-outline-color")?"fillOutlinePattern":"fillOutline",$=A.LINES):(X=F?"fillPattern":"fill",$=A.TRIANGLES);const ae=k.constantOr(null);for(const me of p){const te=o.getTile(me);if(F&&!te.patternsLoaded())continue;const ve=te.getBucket(d);if(!ve)continue;const Ie=ve.programConfigurations.get(d.id),Me=b.useProgram(X,Ie),Ve=b.style.map.terrain&&b.style.map.terrain.getTerrainData(me);F&&(b.context.activeTexture.set(A.TEXTURE0),te.imageAtlasTexture.bind(A.LINEAR,A.CLAMP_TO_EDGE),Ie.updatePaintBuffers(N)),Nn(Ie,M,ae,te,d);const Ke=Ve?me:null,ht=b.translatePosMatrix(Ke?Ke.posMatrix:me.posMatrix,te,d.paint.get("fill-translate"),d.paint.get("fill-translate-anchor"));if(S){re=ve.indexBuffer2,se=ve.segments2;const ft=[A.drawingBufferWidth,A.drawingBufferHeight];Q=X==="fillOutlinePattern"&&F?gs(ht,b,N,te,ft):Kt(ht,ft)}else re=ve.indexBuffer,se=ve.segments,Q=F?_t(ht,b,N,te):Ye(ht);Me.draw(b.context,$,g,b.stencilModeForClipping(me),y,Pi.disabled,Q,Ve,d.id,ve.layoutVertexBuffer,re,se,d.paint,b.transform.zoom,Ie)}}function Iu(b,o,d,p,g,y,S){const A=b.context,M=A.gl,k="fill-extrusion-pattern",F=d.paint.get(k),N=F.constantOr(1),$=d.getCrossfadeParameters(),X=d.paint.get("fill-extrusion-opacity"),Q=F.constantOr(null);for(const re of p){const se=o.getTile(re),ae=se.getBucket(d);if(!ae)continue;const me=b.style.map.terrain&&b.style.map.terrain.getTerrainData(re),te=ae.programConfigurations.get(d.id),ve=b.useProgram(N?"fillExtrusionPattern":"fillExtrusion",te);N&&(b.context.activeTexture.set(M.TEXTURE0),se.imageAtlasTexture.bind(M.LINEAR,M.CLAMP_TO_EDGE),te.updatePaintBuffers($)),Nn(te,k,Q,se,d);const Ie=b.translatePosMatrix(re.posMatrix,se,d.paint.get("fill-extrusion-translate"),d.paint.get("fill-extrusion-translate-anchor")),Me=d.paint.get("fill-extrusion-vertical-gradient"),Ve=N?De(Ie,b,Me,X,re,$,se):ge(Ie,b,Me,X);ve.draw(A,A.gl.TRIANGLES,g,y,S,Pi.backCCW,Ve,me,d.id,ae.layoutVertexBuffer,ae.indexBuffer,ae.segments,d.paint,b.transform.zoom,te,b.style.map.terrain&&ae.centroidVertexBuffer)}}function Vd(b,o,d,p,g,y,S){const A=b.context,M=A.gl,k=d.fbo;if(!k)return;const F=b.useProgram("hillshade"),N=b.style.map.terrain&&b.style.map.terrain.getTerrainData(o);A.activeTexture.set(M.TEXTURE0),M.bindTexture(M.TEXTURE_2D,k.colorAttachment.get()),F.draw(A,M.TRIANGLES,g,y,S,Pi.disabled,(($,X,Q,re)=>{const se=Q.paint.get("hillshade-shadow-color"),ae=Q.paint.get("hillshade-highlight-color"),me=Q.paint.get("hillshade-accent-color");let te=Q.paint.get("hillshade-illumination-direction")*(Math.PI/180);Q.paint.get("hillshade-illumination-anchor")==="viewport"&&(te-=$.transform.angle);const ve=!$.options.moving;return{u_matrix:re?re.posMatrix:$.transform.calculatePosMatrix(X.tileID.toUnwrapped(),ve),u_image:0,u_latrange:Fn(0,X.tileID),u_light:[Q.paint.get("hillshade-exaggeration"),te],u_shadow:se,u_highlight:ae,u_accent:me}})(b,d,p,N?o:null),N,p.id,b.rasterBoundsBuffer,b.quadTriangleIndexBuffer,b.rasterBoundsSegments)}function pa(b,o,d,p,g,y){const S=b.context,A=S.gl,M=o.dem;if(M&&M.data){const k=M.dim,F=M.stride,N=M.getPixels();if(S.activeTexture.set(A.TEXTURE1),S.pixelStoreUnpackPremultiplyAlpha.set(!1),o.demTexture=o.demTexture||b.getTileTexture(F),o.demTexture){const X=o.demTexture;X.update(N,{premultiply:!1}),X.bind(A.NEAREST,A.CLAMP_TO_EDGE)}else o.demTexture=new ot(S,N,A.RGBA,{premultiply:!1}),o.demTexture.bind(A.NEAREST,A.CLAMP_TO_EDGE);S.activeTexture.set(A.TEXTURE0);let $=o.fbo;if(!$){const X=new ot(S,{width:k,height:k,data:null},A.RGBA);X.bind(A.LINEAR,A.CLAMP_TO_EDGE),$=o.fbo=S.createFramebuffer(k,k,!0,!1),$.colorAttachment.set(X.texture)}S.bindFramebuffer.set($.framebuffer),S.viewport.set([0,0,k,k]),b.useProgram("hillshadePrepare").draw(S,A.TRIANGLES,p,g,y,Pi.disabled,((X,Q)=>{const re=Q.stride,se=c.H();return c.aQ(se,0,c.X,-c.X,0,0,1),c.J(se,se,[0,-c.X,0]),{u_matrix:se,u_image:1,u_dimension:[re,re],u_zoom:X.overscaledZ,u_unpack:Q.getUnpackVector()}})(o.tileID,M),null,d.id,b.rasterBoundsBuffer,b.quadTriangleIndexBuffer,b.rasterBoundsSegments),o.needsHillshadePrepare=!1}}function Cu(b,o,d,p,g,y){const S=p.paint.get("raster-fade-duration");if(!y&&S>0){const A=C.now(),M=(A-b.timeAdded)/S,k=o?(A-o.timeAdded)/S:-1,F=d.getSource(),N=g.coveringZoomLevel({tileSize:F.tileSize,roundZoom:F.roundZoom}),$=!o||Math.abs(o.tileID.overscaledZ-N)>Math.abs(b.tileID.overscaledZ-N),X=$&&b.refreshedUponExpiration?1:c.ad($?M:1-k,0,1);return b.refreshedUponExpiration&&M>=1&&(b.refreshedUponExpiration=!1),o?{opacity:1,mix:1-X}:{opacity:X,mix:0}}return{opacity:1,mix:0}}const Pu=new c.aN(1,0,0,1),oc=new c.aN(0,1,0,1),Ru=new c.aN(0,0,1,1),Dg=new c.aN(1,0,1,1),Wa=new c.aN(0,1,1,1);function ga(b,o,d,p){Ha(b,0,o+d/2,b.transform.width,d,p)}function jd(b,o,d,p){Ha(b,o-d/2,0,d,b.transform.height,p)}function Ha(b,o,d,p,g,y){const S=b.context,A=S.gl;A.enable(A.SCISSOR_TEST),A.scissor(o*b.pixelRatio,d*b.pixelRatio,p*b.pixelRatio,g*b.pixelRatio),S.clear({color:y}),A.disable(A.SCISSOR_TEST)}function ai(b,o,d){const p=b.context,g=p.gl,y=d.posMatrix,S=b.useProgram("debug"),A=Jt.disabled,M=ji.disabled,k=b.colorModeForRenderPass(),F="$debug",N=b.style.map.terrain&&b.style.map.terrain.getTerrainData(d);p.activeTexture.set(g.TEXTURE0);const $=o.getTileByID(d.key).latestRawTileData,X=Math.floor(($&&$.byteLength||0)/1024),Q=o.getTile(d).tileSize,re=512/Math.min(Q,512)*(d.overscaledZ/b.transform.zoom)*.5;let se=d.canonical.toString();d.overscaledZ!==d.canonical.z&&(se+=` => ${d.overscaledZ}`),function(ae,me){ae.initDebugOverlayCanvas();const te=ae.debugOverlayCanvas,ve=ae.context.gl,Ie=ae.debugOverlayCanvas.getContext("2d");Ie.clearRect(0,0,te.width,te.height),Ie.shadowColor="white",Ie.shadowBlur=2,Ie.lineWidth=1.5,Ie.strokeStyle="white",Ie.textBaseline="top",Ie.font="bold 36px Open Sans, sans-serif",Ie.fillText(me,5,5),Ie.strokeText(me,5,5),ae.debugOverlayTexture.update(te),ae.debugOverlayTexture.bind(ve.LINEAR,ve.CLAMP_TO_EDGE)}(b,`${se} ${X}kB`),S.draw(p,g.TRIANGLES,A,M,Ti.alphaBlended,Pi.disabled,ws(y,c.aN.transparent,re),null,F,b.debugBuffer,b.quadTriangleIndexBuffer,b.debugSegments),S.draw(p,g.LINE_STRIP,A,M,k,Pi.disabled,ws(y,c.aN.red),N,F,b.debugBuffer,b.tileBorderIndexBuffer,b.debugSegments)}function ac(b,o,d){const p=b.context,g=p.gl,y=b.colorModeForRenderPass(),S=new Jt(g.LEQUAL,Jt.ReadWrite,b.depthRangeFor3D),A=b.useProgram("terrain"),M=o.getTerrainMesh();p.bindFramebuffer.set(null),p.viewport.set([0,0,b.width,b.height]);for(const k of d){const F=b.renderToTexture.getTexture(k),N=o.getTerrainData(k.tileID);p.activeTexture.set(g.TEXTURE0),g.bindTexture(g.TEXTURE_2D,F.texture);const $=b.transform.calculatePosMatrix(k.tileID.toUnwrapped()),X=o.getMeshFrameDelta(b.transform.zoom),Q=b.transform.calculateFogMatrix(k.tileID.toUnwrapped()),re=Ql($,X,Q,b.style.sky,b.transform.pitch);A.draw(p,g.TRIANGLES,S,ji.disabled,y,Pi.backCCW,re,N,"terrain",M.vertexBuffer,M.indexBuffer,M.segments)}}class Fg{constructor(o,d,p){this.vertexBuffer=o,this.indexBuffer=d,this.segments=p}destroy(){this.vertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.vertexBuffer=null,this.indexBuffer=null,this.segments=null}}class Ng{constructor(o,d){this.context=new Nd(o),this.transform=d,this._tileTextures={},this.terrainFacilitator={dirty:!0,matrix:c.ao(new Float64Array(16)),renderTime:0},this.setup(),this.numSublayers=Pt.maxUnderzooming+Pt.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new Ws}resize(o,d,p){if(this.width=Math.floor(o*p),this.height=Math.floor(d*p),this.pixelRatio=p,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(const g of this.style._order)this.style._layers[g].resize()}setup(){const o=this.context,d=new c.aX;d.emplaceBack(0,0),d.emplaceBack(c.X,0),d.emplaceBack(0,c.X),d.emplaceBack(c.X,c.X),this.tileExtentBuffer=o.createVertexBuffer(d,la.members),this.tileExtentSegments=c.a0.simpleSegment(0,0,4,2);const p=new c.aX;p.emplaceBack(0,0),p.emplaceBack(c.X,0),p.emplaceBack(0,c.X),p.emplaceBack(c.X,c.X),this.debugBuffer=o.createVertexBuffer(p,la.members),this.debugSegments=c.a0.simpleSegment(0,0,4,5);const g=new c.$;g.emplaceBack(0,0,0,0),g.emplaceBack(c.X,0,c.X,0),g.emplaceBack(0,c.X,0,c.X),g.emplaceBack(c.X,c.X,c.X,c.X),this.rasterBoundsBuffer=o.createVertexBuffer(g,Xe.members),this.rasterBoundsSegments=c.a0.simpleSegment(0,0,4,2);const y=new c.aX;y.emplaceBack(0,0),y.emplaceBack(1,0),y.emplaceBack(0,1),y.emplaceBack(1,1),this.viewportBuffer=o.createVertexBuffer(y,la.members),this.viewportSegments=c.a0.simpleSegment(0,0,4,2);const S=new c.aZ;S.emplaceBack(0),S.emplaceBack(1),S.emplaceBack(3),S.emplaceBack(2),S.emplaceBack(0),this.tileBorderIndexBuffer=o.createIndexBuffer(S);const A=new c.aY;A.emplaceBack(0,1,2),A.emplaceBack(2,1,3),this.quadTriangleIndexBuffer=o.createIndexBuffer(A);const M=this.context.gl;this.stencilClearMode=new ji({func:M.ALWAYS,mask:0},0,255,M.ZERO,M.ZERO,M.ZERO)}clearStencil(){const o=this.context,d=o.gl;this.nextStencilID=1,this.currentStencilSource=void 0;const p=c.H();c.aQ(p,0,this.width,this.height,0,0,1),c.K(p,p,[d.drawingBufferWidth,d.drawingBufferHeight,0]),this.useProgram("clippingMask").draw(o,d.TRIANGLES,Jt.disabled,this.stencilClearMode,Ti.disabled,Pi.disabled,ec(p),null,"$clipping",this.viewportBuffer,this.quadTriangleIndexBuffer,this.viewportSegments)}_renderTileClippingMasks(o,d){if(this.currentStencilSource===o.source||!o.isTileClipped()||!d||!d.length)return;this.currentStencilSource=o.source;const p=this.context,g=p.gl;this.nextStencilID+d.length>256&&this.clearStencil(),p.setColorMode(Ti.disabled),p.setDepthMode(Jt.disabled);const y=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(const S of d){const A=this._tileClippingMaskIDs[S.key]=this.nextStencilID++,M=this.style.map.terrain&&this.style.map.terrain.getTerrainData(S);y.draw(p,g.TRIANGLES,Jt.disabled,new ji({func:g.ALWAYS,mask:0},A,255,g.KEEP,g.KEEP,g.REPLACE),Ti.disabled,Pi.disabled,ec(S.posMatrix),M,"$clipping",this.tileExtentBuffer,this.quadTriangleIndexBuffer,this.tileExtentSegments)}}stencilModeFor3D(){this.currentStencilSource=void 0,this.nextStencilID+1>256&&this.clearStencil();const o=this.nextStencilID++,d=this.context.gl;return new ji({func:d.NOTEQUAL,mask:255},o,255,d.KEEP,d.KEEP,d.REPLACE)}stencilModeForClipping(o){const d=this.context.gl;return new ji({func:d.EQUAL,mask:255},this._tileClippingMaskIDs[o.key],0,d.KEEP,d.KEEP,d.REPLACE)}stencilConfigForOverlap(o){const d=this.context.gl,p=o.sort((S,A)=>A.overscaledZ-S.overscaledZ),g=p[p.length-1].overscaledZ,y=p[0].overscaledZ-g+1;if(y>1){this.currentStencilSource=void 0,this.nextStencilID+y>256&&this.clearStencil();const S={};for(let A=0;A({u_sky_color:me.properties.get("sky-color"),u_horizon_color:me.properties.get("horizon-color"),u_horizon:(te.height/2+te.getHorizon())*ve,u_sky_horizon_blend:me.properties.get("sky-horizon-blend")*te.height/2*ve}))(F,k.style.map.transform,k.pixelRatio),Q=new Jt($.LEQUAL,Jt.ReadWrite,[0,1]),re=ji.disabled,se=k.colorModeForRenderPass(),ae=k.useProgram("sky");if(!F.mesh){const me=new c.aX;me.emplaceBack(-1,-1),me.emplaceBack(1,-1),me.emplaceBack(1,1),me.emplaceBack(-1,1);const te=new c.aY;te.emplaceBack(0,1,2),te.emplaceBack(0,2,3),F.mesh=new Fg(N.createVertexBuffer(me,la.members),N.createIndexBuffer(te),c.a0.simpleSegment(0,0,me.length,te.length))}ae.draw(N,$.TRIANGLES,Q,re,se,Pi.disabled,X,void 0,"sky",F.mesh.vertexBuffer,F.mesh.indexBuffer,F.mesh.segments)}(this,this.style.sky),this._showOverdrawInspector=d.showOverdrawInspector,this.depthRangeFor3D=[0,1-(o._order.length+2)*this.numSublayers*this.depthEpsilon],!this.renderToTexture)for(this.renderPass="opaque",this.currentLayer=g.length-1;this.currentLayer>=0;this.currentLayer--){const k=this.style._layers[g[this.currentLayer]],F=y[k.source],N=S[k.source];this._renderTileClippingMasks(k,N),this.renderLayer(this,F,k,N)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayerae.source&&!ae.isHidden(N)?[F.sourceCaches[ae.source]]:[]),Q=X.filter(ae=>ae.getSource().type==="vector"),re=X.filter(ae=>ae.getSource().type!=="vector"),se=ae=>{(!$||$.getSource().maxzoomse(ae)),$||re.forEach(ae=>se(ae)),$}(this.style,this.transform.zoom);k&&function(F,N,$){for(let X=0;X<$.length;X++)ai(F,N,$[X])}(this,k,k.getVisibleCoordinates())}this.options.showPadding&&function(k){const F=k.transform.padding;ga(k,k.transform.height-(F.top||0),3,Pu),ga(k,F.bottom||0,3,oc),jd(k,F.left||0,3,Ru),jd(k,k.transform.width-(F.right||0),3,Dg);const N=k.transform.centerPoint;(function($,X,Q,re){Ha($,X-1,Q-10,2,20,re),Ha($,X-10,Q-1,20,2,re)})(k,N.x,k.transform.height-N.y,Wa)}(this),this.context.setDefault()}maybeDrawDepthAndCoords(o){if(!this.style||!this.style.map||!this.style.map.terrain)return;const d=this.terrainFacilitator.matrix,p=this.transform.modelViewProjectionMatrix;let g=this.terrainFacilitator.dirty;g||(g=o?!c.a_(d,p):!c.a$(d,p)),g||(g=this.style.map.terrain.sourceCache.tilesAfterTime(this.terrainFacilitator.renderTime).length>0),g&&(c.b0(d,p),this.terrainFacilitator.renderTime=Date.now(),this.terrainFacilitator.dirty=!1,function(y,S){const A=y.context,M=A.gl,k=Ti.unblended,F=new Jt(M.LEQUAL,Jt.ReadWrite,[0,1]),N=S.getTerrainMesh(),$=S.sourceCache.getRenderableTiles(),X=y.useProgram("terrainDepth");A.bindFramebuffer.set(S.getFramebuffer("depth").framebuffer),A.viewport.set([0,0,y.width/devicePixelRatio,y.height/devicePixelRatio]),A.clear({color:c.aN.transparent,depth:1});for(const Q of $){const re=S.getTerrainData(Q.tileID),se={u_matrix:y.transform.calculatePosMatrix(Q.tileID.toUnwrapped()),u_ele_delta:S.getMeshFrameDelta(y.transform.zoom)};X.draw(A,M.TRIANGLES,F,ji.disabled,k,Pi.backCCW,se,re,"terrain",N.vertexBuffer,N.indexBuffer,N.segments)}A.bindFramebuffer.set(null),A.viewport.set([0,0,y.width,y.height])}(this,this.style.map.terrain),function(y,S){const A=y.context,M=A.gl,k=Ti.unblended,F=new Jt(M.LEQUAL,Jt.ReadWrite,[0,1]),N=S.getTerrainMesh(),$=S.getCoordsTexture(),X=S.sourceCache.getRenderableTiles(),Q=y.useProgram("terrainCoords");A.bindFramebuffer.set(S.getFramebuffer("coords").framebuffer),A.viewport.set([0,0,y.width/devicePixelRatio,y.height/devicePixelRatio]),A.clear({color:c.aN.transparent,depth:1}),S.coordsIndex=[];for(const re of X){const se=S.getTerrainData(re.tileID);A.activeTexture.set(M.TEXTURE0),M.bindTexture(M.TEXTURE_2D,$.texture);const ae={u_matrix:y.transform.calculatePosMatrix(re.tileID.toUnwrapped()),u_terrain_coords_id:(255-S.coordsIndex.length)/255,u_texture:0,u_ele_delta:S.getMeshFrameDelta(y.transform.zoom)};Q.draw(A,M.TRIANGLES,F,ji.disabled,k,Pi.backCCW,ae,se,"terrain",N.vertexBuffer,N.indexBuffer,N.segments),S.coordsIndex.push(re.tileID.key)}A.bindFramebuffer.set(null),A.viewport.set([0,0,y.width,y.height])}(this,this.style.map.terrain))}renderLayer(o,d,p,g){if(!p.isHidden(this.transform.zoom)&&(p.type==="background"||p.type==="custom"||(g||[]).length))switch(this.id=p.id,p.type){case"symbol":(function(y,S,A,M,k){if(y.renderPass!=="translucent")return;const F=ji.disabled,N=y.colorModeForRenderPass();(A._unevaluatedLayout.hasValue("text-variable-anchor")||A._unevaluatedLayout.hasValue("text-variable-anchor-offset"))&&function($,X,Q,re,se,ae,me,te,ve){const Ie=X.transform,Me=aa(),Ve=se==="map",Ke=ae==="map";for(const ht of $){const ft=re.getTile(ht),Je=ft.getBucket(Q);if(!Je||!Je.text||!Je.text.segments.get().length)continue;const it=c.ah(Je.textSizeData,Ie.zoom),bt=Ut(ft,1,X.transform.zoom),Vt=fr(ht.posMatrix,Ke,Ve,X.transform,bt),nt=Q.layout.get("icon-text-fit")!=="none"&&Je.hasIconData();if(it){const lt=Math.pow(2,Ie.zoom-ft.tileID.overscaledZ),Ft=X.style.map.terrain?(qt,Gt)=>X.style.map.terrain.getElevation(ht,qt,Gt):null,Mi=Me.translatePosition(Ie,ft,me,te);Au(Je,Ve,Ke,ve,Ie,Vt,ht.posMatrix,lt,it,nt,Me,Mi,ht.toUnwrapped(),Ft)}}}(M,y,A,S,A.layout.get("text-rotation-alignment"),A.layout.get("text-pitch-alignment"),A.paint.get("text-translate"),A.paint.get("text-translate-anchor"),k),A.paint.get("icon-opacity").constantOr(1)!==0&&So(y,S,A,M,!1,A.paint.get("icon-translate"),A.paint.get("icon-translate-anchor"),A.layout.get("icon-rotation-alignment"),A.layout.get("icon-pitch-alignment"),A.layout.get("icon-keep-upright"),F,N),A.paint.get("text-opacity").constantOr(1)!==0&&So(y,S,A,M,!0,A.paint.get("text-translate"),A.paint.get("text-translate-anchor"),A.layout.get("text-rotation-alignment"),A.layout.get("text-pitch-alignment"),A.layout.get("text-keep-upright"),F,N),S.map.showCollisionBoxes&&(Og(y,S,A,M,!0),Og(y,S,A,M,!1))})(o,d,p,g,this.style.placement.variableOffsets);break;case"circle":(function(y,S,A,M){if(y.renderPass!=="translucent")return;const k=A.paint.get("circle-opacity"),F=A.paint.get("circle-stroke-width"),N=A.paint.get("circle-stroke-opacity"),$=!A.layout.get("circle-sort-key").isConstant();if(k.constantOr(1)===0&&(F.constantOr(1)===0||N.constantOr(1)===0))return;const X=y.context,Q=X.gl,re=y.depthModeForSublayer(0,Jt.ReadOnly),se=ji.disabled,ae=y.colorModeForRenderPass(),me=[];for(let te=0;tete.sortKey-ve.sortKey);for(const te of me){const{programConfiguration:ve,program:Ie,layoutVertexBuffer:Me,indexBuffer:Ve,uniformValues:Ke,terrainData:ht}=te.state;Ie.draw(X,Q.TRIANGLES,re,se,ae,Pi.disabled,Ke,ht,A.id,Me,Ve,te.segments,A.paint,y.transform.zoom,ve)}})(o,d,p,g);break;case"heatmap":(function(y,S,A,M){if(A.paint.get("heatmap-opacity")!==0)if(y.renderPass==="offscreen"){const k=y.context,F=k.gl,N=ji.disabled,$=new Ti([F.ONE,F.ONE],c.aN.transparent,[!0,!0,!0,!0]);(function(X,Q,re){const se=X.gl;X.activeTexture.set(se.TEXTURE1),X.viewport.set([0,0,Q.width/4,Q.height/4]);let ae=re.heatmapFbo;if(ae)se.bindTexture(se.TEXTURE_2D,ae.colorAttachment.get()),X.bindFramebuffer.set(ae.framebuffer);else{const me=se.createTexture();se.bindTexture(se.TEXTURE_2D,me),se.texParameteri(se.TEXTURE_2D,se.TEXTURE_WRAP_S,se.CLAMP_TO_EDGE),se.texParameteri(se.TEXTURE_2D,se.TEXTURE_WRAP_T,se.CLAMP_TO_EDGE),se.texParameteri(se.TEXTURE_2D,se.TEXTURE_MIN_FILTER,se.LINEAR),se.texParameteri(se.TEXTURE_2D,se.TEXTURE_MAG_FILTER,se.LINEAR),ae=re.heatmapFbo=X.createFramebuffer(Q.width/4,Q.height/4,!1,!1),function(te,ve,Ie,Me){var Ve,Ke;const ht=te.gl,ft=(Ve=te.HALF_FLOAT)!==null&&Ve!==void 0?Ve:ht.UNSIGNED_BYTE,Je=(Ke=te.RGBA16F)!==null&&Ke!==void 0?Ke:ht.RGBA;ht.texImage2D(ht.TEXTURE_2D,0,Je,ve.width/4,ve.height/4,0,ht.RGBA,ft,null),Me.colorAttachment.set(Ie)}(X,Q,me,ae)}})(k,y,A),k.clear({color:c.aN.transparent});for(let X=0;X{const te=c.H();c.aQ(te,0,re.width,re.height,0,0,1);const ve=re.context.gl;return{u_matrix:te,u_world:[ve.drawingBufferWidth,ve.drawingBufferHeight],u_image:0,u_color_ramp:1,u_opacity:se.paint.get("heatmap-opacity")}})(k,F),null,F.id,k.viewportBuffer,k.quadTriangleIndexBuffer,k.viewportSegments,F.paint,k.transform.zoom)}(y,A))})(o,d,p,g);break;case"line":(function(y,S,A,M){if(y.renderPass!=="translucent")return;const k=A.paint.get("line-opacity"),F=A.paint.get("line-width");if(k.constantOr(1)===0||F.constantOr(1)===0)return;const N=y.depthModeForSublayer(0,Jt.ReadOnly),$=y.colorModeForRenderPass(),X=A.paint.get("line-dasharray"),Q=A.paint.get("line-pattern"),re=Q.constantOr(1),se=A.paint.get("line-gradient"),ae=A.getCrossfadeParameters(),me=re?"linePattern":X?"lineSDF":se?"lineGradient":"line",te=y.context,ve=te.gl;let Ie=!0;for(const Me of M){const Ve=S.getTile(Me);if(re&&!Ve.patternsLoaded())continue;const Ke=Ve.getBucket(A);if(!Ke)continue;const ht=Ke.programConfigurations.get(A.id),ft=y.context.program.get(),Je=y.useProgram(me,ht),it=Ie||Je.program!==ft,bt=y.style.map.terrain&&y.style.map.terrain.getTerrainData(Me),Vt=Q.constantOr(null);if(Vt&&Ve.imageAtlas){const Ft=Ve.imageAtlas,Mi=Ft.patternPositions[Vt.to.toString()],qt=Ft.patternPositions[Vt.from.toString()];Mi&&qt&&ht.setConstantPatternPositions(Mi,qt)}const nt=bt?Me:null,lt=re?gg(y,Ve,A,ae,nt):X?mg(y,Ve,A,X,ae,nt):se?yu(y,Ve,A,Ke.lineClipsArray.length,nt):tc(y,Ve,A,nt);if(re)te.activeTexture.set(ve.TEXTURE0),Ve.imageAtlasTexture.bind(ve.LINEAR,ve.CLAMP_TO_EDGE),ht.updatePaintBuffers(ae);else if(X&&(it||y.lineAtlas.dirty))te.activeTexture.set(ve.TEXTURE0),y.lineAtlas.bind(te);else if(se){const Ft=Ke.gradients[A.id];let Mi=Ft.texture;if(A.gradientVersion!==Ft.version){let qt=256;if(A.stepInterpolant){const Gt=S.getSource().maxzoom,ki=Me.canonical.z===Gt?Math.ceil(1<20&&F.texParameterf(F.TEXTURE_2D,k.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,k.extTextureFilterAnisotropicMax);const Je=y.style.map.terrain&&y.style.map.terrain.getTerrainData(me),it=Je?me:null,bt=it?it.posMatrix:y.transform.calculatePosMatrix(me.toUnwrapped(),ae),Vt=V0(bt,ht||[0,0],Ke||1,Ve,A);N instanceof pt?$.draw(k,F.TRIANGLES,te,ji.disabled,X,Pi.disabled,Vt,Je,A.id,N.boundsBuffer,y.quadTriangleIndexBuffer,N.boundsSegments):$.draw(k,F.TRIANGLES,te,Q[me.overscaledZ],X,Pi.disabled,Vt,Je,A.id,y.rasterBoundsBuffer,y.quadTriangleIndexBuffer,y.rasterBoundsSegments)}})(o,d,p,g);break;case"background":(function(y,S,A,M){const k=A.paint.get("background-color"),F=A.paint.get("background-opacity");if(F===0)return;const N=y.context,$=N.gl,X=y.transform,Q=X.tileSize,re=A.paint.get("background-pattern");if(y.isPatternMissing(re))return;const se=!re&&k.a===1&&F===1&&y.opaquePassEnabledForLayer()?"opaque":"translucent";if(y.renderPass!==se)return;const ae=ji.disabled,me=y.depthModeForSublayer(0,se==="opaque"?Jt.ReadWrite:Jt.ReadOnly),te=y.colorModeForRenderPass(),ve=y.useProgram(re?"backgroundPattern":"background"),Ie=M||X.coveringTiles({tileSize:Q,terrain:y.style.map.terrain});re&&(N.activeTexture.set($.TEXTURE0),y.imageManager.bind(y.context));const Me=A.getCrossfadeParameters();for(const Ve of Ie){const Ke=M?Ve.posMatrix:y.transform.calculatePosMatrix(Ve.toUnwrapped()),ht=re?Id(Ke,F,y,re,{tileID:Ve,tileSize:Q},Me):bu(Ke,F,k),ft=y.style.map.terrain&&y.style.map.terrain.getTerrainData(Ve);ve.draw(N,$.TRIANGLES,me,ae,te,Pi.disabled,ht,ft,A.id,y.tileExtentBuffer,y.quadTriangleIndexBuffer,y.tileExtentSegments)}})(o,0,p,g);break;case"custom":(function(y,S,A){const M=y.context,k=A.implementation;if(y.renderPass==="offscreen"){const F=k.prerender;F&&(y.setCustomLayerDefaults(),M.setColorMode(y.colorModeForRenderPass()),F.call(k,M.gl,y.transform.customLayerMatrix()),M.setDirty(),y.setBaseState())}else if(y.renderPass==="translucent"){y.setCustomLayerDefaults(),M.setColorMode(y.colorModeForRenderPass()),M.setStencilMode(ji.disabled);const F=k.renderingMode==="3d"?new Jt(y.context.gl.LEQUAL,Jt.ReadWrite,y.depthRangeFor3D):y.depthModeForSublayer(0,Jt.ReadOnly);M.setDepthMode(F),k.render(M.gl,y.transform.customLayerMatrix(),{farZ:y.transform.farZ,nearZ:y.transform.nearZ,fov:y.transform._fov,modelViewProjectionMatrix:y.transform.modelViewProjectionMatrix,projectionMatrix:y.transform.projectionMatrix}),M.setDirty(),y.setBaseState(),M.bindFramebuffer.set(null)}})(o,0,p)}}translatePosMatrix(o,d,p,g,y){if(!p[0]&&!p[1])return o;const S=y?g==="map"?this.transform.angle:0:g==="viewport"?-this.transform.angle:0;if(S){const k=Math.sin(S),F=Math.cos(S);p=[p[0]*F-p[1]*k,p[0]*k+p[1]*F]}const A=[y?p[0]:Ut(d,p[0],this.transform.zoom),y?p[1]:Ut(d,p[1],this.transform.zoom),0],M=new Float32Array(16);return c.J(M,o,A),M}saveTileTexture(o){const d=this._tileTextures[o.size[0]];d?d.push(o):this._tileTextures[o.size[0]]=[o]}getTileTexture(o){const d=this._tileTextures[o];return d&&d.length>0?d.pop():null}isPatternMissing(o){if(!o)return!1;if(!o.from||!o.to)return!0;const d=this.imageManager.getPattern(o.from.toString()),p=this.imageManager.getPattern(o.to.toString());return!d||!p}useProgram(o,d){this.cache=this.cache||{};const p=o+(d?d.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"")+(this.style.map.terrain?"/terrain":"");return this.cache[p]||(this.cache[p]=new H(this.context,pr[o],d,vu[o],this._showOverdrawInspector,this.style.map.terrain)),this.cache[p]}setCustomLayerDefaults(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()}setBaseState(){const o=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(o.FUNC_ADD)}initDebugOverlayCanvas(){this.debugOverlayCanvas==null&&(this.debugOverlayCanvas=document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512,this.debugOverlayTexture=new ot(this.context,this.debugOverlayCanvas,this.context.gl.RGBA))}destroy(){this.debugOverlayTexture&&this.debugOverlayTexture.destroy()}overLimit(){const{drawingBufferWidth:o,drawingBufferHeight:d}=this.context.gl;return this.width!==o||this.height!==d}}class ma{constructor(o,d){this.points=o,this.planes=d}static fromInvProjectionMatrix(o,d,p){const g=Math.pow(2,p),y=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]].map(A=>{const M=1/(A=c.ag([],A,o))[3]/d*g;return c.b1(A,A,[M,M,1/A[3],M])}),S=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]].map(A=>{const M=function($,X){var Q=X[0],re=X[1],se=X[2],ae=Q*Q+re*re+se*se;return ae>0&&(ae=1/Math.sqrt(ae)),$[0]=X[0]*ae,$[1]=X[1]*ae,$[2]=X[2]*ae,$}([],function($,X,Q){var re=X[0],se=X[1],ae=X[2],me=Q[0],te=Q[1],ve=Q[2];return $[0]=se*ve-ae*te,$[1]=ae*me-re*ve,$[2]=re*te-se*me,$}([],We([],y[A[0]],y[A[1]]),We([],y[A[2]],y[A[1]]))),k=-((F=M)[0]*(N=y[A[1]])[0]+F[1]*N[1]+F[2]*N[2]);var F,N;return M.concat(k)});return new ma(y,S)}}class Mu{constructor(o,d){this.min=o,this.max=d,this.center=function(p,g,y){return p[0]=.5*g[0],p[1]=.5*g[1],p[2]=.5*g[2],p}([],function(p,g,y){return p[0]=g[0]+y[0],p[1]=g[1]+y[1],p[2]=g[2]+y[2],p}([],this.min,this.max))}quadrant(o){const d=[o%2==0,o<2],p=Oe(this.min),g=Oe(this.max);for(let y=0;y=0&&S++;if(S===0)return 0;S!==d.length&&(p=!1)}if(p)return 2;for(let g=0;g<3;g++){let y=Number.MAX_VALUE,S=-Number.MAX_VALUE;for(let A=0;Athis.max[g]-this.min[g])return 0}return 1}}class ku{constructor(o=0,d=0,p=0,g=0){if(isNaN(o)||o<0||isNaN(d)||d<0||isNaN(p)||p<0||isNaN(g)||g<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=o,this.bottom=d,this.left=p,this.right=g}interpolate(o,d,p){return d.top!=null&&o.top!=null&&(this.top=c.z.number(o.top,d.top,p)),d.bottom!=null&&o.bottom!=null&&(this.bottom=c.z.number(o.bottom,d.bottom,p)),d.left!=null&&o.left!=null&&(this.left=c.z.number(o.left,d.left,p)),d.right!=null&&o.right!=null&&(this.right=c.z.number(o.right,d.right,p)),this}getCenter(o,d){const p=c.ad((this.left+o-this.right)/2,0,o),g=c.ad((this.top+d-this.bottom)/2,0,d);return new c.P(p,g)}equals(o){return this.top===o.top&&this.bottom===o.bottom&&this.left===o.left&&this.right===o.right}clone(){return new ku(this.top,this.bottom,this.left,this.right)}toJSON(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}}}const $d=85.051129;class Wd{constructor(o,d,p,g,y){this.tileSize=512,this._renderWorldCopies=y===void 0||!!y,this._minZoom=o||0,this._maxZoom=d||22,this._minPitch=p??0,this._maxPitch=g??60,this.setMaxBounds(),this.width=0,this.height=0,this._center=new c.N(0,0),this._elevation=0,this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new ku,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={},this.minElevationForCurrentTile=0}clone(){const o=new Wd(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return o.apply(this),o}apply(o){this.tileSize=o.tileSize,this.latRange=o.latRange,this.width=o.width,this.height=o.height,this._center=o._center,this._elevation=o._elevation,this.minElevationForCurrentTile=o.minElevationForCurrentTile,this.zoom=o.zoom,this.angle=o.angle,this._fov=o._fov,this._pitch=o._pitch,this._unmodified=o._unmodified,this._edgeInsets=o._edgeInsets.clone(),this._calcMatrices()}get minZoom(){return this._minZoom}set minZoom(o){this._minZoom!==o&&(this._minZoom=o,this.zoom=Math.max(this.zoom,o))}get maxZoom(){return this._maxZoom}set maxZoom(o){this._maxZoom!==o&&(this._maxZoom=o,this.zoom=Math.min(this.zoom,o))}get minPitch(){return this._minPitch}set minPitch(o){this._minPitch!==o&&(this._minPitch=o,this.pitch=Math.max(this.pitch,o))}get maxPitch(){return this._maxPitch}set maxPitch(o){this._maxPitch!==o&&(this._maxPitch=o,this.pitch=Math.min(this.pitch,o))}get renderWorldCopies(){return this._renderWorldCopies}set renderWorldCopies(o){o===void 0?o=!0:o===null&&(o=!1),this._renderWorldCopies=o}get worldSize(){return this.tileSize*this.scale}get centerOffset(){return this.centerPoint._sub(this.size._div(2))}get size(){return new c.P(this.width,this.height)}get bearing(){return-this.angle/Math.PI*180}set bearing(o){const d=-c.b3(o,-180,180)*Math.PI/180;this.angle!==d&&(this._unmodified=!1,this.angle=d,this._calcMatrices(),this.rotationMatrix=function(){var p=new c.A(4);return c.A!=Float32Array&&(p[1]=0,p[2]=0),p[0]=1,p[3]=1,p}(),function(p,g,y){var S=g[0],A=g[1],M=g[2],k=g[3],F=Math.sin(y),N=Math.cos(y);p[0]=S*N+M*F,p[1]=A*N+k*F,p[2]=S*-F+M*N,p[3]=A*-F+k*N}(this.rotationMatrix,this.rotationMatrix,this.angle))}get pitch(){return this._pitch/Math.PI*180}set pitch(o){const d=c.ad(o,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==d&&(this._unmodified=!1,this._pitch=d,this._calcMatrices())}get fov(){return this._fov/Math.PI*180}set fov(o){o=Math.max(.01,Math.min(60,o)),this._fov!==o&&(this._unmodified=!1,this._fov=o/180*Math.PI,this._calcMatrices())}get zoom(){return this._zoom}set zoom(o){const d=Math.min(Math.max(o,this.minZoom),this.maxZoom);this._zoom!==d&&(this._unmodified=!1,this._zoom=d,this.tileZoom=Math.max(0,Math.floor(d)),this.scale=this.zoomScale(d),this._constrain(),this._calcMatrices())}get center(){return this._center}set center(o){o.lat===this._center.lat&&o.lng===this._center.lng||(this._unmodified=!1,this._center=o,this._constrain(),this._calcMatrices())}get elevation(){return this._elevation}set elevation(o){o!==this._elevation&&(this._elevation=o,this._constrain(),this._calcMatrices())}get padding(){return this._edgeInsets.toJSON()}set padding(o){this._edgeInsets.equals(o)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,o,1),this._calcMatrices())}get centerPoint(){return this._edgeInsets.getCenter(this.width,this.height)}isPaddingEqual(o){return this._edgeInsets.equals(o)}interpolatePadding(o,d,p){this._unmodified=!1,this._edgeInsets.interpolate(o,d,p),this._constrain(),this._calcMatrices()}coveringZoomLevel(o){const d=(o.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/o.tileSize));return Math.max(0,d)}getVisibleUnwrappedCoordinates(o){const d=[new c.b4(0,o)];if(this._renderWorldCopies){const p=this.pointCoordinate(new c.P(0,0)),g=this.pointCoordinate(new c.P(this.width,0)),y=this.pointCoordinate(new c.P(this.width,this.height)),S=this.pointCoordinate(new c.P(0,this.height)),A=Math.floor(Math.min(p.x,g.x,y.x,S.x)),M=Math.floor(Math.max(p.x,g.x,y.x,S.x)),k=1;for(let F=A-k;F<=M+k;F++)F!==0&&d.push(new c.b4(F,o))}return d}coveringTiles(o){var d,p;let g=this.coveringZoomLevel(o);const y=g;if(o.minzoom!==void 0&&go.maxzoom&&(g=o.maxzoom);const S=this.pointCoordinate(this.getCameraPoint()),A=c.Z.fromLngLat(this.center),M=Math.pow(2,g),k=[M*S.x,M*S.y,0],F=[M*A.x,M*A.y,0],N=ma.fromInvProjectionMatrix(this.invModelViewProjectionMatrix,this.worldSize,g);let $=o.minzoom||0;!o.terrain&&this.pitch<=60&&this._edgeInsets.top<.1&&($=g);const X=o.terrain?2/Math.min(this.tileSize,o.tileSize)*this.tileSize:3,Q=te=>({aabb:new Mu([te*M,0,0],[(te+1)*M,M,0]),zoom:0,x:0,y:0,wrap:te,fullyVisible:!1}),re=[],se=[],ae=g,me=o.reparseOverscaled?y:g;if(this._renderWorldCopies)for(let te=1;te<=3;te++)re.push(Q(-te)),re.push(Q(te));for(re.push(Q(0));re.length>0;){const te=re.pop(),ve=te.x,Ie=te.y;let Me=te.fullyVisible;if(!Me){const Je=te.aabb.intersects(N);if(Je===0)continue;Me=Je===2}const Ve=o.terrain?k:F,Ke=te.aabb.distanceX(Ve),ht=te.aabb.distanceY(Ve),ft=Math.max(Math.abs(Ke),Math.abs(ht));if(te.zoom===ae||ft>X+(1<=$){const Je=ae-te.zoom,it=k[0]-.5-(ve<>1),Vt=te.zoom+1;let nt=te.aabb.quadrant(Je);if(o.terrain){const lt=new c.S(Vt,te.wrap,Vt,it,bt),Ft=o.terrain.getMinMaxElevation(lt),Mi=(d=Ft.minElevation)!==null&&d!==void 0?d:this.elevation,qt=(p=Ft.maxElevation)!==null&&p!==void 0?p:this.elevation;nt=new Mu([nt.min[0],nt.min[1],Mi],[nt.max[0],nt.max[1],qt])}re.push({aabb:nt,zoom:Vt,x:it,y:bt,wrap:te.wrap,fullyVisible:Me})}}return se.sort((te,ve)=>te.distanceSq-ve.distanceSq).map(te=>te.tileID)}resize(o,d){this.width=o,this.height=d,this.pixelsToGLUnits=[2/o,-2/d],this._constrain(),this._calcMatrices()}get unmodified(){return this._unmodified}zoomScale(o){return Math.pow(2,o)}scaleZoom(o){return Math.log(o)/Math.LN2}project(o){const d=c.ad(o.lat,-85.051129,$d);return new c.P(c.O(o.lng)*this.worldSize,c.Q(d)*this.worldSize)}unproject(o){return new c.Z(o.x/this.worldSize,o.y/this.worldSize).toLngLat()}get point(){return this.project(this.center)}getCameraPosition(){return{lngLat:this.pointLocation(this.getCameraPoint()),altitude:Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter+this.elevation}}recalculateZoom(o){const d=this.elevation,p=Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter,g=this.pointLocation(this.centerPoint,o),y=o.getElevationForLngLatZoom(g,this.tileZoom);if(!(this.elevation-y))return;const S=p+d-y,A=Math.cos(this._pitch)*this.cameraToCenterDistance/S/c.b5(1,g.lat),M=this.scaleZoom(A/this.tileSize);this._elevation=y,this._center=g,this.zoom=M}setLocationAtPoint(o,d){const p=this.pointCoordinate(d),g=this.pointCoordinate(this.centerPoint),y=this.locationCoordinate(o),S=new c.Z(y.x-(p.x-g.x),y.y-(p.y-g.y));this.center=this.coordinateLocation(S),this._renderWorldCopies&&(this.center=this.center.wrap())}locationPoint(o,d){return d?this.coordinatePoint(this.locationCoordinate(o),d.getElevationForLngLatZoom(o,this.tileZoom),this.pixelMatrix3D):this.coordinatePoint(this.locationCoordinate(o))}pointLocation(o,d){return this.coordinateLocation(this.pointCoordinate(o,d))}locationCoordinate(o){return c.Z.fromLngLat(o)}coordinateLocation(o){return o&&o.toLngLat()}pointCoordinate(o,d){if(d){const $=d.pointCoordinate(o);if($!=null)return $}const p=[o.x,o.y,0,1],g=[o.x,o.y,1,1];c.ag(p,p,this.pixelMatrixInverse),c.ag(g,g,this.pixelMatrixInverse);const y=p[3],S=g[3],A=p[1]/y,M=g[1]/S,k=p[2]/y,F=g[2]/S,N=k===F?0:(0-k)/(F-k);return new c.Z(c.z.number(p[0]/y,g[0]/S,N)/this.worldSize,c.z.number(A,M,N)/this.worldSize)}coordinatePoint(o,d=0,p=this.pixelMatrix){const g=[o.x*this.worldSize,o.y*this.worldSize,d,1];return c.ag(g,g,p),new c.P(g[0]/g[3],g[1]/g[3])}getBounds(){const o=Math.max(0,this.height/2-this.getHorizon());return new le().extend(this.pointLocation(new c.P(0,o))).extend(this.pointLocation(new c.P(this.width,o))).extend(this.pointLocation(new c.P(this.width,this.height))).extend(this.pointLocation(new c.P(0,this.height)))}getMaxBounds(){return this.latRange&&this.latRange.length===2&&this.lngRange&&this.lngRange.length===2?new le([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]]):null}getHorizon(){return Math.tan(Math.PI/2-this._pitch)*this.cameraToCenterDistance*.85}setMaxBounds(o){o?(this.lngRange=[o.getWest(),o.getEast()],this.latRange=[o.getSouth(),o.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-85.051129,$d])}calculateTileMatrix(o){const d=o.canonical,p=this.worldSize/this.zoomScale(d.z),g=d.x+Math.pow(2,d.z)*o.wrap,y=c.ao(new Float64Array(16));return c.J(y,y,[g*p,d.y*p,0]),c.K(y,y,[p/c.X,p/c.X,1]),y}calculatePosMatrix(o,d=!1){const p=o.key,g=d?this._alignedPosMatrixCache:this._posMatrixCache;if(g[p])return g[p];const y=this.calculateTileMatrix(o);return c.L(y,d?this.alignedModelViewProjectionMatrix:this.modelViewProjectionMatrix,y),g[p]=new Float32Array(y),g[p]}calculateFogMatrix(o){const d=o.key,p=this._fogMatrixCache;if(p[d])return p[d];const g=this.calculateTileMatrix(o);return c.L(g,this.fogMatrix,g),p[d]=new Float32Array(g),p[d]}customLayerMatrix(){return this.mercatorMatrix.slice()}getConstrained(o,d){d=c.ad(+d,this.minZoom,this.maxZoom);const p={center:new c.N(o.lng,o.lat),zoom:d};let g=this.lngRange;if(!this._renderWorldCopies&&g===null){const te=179.9999999999;g=[-te,te]}const y=this.tileSize*this.zoomScale(p.zoom);let S=0,A=y,M=0,k=y,F=0,N=0;const{x:$,y:X}=this.size;if(this.latRange){const te=this.latRange;S=c.Q(te[1])*y,A=c.Q(te[0])*y,A-SA&&(ae=A-te)}if(g){const te=(M+k)/2;let ve=Q;this._renderWorldCopies&&(ve=c.b3(Q,te-y/2,te+y/2));const Ie=$/2;ve-Iek&&(se=k-Ie)}if(se!==void 0||ae!==void 0){const te=new c.P(se??Q,ae??re);p.center=this.unproject.call({worldSize:y},te).wrap()}return p}_constrain(){if(!this.center||!this.width||!this.height||this._constraining)return;this._constraining=!0;const o=this._unmodified,{center:d,zoom:p}=this.getConstrained(this.center,this.zoom);this.center=d,this.zoom=p,this._unmodified=o,this._constraining=!1}_calcMatrices(){if(!this.height)return;const o=this.centerOffset,d=this.point.x,p=this.point.y;this.cameraToCenterDistance=.5/Math.tan(this._fov/2)*this.height,this._pixelPerMeter=c.b5(1,this.center.lat)*this.worldSize;let g=c.ao(new Float64Array(16));c.K(g,g,[this.width/2,-this.height/2,1]),c.J(g,g,[1,-1,0]),this.labelPlaneMatrix=g,g=c.ao(new Float64Array(16)),c.K(g,g,[1,-1,1]),c.J(g,g,[-1,-1,0]),c.K(g,g,[2/this.width,2/this.height,1]),this.glCoordMatrix=g;const y=this.cameraToCenterDistance+this._elevation*this._pixelPerMeter/Math.cos(this._pitch),S=Math.min(this.elevation,this.minElevationForCurrentTile),A=y-S*this._pixelPerMeter/Math.cos(this._pitch),M=S<0?A:y,k=Math.PI/2+this._pitch,F=this._fov*(.5+o.y/this.height),N=Math.sin(F)*M/Math.sin(c.ad(Math.PI-k-F,.01,Math.PI-.01)),$=this.getHorizon(),X=2*Math.atan($/this.cameraToCenterDistance)*(.5+o.y/(2*$)),Q=Math.sin(X)*M/Math.sin(c.ad(Math.PI-k-X,.01,Math.PI-.01)),re=Math.min(N,Q);this.farZ=1.01*(Math.cos(Math.PI/2-this._pitch)*re+M),this.nearZ=this.height/50,g=new Float64Array(16),c.b6(g,this._fov,this.width/this.height,this.nearZ,this.farZ),g[8]=2*-o.x/this.width,g[9]=2*o.y/this.height,this.projectionMatrix=c.af(g),c.K(g,g,[1,-1,1]),c.J(g,g,[0,0,-this.cameraToCenterDistance]),c.b7(g,g,this._pitch),c.ae(g,g,this.angle),c.J(g,g,[-d,-p,0]),this.mercatorMatrix=c.K([],g,[this.worldSize,this.worldSize,this.worldSize]),c.K(g,g,[1,1,this._pixelPerMeter]),this.pixelMatrix=c.L(new Float64Array(16),this.labelPlaneMatrix,g),c.J(g,g,[0,0,-this.elevation]),this.modelViewProjectionMatrix=g,this.invModelViewProjectionMatrix=c.at([],g),this.fogMatrix=new Float64Array(16),c.b6(this.fogMatrix,this._fov,this.width/this.height,y,this.farZ),this.fogMatrix[8]=2*-o.x/this.width,this.fogMatrix[9]=2*o.y/this.height,c.K(this.fogMatrix,this.fogMatrix,[1,-1,1]),c.J(this.fogMatrix,this.fogMatrix,[0,0,-this.cameraToCenterDistance]),c.b7(this.fogMatrix,this.fogMatrix,this._pitch),c.ae(this.fogMatrix,this.fogMatrix,this.angle),c.J(this.fogMatrix,this.fogMatrix,[-d,-p,0]),c.K(this.fogMatrix,this.fogMatrix,[1,1,this._pixelPerMeter]),c.J(this.fogMatrix,this.fogMatrix,[0,0,-this.elevation]),this.pixelMatrix3D=c.L(new Float64Array(16),this.labelPlaneMatrix,g);const se=this.width%2/2,ae=this.height%2/2,me=Math.cos(this.angle),te=Math.sin(this.angle),ve=d-Math.round(d)+me*se+te*ae,Ie=p-Math.round(p)+me*ae+te*se,Me=new Float64Array(g);if(c.J(Me,Me,[ve>.5?ve-1:ve,Ie>.5?Ie-1:Ie,0]),this.alignedModelViewProjectionMatrix=Me,g=c.at(new Float64Array(16),this.pixelMatrix),!g)throw new Error("failed to invert matrix");this.pixelMatrixInverse=g,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={}}maxPitchScaleFactor(){if(!this.pixelMatrixInverse)return 1;const o=this.pointCoordinate(new c.P(0,0)),d=[o.x*this.worldSize,o.y*this.worldSize,0,1];return c.ag(d,d,this.pixelMatrix)[3]/this.cameraToCenterDistance}getCameraPoint(){const o=Math.tan(this._pitch)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new c.P(0,o))}getCameraQueryGeometry(o){const d=this.getCameraPoint();if(o.length===1)return[o[0],d];{let p=d.x,g=d.y,y=d.x,S=d.y;for(const A of o)p=Math.min(p,A.x),g=Math.min(g,A.y),y=Math.max(y,A.x),S=Math.max(S,A.y);return[new c.P(p,g),new c.P(y,g),new c.P(y,S),new c.P(p,S),new c.P(p,g)]}}lngLatToCameraDepth(o,d){const p=this.locationCoordinate(o),g=[p.x*this.worldSize,p.y*this.worldSize,d,1];return c.ag(g,g,this.modelViewProjectionMatrix),g[2]/g[3]}}function Ou(b,o){let d,p=!1,g=null,y=null;const S=()=>{g=null,p&&(b.apply(y,d),g=setTimeout(S,o),p=!1)};return(...A)=>(p=!0,y=this,d=A,g||S(),g)}class lc{constructor(o){this._getCurrentHash=()=>{const d=window.location.hash.replace("#","");if(this._hashName){let p;return d.split("&").map(g=>g.split("=")).forEach(g=>{g[0]===this._hashName&&(p=g)}),(p&&p[1]||"").split("/")}return d.split("/")},this._onHashChange=()=>{const d=this._getCurrentHash();if(d.length>=3&&!d.some(p=>isNaN(p))){const p=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(d[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+d[2],+d[1]],zoom:+d[0],bearing:p,pitch:+(d[4]||0)}),!0}return!1},this._updateHashUnthrottled=()=>{const d=window.location.href.replace(/(#.+)?$/,this.getHashString());window.history.replaceState(window.history.state,null,d)},this._removeHash=()=>{const d=this._getCurrentHash();if(d.length===0)return;const p=d.join("/");let g=p;g.split("&").length>0&&(g=g.split("&")[0]),this._hashName&&(g=`${this._hashName}=${p}`);let y=window.location.hash.replace(g,"");y.startsWith("#&")?y=y.slice(0,1)+y.slice(2):y==="#"&&(y="");let S=window.location.href.replace(/(#.+)?$/,y);S=S.replace("&&","&"),window.history.replaceState(window.history.state,null,S)},this._updateHash=Ou(this._updateHashUnthrottled,300),this._hashName=o&&encodeURIComponent(o)}addTo(o){return this._map=o,addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this}remove(){return removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),clearTimeout(this._updateHash()),this._removeHash(),delete this._map,this}getHashString(o){const d=this._map.getCenter(),p=Math.round(100*this._map.getZoom())/100,g=Math.ceil((p*Math.LN2+Math.log(512/360/.5))/Math.LN10),y=Math.pow(10,g),S=Math.round(d.lng*y)/y,A=Math.round(d.lat*y)/y,M=this._map.getBearing(),k=this._map.getPitch();let F="";if(F+=o?`/${S}/${A}/${p}`:`${p}/${A}/${S}`,(M||k)&&(F+="/"+Math.round(10*M)/10),k&&(F+=`/${Math.round(k)}`),this._hashName){const N=this._hashName;let $=!1;const X=window.location.hash.slice(1).split("&").map(Q=>{const re=Q.split("=")[0];return re===N?($=!0,`${re}=${F}`):Q}).filter(Q=>Q);return $||X.push(`${N}=${F}`),`#${X.join("&")}`}return`#${F}`}}const _a={linearity:.3,easing:c.b8(0,0,.3,1)},Hd=c.e({deceleration:2500,maxSpeed:1400},_a),qd=c.e({deceleration:20,maxSpeed:1400},_a),Bg=c.e({deceleration:1e3,maxSpeed:360},_a),Du=c.e({deceleration:1e3,maxSpeed:90},_a);class Fu{constructor(o){this._map=o,this.clear()}clear(){this._inertiaBuffer=[]}record(o){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:C.now(),settings:o})}_drainInertiaBuffer(){const o=this._inertiaBuffer,d=C.now();for(;o.length>0&&d-o[0].time>160;)o.shift()}_onMoveEnd(o){if(this._drainInertiaBuffer(),this._inertiaBuffer.length<2)return;const d={zoom:0,bearing:0,pitch:0,pan:new c.P(0,0),pinchAround:void 0,around:void 0};for(const{settings:y}of this._inertiaBuffer)d.zoom+=y.zoomDelta||0,d.bearing+=y.bearingDelta||0,d.pitch+=y.pitchDelta||0,y.panDelta&&d.pan._add(y.panDelta),y.around&&(d.around=y.around),y.pinchAround&&(d.pinchAround=y.pinchAround);const p=this._inertiaBuffer[this._inertiaBuffer.length-1].time-this._inertiaBuffer[0].time,g={};if(d.pan.mag()){const y=Nu(d.pan.mag(),p,c.e({},Hd,o||{}));g.offset=d.pan.mult(y.amount/d.pan.mag()),g.center=this._map.transform.center,qa(g,y)}if(d.zoom){const y=Nu(d.zoom,p,qd);g.zoom=this._map.transform.zoom+y.amount,qa(g,y)}if(d.bearing){const y=Nu(d.bearing,p,Bg);g.bearing=this._map.transform.bearing+c.ad(y.amount,-179,179),qa(g,y)}if(d.pitch){const y=Nu(d.pitch,p,Du);g.pitch=this._map.transform.pitch+y.amount,qa(g,y)}if(g.zoom||g.bearing){const y=d.pinchAround===void 0?d.around:d.pinchAround;g.around=y?this._map.unproject(y):this._map.getCenter()}return this.clear(),c.e(g,{noMoveStart:!0})}}function qa(b,o){(!b.duration||b.durationd.unproject(M)),A=y.reduce((M,k,F,N)=>M.add(k.div(N.length)),new c.P(0,0));super(o,{points:y,point:A,lngLats:S,lngLat:d.unproject(A),originalEvent:p}),this._defaultPrevented=!1}}class Xd extends c.k{preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}constructor(o,d,p){super(o,{originalEvent:p}),this._defaultPrevented=!1}}class Bu{constructor(o,d){this._map=o,this._clickTolerance=d.clickTolerance}reset(){delete this._mousedownPos}wheel(o){return this._firePreventable(new Xd(o.type,this._map,o))}mousedown(o,d){return this._mousedownPos=d,this._firePreventable(new rn(o.type,this._map,o))}mouseup(o){this._map.fire(new rn(o.type,this._map,o))}click(o,d){this._mousedownPos&&this._mousedownPos.dist(d)>=this._clickTolerance||this._map.fire(new rn(o.type,this._map,o))}dblclick(o){return this._firePreventable(new rn(o.type,this._map,o))}mouseover(o){this._map.fire(new rn(o.type,this._map,o))}mouseout(o){this._map.fire(new rn(o.type,this._map,o))}touchstart(o){return this._firePreventable(new cc(o.type,this._map,o))}touchmove(o){this._map.fire(new cc(o.type,this._map,o))}touchend(o){this._map.fire(new cc(o.type,this._map,o))}touchcancel(o){this._map.fire(new cc(o.type,this._map,o))}_firePreventable(o){if(this._map.fire(o),o.defaultPrevented)return{}}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class Zd{constructor(o){this._map=o}reset(){this._delayContextMenu=!1,this._ignoreContextMenu=!0,delete this._contextMenuEvent}mousemove(o){this._map.fire(new rn(o.type,this._map,o))}mousedown(){this._delayContextMenu=!0,this._ignoreContextMenu=!1}mouseup(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new rn("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)}contextmenu(o){this._delayContextMenu?this._contextMenuEvent=o:this._ignoreContextMenu||this._map.fire(new rn(o.type,this._map,o)),this._map.listens("contextmenu")&&o.preventDefault()}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class Xa{constructor(o){this._map=o}get transform(){return this._map._requestedCameraState||this._map.transform}get center(){return{lng:this.transform.center.lng,lat:this.transform.center.lat}}get zoom(){return this.transform.zoom}get pitch(){return this.transform.pitch}get bearing(){return this.transform.bearing}unproject(o){return this.transform.pointLocation(c.P.convert(o),this._map.terrain)}}class Yd{constructor(o,d){this._map=o,this._tr=new Xa(o),this._el=o.getCanvasContainer(),this._container=o.getContainer(),this._clickTolerance=d.clickTolerance||1}isEnabled(){return!!this._enabled}isActive(){return!!this._active}enable(){this.isEnabled()||(this._enabled=!0)}disable(){this.isEnabled()&&(this._enabled=!1)}mousedown(o,d){this.isEnabled()&&o.shiftKey&&o.button===0&&(P.disableDrag(),this._startPos=this._lastPos=d,this._active=!0)}mousemoveWindow(o,d){if(!this._active)return;const p=d;if(this._lastPos.equals(p)||!this._box&&p.dist(this._startPos)y.fitScreenCoordinates(p,g,this._tr.bearing,{linear:!0})};this._fireEvent("boxzoomcancel",o)}keydown(o){this._active&&o.keyCode===27&&(this.reset(),this._fireEvent("boxzoomcancel",o))}reset(){this._active=!1,this._container.classList.remove("maplibregl-crosshair"),this._box&&(P.remove(this._box),this._box=null),P.enableDrag(),delete this._startPos,delete this._lastPos}_fireEvent(o,d){return this._map.fire(new c.k(o,{originalEvent:d}))}}function Za(b,o){if(b.length!==o.length)throw new Error(`The number of touches and points are not equal - touches ${b.length}, points ${o.length}`);const d={};for(let p=0;pthis.numTouches)&&(this.aborted=!0),this.aborted||(this.startTime===void 0&&(this.startTime=o.timeStamp),p.length===this.numTouches&&(this.centroid=function(g){const y=new c.P(0,0);for(const S of g)y._add(S);return y.div(g.length)}(d),this.touches=Za(p,d)))}touchmove(o,d,p){if(this.aborted||!this.centroid)return;const g=Za(p,d);for(const y in this.touches){const S=g[y];(!S||S.dist(this.touches[y])>30)&&(this.aborted=!0)}}touchend(o,d,p){if((!this.centroid||o.timeStamp-this.startTime>500)&&(this.aborted=!0),p.length===0){const g=!this.aborted&&this.centroid;if(this.reset(),g)return g}}}class Jd{constructor(o){this.singleTap=new Kd(o),this.numTaps=o.numTaps,this.reset()}reset(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()}touchstart(o,d,p){this.singleTap.touchstart(o,d,p)}touchmove(o,d,p){this.singleTap.touchmove(o,d,p)}touchend(o,d,p){const g=this.singleTap.touchend(o,d,p);if(g){const y=o.timeStamp-this.lastTime<500,S=!this.lastTap||this.lastTap.dist(g)<30;if(y&&S||this.reset(),this.count++,this.lastTime=o.timeStamp,this.lastTap=g,this.count===this.numTaps)return this.reset(),g}}}class Lg{constructor(o){this._tr=new Xa(o),this._zoomIn=new Jd({numTouches:1,numTaps:2}),this._zoomOut=new Jd({numTouches:2,numTaps:1}),this.reset()}reset(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset()}touchstart(o,d,p){this._zoomIn.touchstart(o,d,p),this._zoomOut.touchstart(o,d,p)}touchmove(o,d,p){this._zoomIn.touchmove(o,d,p),this._zoomOut.touchmove(o,d,p)}touchend(o,d,p){const g=this._zoomIn.touchend(o,d,p),y=this._zoomOut.touchend(o,d,p),S=this._tr;return g?(this._active=!0,o.preventDefault(),setTimeout(()=>this.reset(),0),{cameraAnimation:A=>A.easeTo({duration:300,zoom:S.zoom+1,around:S.unproject(g)},{originalEvent:o})}):y?(this._active=!0,o.preventDefault(),setTimeout(()=>this.reset(),0),{cameraAnimation:A=>A.easeTo({duration:300,zoom:S.zoom-1,around:S.unproject(y)},{originalEvent:o})}):void 0}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class Ri{constructor(o){this._enabled=!!o.enable,this._moveStateManager=o.moveStateManager,this._clickTolerance=o.clickTolerance||1,this._moveFunction=o.move,this._activateOnStart=!!o.activateOnStart,o.assignEvents(this),this.reset()}reset(o){this._active=!1,this._moved=!1,delete this._lastPoint,this._moveStateManager.endMove(o)}_move(...o){const d=this._moveFunction(...o);if(d.bearingDelta||d.pitchDelta||d.around||d.panDelta)return this._active=!0,d}dragStart(o,d){this.isEnabled()&&!this._lastPoint&&this._moveStateManager.isValidStartEvent(o)&&(this._moveStateManager.startMove(o),this._lastPoint=d.length?d[0]:d,this._activateOnStart&&this._lastPoint&&(this._active=!0))}dragMove(o,d){if(!this.isEnabled())return;const p=this._lastPoint;if(!p)return;if(o.preventDefault(),!this._moveStateManager.isValidMoveEvent(o))return void this.reset(o);const g=d.length?d[0]:d;return!this._moved&&g.dist(p){b.mousedown=b.dragStart,b.mousemoveWindow=b.dragMove,b.mouseup=b.dragEnd,b.contextmenu=o=>{o.preventDefault()}},Gd=({enable:b,clickTolerance:o,bearingDegreesPerPixelMoved:d=.8})=>{const p=new gn({checkCorrectEvent:g=>P.mouseButton(g)===0&&g.ctrlKey||P.mouseButton(g)===2});return new Ri({clickTolerance:o,move:(g,y)=>({bearingDelta:(y.x-g.x)*d}),moveStateManager:p,enable:b,assignEvents:uc})},ba=({enable:b,clickTolerance:o,pitchDegreesPerPixelMoved:d=-.5})=>{const p=new gn({checkCorrectEvent:g=>P.mouseButton(g)===0&&g.ctrlKey||P.mouseButton(g)===2});return new Ri({clickTolerance:o,move:(g,y)=>({pitchDelta:(y.y-g.y)*d}),moveStateManager:p,enable:b,assignEvents:uc})};class hc{constructor(o,d){this._clickTolerance=o.clickTolerance||1,this._map=d,this.reset()}reset(){this._active=!1,this._touches={},this._sum=new c.P(0,0)}_shouldBePrevented(o){return o<(this._map.cooperativeGestures.isEnabled()?2:1)}touchstart(o,d,p){return this._calculateTransform(o,d,p)}touchmove(o,d,p){if(this._active){if(!this._shouldBePrevented(p.length))return o.preventDefault(),this._calculateTransform(o,d,p);this._map.cooperativeGestures.notifyGestureBlocked("touch_pan",o)}}touchend(o,d,p){this._calculateTransform(o,d,p),this._active&&this._shouldBePrevented(p.length)&&this.reset()}touchcancel(){this.reset()}_calculateTransform(o,d,p){p.length>0&&(this._active=!0);const g=Za(p,d),y=new c.P(0,0),S=new c.P(0,0);let A=0;for(const k in g){const F=g[k],N=this._touches[k];N&&(y._add(F),S._add(F.sub(N)),A++,g[k]=F)}if(this._touches=g,this._shouldBePrevented(A)||!S.mag())return;const M=S.div(A);return this._sum._add(M),this._sum.mag()Math.abs(b.x)}class nf extends dc{constructor(o){super(),this._currentTouchCount=0,this._map=o}reset(){super.reset(),this._valid=void 0,delete this._firstMove,delete this._lastPoints}touchstart(o,d,p){super.touchstart(o,d,p),this._currentTouchCount=p.length}_start(o){this._lastPoints=o,to(o[0].sub(o[1]))&&(this._valid=!1)}_move(o,d,p){if(this._map.cooperativeGestures.isEnabled()&&this._currentTouchCount<3)return;const g=o[0].sub(this._lastPoints[0]),y=o[1].sub(this._lastPoints[1]);return this._valid=this.gestureBeginsVertically(g,y,p.timeStamp),this._valid?(this._lastPoints=o,this._active=!0,{pitchDelta:(g.y+y.y)/2*-.5}):void 0}gestureBeginsVertically(o,d,p){if(this._valid!==void 0)return this._valid;const g=o.mag()>=2,y=d.mag()>=2;if(!g&&!y)return;if(!g||!y)return this._firstMove===void 0&&(this._firstMove=p),p-this._firstMove<100&&void 0;const S=o.y>0==d.y>0;return to(o)&&to(d)&&S}}const zg={panStep:100,bearingStep:15,pitchStep:10};class rf{constructor(o){this._tr=new Xa(o);const d=zg;this._panStep=d.panStep,this._bearingStep=d.bearingStep,this._pitchStep=d.pitchStep,this._rotationDisabled=!1}reset(){this._active=!1}keydown(o){if(o.altKey||o.ctrlKey||o.metaKey)return;let d=0,p=0,g=0,y=0,S=0;switch(o.keyCode){case 61:case 107:case 171:case 187:d=1;break;case 189:case 109:case 173:d=-1;break;case 37:o.shiftKey?p=-1:(o.preventDefault(),y=-1);break;case 39:o.shiftKey?p=1:(o.preventDefault(),y=1);break;case 38:o.shiftKey?g=1:(o.preventDefault(),S=-1);break;case 40:o.shiftKey?g=-1:(o.preventDefault(),S=1);break;default:return}return this._rotationDisabled&&(p=0,g=0),{cameraAnimation:A=>{const M=this._tr;A.easeTo({duration:300,easeId:"keyboardHandler",easing:Ug,zoom:d?Math.round(M.zoom)+d*(o.shiftKey?2:1):M.zoom,bearing:M.bearing+p*this._bearingStep,pitch:M.pitch+g*this._pitchStep,offset:[-y*this._panStep,-S*this._panStep],center:M.center},{originalEvent:o})}}}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 Ug(b){return b*(2-b)}const of=4.000244140625;class af{constructor(o,d){this._onTimeout=p=>{this._type="wheel",this._delta-=this._lastValue,this._active||this._start(p)},this._map=o,this._tr=new Xa(o),this._triggerRenderFrame=d,this._delta=0,this._defaultZoomRate=.01,this._wheelZoomRate=.0022222222222222222}setZoomRate(o){this._defaultZoomRate=o}setWheelZoomRate(o){this._wheelZoomRate=o}isEnabled(){return!!this._enabled}isActive(){return!!this._active||this._finishTimeout!==void 0}isZooming(){return!!this._zooming}enable(o){this.isEnabled()||(this._enabled=!0,this._aroundCenter=!!o&&o.around==="center")}disable(){this.isEnabled()&&(this._enabled=!1)}_shouldBePrevented(o){return!!this._map.cooperativeGestures.isEnabled()&&!(o.ctrlKey||this._map.cooperativeGestures.isBypassed(o))}wheel(o){if(!this.isEnabled())return;if(this._shouldBePrevented(o))return void this._map.cooperativeGestures.notifyGestureBlocked("wheel_zoom",o);let d=o.deltaMode===WheelEvent.DOM_DELTA_LINE?40*o.deltaY:o.deltaY;const p=C.now(),g=p-(this._lastWheelEventTime||0);this._lastWheelEventTime=p,d!==0&&d%of==0?this._type="wheel":d!==0&&Math.abs(d)<4?this._type="trackpad":g>400?(this._type=null,this._lastValue=d,this._timeout=setTimeout(this._onTimeout,40,o)):this._type||(this._type=Math.abs(g*d)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,d+=this._lastValue)),o.shiftKey&&d&&(d/=4),this._type&&(this._lastWheelEvent=o,this._delta-=d,this._active||this._start(o)),o.preventDefault()}_start(o){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 d=P.mousePos(this._map.getCanvas(),o),p=this._tr;this._around=d.y>p.transform.height/2-p.transform.getHorizon()?c.N.convert(this._aroundCenter?p.center:p.unproject(d)):c.N.convert(p.center),this._aroundPoint=p.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._triggerRenderFrame())}renderFrame(){if(!this._frameId||(this._frameId=null,!this.isActive()))return;const o=this._tr.transform;if(this._delta!==0){const M=this._type==="wheel"&&Math.abs(this._delta)>of?this._wheelZoomRate:this._defaultZoomRate;let k=2/(1+Math.exp(-Math.abs(this._delta*M)));this._delta<0&&k!==0&&(k=1/k);const F=typeof this._targetZoom=="number"?o.zoomScale(this._targetZoom):o.scale;this._targetZoom=Math.min(o.maxZoom,Math.max(o.minZoom,o.scaleZoom(F*k))),this._type==="wheel"&&(this._startZoom=o.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}const d=typeof this._targetZoom=="number"?this._targetZoom:o.zoom,p=this._startZoom,g=this._easing;let y,S=!1;const A=C.now()-this._lastWheelEventTime;if(this._type==="wheel"&&p&&g&&A){const M=Math.min(A/200,1),k=g(M);y=c.z.number(p,d,k),M<1?this._frameId||(this._frameId=!0):S=!0}else y=d,S=!0;return this._active=!0,S&&(this._active=!1,this._finishTimeout=setTimeout(()=>{this._zooming=!1,this._triggerRenderFrame(),delete this._targetZoom,delete this._finishTimeout},200)),{noInertia:!0,needsRenderFrame:!S,zoomDelta:y-o.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}_smoothOutEasing(o){let d=c.b9;if(this._prevEase){const p=this._prevEase,g=(C.now()-p.start)/p.duration,y=p.easing(g+.01)-p.easing(g),S=.27/Math.sqrt(y*y+1e-4)*.01,A=Math.sqrt(.0729-S*S);d=c.b8(S,A,.25,1)}return this._prevEase={start:C.now(),duration:o,easing:d},d}reset(){this._active=!1,this._zooming=!1,delete this._targetZoom,this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout)}}class lf{constructor(o,d){this._clickZoom=o,this._tapZoom=d}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 pc{constructor(o){this._tr=new Xa(o),this.reset()}reset(){this._active=!1}dblclick(o,d){return o.preventDefault(),{cameraAnimation:p=>{p.easeTo({duration:300,zoom:this._tr.zoom+(o.shiftKey?-1:1),around:this._tr.unproject(d)},{originalEvent:o})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class Vg{constructor(){this._tap=new Jd({numTouches:1,numTaps:1}),this.reset()}reset(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,delete this._tapPoint,this._tap.reset()}touchstart(o,d,p){if(!this._swipePoint)if(this._tapTime){const g=d[0],y=o.timeStamp-this._tapTime<500,S=this._tapPoint.dist(g)<30;y&&S?p.length>0&&(this._swipePoint=g,this._swipeTouch=p[0].identifier):this.reset()}else this._tap.touchstart(o,d,p)}touchmove(o,d,p){if(this._tapTime){if(this._swipePoint){if(p[0].identifier!==this._swipeTouch)return;const g=d[0],y=g.y-this._swipePoint.y;return this._swipePoint=g,o.preventDefault(),this._active=!0,{zoomDelta:y/128}}}else this._tap.touchmove(o,d,p)}touchend(o,d,p){if(this._tapTime)this._swipePoint&&p.length===0&&this.reset();else{const g=this._tap.touchend(o,d,p);g&&(this._tapTime=o.timeStamp,this._tapPoint=g)}}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class Jn{constructor(o,d,p){this._el=o,this._mousePan=d,this._touchPan=p}enable(o){this._inertiaOptions=o||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("maplibregl-touch-drag-pan")}disable(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("maplibregl-touch-drag-pan")}isEnabled(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()}isActive(){return this._mousePan.isActive()||this._touchPan.isActive()}}class gr{constructor(o,d,p){this._pitchWithRotate=o.pitchWithRotate,this._mouseRotate=d,this._mousePitch=p}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 cf{constructor(o,d,p,g){this._el=o,this._touchZoom=d,this._touchRotate=p,this._tapDragZoom=g,this._rotationDisabled=!1,this._enabled=!0}enable(o){this._touchZoom.enable(o),this._rotationDisabled||this._touchRotate.enable(o),this._tapDragZoom.enable(),this._el.classList.add("maplibregl-touch-zoom-rotate")}disable(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("maplibregl-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()}}class mr{constructor(o,d){this._bypassKey=navigator.userAgent.indexOf("Mac")!==-1?"metaKey":"ctrlKey",this._map=o,this._options=d,this._enabled=!1}isActive(){return!1}reset(){}_setupUI(){if(this._container)return;const o=this._map.getCanvasContainer();o.classList.add("maplibregl-cooperative-gestures"),this._container=P.create("div","maplibregl-cooperative-gesture-screen",o);let d=this._map._getUIString("CooperativeGesturesHandler.WindowsHelpText");this._bypassKey==="metaKey"&&(d=this._map._getUIString("CooperativeGesturesHandler.MacHelpText"));const p=this._map._getUIString("CooperativeGesturesHandler.MobileHelpText"),g=document.createElement("div");g.className="maplibregl-desktop-message",g.textContent=d,this._container.appendChild(g);const y=document.createElement("div");y.className="maplibregl-mobile-message",y.textContent=p,this._container.appendChild(y),this._container.setAttribute("aria-hidden","true")}_destroyUI(){this._container&&(P.remove(this._container),this._map.getCanvasContainer().classList.remove("maplibregl-cooperative-gestures")),delete this._container}enable(){this._setupUI(),this._enabled=!0}disable(){this._enabled=!1,this._destroyUI()}isEnabled(){return this._enabled}isBypassed(o){return o[this._bypassKey]}notifyGestureBlocked(o,d){this._enabled&&(this._map.fire(new c.k("cooperativegestureprevented",{gestureType:o,originalEvent:d})),this._container.classList.add("maplibregl-show"),setTimeout(()=>{this._container.classList.remove("maplibregl-show")},100))}}const io=b=>b.zoom||b.drag||b.pitch||b.rotate;class Q0 extends c.k{}function uf(b){return b.panDelta&&b.panDelta.mag()||b.zoomDelta||b.bearingDelta||b.pitchDelta}class eb{constructor(o,d){this.handleWindowEvent=g=>{this.handleEvent(g,`${g.type}Window`)},this.handleEvent=(g,y)=>{if(g.type==="blur")return void this.stop(!0);this._updatingCamera=!0;const S=g.type==="renderFrame"?void 0:g,A={needsRenderFrame:!1},M={},k={},F=g.touches,N=F?this._getMapTouches(F):void 0,$=N?P.touchPos(this._map.getCanvas(),N):P.mousePos(this._map.getCanvas(),g);for(const{handlerName:re,handler:se,allowed:ae}of this._handlers){if(!se.isEnabled())continue;let me;this._blockedByActive(k,ae,re)?se.reset():se[y||g.type]&&(me=se[y||g.type](g,$,N),this.mergeHandlerResult(A,M,me,re,S),me&&me.needsRenderFrame&&this._triggerRenderFrame()),(me||se.isActive())&&(k[re]=se)}const X={};for(const re in this._previousActiveHandlers)k[re]||(X[re]=S);this._previousActiveHandlers=k,(Object.keys(X).length||uf(A))&&(this._changes.push([A,M,X]),this._triggerRenderFrame()),(Object.keys(k).length||uf(A))&&this._map._stop(!0),this._updatingCamera=!1;const{cameraAnimation:Q}=A;Q&&(this._inertia.clear(),this._fireEvents({},{},!0),this._changes=[],Q(this._map))},this._map=o,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new Fu(o),this._bearingSnap=d.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(d);const p=this._el;this._listeners=[[p,"touchstart",{passive:!0}],[p,"touchmove",{passive:!1}],[p,"touchend",void 0],[p,"touchcancel",void 0],[p,"mousedown",void 0],[p,"mousemove",void 0],[p,"mouseup",void 0],[document,"mousemove",{capture:!0}],[document,"mouseup",void 0],[p,"mouseover",void 0],[p,"mouseout",void 0],[p,"dblclick",void 0],[p,"click",void 0],[p,"keydown",{capture:!1}],[p,"keyup",void 0],[p,"wheel",{passive:!1}],[p,"contextmenu",void 0],[window,"blur",void 0]];for(const[g,y,S]of this._listeners)P.addEventListener(g,y,g===document?this.handleWindowEvent:this.handleEvent,S)}destroy(){for(const[o,d,p]of this._listeners)P.removeEventListener(o,d,o===document?this.handleWindowEvent:this.handleEvent,p)}_addDefaultHandlers(o){const d=this._map,p=d.getCanvasContainer();this._add("mapEvent",new Bu(d,o));const g=d.boxZoom=new Yd(d,o);this._add("boxZoom",g),o.interactive&&o.boxZoom&&g.enable();const y=d.cooperativeGestures=new mr(d,o.cooperativeGestures);this._add("cooperativeGestures",y),o.cooperativeGestures&&y.enable();const S=new Lg(d),A=new pc(d);d.doubleClickZoom=new lf(A,S),this._add("tapZoom",S),this._add("clickZoom",A),o.interactive&&o.doubleClickZoom&&d.doubleClickZoom.enable();const M=new Vg;this._add("tapDragZoom",M);const k=d.touchPitch=new nf(d);this._add("touchPitch",k),o.interactive&&o.touchPitch&&d.touchPitch.enable(o.touchPitch);const F=Gd(o),N=ba(o);d.dragRotate=new gr(o,F,N),this._add("mouseRotate",F,["mousePitch"]),this._add("mousePitch",N,["mouseRotate"]),o.interactive&&o.dragRotate&&d.dragRotate.enable();const $=(({enable:me,clickTolerance:te})=>{const ve=new gn({checkCorrectEvent:Ie=>P.mouseButton(Ie)===0&&!Ie.ctrlKey});return new Ri({clickTolerance:te,move:(Ie,Me)=>({around:Me,panDelta:Me.sub(Ie)}),activateOnStart:!0,moveStateManager:ve,enable:me,assignEvents:uc})})(o),X=new hc(o,d);d.dragPan=new Jn(p,$,X),this._add("mousePan",$),this._add("touchPan",X,["touchZoom","touchRotate"]),o.interactive&&o.dragPan&&d.dragPan.enable(o.dragPan);const Q=new sf,re=new ef;d.touchZoomRotate=new cf(p,re,Q,M),this._add("touchRotate",Q,["touchPan","touchZoom"]),this._add("touchZoom",re,["touchPan","touchRotate"]),o.interactive&&o.touchZoomRotate&&d.touchZoomRotate.enable(o.touchZoomRotate);const se=d.scrollZoom=new af(d,()=>this._triggerRenderFrame());this._add("scrollZoom",se,["mousePan"]),o.interactive&&o.scrollZoom&&d.scrollZoom.enable(o.scrollZoom);const ae=d.keyboard=new rf(d);this._add("keyboard",ae),o.interactive&&o.keyboard&&d.keyboard.enable(),this._add("blockableMapEvent",new Zd(d))}_add(o,d,p){this._handlers.push({handlerName:o,handler:d,allowed:p}),this._handlersById[o]=d}stop(o){if(!this._updatingCamera){for(const{handler:d}of this._handlers)d.reset();this._inertia.clear(),this._fireEvents({},{},o),this._changes=[]}}isActive(){for(const{handler:o}of this._handlers)if(o.isActive())return!0;return!1}isZooming(){return!!this._eventsInProgress.zoom||this._map.scrollZoom.isZooming()}isRotating(){return!!this._eventsInProgress.rotate}isMoving(){return!!io(this._eventsInProgress)||this.isZooming()}_blockedByActive(o,d,p){for(const g in o)if(g!==p&&(!d||d.indexOf(g)<0))return!0;return!1}_getMapTouches(o){const d=[];for(const p of o)this._el.contains(p.target)&&d.push(p);return d}mergeHandlerResult(o,d,p,g,y){if(!p)return;c.e(o,p);const S={handlerName:g,originalEvent:p.originalEvent||y};p.zoomDelta!==void 0&&(d.zoom=S),p.panDelta!==void 0&&(d.drag=S),p.pitchDelta!==void 0&&(d.pitch=S),p.bearingDelta!==void 0&&(d.rotate=S)}_applyChanges(){const o={},d={},p={};for(const[g,y,S]of this._changes)g.panDelta&&(o.panDelta=(o.panDelta||new c.P(0,0))._add(g.panDelta)),g.zoomDelta&&(o.zoomDelta=(o.zoomDelta||0)+g.zoomDelta),g.bearingDelta&&(o.bearingDelta=(o.bearingDelta||0)+g.bearingDelta),g.pitchDelta&&(o.pitchDelta=(o.pitchDelta||0)+g.pitchDelta),g.around!==void 0&&(o.around=g.around),g.pinchAround!==void 0&&(o.pinchAround=g.pinchAround),g.noInertia&&(o.noInertia=g.noInertia),c.e(d,y),c.e(p,S);this._updateMapTransform(o,d,p),this._changes=[]}_updateMapTransform(o,d,p){const g=this._map,y=g._getTransformForUpdate(),S=g.terrain;if(!(uf(o)||S&&this._terrainMovement))return this._fireEvents(d,p,!0);let{panDelta:A,zoomDelta:M,bearingDelta:k,pitchDelta:F,around:N,pinchAround:$}=o;$!==void 0&&(N=$),g._stop(!0),N=N||g.transform.centerPoint;const X=y.pointLocation(A?N.sub(A):N);k&&(y.bearing+=k),F&&(y.pitch+=F),M&&(y.zoom+=M),S?this._terrainMovement||!d.drag&&!d.zoom?d.drag&&this._terrainMovement?y.center=y.pointLocation(y.centerPoint.sub(A)):y.setLocationAtPoint(X,N):(this._terrainMovement=!0,this._map._elevationFreeze=!0,y.setLocationAtPoint(X,N)):y.setLocationAtPoint(X,N),g._applyUpdatedTransform(y),this._map._update(),o.noInertia||this._inertia.record(o),this._fireEvents(d,p,!0)}_fireEvents(o,d,p){const g=io(this._eventsInProgress),y=io(o),S={};for(const N in o){const{originalEvent:$}=o[N];this._eventsInProgress[N]||(S[`${N}start`]=$),this._eventsInProgress[N]=o[N]}!g&&y&&this._fireEvent("movestart",y.originalEvent);for(const N in S)this._fireEvent(N,S[N]);y&&this._fireEvent("move",y.originalEvent);for(const N in o){const{originalEvent:$}=o[N];this._fireEvent(N,$)}const A={};let M;for(const N in this._eventsInProgress){const{handlerName:$,originalEvent:X}=this._eventsInProgress[N];this._handlersById[$].isActive()||(delete this._eventsInProgress[N],M=d[$]||X,A[`${N}end`]=M)}for(const N in A)this._fireEvent(N,A[N]);const k=io(this._eventsInProgress),F=(g||y)&&!k;if(F&&this._terrainMovement){this._map._elevationFreeze=!1,this._terrainMovement=!1;const N=this._map._getTransformForUpdate();N.recalculateZoom(this._map.terrain),this._map._applyUpdatedTransform(N)}if(p&&F){this._updatingCamera=!0;const N=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),$=X=>X!==0&&-this._bearingSnap{delete this._frameId,this.handleEvent(new Q0("renderFrame",{timeStamp:o})),this._applyChanges()})}_triggerRenderFrame(){this._frameId===void 0&&(this._frameId=this._requestFrame())}}class tb extends c.E{constructor(o,d){super(),this._renderFrameCallback=()=>{const p=Math.min((C.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(p)),p<1&&this._easeFrameId?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},this._moving=!1,this._zooming=!1,this.transform=o,this._bearingSnap=d.bearingSnap,this.on("moveend",()=>{delete this._requestedCameraState})}getCenter(){return new c.N(this.transform.center.lng,this.transform.center.lat)}setCenter(o,d){return this.jumpTo({center:o},d)}panBy(o,d,p){return o=c.P.convert(o).mult(-1),this.panTo(this.transform.center,c.e({offset:o},d),p)}panTo(o,d,p){return this.easeTo(c.e({center:o},d),p)}getZoom(){return this.transform.zoom}setZoom(o,d){return this.jumpTo({zoom:o},d),this}zoomTo(o,d,p){return this.easeTo(c.e({zoom:o},d),p)}zoomIn(o,d){return this.zoomTo(this.getZoom()+1,o,d),this}zoomOut(o,d){return this.zoomTo(this.getZoom()-1,o,d),this}getBearing(){return this.transform.bearing}setBearing(o,d){return this.jumpTo({bearing:o},d),this}getPadding(){return this.transform.padding}setPadding(o,d){return this.jumpTo({padding:o},d),this}rotateTo(o,d,p){return this.easeTo(c.e({bearing:o},d),p)}resetNorth(o,d){return this.rotateTo(0,c.e({duration:1e3},o),d),this}resetNorthPitch(o,d){return this.easeTo(c.e({bearing:0,pitch:0,duration:1e3},o),d),this}snapToNorth(o,d){return Math.abs(this.getBearing()){if(this._zooming&&(g.zoom=c.z.number(y,se,Ve)),this._rotating&&(g.bearing=c.z.number(S,k,Ve)),this._pitching&&(g.pitch=c.z.number(A,F,Ve)),this._padding&&(g.interpolatePadding(M,N,Ve),X=g.centerPoint.add($)),this.terrain&&!o.freezeElevation&&this._updateElevation(Ve),ve)g.setLocationAtPoint(ve,Ie);else{const Ke=g.zoomScale(g.zoom-y),ht=se>y?Math.min(2,te):Math.max(.5,te),ft=Math.pow(ht,1-Ve),Je=g.unproject(ae.add(me.mult(Ve*ft)).mult(Ke));g.setLocationAtPoint(g.renderWorldCopies?Je.wrap():Je,X)}this._applyUpdatedTransform(g),this._fireMoveEvents(d)},Ve=>{this.terrain&&o.freezeElevation&&this._finalizeElevation(),this._afterEase(d,Ve)},o),this}_prepareEase(o,d,p={}){this._moving=!0,d||p.moving||this.fire(new c.k("movestart",o)),this._zooming&&!p.zooming&&this.fire(new c.k("zoomstart",o)),this._rotating&&!p.rotating&&this.fire(new c.k("rotatestart",o)),this._pitching&&!p.pitching&&this.fire(new c.k("pitchstart",o))}_prepareElevation(o){this._elevationCenter=o,this._elevationStart=this.transform.elevation,this._elevationTarget=this.terrain.getElevationForLngLatZoom(o,this.transform.tileZoom),this._elevationFreeze=!0}_updateElevation(o){this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this._elevationCenter,this.transform.tileZoom);const d=this.terrain.getElevationForLngLatZoom(this._elevationCenter,this.transform.tileZoom);if(o<1&&d!==this._elevationTarget){const p=this._elevationTarget-this._elevationStart;this._elevationStart+=o*(p-(d-(p*o+this._elevationStart))/(1-o)),this._elevationTarget=d}this.transform.elevation=c.z.number(this._elevationStart,this._elevationTarget,o)}_finalizeElevation(){this._elevationFreeze=!1,this.transform.recalculateZoom(this.terrain)}_getTransformForUpdate(){return this.transformCameraUpdate||this.terrain?(this._requestedCameraState||(this._requestedCameraState=this.transform.clone()),this._requestedCameraState):this.transform}_elevateCameraIfInsideTerrain(o){const d=o.getCameraPosition(),p=this.terrain.getElevationForLngLatZoom(d.lngLat,o.zoom);if(d.altitudethis._elevateCameraIfInsideTerrain(g)),this.transformCameraUpdate&&d.push(g=>this.transformCameraUpdate(g)),!d.length)return;const p=o.clone();for(const g of d){const y=p.clone(),{center:S,zoom:A,pitch:M,bearing:k,elevation:F}=g(y);S&&(y.center=S),A!==void 0&&(y.zoom=A),M!==void 0&&(y.pitch=M),k!==void 0&&(y.bearing=k),F!==void 0&&(y.elevation=F),p.apply(y)}this.transform.apply(p)}_fireMoveEvents(o){this.fire(new c.k("move",o)),this._zooming&&this.fire(new c.k("zoom",o)),this._rotating&&this.fire(new c.k("rotate",o)),this._pitching&&this.fire(new c.k("pitch",o))}_afterEase(o,d){if(this._easeId&&d&&this._easeId===d)return;delete this._easeId;const p=this._zooming,g=this._rotating,y=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,p&&this.fire(new c.k("zoomend",o)),g&&this.fire(new c.k("rotateend",o)),y&&this.fire(new c.k("pitchend",o)),this.fire(new c.k("moveend",o))}flyTo(o,d){var p;if(!o.essential&&C.prefersReducedMotion){const lt=c.M(o,["center","zoom","bearing","pitch","around"]);return this.jumpTo(lt,d)}this.stop(),o=c.e({offset:[0,0],speed:1.2,curve:1.42,easing:c.b9},o);const g=this._getTransformForUpdate(),y=g.zoom,S=g.bearing,A=g.pitch,M=g.padding,k="bearing"in o?this._normalizeBearing(o.bearing,S):S,F="pitch"in o?+o.pitch:A,N="padding"in o?o.padding:g.padding,$=c.P.convert(o.offset);let X=g.centerPoint.add($);const Q=g.pointLocation(X),{center:re,zoom:se}=g.getConstrained(c.N.convert(o.center||Q),(p=o.zoom)!==null&&p!==void 0?p:y);this._normalizeCenter(re,g);const ae=g.zoomScale(se-y),me=g.project(Q),te=g.project(re).sub(me);let ve=o.curve;const Ie=Math.max(g.width,g.height),Me=Ie/ae,Ve=te.mag();if("minZoom"in o){const lt=c.ad(Math.min(o.minZoom,y,se),g.minZoom,g.maxZoom),Ft=Ie/g.zoomScale(lt-y);ve=Math.sqrt(Ft/Ve*2)}const Ke=ve*ve;function ht(lt){const Ft=(Me*Me-Ie*Ie+(lt?-1:1)*Ke*Ke*Ve*Ve)/(2*(lt?Me:Ie)*Ke*Ve);return Math.log(Math.sqrt(Ft*Ft+1)-Ft)}function ft(lt){return(Math.exp(lt)-Math.exp(-lt))/2}function Je(lt){return(Math.exp(lt)+Math.exp(-lt))/2}const it=ht(!1);let bt=function(lt){return Je(it)/Je(it+ve*lt)},Vt=function(lt){return Ie*((Je(it)*(ft(Ft=it+ve*lt)/Je(Ft))-ft(it))/Ke)/Ve;var Ft},nt=(ht(!0)-it)/ve;if(Math.abs(Ve)<1e-6||!isFinite(nt)){if(Math.abs(Ie-Me)<1e-6)return this.easeTo(o,d);const lt=Me0,bt=Ft=>Math.exp(lt*ve*Ft)}return o.duration="duration"in o?+o.duration:1e3*nt/("screenSpeed"in o?+o.screenSpeed/ve:+o.speed),o.maxDuration&&o.duration>o.maxDuration&&(o.duration=0),this._zooming=!0,this._rotating=S!==k,this._pitching=F!==A,this._padding=!g.isPaddingEqual(N),this._prepareEase(d,!1),this.terrain&&this._prepareElevation(re),this._ease(lt=>{const Ft=lt*nt,Mi=1/bt(Ft);g.zoom=lt===1?se:y+g.scaleZoom(Mi),this._rotating&&(g.bearing=c.z.number(S,k,lt)),this._pitching&&(g.pitch=c.z.number(A,F,lt)),this._padding&&(g.interpolatePadding(M,N,lt),X=g.centerPoint.add($)),this.terrain&&!o.freezeElevation&&this._updateElevation(lt);const qt=lt===1?re:g.unproject(me.add(te.mult(Vt(Ft))).mult(Mi));g.setLocationAtPoint(g.renderWorldCopies?qt.wrap():qt,X),this._applyUpdatedTransform(g),this._fireMoveEvents(d)},()=>{this.terrain&&o.freezeElevation&&this._finalizeElevation(),this._afterEase(d)},o),this}isEasing(){return!!this._easeFrameId}stop(){return this._stop()}_stop(o,d){var p;if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){const g=this._onEaseEnd;delete this._onEaseEnd,g.call(this,d)}return o||(p=this.handlers)===null||p===void 0||p.stop(!1),this}_ease(o,d,p){p.animate===!1||p.duration===0?(o(1),d()):(this._easeStart=C.now(),this._easeOptions=p,this._onEaseFrame=o,this._onEaseEnd=d,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))}_normalizeBearing(o,d){o=c.b3(o,-180,180);const p=Math.abs(o-d);return Math.abs(o-360-d)180?-360:p<-180?360:0}queryTerrainElevation(o){return this.terrain?this.terrain.getElevationForLngLatZoom(c.N.convert(o),this.transform.tileZoom)-this.transform.elevation:null}}const hf={compact:!0,customAttribution:'MapLibre'};class Ya{constructor(o=hf){this._toggleAttribution=()=>{this._container.classList.contains("maplibregl-compact")&&(this._container.classList.contains("maplibregl-compact-show")?(this._container.setAttribute("open",""),this._container.classList.remove("maplibregl-compact-show")):(this._container.classList.add("maplibregl-compact-show"),this._container.removeAttribute("open")))},this._updateData=d=>{!d||d.sourceDataType!=="metadata"&&d.sourceDataType!=="visibility"&&d.dataType!=="style"&&d.type!=="terrain"||this._updateAttributions()},this._updateCompact=()=>{this._map.getCanvasContainer().offsetWidth<=640||this._compact?this._compact===!1?this._container.setAttribute("open",""):this._container.classList.contains("maplibregl-compact")||this._container.classList.contains("maplibregl-attrib-empty")||(this._container.setAttribute("open",""),this._container.classList.add("maplibregl-compact","maplibregl-compact-show")):(this._container.setAttribute("open",""),this._container.classList.contains("maplibregl-compact")&&this._container.classList.remove("maplibregl-compact","maplibregl-compact-show"))},this._updateCompactMinimize=()=>{this._container.classList.contains("maplibregl-compact")&&this._container.classList.contains("maplibregl-compact-show")&&this._container.classList.remove("maplibregl-compact-show")},this.options=o}getDefaultPosition(){return"bottom-right"}onAdd(o){return this._map=o,this._compact=this.options.compact,this._container=P.create("details","maplibregl-ctrl maplibregl-ctrl-attrib"),this._compactButton=P.create("summary","maplibregl-ctrl-attrib-button",this._container),this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=P.create("div","maplibregl-ctrl-attrib-inner",this._container),this._updateAttributions(),this._updateCompact(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("terrain",this._updateData),this._map.on("resize",this._updateCompact),this._map.on("drag",this._updateCompactMinimize),this._container}onRemove(){P.remove(this._container),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("terrain",this._updateData),this._map.off("resize",this._updateCompact),this._map.off("drag",this._updateCompactMinimize),this._map=void 0,this._compact=void 0,this._attribHTML=void 0}_setElementTitle(o,d){const p=this._map._getUIString(`AttributionControl.${d}`);o.title=p,o.setAttribute("aria-label",p)}_updateAttributions(){if(!this._map.style)return;let o=[];if(this.options.customAttribution&&(Array.isArray(this.options.customAttribution)?o=o.concat(this.options.customAttribution.map(g=>typeof g!="string"?"":g)):typeof this.options.customAttribution=="string"&&o.push(this.options.customAttribution)),this._map.style.stylesheet){const g=this._map.style.stylesheet;this.styleOwner=g.owner,this.styleId=g.id}const d=this._map.style.sourceCaches;for(const g in d){const y=d[g];if(y.used||y.usedForTerrain){const S=y.getSource();S.attribution&&o.indexOf(S.attribution)<0&&o.push(S.attribution)}}o=o.filter(g=>String(g).trim()),o.sort((g,y)=>g.length-y.length),o=o.filter((g,y)=>{for(let S=y+1;S=0)return!1;return!0});const p=o.join(" | ");p!==this._attribHTML&&(this._attribHTML=p,o.length?(this._innerContainer.innerHTML=p,this._container.classList.remove("maplibregl-attrib-empty")):this._container.classList.add("maplibregl-attrib-empty"),this._updateCompact(),this._editLink=null)}}class Lr{constructor(o={}){this._updateCompact=()=>{const d=this._container.children;if(d.length){const p=d[0];this._map.getCanvasContainer().offsetWidth<=640||this._compact?this._compact!==!1&&p.classList.add("maplibregl-compact"):p.classList.remove("maplibregl-compact")}},this.options=o}getDefaultPosition(){return"bottom-left"}onAdd(o){this._map=o,this._compact=this.options&&this.options.compact,this._container=P.create("div","maplibregl-ctrl");const d=P.create("a","maplibregl-ctrl-logo");return d.target="_blank",d.rel="noopener nofollow",d.href="https://maplibre.org/",d.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),d.setAttribute("rel","noopener nofollow"),this._container.appendChild(d),this._container.style.display="block",this._map.on("resize",this._updateCompact),this._updateCompact(),this._container}onRemove(){P.remove(this._container),this._map.off("resize",this._updateCompact),this._map=void 0,this._compact=void 0}}class mt{constructor(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1}add(o){const d=++this._id;return this._queue.push({callback:o,id:d,cancelled:!1}),d}remove(o){const d=this._currentlyRunning,p=d?this._queue.concat(d):this._queue;for(const g of p)if(g.id===o)return void(g.cancelled=!0)}run(o=0){if(this._currentlyRunning)throw new Error("Attempting to run(), but is already running.");const d=this._currentlyRunning=this._queue;this._queue=[];for(const p of d)if(!p.cancelled&&(p.callback(o),this._cleared))break;this._cleared=!1,this._currentlyRunning=!1}clear(){this._currentlyRunning&&(this._cleared=!0),this._queue=[]}}var jg=c.Y([{name:"a_pos3d",type:"Int16",components:3}]);class df extends c.E{constructor(o){super(),this.sourceCache=o,this._tiles={},this._renderableTilesKeys=[],this._sourceTileCache={},this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.deltaZoom=1,o.usedForTerrain=!0,o.tileSize=this.tileSize*2**this.deltaZoom}destruct(){this.sourceCache.usedForTerrain=!1,this.sourceCache.tileSize=null}update(o,d){this.sourceCache.update(o,d),this._renderableTilesKeys=[];const p={};for(const g of o.coveringTiles({tileSize:this.tileSize,minzoom:this.minzoom,maxzoom:this.maxzoom,reparseOverscaled:!1,terrain:d}))p[g.key]=!0,this._renderableTilesKeys.push(g.key),this._tiles[g.key]||(g.posMatrix=new Float64Array(16),c.aQ(g.posMatrix,0,c.X,0,c.X,0,1),this._tiles[g.key]=new xs(g,this.tileSize));for(const g in this._tiles)p[g]||delete this._tiles[g]}freeRtt(o){for(const d in this._tiles){const p=this._tiles[d];(!o||p.tileID.equals(o)||p.tileID.isChildOf(o)||o.isChildOf(p.tileID))&&(p.rtt=[])}}getRenderableTiles(){return this._renderableTilesKeys.map(o=>this.getTileByID(o))}getTileByID(o){return this._tiles[o]}getTerrainCoords(o){const d={};for(const p of this._renderableTilesKeys){const g=this._tiles[p].tileID;if(g.canonical.equals(o.canonical)){const y=o.clone();y.posMatrix=new Float64Array(16),c.aQ(y.posMatrix,0,c.X,0,c.X,0,1),d[p]=y}else if(g.canonical.isChildOf(o.canonical)){const y=o.clone();y.posMatrix=new Float64Array(16);const S=g.canonical.z-o.canonical.z,A=g.canonical.x-(g.canonical.x>>S<>S<>S;c.aQ(y.posMatrix,0,k,0,k,0,1),c.J(y.posMatrix,y.posMatrix,[-A*k,-M*k,0]),d[p]=y}else if(o.canonical.isChildOf(g.canonical)){const y=o.clone();y.posMatrix=new Float64Array(16);const S=o.canonical.z-g.canonical.z,A=o.canonical.x-(o.canonical.x>>S<>S<>S;c.aQ(y.posMatrix,0,c.X,0,c.X,0,1),c.J(y.posMatrix,y.posMatrix,[A*k,M*k,0]),c.K(y.posMatrix,y.posMatrix,[1/2**S,1/2**S,0]),d[p]=y}}return d}getSourceTile(o,d){const p=this.sourceCache._source;let g=o.overscaledZ-this.deltaZoom;if(g>p.maxzoom&&(g=p.maxzoom),g=p.minzoom&&(!y||!y.dem);)y=this.sourceCache.getTileByID(o.scaledTo(g--).key);return y}tilesAfterTime(o=Date.now()){return Object.values(this._tiles).filter(d=>d.timeAdded>=o)}}class $g{constructor(o,d,p){this.painter=o,this.sourceCache=new df(d),this.options=p,this.exaggeration=typeof p.exaggeration=="number"?p.exaggeration:1,this.qualityFactor=2,this.meshSize=128,this._demMatrixCache={},this.coordsIndex=[],this._coordsTextureSize=1024}getDEMElevation(o,d,p,g=c.X){var y;if(!(d>=0&&d=0&&po.canonical.z&&(o.canonical.z>=g?y=o.canonical.z-g:c.w("cannot calculate elevation if elevation maxzoom > source.maxzoom"));const S=o.canonical.x-(o.canonical.x>>y<>y<>8<<4|y>>8,d[S+3]=0;const p=new c.R({width:this._coordsTextureSize,height:this._coordsTextureSize},new Uint8Array(d.buffer)),g=new ot(o,p,o.gl.RGBA,{premultiply:!1});return g.bind(o.gl.NEAREST,o.gl.CLAMP_TO_EDGE),this._coordsTexture=g,g}pointCoordinate(o){this.painter.maybeDrawDepthAndCoords(!0);const d=new Uint8Array(4),p=this.painter.context,g=p.gl,y=Math.round(o.x*this.painter.pixelRatio/devicePixelRatio),S=Math.round(o.y*this.painter.pixelRatio/devicePixelRatio),A=Math.round(this.painter.height/devicePixelRatio);p.bindFramebuffer.set(this.getFramebuffer("coords").framebuffer),g.readPixels(y,A-S-1,1,1,g.RGBA,g.UNSIGNED_BYTE,d),p.bindFramebuffer.set(null);const M=d[0]+(d[2]>>4<<8),k=d[1]+((15&d[2])<<8),F=this.coordsIndex[255-d[3]],N=F&&this.sourceCache.getTileByID(F);if(!N)return null;const $=this._coordsTextureSize,X=(1<o.id!==d),this._recentlyUsed.push(o.id)}stampObject(o){o.stamp=++this._stamp}getOrCreateFreeObject(){for(const d of this._recentlyUsed)if(!this._objects[d].inUse)return this._objects[d];if(this._objects.length>=this._size)throw new Error("No free RenderPool available, call freeAllObjects() required!");const o=this._createObject(this._objects.length);return this._objects.push(o),o}freeObject(o){o.inUse=!1}freeAllObjects(){for(const o of this._objects)this.freeObject(o)}isFull(){return!(this._objects.length!o.inUse)===!1}}const zr={background:!0,fill:!0,line:!0,raster:!0,hillshade:!0};class Wg{constructor(o,d){this.painter=o,this.terrain=d,this.pool=new gc(o.context,30,d.sourceCache.tileSize*d.qualityFactor)}destruct(){this.pool.destruct()}getTexture(o){return this.pool.getObjectForId(o.rtt[this._stacks.length-1].id).texture}prepareForRender(o,d){this._stacks=[],this._prevType=null,this._rttTiles=[],this._renderableTiles=this.terrain.sourceCache.getRenderableTiles(),this._renderableLayerIds=o._order.filter(p=>!o._layers[p].isHidden(d)),this._coordsDescendingInv={};for(const p in o.sourceCaches){this._coordsDescendingInv[p]={};const g=o.sourceCaches[p].getVisibleCoordinates();for(const y of g){const S=this.terrain.sourceCache.getTerrainCoords(y);for(const A in S)this._coordsDescendingInv[p][A]||(this._coordsDescendingInv[p][A]=[]),this._coordsDescendingInv[p][A].push(S[A])}}this._coordsDescendingInvStr={};for(const p of o._order){const g=o._layers[p],y=g.source;if(zr[g.type]&&!this._coordsDescendingInvStr[y]){this._coordsDescendingInvStr[y]={};for(const S in this._coordsDescendingInv[y])this._coordsDescendingInvStr[y][S]=this._coordsDescendingInv[y][S].map(A=>A.key).sort().join()}}for(const p of this._renderableTiles)for(const g in this._coordsDescendingInvStr){const y=this._coordsDescendingInvStr[g][p.tileID.key];y&&y!==p.rttCoords[g]&&(p.rtt=[])}}renderLayer(o){if(o.isHidden(this.painter.transform.zoom))return!1;const d=o.type,p=this.painter,g=this._renderableLayerIds[this._renderableLayerIds.length-1]===o.id;if(zr[d]&&(this._prevType&&zr[this._prevType]||this._stacks.push([]),this._prevType=d,this._stacks[this._stacks.length-1].push(o.id),!g))return!0;if(zr[this._prevType]||zr[d]&&g){this._prevType=d;const y=this._stacks.length-1,S=this._stacks[y]||[];for(const A of this._renderableTiles){if(this.pool.isFull()&&(ac(this.painter,this.terrain,this._rttTiles),this._rttTiles=[],this.pool.freeAllObjects()),this._rttTiles.push(A),A.rtt[y]){const k=this.pool.getObjectForId(A.rtt[y].id);if(k.stamp===A.rtt[y].stamp){this.pool.useObject(k);continue}}const M=this.pool.getOrCreateFreeObject();this.pool.useObject(M),this.pool.stampObject(M),A.rtt[y]={id:M.id,stamp:M.stamp},p.context.bindFramebuffer.set(M.fbo.framebuffer),p.context.clear({color:c.aN.transparent,stencil:0}),p.currentStencilSource=void 0;for(let k=0;k{b.touchstart=b.dragStart,b.touchmoveWindow=b.dragMove,b.touchend=b.dragEnd},pf={showCompass:!0,showZoom:!0,visualizePitch:!1};class qg{constructor(o,d,p=!1){this.mousedown=S=>{this.startMouse(c.e({},S,{ctrlKey:!0,preventDefault:()=>S.preventDefault()}),P.mousePos(this.element,S)),P.addEventListener(window,"mousemove",this.mousemove),P.addEventListener(window,"mouseup",this.mouseup)},this.mousemove=S=>{this.moveMouse(S,P.mousePos(this.element,S))},this.mouseup=S=>{this.mouseRotate.dragEnd(S),this.mousePitch&&this.mousePitch.dragEnd(S),this.offTemp()},this.touchstart=S=>{S.targetTouches.length!==1?this.reset():(this._startPos=this._lastPos=P.touchPos(this.element,S.targetTouches)[0],this.startTouch(S,this._startPos),P.addEventListener(window,"touchmove",this.touchmove,{passive:!1}),P.addEventListener(window,"touchend",this.touchend))},this.touchmove=S=>{S.targetTouches.length!==1?this.reset():(this._lastPos=P.touchPos(this.element,S.targetTouches)[0],this.moveTouch(S,this._lastPos))},this.touchend=S=>{S.targetTouches.length===0&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos){this.mouseRotate.reset(),this.mousePitch&&this.mousePitch.reset(),this.touchRotate.reset(),this.touchPitch&&this.touchPitch.reset(),delete this._startPos,delete this._lastPos,this.offTemp()},this._clickTolerance=10;const g=o.dragRotate._mouseRotate.getClickTolerance(),y=o.dragRotate._mousePitch.getClickTolerance();this.element=d,this.mouseRotate=Gd({clickTolerance:g,enable:!0}),this.touchRotate=(({enable:S,clickTolerance:A,bearingDegreesPerPixelMoved:M=.8})=>{const k=new Lu;return new Ri({clickTolerance:A,move:(F,N)=>({bearingDelta:(N.x-F.x)*M}),moveStateManager:k,enable:S,assignEvents:Hg})})({clickTolerance:g,enable:!0}),this.map=o,p&&(this.mousePitch=ba({clickTolerance:y,enable:!0}),this.touchPitch=(({enable:S,clickTolerance:A,pitchDegreesPerPixelMoved:M=-.5})=>{const k=new Lu;return new Ri({clickTolerance:A,move:(F,N)=>({pitchDelta:(N.y-F.y)*M}),moveStateManager:k,enable:S,assignEvents:Hg})})({clickTolerance:y,enable:!0})),P.addEventListener(d,"mousedown",this.mousedown),P.addEventListener(d,"touchstart",this.touchstart,{passive:!1}),P.addEventListener(d,"touchcancel",this.reset)}startMouse(o,d){this.mouseRotate.dragStart(o,d),this.mousePitch&&this.mousePitch.dragStart(o,d),P.disableDrag()}startTouch(o,d){this.touchRotate.dragStart(o,d),this.touchPitch&&this.touchPitch.dragStart(o,d),P.disableDrag()}moveMouse(o,d){const p=this.map,{bearingDelta:g}=this.mouseRotate.dragMove(o,d)||{};if(g&&p.setBearing(p.getBearing()+g),this.mousePitch){const{pitchDelta:y}=this.mousePitch.dragMove(o,d)||{};y&&p.setPitch(p.getPitch()+y)}}moveTouch(o,d){const p=this.map,{bearingDelta:g}=this.touchRotate.dragMove(o,d)||{};if(g&&p.setBearing(p.getBearing()+g),this.touchPitch){const{pitchDelta:y}=this.touchPitch.dragMove(o,d)||{};y&&p.setPitch(p.getPitch()+y)}}off(){const o=this.element;P.removeEventListener(o,"mousedown",this.mousedown),P.removeEventListener(o,"touchstart",this.touchstart,{passive:!1}),P.removeEventListener(window,"touchmove",this.touchmove,{passive:!1}),P.removeEventListener(window,"touchend",this.touchend),P.removeEventListener(o,"touchcancel",this.reset),this.offTemp()}offTemp(){P.enableDrag(),P.removeEventListener(window,"mousemove",this.mousemove),P.removeEventListener(window,"mouseup",this.mouseup),P.removeEventListener(window,"touchmove",this.touchmove,{passive:!1}),P.removeEventListener(window,"touchend",this.touchend)}}let Eo;function Xg(b,o,d){const p=new c.N(b.lng,b.lat);if(b=new c.N(b.lng,b.lat),o){const g=new c.N(b.lng-360,b.lat),y=new c.N(b.lng+360,b.lat),S=d.locationPoint(b).distSqr(o);d.locationPoint(g).distSqr(o)180;){const g=d.locationPoint(b);if(g.x>=0&&g.y>=0&&g.x<=d.width&&g.y<=d.height)break;b.lng>d.center.lng?b.lng-=360:b.lng+=360}return b.lng!==p.lng&&d.locationPoint(b).y>d.height/2-d.getHorizon()?b:p}const gf={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%)"};function Ao(b,o,d){const p=b.classList;for(const g in gf)p.remove(`maplibregl-${d}-anchor-${g}`);p.add(`maplibregl-${d}-anchor-${o}`)}class Si extends c.E{constructor(o){if(super(),this._onKeyPress=d=>{const p=d.code,g=d.charCode||d.keyCode;p!=="Space"&&p!=="Enter"&&g!==32&&g!==13||this.togglePopup()},this._onMapClick=d=>{const p=d.originalEvent.target,g=this._element;this._popup&&(p===g||g.contains(p))&&this.togglePopup()},this._update=d=>{var p;if(!this._map)return;const g=this._map.loaded()&&!this._map.isMoving();((d==null?void 0:d.type)==="terrain"||(d==null?void 0:d.type)==="render"&&!g)&&this._map.once("render",this._update),this._lngLat=this._map.transform.renderWorldCopies?Xg(this._lngLat,this._flatPos,this._map.transform):(p=this._lngLat)===null||p===void 0?void 0:p.wrap(),this._flatPos=this._pos=this._map.project(this._lngLat)._add(this._offset),this._map.terrain&&(this._flatPos=this._map.transform.locationPoint(this._lngLat)._add(this._offset));let y="";this._rotationAlignment==="viewport"||this._rotationAlignment==="auto"?y=`rotateZ(${this._rotation}deg)`:this._rotationAlignment==="map"&&(y=`rotateZ(${this._rotation-this._map.getBearing()}deg)`);let S="";this._pitchAlignment==="viewport"||this._pitchAlignment==="auto"?S="rotateX(0deg)":this._pitchAlignment==="map"&&(S=`rotateX(${this._map.getPitch()}deg)`),this._subpixelPositioning||d&&d.type!=="moveend"||(this._pos=this._pos.round()),P.setTransform(this._element,`${gf[this._anchor]} translate(${this._pos.x}px, ${this._pos.y}px) ${S} ${y}`),C.frameAsync(new AbortController).then(()=>{this._updateOpacity(d&&d.type==="moveend")}).catch(()=>{})},this._onMove=d=>{if(!this._isDragging){const p=this._clickTolerance||this._map._clickTolerance;this._isDragging=d.point.dist(this._pointerdownPos)>=p}this._isDragging&&(this._pos=d.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none",this._state==="pending"&&(this._state="active",this.fire(new c.k("dragstart"))),this.fire(new c.k("drag")))},this._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),this._state==="active"&&this.fire(new c.k("dragend")),this._state="inactive"},this._addDragHandler=d=>{this._element.contains(d.originalEvent.target)&&(d.preventDefault(),this._positionDelta=d.point.sub(this._pos).add(this._offset),this._pointerdownPos=d.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))},this._anchor=o&&o.anchor||"center",this._color=o&&o.color||"#3FB1CE",this._scale=o&&o.scale||1,this._draggable=o&&o.draggable||!1,this._clickTolerance=o&&o.clickTolerance||0,this._subpixelPositioning=o&&o.subpixelPositioning||!1,this._isDragging=!1,this._state="inactive",this._rotation=o&&o.rotation||0,this._rotationAlignment=o&&o.rotationAlignment||"auto",this._pitchAlignment=o&&o.pitchAlignment&&o.pitchAlignment!=="auto"?o.pitchAlignment:this._rotationAlignment,this.setOpacity(),this.setOpacity(o==null?void 0:o.opacity,o==null?void 0:o.opacityWhenCovered),o&&o.element)this._element=o.element,this._offset=c.P.convert(o&&o.offset||[0,0]);else{this._defaultMarker=!0,this._element=P.create("div");const d=P.createNS("http://www.w3.org/2000/svg","svg"),p=41,g=27;d.setAttributeNS(null,"display","block"),d.setAttributeNS(null,"height",`${p}px`),d.setAttributeNS(null,"width",`${g}px`),d.setAttributeNS(null,"viewBox",`0 0 ${g} ${p}`);const y=P.createNS("http://www.w3.org/2000/svg","g");y.setAttributeNS(null,"stroke","none"),y.setAttributeNS(null,"stroke-width","1"),y.setAttributeNS(null,"fill","none"),y.setAttributeNS(null,"fill-rule","evenodd");const S=P.createNS("http://www.w3.org/2000/svg","g");S.setAttributeNS(null,"fill-rule","nonzero");const A=P.createNS("http://www.w3.org/2000/svg","g");A.setAttributeNS(null,"transform","translate(3.0, 29.0)"),A.setAttributeNS(null,"fill","#000000");const M=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}];for(const ae of M){const me=P.createNS("http://www.w3.org/2000/svg","ellipse");me.setAttributeNS(null,"opacity","0.04"),me.setAttributeNS(null,"cx","10.5"),me.setAttributeNS(null,"cy","5.80029008"),me.setAttributeNS(null,"rx",ae.rx),me.setAttributeNS(null,"ry",ae.ry),A.appendChild(me)}const k=P.createNS("http://www.w3.org/2000/svg","g");k.setAttributeNS(null,"fill",this._color);const F=P.createNS("http://www.w3.org/2000/svg","path");F.setAttributeNS(null,"d","M27,13.5 C27,19.074644 20.250001,27.000002 14.75,34.500002 C14.016665,35.500004 12.983335,35.500004 12.25,34.500002 C6.7499993,27.000002 0,19.222562 0,13.5 C0,6.0441559 6.0441559,0 13.5,0 C20.955844,0 27,6.0441559 27,13.5 Z"),k.appendChild(F);const N=P.createNS("http://www.w3.org/2000/svg","g");N.setAttributeNS(null,"opacity","0.25"),N.setAttributeNS(null,"fill","#000000");const $=P.createNS("http://www.w3.org/2000/svg","path");$.setAttributeNS(null,"d","M13.5,0 C6.0441559,0 0,6.0441559 0,13.5 C0,19.222562 6.7499993,27 12.25,34.5 C13,35.522727 14.016664,35.500004 14.75,34.5 C20.250001,27 27,19.074644 27,13.5 C27,6.0441559 20.955844,0 13.5,0 Z M13.5,1 C20.415404,1 26,6.584596 26,13.5 C26,15.898657 24.495584,19.181431 22.220703,22.738281 C19.945823,26.295132 16.705119,30.142167 13.943359,33.908203 C13.743445,34.180814 13.612715,34.322738 13.5,34.441406 C13.387285,34.322738 13.256555,34.180814 13.056641,33.908203 C10.284481,30.127985 7.4148684,26.314159 5.015625,22.773438 C2.6163816,19.232715 1,15.953538 1,13.5 C1,6.584596 6.584596,1 13.5,1 Z"),N.appendChild($);const X=P.createNS("http://www.w3.org/2000/svg","g");X.setAttributeNS(null,"transform","translate(6.0, 7.0)"),X.setAttributeNS(null,"fill","#FFFFFF");const Q=P.createNS("http://www.w3.org/2000/svg","g");Q.setAttributeNS(null,"transform","translate(8.0, 8.0)");const re=P.createNS("http://www.w3.org/2000/svg","circle");re.setAttributeNS(null,"fill","#000000"),re.setAttributeNS(null,"opacity","0.25"),re.setAttributeNS(null,"cx","5.5"),re.setAttributeNS(null,"cy","5.5"),re.setAttributeNS(null,"r","5.4999962");const se=P.createNS("http://www.w3.org/2000/svg","circle");se.setAttributeNS(null,"fill","#FFFFFF"),se.setAttributeNS(null,"cx","5.5"),se.setAttributeNS(null,"cy","5.5"),se.setAttributeNS(null,"r","5.4999962"),Q.appendChild(re),Q.appendChild(se),S.appendChild(A),S.appendChild(k),S.appendChild(N),S.appendChild(X),S.appendChild(Q),d.appendChild(S),d.setAttributeNS(null,"height",p*this._scale+"px"),d.setAttributeNS(null,"width",g*this._scale+"px"),this._element.appendChild(d),this._offset=c.P.convert(o&&o.offset||[0,-14])}if(this._element.classList.add("maplibregl-marker"),this._element.addEventListener("dragstart",d=>{d.preventDefault()}),this._element.addEventListener("mousedown",d=>{d.preventDefault()}),Ao(this._element,this._anchor,"marker"),o&&o.className)for(const d of o.className.split(" "))this._element.classList.add(d);this._popup=null}addTo(o){return this.remove(),this._map=o,this._element.setAttribute("aria-label",o._getUIString("Marker.Title")),o.getCanvasContainer().appendChild(this._element),o.on("move",this._update),o.on("moveend",this._update),o.on("terrain",this._update),this.setDraggable(this._draggable),this._update(),this._map.on("click",this._onMapClick),this}remove(){return this._opacityTimeout&&(clearTimeout(this._opacityTimeout),delete this._opacityTimeout),this._map&&(this._map.off("click",this._onMapClick),this._map.off("move",this._update),this._map.off("moveend",this._update),this._map.off("terrain",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),delete this._map),P.remove(this._element),this._popup&&this._popup.remove(),this}getLngLat(){return this._lngLat}setLngLat(o){return this._lngLat=c.N.convert(o),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this}getElement(){return this._element}setPopup(o){if(this._popup&&(this._popup.remove(),this._popup=null,this._element.removeEventListener("keypress",this._onKeyPress),this._originalTabIndex||this._element.removeAttribute("tabindex")),o){if(!("offset"in o.options)){const g=Math.abs(13.5)/Math.SQRT2;o.options.offset=this._defaultMarker?{top:[0,0],"top-left":[0,0],"top-right":[0,0],bottom:[0,-38.1],"bottom-left":[g,-1*(38.1-13.5+g)],"bottom-right":[-g,-1*(38.1-13.5+g)],left:[13.5,-1*(38.1-13.5)],right:[-13.5,-1*(38.1-13.5)]}:this._offset}this._popup=o,this._originalTabIndex=this._element.getAttribute("tabindex"),this._originalTabIndex||this._element.setAttribute("tabindex","0"),this._element.addEventListener("keypress",this._onKeyPress)}return this}setSubpixelPositioning(o){return this._subpixelPositioning=o,this}getPopup(){return this._popup}togglePopup(){const o=this._popup;return this._element.style.opacity===this._opacityWhenCovered?this:o?(o.isOpen()?o.remove():(o.setLngLat(this._lngLat),o.addTo(this._map)),this):this}_updateOpacity(o=!1){var d,p;if(!(!((d=this._map)===null||d===void 0)&&d.terrain))return void(this._element.style.opacity!==this._opacity&&(this._element.style.opacity=this._opacity));if(o)this._opacityTimeout=null;else{if(this._opacityTimeout)return;this._opacityTimeout=setTimeout(()=>{this._opacityTimeout=null},100)}const g=this._map,y=g.terrain.depthAtPoint(this._pos),S=g.terrain.getElevationForLngLatZoom(this._lngLat,g.transform.tileZoom);if(g.transform.lngLatToCameraDepth(this._lngLat,S)-y<.006)return void(this._element.style.opacity=this._opacity);const A=-this._offset.y/g.transform._pixelPerMeter,M=Math.sin(g.getPitch()*Math.PI/180)*A,k=g.terrain.depthAtPoint(new c.P(this._pos.x,this._pos.y-this._offset.y)),F=g.transform.lngLatToCameraDepth(this._lngLat,S+M)-k>.006;!((p=this._popup)===null||p===void 0)&&p.isOpen()&&F&&this._popup.remove(),this._element.style.opacity=F?this._opacityWhenCovered:this._opacity}getOffset(){return this._offset}setOffset(o){return this._offset=c.P.convert(o),this._update(),this}addClassName(o){this._element.classList.add(o)}removeClassName(o){this._element.classList.remove(o)}toggleClassName(o){return this._element.classList.toggle(o)}setDraggable(o){return this._draggable=!!o,this._map&&(o?(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(o){return this._rotation=o||0,this._update(),this}getRotation(){return this._rotation}setRotationAlignment(o){return this._rotationAlignment=o||"auto",this._update(),this}getRotationAlignment(){return this._rotationAlignment}setPitchAlignment(o){return this._pitchAlignment=o&&o!=="auto"?o:this._rotationAlignment,this._update(),this}getPitchAlignment(){return this._pitchAlignment}setOpacity(o,d){return o===void 0&&d===void 0&&(this._opacity="1",this._opacityWhenCovered="0.2"),o!==void 0&&(this._opacity=o),d!==void 0&&(this._opacityWhenCovered=d),this._map&&this._updateOpacity(!0),this}}const zu={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0};let Ka=0,Ja=!1;const Zg={maxWidth:100,unit:"metric"};function mf(b,o,d){const p=d&&d.maxWidth||100,g=b._container.clientHeight/2,y=b.unproject([0,g]),S=b.unproject([p,g]),A=y.distanceTo(S);if(d&&d.unit==="imperial"){const M=3.2808*A;M>5280?mc(o,p,M/5280,b._getUIString("ScaleControl.Miles")):mc(o,p,M,b._getUIString("ScaleControl.Feet"))}else d&&d.unit==="nautical"?mc(o,p,A/1852,b._getUIString("ScaleControl.NauticalMiles")):A>=1e3?mc(o,p,A/1e3,b._getUIString("ScaleControl.Kilometers")):mc(o,p,A,b._getUIString("ScaleControl.Meters"))}function mc(b,o,d,p){const g=function(y){const S=Math.pow(10,`${Math.floor(y)}`.length-1);let A=y/S;return A=A>=10?10:A>=5?5:A>=3?3:A>=2?2:A>=1?1:function(M){const k=Math.pow(10,Math.ceil(-Math.log(M)/Math.LN10));return Math.round(M*k)/k}(A),S*A}(d);b.style.width=o*(g/d)+"px",b.innerHTML=`${g} ${p}`}const Ur={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px",subpixelPositioning:!1},Uu=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", ");function Et(b){if(b){if(typeof b=="number"){const o=Math.round(Math.abs(b)/Math.SQRT2);return{center:new c.P(0,0),top:new c.P(0,b),"top-left":new c.P(o,o),"top-right":new c.P(-o,o),bottom:new c.P(0,-b),"bottom-left":new c.P(o,-o),"bottom-right":new c.P(-o,-o),left:new c.P(b,0),right:new c.P(-b,0)}}if(b instanceof c.P||Array.isArray(b)){const o=c.P.convert(b);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:c.P.convert(b.center||[0,0]),top:c.P.convert(b.top||[0,0]),"top-left":c.P.convert(b["top-left"]||[0,0]),"top-right":c.P.convert(b["top-right"]||[0,0]),bottom:c.P.convert(b.bottom||[0,0]),"bottom-left":c.P.convert(b["bottom-left"]||[0,0]),"bottom-right":c.P.convert(b["bottom-right"]||[0,0]),left:c.P.convert(b.left||[0,0]),right:c.P.convert(b.right||[0,0])}}return Et(new c.P(0,0))}const Mt=_;h.AJAXError=c.bg,h.Evented=c.E,h.LngLat=c.N,h.MercatorCoordinate=c.Z,h.Point=c.P,h.addProtocol=c.bh,h.config=c.a,h.removeProtocol=c.bi,h.AttributionControl=Ya,h.BoxZoomHandler=Yd,h.CanvasSource=vt,h.CooperativeGesturesHandler=mr,h.DoubleClickZoomHandler=lf,h.DragPanHandler=Jn,h.DragRotateHandler=gr,h.EdgeInsets=ku,h.FullscreenControl=class extends c.E{constructor(b={}){super(),this._onFullscreenChange=()=>{var o;let d=window.document.fullscreenElement||window.document.mozFullScreenElement||window.document.webkitFullscreenElement||window.document.msFullscreenElement;for(;!((o=d==null?void 0:d.shadowRoot)===null||o===void 0)&&o.fullscreenElement;)d=d.shadowRoot.fullscreenElement;d===this._container!==this._fullscreen&&this._handleFullscreenChange()},this._onClickFullscreen=()=>{this._isFullscreen()?this._exitFullscreen():this._requestFullscreen()},this._fullscreen=!1,b&&b.container&&(b.container instanceof HTMLElement?this._container=b.container:c.w("Full screen control 'container' must be a DOM element.")),"onfullscreenchange"in document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in document&&(this._fullscreenchange="MSFullscreenChange")}onAdd(b){return this._map=b,this._container||(this._container=this._map.getContainer()),this._controlContainer=P.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._setupUI(),this._controlContainer}onRemove(){P.remove(this._controlContainer),this._map=null,window.document.removeEventListener(this._fullscreenchange,this._onFullscreenChange)}_setupUI(){const b=this._fullscreenButton=P.create("button","maplibregl-ctrl-fullscreen",this._controlContainer);P.create("span","maplibregl-ctrl-icon",b).setAttribute("aria-hidden","true"),b.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),window.document.addEventListener(this._fullscreenchange,this._onFullscreenChange)}_updateTitle(){const b=this._getTitle();this._fullscreenButton.setAttribute("aria-label",b),this._fullscreenButton.title=b}_getTitle(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")}_isFullscreen(){return this._fullscreen}_handleFullscreenChange(){this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("maplibregl-ctrl-shrink"),this._fullscreenButton.classList.toggle("maplibregl-ctrl-fullscreen"),this._updateTitle(),this._fullscreen?(this.fire(new c.k("fullscreenstart")),this._prevCooperativeGesturesEnabled=this._map.cooperativeGestures.isEnabled(),this._map.cooperativeGestures.disable()):(this.fire(new c.k("fullscreenend")),this._prevCooperativeGesturesEnabled&&this._map.cooperativeGestures.enable())}_exitFullscreen(){window.document.exitFullscreen?window.document.exitFullscreen():window.document.mozCancelFullScreen?window.document.mozCancelFullScreen():window.document.msExitFullscreen?window.document.msExitFullscreen():window.document.webkitCancelFullScreen?window.document.webkitCancelFullScreen():this._togglePseudoFullScreen()}_requestFullscreen(){this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen?this._container.webkitRequestFullscreen():this._togglePseudoFullScreen()}_togglePseudoFullScreen(){this._container.classList.toggle("maplibregl-pseudo-fullscreen"),this._handleFullscreenChange(),this._map.resize()}},h.GeoJSONSource=et,h.GeolocateControl=class extends c.E{constructor(b){super(),this._onSuccess=o=>{if(this._map){if(this._isOutOfMapMaxBounds(o))return this._setErrorState(),this.fire(new c.k("outofmaxbounds",o)),this._updateMarker(),void this._finish();if(this.options.trackUserLocation)switch(this._lastKnownPosition=o,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background");break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}this.options.showUserLocation&&this._watchState!=="OFF"&&this._updateMarker(o),this.options.trackUserLocation&&this._watchState!=="ACTIVE_LOCK"||this._updateCamera(o),this.options.showUserLocation&&this._dotElement.classList.remove("maplibregl-user-location-dot-stale"),this.fire(new c.k("geolocate",o)),this._finish()}},this._updateCamera=o=>{const d=new c.N(o.coords.longitude,o.coords.latitude),p=o.coords.accuracy,g=this._map.getBearing(),y=c.e({bearing:g},this.options.fitBoundsOptions),S=le.fromLngLat(d,p);this._map.fitBounds(S,y,{geolocateSource:!0})},this._updateMarker=o=>{if(o){const d=new c.N(o.coords.longitude,o.coords.latitude);this._accuracyCircleMarker.setLngLat(d).addTo(this._map),this._userLocationDotMarker.setLngLat(d).addTo(this._map),this._accuracy=o.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},this._onZoom=()=>{this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},this._onError=o=>{if(this._map){if(this.options.trackUserLocation)if(o.code===1){this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;const d=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=d,this._geolocateButton.setAttribute("aria-label",d),this._geolocationWatchID!==void 0&&this._clearWatch()}else{if(o.code===3&&Ja)return;this._setErrorState()}this._watchState!=="OFF"&&this.options.showUserLocation&&this._dotElement.classList.add("maplibregl-user-location-dot-stale"),this.fire(new c.k("error",o)),this._finish()}},this._finish=()=>{this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},this._setupUI=()=>{this._map&&(this._container.addEventListener("contextmenu",o=>o.preventDefault()),this._geolocateButton=P.create("button","maplibregl-ctrl-geolocate",this._container),P.create("span","maplibregl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden","true"),this._geolocateButton.type="button",this._geolocateButton.disabled=!0)},this._finishSetupUI=o=>{if(this._map){if(o===!1){c.w("Geolocation support is not available so the GeolocateControl will be disabled.");const d=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=d,this._geolocateButton.setAttribute("aria-label",d)}else{const d=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.disabled=!1,this._geolocateButton.title=d,this._geolocateButton.setAttribute("aria-label",d)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=P.create("div","maplibregl-user-location-dot"),this._userLocationDotMarker=new Si({element:this._dotElement}),this._circleElement=P.create("div","maplibregl-user-location-accuracy-circle"),this._accuracyCircleMarker=new Si({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",()=>this.trigger()),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",d=>{d.geolocateSource||this._watchState!=="ACTIVE_LOCK"||d.originalEvent&&d.originalEvent.type==="resize"||(this._watchState="BACKGROUND",this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this.fire(new c.k("trackuserlocationend")),this.fire(new c.k("userlocationlostfocus")))})}},this.options=c.e({},zu,b)}onAdd(b){return this._map=b,this._container=P.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._setupUI(),function(){return c._(this,arguments,void 0,function*(o=!1){if(Eo!==void 0&&!o)return Eo;if(window.navigator.permissions===void 0)return Eo=!!window.navigator.geolocation,Eo;try{Eo=(yield window.navigator.permissions.query({name:"geolocation"})).state!=="denied"}catch{Eo=!!window.navigator.geolocation}return Eo})}().then(o=>this._finishSetupUI(o)),this._container}onRemove(){this._geolocationWatchID!==void 0&&(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(),P.remove(this._container),this._map.off("zoom",this._onZoom),this._map=void 0,Ka=0,Ja=!1}_isOutOfMapMaxBounds(b){const o=this._map.getMaxBounds(),d=b.coords;return o&&(d.longitudeo.getEast()||d.latitudeo.getNorth())}_setErrorState(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting");break;case"ACTIVE_ERROR":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}}_updateCircleRadius(){const b=this._map.getBounds(),o=b.getSouthEast(),d=b.getNorthEast(),p=o.distanceTo(d),g=Math.ceil(this._accuracy/(p/this._map._container.clientHeight)*2);this._circleElement.style.width=`${g}px`,this._circleElement.style.height=`${g}px`}trigger(){if(!this._setup)return c.w("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 c.k("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":Ka--,Ja=!1,this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this.fire(new c.k("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new c.k("trackuserlocationstart")),this.fire(new c.k("userlocationfocus"));break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"OFF":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}if(this._watchState==="OFF"&&this._geolocationWatchID!==void 0)this._clearWatch();else if(this._geolocationWatchID===void 0){let b;this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),Ka++,Ka>1?(b={maximumAge:6e5,timeout:0},Ja=!0):(b=this.options.positionOptions,Ja=!1),this._geolocationWatchID=window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,b)}}else window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0}_clearWatch(){window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)}},h.Hash=lc,h.ImageSource=pt,h.KeyboardHandler=rf,h.LngLatBounds=le,h.LogoControl=Lr,h.Map=class extends tb{constructor(b){c.be.mark(c.bf.create);const o=Object.assign(Object.assign({},ib),b);if(o.minZoom!=null&&o.maxZoom!=null&&o.minZoom>o.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(o.minPitch!=null&&o.maxPitch!=null&&o.minPitch>o.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(o.minPitch!=null&&o.minPitch<0)throw new Error("minPitch must be greater than or equal to 0");if(o.maxPitch!=null&&o.maxPitch>85)throw new Error("maxPitch must be less than or equal to 85");if(super(new Wd(o.minZoom,o.maxZoom,o.minPitch,o.maxPitch,o.renderWorldCopies),{bearingSnap:o.bearingSnap}),this._idleTriggered=!1,this._crossFadingFactor=1,this._renderTaskQueue=new mt,this._controls=[],this._mapId=c.a4(),this._contextLost=d=>{d.preventDefault(),this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this.fire(new c.k("webglcontextlost",{originalEvent:d}))},this._contextRestored=d=>{this._setupPainter(),this.resize(),this._update(),this.fire(new c.k("webglcontextrestored",{originalEvent:d}))},this._onMapScroll=d=>{if(d.target===this._container)return this._container.scrollTop=0,this._container.scrollLeft=0,!1},this._onWindowOnline=()=>{this._update()},this._interactive=o.interactive,this._maxTileCacheSize=o.maxTileCacheSize,this._maxTileCacheZoomLevels=o.maxTileCacheZoomLevels,this._failIfMajorPerformanceCaveat=o.failIfMajorPerformanceCaveat===!0,this._preserveDrawingBuffer=o.preserveDrawingBuffer===!0,this._antialias=o.antialias===!0,this._trackResize=o.trackResize===!0,this._bearingSnap=o.bearingSnap,this._refreshExpiredTiles=o.refreshExpiredTiles===!0,this._fadeDuration=o.fadeDuration,this._crossSourceCollisions=o.crossSourceCollisions===!0,this._collectResourceTiming=o.collectResourceTiming===!0,this._locale=Object.assign(Object.assign({},ut),o.locale),this._clickTolerance=o.clickTolerance,this._overridePixelRatio=o.pixelRatio,this._maxCanvasSize=o.maxCanvasSize,this.transformCameraUpdate=o.transformCameraUpdate,this.cancelPendingTileRequestsWhileZooming=o.cancelPendingTileRequestsWhileZooming===!0,this._imageQueueHandle=pe.addThrottleControl(()=>this.isMoving()),this._requestManager=new Pe(o.transformRequest),typeof o.container=="string"){if(this._container=document.getElementById(o.container),!this._container)throw new Error(`Container '${o.container}' not found.`)}else{if(!(o.container instanceof HTMLElement))throw new Error("Invalid type: 'container' must be a String or HTMLElement.");this._container=o.container}if(o.maxBounds&&this.setMaxBounds(o.maxBounds),this._setupContainer(),this._setupPainter(),this.on("move",()=>this._update(!1)).on("moveend",()=>this._update(!1)).on("zoom",()=>this._update(!0)).on("terrain",()=>{this.painter.terrainFacilitator.dirty=!0,this._update(!0)}).once("idle",()=>{this._idleTriggered=!0}),typeof window<"u"){addEventListener("online",this._onWindowOnline,!1);let d=!1;const p=Ou(g=>{this._trackResize&&!this._removed&&this.resize(g)._update()},50);this._resizeObserver=new ResizeObserver(g=>{d?p(g):d=!0}),this._resizeObserver.observe(this._container)}this.handlers=new eb(this,o),this._hash=o.hash&&new lc(typeof o.hash=="string"&&o.hash||void 0).addTo(this),this._hash&&this._hash._onHashChange()||(this.jumpTo({center:o.center,zoom:o.zoom,bearing:o.bearing,pitch:o.pitch}),o.bounds&&(this.resize(),this.fitBounds(o.bounds,c.e({},o.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=o.localIdeographFontFamily,this._validateStyle=o.validateStyle,o.style&&this.setStyle(o.style,{localIdeographFontFamily:o.localIdeographFontFamily}),o.attributionControl&&this.addControl(new Ya(typeof o.attributionControl=="boolean"?void 0:o.attributionControl)),o.maplibreLogo&&this.addControl(new Lr,o.logoPosition),this.on("style.load",()=>{this.transform.unmodified&&this.jumpTo(this.style.stylesheet)}),this.on("data",d=>{this._update(d.dataType==="style"),this.fire(new c.k(`${d.dataType}data`,d))}),this.on("dataloading",d=>{this.fire(new c.k(`${d.dataType}dataloading`,d))}),this.on("dataabort",d=>{this.fire(new c.k("sourcedataabort",d))})}_getMapId(){return this._mapId}addControl(b,o){if(o===void 0&&(o=b.getDefaultPosition?b.getDefaultPosition():"top-right"),!b||!b.onAdd)return this.fire(new c.j(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));const d=b.onAdd(this);this._controls.push(b);const p=this._controlPositions[o];return o.indexOf("bottom")!==-1?p.insertBefore(d,p.firstChild):p.appendChild(d),this}removeControl(b){if(!b||!b.onRemove)return this.fire(new c.j(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));const o=this._controls.indexOf(b);return o>-1&&this._controls.splice(o,1),b.onRemove(this),this}hasControl(b){return this._controls.indexOf(b)>-1}calculateCameraOptionsFromTo(b,o,d,p){return p==null&&this.terrain&&(p=this.terrain.getElevationForLngLatZoom(d,this.transform.tileZoom)),super.calculateCameraOptionsFromTo(b,o,d,p)}resize(b){var o;const d=this._containerDimensions(),p=d[0],g=d[1],y=this._getClampedPixelRatio(p,g);if(this._resizeCanvas(p,g,y),this.painter.resize(p,g,y),this.painter.overLimit()){const A=this.painter.context.gl;this._maxCanvasSize=[A.drawingBufferWidth,A.drawingBufferHeight];const M=this._getClampedPixelRatio(p,g);this._resizeCanvas(p,g,M),this.painter.resize(p,g,M)}this.transform.resize(p,g),(o=this._requestedCameraState)===null||o===void 0||o.resize(p,g);const S=!this._moving;return S&&(this.stop(),this.fire(new c.k("movestart",b)).fire(new c.k("move",b))),this.fire(new c.k("resize",b)),S&&this.fire(new c.k("moveend",b)),this}_getClampedPixelRatio(b,o){const{0:d,1:p}=this._maxCanvasSize,g=this.getPixelRatio(),y=b*g,S=o*g;return Math.min(y>d?d/y:1,S>p?p/S:1)*g}getPixelRatio(){var b;return(b=this._overridePixelRatio)!==null&&b!==void 0?b:devicePixelRatio}setPixelRatio(b){this._overridePixelRatio=b,this.resize()}getBounds(){return this.transform.getBounds()}getMaxBounds(){return this.transform.getMaxBounds()}setMaxBounds(b){return this.transform.setMaxBounds(le.convert(b)),this._update()}setMinZoom(b){if((b=b??-2)>=-2&&b<=this.transform.maxZoom)return this.transform.minZoom=b,this._update(),this.getZoom()=this.transform.minZoom)return this.transform.maxZoom=b,this._update(),this.getZoom()>b&&this.setZoom(b),this;throw new Error("maxZoom must be greater than the current minZoom")}getMaxZoom(){return this.transform.maxZoom}setMinPitch(b){if((b=b??0)<0)throw new Error("minPitch must be greater than or equal to 0");if(b>=0&&b<=this.transform.maxPitch)return this.transform.minPitch=b,this._update(),this.getPitch()85)throw new Error("maxPitch must be less than or equal to 85");if(b>=this.transform.minPitch)return this.transform.maxPitch=b,this._update(),this.getPitch()>b&&this.setPitch(b),this;throw new Error("maxPitch must be greater than the current minPitch")}getMaxPitch(){return this.transform.maxPitch}getRenderWorldCopies(){return this.transform.renderWorldCopies}setRenderWorldCopies(b){return this.transform.renderWorldCopies=b,this._update()}project(b){return this.transform.locationPoint(c.N.convert(b),this.style&&this.terrain)}unproject(b){return this.transform.pointLocation(c.P.convert(b),this.terrain)}isMoving(){var b;return this._moving||((b=this.handlers)===null||b===void 0?void 0:b.isMoving())}isZooming(){var b;return this._zooming||((b=this.handlers)===null||b===void 0?void 0:b.isZooming())}isRotating(){var b;return this._rotating||((b=this.handlers)===null||b===void 0?void 0:b.isRotating())}_createDelegatedListener(b,o,d){if(b==="mouseenter"||b==="mouseover"){let p=!1;return{layer:o,listener:d,delegates:{mousemove:y=>{const S=this.getLayer(o)?this.queryRenderedFeatures(y.point,{layers:[o]}):[];S.length?p||(p=!0,d.call(this,new rn(b,this,y.originalEvent,{features:S}))):p=!1},mouseout:()=>{p=!1}}}}if(b==="mouseleave"||b==="mouseout"){let p=!1;return{layer:o,listener:d,delegates:{mousemove:S=>{(this.getLayer(o)?this.queryRenderedFeatures(S.point,{layers:[o]}):[]).length?p=!0:p&&(p=!1,d.call(this,new rn(b,this,S.originalEvent)))},mouseout:S=>{p&&(p=!1,d.call(this,new rn(b,this,S.originalEvent)))}}}}{const p=g=>{const y=this.getLayer(o)?this.queryRenderedFeatures(g.point,{layers:[o]}):[];y.length&&(g.features=y,d.call(this,g),delete g.features)};return{layer:o,listener:d,delegates:{[b]:p}}}}on(b,o,d){if(d===void 0)return super.on(b,o);const p=this._createDelegatedListener(b,o,d);this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[b]=this._delegatedListeners[b]||[],this._delegatedListeners[b].push(p);for(const g in p.delegates)this.on(g,p.delegates[g]);return this}once(b,o,d){if(d===void 0)return super.once(b,o);const p=this._createDelegatedListener(b,o,d);for(const g in p.delegates)this.once(g,p.delegates[g]);return this}off(b,o,d){return d===void 0?super.off(b,o):(this._delegatedListeners&&this._delegatedListeners[b]&&(p=>{const g=this._delegatedListeners[b];for(let y=0;ythis._updateStyle(b,o));const d=this.style&&o.transformStyle?this.style.serialize():void 0;return this.style&&(this.style.setEventedParent(null),this.style._remove(!b)),b?(this.style=new Kn(this,o||{}),this.style.setEventedParent(this,{style:this.style}),typeof b=="string"?this.style.loadURL(b,o,d):this.style.loadJSON(b,o,d),this):(delete this.style,this)}_lazyInitEmptyStyle(){this.style||(this.style=new Kn(this,{}),this.style.setEventedParent(this,{style:this.style}),this.style.loadEmpty())}_diffStyle(b,o){if(typeof b=="string"){const d=this._requestManager.transformRequest(b,"Style");c.h(d,new AbortController).then(p=>{this._updateDiff(p.data,o)}).catch(p=>{p&&this.fire(new c.j(p))})}else typeof b=="object"&&this._updateDiff(b,o)}_updateDiff(b,o){try{this.style.setState(b,o)&&this._update(!0)}catch(d){c.w(`Unable to perform style diff: ${d.message||d.error||d}. Rebuilding the style from scratch.`),this._updateStyle(b,o)}}getStyle(){if(this.style)return this.style.serialize()}isStyleLoaded(){return this.style?this.style.loaded():c.w("There is no style added to the map.")}addSource(b,o){return this._lazyInitEmptyStyle(),this.style.addSource(b,o),this._update(!0)}isSourceLoaded(b){const o=this.style&&this.style.sourceCaches[b];if(o!==void 0)return o.loaded();this.fire(new c.j(new Error(`There is no source with ID '${b}'`)))}setTerrain(b){if(this.style._checkLoaded(),this._terrainDataCallback&&this.style.off("data",this._terrainDataCallback),b){const o=this.style.sourceCaches[b.source];if(!o)throw new Error(`cannot load terrain, because there exists no source with ID: ${b.source}`);this.terrain===null&&o.reload();for(const d in this.style._layers){const p=this.style._layers[d];p.type==="hillshade"&&p.source===b.source&&c.w("You are using the same source for a hillshade layer and for 3D terrain. Please consider using two separate sources to improve rendering quality.")}this.terrain=new $g(this.painter,o,b),this.painter.renderToTexture=new Wg(this.painter,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._terrainDataCallback=d=>{d.dataType==="style"?this.terrain.sourceCache.freeRtt():d.dataType==="source"&&d.tile&&(d.sourceId!==b.source||this._elevationFreeze||(this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom)),this.terrain.sourceCache.freeRtt(d.tile.tileID))},this.style.on("data",this._terrainDataCallback)}else this.terrain&&this.terrain.sourceCache.destruct(),this.terrain=null,this.painter.renderToTexture&&this.painter.renderToTexture.destruct(),this.painter.renderToTexture=null,this.transform.minElevationForCurrentTile=0,this.transform.elevation=0;return this.fire(new c.k("terrain",{terrain:b})),this}getTerrain(){var b,o;return(o=(b=this.terrain)===null||b===void 0?void 0:b.options)!==null&&o!==void 0?o:null}areTilesLoaded(){const b=this.style&&this.style.sourceCaches;for(const o in b){const d=b[o]._tiles;for(const p in d){const g=d[p];if(g.state!=="loaded"&&g.state!=="errored")return!1}}return!0}removeSource(b){return this.style.removeSource(b),this._update(!0)}getSource(b){return this.style.getSource(b)}addImage(b,o,d={}){const{pixelRatio:p=1,sdf:g=!1,stretchX:y,stretchY:S,content:A,textFitWidth:M,textFitHeight:k}=d;if(this._lazyInitEmptyStyle(),!(o instanceof HTMLImageElement||c.b(o))){if(o.width===void 0||o.height===void 0)return this.fire(new c.j(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:F,height:N,data:$}=o,X=o;return this.style.addImage(b,{data:new c.R({width:F,height:N},new Uint8Array($)),pixelRatio:p,stretchX:y,stretchY:S,content:A,textFitWidth:M,textFitHeight:k,sdf:g,version:0,userImage:X}),X.onAdd&&X.onAdd(this,b),this}}{const{width:F,height:N,data:$}=C.getImageData(o);this.style.addImage(b,{data:new c.R({width:F,height:N},$),pixelRatio:p,stretchX:y,stretchY:S,content:A,textFitWidth:M,textFitHeight:k,sdf:g,version:0})}}updateImage(b,o){const d=this.style.getImage(b);if(!d)return this.fire(new c.j(new Error("The map has no image with that id. If you are adding a new image use `map.addImage(...)` instead.")));const p=o instanceof HTMLImageElement||c.b(o)?C.getImageData(o):o,{width:g,height:y,data:S}=p;if(g===void 0||y===void 0)return this.fire(new c.j(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`")));if(g!==d.data.width||y!==d.data.height)return this.fire(new c.j(new Error("The width and height of the updated image must be that same as the previous version of the image")));const A=!(o instanceof HTMLImageElement||c.b(o));return d.data.replace(S,A),this.style.updateImage(b,d),this}getImage(b){return this.style.getImage(b)}hasImage(b){return b?!!this.style.getImage(b):(this.fire(new c.j(new Error("Missing required image id"))),!1)}removeImage(b){this.style.removeImage(b)}loadImage(b){return pe.getImage(this._requestManager.transformRequest(b,"Image"),new AbortController)}listImages(){return this.style.listImages()}addLayer(b,o){return this._lazyInitEmptyStyle(),this.style.addLayer(b,o),this._update(!0)}moveLayer(b,o){return this.style.moveLayer(b,o),this._update(!0)}removeLayer(b){return this.style.removeLayer(b),this._update(!0)}getLayer(b){return this.style.getLayer(b)}getLayersOrder(){return this.style.getLayersOrder()}setLayerZoomRange(b,o,d){return this.style.setLayerZoomRange(b,o,d),this._update(!0)}setFilter(b,o,d={}){return this.style.setFilter(b,o,d),this._update(!0)}getFilter(b){return this.style.getFilter(b)}setPaintProperty(b,o,d,p={}){return this.style.setPaintProperty(b,o,d,p),this._update(!0)}getPaintProperty(b,o){return this.style.getPaintProperty(b,o)}setLayoutProperty(b,o,d,p={}){return this.style.setLayoutProperty(b,o,d,p),this._update(!0)}getLayoutProperty(b,o){return this.style.getLayoutProperty(b,o)}setGlyphs(b,o={}){return this._lazyInitEmptyStyle(),this.style.setGlyphs(b,o),this._update(!0)}getGlyphs(){return this.style.getGlyphsUrl()}addSprite(b,o,d={}){return this._lazyInitEmptyStyle(),this.style.addSprite(b,o,d,p=>{p||this._update(!0)}),this}removeSprite(b){return this._lazyInitEmptyStyle(),this.style.removeSprite(b),this._update(!0)}getSprite(){return this.style.getSprite()}setSprite(b,o={}){return this._lazyInitEmptyStyle(),this.style.setSprite(b,o,d=>{d||this._update(!0)}),this}setLight(b,o={}){return this._lazyInitEmptyStyle(),this.style.setLight(b,o),this._update(!0)}getLight(){return this.style.getLight()}setSky(b){return this._lazyInitEmptyStyle(),this.style.setSky(b),this._update(!0)}getSky(){return this.style.getSky()}setFeatureState(b,o){return this.style.setFeatureState(b,o),this._update()}removeFeatureState(b,o){return this.style.removeFeatureState(b,o),this._update()}getFeatureState(b){return this.style.getFeatureState(b)}getContainer(){return this._container}getCanvasContainer(){return this._canvasContainer}getCanvas(){return this._canvas}_containerDimensions(){let b=0,o=0;return this._container&&(b=this._container.clientWidth||400,o=this._container.clientHeight||300),[b,o]}_setupContainer(){const b=this._container;b.classList.add("maplibregl-map");const o=this._canvasContainer=P.create("div","maplibregl-canvas-container",b);this._interactive&&o.classList.add("maplibregl-interactive"),this._canvas=P.create("canvas","maplibregl-canvas",o),this._canvas.addEventListener("webglcontextlost",this._contextLost,!1),this._canvas.addEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.setAttribute("tabindex",this._interactive?"0":"-1"),this._canvas.setAttribute("aria-label",this._getUIString("Map.Title")),this._canvas.setAttribute("role","region");const d=this._containerDimensions(),p=this._getClampedPixelRatio(d[0],d[1]);this._resizeCanvas(d[0],d[1],p);const g=this._controlContainer=P.create("div","maplibregl-control-container",b),y=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach(S=>{y[S]=P.create("div",`maplibregl-ctrl-${S} `,g)}),this._container.addEventListener("scroll",this._onMapScroll,!1)}_resizeCanvas(b,o,d){this._canvas.width=Math.floor(d*b),this._canvas.height=Math.floor(d*o),this._canvas.style.width=`${b}px`,this._canvas.style.height=`${o}px`}_setupPainter(){const b={alpha:!0,stencil:!0,depth:!0,failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1};let o=null;this._canvas.addEventListener("webglcontextcreationerror",p=>{o={requestedAttributes:b},p&&(o.statusMessage=p.statusMessage,o.type=p.type)},{once:!0});const d=this._canvas.getContext("webgl2",b)||this._canvas.getContext("webgl",b);if(!d){const p="Failed to initialize WebGL";throw o?(o.message=p,new Error(JSON.stringify(o))):new Error(p)}this.painter=new Ng(d,this.transform),B.testSupport(d)}loaded(){return!this._styleDirty&&!this._sourcesDirty&&!!this.style&&this.style.loaded()}_update(b){return this.style&&this.style._loaded?(this._styleDirty=this._styleDirty||b,this._sourcesDirty=!0,this.triggerRepaint(),this):this}_requestRenderFrame(b){return this._update(),this._renderTaskQueue.add(b)}_cancelRenderFrame(b){this._renderTaskQueue.remove(b)}_render(b){const o=this._idleTriggered?this._fadeDuration:0;if(this.painter.context.setDirty(),this.painter.setBaseState(),this._renderTaskQueue.run(b),this._removed)return;let d=!1;if(this.style&&this._styleDirty){this._styleDirty=!1;const g=this.transform.zoom,y=C.now();this.style.zoomHistory.update(g,y);const S=new c.a9(g,{now:y,fadeDuration:o,zoomHistory:this.style.zoomHistory,transition:this.style.getTransition()}),A=S.crossFadingFactor();A===1&&A===this._crossFadingFactor||(d=!0,this._crossFadingFactor=A),this.style.update(S)}this.style&&this._sourcesDirty&&(this._sourcesDirty=!1,this.style._updateSources(this.transform)),this.terrain?(this.terrain.sourceCache.update(this.transform,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._elevationFreeze||(this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom))):(this.transform.minElevationForCurrentTile=0,this.transform.elevation=0),this._placementDirty=this.style&&this.style._updatePlacement(this.painter.transform,this.showCollisionBoxes,o,this._crossSourceCollisions),this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showOverdrawInspector:this._showOverdrawInspector,rotating:this.isRotating(),zooming:this.isZooming(),moving:this.isMoving(),fadeDuration:o,showPadding:this.showPadding}),this.fire(new c.k("render")),this.loaded()&&!this._loaded&&(this._loaded=!0,c.be.mark(c.bf.load),this.fire(new c.k("load"))),this.style&&(this.style.hasTransitions()||d)&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles();const p=this._sourcesDirty||this._styleDirty||this._placementDirty;return p||this._repaint?this.triggerRepaint():!this.isMoving()&&this.loaded()&&this.fire(new c.k("idle")),!this._loaded||this._fullyLoaded||p||(this._fullyLoaded=!0,c.be.mark(c.bf.fullLoad)),this}redraw(){return this.style&&(this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._render(0)),this}remove(){var b;this._hash&&this._hash.remove();for(const d of this._controls)d.onRemove(this);this._controls=[],this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._renderTaskQueue.clear(),this.painter.destroy(),this.handlers.destroy(),delete this.handlers,this.setStyle(null),typeof window<"u"&&removeEventListener("online",this._onWindowOnline,!1),pe.removeThrottleControl(this._imageQueueHandle),(b=this._resizeObserver)===null||b===void 0||b.disconnect();const o=this.painter.context.gl.getExtension("WEBGL_lose_context");o!=null&&o.loseContext&&o.loseContext(),this._canvas.removeEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.removeEventListener("webglcontextlost",this._contextLost,!1),P.remove(this._canvasContainer),P.remove(this._controlContainer),this._container.classList.remove("maplibregl-map"),c.be.clearMetrics(),this._removed=!0,this.fire(new c.k("remove"))}triggerRepaint(){this.style&&!this._frameRequest&&(this._frameRequest=new AbortController,C.frameAsync(this._frameRequest).then(b=>{c.be.frame(b),this._frameRequest=null,this._render(b)}).catch(()=>{}))}get showTileBoundaries(){return!!this._showTileBoundaries}set showTileBoundaries(b){this._showTileBoundaries!==b&&(this._showTileBoundaries=b,this._update())}get showPadding(){return!!this._showPadding}set showPadding(b){this._showPadding!==b&&(this._showPadding=b,this._update())}get showCollisionBoxes(){return!!this._showCollisionBoxes}set showCollisionBoxes(b){this._showCollisionBoxes!==b&&(this._showCollisionBoxes=b,b?this.style._generateCollisionBoxes():this._update())}get showOverdrawInspector(){return!!this._showOverdrawInspector}set showOverdrawInspector(b){this._showOverdrawInspector!==b&&(this._showOverdrawInspector=b,this._update())}get repaint(){return!!this._repaint}set repaint(b){this._repaint!==b&&(this._repaint=b,this.triggerRepaint())}get vertices(){return!!this._vertices}set vertices(b){this._vertices=b,this._update()}get version(){return ff}getCameraTargetElevation(){return this.transform.elevation}},h.MapMouseEvent=rn,h.MapTouchEvent=cc,h.MapWheelEvent=Xd,h.Marker=Si,h.NavigationControl=class{constructor(b){this._updateZoomButtons=()=>{const o=this._map.getZoom(),d=o===this._map.getMaxZoom(),p=o===this._map.getMinZoom();this._zoomInButton.disabled=d,this._zoomOutButton.disabled=p,this._zoomInButton.setAttribute("aria-disabled",d.toString()),this._zoomOutButton.setAttribute("aria-disabled",p.toString())},this._rotateCompassArrow=()=>{const o=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._compassIcon.style.transform=o},this._setButtonTitle=(o,d)=>{const p=this._map._getUIString(`NavigationControl.${d}`);o.title=p,o.setAttribute("aria-label",p)},this.options=c.e({},pf,b),this._container=P.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._container.addEventListener("contextmenu",o=>o.preventDefault()),this.options.showZoom&&(this._zoomInButton=this._createButton("maplibregl-ctrl-zoom-in",o=>this._map.zoomIn({},{originalEvent:o})),P.create("span","maplibregl-ctrl-icon",this._zoomInButton).setAttribute("aria-hidden","true"),this._zoomOutButton=this._createButton("maplibregl-ctrl-zoom-out",o=>this._map.zoomOut({},{originalEvent:o})),P.create("span","maplibregl-ctrl-icon",this._zoomOutButton).setAttribute("aria-hidden","true")),this.options.showCompass&&(this._compass=this._createButton("maplibregl-ctrl-compass",o=>{this.options.visualizePitch?this._map.resetNorthPitch({},{originalEvent:o}):this._map.resetNorth({},{originalEvent:o})}),this._compassIcon=P.create("span","maplibregl-ctrl-icon",this._compass),this._compassIcon.setAttribute("aria-hidden","true"))}onAdd(b){return this._map=b,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 qg(this._map,this._compass,this.options.visualizePitch)),this._container}onRemove(){P.remove(this._container),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(b,o){const d=P.create("button",b,this._container);return d.type="button",d.addEventListener("click",o),d}},h.Popup=class extends c.E{constructor(b){super(),this.remove=()=>(this._content&&P.remove(this._content),this._container&&(P.remove(this._container),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),this._map._canvasContainer.classList.remove("maplibregl-track-pointer"),delete this._map,this.fire(new c.k("close"))),this),this._onMouseUp=o=>{this._update(o.point)},this._onMouseMove=o=>{this._update(o.point)},this._onDrag=o=>{this._update(o.point)},this._update=o=>{var d;if(!this._map||!this._lngLat&&!this._trackPointer||!this._content)return;if(!this._container){if(this._container=P.create("div","maplibregl-popup",this._map.getContainer()),this._tip=P.create("div","maplibregl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className)for(const A of this.options.className.split(" "))this._container.classList.add(A);this._closeButton&&this._closeButton.setAttribute("aria-label",this._map._getUIString("Popup.Close")),this._trackPointer&&this._container.classList.add("maplibregl-popup-track-pointer")}if(this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._lngLat=this._map.transform.renderWorldCopies&&!this._trackPointer?Xg(this._lngLat,this._flatPos,this._map.transform):(d=this._lngLat)===null||d===void 0?void 0:d.wrap(),this._trackPointer&&!o)return;const p=this._flatPos=this._pos=this._trackPointer&&o?o:this._map.project(this._lngLat);this._map.terrain&&(this._flatPos=this._trackPointer&&o?o:this._map.transform.locationPoint(this._lngLat));let g=this.options.anchor;const y=Et(this.options.offset);if(!g){const A=this._container.offsetWidth,M=this._container.offsetHeight;let k;k=p.y+y.bottom.ythis._map.transform.height-M?["bottom"]:[],p.xthis._map.transform.width-A/2&&k.push("right"),g=k.length===0?"bottom":k.join("-")}let S=p.add(y[g]);this.options.subpixelPositioning||(S=S.round()),P.setTransform(this._container,`${gf[g]} translate(${S.x}px,${S.y}px)`),Ao(this._container,g,"popup")},this._onClose=()=>{this.remove()},this.options=c.e(Object.create(Ur),b)}addTo(b){return this._map&&this.remove(),this._map=b,this.options.closeOnClick&&this._map.on("click",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._container&&this._container.classList.add("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer")):this._map.on("move",this._update),this.fire(new c.k("open")),this}isOpen(){return!!this._map}getLngLat(){return this._lngLat}setLngLat(b){return this._lngLat=c.N.convert(b),this._pos=null,this._flatPos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._container&&this._container.classList.remove("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.remove("maplibregl-track-pointer")),this}trackPointer(){return this._trackPointer=!0,this._pos=null,this._flatPos=null,this._update(),this._map&&(this._map.off("move",this._update),this._map.on("mousemove",this._onMouseMove),this._map.on("drag",this._onDrag),this._container&&this._container.classList.add("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer")),this}getElement(){return this._container}setText(b){return this.setDOMContent(document.createTextNode(b))}setHTML(b){const o=document.createDocumentFragment(),d=document.createElement("body");let p;for(d.innerHTML=b;p=d.firstChild,p;)o.appendChild(p);return this.setDOMContent(o)}getMaxWidth(){var b;return(b=this._container)===null||b===void 0?void 0:b.style.maxWidth}setMaxWidth(b){return this.options.maxWidth=b,this._update(),this}setDOMContent(b){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=P.create("div","maplibregl-popup-content",this._container);return this._content.appendChild(b),this._createCloseButton(),this._update(),this._focusFirstElement(),this}addClassName(b){return this._container&&this._container.classList.add(b),this}removeClassName(b){return this._container&&this._container.classList.remove(b),this}setOffset(b){return this.options.offset=b,this._update(),this}toggleClassName(b){if(this._container)return this._container.classList.toggle(b)}setSubpixelPositioning(b){this.options.subpixelPositioning=b}_createCloseButton(){this.options.closeButton&&(this._closeButton=P.create("button","maplibregl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.innerHTML="×",this._closeButton.addEventListener("click",this._onClose))}_focusFirstElement(){if(!this.options.focusAfterOpen||!this._container)return;const b=this._container.querySelector(Uu);b&&b.focus()}},h.RasterDEMTileSource=qe,h.RasterTileSource=He,h.ScaleControl=class{constructor(b){this._onMove=()=>{mf(this._map,this._container,this.options)},this.setUnit=o=>{this.options.unit=o,mf(this._map,this._container,this.options)},this.options=Object.assign(Object.assign({},Zg),b)}getDefaultPosition(){return"bottom-left"}onAdd(b){return this._map=b,this._container=P.create("div","maplibregl-ctrl maplibregl-ctrl-scale",b.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container}onRemove(){P.remove(this._container),this._map.off("move",this._onMove),this._map=void 0}},h.ScrollZoomHandler=af,h.Style=Kn,h.TerrainControl=class{constructor(b){this._toggleTerrain=()=>{this._map.getTerrain()?this._map.setTerrain(null):this._map.setTerrain(this.options),this._updateTerrainIcon()},this._updateTerrainIcon=()=>{this._terrainButton.classList.remove("maplibregl-ctrl-terrain"),this._terrainButton.classList.remove("maplibregl-ctrl-terrain-enabled"),this._map.terrain?(this._terrainButton.classList.add("maplibregl-ctrl-terrain-enabled"),this._terrainButton.title=this._map._getUIString("TerrainControl.Disable")):(this._terrainButton.classList.add("maplibregl-ctrl-terrain"),this._terrainButton.title=this._map._getUIString("TerrainControl.Enable"))},this.options=b}onAdd(b){return this._map=b,this._container=P.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._terrainButton=P.create("button","maplibregl-ctrl-terrain",this._container),P.create("span","maplibregl-ctrl-icon",this._terrainButton).setAttribute("aria-hidden","true"),this._terrainButton.type="button",this._terrainButton.addEventListener("click",this._toggleTerrain),this._updateTerrainIcon(),this._map.on("terrain",this._updateTerrainIcon),this._container}onRemove(){P.remove(this._container),this._map.off("terrain",this._updateTerrainIcon),this._map=void 0}},h.TwoFingersTouchPitchHandler=nf,h.TwoFingersTouchRotateHandler=sf,h.TwoFingersTouchZoomHandler=ef,h.TwoFingersTouchZoomRotateHandler=cf,h.VectorTileSource=Qe,h.VideoSource=It,h.addSourceType=(b,o)=>c._(void 0,void 0,void 0,function*(){if(Wt(b))throw new Error(`A source type called "${b}" already exists.`);((d,p)=>{Lt[d]=p})(b,o)}),h.clearPrewarmedResources=function(){const b=oi;b&&(b.isPreloaded()&&b.numActive()===1?(b.release(dn),oi=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()"))},h.getMaxParallelImageRequests=function(){return c.a.MAX_PARALLEL_IMAGE_REQUESTS},h.getRTLTextPluginStatus=function(){return wi().getRTLTextPluginStatus()},h.getVersion=function(){return Mt},h.getWorkerCount=function(){return fn.workerCount},h.getWorkerUrl=function(){return c.a.WORKER_URL},h.importScriptInWorkers=function(b){return Mn().broadcast("IS",b)},h.prewarm=function(){ui().acquire(dn)},h.setMaxParallelImageRequests=function(b){c.a.MAX_PARALLEL_IMAGE_REQUESTS=b},h.setRTLTextPlugin=function(b,o){return wi().setRTLTextPlugin(b,o)},h.setWorkerCount=function(b){fn.workerCount=b},h.setWorkerUrl=function(b){c.a.WORKER_URL=b}});var l=i;return l})})(QM);var AH=QM.exports;const dI=BR(AH);function Ir(t,e,i,s,n){return ho(e,tk(t,e),i,s,n)}function ho(t,e,i,s,n,l){const h=Jx(e,i,s);if(n&&e!==h)throw new RangeError(w3(t,e,i,s,l));return h}function tk(t,e){const i=t[e];if(i===void 0)throw new TypeError(eT(e));return i}function qn(t){return t!==null&&/object|function/.test(typeof t)}function Yr(t,e=Map){const i=new e;return(s,...n)=>{if(i.has(s))return i.get(s);const l=t(s,...n);return i.set(s,l),l}}function fI(t){return Gh({name:t},1)}function Gh(t,e){return Jo(i=>({value:i,configurable:1,writable:!e}),t)}function IH(t){return Jo(e=>({get:e,configurable:1}),t)}function u1(t){return{[Symbol.toStringTag]:{value:t,configurable:1}}}function dd(t,e){const i={};let s=t.length;for(const n of e)i[t[--s]]=n;return i}function Jo(t,e,i){const s={};for(const n in e)s[n]=t(e[n],n,i);return s}function e0(t,e,i){const s={};for(let n=0;nt(...e,...i)}function gI(t){return t[0].toUpperCase()+t.substring(1)}function eg(t){return t.slice().sort()}function $_(t,e){return String(e).padStart(t,"0")}function Ml(t,e){return Math.sign(t-e)}function Jx(t,e,i){return Math.min(Math.max(t,e),i)}function Da(t,e){return[Math.floor(t/e),fp(t,e)]}function fp(t,e){return(t%e+e)%e}function Ll(t,e){return[t0(t,e),h1(t,e)]}function t0(t,e){return Math.trunc(t/e)||0}function h1(t,e){return t%e||0}function Wm(t){return Math.abs(t%1)===.5}function rk(t,e,i){let s=0,n=0;for(let c=0;c<=e;c++){const _=t[i[c]],w=Go[c],I=vs/w,[C,P]=Ll(_,I);s+=P*w,n+=C}const[l,h]=Ll(s,vs);return[n+l,h]}function i0(t,e,i){const s={};for(let n=e;n>=0;n--){const l=Go[n];s[i[n]]=t0(t,l),t=h1(t,l)}return s}function RH(t){return t===xi?k0:[]}function MH(t){return t===xi?rg:[]}function kH(t){return t===xi?["year","day"]:[]}function OH(t){if(t!==void 0)return hn(t)}function DH(t){if(t!==void 0)return Ho(t)}function ok(t){if(t!==void 0)return s0(t)}function Ho(t){return ck(s0(t))}function s0(t){return lk(tZ(t))}function mI(t){if(t==null)throw new TypeError("Cannot be null or undefined");return t}function ak(t,e){if(e==null)throw new RangeError(eT(t));return e}function Hl(t){if(!qn(t))throw new TypeError(x3);return t}function n0(t,e,i=t){if(typeof e!==t)throw new TypeError(sg(i,e));return e}function lk(t,e="number"){if(!Number.isInteger(t))throw new RangeError(vX(e,t));return t||0}function ck(t,e="number"){if(t<=0)throw new RangeError(xX(e,t));return t}function d1(t){if(typeof t=="symbol")throw new TypeError(EX);return String(t)}function W_(t,e){return qn(t)?String(t):hn(t,e)}function r0(t){if(typeof t=="string")return BigInt(t);if(typeof t!="bigint")throw new TypeError(SX(t));return t}function uk(t,e="number"){if(typeof t=="bigint")throw new TypeError(TX(e));if(t=Number(t),!Number.isFinite(t))throw new RangeError(wX(e,t));return t}function nr(t,e){return Math.trunc(uk(t,e))||0}function hk(t,e){return lk(uk(t,e),e)}function _I(t,e){return ck(nr(t,e),e)}function f1(t,e){let[i,s]=Ll(e,vs),n=t+i;const l=Math.sign(n);return l&&l===-Math.sign(s)&&(n-=l,s+=l*vs),[n,s]}function Qh(t,e,i=1){return f1(t[0]+e[0]*i,t[1]+e[1]*i)}function ed(t,e){return f1(t[0],t[1]+e)}function _o(t,e){return Qh(e,t,-1)}function Dr(t,e){return Ml(t[0],e[0])||Ml(t[1],e[1])}function dk(t,e,i){return Dr(t,e)===-1||Dr(t,i)===1}function o0(t,e=1){const i=BigInt(vs/e);return[Number(t/i),Number(t%i)*e]}function Np(t,e=1){const i=vs/e,[s,n]=Ll(t,i);return[s,n*e]}function fk(t,e=1){const[i,s]=t,n=Math.floor(s/e),l=vs/e;return BigInt(i)*BigInt(l)+BigInt(n)}function yo(t,e=1,i){const[s,n]=t,[l,h]=Ll(n,e);return s*(vs/e)+(l+(i?h/e:0))}function p1(t,e,i=Da){const[s,n]=t,[l,h]=i(n,e);return[s*(vs/e)+l,h]}function g1(t,e){const i=t.formatToParts(e),s={};for(const n of i)s[n.type]=n.value;return s}function m1(t){return Ir(t,"isoYear",Vp,Up,1),t.isoYear===Vp?Ir(t,"isoMonth",4,12,1):t.isoYear===Up&&Ir(t,"isoMonth",1,9,1),t}function kl(t){return Ua({...t,...Qo,isoHour:12}),t}function Ua(t){const e=Ir(t,"isoYear",Vp,Up,1),i=e===Vp?1:e===Up?-1:0;return i&&Gr(rr({...t,isoDay:t.isoDay+i,isoNanosecond:t.isoNanosecond-i})),t}function Gr(t){if(!t||dk(t,cZ,lZ))throw new RangeError(I0);return t}function zl(t){return rk(t,5,ia)[1]}function a0(t){const[e,i]=Da(t,vs);return[i0(i,5,ia),e]}function pk(t){return gk(t)[0]}function gk(t){return p1(t,go)}function ar(t){return fd(t.isoYear,t.isoMonth,t.isoDay,t.isoHour,t.isoMinute,t.isoSecond,t.isoMillisecond)}function rr(t){const e=ar(t);if(e!==void 0){const[i,s]=Ll(e,kr);return[i,s*Va+(t.isoMicrosecond||0)*mu+(t.isoNanosecond||0)]}}function _1(t,e){const[i,s]=a0(zl(t)-e);return Gr(rr({...t,isoDay:t.isoDay+s,...i}))}function H_(...t){return fd(...t)/P3}function fd(...t){const[e,i]=mk(...t),s=e.valueOf();if(!isNaN(s))return s-i*kr}function mk(t,e=1,i=1,s=0,n=0,l=0,h=0){const c=t===Vp?1:t===Up?-1:0,_=new Date;return _.setUTCHours(s,n,l,h),_.setUTCFullYear(t,e-1,i+c),[_,c]}function cu(t,e){let[i,s]=ed(t,e);s<0&&(s+=vs,i-=1);const[n,l]=Da(s,Va),[h,c]=Da(l,mu);return l0(i*kr+n,h,c)}function l0(t,e=0,i=0){const s=Math.ceil(Math.max(0,Math.abs(t)-aZ)/kr)*Math.sign(t),n=new Date(t-s*kr);return dd(D0,[n.getUTCFullYear(),n.getUTCMonth()+1,n.getUTCDate()+s,n.getUTCHours(),n.getUTCMinutes(),n.getUTCSeconds(),n.getUTCMilliseconds(),e,i])}function _k(t){return[t.isoYear,t.isoMonth,t.isoDay]}function yk(){return Ia}function y1(t,e){switch(e){case 2:return b1(t)?29:28;case 4:case 6:case 9:case 11:return 30}return 31}function bk(t){return b1(t)?366:365}function b1(t){return t%4==0&&(t%100!=0||t%400==0)}function vk(t){const[e,i]=mk(t.isoYear,t.isoMonth,t.isoDay);return fp(e.getUTCDay()-i,7)||7}function xk({isoYear:t}){return t<1?["bce",1-t]:["ce",t]}function FH(t){const e=ar(t);if(eI<4?(I+2)%4:I)(_)),[h,w,c,_]}function d0(t,e=6,i){let s=w1(t=S1(t,J_));const n=ag(t,7);let l=og(t,e);return l=ak(J_,l),s=T1(s,l,void 0,i),[l,s,n]}function v1(t){return dT(xo(t))}function Sk(t,e){return x1(xo(t),e)}function x1(t,e=4){const i=Ak(t);return[ag(t,4),...Ek(og(t,e),i)]}function Ek(t,e){return t!=null?[Go[t],t<4?9-3*t:-1]:[e===void 0?1:10**(9-e),e]}function w1(t){const e=t[pp];return e===void 0?1:nr(e,pp)}function T1(t,e,i,s){const n=s?vs:Go[e+1];if(n){const l=Go[e];if(n%((t=ho(pp,t,1,n/l-(s?0:1),1))*l))throw new RangeError(sg(pp,t))}else t=ho(pp,t,1,i?10**9:1,1);return t}function Ak(t){let e=t[jv];if(e!==void 0){if(typeof e!="number"){if(d1(e)==="auto")return;throw new RangeError(sg(jv,e))}e=ho(jv,Math.floor(e),0,9,1)}return e}function xo(t){return t===void 0?{}:Hl(t)}function S1(t,e){return typeof t=="string"?{[e]:t}:Hl(t)}function Rn(t){if(t!==void 0){if(qn(t))return Object.assign(Object.create(null),t);throw new TypeError(x3)}}function f0(t,e){return t&&Object.assign(Object.create(null),t,{overflow:fZ[e]})}function E1(t,e,i=9,s=0,n){let l=e[t];if(l===void 0)return n?s:void 0;if(l=d1(l),l==="auto")return n?s:null;let h=tw[l];if(h===void 0&&(h=rZ[l]),h===void 0)throw new RangeError(E3(t,l,tw));return ho(t,h,s,i,1,P0),h}function hu(t,e,i,s=0){const n=i[t];if(n===void 0)return s;const l=d1(n),h=e[l];if(h===void 0)throw new RangeError(E3(t,l,e));return h}function Ik(t,e){if(e>t)throw new RangeError(XX)}function Wn(t){return{branding:pT,epochNanoseconds:t}}function lr(t,e,i){return{branding:Jl,calendar:i,timeZone:e,epochNanoseconds:t}}function In(t,e=t.calendar){return{branding:Sd,calendar:e,...Jr(U3,t)}}function Cn(t,e=t.calendar){return{branding:Td,calendar:e,...Jr(cT,t)}}function eu(t,e=t.calendar){return{branding:jp,calendar:e,...Jr(cT,t)}}function q_(t,e=t.calendar){return{branding:$p,calendar:e,...Jr(cT,t)}}function ea(t){return{branding:fT,...Jr(z3,t)}}function nn(t){return{branding:gT,sign:ql(t),...Jr(rT,t)}}function BH(t){return pk(t.epochNanoseconds)}function A1(t){return p1(t.epochNanoseconds,Va)[0]}function LH(t){return fk(t.epochNanoseconds,mu)}function zH(t){return fk(t.epochNanoseconds)}function Ck(t){return t.epochNanoseconds}function cr(t){return typeof t=="string"?t:hn(t.id)}function gd(t,e){return t===e||cr(t)===cr(e)}function UH(t,e,i,s,n){const l=tu(s),[h,c]=((J,ue)=>{const he=ue((J=S1(J,nw))[j3]);let pe=vZ(J);return pe=ak(nw,pe),[pe,he]})(n,t);if(Lp(Math.max(h,l),c))return bI(s,h);if(!c)throw new RangeError(C0);const[_,w,I]=y0(e,i,c),C=F1(I),P=b0(I),B=N1(I),q=P(w,_,s),V=B(w,_,q,h);return Lp(h,c)?bI(V,h):((J,ue,he,pe,Pe,Oe,Ae)=>{const We=ql(J),[ze,Ge]=I1(pe,aT(he,J),he,We,Pe,Oe,Ae),wt=C1(ue,ze,Ge);return J[ss[he]]+wt*We})(V,C(q),h,w,_,C,P)}function bI(t,e){return yo(Pn(t),Go[e],1)}function I1(t,e,i,s,n,l,h){const c=ss[i],_={...e,[c]:e[c]+s},w=h(t,n,e),I=h(t,n,_);return[l(w),l(I)]}function C1(t,e,i){const s=yo(_o(e,i));if(!s)throw new RangeError(ng);return yo(_o(e,t))/s}function VH(t,e){const[i,s,n]=d0(e,5,1);return Wn(g0(t.epochNanoseconds,i,s,n,1))}function jH(t,e,i){let{epochNanoseconds:s,timeZone:n,calendar:l}=e;const[h,c,_]=d0(i);if(h===0&&c===1)return e;const w=t(n);if(h===6)s=((I,C,P,B)=>{const q=Fr(P,C),[V,J]=I(q),ue=P.epochNanoseconds,he=Kr(C,V),pe=Kr(C,J);if(dk(ue,he,pe))throw new RangeError(ng);return Ok(C1(ue,he,pe),B)?pe:he})(Mk,w,e,_);else{const I=w.getOffsetNanosecondsFor(s);s=du(w,Pk(cu(s,I),h,c,_),I,2,0,1)}return lr(s,n,l)}function $H(t,e){return In(Pk(t,...d0(e)),t.calendar)}function WH(t,e){const[i,s,n]=d0(e,5);var l;return ea((l=n,P1(t,tg(i,s),l)[0]))}function HH(t,e){const i=t(e.timeZone),s=Fr(e,i),[n,l]=Mk(s),h=yo(_o(Kr(i,n),Kr(i,l)),M0,1);if(h<=0)throw new RangeError(ng);return h}function qH(t,e){const{timeZone:i,calendar:s}=e,n=((l,h,c)=>Kr(h,l(Fr(c,h))))(kk,t(i),e);return lr(n,i,s)}function Pk(t,e,i,s){return Rk(t,tg(e,i),s)}function Rk(t,e,i){const[s,n]=P1(t,e,i);return Ua({...fu(t,n),...s})}function P1(t,e,i){return a0(Ul(zl(t),e,i))}function X_(t){return Ul(t,R0,7)}function tg(t,e){return Go[t]*e}function Mk(t){const e=kk(t);return[e,fu(e,1)]}function kk(t){return oZ(6,t)}function XH(t,e,i){const s=Math.min(tu(t),6);return yd(m0(Pn(t,s),e,i),s)}function p0(t,e,i,s,n,l,h,c,_,w){if(s===0&&n===1)return t;const I=Lp(s,c)?v0(c)&&s<6&&i>=6?YH:ZH:KH;let[C,P,B]=I(t,e,i,s,n,l,h,c,_,w);return B&&s!==7&&(C=((q,V,J,ue,he,pe,Pe,Oe)=>{const Ae=ql(q);for(let We=ue+1;We<=J;We++){if(We===7&&J!==7)continue;const ze=aT(We,q);ze[ss[We]]+=Ae;const Ge=yo(_o(Pe(Oe(he,pe,ze)),V));if(Ge&&Math.sign(Ge)!==Ae)break;q=ze}return q})(C,P,i,Math.max(6,s),h,c,_,w)),C}function g0(t,e,i,s,n){if(e===6){const l=(h=>h[0]+h[1]/vs)(t);return[Ul(l,i,s),0]}return m0(t,tg(e,i),s,n)}function m0(t,e,i,s){let[n,l]=t;s&&l<0&&(l+=vs,n-=1);const[h,c]=Da(Ul(l,e,i),vs);return f1(n+h,c)}function Ul(t,e,i){return Ok(t/e,i)*e}function Ok(t,e){return SZ[e](t)}function ZH(t,e,i,s,n,l){const h=ql(t),c=Pn(t),_=g0(c,s,n,l),w=_o(c,_),I=Math.sign(_[0]-c[0])===h,C=yd(_,Math.min(i,6));return[{...t,...C},Qh(e,w),I]}function YH(t,e,i,s,n,l,h,c,_,w){const I=ql(t),C=yo(Pn(t,5)),P=tg(s,n);let B=Ul(C,P,l);const[q,V]=I1(h,{...t,...oT},6,I,c,_,w),J=B-yo(_o(q,V));let ue=0;J&&Math.sign(J)!==I?e=ed(q,B):(ue+=I,B=Ul(J,P,l),e=ed(V,B));const he=x0(B);return[{...t,...he,days:t.days+ue},e,!!ue]}function KH(t,e,i,s,n,l,h,c,_,w){const I=ql(t),C=ss[s],P=aT(s,t);s===7&&(t={...t,weeks:t.weeks+Math.trunc(t.days/7)});const B=t0(t[C],n)*n;P[C]=B;const[q,V]=I1(h,P,s,n*I,c,_,w),J=B+C1(e,q,V)*I*n,ue=Ul(J,n,l),he=Math.sign(ue-J)===I;return P[C]=ue,[P,he?V:q,he]}function vI(t,e,i,s){const[n,l,h,c]=(w=>{const I=x1(w=xo(w));return[w.timeZone,...I]})(s),_=n!==void 0;return((w,I,C,P,B,q)=>{C=m0(C,B,P,1);const V=I.getOffsetNanosecondsFor(C);return R1(cu(C,V),q)+(w?md(X_(V)):"Z")})(_,e(_?t(n):_u),i.epochNanoseconds,l,h,c)}function xI(t,e,i){const[s,n,l,h,c,_]=(w=>{w=xo(w);const I=dT(w),C=Ak(w),P=TZ(w),B=ag(w,4),q=og(w,4);return[I,wZ(w),P,B,...Ek(q,C)]})(i);return((w,I,C,P,B,q,V,J,ue,he)=>{P=m0(P,ue,J,1);const pe=w(C).getOffsetNanosecondsFor(P);return R1(cu(P,pe),he)+md(X_(pe),V)+((Pe,Oe)=>Oe!==1?"["+(Oe===2?"!":"")+cr(Pe)+"]":"")(C,q)+M1(I,B)})(t,e.calendar,e.timeZone,e.epochNanoseconds,s,n,l,h,c,_)}function wI(t,e){const[i,s,n,l]=(w=>(w=xo(w),[dT(w),...x1(w)]))(e);return h=t.calendar,c=i,_=l,R1(Rk(t,n,s),_)+M1(h,c);var h,c,_}function TI(t,e){return i=t.calendar,s=t,n=v1(e),Z_(s)+M1(i,n);var i,s,n}function SI(t,e){return Dk(t.calendar,Fk,t,v1(e))}function EI(t,e){return Dk(t.calendar,JH,t,v1(e))}function AI(t,e){const[i,s,n]=Sk(e);return l=n,Nk(P1(t,s,i)[0],l);var l}function Lv(t,e){const[i,s,n]=Sk(e,3);return s>1&&(t={...t,...XH(t,s,i)}),((l,h)=>{const{sign:c}=l,_=c===-1?ur(l):l,{hours:w,minutes:I}=_,[C,P]=p1(Pn(_,3),go,Ll);jk(C);const B=k1(P,h),q=h>=0||!c||B;return(c<0?"-":"")+"P"+II({Y:Ic(_.years),M:Ic(_.months),W:Ic(_.weeks),D:Ic(_.days)})+(w||I||C||q?"T"+II({H:Ic(w),M:Ic(I),S:Ic(C,q)+B}):"")})(t,n)}function Dk(t,e,i,s){const n=cr(t),l=s>1||s===0&&n!==xi;return s===1?n===xi?e(i):Z_(i):l?Z_(i)+Bk(n,s===2):e(i)}function II(t){const e=[];for(const i in t){const s=t[i];s&&e.push(s,i)}return e.join("")}function R1(t,e){return Z_(t)+"T"+Nk(t,e)}function Z_(t){return Fk(t)+"-"+po(t.isoDay)}function Fk(t){const{isoYear:e}=t;return(e<0||e>9999?Lk(e)+$_(6,Math.abs(e)):$_(4,e))+"-"+po(t.isoMonth)}function JH(t){return po(t.isoMonth)+"-"+po(t.isoDay)}function Nk(t,e){const i=[po(t.isoHour),po(t.isoMinute)];return e!==-1&&i.push(po(t.isoSecond)+((s,n,l,h)=>k1(s*Va+n*mu+l,h))(t.isoMillisecond,t.isoMicrosecond,t.isoNanosecond,e)),i.join(":")}function md(t,e=0){if(e===1)return"";const[i,s]=Da(Math.abs(t),M0),[n,l]=Da(s,R0),[h,c]=Da(l,go);return Lk(t)+po(i)+":"+po(n)+(h||c?":"+po(h)+k1(c):"")}function M1(t,e){if(e!==1){const i=cr(t);if(e>1||e===0&&i!==xi)return Bk(i,e===2)}return""}function Bk(t,e){return"["+(e?"!":"")+"u-ca="+t+"]"}function k1(t,e){let i=$_(9,t);return i=e===void 0?i.replace(IZ,""):i.slice(0,e),i?"."+i:""}function Lk(t){return t<0?"-":"+"}function Ic(t,e){return t||e?t.toLocaleString("fullwide",{useGrouping:0}):""}function GH(t,e){const{epochNanoseconds:i}=t,s=(e.getOffsetNanosecondsFor?e:e(t.timeZone)).getOffsetNanosecondsFor(i),n=cu(i,s);return{calendar:t.calendar,...n,offsetNanoseconds:s}}function QH(t,e){const i=Fr(e,t);return{calendar:e.calendar,...Jr(U3,i),offset:md(i.offsetNanoseconds),timeZone:e.timeZone}}function du(t,e,i,s=0,n=0,l,h){if(i!==void 0&&s===1&&(s===1||h))return _1(e,i);const c=t.getPossibleInstantsFor(e);if(i!==void 0&&s!==3){const _=((w,I,C,P)=>{const B=rr(I);P&&(C=X_(C));for(const q of w){let V=yo(_o(q,B));if(P&&(V=X_(V)),V===C)return q}})(c,e,i,l);if(_!==void 0)return _;if(s===0)throw new RangeError(VX)}return h?rr(e):Kr(t,e,n,c)}function Kr(t,e,i=0,s=t.getPossibleInstantsFor(e)){if(s.length===1)return s[0];if(i===1)throw new RangeError(jX);if(s.length)return s[i===3?1:0];const n=rr(e),l=((c,_)=>{const w=c.getOffsetNanosecondsFor(ed(_,-vs));return Uk(c.getOffsetNanosecondsFor(ed(_,vs))-w)})(t,n),h=l*(i===2?-1:1);return(s=t.getPossibleInstantsFor(cu(n,h)))[i===2?0:s.length-1]}function zk(t){if(Math.abs(t)>=vs)throw new RangeError(zX);return t}function Uk(t){if(t>vs)throw new RangeError(UX);return t}function CI(t,e,i){return Wn(Gr(Qh(e.epochNanoseconds,(s=>{if($k(s))throw new RangeError(HX);return Pn(s,5)})(t?ur(i):i))))}function PI(t,e,i,s,n,l=Object.create(null)){const h=e(s.timeZone),c=t(s.calendar);return{...s,...O1(h,c,s,i?ur(n):n,l)}}function RI(t,e,i,s,n=Object.create(null)){const{calendar:l}=i;return In(D1(t(l),i,e?ur(s):s,n),l)}function MI(t,e,i,s,n){const{calendar:l}=i;return Cn(_0(t(l),i,e?ur(s):s,n),l)}function kI(t,e,i,s,n=Object.create(null)){const l=i.calendar,h=t(l);let c=Bp(h,i);e&&(s=B1(s)),s.sign<0&&(c=h.dateAdd(c,{...Hn,months:1}),c=fu(c,-1));const _=h.dateAdd(c,s,n);return eu(Bp(h,_),l)}function OI(t,e,i){return ea(Vk(e,t?ur(i):i)[0])}function O1(t,e,i,s,n){const l=Pn(s,5);let h=i.epochNanoseconds;if($k(s)){const c=Fr(i,t);h=Qh(Kr(t,{..._0(e,c,{...s,...oT},n),...Jr(ia,c)}),l)}else h=Qh(h,l),Ji(n);return{epochNanoseconds:Gr(h)}}function D1(t,e,i,s){const[n,l]=Vk(e,i);return Ua({..._0(t,e,{...i,...oT,days:i.days+l},s),...n})}function _0(t,e,i,s){if(i.years||i.months||i.weeks)return t.dateAdd(e,i,s);Ji(s);const n=i.days+Pn(i,5)[0];return n?kl(fu(e,n)):e}function Bp(t,e,i=1){return fu(e,i-t.day(e))}function Vk(t,e){const[i,s]=Pn(e,5),[n,l]=a0(zl(t)+s);return[n,i+l]}function fu(t,e){return e?{...t,...l0(ar(t)+e*kr)}:t}function y0(t,e,i){const s=t(i.calendar);return v0(i)?[i,s,e(i.timeZone)]:[{...i,...Qo},s]}function F1(t){return t?Ck:rr}function b0(t){return t?_i(O1,t):D1}function N1(t){return t?_i(Tq,t):Sq}function v0(t){return t&&t.epochNanoseconds}function Lp(t,e){return t<=6-(v0(e)?1:0)}function DI(t,e,i,s,n,l,h){const c=t(xo(h).relativeTo),_=Math.max(tu(n),tu(l));if(Lp(_,c))return nn(_d(((V,J,ue,he)=>{const pe=Qh(Pn(V),Pn(J),he?-1:1);if(!Number.isFinite(pe[0]))throw new RangeError(I0);return{...Hn,...yd(pe,ue)}})(n,l,_,s)));if(!c)throw new RangeError(C0);s&&(l=ur(l));const[w,I,C]=y0(e,i,c),P=b0(C),B=N1(C),q=P(I,w,n);return nn(B(I,w,P(I,q,l),_))}function eq(t,e,i,s,n){const l=tu(s),[h,c,_,w,I]=((Ae,We,ze)=>{Ae=S1(Ae,J_);let Ge=hT(Ae);const wt=ze(Ae[j3]);let ot=w1(Ae);const Ot=ag(Ae,7);let Nt=og(Ae);if(Ge===void 0&&Nt===void 0)throw new RangeError(qX);return Nt==null&&(Nt=0),Ge==null&&(Ge=Math.max(Nt,We)),Ik(Ge,Nt),ot=T1(ot,Nt,1),[Ge,Nt,ot,Ot,wt]})(n,l,t),C=Math.max(l,h);if(!v0(I)&&C<=6)return nn(_d(((Ae,We,ze,Ge,wt)=>{const ot=g0(Pn(Ae),ze,Ge,wt);return{...Hn,...yd(ot,We)}})(s,h,c,_,w)));if(!I)throw new RangeError(C0);const[P,B,q]=y0(e,i,I),V=F1(q),J=b0(q),ue=N1(q),he=J(B,P,s);let pe=ue(B,P,he,h);const Pe=s.sign,Oe=ql(pe);if(Pe&&Oe&&Pe!==Oe)throw new RangeError(ng);return Oe&&(pe=p0(pe,V(he),h,c,_,w,B,P,V,J)),nn(pe)}function tq(t){return t.sign===-1?B1(t):t}function B1(t){return nn(ur(t))}function ur(t){const e={};for(const i of ss)e[i]=-1*t[i]||0;return e}function iq(t){return!t.sign}function ql(t,e=ss){let i=0;for(const s of e){const n=Math.sign(t[s]);if(n){if(i&&i!==n)throw new RangeError(WX);i=n}}return i}function _d(t){for(const e of nZ)ho(e,t[e],-YI,YI,1);return jk(yo(Pn(t),go)),t}function jk(t){if(!Number.isSafeInteger(t))throw new RangeError($X)}function Pn(t,e=6){return rk(t,e,ss)}function yd(t,e=6){const[i,s]=t,n=i0(s,e,ss);if(n[ss[e]]+=i*(vs/Go[e]),!Number.isFinite(n[ss[e]]))throw new RangeError(I0);return n}function x0(t,e=5){return i0(t,e,ss)}function $k(t){return!!ql(t,L3)}function tu(t){let e=9;for(;e>0&&!t[ss[e]];e--);return e}function sq(t,e){return[t,e]}function FI(t){const e=Math.floor(t/l_)*l_;return[e,e+l_]}function nq(t){const e=Xl(t=W_(t));if(!e)throw new RangeError(Mr(t));let i;if(e.m)i=0;else{if(!e.offset)throw new RangeError(Mr(t));i=bd(e.offset)}return e.timeZone&&j1(e.timeZone,1),Wn(_1(c0(e),i))}function rq(t){const e=Xl(hn(t));if(!e)throw new RangeError(Mr(t));if(e.timeZone)return Wk(e,e.offset?bd(e.offset):void 0);if(e.m)throw new RangeError(Mr(t));return qk(e)}function oq(t,e){const i=Xl(hn(t));if(!i||!i.timeZone)throw new RangeError(Mr(t));const{offset:s}=i,n=s?bd(s):void 0,[,l,h]=h0(e);return Wk(i,n,l,h)}function bd(t){const e=j1(t);if(e===void 0)throw new RangeError(Mr(t));return e}function aq(t){const e=Xl(hn(t));if(!e||e.m)throw new RangeError(Mr(t));return In(Hk(e))}function L1(t){const e=Xl(hn(t));if(!e||e.m)throw new RangeError(Mr(t));return Cn(e.p?Hk(e):qk(e))}function lq(t,e){const i=U1(hn(e));if(i)return z1(i),eu(m1(uu(i)));const s=L1(e);return eu(Bp(t(s.calendar),s))}function z1(t){if(t.calendar!==xi)throw new RangeError(Fa(t.calendar))}function cq(t,e){const i=V1(hn(e));if(i)return z1(i),q_(uu(i));const s=L1(e),{calendar:n}=s,l=t(n),[h,c,_]=l.h(s),[w,I]=l.I(h,c),[C,P]=l.N(w,I,_);return q_(kl(l.P(C,P,_)),n)}function uq(t){let e,i=(s=>{const n=DZ.exec(s);return n?(w0(n[10]),Yk(n)):void 0})(hn(t));if(!i){if(i=Xl(t),!i)throw new RangeError(Mr(t));if(!i.p)throw new RangeError(Mr(t));if(i.m)throw new RangeError(Fa("Z"));z1(i)}if((e=U1(t))&&yI(e))throw new RangeError(Mr(t));if((e=V1(t))&&yI(e))throw new RangeError(Mr(t));return ea(u0(i,1))}function hq(t){const e=(i=>{const s=BZ.exec(i);return s?(n=>{function l(I,C,P){let B=0,q=0;if(P&&([B,_]=Da(_,Go[P])),I!==void 0){if(c)throw new RangeError(Fa(I));q=(V=>{const J=parseInt(V);if(!Number.isFinite(J))throw new RangeError(Fa(V));return J})(I),h=1,C&&(_=$1(C)*(Go[P]/go),c=1)}return B+q}let h=0,c=0,_=0,w={...dd(ss,[l(n[2]),l(n[3]),l(n[4]),l(n[5]),l(n[6],n[7],5),l(n[8],n[9],4),l(n[10],n[11],3)]),...i0(_,2,ss)};if(!h)throw new RangeError(S3(ss));return W1(n[1])<0&&(w=ur(w)),w})(s):void 0})(hn(t));if(!e)throw new RangeError(Mr(t));return nn(_d(e))}function dq(t){const e=Xl(t)||U1(t)||V1(t);return e?e.calendar:t}function fq(t){const e=Xl(t);return e&&(e.timeZone||e.m&&_u||e.offset)||t}function Wk(t,e,i=0,s=0){const n=H1(t.timeZone),l=mT(n);return lr(du(l,c0(t),e,i,s,!l.v,t.m),n,A0(t.calendar))}function Hk(t){return Xk(Ua(c0(t)))}function qk(t){return Xk(kl(uu(t)))}function Xk(t){return{...t,calendar:A0(t.calendar)}}function Xl(t){const e=OZ.exec(t);return e?(i=>{const s=i[10],n=(s||"").toUpperCase()==="Z";return{isoYear:Zk(i),isoMonth:parseInt(i[4]),isoDay:parseInt(i[5]),...Yk(i.slice(5)),...w0(i[16]),p:!!i[6],m:n,offset:n?void 0:s}})(e):void 0}function U1(t){const e=MZ.exec(t);return e?(i=>({isoYear:Zk(i),isoMonth:parseInt(i[4]),isoDay:1,...w0(i[5])}))(e):void 0}function V1(t){const e=kZ.exec(t);return e?(i=>({isoYear:id,isoMonth:parseInt(i[1]),isoDay:parseInt(i[2]),...w0(i[3])}))(e):void 0}function j1(t,e){const i=FZ.exec(t);return i?((s,n)=>{const l=s[4]||s[5];if(n&&l)throw new RangeError(Fa(l));return zk((zh(s[2])*M0+zh(s[3])*R0+zh(s[4])*go+$1(s[5]||""))*W1(s[1]))})(i,e):void 0}function Zk(t){const e=W1(t[1]),i=parseInt(t[2]||t[3]);if(e<0&&!i)throw new RangeError(Fa(-0));return e*i}function Yk(t){const e=zh(t[3]);return{...a0($1(t[4]||""))[0],isoHour:zh(t[1]),isoMinute:zh(t[2]),isoSecond:e===60?59:e}}function w0(t){let e,i;const s=[];if(t.replace(NZ,(n,l,h)=>{const c=!!l,[_,w]=h.split("=").reverse();if(w){if(w==="u-ca")s.push(_),e||(e=c);else if(c||/[A-Z]/.test(w))throw new RangeError(Fa(n))}else{if(i)throw new RangeError(Fa(n));i=_}return""}),s.length>1&&e)throw new RangeError(Fa(t));return{timeZone:i,calendar:s[0]||xi}}function $1(t){return parseInt(t.padEnd(9,"0"))}function vd(t){return new RegExp(`^${t}$`,"i")}function W1(t){return t&&t!=="+"?-1:1}function zh(t){return t===void 0?0:parseInt(t)}function pq(t){return H1(hn(t))}function H1(t){const e=q1(t);return typeof e=="number"?md(e):e?(i=>{if(zZ.test(i))throw new RangeError(LX);return i.toLowerCase().split("/").map((s,n)=>(s.length<=3||/\d/.test(s))&&!/etc|yap/.test(s)?s.toUpperCase():s.replace(/baja|dumont|[a-z]+/g,(l,h)=>l.length<=2&&!n||l==="in"||l==="chat"?l.toUpperCase():l.length>2||!h?gI(l).replace(/island|noronha|murdo|rivadavia|urville/,gI):l)).join("/")})(t):_u}function NI(t){const e=q1(t);return typeof e=="number"?e:e?e.resolvedOptions().timeZone:_u}function q1(t){const e=j1(t=t.toUpperCase(),1);return e!==void 0?e:t!==_u?LZ(t):void 0}function Kk(t,e){return Dr(t.epochNanoseconds,e.epochNanoseconds)}function Jk(t,e){return Dr(t.epochNanoseconds,e.epochNanoseconds)}function gq(t,e,i,s,n,l){const h=t(xo(l).relativeTo),c=Math.max(tu(s),tu(n));if(sk(ss,s,n))return 0;if(Lp(c,h))return Dr(Pn(s),Pn(n));if(!h)throw new RangeError(C0);const[_,w,I]=y0(e,i,h),C=F1(I),P=b0(I);return Dr(C(P(w,_,s)),C(P(w,_,n)))}function Gk(t,e){return xd(t,e)||X1(t,e)}function xd(t,e){return Ml(ar(t),ar(e))}function X1(t,e){return Ml(zl(t),zl(e))}function mq(t,e){return!Kk(t,e)}function _q(t,e){return!Jk(t,e)&&!!Z1(t.timeZone,e.timeZone)&&gd(t.calendar,e.calendar)}function yq(t,e){return!Gk(t,e)&&gd(t.calendar,e.calendar)}function bq(t,e){return!xd(t,e)&&gd(t.calendar,e.calendar)}function vq(t,e){return!xd(t,e)&&gd(t.calendar,e.calendar)}function xq(t,e){return!xd(t,e)&&gd(t.calendar,e.calendar)}function wq(t,e){return!X1(t,e)}function Z1(t,e){if(t===e)return 1;const i=cr(t),s=cr(e);if(i===s)return 1;try{return NI(i)===NI(s)}catch{}}function BI(t,e,i,s){const n=pd(t,Rn(s),3,5),l=T0(e.epochNanoseconds,i.epochNanoseconds,...n);return nn(t?ur(l):l)}function LI(t,e,i,s,n,l){const h=E0(s.calendar,n.calendar),c=Rn(l),[_,w,I,C]=pd(i,c,5),P=s.epochNanoseconds,B=n.epochNanoseconds,q=Dr(B,P);let V;if(q)if(_<6)V=T0(P,B,_,w,I,C);else{const J=e(((he,pe)=>{if(!Z1(he,pe))throw new RangeError(I3);return he})(s.timeZone,n.timeZone)),ue=t(h);V=e3(ue,J,s,n,q,_,c),V=p0(V,B,_,w,I,C,ue,s,Ck,_i(O1,J))}else V=Hn;return nn(i?ur(V):V)}function zI(t,e,i,s,n){const l=E0(i.calendar,s.calendar),h=Rn(n),[c,_,w,I]=pd(e,h,6),C=rr(i),P=rr(s),B=Dr(P,C);let q;if(B)if(c<=6)q=T0(C,P,c,_,w,I);else{const V=t(l);q=t3(V,i,s,B,c,h),q=p0(q,P,c,_,w,I,V,i,rr,D1)}else q=Hn;return nn(e?ur(q):q)}function UI(t,e,i,s,n){const l=E0(i.calendar,s.calendar),h=Rn(n);return Qk(e,()=>t(l),i,s,...pd(e,h,6,9,6),h)}function VI(t,e,i,s,n){const l=E0(i.calendar,s.calendar),h=Rn(n),c=pd(e,h,9,9,8),_=t(l);return Qk(e,()=>_,Bp(_,i),Bp(_,s),...c,h)}function Qk(t,e,i,s,n,l,h,c,_){const w=rr(i),I=rr(s);let C;if(Dr(I,w))if(n===6)C=T0(w,I,n,l,h,c);else{const P=e();C=P.dateUntil(i,s,n,_),l===6&&h===1||(C=p0(C,I,n,l,h,c,P,i,rr,_0))}else C=Hn;return nn(t?ur(C):C)}function jI(t,e,i,s){const n=Rn(s),[l,h,c,_]=pd(t,n,5,5),w=Ul(Y1(e,i),tg(h,c),_),I={...Hn,...x0(w,l)};return nn(t?ur(I):I)}function Tq(t,e,i,s,n,l){const h=Dr(s.epochNanoseconds,i.epochNanoseconds);return h?n<6?i3(i.epochNanoseconds,s.epochNanoseconds,n):e3(e,t,i,s,h,n,l):Hn}function Sq(t,e,i,s,n){const l=rr(e),h=rr(i),c=Dr(h,l);return c?s<=6?i3(l,h,s):t3(t,e,i,c,s,n):Hn}function e3(t,e,i,s,n,l,h){const[c,_,w]=((P,B,q,V)=>{function J(){return We={...fu(pe,Oe++*-V),...he},ze=Kr(P,We),Dr(Pe,ze)===-V}const ue=Fr(B,P),he=Jr(ia,ue),pe=Fr(q,P),Pe=q.epochNanoseconds;let Oe=0;const Ae=Y1(ue,pe);let We,ze;if(Math.sign(Ae)===-V&&Oe++,J()&&(V===-1||J()))throw new RangeError(ng);const Ge=yo(_o(ze,Pe));return[ue,We,Ge]})(e,i,s,n);var I,C;return{...l===6?(I=c,C=_,{...Hn,days:s3(I,C)}):t.dateUntil(c,_,l,h),...x0(w)}}function t3(t,e,i,s,n,l){const[h,c,_]=((w,I,C)=>{let P=I,B=Y1(w,I);return Math.sign(B)===-C&&(P=fu(I,-C),B+=vs*C),[w,P,B]})(e,i,s);return{...t.dateUntil(h,c,n,l),...x0(_)}}function T0(t,e,i,s,n,l){return{...Hn,...yd(g0(_o(t,e),s,n,l),i)}}function i3(t,e,i){return{...Hn,...yd(_o(t,e),i)}}function s3(t,e){return S0(ar(t),ar(e))}function S0(t,e){return Math.trunc((e-t)/kr)}function Y1(t,e){return zl(e)-zl(t)}function E0(t,e){if(!gd(t,e))throw new RangeError(tT);return t}function Eq(t){function e(n){return((l,h)=>({...n3(l,h),F:l.month,day:parseInt(l.day)}))(g1(i,n),s)}const i=vT(t),s=Y_(t);return{id:t,O:Aq(e),B:Iq(e)}}function Aq(t){return Yr(e=>{const i=ar(e);return t(i)},WeakMap)}function Iq(t){const e=t(0).year-uZ;return Yr(i=>{let s,n=fd(i-e);const l=[],h=[];do n+=400*kr;while((s=t(n)).year<=i);do n+=(1-s.day)*kr,s.year===i&&(l.push(n),h.push(s.F)),n-=kr;while((s=t(n)).year>=i);return{k:l.reverse(),C:C3(h.reverse())}})}function n3(t,e){let i,s,n=r3(t);if(t.era){const l=B3[e];l!==void 0&&(i=e==="islamic"?"ah":t.era.normalize("NFD").toLowerCase().replace(/[^a-z0-9]/g,""),i==="bc"||i==="b"?i="bce":i!=="ad"&&i!=="a"||(i="ce"),s=n,n=c3(s,l[i]||0))}return{era:i,eraYear:s,year:n}}function r3(t){return parseInt(t.relatedYear||t.year)}function Gx(t){const{year:e,F:i,day:s}=this.O(t),{C:n}=this.B(e);return[e,n[i]+1,s]}function zp(t,e=1,i=1){return this.B(t).k[e-1]+(i-1)*kr}function Hm(t){const e=WI(this,t),i=WI(this,t-1),s=e.length;if(s>i.length){const n=u3(this);if(n<0)return-n;for(let l=0;li.length&&(s=1,n=this.B(t+1).k),S0(i[e-1],n[s-1])}function Xm(t){return this.B(t).k.length}function WI(t,e){return Object.keys(t.B(e).C)}function Cq(t){return A0(hn(t))}function A0(t){if((t=t.toLowerCase())!==xi&&t!==O0&&Y_(t)!==Y_(vT(t).resolvedOptions().calendar))throw new RangeError(BX(t));return t}function Y_(t){return t==="islamicc"&&(t="islamic"),t.split("-")[0]}function o3(t){return this.R(t)[0]}function a3(t){return this.R(t)[1]}function K1(t){const[e]=this.h(t);return S0(this.q(e),ar(t))+1}function l3(t){const e=VZ.exec(t);if(!e)throw new RangeError(DX(t));return[parseInt(e[1]),!!e[2]]}function K_(t,e,i){return t+(e||i&&t>=i?1:0)}function Qx(t,e){return t-(e&&t>=e?1:0)}function c3(t,e){return(e+t)*(Math.sign(e)||1)||0}function ew(t){return B3[h3(t)]}function u3(t){return QX[h3(t)]}function h3(t){return Y_(t.id||xi)}function Pq(t,e,i,s){const n=Zl(i,s,ta,[],O3);if(n.timeZone!==void 0){const l=i.dateFromFields(n),h=pu(n),c=t(n.timeZone);return{epochNanoseconds:du(e(c),{...l,...h},n.offset!==void 0?bd(n.offset):void 0),timeZone:c}}return{...i.dateFromFields(n),...Qo}}function Rq(t,e,i,s,n,l){const h=Zl(i,n,ta,M3,O3),c=t(h.timeZone),[_,w,I]=h0(l),C=i.dateFromFields(h,f0(l,_)),P=pu(h,_);return lr(du(e(c),{...C,...P},h.offset!==void 0?bd(h.offset):void 0,w,I),c,s)}function Mq(t,e,i){const s=Zl(t,e,ta,[],Kl),n=Ji(i);return In(Ua({...t.dateFromFields(s,f0(i,n)),...pu(s,n)}))}function d3(t,e,i,s=[]){const n=Zl(t,e,ta,s);return t.dateFromFields(n,i)}function f3(t,e,i,s){const n=Zl(t,e,nT,s);return t.yearMonthFromFields(n,i)}function p3(t,e,i,s,n=[]){const l=Zl(t,i,ta,n);return e&&l.month!==void 0&&l.monthCode===void 0&&l.year===void 0&&(l.year=id),t.monthDayFromFields(l,s)}function kq(t,e){const i=Ji(e);return ea(pu(Zo(t,iw,[],1),i))}function Oq(t){const e=Zo(t,rT);return nn(_d({...Hn,...e}))}function Zl(t,e,i,s=[],n=[]){return Zo(e,[...t.fields(i),...n].sort(),s)}function Zo(t,e,i,s=!i){const n={};let l,h=0;for(const c of e){if(c===l)throw new RangeError(AX(c));if(c==="constructor"||c==="__proto__")throw new RangeError(T3(c));let _=t[c];if(_!==void 0)h=1,KI[c]&&(_=KI[c](_,c)),n[c]=_;else if(i){if(i.includes(c))throw new TypeError(eT(c));n[c]=N3[c]}l=c}if(s&&!h)throw new TypeError(S3(e));return n}function pu(t,e){return u0(HZ({...N3,...t}),e)}function Dq(t,e,i,s,n,l){const h=Rn(l),{calendar:c,timeZone:_}=i;return lr(((w,I,C,P,B)=>{const q=ig(w,C,P,ta,k3,R3),[V,J,ue]=h0(B,2);return du(I,{...w.dateFromFields(q,f0(B,V)),...pu(q,V)},bd(q.offset),J,ue)})(t(c),e(_),s,n,h),_,c)}function Fq(t,e,i,s,n){const l=Rn(n);return In(((h,c,_,w)=>{const I=ig(h,c,_,ta,Kl),C=Ji(w);return Ua({...h.dateFromFields(I,f0(w,C)),...pu(I,C)})})(t(e.calendar),i,s,l))}function Nq(t,e,i,s,n){const l=Rn(n);return((h,c,_,w)=>{const I=ig(h,c,_,ta);return h.dateFromFields(I,w)})(t(e.calendar),i,s,l)}function Bq(t,e,i,s,n){const l=Rn(n);return eu(((h,c,_,w)=>{const I=ig(h,c,_,nT);return h.yearMonthFromFields(I,w)})(t(e.calendar),i,s,l))}function Lq(t,e,i,s,n){const l=Rn(n);return((h,c,_,w)=>{const I=ig(h,c,_,ta);return h.monthDayFromFields(I,w)})(t(e.calendar),i,s,l)}function zq(t,e,i){return ea(((s,n,l)=>{const h=Ji(l);return pu({...Jr(iw,s),...Zo(n,iw)},h)})(t,e,i))}function Uq(t,e){return nn((i=t,s=e,_d({...i,...Zo(s,rT)})));var i,s}function ig(t,e,i,s,n=[],l=[]){const h=[...t.fields(s),...n].sort();let c=Zo(e,h,l);const _=Zo(i,h);return c=t.mergeFields(c,_),Zo(c,h,[])}function J1(t,e){const i=Zl(t,e,F3);return t.monthDayFromFields(i)}function G1(t,e,i){const s=Zl(t,e,D3);return t.yearMonthFromFields(s,i)}function g3(t,e,i,s,n){e=Jr(i=t.fields(i),e),s=Zo(s,n=t.fields(n),[]);let l=t.mergeFields(e,s);return l=Zo(l,[...i,...n].sort(),[]),t.dateFromFields(l)}function zv(t,e){let{era:i,eraYear:s,year:n}=e;const l=ew(t);if(i!==void 0||s!==void 0){if(i===void 0||s===void 0)throw new TypeError(RX);if(!l)throw new RangeError(PX);const h=l[i];if(h===void 0)throw new RangeError(kX(i));const c=c3(s,h);if(n!==void 0&&n!==c)throw new RangeError(MX);n=c}else if(n===void 0)throw new TypeError(OX(l));return n}function Uv(t,e,i,s){let{month:n,monthCode:l}=e;if(l!==void 0){const h=((c,_,w,I)=>{const C=c.U(w),[P,B]=l3(_);let q=K_(P,B,C);if(B){const V=u3(c);if(V===void 0)throw new RangeError(Yf);if(V>0){if(q>V)throw new RangeError(Yf);if(C===void 0){if(I===1)throw new RangeError(Yf);q--}}else{if(q!==-V)throw new RangeError(Yf);if(C===void 0&&I===1)throw new RangeError(Yf)}}return q})(t,l,i,s);if(n!==void 0&&n!==h)throw new RangeError(A3);n=h,s=1}else if(n===void 0)throw new TypeError(FX);return ho("month",n,1,t.L(i),s)}function HI(t,e,i,s,n){return Ir(e,"day",1,t.j(s,i),n)}function Vv(t,e,i,s){let n=0;const l=[];for(const h of i)e[h]!==void 0?n=1:l.push(h);if(Object.assign(t,e),n)for(const h of s||l)delete t[h]}function Vq(t){return Wn(Gr(o0(r0(t))))}function jq(t,e,i,s,n=xi){return lr(Gr(o0(r0(i))),e(s),t(n))}function $q(t,e,i,s,n=0,l=0,h=0,c=0,_=0,w=0,I=xi){return In(Ua(c0(Jo(nr,dd(D0,[e,i,s,n,l,h,c,_,w])))),t(I))}function Wq(t,e,i,s,n=xi){return Cn(kl(uu(Jo(nr,{isoYear:e,isoMonth:i,isoDay:s}))),t(n))}function Hq(t,e,i,s=xi,n=1){const l=nr(e),h=nr(i),c=t(s);return eu(m1(uu({isoYear:l,isoMonth:h,isoDay:nr(n)})),c)}function qq(t,e,i,s=xi,n=id){const l=nr(e),h=nr(i),c=t(s);return q_(kl(uu({isoYear:nr(n),isoMonth:l,isoDay:h})),c)}function Xq(t=0,e=0,i=0,s=0,n=0,l=0){return ea(u0(Jo(nr,dd(ia,[t,e,i,s,n,l])),1))}function Zq(t=0,e=0,i=0,s=0,n=0,l=0,h=0,c=0,_=0,w=0){return nn(_d(Jo(hk,dd(ss,[t,e,i,s,n,l,h,c,_,w]))))}function qI(t,e,i=xi){return lr(t.epochNanoseconds,e,i)}function Yq(t){return Wn(t.epochNanoseconds)}function m3(t,e){return In(Fr(e,t))}function _3(t,e){return Cn(Fr(e,t))}function Kq(t,e,i){return G1(t(e.calendar),i)}function Jq(t,e,i){return J1(t(e.calendar),i)}function y3(t,e){return ea(Fr(e,t))}function Gq(t,e,i,s){const n=((l,h,c,_)=>{const w=Tk(_);return Kr(l(h),c,w)})(t,i,e,s);return lr(Gr(n),i,e.calendar)}function Qq(t,e,i){const s=t(e.calendar);return eu({...e,...G1(s,i)})}function eX(t,e,i){return J1(t(e.calendar),i)}function tX(t,e,i,s,n){const l=t(n.timeZone),h=n.plainTime,c=h!==void 0?e(h):Qo;return lr(Kr(i(l),{...s,...c}),l,s.calendar)}function iX(t,e=Qo){return In(Ua({...t,...e}))}function sX(t,e,i){return G1(t(e.calendar),i)}function nX(t,e,i){return J1(t(e.calendar),i)}function rX(t,e,i,s){return((n,l,h)=>g3(n,l,D3,Hl(h),rg))(t(e.calendar),i,s)}function oX(t,e,i,s){return((n,l,h)=>g3(n,l,F3,Hl(h),k0))(t(e.calendar),i,s)}function aX(t,e,i,s,n){const l=Hl(n),h=e(l.plainDate),c=t(l.timeZone);return lr(Kr(i(c),{...h,...s}),c,h.calendar)}function lX(t,e){return In(Ua({...t,...e}))}function cX(t){return Wn(Gr(Np(t,go)))}function uX(t){return Wn(Gr(Np(t,Va)))}function hX(t){return Wn(Gr(o0(r0(t),mu)))}function dX(t){return Wn(Gr(o0(r0(t))))}function fX(t,e,i=Qo){const s=e.timeZone,n=t(s),l={...Fr(e,n),...i};return lr(du(n,l,l.offsetNanoseconds,2),s,e.calendar)}function pX(t,e,i){const s=e.timeZone,n=t(s),l={...Fr(e,n),...i},h=b3(e.calendar,i.calendar);return lr(du(n,l,l.offsetNanoseconds,2),s,h)}function gX(t,e=Qo){return In({...t,...e})}function mX(t,e){return In({...t,...e},b3(t.calendar,e.calendar))}function Q1(t,e){return{...t,calendar:e}}function _X(t,e){return{...t,timeZone:e}}function b3(t,e){if(t===e)return t;const i=cr(t),s=cr(e);if(i===s||i===xi)return e;if(s===xi)return t;throw new RangeError(tT)}function yX(t,e){return i=>i===xi?t:i===O0||i===td?Object.assign(Object.create(t),{id:i}):Object.assign(Object.create(e),UZ(i))}function gu(t,e,i){const s=new Set(i);return n=>(((l,h)=>{for(const c of h)if(c in l)return 1;return 0})(n=ik(s,n),t)||Object.assign(n,e),i&&(n.timeZone=_u,["full","long"].includes(n.timeStyle)&&(n.timeStyle="medium")),n)}function Yl(t,e=v3){const[i,,,s]=t;return(n,l=aY,...h)=>{const c=e(s&&s(...h),n,l,i),_=c.resolvedOptions();return[c,...bX(t,_,h)]}}function v3(t,e,i,s){if(i=s(i),t){if(i.timeZone!==void 0)throw new TypeError(KX);i.timeZone=t}return new Zc(e,i)}function bX(t,e,i){const[,s,n]=t;return i.map(l=>(l.calendar&&((h,c,_)=>{if((_||h!==xi)&&h!==c)throw new RangeError(tT)})(cr(l.calendar),e.calendar,n),s(l,e)))}function Zf(t){const e=a_();return cu(e,t.getOffsetNanosecondsFor(e))}function a_(){return Np(Date.now(),Va)}function gl(){return GI||(GI=new Zc().resolvedOptions().timeZone)}const vX=(t,e)=>`Non-integer ${t}: ${e}`,xX=(t,e)=>`Non-positive ${t}: ${e}`,wX=(t,e)=>`Non-finite ${t}: ${e}`,TX=t=>`Cannot convert bigint to ${t}`,SX=t=>`Invalid bigint: ${t}`,EX="Cannot convert Symbol to string",x3="Invalid object",w3=(t,e,i,s,n)=>n?w3(t,n[e],n[i],n[s]):sg(t,e)+`; must be between ${i}-${s}`,sg=(t,e)=>`Invalid ${t}: ${e}`,eT=t=>`Missing ${t}`,T3=t=>`Invalid field ${t}`,AX=t=>`Duplicate field ${t}`,S3=t=>"No valid fields: "+t.join(),IX="Invalid bag",E3=(t,e,i)=>sg(t,e)+"; must be "+Object.keys(i).join(),CX="Cannot use valueOf",XI="Invalid calling context",PX="Forbidden era/eraYear",RX="Mismatching era/eraYear",MX="Mismatching year/eraYear",kX=t=>`Invalid era: ${t}`,OX=t=>"Missing year"+(t?"/era/eraYear":""),DX=t=>`Invalid monthCode: ${t}`,A3="Mismatching month/monthCode",FX="Missing month/monthCode",ZI="Cannot guess year",Yf="Invalid leap month",NX="Invalid protocol",ng="Invalid protocol results",tT="Mismatching Calendars",BX=t=>`Invalid Calendar: ${t}`,I3="Mismatching TimeZones",LX="Forbidden ICU TimeZone",zX="Out-of-bounds offset",UX="Out-of-bounds TimeZone gap",VX="Invalid TimeZone offset",jX="Ambiguous offset",I0="Out-of-bounds date",$X="Out-of-bounds duration",WX="Cannot mix duration signs",C0="Missing relativeTo",HX="Cannot use large units",qX="Required smallestUnit or largestUnit",XX="smallestUnit > largestUnit",Mr=t=>`Cannot parse: ${t}`,Fa=t=>`Invalid substring: ${t}`,ZX=t=>`Cannot format ${t}`,YX="Mismatching types for formatting",KX="Cannot specify TimeZone",C3=_i(e0,(t,e)=>e),wd=_i(e0,(t,e,i)=>i),po=_i($_,2),tw={nanosecond:0,microsecond:1,millisecond:2,second:3,minute:4,hour:5,day:6,week:7,month:8,year:9},P0=Object.keys(tw),kr=864e5,P3=1e3,mu=1e3,Va=1e6,go=1e9,R0=6e10,M0=36e11,vs=864e11,Go=[1,mu,Va,go,R0,M0,vs],Kl=P0.slice(0,6),iw=eg(Kl),R3=["offset"],M3=["timeZone"],k3=Kl.concat(R3),O3=k3.concat(M3),sw=["era","eraYear"],JX=sw.concat(["year"]),k0=["year"],iT=["monthCode"],sT=["month"].concat(iT),rg=["day"],nT=sT.concat(k0),D3=iT.concat(k0),ta=rg.concat(nT),GX=rg.concat(sT),F3=rg.concat(iT),N3=wd(Kl,0),xi="iso8601",O0="gregory",td="japanese",B3={[O0]:{bce:-1,ce:0},[td]:{bce:-1,ce:0,meiji:1867,taisho:1911,showa:1925,heisei:1988,reiwa:2018},ethioaa:{era0:0},ethiopic:{era0:0,era1:5500},coptic:{era0:-1,era1:0},roc:{beforeroc:-1,minguo:0},buddhist:{be:0},islamic:{ah:0},indian:{saka:0},persian:{ap:0}},QX={chinese:13,dangi:13,hebrew:-6},hn=_i(n0,"string"),eZ=_i(n0,"boolean"),tZ=_i(n0,"number"),iZ=_i(n0,"function"),ss=P0.map(t=>t+"s"),rT=eg(ss),sZ=ss.slice(0,6),L3=ss.slice(6),nZ=L3.slice(1),rZ=C3(ss),Hn=wd(ss,0),oT=wd(sZ,0),aT=_i(nk,ss),ia=["isoNanosecond","isoMicrosecond","isoMillisecond","isoSecond","isoMinute","isoHour"],lT=["isoDay","isoMonth","isoYear"],D0=ia.concat(lT),cT=eg(lT),z3=eg(ia),U3=eg(D0),Qo=wd(z3,0),oZ=_i(nk,D0),Zc=Intl.DateTimeFormat,V3="en-GB",uT=1e8,aZ=uT*kr,lZ=[uT,0],cZ=[-uT,0],Up=275760,Vp=-271821,uZ=1970,id=1972,Ia=12,hZ=fd(1868,9,8),dZ=Yr(FH,WeakMap),J_="smallestUnit",nw="unit",pp="roundingIncrement",jv="fractionalSecondDigits",j3="relativeTo",$3={constrain:0,reject:1},fZ=Object.keys($3),pZ={compatible:0,reject:1,earlier:2,later:3},gZ={reject:0,use:1,prefer:2,ignore:3},mZ={auto:0,never:1,critical:2,always:3},_Z={auto:0,never:1,critical:2},yZ={auto:0,never:1},bZ={floor:0,halfFloor:1,ceil:2,halfCeil:3,trunc:4,halfTrunc:5,expand:6,halfExpand:7,halfEven:8},og=_i(E1,J_),hT=_i(E1,"largestUnit"),vZ=_i(E1,nw),W3=_i(hu,"overflow",$3),H3=_i(hu,"disambiguation",pZ),xZ=_i(hu,"offset",gZ),dT=_i(hu,"calendarName",mZ),wZ=_i(hu,"timeZoneName",_Z),TZ=_i(hu,"offset",yZ),ag=_i(hu,"roundingMode",bZ),jp="PlainYearMonth",$p="PlainMonthDay",Td="PlainDate",Sd="PlainDateTime",fT="PlainTime",Jl="ZonedDateTime",pT="Instant",gT="Duration",SZ=[Math.floor,t=>Wm(t)?Math.floor(t):Math.round(t),Math.ceil,t=>Wm(t)?Math.ceil(t):Math.round(t),Math.trunc,t=>Wm(t)?Math.trunc(t)||0:Math.round(t),t=>t<0?Math.floor(t):Math.ceil(t),t=>Math.sign(t)*Math.round(Math.abs(t))||0,t=>Wm(t)?(t=Math.trunc(t)||0)+t%2:Math.round(t)],_u="UTC",l_=5184e3,EZ=H_(1847),AZ=H_(new Date().getUTCFullYear()+10),IZ=/0+$/,Fr=Yr(GH,WeakMap),YI=2**32-1,mT=Yr(t=>{const e=q1(t);return typeof e=="object"?new PZ(e):new CZ(e||0)});class CZ{constructor(e){this.v=e}getOffsetNanosecondsFor(){return this.v}getPossibleInstantsFor(e){return[_1(e,this.v)]}l(){}}class PZ{constructor(e){this.$=(i=>{function s(w){const I=Jx(w,c,_),[C,P]=FI(I),B=l(C),q=l(P);return B===q?B:n(h(C,P),B,q,w)}function n(w,I,C,P){let B,q;for(;(P===void 0||(B=P=w[1]?C:void 0)===void 0)&&(q=w[1]-w[0]);){const V=w[0]+Math.floor(q/2);i(V)===C?w[1]=V:w[0]=V+1}return B}const l=Yr(i),h=Yr(sq);let c=EZ,_=AZ;return{G(w){const I=s(w-86400),C=s(w+86400),P=w-I,B=w-C;if(I===C)return[P];const q=s(P);return q===s(B)?[w-q]:I>C?[P,B]:[]},V:s,l(w,I){const C=Jx(w,c,_);let[P,B]=FI(C);const q=l_*I,V=I<0?()=>B>c||(c=C,0):()=>P<_||(_=C,0);for(;V();){const J=l(P),ue=l(B);if(J!==ue){const he=h(P,B);n(he,J,ue);const pe=he[0];if((Ml(pe,w)||1)===I)return pe}P+=q,B+=q}}}})((i=>s=>{const n=g1(i,s*P3);return H_(r3(n),parseInt(n.month),parseInt(n.day),parseInt(n.hour),parseInt(n.minute),parseInt(n.second))-s})(e))}getOffsetNanosecondsFor(e){return this.$.V(pk(e))*go}getPossibleInstantsFor(e){const[i,s]=[H_((n=e).isoYear,n.isoMonth,n.isoDay,n.isoHour,n.isoMinute,n.isoSecond),n.isoMillisecond*Va+n.isoMicrosecond*mu+n.isoNanosecond];var n;return this.$.G(i).map(l=>Gr(ed(Np(l,go),s)))}l(e,i){const[s,n]=gk(e),l=this.$.l(s+(i>0||n?1:0),i);if(l!==void 0)return Np(l,go)}}const _T="([+−-])",c_="(?:[.,](\\d{1,9}))?",q3=`(?:(?:${_T}(\\d{6}))|(\\d{4}))-?(\\d{2})`,yT="(\\d{2})(?::?(\\d{2})(?::?(\\d{2})"+c_+")?)?",bT=_T+yT,RZ=q3+"-?(\\d{2})(?:[T ]"+yT+"(Z|"+bT+")?)?",X3="\\[(!?)([^\\]]*)\\]",F0=`((?:${X3}){0,9})`,MZ=vd(q3+F0),kZ=vd("(?:--)?(\\d{2})-?(\\d{2})"+F0),OZ=vd(RZ+F0),DZ=vd("T?"+yT+"(?:"+bT+")?"+F0),FZ=vd(bT),NZ=new RegExp(X3,"g"),BZ=vd(`${_T}?P(\\d+Y)?(\\d+M)?(\\d+W)?(\\d+D)?(?:T(?:(\\d+)${c_}H)?(?:(\\d+)${c_}M)?(?:(\\d+)${c_}S)?)?`),LZ=Yr(t=>new Zc(V3,{timeZone:t,era:"short",year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"})),zZ=/^(AC|AE|AG|AR|AS|BE|BS|CA|CN|CS|CT|EA|EC|IE|IS|JS|MI|NE|NS|PL|PN|PR|PS|SS|VS)T$/,UZ=Yr(Eq),vT=Yr(t=>new Zc(V3,{calendar:t,timeZone:_u,era:"short",year:"numeric",month:"short",day:"numeric"})),VZ=/^M(\d{2})(L?)$/,jZ={era:W_,eraYear:nr,year:nr,month:_I,monthCode:W_,day:_I},$Z=wd(Kl,nr),WZ=wd(ss,hk),KI=Object.assign({},jZ,$Z,WZ,{offset:W_}),HZ=_i(CH,Kl,ia),JI={dateAdd(t,e,i){const s=Ji(i);let n,{years:l,months:h,weeks:c,days:_}=e;if(_+=Pn(e,5)[0],l||h)n=((w,I,C,P,B)=>{let[q,V,J]=w.h(I);if(C){const[ue,he]=w.I(q,V);q+=C,V=K_(ue,he,w.U(q)),V=ho("month",V,1,w.L(q),B)}return P&&([q,V]=w._(q,V,P)),J=ho("day",J,1,w.j(q,V),B),w.q(q,V,J)})(this,t,l,h,s);else{if(!c&&!_)return t;n=ar(t)}return n+=(7*c+_)*kr,kl(l0(n))},dateUntil(t,e,i){if(i<=7){let _=0,w=s3({...t,...Qo},{...e,...Qo});return i===7&&([_,w]=Ll(w,7)),{...Hn,weeks:_,days:w}}const s=this.h(t),n=this.h(e);let[l,h,c]=((_,w,I,C,P,B,q)=>{let V=P-w,J=B-I,ue=q-C;if(V||J){const he=Math.sign(V||J);let pe=_.j(P,B),Pe=0;if(Math.sign(ue)===-he){const Oe=pe;[P,B]=_._(P,B,-he),V=P-w,J=B-I,pe=_.j(P,B),Pe=he<0?-Oe:pe}if(ue=q-Math.min(C,pe)+Pe,V){const[Oe,Ae]=_.I(w,I),[We,ze]=_.I(P,B);if(J=We-Oe||Number(ze)-Number(Ae),Math.sign(J)===-he){const Ge=he<0&&-_.L(P);V=(P-=he)-w,J=B-K_(Oe,Ae,_.U(P))+(Ge||_.L(P))}}}return[V,J,ue]})(this,...s,...n);return i===8&&(h+=this.J(l,s[0]),l=0),{...Hn,years:l,months:h,days:c}},dateFromFields(t,e){const i=Ji(e),s=zv(this,t),n=Uv(this,t,s,i),l=HI(this,t,n,s,i);return Cn(kl(this.P(s,n,l)),this.id||xi)},yearMonthFromFields(t,e){const i=Ji(e),s=zv(this,t),n=Uv(this,t,s,i);return eu(m1(this.P(s,n,1)),this.id||xi)},monthDayFromFields(t,e){const i=Ji(e),s=!this.id,{monthCode:n,year:l,month:h}=t;let c,_,w,I,C;if(n!==void 0){[c,_]=l3(n),C=tk(t,"day");const P=this.N(c,_,C);if(!P)throw new RangeError(ZI);if([w,I]=P,h!==void 0&&h!==I)throw new RangeError(A3);s&&(I=ho("month",I,1,Ia,1),C=ho("day",C,1,y1(l!==void 0?l:w,I),i))}else{w=l===void 0&&s?id:zv(this,t),I=Uv(this,t,w,i),C=HI(this,t,I,w,i);const P=this.U(w);_=I===P,c=Qx(I,P);const B=this.N(c,_,C);if(!B)throw new RangeError(ZI);[w,I]=B}return q_(kl(this.P(w,I,C)),this.id||xi)},fields(t){return ew(this)&&t.includes("year")?[...t,...sw]:t},mergeFields(t,e){const i=Object.assign(Object.create(null),t);return Vv(i,e,sT),ew(this)&&(Vv(i,e,JX),this.id===td&&Vv(i,e,GX,sw)),i},inLeapYear(t){const[e]=this.h(t);return this.K(e)},monthsInYear(t){const[e]=this.h(t);return this.L(e)},daysInMonth(t){const[e,i]=this.h(t);return this.j(e,i)},daysInYear(t){const[e]=this.h(t);return this.X(e)},dayOfYear:K1,era(t){return this.ee(t)[0]},eraYear(t){return this.ee(t)[1]},monthCode(t){const[e,i]=this.h(t),[s,n]=this.I(e,i);return((l,h)=>"M"+po(l)+(h?"L":""))(s,n)},dayOfWeek:vk,daysInWeek(){return 7}},qZ={dayOfYear:K1,h:_k,q:fd},XZ=Object.assign({},qZ,{weekOfYear:o3,yearOfWeek:a3,R(t){function e(B){return(7-Bi(0)&&(C=1,P++):(C=i(-1),P--),[C,P,I]}}),ZZ={dayOfYear:K1,h:Gx,q:zp,weekOfYear:o3,yearOfWeek:a3,R(){return[]}},lg=yX(Object.assign({},JI,XZ,{h:_k,ee(t){return this.id===O0?xk(t):this.id===td?dZ(t):[]},I:(t,e)=>[e,0],N(t,e){if(!e)return[id,t]},K:b1,U(){},L:yk,J:t=>t*Ia,j:y1,X:bk,P:(t,e,i)=>({isoYear:t,isoMonth:e,isoDay:i}),q:fd,_:(t,e,i)=>(t+=t0(i,Ia),(e+=h1(i,Ia))<1?(t--,e+=Ia):e>Ia&&(t++,e-=Ia),[t,e]),year(t){return t.isoYear},month(t){return t.isoMonth},day:t=>t.isoDay}),Object.assign({},JI,ZZ,{h:Gx,ee(t){const e=this.O(t);return[e.era,e.eraYear]},I(t,e){const i=Hm.call(this,t);return[Qx(e,i),i===e]},N(t,e,i){let[s,n,l]=Gx.call(this,{isoYear:id,isoMonth:Ia,isoDay:31});const h=Hm.call(this,s),c=n===h;(Ml(t,Qx(n,h))||Ml(Number(e),Number(c))||Ml(i,l))===1&&s--;for(let _=0;_<100;_++){const w=s-_,I=Hm.call(this,w),C=K_(t,e,I);if(e===(C===I)&&i<=$I.call(this,w,C))return[w,C]}},K(t){const e=qm.call(this,t);return e>qm.call(this,t-1)&&e>qm.call(this,t+1)},U:Hm,L:Xm,J(t,e){const i=e+t,s=Math.sign(t),n=s<0?-1:0;let l=0;for(let h=e;h!==i;h+=s)l+=Xm.call(this,h+n);return l},j:$I,X:qm,P(t,e,i){return l0(zp.call(this,t,e,i))},q:zp,_(t,e,i){if(i){if(e+=i,!Number.isSafeInteger(e))throw new RangeError(I0);if(i<0)for(;e<1;)e+=Xm.call(this,--t);else{let s;for(;e>(s=Xm.call(this,t));)e-=s,t++}}return[t,e]},year(t){return this.O(t).year},month(t){const{year:e,F:i}=this.O(t),{C:s}=this.B(e);return s[i]+1},day(t){return this.O(t).day}})),Ol="numeric",Ed=["timeZoneName"],Z3={month:Ol,day:Ol},xT={year:Ol,month:Ol},wT=Object.assign({},xT,{day:Ol}),TT={hour:Ol,minute:Ol,second:Ol},ST=Object.assign({},wT,TT),YZ=Object.assign({},ST,{timeZoneName:"short"}),KZ=Object.keys(xT),JZ=Object.keys(Z3),GZ=Object.keys(wT),QZ=Object.keys(TT),ET=["dateStyle"],eY=KZ.concat(ET),tY=JZ.concat(ET),AT=GZ.concat(ET,["weekday"]),cg=QZ.concat(["dayPeriod","timeStyle"]),IT=AT.concat(cg),iY=IT.concat(Ed),sY=Ed.concat(cg),nY=Ed.concat(AT),rY=Ed.concat(["day","weekday"],cg),oY=Ed.concat(["year","weekday"],cg),aY={},Y3=[gu(IT,ST),A1],lY=[gu(iY,YZ),A1,0,(t,e)=>{const i=cr(t.timeZone);if(e&&cr(e.timeZone)!==i)throw new RangeError(I3);return i}],K3=[gu(IT,ST,Ed),ar],J3=[gu(AT,wT,sY),ar],G3=[gu(cg,TT,nY),t=>zl(t)/Va],Q3=[gu(eY,xT,rY),ar,1],eO=[gu(tY,Z3,oY),ar,1];let GI;function sa(t,e,i,s,n){function l(..._){if(!(this instanceof l))throw new TypeError(XI);iC(this,e(..._))}function h(_,w){return Object.defineProperties(function(...I){return _.call(this,c(this),...I)},fI(w))}function c(_){const w=Xn(_);if(!w||w.branding!==t)throw new TypeError(XI);return w}return Object.defineProperties(l.prototype,{...IH(Jo(h,i)),...Gh(Jo(h,s)),...u1("Temporal."+t)}),Object.defineProperties(l,{...Gh(n),...fI(t)}),[l,_=>{const w=Object.create(l.prototype);return iC(w,_),w},c]}function tO(t){return t=t.concat("id").sort(),e=>{if(!PH(e,t))throw new TypeError(NX);return e}}function Ad(t){if(Xn(t)||t.calendar!==void 0||t.timeZone!==void 0)throw new TypeError(IX);return t}function Zm(t,e){const i={};for(const s in t)i[s]=({o:n},l)=>{const h=Xn(l)||{},{branding:c}=h,_=c===Td||e.includes(c)?h:sr(l);return n[s](_)};return i}function CT(t){const e={};for(const i in t)e[i]=s=>{const{calendar:n}=s;return(l=n,typeof l=="string"?lg(l):(h=l,Object.assign(Object.create(SY),{i:h})))[i](s);var l,h};return e}function Gl(){throw new TypeError(CX)}function ug({calendar:t}){return typeof t=="string"?new BT(t):t}function QI(t,e){if(e=Rn(e),qn(t)){const s=Xn(t);if(s&&s.branding===$p)return Ji(e),s;const n=nO(t);return p3(U0(n||xi),!n,t,e)}const i=cq(lg,t);return Ji(e),i}function iO(t,e,i){return s=e.call(t,er(Wn(i))),zk(s0(s));var s}function u_(t,e=lO){const i=Object.keys(e).sort(),s={};for(const n of i)s[n]=_i(e[n],t,iZ(t[n]));return s}function Es(t,e){return typeof t=="string"?mT(t):u_(t,e)}function un(t){return Es(t,ow)}function Uo(t){if(qn(t)){const e=Xn(t);if(e)switch(e.branding){case pT:return e;case Jl:return Wn(e.epochNanoseconds)}}return nq(t)}function eC(t,e,i){const s=e.l(Uo(i).epochNanoseconds,t);return s?er(Wn(s)):null}function Ns(t){return qn(t)?(Xn(t)||{}).timeZone||RY(t):(e=>H1(fq(hn(e))))(t)}function bl(t,e){if(qn(t)){const i=Xn(t)||{};switch(i.branding){case fT:return Ji(e),i;case Sd:return Ji(e),ea(i);case Jl:return Ji(e),y3(un,i)}return kq(t,e)}return Ji(e),uq(t)}function PT(t){return t===void 0?void 0:bl(t)}function fh(t,e){if(e=Rn(e),qn(t)){const s=Xn(t);return s&&s.branding===jp?(Ji(e),s):f3(L0(hg(t)),t,e)}const i=lq(lg,t);return Ji(e),i}function vl(t,e){if(e=Rn(e),qn(t)){const s=Xn(t)||{};switch(s.branding){case Sd:return Ji(e),s;case Td:return Ji(e),In({...s,...Qo});case Jl:return Ji(e),m3(un,s)}return Mq(z0(hg(t)),t,e)}const i=aq(t);return Ji(e),i}function sr(t,e){if(e=Rn(e),qn(t)){const s=Xn(t)||{};switch(s.branding){case Td:return Ji(e),s;case Sd:return Ji(e),Cn(s);case Jl:return Ji(e),_3(un,s)}return d3(z0(hg(t)),t,e)}const i=L1(t);return Ji(e),i}function sO(t,e,i){return Ho(e.call(t,sn(Cn(i,t))))}function na(t){return e=>typeof e=="string"?lg(e):((i,s)=>{const n=Object.keys(s).sort(),l={};for(const h of n)l[h]=_i(s[h],i,i[h]);return l})(e,t)}function tn(t){if(qn(t)){const e=Xn(t);return e&&e.branding===gT?e:Oq(t)}return hq(t)}function Kf(t){if(t!==void 0){if(qn(t)){const e=Xn(t)||{};switch(e.branding){case Jl:case Td:return e;case Sd:return Cn(e)}const i=hg(t);return{...Pq(Ns,Es,z0(i),t),calendar:i}}return rq(t)}}function hg(t){return nO(t)||xi}function nO(t){const{calendar:e}=t;if(e!==void 0)return $n(e)}function $n(t){return qn(t)?(Xn(t)||{}).calendar||HY(t):(e=>A0(dq(hn(e))))(t)}function ph(t,e){if(e=Rn(e),qn(t)){const i=Xn(t);if(i&&i.branding===Jl)return h0(e),i;const s=hg(t);return Rq(Ns,Es,z0(s),s,t,e)}return oq(t,e)}function tC(t){return Jo(e=>i=>e(rw(i)),t)}function rw(t){return Fr(t,un)}function cY(){const t=Zc.prototype,e=Object.getOwnPropertyDescriptors(t),i=Object.getOwnPropertyDescriptors(Zc),s=function(n,l={}){if(!(this instanceof s))return new s(n,l);LT.set(this,((h,c={})=>{const _=new Zc(h,c),w=_.resolvedOptions(),I=w.locale,C=Jr(Object.keys(c),w),P=Yr(dY),B=(...q)=>{let V;const J=q.map((ue,he)=>{const pe=Xn(ue),Pe=(pe||{}).branding;if(he&&V&&V!==Pe)throw new TypeError(YX);return V=Pe,pe});return V?P(V)(I,C,...J):[_,...q]};return B.u=_,B})(n,l))};for(const n in e){const l=e[n],h=n.startsWith("format")&&uY(n);typeof l.value=="function"?l.value=n==="constructor"?s:h||hY(n):h&&(l.get=function(){return h.bind(this)})}return i.prototype.value=Object.create(t,e),Object.defineProperties(s,i),s}function uY(t){return function(...e){const i=LT.get(this),[s,...n]=i(...e);return s[t](...n)}}function hY(t){return function(...e){return LT.get(this).u[t](...e)}}function dY(t){const e=fY[t];if(!e)throw new TypeError(ZX(t));return Yl(e,Yr(v3))}const fY={Instant:Y3,PlainDateTime:K3,PlainDate:J3,PlainTime:G3,PlainYearMonth:Q3,PlainMonthDay:eO},pY=Yl(Y3),gY=Yl(lY),mY=Yl(K3),_Y=Yl(J3),yY=Yl(G3),bY=Yl(Q3),vY=Yl(eO),RT={era:OH,eraYear:ok,year:s0,month:Ho,daysInMonth:Ho,daysInYear:Ho,inLeapYear:eZ,monthsInYear:Ho},N0={monthCode:hn},MT={day:Ho},rO={dayOfWeek:Ho,dayOfYear:Ho,weekOfYear:DH,yearOfWeek:ok,daysInWeek:Ho},oO=Object.assign({},RT,N0,MT,rO),G_=new WeakMap,Xn=G_.get.bind(G_),iC=G_.set.bind(G_),xY={...Zm(RT,[jp]),...Zm(rO,[]),...Zm(N0,[jp,$p]),...Zm(MT,[$p])},kT=CT(oO),wY=CT({...RT,...N0}),TY=CT({...N0,...MT}),dg={calendarId:t=>cr(t.calendar)},SY=Jo((t,e)=>function(i){const{i:s}=this;return t(s[e](sn(Cn(i,s))))},oO),EY=e0(t=>e=>e[t],ss.concat("sign")),OT=e0((t,e)=>i=>i[ia[e]],Kl),aO={epochSeconds:BH,epochMilliseconds:A1,epochMicroseconds:LH,epochNanoseconds:zH},fg=_i(ik,new Set(["branding"])),[AY,sd,IY]=sa($p,_i(qq,$n),{...dg,...TY},{getISOFields:fg,getCalendar:ug,with(t,e,i){return sd(Lq(jY,t,this,Ad(e),i))},equals:(t,e)=>xq(t,QI(e)),toPlainDate(t,e){return sn(oX(pg,t,this,e))},toLocaleString(t,e,i){const[s,n]=vY(e,i,t);return s.format(n)},toString:EI,toJSON:t=>EI(t),valueOf:Gl},{from:(t,e)=>sd(QI(t,e))}),lO={getOffsetNanosecondsFor:iO,getPossibleInstantsFor(t,e,i){const s=[...e.call(t,Vn(In(i,xi)))].map(l=>PY(l).epochNanoseconds),n=s.length;return n>1&&(s.sort(Dr),Uk(yo(_o(s[0],s[n-1])))),s}},ow={getOffsetNanosecondsFor:iO},[CY,er,PY]=sa(pT,Vq,aO,{add:(t,e)=>er(CI(0,t,tn(e))),subtract:(t,e)=>er(CI(1,t,tn(e))),until:(t,e,i)=>As(BI(0,t,Uo(e),i)),since:(t,e,i)=>As(BI(1,t,Uo(e),i)),round:(t,e)=>er(VH(t,e)),equals:(t,e)=>mq(t,Uo(e)),toZonedDateTime(t,e){const i=Hl(e);return cn(qI(t,Ns(i.timeZone),$n(i.calendar)))},toZonedDateTimeISO:(t,e)=>cn(qI(t,Ns(e))),toLocaleString(t,e,i){const[s,n]=pY(e,i,t);return s.format(n)},toString:(t,e)=>vI(Ns,un,t,e),toJSON:t=>vI(Ns,un,t),valueOf:Gl},{from:t=>er(Uo(t)),fromEpochSeconds:t=>er(cX(t)),fromEpochMilliseconds:t=>er(uX(t)),fromEpochMicroseconds:t=>er(hX(t)),fromEpochNanoseconds:t=>er(dX(t)),compare:(t,e)=>Kk(Uo(t),Uo(e))}),[B0,mK]=sa("TimeZone",t=>{const e=pq(t);return{branding:"TimeZone",id:e,o:mT(e)}},{id:t=>t.id},{getPossibleInstantsFor:({o:t},e)=>t.getPossibleInstantsFor(vl(e)).map(i=>er(Wn(i))),getOffsetNanosecondsFor:({o:t},e)=>t.getOffsetNanosecondsFor(Uo(e).epochNanoseconds),getOffsetStringFor(t,e){const i=Uo(e).epochNanoseconds,s=u_(this,ow).getOffsetNanosecondsFor(i);return md(s)},getPlainDateTimeFor(t,e,i=xi){const s=Uo(e).epochNanoseconds,n=u_(this,ow).getOffsetNanosecondsFor(s);return Vn(In(cu(s,n),$n(i)))},getInstantFor(t,e,i){const s=vl(e),n=Tk(i),l=u_(this);return er(Wn(Kr(l,s,n)))},getNextTransition:({o:t},e)=>eC(1,t,e),getPreviousTransition:({o:t},e)=>eC(-1,t,e),equals(t,e){return!!Z1(this,Ns(e))},toString:t=>t.id,toJSON:t=>t.id},{from(t){const e=Ns(t);return typeof e=="string"?new B0(e):e}}),RY=tO(Object.keys(lO)),[MY,wl]=sa(fT,Xq,OT,{getISOFields:fg,with(t,e,i){return wl(zq(this,Ad(e),i))},add:(t,e)=>wl(OI(0,t,tn(e))),subtract:(t,e)=>wl(OI(1,t,tn(e))),until:(t,e,i)=>As(jI(0,t,bl(e),i)),since:(t,e,i)=>As(jI(1,t,bl(e),i)),round:(t,e)=>wl(WH(t,e)),equals:(t,e)=>wq(t,bl(e)),toZonedDateTime:(t,e)=>cn(aX(Ns,sr,Es,t,e)),toPlainDateTime:(t,e)=>Vn(lX(t,sr(e))),toLocaleString(t,e,i){const[s,n]=yY(e,i,t);return s.format(n)},toString:AI,toJSON:t=>AI(t),valueOf:Gl},{from:(t,e)=>wl(bl(t,e)),compare:(t,e)=>X1(bl(t),bl(e))}),[kY,Al,OY]=sa(jp,_i(Hq,$n),{...dg,...wY},{getISOFields:fg,getCalendar:ug,with(t,e,i){return Al(Bq(VY,t,this,Ad(e),i))},add:(t,e,i)=>Al(kI(sC,0,t,tn(e),i)),subtract:(t,e,i)=>Al(kI(sC,1,t,tn(e),i)),until:(t,e,i)=>As(VI(nC,0,t,fh(e),i)),since:(t,e,i)=>As(VI(nC,1,t,fh(e),i)),equals:(t,e)=>vq(t,fh(e)),toPlainDate(t,e){return sn(rX(pg,t,this,e))},toLocaleString(t,e,i){const[s,n]=bY(e,i,t);return s.format(n)},toString:SI,toJSON:t=>SI(t),valueOf:Gl},{from:(t,e)=>Al(fh(t,e)),compare:(t,e)=>xd(fh(t),fh(e))}),[DY,Vn]=sa(Sd,_i($q,$n),{...dg,...kT,...OT},{getISOFields:fg,getCalendar:ug,with(t,e,i){return Vn(Fq(pg,t,this,Ad(e),i))},withCalendar:(t,e)=>Vn(Q1(t,$n(e))),withPlainDate:(t,e)=>Vn(mX(t,sr(e))),withPlainTime:(t,e)=>Vn(gX(t,PT(e))),add:(t,e,i)=>Vn(RI(iu,0,t,tn(e),i)),subtract:(t,e,i)=>Vn(RI(iu,1,t,tn(e),i)),until:(t,e,i)=>As(zI(qo,0,t,vl(e),i)),since:(t,e,i)=>As(zI(qo,1,t,vl(e),i)),round:(t,e)=>Vn($H(t,e)),equals:(t,e)=>yq(t,vl(e)),toZonedDateTime:(t,e,i)=>cn(Gq(Es,t,Ns(e),i)),toPlainDate:t=>sn(Cn(t)),toPlainTime:t=>wl(ea(t)),toPlainYearMonth(t){return Al(Qq(L0,t,this))},toPlainMonthDay(t){return sd(eX(U0,t,this))},toLocaleString(t,e,i){const[s,n]=mY(e,i,t);return s.format(n)},toString:wI,toJSON:t=>wI(t),valueOf:Gl},{from:(t,e)=>Vn(vl(t,e)),compare:(t,e)=>Gk(vl(t),vl(e))}),[FY,sn,cO]=sa(Td,_i(Wq,$n),{...dg,...kT},{getISOFields:fg,getCalendar:ug,with(t,e,i){return sn(Nq(pg,t,this,Ad(e),i))},withCalendar:(t,e)=>sn(Q1(t,$n(e))),add:(t,e,i)=>sn(MI(iu,0,t,tn(e),i)),subtract:(t,e,i)=>sn(MI(iu,1,t,tn(e),i)),until:(t,e,i)=>As(UI(qo,0,t,sr(e),i)),since:(t,e,i)=>As(UI(qo,1,t,sr(e),i)),equals:(t,e)=>bq(t,sr(e)),toZonedDateTime(t,e){const i=!qn(e)||e instanceof B0?{timeZone:e}:e;return cn(tX(Ns,bl,Es,t,i))},toPlainDateTime:(t,e)=>Vn(iX(t,PT(e))),toPlainYearMonth(t){return Al(sX(L0,t,this))},toPlainMonthDay(t){return sd(nX(U0,t,this))},toLocaleString(t,e,i){const[s,n]=_Y(e,i,t);return s.format(n)},toString:TI,toJSON:t=>TI(t),valueOf:Gl},{from:(t,e)=>sn(sr(t,e)),compare:(t,e)=>xd(sr(t),sr(e))}),DT={fields(t,e,i){return[...e.call(t,i)]}},uO=Object.assign({dateFromFields(t,e,i,s){return cO(e.call(t,Object.assign(Object.create(null),i),s))}},DT),hO=Object.assign({yearMonthFromFields(t,e,i,s){return OY(e.call(t,Object.assign(Object.create(null),i),s))}},DT),dO=Object.assign({monthDayFromFields(t,e,i,s){return IY(e.call(t,Object.assign(Object.create(null),i),s))}},DT),FT={mergeFields(t,e,i,s){return Hl(e.call(t,Object.assign(Object.create(null),i),Object.assign(Object.create(null),s)))}},NY=Object.assign({},uO,FT),BY=Object.assign({},hO,FT),LY=Object.assign({},dO,FT),NT={dateAdd(t,e,i,s,n){return cO(e.call(t,sn(Cn(i,t)),As(nn(s)),n))}},fO=Object.assign({},NT,{dateUntil(t,e,i,s,n,l){return WY(e.call(t,sn(Cn(i,t)),sn(Cn(s,t)),Object.assign(Object.create(null),l,{largestUnit:P0[n]})))}}),zY=Object.assign({},NT,{day:sO}),UY=Object.assign({},fO,{day:sO}),L0=na(hO),z0=na(uO),U0=na(dO),VY=na(BY),pg=na(NY),jY=na(LY),iu=na(NT),qo=na(fO),sC=na(zY),nC=na(UY),[$Y,As,WY]=sa(gT,Zq,{...EY,blank:iq},{with:(t,e)=>As(Uq(t,e)),negated:t=>As(B1(t)),abs:t=>As(tq(t)),add:(t,e,i)=>As(DI(Kf,qo,Es,0,t,tn(e),i)),subtract:(t,e,i)=>As(DI(Kf,qo,Es,1,t,tn(e),i)),round:(t,e)=>As(eq(Kf,qo,Es,t,e)),total:(t,e)=>UH(Kf,qo,Es,t,e),toLocaleString(t,e,i){return Intl.DurationFormat?new Intl.DurationFormat(e,i).format(this):Lv(t)},toString:Lv,toJSON:t=>Lv(t),valueOf:Gl},{from:t=>As(tn(t)),compare:(t,e,i)=>gq(Kf,iu,Es,tn(t),tn(e),i)}),pO={toString:t=>t.id,toJSON:t=>t.id,...xY,dateAdd:({id:t,o:e},i,s,n)=>sn(Cn(e.dateAdd(sr(i),tn(s),n),t)),dateUntil:({o:t},e,i,s)=>As(nn(t.dateUntil(sr(e),sr(i),NH(s)))),dateFromFields:({id:t,o:e},i,s)=>sn(d3(e,i,s,kH(t))),yearMonthFromFields:({id:t,o:e},i,s)=>Al(f3(e,i,s,RH(t))),monthDayFromFields:({id:t,o:e},i,s)=>sd(p3(e,0,i,s,MH(t))),fields({o:t},e){const i=new Set(ta),s=[];for(const n of e){if(hn(n),!i.has(n))throw new RangeError(T3(n));i.delete(n),s.push(n)}return t.fields(s)},mergeFields:({o:t},e,i)=>t.mergeFields(pI(mI(e)),pI(mI(i)))},[BT]=sa("Calendar",t=>{const e=Cq(t);return{branding:"Calendar",id:e,o:lg(e)}},{id:t=>t.id},pO,{from(t){const e=$n(t);return typeof e=="string"?new BT(e):e}}),HY=tO(Object.keys(pO).slice(4)),[qY,cn]=sa(Jl,_i(jq,$n,Ns),{...aO,...dg,...tC(kT),...tC(OT),offset:t=>md(rw(t).offsetNanoseconds),offsetNanoseconds:t=>rw(t).offsetNanoseconds,timeZoneId:t=>cr(t.timeZone),hoursInDay:t=>HH(Es,t)},{getISOFields:t=>QH(un,t),getCalendar:ug,getTimeZone:({timeZone:t})=>typeof t=="string"?new B0(t):t,with(t,e,i){return cn(Dq(pg,Es,t,this,Ad(e),i))},withCalendar:(t,e)=>cn(Q1(t,$n(e))),withTimeZone:(t,e)=>cn(_X(t,Ns(e))),withPlainDate:(t,e)=>cn(pX(Es,t,sr(e))),withPlainTime:(t,e)=>cn(fX(Es,t,PT(e))),add:(t,e,i)=>cn(PI(iu,Es,0,t,tn(e),i)),subtract:(t,e,i)=>cn(PI(iu,Es,1,t,tn(e),i)),until:(t,e,i)=>As(nn(LI(qo,Es,0,t,ph(e),i))),since:(t,e,i)=>As(nn(LI(qo,Es,1,t,ph(e),i))),round:(t,e)=>cn(jH(Es,t,e)),startOfDay:t=>cn(qH(Es,t)),equals:(t,e)=>_q(t,ph(e)),toInstant:t=>er(Yq(t)),toPlainDateTime:t=>Vn(m3(un,t)),toPlainDate:t=>sn(_3(un,t)),toPlainTime:t=>wl(y3(un,t)),toPlainYearMonth(t){return Al(Kq(L0,t,this))},toPlainMonthDay(t){return sd(Jq(U0,t,this))},toLocaleString(t,e,i={}){const[s,n]=gY(e,i,t);return s.format(n)},toString:(t,e)=>xI(un,t,e),toJSON:t=>xI(un,t),valueOf:Gl},{from:(t,e)=>cn(ph(t,e)),compare:(t,e)=>Jk(ph(t),ph(e))}),XY=Object.defineProperties({},{...u1("Temporal.Now"),...Gh({timeZoneId:()=>gl(),instant:()=>er(Wn(a_())),zonedDateTime:(t,e=gl())=>cn(lr(a_(),Ns(e),$n(t))),zonedDateTimeISO:(t=gl())=>cn(lr(a_(),Ns(t),xi)),plainDateTime:(t,e=gl())=>Vn(In(Zf(un(Ns(e))),$n(t))),plainDateTimeISO:(t=gl())=>Vn(In(Zf(un(Ns(t))),xi)),plainDate:(t,e=gl())=>sn(Cn(Zf(un(Ns(e))),$n(t))),plainDateISO:(t=gl())=>sn(Cn(Zf(un(Ns(t))),xi)),plainTimeISO:(t=gl())=>wl(ea(Zf(un(Ns(t)))))})}),rC=Object.defineProperties({},{...u1("Temporal"),...Gh({PlainYearMonth:kY,PlainMonthDay:AY,PlainDate:FY,PlainTime:MY,PlainDateTime:DY,ZonedDateTime:qY,Instant:CY,Calendar:BT,TimeZone:B0,Duration:$Y,Now:XY})}),ZY=cY(),LT=new WeakMap;Object.create(Intl),Gh({DateTimeFormat:ZY});const YY=NC({name:"TimeSlider",components:{},props:{numDays:Number,dailyTotals:{type:Object,required:!0},weeks:{type:Object,required:!0},initial:{type:Object,required:!0},labels:{type:Object,required:!1}},data:()=>({leftside:0,rightside:0,isDraggingDivider:0,isDragHappening:!1,dragStartWidth:100,thumbLeft:100,thumbWidth:0,pctStart:0,pctEnd:1,maxInfections:1,side:"",useInitial:!0}),computed:{},watch:{},mounted(){this.rightside=this.numDays||0,this.updateWeeks();const e=document.getElementById("dailybar").clientWidth;this.thumbLeft=Math.floor(this.initial[0]*e),this.thumbWidth=Math.ceil((this.initial[1]-this.initial[0])*e);const i=new ResizeObserver(n=>{const h=document.getElementById("dailybar").clientWidth;let c=this.useInitial?this.initial[0]:this.pctStart,_=this.useInitial?this.initial[1]:this.pctEnd;this.useInitial=!1,this.thumbLeft=Math.floor(c*h),this.thumbWidth=Math.ceil((_-c)*h)}),s=document.getElementById("dailybar");s&&i.observe(s)},methods:{updateWeeks(){this.maxInfections=Math.max(...this.weeks)},getWeekHeight(t){return Math.floor(100*t/this.maxInfections)},dividerDragStart(t,e){this.isDraggingDivider=t.clientX,this.dragStartWidth=this.thumbLeft,this.side=e},dividerDragEnd(t){this.isDraggingDivider=0,this.side=""},dividerDragging(t){if(!this.isDraggingDivider)return;if(this.side=="left")return this.adjustLeftSide(t);if(this.side=="right")return this.adjustRightSide(t);const i=document.getElementById("dailybar").clientWidth,s=t.clientX-this.isDraggingDivider;this.thumbLeft=Math.max(0,this.dragStartWidth+s),this.thumbLeft=Math.min(this.thumbLeft,i-this.thumbWidth),this.pctStart=this.thumbLeft/i,this.pctEnd=(this.thumbLeft+this.thumbWidth)/i,this.$emit("range",{start:this.pctStart,end:this.pctEnd})},adjustLeftSide(t){const i=document.getElementById("dailybar").clientWidth,s=t.clientX-this.isDraggingDivider,n=this.thumbLeft+s;n<0||n>=this.thumbLeft+this.thumbWidth-16||(this.isDraggingDivider+=s,this.thumbLeft+=s,this.thumbWidth-=s,this.thumbLeft=Math.max(0,this.thumbLeft),this.pctStart=this.thumbLeft/i,this.pctEnd=(this.thumbLeft+this.thumbWidth)/i,console.log(this.pctStart,this.pctEnd),this.$emit("range",{start:this.pctStart,end:this.pctEnd}))},adjustRightSide(t){const i=document.getElementById("dailybar").clientWidth,s=t.clientX-this.isDraggingDivider,n=this.thumbWidth+s;n<16||this.thumbLeft+n>i||(this.thumbWidth+=s,this.isDraggingDivider=t.clientX,this.pctStart=this.thumbLeft/i,this.pctEnd=(this.thumbLeft+this.thumbWidth)/i,console.log(this.pctStart,this.pctEnd),this.$emit("range",{start:this.pctStart,end:this.pctEnd}))},sizerDragStart(t){console.log("dragStart",t),this.isDraggingDivider=t.clientX,this.dragStartWidth=this.thumbLeft},sizerDragEnd(t){this.isDraggingDivider=0},sizerDragging(t){if(!this.isDraggingDivider)return;console.log("sizer",this.isDraggingDivider,t.clientX,this.thumbLeft,this.thumbWidth);const i=document.getElementById("dailybar").clientWidth,s=t.clientX-this.isDraggingDivider;console.log({deltaX:s});let n=s;console.log(n),console.log("oldwidth",this.thumbWidth,"newwidth",this.thumbWidth-n),console.log("oldleft",this.thumbLeft,"newleft",this.thumbLeft+n),this.thumbWidth-=n,this.thumbLeft+=n,this.pctStart=this.thumbLeft/i,this.pctEnd=(this.thumbLeft+this.thumbWidth)/i,this.$emit("range",{start:this.pctStart,end:this.pctEnd})},filterByDate(){}}}),KY={id:"dailybar"},JY={class:"bars"},GY={key:0,class:"labels"};function QY(t,e,i,s,n,l){return Pa(),Cc("div",{class:"time-slider",onMousemove:e[9]||(e[9]=ul((...h)=>t.dividerDragging&&t.dividerDragging(...h),["stop"])),onMouseup:e[10]||(e[10]=(...h)=>t.dividerDragEnd&&t.dividerDragEnd(...h))},[tr("div",KY,[tr("div",JY,[(Pa(!0),Cc(lo,null,DE(t.weeks,h=>(Pa(),Cc("div",{class:"week",style:Ph({height:`${t.getWeekHeight(h)}%`})},null,4))),256))]),t.labels?(Pa(),Cc("div",GY,[(Pa(!0),Cc(lo,null,DE(t.labels,h=>(Pa(),Cc("div",{class:"date-label",style:Ph({left:`${h.leftPct}%`})},h_(h.text),5))),256))])):rP("",!0)]),tr("div",{id:"dragthumb",style:Ph({left:`${t.thumbLeft}px`,width:`${t.thumbWidth}px`}),onMousedown:e[6]||(e[6]=(...h)=>t.dividerDragStart&&t.dividerDragStart(...h)),onMouseup:e[7]||(e[7]=(...h)=>t.dividerDragEnd&&t.dividerDragEnd(...h)),onMousemove:e[8]||(e[8]=ul((...h)=>t.dividerDragging&&t.dividerDragging(...h),["stop"]))},[tr("div",{id:"dragleftie",onMousedown:e[0]||(e[0]=ul(h=>t.dividerDragStart(h,"left"),["stop"])),onMouseup:e[1]||(e[1]=ul(h=>t.dividerDragEnd(h,"left"),["stop"])),onMousemove:e[2]||(e[2]=ul(h=>t.dividerDragging(h,"left"),["stop"]))},null,32),tr("div",{id:"dragrightie",onMousedown:e[3]||(e[3]=ul(h=>t.dividerDragStart(h,"right"),["stop"])),onMouseup:e[4]||(e[4]=ul(h=>t.dividerDragEnd(h,"right"),["stop"])),onMousemove:e[5]||(e[5]=ul(h=>t.dividerDragging(h,"right"),["stop"]))},null,32)],36)],32)}const gO=(t,e)=>{const i=t.__vccOpts||t;for(const[s,n]of e)i[s]=n;return i},eK=gO(YY,[["render",QY],["__scopeId","data-v-04bdd2c0"]]);function tK(t){return new Worker("/assets/CSVStreamer.worker-DUKFFnIK.js",{name:t==null?void 0:t.name})}const iK="https://svn.vsp.tu-berlin.de/repos/public-svn/matsim/scenarios/countries/de/episim/battery",sK=NC({name:"InfectionMap",components:{TimeSlider:eK},data:()=>({map:{},allInfections:[],isLoaded:!1,population:[],numInfections:0,statusText:"Loading...",coordinates:new Float64Array(1),view:0,deckOverlay:{},startDate:"",numDays:0,dailyTotals:new Float32Array(0),filterStartDate:0,filterEndDate:0,weeks:[],labels:[],csvStreamer:null}),computed:{},watch:{view(){this.updateLayers()}},beforeDestroy(){this.csvStreamer&&this.csvStreamer.terminate(),this.allInfections=[],this.coordinates=new Float64Array(1),this.population=[]},mounted(){this.map=null,this.map=new dI.Map({container:"mymap",style:"https://basemaps.cartocdn.com/gl/positron-gl-style/style.json",center:[8,49.9],zoom:7,bearing:0,pitch:50}),this.loadInfections()},methods:{filterByDate(t){const e=Math.floor(this.numDays*t.start),i=Math.ceil(this.numDays*t.end);this.filterStartDate=e,this.filterEndDate=i,this.updateLayers()},async loadInfections(){let e=new URLSearchParams(document.location.search).get("path")||"";if(!e){this.statusText="Need file path in URL";return}const i=`${iK}/${e}`;console.log({batteryUrl:i});const s=i.lastIndexOf("summaries/"),n=i.substring(0,s)+"metadata.yaml",l=await(await fetch(n)).text(),h=EH.parse(l);this.startDate=h.startDates?h.startDates[0]:"2020-02-25",console.log(this.startDate),this.csvStreamer=new tK;let c=0,_=0,w=0;this.csvStreamer.onmessage=async I=>{if(I.data.status&&(this.statusText=I.data.status),I.data.error&&(this.statusText=I.data.error),I.data.finished){const C=c/w,P=_/w;this.finishedLoadingInfections(C,P)}if(I.data.data){const C=I.data.data;this.numInfections+=C.length,this.statusText="Reading infections: "+this.numInfections,C.length&&(c+=C[0].home_lon,_+=C[0].home_lat,w+=1);for(const P of C)this.allInfections.push({home_lon:P.home_lon,home_lat:P.home_lat,daysSinceStart:P.daysSinceStart})}},this.csvStreamer.postMessage({url:i,options:{header:!0,dynamicTyping:!0,skipEmptyLines:!0}})},finishedLoadingInfections(t,e){if(this.csvStreamer.terminate(),!this.allInfections.length){this.statusText="ERROR: No infections file found";return}this.setupDailyTotals(),this.isLoaded=!0,this.buildDeckLayer(t,e)},setupDailyTotals(){this.numDays=this.allInfections[this.allInfections.length-1].daysSinceStart||0,this.filterEndDate=this.numDays,this.dailyTotals=new Float32Array(this.numDays+1),this.allInfections.forEach(l=>{this.dailyTotals[l.daysSinceStart]+=1});let t=0;for(let l=0;l96.5&&(this.labels[this.labels.length-1].leftPct=96.5)},buildDeckLayer(t,e){this.statusText="Generating map...",this.deckOverlay=new eW({layers:[]}),this.map.addControl(this.deckOverlay),this.map.addControl(new dI.NavigationControl),t&&e&&this.map.jumpTo({center:[t,e],zoom:9}),this.statusText="Home locations of infected people",this.updateLayers()},updateLayers(){const t=[];t.push(new $x({visible:this.view==0,id:"pointlayer-1",data:this.allInfections,getFillColor:[50,0,180],getRadius:20,getPosition:e=>[e.home_lon,e.home_lat],radiusScale:1,stroked:!1,filled:!0,autoHighlight:!0,highlightColor:[255,255,255],opacity:.05,pickable:!1,useDevicePixels:!1,transitions:{},parameters:{depthTest:!1},glOptions:{fp64:!1},extensions:[new Wx({filterSize:1})],filterRange:[this.filterStartDate,this.filterEndDate],getFilterValue:e=>e.daysSinceStart})),this.deckOverlay._deck.setProps({layers:t})}}}),nK=t=>(sN("data-v-8f04284c"),t=t(),nN(),t),rK={class:"app"},oK={class:"button-row"},aK={class:"flex1",style:{margin:"auto 0"}},lK=nK(()=>tr("div",{class:"mymap flex1",id:"mymap"},null,-1));function cK(t,e,i,s,n,l){const h=bN("time-slider");return Pa(),Cc("div",rK,[tr("div",oK,[tr("p",aK,[tr("b",null,h_(t.statusText)+" "+h_(t.filterStartDate+t.filterEndDate?`Day ${t.filterStartDate} - ${t.filterEndDate}`:""),1)]),tr("button",{onClick:e[0]||(e[0]=c=>t.view=0),class:Rh({isActive:t.view==0})},"Points",2),tr("button",{onClick:e[1]||(e[1]=c=>t.view=1),class:Rh({isActive:t.view==1})},"Hexagons",2),tr("button",{onClick:e[2]||(e[2]=c=>t.view=2),class:Rh({isActive:t.view==2})},"Districts",2)]),lK,t.isLoaded?(Pa(),sP(h,{key:0,class:"time-slider",numDays:t.numDays,dailyTotals:t.dailyTotals,weeks:t.weeks,initial:[0,30/t.numDays],labels:t.labels,onRange:t.filterByDate},null,8,["numDays","dailyTotals","weeks","initial","labels","onRange"])):rP("",!0)])}const uK=gO(sK,[["render",cK],["__scopeId","data-v-8f04284c"]]);jB(uK).mount("#app");