gis-leaflet-helper 3.2.18 → 3.2.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/gis-leaflet-helper.es.js +7609 -7266
- package/dist/gis-leaflet-helper.umd.js +5 -5
- package/dist/types.d.ts +1 -0
- package/package.json +1 -1
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
(function(){ try {var elementStyle = document.createElement('style'); elementStyle.appendChild(document.createTextNode(".leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:\"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)\";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:\"\"}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.marker-icon{background-color:#fff;border:1px solid #3388ff;border-radius:50%;margin:-8px 0 0 -8px!important;width:14px!important;height:14px!important;outline:0;transition:opacity ease .3s}.marker-icon-middle{opacity:.7;margin:-6px 0 0 -6px!important;width:10px!important;height:10px!important}.leaflet-pm-draggable{cursor:move!important}.cursor-marker{cursor:crosshair;pointer-events:none;opacity:0}.cursor-marker.visible{opacity:1!important}.geoman-draw-cursor,.geoman-draw-cursor .leaflet-interactive{cursor:crosshair}.rect-style-marker,.rect-start-marker{opacity:0}.rect-style-marker.visible,.rect-start-marker.visible{opacity:1!important}.vertexmarker-disabled{opacity:.7}.pm-text-marker{width:0;height:0}.pm-textarea{box-sizing:content-box;background-color:#fff;color:#000;resize:none;border:none;outline:0;cursor:pointer;border-radius:3px;padding-left:7px;padding-bottom:0;padding-top:4px}.leaflet-pm-draggable .pm-textarea{cursor:move}.pm-textarea:focus,.pm-textarea:focus-within,.pm-textarea:focus-visible,.pm-textarea:active{border:2px solid #000;outline:0}.pm-textarea.pm-disabled{border:none;-webkit-user-select:none;user-select:none}.pm-textarea.pm-hasfocus{cursor:auto}.leaflet-pm-toolbar .leaflet-buttons-control-button{padding:5px;box-sizing:border-box;position:relative;z-index:3}.leaflet-pm-toolbar .leaflet-pm-actions-container a.leaflet-pm-action:first-child:not(.pos-right),.leaflet-pm-toolbar .leaflet-pm-actions-container a.leaflet-pm-action:last-child.pos-right{border-radius:0}.leaflet-pm-toolbar .button-container a.leaflet-buttons-control-button{border-radius:0}.leaflet-pm-toolbar .button-container:last-child a.leaflet-buttons-control-button{border-radius:0 0 2px 2px}.leaflet-pm-toolbar .button-container:first-child a.leaflet-buttons-control-button{border-radius:2px 2px 0 0}.leaflet-pm-toolbar .button-container:last-child a.leaflet-buttons-control-button{border-bottom:none}.leaflet-pm-toolbar .control-fa-icon{font-size:19px;line-height:24px}.leaflet-pm-toolbar .control-icon{width:100%;height:100%;box-sizing:border-box;background-size:contain;background-repeat:no-repeat;background-position:center center}.leaflet-pm-toolbar .leaflet-pm-icon-marker{background-image:url('data:image/svg+xml,<?xml version=\"1.0\" encoding=\"UTF-8\"?>%0A<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">%0A <!-- Generator: Sketch 52.5 (67469) - http://www.bohemiancoding.com/sketch -->%0A <title>Atoms/Icons/Tools/Marker</title>%0A <desc>Created with Sketch.</desc>%0A <defs>%0A <path d=\"M15.5,24.8782959 C15.2909201,24.8772219 15.1744857,24.8467817 14.6590866,24.2354163 C10.2196955,19.4118054 8,15.5014392 8,12.5043177 C8,8.35979746 11.3578644,5 15.5,5 C19.6421356,5 23,8.35979746 23,12.5043177 C23,17 18.2878217,21.9268378 16.3336601,24.2440186 C15.8224622,24.8501802 15.7090799,24.8793699 15.5,24.8782959 Z M15.5,15.5326948 C17.275201,15.5326948 18.7142857,14.1180004 18.7142857,12.3728864 C18.7142857,10.6277723 17.275201,9.21307792 15.5,9.21307792 C13.724799,9.21307792 12.2857143,10.6277723 12.2857143,12.3728864 C12.2857143,14.1180004 13.724799,15.5326948 15.5,15.5326948 Z\" id=\"path-1\"></path>%0A </defs>%0A <g id=\"Symbols\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">%0A <g id=\"Atoms/Icons/Tools/Marker\" transform=\"translate(-3.000000, -3.000000)\">%0A <mask id=\"mask-2\" fill=\"white\">%0A <use xlink:href=\"%23path-1\"></use>%0A </mask>%0A <use id=\"Mask\" fill=\"%235B5B5B\" fill-rule=\"nonzero\" xlink:href=\"%23path-1\"></use>%0A </g>%0A </g>%0A</svg>')}.leaflet-pm-toolbar .leaflet-pm-icon-polygon{background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\">%0A <defs>%0A <path id=\"polygon-a\" d=\"M19.4206892,9.16509725 C19.1523681,8.66992914 19,8.10275831 19,7.5 C19,5.56700338 20.5670034,4 22.5,4 C24.4329966,4 26,5.56700338 26,7.5 C26,9.26323595 24.6961471,10.7219407 23,10.9645556 L23,19.0354444 C24.6961471,19.2780593 26,20.736764 26,22.5 C26,24.4329966 24.4329966,26 22.5,26 C20.736764,26 19.2780593,24.6961471 19.0354444,23 L10.9645556,23 C10.7219407,24.6961471 9.26323595,26 7.5,26 C5.56700338,26 4,24.4329966 4,22.5 C4,20.5670034 5.56700338,19 7.5,19 C8.10275831,19 8.66992914,19.1523681 9.16509725,19.4206892 L19.4206892,9.16509725 Z M20.8349073,10.5793063 L10.5793108,20.8349027 C10.6086731,20.8890888 10.6366469,20.9441372 10.6631844,21 L19.3368156,21 C19.6825775,20.272154 20.272154,19.6825775 21,19.3368156 L21,10.6631844 C20.9441372,10.6366469 20.8890888,10.6086731 20.8349027,10.5793108 Z M22.5,9 C23.3284271,9 24,8.32842712 24,7.5 C24,6.67157288 23.3284271,6 22.5,6 C21.6715729,6 21,6.67157288 21,7.5 C21,8.32842712 21.6715729,9 22.5,9 Z M22.5,24 C23.3284271,24 24,23.3284271 24,22.5 C24,21.6715729 23.3284271,21 22.5,21 C21.6715729,21 21,21.6715729 21,22.5 C21,23.3284271 21.6715729,24 22.5,24 Z M7.5,24 C8.32842712,24 9,23.3284271 9,22.5 C9,21.6715729 8.32842712,21 7.5,21 C6.67157288,21 6,21.6715729 6,22.5 C6,23.3284271 6.67157288,24 7.5,24 Z\"/>%0A </defs>%0A <g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(-3 -3)\">%0A <mask id=\"polygon-b\" fill=\"%23fff\">%0A <use xlink:href=\"%23polygon-a\"/>%0A </mask>%0A <use fill=\"%235B5B5B\" fill-rule=\"nonzero\" xlink:href=\"%23polygon-a\"/>%0A <g fill=\"%235B5B5B\" mask=\"url(%23polygon-b)\">%0A <rect width=\"30\" height=\"30\"/>%0A </g>%0A </g>%0A</svg>%0A')}.leaflet-pm-toolbar .leaflet-pm-icon-polyline{background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\">%0A <defs>%0A <path id=\"line-a\" d=\"M9.16509725,19.4206892 L18.4206892,10.1650973 C18.1523681,9.66992914 18,9.10275831 18,8.5 C18,6.56700338 19.5670034,5 21.5,5 C23.4329966,5 25,6.56700338 25,8.5 C25,10.4329966 23.4329966,12 21.5,12 C20.8972417,12 20.3300709,11.8476319 19.8349027,11.5793108 L10.5793108,20.8349027 C10.8476319,21.3300709 11,21.8972417 11,22.5 C11,24.4329966 9.43299662,26 7.5,26 C5.56700338,26 4,24.4329966 4,22.5 C4,20.5670034 5.56700338,19 7.5,19 C8.10275831,19 8.66992914,19.1523681 9.16509725,19.4206892 Z M21.5,10 C22.3284271,10 23,9.32842712 23,8.5 C23,7.67157288 22.3284271,7 21.5,7 C20.6715729,7 20,7.67157288 20,8.5 C20,9.32842712 20.6715729,10 21.5,10 Z M7.5,24 C8.32842712,24 9,23.3284271 9,22.5 C9,21.6715729 8.32842712,21 7.5,21 C6.67157288,21 6,21.6715729 6,22.5 C6,23.3284271 6.67157288,24 7.5,24 Z\"/>%0A </defs>%0A <g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(-3 -3)\">%0A <mask id=\"line-b\" fill=\"%23fff\">%0A <use xlink:href=\"%23line-a\"/>%0A </mask>%0A <use fill=\"%235B5B5B\" fill-rule=\"nonzero\" xlink:href=\"%23line-a\"/>%0A <g fill=\"%235B5B5B\" mask=\"url(%23line-b)\">%0A <rect width=\"30\" height=\"30\"/>%0A </g>%0A </g>%0A</svg>%0A')}.leaflet-pm-toolbar .leaflet-pm-icon-circle{background-image:url('data:image/svg+xml,<?xml version=\"1.0\" encoding=\"UTF-8\"?>%0A<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">%0A <!-- Generator: Sketch 52.5 (67469) - http://www.bohemiancoding.com/sketch -->%0A <title>Atoms/Icons/Tools/Circle</title>%0A <desc>Created with Sketch.</desc>%0A <defs>%0A <path d=\"M18.2897751,6.78602275 C18.8924131,6.29464981 19.661797,6 20.5,6 C22.4329966,6 24,7.56700338 24,9.5 C24,10.338203 23.7053502,11.1075869 23.2139772,11.7102249 C23.719599,12.8712053 24,14.1528571 24,15.5 C24,20.7467051 19.7467051,25 14.5,25 C9.25329488,25 5,20.7467051 5,15.5 C5,10.2532949 9.25329488,6 14.5,6 C15.8471429,6 17.1287947,6.28040098 18.2897751,6.78602275 Z M17.1504228,8.4817586 C16.3263581,8.17039236 15.4330777,8 14.5,8 C10.3578644,8 7,11.3578644 7,15.5 C7,19.6421356 10.3578644,23 14.5,23 C18.6421356,23 22,19.6421356 22,15.5 C22,14.5669223 21.8296076,13.6736419 21.5182414,12.8495772 C21.1960383,12.9473968 20.8541622,13 20.5,13 C18.5670034,13 17,11.4329966 17,9.5 C17,9.14583778 17.0526032,8.80396169 17.1504228,8.4817586 Z M14.5,17 C13.6715729,17 13,16.3284271 13,15.5 C13,14.6715729 13.6715729,14 14.5,14 C15.3284271,14 16,14.6715729 16,15.5 C16,16.3284271 15.3284271,17 14.5,17 Z M20.5,11 C21.3284271,11 22,10.3284271 22,9.5 C22,8.67157288 21.3284271,8 20.5,8 C19.6715729,8 19,8.67157288 19,9.5 C19,10.3284271 19.6715729,11 20.5,11 Z\" id=\"path-1\"></path>%0A </defs>%0A <g id=\"Symbols\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">%0A <g id=\"Atoms/Icons/Tools/Circle\" transform=\"translate(-3.000000, -3.000000)\">%0A <mask id=\"mask-2\" fill=\"white\">%0A <use xlink:href=\"%23path-1\"></use>%0A </mask>%0A <use id=\"Mask\" fill=\"%235B5B5B\" fill-rule=\"nonzero\" xlink:href=\"%23path-1\"></use>%0A <g id=\"Atoms/Color/Grey\" mask=\"url(%23mask-2)\" fill=\"%235B5B5B\">%0A <rect id=\"Rectangle\" x=\"0\" y=\"0\" width=\"30\" height=\"30\"></rect>%0A </g>%0A </g>%0A </g>%0A</svg>')}.leaflet-pm-toolbar .leaflet-pm-icon-circle-marker{background-image:url('data:image/svg+xml,<?xml version=\"1.0\" encoding=\"UTF-8\"?>%0A%0A<svg viewBox=\"0 0 100 100\" xmlns=\"http://www.w3.org/2000/svg\" stroke=\"%235B5B5B\" stroke-width=\"8\"%0A fill=\"none\">%0A<circle cx=\"50\" cy=\"50\" r=\"35\"/>%0A <circle cx=\"50\" cy=\"50\" r=\"3\" fill=\"%235B5B5B\"/>%0A</svg>')}.leaflet-pm-toolbar .leaflet-pm-icon-rectangle{background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\">%0A <defs>%0A <path id=\"rectangle-a\" d=\"M23,10.9645556 L23,19.0354444 C24.6961471,19.2780593 26,20.736764 26,22.5 C26,24.4329966 24.4329966,26 22.5,26 C20.736764,26 19.2780593,24.6961471 19.0354444,23 L10.9645556,23 C10.7219407,24.6961471 9.26323595,26 7.5,26 C5.56700338,26 4,24.4329966 4,22.5 C4,20.736764 5.30385293,19.2780593 7,19.0354444 L7,10.9645556 C5.30385293,10.7219407 4,9.26323595 4,7.5 C4,5.56700338 5.56700338,4 7.5,4 C9.26323595,4 10.7219407,5.30385293 10.9645556,7 L19.0354444,7 C19.2780593,5.30385293 20.736764,4 22.5,4 C24.4329966,4 26,5.56700338 26,7.5 C26,9.26323595 24.6961471,10.7219407 23,10.9645556 Z M21,10.6631844 C20.272154,10.3174225 19.6825775,9.72784598 19.3368156,9 L10.6631844,9 C10.3174225,9.72784598 9.72784598,10.3174225 9,10.6631844 L9,19.3368156 C9.72784598,19.6825775 10.3174225,20.272154 10.6631844,21 L19.3368156,21 C19.6825775,20.272154 20.272154,19.6825775 21,19.3368156 L21,10.6631844 Z M7.5,9 C8.32842712,9 9,8.32842712 9,7.5 C9,6.67157288 8.32842712,6 7.5,6 C6.67157288,6 6,6.67157288 6,7.5 C6,8.32842712 6.67157288,9 7.5,9 Z M22.5,9 C23.3284271,9 24,8.32842712 24,7.5 C24,6.67157288 23.3284271,6 22.5,6 C21.6715729,6 21,6.67157288 21,7.5 C21,8.32842712 21.6715729,9 22.5,9 Z M22.5,24 C23.3284271,24 24,23.3284271 24,22.5 C24,21.6715729 23.3284271,21 22.5,21 C21.6715729,21 21,21.6715729 21,22.5 C21,23.3284271 21.6715729,24 22.5,24 Z M7.5,24 C8.32842712,24 9,23.3284271 9,22.5 C9,21.6715729 8.32842712,21 7.5,21 C6.67157288,21 6,21.6715729 6,22.5 C6,23.3284271 6.67157288,24 7.5,24 Z\"/>%0A </defs>%0A <g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(-3 -3)\">%0A <mask id=\"rectangle-b\" fill=\"%23fff\">%0A <use xlink:href=\"%23rectangle-a\"/>%0A </mask>%0A <use fill=\"%235B5B5B\" fill-rule=\"nonzero\" xlink:href=\"%23rectangle-a\"/>%0A <g fill=\"%235B5B5B\" mask=\"url(%23rectangle-b)\">%0A <rect width=\"30\" height=\"30\"/>%0A </g>%0A </g>%0A</svg>%0A')}.leaflet-pm-toolbar .leaflet-pm-icon-delete{background-image:url('data:image/svg+xml,<?xml version=\"1.0\" encoding=\"UTF-8\"?>%0A<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">%0A <!-- Generator: Sketch 52.5 (67469) - http://www.bohemiancoding.com/sketch -->%0A <title>Atoms/Icons/Tools/Eraser</title>%0A <desc>Created with Sketch.</desc>%0A <defs>%0A <path d=\"M17.7874219,18.4812552 L11.6480079,13.3498184 L6.40466009,19.3816001 L10.5539156,22.9884929 L13.86934,22.9884929 L17.7874219,18.4812552 Z M16.5074252,22.9884929 L26.0000002,22.9884929 L26.0000002,24.9884929 L10.0000002,24.9884929 L9.80708313,24.9884929 L5.09254204,20.8910192 C4.25891285,20.1663564 4.17057814,18.9031112 4.89524093,18.069482 L16.0482444,5.23941916 C16.7729072,4.40578998 18.0361525,4.31745526 18.8697816,5.04211806 L24.9074583,10.2905903 C25.7410875,11.0152531 25.8294222,12.2784983 25.1047594,13.1121275 L16.5074252,22.9884929 Z\" id=\"path-1\"></path>%0A </defs>%0A <g id=\"Symbols\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">%0A <g id=\"Atoms/Icons/Tools/Eraser\" transform=\"translate(-3.000000, -3.000000)\">%0A <mask id=\"mask-2\" fill=\"white\">%0A <use xlink:href=\"%23path-1\"></use>%0A </mask>%0A <use id=\"Combined-Shape\" fill=\"%235B5B5B\" fill-rule=\"nonzero\" xlink:href=\"%23path-1\"></use>%0A </g>%0A </g>%0A</svg>')}.leaflet-pm-toolbar .leaflet-pm-icon-edit{background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\">%0A <defs>%0A <path id=\"edit_anchor-a\" d=\"M13.5,11 C11.5670034,11 10,9.43299662 10,7.5 C10,5.56700338 11.5670034,4 13.5,4 C15.4329966,4 17,5.56700338 17,7.5 C17,9.43299662 15.4329966,11 13.5,11 Z M13.5,9 C14.3284271,9 15,8.32842712 15,7.5 C15,6.67157288 14.3284271,6 13.5,6 C12.6715729,6 12,6.67157288 12,7.5 C12,8.32842712 12.6715729,9 13.5,9 Z M12.0002889,7.52973893 C12.0125983,8.16273672 12.4170197,8.6996643 12.9807111,8.90767966 L3,15 L3,13 L12.0002889,7.52973893 Z M14.2172722,6.18228472 L19.453125,3 L22.6589355,3 L14.989102,7.68173885 C14.9962971,7.62216459 15,7.56151472 15,7.5 C15,6.93138381 14.6836098,6.4366645 14.2172722,6.18228472 Z M23.4434042,19.2851736 L20.1282799,19.2851736 L21.8729983,23.5349525 C21.9945296,23.8295773 21.8556546,24.1599209 21.5778734,24.2849208 L20.0414675,24.9545142 C19.7550613,25.0795141 19.4338738,24.9366704 19.3123426,24.6509518 L17.6544367,20.6154541 L14.9461873,23.4010151 C14.5852811,23.7721711 14,23.4860463 14,22.9992653 L14,9.57183533 C14,9.05933561 14.6225311,8.809492 14.946156,9.17008555 L23.8340292,18.3120179 C24.1925291,18.6613615 23.9279979,19.2851736 23.4434042,19.2851736 Z\"/>%0A </defs>%0A <g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(-3 -3)\">%0A <mask id=\"edit_anchor-b\" fill=\"%23fff\">%0A <use xlink:href=\"%23edit_anchor-a\"/>%0A </mask>%0A <use fill=\"%235B5B5B\" fill-rule=\"nonzero\" xlink:href=\"%23edit_anchor-a\"/>%0A <g fill=\"%235B5B5B\" mask=\"url(%23edit_anchor-b)\">%0A <rect width=\"30\" height=\"30\"/>%0A </g>%0A </g>%0A</svg>%0A')}.leaflet-pm-toolbar .leaflet-pm-icon-drag{background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\">%0A <defs>%0A <path id=\"move-a\" d=\"M21,14 L21,10 L27,15 L21,20 L21,16 L16,16 L16,21 L20,21 L15,27 L10,21 L14,21 L14,16 L9,16 L9,20 L3,15 L9,10 L9,14 L14,14 L14,9 L10,9 L15,3 L20,9 L16,9 L16,14 L21,14 Z\"/>%0A </defs>%0A <g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(-3 -3)\">%0A <mask id=\"move-b\" fill=\"%23fff\">%0A <use xlink:href=\"%23move-a\"/>%0A </mask>%0A <use fill=\"%23D8D8D8\" xlink:href=\"%23move-a\"/>%0A <g fill=\"%235B5B5B\" mask=\"url(%23move-b)\">%0A <rect width=\"30\" height=\"30\"/>%0A </g>%0A </g>%0A</svg>%0A')}.leaflet-pm-toolbar .leaflet-pm-icon-cut{background-image:url('data:image/svg+xml,<?xml version=\"1.0\" encoding=\"UTF-8\"?>%0A<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">%0A <!-- Generator: Sketch 52.5 (67469) - http://www.bohemiancoding.com/sketch -->%0A <title>Atoms/Icons/Tools/Scissors</title>%0A <desc>Created with Sketch.</desc>%0A <defs>%0A <path d=\"M12.9691574,13.4939435 L21.0317032,5.54167013 L23.4649499,5.67722957 L17.0470713,14.5106816 L27.5660336,17.1333535 L25.7891944,18.8012588 L14.5854951,17.8987506 L13.6487955,19.188007 C13.794639,19.2650958 13.9367985,19.3534417 14.0741377,19.4532245 C15.6379648,20.5894114 15.9846357,22.7782052 14.8484488,24.3420324 C13.7122619,25.9058595 11.5234681,26.2525304 9.95964096,25.1163435 C8.39581384,23.9801565 8.04914296,21.7913627 9.18532986,20.2275356 C9.74587276,19.4560145 10.5626188,18.9807475 11.4341218,18.8336407 L12.6805656,17.1180579 L12.5239724,16.3747216 L11.9506932,15.3012391 L9.89310646,14.7882251 C9.13093796,15.2357261 8.19977854,15.3966447 7.27445355,15.1659352 C5.39887519,14.698301 4.25751094,12.7987519 4.72514515,10.9231736 C5.19277935,9.04759519 7.09232846,7.90623094 8.96790682,8.37386515 C10.8434852,8.84149935 11.9848494,10.7410485 11.5172152,12.6166268 C11.4761464,12.7813449 11.4240335,12.9404001 11.3618627,13.0931999 L12.9691574,13.4939435 Z M7.75829735,13.2253438 C8.56211664,13.4257584 9.37620912,12.9366023 9.57662378,12.132783 C9.77703844,11.3289637 9.28788233,10.5148713 8.48406303,10.3144566 C7.68024373,10.1140419 6.86615126,10.603198 6.6657366,11.4070173 C6.46532194,12.2108366 6.95447805,13.0249291 7.75829735,13.2253438 Z M10.8033639,21.4031061 C10.3164266,22.0733177 10.4649998,23.0113722 11.1352115,23.4983095 C11.8054231,23.9852467 12.7434776,23.8366735 13.2304148,23.1664619 C13.7173521,22.4962502 13.5687788,21.5581957 12.8985672,21.0712585 C12.2283556,20.5843212 11.2903011,20.7328945 10.8033639,21.4031061 Z\" id=\"path-1\"></path>%0A </defs>%0A <g id=\"Symbols\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">%0A <g id=\"Atoms/Icons/Tools/Scissors\" transform=\"translate(-3.000000, -3.000000)\">%0A <mask id=\"mask-2\" fill=\"white\">%0A <use xlink:href=\"%23path-1\"></use>%0A </mask>%0A <use id=\"Mask\" fill=\"%235B5B5B\" fill-rule=\"nonzero\" transform=\"translate(16.093194, 15.663351) rotate(-32.000000) translate(-16.093194, -15.663351) \" xlink:href=\"%23path-1\"></use>%0A </g>%0A </g>%0A</svg>')}.leaflet-pm-toolbar .leaflet-pm-icon-snapping{background-image:url('data:image/svg+xml,<?xml version=\"1.0\" encoding=\"UTF-8\"?>%0A<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">%0A <!-- Generator: Sketch 57.1 (83088) - https://sketch.com -->%0A <title>Atoms/Icons/Tools/Magnet</title>%0A <desc>Created with Sketch.</desc>%0A <defs>%0A <path d=\"M21.9994759,10.9428183 L21.9999985,16.3710417 C22,16.6872007 22,17.0058278 22,17.3269411 C22,21.5646545 18.6421356,25 14.5,25 C10.3578644,25 7,21.5646545 7,17.3269411 L7.00087508,10.9907507 L11.0022808,10.9984125 C11.0017033,11.6980114 11.001247,12.4168248 11.0008992,13.1554887 L11,17.3269411 C11,19.3756809 12.5876841,21 14.5,21 C16.4123159,21 18,19.3756809 18,17.3269411 C18,15.0702032 17.9995696,12.9619668 17.998539,10.9910032 L21.9994759,10.9428183 Z M10,7 C10.5522847,7 11,7.44771525 11,8 L11,10 L7,10 L7,8 C7,7.44771525 7.44771525,7 8,7 L10,7 Z M21,7 C21.5522847,7 22,7.44771525 22,8 L22,10 L18,10 L18,8 C18,7.44771525 18.4477153,7 19,7 L21,7 Z\" id=\"path-1\"></path>%0A </defs>%0A <g id=\"Symbols\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">%0A <g id=\"Atoms/Icons/Tools/Magnet\" transform=\"translate(-3.000000, -3.000000)\">%0A <mask id=\"mask-2\" fill=\"white\">%0A <use xlink:href=\"%23path-1\"></use>%0A </mask>%0A <use id=\"Mask\" fill=\"%235B5B5B\" fill-rule=\"nonzero\" transform=\"translate(14.500000, 16.000000) rotate(45.000000) translate(-14.500000, -16.000000) \" xlink:href=\"%23path-1\"></use>%0A </g>%0A </g>%0A</svg>')}.leaflet-pm-toolbar .leaflet-pm-icon-rotate{background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\">%0A <defs>%0A <path id=\"rotate\" d=\"M21.2,5.8c-0.1-0.2-0.2-0.3-0.3-0.5l-0.1-0.2c-0.1-0.2-0.2-0.3-0.3-0.5l-0.1-0.2c-0.1-0.2-0.2-0.3-0.4-0.5l-0.2-0.3l2.8-3.1L18,0.6l-4.6,0.1l0.5,4.5l0.5,4.5l3.2-3.6v0.1l0.1,0.2c0.1,0.1,0.1,0.2,0.2,0.2l0.1,0.2C18,7,18,7.1,18.1,7.2c0.3,0.7,0.6,1.4,0.7,2.1c0.2,1.4,0,2.9-0.6,4.2L18,13.9L17.9,14l-0.3,0.5l-0.1,0.2c-0.2,0.2-0.4,0.5-0.6,0.7c-0.5,0.5-1.1,1-1.7,1.3c-0.6,0.4-1.3,0.6-2.1,0.8c-0.7,0.1-1.5,0.2-2.2,0.1c-0.8-0.1-1.5-0.3-2.2-0.5c-0.7-0.3-1.3-0.7-1.9-1.2l-0.4-0.4l-0.2-0.3L6,15c-0.1-0.1-0.2-0.2-0.2-0.3l-0.3-0.4l-0.1-0.1l-0.2-0.4c0-0.1-0.1-0.1-0.1-0.2l-0.3-0.5l-0.1-0.2c-0.1-0.3-0.2-0.6-0.3-0.9c-0.2-0.8-0.3-1.6-0.3-2.4c0-0.2,0-0.3,0-0.5V8.9c0-0.2,0-0.3,0.1-0.4l0.1-0.6l0.2-0.6c0.3-0.8,0.7-1.5,1.2-2.2c0.5-0.7,1.1-1.3,1.8-1.8c0.2-0.1,0.3-0.4,0.1-0.6C7.5,2.6,7.4,2.5,7.3,2.5H7.1L7,2.6C6.1,3,5.4,3.6,4.7,4.2C4,4.9,3.5,5.7,3,6.6c-0.9,1.8-1.2,3.8-0.8,5.8c0.1,0.5,0.2,0.9,0.3,1.4l0.3,0.8C2.9,14.7,3,14.8,3,15l0.2,0.4c0,0.1,0.1,0.2,0.1,0.2l0.3,0.5c0.1,0.2,0.2,0.3,0.3,0.5l0.1,0.2c0.1,0.1,0.2,0.3,0.3,0.4L5,17.8c0.7,0.7,1.6,1.3,2.5,1.8c0.9,0.5,1.9,0.8,3,0.9c0.5,0.1,1,0.1,1.5,0.1c0.6,0,1.1,0,1.6-0.1c1-0.2,2.1-0.5,3-1l0.2-0.1c0.2-0.1,0.3-0.2,0.5-0.3l0.7-0.4c0.2-0.1,0.3-0.2,0.4-0.3l0.2-0.2c0.2-0.1,0.4-0.3,0.5-0.5l0.1-0.1c0.3-0.3,0.7-0.7,0.9-1l0.6-0.9l0.4-0.6c1-1.9,1.4-4.1,1.1-6.2C22,7.8,21.7,6.7,21.2,5.8z\"/>%0A </defs>%0A <g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(0 2)\">%0A <mask id=\"rotate-b\" fill=\"%23fff\">%0A <use xlink:href=\"%23rotate\"/>%0A </mask>%0A <use fill=\"%235B5B5B\" fill-rule=\"nonzero\" xlink:href=\"%23rotate\"/>%0A <g fill=\"%235B5B5B\" mask=\"url(%23rotate-b)\">%0A <rect width=\"30\" height=\"30\"/>%0A </g>%0A </g>%0A</svg>%0A')}.leaflet-pm-toolbar .leaflet-pm-icon-text{background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><defs><style>.cls-1{fill:none;stroke:%235b5b5b;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.5px;}<\\/style></defs><title>Text</title><g id=\"Ebene_2\" data-name=\"Ebene 2\"><polyline class=\"cls-1\" points=\"19.64 7.27 19.64 4 12 4 12 20 15.91 20 8.09 20 12 20 12 4 4.36 4 4.36 7.27\"/></g></svg>')}.leaflet-buttons-control-button:hover,.leaflet-buttons-control-button:focus{cursor:pointer;background-color:#f4f4f4}.active>.leaflet-buttons-control-button{box-shadow:inset 0 -1px 5px 2px #514d4d4f}.leaflet-buttons-control-text-hide{display:none}.button-container{position:relative}.button-container .leaflet-pm-actions-container{z-index:2;position:absolute;top:0;left:100%;display:none;white-space:nowrap;direction:ltr}.leaflet-right .leaflet-pm-toolbar .button-container .leaflet-pm-actions-container{right:100%;left:auto}.button-container.active .leaflet-pm-actions-container{display:block}.button-container .leaflet-pm-actions-container:not(.pos-right) a.leaflet-pm-action:last-child{border-radius:0 3px 3px 0;border-right:0}.button-container .leaflet-pm-actions-container.pos-right a.leaflet-pm-action:first-child{border-radius:3px 0 0 3px}.button-container .leaflet-pm-actions-container.pos-right a.leaflet-pm-action:last-child{border-right:0}.button-container .leaflet-pm-actions-container .leaflet-pm-action{padding:0 10px;background-color:#666;color:#fff;display:inline-block;width:auto;border-right:1px solid #eee;-webkit-user-select:none;user-select:none;border-bottom:none;height:29px;line-height:29px;vertical-align:middle}.leaflet-pm-toolbar .button-container:first-child.pos-right.active a.leaflet-buttons-control-button{border-top-left-radius:0}.leaflet-pm-toolbar .button-container:first-child.active:not(.pos-right) a.leaflet-buttons-control-button{border-top-right-radius:0}.button-container .leaflet-pm-actions-container .leaflet-pm-action:hover,.button-container .leaflet-pm-actions-container .leaflet-pm-action:focus{cursor:pointer;background-color:#777}.button-container .leaflet-pm-actions-container .leaflet-pm-action.active-action{background-color:#8e8e8e}.leaflet-pm-toolbar.activeChild{z-index:801}.leaflet-buttons-control-button.pm-disabled{background-color:#f4f4f4}.leaflet-buttons-control-button.pm-disabled>.control-icon{filter:opacity(.6)}.button-container .leaflet-pm-actions-container .pm-action-button-mode.control-icon{filter:brightness(0) invert(1);width:18px}body{height:100%;margin:0;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-family:Microsoft YaHei,Arial,sans-serif}label{font-weight:700}html{height:100%;box-sizing:border-box}#app{height:100%}*,*:before,*:after{box-sizing:inherit}a:focus,a:active{outline:none}a,a:focus,a:hover{cursor:pointer;text-decoration:none}div:focus{outline:none}.clearfix:after{visibility:hidden;display:block;font-size:0;content:\" \";clear:both;height:0}.leaflet-left .leaflet-control{margin-left:5px}.leaflet-right .leaflet-control{margin-right:5px}.leaflet-top .leaflet-control{margin-top:5px}.leaflet-bottom .leaflet-control{margin-bottom:5px}.leaflet-div-icon{border:none!important;background:transparent!important;text-align:center}.leaflet-measure-path-measurement{position:absolute;left:0;top:0;font-size:13px;font-weight:700;color:red;text-shadow:-1px 0 0 white,-1px -1px 0 white,0 -1px 0 white,1px -1px 0 white,1px 0 0 white,1px 1px 0 white,0 1px 0 white,-1px 1px 0 white;white-space:nowrap;transform-origin:0;pointer-events:none;z-index:9999}.leaflet-measure-path-measurement>div{position:relative;margin-top:-50%;left:-50%}.leaflet-control-scale-line{border:1px solid #999;border-top:none;padding:0;text-align:center;white-space:nowrap;overflow:hidden;color:#fff;height:26px;line-height:26px;text-shadow:0 0 2px #fff}.leaflet-control-container>div{display:flex;align-items:flex-end}.leaflet-text-label{position:absolute;transform:translate(calc(-50% + 4px),-6px);padding:2px 4px;white-space:nowrap;cursor:default}\n.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:\"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)\";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:\"\"}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.marker-icon{background-color:#fff;border:1px solid #3388ff;border-radius:50%;margin:-8px 0 0 -8px!important;width:14px!important;height:14px!important;outline:0;transition:opacity ease .3s}.marker-icon-middle{opacity:.7;margin:-6px 0 0 -6px!important;width:10px!important;height:10px!important}.leaflet-pm-draggable{cursor:move!important}.cursor-marker{cursor:crosshair;pointer-events:none;opacity:0}.cursor-marker.visible{opacity:1!important}.geoman-draw-cursor,.geoman-draw-cursor .leaflet-interactive{cursor:crosshair}.rect-style-marker,.rect-start-marker{opacity:0}.rect-style-marker.visible,.rect-start-marker.visible{opacity:1!important}.vertexmarker-disabled{opacity:.7}.pm-text-marker{width:0;height:0}.pm-textarea{box-sizing:content-box;background-color:#fff;color:#000;resize:none;border:none;outline:0;cursor:pointer;border-radius:3px;padding-left:7px;padding-bottom:0;padding-top:4px}.leaflet-pm-draggable .pm-textarea{cursor:move}.pm-textarea:focus,.pm-textarea:focus-within,.pm-textarea:focus-visible,.pm-textarea:active{border:2px solid #000;outline:0}.pm-textarea.pm-disabled{border:none;-webkit-user-select:none;user-select:none}.pm-textarea.pm-hasfocus{cursor:auto}.leaflet-pm-toolbar .leaflet-buttons-control-button{padding:5px;box-sizing:border-box;position:relative;z-index:3}.leaflet-pm-toolbar .leaflet-pm-actions-container a.leaflet-pm-action:first-child:not(.pos-right),.leaflet-pm-toolbar .leaflet-pm-actions-container a.leaflet-pm-action:last-child.pos-right{border-radius:0}.leaflet-pm-toolbar .button-container a.leaflet-buttons-control-button{border-radius:0}.leaflet-pm-toolbar .button-container:last-child a.leaflet-buttons-control-button{border-radius:0 0 2px 2px}.leaflet-pm-toolbar .button-container:first-child a.leaflet-buttons-control-button{border-radius:2px 2px 0 0}.leaflet-pm-toolbar .button-container:last-child a.leaflet-buttons-control-button{border-bottom:none}.leaflet-pm-toolbar .control-fa-icon{font-size:19px;line-height:24px}.leaflet-pm-toolbar .control-icon{width:100%;height:100%;box-sizing:border-box;background-size:contain;background-repeat:no-repeat;background-position:center center}.leaflet-pm-toolbar .leaflet-pm-icon-marker{background-image:url('data:image/svg+xml,<?xml version=\"1.0\" encoding=\"UTF-8\"?>%0A<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">%0A <!-- Generator: Sketch 52.5 (67469) - http://www.bohemiancoding.com/sketch -->%0A <title>Atoms/Icons/Tools/Marker</title>%0A <desc>Created with Sketch.</desc>%0A <defs>%0A <path d=\"M15.5,24.8782959 C15.2909201,24.8772219 15.1744857,24.8467817 14.6590866,24.2354163 C10.2196955,19.4118054 8,15.5014392 8,12.5043177 C8,8.35979746 11.3578644,5 15.5,5 C19.6421356,5 23,8.35979746 23,12.5043177 C23,17 18.2878217,21.9268378 16.3336601,24.2440186 C15.8224622,24.8501802 15.7090799,24.8793699 15.5,24.8782959 Z M15.5,15.5326948 C17.275201,15.5326948 18.7142857,14.1180004 18.7142857,12.3728864 C18.7142857,10.6277723 17.275201,9.21307792 15.5,9.21307792 C13.724799,9.21307792 12.2857143,10.6277723 12.2857143,12.3728864 C12.2857143,14.1180004 13.724799,15.5326948 15.5,15.5326948 Z\" id=\"path-1\"></path>%0A </defs>%0A <g id=\"Symbols\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">%0A <g id=\"Atoms/Icons/Tools/Marker\" transform=\"translate(-3.000000, -3.000000)\">%0A <mask id=\"mask-2\" fill=\"white\">%0A <use xlink:href=\"%23path-1\"></use>%0A </mask>%0A <use id=\"Mask\" fill=\"%235B5B5B\" fill-rule=\"nonzero\" xlink:href=\"%23path-1\"></use>%0A </g>%0A </g>%0A</svg>')}.leaflet-pm-toolbar .leaflet-pm-icon-polygon{background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\">%0A <defs>%0A <path id=\"polygon-a\" d=\"M19.4206892,9.16509725 C19.1523681,8.66992914 19,8.10275831 19,7.5 C19,5.56700338 20.5670034,4 22.5,4 C24.4329966,4 26,5.56700338 26,7.5 C26,9.26323595 24.6961471,10.7219407 23,10.9645556 L23,19.0354444 C24.6961471,19.2780593 26,20.736764 26,22.5 C26,24.4329966 24.4329966,26 22.5,26 C20.736764,26 19.2780593,24.6961471 19.0354444,23 L10.9645556,23 C10.7219407,24.6961471 9.26323595,26 7.5,26 C5.56700338,26 4,24.4329966 4,22.5 C4,20.5670034 5.56700338,19 7.5,19 C8.10275831,19 8.66992914,19.1523681 9.16509725,19.4206892 L19.4206892,9.16509725 Z M20.8349073,10.5793063 L10.5793108,20.8349027 C10.6086731,20.8890888 10.6366469,20.9441372 10.6631844,21 L19.3368156,21 C19.6825775,20.272154 20.272154,19.6825775 21,19.3368156 L21,10.6631844 C20.9441372,10.6366469 20.8890888,10.6086731 20.8349027,10.5793108 Z M22.5,9 C23.3284271,9 24,8.32842712 24,7.5 C24,6.67157288 23.3284271,6 22.5,6 C21.6715729,6 21,6.67157288 21,7.5 C21,8.32842712 21.6715729,9 22.5,9 Z M22.5,24 C23.3284271,24 24,23.3284271 24,22.5 C24,21.6715729 23.3284271,21 22.5,21 C21.6715729,21 21,21.6715729 21,22.5 C21,23.3284271 21.6715729,24 22.5,24 Z M7.5,24 C8.32842712,24 9,23.3284271 9,22.5 C9,21.6715729 8.32842712,21 7.5,21 C6.67157288,21 6,21.6715729 6,22.5 C6,23.3284271 6.67157288,24 7.5,24 Z\"/>%0A </defs>%0A <g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(-3 -3)\">%0A <mask id=\"polygon-b\" fill=\"%23fff\">%0A <use xlink:href=\"%23polygon-a\"/>%0A </mask>%0A <use fill=\"%235B5B5B\" fill-rule=\"nonzero\" xlink:href=\"%23polygon-a\"/>%0A <g fill=\"%235B5B5B\" mask=\"url(%23polygon-b)\">%0A <rect width=\"30\" height=\"30\"/>%0A </g>%0A </g>%0A</svg>%0A')}.leaflet-pm-toolbar .leaflet-pm-icon-polyline{background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\">%0A <defs>%0A <path id=\"line-a\" d=\"M9.16509725,19.4206892 L18.4206892,10.1650973 C18.1523681,9.66992914 18,9.10275831 18,8.5 C18,6.56700338 19.5670034,5 21.5,5 C23.4329966,5 25,6.56700338 25,8.5 C25,10.4329966 23.4329966,12 21.5,12 C20.8972417,12 20.3300709,11.8476319 19.8349027,11.5793108 L10.5793108,20.8349027 C10.8476319,21.3300709 11,21.8972417 11,22.5 C11,24.4329966 9.43299662,26 7.5,26 C5.56700338,26 4,24.4329966 4,22.5 C4,20.5670034 5.56700338,19 7.5,19 C8.10275831,19 8.66992914,19.1523681 9.16509725,19.4206892 Z M21.5,10 C22.3284271,10 23,9.32842712 23,8.5 C23,7.67157288 22.3284271,7 21.5,7 C20.6715729,7 20,7.67157288 20,8.5 C20,9.32842712 20.6715729,10 21.5,10 Z M7.5,24 C8.32842712,24 9,23.3284271 9,22.5 C9,21.6715729 8.32842712,21 7.5,21 C6.67157288,21 6,21.6715729 6,22.5 C6,23.3284271 6.67157288,24 7.5,24 Z\"/>%0A </defs>%0A <g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(-3 -3)\">%0A <mask id=\"line-b\" fill=\"%23fff\">%0A <use xlink:href=\"%23line-a\"/>%0A </mask>%0A <use fill=\"%235B5B5B\" fill-rule=\"nonzero\" xlink:href=\"%23line-a\"/>%0A <g fill=\"%235B5B5B\" mask=\"url(%23line-b)\">%0A <rect width=\"30\" height=\"30\"/>%0A </g>%0A </g>%0A</svg>%0A')}.leaflet-pm-toolbar .leaflet-pm-icon-circle{background-image:url('data:image/svg+xml,<?xml version=\"1.0\" encoding=\"UTF-8\"?>%0A<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">%0A <!-- Generator: Sketch 52.5 (67469) - http://www.bohemiancoding.com/sketch -->%0A <title>Atoms/Icons/Tools/Circle</title>%0A <desc>Created with Sketch.</desc>%0A <defs>%0A <path d=\"M18.2897751,6.78602275 C18.8924131,6.29464981 19.661797,6 20.5,6 C22.4329966,6 24,7.56700338 24,9.5 C24,10.338203 23.7053502,11.1075869 23.2139772,11.7102249 C23.719599,12.8712053 24,14.1528571 24,15.5 C24,20.7467051 19.7467051,25 14.5,25 C9.25329488,25 5,20.7467051 5,15.5 C5,10.2532949 9.25329488,6 14.5,6 C15.8471429,6 17.1287947,6.28040098 18.2897751,6.78602275 Z M17.1504228,8.4817586 C16.3263581,8.17039236 15.4330777,8 14.5,8 C10.3578644,8 7,11.3578644 7,15.5 C7,19.6421356 10.3578644,23 14.5,23 C18.6421356,23 22,19.6421356 22,15.5 C22,14.5669223 21.8296076,13.6736419 21.5182414,12.8495772 C21.1960383,12.9473968 20.8541622,13 20.5,13 C18.5670034,13 17,11.4329966 17,9.5 C17,9.14583778 17.0526032,8.80396169 17.1504228,8.4817586 Z M14.5,17 C13.6715729,17 13,16.3284271 13,15.5 C13,14.6715729 13.6715729,14 14.5,14 C15.3284271,14 16,14.6715729 16,15.5 C16,16.3284271 15.3284271,17 14.5,17 Z M20.5,11 C21.3284271,11 22,10.3284271 22,9.5 C22,8.67157288 21.3284271,8 20.5,8 C19.6715729,8 19,8.67157288 19,9.5 C19,10.3284271 19.6715729,11 20.5,11 Z\" id=\"path-1\"></path>%0A </defs>%0A <g id=\"Symbols\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">%0A <g id=\"Atoms/Icons/Tools/Circle\" transform=\"translate(-3.000000, -3.000000)\">%0A <mask id=\"mask-2\" fill=\"white\">%0A <use xlink:href=\"%23path-1\"></use>%0A </mask>%0A <use id=\"Mask\" fill=\"%235B5B5B\" fill-rule=\"nonzero\" xlink:href=\"%23path-1\"></use>%0A <g id=\"Atoms/Color/Grey\" mask=\"url(%23mask-2)\" fill=\"%235B5B5B\">%0A <rect id=\"Rectangle\" x=\"0\" y=\"0\" width=\"30\" height=\"30\"></rect>%0A </g>%0A </g>%0A </g>%0A</svg>')}.leaflet-pm-toolbar .leaflet-pm-icon-circle-marker{background-image:url('data:image/svg+xml,<?xml version=\"1.0\" encoding=\"UTF-8\"?>%0A%0A<svg viewBox=\"0 0 100 100\" xmlns=\"http://www.w3.org/2000/svg\" stroke=\"%235B5B5B\" stroke-width=\"8\"%0A fill=\"none\">%0A<circle cx=\"50\" cy=\"50\" r=\"35\"/>%0A <circle cx=\"50\" cy=\"50\" r=\"3\" fill=\"%235B5B5B\"/>%0A</svg>')}.leaflet-pm-toolbar .leaflet-pm-icon-rectangle{background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\">%0A <defs>%0A <path id=\"rectangle-a\" d=\"M23,10.9645556 L23,19.0354444 C24.6961471,19.2780593 26,20.736764 26,22.5 C26,24.4329966 24.4329966,26 22.5,26 C20.736764,26 19.2780593,24.6961471 19.0354444,23 L10.9645556,23 C10.7219407,24.6961471 9.26323595,26 7.5,26 C5.56700338,26 4,24.4329966 4,22.5 C4,20.736764 5.30385293,19.2780593 7,19.0354444 L7,10.9645556 C5.30385293,10.7219407 4,9.26323595 4,7.5 C4,5.56700338 5.56700338,4 7.5,4 C9.26323595,4 10.7219407,5.30385293 10.9645556,7 L19.0354444,7 C19.2780593,5.30385293 20.736764,4 22.5,4 C24.4329966,4 26,5.56700338 26,7.5 C26,9.26323595 24.6961471,10.7219407 23,10.9645556 Z M21,10.6631844 C20.272154,10.3174225 19.6825775,9.72784598 19.3368156,9 L10.6631844,9 C10.3174225,9.72784598 9.72784598,10.3174225 9,10.6631844 L9,19.3368156 C9.72784598,19.6825775 10.3174225,20.272154 10.6631844,21 L19.3368156,21 C19.6825775,20.272154 20.272154,19.6825775 21,19.3368156 L21,10.6631844 Z M7.5,9 C8.32842712,9 9,8.32842712 9,7.5 C9,6.67157288 8.32842712,6 7.5,6 C6.67157288,6 6,6.67157288 6,7.5 C6,8.32842712 6.67157288,9 7.5,9 Z M22.5,9 C23.3284271,9 24,8.32842712 24,7.5 C24,6.67157288 23.3284271,6 22.5,6 C21.6715729,6 21,6.67157288 21,7.5 C21,8.32842712 21.6715729,9 22.5,9 Z M22.5,24 C23.3284271,24 24,23.3284271 24,22.5 C24,21.6715729 23.3284271,21 22.5,21 C21.6715729,21 21,21.6715729 21,22.5 C21,23.3284271 21.6715729,24 22.5,24 Z M7.5,24 C8.32842712,24 9,23.3284271 9,22.5 C9,21.6715729 8.32842712,21 7.5,21 C6.67157288,21 6,21.6715729 6,22.5 C6,23.3284271 6.67157288,24 7.5,24 Z\"/>%0A </defs>%0A <g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(-3 -3)\">%0A <mask id=\"rectangle-b\" fill=\"%23fff\">%0A <use xlink:href=\"%23rectangle-a\"/>%0A </mask>%0A <use fill=\"%235B5B5B\" fill-rule=\"nonzero\" xlink:href=\"%23rectangle-a\"/>%0A <g fill=\"%235B5B5B\" mask=\"url(%23rectangle-b)\">%0A <rect width=\"30\" height=\"30\"/>%0A </g>%0A </g>%0A</svg>%0A')}.leaflet-pm-toolbar .leaflet-pm-icon-delete{background-image:url('data:image/svg+xml,<?xml version=\"1.0\" encoding=\"UTF-8\"?>%0A<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">%0A <!-- Generator: Sketch 52.5 (67469) - http://www.bohemiancoding.com/sketch -->%0A <title>Atoms/Icons/Tools/Eraser</title>%0A <desc>Created with Sketch.</desc>%0A <defs>%0A <path d=\"M17.7874219,18.4812552 L11.6480079,13.3498184 L6.40466009,19.3816001 L10.5539156,22.9884929 L13.86934,22.9884929 L17.7874219,18.4812552 Z M16.5074252,22.9884929 L26.0000002,22.9884929 L26.0000002,24.9884929 L10.0000002,24.9884929 L9.80708313,24.9884929 L5.09254204,20.8910192 C4.25891285,20.1663564 4.17057814,18.9031112 4.89524093,18.069482 L16.0482444,5.23941916 C16.7729072,4.40578998 18.0361525,4.31745526 18.8697816,5.04211806 L24.9074583,10.2905903 C25.7410875,11.0152531 25.8294222,12.2784983 25.1047594,13.1121275 L16.5074252,22.9884929 Z\" id=\"path-1\"></path>%0A </defs>%0A <g id=\"Symbols\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">%0A <g id=\"Atoms/Icons/Tools/Eraser\" transform=\"translate(-3.000000, -3.000000)\">%0A <mask id=\"mask-2\" fill=\"white\">%0A <use xlink:href=\"%23path-1\"></use>%0A </mask>%0A <use id=\"Combined-Shape\" fill=\"%235B5B5B\" fill-rule=\"nonzero\" xlink:href=\"%23path-1\"></use>%0A </g>%0A </g>%0A</svg>')}.leaflet-pm-toolbar .leaflet-pm-icon-edit{background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\">%0A <defs>%0A <path id=\"edit_anchor-a\" d=\"M13.5,11 C11.5670034,11 10,9.43299662 10,7.5 C10,5.56700338 11.5670034,4 13.5,4 C15.4329966,4 17,5.56700338 17,7.5 C17,9.43299662 15.4329966,11 13.5,11 Z M13.5,9 C14.3284271,9 15,8.32842712 15,7.5 C15,6.67157288 14.3284271,6 13.5,6 C12.6715729,6 12,6.67157288 12,7.5 C12,8.32842712 12.6715729,9 13.5,9 Z M12.0002889,7.52973893 C12.0125983,8.16273672 12.4170197,8.6996643 12.9807111,8.90767966 L3,15 L3,13 L12.0002889,7.52973893 Z M14.2172722,6.18228472 L19.453125,3 L22.6589355,3 L14.989102,7.68173885 C14.9962971,7.62216459 15,7.56151472 15,7.5 C15,6.93138381 14.6836098,6.4366645 14.2172722,6.18228472 Z M23.4434042,19.2851736 L20.1282799,19.2851736 L21.8729983,23.5349525 C21.9945296,23.8295773 21.8556546,24.1599209 21.5778734,24.2849208 L20.0414675,24.9545142 C19.7550613,25.0795141 19.4338738,24.9366704 19.3123426,24.6509518 L17.6544367,20.6154541 L14.9461873,23.4010151 C14.5852811,23.7721711 14,23.4860463 14,22.9992653 L14,9.57183533 C14,9.05933561 14.6225311,8.809492 14.946156,9.17008555 L23.8340292,18.3120179 C24.1925291,18.6613615 23.9279979,19.2851736 23.4434042,19.2851736 Z\"/>%0A </defs>%0A <g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(-3 -3)\">%0A <mask id=\"edit_anchor-b\" fill=\"%23fff\">%0A <use xlink:href=\"%23edit_anchor-a\"/>%0A </mask>%0A <use fill=\"%235B5B5B\" fill-rule=\"nonzero\" xlink:href=\"%23edit_anchor-a\"/>%0A <g fill=\"%235B5B5B\" mask=\"url(%23edit_anchor-b)\">%0A <rect width=\"30\" height=\"30\"/>%0A </g>%0A </g>%0A</svg>%0A')}.leaflet-pm-toolbar .leaflet-pm-icon-drag{background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\">%0A <defs>%0A <path id=\"move-a\" d=\"M21,14 L21,10 L27,15 L21,20 L21,16 L16,16 L16,21 L20,21 L15,27 L10,21 L14,21 L14,16 L9,16 L9,20 L3,15 L9,10 L9,14 L14,14 L14,9 L10,9 L15,3 L20,9 L16,9 L16,14 L21,14 Z\"/>%0A </defs>%0A <g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(-3 -3)\">%0A <mask id=\"move-b\" fill=\"%23fff\">%0A <use xlink:href=\"%23move-a\"/>%0A </mask>%0A <use fill=\"%23D8D8D8\" xlink:href=\"%23move-a\"/>%0A <g fill=\"%235B5B5B\" mask=\"url(%23move-b)\">%0A <rect width=\"30\" height=\"30\"/>%0A </g>%0A </g>%0A</svg>%0A')}.leaflet-pm-toolbar .leaflet-pm-icon-cut{background-image:url('data:image/svg+xml,<?xml version=\"1.0\" encoding=\"UTF-8\"?>%0A<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">%0A <!-- Generator: Sketch 52.5 (67469) - http://www.bohemiancoding.com/sketch -->%0A <title>Atoms/Icons/Tools/Scissors</title>%0A <desc>Created with Sketch.</desc>%0A <defs>%0A <path d=\"M12.9691574,13.4939435 L21.0317032,5.54167013 L23.4649499,5.67722957 L17.0470713,14.5106816 L27.5660336,17.1333535 L25.7891944,18.8012588 L14.5854951,17.8987506 L13.6487955,19.188007 C13.794639,19.2650958 13.9367985,19.3534417 14.0741377,19.4532245 C15.6379648,20.5894114 15.9846357,22.7782052 14.8484488,24.3420324 C13.7122619,25.9058595 11.5234681,26.2525304 9.95964096,25.1163435 C8.39581384,23.9801565 8.04914296,21.7913627 9.18532986,20.2275356 C9.74587276,19.4560145 10.5626188,18.9807475 11.4341218,18.8336407 L12.6805656,17.1180579 L12.5239724,16.3747216 L11.9506932,15.3012391 L9.89310646,14.7882251 C9.13093796,15.2357261 8.19977854,15.3966447 7.27445355,15.1659352 C5.39887519,14.698301 4.25751094,12.7987519 4.72514515,10.9231736 C5.19277935,9.04759519 7.09232846,7.90623094 8.96790682,8.37386515 C10.8434852,8.84149935 11.9848494,10.7410485 11.5172152,12.6166268 C11.4761464,12.7813449 11.4240335,12.9404001 11.3618627,13.0931999 L12.9691574,13.4939435 Z M7.75829735,13.2253438 C8.56211664,13.4257584 9.37620912,12.9366023 9.57662378,12.132783 C9.77703844,11.3289637 9.28788233,10.5148713 8.48406303,10.3144566 C7.68024373,10.1140419 6.86615126,10.603198 6.6657366,11.4070173 C6.46532194,12.2108366 6.95447805,13.0249291 7.75829735,13.2253438 Z M10.8033639,21.4031061 C10.3164266,22.0733177 10.4649998,23.0113722 11.1352115,23.4983095 C11.8054231,23.9852467 12.7434776,23.8366735 13.2304148,23.1664619 C13.7173521,22.4962502 13.5687788,21.5581957 12.8985672,21.0712585 C12.2283556,20.5843212 11.2903011,20.7328945 10.8033639,21.4031061 Z\" id=\"path-1\"></path>%0A </defs>%0A <g id=\"Symbols\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">%0A <g id=\"Atoms/Icons/Tools/Scissors\" transform=\"translate(-3.000000, -3.000000)\">%0A <mask id=\"mask-2\" fill=\"white\">%0A <use xlink:href=\"%23path-1\"></use>%0A </mask>%0A <use id=\"Mask\" fill=\"%235B5B5B\" fill-rule=\"nonzero\" transform=\"translate(16.093194, 15.663351) rotate(-32.000000) translate(-16.093194, -15.663351) \" xlink:href=\"%23path-1\"></use>%0A </g>%0A </g>%0A</svg>')}.leaflet-pm-toolbar .leaflet-pm-icon-snapping{background-image:url('data:image/svg+xml,<?xml version=\"1.0\" encoding=\"UTF-8\"?>%0A<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">%0A <!-- Generator: Sketch 57.1 (83088) - https://sketch.com -->%0A <title>Atoms/Icons/Tools/Magnet</title>%0A <desc>Created with Sketch.</desc>%0A <defs>%0A <path d=\"M21.9994759,10.9428183 L21.9999985,16.3710417 C22,16.6872007 22,17.0058278 22,17.3269411 C22,21.5646545 18.6421356,25 14.5,25 C10.3578644,25 7,21.5646545 7,17.3269411 L7.00087508,10.9907507 L11.0022808,10.9984125 C11.0017033,11.6980114 11.001247,12.4168248 11.0008992,13.1554887 L11,17.3269411 C11,19.3756809 12.5876841,21 14.5,21 C16.4123159,21 18,19.3756809 18,17.3269411 C18,15.0702032 17.9995696,12.9619668 17.998539,10.9910032 L21.9994759,10.9428183 Z M10,7 C10.5522847,7 11,7.44771525 11,8 L11,10 L7,10 L7,8 C7,7.44771525 7.44771525,7 8,7 L10,7 Z M21,7 C21.5522847,7 22,7.44771525 22,8 L22,10 L18,10 L18,8 C18,7.44771525 18.4477153,7 19,7 L21,7 Z\" id=\"path-1\"></path>%0A </defs>%0A <g id=\"Symbols\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">%0A <g id=\"Atoms/Icons/Tools/Magnet\" transform=\"translate(-3.000000, -3.000000)\">%0A <mask id=\"mask-2\" fill=\"white\">%0A <use xlink:href=\"%23path-1\"></use>%0A </mask>%0A <use id=\"Mask\" fill=\"%235B5B5B\" fill-rule=\"nonzero\" transform=\"translate(14.500000, 16.000000) rotate(45.000000) translate(-14.500000, -16.000000) \" xlink:href=\"%23path-1\"></use>%0A </g>%0A </g>%0A</svg>')}.leaflet-pm-toolbar .leaflet-pm-icon-rotate{background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\">%0A <defs>%0A <path id=\"rotate\" d=\"M21.2,5.8c-0.1-0.2-0.2-0.3-0.3-0.5l-0.1-0.2c-0.1-0.2-0.2-0.3-0.3-0.5l-0.1-0.2c-0.1-0.2-0.2-0.3-0.4-0.5l-0.2-0.3l2.8-3.1L18,0.6l-4.6,0.1l0.5,4.5l0.5,4.5l3.2-3.6v0.1l0.1,0.2c0.1,0.1,0.1,0.2,0.2,0.2l0.1,0.2C18,7,18,7.1,18.1,7.2c0.3,0.7,0.6,1.4,0.7,2.1c0.2,1.4,0,2.9-0.6,4.2L18,13.9L17.9,14l-0.3,0.5l-0.1,0.2c-0.2,0.2-0.4,0.5-0.6,0.7c-0.5,0.5-1.1,1-1.7,1.3c-0.6,0.4-1.3,0.6-2.1,0.8c-0.7,0.1-1.5,0.2-2.2,0.1c-0.8-0.1-1.5-0.3-2.2-0.5c-0.7-0.3-1.3-0.7-1.9-1.2l-0.4-0.4l-0.2-0.3L6,15c-0.1-0.1-0.2-0.2-0.2-0.3l-0.3-0.4l-0.1-0.1l-0.2-0.4c0-0.1-0.1-0.1-0.1-0.2l-0.3-0.5l-0.1-0.2c-0.1-0.3-0.2-0.6-0.3-0.9c-0.2-0.8-0.3-1.6-0.3-2.4c0-0.2,0-0.3,0-0.5V8.9c0-0.2,0-0.3,0.1-0.4l0.1-0.6l0.2-0.6c0.3-0.8,0.7-1.5,1.2-2.2c0.5-0.7,1.1-1.3,1.8-1.8c0.2-0.1,0.3-0.4,0.1-0.6C7.5,2.6,7.4,2.5,7.3,2.5H7.1L7,2.6C6.1,3,5.4,3.6,4.7,4.2C4,4.9,3.5,5.7,3,6.6c-0.9,1.8-1.2,3.8-0.8,5.8c0.1,0.5,0.2,0.9,0.3,1.4l0.3,0.8C2.9,14.7,3,14.8,3,15l0.2,0.4c0,0.1,0.1,0.2,0.1,0.2l0.3,0.5c0.1,0.2,0.2,0.3,0.3,0.5l0.1,0.2c0.1,0.1,0.2,0.3,0.3,0.4L5,17.8c0.7,0.7,1.6,1.3,2.5,1.8c0.9,0.5,1.9,0.8,3,0.9c0.5,0.1,1,0.1,1.5,0.1c0.6,0,1.1,0,1.6-0.1c1-0.2,2.1-0.5,3-1l0.2-0.1c0.2-0.1,0.3-0.2,0.5-0.3l0.7-0.4c0.2-0.1,0.3-0.2,0.4-0.3l0.2-0.2c0.2-0.1,0.4-0.3,0.5-0.5l0.1-0.1c0.3-0.3,0.7-0.7,0.9-1l0.6-0.9l0.4-0.6c1-1.9,1.4-4.1,1.1-6.2C22,7.8,21.7,6.7,21.2,5.8z\"/>%0A </defs>%0A <g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(0 2)\">%0A <mask id=\"rotate-b\" fill=\"%23fff\">%0A <use xlink:href=\"%23rotate\"/>%0A </mask>%0A <use fill=\"%235B5B5B\" fill-rule=\"nonzero\" xlink:href=\"%23rotate\"/>%0A <g fill=\"%235B5B5B\" mask=\"url(%23rotate-b)\">%0A <rect width=\"30\" height=\"30\"/>%0A </g>%0A </g>%0A</svg>%0A')}.leaflet-pm-toolbar .leaflet-pm-icon-text{background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><defs><style>.cls-1{fill:none;stroke:%235b5b5b;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.5px;}<\\/style></defs><title>Text</title><g id=\"Ebene_2\" data-name=\"Ebene 2\"><polyline class=\"cls-1\" points=\"19.64 7.27 19.64 4 12 4 12 20 15.91 20 8.09 20 12 20 12 4 4.36 4 4.36 7.27\"/></g></svg>')}.leaflet-buttons-control-button:hover,.leaflet-buttons-control-button:focus{cursor:pointer;background-color:#f4f4f4}.active>.leaflet-buttons-control-button{box-shadow:inset 0 -1px 5px 2px #514d4d4f}.leaflet-buttons-control-text-hide{display:none}.button-container{position:relative}.button-container .leaflet-pm-actions-container{z-index:2;position:absolute;top:0;left:100%;display:none;white-space:nowrap;direction:ltr}.leaflet-right .leaflet-pm-toolbar .button-container .leaflet-pm-actions-container{right:100%;left:auto}.button-container.active .leaflet-pm-actions-container{display:block}.button-container .leaflet-pm-actions-container:not(.pos-right) a.leaflet-pm-action:last-child{border-radius:0 3px 3px 0;border-right:0}.button-container .leaflet-pm-actions-container.pos-right a.leaflet-pm-action:first-child{border-radius:3px 0 0 3px}.button-container .leaflet-pm-actions-container.pos-right a.leaflet-pm-action:last-child{border-right:0}.button-container .leaflet-pm-actions-container .leaflet-pm-action{padding:0 10px;background-color:#666;color:#fff;display:inline-block;width:auto;border-right:1px solid #eee;-webkit-user-select:none;user-select:none;border-bottom:none;height:29px;line-height:29px;vertical-align:middle}.leaflet-pm-toolbar .button-container:first-child.pos-right.active a.leaflet-buttons-control-button{border-top-left-radius:0}.leaflet-pm-toolbar .button-container:first-child.active:not(.pos-right) a.leaflet-buttons-control-button{border-top-right-radius:0}.button-container .leaflet-pm-actions-container .leaflet-pm-action:hover,.button-container .leaflet-pm-actions-container .leaflet-pm-action:focus{cursor:pointer;background-color:#777}.button-container .leaflet-pm-actions-container .leaflet-pm-action.active-action{background-color:#8e8e8e}.leaflet-pm-toolbar.activeChild{z-index:801}.leaflet-buttons-control-button.pm-disabled{background-color:#f4f4f4}.leaflet-buttons-control-button.pm-disabled>.control-icon{filter:opacity(.6)}.button-container .leaflet-pm-actions-container .pm-action-button-mode.control-icon{filter:brightness(0) invert(1);width:18px}body{height:100%;margin:0;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-family:Microsoft YaHei,Arial,sans-serif}label{font-weight:700}html{height:100%;box-sizing:border-box}#app{height:100%}*,*:before,*:after{box-sizing:inherit}a:focus,a:active{outline:none}a,a:focus,a:hover{cursor:pointer;text-decoration:none}div:focus{outline:none}.clearfix:after{visibility:hidden;display:block;font-size:0;content:\" \";clear:both;height:0}.leaflet-left .leaflet-control{margin-left:5px}.leaflet-right .leaflet-control{margin-right:5px}.leaflet-top .leaflet-control{margin-top:5px}.leaflet-bottom .leaflet-control{margin-bottom:5px}.leaflet-div-icon{border:none!important;background:transparent!important;text-align:center}.leaflet-measure-path-measurement{position:absolute;left:0;top:0;font-size:13px;font-weight:700;color:red;text-shadow:-1px 0 0 white,-1px -1px 0 white,0 -1px 0 white,1px -1px 0 white,1px 0 0 white,1px 1px 0 white,0 1px 0 white,-1px 1px 0 white;white-space:nowrap;transform-origin:0;pointer-events:none;z-index:9999}.leaflet-measure-path-measurement>div{position:relative;margin-top:-50%;left:-50%}.leaflet-control-scale-line{border:1px solid #999;border-top:none;padding:0;text-align:center;white-space:nowrap;overflow:hidden;color:#fff;height:26px;line-height:26px;text-shadow:0 0 2px #fff}.leaflet-control-container>div{display:flex;align-items:flex-end}.leaflet-text-label{position:absolute;transform:translate(calc(-50% + 4px),-6px);padding:2px 4px;white-space:nowrap;cursor:default}")); document.head.appendChild(elementStyle);} catch(e) {console.error('vite-plugin-css-injected-by-js', e);} })();(function(Jt,$t){typeof exports=="object"&&typeof module<"u"?$t(exports,require("gis-common")):typeof define=="function"&&define.amd?define(["exports","gis-common"],$t):(Jt=typeof globalThis<"u"?globalThis:Jt||self,$t(Jt["gis-leaflet-helper"]={},Jt.Gis))})(this,function(Jt,$t){"use strict";var dp=Object.defineProperty;var fp=(Jt,$t,An)=>$t in Jt?dp(Jt,$t,{enumerable:!0,configurable:!0,writable:!0,value:An}):Jt[$t]=An;var Lt=(Jt,$t,An)=>fp(Jt,typeof $t!="symbol"?$t+"":$t,An);function An(t){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const r in t)if(r!=="default"){const u=Object.getOwnPropertyDescriptor(t,r);Object.defineProperty(n,r,u.get?u:{enumerable:!0,get:()=>t[r]})}}return n.default=t,Object.freeze(n)}const gl=An($t);var vn=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function yl(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function Al(t){if(t.__esModule)return t;var n=t.default;if(typeof n=="function"){var r=function u(){return this instanceof u?Reflect.construct(n,arguments,this.constructor):n.apply(this,arguments)};r.prototype=n.prototype}else r={};return Object.defineProperty(r,"__esModule",{value:!0}),Object.keys(t).forEach(function(u){var d=Object.getOwnPropertyDescriptor(t,u);Object.defineProperty(r,u,d.get?d:{enumerable:!0,get:function(){return t[u]}})}),r}var da={exports:{}};/* @preserve
|
|
1
|
+
(function(){ try {var elementStyle = document.createElement('style'); elementStyle.appendChild(document.createTextNode(".leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:\"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)\";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:\"\"}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.marker-icon{background-color:#fff;border:1px solid #3388ff;border-radius:50%;margin:-8px 0 0 -8px!important;width:14px!important;height:14px!important;outline:0;transition:opacity ease .3s}.marker-icon-middle{opacity:.7;margin:-6px 0 0 -6px!important;width:10px!important;height:10px!important}.leaflet-pm-draggable{cursor:move!important}.cursor-marker{cursor:crosshair;pointer-events:none;opacity:0}.cursor-marker.visible{opacity:1!important}.geoman-draw-cursor,.geoman-draw-cursor .leaflet-interactive{cursor:crosshair}.rect-style-marker,.rect-start-marker{opacity:0}.rect-style-marker.visible,.rect-start-marker.visible{opacity:1!important}.vertexmarker-disabled{opacity:.7}.pm-text-marker{width:0;height:0}.pm-textarea{box-sizing:content-box;background-color:#fff;color:#000;resize:none;border:none;outline:0;cursor:pointer;border-radius:3px;padding-left:7px;padding-bottom:0;padding-top:4px}.leaflet-pm-draggable .pm-textarea{cursor:move}.pm-textarea:focus,.pm-textarea:focus-within,.pm-textarea:focus-visible,.pm-textarea:active{border:2px solid #000;outline:0}.pm-textarea.pm-disabled{border:none;-webkit-user-select:none;user-select:none}.pm-textarea.pm-hasfocus{cursor:auto}.leaflet-pm-toolbar .leaflet-buttons-control-button{padding:5px;box-sizing:border-box;position:relative;z-index:3}.leaflet-pm-toolbar .leaflet-pm-actions-container a.leaflet-pm-action:first-child:not(.pos-right),.leaflet-pm-toolbar .leaflet-pm-actions-container a.leaflet-pm-action:last-child.pos-right{border-radius:0}.leaflet-pm-toolbar .button-container a.leaflet-buttons-control-button{border-radius:0}.leaflet-pm-toolbar .button-container:last-child a.leaflet-buttons-control-button{border-radius:0 0 2px 2px}.leaflet-pm-toolbar .button-container:first-child a.leaflet-buttons-control-button{border-radius:2px 2px 0 0}.leaflet-pm-toolbar .button-container:last-child a.leaflet-buttons-control-button{border-bottom:none}.leaflet-pm-toolbar .control-fa-icon{font-size:19px;line-height:24px}.leaflet-pm-toolbar .control-icon{width:100%;height:100%;box-sizing:border-box;background-size:contain;background-repeat:no-repeat;background-position:center center}.leaflet-pm-toolbar .leaflet-pm-icon-marker{background-image:url('data:image/svg+xml,<?xml version=\"1.0\" encoding=\"UTF-8\"?>%0A<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">%0A <!-- Generator: Sketch 52.5 (67469) - http://www.bohemiancoding.com/sketch -->%0A <title>Atoms/Icons/Tools/Marker</title>%0A <desc>Created with Sketch.</desc>%0A <defs>%0A <path d=\"M15.5,24.8782959 C15.2909201,24.8772219 15.1744857,24.8467817 14.6590866,24.2354163 C10.2196955,19.4118054 8,15.5014392 8,12.5043177 C8,8.35979746 11.3578644,5 15.5,5 C19.6421356,5 23,8.35979746 23,12.5043177 C23,17 18.2878217,21.9268378 16.3336601,24.2440186 C15.8224622,24.8501802 15.7090799,24.8793699 15.5,24.8782959 Z M15.5,15.5326948 C17.275201,15.5326948 18.7142857,14.1180004 18.7142857,12.3728864 C18.7142857,10.6277723 17.275201,9.21307792 15.5,9.21307792 C13.724799,9.21307792 12.2857143,10.6277723 12.2857143,12.3728864 C12.2857143,14.1180004 13.724799,15.5326948 15.5,15.5326948 Z\" id=\"path-1\"></path>%0A </defs>%0A <g id=\"Symbols\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">%0A <g id=\"Atoms/Icons/Tools/Marker\" transform=\"translate(-3.000000, -3.000000)\">%0A <mask id=\"mask-2\" fill=\"white\">%0A <use xlink:href=\"%23path-1\"></use>%0A </mask>%0A <use id=\"Mask\" fill=\"%235B5B5B\" fill-rule=\"nonzero\" xlink:href=\"%23path-1\"></use>%0A </g>%0A </g>%0A</svg>')}.leaflet-pm-toolbar .leaflet-pm-icon-polygon{background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\">%0A <defs>%0A <path id=\"polygon-a\" d=\"M19.4206892,9.16509725 C19.1523681,8.66992914 19,8.10275831 19,7.5 C19,5.56700338 20.5670034,4 22.5,4 C24.4329966,4 26,5.56700338 26,7.5 C26,9.26323595 24.6961471,10.7219407 23,10.9645556 L23,19.0354444 C24.6961471,19.2780593 26,20.736764 26,22.5 C26,24.4329966 24.4329966,26 22.5,26 C20.736764,26 19.2780593,24.6961471 19.0354444,23 L10.9645556,23 C10.7219407,24.6961471 9.26323595,26 7.5,26 C5.56700338,26 4,24.4329966 4,22.5 C4,20.5670034 5.56700338,19 7.5,19 C8.10275831,19 8.66992914,19.1523681 9.16509725,19.4206892 L19.4206892,9.16509725 Z M20.8349073,10.5793063 L10.5793108,20.8349027 C10.6086731,20.8890888 10.6366469,20.9441372 10.6631844,21 L19.3368156,21 C19.6825775,20.272154 20.272154,19.6825775 21,19.3368156 L21,10.6631844 C20.9441372,10.6366469 20.8890888,10.6086731 20.8349027,10.5793108 Z M22.5,9 C23.3284271,9 24,8.32842712 24,7.5 C24,6.67157288 23.3284271,6 22.5,6 C21.6715729,6 21,6.67157288 21,7.5 C21,8.32842712 21.6715729,9 22.5,9 Z M22.5,24 C23.3284271,24 24,23.3284271 24,22.5 C24,21.6715729 23.3284271,21 22.5,21 C21.6715729,21 21,21.6715729 21,22.5 C21,23.3284271 21.6715729,24 22.5,24 Z M7.5,24 C8.32842712,24 9,23.3284271 9,22.5 C9,21.6715729 8.32842712,21 7.5,21 C6.67157288,21 6,21.6715729 6,22.5 C6,23.3284271 6.67157288,24 7.5,24 Z\"/>%0A </defs>%0A <g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(-3 -3)\">%0A <mask id=\"polygon-b\" fill=\"%23fff\">%0A <use xlink:href=\"%23polygon-a\"/>%0A </mask>%0A <use fill=\"%235B5B5B\" fill-rule=\"nonzero\" xlink:href=\"%23polygon-a\"/>%0A <g fill=\"%235B5B5B\" mask=\"url(%23polygon-b)\">%0A <rect width=\"30\" height=\"30\"/>%0A </g>%0A </g>%0A</svg>%0A')}.leaflet-pm-toolbar .leaflet-pm-icon-polyline{background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\">%0A <defs>%0A <path id=\"line-a\" d=\"M9.16509725,19.4206892 L18.4206892,10.1650973 C18.1523681,9.66992914 18,9.10275831 18,8.5 C18,6.56700338 19.5670034,5 21.5,5 C23.4329966,5 25,6.56700338 25,8.5 C25,10.4329966 23.4329966,12 21.5,12 C20.8972417,12 20.3300709,11.8476319 19.8349027,11.5793108 L10.5793108,20.8349027 C10.8476319,21.3300709 11,21.8972417 11,22.5 C11,24.4329966 9.43299662,26 7.5,26 C5.56700338,26 4,24.4329966 4,22.5 C4,20.5670034 5.56700338,19 7.5,19 C8.10275831,19 8.66992914,19.1523681 9.16509725,19.4206892 Z M21.5,10 C22.3284271,10 23,9.32842712 23,8.5 C23,7.67157288 22.3284271,7 21.5,7 C20.6715729,7 20,7.67157288 20,8.5 C20,9.32842712 20.6715729,10 21.5,10 Z M7.5,24 C8.32842712,24 9,23.3284271 9,22.5 C9,21.6715729 8.32842712,21 7.5,21 C6.67157288,21 6,21.6715729 6,22.5 C6,23.3284271 6.67157288,24 7.5,24 Z\"/>%0A </defs>%0A <g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(-3 -3)\">%0A <mask id=\"line-b\" fill=\"%23fff\">%0A <use xlink:href=\"%23line-a\"/>%0A </mask>%0A <use fill=\"%235B5B5B\" fill-rule=\"nonzero\" xlink:href=\"%23line-a\"/>%0A <g fill=\"%235B5B5B\" mask=\"url(%23line-b)\">%0A <rect width=\"30\" height=\"30\"/>%0A </g>%0A </g>%0A</svg>%0A')}.leaflet-pm-toolbar .leaflet-pm-icon-circle{background-image:url('data:image/svg+xml,<?xml version=\"1.0\" encoding=\"UTF-8\"?>%0A<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">%0A <!-- Generator: Sketch 52.5 (67469) - http://www.bohemiancoding.com/sketch -->%0A <title>Atoms/Icons/Tools/Circle</title>%0A <desc>Created with Sketch.</desc>%0A <defs>%0A <path d=\"M18.2897751,6.78602275 C18.8924131,6.29464981 19.661797,6 20.5,6 C22.4329966,6 24,7.56700338 24,9.5 C24,10.338203 23.7053502,11.1075869 23.2139772,11.7102249 C23.719599,12.8712053 24,14.1528571 24,15.5 C24,20.7467051 19.7467051,25 14.5,25 C9.25329488,25 5,20.7467051 5,15.5 C5,10.2532949 9.25329488,6 14.5,6 C15.8471429,6 17.1287947,6.28040098 18.2897751,6.78602275 Z M17.1504228,8.4817586 C16.3263581,8.17039236 15.4330777,8 14.5,8 C10.3578644,8 7,11.3578644 7,15.5 C7,19.6421356 10.3578644,23 14.5,23 C18.6421356,23 22,19.6421356 22,15.5 C22,14.5669223 21.8296076,13.6736419 21.5182414,12.8495772 C21.1960383,12.9473968 20.8541622,13 20.5,13 C18.5670034,13 17,11.4329966 17,9.5 C17,9.14583778 17.0526032,8.80396169 17.1504228,8.4817586 Z M14.5,17 C13.6715729,17 13,16.3284271 13,15.5 C13,14.6715729 13.6715729,14 14.5,14 C15.3284271,14 16,14.6715729 16,15.5 C16,16.3284271 15.3284271,17 14.5,17 Z M20.5,11 C21.3284271,11 22,10.3284271 22,9.5 C22,8.67157288 21.3284271,8 20.5,8 C19.6715729,8 19,8.67157288 19,9.5 C19,10.3284271 19.6715729,11 20.5,11 Z\" id=\"path-1\"></path>%0A </defs>%0A <g id=\"Symbols\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">%0A <g id=\"Atoms/Icons/Tools/Circle\" transform=\"translate(-3.000000, -3.000000)\">%0A <mask id=\"mask-2\" fill=\"white\">%0A <use xlink:href=\"%23path-1\"></use>%0A </mask>%0A <use id=\"Mask\" fill=\"%235B5B5B\" fill-rule=\"nonzero\" xlink:href=\"%23path-1\"></use>%0A <g id=\"Atoms/Color/Grey\" mask=\"url(%23mask-2)\" fill=\"%235B5B5B\">%0A <rect id=\"Rectangle\" x=\"0\" y=\"0\" width=\"30\" height=\"30\"></rect>%0A </g>%0A </g>%0A </g>%0A</svg>')}.leaflet-pm-toolbar .leaflet-pm-icon-circle-marker{background-image:url('data:image/svg+xml,<?xml version=\"1.0\" encoding=\"UTF-8\"?>%0A%0A<svg viewBox=\"0 0 100 100\" xmlns=\"http://www.w3.org/2000/svg\" stroke=\"%235B5B5B\" stroke-width=\"8\"%0A fill=\"none\">%0A<circle cx=\"50\" cy=\"50\" r=\"35\"/>%0A <circle cx=\"50\" cy=\"50\" r=\"3\" fill=\"%235B5B5B\"/>%0A</svg>')}.leaflet-pm-toolbar .leaflet-pm-icon-rectangle{background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\">%0A <defs>%0A <path id=\"rectangle-a\" d=\"M23,10.9645556 L23,19.0354444 C24.6961471,19.2780593 26,20.736764 26,22.5 C26,24.4329966 24.4329966,26 22.5,26 C20.736764,26 19.2780593,24.6961471 19.0354444,23 L10.9645556,23 C10.7219407,24.6961471 9.26323595,26 7.5,26 C5.56700338,26 4,24.4329966 4,22.5 C4,20.736764 5.30385293,19.2780593 7,19.0354444 L7,10.9645556 C5.30385293,10.7219407 4,9.26323595 4,7.5 C4,5.56700338 5.56700338,4 7.5,4 C9.26323595,4 10.7219407,5.30385293 10.9645556,7 L19.0354444,7 C19.2780593,5.30385293 20.736764,4 22.5,4 C24.4329966,4 26,5.56700338 26,7.5 C26,9.26323595 24.6961471,10.7219407 23,10.9645556 Z M21,10.6631844 C20.272154,10.3174225 19.6825775,9.72784598 19.3368156,9 L10.6631844,9 C10.3174225,9.72784598 9.72784598,10.3174225 9,10.6631844 L9,19.3368156 C9.72784598,19.6825775 10.3174225,20.272154 10.6631844,21 L19.3368156,21 C19.6825775,20.272154 20.272154,19.6825775 21,19.3368156 L21,10.6631844 Z M7.5,9 C8.32842712,9 9,8.32842712 9,7.5 C9,6.67157288 8.32842712,6 7.5,6 C6.67157288,6 6,6.67157288 6,7.5 C6,8.32842712 6.67157288,9 7.5,9 Z M22.5,9 C23.3284271,9 24,8.32842712 24,7.5 C24,6.67157288 23.3284271,6 22.5,6 C21.6715729,6 21,6.67157288 21,7.5 C21,8.32842712 21.6715729,9 22.5,9 Z M22.5,24 C23.3284271,24 24,23.3284271 24,22.5 C24,21.6715729 23.3284271,21 22.5,21 C21.6715729,21 21,21.6715729 21,22.5 C21,23.3284271 21.6715729,24 22.5,24 Z M7.5,24 C8.32842712,24 9,23.3284271 9,22.5 C9,21.6715729 8.32842712,21 7.5,21 C6.67157288,21 6,21.6715729 6,22.5 C6,23.3284271 6.67157288,24 7.5,24 Z\"/>%0A </defs>%0A <g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(-3 -3)\">%0A <mask id=\"rectangle-b\" fill=\"%23fff\">%0A <use xlink:href=\"%23rectangle-a\"/>%0A </mask>%0A <use fill=\"%235B5B5B\" fill-rule=\"nonzero\" xlink:href=\"%23rectangle-a\"/>%0A <g fill=\"%235B5B5B\" mask=\"url(%23rectangle-b)\">%0A <rect width=\"30\" height=\"30\"/>%0A </g>%0A </g>%0A</svg>%0A')}.leaflet-pm-toolbar .leaflet-pm-icon-delete{background-image:url('data:image/svg+xml,<?xml version=\"1.0\" encoding=\"UTF-8\"?>%0A<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">%0A <!-- Generator: Sketch 52.5 (67469) - http://www.bohemiancoding.com/sketch -->%0A <title>Atoms/Icons/Tools/Eraser</title>%0A <desc>Created with Sketch.</desc>%0A <defs>%0A <path d=\"M17.7874219,18.4812552 L11.6480079,13.3498184 L6.40466009,19.3816001 L10.5539156,22.9884929 L13.86934,22.9884929 L17.7874219,18.4812552 Z M16.5074252,22.9884929 L26.0000002,22.9884929 L26.0000002,24.9884929 L10.0000002,24.9884929 L9.80708313,24.9884929 L5.09254204,20.8910192 C4.25891285,20.1663564 4.17057814,18.9031112 4.89524093,18.069482 L16.0482444,5.23941916 C16.7729072,4.40578998 18.0361525,4.31745526 18.8697816,5.04211806 L24.9074583,10.2905903 C25.7410875,11.0152531 25.8294222,12.2784983 25.1047594,13.1121275 L16.5074252,22.9884929 Z\" id=\"path-1\"></path>%0A </defs>%0A <g id=\"Symbols\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">%0A <g id=\"Atoms/Icons/Tools/Eraser\" transform=\"translate(-3.000000, -3.000000)\">%0A <mask id=\"mask-2\" fill=\"white\">%0A <use xlink:href=\"%23path-1\"></use>%0A </mask>%0A <use id=\"Combined-Shape\" fill=\"%235B5B5B\" fill-rule=\"nonzero\" xlink:href=\"%23path-1\"></use>%0A </g>%0A </g>%0A</svg>')}.leaflet-pm-toolbar .leaflet-pm-icon-edit{background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\">%0A <defs>%0A <path id=\"edit_anchor-a\" d=\"M13.5,11 C11.5670034,11 10,9.43299662 10,7.5 C10,5.56700338 11.5670034,4 13.5,4 C15.4329966,4 17,5.56700338 17,7.5 C17,9.43299662 15.4329966,11 13.5,11 Z M13.5,9 C14.3284271,9 15,8.32842712 15,7.5 C15,6.67157288 14.3284271,6 13.5,6 C12.6715729,6 12,6.67157288 12,7.5 C12,8.32842712 12.6715729,9 13.5,9 Z M12.0002889,7.52973893 C12.0125983,8.16273672 12.4170197,8.6996643 12.9807111,8.90767966 L3,15 L3,13 L12.0002889,7.52973893 Z M14.2172722,6.18228472 L19.453125,3 L22.6589355,3 L14.989102,7.68173885 C14.9962971,7.62216459 15,7.56151472 15,7.5 C15,6.93138381 14.6836098,6.4366645 14.2172722,6.18228472 Z M23.4434042,19.2851736 L20.1282799,19.2851736 L21.8729983,23.5349525 C21.9945296,23.8295773 21.8556546,24.1599209 21.5778734,24.2849208 L20.0414675,24.9545142 C19.7550613,25.0795141 19.4338738,24.9366704 19.3123426,24.6509518 L17.6544367,20.6154541 L14.9461873,23.4010151 C14.5852811,23.7721711 14,23.4860463 14,22.9992653 L14,9.57183533 C14,9.05933561 14.6225311,8.809492 14.946156,9.17008555 L23.8340292,18.3120179 C24.1925291,18.6613615 23.9279979,19.2851736 23.4434042,19.2851736 Z\"/>%0A </defs>%0A <g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(-3 -3)\">%0A <mask id=\"edit_anchor-b\" fill=\"%23fff\">%0A <use xlink:href=\"%23edit_anchor-a\"/>%0A </mask>%0A <use fill=\"%235B5B5B\" fill-rule=\"nonzero\" xlink:href=\"%23edit_anchor-a\"/>%0A <g fill=\"%235B5B5B\" mask=\"url(%23edit_anchor-b)\">%0A <rect width=\"30\" height=\"30\"/>%0A </g>%0A </g>%0A</svg>%0A')}.leaflet-pm-toolbar .leaflet-pm-icon-drag{background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\">%0A <defs>%0A <path id=\"move-a\" d=\"M21,14 L21,10 L27,15 L21,20 L21,16 L16,16 L16,21 L20,21 L15,27 L10,21 L14,21 L14,16 L9,16 L9,20 L3,15 L9,10 L9,14 L14,14 L14,9 L10,9 L15,3 L20,9 L16,9 L16,14 L21,14 Z\"/>%0A </defs>%0A <g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(-3 -3)\">%0A <mask id=\"move-b\" fill=\"%23fff\">%0A <use xlink:href=\"%23move-a\"/>%0A </mask>%0A <use fill=\"%23D8D8D8\" xlink:href=\"%23move-a\"/>%0A <g fill=\"%235B5B5B\" mask=\"url(%23move-b)\">%0A <rect width=\"30\" height=\"30\"/>%0A </g>%0A </g>%0A</svg>%0A')}.leaflet-pm-toolbar .leaflet-pm-icon-cut{background-image:url('data:image/svg+xml,<?xml version=\"1.0\" encoding=\"UTF-8\"?>%0A<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">%0A <!-- Generator: Sketch 52.5 (67469) - http://www.bohemiancoding.com/sketch -->%0A <title>Atoms/Icons/Tools/Scissors</title>%0A <desc>Created with Sketch.</desc>%0A <defs>%0A <path d=\"M12.9691574,13.4939435 L21.0317032,5.54167013 L23.4649499,5.67722957 L17.0470713,14.5106816 L27.5660336,17.1333535 L25.7891944,18.8012588 L14.5854951,17.8987506 L13.6487955,19.188007 C13.794639,19.2650958 13.9367985,19.3534417 14.0741377,19.4532245 C15.6379648,20.5894114 15.9846357,22.7782052 14.8484488,24.3420324 C13.7122619,25.9058595 11.5234681,26.2525304 9.95964096,25.1163435 C8.39581384,23.9801565 8.04914296,21.7913627 9.18532986,20.2275356 C9.74587276,19.4560145 10.5626188,18.9807475 11.4341218,18.8336407 L12.6805656,17.1180579 L12.5239724,16.3747216 L11.9506932,15.3012391 L9.89310646,14.7882251 C9.13093796,15.2357261 8.19977854,15.3966447 7.27445355,15.1659352 C5.39887519,14.698301 4.25751094,12.7987519 4.72514515,10.9231736 C5.19277935,9.04759519 7.09232846,7.90623094 8.96790682,8.37386515 C10.8434852,8.84149935 11.9848494,10.7410485 11.5172152,12.6166268 C11.4761464,12.7813449 11.4240335,12.9404001 11.3618627,13.0931999 L12.9691574,13.4939435 Z M7.75829735,13.2253438 C8.56211664,13.4257584 9.37620912,12.9366023 9.57662378,12.132783 C9.77703844,11.3289637 9.28788233,10.5148713 8.48406303,10.3144566 C7.68024373,10.1140419 6.86615126,10.603198 6.6657366,11.4070173 C6.46532194,12.2108366 6.95447805,13.0249291 7.75829735,13.2253438 Z M10.8033639,21.4031061 C10.3164266,22.0733177 10.4649998,23.0113722 11.1352115,23.4983095 C11.8054231,23.9852467 12.7434776,23.8366735 13.2304148,23.1664619 C13.7173521,22.4962502 13.5687788,21.5581957 12.8985672,21.0712585 C12.2283556,20.5843212 11.2903011,20.7328945 10.8033639,21.4031061 Z\" id=\"path-1\"></path>%0A </defs>%0A <g id=\"Symbols\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">%0A <g id=\"Atoms/Icons/Tools/Scissors\" transform=\"translate(-3.000000, -3.000000)\">%0A <mask id=\"mask-2\" fill=\"white\">%0A <use xlink:href=\"%23path-1\"></use>%0A </mask>%0A <use id=\"Mask\" fill=\"%235B5B5B\" fill-rule=\"nonzero\" transform=\"translate(16.093194, 15.663351) rotate(-32.000000) translate(-16.093194, -15.663351) \" xlink:href=\"%23path-1\"></use>%0A </g>%0A </g>%0A</svg>')}.leaflet-pm-toolbar .leaflet-pm-icon-snapping{background-image:url('data:image/svg+xml,<?xml version=\"1.0\" encoding=\"UTF-8\"?>%0A<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">%0A <!-- Generator: Sketch 57.1 (83088) - https://sketch.com -->%0A <title>Atoms/Icons/Tools/Magnet</title>%0A <desc>Created with Sketch.</desc>%0A <defs>%0A <path d=\"M21.9994759,10.9428183 L21.9999985,16.3710417 C22,16.6872007 22,17.0058278 22,17.3269411 C22,21.5646545 18.6421356,25 14.5,25 C10.3578644,25 7,21.5646545 7,17.3269411 L7.00087508,10.9907507 L11.0022808,10.9984125 C11.0017033,11.6980114 11.001247,12.4168248 11.0008992,13.1554887 L11,17.3269411 C11,19.3756809 12.5876841,21 14.5,21 C16.4123159,21 18,19.3756809 18,17.3269411 C18,15.0702032 17.9995696,12.9619668 17.998539,10.9910032 L21.9994759,10.9428183 Z M10,7 C10.5522847,7 11,7.44771525 11,8 L11,10 L7,10 L7,8 C7,7.44771525 7.44771525,7 8,7 L10,7 Z M21,7 C21.5522847,7 22,7.44771525 22,8 L22,10 L18,10 L18,8 C18,7.44771525 18.4477153,7 19,7 L21,7 Z\" id=\"path-1\"></path>%0A </defs>%0A <g id=\"Symbols\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">%0A <g id=\"Atoms/Icons/Tools/Magnet\" transform=\"translate(-3.000000, -3.000000)\">%0A <mask id=\"mask-2\" fill=\"white\">%0A <use xlink:href=\"%23path-1\"></use>%0A </mask>%0A <use id=\"Mask\" fill=\"%235B5B5B\" fill-rule=\"nonzero\" transform=\"translate(14.500000, 16.000000) rotate(45.000000) translate(-14.500000, -16.000000) \" xlink:href=\"%23path-1\"></use>%0A </g>%0A </g>%0A</svg>')}.leaflet-pm-toolbar .leaflet-pm-icon-rotate{background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\">%0A <defs>%0A <path id=\"rotate\" d=\"M21.2,5.8c-0.1-0.2-0.2-0.3-0.3-0.5l-0.1-0.2c-0.1-0.2-0.2-0.3-0.3-0.5l-0.1-0.2c-0.1-0.2-0.2-0.3-0.4-0.5l-0.2-0.3l2.8-3.1L18,0.6l-4.6,0.1l0.5,4.5l0.5,4.5l3.2-3.6v0.1l0.1,0.2c0.1,0.1,0.1,0.2,0.2,0.2l0.1,0.2C18,7,18,7.1,18.1,7.2c0.3,0.7,0.6,1.4,0.7,2.1c0.2,1.4,0,2.9-0.6,4.2L18,13.9L17.9,14l-0.3,0.5l-0.1,0.2c-0.2,0.2-0.4,0.5-0.6,0.7c-0.5,0.5-1.1,1-1.7,1.3c-0.6,0.4-1.3,0.6-2.1,0.8c-0.7,0.1-1.5,0.2-2.2,0.1c-0.8-0.1-1.5-0.3-2.2-0.5c-0.7-0.3-1.3-0.7-1.9-1.2l-0.4-0.4l-0.2-0.3L6,15c-0.1-0.1-0.2-0.2-0.2-0.3l-0.3-0.4l-0.1-0.1l-0.2-0.4c0-0.1-0.1-0.1-0.1-0.2l-0.3-0.5l-0.1-0.2c-0.1-0.3-0.2-0.6-0.3-0.9c-0.2-0.8-0.3-1.6-0.3-2.4c0-0.2,0-0.3,0-0.5V8.9c0-0.2,0-0.3,0.1-0.4l0.1-0.6l0.2-0.6c0.3-0.8,0.7-1.5,1.2-2.2c0.5-0.7,1.1-1.3,1.8-1.8c0.2-0.1,0.3-0.4,0.1-0.6C7.5,2.6,7.4,2.5,7.3,2.5H7.1L7,2.6C6.1,3,5.4,3.6,4.7,4.2C4,4.9,3.5,5.7,3,6.6c-0.9,1.8-1.2,3.8-0.8,5.8c0.1,0.5,0.2,0.9,0.3,1.4l0.3,0.8C2.9,14.7,3,14.8,3,15l0.2,0.4c0,0.1,0.1,0.2,0.1,0.2l0.3,0.5c0.1,0.2,0.2,0.3,0.3,0.5l0.1,0.2c0.1,0.1,0.2,0.3,0.3,0.4L5,17.8c0.7,0.7,1.6,1.3,2.5,1.8c0.9,0.5,1.9,0.8,3,0.9c0.5,0.1,1,0.1,1.5,0.1c0.6,0,1.1,0,1.6-0.1c1-0.2,2.1-0.5,3-1l0.2-0.1c0.2-0.1,0.3-0.2,0.5-0.3l0.7-0.4c0.2-0.1,0.3-0.2,0.4-0.3l0.2-0.2c0.2-0.1,0.4-0.3,0.5-0.5l0.1-0.1c0.3-0.3,0.7-0.7,0.9-1l0.6-0.9l0.4-0.6c1-1.9,1.4-4.1,1.1-6.2C22,7.8,21.7,6.7,21.2,5.8z\"/>%0A </defs>%0A <g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(0 2)\">%0A <mask id=\"rotate-b\" fill=\"%23fff\">%0A <use xlink:href=\"%23rotate\"/>%0A </mask>%0A <use fill=\"%235B5B5B\" fill-rule=\"nonzero\" xlink:href=\"%23rotate\"/>%0A <g fill=\"%235B5B5B\" mask=\"url(%23rotate-b)\">%0A <rect width=\"30\" height=\"30\"/>%0A </g>%0A </g>%0A</svg>%0A')}.leaflet-pm-toolbar .leaflet-pm-icon-text{background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><defs><style>.cls-1{fill:none;stroke:%235b5b5b;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.5px;}<\\/style></defs><title>Text</title><g id=\"Ebene_2\" data-name=\"Ebene 2\"><polyline class=\"cls-1\" points=\"19.64 7.27 19.64 4 12 4 12 20 15.91 20 8.09 20 12 20 12 4 4.36 4 4.36 7.27\"/></g></svg>')}.leaflet-buttons-control-button:hover,.leaflet-buttons-control-button:focus{cursor:pointer;background-color:#f4f4f4}.active>.leaflet-buttons-control-button{box-shadow:inset 0 -1px 5px 2px #514d4d4f}.leaflet-buttons-control-text-hide{display:none}.button-container{position:relative}.button-container .leaflet-pm-actions-container{z-index:2;position:absolute;top:0;left:100%;display:none;white-space:nowrap;direction:ltr}.leaflet-right .leaflet-pm-toolbar .button-container .leaflet-pm-actions-container{right:100%;left:auto}.button-container.active .leaflet-pm-actions-container{display:block}.button-container .leaflet-pm-actions-container:not(.pos-right) a.leaflet-pm-action:last-child{border-radius:0 3px 3px 0;border-right:0}.button-container .leaflet-pm-actions-container.pos-right a.leaflet-pm-action:first-child{border-radius:3px 0 0 3px}.button-container .leaflet-pm-actions-container.pos-right a.leaflet-pm-action:last-child{border-right:0}.button-container .leaflet-pm-actions-container .leaflet-pm-action{padding:0 10px;background-color:#666;color:#fff;display:inline-block;width:auto;border-right:1px solid #eee;-webkit-user-select:none;user-select:none;border-bottom:none;height:29px;line-height:29px;vertical-align:middle}.leaflet-pm-toolbar .button-container:first-child.pos-right.active a.leaflet-buttons-control-button{border-top-left-radius:0}.leaflet-pm-toolbar .button-container:first-child.active:not(.pos-right) a.leaflet-buttons-control-button{border-top-right-radius:0}.button-container .leaflet-pm-actions-container .leaflet-pm-action:hover,.button-container .leaflet-pm-actions-container .leaflet-pm-action:focus{cursor:pointer;background-color:#777}.button-container .leaflet-pm-actions-container .leaflet-pm-action.active-action{background-color:#8e8e8e}.leaflet-pm-toolbar.activeChild{z-index:801}.leaflet-buttons-control-button.pm-disabled{background-color:#f4f4f4}.leaflet-buttons-control-button.pm-disabled>.control-icon{filter:opacity(.6)}.button-container .leaflet-pm-actions-container .pm-action-button-mode.control-icon{filter:brightness(0) invert(1);width:18px}body{height:100%;margin:0;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-family:Microsoft YaHei,Arial,sans-serif}label{font-weight:700}html{height:100%;box-sizing:border-box}#app{height:100%}*,*:before,*:after{box-sizing:inherit}a:focus,a:active{outline:none}a,a:focus,a:hover{cursor:pointer;text-decoration:none}div:focus{outline:none}.clearfix:after{visibility:hidden;display:block;font-size:0;content:\" \";clear:both;height:0}.leaflet-left .leaflet-control{margin-left:5px}.leaflet-right .leaflet-control{margin-right:5px}.leaflet-top .leaflet-control{margin-top:5px}.leaflet-bottom .leaflet-control{margin-bottom:5px}.leaflet-div-icon{border:none!important;background:transparent!important;text-align:center}.leaflet-measure-path-measurement{position:absolute;left:0;top:0;font-size:13px;font-weight:700;color:red;text-shadow:-1px 0 0 white,-1px -1px 0 white,0 -1px 0 white,1px -1px 0 white,1px 0 0 white,1px 1px 0 white,0 1px 0 white,-1px 1px 0 white;white-space:nowrap;transform-origin:0;pointer-events:none;z-index:9999}.leaflet-measure-path-measurement>div{position:relative;margin-top:-50%;left:-50%}.leaflet-control-scale-line{border:1px solid #999;border-top:none;padding:0;text-align:center;white-space:nowrap;overflow:hidden;color:#fff;height:26px;line-height:26px;text-shadow:0 0 2px #fff}.leaflet-control-container>div{display:flex;align-items:flex-end}.leaflet-text-label{position:absolute;transform:translate(calc(-50% + 4px),-6px);padding:2px 4px;white-space:nowrap;cursor:default}\n.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:\"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)\";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:\"\"}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.marker-icon{background-color:#fff;border:1px solid #3388ff;border-radius:50%;margin:-8px 0 0 -8px!important;width:14px!important;height:14px!important;outline:0;transition:opacity ease .3s}.marker-icon-middle{opacity:.7;margin:-6px 0 0 -6px!important;width:10px!important;height:10px!important}.leaflet-pm-draggable{cursor:move!important}.cursor-marker{cursor:crosshair;pointer-events:none;opacity:0}.cursor-marker.visible{opacity:1!important}.geoman-draw-cursor,.geoman-draw-cursor .leaflet-interactive{cursor:crosshair}.rect-style-marker,.rect-start-marker{opacity:0}.rect-style-marker.visible,.rect-start-marker.visible{opacity:1!important}.vertexmarker-disabled{opacity:.7}.pm-text-marker{width:0;height:0}.pm-textarea{box-sizing:content-box;background-color:#fff;color:#000;resize:none;border:none;outline:0;cursor:pointer;border-radius:3px;padding-left:7px;padding-bottom:0;padding-top:4px}.leaflet-pm-draggable .pm-textarea{cursor:move}.pm-textarea:focus,.pm-textarea:focus-within,.pm-textarea:focus-visible,.pm-textarea:active{border:2px solid #000;outline:0}.pm-textarea.pm-disabled{border:none;-webkit-user-select:none;user-select:none}.pm-textarea.pm-hasfocus{cursor:auto}.leaflet-pm-toolbar .leaflet-buttons-control-button{padding:5px;box-sizing:border-box;position:relative;z-index:3}.leaflet-pm-toolbar .leaflet-pm-actions-container a.leaflet-pm-action:first-child:not(.pos-right),.leaflet-pm-toolbar .leaflet-pm-actions-container a.leaflet-pm-action:last-child.pos-right{border-radius:0}.leaflet-pm-toolbar .button-container a.leaflet-buttons-control-button{border-radius:0}.leaflet-pm-toolbar .button-container:last-child a.leaflet-buttons-control-button{border-radius:0 0 2px 2px}.leaflet-pm-toolbar .button-container:first-child a.leaflet-buttons-control-button{border-radius:2px 2px 0 0}.leaflet-pm-toolbar .button-container:last-child a.leaflet-buttons-control-button{border-bottom:none}.leaflet-pm-toolbar .control-fa-icon{font-size:19px;line-height:24px}.leaflet-pm-toolbar .control-icon{width:100%;height:100%;box-sizing:border-box;background-size:contain;background-repeat:no-repeat;background-position:center center}.leaflet-pm-toolbar .leaflet-pm-icon-marker{background-image:url('data:image/svg+xml,<?xml version=\"1.0\" encoding=\"UTF-8\"?>%0A<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">%0A <!-- Generator: Sketch 52.5 (67469) - http://www.bohemiancoding.com/sketch -->%0A <title>Atoms/Icons/Tools/Marker</title>%0A <desc>Created with Sketch.</desc>%0A <defs>%0A <path d=\"M15.5,24.8782959 C15.2909201,24.8772219 15.1744857,24.8467817 14.6590866,24.2354163 C10.2196955,19.4118054 8,15.5014392 8,12.5043177 C8,8.35979746 11.3578644,5 15.5,5 C19.6421356,5 23,8.35979746 23,12.5043177 C23,17 18.2878217,21.9268378 16.3336601,24.2440186 C15.8224622,24.8501802 15.7090799,24.8793699 15.5,24.8782959 Z M15.5,15.5326948 C17.275201,15.5326948 18.7142857,14.1180004 18.7142857,12.3728864 C18.7142857,10.6277723 17.275201,9.21307792 15.5,9.21307792 C13.724799,9.21307792 12.2857143,10.6277723 12.2857143,12.3728864 C12.2857143,14.1180004 13.724799,15.5326948 15.5,15.5326948 Z\" id=\"path-1\"></path>%0A </defs>%0A <g id=\"Symbols\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">%0A <g id=\"Atoms/Icons/Tools/Marker\" transform=\"translate(-3.000000, -3.000000)\">%0A <mask id=\"mask-2\" fill=\"white\">%0A <use xlink:href=\"%23path-1\"></use>%0A </mask>%0A <use id=\"Mask\" fill=\"%235B5B5B\" fill-rule=\"nonzero\" xlink:href=\"%23path-1\"></use>%0A </g>%0A </g>%0A</svg>')}.leaflet-pm-toolbar .leaflet-pm-icon-polygon{background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\">%0A <defs>%0A <path id=\"polygon-a\" d=\"M19.4206892,9.16509725 C19.1523681,8.66992914 19,8.10275831 19,7.5 C19,5.56700338 20.5670034,4 22.5,4 C24.4329966,4 26,5.56700338 26,7.5 C26,9.26323595 24.6961471,10.7219407 23,10.9645556 L23,19.0354444 C24.6961471,19.2780593 26,20.736764 26,22.5 C26,24.4329966 24.4329966,26 22.5,26 C20.736764,26 19.2780593,24.6961471 19.0354444,23 L10.9645556,23 C10.7219407,24.6961471 9.26323595,26 7.5,26 C5.56700338,26 4,24.4329966 4,22.5 C4,20.5670034 5.56700338,19 7.5,19 C8.10275831,19 8.66992914,19.1523681 9.16509725,19.4206892 L19.4206892,9.16509725 Z M20.8349073,10.5793063 L10.5793108,20.8349027 C10.6086731,20.8890888 10.6366469,20.9441372 10.6631844,21 L19.3368156,21 C19.6825775,20.272154 20.272154,19.6825775 21,19.3368156 L21,10.6631844 C20.9441372,10.6366469 20.8890888,10.6086731 20.8349027,10.5793108 Z M22.5,9 C23.3284271,9 24,8.32842712 24,7.5 C24,6.67157288 23.3284271,6 22.5,6 C21.6715729,6 21,6.67157288 21,7.5 C21,8.32842712 21.6715729,9 22.5,9 Z M22.5,24 C23.3284271,24 24,23.3284271 24,22.5 C24,21.6715729 23.3284271,21 22.5,21 C21.6715729,21 21,21.6715729 21,22.5 C21,23.3284271 21.6715729,24 22.5,24 Z M7.5,24 C8.32842712,24 9,23.3284271 9,22.5 C9,21.6715729 8.32842712,21 7.5,21 C6.67157288,21 6,21.6715729 6,22.5 C6,23.3284271 6.67157288,24 7.5,24 Z\"/>%0A </defs>%0A <g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(-3 -3)\">%0A <mask id=\"polygon-b\" fill=\"%23fff\">%0A <use xlink:href=\"%23polygon-a\"/>%0A </mask>%0A <use fill=\"%235B5B5B\" fill-rule=\"nonzero\" xlink:href=\"%23polygon-a\"/>%0A <g fill=\"%235B5B5B\" mask=\"url(%23polygon-b)\">%0A <rect width=\"30\" height=\"30\"/>%0A </g>%0A </g>%0A</svg>%0A')}.leaflet-pm-toolbar .leaflet-pm-icon-polyline{background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\">%0A <defs>%0A <path id=\"line-a\" d=\"M9.16509725,19.4206892 L18.4206892,10.1650973 C18.1523681,9.66992914 18,9.10275831 18,8.5 C18,6.56700338 19.5670034,5 21.5,5 C23.4329966,5 25,6.56700338 25,8.5 C25,10.4329966 23.4329966,12 21.5,12 C20.8972417,12 20.3300709,11.8476319 19.8349027,11.5793108 L10.5793108,20.8349027 C10.8476319,21.3300709 11,21.8972417 11,22.5 C11,24.4329966 9.43299662,26 7.5,26 C5.56700338,26 4,24.4329966 4,22.5 C4,20.5670034 5.56700338,19 7.5,19 C8.10275831,19 8.66992914,19.1523681 9.16509725,19.4206892 Z M21.5,10 C22.3284271,10 23,9.32842712 23,8.5 C23,7.67157288 22.3284271,7 21.5,7 C20.6715729,7 20,7.67157288 20,8.5 C20,9.32842712 20.6715729,10 21.5,10 Z M7.5,24 C8.32842712,24 9,23.3284271 9,22.5 C9,21.6715729 8.32842712,21 7.5,21 C6.67157288,21 6,21.6715729 6,22.5 C6,23.3284271 6.67157288,24 7.5,24 Z\"/>%0A </defs>%0A <g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(-3 -3)\">%0A <mask id=\"line-b\" fill=\"%23fff\">%0A <use xlink:href=\"%23line-a\"/>%0A </mask>%0A <use fill=\"%235B5B5B\" fill-rule=\"nonzero\" xlink:href=\"%23line-a\"/>%0A <g fill=\"%235B5B5B\" mask=\"url(%23line-b)\">%0A <rect width=\"30\" height=\"30\"/>%0A </g>%0A </g>%0A</svg>%0A')}.leaflet-pm-toolbar .leaflet-pm-icon-circle{background-image:url('data:image/svg+xml,<?xml version=\"1.0\" encoding=\"UTF-8\"?>%0A<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">%0A <!-- Generator: Sketch 52.5 (67469) - http://www.bohemiancoding.com/sketch -->%0A <title>Atoms/Icons/Tools/Circle</title>%0A <desc>Created with Sketch.</desc>%0A <defs>%0A <path d=\"M18.2897751,6.78602275 C18.8924131,6.29464981 19.661797,6 20.5,6 C22.4329966,6 24,7.56700338 24,9.5 C24,10.338203 23.7053502,11.1075869 23.2139772,11.7102249 C23.719599,12.8712053 24,14.1528571 24,15.5 C24,20.7467051 19.7467051,25 14.5,25 C9.25329488,25 5,20.7467051 5,15.5 C5,10.2532949 9.25329488,6 14.5,6 C15.8471429,6 17.1287947,6.28040098 18.2897751,6.78602275 Z M17.1504228,8.4817586 C16.3263581,8.17039236 15.4330777,8 14.5,8 C10.3578644,8 7,11.3578644 7,15.5 C7,19.6421356 10.3578644,23 14.5,23 C18.6421356,23 22,19.6421356 22,15.5 C22,14.5669223 21.8296076,13.6736419 21.5182414,12.8495772 C21.1960383,12.9473968 20.8541622,13 20.5,13 C18.5670034,13 17,11.4329966 17,9.5 C17,9.14583778 17.0526032,8.80396169 17.1504228,8.4817586 Z M14.5,17 C13.6715729,17 13,16.3284271 13,15.5 C13,14.6715729 13.6715729,14 14.5,14 C15.3284271,14 16,14.6715729 16,15.5 C16,16.3284271 15.3284271,17 14.5,17 Z M20.5,11 C21.3284271,11 22,10.3284271 22,9.5 C22,8.67157288 21.3284271,8 20.5,8 C19.6715729,8 19,8.67157288 19,9.5 C19,10.3284271 19.6715729,11 20.5,11 Z\" id=\"path-1\"></path>%0A </defs>%0A <g id=\"Symbols\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">%0A <g id=\"Atoms/Icons/Tools/Circle\" transform=\"translate(-3.000000, -3.000000)\">%0A <mask id=\"mask-2\" fill=\"white\">%0A <use xlink:href=\"%23path-1\"></use>%0A </mask>%0A <use id=\"Mask\" fill=\"%235B5B5B\" fill-rule=\"nonzero\" xlink:href=\"%23path-1\"></use>%0A <g id=\"Atoms/Color/Grey\" mask=\"url(%23mask-2)\" fill=\"%235B5B5B\">%0A <rect id=\"Rectangle\" x=\"0\" y=\"0\" width=\"30\" height=\"30\"></rect>%0A </g>%0A </g>%0A </g>%0A</svg>')}.leaflet-pm-toolbar .leaflet-pm-icon-circle-marker{background-image:url('data:image/svg+xml,<?xml version=\"1.0\" encoding=\"UTF-8\"?>%0A%0A<svg viewBox=\"0 0 100 100\" xmlns=\"http://www.w3.org/2000/svg\" stroke=\"%235B5B5B\" stroke-width=\"8\"%0A fill=\"none\">%0A<circle cx=\"50\" cy=\"50\" r=\"35\"/>%0A <circle cx=\"50\" cy=\"50\" r=\"3\" fill=\"%235B5B5B\"/>%0A</svg>')}.leaflet-pm-toolbar .leaflet-pm-icon-rectangle{background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\">%0A <defs>%0A <path id=\"rectangle-a\" d=\"M23,10.9645556 L23,19.0354444 C24.6961471,19.2780593 26,20.736764 26,22.5 C26,24.4329966 24.4329966,26 22.5,26 C20.736764,26 19.2780593,24.6961471 19.0354444,23 L10.9645556,23 C10.7219407,24.6961471 9.26323595,26 7.5,26 C5.56700338,26 4,24.4329966 4,22.5 C4,20.736764 5.30385293,19.2780593 7,19.0354444 L7,10.9645556 C5.30385293,10.7219407 4,9.26323595 4,7.5 C4,5.56700338 5.56700338,4 7.5,4 C9.26323595,4 10.7219407,5.30385293 10.9645556,7 L19.0354444,7 C19.2780593,5.30385293 20.736764,4 22.5,4 C24.4329966,4 26,5.56700338 26,7.5 C26,9.26323595 24.6961471,10.7219407 23,10.9645556 Z M21,10.6631844 C20.272154,10.3174225 19.6825775,9.72784598 19.3368156,9 L10.6631844,9 C10.3174225,9.72784598 9.72784598,10.3174225 9,10.6631844 L9,19.3368156 C9.72784598,19.6825775 10.3174225,20.272154 10.6631844,21 L19.3368156,21 C19.6825775,20.272154 20.272154,19.6825775 21,19.3368156 L21,10.6631844 Z M7.5,9 C8.32842712,9 9,8.32842712 9,7.5 C9,6.67157288 8.32842712,6 7.5,6 C6.67157288,6 6,6.67157288 6,7.5 C6,8.32842712 6.67157288,9 7.5,9 Z M22.5,9 C23.3284271,9 24,8.32842712 24,7.5 C24,6.67157288 23.3284271,6 22.5,6 C21.6715729,6 21,6.67157288 21,7.5 C21,8.32842712 21.6715729,9 22.5,9 Z M22.5,24 C23.3284271,24 24,23.3284271 24,22.5 C24,21.6715729 23.3284271,21 22.5,21 C21.6715729,21 21,21.6715729 21,22.5 C21,23.3284271 21.6715729,24 22.5,24 Z M7.5,24 C8.32842712,24 9,23.3284271 9,22.5 C9,21.6715729 8.32842712,21 7.5,21 C6.67157288,21 6,21.6715729 6,22.5 C6,23.3284271 6.67157288,24 7.5,24 Z\"/>%0A </defs>%0A <g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(-3 -3)\">%0A <mask id=\"rectangle-b\" fill=\"%23fff\">%0A <use xlink:href=\"%23rectangle-a\"/>%0A </mask>%0A <use fill=\"%235B5B5B\" fill-rule=\"nonzero\" xlink:href=\"%23rectangle-a\"/>%0A <g fill=\"%235B5B5B\" mask=\"url(%23rectangle-b)\">%0A <rect width=\"30\" height=\"30\"/>%0A </g>%0A </g>%0A</svg>%0A')}.leaflet-pm-toolbar .leaflet-pm-icon-delete{background-image:url('data:image/svg+xml,<?xml version=\"1.0\" encoding=\"UTF-8\"?>%0A<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">%0A <!-- Generator: Sketch 52.5 (67469) - http://www.bohemiancoding.com/sketch -->%0A <title>Atoms/Icons/Tools/Eraser</title>%0A <desc>Created with Sketch.</desc>%0A <defs>%0A <path d=\"M17.7874219,18.4812552 L11.6480079,13.3498184 L6.40466009,19.3816001 L10.5539156,22.9884929 L13.86934,22.9884929 L17.7874219,18.4812552 Z M16.5074252,22.9884929 L26.0000002,22.9884929 L26.0000002,24.9884929 L10.0000002,24.9884929 L9.80708313,24.9884929 L5.09254204,20.8910192 C4.25891285,20.1663564 4.17057814,18.9031112 4.89524093,18.069482 L16.0482444,5.23941916 C16.7729072,4.40578998 18.0361525,4.31745526 18.8697816,5.04211806 L24.9074583,10.2905903 C25.7410875,11.0152531 25.8294222,12.2784983 25.1047594,13.1121275 L16.5074252,22.9884929 Z\" id=\"path-1\"></path>%0A </defs>%0A <g id=\"Symbols\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">%0A <g id=\"Atoms/Icons/Tools/Eraser\" transform=\"translate(-3.000000, -3.000000)\">%0A <mask id=\"mask-2\" fill=\"white\">%0A <use xlink:href=\"%23path-1\"></use>%0A </mask>%0A <use id=\"Combined-Shape\" fill=\"%235B5B5B\" fill-rule=\"nonzero\" xlink:href=\"%23path-1\"></use>%0A </g>%0A </g>%0A</svg>')}.leaflet-pm-toolbar .leaflet-pm-icon-edit{background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\">%0A <defs>%0A <path id=\"edit_anchor-a\" d=\"M13.5,11 C11.5670034,11 10,9.43299662 10,7.5 C10,5.56700338 11.5670034,4 13.5,4 C15.4329966,4 17,5.56700338 17,7.5 C17,9.43299662 15.4329966,11 13.5,11 Z M13.5,9 C14.3284271,9 15,8.32842712 15,7.5 C15,6.67157288 14.3284271,6 13.5,6 C12.6715729,6 12,6.67157288 12,7.5 C12,8.32842712 12.6715729,9 13.5,9 Z M12.0002889,7.52973893 C12.0125983,8.16273672 12.4170197,8.6996643 12.9807111,8.90767966 L3,15 L3,13 L12.0002889,7.52973893 Z M14.2172722,6.18228472 L19.453125,3 L22.6589355,3 L14.989102,7.68173885 C14.9962971,7.62216459 15,7.56151472 15,7.5 C15,6.93138381 14.6836098,6.4366645 14.2172722,6.18228472 Z M23.4434042,19.2851736 L20.1282799,19.2851736 L21.8729983,23.5349525 C21.9945296,23.8295773 21.8556546,24.1599209 21.5778734,24.2849208 L20.0414675,24.9545142 C19.7550613,25.0795141 19.4338738,24.9366704 19.3123426,24.6509518 L17.6544367,20.6154541 L14.9461873,23.4010151 C14.5852811,23.7721711 14,23.4860463 14,22.9992653 L14,9.57183533 C14,9.05933561 14.6225311,8.809492 14.946156,9.17008555 L23.8340292,18.3120179 C24.1925291,18.6613615 23.9279979,19.2851736 23.4434042,19.2851736 Z\"/>%0A </defs>%0A <g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(-3 -3)\">%0A <mask id=\"edit_anchor-b\" fill=\"%23fff\">%0A <use xlink:href=\"%23edit_anchor-a\"/>%0A </mask>%0A <use fill=\"%235B5B5B\" fill-rule=\"nonzero\" xlink:href=\"%23edit_anchor-a\"/>%0A <g fill=\"%235B5B5B\" mask=\"url(%23edit_anchor-b)\">%0A <rect width=\"30\" height=\"30\"/>%0A </g>%0A </g>%0A</svg>%0A')}.leaflet-pm-toolbar .leaflet-pm-icon-drag{background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\">%0A <defs>%0A <path id=\"move-a\" d=\"M21,14 L21,10 L27,15 L21,20 L21,16 L16,16 L16,21 L20,21 L15,27 L10,21 L14,21 L14,16 L9,16 L9,20 L3,15 L9,10 L9,14 L14,14 L14,9 L10,9 L15,3 L20,9 L16,9 L16,14 L21,14 Z\"/>%0A </defs>%0A <g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(-3 -3)\">%0A <mask id=\"move-b\" fill=\"%23fff\">%0A <use xlink:href=\"%23move-a\"/>%0A </mask>%0A <use fill=\"%23D8D8D8\" xlink:href=\"%23move-a\"/>%0A <g fill=\"%235B5B5B\" mask=\"url(%23move-b)\">%0A <rect width=\"30\" height=\"30\"/>%0A </g>%0A </g>%0A</svg>%0A')}.leaflet-pm-toolbar .leaflet-pm-icon-cut{background-image:url('data:image/svg+xml,<?xml version=\"1.0\" encoding=\"UTF-8\"?>%0A<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">%0A <!-- Generator: Sketch 52.5 (67469) - http://www.bohemiancoding.com/sketch -->%0A <title>Atoms/Icons/Tools/Scissors</title>%0A <desc>Created with Sketch.</desc>%0A <defs>%0A <path d=\"M12.9691574,13.4939435 L21.0317032,5.54167013 L23.4649499,5.67722957 L17.0470713,14.5106816 L27.5660336,17.1333535 L25.7891944,18.8012588 L14.5854951,17.8987506 L13.6487955,19.188007 C13.794639,19.2650958 13.9367985,19.3534417 14.0741377,19.4532245 C15.6379648,20.5894114 15.9846357,22.7782052 14.8484488,24.3420324 C13.7122619,25.9058595 11.5234681,26.2525304 9.95964096,25.1163435 C8.39581384,23.9801565 8.04914296,21.7913627 9.18532986,20.2275356 C9.74587276,19.4560145 10.5626188,18.9807475 11.4341218,18.8336407 L12.6805656,17.1180579 L12.5239724,16.3747216 L11.9506932,15.3012391 L9.89310646,14.7882251 C9.13093796,15.2357261 8.19977854,15.3966447 7.27445355,15.1659352 C5.39887519,14.698301 4.25751094,12.7987519 4.72514515,10.9231736 C5.19277935,9.04759519 7.09232846,7.90623094 8.96790682,8.37386515 C10.8434852,8.84149935 11.9848494,10.7410485 11.5172152,12.6166268 C11.4761464,12.7813449 11.4240335,12.9404001 11.3618627,13.0931999 L12.9691574,13.4939435 Z M7.75829735,13.2253438 C8.56211664,13.4257584 9.37620912,12.9366023 9.57662378,12.132783 C9.77703844,11.3289637 9.28788233,10.5148713 8.48406303,10.3144566 C7.68024373,10.1140419 6.86615126,10.603198 6.6657366,11.4070173 C6.46532194,12.2108366 6.95447805,13.0249291 7.75829735,13.2253438 Z M10.8033639,21.4031061 C10.3164266,22.0733177 10.4649998,23.0113722 11.1352115,23.4983095 C11.8054231,23.9852467 12.7434776,23.8366735 13.2304148,23.1664619 C13.7173521,22.4962502 13.5687788,21.5581957 12.8985672,21.0712585 C12.2283556,20.5843212 11.2903011,20.7328945 10.8033639,21.4031061 Z\" id=\"path-1\"></path>%0A </defs>%0A <g id=\"Symbols\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">%0A <g id=\"Atoms/Icons/Tools/Scissors\" transform=\"translate(-3.000000, -3.000000)\">%0A <mask id=\"mask-2\" fill=\"white\">%0A <use xlink:href=\"%23path-1\"></use>%0A </mask>%0A <use id=\"Mask\" fill=\"%235B5B5B\" fill-rule=\"nonzero\" transform=\"translate(16.093194, 15.663351) rotate(-32.000000) translate(-16.093194, -15.663351) \" xlink:href=\"%23path-1\"></use>%0A </g>%0A </g>%0A</svg>')}.leaflet-pm-toolbar .leaflet-pm-icon-snapping{background-image:url('data:image/svg+xml,<?xml version=\"1.0\" encoding=\"UTF-8\"?>%0A<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">%0A <!-- Generator: Sketch 57.1 (83088) - https://sketch.com -->%0A <title>Atoms/Icons/Tools/Magnet</title>%0A <desc>Created with Sketch.</desc>%0A <defs>%0A <path d=\"M21.9994759,10.9428183 L21.9999985,16.3710417 C22,16.6872007 22,17.0058278 22,17.3269411 C22,21.5646545 18.6421356,25 14.5,25 C10.3578644,25 7,21.5646545 7,17.3269411 L7.00087508,10.9907507 L11.0022808,10.9984125 C11.0017033,11.6980114 11.001247,12.4168248 11.0008992,13.1554887 L11,17.3269411 C11,19.3756809 12.5876841,21 14.5,21 C16.4123159,21 18,19.3756809 18,17.3269411 C18,15.0702032 17.9995696,12.9619668 17.998539,10.9910032 L21.9994759,10.9428183 Z M10,7 C10.5522847,7 11,7.44771525 11,8 L11,10 L7,10 L7,8 C7,7.44771525 7.44771525,7 8,7 L10,7 Z M21,7 C21.5522847,7 22,7.44771525 22,8 L22,10 L18,10 L18,8 C18,7.44771525 18.4477153,7 19,7 L21,7 Z\" id=\"path-1\"></path>%0A </defs>%0A <g id=\"Symbols\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">%0A <g id=\"Atoms/Icons/Tools/Magnet\" transform=\"translate(-3.000000, -3.000000)\">%0A <mask id=\"mask-2\" fill=\"white\">%0A <use xlink:href=\"%23path-1\"></use>%0A </mask>%0A <use id=\"Mask\" fill=\"%235B5B5B\" fill-rule=\"nonzero\" transform=\"translate(14.500000, 16.000000) rotate(45.000000) translate(-14.500000, -16.000000) \" xlink:href=\"%23path-1\"></use>%0A </g>%0A </g>%0A</svg>')}.leaflet-pm-toolbar .leaflet-pm-icon-rotate{background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\">%0A <defs>%0A <path id=\"rotate\" d=\"M21.2,5.8c-0.1-0.2-0.2-0.3-0.3-0.5l-0.1-0.2c-0.1-0.2-0.2-0.3-0.3-0.5l-0.1-0.2c-0.1-0.2-0.2-0.3-0.4-0.5l-0.2-0.3l2.8-3.1L18,0.6l-4.6,0.1l0.5,4.5l0.5,4.5l3.2-3.6v0.1l0.1,0.2c0.1,0.1,0.1,0.2,0.2,0.2l0.1,0.2C18,7,18,7.1,18.1,7.2c0.3,0.7,0.6,1.4,0.7,2.1c0.2,1.4,0,2.9-0.6,4.2L18,13.9L17.9,14l-0.3,0.5l-0.1,0.2c-0.2,0.2-0.4,0.5-0.6,0.7c-0.5,0.5-1.1,1-1.7,1.3c-0.6,0.4-1.3,0.6-2.1,0.8c-0.7,0.1-1.5,0.2-2.2,0.1c-0.8-0.1-1.5-0.3-2.2-0.5c-0.7-0.3-1.3-0.7-1.9-1.2l-0.4-0.4l-0.2-0.3L6,15c-0.1-0.1-0.2-0.2-0.2-0.3l-0.3-0.4l-0.1-0.1l-0.2-0.4c0-0.1-0.1-0.1-0.1-0.2l-0.3-0.5l-0.1-0.2c-0.1-0.3-0.2-0.6-0.3-0.9c-0.2-0.8-0.3-1.6-0.3-2.4c0-0.2,0-0.3,0-0.5V8.9c0-0.2,0-0.3,0.1-0.4l0.1-0.6l0.2-0.6c0.3-0.8,0.7-1.5,1.2-2.2c0.5-0.7,1.1-1.3,1.8-1.8c0.2-0.1,0.3-0.4,0.1-0.6C7.5,2.6,7.4,2.5,7.3,2.5H7.1L7,2.6C6.1,3,5.4,3.6,4.7,4.2C4,4.9,3.5,5.7,3,6.6c-0.9,1.8-1.2,3.8-0.8,5.8c0.1,0.5,0.2,0.9,0.3,1.4l0.3,0.8C2.9,14.7,3,14.8,3,15l0.2,0.4c0,0.1,0.1,0.2,0.1,0.2l0.3,0.5c0.1,0.2,0.2,0.3,0.3,0.5l0.1,0.2c0.1,0.1,0.2,0.3,0.3,0.4L5,17.8c0.7,0.7,1.6,1.3,2.5,1.8c0.9,0.5,1.9,0.8,3,0.9c0.5,0.1,1,0.1,1.5,0.1c0.6,0,1.1,0,1.6-0.1c1-0.2,2.1-0.5,3-1l0.2-0.1c0.2-0.1,0.3-0.2,0.5-0.3l0.7-0.4c0.2-0.1,0.3-0.2,0.4-0.3l0.2-0.2c0.2-0.1,0.4-0.3,0.5-0.5l0.1-0.1c0.3-0.3,0.7-0.7,0.9-1l0.6-0.9l0.4-0.6c1-1.9,1.4-4.1,1.1-6.2C22,7.8,21.7,6.7,21.2,5.8z\"/>%0A </defs>%0A <g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(0 2)\">%0A <mask id=\"rotate-b\" fill=\"%23fff\">%0A <use xlink:href=\"%23rotate\"/>%0A </mask>%0A <use fill=\"%235B5B5B\" fill-rule=\"nonzero\" xlink:href=\"%23rotate\"/>%0A <g fill=\"%235B5B5B\" mask=\"url(%23rotate-b)\">%0A <rect width=\"30\" height=\"30\"/>%0A </g>%0A </g>%0A</svg>%0A')}.leaflet-pm-toolbar .leaflet-pm-icon-text{background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><defs><style>.cls-1{fill:none;stroke:%235b5b5b;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.5px;}<\\/style></defs><title>Text</title><g id=\"Ebene_2\" data-name=\"Ebene 2\"><polyline class=\"cls-1\" points=\"19.64 7.27 19.64 4 12 4 12 20 15.91 20 8.09 20 12 20 12 4 4.36 4 4.36 7.27\"/></g></svg>')}.leaflet-buttons-control-button:hover,.leaflet-buttons-control-button:focus{cursor:pointer;background-color:#f4f4f4}.active>.leaflet-buttons-control-button{box-shadow:inset 0 -1px 5px 2px #514d4d4f}.leaflet-buttons-control-text-hide{display:none}.button-container{position:relative}.button-container .leaflet-pm-actions-container{z-index:2;position:absolute;top:0;left:100%;display:none;white-space:nowrap;direction:ltr}.leaflet-right .leaflet-pm-toolbar .button-container .leaflet-pm-actions-container{right:100%;left:auto}.button-container.active .leaflet-pm-actions-container{display:block}.button-container .leaflet-pm-actions-container:not(.pos-right) a.leaflet-pm-action:last-child{border-radius:0 3px 3px 0;border-right:0}.button-container .leaflet-pm-actions-container.pos-right a.leaflet-pm-action:first-child{border-radius:3px 0 0 3px}.button-container .leaflet-pm-actions-container.pos-right a.leaflet-pm-action:last-child{border-right:0}.button-container .leaflet-pm-actions-container .leaflet-pm-action{padding:0 10px;background-color:#666;color:#fff;display:inline-block;width:auto;border-right:1px solid #eee;-webkit-user-select:none;user-select:none;border-bottom:none;height:29px;line-height:29px;vertical-align:middle}.leaflet-pm-toolbar .button-container:first-child.pos-right.active a.leaflet-buttons-control-button{border-top-left-radius:0}.leaflet-pm-toolbar .button-container:first-child.active:not(.pos-right) a.leaflet-buttons-control-button{border-top-right-radius:0}.button-container .leaflet-pm-actions-container .leaflet-pm-action:hover,.button-container .leaflet-pm-actions-container .leaflet-pm-action:focus{cursor:pointer;background-color:#777}.button-container .leaflet-pm-actions-container .leaflet-pm-action.active-action{background-color:#8e8e8e}.leaflet-pm-toolbar.activeChild{z-index:801}.leaflet-buttons-control-button.pm-disabled{background-color:#f4f4f4}.leaflet-buttons-control-button.pm-disabled>.control-icon{filter:opacity(.6)}.button-container .leaflet-pm-actions-container .pm-action-button-mode.control-icon{filter:brightness(0) invert(1);width:18px}body{height:100%;margin:0;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-family:Microsoft YaHei,Arial,sans-serif}label{font-weight:700}html{height:100%;box-sizing:border-box}#app{height:100%}*,*:before,*:after{box-sizing:inherit}a:focus,a:active{outline:none}a,a:focus,a:hover{cursor:pointer;text-decoration:none}div:focus{outline:none}.clearfix:after{visibility:hidden;display:block;font-size:0;content:\" \";clear:both;height:0}.leaflet-left .leaflet-control{margin-left:5px}.leaflet-right .leaflet-control{margin-right:5px}.leaflet-top .leaflet-control{margin-top:5px}.leaflet-bottom .leaflet-control{margin-bottom:5px}.leaflet-div-icon{border:none!important;background:transparent!important;text-align:center}.leaflet-measure-path-measurement{position:absolute;left:0;top:0;font-size:13px;font-weight:700;color:red;text-shadow:-1px 0 0 white,-1px -1px 0 white,0 -1px 0 white,1px -1px 0 white,1px 0 0 white,1px 1px 0 white,0 1px 0 white,-1px 1px 0 white;white-space:nowrap;transform-origin:0;pointer-events:none;z-index:9999}.leaflet-measure-path-measurement>div{position:relative;margin-top:-50%;left:-50%}.leaflet-control-scale-line{border:1px solid #999;border-top:none;padding:0;text-align:center;white-space:nowrap;overflow:hidden;color:#fff;height:26px;line-height:26px;text-shadow:0 0 2px #fff}.leaflet-control-container>div{display:flex;align-items:flex-end}.leaflet-text-label{position:absolute;transform:translate(calc(-50% + 4px),-6px);padding:2px 4px;white-space:nowrap;cursor:default}")); document.head.appendChild(elementStyle);} catch(e) {console.error('vite-plugin-css-injected-by-js', e);} })();(function(Jt,$t){typeof exports=="object"&&typeof module<"u"?$t(exports,require("gis-common")):typeof define=="function"&&define.amd?define(["exports","gis-common"],$t):(Jt=typeof globalThis<"u"?globalThis:Jt||self,$t(Jt["gis-leaflet-helper"]={},Jt.Gis))})(this,function(Jt,$t){"use strict";var Dp=Object.defineProperty;var Op=(Jt,$t,vn)=>$t in Jt?Dp(Jt,$t,{enumerable:!0,configurable:!0,writable:!0,value:vn}):Jt[$t]=vn;var Lt=(Jt,$t,vn)=>Op(Jt,typeof $t!="symbol"?$t+"":$t,vn);function vn(t){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const a in t)if(a!=="default"){const l=Object.getOwnPropertyDescriptor(t,a);Object.defineProperty(n,a,l.get?l:{enumerable:!0,get:()=>t[a]})}}return n.default=t,Object.freeze(n)}const Sl=vn($t);var An=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Tl(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function Dl(t){if(t.__esModule)return t;var n=t.default;if(typeof n=="function"){var a=function l(){return this instanceof l?Reflect.construct(n,arguments,this.constructor):n.apply(this,arguments)};a.prototype=n.prototype}else a={};return Object.defineProperty(a,"__esModule",{value:!0}),Object.keys(t).forEach(function(l){var c=Object.getOwnPropertyDescriptor(t,l);Object.defineProperty(a,l,c.get?c:{enumerable:!0,get:function(){return t[l]}})}),a}var ga={exports:{}};/* @preserve
|
|
2
2
|
* Leaflet 1.9.4, a JS library for interactive maps. https://leafletjs.com
|
|
3
3
|
* (c) 2010-2023 Vladimir Agafonkin, (c) 2010-2011 CloudMade
|
|
4
|
-
*/var rh;function oh(){return rh||(rh=1,function(t,n){(function(r,u){u(n)})(vn,function(r){var u="1.9.4";function d(e){var a,l,_,v;for(l=1,_=arguments.length;l<_;l++){v=arguments[l];for(a in v)e[a]=v[a]}return e}var f=Object.create||function(){function e(){}return function(a){return e.prototype=a,new e}}();function p(e,a){var l=Array.prototype.slice;if(e.bind)return e.bind.apply(e,l.call(arguments,1));var _=l.call(arguments,2);return function(){return e.apply(a,_.length?_.concat(l.call(arguments)):arguments)}}var g=0;function M(e){return"_leaflet_id"in e||(e._leaflet_id=++g),e._leaflet_id}function B(e,a,l){var _,v,k,Z;return Z=function(){_=!1,v&&(k.apply(l,v),v=!1)},k=function(){_?v=arguments:(e.apply(l,arguments),setTimeout(Z,a),_=!0)},k}function E(e,a,l){var _=a[1],v=a[0],k=_-v;return e===_&&l?e:((e-v)%k+k)%k+v}function x(){return!1}function C(e,a){if(a===!1)return e;var l=Math.pow(10,a===void 0?6:a);return Math.round(e*l)/l}function T(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}function G(e){return T(e).split(/\s+/)}function j(e,a){Object.prototype.hasOwnProperty.call(e,"options")||(e.options=e.options?f(e.options):{});for(var l in a)e.options[l]=a[l];return e.options}function W(e,a,l){var _=[];for(var v in e)_.push(encodeURIComponent(l?v.toUpperCase():v)+"="+encodeURIComponent(e[v]));return(!a||a.indexOf("?")===-1?"?":"&")+_.join("&")}var at=/\{ *([\w_ -]+) *\}/g;function rt(e,a){return e.replace(at,function(l,_){var v=a[_];if(v===void 0)throw new Error("No value provided for variable "+l);return typeof v=="function"&&(v=v(a)),v})}var ct=Array.isArray||function(e){return Object.prototype.toString.call(e)==="[object Array]"};function yt(e,a){for(var l=0;l<e.length;l++)if(e[l]===a)return l;return-1}var mt="data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs=";function xt(e){return window["webkit"+e]||window["moz"+e]||window["ms"+e]}var Dt=0;function It(e){var a=+new Date,l=Math.max(0,16-(a-Dt));return Dt=a+l,window.setTimeout(e,l)}var zt=window.requestAnimationFrame||xt("RequestAnimationFrame")||It,Yt=window.cancelAnimationFrame||xt("CancelAnimationFrame")||xt("CancelRequestAnimationFrame")||function(e){window.clearTimeout(e)};function Et(e,a,l){if(l&&zt===It)e.call(a);else return zt.call(window,p(e,a))}function jt(e){e&&Yt.call(window,e)}var be={__proto__:null,extend:d,create:f,bind:p,get lastId(){return g},stamp:M,throttle:B,wrapNum:E,falseFn:x,formatNum:C,trim:T,splitWords:G,setOptions:j,getParamString:W,template:rt,isArray:ct,indexOf:yt,emptyImageUrl:mt,requestFn:zt,cancelFn:Yt,requestAnimFrame:Et,cancelAnimFrame:jt};function pe(){}pe.extend=function(e){var a=function(){j(this),this.initialize&&this.initialize.apply(this,arguments),this.callInitHooks()},l=a.__super__=this.prototype,_=f(l);_.constructor=a,a.prototype=_;for(var v in this)Object.prototype.hasOwnProperty.call(this,v)&&v!=="prototype"&&v!=="__super__"&&(a[v]=this[v]);return e.statics&&d(a,e.statics),e.includes&&(oo(e.includes),d.apply(null,[_].concat(e.includes))),d(_,e),delete _.statics,delete _.includes,_.options&&(_.options=l.options?f(l.options):{},d(_.options,e.options)),_._initHooks=[],_.callInitHooks=function(){if(!this._initHooksCalled){l.callInitHooks&&l.callInitHooks.call(this),this._initHooksCalled=!0;for(var k=0,Z=_._initHooks.length;k<Z;k++)_._initHooks[k].call(this)}},a},pe.include=function(e){var a=this.prototype.options;return d(this.prototype,e),e.options&&(this.prototype.options=a,this.mergeOptions(e.options)),this},pe.mergeOptions=function(e){return d(this.prototype.options,e),this},pe.addInitHook=function(e){var a=Array.prototype.slice.call(arguments,1),l=typeof e=="function"?e:function(){this[e].apply(this,a)};return this.prototype._initHooks=this.prototype._initHooks||[],this.prototype._initHooks.push(l),this};function oo(e){if(!(typeof L>"u"||!L||!L.Mixin)){e=ct(e)?e:[e];for(var a=0;a<e.length;a++)e[a]===L.Mixin.Events&&console.warn("Deprecated include of L.Mixin.Events: this property will be removed in future releases, please inherit from L.Evented instead.",new Error().stack)}}var De={on:function(e,a,l){if(typeof e=="object")for(var _ in e)this._on(_,e[_],a);else{e=G(e);for(var v=0,k=e.length;v<k;v++)this._on(e[v],a,l)}return this},off:function(e,a,l){if(!arguments.length)delete this._events;else if(typeof e=="object")for(var _ in e)this._off(_,e[_],a);else{e=G(e);for(var v=arguments.length===1,k=0,Z=e.length;k<Z;k++)v?this._off(e[k]):this._off(e[k],a,l)}return this},_on:function(e,a,l,_){if(typeof a!="function"){console.warn("wrong listener type: "+typeof a);return}if(this._listens(e,a,l)===!1){l===this&&(l=void 0);var v={fn:a,ctx:l};_&&(v.once=!0),this._events=this._events||{},this._events[e]=this._events[e]||[],this._events[e].push(v)}},_off:function(e,a,l){var _,v,k;if(this._events&&(_=this._events[e],!!_)){if(arguments.length===1){if(this._firingCount)for(v=0,k=_.length;v<k;v++)_[v].fn=x;delete this._events[e];return}if(typeof a!="function"){console.warn("wrong listener type: "+typeof a);return}var Z=this._listens(e,a,l);if(Z!==!1){var Y=_[Z];this._firingCount&&(Y.fn=x,this._events[e]=_=_.slice()),_.splice(Z,1)}}},fire:function(e,a,l){if(!this.listens(e,l))return this;var _=d({},a,{type:e,target:this,sourceTarget:a&&a.sourceTarget||this});if(this._events){var v=this._events[e];if(v){this._firingCount=this._firingCount+1||1;for(var k=0,Z=v.length;k<Z;k++){var Y=v[k],st=Y.fn;Y.once&&this.off(e,st,Y.ctx),st.call(Y.ctx||this,_)}this._firingCount--}}return l&&this._propagateEvent(_),this},listens:function(e,a,l,_){typeof e!="string"&&console.warn('"string" type argument expected');var v=a;typeof a!="function"&&(_=!!a,v=void 0,l=void 0);var k=this._events&&this._events[e];if(k&&k.length&&this._listens(e,v,l)!==!1)return!0;if(_){for(var Z in this._eventParents)if(this._eventParents[Z].listens(e,a,l,_))return!0}return!1},_listens:function(e,a,l){if(!this._events)return!1;var _=this._events[e]||[];if(!a)return!!_.length;l===this&&(l=void 0);for(var v=0,k=_.length;v<k;v++)if(_[v].fn===a&&_[v].ctx===l)return v;return!1},once:function(e,a,l){if(typeof e=="object")for(var _ in e)this._on(_,e[_],a,!0);else{e=G(e);for(var v=0,k=e.length;v<k;v++)this._on(e[v],a,l,!0)}return this},addEventParent:function(e){return this._eventParents=this._eventParents||{},this._eventParents[M(e)]=e,this},removeEventParent:function(e){return this._eventParents&&delete this._eventParents[M(e)],this},_propagateEvent:function(e){for(var a in this._eventParents)this._eventParents[a].fire(e.type,d({layer:e.target,propagatedFrom:e.target},e),!0)}};De.addEventListener=De.on,De.removeEventListener=De.clearAllEventListeners=De.off,De.addOneTimeEventListener=De.once,De.fireEvent=De.fire,De.hasEventListeners=De.listens;var en=pe.extend(De);function Pt(e,a,l){this.x=l?Math.round(e):e,this.y=l?Math.round(a):a}var Cs=Math.trunc||function(e){return e>0?Math.floor(e):Math.ceil(e)};Pt.prototype={clone:function(){return new Pt(this.x,this.y)},add:function(e){return this.clone()._add(Ct(e))},_add:function(e){return this.x+=e.x,this.y+=e.y,this},subtract:function(e){return this.clone()._subtract(Ct(e))},_subtract:function(e){return this.x-=e.x,this.y-=e.y,this},divideBy:function(e){return this.clone()._divideBy(e)},_divideBy:function(e){return this.x/=e,this.y/=e,this},multiplyBy:function(e){return this.clone()._multiplyBy(e)},_multiplyBy:function(e){return this.x*=e,this.y*=e,this},scaleBy:function(e){return new Pt(this.x*e.x,this.y*e.y)},unscaleBy:function(e){return new Pt(this.x/e.x,this.y/e.y)},round:function(){return this.clone()._round()},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this},floor:function(){return this.clone()._floor()},_floor:function(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this},ceil:function(){return this.clone()._ceil()},_ceil:function(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this},trunc:function(){return this.clone()._trunc()},_trunc:function(){return this.x=Cs(this.x),this.y=Cs(this.y),this},distanceTo:function(e){e=Ct(e);var a=e.x-this.x,l=e.y-this.y;return Math.sqrt(a*a+l*l)},equals:function(e){return e=Ct(e),e.x===this.x&&e.y===this.y},contains:function(e){return e=Ct(e),Math.abs(e.x)<=Math.abs(this.x)&&Math.abs(e.y)<=Math.abs(this.y)},toString:function(){return"Point("+C(this.x)+", "+C(this.y)+")"}};function Ct(e,a,l){return e instanceof Pt?e:ct(e)?new Pt(e[0],e[1]):e==null?e:typeof e=="object"&&"x"in e&&"y"in e?new Pt(e.x,e.y):new Pt(e,a,l)}function te(e,a){if(e)for(var l=a?[e,a]:e,_=0,v=l.length;_<v;_++)this.extend(l[_])}te.prototype={extend:function(e){var a,l;if(!e)return this;if(e instanceof Pt||typeof e[0]=="number"||"x"in e)a=l=Ct(e);else if(e=we(e),a=e.min,l=e.max,!a||!l)return this;return!this.min&&!this.max?(this.min=a.clone(),this.max=l.clone()):(this.min.x=Math.min(a.x,this.min.x),this.max.x=Math.max(l.x,this.max.x),this.min.y=Math.min(a.y,this.min.y),this.max.y=Math.max(l.y,this.max.y)),this},getCenter:function(e){return Ct((this.min.x+this.max.x)/2,(this.min.y+this.max.y)/2,e)},getBottomLeft:function(){return Ct(this.min.x,this.max.y)},getTopRight:function(){return Ct(this.max.x,this.min.y)},getTopLeft:function(){return this.min},getBottomRight:function(){return this.max},getSize:function(){return this.max.subtract(this.min)},contains:function(e){var a,l;return typeof e[0]=="number"||e instanceof Pt?e=Ct(e):e=we(e),e instanceof te?(a=e.min,l=e.max):a=l=e,a.x>=this.min.x&&l.x<=this.max.x&&a.y>=this.min.y&&l.y<=this.max.y},intersects:function(e){e=we(e);var a=this.min,l=this.max,_=e.min,v=e.max,k=v.x>=a.x&&_.x<=l.x,Z=v.y>=a.y&&_.y<=l.y;return k&&Z},overlaps:function(e){e=we(e);var a=this.min,l=this.max,_=e.min,v=e.max,k=v.x>a.x&&_.x<l.x,Z=v.y>a.y&&_.y<l.y;return k&&Z},isValid:function(){return!!(this.min&&this.max)},pad:function(e){var a=this.min,l=this.max,_=Math.abs(a.x-l.x)*e,v=Math.abs(a.y-l.y)*e;return we(Ct(a.x-_,a.y-v),Ct(l.x+_,l.y+v))},equals:function(e){return e?(e=we(e),this.min.equals(e.getTopLeft())&&this.max.equals(e.getBottomRight())):!1}};function we(e,a){return!e||e instanceof te?e:new te(e,a)}function Ce(e,a){if(e)for(var l=a?[e,a]:e,_=0,v=l.length;_<v;_++)this.extend(l[_])}Ce.prototype={extend:function(e){var a=this._southWest,l=this._northEast,_,v;if(e instanceof Ht)_=e,v=e;else if(e instanceof Ce){if(_=e._southWest,v=e._northEast,!_||!v)return this}else return e?this.extend(Rt(e)||ae(e)):this;return!a&&!l?(this._southWest=new Ht(_.lat,_.lng),this._northEast=new Ht(v.lat,v.lng)):(a.lat=Math.min(_.lat,a.lat),a.lng=Math.min(_.lng,a.lng),l.lat=Math.max(v.lat,l.lat),l.lng=Math.max(v.lng,l.lng)),this},pad:function(e){var a=this._southWest,l=this._northEast,_=Math.abs(a.lat-l.lat)*e,v=Math.abs(a.lng-l.lng)*e;return new Ce(new Ht(a.lat-_,a.lng-v),new Ht(l.lat+_,l.lng+v))},getCenter:function(){return new Ht((this._southWest.lat+this._northEast.lat)/2,(this._southWest.lng+this._northEast.lng)/2)},getSouthWest:function(){return this._southWest},getNorthEast:function(){return this._northEast},getNorthWest:function(){return new Ht(this.getNorth(),this.getWest())},getSouthEast:function(){return new Ht(this.getSouth(),this.getEast())},getWest:function(){return this._southWest.lng},getSouth:function(){return this._southWest.lat},getEast:function(){return this._northEast.lng},getNorth:function(){return this._northEast.lat},contains:function(e){typeof e[0]=="number"||e instanceof Ht||"lat"in e?e=Rt(e):e=ae(e);var a=this._southWest,l=this._northEast,_,v;return e instanceof Ce?(_=e.getSouthWest(),v=e.getNorthEast()):_=v=e,_.lat>=a.lat&&v.lat<=l.lat&&_.lng>=a.lng&&v.lng<=l.lng},intersects:function(e){e=ae(e);var a=this._southWest,l=this._northEast,_=e.getSouthWest(),v=e.getNorthEast(),k=v.lat>=a.lat&&_.lat<=l.lat,Z=v.lng>=a.lng&&_.lng<=l.lng;return k&&Z},overlaps:function(e){e=ae(e);var a=this._southWest,l=this._northEast,_=e.getSouthWest(),v=e.getNorthEast(),k=v.lat>a.lat&&_.lat<l.lat,Z=v.lng>a.lng&&_.lng<l.lng;return k&&Z},toBBoxString:function(){return[this.getWest(),this.getSouth(),this.getEast(),this.getNorth()].join(",")},equals:function(e,a){return e?(e=ae(e),this._southWest.equals(e.getSouthWest(),a)&&this._northEast.equals(e.getNorthEast(),a)):!1},isValid:function(){return!!(this._southWest&&this._northEast)}};function ae(e,a){return e instanceof Ce?e:new Ce(e,a)}function Ht(e,a,l){if(isNaN(e)||isNaN(a))throw new Error("Invalid LatLng object: ("+e+", "+a+")");this.lat=+e,this.lng=+a,l!==void 0&&(this.alt=+l)}Ht.prototype={equals:function(e,a){if(!e)return!1;e=Rt(e);var l=Math.max(Math.abs(this.lat-e.lat),Math.abs(this.lng-e.lng));return l<=(a===void 0?1e-9:a)},toString:function(e){return"LatLng("+C(this.lat,e)+", "+C(this.lng,e)+")"},distanceTo:function(e){return fi.distance(this,Rt(e))},wrap:function(){return fi.wrapLatLng(this)},toBounds:function(e){var a=180*e/40075017,l=a/Math.cos(Math.PI/180*this.lat);return ae([this.lat-a,this.lng-l],[this.lat+a,this.lng+l])},clone:function(){return new Ht(this.lat,this.lng,this.alt)}};function Rt(e,a,l){return e instanceof Ht?e:ct(e)&&typeof e[0]!="object"?e.length===3?new Ht(e[0],e[1],e[2]):e.length===2?new Ht(e[0],e[1]):null:e==null?e:typeof e=="object"&&"lat"in e?new Ht(e.lat,"lng"in e?e.lng:e.lon,e.alt):a===void 0?null:new Ht(e,a,l)}var si={latLngToPoint:function(e,a){var l=this.projection.project(e),_=this.scale(a);return this.transformation._transform(l,_)},pointToLatLng:function(e,a){var l=this.scale(a),_=this.transformation.untransform(e,l);return this.projection.unproject(_)},project:function(e){return this.projection.project(e)},unproject:function(e){return this.projection.unproject(e)},scale:function(e){return 256*Math.pow(2,e)},zoom:function(e){return Math.log(e/256)/Math.LN2},getProjectedBounds:function(e){if(this.infinite)return null;var a=this.projection.bounds,l=this.scale(e),_=this.transformation.transform(a.min,l),v=this.transformation.transform(a.max,l);return new te(_,v)},infinite:!1,wrapLatLng:function(e){var a=this.wrapLng?E(e.lng,this.wrapLng,!0):e.lng,l=this.wrapLat?E(e.lat,this.wrapLat,!0):e.lat,_=e.alt;return new Ht(l,a,_)},wrapLatLngBounds:function(e){var a=e.getCenter(),l=this.wrapLatLng(a),_=a.lat-l.lat,v=a.lng-l.lng;if(_===0&&v===0)return e;var k=e.getSouthWest(),Z=e.getNorthEast(),Y=new Ht(k.lat-_,k.lng-v),st=new Ht(Z.lat-_,Z.lng-v);return new Ce(Y,st)}},fi=d({},si,{wrapLng:[-180,180],R:6371e3,distance:function(e,a){var l=Math.PI/180,_=e.lat*l,v=a.lat*l,k=Math.sin((a.lat-e.lat)*l/2),Z=Math.sin((a.lng-e.lng)*l/2),Y=k*k+Math.cos(_)*Math.cos(v)*Z*Z,st=2*Math.atan2(Math.sqrt(Y),Math.sqrt(1-Y));return this.R*st}}),nn=6378137,Es={R:nn,MAX_LATITUDE:85.0511287798,project:function(e){var a=Math.PI/180,l=this.MAX_LATITUDE,_=Math.max(Math.min(l,e.lat),-l),v=Math.sin(_*a);return new Pt(this.R*e.lng*a,this.R*Math.log((1+v)/(1-v))/2)},unproject:function(e){var a=180/Math.PI;return new Ht((2*Math.atan(Math.exp(e.y/this.R))-Math.PI/2)*a,e.x*a/this.R)},bounds:function(){var e=nn*Math.PI;return new te([-e,-e],[e,e])}()};function Ps(e,a,l,_){if(ct(e)){this._a=e[0],this._b=e[1],this._c=e[2],this._d=e[3];return}this._a=e,this._b=a,this._c=l,this._d=_}Ps.prototype={transform:function(e,a){return this._transform(e.clone(),a)},_transform:function(e,a){return a=a||1,e.x=a*(this._a*e.x+this._b),e.y=a*(this._c*e.y+this._d),e},untransform:function(e,a){return a=a||1,new Pt((e.x/a-this._b)/this._a,(e.y/a-this._d)/this._c)}};function sn(e,a,l,_){return new Ps(e,a,l,_)}var ks=d({},fi,{code:"EPSG:3857",projection:Es,transformation:function(){var e=.5/(Math.PI*Es.R);return sn(e,.5,-e,.5)}()}),Pa=d({},ks,{code:"EPSG:900913"});function ka(e){return document.createElementNS("http://www.w3.org/2000/svg",e)}function Sa(e,a){var l="",_,v,k,Z,Y,st;for(_=0,k=e.length;_<k;_++){for(Y=e[_],v=0,Z=Y.length;v<Z;v++)st=Y[v],l+=(v?"L":"M")+st.x+" "+st.y;l+=a?Mt.svg?"z":"x":""}return l||"M0 0"}var Sn=document.documentElement.style,Gi="ActiveXObject"in window,Ba=Gi&&!document.addEventListener,Ta="msLaunchUri"in navigator&&!("documentMode"in document),Ss=Ze("webkit"),Da=Ze("android"),Oa=Ze("android 2")||Ze("android 3"),ho=parseInt(/WebKit\/([0-9]+)|$/.exec(navigator.userAgent)[1],10),lo=Da&&Ze("Google")&&ho<537&&!("AudioNode"in window),Bs=!!window.opera,Ia=!Ta&&Ze("chrome"),Ra=Ze("gecko")&&!Ss&&!Bs&&!Gi,Fa=!Ia&&Ze("safari"),Ts=Ze("phantom"),Ga="OTransition"in Sn,zi=navigator.platform.indexOf("Win")===0,za=Gi&&"transition"in Sn,Bn="WebKitCSSMatrix"in window&&"m11"in new window.WebKitCSSMatrix&&!Oa,Ni="MozPerspective"in Sn,Na=!window.L_DISABLE_3D&&(za||Bn||Ni)&&!Ga&&!Ts,xi=typeof orientation<"u"||Ze("mobile"),uo=xi&&Ss,co=xi&&Bn,Ds=!window.PointerEvent&&window.MSPointerEvent,Ua=!!(window.PointerEvent||Ds),ja="ontouchstart"in window||!!window.TouchEvent,fo=!window.L_NO_TOUCH&&(ja||Ua),po=xi&&Bs,Za=xi&&Ra,qa=(window.devicePixelRatio||window.screen.deviceXDPI/window.screen.logicalXDPI)>1,_o=function(){var e=!1;try{var a=Object.defineProperty({},"passive",{get:function(){e=!0}});window.addEventListener("testPassiveEventSupport",x,a),window.removeEventListener("testPassiveEventSupport",x,a)}catch{}return e}(),mo=function(){return!!document.createElement("canvas").getContext}(),Os=!!(document.createElementNS&&ka("svg").createSVGRect),Ha=!!Os&&function(){var e=document.createElement("div");return e.innerHTML="<svg/>",(e.firstChild&&e.firstChild.namespaceURI)==="http://www.w3.org/2000/svg"}(),go=!Os&&function(){try{var e=document.createElement("div");e.innerHTML='<v:shape adj="1"/>';var a=e.firstChild;return a.style.behavior="url(#default#VML)",a&&typeof a.adj=="object"}catch{return!1}}(),yo=navigator.platform.indexOf("Mac")===0,Ao=navigator.platform.indexOf("Linux")===0;function Ze(e){return navigator.userAgent.toLowerCase().indexOf(e)>=0}var Mt={ie:Gi,ielt9:Ba,edge:Ta,webkit:Ss,android:Da,android23:Oa,androidStock:lo,opera:Bs,chrome:Ia,gecko:Ra,safari:Fa,phantom:Ts,opera12:Ga,win:zi,ie3d:za,webkit3d:Bn,gecko3d:Ni,any3d:Na,mobile:xi,mobileWebkit:uo,mobileWebkit3d:co,msPointer:Ds,pointer:Ua,touch:fo,touchNative:ja,mobileOpera:po,mobileGecko:Za,retina:qa,passiveEvents:_o,canvas:mo,svg:Os,vml:go,inlineSvg:Ha,mac:yo,linux:Ao},Va=Mt.msPointer?"MSPointerDown":"pointerdown",$a=Mt.msPointer?"MSPointerMove":"pointermove",Is=Mt.msPointer?"MSPointerUp":"pointerup",Ka=Mt.msPointer?"MSPointerCancel":"pointercancel",Rs={touchstart:Va,touchmove:$a,touchend:Is,touchcancel:Ka},Wa={touchstart:bo,touchmove:Dn,touchend:Dn,touchcancel:Dn},Ui={},Xa=!1;function vo(e,a,l){return a==="touchstart"&&Fs(),Wa[a]?(l=Wa[a].bind(this,l),e.addEventListener(Rs[a],l,!1),l):(console.warn("wrong event specified:",a),x)}function Mo(e,a,l){if(!Rs[a]){console.warn("wrong event specified:",a);return}e.removeEventListener(Rs[a],l,!1)}function xo(e){Ui[e.pointerId]=e}function Lo(e){Ui[e.pointerId]&&(Ui[e.pointerId]=e)}function Tn(e){delete Ui[e.pointerId]}function Fs(){Xa||(document.addEventListener(Va,xo,!0),document.addEventListener($a,Lo,!0),document.addEventListener(Is,Tn,!0),document.addEventListener(Ka,Tn,!0),Xa=!0)}function Dn(e,a){if(a.pointerType!==(a.MSPOINTER_TYPE_MOUSE||"mouse")){a.touches=[];for(var l in Ui)a.touches.push(Ui[l]);a.changedTouches=[a],e(a)}}function bo(e,a){a.MSPOINTER_TYPE_TOUCH&&a.pointerType===a.MSPOINTER_TYPE_TOUCH&&ce(a),Dn(e,a)}function wo(e){var a={},l,_;for(_ in e)l=e[_],a[_]=l&&l.bind?l.bind(e):l;return e=a,a.type="dblclick",a.detail=2,a.isTrusted=!1,a._simulated=!0,a}var Co=200;function Eo(e,a){e.addEventListener("dblclick",a);var l=0,_;function v(k){if(k.detail!==1){_=k.detail;return}if(!(k.pointerType==="mouse"||k.sourceCapabilities&&!k.sourceCapabilities.firesTouchEvents)){var Z=er(k);if(!(Z.some(function(st){return st instanceof HTMLLabelElement&&st.attributes.for})&&!Z.some(function(st){return st instanceof HTMLInputElement||st instanceof HTMLSelectElement}))){var Y=Date.now();Y-l<=Co?(_++,_===2&&a(wo(k))):_=1,l=Y}}}return e.addEventListener("click",v),{dblclick:a,simDblclick:v}}function Po(e,a){e.removeEventListener("dblclick",a.dblclick),e.removeEventListener("click",a.simDblclick)}var Gs=In(["transform","webkitTransform","OTransform","MozTransform","msTransform"]),an=In(["webkitTransition","transition","OTransition","MozTransition","msTransition"]),Ya=an==="webkitTransition"||an==="OTransition"?an+"End":"transitionend";function Ja(e){return typeof e=="string"?document.getElementById(e):e}function pi(e,a){var l=e.style[a]||e.currentStyle&&e.currentStyle[a];if((!l||l==="auto")&&document.defaultView){var _=document.defaultView.getComputedStyle(e,null);l=_?_[a]:null}return l==="auto"?null:l}function Nt(e,a,l){var _=document.createElement(e);return _.className=a||"",l&&l.appendChild(_),_}function Qt(e){var a=e.parentNode;a&&a.removeChild(e)}function rn(e){for(;e.firstChild;)e.removeChild(e.firstChild)}function ji(e){var a=e.parentNode;a&&a.lastChild!==e&&a.appendChild(e)}function Li(e){var a=e.parentNode;a&&a.firstChild!==e&&a.insertBefore(e,a.firstChild)}function zs(e,a){if(e.classList!==void 0)return e.classList.contains(a);var l=On(e);return l.length>0&&new RegExp("(^|\\s)"+a+"(\\s|$)").test(l)}function Tt(e,a){if(e.classList!==void 0)for(var l=G(a),_=0,v=l.length;_<v;_++)e.classList.add(l[_]);else if(!zs(e,a)){var k=On(e);Ns(e,(k?k+" ":"")+a)}}function ne(e,a){e.classList!==void 0?e.classList.remove(a):Ns(e,T((" "+On(e)+" ").replace(" "+a+" "," ")))}function Ns(e,a){e.className.baseVal===void 0?e.className=a:e.className.baseVal=a}function On(e){return e.correspondingElement&&(e=e.correspondingElement),e.className.baseVal===void 0?e.className:e.className.baseVal}function Ne(e,a){"opacity"in e.style?e.style.opacity=a:"filter"in e.style&&ko(e,a)}function ko(e,a){var l=!1,_="DXImageTransform.Microsoft.Alpha";try{l=e.filters.item(_)}catch{if(a===1)return}a=Math.round(a*100),l?(l.Enabled=a!==100,l.Opacity=a):e.style.filter+=" progid:"+_+"(opacity="+a+")"}function In(e){for(var a=document.documentElement.style,l=0;l<e.length;l++)if(e[l]in a)return e[l];return!1}function bi(e,a,l){var _=a||new Pt(0,0);e.style[Gs]=(Mt.ie3d?"translate("+_.x+"px,"+_.y+"px)":"translate3d("+_.x+"px,"+_.y+"px,0)")+(l?" scale("+l+")":"")}function re(e,a){e._leaflet_pos=a,Mt.any3d?bi(e,a):(e.style.left=a.x+"px",e.style.top=a.y+"px")}function wi(e){return e._leaflet_pos||new Pt(0,0)}var on,hn,Us;if("onselectstart"in document)on=function(){Bt(window,"selectstart",ce)},hn=function(){Kt(window,"selectstart",ce)};else{var Zi=In(["userSelect","WebkitUserSelect","OUserSelect","MozUserSelect","msUserSelect"]);on=function(){if(Zi){var e=document.documentElement.style;Us=e[Zi],e[Zi]="none"}},hn=function(){Zi&&(document.documentElement.style[Zi]=Us,Us=void 0)}}function js(){Bt(window,"dragstart",ce)}function Zs(){Kt(window,"dragstart",ce)}var Rn,qs;function Hs(e){for(;e.tabIndex===-1;)e=e.parentNode;e.style&&(Fn(),Rn=e,qs=e.style.outlineStyle,e.style.outlineStyle="none",Bt(window,"keydown",Fn))}function Fn(){Rn&&(Rn.style.outlineStyle=qs,Rn=void 0,qs=void 0,Kt(window,"keydown",Fn))}function Qa(e){do e=e.parentNode;while((!e.offsetWidth||!e.offsetHeight)&&e!==document.body);return e}function Vs(e){var a=e.getBoundingClientRect();return{x:a.width/e.offsetWidth||1,y:a.height/e.offsetHeight||1,boundingClientRect:a}}var So={__proto__:null,TRANSFORM:Gs,TRANSITION:an,TRANSITION_END:Ya,get:Ja,getStyle:pi,create:Nt,remove:Qt,empty:rn,toFront:ji,toBack:Li,hasClass:zs,addClass:Tt,removeClass:ne,setClass:Ns,getClass:On,setOpacity:Ne,testProp:In,setTransform:bi,setPosition:re,getPosition:wi,get disableTextSelection(){return on},get enableTextSelection(){return hn},disableImageDrag:js,enableImageDrag:Zs,preventOutline:Hs,restoreOutline:Fn,getSizedParentNode:Qa,getScale:Vs};function Bt(e,a,l,_){if(a&&typeof a=="object")for(var v in a)Ks(e,v,a[v],l);else{a=G(a);for(var k=0,Z=a.length;k<Z;k++)Ks(e,a[k],l,_)}return this}var $e="_leaflet_events";function Kt(e,a,l,_){if(arguments.length===1)tr(e),delete e[$e];else if(a&&typeof a=="object")for(var v in a)_i(e,v,a[v],l);else if(a=G(a),arguments.length===2)tr(e,function(Y){return yt(a,Y)!==-1});else for(var k=0,Z=a.length;k<Z;k++)_i(e,a[k],l,_);return this}function tr(e,a){for(var l in e[$e]){var _=l.split(/\d/)[0];(!a||a(_))&&_i(e,_,null,null,l)}}var $s={mouseenter:"mouseover",mouseleave:"mouseout",wheel:!("onwheel"in window)&&"mousewheel"};function Ks(e,a,l,_){var v=a+M(l)+(_?"_"+M(_):"");if(e[$e]&&e[$e][v])return this;var k=function(Y){return l.call(_||e,Y||window.event)},Z=k;!Mt.touchNative&&Mt.pointer&&a.indexOf("touch")===0?k=vo(e,a,k):Mt.touch&&a==="dblclick"?k=Eo(e,k):"addEventListener"in e?a==="touchstart"||a==="touchmove"||a==="wheel"||a==="mousewheel"?e.addEventListener($s[a]||a,k,Mt.passiveEvents?{passive:!1}:!1):a==="mouseenter"||a==="mouseleave"?(k=function(Y){Y=Y||window.event,Xs(e,Y)&&Z(Y)},e.addEventListener($s[a],k,!1)):e.addEventListener(a,Z,!1):e.attachEvent("on"+a,k),e[$e]=e[$e]||{},e[$e][v]=k}function _i(e,a,l,_,v){v=v||a+M(l)+(_?"_"+M(_):"");var k=e[$e]&&e[$e][v];if(!k)return this;!Mt.touchNative&&Mt.pointer&&a.indexOf("touch")===0?Mo(e,a,k):Mt.touch&&a==="dblclick"?Po(e,k):"removeEventListener"in e?e.removeEventListener($s[a]||a,k,!1):e.detachEvent("on"+a,k),e[$e][v]=null}function Ci(e){return e.stopPropagation?e.stopPropagation():e.originalEvent?e.originalEvent._stopped=!0:e.cancelBubble=!0,this}function Ws(e){return Ks(e,"wheel",Ci),this}function ln(e){return Bt(e,"mousedown touchstart dblclick contextmenu",Ci),e._leaflet_disable_click=!0,this}function ce(e){return e.preventDefault?e.preventDefault():e.returnValue=!1,this}function Ei(e){return ce(e),Ci(e),this}function er(e){if(e.composedPath)return e.composedPath();for(var a=[],l=e.target;l;)a.push(l),l=l.parentNode;return a}function ir(e,a){if(!a)return new Pt(e.clientX,e.clientY);var l=Vs(a),_=l.boundingClientRect;return new Pt((e.clientX-_.left)/l.x-a.clientLeft,(e.clientY-_.top)/l.y-a.clientTop)}var Bo=Mt.linux&&Mt.chrome?window.devicePixelRatio:Mt.mac?window.devicePixelRatio*3:window.devicePixelRatio>0?2*window.devicePixelRatio:1;function nr(e){return Mt.edge?e.wheelDeltaY/2:e.deltaY&&e.deltaMode===0?-e.deltaY/Bo:e.deltaY&&e.deltaMode===1?-e.deltaY*20:e.deltaY&&e.deltaMode===2?-e.deltaY*60:e.deltaX||e.deltaZ?0:e.wheelDelta?(e.wheelDeltaY||e.wheelDelta)/2:e.detail&&Math.abs(e.detail)<32765?-e.detail*20:e.detail?e.detail/-32765*60:0}function Xs(e,a){var l=a.relatedTarget;if(!l)return!0;try{for(;l&&l!==e;)l=l.parentNode}catch{return!1}return l!==e}var Gn={__proto__:null,on:Bt,off:Kt,stopPropagation:Ci,disableScrollPropagation:Ws,disableClickPropagation:ln,preventDefault:ce,stop:Ei,getPropagationPath:er,getMousePosition:ir,getWheelDelta:nr,isExternalTarget:Xs,addListener:Bt,removeListener:Kt},sr=en.extend({run:function(e,a,l,_){this.stop(),this._el=e,this._inProgress=!0,this._duration=l||.25,this._easeOutPower=1/Math.max(_||.5,.2),this._startPos=wi(e),this._offset=a.subtract(this._startPos),this._startTime=+new Date,this.fire("start"),this._animate()},stop:function(){this._inProgress&&(this._step(!0),this._complete())},_animate:function(){this._animId=Et(this._animate,this),this._step()},_step:function(e){var a=+new Date-this._startTime,l=this._duration*1e3;a<l?this._runFrame(this._easeOut(a/l),e):(this._runFrame(1),this._complete())},_runFrame:function(e,a){var l=this._startPos.add(this._offset.multiplyBy(e));a&&l._round(),re(this._el,l),this.fire("step")},_complete:function(){jt(this._animId),this._inProgress=!1,this.fire("end")},_easeOut:function(e){return 1-Math.pow(1-e,this._easeOutPower)}}),Ft=en.extend({options:{crs:ks,center:void 0,zoom:void 0,minZoom:void 0,maxZoom:void 0,layers:[],maxBounds:void 0,renderer:void 0,zoomAnimation:!0,zoomAnimationThreshold:4,fadeAnimation:!0,markerZoomAnimation:!0,transform3DLimit:8388608,zoomSnap:1,zoomDelta:1,trackResize:!0},initialize:function(e,a){a=j(this,a),this._handlers=[],this._layers={},this._zoomBoundLayers={},this._sizeChanged=!0,this._initContainer(e),this._initLayout(),this._onResize=p(this._onResize,this),this._initEvents(),a.maxBounds&&this.setMaxBounds(a.maxBounds),a.zoom!==void 0&&(this._zoom=this._limitZoom(a.zoom)),a.center&&a.zoom!==void 0&&this.setView(Rt(a.center),a.zoom,{reset:!0}),this.callInitHooks(),this._zoomAnimated=an&&Mt.any3d&&!Mt.mobileOpera&&this.options.zoomAnimation,this._zoomAnimated&&(this._createAnimProxy(),Bt(this._proxy,Ya,this._catchTransitionEnd,this)),this._addLayers(this.options.layers)},setView:function(e,a,l){if(a=a===void 0?this._zoom:this._limitZoom(a),e=this._limitCenter(Rt(e),a,this.options.maxBounds),l=l||{},this._stop(),this._loaded&&!l.reset&&l!==!0){l.animate!==void 0&&(l.zoom=d({animate:l.animate},l.zoom),l.pan=d({animate:l.animate,duration:l.duration},l.pan));var _=this._zoom!==a?this._tryAnimatedZoom&&this._tryAnimatedZoom(e,a,l.zoom):this._tryAnimatedPan(e,l.pan);if(_)return clearTimeout(this._sizeTimer),this}return this._resetView(e,a,l.pan&&l.pan.noMoveStart),this},setZoom:function(e,a){return this._loaded?this.setView(this.getCenter(),e,{zoom:a}):(this._zoom=e,this)},zoomIn:function(e,a){return e=e||(Mt.any3d?this.options.zoomDelta:1),this.setZoom(this._zoom+e,a)},zoomOut:function(e,a){return e=e||(Mt.any3d?this.options.zoomDelta:1),this.setZoom(this._zoom-e,a)},setZoomAround:function(e,a,l){var _=this.getZoomScale(a),v=this.getSize().divideBy(2),k=e instanceof Pt?e:this.latLngToContainerPoint(e),Z=k.subtract(v).multiplyBy(1-1/_),Y=this.containerPointToLatLng(v.add(Z));return this.setView(Y,a,{zoom:l})},_getBoundsCenterZoom:function(e,a){a=a||{},e=e.getBounds?e.getBounds():ae(e);var l=Ct(a.paddingTopLeft||a.padding||[0,0]),_=Ct(a.paddingBottomRight||a.padding||[0,0]),v=this.getBoundsZoom(e,!1,l.add(_));if(v=typeof a.maxZoom=="number"?Math.min(a.maxZoom,v):v,v===1/0)return{center:e.getCenter(),zoom:v};var k=_.subtract(l).divideBy(2),Z=this.project(e.getSouthWest(),v),Y=this.project(e.getNorthEast(),v),st=this.unproject(Z.add(Y).divideBy(2).add(k),v);return{center:st,zoom:v}},fitBounds:function(e,a){if(e=ae(e),!e.isValid())throw new Error("Bounds are not valid.");var l=this._getBoundsCenterZoom(e,a);return this.setView(l.center,l.zoom,a)},fitWorld:function(e){return this.fitBounds([[-90,-180],[90,180]],e)},panTo:function(e,a){return this.setView(e,this._zoom,{pan:a})},panBy:function(e,a){if(e=Ct(e).round(),a=a||{},!e.x&&!e.y)return this.fire("moveend");if(a.animate!==!0&&!this.getSize().contains(e))return this._resetView(this.unproject(this.project(this.getCenter()).add(e)),this.getZoom()),this;if(this._panAnim||(this._panAnim=new sr,this._panAnim.on({step:this._onPanTransitionStep,end:this._onPanTransitionEnd},this)),a.noMoveStart||this.fire("movestart"),a.animate!==!1){Tt(this._mapPane,"leaflet-pan-anim");var l=this._getMapPanePos().subtract(e).round();this._panAnim.run(this._mapPane,l,a.duration||.25,a.easeLinearity)}else this._rawPanBy(e),this.fire("move").fire("moveend");return this},flyTo:function(e,a,l){if(l=l||{},l.animate===!1||!Mt.any3d)return this.setView(e,a,l);this._stop();var _=this.project(this.getCenter()),v=this.project(e),k=this.getSize(),Z=this._zoom;e=Rt(e),a=a===void 0?Z:a;var Y=Math.max(k.x,k.y),st=Y*this.getZoomScale(Z,a),ht=v.distanceTo(_)||1,pt=1.42,wt=pt*pt;function Ot(se){var yn=se?-1:1,Qo=se?st:Y,Qe=st*st-Y*Y+yn*wt*wt*ht*ht,th=2*Qo*wt*ht,Xi=Qe/th,ha=Math.sqrt(Xi*Xi+1)-Xi,eh=ha<1e-9?-18:Math.log(ha);return eh}function xe(se){return(Math.exp(se)-Math.exp(-se))/2}function ue(se){return(Math.exp(se)+Math.exp(-se))/2}function ke(se){return xe(se)/ue(se)}var ee=Ot(0);function Je(se){return Y*(ue(ee)/ue(ee+pt*se))}function oa(se){return Y*(ue(ee)*ke(ee+pt*se)-xe(ee))/wt}function as(se){return 1-Math.pow(1-se,1.5)}var Ar=Date.now(),gn=(Ot(1)-ee)/pt,Jo=l.duration?1e3*l.duration:1e3*gn*.8;function vr(){var se=(Date.now()-Ar)/Jo,yn=as(se)*gn;se<=1?(this._flyToFrame=Et(vr,this),this._move(this.unproject(_.add(v.subtract(_).multiplyBy(oa(yn)/ht)),Z),this.getScaleZoom(Y/Je(yn),Z),{flyTo:!0})):this._move(e,a)._moveEnd(!0)}return this._moveStart(!0,l.noMoveStart),vr.call(this),this},flyToBounds:function(e,a){var l=this._getBoundsCenterZoom(e,a);return this.flyTo(l.center,l.zoom,a)},setMaxBounds:function(e){return e=ae(e),this.listens("moveend",this._panInsideMaxBounds)&&this.off("moveend",this._panInsideMaxBounds),e.isValid()?(this.options.maxBounds=e,this._loaded&&this._panInsideMaxBounds(),this.on("moveend",this._panInsideMaxBounds)):(this.options.maxBounds=null,this)},setMinZoom:function(e){var a=this.options.minZoom;return this.options.minZoom=e,this._loaded&&a!==e&&(this.fire("zoomlevelschange"),this.getZoom()<this.options.minZoom)?this.setZoom(e):this},setMaxZoom:function(e){var a=this.options.maxZoom;return this.options.maxZoom=e,this._loaded&&a!==e&&(this.fire("zoomlevelschange"),this.getZoom()>this.options.maxZoom)?this.setZoom(e):this},panInsideBounds:function(e,a){this._enforcingBounds=!0;var l=this.getCenter(),_=this._limitCenter(l,this._zoom,ae(e));return l.equals(_)||this.panTo(_,a),this._enforcingBounds=!1,this},panInside:function(e,a){a=a||{};var l=Ct(a.paddingTopLeft||a.padding||[0,0]),_=Ct(a.paddingBottomRight||a.padding||[0,0]),v=this.project(this.getCenter()),k=this.project(e),Z=this.getPixelBounds(),Y=we([Z.min.add(l),Z.max.subtract(_)]),st=Y.getSize();if(!Y.contains(k)){this._enforcingBounds=!0;var ht=k.subtract(Y.getCenter()),pt=Y.extend(k).getSize().subtract(st);v.x+=ht.x<0?-pt.x:pt.x,v.y+=ht.y<0?-pt.y:pt.y,this.panTo(this.unproject(v),a),this._enforcingBounds=!1}return this},invalidateSize:function(e){if(!this._loaded)return this;e=d({animate:!1,pan:!0},e===!0?{animate:!0}:e);var a=this.getSize();this._sizeChanged=!0,this._lastCenter=null;var l=this.getSize(),_=a.divideBy(2).round(),v=l.divideBy(2).round(),k=_.subtract(v);return!k.x&&!k.y?this:(e.animate&&e.pan?this.panBy(k):(e.pan&&this._rawPanBy(k),this.fire("move"),e.debounceMoveend?(clearTimeout(this._sizeTimer),this._sizeTimer=setTimeout(p(this.fire,this,"moveend"),200)):this.fire("moveend")),this.fire("resize",{oldSize:a,newSize:l}))},stop:function(){return this.setZoom(this._limitZoom(this._zoom)),this.options.zoomSnap||this.fire("viewreset"),this._stop()},locate:function(e){if(e=this._locateOptions=d({timeout:1e4,watch:!1},e),!("geolocation"in navigator))return this._handleGeolocationError({code:0,message:"Geolocation not supported."}),this;var a=p(this._handleGeolocationResponse,this),l=p(this._handleGeolocationError,this);return e.watch?this._locationWatchId=navigator.geolocation.watchPosition(a,l,e):navigator.geolocation.getCurrentPosition(a,l,e),this},stopLocate:function(){return navigator.geolocation&&navigator.geolocation.clearWatch&&navigator.geolocation.clearWatch(this._locationWatchId),this._locateOptions&&(this._locateOptions.setView=!1),this},_handleGeolocationError:function(e){if(this._container._leaflet_id){var a=e.code,l=e.message||(a===1?"permission denied":a===2?"position unavailable":"timeout");this._locateOptions.setView&&!this._loaded&&this.fitWorld(),this.fire("locationerror",{code:a,message:"Geolocation error: "+l+"."})}},_handleGeolocationResponse:function(e){if(this._container._leaflet_id){var a=e.coords.latitude,l=e.coords.longitude,_=new Ht(a,l),v=_.toBounds(e.coords.accuracy*2),k=this._locateOptions;if(k.setView){var Z=this.getBoundsZoom(v);this.setView(_,k.maxZoom?Math.min(Z,k.maxZoom):Z)}var Y={latlng:_,bounds:v,timestamp:e.timestamp};for(var st in e.coords)typeof e.coords[st]=="number"&&(Y[st]=e.coords[st]);this.fire("locationfound",Y)}},addHandler:function(e,a){if(!a)return this;var l=this[e]=new a(this);return this._handlers.push(l),this.options[e]&&l.enable(),this},remove:function(){if(this._initEvents(!0),this.options.maxBounds&&this.off("moveend",this._panInsideMaxBounds),this._containerId!==this._container._leaflet_id)throw new Error("Map container is being reused by another instance");try{delete this._container._leaflet_id,delete this._containerId}catch{this._container._leaflet_id=void 0,this._containerId=void 0}this._locationWatchId!==void 0&&this.stopLocate(),this._stop(),Qt(this._mapPane),this._clearControlPos&&this._clearControlPos(),this._resizeRequest&&(jt(this._resizeRequest),this._resizeRequest=null),this._clearHandlers(),this._loaded&&this.fire("unload");var e;for(e in this._layers)this._layers[e].remove();for(e in this._panes)Qt(this._panes[e]);return this._layers=[],this._panes=[],delete this._mapPane,delete this._renderer,this},createPane:function(e,a){var l="leaflet-pane"+(e?" leaflet-"+e.replace("Pane","")+"-pane":""),_=Nt("div",l,a||this._mapPane);return e&&(this._panes[e]=_),_},getCenter:function(){return this._checkIfLoaded(),this._lastCenter&&!this._moved()?this._lastCenter.clone():this.layerPointToLatLng(this._getCenterLayerPoint())},getZoom:function(){return this._zoom},getBounds:function(){var e=this.getPixelBounds(),a=this.unproject(e.getBottomLeft()),l=this.unproject(e.getTopRight());return new Ce(a,l)},getMinZoom:function(){return this.options.minZoom===void 0?this._layersMinZoom||0:this.options.minZoom},getMaxZoom:function(){return this.options.maxZoom===void 0?this._layersMaxZoom===void 0?1/0:this._layersMaxZoom:this.options.maxZoom},getBoundsZoom:function(e,a,l){e=ae(e),l=Ct(l||[0,0]);var _=this.getZoom()||0,v=this.getMinZoom(),k=this.getMaxZoom(),Z=e.getNorthWest(),Y=e.getSouthEast(),st=this.getSize().subtract(l),ht=we(this.project(Y,_),this.project(Z,_)).getSize(),pt=Mt.any3d?this.options.zoomSnap:1,wt=st.x/ht.x,Ot=st.y/ht.y,xe=a?Math.max(wt,Ot):Math.min(wt,Ot);return _=this.getScaleZoom(xe,_),pt&&(_=Math.round(_/(pt/100))*(pt/100),_=a?Math.ceil(_/pt)*pt:Math.floor(_/pt)*pt),Math.max(v,Math.min(k,_))},getSize:function(){return(!this._size||this._sizeChanged)&&(this._size=new Pt(this._container.clientWidth||0,this._container.clientHeight||0),this._sizeChanged=!1),this._size.clone()},getPixelBounds:function(e,a){var l=this._getTopLeftPoint(e,a);return new te(l,l.add(this.getSize()))},getPixelOrigin:function(){return this._checkIfLoaded(),this._pixelOrigin},getPixelWorldBounds:function(e){return this.options.crs.getProjectedBounds(e===void 0?this.getZoom():e)},getPane:function(e){return typeof e=="string"?this._panes[e]:e},getPanes:function(){return this._panes},getContainer:function(){return this._container},getZoomScale:function(e,a){var l=this.options.crs;return a=a===void 0?this._zoom:a,l.scale(e)/l.scale(a)},getScaleZoom:function(e,a){var l=this.options.crs;a=a===void 0?this._zoom:a;var _=l.zoom(e*l.scale(a));return isNaN(_)?1/0:_},project:function(e,a){return a=a===void 0?this._zoom:a,this.options.crs.latLngToPoint(Rt(e),a)},unproject:function(e,a){return a=a===void 0?this._zoom:a,this.options.crs.pointToLatLng(Ct(e),a)},layerPointToLatLng:function(e){var a=Ct(e).add(this.getPixelOrigin());return this.unproject(a)},latLngToLayerPoint:function(e){var a=this.project(Rt(e))._round();return a._subtract(this.getPixelOrigin())},wrapLatLng:function(e){return this.options.crs.wrapLatLng(Rt(e))},wrapLatLngBounds:function(e){return this.options.crs.wrapLatLngBounds(ae(e))},distance:function(e,a){return this.options.crs.distance(Rt(e),Rt(a))},containerPointToLayerPoint:function(e){return Ct(e).subtract(this._getMapPanePos())},layerPointToContainerPoint:function(e){return Ct(e).add(this._getMapPanePos())},containerPointToLatLng:function(e){var a=this.containerPointToLayerPoint(Ct(e));return this.layerPointToLatLng(a)},latLngToContainerPoint:function(e){return this.layerPointToContainerPoint(this.latLngToLayerPoint(Rt(e)))},mouseEventToContainerPoint:function(e){return ir(e,this._container)},mouseEventToLayerPoint:function(e){return this.containerPointToLayerPoint(this.mouseEventToContainerPoint(e))},mouseEventToLatLng:function(e){return this.layerPointToLatLng(this.mouseEventToLayerPoint(e))},_initContainer:function(e){var a=this._container=Ja(e);if(a){if(a._leaflet_id)throw new Error("Map container is already initialized.")}else throw new Error("Map container not found.");Bt(a,"scroll",this._onScroll,this),this._containerId=M(a)},_initLayout:function(){var e=this._container;this._fadeAnimated=this.options.fadeAnimation&&Mt.any3d,Tt(e,"leaflet-container"+(Mt.touch?" leaflet-touch":"")+(Mt.retina?" leaflet-retina":"")+(Mt.ielt9?" leaflet-oldie":"")+(Mt.safari?" leaflet-safari":"")+(this._fadeAnimated?" leaflet-fade-anim":""));var a=pi(e,"position");a!=="absolute"&&a!=="relative"&&a!=="fixed"&&a!=="sticky"&&(e.style.position="relative"),this._initPanes(),this._initControlPos&&this._initControlPos()},_initPanes:function(){var e=this._panes={};this._paneRenderers={},this._mapPane=this.createPane("mapPane",this._container),re(this._mapPane,new Pt(0,0)),this.createPane("tilePane"),this.createPane("overlayPane"),this.createPane("shadowPane"),this.createPane("markerPane"),this.createPane("tooltipPane"),this.createPane("popupPane"),this.options.markerZoomAnimation||(Tt(e.markerPane,"leaflet-zoom-hide"),Tt(e.shadowPane,"leaflet-zoom-hide"))},_resetView:function(e,a,l){re(this._mapPane,new Pt(0,0));var _=!this._loaded;this._loaded=!0,a=this._limitZoom(a),this.fire("viewprereset");var v=this._zoom!==a;this._moveStart(v,l)._move(e,a)._moveEnd(v),this.fire("viewreset"),_&&this.fire("load")},_moveStart:function(e,a){return e&&this.fire("zoomstart"),a||this.fire("movestart"),this},_move:function(e,a,l,_){a===void 0&&(a=this._zoom);var v=this._zoom!==a;return this._zoom=a,this._lastCenter=e,this._pixelOrigin=this._getNewPixelOrigin(e),_?l&&l.pinch&&this.fire("zoom",l):((v||l&&l.pinch)&&this.fire("zoom",l),this.fire("move",l)),this},_moveEnd:function(e){return e&&this.fire("zoomend"),this.fire("moveend")},_stop:function(){return jt(this._flyToFrame),this._panAnim&&this._panAnim.stop(),this},_rawPanBy:function(e){re(this._mapPane,this._getMapPanePos().subtract(e))},_getZoomSpan:function(){return this.getMaxZoom()-this.getMinZoom()},_panInsideMaxBounds:function(){this._enforcingBounds||this.panInsideBounds(this.options.maxBounds)},_checkIfLoaded:function(){if(!this._loaded)throw new Error("Set map center and zoom first.")},_initEvents:function(e){this._targets={},this._targets[M(this._container)]=this;var a=e?Kt:Bt;a(this._container,"click dblclick mousedown mouseup mouseover mouseout mousemove contextmenu keypress keydown keyup",this._handleDOMEvent,this),this.options.trackResize&&a(window,"resize",this._onResize,this),Mt.any3d&&this.options.transform3DLimit&&(e?this.off:this.on).call(this,"moveend",this._onMoveEnd)},_onResize:function(){jt(this._resizeRequest),this._resizeRequest=Et(function(){this.invalidateSize({debounceMoveend:!0})},this)},_onScroll:function(){this._container.scrollTop=0,this._container.scrollLeft=0},_onMoveEnd:function(){var e=this._getMapPanePos();Math.max(Math.abs(e.x),Math.abs(e.y))>=this.options.transform3DLimit&&this._resetView(this.getCenter(),this.getZoom())},_findEventTargets:function(e,a){for(var l=[],_,v=a==="mouseout"||a==="mouseover",k=e.target||e.srcElement,Z=!1;k;){if(_=this._targets[M(k)],_&&(a==="click"||a==="preclick")&&this._draggableMoved(_)){Z=!0;break}if(_&&_.listens(a,!0)&&(v&&!Xs(k,e)||(l.push(_),v))||k===this._container)break;k=k.parentNode}return!l.length&&!Z&&!v&&this.listens(a,!0)&&(l=[this]),l},_isClickDisabled:function(e){for(;e&&e!==this._container;){if(e._leaflet_disable_click)return!0;e=e.parentNode}},_handleDOMEvent:function(e){var a=e.target||e.srcElement;if(!(!this._loaded||a._leaflet_disable_events||e.type==="click"&&this._isClickDisabled(a))){var l=e.type;l==="mousedown"&&Hs(a),this._fireDOMEvent(e,l)}},_mouseEvents:["click","dblclick","mouseover","mouseout","contextmenu"],_fireDOMEvent:function(e,a,l){if(e.type==="click"){var _=d({},e);_.type="preclick",this._fireDOMEvent(_,_.type,l)}var v=this._findEventTargets(e,a);if(l){for(var k=[],Z=0;Z<l.length;Z++)l[Z].listens(a,!0)&&k.push(l[Z]);v=k.concat(v)}if(v.length){a==="contextmenu"&&ce(e);var Y=v[0],st={originalEvent:e};if(e.type!=="keypress"&&e.type!=="keydown"&&e.type!=="keyup"){var ht=Y.getLatLng&&(!Y._radius||Y._radius<=10);st.containerPoint=ht?this.latLngToContainerPoint(Y.getLatLng()):this.mouseEventToContainerPoint(e),st.layerPoint=this.containerPointToLayerPoint(st.containerPoint),st.latlng=ht?Y.getLatLng():this.layerPointToLatLng(st.layerPoint)}for(Z=0;Z<v.length;Z++)if(v[Z].fire(a,st,!0),st.originalEvent._stopped||v[Z].options.bubblingMouseEvents===!1&&yt(this._mouseEvents,a)!==-1)return}},_draggableMoved:function(e){return e=e.dragging&&e.dragging.enabled()?e:this,e.dragging&&e.dragging.moved()||this.boxZoom&&this.boxZoom.moved()},_clearHandlers:function(){for(var e=0,a=this._handlers.length;e<a;e++)this._handlers[e].disable()},whenReady:function(e,a){return this._loaded?e.call(a||this,{target:this}):this.on("load",e,a),this},_getMapPanePos:function(){return wi(this._mapPane)||new Pt(0,0)},_moved:function(){var e=this._getMapPanePos();return e&&!e.equals([0,0])},_getTopLeftPoint:function(e,a){var l=e&&a!==void 0?this._getNewPixelOrigin(e,a):this.getPixelOrigin();return l.subtract(this._getMapPanePos())},_getNewPixelOrigin:function(e,a){var l=this.getSize()._divideBy(2);return this.project(e,a)._subtract(l)._add(this._getMapPanePos())._round()},_latLngToNewLayerPoint:function(e,a,l){var _=this._getNewPixelOrigin(l,a);return this.project(e,a)._subtract(_)},_latLngBoundsToNewLayerBounds:function(e,a,l){var _=this._getNewPixelOrigin(l,a);return we([this.project(e.getSouthWest(),a)._subtract(_),this.project(e.getNorthWest(),a)._subtract(_),this.project(e.getSouthEast(),a)._subtract(_),this.project(e.getNorthEast(),a)._subtract(_)])},_getCenterLayerPoint:function(){return this.containerPointToLayerPoint(this.getSize()._divideBy(2))},_getCenterOffset:function(e){return this.latLngToLayerPoint(e).subtract(this._getCenterLayerPoint())},_limitCenter:function(e,a,l){if(!l)return e;var _=this.project(e,a),v=this.getSize().divideBy(2),k=new te(_.subtract(v),_.add(v)),Z=this._getBoundsOffset(k,l,a);return Math.abs(Z.x)<=1&&Math.abs(Z.y)<=1?e:this.unproject(_.add(Z),a)},_limitOffset:function(e,a){if(!a)return e;var l=this.getPixelBounds(),_=new te(l.min.add(e),l.max.add(e));return e.add(this._getBoundsOffset(_,a))},_getBoundsOffset:function(e,a,l){var _=we(this.project(a.getNorthEast(),l),this.project(a.getSouthWest(),l)),v=_.min.subtract(e.min),k=_.max.subtract(e.max),Z=this._rebound(v.x,-k.x),Y=this._rebound(v.y,-k.y);return new Pt(Z,Y)},_rebound:function(e,a){return e+a>0?Math.round(e-a)/2:Math.max(0,Math.ceil(e))-Math.max(0,Math.floor(a))},_limitZoom:function(e){var a=this.getMinZoom(),l=this.getMaxZoom(),_=Mt.any3d?this.options.zoomSnap:1;return _&&(e=Math.round(e/_)*_),Math.max(a,Math.min(l,e))},_onPanTransitionStep:function(){this.fire("move")},_onPanTransitionEnd:function(){ne(this._mapPane,"leaflet-pan-anim"),this.fire("moveend")},_tryAnimatedPan:function(e,a){var l=this._getCenterOffset(e)._trunc();return(a&&a.animate)!==!0&&!this.getSize().contains(l)?!1:(this.panBy(l,a),!0)},_createAnimProxy:function(){var e=this._proxy=Nt("div","leaflet-proxy leaflet-zoom-animated");this._panes.mapPane.appendChild(e),this.on("zoomanim",function(a){var l=Gs,_=this._proxy.style[l];bi(this._proxy,this.project(a.center,a.zoom),this.getZoomScale(a.zoom,1)),_===this._proxy.style[l]&&this._animatingZoom&&this._onZoomTransitionEnd()},this),this.on("load moveend",this._animMoveEnd,this),this._on("unload",this._destroyAnimProxy,this)},_destroyAnimProxy:function(){Qt(this._proxy),this.off("load moveend",this._animMoveEnd,this),delete this._proxy},_animMoveEnd:function(){var e=this.getCenter(),a=this.getZoom();bi(this._proxy,this.project(e,a),this.getZoomScale(a,1))},_catchTransitionEnd:function(e){this._animatingZoom&&e.propertyName.indexOf("transform")>=0&&this._onZoomTransitionEnd()},_nothingToAnimate:function(){return!this._container.getElementsByClassName("leaflet-zoom-animated").length},_tryAnimatedZoom:function(e,a,l){if(this._animatingZoom)return!0;if(l=l||{},!this._zoomAnimated||l.animate===!1||this._nothingToAnimate()||Math.abs(a-this._zoom)>this.options.zoomAnimationThreshold)return!1;var _=this.getZoomScale(a),v=this._getCenterOffset(e)._divideBy(1-1/_);return l.animate!==!0&&!this.getSize().contains(v)?!1:(Et(function(){this._moveStart(!0,l.noMoveStart||!1)._animateZoom(e,a,!0)},this),!0)},_animateZoom:function(e,a,l,_){this._mapPane&&(l&&(this._animatingZoom=!0,this._animateToCenter=e,this._animateToZoom=a,Tt(this._mapPane,"leaflet-zoom-anim")),this.fire("zoomanim",{center:e,zoom:a,noUpdate:_}),this._tempFireZoomEvent||(this._tempFireZoomEvent=this._zoom!==this._animateToZoom),this._move(this._animateToCenter,this._animateToZoom,void 0,!0),setTimeout(p(this._onZoomTransitionEnd,this),250))},_onZoomTransitionEnd:function(){this._animatingZoom&&(this._mapPane&&ne(this._mapPane,"leaflet-zoom-anim"),this._animatingZoom=!1,this._move(this._animateToCenter,this._animateToZoom,void 0,!0),this._tempFireZoomEvent&&this.fire("zoom"),delete this._tempFireZoomEvent,this.fire("move"),this._moveEnd(!0))}});function ar(e,a){return new Ft(e,a)}var St=pe.extend({options:{position:"topright"},initialize:function(e){j(this,e)},getPosition:function(){return this.options.position},setPosition:function(e){var a=this._map;return a&&a.removeControl(this),this.options.position=e,a&&a.addControl(this),this},getContainer:function(){return this._container},addTo:function(e){this.remove(),this._map=e;var a=this._container=this.onAdd(e),l=this.getPosition(),_=e._controlCorners[l];return Tt(a,"leaflet-control"),l.indexOf("bottom")!==-1?_.insertBefore(a,_.firstChild):_.appendChild(a),this._map.on("unload",this.remove,this),this},remove:function(){return this._map?(Qt(this._container),this.onRemove&&this.onRemove(this._map),this._map.off("unload",this.remove,this),this._map=null,this):this},_refocusOnMap:function(e){this._map&&e&&e.screenX>0&&e.screenY>0&&this._map.getContainer().focus()}}),Pi=function(e){return new St(e)};Ft.include({addControl:function(e){return e.addTo(this),this},removeControl:function(e){return e.remove(),this},_initControlPos:function(){var e=this._controlCorners={},a="leaflet-",l=this._controlContainer=Nt("div",a+"control-container",this._container);function _(v,k){var Z=a+v+" "+a+k;e[v+k]=Nt("div",Z,l)}_("top","left"),_("top","right"),_("bottom","left"),_("bottom","right")},_clearControlPos:function(){for(var e in this._controlCorners)Qt(this._controlCorners[e]);Qt(this._controlContainer),delete this._controlCorners,delete this._controlContainer}});var un=St.extend({options:{collapsed:!0,position:"topright",autoZIndex:!0,hideSingleBase:!1,sortLayers:!1,sortFunction:function(e,a,l,_){return l<_?-1:_<l?1:0}},initialize:function(e,a,l){j(this,l),this._layerControlInputs=[],this._layers=[],this._lastZIndex=0,this._handlingClick=!1,this._preventClick=!1;for(var _ in e)this._addLayer(e[_],_);for(_ in a)this._addLayer(a[_],_,!0)},onAdd:function(e){this._initLayout(),this._update(),this._map=e,e.on("zoomend",this._checkDisabledLayers,this);for(var a=0;a<this._layers.length;a++)this._layers[a].layer.on("add remove",this._onLayerChange,this);return this._container},addTo:function(e){return St.prototype.addTo.call(this,e),this._expandIfNotCollapsed()},onRemove:function(){this._map.off("zoomend",this._checkDisabledLayers,this);for(var e=0;e<this._layers.length;e++)this._layers[e].layer.off("add remove",this._onLayerChange,this)},addBaseLayer:function(e,a){return this._addLayer(e,a),this._map?this._update():this},addOverlay:function(e,a){return this._addLayer(e,a,!0),this._map?this._update():this},removeLayer:function(e){e.off("add remove",this._onLayerChange,this);var a=this._getLayer(M(e));return a&&this._layers.splice(this._layers.indexOf(a),1),this._map?this._update():this},expand:function(){Tt(this._container,"leaflet-control-layers-expanded"),this._section.style.height=null;var e=this._map.getSize().y-(this._container.offsetTop+50);return e<this._section.clientHeight?(Tt(this._section,"leaflet-control-layers-scrollbar"),this._section.style.height=e+"px"):ne(this._section,"leaflet-control-layers-scrollbar"),this._checkDisabledLayers(),this},collapse:function(){return ne(this._container,"leaflet-control-layers-expanded"),this},_initLayout:function(){var e="leaflet-control-layers",a=this._container=Nt("div",e),l=this.options.collapsed;a.setAttribute("aria-haspopup",!0),ln(a),Ws(a);var _=this._section=Nt("section",e+"-list");l&&(this._map.on("click",this.collapse,this),Bt(a,{mouseenter:this._expandSafely,mouseleave:this.collapse},this));var v=this._layersLink=Nt("a",e+"-toggle",a);v.href="#",v.title="Layers",v.setAttribute("role","button"),Bt(v,{keydown:function(k){k.keyCode===13&&this._expandSafely()},click:function(k){ce(k),this._expandSafely()}},this),l||this.expand(),this._baseLayersList=Nt("div",e+"-base",_),this._separator=Nt("div",e+"-separator",_),this._overlaysList=Nt("div",e+"-overlays",_),a.appendChild(_)},_getLayer:function(e){for(var a=0;a<this._layers.length;a++)if(this._layers[a]&&M(this._layers[a].layer)===e)return this._layers[a]},_addLayer:function(e,a,l){this._map&&e.on("add remove",this._onLayerChange,this),this._layers.push({layer:e,name:a,overlay:l}),this.options.sortLayers&&this._layers.sort(p(function(_,v){return this.options.sortFunction(_.layer,v.layer,_.name,v.name)},this)),this.options.autoZIndex&&e.setZIndex&&(this._lastZIndex++,e.setZIndex(this._lastZIndex)),this._expandIfNotCollapsed()},_update:function(){if(!this._container)return this;rn(this._baseLayersList),rn(this._overlaysList),this._layerControlInputs=[];var e,a,l,_,v=0;for(l=0;l<this._layers.length;l++)_=this._layers[l],this._addItem(_),a=a||_.overlay,e=e||!_.overlay,v+=_.overlay?0:1;return this.options.hideSingleBase&&(e=e&&v>1,this._baseLayersList.style.display=e?"":"none"),this._separator.style.display=a&&e?"":"none",this},_onLayerChange:function(e){this._handlingClick||this._update();var a=this._getLayer(M(e.target)),l=a.overlay?e.type==="add"?"overlayadd":"overlayremove":e.type==="add"?"baselayerchange":null;l&&this._map.fire(l,a)},_createRadioElement:function(e,a){var l='<input type="radio" class="leaflet-control-layers-selector" name="'+e+'"'+(a?' checked="checked"':"")+"/>",_=document.createElement("div");return _.innerHTML=l,_.firstChild},_addItem:function(e){var a=document.createElement("label"),l=this._map.hasLayer(e.layer),_;e.overlay?(_=document.createElement("input"),_.type="checkbox",_.className="leaflet-control-layers-selector",_.defaultChecked=l):_=this._createRadioElement("leaflet-base-layers_"+M(this),l),this._layerControlInputs.push(_),_.layerId=M(e.layer),Bt(_,"click",this._onInputClick,this);var v=document.createElement("span");v.innerHTML=" "+e.name;var k=document.createElement("span");a.appendChild(k),k.appendChild(_),k.appendChild(v);var Z=e.overlay?this._overlaysList:this._baseLayersList;return Z.appendChild(a),this._checkDisabledLayers(),a},_onInputClick:function(){if(!this._preventClick){var e=this._layerControlInputs,a,l,_=[],v=[];this._handlingClick=!0;for(var k=e.length-1;k>=0;k--)a=e[k],l=this._getLayer(a.layerId).layer,a.checked?_.push(l):a.checked||v.push(l);for(k=0;k<v.length;k++)this._map.hasLayer(v[k])&&this._map.removeLayer(v[k]);for(k=0;k<_.length;k++)this._map.hasLayer(_[k])||this._map.addLayer(_[k]);this._handlingClick=!1,this._refocusOnMap()}},_checkDisabledLayers:function(){for(var e=this._layerControlInputs,a,l,_=this._map.getZoom(),v=e.length-1;v>=0;v--)a=e[v],l=this._getLayer(a.layerId).layer,a.disabled=l.options.minZoom!==void 0&&_<l.options.minZoom||l.options.maxZoom!==void 0&&_>l.options.maxZoom},_expandIfNotCollapsed:function(){return this._map&&!this.options.collapsed&&this.expand(),this},_expandSafely:function(){var e=this._section;this._preventClick=!0,Bt(e,"click",ce),this.expand();var a=this;setTimeout(function(){Kt(e,"click",ce),a._preventClick=!1})}}),To=function(e,a,l){return new un(e,a,l)},zn=St.extend({options:{position:"topleft",zoomInText:'<span aria-hidden="true">+</span>',zoomInTitle:"Zoom in",zoomOutText:'<span aria-hidden="true">−</span>',zoomOutTitle:"Zoom out"},onAdd:function(e){var a="leaflet-control-zoom",l=Nt("div",a+" leaflet-bar"),_=this.options;return this._zoomInButton=this._createButton(_.zoomInText,_.zoomInTitle,a+"-in",l,this._zoomIn),this._zoomOutButton=this._createButton(_.zoomOutText,_.zoomOutTitle,a+"-out",l,this._zoomOut),this._updateDisabled(),e.on("zoomend zoomlevelschange",this._updateDisabled,this),l},onRemove:function(e){e.off("zoomend zoomlevelschange",this._updateDisabled,this)},disable:function(){return this._disabled=!0,this._updateDisabled(),this},enable:function(){return this._disabled=!1,this._updateDisabled(),this},_zoomIn:function(e){!this._disabled&&this._map._zoom<this._map.getMaxZoom()&&this._map.zoomIn(this._map.options.zoomDelta*(e.shiftKey?3:1))},_zoomOut:function(e){!this._disabled&&this._map._zoom>this._map.getMinZoom()&&this._map.zoomOut(this._map.options.zoomDelta*(e.shiftKey?3:1))},_createButton:function(e,a,l,_,v){var k=Nt("a",l,_);return k.innerHTML=e,k.href="#",k.title=a,k.setAttribute("role","button"),k.setAttribute("aria-label",a),ln(k),Bt(k,"click",Ei),Bt(k,"click",v,this),Bt(k,"click",this._refocusOnMap,this),k},_updateDisabled:function(){var e=this._map,a="leaflet-disabled";ne(this._zoomInButton,a),ne(this._zoomOutButton,a),this._zoomInButton.setAttribute("aria-disabled","false"),this._zoomOutButton.setAttribute("aria-disabled","false"),(this._disabled||e._zoom===e.getMinZoom())&&(Tt(this._zoomOutButton,a),this._zoomOutButton.setAttribute("aria-disabled","true")),(this._disabled||e._zoom===e.getMaxZoom())&&(Tt(this._zoomInButton,a),this._zoomInButton.setAttribute("aria-disabled","true"))}});Ft.mergeOptions({zoomControl:!0}),Ft.addInitHook(function(){this.options.zoomControl&&(this.zoomControl=new zn,this.addControl(this.zoomControl))});var Do=function(e){return new zn(e)},Nn=St.extend({options:{position:"bottomleft",maxWidth:100,metric:!0,imperial:!0},onAdd:function(e){var a="leaflet-control-scale",l=Nt("div",a),_=this.options;return this._addScales(_,a+"-line",l),e.on(_.updateWhenIdle?"moveend":"move",this._update,this),e.whenReady(this._update,this),l},onRemove:function(e){e.off(this.options.updateWhenIdle?"moveend":"move",this._update,this)},_addScales:function(e,a,l){e.metric&&(this._mScale=Nt("div",a,l)),e.imperial&&(this._iScale=Nt("div",a,l))},_update:function(){var e=this._map,a=e.getSize().y/2,l=e.distance(e.containerPointToLatLng([0,a]),e.containerPointToLatLng([this.options.maxWidth,a]));this._updateScales(l)},_updateScales:function(e){this.options.metric&&e&&this._updateMetric(e),this.options.imperial&&e&&this._updateImperial(e)},_updateMetric:function(e){var a=this._getRoundNum(e),l=a<1e3?a+" m":a/1e3+" km";this._updateScale(this._mScale,l,a/e)},_updateImperial:function(e){var a=e*3.2808399,l,_,v;a>5280?(l=a/5280,_=this._getRoundNum(l),this._updateScale(this._iScale,_+" mi",_/l)):(v=this._getRoundNum(a),this._updateScale(this._iScale,v+" ft",v/a))},_updateScale:function(e,a,l){e.style.width=Math.round(this.options.maxWidth*l)+"px",e.innerHTML=a},_getRoundNum:function(e){var a=Math.pow(10,(Math.floor(e)+"").length-1),l=e/a;return l=l>=10?10:l>=5?5:l>=3?3:l>=2?2:1,a*l}}),Un=function(e){return new Nn(e)},Oo='<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" width="12" height="8" viewBox="0 0 12 8" class="leaflet-attribution-flag"><path fill="#4C7BE1" d="M0 0h12v4H0z"/><path fill="#FFD500" d="M0 4h12v3H0z"/><path fill="#E0BC00" d="M0 7h12v1H0z"/></svg>',Ke=St.extend({options:{position:"bottomright",prefix:'<a href="https://leafletjs.com" title="A JavaScript library for interactive maps">'+(Mt.inlineSvg?Oo+" ":"")+"Leaflet</a>"},initialize:function(e){j(this,e),this._attributions={}},onAdd:function(e){e.attributionControl=this,this._container=Nt("div","leaflet-control-attribution"),ln(this._container);for(var a in e._layers)e._layers[a].getAttribution&&this.addAttribution(e._layers[a].getAttribution());return this._update(),e.on("layeradd",this._addAttribution,this),this._container},onRemove:function(e){e.off("layeradd",this._addAttribution,this)},_addAttribution:function(e){e.layer.getAttribution&&(this.addAttribution(e.layer.getAttribution()),e.layer.once("remove",function(){this.removeAttribution(e.layer.getAttribution())},this))},setPrefix:function(e){return this.options.prefix=e,this._update(),this},addAttribution:function(e){return e?(this._attributions[e]||(this._attributions[e]=0),this._attributions[e]++,this._update(),this):this},removeAttribution:function(e){return e?(this._attributions[e]&&(this._attributions[e]--,this._update()),this):this},_update:function(){if(this._map){var e=[];for(var a in this._attributions)this._attributions[a]&&e.push(a);var l=[];this.options.prefix&&l.push(this.options.prefix),e.length&&l.push(e.join(", ")),this._container.innerHTML=l.join(' <span aria-hidden="true">|</span> ')}}});Ft.mergeOptions({attributionControl:!0}),Ft.addInitHook(function(){this.options.attributionControl&&new Ke().addTo(this)});var rr=function(e){return new Ke(e)};St.Layers=un,St.Zoom=zn,St.Scale=Nn,St.Attribution=Ke,Pi.layers=To,Pi.zoom=Do,Pi.scale=Un,Pi.attribution=rr;var Ae=pe.extend({initialize:function(e){this._map=e},enable:function(){return this._enabled?this:(this._enabled=!0,this.addHooks(),this)},disable:function(){return this._enabled?(this._enabled=!1,this.removeHooks(),this):this},enabled:function(){return!!this._enabled}});Ae.addTo=function(e,a){return e.addHandler(a,this),this};var Io={Events:De},or=Mt.touch?"touchstart mousedown":"mousedown",mi=en.extend({options:{clickTolerance:3},initialize:function(e,a,l,_){j(this,_),this._element=e,this._dragStartTarget=a||e,this._preventOutline=l},enable:function(){this._enabled||(Bt(this._dragStartTarget,or,this._onDown,this),this._enabled=!0)},disable:function(){this._enabled&&(mi._dragging===this&&this.finishDrag(!0),Kt(this._dragStartTarget,or,this._onDown,this),this._enabled=!1,this._moved=!1)},_onDown:function(e){if(this._enabled&&(this._moved=!1,!zs(this._element,"leaflet-zoom-anim"))){if(e.touches&&e.touches.length!==1){mi._dragging===this&&this.finishDrag();return}if(!(mi._dragging||e.shiftKey||e.which!==1&&e.button!==1&&!e.touches)&&(mi._dragging=this,this._preventOutline&&Hs(this._element),js(),on(),!this._moving)){this.fire("down");var a=e.touches?e.touches[0]:e,l=Qa(this._element);this._startPoint=new Pt(a.clientX,a.clientY),this._startPos=wi(this._element),this._parentScale=Vs(l);var _=e.type==="mousedown";Bt(document,_?"mousemove":"touchmove",this._onMove,this),Bt(document,_?"mouseup":"touchend touchcancel",this._onUp,this)}}},_onMove:function(e){if(this._enabled){if(e.touches&&e.touches.length>1){this._moved=!0;return}var a=e.touches&&e.touches.length===1?e.touches[0]:e,l=new Pt(a.clientX,a.clientY)._subtract(this._startPoint);!l.x&&!l.y||Math.abs(l.x)+Math.abs(l.y)<this.options.clickTolerance||(l.x/=this._parentScale.x,l.y/=this._parentScale.y,ce(e),this._moved||(this.fire("dragstart"),this._moved=!0,Tt(document.body,"leaflet-dragging"),this._lastTarget=e.target||e.srcElement,window.SVGElementInstance&&this._lastTarget instanceof window.SVGElementInstance&&(this._lastTarget=this._lastTarget.correspondingUseElement),Tt(this._lastTarget,"leaflet-drag-target")),this._newPos=this._startPos.add(l),this._moving=!0,this._lastEvent=e,this._updatePosition())}},_updatePosition:function(){var e={originalEvent:this._lastEvent};this.fire("predrag",e),re(this._element,this._newPos),this.fire("drag",e)},_onUp:function(){this._enabled&&this.finishDrag()},finishDrag:function(e){ne(document.body,"leaflet-dragging"),this._lastTarget&&(ne(this._lastTarget,"leaflet-drag-target"),this._lastTarget=null),Kt(document,"mousemove touchmove",this._onMove,this),Kt(document,"mouseup touchend touchcancel",this._onUp,this),Zs(),hn();var a=this._moved&&this._moving;this._moving=!1,mi._dragging=!1,a&&this.fire("dragend",{noInertia:e,distance:this._newPos.distanceTo(this._startPos)})}});function hr(e,a,l){var _,v=[1,4,2,8],k,Z,Y,st,ht,pt,wt,Ot;for(k=0,pt=e.length;k<pt;k++)e[k]._code=Ee(e[k],a);for(Y=0;Y<4;Y++){for(wt=v[Y],_=[],k=0,pt=e.length,Z=pt-1;k<pt;Z=k++)st=e[k],ht=e[Z],st._code&wt?ht._code&wt||(Ot=gi(ht,st,wt,a,l),Ot._code=Ee(Ot,a),_.push(Ot)):(ht._code&wt&&(Ot=gi(ht,st,wt,a,l),Ot._code=Ee(Ot,a),_.push(Ot)),_.push(st));e=_}return e}function lr(e,a){var l,_,v,k,Z,Y,st,ht,pt;if(!e||e.length===0)throw new Error("latlngs not passed");Pe(e)||(console.warn("latlngs are not flat! Only the first ring will be used"),e=e[0]);var wt=Rt([0,0]),Ot=ae(e),xe=Ot.getNorthWest().distanceTo(Ot.getSouthWest())*Ot.getNorthEast().distanceTo(Ot.getNorthWest());xe<1700&&(wt=Ys(e));var ue=e.length,ke=[];for(l=0;l<ue;l++){var ee=Rt(e[l]);ke.push(a.project(Rt([ee.lat-wt.lat,ee.lng-wt.lng])))}for(Y=st=ht=0,l=0,_=ue-1;l<ue;_=l++)v=ke[l],k=ke[_],Z=v.y*k.x-k.y*v.x,st+=(v.x+k.x)*Z,ht+=(v.y+k.y)*Z,Y+=Z*3;Y===0?pt=ke[0]:pt=[st/Y,ht/Y];var Je=a.unproject(Ct(pt));return Rt([Je.lat+wt.lat,Je.lng+wt.lng])}function Ys(e){for(var a=0,l=0,_=0,v=0;v<e.length;v++){var k=Rt(e[v]);a+=k.lat,l+=k.lng,_++}return Rt([a/_,l/_])}var Ro={__proto__:null,clipPolygon:hr,polygonCenter:lr,centroid:Ys};function ur(e,a){if(!a||!e.length)return e.slice();var l=a*a;return e=cr(e,l),e=de(e,l),e}function Js(e,a,l){return Math.sqrt(cn(e,a,l,!0))}function Fo(e,a,l){return cn(e,a,l)}function de(e,a){var l=e.length,_=typeof Uint8Array<"u"?Uint8Array:Array,v=new _(l);v[0]=v[l-1]=1,_e(e,v,a,0,l-1);var k,Z=[];for(k=0;k<l;k++)v[k]&&Z.push(e[k]);return Z}function _e(e,a,l,_,v){var k=0,Z,Y,st;for(Y=_+1;Y<=v-1;Y++)st=cn(e[Y],e[_],e[v],!0),st>k&&(Z=Y,k=st);k>l&&(a[Z]=1,_e(e,a,l,_,Z),_e(e,a,l,Z,v))}function cr(e,a){for(var l=[e[0]],_=1,v=0,k=e.length;_<k;_++)Go(e[_],e[v])>a&&(l.push(e[_]),v=_);return v<k-1&&l.push(e[k-1]),l}var ki;function Si(e,a,l,_,v){var k=_?ki:Ee(e,l),Z=Ee(a,l),Y,st,ht;for(ki=Z;;){if(!(k|Z))return[e,a];if(k&Z)return!1;Y=k||Z,st=gi(e,a,Y,l,v),ht=Ee(st,l),Y===k?(e=st,k=ht):(a=st,Z=ht)}}function gi(e,a,l,_,v){var k=a.x-e.x,Z=a.y-e.y,Y=_.min,st=_.max,ht,pt;return l&8?(ht=e.x+k*(st.y-e.y)/Z,pt=st.y):l&4?(ht=e.x+k*(Y.y-e.y)/Z,pt=Y.y):l&2?(ht=st.x,pt=e.y+Z*(st.x-e.x)/k):l&1&&(ht=Y.x,pt=e.y+Z*(Y.x-e.x)/k),new Pt(ht,pt,v)}function Ee(e,a){var l=0;return e.x<a.min.x?l|=1:e.x>a.max.x&&(l|=2),e.y<a.min.y?l|=4:e.y>a.max.y&&(l|=8),l}function Go(e,a){var l=a.x-e.x,_=a.y-e.y;return l*l+_*_}function cn(e,a,l,_){var v=a.x,k=a.y,Z=l.x-v,Y=l.y-k,st=Z*Z+Y*Y,ht;return st>0&&(ht=((e.x-v)*Z+(e.y-k)*Y)/st,ht>1?(v=l.x,k=l.y):ht>0&&(v+=Z*ht,k+=Y*ht)),Z=e.x-v,Y=e.y-k,_?Z*Z+Y*Y:new Pt(v,k)}function Pe(e){return!ct(e[0])||typeof e[0][0]!="object"&&typeof e[0][0]<"u"}function Ue(e){return console.warn("Deprecated use of _flat, please use L.LineUtil.isFlat instead."),Pe(e)}function Qs(e,a){var l,_,v,k,Z,Y,st,ht;if(!e||e.length===0)throw new Error("latlngs not passed");Pe(e)||(console.warn("latlngs are not flat! Only the first ring will be used"),e=e[0]);var pt=Rt([0,0]),wt=ae(e),Ot=wt.getNorthWest().distanceTo(wt.getSouthWest())*wt.getNorthEast().distanceTo(wt.getNorthWest());Ot<1700&&(pt=Ys(e));var xe=e.length,ue=[];for(l=0;l<xe;l++){var ke=Rt(e[l]);ue.push(a.project(Rt([ke.lat-pt.lat,ke.lng-pt.lng])))}for(l=0,_=0;l<xe-1;l++)_+=ue[l].distanceTo(ue[l+1])/2;if(_===0)ht=ue[0];else for(l=0,k=0;l<xe-1;l++)if(Z=ue[l],Y=ue[l+1],v=Z.distanceTo(Y),k+=v,k>_){st=(k-_)/v,ht=[Y.x-st*(Y.x-Z.x),Y.y-st*(Y.y-Z.y)];break}var ee=a.unproject(Ct(ht));return Rt([ee.lat+pt.lat,ee.lng+pt.lng])}var jn={__proto__:null,simplify:ur,pointToSegmentDistance:Js,closestPointOnSegment:Fo,clipSegment:Si,_getEdgeIntersection:gi,_getBitCode:Ee,_sqClosestPointOnSegment:cn,isFlat:Pe,_flat:Ue,polylineCenter:Qs},ta={project:function(e){return new Pt(e.lng,e.lat)},unproject:function(e){return new Ht(e.y,e.x)},bounds:new te([-180,-90],[180,90])},je={R:6378137,R_MINOR:6356752314245179e-9,bounds:new te([-2003750834279e-5,-1549657073972e-5],[2003750834279e-5,1876465623138e-5]),project:function(e){var a=Math.PI/180,l=this.R,_=e.lat*a,v=this.R_MINOR/l,k=Math.sqrt(1-v*v),Z=k*Math.sin(_),Y=Math.tan(Math.PI/4-_/2)/Math.pow((1-Z)/(1+Z),k/2);return _=-l*Math.log(Math.max(Y,1e-10)),new Pt(e.lng*a*l,_)},unproject:function(e){for(var a=180/Math.PI,l=this.R,_=this.R_MINOR/l,v=Math.sqrt(1-_*_),k=Math.exp(-e.y/l),Z=Math.PI/2-2*Math.atan(k),Y=0,st=.1,ht;Y<15&&Math.abs(st)>1e-7;Y++)ht=v*Math.sin(Z),ht=Math.pow((1-ht)/(1+ht),v/2),st=Math.PI/2-2*Math.atan(k*ht)-Z,Z+=st;return new Ht(Z*a,e.x*a/l)}},We={__proto__:null,LonLat:ta,Mercator:je,SphericalMercator:Es},Zn=d({},fi,{code:"EPSG:3395",projection:je,transformation:function(){var e=.5/(Math.PI*je.R);return sn(e,.5,-e,.5)}()}),ea=d({},fi,{code:"EPSG:4326",projection:ta,transformation:sn(1/180,1,-1/180,.5)}),ia=d({},si,{projection:ta,transformation:sn(1,0,-1,0),scale:function(e){return Math.pow(2,e)},zoom:function(e){return Math.log(e)/Math.LN2},distance:function(e,a){var l=a.lng-e.lng,_=a.lat-e.lat;return Math.sqrt(l*l+_*_)},infinite:!0});si.Earth=fi,si.EPSG3395=Zn,si.EPSG3857=ks,si.EPSG900913=Pa,si.EPSG4326=ea,si.Simple=ia;var ve=en.extend({options:{pane:"overlayPane",attribution:null,bubblingMouseEvents:!0},addTo:function(e){return e.addLayer(this),this},remove:function(){return this.removeFrom(this._map||this._mapToAdd)},removeFrom:function(e){return e&&e.removeLayer(this),this},getPane:function(e){return this._map.getPane(e?this.options[e]||e:this.options.pane)},addInteractiveTarget:function(e){return this._map._targets[M(e)]=this,this},removeInteractiveTarget:function(e){return delete this._map._targets[M(e)],this},getAttribution:function(){return this.options.attribution},_layerAdd:function(e){var a=e.target;if(a.hasLayer(this)){if(this._map=a,this._zoomAnimated=a._zoomAnimated,this.getEvents){var l=this.getEvents();a.on(l,this),this.once("remove",function(){a.off(l,this)},this)}this.onAdd(a),this.fire("add"),a.fire("layeradd",{layer:this})}}});Ft.include({addLayer:function(e){if(!e._layerAdd)throw new Error("The provided object is not a Layer.");var a=M(e);return this._layers[a]?this:(this._layers[a]=e,e._mapToAdd=this,e.beforeAdd&&e.beforeAdd(this),this.whenReady(e._layerAdd,e),this)},removeLayer:function(e){var a=M(e);return this._layers[a]?(this._loaded&&e.onRemove(this),delete this._layers[a],this._loaded&&(this.fire("layerremove",{layer:e}),e.fire("remove")),e._map=e._mapToAdd=null,this):this},hasLayer:function(e){return M(e)in this._layers},eachLayer:function(e,a){for(var l in this._layers)e.call(a,this._layers[l]);return this},_addLayers:function(e){e=e?ct(e)?e:[e]:[];for(var a=0,l=e.length;a<l;a++)this.addLayer(e[a])},_addZoomLimit:function(e){(!isNaN(e.options.maxZoom)||!isNaN(e.options.minZoom))&&(this._zoomBoundLayers[M(e)]=e,this._updateZoomLevels())},_removeZoomLimit:function(e){var a=M(e);this._zoomBoundLayers[a]&&(delete this._zoomBoundLayers[a],this._updateZoomLevels())},_updateZoomLevels:function(){var e=1/0,a=-1/0,l=this._getZoomSpan();for(var _ in this._zoomBoundLayers){var v=this._zoomBoundLayers[_].options;e=v.minZoom===void 0?e:Math.min(e,v.minZoom),a=v.maxZoom===void 0?a:Math.max(a,v.maxZoom)}this._layersMaxZoom=a===-1/0?void 0:a,this._layersMinZoom=e===1/0?void 0:e,l!==this._getZoomSpan()&&this.fire("zoomlevelschange"),this.options.maxZoom===void 0&&this._layersMaxZoom&&this.getZoom()>this._layersMaxZoom&&this.setZoom(this._layersMaxZoom),this.options.minZoom===void 0&&this._layersMinZoom&&this.getZoom()<this._layersMinZoom&&this.setZoom(this._layersMinZoom)}});var qi=ve.extend({initialize:function(e,a){j(this,a),this._layers={};var l,_;if(e)for(l=0,_=e.length;l<_;l++)this.addLayer(e[l])},addLayer:function(e){var a=this.getLayerId(e);return this._layers[a]=e,this._map&&this._map.addLayer(e),this},removeLayer:function(e){var a=e in this._layers?e:this.getLayerId(e);return this._map&&this._layers[a]&&this._map.removeLayer(this._layers[a]),delete this._layers[a],this},hasLayer:function(e){var a=typeof e=="number"?e:this.getLayerId(e);return a in this._layers},clearLayers:function(){return this.eachLayer(this.removeLayer,this)},invoke:function(e){var a=Array.prototype.slice.call(arguments,1),l,_;for(l in this._layers)_=this._layers[l],_[e]&&_[e].apply(_,a);return this},onAdd:function(e){this.eachLayer(e.addLayer,e)},onRemove:function(e){this.eachLayer(e.removeLayer,e)},eachLayer:function(e,a){for(var l in this._layers)e.call(a,this._layers[l]);return this},getLayer:function(e){return this._layers[e]},getLayers:function(){var e=[];return this.eachLayer(e.push,e),e},setZIndex:function(e){return this.invoke("setZIndex",e)},getLayerId:function(e){return M(e)}}),zo=function(e,a){return new qi(e,a)},qe=qi.extend({addLayer:function(e){return this.hasLayer(e)?this:(e.addEventParent(this),qi.prototype.addLayer.call(this,e),this.fire("layeradd",{layer:e}))},removeLayer:function(e){return this.hasLayer(e)?(e in this._layers&&(e=this._layers[e]),e.removeEventParent(this),qi.prototype.removeLayer.call(this,e),this.fire("layerremove",{layer:e})):this},setStyle:function(e){return this.invoke("setStyle",e)},bringToFront:function(){return this.invoke("bringToFront")},bringToBack:function(){return this.invoke("bringToBack")},getBounds:function(){var e=new Ce;for(var a in this._layers){var l=this._layers[a];e.extend(l.getBounds?l.getBounds():l.getLatLng())}return e}}),No=function(e,a){return new qe(e,a)},Hi=pe.extend({options:{popupAnchor:[0,0],tooltipAnchor:[0,0],crossOrigin:!1},initialize:function(e){j(this,e)},createIcon:function(e){return this._createIcon("icon",e)},createShadow:function(e){return this._createIcon("shadow",e)},_createIcon:function(e,a){var l=this._getIconUrl(e);if(!l){if(e==="icon")throw new Error("iconUrl not set in Icon options (see the docs).");return null}var _=this._createImg(l,a&&a.tagName==="IMG"?a:null);return this._setIconStyles(_,e),(this.options.crossOrigin||this.options.crossOrigin==="")&&(_.crossOrigin=this.options.crossOrigin===!0?"":this.options.crossOrigin),_},_setIconStyles:function(e,a){var l=this.options,_=l[a+"Size"];typeof _=="number"&&(_=[_,_]);var v=Ct(_),k=Ct(a==="shadow"&&l.shadowAnchor||l.iconAnchor||v&&v.divideBy(2,!0));e.className="leaflet-marker-"+a+" "+(l.className||""),k&&(e.style.marginLeft=-k.x+"px",e.style.marginTop=-k.y+"px"),v&&(e.style.width=v.x+"px",e.style.height=v.y+"px")},_createImg:function(e,a){return a=a||document.createElement("img"),a.src=e,a},_getIconUrl:function(e){return Mt.retina&&this.options[e+"RetinaUrl"]||this.options[e+"Url"]}});function Uo(e){return new Hi(e)}var dn=Hi.extend({options:{iconUrl:"marker-icon.png",iconRetinaUrl:"marker-icon-2x.png",shadowUrl:"marker-shadow.png",iconSize:[25,41],iconAnchor:[12,41],popupAnchor:[1,-34],tooltipAnchor:[16,-28],shadowSize:[41,41]},_getIconUrl:function(e){return typeof dn.imagePath!="string"&&(dn.imagePath=this._detectIconPath()),(this.options.imagePath||dn.imagePath)+Hi.prototype._getIconUrl.call(this,e)},_stripUrl:function(e){var a=function(l,_,v){var k=_.exec(l);return k&&k[v]};return e=a(e,/^url\((['"])?(.+)\1\)$/,2),e&&a(e,/^(.*)marker-icon\.png$/,1)},_detectIconPath:function(){var e=Nt("div","leaflet-default-icon-path",document.body),a=pi(e,"background-image")||pi(e,"backgroundImage");if(document.body.removeChild(e),a=this._stripUrl(a),a)return a;var l=document.querySelector('link[href$="leaflet.css"]');return l?l.href.substring(0,l.href.length-11-1):""}}),qn=Ae.extend({initialize:function(e){this._marker=e},addHooks:function(){var e=this._marker._icon;this._draggable||(this._draggable=new mi(e,e,!0)),this._draggable.on({dragstart:this._onDragStart,predrag:this._onPreDrag,drag:this._onDrag,dragend:this._onDragEnd},this).enable(),Tt(e,"leaflet-marker-draggable")},removeHooks:function(){this._draggable.off({dragstart:this._onDragStart,predrag:this._onPreDrag,drag:this._onDrag,dragend:this._onDragEnd},this).disable(),this._marker._icon&&ne(this._marker._icon,"leaflet-marker-draggable")},moved:function(){return this._draggable&&this._draggable._moved},_adjustPan:function(e){var a=this._marker,l=a._map,_=this._marker.options.autoPanSpeed,v=this._marker.options.autoPanPadding,k=wi(a._icon),Z=l.getPixelBounds(),Y=l.getPixelOrigin(),st=we(Z.min._subtract(Y).add(v),Z.max._subtract(Y).subtract(v));if(!st.contains(k)){var ht=Ct((Math.max(st.max.x,k.x)-st.max.x)/(Z.max.x-st.max.x)-(Math.min(st.min.x,k.x)-st.min.x)/(Z.min.x-st.min.x),(Math.max(st.max.y,k.y)-st.max.y)/(Z.max.y-st.max.y)-(Math.min(st.min.y,k.y)-st.min.y)/(Z.min.y-st.min.y)).multiplyBy(_);l.panBy(ht,{animate:!1}),this._draggable._newPos._add(ht),this._draggable._startPos._add(ht),re(a._icon,this._draggable._newPos),this._onDrag(e),this._panRequest=Et(this._adjustPan.bind(this,e))}},_onDragStart:function(){this._oldLatLng=this._marker.getLatLng(),this._marker.closePopup&&this._marker.closePopup(),this._marker.fire("movestart").fire("dragstart")},_onPreDrag:function(e){this._marker.options.autoPan&&(jt(this._panRequest),this._panRequest=Et(this._adjustPan.bind(this,e)))},_onDrag:function(e){var a=this._marker,l=a._shadow,_=wi(a._icon),v=a._map.layerPointToLatLng(_);l&&re(l,_),a._latlng=v,e.latlng=v,e.oldLatLng=this._oldLatLng,a.fire("move",e).fire("drag",e)},_onDragEnd:function(e){jt(this._panRequest),delete this._oldLatLng,this._marker.fire("moveend").fire("dragend",e)}}),Hn=ve.extend({options:{icon:new dn,interactive:!0,keyboard:!0,title:"",alt:"Marker",zIndexOffset:0,opacity:1,riseOnHover:!1,riseOffset:250,pane:"markerPane",shadowPane:"shadowPane",bubblingMouseEvents:!1,autoPanOnFocus:!0,draggable:!1,autoPan:!1,autoPanPadding:[50,50],autoPanSpeed:10},initialize:function(e,a){j(this,a),this._latlng=Rt(e)},onAdd:function(e){this._zoomAnimated=this._zoomAnimated&&e.options.markerZoomAnimation,this._zoomAnimated&&e.on("zoomanim",this._animateZoom,this),this._initIcon(),this.update()},onRemove:function(e){this.dragging&&this.dragging.enabled()&&(this.options.draggable=!0,this.dragging.removeHooks()),delete this.dragging,this._zoomAnimated&&e.off("zoomanim",this._animateZoom,this),this._removeIcon(),this._removeShadow()},getEvents:function(){return{zoom:this.update,viewreset:this.update}},getLatLng:function(){return this._latlng},setLatLng:function(e){var a=this._latlng;return this._latlng=Rt(e),this.update(),this.fire("move",{oldLatLng:a,latlng:this._latlng})},setZIndexOffset:function(e){return this.options.zIndexOffset=e,this.update()},getIcon:function(){return this.options.icon},setIcon:function(e){return this.options.icon=e,this._map&&(this._initIcon(),this.update()),this._popup&&this.bindPopup(this._popup,this._popup.options),this},getElement:function(){return this._icon},update:function(){if(this._icon&&this._map){var e=this._map.latLngToLayerPoint(this._latlng).round();this._setPos(e)}return this},_initIcon:function(){var e=this.options,a="leaflet-zoom-"+(this._zoomAnimated?"animated":"hide"),l=e.icon.createIcon(this._icon),_=!1;l!==this._icon&&(this._icon&&this._removeIcon(),_=!0,e.title&&(l.title=e.title),l.tagName==="IMG"&&(l.alt=e.alt||"")),Tt(l,a),e.keyboard&&(l.tabIndex="0",l.setAttribute("role","button")),this._icon=l,e.riseOnHover&&this.on({mouseover:this._bringToFront,mouseout:this._resetZIndex}),this.options.autoPanOnFocus&&Bt(l,"focus",this._panOnFocus,this);var v=e.icon.createShadow(this._shadow),k=!1;v!==this._shadow&&(this._removeShadow(),k=!0),v&&(Tt(v,a),v.alt=""),this._shadow=v,e.opacity<1&&this._updateOpacity(),_&&this.getPane().appendChild(this._icon),this._initInteraction(),v&&k&&this.getPane(e.shadowPane).appendChild(this._shadow)},_removeIcon:function(){this.options.riseOnHover&&this.off({mouseover:this._bringToFront,mouseout:this._resetZIndex}),this.options.autoPanOnFocus&&Kt(this._icon,"focus",this._panOnFocus,this),Qt(this._icon),this.removeInteractiveTarget(this._icon),this._icon=null},_removeShadow:function(){this._shadow&&Qt(this._shadow),this._shadow=null},_setPos:function(e){this._icon&&re(this._icon,e),this._shadow&&re(this._shadow,e),this._zIndex=e.y+this.options.zIndexOffset,this._resetZIndex()},_updateZIndex:function(e){this._icon&&(this._icon.style.zIndex=this._zIndex+e)},_animateZoom:function(e){var a=this._map._latLngToNewLayerPoint(this._latlng,e.zoom,e.center).round();this._setPos(a)},_initInteraction:function(){if(this.options.interactive&&(Tt(this._icon,"leaflet-interactive"),this.addInteractiveTarget(this._icon),qn)){var e=this.options.draggable;this.dragging&&(e=this.dragging.enabled(),this.dragging.disable()),this.dragging=new qn(this),e&&this.dragging.enable()}},setOpacity:function(e){return this.options.opacity=e,this._map&&this._updateOpacity(),this},_updateOpacity:function(){var e=this.options.opacity;this._icon&&Ne(this._icon,e),this._shadow&&Ne(this._shadow,e)},_bringToFront:function(){this._updateZIndex(this.options.riseOffset)},_resetZIndex:function(){this._updateZIndex(0)},_panOnFocus:function(){var e=this._map;if(e){var a=this.options.icon.options,l=a.iconSize?Ct(a.iconSize):Ct(0,0),_=a.iconAnchor?Ct(a.iconAnchor):Ct(0,0);e.panInside(this._latlng,{paddingTopLeft:_,paddingBottomRight:l.subtract(_)})}},_getPopupAnchor:function(){return this.options.icon.options.popupAnchor},_getTooltipAnchor:function(){return this.options.icon.options.tooltipAnchor}});function jo(e,a){return new Hn(e,a)}var ai=ve.extend({options:{stroke:!0,color:"#3388ff",weight:3,opacity:1,lineCap:"round",lineJoin:"round",dashArray:null,dashOffset:null,fill:!1,fillColor:null,fillOpacity:.2,fillRule:"evenodd",interactive:!0,bubblingMouseEvents:!0},beforeAdd:function(e){this._renderer=e.getRenderer(this)},onAdd:function(){this._renderer._initPath(this),this._reset(),this._renderer._addPath(this)},onRemove:function(){this._renderer._removePath(this)},redraw:function(){return this._map&&this._renderer._updatePath(this),this},setStyle:function(e){return j(this,e),this._renderer&&(this._renderer._updateStyle(this),this.options.stroke&&e&&Object.prototype.hasOwnProperty.call(e,"weight")&&this._updateBounds()),this},bringToFront:function(){return this._renderer&&this._renderer._bringToFront(this),this},bringToBack:function(){return this._renderer&&this._renderer._bringToBack(this),this},getElement:function(){return this._path},_reset:function(){this._project(),this._update()},_clickTolerance:function(){return(this.options.stroke?this.options.weight/2:0)+(this._renderer.options.tolerance||0)}}),Xe=ai.extend({options:{fill:!0,radius:10},initialize:function(e,a){j(this,a),this._latlng=Rt(e),this._radius=this.options.radius},setLatLng:function(e){var a=this._latlng;return this._latlng=Rt(e),this.redraw(),this.fire("move",{oldLatLng:a,latlng:this._latlng})},getLatLng:function(){return this._latlng},setRadius:function(e){return this.options.radius=this._radius=e,this.redraw()},getRadius:function(){return this._radius},setStyle:function(e){var a=e&&e.radius||this._radius;return ai.prototype.setStyle.call(this,e),this.setRadius(a),this},_project:function(){this._point=this._map.latLngToLayerPoint(this._latlng),this._updateBounds()},_updateBounds:function(){var e=this._radius,a=this._radiusY||e,l=this._clickTolerance(),_=[e+l,a+l];this._pxBounds=new te(this._point.subtract(_),this._point.add(_))},_update:function(){this._map&&this._updatePath()},_updatePath:function(){this._renderer._updateCircle(this)},_empty:function(){return this._radius&&!this._renderer._bounds.intersects(this._pxBounds)},_containsPoint:function(e){return e.distanceTo(this._point)<=this._radius+this._clickTolerance()}});function dr(e,a){return new Xe(e,a)}var na=Xe.extend({initialize:function(e,a,l){if(typeof a=="number"&&(a=d({},l,{radius:a})),j(this,a),this._latlng=Rt(e),isNaN(this.options.radius))throw new Error("Circle radius cannot be NaN");this._mRadius=this.options.radius},setRadius:function(e){return this._mRadius=e,this.redraw()},getRadius:function(){return this._mRadius},getBounds:function(){var e=[this._radius,this._radiusY||this._radius];return new Ce(this._map.layerPointToLatLng(this._point.subtract(e)),this._map.layerPointToLatLng(this._point.add(e)))},setStyle:ai.prototype.setStyle,_project:function(){var e=this._latlng.lng,a=this._latlng.lat,l=this._map,_=l.options.crs;if(_.distance===fi.distance){var v=Math.PI/180,k=this._mRadius/fi.R/v,Z=l.project([a+k,e]),Y=l.project([a-k,e]),st=Z.add(Y).divideBy(2),ht=l.unproject(st).lat,pt=Math.acos((Math.cos(k*v)-Math.sin(a*v)*Math.sin(ht*v))/(Math.cos(a*v)*Math.cos(ht*v)))/v;(isNaN(pt)||pt===0)&&(pt=k/Math.cos(Math.PI/180*a)),this._point=st.subtract(l.getPixelOrigin()),this._radius=isNaN(pt)?0:st.x-l.project([ht,e-pt]).x,this._radiusY=st.y-Z.y}else{var wt=_.unproject(_.project(this._latlng).subtract([this._mRadius,0]));this._point=l.latLngToLayerPoint(this._latlng),this._radius=this._point.x-l.latLngToLayerPoint(wt).x}this._updateBounds()}});function Bi(e,a,l){return new na(e,a,l)}var ri=ai.extend({options:{smoothFactor:1,noClip:!1},initialize:function(e,a){j(this,a),this._setLatLngs(e)},getLatLngs:function(){return this._latlngs},setLatLngs:function(e){return this._setLatLngs(e),this.redraw()},isEmpty:function(){return!this._latlngs.length},closestLayerPoint:function(e){for(var a=1/0,l=null,_=cn,v,k,Z=0,Y=this._parts.length;Z<Y;Z++)for(var st=this._parts[Z],ht=1,pt=st.length;ht<pt;ht++){v=st[ht-1],k=st[ht];var wt=_(e,v,k,!0);wt<a&&(a=wt,l=_(e,v,k))}return l&&(l.distance=Math.sqrt(a)),l},getCenter:function(){if(!this._map)throw new Error("Must add layer to map before using getCenter()");return Qs(this._defaultShape(),this._map.options.crs)},getBounds:function(){return this._bounds},addLatLng:function(e,a){return a=a||this._defaultShape(),e=Rt(e),a.push(e),this._bounds.extend(e),this.redraw()},_setLatLngs:function(e){this._bounds=new Ce,this._latlngs=this._convertLatLngs(e)},_defaultShape:function(){return Pe(this._latlngs)?this._latlngs:this._latlngs[0]},_convertLatLngs:function(e){for(var a=[],l=Pe(e),_=0,v=e.length;_<v;_++)l?(a[_]=Rt(e[_]),this._bounds.extend(a[_])):a[_]=this._convertLatLngs(e[_]);return a},_project:function(){var e=new te;this._rings=[],this._projectLatlngs(this._latlngs,this._rings,e),this._bounds.isValid()&&e.isValid()&&(this._rawPxBounds=e,this._updateBounds())},_updateBounds:function(){var e=this._clickTolerance(),a=new Pt(e,e);this._rawPxBounds&&(this._pxBounds=new te([this._rawPxBounds.min.subtract(a),this._rawPxBounds.max.add(a)]))},_projectLatlngs:function(e,a,l){var _=e[0]instanceof Ht,v=e.length,k,Z;if(_){for(Z=[],k=0;k<v;k++)Z[k]=this._map.latLngToLayerPoint(e[k]),l.extend(Z[k]);a.push(Z)}else for(k=0;k<v;k++)this._projectLatlngs(e[k],a,l)},_clipPoints:function(){var e=this._renderer._bounds;if(this._parts=[],!(!this._pxBounds||!this._pxBounds.intersects(e))){if(this.options.noClip){this._parts=this._rings;return}var a=this._parts,l,_,v,k,Z,Y,st;for(l=0,v=0,k=this._rings.length;l<k;l++)for(st=this._rings[l],_=0,Z=st.length;_<Z-1;_++)Y=Si(st[_],st[_+1],e,_,!0),Y&&(a[v]=a[v]||[],a[v].push(Y[0]),(Y[1]!==st[_+1]||_===Z-2)&&(a[v].push(Y[1]),v++))}},_simplifyPoints:function(){for(var e=this._parts,a=this.options.smoothFactor,l=0,_=e.length;l<_;l++)e[l]=ur(e[l],a)},_update:function(){this._map&&(this._clipPoints(),this._simplifyPoints(),this._updatePath())},_updatePath:function(){this._renderer._updatePoly(this)},_containsPoint:function(e,a){var l,_,v,k,Z,Y,st=this._clickTolerance();if(!this._pxBounds||!this._pxBounds.contains(e))return!1;for(l=0,k=this._parts.length;l<k;l++)for(Y=this._parts[l],_=0,Z=Y.length,v=Z-1;_<Z;v=_++)if(!(!a&&_===0)&&Js(e,Y[v],Y[_])<=st)return!0;return!1}});function Zo(e,a){return new ri(e,a)}ri._flat=Ue;var yi=ri.extend({options:{fill:!0},isEmpty:function(){return!this._latlngs.length||!this._latlngs[0].length},getCenter:function(){if(!this._map)throw new Error("Must add layer to map before using getCenter()");return lr(this._defaultShape(),this._map.options.crs)},_convertLatLngs:function(e){var a=ri.prototype._convertLatLngs.call(this,e),l=a.length;return l>=2&&a[0]instanceof Ht&&a[0].equals(a[l-1])&&a.pop(),a},_setLatLngs:function(e){ri.prototype._setLatLngs.call(this,e),Pe(this._latlngs)&&(this._latlngs=[this._latlngs])},_defaultShape:function(){return Pe(this._latlngs[0])?this._latlngs[0]:this._latlngs[0][0]},_clipPoints:function(){var e=this._renderer._bounds,a=this.options.weight,l=new Pt(a,a);if(e=new te(e.min.subtract(l),e.max.add(l)),this._parts=[],!(!this._pxBounds||!this._pxBounds.intersects(e))){if(this.options.noClip){this._parts=this._rings;return}for(var _=0,v=this._rings.length,k;_<v;_++)k=hr(this._rings[_],e,!0),k.length&&this._parts.push(k)}},_updatePath:function(){this._renderer._updatePoly(this,!0)},_containsPoint:function(e){var a=!1,l,_,v,k,Z,Y,st,ht;if(!this._pxBounds||!this._pxBounds.contains(e))return!1;for(k=0,st=this._parts.length;k<st;k++)for(l=this._parts[k],Z=0,ht=l.length,Y=ht-1;Z<ht;Y=Z++)_=l[Z],v=l[Y],_.y>e.y!=v.y>e.y&&e.x<(v.x-_.x)*(e.y-_.y)/(v.y-_.y)+_.x&&(a=!a);return a||ri.prototype._containsPoint.call(this,e,!0)}});function fn(e,a){return new yi(e,a)}var oi=qe.extend({initialize:function(e,a){j(this,a),this._layers={},e&&this.addData(e)},addData:function(e){var a=ct(e)?e:e.features,l,_,v;if(a){for(l=0,_=a.length;l<_;l++)v=a[l],(v.geometries||v.geometry||v.features||v.coordinates)&&this.addData(v);return this}var k=this.options;if(k.filter&&!k.filter(e))return this;var Z=Vn(e,k);return Z?(Z.feature=Yn(e),Z.defaultOptions=Z.options,this.resetStyle(Z),k.onEachFeature&&k.onEachFeature(e,Z),this.addLayer(Z)):this},resetStyle:function(e){return e===void 0?this.eachLayer(this.resetStyle,this):(e.options=d({},e.defaultOptions),this._setLayerStyle(e,this.options.style),this)},setStyle:function(e){return this.eachLayer(function(a){this._setLayerStyle(a,e)},this)},_setLayerStyle:function(e,a){e.setStyle&&(typeof a=="function"&&(a=a(e.feature)),e.setStyle(a))}});function Vn(e,a){var l=e.type==="Feature"?e.geometry:e,_=l?l.coordinates:null,v=[],k=a&&a.pointToLayer,Z=a&&a.coordsToLatLng||$n,Y,st,ht,pt;if(!_&&!l)return null;switch(l.type){case"Point":return Y=Z(_),fr(k,e,Y,a);case"MultiPoint":for(ht=0,pt=_.length;ht<pt;ht++)Y=Z(_[ht]),v.push(fr(k,e,Y,a));return new qe(v);case"LineString":case"MultiLineString":return st=Kn(_,l.type==="LineString"?0:1,Z),new ri(st,a);case"Polygon":case"MultiPolygon":return st=Kn(_,l.type==="Polygon"?1:2,Z),new yi(st,a);case"GeometryCollection":for(ht=0,pt=l.geometries.length;ht<pt;ht++){var wt=Vn({geometry:l.geometries[ht],type:"Feature",properties:e.properties},a);wt&&v.push(wt)}return new qe(v);case"FeatureCollection":for(ht=0,pt=l.features.length;ht<pt;ht++){var Ot=Vn(l.features[ht],a);Ot&&v.push(Ot)}return new qe(v);default:throw new Error("Invalid GeoJSON object.")}}function fr(e,a,l,_){return e?e(a,l):new Hn(l,_&&_.markersInheritOptions&&_)}function $n(e){return new Ht(e[1],e[0],e[2])}function Kn(e,a,l){for(var _=[],v=0,k=e.length,Z;v<k;v++)Z=a?Kn(e[v],a-1,l):(l||$n)(e[v]),_.push(Z);return _}function Wn(e,a){return e=Rt(e),e.alt!==void 0?[C(e.lng,a),C(e.lat,a),C(e.alt,a)]:[C(e.lng,a),C(e.lat,a)]}function Xn(e,a,l,_){for(var v=[],k=0,Z=e.length;k<Z;k++)v.push(a?Xn(e[k],Pe(e[k])?0:a-1,l,_):Wn(e[k],_));return!a&&l&&v.length>0&&v.push(v[0].slice()),v}function Vi(e,a){return e.feature?d({},e.feature,{geometry:a}):Yn(a)}function Yn(e){return e.type==="Feature"||e.type==="FeatureCollection"?e:{type:"Feature",properties:{},geometry:e}}var Jn={toGeoJSON:function(e){return Vi(this,{type:"Point",coordinates:Wn(this.getLatLng(),e)})}};Hn.include(Jn),na.include(Jn),Xe.include(Jn),ri.include({toGeoJSON:function(e){var a=!Pe(this._latlngs),l=Xn(this._latlngs,a?1:0,!1,e);return Vi(this,{type:(a?"Multi":"")+"LineString",coordinates:l})}}),yi.include({toGeoJSON:function(e){var a=!Pe(this._latlngs),l=a&&!Pe(this._latlngs[0]),_=Xn(this._latlngs,l?2:a?1:0,!0,e);return a||(_=[_]),Vi(this,{type:(l?"Multi":"")+"Polygon",coordinates:_})}}),qi.include({toMultiPoint:function(e){var a=[];return this.eachLayer(function(l){a.push(l.toGeoJSON(e).geometry.coordinates)}),Vi(this,{type:"MultiPoint",coordinates:a})},toGeoJSON:function(e){var a=this.feature&&this.feature.geometry&&this.feature.geometry.type;if(a==="MultiPoint")return this.toMultiPoint(e);var l=a==="GeometryCollection",_=[];return this.eachLayer(function(v){if(v.toGeoJSON){var k=v.toGeoJSON(e);if(l)_.push(k.geometry);else{var Z=Yn(k);Z.type==="FeatureCollection"?_.push.apply(_,Z.features):_.push(Z)}}}),l?Vi(this,{geometries:_,type:"GeometryCollection"}):{type:"FeatureCollection",features:_}}});function Qn(e,a){return new oi(e,a)}var pr=Qn,$i=ve.extend({options:{opacity:1,alt:"",interactive:!1,crossOrigin:!1,errorOverlayUrl:"",zIndex:1,className:""},initialize:function(e,a,l){this._url=e,this._bounds=ae(a),j(this,l)},onAdd:function(){this._image||(this._initImage(),this.options.opacity<1&&this._updateOpacity()),this.options.interactive&&(Tt(this._image,"leaflet-interactive"),this.addInteractiveTarget(this._image)),this.getPane().appendChild(this._image),this._reset()},onRemove:function(){Qt(this._image),this.options.interactive&&this.removeInteractiveTarget(this._image)},setOpacity:function(e){return this.options.opacity=e,this._image&&this._updateOpacity(),this},setStyle:function(e){return e.opacity&&this.setOpacity(e.opacity),this},bringToFront:function(){return this._map&&ji(this._image),this},bringToBack:function(){return this._map&&Li(this._image),this},setUrl:function(e){return this._url=e,this._image&&(this._image.src=e),this},setBounds:function(e){return this._bounds=ae(e),this._map&&this._reset(),this},getEvents:function(){var e={zoom:this._reset,viewreset:this._reset};return this._zoomAnimated&&(e.zoomanim=this._animateZoom),e},setZIndex:function(e){return this.options.zIndex=e,this._updateZIndex(),this},getBounds:function(){return this._bounds},getElement:function(){return this._image},_initImage:function(){var e=this._url.tagName==="IMG",a=this._image=e?this._url:Nt("img");if(Tt(a,"leaflet-image-layer"),this._zoomAnimated&&Tt(a,"leaflet-zoom-animated"),this.options.className&&Tt(a,this.options.className),a.onselectstart=x,a.onmousemove=x,a.onload=p(this.fire,this,"load"),a.onerror=p(this._overlayOnError,this,"error"),(this.options.crossOrigin||this.options.crossOrigin==="")&&(a.crossOrigin=this.options.crossOrigin===!0?"":this.options.crossOrigin),this.options.zIndex&&this._updateZIndex(),e){this._url=a.src;return}a.src=this._url,a.alt=this.options.alt},_animateZoom:function(e){var a=this._map.getZoomScale(e.zoom),l=this._map._latLngBoundsToNewLayerBounds(this._bounds,e.zoom,e.center).min;bi(this._image,l,a)},_reset:function(){var e=this._image,a=new te(this._map.latLngToLayerPoint(this._bounds.getNorthWest()),this._map.latLngToLayerPoint(this._bounds.getSouthEast())),l=a.getSize();re(e,a.min),e.style.width=l.x+"px",e.style.height=l.y+"px"},_updateOpacity:function(){Ne(this._image,this.options.opacity)},_updateZIndex:function(){this._image&&this.options.zIndex!==void 0&&this.options.zIndex!==null&&(this._image.style.zIndex=this.options.zIndex)},_overlayOnError:function(){this.fire("error");var e=this.options.errorOverlayUrl;e&&this._url!==e&&(this._url=e,this._image.src=e)},getCenter:function(){return this._bounds.getCenter()}}),qo=function(e,a,l){return new $i(e,a,l)},pn=$i.extend({options:{autoplay:!0,loop:!0,keepAspectRatio:!0,muted:!1,playsInline:!0},_initImage:function(){var e=this._url.tagName==="VIDEO",a=this._image=e?this._url:Nt("video");if(Tt(a,"leaflet-image-layer"),this._zoomAnimated&&Tt(a,"leaflet-zoom-animated"),this.options.className&&Tt(a,this.options.className),a.onselectstart=x,a.onmousemove=x,a.onloadeddata=p(this.fire,this,"load"),e){for(var l=a.getElementsByTagName("source"),_=[],v=0;v<l.length;v++)_.push(l[v].src);this._url=l.length>0?_:[a.src];return}ct(this._url)||(this._url=[this._url]),!this.options.keepAspectRatio&&Object.prototype.hasOwnProperty.call(a.style,"objectFit")&&(a.style.objectFit="fill"),a.autoplay=!!this.options.autoplay,a.loop=!!this.options.loop,a.muted=!!this.options.muted,a.playsInline=!!this.options.playsInline;for(var k=0;k<this._url.length;k++){var Z=Nt("source");Z.src=this._url[k],a.appendChild(Z)}}});function _r(e,a,l){return new pn(e,a,l)}var mr=$i.extend({_initImage:function(){var e=this._image=this._url;Tt(e,"leaflet-image-layer"),this._zoomAnimated&&Tt(e,"leaflet-zoom-animated"),this.options.className&&Tt(e,this.options.className),e.onselectstart=x,e.onmousemove=x}});function Ho(e,a,l){return new mr(e,a,l)}var Ye=ve.extend({options:{interactive:!1,offset:[0,0],className:"",pane:void 0,content:""},initialize:function(e,a){e&&(e instanceof Ht||ct(e))?(this._latlng=Rt(e),j(this,a)):(j(this,e),this._source=a),this.options.content&&(this._content=this.options.content)},openOn:function(e){return e=arguments.length?e:this._source._map,e.hasLayer(this)||e.addLayer(this),this},close:function(){return this._map&&this._map.removeLayer(this),this},toggle:function(e){return this._map?this.close():(arguments.length?this._source=e:e=this._source,this._prepareOpen(),this.openOn(e._map)),this},onAdd:function(e){this._zoomAnimated=e._zoomAnimated,this._container||this._initLayout(),e._fadeAnimated&&Ne(this._container,0),clearTimeout(this._removeTimeout),this.getPane().appendChild(this._container),this.update(),e._fadeAnimated&&Ne(this._container,1),this.bringToFront(),this.options.interactive&&(Tt(this._container,"leaflet-interactive"),this.addInteractiveTarget(this._container))},onRemove:function(e){e._fadeAnimated?(Ne(this._container,0),this._removeTimeout=setTimeout(p(Qt,void 0,this._container),200)):Qt(this._container),this.options.interactive&&(ne(this._container,"leaflet-interactive"),this.removeInteractiveTarget(this._container))},getLatLng:function(){return this._latlng},setLatLng:function(e){return this._latlng=Rt(e),this._map&&(this._updatePosition(),this._adjustPan()),this},getContent:function(){return this._content},setContent:function(e){return this._content=e,this.update(),this},getElement:function(){return this._container},update:function(){this._map&&(this._container.style.visibility="hidden",this._updateContent(),this._updateLayout(),this._updatePosition(),this._container.style.visibility="",this._adjustPan())},getEvents:function(){var e={zoom:this._updatePosition,viewreset:this._updatePosition};return this._zoomAnimated&&(e.zoomanim=this._animateZoom),e},isOpen:function(){return!!this._map&&this._map.hasLayer(this)},bringToFront:function(){return this._map&&ji(this._container),this},bringToBack:function(){return this._map&&Li(this._container),this},_prepareOpen:function(e){var a=this._source;if(!a._map)return!1;if(a instanceof qe){a=null;var l=this._source._layers;for(var _ in l)if(l[_]._map){a=l[_];break}if(!a)return!1;this._source=a}if(!e)if(a.getCenter)e=a.getCenter();else if(a.getLatLng)e=a.getLatLng();else if(a.getBounds)e=a.getBounds().getCenter();else throw new Error("Unable to get source layer LatLng.");return this.setLatLng(e),this._map&&this.update(),!0},_updateContent:function(){if(this._content){var e=this._contentNode,a=typeof this._content=="function"?this._content(this._source||this):this._content;if(typeof a=="string")e.innerHTML=a;else{for(;e.hasChildNodes();)e.removeChild(e.firstChild);e.appendChild(a)}this.fire("contentupdate")}},_updatePosition:function(){if(this._map){var e=this._map.latLngToLayerPoint(this._latlng),a=Ct(this.options.offset),l=this._getAnchor();this._zoomAnimated?re(this._container,e.add(l)):a=a.add(e).add(l);var _=this._containerBottom=-a.y,v=this._containerLeft=-Math.round(this._containerWidth/2)+a.x;this._container.style.bottom=_+"px",this._container.style.left=v+"px"}},_getAnchor:function(){return[0,0]}});Ft.include({_initOverlay:function(e,a,l,_){var v=a;return v instanceof e||(v=new e(_).setContent(a)),l&&v.setLatLng(l),v}}),ve.include({_initOverlay:function(e,a,l,_){var v=l;return v instanceof e?(j(v,_),v._source=this):(v=a&&!_?a:new e(_,this),v.setContent(l)),v}});var Ai=Ye.extend({options:{pane:"popupPane",offset:[0,7],maxWidth:300,minWidth:50,maxHeight:null,autoPan:!0,autoPanPaddingTopLeft:null,autoPanPaddingBottomRight:null,autoPanPadding:[5,5],keepInView:!1,closeButton:!0,autoClose:!0,closeOnEscapeKey:!0,className:""},openOn:function(e){return e=arguments.length?e:this._source._map,!e.hasLayer(this)&&e._popup&&e._popup.options.autoClose&&e.removeLayer(e._popup),e._popup=this,Ye.prototype.openOn.call(this,e)},onAdd:function(e){Ye.prototype.onAdd.call(this,e),e.fire("popupopen",{popup:this}),this._source&&(this._source.fire("popupopen",{popup:this},!0),this._source instanceof ai||this._source.on("preclick",Ci))},onRemove:function(e){Ye.prototype.onRemove.call(this,e),e.fire("popupclose",{popup:this}),this._source&&(this._source.fire("popupclose",{popup:this},!0),this._source instanceof ai||this._source.off("preclick",Ci))},getEvents:function(){var e=Ye.prototype.getEvents.call(this);return(this.options.closeOnClick!==void 0?this.options.closeOnClick:this._map.options.closePopupOnClick)&&(e.preclick=this.close),this.options.keepInView&&(e.moveend=this._adjustPan),e},_initLayout:function(){var e="leaflet-popup",a=this._container=Nt("div",e+" "+(this.options.className||"")+" leaflet-zoom-animated"),l=this._wrapper=Nt("div",e+"-content-wrapper",a);if(this._contentNode=Nt("div",e+"-content",l),ln(a),Ws(this._contentNode),Bt(a,"contextmenu",Ci),this._tipContainer=Nt("div",e+"-tip-container",a),this._tip=Nt("div",e+"-tip",this._tipContainer),this.options.closeButton){var _=this._closeButton=Nt("a",e+"-close-button",a);_.setAttribute("role","button"),_.setAttribute("aria-label","Close popup"),_.href="#close",_.innerHTML='<span aria-hidden="true">×</span>',Bt(_,"click",function(v){ce(v),this.close()},this)}},_updateLayout:function(){var e=this._contentNode,a=e.style;a.width="",a.whiteSpace="nowrap";var l=e.offsetWidth;l=Math.min(l,this.options.maxWidth),l=Math.max(l,this.options.minWidth),a.width=l+1+"px",a.whiteSpace="",a.height="";var _=e.offsetHeight,v=this.options.maxHeight,k="leaflet-popup-scrolled";v&&_>v?(a.height=v+"px",Tt(e,k)):ne(e,k),this._containerWidth=this._container.offsetWidth},_animateZoom:function(e){var a=this._map._latLngToNewLayerPoint(this._latlng,e.zoom,e.center),l=this._getAnchor();re(this._container,a.add(l))},_adjustPan:function(){if(this.options.autoPan){if(this._map._panAnim&&this._map._panAnim.stop(),this._autopanning){this._autopanning=!1;return}var e=this._map,a=parseInt(pi(this._container,"marginBottom"),10)||0,l=this._container.offsetHeight+a,_=this._containerWidth,v=new Pt(this._containerLeft,-l-this._containerBottom);v._add(wi(this._container));var k=e.layerPointToContainerPoint(v),Z=Ct(this.options.autoPanPadding),Y=Ct(this.options.autoPanPaddingTopLeft||Z),st=Ct(this.options.autoPanPaddingBottomRight||Z),ht=e.getSize(),pt=0,wt=0;k.x+_+st.x>ht.x&&(pt=k.x+_-ht.x+st.x),k.x-pt-Y.x<0&&(pt=k.x-Y.x),k.y+l+st.y>ht.y&&(wt=k.y+l-ht.y+st.y),k.y-wt-Y.y<0&&(wt=k.y-Y.y),(pt||wt)&&(this.options.keepInView&&(this._autopanning=!0),e.fire("autopanstart").panBy([pt,wt]))}},_getAnchor:function(){return Ct(this._source&&this._source._getPopupAnchor?this._source._getPopupAnchor():[0,0])}}),Vo=function(e,a){return new Ai(e,a)};Ft.mergeOptions({closePopupOnClick:!0}),Ft.include({openPopup:function(e,a,l){return this._initOverlay(Ai,e,a,l).openOn(this),this},closePopup:function(e){return e=arguments.length?e:this._popup,e&&e.close(),this}}),ve.include({bindPopup:function(e,a){return this._popup=this._initOverlay(Ai,this._popup,e,a),this._popupHandlersAdded||(this.on({click:this._openPopup,keypress:this._onKeyPress,remove:this.closePopup,move:this._movePopup}),this._popupHandlersAdded=!0),this},unbindPopup:function(){return this._popup&&(this.off({click:this._openPopup,keypress:this._onKeyPress,remove:this.closePopup,move:this._movePopup}),this._popupHandlersAdded=!1,this._popup=null),this},openPopup:function(e){return this._popup&&(this instanceof qe||(this._popup._source=this),this._popup._prepareOpen(e||this._latlng)&&this._popup.openOn(this._map)),this},closePopup:function(){return this._popup&&this._popup.close(),this},togglePopup:function(){return this._popup&&this._popup.toggle(this),this},isPopupOpen:function(){return this._popup?this._popup.isOpen():!1},setPopupContent:function(e){return this._popup&&this._popup.setContent(e),this},getPopup:function(){return this._popup},_openPopup:function(e){if(!(!this._popup||!this._map)){Ei(e);var a=e.layer||e.target;if(this._popup._source===a&&!(a instanceof ai)){this._map.hasLayer(this._popup)?this.closePopup():this.openPopup(e.latlng);return}this._popup._source=a,this.openPopup(e.latlng)}},_movePopup:function(e){this._popup.setLatLng(e.latlng)},_onKeyPress:function(e){e.originalEvent.keyCode===13&&this._openPopup(e)}});var ts=Ye.extend({options:{pane:"tooltipPane",offset:[0,0],direction:"auto",permanent:!1,sticky:!1,opacity:.9},onAdd:function(e){Ye.prototype.onAdd.call(this,e),this.setOpacity(this.options.opacity),e.fire("tooltipopen",{tooltip:this}),this._source&&(this.addEventParent(this._source),this._source.fire("tooltipopen",{tooltip:this},!0))},onRemove:function(e){Ye.prototype.onRemove.call(this,e),e.fire("tooltipclose",{tooltip:this}),this._source&&(this.removeEventParent(this._source),this._source.fire("tooltipclose",{tooltip:this},!0))},getEvents:function(){var e=Ye.prototype.getEvents.call(this);return this.options.permanent||(e.preclick=this.close),e},_initLayout:function(){var e="leaflet-tooltip",a=e+" "+(this.options.className||"")+" leaflet-zoom-"+(this._zoomAnimated?"animated":"hide");this._contentNode=this._container=Nt("div",a),this._container.setAttribute("role","tooltip"),this._container.setAttribute("id","leaflet-tooltip-"+M(this))},_updateLayout:function(){},_adjustPan:function(){},_setPosition:function(e){var a,l,_=this._map,v=this._container,k=_.latLngToContainerPoint(_.getCenter()),Z=_.layerPointToContainerPoint(e),Y=this.options.direction,st=v.offsetWidth,ht=v.offsetHeight,pt=Ct(this.options.offset),wt=this._getAnchor();Y==="top"?(a=st/2,l=ht):Y==="bottom"?(a=st/2,l=0):Y==="center"?(a=st/2,l=ht/2):Y==="right"?(a=0,l=ht/2):Y==="left"?(a=st,l=ht/2):Z.x<k.x?(Y="right",a=0,l=ht/2):(Y="left",a=st+(pt.x+wt.x)*2,l=ht/2),e=e.subtract(Ct(a,l,!0)).add(pt).add(wt),ne(v,"leaflet-tooltip-right"),ne(v,"leaflet-tooltip-left"),ne(v,"leaflet-tooltip-top"),ne(v,"leaflet-tooltip-bottom"),Tt(v,"leaflet-tooltip-"+Y),re(v,e)},_updatePosition:function(){var e=this._map.latLngToLayerPoint(this._latlng);this._setPosition(e)},setOpacity:function(e){this.options.opacity=e,this._container&&Ne(this._container,e)},_animateZoom:function(e){var a=this._map._latLngToNewLayerPoint(this._latlng,e.zoom,e.center);this._setPosition(a)},_getAnchor:function(){return Ct(this._source&&this._source._getTooltipAnchor&&!this.options.sticky?this._source._getTooltipAnchor():[0,0])}}),$o=function(e,a){return new ts(e,a)};Ft.include({openTooltip:function(e,a,l){return this._initOverlay(ts,e,a,l).openOn(this),this},closeTooltip:function(e){return e.close(),this}}),ve.include({bindTooltip:function(e,a){return this._tooltip&&this.isTooltipOpen()&&this.unbindTooltip(),this._tooltip=this._initOverlay(ts,this._tooltip,e,a),this._initTooltipInteractions(),this._tooltip.options.permanent&&this._map&&this._map.hasLayer(this)&&this.openTooltip(),this},unbindTooltip:function(){return this._tooltip&&(this._initTooltipInteractions(!0),this.closeTooltip(),this._tooltip=null),this},_initTooltipInteractions:function(e){if(!(!e&&this._tooltipHandlersAdded)){var a=e?"off":"on",l={remove:this.closeTooltip,move:this._moveTooltip};this._tooltip.options.permanent?l.add=this._openTooltip:(l.mouseover=this._openTooltip,l.mouseout=this.closeTooltip,l.click=this._openTooltip,this._map?this._addFocusListeners():l.add=this._addFocusListeners),this._tooltip.options.sticky&&(l.mousemove=this._moveTooltip),this[a](l),this._tooltipHandlersAdded=!e}},openTooltip:function(e){return this._tooltip&&(this instanceof qe||(this._tooltip._source=this),this._tooltip._prepareOpen(e)&&(this._tooltip.openOn(this._map),this.getElement?this._setAriaDescribedByOnLayer(this):this.eachLayer&&this.eachLayer(this._setAriaDescribedByOnLayer,this))),this},closeTooltip:function(){if(this._tooltip)return this._tooltip.close()},toggleTooltip:function(){return this._tooltip&&this._tooltip.toggle(this),this},isTooltipOpen:function(){return this._tooltip.isOpen()},setTooltipContent:function(e){return this._tooltip&&this._tooltip.setContent(e),this},getTooltip:function(){return this._tooltip},_addFocusListeners:function(){this.getElement?this._addFocusListenersOnLayer(this):this.eachLayer&&this.eachLayer(this._addFocusListenersOnLayer,this)},_addFocusListenersOnLayer:function(e){var a=typeof e.getElement=="function"&&e.getElement();a&&(Bt(a,"focus",function(){this._tooltip._source=e,this.openTooltip()},this),Bt(a,"blur",this.closeTooltip,this))},_setAriaDescribedByOnLayer:function(e){var a=typeof e.getElement=="function"&&e.getElement();a&&a.setAttribute("aria-describedby",this._tooltip._container.id)},_openTooltip:function(e){if(!(!this._tooltip||!this._map)){if(this._map.dragging&&this._map.dragging.moving()&&!this._openOnceFlag){this._openOnceFlag=!0;var a=this;this._map.once("moveend",function(){a._openOnceFlag=!1,a._openTooltip(e)});return}this._tooltip._source=e.layer||e.target,this.openTooltip(this._tooltip.options.sticky?e.latlng:void 0)}},_moveTooltip:function(e){var a=e.latlng,l,_;this._tooltip.options.sticky&&e.originalEvent&&(l=this._map.mouseEventToContainerPoint(e.originalEvent),_=this._map.containerPointToLayerPoint(l),a=this._map.layerPointToLatLng(_)),this._tooltip.setLatLng(a)}});var gr=Hi.extend({options:{iconSize:[12,12],html:!1,bgPos:null,className:"leaflet-div-icon"},createIcon:function(e){var a=e&&e.tagName==="DIV"?e:document.createElement("div"),l=this.options;if(l.html instanceof Element?(rn(a),a.appendChild(l.html)):a.innerHTML=l.html!==!1?l.html:"",l.bgPos){var _=Ct(l.bgPos);a.style.backgroundPosition=-_.x+"px "+-_.y+"px"}return this._setIconStyles(a,"icon"),a},createShadow:function(){return null}});function Ko(e){return new gr(e)}Hi.Default=dn;var _n=ve.extend({options:{tileSize:256,opacity:1,updateWhenIdle:Mt.mobile,updateWhenZooming:!0,updateInterval:200,zIndex:1,bounds:null,minZoom:0,maxZoom:void 0,maxNativeZoom:void 0,minNativeZoom:void 0,noWrap:!1,pane:"tilePane",className:"",keepBuffer:2},initialize:function(e){j(this,e)},onAdd:function(){this._initContainer(),this._levels={},this._tiles={},this._resetView()},beforeAdd:function(e){e._addZoomLimit(this)},onRemove:function(e){this._removeAllTiles(),Qt(this._container),e._removeZoomLimit(this),this._container=null,this._tileZoom=void 0},bringToFront:function(){return this._map&&(ji(this._container),this._setAutoZIndex(Math.max)),this},bringToBack:function(){return this._map&&(Li(this._container),this._setAutoZIndex(Math.min)),this},getContainer:function(){return this._container},setOpacity:function(e){return this.options.opacity=e,this._updateOpacity(),this},setZIndex:function(e){return this.options.zIndex=e,this._updateZIndex(),this},isLoading:function(){return this._loading},redraw:function(){if(this._map){this._removeAllTiles();var e=this._clampZoom(this._map.getZoom());e!==this._tileZoom&&(this._tileZoom=e,this._updateLevels()),this._update()}return this},getEvents:function(){var e={viewprereset:this._invalidateAll,viewreset:this._resetView,zoom:this._resetView,moveend:this._onMoveEnd};return this.options.updateWhenIdle||(this._onMove||(this._onMove=B(this._onMoveEnd,this.options.updateInterval,this)),e.move=this._onMove),this._zoomAnimated&&(e.zoomanim=this._animateZoom),e},createTile:function(){return document.createElement("div")},getTileSize:function(){var e=this.options.tileSize;return e instanceof Pt?e:new Pt(e,e)},_updateZIndex:function(){this._container&&this.options.zIndex!==void 0&&this.options.zIndex!==null&&(this._container.style.zIndex=this.options.zIndex)},_setAutoZIndex:function(e){for(var a=this.getPane().children,l=-e(-1/0,1/0),_=0,v=a.length,k;_<v;_++)k=a[_].style.zIndex,a[_]!==this._container&&k&&(l=e(l,+k));isFinite(l)&&(this.options.zIndex=l+e(-1,1),this._updateZIndex())},_updateOpacity:function(){if(this._map&&!Mt.ielt9){Ne(this._container,this.options.opacity);var e=+new Date,a=!1,l=!1;for(var _ in this._tiles){var v=this._tiles[_];if(!(!v.current||!v.loaded)){var k=Math.min(1,(e-v.loaded)/200);Ne(v.el,k),k<1?a=!0:(v.active?l=!0:this._onOpaqueTile(v),v.active=!0)}}l&&!this._noPrune&&this._pruneTiles(),a&&(jt(this._fadeFrame),this._fadeFrame=Et(this._updateOpacity,this))}},_onOpaqueTile:x,_initContainer:function(){this._container||(this._container=Nt("div","leaflet-layer "+(this.options.className||"")),this._updateZIndex(),this.options.opacity<1&&this._updateOpacity(),this.getPane().appendChild(this._container))},_updateLevels:function(){var e=this._tileZoom,a=this.options.maxZoom;if(e!==void 0){for(var l in this._levels)l=Number(l),this._levels[l].el.children.length||l===e?(this._levels[l].el.style.zIndex=a-Math.abs(e-l),this._onUpdateLevel(l)):(Qt(this._levels[l].el),this._removeTilesAtZoom(l),this._onRemoveLevel(l),delete this._levels[l]);var _=this._levels[e],v=this._map;return _||(_=this._levels[e]={},_.el=Nt("div","leaflet-tile-container leaflet-zoom-animated",this._container),_.el.style.zIndex=a,_.origin=v.project(v.unproject(v.getPixelOrigin()),e).round(),_.zoom=e,this._setZoomTransform(_,v.getCenter(),v.getZoom()),x(_.el.offsetWidth),this._onCreateLevel(_)),this._level=_,_}},_onUpdateLevel:x,_onRemoveLevel:x,_onCreateLevel:x,_pruneTiles:function(){if(this._map){var e,a,l=this._map.getZoom();if(l>this.options.maxZoom||l<this.options.minZoom){this._removeAllTiles();return}for(e in this._tiles)a=this._tiles[e],a.retain=a.current;for(e in this._tiles)if(a=this._tiles[e],a.current&&!a.active){var _=a.coords;this._retainParent(_.x,_.y,_.z,_.z-5)||this._retainChildren(_.x,_.y,_.z,_.z+2)}for(e in this._tiles)this._tiles[e].retain||this._removeTile(e)}},_removeTilesAtZoom:function(e){for(var a in this._tiles)this._tiles[a].coords.z===e&&this._removeTile(a)},_removeAllTiles:function(){for(var e in this._tiles)this._removeTile(e)},_invalidateAll:function(){for(var e in this._levels)Qt(this._levels[e].el),this._onRemoveLevel(Number(e)),delete this._levels[e];this._removeAllTiles(),this._tileZoom=void 0},_retainParent:function(e,a,l,_){var v=Math.floor(e/2),k=Math.floor(a/2),Z=l-1,Y=new Pt(+v,+k);Y.z=+Z;var st=this._tileCoordsToKey(Y),ht=this._tiles[st];return ht&&ht.active?(ht.retain=!0,!0):(ht&&ht.loaded&&(ht.retain=!0),Z>_?this._retainParent(v,k,Z,_):!1)},_retainChildren:function(e,a,l,_){for(var v=2*e;v<2*e+2;v++)for(var k=2*a;k<2*a+2;k++){var Z=new Pt(v,k);Z.z=l+1;var Y=this._tileCoordsToKey(Z),st=this._tiles[Y];if(st&&st.active){st.retain=!0;continue}else st&&st.loaded&&(st.retain=!0);l+1<_&&this._retainChildren(v,k,l+1,_)}},_resetView:function(e){var a=e&&(e.pinch||e.flyTo);this._setView(this._map.getCenter(),this._map.getZoom(),a,a)},_animateZoom:function(e){this._setView(e.center,e.zoom,!0,e.noUpdate)},_clampZoom:function(e){var a=this.options;return a.minNativeZoom!==void 0&&e<a.minNativeZoom?a.minNativeZoom:a.maxNativeZoom!==void 0&&a.maxNativeZoom<e?a.maxNativeZoom:e},_setView:function(e,a,l,_){var v=Math.round(a);this.options.maxZoom!==void 0&&v>this.options.maxZoom||this.options.minZoom!==void 0&&v<this.options.minZoom?v=void 0:v=this._clampZoom(v);var k=this.options.updateWhenZooming&&v!==this._tileZoom;(!_||k)&&(this._tileZoom=v,this._abortLoading&&this._abortLoading(),this._updateLevels(),this._resetGrid(),v!==void 0&&this._update(e),l||this._pruneTiles(),this._noPrune=!!l),this._setZoomTransforms(e,a)},_setZoomTransforms:function(e,a){for(var l in this._levels)this._setZoomTransform(this._levels[l],e,a)},_setZoomTransform:function(e,a,l){var _=this._map.getZoomScale(l,e.zoom),v=e.origin.multiplyBy(_).subtract(this._map._getNewPixelOrigin(a,l)).round();Mt.any3d?bi(e.el,v,_):re(e.el,v)},_resetGrid:function(){var e=this._map,a=e.options.crs,l=this._tileSize=this.getTileSize(),_=this._tileZoom,v=this._map.getPixelWorldBounds(this._tileZoom);v&&(this._globalTileRange=this._pxBoundsToTileRange(v)),this._wrapX=a.wrapLng&&!this.options.noWrap&&[Math.floor(e.project([0,a.wrapLng[0]],_).x/l.x),Math.ceil(e.project([0,a.wrapLng[1]],_).x/l.y)],this._wrapY=a.wrapLat&&!this.options.noWrap&&[Math.floor(e.project([a.wrapLat[0],0],_).y/l.x),Math.ceil(e.project([a.wrapLat[1],0],_).y/l.y)]},_onMoveEnd:function(){!this._map||this._map._animatingZoom||this._update()},_getTiledPixelBounds:function(e){var a=this._map,l=a._animatingZoom?Math.max(a._animateToZoom,a.getZoom()):a.getZoom(),_=a.getZoomScale(l,this._tileZoom),v=a.project(e,this._tileZoom).floor(),k=a.getSize().divideBy(_*2);return new te(v.subtract(k),v.add(k))},_update:function(e){var a=this._map;if(a){var l=this._clampZoom(a.getZoom());if(e===void 0&&(e=a.getCenter()),this._tileZoom!==void 0){var _=this._getTiledPixelBounds(e),v=this._pxBoundsToTileRange(_),k=v.getCenter(),Z=[],Y=this.options.keepBuffer,st=new te(v.getBottomLeft().subtract([Y,-Y]),v.getTopRight().add([Y,-Y]));if(!(isFinite(v.min.x)&&isFinite(v.min.y)&&isFinite(v.max.x)&&isFinite(v.max.y)))throw new Error("Attempted to load an infinite number of tiles");for(var ht in this._tiles){var pt=this._tiles[ht].coords;(pt.z!==this._tileZoom||!st.contains(new Pt(pt.x,pt.y)))&&(this._tiles[ht].current=!1)}if(Math.abs(l-this._tileZoom)>1){this._setView(e,l);return}for(var wt=v.min.y;wt<=v.max.y;wt++)for(var Ot=v.min.x;Ot<=v.max.x;Ot++){var xe=new Pt(Ot,wt);if(xe.z=this._tileZoom,!!this._isValidTile(xe)){var ue=this._tiles[this._tileCoordsToKey(xe)];ue?ue.current=!0:Z.push(xe)}}if(Z.sort(function(ee,Je){return ee.distanceTo(k)-Je.distanceTo(k)}),Z.length!==0){this._loading||(this._loading=!0,this.fire("loading"));var ke=document.createDocumentFragment();for(Ot=0;Ot<Z.length;Ot++)this._addTile(Z[Ot],ke);this._level.el.appendChild(ke)}}}},_isValidTile:function(e){var a=this._map.options.crs;if(!a.infinite){var l=this._globalTileRange;if(!a.wrapLng&&(e.x<l.min.x||e.x>l.max.x)||!a.wrapLat&&(e.y<l.min.y||e.y>l.max.y))return!1}if(!this.options.bounds)return!0;var _=this._tileCoordsToBounds(e);return ae(this.options.bounds).overlaps(_)},_keyToBounds:function(e){return this._tileCoordsToBounds(this._keyToTileCoords(e))},_tileCoordsToNwSe:function(e){var a=this._map,l=this.getTileSize(),_=e.scaleBy(l),v=_.add(l),k=a.unproject(_,e.z),Z=a.unproject(v,e.z);return[k,Z]},_tileCoordsToBounds:function(e){var a=this._tileCoordsToNwSe(e),l=new Ce(a[0],a[1]);return this.options.noWrap||(l=this._map.wrapLatLngBounds(l)),l},_tileCoordsToKey:function(e){return e.x+":"+e.y+":"+e.z},_keyToTileCoords:function(e){var a=e.split(":"),l=new Pt(+a[0],+a[1]);return l.z=+a[2],l},_removeTile:function(e){var a=this._tiles[e];a&&(Qt(a.el),delete this._tiles[e],this.fire("tileunload",{tile:a.el,coords:this._keyToTileCoords(e)}))},_initTile:function(e){Tt(e,"leaflet-tile");var a=this.getTileSize();e.style.width=a.x+"px",e.style.height=a.y+"px",e.onselectstart=x,e.onmousemove=x,Mt.ielt9&&this.options.opacity<1&&Ne(e,this.options.opacity)},_addTile:function(e,a){var l=this._getTilePos(e),_=this._tileCoordsToKey(e),v=this.createTile(this._wrapCoords(e),p(this._tileReady,this,e));this._initTile(v),this.createTile.length<2&&Et(p(this._tileReady,this,e,null,v)),re(v,l),this._tiles[_]={el:v,coords:e,current:!0},a.appendChild(v),this.fire("tileloadstart",{tile:v,coords:e})},_tileReady:function(e,a,l){a&&this.fire("tileerror",{error:a,tile:l,coords:e});var _=this._tileCoordsToKey(e);l=this._tiles[_],l&&(l.loaded=+new Date,this._map._fadeAnimated?(Ne(l.el,0),jt(this._fadeFrame),this._fadeFrame=Et(this._updateOpacity,this)):(l.active=!0,this._pruneTiles()),a||(Tt(l.el,"leaflet-tile-loaded"),this.fire("tileload",{tile:l.el,coords:e})),this._noTilesToLoad()&&(this._loading=!1,this.fire("load"),Mt.ielt9||!this._map._fadeAnimated?Et(this._pruneTiles,this):setTimeout(p(this._pruneTiles,this),250)))},_getTilePos:function(e){return e.scaleBy(this.getTileSize()).subtract(this._level.origin)},_wrapCoords:function(e){var a=new Pt(this._wrapX?E(e.x,this._wrapX):e.x,this._wrapY?E(e.y,this._wrapY):e.y);return a.z=e.z,a},_pxBoundsToTileRange:function(e){var a=this.getTileSize();return new te(e.min.unscaleBy(a).floor(),e.max.unscaleBy(a).ceil().subtract([1,1]))},_noTilesToLoad:function(){for(var e in this._tiles)if(!this._tiles[e].loaded)return!1;return!0}});function Wo(e){return new _n(e)}var Ki=_n.extend({options:{minZoom:0,maxZoom:18,subdomains:"abc",errorTileUrl:"",zoomOffset:0,tms:!1,zoomReverse:!1,detectRetina:!1,crossOrigin:!1,referrerPolicy:!1},initialize:function(e,a){this._url=e,a=j(this,a),a.detectRetina&&Mt.retina&&a.maxZoom>0?(a.tileSize=Math.floor(a.tileSize/2),a.zoomReverse?(a.zoomOffset--,a.minZoom=Math.min(a.maxZoom,a.minZoom+1)):(a.zoomOffset++,a.maxZoom=Math.max(a.minZoom,a.maxZoom-1)),a.minZoom=Math.max(0,a.minZoom)):a.zoomReverse?a.minZoom=Math.min(a.maxZoom,a.minZoom):a.maxZoom=Math.max(a.minZoom,a.maxZoom),typeof a.subdomains=="string"&&(a.subdomains=a.subdomains.split("")),this.on("tileunload",this._onTileRemove)},setUrl:function(e,a){return this._url===e&&a===void 0&&(a=!0),this._url=e,a||this.redraw(),this},createTile:function(e,a){var l=document.createElement("img");return Bt(l,"load",p(this._tileOnLoad,this,a,l)),Bt(l,"error",p(this._tileOnError,this,a,l)),(this.options.crossOrigin||this.options.crossOrigin==="")&&(l.crossOrigin=this.options.crossOrigin===!0?"":this.options.crossOrigin),typeof this.options.referrerPolicy=="string"&&(l.referrerPolicy=this.options.referrerPolicy),l.alt="",l.src=this.getTileUrl(e),l},getTileUrl:function(e){var a={r:Mt.retina?"@2x":"",s:this._getSubdomain(e),x:e.x,y:e.y,z:this._getZoomForUrl()};if(this._map&&!this._map.options.crs.infinite){var l=this._globalTileRange.max.y-e.y;this.options.tms&&(a.y=l),a["-y"]=l}return rt(this._url,d(a,this.options))},_tileOnLoad:function(e,a){Mt.ielt9?setTimeout(p(e,this,null,a),0):e(null,a)},_tileOnError:function(e,a,l){var _=this.options.errorTileUrl;_&&a.getAttribute("src")!==_&&(a.src=_),e(l,a)},_onTileRemove:function(e){e.tile.onload=null},_getZoomForUrl:function(){var e=this._tileZoom,a=this.options.maxZoom,l=this.options.zoomReverse,_=this.options.zoomOffset;return l&&(e=a-e),e+_},_getSubdomain:function(e){var a=Math.abs(e.x+e.y)%this.options.subdomains.length;return this.options.subdomains[a]},_abortLoading:function(){var e,a;for(e in this._tiles)if(this._tiles[e].coords.z!==this._tileZoom&&(a=this._tiles[e].el,a.onload=x,a.onerror=x,!a.complete)){a.src=mt;var l=this._tiles[e].coords;Qt(a),delete this._tiles[e],this.fire("tileabort",{tile:a,coords:l})}},_removeTile:function(e){var a=this._tiles[e];if(a)return a.el.setAttribute("src",mt),_n.prototype._removeTile.call(this,e)},_tileReady:function(e,a,l){if(!(!this._map||l&&l.getAttribute("src")===mt))return _n.prototype._tileReady.call(this,e,a,l)}});function sa(e,a){return new Ki(e,a)}var es=Ki.extend({defaultWmsParams:{service:"WMS",request:"GetMap",layers:"",styles:"",format:"image/jpeg",transparent:!1,version:"1.1.1"},options:{crs:null,uppercase:!1},initialize:function(e,a){this._url=e;var l=d({},this.defaultWmsParams);for(var _ in a)_ in this.options||(l[_]=a[_]);a=j(this,a);var v=a.detectRetina&&Mt.retina?2:1,k=this.getTileSize();l.width=k.x*v,l.height=k.y*v,this.wmsParams=l},onAdd:function(e){this._crs=this.options.crs||e.options.crs,this._wmsVersion=parseFloat(this.wmsParams.version);var a=this._wmsVersion>=1.3?"crs":"srs";this.wmsParams[a]=this._crs.code,Ki.prototype.onAdd.call(this,e)},getTileUrl:function(e){var a=this._tileCoordsToNwSe(e),l=this._crs,_=we(l.project(a[0]),l.project(a[1])),v=_.min,k=_.max,Z=(this._wmsVersion>=1.3&&this._crs===ea?[v.y,v.x,k.y,k.x]:[v.x,v.y,k.x,k.y]).join(","),Y=Ki.prototype.getTileUrl.call(this,e);return Y+W(this.wmsParams,Y,this.options.uppercase)+(this.options.uppercase?"&BBOX=":"&bbox=")+Z},setParams:function(e,a){return d(this.wmsParams,e),a||this.redraw(),this}});function Xo(e,a){return new es(e,a)}Ki.WMS=es,sa.wms=Xo;var hi=ve.extend({options:{padding:.1},initialize:function(e){j(this,e),M(this),this._layers=this._layers||{}},onAdd:function(){this._container||(this._initContainer(),Tt(this._container,"leaflet-zoom-animated")),this.getPane().appendChild(this._container),this._update(),this.on("update",this._updatePaths,this)},onRemove:function(){this.off("update",this._updatePaths,this),this._destroyContainer()},getEvents:function(){var e={viewreset:this._reset,zoom:this._onZoom,moveend:this._update,zoomend:this._onZoomEnd};return this._zoomAnimated&&(e.zoomanim=this._onAnimZoom),e},_onAnimZoom:function(e){this._updateTransform(e.center,e.zoom)},_onZoom:function(){this._updateTransform(this._map.getCenter(),this._map.getZoom())},_updateTransform:function(e,a){var l=this._map.getZoomScale(a,this._zoom),_=this._map.getSize().multiplyBy(.5+this.options.padding),v=this._map.project(this._center,a),k=_.multiplyBy(-l).add(v).subtract(this._map._getNewPixelOrigin(e,a));Mt.any3d?bi(this._container,k,l):re(this._container,k)},_reset:function(){this._update(),this._updateTransform(this._center,this._zoom);for(var e in this._layers)this._layers[e]._reset()},_onZoomEnd:function(){for(var e in this._layers)this._layers[e]._project()},_updatePaths:function(){for(var e in this._layers)this._layers[e]._update()},_update:function(){var e=this.options.padding,a=this._map.getSize(),l=this._map.containerPointToLayerPoint(a.multiplyBy(-e)).round();this._bounds=new te(l,l.add(a.multiplyBy(1+e*2)).round()),this._center=this._map.getCenter(),this._zoom=this._map.getZoom()}}),aa=hi.extend({options:{tolerance:0},getEvents:function(){var e=hi.prototype.getEvents.call(this);return e.viewprereset=this._onViewPreReset,e},_onViewPreReset:function(){this._postponeUpdatePaths=!0},onAdd:function(){hi.prototype.onAdd.call(this),this._draw()},_initContainer:function(){var e=this._container=document.createElement("canvas");Bt(e,"mousemove",this._onMouseMove,this),Bt(e,"click dblclick mousedown mouseup contextmenu",this._onClick,this),Bt(e,"mouseout",this._handleMouseOut,this),e._leaflet_disable_events=!0,this._ctx=e.getContext("2d")},_destroyContainer:function(){jt(this._redrawRequest),delete this._ctx,Qt(this._container),Kt(this._container),delete this._container},_updatePaths:function(){if(!this._postponeUpdatePaths){var e;this._redrawBounds=null;for(var a in this._layers)e=this._layers[a],e._update();this._redraw()}},_update:function(){if(!(this._map._animatingZoom&&this._bounds)){hi.prototype._update.call(this);var e=this._bounds,a=this._container,l=e.getSize(),_=Mt.retina?2:1;re(a,e.min),a.width=_*l.x,a.height=_*l.y,a.style.width=l.x+"px",a.style.height=l.y+"px",Mt.retina&&this._ctx.scale(2,2),this._ctx.translate(-e.min.x,-e.min.y),this.fire("update")}},_reset:function(){hi.prototype._reset.call(this),this._postponeUpdatePaths&&(this._postponeUpdatePaths=!1,this._updatePaths())},_initPath:function(e){this._updateDashArray(e),this._layers[M(e)]=e;var a=e._order={layer:e,prev:this._drawLast,next:null};this._drawLast&&(this._drawLast.next=a),this._drawLast=a,this._drawFirst=this._drawFirst||this._drawLast},_addPath:function(e){this._requestRedraw(e)},_removePath:function(e){var a=e._order,l=a.next,_=a.prev;l?l.prev=_:this._drawLast=_,_?_.next=l:this._drawFirst=l,delete e._order,delete this._layers[M(e)],this._requestRedraw(e)},_updatePath:function(e){this._extendRedrawBounds(e),e._project(),e._update(),this._requestRedraw(e)},_updateStyle:function(e){this._updateDashArray(e),this._requestRedraw(e)},_updateDashArray:function(e){if(typeof e.options.dashArray=="string"){var a=e.options.dashArray.split(/[, ]+/),l=[],_,v;for(v=0;v<a.length;v++){if(_=Number(a[v]),isNaN(_))return;l.push(_)}e.options._dashArray=l}else e.options._dashArray=e.options.dashArray},_requestRedraw:function(e){this._map&&(this._extendRedrawBounds(e),this._redrawRequest=this._redrawRequest||Et(this._redraw,this))},_extendRedrawBounds:function(e){if(e._pxBounds){var a=(e.options.weight||0)+1;this._redrawBounds=this._redrawBounds||new te,this._redrawBounds.extend(e._pxBounds.min.subtract([a,a])),this._redrawBounds.extend(e._pxBounds.max.add([a,a]))}},_redraw:function(){this._redrawRequest=null,this._redrawBounds&&(this._redrawBounds.min._floor(),this._redrawBounds.max._ceil()),this._clear(),this._draw(),this._redrawBounds=null},_clear:function(){var e=this._redrawBounds;if(e){var a=e.getSize();this._ctx.clearRect(e.min.x,e.min.y,a.x,a.y)}else this._ctx.save(),this._ctx.setTransform(1,0,0,1,0,0),this._ctx.clearRect(0,0,this._container.width,this._container.height),this._ctx.restore()},_draw:function(){var e,a=this._redrawBounds;if(this._ctx.save(),a){var l=a.getSize();this._ctx.beginPath(),this._ctx.rect(a.min.x,a.min.y,l.x,l.y),this._ctx.clip()}this._drawing=!0;for(var _=this._drawFirst;_;_=_.next)e=_.layer,(!a||e._pxBounds&&e._pxBounds.intersects(a))&&e._updatePath();this._drawing=!1,this._ctx.restore()},_updatePoly:function(e,a){if(this._drawing){var l,_,v,k,Z=e._parts,Y=Z.length,st=this._ctx;if(Y){for(st.beginPath(),l=0;l<Y;l++){for(_=0,v=Z[l].length;_<v;_++)k=Z[l][_],st[_?"lineTo":"moveTo"](k.x,k.y);a&&st.closePath()}this._fillStroke(st,e)}}},_updateCircle:function(e){if(!(!this._drawing||e._empty())){var a=e._point,l=this._ctx,_=Math.max(Math.round(e._radius),1),v=(Math.max(Math.round(e._radiusY),1)||_)/_;v!==1&&(l.save(),l.scale(1,v)),l.beginPath(),l.arc(a.x,a.y/v,_,0,Math.PI*2,!1),v!==1&&l.restore(),this._fillStroke(l,e)}},_fillStroke:function(e,a){var l=a.options;l.fill&&(e.globalAlpha=l.fillOpacity,e.fillStyle=l.fillColor||l.color,e.fill(l.fillRule||"evenodd")),l.stroke&&l.weight!==0&&(e.setLineDash&&e.setLineDash(a.options&&a.options._dashArray||[]),e.globalAlpha=l.opacity,e.lineWidth=l.weight,e.strokeStyle=l.color,e.lineCap=l.lineCap,e.lineJoin=l.lineJoin,e.stroke())},_onClick:function(e){for(var a=this._map.mouseEventToLayerPoint(e),l,_,v=this._drawFirst;v;v=v.next)l=v.layer,l.options.interactive&&l._containsPoint(a)&&(!(e.type==="click"||e.type==="preclick")||!this._map._draggableMoved(l))&&(_=l);this._fireEvent(_?[_]:!1,e)},_onMouseMove:function(e){if(!(!this._map||this._map.dragging.moving()||this._map._animatingZoom)){var a=this._map.mouseEventToLayerPoint(e);this._handleMouseHover(e,a)}},_handleMouseOut:function(e){var a=this._hoveredLayer;a&&(ne(this._container,"leaflet-interactive"),this._fireEvent([a],e,"mouseout"),this._hoveredLayer=null,this._mouseHoverThrottled=!1)},_handleMouseHover:function(e,a){if(!this._mouseHoverThrottled){for(var l,_,v=this._drawFirst;v;v=v.next)l=v.layer,l.options.interactive&&l._containsPoint(a)&&(_=l);_!==this._hoveredLayer&&(this._handleMouseOut(e),_&&(Tt(this._container,"leaflet-interactive"),this._fireEvent([_],e,"mouseover"),this._hoveredLayer=_)),this._fireEvent(this._hoveredLayer?[this._hoveredLayer]:!1,e),this._mouseHoverThrottled=!0,setTimeout(p(function(){this._mouseHoverThrottled=!1},this),32)}},_fireEvent:function(e,a,l){this._map._fireDOMEvent(a,l||a.type,e)},_bringToFront:function(e){var a=e._order;if(a){var l=a.next,_=a.prev;if(l)l.prev=_;else return;_?_.next=l:l&&(this._drawFirst=l),a.prev=this._drawLast,this._drawLast.next=a,a.next=null,this._drawLast=a,this._requestRedraw(e)}},_bringToBack:function(e){var a=e._order;if(a){var l=a.next,_=a.prev;if(_)_.next=l;else return;l?l.prev=_:_&&(this._drawLast=_),a.prev=null,a.next=this._drawFirst,this._drawFirst.prev=a,this._drawFirst=a,this._requestRedraw(e)}}});function is(e){return Mt.canvas?new aa(e):null}var mn=function(){try{return document.namespaces.add("lvml","urn:schemas-microsoft-com:vml"),function(e){return document.createElement("<lvml:"+e+' class="lvml">')}}catch{}return function(e){return document.createElement("<"+e+' xmlns="urn:schemas-microsoft.com:vml" class="lvml">')}}(),Yo={_initContainer:function(){this._container=Nt("div","leaflet-vml-container")},_update:function(){this._map._animatingZoom||(hi.prototype._update.call(this),this.fire("update"))},_initPath:function(e){var a=e._container=mn("shape");Tt(a,"leaflet-vml-shape "+(this.options.className||"")),a.coordsize="1 1",e._path=mn("path"),a.appendChild(e._path),this._updateStyle(e),this._layers[M(e)]=e},_addPath:function(e){var a=e._container;this._container.appendChild(a),e.options.interactive&&e.addInteractiveTarget(a)},_removePath:function(e){var a=e._container;Qt(a),e.removeInteractiveTarget(a),delete this._layers[M(e)]},_updateStyle:function(e){var a=e._stroke,l=e._fill,_=e.options,v=e._container;v.stroked=!!_.stroke,v.filled=!!_.fill,_.stroke?(a||(a=e._stroke=mn("stroke")),v.appendChild(a),a.weight=_.weight+"px",a.color=_.color,a.opacity=_.opacity,_.dashArray?a.dashStyle=ct(_.dashArray)?_.dashArray.join(" "):_.dashArray.replace(/( *, *)/g," "):a.dashStyle="",a.endcap=_.lineCap.replace("butt","flat"),a.joinstyle=_.lineJoin):a&&(v.removeChild(a),e._stroke=null),_.fill?(l||(l=e._fill=mn("fill")),v.appendChild(l),l.color=_.fillColor||_.color,l.opacity=_.fillOpacity):l&&(v.removeChild(l),e._fill=null)},_updateCircle:function(e){var a=e._point.round(),l=Math.round(e._radius),_=Math.round(e._radiusY||l);this._setPath(e,e._empty()?"M0 0":"AL "+a.x+","+a.y+" "+l+","+_+" 0,"+65535*360)},_setPath:function(e,a){e._path.v=a},_bringToFront:function(e){ji(e._container)},_bringToBack:function(e){Li(e._container)}},Wi=Mt.vml?mn:ka,me=hi.extend({_initContainer:function(){this._container=Wi("svg"),this._container.setAttribute("pointer-events","none"),this._rootGroup=Wi("g"),this._container.appendChild(this._rootGroup)},_destroyContainer:function(){Qt(this._container),Kt(this._container),delete this._container,delete this._rootGroup,delete this._svgSize},_update:function(){if(!(this._map._animatingZoom&&this._bounds)){hi.prototype._update.call(this);var e=this._bounds,a=e.getSize(),l=this._container;(!this._svgSize||!this._svgSize.equals(a))&&(this._svgSize=a,l.setAttribute("width",a.x),l.setAttribute("height",a.y)),re(l,e.min),l.setAttribute("viewBox",[e.min.x,e.min.y,a.x,a.y].join(" ")),this.fire("update")}},_initPath:function(e){var a=e._path=Wi("path");e.options.className&&Tt(a,e.options.className),e.options.interactive&&Tt(a,"leaflet-interactive"),this._updateStyle(e),this._layers[M(e)]=e},_addPath:function(e){this._rootGroup||this._initContainer(),this._rootGroup.appendChild(e._path),e.addInteractiveTarget(e._path)},_removePath:function(e){Qt(e._path),e.removeInteractiveTarget(e._path),delete this._layers[M(e)]},_updatePath:function(e){e._project(),e._update()},_updateStyle:function(e){var a=e._path,l=e.options;a&&(l.stroke?(a.setAttribute("stroke",l.color),a.setAttribute("stroke-opacity",l.opacity),a.setAttribute("stroke-width",l.weight),a.setAttribute("stroke-linecap",l.lineCap),a.setAttribute("stroke-linejoin",l.lineJoin),l.dashArray?a.setAttribute("stroke-dasharray",l.dashArray):a.removeAttribute("stroke-dasharray"),l.dashOffset?a.setAttribute("stroke-dashoffset",l.dashOffset):a.removeAttribute("stroke-dashoffset")):a.setAttribute("stroke","none"),l.fill?(a.setAttribute("fill",l.fillColor||l.color),a.setAttribute("fill-opacity",l.fillOpacity),a.setAttribute("fill-rule",l.fillRule||"evenodd")):a.setAttribute("fill","none"))},_updatePoly:function(e,a){this._setPath(e,Sa(e._parts,a))},_updateCircle:function(e){var a=e._point,l=Math.max(Math.round(e._radius),1),_=Math.max(Math.round(e._radiusY),1)||l,v="a"+l+","+_+" 0 1,0 ",k=e._empty()?"M0 0":"M"+(a.x-l)+","+a.y+v+l*2+",0 "+v+-l*2+",0 ";this._setPath(e,k)},_setPath:function(e,a){e._path.setAttribute("d",a)},_bringToFront:function(e){ji(e._path)},_bringToBack:function(e){Li(e._path)}});Mt.vml&&me.include(Yo);function Me(e){return Mt.svg||Mt.vml?new me(e):null}Ft.include({getRenderer:function(e){var a=e.options.renderer||this._getPaneRenderer(e.options.pane)||this.options.renderer||this._renderer;return a||(a=this._renderer=this._createRenderer()),this.hasLayer(a)||this.addLayer(a),a},_getPaneRenderer:function(e){if(e==="overlayPane"||e===void 0)return!1;var a=this._paneRenderers[e];return a===void 0&&(a=this._createRenderer({pane:e}),this._paneRenderers[e]=a),a},_createRenderer:function(e){return this.options.preferCanvas&&is(e)||Me(e)}});var ra=yi.extend({initialize:function(e,a){yi.prototype.initialize.call(this,this._boundsToLatLngs(e),a)},setBounds:function(e){return this.setLatLngs(this._boundsToLatLngs(e))},_boundsToLatLngs:function(e){return e=ae(e),[e.getSouthWest(),e.getNorthWest(),e.getNorthEast(),e.getSouthEast()]}});function He(e,a){return new ra(e,a)}me.create=Wi,me.pointsToPath=Sa,oi.geometryToLayer=Vn,oi.coordsToLatLng=$n,oi.coordsToLatLngs=Kn,oi.latLngToCoords=Wn,oi.latLngsToCoords=Xn,oi.getFeature=Vi,oi.asFeature=Yn,Ft.mergeOptions({boxZoom:!0});var kt=Ae.extend({initialize:function(e){this._map=e,this._container=e._container,this._pane=e._panes.overlayPane,this._resetStateTimeout=0,e.on("unload",this._destroy,this)},addHooks:function(){Bt(this._container,"mousedown",this._onMouseDown,this)},removeHooks:function(){Kt(this._container,"mousedown",this._onMouseDown,this)},moved:function(){return this._moved},_destroy:function(){Qt(this._pane),delete this._pane},_resetState:function(){this._resetStateTimeout=0,this._moved=!1},_clearDeferredResetState:function(){this._resetStateTimeout!==0&&(clearTimeout(this._resetStateTimeout),this._resetStateTimeout=0)},_onMouseDown:function(e){if(!e.shiftKey||e.which!==1&&e.button!==1)return!1;this._clearDeferredResetState(),this._resetState(),on(),js(),this._startPoint=this._map.mouseEventToContainerPoint(e),Bt(document,{contextmenu:Ei,mousemove:this._onMouseMove,mouseup:this._onMouseUp,keydown:this._onKeyDown},this)},_onMouseMove:function(e){this._moved||(this._moved=!0,this._box=Nt("div","leaflet-zoom-box",this._container),Tt(this._container,"leaflet-crosshair"),this._map.fire("boxzoomstart")),this._point=this._map.mouseEventToContainerPoint(e);var a=new te(this._point,this._startPoint),l=a.getSize();re(this._box,a.min),this._box.style.width=l.x+"px",this._box.style.height=l.y+"px"},_finish:function(){this._moved&&(Qt(this._box),ne(this._container,"leaflet-crosshair")),hn(),Zs(),Kt(document,{contextmenu:Ei,mousemove:this._onMouseMove,mouseup:this._onMouseUp,keydown:this._onKeyDown},this)},_onMouseUp:function(e){if(!(e.which!==1&&e.button!==1)&&(this._finish(),!!this._moved)){this._clearDeferredResetState(),this._resetStateTimeout=setTimeout(p(this._resetState,this),0);var a=new Ce(this._map.containerPointToLatLng(this._startPoint),this._map.containerPointToLatLng(this._point));this._map.fitBounds(a).fire("boxzoomend",{boxZoomBounds:a})}},_onKeyDown:function(e){e.keyCode===27&&(this._finish(),this._clearDeferredResetState(),this._resetState())}});Ft.addInitHook("addHandler","boxZoom",kt),Ft.mergeOptions({doubleClickZoom:!0});var ns=Ae.extend({addHooks:function(){this._map.on("dblclick",this._onDoubleClick,this)},removeHooks:function(){this._map.off("dblclick",this._onDoubleClick,this)},_onDoubleClick:function(e){var a=this._map,l=a.getZoom(),_=a.options.zoomDelta,v=e.originalEvent.shiftKey?l-_:l+_;a.options.doubleClickZoom==="center"?a.setZoom(v):a.setZoomAround(e.containerPoint,v)}});Ft.addInitHook("addHandler","doubleClickZoom",ns),Ft.mergeOptions({dragging:!0,inertia:!0,inertiaDeceleration:3400,inertiaMaxSpeed:1/0,easeLinearity:.2,worldCopyJump:!1,maxBoundsViscosity:0});var ss=Ae.extend({addHooks:function(){if(!this._draggable){var e=this._map;this._draggable=new mi(e._mapPane,e._container),this._draggable.on({dragstart:this._onDragStart,drag:this._onDrag,dragend:this._onDragEnd},this),this._draggable.on("predrag",this._onPreDragLimit,this),e.options.worldCopyJump&&(this._draggable.on("predrag",this._onPreDragWrap,this),e.on("zoomend",this._onZoomEnd,this),e.whenReady(this._onZoomEnd,this))}Tt(this._map._container,"leaflet-grab leaflet-touch-drag"),this._draggable.enable(),this._positions=[],this._times=[]},removeHooks:function(){ne(this._map._container,"leaflet-grab"),ne(this._map._container,"leaflet-touch-drag"),this._draggable.disable()},moved:function(){return this._draggable&&this._draggable._moved},moving:function(){return this._draggable&&this._draggable._moving},_onDragStart:function(){var e=this._map;if(e._stop(),this._map.options.maxBounds&&this._map.options.maxBoundsViscosity){var a=ae(this._map.options.maxBounds);this._offsetLimit=we(this._map.latLngToContainerPoint(a.getNorthWest()).multiplyBy(-1),this._map.latLngToContainerPoint(a.getSouthEast()).multiplyBy(-1).add(this._map.getSize())),this._viscosity=Math.min(1,Math.max(0,this._map.options.maxBoundsViscosity))}else this._offsetLimit=null;e.fire("movestart").fire("dragstart"),e.options.inertia&&(this._positions=[],this._times=[])},_onDrag:function(e){if(this._map.options.inertia){var a=this._lastTime=+new Date,l=this._lastPos=this._draggable._absPos||this._draggable._newPos;this._positions.push(l),this._times.push(a),this._prunePositions(a)}this._map.fire("move",e).fire("drag",e)},_prunePositions:function(e){for(;this._positions.length>1&&e-this._times[0]>50;)this._positions.shift(),this._times.shift()},_onZoomEnd:function(){var e=this._map.getSize().divideBy(2),a=this._map.latLngToLayerPoint([0,0]);this._initialWorldOffset=a.subtract(e).x,this._worldWidth=this._map.getPixelWorldBounds().getSize().x},_viscousLimit:function(e,a){return e-(e-a)*this._viscosity},_onPreDragLimit:function(){if(!(!this._viscosity||!this._offsetLimit)){var e=this._draggable._newPos.subtract(this._draggable._startPos),a=this._offsetLimit;e.x<a.min.x&&(e.x=this._viscousLimit(e.x,a.min.x)),e.y<a.min.y&&(e.y=this._viscousLimit(e.y,a.min.y)),e.x>a.max.x&&(e.x=this._viscousLimit(e.x,a.max.x)),e.y>a.max.y&&(e.y=this._viscousLimit(e.y,a.max.y)),this._draggable._newPos=this._draggable._startPos.add(e)}},_onPreDragWrap:function(){var e=this._worldWidth,a=Math.round(e/2),l=this._initialWorldOffset,_=this._draggable._newPos.x,v=(_-a+l)%e+a-l,k=(_+a+l)%e-a-l,Z=Math.abs(v+l)<Math.abs(k+l)?v:k;this._draggable._absPos=this._draggable._newPos.clone(),this._draggable._newPos.x=Z},_onDragEnd:function(e){var a=this._map,l=a.options,_=!l.inertia||e.noInertia||this._times.length<2;if(a.fire("dragend",e),_)a.fire("moveend");else{this._prunePositions(+new Date);var v=this._lastPos.subtract(this._positions[0]),k=(this._lastTime-this._times[0])/1e3,Z=l.easeLinearity,Y=v.multiplyBy(Z/k),st=Y.distanceTo([0,0]),ht=Math.min(l.inertiaMaxSpeed,st),pt=Y.multiplyBy(ht/st),wt=ht/(l.inertiaDeceleration*Z),Ot=pt.multiplyBy(-wt/2).round();!Ot.x&&!Ot.y?a.fire("moveend"):(Ot=a._limitOffset(Ot,a.options.maxBounds),Et(function(){a.panBy(Ot,{duration:wt,easeLinearity:Z,noMoveStart:!0,animate:!0})}))}}});Ft.addInitHook("addHandler","dragging",ss),Ft.mergeOptions({keyboard:!0,keyboardPanDelta:80});var li=Ae.extend({keyCodes:{left:[37],right:[39],down:[40],up:[38],zoomIn:[187,107,61,171],zoomOut:[189,109,54,173]},initialize:function(e){this._map=e,this._setPanDelta(e.options.keyboardPanDelta),this._setZoomDelta(e.options.zoomDelta)},addHooks:function(){var e=this._map._container;e.tabIndex<=0&&(e.tabIndex="0"),Bt(e,{focus:this._onFocus,blur:this._onBlur,mousedown:this._onMouseDown},this),this._map.on({focus:this._addHooks,blur:this._removeHooks},this)},removeHooks:function(){this._removeHooks(),Kt(this._map._container,{focus:this._onFocus,blur:this._onBlur,mousedown:this._onMouseDown},this),this._map.off({focus:this._addHooks,blur:this._removeHooks},this)},_onMouseDown:function(){if(!this._focused){var e=document.body,a=document.documentElement,l=e.scrollTop||a.scrollTop,_=e.scrollLeft||a.scrollLeft;this._map._container.focus(),window.scrollTo(_,l)}},_onFocus:function(){this._focused=!0,this._map.fire("focus")},_onBlur:function(){this._focused=!1,this._map.fire("blur")},_setPanDelta:function(e){var a=this._panKeys={},l=this.keyCodes,_,v;for(_=0,v=l.left.length;_<v;_++)a[l.left[_]]=[-1*e,0];for(_=0,v=l.right.length;_<v;_++)a[l.right[_]]=[e,0];for(_=0,v=l.down.length;_<v;_++)a[l.down[_]]=[0,e];for(_=0,v=l.up.length;_<v;_++)a[l.up[_]]=[0,-1*e]},_setZoomDelta:function(e){var a=this._zoomKeys={},l=this.keyCodes,_,v;for(_=0,v=l.zoomIn.length;_<v;_++)a[l.zoomIn[_]]=e;for(_=0,v=l.zoomOut.length;_<v;_++)a[l.zoomOut[_]]=-e},_addHooks:function(){Bt(document,"keydown",this._onKeyDown,this)},_removeHooks:function(){Kt(document,"keydown",this._onKeyDown,this)},_onKeyDown:function(e){if(!(e.altKey||e.ctrlKey||e.metaKey)){var a=e.keyCode,l=this._map,_;if(a in this._panKeys){if(!l._panAnim||!l._panAnim._inProgress)if(_=this._panKeys[a],e.shiftKey&&(_=Ct(_).multiplyBy(3)),l.options.maxBounds&&(_=l._limitOffset(Ct(_),l.options.maxBounds)),l.options.worldCopyJump){var v=l.wrapLatLng(l.unproject(l.project(l.getCenter()).add(_)));l.panTo(v)}else l.panBy(_)}else if(a in this._zoomKeys)l.setZoom(l.getZoom()+(e.shiftKey?3:1)*this._zoomKeys[a]);else if(a===27&&l._popup&&l._popup.options.closeOnEscapeKey)l.closePopup();else return;Ei(e)}}});Ft.addInitHook("addHandler","keyboard",li),Ft.mergeOptions({scrollWheelZoom:!0,wheelDebounceTime:40,wheelPxPerZoomLevel:60});var le=Ae.extend({addHooks:function(){Bt(this._map._container,"wheel",this._onWheelScroll,this),this._delta=0},removeHooks:function(){Kt(this._map._container,"wheel",this._onWheelScroll,this)},_onWheelScroll:function(e){var a=nr(e),l=this._map.options.wheelDebounceTime;this._delta+=a,this._lastMousePos=this._map.mouseEventToContainerPoint(e),this._startTime||(this._startTime=+new Date);var _=Math.max(l-(+new Date-this._startTime),0);clearTimeout(this._timer),this._timer=setTimeout(p(this._performZoom,this),_),Ei(e)},_performZoom:function(){var e=this._map,a=e.getZoom(),l=this._map.options.zoomSnap||0;e._stop();var _=this._delta/(this._map.options.wheelPxPerZoomLevel*4),v=4*Math.log(2/(1+Math.exp(-Math.abs(_))))/Math.LN2,k=l?Math.ceil(v/l)*l:v,Z=e._limitZoom(a+(this._delta>0?k:-k))-a;this._delta=0,this._startTime=null,Z&&(e.options.scrollWheelZoom==="center"?e.setZoom(a+Z):e.setZoomAround(this._lastMousePos,a+Z))}});Ft.addInitHook("addHandler","scrollWheelZoom",le);var yr=600;Ft.mergeOptions({tapHold:Mt.touchNative&&Mt.safari&&Mt.mobile,tapTolerance:15});var Oe=Ae.extend({addHooks:function(){Bt(this._map._container,"touchstart",this._onDown,this)},removeHooks:function(){Kt(this._map._container,"touchstart",this._onDown,this)},_onDown:function(e){if(clearTimeout(this._holdTimeout),e.touches.length===1){var a=e.touches[0];this._startPos=this._newPos=new Pt(a.clientX,a.clientY),this._holdTimeout=setTimeout(p(function(){this._cancel(),this._isTapValid()&&(Bt(document,"touchend",ce),Bt(document,"touchend touchcancel",this._cancelClickPrevent),this._simulateEvent("contextmenu",a))},this),yr),Bt(document,"touchend touchcancel contextmenu",this._cancel,this),Bt(document,"touchmove",this._onMove,this)}},_cancelClickPrevent:function e(){Kt(document,"touchend",ce),Kt(document,"touchend touchcancel",e)},_cancel:function(){clearTimeout(this._holdTimeout),Kt(document,"touchend touchcancel contextmenu",this._cancel,this),Kt(document,"touchmove",this._onMove,this)},_onMove:function(e){var a=e.touches[0];this._newPos=new Pt(a.clientX,a.clientY)},_isTapValid:function(){return this._newPos.distanceTo(this._startPos)<=this._map.options.tapTolerance},_simulateEvent:function(e,a){var l=new MouseEvent(e,{bubbles:!0,cancelable:!0,view:window,screenX:a.screenX,screenY:a.screenY,clientX:a.clientX,clientY:a.clientY});l._simulated=!0,a.target.dispatchEvent(l)}});Ft.addInitHook("addHandler","tapHold",Oe),Ft.mergeOptions({touchZoom:Mt.touch,bounceAtZoomLimits:!0});var Ie=Ae.extend({addHooks:function(){Tt(this._map._container,"leaflet-touch-zoom"),Bt(this._map._container,"touchstart",this._onTouchStart,this)},removeHooks:function(){ne(this._map._container,"leaflet-touch-zoom"),Kt(this._map._container,"touchstart",this._onTouchStart,this)},_onTouchStart:function(e){var a=this._map;if(!(!e.touches||e.touches.length!==2||a._animatingZoom||this._zooming)){var l=a.mouseEventToContainerPoint(e.touches[0]),_=a.mouseEventToContainerPoint(e.touches[1]);this._centerPoint=a.getSize()._divideBy(2),this._startLatLng=a.containerPointToLatLng(this._centerPoint),a.options.touchZoom!=="center"&&(this._pinchStartLatLng=a.containerPointToLatLng(l.add(_)._divideBy(2))),this._startDist=l.distanceTo(_),this._startZoom=a.getZoom(),this._moved=!1,this._zooming=!0,a._stop(),Bt(document,"touchmove",this._onTouchMove,this),Bt(document,"touchend touchcancel",this._onTouchEnd,this),ce(e)}},_onTouchMove:function(e){if(!(!e.touches||e.touches.length!==2||!this._zooming)){var a=this._map,l=a.mouseEventToContainerPoint(e.touches[0]),_=a.mouseEventToContainerPoint(e.touches[1]),v=l.distanceTo(_)/this._startDist;if(this._zoom=a.getScaleZoom(v,this._startZoom),!a.options.bounceAtZoomLimits&&(this._zoom<a.getMinZoom()&&v<1||this._zoom>a.getMaxZoom()&&v>1)&&(this._zoom=a._limitZoom(this._zoom)),a.options.touchZoom==="center"){if(this._center=this._startLatLng,v===1)return}else{var k=l._add(_)._divideBy(2)._subtract(this._centerPoint);if(v===1&&k.x===0&&k.y===0)return;this._center=a.unproject(a.project(this._pinchStartLatLng,this._zoom).subtract(k),this._zoom)}this._moved||(a._moveStart(!0,!1),this._moved=!0),jt(this._animRequest);var Z=p(a._move,a,this._center,this._zoom,{pinch:!0,round:!1},void 0);this._animRequest=Et(Z,this,!0),ce(e)}},_onTouchEnd:function(){if(!this._moved||!this._zooming){this._zooming=!1;return}this._zooming=!1,jt(this._animRequest),Kt(document,"touchmove",this._onTouchMove,this),Kt(document,"touchend touchcancel",this._onTouchEnd,this),this._map.options.zoomAnimation?this._map._animateZoom(this._center,this._map._limitZoom(this._zoom),!0,this._map.options.zoomSnap):this._map._resetView(this._center,this._map._limitZoom(this._zoom))}});Ft.addInitHook("addHandler","touchZoom",Ie),Ft.BoxZoom=kt,Ft.DoubleClickZoom=ns,Ft.Drag=ss,Ft.Keyboard=li,Ft.ScrollWheelZoom=le,Ft.TapHold=Oe,Ft.TouchZoom=Ie,r.Bounds=te,r.Browser=Mt,r.CRS=si,r.Canvas=aa,r.Circle=na,r.CircleMarker=Xe,r.Class=pe,r.Control=St,r.DivIcon=gr,r.DivOverlay=Ye,r.DomEvent=Gn,r.DomUtil=So,r.Draggable=mi,r.Evented=en,r.FeatureGroup=qe,r.GeoJSON=oi,r.GridLayer=_n,r.Handler=Ae,r.Icon=Hi,r.ImageOverlay=$i,r.LatLng=Ht,r.LatLngBounds=Ce,r.Layer=ve,r.LayerGroup=qi,r.LineUtil=jn,r.Map=Ft,r.Marker=Hn,r.Mixin=Io,r.Path=ai,r.Point=Pt,r.PolyUtil=Ro,r.Polygon=yi,r.Polyline=ri,r.Popup=Ai,r.PosAnimation=sr,r.Projection=We,r.Rectangle=ra,r.Renderer=hi,r.SVG=me,r.SVGOverlay=mr,r.TileLayer=Ki,r.Tooltip=ts,r.Transformation=Ps,r.Util=be,r.VideoOverlay=pn,r.bind=p,r.bounds=we,r.canvas=is,r.circle=Bi,r.circleMarker=dr,r.control=Pi,r.divIcon=Ko,r.extend=d,r.featureGroup=No,r.geoJSON=Qn,r.geoJson=pr,r.gridLayer=Wo,r.icon=Uo,r.imageOverlay=qo,r.latLng=Rt,r.latLngBounds=ae,r.layerGroup=zo,r.map=ar,r.marker=jo,r.point=Ct,r.polygon=fn,r.polyline=Zo,r.popup=Vo,r.rectangle=He,r.setOptions=j,r.stamp=M,r.svg=Me,r.svgOverlay=Ho,r.tileLayer=sa,r.tooltip=$o,r.transformation=sn,r.version=u,r.videoOverlay=_r;var Ti=window.L;r.noConflict=function(){return window.L=Ti,this},window.L=r})}(da,da.exports)),da.exports}var U=oh();(function(t){typeof define=="function"&&define.amd?define(t):t()})(function(){const t=L.extend({},L.DomUtil);L.extend(L.DomUtil,{setTransform:function(E,x,C,T,G){var j=x||new L.Point(0,0);if(!T)return x=j._round(),t.setTransform.apply(this,arguments);j=j.rotateFrom(T,G),E.style[L.DomUtil.TRANSFORM]="translate3d("+j.x+"px,"+j.y+"px,0)"+(C?" scale("+C+")":"")+" rotate("+T+"rad)"},setPosition:function(E,x,C,T,G){if(!C&&!G)return t.setPosition.apply(this,arguments);E._leaflet_pos=x,L.Browser.any3d?L.DomUtil.setTransform(E,x,G,C,T):(E.style.left=x.x+"px",E.style.top=x.y+"px")},DEG_TO_RAD:Math.PI/180,RAD_TO_DEG:180/Math.PI}),L.Draggable.include({}),L.extend(L.Point.prototype,{rotate:function(E){return this.rotateFrom(E,new L.Point(0,0))},rotateFrom:function(E,x){if(!E)return this;var C=Math.sin(E),T=Math.cos(E),G=x.x,j=x.y,W=this.x-G,at=this.y-j;return new L.Point(W*T-at*C+G,W*C+at*T+j)}});const n=L.extend({},L.DivOverlay.prototype);L.DivOverlay.include({getEvents:function(){return L.extend(n.getEvents.apply(this,arguments),{rotate:this._updatePosition})},_updatePosition:function(){if(this._map&&(n._updatePosition.apply(this,arguments),this._map&&this._map._rotate&&this._zoomAnimated)){var E=this._getAnchor(),x=L.DomUtil.getPosition(this._container).subtract(E);L.DomUtil.setPosition(this._container,this._map.rotatedPointToMapPanePoint(x).add(E))}}});const r=L.extend({},L.Popup.prototype);L.Popup.include({_animateZoom:function(E){if(r._animateZoom.apply(this,arguments),this._map&&this._map._rotate){var x=this._getAnchor(),C=L.DomUtil.getPosition(this._container).subtract(x);L.DomUtil.setPosition(this._container,this._map.rotatedPointToMapPanePoint(C).add(x))}},_adjustPan:function(){if(!(!this.options.autoPan||this._map._panAnim&&this._map._panAnim._inProgress)){if(this._autopanning){this._autopanning=!1;return}var E=this._map,x=parseInt(L.DomUtil.getStyle(this._container,"marginBottom"),10)||0,C=this._container.offsetHeight+x,T=this._containerWidth,G=new L.Point(this._containerLeft,-C-this._containerBottom);G._add(L.DomUtil.getPosition(this._container));var j=G._add(this._map._getMapPanePos()),W=L.point(this.options.autoPanPadding),at=L.point(this.options.autoPanPaddingTopLeft||W),rt=L.point(this.options.autoPanPaddingBottomRight||W),ct=E.getSize(),yt=0,mt=0;j.x+T+rt.x>ct.x&&(yt=j.x+T-ct.x+rt.x),j.x-yt-at.x<0&&(yt=j.x-at.x),j.y+C+rt.y>ct.y&&(mt=j.y+C-ct.y+rt.y),j.y-mt-at.y<0&&(mt=j.y-at.y),(yt||mt)&&(this.options.keepInView&&(this._autopanning=!0),E.fire("autopanstart").panBy([yt,mt]))}}});const u=L.extend({},L.Tooltip.prototype);L.Tooltip.include({_animateZoom:function(E){if(!this._map._rotate)return u._animateZoom.apply(this,arguments);var x=this._map._latLngToNewLayerPoint(this._latlng,E.zoom,E.center);x=this._map.rotatedPointToMapPanePoint(x),this._setPosition(x)},_updatePosition:function(){if(!this._map._rotate)return u._updatePosition.apply(this,arguments);var E=this._map.latLngToLayerPoint(this._latlng);E=this._map.rotatedPointToMapPanePoint(E),this._setPosition(E)}}),L.extend({},L.Icon.prototype),L.Icon.include({_setIconStyles:function(E,x){var C=this.options,T=C[x+"Size"];typeof T=="number"&&(T=[T,T]);var G=L.point(T),j=L.point(x==="shadow"&&C.shadowAnchor||C.iconAnchor||G&&G.divideBy(2,!0));E.className="leaflet-marker-"+x+" "+(C.className||""),j&&(E.style.marginLeft=-j.x+"px",E.style.marginTop=-j.y+"px",E.style[L.DomUtil.TRANSFORM+"Origin"]=j.x+"px "+j.y+"px 0px"),G&&(E.style.width=G.x+"px",E.style.height=G.y+"px")}});const d=L.extend({},L.Marker.prototype);L.Marker.mergeOptions({rotation:0,rotateWithView:!1,scale:void 0});var f,p={_onDrag:function(E){var x=this._marker,C=x.options.rotation||x.options.rotateWithView,T=x._shadow,G=L.DomUtil.getPosition(x._icon);!C&&T&&L.DomUtil.setPosition(T,G),x._map._rotate&&(G=x._map.mapPanePointToRotatedPoint(G));var j=x._map.layerPointToLatLng(G);x._latlng=j,E.latlng=j,E.oldLatLng=this._oldLatLng,C?x.setLatLng(j):x.fire("move",E),x.fire("drag",E)},_onDragEnd:function(E){this._marker._map._rotate&&this._marker.update(),f._onDragEnd.apply(this,arguments)}};L.Marker.include({getEvents:function(){return L.extend(d.getEvents.apply(this,arguments),{rotate:this.update})},_initInteraction:function(){var E=d._initInteraction.apply(this,arguments);return this.dragging&&this.dragging.enabled()&&this._map&&this._map._rotate&&(f=f||Object.getPrototypeOf(this.dragging),this.dragging.disable(),Object.assign(this.dragging,{_onDrag:p._onDrag.bind(this.dragging),_onDragEnd:p._onDragEnd.bind(this.dragging)}),this.dragging.enable()),E},_setPos:function(E){this._map._rotate&&(E=this._map.rotatedPointToMapPanePoint(E));var x=this.options.rotation||0;this.options.rotateWithView&&(x+=this._map._bearing),this._icon&&L.DomUtil.setPosition(this._icon,E,x,E,this.options.scale),this._shadow&&L.DomUtil.setPosition(this._shadow,E,x,E,this.options.scale),this._zIndex=E.y+this.options.zIndexOffset,this._resetZIndex()},setRotation:function(E){this.options.rotation=E,this.update()}});const g=L.extend({},L.GridLayer.prototype);L.GridLayer.include({getEvents:function(){var E=g.getEvents.apply(this,arguments);return this._map._rotate&&!this.options.updateWhenIdle&&(this._onRotate||(this._onRotate=L.Util.throttle(this._onMoveEnd,this.options.updateInterval,this)),E.rotate=this._onRotate),E},_getTiledPixelBounds:function(E){return this._map._rotate?this._map._getNewPixelBounds(E,this._tileZoom):g._getTiledPixelBounds.apply(this,arguments)}});const M=L.extend({},L.Renderer.prototype);L.Renderer.include({getEvents:function(){return L.extend(M.getEvents.apply(this,arguments),{rotate:this._update})},onAdd:function(){M.onAdd.apply(this,arguments),L.version<="1.9.3"&&this._container.classList.add("leaflet-zoom-animated")},_updateTransform:function(E,x){if(!this._map._rotate)return M._updateTransform.apply(this,arguments);var C=this._map.getZoomScale(x,this._zoom),T=this._map._latLngToNewLayerPoint(this._topLeft,x,E);L.DomUtil.setTransform(this._container,T,C)},_update:function(){if(!this._map._rotate)return M._update.apply(this,arguments);this._bounds=this._map._getPaddedPixelBounds(this.options.padding),this._topLeft=this._map.layerPointToLatLng(this._bounds.min),this._center=this._map.getCenter(),this._zoom=this._map.getZoom()}});const B=L.extend({},L.Map.prototype);L.Map.mergeOptions({rotate:!1,bearing:0}),L.Map.include({initialize:function(E,x){x.rotate&&(this._rotate=!0,this._bearing=0),B.initialize.apply(this,arguments),this.options.rotate&&this.setBearing(this.options.bearing)},containerPointToLayerPoint:function(E){return this._rotate?L.point(E).subtract(this._getMapPanePos()).rotateFrom(-this._bearing,this._getRotatePanePos()).subtract(this._getRotatePanePos()):B.containerPointToLayerPoint.apply(this,arguments)},layerPointToContainerPoint:function(E){return this._rotate?L.point(E).add(this._getRotatePanePos()).rotateFrom(this._bearing,this._getRotatePanePos()).add(this._getMapPanePos()):B.layerPointToContainerPoint.apply(this,arguments)},rotatedPointToMapPanePoint:function(E){return L.point(E).rotate(this._bearing)._add(this._getRotatePanePos())},mapPanePointToRotatedPoint:function(E){return L.point(E)._subtract(this._getRotatePanePos()).rotate(-this._bearing)},mapBoundsToContainerBounds:function(E){if(!this._rotate&&B.mapBoundsToContainerBounds)return B.mapBoundsToContainerBounds.apply(this,arguments);const x=this.getPixelOrigin(),C=this.layerPointToContainerPoint(this.project(E.getNorthWest())._subtract(x)),T=this.layerPointToContainerPoint(this.project(E.getNorthEast())._subtract(x)),G=this.layerPointToContainerPoint(this.project(E.getSouthWest())._subtract(x)),j=this.layerPointToContainerPoint(this.project(E.getSouthEast())._subtract(x));return L.bounds([L.point(Math.min(C.x,T.x,j.x,G.x),Math.min(C.y,T.y,j.y,G.y)),L.point(Math.max(C.x,T.x,j.x,G.x),Math.max(C.y,T.y,j.y,G.y))])},getBounds:function(){if(!this._rotate)return B.getBounds.apply(this,arguments);var E=this.getSize();return new L.LatLngBounds([this.containerPointToLatLng([0,0]),this.containerPointToLatLng([E.x,0]),this.containerPointToLatLng([E.x,E.y]),this.containerPointToLatLng([0,E.y])])},setBearing:function(E){if(!(!L.Browser.any3d||!this._rotate)){var x=L.Util.wrapNum(E,[0,360])*L.DomUtil.DEG_TO_RAD,C=this._getPixelCenter(),T=this._getRotatePanePos().rotateFrom(-this._bearing,C),G=T.rotateFrom(x,C);L.DomUtil.setPosition(this._rotatePane,T,x,C),this._pivot=C,this._bearing=x,this._rotatePanePos=G,this.fire("rotate")}},getBearing:function(){return this._bearing*L.DomUtil.RAD_TO_DEG},_initPanes:function(){var E=this._panes={};this._paneRenderers={},this._mapPane=this.createPane("mapPane",this._container),L.DomUtil.setPosition(this._mapPane,new L.Point(0,0)),this._rotate?(this._rotatePane=this.createPane("rotatePane",this._mapPane),this._norotatePane=this.createPane("norotatePane",this._mapPane),this.createPane("tilePane",this._rotatePane),this.createPane("overlayPane",this._rotatePane),this.createPane("shadowPane",this._norotatePane),this.createPane("markerPane",this._norotatePane),this.createPane("tooltipPane",this._norotatePane),this.createPane("popupPane",this._norotatePane)):(this.createPane("tilePane"),this.createPane("overlayPane"),this.createPane("shadowPane"),this.createPane("markerPane"),this.createPane("tooltipPane"),this.createPane("popupPane")),this.options.markerZoomAnimation||(L.DomUtil.addClass(E.markerPane,"leaflet-zoom-hide"),L.DomUtil.addClass(E.shadowPane,"leaflet-zoom-hide"))},panInside(E,x){if(!this._rotate||Math.abs(this._bearing).toFixed(1)<.1)return B.panInside.apply(this,arguments);x=x||{};const C=L.point(x.paddingTopLeft||x.padding||[0,0]),T=L.point(x.paddingBottomRight||x.padding||[0,0]),G=this._container.getBoundingClientRect(),j=this.latLngToContainerPoint(E),W=L.bounds([L.point(G),L.point(G).add(this.getSize())]),at=W.getCenter(),rt=L.bounds([W.min.add(C),W.max.subtract(T)]),ct=rt.getSize();if(!rt.contains(j)){this._enforcingBounds=!0;const yt=j.subtract(rt.getCenter()),mt=rt.extend(j).getSize().subtract(ct);at.x+=yt.x<0?-mt.x:mt.x,at.y+=yt.y<0?-mt.y:mt.y,this.panTo(this.containerPointToLatLng(at),x),this._enforcingBounds=!1}return this},getBoundsZoom(E,x,C){if(!this._rotate||Math.abs(this._bearing).toFixed(1)<.1)return B.getBoundsZoom.apply(this,arguments);E=L.latLngBounds(E),C=L.point(C||[0,0]);let T=this.getZoom()||0;const G=this.getMinZoom(),j=this.getMaxZoom(),W=this.getSize().subtract(C),at=this.mapBoundsToContainerBounds(E).getSize(),rt=this.options.zoomSnap,ct=W.x/at.x,yt=W.y/at.y,mt=x?Math.max(ct,yt):Math.min(ct,yt);return T=this.getScaleZoom(mt,T),rt&&(T=Math.round(T/(rt/100))*(rt/100),T=x?Math.ceil(T/rt)*rt:Math.floor(T/rt)*rt),Math.max(G,Math.min(j,T))},_getCenterOffset:function(E){var x=B._getCenterOffset.apply(this,arguments);return this._rotate&&(x=x.rotate(this._bearing)),x},_getRotatePanePos:function(){return this._rotatePanePos||new L.Point(0,0)},_getNewPixelOrigin:function(E,x){if(!this._rotate)return B._getNewPixelOrigin.apply(this,arguments);var C=this.getSize()._divideBy(2);return this.project(E,x).rotate(this._bearing)._subtract(C)._add(this._getMapPanePos())._add(this._getRotatePanePos()).rotate(-this._bearing)._round()},_getNewPixelBounds:function(E,x){if(E=E||this.getCenter(),x=x||this.getZoom(),!this._rotate&&B._getNewPixelBounds)return B._getNewPixelBounds.apply(this,arguments);var C=this._animatingZoom?Math.max(this._animateToZoom,this.getZoom()):this.getZoom(),T=this.getZoomScale(C,x),G=this.project(E,x).floor(),j=this.getSize(),W=new L.Bounds([this.containerPointToLayerPoint([0,0]).floor(),this.containerPointToLayerPoint([j.x,0]).floor(),this.containerPointToLayerPoint([0,j.y]).floor(),this.containerPointToLayerPoint([j.x,j.y]).floor()]).getSize().divideBy(T*2);return new L.Bounds(G.subtract(W),G.add(W))},_getPixelCenter:function(){return!this._rotate&&B._getPixelCenter?B._getPixelCenter.apply(this,arguments):this.getSize()._divideBy(2)._subtract(this._getMapPanePos())},_getPaddedPixelBounds:function(E){if(!this._rotate&&B._getPaddedPixelBounds)return B._getPaddedPixelBounds.apply(this,arguments);var x=E,C=this.getSize(),T=C.multiplyBy(-x),G=C.multiplyBy(1+x);return new L.Bounds([this.containerPointToLayerPoint([T.x,T.y]).floor(),this.containerPointToLayerPoint([T.x,G.y]).floor(),this.containerPointToLayerPoint([G.x,T.y]).floor(),this.containerPointToLayerPoint([G.x,G.y]).floor()])},_handleGeolocationResponse:function(E){if(this._container._leaflet_id){var x=E.coords.latitude,C=E.coords.longitude,T=E.coords.heading,G=new L.LatLng(x,C),j=G.toBounds(E.coords.accuracy),W=this._locateOptions;if(W.setView){var at=this.getBoundsZoom(j);this.setView(G,W.maxZoom?Math.min(at,W.maxZoom):at)}var rt={latlng:G,bounds:j,timestamp:E.timestamp,heading:T};for(var ct in E.coords)typeof E.coords[ct]=="number"&&(rt[ct]=E.coords[ct]);this.fire("locationfound",rt)}}}),L.Map.CompassBearing=L.Handler.extend({initialize:function(E){this._map=E,"ondeviceorientationabsolute"in window?this.__deviceOrientationEvent="deviceorientationabsolute":"ondeviceorientation"in window&&(this.__deviceOrientationEvent="deviceorientation"),this._throttled=L.Util.throttle(this._onDeviceOrientation,100,this)},addHooks:function(){this._map._rotate&&this.__deviceOrientationEvent?L.DomEvent.on(window,this.__deviceOrientationEvent,this._throttled,this):this.disable()},removeHooks:function(){this._map._rotate&&this.__deviceOrientationEvent&&L.DomEvent.off(window,this.__deviceOrientationEvent,this._throttled,this)},_onDeviceOrientation:function(E){var x=E.webkitCompassHeading||E.alpha,C=0;!E.absolute&&E.webkitCompassHeading&&(x=360-x),!E.absolute&&typeof window.orientation<"u"&&(C=window.orientation),this._map.setBearing(x-C)}}),L.Map.addInitHook("addHandler","compassBearing",L.Map.CompassBearing),L.Map.mergeOptions({trackContainerMutation:!1}),L.Map.ContainerMutation=L.Handler.extend({addHooks:function(){this._observer||(this._observer=new MutationObserver(L.Util.bind(this._map.invalidateSize,this._map))),this._observer.observe(this._map.getContainer(),{childList:!1,attributes:!0,characterData:!1,subtree:!1,attributeFilter:["style"]})},removeHooks:function(){this._observer.disconnect()}}),L.Map.addInitHook("addHandler","trackContainerMutation",L.Map.ContainerMutation),L.Map.mergeOptions({bounceAtZoomLimits:!0}),L.Map.TouchGestures=L.Handler.extend({initialize:function(E){this._map=E,this.rotate=!!this._map.options.touchRotate,this.zoom=!!this._map.options.touchZoom},addHooks:function(){L.DomEvent.on(this._map._container,"touchstart",this._onTouchStart,this)},removeHooks:function(){L.DomEvent.off(this._map._container,"touchstart",this._onTouchStart,this)},_onTouchStart:function(E){var x=this._map;if(!(!E.touches||E.touches.length!==2||x._animatingZoom||this._zooming||this._rotating)){var C=x.mouseEventToContainerPoint(E.touches[0]),T=x.mouseEventToContainerPoint(E.touches[1]),G=C.subtract(T);this._centerPoint=x.getSize()._divideBy(2),this._startLatLng=x.containerPointToLatLng(this._centerPoint),this.zoom?(x.options.touchZoom!=="center"&&(this._pinchStartLatLng=x.containerPointToLatLng(C.add(T)._divideBy(2))),this._startDist=C.distanceTo(T),this._startZoom=x.getZoom(),this._zooming=!0):this._zooming=!1,this.rotate?(this._startTheta=Math.atan(G.x/G.y),this._startBearing=x.getBearing(),G.y<0&&(this._startBearing+=180),this._rotating=!0):this._rotating=!1,this._moved=!1,x._stop(),L.DomEvent.on(document,"touchmove",this._onTouchMove,this).on(document,"touchend touchcancel",this._onTouchEnd,this),L.DomEvent.preventDefault(E)}},_onTouchMove:function(E){if(!(!E.touches||E.touches.length!==2||!(this._zooming||this._rotating))){var x=this._map,C=x.mouseEventToContainerPoint(E.touches[0]),T=x.mouseEventToContainerPoint(E.touches[1]),G=C.subtract(T),j=C.distanceTo(T)/this._startDist,W;if(this._rotating){var at=Math.atan(G.x/G.y),rt=(at-this._startTheta)*L.DomUtil.RAD_TO_DEG;G.y<0&&(rt+=180),rt&&x.setBearing(this._startBearing-rt)}if(this._zooming)if(this._zoom=x.getScaleZoom(j,this._startZoom),!x.options.bounceAtZoomLimits&&(this._zoom<x.getMinZoom()&&j<1||this._zoom>x.getMaxZoom()&&j>1)&&(this._zoom=x._limitZoom(this._zoom)),x.options.touchZoom==="center"){if(this._center=this._startLatLng,j===1)return}else{if(W=C._add(T)._divideBy(2)._subtract(this._centerPoint),j===1&&W.x===0&&W.y===0)return;var ct=-x.getBearing()*L.DomUtil.DEG_TO_RAD;this._center=x.unproject(x.project(this._pinchStartLatLng).subtract(W.rotate(ct)))}this._moved||(x._moveStart(!0,!1),this._moved=!0),L.Util.cancelAnimFrame(this._animRequest);var yt=x._move.bind(x,this._center,this._zoom,{pinch:!0,round:!1},void 0);this._animRequest=L.Util.requestAnimFrame(yt,this,!0),L.DomEvent.preventDefault(E)}},_onTouchEnd:function(){if(!this._moved||!(this._zooming||this._rotating)){this._zooming=!1;return}this._zooming=!1,this._rotating=!1,L.Util.cancelAnimFrame(this._animRequest),L.DomEvent.off(document,"touchmove",this._onTouchMove,this).off(document,"touchend touchcancel",this._onTouchEnd,this),this.zoom&&(this._map.options.zoomAnimation?this._map._animateZoom(this._center,this._map._limitZoom(this._zoom),!0,this._map.options.zoomSnap):this._map._resetView(this._center,this._map._limitZoom(this._zoom)))}}),L.Map.addInitHook("addHandler","touchGestures",L.Map.TouchGestures),L.Map.mergeOptions({touchRotate:!1}),L.Map.TouchRotate=L.Handler.extend({addHooks:function(){this._map.touchGestures.enable(),this._map.touchGestures.rotate=!0},removeHooks:function(){this._map.touchGestures.rotate=!1}}),L.Map.addInitHook("addHandler","touchRotate",L.Map.TouchRotate),L.Map.mergeOptions({shiftKeyRotate:!0}),L.Map.ShiftKeyRotate=L.Handler.extend({addHooks:function(){L.DomEvent.on(this._map._container,"wheel",this._handleShiftScroll,this),this._map.shiftKeyRotate.rotate=!0},removeHooks:function(){L.DomEvent.off(this._map._container,"wheel",this._handleShiftScroll,this),this._map.shiftKeyRotate.rotate=!1},_handleShiftScroll:function(E){E.shiftKey?(E.preventDefault(),this._map.scrollWheelZoom.disable(),this._map.setBearing(this._map._bearing*L.DomUtil.RAD_TO_DEG+Math.sign(E.deltaY)*5)):this._map.scrollWheelZoom.enable()}}),L.Map.addInitHook("addHandler","shiftKeyRotate",L.Map.ShiftKeyRotate),L.Map.addInitHook(function(){this.scrollWheelZoom.enabled()&&this.shiftKeyRotate.enabled()&&(this.scrollWheelZoom.disable(),this.scrollWheelZoom.enable())}),L.Map.mergeOptions({touchZoom:L.Browser.touch,bounceAtZoomLimits:!1}),L.Map.TouchZoom=L.Handler.extend({addHooks:function(){L.DomUtil.addClass(this._map._container,"leaflet-touch-zoom"),this._map.touchGestures.enable(),this._map.touchGestures.zoom=!0},removeHooks:function(){L.DomUtil.removeClass(this._map._container,"leaflet-touch-zoom"),this._map.touchGestures.zoom=!1}}),L.Map.addInitHook("addHandler","touchZoom",L.Map.TouchZoom),L.Control.Rotate=L.Control.extend({options:{position:"topleft",closeOnZeroBearing:!0},onAdd:function(E){var x=this._container=L.DomUtil.create("div","leaflet-control-rotate leaflet-bar"),C=this._arrow=L.DomUtil.create("span","leaflet-control-rotate-arrow");C.style.backgroundImage=`url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")`,C.style.cursor="grab",C.style.display="block",C.style.width="100%",C.style.height="100%",C.style.backgroundRepeat="no-repeat",C.style.backgroundPosition="50%";var T=this._link=L.DomUtil.create("a","leaflet-control-rotate-toggle",x);return T.appendChild(C),T.href="#",T.title="Rotate map",L.DomEvent.on(T,"dblclick",L.DomEvent.stopPropagation).on(T,"mousedown",this._handleMouseDown,this).on(T,"click",L.DomEvent.stop).on(T,"click",this._cycleState,this).on(T,"click",this._refocusOnMap,this),L.Browser.any3d||L.DomUtil.addClass(T,"leaflet-disabled"),this._restyle(),E.on("rotate",this._restyle,this),this._follow=!1,this._canFollow=!1,this.options.closeOnZeroBearing&&E.getBearing()===0&&(x.style.display="none"),x},onRemove:function(E){E.off("rotate",this._restyle,this)},_handleMouseDown:function(E){L.DomEvent.stop(E),this.dragging=!0,this.dragstartX=E.pageX,this.dragstartY=E.pageY,L.DomEvent.on(document,"mousemove",this._handleMouseDrag,this).on(document,"mouseup",this._handleMouseUp,this)},_handleMouseUp:function(E){L.DomEvent.stop(E),this.dragging=!1,L.DomEvent.off(document,"mousemove",this._handleMouseDrag,this).off(document,"mouseup",this._handleMouseUp,this)},_handleMouseDrag:function(E){if(this.dragging){var x=E.clientX-this.dragstartX;this._map.setBearing(x)}},_cycleState:function(E){if(this._map){var x=this._map;!x.touchRotate.enabled()&&!x.compassBearing.enabled()?x.touchRotate.enable():x.compassBearing.enabled()?(x.compassBearing.disable(),x.setBearing(0),this.options.closeOnZeroBearing&&x.touchRotate.enable()):(x.touchRotate.disable(),(DeviceOrientationEvent&&DeviceOrientationEvent.requestPermission?DeviceOrientationEvent.requestPermission():Promise.resolve("granted")).then(C=>C==="granted"&&x.compassBearing.enable())),this._restyle()}},_restyle:function(){if(!this._map.options.rotate)L.DomUtil.addClass(this._link,"leaflet-disabled");else{var E=this._map,x=E.getBearing();this._arrow.style.transform="rotate("+x+"deg)",x&&this.options.closeOnZeroBearing&&(this._container.style.display="block"),E.compassBearing.enabled()?this._link.style.backgroundColor="orange":E.touchRotate.enabled()?this._link.style.backgroundColor=null:(this._link.style.backgroundColor="grey",x===0&&this.options.closeOnZeroBearing&&(this._container.style.display="none"))}}}),L.control.rotate=function(E){return new L.Control.Rotate(E)},L.Map.mergeOptions({rotateControl:!0}),L.Map.addInitHook(function(){if(this.options.rotateControl){var E=typeof this.options.rotateControl=="object"?this.options.rotateControl:{};this.rotateControl=L.control.rotate(E),this.addControl(this.rotateControl)}})}),(()=>{var pl,_l;var t=Object.create,n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,u=Object.getOwnPropertyNames,d=Object.getPrototypeOf,f=Object.prototype.hasOwnProperty,p=(i,s)=>()=>(s||i((s={exports:{}}).exports,s),s.exports),g=(i,s,o,h)=>{if(s&&typeof s=="object"||typeof s=="function")for(let c of u(s))!f.call(i,c)&&c!==o&&n(i,c,{get:()=>s[c],enumerable:!(h=r(s,c))||h.enumerable});return i},M=(i,s,o)=>(o=i!=null?t(d(i)):{},g(s||!i||!i.__esModule?n(o,"default",{value:i,enumerable:!0}):o,i)),B=p((i,s)=>{function o(){this.__data__=[],this.size=0}s.exports=o}),E=p((i,s)=>{function o(h,c){return h===c||h!==h&&c!==c}s.exports=o}),x=p((i,s)=>{var o=E();function h(c,m){for(var y=c.length;y--;)if(o(c[y][0],m))return y;return-1}s.exports=h}),C=p((i,s)=>{var o=x(),h=Array.prototype,c=h.splice;function m(y){var A=this.__data__,b=o(A,y);if(b<0)return!1;var P=A.length-1;return b==P?A.pop():c.call(A,b,1),--this.size,!0}s.exports=m}),T=p((i,s)=>{var o=x();function h(c){var m=this.__data__,y=o(m,c);return y<0?void 0:m[y][1]}s.exports=h}),G=p((i,s)=>{var o=x();function h(c){return o(this.__data__,c)>-1}s.exports=h}),j=p((i,s)=>{var o=x();function h(c,m){var y=this.__data__,A=o(y,c);return A<0?(++this.size,y.push([c,m])):y[A][1]=m,this}s.exports=h}),W=p((i,s)=>{var o=B(),h=C(),c=T(),m=G(),y=j();function A(b){var P=-1,N=b==null?0:b.length;for(this.clear();++P<N;){var F=b[P];this.set(F[0],F[1])}}A.prototype.clear=o,A.prototype.delete=h,A.prototype.get=c,A.prototype.has=m,A.prototype.set=y,s.exports=A}),at=p((i,s)=>{var o=W();function h(){this.__data__=new o,this.size=0}s.exports=h}),rt=p((i,s)=>{function o(h){var c=this.__data__,m=c.delete(h);return this.size=c.size,m}s.exports=o}),ct=p((i,s)=>{function o(h){return this.__data__.get(h)}s.exports=o}),yt=p((i,s)=>{function o(h){return this.__data__.has(h)}s.exports=o}),mt=p((i,s)=>{var o=typeof vn=="object"&&vn&&vn.Object===Object&&vn;s.exports=o}),xt=p((i,s)=>{var o=mt(),h=typeof self=="object"&&self&&self.Object===Object&&self,c=o||h||Function("return this")();s.exports=c}),Dt=p((i,s)=>{var o=xt(),h=o.Symbol;s.exports=h}),It=p((i,s)=>{var o=Dt(),h=Object.prototype,c=h.hasOwnProperty,m=h.toString,y=o?o.toStringTag:void 0;function A(b){var P=c.call(b,y),N=b[y];try{b[y]=void 0;var F=!0}catch{}var tt=m.call(b);return F&&(P?b[y]=N:delete b[y]),tt}s.exports=A}),zt=p((i,s)=>{var o=Object.prototype,h=o.toString;function c(m){return h.call(m)}s.exports=c}),Yt=p((i,s)=>{var o=Dt(),h=It(),c=zt(),m="[object Null]",y="[object Undefined]",A=o?o.toStringTag:void 0;function b(P){return P==null?P===void 0?y:m:A&&A in Object(P)?h(P):c(P)}s.exports=b}),Et=p((i,s)=>{function o(h){var c=typeof h;return h!=null&&(c=="object"||c=="function")}s.exports=o}),jt=p((i,s)=>{var o=Yt(),h=Et(),c="[object AsyncFunction]",m="[object Function]",y="[object GeneratorFunction]",A="[object Proxy]";function b(P){if(!h(P))return!1;var N=o(P);return N==m||N==y||N==c||N==A}s.exports=b}),be=p((i,s)=>{var o=xt(),h=o["__core-js_shared__"];s.exports=h}),pe=p((i,s)=>{var o=be(),h=function(){var m=/[^.]+$/.exec(o&&o.keys&&o.keys.IE_PROTO||"");return m?"Symbol(src)_1."+m:""}();function c(m){return!!h&&h in m}s.exports=c}),oo=p((i,s)=>{var o=Function.prototype,h=o.toString;function c(m){if(m!=null){try{return h.call(m)}catch{}try{return m+""}catch{}}return""}s.exports=c}),De=p((i,s)=>{var o=jt(),h=pe(),c=Et(),m=oo(),y=/[\\^$.*+?()[\]{}|]/g,A=/^\[object .+?Constructor\]$/,b=Function.prototype,P=Object.prototype,N=b.toString,F=P.hasOwnProperty,tt=RegExp("^"+N.call(F).replace(y,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function it(lt){if(!c(lt)||h(lt))return!1;var ft=o(lt)?tt:A;return ft.test(m(lt))}s.exports=it}),en=p((i,s)=>{function o(h,c){return h==null?void 0:h[c]}s.exports=o}),Pt=p((i,s)=>{var o=De(),h=en();function c(m,y){var A=h(m,y);return o(A)?A:void 0}s.exports=c}),Cs=p((i,s)=>{var o=Pt(),h=xt(),c=o(h,"Map");s.exports=c}),Ct=p((i,s)=>{var o=Pt(),h=o(Object,"create");s.exports=h}),te=p((i,s)=>{var o=Ct();function h(){this.__data__=o?o(null):{},this.size=0}s.exports=h}),we=p((i,s)=>{function o(h){var c=this.has(h)&&delete this.__data__[h];return this.size-=c?1:0,c}s.exports=o}),Ce=p((i,s)=>{var o=Ct(),h="__lodash_hash_undefined__",c=Object.prototype,m=c.hasOwnProperty;function y(A){var b=this.__data__;if(o){var P=b[A];return P===h?void 0:P}return m.call(b,A)?b[A]:void 0}s.exports=y}),ae=p((i,s)=>{var o=Ct(),h=Object.prototype,c=h.hasOwnProperty;function m(y){var A=this.__data__;return o?A[y]!==void 0:c.call(A,y)}s.exports=m}),Ht=p((i,s)=>{var o=Ct(),h="__lodash_hash_undefined__";function c(m,y){var A=this.__data__;return this.size+=this.has(m)?0:1,A[m]=o&&y===void 0?h:y,this}s.exports=c}),Rt=p((i,s)=>{var o=te(),h=we(),c=Ce(),m=ae(),y=Ht();function A(b){var P=-1,N=b==null?0:b.length;for(this.clear();++P<N;){var F=b[P];this.set(F[0],F[1])}}A.prototype.clear=o,A.prototype.delete=h,A.prototype.get=c,A.prototype.has=m,A.prototype.set=y,s.exports=A}),si=p((i,s)=>{var o=Rt(),h=W(),c=Cs();function m(){this.size=0,this.__data__={hash:new o,map:new(c||h),string:new o}}s.exports=m}),fi=p((i,s)=>{function o(h){var c=typeof h;return c=="string"||c=="number"||c=="symbol"||c=="boolean"?h!=="__proto__":h===null}s.exports=o}),nn=p((i,s)=>{var o=fi();function h(c,m){var y=c.__data__;return o(m)?y[typeof m=="string"?"string":"hash"]:y.map}s.exports=h}),Es=p((i,s)=>{var o=nn();function h(c){var m=o(this,c).delete(c);return this.size-=m?1:0,m}s.exports=h}),Ps=p((i,s)=>{var o=nn();function h(c){return o(this,c).get(c)}s.exports=h}),sn=p((i,s)=>{var o=nn();function h(c){return o(this,c).has(c)}s.exports=h}),ks=p((i,s)=>{var o=nn();function h(c,m){var y=o(this,c),A=y.size;return y.set(c,m),this.size+=y.size==A?0:1,this}s.exports=h}),Pa=p((i,s)=>{var o=si(),h=Es(),c=Ps(),m=sn(),y=ks();function A(b){var P=-1,N=b==null?0:b.length;for(this.clear();++P<N;){var F=b[P];this.set(F[0],F[1])}}A.prototype.clear=o,A.prototype.delete=h,A.prototype.get=c,A.prototype.has=m,A.prototype.set=y,s.exports=A}),ka=p((i,s)=>{var o=W(),h=Cs(),c=Pa(),m=200;function y(A,b){var P=this.__data__;if(P instanceof o){var N=P.__data__;if(!h||N.length<m-1)return N.push([A,b]),this.size=++P.size,this;P=this.__data__=new c(N)}return P.set(A,b),this.size=P.size,this}s.exports=y}),Sa=p((i,s)=>{var o=W(),h=at(),c=rt(),m=ct(),y=yt(),A=ka();function b(P){var N=this.__data__=new o(P);this.size=N.size}b.prototype.clear=h,b.prototype.delete=c,b.prototype.get=m,b.prototype.has=y,b.prototype.set=A,s.exports=b}),Sn=p((i,s)=>{var o=Pt(),h=function(){try{var c=o(Object,"defineProperty");return c({},"",{}),c}catch{}}();s.exports=h}),Gi=p((i,s)=>{var o=Sn();function h(c,m,y){m=="__proto__"&&o?o(c,m,{configurable:!0,enumerable:!0,value:y,writable:!0}):c[m]=y}s.exports=h}),Ba=p((i,s)=>{var o=Gi(),h=E();function c(m,y,A){(A!==void 0&&!h(m[y],A)||A===void 0&&!(y in m))&&o(m,y,A)}s.exports=c}),Ta=p((i,s)=>{function o(h){return function(c,m,y){for(var A=-1,b=Object(c),P=y(c),N=P.length;N--;){var F=P[h?N:++A];if(m(b[F],F,b)===!1)break}return c}}s.exports=o}),Ss=p((i,s)=>{var o=Ta(),h=o();s.exports=h}),Da=p((i,s)=>{var o=xt(),h=typeof i=="object"&&i&&!i.nodeType&&i,c=h&&typeof s=="object"&&s&&!s.nodeType&&s,m=c&&c.exports===h,y=m?o.Buffer:void 0,A=y?y.allocUnsafe:void 0;function b(P,N){if(N)return P.slice();var F=P.length,tt=A?A(F):new P.constructor(F);return P.copy(tt),tt}s.exports=b}),Oa=p((i,s)=>{var o=xt(),h=o.Uint8Array;s.exports=h}),ho=p((i,s)=>{var o=Oa();function h(c){var m=new c.constructor(c.byteLength);return new o(m).set(new o(c)),m}s.exports=h}),lo=p((i,s)=>{var o=ho();function h(c,m){var y=m?o(c.buffer):c.buffer;return new c.constructor(y,c.byteOffset,c.length)}s.exports=h}),Bs=p((i,s)=>{function o(h,c){var m=-1,y=h.length;for(c||(c=Array(y));++m<y;)c[m]=h[m];return c}s.exports=o}),Ia=p((i,s)=>{var o=Et(),h=Object.create,c=function(){function m(){}return function(y){if(!o(y))return{};if(h)return h(y);m.prototype=y;var A=new m;return m.prototype=void 0,A}}();s.exports=c}),Ra=p((i,s)=>{function o(h,c){return function(m){return h(c(m))}}s.exports=o}),Fa=p((i,s)=>{var o=Ra(),h=o(Object.getPrototypeOf,Object);s.exports=h}),Ts=p((i,s)=>{var o=Object.prototype;function h(c){var m=c&&c.constructor,y=typeof m=="function"&&m.prototype||o;return c===y}s.exports=h}),Ga=p((i,s)=>{var o=Ia(),h=Fa(),c=Ts();function m(y){return typeof y.constructor=="function"&&!c(y)?o(h(y)):{}}s.exports=m}),zi=p((i,s)=>{function o(h){return h!=null&&typeof h=="object"}s.exports=o}),za=p((i,s)=>{var o=Yt(),h=zi(),c="[object Arguments]";function m(y){return h(y)&&o(y)==c}s.exports=m}),Bn=p((i,s)=>{var o=za(),h=zi(),c=Object.prototype,m=c.hasOwnProperty,y=c.propertyIsEnumerable,A=o(function(){return arguments}())?o:function(b){return h(b)&&m.call(b,"callee")&&!y.call(b,"callee")};s.exports=A}),Ni=p((i,s)=>{var o=Array.isArray;s.exports=o}),Na=p((i,s)=>{var o=9007199254740991;function h(c){return typeof c=="number"&&c>-1&&c%1==0&&c<=o}s.exports=h}),xi=p((i,s)=>{var o=jt(),h=Na();function c(m){return m!=null&&h(m.length)&&!o(m)}s.exports=c}),uo=p((i,s)=>{var o=xi(),h=zi();function c(m){return h(m)&&o(m)}s.exports=c}),co=p((i,s)=>{function o(){return!1}s.exports=o}),Ds=p((i,s)=>{var o=xt(),h=co(),c=typeof i=="object"&&i&&!i.nodeType&&i,m=c&&typeof s=="object"&&s&&!s.nodeType&&s,y=m&&m.exports===c,A=y?o.Buffer:void 0,b=A?A.isBuffer:void 0,P=b||h;s.exports=P}),Ua=p((i,s)=>{var o=Yt(),h=Fa(),c=zi(),m="[object Object]",y=Function.prototype,A=Object.prototype,b=y.toString,P=A.hasOwnProperty,N=b.call(Object);function F(tt){if(!c(tt)||o(tt)!=m)return!1;var it=h(tt);if(it===null)return!0;var lt=P.call(it,"constructor")&&it.constructor;return typeof lt=="function"&< instanceof lt&&b.call(lt)==N}s.exports=F}),ja=p((i,s)=>{var o=Yt(),h=Na(),c=zi(),m="[object Arguments]",y="[object Array]",A="[object Boolean]",b="[object Date]",P="[object Error]",N="[object Function]",F="[object Map]",tt="[object Number]",it="[object Object]",lt="[object RegExp]",ft="[object Set]",At="[object String]",Gt="[object WeakMap]",z="[object ArrayBuffer]",q="[object DataView]",K="[object Float32Array]",nt="[object Float64Array]",X="[object Int8Array]",et="[object Int16Array]",w="[object Int32Array]",S="[object Uint8Array]",O="[object Uint8ClampedArray]",D="[object Uint16Array]",I="[object Uint32Array]",R={};R[K]=R[nt]=R[X]=R[et]=R[w]=R[S]=R[O]=R[D]=R[I]=!0,R[m]=R[y]=R[z]=R[A]=R[q]=R[b]=R[P]=R[N]=R[F]=R[tt]=R[it]=R[lt]=R[ft]=R[At]=R[Gt]=!1;function V(H){return c(H)&&h(H.length)&&!!R[o(H)]}s.exports=V}),fo=p((i,s)=>{function o(h){return function(c){return h(c)}}s.exports=o}),po=p((i,s)=>{var o=mt(),h=typeof i=="object"&&i&&!i.nodeType&&i,c=h&&typeof s=="object"&&s&&!s.nodeType&&s,m=c&&c.exports===h,y=m&&o.process,A=function(){try{var b=c&&c.require&&c.require("util").types;return b||y&&y.binding&&y.binding("util")}catch{}}();s.exports=A}),Za=p((i,s)=>{var o=ja(),h=fo(),c=po(),m=c&&c.isTypedArray,y=m?h(m):o;s.exports=y}),qa=p((i,s)=>{function o(h,c){if(!(c==="constructor"&&typeof h[c]=="function")&&c!="__proto__")return h[c]}s.exports=o}),_o=p((i,s)=>{var o=Gi(),h=E(),c=Object.prototype,m=c.hasOwnProperty;function y(A,b,P){var N=A[b];(!(m.call(A,b)&&h(N,P))||P===void 0&&!(b in A))&&o(A,b,P)}s.exports=y}),mo=p((i,s)=>{var o=_o(),h=Gi();function c(m,y,A,b){var P=!A;A||(A={});for(var N=-1,F=y.length;++N<F;){var tt=y[N],it=b?b(A[tt],m[tt],tt,A,m):void 0;it===void 0&&(it=m[tt]),P?h(A,tt,it):o(A,tt,it)}return A}s.exports=c}),Os=p((i,s)=>{function o(h,c){for(var m=-1,y=Array(h);++m<h;)y[m]=c(m);return y}s.exports=o}),Ha=p((i,s)=>{var o=9007199254740991,h=/^(?:0|[1-9]\d*)$/;function c(m,y){var A=typeof m;return y=y??o,!!y&&(A=="number"||A!="symbol"&&h.test(m))&&m>-1&&m%1==0&&m<y}s.exports=c}),go=p((i,s)=>{var o=Os(),h=Bn(),c=Ni(),m=Ds(),y=Ha(),A=Za(),b=Object.prototype,P=b.hasOwnProperty;function N(F,tt){var it=c(F),lt=!it&&h(F),ft=!it&&!lt&&m(F),At=!it&&!lt&&!ft&&A(F),Gt=it||lt||ft||At,z=Gt?o(F.length,String):[],q=z.length;for(var K in F)(tt||P.call(F,K))&&!(Gt&&(K=="length"||ft&&(K=="offset"||K=="parent")||At&&(K=="buffer"||K=="byteLength"||K=="byteOffset")||y(K,q)))&&z.push(K);return z}s.exports=N}),yo=p((i,s)=>{function o(h){var c=[];if(h!=null)for(var m in Object(h))c.push(m);return c}s.exports=o}),Ao=p((i,s)=>{var o=Et(),h=Ts(),c=yo(),m=Object.prototype,y=m.hasOwnProperty;function A(b){if(!o(b))return c(b);var P=h(b),N=[];for(var F in b)F=="constructor"&&(P||!y.call(b,F))||N.push(F);return N}s.exports=A}),Ze=p((i,s)=>{var o=go(),h=Ao(),c=xi();function m(y){return c(y)?o(y,!0):h(y)}s.exports=m}),Mt=p((i,s)=>{var o=mo(),h=Ze();function c(m){return o(m,h(m))}s.exports=c}),Va=p((i,s)=>{var o=Ba(),h=Da(),c=lo(),m=Bs(),y=Ga(),A=Bn(),b=Ni(),P=uo(),N=Ds(),F=jt(),tt=Et(),it=Ua(),lt=Za(),ft=qa(),At=Mt();function Gt(z,q,K,nt,X,et,w){var S=ft(z,K),O=ft(q,K),D=w.get(O);if(D){o(z,K,D);return}var I=et?et(S,O,K+"",z,q,w):void 0,R=I===void 0;if(R){var V=b(O),H=!V&&N(O),$=!V&&!H&<(O);I=O,V||H||$?b(S)?I=S:P(S)?I=m(S):H?(R=!1,I=h(O,!0)):$?(R=!1,I=c(O,!0)):I=[]:it(O)||A(O)?(I=S,A(S)?I=At(S):(!tt(S)||F(S))&&(I=y(O))):R=!1}R&&(w.set(O,I),X(I,O,nt,et,w),w.delete(O)),o(z,K,I)}s.exports=Gt}),$a=p((i,s)=>{var o=Sa(),h=Ba(),c=Ss(),m=Va(),y=Et(),A=Ze(),b=qa();function P(N,F,tt,it,lt){N!==F&&c(F,function(ft,At){if(lt||(lt=new o),y(ft))m(N,F,At,tt,P,it,lt);else{var Gt=it?it(b(N,At),ft,At+"",N,F,lt):void 0;Gt===void 0&&(Gt=ft),h(N,At,Gt)}},A)}s.exports=P}),Is=p((i,s)=>{function o(h){return h}s.exports=o}),Ka=p((i,s)=>{function o(h,c,m){switch(m.length){case 0:return h.call(c);case 1:return h.call(c,m[0]);case 2:return h.call(c,m[0],m[1]);case 3:return h.call(c,m[0],m[1],m[2])}return h.apply(c,m)}s.exports=o}),Rs=p((i,s)=>{var o=Ka(),h=Math.max;function c(m,y,A){return y=h(y===void 0?m.length-1:y,0),function(){for(var b=arguments,P=-1,N=h(b.length-y,0),F=Array(N);++P<N;)F[P]=b[y+P];P=-1;for(var tt=Array(y+1);++P<y;)tt[P]=b[P];return tt[y]=A(F),o(m,this,tt)}}s.exports=c}),Wa=p((i,s)=>{function o(h){return function(){return h}}s.exports=o}),Ui=p((i,s)=>{var o=Wa(),h=Sn(),c=Is(),m=h?function(y,A){return h(y,"toString",{configurable:!0,enumerable:!1,value:o(A),writable:!0})}:c;s.exports=m}),Xa=p((i,s)=>{var o=800,h=16,c=Date.now;function m(y){var A=0,b=0;return function(){var P=c(),N=h-(P-b);if(b=P,N>0){if(++A>=o)return arguments[0]}else A=0;return y.apply(void 0,arguments)}}s.exports=m}),vo=p((i,s)=>{var o=Ui(),h=Xa(),c=h(o);s.exports=c}),Mo=p((i,s)=>{var o=Is(),h=Rs(),c=vo();function m(y,A){return c(h(y,A,o),y+"")}s.exports=m}),xo=p((i,s)=>{var o=E(),h=xi(),c=Ha(),m=Et();function y(A,b,P){if(!m(P))return!1;var N=typeof b;return(N=="number"?h(P)&&c(b,P.length):N=="string"&&b in P)?o(P[b],A):!1}s.exports=y}),Lo=p((i,s)=>{var o=Mo(),h=xo();function c(m){return o(function(y,A){var b=-1,P=A.length,N=P>1?A[P-1]:void 0,F=P>2?A[2]:void 0;for(N=m.length>3&&typeof N=="function"?(P--,N):void 0,F&&h(A[0],A[1],F)&&(N=P<3?void 0:N,P=1),y=Object(y);++b<P;){var tt=A[b];tt&&m(y,tt,b,N)}return y})}s.exports=c}),Tn=p((i,s)=>{var o=$a(),h=Lo(),c=h(function(m,y,A){o(m,y,A)});s.exports=c}),Fs=p((i,s)=>{var o=Yt(),h=zi(),c="[object Symbol]";function m(y){return typeof y=="symbol"||h(y)&&o(y)==c}s.exports=m}),Dn=p((i,s)=>{var o=Ni(),h=Fs(),c=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,m=/^\w*$/;function y(A,b){if(o(A))return!1;var P=typeof A;return P=="number"||P=="symbol"||P=="boolean"||A==null||h(A)?!0:m.test(A)||!c.test(A)||b!=null&&A in Object(b)}s.exports=y}),bo=p((i,s)=>{var o=Pa(),h="Expected a function";function c(m,y){if(typeof m!="function"||y!=null&&typeof y!="function")throw new TypeError(h);var A=function(){var b=arguments,P=y?y.apply(this,b):b[0],N=A.cache;if(N.has(P))return N.get(P);var F=m.apply(this,b);return A.cache=N.set(P,F)||N,F};return A.cache=new(c.Cache||o),A}c.Cache=o,s.exports=c}),wo=p((i,s)=>{var o=bo(),h=500;function c(m){var y=o(m,function(b){return A.size===h&&A.clear(),b}),A=y.cache;return y}s.exports=c}),Co=p((i,s)=>{var o=wo(),h=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,c=/\\(\\)?/g,m=o(function(y){var A=[];return y.charCodeAt(0)===46&&A.push(""),y.replace(h,function(b,P,N,F){A.push(N?F.replace(c,"$1"):P||b)}),A});s.exports=m}),Eo=p((i,s)=>{function o(h,c){for(var m=-1,y=h==null?0:h.length,A=Array(y);++m<y;)A[m]=c(h[m],m,h);return A}s.exports=o}),Po=p((i,s)=>{var o=Dt(),h=Eo(),c=Ni(),m=Fs(),y=o?o.prototype:void 0,A=y?y.toString:void 0;function b(P){if(typeof P=="string")return P;if(c(P))return h(P,b)+"";if(m(P))return A?A.call(P):"";var N=P+"";return N=="0"&&1/P==-1/0?"-0":N}s.exports=b}),Gs=p((i,s)=>{var o=Po();function h(c){return c==null?"":o(c)}s.exports=h}),an=p((i,s)=>{var o=Ni(),h=Dn(),c=Co(),m=Gs();function y(A,b){return o(A)?A:h(A,b)?[A]:c(m(A))}s.exports=y}),Ya=p((i,s)=>{var o=Fs();function h(c){if(typeof c=="string"||o(c))return c;var m=c+"";return m=="0"&&1/c==-1/0?"-0":m}s.exports=h}),Ja=p((i,s)=>{var o=an(),h=Ya();function c(m,y){y=o(y,m);for(var A=0,b=y.length;m!=null&&A<b;)m=m[h(y[A++])];return A&&A==b?m:void 0}s.exports=c}),pi=p((i,s)=>{var o=Ja();function h(c,m,y){var A=c==null?void 0:o(c,m);return A===void 0?y:A}s.exports=h}),Nt=p((i,s)=>{(function(o,h){typeof i=="object"&&typeof s<"u"?s.exports=h():(o=o||self).RBush=h()})(i,function(){function o(z,q,K,nt,X){(function et(w,S,O,D,I){for(;D>O;){if(D-O>600){var R=D-O+1,V=S-O+1,H=Math.log(R),$=.5*Math.exp(2*H/3),Q=.5*Math.sqrt(H*$*(R-$)/R)*(V-R/2<0?-1:1),J=Math.max(O,Math.floor(S-V*$/R+Q)),ot=Math.min(D,Math.floor(S+(R-V)*$/R+Q));et(w,S,J,ot,I)}var gt=w[S],vt=O,bt=D;for(h(w,O,S),I(w[D],gt)>0&&h(w,O,D);vt<bt;){for(h(w,vt,bt),vt++,bt--;I(w[vt],gt)<0;)vt++;for(;I(w[bt],gt)>0;)bt--}I(w[O],gt)===0?h(w,O,bt):h(w,++bt,D),bt<=S&&(O=bt+1),S<=bt&&(D=bt-1)}})(z,q,K||0,nt||z.length-1,X||c)}function h(z,q,K){var nt=z[q];z[q]=z[K],z[K]=nt}function c(z,q){return z<q?-1:z>q?1:0}var m=function(z){z===void 0&&(z=9),this._maxEntries=Math.max(4,z),this._minEntries=Math.max(2,Math.ceil(.4*this._maxEntries)),this.clear()};function y(z,q,K){if(!K)return q.indexOf(z);for(var nt=0;nt<q.length;nt++)if(K(z,q[nt]))return nt;return-1}function A(z,q){b(z,0,z.children.length,q,z)}function b(z,q,K,nt,X){X||(X=At(null)),X.minX=1/0,X.minY=1/0,X.maxX=-1/0,X.maxY=-1/0;for(var et=q;et<K;et++){var w=z.children[et];P(X,z.leaf?nt(w):w)}return X}function P(z,q){return z.minX=Math.min(z.minX,q.minX),z.minY=Math.min(z.minY,q.minY),z.maxX=Math.max(z.maxX,q.maxX),z.maxY=Math.max(z.maxY,q.maxY),z}function N(z,q){return z.minX-q.minX}function F(z,q){return z.minY-q.minY}function tt(z){return(z.maxX-z.minX)*(z.maxY-z.minY)}function it(z){return z.maxX-z.minX+(z.maxY-z.minY)}function lt(z,q){return z.minX<=q.minX&&z.minY<=q.minY&&q.maxX<=z.maxX&&q.maxY<=z.maxY}function ft(z,q){return q.minX<=z.maxX&&q.minY<=z.maxY&&q.maxX>=z.minX&&q.maxY>=z.minY}function At(z){return{children:z,height:1,leaf:!0,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}}function Gt(z,q,K,nt,X){for(var et=[q,K];et.length;)if(!((K=et.pop())-(q=et.pop())<=nt)){var w=q+Math.ceil((K-q)/nt/2)*nt;o(z,w,q,K,X),et.push(q,w,w,K)}}return m.prototype.all=function(){return this._all(this.data,[])},m.prototype.search=function(z){var q=this.data,K=[];if(!ft(z,q))return K;for(var nt=this.toBBox,X=[];q;){for(var et=0;et<q.children.length;et++){var w=q.children[et],S=q.leaf?nt(w):w;ft(z,S)&&(q.leaf?K.push(w):lt(z,S)?this._all(w,K):X.push(w))}q=X.pop()}return K},m.prototype.collides=function(z){var q=this.data;if(!ft(z,q))return!1;for(var K=[];q;){for(var nt=0;nt<q.children.length;nt++){var X=q.children[nt],et=q.leaf?this.toBBox(X):X;if(ft(z,et)){if(q.leaf||lt(z,et))return!0;K.push(X)}}q=K.pop()}return!1},m.prototype.load=function(z){if(!z||!z.length)return this;if(z.length<this._minEntries){for(var q=0;q<z.length;q++)this.insert(z[q]);return this}var K=this._build(z.slice(),0,z.length-1,0);if(this.data.children.length)if(this.data.height===K.height)this._splitRoot(this.data,K);else{if(this.data.height<K.height){var nt=this.data;this.data=K,K=nt}this._insert(K,this.data.height-K.height-1,!0)}else this.data=K;return this},m.prototype.insert=function(z){return z&&this._insert(z,this.data.height-1),this},m.prototype.clear=function(){return this.data=At([]),this},m.prototype.remove=function(z,q){if(!z)return this;for(var K,nt,X,et=this.data,w=this.toBBox(z),S=[],O=[];et||S.length;){if(et||(et=S.pop(),nt=S[S.length-1],K=O.pop(),X=!0),et.leaf){var D=y(z,et.children,q);if(D!==-1)return et.children.splice(D,1),S.push(et),this._condense(S),this}X||et.leaf||!lt(et,w)?nt?(K++,et=nt.children[K],X=!1):et=null:(S.push(et),O.push(K),K=0,nt=et,et=et.children[0])}return this},m.prototype.toBBox=function(z){return z},m.prototype.compareMinX=function(z,q){return z.minX-q.minX},m.prototype.compareMinY=function(z,q){return z.minY-q.minY},m.prototype.toJSON=function(){return this.data},m.prototype.fromJSON=function(z){return this.data=z,this},m.prototype._all=function(z,q){for(var K=[];z;)z.leaf?q.push.apply(q,z.children):K.push.apply(K,z.children),z=K.pop();return q},m.prototype._build=function(z,q,K,nt){var X,et=K-q+1,w=this._maxEntries;if(et<=w)return A(X=At(z.slice(q,K+1)),this.toBBox),X;nt||(nt=Math.ceil(Math.log(et)/Math.log(w)),w=Math.ceil(et/Math.pow(w,nt-1))),(X=At([])).leaf=!1,X.height=nt;var S=Math.ceil(et/w),O=S*Math.ceil(Math.sqrt(w));Gt(z,q,K,O,this.compareMinX);for(var D=q;D<=K;D+=O){var I=Math.min(D+O-1,K);Gt(z,D,I,S,this.compareMinY);for(var R=D;R<=I;R+=S){var V=Math.min(R+S-1,I);X.children.push(this._build(z,R,V,nt-1))}}return A(X,this.toBBox),X},m.prototype._chooseSubtree=function(z,q,K,nt){for(;nt.push(q),!q.leaf&&nt.length-1!==K;){for(var X=1/0,et=1/0,w=void 0,S=0;S<q.children.length;S++){var O=q.children[S],D=tt(O),I=(R=z,V=O,(Math.max(V.maxX,R.maxX)-Math.min(V.minX,R.minX))*(Math.max(V.maxY,R.maxY)-Math.min(V.minY,R.minY))-D);I<et?(et=I,X=D<X?D:X,w=O):I===et&&D<X&&(X=D,w=O)}q=w||q.children[0]}var R,V;return q},m.prototype._insert=function(z,q,K){var nt=K?z:this.toBBox(z),X=[],et=this._chooseSubtree(nt,this.data,q,X);for(et.children.push(z),P(et,nt);q>=0&&X[q].children.length>this._maxEntries;)this._split(X,q),q--;this._adjustParentBBoxes(nt,X,q)},m.prototype._split=function(z,q){var K=z[q],nt=K.children.length,X=this._minEntries;this._chooseSplitAxis(K,X,nt);var et=this._chooseSplitIndex(K,X,nt),w=At(K.children.splice(et,K.children.length-et));w.height=K.height,w.leaf=K.leaf,A(K,this.toBBox),A(w,this.toBBox),q?z[q-1].children.push(w):this._splitRoot(K,w)},m.prototype._splitRoot=function(z,q){this.data=At([z,q]),this.data.height=z.height+1,this.data.leaf=!1,A(this.data,this.toBBox)},m.prototype._chooseSplitIndex=function(z,q,K){for(var nt,X,et,w,S,O,D,I=1/0,R=1/0,V=q;V<=K-q;V++){var H=b(z,0,V,this.toBBox),$=b(z,V,K,this.toBBox),Q=(X=H,et=$,w=void 0,S=void 0,O=void 0,D=void 0,w=Math.max(X.minX,et.minX),S=Math.max(X.minY,et.minY),O=Math.min(X.maxX,et.maxX),D=Math.min(X.maxY,et.maxY),Math.max(0,O-w)*Math.max(0,D-S)),J=tt(H)+tt($);Q<I?(I=Q,nt=V,R=J<R?J:R):Q===I&&J<R&&(R=J,nt=V)}return nt||K-q},m.prototype._chooseSplitAxis=function(z,q,K){var nt=z.leaf?this.compareMinX:N,X=z.leaf?this.compareMinY:F;this._allDistMargin(z,q,K,nt)<this._allDistMargin(z,q,K,X)&&z.children.sort(nt)},m.prototype._allDistMargin=function(z,q,K,nt){z.children.sort(nt);for(var X=this.toBBox,et=b(z,0,q,X),w=b(z,K-q,K,X),S=it(et)+it(w),O=q;O<K-q;O++){var D=z.children[O];P(et,z.leaf?X(D):D),S+=it(et)}for(var I=K-q-1;I>=q;I--){var R=z.children[I];P(w,z.leaf?X(R):R),S+=it(w)}return S},m.prototype._adjustParentBBoxes=function(z,q,K){for(var nt=K;nt>=0;nt--)P(q[nt],z)},m.prototype._condense=function(z){for(var q=z.length-1,K=void 0;q>=0;q--)z[q].children.length===0?q>0?(K=z[q-1].children).splice(K.indexOf(z[q]),1):this.clear():A(z[q],this.toBBox)},m})}),Qt=p(i=>{Object.defineProperty(i,"__esModule",{value:!0}),i.earthRadius=63710088e-1,i.factors={centimeters:i.earthRadius*100,centimetres:i.earthRadius*100,degrees:i.earthRadius/111325,feet:i.earthRadius*3.28084,inches:i.earthRadius*39.37,kilometers:i.earthRadius/1e3,kilometres:i.earthRadius/1e3,meters:i.earthRadius,metres:i.earthRadius,miles:i.earthRadius/1609.344,millimeters:i.earthRadius*1e3,millimetres:i.earthRadius*1e3,nauticalmiles:i.earthRadius/1852,radians:1,yards:i.earthRadius*1.0936},i.unitsFactors={centimeters:100,centimetres:100,degrees:1/111325,feet:3.28084,inches:39.37,kilometers:1/1e3,kilometres:1/1e3,meters:1,metres:1,miles:1/1609.344,millimeters:1e3,millimetres:1e3,nauticalmiles:1/1852,radians:1/i.earthRadius,yards:1.0936133},i.areaFactors={acres:247105e-9,centimeters:1e4,centimetres:1e4,feet:10.763910417,hectares:1e-4,inches:1550.003100006,kilometers:1e-6,kilometres:1e-6,meters:1,metres:1,miles:386e-9,millimeters:1e6,millimetres:1e6,yards:1.195990046};function s(D,I,R){R===void 0&&(R={});var V={type:"Feature"};return(R.id===0||R.id)&&(V.id=R.id),R.bbox&&(V.bbox=R.bbox),V.properties=I||{},V.geometry=D,V}i.feature=s;function o(D,I,R){switch(D){case"Point":return h(I).geometry;case"LineString":return A(I).geometry;case"Polygon":return m(I).geometry;case"MultiPoint":return F(I).geometry;case"MultiLineString":return N(I).geometry;case"MultiPolygon":return tt(I).geometry;default:throw new Error(D+" is invalid")}}i.geometry=o;function h(D,I,R){if(R===void 0&&(R={}),!D)throw new Error("coordinates is required");if(!Array.isArray(D))throw new Error("coordinates must be an Array");if(D.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!et(D[0])||!et(D[1]))throw new Error("coordinates must contain numbers");var V={type:"Point",coordinates:D};return s(V,I,R)}i.point=h;function c(D,I,R){return R===void 0&&(R={}),P(D.map(function(V){return h(V,I)}),R)}i.points=c;function m(D,I,R){R===void 0&&(R={});for(var V=0,H=D;V<H.length;V++){var $=H[V];if($.length<4)throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");for(var Q=0;Q<$[$.length-1].length;Q++)if($[$.length-1][Q]!==$[0][Q])throw new Error("First and last Position are not equivalent.")}var J={type:"Polygon",coordinates:D};return s(J,I,R)}i.polygon=m;function y(D,I,R){return R===void 0&&(R={}),P(D.map(function(V){return m(V,I)}),R)}i.polygons=y;function A(D,I,R){if(R===void 0&&(R={}),D.length<2)throw new Error("coordinates must be an array of two or more positions");var V={type:"LineString",coordinates:D};return s(V,I,R)}i.lineString=A;function b(D,I,R){return R===void 0&&(R={}),P(D.map(function(V){return A(V,I)}),R)}i.lineStrings=b;function P(D,I){I===void 0&&(I={});var R={type:"FeatureCollection"};return I.id&&(R.id=I.id),I.bbox&&(R.bbox=I.bbox),R.features=D,R}i.featureCollection=P;function N(D,I,R){R===void 0&&(R={});var V={type:"MultiLineString",coordinates:D};return s(V,I,R)}i.multiLineString=N;function F(D,I,R){R===void 0&&(R={});var V={type:"MultiPoint",coordinates:D};return s(V,I,R)}i.multiPoint=F;function tt(D,I,R){R===void 0&&(R={});var V={type:"MultiPolygon",coordinates:D};return s(V,I,R)}i.multiPolygon=tt;function it(D,I,R){R===void 0&&(R={});var V={type:"GeometryCollection",geometries:D};return s(V,I,R)}i.geometryCollection=it;function lt(D,I){if(I===void 0&&(I=0),I&&!(I>=0))throw new Error("precision must be a positive number");var R=Math.pow(10,I||0);return Math.round(D*R)/R}i.round=lt;function ft(D,I){I===void 0&&(I="kilometers");var R=i.factors[I];if(!R)throw new Error(I+" units is invalid");return D*R}i.radiansToLength=ft;function At(D,I){I===void 0&&(I="kilometers");var R=i.factors[I];if(!R)throw new Error(I+" units is invalid");return D/R}i.lengthToRadians=At;function Gt(D,I){return q(At(D,I))}i.lengthToDegrees=Gt;function z(D){var I=D%360;return I<0&&(I+=360),I}i.bearingToAzimuth=z;function q(D){var I=D%(2*Math.PI);return I*180/Math.PI}i.radiansToDegrees=q;function K(D){var I=D%360;return I*Math.PI/180}i.degreesToRadians=K;function nt(D,I,R){if(I===void 0&&(I="kilometers"),R===void 0&&(R="kilometers"),!(D>=0))throw new Error("length must be a positive number");return ft(At(D,I),R)}i.convertLength=nt;function X(D,I,R){if(I===void 0&&(I="meters"),R===void 0&&(R="kilometers"),!(D>=0))throw new Error("area must be a positive number");var V=i.areaFactors[I];if(!V)throw new Error("invalid original units");var H=i.areaFactors[R];if(!H)throw new Error("invalid final units");return D/V*H}i.convertArea=X;function et(D){return!isNaN(D)&&D!==null&&!Array.isArray(D)}i.isNumber=et;function w(D){return!!D&&D.constructor===Object}i.isObject=w;function S(D){if(!D)throw new Error("bbox is required");if(!Array.isArray(D))throw new Error("bbox must be an Array");if(D.length!==4&&D.length!==6)throw new Error("bbox must be an Array of 4 or 6 numbers");D.forEach(function(I){if(!et(I))throw new Error("bbox must only contain numbers")})}i.validateBBox=S;function O(D){if(!D)throw new Error("id is required");if(["string","number"].indexOf(typeof D)===-1)throw new Error("id must be a number or a string")}i.validateId=O}),rn=p(i=>{Object.defineProperty(i,"__esModule",{value:!0});var s=Qt();function o(q,K,nt){if(q!==null)for(var X,et,w,S,O,D,I,R=0,V=0,H,$=q.type,Q=$==="FeatureCollection",J=$==="Feature",ot=Q?q.features.length:1,gt=0;gt<ot;gt++){I=Q?q.features[gt].geometry:J?q.geometry:q,H=I?I.type==="GeometryCollection":!1,O=H?I.geometries.length:1;for(var vt=0;vt<O;vt++){var bt=0,Vt=0;if(S=H?I.geometries[vt]:I,S!==null){D=S.coordinates;var Wt=S.type;switch(R=nt&&(Wt==="Polygon"||Wt==="MultiPolygon")?1:0,Wt){case null:break;case"Point":if(K(D,V,gt,bt,Vt)===!1)return!1;V++,bt++;break;case"LineString":case"MultiPoint":for(X=0;X<D.length;X++){if(K(D[X],V,gt,bt,Vt)===!1)return!1;V++,Wt==="MultiPoint"&&bt++}Wt==="LineString"&&bt++;break;case"Polygon":case"MultiLineString":for(X=0;X<D.length;X++){for(et=0;et<D[X].length-R;et++){if(K(D[X][et],V,gt,bt,Vt)===!1)return!1;V++}Wt==="MultiLineString"&&bt++,Wt==="Polygon"&&Vt++}Wt==="Polygon"&&bt++;break;case"MultiPolygon":for(X=0;X<D.length;X++){for(Vt=0,et=0;et<D[X].length;et++){for(w=0;w<D[X][et].length-R;w++){if(K(D[X][et][w],V,gt,bt,Vt)===!1)return!1;V++}Vt++}bt++}break;case"GeometryCollection":for(X=0;X<S.geometries.length;X++)if(o(S.geometries[X],K,nt)===!1)return!1;break;default:throw new Error("Unknown Geometry Type")}}}}}function h(q,K,nt,X){var et=nt;return o(q,function(w,S,O,D,I){S===0&&nt===void 0?et=w:et=K(et,w,S,O,D,I)},X),et}function c(q,K){var nt;switch(q.type){case"FeatureCollection":for(nt=0;nt<q.features.length&&K(q.features[nt].properties,nt)!==!1;nt++);break;case"Feature":K(q.properties,0);break}}function m(q,K,nt){var X=nt;return c(q,function(et,w){w===0&&nt===void 0?X=et:X=K(X,et,w)}),X}function y(q,K){if(q.type==="Feature")K(q,0);else if(q.type==="FeatureCollection")for(var nt=0;nt<q.features.length&&K(q.features[nt],nt)!==!1;nt++);}function A(q,K,nt){var X=nt;return y(q,function(et,w){w===0&&nt===void 0?X=et:X=K(X,et,w)}),X}function b(q){var K=[];return o(q,function(nt){K.push(nt)}),K}function P(q,K){var nt,X,et,w,S,O,D,I,R,V,H=0,$=q.type==="FeatureCollection",Q=q.type==="Feature",J=$?q.features.length:1;for(nt=0;nt<J;nt++){for(O=$?q.features[nt].geometry:Q?q.geometry:q,I=$?q.features[nt].properties:Q?q.properties:{},R=$?q.features[nt].bbox:Q?q.bbox:void 0,V=$?q.features[nt].id:Q?q.id:void 0,D=O?O.type==="GeometryCollection":!1,S=D?O.geometries.length:1,et=0;et<S;et++){if(w=D?O.geometries[et]:O,w===null){if(K(null,H,I,R,V)===!1)return!1;continue}switch(w.type){case"Point":case"LineString":case"MultiPoint":case"Polygon":case"MultiLineString":case"MultiPolygon":{if(K(w,H,I,R,V)===!1)return!1;break}case"GeometryCollection":{for(X=0;X<w.geometries.length;X++)if(K(w.geometries[X],H,I,R,V)===!1)return!1;break}default:throw new Error("Unknown Geometry Type")}}H++}}function N(q,K,nt){var X=nt;return P(q,function(et,w,S,O,D){w===0&&nt===void 0?X=et:X=K(X,et,w,S,O,D)}),X}function F(q,K){P(q,function(nt,X,et,w,S){var O=nt===null?null:nt.type;switch(O){case null:case"Point":case"LineString":case"Polygon":return K(s.feature(nt,et,{bbox:w,id:S}),X,0)===!1?!1:void 0}var D;switch(O){case"MultiPoint":D="Point";break;case"MultiLineString":D="LineString";break;case"MultiPolygon":D="Polygon";break}for(var I=0;I<nt.coordinates.length;I++){var R=nt.coordinates[I],V={type:D,coordinates:R};if(K(s.feature(V,et),X,I)===!1)return!1}})}function tt(q,K,nt){var X=nt;return F(q,function(et,w,S){w===0&&S===0&&nt===void 0?X=et:X=K(X,et,w,S)}),X}function it(q,K){F(q,function(nt,X,et){var w=0;if(nt.geometry){var S=nt.geometry.type;if(!(S==="Point"||S==="MultiPoint")){var O,D=0,I=0,R=0;if(o(nt,function(V,H,$,Q,J){if(O===void 0||X>D||Q>I||J>R){O=V,D=X,I=Q,R=J,w=0;return}var ot=s.lineString([O,V],nt.properties);if(K(ot,X,et,J,w)===!1)return!1;w++,O=V})===!1)return!1}}})}function lt(q,K,nt){var X=nt,et=!1;return it(q,function(w,S,O,D,I){et===!1&&nt===void 0?X=w:X=K(X,w,S,O,D,I),et=!0}),X}function ft(q,K){if(!q)throw new Error("geojson is required");F(q,function(nt,X,et){if(nt.geometry!==null){var w=nt.geometry.type,S=nt.geometry.coordinates;switch(w){case"LineString":if(K(nt,X,et,0,0)===!1)return!1;break;case"Polygon":for(var O=0;O<S.length;O++)if(K(s.lineString(S[O],nt.properties),X,et,O)===!1)return!1;break}}})}function At(q,K,nt){var X=nt;return ft(q,function(et,w,S,O){w===0&&nt===void 0?X=et:X=K(X,et,w,S,O)}),X}function Gt(q,K){if(K=K||{},!s.isObject(K))throw new Error("options is invalid");var nt=K.featureIndex||0,X=K.multiFeatureIndex||0,et=K.geometryIndex||0,w=K.segmentIndex||0,S=K.properties,O;switch(q.type){case"FeatureCollection":nt<0&&(nt=q.features.length+nt),S=S||q.features[nt].properties,O=q.features[nt].geometry;break;case"Feature":S=S||q.properties,O=q.geometry;break;case"Point":case"MultiPoint":return null;case"LineString":case"Polygon":case"MultiLineString":case"MultiPolygon":O=q;break;default:throw new Error("geojson is invalid")}if(O===null)return null;var D=O.coordinates;switch(O.type){case"Point":case"MultiPoint":return null;case"LineString":return w<0&&(w=D.length+w-1),s.lineString([D[w],D[w+1]],S,K);case"Polygon":return et<0&&(et=D.length+et),w<0&&(w=D[et].length+w-1),s.lineString([D[et][w],D[et][w+1]],S,K);case"MultiLineString":return X<0&&(X=D.length+X),w<0&&(w=D[X].length+w-1),s.lineString([D[X][w],D[X][w+1]],S,K);case"MultiPolygon":return X<0&&(X=D.length+X),et<0&&(et=D[X].length+et),w<0&&(w=D[X][et].length-w-1),s.lineString([D[X][et][w],D[X][et][w+1]],S,K)}throw new Error("geojson is invalid")}function z(q,K){if(K=K||{},!s.isObject(K))throw new Error("options is invalid");var nt=K.featureIndex||0,X=K.multiFeatureIndex||0,et=K.geometryIndex||0,w=K.coordIndex||0,S=K.properties,O;switch(q.type){case"FeatureCollection":nt<0&&(nt=q.features.length+nt),S=S||q.features[nt].properties,O=q.features[nt].geometry;break;case"Feature":S=S||q.properties,O=q.geometry;break;case"Point":case"MultiPoint":return null;case"LineString":case"Polygon":case"MultiLineString":case"MultiPolygon":O=q;break;default:throw new Error("geojson is invalid")}if(O===null)return null;var D=O.coordinates;switch(O.type){case"Point":return s.point(D,S,K);case"MultiPoint":return X<0&&(X=D.length+X),s.point(D[X],S,K);case"LineString":return w<0&&(w=D.length+w),s.point(D[w],S,K);case"Polygon":return et<0&&(et=D.length+et),w<0&&(w=D[et].length+w),s.point(D[et][w],S,K);case"MultiLineString":return X<0&&(X=D.length+X),w<0&&(w=D[X].length+w),s.point(D[X][w],S,K);case"MultiPolygon":return X<0&&(X=D.length+X),et<0&&(et=D[X].length+et),w<0&&(w=D[X][et].length-w),s.point(D[X][et][w],S,K)}throw new Error("geojson is invalid")}i.coordAll=b,i.coordEach=o,i.coordReduce=h,i.featureEach=y,i.featureReduce=A,i.findPoint=z,i.findSegment=Gt,i.flattenEach=F,i.flattenReduce=tt,i.geomEach=P,i.geomReduce=N,i.lineEach=ft,i.lineReduce=At,i.propEach=c,i.propReduce=m,i.segmentEach=it,i.segmentReduce=lt}),ji=p(i=>{Object.defineProperty(i,"__esModule",{value:!0});var s=rn();function o(h){var c=[1/0,1/0,-1/0,-1/0];return s.coordEach(h,function(m){c[0]>m[0]&&(c[0]=m[0]),c[1]>m[1]&&(c[1]=m[1]),c[2]<m[0]&&(c[2]=m[0]),c[3]<m[1]&&(c[3]=m[1])}),c}o.default=o,i.default=o}),Li=p((i,s)=>{var o=Nt(),h=Qt(),c=rn(),m=ji().default,y=c.featureEach;c.coordEach,h.polygon;var A=h.featureCollection;function b(P){var N=new o(P);return N.insert=function(F){if(F.type!=="Feature")throw new Error("invalid feature");return F.bbox=F.bbox?F.bbox:m(F),o.prototype.insert.call(this,F)},N.load=function(F){var tt=[];return Array.isArray(F)?F.forEach(function(it){if(it.type!=="Feature")throw new Error("invalid features");it.bbox=it.bbox?it.bbox:m(it),tt.push(it)}):y(F,function(it){if(it.type!=="Feature")throw new Error("invalid features");it.bbox=it.bbox?it.bbox:m(it),tt.push(it)}),o.prototype.load.call(this,tt)},N.remove=function(F,tt){if(F.type!=="Feature")throw new Error("invalid feature");return F.bbox=F.bbox?F.bbox:m(F),o.prototype.remove.call(this,F,tt)},N.clear=function(){return o.prototype.clear.call(this)},N.search=function(F){var tt=o.prototype.search.call(this,this.toBBox(F));return A(tt)},N.collides=function(F){return o.prototype.collides.call(this,this.toBBox(F))},N.all=function(){var F=o.prototype.all.call(this);return A(F)},N.toJSON=function(){return o.prototype.toJSON.call(this)},N.fromJSON=function(F){return o.prototype.fromJSON.call(this,F)},N.toBBox=function(F){var tt;if(F.bbox)tt=F.bbox;else if(Array.isArray(F)&&F.length===4)tt=F;else if(Array.isArray(F)&&F.length===6)tt=[F[0],F[1],F[3],F[4]];else if(F.type==="Feature")tt=m(F);else if(F.type==="FeatureCollection")tt=m(F);else throw new Error("invalid geojson");return{minX:tt[0],minY:tt[1],maxX:tt[2],maxY:tt[3]}},N}s.exports=b,s.exports.default=b});Array.prototype.findIndex=Array.prototype.findIndex||function(i){if(this===null)throw new TypeError("Array.prototype.findIndex called on null or undefined");if(typeof i!="function")throw new TypeError("callback must be a function");for(var s=Object(this),o=s.length>>>0,h=arguments[1],c=0;c<o;c++)if(i.call(h,s[c],c,s))return c;return-1},Array.prototype.find=Array.prototype.find||function(i){if(this===null)throw new TypeError("Array.prototype.find called on null or undefined");if(typeof i!="function")throw new TypeError("callback must be a function");for(var s=Object(this),o=s.length>>>0,h=arguments[1],c=0;c<o;c++){var m=s[c];if(i.call(h,m,c,s))return m}},typeof Object.assign!="function"&&(Object.assign=function(i){if(i==null)throw new TypeError("Cannot convert undefined or null to object");i=Object(i);for(var s=1;s<arguments.length;s++){var o=arguments[s];if(o!=null)for(var h in o)Object.prototype.hasOwnProperty.call(o,h)&&(i[h]=o[h])}return i}),function(i){i.forEach(function(s){s.hasOwnProperty("remove")||Object.defineProperty(s,"remove",{configurable:!0,enumerable:!0,writable:!0,value:function(){this.parentNode.removeChild(this)}})})}([Element.prototype,CharacterData.prototype,DocumentType.prototype]),Array.prototype.includes||Object.defineProperty(Array.prototype,"includes",{value:function(i,s){if(this==null)throw new TypeError('"this" is null or not defined');var o=Object(this),h=o.length>>>0;if(h===0)return!1;var c=s|0,m=Math.max(c>=0?c:h-Math.abs(c),0);function y(A,b){return A===b||typeof A=="number"&&typeof b=="number"&&isNaN(A)&&isNaN(b)}for(;m<h;){if(y(o[m],i))return!0;m++}return!1}});var zs={version:"2.18.3"},Tt=M(Tn()),ne={tooltips:{placeMarker:"Click to place marker",firstVertex:"Click to place first vertex",continueLine:"Click to continue drawing",finishLine:"Click any existing marker to finish",finishPoly:"Click first marker to finish",finishRect:"Click to finish",startCircle:"Click to place circle center",finishCircle:"Click to finish circle",placeCircleMarker:"Click to place circle marker",placeText:"Click to place text",selectFirstLayerFor:"Select first layer for {action}",selectSecondLayerFor:"Select second layer for {action}"},actions:{finish:"Finish",cancel:"Cancel",removeLastVertex:"Remove Last Vertex"},buttonTitles:{drawMarkerButton:"Draw Marker",drawPolyButton:"Draw Polygons",drawLineButton:"Draw Polyline",drawCircleButton:"Draw Circle",drawRectButton:"Draw Rectangle",editButton:"Edit Layers",dragButton:"Drag Layers",cutButton:"Cut Layers",deleteButton:"Remove Layers",drawCircleMarkerButton:"Draw Circle Marker",snappingButton:"Snap dragged marker to other layers and vertices",pinningButton:"Pin shared vertices together",rotateButton:"Rotate Layers",drawTextButton:"Draw Text",scaleButton:"Scale Layers",autoTracingButton:"Auto trace Line",snapGuidesButton:"Show SnapGuides",unionButton:"Union layers",differenceButton:"Subtract layers"},measurements:{totalLength:"Length",segmentLength:"Segment length",area:"Area",radius:"Radius",perimeter:"Perimeter",height:"Height",width:"Width",coordinates:"Position",coordinatesMarker:"Position Marker"}},Ns={tooltips:{placeMarker:"Platziere den Marker mit Klick",firstVertex:"Platziere den ersten Marker mit Klick",continueLine:"Klicke, um weiter zu zeichnen",finishLine:"Beende mit Klick auf existierenden Marker",finishPoly:"Beende mit Klick auf ersten Marker",finishRect:"Beende mit Klick",startCircle:"Platziere das Kreiszentrum mit Klick",finishCircle:"Beende den Kreis mit Klick",placeCircleMarker:"Platziere den Kreismarker mit Klick",placeText:"Platziere den Text mit Klick"},actions:{finish:"Beenden",cancel:"Abbrechen",removeLastVertex:"Letzten Vertex löschen"},buttonTitles:{drawMarkerButton:"Marker zeichnen",drawPolyButton:"Polygon zeichnen",drawLineButton:"Polyline zeichnen",drawCircleButton:"Kreis zeichnen",drawRectButton:"Rechteck zeichnen",editButton:"Layer editieren",dragButton:"Layer bewegen",cutButton:"Layer schneiden",deleteButton:"Layer löschen",drawCircleMarkerButton:"Kreismarker zeichnen",snappingButton:"Bewegter Layer an andere Layer oder Vertexe einhacken",pinningButton:"Vertexe an der gleichen Position verknüpfen",rotateButton:"Layer drehen",drawTextButton:"Text zeichnen",scaleButton:"Layer skalieren",autoTracingButton:"Linie automatisch nachzeichen"},measurements:{totalLength:"Länge",segmentLength:"Segment Länge",area:"Fläche",radius:"Radius",perimeter:"Umfang",height:"Höhe",width:"Breite",coordinates:"Position",coordinatesMarker:"Position Marker"}},On={tooltips:{placeMarker:"Clicca per posizionare un Marker",firstVertex:"Clicca per posizionare il primo vertice",continueLine:"Clicca per continuare a disegnare",finishLine:"Clicca qualsiasi marker esistente per terminare",finishPoly:"Clicca il primo marker per terminare",finishRect:"Clicca per terminare",startCircle:"Clicca per posizionare il punto centrale del cerchio",finishCircle:"Clicca per terminare il cerchio",placeCircleMarker:"Clicca per posizionare un Marker del cherchio"},actions:{finish:"Termina",cancel:"Annulla",removeLastVertex:"Rimuovi l'ultimo vertice"},buttonTitles:{drawMarkerButton:"Disegna Marker",drawPolyButton:"Disegna Poligoni",drawLineButton:"Disegna Polilinea",drawCircleButton:"Disegna Cerchio",drawRectButton:"Disegna Rettangolo",editButton:"Modifica Livelli",dragButton:"Sposta Livelli",cutButton:"Ritaglia Livelli",deleteButton:"Elimina Livelli",drawCircleMarkerButton:"Disegna Marker del Cerchio",snappingButton:"Snap ha trascinato il pennarello su altri strati e vertici",pinningButton:"Pin condiviso vertici insieme",rotateButton:"Ruota livello"}},Ne={tooltips:{placeMarker:"Klik untuk menempatkan marker",firstVertex:"Klik untuk menempatkan vertex pertama",continueLine:"Klik untuk meneruskan digitasi",finishLine:"Klik pada sembarang marker yang ada untuk mengakhiri",finishPoly:"Klik marker pertama untuk mengakhiri",finishRect:"Klik untuk mengakhiri",startCircle:"Klik untuk menempatkan titik pusat lingkaran",finishCircle:"Klik untuk mengakhiri lingkaran",placeCircleMarker:"Klik untuk menempatkan penanda lingkarann"},actions:{finish:"Selesai",cancel:"Batal",removeLastVertex:"Hilangkan Vertex Terakhir"},buttonTitles:{drawMarkerButton:"Digitasi Marker",drawPolyButton:"Digitasi Polygon",drawLineButton:"Digitasi Polyline",drawCircleButton:"Digitasi Lingkaran",drawRectButton:"Digitasi Segi Empat",editButton:"Edit Layer",dragButton:"Geser Layer",cutButton:"Potong Layer",deleteButton:"Hilangkan Layer",drawCircleMarkerButton:"Digitasi Penanda Lingkaran",snappingButton:"Jepretkan penanda yang ditarik ke lapisan dan simpul lain",pinningButton:"Sematkan simpul bersama bersama",rotateButton:"Putar lapisan"}},ko={tooltips:{placeMarker:"Adaugă un punct",firstVertex:"Apasă aici pentru a adăuga primul Vertex",continueLine:"Apasă aici pentru a continua desenul",finishLine:"Apasă pe orice obiect pentru a finisa desenul",finishPoly:"Apasă pe primul obiect pentru a finisa",finishRect:"Apasă pentru a finisa",startCircle:"Apasă pentru a desena un cerc",finishCircle:"Apasă pentru a finisa un cerc",placeCircleMarker:"Adaugă un punct"},actions:{finish:"Termină",cancel:"Anulează",removeLastVertex:"Șterge ultimul Vertex"},buttonTitles:{drawMarkerButton:"Adaugă o bulină",drawPolyButton:"Desenează un poligon",drawLineButton:"Desenează o linie",drawCircleButton:"Desenează un cerc",drawRectButton:"Desenează un dreptunghi",editButton:"Editează straturile",dragButton:"Mută straturile",cutButton:"Taie straturile",deleteButton:"Șterge straturile",drawCircleMarkerButton:"Desenează marcatorul cercului",snappingButton:"Fixați marcatorul glisat pe alte straturi și vârfuri",pinningButton:"Fixați vârfurile partajate împreună",rotateButton:"Rotiți stratul"}},In={tooltips:{placeMarker:"Нажмите, чтобы нанести маркер",firstVertex:"Нажмите, чтобы нанести первый объект",continueLine:"Нажмите, чтобы продолжить рисование",finishLine:"Нажмите любой существующий маркер для завершения",finishPoly:"Выберите первую точку, чтобы закончить",finishRect:"Нажмите, чтобы закончить",startCircle:"Нажмите, чтобы добавить центр круга",finishCircle:"Нажмите, чтобы задать радиус",placeCircleMarker:"Нажмите, чтобы нанести круговой маркер"},actions:{finish:"Завершить",cancel:"Отменить",removeLastVertex:"Отменить последнее действие"},buttonTitles:{drawMarkerButton:"Добавить маркер",drawPolyButton:"Рисовать полигон",drawLineButton:"Рисовать кривую",drawCircleButton:"Рисовать круг",drawRectButton:"Рисовать прямоугольник",editButton:"Редактировать слой",dragButton:"Перенести слой",cutButton:"Вырезать слой",deleteButton:"Удалить слой",drawCircleMarkerButton:"Добавить круговой маркер",snappingButton:"Привязать перетаскиваемый маркер к другим слоям и вершинам",pinningButton:"Связать общие точки вместе",rotateButton:"Поворот слоя"}},bi={tooltips:{placeMarker:"Presiona para colocar un marcador",firstVertex:"Presiona para colocar el primer vértice",continueLine:"Presiona para continuar dibujando",finishLine:"Presiona cualquier marcador existente para finalizar",finishPoly:"Presiona el primer marcador para finalizar",finishRect:"Presiona para finalizar",startCircle:"Presiona para colocar el centro del círculo",finishCircle:"Presiona para finalizar el círculo",placeCircleMarker:"Presiona para colocar un marcador de círculo"},actions:{finish:"Finalizar",cancel:"Cancelar",removeLastVertex:"Eliminar último vértice"},buttonTitles:{drawMarkerButton:"Dibujar Marcador",drawPolyButton:"Dibujar Polígono",drawLineButton:"Dibujar Línea",drawCircleButton:"Dibujar Círculo",drawRectButton:"Dibujar Rectángulo",editButton:"Editar Capas",dragButton:"Arrastrar Capas",cutButton:"Cortar Capas",deleteButton:"Eliminar Capas",drawCircleMarkerButton:"Dibujar Marcador de Círculo",snappingButton:"El marcador de Snap arrastrado a otras capas y vértices",pinningButton:"Fijar juntos los vértices compartidos",rotateButton:"Rotar capa"}},re={tooltips:{placeMarker:"Klik om een marker te plaatsen",firstVertex:"Klik om het eerste punt te plaatsen",continueLine:"Klik om te blijven tekenen",finishLine:"Klik op een bestaand punt om te beëindigen",finishPoly:"Klik op het eerst punt om te beëindigen",finishRect:"Klik om te beëindigen",startCircle:"Klik om het middelpunt te plaatsen",finishCircle:"Klik om de cirkel te beëindigen",placeCircleMarker:"Klik om een marker te plaatsen"},actions:{finish:"Bewaar",cancel:"Annuleer",removeLastVertex:"Verwijder laatste punt"},buttonTitles:{drawMarkerButton:"Plaats Marker",drawPolyButton:"Teken een vlak",drawLineButton:"Teken een lijn",drawCircleButton:"Teken een cirkel",drawRectButton:"Teken een vierkant",editButton:"Bewerk",dragButton:"Verplaats",cutButton:"Knip",deleteButton:"Verwijder",drawCircleMarkerButton:"Plaats Marker",snappingButton:"Snap gesleepte marker naar andere lagen en hoekpunten",pinningButton:"Speld gedeelde hoekpunten samen",rotateButton:"Laag roteren"}},wi={tooltips:{placeMarker:"Cliquez pour placer un marqueur",firstVertex:"Cliquez pour placer le premier sommet",continueLine:"Cliquez pour continuer à dessiner",finishLine:"Cliquez sur n'importe quel marqueur pour terminer",finishPoly:"Cliquez sur le premier marqueur pour terminer",finishRect:"Cliquez pour terminer",startCircle:"Cliquez pour placer le centre du cercle",finishCircle:"Cliquez pour finir le cercle",placeCircleMarker:"Cliquez pour placer le marqueur circulaire"},actions:{finish:"Terminer",cancel:"Annuler",removeLastVertex:"Retirer le dernier sommet"},buttonTitles:{drawMarkerButton:"Placer des marqueurs",drawPolyButton:"Dessiner des polygones",drawLineButton:"Dessiner des polylignes",drawCircleButton:"Dessiner un cercle",drawRectButton:"Dessiner un rectangle",editButton:"Éditer des calques",dragButton:"Déplacer des calques",cutButton:"Couper des calques",deleteButton:"Supprimer des calques",drawCircleMarkerButton:"Dessiner un marqueur circulaire",snappingButton:"Glisser le marqueur vers d'autres couches et sommets",pinningButton:"Épingler ensemble les sommets partagés",rotateButton:"Tourner des calques"}},on={tooltips:{placeMarker:"单击放置标记",firstVertex:"单击放置首个顶点",continueLine:"单击继续绘制",finishLine:"单击任何存在的标记以完成",finishPoly:"单击第一个标记以完成",finishRect:"单击完成",startCircle:"单击放置圆心",finishCircle:"单击完成圆形",placeCircleMarker:"点击放置圆形标记"},actions:{finish:"完成",cancel:"取消",removeLastVertex:"移除最后的顶点"},buttonTitles:{drawMarkerButton:"绘制标记",drawPolyButton:"绘制多边形",drawLineButton:"绘制线段",drawCircleButton:"绘制圆形",drawRectButton:"绘制长方形",editButton:"编辑图层",dragButton:"拖拽图层",cutButton:"剪切图层",deleteButton:"删除图层",drawCircleMarkerButton:"画圆圈标记",snappingButton:"将拖动的标记捕捉到其他图层和顶点",pinningButton:"将共享顶点固定在一起",rotateButton:"旋转图层"}},hn={tooltips:{placeMarker:"單擊放置標記",firstVertex:"單擊放置第一個頂點",continueLine:"單擊繼續繪製",finishLine:"單擊任何存在的標記以完成",finishPoly:"單擊第一個標記以完成",finishRect:"單擊完成",startCircle:"單擊放置圓心",finishCircle:"單擊完成圓形",placeCircleMarker:"點擊放置圓形標記"},actions:{finish:"完成",cancel:"取消",removeLastVertex:"移除最後一個頂點"},buttonTitles:{drawMarkerButton:"放置標記",drawPolyButton:"繪製多邊形",drawLineButton:"繪製線段",drawCircleButton:"繪製圓形",drawRectButton:"繪製方形",editButton:"編輯圖形",dragButton:"移動圖形",cutButton:"裁切圖形",deleteButton:"刪除圖形",drawCircleMarkerButton:"畫圓圈標記",snappingButton:"將拖動的標記對齊到其他圖層和頂點",pinningButton:"將共享頂點固定在一起",rotateButton:"旋轉圖形"}},Us={tooltips:{placeMarker:"Clique para posicionar o marcador",firstVertex:"Clique para posicionar o primeiro vértice",continueLine:"Clique para continuar desenhando",finishLine:"Clique em qualquer marcador existente para finalizar",finishPoly:"Clique no primeiro marcador para finalizar",finishRect:"Clique para finalizar",startCircle:"Clique para posicionar o centro do círculo",finishCircle:"Clique para finalizar o círculo",placeCircleMarker:"Clique para posicionar o marcador circular",placeText:"Clique para inserir texto"},actions:{finish:"Finalizar",cancel:"Cancelar",removeLastVertex:"Remover último vértice"},buttonTitles:{drawMarkerButton:"Desenhar Marcador",drawPolyButton:"Desenhar Polígonos",drawLineButton:"Desenhar Linha Poligonal",drawCircleButton:"Desenhar Círculo",drawRectButton:"Desenhar Retângulo",editButton:"Editar Camadas",dragButton:"Arrastar Camadas",cutButton:"Recortar Camadas",deleteButton:"Remover Camadas",drawCircleMarkerButton:"Desenhar Marcador de Círculo",snappingButton:"Ajustar marcador arrastado a outras camadas e vértices",pinningButton:"Unir vértices compartilhados",rotateButton:"Rotacionar Camadas",drawTextButton:"Desenhar Texto",scaleButton:"Redimensionar Camadas",autoTracingButton:"Traçado Automático de Linha"},measurements:{totalLength:"Comprimento",segmentLength:"Comprimento do Segmento",area:"Área",radius:"Raio",perimeter:"Perímetro",height:"Altura",width:"Largura",coordinates:"Posição",coordinatesMarker:"Marcador de Posição"}},Zi={tooltips:{placeMarker:"Clique para colocar marcador",firstVertex:"Clique para colocar primeiro vértice",continueLine:"Clique para continuar a desenhar",finishLine:"Clique num marcador existente para terminar",finishPoly:"Clique no primeiro marcador para terminar",finishRect:"Clique para terminar",startCircle:"Clique para colocar o centro do círculo",finishCircle:"Clique para terminar o círculo",placeCircleMarker:"Clique para colocar marcador de círculo",placeText:"Clique para colocar texto"},actions:{finish:"Terminar",cancel:"Cancelar",removeLastVertex:"Remover Último Vértice"},buttonTitles:{drawMarkerButton:"Desenhar Marcador",drawPolyButton:"Desenhar Polígonos",drawLineButton:"Desenhar Polilinha",drawCircleButton:"Desenhar Círculo",drawRectButton:"Desenhar Retângulo",editButton:"Editar Camadas",dragButton:"Arrastar Camadas",cutButton:"Cortar Camadas",deleteButton:"Remover Camadas",drawCircleMarkerButton:"Desenhar Marcador de Círculo",snappingButton:"Ajustar marcador arrastado a outras camadas e vértices",pinningButton:"Unir vértices partilhados",rotateButton:"Rodar Camadas",drawTextButton:"Desenhar Texto",scaleButton:"Escalar Camadas",autoTracingButton:"Traçado Automático de Linha"},measurements:{totalLength:"Comprimento",segmentLength:"Comprimento do Segmento",area:"Área",radius:"Raio",perimeter:"Perímetro",height:"Altura",width:"Largura",coordinates:"Posição",coordinatesMarker:"Marcador de Posição"}},js={tooltips:{placeMarker:"Kliknij, aby umieścić znacznik",firstVertex:"Kliknij, aby umieścić pierwszy wierzchołek",continueLine:"Kliknij, aby kontynuować rysowanie",finishLine:"Kliknij dowolny istniejący znacznik, aby zakończyć",finishPoly:"Kliknij pierwszy znacznik, aby zakończyć",finishRect:"Kliknij, aby zakończyć",startCircle:"Kliknij, aby umieścić środek okręgu",finishCircle:"Kliknij, aby zakończyć okrąg",placeCircleMarker:"Kliknij, aby umieścić znacznik okręgu",placeText:"Kliknij, aby umieścić tekst"},actions:{finish:"Zakończ",cancel:"Anuluj",removeLastVertex:"Usuń ostatni wierzchołek"},buttonTitles:{drawMarkerButton:"Rysuj znacznik",drawPolyButton:"Rysuj wielokąt",drawLineButton:"Rysuj linię",drawCircleButton:"Rysuj okrąg",drawRectButton:"Rysuj prostokąt",editButton:"Edytuj warstwy",dragButton:"Przeciągnij warstwy",cutButton:"Wytnij warstwy",deleteButton:"Usuń warstwy",drawCircleMarkerButton:"Rysuj znacznik okrągły",snappingButton:"Przyciągnij przenoszony znacznik do innych warstw i wierzchołków",pinningButton:"Przypnij wspólne wierzchołki razem",rotateButton:"Obróć warstwy",drawTextButton:"Rysuj tekst",scaleButton:"Skaluj warstwy",autoTracingButton:"Automatyczne śledzenie linii"},measurements:{totalLength:"Długość",segmentLength:"Długość odcinka",area:"Obszar",radius:"Promień",perimeter:"Obwód",height:"Wysokość",width:"Szerokość",coordinates:"Pozycja",coordinatesMarker:"Znacznik pozycji"}},Zs={tooltips:{placeMarker:"Klicka för att placera markör",firstVertex:"Klicka för att placera första hörnet",continueLine:"Klicka för att fortsätta rita",finishLine:"Klicka på en existerande punkt för att slutföra",finishPoly:"Klicka på den första punkten för att slutföra",finishRect:"Klicka för att slutföra",startCircle:"Klicka för att placera cirkelns centrum",finishCircle:"Klicka för att slutföra cirkeln",placeCircleMarker:"Klicka för att placera cirkelmarkör"},actions:{finish:"Slutför",cancel:"Avbryt",removeLastVertex:"Ta bort sista hörnet"},buttonTitles:{drawMarkerButton:"Rita Markör",drawPolyButton:"Rita Polygoner",drawLineButton:"Rita Linje",drawCircleButton:"Rita Cirkel",drawRectButton:"Rita Rektangel",editButton:"Redigera Lager",dragButton:"Dra Lager",cutButton:"Klipp i Lager",deleteButton:"Ta bort Lager",drawCircleMarkerButton:"Rita Cirkelmarkör",snappingButton:"Snäpp dra markören till andra lager och hörn",pinningButton:"Fäst delade hörn tillsammans",rotateButton:"Rotera lagret"}},Rn={tooltips:{placeMarker:"Κάντε κλικ για να τοποθετήσετε Δείκτη",firstVertex:"Κάντε κλικ για να τοποθετήσετε το πρώτο σημείο",continueLine:"Κάντε κλικ για να συνεχίσετε να σχεδιάζετε",finishLine:"Κάντε κλικ σε οποιονδήποτε υπάρχον σημείο για να ολοκληρωθεί",finishPoly:"Κάντε κλικ στο πρώτο σημείο για να τελειώσετε",finishRect:"Κάντε κλικ για να τελειώσετε",startCircle:"Κάντε κλικ για να τοποθετήσετε κέντρο Κύκλου",finishCircle:"Κάντε κλικ για να ολοκληρώσετε τον Κύκλο",placeCircleMarker:"Κάντε κλικ για να τοποθετήσετε Κυκλικό Δείκτη"},actions:{finish:"Τέλος",cancel:"Ακύρωση",removeLastVertex:"Κατάργηση τελευταίου σημείου"},buttonTitles:{drawMarkerButton:"Σχεδίαση Δείκτη",drawPolyButton:"Σχεδίαση Πολυγώνου",drawLineButton:"Σχεδίαση Γραμμής",drawCircleButton:"Σχεδίαση Κύκλου",drawRectButton:"Σχεδίαση Ορθογωνίου",editButton:"Επεξεργασία Επιπέδων",dragButton:"Μεταφορά Επιπέδων",cutButton:"Αποκοπή Επιπέδων",deleteButton:"Κατάργηση Επιπέδων",drawCircleMarkerButton:"Σχεδίαση Κυκλικού Δείκτη",snappingButton:"Προσκόλληση του Δείκτη μεταφοράς σε άλλα Επίπεδα και Κορυφές",pinningButton:"Περικοπή κοινών κορυφών μαζί",rotateButton:"Περιστρέψτε το στρώμα"}},qs={tooltips:{placeMarker:"Kattintson a jelölő elhelyezéséhez",firstVertex:"Kattintson az első pont elhelyezéséhez",continueLine:"Kattintson a következő pont elhelyezéséhez",finishLine:"A befejezéshez kattintson egy meglévő pontra",finishPoly:"A befejezéshez kattintson az első pontra",finishRect:"Kattintson a befejezéshez",startCircle:"Kattintson a kör középpontjának elhelyezéséhez",finishCircle:"Kattintson a kör befejezéséhez",placeCircleMarker:"Kattintson a körjelölő elhelyezéséhez"},actions:{finish:"Befejezés",cancel:"Mégse",removeLastVertex:"Utolsó pont eltávolítása"},buttonTitles:{drawMarkerButton:"Jelölő rajzolása",drawPolyButton:"Poligon rajzolása",drawLineButton:"Vonal rajzolása",drawCircleButton:"Kör rajzolása",drawRectButton:"Négyzet rajzolása",editButton:"Elemek szerkesztése",dragButton:"Elemek mozgatása",cutButton:"Elemek vágása",deleteButton:"Elemek törlése",drawCircleMarkerButton:"Kör jelölő rajzolása",snappingButton:"Kapcsolja a jelöltőt másik elemhez vagy ponthoz",pinningButton:"Közös pontok összekötése",rotateButton:"Fólia elforgatása"}},Hs={tooltips:{placeMarker:"Tryk for at placere en markør",firstVertex:"Tryk for at placere det første punkt",continueLine:"Tryk for at fortsætte linjen",finishLine:"Tryk på et eksisterende punkt for at afslutte",finishPoly:"Tryk på det første punkt for at afslutte",finishRect:"Tryk for at afslutte",startCircle:"Tryk for at placere cirklens center",finishCircle:"Tryk for at afslutte cirklen",placeCircleMarker:"Tryk for at placere en cirkelmarkør"},actions:{finish:"Afslut",cancel:"Afbryd",removeLastVertex:"Fjern sidste punkt"},buttonTitles:{drawMarkerButton:"Placer markør",drawPolyButton:"Tegn polygon",drawLineButton:"Tegn linje",drawCircleButton:"Tegn cirkel",drawRectButton:"Tegn firkant",editButton:"Rediger",dragButton:"Træk",cutButton:"Klip",deleteButton:"Fjern",drawCircleMarkerButton:"Tegn cirkelmarkør",snappingButton:"Fastgør trukket markør til andre elementer",pinningButton:"Sammenlæg delte elementer",rotateButton:"Roter laget"}},Fn={tooltips:{placeMarker:"Klikk for å plassere punkt",firstVertex:"Klikk for å plassere første punkt",continueLine:"Klikk for å tegne videre",finishLine:"Klikk på et eksisterende punkt for å fullføre",finishPoly:"Klikk første punkt for å fullføre",finishRect:"Klikk for å fullføre",startCircle:"Klikk for å sette sirkel midtpunkt",finishCircle:"Klikk for å fullføre sirkel",placeCircleMarker:"Klikk for å plassere sirkel",placeText:"Klikk for å plassere tekst"},actions:{finish:"Fullfør",cancel:"Kanseller",removeLastVertex:"Fjern forrige punkt"},buttonTitles:{drawMarkerButton:"Tegn punkt",drawPolyButton:"Tegn flate",drawLineButton:"Tegn linje",drawCircleButton:"Tegn sirkel",drawRectButton:"Tegn rektangel",editButton:"Rediger objekter",dragButton:"Dra objekter",cutButton:"Kutt objekter",deleteButton:"Fjern objekter",drawCircleMarkerButton:"Tegn sirkel-punkt",snappingButton:"Fest dratt punkt til andre objekter og punkt",pinningButton:"Pin delte punkter sammen",rotateButton:"Rotér objekter",drawTextButton:"Tegn tekst",scaleButton:"Skalér objekter",autoTracingButton:"Automatisk sporing av linje"},measurements:{totalLength:"Lengde",segmentLength:"Segmentlengde",area:"Område",radius:"Radius",perimeter:"Omriss",height:"Høyde",width:"Bredde",coordinates:"Posisjon",coordinatesMarker:"Posisjonsmarkør"}},Qa={tooltips:{placeMarker:"کلیک برای جانمایی نشان",firstVertex:"کلیک برای رسم اولین رأس",continueLine:"کلیک برای ادامه رسم",finishLine:"کلیک روی هر نشان موجود برای پایان",finishPoly:"کلیک روی اولین نشان برای پایان",finishRect:"کلیک برای پایان",startCircle:"کلیک برای رسم مرکز دایره",finishCircle:"کلیک برای پایان رسم دایره",placeCircleMarker:"کلیک برای رسم نشان دایره",placeText:"کلیک برای نوشتن متن"},actions:{finish:"پایان",cancel:"لفو",removeLastVertex:"حذف آخرین رأس"},buttonTitles:{drawMarkerButton:"درج نشان",drawPolyButton:"رسم چندضلعی",drawLineButton:"رسم خط",drawCircleButton:"رسم دایره",drawRectButton:"رسم چهارضلعی",editButton:"ویرایش لایهها",dragButton:"جابجایی لایهها",cutButton:"برش لایهها",deleteButton:"حذف لایهها",drawCircleMarkerButton:"رسم نشان دایره",snappingButton:"نشانگر را به لایهها و رئوس دیگر بکشید",pinningButton:"رئوس مشترک را با هم پین کنید",rotateButton:"چرخش لایه",drawTextButton:"رسم متن",scaleButton:"مقیاسگذاری",autoTracingButton:"ردیاب خودکار"},measurements:{totalLength:"طول",segmentLength:"طول بخش",area:"ناحیه",radius:"شعاع",perimeter:"محیط",height:"ارتفاع",width:"عرض",coordinates:"موقعیت",coordinatesMarker:"موقعیت نشان"}},Vs={tooltips:{placeMarker:"Натисніть, щоб нанести маркер",firstVertex:"Натисніть, щоб нанести першу вершину",continueLine:"Натисніть, щоб продовжити малювати",finishLine:"Натисніть будь-який існуючий маркер для завершення",finishPoly:"Виберіть перший маркер, щоб завершити",finishRect:"Натисніть, щоб завершити",startCircle:"Натисніть, щоб додати центр кола",finishCircle:"Натисніть, щоб завершити коло",placeCircleMarker:"Натисніть, щоб нанести круговий маркер"},actions:{finish:"Завершити",cancel:"Відмінити",removeLastVertex:"Видалити попередню вершину"},buttonTitles:{drawMarkerButton:"Малювати маркер",drawPolyButton:"Малювати полігон",drawLineButton:"Малювати криву",drawCircleButton:"Малювати коло",drawRectButton:"Малювати прямокутник",editButton:"Редагувати шари",dragButton:"Перенести шари",cutButton:"Вирізати шари",deleteButton:"Видалити шари",drawCircleMarkerButton:"Малювати круговий маркер",snappingButton:"Прив’язати перетягнутий маркер до інших шарів та вершин",pinningButton:"Зв'язати спільні вершини разом",rotateButton:"Повернути шар"}},So={tooltips:{placeMarker:"İşaretçi yerleştirmek için tıklayın",firstVertex:"İlk tepe noktasını yerleştirmek için tıklayın",continueLine:"Çizime devam etmek için tıklayın",finishLine:"Bitirmek için mevcut herhangi bir işaretçiyi tıklayın",finishPoly:"Bitirmek için ilk işaretçiyi tıklayın",finishRect:"Bitirmek için tıklayın",startCircle:"Daire merkezine yerleştirmek için tıklayın",finishCircle:"Daireyi bitirmek için tıklayın",placeCircleMarker:"Daire işaretçisi yerleştirmek için tıklayın"},actions:{finish:"Bitir",cancel:"İptal",removeLastVertex:"Son köşeyi kaldır"},buttonTitles:{drawMarkerButton:"Çizim İşaretçisi",drawPolyButton:"Çokgenler çiz",drawLineButton:"Çoklu çizgi çiz",drawCircleButton:"Çember çiz",drawRectButton:"Dikdörtgen çiz",editButton:"Katmanları düzenle",dragButton:"Katmanları sürükle",cutButton:"Katmanları kes",deleteButton:"Katmanları kaldır",drawCircleMarkerButton:"Daire işaretçisi çiz",snappingButton:"Sürüklenen işaretçiyi diğer katmanlara ve köşelere yapıştır",pinningButton:"Paylaşılan köşeleri birbirine sabitle",rotateButton:"Katmanı döndür"}},Bt={tooltips:{placeMarker:"Kliknutím vytvoříte značku",firstVertex:"Kliknutím vytvoříte první objekt",continueLine:"Kliknutím pokračujte v kreslení",finishLine:"Kliknutí na libovolnou existující značku pro dokončení",finishPoly:"Vyberte první bod pro dokončení",finishRect:"Klikněte pro dokončení",startCircle:"Kliknutím přidejte střed kruhu",finishCircle:"Нажмите, чтобы задать радиус",placeCircleMarker:"Kliknutím nastavte poloměr"},actions:{finish:"Dokončit",cancel:"Zrušit",removeLastVertex:"Zrušit poslední akci"},buttonTitles:{drawMarkerButton:"Přidat značku",drawPolyButton:"Nakreslit polygon",drawLineButton:"Nakreslit křivku",drawCircleButton:"Nakreslit kruh",drawRectButton:"Nakreslit obdélník",editButton:"Upravit vrstvu",dragButton:"Přeneste vrstvu",cutButton:"Vyjmout vrstvu",deleteButton:"Smazat vrstvu",drawCircleMarkerButton:"Přidat kruhovou značku",snappingButton:"Navázat tažnou značku k dalším vrstvám a vrcholům",pinningButton:"Spojit společné body dohromady",rotateButton:"Otočte vrstvu"}},$e={tooltips:{placeMarker:"クリックしてマーカーを配置",firstVertex:"クリックして最初の頂点を配置",continueLine:"クリックして描画を続ける",finishLine:"任意のマーカーをクリックして終了",finishPoly:"最初のマーカーをクリックして終了",finishRect:"クリックして終了",startCircle:"クリックして円の中心を配置",finishCircle:"クリックして円の描画を終了",placeCircleMarker:"クリックして円マーカーを配置",placeText:"クリックしてテキストを配置"},actions:{finish:"終了",cancel:"キャンセル",removeLastVertex:"最後の頂点を削除"},buttonTitles:{drawMarkerButton:"マーカーを描画",drawPolyButton:"ポリゴンを描画",drawLineButton:"折れ線を描画",drawCircleButton:"円を描画",drawRectButton:"矩形を描画",editButton:"レイヤーを編集",dragButton:"レイヤーをドラッグ",cutButton:"レイヤーを切り取り",deleteButton:"レイヤーを削除",drawCircleMarkerButton:"円マーカーを描画",snappingButton:"ドラッグしたマーカーを他のレイヤーや頂点にスナップする",pinningButton:"共有する頂点を同時に動かす",rotateButton:"レイヤーを回転",drawTextButton:"テキストを描画"}},Kt={tooltips:{placeMarker:"Klikkaa asettaaksesi merkin",firstVertex:"Klikkaa asettaakseni ensimmäisen osuuden",continueLine:"Klikkaa jatkaaksesi piirtämistä",finishLine:"Klikkaa olemassa olevaa merkkiä lopettaaksesi",finishPoly:"Klikkaa ensimmäistä merkkiä lopettaaksesi",finishRect:"Klikkaa lopettaaksesi",startCircle:"Klikkaa asettaaksesi ympyrän keskipisteen",finishCircle:"Klikkaa lopettaaksesi ympyrän",placeCircleMarker:"Klikkaa asettaaksesi ympyrämerkin",placeText:"Klikkaa asettaaksesi tekstin"},actions:{finish:"Valmis",cancel:"Peruuta",removeLastVertex:"Poista viimeinen osuus"},buttonTitles:{drawMarkerButton:"Piirrä merkkejä",drawPolyButton:"Piirrä monikulmioita",drawLineButton:"Piirrä viivoja",drawCircleButton:"Piirrä ympyrä",drawRectButton:"Piirrä neliskulmioita",editButton:"Muokkaa",dragButton:"Siirrä",cutButton:"Leikkaa",deleteButton:"Poista",drawCircleMarkerButton:"Piirrä ympyrämerkki",snappingButton:"Kiinnitä siirrettävä merkki toisiin muotoihin",pinningButton:"Kiinnitä jaetut muodot yhteen",rotateButton:"Käännä",drawTextButton:"Piirrä tekstiä"}},tr={tooltips:{placeMarker:"마커 위치를 클릭하세요",firstVertex:"첫번째 꼭지점 위치을 클릭하세요",continueLine:"계속 그리려면 클릭하세요",finishLine:"끝내려면 기존 마커를 클릭하세요",finishPoly:"끝내려면 처음 마커를 클릭하세요",finishRect:"끝내려면 클릭하세요",startCircle:"원의 중심이 될 위치를 클릭하세요",finishCircle:"원을 끝내려면 클릭하세요",placeCircleMarker:"원 마커 위치를 클릭하세요",placeText:"텍스트 위치를 클릭하세요"},actions:{finish:"끝내기",cancel:"취소",removeLastVertex:"마지막 꼭지점 제거"},buttonTitles:{drawMarkerButton:"마커 그리기",drawPolyButton:"다각형 그리기",drawLineButton:"다각선 그리기",drawCircleButton:"원 그리기",drawRectButton:"직사각형 그리기",editButton:"레이어 편집하기",dragButton:"레이어 끌기",cutButton:"레이어 자르기",deleteButton:"레이어 제거하기",drawCircleMarkerButton:"원 마커 그리기",snappingButton:"잡아끈 마커를 다른 레이어 및 꼭지점에 들러붙게 하기",pinningButton:"공유 꼭지점을 함께 찍기",rotateButton:"레이어 회전하기",drawTextButton:"텍스트 그리기"}},$s={tooltips:{placeMarker:"Маркерди жайгаштыруу үчүн басыңыз",firstVertex:"Биринчи чокуну жайгаштырууну үчүн басыңыз",continueLine:"Сүрөт тартууну улантуу үчүн басыңыз",finishLine:"Аяктоо үчүн учурдагы маркерди басыңыз",finishPoly:"Бүтүрүү үчүн биринчи маркерди басыңыз",finishRect:"Бүтүрүү үчүн басыңыз",startCircle:"Айлананын борборун жайгаштырууну үчүн басыңыз",finishCircle:"Айлананы бүтүрүү үчүн басыңыз",placeCircleMarker:"Тегерек маркерди жайгаштыруу үчүн басыңыз",placeText:"Текстти жайгаштыруу үчүн басыңыз"},actions:{finish:"Аягы",cancel:"Жок кылуу",removeLastVertex:"Акыркы чокуну өчүрүү"},buttonTitles:{drawMarkerButton:"Маркерди чизуу",drawPolyButton:"Полигон чизуу",drawLineButton:"Полилиния чизуу",drawCircleButton:"Дайынды чизуу",drawRectButton:"Прямоугольник чизуу",editButton:"Слоопту түзөтүү",dragButton:"Слоопту карап сүйлөү",cutButton:"Слооптун башын кесүү",deleteButton:"Слооптун өчүрүү",drawCircleMarkerButton:"Дайынды маркерди чизуу",snappingButton:"Башка слооптордун жана вертекстердин арасына чекилдөө",pinningButton:"Бөлүшкөн вертекстерди бирге тутуштуруу",rotateButton:"Слооптун өзгөртүү",drawTextButton:"Текст чизуу",scaleButton:"Слооптун өлчөмүн өзгөртүү",autoTracingButton:"Автоматтык тизмеги чизуу"},measurements:{totalLength:"Узундук",segmentLength:"Сегмент узундугу",area:"Аймак",radius:"Радиус",perimeter:"Периметр",height:"Диаметр",width:"Кенчилик",coordinates:"Координаттар",coordinatesMarker:"Маркердин координаттары"}},Ks=Zi,_i={en:ne,de:Ns,it:On,id:Ne,ro:ko,ru:In,es:bi,nl:re,fr:wi,pt:Ks,pt_br:Us,pt_pt:Zi,zh:on,zh_tw:hn,pl:js,sv:Zs,el:Rn,hu:qs,da:Hs,no:Fn,fa:Qa,ua:Vs,tr:So,cz:Bt,ja:$e,fi:Kt,ko:tr,ky:$s},Ci={_globalEditModeEnabled:!1,enableGlobalEditMode(i){let s={...i};this._globalEditModeEnabled=!0,this.Toolbar.toggleButton("editMode",this.globalEditModeEnabled()),L.PM.Utils.findLayers(this.map).forEach(o=>{this._isRelevantForEdit(o)&&o.pm.enable(s)}),this.throttledReInitEdit||(this.throttledReInitEdit=L.Util.throttle(this.handleLayerAdditionInGlobalEditMode,100,this)),this._addedLayersEdit={},this.map.on("layeradd",this._layerAddedEdit,this),this.map.on("layeradd",this.throttledReInitEdit,this),this._fireGlobalEditModeToggled(!0)},disableGlobalEditMode(){this._globalEditModeEnabled=!1,L.PM.Utils.findLayers(this.map).forEach(i=>{i.pm.disable()}),this.map.off("layeradd",this._layerAddedEdit,this),this.map.off("layeradd",this.throttledReInitEdit,this),this.Toolbar.toggleButton("editMode",this.globalEditModeEnabled()),this._fireGlobalEditModeToggled(!1)},globalEditEnabled(){return this.globalEditModeEnabled()},globalEditModeEnabled(){return this._globalEditModeEnabled},toggleGlobalEditMode(i=this.globalOptions){this.globalEditModeEnabled()?this.disableGlobalEditMode():this.enableGlobalEditMode(i)},handleLayerAdditionInGlobalEditMode(){let i=this._addedLayersEdit;if(this._addedLayersEdit={},this.globalEditModeEnabled())for(let s in i){let o=i[s];this._isRelevantForEdit(o)&&o.pm.enable({...this.globalOptions})}},_layerAddedEdit({layer:i}){this._addedLayersEdit[L.stamp(i)]=i},_isRelevantForEdit(i){return i.pm&&!(i instanceof L.LayerGroup)&&(!L.PM.optIn&&!i.options.pmIgnore||L.PM.optIn&&i.options.pmIgnore===!1)&&!i._pmTempLayer&&i.pm.options.allowEditing}},Ws=Ci,ln={_globalDragModeEnabled:!1,enableGlobalDragMode(){let i=L.PM.Utils.findLayers(this.map);this._globalDragModeEnabled=!0,this._addedLayersDrag={},i.forEach(s=>{this._isRelevantForDrag(s)&&s.pm.enableLayerDrag()}),this.throttledReInitDrag||(this.throttledReInitDrag=L.Util.throttle(this.reinitGlobalDragMode,100,this)),this.map.on("layeradd",this._layerAddedDrag,this),this.map.on("layeradd",this.throttledReInitDrag,this),this.Toolbar.toggleButton("dragMode",this.globalDragModeEnabled()),this._fireGlobalDragModeToggled(!0)},disableGlobalDragMode(){let i=L.PM.Utils.findLayers(this.map);this._globalDragModeEnabled=!1,i.forEach(s=>{s.pm.disableLayerDrag()}),this.map.off("layeradd",this._layerAddedDrag,this),this.map.off("layeradd",this.throttledReInitDrag,this),this.Toolbar.toggleButton("dragMode",this.globalDragModeEnabled()),this._fireGlobalDragModeToggled(!1)},globalDragModeEnabled(){return!!this._globalDragModeEnabled},toggleGlobalDragMode(){this.globalDragModeEnabled()?this.disableGlobalDragMode():this.enableGlobalDragMode()},reinitGlobalDragMode(){let i=this._addedLayersDrag;if(this._addedLayersDrag={},this.globalDragModeEnabled())for(let s in i){let o=i[s];this._isRelevantForDrag(o)&&o.pm.enableLayerDrag()}},_layerAddedDrag({layer:i}){this._addedLayersDrag[L.stamp(i)]=i},_isRelevantForDrag(i){return i.pm&&!(i instanceof L.LayerGroup)&&(!L.PM.optIn&&!i.options.pmIgnore||L.PM.optIn&&i.options.pmIgnore===!1)&&!i._pmTempLayer&&i.pm.options.draggable}},ce=ln,Ei={_globalRemovalModeEnabled:!1,enableGlobalRemovalMode(){this._globalRemovalModeEnabled=!0,this.map.eachLayer(i=>{this._isRelevantForRemoval(i)&&(i.pm.enabled()&&i.pm.disable(),i.on("click",this.removeLayer,this))}),this.throttledReInitRemoval||(this.throttledReInitRemoval=L.Util.throttle(this.handleLayerAdditionInGlobalRemovalMode,100,this)),this._addedLayersRemoval={},this.map.on("layeradd",this._layerAddedRemoval,this),this.map.on("layeradd",this.throttledReInitRemoval,this),this.Toolbar.toggleButton("removalMode",this.globalRemovalModeEnabled()),this._fireGlobalRemovalModeToggled(!0)},disableGlobalRemovalMode(){this._globalRemovalModeEnabled=!1,this.map.eachLayer(i=>{i.off("click",this.removeLayer,this)}),this.map.off("layeradd",this._layerAddedRemoval,this),this.map.off("layeradd",this.throttledReInitRemoval,this),this.Toolbar.toggleButton("removalMode",this.globalRemovalModeEnabled()),this._fireGlobalRemovalModeToggled(!1)},globalRemovalEnabled(){return this.globalRemovalModeEnabled()},globalRemovalModeEnabled(){return!!this._globalRemovalModeEnabled},toggleGlobalRemovalMode(){this.globalRemovalModeEnabled()?this.disableGlobalRemovalMode():this.enableGlobalRemovalMode()},removeLayer(i){let s=i.target;this._isRelevantForRemoval(s)&&!s.pm.dragging()&&(s.removeFrom(this.map.pm._getContainingLayer()),s.remove(),s instanceof L.LayerGroup?(this._fireRemoveLayerGroup(s),this._fireRemoveLayerGroup(this.map,s)):(s.pm._fireRemove(s),s.pm._fireRemove(this.map,s)))},_isRelevantForRemoval(i){return i.pm&&!(i instanceof L.LayerGroup)&&(!L.PM.optIn&&!i.options.pmIgnore||L.PM.optIn&&i.options.pmIgnore===!1)&&!i._pmTempLayer&&i.pm.options.allowRemoval},handleLayerAdditionInGlobalRemovalMode(){let i=this._addedLayersRemoval;if(this._addedLayersRemoval={},this.globalRemovalModeEnabled())for(let s in i){let o=i[s];this._isRelevantForRemoval(o)&&(o.pm.enabled()&&o.pm.disable(),o.on("click",this.removeLayer,this))}},_layerAddedRemoval({layer:i}){this._addedLayersRemoval[L.stamp(i)]=i}},er=Ei,ir={_globalRotateModeEnabled:!1,enableGlobalRotateMode(){this._globalRotateModeEnabled=!0,L.PM.Utils.findLayers(this.map).filter(i=>i instanceof L.Polyline).forEach(i=>{this._isRelevantForRotate(i)&&i.pm.enableRotate()}),this.throttledReInitRotate||(this.throttledReInitRotate=L.Util.throttle(this.handleLayerAdditionInGlobalRotateMode,100,this)),this._addedLayersRotate={},this.map.on("layeradd",this._layerAddedRotate,this),this.map.on("layeradd",this.throttledReInitRotate,this),this.Toolbar.toggleButton("rotateMode",this.globalRotateModeEnabled()),this._fireGlobalRotateModeToggled()},disableGlobalRotateMode(){this._globalRotateModeEnabled=!1,L.PM.Utils.findLayers(this.map).filter(i=>i instanceof L.Polyline).forEach(i=>{i.pm.disableRotate()}),this.map.off("layeradd",this._layerAddedRotate,this),this.map.off("layeradd",this.throttledReInitRotate,this),this.Toolbar.toggleButton("rotateMode",this.globalRotateModeEnabled()),this._fireGlobalRotateModeToggled()},globalRotateModeEnabled(){return!!this._globalRotateModeEnabled},toggleGlobalRotateMode(){this.globalRotateModeEnabled()?this.disableGlobalRotateMode():this.enableGlobalRotateMode()},_isRelevantForRotate(i){return i.pm&&i instanceof L.Polyline&&!(i instanceof L.LayerGroup)&&(!L.PM.optIn&&!i.options.pmIgnore||L.PM.optIn&&i.options.pmIgnore===!1)&&!i._pmTempLayer&&i.pm.options.allowRotation},handleLayerAdditionInGlobalRotateMode(){let i=this._addedLayersRotate;if(this._addedLayersRotate={},this.globalRotateModeEnabled())for(let s in i){let o=i[s];this._isRelevantForRemoval(o)&&o.pm.enableRotate()}},_layerAddedRotate({layer:i}){this._addedLayersRotate[L.stamp(i)]=i}},Bo=ir,nr=M(Tn()),Xs={_fireDrawStart(i="Draw",s={}){this.__fire(this._map,"pm:drawstart",{shape:this._shape,workingLayer:this._layer},i,s)},_fireDrawEnd(i="Draw",s={}){this.__fire(this._map,"pm:drawend",{shape:this._shape},i,s)},_fireCreate(i,s="Draw",o={}){this.__fire(this._map,"pm:create",{shape:this._shape,marker:i,layer:i},s,o)},_fireCenterPlaced(i="Draw",s={}){let o=i==="Draw"?this._layer:void 0,h=i!=="Draw"?this._layer:void 0;this.__fire(this._layer,"pm:centerplaced",{shape:this._shape,workingLayer:o,layer:h,latlng:this._layer.getLatLng()},i,s)},_fireCut(i,s,o,h="Draw",c={}){this.__fire(i,"pm:cut",{shape:this._shape,layer:s,originalLayer:o},h,c)},_fireEdit(i=this._layer,s="Edit",o={}){this.__fire(i,"pm:edit",{layer:this._layer,shape:this.getShape()},s,o)},_fireEnable(i="Edit",s={}){this.__fire(this._layer,"pm:enable",{layer:this._layer,shape:this.getShape()},i,s)},_fireDisable(i="Edit",s={}){this.__fire(this._layer,"pm:disable",{layer:this._layer,shape:this.getShape()},i,s)},_fireUpdate(i="Edit",s={}){this.__fire(this._layer,"pm:update",{layer:this._layer,shape:this.getShape()},i,s)},_fireMarkerDragStart(i,s=void 0,o="Edit",h={}){this.__fire(this._layer,"pm:markerdragstart",{layer:this._layer,markerEvent:i,shape:this.getShape(),indexPath:s},o,h)},_fireMarkerDrag(i,s=void 0,o="Edit",h={}){this.__fire(this._layer,"pm:markerdrag",{layer:this._layer,markerEvent:i,shape:this.getShape(),indexPath:s},o,h)},_fireMarkerDragEnd(i,s=void 0,o=void 0,h="Edit",c={}){this.__fire(this._layer,"pm:markerdragend",{layer:this._layer,markerEvent:i,shape:this.getShape(),indexPath:s,intersectionReset:o},h,c)},_fireDragStart(i="Edit",s={}){this.__fire(this._layer,"pm:dragstart",{layer:this._layer,shape:this.getShape()},i,s)},_fireDrag(i,s="Edit",o={}){this.__fire(this._layer,"pm:drag",{...i,shape:this.getShape()},s,o)},_fireDragEnd(i="Edit",s={}){this.__fire(this._layer,"pm:dragend",{layer:this._layer,shape:this.getShape()},i,s)},_fireDragEnable(i="Edit",s={}){this.__fire(this._layer,"pm:dragenable",{layer:this._layer,shape:this.getShape()},i,s)},_fireDragDisable(i="Edit",s={}){this.__fire(this._layer,"pm:dragdisable",{layer:this._layer,shape:this.getShape()},i,s)},_fireRemove(i,s=i,o="Edit",h={}){this.__fire(i,"pm:remove",{layer:s,shape:this.getShape()},o,h)},_fireVertexAdded(i,s,o,h="Edit",c={}){this.__fire(this._layer,"pm:vertexadded",{layer:this._layer,workingLayer:this._layer,marker:i,indexPath:s,latlng:o,shape:this.getShape()},h,c)},_fireVertexRemoved(i,s,o="Edit",h={}){this.__fire(this._layer,"pm:vertexremoved",{layer:this._layer,marker:i,indexPath:s,shape:this.getShape()},o,h)},_fireVertexClick(i,s,o="Edit",h={}){this.__fire(this._layer,"pm:vertexclick",{layer:this._layer,markerEvent:i,indexPath:s,shape:this.getShape()},o,h)},_fireIntersect(i,s=this._layer,o="Edit",h={}){this.__fire(s,"pm:intersect",{layer:this._layer,intersection:i,shape:this.getShape()},o,h)},_fireLayerReset(i,s,o="Edit",h={}){this.__fire(this._layer,"pm:layerreset",{layer:this._layer,markerEvent:i,indexPath:s,shape:this.getShape()},o,h)},_fireChange(i,s="Edit",o={}){this.__fire(this._layer,"pm:change",{layer:this._layer,latlngs:i,shape:this.getShape()},s,o)},_fireTextChange(i,s="Edit",o={}){this.__fire(this._layer,"pm:textchange",{layer:this._layer,text:i,shape:this.getShape()},s,o)},_fireTextFocus(i="Edit",s={}){this.__fire(this._layer,"pm:textfocus",{layer:this._layer,shape:this.getShape()},i,s)},_fireTextBlur(i="Edit",s={}){this.__fire(this._layer,"pm:textblur",{layer:this._layer,shape:this.getShape()},i,s)},_fireSnapDrag(i,s,o="Snapping",h={}){this.__fire(i,"pm:snapdrag",s,o,h)},_fireSnap(i,s,o="Snapping",h={}){this.__fire(i,"pm:snap",s,o,h)},_fireUnsnap(i,s,o="Snapping",h={}){this.__fire(i,"pm:unsnap",s,o,h)},_fireRotationEnable(i,s,o="Rotation",h={}){this.__fire(i,"pm:rotateenable",{layer:this._layer,helpLayer:this._rotatePoly,shape:this.getShape()},o,h)},_fireRotationDisable(i,s="Rotation",o={}){this.__fire(i,"pm:rotatedisable",{layer:this._layer,shape:this.getShape()},s,o)},_fireRotationStart(i,s,o="Rotation",h={}){this.__fire(i,"pm:rotatestart",{layer:this._rotationLayer,helpLayer:this._layer,startAngle:this._startAngle,originLatLngs:s},o,h)},_fireRotation(i,s,o,h=this._rotationLayer,c="Rotation",m={}){this.__fire(i,"pm:rotate",{layer:h,helpLayer:this._layer,startAngle:this._startAngle,angle:h.pm.getAngle(),angleDiff:s,oldLatLngs:o,newLatLngs:h.getLatLngs()},c,m)},_fireRotationEnd(i,s,o,h="Rotation",c={}){this.__fire(i,"pm:rotateend",{layer:this._rotationLayer,helpLayer:this._layer,startAngle:s,angle:this._rotationLayer.pm.getAngle(),originLatLngs:o,newLatLngs:this._rotationLayer.getLatLngs()},h,c)},_fireActionClick(i,s,o,h="Toolbar",c={}){this.__fire(this._map,"pm:actionclick",{text:i.text,action:i,btnName:s,button:o},h,c)},_fireButtonClick(i,s,o="Toolbar",h={}){this.__fire(this._map,"pm:buttonclick",{btnName:i,button:s},o,h)},_fireLangChange(i,s,o,h,c="Global",m={}){this.__fire(this.map,"pm:langchange",{oldLang:i,activeLang:s,fallback:o,translations:h},c,m)},_fireGlobalDragModeToggled(i,s="Global",o={}){this.__fire(this.map,"pm:globaldragmodetoggled",{enabled:i,map:this.map},s,o)},_fireGlobalEditModeToggled(i,s="Global",o={}){this.__fire(this.map,"pm:globaleditmodetoggled",{enabled:i,map:this.map},s,o)},_fireGlobalRemovalModeToggled(i,s="Global",o={}){this.__fire(this.map,"pm:globalremovalmodetoggled",{enabled:i,map:this.map},s,o)},_fireGlobalCutModeToggled(i="Global",s={}){this.__fire(this._map,"pm:globalcutmodetoggled",{enabled:!!this._enabled,map:this._map},i,s)},_fireGlobalDrawModeToggled(i="Global",s={}){this.__fire(this._map,"pm:globaldrawmodetoggled",{enabled:this._enabled,shape:this._shape,map:this._map},i,s)},_fireGlobalRotateModeToggled(i="Global",s={}){this.__fire(this.map,"pm:globalrotatemodetoggled",{enabled:this.globalRotateModeEnabled(),map:this.map},i,s)},_fireRemoveLayerGroup(i,s=i,o="Edit",h={}){this.__fire(i,"pm:remove",{layer:s,shape:void 0},o,h)},_fireKeyeventEvent(i,s,o,h="Global",c={}){this.__fire(this.map,"pm:keyevent",{event:i,eventType:s,focusOn:o},h,c)},__fire(i,s,o,h,c={}){o=(0,nr.default)(o,c,{source:h}),L.PM.Utils._fireEvent(i,s,o)}},Gn=Xs,sr=()=>({_lastEvents:{keydown:void 0,keyup:void 0,current:void 0},_initKeyListener(i){this.map=i,L.DomEvent.on(document,"keydown keyup",this._onKeyListener,this),L.DomEvent.on(window,"blur",this._onBlur,this),i.once("unload",this._unbindKeyListenerEvents,this)},_unbindKeyListenerEvents(){L.DomEvent.off(document,"keydown keyup",this._onKeyListener,this),L.DomEvent.off(window,"blur",this._onBlur,this)},_onKeyListener(i){let s="document";this.map.getContainer().contains(i.target)&&(s="map");let o={event:i,eventType:i.type,focusOn:s};this._lastEvents[i.type]=o,this._lastEvents.current=o,this.map.pm._fireKeyeventEvent(i,i.type,s)},_onBlur(i){i.altKey=!1;let s={event:i,eventType:i.type,focusOn:"document"};this._lastEvents[i.type]=s,this._lastEvents.current=s},getLastKeyEvent(i="current"){return this._lastEvents[i]},isShiftKeyPressed(){var i;return(i=this._lastEvents.current)==null?void 0:i.event.shiftKey},isAltKeyPressed(){var i;return(i=this._lastEvents.current)==null?void 0:i.event.altKey},isCtrlKeyPressed(){var i;return(i=this._lastEvents.current)==null?void 0:i.event.ctrlKey},isMetaKeyPressed(){var i;return(i=this._lastEvents.current)==null?void 0:i.event.metaKey},getPressedKey(){var i;return(i=this._lastEvents.current)==null?void 0:i.event.key}}),Ft=sr,ar=M(pi());function St(i){let s=L.PM.activeLang;return(0,ar.default)(_i[s],i)||(0,ar.default)(_i.en,i)||i}function Pi(i){for(let s=0;s<i.length;s+=1){let o=i[s];if(Array.isArray(o)){if(Pi(o))return!0}else if(o!=null&&o!=="")return!0}return!1}function un(i){return i.reduce((s,o)=>{if(o.length!==0){let h=Array.isArray(o)?un(o):o;Array.isArray(h)?h.length!==0&&s.push(h):s.push(h)}return s},[])}function To(i,s,o){let h={a:L.CRS.Earth.R,b:63567523142e-4,f:.0033528106647474805},{a:c,b:m,f:y}=h,A=i.lng,b=i.lat,P=o,N=Math.PI,F=s*N/180,tt=Math.sin(F),it=Math.cos(F),lt=(1-y)*Math.tan(b*N/180),ft=1/Math.sqrt(1+lt*lt),At=lt*ft,Gt=Math.atan2(lt,it),z=ft*tt,q=1-z*z,K=q*(c*c-m*m)/(m*m),nt=1+K/16384*(4096+K*(-768+K*(320-175*K))),X=K/1024*(256+K*(-128+K*(74-47*K))),et=P/(m*nt),w=2*Math.PI,S,O,D;for(;Math.abs(et-w)>1e-12;){S=Math.cos(2*Gt+et),O=Math.sin(et),D=Math.cos(et);let ot=X*O*(S+X/4*(D*(-1+2*S*S)-X/6*S*(-3+4*O*O)*(-3+4*S*S)));w=et,et=P/(m*nt)+ot}let I=At*O-ft*D*it,R=Math.atan2(At*D+ft*O*it,(1-y)*Math.sqrt(z*z+I*I)),V=Math.atan2(O*tt,ft*D-At*O*it),H=y/16*q*(4+y*(4-3*q)),$=V-(1-H)*y*z*(et+H*O*(S+H*D*(-1+2*S*S))),Q=A+$*180/N,J=R*180/N;return L.latLng(Q,J)}function zn(i,s,o,h,c=!0){let m,y,A,b=[];for(let P=0;P<o;P+=1){if(c)m=P*360/o+h,y=To(i,m,s),A=L.latLng(y.lng,y.lat);else{let N=i.lat+Math.cos(2*P*Math.PI/o)*s,F=i.lng+Math.sin(2*P*Math.PI/o)*s;A=L.latLng(N,F)}b.push(A)}return b}function Do(i,s,o){s=(s+360)%360;let h=Math.PI/180,c=180/Math.PI,{R:m}=L.CRS.Earth,y=i.lng*h,A=i.lat*h,b=s*h,P=Math.sin(A),N=Math.cos(A),F=Math.cos(o/m),tt=Math.sin(o/m),it=Math.asin(P*F+N*tt*Math.cos(b)),lt=y+Math.atan2(Math.sin(b)*tt*N,F-P*Math.sin(it));lt*=c;let ft=lt-360,At=lt<-180?lt+360:lt;return lt=lt>180?ft:At,L.latLng([it*c,lt])}function Nn(i,s,o){let h=i.latLngToContainerPoint(s),c=i.latLngToContainerPoint(o),m=Math.atan2(c.y-h.y,c.x-h.x)*180/Math.PI+90;return m+=m<0?360:0,m}function Un(i,s,o,h){let c=Nn(i,s,o);return Do(s,c,h)}function Oo(i,s,o="asc"){if(!s||Object.keys(s).length===0)return(b,P)=>b-P;let h=Object.keys(s),c,m=h.length-1,y={};for(;m>=0;)c=h[m],y[c.toLowerCase()]=s[c],m-=1;function A(b){if(b instanceof L.Marker)return"Marker";if(b instanceof L.Circle)return"Circle";if(b instanceof L.CircleMarker)return"CircleMarker";if(b instanceof L.Rectangle)return"Rectangle";if(b instanceof L.Polygon)return"Polygon";if(b instanceof L.Polyline)return"Line"}return(b,P)=>{let N,F;if(N=A(b.layer).toLowerCase(),F=A(P.layer).toLowerCase(),!N||!F)return 0;let tt=N in y?y[N]:Number.MAX_SAFE_INTEGER,it=F in y?y[F]:Number.MAX_SAFE_INTEGER,lt=0;return tt<it?lt=-1:tt>it&&(lt=1),o==="desc"?lt*-1:lt}}function Ke(i,s=i.getLatLngs()){return i instanceof L.Polygon?L.polygon(s).getLatLngs():L.polyline(s).getLatLngs()}function rr(i,s){var o,h,c,m;if((h=(o=s.options.crs)==null?void 0:o.projection)!=null&&h.MAX_LATITUDE){let y=(m=(c=s.options.crs)==null?void 0:c.projection)==null?void 0:m.MAX_LATITUDE;i.lat=Math.max(Math.min(y,i.lat),-y)}return i}function Ae(i){return i.options.renderer||i._map&&(i._map._getPaneRenderer(i.options.pane)||i._map.options.renderer||i._map._renderer)||i._renderer}var Io=L.Class.extend({includes:[Ws,ce,er,Bo,Gn],initialize(i){this.map=i,this.Draw=new L.PM.Draw(i),this.Toolbar=new L.PM.Toolbar(i),this.Keyboard=Ft(),this.globalOptions={snappable:!0,layerGroup:void 0,snappingOrder:["Marker","CircleMarker","Circle","Line","Polygon","Rectangle"],panes:{vertexPane:"markerPane",layerPane:"overlayPane",markerPane:"markerPane"},draggable:!0},this.Keyboard._initKeyListener(i)},setLang(i="en",s,o="en"){if(i=i.trim().toLowerCase(),!/^[a-z]{2}$/.test(i)){let c=i.replace(/[-_\s]/g,"-").replace(/^(\w{2})$/,"$1-").match(/([a-z]{2})-?([a-z]{2})?/);if(c){let m=[`${c[1]}_${c[2]}`,`${c[1]}`];for(let y of m)if(_i[y]){i=y;break}}}let h=L.PM.activeLang;s&&(_i[i]=(0,Tt.default)(_i[o],s)),L.PM.activeLang=i,this.map.pm.Toolbar.reinit(),this._fireLangChange(h,i,o,_i[i])},addControls(i){this.Toolbar.addControls(i)},removeControls(){this.Toolbar.removeControls()},toggleControls(){this.Toolbar.toggleControls()},controlsVisible(){return this.Toolbar.isVisible},enableDraw(i="Polygon",s){i==="Poly"&&(i="Polygon"),this.Draw.enable(i,s)},disableDraw(i="Polygon"){i==="Poly"&&(i="Polygon"),this.Draw.disable(i)},setPathOptions(i,s={}){let o=s.ignoreShapes||[],h=s.merge||!1;this.map.pm.Draw.shapes.forEach(c=>{o.indexOf(c)===-1&&this.map.pm.Draw[c].setPathOptions(i,h)})},getGlobalOptions(){return this.globalOptions},setGlobalOptions(i){let s=(0,Tt.default)(this.globalOptions,i);s.editable&&(s.resizeableCircleMarker=s.editable,delete s.editable);let o=!1;this.map.pm.Draw.CircleMarker.enabled()&&!!this.map.pm.Draw.CircleMarker.options.resizeableCircleMarker!=!!s.resizeableCircleMarker&&(this.map.pm.Draw.CircleMarker.disable(),o=!0);let h=!1;this.map.pm.Draw.Circle.enabled()&&!!this.map.pm.Draw.Circle.options.resizeableCircle!=!!s.resizeableCircle&&(this.map.pm.Draw.Circle.disable(),h=!0),this.map.pm.Draw.shapes.forEach(c=>{this.map.pm.Draw[c].setOptions(s)}),o&&this.map.pm.Draw.CircleMarker.enable(),h&&this.map.pm.Draw.Circle.enable(),L.PM.Utils.findLayers(this.map).forEach(c=>{c.pm.setOptions(s)}),this.map.fire("pm:globaloptionschanged"),this.globalOptions=s,this.applyGlobalOptions()},applyGlobalOptions(){L.PM.Utils.findLayers(this.map).forEach(i=>{i.pm.enabled()&&i.pm.applyOptions()})},globalDrawModeEnabled(){return!!this.Draw.getActiveShape()},globalCutModeEnabled(){return!!this.Draw.Cut.enabled()},enableGlobalCutMode(i){return this.Draw.Cut.enable(i)},toggleGlobalCutMode(i){return this.Draw.Cut.toggle(i)},disableGlobalCutMode(){return this.Draw.Cut.disable()},getGeomanLayers(i=!1){let s=L.PM.Utils.findLayers(this.map);if(!i)return s;let o=L.featureGroup();return o._pmTempLayer=!0,s.forEach(h=>{o.addLayer(h)}),o},getGeomanDrawLayers(i=!1){let s=L.PM.Utils.findLayers(this.map).filter(h=>h._drawnByGeoman===!0);if(!i)return s;let o=L.featureGroup();return o._pmTempLayer=!0,s.forEach(h=>{o.addLayer(h)}),o},_getContainingLayer(){return this.globalOptions.layerGroup&&this.globalOptions.layerGroup instanceof L.LayerGroup?this.globalOptions.layerGroup:this.map},_isCRSSimple(){return this.map.options.crs===L.CRS.Simple},_touchEventCounter:0,_addTouchEvents(i){this._touchEventCounter===0&&(L.DomEvent.on(i,"touchmove",this._canvasTouchMove,this),L.DomEvent.on(i,"touchstart touchend touchcancel",this._canvasTouchClick,this)),this._touchEventCounter+=1},_removeTouchEvents(i){this._touchEventCounter===1&&(L.DomEvent.off(i,"touchmove",this._canvasTouchMove,this),L.DomEvent.off(i,"touchstart touchend touchcancel",this._canvasTouchClick,this)),this._touchEventCounter=this._touchEventCounter<=1?0:this._touchEventCounter-1},_canvasTouchMove(i){Ae(this.map)._onMouseMove(this._createMouseEvent("mousemove",i))},_canvasTouchClick(i){let s="";i.type==="touchstart"||i.type==="pointerdown"?s="mousedown":(i.type==="touchend"||i.type==="pointerup"||i.type==="touchcancel"||i.type==="pointercancel")&&(s="mouseup"),s&&Ae(this.map)._onClick(this._createMouseEvent(s,i))},_createMouseEvent(i,s){let o,h=s.touches[0]||s.changedTouches[0];try{o=new MouseEvent(i,{bubbles:s.bubbles,cancelable:s.cancelable,view:s.view,detail:h.detail,screenX:h.screenX,screenY:h.screenY,clientX:h.clientX,clientY:h.clientY,ctrlKey:s.ctrlKey,altKey:s.altKey,shiftKey:s.shiftKey,metaKey:s.metaKey,button:s.button,relatedTarget:s.relatedTarget})}catch{o=document.createEvent("MouseEvents"),o.initMouseEvent(i,s.bubbles,s.cancelable,s.view,h.detail,h.screenX,h.screenY,h.clientX,h.clientY,s.ctrlKey,s.altKey,s.shiftKey,s.metaKey,s.button,s.relatedTarget)}return o}}),or=Io,mi=L.Control.extend({includes:[Gn],options:{position:"topleft",disableByOtherButtons:!0},initialize(i){this._button=L.Util.extend({},this.options,i)},onAdd(i){return this._map=i,this._map.pm.Toolbar.options.oneBlock?this._container=this._map.pm.Toolbar._createContainer(this.options.position):this._button.tool==="edit"?this._container=this._map.pm.Toolbar.editContainer:this._button.tool==="options"?this._container=this._map.pm.Toolbar.optionsContainer:this._button.tool==="custom"?this._container=this._map.pm.Toolbar.customContainer:this._container=this._map.pm.Toolbar.drawContainer,this._renderButton(),this._container},_renderButton(){let i=this.buttonsDomNode;this.buttonsDomNode=this._makeButton(this._button),i?i.replaceWith(this.buttonsDomNode):this._container.appendChild(this.buttonsDomNode)},onRemove(){return this.buttonsDomNode.remove(),this._container},getText(){return this._button.text},getIconUrl(){return this._button.iconUrl},destroy(){this._button={},this._update()},toggle(i){return typeof i=="boolean"?this._button.toggleStatus=i:this._button.toggleStatus=!this._button.toggleStatus,this._applyStyleClasses(),this._updateActiveAction(this._button),this._button.toggleStatus},toggled(){return this._button.toggleStatus},onCreate(){this.toggle(!1)},disable(){this.toggle(!1),this._button.disabled=!0,this._updateDisabled()},enable(){this._button.disabled=!1,this._updateDisabled(),this._updateActiveAction(this._button)},_triggerClick(i){i&&i.preventDefault(),!this._button.disabled&&(this._button.onClick(i,{button:this,event:i}),this._clicked(i),this._button.afterClick(i,{button:this,event:i}))},_makeButton(i){let s=this.options.position.indexOf("right")>-1?"pos-right":"",o=L.DomUtil.create("div",`button-container ${s}`,this._container);i.title&&o.setAttribute("title",i.title);let h=L.DomUtil.create("a","leaflet-buttons-control-button",o);h.setAttribute("role","button"),h.setAttribute("tabindex","0"),h.href="#";let c=L.DomUtil.create("div",`leaflet-pm-actions-container ${s}`,o),m=i.actions,y={cancel:{text:St("actions.cancel"),title:St("actions.cancel"),onClick(){this._triggerClick()}},finishMode:{text:St("actions.finish"),title:St("actions.finish"),onClick(){this._triggerClick()}},removeLastVertex:{text:St("actions.removeLastVertex"),title:St("actions.removeLastVertex"),onClick(){this._map.pm.Draw[i.jsClass]._removeLastVertex()}},finish:{text:St("actions.finish"),title:St("actions.finish"),onClick(b){this._map.pm.Draw[i.jsClass]._finishShape(b)}}};i._preparedActions=m.map(b=>{let P=typeof b=="string"?b:b.name,N;if(y[P])N=y[P];else if(b.text)N=b;else return N;let F=L.DomUtil.create("a",`leaflet-pm-action ${s} action-${P}`,c);if(F.setAttribute("role","button"),F.setAttribute("tabindex","0"),F.href="#",N.title&&(F.title=N.title),F.innerHTML=N.text,L.DomEvent.disableClickPropagation(F),L.DomEvent.on(F,"click",L.DomEvent.stop),N._node=F,!i.disabled&&N.onClick){let tt=it=>{it.preventDefault();let lt="",{buttons:ft}=this._map.pm.Toolbar;for(let At in ft)if(ft[At]._button===i){lt=At;break}this._fireActionClick(N,lt,i)};L.DomEvent.addListener(F,"click",tt,this),L.DomEvent.addListener(F,"click",N.onClick,this),L.DomEvent.addListener(F,"click",()=>this._updateActiveAction(i))}return N}),this._updateActiveAction(i),i.toggleStatus&&L.DomUtil.addClass(o,"active");let A=L.DomUtil.create("div","control-icon",h);return i.iconUrl&&A.setAttribute("src",i.iconUrl),i.className&&L.DomUtil.addClass(A,i.className),L.DomEvent.disableClickPropagation(h),L.DomEvent.on(h,"click",L.DomEvent.stop),i.disabled||(L.DomEvent.addListener(h,"click",this._onBtnClick,this),L.DomEvent.addListener(h,"click",this._triggerClick,this)),i.disabled&&(L.DomUtil.addClass(h,"pm-disabled"),h.setAttribute("aria-disabled","true")),o},_applyStyleClasses(){this._container&&(!this._button.toggleStatus||this._button.cssToggle===!1?(L.DomUtil.removeClass(this.buttonsDomNode,"active"),L.DomUtil.removeClass(this._container,"activeChild")):(L.DomUtil.addClass(this.buttonsDomNode,"active"),L.DomUtil.addClass(this._container,"activeChild")))},_onBtnClick(){if(this._button.disabled)return;this._button.disableOtherButtons&&this._map.pm.Toolbar.triggerClickOnToggledButtons(this);let i="",{buttons:s}=this._map.pm.Toolbar;for(let o in s)if(s[o]._button===this._button){i=o;break}this._fireButtonClick(i,this._button)},_clicked(){this._button.doToggle&&this.toggle()},_updateDisabled(){if(!this._container)return;let i="pm-disabled",s=this.buttonsDomNode.children[0];this._button.disabled?(L.DomUtil.addClass(s,i),s.setAttribute("aria-disabled","true")):(L.DomUtil.removeClass(s,i),s.setAttribute("aria-disabled","false"))},_updateActiveAction(i){var s;(s=i._preparedActions)==null||s.forEach(o=>{o!=null&&o._node&&(o.isActive&&o.isActive.call(this)?L.DomUtil.addClass(o._node,"active-action"):L.DomUtil.removeClass(o._node,"active-action"))})}}),hr=mi;L.Control.PMButton=hr;var lr=L.Class.extend({options:{drawMarker:!0,drawRectangle:!0,drawPolyline:!0,drawPolygon:!0,drawCircle:!0,drawCircleMarker:!0,drawText:!0,editMode:!0,dragMode:!0,cutPolygon:!0,removalMode:!0,rotateMode:!0,snappingOption:!0,drawControls:!0,editControls:!0,optionsControls:!0,customControls:!0,oneBlock:!1,position:"topleft",positions:{draw:"",edit:"",options:"",custom:""}},customButtons:[],initialize(i){this.customButtons=[],this.options.positions={draw:"",edit:"",options:"",custom:""},this.init(i)},reinit(){let i=this.isVisible;this.removeControls(),this._defineButtons(),i&&this.addControls()},init(i){this.map=i,this.buttons={},this.isVisible=!1,this.drawContainer=L.DomUtil.create("div","leaflet-pm-toolbar leaflet-pm-draw leaflet-bar leaflet-control"),this.editContainer=L.DomUtil.create("div","leaflet-pm-toolbar leaflet-pm-edit leaflet-bar leaflet-control"),this.optionsContainer=L.DomUtil.create("div","leaflet-pm-toolbar leaflet-pm-options leaflet-bar leaflet-control"),this.customContainer=L.DomUtil.create("div","leaflet-pm-toolbar leaflet-pm-custom leaflet-bar leaflet-control"),this._defineButtons()},_createContainer(i){let s=`${i}Container`;return this[s]||(this[s]=L.DomUtil.create("div",`leaflet-pm-toolbar leaflet-pm-${i} leaflet-bar leaflet-control`)),this[s]},getButtons(){return this.buttons},addControls(i=this.options){typeof i.editPolygon<"u"&&(i.editMode=i.editPolygon),typeof i.deleteLayer<"u"&&(i.removalMode=i.deleteLayer),L.Util.setOptions(this,i),this.applyIconStyle(),this.isVisible=!0,this._showHideButtons()},applyIconStyle(){let i=this.getButtons(),s={geomanIcons:{drawMarker:"control-icon leaflet-pm-icon-marker",drawPolyline:"control-icon leaflet-pm-icon-polyline",drawRectangle:"control-icon leaflet-pm-icon-rectangle",drawPolygon:"control-icon leaflet-pm-icon-polygon",drawCircle:"control-icon leaflet-pm-icon-circle",drawCircleMarker:"control-icon leaflet-pm-icon-circle-marker",editMode:"control-icon leaflet-pm-icon-edit",dragMode:"control-icon leaflet-pm-icon-drag",cutPolygon:"control-icon leaflet-pm-icon-cut",removalMode:"control-icon leaflet-pm-icon-delete",drawText:"control-icon leaflet-pm-icon-text"}};for(let o in i){let h=i[o];L.Util.setOptions(h,{className:s.geomanIcons[o]})}},removeControls(){let i=this.getButtons();for(let s in i)i[s].remove();this.isVisible=!1},toggleControls(i=this.options){this.isVisible?this.removeControls():this.addControls(i)},_addButton(i,s){return this.buttons[i]=s,this.options[i]=!!this.options[i]||!1,this.buttons[i]},triggerClickOnToggledButtons(i){for(let s in this.buttons){let o=this.buttons[s];o._button.disableByOtherButtons&&o!==i&&o.toggled()&&o._triggerClick()}},toggleButton(i,s,o=!0){i==="editPolygon"&&(i="editMode"),i==="deleteLayer"&&(i="removalMode");let h=i;return o&&this.triggerClickOnToggledButtons(this.buttons[h]),this.buttons[h]?this.buttons[h].toggle(s):!1},_defineButtons(){let i={className:"control-icon leaflet-pm-icon-marker",title:St("buttonTitles.drawMarkerButton"),jsClass:"Marker",onClick:()=>{},afterClick:(tt,it)=>{this.map.pm.Draw[it.button._button.jsClass].toggle()},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position,actions:["cancel"]},s={title:St("buttonTitles.drawPolyButton"),className:"control-icon leaflet-pm-icon-polygon",jsClass:"Polygon",onClick:()=>{},afterClick:(tt,it)=>{this.map.pm.Draw[it.button._button.jsClass].toggle()},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position,actions:["finish","removeLastVertex","cancel"]},o={className:"control-icon leaflet-pm-icon-polyline",title:St("buttonTitles.drawLineButton"),jsClass:"Line",onClick:()=>{},afterClick:(tt,it)=>{this.map.pm.Draw[it.button._button.jsClass].toggle()},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position,actions:["finish","removeLastVertex","cancel"]},h={title:St("buttonTitles.drawCircleButton"),className:"control-icon leaflet-pm-icon-circle",jsClass:"Circle",onClick:()=>{},afterClick:(tt,it)=>{this.map.pm.Draw[it.button._button.jsClass].toggle()},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position,actions:["cancel"]},c={title:St("buttonTitles.drawCircleMarkerButton"),className:"control-icon leaflet-pm-icon-circle-marker",jsClass:"CircleMarker",onClick:()=>{},afterClick:(tt,it)=>{this.map.pm.Draw[it.button._button.jsClass].toggle()},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position,actions:["cancel"]},m={title:St("buttonTitles.drawRectButton"),className:"control-icon leaflet-pm-icon-rectangle",jsClass:"Rectangle",onClick:()=>{},afterClick:(tt,it)=>{this.map.pm.Draw[it.button._button.jsClass].toggle()},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position,actions:["cancel"]},y={title:St("buttonTitles.editButton"),className:"control-icon leaflet-pm-icon-edit",onClick:()=>{},afterClick:()=>{this.map.pm.toggleGlobalEditMode()},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position,tool:"edit",actions:["finishMode"]},A={title:St("buttonTitles.dragButton"),className:"control-icon leaflet-pm-icon-drag",onClick:()=>{},afterClick:()=>{this.map.pm.toggleGlobalDragMode()},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position,tool:"edit",actions:["finishMode"]},b={title:St("buttonTitles.cutButton"),className:"control-icon leaflet-pm-icon-cut",jsClass:"Cut",onClick:()=>{},afterClick:(tt,it)=>{this.map.pm.Draw[it.button._button.jsClass].toggle({snappable:!0,cursorMarker:!0,allowSelfIntersection:!1})},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position,tool:"edit",actions:["finish","removeLastVertex","cancel"]},P={title:St("buttonTitles.deleteButton"),className:"control-icon leaflet-pm-icon-delete",onClick:()=>{},afterClick:()=>{this.map.pm.toggleGlobalRemovalMode()},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position,tool:"edit",actions:["finishMode"]},N={title:St("buttonTitles.rotateButton"),className:"control-icon leaflet-pm-icon-rotate",onClick:()=>{},afterClick:()=>{this.map.pm.toggleGlobalRotateMode()},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position,tool:"edit",actions:["finishMode"]},F={className:"control-icon leaflet-pm-icon-text",title:St("buttonTitles.drawTextButton"),jsClass:"Text",onClick:()=>{},afterClick:(tt,it)=>{this.map.pm.Draw[it.button._button.jsClass].toggle()},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position,actions:["cancel"]};this._addButton("drawMarker",new L.Control.PMButton(i)),this._addButton("drawPolyline",new L.Control.PMButton(o)),this._addButton("drawRectangle",new L.Control.PMButton(m)),this._addButton("drawPolygon",new L.Control.PMButton(s)),this._addButton("drawCircle",new L.Control.PMButton(h)),this._addButton("drawCircleMarker",new L.Control.PMButton(c)),this._addButton("drawText",new L.Control.PMButton(F)),this._addButton("editMode",new L.Control.PMButton(y)),this._addButton("dragMode",new L.Control.PMButton(A)),this._addButton("cutPolygon",new L.Control.PMButton(b)),this._addButton("removalMode",new L.Control.PMButton(P)),this._addButton("rotateMode",new L.Control.PMButton(N))},_showHideButtons(){if(!this.isVisible)return;this.removeControls(),this.isVisible=!0;let i=this.getButtons(),s=[];this.options.drawControls===!1&&(s=s.concat(Object.keys(i).filter(o=>!i[o]._button.tool))),this.options.editControls===!1&&(s=s.concat(Object.keys(i).filter(o=>i[o]._button.tool==="edit"))),this.options.optionsControls===!1&&(s=s.concat(Object.keys(i).filter(o=>i[o]._button.tool==="options"))),this.options.customControls===!1&&(s=s.concat(Object.keys(i).filter(o=>i[o]._button.tool==="custom")));for(let o in i)if(this.options[o]&&s.indexOf(o)===-1){let h=i[o]._button.tool;h||(h="draw"),i[o].setPosition(this._getBtnPosition(h)),i[o].addTo(this.map)}},_getBtnPosition(i){return this.options.positions&&this.options.positions[i]?this.options.positions[i]:this.options.position},setBlockPosition(i,s){this.options.positions[i]=s,this._showHideButtons(),this.changeControlOrder()},getBlockPositions(){return this.options.positions},copyDrawControl(i,s){if(s)typeof s!="object"&&(s={name:s});else throw new TypeError("Button has no name");let o=this._btnNameMapping(i);if(!s.name)throw new TypeError("Button has no name");if(this.buttons[s.name])throw new TypeError("Button with this name already exists");let h=this.map.pm.Draw.createNewDrawInstance(s.name,o);s={...this.buttons[o]._button,...s};let c=this.createCustomControl(s);return{drawInstance:h,control:c}},createCustomControl(i){if(!i.name)throw new TypeError("Button has no name");if(this.buttons[i.name])throw new TypeError("Button with this name already exists");i.onClick||(i.onClick=()=>{}),i.afterClick||(i.afterClick=()=>{}),i.toggle!==!1&&(i.toggle=!0),i.block&&(i.block=i.block.toLowerCase()),(!i.block||i.block==="draw")&&(i.block=""),i.className?i.className.indexOf("control-icon")===-1&&(i.className=`control-icon ${i.className}`):i.className="control-icon";let s={tool:i.block,className:i.className,title:i.title||"",jsClass:i.name,onClick:i.onClick,afterClick:i.afterClick,doToggle:i.toggle,toggleStatus:!1,disableOtherButtons:i.disableOtherButtons??!0,disableByOtherButtons:i.disableByOtherButtons??!0,cssToggle:i.toggle,position:this.options.position,actions:i.actions||[],disabled:!!i.disabled};this.options[i.name]!==!1&&(this.options[i.name]=!0);let o=this._addButton(i.name,new L.Control.PMButton(s));return this.changeControlOrder(),o},controlExists(i){return!!this.getButton(i)},getButton(i){return this.getButtons()[i]},getButtonsInBlock(i){let s={};if(i)for(let o in this.getButtons()){let h=this.getButtons()[o];(h._button.tool===i||i==="draw"&&!h._button.tool)&&(s[o]=h)}return s},changeControlOrder(i=[]){let s=this._shapeMapping(),o=[];i.forEach(m=>{s[m]?o.push(s[m]):o.push(m)});let h=this.getButtons(),c={};o.forEach(m=>{h[m]&&(c[m]=h[m])}),Object.keys(h).filter(m=>!h[m]._button.tool||h[m]._button.tool==="draw").forEach(m=>{o.indexOf(m)===-1&&(c[m]=h[m])}),Object.keys(h).filter(m=>h[m]._button.tool==="edit").forEach(m=>{o.indexOf(m)===-1&&(c[m]=h[m])}),Object.keys(h).filter(m=>h[m]._button.tool==="options").forEach(m=>{o.indexOf(m)===-1&&(c[m]=h[m])}),Object.keys(h).filter(m=>h[m]._button.tool==="custom").forEach(m=>{o.indexOf(m)===-1&&(c[m]=h[m])}),Object.keys(h).forEach(m=>{o.indexOf(m)===-1&&(c[m]=h[m])}),this.map.pm.Toolbar.buttons=c,this._showHideButtons()},getControlOrder(){let i=this.getButtons(),s=[];for(let o in i)s.push(o);return s},changeActionsOfControl(i,s){let o=this._btnNameMapping(i);if(!o)throw new TypeError("No name passed");if(!s)throw new TypeError("No actions passed");if(!this.buttons[o])throw new TypeError("Button with this name not exists");this.buttons[o]._button.actions=s,this.changeControlOrder()},setButtonDisabled(i,s){let o=this._btnNameMapping(i);s?this.buttons[o].disable():this.buttons[o].enable()},_shapeMapping(){return{Marker:"drawMarker",Circle:"drawCircle",Polygon:"drawPolygon",Rectangle:"drawRectangle",Polyline:"drawPolyline",Line:"drawPolyline",CircleMarker:"drawCircleMarker",Edit:"editMode",Drag:"dragMode",Cut:"cutPolygon",Removal:"removalMode",Rotate:"rotateMode",Text:"drawText"}},_btnNameMapping(i){let s=this._shapeMapping();return s[i]?s[i]:i}}),Ys=lr,Ro=M(Tn()),ur={_initSnappableMarkers(){this.options.snapDistance=this.options.snapDistance||30,this.options.snapSegment=this.options.snapSegment===void 0?!0:this.options.snapSegment,this._assignEvents(this._markers),this._layer.off("pm:dragstart",this._unsnap,this),this._layer.on("pm:dragstart",this._unsnap,this)},_disableSnapping(){this._layer.off("pm:dragstart",this._unsnap,this)},_assignEvents(i){i.forEach(s=>{if(Array.isArray(s)){this._assignEvents(s);return}s.off("drag",this._handleSnapping,this),s.on("drag",this._handleSnapping,this),s.off("dragend",this._cleanupSnapping,this),s.on("dragend",this._cleanupSnapping,this)})},_cleanupSnapping(i){if(i){let s=i.target;s._snapped=!1}delete this._snapList,this.throttledList&&(this._map.off("layeradd",this.throttledList,this),this.throttledList=void 0),this._map.off("layerremove",this._handleSnapLayerRemoval,this),this.debugIndicatorLines&&this.debugIndicatorLines.forEach(s=>{s.remove()})},_handleThrottleSnapping(){this.throttledList&&this._createSnapList()},_handleSnapping(i){var A,b,P;let s=i.target;if(s._snapped=!1,this.throttledList||(this.throttledList=L.Util.throttle(this._handleThrottleSnapping,100,this)),((A=i==null?void 0:i.originalEvent)==null?void 0:A.altKey)||((P=(b=this._map)==null?void 0:b.pm)==null?void 0:P.Keyboard.isAltKeyPressed())||(this._snapList===void 0&&(this._createSnapList(),this._map.off("layeradd",this.throttledList,this),this._map.on("layeradd",this.throttledList,this)),this._snapList.length<=0))return!1;let o=this._calcClosestLayer(s.getLatLng(),this._snapList);if(Object.keys(o).length===0)return!1;let h=o.layer instanceof L.Marker||o.layer instanceof L.CircleMarker||!this.options.snapSegment,c;h?c=o.latlng:c=this._checkPrioritiySnapping(o);let m=this.options.snapDistance,y={marker:s,shape:this._shape,snapLatLng:c,segment:o.segment,layer:this._layer,workingLayer:this._layer,layerInteractedWith:o.layer,distance:o.distance};if(this._fireSnapDrag(y.marker,y),this._fireSnapDrag(this._layer,y),o.distance<m){s._orgLatLng=s.getLatLng(),s.setLatLng(c),s._snapped=!0,s._snapInfo=y;let N=()=>{this._snapLatLng=c,this._fireSnap(s,y),this._fireSnap(this._layer,y)},F=this._snapLatLng||{},tt=c||{};(F.lat!==tt.lat||F.lng!==tt.lng)&&N()}else this._snapLatLng&&(this._unsnap(y),s._snapped=!1,s._snapInfo=void 0,this._fireUnsnap(y.marker,y),this._fireUnsnap(this._layer,y));return!0},_createSnapList(){let i=[],s=[],o=this._map;o.off("layerremove",this._handleSnapLayerRemoval,this),o.on("layerremove",this._handleSnapLayerRemoval,this),o.eachLayer(h=>{if((h instanceof L.Polyline||h instanceof L.Marker||h instanceof L.CircleMarker||h instanceof L.ImageOverlay)&&h.options.snapIgnore!==!0){if(h.options.snapIgnore===void 0&&(!L.PM.optIn&&h.options.pmIgnore===!0||L.PM.optIn&&h.options.pmIgnore!==!1))return;(h instanceof L.Circle||h instanceof L.CircleMarker)&&h.pm&&h.pm._hiddenPolyCircle?i.push(h.pm._hiddenPolyCircle):h instanceof L.ImageOverlay&&(h=L.rectangle(h.getBounds())),i.push(h);let c=L.polyline([],{color:"red",pmIgnore:!0});c._pmTempLayer=!0,s.push(c),(h instanceof L.Circle||h instanceof L.CircleMarker)&&s.push(c)}}),i=i.filter(h=>this._layer!==h),i=i.filter(h=>h._latlng||h._latlngs&&Pi(h._latlngs)),i=i.filter(h=>!h._pmTempLayer),this._otherSnapLayers?(this._otherSnapLayers.forEach(()=>{let h=L.polyline([],{color:"red",pmIgnore:!0});h._pmTempLayer=!0,s.push(h)}),this._snapList=i.concat(this._otherSnapLayers)):this._snapList=i,this.debugIndicatorLines=s},_handleSnapLayerRemoval({layer:i}){if(!i._leaflet_id)return;let s=this._snapList.findIndex(o=>o._leaflet_id===i._leaflet_id);s>-1&&this._snapList.splice(s,1)},_calcClosestLayer(i,s){return this._calcClosestLayers(i,s,1)[0]},_calcClosestLayers(i,s,o=1){let h=[],c={};s.forEach((y,A)=>{var P;if(y._parentCopy&&y._parentCopy===this._layer||((P=y.getLatLngs)==null?void 0:P.call(y).flat(5).length)<2)return;let b=this._calcLayerDistances(i,y);if(b.distance=Math.floor(b.distance),this.debugIndicatorLines){if(!this.debugIndicatorLines[A]){let N=L.polyline([],{color:"red",pmIgnore:!0});N._pmTempLayer=!0,this.debugIndicatorLines[A]=N}this.debugIndicatorLines[A].setLatLngs([i,b.latlng])}o===1&&(c.distance===void 0||b.distance-5<=c.distance)?(b.distance+5<c.distance&&(h=[]),c=b,c.layer=y,h.push(c)):o!==1&&(c={},c=b,c.layer=y,h.push(c))}),o!==1&&(h=h.sort((y,A)=>y.distance-A.distance)),o===-1&&(o=h.length);let m=this._getClosestLayerByPriority(h,o);return L.Util.isArray(m)?m:[m]},_calcLayerDistances(i,s){let o=this._map,h=s instanceof L.Marker||s instanceof L.CircleMarker,c=s instanceof L.Polygon,m=i;if(h){let y=s.getLatLng();return{latlng:{...y},distance:this._getDistance(o,y,m)}}return this._calcLatLngDistances(m,s.getLatLngs(),o,c)},_calcLatLngDistances(i,s,o,h=!1){let c,m,y,A=b=>{b.forEach((P,N)=>{if(Array.isArray(P)){A(P);return}if(this.options.snapSegment){let F=P,tt;h?tt=N+1===b.length?0:N+1:tt=N+1===b.length?void 0:N+1;let it=b[tt];if(it){let lt=this._getDistanceToSegment(o,i,F,it);(m===void 0||lt<m)&&(m=lt,y=[F,it])}}else{let F=this._getDistance(o,i,P);(m===void 0||F<m)&&(m=F,c=P)}})};return A(s),this.options.snapSegment?{latlng:{...this._getClosestPointOnSegment(o,i,y[0],y[1])},segment:y,distance:m}:{latlng:c,distance:m}},_getClosestLayerByPriority(i,s=1){i=i.sort((y,A)=>y._leaflet_id-A._leaflet_id);let o=["Marker","CircleMarker","Circle","Line","Polygon","Rectangle"],h=this._map.pm.globalOptions.snappingOrder||[],c=0,m={};return h.concat(o).forEach(y=>{m[y]||(c+=1,m[y]=c)}),i.sort(Oo("instanceofShape",m)),s===1?i[0]||{}:i.slice(0,s)},_checkPrioritiySnapping(i){let s=this._map,o=i.segment[0],h=i.segment[1],c=i.latlng,m=c;if(this.options.snapVertex){let y=this._getDistance(s,o,c),A=this._getDistance(s,h,c),b=y<A?o:h,P=y<A?y:A;if(this.options.snapMiddle){let F=L.PM.Utils.calcMiddleLatLng(s,o,h),tt=this._getDistance(s,F,c);tt<y&&tt<A&&(b=F,P=tt)}let N=this.options.snapDistance;P<N&&(m=b)}return{...m}},_unsnap(){delete this._snapLatLng},_getClosestPointOnSegment(i,s,o,h){let c=i.getMaxZoom();c===1/0&&(c=i.getZoom());let m=i.project(s,c),y=i.project(o,c),A=i.project(h,c),b=L.LineUtil.closestPointOnSegment(m,y,A);return i.unproject(b,c)},_getDistanceToSegment(i,s,o,h){let c=i.latLngToContainerPoint(s),m=i.latLngToContainerPoint(o),y=i.latLngToContainerPoint(h);return L.LineUtil.pointToSegmentDistance(c,m,y)},_getDistance(i,s,o){return i.latLngToContainerPoint(s).distanceTo(i.latLngToContainerPoint(o))}},Js=ur,Fo=L.Class.extend({includes:[Js,Gn],options:{snappable:!0,snapDistance:20,snapMiddle:!1,allowSelfIntersection:!0,tooltips:!0,templineStyle:{},hintlineStyle:{color:"#3388ff",dashArray:"5,5"},pathOptions:null,cursorMarker:!0,finishOn:null,markerStyle:{draggable:!0,icon:L.icon()},hideMiddleMarkers:!1,minRadiusCircle:null,maxRadiusCircle:null,minRadiusCircleMarker:null,maxRadiusCircleMarker:null,resizeableCircleMarker:!1,resizeableCircle:!0,markerEditable:!0,continueDrawing:!1,snapSegment:!0,requireSnapToFinish:!1,rectangleAngle:0,textOptions:{text:null,focusAfterDraw:null,removeIfEmpty:null,className:null},snapVertex:!0},setOptions(i){L.Util.setOptions(this,i),this.setStyle(this.options)},setStyle(){},getOptions(){return this.options},initialize(i){let s=new L.Icon.Default;s.options.tooltipAnchor=[0,0],this.options.markerStyle.icon=s,this._map=i,this.shapes=["Marker","CircleMarker","Line","Polygon","Rectangle","Circle","Cut","Text"],this.shapes.forEach(o=>{this[o]=new L.PM.Draw[o](this._map)}),this.Marker.setOptions({continueDrawing:!0}),this.CircleMarker.setOptions({continueDrawing:!0})},setPathOptions(i,s=!1){s?this.options.pathOptions=(0,Ro.default)(this.options.pathOptions,i):this.options.pathOptions=i},getShapes(){return this.shapes},getShape(){return this._shape},enable(i,s){if(!i)throw new Error(`Error: Please pass a shape as a parameter. Possible shapes are: ${this.getShapes().join(",")}`);this.disable(),this[i].enable(s)},disable(){this.shapes.forEach(i=>{this[i].disable()})},addControls(){this.shapes.forEach(i=>{this[i].addButton()})},getActiveShape(){let i;return this.shapes.forEach(s=>{this[s]._enabled&&(i=s)}),i},_setGlobalDrawMode(){this._shape==="Cut"?this._fireGlobalCutModeToggled():this._fireGlobalDrawModeToggled();let i=[];this._map.eachLayer(s=>{(s instanceof L.Polyline||s instanceof L.Marker||s instanceof L.Circle||s instanceof L.CircleMarker||s instanceof L.ImageOverlay)&&(s._pmTempLayer||i.push(s))}),this._enabled?i.forEach(s=>{L.PM.Utils.disablePopup(s)}):i.forEach(s=>{L.PM.Utils.enablePopup(s)})},createNewDrawInstance(i,s){let o=this._getShapeFromBtnName(s);if(this[i])throw new TypeError("Draw Type already exists");if(!L.PM.Draw[o])throw new TypeError(`There is no class L.PM.Draw.${o}`);return this[i]=new L.PM.Draw[o](this._map),this[i].toolbarButtonName=i,this[i]._shape=i,this.shapes.push(i),this[s]&&this[i].setOptions(this[s].options),this[i].setOptions(this[i].options),this[i]},_getShapeFromBtnName(i){let s={drawMarker:"Marker",drawCircle:"Circle",drawPolygon:"Polygon",drawPolyline:"Line",drawRectangle:"Rectangle",drawCircleMarker:"CircleMarker",editMode:"Edit",dragMode:"Drag",cutPolygon:"Cut",removalMode:"Removal",rotateMode:"Rotate",drawText:"Text"};return s[i]?s[i]:this[i]?this[i]._shape:i},_finishLayer(i){i.pm&&(i.pm.setOptions(this.options),i.pm._shape=this._shape,i.pm._map=this._map),this._addDrawnLayerProp(i)},_addDrawnLayerProp(i){i._drawnByGeoman=!0},_setPane(i,s){s==="layerPane"?i.options.pane=this._map.pm.globalOptions.panes&&this._map.pm.globalOptions.panes.layerPane||"overlayPane":s==="vertexPane"?i.options.pane=this._map.pm.globalOptions.panes&&this._map.pm.globalOptions.panes.vertexPane||"markerPane":s==="markerPane"&&(i.options.pane=this._map.pm.globalOptions.panes&&this._map.pm.globalOptions.panes.markerPane||"markerPane")},_isFirstLayer(){return(this._map||this._layer._map).pm.getGeomanLayers().length===0}}),de=Fo;de.Marker=de.extend({initialize(i){this._map=i,this._shape="Marker",this.toolbarButtonName="drawMarker"},enable(i){L.Util.setOptions(this,i),this._enabled=!0,this._map.getContainer().classList.add("geoman-draw-cursor"),this._map.on("click",this._createMarker,this),this._map.pm.Toolbar.toggleButton(this.toolbarButtonName,!0),this._hintMarker=L.marker(this._map.getCenter(),this.options.markerStyle),this._setPane(this._hintMarker,"markerPane"),this._hintMarker._pmTempLayer=!0,this._hintMarker.addTo(this._map),this.options.tooltips&&this._hintMarker.bindTooltip(St("tooltips.placeMarker"),{permanent:!0,offset:L.point(0,10),direction:"bottom",opacity:.8}).openTooltip(),this._layer=this._hintMarker,this._map.on("mousemove",this._syncHintMarker,this),this.options.markerEditable&&this._map.eachLayer(s=>{this.isRelevantMarker(s)&&s.pm.enable()}),this._fireDrawStart(),this._setGlobalDrawMode()},disable(){this._enabled&&(this._enabled=!1,this._map.getContainer().classList.remove("geoman-draw-cursor"),this._map.off("click",this._createMarker,this),this._hintMarker.remove(),this._map.off("mousemove",this._syncHintMarker,this),this._map.eachLayer(i=>{this.isRelevantMarker(i)&&i.pm.disable()}),this._map.pm.Toolbar.toggleButton(this.toolbarButtonName,!1),this.options.snappable&&this._cleanupSnapping(),this._fireDrawEnd(),this._setGlobalDrawMode())},enabled(){return this._enabled},toggle(i){this.enabled()?this.disable():this.enable(i)},isRelevantMarker(i){return i instanceof L.Marker&&i.pm&&!i._pmTempLayer&&!i.pm._initTextMarker},_syncHintMarker(i){if(this._hintMarker.setLatLng(i.latlng),this.options.snappable){let s=i;s.target=this._hintMarker,this._handleSnapping(s)}this._fireChange(this._hintMarker.getLatLng(),"Draw")},_createMarker(i){if(!i.latlng||this.options.requireSnapToFinish&&!this._hintMarker._snapped&&!this._isFirstLayer())return;this._hintMarker._snapped||this._hintMarker.setLatLng(i.latlng);let s=this._hintMarker.getLatLng(),o=new L.Marker(s,this.options.markerStyle);this._setPane(o,"markerPane"),this._finishLayer(o),o.pm||(o.options.draggable=!1),o.addTo(this._map.pm._getContainingLayer()),o.pm&&this.options.markerEditable?o.pm.enable():o.dragging&&o.dragging.disable(),this._fireCreate(o),this._cleanupSnapping(),this.options.continueDrawing||this.disable()},setStyle(){var i,s;(i=this.options.markerStyle)!=null&&i.icon&&((s=this._hintMarker)==null||s.setIcon(this.options.markerStyle.icon))}});var _e=63710088e-1,cr={centimeters:_e*100,centimetres:_e*100,degrees:_e/111325,feet:_e*3.28084,inches:_e*39.37,kilometers:_e/1e3,kilometres:_e/1e3,meters:_e,metres:_e,miles:_e/1609.344,millimeters:_e*1e3,millimetres:_e*1e3,nauticalmiles:_e/1852,radians:1,yards:_e*1.0936};function ki(i,s,o){o===void 0&&(o={});var h={type:"Feature"};return(o.id===0||o.id)&&(h.id=o.id),o.bbox&&(h.bbox=o.bbox),h.properties=s||{},h.geometry=i,h}function Si(i,s,o){if(o===void 0&&(o={}),!i)throw new Error("coordinates is required");if(!Array.isArray(i))throw new Error("coordinates must be an Array");if(i.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!Qs(i[0])||!Qs(i[1]))throw new Error("coordinates must contain numbers");var h={type:"Point",coordinates:i};return ki(h,s,o)}function gi(i,s,o){if(o===void 0&&(o={}),i.length<2)throw new Error("coordinates must be an array of two or more positions");var h={type:"LineString",coordinates:i};return ki(h,s,o)}function Ee(i,s){s===void 0&&(s={});var o={type:"FeatureCollection"};return s.id&&(o.id=s.id),s.bbox&&(o.bbox=s.bbox),o.features=i,o}function Go(i,s){s===void 0&&(s="kilometers");var o=cr[s];if(!o)throw new Error(s+" units is invalid");return i*o}function cn(i,s){s===void 0&&(s="kilometers");var o=cr[s];if(!o)throw new Error(s+" units is invalid");return i/o}function Pe(i){var s=i%(2*Math.PI);return s*180/Math.PI}function Ue(i){var s=i%360;return s*Math.PI/180}function Qs(i){return!isNaN(i)&&i!==null&&!Array.isArray(i)}function jn(i){var s,o,h={type:"FeatureCollection",features:[]};if(i.type==="Feature"?o=i.geometry:o=i,o.type==="LineString")s=[o.coordinates];else if(o.type==="MultiLineString")s=o.coordinates;else if(o.type==="MultiPolygon")s=[].concat.apply([],o.coordinates);else if(o.type==="Polygon")s=o.coordinates;else throw new Error("Input must be a LineString, MultiLineString, Polygon, or MultiPolygon Feature or Geometry");return s.forEach(function(c){s.forEach(function(m){for(var y=0;y<c.length-1;y++)for(var A=y;A<m.length-1;A++)if(!(c===m&&(Math.abs(y-A)===1||y===0&&A===c.length-2&&c[y][0]===c[c.length-1][0]&&c[y][1]===c[c.length-1][1]))){var b=ta(c[y][0],c[y][1],c[y+1][0],c[y+1][1],m[A][0],m[A][1],m[A+1][0],m[A+1][1]);b&&h.features.push(Si([b[0],b[1]]))}})}),h}function ta(i,s,o,h,c,m,y,A){var b,P,N,F,tt,it={x:null,y:null,onLine1:!1,onLine2:!1};return b=(A-m)*(o-i)-(y-c)*(h-s),b===0?it.x!==null&&it.y!==null?it:!1:(P=s-m,N=i-c,F=(y-c)*P-(A-m)*N,tt=(o-i)*P-(h-s)*N,P=F/b,N=tt/b,it.x=i+P*(o-i),it.y=s+P*(h-s),P>=0&&P<=1&&(it.onLine1=!0),N>=0&&N<=1&&(it.onLine2=!0),it.onLine1&&it.onLine2?[it.x,it.y]:!1)}de.Line=de.extend({initialize(i){this._map=i,this._shape="Line",this.toolbarButtonName="drawPolyline",this._doesSelfIntersect=!1},enable(i){L.Util.setOptions(this,i),this._enabled=!0,this._markers=[],this._layerGroup=new L.FeatureGroup,this._layerGroup._pmTempLayer=!0,this._layerGroup.addTo(this._map),this._layer=L.polyline([],{...this.options.templineStyle,pmIgnore:!1}),this._setPane(this._layer,"layerPane"),this._layer._pmTempLayer=!0,this._layerGroup.addLayer(this._layer),this._hintline=L.polyline([],this.options.hintlineStyle),this._setPane(this._hintline,"layerPane"),this._hintline._pmTempLayer=!0,this._layerGroup.addLayer(this._hintline),this._hintMarker=L.marker(this._map.getCenter(),{interactive:!1,zIndexOffset:100,icon:L.divIcon({className:"marker-icon cursor-marker"})}),this._setPane(this._hintMarker,"vertexPane"),this._hintMarker._pmTempLayer=!0,this._layerGroup.addLayer(this._hintMarker),this.options.cursorMarker&&L.DomUtil.addClass(this._hintMarker._icon,"visible"),this.options.tooltips&&this._hintMarker.bindTooltip(St("tooltips.firstVertex"),{permanent:!0,offset:L.point(0,10),direction:"bottom",opacity:.8}).openTooltip(),this._map.getContainer().classList.add("geoman-draw-cursor"),this._map.on("click",this._createVertex,this),this.options.finishOn&&this.options.finishOn!=="snap"&&this._map.on(this.options.finishOn,this._finishShape,this),this.options.finishOn==="dblclick"&&(this.tempMapDoubleClickZoomState=this._map.doubleClickZoom._enabled,this.tempMapDoubleClickZoomState&&this._map.doubleClickZoom.disable()),this._map.on("mousemove",this._syncHintMarker,this),this._hintMarker.on("move",this._syncHintLine,this),this._map.pm.Toolbar.toggleButton(this.toolbarButtonName,!0),this._otherSnapLayers=[],this.isRed=!1,this._fireDrawStart(),this._setGlobalDrawMode()},disable(){this._enabled&&(this._enabled=!1,this._map.getContainer().classList.remove("geoman-draw-cursor"),this._map.off("click",this._createVertex,this),this._map.off("mousemove",this._syncHintMarker,this),this.options.finishOn&&this.options.finishOn!=="snap"&&this._map.off(this.options.finishOn,this._finishShape,this),this.tempMapDoubleClickZoomState&&this._map.doubleClickZoom.enable(),this._map.removeLayer(this._layerGroup),this._map.pm.Toolbar.toggleButton(this.toolbarButtonName,!1),this.options.snappable&&this._cleanupSnapping(),this._fireDrawEnd(),this._setGlobalDrawMode())},enabled(){return this._enabled},toggle(i){this.enabled()?this.disable():this.enable(i)},_syncHintLine(){let i=this._layer.getLatLngs();if(i.length>0){let s=i[i.length-1];this._hintline.setLatLngs([s,this._hintMarker.getLatLng()])}},_syncHintMarker(i){if(this._hintMarker.setLatLng(i.latlng),this.options.snappable){let o=i;o.target=this._hintMarker,this._handleSnapping(o)}this.options.allowSelfIntersection||this._handleSelfIntersection(!0,this._hintMarker.getLatLng());let s=this._layer._defaultShape().slice();s.push(this._hintMarker.getLatLng()),this._change(s)},hasSelfIntersection(){return jn(this._layer.toGeoJSON(15)).features.length>0},_handleSelfIntersection(i,s){let o=L.polyline(this._layer.getLatLngs());i&&(s||(s=this._hintMarker.getLatLng()),o.addLatLng(s));let h=jn(o.toGeoJSON(15));this._doesSelfIntersect=h.features.length>0,this._doesSelfIntersect?this.isRed||(this.isRed=!0,this._hintline.setStyle({color:"#f00000ff"}),this._fireIntersect(h,this._map,"Draw")):this._hintline.isEmpty()||(this.isRed=!1,this._hintline.setStyle(this.options.hintlineStyle))},_createVertex(i){if(!this.options.allowSelfIntersection&&(this._handleSelfIntersection(!0,i.latlng),this._doesSelfIntersect))return;this._hintMarker._snapped||this._hintMarker.setLatLng(i.latlng);let s=this._hintMarker.getLatLng(),o=this._layer.getLatLngs(),h=o[o.length-1];if(s.equals(o[0])||o.length>0&&s.equals(h)){this._finishShape();return}this._layer._latlngInfo=this._layer._latlngInfo||[],this._layer._latlngInfo.push({latlng:s,snapInfo:this._hintMarker._snapInfo}),this._layer.addLatLng(s);let c=this._createMarker(s);this._setTooltipText(),this._setHintLineAfterNewVertex(s),this._fireVertexAdded(c,void 0,s,"Draw"),this._change(this._layer.getLatLngs()),this.options.finishOn==="snap"&&this._hintMarker._snapped&&this._finishShape(i)},_setHintLineAfterNewVertex(i){this._hintline.setLatLngs([i,i])},_removeLastVertex(){let i=this._markers;if(i.length<=1){this.disable();return}let s=this._layer.getLatLngs(),o=i[i.length-1],{indexPath:h}=L.PM.Utils.findDeepMarkerIndex(i,o);i.pop(),this._layerGroup.removeLayer(o);let c=i[i.length-1],m=s.indexOf(c.getLatLng());s=s.slice(0,m+1),this._layer.setLatLngs(s),this._layer._latlngInfo.pop(),this._syncHintLine(),this._setTooltipText(),this._fireVertexRemoved(o,h,"Draw"),this._change(this._layer.getLatLngs())},_finishShape(){if(!this.options.allowSelfIntersection&&(this._handleSelfIntersection(!1),this._doesSelfIntersect)||this.options.requireSnapToFinish&&!this._hintMarker._snapped&&!this._isFirstLayer())return;let i=this._layer.getLatLngs();if(i.length<=1)return;let s=L.polyline(i,this.options.pathOptions);this._setPane(s,"layerPane"),this._finishLayer(s),s.addTo(this._map.pm._getContainingLayer()),this._fireCreate(s),this.options.snappable&&this._cleanupSnapping();let o=this._hintMarker.getLatLng();this.disable(),this.options.continueDrawing&&(this.enable(),this._hintMarker.setLatLng(o))},_createMarker(i){let s=new L.Marker(i,{draggable:!1,icon:L.divIcon({className:"marker-icon"})});return this._setPane(s,"vertexPane"),s._pmTempLayer=!0,this._layerGroup.addLayer(s),this._markers.push(s),s.on("click",this._finishShape,this),s},_setTooltipText(){let{length:i}=this._layer.getLatLngs().flat(),s="";i<=1?s=St("tooltips.continueLine"):s=St("tooltips.finishLine"),this._hintMarker.setTooltipContent(s)},_change(i){this._fireChange(i,"Draw")},setStyle(){var i,s;(i=this._layer)==null||i.setStyle(this.options.templineStyle),(s=this._hintline)==null||s.setStyle(this.options.hintlineStyle)}}),de.Polygon=de.Line.extend({initialize(i){this._map=i,this._shape="Polygon",this.toolbarButtonName="drawPolygon"},enable(i){L.PM.Draw.Line.prototype.enable.call(this,i),this._layer.pm._shape="Polygon"},_createMarker(i){let s=new L.Marker(i,{draggable:!1,icon:L.divIcon({className:"marker-icon"})});return this._setPane(s,"vertexPane"),s._pmTempLayer=!0,this._layerGroup.addLayer(s),this._markers.push(s),this._layer.getLatLngs().flat().length===1?(s.on("click",this._finishShape,this),this._tempSnapLayerIndex=this._otherSnapLayers.push(s)-1,this.options.snappable&&this._cleanupSnapping()):s.on("click",()=>1),s},_setTooltipText(){let{length:i}=this._layer.getLatLngs().flat(),s="";i<=2?s=St("tooltips.continueLine"):s=St("tooltips.finishPoly"),this._hintMarker.setTooltipContent(s)},_finishShape(){if(!this.options.allowSelfIntersection&&(this._handleSelfIntersection(!0,this._layer.getLatLngs()[0]),this._doesSelfIntersect)||this.options.requireSnapToFinish&&!this._hintMarker._snapped&&!this._isFirstLayer())return;let i=this._layer.getLatLngs();if(i.length<=2)return;let s=L.polygon(i,this.options.pathOptions);this._setPane(s,"layerPane"),this._finishLayer(s),s.addTo(this._map.pm._getContainingLayer()),this._fireCreate(s),this._cleanupSnapping(),this._otherSnapLayers.splice(this._tempSnapLayerIndex,1),delete this._tempSnapLayerIndex;let o=this._hintMarker.getLatLng();this.disable(),this.options.continueDrawing&&(this.enable(),this._hintMarker.setLatLng(o))}}),de.Rectangle=de.extend({initialize(i){this._map=i,this._shape="Rectangle",this.toolbarButtonName="drawRectangle"},enable(i){if(L.Util.setOptions(this,i),this._enabled=!0,this._layerGroup=new L.FeatureGroup,this._layerGroup._pmTempLayer=!0,this._layerGroup.addTo(this._map),this._layer=L.rectangle([[0,0],[0,0]],this.options.pathOptions),this._setPane(this._layer,"layerPane"),this._layer._pmTempLayer=!0,this._startMarker=L.marker(this._map.getCenter(),{icon:L.divIcon({className:"marker-icon rect-start-marker"}),draggable:!1,zIndexOffset:-100,opacity:this.options.cursorMarker?1:0}),this._setPane(this._startMarker,"vertexPane"),this._startMarker._pmTempLayer=!0,this._layerGroup.addLayer(this._startMarker),this._hintMarker=L.marker(this._map.getCenter(),{zIndexOffset:150,icon:L.divIcon({className:"marker-icon cursor-marker"})}),this._setPane(this._hintMarker,"vertexPane"),this._hintMarker._pmTempLayer=!0,this._layerGroup.addLayer(this._hintMarker),this.options.cursorMarker&&L.DomUtil.addClass(this._hintMarker._icon,"visible"),this.options.tooltips&&this._hintMarker.bindTooltip(St("tooltips.firstVertex"),{permanent:!0,offset:L.point(0,10),direction:"bottom",opacity:.8}).openTooltip(),this.options.cursorMarker){this._styleMarkers=[];for(let s=0;s<2;s+=1){let o=L.marker(this._map.getCenter(),{icon:L.divIcon({className:"marker-icon rect-style-marker"}),draggable:!1,zIndexOffset:100});this._setPane(o,"vertexPane"),o._pmTempLayer=!0,this._layerGroup.addLayer(o),this._styleMarkers.push(o)}}this._map.getContainer().classList.add("geoman-draw-cursor"),this._map.on("click",this._placeStartingMarkers,this),this._map.on("mousemove",this._syncHintMarker,this),this._map.pm.Toolbar.toggleButton(this.toolbarButtonName,!0),this._otherSnapLayers=[],this._fireDrawStart(),this._setGlobalDrawMode()},disable(){this._enabled&&(this._enabled=!1,this._map.getContainer().classList.remove("geoman-draw-cursor"),this._map.off("click",this._finishShape,this),this._map.off("click",this._placeStartingMarkers,this),this._map.off("mousemove",this._syncHintMarker,this),this._map.removeLayer(this._layerGroup),this._map.pm.Toolbar.toggleButton(this.toolbarButtonName,!1),this.options.snappable&&this._cleanupSnapping(),this._fireDrawEnd(),this._setGlobalDrawMode())},enabled(){return this._enabled},toggle(i){this.enabled()?this.disable():this.enable(i)},_placeStartingMarkers(i){this._hintMarker._snapped||this._hintMarker.setLatLng(i.latlng);let s=this._hintMarker.getLatLng();L.DomUtil.addClass(this._startMarker._icon,"visible"),this._startMarker.setLatLng(s),this.options.cursorMarker&&this._styleMarkers&&this._styleMarkers.forEach(o=>{L.DomUtil.addClass(o._icon,"visible"),o.setLatLng(s)}),this._map.off("click",this._placeStartingMarkers,this),this._map.on("click",this._finishShape,this),this._hintMarker.setTooltipContent(St("tooltips.finishRect")),this._setRectangleOrigin()},_setRectangleOrigin(){let i=this._startMarker.getLatLng();i&&(this._layerGroup.addLayer(this._layer),this._layer.setLatLngs([i,i]),this._hintMarker.on("move",this._syncRectangleSize,this))},_syncHintMarker(i){if(this._hintMarker.setLatLng(i.latlng),this.options.snappable){let o=i;o.target=this._hintMarker,this._handleSnapping(o)}let s=this._layerGroup&&this._layerGroup.hasLayer(this._layer)?this._layer.getLatLngs():[this._hintMarker.getLatLng()];this._fireChange(s,"Draw")},_syncRectangleSize(){let i=rr(this._startMarker.getLatLng(),this._map),s=rr(this._hintMarker.getLatLng(),this._map),o=L.PM.Utils._getRotatedRectangle(i,s,this.options.rectangleAngle||0,this._map);if(this._layer.setLatLngs(o),this.options.cursorMarker&&this._styleMarkers){let h=[];o.forEach(c=>{!c.equals(i,1e-8)&&!c.equals(s,1e-8)&&h.push(c)}),h.forEach((c,m)=>{try{this._styleMarkers[m].setLatLng(c)}catch{}})}},_findCorners(){let i=this._layer.getLatLngs()[0];return L.PM.Utils._getRotatedRectangle(i[0],i[2],this.options.rectangleAngle||0,this._map)},_finishShape(i){this._hintMarker._snapped||this._hintMarker.setLatLng(i.latlng);let s=this._hintMarker.getLatLng(),o=this._startMarker.getLatLng();if(this.options.requireSnapToFinish&&!this._hintMarker._snapped&&!this._isFirstLayer()||o.equals(s))return;let h=L.rectangle([o,s],this.options.pathOptions);if(this.options.rectangleAngle){let m=L.PM.Utils._getRotatedRectangle(o,s,this.options.rectangleAngle||0,this._map);h.setLatLngs(m),h.pm&&h.pm._setAngle(this.options.rectangleAngle||0)}this._setPane(h,"layerPane"),this._finishLayer(h),h.addTo(this._map.pm._getContainingLayer()),this._fireCreate(h);let c=this._hintMarker.getLatLng();this.disable(),this.options.continueDrawing&&(this.enable(),this._hintMarker.setLatLng(c))},setStyle(){var i;(i=this._layer)==null||i.setStyle(this.options.pathOptions)}}),de.CircleMarker=de.extend({initialize(i){this._map=i,this._shape="CircleMarker",this.toolbarButtonName="drawCircleMarker",this._layerIsDragging=!1,this._BaseCircleClass=L.CircleMarker,this._minRadiusOption="minRadiusCircleMarker",this._maxRadiusOption="maxRadiusCircleMarker",this._editableOption="resizeableCircleMarker",this._defaultRadius=10},enable(i){if(L.Util.setOptions(this,i),this.options.editable&&(this.options.resizeableCircleMarker=this.options.editable,delete this.options.editable),this._enabled=!0,this._map.pm.Toolbar.toggleButton(this.toolbarButtonName,!0),this._map.getContainer().classList.add("geoman-draw-cursor"),this.options[this._editableOption]){let s={};L.extend(s,this.options.templineStyle),s.radius=0,this._layerGroup=new L.FeatureGroup,this._layerGroup._pmTempLayer=!0,this._layerGroup.addTo(this._map),this._layer=new this._BaseCircleClass(this._map.getCenter(),s),this._setPane(this._layer,"layerPane"),this._layer._pmTempLayer=!0,this._centerMarker=L.marker(this._map.getCenter(),{icon:L.divIcon({className:"marker-icon"}),draggable:!1,zIndexOffset:100}),this._setPane(this._centerMarker,"vertexPane"),this._centerMarker._pmTempLayer=!0,this._hintMarker=L.marker(this._map.getCenter(),{zIndexOffset:110,icon:L.divIcon({className:"marker-icon cursor-marker"})}),this._setPane(this._hintMarker,"vertexPane"),this._hintMarker._pmTempLayer=!0,this._layerGroup.addLayer(this._hintMarker),this.options.cursorMarker&&L.DomUtil.addClass(this._hintMarker._icon,"visible"),this.options.tooltips&&this._hintMarker.bindTooltip(St("tooltips.startCircle"),{permanent:!0,offset:L.point(0,10),direction:"bottom",opacity:.8}).openTooltip(),this._hintline=L.polyline([],this.options.hintlineStyle),this._setPane(this._hintline,"layerPane"),this._hintline._pmTempLayer=!0,this._layerGroup.addLayer(this._hintline),this._map.on("click",this._placeCenterMarker,this)}else this._map.on("click",this._createMarker,this),this._hintMarker=new this._BaseCircleClass(this._map.getCenter(),{radius:this._defaultRadius,...this.options.templineStyle}),this._setPane(this._hintMarker,"layerPane"),this._hintMarker._pmTempLayer=!0,this._hintMarker.addTo(this._map),this._layer=this._hintMarker,this.options.tooltips&&this._hintMarker.bindTooltip(St("tooltips.placeCircleMarker"),{permanent:!0,offset:L.point(0,10),direction:"bottom",opacity:.8}).openTooltip();this._map.on("mousemove",this._syncHintMarker,this),this._extendingEnable(),this._otherSnapLayers=[],this._fireDrawStart(),this._setGlobalDrawMode()},_extendingEnable(){!this.options[this._editableOption]&&this.options.markerEditable&&this._map.eachLayer(i=>{this.isRelevantMarker(i)&&i.pm.enable()}),this._layer.bringToBack()},disable(){this._enabled&&(this._enabled=!1,this._map.getContainer().classList.remove("geoman-draw-cursor"),this.options[this._editableOption]?(this._map.off("click",this._finishShape,this),this._map.off("click",this._placeCenterMarker,this),this._map.removeLayer(this._layerGroup)):(this._map.off("click",this._createMarker,this),this._extendingDisable(),this._hintMarker.remove()),this._map.off("mousemove",this._syncHintMarker,this),this._map.pm.Toolbar.toggleButton(this.toolbarButtonName,!1),this.options.snappable&&this._cleanupSnapping(),this._fireDrawEnd(),this._setGlobalDrawMode())},_extendingDisable(){this._map.eachLayer(i=>{this.isRelevantMarker(i)&&i.pm.disable()})},enabled(){return this._enabled},toggle(i){this.enabled()?this.disable():this.enable(i)},_placeCenterMarker(i){this._hintMarker._snapped||this._hintMarker.setLatLng(i.latlng),this._layerGroup.addLayer(this._layer),this._layerGroup.addLayer(this._centerMarker);let s=this._hintMarker.getLatLng();this._centerMarker.setLatLng(s),this._map.off("click",this._placeCenterMarker,this),this._map.on("click",this._finishShape,this),this._placeCircleCenter()},_placeCircleCenter(){let i=this._centerMarker.getLatLng();i&&(this._layer.setLatLng(i),this._hintMarker.on("move",this._syncHintLine,this),this._hintMarker.on("move",this._syncCircleRadius,this),this._hintMarker.setTooltipContent(St("tooltips.finishCircle")),this._fireCenterPlaced(),this._fireChange(this._layer.getLatLng(),"Draw"))},_syncHintLine(){let i=this._centerMarker.getLatLng(),s=this._getNewDestinationOfHintMarker();this._hintline.setLatLngs([i,s])},_syncCircleRadius(){let i=this._centerMarker.getLatLng(),s=this._hintMarker.getLatLng(),o=this._distanceCalculation(i,s);this.options[this._minRadiusOption]&&o<this.options[this._minRadiusOption]?this._layer.setRadius(this.options[this._minRadiusOption]):this.options[this._maxRadiusOption]&&o>this.options[this._maxRadiusOption]?this._layer.setRadius(this.options[this._maxRadiusOption]):this._layer.setRadius(o)},_syncHintMarker(i){if(this._hintMarker.setLatLng(i.latlng),this._hintMarker.setLatLng(this._getNewDestinationOfHintMarker()),this.options.snappable){let o=i;o.target=this._hintMarker,this._handleSnapping(o)}this._handleHintMarkerSnapping();let s=this._layerGroup&&this._layerGroup.hasLayer(this._centerMarker)?this._centerMarker.getLatLng():this._hintMarker.getLatLng();this._fireChange(s,"Draw")},isRelevantMarker(i){return i instanceof L.CircleMarker&&!(i instanceof L.Circle)&&i.pm&&!i._pmTempLayer},_createMarker(i){if(this.options.requireSnapToFinish&&!this._hintMarker._snapped&&!this._isFirstLayer()||!i.latlng||this._layerIsDragging)return;this._hintMarker._snapped||this._hintMarker.setLatLng(i.latlng);let s=this._hintMarker.getLatLng(),o=new this._BaseCircleClass(s,{radius:this._defaultRadius,...this.options.pathOptions});this._setPane(o,"layerPane"),this._finishLayer(o),o.addTo(this._map.pm._getContainingLayer()),this._extendingCreateMarker(o),this._fireCreate(o),this._cleanupSnapping(),this.options.continueDrawing||this.disable()},_extendingCreateMarker(i){i.pm&&this.options.markerEditable&&i.pm.enable()},_finishShape(i){if(this.options.requireSnapToFinish&&!this._hintMarker._snapped&&!this._isFirstLayer())return;this._hintMarker._snapped||this._hintMarker.setLatLng(i.latlng);let s=this._centerMarker.getLatLng(),o=this._defaultRadius;if(this.options[this._editableOption]){let y=this._hintMarker.getLatLng();o=this._distanceCalculation(s,y),this.options[this._minRadiusOption]&&o<this.options[this._minRadiusOption]?o=this.options[this._minRadiusOption]:this.options[this._maxRadiusOption]&&o>this.options[this._maxRadiusOption]&&(o=this.options[this._maxRadiusOption])}let h={...this.options.pathOptions,radius:o},c=new this._BaseCircleClass(s,h);this._setPane(c,"layerPane"),this._finishLayer(c),c.addTo(this._map.pm._getContainingLayer()),c.pm&&c.pm._updateHiddenPolyCircle(),this._fireCreate(c);let m=this._hintMarker.getLatLng();this.disable(),this.options.continueDrawing&&(this.enable(),this._hintMarker.setLatLng(m))},_getNewDestinationOfHintMarker(){let i=this._hintMarker.getLatLng();if(this.options[this._editableOption]){if(!this._layerGroup.hasLayer(this._centerMarker))return i;let s=this._centerMarker.getLatLng(),o=this._distanceCalculation(s,i);this.options[this._minRadiusOption]&&o<this.options[this._minRadiusOption]?i=Un(this._map,s,i,this._getMinDistanceInMeter()):this.options[this._maxRadiusOption]&&o>this.options[this._maxRadiusOption]&&(i=Un(this._map,s,i,this._getMaxDistanceInMeter()))}return i},_getMinDistanceInMeter(){return L.PM.Utils.pxRadiusToMeterRadius(this.options[this._minRadiusOption],this._map,this._centerMarker.getLatLng())},_getMaxDistanceInMeter(){return L.PM.Utils.pxRadiusToMeterRadius(this.options[this._maxRadiusOption],this._map,this._centerMarker.getLatLng())},_handleHintMarkerSnapping(){if(this.options[this._editableOption]){if(this._hintMarker._snapped){let i=this._centerMarker.getLatLng(),s=this._hintMarker.getLatLng(),o=this._distanceCalculation(i,s);this._layerGroup.hasLayer(this._centerMarker)&&(this.options[this._minRadiusOption]&&o<this.options[this._minRadiusOption]?this._hintMarker.setLatLng(this._hintMarker._orgLatLng):this.options[this._maxRadiusOption]&&o>this.options[this._maxRadiusOption]&&this._hintMarker.setLatLng(this._hintMarker._orgLatLng))}this._hintMarker.setLatLng(this._getNewDestinationOfHintMarker())}},setStyle(){var s,o;let i={};L.extend(i,this.options.templineStyle),this.options[this._editableOption]&&(i.radius=0),(s=this._layer)==null||s.setStyle(i),(o=this._hintline)==null||o.setStyle(this.options.hintlineStyle)},_distanceCalculation(i,s){return this._map.project(i).distanceTo(this._map.project(s))}}),de.Circle=de.CircleMarker.extend({initialize(i){this._map=i,this._shape="Circle",this.toolbarButtonName="drawCircle",this._BaseCircleClass=L.Circle,this._minRadiusOption="minRadiusCircle",this._maxRadiusOption="maxRadiusCircle",this._editableOption="resizeableCircle",this._defaultRadius=100},_extendingEnable(){},_extendingDisable(){},_extendingCreateMarker(){},isRelevantMarker(){},_getMinDistanceInMeter(){return this.options[this._minRadiusOption]},_getMaxDistanceInMeter(){return this.options[this._maxRadiusOption]},_distanceCalculation(i,s){return this._map.distance(i,s)}});function je(i){if(!i)throw new Error("coord is required");if(!Array.isArray(i)){if(i.type==="Feature"&&i.geometry!==null&&i.geometry.type==="Point")return i.geometry.coordinates;if(i.type==="Point")return i.coordinates}if(Array.isArray(i)&&i.length>=2&&!Array.isArray(i[0])&&!Array.isArray(i[1]))return i;throw new Error("coord must be GeoJSON Point or an Array of numbers")}function We(i){if(Array.isArray(i))return i;if(i.type==="Feature"){if(i.geometry!==null)return i.geometry.coordinates}else if(i.coordinates)return i.coordinates;throw new Error("coords must be GeoJSON Feature, Geometry Object or an Array")}function Zn(i){return i.type==="Feature"?i.geometry:i}function ea(i,s){return i.type==="FeatureCollection"?"FeatureCollection":i.type==="GeometryCollection"?"GeometryCollection":i.type==="Feature"&&i.geometry!==null?i.geometry.type:i.type}function ia(i,s,o){if(i!==null)for(var h,c,m,y,A,b,P,N=0,F=0,tt,it=i.type,lt=it==="FeatureCollection",ft=it==="Feature",At=lt?i.features.length:1,Gt=0;Gt<At;Gt++){P=lt?i.features[Gt].geometry:ft?i.geometry:i,tt=P?P.type==="GeometryCollection":!1,A=tt?P.geometries.length:1;for(var z=0;z<A;z++){var q=0,K=0;if(y=tt?P.geometries[z]:P,y!==null){b=y.coordinates;var nt=y.type;switch(N=0,nt){case null:break;case"Point":if(s(b,F,Gt,q,K)===!1)return!1;F++,q++;break;case"LineString":case"MultiPoint":for(h=0;h<b.length;h++){if(s(b[h],F,Gt,q,K)===!1)return!1;F++,nt==="MultiPoint"&&q++}nt==="LineString"&&q++;break;case"Polygon":case"MultiLineString":for(h=0;h<b.length;h++){for(c=0;c<b[h].length-N;c++){if(s(b[h][c],F,Gt,q,K)===!1)return!1;F++}nt==="MultiLineString"&&q++,nt==="Polygon"&&K++}nt==="Polygon"&&q++;break;case"MultiPolygon":for(h=0;h<b.length;h++){for(K=0,c=0;c<b[h].length;c++){for(m=0;m<b[h][c].length-N;m++){if(s(b[h][c][m],F,Gt,q,K)===!1)return!1;F++}K++}q++}break;case"GeometryCollection":for(h=0;h<y.geometries.length;h++)if(ia(y.geometries[h],s)===!1)return!1;break;default:throw new Error("Unknown Geometry Type")}}}}}function ve(i,s){if(i.type==="Feature")s(i,0);else if(i.type==="FeatureCollection")for(var o=0;o<i.features.length&&s(i.features[o],o)!==!1;o++);}function qi(i,s,o){var h=o;return ve(i,function(c,m){m===0&&o===void 0?h=c:h=s(h,c,m)}),h}function zo(i,s){var o,h,c,m,y,A,b,P,N,F,tt=0,it=i.type==="FeatureCollection",lt=i.type==="Feature",ft=it?i.features.length:1;for(o=0;o<ft;o++){for(A=it?i.features[o].geometry:lt?i.geometry:i,P=it?i.features[o].properties:lt?i.properties:{},N=it?i.features[o].bbox:lt?i.bbox:void 0,F=it?i.features[o].id:lt?i.id:void 0,b=A?A.type==="GeometryCollection":!1,y=b?A.geometries.length:1,c=0;c<y;c++){if(m=b?A.geometries[c]:A,m===null){if(s(null,tt,P,N,F)===!1)return!1;continue}switch(m.type){case"Point":case"LineString":case"MultiPoint":case"Polygon":case"MultiLineString":case"MultiPolygon":{if(s(m,tt,P,N,F)===!1)return!1;break}case"GeometryCollection":{for(h=0;h<m.geometries.length;h++)if(s(m.geometries[h],tt,P,N,F)===!1)return!1;break}default:throw new Error("Unknown Geometry Type")}}tt++}}function qe(i,s){zo(i,function(o,h,c,m,y){var A=o===null?null:o.type;switch(A){case null:case"Point":case"LineString":case"Polygon":return s(ki(o,c,{bbox:m,id:y}),h,0)===!1?!1:void 0}var b;switch(A){case"MultiPoint":b="Point";break;case"MultiLineString":b="LineString";break;case"MultiPolygon":b="Polygon";break}for(var P=0;P<o.coordinates.length;P++){var N=o.coordinates[P],F={type:b,coordinates:N};if(s(ki(F,c),h,P)===!1)return!1}})}function No(i){if(!i)throw new Error("geojson is required");var s=[];return qe(i,function(o){Hi(o,s)}),Ee(s)}function Hi(i,s){var o=[],h=i.geometry;if(h!==null){switch(h.type){case"Polygon":o=We(h);break;case"LineString":o=[We(h)]}o.forEach(function(c){var m=Uo(c,i.properties);m.forEach(function(y){y.id=s.length,s.push(y)})})}}function Uo(i,s){var o=[];return i.reduce(function(h,c){var m=gi([h,c],s);return m.bbox=dn(h,c),o.push(m),c}),o}function dn(i,s){var o=i[0],h=i[1],c=s[0],m=s[1],y=o<c?o:c,A=h<m?h:m,b=o>c?o:c,P=h>m?h:m;return[y,A,b,P]}var qn=No,Hn=M(Li(),1);function jo(i,s){var o={},h=[];if(i.type==="LineString"&&(i=ki(i)),s.type==="LineString"&&(s=ki(s)),i.type==="Feature"&&s.type==="Feature"&&i.geometry!==null&&s.geometry!==null&&i.geometry.type==="LineString"&&s.geometry.type==="LineString"&&i.geometry.coordinates.length===2&&s.geometry.coordinates.length===2){var c=ai(i,s);return c&&h.push(c),Ee(h)}var m=(0,Hn.default)();return m.load(qn(s)),ve(qn(i),function(y){ve(m.search(y),function(A){var b=ai(y,A);if(b){var P=We(b).join(",");o[P]||(o[P]=!0,h.push(b))}})}),Ee(h)}function ai(i,s){var o=We(i),h=We(s);if(o.length!==2)throw new Error("<intersects> line1 must only contain 2 coordinates");if(h.length!==2)throw new Error("<intersects> line2 must only contain 2 coordinates");var c=o[0][0],m=o[0][1],y=o[1][0],A=o[1][1],b=h[0][0],P=h[0][1],N=h[1][0],F=h[1][1],tt=(F-P)*(y-c)-(N-b)*(A-m),it=(N-b)*(m-P)-(F-P)*(c-b),lt=(y-c)*(m-P)-(A-m)*(c-b);if(tt===0)return null;var ft=it/tt,At=lt/tt;if(ft>=0&&ft<=1&&At>=0&&At<=1){var Gt=c+ft*(y-c),z=m+ft*(A-m);return Si([Gt,z])}return null}var Xe=jo,dr=M(Li(),1);function na(i,s,o){o===void 0&&(o={});var h=je(i),c=je(s),m=Ue(c[1]-h[1]),y=Ue(c[0]-h[0]),A=Ue(h[1]),b=Ue(c[1]),P=Math.pow(Math.sin(m/2),2)+Math.pow(Math.sin(y/2),2)*Math.cos(A)*Math.cos(b);return Go(2*Math.atan2(Math.sqrt(P),Math.sqrt(1-P)),o.units)}var Bi=na;function ri(i){var s=i[0],o=i[1],h=i[2],c=i[3],m=Bi(i.slice(0,2),[h,o]),y=Bi(i.slice(0,2),[s,c]);if(m>=y){var A=(o+c)/2;return[s,A-(h-s)/2,h,A+(h-s)/2]}else{var b=(s+h)/2;return[b-(c-o)/2,o,b+(c-o)/2,c]}}var Zo=ri;function yi(i){var s=[1/0,1/0,-1/0,-1/0];return ia(i,function(o){s[0]>o[0]&&(s[0]=o[0]),s[1]>o[1]&&(s[1]=o[1]),s[2]<o[0]&&(s[2]=o[0]),s[3]<o[1]&&(s[3]=o[1])}),s}yi.default=yi;var fn=yi;function oi(i,s){s===void 0&&(s={});var o=s.precision,h=s.coordinates,c=s.mutate;if(o=o==null||isNaN(o)?6:o,h=h==null||isNaN(h)?3:h,!i)throw new Error("<geojson> is required");if(typeof o!="number")throw new Error("<precision> must be a number");if(typeof h!="number")throw new Error("<coordinates> must be a number");(c===!1||c===void 0)&&(i=JSON.parse(JSON.stringify(i)));var m=Math.pow(10,o);return ia(i,function(y){Vn(y,m,h)}),i}function Vn(i,s,o){i.length>o&&i.splice(o,i.length);for(var h=0;h<i.length;h++)i[h]=Math.round(i[h]*s)/s;return i}var fr=oi;function $n(i,s,o){if(o===void 0&&(o={}),o.final===!0)return Kn(i,s);var h=je(i),c=je(s),m=Ue(h[0]),y=Ue(c[0]),A=Ue(h[1]),b=Ue(c[1]),P=Math.sin(y-m)*Math.cos(b),N=Math.cos(A)*Math.sin(b)-Math.sin(A)*Math.cos(b)*Math.cos(y-m);return Pe(Math.atan2(P,N))}function Kn(i,s){var o=$n(s,i);return o=(o+180)%360,o}function Wn(i,s,o,h){h===void 0&&(h={});var c=je(i),m=Ue(c[0]),y=Ue(c[1]),A=Ue(o),b=cn(s,h.units),P=Math.asin(Math.sin(y)*Math.cos(b)+Math.cos(y)*Math.sin(b)*Math.cos(A)),N=m+Math.atan2(Math.sin(A)*Math.sin(b)*Math.cos(y),Math.cos(b)-Math.sin(y)*Math.sin(P)),F=Pe(N),tt=Pe(P);return Si([F,tt],h.properties)}function Xn(i,s,o){o===void 0&&(o={});var h=Si([1/0,1/0],{dist:1/0}),c=0;return qe(i,function(m){for(var y=We(m),A=0;A<y.length-1;A++){var b=Si(y[A]);b.properties.dist=Bi(s,b,o);var P=Si(y[A+1]);P.properties.dist=Bi(s,P,o);var N=Bi(b,P,o),F=Math.max(b.properties.dist,P.properties.dist),tt=$n(b,P),it=Wn(s,F,tt+90,o),lt=Wn(s,F,tt-90,o),ft=Xe(gi([it.geometry.coordinates,lt.geometry.coordinates]),gi([b.geometry.coordinates,P.geometry.coordinates])),At=null;ft.features.length>0&&(At=ft.features[0],At.properties.dist=Bi(s,At,o),At.properties.location=c+Bi(b,At,o)),b.properties.dist<h.properties.dist&&(h=b,h.properties.index=A,h.properties.location=c),P.properties.dist<h.properties.dist&&(h=P,h.properties.index=A+1,h.properties.location=c+N),At&&At.properties.dist<h.properties.dist&&(h=At,h.properties.index=A),c+=N}}),h}var Vi=Xn;function Yn(i,s){if(!i)throw new Error("line is required");if(!s)throw new Error("splitter is required");var o=ea(i),h=ea(s);if(o!=="LineString")throw new Error("line must be LineString");if(h==="FeatureCollection")throw new Error("splitter cannot be a FeatureCollection");if(h==="GeometryCollection")throw new Error("splitter cannot be a GeometryCollection");var c=fr(s,{precision:7});switch(h){case"Point":return Qn(i,c);case"MultiPoint":return Jn(i,c);case"LineString":case"MultiLineString":case"Polygon":case"MultiPolygon":return Jn(i,Xe(i,c))}}function Jn(i,s){var o=[],h=(0,dr.default)();return qe(s,function(c){if(o.forEach(function(A,b){A.id=b}),!o.length)o=Qn(i,c).features,o.forEach(function(A){A.bbox||(A.bbox=Zo(fn(A)))}),h.load(Ee(o));else{var m=h.search(c);if(m.features.length){var y=pr(c,m);o=o.filter(function(A){return A.id!==y.id}),h.remove(y),ve(Qn(y,c),function(A){o.push(A),h.insert(A)})}}}),Ee(o)}function Qn(i,s){var o=[],h=We(i)[0],c=We(i)[i.geometry.coordinates.length-1];if($i(h,je(s))||$i(c,je(s)))return Ee([i]);var m=(0,dr.default)(),y=qn(i);m.load(y);var A=m.search(s);if(!A.features.length)return Ee([i]);var b=pr(s,A),P=[h],N=qi(y,function(F,tt,it){var lt=We(tt)[1],ft=je(s);return it===b.id?(F.push(ft),o.push(gi(F)),$i(ft,lt)?[ft]:[ft,lt]):(F.push(lt),F)},P);return N.length>1&&o.push(gi(N)),Ee(o)}function pr(i,s){if(!s.features.length)throw new Error("lines must contain features");if(s.features.length===1)return s.features[0];var o,h=1/0;return ve(s,function(c){var m=Vi(c,i),y=m.properties.dist;y<h&&(o=c,h=y)}),o}function $i(i,s){return i[0]===s[0]&&i[1]===s[1]}var qo=Yn;function pn(i,s,o){if(o===void 0&&(o={}),!i)throw new Error("point is required");if(!s)throw new Error("polygon is required");var h=je(i),c=Zn(s),m=c.type,y=s.bbox,A=c.coordinates;if(y&&mr(h,y)===!1)return!1;m==="Polygon"&&(A=[A]);for(var b=!1,P=0;P<A.length&&!b;P++)if(_r(h,A[P][0],o.ignoreBoundary)){for(var N=!1,F=1;F<A[P].length&&!N;)_r(h,A[P][F],!o.ignoreBoundary)&&(N=!0),F++;N||(b=!0)}return b}function _r(i,s,o){var h=!1;s[0][0]===s[s.length-1][0]&&s[0][1]===s[s.length-1][1]&&(s=s.slice(0,s.length-1));for(var c=0,m=s.length-1;c<s.length;m=c++){var y=s[c][0],A=s[c][1],b=s[m][0],P=s[m][1],N=i[1]*(y-b)+A*(b-i[0])+P*(i[0]-y)===0&&(y-i[0])*(b-i[0])<=0&&(A-i[1])*(P-i[1])<=0;if(N)return!o;var F=A>i[1]!=P>i[1]&&i[0]<(b-y)*(i[1]-A)/(P-A)+y;F&&(h=!h)}return h}function mr(i,s){return s[0]<=i[0]&&s[1]<=i[1]&&s[2]>=i[0]&&s[3]>=i[1]}function Ho(i,s,o){o===void 0&&(o={});for(var h=je(i),c=We(s),m=0;m<c.length-1;m++){var y=!1;if(o.ignoreEndVertices&&(m===0&&(y="start"),m===c.length-2&&(y="end"),m===0&&m+1===c.length-1&&(y="both")),Ye(c[m],c[m+1],h,y,typeof o.epsilon>"u"?null:o.epsilon))return!0}return!1}function Ye(i,s,o,h,c){var m=o[0],y=o[1],A=i[0],b=i[1],P=s[0],N=s[1],F=o[0]-A,tt=o[1]-b,it=P-A,lt=N-b,ft=F*lt-tt*it;if(c!==null){if(Math.abs(ft)>c)return!1}else if(ft!==0)return!1;if(h){if(h==="start")return Math.abs(it)>=Math.abs(lt)?it>0?A<m&&m<=P:P<=m&&m<A:lt>0?b<y&&y<=N:N<=y&&y<b;if(h==="end")return Math.abs(it)>=Math.abs(lt)?it>0?A<=m&&m<P:P<m&&m<=A:lt>0?b<=y&&y<N:N<y&&y<=b;if(h==="both")return Math.abs(it)>=Math.abs(lt)?it>0?A<m&&m<P:P<m&&m<A:lt>0?b<y&&y<N:N<y&&y<b}else return Math.abs(it)>=Math.abs(lt)?it>0?A<=m&&m<=P:P<=m&&m<=A:lt>0?b<=y&&y<=N:N<=y&&y<=b;return!1}var Ai=Ho;function Vo(i,s){var o=Zn(i),h=Zn(s),c=o.type,m=h.type,y=o.coordinates,A=h.coordinates;switch(c){case"Point":switch(m){case"Point":return es(y,A);default:throw new Error("feature2 "+m+" geometry not supported")}case"MultiPoint":switch(m){case"Point":return ts(o,h);case"MultiPoint":return $o(o,h);default:throw new Error("feature2 "+m+" geometry not supported")}case"LineString":switch(m){case"Point":return Ai(h,o,{ignoreEndVertices:!0});case"LineString":return _n(o,h);case"MultiPoint":return gr(o,h);default:throw new Error("feature2 "+m+" geometry not supported")}case"Polygon":switch(m){case"Point":return pn(h,o,{ignoreBoundary:!0});case"LineString":return Wo(o,h);case"Polygon":return Ki(o,h);case"MultiPoint":return Ko(o,h);default:throw new Error("feature2 "+m+" geometry not supported")}default:throw new Error("feature1 "+c+" geometry not supported")}}function ts(i,s){var o,h=!1;for(o=0;o<i.coordinates.length;o++)if(es(i.coordinates[o],s.coordinates)){h=!0;break}return h}function $o(i,s){for(var o=0,h=s.coordinates;o<h.length;o++){for(var c=h[o],m=!1,y=0,A=i.coordinates;y<A.length;y++){var b=A[y];if(es(c,b)){m=!0;break}}if(!m)return!1}return!0}function gr(i,s){for(var o=!1,h=0,c=s.coordinates;h<c.length;h++){var m=c[h];if(Ai(m,i,{ignoreEndVertices:!0})&&(o=!0),!Ai(m,i))return!1}return!!o}function Ko(i,s){for(var o=0,h=s.coordinates;o<h.length;o++){var c=h[o];if(!pn(c,i,{ignoreBoundary:!0}))return!1}return!0}function _n(i,s){for(var o=!1,h=0,c=s.coordinates;h<c.length;h++){var m=c[h];if(Ai({type:"Point",coordinates:m},i,{ignoreEndVertices:!0})&&(o=!0),!Ai({type:"Point",coordinates:m},i,{ignoreEndVertices:!1}))return!1}return o}function Wo(i,s){var o=!1,h=0,c=fn(i),m=fn(s);if(!sa(c,m))return!1;for(h;h<s.coordinates.length-1;h++){var y=Xo(s.coordinates[h],s.coordinates[h+1]);if(pn({type:"Point",coordinates:y},i,{ignoreBoundary:!0})){o=!0;break}}return o}function Ki(i,s){if(i.type==="Feature"&&i.geometry===null||s.type==="Feature"&&s.geometry===null)return!1;var o=fn(i),h=fn(s);if(!sa(o,h))return!1;for(var c=Zn(s).coordinates,m=0,y=c;m<y.length;m++)for(var A=y[m],b=0,P=A;b<P.length;b++){var N=P[b];if(!pn(N,i))return!1}return!0}function sa(i,s){return!(i[0]>s[0]||i[2]<s[2]||i[1]>s[1]||i[3]<s[3])}function es(i,s){return i[0]===s[0]&&i[1]===s[1]}function Xo(i,s){return[(i[0]+s[0])/2,(i[1]+s[1])/2]}var hi=M(pi()),aa=i=>()=>i,is=i=>{let s=i?(o,h)=>h.minus(o).abs().isLessThanOrEqualTo(i):aa(!1);return(o,h)=>s(o,h)?0:o.comparedTo(h)};function mn(i){let s=i?(o,h,c,m,y)=>o.exponentiatedBy(2).isLessThanOrEqualTo(m.minus(h).exponentiatedBy(2).plus(y.minus(c).exponentiatedBy(2)).times(i)):aa(!1);return(o,h,c)=>{let m=o.x,y=o.y,A=c.x,b=c.y,P=y.minus(b).times(h.x.minus(A)).minus(m.minus(A).times(h.y.minus(b)));return s(P,m,y,A,b)?0:P.comparedTo(0)}}var Yo=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,Wi=Math.ceil,me=Math.floor,Me="[BigNumber Error] ",ra=Me+"Number primitive has more than 15 significant digits: ",He=1e14,kt=14,ns=9007199254740991,ss=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],li=1e7,le=1e9;function yr(i){var s,o,h,c=z.prototype={constructor:z,toString:null,valueOf:null},m=new z(1),y=20,A=4,b=-7,P=21,N=-1e7,F=1e7,tt=!1,it=1,lt=0,ft={prefix:"",groupSize:3,secondaryGroupSize:0,groupSeparator:",",decimalSeparator:".",fractionGroupSize:0,fractionGroupSeparator:" ",suffix:""},At="0123456789abcdefghijklmnopqrstuvwxyz",Gt=!0;function z(w,S){var O,D,I,R,V,H,$,Q,J=this;if(!(J instanceof z))return new z(w,S);if(S==null){if(w&&w._isBigNumber===!0){J.s=w.s,!w.c||w.e>F?J.c=J.e=null:w.e<N?J.c=[J.e=0]:(J.e=w.e,J.c=w.c.slice());return}if((H=typeof w=="number")&&w*0==0){if(J.s=1/w<0?(w=-w,-1):1,w===~~w){for(R=0,V=w;V>=10;V/=10,R++);R>F?J.c=J.e=null:(J.e=R,J.c=[w]);return}Q=String(w)}else{if(!Yo.test(Q=String(w)))return h(J,Q,H);J.s=Q.charCodeAt(0)==45?(Q=Q.slice(1),-1):1}(R=Q.indexOf("."))>-1&&(Q=Q.replace(".","")),(V=Q.search(/e/i))>0?(R<0&&(R=V),R+=+Q.slice(V+1),Q=Q.substring(0,V)):R<0&&(R=Q.length)}else{if(e(S,2,At.length,"Base"),S==10&&Gt)return J=new z(w),X(J,y+J.e+1,A);if(Q=String(w),H=typeof w=="number"){if(w*0!=0)return h(J,Q,H,S);if(J.s=1/w<0?(Q=Q.slice(1),-1):1,z.DEBUG&&Q.replace(/^0\.0*|\./,"").length>15)throw Error(ra+w)}else J.s=Q.charCodeAt(0)===45?(Q=Q.slice(1),-1):1;for(O=At.slice(0,S),R=V=0,$=Q.length;V<$;V++)if(O.indexOf(D=Q.charAt(V))<0){if(D=="."){if(V>R){R=$;continue}}else if(!I&&(Q==Q.toUpperCase()&&(Q=Q.toLowerCase())||Q==Q.toLowerCase()&&(Q=Q.toUpperCase()))){I=!0,V=-1,R=0;continue}return h(J,String(w),H,S)}H=!1,Q=o(Q,S,10,J.s),(R=Q.indexOf("."))>-1?Q=Q.replace(".",""):R=Q.length}for(V=0;Q.charCodeAt(V)===48;V++);for($=Q.length;Q.charCodeAt(--$)===48;);if(Q=Q.slice(V,++$)){if($-=V,H&&z.DEBUG&&$>15&&(w>ns||w!==me(w)))throw Error(ra+J.s*w);if((R=R-V-1)>F)J.c=J.e=null;else if(R<N)J.c=[J.e=0];else{if(J.e=R,J.c=[],V=(R+1)%kt,R<0&&(V+=kt),V<$){for(V&&J.c.push(+Q.slice(0,V)),$-=kt;V<$;)J.c.push(+Q.slice(V,V+=kt));V=kt-(Q=Q.slice(V)).length}else V-=$;for(;V--;Q+="0");J.c.push(+Q)}}else J.c=[J.e=0]}z.clone=yr,z.ROUND_UP=0,z.ROUND_DOWN=1,z.ROUND_CEIL=2,z.ROUND_FLOOR=3,z.ROUND_HALF_UP=4,z.ROUND_HALF_DOWN=5,z.ROUND_HALF_EVEN=6,z.ROUND_HALF_CEIL=7,z.ROUND_HALF_FLOOR=8,z.EUCLID=9,z.config=z.set=function(w){var S,O;if(w!=null)if(typeof w=="object"){if(w.hasOwnProperty(S="DECIMAL_PLACES")&&(O=w[S],e(O,0,le,S),y=O),w.hasOwnProperty(S="ROUNDING_MODE")&&(O=w[S],e(O,0,8,S),A=O),w.hasOwnProperty(S="EXPONENTIAL_AT")&&(O=w[S],O&&O.pop?(e(O[0],-le,0,S),e(O[1],0,le,S),b=O[0],P=O[1]):(e(O,-le,le,S),b=-(P=O<0?-O:O))),w.hasOwnProperty(S="RANGE"))if(O=w[S],O&&O.pop)e(O[0],-le,-1,S),e(O[1],1,le,S),N=O[0],F=O[1];else if(e(O,-le,le,S),O)N=-(F=O<0?-O:O);else throw Error(Me+S+" cannot be zero: "+O);if(w.hasOwnProperty(S="CRYPTO"))if(O=w[S],O===!!O)if(O)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))tt=O;else throw tt=!O,Error(Me+"crypto unavailable");else tt=O;else throw Error(Me+S+" not true or false: "+O);if(w.hasOwnProperty(S="MODULO_MODE")&&(O=w[S],e(O,0,9,S),it=O),w.hasOwnProperty(S="POW_PRECISION")&&(O=w[S],e(O,0,le,S),lt=O),w.hasOwnProperty(S="FORMAT"))if(O=w[S],typeof O=="object")ft=O;else throw Error(Me+S+" not an object: "+O);if(w.hasOwnProperty(S="ALPHABET"))if(O=w[S],typeof O=="string"&&!/^.?$|[+\-.\s]|(.).*\1/.test(O))Gt=O.slice(0,10)=="0123456789",At=O;else throw Error(Me+S+" invalid: "+O)}else throw Error(Me+"Object expected: "+w);return{DECIMAL_PLACES:y,ROUNDING_MODE:A,EXPONENTIAL_AT:[b,P],RANGE:[N,F],CRYPTO:tt,MODULO_MODE:it,POW_PRECISION:lt,FORMAT:ft,ALPHABET:At}},z.isBigNumber=function(w){if(!w||w._isBigNumber!==!0)return!1;if(!z.DEBUG)return!0;var S,O,D=w.c,I=w.e,R=w.s;t:if({}.toString.call(D)=="[object Array]"){if((R===1||R===-1)&&I>=-le&&I<=le&&I===me(I)){if(D[0]===0){if(I===0&&D.length===1)return!0;break t}if(S=(I+1)%kt,S<1&&(S+=kt),String(D[0]).length==S){for(S=0;S<D.length;S++)if(O=D[S],O<0||O>=He||O!==me(O))break t;if(O!==0)return!0}}}else if(D===null&&I===null&&(R===null||R===1||R===-1))return!0;throw Error(Me+"Invalid BigNumber: "+w)},z.maximum=z.max=function(){return K(arguments,-1)},z.minimum=z.min=function(){return K(arguments,1)},z.random=function(){var w=9007199254740992,S=Math.random()*w&2097151?function(){return me(Math.random()*w)}:function(){return(Math.random()*1073741824|0)*8388608+(Math.random()*8388608|0)};return function(O){var D,I,R,V,H,$=0,Q=[],J=new z(m);if(O==null?O=y:e(O,0,le),V=Wi(O/kt),tt)if(crypto.getRandomValues){for(D=crypto.getRandomValues(new Uint32Array(V*=2));$<V;)H=D[$]*131072+(D[$+1]>>>11),H>=9e15?(I=crypto.getRandomValues(new Uint32Array(2)),D[$]=I[0],D[$+1]=I[1]):(Q.push(H%1e14),$+=2);$=V/2}else if(crypto.randomBytes){for(D=crypto.randomBytes(V*=7);$<V;)H=(D[$]&31)*281474976710656+D[$+1]*1099511627776+D[$+2]*4294967296+D[$+3]*16777216+(D[$+4]<<16)+(D[$+5]<<8)+D[$+6],H>=9e15?crypto.randomBytes(7).copy(D,$):(Q.push(H%1e14),$+=7);$=V/7}else throw tt=!1,Error(Me+"crypto unavailable");if(!tt)for(;$<V;)H=S(),H<9e15&&(Q[$++]=H%1e14);for(V=Q[--$],O%=kt,V&&O&&(H=ss[kt-O],Q[$]=me(V/H)*H);Q[$]===0;Q.pop(),$--);if($<0)Q=[R=0];else{for(R=-1;Q[0]===0;Q.splice(0,1),R-=kt);for($=1,H=Q[0];H>=10;H/=10,$++);$<kt&&(R-=kt-$)}return J.e=R,J.c=Q,J}}(),z.sum=function(){for(var w=1,S=arguments,O=new z(S[0]);w<S.length;)O=O.plus(S[w++]);return O},o=function(){var w="0123456789";function S(O,D,I,R){for(var V,H=[0],$,Q=0,J=O.length;Q<J;){for($=H.length;$--;H[$]*=D);for(H[0]+=R.indexOf(O.charAt(Q++)),V=0;V<H.length;V++)H[V]>I-1&&(H[V+1]==null&&(H[V+1]=0),H[V+1]+=H[V]/I|0,H[V]%=I)}return H.reverse()}return function(O,D,I,R,V){var H,$,Q,J,ot,gt,vt,bt,Vt=O.indexOf("."),Wt=y,Ut=A;for(Vt>=0&&(J=lt,lt=0,O=O.replace(".",""),bt=new z(D),gt=bt.pow(O.length-Vt),lt=J,bt.c=S(_(Ie(gt.c),gt.e,"0"),10,I,w),bt.e=bt.c.length),vt=S(O,D,I,V?(H=At,w):(H=w,At)),Q=J=vt.length;vt[--J]==0;vt.pop());if(!vt[0])return H.charAt(0);if(Vt<0?--Q:(gt.c=vt,gt.e=Q,gt.s=R,gt=s(gt,bt,Wt,Ut,I),vt=gt.c,ot=gt.r,Q=gt.e),$=Q+Wt+1,Vt=vt[$],J=I/2,ot=ot||$<0||vt[$+1]!=null,ot=Ut<4?(Vt!=null||ot)&&(Ut==0||Ut==(gt.s<0?3:2)):Vt>J||Vt==J&&(Ut==4||ot||Ut==6&&vt[$-1]&1||Ut==(gt.s<0?8:7)),$<1||!vt[0])O=ot?_(H.charAt(1),-Wt,H.charAt(0)):H.charAt(0);else{if(vt.length=$,ot)for(--I;++vt[--$]>I;)vt[$]=0,$||(++Q,vt=[1].concat(vt));for(J=vt.length;!vt[--J];);for(Vt=0,O="";Vt<=J;O+=H.charAt(vt[Vt++]));O=_(O,Q,H.charAt(0))}return O}}(),s=function(){function w(D,I,R){var V,H,$,Q,J=0,ot=D.length,gt=I%li,vt=I/li|0;for(D=D.slice();ot--;)$=D[ot]%li,Q=D[ot]/li|0,V=vt*$+Q*gt,H=gt*$+V%li*li+J,J=(H/R|0)+(V/li|0)+vt*Q,D[ot]=H%R;return J&&(D=[J].concat(D)),D}function S(D,I,R,V){var H,$;if(R!=V)$=R>V?1:-1;else for(H=$=0;H<R;H++)if(D[H]!=I[H]){$=D[H]>I[H]?1:-1;break}return $}function O(D,I,R,V){for(var H=0;R--;)D[R]-=H,H=D[R]<I[R]?1:0,D[R]=H*V+D[R]-I[R];for(;!D[0]&&D.length>1;D.splice(0,1));}return function(D,I,R,V,H){var $,Q,J,ot,gt,vt,bt,Vt,Wt,Ut,Xt,Se,wr,nh,sh,vi,ua,ti=D.s==I.s?1:-1,Re=D.c,oe=I.c;if(!Re||!Re[0]||!oe||!oe[0])return new z(!D.s||!I.s||(Re?oe&&Re[0]==oe[0]:!oe)?NaN:Re&&Re[0]==0||!oe?ti*0:ti/0);for(Vt=new z(ti),Wt=Vt.c=[],Q=D.e-I.e,ti=R+Q+1,H||(H=He,Q=Oe(D.e/kt)-Oe(I.e/kt),ti=ti/kt|0),J=0;oe[J]==(Re[J]||0);J++);if(oe[J]>(Re[J]||0)&&Q--,ti<0)Wt.push(1),ot=!0;else{for(nh=Re.length,vi=oe.length,J=0,ti+=2,gt=me(H/(oe[0]+1)),gt>1&&(oe=w(oe,gt,H),Re=w(Re,gt,H),vi=oe.length,nh=Re.length),wr=vi,Ut=Re.slice(0,vi),Xt=Ut.length;Xt<vi;Ut[Xt++]=0);ua=oe.slice(),ua=[0].concat(ua),sh=oe[0],oe[1]>=H/2&&sh++;do{if(gt=0,$=S(oe,Ut,vi,Xt),$<0){if(Se=Ut[0],vi!=Xt&&(Se=Se*H+(Ut[1]||0)),gt=me(Se/sh),gt>1)for(gt>=H&&(gt=H-1),vt=w(oe,gt,H),bt=vt.length,Xt=Ut.length;S(vt,Ut,bt,Xt)==1;)gt--,O(vt,vi<bt?ua:oe,bt,H),bt=vt.length,$=1;else gt==0&&($=gt=1),vt=oe.slice(),bt=vt.length;if(bt<Xt&&(vt=[0].concat(vt)),O(Ut,vt,Xt,H),Xt=Ut.length,$==-1)for(;S(oe,Ut,vi,Xt)<1;)gt++,O(Ut,vi<Xt?ua:oe,Xt,H),Xt=Ut.length}else $===0&&(gt++,Ut=[0]);Wt[J++]=gt,Ut[0]?Ut[Xt++]=Re[wr]||0:(Ut=[Re[wr]],Xt=1)}while((wr++<nh||Ut[0]!=null)&&ti--);ot=Ut[0]!=null,Wt[0]||Wt.splice(0,1)}if(H==He){for(J=1,ti=Wt[0];ti>=10;ti/=10,J++);X(Vt,R+(Vt.e=J+Q*kt-1)+1,V,ot)}else Vt.e=Q,Vt.r=+ot;return Vt}}();function q(w,S,O,D){var I,R,V,H,$;if(O==null?O=A:e(O,0,8),!w.c)return w.toString();if(I=w.c[0],V=w.e,S==null)$=Ie(w.c),$=D==1||D==2&&(V<=b||V>=P)?l($,V):_($,V,"0");else if(w=X(new z(w),S,O),R=w.e,$=Ie(w.c),H=$.length,D==1||D==2&&(S<=R||R<=b)){for(;H<S;$+="0",H++);$=l($,R)}else if(S-=V,$=_($,R,"0"),R+1>H){if(--S>0)for($+=".";S--;$+="0");}else if(S+=R-H,S>0)for(R+1==H&&($+=".");S--;$+="0");return w.s<0&&I?"-"+$:$}function K(w,S){for(var O,D,I=1,R=new z(w[0]);I<w.length;I++)D=new z(w[I]),(!D.s||(O=Ti(R,D))===S||O===0&&R.s===S)&&(R=D);return R}function nt(w,S,O){for(var D=1,I=S.length;!S[--I];S.pop());for(I=S[0];I>=10;I/=10,D++);return(O=D+O*kt-1)>F?w.c=w.e=null:O<N?w.c=[w.e=0]:(w.e=O,w.c=S),w}h=function(){var w=/^(-?)0([xbo])(?=\w[\w.]*$)/i,S=/^([^.]+)\.$/,O=/^\.([^.]+)$/,D=/^-?(Infinity|NaN)$/,I=/^\s*\+(?=[\w.])|^\s+|\s+$/g;return function(R,V,H,$){var Q,J=H?V:V.replace(I,"");if(D.test(J))R.s=isNaN(J)?null:J<0?-1:1;else{if(!H&&(J=J.replace(w,function(ot,gt,vt){return Q=(vt=vt.toLowerCase())=="x"?16:vt=="b"?2:8,!$||$==Q?gt:ot}),$&&(Q=$,J=J.replace(S,"$1").replace(O,"0.$1")),V!=J))return new z(J,Q);if(z.DEBUG)throw Error(Me+"Not a"+($?" base "+$:"")+" number: "+V);R.s=null}R.c=R.e=null}}();function X(w,S,O,D){var I,R,V,H,$,Q,J,ot=w.c,gt=ss;if(ot){t:{for(I=1,H=ot[0];H>=10;H/=10,I++);if(R=S-I,R<0)R+=kt,V=S,$=ot[Q=0],J=me($/gt[I-V-1]%10);else if(Q=Wi((R+1)/kt),Q>=ot.length)if(D){for(;ot.length<=Q;ot.push(0));$=J=0,I=1,R%=kt,V=R-kt+1}else break t;else{for($=H=ot[Q],I=1;H>=10;H/=10,I++);R%=kt,V=R-kt+I,J=V<0?0:me($/gt[I-V-1]%10)}if(D=D||S<0||ot[Q+1]!=null||(V<0?$:$%gt[I-V-1]),D=O<4?(J||D)&&(O==0||O==(w.s<0?3:2)):J>5||J==5&&(O==4||D||O==6&&(R>0?V>0?$/gt[I-V]:0:ot[Q-1])%10&1||O==(w.s<0?8:7)),S<1||!ot[0])return ot.length=0,D?(S-=w.e+1,ot[0]=gt[(kt-S%kt)%kt],w.e=-S||0):ot[0]=w.e=0,w;if(R==0?(ot.length=Q,H=1,Q--):(ot.length=Q+1,H=gt[kt-R],ot[Q]=V>0?me($/gt[I-V]%gt[V])*H:0),D)for(;;)if(Q==0){for(R=1,V=ot[0];V>=10;V/=10,R++);for(V=ot[0]+=H,H=1;V>=10;V/=10,H++);R!=H&&(w.e++,ot[0]==He&&(ot[0]=1));break}else{if(ot[Q]+=H,ot[Q]!=He)break;ot[Q--]=0,H=1}for(R=ot.length;ot[--R]===0;ot.pop());}w.e>F?w.c=w.e=null:w.e<N&&(w.c=[w.e=0])}return w}function et(w){var S,O=w.e;return O===null?w.toString():(S=Ie(w.c),S=O<=b||O>=P?l(S,O):_(S,O,"0"),w.s<0?"-"+S:S)}return c.absoluteValue=c.abs=function(){var w=new z(this);return w.s<0&&(w.s=1),w},c.comparedTo=function(w,S){return Ti(this,new z(w,S))},c.decimalPlaces=c.dp=function(w,S){var O,D,I,R=this;if(w!=null)return e(w,0,le),S==null?S=A:e(S,0,8),X(new z(R),w+R.e+1,S);if(!(O=R.c))return null;if(D=((I=O.length-1)-Oe(this.e/kt))*kt,I=O[I])for(;I%10==0;I/=10,D--);return D<0&&(D=0),D},c.dividedBy=c.div=function(w,S){return s(this,new z(w,S),y,A)},c.dividedToIntegerBy=c.idiv=function(w,S){return s(this,new z(w,S),0,1)},c.exponentiatedBy=c.pow=function(w,S){var O,D,I,R,V,H,$,Q,J,ot=this;if(w=new z(w),w.c&&!w.isInteger())throw Error(Me+"Exponent not an integer: "+et(w));if(S!=null&&(S=new z(S)),H=w.e>14,!ot.c||!ot.c[0]||ot.c[0]==1&&!ot.e&&ot.c.length==1||!w.c||!w.c[0])return J=new z(Math.pow(+et(ot),H?w.s*(2-a(w)):+et(w))),S?J.mod(S):J;if($=w.s<0,S){if(S.c?!S.c[0]:!S.s)return new z(NaN);D=!$&&ot.isInteger()&&S.isInteger(),D&&(ot=ot.mod(S))}else{if(w.e>9&&(ot.e>0||ot.e<-1||(ot.e==0?ot.c[0]>1||H&&ot.c[1]>=24e7:ot.c[0]<8e13||H&&ot.c[0]<=9999975e7)))return R=ot.s<0&&a(w)?-0:0,ot.e>-1&&(R=1/R),new z($?1/R:R);lt&&(R=Wi(lt/kt+2))}for(H?(O=new z(.5),$&&(w.s=1),Q=a(w)):(I=Math.abs(+et(w)),Q=I%2),J=new z(m);;){if(Q){if(J=J.times(ot),!J.c)break;R?J.c.length>R&&(J.c.length=R):D&&(J=J.mod(S))}if(I){if(I=me(I/2),I===0)break;Q=I%2}else if(w=w.times(O),X(w,w.e+1,1),w.e>14)Q=a(w);else{if(I=+et(w),I===0)break;Q=I%2}ot=ot.times(ot),R?ot.c&&ot.c.length>R&&(ot.c.length=R):D&&(ot=ot.mod(S))}return D?J:($&&(J=m.div(J)),S?J.mod(S):R?X(J,lt,A,V):J)},c.integerValue=function(w){var S=new z(this);return w==null?w=A:e(w,0,8),X(S,S.e+1,w)},c.isEqualTo=c.eq=function(w,S){return Ti(this,new z(w,S))===0},c.isFinite=function(){return!!this.c},c.isGreaterThan=c.gt=function(w,S){return Ti(this,new z(w,S))>0},c.isGreaterThanOrEqualTo=c.gte=function(w,S){return(S=Ti(this,new z(w,S)))===1||S===0},c.isInteger=function(){return!!this.c&&Oe(this.e/kt)>this.c.length-2},c.isLessThan=c.lt=function(w,S){return Ti(this,new z(w,S))<0},c.isLessThanOrEqualTo=c.lte=function(w,S){return(S=Ti(this,new z(w,S)))===-1||S===0},c.isNaN=function(){return!this.s},c.isNegative=function(){return this.s<0},c.isPositive=function(){return this.s>0},c.isZero=function(){return!!this.c&&this.c[0]==0},c.minus=function(w,S){var O,D,I,R,V=this,H=V.s;if(w=new z(w,S),S=w.s,!H||!S)return new z(NaN);if(H!=S)return w.s=-S,V.plus(w);var $=V.e/kt,Q=w.e/kt,J=V.c,ot=w.c;if(!$||!Q){if(!J||!ot)return J?(w.s=-S,w):new z(ot?V:NaN);if(!J[0]||!ot[0])return ot[0]?(w.s=-S,w):new z(J[0]?V:A==3?-0:0)}if($=Oe($),Q=Oe(Q),J=J.slice(),H=$-Q){for((R=H<0)?(H=-H,I=J):(Q=$,I=ot),I.reverse(),S=H;S--;I.push(0));I.reverse()}else for(D=(R=(H=J.length)<(S=ot.length))?H:S,H=S=0;S<D;S++)if(J[S]!=ot[S]){R=J[S]<ot[S];break}if(R&&(I=J,J=ot,ot=I,w.s=-w.s),S=(D=ot.length)-(O=J.length),S>0)for(;S--;J[O++]=0);for(S=He-1;D>H;){if(J[--D]<ot[D]){for(O=D;O&&!J[--O];J[O]=S);--J[O],J[D]+=He}J[D]-=ot[D]}for(;J[0]==0;J.splice(0,1),--Q);return J[0]?nt(w,J,Q):(w.s=A==3?-1:1,w.c=[w.e=0],w)},c.modulo=c.mod=function(w,S){var O,D,I=this;return w=new z(w,S),!I.c||!w.s||w.c&&!w.c[0]?new z(NaN):!w.c||I.c&&!I.c[0]?new z(I):(it==9?(D=w.s,w.s=1,O=s(I,w,0,3),w.s=D,O.s*=D):O=s(I,w,0,it),w=I.minus(O.times(w)),!w.c[0]&&it==1&&(w.s=I.s),w)},c.multipliedBy=c.times=function(w,S){var O,D,I,R,V,H,$,Q,J,ot,gt,vt,bt,Vt,Wt,Ut=this,Xt=Ut.c,Se=(w=new z(w,S)).c;if(!Xt||!Se||!Xt[0]||!Se[0])return!Ut.s||!w.s||Xt&&!Xt[0]&&!Se||Se&&!Se[0]&&!Xt?w.c=w.e=w.s=null:(w.s*=Ut.s,!Xt||!Se?w.c=w.e=null:(w.c=[0],w.e=0)),w;for(D=Oe(Ut.e/kt)+Oe(w.e/kt),w.s*=Ut.s,$=Xt.length,ot=Se.length,$<ot&&(bt=Xt,Xt=Se,Se=bt,I=$,$=ot,ot=I),I=$+ot,bt=[];I--;bt.push(0));for(Vt=He,Wt=li,I=ot;--I>=0;){for(O=0,gt=Se[I]%Wt,vt=Se[I]/Wt|0,V=$,R=I+V;R>I;)Q=Xt[--V]%Wt,J=Xt[V]/Wt|0,H=vt*Q+J*gt,Q=gt*Q+H%Wt*Wt+bt[R]+O,O=(Q/Vt|0)+(H/Wt|0)+vt*J,bt[R--]=Q%Vt;bt[R]=O}return O?++D:bt.splice(0,1),nt(w,bt,D)},c.negated=function(){var w=new z(this);return w.s=-w.s||null,w},c.plus=function(w,S){var O,D=this,I=D.s;if(w=new z(w,S),S=w.s,!I||!S)return new z(NaN);if(I!=S)return w.s=-S,D.minus(w);var R=D.e/kt,V=w.e/kt,H=D.c,$=w.c;if(!R||!V){if(!H||!$)return new z(I/0);if(!H[0]||!$[0])return $[0]?w:new z(H[0]?D:I*0)}if(R=Oe(R),V=Oe(V),H=H.slice(),I=R-V){for(I>0?(V=R,O=$):(I=-I,O=H),O.reverse();I--;O.push(0));O.reverse()}for(I=H.length,S=$.length,I-S<0&&(O=$,$=H,H=O,S=I),I=0;S;)I=(H[--S]=H[S]+$[S]+I)/He|0,H[S]=He===H[S]?0:H[S]%He;return I&&(H=[I].concat(H),++V),nt(w,H,V)},c.precision=c.sd=function(w,S){var O,D,I,R=this;if(w!=null&&w!==!!w)return e(w,1,le),S==null?S=A:e(S,0,8),X(new z(R),w,S);if(!(O=R.c))return null;if(I=O.length-1,D=I*kt+1,I=O[I]){for(;I%10==0;I/=10,D--);for(I=O[0];I>=10;I/=10,D++);}return w&&R.e+1>D&&(D=R.e+1),D},c.shiftedBy=function(w){return e(w,-ns,ns),this.times("1e"+w)},c.squareRoot=c.sqrt=function(){var w,S,O,D,I,R=this,V=R.c,H=R.s,$=R.e,Q=y+4,J=new z("0.5");if(H!==1||!V||!V[0])return new z(!H||H<0&&(!V||V[0])?NaN:V?R:1/0);if(H=Math.sqrt(+et(R)),H==0||H==1/0?(S=Ie(V),(S.length+$)%2==0&&(S+="0"),H=Math.sqrt(+S),$=Oe(($+1)/2)-($<0||$%2),H==1/0?S="5e"+$:(S=H.toExponential(),S=S.slice(0,S.indexOf("e")+1)+$),O=new z(S)):O=new z(H+""),O.c[0]){for($=O.e,H=$+Q,H<3&&(H=0);;)if(I=O,O=J.times(I.plus(s(R,I,Q,1))),Ie(I.c).slice(0,H)===(S=Ie(O.c)).slice(0,H))if(O.e<$&&--H,S=S.slice(H-3,H+1),S=="9999"||!D&&S=="4999"){if(!D&&(X(I,I.e+y+2,0),I.times(I).eq(R))){O=I;break}Q+=4,H+=4,D=1}else{(!+S||!+S.slice(1)&&S.charAt(0)=="5")&&(X(O,O.e+y+2,1),w=!O.times(O).eq(R));break}}return X(O,O.e+y+1,A,w)},c.toExponential=function(w,S){return w!=null&&(e(w,0,le),w++),q(this,w,S,1)},c.toFixed=function(w,S){return w!=null&&(e(w,0,le),w=w+this.e+1),q(this,w,S)},c.toFormat=function(w,S,O){var D,I=this;if(O==null)w!=null&&S&&typeof S=="object"?(O=S,S=null):w&&typeof w=="object"?(O=w,w=S=null):O=ft;else if(typeof O!="object")throw Error(Me+"Argument not an object: "+O);if(D=I.toFixed(w,S),I.c){var R,V=D.split("."),H=+O.groupSize,$=+O.secondaryGroupSize,Q=O.groupSeparator||"",J=V[0],ot=V[1],gt=I.s<0,vt=gt?J.slice(1):J,bt=vt.length;if($&&(R=H,H=$,$=R,bt-=R),H>0&&bt>0){for(R=bt%H||H,J=vt.substr(0,R);R<bt;R+=H)J+=Q+vt.substr(R,H);$>0&&(J+=Q+vt.slice(R)),gt&&(J="-"+J)}D=ot?J+(O.decimalSeparator||"")+(($=+O.fractionGroupSize)?ot.replace(new RegExp("\\d{"+$+"}\\B","g"),"$&"+(O.fractionGroupSeparator||"")):ot):J}return(O.prefix||"")+D+(O.suffix||"")},c.toFraction=function(w){var S,O,D,I,R,V,H,$,Q,J,ot,gt,vt=this,bt=vt.c;if(w!=null&&(H=new z(w),!H.isInteger()&&(H.c||H.s!==1)||H.lt(m)))throw Error(Me+"Argument "+(H.isInteger()?"out of range: ":"not an integer: ")+et(H));if(!bt)return new z(vt);for(S=new z(m),Q=O=new z(m),D=$=new z(m),gt=Ie(bt),R=S.e=gt.length-vt.e-1,S.c[0]=ss[(V=R%kt)<0?kt+V:V],w=!w||H.comparedTo(S)>0?R>0?S:Q:H,V=F,F=1/0,H=new z(gt),$.c[0]=0;J=s(H,S,0,1),I=O.plus(J.times(D)),I.comparedTo(w)!=1;)O=D,D=I,Q=$.plus(J.times(I=Q)),$=I,S=H.minus(J.times(I=S)),H=I;return I=s(w.minus(O),D,0,1),$=$.plus(I.times(Q)),O=O.plus(I.times(D)),$.s=Q.s=vt.s,R=R*2,ot=s(Q,D,R,A).minus(vt).abs().comparedTo(s($,O,R,A).minus(vt).abs())<1?[Q,D]:[$,O],F=V,ot},c.toNumber=function(){return+et(this)},c.toPrecision=function(w,S){return w!=null&&e(w,1,le),q(this,w,S,2)},c.toString=function(w){var S,O=this,D=O.s,I=O.e;return I===null?D?(S="Infinity",D<0&&(S="-"+S)):S="NaN":(w==null?S=I<=b||I>=P?l(Ie(O.c),I):_(Ie(O.c),I,"0"):w===10&&Gt?(O=X(new z(O),y+I+1,A),S=_(Ie(O.c),O.e,"0")):(e(w,2,At.length,"Base"),S=o(_(Ie(O.c),I,"0"),10,w,D,!0)),D<0&&O.c[0]&&(S="-"+S)),S},c.valueOf=c.toJSON=function(){return et(this)},c._isBigNumber=!0,c[Symbol.toStringTag]="BigNumber",c[Symbol.for("nodejs.util.inspect.custom")]=c.valueOf,i!=null&&z.set(i),z}function Oe(i){var s=i|0;return i>0||i===s?s:s-1}function Ie(i){for(var s,o,h=1,c=i.length,m=i[0]+"";h<c;){for(s=i[h++]+"",o=kt-s.length;o--;s="0"+s);m+=s}for(c=m.length;m.charCodeAt(--c)===48;);return m.slice(0,c+1||1)}function Ti(i,s){var o,h,c=i.c,m=s.c,y=i.s,A=s.s,b=i.e,P=s.e;if(!y||!A)return null;if(o=c&&!c[0],h=m&&!m[0],o||h)return o?h?0:-A:y;if(y!=A)return y;if(o=y<0,h=b==P,!c||!m)return h?0:!c^o?1:-1;if(!h)return b>P^o?1:-1;for(A=(b=c.length)<(P=m.length)?b:P,y=0;y<A;y++)if(c[y]!=m[y])return c[y]>m[y]^o?1:-1;return b==P?0:b>P^o?1:-1}function e(i,s,o,h){if(i<s||i>o||i!==me(i))throw Error(Me+(h||"Argument")+(typeof i=="number"?i<s||i>o?" out of range: ":" not an integer: ":" not a primitive number: ")+String(i))}function a(i){var s=i.c.length-1;return Oe(i.e/kt)==s&&i.c[s]%2!=0}function l(i,s){return(i.length>1?i.charAt(0)+"."+i.slice(1):i)+(s<0?"e":"e+")+s}function _(i,s,o){var h,c;if(s<0){for(c=o+".";++s;c+=o);i=c+i}else if(h=i.length,++s>h){for(c=o,s-=h;--s;c+=o);i+=c}else s<h&&(i=i.slice(0,s)+"."+i.slice(s));return i}var v=yr(),k=v,Z=class{constructor(i){Lt(this,"key");Lt(this,"left",null);Lt(this,"right",null);this.key=i}},Y=class extends Z{constructor(i){super(i)}},st=class{constructor(){Lt(this,"size",0);Lt(this,"modificationCount",0);Lt(this,"splayCount",0)}splay(i){let s=this.root;if(s==null)return this.compare(i,i),-1;let o=null,h=null,c=null,m=null,y=s,A=this.compare,b;for(;;)if(b=A(y.key,i),b>0){let P=y.left;if(P==null||(b=A(P.key,i),b>0&&(y.left=P.right,P.right=y,y=P,P=y.left,P==null)))break;o==null?h=y:o.left=y,o=y,y=P}else if(b<0){let P=y.right;if(P==null||(b=A(P.key,i),b<0&&(y.right=P.left,P.left=y,y=P,P=y.right,P==null)))break;c==null?m=y:c.right=y,c=y,y=P}else break;return c!=null&&(c.right=y.left,y.left=m),o!=null&&(o.left=y.right,y.right=h),this.root!==y&&(this.root=y,this.splayCount++),b}splayMin(i){let s=i,o=s.left;for(;o!=null;){let h=o;s.left=h.right,h.right=s,s=h,o=s.left}return s}splayMax(i){let s=i,o=s.right;for(;o!=null;){let h=o;s.right=h.left,h.left=s,s=h,o=s.right}return s}_delete(i){if(this.root==null||this.splay(i)!=0)return null;let s=this.root,o=s,h=s.left;if(this.size--,h==null)this.root=s.right;else{let c=s.right;s=this.splayMax(h),s.right=c,this.root=s}return this.modificationCount++,o}addNewRoot(i,s){this.size++,this.modificationCount++;let o=this.root;if(o==null){this.root=i;return}s<0?(i.left=o,i.right=o.right,o.right=null):(i.right=o,i.left=o.left,o.left=null),this.root=i}_first(){let i=this.root;return i==null?null:(this.root=this.splayMin(i),this.root)}_last(){let i=this.root;return i==null?null:(this.root=this.splayMax(i),this.root)}clear(){this.root=null,this.size=0,this.modificationCount++}has(i){return this.validKey(i)&&this.splay(i)==0}defaultCompare(){return(i,s)=>i<s?-1:i>s?1:0}wrap(){return{getRoot:()=>this.root,setRoot:i=>{this.root=i},getSize:()=>this.size,getModificationCount:()=>this.modificationCount,getSplayCount:()=>this.splayCount,setSplayCount:i=>{this.splayCount=i},splay:i=>this.splay(i),has:i=>this.has(i)}}},ht=class ca extends st{constructor(o,h){super();Lt(this,"root",null);Lt(this,"compare");Lt(this,"validKey");Lt(this,pl,"[object Set]");this.compare=o??this.defaultCompare(),this.validKey=h??(c=>c!=null&&c!=null)}delete(o){return this.validKey(o)?this._delete(o)!=null:!1}deleteAll(o){for(let h of o)this.delete(h)}forEach(o){let h=this[Symbol.iterator](),c;for(;c=h.next(),!c.done;)o(c.value,c.value,this)}add(o){let h=this.splay(o);return h!=0&&this.addNewRoot(new Y(o),h),this}addAndReturn(o){let h=this.splay(o);return h!=0&&this.addNewRoot(new Y(o),h),this.root.key}addAll(o){for(let h of o)this.add(h)}isEmpty(){return this.root==null}isNotEmpty(){return this.root!=null}single(){if(this.size==0)throw"Bad state: No element";if(this.size>1)throw"Bad state: Too many element";return this.root.key}first(){if(this.size==0)throw"Bad state: No element";return this._first().key}last(){if(this.size==0)throw"Bad state: No element";return this._last().key}lastBefore(o){if(o==null)throw"Invalid arguments(s)";if(this.root==null)return null;if(this.splay(o)<0)return this.root.key;let h=this.root.left;if(h==null)return null;let c=h.right;for(;c!=null;)h=c,c=h.right;return h.key}firstAfter(o){if(o==null)throw"Invalid arguments(s)";if(this.root==null)return null;if(this.splay(o)>0)return this.root.key;let h=this.root.right;if(h==null)return null;let c=h.left;for(;c!=null;)h=c,c=h.left;return h.key}retainAll(o){let h=new ca(this.compare,this.validKey),c=this.modificationCount;for(let m of o){if(c!=this.modificationCount)throw"Concurrent modification during iteration.";this.validKey(m)&&this.splay(m)==0&&h.add(this.root.key)}h.size!=this.size&&(this.root=h.root,this.size=h.size,this.modificationCount++)}lookup(o){return!this.validKey(o)||this.splay(o)!=0?null:this.root.key}intersection(o){let h=new ca(this.compare,this.validKey);for(let c of this)o.has(c)&&h.add(c);return h}difference(o){let h=new ca(this.compare,this.validKey);for(let c of this)o.has(c)||h.add(c);return h}union(o){let h=this.clone();return h.addAll(o),h}clone(){let o=new ca(this.compare,this.validKey);return o.size=this.size,o.root=this.copyNode(this.root),o}copyNode(o){if(o==null)return null;function h(m,y){let A,b;do{if(A=m.left,b=m.right,A!=null){let P=new Y(A.key);y.left=P,h(A,P)}if(b!=null){let P=new Y(b.key);y.right=P,m=b,y=P}}while(b!=null)}let c=new Y(o.key);return h(o,c),c}toSet(){return this.clone()}entries(){return new Ot(this.wrap())}keys(){return this[Symbol.iterator]()}values(){return this[Symbol.iterator]()}[(_l=Symbol.iterator,pl=Symbol.toStringTag,_l)](){return new wt(this.wrap())}},pt=class{constructor(i){Lt(this,"tree");Lt(this,"path",new Array);Lt(this,"modificationCount",null);Lt(this,"splayCount");this.tree=i,this.splayCount=i.getSplayCount()}[Symbol.iterator](){return this}next(){return this.moveNext()?{done:!1,value:this.current()}:{done:!0,value:null}}current(){if(!this.path.length)return null;let i=this.path[this.path.length-1];return this.getValue(i)}rebuildPath(i){this.path.splice(0,this.path.length),this.tree.splay(i),this.path.push(this.tree.getRoot()),this.splayCount=this.tree.getSplayCount()}findLeftMostDescendent(i){for(;i!=null;)this.path.push(i),i=i.left}moveNext(){if(this.modificationCount!=this.tree.getModificationCount()){if(this.modificationCount==null){this.modificationCount=this.tree.getModificationCount();let o=this.tree.getRoot();for(;o!=null;)this.path.push(o),o=o.left;return this.path.length>0}throw"Concurrent modification during iteration."}if(!this.path.length)return!1;this.splayCount!=this.tree.getSplayCount()&&this.rebuildPath(this.path[this.path.length-1].key);let i=this.path[this.path.length-1],s=i.right;if(s!=null){for(;s!=null;)this.path.push(s),s=s.left;return!0}for(this.path.pop();this.path.length&&this.path[this.path.length-1].right===i;)i=this.path.pop();return this.path.length>0}},wt=class extends pt{getValue(i){return i.key}},Ot=class extends pt{getValue(i){return[i.key,i.key]}},xe=i=>i,ue=i=>{if(i){let s=new ht(is(i)),o=new ht(is(i)),h=(m,y)=>y.addAndReturn(m),c=m=>({x:h(m.x,s),y:h(m.y,o)});return c({x:new k(0),y:new k(0)}),c}return xe},ke=i=>({set:s=>{ee=ke(s)},reset:()=>ke(i),compare:is(i),snap:ue(i),orient:mn(i)}),ee=ke(),Je=(i,s)=>i.ll.x.isLessThanOrEqualTo(s.x)&&s.x.isLessThanOrEqualTo(i.ur.x)&&i.ll.y.isLessThanOrEqualTo(s.y)&&s.y.isLessThanOrEqualTo(i.ur.y),oa=(i,s)=>{if(s.ur.x.isLessThan(i.ll.x)||i.ur.x.isLessThan(s.ll.x)||s.ur.y.isLessThan(i.ll.y)||i.ur.y.isLessThan(s.ll.y))return null;let o=i.ll.x.isLessThan(s.ll.x)?s.ll.x:i.ll.x,h=i.ur.x.isLessThan(s.ur.x)?i.ur.x:s.ur.x,c=i.ll.y.isLessThan(s.ll.y)?s.ll.y:i.ll.y,m=i.ur.y.isLessThan(s.ur.y)?i.ur.y:s.ur.y;return{ll:{x:o,y:c},ur:{x:h,y:m}}},as=(i,s)=>i.x.times(s.y).minus(i.y.times(s.x)),Ar=(i,s)=>i.x.times(s.x).plus(i.y.times(s.y)),gn=i=>Ar(i,i).sqrt(),Jo=(i,s,o)=>{let h={x:s.x.minus(i.x),y:s.y.minus(i.y)},c={x:o.x.minus(i.x),y:o.y.minus(i.y)};return as(c,h).div(gn(c)).div(gn(h))},vr=(i,s,o)=>{let h={x:s.x.minus(i.x),y:s.y.minus(i.y)},c={x:o.x.minus(i.x),y:o.y.minus(i.y)};return Ar(c,h).div(gn(c)).div(gn(h))},se=(i,s,o)=>s.y.isZero()?null:{x:i.x.plus(s.x.div(s.y).times(o.minus(i.y))),y:o},yn=(i,s,o)=>s.x.isZero()?null:{x:o,y:i.y.plus(s.y.div(s.x).times(o.minus(i.x)))},Qo=(i,s,o,h)=>{if(s.x.isZero())return yn(o,h,i.x);if(h.x.isZero())return yn(i,s,o.x);if(s.y.isZero())return se(o,h,i.y);if(h.y.isZero())return se(i,s,o.y);let c=as(s,h);if(c.isZero())return null;let m={x:o.x.minus(i.x),y:o.y.minus(i.y)},y=as(m,s).div(c),A=as(m,h).div(c),b=i.x.plus(A.times(s.x)),P=o.x.plus(y.times(h.x)),N=i.y.plus(A.times(s.y)),F=o.y.plus(y.times(h.y)),tt=b.plus(P).div(2),it=N.plus(F).div(2);return{x:tt,y:it}},Qe=class ml{constructor(s,o){Lt(this,"point");Lt(this,"isLeft");Lt(this,"segment");Lt(this,"otherSE");Lt(this,"consumedBy");s.events===void 0?s.events=[this]:s.events.push(this),this.point=s,this.isLeft=o}static compare(s,o){let h=ml.comparePoints(s.point,o.point);return h!==0?h:(s.point!==o.point&&s.link(o),s.isLeft!==o.isLeft?s.isLeft?1:-1:Xi.compare(s.segment,o.segment))}static comparePoints(s,o){return s.x.isLessThan(o.x)?-1:s.x.isGreaterThan(o.x)?1:s.y.isLessThan(o.y)?-1:s.y.isGreaterThan(o.y)?1:0}link(s){if(s.point===this.point)throw new Error("Tried to link already linked events");let o=s.point.events;for(let h=0,c=o.length;h<c;h++){let m=o[h];this.point.events.push(m),m.point=this.point}this.checkForConsuming()}checkForConsuming(){let s=this.point.events.length;for(let o=0;o<s;o++){let h=this.point.events[o];if(h.segment.consumedBy===void 0)for(let c=o+1;c<s;c++){let m=this.point.events[c];m.consumedBy===void 0&&h.otherSE.point.events===m.otherSE.point.events&&h.segment.consume(m.segment)}}}getAvailableLinkedEvents(){let s=[];for(let o=0,h=this.point.events.length;o<h;o++){let c=this.point.events[o];c!==this&&!c.segment.ringOut&&c.segment.isInResult()&&s.push(c)}return s}getLeftmostComparator(s){let o=new Map,h=c=>{let m=c.otherSE;o.set(c,{sine:Jo(this.point,s.point,m.point),cosine:vr(this.point,s.point,m.point)})};return(c,m)=>{o.has(c)||h(c),o.has(m)||h(m);let{sine:y,cosine:A}=o.get(c),{sine:b,cosine:P}=o.get(m);return y.isGreaterThanOrEqualTo(0)&&b.isGreaterThanOrEqualTo(0)?A.isLessThan(P)?1:A.isGreaterThan(P)?-1:0:y.isLessThan(0)&&b.isLessThan(0)?A.isLessThan(P)?-1:A.isGreaterThan(P)?1:0:b.isLessThan(y)?-1:b.isGreaterThan(y)?1:0}}},th=0,Xi=class Cr{constructor(s,o,h,c){Lt(this,"id");Lt(this,"leftSE");Lt(this,"rightSE");Lt(this,"rings");Lt(this,"windings");Lt(this,"ringOut");Lt(this,"consumedBy");Lt(this,"prev");Lt(this,"_prevInResult");Lt(this,"_beforeState");Lt(this,"_afterState");Lt(this,"_isInResult");this.id=++th,this.leftSE=s,s.segment=this,s.otherSE=o,this.rightSE=o,o.segment=this,o.otherSE=s,this.rings=h,this.windings=c}static compare(s,o){let h=s.leftSE.point.x,c=o.leftSE.point.x,m=s.rightSE.point.x,y=o.rightSE.point.x;if(y.isLessThan(h))return 1;if(m.isLessThan(c))return-1;let A=s.leftSE.point.y,b=o.leftSE.point.y,P=s.rightSE.point.y,N=o.rightSE.point.y;if(h.isLessThan(c)){if(b.isLessThan(A)&&b.isLessThan(P))return 1;if(b.isGreaterThan(A)&&b.isGreaterThan(P))return-1;let F=s.comparePoint(o.leftSE.point);if(F<0)return 1;if(F>0)return-1;let tt=o.comparePoint(s.rightSE.point);return tt!==0?tt:-1}if(h.isGreaterThan(c)){if(A.isLessThan(b)&&A.isLessThan(N))return-1;if(A.isGreaterThan(b)&&A.isGreaterThan(N))return 1;let F=o.comparePoint(s.leftSE.point);if(F!==0)return F;let tt=s.comparePoint(o.rightSE.point);return tt<0?1:tt>0?-1:1}if(A.isLessThan(b))return-1;if(A.isGreaterThan(b))return 1;if(m.isLessThan(y)){let F=o.comparePoint(s.rightSE.point);if(F!==0)return F}if(m.isGreaterThan(y)){let F=s.comparePoint(o.rightSE.point);if(F<0)return 1;if(F>0)return-1}if(!m.eq(y)){let F=P.minus(A),tt=m.minus(h),it=N.minus(b),lt=y.minus(c);if(F.isGreaterThan(tt)&&it.isLessThan(lt))return 1;if(F.isLessThan(tt)&&it.isGreaterThan(lt))return-1}return m.isGreaterThan(y)?1:m.isLessThan(y)||P.isLessThan(N)?-1:P.isGreaterThan(N)?1:s.id<o.id?-1:s.id>o.id?1:0}static fromRing(s,o,h){let c,m,y,A=Qe.comparePoints(s,o);if(A<0)c=s,m=o,y=1;else if(A>0)c=o,m=s,y=-1;else throw new Error(`Tried to create degenerate segment at [${s.x}, ${s.y}]`);let b=new Qe(c,!0),P=new Qe(m,!1);return new Cr(b,P,[h],[y])}replaceRightSE(s){this.rightSE=s,this.rightSE.segment=this,this.rightSE.otherSE=this.leftSE,this.leftSE.otherSE=this.rightSE}bbox(){let s=this.leftSE.point.y,o=this.rightSE.point.y;return{ll:{x:this.leftSE.point.x,y:s.isLessThan(o)?s:o},ur:{x:this.rightSE.point.x,y:s.isGreaterThan(o)?s:o}}}vector(){return{x:this.rightSE.point.x.minus(this.leftSE.point.x),y:this.rightSE.point.y.minus(this.leftSE.point.y)}}isAnEndpoint(s){return s.x.eq(this.leftSE.point.x)&&s.y.eq(this.leftSE.point.y)||s.x.eq(this.rightSE.point.x)&&s.y.eq(this.rightSE.point.y)}comparePoint(s){return ee.orient(this.leftSE.point,s,this.rightSE.point)}getIntersection(s){let o=this.bbox(),h=s.bbox(),c=oa(o,h);if(c===null)return null;let m=this.leftSE.point,y=this.rightSE.point,A=s.leftSE.point,b=s.rightSE.point,P=Je(o,A)&&this.comparePoint(A)===0,N=Je(h,m)&&s.comparePoint(m)===0,F=Je(o,b)&&this.comparePoint(b)===0,tt=Je(h,y)&&s.comparePoint(y)===0;if(N&&P)return tt&&!F?y:!tt&&F?b:null;if(N)return F&&m.x.eq(b.x)&&m.y.eq(b.y)?null:m;if(P)return tt&&y.x.eq(A.x)&&y.y.eq(A.y)?null:A;if(tt&&F)return null;if(tt)return y;if(F)return b;let it=Qo(m,this.vector(),A,s.vector());return it===null||!Je(c,it)?null:ee.snap(it)}split(s){let o=[],h=s.events!==void 0,c=new Qe(s,!0),m=new Qe(s,!1),y=this.rightSE;this.replaceRightSE(m),o.push(m),o.push(c);let A=new Cr(c,y,this.rings.slice(),this.windings.slice());return Qe.comparePoints(A.leftSE.point,A.rightSE.point)>0&&A.swapEvents(),Qe.comparePoints(this.leftSE.point,this.rightSE.point)>0&&this.swapEvents(),h&&(c.checkForConsuming(),m.checkForConsuming()),o}swapEvents(){let s=this.rightSE;this.rightSE=this.leftSE,this.leftSE=s,this.leftSE.isLeft=!0,this.rightSE.isLeft=!1;for(let o=0,h=this.windings.length;o<h;o++)this.windings[o]*=-1}consume(s){let o=this,h=s;for(;o.consumedBy;)o=o.consumedBy;for(;h.consumedBy;)h=h.consumedBy;let c=Cr.compare(o,h);if(c!==0){if(c>0){let m=o;o=h,h=m}if(o.prev===h){let m=o;o=h,h=m}for(let m=0,y=h.rings.length;m<y;m++){let A=h.rings[m],b=h.windings[m],P=o.rings.indexOf(A);P===-1?(o.rings.push(A),o.windings.push(b)):o.windings[P]+=b}h.rings=null,h.windings=null,h.consumedBy=o,h.leftSE.consumedBy=o.leftSE,h.rightSE.consumedBy=o.rightSE}}prevInResult(){return this._prevInResult!==void 0?this._prevInResult:(this.prev?this.prev.isInResult()?this._prevInResult=this.prev:this._prevInResult=this.prev.prevInResult():this._prevInResult=null,this._prevInResult)}beforeState(){if(this._beforeState!==void 0)return this._beforeState;if(!this.prev)this._beforeState={rings:[],windings:[],multiPolys:[]};else{let s=this.prev.consumedBy||this.prev;this._beforeState=s.afterState()}return this._beforeState}afterState(){if(this._afterState!==void 0)return this._afterState;let s=this.beforeState();this._afterState={rings:s.rings.slice(0),windings:s.windings.slice(0),multiPolys:[]};let o=this._afterState.rings,h=this._afterState.windings,c=this._afterState.multiPolys;for(let A=0,b=this.rings.length;A<b;A++){let P=this.rings[A],N=this.windings[A],F=o.indexOf(P);F===-1?(o.push(P),h.push(N)):h[F]+=N}let m=[],y=[];for(let A=0,b=o.length;A<b;A++){if(h[A]===0)continue;let P=o[A],N=P.poly;if(y.indexOf(N)===-1)if(P.isExterior)m.push(N);else{y.indexOf(N)===-1&&y.push(N);let F=m.indexOf(P.poly);F!==-1&&m.splice(F,1)}}for(let A=0,b=m.length;A<b;A++){let P=m[A].multiPoly;c.indexOf(P)===-1&&c.push(P)}return this._afterState}isInResult(){if(this.consumedBy)return!1;if(this._isInResult!==void 0)return this._isInResult;let s=this.beforeState().multiPolys,o=this.afterState().multiPolys;switch(Mr.type){case"union":{let h=s.length===0,c=o.length===0;this._isInResult=h!==c;break}case"intersection":{let h,c;s.length<o.length?(h=s.length,c=o.length):(h=o.length,c=s.length),this._isInResult=c===Mr.numMultiPolys&&h<c;break}case"xor":{let h=Math.abs(s.length-o.length);this._isInResult=h%2===1;break}case"difference":{let h=c=>c.length===1&&c[0].isSubject;this._isInResult=h(s)!==h(o);break}}return this._isInResult}},ha=class{constructor(i,s,o){Lt(this,"poly");Lt(this,"isExterior");Lt(this,"segments");Lt(this,"bbox");if(!Array.isArray(i)||i.length===0)throw new Error("Input geometry is not a valid Polygon or MultiPolygon");if(this.poly=s,this.isExterior=o,this.segments=[],typeof i[0][0]!="number"||typeof i[0][1]!="number")throw new Error("Input geometry is not a valid Polygon or MultiPolygon");let h=ee.snap({x:new k(i[0][0]),y:new k(i[0][1])});this.bbox={ll:{x:h.x,y:h.y},ur:{x:h.x,y:h.y}};let c=h;for(let m=1,y=i.length;m<y;m++){if(typeof i[m][0]!="number"||typeof i[m][1]!="number")throw new Error("Input geometry is not a valid Polygon or MultiPolygon");let A=ee.snap({x:new k(i[m][0]),y:new k(i[m][1])});A.x.eq(c.x)&&A.y.eq(c.y)||(this.segments.push(Xi.fromRing(c,A,this)),A.x.isLessThan(this.bbox.ll.x)&&(this.bbox.ll.x=A.x),A.y.isLessThan(this.bbox.ll.y)&&(this.bbox.ll.y=A.y),A.x.isGreaterThan(this.bbox.ur.x)&&(this.bbox.ur.x=A.x),A.y.isGreaterThan(this.bbox.ur.y)&&(this.bbox.ur.y=A.y),c=A)}(!h.x.eq(c.x)||!h.y.eq(c.y))&&this.segments.push(Xi.fromRing(c,h,this))}getSweepEvents(){let i=[];for(let s=0,o=this.segments.length;s<o;s++){let h=this.segments[s];i.push(h.leftSE),i.push(h.rightSE)}return i}},eh=class{constructor(i,s){Lt(this,"multiPoly");Lt(this,"exteriorRing");Lt(this,"interiorRings");Lt(this,"bbox");if(!Array.isArray(i))throw new Error("Input geometry is not a valid Polygon or MultiPolygon");this.exteriorRing=new ha(i[0],this,!0),this.bbox={ll:{x:this.exteriorRing.bbox.ll.x,y:this.exteriorRing.bbox.ll.y},ur:{x:this.exteriorRing.bbox.ur.x,y:this.exteriorRing.bbox.ur.y}},this.interiorRings=[];for(let o=1,h=i.length;o<h;o++){let c=new ha(i[o],this,!1);c.bbox.ll.x.isLessThan(this.bbox.ll.x)&&(this.bbox.ll.x=c.bbox.ll.x),c.bbox.ll.y.isLessThan(this.bbox.ll.y)&&(this.bbox.ll.y=c.bbox.ll.y),c.bbox.ur.x.isGreaterThan(this.bbox.ur.x)&&(this.bbox.ur.x=c.bbox.ur.x),c.bbox.ur.y.isGreaterThan(this.bbox.ur.y)&&(this.bbox.ur.y=c.bbox.ur.y),this.interiorRings.push(c)}this.multiPoly=s}getSweepEvents(){let i=this.exteriorRing.getSweepEvents();for(let s=0,o=this.interiorRings.length;s<o;s++){let h=this.interiorRings[s].getSweepEvents();for(let c=0,m=h.length;c<m;c++)i.push(h[c])}return i}},ol=class{constructor(i,s){Lt(this,"isSubject");Lt(this,"polys");Lt(this,"bbox");if(!Array.isArray(i))throw new Error("Input geometry is not a valid Polygon or MultiPolygon");try{typeof i[0][0][0]=="number"&&(i=[i])}catch{}this.polys=[],this.bbox={ll:{x:new k(Number.POSITIVE_INFINITY),y:new k(Number.POSITIVE_INFINITY)},ur:{x:new k(Number.NEGATIVE_INFINITY),y:new k(Number.NEGATIVE_INFINITY)}};for(let o=0,h=i.length;o<h;o++){let c=new eh(i[o],this);c.bbox.ll.x.isLessThan(this.bbox.ll.x)&&(this.bbox.ll.x=c.bbox.ll.x),c.bbox.ll.y.isLessThan(this.bbox.ll.y)&&(this.bbox.ll.y=c.bbox.ll.y),c.bbox.ur.x.isGreaterThan(this.bbox.ur.x)&&(this.bbox.ur.x=c.bbox.ur.x),c.bbox.ur.y.isGreaterThan(this.bbox.ur.y)&&(this.bbox.ur.y=c.bbox.ur.y),this.polys.push(c)}this.isSubject=s}getSweepEvents(){let i=[];for(let s=0,o=this.polys.length;s<o;s++){let h=this.polys[s].getSweepEvents();for(let c=0,m=h.length;c<m;c++)i.push(h[c])}return i}},jf=class ah{constructor(s){Lt(this,"events");Lt(this,"poly");Lt(this,"_isExteriorRing");Lt(this,"_enclosingRing");this.events=s;for(let o=0,h=s.length;o<h;o++)s[o].segment.ringOut=this;this.poly=null}static factory(s){let o=[];for(let h=0,c=s.length;h<c;h++){let m=s[h];if(!m.isInResult()||m.ringOut)continue;let y=null,A=m.leftSE,b=m.rightSE,P=[A],N=A.point,F=[];for(;y=A,A=b,P.push(A),A.point!==N;)for(;;){let tt=A.getAvailableLinkedEvents();if(tt.length===0){let ft=P[0].point,At=P[P.length-1].point;throw new Error(`Unable to complete output ring starting at [${ft.x}, ${ft.y}]. Last matching segment found ends at [${At.x}, ${At.y}].`)}if(tt.length===1){b=tt[0].otherSE;break}let it=null;for(let ft=0,At=F.length;ft<At;ft++)if(F[ft].point===A.point){it=ft;break}if(it!==null){let ft=F.splice(it)[0],At=P.splice(ft.index);At.unshift(At[0].otherSE),o.push(new ah(At.reverse()));continue}F.push({index:P.length,point:A.point});let lt=A.getLeftmostComparator(y);b=tt.sort(lt)[0].otherSE;break}o.push(new ah(P))}return o}getGeom(){let s=this.events[0].point,o=[s];for(let P=1,N=this.events.length-1;P<N;P++){let F=this.events[P].point,tt=this.events[P+1].point;ee.orient(F,s,tt)!==0&&(o.push(F),s=F)}if(o.length===1)return null;let h=o[0],c=o[1];ee.orient(h,s,c)===0&&o.shift(),o.push(o[0]);let m=this.isExteriorRing()?1:-1,y=this.isExteriorRing()?0:o.length-1,A=this.isExteriorRing()?o.length:-1,b=[];for(let P=y;P!=A;P+=m)b.push([o[P].x.toNumber(),o[P].y.toNumber()]);return b}isExteriorRing(){if(this._isExteriorRing===void 0){let s=this.enclosingRing();this._isExteriorRing=s?!s.isExteriorRing():!0}return this._isExteriorRing}enclosingRing(){return this._enclosingRing===void 0&&(this._enclosingRing=this._calcEnclosingRing()),this._enclosingRing}_calcEnclosingRing(){var c,m;let s=this.events[0];for(let y=1,A=this.events.length;y<A;y++){let b=this.events[y];Qe.compare(s,b)>0&&(s=b)}let o=s.segment.prevInResult(),h=o?o.prevInResult():null;for(;;){if(!o)return null;if(!h)return o.ringOut;if(h.ringOut!==o.ringOut)return((c=h.ringOut)==null?void 0:c.enclosingRing())!==o.ringOut?o.ringOut:(m=o.ringOut)==null?void 0:m.enclosingRing();o=h.prevInResult(),h=o?o.prevInResult():null}}},hl=class{constructor(i){Lt(this,"exteriorRing");Lt(this,"interiorRings");this.exteriorRing=i,i.poly=this,this.interiorRings=[]}addInterior(i){this.interiorRings.push(i),i.poly=this}getGeom(){let i=this.exteriorRing.getGeom();if(i===null)return null;let s=[i];for(let o=0,h=this.interiorRings.length;o<h;o++){let c=this.interiorRings[o].getGeom();c!==null&&s.push(c)}return s}},Zf=class{constructor(i){Lt(this,"rings");Lt(this,"polys");this.rings=i,this.polys=this._composePolys(i)}getGeom(){let i=[];for(let s=0,o=this.polys.length;s<o;s++){let h=this.polys[s].getGeom();h!==null&&i.push(h)}return i}_composePolys(i){var o;let s=[];for(let h=0,c=i.length;h<c;h++){let m=i[h];if(!m.poly)if(m.isExteriorRing())s.push(new hl(m));else{let y=m.enclosingRing();y!=null&&y.poly||s.push(new hl(y)),(o=y==null?void 0:y.poly)==null||o.addInterior(m)}}return s}},qf=class{constructor(i,s=Xi.compare){Lt(this,"queue");Lt(this,"tree");Lt(this,"segments");this.queue=i,this.tree=new ht(s),this.segments=[]}process(i){let s=i.segment,o=[];if(i.consumedBy)return i.isLeft?this.queue.delete(i.otherSE):this.tree.delete(s),o;i.isLeft&&this.tree.add(s);let h=s,c=s;do h=this.tree.lastBefore(h);while(h!=null&&h.consumedBy!=null);do c=this.tree.firstAfter(c);while(c!=null&&c.consumedBy!=null);if(i.isLeft){let m=null;if(h){let A=h.getIntersection(s);if(A!==null&&(s.isAnEndpoint(A)||(m=A),!h.isAnEndpoint(A))){let b=this._splitSafely(h,A);for(let P=0,N=b.length;P<N;P++)o.push(b[P])}}let y=null;if(c){let A=c.getIntersection(s);if(A!==null&&(s.isAnEndpoint(A)||(y=A),!c.isAnEndpoint(A))){let b=this._splitSafely(c,A);for(let P=0,N=b.length;P<N;P++)o.push(b[P])}}if(m!==null||y!==null){let A=null;m===null?A=y:y===null?A=m:A=Qe.comparePoints(m,y)<=0?m:y,this.queue.delete(s.rightSE),o.push(s.rightSE);let b=s.split(A);for(let P=0,N=b.length;P<N;P++)o.push(b[P])}o.length>0?(this.tree.delete(s),o.push(i)):(this.segments.push(s),s.prev=h)}else{if(h&&c){let m=h.getIntersection(c);if(m!==null){if(!h.isAnEndpoint(m)){let y=this._splitSafely(h,m);for(let A=0,b=y.length;A<b;A++)o.push(y[A])}if(!c.isAnEndpoint(m)){let y=this._splitSafely(c,m);for(let A=0,b=y.length;A<b;A++)o.push(y[A])}}}this.tree.delete(s)}return o}_splitSafely(i,s){this.tree.delete(i);let o=i.rightSE;this.queue.delete(o);let h=i.split(s);return h.push(o),i.consumedBy===void 0&&this.tree.add(i),h}},Hf=class{constructor(){Lt(this,"type");Lt(this,"numMultiPolys")}run(i,s,o){la.type=i;let h=[new ol(s,!0)];for(let b=0,P=o.length;b<P;b++)h.push(new ol(o[b],!1));if(la.numMultiPolys=h.length,la.type==="difference"){let b=h[0],P=1;for(;P<h.length;)oa(h[P].bbox,b.bbox)!==null?P++:h.splice(P,1)}if(la.type==="intersection")for(let b=0,P=h.length;b<P;b++){let N=h[b];for(let F=b+1,tt=h.length;F<tt;F++)if(oa(N.bbox,h[F].bbox)===null)return[]}let c=new ht(Qe.compare);for(let b=0,P=h.length;b<P;b++){let N=h[b].getSweepEvents();for(let F=0,tt=N.length;F<tt;F++)c.add(N[F])}let m=new qf(c),y=null;for(c.size!=0&&(y=c.first(),c.delete(y));y;){let b=m.process(y);for(let P=0,N=b.length;P<N;P++){let F=b[P];F.consumedBy===void 0&&c.add(F)}c.size!=0?(y=c.first(),c.delete(y)):y=null}ee.reset();let A=jf.factory(m.segments);return new Zf(A).getGeom()}},la=new Hf,Mr=la,Vf=(i,...s)=>Mr.run("intersection",i,s),$f=(i,...s)=>Mr.run("difference",i,s);ee.set;function xr(i){let s={type:"Feature"};return s.geometry=i,s}function Lr(i){return i.type==="Feature"?i.geometry:i}function ll(i){return i&&i.geometry&&i.geometry.coordinates?i.geometry.coordinates:i}function Kf(i){return xr({type:"LineString",coordinates:i})}function Wf(i){return xr({type:"MultiLineString",coordinates:i})}function ul(i){return xr({type:"Polygon",coordinates:i})}function cl(i){return xr({type:"MultiPolygon",coordinates:i})}function Xf(i,s){let o=Lr(i),h=Lr(s),c=Vf(o.coordinates,h.coordinates);return c.length===0?null:c.length===1?ul(c[0]):cl(c)}function Yf(i,s){let o=Lr(i),h=Lr(s),c=$f(o.coordinates,h.coordinates);return c.length===0?null:c.length===1?ul(c[0]):cl(c)}function dl(i){return Array.isArray(i)?1+dl(i[0]):-1}function Jf(i){i instanceof L.Polyline&&(i=i.toGeoJSON(15));let s=ll(i),o=dl(s),h=[];return o>1?s.forEach(c=>{h.push(Kf(c))}):h.push(i),h}function Qf(i){let s=[];return i.eachLayer(o=>{s.push(ll(o.toGeoJSON(15)))}),Wf(s)}de.Cut=de.Polygon.extend({initialize(i){this._map=i,this._shape="Cut",this.toolbarButtonName="cutPolygon"},_finishShape(){if(this._editedLayers=[],!this.options.allowSelfIntersection&&(this._handleSelfIntersection(!0,this._layer.getLatLngs()[0]),this._doesSelfIntersect)||this.options.requireSnapToFinish&&!this._hintMarker._snapped&&!this._isFirstLayer())return;let i=this._layer.getLatLngs();if(i.length<=2)return;let s=L.polygon(i,this.options.pathOptions);s._latlngInfos=this._layer._latlngInfo,this.cut(s),this._cleanupSnapping(),this._otherSnapLayers.splice(this._tempSnapLayerIndex,1),delete this._tempSnapLayerIndex,this._editedLayers.forEach(({layer:h,originalLayer:c})=>{this._fireCut(c,h,c),this._fireCut(this._map,h,c),c.pm._fireEdit()}),this._editedLayers=[];let o=this._hintMarker.getLatLng();this.disable(),this.options.continueDrawing&&(this.enable(),this._hintMarker.setLatLng(o))},cut(i){let s=this._map._layers,o=i._latlngInfos||[];Object.keys(s).map(h=>s[h]).filter(h=>h.pm).filter(h=>!h._pmTempLayer).filter(h=>!L.PM.optIn&&!h.options.pmIgnore||L.PM.optIn&&h.options.pmIgnore===!1).filter(h=>h instanceof L.Polyline).filter(h=>h!==i).filter(h=>h.pm.options.allowCutting).filter(h=>this.options.layersToCut&&L.Util.isArray(this.options.layersToCut)&&this.options.layersToCut.length>0?this.options.layersToCut.indexOf(h)>-1:!0).filter(h=>!this._layerGroup.hasLayer(h)).filter(h=>{try{let c=!!Xe(i.toGeoJSON(15),h.toGeoJSON(15)).features.length>0;return c||h instanceof L.Polyline&&!(h instanceof L.Polygon)?c:!!Xf(i.toGeoJSON(15),h.toGeoJSON(15))}catch{return h instanceof L.Polygon&&console.error("You can't cut polygons with self-intersections"),!1}}).forEach(h=>{let c;if(h instanceof L.Polygon){c=L.polygon(h.getLatLngs());let b=c.getLatLngs();o.forEach(P=>{if(P&&P.snapInfo){let{latlng:N}=P,F=this._calcClosestLayer(N,[c]);if(F&&F.segment&&F.distance<this.options.snapDistance){let{segment:tt}=F;if(tt&&tt.length===2){let{indexPath:it,parentPath:lt,newIndex:ft}=L.PM.Utils._getIndexFromSegment(b,tt);(it.length>1?(0,hi.default)(b,lt):b).splice(ft,0,N)}}}})}else c=h;let m=this._cutLayer(i,c),y=L.geoJSON(m,h.options);y.getLayers().length===1&&([y]=y.getLayers()),this._setPane(y,"layerPane");let A=y.addTo(this._map.pm._getContainingLayer());if(A.pm.enable(h.pm.options),A.pm.disable(),h._pmTempLayer=!0,i._pmTempLayer=!0,h.remove(),h.removeFrom(this._map.pm._getContainingLayer()),i.remove(),i.removeFrom(this._map.pm._getContainingLayer()),A.getLayers&&A.getLayers().length===0&&this._map.pm.removeLayer({target:A}),A instanceof L.LayerGroup?(A.eachLayer(b=>{this._addDrawnLayerProp(b)}),this._addDrawnLayerProp(A)):this._addDrawnLayerProp(A),this.options.layersToCut&&L.Util.isArray(this.options.layersToCut)&&this.options.layersToCut.length>0){let b=this.options.layersToCut.indexOf(h);b>-1&&this.options.layersToCut.splice(b,1)}this._editedLayers.push({layer:A,originalLayer:h})})},_cutLayer(i,s){let o=L.geoJSON(),h;if(s instanceof L.Polygon)h=Yf(s.toGeoJSON(15),i.toGeoJSON(15));else{let c=Jf(s);c.forEach(m=>{let y=qo(m,i.toGeoJSON(15)),A;y&&y.features.length>0?A=L.geoJSON(y):A=L.geoJSON(m),A.getLayers().forEach(b=>{Vo(i.toGeoJSON(15),b.toGeoJSON(15))||b.addTo(o)})}),c.length>1?h=Qf(o):h=o.toGeoJSON(15)}return h},_change:L.Util.falseFn}),de.Text=de.extend({initialize(i){this._map=i,this._shape="Text",this.toolbarButtonName="drawText"},enable(i){L.Util.setOptions(this,i),this._enabled=!0,this._map.on("click",this._createMarker,this),this._map.pm.Toolbar.toggleButton(this.toolbarButtonName,!0),this._hintMarker=L.marker(this._map.getCenter(),{interactive:!1,zIndexOffset:100,icon:L.divIcon({className:"marker-icon cursor-marker"})}),this._setPane(this._hintMarker,"vertexPane"),this._hintMarker._pmTempLayer=!0,this._hintMarker.addTo(this._map),this.options.cursorMarker&&L.DomUtil.addClass(this._hintMarker._icon,"visible"),this.options.tooltips&&this._hintMarker.bindTooltip(St("tooltips.placeText"),{permanent:!0,offset:L.point(0,10),direction:"bottom",opacity:.8}).openTooltip(),this._layer=this._hintMarker,this._map.on("mousemove",this._syncHintMarker,this),this._map.getContainer().classList.add("geoman-draw-cursor"),this._fireDrawStart(),this._setGlobalDrawMode()},disable(){var i;this._enabled&&(this._enabled=!1,this._map.off("click",this._createMarker,this),(i=this._hintMarker)==null||i.remove(),this._map.getContainer().classList.remove("geoman-draw-cursor"),this._map.off("mousemove",this._syncHintMarker,this),this._map.off("mousemove",this._showHintMarker,this),this._map.pm.Toolbar.toggleButton(this.toolbarButtonName,!1),this.options.snappable&&this._cleanupSnapping(),this._fireDrawEnd(),this._setGlobalDrawMode())},enabled(){return this._enabled},toggle(i){this.enabled()?this.disable():this.enable(i)},_syncHintMarker(i){if(this._hintMarker.setLatLng(i.latlng),this.options.snappable){let s=i;s.target=this._hintMarker,this._handleSnapping(s)}},_createMarker(i){var c,m,y,A;if(!i.latlng||this.options.requireSnapToFinish&&!this._hintMarker._snapped&&!this._isFirstLayer())return;this._hintMarker._snapped||this._hintMarker.setLatLng(i.latlng);let s=this._hintMarker.getLatLng();if(this.textArea=this._createTextArea(),(c=this.options.textOptions)==null?void 0:c.className){let b=this.options.textOptions.className.split(" ");this.textArea.classList.add(...b)}let o=this._createTextIcon(this.textArea),h=new L.Marker(s,{textMarker:!0,_textMarkerOverPM:!0,icon:o});if(this._setPane(h,"markerPane"),this._finishLayer(h),h.pm||(h.options.draggable=!1),h.addTo(this._map.pm._getContainingLayer()),h.pm){h.pm.textArea=this.textArea,L.setOptions(h.pm,{removeIfEmpty:((m=this.options.textOptions)==null?void 0:m.removeIfEmpty)??!0});let b=((y=this.options.textOptions)==null?void 0:y.focusAfterDraw)??!0;h.pm._createTextMarker(b),(A=this.options.textOptions)!=null&&A.text&&h.pm.setText(this.options.textOptions.text)}this._fireCreate(h),this._cleanupSnapping(),this.disable(),this.options.continueDrawing&&this._map.once("mousemove",this._showHintMarkerAfterMoving,this)},_showHintMarkerAfterMoving(i){this.enable(),this._hintMarker.setLatLng(i.latlng)},_createTextArea(){let i=document.createElement("textarea");return i.readOnly=!0,i.classList.add("pm-textarea","pm-disabled"),i},_createTextIcon(i){return L.divIcon({className:"pm-text-marker",html:i})}});var tp={enableLayerDrag(){if(!this.options.draggable||!this._layer._map)return;this.disable(),this._layerDragEnabled=!0,this._map||(this._map=this._layer._map),(this._layer instanceof L.Marker||this._layer instanceof L.ImageOverlay)&&L.DomEvent.on(this._getDOMElem(),"dragstart",this._stopDOMImageDrag),this._layer.dragging&&this._layer.dragging.disable(),this._tempDragCoord=null,Ae(this._layer)instanceof L.Canvas?(this._layer.on("mouseout",this.removeDraggingClass,this),this._layer.on("mouseover",this.addDraggingClass,this)):this.addDraggingClass(),this._originalMapDragState=this._layer._map.dragging._enabled,this._safeToCacheDragState=!0;let i=this._getDOMElem();i&&(Ae(this._layer)instanceof L.Canvas?(this._layer.on("touchstart mousedown",this._dragMixinOnMouseDown,this),this._map.pm._addTouchEvents(i)):L.DomEvent.on(i,"touchstart mousedown",this._simulateMouseDownEvent,this)),this._fireDragEnable()},disableLayerDrag(){this._layerDragEnabled=!1,Ae(this._layer)instanceof L.Canvas?(this._layer.off("mouseout",this.removeDraggingClass,this),this._layer.off("mouseover",this.addDraggingClass,this)):this.removeDraggingClass(),this._originalMapDragState&&this._dragging&&this._map.dragging.enable(),this._safeToCacheDragState=!1,this._layer.dragging&&this._layer.dragging.disable();let i=this._getDOMElem();i&&(Ae(this._layer)instanceof L.Canvas?(this._layer.off("touchstart mousedown",this._dragMixinOnMouseDown,this),this._map.pm._removeTouchEvents(i)):L.DomEvent.off(i,"touchstart mousedown",this._simulateMouseDownEvent,this)),this._layerDragged&&this._fireUpdate(),this._layerDragged=!1,this._fireDragDisable()},dragging(){return this._dragging},layerDragEnabled(){return!!this._layerDragEnabled},_simulateMouseDownEvent(i){let s=i.touches?i.touches[0]:i,o={originalEvent:s,target:this._layer};return o.containerPoint=this._map.mouseEventToContainerPoint(s),o.latlng=this._map.containerPointToLatLng(o.containerPoint),this._dragMixinOnMouseDown(o),!1},_simulateMouseMoveEvent(i){let s=i.touches?i.touches[0]:i,o={originalEvent:s,target:this._layer};return o.containerPoint=this._map.mouseEventToContainerPoint(s),o.latlng=this._map.containerPointToLatLng(o.containerPoint),this._dragMixinOnMouseMove(o),!1},_simulateMouseUpEvent(i){let s={originalEvent:i.touches?i.touches[0]:i,target:this._layer};return i.type.indexOf("touch")===-1&&(s.containerPoint=this._map.mouseEventToContainerPoint(i),s.latlng=this._map.containerPointToLatLng(s.containerPoint)),this._dragMixinOnMouseUp(s),!1},_dragMixinOnMouseDown(i){if(i.originalEvent.button>0)return;this._overwriteEventIfItComesFromMarker(i);let s=i._fromLayerSync,o=this._syncLayers("_dragMixinOnMouseDown",i);if(this._layer instanceof L.Marker&&(this.options.snappable&&!s&&!o?this._initSnappableMarkers():this._disableSnapping()),this._layer instanceof L.CircleMarker){let h="resizeableCircleMarker";this._layer instanceof L.Circle&&(h="resizeableCircle"),this.options.snappable&&!s&&!o?this._layer.pm.options[h]||this._initSnappableMarkersDrag():this._layer.pm.options[h]?this._layer.pm._disableSnapping():this._layer.pm._disableSnappingDrag()}this._safeToCacheDragState&&(this._originalMapDragState=this._layer._map.dragging._enabled,this._safeToCacheDragState=!1),this._tempDragCoord=i.latlng,L.DomEvent.on(this._map.getContainer(),"touchend mouseup",this._simulateMouseUpEvent,this),L.DomEvent.on(this._map.getContainer(),"touchmove mousemove",this._simulateMouseMoveEvent,this)},_dragMixinOnMouseMove(i){this._overwriteEventIfItComesFromMarker(i);let s=this._getDOMElem();this._syncLayers("_dragMixinOnMouseMove",i),this._dragging||(this._dragging=!0,L.DomUtil.addClass(s,"leaflet-pm-dragging"),this._layer instanceof L.Marker||this._layer.bringToFront(),this._originalMapDragState&&this._map.dragging.disable(),this._fireDragStart()),this._tempDragCoord||(this._tempDragCoord=i.latlng),this._onLayerDrag(i),this._layer instanceof L.CircleMarker&&this._layer.pm._updateHiddenPolyCircle()},_dragMixinOnMouseUp(i){let s=this._getDOMElem();return this._syncLayers("_dragMixinOnMouseUp",i),this._originalMapDragState&&this._map.dragging.enable(),this._safeToCacheDragState=!0,L.DomEvent.off(this._map.getContainer(),"touchmove mousemove",this._simulateMouseMoveEvent,this),L.DomEvent.off(this._map.getContainer(),"touchend mouseup",this._simulateMouseUpEvent,this),this._dragging?(this._layer instanceof L.CircleMarker&&this._layer.pm._updateHiddenPolyCircle(),this._layerDragged=!0,window.setTimeout(()=>{this._dragging=!1,s&&L.DomUtil.removeClass(s,"leaflet-pm-dragging"),this._fireDragEnd(),this._fireEdit(),this._layerEdited=!0},10),!0):!1},_onLayerDrag(i){let{latlng:s}=i,o={lat:s.lat-this._tempDragCoord.lat,lng:s.lng-this._tempDragCoord.lng},h=c=>c.map(m=>{if(Array.isArray(m))return h(m);let y={lat:m.lat+o.lat,lng:m.lng+o.lng};return(m.alt||m.alt===0)&&(y.alt=m.alt),y});if(this._layer instanceof L.Circle&&this._layer.options.resizeableCircle||this._layer instanceof L.CircleMarker&&this._layer.options.resizeableCircleMarker){let c=h([this._layer.getLatLng()]);this._layer.setLatLng(c[0]),this._fireChange(this._layer.getLatLng(),"Edit")}else if(this._layer instanceof L.CircleMarker||this._layer instanceof L.Marker){let c=this._layer.getLatLng();this._layer._snapped&&(c=this._layer._orgLatLng);let m=h([c]);this._layer.setLatLng(m[0]),this._fireChange(this._layer.getLatLng(),"Edit")}else if(this._layer instanceof L.ImageOverlay){let c=h([this._layer.getBounds().getNorthWest(),this._layer.getBounds().getSouthEast()]);this._layer.setBounds(c),this._fireChange(this._layer.getBounds(),"Edit")}else{let c=h(this._layer.getLatLngs());this._layer.setLatLngs(c),this._fireChange(this._layer.getLatLngs(),"Edit")}this._tempDragCoord=s,i.layer=this._layer,this._fireDrag(i)},addDraggingClass(){let i=this._getDOMElem();i&&L.DomUtil.addClass(i,"leaflet-pm-draggable")},removeDraggingClass(){let i=this._getDOMElem();i&&L.DomUtil.removeClass(i,"leaflet-pm-draggable")},_getDOMElem(){let i=null;return this._layer._path?i=this._layer._path:this._layer._renderer&&this._layer._renderer._container?i=this._layer._renderer._container:this._layer._image?i=this._layer._image:this._layer._icon&&(i=this._layer._icon),i},_overwriteEventIfItComesFromMarker(i){i.target.getLatLng&&(!i.target._radius||i.target._radius<=10)&&(i.containerPoint=this._map.mouseEventToContainerPoint(i.originalEvent),i.latlng=this._map.containerPointToLatLng(i.containerPoint))},_syncLayers(i,s){if(this.enabled())return!1;if(!s._fromLayerSync&&this._layer===s.target&&this.options.syncLayersOnDrag){s._fromLayerSync=!0;let o=[];if(L.Util.isArray(this.options.syncLayersOnDrag))o=this.options.syncLayersOnDrag,this.options.syncLayersOnDrag.forEach(h=>{h instanceof L.LayerGroup&&(o=o.concat(h.pm.getLayers(!0)))});else if(this.options.syncLayersOnDrag===!0&&this._parentLayerGroup)for(let h in this._parentLayerGroup){let c=this._parentLayerGroup[h];c.pm&&(o=c.pm.getLayers(!0))}return L.Util.isArray(o)&&o.length>0&&(o=o.filter(h=>!!h.pm).filter(h=>!!h.pm.options.draggable),o.forEach(h=>{h!==this._layer&&h.pm[i]&&(h._snapped=!1,h.pm[i](s))})),o.length>0}return!1},_stopDOMImageDrag(i){return i.preventDefault(),!1}},ep=tp,ip=M(pi());function np(i,s,o,h){return o.unproject(s.transform(o.project(i,h)),h)}function fl(i,s,o){let h=o.getMaxZoom();if(h===1/0&&(h=o.getZoom()),L.Util.isArray(i)){let c=[];return i.forEach(m=>{c.push(fl(m,s,o))}),c}return i instanceof L.LatLng?np(i,s,o,h):null}function rs(i,s){s instanceof L.Layer&&(s=s.getLatLng());let o=i.getMaxZoom();return o===1/0&&(o=i.getZoom()),i.project(s,o)}function br(i,s){let o=i.getMaxZoom();return o===1/0&&(o=i.getZoom()),i.unproject(s,o)}var sp={_onRotateStart(i){this._preventRenderingMarkers(!0),this._rotationOriginLatLng=this._getRotationCenter().clone(),this._rotationOriginPoint=rs(this._map,this._rotationOriginLatLng),this._rotationStartPoint=rs(this._map,i.target.getLatLng()),this._initialRotateLatLng=Ke(this._layer),this._startAngle=this.getAngle();let s=Ke(this._rotationLayer,this._rotationLayer.pm._rotateOrgLatLng);this._fireRotationStart(this._rotationLayer,s),this._fireRotationStart(this._map,s)},_onRotate(i){let s=rs(this._map,i.target.getLatLng()),o=this._rotationStartPoint,h=this._rotationOriginPoint,c=Math.atan2(s.y-h.y,s.x-h.x)-Math.atan2(o.y-h.y,o.x-h.x);this._layer.setLatLngs(this._rotateLayer(c,this._initialRotateLatLng,this._rotationOriginLatLng,L.PM.Matrix.init(),this._map));let m=this;function y(N,F=[],tt=-1){if(tt>-1&&F.push(tt),L.Util.isArray(N[0]))N.forEach((it,lt)=>y(it,F.slice(),lt));else{let it=F.length>0?(0,ip.default)(m._markers,F):m._markers[0];N.forEach((lt,ft)=>{it[ft].setLatLng(lt)})}}y(this._layer.getLatLngs());let A=Ke(this._rotationLayer);this._rotationLayer.setLatLngs(this._rotateLayer(c,this._rotationLayer.pm._rotateOrgLatLng,this._rotationOriginLatLng,L.PM.Matrix.init(),this._map));let b=c*180/Math.PI;b=b<0?b+360:b;let P=b+this._startAngle;this._setAngle(P),this._rotationLayer.pm._setAngle(P),this._fireRotation(this._rotationLayer,b,A),this._fireRotation(this._map,b,A),this._rotationLayer.pm._fireChange(this._rotationLayer.getLatLngs(),"Rotation")},_onRotateEnd(){let i=this._startAngle;delete this._rotationOriginLatLng,delete this._rotationOriginPoint,delete this._rotationStartPoint,delete this._initialRotateLatLng,delete this._startAngle;let s=Ke(this._rotationLayer,this._rotationLayer.pm._rotateOrgLatLng);this._rotationLayer.pm._rotateOrgLatLng=Ke(this._rotationLayer),this._fireRotationEnd(this._rotationLayer,i,s),this._fireRotationEnd(this._map,i,s),this._rotationLayer.pm._fireEdit(this._rotationLayer,"Rotation"),this._preventRenderingMarkers(!1),this._layerRotated=!0},_rotateLayer(i,s,o,h,c){let m=rs(c,o);return this._matrix=h.clone().rotate(i,m).flip(),fl(s,this._matrix,c)},_setAngle(i){i=i<0?i+360:i,this._angle=i%360},_getRotationCenter(){if(this._rotationCenter)return this._rotationCenter;let i=L.polygon(this._layer.getLatLngs(),{stroke:!1,fill:!1,pmIgnore:!0}).addTo(this._layer._map),s=i.getCenter();return i.removeFrom(this._layer._map),s},enableRotate(){if(!this.options.allowRotation){this.disableRotate();return}this.rotateEnabled()&&this.disableRotate(),this._layer instanceof L.Rectangle&&this._angle===void 0&&this.setInitAngle(Nn(this._layer._map,this._layer.getLatLngs()[0][0],this._layer.getLatLngs()[0][1])||0);let i={fill:!1,stroke:!1,pmIgnore:!1,snapIgnore:!0};this._rotatePoly=L.polygon(this._layer.getLatLngs(),i),this._rotatePoly._pmTempLayer=!0,this._rotatePoly.addTo(this._layer._map),this._rotatePoly.pm._setAngle(this.getAngle()),this._rotatePoly.pm.setRotationCenter(this.getRotationCenter()),this._rotatePoly.pm.setOptions(this._layer._map.pm.getGlobalOptions()),this._rotatePoly.pm.setOptions({rotate:!0,snappable:!1,hideMiddleMarkers:!0}),this._rotatePoly.pm._rotationLayer=this._layer,this._rotatePoly.pm.enable(),this._rotateOrgLatLng=Ke(this._layer),this._rotateEnabled=!0,this._layer.on("remove",this.disableRotate,this),this._fireRotationEnable(this._layer),this._fireRotationEnable(this._layer._map)},disableRotate(){this.rotateEnabled()&&(this._rotatePoly.pm._layerRotated&&this._fireUpdate(),this._rotatePoly.pm._layerRotated=!1,this._rotatePoly.pm.disable(),this._rotatePoly.remove(),this._rotatePoly.pm.setOptions({rotate:!1}),this._rotatePoly=void 0,this._rotateOrgLatLng=void 0,this._layer.off("remove",this.disableRotate,this),this._rotateEnabled=!1,this._fireRotationDisable(this._layer),this._fireRotationDisable(this._layer._map))},rotateEnabled(){return!!this._rotateEnabled},rotateLayer(i){let s=this.getAngle(),o=this._layer.getLatLngs(),h=i*(Math.PI/180);this._layer.setLatLngs(this._rotateLayer(h,this._layer.getLatLngs(),this._getRotationCenter(),L.PM.Matrix.init(),this._layer._map)),this._rotateOrgLatLng=L.polygon(this._layer.getLatLngs()).getLatLngs(),this._setAngle(this.getAngle()+i),this.rotateEnabled()&&this._rotatePoly&&this._rotatePoly.pm.enabled()&&(this._rotatePoly.setLatLngs(this._rotateLayer(h,this._rotatePoly.getLatLngs(),this._getRotationCenter(),L.PM.Matrix.init(),this._rotatePoly._map)),this._rotatePoly.pm._initMarkers());let c=this.getAngle()-s;c=c<0?c+360:c,this._startAngle=s,this._fireRotation(this._layer,c,o,this._layer),this._fireRotation(this._map||this._layer._map,c,o,this._layer),delete this._startAngle,this._fireChange(this._layer.getLatLngs(),"Rotation")},rotateLayerToAngle(i){let s=i-this.getAngle();this.rotateLayer(s)},getAngle(){return this._angle||0},setInitAngle(i){this._setAngle(i)},getRotationCenter(){return this._getRotationCenter()},setRotationCenter(i){this._rotationCenter=i,this._rotatePoly&&this._rotatePoly.pm.setRotationCenter(i)}},ap=sp,rp=L.Class.extend({includes:[ep,Js,ap,Gn],options:{snappable:!0,snapDistance:20,allowSelfIntersection:!0,allowSelfIntersectionEdit:!1,preventMarkerRemoval:!1,removeLayerBelowMinVertexCount:!0,limitMarkersToCount:-1,hideMiddleMarkers:!1,snapSegment:!0,syncLayersOnDrag:!1,draggable:!0,allowEditing:!0,allowRemoval:!0,allowCutting:!0,allowRotation:!0,addVertexOn:"click",removeVertexOn:"contextmenu",removeVertexValidation:void 0,addVertexValidation:void 0,moveVertexValidation:void 0,resizeableCircleMarker:!1,resizeableCircle:!0,snapMiddle:!1,snapVertex:!0},setOptions(i){L.Util.setOptions(this,i)},getOptions(){return this.options},applyOptions(){},isPolygon(){return this._layer instanceof L.Polygon},getShape(){return this._shape},_setPane(i,s){s==="layerPane"?i.options.pane=this._map.pm.globalOptions.panes&&this._map.pm.globalOptions.panes.layerPane||"overlayPane":s==="vertexPane"?i.options.pane=this._map.pm.globalOptions.panes&&this._map.pm.globalOptions.panes.vertexPane||"markerPane":s==="markerPane"&&(i.options.pane=this._map.pm.globalOptions.panes&&this._map.pm.globalOptions.panes.markerPane||"markerPane")},remove(){(this._map||this._layer._map).pm.removeLayer({target:this._layer})},_vertexValidation(i,s){let o=s.target,h={layer:this._layer,marker:o,event:s},c="";return i==="move"?c="moveVertexValidation":i==="add"?c="addVertexValidation":i==="remove"&&(c="removeVertexValidation"),this.options[c]&&typeof this.options[c]=="function"&&!this.options[c](h)?(i==="move"&&(o._cancelDragEventChain=o.getLatLng()),!1):(o._cancelDragEventChain=null,!0)},_vertexValidationDrag(i){return i._cancelDragEventChain?(i._latlng=i._cancelDragEventChain,i.update(),!1):!0},_vertexValidationDragEnd(i){return i._cancelDragEventChain?(i._cancelDragEventChain=null,!1):!0}}),ge=rp;ge.LayerGroup=L.Class.extend({initialize(i){this._layerGroup=i,this._layers=this.getLayers(),this._getMap(),this._layers.forEach(h=>this._initLayer(h));let s=h=>{if(h.layer._pmTempLayer)return;this._layers=this.getLayers();let c=this._layers.filter(m=>!m.pm._parentLayerGroup||!(this._layerGroup._leaflet_id in m.pm._parentLayerGroup));c.forEach(m=>{this._initLayer(m)}),c.length>0&&this._getMap()&&this._getMap().pm.globalEditModeEnabled()&&this.enabled()&&this.enable(this.getOptions())};this._layerGroup.on("layeradd",L.Util.throttle(s,100,this),this),this._layerGroup.on("layerremove",h=>{this._removeLayerFromGroup(h.target)},this);let o=h=>{h.target._pmTempLayer||(this._layers=this.getLayers())};this._layerGroup.on("layerremove",L.Util.throttle(o,100,this),this)},enable(i,s=[]){s.length===0&&(this._layers=this.getLayers()),this._options=i,this._layers.forEach(o=>{o instanceof L.LayerGroup?s.indexOf(o._leaflet_id)===-1&&(s.push(o._leaflet_id),o.pm.enable(i,s)):o.pm.enable(i)})},disable(i=[]){i.length===0&&(this._layers=this.getLayers()),this._layers.forEach(s=>{s instanceof L.LayerGroup?i.indexOf(s._leaflet_id)===-1&&(i.push(s._leaflet_id),s.pm.disable(i)):s.pm.disable()})},enabled(i=[]){return i.length===0&&(this._layers=this.getLayers()),!!this._layers.find(s=>s instanceof L.LayerGroup?i.indexOf(s._leaflet_id)===-1?(i.push(s._leaflet_id),s.pm.enabled(i)):!1:s.pm.enabled())},toggleEdit(i,s=[]){s.length===0&&(this._layers=this.getLayers()),this._options=i,this._layers.forEach(o=>{o instanceof L.LayerGroup?s.indexOf(o._leaflet_id)===-1&&(s.push(o._leaflet_id),o.pm.toggleEdit(i,s)):o.pm.toggleEdit(i)})},_initLayer(i){let s=L.Util.stamp(this._layerGroup);i.pm._parentLayerGroup||(i.pm._parentLayerGroup={}),i.pm._parentLayerGroup[s]=this._layerGroup},_removeLayerFromGroup(i){if(i.pm&&i.pm._layerGroup){let s=L.Util.stamp(this._layerGroup);delete i.pm._layerGroup[s]}},dragging(){return this._layers=this.getLayers(),this._layers?!!this._layers.find(i=>i.pm.dragging()):!1},getOptions(){return this.options},_getMap(){var i;return this._map||((i=this._layers.find(s=>!!s._map))==null?void 0:i._map)||null},getLayers(i=!1,s=!0,o=!0,h=[]){let c=[];return i?this._layerGroup.getLayers().forEach(m=>{c.push(m),m instanceof L.LayerGroup&&h.indexOf(m._leaflet_id)===-1&&(h.push(m._leaflet_id),c=c.concat(m.pm.getLayers(!0,!0,!0,h)))}):c=this._layerGroup.getLayers(),o&&(c=c.filter(m=>!(m instanceof L.LayerGroup))),s&&(c=c.filter(m=>!!m.pm),c=c.filter(m=>!m._pmTempLayer),c=c.filter(m=>!L.PM.optIn&&!m.options.pmIgnore||L.PM.optIn&&m.options.pmIgnore===!1)),c},setOptions(i,s=[]){s.length===0&&(this._layers=this.getLayers()),this.options=i,this._layers.forEach(o=>{o.pm&&(o instanceof L.LayerGroup?s.indexOf(o._leaflet_id)===-1&&(s.push(o._leaflet_id),o.pm.setOptions(i,s)):o.pm.setOptions(i))})}}),ge.Marker=ge.extend({_shape:"Marker",initialize(i){this._layer=i,this._enabled=!1,this._layer.on("dragend",this._onDragEnd,this)},enable(i={draggable:!0}){if(L.Util.setOptions(this,i),!this.options.allowEditing||!this._layer._map){this.disable();return}this._map=this._layer._map,this.enabled()&&this.disable(),this.applyOptions(),this._layer.on("remove",this.disable,this),this._enabled=!0,this._fireEnable()},disable(){this.enabled()&&(this.disableLayerDrag(),this._layer.off("remove",this.disable,this),this._layer.off("contextmenu",this._removeMarker,this),this._layerEdited&&this._fireUpdate(),this._layerEdited=!1,this._fireDisable(),this._enabled=!1)},enabled(){return this._enabled},toggleEdit(i){this.enabled()?this.disable():this.enable(i)},applyOptions(){this.options.snappable?this._initSnappableMarkers():this._disableSnapping(),this.options.draggable?this.enableLayerDrag():this.disableLayerDrag(),this.options.preventMarkerRemoval||this._layer.on("contextmenu",this._removeMarker,this)},_removeMarker(i){let s=i.target;s.remove(),this._fireRemove(s),this._fireRemove(this._map,s)},_onDragEnd(){this._fireEdit(),this._layerEdited=!0},_initSnappableMarkers(){let i=this._layer;this.options.snapDistance=this.options.snapDistance||30,this.options.snapSegment=this.options.snapSegment===void 0?!0:this.options.snapSegment,i.off("pm:drag",this._handleSnapping,this),i.on("pm:drag",this._handleSnapping,this),i.off("pm:dragend",this._cleanupSnapping,this),i.on("pm:dragend",this._cleanupSnapping,this),i.off("pm:dragstart",this._unsnap,this),i.on("pm:dragstart",this._unsnap,this)},_disableSnapping(){let i=this._layer;i.off("pm:drag",this._handleSnapping,this),i.off("pm:dragend",this._cleanupSnapping,this),i.off("pm:dragstart",this._unsnap,this)}});var Yi=M(pi()),op={filterMarkerGroup(){this.markerCache=[],this.createCache(),this._layer.on("pm:edit",this.createCache,this),this.applyLimitFilters({}),this.throttledApplyLimitFilters||(this.throttledApplyLimitFilters=L.Util.throttle(this.applyLimitFilters,100,this)),this._layer.on("pm:disable",this._removeMarkerLimitEvents,this),this._layer.on("remove",this._removeMarkerLimitEvents,this),this.options.limitMarkersToCount>-1&&(this._layer.on("pm:vertexremoved",this._initMarkers,this),this._map.on("mousemove",this.throttledApplyLimitFilters,this))},_removeMarkerLimitEvents(){this._map.off("mousemove",this.throttledApplyLimitFilters,this),this._layer.off("pm:edit",this.createCache,this),this._layer.off("pm:disable",this._removeMarkerLimitEvents,this),this._layer.off("pm:vertexremoved",this._initMarkers,this)},createCache(){let i=[...this._markerGroup.getLayers(),...this.markerCache];this.markerCache=i.filter((s,o,h)=>h.indexOf(s)===o)},_removeFromCache(i){let s=this.markerCache.indexOf(i);s>-1&&this.markerCache.splice(s,1)},renderLimits(i){this.markerCache.forEach(s=>{i.includes(s)?this._markerGroup.addLayer(s):this._markerGroup.removeLayer(s)})},applyLimitFilters({latlng:i={lat:0,lng:0}}){if(this._preventRenderMarkers)return;let s=[...this._filterClosestMarkers(i)];this.renderLimits(s)},_filterClosestMarkers(i){let s=[...this.markerCache],o=this.options.limitMarkersToCount;return o===-1?s:(s.sort((h,c)=>{let m=h._latlng.distanceTo(i),y=c._latlng.distanceTo(i);return m-y}),s.filter((h,c)=>o>-1?c<o:!0))},_preventRenderMarkers:!1,_preventRenderingMarkers(i){this._preventRenderMarkers=!!i}},hp=op;ge.Line=ge.extend({includes:[hp],_shape:"Line",initialize(i){this._layer=i,this._enabled=!1},enable(i){if(L.Util.setOptions(this,i),this._map=this._layer._map,!!this._map){if(!this.options.allowEditing){this.disable();return}this.enabled()&&this.disable(),this._enabled=!0,this._initMarkers(),this.applyOptions(),this._layer.on("remove",this.disable,this),this.options.allowSelfIntersection||this._layer.on("pm:vertexremoved",this._handleSelfIntersectionOnVertexRemoval,this),this.options.allowSelfIntersection?this.cachedColor=void 0:(this._layer.options.color!=="#f00000ff"?(this.cachedColor=this._layer.options.color,this.isRed=!1):this.isRed=!0,this._handleLayerStyle()),this._fireEnable()}},disable(){if(!this.enabled()||this._dragging)return;this._enabled=!1,this._markerGroup.clearLayers(),this._markerGroup.removeFrom(this._map),this._layer.off("remove",this.disable,this),this.options.allowSelfIntersection||this._layer.off("pm:vertexremoved",this._handleSelfIntersectionOnVertexRemoval,this);let i=this._layer._path?this._layer._path:this._layer._renderer._container;L.DomUtil.removeClass(i,"leaflet-pm-draggable"),this._layerEdited&&this._fireUpdate(),this._layerEdited=!1,this._fireDisable()},enabled(){return this._enabled},toggleEdit(i){return this.enabled()?this.disable():this.enable(i),this.enabled()},applyOptions(){this.options.snappable?this._initSnappableMarkers():this._disableSnapping()},_initMarkers(){let i=this._map,s=this._layer.getLatLngs();this._markerGroup&&(this._markerGroup.removeFrom(i),this._markerGroup.clearLayers()),this._markerGroup=new L.FeatureGroup,this._markerGroup._pmTempLayer=!0;let o=h=>{if(Array.isArray(h[0]))return h.map(o,this);let c=h.map(this._createMarker,this);return this.options.hideMiddleMarkers!==!0&&h.map((m,y)=>{let A=this.isPolygon()?(y+1)%h.length:y+1;return this._createMiddleMarker(c[y],c[A])}),c};this._markers=o(s),this.filterMarkerGroup(),i.addLayer(this._markerGroup)},_createMarker(i){let s=new L.Marker(i,{draggable:!0,icon:L.divIcon({className:"marker-icon"})});return this._setPane(s,"vertexPane"),s._pmTempLayer=!0,this.options.rotate?(s.on("dragstart",this._onRotateStart,this),s.on("drag",this._onRotate,this),s.on("dragend",this._onRotateEnd,this)):(s.on("click",this._onVertexClick,this),s.on("dragstart",this._onMarkerDragStart,this),s.on("move",this._onMarkerDrag,this),s.on("dragend",this._onMarkerDragEnd,this),this.options.preventMarkerRemoval||s.on(this.options.removeVertexOn,this._removeMarker,this)),this._markerGroup.addLayer(s),s},_createMiddleMarker(i,s){if(!i||!s)return!1;let o=L.PM.Utils.calcMiddleLatLng(this._map,i.getLatLng(),s.getLatLng()),h=this._createMarker(o),c=L.divIcon({className:"marker-icon marker-icon-middle"});return h.setIcon(c),h.leftM=i,h.rightM=s,i._middleMarkerNext=h,s._middleMarkerPrev=h,h.on(this.options.addVertexOn,this._onMiddleMarkerClick,this),h.on("movestart",this._onMiddleMarkerMoveStart,this),h},_onMiddleMarkerClick(i){let s=i.target;if(!this._vertexValidation("add",i))return;let o=L.divIcon({className:"marker-icon"});s.setIcon(o),this._addMarker(s,s.leftM,s.rightM)},_onMiddleMarkerMoveStart(i){let s=i.target;if(s.on("moveend",this._onMiddleMarkerMoveEnd,this),!this._vertexValidation("add",i)){s.on("move",this._onMiddleMarkerMovePrevent,this);return}s._dragging=!0,this._addMarker(s,s.leftM,s.rightM)},_onMiddleMarkerMovePrevent(i){let s=i.target;this._vertexValidationDrag(s)},_onMiddleMarkerMoveEnd(i){let s=i.target;if(s.off("move",this._onMiddleMarkerMovePrevent,this),s.off("moveend",this._onMiddleMarkerMoveEnd,this),!this._vertexValidationDragEnd(s))return;let o=L.divIcon({className:"marker-icon"});s.setIcon(o),setTimeout(()=>{delete s._dragging},100)},_addMarker(i,s,o){i.off("movestart",this._onMiddleMarkerMoveStart,this),i.off(this.options.addVertexOn,this._onMiddleMarkerClick,this);let h=i.getLatLng(),c=this._layer._latlngs;delete i.leftM,delete i.rightM;let{indexPath:m,index:y,parentPath:A}=L.PM.Utils.findDeepMarkerIndex(this._markers,s),b=m.length>1?(0,Yi.default)(c,A):c,P=m.length>1?(0,Yi.default)(this._markers,A):this._markers;b.splice(y+1,0,h),P.splice(y+1,0,i),this._layer.setLatLngs(c),this.options.hideMiddleMarkers!==!0&&(this._createMiddleMarker(s,i),this._createMiddleMarker(i,o)),this._fireEdit(),this._layerEdited=!0,this._fireChange(this._layer.getLatLngs(),"Edit"),this._fireVertexAdded(i,L.PM.Utils.findDeepMarkerIndex(this._markers,i).indexPath,h),this.options.snappable&&this._initSnappableMarkers()},hasSelfIntersection(){return jn(this._layer.toGeoJSON(15)).features.length>0},_handleSelfIntersectionOnVertexRemoval(){this._handleLayerStyle(!0)&&(this._layer.setLatLngs(this._coordsBeforeEdit),this._coordsBeforeEdit=null,this._initMarkers())},_handleLayerStyle(i){let s=this._layer,o,h;if(this.options.allowSelfIntersection?o=!1:(h=jn(this._layer.toGeoJSON(15)),o=h.features.length>0),o){if(!this.options.allowSelfIntersection&&this.options.allowSelfIntersectionEdit&&this._updateDisabledMarkerStyle(this._markers,!0),this.isRed)return o;i?this._flashLayer():(s.setStyle({color:"#f00000ff"}),this.isRed=!0),this._fireIntersect(h)}else s.setStyle({color:this.cachedColor}),this.isRed=!1,!this.options.allowSelfIntersection&&this.options.allowSelfIntersectionEdit&&this._updateDisabledMarkerStyle(this._markers,!1);return o},_flashLayer(){this.cachedColor||(this.cachedColor=this._layer.options.color),this._layer.setStyle({color:"#f00000ff"}),this.isRed=!0,window.setTimeout(()=>{this._layer.setStyle({color:this.cachedColor}),this.isRed=!1},200)},_updateDisabledMarkerStyle(i,s){i.forEach(o=>{Array.isArray(o)?this._updateDisabledMarkerStyle(o,s):o._icon&&(s&&!this._checkMarkerAllowedToDrag(o)?L.DomUtil.addClass(o._icon,"vertexmarker-disabled"):L.DomUtil.removeClass(o._icon,"vertexmarker-disabled"))})},_removeMarker(i){let s=i.target;if(!this._vertexValidation("remove",i))return;this.options.allowSelfIntersection||(this._coordsBeforeEdit=Ke(this._layer,this._layer.getLatLngs()));let o=this._layer.getLatLngs(),{indexPath:h,index:c,parentPath:m}=L.PM.Utils.findDeepMarkerIndex(this._markers,s);if(!h)return;let y=h.length>1?(0,Yi.default)(o,m):o,A=h.length>1?(0,Yi.default)(this._markers,m):this._markers,b=m[m.length-1]>0&&this._layer instanceof L.Polygon;if(!this.options.removeLayerBelowMinVertexCount&&!b&&(y.length<=2||this.isPolygon()&&y.length<=3)){this._flashLayer();return}y.splice(c,1),this._layer.setLatLngs(o),this.isPolygon()&&y.length<=2&&y.splice(0,y.length);let P=!1;if(y.length<=1&&(y.splice(0,y.length),m.length>1&&h.length>1&&(o=un(o)),this._layer.setLatLngs(o),this._initMarkers(),P=!0),Pi(o)||this._layer.remove(),o=un(o),this._layer.setLatLngs(o),this._markers=un(this._markers),!P&&(A=h.length>1?(0,Yi.default)(this._markers,m):this._markers,s._middleMarkerPrev&&(this._markerGroup.removeLayer(s._middleMarkerPrev),this._removeFromCache(s._middleMarkerPrev)),s._middleMarkerNext&&(this._markerGroup.removeLayer(s._middleMarkerNext),this._removeFromCache(s._middleMarkerNext)),this._markerGroup.removeLayer(s),this._removeFromCache(s),A)){let N,F;if(this.isPolygon()?(N=(c+1)%A.length,F=(c+(A.length-1))%A.length):(F=c-1<0?void 0:c-1,N=c+1>=A.length?void 0:c+1),N!==F){let tt=A[F],it=A[N];this.options.hideMiddleMarkers!==!0&&this._createMiddleMarker(tt,it)}A.splice(c,1)}this._fireEdit(),this._layerEdited=!0,this._fireVertexRemoved(s,h),this._fireChange(this._layer.getLatLngs(),"Edit")},updatePolygonCoordsFromMarkerDrag(i){let s=this._layer.getLatLngs(),o=i.getLatLng(),{indexPath:h,index:c,parentPath:m}=L.PM.Utils.findDeepMarkerIndex(this._markers,i);(h.length>1?(0,Yi.default)(s,m):s).splice(c,1,o),this._layer.setLatLngs(s)},_getNeighborMarkers(i){let{indexPath:s,index:o,parentPath:h}=L.PM.Utils.findDeepMarkerIndex(this._markers,i),c=s.length>1?(0,Yi.default)(this._markers,h):this._markers,m=(o+1)%c.length,y=(o+(c.length-1))%c.length,A=c[y],b=c[m];return{prevMarker:A,nextMarker:b}},_checkMarkerAllowedToDrag(i){let{prevMarker:s,nextMarker:o}=this._getNeighborMarkers(i),h=L.polyline([s.getLatLng(),i.getLatLng()]),c=L.polyline([i.getLatLng(),o.getLatLng()]),m=Xe(this._layer.toGeoJSON(15),h.toGeoJSON(15)).features.length,y=Xe(this._layer.toGeoJSON(15),c.toGeoJSON(15)).features.length;return i.getLatLng()===this._markers[0][0].getLatLng()?y+=1:i.getLatLng()===this._markers[0][this._markers[0].length-1].getLatLng()&&(m+=1),!(m<=2&&y<=2)},_onMarkerDragStart(i){let s=i.target;if(this.cachedColor||(this.cachedColor=this._layer.options.color),!this._vertexValidation("move",i))return;let{indexPath:o}=L.PM.Utils.findDeepMarkerIndex(this._markers,s);this._fireMarkerDragStart(i,o),this.options.allowSelfIntersection||(this._coordsBeforeEdit=Ke(this._layer,this._layer.getLatLngs())),!this.options.allowSelfIntersection&&this.options.allowSelfIntersectionEdit&&this.hasSelfIntersection()?this._markerAllowedToDrag=this._checkMarkerAllowedToDrag(s):this._markerAllowedToDrag=null},_onMarkerDrag(i){let s=i.target;if(!this._vertexValidationDrag(s))return;let{indexPath:o,index:h,parentPath:c}=L.PM.Utils.findDeepMarkerIndex(this._markers,s);if(!o)return;if(!this.options.allowSelfIntersection&&this.options.allowSelfIntersectionEdit&&this.hasSelfIntersection()&&this._markerAllowedToDrag===!1){this._layer.setLatLngs(this._coordsBeforeEdit),this._initMarkers(),this._handleLayerStyle();return}this.updatePolygonCoordsFromMarkerDrag(s);let m=o.length>1?(0,Yi.default)(this._markers,c):this._markers,y=(h+1)%m.length,A=(h+(m.length-1))%m.length,b=s.getLatLng(),P=m[A].getLatLng(),N=m[y].getLatLng();if(s._middleMarkerNext){let F=L.PM.Utils.calcMiddleLatLng(this._map,b,N);s._middleMarkerNext.setLatLng(F)}if(s._middleMarkerPrev){let F=L.PM.Utils.calcMiddleLatLng(this._map,b,P);s._middleMarkerPrev.setLatLng(F)}this.options.allowSelfIntersection||this._handleLayerStyle(),this._fireMarkerDrag(i,o),this._fireChange(this._layer.getLatLngs(),"Edit")},_onMarkerDragEnd(i){let s=i.target;if(!this._vertexValidationDragEnd(s))return;let{indexPath:o}=L.PM.Utils.findDeepMarkerIndex(this._markers,s),h=!this.options.allowSelfIntersection&&this.hasSelfIntersection();h&&this.options.allowSelfIntersectionEdit&&this._markerAllowedToDrag&&(h=!1);let c=!this.options.allowSelfIntersection&&h;if(this._fireMarkerDragEnd(i,o,c),c){this._layer.setLatLngs(this._coordsBeforeEdit),this._coordsBeforeEdit=null,this._initMarkers(),this.options.snappable&&this._initSnappableMarkers(),this._handleLayerStyle(),this._fireLayerReset(i,o);return}!this.options.allowSelfIntersection&&this.options.allowSelfIntersectionEdit&&this._handleLayerStyle(),this._fireEdit(),this._layerEdited=!0,this._fireChange(this._layer.getLatLngs(),"Edit")},_onVertexClick(i){let s=i.target;if(s._dragging)return;let{indexPath:o}=L.PM.Utils.findDeepMarkerIndex(this._markers,s);this._fireVertexClick(i,o)}}),ge.Polygon=ge.Line.extend({_shape:"Polygon",_checkMarkerAllowedToDrag(i){let{prevMarker:s,nextMarker:o}=this._getNeighborMarkers(i),h=L.polyline([s.getLatLng(),i.getLatLng()]),c=L.polyline([i.getLatLng(),o.getLatLng()]),m=Xe(this._layer.toGeoJSON(15),h.toGeoJSON(15)).features.length,y=Xe(this._layer.toGeoJSON(15),c.toGeoJSON(15)).features.length;return!(m<=2&&y<=2)}}),ge.Rectangle=ge.Polygon.extend({_shape:"Rectangle",_initMarkers(){let i=this._map,s=this._findCorners();this._markerGroup&&this._markerGroup.clearLayers(),this._markerGroup=new L.FeatureGroup,this._markerGroup._pmTempLayer=!0,i.addLayer(this._markerGroup),this._markers=[],this._markers[0]=s.map(this._createMarker,this),[this._cornerMarkers]=this._markers,this._layer.getLatLngs()[0].forEach((o,h)=>{let c=this._cornerMarkers.find(m=>m._index===h);c&&c.setLatLng(o)})},applyOptions(){this.options.snappable?this._initSnappableMarkers():this._disableSnapping(),this._addMarkerEvents()},_createMarker(i,s){let o=new L.Marker(i,{draggable:!0,icon:L.divIcon({className:"marker-icon"})});return this._setPane(o,"vertexPane"),o._origLatLng=i,o._index=s,o._pmTempLayer=!0,o.on("click",this._onVertexClick,this),this._markerGroup.addLayer(o),o},_addMarkerEvents(){this._markers[0].forEach(i=>{i.on("dragstart",this._onMarkerDragStart,this),i.on("drag",this._onMarkerDrag,this),i.on("dragend",this._onMarkerDragEnd,this),this.options.preventMarkerRemoval||i.on("contextmenu",this._removeMarker,this)})},_removeMarker(){return null},_onMarkerDragStart(i){if(!this._vertexValidation("move",i))return;let s=i.target,o=this._cornerMarkers;s._oppositeCornerLatLng=o.find(c=>c._index===(s._index+2)%4).getLatLng(),s._snapped=!1;let{indexPath:h}=L.PM.Utils.findDeepMarkerIndex(this._markers,s);this._fireMarkerDragStart(i,h)},_onMarkerDrag(i){let s=i.target;if(!this._vertexValidationDrag(s)||s._index===void 0)return;this._adjustRectangleForMarkerMove(s);let{indexPath:o}=L.PM.Utils.findDeepMarkerIndex(this._markers,s);this._fireMarkerDrag(i,o),this._fireChange(this._layer.getLatLngs(),"Edit")},_onMarkerDragEnd(i){let s=i.target;if(!this._vertexValidationDragEnd(s))return;this._cornerMarkers.forEach(h=>{delete h._oppositeCornerLatLng});let{indexPath:o}=L.PM.Utils.findDeepMarkerIndex(this._markers,s);this._fireMarkerDragEnd(i,o),this._fireEdit(),this._layerEdited=!0,this._fireChange(this._layer.getLatLngs(),"Edit")},_adjustRectangleForMarkerMove(i){L.extend(i._origLatLng,i._latlng);let s=L.PM.Utils._getRotatedRectangle(i.getLatLng(),i._oppositeCornerLatLng,this.getAngle(),this._map);this._layer.setLatLngs(s),this._adjustAllMarkers(i),this._layer.redraw()},_adjustAllMarkers(i){let s=this._layer.getLatLngs()[0];if(s&&s.length!==4&&s.length>0)s.forEach((o,h)=>{this._cornerMarkers[h].setLatLng(o)}),this._cornerMarkers.slice(s.length).forEach(o=>{o.setLatLng(s[0])});else if(!s||!s.length)console.error("The layer has no LatLngs");else{let o=s.findIndex(h=>i.getLatLng().equals(h));o>-1?(this._cornerMarkers[(i._index+1)%4].setLatLng(s[(o+1)%4]),this._cornerMarkers[(i._index+2)%4].setLatLng(s[(o+2)%4]),this._cornerMarkers[(i._index+3)%4].setLatLng(s[(o+3)%4])):this._cornerMarkers.forEach(h=>{h.setLatLng(s[h._index])})}},_findCorners(){this._angle===void 0&&this.setInitAngle(Nn(this._map,this._layer.getLatLngs()[0][0],this._layer.getLatLngs()[0][1])||0);let i=this._layer.getLatLngs()[0];return L.PM.Utils._getRotatedRectangle(i[0],i[2],this.getAngle(),this._map||this)}}),ge.CircleMarker=ge.extend({_shape:"CircleMarker",initialize(i){this._layer=i,this._enabled=!1,this._minRadiusOption="minRadiusCircleMarker",this._maxRadiusOption="maxRadiusCircleMarker",this._editableOption="resizeableCircleMarker",this._updateHiddenPolyCircle()},enable(i={draggable:!0,snappable:!0}){if(L.Util.setOptions(this,i),this.options.editable&&(this.options.resizeableCircleMarker=this.options.editable,delete this.options.editable),!this.options.allowEditing||!this._layer._map){this.disable();return}this._map=this._layer._map,this.enabled()&&this.disable(),this.applyOptions(),this._layer.on("remove",this.disable,this),this._enabled=!0,this._extendingEnable(),this._updateHiddenPolyCircle(),this._fireEnable()},_extendingEnable(){this._layer.on("pm:dragstart",this._onDragStart,this),this._layer.on("pm:drag",this._onMarkerDrag,this),this._layer.on("pm:dragend",this._onMarkerDragEnd,this)},disable(){this.dragging()||(this._map||(this._map=this._layer._map),this._map&&this.enabled()&&(this.layerDragEnabled()&&this.disableLayerDrag(),this._helperLayers&&(this._helperLayers.clearLayers(),this._helperLayers.removeFrom(this._map)),this.options[this._editableOption]?(this._map.off("move",this._syncMarkers,this),this._outerMarker.off("drag",this._handleOuterMarkerSnapping,this)):this._map.off("move",this._updateHiddenPolyCircle,this),this._extendingDisable(),this._layer.off("remove",this.disable,this),this._layerEdited&&this._fireUpdate(),this._layerEdited=!1,this._fireDisable(),this._enabled=!1))},_extendingDisable(){this._layer.off("contextmenu",this._removeMarker,this)},enabled(){return this._enabled},toggleEdit(i){this.enabled()?this.disable():this.enable(i)},applyOptions(){this.options[this._editableOption]?(this._initMarkers(),this._map.on("move",this._syncMarkers,this),this.options.snappable?(this._initSnappableMarkers(),this._outerMarker.on("drag",this._handleOuterMarkerSnapping,this),this._outerMarker.on("move",this._syncHintLine,this),this._outerMarker.on("move",this._syncCircleRadius,this)):this._disableSnapping()):(this.options.draggable&&this.enableLayerDrag(),this._map.on("move",this._updateHiddenPolyCircle,this),this.options.snappable?this._initSnappableMarkersDrag():this._disableSnappingDrag()),this._extendingApplyOptions()},_extendingApplyOptions(){this.options.preventMarkerRemoval||this._layer.on("contextmenu",this._removeMarker,this)},_initMarkers(){let i=this._map;this._helperLayers&&(this._helperLayers.removeFrom(i),this._helperLayers.clearLayers()),this._helperLayers=new L.FeatureGroup,this._helperLayers._pmTempLayer=!0,this._helperLayers.addTo(i);let s=this._layer.getLatLng(),o=this._layer._radius,h=this._getLatLngOnCircle(s,o);this._centerMarker=this._createCenterMarker(s),this._outerMarker=this._createOuterMarker(h),this._markers=[this._centerMarker,this._outerMarker],this._createHintLine(this._centerMarker,this._outerMarker)},_getLatLngOnCircle(i,s){let o=this._map.project(i),h=L.point(o.x+s,o.y);return this._map.unproject(h)},_createHintLine(i,s){let o=i.getLatLng(),h=s.getLatLng();this._hintline=L.polyline([o,h],this.options.hintlineStyle),this._setPane(this._hintline,"layerPane"),this._hintline._pmTempLayer=!0,this._helperLayers.addLayer(this._hintline)},_createCenterMarker(i){let s=this._createMarker(i);return this.options.draggable?(L.DomUtil.addClass(s._icon,"leaflet-pm-draggable"),s.on("move",this._moveCircle,this)):s.dragging.disable(),s},_createOuterMarker(i){let s=this._createMarker(i);return s.on("drag",this._resizeCircle,this),s},_createMarker(i){let s=new L.Marker(i,{draggable:!0,icon:L.divIcon({className:"marker-icon"})});return this._setPane(s,"vertexPane"),s._origLatLng=i,s._pmTempLayer=!0,s.on("dragstart",this._onMarkerDragStart,this),s.on("drag",this._onMarkerDrag,this),s.on("dragend",this._onMarkerDragEnd,this),s.on("click",this._onVertexClick,this),this._helperLayers.addLayer(s),s},_moveCircle(i){if(i.target._cancelDragEventChain)return;let s=this._centerMarker.getLatLng();this._layer.setLatLng(s);let o=this._layer._radius,h=this._getLatLngOnCircle(s,o);this._outerMarker._latlng=h,this._outerMarker.update(),this._syncHintLine(),this._updateHiddenPolyCircle(),this._fireCenterPlaced("Edit"),this._fireChange(this._layer.getLatLng(),"Edit")},_syncMarkers(){let i=this._layer.getLatLng(),s=this._layer._radius,o=this._getLatLngOnCircle(i,s);this._outerMarker.setLatLng(o),this._centerMarker.setLatLng(i),this._syncHintLine(),this._updateHiddenPolyCircle()},_resizeCircle(){this._outerMarker.setLatLng(this._getNewDestinationOfOuterMarker()),this._syncHintLine(),this._syncCircleRadius()},_syncCircleRadius(){let i=this._centerMarker.getLatLng(),s=this._outerMarker.getLatLng(),o=this._distanceCalculation(i,s);this.options[this._minRadiusOption]&&o<this.options[this._minRadiusOption]?this._layer.setRadius(this.options[this._minRadiusOption]):this.options[this._maxRadiusOption]&&o>this.options[this._maxRadiusOption]?this._layer.setRadius(this.options[this._maxRadiusOption]):this._layer.setRadius(o),this._updateHiddenPolyCircle(),this._fireChange(this._layer.getLatLng(),"Edit")},_syncHintLine(){let i=this._centerMarker.getLatLng(),s=this._outerMarker.getLatLng();this._hintline.setLatLngs([i,s])},_removeMarker(){this.options[this._editableOption]&&this.disable(),this._layer.remove(),this._fireRemove(this._layer),this._fireRemove(this._map,this._layer)},_onDragStart(){this._map.pm.Draw.CircleMarker._layerIsDragging=!0},_onMarkerDragStart(i){this._vertexValidation("move",i)&&this._fireMarkerDragStart(i)},_onMarkerDrag(i){let s=i.target;s instanceof L.Marker&&!this._vertexValidationDrag(s)||this._fireMarkerDrag(i)},_onMarkerDragEnd(i){this._extedingMarkerDragEnd();let s=i.target;this._vertexValidationDragEnd(s)&&(this.options[this._editableOption]&&(this._fireEdit(),this._layerEdited=!0),this._fireMarkerDragEnd(i))},_extedingMarkerDragEnd(){this._map.pm.Draw.CircleMarker._layerIsDragging=!1},_initSnappableMarkersDrag(){let i=this._layer;this.options.snapDistance=this.options.snapDistance||30,this.options.snapSegment=this.options.snapSegment===void 0?!0:this.options.snapSegment,i.off("pm:drag",this._handleSnapping,this),i.on("pm:drag",this._handleSnapping,this),i.off("pm:dragend",this._cleanupSnapping,this),i.on("pm:dragend",this._cleanupSnapping,this),i.off("pm:dragstart",this._unsnap,this),i.on("pm:dragstart",this._unsnap,this)},_disableSnappingDrag(){let i=this._layer;i.off("pm:drag",this._handleSnapping,this),i.off("pm:dragend",this._cleanupSnapping,this),i.off("pm:dragstart",this._unsnap,this)},_updateHiddenPolyCircle(){let i=this._layer._map||this._map;if(i){let s=L.PM.Utils.pxRadiusToMeterRadius(this._layer.getRadius(),i,this._layer.getLatLng()),o=L.circle(this._layer.getLatLng(),this._layer.options);o.setRadius(s);let h=i&&i.pm._isCRSSimple();this._hiddenPolyCircle?this._hiddenPolyCircle.setLatLngs(L.PM.Utils.circleToPolygon(o,200,!h).getLatLngs()):this._hiddenPolyCircle=L.PM.Utils.circleToPolygon(o,200,!h),this._hiddenPolyCircle._parentCopy||(this._hiddenPolyCircle._parentCopy=this._layer)}},_getNewDestinationOfOuterMarker(){let i=this._centerMarker.getLatLng(),s=this._outerMarker.getLatLng(),o=this._distanceCalculation(i,s);return this.options[this._minRadiusOption]&&o<this.options[this._minRadiusOption]?s=Un(this._map,i,s,this._getMinDistanceInMeter(i)):this.options[this._maxRadiusOption]&&o>this.options[this._maxRadiusOption]&&(s=Un(this._map,i,s,this._getMaxDistanceInMeter(i))),s},_handleOuterMarkerSnapping(){if(this._outerMarker._snapped){let i=this._centerMarker.getLatLng(),s=this._outerMarker.getLatLng(),o=this._distanceCalculation(i,s);this.options[this._minRadiusOption]&&o<this.options[this._minRadiusOption]?this._outerMarker.setLatLng(this._outerMarker._orgLatLng):this.options[this._maxRadiusOption]&&o>this.options[this._maxRadiusOption]&&this._outerMarker.setLatLng(this._outerMarker._orgLatLng)}this._outerMarker.setLatLng(this._getNewDestinationOfOuterMarker())},_distanceCalculation(i,s){return this._map.project(i).distanceTo(this._map.project(s))},_getMinDistanceInMeter(i){return L.PM.Utils.pxRadiusToMeterRadius(this.options[this._minRadiusOption],this._map,i)},_getMaxDistanceInMeter(i){return L.PM.Utils.pxRadiusToMeterRadius(this.options[this._maxRadiusOption],this._map,i)},_onVertexClick(i){i.target._dragging||this._fireVertexClick(i,void 0)}}),ge.Circle=ge.CircleMarker.extend({_shape:"Circle",initialize(i){this._layer=i,this._enabled=!1,this._minRadiusOption="minRadiusCircle",this._maxRadiusOption="maxRadiusCircle",this._editableOption="resizeableCircle",this._updateHiddenPolyCircle()},enable(i){L.PM.Edit.CircleMarker.prototype.enable.call(this,i||{})},_extendingEnable(){},_extendingDisable(){this._layer.off("remove",this.disable,this);let i=this._layer._path?this._layer._path:this._layer._renderer._container;L.DomUtil.removeClass(i,"leaflet-pm-draggable")},_extendingApplyOptions(){},_syncMarkers(){},_removeMarker(){},_onDragStart(){},_extedingMarkerDragEnd(){},_updateHiddenPolyCircle(){let i=this._map&&this._map.pm._isCRSSimple();this._hiddenPolyCircle?this._hiddenPolyCircle.setLatLngs(L.PM.Utils.circleToPolygon(this._layer,200,!i).getLatLngs()):this._hiddenPolyCircle=L.PM.Utils.circleToPolygon(this._layer,200,!i),this._hiddenPolyCircle._parentCopy||(this._hiddenPolyCircle._parentCopy=this._layer)},_distanceCalculation(i,s){return this._map.distance(i,s)},_getMinDistanceInMeter(){return this.options[this._minRadiusOption]},_getMaxDistanceInMeter(){return this.options[this._maxRadiusOption]},_onVertexClick(i){i.target._dragging||this._fireVertexClick(i,void 0)}}),ge.ImageOverlay=ge.extend({_shape:"ImageOverlay",initialize(i){this._layer=i,this._enabled=!1},toggleEdit(i){this.enabled()?this.disable():this.enable(i)},enabled(){return this._enabled},enable(i={draggable:!0,snappable:!0}){if(L.Util.setOptions(this,i),this._map=this._layer._map,!!this._map){if(!this.options.allowEditing){this.disable();return}this.enabled()||this.disable(),this.enableLayerDrag(),this._layer.on("remove",this.disable,this),this._enabled=!0,this._otherSnapLayers=this._findCorners(),this._fireEnable()}},disable(){this._dragging||(this._map||(this._map=this._layer._map),this.disableLayerDrag(),this._layer.off("remove",this.disable,this),this.enabled()||(this._layerEdited&&this._fireUpdate(),this._layerEdited=!1,this._fireDisable()),this._enabled=!1)},_findCorners(){let i=this._layer.getBounds(),s=i.getNorthWest(),o=i.getNorthEast(),h=i.getSouthEast(),c=i.getSouthWest();return[s,o,h,c]}}),ge.Text=ge.extend({_shape:"Text",initialize(i){this._layer=i,this._enabled=!1},enable(i){if(L.Util.setOptions(this,i),!!this.textArea){if(!this.options.allowEditing||!this._layer._map){this.disable();return}this._map=this._layer._map,this.enabled()&&this.disable(),this.applyOptions(),this._safeToCacheDragState=!0,this._focusChange(),this.textArea.readOnly=!1,this.textArea.classList.remove("pm-disabled"),this._layer.on("remove",this.disable,this),L.DomEvent.on(this.textArea,"input",this._autoResize,this),L.DomEvent.on(this.textArea,"focus",this._focusChange,this),L.DomEvent.on(this.textArea,"blur",this._focusChange,this),this._layer.on("dblclick",L.DomEvent.stop),L.DomEvent.off(this.textArea,"mousedown",this._preventTextSelection),this._enabled=!0,this._fireEnable()}},disable(){if(!this.enabled())return;this._layer.off("remove",this.disable,this),L.DomEvent.off(this.textArea,"input",this._autoResize,this),L.DomEvent.off(this.textArea,"focus",this._focusChange,this),L.DomEvent.off(this.textArea,"blur",this._focusChange,this),L.DomEvent.off(document,"click",this._documentClick,this),this._focusChange(),this.textArea.readOnly=!0,this.textArea.classList.add("pm-disabled");let i=document.activeElement;this.textArea.focus(),this.textArea.selectionStart=0,this.textArea.selectionEnd=0,L.DomEvent.on(this.textArea,"mousedown",this._preventTextSelection),i.focus(),this._disableOnBlurActive=!1,this._layerEdited&&this._fireUpdate(),this._layerEdited=!1,this._fireDisable(),this._enabled=!1},enabled(){return this._enabled},toggleEdit(i){this.enabled()?this.disable():this.enable(i)},applyOptions(){this.options.snappable?this._initSnappableMarkers():this._disableSnapping()},_initSnappableMarkers(){let i=this._layer;this.options.snapDistance=this.options.snapDistance||30,this.options.snapSegment=this.options.snapSegment===void 0?!0:this.options.snapSegment,i.off("pm:drag",this._handleSnapping,this),i.on("pm:drag",this._handleSnapping,this),i.off("pm:dragend",this._cleanupSnapping,this),i.on("pm:dragend",this._cleanupSnapping,this),i.off("pm:dragstart",this._unsnap,this),i.on("pm:dragstart",this._unsnap,this)},_disableSnapping(){let i=this._layer;i.off("pm:drag",this._handleSnapping,this),i.off("pm:dragend",this._cleanupSnapping,this),i.off("pm:dragstart",this._unsnap,this)},_autoResize(){this.textArea.style.height="1px",this.textArea.style.width="1px";let i=this.textArea.scrollHeight>21?this.textArea.scrollHeight:21,s=this.textArea.scrollWidth>16?this.textArea.scrollWidth:16;this.textArea.style.height=`${i}px`,this.textArea.style.width=`${s}px`,this._layer.options.text=this.getText(),this._fireTextChange(this.getText())},_disableOnBlur(){this._disableOnBlurActive=!0,setTimeout(()=>{this.enabled()&&L.DomEvent.on(document,"click",this._documentClick,this)},100)},_documentClick(i){i.target!==this.textArea&&(this.disable(),!this.getText()&&this.options.removeIfEmpty&&this.remove())},_focusChange(i={}){let s=this._hasFocus;this._hasFocus=i.type==="focus",!s!=!this._hasFocus&&(this._hasFocus?(this._applyFocus(),this._focusText=this.getText(),this._fireTextFocus()):(this._removeFocus(),this._fireTextBlur(),this._focusText!==this.getText()&&(this._fireEdit(),this._layerEdited=!0)))},_applyFocus(){this.textArea.classList.add("pm-hasfocus"),this._map.dragging&&(this._safeToCacheDragState&&(this._originalMapDragState=this._map.dragging._enabled,this._safeToCacheDragState=!1),this._map.dragging.disable())},_removeFocus(){this._map.dragging&&(this._originalMapDragState&&this._map.dragging.enable(),this._safeToCacheDragState=!0),this.textArea.classList.remove("pm-hasfocus")},focus(){if(!this.enabled())throw new TypeError("Layer is not enabled");this.textArea.focus()},blur(){if(!this.enabled())throw new TypeError("Layer is not enabled");this.textArea.blur(),this._disableOnBlurActive&&this.disable()},hasFocus(){return this._hasFocus},getElement(){return this.textArea},setText(i){i&&(this.textArea.value=i),this._autoResize()},getText(){return this.textArea.value},_initTextMarker(){if(this.textArea=L.PM.Draw.Text.prototype._createTextArea.call(this),this.options.className){let s=this.options.className.split(" ");this.textArea.classList.add(...s)}let i=L.PM.Draw.Text.prototype._createTextIcon.call(this,this.textArea);this._layer.setIcon(i),this._layer.once("add",this._createTextMarker,this)},_createTextMarker(i=!1){this._layer.off("add",this._createTextMarker,this),this._layer.getElement().tabIndex=-1,this.textArea.wrap="off",this.textArea.style.overflow="hidden",this.textArea.style.height=L.DomUtil.getStyle(this.textArea,"font-size"),this.textArea.style.width="1px",this._layer.options.text&&this.setText(this._layer.options.text),this._autoResize(),i===!0&&(this.enable(),this.focus(),this._disableOnBlur())},_preventTextSelection(i){i.preventDefault()}});var ih=function(i,s,o,h,c,m){this._matrix=[i,s,o,h,c,m]};ih.init=()=>new L.PM.Matrix(1,0,0,1,0,0),ih.prototype={transform(i){return this._transform(i.clone())},_transform(i){let s=this._matrix,{x:o,y:h}=i;return i.x=s[0]*o+s[1]*h+s[4],i.y=s[2]*o+s[3]*h+s[5],i},untransform(i){let s=this._matrix;return new L.Point((i.x/s[0]-s[4])/s[0],(i.y/s[2]-s[5])/s[2])},clone(){let i=this._matrix;return new L.PM.Matrix(i[0],i[1],i[2],i[3],i[4],i[5])},translate(i){if(i===void 0)return new L.Point(this._matrix[4],this._matrix[5]);let s,o;return typeof i=="number"?(s=i,o=i):(s=i.x,o=i.y),this._add(1,0,0,1,s,o)},scale(i,s){if(i===void 0)return new L.Point(this._matrix[0],this._matrix[3]);let o,h;return s=s||L.point(0,0),typeof i=="number"?(o=i,h=i):(o=i.x,h=i.y),this._add(o,0,0,h,s.x,s.y)._add(1,0,0,1,-s.x,-s.y)},rotate(i,s){let o=Math.cos(i),h=Math.sin(i);return s=s||new L.Point(0,0),this._add(o,h,-h,o,s.x,s.y)._add(1,0,0,1,-s.x,-s.y)},flip(){return this._matrix[1]*=-1,this._matrix[2]*=-1,this},_add(i,s,o,h,c,m){let y=[[],[],[]],A=this._matrix,b=[[A[0],A[2],A[4]],[A[1],A[3],A[5]],[0,0,1]],P=[[i,o,c],[s,h,m],[0,0,1]],N;i&&i instanceof L.PM.Matrix&&(A=i._matrix,P=[[A[0],A[2],A[4]],[A[1],A[3],A[5]],[0,0,1]]);for(let F=0;F<3;F+=1)for(let tt=0;tt<3;tt+=1){N=0;for(let it=0;it<3;it+=1)N+=b[F][it]*P[it][tt];y[F][tt]=N}return this._matrix=[y[0][0],y[1][0],y[0][1],y[1][1],y[0][2],y[1][2]],this}};var lp=ih,up={calcMiddleLatLng(i,s,o){let h=i.project(s),c=i.project(o);return i.unproject(h._add(c)._divideBy(2))},findLayers(i){let s=[];return i.eachLayer(o=>{(o instanceof L.Polyline||o instanceof L.Marker||o instanceof L.Circle||o instanceof L.CircleMarker||o instanceof L.ImageOverlay)&&s.push(o)}),s=s.filter(o=>!!o.pm),s=s.filter(o=>!o._pmTempLayer),s=s.filter(o=>!L.PM.optIn&&!o.options.pmIgnore||L.PM.optIn&&o.options.pmIgnore===!1),s},circleToPolygon(i,s=60,o=!0){let h=i.getLatLng(),c=i.getRadius(),m=zn(h,c,s,0,o),y=[];for(let A=0;A<m.length;A+=1){let b=[m[A].lat,m[A].lng];y.push(b)}return L.polygon(y,i.options)},disablePopup(i){i.getPopup()&&(i._tempPopupCopy=i.getPopup(),i.unbindPopup())},enablePopup(i){i._tempPopupCopy&&(i.bindPopup(i._tempPopupCopy),delete i._tempPopupCopy)},_fireEvent(i,s,o,h=!1){i.fire(s,o,h);let{groups:c}=this.getAllParentGroups(i);c.forEach(m=>{m.fire(s,o,h)})},getAllParentGroups(i){let s=[],o=[],h=c=>{for(let m in c._eventParents)if(s.indexOf(m)===-1){s.push(m);let y=c._eventParents[m];o.push(y),h(y)}};return!i._pmLastGroupFetch||!i._pmLastGroupFetch.time||new Date().getTime()-i._pmLastGroupFetch.time>1e3?(h(i),i._pmLastGroupFetch={time:new Date().getTime(),groups:o,groupIds:s},{groupIds:s,groups:o}):{groups:i._pmLastGroupFetch.groups,groupIds:i._pmLastGroupFetch.groupIds}},createGeodesicPolygon:zn,getTranslation:St,findDeepCoordIndex(i,s,o=!0){let h,c=y=>(A,b)=>{let P=y.concat(b);if(o){if(A.lat&&A.lat===s.lat&&A.lng===s.lng)return h=P,!0}else if(A.lat&&L.latLng(A).equals(s))return h=P,!0;return Array.isArray(A)&&A.some(c(P))};i.some(c([]));let m={};return h&&(m={indexPath:h,index:h[h.length-1],parentPath:h.slice(0,h.length-1)}),m},findDeepMarkerIndex(i,s){let o,h=m=>(y,A)=>{let b=m.concat(A);return y._leaflet_id===s._leaflet_id?(o=b,!0):Array.isArray(y)&&y.some(h(b))};i.some(h([]));let c={};return o&&(c={indexPath:o,index:o[o.length-1],parentPath:o.slice(0,o.length-1)}),c},_getIndexFromSegment(i,s){if(s&&s.length===2){let o=this.findDeepCoordIndex(i,s[0]),h=this.findDeepCoordIndex(i,s[1]),c=Math.max(o.index,h.index);return(o.index===0||h.index===0)&&c!==1&&(c+=1),{indexA:o,indexB:h,newIndex:c,indexPath:o.indexPath,parentPath:o.parentPath}}return null},_getRotatedRectangle(i,s,o,h){let c=rs(h,i),m=rs(h,s),y=o*Math.PI/180,A=Math.cos(y),b=Math.sin(y),P=(m.x-c.x)*A+(m.y-c.y)*b,N=(m.y-c.y)*A-(m.x-c.x)*b,F=P*A+c.x,tt=P*b+c.y,it=-N*b+c.x,lt=N*A+c.y,ft=br(h,c),At=br(h,{x:F,y:tt}),Gt=br(h,m),z=br(h,{x:it,y:lt});return[ft,At,Gt,z]},pxRadiusToMeterRadius(i,s,o){let h=s.project(o),c=L.point(h.x+i,h.y);return s.distance(s.unproject(c),o)}},cp=up;L.PM=L.PM||{version:zs.version,Map:or,Toolbar:Ys,Draw:de,Edit:ge,Utils:cp,Matrix:lp,activeLang:"en",optIn:!1,initialize(i){this.addInitHooks(i)},setOptIn(i){this.optIn=!!i},addInitHooks(){function i(){this.pm=void 0,L.PM.optIn?this.options.pmIgnore===!1&&(this.pm=new L.PM.Map(this)):this.options.pmIgnore||(this.pm=new L.PM.Map(this)),this.pm&&this.pm.setGlobalOptions({})}L.Map.addInitHook(i);function s(){this.pm=void 0,L.PM.optIn?this.options.pmIgnore===!1&&(this.pm=new L.PM.Edit.LayerGroup(this)):this.options.pmIgnore||(this.pm=new L.PM.Edit.LayerGroup(this))}L.LayerGroup.addInitHook(s);function o(){this.pm=void 0,L.PM.optIn?this.options.pmIgnore===!1&&(this.options.textMarker?(this.pm=new L.PM.Edit.Text(this),this.options._textMarkerOverPM||this.pm._initTextMarker(),delete this.options._textMarkerOverPM):this.pm=new L.PM.Edit.Marker(this)):this.options.pmIgnore||(this.options.textMarker?(this.pm=new L.PM.Edit.Text(this),this.options._textMarkerOverPM||this.pm._initTextMarker(),delete this.options._textMarkerOverPM):this.pm=new L.PM.Edit.Marker(this))}L.Marker.addInitHook(o);function h(){this.pm=void 0,L.PM.optIn?this.options.pmIgnore===!1&&(this.pm=new L.PM.Edit.CircleMarker(this)):this.options.pmIgnore||(this.pm=new L.PM.Edit.CircleMarker(this))}L.CircleMarker.addInitHook(h);function c(){this.pm=void 0,L.PM.optIn?this.options.pmIgnore===!1&&(this.pm=new L.PM.Edit.Line(this)):this.options.pmIgnore||(this.pm=new L.PM.Edit.Line(this))}L.Polyline.addInitHook(c);function m(){this.pm=void 0,L.PM.optIn?this.options.pmIgnore===!1&&(this.pm=new L.PM.Edit.Polygon(this)):this.options.pmIgnore||(this.pm=new L.PM.Edit.Polygon(this))}L.Polygon.addInitHook(m);function y(){this.pm=void 0,L.PM.optIn?this.options.pmIgnore===!1&&(this.pm=new L.PM.Edit.Rectangle(this)):this.options.pmIgnore||(this.pm=new L.PM.Edit.Rectangle(this))}L.Rectangle.addInitHook(y);function A(){this.pm=void 0,L.PM.optIn?this.options.pmIgnore===!1&&(this.pm=new L.PM.Edit.Circle(this)):this.options.pmIgnore||(this.pm=new L.PM.Edit.Circle(this))}L.Circle.addInitHook(A);function b(){this.pm=void 0,L.PM.optIn?this.options.pmIgnore===!1&&(this.pm=new L.PM.Edit.ImageOverlay(this)):this.options.pmIgnore||(this.pm=new L.PM.Edit.ImageOverlay(this))}L.ImageOverlay.addInitHook(b)},reInitLayer(i){i instanceof L.LayerGroup&&i.eachLayer(s=>{this.reInitLayer(s)}),i.pm||L.PM.optIn&&i.options.pmIgnore!==!1||i.options.pmIgnore||(i instanceof L.Map?i.pm=new L.PM.Map(i):i instanceof L.Marker?i.options.textMarker?(i.pm=new L.PM.Edit.Text(i),i.pm._initTextMarker(),i.pm._createTextMarker(!1)):i.pm=new L.PM.Edit.Marker(i):i instanceof L.Circle?i.pm=new L.PM.Edit.Circle(i):i instanceof L.CircleMarker?i.pm=new L.PM.Edit.CircleMarker(i):i instanceof L.Rectangle?i.pm=new L.PM.Edit.Rectangle(i):i instanceof L.Polygon?i.pm=new L.PM.Edit.Polygon(i):i instanceof L.Polyline?i.pm=new L.PM.Edit.Line(i):i instanceof L.LayerGroup?i.pm=new L.PM.Edit.LayerGroup(i):i instanceof L.ImageOverlay&&(i.pm=new L.PM.Edit.ImageOverlay(i)))}},L.version==="1.7.1"&&L.Canvas.include({_onClick(i){let s=this._map.mouseEventToLayerPoint(i),o,h;for(let c=this._drawFirst;c;c=c.next)o=c.layer,o.options.interactive&&o._containsPoint(s)&&(!(i.type==="click"||i.type==="preclick")||!this._map._draggableMoved(o))&&(h=o);h&&(L.DomEvent.fakeStop(i),this._fireEvent([h],i))}}),L.PM.initialize()})();const vl={en_US:{showEagle:"Show Eagle Map",hideEagle:"Hide Eagle Map"},zh_CN:{showEagle:"显示鹰眼图",hideEagle:"隐藏鹰眼图"}},Ml={en_US:{coordinate:"Coordinate",zoomLevel:"Zoom Level",FPS:"FPS"},zh_CN:{coordinate:"坐标",zoomLevel:"层级",FPS:"每秒帧数"}},Er={en_US:{home:"Go Home",capture:"Screen Capture",center:"View Full",north:"Move North",south:"Move South",east:"Move East",west:"Move West",zoomIn:"Zoom In",zoomOut:"Zoom Out",zoom:"Zoom to this level",dragZoom:"Drag to zoom",more:"More",draw:"Plot",layer:"Layer Manager",lng:"Longitude",lat:"Latitude"},zh_CN:{home:"回到初始位置",capture:"截屏",center:"查看全图",north:"向上平移",south:"向下平移",east:"向右平移",west:"向左平移",zoomIn:"放大一级",zoomOut:"缩小一级",zoom:"缩放到此级别",dragZoom:"拖动缩放",more:"更多",draw:"标绘",layer:"图层管理",lng:"经度",lat:"纬度"}},Pr=U.Control.extend({options:{position:"bottomleft",coordinateUnit:"decimal",showCoordinate:!0,showLevel:!0,showFPS:!0,precision:6},initialize(t){U.setOptions(this,t),this.lastTime=+new Date,this.frames=0,U.Control.prototype.initialize.call(this,this.options)},onAdd(t){this.map=t,this.lang=t.lang,this.langDic=Ml,this._container=U.DomUtil.create("div",`${t.clsPrefix}-statusbar`),this.zoom=t.getZoom();const n=t.getCenter();return this.lng=n.lng,this.lat=n.lat,this.options.showCoordinate&&(this._latlngContainer=U.DomUtil.create("div",`${t.clsPrefix}-statusbar-item coordinate`,this._container),this._latlngContainer.innerHTML=`<b>${this.langDic[this.lang].coordinate}:</b>${this.getCoordinate(this.lng)},${this.getCoordinate(this.lat)}`),this.options.showLevel&&(this._levelContainer=U.DomUtil.create("div",`${t.clsPrefix}-statusbar-item level`,this._container),this._levelContainer.innerHTML=`<b>${this.langDic[this.lang].zoomLevel}:</b>${this.zoom+1}`),this.options.showFPS&&(this._fpsContainer=U.DomUtil.create("div",`${t.clsPrefix}-statusbar-item fps`,this._container),this._fpsContainer.innerHTML=`<b>${this.langDic[this.lang].FPS}:</b>60`),this.initEvt(),this._container},initEvt(){this.map.on("mousemove",t=>{this.lat=t.latlng.lat,this.lng=t.latlng.lng,this._latlngContainer&&(this._latlngContainer.innerHTML=`<b>${this.langDic[this.lang].coordinate}:</b>${this.getCoordinate(this.lng,"lng")},${this.getCoordinate(this.lat,"lat")}`)}),this.map.on("zoomend",()=>{this.zoom=this.map.getZoom(),this._levelContainer&&(this._levelContainer.innerHTML=`<b>${this.langDic[this.lang].zoomLevel}:</b>${this.zoom+1}`)}),this.options.showFPS&&this.calcFPS()},getCoordinate(t,n="lng"){switch(this.options.coordinateUnit){case"decimal":return t.toFixed(this.options.precision);case"radian":return(t*Math.PI/180).toFixed(this.options.precision);case"degrees":return this._formatDeg(t,n)}},_formatDeg(t,n){const r=parseFloat(t),u=parseInt(r);let d="";n==="lng"?d=u>0?"E":"W":n==="lat"&&(d=u>0?"N":"S");let f=parseInt((r-u)*60),p=(r-u)*3600-f*60;return u+"°"+f+"′"+p.toFixed(2)+"″"+d},calcFPS(){if(this.frames++,this.frames>=30){const t=Date.now()-this.lastTime,n=Math.round(1e3/(t/this.frames));this._fpsContainer&&(this.frames=0,this.lastTime=Date.now(),this._fpsContainer.innerHTML=`<b>${this.langDic[this.lang].FPS}:</b><span>${n}</span>`)}requestAnimationFrame(this.calcFPS.bind(this))}}),kr=U.Control.extend({includes:U.Evented?U.Evented.prototype:U.Mixin.Events,options:{position:"bottomright",toggleDisplay:!0,zoomLevelOffset:5,zoomLevelFixed:!1,centerFixed:!1,zoomAnimation:!1,autoToggleDisplay:!1,minimized:!1,width:100,height:100,collapsedWidth:22,collapsedHeight:22,aimingRectOptions:{color:"#ff7800",weight:1,interactive:!1},shadowRectOptions:{color:"#000000",weight:1,interactive:!1,opacity:0,fillOpacity:0},strings:{},mapOptions:{rotate:!0,rotateControl:!1}},initialize(t,n){U.Util.setOptions(this,n),this.options.aimingRectOptions.interactive=!1,this.options.shadowRectOptions.interactive=!1,this._layer=t},onAdd(t){this._mainMap=t,this.lang=t.options.lang??this.options.lang??"zh_CN",this.langDic=vl,this.options.strings={hideText:this.langDic[this.lang].hideEagle,showText:this.langDic[this.lang].showEagle},this._container=U.DomUtil.create("div",`${t.clsPrefix}-eaglemap`),this._container.style.width=this.options.width+"px",this._container.style.height=this.options.height+"px",U.DomEvent.disableClickPropagation(this._container),U.DomEvent.on(this._container,"mousewheel",U.DomEvent.stopPropagation);let n={attributionControl:!1,dragging:!this.options.centerFixed,zoomControl:!1,zoomAnimation:this.options.zoomAnimation,autoToggleDisplay:this.options.autoToggleDisplay,touchZoom:this.options.centerFixed?"center":!this._isZoomLevelFixed(),scrollWheelZoom:this.options.centerFixed?"center":!this._isZoomLevelFixed(),doubleClickZoom:this.options.centerFixed?"center":!this._isZoomLevelFixed(),boxZoom:!this._isZoomLevelFixed(),crs:t.options.crs,rotateControl:t.options.rotateControl,rotate:t.options.rotate,bearing:t.options.bearing,lang:this.lang};return n=U.Util.extend(this.options.mapOptions,n),this._eagleMap=new U.Map(this._container,n),this._layer instanceof U.Layer&&this._eagleMap.addLayer(this._layer),this._mainMapMoving=!1,this._eagleMapMoving=!1,this._userToggledDisplay=!1,this._minimized=!1,this.options.toggleDisplay&&this._addToggleButton(),this._eagleMap.whenReady(U.Util.bind(function(){this._aimingRect=new U.Rectangle(this._mainMap.getBounds(),this.options.aimingRectOptions).addTo(this._eagleMap),this._shadowRect=new U.Rectangle(this._mainMap.getBounds(),this.options.shadowRectOptions).addTo(this._eagleMap),this._mainMap.on("moveend",this._onMainMapMoved,this),this._mainMap.on("move",this._onMainMapMoving,this),this._eagleMap.on("movestart",this._onEagleMapMoveStarted,this),this._eagleMap.on("move",this._onEagleMapMoving,this),this._eagleMap.on("moveend",this._onEagleMapMoved,this)},this)),this._container},addTo(t){U.Control.prototype.addTo.call(this,t);const n=this.options.centerFixed||this._mainMap.getCenter();return this._eagleMap.setView(n,this._decideZoom(!0)),this._setDisplay(this.options.minimized),this},onRemove(t){this._mainMap.off("moveend",this._onMainMapMoved,this),this._mainMap.off("move",this._onMainMapMoving,this),this._eagleMap.off("moveend",this._onEagleMapMoved,this),this._eagleMap.removeLayer(this._layer)},changeLayer(t){this._eagleMap.removeLayer(this._layer),this._layer=t,this._eagleMap.addLayer(this._layer)},_addToggleButton(){this._toggleDisplayButton=this.options.toggleDisplay?this._createButton("",this._toggleButtonInitialTitleText(),`${this._mainMap.clsPrefix}-eaglemap-toggle-display ${this._mainMap.clsPrefix}-eaglemap-toggle-display-`+this.options.position,this._container,this._toggleDisplayButtonClicked,this):void 0,this._toggleDisplayButton.style.width=this.options.collapsedWidth+"px",this._toggleDisplayButton.style.height=this.options.collapsedHeight+"px"},_toggleButtonInitialTitleText(){return this.options.minimized?this.langDic[this.lang].showEagle:this.langDic[this.lang].hideEagle},_createButton(t,n,r,u,d,f){const p=U.DomUtil.create("a",r,u);p.innerHTML=t,p.href="#",p.title=n;const g=U.DomEvent.stopPropagation;return U.DomEvent.on(p,"click",g).on(p,"mousedown",g).on(p,"dblclick",g).on(p,"click",U.DomEvent.preventDefault).on(p,"click",d,f),p},_toggleDisplayButtonClicked(){this._userToggledDisplay=!0,this._minimized?this._restore():this._minimize()},_setDisplay(t){t!==this._minimized&&(this._minimized?this._restore():this._minimize())},_minimize(){this.options.toggleDisplay?(this._container.style.width=this.options.collapsedWidth+"px",this._container.style.height=this.options.collapsedHeight+"px",this._toggleDisplayButton.className+=" minimized-"+this.options.position,this._toggleDisplayButton.title=this.options.strings.showText):this._container.style.display="none",this._minimized=!0,this._onToggle()},_restore(){this.options.toggleDisplay?(this._container.style.width=this.options.width+"px",this._container.style.height=this.options.height+"px",this._toggleDisplayButton.className=this._toggleDisplayButton.className.replace("minimized-"+this.options.position,""),this._toggleDisplayButton.title=this.options.strings.hideText):this._container.style.display="block",this._minimized=!1,this._onToggle()},_onMainMapMoved(t){if(this._eagleMapMoving)this._eagleMapMoving=!1;else{const n=this.options.centerFixed||this._mainMap.getCenter();this._mainMapMoving=!0,this._eagleMap.setView(n,this._decideZoom(!0)),this._setDisplay(this._decideMinimized())}this._aimingRect.setBounds(this._mainMap.getBounds())},_onMainMapMoving(t){this._aimingRect.setBounds(this._mainMap.getBounds())},_onEagleMapMoveStarted(t){if(!this.options.centerFixed){const n=this._aimingRect.getBounds(),r=this._eagleMap.latLngToContainerPoint(n.getSouthWest()),u=this._eagleMap.latLngToContainerPoint(n.getNorthEast());this._lastAimingRectPosition={sw:r,ne:u}}},_onEagleMapMoving(t){this.options.centerFixed||!this._mainMapMoving&&this._lastAimingRectPosition&&(this._shadowRect.setBounds(new U.LatLngBounds(this._eagleMap.containerPointToLatLng(this._lastAimingRectPosition.sw),this._eagleMap.containerPointToLatLng(this._lastAimingRectPosition.ne))),this._shadowRect.setStyle({opacity:1,fillOpacity:.3}))},_onEagleMapMoved(t){this._mainMapMoving?this._mainMapMoving=!1:(this._eagleMapMoving=!0,this._mainMap.setView(this._eagleMap.getCenter(),this._decideZoom(!1)),this._shadowRect.setStyle({opacity:0,fillOpacity:0}))},_isZoomLevelFixed(){const t=this.options.zoomLevelFixed;return this._isDefined(t)&&this._isInteger(t)},_decideZoom(t){if(this._isZoomLevelFixed())return t?this.options.zoomLevelFixed:this._mainMap.getZoom();if(t)return this._mainMap.getZoom()-this.options.zoomLevelOffset;{const n=this._eagleMap.getZoom()-this._mainMap.getZoom(),r=this._eagleMap.getZoom()+this.options.zoomLevelOffset;let u;return n<this.options.zoomLevelOffset&&this._mainMap.getZoom()<this._eagleMap.getMinZoom()+this.options.zoomLevelOffset?this._eagleMap.getZoom()>this._lastEagleMapZoom?(u=this._mainMap.getZoom()+1,this._eagleMap.setZoom(this._eagleMap.getZoom()-1)):u=this._mainMap.getZoom():u=r,this._lastEagleMapZoom=this._eagleMap.getZoom(),u}},_decideMinimized(){return this._userToggledDisplay?this._minimized:this.options.autoToggleDisplay?!!this._mainMap.getBounds().contains(this._eagleMap.getBounds()):this._minimized},_isInteger(t){return typeof t=="number"},_isDefined(t){return typeof t<"u"},_onToggle(){U.Util.requestAnimFrame(function(){U.DomEvent.on(this._container,"transitionend",this._fireToggleEvents,this),U.Browser.any3d||U.Util.requestAnimFrame(this._fireToggleEvents,this)},this)},_fireToggleEvents(){U.DomEvent.off(this._container,"transitionend",this._fireToggleEvents,this);const t={minimized:this._minimized};this.fire(this._minimized?"minimize":"restore",t),this.fire("toggle",t)}}),Sr=L.FeatureGroup.extend({initialize(t,n){this.markers=[],L.Util.setOptions(this,n);const r=typeof this.options.cssClass=="string"?this.options.cssClass:"vertex-marker",u=this.options.iconSize!==void 0?this.options.iconSize:[24,24],d=this.options.iconAnchor!==void 0?this.options.iconAnchor:[12,12],f=this.options.textFn,p=typeof this.options.firstVertex=="boolean"?this.options.firstVertex:!0,g=typeof this.options.lastVertex=="boolean"?this.options.lastVertex:!0;this.dragable=this.options.dragable||!1;let M=t;typeof t.getLatLngs=="function"&&(M=t.getLatLngs());for(let C=p?0:1,T=M.length-(g?0:1);C<T;C++){const G=M[C];var B=typeof f=="function"?f.call(this,C,M):f||"",E=L.divIcon({className:r,html:B,iconSize:u,iconAnchor:d}),x=L.marker(G,{icon:E,pmIgnore:!0,index:C});this.markers.push(x)}L.FeatureGroup.prototype.initialize.call(this,this.markers)},onAdd(t){this.markers.forEach(n=>{L.FeatureGroup.prototype.addLayer.call(this,n)}),L.FeatureGroup.prototype.onAdd.call(this,t)},onRemove(t){this.markers.forEach(n=>{L.FeatureGroup.prototype.removeLayer.call(this,n)}),L.FeatureGroup.prototype.onRemove.call(this,t)}});class os extends L[L.Layer?"Layer":"Class"]{constructor(n,r,u,d,f){super(),L.setOptions(this,f),this._latlng=n,this._measurement=r,this._title=u,this._rotation=d,this.MEASUREDDATA=null,this.tempAcCurrDrawPoints=null}addTo(n){return n.addLayer(this),this}onAdd(n){this._map=n;const r=this.getPane?this.getPane():n.getPanes().markerPane,u=this._element=L.DomUtil.create("div","leaflet-zoom-animated leaflet-measure-path-measurement",r),d=L.DomUtil.create("div","",u);d.title=this._title,d.innerHTML=this._measurement,n.on("zoomanim",this._animateZoom,this),this._setPosition()}onRemove(n){n.off("zoomanim",this._animateZoom,this),(this.getPane?this.getPane():n.getPanes().markerPane).removeChild(this._element),this._map=null}_setPosition(){L.DomUtil.setPosition(this._element,this._map.latLngToLayerPoint(this._latlng)),this._element.style.transform+=" rotate("+this._rotation+"rad)"}_animateZoom(n){const r=this._map._latLngToNewLayerPoint(this._latlng,n.zoom,n.center).round();L.DomUtil.setPosition(this._element,r),this._element.style.transform+=" rotate("+this._rotation+"rad)"}}U.Map.addInitHook(function(){var t,n,r;this.pm&&this.pm.setLang(this.options.lang.split("_")[0]),(t=this.options.eagleMapControl)!=null&&t.show&&(this.eagleMapControl=new kr(this.options.eagleMapControl),this.addControl(this.eagleMapControl)),(n=this.options.statusBarControl)!=null&&n.show&&(this.statusBarControl=new Pr(this.options.statusBarControl),this.addControl(this.statusBarControl)),(r=this.options.scaleControl)!=null&&r.show&&(this.scaleControl=new U.Control.Scale(Object.assign({position:"bottomleft",maxWidth:100,metric:!0,imperial:!1},this.options.scaleControl)),this.addControl(this.scaleControl)),this.keyboard.disable()}),U.Marker.addInitHook(function(){let n=this.options.icon&&this.options.icon.options&&this.options.icon.options.iconAnchor;n&&(n=n[0]+"px "+n[1]+"px"),this.options.rotationOrigin=this.options.rotationOrigin||n||"center bottom",this.on("drag",r=>{r.target._applyRotation()})}),U.Marker.mergeOptions({scale:1,rotation:0,minZoom:0,maxZoom:16,hideOnMinZoom:!0,minificationScale:.6}),U.Marker.include({_setPos(t){this._icon.style.display="initial";const{rotation:n,minZoom:r,maxZoom:u,hideOnMinZoom:d,minificationScale:f}=this.options;if(r&&u&&u-r>0){const p=parseFloat(((1-f)/(u-r)).toFixed(2));this._map._zoom>=u?this.options.scale=1:this._map._zoom>r&this._map._zoom<u?this.options.scale=1-(u-this._map._zoom)*p:this._map._zoom<=r&&d?this._icon.style.display="none":this._map._zoom<=r&&!d&&(this.options.scale=f)}this._map._rotate&&(t=this._map.rotatedPointToMapPanePoint(t)),this._icon&&U.DomUtil.setPosition(this._icon,t,n,t,this.options.scale),this._shadow&&U.DomUtil.setPosition(this._shadow,t,n,t,this.options.scale),this._zIndex=t.y+this.options.zIndexOffset,this._resetZIndex()},_applyRotation(){this.options.rotation&&(this._icon.style[U.DomUtil.TRANSFORM+"Origin"]=this.options.rotationOrigin,U.DomUtil.TRANSFORM==="msTransform"?this._icon.style[U.DomUtil.TRANSFORM]="rotate("+this.options.rotation+"deg)":this._icon.style[U.DomUtil.TRANSFORM]+=" rotateZ("+this.options.rotation+"deg)")},startTwinkle(t,n){this.twinkle(t,n)},endTwinkle(){clearTimeout(this.twinkleTimer)},twinkle(t=200,n=1/0){let r=!1,u=0;const d=()=>{u++,n&&t&&u>Math.floor(n/t)?(this.setOpacity(1),this.twinkleTimer=void 0):(r?(this.setOpacity(0),r=!1):(this.setOpacity(1),r=!0),this.twinkleTimer=setTimeout(d,t))};d()}}),U.Map.include({hasLayer:function(t){return t&&U.Util.stamp(t)in this._layers},removeLayerById:function(t){const n=this.getLayer(t);n&&this.removeLayer(n)}}),U.Path.addInitHook(function(){this.options.color&&(this.color=$t.Color.from(this.options.color)),this.options.fillColor&&(this.fillColor=$t.Color.from(this.options.fillColor))}),U.Polyline.addInitHook(function(){this.options.showMeasurements&&this.showMeasurements()}),U.Circle.include({toGeoJSON(){return{type:"Feature",properties:{},geometry:{type:"Circle",radius:this.getRadius(),coordinates:[this._latlng.lng,this._latlng.lat]}}}}),U.Layer.addInitHook(function(){this._leaflet_id=this.options.id||U.stamp({})}),U.LayerGroup.include({getLayerId(t){return t._leaflet_id},hasLayer(t){return t?(["number","string"].includes(typeof t)?t:this.getLayerId(t))in this._layers:!1}}),U.GridLayer.include({_setZoomTransform:function(t,u,r){var d=u,u=(d!=null&&this.options&&(this.options.corrdType=="gcj02"?d=$t.CoordsUtil.gcjEncrypt(u.lat,u.lng):this.options.corrdType=="bd09"&&(u=$t.CoordsUtil.gcjEncrypt(u.lat,u.lng),d=$t.CoordsUtil.bdEncrypt(u.lat,u.lng))),this._map.getZoomScale(r,t.zoom)),d=t.origin.multiplyBy(u).subtract(this._map._getNewPixelOrigin(d,r)).round();U.Browser.any3d?U.DomUtil.setTransform(t.el,d,u):U.DomUtil.setPosition(t.el,d)},_getTiledPixelBounds:function(u){var r=u,u=(r!=null&&this.options&&(this.options.corrdType=="gcj02"?r=$t.CoordsUtil.gcjEncrypt(u.lat,u.lng):this.options.corrdType=="bd09"&&(u=$t.CoordsUtil.gcjEncrypt(u.lat,u.lng),r=$t.CoordsUtil.bdEncrypt(u.lat,u.lng))),this._map),n=u._animatingZoom?Math.max(u._animateToZoom,u.getZoom()):u.getZoom(),n=u.getZoomScale(n,this._tileZoom),r=u.project(r,this._tileZoom).floor(),u=u.getSize().divideBy(2*n);return new U.Bounds(r.subtract(u),r.add(u))}}),U.TileLayer.addInitHook(function(){this.on("add",function(t){this._container.style.filter=Object.keys(this.options.style||{}).map(n=>`${n}(${this.options.style[n]})`).join(" ")})}),U.Polyline.include({_originalOnAdd:U.Polyline.prototype.onAdd,_originalOnRemove:U.Polyline.prototype.onRemove,_originalSetLatLngs:U.Polyline.prototype.setLatLngs,_originalAddLatLng:U.Polyline.prototype.addLatLng,setLatLngs:function(t){var n=this._map&&this._vertexMarkers&&this._latlngs.length!==t.length;this._originalSetLatLngs(t),n&&(this.removeVertexMarkers(),this.destroyVertexMarkers(),this.createVertexMarkers()),this.options.showMeasurements&&this.updateMeasurements()},removeVertexMarkers:function(){this._map&&this._vertexMarkers&&(this._map.removeLayer(this._vertexMarkers),this._vertexMarkers=void 0)},onAdd:function(t){this._originalOnAdd(t),this.createVertexMarkers(),this.options.showMeasurements&&this.showMeasurements(this.options.measurementOptions)},createVertexMarkers:function(){if(this._map){var t=this.options.vertexMarkers||{};this._vertexMarkers===void 0&&this.options.vertexMarkers&&(this._vertexMarkers=new Sr(this,t).addTo(this._map))}},destroyVertexMarkers:function(){this._vertexMarkers&&(this._vertexMarkers=void 0)},onRemove:function(t){this.removeVertexMarkers(),this._originalOnRemove(t),this.options.showMeasurements&&this.hideMeasurements()},showMeasurements(t){return!this._map||this._measurementLayer?this:(this._measurementOptions=U.extend({showCloseButton:!1,minPixelDistance:30,showDistances:!0,showArea:!0,showAggregate:!0,lang:{totalLength:"Total length",totalArea:"Total area",segmentLength:"Segment length"},map:this._map},t||{}),this._measurementLayer=new U.LayerGroup().addTo(this._map),this.updateMeasurements(),this._map.on("zoomend",this.updateMeasurements,this),this)},hideMeasurements(){return this._map.off("zoomend",this.updateMeasurements,this),this._measurementLayer?(this._map.removeLayer(this._measurementLayer),this._measurementLayer=null,this):this},tempFormatDistance(t){const n=this._map.options.crs,r=new Array;for(let T=0;T<t.length;T++){const G=n.project(t[T]);r.push(G)}const u=r.length;let d=0,f,p,g,M,B,E;for(let T=0;T<u-1;T++)f=r[T],g=f.x,M=f.y,p=r[T+1],B=p.x,E=p.y,d+=Math.sqrt((g-B)*(g-B)+(M-E)*(M-E));const x=d;let C="";return x>1e3?C="总长:"+Number(x/1e3).toFixed(1)+"公里":C="总长:"+Math.round(x)+"米",C},tempMoveFormatDistance(t,n){const r=this._map.options.crs;t=r.project(t),t=new Array(t),n=r.project(n),t.push(n);const u=t.length;let d=0,f,p,g,M,B,E;for(let T=0;T<u-1;T++)f=t[T],g=f.x,M=f.y,p=t[T+1],B=p.x,E=p.y,d+=Math.sqrt((g-B)*(g-B)+(M-E)*(M-E));const x=d;let C="";return x>1e3?C=Number(x/1e3).toFixed(1)+"公里":C=Math.round(x)+"米",C},tempFormatArea(t){const n=this._map.options.crs,r=new Array;for(let j=0;j<t.length;j++){const W=n.project(t[j]);r.push(W)}let u=!0;for(var d=0;d<r.length-1;d++){r[d].x>180?u=!0:u=!1;break}const f=r.length;let p=0,g,M,B=0,E=0,x=0,C=0;if(r!=null){let j;if(u)for(var d=0;d<f;d++)j=(d+1)%f,g=r[d],M=r[j],p+=g.x*M.y,p-=g.y*M.x;else{let at,rt=0,ct=0;for(var d=0;d<f;d++)g=r[d],at=g.x,d==0?(rt=at,ct=at):(at<rt&&(rt=at),at>ct&&(ct=at));const yt=parseInt(((rt+ct)/2+3)/6);for(var d=0;d<f;d++)j=(d+1)%f,d==0?(g=r[d],B=widget.LonLatToXA80N(yt,g.x,g.y)[0],E=widget.LonLatToXA80N(yt,g.x,g.y)[1]):(B=x,E=C),M=r[j],x=widget.LonLatToXA80N(yt,M.x,M.y)[0],C=widget.LonLatToXA80N(yt,M.x,M.y)[1],p+=B*C,p-=x*E}}const T=Math.abs(p/2);let G="";return T>1e6?G="总面积:"+Number(T/1e6).toFixed(4)+`平方公里
|
|
4
|
+
*/var mh;function gh(){return mh||(mh=1,function(t,n){(function(a,l){l(n)})(An,function(a){var l="1.9.4";function c(e){var r,u,_,M;for(u=1,_=arguments.length;u<_;u++){M=arguments[u];for(r in M)e[r]=M[r]}return e}var f=Object.create||function(){function e(){}return function(r){return e.prototype=r,new e}}();function p(e,r){var u=Array.prototype.slice;if(e.bind)return e.bind.apply(e,u.call(arguments,1));var _=u.call(arguments,2);return function(){return e.apply(r,_.length?_.concat(u.call(arguments)):arguments)}}var g=0;function A(e){return"_leaflet_id"in e||(e._leaflet_id=++g),e._leaflet_id}function k(e,r,u){var _,M,B,j;return j=function(){_=!1,M&&(B.apply(u,M),M=!1)},B=function(){_?M=arguments:(e.apply(u,arguments),setTimeout(j,r),_=!0)},B}function C(e,r,u){var _=r[1],M=r[0],B=_-M;return e===_&&u?e:((e-M)%B+B)%B+M}function x(){return!1}function b(e,r){if(r===!1)return e;var u=Math.pow(10,r===void 0?6:r);return Math.round(e*u)/u}function T(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}function G(e){return T(e).split(/\s+/)}function Z(e,r){Object.prototype.hasOwnProperty.call(e,"options")||(e.options=e.options?f(e.options):{});for(var u in r)e.options[u]=r[u];return e.options}function K(e,r,u){var _=[];for(var M in e)_.push(encodeURIComponent(u?M.toUpperCase():M)+"="+encodeURIComponent(e[M]));return(!r||r.indexOf("?")===-1?"?":"&")+_.join("&")}var at=/\{ *([\w_ -]+) *\}/g;function rt(e,r){return e.replace(at,function(u,_){var M=r[_];if(M===void 0)throw new Error("No value provided for variable "+u);return typeof M=="function"&&(M=M(r)),M})}var ct=Array.isArray||function(e){return Object.prototype.toString.call(e)==="[object Array]"};function yt(e,r){for(var u=0;u<e.length;u++)if(e[u]===r)return u;return-1}var mt="data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs=";function xt(e){return window["webkit"+e]||window["moz"+e]||window["ms"+e]}var Dt=0;function It(e){var r=+new Date,u=Math.max(0,16-(r-Dt));return Dt=r+u,window.setTimeout(e,u)}var zt=window.requestAnimationFrame||xt("RequestAnimationFrame")||It,Yt=window.cancelAnimationFrame||xt("CancelAnimationFrame")||xt("CancelRequestAnimationFrame")||function(e){window.clearTimeout(e)};function Et(e,r,u){if(u&&zt===It)e.call(r);else return zt.call(window,p(e,r))}function Zt(e){e&&Yt.call(window,e)}var be={__proto__:null,extend:c,create:f,bind:p,get lastId(){return g},stamp:A,throttle:k,wrapNum:C,falseFn:x,formatNum:b,trim:T,splitWords:G,setOptions:Z,getParamString:K,template:rt,isArray:ct,indexOf:yt,emptyImageUrl:mt,requestFn:zt,cancelFn:Yt,requestAnimFrame:Et,cancelAnimFrame:Zt};function pe(){}pe.extend=function(e){var r=function(){Z(this),this.initialize&&this.initialize.apply(this,arguments),this.callInitHooks()},u=r.__super__=this.prototype,_=f(u);_.constructor=r,r.prototype=_;for(var M in this)Object.prototype.hasOwnProperty.call(this,M)&&M!=="prototype"&&M!=="__super__"&&(r[M]=this[M]);return e.statics&&c(r,e.statics),e.includes&&(yo(e.includes),c.apply(null,[_].concat(e.includes))),c(_,e),delete _.statics,delete _.includes,_.options&&(_.options=u.options?f(u.options):{},c(_.options,e.options)),_._initHooks=[],_.callInitHooks=function(){if(!this._initHooksCalled){u.callInitHooks&&u.callInitHooks.call(this),this._initHooksCalled=!0;for(var B=0,j=_._initHooks.length;B<j;B++)_._initHooks[B].call(this)}},r},pe.include=function(e){var r=this.prototype.options;return c(this.prototype,e),e.options&&(this.prototype.options=r,this.mergeOptions(e.options)),this},pe.mergeOptions=function(e){return c(this.prototype.options,e),this},pe.addInitHook=function(e){var r=Array.prototype.slice.call(arguments,1),u=typeof e=="function"?e:function(){this[e].apply(this,r)};return this.prototype._initHooks=this.prototype._initHooks||[],this.prototype._initHooks.push(u),this};function yo(e){if(!(typeof L>"u"||!L||!L.Mixin)){e=ct(e)?e:[e];for(var r=0;r<e.length;r++)e[r]===L.Mixin.Events&&console.warn("Deprecated include of L.Mixin.Events: this property will be removed in future releases, please inherit from L.Evented instead.",new Error().stack)}}var De={on:function(e,r,u){if(typeof e=="object")for(var _ in e)this._on(_,e[_],r);else{e=G(e);for(var M=0,B=e.length;M<B;M++)this._on(e[M],r,u)}return this},off:function(e,r,u){if(!arguments.length)delete this._events;else if(typeof e=="object")for(var _ in e)this._off(_,e[_],r);else{e=G(e);for(var M=arguments.length===1,B=0,j=e.length;B<j;B++)M?this._off(e[B]):this._off(e[B],r,u)}return this},_on:function(e,r,u,_){if(typeof r!="function"){console.warn("wrong listener type: "+typeof r);return}if(this._listens(e,r,u)===!1){u===this&&(u=void 0);var M={fn:r,ctx:u};_&&(M.once=!0),this._events=this._events||{},this._events[e]=this._events[e]||[],this._events[e].push(M)}},_off:function(e,r,u){var _,M,B;if(this._events&&(_=this._events[e],!!_)){if(arguments.length===1){if(this._firingCount)for(M=0,B=_.length;M<B;M++)_[M].fn=x;delete this._events[e];return}if(typeof r!="function"){console.warn("wrong listener type: "+typeof r);return}var j=this._listens(e,r,u);if(j!==!1){var Y=_[j];this._firingCount&&(Y.fn=x,this._events[e]=_=_.slice()),_.splice(j,1)}}},fire:function(e,r,u){if(!this.listens(e,u))return this;var _=c({},r,{type:e,target:this,sourceTarget:r&&r.sourceTarget||this});if(this._events){var M=this._events[e];if(M){this._firingCount=this._firingCount+1||1;for(var B=0,j=M.length;B<j;B++){var Y=M[B],st=Y.fn;Y.once&&this.off(e,st,Y.ctx),st.call(Y.ctx||this,_)}this._firingCount--}}return u&&this._propagateEvent(_),this},listens:function(e,r,u,_){typeof e!="string"&&console.warn('"string" type argument expected');var M=r;typeof r!="function"&&(_=!!r,M=void 0,u=void 0);var B=this._events&&this._events[e];if(B&&B.length&&this._listens(e,M,u)!==!1)return!0;if(_){for(var j in this._eventParents)if(this._eventParents[j].listens(e,r,u,_))return!0}return!1},_listens:function(e,r,u){if(!this._events)return!1;var _=this._events[e]||[];if(!r)return!!_.length;u===this&&(u=void 0);for(var M=0,B=_.length;M<B;M++)if(_[M].fn===r&&_[M].ctx===u)return M;return!1},once:function(e,r,u){if(typeof e=="object")for(var _ in e)this._on(_,e[_],r,!0);else{e=G(e);for(var M=0,B=e.length;M<B;M++)this._on(e[M],r,u,!0)}return this},addEventParent:function(e){return this._eventParents=this._eventParents||{},this._eventParents[A(e)]=e,this},removeEventParent:function(e){return this._eventParents&&delete this._eventParents[A(e)],this},_propagateEvent:function(e){for(var r in this._eventParents)this._eventParents[r].fire(e.type,c({layer:e.target,propagatedFrom:e.target},e),!0)}};De.addEventListener=De.on,De.removeEventListener=De.clearAllEventListeners=De.off,De.addOneTimeEventListener=De.once,De.fireEvent=De.fire,De.hasEventListeners=De.listens;var en=pe.extend(De);function Pt(e,r,u){this.x=u?Math.round(e):e,this.y=u?Math.round(r):r}var Ss=Math.trunc||function(e){return e>0?Math.floor(e):Math.ceil(e)};Pt.prototype={clone:function(){return new Pt(this.x,this.y)},add:function(e){return this.clone()._add(Ct(e))},_add:function(e){return this.x+=e.x,this.y+=e.y,this},subtract:function(e){return this.clone()._subtract(Ct(e))},_subtract:function(e){return this.x-=e.x,this.y-=e.y,this},divideBy:function(e){return this.clone()._divideBy(e)},_divideBy:function(e){return this.x/=e,this.y/=e,this},multiplyBy:function(e){return this.clone()._multiplyBy(e)},_multiplyBy:function(e){return this.x*=e,this.y*=e,this},scaleBy:function(e){return new Pt(this.x*e.x,this.y*e.y)},unscaleBy:function(e){return new Pt(this.x/e.x,this.y/e.y)},round:function(){return this.clone()._round()},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this},floor:function(){return this.clone()._floor()},_floor:function(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this},ceil:function(){return this.clone()._ceil()},_ceil:function(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this},trunc:function(){return this.clone()._trunc()},_trunc:function(){return this.x=Ss(this.x),this.y=Ss(this.y),this},distanceTo:function(e){e=Ct(e);var r=e.x-this.x,u=e.y-this.y;return Math.sqrt(r*r+u*u)},equals:function(e){return e=Ct(e),e.x===this.x&&e.y===this.y},contains:function(e){return e=Ct(e),Math.abs(e.x)<=Math.abs(this.x)&&Math.abs(e.y)<=Math.abs(this.y)},toString:function(){return"Point("+b(this.x)+", "+b(this.y)+")"}};function Ct(e,r,u){return e instanceof Pt?e:ct(e)?new Pt(e[0],e[1]):e==null?e:typeof e=="object"&&"x"in e&&"y"in e?new Pt(e.x,e.y):new Pt(e,r,u)}function te(e,r){if(e)for(var u=r?[e,r]:e,_=0,M=u.length;_<M;_++)this.extend(u[_])}te.prototype={extend:function(e){var r,u;if(!e)return this;if(e instanceof Pt||typeof e[0]=="number"||"x"in e)r=u=Ct(e);else if(e=we(e),r=e.min,u=e.max,!r||!u)return this;return!this.min&&!this.max?(this.min=r.clone(),this.max=u.clone()):(this.min.x=Math.min(r.x,this.min.x),this.max.x=Math.max(u.x,this.max.x),this.min.y=Math.min(r.y,this.min.y),this.max.y=Math.max(u.y,this.max.y)),this},getCenter:function(e){return Ct((this.min.x+this.max.x)/2,(this.min.y+this.max.y)/2,e)},getBottomLeft:function(){return Ct(this.min.x,this.max.y)},getTopRight:function(){return Ct(this.max.x,this.min.y)},getTopLeft:function(){return this.min},getBottomRight:function(){return this.max},getSize:function(){return this.max.subtract(this.min)},contains:function(e){var r,u;return typeof e[0]=="number"||e instanceof Pt?e=Ct(e):e=we(e),e instanceof te?(r=e.min,u=e.max):r=u=e,r.x>=this.min.x&&u.x<=this.max.x&&r.y>=this.min.y&&u.y<=this.max.y},intersects:function(e){e=we(e);var r=this.min,u=this.max,_=e.min,M=e.max,B=M.x>=r.x&&_.x<=u.x,j=M.y>=r.y&&_.y<=u.y;return B&&j},overlaps:function(e){e=we(e);var r=this.min,u=this.max,_=e.min,M=e.max,B=M.x>r.x&&_.x<u.x,j=M.y>r.y&&_.y<u.y;return B&&j},isValid:function(){return!!(this.min&&this.max)},pad:function(e){var r=this.min,u=this.max,_=Math.abs(r.x-u.x)*e,M=Math.abs(r.y-u.y)*e;return we(Ct(r.x-_,r.y-M),Ct(u.x+_,u.y+M))},equals:function(e){return e?(e=we(e),this.min.equals(e.getTopLeft())&&this.max.equals(e.getBottomRight())):!1}};function we(e,r){return!e||e instanceof te?e:new te(e,r)}function Ce(e,r){if(e)for(var u=r?[e,r]:e,_=0,M=u.length;_<M;_++)this.extend(u[_])}Ce.prototype={extend:function(e){var r=this._southWest,u=this._northEast,_,M;if(e instanceof Ht)_=e,M=e;else if(e instanceof Ce){if(_=e._southWest,M=e._northEast,!_||!M)return this}else return e?this.extend(Rt(e)||ae(e)):this;return!r&&!u?(this._southWest=new Ht(_.lat,_.lng),this._northEast=new Ht(M.lat,M.lng)):(r.lat=Math.min(_.lat,r.lat),r.lng=Math.min(_.lng,r.lng),u.lat=Math.max(M.lat,u.lat),u.lng=Math.max(M.lng,u.lng)),this},pad:function(e){var r=this._southWest,u=this._northEast,_=Math.abs(r.lat-u.lat)*e,M=Math.abs(r.lng-u.lng)*e;return new Ce(new Ht(r.lat-_,r.lng-M),new Ht(u.lat+_,u.lng+M))},getCenter:function(){return new Ht((this._southWest.lat+this._northEast.lat)/2,(this._southWest.lng+this._northEast.lng)/2)},getSouthWest:function(){return this._southWest},getNorthEast:function(){return this._northEast},getNorthWest:function(){return new Ht(this.getNorth(),this.getWest())},getSouthEast:function(){return new Ht(this.getSouth(),this.getEast())},getWest:function(){return this._southWest.lng},getSouth:function(){return this._southWest.lat},getEast:function(){return this._northEast.lng},getNorth:function(){return this._northEast.lat},contains:function(e){typeof e[0]=="number"||e instanceof Ht||"lat"in e?e=Rt(e):e=ae(e);var r=this._southWest,u=this._northEast,_,M;return e instanceof Ce?(_=e.getSouthWest(),M=e.getNorthEast()):_=M=e,_.lat>=r.lat&&M.lat<=u.lat&&_.lng>=r.lng&&M.lng<=u.lng},intersects:function(e){e=ae(e);var r=this._southWest,u=this._northEast,_=e.getSouthWest(),M=e.getNorthEast(),B=M.lat>=r.lat&&_.lat<=u.lat,j=M.lng>=r.lng&&_.lng<=u.lng;return B&&j},overlaps:function(e){e=ae(e);var r=this._southWest,u=this._northEast,_=e.getSouthWest(),M=e.getNorthEast(),B=M.lat>r.lat&&_.lat<u.lat,j=M.lng>r.lng&&_.lng<u.lng;return B&&j},toBBoxString:function(){return[this.getWest(),this.getSouth(),this.getEast(),this.getNorth()].join(",")},equals:function(e,r){return e?(e=ae(e),this._southWest.equals(e.getSouthWest(),r)&&this._northEast.equals(e.getNorthEast(),r)):!1},isValid:function(){return!!(this._southWest&&this._northEast)}};function ae(e,r){return e instanceof Ce?e:new Ce(e,r)}function Ht(e,r,u){if(isNaN(e)||isNaN(r))throw new Error("Invalid LatLng object: ("+e+", "+r+")");this.lat=+e,this.lng=+r,u!==void 0&&(this.alt=+u)}Ht.prototype={equals:function(e,r){if(!e)return!1;e=Rt(e);var u=Math.max(Math.abs(this.lat-e.lat),Math.abs(this.lng-e.lng));return u<=(r===void 0?1e-9:r)},toString:function(e){return"LatLng("+b(this.lat,e)+", "+b(this.lng,e)+")"},distanceTo:function(e){return fi.distance(this,Rt(e))},wrap:function(){return fi.wrapLatLng(this)},toBounds:function(e){var r=180*e/40075017,u=r/Math.cos(Math.PI/180*this.lat);return ae([this.lat-r,this.lng-u],[this.lat+r,this.lng+u])},clone:function(){return new Ht(this.lat,this.lng,this.alt)}};function Rt(e,r,u){return e instanceof Ht?e:ct(e)&&typeof e[0]!="object"?e.length===3?new Ht(e[0],e[1],e[2]):e.length===2?new Ht(e[0],e[1]):null:e==null?e:typeof e=="object"&&"lat"in e?new Ht(e.lat,"lng"in e?e.lng:e.lon,e.alt):r===void 0?null:new Ht(e,r,u)}var si={latLngToPoint:function(e,r){var u=this.projection.project(e),_=this.scale(r);return this.transformation._transform(u,_)},pointToLatLng:function(e,r){var u=this.scale(r),_=this.transformation.untransform(e,u);return this.projection.unproject(_)},project:function(e){return this.projection.project(e)},unproject:function(e){return this.projection.unproject(e)},scale:function(e){return 256*Math.pow(2,e)},zoom:function(e){return Math.log(e/256)/Math.LN2},getProjectedBounds:function(e){if(this.infinite)return null;var r=this.projection.bounds,u=this.scale(e),_=this.transformation.transform(r.min,u),M=this.transformation.transform(r.max,u);return new te(_,M)},infinite:!1,wrapLatLng:function(e){var r=this.wrapLng?C(e.lng,this.wrapLng,!0):e.lng,u=this.wrapLat?C(e.lat,this.wrapLat,!0):e.lat,_=e.alt;return new Ht(u,r,_)},wrapLatLngBounds:function(e){var r=e.getCenter(),u=this.wrapLatLng(r),_=r.lat-u.lat,M=r.lng-u.lng;if(_===0&&M===0)return e;var B=e.getSouthWest(),j=e.getNorthEast(),Y=new Ht(B.lat-_,B.lng-M),st=new Ht(j.lat-_,j.lng-M);return new Ce(Y,st)}},fi=c({},si,{wrapLng:[-180,180],R:6371e3,distance:function(e,r){var u=Math.PI/180,_=e.lat*u,M=r.lat*u,B=Math.sin((r.lat-e.lat)*u/2),j=Math.sin((r.lng-e.lng)*u/2),Y=B*B+Math.cos(_)*Math.cos(M)*j*j,st=2*Math.atan2(Math.sqrt(Y),Math.sqrt(1-Y));return this.R*st}}),nn=6378137,Ts={R:nn,MAX_LATITUDE:85.0511287798,project:function(e){var r=Math.PI/180,u=this.MAX_LATITUDE,_=Math.max(Math.min(u,e.lat),-u),M=Math.sin(_*r);return new Pt(this.R*e.lng*r,this.R*Math.log((1+M)/(1-M))/2)},unproject:function(e){var r=180/Math.PI;return new Ht((2*Math.atan(Math.exp(e.y/this.R))-Math.PI/2)*r,e.x*r/this.R)},bounds:function(){var e=nn*Math.PI;return new te([-e,-e],[e,e])}()};function Ds(e,r,u,_){if(ct(e)){this._a=e[0],this._b=e[1],this._c=e[2],this._d=e[3];return}this._a=e,this._b=r,this._c=u,this._d=_}Ds.prototype={transform:function(e,r){return this._transform(e.clone(),r)},_transform:function(e,r){return r=r||1,e.x=r*(this._a*e.x+this._b),e.y=r*(this._c*e.y+this._d),e},untransform:function(e,r){return r=r||1,new Pt((e.x/r-this._b)/this._a,(e.y/r-this._d)/this._c)}};function sn(e,r,u,_){return new Ds(e,r,u,_)}var Os=c({},fi,{code:"EPSG:3857",projection:Ts,transformation:function(){var e=.5/(Math.PI*Ts.R);return sn(e,.5,-e,.5)}()}),Ia=c({},Os,{code:"EPSG:900913"});function Ra(e){return document.createElementNS("http://www.w3.org/2000/svg",e)}function Ga(e,r){var u="",_,M,B,j,Y,st;for(_=0,B=e.length;_<B;_++){for(Y=e[_],M=0,j=Y.length;M<j;M++)st=Y[M],u+=(M?"L":"M")+st.x+" "+st.y;u+=r?Mt.svg?"z":"x":""}return u||"M0 0"}var Tn=document.documentElement.style,Fi="ActiveXObject"in window,Fa=Fi&&!document.addEventListener,za="msLaunchUri"in navigator&&!("documentMode"in document),Is=je("webkit"),Na=je("android"),Ua=je("android 2")||je("android 3"),vo=parseInt(/WebKit\/([0-9]+)|$/.exec(navigator.userAgent)[1],10),Ao=Na&&je("Google")&&vo<537&&!("AudioNode"in window),Rs=!!window.opera,Za=!za&&je("chrome"),ja=je("gecko")&&!Is&&!Rs&&!Fi,qa=!Za&&je("safari"),Gs=je("phantom"),Ha="OTransition"in Tn,zi=navigator.platform.indexOf("Win")===0,Va=Fi&&"transition"in Tn,Dn="WebKitCSSMatrix"in window&&"m11"in new window.WebKitCSSMatrix&&!Ua,Ni="MozPerspective"in Tn,$a=!window.L_DISABLE_3D&&(Va||Dn||Ni)&&!Ha&&!Gs,xi=typeof orientation<"u"||je("mobile"),Mo=xi&&Is,xo=xi&&Dn,Fs=!window.PointerEvent&&window.MSPointerEvent,Wa=!!(window.PointerEvent||Fs),Ka="ontouchstart"in window||!!window.TouchEvent,Lo=!window.L_NO_TOUCH&&(Ka||Wa),bo=xi&&Rs,Xa=xi&&ja,Ya=(window.devicePixelRatio||window.screen.deviceXDPI/window.screen.logicalXDPI)>1,wo=function(){var e=!1;try{var r=Object.defineProperty({},"passive",{get:function(){e=!0}});window.addEventListener("testPassiveEventSupport",x,r),window.removeEventListener("testPassiveEventSupport",x,r)}catch{}return e}(),Co=function(){return!!document.createElement("canvas").getContext}(),zs=!!(document.createElementNS&&Ra("svg").createSVGRect),Ja=!!zs&&function(){var e=document.createElement("div");return e.innerHTML="<svg/>",(e.firstChild&&e.firstChild.namespaceURI)==="http://www.w3.org/2000/svg"}(),Eo=!zs&&function(){try{var e=document.createElement("div");e.innerHTML='<v:shape adj="1"/>';var r=e.firstChild;return r.style.behavior="url(#default#VML)",r&&typeof r.adj=="object"}catch{return!1}}(),Po=navigator.platform.indexOf("Mac")===0,ko=navigator.platform.indexOf("Linux")===0;function je(e){return navigator.userAgent.toLowerCase().indexOf(e)>=0}var Mt={ie:Fi,ielt9:Fa,edge:za,webkit:Is,android:Na,android23:Ua,androidStock:Ao,opera:Rs,chrome:Za,gecko:ja,safari:qa,phantom:Gs,opera12:Ha,win:zi,ie3d:Va,webkit3d:Dn,gecko3d:Ni,any3d:$a,mobile:xi,mobileWebkit:Mo,mobileWebkit3d:xo,msPointer:Fs,pointer:Wa,touch:Lo,touchNative:Ka,mobileOpera:bo,mobileGecko:Xa,retina:Ya,passiveEvents:wo,canvas:Co,svg:zs,vml:Eo,inlineSvg:Ja,mac:Po,linux:ko},Qa=Mt.msPointer?"MSPointerDown":"pointerdown",tr=Mt.msPointer?"MSPointerMove":"pointermove",Ns=Mt.msPointer?"MSPointerUp":"pointerup",er=Mt.msPointer?"MSPointerCancel":"pointercancel",Us={touchstart:Qa,touchmove:tr,touchend:Ns,touchcancel:er},ir={touchstart:Oo,touchmove:In,touchend:In,touchcancel:In},Ui={},nr=!1;function Bo(e,r,u){return r==="touchstart"&&Zs(),ir[r]?(u=ir[r].bind(this,u),e.addEventListener(Us[r],u,!1),u):(console.warn("wrong event specified:",r),x)}function So(e,r,u){if(!Us[r]){console.warn("wrong event specified:",r);return}e.removeEventListener(Us[r],u,!1)}function To(e){Ui[e.pointerId]=e}function Do(e){Ui[e.pointerId]&&(Ui[e.pointerId]=e)}function On(e){delete Ui[e.pointerId]}function Zs(){nr||(document.addEventListener(Qa,To,!0),document.addEventListener(tr,Do,!0),document.addEventListener(Ns,On,!0),document.addEventListener(er,On,!0),nr=!0)}function In(e,r){if(r.pointerType!==(r.MSPOINTER_TYPE_MOUSE||"mouse")){r.touches=[];for(var u in Ui)r.touches.push(Ui[u]);r.changedTouches=[r],e(r)}}function Oo(e,r){r.MSPOINTER_TYPE_TOUCH&&r.pointerType===r.MSPOINTER_TYPE_TOUCH&&ce(r),In(e,r)}function Io(e){var r={},u,_;for(_ in e)u=e[_],r[_]=u&&u.bind?u.bind(e):u;return e=r,r.type="dblclick",r.detail=2,r.isTrusted=!1,r._simulated=!0,r}var Ro=200;function Go(e,r){e.addEventListener("dblclick",r);var u=0,_;function M(B){if(B.detail!==1){_=B.detail;return}if(!(B.pointerType==="mouse"||B.sourceCapabilities&&!B.sourceCapabilities.firesTouchEvents)){var j=hr(B);if(!(j.some(function(st){return st instanceof HTMLLabelElement&&st.attributes.for})&&!j.some(function(st){return st instanceof HTMLInputElement||st instanceof HTMLSelectElement}))){var Y=Date.now();Y-u<=Ro?(_++,_===2&&r(Io(B))):_=1,u=Y}}}return e.addEventListener("click",M),{dblclick:r,simDblclick:M}}function Fo(e,r){e.removeEventListener("dblclick",r.dblclick),e.removeEventListener("click",r.simDblclick)}var js=Gn(["transform","webkitTransform","OTransform","MozTransform","msTransform"]),an=Gn(["webkitTransition","transition","OTransition","MozTransition","msTransition"]),sr=an==="webkitTransition"||an==="OTransition"?an+"End":"transitionend";function ar(e){return typeof e=="string"?document.getElementById(e):e}function pi(e,r){var u=e.style[r]||e.currentStyle&&e.currentStyle[r];if((!u||u==="auto")&&document.defaultView){var _=document.defaultView.getComputedStyle(e,null);u=_?_[r]:null}return u==="auto"?null:u}function Nt(e,r,u){var _=document.createElement(e);return _.className=r||"",u&&u.appendChild(_),_}function Qt(e){var r=e.parentNode;r&&r.removeChild(e)}function rn(e){for(;e.firstChild;)e.removeChild(e.firstChild)}function Zi(e){var r=e.parentNode;r&&r.lastChild!==e&&r.appendChild(e)}function Li(e){var r=e.parentNode;r&&r.firstChild!==e&&r.insertBefore(e,r.firstChild)}function qs(e,r){if(e.classList!==void 0)return e.classList.contains(r);var u=Rn(e);return u.length>0&&new RegExp("(^|\\s)"+r+"(\\s|$)").test(u)}function Tt(e,r){if(e.classList!==void 0)for(var u=G(r),_=0,M=u.length;_<M;_++)e.classList.add(u[_]);else if(!qs(e,r)){var B=Rn(e);Hs(e,(B?B+" ":"")+r)}}function ne(e,r){e.classList!==void 0?e.classList.remove(r):Hs(e,T((" "+Rn(e)+" ").replace(" "+r+" "," ")))}function Hs(e,r){e.className.baseVal===void 0?e.className=r:e.className.baseVal=r}function Rn(e){return e.correspondingElement&&(e=e.correspondingElement),e.className.baseVal===void 0?e.className:e.className.baseVal}function Ne(e,r){"opacity"in e.style?e.style.opacity=r:"filter"in e.style&&zo(e,r)}function zo(e,r){var u=!1,_="DXImageTransform.Microsoft.Alpha";try{u=e.filters.item(_)}catch{if(r===1)return}r=Math.round(r*100),u?(u.Enabled=r!==100,u.Opacity=r):e.style.filter+=" progid:"+_+"(opacity="+r+")"}function Gn(e){for(var r=document.documentElement.style,u=0;u<e.length;u++)if(e[u]in r)return e[u];return!1}function bi(e,r,u){var _=r||new Pt(0,0);e.style[js]=(Mt.ie3d?"translate("+_.x+"px,"+_.y+"px)":"translate3d("+_.x+"px,"+_.y+"px,0)")+(u?" scale("+u+")":"")}function re(e,r){e._leaflet_pos=r,Mt.any3d?bi(e,r):(e.style.left=r.x+"px",e.style.top=r.y+"px")}function wi(e){return e._leaflet_pos||new Pt(0,0)}var on,hn,Vs;if("onselectstart"in document)on=function(){St(window,"selectstart",ce)},hn=function(){Wt(window,"selectstart",ce)};else{var ji=Gn(["userSelect","WebkitUserSelect","OUserSelect","MozUserSelect","msUserSelect"]);on=function(){if(ji){var e=document.documentElement.style;Vs=e[ji],e[ji]="none"}},hn=function(){ji&&(document.documentElement.style[ji]=Vs,Vs=void 0)}}function $s(){St(window,"dragstart",ce)}function Ws(){Wt(window,"dragstart",ce)}var Fn,Ks;function Xs(e){for(;e.tabIndex===-1;)e=e.parentNode;e.style&&(zn(),Fn=e,Ks=e.style.outlineStyle,e.style.outlineStyle="none",St(window,"keydown",zn))}function zn(){Fn&&(Fn.style.outlineStyle=Ks,Fn=void 0,Ks=void 0,Wt(window,"keydown",zn))}function rr(e){do e=e.parentNode;while((!e.offsetWidth||!e.offsetHeight)&&e!==document.body);return e}function Ys(e){var r=e.getBoundingClientRect();return{x:r.width/e.offsetWidth||1,y:r.height/e.offsetHeight||1,boundingClientRect:r}}var No={__proto__:null,TRANSFORM:js,TRANSITION:an,TRANSITION_END:sr,get:ar,getStyle:pi,create:Nt,remove:Qt,empty:rn,toFront:Zi,toBack:Li,hasClass:qs,addClass:Tt,removeClass:ne,setClass:Hs,getClass:Rn,setOpacity:Ne,testProp:Gn,setTransform:bi,setPosition:re,getPosition:wi,get disableTextSelection(){return on},get enableTextSelection(){return hn},disableImageDrag:$s,enableImageDrag:Ws,preventOutline:Xs,restoreOutline:zn,getSizedParentNode:rr,getScale:Ys};function St(e,r,u,_){if(r&&typeof r=="object")for(var M in r)Qs(e,M,r[M],u);else{r=G(r);for(var B=0,j=r.length;B<j;B++)Qs(e,r[B],u,_)}return this}var $e="_leaflet_events";function Wt(e,r,u,_){if(arguments.length===1)or(e),delete e[$e];else if(r&&typeof r=="object")for(var M in r)_i(e,M,r[M],u);else if(r=G(r),arguments.length===2)or(e,function(Y){return yt(r,Y)!==-1});else for(var B=0,j=r.length;B<j;B++)_i(e,r[B],u,_);return this}function or(e,r){for(var u in e[$e]){var _=u.split(/\d/)[0];(!r||r(_))&&_i(e,_,null,null,u)}}var Js={mouseenter:"mouseover",mouseleave:"mouseout",wheel:!("onwheel"in window)&&"mousewheel"};function Qs(e,r,u,_){var M=r+A(u)+(_?"_"+A(_):"");if(e[$e]&&e[$e][M])return this;var B=function(Y){return u.call(_||e,Y||window.event)},j=B;!Mt.touchNative&&Mt.pointer&&r.indexOf("touch")===0?B=Bo(e,r,B):Mt.touch&&r==="dblclick"?B=Go(e,B):"addEventListener"in e?r==="touchstart"||r==="touchmove"||r==="wheel"||r==="mousewheel"?e.addEventListener(Js[r]||r,B,Mt.passiveEvents?{passive:!1}:!1):r==="mouseenter"||r==="mouseleave"?(B=function(Y){Y=Y||window.event,ea(e,Y)&&j(Y)},e.addEventListener(Js[r],B,!1)):e.addEventListener(r,j,!1):e.attachEvent("on"+r,B),e[$e]=e[$e]||{},e[$e][M]=B}function _i(e,r,u,_,M){M=M||r+A(u)+(_?"_"+A(_):"");var B=e[$e]&&e[$e][M];if(!B)return this;!Mt.touchNative&&Mt.pointer&&r.indexOf("touch")===0?So(e,r,B):Mt.touch&&r==="dblclick"?Fo(e,B):"removeEventListener"in e?e.removeEventListener(Js[r]||r,B,!1):e.detachEvent("on"+r,B),e[$e][M]=null}function Ci(e){return e.stopPropagation?e.stopPropagation():e.originalEvent?e.originalEvent._stopped=!0:e.cancelBubble=!0,this}function ta(e){return Qs(e,"wheel",Ci),this}function ln(e){return St(e,"mousedown touchstart dblclick contextmenu",Ci),e._leaflet_disable_click=!0,this}function ce(e){return e.preventDefault?e.preventDefault():e.returnValue=!1,this}function Ei(e){return ce(e),Ci(e),this}function hr(e){if(e.composedPath)return e.composedPath();for(var r=[],u=e.target;u;)r.push(u),u=u.parentNode;return r}function lr(e,r){if(!r)return new Pt(e.clientX,e.clientY);var u=Ys(r),_=u.boundingClientRect;return new Pt((e.clientX-_.left)/u.x-r.clientLeft,(e.clientY-_.top)/u.y-r.clientTop)}var Uo=Mt.linux&&Mt.chrome?window.devicePixelRatio:Mt.mac?window.devicePixelRatio*3:window.devicePixelRatio>0?2*window.devicePixelRatio:1;function ur(e){return Mt.edge?e.wheelDeltaY/2:e.deltaY&&e.deltaMode===0?-e.deltaY/Uo:e.deltaY&&e.deltaMode===1?-e.deltaY*20:e.deltaY&&e.deltaMode===2?-e.deltaY*60:e.deltaX||e.deltaZ?0:e.wheelDelta?(e.wheelDeltaY||e.wheelDelta)/2:e.detail&&Math.abs(e.detail)<32765?-e.detail*20:e.detail?e.detail/-32765*60:0}function ea(e,r){var u=r.relatedTarget;if(!u)return!0;try{for(;u&&u!==e;)u=u.parentNode}catch{return!1}return u!==e}var Nn={__proto__:null,on:St,off:Wt,stopPropagation:Ci,disableScrollPropagation:ta,disableClickPropagation:ln,preventDefault:ce,stop:Ei,getPropagationPath:hr,getMousePosition:lr,getWheelDelta:ur,isExternalTarget:ea,addListener:St,removeListener:Wt},cr=en.extend({run:function(e,r,u,_){this.stop(),this._el=e,this._inProgress=!0,this._duration=u||.25,this._easeOutPower=1/Math.max(_||.5,.2),this._startPos=wi(e),this._offset=r.subtract(this._startPos),this._startTime=+new Date,this.fire("start"),this._animate()},stop:function(){this._inProgress&&(this._step(!0),this._complete())},_animate:function(){this._animId=Et(this._animate,this),this._step()},_step:function(e){var r=+new Date-this._startTime,u=this._duration*1e3;r<u?this._runFrame(this._easeOut(r/u),e):(this._runFrame(1),this._complete())},_runFrame:function(e,r){var u=this._startPos.add(this._offset.multiplyBy(e));r&&u._round(),re(this._el,u),this.fire("step")},_complete:function(){Zt(this._animId),this._inProgress=!1,this.fire("end")},_easeOut:function(e){return 1-Math.pow(1-e,this._easeOutPower)}}),Gt=en.extend({options:{crs:Os,center:void 0,zoom:void 0,minZoom:void 0,maxZoom:void 0,layers:[],maxBounds:void 0,renderer:void 0,zoomAnimation:!0,zoomAnimationThreshold:4,fadeAnimation:!0,markerZoomAnimation:!0,transform3DLimit:8388608,zoomSnap:1,zoomDelta:1,trackResize:!0},initialize:function(e,r){r=Z(this,r),this._handlers=[],this._layers={},this._zoomBoundLayers={},this._sizeChanged=!0,this._initContainer(e),this._initLayout(),this._onResize=p(this._onResize,this),this._initEvents(),r.maxBounds&&this.setMaxBounds(r.maxBounds),r.zoom!==void 0&&(this._zoom=this._limitZoom(r.zoom)),r.center&&r.zoom!==void 0&&this.setView(Rt(r.center),r.zoom,{reset:!0}),this.callInitHooks(),this._zoomAnimated=an&&Mt.any3d&&!Mt.mobileOpera&&this.options.zoomAnimation,this._zoomAnimated&&(this._createAnimProxy(),St(this._proxy,sr,this._catchTransitionEnd,this)),this._addLayers(this.options.layers)},setView:function(e,r,u){if(r=r===void 0?this._zoom:this._limitZoom(r),e=this._limitCenter(Rt(e),r,this.options.maxBounds),u=u||{},this._stop(),this._loaded&&!u.reset&&u!==!0){u.animate!==void 0&&(u.zoom=c({animate:u.animate},u.zoom),u.pan=c({animate:u.animate,duration:u.duration},u.pan));var _=this._zoom!==r?this._tryAnimatedZoom&&this._tryAnimatedZoom(e,r,u.zoom):this._tryAnimatedPan(e,u.pan);if(_)return clearTimeout(this._sizeTimer),this}return this._resetView(e,r,u.pan&&u.pan.noMoveStart),this},setZoom:function(e,r){return this._loaded?this.setView(this.getCenter(),e,{zoom:r}):(this._zoom=e,this)},zoomIn:function(e,r){return e=e||(Mt.any3d?this.options.zoomDelta:1),this.setZoom(this._zoom+e,r)},zoomOut:function(e,r){return e=e||(Mt.any3d?this.options.zoomDelta:1),this.setZoom(this._zoom-e,r)},setZoomAround:function(e,r,u){var _=this.getZoomScale(r),M=this.getSize().divideBy(2),B=e instanceof Pt?e:this.latLngToContainerPoint(e),j=B.subtract(M).multiplyBy(1-1/_),Y=this.containerPointToLatLng(M.add(j));return this.setView(Y,r,{zoom:u})},_getBoundsCenterZoom:function(e,r){r=r||{},e=e.getBounds?e.getBounds():ae(e);var u=Ct(r.paddingTopLeft||r.padding||[0,0]),_=Ct(r.paddingBottomRight||r.padding||[0,0]),M=this.getBoundsZoom(e,!1,u.add(_));if(M=typeof r.maxZoom=="number"?Math.min(r.maxZoom,M):M,M===1/0)return{center:e.getCenter(),zoom:M};var B=_.subtract(u).divideBy(2),j=this.project(e.getSouthWest(),M),Y=this.project(e.getNorthEast(),M),st=this.unproject(j.add(Y).divideBy(2).add(B),M);return{center:st,zoom:M}},fitBounds:function(e,r){if(e=ae(e),!e.isValid())throw new Error("Bounds are not valid.");var u=this._getBoundsCenterZoom(e,r);return this.setView(u.center,u.zoom,r)},fitWorld:function(e){return this.fitBounds([[-90,-180],[90,180]],e)},panTo:function(e,r){return this.setView(e,this._zoom,{pan:r})},panBy:function(e,r){if(e=Ct(e).round(),r=r||{},!e.x&&!e.y)return this.fire("moveend");if(r.animate!==!0&&!this.getSize().contains(e))return this._resetView(this.unproject(this.project(this.getCenter()).add(e)),this.getZoom()),this;if(this._panAnim||(this._panAnim=new cr,this._panAnim.on({step:this._onPanTransitionStep,end:this._onPanTransitionEnd},this)),r.noMoveStart||this.fire("movestart"),r.animate!==!1){Tt(this._mapPane,"leaflet-pan-anim");var u=this._getMapPanePos().subtract(e).round();this._panAnim.run(this._mapPane,u,r.duration||.25,r.easeLinearity)}else this._rawPanBy(e),this.fire("move").fire("moveend");return this},flyTo:function(e,r,u){if(u=u||{},u.animate===!1||!Mt.any3d)return this.setView(e,r,u);this._stop();var _=this.project(this.getCenter()),M=this.project(e),B=this.getSize(),j=this._zoom;e=Rt(e),r=r===void 0?j:r;var Y=Math.max(B.x,B.y),st=Y*this.getZoomScale(j,r),ht=M.distanceTo(_)||1,pt=1.42,wt=pt*pt;function Ot(se){var yn=se?-1:1,lh=se?st:Y,Qe=st*st-Y*Y+yn*wt*wt*ht*ht,uh=2*lh*wt*ht,Xi=Qe/uh,fa=Math.sqrt(Xi*Xi+1)-Xi,ch=fa<1e-9?-18:Math.log(fa);return ch}function xe(se){return(Math.exp(se)-Math.exp(-se))/2}function ue(se){return(Math.exp(se)+Math.exp(-se))/2}function ke(se){return xe(se)/ue(se)}var ee=Ot(0);function Je(se){return Y*(ue(ee)/ue(ee+pt*se))}function da(se){return Y*(ue(ee)*ke(ee+pt*se)-xe(ee))/wt}function os(se){return 1-Math.pow(1-se,1.5)}var Cr=Date.now(),gn=(Ot(1)-ee)/pt,hh=u.duration?1e3*u.duration:1e3*gn*.8;function Er(){var se=(Date.now()-Cr)/hh,yn=os(se)*gn;se<=1?(this._flyToFrame=Et(Er,this),this._move(this.unproject(_.add(M.subtract(_).multiplyBy(da(yn)/ht)),j),this.getScaleZoom(Y/Je(yn),j),{flyTo:!0})):this._move(e,r)._moveEnd(!0)}return this._moveStart(!0,u.noMoveStart),Er.call(this),this},flyToBounds:function(e,r){var u=this._getBoundsCenterZoom(e,r);return this.flyTo(u.center,u.zoom,r)},setMaxBounds:function(e){return e=ae(e),this.listens("moveend",this._panInsideMaxBounds)&&this.off("moveend",this._panInsideMaxBounds),e.isValid()?(this.options.maxBounds=e,this._loaded&&this._panInsideMaxBounds(),this.on("moveend",this._panInsideMaxBounds)):(this.options.maxBounds=null,this)},setMinZoom:function(e){var r=this.options.minZoom;return this.options.minZoom=e,this._loaded&&r!==e&&(this.fire("zoomlevelschange"),this.getZoom()<this.options.minZoom)?this.setZoom(e):this},setMaxZoom:function(e){var r=this.options.maxZoom;return this.options.maxZoom=e,this._loaded&&r!==e&&(this.fire("zoomlevelschange"),this.getZoom()>this.options.maxZoom)?this.setZoom(e):this},panInsideBounds:function(e,r){this._enforcingBounds=!0;var u=this.getCenter(),_=this._limitCenter(u,this._zoom,ae(e));return u.equals(_)||this.panTo(_,r),this._enforcingBounds=!1,this},panInside:function(e,r){r=r||{};var u=Ct(r.paddingTopLeft||r.padding||[0,0]),_=Ct(r.paddingBottomRight||r.padding||[0,0]),M=this.project(this.getCenter()),B=this.project(e),j=this.getPixelBounds(),Y=we([j.min.add(u),j.max.subtract(_)]),st=Y.getSize();if(!Y.contains(B)){this._enforcingBounds=!0;var ht=B.subtract(Y.getCenter()),pt=Y.extend(B).getSize().subtract(st);M.x+=ht.x<0?-pt.x:pt.x,M.y+=ht.y<0?-pt.y:pt.y,this.panTo(this.unproject(M),r),this._enforcingBounds=!1}return this},invalidateSize:function(e){if(!this._loaded)return this;e=c({animate:!1,pan:!0},e===!0?{animate:!0}:e);var r=this.getSize();this._sizeChanged=!0,this._lastCenter=null;var u=this.getSize(),_=r.divideBy(2).round(),M=u.divideBy(2).round(),B=_.subtract(M);return!B.x&&!B.y?this:(e.animate&&e.pan?this.panBy(B):(e.pan&&this._rawPanBy(B),this.fire("move"),e.debounceMoveend?(clearTimeout(this._sizeTimer),this._sizeTimer=setTimeout(p(this.fire,this,"moveend"),200)):this.fire("moveend")),this.fire("resize",{oldSize:r,newSize:u}))},stop:function(){return this.setZoom(this._limitZoom(this._zoom)),this.options.zoomSnap||this.fire("viewreset"),this._stop()},locate:function(e){if(e=this._locateOptions=c({timeout:1e4,watch:!1},e),!("geolocation"in navigator))return this._handleGeolocationError({code:0,message:"Geolocation not supported."}),this;var r=p(this._handleGeolocationResponse,this),u=p(this._handleGeolocationError,this);return e.watch?this._locationWatchId=navigator.geolocation.watchPosition(r,u,e):navigator.geolocation.getCurrentPosition(r,u,e),this},stopLocate:function(){return navigator.geolocation&&navigator.geolocation.clearWatch&&navigator.geolocation.clearWatch(this._locationWatchId),this._locateOptions&&(this._locateOptions.setView=!1),this},_handleGeolocationError:function(e){if(this._container._leaflet_id){var r=e.code,u=e.message||(r===1?"permission denied":r===2?"position unavailable":"timeout");this._locateOptions.setView&&!this._loaded&&this.fitWorld(),this.fire("locationerror",{code:r,message:"Geolocation error: "+u+"."})}},_handleGeolocationResponse:function(e){if(this._container._leaflet_id){var r=e.coords.latitude,u=e.coords.longitude,_=new Ht(r,u),M=_.toBounds(e.coords.accuracy*2),B=this._locateOptions;if(B.setView){var j=this.getBoundsZoom(M);this.setView(_,B.maxZoom?Math.min(j,B.maxZoom):j)}var Y={latlng:_,bounds:M,timestamp:e.timestamp};for(var st in e.coords)typeof e.coords[st]=="number"&&(Y[st]=e.coords[st]);this.fire("locationfound",Y)}},addHandler:function(e,r){if(!r)return this;var u=this[e]=new r(this);return this._handlers.push(u),this.options[e]&&u.enable(),this},remove:function(){if(this._initEvents(!0),this.options.maxBounds&&this.off("moveend",this._panInsideMaxBounds),this._containerId!==this._container._leaflet_id)throw new Error("Map container is being reused by another instance");try{delete this._container._leaflet_id,delete this._containerId}catch{this._container._leaflet_id=void 0,this._containerId=void 0}this._locationWatchId!==void 0&&this.stopLocate(),this._stop(),Qt(this._mapPane),this._clearControlPos&&this._clearControlPos(),this._resizeRequest&&(Zt(this._resizeRequest),this._resizeRequest=null),this._clearHandlers(),this._loaded&&this.fire("unload");var e;for(e in this._layers)this._layers[e].remove();for(e in this._panes)Qt(this._panes[e]);return this._layers=[],this._panes=[],delete this._mapPane,delete this._renderer,this},createPane:function(e,r){var u="leaflet-pane"+(e?" leaflet-"+e.replace("Pane","")+"-pane":""),_=Nt("div",u,r||this._mapPane);return e&&(this._panes[e]=_),_},getCenter:function(){return this._checkIfLoaded(),this._lastCenter&&!this._moved()?this._lastCenter.clone():this.layerPointToLatLng(this._getCenterLayerPoint())},getZoom:function(){return this._zoom},getBounds:function(){var e=this.getPixelBounds(),r=this.unproject(e.getBottomLeft()),u=this.unproject(e.getTopRight());return new Ce(r,u)},getMinZoom:function(){return this.options.minZoom===void 0?this._layersMinZoom||0:this.options.minZoom},getMaxZoom:function(){return this.options.maxZoom===void 0?this._layersMaxZoom===void 0?1/0:this._layersMaxZoom:this.options.maxZoom},getBoundsZoom:function(e,r,u){e=ae(e),u=Ct(u||[0,0]);var _=this.getZoom()||0,M=this.getMinZoom(),B=this.getMaxZoom(),j=e.getNorthWest(),Y=e.getSouthEast(),st=this.getSize().subtract(u),ht=we(this.project(Y,_),this.project(j,_)).getSize(),pt=Mt.any3d?this.options.zoomSnap:1,wt=st.x/ht.x,Ot=st.y/ht.y,xe=r?Math.max(wt,Ot):Math.min(wt,Ot);return _=this.getScaleZoom(xe,_),pt&&(_=Math.round(_/(pt/100))*(pt/100),_=r?Math.ceil(_/pt)*pt:Math.floor(_/pt)*pt),Math.max(M,Math.min(B,_))},getSize:function(){return(!this._size||this._sizeChanged)&&(this._size=new Pt(this._container.clientWidth||0,this._container.clientHeight||0),this._sizeChanged=!1),this._size.clone()},getPixelBounds:function(e,r){var u=this._getTopLeftPoint(e,r);return new te(u,u.add(this.getSize()))},getPixelOrigin:function(){return this._checkIfLoaded(),this._pixelOrigin},getPixelWorldBounds:function(e){return this.options.crs.getProjectedBounds(e===void 0?this.getZoom():e)},getPane:function(e){return typeof e=="string"?this._panes[e]:e},getPanes:function(){return this._panes},getContainer:function(){return this._container},getZoomScale:function(e,r){var u=this.options.crs;return r=r===void 0?this._zoom:r,u.scale(e)/u.scale(r)},getScaleZoom:function(e,r){var u=this.options.crs;r=r===void 0?this._zoom:r;var _=u.zoom(e*u.scale(r));return isNaN(_)?1/0:_},project:function(e,r){return r=r===void 0?this._zoom:r,this.options.crs.latLngToPoint(Rt(e),r)},unproject:function(e,r){return r=r===void 0?this._zoom:r,this.options.crs.pointToLatLng(Ct(e),r)},layerPointToLatLng:function(e){var r=Ct(e).add(this.getPixelOrigin());return this.unproject(r)},latLngToLayerPoint:function(e){var r=this.project(Rt(e))._round();return r._subtract(this.getPixelOrigin())},wrapLatLng:function(e){return this.options.crs.wrapLatLng(Rt(e))},wrapLatLngBounds:function(e){return this.options.crs.wrapLatLngBounds(ae(e))},distance:function(e,r){return this.options.crs.distance(Rt(e),Rt(r))},containerPointToLayerPoint:function(e){return Ct(e).subtract(this._getMapPanePos())},layerPointToContainerPoint:function(e){return Ct(e).add(this._getMapPanePos())},containerPointToLatLng:function(e){var r=this.containerPointToLayerPoint(Ct(e));return this.layerPointToLatLng(r)},latLngToContainerPoint:function(e){return this.layerPointToContainerPoint(this.latLngToLayerPoint(Rt(e)))},mouseEventToContainerPoint:function(e){return lr(e,this._container)},mouseEventToLayerPoint:function(e){return this.containerPointToLayerPoint(this.mouseEventToContainerPoint(e))},mouseEventToLatLng:function(e){return this.layerPointToLatLng(this.mouseEventToLayerPoint(e))},_initContainer:function(e){var r=this._container=ar(e);if(r){if(r._leaflet_id)throw new Error("Map container is already initialized.")}else throw new Error("Map container not found.");St(r,"scroll",this._onScroll,this),this._containerId=A(r)},_initLayout:function(){var e=this._container;this._fadeAnimated=this.options.fadeAnimation&&Mt.any3d,Tt(e,"leaflet-container"+(Mt.touch?" leaflet-touch":"")+(Mt.retina?" leaflet-retina":"")+(Mt.ielt9?" leaflet-oldie":"")+(Mt.safari?" leaflet-safari":"")+(this._fadeAnimated?" leaflet-fade-anim":""));var r=pi(e,"position");r!=="absolute"&&r!=="relative"&&r!=="fixed"&&r!=="sticky"&&(e.style.position="relative"),this._initPanes(),this._initControlPos&&this._initControlPos()},_initPanes:function(){var e=this._panes={};this._paneRenderers={},this._mapPane=this.createPane("mapPane",this._container),re(this._mapPane,new Pt(0,0)),this.createPane("tilePane"),this.createPane("overlayPane"),this.createPane("shadowPane"),this.createPane("markerPane"),this.createPane("tooltipPane"),this.createPane("popupPane"),this.options.markerZoomAnimation||(Tt(e.markerPane,"leaflet-zoom-hide"),Tt(e.shadowPane,"leaflet-zoom-hide"))},_resetView:function(e,r,u){re(this._mapPane,new Pt(0,0));var _=!this._loaded;this._loaded=!0,r=this._limitZoom(r),this.fire("viewprereset");var M=this._zoom!==r;this._moveStart(M,u)._move(e,r)._moveEnd(M),this.fire("viewreset"),_&&this.fire("load")},_moveStart:function(e,r){return e&&this.fire("zoomstart"),r||this.fire("movestart"),this},_move:function(e,r,u,_){r===void 0&&(r=this._zoom);var M=this._zoom!==r;return this._zoom=r,this._lastCenter=e,this._pixelOrigin=this._getNewPixelOrigin(e),_?u&&u.pinch&&this.fire("zoom",u):((M||u&&u.pinch)&&this.fire("zoom",u),this.fire("move",u)),this},_moveEnd:function(e){return e&&this.fire("zoomend"),this.fire("moveend")},_stop:function(){return Zt(this._flyToFrame),this._panAnim&&this._panAnim.stop(),this},_rawPanBy:function(e){re(this._mapPane,this._getMapPanePos().subtract(e))},_getZoomSpan:function(){return this.getMaxZoom()-this.getMinZoom()},_panInsideMaxBounds:function(){this._enforcingBounds||this.panInsideBounds(this.options.maxBounds)},_checkIfLoaded:function(){if(!this._loaded)throw new Error("Set map center and zoom first.")},_initEvents:function(e){this._targets={},this._targets[A(this._container)]=this;var r=e?Wt:St;r(this._container,"click dblclick mousedown mouseup mouseover mouseout mousemove contextmenu keypress keydown keyup",this._handleDOMEvent,this),this.options.trackResize&&r(window,"resize",this._onResize,this),Mt.any3d&&this.options.transform3DLimit&&(e?this.off:this.on).call(this,"moveend",this._onMoveEnd)},_onResize:function(){Zt(this._resizeRequest),this._resizeRequest=Et(function(){this.invalidateSize({debounceMoveend:!0})},this)},_onScroll:function(){this._container.scrollTop=0,this._container.scrollLeft=0},_onMoveEnd:function(){var e=this._getMapPanePos();Math.max(Math.abs(e.x),Math.abs(e.y))>=this.options.transform3DLimit&&this._resetView(this.getCenter(),this.getZoom())},_findEventTargets:function(e,r){for(var u=[],_,M=r==="mouseout"||r==="mouseover",B=e.target||e.srcElement,j=!1;B;){if(_=this._targets[A(B)],_&&(r==="click"||r==="preclick")&&this._draggableMoved(_)){j=!0;break}if(_&&_.listens(r,!0)&&(M&&!ea(B,e)||(u.push(_),M))||B===this._container)break;B=B.parentNode}return!u.length&&!j&&!M&&this.listens(r,!0)&&(u=[this]),u},_isClickDisabled:function(e){for(;e&&e!==this._container;){if(e._leaflet_disable_click)return!0;e=e.parentNode}},_handleDOMEvent:function(e){var r=e.target||e.srcElement;if(!(!this._loaded||r._leaflet_disable_events||e.type==="click"&&this._isClickDisabled(r))){var u=e.type;u==="mousedown"&&Xs(r),this._fireDOMEvent(e,u)}},_mouseEvents:["click","dblclick","mouseover","mouseout","contextmenu"],_fireDOMEvent:function(e,r,u){if(e.type==="click"){var _=c({},e);_.type="preclick",this._fireDOMEvent(_,_.type,u)}var M=this._findEventTargets(e,r);if(u){for(var B=[],j=0;j<u.length;j++)u[j].listens(r,!0)&&B.push(u[j]);M=B.concat(M)}if(M.length){r==="contextmenu"&&ce(e);var Y=M[0],st={originalEvent:e};if(e.type!=="keypress"&&e.type!=="keydown"&&e.type!=="keyup"){var ht=Y.getLatLng&&(!Y._radius||Y._radius<=10);st.containerPoint=ht?this.latLngToContainerPoint(Y.getLatLng()):this.mouseEventToContainerPoint(e),st.layerPoint=this.containerPointToLayerPoint(st.containerPoint),st.latlng=ht?Y.getLatLng():this.layerPointToLatLng(st.layerPoint)}for(j=0;j<M.length;j++)if(M[j].fire(r,st,!0),st.originalEvent._stopped||M[j].options.bubblingMouseEvents===!1&&yt(this._mouseEvents,r)!==-1)return}},_draggableMoved:function(e){return e=e.dragging&&e.dragging.enabled()?e:this,e.dragging&&e.dragging.moved()||this.boxZoom&&this.boxZoom.moved()},_clearHandlers:function(){for(var e=0,r=this._handlers.length;e<r;e++)this._handlers[e].disable()},whenReady:function(e,r){return this._loaded?e.call(r||this,{target:this}):this.on("load",e,r),this},_getMapPanePos:function(){return wi(this._mapPane)||new Pt(0,0)},_moved:function(){var e=this._getMapPanePos();return e&&!e.equals([0,0])},_getTopLeftPoint:function(e,r){var u=e&&r!==void 0?this._getNewPixelOrigin(e,r):this.getPixelOrigin();return u.subtract(this._getMapPanePos())},_getNewPixelOrigin:function(e,r){var u=this.getSize()._divideBy(2);return this.project(e,r)._subtract(u)._add(this._getMapPanePos())._round()},_latLngToNewLayerPoint:function(e,r,u){var _=this._getNewPixelOrigin(u,r);return this.project(e,r)._subtract(_)},_latLngBoundsToNewLayerBounds:function(e,r,u){var _=this._getNewPixelOrigin(u,r);return we([this.project(e.getSouthWest(),r)._subtract(_),this.project(e.getNorthWest(),r)._subtract(_),this.project(e.getSouthEast(),r)._subtract(_),this.project(e.getNorthEast(),r)._subtract(_)])},_getCenterLayerPoint:function(){return this.containerPointToLayerPoint(this.getSize()._divideBy(2))},_getCenterOffset:function(e){return this.latLngToLayerPoint(e).subtract(this._getCenterLayerPoint())},_limitCenter:function(e,r,u){if(!u)return e;var _=this.project(e,r),M=this.getSize().divideBy(2),B=new te(_.subtract(M),_.add(M)),j=this._getBoundsOffset(B,u,r);return Math.abs(j.x)<=1&&Math.abs(j.y)<=1?e:this.unproject(_.add(j),r)},_limitOffset:function(e,r){if(!r)return e;var u=this.getPixelBounds(),_=new te(u.min.add(e),u.max.add(e));return e.add(this._getBoundsOffset(_,r))},_getBoundsOffset:function(e,r,u){var _=we(this.project(r.getNorthEast(),u),this.project(r.getSouthWest(),u)),M=_.min.subtract(e.min),B=_.max.subtract(e.max),j=this._rebound(M.x,-B.x),Y=this._rebound(M.y,-B.y);return new Pt(j,Y)},_rebound:function(e,r){return e+r>0?Math.round(e-r)/2:Math.max(0,Math.ceil(e))-Math.max(0,Math.floor(r))},_limitZoom:function(e){var r=this.getMinZoom(),u=this.getMaxZoom(),_=Mt.any3d?this.options.zoomSnap:1;return _&&(e=Math.round(e/_)*_),Math.max(r,Math.min(u,e))},_onPanTransitionStep:function(){this.fire("move")},_onPanTransitionEnd:function(){ne(this._mapPane,"leaflet-pan-anim"),this.fire("moveend")},_tryAnimatedPan:function(e,r){var u=this._getCenterOffset(e)._trunc();return(r&&r.animate)!==!0&&!this.getSize().contains(u)?!1:(this.panBy(u,r),!0)},_createAnimProxy:function(){var e=this._proxy=Nt("div","leaflet-proxy leaflet-zoom-animated");this._panes.mapPane.appendChild(e),this.on("zoomanim",function(r){var u=js,_=this._proxy.style[u];bi(this._proxy,this.project(r.center,r.zoom),this.getZoomScale(r.zoom,1)),_===this._proxy.style[u]&&this._animatingZoom&&this._onZoomTransitionEnd()},this),this.on("load moveend",this._animMoveEnd,this),this._on("unload",this._destroyAnimProxy,this)},_destroyAnimProxy:function(){Qt(this._proxy),this.off("load moveend",this._animMoveEnd,this),delete this._proxy},_animMoveEnd:function(){var e=this.getCenter(),r=this.getZoom();bi(this._proxy,this.project(e,r),this.getZoomScale(r,1))},_catchTransitionEnd:function(e){this._animatingZoom&&e.propertyName.indexOf("transform")>=0&&this._onZoomTransitionEnd()},_nothingToAnimate:function(){return!this._container.getElementsByClassName("leaflet-zoom-animated").length},_tryAnimatedZoom:function(e,r,u){if(this._animatingZoom)return!0;if(u=u||{},!this._zoomAnimated||u.animate===!1||this._nothingToAnimate()||Math.abs(r-this._zoom)>this.options.zoomAnimationThreshold)return!1;var _=this.getZoomScale(r),M=this._getCenterOffset(e)._divideBy(1-1/_);return u.animate!==!0&&!this.getSize().contains(M)?!1:(Et(function(){this._moveStart(!0,u.noMoveStart||!1)._animateZoom(e,r,!0)},this),!0)},_animateZoom:function(e,r,u,_){this._mapPane&&(u&&(this._animatingZoom=!0,this._animateToCenter=e,this._animateToZoom=r,Tt(this._mapPane,"leaflet-zoom-anim")),this.fire("zoomanim",{center:e,zoom:r,noUpdate:_}),this._tempFireZoomEvent||(this._tempFireZoomEvent=this._zoom!==this._animateToZoom),this._move(this._animateToCenter,this._animateToZoom,void 0,!0),setTimeout(p(this._onZoomTransitionEnd,this),250))},_onZoomTransitionEnd:function(){this._animatingZoom&&(this._mapPane&&ne(this._mapPane,"leaflet-zoom-anim"),this._animatingZoom=!1,this._move(this._animateToCenter,this._animateToZoom,void 0,!0),this._tempFireZoomEvent&&this.fire("zoom"),delete this._tempFireZoomEvent,this.fire("move"),this._moveEnd(!0))}});function dr(e,r){return new Gt(e,r)}var Bt=pe.extend({options:{position:"topright"},initialize:function(e){Z(this,e)},getPosition:function(){return this.options.position},setPosition:function(e){var r=this._map;return r&&r.removeControl(this),this.options.position=e,r&&r.addControl(this),this},getContainer:function(){return this._container},addTo:function(e){this.remove(),this._map=e;var r=this._container=this.onAdd(e),u=this.getPosition(),_=e._controlCorners[u];return Tt(r,"leaflet-control"),u.indexOf("bottom")!==-1?_.insertBefore(r,_.firstChild):_.appendChild(r),this._map.on("unload",this.remove,this),this},remove:function(){return this._map?(Qt(this._container),this.onRemove&&this.onRemove(this._map),this._map.off("unload",this.remove,this),this._map=null,this):this},_refocusOnMap:function(e){this._map&&e&&e.screenX>0&&e.screenY>0&&this._map.getContainer().focus()}}),Pi=function(e){return new Bt(e)};Gt.include({addControl:function(e){return e.addTo(this),this},removeControl:function(e){return e.remove(),this},_initControlPos:function(){var e=this._controlCorners={},r="leaflet-",u=this._controlContainer=Nt("div",r+"control-container",this._container);function _(M,B){var j=r+M+" "+r+B;e[M+B]=Nt("div",j,u)}_("top","left"),_("top","right"),_("bottom","left"),_("bottom","right")},_clearControlPos:function(){for(var e in this._controlCorners)Qt(this._controlCorners[e]);Qt(this._controlContainer),delete this._controlCorners,delete this._controlContainer}});var un=Bt.extend({options:{collapsed:!0,position:"topright",autoZIndex:!0,hideSingleBase:!1,sortLayers:!1,sortFunction:function(e,r,u,_){return u<_?-1:_<u?1:0}},initialize:function(e,r,u){Z(this,u),this._layerControlInputs=[],this._layers=[],this._lastZIndex=0,this._handlingClick=!1,this._preventClick=!1;for(var _ in e)this._addLayer(e[_],_);for(_ in r)this._addLayer(r[_],_,!0)},onAdd:function(e){this._initLayout(),this._update(),this._map=e,e.on("zoomend",this._checkDisabledLayers,this);for(var r=0;r<this._layers.length;r++)this._layers[r].layer.on("add remove",this._onLayerChange,this);return this._container},addTo:function(e){return Bt.prototype.addTo.call(this,e),this._expandIfNotCollapsed()},onRemove:function(){this._map.off("zoomend",this._checkDisabledLayers,this);for(var e=0;e<this._layers.length;e++)this._layers[e].layer.off("add remove",this._onLayerChange,this)},addBaseLayer:function(e,r){return this._addLayer(e,r),this._map?this._update():this},addOverlay:function(e,r){return this._addLayer(e,r,!0),this._map?this._update():this},removeLayer:function(e){e.off("add remove",this._onLayerChange,this);var r=this._getLayer(A(e));return r&&this._layers.splice(this._layers.indexOf(r),1),this._map?this._update():this},expand:function(){Tt(this._container,"leaflet-control-layers-expanded"),this._section.style.height=null;var e=this._map.getSize().y-(this._container.offsetTop+50);return e<this._section.clientHeight?(Tt(this._section,"leaflet-control-layers-scrollbar"),this._section.style.height=e+"px"):ne(this._section,"leaflet-control-layers-scrollbar"),this._checkDisabledLayers(),this},collapse:function(){return ne(this._container,"leaflet-control-layers-expanded"),this},_initLayout:function(){var e="leaflet-control-layers",r=this._container=Nt("div",e),u=this.options.collapsed;r.setAttribute("aria-haspopup",!0),ln(r),ta(r);var _=this._section=Nt("section",e+"-list");u&&(this._map.on("click",this.collapse,this),St(r,{mouseenter:this._expandSafely,mouseleave:this.collapse},this));var M=this._layersLink=Nt("a",e+"-toggle",r);M.href="#",M.title="Layers",M.setAttribute("role","button"),St(M,{keydown:function(B){B.keyCode===13&&this._expandSafely()},click:function(B){ce(B),this._expandSafely()}},this),u||this.expand(),this._baseLayersList=Nt("div",e+"-base",_),this._separator=Nt("div",e+"-separator",_),this._overlaysList=Nt("div",e+"-overlays",_),r.appendChild(_)},_getLayer:function(e){for(var r=0;r<this._layers.length;r++)if(this._layers[r]&&A(this._layers[r].layer)===e)return this._layers[r]},_addLayer:function(e,r,u){this._map&&e.on("add remove",this._onLayerChange,this),this._layers.push({layer:e,name:r,overlay:u}),this.options.sortLayers&&this._layers.sort(p(function(_,M){return this.options.sortFunction(_.layer,M.layer,_.name,M.name)},this)),this.options.autoZIndex&&e.setZIndex&&(this._lastZIndex++,e.setZIndex(this._lastZIndex)),this._expandIfNotCollapsed()},_update:function(){if(!this._container)return this;rn(this._baseLayersList),rn(this._overlaysList),this._layerControlInputs=[];var e,r,u,_,M=0;for(u=0;u<this._layers.length;u++)_=this._layers[u],this._addItem(_),r=r||_.overlay,e=e||!_.overlay,M+=_.overlay?0:1;return this.options.hideSingleBase&&(e=e&&M>1,this._baseLayersList.style.display=e?"":"none"),this._separator.style.display=r&&e?"":"none",this},_onLayerChange:function(e){this._handlingClick||this._update();var r=this._getLayer(A(e.target)),u=r.overlay?e.type==="add"?"overlayadd":"overlayremove":e.type==="add"?"baselayerchange":null;u&&this._map.fire(u,r)},_createRadioElement:function(e,r){var u='<input type="radio" class="leaflet-control-layers-selector" name="'+e+'"'+(r?' checked="checked"':"")+"/>",_=document.createElement("div");return _.innerHTML=u,_.firstChild},_addItem:function(e){var r=document.createElement("label"),u=this._map.hasLayer(e.layer),_;e.overlay?(_=document.createElement("input"),_.type="checkbox",_.className="leaflet-control-layers-selector",_.defaultChecked=u):_=this._createRadioElement("leaflet-base-layers_"+A(this),u),this._layerControlInputs.push(_),_.layerId=A(e.layer),St(_,"click",this._onInputClick,this);var M=document.createElement("span");M.innerHTML=" "+e.name;var B=document.createElement("span");r.appendChild(B),B.appendChild(_),B.appendChild(M);var j=e.overlay?this._overlaysList:this._baseLayersList;return j.appendChild(r),this._checkDisabledLayers(),r},_onInputClick:function(){if(!this._preventClick){var e=this._layerControlInputs,r,u,_=[],M=[];this._handlingClick=!0;for(var B=e.length-1;B>=0;B--)r=e[B],u=this._getLayer(r.layerId).layer,r.checked?_.push(u):r.checked||M.push(u);for(B=0;B<M.length;B++)this._map.hasLayer(M[B])&&this._map.removeLayer(M[B]);for(B=0;B<_.length;B++)this._map.hasLayer(_[B])||this._map.addLayer(_[B]);this._handlingClick=!1,this._refocusOnMap()}},_checkDisabledLayers:function(){for(var e=this._layerControlInputs,r,u,_=this._map.getZoom(),M=e.length-1;M>=0;M--)r=e[M],u=this._getLayer(r.layerId).layer,r.disabled=u.options.minZoom!==void 0&&_<u.options.minZoom||u.options.maxZoom!==void 0&&_>u.options.maxZoom},_expandIfNotCollapsed:function(){return this._map&&!this.options.collapsed&&this.expand(),this},_expandSafely:function(){var e=this._section;this._preventClick=!0,St(e,"click",ce),this.expand();var r=this;setTimeout(function(){Wt(e,"click",ce),r._preventClick=!1})}}),Zo=function(e,r,u){return new un(e,r,u)},Un=Bt.extend({options:{position:"topleft",zoomInText:'<span aria-hidden="true">+</span>',zoomInTitle:"Zoom in",zoomOutText:'<span aria-hidden="true">−</span>',zoomOutTitle:"Zoom out"},onAdd:function(e){var r="leaflet-control-zoom",u=Nt("div",r+" leaflet-bar"),_=this.options;return this._zoomInButton=this._createButton(_.zoomInText,_.zoomInTitle,r+"-in",u,this._zoomIn),this._zoomOutButton=this._createButton(_.zoomOutText,_.zoomOutTitle,r+"-out",u,this._zoomOut),this._updateDisabled(),e.on("zoomend zoomlevelschange",this._updateDisabled,this),u},onRemove:function(e){e.off("zoomend zoomlevelschange",this._updateDisabled,this)},disable:function(){return this._disabled=!0,this._updateDisabled(),this},enable:function(){return this._disabled=!1,this._updateDisabled(),this},_zoomIn:function(e){!this._disabled&&this._map._zoom<this._map.getMaxZoom()&&this._map.zoomIn(this._map.options.zoomDelta*(e.shiftKey?3:1))},_zoomOut:function(e){!this._disabled&&this._map._zoom>this._map.getMinZoom()&&this._map.zoomOut(this._map.options.zoomDelta*(e.shiftKey?3:1))},_createButton:function(e,r,u,_,M){var B=Nt("a",u,_);return B.innerHTML=e,B.href="#",B.title=r,B.setAttribute("role","button"),B.setAttribute("aria-label",r),ln(B),St(B,"click",Ei),St(B,"click",M,this),St(B,"click",this._refocusOnMap,this),B},_updateDisabled:function(){var e=this._map,r="leaflet-disabled";ne(this._zoomInButton,r),ne(this._zoomOutButton,r),this._zoomInButton.setAttribute("aria-disabled","false"),this._zoomOutButton.setAttribute("aria-disabled","false"),(this._disabled||e._zoom===e.getMinZoom())&&(Tt(this._zoomOutButton,r),this._zoomOutButton.setAttribute("aria-disabled","true")),(this._disabled||e._zoom===e.getMaxZoom())&&(Tt(this._zoomInButton,r),this._zoomInButton.setAttribute("aria-disabled","true"))}});Gt.mergeOptions({zoomControl:!0}),Gt.addInitHook(function(){this.options.zoomControl&&(this.zoomControl=new Un,this.addControl(this.zoomControl))});var jo=function(e){return new Un(e)},Zn=Bt.extend({options:{position:"bottomleft",maxWidth:100,metric:!0,imperial:!0},onAdd:function(e){var r="leaflet-control-scale",u=Nt("div",r),_=this.options;return this._addScales(_,r+"-line",u),e.on(_.updateWhenIdle?"moveend":"move",this._update,this),e.whenReady(this._update,this),u},onRemove:function(e){e.off(this.options.updateWhenIdle?"moveend":"move",this._update,this)},_addScales:function(e,r,u){e.metric&&(this._mScale=Nt("div",r,u)),e.imperial&&(this._iScale=Nt("div",r,u))},_update:function(){var e=this._map,r=e.getSize().y/2,u=e.distance(e.containerPointToLatLng([0,r]),e.containerPointToLatLng([this.options.maxWidth,r]));this._updateScales(u)},_updateScales:function(e){this.options.metric&&e&&this._updateMetric(e),this.options.imperial&&e&&this._updateImperial(e)},_updateMetric:function(e){var r=this._getRoundNum(e),u=r<1e3?r+" m":r/1e3+" km";this._updateScale(this._mScale,u,r/e)},_updateImperial:function(e){var r=e*3.2808399,u,_,M;r>5280?(u=r/5280,_=this._getRoundNum(u),this._updateScale(this._iScale,_+" mi",_/u)):(M=this._getRoundNum(r),this._updateScale(this._iScale,M+" ft",M/r))},_updateScale:function(e,r,u){e.style.width=Math.round(this.options.maxWidth*u)+"px",e.innerHTML=r},_getRoundNum:function(e){var r=Math.pow(10,(Math.floor(e)+"").length-1),u=e/r;return u=u>=10?10:u>=5?5:u>=3?3:u>=2?2:1,r*u}}),jn=function(e){return new Zn(e)},qo='<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" width="12" height="8" viewBox="0 0 12 8" class="leaflet-attribution-flag"><path fill="#4C7BE1" d="M0 0h12v4H0z"/><path fill="#FFD500" d="M0 4h12v3H0z"/><path fill="#E0BC00" d="M0 7h12v1H0z"/></svg>',We=Bt.extend({options:{position:"bottomright",prefix:'<a href="https://leafletjs.com" title="A JavaScript library for interactive maps">'+(Mt.inlineSvg?qo+" ":"")+"Leaflet</a>"},initialize:function(e){Z(this,e),this._attributions={}},onAdd:function(e){e.attributionControl=this,this._container=Nt("div","leaflet-control-attribution"),ln(this._container);for(var r in e._layers)e._layers[r].getAttribution&&this.addAttribution(e._layers[r].getAttribution());return this._update(),e.on("layeradd",this._addAttribution,this),this._container},onRemove:function(e){e.off("layeradd",this._addAttribution,this)},_addAttribution:function(e){e.layer.getAttribution&&(this.addAttribution(e.layer.getAttribution()),e.layer.once("remove",function(){this.removeAttribution(e.layer.getAttribution())},this))},setPrefix:function(e){return this.options.prefix=e,this._update(),this},addAttribution:function(e){return e?(this._attributions[e]||(this._attributions[e]=0),this._attributions[e]++,this._update(),this):this},removeAttribution:function(e){return e?(this._attributions[e]&&(this._attributions[e]--,this._update()),this):this},_update:function(){if(this._map){var e=[];for(var r in this._attributions)this._attributions[r]&&e.push(r);var u=[];this.options.prefix&&u.push(this.options.prefix),e.length&&u.push(e.join(", ")),this._container.innerHTML=u.join(' <span aria-hidden="true">|</span> ')}}});Gt.mergeOptions({attributionControl:!0}),Gt.addInitHook(function(){this.options.attributionControl&&new We().addTo(this)});var fr=function(e){return new We(e)};Bt.Layers=un,Bt.Zoom=Un,Bt.Scale=Zn,Bt.Attribution=We,Pi.layers=Zo,Pi.zoom=jo,Pi.scale=jn,Pi.attribution=fr;var ve=pe.extend({initialize:function(e){this._map=e},enable:function(){return this._enabled?this:(this._enabled=!0,this.addHooks(),this)},disable:function(){return this._enabled?(this._enabled=!1,this.removeHooks(),this):this},enabled:function(){return!!this._enabled}});ve.addTo=function(e,r){return e.addHandler(r,this),this};var Ho={Events:De},pr=Mt.touch?"touchstart mousedown":"mousedown",mi=en.extend({options:{clickTolerance:3},initialize:function(e,r,u,_){Z(this,_),this._element=e,this._dragStartTarget=r||e,this._preventOutline=u},enable:function(){this._enabled||(St(this._dragStartTarget,pr,this._onDown,this),this._enabled=!0)},disable:function(){this._enabled&&(mi._dragging===this&&this.finishDrag(!0),Wt(this._dragStartTarget,pr,this._onDown,this),this._enabled=!1,this._moved=!1)},_onDown:function(e){if(this._enabled&&(this._moved=!1,!qs(this._element,"leaflet-zoom-anim"))){if(e.touches&&e.touches.length!==1){mi._dragging===this&&this.finishDrag();return}if(!(mi._dragging||e.shiftKey||e.which!==1&&e.button!==1&&!e.touches)&&(mi._dragging=this,this._preventOutline&&Xs(this._element),$s(),on(),!this._moving)){this.fire("down");var r=e.touches?e.touches[0]:e,u=rr(this._element);this._startPoint=new Pt(r.clientX,r.clientY),this._startPos=wi(this._element),this._parentScale=Ys(u);var _=e.type==="mousedown";St(document,_?"mousemove":"touchmove",this._onMove,this),St(document,_?"mouseup":"touchend touchcancel",this._onUp,this)}}},_onMove:function(e){if(this._enabled){if(e.touches&&e.touches.length>1){this._moved=!0;return}var r=e.touches&&e.touches.length===1?e.touches[0]:e,u=new Pt(r.clientX,r.clientY)._subtract(this._startPoint);!u.x&&!u.y||Math.abs(u.x)+Math.abs(u.y)<this.options.clickTolerance||(u.x/=this._parentScale.x,u.y/=this._parentScale.y,ce(e),this._moved||(this.fire("dragstart"),this._moved=!0,Tt(document.body,"leaflet-dragging"),this._lastTarget=e.target||e.srcElement,window.SVGElementInstance&&this._lastTarget instanceof window.SVGElementInstance&&(this._lastTarget=this._lastTarget.correspondingUseElement),Tt(this._lastTarget,"leaflet-drag-target")),this._newPos=this._startPos.add(u),this._moving=!0,this._lastEvent=e,this._updatePosition())}},_updatePosition:function(){var e={originalEvent:this._lastEvent};this.fire("predrag",e),re(this._element,this._newPos),this.fire("drag",e)},_onUp:function(){this._enabled&&this.finishDrag()},finishDrag:function(e){ne(document.body,"leaflet-dragging"),this._lastTarget&&(ne(this._lastTarget,"leaflet-drag-target"),this._lastTarget=null),Wt(document,"mousemove touchmove",this._onMove,this),Wt(document,"mouseup touchend touchcancel",this._onUp,this),Ws(),hn();var r=this._moved&&this._moving;this._moving=!1,mi._dragging=!1,r&&this.fire("dragend",{noInertia:e,distance:this._newPos.distanceTo(this._startPos)})}});function _r(e,r,u){var _,M=[1,4,2,8],B,j,Y,st,ht,pt,wt,Ot;for(B=0,pt=e.length;B<pt;B++)e[B]._code=Ee(e[B],r);for(Y=0;Y<4;Y++){for(wt=M[Y],_=[],B=0,pt=e.length,j=pt-1;B<pt;j=B++)st=e[B],ht=e[j],st._code&wt?ht._code&wt||(Ot=gi(ht,st,wt,r,u),Ot._code=Ee(Ot,r),_.push(Ot)):(ht._code&wt&&(Ot=gi(ht,st,wt,r,u),Ot._code=Ee(Ot,r),_.push(Ot)),_.push(st));e=_}return e}function mr(e,r){var u,_,M,B,j,Y,st,ht,pt;if(!e||e.length===0)throw new Error("latlngs not passed");Pe(e)||(console.warn("latlngs are not flat! Only the first ring will be used"),e=e[0]);var wt=Rt([0,0]),Ot=ae(e),xe=Ot.getNorthWest().distanceTo(Ot.getSouthWest())*Ot.getNorthEast().distanceTo(Ot.getNorthWest());xe<1700&&(wt=ia(e));var ue=e.length,ke=[];for(u=0;u<ue;u++){var ee=Rt(e[u]);ke.push(r.project(Rt([ee.lat-wt.lat,ee.lng-wt.lng])))}for(Y=st=ht=0,u=0,_=ue-1;u<ue;_=u++)M=ke[u],B=ke[_],j=M.y*B.x-B.y*M.x,st+=(M.x+B.x)*j,ht+=(M.y+B.y)*j,Y+=j*3;Y===0?pt=ke[0]:pt=[st/Y,ht/Y];var Je=r.unproject(Ct(pt));return Rt([Je.lat+wt.lat,Je.lng+wt.lng])}function ia(e){for(var r=0,u=0,_=0,M=0;M<e.length;M++){var B=Rt(e[M]);r+=B.lat,u+=B.lng,_++}return Rt([r/_,u/_])}var Vo={__proto__:null,clipPolygon:_r,polygonCenter:mr,centroid:ia};function gr(e,r){if(!r||!e.length)return e.slice();var u=r*r;return e=yr(e,u),e=de(e,u),e}function na(e,r,u){return Math.sqrt(cn(e,r,u,!0))}function $o(e,r,u){return cn(e,r,u)}function de(e,r){var u=e.length,_=typeof Uint8Array<"u"?Uint8Array:Array,M=new _(u);M[0]=M[u-1]=1,_e(e,M,r,0,u-1);var B,j=[];for(B=0;B<u;B++)M[B]&&j.push(e[B]);return j}function _e(e,r,u,_,M){var B=0,j,Y,st;for(Y=_+1;Y<=M-1;Y++)st=cn(e[Y],e[_],e[M],!0),st>B&&(j=Y,B=st);B>u&&(r[j]=1,_e(e,r,u,_,j),_e(e,r,u,j,M))}function yr(e,r){for(var u=[e[0]],_=1,M=0,B=e.length;_<B;_++)Wo(e[_],e[M])>r&&(u.push(e[_]),M=_);return M<B-1&&u.push(e[B-1]),u}var ki;function Bi(e,r,u,_,M){var B=_?ki:Ee(e,u),j=Ee(r,u),Y,st,ht;for(ki=j;;){if(!(B|j))return[e,r];if(B&j)return!1;Y=B||j,st=gi(e,r,Y,u,M),ht=Ee(st,u),Y===B?(e=st,B=ht):(r=st,j=ht)}}function gi(e,r,u,_,M){var B=r.x-e.x,j=r.y-e.y,Y=_.min,st=_.max,ht,pt;return u&8?(ht=e.x+B*(st.y-e.y)/j,pt=st.y):u&4?(ht=e.x+B*(Y.y-e.y)/j,pt=Y.y):u&2?(ht=st.x,pt=e.y+j*(st.x-e.x)/B):u&1&&(ht=Y.x,pt=e.y+j*(Y.x-e.x)/B),new Pt(ht,pt,M)}function Ee(e,r){var u=0;return e.x<r.min.x?u|=1:e.x>r.max.x&&(u|=2),e.y<r.min.y?u|=4:e.y>r.max.y&&(u|=8),u}function Wo(e,r){var u=r.x-e.x,_=r.y-e.y;return u*u+_*_}function cn(e,r,u,_){var M=r.x,B=r.y,j=u.x-M,Y=u.y-B,st=j*j+Y*Y,ht;return st>0&&(ht=((e.x-M)*j+(e.y-B)*Y)/st,ht>1?(M=u.x,B=u.y):ht>0&&(M+=j*ht,B+=Y*ht)),j=e.x-M,Y=e.y-B,_?j*j+Y*Y:new Pt(M,B)}function Pe(e){return!ct(e[0])||typeof e[0][0]!="object"&&typeof e[0][0]<"u"}function Ue(e){return console.warn("Deprecated use of _flat, please use L.LineUtil.isFlat instead."),Pe(e)}function sa(e,r){var u,_,M,B,j,Y,st,ht;if(!e||e.length===0)throw new Error("latlngs not passed");Pe(e)||(console.warn("latlngs are not flat! Only the first ring will be used"),e=e[0]);var pt=Rt([0,0]),wt=ae(e),Ot=wt.getNorthWest().distanceTo(wt.getSouthWest())*wt.getNorthEast().distanceTo(wt.getNorthWest());Ot<1700&&(pt=ia(e));var xe=e.length,ue=[];for(u=0;u<xe;u++){var ke=Rt(e[u]);ue.push(r.project(Rt([ke.lat-pt.lat,ke.lng-pt.lng])))}for(u=0,_=0;u<xe-1;u++)_+=ue[u].distanceTo(ue[u+1])/2;if(_===0)ht=ue[0];else for(u=0,B=0;u<xe-1;u++)if(j=ue[u],Y=ue[u+1],M=j.distanceTo(Y),B+=M,B>_){st=(B-_)/M,ht=[Y.x-st*(Y.x-j.x),Y.y-st*(Y.y-j.y)];break}var ee=r.unproject(Ct(ht));return Rt([ee.lat+pt.lat,ee.lng+pt.lng])}var qn={__proto__:null,simplify:gr,pointToSegmentDistance:na,closestPointOnSegment:$o,clipSegment:Bi,_getEdgeIntersection:gi,_getBitCode:Ee,_sqClosestPointOnSegment:cn,isFlat:Pe,_flat:Ue,polylineCenter:sa},aa={project:function(e){return new Pt(e.lng,e.lat)},unproject:function(e){return new Ht(e.y,e.x)},bounds:new te([-180,-90],[180,90])},Ze={R:6378137,R_MINOR:6356752314245179e-9,bounds:new te([-2003750834279e-5,-1549657073972e-5],[2003750834279e-5,1876465623138e-5]),project:function(e){var r=Math.PI/180,u=this.R,_=e.lat*r,M=this.R_MINOR/u,B=Math.sqrt(1-M*M),j=B*Math.sin(_),Y=Math.tan(Math.PI/4-_/2)/Math.pow((1-j)/(1+j),B/2);return _=-u*Math.log(Math.max(Y,1e-10)),new Pt(e.lng*r*u,_)},unproject:function(e){for(var r=180/Math.PI,u=this.R,_=this.R_MINOR/u,M=Math.sqrt(1-_*_),B=Math.exp(-e.y/u),j=Math.PI/2-2*Math.atan(B),Y=0,st=.1,ht;Y<15&&Math.abs(st)>1e-7;Y++)ht=M*Math.sin(j),ht=Math.pow((1-ht)/(1+ht),M/2),st=Math.PI/2-2*Math.atan(B*ht)-j,j+=st;return new Ht(j*r,e.x*r/u)}},Ke={__proto__:null,LonLat:aa,Mercator:Ze,SphericalMercator:Ts},Hn=c({},fi,{code:"EPSG:3395",projection:Ze,transformation:function(){var e=.5/(Math.PI*Ze.R);return sn(e,.5,-e,.5)}()}),ra=c({},fi,{code:"EPSG:4326",projection:aa,transformation:sn(1/180,1,-1/180,.5)}),oa=c({},si,{projection:aa,transformation:sn(1,0,-1,0),scale:function(e){return Math.pow(2,e)},zoom:function(e){return Math.log(e)/Math.LN2},distance:function(e,r){var u=r.lng-e.lng,_=r.lat-e.lat;return Math.sqrt(u*u+_*_)},infinite:!0});si.Earth=fi,si.EPSG3395=Hn,si.EPSG3857=Os,si.EPSG900913=Ia,si.EPSG4326=ra,si.Simple=oa;var Ae=en.extend({options:{pane:"overlayPane",attribution:null,bubblingMouseEvents:!0},addTo:function(e){return e.addLayer(this),this},remove:function(){return this.removeFrom(this._map||this._mapToAdd)},removeFrom:function(e){return e&&e.removeLayer(this),this},getPane:function(e){return this._map.getPane(e?this.options[e]||e:this.options.pane)},addInteractiveTarget:function(e){return this._map._targets[A(e)]=this,this},removeInteractiveTarget:function(e){return delete this._map._targets[A(e)],this},getAttribution:function(){return this.options.attribution},_layerAdd:function(e){var r=e.target;if(r.hasLayer(this)){if(this._map=r,this._zoomAnimated=r._zoomAnimated,this.getEvents){var u=this.getEvents();r.on(u,this),this.once("remove",function(){r.off(u,this)},this)}this.onAdd(r),this.fire("add"),r.fire("layeradd",{layer:this})}}});Gt.include({addLayer:function(e){if(!e._layerAdd)throw new Error("The provided object is not a Layer.");var r=A(e);return this._layers[r]?this:(this._layers[r]=e,e._mapToAdd=this,e.beforeAdd&&e.beforeAdd(this),this.whenReady(e._layerAdd,e),this)},removeLayer:function(e){var r=A(e);return this._layers[r]?(this._loaded&&e.onRemove(this),delete this._layers[r],this._loaded&&(this.fire("layerremove",{layer:e}),e.fire("remove")),e._map=e._mapToAdd=null,this):this},hasLayer:function(e){return A(e)in this._layers},eachLayer:function(e,r){for(var u in this._layers)e.call(r,this._layers[u]);return this},_addLayers:function(e){e=e?ct(e)?e:[e]:[];for(var r=0,u=e.length;r<u;r++)this.addLayer(e[r])},_addZoomLimit:function(e){(!isNaN(e.options.maxZoom)||!isNaN(e.options.minZoom))&&(this._zoomBoundLayers[A(e)]=e,this._updateZoomLevels())},_removeZoomLimit:function(e){var r=A(e);this._zoomBoundLayers[r]&&(delete this._zoomBoundLayers[r],this._updateZoomLevels())},_updateZoomLevels:function(){var e=1/0,r=-1/0,u=this._getZoomSpan();for(var _ in this._zoomBoundLayers){var M=this._zoomBoundLayers[_].options;e=M.minZoom===void 0?e:Math.min(e,M.minZoom),r=M.maxZoom===void 0?r:Math.max(r,M.maxZoom)}this._layersMaxZoom=r===-1/0?void 0:r,this._layersMinZoom=e===1/0?void 0:e,u!==this._getZoomSpan()&&this.fire("zoomlevelschange"),this.options.maxZoom===void 0&&this._layersMaxZoom&&this.getZoom()>this._layersMaxZoom&&this.setZoom(this._layersMaxZoom),this.options.minZoom===void 0&&this._layersMinZoom&&this.getZoom()<this._layersMinZoom&&this.setZoom(this._layersMinZoom)}});var qi=Ae.extend({initialize:function(e,r){Z(this,r),this._layers={};var u,_;if(e)for(u=0,_=e.length;u<_;u++)this.addLayer(e[u])},addLayer:function(e){var r=this.getLayerId(e);return this._layers[r]=e,this._map&&this._map.addLayer(e),this},removeLayer:function(e){var r=e in this._layers?e:this.getLayerId(e);return this._map&&this._layers[r]&&this._map.removeLayer(this._layers[r]),delete this._layers[r],this},hasLayer:function(e){var r=typeof e=="number"?e:this.getLayerId(e);return r in this._layers},clearLayers:function(){return this.eachLayer(this.removeLayer,this)},invoke:function(e){var r=Array.prototype.slice.call(arguments,1),u,_;for(u in this._layers)_=this._layers[u],_[e]&&_[e].apply(_,r);return this},onAdd:function(e){this.eachLayer(e.addLayer,e)},onRemove:function(e){this.eachLayer(e.removeLayer,e)},eachLayer:function(e,r){for(var u in this._layers)e.call(r,this._layers[u]);return this},getLayer:function(e){return this._layers[e]},getLayers:function(){var e=[];return this.eachLayer(e.push,e),e},setZIndex:function(e){return this.invoke("setZIndex",e)},getLayerId:function(e){return A(e)}}),Ko=function(e,r){return new qi(e,r)},qe=qi.extend({addLayer:function(e){return this.hasLayer(e)?this:(e.addEventParent(this),qi.prototype.addLayer.call(this,e),this.fire("layeradd",{layer:e}))},removeLayer:function(e){return this.hasLayer(e)?(e in this._layers&&(e=this._layers[e]),e.removeEventParent(this),qi.prototype.removeLayer.call(this,e),this.fire("layerremove",{layer:e})):this},setStyle:function(e){return this.invoke("setStyle",e)},bringToFront:function(){return this.invoke("bringToFront")},bringToBack:function(){return this.invoke("bringToBack")},getBounds:function(){var e=new Ce;for(var r in this._layers){var u=this._layers[r];e.extend(u.getBounds?u.getBounds():u.getLatLng())}return e}}),Xo=function(e,r){return new qe(e,r)},Hi=pe.extend({options:{popupAnchor:[0,0],tooltipAnchor:[0,0],crossOrigin:!1},initialize:function(e){Z(this,e)},createIcon:function(e){return this._createIcon("icon",e)},createShadow:function(e){return this._createIcon("shadow",e)},_createIcon:function(e,r){var u=this._getIconUrl(e);if(!u){if(e==="icon")throw new Error("iconUrl not set in Icon options (see the docs).");return null}var _=this._createImg(u,r&&r.tagName==="IMG"?r:null);return this._setIconStyles(_,e),(this.options.crossOrigin||this.options.crossOrigin==="")&&(_.crossOrigin=this.options.crossOrigin===!0?"":this.options.crossOrigin),_},_setIconStyles:function(e,r){var u=this.options,_=u[r+"Size"];typeof _=="number"&&(_=[_,_]);var M=Ct(_),B=Ct(r==="shadow"&&u.shadowAnchor||u.iconAnchor||M&&M.divideBy(2,!0));e.className="leaflet-marker-"+r+" "+(u.className||""),B&&(e.style.marginLeft=-B.x+"px",e.style.marginTop=-B.y+"px"),M&&(e.style.width=M.x+"px",e.style.height=M.y+"px")},_createImg:function(e,r){return r=r||document.createElement("img"),r.src=e,r},_getIconUrl:function(e){return Mt.retina&&this.options[e+"RetinaUrl"]||this.options[e+"Url"]}});function Yo(e){return new Hi(e)}var dn=Hi.extend({options:{iconUrl:"marker-icon.png",iconRetinaUrl:"marker-icon-2x.png",shadowUrl:"marker-shadow.png",iconSize:[25,41],iconAnchor:[12,41],popupAnchor:[1,-34],tooltipAnchor:[16,-28],shadowSize:[41,41]},_getIconUrl:function(e){return typeof dn.imagePath!="string"&&(dn.imagePath=this._detectIconPath()),(this.options.imagePath||dn.imagePath)+Hi.prototype._getIconUrl.call(this,e)},_stripUrl:function(e){var r=function(u,_,M){var B=_.exec(u);return B&&B[M]};return e=r(e,/^url\((['"])?(.+)\1\)$/,2),e&&r(e,/^(.*)marker-icon\.png$/,1)},_detectIconPath:function(){var e=Nt("div","leaflet-default-icon-path",document.body),r=pi(e,"background-image")||pi(e,"backgroundImage");if(document.body.removeChild(e),r=this._stripUrl(r),r)return r;var u=document.querySelector('link[href$="leaflet.css"]');return u?u.href.substring(0,u.href.length-11-1):""}}),Vn=ve.extend({initialize:function(e){this._marker=e},addHooks:function(){var e=this._marker._icon;this._draggable||(this._draggable=new mi(e,e,!0)),this._draggable.on({dragstart:this._onDragStart,predrag:this._onPreDrag,drag:this._onDrag,dragend:this._onDragEnd},this).enable(),Tt(e,"leaflet-marker-draggable")},removeHooks:function(){this._draggable.off({dragstart:this._onDragStart,predrag:this._onPreDrag,drag:this._onDrag,dragend:this._onDragEnd},this).disable(),this._marker._icon&&ne(this._marker._icon,"leaflet-marker-draggable")},moved:function(){return this._draggable&&this._draggable._moved},_adjustPan:function(e){var r=this._marker,u=r._map,_=this._marker.options.autoPanSpeed,M=this._marker.options.autoPanPadding,B=wi(r._icon),j=u.getPixelBounds(),Y=u.getPixelOrigin(),st=we(j.min._subtract(Y).add(M),j.max._subtract(Y).subtract(M));if(!st.contains(B)){var ht=Ct((Math.max(st.max.x,B.x)-st.max.x)/(j.max.x-st.max.x)-(Math.min(st.min.x,B.x)-st.min.x)/(j.min.x-st.min.x),(Math.max(st.max.y,B.y)-st.max.y)/(j.max.y-st.max.y)-(Math.min(st.min.y,B.y)-st.min.y)/(j.min.y-st.min.y)).multiplyBy(_);u.panBy(ht,{animate:!1}),this._draggable._newPos._add(ht),this._draggable._startPos._add(ht),re(r._icon,this._draggable._newPos),this._onDrag(e),this._panRequest=Et(this._adjustPan.bind(this,e))}},_onDragStart:function(){this._oldLatLng=this._marker.getLatLng(),this._marker.closePopup&&this._marker.closePopup(),this._marker.fire("movestart").fire("dragstart")},_onPreDrag:function(e){this._marker.options.autoPan&&(Zt(this._panRequest),this._panRequest=Et(this._adjustPan.bind(this,e)))},_onDrag:function(e){var r=this._marker,u=r._shadow,_=wi(r._icon),M=r._map.layerPointToLatLng(_);u&&re(u,_),r._latlng=M,e.latlng=M,e.oldLatLng=this._oldLatLng,r.fire("move",e).fire("drag",e)},_onDragEnd:function(e){Zt(this._panRequest),delete this._oldLatLng,this._marker.fire("moveend").fire("dragend",e)}}),$n=Ae.extend({options:{icon:new dn,interactive:!0,keyboard:!0,title:"",alt:"Marker",zIndexOffset:0,opacity:1,riseOnHover:!1,riseOffset:250,pane:"markerPane",shadowPane:"shadowPane",bubblingMouseEvents:!1,autoPanOnFocus:!0,draggable:!1,autoPan:!1,autoPanPadding:[50,50],autoPanSpeed:10},initialize:function(e,r){Z(this,r),this._latlng=Rt(e)},onAdd:function(e){this._zoomAnimated=this._zoomAnimated&&e.options.markerZoomAnimation,this._zoomAnimated&&e.on("zoomanim",this._animateZoom,this),this._initIcon(),this.update()},onRemove:function(e){this.dragging&&this.dragging.enabled()&&(this.options.draggable=!0,this.dragging.removeHooks()),delete this.dragging,this._zoomAnimated&&e.off("zoomanim",this._animateZoom,this),this._removeIcon(),this._removeShadow()},getEvents:function(){return{zoom:this.update,viewreset:this.update}},getLatLng:function(){return this._latlng},setLatLng:function(e){var r=this._latlng;return this._latlng=Rt(e),this.update(),this.fire("move",{oldLatLng:r,latlng:this._latlng})},setZIndexOffset:function(e){return this.options.zIndexOffset=e,this.update()},getIcon:function(){return this.options.icon},setIcon:function(e){return this.options.icon=e,this._map&&(this._initIcon(),this.update()),this._popup&&this.bindPopup(this._popup,this._popup.options),this},getElement:function(){return this._icon},update:function(){if(this._icon&&this._map){var e=this._map.latLngToLayerPoint(this._latlng).round();this._setPos(e)}return this},_initIcon:function(){var e=this.options,r="leaflet-zoom-"+(this._zoomAnimated?"animated":"hide"),u=e.icon.createIcon(this._icon),_=!1;u!==this._icon&&(this._icon&&this._removeIcon(),_=!0,e.title&&(u.title=e.title),u.tagName==="IMG"&&(u.alt=e.alt||"")),Tt(u,r),e.keyboard&&(u.tabIndex="0",u.setAttribute("role","button")),this._icon=u,e.riseOnHover&&this.on({mouseover:this._bringToFront,mouseout:this._resetZIndex}),this.options.autoPanOnFocus&&St(u,"focus",this._panOnFocus,this);var M=e.icon.createShadow(this._shadow),B=!1;M!==this._shadow&&(this._removeShadow(),B=!0),M&&(Tt(M,r),M.alt=""),this._shadow=M,e.opacity<1&&this._updateOpacity(),_&&this.getPane().appendChild(this._icon),this._initInteraction(),M&&B&&this.getPane(e.shadowPane).appendChild(this._shadow)},_removeIcon:function(){this.options.riseOnHover&&this.off({mouseover:this._bringToFront,mouseout:this._resetZIndex}),this.options.autoPanOnFocus&&Wt(this._icon,"focus",this._panOnFocus,this),Qt(this._icon),this.removeInteractiveTarget(this._icon),this._icon=null},_removeShadow:function(){this._shadow&&Qt(this._shadow),this._shadow=null},_setPos:function(e){this._icon&&re(this._icon,e),this._shadow&&re(this._shadow,e),this._zIndex=e.y+this.options.zIndexOffset,this._resetZIndex()},_updateZIndex:function(e){this._icon&&(this._icon.style.zIndex=this._zIndex+e)},_animateZoom:function(e){var r=this._map._latLngToNewLayerPoint(this._latlng,e.zoom,e.center).round();this._setPos(r)},_initInteraction:function(){if(this.options.interactive&&(Tt(this._icon,"leaflet-interactive"),this.addInteractiveTarget(this._icon),Vn)){var e=this.options.draggable;this.dragging&&(e=this.dragging.enabled(),this.dragging.disable()),this.dragging=new Vn(this),e&&this.dragging.enable()}},setOpacity:function(e){return this.options.opacity=e,this._map&&this._updateOpacity(),this},_updateOpacity:function(){var e=this.options.opacity;this._icon&&Ne(this._icon,e),this._shadow&&Ne(this._shadow,e)},_bringToFront:function(){this._updateZIndex(this.options.riseOffset)},_resetZIndex:function(){this._updateZIndex(0)},_panOnFocus:function(){var e=this._map;if(e){var r=this.options.icon.options,u=r.iconSize?Ct(r.iconSize):Ct(0,0),_=r.iconAnchor?Ct(r.iconAnchor):Ct(0,0);e.panInside(this._latlng,{paddingTopLeft:_,paddingBottomRight:u.subtract(_)})}},_getPopupAnchor:function(){return this.options.icon.options.popupAnchor},_getTooltipAnchor:function(){return this.options.icon.options.tooltipAnchor}});function Jo(e,r){return new $n(e,r)}var ai=Ae.extend({options:{stroke:!0,color:"#3388ff",weight:3,opacity:1,lineCap:"round",lineJoin:"round",dashArray:null,dashOffset:null,fill:!1,fillColor:null,fillOpacity:.2,fillRule:"evenodd",interactive:!0,bubblingMouseEvents:!0},beforeAdd:function(e){this._renderer=e.getRenderer(this)},onAdd:function(){this._renderer._initPath(this),this._reset(),this._renderer._addPath(this)},onRemove:function(){this._renderer._removePath(this)},redraw:function(){return this._map&&this._renderer._updatePath(this),this},setStyle:function(e){return Z(this,e),this._renderer&&(this._renderer._updateStyle(this),this.options.stroke&&e&&Object.prototype.hasOwnProperty.call(e,"weight")&&this._updateBounds()),this},bringToFront:function(){return this._renderer&&this._renderer._bringToFront(this),this},bringToBack:function(){return this._renderer&&this._renderer._bringToBack(this),this},getElement:function(){return this._path},_reset:function(){this._project(),this._update()},_clickTolerance:function(){return(this.options.stroke?this.options.weight/2:0)+(this._renderer.options.tolerance||0)}}),Xe=ai.extend({options:{fill:!0,radius:10},initialize:function(e,r){Z(this,r),this._latlng=Rt(e),this._radius=this.options.radius},setLatLng:function(e){var r=this._latlng;return this._latlng=Rt(e),this.redraw(),this.fire("move",{oldLatLng:r,latlng:this._latlng})},getLatLng:function(){return this._latlng},setRadius:function(e){return this.options.radius=this._radius=e,this.redraw()},getRadius:function(){return this._radius},setStyle:function(e){var r=e&&e.radius||this._radius;return ai.prototype.setStyle.call(this,e),this.setRadius(r),this},_project:function(){this._point=this._map.latLngToLayerPoint(this._latlng),this._updateBounds()},_updateBounds:function(){var e=this._radius,r=this._radiusY||e,u=this._clickTolerance(),_=[e+u,r+u];this._pxBounds=new te(this._point.subtract(_),this._point.add(_))},_update:function(){this._map&&this._updatePath()},_updatePath:function(){this._renderer._updateCircle(this)},_empty:function(){return this._radius&&!this._renderer._bounds.intersects(this._pxBounds)},_containsPoint:function(e){return e.distanceTo(this._point)<=this._radius+this._clickTolerance()}});function vr(e,r){return new Xe(e,r)}var ha=Xe.extend({initialize:function(e,r,u){if(typeof r=="number"&&(r=c({},u,{radius:r})),Z(this,r),this._latlng=Rt(e),isNaN(this.options.radius))throw new Error("Circle radius cannot be NaN");this._mRadius=this.options.radius},setRadius:function(e){return this._mRadius=e,this.redraw()},getRadius:function(){return this._mRadius},getBounds:function(){var e=[this._radius,this._radiusY||this._radius];return new Ce(this._map.layerPointToLatLng(this._point.subtract(e)),this._map.layerPointToLatLng(this._point.add(e)))},setStyle:ai.prototype.setStyle,_project:function(){var e=this._latlng.lng,r=this._latlng.lat,u=this._map,_=u.options.crs;if(_.distance===fi.distance){var M=Math.PI/180,B=this._mRadius/fi.R/M,j=u.project([r+B,e]),Y=u.project([r-B,e]),st=j.add(Y).divideBy(2),ht=u.unproject(st).lat,pt=Math.acos((Math.cos(B*M)-Math.sin(r*M)*Math.sin(ht*M))/(Math.cos(r*M)*Math.cos(ht*M)))/M;(isNaN(pt)||pt===0)&&(pt=B/Math.cos(Math.PI/180*r)),this._point=st.subtract(u.getPixelOrigin()),this._radius=isNaN(pt)?0:st.x-u.project([ht,e-pt]).x,this._radiusY=st.y-j.y}else{var wt=_.unproject(_.project(this._latlng).subtract([this._mRadius,0]));this._point=u.latLngToLayerPoint(this._latlng),this._radius=this._point.x-u.latLngToLayerPoint(wt).x}this._updateBounds()}});function Si(e,r,u){return new ha(e,r,u)}var ri=ai.extend({options:{smoothFactor:1,noClip:!1},initialize:function(e,r){Z(this,r),this._setLatLngs(e)},getLatLngs:function(){return this._latlngs},setLatLngs:function(e){return this._setLatLngs(e),this.redraw()},isEmpty:function(){return!this._latlngs.length},closestLayerPoint:function(e){for(var r=1/0,u=null,_=cn,M,B,j=0,Y=this._parts.length;j<Y;j++)for(var st=this._parts[j],ht=1,pt=st.length;ht<pt;ht++){M=st[ht-1],B=st[ht];var wt=_(e,M,B,!0);wt<r&&(r=wt,u=_(e,M,B))}return u&&(u.distance=Math.sqrt(r)),u},getCenter:function(){if(!this._map)throw new Error("Must add layer to map before using getCenter()");return sa(this._defaultShape(),this._map.options.crs)},getBounds:function(){return this._bounds},addLatLng:function(e,r){return r=r||this._defaultShape(),e=Rt(e),r.push(e),this._bounds.extend(e),this.redraw()},_setLatLngs:function(e){this._bounds=new Ce,this._latlngs=this._convertLatLngs(e)},_defaultShape:function(){return Pe(this._latlngs)?this._latlngs:this._latlngs[0]},_convertLatLngs:function(e){for(var r=[],u=Pe(e),_=0,M=e.length;_<M;_++)u?(r[_]=Rt(e[_]),this._bounds.extend(r[_])):r[_]=this._convertLatLngs(e[_]);return r},_project:function(){var e=new te;this._rings=[],this._projectLatlngs(this._latlngs,this._rings,e),this._bounds.isValid()&&e.isValid()&&(this._rawPxBounds=e,this._updateBounds())},_updateBounds:function(){var e=this._clickTolerance(),r=new Pt(e,e);this._rawPxBounds&&(this._pxBounds=new te([this._rawPxBounds.min.subtract(r),this._rawPxBounds.max.add(r)]))},_projectLatlngs:function(e,r,u){var _=e[0]instanceof Ht,M=e.length,B,j;if(_){for(j=[],B=0;B<M;B++)j[B]=this._map.latLngToLayerPoint(e[B]),u.extend(j[B]);r.push(j)}else for(B=0;B<M;B++)this._projectLatlngs(e[B],r,u)},_clipPoints:function(){var e=this._renderer._bounds;if(this._parts=[],!(!this._pxBounds||!this._pxBounds.intersects(e))){if(this.options.noClip){this._parts=this._rings;return}var r=this._parts,u,_,M,B,j,Y,st;for(u=0,M=0,B=this._rings.length;u<B;u++)for(st=this._rings[u],_=0,j=st.length;_<j-1;_++)Y=Bi(st[_],st[_+1],e,_,!0),Y&&(r[M]=r[M]||[],r[M].push(Y[0]),(Y[1]!==st[_+1]||_===j-2)&&(r[M].push(Y[1]),M++))}},_simplifyPoints:function(){for(var e=this._parts,r=this.options.smoothFactor,u=0,_=e.length;u<_;u++)e[u]=gr(e[u],r)},_update:function(){this._map&&(this._clipPoints(),this._simplifyPoints(),this._updatePath())},_updatePath:function(){this._renderer._updatePoly(this)},_containsPoint:function(e,r){var u,_,M,B,j,Y,st=this._clickTolerance();if(!this._pxBounds||!this._pxBounds.contains(e))return!1;for(u=0,B=this._parts.length;u<B;u++)for(Y=this._parts[u],_=0,j=Y.length,M=j-1;_<j;M=_++)if(!(!r&&_===0)&&na(e,Y[M],Y[_])<=st)return!0;return!1}});function Qo(e,r){return new ri(e,r)}ri._flat=Ue;var yi=ri.extend({options:{fill:!0},isEmpty:function(){return!this._latlngs.length||!this._latlngs[0].length},getCenter:function(){if(!this._map)throw new Error("Must add layer to map before using getCenter()");return mr(this._defaultShape(),this._map.options.crs)},_convertLatLngs:function(e){var r=ri.prototype._convertLatLngs.call(this,e),u=r.length;return u>=2&&r[0]instanceof Ht&&r[0].equals(r[u-1])&&r.pop(),r},_setLatLngs:function(e){ri.prototype._setLatLngs.call(this,e),Pe(this._latlngs)&&(this._latlngs=[this._latlngs])},_defaultShape:function(){return Pe(this._latlngs[0])?this._latlngs[0]:this._latlngs[0][0]},_clipPoints:function(){var e=this._renderer._bounds,r=this.options.weight,u=new Pt(r,r);if(e=new te(e.min.subtract(u),e.max.add(u)),this._parts=[],!(!this._pxBounds||!this._pxBounds.intersects(e))){if(this.options.noClip){this._parts=this._rings;return}for(var _=0,M=this._rings.length,B;_<M;_++)B=_r(this._rings[_],e,!0),B.length&&this._parts.push(B)}},_updatePath:function(){this._renderer._updatePoly(this,!0)},_containsPoint:function(e){var r=!1,u,_,M,B,j,Y,st,ht;if(!this._pxBounds||!this._pxBounds.contains(e))return!1;for(B=0,st=this._parts.length;B<st;B++)for(u=this._parts[B],j=0,ht=u.length,Y=ht-1;j<ht;Y=j++)_=u[j],M=u[Y],_.y>e.y!=M.y>e.y&&e.x<(M.x-_.x)*(e.y-_.y)/(M.y-_.y)+_.x&&(r=!r);return r||ri.prototype._containsPoint.call(this,e,!0)}});function fn(e,r){return new yi(e,r)}var oi=qe.extend({initialize:function(e,r){Z(this,r),this._layers={},e&&this.addData(e)},addData:function(e){var r=ct(e)?e:e.features,u,_,M;if(r){for(u=0,_=r.length;u<_;u++)M=r[u],(M.geometries||M.geometry||M.features||M.coordinates)&&this.addData(M);return this}var B=this.options;if(B.filter&&!B.filter(e))return this;var j=Wn(e,B);return j?(j.feature=Qn(e),j.defaultOptions=j.options,this.resetStyle(j),B.onEachFeature&&B.onEachFeature(e,j),this.addLayer(j)):this},resetStyle:function(e){return e===void 0?this.eachLayer(this.resetStyle,this):(e.options=c({},e.defaultOptions),this._setLayerStyle(e,this.options.style),this)},setStyle:function(e){return this.eachLayer(function(r){this._setLayerStyle(r,e)},this)},_setLayerStyle:function(e,r){e.setStyle&&(typeof r=="function"&&(r=r(e.feature)),e.setStyle(r))}});function Wn(e,r){var u=e.type==="Feature"?e.geometry:e,_=u?u.coordinates:null,M=[],B=r&&r.pointToLayer,j=r&&r.coordsToLatLng||Kn,Y,st,ht,pt;if(!_&&!u)return null;switch(u.type){case"Point":return Y=j(_),Ar(B,e,Y,r);case"MultiPoint":for(ht=0,pt=_.length;ht<pt;ht++)Y=j(_[ht]),M.push(Ar(B,e,Y,r));return new qe(M);case"LineString":case"MultiLineString":return st=Xn(_,u.type==="LineString"?0:1,j),new ri(st,r);case"Polygon":case"MultiPolygon":return st=Xn(_,u.type==="Polygon"?1:2,j),new yi(st,r);case"GeometryCollection":for(ht=0,pt=u.geometries.length;ht<pt;ht++){var wt=Wn({geometry:u.geometries[ht],type:"Feature",properties:e.properties},r);wt&&M.push(wt)}return new qe(M);case"FeatureCollection":for(ht=0,pt=u.features.length;ht<pt;ht++){var Ot=Wn(u.features[ht],r);Ot&&M.push(Ot)}return new qe(M);default:throw new Error("Invalid GeoJSON object.")}}function Ar(e,r,u,_){return e?e(r,u):new $n(u,_&&_.markersInheritOptions&&_)}function Kn(e){return new Ht(e[1],e[0],e[2])}function Xn(e,r,u){for(var _=[],M=0,B=e.length,j;M<B;M++)j=r?Xn(e[M],r-1,u):(u||Kn)(e[M]),_.push(j);return _}function Yn(e,r){return e=Rt(e),e.alt!==void 0?[b(e.lng,r),b(e.lat,r),b(e.alt,r)]:[b(e.lng,r),b(e.lat,r)]}function Jn(e,r,u,_){for(var M=[],B=0,j=e.length;B<j;B++)M.push(r?Jn(e[B],Pe(e[B])?0:r-1,u,_):Yn(e[B],_));return!r&&u&&M.length>0&&M.push(M[0].slice()),M}function Vi(e,r){return e.feature?c({},e.feature,{geometry:r}):Qn(r)}function Qn(e){return e.type==="Feature"||e.type==="FeatureCollection"?e:{type:"Feature",properties:{},geometry:e}}var ts={toGeoJSON:function(e){return Vi(this,{type:"Point",coordinates:Yn(this.getLatLng(),e)})}};$n.include(ts),ha.include(ts),Xe.include(ts),ri.include({toGeoJSON:function(e){var r=!Pe(this._latlngs),u=Jn(this._latlngs,r?1:0,!1,e);return Vi(this,{type:(r?"Multi":"")+"LineString",coordinates:u})}}),yi.include({toGeoJSON:function(e){var r=!Pe(this._latlngs),u=r&&!Pe(this._latlngs[0]),_=Jn(this._latlngs,u?2:r?1:0,!0,e);return r||(_=[_]),Vi(this,{type:(u?"Multi":"")+"Polygon",coordinates:_})}}),qi.include({toMultiPoint:function(e){var r=[];return this.eachLayer(function(u){r.push(u.toGeoJSON(e).geometry.coordinates)}),Vi(this,{type:"MultiPoint",coordinates:r})},toGeoJSON:function(e){var r=this.feature&&this.feature.geometry&&this.feature.geometry.type;if(r==="MultiPoint")return this.toMultiPoint(e);var u=r==="GeometryCollection",_=[];return this.eachLayer(function(M){if(M.toGeoJSON){var B=M.toGeoJSON(e);if(u)_.push(B.geometry);else{var j=Qn(B);j.type==="FeatureCollection"?_.push.apply(_,j.features):_.push(j)}}}),u?Vi(this,{geometries:_,type:"GeometryCollection"}):{type:"FeatureCollection",features:_}}});function es(e,r){return new oi(e,r)}var Mr=es,$i=Ae.extend({options:{opacity:1,alt:"",interactive:!1,crossOrigin:!1,errorOverlayUrl:"",zIndex:1,className:""},initialize:function(e,r,u){this._url=e,this._bounds=ae(r),Z(this,u)},onAdd:function(){this._image||(this._initImage(),this.options.opacity<1&&this._updateOpacity()),this.options.interactive&&(Tt(this._image,"leaflet-interactive"),this.addInteractiveTarget(this._image)),this.getPane().appendChild(this._image),this._reset()},onRemove:function(){Qt(this._image),this.options.interactive&&this.removeInteractiveTarget(this._image)},setOpacity:function(e){return this.options.opacity=e,this._image&&this._updateOpacity(),this},setStyle:function(e){return e.opacity&&this.setOpacity(e.opacity),this},bringToFront:function(){return this._map&&Zi(this._image),this},bringToBack:function(){return this._map&&Li(this._image),this},setUrl:function(e){return this._url=e,this._image&&(this._image.src=e),this},setBounds:function(e){return this._bounds=ae(e),this._map&&this._reset(),this},getEvents:function(){var e={zoom:this._reset,viewreset:this._reset};return this._zoomAnimated&&(e.zoomanim=this._animateZoom),e},setZIndex:function(e){return this.options.zIndex=e,this._updateZIndex(),this},getBounds:function(){return this._bounds},getElement:function(){return this._image},_initImage:function(){var e=this._url.tagName==="IMG",r=this._image=e?this._url:Nt("img");if(Tt(r,"leaflet-image-layer"),this._zoomAnimated&&Tt(r,"leaflet-zoom-animated"),this.options.className&&Tt(r,this.options.className),r.onselectstart=x,r.onmousemove=x,r.onload=p(this.fire,this,"load"),r.onerror=p(this._overlayOnError,this,"error"),(this.options.crossOrigin||this.options.crossOrigin==="")&&(r.crossOrigin=this.options.crossOrigin===!0?"":this.options.crossOrigin),this.options.zIndex&&this._updateZIndex(),e){this._url=r.src;return}r.src=this._url,r.alt=this.options.alt},_animateZoom:function(e){var r=this._map.getZoomScale(e.zoom),u=this._map._latLngBoundsToNewLayerBounds(this._bounds,e.zoom,e.center).min;bi(this._image,u,r)},_reset:function(){var e=this._image,r=new te(this._map.latLngToLayerPoint(this._bounds.getNorthWest()),this._map.latLngToLayerPoint(this._bounds.getSouthEast())),u=r.getSize();re(e,r.min),e.style.width=u.x+"px",e.style.height=u.y+"px"},_updateOpacity:function(){Ne(this._image,this.options.opacity)},_updateZIndex:function(){this._image&&this.options.zIndex!==void 0&&this.options.zIndex!==null&&(this._image.style.zIndex=this.options.zIndex)},_overlayOnError:function(){this.fire("error");var e=this.options.errorOverlayUrl;e&&this._url!==e&&(this._url=e,this._image.src=e)},getCenter:function(){return this._bounds.getCenter()}}),th=function(e,r,u){return new $i(e,r,u)},pn=$i.extend({options:{autoplay:!0,loop:!0,keepAspectRatio:!0,muted:!1,playsInline:!0},_initImage:function(){var e=this._url.tagName==="VIDEO",r=this._image=e?this._url:Nt("video");if(Tt(r,"leaflet-image-layer"),this._zoomAnimated&&Tt(r,"leaflet-zoom-animated"),this.options.className&&Tt(r,this.options.className),r.onselectstart=x,r.onmousemove=x,r.onloadeddata=p(this.fire,this,"load"),e){for(var u=r.getElementsByTagName("source"),_=[],M=0;M<u.length;M++)_.push(u[M].src);this._url=u.length>0?_:[r.src];return}ct(this._url)||(this._url=[this._url]),!this.options.keepAspectRatio&&Object.prototype.hasOwnProperty.call(r.style,"objectFit")&&(r.style.objectFit="fill"),r.autoplay=!!this.options.autoplay,r.loop=!!this.options.loop,r.muted=!!this.options.muted,r.playsInline=!!this.options.playsInline;for(var B=0;B<this._url.length;B++){var j=Nt("source");j.src=this._url[B],r.appendChild(j)}}});function xr(e,r,u){return new pn(e,r,u)}var Lr=$i.extend({_initImage:function(){var e=this._image=this._url;Tt(e,"leaflet-image-layer"),this._zoomAnimated&&Tt(e,"leaflet-zoom-animated"),this.options.className&&Tt(e,this.options.className),e.onselectstart=x,e.onmousemove=x}});function eh(e,r,u){return new Lr(e,r,u)}var Ye=Ae.extend({options:{interactive:!1,offset:[0,0],className:"",pane:void 0,content:""},initialize:function(e,r){e&&(e instanceof Ht||ct(e))?(this._latlng=Rt(e),Z(this,r)):(Z(this,e),this._source=r),this.options.content&&(this._content=this.options.content)},openOn:function(e){return e=arguments.length?e:this._source._map,e.hasLayer(this)||e.addLayer(this),this},close:function(){return this._map&&this._map.removeLayer(this),this},toggle:function(e){return this._map?this.close():(arguments.length?this._source=e:e=this._source,this._prepareOpen(),this.openOn(e._map)),this},onAdd:function(e){this._zoomAnimated=e._zoomAnimated,this._container||this._initLayout(),e._fadeAnimated&&Ne(this._container,0),clearTimeout(this._removeTimeout),this.getPane().appendChild(this._container),this.update(),e._fadeAnimated&&Ne(this._container,1),this.bringToFront(),this.options.interactive&&(Tt(this._container,"leaflet-interactive"),this.addInteractiveTarget(this._container))},onRemove:function(e){e._fadeAnimated?(Ne(this._container,0),this._removeTimeout=setTimeout(p(Qt,void 0,this._container),200)):Qt(this._container),this.options.interactive&&(ne(this._container,"leaflet-interactive"),this.removeInteractiveTarget(this._container))},getLatLng:function(){return this._latlng},setLatLng:function(e){return this._latlng=Rt(e),this._map&&(this._updatePosition(),this._adjustPan()),this},getContent:function(){return this._content},setContent:function(e){return this._content=e,this.update(),this},getElement:function(){return this._container},update:function(){this._map&&(this._container.style.visibility="hidden",this._updateContent(),this._updateLayout(),this._updatePosition(),this._container.style.visibility="",this._adjustPan())},getEvents:function(){var e={zoom:this._updatePosition,viewreset:this._updatePosition};return this._zoomAnimated&&(e.zoomanim=this._animateZoom),e},isOpen:function(){return!!this._map&&this._map.hasLayer(this)},bringToFront:function(){return this._map&&Zi(this._container),this},bringToBack:function(){return this._map&&Li(this._container),this},_prepareOpen:function(e){var r=this._source;if(!r._map)return!1;if(r instanceof qe){r=null;var u=this._source._layers;for(var _ in u)if(u[_]._map){r=u[_];break}if(!r)return!1;this._source=r}if(!e)if(r.getCenter)e=r.getCenter();else if(r.getLatLng)e=r.getLatLng();else if(r.getBounds)e=r.getBounds().getCenter();else throw new Error("Unable to get source layer LatLng.");return this.setLatLng(e),this._map&&this.update(),!0},_updateContent:function(){if(this._content){var e=this._contentNode,r=typeof this._content=="function"?this._content(this._source||this):this._content;if(typeof r=="string")e.innerHTML=r;else{for(;e.hasChildNodes();)e.removeChild(e.firstChild);e.appendChild(r)}this.fire("contentupdate")}},_updatePosition:function(){if(this._map){var e=this._map.latLngToLayerPoint(this._latlng),r=Ct(this.options.offset),u=this._getAnchor();this._zoomAnimated?re(this._container,e.add(u)):r=r.add(e).add(u);var _=this._containerBottom=-r.y,M=this._containerLeft=-Math.round(this._containerWidth/2)+r.x;this._container.style.bottom=_+"px",this._container.style.left=M+"px"}},_getAnchor:function(){return[0,0]}});Gt.include({_initOverlay:function(e,r,u,_){var M=r;return M instanceof e||(M=new e(_).setContent(r)),u&&M.setLatLng(u),M}}),Ae.include({_initOverlay:function(e,r,u,_){var M=u;return M instanceof e?(Z(M,_),M._source=this):(M=r&&!_?r:new e(_,this),M.setContent(u)),M}});var vi=Ye.extend({options:{pane:"popupPane",offset:[0,7],maxWidth:300,minWidth:50,maxHeight:null,autoPan:!0,autoPanPaddingTopLeft:null,autoPanPaddingBottomRight:null,autoPanPadding:[5,5],keepInView:!1,closeButton:!0,autoClose:!0,closeOnEscapeKey:!0,className:""},openOn:function(e){return e=arguments.length?e:this._source._map,!e.hasLayer(this)&&e._popup&&e._popup.options.autoClose&&e.removeLayer(e._popup),e._popup=this,Ye.prototype.openOn.call(this,e)},onAdd:function(e){Ye.prototype.onAdd.call(this,e),e.fire("popupopen",{popup:this}),this._source&&(this._source.fire("popupopen",{popup:this},!0),this._source instanceof ai||this._source.on("preclick",Ci))},onRemove:function(e){Ye.prototype.onRemove.call(this,e),e.fire("popupclose",{popup:this}),this._source&&(this._source.fire("popupclose",{popup:this},!0),this._source instanceof ai||this._source.off("preclick",Ci))},getEvents:function(){var e=Ye.prototype.getEvents.call(this);return(this.options.closeOnClick!==void 0?this.options.closeOnClick:this._map.options.closePopupOnClick)&&(e.preclick=this.close),this.options.keepInView&&(e.moveend=this._adjustPan),e},_initLayout:function(){var e="leaflet-popup",r=this._container=Nt("div",e+" "+(this.options.className||"")+" leaflet-zoom-animated"),u=this._wrapper=Nt("div",e+"-content-wrapper",r);if(this._contentNode=Nt("div",e+"-content",u),ln(r),ta(this._contentNode),St(r,"contextmenu",Ci),this._tipContainer=Nt("div",e+"-tip-container",r),this._tip=Nt("div",e+"-tip",this._tipContainer),this.options.closeButton){var _=this._closeButton=Nt("a",e+"-close-button",r);_.setAttribute("role","button"),_.setAttribute("aria-label","Close popup"),_.href="#close",_.innerHTML='<span aria-hidden="true">×</span>',St(_,"click",function(M){ce(M),this.close()},this)}},_updateLayout:function(){var e=this._contentNode,r=e.style;r.width="",r.whiteSpace="nowrap";var u=e.offsetWidth;u=Math.min(u,this.options.maxWidth),u=Math.max(u,this.options.minWidth),r.width=u+1+"px",r.whiteSpace="",r.height="";var _=e.offsetHeight,M=this.options.maxHeight,B="leaflet-popup-scrolled";M&&_>M?(r.height=M+"px",Tt(e,B)):ne(e,B),this._containerWidth=this._container.offsetWidth},_animateZoom:function(e){var r=this._map._latLngToNewLayerPoint(this._latlng,e.zoom,e.center),u=this._getAnchor();re(this._container,r.add(u))},_adjustPan:function(){if(this.options.autoPan){if(this._map._panAnim&&this._map._panAnim.stop(),this._autopanning){this._autopanning=!1;return}var e=this._map,r=parseInt(pi(this._container,"marginBottom"),10)||0,u=this._container.offsetHeight+r,_=this._containerWidth,M=new Pt(this._containerLeft,-u-this._containerBottom);M._add(wi(this._container));var B=e.layerPointToContainerPoint(M),j=Ct(this.options.autoPanPadding),Y=Ct(this.options.autoPanPaddingTopLeft||j),st=Ct(this.options.autoPanPaddingBottomRight||j),ht=e.getSize(),pt=0,wt=0;B.x+_+st.x>ht.x&&(pt=B.x+_-ht.x+st.x),B.x-pt-Y.x<0&&(pt=B.x-Y.x),B.y+u+st.y>ht.y&&(wt=B.y+u-ht.y+st.y),B.y-wt-Y.y<0&&(wt=B.y-Y.y),(pt||wt)&&(this.options.keepInView&&(this._autopanning=!0),e.fire("autopanstart").panBy([pt,wt]))}},_getAnchor:function(){return Ct(this._source&&this._source._getPopupAnchor?this._source._getPopupAnchor():[0,0])}}),ih=function(e,r){return new vi(e,r)};Gt.mergeOptions({closePopupOnClick:!0}),Gt.include({openPopup:function(e,r,u){return this._initOverlay(vi,e,r,u).openOn(this),this},closePopup:function(e){return e=arguments.length?e:this._popup,e&&e.close(),this}}),Ae.include({bindPopup:function(e,r){return this._popup=this._initOverlay(vi,this._popup,e,r),this._popupHandlersAdded||(this.on({click:this._openPopup,keypress:this._onKeyPress,remove:this.closePopup,move:this._movePopup}),this._popupHandlersAdded=!0),this},unbindPopup:function(){return this._popup&&(this.off({click:this._openPopup,keypress:this._onKeyPress,remove:this.closePopup,move:this._movePopup}),this._popupHandlersAdded=!1,this._popup=null),this},openPopup:function(e){return this._popup&&(this instanceof qe||(this._popup._source=this),this._popup._prepareOpen(e||this._latlng)&&this._popup.openOn(this._map)),this},closePopup:function(){return this._popup&&this._popup.close(),this},togglePopup:function(){return this._popup&&this._popup.toggle(this),this},isPopupOpen:function(){return this._popup?this._popup.isOpen():!1},setPopupContent:function(e){return this._popup&&this._popup.setContent(e),this},getPopup:function(){return this._popup},_openPopup:function(e){if(!(!this._popup||!this._map)){Ei(e);var r=e.layer||e.target;if(this._popup._source===r&&!(r instanceof ai)){this._map.hasLayer(this._popup)?this.closePopup():this.openPopup(e.latlng);return}this._popup._source=r,this.openPopup(e.latlng)}},_movePopup:function(e){this._popup.setLatLng(e.latlng)},_onKeyPress:function(e){e.originalEvent.keyCode===13&&this._openPopup(e)}});var is=Ye.extend({options:{pane:"tooltipPane",offset:[0,0],direction:"auto",permanent:!1,sticky:!1,opacity:.9},onAdd:function(e){Ye.prototype.onAdd.call(this,e),this.setOpacity(this.options.opacity),e.fire("tooltipopen",{tooltip:this}),this._source&&(this.addEventParent(this._source),this._source.fire("tooltipopen",{tooltip:this},!0))},onRemove:function(e){Ye.prototype.onRemove.call(this,e),e.fire("tooltipclose",{tooltip:this}),this._source&&(this.removeEventParent(this._source),this._source.fire("tooltipclose",{tooltip:this},!0))},getEvents:function(){var e=Ye.prototype.getEvents.call(this);return this.options.permanent||(e.preclick=this.close),e},_initLayout:function(){var e="leaflet-tooltip",r=e+" "+(this.options.className||"")+" leaflet-zoom-"+(this._zoomAnimated?"animated":"hide");this._contentNode=this._container=Nt("div",r),this._container.setAttribute("role","tooltip"),this._container.setAttribute("id","leaflet-tooltip-"+A(this))},_updateLayout:function(){},_adjustPan:function(){},_setPosition:function(e){var r,u,_=this._map,M=this._container,B=_.latLngToContainerPoint(_.getCenter()),j=_.layerPointToContainerPoint(e),Y=this.options.direction,st=M.offsetWidth,ht=M.offsetHeight,pt=Ct(this.options.offset),wt=this._getAnchor();Y==="top"?(r=st/2,u=ht):Y==="bottom"?(r=st/2,u=0):Y==="center"?(r=st/2,u=ht/2):Y==="right"?(r=0,u=ht/2):Y==="left"?(r=st,u=ht/2):j.x<B.x?(Y="right",r=0,u=ht/2):(Y="left",r=st+(pt.x+wt.x)*2,u=ht/2),e=e.subtract(Ct(r,u,!0)).add(pt).add(wt),ne(M,"leaflet-tooltip-right"),ne(M,"leaflet-tooltip-left"),ne(M,"leaflet-tooltip-top"),ne(M,"leaflet-tooltip-bottom"),Tt(M,"leaflet-tooltip-"+Y),re(M,e)},_updatePosition:function(){var e=this._map.latLngToLayerPoint(this._latlng);this._setPosition(e)},setOpacity:function(e){this.options.opacity=e,this._container&&Ne(this._container,e)},_animateZoom:function(e){var r=this._map._latLngToNewLayerPoint(this._latlng,e.zoom,e.center);this._setPosition(r)},_getAnchor:function(){return Ct(this._source&&this._source._getTooltipAnchor&&!this.options.sticky?this._source._getTooltipAnchor():[0,0])}}),nh=function(e,r){return new is(e,r)};Gt.include({openTooltip:function(e,r,u){return this._initOverlay(is,e,r,u).openOn(this),this},closeTooltip:function(e){return e.close(),this}}),Ae.include({bindTooltip:function(e,r){return this._tooltip&&this.isTooltipOpen()&&this.unbindTooltip(),this._tooltip=this._initOverlay(is,this._tooltip,e,r),this._initTooltipInteractions(),this._tooltip.options.permanent&&this._map&&this._map.hasLayer(this)&&this.openTooltip(),this},unbindTooltip:function(){return this._tooltip&&(this._initTooltipInteractions(!0),this.closeTooltip(),this._tooltip=null),this},_initTooltipInteractions:function(e){if(!(!e&&this._tooltipHandlersAdded)){var r=e?"off":"on",u={remove:this.closeTooltip,move:this._moveTooltip};this._tooltip.options.permanent?u.add=this._openTooltip:(u.mouseover=this._openTooltip,u.mouseout=this.closeTooltip,u.click=this._openTooltip,this._map?this._addFocusListeners():u.add=this._addFocusListeners),this._tooltip.options.sticky&&(u.mousemove=this._moveTooltip),this[r](u),this._tooltipHandlersAdded=!e}},openTooltip:function(e){return this._tooltip&&(this instanceof qe||(this._tooltip._source=this),this._tooltip._prepareOpen(e)&&(this._tooltip.openOn(this._map),this.getElement?this._setAriaDescribedByOnLayer(this):this.eachLayer&&this.eachLayer(this._setAriaDescribedByOnLayer,this))),this},closeTooltip:function(){if(this._tooltip)return this._tooltip.close()},toggleTooltip:function(){return this._tooltip&&this._tooltip.toggle(this),this},isTooltipOpen:function(){return this._tooltip.isOpen()},setTooltipContent:function(e){return this._tooltip&&this._tooltip.setContent(e),this},getTooltip:function(){return this._tooltip},_addFocusListeners:function(){this.getElement?this._addFocusListenersOnLayer(this):this.eachLayer&&this.eachLayer(this._addFocusListenersOnLayer,this)},_addFocusListenersOnLayer:function(e){var r=typeof e.getElement=="function"&&e.getElement();r&&(St(r,"focus",function(){this._tooltip._source=e,this.openTooltip()},this),St(r,"blur",this.closeTooltip,this))},_setAriaDescribedByOnLayer:function(e){var r=typeof e.getElement=="function"&&e.getElement();r&&r.setAttribute("aria-describedby",this._tooltip._container.id)},_openTooltip:function(e){if(!(!this._tooltip||!this._map)){if(this._map.dragging&&this._map.dragging.moving()&&!this._openOnceFlag){this._openOnceFlag=!0;var r=this;this._map.once("moveend",function(){r._openOnceFlag=!1,r._openTooltip(e)});return}this._tooltip._source=e.layer||e.target,this.openTooltip(this._tooltip.options.sticky?e.latlng:void 0)}},_moveTooltip:function(e){var r=e.latlng,u,_;this._tooltip.options.sticky&&e.originalEvent&&(u=this._map.mouseEventToContainerPoint(e.originalEvent),_=this._map.containerPointToLayerPoint(u),r=this._map.layerPointToLatLng(_)),this._tooltip.setLatLng(r)}});var br=Hi.extend({options:{iconSize:[12,12],html:!1,bgPos:null,className:"leaflet-div-icon"},createIcon:function(e){var r=e&&e.tagName==="DIV"?e:document.createElement("div"),u=this.options;if(u.html instanceof Element?(rn(r),r.appendChild(u.html)):r.innerHTML=u.html!==!1?u.html:"",u.bgPos){var _=Ct(u.bgPos);r.style.backgroundPosition=-_.x+"px "+-_.y+"px"}return this._setIconStyles(r,"icon"),r},createShadow:function(){return null}});function sh(e){return new br(e)}Hi.Default=dn;var _n=Ae.extend({options:{tileSize:256,opacity:1,updateWhenIdle:Mt.mobile,updateWhenZooming:!0,updateInterval:200,zIndex:1,bounds:null,minZoom:0,maxZoom:void 0,maxNativeZoom:void 0,minNativeZoom:void 0,noWrap:!1,pane:"tilePane",className:"",keepBuffer:2},initialize:function(e){Z(this,e)},onAdd:function(){this._initContainer(),this._levels={},this._tiles={},this._resetView()},beforeAdd:function(e){e._addZoomLimit(this)},onRemove:function(e){this._removeAllTiles(),Qt(this._container),e._removeZoomLimit(this),this._container=null,this._tileZoom=void 0},bringToFront:function(){return this._map&&(Zi(this._container),this._setAutoZIndex(Math.max)),this},bringToBack:function(){return this._map&&(Li(this._container),this._setAutoZIndex(Math.min)),this},getContainer:function(){return this._container},setOpacity:function(e){return this.options.opacity=e,this._updateOpacity(),this},setZIndex:function(e){return this.options.zIndex=e,this._updateZIndex(),this},isLoading:function(){return this._loading},redraw:function(){if(this._map){this._removeAllTiles();var e=this._clampZoom(this._map.getZoom());e!==this._tileZoom&&(this._tileZoom=e,this._updateLevels()),this._update()}return this},getEvents:function(){var e={viewprereset:this._invalidateAll,viewreset:this._resetView,zoom:this._resetView,moveend:this._onMoveEnd};return this.options.updateWhenIdle||(this._onMove||(this._onMove=k(this._onMoveEnd,this.options.updateInterval,this)),e.move=this._onMove),this._zoomAnimated&&(e.zoomanim=this._animateZoom),e},createTile:function(){return document.createElement("div")},getTileSize:function(){var e=this.options.tileSize;return e instanceof Pt?e:new Pt(e,e)},_updateZIndex:function(){this._container&&this.options.zIndex!==void 0&&this.options.zIndex!==null&&(this._container.style.zIndex=this.options.zIndex)},_setAutoZIndex:function(e){for(var r=this.getPane().children,u=-e(-1/0,1/0),_=0,M=r.length,B;_<M;_++)B=r[_].style.zIndex,r[_]!==this._container&&B&&(u=e(u,+B));isFinite(u)&&(this.options.zIndex=u+e(-1,1),this._updateZIndex())},_updateOpacity:function(){if(this._map&&!Mt.ielt9){Ne(this._container,this.options.opacity);var e=+new Date,r=!1,u=!1;for(var _ in this._tiles){var M=this._tiles[_];if(!(!M.current||!M.loaded)){var B=Math.min(1,(e-M.loaded)/200);Ne(M.el,B),B<1?r=!0:(M.active?u=!0:this._onOpaqueTile(M),M.active=!0)}}u&&!this._noPrune&&this._pruneTiles(),r&&(Zt(this._fadeFrame),this._fadeFrame=Et(this._updateOpacity,this))}},_onOpaqueTile:x,_initContainer:function(){this._container||(this._container=Nt("div","leaflet-layer "+(this.options.className||"")),this._updateZIndex(),this.options.opacity<1&&this._updateOpacity(),this.getPane().appendChild(this._container))},_updateLevels:function(){var e=this._tileZoom,r=this.options.maxZoom;if(e!==void 0){for(var u in this._levels)u=Number(u),this._levels[u].el.children.length||u===e?(this._levels[u].el.style.zIndex=r-Math.abs(e-u),this._onUpdateLevel(u)):(Qt(this._levels[u].el),this._removeTilesAtZoom(u),this._onRemoveLevel(u),delete this._levels[u]);var _=this._levels[e],M=this._map;return _||(_=this._levels[e]={},_.el=Nt("div","leaflet-tile-container leaflet-zoom-animated",this._container),_.el.style.zIndex=r,_.origin=M.project(M.unproject(M.getPixelOrigin()),e).round(),_.zoom=e,this._setZoomTransform(_,M.getCenter(),M.getZoom()),x(_.el.offsetWidth),this._onCreateLevel(_)),this._level=_,_}},_onUpdateLevel:x,_onRemoveLevel:x,_onCreateLevel:x,_pruneTiles:function(){if(this._map){var e,r,u=this._map.getZoom();if(u>this.options.maxZoom||u<this.options.minZoom){this._removeAllTiles();return}for(e in this._tiles)r=this._tiles[e],r.retain=r.current;for(e in this._tiles)if(r=this._tiles[e],r.current&&!r.active){var _=r.coords;this._retainParent(_.x,_.y,_.z,_.z-5)||this._retainChildren(_.x,_.y,_.z,_.z+2)}for(e in this._tiles)this._tiles[e].retain||this._removeTile(e)}},_removeTilesAtZoom:function(e){for(var r in this._tiles)this._tiles[r].coords.z===e&&this._removeTile(r)},_removeAllTiles:function(){for(var e in this._tiles)this._removeTile(e)},_invalidateAll:function(){for(var e in this._levels)Qt(this._levels[e].el),this._onRemoveLevel(Number(e)),delete this._levels[e];this._removeAllTiles(),this._tileZoom=void 0},_retainParent:function(e,r,u,_){var M=Math.floor(e/2),B=Math.floor(r/2),j=u-1,Y=new Pt(+M,+B);Y.z=+j;var st=this._tileCoordsToKey(Y),ht=this._tiles[st];return ht&&ht.active?(ht.retain=!0,!0):(ht&&ht.loaded&&(ht.retain=!0),j>_?this._retainParent(M,B,j,_):!1)},_retainChildren:function(e,r,u,_){for(var M=2*e;M<2*e+2;M++)for(var B=2*r;B<2*r+2;B++){var j=new Pt(M,B);j.z=u+1;var Y=this._tileCoordsToKey(j),st=this._tiles[Y];if(st&&st.active){st.retain=!0;continue}else st&&st.loaded&&(st.retain=!0);u+1<_&&this._retainChildren(M,B,u+1,_)}},_resetView:function(e){var r=e&&(e.pinch||e.flyTo);this._setView(this._map.getCenter(),this._map.getZoom(),r,r)},_animateZoom:function(e){this._setView(e.center,e.zoom,!0,e.noUpdate)},_clampZoom:function(e){var r=this.options;return r.minNativeZoom!==void 0&&e<r.minNativeZoom?r.minNativeZoom:r.maxNativeZoom!==void 0&&r.maxNativeZoom<e?r.maxNativeZoom:e},_setView:function(e,r,u,_){var M=Math.round(r);this.options.maxZoom!==void 0&&M>this.options.maxZoom||this.options.minZoom!==void 0&&M<this.options.minZoom?M=void 0:M=this._clampZoom(M);var B=this.options.updateWhenZooming&&M!==this._tileZoom;(!_||B)&&(this._tileZoom=M,this._abortLoading&&this._abortLoading(),this._updateLevels(),this._resetGrid(),M!==void 0&&this._update(e),u||this._pruneTiles(),this._noPrune=!!u),this._setZoomTransforms(e,r)},_setZoomTransforms:function(e,r){for(var u in this._levels)this._setZoomTransform(this._levels[u],e,r)},_setZoomTransform:function(e,r,u){var _=this._map.getZoomScale(u,e.zoom),M=e.origin.multiplyBy(_).subtract(this._map._getNewPixelOrigin(r,u)).round();Mt.any3d?bi(e.el,M,_):re(e.el,M)},_resetGrid:function(){var e=this._map,r=e.options.crs,u=this._tileSize=this.getTileSize(),_=this._tileZoom,M=this._map.getPixelWorldBounds(this._tileZoom);M&&(this._globalTileRange=this._pxBoundsToTileRange(M)),this._wrapX=r.wrapLng&&!this.options.noWrap&&[Math.floor(e.project([0,r.wrapLng[0]],_).x/u.x),Math.ceil(e.project([0,r.wrapLng[1]],_).x/u.y)],this._wrapY=r.wrapLat&&!this.options.noWrap&&[Math.floor(e.project([r.wrapLat[0],0],_).y/u.x),Math.ceil(e.project([r.wrapLat[1],0],_).y/u.y)]},_onMoveEnd:function(){!this._map||this._map._animatingZoom||this._update()},_getTiledPixelBounds:function(e){var r=this._map,u=r._animatingZoom?Math.max(r._animateToZoom,r.getZoom()):r.getZoom(),_=r.getZoomScale(u,this._tileZoom),M=r.project(e,this._tileZoom).floor(),B=r.getSize().divideBy(_*2);return new te(M.subtract(B),M.add(B))},_update:function(e){var r=this._map;if(r){var u=this._clampZoom(r.getZoom());if(e===void 0&&(e=r.getCenter()),this._tileZoom!==void 0){var _=this._getTiledPixelBounds(e),M=this._pxBoundsToTileRange(_),B=M.getCenter(),j=[],Y=this.options.keepBuffer,st=new te(M.getBottomLeft().subtract([Y,-Y]),M.getTopRight().add([Y,-Y]));if(!(isFinite(M.min.x)&&isFinite(M.min.y)&&isFinite(M.max.x)&&isFinite(M.max.y)))throw new Error("Attempted to load an infinite number of tiles");for(var ht in this._tiles){var pt=this._tiles[ht].coords;(pt.z!==this._tileZoom||!st.contains(new Pt(pt.x,pt.y)))&&(this._tiles[ht].current=!1)}if(Math.abs(u-this._tileZoom)>1){this._setView(e,u);return}for(var wt=M.min.y;wt<=M.max.y;wt++)for(var Ot=M.min.x;Ot<=M.max.x;Ot++){var xe=new Pt(Ot,wt);if(xe.z=this._tileZoom,!!this._isValidTile(xe)){var ue=this._tiles[this._tileCoordsToKey(xe)];ue?ue.current=!0:j.push(xe)}}if(j.sort(function(ee,Je){return ee.distanceTo(B)-Je.distanceTo(B)}),j.length!==0){this._loading||(this._loading=!0,this.fire("loading"));var ke=document.createDocumentFragment();for(Ot=0;Ot<j.length;Ot++)this._addTile(j[Ot],ke);this._level.el.appendChild(ke)}}}},_isValidTile:function(e){var r=this._map.options.crs;if(!r.infinite){var u=this._globalTileRange;if(!r.wrapLng&&(e.x<u.min.x||e.x>u.max.x)||!r.wrapLat&&(e.y<u.min.y||e.y>u.max.y))return!1}if(!this.options.bounds)return!0;var _=this._tileCoordsToBounds(e);return ae(this.options.bounds).overlaps(_)},_keyToBounds:function(e){return this._tileCoordsToBounds(this._keyToTileCoords(e))},_tileCoordsToNwSe:function(e){var r=this._map,u=this.getTileSize(),_=e.scaleBy(u),M=_.add(u),B=r.unproject(_,e.z),j=r.unproject(M,e.z);return[B,j]},_tileCoordsToBounds:function(e){var r=this._tileCoordsToNwSe(e),u=new Ce(r[0],r[1]);return this.options.noWrap||(u=this._map.wrapLatLngBounds(u)),u},_tileCoordsToKey:function(e){return e.x+":"+e.y+":"+e.z},_keyToTileCoords:function(e){var r=e.split(":"),u=new Pt(+r[0],+r[1]);return u.z=+r[2],u},_removeTile:function(e){var r=this._tiles[e];r&&(Qt(r.el),delete this._tiles[e],this.fire("tileunload",{tile:r.el,coords:this._keyToTileCoords(e)}))},_initTile:function(e){Tt(e,"leaflet-tile");var r=this.getTileSize();e.style.width=r.x+"px",e.style.height=r.y+"px",e.onselectstart=x,e.onmousemove=x,Mt.ielt9&&this.options.opacity<1&&Ne(e,this.options.opacity)},_addTile:function(e,r){var u=this._getTilePos(e),_=this._tileCoordsToKey(e),M=this.createTile(this._wrapCoords(e),p(this._tileReady,this,e));this._initTile(M),this.createTile.length<2&&Et(p(this._tileReady,this,e,null,M)),re(M,u),this._tiles[_]={el:M,coords:e,current:!0},r.appendChild(M),this.fire("tileloadstart",{tile:M,coords:e})},_tileReady:function(e,r,u){r&&this.fire("tileerror",{error:r,tile:u,coords:e});var _=this._tileCoordsToKey(e);u=this._tiles[_],u&&(u.loaded=+new Date,this._map._fadeAnimated?(Ne(u.el,0),Zt(this._fadeFrame),this._fadeFrame=Et(this._updateOpacity,this)):(u.active=!0,this._pruneTiles()),r||(Tt(u.el,"leaflet-tile-loaded"),this.fire("tileload",{tile:u.el,coords:e})),this._noTilesToLoad()&&(this._loading=!1,this.fire("load"),Mt.ielt9||!this._map._fadeAnimated?Et(this._pruneTiles,this):setTimeout(p(this._pruneTiles,this),250)))},_getTilePos:function(e){return e.scaleBy(this.getTileSize()).subtract(this._level.origin)},_wrapCoords:function(e){var r=new Pt(this._wrapX?C(e.x,this._wrapX):e.x,this._wrapY?C(e.y,this._wrapY):e.y);return r.z=e.z,r},_pxBoundsToTileRange:function(e){var r=this.getTileSize();return new te(e.min.unscaleBy(r).floor(),e.max.unscaleBy(r).ceil().subtract([1,1]))},_noTilesToLoad:function(){for(var e in this._tiles)if(!this._tiles[e].loaded)return!1;return!0}});function ah(e){return new _n(e)}var Wi=_n.extend({options:{minZoom:0,maxZoom:18,subdomains:"abc",errorTileUrl:"",zoomOffset:0,tms:!1,zoomReverse:!1,detectRetina:!1,crossOrigin:!1,referrerPolicy:!1},initialize:function(e,r){this._url=e,r=Z(this,r),r.detectRetina&&Mt.retina&&r.maxZoom>0?(r.tileSize=Math.floor(r.tileSize/2),r.zoomReverse?(r.zoomOffset--,r.minZoom=Math.min(r.maxZoom,r.minZoom+1)):(r.zoomOffset++,r.maxZoom=Math.max(r.minZoom,r.maxZoom-1)),r.minZoom=Math.max(0,r.minZoom)):r.zoomReverse?r.minZoom=Math.min(r.maxZoom,r.minZoom):r.maxZoom=Math.max(r.minZoom,r.maxZoom),typeof r.subdomains=="string"&&(r.subdomains=r.subdomains.split("")),this.on("tileunload",this._onTileRemove)},setUrl:function(e,r){return this._url===e&&r===void 0&&(r=!0),this._url=e,r||this.redraw(),this},createTile:function(e,r){var u=document.createElement("img");return St(u,"load",p(this._tileOnLoad,this,r,u)),St(u,"error",p(this._tileOnError,this,r,u)),(this.options.crossOrigin||this.options.crossOrigin==="")&&(u.crossOrigin=this.options.crossOrigin===!0?"":this.options.crossOrigin),typeof this.options.referrerPolicy=="string"&&(u.referrerPolicy=this.options.referrerPolicy),u.alt="",u.src=this.getTileUrl(e),u},getTileUrl:function(e){var r={r:Mt.retina?"@2x":"",s:this._getSubdomain(e),x:e.x,y:e.y,z:this._getZoomForUrl()};if(this._map&&!this._map.options.crs.infinite){var u=this._globalTileRange.max.y-e.y;this.options.tms&&(r.y=u),r["-y"]=u}return rt(this._url,c(r,this.options))},_tileOnLoad:function(e,r){Mt.ielt9?setTimeout(p(e,this,null,r),0):e(null,r)},_tileOnError:function(e,r,u){var _=this.options.errorTileUrl;_&&r.getAttribute("src")!==_&&(r.src=_),e(u,r)},_onTileRemove:function(e){e.tile.onload=null},_getZoomForUrl:function(){var e=this._tileZoom,r=this.options.maxZoom,u=this.options.zoomReverse,_=this.options.zoomOffset;return u&&(e=r-e),e+_},_getSubdomain:function(e){var r=Math.abs(e.x+e.y)%this.options.subdomains.length;return this.options.subdomains[r]},_abortLoading:function(){var e,r;for(e in this._tiles)if(this._tiles[e].coords.z!==this._tileZoom&&(r=this._tiles[e].el,r.onload=x,r.onerror=x,!r.complete)){r.src=mt;var u=this._tiles[e].coords;Qt(r),delete this._tiles[e],this.fire("tileabort",{tile:r,coords:u})}},_removeTile:function(e){var r=this._tiles[e];if(r)return r.el.setAttribute("src",mt),_n.prototype._removeTile.call(this,e)},_tileReady:function(e,r,u){if(!(!this._map||u&&u.getAttribute("src")===mt))return _n.prototype._tileReady.call(this,e,r,u)}});function la(e,r){return new Wi(e,r)}var ns=Wi.extend({defaultWmsParams:{service:"WMS",request:"GetMap",layers:"",styles:"",format:"image/jpeg",transparent:!1,version:"1.1.1"},options:{crs:null,uppercase:!1},initialize:function(e,r){this._url=e;var u=c({},this.defaultWmsParams);for(var _ in r)_ in this.options||(u[_]=r[_]);r=Z(this,r);var M=r.detectRetina&&Mt.retina?2:1,B=this.getTileSize();u.width=B.x*M,u.height=B.y*M,this.wmsParams=u},onAdd:function(e){this._crs=this.options.crs||e.options.crs,this._wmsVersion=parseFloat(this.wmsParams.version);var r=this._wmsVersion>=1.3?"crs":"srs";this.wmsParams[r]=this._crs.code,Wi.prototype.onAdd.call(this,e)},getTileUrl:function(e){var r=this._tileCoordsToNwSe(e),u=this._crs,_=we(u.project(r[0]),u.project(r[1])),M=_.min,B=_.max,j=(this._wmsVersion>=1.3&&this._crs===ra?[M.y,M.x,B.y,B.x]:[M.x,M.y,B.x,B.y]).join(","),Y=Wi.prototype.getTileUrl.call(this,e);return Y+K(this.wmsParams,Y,this.options.uppercase)+(this.options.uppercase?"&BBOX=":"&bbox=")+j},setParams:function(e,r){return c(this.wmsParams,e),r||this.redraw(),this}});function rh(e,r){return new ns(e,r)}Wi.WMS=ns,la.wms=rh;var hi=Ae.extend({options:{padding:.1},initialize:function(e){Z(this,e),A(this),this._layers=this._layers||{}},onAdd:function(){this._container||(this._initContainer(),Tt(this._container,"leaflet-zoom-animated")),this.getPane().appendChild(this._container),this._update(),this.on("update",this._updatePaths,this)},onRemove:function(){this.off("update",this._updatePaths,this),this._destroyContainer()},getEvents:function(){var e={viewreset:this._reset,zoom:this._onZoom,moveend:this._update,zoomend:this._onZoomEnd};return this._zoomAnimated&&(e.zoomanim=this._onAnimZoom),e},_onAnimZoom:function(e){this._updateTransform(e.center,e.zoom)},_onZoom:function(){this._updateTransform(this._map.getCenter(),this._map.getZoom())},_updateTransform:function(e,r){var u=this._map.getZoomScale(r,this._zoom),_=this._map.getSize().multiplyBy(.5+this.options.padding),M=this._map.project(this._center,r),B=_.multiplyBy(-u).add(M).subtract(this._map._getNewPixelOrigin(e,r));Mt.any3d?bi(this._container,B,u):re(this._container,B)},_reset:function(){this._update(),this._updateTransform(this._center,this._zoom);for(var e in this._layers)this._layers[e]._reset()},_onZoomEnd:function(){for(var e in this._layers)this._layers[e]._project()},_updatePaths:function(){for(var e in this._layers)this._layers[e]._update()},_update:function(){var e=this.options.padding,r=this._map.getSize(),u=this._map.containerPointToLayerPoint(r.multiplyBy(-e)).round();this._bounds=new te(u,u.add(r.multiplyBy(1+e*2)).round()),this._center=this._map.getCenter(),this._zoom=this._map.getZoom()}}),ua=hi.extend({options:{tolerance:0},getEvents:function(){var e=hi.prototype.getEvents.call(this);return e.viewprereset=this._onViewPreReset,e},_onViewPreReset:function(){this._postponeUpdatePaths=!0},onAdd:function(){hi.prototype.onAdd.call(this),this._draw()},_initContainer:function(){var e=this._container=document.createElement("canvas");St(e,"mousemove",this._onMouseMove,this),St(e,"click dblclick mousedown mouseup contextmenu",this._onClick,this),St(e,"mouseout",this._handleMouseOut,this),e._leaflet_disable_events=!0,this._ctx=e.getContext("2d")},_destroyContainer:function(){Zt(this._redrawRequest),delete this._ctx,Qt(this._container),Wt(this._container),delete this._container},_updatePaths:function(){if(!this._postponeUpdatePaths){var e;this._redrawBounds=null;for(var r in this._layers)e=this._layers[r],e._update();this._redraw()}},_update:function(){if(!(this._map._animatingZoom&&this._bounds)){hi.prototype._update.call(this);var e=this._bounds,r=this._container,u=e.getSize(),_=Mt.retina?2:1;re(r,e.min),r.width=_*u.x,r.height=_*u.y,r.style.width=u.x+"px",r.style.height=u.y+"px",Mt.retina&&this._ctx.scale(2,2),this._ctx.translate(-e.min.x,-e.min.y),this.fire("update")}},_reset:function(){hi.prototype._reset.call(this),this._postponeUpdatePaths&&(this._postponeUpdatePaths=!1,this._updatePaths())},_initPath:function(e){this._updateDashArray(e),this._layers[A(e)]=e;var r=e._order={layer:e,prev:this._drawLast,next:null};this._drawLast&&(this._drawLast.next=r),this._drawLast=r,this._drawFirst=this._drawFirst||this._drawLast},_addPath:function(e){this._requestRedraw(e)},_removePath:function(e){var r=e._order,u=r.next,_=r.prev;u?u.prev=_:this._drawLast=_,_?_.next=u:this._drawFirst=u,delete e._order,delete this._layers[A(e)],this._requestRedraw(e)},_updatePath:function(e){this._extendRedrawBounds(e),e._project(),e._update(),this._requestRedraw(e)},_updateStyle:function(e){this._updateDashArray(e),this._requestRedraw(e)},_updateDashArray:function(e){if(typeof e.options.dashArray=="string"){var r=e.options.dashArray.split(/[, ]+/),u=[],_,M;for(M=0;M<r.length;M++){if(_=Number(r[M]),isNaN(_))return;u.push(_)}e.options._dashArray=u}else e.options._dashArray=e.options.dashArray},_requestRedraw:function(e){this._map&&(this._extendRedrawBounds(e),this._redrawRequest=this._redrawRequest||Et(this._redraw,this))},_extendRedrawBounds:function(e){if(e._pxBounds){var r=(e.options.weight||0)+1;this._redrawBounds=this._redrawBounds||new te,this._redrawBounds.extend(e._pxBounds.min.subtract([r,r])),this._redrawBounds.extend(e._pxBounds.max.add([r,r]))}},_redraw:function(){this._redrawRequest=null,this._redrawBounds&&(this._redrawBounds.min._floor(),this._redrawBounds.max._ceil()),this._clear(),this._draw(),this._redrawBounds=null},_clear:function(){var e=this._redrawBounds;if(e){var r=e.getSize();this._ctx.clearRect(e.min.x,e.min.y,r.x,r.y)}else this._ctx.save(),this._ctx.setTransform(1,0,0,1,0,0),this._ctx.clearRect(0,0,this._container.width,this._container.height),this._ctx.restore()},_draw:function(){var e,r=this._redrawBounds;if(this._ctx.save(),r){var u=r.getSize();this._ctx.beginPath(),this._ctx.rect(r.min.x,r.min.y,u.x,u.y),this._ctx.clip()}this._drawing=!0;for(var _=this._drawFirst;_;_=_.next)e=_.layer,(!r||e._pxBounds&&e._pxBounds.intersects(r))&&e._updatePath();this._drawing=!1,this._ctx.restore()},_updatePoly:function(e,r){if(this._drawing){var u,_,M,B,j=e._parts,Y=j.length,st=this._ctx;if(Y){for(st.beginPath(),u=0;u<Y;u++){for(_=0,M=j[u].length;_<M;_++)B=j[u][_],st[_?"lineTo":"moveTo"](B.x,B.y);r&&st.closePath()}this._fillStroke(st,e)}}},_updateCircle:function(e){if(!(!this._drawing||e._empty())){var r=e._point,u=this._ctx,_=Math.max(Math.round(e._radius),1),M=(Math.max(Math.round(e._radiusY),1)||_)/_;M!==1&&(u.save(),u.scale(1,M)),u.beginPath(),u.arc(r.x,r.y/M,_,0,Math.PI*2,!1),M!==1&&u.restore(),this._fillStroke(u,e)}},_fillStroke:function(e,r){var u=r.options;u.fill&&(e.globalAlpha=u.fillOpacity,e.fillStyle=u.fillColor||u.color,e.fill(u.fillRule||"evenodd")),u.stroke&&u.weight!==0&&(e.setLineDash&&e.setLineDash(r.options&&r.options._dashArray||[]),e.globalAlpha=u.opacity,e.lineWidth=u.weight,e.strokeStyle=u.color,e.lineCap=u.lineCap,e.lineJoin=u.lineJoin,e.stroke())},_onClick:function(e){for(var r=this._map.mouseEventToLayerPoint(e),u,_,M=this._drawFirst;M;M=M.next)u=M.layer,u.options.interactive&&u._containsPoint(r)&&(!(e.type==="click"||e.type==="preclick")||!this._map._draggableMoved(u))&&(_=u);this._fireEvent(_?[_]:!1,e)},_onMouseMove:function(e){if(!(!this._map||this._map.dragging.moving()||this._map._animatingZoom)){var r=this._map.mouseEventToLayerPoint(e);this._handleMouseHover(e,r)}},_handleMouseOut:function(e){var r=this._hoveredLayer;r&&(ne(this._container,"leaflet-interactive"),this._fireEvent([r],e,"mouseout"),this._hoveredLayer=null,this._mouseHoverThrottled=!1)},_handleMouseHover:function(e,r){if(!this._mouseHoverThrottled){for(var u,_,M=this._drawFirst;M;M=M.next)u=M.layer,u.options.interactive&&u._containsPoint(r)&&(_=u);_!==this._hoveredLayer&&(this._handleMouseOut(e),_&&(Tt(this._container,"leaflet-interactive"),this._fireEvent([_],e,"mouseover"),this._hoveredLayer=_)),this._fireEvent(this._hoveredLayer?[this._hoveredLayer]:!1,e),this._mouseHoverThrottled=!0,setTimeout(p(function(){this._mouseHoverThrottled=!1},this),32)}},_fireEvent:function(e,r,u){this._map._fireDOMEvent(r,u||r.type,e)},_bringToFront:function(e){var r=e._order;if(r){var u=r.next,_=r.prev;if(u)u.prev=_;else return;_?_.next=u:u&&(this._drawFirst=u),r.prev=this._drawLast,this._drawLast.next=r,r.next=null,this._drawLast=r,this._requestRedraw(e)}},_bringToBack:function(e){var r=e._order;if(r){var u=r.next,_=r.prev;if(_)_.next=u;else return;u?u.prev=_:_&&(this._drawLast=_),r.prev=null,r.next=this._drawFirst,this._drawFirst.prev=r,this._drawFirst=r,this._requestRedraw(e)}}});function ss(e){return Mt.canvas?new ua(e):null}var mn=function(){try{return document.namespaces.add("lvml","urn:schemas-microsoft-com:vml"),function(e){return document.createElement("<lvml:"+e+' class="lvml">')}}catch{}return function(e){return document.createElement("<"+e+' xmlns="urn:schemas-microsoft.com:vml" class="lvml">')}}(),oh={_initContainer:function(){this._container=Nt("div","leaflet-vml-container")},_update:function(){this._map._animatingZoom||(hi.prototype._update.call(this),this.fire("update"))},_initPath:function(e){var r=e._container=mn("shape");Tt(r,"leaflet-vml-shape "+(this.options.className||"")),r.coordsize="1 1",e._path=mn("path"),r.appendChild(e._path),this._updateStyle(e),this._layers[A(e)]=e},_addPath:function(e){var r=e._container;this._container.appendChild(r),e.options.interactive&&e.addInteractiveTarget(r)},_removePath:function(e){var r=e._container;Qt(r),e.removeInteractiveTarget(r),delete this._layers[A(e)]},_updateStyle:function(e){var r=e._stroke,u=e._fill,_=e.options,M=e._container;M.stroked=!!_.stroke,M.filled=!!_.fill,_.stroke?(r||(r=e._stroke=mn("stroke")),M.appendChild(r),r.weight=_.weight+"px",r.color=_.color,r.opacity=_.opacity,_.dashArray?r.dashStyle=ct(_.dashArray)?_.dashArray.join(" "):_.dashArray.replace(/( *, *)/g," "):r.dashStyle="",r.endcap=_.lineCap.replace("butt","flat"),r.joinstyle=_.lineJoin):r&&(M.removeChild(r),e._stroke=null),_.fill?(u||(u=e._fill=mn("fill")),M.appendChild(u),u.color=_.fillColor||_.color,u.opacity=_.fillOpacity):u&&(M.removeChild(u),e._fill=null)},_updateCircle:function(e){var r=e._point.round(),u=Math.round(e._radius),_=Math.round(e._radiusY||u);this._setPath(e,e._empty()?"M0 0":"AL "+r.x+","+r.y+" "+u+","+_+" 0,"+65535*360)},_setPath:function(e,r){e._path.v=r},_bringToFront:function(e){Zi(e._container)},_bringToBack:function(e){Li(e._container)}},Ki=Mt.vml?mn:Ra,me=hi.extend({_initContainer:function(){this._container=Ki("svg"),this._container.setAttribute("pointer-events","none"),this._rootGroup=Ki("g"),this._container.appendChild(this._rootGroup)},_destroyContainer:function(){Qt(this._container),Wt(this._container),delete this._container,delete this._rootGroup,delete this._svgSize},_update:function(){if(!(this._map._animatingZoom&&this._bounds)){hi.prototype._update.call(this);var e=this._bounds,r=e.getSize(),u=this._container;(!this._svgSize||!this._svgSize.equals(r))&&(this._svgSize=r,u.setAttribute("width",r.x),u.setAttribute("height",r.y)),re(u,e.min),u.setAttribute("viewBox",[e.min.x,e.min.y,r.x,r.y].join(" ")),this.fire("update")}},_initPath:function(e){var r=e._path=Ki("path");e.options.className&&Tt(r,e.options.className),e.options.interactive&&Tt(r,"leaflet-interactive"),this._updateStyle(e),this._layers[A(e)]=e},_addPath:function(e){this._rootGroup||this._initContainer(),this._rootGroup.appendChild(e._path),e.addInteractiveTarget(e._path)},_removePath:function(e){Qt(e._path),e.removeInteractiveTarget(e._path),delete this._layers[A(e)]},_updatePath:function(e){e._project(),e._update()},_updateStyle:function(e){var r=e._path,u=e.options;r&&(u.stroke?(r.setAttribute("stroke",u.color),r.setAttribute("stroke-opacity",u.opacity),r.setAttribute("stroke-width",u.weight),r.setAttribute("stroke-linecap",u.lineCap),r.setAttribute("stroke-linejoin",u.lineJoin),u.dashArray?r.setAttribute("stroke-dasharray",u.dashArray):r.removeAttribute("stroke-dasharray"),u.dashOffset?r.setAttribute("stroke-dashoffset",u.dashOffset):r.removeAttribute("stroke-dashoffset")):r.setAttribute("stroke","none"),u.fill?(r.setAttribute("fill",u.fillColor||u.color),r.setAttribute("fill-opacity",u.fillOpacity),r.setAttribute("fill-rule",u.fillRule||"evenodd")):r.setAttribute("fill","none"))},_updatePoly:function(e,r){this._setPath(e,Ga(e._parts,r))},_updateCircle:function(e){var r=e._point,u=Math.max(Math.round(e._radius),1),_=Math.max(Math.round(e._radiusY),1)||u,M="a"+u+","+_+" 0 1,0 ",B=e._empty()?"M0 0":"M"+(r.x-u)+","+r.y+M+u*2+",0 "+M+-u*2+",0 ";this._setPath(e,B)},_setPath:function(e,r){e._path.setAttribute("d",r)},_bringToFront:function(e){Zi(e._path)},_bringToBack:function(e){Li(e._path)}});Mt.vml&&me.include(oh);function Me(e){return Mt.svg||Mt.vml?new me(e):null}Gt.include({getRenderer:function(e){var r=e.options.renderer||this._getPaneRenderer(e.options.pane)||this.options.renderer||this._renderer;return r||(r=this._renderer=this._createRenderer()),this.hasLayer(r)||this.addLayer(r),r},_getPaneRenderer:function(e){if(e==="overlayPane"||e===void 0)return!1;var r=this._paneRenderers[e];return r===void 0&&(r=this._createRenderer({pane:e}),this._paneRenderers[e]=r),r},_createRenderer:function(e){return this.options.preferCanvas&&ss(e)||Me(e)}});var ca=yi.extend({initialize:function(e,r){yi.prototype.initialize.call(this,this._boundsToLatLngs(e),r)},setBounds:function(e){return this.setLatLngs(this._boundsToLatLngs(e))},_boundsToLatLngs:function(e){return e=ae(e),[e.getSouthWest(),e.getNorthWest(),e.getNorthEast(),e.getSouthEast()]}});function He(e,r){return new ca(e,r)}me.create=Ki,me.pointsToPath=Ga,oi.geometryToLayer=Wn,oi.coordsToLatLng=Kn,oi.coordsToLatLngs=Xn,oi.latLngToCoords=Yn,oi.latLngsToCoords=Jn,oi.getFeature=Vi,oi.asFeature=Qn,Gt.mergeOptions({boxZoom:!0});var kt=ve.extend({initialize:function(e){this._map=e,this._container=e._container,this._pane=e._panes.overlayPane,this._resetStateTimeout=0,e.on("unload",this._destroy,this)},addHooks:function(){St(this._container,"mousedown",this._onMouseDown,this)},removeHooks:function(){Wt(this._container,"mousedown",this._onMouseDown,this)},moved:function(){return this._moved},_destroy:function(){Qt(this._pane),delete this._pane},_resetState:function(){this._resetStateTimeout=0,this._moved=!1},_clearDeferredResetState:function(){this._resetStateTimeout!==0&&(clearTimeout(this._resetStateTimeout),this._resetStateTimeout=0)},_onMouseDown:function(e){if(!e.shiftKey||e.which!==1&&e.button!==1)return!1;this._clearDeferredResetState(),this._resetState(),on(),$s(),this._startPoint=this._map.mouseEventToContainerPoint(e),St(document,{contextmenu:Ei,mousemove:this._onMouseMove,mouseup:this._onMouseUp,keydown:this._onKeyDown},this)},_onMouseMove:function(e){this._moved||(this._moved=!0,this._box=Nt("div","leaflet-zoom-box",this._container),Tt(this._container,"leaflet-crosshair"),this._map.fire("boxzoomstart")),this._point=this._map.mouseEventToContainerPoint(e);var r=new te(this._point,this._startPoint),u=r.getSize();re(this._box,r.min),this._box.style.width=u.x+"px",this._box.style.height=u.y+"px"},_finish:function(){this._moved&&(Qt(this._box),ne(this._container,"leaflet-crosshair")),hn(),Ws(),Wt(document,{contextmenu:Ei,mousemove:this._onMouseMove,mouseup:this._onMouseUp,keydown:this._onKeyDown},this)},_onMouseUp:function(e){if(!(e.which!==1&&e.button!==1)&&(this._finish(),!!this._moved)){this._clearDeferredResetState(),this._resetStateTimeout=setTimeout(p(this._resetState,this),0);var r=new Ce(this._map.containerPointToLatLng(this._startPoint),this._map.containerPointToLatLng(this._point));this._map.fitBounds(r).fire("boxzoomend",{boxZoomBounds:r})}},_onKeyDown:function(e){e.keyCode===27&&(this._finish(),this._clearDeferredResetState(),this._resetState())}});Gt.addInitHook("addHandler","boxZoom",kt),Gt.mergeOptions({doubleClickZoom:!0});var as=ve.extend({addHooks:function(){this._map.on("dblclick",this._onDoubleClick,this)},removeHooks:function(){this._map.off("dblclick",this._onDoubleClick,this)},_onDoubleClick:function(e){var r=this._map,u=r.getZoom(),_=r.options.zoomDelta,M=e.originalEvent.shiftKey?u-_:u+_;r.options.doubleClickZoom==="center"?r.setZoom(M):r.setZoomAround(e.containerPoint,M)}});Gt.addInitHook("addHandler","doubleClickZoom",as),Gt.mergeOptions({dragging:!0,inertia:!0,inertiaDeceleration:3400,inertiaMaxSpeed:1/0,easeLinearity:.2,worldCopyJump:!1,maxBoundsViscosity:0});var rs=ve.extend({addHooks:function(){if(!this._draggable){var e=this._map;this._draggable=new mi(e._mapPane,e._container),this._draggable.on({dragstart:this._onDragStart,drag:this._onDrag,dragend:this._onDragEnd},this),this._draggable.on("predrag",this._onPreDragLimit,this),e.options.worldCopyJump&&(this._draggable.on("predrag",this._onPreDragWrap,this),e.on("zoomend",this._onZoomEnd,this),e.whenReady(this._onZoomEnd,this))}Tt(this._map._container,"leaflet-grab leaflet-touch-drag"),this._draggable.enable(),this._positions=[],this._times=[]},removeHooks:function(){ne(this._map._container,"leaflet-grab"),ne(this._map._container,"leaflet-touch-drag"),this._draggable.disable()},moved:function(){return this._draggable&&this._draggable._moved},moving:function(){return this._draggable&&this._draggable._moving},_onDragStart:function(){var e=this._map;if(e._stop(),this._map.options.maxBounds&&this._map.options.maxBoundsViscosity){var r=ae(this._map.options.maxBounds);this._offsetLimit=we(this._map.latLngToContainerPoint(r.getNorthWest()).multiplyBy(-1),this._map.latLngToContainerPoint(r.getSouthEast()).multiplyBy(-1).add(this._map.getSize())),this._viscosity=Math.min(1,Math.max(0,this._map.options.maxBoundsViscosity))}else this._offsetLimit=null;e.fire("movestart").fire("dragstart"),e.options.inertia&&(this._positions=[],this._times=[])},_onDrag:function(e){if(this._map.options.inertia){var r=this._lastTime=+new Date,u=this._lastPos=this._draggable._absPos||this._draggable._newPos;this._positions.push(u),this._times.push(r),this._prunePositions(r)}this._map.fire("move",e).fire("drag",e)},_prunePositions:function(e){for(;this._positions.length>1&&e-this._times[0]>50;)this._positions.shift(),this._times.shift()},_onZoomEnd:function(){var e=this._map.getSize().divideBy(2),r=this._map.latLngToLayerPoint([0,0]);this._initialWorldOffset=r.subtract(e).x,this._worldWidth=this._map.getPixelWorldBounds().getSize().x},_viscousLimit:function(e,r){return e-(e-r)*this._viscosity},_onPreDragLimit:function(){if(!(!this._viscosity||!this._offsetLimit)){var e=this._draggable._newPos.subtract(this._draggable._startPos),r=this._offsetLimit;e.x<r.min.x&&(e.x=this._viscousLimit(e.x,r.min.x)),e.y<r.min.y&&(e.y=this._viscousLimit(e.y,r.min.y)),e.x>r.max.x&&(e.x=this._viscousLimit(e.x,r.max.x)),e.y>r.max.y&&(e.y=this._viscousLimit(e.y,r.max.y)),this._draggable._newPos=this._draggable._startPos.add(e)}},_onPreDragWrap:function(){var e=this._worldWidth,r=Math.round(e/2),u=this._initialWorldOffset,_=this._draggable._newPos.x,M=(_-r+u)%e+r-u,B=(_+r+u)%e-r-u,j=Math.abs(M+u)<Math.abs(B+u)?M:B;this._draggable._absPos=this._draggable._newPos.clone(),this._draggable._newPos.x=j},_onDragEnd:function(e){var r=this._map,u=r.options,_=!u.inertia||e.noInertia||this._times.length<2;if(r.fire("dragend",e),_)r.fire("moveend");else{this._prunePositions(+new Date);var M=this._lastPos.subtract(this._positions[0]),B=(this._lastTime-this._times[0])/1e3,j=u.easeLinearity,Y=M.multiplyBy(j/B),st=Y.distanceTo([0,0]),ht=Math.min(u.inertiaMaxSpeed,st),pt=Y.multiplyBy(ht/st),wt=ht/(u.inertiaDeceleration*j),Ot=pt.multiplyBy(-wt/2).round();!Ot.x&&!Ot.y?r.fire("moveend"):(Ot=r._limitOffset(Ot,r.options.maxBounds),Et(function(){r.panBy(Ot,{duration:wt,easeLinearity:j,noMoveStart:!0,animate:!0})}))}}});Gt.addInitHook("addHandler","dragging",rs),Gt.mergeOptions({keyboard:!0,keyboardPanDelta:80});var li=ve.extend({keyCodes:{left:[37],right:[39],down:[40],up:[38],zoomIn:[187,107,61,171],zoomOut:[189,109,54,173]},initialize:function(e){this._map=e,this._setPanDelta(e.options.keyboardPanDelta),this._setZoomDelta(e.options.zoomDelta)},addHooks:function(){var e=this._map._container;e.tabIndex<=0&&(e.tabIndex="0"),St(e,{focus:this._onFocus,blur:this._onBlur,mousedown:this._onMouseDown},this),this._map.on({focus:this._addHooks,blur:this._removeHooks},this)},removeHooks:function(){this._removeHooks(),Wt(this._map._container,{focus:this._onFocus,blur:this._onBlur,mousedown:this._onMouseDown},this),this._map.off({focus:this._addHooks,blur:this._removeHooks},this)},_onMouseDown:function(){if(!this._focused){var e=document.body,r=document.documentElement,u=e.scrollTop||r.scrollTop,_=e.scrollLeft||r.scrollLeft;this._map._container.focus(),window.scrollTo(_,u)}},_onFocus:function(){this._focused=!0,this._map.fire("focus")},_onBlur:function(){this._focused=!1,this._map.fire("blur")},_setPanDelta:function(e){var r=this._panKeys={},u=this.keyCodes,_,M;for(_=0,M=u.left.length;_<M;_++)r[u.left[_]]=[-1*e,0];for(_=0,M=u.right.length;_<M;_++)r[u.right[_]]=[e,0];for(_=0,M=u.down.length;_<M;_++)r[u.down[_]]=[0,e];for(_=0,M=u.up.length;_<M;_++)r[u.up[_]]=[0,-1*e]},_setZoomDelta:function(e){var r=this._zoomKeys={},u=this.keyCodes,_,M;for(_=0,M=u.zoomIn.length;_<M;_++)r[u.zoomIn[_]]=e;for(_=0,M=u.zoomOut.length;_<M;_++)r[u.zoomOut[_]]=-e},_addHooks:function(){St(document,"keydown",this._onKeyDown,this)},_removeHooks:function(){Wt(document,"keydown",this._onKeyDown,this)},_onKeyDown:function(e){if(!(e.altKey||e.ctrlKey||e.metaKey)){var r=e.keyCode,u=this._map,_;if(r in this._panKeys){if(!u._panAnim||!u._panAnim._inProgress)if(_=this._panKeys[r],e.shiftKey&&(_=Ct(_).multiplyBy(3)),u.options.maxBounds&&(_=u._limitOffset(Ct(_),u.options.maxBounds)),u.options.worldCopyJump){var M=u.wrapLatLng(u.unproject(u.project(u.getCenter()).add(_)));u.panTo(M)}else u.panBy(_)}else if(r in this._zoomKeys)u.setZoom(u.getZoom()+(e.shiftKey?3:1)*this._zoomKeys[r]);else if(r===27&&u._popup&&u._popup.options.closeOnEscapeKey)u.closePopup();else return;Ei(e)}}});Gt.addInitHook("addHandler","keyboard",li),Gt.mergeOptions({scrollWheelZoom:!0,wheelDebounceTime:40,wheelPxPerZoomLevel:60});var le=ve.extend({addHooks:function(){St(this._map._container,"wheel",this._onWheelScroll,this),this._delta=0},removeHooks:function(){Wt(this._map._container,"wheel",this._onWheelScroll,this)},_onWheelScroll:function(e){var r=ur(e),u=this._map.options.wheelDebounceTime;this._delta+=r,this._lastMousePos=this._map.mouseEventToContainerPoint(e),this._startTime||(this._startTime=+new Date);var _=Math.max(u-(+new Date-this._startTime),0);clearTimeout(this._timer),this._timer=setTimeout(p(this._performZoom,this),_),Ei(e)},_performZoom:function(){var e=this._map,r=e.getZoom(),u=this._map.options.zoomSnap||0;e._stop();var _=this._delta/(this._map.options.wheelPxPerZoomLevel*4),M=4*Math.log(2/(1+Math.exp(-Math.abs(_))))/Math.LN2,B=u?Math.ceil(M/u)*u:M,j=e._limitZoom(r+(this._delta>0?B:-B))-r;this._delta=0,this._startTime=null,j&&(e.options.scrollWheelZoom==="center"?e.setZoom(r+j):e.setZoomAround(this._lastMousePos,r+j))}});Gt.addInitHook("addHandler","scrollWheelZoom",le);var wr=600;Gt.mergeOptions({tapHold:Mt.touchNative&&Mt.safari&&Mt.mobile,tapTolerance:15});var Oe=ve.extend({addHooks:function(){St(this._map._container,"touchstart",this._onDown,this)},removeHooks:function(){Wt(this._map._container,"touchstart",this._onDown,this)},_onDown:function(e){if(clearTimeout(this._holdTimeout),e.touches.length===1){var r=e.touches[0];this._startPos=this._newPos=new Pt(r.clientX,r.clientY),this._holdTimeout=setTimeout(p(function(){this._cancel(),this._isTapValid()&&(St(document,"touchend",ce),St(document,"touchend touchcancel",this._cancelClickPrevent),this._simulateEvent("contextmenu",r))},this),wr),St(document,"touchend touchcancel contextmenu",this._cancel,this),St(document,"touchmove",this._onMove,this)}},_cancelClickPrevent:function e(){Wt(document,"touchend",ce),Wt(document,"touchend touchcancel",e)},_cancel:function(){clearTimeout(this._holdTimeout),Wt(document,"touchend touchcancel contextmenu",this._cancel,this),Wt(document,"touchmove",this._onMove,this)},_onMove:function(e){var r=e.touches[0];this._newPos=new Pt(r.clientX,r.clientY)},_isTapValid:function(){return this._newPos.distanceTo(this._startPos)<=this._map.options.tapTolerance},_simulateEvent:function(e,r){var u=new MouseEvent(e,{bubbles:!0,cancelable:!0,view:window,screenX:r.screenX,screenY:r.screenY,clientX:r.clientX,clientY:r.clientY});u._simulated=!0,r.target.dispatchEvent(u)}});Gt.addInitHook("addHandler","tapHold",Oe),Gt.mergeOptions({touchZoom:Mt.touch,bounceAtZoomLimits:!0});var Ie=ve.extend({addHooks:function(){Tt(this._map._container,"leaflet-touch-zoom"),St(this._map._container,"touchstart",this._onTouchStart,this)},removeHooks:function(){ne(this._map._container,"leaflet-touch-zoom"),Wt(this._map._container,"touchstart",this._onTouchStart,this)},_onTouchStart:function(e){var r=this._map;if(!(!e.touches||e.touches.length!==2||r._animatingZoom||this._zooming)){var u=r.mouseEventToContainerPoint(e.touches[0]),_=r.mouseEventToContainerPoint(e.touches[1]);this._centerPoint=r.getSize()._divideBy(2),this._startLatLng=r.containerPointToLatLng(this._centerPoint),r.options.touchZoom!=="center"&&(this._pinchStartLatLng=r.containerPointToLatLng(u.add(_)._divideBy(2))),this._startDist=u.distanceTo(_),this._startZoom=r.getZoom(),this._moved=!1,this._zooming=!0,r._stop(),St(document,"touchmove",this._onTouchMove,this),St(document,"touchend touchcancel",this._onTouchEnd,this),ce(e)}},_onTouchMove:function(e){if(!(!e.touches||e.touches.length!==2||!this._zooming)){var r=this._map,u=r.mouseEventToContainerPoint(e.touches[0]),_=r.mouseEventToContainerPoint(e.touches[1]),M=u.distanceTo(_)/this._startDist;if(this._zoom=r.getScaleZoom(M,this._startZoom),!r.options.bounceAtZoomLimits&&(this._zoom<r.getMinZoom()&&M<1||this._zoom>r.getMaxZoom()&&M>1)&&(this._zoom=r._limitZoom(this._zoom)),r.options.touchZoom==="center"){if(this._center=this._startLatLng,M===1)return}else{var B=u._add(_)._divideBy(2)._subtract(this._centerPoint);if(M===1&&B.x===0&&B.y===0)return;this._center=r.unproject(r.project(this._pinchStartLatLng,this._zoom).subtract(B),this._zoom)}this._moved||(r._moveStart(!0,!1),this._moved=!0),Zt(this._animRequest);var j=p(r._move,r,this._center,this._zoom,{pinch:!0,round:!1},void 0);this._animRequest=Et(j,this,!0),ce(e)}},_onTouchEnd:function(){if(!this._moved||!this._zooming){this._zooming=!1;return}this._zooming=!1,Zt(this._animRequest),Wt(document,"touchmove",this._onTouchMove,this),Wt(document,"touchend touchcancel",this._onTouchEnd,this),this._map.options.zoomAnimation?this._map._animateZoom(this._center,this._map._limitZoom(this._zoom),!0,this._map.options.zoomSnap):this._map._resetView(this._center,this._map._limitZoom(this._zoom))}});Gt.addInitHook("addHandler","touchZoom",Ie),Gt.BoxZoom=kt,Gt.DoubleClickZoom=as,Gt.Drag=rs,Gt.Keyboard=li,Gt.ScrollWheelZoom=le,Gt.TapHold=Oe,Gt.TouchZoom=Ie,a.Bounds=te,a.Browser=Mt,a.CRS=si,a.Canvas=ua,a.Circle=ha,a.CircleMarker=Xe,a.Class=pe,a.Control=Bt,a.DivIcon=br,a.DivOverlay=Ye,a.DomEvent=Nn,a.DomUtil=No,a.Draggable=mi,a.Evented=en,a.FeatureGroup=qe,a.GeoJSON=oi,a.GridLayer=_n,a.Handler=ve,a.Icon=Hi,a.ImageOverlay=$i,a.LatLng=Ht,a.LatLngBounds=Ce,a.Layer=Ae,a.LayerGroup=qi,a.LineUtil=qn,a.Map=Gt,a.Marker=$n,a.Mixin=Ho,a.Path=ai,a.Point=Pt,a.PolyUtil=Vo,a.Polygon=yi,a.Polyline=ri,a.Popup=vi,a.PosAnimation=cr,a.Projection=Ke,a.Rectangle=ca,a.Renderer=hi,a.SVG=me,a.SVGOverlay=Lr,a.TileLayer=Wi,a.Tooltip=is,a.Transformation=Ds,a.Util=be,a.VideoOverlay=pn,a.bind=p,a.bounds=we,a.canvas=ss,a.circle=Si,a.circleMarker=vr,a.control=Pi,a.divIcon=sh,a.extend=c,a.featureGroup=Xo,a.geoJSON=es,a.geoJson=Mr,a.gridLayer=ah,a.icon=Yo,a.imageOverlay=th,a.latLng=Rt,a.latLngBounds=ae,a.layerGroup=Ko,a.map=dr,a.marker=Jo,a.point=Ct,a.polygon=fn,a.polyline=Qo,a.popup=ih,a.rectangle=He,a.setOptions=Z,a.stamp=A,a.svg=Me,a.svgOverlay=eh,a.tileLayer=la,a.tooltip=nh,a.transformation=sn,a.version=l,a.videoOverlay=xr;var Ti=window.L;a.noConflict=function(){return window.L=Ti,this},window.L=a})}(ga,ga.exports)),ga.exports}var U=gh();(function(t){typeof define=="function"&&define.amd?define(t):t()})(function(){const t=L.extend({},L.DomUtil);L.extend(L.DomUtil,{setTransform:function(C,x,b,T,G){var Z=x||new L.Point(0,0);if(!T)return x=Z._round(),t.setTransform.apply(this,arguments);Z=Z.rotateFrom(T,G),C.style[L.DomUtil.TRANSFORM]="translate3d("+Z.x+"px,"+Z.y+"px,0)"+(b?" scale("+b+")":"")+" rotate("+T+"rad)"},setPosition:function(C,x,b,T,G){if(!b&&!G)return t.setPosition.apply(this,arguments);C._leaflet_pos=x,L.Browser.any3d?L.DomUtil.setTransform(C,x,G,b,T):(C.style.left=x.x+"px",C.style.top=x.y+"px")},DEG_TO_RAD:Math.PI/180,RAD_TO_DEG:180/Math.PI}),L.Draggable.include({}),L.extend(L.Point.prototype,{rotate:function(C){return this.rotateFrom(C,new L.Point(0,0))},rotateFrom:function(C,x){if(!C)return this;var b=Math.sin(C),T=Math.cos(C),G=x.x,Z=x.y,K=this.x-G,at=this.y-Z;return new L.Point(K*T-at*b+G,K*b+at*T+Z)}});const n=L.extend({},L.DivOverlay.prototype);L.DivOverlay.include({getEvents:function(){return L.extend(n.getEvents.apply(this,arguments),{rotate:this._updatePosition})},_updatePosition:function(){if(this._map&&(n._updatePosition.apply(this,arguments),this._map&&this._map._rotate&&this._zoomAnimated)){var C=this._getAnchor(),x=L.DomUtil.getPosition(this._container).subtract(C);L.DomUtil.setPosition(this._container,this._map.rotatedPointToMapPanePoint(x).add(C))}}});const a=L.extend({},L.Popup.prototype);L.Popup.include({_animateZoom:function(C){if(a._animateZoom.apply(this,arguments),this._map&&this._map._rotate){var x=this._getAnchor(),b=L.DomUtil.getPosition(this._container).subtract(x);L.DomUtil.setPosition(this._container,this._map.rotatedPointToMapPanePoint(b).add(x))}},_adjustPan:function(){if(!(!this.options.autoPan||this._map._panAnim&&this._map._panAnim._inProgress)){if(this._autopanning){this._autopanning=!1;return}var C=this._map,x=parseInt(L.DomUtil.getStyle(this._container,"marginBottom"),10)||0,b=this._container.offsetHeight+x,T=this._containerWidth,G=new L.Point(this._containerLeft,-b-this._containerBottom);G._add(L.DomUtil.getPosition(this._container));var Z=G._add(this._map._getMapPanePos()),K=L.point(this.options.autoPanPadding),at=L.point(this.options.autoPanPaddingTopLeft||K),rt=L.point(this.options.autoPanPaddingBottomRight||K),ct=C.getSize(),yt=0,mt=0;Z.x+T+rt.x>ct.x&&(yt=Z.x+T-ct.x+rt.x),Z.x-yt-at.x<0&&(yt=Z.x-at.x),Z.y+b+rt.y>ct.y&&(mt=Z.y+b-ct.y+rt.y),Z.y-mt-at.y<0&&(mt=Z.y-at.y),(yt||mt)&&(this.options.keepInView&&(this._autopanning=!0),C.fire("autopanstart").panBy([yt,mt]))}}});const l=L.extend({},L.Tooltip.prototype);L.Tooltip.include({_animateZoom:function(C){if(!this._map._rotate)return l._animateZoom.apply(this,arguments);var x=this._map._latLngToNewLayerPoint(this._latlng,C.zoom,C.center);x=this._map.rotatedPointToMapPanePoint(x),this._setPosition(x)},_updatePosition:function(){if(!this._map._rotate)return l._updatePosition.apply(this,arguments);var C=this._map.latLngToLayerPoint(this._latlng);C=this._map.rotatedPointToMapPanePoint(C),this._setPosition(C)}}),L.extend({},L.Icon.prototype),L.Icon.include({_setIconStyles:function(C,x){var b=this.options,T=b[x+"Size"];typeof T=="number"&&(T=[T,T]);var G=L.point(T),Z=L.point(x==="shadow"&&b.shadowAnchor||b.iconAnchor||G&&G.divideBy(2,!0));C.className="leaflet-marker-"+x+" "+(b.className||""),Z&&(C.style.marginLeft=-Z.x+"px",C.style.marginTop=-Z.y+"px",C.style[L.DomUtil.TRANSFORM+"Origin"]=Z.x+"px "+Z.y+"px 0px"),G&&(C.style.width=G.x+"px",C.style.height=G.y+"px")}});const c=L.extend({},L.Marker.prototype);L.Marker.mergeOptions({rotation:0,rotateWithView:!1,scale:void 0});var f,p={_onDrag:function(C){var x=this._marker,b=x.options.rotation||x.options.rotateWithView,T=x._shadow,G=L.DomUtil.getPosition(x._icon);!b&&T&&L.DomUtil.setPosition(T,G),x._map._rotate&&(G=x._map.mapPanePointToRotatedPoint(G));var Z=x._map.layerPointToLatLng(G);x._latlng=Z,C.latlng=Z,C.oldLatLng=this._oldLatLng,b?x.setLatLng(Z):x.fire("move",C),x.fire("drag",C)},_onDragEnd:function(C){this._marker._map._rotate&&this._marker.update(),f._onDragEnd.apply(this,arguments)}};L.Marker.include({getEvents:function(){return L.extend(c.getEvents.apply(this,arguments),{rotate:this.update})},_initInteraction:function(){var C=c._initInteraction.apply(this,arguments);return this.dragging&&this.dragging.enabled()&&this._map&&this._map._rotate&&(f=f||Object.getPrototypeOf(this.dragging),this.dragging.disable(),Object.assign(this.dragging,{_onDrag:p._onDrag.bind(this.dragging),_onDragEnd:p._onDragEnd.bind(this.dragging)}),this.dragging.enable()),C},_setPos:function(C){this._map._rotate&&(C=this._map.rotatedPointToMapPanePoint(C));var x=this.options.rotation||0;this.options.rotateWithView&&(x+=this._map._bearing),this._icon&&L.DomUtil.setPosition(this._icon,C,x,C,this.options.scale),this._shadow&&L.DomUtil.setPosition(this._shadow,C,x,C,this.options.scale),this._zIndex=C.y+this.options.zIndexOffset,this._resetZIndex()},setRotation:function(C){this.options.rotation=C,this.update()}});const g=L.extend({},L.GridLayer.prototype);L.GridLayer.include({getEvents:function(){var C=g.getEvents.apply(this,arguments);return this._map._rotate&&!this.options.updateWhenIdle&&(this._onRotate||(this._onRotate=L.Util.throttle(this._onMoveEnd,this.options.updateInterval,this)),C.rotate=this._onRotate),C},_getTiledPixelBounds:function(C){return this._map._rotate?this._map._getNewPixelBounds(C,this._tileZoom):g._getTiledPixelBounds.apply(this,arguments)}});const A=L.extend({},L.Renderer.prototype);L.Renderer.include({getEvents:function(){return L.extend(A.getEvents.apply(this,arguments),{rotate:this._update})},onAdd:function(){A.onAdd.apply(this,arguments),L.version<="1.9.3"&&this._container.classList.add("leaflet-zoom-animated")},_updateTransform:function(C,x){if(!this._map._rotate)return A._updateTransform.apply(this,arguments);var b=this._map.getZoomScale(x,this._zoom),T=this._map._latLngToNewLayerPoint(this._topLeft,x,C);L.DomUtil.setTransform(this._container,T,b)},_update:function(){if(!this._map._rotate)return A._update.apply(this,arguments);this._bounds=this._map._getPaddedPixelBounds(this.options.padding),this._topLeft=this._map.layerPointToLatLng(this._bounds.min),this._center=this._map.getCenter(),this._zoom=this._map.getZoom()}});const k=L.extend({},L.Map.prototype);L.Map.mergeOptions({rotate:!1,bearing:0}),L.Map.include({initialize:function(C,x){x.rotate&&(this._rotate=!0,this._bearing=0),k.initialize.apply(this,arguments),this.options.rotate&&this.setBearing(this.options.bearing)},containerPointToLayerPoint:function(C){return this._rotate?L.point(C).subtract(this._getMapPanePos()).rotateFrom(-this._bearing,this._getRotatePanePos()).subtract(this._getRotatePanePos()):k.containerPointToLayerPoint.apply(this,arguments)},layerPointToContainerPoint:function(C){return this._rotate?L.point(C).add(this._getRotatePanePos()).rotateFrom(this._bearing,this._getRotatePanePos()).add(this._getMapPanePos()):k.layerPointToContainerPoint.apply(this,arguments)},rotatedPointToMapPanePoint:function(C){return L.point(C).rotate(this._bearing)._add(this._getRotatePanePos())},mapPanePointToRotatedPoint:function(C){return L.point(C)._subtract(this._getRotatePanePos()).rotate(-this._bearing)},mapBoundsToContainerBounds:function(C){if(!this._rotate&&k.mapBoundsToContainerBounds)return k.mapBoundsToContainerBounds.apply(this,arguments);const x=this.getPixelOrigin(),b=this.layerPointToContainerPoint(this.project(C.getNorthWest())._subtract(x)),T=this.layerPointToContainerPoint(this.project(C.getNorthEast())._subtract(x)),G=this.layerPointToContainerPoint(this.project(C.getSouthWest())._subtract(x)),Z=this.layerPointToContainerPoint(this.project(C.getSouthEast())._subtract(x));return L.bounds([L.point(Math.min(b.x,T.x,Z.x,G.x),Math.min(b.y,T.y,Z.y,G.y)),L.point(Math.max(b.x,T.x,Z.x,G.x),Math.max(b.y,T.y,Z.y,G.y))])},getBounds:function(){if(!this._rotate)return k.getBounds.apply(this,arguments);var C=this.getSize();return new L.LatLngBounds([this.containerPointToLatLng([0,0]),this.containerPointToLatLng([C.x,0]),this.containerPointToLatLng([C.x,C.y]),this.containerPointToLatLng([0,C.y])])},setBearing:function(C){if(!(!L.Browser.any3d||!this._rotate)){var x=L.Util.wrapNum(C,[0,360])*L.DomUtil.DEG_TO_RAD,b=this._getPixelCenter(),T=this._getRotatePanePos().rotateFrom(-this._bearing,b),G=T.rotateFrom(x,b);L.DomUtil.setPosition(this._rotatePane,T,x,b),this._pivot=b,this._bearing=x,this._rotatePanePos=G,this.fire("rotate")}},getBearing:function(){return this._bearing*L.DomUtil.RAD_TO_DEG},_initPanes:function(){var C=this._panes={};this._paneRenderers={},this._mapPane=this.createPane("mapPane",this._container),L.DomUtil.setPosition(this._mapPane,new L.Point(0,0)),this._rotate?(this._rotatePane=this.createPane("rotatePane",this._mapPane),this._norotatePane=this.createPane("norotatePane",this._mapPane),this.createPane("tilePane",this._rotatePane),this.createPane("overlayPane",this._rotatePane),this.createPane("shadowPane",this._norotatePane),this.createPane("markerPane",this._norotatePane),this.createPane("tooltipPane",this._norotatePane),this.createPane("popupPane",this._norotatePane)):(this.createPane("tilePane"),this.createPane("overlayPane"),this.createPane("shadowPane"),this.createPane("markerPane"),this.createPane("tooltipPane"),this.createPane("popupPane")),this.options.markerZoomAnimation||(L.DomUtil.addClass(C.markerPane,"leaflet-zoom-hide"),L.DomUtil.addClass(C.shadowPane,"leaflet-zoom-hide"))},panInside(C,x){if(!this._rotate||Math.abs(this._bearing).toFixed(1)<.1)return k.panInside.apply(this,arguments);x=x||{};const b=L.point(x.paddingTopLeft||x.padding||[0,0]),T=L.point(x.paddingBottomRight||x.padding||[0,0]),G=this._container.getBoundingClientRect(),Z=this.latLngToContainerPoint(C),K=L.bounds([L.point(G),L.point(G).add(this.getSize())]),at=K.getCenter(),rt=L.bounds([K.min.add(b),K.max.subtract(T)]),ct=rt.getSize();if(!rt.contains(Z)){this._enforcingBounds=!0;const yt=Z.subtract(rt.getCenter()),mt=rt.extend(Z).getSize().subtract(ct);at.x+=yt.x<0?-mt.x:mt.x,at.y+=yt.y<0?-mt.y:mt.y,this.panTo(this.containerPointToLatLng(at),x),this._enforcingBounds=!1}return this},getBoundsZoom(C,x,b){if(!this._rotate||Math.abs(this._bearing).toFixed(1)<.1)return k.getBoundsZoom.apply(this,arguments);C=L.latLngBounds(C),b=L.point(b||[0,0]);let T=this.getZoom()||0;const G=this.getMinZoom(),Z=this.getMaxZoom(),K=this.getSize().subtract(b),at=this.mapBoundsToContainerBounds(C).getSize(),rt=this.options.zoomSnap,ct=K.x/at.x,yt=K.y/at.y,mt=x?Math.max(ct,yt):Math.min(ct,yt);return T=this.getScaleZoom(mt,T),rt&&(T=Math.round(T/(rt/100))*(rt/100),T=x?Math.ceil(T/rt)*rt:Math.floor(T/rt)*rt),Math.max(G,Math.min(Z,T))},_getCenterOffset:function(C){var x=k._getCenterOffset.apply(this,arguments);return this._rotate&&(x=x.rotate(this._bearing)),x},_getRotatePanePos:function(){return this._rotatePanePos||new L.Point(0,0)},_getNewPixelOrigin:function(C,x){if(!this._rotate)return k._getNewPixelOrigin.apply(this,arguments);var b=this.getSize()._divideBy(2);return this.project(C,x).rotate(this._bearing)._subtract(b)._add(this._getMapPanePos())._add(this._getRotatePanePos()).rotate(-this._bearing)._round()},_getNewPixelBounds:function(C,x){if(C=C||this.getCenter(),x=x||this.getZoom(),!this._rotate&&k._getNewPixelBounds)return k._getNewPixelBounds.apply(this,arguments);var b=this._animatingZoom?Math.max(this._animateToZoom,this.getZoom()):this.getZoom(),T=this.getZoomScale(b,x),G=this.project(C,x).floor(),Z=this.getSize(),K=new L.Bounds([this.containerPointToLayerPoint([0,0]).floor(),this.containerPointToLayerPoint([Z.x,0]).floor(),this.containerPointToLayerPoint([0,Z.y]).floor(),this.containerPointToLayerPoint([Z.x,Z.y]).floor()]).getSize().divideBy(T*2);return new L.Bounds(G.subtract(K),G.add(K))},_getPixelCenter:function(){return!this._rotate&&k._getPixelCenter?k._getPixelCenter.apply(this,arguments):this.getSize()._divideBy(2)._subtract(this._getMapPanePos())},_getPaddedPixelBounds:function(C){if(!this._rotate&&k._getPaddedPixelBounds)return k._getPaddedPixelBounds.apply(this,arguments);var x=C,b=this.getSize(),T=b.multiplyBy(-x),G=b.multiplyBy(1+x);return new L.Bounds([this.containerPointToLayerPoint([T.x,T.y]).floor(),this.containerPointToLayerPoint([T.x,G.y]).floor(),this.containerPointToLayerPoint([G.x,T.y]).floor(),this.containerPointToLayerPoint([G.x,G.y]).floor()])},_handleGeolocationResponse:function(C){if(this._container._leaflet_id){var x=C.coords.latitude,b=C.coords.longitude,T=C.coords.heading,G=new L.LatLng(x,b),Z=G.toBounds(C.coords.accuracy),K=this._locateOptions;if(K.setView){var at=this.getBoundsZoom(Z);this.setView(G,K.maxZoom?Math.min(at,K.maxZoom):at)}var rt={latlng:G,bounds:Z,timestamp:C.timestamp,heading:T};for(var ct in C.coords)typeof C.coords[ct]=="number"&&(rt[ct]=C.coords[ct]);this.fire("locationfound",rt)}}}),L.Map.CompassBearing=L.Handler.extend({initialize:function(C){this._map=C,"ondeviceorientationabsolute"in window?this.__deviceOrientationEvent="deviceorientationabsolute":"ondeviceorientation"in window&&(this.__deviceOrientationEvent="deviceorientation"),this._throttled=L.Util.throttle(this._onDeviceOrientation,100,this)},addHooks:function(){this._map._rotate&&this.__deviceOrientationEvent?L.DomEvent.on(window,this.__deviceOrientationEvent,this._throttled,this):this.disable()},removeHooks:function(){this._map._rotate&&this.__deviceOrientationEvent&&L.DomEvent.off(window,this.__deviceOrientationEvent,this._throttled,this)},_onDeviceOrientation:function(C){var x=C.webkitCompassHeading||C.alpha,b=0;!C.absolute&&C.webkitCompassHeading&&(x=360-x),!C.absolute&&typeof window.orientation<"u"&&(b=window.orientation),this._map.setBearing(x-b)}}),L.Map.addInitHook("addHandler","compassBearing",L.Map.CompassBearing),L.Map.mergeOptions({trackContainerMutation:!1}),L.Map.ContainerMutation=L.Handler.extend({addHooks:function(){this._observer||(this._observer=new MutationObserver(L.Util.bind(this._map.invalidateSize,this._map))),this._observer.observe(this._map.getContainer(),{childList:!1,attributes:!0,characterData:!1,subtree:!1,attributeFilter:["style"]})},removeHooks:function(){this._observer.disconnect()}}),L.Map.addInitHook("addHandler","trackContainerMutation",L.Map.ContainerMutation),L.Map.mergeOptions({bounceAtZoomLimits:!0}),L.Map.TouchGestures=L.Handler.extend({initialize:function(C){this._map=C,this.rotate=!!this._map.options.touchRotate,this.zoom=!!this._map.options.touchZoom},addHooks:function(){L.DomEvent.on(this._map._container,"touchstart",this._onTouchStart,this)},removeHooks:function(){L.DomEvent.off(this._map._container,"touchstart",this._onTouchStart,this)},_onTouchStart:function(C){var x=this._map;if(!(!C.touches||C.touches.length!==2||x._animatingZoom||this._zooming||this._rotating)){var b=x.mouseEventToContainerPoint(C.touches[0]),T=x.mouseEventToContainerPoint(C.touches[1]),G=b.subtract(T);this._centerPoint=x.getSize()._divideBy(2),this._startLatLng=x.containerPointToLatLng(this._centerPoint),this.zoom?(x.options.touchZoom!=="center"&&(this._pinchStartLatLng=x.containerPointToLatLng(b.add(T)._divideBy(2))),this._startDist=b.distanceTo(T),this._startZoom=x.getZoom(),this._zooming=!0):this._zooming=!1,this.rotate?(this._startTheta=Math.atan(G.x/G.y),this._startBearing=x.getBearing(),G.y<0&&(this._startBearing+=180),this._rotating=!0):this._rotating=!1,this._moved=!1,x._stop(),L.DomEvent.on(document,"touchmove",this._onTouchMove,this).on(document,"touchend touchcancel",this._onTouchEnd,this),L.DomEvent.preventDefault(C)}},_onTouchMove:function(C){if(!(!C.touches||C.touches.length!==2||!(this._zooming||this._rotating))){var x=this._map,b=x.mouseEventToContainerPoint(C.touches[0]),T=x.mouseEventToContainerPoint(C.touches[1]),G=b.subtract(T),Z=b.distanceTo(T)/this._startDist,K;if(this._rotating){var at=Math.atan(G.x/G.y),rt=(at-this._startTheta)*L.DomUtil.RAD_TO_DEG;G.y<0&&(rt+=180),rt&&x.setBearing(this._startBearing-rt)}if(this._zooming)if(this._zoom=x.getScaleZoom(Z,this._startZoom),!x.options.bounceAtZoomLimits&&(this._zoom<x.getMinZoom()&&Z<1||this._zoom>x.getMaxZoom()&&Z>1)&&(this._zoom=x._limitZoom(this._zoom)),x.options.touchZoom==="center"){if(this._center=this._startLatLng,Z===1)return}else{if(K=b._add(T)._divideBy(2)._subtract(this._centerPoint),Z===1&&K.x===0&&K.y===0)return;var ct=-x.getBearing()*L.DomUtil.DEG_TO_RAD;this._center=x.unproject(x.project(this._pinchStartLatLng).subtract(K.rotate(ct)))}this._moved||(x._moveStart(!0,!1),this._moved=!0),L.Util.cancelAnimFrame(this._animRequest);var yt=x._move.bind(x,this._center,this._zoom,{pinch:!0,round:!1},void 0);this._animRequest=L.Util.requestAnimFrame(yt,this,!0),L.DomEvent.preventDefault(C)}},_onTouchEnd:function(){if(!this._moved||!(this._zooming||this._rotating)){this._zooming=!1;return}this._zooming=!1,this._rotating=!1,L.Util.cancelAnimFrame(this._animRequest),L.DomEvent.off(document,"touchmove",this._onTouchMove,this).off(document,"touchend touchcancel",this._onTouchEnd,this),this.zoom&&(this._map.options.zoomAnimation?this._map._animateZoom(this._center,this._map._limitZoom(this._zoom),!0,this._map.options.zoomSnap):this._map._resetView(this._center,this._map._limitZoom(this._zoom)))}}),L.Map.addInitHook("addHandler","touchGestures",L.Map.TouchGestures),L.Map.mergeOptions({touchRotate:!1}),L.Map.TouchRotate=L.Handler.extend({addHooks:function(){this._map.touchGestures.enable(),this._map.touchGestures.rotate=!0},removeHooks:function(){this._map.touchGestures.rotate=!1}}),L.Map.addInitHook("addHandler","touchRotate",L.Map.TouchRotate),L.Map.mergeOptions({shiftKeyRotate:!0}),L.Map.ShiftKeyRotate=L.Handler.extend({addHooks:function(){L.DomEvent.on(this._map._container,"wheel",this._handleShiftScroll,this),this._map.shiftKeyRotate.rotate=!0},removeHooks:function(){L.DomEvent.off(this._map._container,"wheel",this._handleShiftScroll,this),this._map.shiftKeyRotate.rotate=!1},_handleShiftScroll:function(C){C.shiftKey?(C.preventDefault(),this._map.scrollWheelZoom.disable(),this._map.setBearing(this._map._bearing*L.DomUtil.RAD_TO_DEG+Math.sign(C.deltaY)*5)):this._map.scrollWheelZoom.enable()}}),L.Map.addInitHook("addHandler","shiftKeyRotate",L.Map.ShiftKeyRotate),L.Map.addInitHook(function(){this.scrollWheelZoom.enabled()&&this.shiftKeyRotate.enabled()&&(this.scrollWheelZoom.disable(),this.scrollWheelZoom.enable())}),L.Map.mergeOptions({touchZoom:L.Browser.touch,bounceAtZoomLimits:!1}),L.Map.TouchZoom=L.Handler.extend({addHooks:function(){L.DomUtil.addClass(this._map._container,"leaflet-touch-zoom"),this._map.touchGestures.enable(),this._map.touchGestures.zoom=!0},removeHooks:function(){L.DomUtil.removeClass(this._map._container,"leaflet-touch-zoom"),this._map.touchGestures.zoom=!1}}),L.Map.addInitHook("addHandler","touchZoom",L.Map.TouchZoom),L.Control.Rotate=L.Control.extend({options:{position:"topleft",closeOnZeroBearing:!0},onAdd:function(C){var x=this._container=L.DomUtil.create("div","leaflet-control-rotate leaflet-bar"),b=this._arrow=L.DomUtil.create("span","leaflet-control-rotate-arrow");b.style.backgroundImage=`url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")`,b.style.cursor="grab",b.style.display="block",b.style.width="100%",b.style.height="100%",b.style.backgroundRepeat="no-repeat",b.style.backgroundPosition="50%";var T=this._link=L.DomUtil.create("a","leaflet-control-rotate-toggle",x);return T.appendChild(b),T.href="#",T.title="Rotate map",L.DomEvent.on(T,"dblclick",L.DomEvent.stopPropagation).on(T,"mousedown",this._handleMouseDown,this).on(T,"click",L.DomEvent.stop).on(T,"click",this._cycleState,this).on(T,"click",this._refocusOnMap,this),L.Browser.any3d||L.DomUtil.addClass(T,"leaflet-disabled"),this._restyle(),C.on("rotate",this._restyle,this),this._follow=!1,this._canFollow=!1,this.options.closeOnZeroBearing&&C.getBearing()===0&&(x.style.display="none"),x},onRemove:function(C){C.off("rotate",this._restyle,this)},_handleMouseDown:function(C){L.DomEvent.stop(C),this.dragging=!0,this.dragstartX=C.pageX,this.dragstartY=C.pageY,L.DomEvent.on(document,"mousemove",this._handleMouseDrag,this).on(document,"mouseup",this._handleMouseUp,this)},_handleMouseUp:function(C){L.DomEvent.stop(C),this.dragging=!1,L.DomEvent.off(document,"mousemove",this._handleMouseDrag,this).off(document,"mouseup",this._handleMouseUp,this)},_handleMouseDrag:function(C){if(this.dragging){var x=C.clientX-this.dragstartX;this._map.setBearing(x)}},_cycleState:function(C){if(this._map){var x=this._map;!x.touchRotate.enabled()&&!x.compassBearing.enabled()?x.touchRotate.enable():x.compassBearing.enabled()?(x.compassBearing.disable(),x.setBearing(0),this.options.closeOnZeroBearing&&x.touchRotate.enable()):(x.touchRotate.disable(),(DeviceOrientationEvent&&DeviceOrientationEvent.requestPermission?DeviceOrientationEvent.requestPermission():Promise.resolve("granted")).then(b=>b==="granted"&&x.compassBearing.enable())),this._restyle()}},_restyle:function(){if(!this._map.options.rotate)L.DomUtil.addClass(this._link,"leaflet-disabled");else{var C=this._map,x=C.getBearing();this._arrow.style.transform="rotate("+x+"deg)",x&&this.options.closeOnZeroBearing&&(this._container.style.display="block"),C.compassBearing.enabled()?this._link.style.backgroundColor="orange":C.touchRotate.enabled()?this._link.style.backgroundColor=null:(this._link.style.backgroundColor="grey",x===0&&this.options.closeOnZeroBearing&&(this._container.style.display="none"))}}}),L.control.rotate=function(C){return new L.Control.Rotate(C)},L.Map.mergeOptions({rotateControl:!0}),L.Map.addInitHook(function(){if(this.options.rotateControl){var C=typeof this.options.rotateControl=="object"?this.options.rotateControl:{};this.rotateControl=L.control.rotate(C),this.addControl(this.rotateControl)}})}),(()=>{var Pl,kl;var t=Object.create,n=Object.defineProperty,a=Object.getOwnPropertyDescriptor,l=Object.getOwnPropertyNames,c=Object.getPrototypeOf,f=Object.prototype.hasOwnProperty,p=(i,s)=>()=>(s||i((s={exports:{}}).exports,s),s.exports),g=(i,s,o,h)=>{if(s&&typeof s=="object"||typeof s=="function")for(let d of l(s))!f.call(i,d)&&d!==o&&n(i,d,{get:()=>s[d],enumerable:!(h=a(s,d))||h.enumerable});return i},A=(i,s,o)=>(o=i!=null?t(c(i)):{},g(s||!i||!i.__esModule?n(o,"default",{value:i,enumerable:!0}):o,i)),k=p((i,s)=>{function o(){this.__data__=[],this.size=0}s.exports=o}),C=p((i,s)=>{function o(h,d){return h===d||h!==h&&d!==d}s.exports=o}),x=p((i,s)=>{var o=C();function h(d,m){for(var y=d.length;y--;)if(o(d[y][0],m))return y;return-1}s.exports=h}),b=p((i,s)=>{var o=x(),h=Array.prototype,d=h.splice;function m(y){var v=this.__data__,w=o(v,y);if(w<0)return!1;var P=v.length-1;return w==P?v.pop():d.call(v,w,1),--this.size,!0}s.exports=m}),T=p((i,s)=>{var o=x();function h(d){var m=this.__data__,y=o(m,d);return y<0?void 0:m[y][1]}s.exports=h}),G=p((i,s)=>{var o=x();function h(d){return o(this.__data__,d)>-1}s.exports=h}),Z=p((i,s)=>{var o=x();function h(d,m){var y=this.__data__,v=o(y,d);return v<0?(++this.size,y.push([d,m])):y[v][1]=m,this}s.exports=h}),K=p((i,s)=>{var o=k(),h=b(),d=T(),m=G(),y=Z();function v(w){var P=-1,N=w==null?0:w.length;for(this.clear();++P<N;){var F=w[P];this.set(F[0],F[1])}}v.prototype.clear=o,v.prototype.delete=h,v.prototype.get=d,v.prototype.has=m,v.prototype.set=y,s.exports=v}),at=p((i,s)=>{var o=K();function h(){this.__data__=new o,this.size=0}s.exports=h}),rt=p((i,s)=>{function o(h){var d=this.__data__,m=d.delete(h);return this.size=d.size,m}s.exports=o}),ct=p((i,s)=>{function o(h){return this.__data__.get(h)}s.exports=o}),yt=p((i,s)=>{function o(h){return this.__data__.has(h)}s.exports=o}),mt=p((i,s)=>{var o=typeof An=="object"&&An&&An.Object===Object&&An;s.exports=o}),xt=p((i,s)=>{var o=mt(),h=typeof self=="object"&&self&&self.Object===Object&&self,d=o||h||Function("return this")();s.exports=d}),Dt=p((i,s)=>{var o=xt(),h=o.Symbol;s.exports=h}),It=p((i,s)=>{var o=Dt(),h=Object.prototype,d=h.hasOwnProperty,m=h.toString,y=o?o.toStringTag:void 0;function v(w){var P=d.call(w,y),N=w[y];try{w[y]=void 0;var F=!0}catch{}var tt=m.call(w);return F&&(P?w[y]=N:delete w[y]),tt}s.exports=v}),zt=p((i,s)=>{var o=Object.prototype,h=o.toString;function d(m){return h.call(m)}s.exports=d}),Yt=p((i,s)=>{var o=Dt(),h=It(),d=zt(),m="[object Null]",y="[object Undefined]",v=o?o.toStringTag:void 0;function w(P){return P==null?P===void 0?y:m:v&&v in Object(P)?h(P):d(P)}s.exports=w}),Et=p((i,s)=>{function o(h){var d=typeof h;return h!=null&&(d=="object"||d=="function")}s.exports=o}),Zt=p((i,s)=>{var o=Yt(),h=Et(),d="[object AsyncFunction]",m="[object Function]",y="[object GeneratorFunction]",v="[object Proxy]";function w(P){if(!h(P))return!1;var N=o(P);return N==m||N==y||N==d||N==v}s.exports=w}),be=p((i,s)=>{var o=xt(),h=o["__core-js_shared__"];s.exports=h}),pe=p((i,s)=>{var o=be(),h=function(){var m=/[^.]+$/.exec(o&&o.keys&&o.keys.IE_PROTO||"");return m?"Symbol(src)_1."+m:""}();function d(m){return!!h&&h in m}s.exports=d}),yo=p((i,s)=>{var o=Function.prototype,h=o.toString;function d(m){if(m!=null){try{return h.call(m)}catch{}try{return m+""}catch{}}return""}s.exports=d}),De=p((i,s)=>{var o=Zt(),h=pe(),d=Et(),m=yo(),y=/[\\^$.*+?()[\]{}|]/g,v=/^\[object .+?Constructor\]$/,w=Function.prototype,P=Object.prototype,N=w.toString,F=P.hasOwnProperty,tt=RegExp("^"+N.call(F).replace(y,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function it(lt){if(!d(lt)||h(lt))return!1;var ft=o(lt)?tt:v;return ft.test(m(lt))}s.exports=it}),en=p((i,s)=>{function o(h,d){return h==null?void 0:h[d]}s.exports=o}),Pt=p((i,s)=>{var o=De(),h=en();function d(m,y){var v=h(m,y);return o(v)?v:void 0}s.exports=d}),Ss=p((i,s)=>{var o=Pt(),h=xt(),d=o(h,"Map");s.exports=d}),Ct=p((i,s)=>{var o=Pt(),h=o(Object,"create");s.exports=h}),te=p((i,s)=>{var o=Ct();function h(){this.__data__=o?o(null):{},this.size=0}s.exports=h}),we=p((i,s)=>{function o(h){var d=this.has(h)&&delete this.__data__[h];return this.size-=d?1:0,d}s.exports=o}),Ce=p((i,s)=>{var o=Ct(),h="__lodash_hash_undefined__",d=Object.prototype,m=d.hasOwnProperty;function y(v){var w=this.__data__;if(o){var P=w[v];return P===h?void 0:P}return m.call(w,v)?w[v]:void 0}s.exports=y}),ae=p((i,s)=>{var o=Ct(),h=Object.prototype,d=h.hasOwnProperty;function m(y){var v=this.__data__;return o?v[y]!==void 0:d.call(v,y)}s.exports=m}),Ht=p((i,s)=>{var o=Ct(),h="__lodash_hash_undefined__";function d(m,y){var v=this.__data__;return this.size+=this.has(m)?0:1,v[m]=o&&y===void 0?h:y,this}s.exports=d}),Rt=p((i,s)=>{var o=te(),h=we(),d=Ce(),m=ae(),y=Ht();function v(w){var P=-1,N=w==null?0:w.length;for(this.clear();++P<N;){var F=w[P];this.set(F[0],F[1])}}v.prototype.clear=o,v.prototype.delete=h,v.prototype.get=d,v.prototype.has=m,v.prototype.set=y,s.exports=v}),si=p((i,s)=>{var o=Rt(),h=K(),d=Ss();function m(){this.size=0,this.__data__={hash:new o,map:new(d||h),string:new o}}s.exports=m}),fi=p((i,s)=>{function o(h){var d=typeof h;return d=="string"||d=="number"||d=="symbol"||d=="boolean"?h!=="__proto__":h===null}s.exports=o}),nn=p((i,s)=>{var o=fi();function h(d,m){var y=d.__data__;return o(m)?y[typeof m=="string"?"string":"hash"]:y.map}s.exports=h}),Ts=p((i,s)=>{var o=nn();function h(d){var m=o(this,d).delete(d);return this.size-=m?1:0,m}s.exports=h}),Ds=p((i,s)=>{var o=nn();function h(d){return o(this,d).get(d)}s.exports=h}),sn=p((i,s)=>{var o=nn();function h(d){return o(this,d).has(d)}s.exports=h}),Os=p((i,s)=>{var o=nn();function h(d,m){var y=o(this,d),v=y.size;return y.set(d,m),this.size+=y.size==v?0:1,this}s.exports=h}),Ia=p((i,s)=>{var o=si(),h=Ts(),d=Ds(),m=sn(),y=Os();function v(w){var P=-1,N=w==null?0:w.length;for(this.clear();++P<N;){var F=w[P];this.set(F[0],F[1])}}v.prototype.clear=o,v.prototype.delete=h,v.prototype.get=d,v.prototype.has=m,v.prototype.set=y,s.exports=v}),Ra=p((i,s)=>{var o=K(),h=Ss(),d=Ia(),m=200;function y(v,w){var P=this.__data__;if(P instanceof o){var N=P.__data__;if(!h||N.length<m-1)return N.push([v,w]),this.size=++P.size,this;P=this.__data__=new d(N)}return P.set(v,w),this.size=P.size,this}s.exports=y}),Ga=p((i,s)=>{var o=K(),h=at(),d=rt(),m=ct(),y=yt(),v=Ra();function w(P){var N=this.__data__=new o(P);this.size=N.size}w.prototype.clear=h,w.prototype.delete=d,w.prototype.get=m,w.prototype.has=y,w.prototype.set=v,s.exports=w}),Tn=p((i,s)=>{var o=Pt(),h=function(){try{var d=o(Object,"defineProperty");return d({},"",{}),d}catch{}}();s.exports=h}),Fi=p((i,s)=>{var o=Tn();function h(d,m,y){m=="__proto__"&&o?o(d,m,{configurable:!0,enumerable:!0,value:y,writable:!0}):d[m]=y}s.exports=h}),Fa=p((i,s)=>{var o=Fi(),h=C();function d(m,y,v){(v!==void 0&&!h(m[y],v)||v===void 0&&!(y in m))&&o(m,y,v)}s.exports=d}),za=p((i,s)=>{function o(h){return function(d,m,y){for(var v=-1,w=Object(d),P=y(d),N=P.length;N--;){var F=P[h?N:++v];if(m(w[F],F,w)===!1)break}return d}}s.exports=o}),Is=p((i,s)=>{var o=za(),h=o();s.exports=h}),Na=p((i,s)=>{var o=xt(),h=typeof i=="object"&&i&&!i.nodeType&&i,d=h&&typeof s=="object"&&s&&!s.nodeType&&s,m=d&&d.exports===h,y=m?o.Buffer:void 0,v=y?y.allocUnsafe:void 0;function w(P,N){if(N)return P.slice();var F=P.length,tt=v?v(F):new P.constructor(F);return P.copy(tt),tt}s.exports=w}),Ua=p((i,s)=>{var o=xt(),h=o.Uint8Array;s.exports=h}),vo=p((i,s)=>{var o=Ua();function h(d){var m=new d.constructor(d.byteLength);return new o(m).set(new o(d)),m}s.exports=h}),Ao=p((i,s)=>{var o=vo();function h(d,m){var y=m?o(d.buffer):d.buffer;return new d.constructor(y,d.byteOffset,d.length)}s.exports=h}),Rs=p((i,s)=>{function o(h,d){var m=-1,y=h.length;for(d||(d=Array(y));++m<y;)d[m]=h[m];return d}s.exports=o}),Za=p((i,s)=>{var o=Et(),h=Object.create,d=function(){function m(){}return function(y){if(!o(y))return{};if(h)return h(y);m.prototype=y;var v=new m;return m.prototype=void 0,v}}();s.exports=d}),ja=p((i,s)=>{function o(h,d){return function(m){return h(d(m))}}s.exports=o}),qa=p((i,s)=>{var o=ja(),h=o(Object.getPrototypeOf,Object);s.exports=h}),Gs=p((i,s)=>{var o=Object.prototype;function h(d){var m=d&&d.constructor,y=typeof m=="function"&&m.prototype||o;return d===y}s.exports=h}),Ha=p((i,s)=>{var o=Za(),h=qa(),d=Gs();function m(y){return typeof y.constructor=="function"&&!d(y)?o(h(y)):{}}s.exports=m}),zi=p((i,s)=>{function o(h){return h!=null&&typeof h=="object"}s.exports=o}),Va=p((i,s)=>{var o=Yt(),h=zi(),d="[object Arguments]";function m(y){return h(y)&&o(y)==d}s.exports=m}),Dn=p((i,s)=>{var o=Va(),h=zi(),d=Object.prototype,m=d.hasOwnProperty,y=d.propertyIsEnumerable,v=o(function(){return arguments}())?o:function(w){return h(w)&&m.call(w,"callee")&&!y.call(w,"callee")};s.exports=v}),Ni=p((i,s)=>{var o=Array.isArray;s.exports=o}),$a=p((i,s)=>{var o=9007199254740991;function h(d){return typeof d=="number"&&d>-1&&d%1==0&&d<=o}s.exports=h}),xi=p((i,s)=>{var o=Zt(),h=$a();function d(m){return m!=null&&h(m.length)&&!o(m)}s.exports=d}),Mo=p((i,s)=>{var o=xi(),h=zi();function d(m){return h(m)&&o(m)}s.exports=d}),xo=p((i,s)=>{function o(){return!1}s.exports=o}),Fs=p((i,s)=>{var o=xt(),h=xo(),d=typeof i=="object"&&i&&!i.nodeType&&i,m=d&&typeof s=="object"&&s&&!s.nodeType&&s,y=m&&m.exports===d,v=y?o.Buffer:void 0,w=v?v.isBuffer:void 0,P=w||h;s.exports=P}),Wa=p((i,s)=>{var o=Yt(),h=qa(),d=zi(),m="[object Object]",y=Function.prototype,v=Object.prototype,w=y.toString,P=v.hasOwnProperty,N=w.call(Object);function F(tt){if(!d(tt)||o(tt)!=m)return!1;var it=h(tt);if(it===null)return!0;var lt=P.call(it,"constructor")&&it.constructor;return typeof lt=="function"&< instanceof lt&&w.call(lt)==N}s.exports=F}),Ka=p((i,s)=>{var o=Yt(),h=$a(),d=zi(),m="[object Arguments]",y="[object Array]",v="[object Boolean]",w="[object Date]",P="[object Error]",N="[object Function]",F="[object Map]",tt="[object Number]",it="[object Object]",lt="[object RegExp]",ft="[object Set]",vt="[object String]",Ft="[object WeakMap]",z="[object ArrayBuffer]",q="[object DataView]",W="[object Float32Array]",nt="[object Float64Array]",X="[object Int8Array]",et="[object Int16Array]",E="[object Int32Array]",S="[object Uint8Array]",O="[object Uint8ClampedArray]",D="[object Uint16Array]",I="[object Uint32Array]",R={};R[W]=R[nt]=R[X]=R[et]=R[E]=R[S]=R[O]=R[D]=R[I]=!0,R[m]=R[y]=R[z]=R[v]=R[q]=R[w]=R[P]=R[N]=R[F]=R[tt]=R[it]=R[lt]=R[ft]=R[vt]=R[Ft]=!1;function V(H){return d(H)&&h(H.length)&&!!R[o(H)]}s.exports=V}),Lo=p((i,s)=>{function o(h){return function(d){return h(d)}}s.exports=o}),bo=p((i,s)=>{var o=mt(),h=typeof i=="object"&&i&&!i.nodeType&&i,d=h&&typeof s=="object"&&s&&!s.nodeType&&s,m=d&&d.exports===h,y=m&&o.process,v=function(){try{var w=d&&d.require&&d.require("util").types;return w||y&&y.binding&&y.binding("util")}catch{}}();s.exports=v}),Xa=p((i,s)=>{var o=Ka(),h=Lo(),d=bo(),m=d&&d.isTypedArray,y=m?h(m):o;s.exports=y}),Ya=p((i,s)=>{function o(h,d){if(!(d==="constructor"&&typeof h[d]=="function")&&d!="__proto__")return h[d]}s.exports=o}),wo=p((i,s)=>{var o=Fi(),h=C(),d=Object.prototype,m=d.hasOwnProperty;function y(v,w,P){var N=v[w];(!(m.call(v,w)&&h(N,P))||P===void 0&&!(w in v))&&o(v,w,P)}s.exports=y}),Co=p((i,s)=>{var o=wo(),h=Fi();function d(m,y,v,w){var P=!v;v||(v={});for(var N=-1,F=y.length;++N<F;){var tt=y[N],it=w?w(v[tt],m[tt],tt,v,m):void 0;it===void 0&&(it=m[tt]),P?h(v,tt,it):o(v,tt,it)}return v}s.exports=d}),zs=p((i,s)=>{function o(h,d){for(var m=-1,y=Array(h);++m<h;)y[m]=d(m);return y}s.exports=o}),Ja=p((i,s)=>{var o=9007199254740991,h=/^(?:0|[1-9]\d*)$/;function d(m,y){var v=typeof m;return y=y??o,!!y&&(v=="number"||v!="symbol"&&h.test(m))&&m>-1&&m%1==0&&m<y}s.exports=d}),Eo=p((i,s)=>{var o=zs(),h=Dn(),d=Ni(),m=Fs(),y=Ja(),v=Xa(),w=Object.prototype,P=w.hasOwnProperty;function N(F,tt){var it=d(F),lt=!it&&h(F),ft=!it&&!lt&&m(F),vt=!it&&!lt&&!ft&&v(F),Ft=it||lt||ft||vt,z=Ft?o(F.length,String):[],q=z.length;for(var W in F)(tt||P.call(F,W))&&!(Ft&&(W=="length"||ft&&(W=="offset"||W=="parent")||vt&&(W=="buffer"||W=="byteLength"||W=="byteOffset")||y(W,q)))&&z.push(W);return z}s.exports=N}),Po=p((i,s)=>{function o(h){var d=[];if(h!=null)for(var m in Object(h))d.push(m);return d}s.exports=o}),ko=p((i,s)=>{var o=Et(),h=Gs(),d=Po(),m=Object.prototype,y=m.hasOwnProperty;function v(w){if(!o(w))return d(w);var P=h(w),N=[];for(var F in w)F=="constructor"&&(P||!y.call(w,F))||N.push(F);return N}s.exports=v}),je=p((i,s)=>{var o=Eo(),h=ko(),d=xi();function m(y){return d(y)?o(y,!0):h(y)}s.exports=m}),Mt=p((i,s)=>{var o=Co(),h=je();function d(m){return o(m,h(m))}s.exports=d}),Qa=p((i,s)=>{var o=Fa(),h=Na(),d=Ao(),m=Rs(),y=Ha(),v=Dn(),w=Ni(),P=Mo(),N=Fs(),F=Zt(),tt=Et(),it=Wa(),lt=Xa(),ft=Ya(),vt=Mt();function Ft(z,q,W,nt,X,et,E){var S=ft(z,W),O=ft(q,W),D=E.get(O);if(D){o(z,W,D);return}var I=et?et(S,O,W+"",z,q,E):void 0,R=I===void 0;if(R){var V=w(O),H=!V&&N(O),$=!V&&!H&<(O);I=O,V||H||$?w(S)?I=S:P(S)?I=m(S):H?(R=!1,I=h(O,!0)):$?(R=!1,I=d(O,!0)):I=[]:it(O)||v(O)?(I=S,v(S)?I=vt(S):(!tt(S)||F(S))&&(I=y(O))):R=!1}R&&(E.set(O,I),X(I,O,nt,et,E),E.delete(O)),o(z,W,I)}s.exports=Ft}),tr=p((i,s)=>{var o=Ga(),h=Fa(),d=Is(),m=Qa(),y=Et(),v=je(),w=Ya();function P(N,F,tt,it,lt){N!==F&&d(F,function(ft,vt){if(lt||(lt=new o),y(ft))m(N,F,vt,tt,P,it,lt);else{var Ft=it?it(w(N,vt),ft,vt+"",N,F,lt):void 0;Ft===void 0&&(Ft=ft),h(N,vt,Ft)}},v)}s.exports=P}),Ns=p((i,s)=>{function o(h){return h}s.exports=o}),er=p((i,s)=>{function o(h,d,m){switch(m.length){case 0:return h.call(d);case 1:return h.call(d,m[0]);case 2:return h.call(d,m[0],m[1]);case 3:return h.call(d,m[0],m[1],m[2])}return h.apply(d,m)}s.exports=o}),Us=p((i,s)=>{var o=er(),h=Math.max;function d(m,y,v){return y=h(y===void 0?m.length-1:y,0),function(){for(var w=arguments,P=-1,N=h(w.length-y,0),F=Array(N);++P<N;)F[P]=w[y+P];P=-1;for(var tt=Array(y+1);++P<y;)tt[P]=w[P];return tt[y]=v(F),o(m,this,tt)}}s.exports=d}),ir=p((i,s)=>{function o(h){return function(){return h}}s.exports=o}),Ui=p((i,s)=>{var o=ir(),h=Tn(),d=Ns(),m=h?function(y,v){return h(y,"toString",{configurable:!0,enumerable:!1,value:o(v),writable:!0})}:d;s.exports=m}),nr=p((i,s)=>{var o=800,h=16,d=Date.now;function m(y){var v=0,w=0;return function(){var P=d(),N=h-(P-w);if(w=P,N>0){if(++v>=o)return arguments[0]}else v=0;return y.apply(void 0,arguments)}}s.exports=m}),Bo=p((i,s)=>{var o=Ui(),h=nr(),d=h(o);s.exports=d}),So=p((i,s)=>{var o=Ns(),h=Us(),d=Bo();function m(y,v){return d(h(y,v,o),y+"")}s.exports=m}),To=p((i,s)=>{var o=C(),h=xi(),d=Ja(),m=Et();function y(v,w,P){if(!m(P))return!1;var N=typeof w;return(N=="number"?h(P)&&d(w,P.length):N=="string"&&w in P)?o(P[w],v):!1}s.exports=y}),Do=p((i,s)=>{var o=So(),h=To();function d(m){return o(function(y,v){var w=-1,P=v.length,N=P>1?v[P-1]:void 0,F=P>2?v[2]:void 0;for(N=m.length>3&&typeof N=="function"?(P--,N):void 0,F&&h(v[0],v[1],F)&&(N=P<3?void 0:N,P=1),y=Object(y);++w<P;){var tt=v[w];tt&&m(y,tt,w,N)}return y})}s.exports=d}),On=p((i,s)=>{var o=tr(),h=Do(),d=h(function(m,y,v){o(m,y,v)});s.exports=d}),Zs=p((i,s)=>{var o=Yt(),h=zi(),d="[object Symbol]";function m(y){return typeof y=="symbol"||h(y)&&o(y)==d}s.exports=m}),In=p((i,s)=>{var o=Ni(),h=Zs(),d=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,m=/^\w*$/;function y(v,w){if(o(v))return!1;var P=typeof v;return P=="number"||P=="symbol"||P=="boolean"||v==null||h(v)?!0:m.test(v)||!d.test(v)||w!=null&&v in Object(w)}s.exports=y}),Oo=p((i,s)=>{var o=Ia(),h="Expected a function";function d(m,y){if(typeof m!="function"||y!=null&&typeof y!="function")throw new TypeError(h);var v=function(){var w=arguments,P=y?y.apply(this,w):w[0],N=v.cache;if(N.has(P))return N.get(P);var F=m.apply(this,w);return v.cache=N.set(P,F)||N,F};return v.cache=new(d.Cache||o),v}d.Cache=o,s.exports=d}),Io=p((i,s)=>{var o=Oo(),h=500;function d(m){var y=o(m,function(w){return v.size===h&&v.clear(),w}),v=y.cache;return y}s.exports=d}),Ro=p((i,s)=>{var o=Io(),h=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,d=/\\(\\)?/g,m=o(function(y){var v=[];return y.charCodeAt(0)===46&&v.push(""),y.replace(h,function(w,P,N,F){v.push(N?F.replace(d,"$1"):P||w)}),v});s.exports=m}),Go=p((i,s)=>{function o(h,d){for(var m=-1,y=h==null?0:h.length,v=Array(y);++m<y;)v[m]=d(h[m],m,h);return v}s.exports=o}),Fo=p((i,s)=>{var o=Dt(),h=Go(),d=Ni(),m=Zs(),y=o?o.prototype:void 0,v=y?y.toString:void 0;function w(P){if(typeof P=="string")return P;if(d(P))return h(P,w)+"";if(m(P))return v?v.call(P):"";var N=P+"";return N=="0"&&1/P==-1/0?"-0":N}s.exports=w}),js=p((i,s)=>{var o=Fo();function h(d){return d==null?"":o(d)}s.exports=h}),an=p((i,s)=>{var o=Ni(),h=In(),d=Ro(),m=js();function y(v,w){return o(v)?v:h(v,w)?[v]:d(m(v))}s.exports=y}),sr=p((i,s)=>{var o=Zs();function h(d){if(typeof d=="string"||o(d))return d;var m=d+"";return m=="0"&&1/d==-1/0?"-0":m}s.exports=h}),ar=p((i,s)=>{var o=an(),h=sr();function d(m,y){y=o(y,m);for(var v=0,w=y.length;m!=null&&v<w;)m=m[h(y[v++])];return v&&v==w?m:void 0}s.exports=d}),pi=p((i,s)=>{var o=ar();function h(d,m,y){var v=d==null?void 0:o(d,m);return v===void 0?y:v}s.exports=h}),Nt=p((i,s)=>{(function(o,h){typeof i=="object"&&typeof s<"u"?s.exports=h():(o=o||self).RBush=h()})(i,function(){function o(z,q,W,nt,X){(function et(E,S,O,D,I){for(;D>O;){if(D-O>600){var R=D-O+1,V=S-O+1,H=Math.log(R),$=.5*Math.exp(2*H/3),Q=.5*Math.sqrt(H*$*(R-$)/R)*(V-R/2<0?-1:1),J=Math.max(O,Math.floor(S-V*$/R+Q)),ot=Math.min(D,Math.floor(S+(R-V)*$/R+Q));et(E,S,J,ot,I)}var gt=E[S],At=O,bt=D;for(h(E,O,S),I(E[D],gt)>0&&h(E,O,D);At<bt;){for(h(E,At,bt),At++,bt--;I(E[At],gt)<0;)At++;for(;I(E[bt],gt)>0;)bt--}I(E[O],gt)===0?h(E,O,bt):h(E,++bt,D),bt<=S&&(O=bt+1),S<=bt&&(D=bt-1)}})(z,q,W||0,nt||z.length-1,X||d)}function h(z,q,W){var nt=z[q];z[q]=z[W],z[W]=nt}function d(z,q){return z<q?-1:z>q?1:0}var m=function(z){z===void 0&&(z=9),this._maxEntries=Math.max(4,z),this._minEntries=Math.max(2,Math.ceil(.4*this._maxEntries)),this.clear()};function y(z,q,W){if(!W)return q.indexOf(z);for(var nt=0;nt<q.length;nt++)if(W(z,q[nt]))return nt;return-1}function v(z,q){w(z,0,z.children.length,q,z)}function w(z,q,W,nt,X){X||(X=vt(null)),X.minX=1/0,X.minY=1/0,X.maxX=-1/0,X.maxY=-1/0;for(var et=q;et<W;et++){var E=z.children[et];P(X,z.leaf?nt(E):E)}return X}function P(z,q){return z.minX=Math.min(z.minX,q.minX),z.minY=Math.min(z.minY,q.minY),z.maxX=Math.max(z.maxX,q.maxX),z.maxY=Math.max(z.maxY,q.maxY),z}function N(z,q){return z.minX-q.minX}function F(z,q){return z.minY-q.minY}function tt(z){return(z.maxX-z.minX)*(z.maxY-z.minY)}function it(z){return z.maxX-z.minX+(z.maxY-z.minY)}function lt(z,q){return z.minX<=q.minX&&z.minY<=q.minY&&q.maxX<=z.maxX&&q.maxY<=z.maxY}function ft(z,q){return q.minX<=z.maxX&&q.minY<=z.maxY&&q.maxX>=z.minX&&q.maxY>=z.minY}function vt(z){return{children:z,height:1,leaf:!0,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}}function Ft(z,q,W,nt,X){for(var et=[q,W];et.length;)if(!((W=et.pop())-(q=et.pop())<=nt)){var E=q+Math.ceil((W-q)/nt/2)*nt;o(z,E,q,W,X),et.push(q,E,E,W)}}return m.prototype.all=function(){return this._all(this.data,[])},m.prototype.search=function(z){var q=this.data,W=[];if(!ft(z,q))return W;for(var nt=this.toBBox,X=[];q;){for(var et=0;et<q.children.length;et++){var E=q.children[et],S=q.leaf?nt(E):E;ft(z,S)&&(q.leaf?W.push(E):lt(z,S)?this._all(E,W):X.push(E))}q=X.pop()}return W},m.prototype.collides=function(z){var q=this.data;if(!ft(z,q))return!1;for(var W=[];q;){for(var nt=0;nt<q.children.length;nt++){var X=q.children[nt],et=q.leaf?this.toBBox(X):X;if(ft(z,et)){if(q.leaf||lt(z,et))return!0;W.push(X)}}q=W.pop()}return!1},m.prototype.load=function(z){if(!z||!z.length)return this;if(z.length<this._minEntries){for(var q=0;q<z.length;q++)this.insert(z[q]);return this}var W=this._build(z.slice(),0,z.length-1,0);if(this.data.children.length)if(this.data.height===W.height)this._splitRoot(this.data,W);else{if(this.data.height<W.height){var nt=this.data;this.data=W,W=nt}this._insert(W,this.data.height-W.height-1,!0)}else this.data=W;return this},m.prototype.insert=function(z){return z&&this._insert(z,this.data.height-1),this},m.prototype.clear=function(){return this.data=vt([]),this},m.prototype.remove=function(z,q){if(!z)return this;for(var W,nt,X,et=this.data,E=this.toBBox(z),S=[],O=[];et||S.length;){if(et||(et=S.pop(),nt=S[S.length-1],W=O.pop(),X=!0),et.leaf){var D=y(z,et.children,q);if(D!==-1)return et.children.splice(D,1),S.push(et),this._condense(S),this}X||et.leaf||!lt(et,E)?nt?(W++,et=nt.children[W],X=!1):et=null:(S.push(et),O.push(W),W=0,nt=et,et=et.children[0])}return this},m.prototype.toBBox=function(z){return z},m.prototype.compareMinX=function(z,q){return z.minX-q.minX},m.prototype.compareMinY=function(z,q){return z.minY-q.minY},m.prototype.toJSON=function(){return this.data},m.prototype.fromJSON=function(z){return this.data=z,this},m.prototype._all=function(z,q){for(var W=[];z;)z.leaf?q.push.apply(q,z.children):W.push.apply(W,z.children),z=W.pop();return q},m.prototype._build=function(z,q,W,nt){var X,et=W-q+1,E=this._maxEntries;if(et<=E)return v(X=vt(z.slice(q,W+1)),this.toBBox),X;nt||(nt=Math.ceil(Math.log(et)/Math.log(E)),E=Math.ceil(et/Math.pow(E,nt-1))),(X=vt([])).leaf=!1,X.height=nt;var S=Math.ceil(et/E),O=S*Math.ceil(Math.sqrt(E));Ft(z,q,W,O,this.compareMinX);for(var D=q;D<=W;D+=O){var I=Math.min(D+O-1,W);Ft(z,D,I,S,this.compareMinY);for(var R=D;R<=I;R+=S){var V=Math.min(R+S-1,I);X.children.push(this._build(z,R,V,nt-1))}}return v(X,this.toBBox),X},m.prototype._chooseSubtree=function(z,q,W,nt){for(;nt.push(q),!q.leaf&&nt.length-1!==W;){for(var X=1/0,et=1/0,E=void 0,S=0;S<q.children.length;S++){var O=q.children[S],D=tt(O),I=(R=z,V=O,(Math.max(V.maxX,R.maxX)-Math.min(V.minX,R.minX))*(Math.max(V.maxY,R.maxY)-Math.min(V.minY,R.minY))-D);I<et?(et=I,X=D<X?D:X,E=O):I===et&&D<X&&(X=D,E=O)}q=E||q.children[0]}var R,V;return q},m.prototype._insert=function(z,q,W){var nt=W?z:this.toBBox(z),X=[],et=this._chooseSubtree(nt,this.data,q,X);for(et.children.push(z),P(et,nt);q>=0&&X[q].children.length>this._maxEntries;)this._split(X,q),q--;this._adjustParentBBoxes(nt,X,q)},m.prototype._split=function(z,q){var W=z[q],nt=W.children.length,X=this._minEntries;this._chooseSplitAxis(W,X,nt);var et=this._chooseSplitIndex(W,X,nt),E=vt(W.children.splice(et,W.children.length-et));E.height=W.height,E.leaf=W.leaf,v(W,this.toBBox),v(E,this.toBBox),q?z[q-1].children.push(E):this._splitRoot(W,E)},m.prototype._splitRoot=function(z,q){this.data=vt([z,q]),this.data.height=z.height+1,this.data.leaf=!1,v(this.data,this.toBBox)},m.prototype._chooseSplitIndex=function(z,q,W){for(var nt,X,et,E,S,O,D,I=1/0,R=1/0,V=q;V<=W-q;V++){var H=w(z,0,V,this.toBBox),$=w(z,V,W,this.toBBox),Q=(X=H,et=$,E=void 0,S=void 0,O=void 0,D=void 0,E=Math.max(X.minX,et.minX),S=Math.max(X.minY,et.minY),O=Math.min(X.maxX,et.maxX),D=Math.min(X.maxY,et.maxY),Math.max(0,O-E)*Math.max(0,D-S)),J=tt(H)+tt($);Q<I?(I=Q,nt=V,R=J<R?J:R):Q===I&&J<R&&(R=J,nt=V)}return nt||W-q},m.prototype._chooseSplitAxis=function(z,q,W){var nt=z.leaf?this.compareMinX:N,X=z.leaf?this.compareMinY:F;this._allDistMargin(z,q,W,nt)<this._allDistMargin(z,q,W,X)&&z.children.sort(nt)},m.prototype._allDistMargin=function(z,q,W,nt){z.children.sort(nt);for(var X=this.toBBox,et=w(z,0,q,X),E=w(z,W-q,W,X),S=it(et)+it(E),O=q;O<W-q;O++){var D=z.children[O];P(et,z.leaf?X(D):D),S+=it(et)}for(var I=W-q-1;I>=q;I--){var R=z.children[I];P(E,z.leaf?X(R):R),S+=it(E)}return S},m.prototype._adjustParentBBoxes=function(z,q,W){for(var nt=W;nt>=0;nt--)P(q[nt],z)},m.prototype._condense=function(z){for(var q=z.length-1,W=void 0;q>=0;q--)z[q].children.length===0?q>0?(W=z[q-1].children).splice(W.indexOf(z[q]),1):this.clear():v(z[q],this.toBBox)},m})}),Qt=p(i=>{Object.defineProperty(i,"__esModule",{value:!0}),i.earthRadius=63710088e-1,i.factors={centimeters:i.earthRadius*100,centimetres:i.earthRadius*100,degrees:i.earthRadius/111325,feet:i.earthRadius*3.28084,inches:i.earthRadius*39.37,kilometers:i.earthRadius/1e3,kilometres:i.earthRadius/1e3,meters:i.earthRadius,metres:i.earthRadius,miles:i.earthRadius/1609.344,millimeters:i.earthRadius*1e3,millimetres:i.earthRadius*1e3,nauticalmiles:i.earthRadius/1852,radians:1,yards:i.earthRadius*1.0936},i.unitsFactors={centimeters:100,centimetres:100,degrees:1/111325,feet:3.28084,inches:39.37,kilometers:1/1e3,kilometres:1/1e3,meters:1,metres:1,miles:1/1609.344,millimeters:1e3,millimetres:1e3,nauticalmiles:1/1852,radians:1/i.earthRadius,yards:1.0936133},i.areaFactors={acres:247105e-9,centimeters:1e4,centimetres:1e4,feet:10.763910417,hectares:1e-4,inches:1550.003100006,kilometers:1e-6,kilometres:1e-6,meters:1,metres:1,miles:386e-9,millimeters:1e6,millimetres:1e6,yards:1.195990046};function s(D,I,R){R===void 0&&(R={});var V={type:"Feature"};return(R.id===0||R.id)&&(V.id=R.id),R.bbox&&(V.bbox=R.bbox),V.properties=I||{},V.geometry=D,V}i.feature=s;function o(D,I,R){switch(D){case"Point":return h(I).geometry;case"LineString":return v(I).geometry;case"Polygon":return m(I).geometry;case"MultiPoint":return F(I).geometry;case"MultiLineString":return N(I).geometry;case"MultiPolygon":return tt(I).geometry;default:throw new Error(D+" is invalid")}}i.geometry=o;function h(D,I,R){if(R===void 0&&(R={}),!D)throw new Error("coordinates is required");if(!Array.isArray(D))throw new Error("coordinates must be an Array");if(D.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!et(D[0])||!et(D[1]))throw new Error("coordinates must contain numbers");var V={type:"Point",coordinates:D};return s(V,I,R)}i.point=h;function d(D,I,R){return R===void 0&&(R={}),P(D.map(function(V){return h(V,I)}),R)}i.points=d;function m(D,I,R){R===void 0&&(R={});for(var V=0,H=D;V<H.length;V++){var $=H[V];if($.length<4)throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");for(var Q=0;Q<$[$.length-1].length;Q++)if($[$.length-1][Q]!==$[0][Q])throw new Error("First and last Position are not equivalent.")}var J={type:"Polygon",coordinates:D};return s(J,I,R)}i.polygon=m;function y(D,I,R){return R===void 0&&(R={}),P(D.map(function(V){return m(V,I)}),R)}i.polygons=y;function v(D,I,R){if(R===void 0&&(R={}),D.length<2)throw new Error("coordinates must be an array of two or more positions");var V={type:"LineString",coordinates:D};return s(V,I,R)}i.lineString=v;function w(D,I,R){return R===void 0&&(R={}),P(D.map(function(V){return v(V,I)}),R)}i.lineStrings=w;function P(D,I){I===void 0&&(I={});var R={type:"FeatureCollection"};return I.id&&(R.id=I.id),I.bbox&&(R.bbox=I.bbox),R.features=D,R}i.featureCollection=P;function N(D,I,R){R===void 0&&(R={});var V={type:"MultiLineString",coordinates:D};return s(V,I,R)}i.multiLineString=N;function F(D,I,R){R===void 0&&(R={});var V={type:"MultiPoint",coordinates:D};return s(V,I,R)}i.multiPoint=F;function tt(D,I,R){R===void 0&&(R={});var V={type:"MultiPolygon",coordinates:D};return s(V,I,R)}i.multiPolygon=tt;function it(D,I,R){R===void 0&&(R={});var V={type:"GeometryCollection",geometries:D};return s(V,I,R)}i.geometryCollection=it;function lt(D,I){if(I===void 0&&(I=0),I&&!(I>=0))throw new Error("precision must be a positive number");var R=Math.pow(10,I||0);return Math.round(D*R)/R}i.round=lt;function ft(D,I){I===void 0&&(I="kilometers");var R=i.factors[I];if(!R)throw new Error(I+" units is invalid");return D*R}i.radiansToLength=ft;function vt(D,I){I===void 0&&(I="kilometers");var R=i.factors[I];if(!R)throw new Error(I+" units is invalid");return D/R}i.lengthToRadians=vt;function Ft(D,I){return q(vt(D,I))}i.lengthToDegrees=Ft;function z(D){var I=D%360;return I<0&&(I+=360),I}i.bearingToAzimuth=z;function q(D){var I=D%(2*Math.PI);return I*180/Math.PI}i.radiansToDegrees=q;function W(D){var I=D%360;return I*Math.PI/180}i.degreesToRadians=W;function nt(D,I,R){if(I===void 0&&(I="kilometers"),R===void 0&&(R="kilometers"),!(D>=0))throw new Error("length must be a positive number");return ft(vt(D,I),R)}i.convertLength=nt;function X(D,I,R){if(I===void 0&&(I="meters"),R===void 0&&(R="kilometers"),!(D>=0))throw new Error("area must be a positive number");var V=i.areaFactors[I];if(!V)throw new Error("invalid original units");var H=i.areaFactors[R];if(!H)throw new Error("invalid final units");return D/V*H}i.convertArea=X;function et(D){return!isNaN(D)&&D!==null&&!Array.isArray(D)}i.isNumber=et;function E(D){return!!D&&D.constructor===Object}i.isObject=E;function S(D){if(!D)throw new Error("bbox is required");if(!Array.isArray(D))throw new Error("bbox must be an Array");if(D.length!==4&&D.length!==6)throw new Error("bbox must be an Array of 4 or 6 numbers");D.forEach(function(I){if(!et(I))throw new Error("bbox must only contain numbers")})}i.validateBBox=S;function O(D){if(!D)throw new Error("id is required");if(["string","number"].indexOf(typeof D)===-1)throw new Error("id must be a number or a string")}i.validateId=O}),rn=p(i=>{Object.defineProperty(i,"__esModule",{value:!0});var s=Qt();function o(q,W,nt){if(q!==null)for(var X,et,E,S,O,D,I,R=0,V=0,H,$=q.type,Q=$==="FeatureCollection",J=$==="Feature",ot=Q?q.features.length:1,gt=0;gt<ot;gt++){I=Q?q.features[gt].geometry:J?q.geometry:q,H=I?I.type==="GeometryCollection":!1,O=H?I.geometries.length:1;for(var At=0;At<O;At++){var bt=0,Vt=0;if(S=H?I.geometries[At]:I,S!==null){D=S.coordinates;var Kt=S.type;switch(R=nt&&(Kt==="Polygon"||Kt==="MultiPolygon")?1:0,Kt){case null:break;case"Point":if(W(D,V,gt,bt,Vt)===!1)return!1;V++,bt++;break;case"LineString":case"MultiPoint":for(X=0;X<D.length;X++){if(W(D[X],V,gt,bt,Vt)===!1)return!1;V++,Kt==="MultiPoint"&&bt++}Kt==="LineString"&&bt++;break;case"Polygon":case"MultiLineString":for(X=0;X<D.length;X++){for(et=0;et<D[X].length-R;et++){if(W(D[X][et],V,gt,bt,Vt)===!1)return!1;V++}Kt==="MultiLineString"&&bt++,Kt==="Polygon"&&Vt++}Kt==="Polygon"&&bt++;break;case"MultiPolygon":for(X=0;X<D.length;X++){for(Vt=0,et=0;et<D[X].length;et++){for(E=0;E<D[X][et].length-R;E++){if(W(D[X][et][E],V,gt,bt,Vt)===!1)return!1;V++}Vt++}bt++}break;case"GeometryCollection":for(X=0;X<S.geometries.length;X++)if(o(S.geometries[X],W,nt)===!1)return!1;break;default:throw new Error("Unknown Geometry Type")}}}}}function h(q,W,nt,X){var et=nt;return o(q,function(E,S,O,D,I){S===0&&nt===void 0?et=E:et=W(et,E,S,O,D,I)},X),et}function d(q,W){var nt;switch(q.type){case"FeatureCollection":for(nt=0;nt<q.features.length&&W(q.features[nt].properties,nt)!==!1;nt++);break;case"Feature":W(q.properties,0);break}}function m(q,W,nt){var X=nt;return d(q,function(et,E){E===0&&nt===void 0?X=et:X=W(X,et,E)}),X}function y(q,W){if(q.type==="Feature")W(q,0);else if(q.type==="FeatureCollection")for(var nt=0;nt<q.features.length&&W(q.features[nt],nt)!==!1;nt++);}function v(q,W,nt){var X=nt;return y(q,function(et,E){E===0&&nt===void 0?X=et:X=W(X,et,E)}),X}function w(q){var W=[];return o(q,function(nt){W.push(nt)}),W}function P(q,W){var nt,X,et,E,S,O,D,I,R,V,H=0,$=q.type==="FeatureCollection",Q=q.type==="Feature",J=$?q.features.length:1;for(nt=0;nt<J;nt++){for(O=$?q.features[nt].geometry:Q?q.geometry:q,I=$?q.features[nt].properties:Q?q.properties:{},R=$?q.features[nt].bbox:Q?q.bbox:void 0,V=$?q.features[nt].id:Q?q.id:void 0,D=O?O.type==="GeometryCollection":!1,S=D?O.geometries.length:1,et=0;et<S;et++){if(E=D?O.geometries[et]:O,E===null){if(W(null,H,I,R,V)===!1)return!1;continue}switch(E.type){case"Point":case"LineString":case"MultiPoint":case"Polygon":case"MultiLineString":case"MultiPolygon":{if(W(E,H,I,R,V)===!1)return!1;break}case"GeometryCollection":{for(X=0;X<E.geometries.length;X++)if(W(E.geometries[X],H,I,R,V)===!1)return!1;break}default:throw new Error("Unknown Geometry Type")}}H++}}function N(q,W,nt){var X=nt;return P(q,function(et,E,S,O,D){E===0&&nt===void 0?X=et:X=W(X,et,E,S,O,D)}),X}function F(q,W){P(q,function(nt,X,et,E,S){var O=nt===null?null:nt.type;switch(O){case null:case"Point":case"LineString":case"Polygon":return W(s.feature(nt,et,{bbox:E,id:S}),X,0)===!1?!1:void 0}var D;switch(O){case"MultiPoint":D="Point";break;case"MultiLineString":D="LineString";break;case"MultiPolygon":D="Polygon";break}for(var I=0;I<nt.coordinates.length;I++){var R=nt.coordinates[I],V={type:D,coordinates:R};if(W(s.feature(V,et),X,I)===!1)return!1}})}function tt(q,W,nt){var X=nt;return F(q,function(et,E,S){E===0&&S===0&&nt===void 0?X=et:X=W(X,et,E,S)}),X}function it(q,W){F(q,function(nt,X,et){var E=0;if(nt.geometry){var S=nt.geometry.type;if(!(S==="Point"||S==="MultiPoint")){var O,D=0,I=0,R=0;if(o(nt,function(V,H,$,Q,J){if(O===void 0||X>D||Q>I||J>R){O=V,D=X,I=Q,R=J,E=0;return}var ot=s.lineString([O,V],nt.properties);if(W(ot,X,et,J,E)===!1)return!1;E++,O=V})===!1)return!1}}})}function lt(q,W,nt){var X=nt,et=!1;return it(q,function(E,S,O,D,I){et===!1&&nt===void 0?X=E:X=W(X,E,S,O,D,I),et=!0}),X}function ft(q,W){if(!q)throw new Error("geojson is required");F(q,function(nt,X,et){if(nt.geometry!==null){var E=nt.geometry.type,S=nt.geometry.coordinates;switch(E){case"LineString":if(W(nt,X,et,0,0)===!1)return!1;break;case"Polygon":for(var O=0;O<S.length;O++)if(W(s.lineString(S[O],nt.properties),X,et,O)===!1)return!1;break}}})}function vt(q,W,nt){var X=nt;return ft(q,function(et,E,S,O){E===0&&nt===void 0?X=et:X=W(X,et,E,S,O)}),X}function Ft(q,W){if(W=W||{},!s.isObject(W))throw new Error("options is invalid");var nt=W.featureIndex||0,X=W.multiFeatureIndex||0,et=W.geometryIndex||0,E=W.segmentIndex||0,S=W.properties,O;switch(q.type){case"FeatureCollection":nt<0&&(nt=q.features.length+nt),S=S||q.features[nt].properties,O=q.features[nt].geometry;break;case"Feature":S=S||q.properties,O=q.geometry;break;case"Point":case"MultiPoint":return null;case"LineString":case"Polygon":case"MultiLineString":case"MultiPolygon":O=q;break;default:throw new Error("geojson is invalid")}if(O===null)return null;var D=O.coordinates;switch(O.type){case"Point":case"MultiPoint":return null;case"LineString":return E<0&&(E=D.length+E-1),s.lineString([D[E],D[E+1]],S,W);case"Polygon":return et<0&&(et=D.length+et),E<0&&(E=D[et].length+E-1),s.lineString([D[et][E],D[et][E+1]],S,W);case"MultiLineString":return X<0&&(X=D.length+X),E<0&&(E=D[X].length+E-1),s.lineString([D[X][E],D[X][E+1]],S,W);case"MultiPolygon":return X<0&&(X=D.length+X),et<0&&(et=D[X].length+et),E<0&&(E=D[X][et].length-E-1),s.lineString([D[X][et][E],D[X][et][E+1]],S,W)}throw new Error("geojson is invalid")}function z(q,W){if(W=W||{},!s.isObject(W))throw new Error("options is invalid");var nt=W.featureIndex||0,X=W.multiFeatureIndex||0,et=W.geometryIndex||0,E=W.coordIndex||0,S=W.properties,O;switch(q.type){case"FeatureCollection":nt<0&&(nt=q.features.length+nt),S=S||q.features[nt].properties,O=q.features[nt].geometry;break;case"Feature":S=S||q.properties,O=q.geometry;break;case"Point":case"MultiPoint":return null;case"LineString":case"Polygon":case"MultiLineString":case"MultiPolygon":O=q;break;default:throw new Error("geojson is invalid")}if(O===null)return null;var D=O.coordinates;switch(O.type){case"Point":return s.point(D,S,W);case"MultiPoint":return X<0&&(X=D.length+X),s.point(D[X],S,W);case"LineString":return E<0&&(E=D.length+E),s.point(D[E],S,W);case"Polygon":return et<0&&(et=D.length+et),E<0&&(E=D[et].length+E),s.point(D[et][E],S,W);case"MultiLineString":return X<0&&(X=D.length+X),E<0&&(E=D[X].length+E),s.point(D[X][E],S,W);case"MultiPolygon":return X<0&&(X=D.length+X),et<0&&(et=D[X].length+et),E<0&&(E=D[X][et].length-E),s.point(D[X][et][E],S,W)}throw new Error("geojson is invalid")}i.coordAll=w,i.coordEach=o,i.coordReduce=h,i.featureEach=y,i.featureReduce=v,i.findPoint=z,i.findSegment=Ft,i.flattenEach=F,i.flattenReduce=tt,i.geomEach=P,i.geomReduce=N,i.lineEach=ft,i.lineReduce=vt,i.propEach=d,i.propReduce=m,i.segmentEach=it,i.segmentReduce=lt}),Zi=p(i=>{Object.defineProperty(i,"__esModule",{value:!0});var s=rn();function o(h){var d=[1/0,1/0,-1/0,-1/0];return s.coordEach(h,function(m){d[0]>m[0]&&(d[0]=m[0]),d[1]>m[1]&&(d[1]=m[1]),d[2]<m[0]&&(d[2]=m[0]),d[3]<m[1]&&(d[3]=m[1])}),d}o.default=o,i.default=o}),Li=p((i,s)=>{var o=Nt(),h=Qt(),d=rn(),m=Zi().default,y=d.featureEach;d.coordEach,h.polygon;var v=h.featureCollection;function w(P){var N=new o(P);return N.insert=function(F){if(F.type!=="Feature")throw new Error("invalid feature");return F.bbox=F.bbox?F.bbox:m(F),o.prototype.insert.call(this,F)},N.load=function(F){var tt=[];return Array.isArray(F)?F.forEach(function(it){if(it.type!=="Feature")throw new Error("invalid features");it.bbox=it.bbox?it.bbox:m(it),tt.push(it)}):y(F,function(it){if(it.type!=="Feature")throw new Error("invalid features");it.bbox=it.bbox?it.bbox:m(it),tt.push(it)}),o.prototype.load.call(this,tt)},N.remove=function(F,tt){if(F.type!=="Feature")throw new Error("invalid feature");return F.bbox=F.bbox?F.bbox:m(F),o.prototype.remove.call(this,F,tt)},N.clear=function(){return o.prototype.clear.call(this)},N.search=function(F){var tt=o.prototype.search.call(this,this.toBBox(F));return v(tt)},N.collides=function(F){return o.prototype.collides.call(this,this.toBBox(F))},N.all=function(){var F=o.prototype.all.call(this);return v(F)},N.toJSON=function(){return o.prototype.toJSON.call(this)},N.fromJSON=function(F){return o.prototype.fromJSON.call(this,F)},N.toBBox=function(F){var tt;if(F.bbox)tt=F.bbox;else if(Array.isArray(F)&&F.length===4)tt=F;else if(Array.isArray(F)&&F.length===6)tt=[F[0],F[1],F[3],F[4]];else if(F.type==="Feature")tt=m(F);else if(F.type==="FeatureCollection")tt=m(F);else throw new Error("invalid geojson");return{minX:tt[0],minY:tt[1],maxX:tt[2],maxY:tt[3]}},N}s.exports=w,s.exports.default=w});Array.prototype.findIndex=Array.prototype.findIndex||function(i){if(this===null)throw new TypeError("Array.prototype.findIndex called on null or undefined");if(typeof i!="function")throw new TypeError("callback must be a function");for(var s=Object(this),o=s.length>>>0,h=arguments[1],d=0;d<o;d++)if(i.call(h,s[d],d,s))return d;return-1},Array.prototype.find=Array.prototype.find||function(i){if(this===null)throw new TypeError("Array.prototype.find called on null or undefined");if(typeof i!="function")throw new TypeError("callback must be a function");for(var s=Object(this),o=s.length>>>0,h=arguments[1],d=0;d<o;d++){var m=s[d];if(i.call(h,m,d,s))return m}},typeof Object.assign!="function"&&(Object.assign=function(i){if(i==null)throw new TypeError("Cannot convert undefined or null to object");i=Object(i);for(var s=1;s<arguments.length;s++){var o=arguments[s];if(o!=null)for(var h in o)Object.prototype.hasOwnProperty.call(o,h)&&(i[h]=o[h])}return i}),function(i){i.forEach(function(s){s.hasOwnProperty("remove")||Object.defineProperty(s,"remove",{configurable:!0,enumerable:!0,writable:!0,value:function(){this.parentNode.removeChild(this)}})})}([Element.prototype,CharacterData.prototype,DocumentType.prototype]),Array.prototype.includes||Object.defineProperty(Array.prototype,"includes",{value:function(i,s){if(this==null)throw new TypeError('"this" is null or not defined');var o=Object(this),h=o.length>>>0;if(h===0)return!1;var d=s|0,m=Math.max(d>=0?d:h-Math.abs(d),0);function y(v,w){return v===w||typeof v=="number"&&typeof w=="number"&&isNaN(v)&&isNaN(w)}for(;m<h;){if(y(o[m],i))return!0;m++}return!1}});var qs={version:"2.18.3"},Tt=A(On()),ne={tooltips:{placeMarker:"Click to place marker",firstVertex:"Click to place first vertex",continueLine:"Click to continue drawing",finishLine:"Click any existing marker to finish",finishPoly:"Click first marker to finish",finishRect:"Click to finish",startCircle:"Click to place circle center",finishCircle:"Click to finish circle",placeCircleMarker:"Click to place circle marker",placeText:"Click to place text",selectFirstLayerFor:"Select first layer for {action}",selectSecondLayerFor:"Select second layer for {action}"},actions:{finish:"Finish",cancel:"Cancel",removeLastVertex:"Remove Last Vertex"},buttonTitles:{drawMarkerButton:"Draw Marker",drawPolyButton:"Draw Polygons",drawLineButton:"Draw Polyline",drawCircleButton:"Draw Circle",drawRectButton:"Draw Rectangle",editButton:"Edit Layers",dragButton:"Drag Layers",cutButton:"Cut Layers",deleteButton:"Remove Layers",drawCircleMarkerButton:"Draw Circle Marker",snappingButton:"Snap dragged marker to other layers and vertices",pinningButton:"Pin shared vertices together",rotateButton:"Rotate Layers",drawTextButton:"Draw Text",scaleButton:"Scale Layers",autoTracingButton:"Auto trace Line",snapGuidesButton:"Show SnapGuides",unionButton:"Union layers",differenceButton:"Subtract layers"},measurements:{totalLength:"Length",segmentLength:"Segment length",area:"Area",radius:"Radius",perimeter:"Perimeter",height:"Height",width:"Width",coordinates:"Position",coordinatesMarker:"Position Marker"}},Hs={tooltips:{placeMarker:"Platziere den Marker mit Klick",firstVertex:"Platziere den ersten Marker mit Klick",continueLine:"Klicke, um weiter zu zeichnen",finishLine:"Beende mit Klick auf existierenden Marker",finishPoly:"Beende mit Klick auf ersten Marker",finishRect:"Beende mit Klick",startCircle:"Platziere das Kreiszentrum mit Klick",finishCircle:"Beende den Kreis mit Klick",placeCircleMarker:"Platziere den Kreismarker mit Klick",placeText:"Platziere den Text mit Klick"},actions:{finish:"Beenden",cancel:"Abbrechen",removeLastVertex:"Letzten Vertex löschen"},buttonTitles:{drawMarkerButton:"Marker zeichnen",drawPolyButton:"Polygon zeichnen",drawLineButton:"Polyline zeichnen",drawCircleButton:"Kreis zeichnen",drawRectButton:"Rechteck zeichnen",editButton:"Layer editieren",dragButton:"Layer bewegen",cutButton:"Layer schneiden",deleteButton:"Layer löschen",drawCircleMarkerButton:"Kreismarker zeichnen",snappingButton:"Bewegter Layer an andere Layer oder Vertexe einhacken",pinningButton:"Vertexe an der gleichen Position verknüpfen",rotateButton:"Layer drehen",drawTextButton:"Text zeichnen",scaleButton:"Layer skalieren",autoTracingButton:"Linie automatisch nachzeichen"},measurements:{totalLength:"Länge",segmentLength:"Segment Länge",area:"Fläche",radius:"Radius",perimeter:"Umfang",height:"Höhe",width:"Breite",coordinates:"Position",coordinatesMarker:"Position Marker"}},Rn={tooltips:{placeMarker:"Clicca per posizionare un Marker",firstVertex:"Clicca per posizionare il primo vertice",continueLine:"Clicca per continuare a disegnare",finishLine:"Clicca qualsiasi marker esistente per terminare",finishPoly:"Clicca il primo marker per terminare",finishRect:"Clicca per terminare",startCircle:"Clicca per posizionare il punto centrale del cerchio",finishCircle:"Clicca per terminare il cerchio",placeCircleMarker:"Clicca per posizionare un Marker del cherchio"},actions:{finish:"Termina",cancel:"Annulla",removeLastVertex:"Rimuovi l'ultimo vertice"},buttonTitles:{drawMarkerButton:"Disegna Marker",drawPolyButton:"Disegna Poligoni",drawLineButton:"Disegna Polilinea",drawCircleButton:"Disegna Cerchio",drawRectButton:"Disegna Rettangolo",editButton:"Modifica Livelli",dragButton:"Sposta Livelli",cutButton:"Ritaglia Livelli",deleteButton:"Elimina Livelli",drawCircleMarkerButton:"Disegna Marker del Cerchio",snappingButton:"Snap ha trascinato il pennarello su altri strati e vertici",pinningButton:"Pin condiviso vertici insieme",rotateButton:"Ruota livello"}},Ne={tooltips:{placeMarker:"Klik untuk menempatkan marker",firstVertex:"Klik untuk menempatkan vertex pertama",continueLine:"Klik untuk meneruskan digitasi",finishLine:"Klik pada sembarang marker yang ada untuk mengakhiri",finishPoly:"Klik marker pertama untuk mengakhiri",finishRect:"Klik untuk mengakhiri",startCircle:"Klik untuk menempatkan titik pusat lingkaran",finishCircle:"Klik untuk mengakhiri lingkaran",placeCircleMarker:"Klik untuk menempatkan penanda lingkarann"},actions:{finish:"Selesai",cancel:"Batal",removeLastVertex:"Hilangkan Vertex Terakhir"},buttonTitles:{drawMarkerButton:"Digitasi Marker",drawPolyButton:"Digitasi Polygon",drawLineButton:"Digitasi Polyline",drawCircleButton:"Digitasi Lingkaran",drawRectButton:"Digitasi Segi Empat",editButton:"Edit Layer",dragButton:"Geser Layer",cutButton:"Potong Layer",deleteButton:"Hilangkan Layer",drawCircleMarkerButton:"Digitasi Penanda Lingkaran",snappingButton:"Jepretkan penanda yang ditarik ke lapisan dan simpul lain",pinningButton:"Sematkan simpul bersama bersama",rotateButton:"Putar lapisan"}},zo={tooltips:{placeMarker:"Adaugă un punct",firstVertex:"Apasă aici pentru a adăuga primul Vertex",continueLine:"Apasă aici pentru a continua desenul",finishLine:"Apasă pe orice obiect pentru a finisa desenul",finishPoly:"Apasă pe primul obiect pentru a finisa",finishRect:"Apasă pentru a finisa",startCircle:"Apasă pentru a desena un cerc",finishCircle:"Apasă pentru a finisa un cerc",placeCircleMarker:"Adaugă un punct"},actions:{finish:"Termină",cancel:"Anulează",removeLastVertex:"Șterge ultimul Vertex"},buttonTitles:{drawMarkerButton:"Adaugă o bulină",drawPolyButton:"Desenează un poligon",drawLineButton:"Desenează o linie",drawCircleButton:"Desenează un cerc",drawRectButton:"Desenează un dreptunghi",editButton:"Editează straturile",dragButton:"Mută straturile",cutButton:"Taie straturile",deleteButton:"Șterge straturile",drawCircleMarkerButton:"Desenează marcatorul cercului",snappingButton:"Fixați marcatorul glisat pe alte straturi și vârfuri",pinningButton:"Fixați vârfurile partajate împreună",rotateButton:"Rotiți stratul"}},Gn={tooltips:{placeMarker:"Нажмите, чтобы нанести маркер",firstVertex:"Нажмите, чтобы нанести первый объект",continueLine:"Нажмите, чтобы продолжить рисование",finishLine:"Нажмите любой существующий маркер для завершения",finishPoly:"Выберите первую точку, чтобы закончить",finishRect:"Нажмите, чтобы закончить",startCircle:"Нажмите, чтобы добавить центр круга",finishCircle:"Нажмите, чтобы задать радиус",placeCircleMarker:"Нажмите, чтобы нанести круговой маркер"},actions:{finish:"Завершить",cancel:"Отменить",removeLastVertex:"Отменить последнее действие"},buttonTitles:{drawMarkerButton:"Добавить маркер",drawPolyButton:"Рисовать полигон",drawLineButton:"Рисовать кривую",drawCircleButton:"Рисовать круг",drawRectButton:"Рисовать прямоугольник",editButton:"Редактировать слой",dragButton:"Перенести слой",cutButton:"Вырезать слой",deleteButton:"Удалить слой",drawCircleMarkerButton:"Добавить круговой маркер",snappingButton:"Привязать перетаскиваемый маркер к другим слоям и вершинам",pinningButton:"Связать общие точки вместе",rotateButton:"Поворот слоя"}},bi={tooltips:{placeMarker:"Presiona para colocar un marcador",firstVertex:"Presiona para colocar el primer vértice",continueLine:"Presiona para continuar dibujando",finishLine:"Presiona cualquier marcador existente para finalizar",finishPoly:"Presiona el primer marcador para finalizar",finishRect:"Presiona para finalizar",startCircle:"Presiona para colocar el centro del círculo",finishCircle:"Presiona para finalizar el círculo",placeCircleMarker:"Presiona para colocar un marcador de círculo"},actions:{finish:"Finalizar",cancel:"Cancelar",removeLastVertex:"Eliminar último vértice"},buttonTitles:{drawMarkerButton:"Dibujar Marcador",drawPolyButton:"Dibujar Polígono",drawLineButton:"Dibujar Línea",drawCircleButton:"Dibujar Círculo",drawRectButton:"Dibujar Rectángulo",editButton:"Editar Capas",dragButton:"Arrastrar Capas",cutButton:"Cortar Capas",deleteButton:"Eliminar Capas",drawCircleMarkerButton:"Dibujar Marcador de Círculo",snappingButton:"El marcador de Snap arrastrado a otras capas y vértices",pinningButton:"Fijar juntos los vértices compartidos",rotateButton:"Rotar capa"}},re={tooltips:{placeMarker:"Klik om een marker te plaatsen",firstVertex:"Klik om het eerste punt te plaatsen",continueLine:"Klik om te blijven tekenen",finishLine:"Klik op een bestaand punt om te beëindigen",finishPoly:"Klik op het eerst punt om te beëindigen",finishRect:"Klik om te beëindigen",startCircle:"Klik om het middelpunt te plaatsen",finishCircle:"Klik om de cirkel te beëindigen",placeCircleMarker:"Klik om een marker te plaatsen"},actions:{finish:"Bewaar",cancel:"Annuleer",removeLastVertex:"Verwijder laatste punt"},buttonTitles:{drawMarkerButton:"Plaats Marker",drawPolyButton:"Teken een vlak",drawLineButton:"Teken een lijn",drawCircleButton:"Teken een cirkel",drawRectButton:"Teken een vierkant",editButton:"Bewerk",dragButton:"Verplaats",cutButton:"Knip",deleteButton:"Verwijder",drawCircleMarkerButton:"Plaats Marker",snappingButton:"Snap gesleepte marker naar andere lagen en hoekpunten",pinningButton:"Speld gedeelde hoekpunten samen",rotateButton:"Laag roteren"}},wi={tooltips:{placeMarker:"Cliquez pour placer un marqueur",firstVertex:"Cliquez pour placer le premier sommet",continueLine:"Cliquez pour continuer à dessiner",finishLine:"Cliquez sur n'importe quel marqueur pour terminer",finishPoly:"Cliquez sur le premier marqueur pour terminer",finishRect:"Cliquez pour terminer",startCircle:"Cliquez pour placer le centre du cercle",finishCircle:"Cliquez pour finir le cercle",placeCircleMarker:"Cliquez pour placer le marqueur circulaire"},actions:{finish:"Terminer",cancel:"Annuler",removeLastVertex:"Retirer le dernier sommet"},buttonTitles:{drawMarkerButton:"Placer des marqueurs",drawPolyButton:"Dessiner des polygones",drawLineButton:"Dessiner des polylignes",drawCircleButton:"Dessiner un cercle",drawRectButton:"Dessiner un rectangle",editButton:"Éditer des calques",dragButton:"Déplacer des calques",cutButton:"Couper des calques",deleteButton:"Supprimer des calques",drawCircleMarkerButton:"Dessiner un marqueur circulaire",snappingButton:"Glisser le marqueur vers d'autres couches et sommets",pinningButton:"Épingler ensemble les sommets partagés",rotateButton:"Tourner des calques"}},on={tooltips:{placeMarker:"单击放置标记",firstVertex:"单击放置首个顶点",continueLine:"单击继续绘制",finishLine:"单击任何存在的标记以完成",finishPoly:"单击第一个标记以完成",finishRect:"单击完成",startCircle:"单击放置圆心",finishCircle:"单击完成圆形",placeCircleMarker:"点击放置圆形标记"},actions:{finish:"完成",cancel:"取消",removeLastVertex:"移除最后的顶点"},buttonTitles:{drawMarkerButton:"绘制标记",drawPolyButton:"绘制多边形",drawLineButton:"绘制线段",drawCircleButton:"绘制圆形",drawRectButton:"绘制长方形",editButton:"编辑图层",dragButton:"拖拽图层",cutButton:"剪切图层",deleteButton:"删除图层",drawCircleMarkerButton:"画圆圈标记",snappingButton:"将拖动的标记捕捉到其他图层和顶点",pinningButton:"将共享顶点固定在一起",rotateButton:"旋转图层"}},hn={tooltips:{placeMarker:"單擊放置標記",firstVertex:"單擊放置第一個頂點",continueLine:"單擊繼續繪製",finishLine:"單擊任何存在的標記以完成",finishPoly:"單擊第一個標記以完成",finishRect:"單擊完成",startCircle:"單擊放置圓心",finishCircle:"單擊完成圓形",placeCircleMarker:"點擊放置圓形標記"},actions:{finish:"完成",cancel:"取消",removeLastVertex:"移除最後一個頂點"},buttonTitles:{drawMarkerButton:"放置標記",drawPolyButton:"繪製多邊形",drawLineButton:"繪製線段",drawCircleButton:"繪製圓形",drawRectButton:"繪製方形",editButton:"編輯圖形",dragButton:"移動圖形",cutButton:"裁切圖形",deleteButton:"刪除圖形",drawCircleMarkerButton:"畫圓圈標記",snappingButton:"將拖動的標記對齊到其他圖層和頂點",pinningButton:"將共享頂點固定在一起",rotateButton:"旋轉圖形"}},Vs={tooltips:{placeMarker:"Clique para posicionar o marcador",firstVertex:"Clique para posicionar o primeiro vértice",continueLine:"Clique para continuar desenhando",finishLine:"Clique em qualquer marcador existente para finalizar",finishPoly:"Clique no primeiro marcador para finalizar",finishRect:"Clique para finalizar",startCircle:"Clique para posicionar o centro do círculo",finishCircle:"Clique para finalizar o círculo",placeCircleMarker:"Clique para posicionar o marcador circular",placeText:"Clique para inserir texto"},actions:{finish:"Finalizar",cancel:"Cancelar",removeLastVertex:"Remover último vértice"},buttonTitles:{drawMarkerButton:"Desenhar Marcador",drawPolyButton:"Desenhar Polígonos",drawLineButton:"Desenhar Linha Poligonal",drawCircleButton:"Desenhar Círculo",drawRectButton:"Desenhar Retângulo",editButton:"Editar Camadas",dragButton:"Arrastar Camadas",cutButton:"Recortar Camadas",deleteButton:"Remover Camadas",drawCircleMarkerButton:"Desenhar Marcador de Círculo",snappingButton:"Ajustar marcador arrastado a outras camadas e vértices",pinningButton:"Unir vértices compartilhados",rotateButton:"Rotacionar Camadas",drawTextButton:"Desenhar Texto",scaleButton:"Redimensionar Camadas",autoTracingButton:"Traçado Automático de Linha"},measurements:{totalLength:"Comprimento",segmentLength:"Comprimento do Segmento",area:"Área",radius:"Raio",perimeter:"Perímetro",height:"Altura",width:"Largura",coordinates:"Posição",coordinatesMarker:"Marcador de Posição"}},ji={tooltips:{placeMarker:"Clique para colocar marcador",firstVertex:"Clique para colocar primeiro vértice",continueLine:"Clique para continuar a desenhar",finishLine:"Clique num marcador existente para terminar",finishPoly:"Clique no primeiro marcador para terminar",finishRect:"Clique para terminar",startCircle:"Clique para colocar o centro do círculo",finishCircle:"Clique para terminar o círculo",placeCircleMarker:"Clique para colocar marcador de círculo",placeText:"Clique para colocar texto"},actions:{finish:"Terminar",cancel:"Cancelar",removeLastVertex:"Remover Último Vértice"},buttonTitles:{drawMarkerButton:"Desenhar Marcador",drawPolyButton:"Desenhar Polígonos",drawLineButton:"Desenhar Polilinha",drawCircleButton:"Desenhar Círculo",drawRectButton:"Desenhar Retângulo",editButton:"Editar Camadas",dragButton:"Arrastar Camadas",cutButton:"Cortar Camadas",deleteButton:"Remover Camadas",drawCircleMarkerButton:"Desenhar Marcador de Círculo",snappingButton:"Ajustar marcador arrastado a outras camadas e vértices",pinningButton:"Unir vértices partilhados",rotateButton:"Rodar Camadas",drawTextButton:"Desenhar Texto",scaleButton:"Escalar Camadas",autoTracingButton:"Traçado Automático de Linha"},measurements:{totalLength:"Comprimento",segmentLength:"Comprimento do Segmento",area:"Área",radius:"Raio",perimeter:"Perímetro",height:"Altura",width:"Largura",coordinates:"Posição",coordinatesMarker:"Marcador de Posição"}},$s={tooltips:{placeMarker:"Kliknij, aby umieścić znacznik",firstVertex:"Kliknij, aby umieścić pierwszy wierzchołek",continueLine:"Kliknij, aby kontynuować rysowanie",finishLine:"Kliknij dowolny istniejący znacznik, aby zakończyć",finishPoly:"Kliknij pierwszy znacznik, aby zakończyć",finishRect:"Kliknij, aby zakończyć",startCircle:"Kliknij, aby umieścić środek okręgu",finishCircle:"Kliknij, aby zakończyć okrąg",placeCircleMarker:"Kliknij, aby umieścić znacznik okręgu",placeText:"Kliknij, aby umieścić tekst"},actions:{finish:"Zakończ",cancel:"Anuluj",removeLastVertex:"Usuń ostatni wierzchołek"},buttonTitles:{drawMarkerButton:"Rysuj znacznik",drawPolyButton:"Rysuj wielokąt",drawLineButton:"Rysuj linię",drawCircleButton:"Rysuj okrąg",drawRectButton:"Rysuj prostokąt",editButton:"Edytuj warstwy",dragButton:"Przeciągnij warstwy",cutButton:"Wytnij warstwy",deleteButton:"Usuń warstwy",drawCircleMarkerButton:"Rysuj znacznik okrągły",snappingButton:"Przyciągnij przenoszony znacznik do innych warstw i wierzchołków",pinningButton:"Przypnij wspólne wierzchołki razem",rotateButton:"Obróć warstwy",drawTextButton:"Rysuj tekst",scaleButton:"Skaluj warstwy",autoTracingButton:"Automatyczne śledzenie linii"},measurements:{totalLength:"Długość",segmentLength:"Długość odcinka",area:"Obszar",radius:"Promień",perimeter:"Obwód",height:"Wysokość",width:"Szerokość",coordinates:"Pozycja",coordinatesMarker:"Znacznik pozycji"}},Ws={tooltips:{placeMarker:"Klicka för att placera markör",firstVertex:"Klicka för att placera första hörnet",continueLine:"Klicka för att fortsätta rita",finishLine:"Klicka på en existerande punkt för att slutföra",finishPoly:"Klicka på den första punkten för att slutföra",finishRect:"Klicka för att slutföra",startCircle:"Klicka för att placera cirkelns centrum",finishCircle:"Klicka för att slutföra cirkeln",placeCircleMarker:"Klicka för att placera cirkelmarkör"},actions:{finish:"Slutför",cancel:"Avbryt",removeLastVertex:"Ta bort sista hörnet"},buttonTitles:{drawMarkerButton:"Rita Markör",drawPolyButton:"Rita Polygoner",drawLineButton:"Rita Linje",drawCircleButton:"Rita Cirkel",drawRectButton:"Rita Rektangel",editButton:"Redigera Lager",dragButton:"Dra Lager",cutButton:"Klipp i Lager",deleteButton:"Ta bort Lager",drawCircleMarkerButton:"Rita Cirkelmarkör",snappingButton:"Snäpp dra markören till andra lager och hörn",pinningButton:"Fäst delade hörn tillsammans",rotateButton:"Rotera lagret"}},Fn={tooltips:{placeMarker:"Κάντε κλικ για να τοποθετήσετε Δείκτη",firstVertex:"Κάντε κλικ για να τοποθετήσετε το πρώτο σημείο",continueLine:"Κάντε κλικ για να συνεχίσετε να σχεδιάζετε",finishLine:"Κάντε κλικ σε οποιονδήποτε υπάρχον σημείο για να ολοκληρωθεί",finishPoly:"Κάντε κλικ στο πρώτο σημείο για να τελειώσετε",finishRect:"Κάντε κλικ για να τελειώσετε",startCircle:"Κάντε κλικ για να τοποθετήσετε κέντρο Κύκλου",finishCircle:"Κάντε κλικ για να ολοκληρώσετε τον Κύκλο",placeCircleMarker:"Κάντε κλικ για να τοποθετήσετε Κυκλικό Δείκτη"},actions:{finish:"Τέλος",cancel:"Ακύρωση",removeLastVertex:"Κατάργηση τελευταίου σημείου"},buttonTitles:{drawMarkerButton:"Σχεδίαση Δείκτη",drawPolyButton:"Σχεδίαση Πολυγώνου",drawLineButton:"Σχεδίαση Γραμμής",drawCircleButton:"Σχεδίαση Κύκλου",drawRectButton:"Σχεδίαση Ορθογωνίου",editButton:"Επεξεργασία Επιπέδων",dragButton:"Μεταφορά Επιπέδων",cutButton:"Αποκοπή Επιπέδων",deleteButton:"Κατάργηση Επιπέδων",drawCircleMarkerButton:"Σχεδίαση Κυκλικού Δείκτη",snappingButton:"Προσκόλληση του Δείκτη μεταφοράς σε άλλα Επίπεδα και Κορυφές",pinningButton:"Περικοπή κοινών κορυφών μαζί",rotateButton:"Περιστρέψτε το στρώμα"}},Ks={tooltips:{placeMarker:"Kattintson a jelölő elhelyezéséhez",firstVertex:"Kattintson az első pont elhelyezéséhez",continueLine:"Kattintson a következő pont elhelyezéséhez",finishLine:"A befejezéshez kattintson egy meglévő pontra",finishPoly:"A befejezéshez kattintson az első pontra",finishRect:"Kattintson a befejezéshez",startCircle:"Kattintson a kör középpontjának elhelyezéséhez",finishCircle:"Kattintson a kör befejezéséhez",placeCircleMarker:"Kattintson a körjelölő elhelyezéséhez"},actions:{finish:"Befejezés",cancel:"Mégse",removeLastVertex:"Utolsó pont eltávolítása"},buttonTitles:{drawMarkerButton:"Jelölő rajzolása",drawPolyButton:"Poligon rajzolása",drawLineButton:"Vonal rajzolása",drawCircleButton:"Kör rajzolása",drawRectButton:"Négyzet rajzolása",editButton:"Elemek szerkesztése",dragButton:"Elemek mozgatása",cutButton:"Elemek vágása",deleteButton:"Elemek törlése",drawCircleMarkerButton:"Kör jelölő rajzolása",snappingButton:"Kapcsolja a jelöltőt másik elemhez vagy ponthoz",pinningButton:"Közös pontok összekötése",rotateButton:"Fólia elforgatása"}},Xs={tooltips:{placeMarker:"Tryk for at placere en markør",firstVertex:"Tryk for at placere det første punkt",continueLine:"Tryk for at fortsætte linjen",finishLine:"Tryk på et eksisterende punkt for at afslutte",finishPoly:"Tryk på det første punkt for at afslutte",finishRect:"Tryk for at afslutte",startCircle:"Tryk for at placere cirklens center",finishCircle:"Tryk for at afslutte cirklen",placeCircleMarker:"Tryk for at placere en cirkelmarkør"},actions:{finish:"Afslut",cancel:"Afbryd",removeLastVertex:"Fjern sidste punkt"},buttonTitles:{drawMarkerButton:"Placer markør",drawPolyButton:"Tegn polygon",drawLineButton:"Tegn linje",drawCircleButton:"Tegn cirkel",drawRectButton:"Tegn firkant",editButton:"Rediger",dragButton:"Træk",cutButton:"Klip",deleteButton:"Fjern",drawCircleMarkerButton:"Tegn cirkelmarkør",snappingButton:"Fastgør trukket markør til andre elementer",pinningButton:"Sammenlæg delte elementer",rotateButton:"Roter laget"}},zn={tooltips:{placeMarker:"Klikk for å plassere punkt",firstVertex:"Klikk for å plassere første punkt",continueLine:"Klikk for å tegne videre",finishLine:"Klikk på et eksisterende punkt for å fullføre",finishPoly:"Klikk første punkt for å fullføre",finishRect:"Klikk for å fullføre",startCircle:"Klikk for å sette sirkel midtpunkt",finishCircle:"Klikk for å fullføre sirkel",placeCircleMarker:"Klikk for å plassere sirkel",placeText:"Klikk for å plassere tekst"},actions:{finish:"Fullfør",cancel:"Kanseller",removeLastVertex:"Fjern forrige punkt"},buttonTitles:{drawMarkerButton:"Tegn punkt",drawPolyButton:"Tegn flate",drawLineButton:"Tegn linje",drawCircleButton:"Tegn sirkel",drawRectButton:"Tegn rektangel",editButton:"Rediger objekter",dragButton:"Dra objekter",cutButton:"Kutt objekter",deleteButton:"Fjern objekter",drawCircleMarkerButton:"Tegn sirkel-punkt",snappingButton:"Fest dratt punkt til andre objekter og punkt",pinningButton:"Pin delte punkter sammen",rotateButton:"Rotér objekter",drawTextButton:"Tegn tekst",scaleButton:"Skalér objekter",autoTracingButton:"Automatisk sporing av linje"},measurements:{totalLength:"Lengde",segmentLength:"Segmentlengde",area:"Område",radius:"Radius",perimeter:"Omriss",height:"Høyde",width:"Bredde",coordinates:"Posisjon",coordinatesMarker:"Posisjonsmarkør"}},rr={tooltips:{placeMarker:"کلیک برای جانمایی نشان",firstVertex:"کلیک برای رسم اولین رأس",continueLine:"کلیک برای ادامه رسم",finishLine:"کلیک روی هر نشان موجود برای پایان",finishPoly:"کلیک روی اولین نشان برای پایان",finishRect:"کلیک برای پایان",startCircle:"کلیک برای رسم مرکز دایره",finishCircle:"کلیک برای پایان رسم دایره",placeCircleMarker:"کلیک برای رسم نشان دایره",placeText:"کلیک برای نوشتن متن"},actions:{finish:"پایان",cancel:"لفو",removeLastVertex:"حذف آخرین رأس"},buttonTitles:{drawMarkerButton:"درج نشان",drawPolyButton:"رسم چندضلعی",drawLineButton:"رسم خط",drawCircleButton:"رسم دایره",drawRectButton:"رسم چهارضلعی",editButton:"ویرایش لایهها",dragButton:"جابجایی لایهها",cutButton:"برش لایهها",deleteButton:"حذف لایهها",drawCircleMarkerButton:"رسم نشان دایره",snappingButton:"نشانگر را به لایهها و رئوس دیگر بکشید",pinningButton:"رئوس مشترک را با هم پین کنید",rotateButton:"چرخش لایه",drawTextButton:"رسم متن",scaleButton:"مقیاسگذاری",autoTracingButton:"ردیاب خودکار"},measurements:{totalLength:"طول",segmentLength:"طول بخش",area:"ناحیه",radius:"شعاع",perimeter:"محیط",height:"ارتفاع",width:"عرض",coordinates:"موقعیت",coordinatesMarker:"موقعیت نشان"}},Ys={tooltips:{placeMarker:"Натисніть, щоб нанести маркер",firstVertex:"Натисніть, щоб нанести першу вершину",continueLine:"Натисніть, щоб продовжити малювати",finishLine:"Натисніть будь-який існуючий маркер для завершення",finishPoly:"Виберіть перший маркер, щоб завершити",finishRect:"Натисніть, щоб завершити",startCircle:"Натисніть, щоб додати центр кола",finishCircle:"Натисніть, щоб завершити коло",placeCircleMarker:"Натисніть, щоб нанести круговий маркер"},actions:{finish:"Завершити",cancel:"Відмінити",removeLastVertex:"Видалити попередню вершину"},buttonTitles:{drawMarkerButton:"Малювати маркер",drawPolyButton:"Малювати полігон",drawLineButton:"Малювати криву",drawCircleButton:"Малювати коло",drawRectButton:"Малювати прямокутник",editButton:"Редагувати шари",dragButton:"Перенести шари",cutButton:"Вирізати шари",deleteButton:"Видалити шари",drawCircleMarkerButton:"Малювати круговий маркер",snappingButton:"Прив’язати перетягнутий маркер до інших шарів та вершин",pinningButton:"Зв'язати спільні вершини разом",rotateButton:"Повернути шар"}},No={tooltips:{placeMarker:"İşaretçi yerleştirmek için tıklayın",firstVertex:"İlk tepe noktasını yerleştirmek için tıklayın",continueLine:"Çizime devam etmek için tıklayın",finishLine:"Bitirmek için mevcut herhangi bir işaretçiyi tıklayın",finishPoly:"Bitirmek için ilk işaretçiyi tıklayın",finishRect:"Bitirmek için tıklayın",startCircle:"Daire merkezine yerleştirmek için tıklayın",finishCircle:"Daireyi bitirmek için tıklayın",placeCircleMarker:"Daire işaretçisi yerleştirmek için tıklayın"},actions:{finish:"Bitir",cancel:"İptal",removeLastVertex:"Son köşeyi kaldır"},buttonTitles:{drawMarkerButton:"Çizim İşaretçisi",drawPolyButton:"Çokgenler çiz",drawLineButton:"Çoklu çizgi çiz",drawCircleButton:"Çember çiz",drawRectButton:"Dikdörtgen çiz",editButton:"Katmanları düzenle",dragButton:"Katmanları sürükle",cutButton:"Katmanları kes",deleteButton:"Katmanları kaldır",drawCircleMarkerButton:"Daire işaretçisi çiz",snappingButton:"Sürüklenen işaretçiyi diğer katmanlara ve köşelere yapıştır",pinningButton:"Paylaşılan köşeleri birbirine sabitle",rotateButton:"Katmanı döndür"}},St={tooltips:{placeMarker:"Kliknutím vytvoříte značku",firstVertex:"Kliknutím vytvoříte první objekt",continueLine:"Kliknutím pokračujte v kreslení",finishLine:"Kliknutí na libovolnou existující značku pro dokončení",finishPoly:"Vyberte první bod pro dokončení",finishRect:"Klikněte pro dokončení",startCircle:"Kliknutím přidejte střed kruhu",finishCircle:"Нажмите, чтобы задать радиус",placeCircleMarker:"Kliknutím nastavte poloměr"},actions:{finish:"Dokončit",cancel:"Zrušit",removeLastVertex:"Zrušit poslední akci"},buttonTitles:{drawMarkerButton:"Přidat značku",drawPolyButton:"Nakreslit polygon",drawLineButton:"Nakreslit křivku",drawCircleButton:"Nakreslit kruh",drawRectButton:"Nakreslit obdélník",editButton:"Upravit vrstvu",dragButton:"Přeneste vrstvu",cutButton:"Vyjmout vrstvu",deleteButton:"Smazat vrstvu",drawCircleMarkerButton:"Přidat kruhovou značku",snappingButton:"Navázat tažnou značku k dalším vrstvám a vrcholům",pinningButton:"Spojit společné body dohromady",rotateButton:"Otočte vrstvu"}},$e={tooltips:{placeMarker:"クリックしてマーカーを配置",firstVertex:"クリックして最初の頂点を配置",continueLine:"クリックして描画を続ける",finishLine:"任意のマーカーをクリックして終了",finishPoly:"最初のマーカーをクリックして終了",finishRect:"クリックして終了",startCircle:"クリックして円の中心を配置",finishCircle:"クリックして円の描画を終了",placeCircleMarker:"クリックして円マーカーを配置",placeText:"クリックしてテキストを配置"},actions:{finish:"終了",cancel:"キャンセル",removeLastVertex:"最後の頂点を削除"},buttonTitles:{drawMarkerButton:"マーカーを描画",drawPolyButton:"ポリゴンを描画",drawLineButton:"折れ線を描画",drawCircleButton:"円を描画",drawRectButton:"矩形を描画",editButton:"レイヤーを編集",dragButton:"レイヤーをドラッグ",cutButton:"レイヤーを切り取り",deleteButton:"レイヤーを削除",drawCircleMarkerButton:"円マーカーを描画",snappingButton:"ドラッグしたマーカーを他のレイヤーや頂点にスナップする",pinningButton:"共有する頂点を同時に動かす",rotateButton:"レイヤーを回転",drawTextButton:"テキストを描画"}},Wt={tooltips:{placeMarker:"Klikkaa asettaaksesi merkin",firstVertex:"Klikkaa asettaakseni ensimmäisen osuuden",continueLine:"Klikkaa jatkaaksesi piirtämistä",finishLine:"Klikkaa olemassa olevaa merkkiä lopettaaksesi",finishPoly:"Klikkaa ensimmäistä merkkiä lopettaaksesi",finishRect:"Klikkaa lopettaaksesi",startCircle:"Klikkaa asettaaksesi ympyrän keskipisteen",finishCircle:"Klikkaa lopettaaksesi ympyrän",placeCircleMarker:"Klikkaa asettaaksesi ympyrämerkin",placeText:"Klikkaa asettaaksesi tekstin"},actions:{finish:"Valmis",cancel:"Peruuta",removeLastVertex:"Poista viimeinen osuus"},buttonTitles:{drawMarkerButton:"Piirrä merkkejä",drawPolyButton:"Piirrä monikulmioita",drawLineButton:"Piirrä viivoja",drawCircleButton:"Piirrä ympyrä",drawRectButton:"Piirrä neliskulmioita",editButton:"Muokkaa",dragButton:"Siirrä",cutButton:"Leikkaa",deleteButton:"Poista",drawCircleMarkerButton:"Piirrä ympyrämerkki",snappingButton:"Kiinnitä siirrettävä merkki toisiin muotoihin",pinningButton:"Kiinnitä jaetut muodot yhteen",rotateButton:"Käännä",drawTextButton:"Piirrä tekstiä"}},or={tooltips:{placeMarker:"마커 위치를 클릭하세요",firstVertex:"첫번째 꼭지점 위치을 클릭하세요",continueLine:"계속 그리려면 클릭하세요",finishLine:"끝내려면 기존 마커를 클릭하세요",finishPoly:"끝내려면 처음 마커를 클릭하세요",finishRect:"끝내려면 클릭하세요",startCircle:"원의 중심이 될 위치를 클릭하세요",finishCircle:"원을 끝내려면 클릭하세요",placeCircleMarker:"원 마커 위치를 클릭하세요",placeText:"텍스트 위치를 클릭하세요"},actions:{finish:"끝내기",cancel:"취소",removeLastVertex:"마지막 꼭지점 제거"},buttonTitles:{drawMarkerButton:"마커 그리기",drawPolyButton:"다각형 그리기",drawLineButton:"다각선 그리기",drawCircleButton:"원 그리기",drawRectButton:"직사각형 그리기",editButton:"레이어 편집하기",dragButton:"레이어 끌기",cutButton:"레이어 자르기",deleteButton:"레이어 제거하기",drawCircleMarkerButton:"원 마커 그리기",snappingButton:"잡아끈 마커를 다른 레이어 및 꼭지점에 들러붙게 하기",pinningButton:"공유 꼭지점을 함께 찍기",rotateButton:"레이어 회전하기",drawTextButton:"텍스트 그리기"}},Js={tooltips:{placeMarker:"Маркерди жайгаштыруу үчүн басыңыз",firstVertex:"Биринчи чокуну жайгаштырууну үчүн басыңыз",continueLine:"Сүрөт тартууну улантуу үчүн басыңыз",finishLine:"Аяктоо үчүн учурдагы маркерди басыңыз",finishPoly:"Бүтүрүү үчүн биринчи маркерди басыңыз",finishRect:"Бүтүрүү үчүн басыңыз",startCircle:"Айлананын борборун жайгаштырууну үчүн басыңыз",finishCircle:"Айлананы бүтүрүү үчүн басыңыз",placeCircleMarker:"Тегерек маркерди жайгаштыруу үчүн басыңыз",placeText:"Текстти жайгаштыруу үчүн басыңыз"},actions:{finish:"Аягы",cancel:"Жок кылуу",removeLastVertex:"Акыркы чокуну өчүрүү"},buttonTitles:{drawMarkerButton:"Маркерди чизуу",drawPolyButton:"Полигон чизуу",drawLineButton:"Полилиния чизуу",drawCircleButton:"Дайынды чизуу",drawRectButton:"Прямоугольник чизуу",editButton:"Слоопту түзөтүү",dragButton:"Слоопту карап сүйлөү",cutButton:"Слооптун башын кесүү",deleteButton:"Слооптун өчүрүү",drawCircleMarkerButton:"Дайынды маркерди чизуу",snappingButton:"Башка слооптордун жана вертекстердин арасына чекилдөө",pinningButton:"Бөлүшкөн вертекстерди бирге тутуштуруу",rotateButton:"Слооптун өзгөртүү",drawTextButton:"Текст чизуу",scaleButton:"Слооптун өлчөмүн өзгөртүү",autoTracingButton:"Автоматтык тизмеги чизуу"},measurements:{totalLength:"Узундук",segmentLength:"Сегмент узундугу",area:"Аймак",radius:"Радиус",perimeter:"Периметр",height:"Диаметр",width:"Кенчилик",coordinates:"Координаттар",coordinatesMarker:"Маркердин координаттары"}},Qs=ji,_i={en:ne,de:Hs,it:Rn,id:Ne,ro:zo,ru:Gn,es:bi,nl:re,fr:wi,pt:Qs,pt_br:Vs,pt_pt:ji,zh:on,zh_tw:hn,pl:$s,sv:Ws,el:Fn,hu:Ks,da:Xs,no:zn,fa:rr,ua:Ys,tr:No,cz:St,ja:$e,fi:Wt,ko:or,ky:Js},Ci={_globalEditModeEnabled:!1,enableGlobalEditMode(i){let s={...i};this._globalEditModeEnabled=!0,this.Toolbar.toggleButton("editMode",this.globalEditModeEnabled()),L.PM.Utils.findLayers(this.map).forEach(o=>{this._isRelevantForEdit(o)&&o.pm.enable(s)}),this.throttledReInitEdit||(this.throttledReInitEdit=L.Util.throttle(this.handleLayerAdditionInGlobalEditMode,100,this)),this._addedLayersEdit={},this.map.on("layeradd",this._layerAddedEdit,this),this.map.on("layeradd",this.throttledReInitEdit,this),this._fireGlobalEditModeToggled(!0)},disableGlobalEditMode(){this._globalEditModeEnabled=!1,L.PM.Utils.findLayers(this.map).forEach(i=>{i.pm.disable()}),this.map.off("layeradd",this._layerAddedEdit,this),this.map.off("layeradd",this.throttledReInitEdit,this),this.Toolbar.toggleButton("editMode",this.globalEditModeEnabled()),this._fireGlobalEditModeToggled(!1)},globalEditEnabled(){return this.globalEditModeEnabled()},globalEditModeEnabled(){return this._globalEditModeEnabled},toggleGlobalEditMode(i=this.globalOptions){this.globalEditModeEnabled()?this.disableGlobalEditMode():this.enableGlobalEditMode(i)},handleLayerAdditionInGlobalEditMode(){let i=this._addedLayersEdit;if(this._addedLayersEdit={},this.globalEditModeEnabled())for(let s in i){let o=i[s];this._isRelevantForEdit(o)&&o.pm.enable({...this.globalOptions})}},_layerAddedEdit({layer:i}){this._addedLayersEdit[L.stamp(i)]=i},_isRelevantForEdit(i){return i.pm&&!(i instanceof L.LayerGroup)&&(!L.PM.optIn&&!i.options.pmIgnore||L.PM.optIn&&i.options.pmIgnore===!1)&&!i._pmTempLayer&&i.pm.options.allowEditing}},ta=Ci,ln={_globalDragModeEnabled:!1,enableGlobalDragMode(){let i=L.PM.Utils.findLayers(this.map);this._globalDragModeEnabled=!0,this._addedLayersDrag={},i.forEach(s=>{this._isRelevantForDrag(s)&&s.pm.enableLayerDrag()}),this.throttledReInitDrag||(this.throttledReInitDrag=L.Util.throttle(this.reinitGlobalDragMode,100,this)),this.map.on("layeradd",this._layerAddedDrag,this),this.map.on("layeradd",this.throttledReInitDrag,this),this.Toolbar.toggleButton("dragMode",this.globalDragModeEnabled()),this._fireGlobalDragModeToggled(!0)},disableGlobalDragMode(){let i=L.PM.Utils.findLayers(this.map);this._globalDragModeEnabled=!1,i.forEach(s=>{s.pm.disableLayerDrag()}),this.map.off("layeradd",this._layerAddedDrag,this),this.map.off("layeradd",this.throttledReInitDrag,this),this.Toolbar.toggleButton("dragMode",this.globalDragModeEnabled()),this._fireGlobalDragModeToggled(!1)},globalDragModeEnabled(){return!!this._globalDragModeEnabled},toggleGlobalDragMode(){this.globalDragModeEnabled()?this.disableGlobalDragMode():this.enableGlobalDragMode()},reinitGlobalDragMode(){let i=this._addedLayersDrag;if(this._addedLayersDrag={},this.globalDragModeEnabled())for(let s in i){let o=i[s];this._isRelevantForDrag(o)&&o.pm.enableLayerDrag()}},_layerAddedDrag({layer:i}){this._addedLayersDrag[L.stamp(i)]=i},_isRelevantForDrag(i){return i.pm&&!(i instanceof L.LayerGroup)&&(!L.PM.optIn&&!i.options.pmIgnore||L.PM.optIn&&i.options.pmIgnore===!1)&&!i._pmTempLayer&&i.pm.options.draggable}},ce=ln,Ei={_globalRemovalModeEnabled:!1,enableGlobalRemovalMode(){this._globalRemovalModeEnabled=!0,this.map.eachLayer(i=>{this._isRelevantForRemoval(i)&&(i.pm.enabled()&&i.pm.disable(),i.on("click",this.removeLayer,this))}),this.throttledReInitRemoval||(this.throttledReInitRemoval=L.Util.throttle(this.handleLayerAdditionInGlobalRemovalMode,100,this)),this._addedLayersRemoval={},this.map.on("layeradd",this._layerAddedRemoval,this),this.map.on("layeradd",this.throttledReInitRemoval,this),this.Toolbar.toggleButton("removalMode",this.globalRemovalModeEnabled()),this._fireGlobalRemovalModeToggled(!0)},disableGlobalRemovalMode(){this._globalRemovalModeEnabled=!1,this.map.eachLayer(i=>{i.off("click",this.removeLayer,this)}),this.map.off("layeradd",this._layerAddedRemoval,this),this.map.off("layeradd",this.throttledReInitRemoval,this),this.Toolbar.toggleButton("removalMode",this.globalRemovalModeEnabled()),this._fireGlobalRemovalModeToggled(!1)},globalRemovalEnabled(){return this.globalRemovalModeEnabled()},globalRemovalModeEnabled(){return!!this._globalRemovalModeEnabled},toggleGlobalRemovalMode(){this.globalRemovalModeEnabled()?this.disableGlobalRemovalMode():this.enableGlobalRemovalMode()},removeLayer(i){let s=i.target;this._isRelevantForRemoval(s)&&!s.pm.dragging()&&(s.removeFrom(this.map.pm._getContainingLayer()),s.remove(),s instanceof L.LayerGroup?(this._fireRemoveLayerGroup(s),this._fireRemoveLayerGroup(this.map,s)):(s.pm._fireRemove(s),s.pm._fireRemove(this.map,s)))},_isRelevantForRemoval(i){return i.pm&&!(i instanceof L.LayerGroup)&&(!L.PM.optIn&&!i.options.pmIgnore||L.PM.optIn&&i.options.pmIgnore===!1)&&!i._pmTempLayer&&i.pm.options.allowRemoval},handleLayerAdditionInGlobalRemovalMode(){let i=this._addedLayersRemoval;if(this._addedLayersRemoval={},this.globalRemovalModeEnabled())for(let s in i){let o=i[s];this._isRelevantForRemoval(o)&&(o.pm.enabled()&&o.pm.disable(),o.on("click",this.removeLayer,this))}},_layerAddedRemoval({layer:i}){this._addedLayersRemoval[L.stamp(i)]=i}},hr=Ei,lr={_globalRotateModeEnabled:!1,enableGlobalRotateMode(){this._globalRotateModeEnabled=!0,L.PM.Utils.findLayers(this.map).filter(i=>i instanceof L.Polyline).forEach(i=>{this._isRelevantForRotate(i)&&i.pm.enableRotate()}),this.throttledReInitRotate||(this.throttledReInitRotate=L.Util.throttle(this.handleLayerAdditionInGlobalRotateMode,100,this)),this._addedLayersRotate={},this.map.on("layeradd",this._layerAddedRotate,this),this.map.on("layeradd",this.throttledReInitRotate,this),this.Toolbar.toggleButton("rotateMode",this.globalRotateModeEnabled()),this._fireGlobalRotateModeToggled()},disableGlobalRotateMode(){this._globalRotateModeEnabled=!1,L.PM.Utils.findLayers(this.map).filter(i=>i instanceof L.Polyline).forEach(i=>{i.pm.disableRotate()}),this.map.off("layeradd",this._layerAddedRotate,this),this.map.off("layeradd",this.throttledReInitRotate,this),this.Toolbar.toggleButton("rotateMode",this.globalRotateModeEnabled()),this._fireGlobalRotateModeToggled()},globalRotateModeEnabled(){return!!this._globalRotateModeEnabled},toggleGlobalRotateMode(){this.globalRotateModeEnabled()?this.disableGlobalRotateMode():this.enableGlobalRotateMode()},_isRelevantForRotate(i){return i.pm&&i instanceof L.Polyline&&!(i instanceof L.LayerGroup)&&(!L.PM.optIn&&!i.options.pmIgnore||L.PM.optIn&&i.options.pmIgnore===!1)&&!i._pmTempLayer&&i.pm.options.allowRotation},handleLayerAdditionInGlobalRotateMode(){let i=this._addedLayersRotate;if(this._addedLayersRotate={},this.globalRotateModeEnabled())for(let s in i){let o=i[s];this._isRelevantForRemoval(o)&&o.pm.enableRotate()}},_layerAddedRotate({layer:i}){this._addedLayersRotate[L.stamp(i)]=i}},Uo=lr,ur=A(On()),ea={_fireDrawStart(i="Draw",s={}){this.__fire(this._map,"pm:drawstart",{shape:this._shape,workingLayer:this._layer},i,s)},_fireDrawEnd(i="Draw",s={}){this.__fire(this._map,"pm:drawend",{shape:this._shape},i,s)},_fireCreate(i,s="Draw",o={}){this.__fire(this._map,"pm:create",{shape:this._shape,marker:i,layer:i},s,o)},_fireCenterPlaced(i="Draw",s={}){let o=i==="Draw"?this._layer:void 0,h=i!=="Draw"?this._layer:void 0;this.__fire(this._layer,"pm:centerplaced",{shape:this._shape,workingLayer:o,layer:h,latlng:this._layer.getLatLng()},i,s)},_fireCut(i,s,o,h="Draw",d={}){this.__fire(i,"pm:cut",{shape:this._shape,layer:s,originalLayer:o},h,d)},_fireEdit(i=this._layer,s="Edit",o={}){this.__fire(i,"pm:edit",{layer:this._layer,shape:this.getShape()},s,o)},_fireEnable(i="Edit",s={}){this.__fire(this._layer,"pm:enable",{layer:this._layer,shape:this.getShape()},i,s)},_fireDisable(i="Edit",s={}){this.__fire(this._layer,"pm:disable",{layer:this._layer,shape:this.getShape()},i,s)},_fireUpdate(i="Edit",s={}){this.__fire(this._layer,"pm:update",{layer:this._layer,shape:this.getShape()},i,s)},_fireMarkerDragStart(i,s=void 0,o="Edit",h={}){this.__fire(this._layer,"pm:markerdragstart",{layer:this._layer,markerEvent:i,shape:this.getShape(),indexPath:s},o,h)},_fireMarkerDrag(i,s=void 0,o="Edit",h={}){this.__fire(this._layer,"pm:markerdrag",{layer:this._layer,markerEvent:i,shape:this.getShape(),indexPath:s},o,h)},_fireMarkerDragEnd(i,s=void 0,o=void 0,h="Edit",d={}){this.__fire(this._layer,"pm:markerdragend",{layer:this._layer,markerEvent:i,shape:this.getShape(),indexPath:s,intersectionReset:o},h,d)},_fireDragStart(i="Edit",s={}){this.__fire(this._layer,"pm:dragstart",{layer:this._layer,shape:this.getShape()},i,s)},_fireDrag(i,s="Edit",o={}){this.__fire(this._layer,"pm:drag",{...i,shape:this.getShape()},s,o)},_fireDragEnd(i="Edit",s={}){this.__fire(this._layer,"pm:dragend",{layer:this._layer,shape:this.getShape()},i,s)},_fireDragEnable(i="Edit",s={}){this.__fire(this._layer,"pm:dragenable",{layer:this._layer,shape:this.getShape()},i,s)},_fireDragDisable(i="Edit",s={}){this.__fire(this._layer,"pm:dragdisable",{layer:this._layer,shape:this.getShape()},i,s)},_fireRemove(i,s=i,o="Edit",h={}){this.__fire(i,"pm:remove",{layer:s,shape:this.getShape()},o,h)},_fireVertexAdded(i,s,o,h="Edit",d={}){this.__fire(this._layer,"pm:vertexadded",{layer:this._layer,workingLayer:this._layer,marker:i,indexPath:s,latlng:o,shape:this.getShape()},h,d)},_fireVertexRemoved(i,s,o="Edit",h={}){this.__fire(this._layer,"pm:vertexremoved",{layer:this._layer,marker:i,indexPath:s,shape:this.getShape()},o,h)},_fireVertexClick(i,s,o="Edit",h={}){this.__fire(this._layer,"pm:vertexclick",{layer:this._layer,markerEvent:i,indexPath:s,shape:this.getShape()},o,h)},_fireIntersect(i,s=this._layer,o="Edit",h={}){this.__fire(s,"pm:intersect",{layer:this._layer,intersection:i,shape:this.getShape()},o,h)},_fireLayerReset(i,s,o="Edit",h={}){this.__fire(this._layer,"pm:layerreset",{layer:this._layer,markerEvent:i,indexPath:s,shape:this.getShape()},o,h)},_fireChange(i,s="Edit",o={}){this.__fire(this._layer,"pm:change",{layer:this._layer,latlngs:i,shape:this.getShape()},s,o)},_fireTextChange(i,s="Edit",o={}){this.__fire(this._layer,"pm:textchange",{layer:this._layer,text:i,shape:this.getShape()},s,o)},_fireTextFocus(i="Edit",s={}){this.__fire(this._layer,"pm:textfocus",{layer:this._layer,shape:this.getShape()},i,s)},_fireTextBlur(i="Edit",s={}){this.__fire(this._layer,"pm:textblur",{layer:this._layer,shape:this.getShape()},i,s)},_fireSnapDrag(i,s,o="Snapping",h={}){this.__fire(i,"pm:snapdrag",s,o,h)},_fireSnap(i,s,o="Snapping",h={}){this.__fire(i,"pm:snap",s,o,h)},_fireUnsnap(i,s,o="Snapping",h={}){this.__fire(i,"pm:unsnap",s,o,h)},_fireRotationEnable(i,s,o="Rotation",h={}){this.__fire(i,"pm:rotateenable",{layer:this._layer,helpLayer:this._rotatePoly,shape:this.getShape()},o,h)},_fireRotationDisable(i,s="Rotation",o={}){this.__fire(i,"pm:rotatedisable",{layer:this._layer,shape:this.getShape()},s,o)},_fireRotationStart(i,s,o="Rotation",h={}){this.__fire(i,"pm:rotatestart",{layer:this._rotationLayer,helpLayer:this._layer,startAngle:this._startAngle,originLatLngs:s},o,h)},_fireRotation(i,s,o,h=this._rotationLayer,d="Rotation",m={}){this.__fire(i,"pm:rotate",{layer:h,helpLayer:this._layer,startAngle:this._startAngle,angle:h.pm.getAngle(),angleDiff:s,oldLatLngs:o,newLatLngs:h.getLatLngs()},d,m)},_fireRotationEnd(i,s,o,h="Rotation",d={}){this.__fire(i,"pm:rotateend",{layer:this._rotationLayer,helpLayer:this._layer,startAngle:s,angle:this._rotationLayer.pm.getAngle(),originLatLngs:o,newLatLngs:this._rotationLayer.getLatLngs()},h,d)},_fireActionClick(i,s,o,h="Toolbar",d={}){this.__fire(this._map,"pm:actionclick",{text:i.text,action:i,btnName:s,button:o},h,d)},_fireButtonClick(i,s,o="Toolbar",h={}){this.__fire(this._map,"pm:buttonclick",{btnName:i,button:s},o,h)},_fireLangChange(i,s,o,h,d="Global",m={}){this.__fire(this.map,"pm:langchange",{oldLang:i,activeLang:s,fallback:o,translations:h},d,m)},_fireGlobalDragModeToggled(i,s="Global",o={}){this.__fire(this.map,"pm:globaldragmodetoggled",{enabled:i,map:this.map},s,o)},_fireGlobalEditModeToggled(i,s="Global",o={}){this.__fire(this.map,"pm:globaleditmodetoggled",{enabled:i,map:this.map},s,o)},_fireGlobalRemovalModeToggled(i,s="Global",o={}){this.__fire(this.map,"pm:globalremovalmodetoggled",{enabled:i,map:this.map},s,o)},_fireGlobalCutModeToggled(i="Global",s={}){this.__fire(this._map,"pm:globalcutmodetoggled",{enabled:!!this._enabled,map:this._map},i,s)},_fireGlobalDrawModeToggled(i="Global",s={}){this.__fire(this._map,"pm:globaldrawmodetoggled",{enabled:this._enabled,shape:this._shape,map:this._map},i,s)},_fireGlobalRotateModeToggled(i="Global",s={}){this.__fire(this.map,"pm:globalrotatemodetoggled",{enabled:this.globalRotateModeEnabled(),map:this.map},i,s)},_fireRemoveLayerGroup(i,s=i,o="Edit",h={}){this.__fire(i,"pm:remove",{layer:s,shape:void 0},o,h)},_fireKeyeventEvent(i,s,o,h="Global",d={}){this.__fire(this.map,"pm:keyevent",{event:i,eventType:s,focusOn:o},h,d)},__fire(i,s,o,h,d={}){o=(0,ur.default)(o,d,{source:h}),L.PM.Utils._fireEvent(i,s,o)}},Nn=ea,cr=()=>({_lastEvents:{keydown:void 0,keyup:void 0,current:void 0},_initKeyListener(i){this.map=i,L.DomEvent.on(document,"keydown keyup",this._onKeyListener,this),L.DomEvent.on(window,"blur",this._onBlur,this),i.once("unload",this._unbindKeyListenerEvents,this)},_unbindKeyListenerEvents(){L.DomEvent.off(document,"keydown keyup",this._onKeyListener,this),L.DomEvent.off(window,"blur",this._onBlur,this)},_onKeyListener(i){let s="document";this.map.getContainer().contains(i.target)&&(s="map");let o={event:i,eventType:i.type,focusOn:s};this._lastEvents[i.type]=o,this._lastEvents.current=o,this.map.pm._fireKeyeventEvent(i,i.type,s)},_onBlur(i){i.altKey=!1;let s={event:i,eventType:i.type,focusOn:"document"};this._lastEvents[i.type]=s,this._lastEvents.current=s},getLastKeyEvent(i="current"){return this._lastEvents[i]},isShiftKeyPressed(){var i;return(i=this._lastEvents.current)==null?void 0:i.event.shiftKey},isAltKeyPressed(){var i;return(i=this._lastEvents.current)==null?void 0:i.event.altKey},isCtrlKeyPressed(){var i;return(i=this._lastEvents.current)==null?void 0:i.event.ctrlKey},isMetaKeyPressed(){var i;return(i=this._lastEvents.current)==null?void 0:i.event.metaKey},getPressedKey(){var i;return(i=this._lastEvents.current)==null?void 0:i.event.key}}),Gt=cr,dr=A(pi());function Bt(i){let s=L.PM.activeLang;return(0,dr.default)(_i[s],i)||(0,dr.default)(_i.en,i)||i}function Pi(i){for(let s=0;s<i.length;s+=1){let o=i[s];if(Array.isArray(o)){if(Pi(o))return!0}else if(o!=null&&o!=="")return!0}return!1}function un(i){return i.reduce((s,o)=>{if(o.length!==0){let h=Array.isArray(o)?un(o):o;Array.isArray(h)?h.length!==0&&s.push(h):s.push(h)}return s},[])}function Zo(i,s,o){let h={a:L.CRS.Earth.R,b:63567523142e-4,f:.0033528106647474805},{a:d,b:m,f:y}=h,v=i.lng,w=i.lat,P=o,N=Math.PI,F=s*N/180,tt=Math.sin(F),it=Math.cos(F),lt=(1-y)*Math.tan(w*N/180),ft=1/Math.sqrt(1+lt*lt),vt=lt*ft,Ft=Math.atan2(lt,it),z=ft*tt,q=1-z*z,W=q*(d*d-m*m)/(m*m),nt=1+W/16384*(4096+W*(-768+W*(320-175*W))),X=W/1024*(256+W*(-128+W*(74-47*W))),et=P/(m*nt),E=2*Math.PI,S,O,D;for(;Math.abs(et-E)>1e-12;){S=Math.cos(2*Ft+et),O=Math.sin(et),D=Math.cos(et);let ot=X*O*(S+X/4*(D*(-1+2*S*S)-X/6*S*(-3+4*O*O)*(-3+4*S*S)));E=et,et=P/(m*nt)+ot}let I=vt*O-ft*D*it,R=Math.atan2(vt*D+ft*O*it,(1-y)*Math.sqrt(z*z+I*I)),V=Math.atan2(O*tt,ft*D-vt*O*it),H=y/16*q*(4+y*(4-3*q)),$=V-(1-H)*y*z*(et+H*O*(S+H*D*(-1+2*S*S))),Q=v+$*180/N,J=R*180/N;return L.latLng(Q,J)}function Un(i,s,o,h,d=!0){let m,y,v,w=[];for(let P=0;P<o;P+=1){if(d)m=P*360/o+h,y=Zo(i,m,s),v=L.latLng(y.lng,y.lat);else{let N=i.lat+Math.cos(2*P*Math.PI/o)*s,F=i.lng+Math.sin(2*P*Math.PI/o)*s;v=L.latLng(N,F)}w.push(v)}return w}function jo(i,s,o){s=(s+360)%360;let h=Math.PI/180,d=180/Math.PI,{R:m}=L.CRS.Earth,y=i.lng*h,v=i.lat*h,w=s*h,P=Math.sin(v),N=Math.cos(v),F=Math.cos(o/m),tt=Math.sin(o/m),it=Math.asin(P*F+N*tt*Math.cos(w)),lt=y+Math.atan2(Math.sin(w)*tt*N,F-P*Math.sin(it));lt*=d;let ft=lt-360,vt=lt<-180?lt+360:lt;return lt=lt>180?ft:vt,L.latLng([it*d,lt])}function Zn(i,s,o){let h=i.latLngToContainerPoint(s),d=i.latLngToContainerPoint(o),m=Math.atan2(d.y-h.y,d.x-h.x)*180/Math.PI+90;return m+=m<0?360:0,m}function jn(i,s,o,h){let d=Zn(i,s,o);return jo(s,d,h)}function qo(i,s,o="asc"){if(!s||Object.keys(s).length===0)return(w,P)=>w-P;let h=Object.keys(s),d,m=h.length-1,y={};for(;m>=0;)d=h[m],y[d.toLowerCase()]=s[d],m-=1;function v(w){if(w instanceof L.Marker)return"Marker";if(w instanceof L.Circle)return"Circle";if(w instanceof L.CircleMarker)return"CircleMarker";if(w instanceof L.Rectangle)return"Rectangle";if(w instanceof L.Polygon)return"Polygon";if(w instanceof L.Polyline)return"Line"}return(w,P)=>{let N,F;if(N=v(w.layer).toLowerCase(),F=v(P.layer).toLowerCase(),!N||!F)return 0;let tt=N in y?y[N]:Number.MAX_SAFE_INTEGER,it=F in y?y[F]:Number.MAX_SAFE_INTEGER,lt=0;return tt<it?lt=-1:tt>it&&(lt=1),o==="desc"?lt*-1:lt}}function We(i,s=i.getLatLngs()){return i instanceof L.Polygon?L.polygon(s).getLatLngs():L.polyline(s).getLatLngs()}function fr(i,s){var o,h,d,m;if((h=(o=s.options.crs)==null?void 0:o.projection)!=null&&h.MAX_LATITUDE){let y=(m=(d=s.options.crs)==null?void 0:d.projection)==null?void 0:m.MAX_LATITUDE;i.lat=Math.max(Math.min(y,i.lat),-y)}return i}function ve(i){return i.options.renderer||i._map&&(i._map._getPaneRenderer(i.options.pane)||i._map.options.renderer||i._map._renderer)||i._renderer}var Ho=L.Class.extend({includes:[ta,ce,hr,Uo,Nn],initialize(i){this.map=i,this.Draw=new L.PM.Draw(i),this.Toolbar=new L.PM.Toolbar(i),this.Keyboard=Gt(),this.globalOptions={snappable:!0,layerGroup:void 0,snappingOrder:["Marker","CircleMarker","Circle","Line","Polygon","Rectangle"],panes:{vertexPane:"markerPane",layerPane:"overlayPane",markerPane:"markerPane"},draggable:!0},this.Keyboard._initKeyListener(i)},setLang(i="en",s,o="en"){if(i=i.trim().toLowerCase(),!/^[a-z]{2}$/.test(i)){let d=i.replace(/[-_\s]/g,"-").replace(/^(\w{2})$/,"$1-").match(/([a-z]{2})-?([a-z]{2})?/);if(d){let m=[`${d[1]}_${d[2]}`,`${d[1]}`];for(let y of m)if(_i[y]){i=y;break}}}let h=L.PM.activeLang;s&&(_i[i]=(0,Tt.default)(_i[o],s)),L.PM.activeLang=i,this.map.pm.Toolbar.reinit(),this._fireLangChange(h,i,o,_i[i])},addControls(i){this.Toolbar.addControls(i)},removeControls(){this.Toolbar.removeControls()},toggleControls(){this.Toolbar.toggleControls()},controlsVisible(){return this.Toolbar.isVisible},enableDraw(i="Polygon",s){i==="Poly"&&(i="Polygon"),this.Draw.enable(i,s)},disableDraw(i="Polygon"){i==="Poly"&&(i="Polygon"),this.Draw.disable(i)},setPathOptions(i,s={}){let o=s.ignoreShapes||[],h=s.merge||!1;this.map.pm.Draw.shapes.forEach(d=>{o.indexOf(d)===-1&&this.map.pm.Draw[d].setPathOptions(i,h)})},getGlobalOptions(){return this.globalOptions},setGlobalOptions(i){let s=(0,Tt.default)(this.globalOptions,i);s.editable&&(s.resizeableCircleMarker=s.editable,delete s.editable);let o=!1;this.map.pm.Draw.CircleMarker.enabled()&&!!this.map.pm.Draw.CircleMarker.options.resizeableCircleMarker!=!!s.resizeableCircleMarker&&(this.map.pm.Draw.CircleMarker.disable(),o=!0);let h=!1;this.map.pm.Draw.Circle.enabled()&&!!this.map.pm.Draw.Circle.options.resizeableCircle!=!!s.resizeableCircle&&(this.map.pm.Draw.Circle.disable(),h=!0),this.map.pm.Draw.shapes.forEach(d=>{this.map.pm.Draw[d].setOptions(s)}),o&&this.map.pm.Draw.CircleMarker.enable(),h&&this.map.pm.Draw.Circle.enable(),L.PM.Utils.findLayers(this.map).forEach(d=>{d.pm.setOptions(s)}),this.map.fire("pm:globaloptionschanged"),this.globalOptions=s,this.applyGlobalOptions()},applyGlobalOptions(){L.PM.Utils.findLayers(this.map).forEach(i=>{i.pm.enabled()&&i.pm.applyOptions()})},globalDrawModeEnabled(){return!!this.Draw.getActiveShape()},globalCutModeEnabled(){return!!this.Draw.Cut.enabled()},enableGlobalCutMode(i){return this.Draw.Cut.enable(i)},toggleGlobalCutMode(i){return this.Draw.Cut.toggle(i)},disableGlobalCutMode(){return this.Draw.Cut.disable()},getGeomanLayers(i=!1){let s=L.PM.Utils.findLayers(this.map);if(!i)return s;let o=L.featureGroup();return o._pmTempLayer=!0,s.forEach(h=>{o.addLayer(h)}),o},getGeomanDrawLayers(i=!1){let s=L.PM.Utils.findLayers(this.map).filter(h=>h._drawnByGeoman===!0);if(!i)return s;let o=L.featureGroup();return o._pmTempLayer=!0,s.forEach(h=>{o.addLayer(h)}),o},_getContainingLayer(){return this.globalOptions.layerGroup&&this.globalOptions.layerGroup instanceof L.LayerGroup?this.globalOptions.layerGroup:this.map},_isCRSSimple(){return this.map.options.crs===L.CRS.Simple},_touchEventCounter:0,_addTouchEvents(i){this._touchEventCounter===0&&(L.DomEvent.on(i,"touchmove",this._canvasTouchMove,this),L.DomEvent.on(i,"touchstart touchend touchcancel",this._canvasTouchClick,this)),this._touchEventCounter+=1},_removeTouchEvents(i){this._touchEventCounter===1&&(L.DomEvent.off(i,"touchmove",this._canvasTouchMove,this),L.DomEvent.off(i,"touchstart touchend touchcancel",this._canvasTouchClick,this)),this._touchEventCounter=this._touchEventCounter<=1?0:this._touchEventCounter-1},_canvasTouchMove(i){ve(this.map)._onMouseMove(this._createMouseEvent("mousemove",i))},_canvasTouchClick(i){let s="";i.type==="touchstart"||i.type==="pointerdown"?s="mousedown":(i.type==="touchend"||i.type==="pointerup"||i.type==="touchcancel"||i.type==="pointercancel")&&(s="mouseup"),s&&ve(this.map)._onClick(this._createMouseEvent(s,i))},_createMouseEvent(i,s){let o,h=s.touches[0]||s.changedTouches[0];try{o=new MouseEvent(i,{bubbles:s.bubbles,cancelable:s.cancelable,view:s.view,detail:h.detail,screenX:h.screenX,screenY:h.screenY,clientX:h.clientX,clientY:h.clientY,ctrlKey:s.ctrlKey,altKey:s.altKey,shiftKey:s.shiftKey,metaKey:s.metaKey,button:s.button,relatedTarget:s.relatedTarget})}catch{o=document.createEvent("MouseEvents"),o.initMouseEvent(i,s.bubbles,s.cancelable,s.view,h.detail,h.screenX,h.screenY,h.clientX,h.clientY,s.ctrlKey,s.altKey,s.shiftKey,s.metaKey,s.button,s.relatedTarget)}return o}}),pr=Ho,mi=L.Control.extend({includes:[Nn],options:{position:"topleft",disableByOtherButtons:!0},initialize(i){this._button=L.Util.extend({},this.options,i)},onAdd(i){return this._map=i,this._map.pm.Toolbar.options.oneBlock?this._container=this._map.pm.Toolbar._createContainer(this.options.position):this._button.tool==="edit"?this._container=this._map.pm.Toolbar.editContainer:this._button.tool==="options"?this._container=this._map.pm.Toolbar.optionsContainer:this._button.tool==="custom"?this._container=this._map.pm.Toolbar.customContainer:this._container=this._map.pm.Toolbar.drawContainer,this._renderButton(),this._container},_renderButton(){let i=this.buttonsDomNode;this.buttonsDomNode=this._makeButton(this._button),i?i.replaceWith(this.buttonsDomNode):this._container.appendChild(this.buttonsDomNode)},onRemove(){return this.buttonsDomNode.remove(),this._container},getText(){return this._button.text},getIconUrl(){return this._button.iconUrl},destroy(){this._button={},this._update()},toggle(i){return typeof i=="boolean"?this._button.toggleStatus=i:this._button.toggleStatus=!this._button.toggleStatus,this._applyStyleClasses(),this._updateActiveAction(this._button),this._button.toggleStatus},toggled(){return this._button.toggleStatus},onCreate(){this.toggle(!1)},disable(){this.toggle(!1),this._button.disabled=!0,this._updateDisabled()},enable(){this._button.disabled=!1,this._updateDisabled(),this._updateActiveAction(this._button)},_triggerClick(i){i&&i.preventDefault(),!this._button.disabled&&(this._button.onClick(i,{button:this,event:i}),this._clicked(i),this._button.afterClick(i,{button:this,event:i}))},_makeButton(i){let s=this.options.position.indexOf("right")>-1?"pos-right":"",o=L.DomUtil.create("div",`button-container ${s}`,this._container);i.title&&o.setAttribute("title",i.title);let h=L.DomUtil.create("a","leaflet-buttons-control-button",o);h.setAttribute("role","button"),h.setAttribute("tabindex","0"),h.href="#";let d=L.DomUtil.create("div",`leaflet-pm-actions-container ${s}`,o),m=i.actions,y={cancel:{text:Bt("actions.cancel"),title:Bt("actions.cancel"),onClick(){this._triggerClick()}},finishMode:{text:Bt("actions.finish"),title:Bt("actions.finish"),onClick(){this._triggerClick()}},removeLastVertex:{text:Bt("actions.removeLastVertex"),title:Bt("actions.removeLastVertex"),onClick(){this._map.pm.Draw[i.jsClass]._removeLastVertex()}},finish:{text:Bt("actions.finish"),title:Bt("actions.finish"),onClick(w){this._map.pm.Draw[i.jsClass]._finishShape(w)}}};i._preparedActions=m.map(w=>{let P=typeof w=="string"?w:w.name,N;if(y[P])N=y[P];else if(w.text)N=w;else return N;let F=L.DomUtil.create("a",`leaflet-pm-action ${s} action-${P}`,d);if(F.setAttribute("role","button"),F.setAttribute("tabindex","0"),F.href="#",N.title&&(F.title=N.title),F.innerHTML=N.text,L.DomEvent.disableClickPropagation(F),L.DomEvent.on(F,"click",L.DomEvent.stop),N._node=F,!i.disabled&&N.onClick){let tt=it=>{it.preventDefault();let lt="",{buttons:ft}=this._map.pm.Toolbar;for(let vt in ft)if(ft[vt]._button===i){lt=vt;break}this._fireActionClick(N,lt,i)};L.DomEvent.addListener(F,"click",tt,this),L.DomEvent.addListener(F,"click",N.onClick,this),L.DomEvent.addListener(F,"click",()=>this._updateActiveAction(i))}return N}),this._updateActiveAction(i),i.toggleStatus&&L.DomUtil.addClass(o,"active");let v=L.DomUtil.create("div","control-icon",h);return i.iconUrl&&v.setAttribute("src",i.iconUrl),i.className&&L.DomUtil.addClass(v,i.className),L.DomEvent.disableClickPropagation(h),L.DomEvent.on(h,"click",L.DomEvent.stop),i.disabled||(L.DomEvent.addListener(h,"click",this._onBtnClick,this),L.DomEvent.addListener(h,"click",this._triggerClick,this)),i.disabled&&(L.DomUtil.addClass(h,"pm-disabled"),h.setAttribute("aria-disabled","true")),o},_applyStyleClasses(){this._container&&(!this._button.toggleStatus||this._button.cssToggle===!1?(L.DomUtil.removeClass(this.buttonsDomNode,"active"),L.DomUtil.removeClass(this._container,"activeChild")):(L.DomUtil.addClass(this.buttonsDomNode,"active"),L.DomUtil.addClass(this._container,"activeChild")))},_onBtnClick(){if(this._button.disabled)return;this._button.disableOtherButtons&&this._map.pm.Toolbar.triggerClickOnToggledButtons(this);let i="",{buttons:s}=this._map.pm.Toolbar;for(let o in s)if(s[o]._button===this._button){i=o;break}this._fireButtonClick(i,this._button)},_clicked(){this._button.doToggle&&this.toggle()},_updateDisabled(){if(!this._container)return;let i="pm-disabled",s=this.buttonsDomNode.children[0];this._button.disabled?(L.DomUtil.addClass(s,i),s.setAttribute("aria-disabled","true")):(L.DomUtil.removeClass(s,i),s.setAttribute("aria-disabled","false"))},_updateActiveAction(i){var s;(s=i._preparedActions)==null||s.forEach(o=>{o!=null&&o._node&&(o.isActive&&o.isActive.call(this)?L.DomUtil.addClass(o._node,"active-action"):L.DomUtil.removeClass(o._node,"active-action"))})}}),_r=mi;L.Control.PMButton=_r;var mr=L.Class.extend({options:{drawMarker:!0,drawRectangle:!0,drawPolyline:!0,drawPolygon:!0,drawCircle:!0,drawCircleMarker:!0,drawText:!0,editMode:!0,dragMode:!0,cutPolygon:!0,removalMode:!0,rotateMode:!0,snappingOption:!0,drawControls:!0,editControls:!0,optionsControls:!0,customControls:!0,oneBlock:!1,position:"topleft",positions:{draw:"",edit:"",options:"",custom:""}},customButtons:[],initialize(i){this.customButtons=[],this.options.positions={draw:"",edit:"",options:"",custom:""},this.init(i)},reinit(){let i=this.isVisible;this.removeControls(),this._defineButtons(),i&&this.addControls()},init(i){this.map=i,this.buttons={},this.isVisible=!1,this.drawContainer=L.DomUtil.create("div","leaflet-pm-toolbar leaflet-pm-draw leaflet-bar leaflet-control"),this.editContainer=L.DomUtil.create("div","leaflet-pm-toolbar leaflet-pm-edit leaflet-bar leaflet-control"),this.optionsContainer=L.DomUtil.create("div","leaflet-pm-toolbar leaflet-pm-options leaflet-bar leaflet-control"),this.customContainer=L.DomUtil.create("div","leaflet-pm-toolbar leaflet-pm-custom leaflet-bar leaflet-control"),this._defineButtons()},_createContainer(i){let s=`${i}Container`;return this[s]||(this[s]=L.DomUtil.create("div",`leaflet-pm-toolbar leaflet-pm-${i} leaflet-bar leaflet-control`)),this[s]},getButtons(){return this.buttons},addControls(i=this.options){typeof i.editPolygon<"u"&&(i.editMode=i.editPolygon),typeof i.deleteLayer<"u"&&(i.removalMode=i.deleteLayer),L.Util.setOptions(this,i),this.applyIconStyle(),this.isVisible=!0,this._showHideButtons()},applyIconStyle(){let i=this.getButtons(),s={geomanIcons:{drawMarker:"control-icon leaflet-pm-icon-marker",drawPolyline:"control-icon leaflet-pm-icon-polyline",drawRectangle:"control-icon leaflet-pm-icon-rectangle",drawPolygon:"control-icon leaflet-pm-icon-polygon",drawCircle:"control-icon leaflet-pm-icon-circle",drawCircleMarker:"control-icon leaflet-pm-icon-circle-marker",editMode:"control-icon leaflet-pm-icon-edit",dragMode:"control-icon leaflet-pm-icon-drag",cutPolygon:"control-icon leaflet-pm-icon-cut",removalMode:"control-icon leaflet-pm-icon-delete",drawText:"control-icon leaflet-pm-icon-text"}};for(let o in i){let h=i[o];L.Util.setOptions(h,{className:s.geomanIcons[o]})}},removeControls(){let i=this.getButtons();for(let s in i)i[s].remove();this.isVisible=!1},toggleControls(i=this.options){this.isVisible?this.removeControls():this.addControls(i)},_addButton(i,s){return this.buttons[i]=s,this.options[i]=!!this.options[i]||!1,this.buttons[i]},triggerClickOnToggledButtons(i){for(let s in this.buttons){let o=this.buttons[s];o._button.disableByOtherButtons&&o!==i&&o.toggled()&&o._triggerClick()}},toggleButton(i,s,o=!0){i==="editPolygon"&&(i="editMode"),i==="deleteLayer"&&(i="removalMode");let h=i;return o&&this.triggerClickOnToggledButtons(this.buttons[h]),this.buttons[h]?this.buttons[h].toggle(s):!1},_defineButtons(){let i={className:"control-icon leaflet-pm-icon-marker",title:Bt("buttonTitles.drawMarkerButton"),jsClass:"Marker",onClick:()=>{},afterClick:(tt,it)=>{this.map.pm.Draw[it.button._button.jsClass].toggle()},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position,actions:["cancel"]},s={title:Bt("buttonTitles.drawPolyButton"),className:"control-icon leaflet-pm-icon-polygon",jsClass:"Polygon",onClick:()=>{},afterClick:(tt,it)=>{this.map.pm.Draw[it.button._button.jsClass].toggle()},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position,actions:["finish","removeLastVertex","cancel"]},o={className:"control-icon leaflet-pm-icon-polyline",title:Bt("buttonTitles.drawLineButton"),jsClass:"Line",onClick:()=>{},afterClick:(tt,it)=>{this.map.pm.Draw[it.button._button.jsClass].toggle()},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position,actions:["finish","removeLastVertex","cancel"]},h={title:Bt("buttonTitles.drawCircleButton"),className:"control-icon leaflet-pm-icon-circle",jsClass:"Circle",onClick:()=>{},afterClick:(tt,it)=>{this.map.pm.Draw[it.button._button.jsClass].toggle()},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position,actions:["cancel"]},d={title:Bt("buttonTitles.drawCircleMarkerButton"),className:"control-icon leaflet-pm-icon-circle-marker",jsClass:"CircleMarker",onClick:()=>{},afterClick:(tt,it)=>{this.map.pm.Draw[it.button._button.jsClass].toggle()},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position,actions:["cancel"]},m={title:Bt("buttonTitles.drawRectButton"),className:"control-icon leaflet-pm-icon-rectangle",jsClass:"Rectangle",onClick:()=>{},afterClick:(tt,it)=>{this.map.pm.Draw[it.button._button.jsClass].toggle()},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position,actions:["cancel"]},y={title:Bt("buttonTitles.editButton"),className:"control-icon leaflet-pm-icon-edit",onClick:()=>{},afterClick:()=>{this.map.pm.toggleGlobalEditMode()},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position,tool:"edit",actions:["finishMode"]},v={title:Bt("buttonTitles.dragButton"),className:"control-icon leaflet-pm-icon-drag",onClick:()=>{},afterClick:()=>{this.map.pm.toggleGlobalDragMode()},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position,tool:"edit",actions:["finishMode"]},w={title:Bt("buttonTitles.cutButton"),className:"control-icon leaflet-pm-icon-cut",jsClass:"Cut",onClick:()=>{},afterClick:(tt,it)=>{this.map.pm.Draw[it.button._button.jsClass].toggle({snappable:!0,cursorMarker:!0,allowSelfIntersection:!1})},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position,tool:"edit",actions:["finish","removeLastVertex","cancel"]},P={title:Bt("buttonTitles.deleteButton"),className:"control-icon leaflet-pm-icon-delete",onClick:()=>{},afterClick:()=>{this.map.pm.toggleGlobalRemovalMode()},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position,tool:"edit",actions:["finishMode"]},N={title:Bt("buttonTitles.rotateButton"),className:"control-icon leaflet-pm-icon-rotate",onClick:()=>{},afterClick:()=>{this.map.pm.toggleGlobalRotateMode()},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position,tool:"edit",actions:["finishMode"]},F={className:"control-icon leaflet-pm-icon-text",title:Bt("buttonTitles.drawTextButton"),jsClass:"Text",onClick:()=>{},afterClick:(tt,it)=>{this.map.pm.Draw[it.button._button.jsClass].toggle()},doToggle:!0,toggleStatus:!1,disableOtherButtons:!0,position:this.options.position,actions:["cancel"]};this._addButton("drawMarker",new L.Control.PMButton(i)),this._addButton("drawPolyline",new L.Control.PMButton(o)),this._addButton("drawRectangle",new L.Control.PMButton(m)),this._addButton("drawPolygon",new L.Control.PMButton(s)),this._addButton("drawCircle",new L.Control.PMButton(h)),this._addButton("drawCircleMarker",new L.Control.PMButton(d)),this._addButton("drawText",new L.Control.PMButton(F)),this._addButton("editMode",new L.Control.PMButton(y)),this._addButton("dragMode",new L.Control.PMButton(v)),this._addButton("cutPolygon",new L.Control.PMButton(w)),this._addButton("removalMode",new L.Control.PMButton(P)),this._addButton("rotateMode",new L.Control.PMButton(N))},_showHideButtons(){if(!this.isVisible)return;this.removeControls(),this.isVisible=!0;let i=this.getButtons(),s=[];this.options.drawControls===!1&&(s=s.concat(Object.keys(i).filter(o=>!i[o]._button.tool))),this.options.editControls===!1&&(s=s.concat(Object.keys(i).filter(o=>i[o]._button.tool==="edit"))),this.options.optionsControls===!1&&(s=s.concat(Object.keys(i).filter(o=>i[o]._button.tool==="options"))),this.options.customControls===!1&&(s=s.concat(Object.keys(i).filter(o=>i[o]._button.tool==="custom")));for(let o in i)if(this.options[o]&&s.indexOf(o)===-1){let h=i[o]._button.tool;h||(h="draw"),i[o].setPosition(this._getBtnPosition(h)),i[o].addTo(this.map)}},_getBtnPosition(i){return this.options.positions&&this.options.positions[i]?this.options.positions[i]:this.options.position},setBlockPosition(i,s){this.options.positions[i]=s,this._showHideButtons(),this.changeControlOrder()},getBlockPositions(){return this.options.positions},copyDrawControl(i,s){if(s)typeof s!="object"&&(s={name:s});else throw new TypeError("Button has no name");let o=this._btnNameMapping(i);if(!s.name)throw new TypeError("Button has no name");if(this.buttons[s.name])throw new TypeError("Button with this name already exists");let h=this.map.pm.Draw.createNewDrawInstance(s.name,o);s={...this.buttons[o]._button,...s};let d=this.createCustomControl(s);return{drawInstance:h,control:d}},createCustomControl(i){if(!i.name)throw new TypeError("Button has no name");if(this.buttons[i.name])throw new TypeError("Button with this name already exists");i.onClick||(i.onClick=()=>{}),i.afterClick||(i.afterClick=()=>{}),i.toggle!==!1&&(i.toggle=!0),i.block&&(i.block=i.block.toLowerCase()),(!i.block||i.block==="draw")&&(i.block=""),i.className?i.className.indexOf("control-icon")===-1&&(i.className=`control-icon ${i.className}`):i.className="control-icon";let s={tool:i.block,className:i.className,title:i.title||"",jsClass:i.name,onClick:i.onClick,afterClick:i.afterClick,doToggle:i.toggle,toggleStatus:!1,disableOtherButtons:i.disableOtherButtons??!0,disableByOtherButtons:i.disableByOtherButtons??!0,cssToggle:i.toggle,position:this.options.position,actions:i.actions||[],disabled:!!i.disabled};this.options[i.name]!==!1&&(this.options[i.name]=!0);let o=this._addButton(i.name,new L.Control.PMButton(s));return this.changeControlOrder(),o},controlExists(i){return!!this.getButton(i)},getButton(i){return this.getButtons()[i]},getButtonsInBlock(i){let s={};if(i)for(let o in this.getButtons()){let h=this.getButtons()[o];(h._button.tool===i||i==="draw"&&!h._button.tool)&&(s[o]=h)}return s},changeControlOrder(i=[]){let s=this._shapeMapping(),o=[];i.forEach(m=>{s[m]?o.push(s[m]):o.push(m)});let h=this.getButtons(),d={};o.forEach(m=>{h[m]&&(d[m]=h[m])}),Object.keys(h).filter(m=>!h[m]._button.tool||h[m]._button.tool==="draw").forEach(m=>{o.indexOf(m)===-1&&(d[m]=h[m])}),Object.keys(h).filter(m=>h[m]._button.tool==="edit").forEach(m=>{o.indexOf(m)===-1&&(d[m]=h[m])}),Object.keys(h).filter(m=>h[m]._button.tool==="options").forEach(m=>{o.indexOf(m)===-1&&(d[m]=h[m])}),Object.keys(h).filter(m=>h[m]._button.tool==="custom").forEach(m=>{o.indexOf(m)===-1&&(d[m]=h[m])}),Object.keys(h).forEach(m=>{o.indexOf(m)===-1&&(d[m]=h[m])}),this.map.pm.Toolbar.buttons=d,this._showHideButtons()},getControlOrder(){let i=this.getButtons(),s=[];for(let o in i)s.push(o);return s},changeActionsOfControl(i,s){let o=this._btnNameMapping(i);if(!o)throw new TypeError("No name passed");if(!s)throw new TypeError("No actions passed");if(!this.buttons[o])throw new TypeError("Button with this name not exists");this.buttons[o]._button.actions=s,this.changeControlOrder()},setButtonDisabled(i,s){let o=this._btnNameMapping(i);s?this.buttons[o].disable():this.buttons[o].enable()},_shapeMapping(){return{Marker:"drawMarker",Circle:"drawCircle",Polygon:"drawPolygon",Rectangle:"drawRectangle",Polyline:"drawPolyline",Line:"drawPolyline",CircleMarker:"drawCircleMarker",Edit:"editMode",Drag:"dragMode",Cut:"cutPolygon",Removal:"removalMode",Rotate:"rotateMode",Text:"drawText"}},_btnNameMapping(i){let s=this._shapeMapping();return s[i]?s[i]:i}}),ia=mr,Vo=A(On()),gr={_initSnappableMarkers(){this.options.snapDistance=this.options.snapDistance||30,this.options.snapSegment=this.options.snapSegment===void 0?!0:this.options.snapSegment,this._assignEvents(this._markers),this._layer.off("pm:dragstart",this._unsnap,this),this._layer.on("pm:dragstart",this._unsnap,this)},_disableSnapping(){this._layer.off("pm:dragstart",this._unsnap,this)},_assignEvents(i){i.forEach(s=>{if(Array.isArray(s)){this._assignEvents(s);return}s.off("drag",this._handleSnapping,this),s.on("drag",this._handleSnapping,this),s.off("dragend",this._cleanupSnapping,this),s.on("dragend",this._cleanupSnapping,this)})},_cleanupSnapping(i){if(i){let s=i.target;s._snapped=!1}delete this._snapList,this.throttledList&&(this._map.off("layeradd",this.throttledList,this),this.throttledList=void 0),this._map.off("layerremove",this._handleSnapLayerRemoval,this),this.debugIndicatorLines&&this.debugIndicatorLines.forEach(s=>{s.remove()})},_handleThrottleSnapping(){this.throttledList&&this._createSnapList()},_handleSnapping(i){var v,w,P;let s=i.target;if(s._snapped=!1,this.throttledList||(this.throttledList=L.Util.throttle(this._handleThrottleSnapping,100,this)),((v=i==null?void 0:i.originalEvent)==null?void 0:v.altKey)||((P=(w=this._map)==null?void 0:w.pm)==null?void 0:P.Keyboard.isAltKeyPressed())||(this._snapList===void 0&&(this._createSnapList(),this._map.off("layeradd",this.throttledList,this),this._map.on("layeradd",this.throttledList,this)),this._snapList.length<=0))return!1;let o=this._calcClosestLayer(s.getLatLng(),this._snapList);if(Object.keys(o).length===0)return!1;let h=o.layer instanceof L.Marker||o.layer instanceof L.CircleMarker||!this.options.snapSegment,d;h?d=o.latlng:d=this._checkPrioritiySnapping(o);let m=this.options.snapDistance,y={marker:s,shape:this._shape,snapLatLng:d,segment:o.segment,layer:this._layer,workingLayer:this._layer,layerInteractedWith:o.layer,distance:o.distance};if(this._fireSnapDrag(y.marker,y),this._fireSnapDrag(this._layer,y),o.distance<m){s._orgLatLng=s.getLatLng(),s.setLatLng(d),s._snapped=!0,s._snapInfo=y;let N=()=>{this._snapLatLng=d,this._fireSnap(s,y),this._fireSnap(this._layer,y)},F=this._snapLatLng||{},tt=d||{};(F.lat!==tt.lat||F.lng!==tt.lng)&&N()}else this._snapLatLng&&(this._unsnap(y),s._snapped=!1,s._snapInfo=void 0,this._fireUnsnap(y.marker,y),this._fireUnsnap(this._layer,y));return!0},_createSnapList(){let i=[],s=[],o=this._map;o.off("layerremove",this._handleSnapLayerRemoval,this),o.on("layerremove",this._handleSnapLayerRemoval,this),o.eachLayer(h=>{if((h instanceof L.Polyline||h instanceof L.Marker||h instanceof L.CircleMarker||h instanceof L.ImageOverlay)&&h.options.snapIgnore!==!0){if(h.options.snapIgnore===void 0&&(!L.PM.optIn&&h.options.pmIgnore===!0||L.PM.optIn&&h.options.pmIgnore!==!1))return;(h instanceof L.Circle||h instanceof L.CircleMarker)&&h.pm&&h.pm._hiddenPolyCircle?i.push(h.pm._hiddenPolyCircle):h instanceof L.ImageOverlay&&(h=L.rectangle(h.getBounds())),i.push(h);let d=L.polyline([],{color:"red",pmIgnore:!0});d._pmTempLayer=!0,s.push(d),(h instanceof L.Circle||h instanceof L.CircleMarker)&&s.push(d)}}),i=i.filter(h=>this._layer!==h),i=i.filter(h=>h._latlng||h._latlngs&&Pi(h._latlngs)),i=i.filter(h=>!h._pmTempLayer),this._otherSnapLayers?(this._otherSnapLayers.forEach(()=>{let h=L.polyline([],{color:"red",pmIgnore:!0});h._pmTempLayer=!0,s.push(h)}),this._snapList=i.concat(this._otherSnapLayers)):this._snapList=i,this.debugIndicatorLines=s},_handleSnapLayerRemoval({layer:i}){if(!i._leaflet_id)return;let s=this._snapList.findIndex(o=>o._leaflet_id===i._leaflet_id);s>-1&&this._snapList.splice(s,1)},_calcClosestLayer(i,s){return this._calcClosestLayers(i,s,1)[0]},_calcClosestLayers(i,s,o=1){let h=[],d={};s.forEach((y,v)=>{var P;if(y._parentCopy&&y._parentCopy===this._layer||((P=y.getLatLngs)==null?void 0:P.call(y).flat(5).length)<2)return;let w=this._calcLayerDistances(i,y);if(w.distance=Math.floor(w.distance),this.debugIndicatorLines){if(!this.debugIndicatorLines[v]){let N=L.polyline([],{color:"red",pmIgnore:!0});N._pmTempLayer=!0,this.debugIndicatorLines[v]=N}this.debugIndicatorLines[v].setLatLngs([i,w.latlng])}o===1&&(d.distance===void 0||w.distance-5<=d.distance)?(w.distance+5<d.distance&&(h=[]),d=w,d.layer=y,h.push(d)):o!==1&&(d={},d=w,d.layer=y,h.push(d))}),o!==1&&(h=h.sort((y,v)=>y.distance-v.distance)),o===-1&&(o=h.length);let m=this._getClosestLayerByPriority(h,o);return L.Util.isArray(m)?m:[m]},_calcLayerDistances(i,s){let o=this._map,h=s instanceof L.Marker||s instanceof L.CircleMarker,d=s instanceof L.Polygon,m=i;if(h){let y=s.getLatLng();return{latlng:{...y},distance:this._getDistance(o,y,m)}}return this._calcLatLngDistances(m,s.getLatLngs(),o,d)},_calcLatLngDistances(i,s,o,h=!1){let d,m,y,v=w=>{w.forEach((P,N)=>{if(Array.isArray(P)){v(P);return}if(this.options.snapSegment){let F=P,tt;h?tt=N+1===w.length?0:N+1:tt=N+1===w.length?void 0:N+1;let it=w[tt];if(it){let lt=this._getDistanceToSegment(o,i,F,it);(m===void 0||lt<m)&&(m=lt,y=[F,it])}}else{let F=this._getDistance(o,i,P);(m===void 0||F<m)&&(m=F,d=P)}})};return v(s),this.options.snapSegment?{latlng:{...this._getClosestPointOnSegment(o,i,y[0],y[1])},segment:y,distance:m}:{latlng:d,distance:m}},_getClosestLayerByPriority(i,s=1){i=i.sort((y,v)=>y._leaflet_id-v._leaflet_id);let o=["Marker","CircleMarker","Circle","Line","Polygon","Rectangle"],h=this._map.pm.globalOptions.snappingOrder||[],d=0,m={};return h.concat(o).forEach(y=>{m[y]||(d+=1,m[y]=d)}),i.sort(qo("instanceofShape",m)),s===1?i[0]||{}:i.slice(0,s)},_checkPrioritiySnapping(i){let s=this._map,o=i.segment[0],h=i.segment[1],d=i.latlng,m=d;if(this.options.snapVertex){let y=this._getDistance(s,o,d),v=this._getDistance(s,h,d),w=y<v?o:h,P=y<v?y:v;if(this.options.snapMiddle){let F=L.PM.Utils.calcMiddleLatLng(s,o,h),tt=this._getDistance(s,F,d);tt<y&&tt<v&&(w=F,P=tt)}let N=this.options.snapDistance;P<N&&(m=w)}return{...m}},_unsnap(){delete this._snapLatLng},_getClosestPointOnSegment(i,s,o,h){let d=i.getMaxZoom();d===1/0&&(d=i.getZoom());let m=i.project(s,d),y=i.project(o,d),v=i.project(h,d),w=L.LineUtil.closestPointOnSegment(m,y,v);return i.unproject(w,d)},_getDistanceToSegment(i,s,o,h){let d=i.latLngToContainerPoint(s),m=i.latLngToContainerPoint(o),y=i.latLngToContainerPoint(h);return L.LineUtil.pointToSegmentDistance(d,m,y)},_getDistance(i,s,o){return i.latLngToContainerPoint(s).distanceTo(i.latLngToContainerPoint(o))}},na=gr,$o=L.Class.extend({includes:[na,Nn],options:{snappable:!0,snapDistance:20,snapMiddle:!1,allowSelfIntersection:!0,tooltips:!0,templineStyle:{},hintlineStyle:{color:"#3388ff",dashArray:"5,5"},pathOptions:null,cursorMarker:!0,finishOn:null,markerStyle:{draggable:!0,icon:L.icon()},hideMiddleMarkers:!1,minRadiusCircle:null,maxRadiusCircle:null,minRadiusCircleMarker:null,maxRadiusCircleMarker:null,resizeableCircleMarker:!1,resizeableCircle:!0,markerEditable:!0,continueDrawing:!1,snapSegment:!0,requireSnapToFinish:!1,rectangleAngle:0,textOptions:{text:null,focusAfterDraw:null,removeIfEmpty:null,className:null},snapVertex:!0},setOptions(i){L.Util.setOptions(this,i),this.setStyle(this.options)},setStyle(){},getOptions(){return this.options},initialize(i){let s=new L.Icon.Default;s.options.tooltipAnchor=[0,0],this.options.markerStyle.icon=s,this._map=i,this.shapes=["Marker","CircleMarker","Line","Polygon","Rectangle","Circle","Cut","Text"],this.shapes.forEach(o=>{this[o]=new L.PM.Draw[o](this._map)}),this.Marker.setOptions({continueDrawing:!0}),this.CircleMarker.setOptions({continueDrawing:!0})},setPathOptions(i,s=!1){s?this.options.pathOptions=(0,Vo.default)(this.options.pathOptions,i):this.options.pathOptions=i},getShapes(){return this.shapes},getShape(){return this._shape},enable(i,s){if(!i)throw new Error(`Error: Please pass a shape as a parameter. Possible shapes are: ${this.getShapes().join(",")}`);this.disable(),this[i].enable(s)},disable(){this.shapes.forEach(i=>{this[i].disable()})},addControls(){this.shapes.forEach(i=>{this[i].addButton()})},getActiveShape(){let i;return this.shapes.forEach(s=>{this[s]._enabled&&(i=s)}),i},_setGlobalDrawMode(){this._shape==="Cut"?this._fireGlobalCutModeToggled():this._fireGlobalDrawModeToggled();let i=[];this._map.eachLayer(s=>{(s instanceof L.Polyline||s instanceof L.Marker||s instanceof L.Circle||s instanceof L.CircleMarker||s instanceof L.ImageOverlay)&&(s._pmTempLayer||i.push(s))}),this._enabled?i.forEach(s=>{L.PM.Utils.disablePopup(s)}):i.forEach(s=>{L.PM.Utils.enablePopup(s)})},createNewDrawInstance(i,s){let o=this._getShapeFromBtnName(s);if(this[i])throw new TypeError("Draw Type already exists");if(!L.PM.Draw[o])throw new TypeError(`There is no class L.PM.Draw.${o}`);return this[i]=new L.PM.Draw[o](this._map),this[i].toolbarButtonName=i,this[i]._shape=i,this.shapes.push(i),this[s]&&this[i].setOptions(this[s].options),this[i].setOptions(this[i].options),this[i]},_getShapeFromBtnName(i){let s={drawMarker:"Marker",drawCircle:"Circle",drawPolygon:"Polygon",drawPolyline:"Line",drawRectangle:"Rectangle",drawCircleMarker:"CircleMarker",editMode:"Edit",dragMode:"Drag",cutPolygon:"Cut",removalMode:"Removal",rotateMode:"Rotate",drawText:"Text"};return s[i]?s[i]:this[i]?this[i]._shape:i},_finishLayer(i){i.pm&&(i.pm.setOptions(this.options),i.pm._shape=this._shape,i.pm._map=this._map),this._addDrawnLayerProp(i)},_addDrawnLayerProp(i){i._drawnByGeoman=!0},_setPane(i,s){s==="layerPane"?i.options.pane=this._map.pm.globalOptions.panes&&this._map.pm.globalOptions.panes.layerPane||"overlayPane":s==="vertexPane"?i.options.pane=this._map.pm.globalOptions.panes&&this._map.pm.globalOptions.panes.vertexPane||"markerPane":s==="markerPane"&&(i.options.pane=this._map.pm.globalOptions.panes&&this._map.pm.globalOptions.panes.markerPane||"markerPane")},_isFirstLayer(){return(this._map||this._layer._map).pm.getGeomanLayers().length===0}}),de=$o;de.Marker=de.extend({initialize(i){this._map=i,this._shape="Marker",this.toolbarButtonName="drawMarker"},enable(i){L.Util.setOptions(this,i),this._enabled=!0,this._map.getContainer().classList.add("geoman-draw-cursor"),this._map.on("click",this._createMarker,this),this._map.pm.Toolbar.toggleButton(this.toolbarButtonName,!0),this._hintMarker=L.marker(this._map.getCenter(),this.options.markerStyle),this._setPane(this._hintMarker,"markerPane"),this._hintMarker._pmTempLayer=!0,this._hintMarker.addTo(this._map),this.options.tooltips&&this._hintMarker.bindTooltip(Bt("tooltips.placeMarker"),{permanent:!0,offset:L.point(0,10),direction:"bottom",opacity:.8}).openTooltip(),this._layer=this._hintMarker,this._map.on("mousemove",this._syncHintMarker,this),this.options.markerEditable&&this._map.eachLayer(s=>{this.isRelevantMarker(s)&&s.pm.enable()}),this._fireDrawStart(),this._setGlobalDrawMode()},disable(){this._enabled&&(this._enabled=!1,this._map.getContainer().classList.remove("geoman-draw-cursor"),this._map.off("click",this._createMarker,this),this._hintMarker.remove(),this._map.off("mousemove",this._syncHintMarker,this),this._map.eachLayer(i=>{this.isRelevantMarker(i)&&i.pm.disable()}),this._map.pm.Toolbar.toggleButton(this.toolbarButtonName,!1),this.options.snappable&&this._cleanupSnapping(),this._fireDrawEnd(),this._setGlobalDrawMode())},enabled(){return this._enabled},toggle(i){this.enabled()?this.disable():this.enable(i)},isRelevantMarker(i){return i instanceof L.Marker&&i.pm&&!i._pmTempLayer&&!i.pm._initTextMarker},_syncHintMarker(i){if(this._hintMarker.setLatLng(i.latlng),this.options.snappable){let s=i;s.target=this._hintMarker,this._handleSnapping(s)}this._fireChange(this._hintMarker.getLatLng(),"Draw")},_createMarker(i){if(!i.latlng||this.options.requireSnapToFinish&&!this._hintMarker._snapped&&!this._isFirstLayer())return;this._hintMarker._snapped||this._hintMarker.setLatLng(i.latlng);let s=this._hintMarker.getLatLng(),o=new L.Marker(s,this.options.markerStyle);this._setPane(o,"markerPane"),this._finishLayer(o),o.pm||(o.options.draggable=!1),o.addTo(this._map.pm._getContainingLayer()),o.pm&&this.options.markerEditable?o.pm.enable():o.dragging&&o.dragging.disable(),this._fireCreate(o),this._cleanupSnapping(),this.options.continueDrawing||this.disable()},setStyle(){var i,s;(i=this.options.markerStyle)!=null&&i.icon&&((s=this._hintMarker)==null||s.setIcon(this.options.markerStyle.icon))}});var _e=63710088e-1,yr={centimeters:_e*100,centimetres:_e*100,degrees:_e/111325,feet:_e*3.28084,inches:_e*39.37,kilometers:_e/1e3,kilometres:_e/1e3,meters:_e,metres:_e,miles:_e/1609.344,millimeters:_e*1e3,millimetres:_e*1e3,nauticalmiles:_e/1852,radians:1,yards:_e*1.0936};function ki(i,s,o){o===void 0&&(o={});var h={type:"Feature"};return(o.id===0||o.id)&&(h.id=o.id),o.bbox&&(h.bbox=o.bbox),h.properties=s||{},h.geometry=i,h}function Bi(i,s,o){if(o===void 0&&(o={}),!i)throw new Error("coordinates is required");if(!Array.isArray(i))throw new Error("coordinates must be an Array");if(i.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!sa(i[0])||!sa(i[1]))throw new Error("coordinates must contain numbers");var h={type:"Point",coordinates:i};return ki(h,s,o)}function gi(i,s,o){if(o===void 0&&(o={}),i.length<2)throw new Error("coordinates must be an array of two or more positions");var h={type:"LineString",coordinates:i};return ki(h,s,o)}function Ee(i,s){s===void 0&&(s={});var o={type:"FeatureCollection"};return s.id&&(o.id=s.id),s.bbox&&(o.bbox=s.bbox),o.features=i,o}function Wo(i,s){s===void 0&&(s="kilometers");var o=yr[s];if(!o)throw new Error(s+" units is invalid");return i*o}function cn(i,s){s===void 0&&(s="kilometers");var o=yr[s];if(!o)throw new Error(s+" units is invalid");return i/o}function Pe(i){var s=i%(2*Math.PI);return s*180/Math.PI}function Ue(i){var s=i%360;return s*Math.PI/180}function sa(i){return!isNaN(i)&&i!==null&&!Array.isArray(i)}function qn(i){var s,o,h={type:"FeatureCollection",features:[]};if(i.type==="Feature"?o=i.geometry:o=i,o.type==="LineString")s=[o.coordinates];else if(o.type==="MultiLineString")s=o.coordinates;else if(o.type==="MultiPolygon")s=[].concat.apply([],o.coordinates);else if(o.type==="Polygon")s=o.coordinates;else throw new Error("Input must be a LineString, MultiLineString, Polygon, or MultiPolygon Feature or Geometry");return s.forEach(function(d){s.forEach(function(m){for(var y=0;y<d.length-1;y++)for(var v=y;v<m.length-1;v++)if(!(d===m&&(Math.abs(y-v)===1||y===0&&v===d.length-2&&d[y][0]===d[d.length-1][0]&&d[y][1]===d[d.length-1][1]))){var w=aa(d[y][0],d[y][1],d[y+1][0],d[y+1][1],m[v][0],m[v][1],m[v+1][0],m[v+1][1]);w&&h.features.push(Bi([w[0],w[1]]))}})}),h}function aa(i,s,o,h,d,m,y,v){var w,P,N,F,tt,it={x:null,y:null,onLine1:!1,onLine2:!1};return w=(v-m)*(o-i)-(y-d)*(h-s),w===0?it.x!==null&&it.y!==null?it:!1:(P=s-m,N=i-d,F=(y-d)*P-(v-m)*N,tt=(o-i)*P-(h-s)*N,P=F/w,N=tt/w,it.x=i+P*(o-i),it.y=s+P*(h-s),P>=0&&P<=1&&(it.onLine1=!0),N>=0&&N<=1&&(it.onLine2=!0),it.onLine1&&it.onLine2?[it.x,it.y]:!1)}de.Line=de.extend({initialize(i){this._map=i,this._shape="Line",this.toolbarButtonName="drawPolyline",this._doesSelfIntersect=!1},enable(i){L.Util.setOptions(this,i),this._enabled=!0,this._markers=[],this._layerGroup=new L.FeatureGroup,this._layerGroup._pmTempLayer=!0,this._layerGroup.addTo(this._map),this._layer=L.polyline([],{...this.options.templineStyle,pmIgnore:!1}),this._setPane(this._layer,"layerPane"),this._layer._pmTempLayer=!0,this._layerGroup.addLayer(this._layer),this._hintline=L.polyline([],this.options.hintlineStyle),this._setPane(this._hintline,"layerPane"),this._hintline._pmTempLayer=!0,this._layerGroup.addLayer(this._hintline),this._hintMarker=L.marker(this._map.getCenter(),{interactive:!1,zIndexOffset:100,icon:L.divIcon({className:"marker-icon cursor-marker"})}),this._setPane(this._hintMarker,"vertexPane"),this._hintMarker._pmTempLayer=!0,this._layerGroup.addLayer(this._hintMarker),this.options.cursorMarker&&L.DomUtil.addClass(this._hintMarker._icon,"visible"),this.options.tooltips&&this._hintMarker.bindTooltip(Bt("tooltips.firstVertex"),{permanent:!0,offset:L.point(0,10),direction:"bottom",opacity:.8}).openTooltip(),this._map.getContainer().classList.add("geoman-draw-cursor"),this._map.on("click",this._createVertex,this),this.options.finishOn&&this.options.finishOn!=="snap"&&this._map.on(this.options.finishOn,this._finishShape,this),this.options.finishOn==="dblclick"&&(this.tempMapDoubleClickZoomState=this._map.doubleClickZoom._enabled,this.tempMapDoubleClickZoomState&&this._map.doubleClickZoom.disable()),this._map.on("mousemove",this._syncHintMarker,this),this._hintMarker.on("move",this._syncHintLine,this),this._map.pm.Toolbar.toggleButton(this.toolbarButtonName,!0),this._otherSnapLayers=[],this.isRed=!1,this._fireDrawStart(),this._setGlobalDrawMode()},disable(){this._enabled&&(this._enabled=!1,this._map.getContainer().classList.remove("geoman-draw-cursor"),this._map.off("click",this._createVertex,this),this._map.off("mousemove",this._syncHintMarker,this),this.options.finishOn&&this.options.finishOn!=="snap"&&this._map.off(this.options.finishOn,this._finishShape,this),this.tempMapDoubleClickZoomState&&this._map.doubleClickZoom.enable(),this._map.removeLayer(this._layerGroup),this._map.pm.Toolbar.toggleButton(this.toolbarButtonName,!1),this.options.snappable&&this._cleanupSnapping(),this._fireDrawEnd(),this._setGlobalDrawMode())},enabled(){return this._enabled},toggle(i){this.enabled()?this.disable():this.enable(i)},_syncHintLine(){let i=this._layer.getLatLngs();if(i.length>0){let s=i[i.length-1];this._hintline.setLatLngs([s,this._hintMarker.getLatLng()])}},_syncHintMarker(i){if(this._hintMarker.setLatLng(i.latlng),this.options.snappable){let o=i;o.target=this._hintMarker,this._handleSnapping(o)}this.options.allowSelfIntersection||this._handleSelfIntersection(!0,this._hintMarker.getLatLng());let s=this._layer._defaultShape().slice();s.push(this._hintMarker.getLatLng()),this._change(s)},hasSelfIntersection(){return qn(this._layer.toGeoJSON(15)).features.length>0},_handleSelfIntersection(i,s){let o=L.polyline(this._layer.getLatLngs());i&&(s||(s=this._hintMarker.getLatLng()),o.addLatLng(s));let h=qn(o.toGeoJSON(15));this._doesSelfIntersect=h.features.length>0,this._doesSelfIntersect?this.isRed||(this.isRed=!0,this._hintline.setStyle({color:"#f00000ff"}),this._fireIntersect(h,this._map,"Draw")):this._hintline.isEmpty()||(this.isRed=!1,this._hintline.setStyle(this.options.hintlineStyle))},_createVertex(i){if(!this.options.allowSelfIntersection&&(this._handleSelfIntersection(!0,i.latlng),this._doesSelfIntersect))return;this._hintMarker._snapped||this._hintMarker.setLatLng(i.latlng);let s=this._hintMarker.getLatLng(),o=this._layer.getLatLngs(),h=o[o.length-1];if(s.equals(o[0])||o.length>0&&s.equals(h)){this._finishShape();return}this._layer._latlngInfo=this._layer._latlngInfo||[],this._layer._latlngInfo.push({latlng:s,snapInfo:this._hintMarker._snapInfo}),this._layer.addLatLng(s);let d=this._createMarker(s);this._setTooltipText(),this._setHintLineAfterNewVertex(s),this._fireVertexAdded(d,void 0,s,"Draw"),this._change(this._layer.getLatLngs()),this.options.finishOn==="snap"&&this._hintMarker._snapped&&this._finishShape(i)},_setHintLineAfterNewVertex(i){this._hintline.setLatLngs([i,i])},_removeLastVertex(){let i=this._markers;if(i.length<=1){this.disable();return}let s=this._layer.getLatLngs(),o=i[i.length-1],{indexPath:h}=L.PM.Utils.findDeepMarkerIndex(i,o);i.pop(),this._layerGroup.removeLayer(o);let d=i[i.length-1],m=s.indexOf(d.getLatLng());s=s.slice(0,m+1),this._layer.setLatLngs(s),this._layer._latlngInfo.pop(),this._syncHintLine(),this._setTooltipText(),this._fireVertexRemoved(o,h,"Draw"),this._change(this._layer.getLatLngs())},_finishShape(){if(!this.options.allowSelfIntersection&&(this._handleSelfIntersection(!1),this._doesSelfIntersect)||this.options.requireSnapToFinish&&!this._hintMarker._snapped&&!this._isFirstLayer())return;let i=this._layer.getLatLngs();if(i.length<=1)return;let s=L.polyline(i,this.options.pathOptions);this._setPane(s,"layerPane"),this._finishLayer(s),s.addTo(this._map.pm._getContainingLayer()),this._fireCreate(s),this.options.snappable&&this._cleanupSnapping();let o=this._hintMarker.getLatLng();this.disable(),this.options.continueDrawing&&(this.enable(),this._hintMarker.setLatLng(o))},_createMarker(i){let s=new L.Marker(i,{draggable:!1,icon:L.divIcon({className:"marker-icon"})});return this._setPane(s,"vertexPane"),s._pmTempLayer=!0,this._layerGroup.addLayer(s),this._markers.push(s),s.on("click",this._finishShape,this),s},_setTooltipText(){let{length:i}=this._layer.getLatLngs().flat(),s="";i<=1?s=Bt("tooltips.continueLine"):s=Bt("tooltips.finishLine"),this._hintMarker.setTooltipContent(s)},_change(i){this._fireChange(i,"Draw")},setStyle(){var i,s;(i=this._layer)==null||i.setStyle(this.options.templineStyle),(s=this._hintline)==null||s.setStyle(this.options.hintlineStyle)}}),de.Polygon=de.Line.extend({initialize(i){this._map=i,this._shape="Polygon",this.toolbarButtonName="drawPolygon"},enable(i){L.PM.Draw.Line.prototype.enable.call(this,i),this._layer.pm._shape="Polygon"},_createMarker(i){let s=new L.Marker(i,{draggable:!1,icon:L.divIcon({className:"marker-icon"})});return this._setPane(s,"vertexPane"),s._pmTempLayer=!0,this._layerGroup.addLayer(s),this._markers.push(s),this._layer.getLatLngs().flat().length===1?(s.on("click",this._finishShape,this),this._tempSnapLayerIndex=this._otherSnapLayers.push(s)-1,this.options.snappable&&this._cleanupSnapping()):s.on("click",()=>1),s},_setTooltipText(){let{length:i}=this._layer.getLatLngs().flat(),s="";i<=2?s=Bt("tooltips.continueLine"):s=Bt("tooltips.finishPoly"),this._hintMarker.setTooltipContent(s)},_finishShape(){if(!this.options.allowSelfIntersection&&(this._handleSelfIntersection(!0,this._layer.getLatLngs()[0]),this._doesSelfIntersect)||this.options.requireSnapToFinish&&!this._hintMarker._snapped&&!this._isFirstLayer())return;let i=this._layer.getLatLngs();if(i.length<=2)return;let s=L.polygon(i,this.options.pathOptions);this._setPane(s,"layerPane"),this._finishLayer(s),s.addTo(this._map.pm._getContainingLayer()),this._fireCreate(s),this._cleanupSnapping(),this._otherSnapLayers.splice(this._tempSnapLayerIndex,1),delete this._tempSnapLayerIndex;let o=this._hintMarker.getLatLng();this.disable(),this.options.continueDrawing&&(this.enable(),this._hintMarker.setLatLng(o))}}),de.Rectangle=de.extend({initialize(i){this._map=i,this._shape="Rectangle",this.toolbarButtonName="drawRectangle"},enable(i){if(L.Util.setOptions(this,i),this._enabled=!0,this._layerGroup=new L.FeatureGroup,this._layerGroup._pmTempLayer=!0,this._layerGroup.addTo(this._map),this._layer=L.rectangle([[0,0],[0,0]],this.options.pathOptions),this._setPane(this._layer,"layerPane"),this._layer._pmTempLayer=!0,this._startMarker=L.marker(this._map.getCenter(),{icon:L.divIcon({className:"marker-icon rect-start-marker"}),draggable:!1,zIndexOffset:-100,opacity:this.options.cursorMarker?1:0}),this._setPane(this._startMarker,"vertexPane"),this._startMarker._pmTempLayer=!0,this._layerGroup.addLayer(this._startMarker),this._hintMarker=L.marker(this._map.getCenter(),{zIndexOffset:150,icon:L.divIcon({className:"marker-icon cursor-marker"})}),this._setPane(this._hintMarker,"vertexPane"),this._hintMarker._pmTempLayer=!0,this._layerGroup.addLayer(this._hintMarker),this.options.cursorMarker&&L.DomUtil.addClass(this._hintMarker._icon,"visible"),this.options.tooltips&&this._hintMarker.bindTooltip(Bt("tooltips.firstVertex"),{permanent:!0,offset:L.point(0,10),direction:"bottom",opacity:.8}).openTooltip(),this.options.cursorMarker){this._styleMarkers=[];for(let s=0;s<2;s+=1){let o=L.marker(this._map.getCenter(),{icon:L.divIcon({className:"marker-icon rect-style-marker"}),draggable:!1,zIndexOffset:100});this._setPane(o,"vertexPane"),o._pmTempLayer=!0,this._layerGroup.addLayer(o),this._styleMarkers.push(o)}}this._map.getContainer().classList.add("geoman-draw-cursor"),this._map.on("click",this._placeStartingMarkers,this),this._map.on("mousemove",this._syncHintMarker,this),this._map.pm.Toolbar.toggleButton(this.toolbarButtonName,!0),this._otherSnapLayers=[],this._fireDrawStart(),this._setGlobalDrawMode()},disable(){this._enabled&&(this._enabled=!1,this._map.getContainer().classList.remove("geoman-draw-cursor"),this._map.off("click",this._finishShape,this),this._map.off("click",this._placeStartingMarkers,this),this._map.off("mousemove",this._syncHintMarker,this),this._map.removeLayer(this._layerGroup),this._map.pm.Toolbar.toggleButton(this.toolbarButtonName,!1),this.options.snappable&&this._cleanupSnapping(),this._fireDrawEnd(),this._setGlobalDrawMode())},enabled(){return this._enabled},toggle(i){this.enabled()?this.disable():this.enable(i)},_placeStartingMarkers(i){this._hintMarker._snapped||this._hintMarker.setLatLng(i.latlng);let s=this._hintMarker.getLatLng();L.DomUtil.addClass(this._startMarker._icon,"visible"),this._startMarker.setLatLng(s),this.options.cursorMarker&&this._styleMarkers&&this._styleMarkers.forEach(o=>{L.DomUtil.addClass(o._icon,"visible"),o.setLatLng(s)}),this._map.off("click",this._placeStartingMarkers,this),this._map.on("click",this._finishShape,this),this._hintMarker.setTooltipContent(Bt("tooltips.finishRect")),this._setRectangleOrigin()},_setRectangleOrigin(){let i=this._startMarker.getLatLng();i&&(this._layerGroup.addLayer(this._layer),this._layer.setLatLngs([i,i]),this._hintMarker.on("move",this._syncRectangleSize,this))},_syncHintMarker(i){if(this._hintMarker.setLatLng(i.latlng),this.options.snappable){let o=i;o.target=this._hintMarker,this._handleSnapping(o)}let s=this._layerGroup&&this._layerGroup.hasLayer(this._layer)?this._layer.getLatLngs():[this._hintMarker.getLatLng()];this._fireChange(s,"Draw")},_syncRectangleSize(){let i=fr(this._startMarker.getLatLng(),this._map),s=fr(this._hintMarker.getLatLng(),this._map),o=L.PM.Utils._getRotatedRectangle(i,s,this.options.rectangleAngle||0,this._map);if(this._layer.setLatLngs(o),this.options.cursorMarker&&this._styleMarkers){let h=[];o.forEach(d=>{!d.equals(i,1e-8)&&!d.equals(s,1e-8)&&h.push(d)}),h.forEach((d,m)=>{try{this._styleMarkers[m].setLatLng(d)}catch{}})}},_findCorners(){let i=this._layer.getLatLngs()[0];return L.PM.Utils._getRotatedRectangle(i[0],i[2],this.options.rectangleAngle||0,this._map)},_finishShape(i){this._hintMarker._snapped||this._hintMarker.setLatLng(i.latlng);let s=this._hintMarker.getLatLng(),o=this._startMarker.getLatLng();if(this.options.requireSnapToFinish&&!this._hintMarker._snapped&&!this._isFirstLayer()||o.equals(s))return;let h=L.rectangle([o,s],this.options.pathOptions);if(this.options.rectangleAngle){let m=L.PM.Utils._getRotatedRectangle(o,s,this.options.rectangleAngle||0,this._map);h.setLatLngs(m),h.pm&&h.pm._setAngle(this.options.rectangleAngle||0)}this._setPane(h,"layerPane"),this._finishLayer(h),h.addTo(this._map.pm._getContainingLayer()),this._fireCreate(h);let d=this._hintMarker.getLatLng();this.disable(),this.options.continueDrawing&&(this.enable(),this._hintMarker.setLatLng(d))},setStyle(){var i;(i=this._layer)==null||i.setStyle(this.options.pathOptions)}}),de.CircleMarker=de.extend({initialize(i){this._map=i,this._shape="CircleMarker",this.toolbarButtonName="drawCircleMarker",this._layerIsDragging=!1,this._BaseCircleClass=L.CircleMarker,this._minRadiusOption="minRadiusCircleMarker",this._maxRadiusOption="maxRadiusCircleMarker",this._editableOption="resizeableCircleMarker",this._defaultRadius=10},enable(i){if(L.Util.setOptions(this,i),this.options.editable&&(this.options.resizeableCircleMarker=this.options.editable,delete this.options.editable),this._enabled=!0,this._map.pm.Toolbar.toggleButton(this.toolbarButtonName,!0),this._map.getContainer().classList.add("geoman-draw-cursor"),this.options[this._editableOption]){let s={};L.extend(s,this.options.templineStyle),s.radius=0,this._layerGroup=new L.FeatureGroup,this._layerGroup._pmTempLayer=!0,this._layerGroup.addTo(this._map),this._layer=new this._BaseCircleClass(this._map.getCenter(),s),this._setPane(this._layer,"layerPane"),this._layer._pmTempLayer=!0,this._centerMarker=L.marker(this._map.getCenter(),{icon:L.divIcon({className:"marker-icon"}),draggable:!1,zIndexOffset:100}),this._setPane(this._centerMarker,"vertexPane"),this._centerMarker._pmTempLayer=!0,this._hintMarker=L.marker(this._map.getCenter(),{zIndexOffset:110,icon:L.divIcon({className:"marker-icon cursor-marker"})}),this._setPane(this._hintMarker,"vertexPane"),this._hintMarker._pmTempLayer=!0,this._layerGroup.addLayer(this._hintMarker),this.options.cursorMarker&&L.DomUtil.addClass(this._hintMarker._icon,"visible"),this.options.tooltips&&this._hintMarker.bindTooltip(Bt("tooltips.startCircle"),{permanent:!0,offset:L.point(0,10),direction:"bottom",opacity:.8}).openTooltip(),this._hintline=L.polyline([],this.options.hintlineStyle),this._setPane(this._hintline,"layerPane"),this._hintline._pmTempLayer=!0,this._layerGroup.addLayer(this._hintline),this._map.on("click",this._placeCenterMarker,this)}else this._map.on("click",this._createMarker,this),this._hintMarker=new this._BaseCircleClass(this._map.getCenter(),{radius:this._defaultRadius,...this.options.templineStyle}),this._setPane(this._hintMarker,"layerPane"),this._hintMarker._pmTempLayer=!0,this._hintMarker.addTo(this._map),this._layer=this._hintMarker,this.options.tooltips&&this._hintMarker.bindTooltip(Bt("tooltips.placeCircleMarker"),{permanent:!0,offset:L.point(0,10),direction:"bottom",opacity:.8}).openTooltip();this._map.on("mousemove",this._syncHintMarker,this),this._extendingEnable(),this._otherSnapLayers=[],this._fireDrawStart(),this._setGlobalDrawMode()},_extendingEnable(){!this.options[this._editableOption]&&this.options.markerEditable&&this._map.eachLayer(i=>{this.isRelevantMarker(i)&&i.pm.enable()}),this._layer.bringToBack()},disable(){this._enabled&&(this._enabled=!1,this._map.getContainer().classList.remove("geoman-draw-cursor"),this.options[this._editableOption]?(this._map.off("click",this._finishShape,this),this._map.off("click",this._placeCenterMarker,this),this._map.removeLayer(this._layerGroup)):(this._map.off("click",this._createMarker,this),this._extendingDisable(),this._hintMarker.remove()),this._map.off("mousemove",this._syncHintMarker,this),this._map.pm.Toolbar.toggleButton(this.toolbarButtonName,!1),this.options.snappable&&this._cleanupSnapping(),this._fireDrawEnd(),this._setGlobalDrawMode())},_extendingDisable(){this._map.eachLayer(i=>{this.isRelevantMarker(i)&&i.pm.disable()})},enabled(){return this._enabled},toggle(i){this.enabled()?this.disable():this.enable(i)},_placeCenterMarker(i){this._hintMarker._snapped||this._hintMarker.setLatLng(i.latlng),this._layerGroup.addLayer(this._layer),this._layerGroup.addLayer(this._centerMarker);let s=this._hintMarker.getLatLng();this._centerMarker.setLatLng(s),this._map.off("click",this._placeCenterMarker,this),this._map.on("click",this._finishShape,this),this._placeCircleCenter()},_placeCircleCenter(){let i=this._centerMarker.getLatLng();i&&(this._layer.setLatLng(i),this._hintMarker.on("move",this._syncHintLine,this),this._hintMarker.on("move",this._syncCircleRadius,this),this._hintMarker.setTooltipContent(Bt("tooltips.finishCircle")),this._fireCenterPlaced(),this._fireChange(this._layer.getLatLng(),"Draw"))},_syncHintLine(){let i=this._centerMarker.getLatLng(),s=this._getNewDestinationOfHintMarker();this._hintline.setLatLngs([i,s])},_syncCircleRadius(){let i=this._centerMarker.getLatLng(),s=this._hintMarker.getLatLng(),o=this._distanceCalculation(i,s);this.options[this._minRadiusOption]&&o<this.options[this._minRadiusOption]?this._layer.setRadius(this.options[this._minRadiusOption]):this.options[this._maxRadiusOption]&&o>this.options[this._maxRadiusOption]?this._layer.setRadius(this.options[this._maxRadiusOption]):this._layer.setRadius(o)},_syncHintMarker(i){if(this._hintMarker.setLatLng(i.latlng),this._hintMarker.setLatLng(this._getNewDestinationOfHintMarker()),this.options.snappable){let o=i;o.target=this._hintMarker,this._handleSnapping(o)}this._handleHintMarkerSnapping();let s=this._layerGroup&&this._layerGroup.hasLayer(this._centerMarker)?this._centerMarker.getLatLng():this._hintMarker.getLatLng();this._fireChange(s,"Draw")},isRelevantMarker(i){return i instanceof L.CircleMarker&&!(i instanceof L.Circle)&&i.pm&&!i._pmTempLayer},_createMarker(i){if(this.options.requireSnapToFinish&&!this._hintMarker._snapped&&!this._isFirstLayer()||!i.latlng||this._layerIsDragging)return;this._hintMarker._snapped||this._hintMarker.setLatLng(i.latlng);let s=this._hintMarker.getLatLng(),o=new this._BaseCircleClass(s,{radius:this._defaultRadius,...this.options.pathOptions});this._setPane(o,"layerPane"),this._finishLayer(o),o.addTo(this._map.pm._getContainingLayer()),this._extendingCreateMarker(o),this._fireCreate(o),this._cleanupSnapping(),this.options.continueDrawing||this.disable()},_extendingCreateMarker(i){i.pm&&this.options.markerEditable&&i.pm.enable()},_finishShape(i){if(this.options.requireSnapToFinish&&!this._hintMarker._snapped&&!this._isFirstLayer())return;this._hintMarker._snapped||this._hintMarker.setLatLng(i.latlng);let s=this._centerMarker.getLatLng(),o=this._defaultRadius;if(this.options[this._editableOption]){let y=this._hintMarker.getLatLng();o=this._distanceCalculation(s,y),this.options[this._minRadiusOption]&&o<this.options[this._minRadiusOption]?o=this.options[this._minRadiusOption]:this.options[this._maxRadiusOption]&&o>this.options[this._maxRadiusOption]&&(o=this.options[this._maxRadiusOption])}let h={...this.options.pathOptions,radius:o},d=new this._BaseCircleClass(s,h);this._setPane(d,"layerPane"),this._finishLayer(d),d.addTo(this._map.pm._getContainingLayer()),d.pm&&d.pm._updateHiddenPolyCircle(),this._fireCreate(d);let m=this._hintMarker.getLatLng();this.disable(),this.options.continueDrawing&&(this.enable(),this._hintMarker.setLatLng(m))},_getNewDestinationOfHintMarker(){let i=this._hintMarker.getLatLng();if(this.options[this._editableOption]){if(!this._layerGroup.hasLayer(this._centerMarker))return i;let s=this._centerMarker.getLatLng(),o=this._distanceCalculation(s,i);this.options[this._minRadiusOption]&&o<this.options[this._minRadiusOption]?i=jn(this._map,s,i,this._getMinDistanceInMeter()):this.options[this._maxRadiusOption]&&o>this.options[this._maxRadiusOption]&&(i=jn(this._map,s,i,this._getMaxDistanceInMeter()))}return i},_getMinDistanceInMeter(){return L.PM.Utils.pxRadiusToMeterRadius(this.options[this._minRadiusOption],this._map,this._centerMarker.getLatLng())},_getMaxDistanceInMeter(){return L.PM.Utils.pxRadiusToMeterRadius(this.options[this._maxRadiusOption],this._map,this._centerMarker.getLatLng())},_handleHintMarkerSnapping(){if(this.options[this._editableOption]){if(this._hintMarker._snapped){let i=this._centerMarker.getLatLng(),s=this._hintMarker.getLatLng(),o=this._distanceCalculation(i,s);this._layerGroup.hasLayer(this._centerMarker)&&(this.options[this._minRadiusOption]&&o<this.options[this._minRadiusOption]?this._hintMarker.setLatLng(this._hintMarker._orgLatLng):this.options[this._maxRadiusOption]&&o>this.options[this._maxRadiusOption]&&this._hintMarker.setLatLng(this._hintMarker._orgLatLng))}this._hintMarker.setLatLng(this._getNewDestinationOfHintMarker())}},setStyle(){var s,o;let i={};L.extend(i,this.options.templineStyle),this.options[this._editableOption]&&(i.radius=0),(s=this._layer)==null||s.setStyle(i),(o=this._hintline)==null||o.setStyle(this.options.hintlineStyle)},_distanceCalculation(i,s){return this._map.project(i).distanceTo(this._map.project(s))}}),de.Circle=de.CircleMarker.extend({initialize(i){this._map=i,this._shape="Circle",this.toolbarButtonName="drawCircle",this._BaseCircleClass=L.Circle,this._minRadiusOption="minRadiusCircle",this._maxRadiusOption="maxRadiusCircle",this._editableOption="resizeableCircle",this._defaultRadius=100},_extendingEnable(){},_extendingDisable(){},_extendingCreateMarker(){},isRelevantMarker(){},_getMinDistanceInMeter(){return this.options[this._minRadiusOption]},_getMaxDistanceInMeter(){return this.options[this._maxRadiusOption]},_distanceCalculation(i,s){return this._map.distance(i,s)}});function Ze(i){if(!i)throw new Error("coord is required");if(!Array.isArray(i)){if(i.type==="Feature"&&i.geometry!==null&&i.geometry.type==="Point")return i.geometry.coordinates;if(i.type==="Point")return i.coordinates}if(Array.isArray(i)&&i.length>=2&&!Array.isArray(i[0])&&!Array.isArray(i[1]))return i;throw new Error("coord must be GeoJSON Point or an Array of numbers")}function Ke(i){if(Array.isArray(i))return i;if(i.type==="Feature"){if(i.geometry!==null)return i.geometry.coordinates}else if(i.coordinates)return i.coordinates;throw new Error("coords must be GeoJSON Feature, Geometry Object or an Array")}function Hn(i){return i.type==="Feature"?i.geometry:i}function ra(i,s){return i.type==="FeatureCollection"?"FeatureCollection":i.type==="GeometryCollection"?"GeometryCollection":i.type==="Feature"&&i.geometry!==null?i.geometry.type:i.type}function oa(i,s,o){if(i!==null)for(var h,d,m,y,v,w,P,N=0,F=0,tt,it=i.type,lt=it==="FeatureCollection",ft=it==="Feature",vt=lt?i.features.length:1,Ft=0;Ft<vt;Ft++){P=lt?i.features[Ft].geometry:ft?i.geometry:i,tt=P?P.type==="GeometryCollection":!1,v=tt?P.geometries.length:1;for(var z=0;z<v;z++){var q=0,W=0;if(y=tt?P.geometries[z]:P,y!==null){w=y.coordinates;var nt=y.type;switch(N=0,nt){case null:break;case"Point":if(s(w,F,Ft,q,W)===!1)return!1;F++,q++;break;case"LineString":case"MultiPoint":for(h=0;h<w.length;h++){if(s(w[h],F,Ft,q,W)===!1)return!1;F++,nt==="MultiPoint"&&q++}nt==="LineString"&&q++;break;case"Polygon":case"MultiLineString":for(h=0;h<w.length;h++){for(d=0;d<w[h].length-N;d++){if(s(w[h][d],F,Ft,q,W)===!1)return!1;F++}nt==="MultiLineString"&&q++,nt==="Polygon"&&W++}nt==="Polygon"&&q++;break;case"MultiPolygon":for(h=0;h<w.length;h++){for(W=0,d=0;d<w[h].length;d++){for(m=0;m<w[h][d].length-N;m++){if(s(w[h][d][m],F,Ft,q,W)===!1)return!1;F++}W++}q++}break;case"GeometryCollection":for(h=0;h<y.geometries.length;h++)if(oa(y.geometries[h],s)===!1)return!1;break;default:throw new Error("Unknown Geometry Type")}}}}}function Ae(i,s){if(i.type==="Feature")s(i,0);else if(i.type==="FeatureCollection")for(var o=0;o<i.features.length&&s(i.features[o],o)!==!1;o++);}function qi(i,s,o){var h=o;return Ae(i,function(d,m){m===0&&o===void 0?h=d:h=s(h,d,m)}),h}function Ko(i,s){var o,h,d,m,y,v,w,P,N,F,tt=0,it=i.type==="FeatureCollection",lt=i.type==="Feature",ft=it?i.features.length:1;for(o=0;o<ft;o++){for(v=it?i.features[o].geometry:lt?i.geometry:i,P=it?i.features[o].properties:lt?i.properties:{},N=it?i.features[o].bbox:lt?i.bbox:void 0,F=it?i.features[o].id:lt?i.id:void 0,w=v?v.type==="GeometryCollection":!1,y=w?v.geometries.length:1,d=0;d<y;d++){if(m=w?v.geometries[d]:v,m===null){if(s(null,tt,P,N,F)===!1)return!1;continue}switch(m.type){case"Point":case"LineString":case"MultiPoint":case"Polygon":case"MultiLineString":case"MultiPolygon":{if(s(m,tt,P,N,F)===!1)return!1;break}case"GeometryCollection":{for(h=0;h<m.geometries.length;h++)if(s(m.geometries[h],tt,P,N,F)===!1)return!1;break}default:throw new Error("Unknown Geometry Type")}}tt++}}function qe(i,s){Ko(i,function(o,h,d,m,y){var v=o===null?null:o.type;switch(v){case null:case"Point":case"LineString":case"Polygon":return s(ki(o,d,{bbox:m,id:y}),h,0)===!1?!1:void 0}var w;switch(v){case"MultiPoint":w="Point";break;case"MultiLineString":w="LineString";break;case"MultiPolygon":w="Polygon";break}for(var P=0;P<o.coordinates.length;P++){var N=o.coordinates[P],F={type:w,coordinates:N};if(s(ki(F,d),h,P)===!1)return!1}})}function Xo(i){if(!i)throw new Error("geojson is required");var s=[];return qe(i,function(o){Hi(o,s)}),Ee(s)}function Hi(i,s){var o=[],h=i.geometry;if(h!==null){switch(h.type){case"Polygon":o=Ke(h);break;case"LineString":o=[Ke(h)]}o.forEach(function(d){var m=Yo(d,i.properties);m.forEach(function(y){y.id=s.length,s.push(y)})})}}function Yo(i,s){var o=[];return i.reduce(function(h,d){var m=gi([h,d],s);return m.bbox=dn(h,d),o.push(m),d}),o}function dn(i,s){var o=i[0],h=i[1],d=s[0],m=s[1],y=o<d?o:d,v=h<m?h:m,w=o>d?o:d,P=h>m?h:m;return[y,v,w,P]}var Vn=Xo,$n=A(Li(),1);function Jo(i,s){var o={},h=[];if(i.type==="LineString"&&(i=ki(i)),s.type==="LineString"&&(s=ki(s)),i.type==="Feature"&&s.type==="Feature"&&i.geometry!==null&&s.geometry!==null&&i.geometry.type==="LineString"&&s.geometry.type==="LineString"&&i.geometry.coordinates.length===2&&s.geometry.coordinates.length===2){var d=ai(i,s);return d&&h.push(d),Ee(h)}var m=(0,$n.default)();return m.load(Vn(s)),Ae(Vn(i),function(y){Ae(m.search(y),function(v){var w=ai(y,v);if(w){var P=Ke(w).join(",");o[P]||(o[P]=!0,h.push(w))}})}),Ee(h)}function ai(i,s){var o=Ke(i),h=Ke(s);if(o.length!==2)throw new Error("<intersects> line1 must only contain 2 coordinates");if(h.length!==2)throw new Error("<intersects> line2 must only contain 2 coordinates");var d=o[0][0],m=o[0][1],y=o[1][0],v=o[1][1],w=h[0][0],P=h[0][1],N=h[1][0],F=h[1][1],tt=(F-P)*(y-d)-(N-w)*(v-m),it=(N-w)*(m-P)-(F-P)*(d-w),lt=(y-d)*(m-P)-(v-m)*(d-w);if(tt===0)return null;var ft=it/tt,vt=lt/tt;if(ft>=0&&ft<=1&&vt>=0&&vt<=1){var Ft=d+ft*(y-d),z=m+ft*(v-m);return Bi([Ft,z])}return null}var Xe=Jo,vr=A(Li(),1);function ha(i,s,o){o===void 0&&(o={});var h=Ze(i),d=Ze(s),m=Ue(d[1]-h[1]),y=Ue(d[0]-h[0]),v=Ue(h[1]),w=Ue(d[1]),P=Math.pow(Math.sin(m/2),2)+Math.pow(Math.sin(y/2),2)*Math.cos(v)*Math.cos(w);return Wo(2*Math.atan2(Math.sqrt(P),Math.sqrt(1-P)),o.units)}var Si=ha;function ri(i){var s=i[0],o=i[1],h=i[2],d=i[3],m=Si(i.slice(0,2),[h,o]),y=Si(i.slice(0,2),[s,d]);if(m>=y){var v=(o+d)/2;return[s,v-(h-s)/2,h,v+(h-s)/2]}else{var w=(s+h)/2;return[w-(d-o)/2,o,w+(d-o)/2,d]}}var Qo=ri;function yi(i){var s=[1/0,1/0,-1/0,-1/0];return oa(i,function(o){s[0]>o[0]&&(s[0]=o[0]),s[1]>o[1]&&(s[1]=o[1]),s[2]<o[0]&&(s[2]=o[0]),s[3]<o[1]&&(s[3]=o[1])}),s}yi.default=yi;var fn=yi;function oi(i,s){s===void 0&&(s={});var o=s.precision,h=s.coordinates,d=s.mutate;if(o=o==null||isNaN(o)?6:o,h=h==null||isNaN(h)?3:h,!i)throw new Error("<geojson> is required");if(typeof o!="number")throw new Error("<precision> must be a number");if(typeof h!="number")throw new Error("<coordinates> must be a number");(d===!1||d===void 0)&&(i=JSON.parse(JSON.stringify(i)));var m=Math.pow(10,o);return oa(i,function(y){Wn(y,m,h)}),i}function Wn(i,s,o){i.length>o&&i.splice(o,i.length);for(var h=0;h<i.length;h++)i[h]=Math.round(i[h]*s)/s;return i}var Ar=oi;function Kn(i,s,o){if(o===void 0&&(o={}),o.final===!0)return Xn(i,s);var h=Ze(i),d=Ze(s),m=Ue(h[0]),y=Ue(d[0]),v=Ue(h[1]),w=Ue(d[1]),P=Math.sin(y-m)*Math.cos(w),N=Math.cos(v)*Math.sin(w)-Math.sin(v)*Math.cos(w)*Math.cos(y-m);return Pe(Math.atan2(P,N))}function Xn(i,s){var o=Kn(s,i);return o=(o+180)%360,o}function Yn(i,s,o,h){h===void 0&&(h={});var d=Ze(i),m=Ue(d[0]),y=Ue(d[1]),v=Ue(o),w=cn(s,h.units),P=Math.asin(Math.sin(y)*Math.cos(w)+Math.cos(y)*Math.sin(w)*Math.cos(v)),N=m+Math.atan2(Math.sin(v)*Math.sin(w)*Math.cos(y),Math.cos(w)-Math.sin(y)*Math.sin(P)),F=Pe(N),tt=Pe(P);return Bi([F,tt],h.properties)}function Jn(i,s,o){o===void 0&&(o={});var h=Bi([1/0,1/0],{dist:1/0}),d=0;return qe(i,function(m){for(var y=Ke(m),v=0;v<y.length-1;v++){var w=Bi(y[v]);w.properties.dist=Si(s,w,o);var P=Bi(y[v+1]);P.properties.dist=Si(s,P,o);var N=Si(w,P,o),F=Math.max(w.properties.dist,P.properties.dist),tt=Kn(w,P),it=Yn(s,F,tt+90,o),lt=Yn(s,F,tt-90,o),ft=Xe(gi([it.geometry.coordinates,lt.geometry.coordinates]),gi([w.geometry.coordinates,P.geometry.coordinates])),vt=null;ft.features.length>0&&(vt=ft.features[0],vt.properties.dist=Si(s,vt,o),vt.properties.location=d+Si(w,vt,o)),w.properties.dist<h.properties.dist&&(h=w,h.properties.index=v,h.properties.location=d),P.properties.dist<h.properties.dist&&(h=P,h.properties.index=v+1,h.properties.location=d+N),vt&&vt.properties.dist<h.properties.dist&&(h=vt,h.properties.index=v),d+=N}}),h}var Vi=Jn;function Qn(i,s){if(!i)throw new Error("line is required");if(!s)throw new Error("splitter is required");var o=ra(i),h=ra(s);if(o!=="LineString")throw new Error("line must be LineString");if(h==="FeatureCollection")throw new Error("splitter cannot be a FeatureCollection");if(h==="GeometryCollection")throw new Error("splitter cannot be a GeometryCollection");var d=Ar(s,{precision:7});switch(h){case"Point":return es(i,d);case"MultiPoint":return ts(i,d);case"LineString":case"MultiLineString":case"Polygon":case"MultiPolygon":return ts(i,Xe(i,d))}}function ts(i,s){var o=[],h=(0,vr.default)();return qe(s,function(d){if(o.forEach(function(v,w){v.id=w}),!o.length)o=es(i,d).features,o.forEach(function(v){v.bbox||(v.bbox=Qo(fn(v)))}),h.load(Ee(o));else{var m=h.search(d);if(m.features.length){var y=Mr(d,m);o=o.filter(function(v){return v.id!==y.id}),h.remove(y),Ae(es(y,d),function(v){o.push(v),h.insert(v)})}}}),Ee(o)}function es(i,s){var o=[],h=Ke(i)[0],d=Ke(i)[i.geometry.coordinates.length-1];if($i(h,Ze(s))||$i(d,Ze(s)))return Ee([i]);var m=(0,vr.default)(),y=Vn(i);m.load(y);var v=m.search(s);if(!v.features.length)return Ee([i]);var w=Mr(s,v),P=[h],N=qi(y,function(F,tt,it){var lt=Ke(tt)[1],ft=Ze(s);return it===w.id?(F.push(ft),o.push(gi(F)),$i(ft,lt)?[ft]:[ft,lt]):(F.push(lt),F)},P);return N.length>1&&o.push(gi(N)),Ee(o)}function Mr(i,s){if(!s.features.length)throw new Error("lines must contain features");if(s.features.length===1)return s.features[0];var o,h=1/0;return Ae(s,function(d){var m=Vi(d,i),y=m.properties.dist;y<h&&(o=d,h=y)}),o}function $i(i,s){return i[0]===s[0]&&i[1]===s[1]}var th=Qn;function pn(i,s,o){if(o===void 0&&(o={}),!i)throw new Error("point is required");if(!s)throw new Error("polygon is required");var h=Ze(i),d=Hn(s),m=d.type,y=s.bbox,v=d.coordinates;if(y&&Lr(h,y)===!1)return!1;m==="Polygon"&&(v=[v]);for(var w=!1,P=0;P<v.length&&!w;P++)if(xr(h,v[P][0],o.ignoreBoundary)){for(var N=!1,F=1;F<v[P].length&&!N;)xr(h,v[P][F],!o.ignoreBoundary)&&(N=!0),F++;N||(w=!0)}return w}function xr(i,s,o){var h=!1;s[0][0]===s[s.length-1][0]&&s[0][1]===s[s.length-1][1]&&(s=s.slice(0,s.length-1));for(var d=0,m=s.length-1;d<s.length;m=d++){var y=s[d][0],v=s[d][1],w=s[m][0],P=s[m][1],N=i[1]*(y-w)+v*(w-i[0])+P*(i[0]-y)===0&&(y-i[0])*(w-i[0])<=0&&(v-i[1])*(P-i[1])<=0;if(N)return!o;var F=v>i[1]!=P>i[1]&&i[0]<(w-y)*(i[1]-v)/(P-v)+y;F&&(h=!h)}return h}function Lr(i,s){return s[0]<=i[0]&&s[1]<=i[1]&&s[2]>=i[0]&&s[3]>=i[1]}function eh(i,s,o){o===void 0&&(o={});for(var h=Ze(i),d=Ke(s),m=0;m<d.length-1;m++){var y=!1;if(o.ignoreEndVertices&&(m===0&&(y="start"),m===d.length-2&&(y="end"),m===0&&m+1===d.length-1&&(y="both")),Ye(d[m],d[m+1],h,y,typeof o.epsilon>"u"?null:o.epsilon))return!0}return!1}function Ye(i,s,o,h,d){var m=o[0],y=o[1],v=i[0],w=i[1],P=s[0],N=s[1],F=o[0]-v,tt=o[1]-w,it=P-v,lt=N-w,ft=F*lt-tt*it;if(d!==null){if(Math.abs(ft)>d)return!1}else if(ft!==0)return!1;if(h){if(h==="start")return Math.abs(it)>=Math.abs(lt)?it>0?v<m&&m<=P:P<=m&&m<v:lt>0?w<y&&y<=N:N<=y&&y<w;if(h==="end")return Math.abs(it)>=Math.abs(lt)?it>0?v<=m&&m<P:P<m&&m<=v:lt>0?w<=y&&y<N:N<y&&y<=w;if(h==="both")return Math.abs(it)>=Math.abs(lt)?it>0?v<m&&m<P:P<m&&m<v:lt>0?w<y&&y<N:N<y&&y<w}else return Math.abs(it)>=Math.abs(lt)?it>0?v<=m&&m<=P:P<=m&&m<=v:lt>0?w<=y&&y<=N:N<=y&&y<=w;return!1}var vi=eh;function ih(i,s){var o=Hn(i),h=Hn(s),d=o.type,m=h.type,y=o.coordinates,v=h.coordinates;switch(d){case"Point":switch(m){case"Point":return ns(y,v);default:throw new Error("feature2 "+m+" geometry not supported")}case"MultiPoint":switch(m){case"Point":return is(o,h);case"MultiPoint":return nh(o,h);default:throw new Error("feature2 "+m+" geometry not supported")}case"LineString":switch(m){case"Point":return vi(h,o,{ignoreEndVertices:!0});case"LineString":return _n(o,h);case"MultiPoint":return br(o,h);default:throw new Error("feature2 "+m+" geometry not supported")}case"Polygon":switch(m){case"Point":return pn(h,o,{ignoreBoundary:!0});case"LineString":return ah(o,h);case"Polygon":return Wi(o,h);case"MultiPoint":return sh(o,h);default:throw new Error("feature2 "+m+" geometry not supported")}default:throw new Error("feature1 "+d+" geometry not supported")}}function is(i,s){var o,h=!1;for(o=0;o<i.coordinates.length;o++)if(ns(i.coordinates[o],s.coordinates)){h=!0;break}return h}function nh(i,s){for(var o=0,h=s.coordinates;o<h.length;o++){for(var d=h[o],m=!1,y=0,v=i.coordinates;y<v.length;y++){var w=v[y];if(ns(d,w)){m=!0;break}}if(!m)return!1}return!0}function br(i,s){for(var o=!1,h=0,d=s.coordinates;h<d.length;h++){var m=d[h];if(vi(m,i,{ignoreEndVertices:!0})&&(o=!0),!vi(m,i))return!1}return!!o}function sh(i,s){for(var o=0,h=s.coordinates;o<h.length;o++){var d=h[o];if(!pn(d,i,{ignoreBoundary:!0}))return!1}return!0}function _n(i,s){for(var o=!1,h=0,d=s.coordinates;h<d.length;h++){var m=d[h];if(vi({type:"Point",coordinates:m},i,{ignoreEndVertices:!0})&&(o=!0),!vi({type:"Point",coordinates:m},i,{ignoreEndVertices:!1}))return!1}return o}function ah(i,s){var o=!1,h=0,d=fn(i),m=fn(s);if(!la(d,m))return!1;for(h;h<s.coordinates.length-1;h++){var y=rh(s.coordinates[h],s.coordinates[h+1]);if(pn({type:"Point",coordinates:y},i,{ignoreBoundary:!0})){o=!0;break}}return o}function Wi(i,s){if(i.type==="Feature"&&i.geometry===null||s.type==="Feature"&&s.geometry===null)return!1;var o=fn(i),h=fn(s);if(!la(o,h))return!1;for(var d=Hn(s).coordinates,m=0,y=d;m<y.length;m++)for(var v=y[m],w=0,P=v;w<P.length;w++){var N=P[w];if(!pn(N,i))return!1}return!0}function la(i,s){return!(i[0]>s[0]||i[2]<s[2]||i[1]>s[1]||i[3]<s[3])}function ns(i,s){return i[0]===s[0]&&i[1]===s[1]}function rh(i,s){return[(i[0]+s[0])/2,(i[1]+s[1])/2]}var hi=A(pi()),ua=i=>()=>i,ss=i=>{let s=i?(o,h)=>h.minus(o).abs().isLessThanOrEqualTo(i):ua(!1);return(o,h)=>s(o,h)?0:o.comparedTo(h)};function mn(i){let s=i?(o,h,d,m,y)=>o.exponentiatedBy(2).isLessThanOrEqualTo(m.minus(h).exponentiatedBy(2).plus(y.minus(d).exponentiatedBy(2)).times(i)):ua(!1);return(o,h,d)=>{let m=o.x,y=o.y,v=d.x,w=d.y,P=y.minus(w).times(h.x.minus(v)).minus(m.minus(v).times(h.y.minus(w)));return s(P,m,y,v,w)?0:P.comparedTo(0)}}var oh=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,Ki=Math.ceil,me=Math.floor,Me="[BigNumber Error] ",ca=Me+"Number primitive has more than 15 significant digits: ",He=1e14,kt=14,as=9007199254740991,rs=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],li=1e7,le=1e9;function wr(i){var s,o,h,d=z.prototype={constructor:z,toString:null,valueOf:null},m=new z(1),y=20,v=4,w=-7,P=21,N=-1e7,F=1e7,tt=!1,it=1,lt=0,ft={prefix:"",groupSize:3,secondaryGroupSize:0,groupSeparator:",",decimalSeparator:".",fractionGroupSize:0,fractionGroupSeparator:" ",suffix:""},vt="0123456789abcdefghijklmnopqrstuvwxyz",Ft=!0;function z(E,S){var O,D,I,R,V,H,$,Q,J=this;if(!(J instanceof z))return new z(E,S);if(S==null){if(E&&E._isBigNumber===!0){J.s=E.s,!E.c||E.e>F?J.c=J.e=null:E.e<N?J.c=[J.e=0]:(J.e=E.e,J.c=E.c.slice());return}if((H=typeof E=="number")&&E*0==0){if(J.s=1/E<0?(E=-E,-1):1,E===~~E){for(R=0,V=E;V>=10;V/=10,R++);R>F?J.c=J.e=null:(J.e=R,J.c=[E]);return}Q=String(E)}else{if(!oh.test(Q=String(E)))return h(J,Q,H);J.s=Q.charCodeAt(0)==45?(Q=Q.slice(1),-1):1}(R=Q.indexOf("."))>-1&&(Q=Q.replace(".","")),(V=Q.search(/e/i))>0?(R<0&&(R=V),R+=+Q.slice(V+1),Q=Q.substring(0,V)):R<0&&(R=Q.length)}else{if(e(S,2,vt.length,"Base"),S==10&&Ft)return J=new z(E),X(J,y+J.e+1,v);if(Q=String(E),H=typeof E=="number"){if(E*0!=0)return h(J,Q,H,S);if(J.s=1/E<0?(Q=Q.slice(1),-1):1,z.DEBUG&&Q.replace(/^0\.0*|\./,"").length>15)throw Error(ca+E)}else J.s=Q.charCodeAt(0)===45?(Q=Q.slice(1),-1):1;for(O=vt.slice(0,S),R=V=0,$=Q.length;V<$;V++)if(O.indexOf(D=Q.charAt(V))<0){if(D=="."){if(V>R){R=$;continue}}else if(!I&&(Q==Q.toUpperCase()&&(Q=Q.toLowerCase())||Q==Q.toLowerCase()&&(Q=Q.toUpperCase()))){I=!0,V=-1,R=0;continue}return h(J,String(E),H,S)}H=!1,Q=o(Q,S,10,J.s),(R=Q.indexOf("."))>-1?Q=Q.replace(".",""):R=Q.length}for(V=0;Q.charCodeAt(V)===48;V++);for($=Q.length;Q.charCodeAt(--$)===48;);if(Q=Q.slice(V,++$)){if($-=V,H&&z.DEBUG&&$>15&&(E>as||E!==me(E)))throw Error(ca+J.s*E);if((R=R-V-1)>F)J.c=J.e=null;else if(R<N)J.c=[J.e=0];else{if(J.e=R,J.c=[],V=(R+1)%kt,R<0&&(V+=kt),V<$){for(V&&J.c.push(+Q.slice(0,V)),$-=kt;V<$;)J.c.push(+Q.slice(V,V+=kt));V=kt-(Q=Q.slice(V)).length}else V-=$;for(;V--;Q+="0");J.c.push(+Q)}}else J.c=[J.e=0]}z.clone=wr,z.ROUND_UP=0,z.ROUND_DOWN=1,z.ROUND_CEIL=2,z.ROUND_FLOOR=3,z.ROUND_HALF_UP=4,z.ROUND_HALF_DOWN=5,z.ROUND_HALF_EVEN=6,z.ROUND_HALF_CEIL=7,z.ROUND_HALF_FLOOR=8,z.EUCLID=9,z.config=z.set=function(E){var S,O;if(E!=null)if(typeof E=="object"){if(E.hasOwnProperty(S="DECIMAL_PLACES")&&(O=E[S],e(O,0,le,S),y=O),E.hasOwnProperty(S="ROUNDING_MODE")&&(O=E[S],e(O,0,8,S),v=O),E.hasOwnProperty(S="EXPONENTIAL_AT")&&(O=E[S],O&&O.pop?(e(O[0],-le,0,S),e(O[1],0,le,S),w=O[0],P=O[1]):(e(O,-le,le,S),w=-(P=O<0?-O:O))),E.hasOwnProperty(S="RANGE"))if(O=E[S],O&&O.pop)e(O[0],-le,-1,S),e(O[1],1,le,S),N=O[0],F=O[1];else if(e(O,-le,le,S),O)N=-(F=O<0?-O:O);else throw Error(Me+S+" cannot be zero: "+O);if(E.hasOwnProperty(S="CRYPTO"))if(O=E[S],O===!!O)if(O)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))tt=O;else throw tt=!O,Error(Me+"crypto unavailable");else tt=O;else throw Error(Me+S+" not true or false: "+O);if(E.hasOwnProperty(S="MODULO_MODE")&&(O=E[S],e(O,0,9,S),it=O),E.hasOwnProperty(S="POW_PRECISION")&&(O=E[S],e(O,0,le,S),lt=O),E.hasOwnProperty(S="FORMAT"))if(O=E[S],typeof O=="object")ft=O;else throw Error(Me+S+" not an object: "+O);if(E.hasOwnProperty(S="ALPHABET"))if(O=E[S],typeof O=="string"&&!/^.?$|[+\-.\s]|(.).*\1/.test(O))Ft=O.slice(0,10)=="0123456789",vt=O;else throw Error(Me+S+" invalid: "+O)}else throw Error(Me+"Object expected: "+E);return{DECIMAL_PLACES:y,ROUNDING_MODE:v,EXPONENTIAL_AT:[w,P],RANGE:[N,F],CRYPTO:tt,MODULO_MODE:it,POW_PRECISION:lt,FORMAT:ft,ALPHABET:vt}},z.isBigNumber=function(E){if(!E||E._isBigNumber!==!0)return!1;if(!z.DEBUG)return!0;var S,O,D=E.c,I=E.e,R=E.s;t:if({}.toString.call(D)=="[object Array]"){if((R===1||R===-1)&&I>=-le&&I<=le&&I===me(I)){if(D[0]===0){if(I===0&&D.length===1)return!0;break t}if(S=(I+1)%kt,S<1&&(S+=kt),String(D[0]).length==S){for(S=0;S<D.length;S++)if(O=D[S],O<0||O>=He||O!==me(O))break t;if(O!==0)return!0}}}else if(D===null&&I===null&&(R===null||R===1||R===-1))return!0;throw Error(Me+"Invalid BigNumber: "+E)},z.maximum=z.max=function(){return W(arguments,-1)},z.minimum=z.min=function(){return W(arguments,1)},z.random=function(){var E=9007199254740992,S=Math.random()*E&2097151?function(){return me(Math.random()*E)}:function(){return(Math.random()*1073741824|0)*8388608+(Math.random()*8388608|0)};return function(O){var D,I,R,V,H,$=0,Q=[],J=new z(m);if(O==null?O=y:e(O,0,le),V=Ki(O/kt),tt)if(crypto.getRandomValues){for(D=crypto.getRandomValues(new Uint32Array(V*=2));$<V;)H=D[$]*131072+(D[$+1]>>>11),H>=9e15?(I=crypto.getRandomValues(new Uint32Array(2)),D[$]=I[0],D[$+1]=I[1]):(Q.push(H%1e14),$+=2);$=V/2}else if(crypto.randomBytes){for(D=crypto.randomBytes(V*=7);$<V;)H=(D[$]&31)*281474976710656+D[$+1]*1099511627776+D[$+2]*4294967296+D[$+3]*16777216+(D[$+4]<<16)+(D[$+5]<<8)+D[$+6],H>=9e15?crypto.randomBytes(7).copy(D,$):(Q.push(H%1e14),$+=7);$=V/7}else throw tt=!1,Error(Me+"crypto unavailable");if(!tt)for(;$<V;)H=S(),H<9e15&&(Q[$++]=H%1e14);for(V=Q[--$],O%=kt,V&&O&&(H=rs[kt-O],Q[$]=me(V/H)*H);Q[$]===0;Q.pop(),$--);if($<0)Q=[R=0];else{for(R=-1;Q[0]===0;Q.splice(0,1),R-=kt);for($=1,H=Q[0];H>=10;H/=10,$++);$<kt&&(R-=kt-$)}return J.e=R,J.c=Q,J}}(),z.sum=function(){for(var E=1,S=arguments,O=new z(S[0]);E<S.length;)O=O.plus(S[E++]);return O},o=function(){var E="0123456789";function S(O,D,I,R){for(var V,H=[0],$,Q=0,J=O.length;Q<J;){for($=H.length;$--;H[$]*=D);for(H[0]+=R.indexOf(O.charAt(Q++)),V=0;V<H.length;V++)H[V]>I-1&&(H[V+1]==null&&(H[V+1]=0),H[V+1]+=H[V]/I|0,H[V]%=I)}return H.reverse()}return function(O,D,I,R,V){var H,$,Q,J,ot,gt,At,bt,Vt=O.indexOf("."),Kt=y,Ut=v;for(Vt>=0&&(J=lt,lt=0,O=O.replace(".",""),bt=new z(D),gt=bt.pow(O.length-Vt),lt=J,bt.c=S(_(Ie(gt.c),gt.e,"0"),10,I,E),bt.e=bt.c.length),At=S(O,D,I,V?(H=vt,E):(H=E,vt)),Q=J=At.length;At[--J]==0;At.pop());if(!At[0])return H.charAt(0);if(Vt<0?--Q:(gt.c=At,gt.e=Q,gt.s=R,gt=s(gt,bt,Kt,Ut,I),At=gt.c,ot=gt.r,Q=gt.e),$=Q+Kt+1,Vt=At[$],J=I/2,ot=ot||$<0||At[$+1]!=null,ot=Ut<4?(Vt!=null||ot)&&(Ut==0||Ut==(gt.s<0?3:2)):Vt>J||Vt==J&&(Ut==4||ot||Ut==6&&At[$-1]&1||Ut==(gt.s<0?8:7)),$<1||!At[0])O=ot?_(H.charAt(1),-Kt,H.charAt(0)):H.charAt(0);else{if(At.length=$,ot)for(--I;++At[--$]>I;)At[$]=0,$||(++Q,At=[1].concat(At));for(J=At.length;!At[--J];);for(Vt=0,O="";Vt<=J;O+=H.charAt(At[Vt++]));O=_(O,Q,H.charAt(0))}return O}}(),s=function(){function E(D,I,R){var V,H,$,Q,J=0,ot=D.length,gt=I%li,At=I/li|0;for(D=D.slice();ot--;)$=D[ot]%li,Q=D[ot]/li|0,V=At*$+Q*gt,H=gt*$+V%li*li+J,J=(H/R|0)+(V/li|0)+At*Q,D[ot]=H%R;return J&&(D=[J].concat(D)),D}function S(D,I,R,V){var H,$;if(R!=V)$=R>V?1:-1;else for(H=$=0;H<R;H++)if(D[H]!=I[H]){$=D[H]>I[H]?1:-1;break}return $}function O(D,I,R,V){for(var H=0;R--;)D[R]-=H,H=D[R]<I[R]?1:0,D[R]=H*V+D[R]-I[R];for(;!D[0]&&D.length>1;D.splice(0,1));}return function(D,I,R,V,H){var $,Q,J,ot,gt,At,bt,Vt,Kt,Ut,Xt,Be,Tr,fh,ph,Ai,_a,ti=D.s==I.s?1:-1,Re=D.c,oe=I.c;if(!Re||!Re[0]||!oe||!oe[0])return new z(!D.s||!I.s||(Re?oe&&Re[0]==oe[0]:!oe)?NaN:Re&&Re[0]==0||!oe?ti*0:ti/0);for(Vt=new z(ti),Kt=Vt.c=[],Q=D.e-I.e,ti=R+Q+1,H||(H=He,Q=Oe(D.e/kt)-Oe(I.e/kt),ti=ti/kt|0),J=0;oe[J]==(Re[J]||0);J++);if(oe[J]>(Re[J]||0)&&Q--,ti<0)Kt.push(1),ot=!0;else{for(fh=Re.length,Ai=oe.length,J=0,ti+=2,gt=me(H/(oe[0]+1)),gt>1&&(oe=E(oe,gt,H),Re=E(Re,gt,H),Ai=oe.length,fh=Re.length),Tr=Ai,Ut=Re.slice(0,Ai),Xt=Ut.length;Xt<Ai;Ut[Xt++]=0);_a=oe.slice(),_a=[0].concat(_a),ph=oe[0],oe[1]>=H/2&&ph++;do{if(gt=0,$=S(oe,Ut,Ai,Xt),$<0){if(Be=Ut[0],Ai!=Xt&&(Be=Be*H+(Ut[1]||0)),gt=me(Be/ph),gt>1)for(gt>=H&&(gt=H-1),At=E(oe,gt,H),bt=At.length,Xt=Ut.length;S(At,Ut,bt,Xt)==1;)gt--,O(At,Ai<bt?_a:oe,bt,H),bt=At.length,$=1;else gt==0&&($=gt=1),At=oe.slice(),bt=At.length;if(bt<Xt&&(At=[0].concat(At)),O(Ut,At,Xt,H),Xt=Ut.length,$==-1)for(;S(oe,Ut,Ai,Xt)<1;)gt++,O(Ut,Ai<Xt?_a:oe,Xt,H),Xt=Ut.length}else $===0&&(gt++,Ut=[0]);Kt[J++]=gt,Ut[0]?Ut[Xt++]=Re[Tr]||0:(Ut=[Re[Tr]],Xt=1)}while((Tr++<fh||Ut[0]!=null)&&ti--);ot=Ut[0]!=null,Kt[0]||Kt.splice(0,1)}if(H==He){for(J=1,ti=Kt[0];ti>=10;ti/=10,J++);X(Vt,R+(Vt.e=J+Q*kt-1)+1,V,ot)}else Vt.e=Q,Vt.r=+ot;return Vt}}();function q(E,S,O,D){var I,R,V,H,$;if(O==null?O=v:e(O,0,8),!E.c)return E.toString();if(I=E.c[0],V=E.e,S==null)$=Ie(E.c),$=D==1||D==2&&(V<=w||V>=P)?u($,V):_($,V,"0");else if(E=X(new z(E),S,O),R=E.e,$=Ie(E.c),H=$.length,D==1||D==2&&(S<=R||R<=w)){for(;H<S;$+="0",H++);$=u($,R)}else if(S-=V,$=_($,R,"0"),R+1>H){if(--S>0)for($+=".";S--;$+="0");}else if(S+=R-H,S>0)for(R+1==H&&($+=".");S--;$+="0");return E.s<0&&I?"-"+$:$}function W(E,S){for(var O,D,I=1,R=new z(E[0]);I<E.length;I++)D=new z(E[I]),(!D.s||(O=Ti(R,D))===S||O===0&&R.s===S)&&(R=D);return R}function nt(E,S,O){for(var D=1,I=S.length;!S[--I];S.pop());for(I=S[0];I>=10;I/=10,D++);return(O=D+O*kt-1)>F?E.c=E.e=null:O<N?E.c=[E.e=0]:(E.e=O,E.c=S),E}h=function(){var E=/^(-?)0([xbo])(?=\w[\w.]*$)/i,S=/^([^.]+)\.$/,O=/^\.([^.]+)$/,D=/^-?(Infinity|NaN)$/,I=/^\s*\+(?=[\w.])|^\s+|\s+$/g;return function(R,V,H,$){var Q,J=H?V:V.replace(I,"");if(D.test(J))R.s=isNaN(J)?null:J<0?-1:1;else{if(!H&&(J=J.replace(E,function(ot,gt,At){return Q=(At=At.toLowerCase())=="x"?16:At=="b"?2:8,!$||$==Q?gt:ot}),$&&(Q=$,J=J.replace(S,"$1").replace(O,"0.$1")),V!=J))return new z(J,Q);if(z.DEBUG)throw Error(Me+"Not a"+($?" base "+$:"")+" number: "+V);R.s=null}R.c=R.e=null}}();function X(E,S,O,D){var I,R,V,H,$,Q,J,ot=E.c,gt=rs;if(ot){t:{for(I=1,H=ot[0];H>=10;H/=10,I++);if(R=S-I,R<0)R+=kt,V=S,$=ot[Q=0],J=me($/gt[I-V-1]%10);else if(Q=Ki((R+1)/kt),Q>=ot.length)if(D){for(;ot.length<=Q;ot.push(0));$=J=0,I=1,R%=kt,V=R-kt+1}else break t;else{for($=H=ot[Q],I=1;H>=10;H/=10,I++);R%=kt,V=R-kt+I,J=V<0?0:me($/gt[I-V-1]%10)}if(D=D||S<0||ot[Q+1]!=null||(V<0?$:$%gt[I-V-1]),D=O<4?(J||D)&&(O==0||O==(E.s<0?3:2)):J>5||J==5&&(O==4||D||O==6&&(R>0?V>0?$/gt[I-V]:0:ot[Q-1])%10&1||O==(E.s<0?8:7)),S<1||!ot[0])return ot.length=0,D?(S-=E.e+1,ot[0]=gt[(kt-S%kt)%kt],E.e=-S||0):ot[0]=E.e=0,E;if(R==0?(ot.length=Q,H=1,Q--):(ot.length=Q+1,H=gt[kt-R],ot[Q]=V>0?me($/gt[I-V]%gt[V])*H:0),D)for(;;)if(Q==0){for(R=1,V=ot[0];V>=10;V/=10,R++);for(V=ot[0]+=H,H=1;V>=10;V/=10,H++);R!=H&&(E.e++,ot[0]==He&&(ot[0]=1));break}else{if(ot[Q]+=H,ot[Q]!=He)break;ot[Q--]=0,H=1}for(R=ot.length;ot[--R]===0;ot.pop());}E.e>F?E.c=E.e=null:E.e<N&&(E.c=[E.e=0])}return E}function et(E){var S,O=E.e;return O===null?E.toString():(S=Ie(E.c),S=O<=w||O>=P?u(S,O):_(S,O,"0"),E.s<0?"-"+S:S)}return d.absoluteValue=d.abs=function(){var E=new z(this);return E.s<0&&(E.s=1),E},d.comparedTo=function(E,S){return Ti(this,new z(E,S))},d.decimalPlaces=d.dp=function(E,S){var O,D,I,R=this;if(E!=null)return e(E,0,le),S==null?S=v:e(S,0,8),X(new z(R),E+R.e+1,S);if(!(O=R.c))return null;if(D=((I=O.length-1)-Oe(this.e/kt))*kt,I=O[I])for(;I%10==0;I/=10,D--);return D<0&&(D=0),D},d.dividedBy=d.div=function(E,S){return s(this,new z(E,S),y,v)},d.dividedToIntegerBy=d.idiv=function(E,S){return s(this,new z(E,S),0,1)},d.exponentiatedBy=d.pow=function(E,S){var O,D,I,R,V,H,$,Q,J,ot=this;if(E=new z(E),E.c&&!E.isInteger())throw Error(Me+"Exponent not an integer: "+et(E));if(S!=null&&(S=new z(S)),H=E.e>14,!ot.c||!ot.c[0]||ot.c[0]==1&&!ot.e&&ot.c.length==1||!E.c||!E.c[0])return J=new z(Math.pow(+et(ot),H?E.s*(2-r(E)):+et(E))),S?J.mod(S):J;if($=E.s<0,S){if(S.c?!S.c[0]:!S.s)return new z(NaN);D=!$&&ot.isInteger()&&S.isInteger(),D&&(ot=ot.mod(S))}else{if(E.e>9&&(ot.e>0||ot.e<-1||(ot.e==0?ot.c[0]>1||H&&ot.c[1]>=24e7:ot.c[0]<8e13||H&&ot.c[0]<=9999975e7)))return R=ot.s<0&&r(E)?-0:0,ot.e>-1&&(R=1/R),new z($?1/R:R);lt&&(R=Ki(lt/kt+2))}for(H?(O=new z(.5),$&&(E.s=1),Q=r(E)):(I=Math.abs(+et(E)),Q=I%2),J=new z(m);;){if(Q){if(J=J.times(ot),!J.c)break;R?J.c.length>R&&(J.c.length=R):D&&(J=J.mod(S))}if(I){if(I=me(I/2),I===0)break;Q=I%2}else if(E=E.times(O),X(E,E.e+1,1),E.e>14)Q=r(E);else{if(I=+et(E),I===0)break;Q=I%2}ot=ot.times(ot),R?ot.c&&ot.c.length>R&&(ot.c.length=R):D&&(ot=ot.mod(S))}return D?J:($&&(J=m.div(J)),S?J.mod(S):R?X(J,lt,v,V):J)},d.integerValue=function(E){var S=new z(this);return E==null?E=v:e(E,0,8),X(S,S.e+1,E)},d.isEqualTo=d.eq=function(E,S){return Ti(this,new z(E,S))===0},d.isFinite=function(){return!!this.c},d.isGreaterThan=d.gt=function(E,S){return Ti(this,new z(E,S))>0},d.isGreaterThanOrEqualTo=d.gte=function(E,S){return(S=Ti(this,new z(E,S)))===1||S===0},d.isInteger=function(){return!!this.c&&Oe(this.e/kt)>this.c.length-2},d.isLessThan=d.lt=function(E,S){return Ti(this,new z(E,S))<0},d.isLessThanOrEqualTo=d.lte=function(E,S){return(S=Ti(this,new z(E,S)))===-1||S===0},d.isNaN=function(){return!this.s},d.isNegative=function(){return this.s<0},d.isPositive=function(){return this.s>0},d.isZero=function(){return!!this.c&&this.c[0]==0},d.minus=function(E,S){var O,D,I,R,V=this,H=V.s;if(E=new z(E,S),S=E.s,!H||!S)return new z(NaN);if(H!=S)return E.s=-S,V.plus(E);var $=V.e/kt,Q=E.e/kt,J=V.c,ot=E.c;if(!$||!Q){if(!J||!ot)return J?(E.s=-S,E):new z(ot?V:NaN);if(!J[0]||!ot[0])return ot[0]?(E.s=-S,E):new z(J[0]?V:v==3?-0:0)}if($=Oe($),Q=Oe(Q),J=J.slice(),H=$-Q){for((R=H<0)?(H=-H,I=J):(Q=$,I=ot),I.reverse(),S=H;S--;I.push(0));I.reverse()}else for(D=(R=(H=J.length)<(S=ot.length))?H:S,H=S=0;S<D;S++)if(J[S]!=ot[S]){R=J[S]<ot[S];break}if(R&&(I=J,J=ot,ot=I,E.s=-E.s),S=(D=ot.length)-(O=J.length),S>0)for(;S--;J[O++]=0);for(S=He-1;D>H;){if(J[--D]<ot[D]){for(O=D;O&&!J[--O];J[O]=S);--J[O],J[D]+=He}J[D]-=ot[D]}for(;J[0]==0;J.splice(0,1),--Q);return J[0]?nt(E,J,Q):(E.s=v==3?-1:1,E.c=[E.e=0],E)},d.modulo=d.mod=function(E,S){var O,D,I=this;return E=new z(E,S),!I.c||!E.s||E.c&&!E.c[0]?new z(NaN):!E.c||I.c&&!I.c[0]?new z(I):(it==9?(D=E.s,E.s=1,O=s(I,E,0,3),E.s=D,O.s*=D):O=s(I,E,0,it),E=I.minus(O.times(E)),!E.c[0]&&it==1&&(E.s=I.s),E)},d.multipliedBy=d.times=function(E,S){var O,D,I,R,V,H,$,Q,J,ot,gt,At,bt,Vt,Kt,Ut=this,Xt=Ut.c,Be=(E=new z(E,S)).c;if(!Xt||!Be||!Xt[0]||!Be[0])return!Ut.s||!E.s||Xt&&!Xt[0]&&!Be||Be&&!Be[0]&&!Xt?E.c=E.e=E.s=null:(E.s*=Ut.s,!Xt||!Be?E.c=E.e=null:(E.c=[0],E.e=0)),E;for(D=Oe(Ut.e/kt)+Oe(E.e/kt),E.s*=Ut.s,$=Xt.length,ot=Be.length,$<ot&&(bt=Xt,Xt=Be,Be=bt,I=$,$=ot,ot=I),I=$+ot,bt=[];I--;bt.push(0));for(Vt=He,Kt=li,I=ot;--I>=0;){for(O=0,gt=Be[I]%Kt,At=Be[I]/Kt|0,V=$,R=I+V;R>I;)Q=Xt[--V]%Kt,J=Xt[V]/Kt|0,H=At*Q+J*gt,Q=gt*Q+H%Kt*Kt+bt[R]+O,O=(Q/Vt|0)+(H/Kt|0)+At*J,bt[R--]=Q%Vt;bt[R]=O}return O?++D:bt.splice(0,1),nt(E,bt,D)},d.negated=function(){var E=new z(this);return E.s=-E.s||null,E},d.plus=function(E,S){var O,D=this,I=D.s;if(E=new z(E,S),S=E.s,!I||!S)return new z(NaN);if(I!=S)return E.s=-S,D.minus(E);var R=D.e/kt,V=E.e/kt,H=D.c,$=E.c;if(!R||!V){if(!H||!$)return new z(I/0);if(!H[0]||!$[0])return $[0]?E:new z(H[0]?D:I*0)}if(R=Oe(R),V=Oe(V),H=H.slice(),I=R-V){for(I>0?(V=R,O=$):(I=-I,O=H),O.reverse();I--;O.push(0));O.reverse()}for(I=H.length,S=$.length,I-S<0&&(O=$,$=H,H=O,S=I),I=0;S;)I=(H[--S]=H[S]+$[S]+I)/He|0,H[S]=He===H[S]?0:H[S]%He;return I&&(H=[I].concat(H),++V),nt(E,H,V)},d.precision=d.sd=function(E,S){var O,D,I,R=this;if(E!=null&&E!==!!E)return e(E,1,le),S==null?S=v:e(S,0,8),X(new z(R),E,S);if(!(O=R.c))return null;if(I=O.length-1,D=I*kt+1,I=O[I]){for(;I%10==0;I/=10,D--);for(I=O[0];I>=10;I/=10,D++);}return E&&R.e+1>D&&(D=R.e+1),D},d.shiftedBy=function(E){return e(E,-as,as),this.times("1e"+E)},d.squareRoot=d.sqrt=function(){var E,S,O,D,I,R=this,V=R.c,H=R.s,$=R.e,Q=y+4,J=new z("0.5");if(H!==1||!V||!V[0])return new z(!H||H<0&&(!V||V[0])?NaN:V?R:1/0);if(H=Math.sqrt(+et(R)),H==0||H==1/0?(S=Ie(V),(S.length+$)%2==0&&(S+="0"),H=Math.sqrt(+S),$=Oe(($+1)/2)-($<0||$%2),H==1/0?S="5e"+$:(S=H.toExponential(),S=S.slice(0,S.indexOf("e")+1)+$),O=new z(S)):O=new z(H+""),O.c[0]){for($=O.e,H=$+Q,H<3&&(H=0);;)if(I=O,O=J.times(I.plus(s(R,I,Q,1))),Ie(I.c).slice(0,H)===(S=Ie(O.c)).slice(0,H))if(O.e<$&&--H,S=S.slice(H-3,H+1),S=="9999"||!D&&S=="4999"){if(!D&&(X(I,I.e+y+2,0),I.times(I).eq(R))){O=I;break}Q+=4,H+=4,D=1}else{(!+S||!+S.slice(1)&&S.charAt(0)=="5")&&(X(O,O.e+y+2,1),E=!O.times(O).eq(R));break}}return X(O,O.e+y+1,v,E)},d.toExponential=function(E,S){return E!=null&&(e(E,0,le),E++),q(this,E,S,1)},d.toFixed=function(E,S){return E!=null&&(e(E,0,le),E=E+this.e+1),q(this,E,S)},d.toFormat=function(E,S,O){var D,I=this;if(O==null)E!=null&&S&&typeof S=="object"?(O=S,S=null):E&&typeof E=="object"?(O=E,E=S=null):O=ft;else if(typeof O!="object")throw Error(Me+"Argument not an object: "+O);if(D=I.toFixed(E,S),I.c){var R,V=D.split("."),H=+O.groupSize,$=+O.secondaryGroupSize,Q=O.groupSeparator||"",J=V[0],ot=V[1],gt=I.s<0,At=gt?J.slice(1):J,bt=At.length;if($&&(R=H,H=$,$=R,bt-=R),H>0&&bt>0){for(R=bt%H||H,J=At.substr(0,R);R<bt;R+=H)J+=Q+At.substr(R,H);$>0&&(J+=Q+At.slice(R)),gt&&(J="-"+J)}D=ot?J+(O.decimalSeparator||"")+(($=+O.fractionGroupSize)?ot.replace(new RegExp("\\d{"+$+"}\\B","g"),"$&"+(O.fractionGroupSeparator||"")):ot):J}return(O.prefix||"")+D+(O.suffix||"")},d.toFraction=function(E){var S,O,D,I,R,V,H,$,Q,J,ot,gt,At=this,bt=At.c;if(E!=null&&(H=new z(E),!H.isInteger()&&(H.c||H.s!==1)||H.lt(m)))throw Error(Me+"Argument "+(H.isInteger()?"out of range: ":"not an integer: ")+et(H));if(!bt)return new z(At);for(S=new z(m),Q=O=new z(m),D=$=new z(m),gt=Ie(bt),R=S.e=gt.length-At.e-1,S.c[0]=rs[(V=R%kt)<0?kt+V:V],E=!E||H.comparedTo(S)>0?R>0?S:Q:H,V=F,F=1/0,H=new z(gt),$.c[0]=0;J=s(H,S,0,1),I=O.plus(J.times(D)),I.comparedTo(E)!=1;)O=D,D=I,Q=$.plus(J.times(I=Q)),$=I,S=H.minus(J.times(I=S)),H=I;return I=s(E.minus(O),D,0,1),$=$.plus(I.times(Q)),O=O.plus(I.times(D)),$.s=Q.s=At.s,R=R*2,ot=s(Q,D,R,v).minus(At).abs().comparedTo(s($,O,R,v).minus(At).abs())<1?[Q,D]:[$,O],F=V,ot},d.toNumber=function(){return+et(this)},d.toPrecision=function(E,S){return E!=null&&e(E,1,le),q(this,E,S,2)},d.toString=function(E){var S,O=this,D=O.s,I=O.e;return I===null?D?(S="Infinity",D<0&&(S="-"+S)):S="NaN":(E==null?S=I<=w||I>=P?u(Ie(O.c),I):_(Ie(O.c),I,"0"):E===10&&Ft?(O=X(new z(O),y+I+1,v),S=_(Ie(O.c),O.e,"0")):(e(E,2,vt.length,"Base"),S=o(_(Ie(O.c),I,"0"),10,E,D,!0)),D<0&&O.c[0]&&(S="-"+S)),S},d.valueOf=d.toJSON=function(){return et(this)},d._isBigNumber=!0,d[Symbol.toStringTag]="BigNumber",d[Symbol.for("nodejs.util.inspect.custom")]=d.valueOf,i!=null&&z.set(i),z}function Oe(i){var s=i|0;return i>0||i===s?s:s-1}function Ie(i){for(var s,o,h=1,d=i.length,m=i[0]+"";h<d;){for(s=i[h++]+"",o=kt-s.length;o--;s="0"+s);m+=s}for(d=m.length;m.charCodeAt(--d)===48;);return m.slice(0,d+1||1)}function Ti(i,s){var o,h,d=i.c,m=s.c,y=i.s,v=s.s,w=i.e,P=s.e;if(!y||!v)return null;if(o=d&&!d[0],h=m&&!m[0],o||h)return o?h?0:-v:y;if(y!=v)return y;if(o=y<0,h=w==P,!d||!m)return h?0:!d^o?1:-1;if(!h)return w>P^o?1:-1;for(v=(w=d.length)<(P=m.length)?w:P,y=0;y<v;y++)if(d[y]!=m[y])return d[y]>m[y]^o?1:-1;return w==P?0:w>P^o?1:-1}function e(i,s,o,h){if(i<s||i>o||i!==me(i))throw Error(Me+(h||"Argument")+(typeof i=="number"?i<s||i>o?" out of range: ":" not an integer: ":" not a primitive number: ")+String(i))}function r(i){var s=i.c.length-1;return Oe(i.e/kt)==s&&i.c[s]%2!=0}function u(i,s){return(i.length>1?i.charAt(0)+"."+i.slice(1):i)+(s<0?"e":"e+")+s}function _(i,s,o){var h,d;if(s<0){for(d=o+".";++s;d+=o);i=d+i}else if(h=i.length,++s>h){for(d=o,s-=h;--s;d+=o);i+=d}else s<h&&(i=i.slice(0,s)+"."+i.slice(s));return i}var M=wr(),B=M,j=class{constructor(i){Lt(this,"key");Lt(this,"left",null);Lt(this,"right",null);this.key=i}},Y=class extends j{constructor(i){super(i)}},st=class{constructor(){Lt(this,"size",0);Lt(this,"modificationCount",0);Lt(this,"splayCount",0)}splay(i){let s=this.root;if(s==null)return this.compare(i,i),-1;let o=null,h=null,d=null,m=null,y=s,v=this.compare,w;for(;;)if(w=v(y.key,i),w>0){let P=y.left;if(P==null||(w=v(P.key,i),w>0&&(y.left=P.right,P.right=y,y=P,P=y.left,P==null)))break;o==null?h=y:o.left=y,o=y,y=P}else if(w<0){let P=y.right;if(P==null||(w=v(P.key,i),w<0&&(y.right=P.left,P.left=y,y=P,P=y.right,P==null)))break;d==null?m=y:d.right=y,d=y,y=P}else break;return d!=null&&(d.right=y.left,y.left=m),o!=null&&(o.left=y.right,y.right=h),this.root!==y&&(this.root=y,this.splayCount++),w}splayMin(i){let s=i,o=s.left;for(;o!=null;){let h=o;s.left=h.right,h.right=s,s=h,o=s.left}return s}splayMax(i){let s=i,o=s.right;for(;o!=null;){let h=o;s.right=h.left,h.left=s,s=h,o=s.right}return s}_delete(i){if(this.root==null||this.splay(i)!=0)return null;let s=this.root,o=s,h=s.left;if(this.size--,h==null)this.root=s.right;else{let d=s.right;s=this.splayMax(h),s.right=d,this.root=s}return this.modificationCount++,o}addNewRoot(i,s){this.size++,this.modificationCount++;let o=this.root;if(o==null){this.root=i;return}s<0?(i.left=o,i.right=o.right,o.right=null):(i.right=o,i.left=o.left,o.left=null),this.root=i}_first(){let i=this.root;return i==null?null:(this.root=this.splayMin(i),this.root)}_last(){let i=this.root;return i==null?null:(this.root=this.splayMax(i),this.root)}clear(){this.root=null,this.size=0,this.modificationCount++}has(i){return this.validKey(i)&&this.splay(i)==0}defaultCompare(){return(i,s)=>i<s?-1:i>s?1:0}wrap(){return{getRoot:()=>this.root,setRoot:i=>{this.root=i},getSize:()=>this.size,getModificationCount:()=>this.modificationCount,getSplayCount:()=>this.splayCount,setSplayCount:i=>{this.splayCount=i},splay:i=>this.splay(i),has:i=>this.has(i)}}},ht=class ma extends st{constructor(o,h){super();Lt(this,"root",null);Lt(this,"compare");Lt(this,"validKey");Lt(this,Pl,"[object Set]");this.compare=o??this.defaultCompare(),this.validKey=h??(d=>d!=null&&d!=null)}delete(o){return this.validKey(o)?this._delete(o)!=null:!1}deleteAll(o){for(let h of o)this.delete(h)}forEach(o){let h=this[Symbol.iterator](),d;for(;d=h.next(),!d.done;)o(d.value,d.value,this)}add(o){let h=this.splay(o);return h!=0&&this.addNewRoot(new Y(o),h),this}addAndReturn(o){let h=this.splay(o);return h!=0&&this.addNewRoot(new Y(o),h),this.root.key}addAll(o){for(let h of o)this.add(h)}isEmpty(){return this.root==null}isNotEmpty(){return this.root!=null}single(){if(this.size==0)throw"Bad state: No element";if(this.size>1)throw"Bad state: Too many element";return this.root.key}first(){if(this.size==0)throw"Bad state: No element";return this._first().key}last(){if(this.size==0)throw"Bad state: No element";return this._last().key}lastBefore(o){if(o==null)throw"Invalid arguments(s)";if(this.root==null)return null;if(this.splay(o)<0)return this.root.key;let h=this.root.left;if(h==null)return null;let d=h.right;for(;d!=null;)h=d,d=h.right;return h.key}firstAfter(o){if(o==null)throw"Invalid arguments(s)";if(this.root==null)return null;if(this.splay(o)>0)return this.root.key;let h=this.root.right;if(h==null)return null;let d=h.left;for(;d!=null;)h=d,d=h.left;return h.key}retainAll(o){let h=new ma(this.compare,this.validKey),d=this.modificationCount;for(let m of o){if(d!=this.modificationCount)throw"Concurrent modification during iteration.";this.validKey(m)&&this.splay(m)==0&&h.add(this.root.key)}h.size!=this.size&&(this.root=h.root,this.size=h.size,this.modificationCount++)}lookup(o){return!this.validKey(o)||this.splay(o)!=0?null:this.root.key}intersection(o){let h=new ma(this.compare,this.validKey);for(let d of this)o.has(d)&&h.add(d);return h}difference(o){let h=new ma(this.compare,this.validKey);for(let d of this)o.has(d)||h.add(d);return h}union(o){let h=this.clone();return h.addAll(o),h}clone(){let o=new ma(this.compare,this.validKey);return o.size=this.size,o.root=this.copyNode(this.root),o}copyNode(o){if(o==null)return null;function h(m,y){let v,w;do{if(v=m.left,w=m.right,v!=null){let P=new Y(v.key);y.left=P,h(v,P)}if(w!=null){let P=new Y(w.key);y.right=P,m=w,y=P}}while(w!=null)}let d=new Y(o.key);return h(o,d),d}toSet(){return this.clone()}entries(){return new Ot(this.wrap())}keys(){return this[Symbol.iterator]()}values(){return this[Symbol.iterator]()}[(kl=Symbol.iterator,Pl=Symbol.toStringTag,kl)](){return new wt(this.wrap())}},pt=class{constructor(i){Lt(this,"tree");Lt(this,"path",new Array);Lt(this,"modificationCount",null);Lt(this,"splayCount");this.tree=i,this.splayCount=i.getSplayCount()}[Symbol.iterator](){return this}next(){return this.moveNext()?{done:!1,value:this.current()}:{done:!0,value:null}}current(){if(!this.path.length)return null;let i=this.path[this.path.length-1];return this.getValue(i)}rebuildPath(i){this.path.splice(0,this.path.length),this.tree.splay(i),this.path.push(this.tree.getRoot()),this.splayCount=this.tree.getSplayCount()}findLeftMostDescendent(i){for(;i!=null;)this.path.push(i),i=i.left}moveNext(){if(this.modificationCount!=this.tree.getModificationCount()){if(this.modificationCount==null){this.modificationCount=this.tree.getModificationCount();let o=this.tree.getRoot();for(;o!=null;)this.path.push(o),o=o.left;return this.path.length>0}throw"Concurrent modification during iteration."}if(!this.path.length)return!1;this.splayCount!=this.tree.getSplayCount()&&this.rebuildPath(this.path[this.path.length-1].key);let i=this.path[this.path.length-1],s=i.right;if(s!=null){for(;s!=null;)this.path.push(s),s=s.left;return!0}for(this.path.pop();this.path.length&&this.path[this.path.length-1].right===i;)i=this.path.pop();return this.path.length>0}},wt=class extends pt{getValue(i){return i.key}},Ot=class extends pt{getValue(i){return[i.key,i.key]}},xe=i=>i,ue=i=>{if(i){let s=new ht(ss(i)),o=new ht(ss(i)),h=(m,y)=>y.addAndReturn(m),d=m=>({x:h(m.x,s),y:h(m.y,o)});return d({x:new B(0),y:new B(0)}),d}return xe},ke=i=>({set:s=>{ee=ke(s)},reset:()=>ke(i),compare:ss(i),snap:ue(i),orient:mn(i)}),ee=ke(),Je=(i,s)=>i.ll.x.isLessThanOrEqualTo(s.x)&&s.x.isLessThanOrEqualTo(i.ur.x)&&i.ll.y.isLessThanOrEqualTo(s.y)&&s.y.isLessThanOrEqualTo(i.ur.y),da=(i,s)=>{if(s.ur.x.isLessThan(i.ll.x)||i.ur.x.isLessThan(s.ll.x)||s.ur.y.isLessThan(i.ll.y)||i.ur.y.isLessThan(s.ll.y))return null;let o=i.ll.x.isLessThan(s.ll.x)?s.ll.x:i.ll.x,h=i.ur.x.isLessThan(s.ur.x)?i.ur.x:s.ur.x,d=i.ll.y.isLessThan(s.ll.y)?s.ll.y:i.ll.y,m=i.ur.y.isLessThan(s.ur.y)?i.ur.y:s.ur.y;return{ll:{x:o,y:d},ur:{x:h,y:m}}},os=(i,s)=>i.x.times(s.y).minus(i.y.times(s.x)),Cr=(i,s)=>i.x.times(s.x).plus(i.y.times(s.y)),gn=i=>Cr(i,i).sqrt(),hh=(i,s,o)=>{let h={x:s.x.minus(i.x),y:s.y.minus(i.y)},d={x:o.x.minus(i.x),y:o.y.minus(i.y)};return os(d,h).div(gn(d)).div(gn(h))},Er=(i,s,o)=>{let h={x:s.x.minus(i.x),y:s.y.minus(i.y)},d={x:o.x.minus(i.x),y:o.y.minus(i.y)};return Cr(d,h).div(gn(d)).div(gn(h))},se=(i,s,o)=>s.y.isZero()?null:{x:i.x.plus(s.x.div(s.y).times(o.minus(i.y))),y:o},yn=(i,s,o)=>s.x.isZero()?null:{x:o,y:i.y.plus(s.y.div(s.x).times(o.minus(i.x)))},lh=(i,s,o,h)=>{if(s.x.isZero())return yn(o,h,i.x);if(h.x.isZero())return yn(i,s,o.x);if(s.y.isZero())return se(o,h,i.y);if(h.y.isZero())return se(i,s,o.y);let d=os(s,h);if(d.isZero())return null;let m={x:o.x.minus(i.x),y:o.y.minus(i.y)},y=os(m,s).div(d),v=os(m,h).div(d),w=i.x.plus(v.times(s.x)),P=o.x.plus(y.times(h.x)),N=i.y.plus(v.times(s.y)),F=o.y.plus(y.times(h.y)),tt=w.plus(P).div(2),it=N.plus(F).div(2);return{x:tt,y:it}},Qe=class Bl{constructor(s,o){Lt(this,"point");Lt(this,"isLeft");Lt(this,"segment");Lt(this,"otherSE");Lt(this,"consumedBy");s.events===void 0?s.events=[this]:s.events.push(this),this.point=s,this.isLeft=o}static compare(s,o){let h=Bl.comparePoints(s.point,o.point);return h!==0?h:(s.point!==o.point&&s.link(o),s.isLeft!==o.isLeft?s.isLeft?1:-1:Xi.compare(s.segment,o.segment))}static comparePoints(s,o){return s.x.isLessThan(o.x)?-1:s.x.isGreaterThan(o.x)?1:s.y.isLessThan(o.y)?-1:s.y.isGreaterThan(o.y)?1:0}link(s){if(s.point===this.point)throw new Error("Tried to link already linked events");let o=s.point.events;for(let h=0,d=o.length;h<d;h++){let m=o[h];this.point.events.push(m),m.point=this.point}this.checkForConsuming()}checkForConsuming(){let s=this.point.events.length;for(let o=0;o<s;o++){let h=this.point.events[o];if(h.segment.consumedBy===void 0)for(let d=o+1;d<s;d++){let m=this.point.events[d];m.consumedBy===void 0&&h.otherSE.point.events===m.otherSE.point.events&&h.segment.consume(m.segment)}}}getAvailableLinkedEvents(){let s=[];for(let o=0,h=this.point.events.length;o<h;o++){let d=this.point.events[o];d!==this&&!d.segment.ringOut&&d.segment.isInResult()&&s.push(d)}return s}getLeftmostComparator(s){let o=new Map,h=d=>{let m=d.otherSE;o.set(d,{sine:hh(this.point,s.point,m.point),cosine:Er(this.point,s.point,m.point)})};return(d,m)=>{o.has(d)||h(d),o.has(m)||h(m);let{sine:y,cosine:v}=o.get(d),{sine:w,cosine:P}=o.get(m);return y.isGreaterThanOrEqualTo(0)&&w.isGreaterThanOrEqualTo(0)?v.isLessThan(P)?1:v.isGreaterThan(P)?-1:0:y.isLessThan(0)&&w.isLessThan(0)?v.isLessThan(P)?-1:v.isGreaterThan(P)?1:0:w.isLessThan(y)?-1:w.isGreaterThan(y)?1:0}}},uh=0,Xi=class Dr{constructor(s,o,h,d){Lt(this,"id");Lt(this,"leftSE");Lt(this,"rightSE");Lt(this,"rings");Lt(this,"windings");Lt(this,"ringOut");Lt(this,"consumedBy");Lt(this,"prev");Lt(this,"_prevInResult");Lt(this,"_beforeState");Lt(this,"_afterState");Lt(this,"_isInResult");this.id=++uh,this.leftSE=s,s.segment=this,s.otherSE=o,this.rightSE=o,o.segment=this,o.otherSE=s,this.rings=h,this.windings=d}static compare(s,o){let h=s.leftSE.point.x,d=o.leftSE.point.x,m=s.rightSE.point.x,y=o.rightSE.point.x;if(y.isLessThan(h))return 1;if(m.isLessThan(d))return-1;let v=s.leftSE.point.y,w=o.leftSE.point.y,P=s.rightSE.point.y,N=o.rightSE.point.y;if(h.isLessThan(d)){if(w.isLessThan(v)&&w.isLessThan(P))return 1;if(w.isGreaterThan(v)&&w.isGreaterThan(P))return-1;let F=s.comparePoint(o.leftSE.point);if(F<0)return 1;if(F>0)return-1;let tt=o.comparePoint(s.rightSE.point);return tt!==0?tt:-1}if(h.isGreaterThan(d)){if(v.isLessThan(w)&&v.isLessThan(N))return-1;if(v.isGreaterThan(w)&&v.isGreaterThan(N))return 1;let F=o.comparePoint(s.leftSE.point);if(F!==0)return F;let tt=s.comparePoint(o.rightSE.point);return tt<0?1:tt>0?-1:1}if(v.isLessThan(w))return-1;if(v.isGreaterThan(w))return 1;if(m.isLessThan(y)){let F=o.comparePoint(s.rightSE.point);if(F!==0)return F}if(m.isGreaterThan(y)){let F=s.comparePoint(o.rightSE.point);if(F<0)return 1;if(F>0)return-1}if(!m.eq(y)){let F=P.minus(v),tt=m.minus(h),it=N.minus(w),lt=y.minus(d);if(F.isGreaterThan(tt)&&it.isLessThan(lt))return 1;if(F.isLessThan(tt)&&it.isGreaterThan(lt))return-1}return m.isGreaterThan(y)?1:m.isLessThan(y)||P.isLessThan(N)?-1:P.isGreaterThan(N)?1:s.id<o.id?-1:s.id>o.id?1:0}static fromRing(s,o,h){let d,m,y,v=Qe.comparePoints(s,o);if(v<0)d=s,m=o,y=1;else if(v>0)d=o,m=s,y=-1;else throw new Error(`Tried to create degenerate segment at [${s.x}, ${s.y}]`);let w=new Qe(d,!0),P=new Qe(m,!1);return new Dr(w,P,[h],[y])}replaceRightSE(s){this.rightSE=s,this.rightSE.segment=this,this.rightSE.otherSE=this.leftSE,this.leftSE.otherSE=this.rightSE}bbox(){let s=this.leftSE.point.y,o=this.rightSE.point.y;return{ll:{x:this.leftSE.point.x,y:s.isLessThan(o)?s:o},ur:{x:this.rightSE.point.x,y:s.isGreaterThan(o)?s:o}}}vector(){return{x:this.rightSE.point.x.minus(this.leftSE.point.x),y:this.rightSE.point.y.minus(this.leftSE.point.y)}}isAnEndpoint(s){return s.x.eq(this.leftSE.point.x)&&s.y.eq(this.leftSE.point.y)||s.x.eq(this.rightSE.point.x)&&s.y.eq(this.rightSE.point.y)}comparePoint(s){return ee.orient(this.leftSE.point,s,this.rightSE.point)}getIntersection(s){let o=this.bbox(),h=s.bbox(),d=da(o,h);if(d===null)return null;let m=this.leftSE.point,y=this.rightSE.point,v=s.leftSE.point,w=s.rightSE.point,P=Je(o,v)&&this.comparePoint(v)===0,N=Je(h,m)&&s.comparePoint(m)===0,F=Je(o,w)&&this.comparePoint(w)===0,tt=Je(h,y)&&s.comparePoint(y)===0;if(N&&P)return tt&&!F?y:!tt&&F?w:null;if(N)return F&&m.x.eq(w.x)&&m.y.eq(w.y)?null:m;if(P)return tt&&y.x.eq(v.x)&&y.y.eq(v.y)?null:v;if(tt&&F)return null;if(tt)return y;if(F)return w;let it=lh(m,this.vector(),v,s.vector());return it===null||!Je(d,it)?null:ee.snap(it)}split(s){let o=[],h=s.events!==void 0,d=new Qe(s,!0),m=new Qe(s,!1),y=this.rightSE;this.replaceRightSE(m),o.push(m),o.push(d);let v=new Dr(d,y,this.rings.slice(),this.windings.slice());return Qe.comparePoints(v.leftSE.point,v.rightSE.point)>0&&v.swapEvents(),Qe.comparePoints(this.leftSE.point,this.rightSE.point)>0&&this.swapEvents(),h&&(d.checkForConsuming(),m.checkForConsuming()),o}swapEvents(){let s=this.rightSE;this.rightSE=this.leftSE,this.leftSE=s,this.leftSE.isLeft=!0,this.rightSE.isLeft=!1;for(let o=0,h=this.windings.length;o<h;o++)this.windings[o]*=-1}consume(s){let o=this,h=s;for(;o.consumedBy;)o=o.consumedBy;for(;h.consumedBy;)h=h.consumedBy;let d=Dr.compare(o,h);if(d!==0){if(d>0){let m=o;o=h,h=m}if(o.prev===h){let m=o;o=h,h=m}for(let m=0,y=h.rings.length;m<y;m++){let v=h.rings[m],w=h.windings[m],P=o.rings.indexOf(v);P===-1?(o.rings.push(v),o.windings.push(w)):o.windings[P]+=w}h.rings=null,h.windings=null,h.consumedBy=o,h.leftSE.consumedBy=o.leftSE,h.rightSE.consumedBy=o.rightSE}}prevInResult(){return this._prevInResult!==void 0?this._prevInResult:(this.prev?this.prev.isInResult()?this._prevInResult=this.prev:this._prevInResult=this.prev.prevInResult():this._prevInResult=null,this._prevInResult)}beforeState(){if(this._beforeState!==void 0)return this._beforeState;if(!this.prev)this._beforeState={rings:[],windings:[],multiPolys:[]};else{let s=this.prev.consumedBy||this.prev;this._beforeState=s.afterState()}return this._beforeState}afterState(){if(this._afterState!==void 0)return this._afterState;let s=this.beforeState();this._afterState={rings:s.rings.slice(0),windings:s.windings.slice(0),multiPolys:[]};let o=this._afterState.rings,h=this._afterState.windings,d=this._afterState.multiPolys;for(let v=0,w=this.rings.length;v<w;v++){let P=this.rings[v],N=this.windings[v],F=o.indexOf(P);F===-1?(o.push(P),h.push(N)):h[F]+=N}let m=[],y=[];for(let v=0,w=o.length;v<w;v++){if(h[v]===0)continue;let P=o[v],N=P.poly;if(y.indexOf(N)===-1)if(P.isExterior)m.push(N);else{y.indexOf(N)===-1&&y.push(N);let F=m.indexOf(P.poly);F!==-1&&m.splice(F,1)}}for(let v=0,w=m.length;v<w;v++){let P=m[v].multiPoly;d.indexOf(P)===-1&&d.push(P)}return this._afterState}isInResult(){if(this.consumedBy)return!1;if(this._isInResult!==void 0)return this._isInResult;let s=this.beforeState().multiPolys,o=this.afterState().multiPolys;switch(Pr.type){case"union":{let h=s.length===0,d=o.length===0;this._isInResult=h!==d;break}case"intersection":{let h,d;s.length<o.length?(h=s.length,d=o.length):(h=o.length,d=s.length),this._isInResult=d===Pr.numMultiPolys&&h<d;break}case"xor":{let h=Math.abs(s.length-o.length);this._isInResult=h%2===1;break}case"difference":{let h=d=>d.length===1&&d[0].isSubject;this._isInResult=h(s)!==h(o);break}}return this._isInResult}},fa=class{constructor(i,s,o){Lt(this,"poly");Lt(this,"isExterior");Lt(this,"segments");Lt(this,"bbox");if(!Array.isArray(i)||i.length===0)throw new Error("Input geometry is not a valid Polygon or MultiPolygon");if(this.poly=s,this.isExterior=o,this.segments=[],typeof i[0][0]!="number"||typeof i[0][1]!="number")throw new Error("Input geometry is not a valid Polygon or MultiPolygon");let h=ee.snap({x:new B(i[0][0]),y:new B(i[0][1])});this.bbox={ll:{x:h.x,y:h.y},ur:{x:h.x,y:h.y}};let d=h;for(let m=1,y=i.length;m<y;m++){if(typeof i[m][0]!="number"||typeof i[m][1]!="number")throw new Error("Input geometry is not a valid Polygon or MultiPolygon");let v=ee.snap({x:new B(i[m][0]),y:new B(i[m][1])});v.x.eq(d.x)&&v.y.eq(d.y)||(this.segments.push(Xi.fromRing(d,v,this)),v.x.isLessThan(this.bbox.ll.x)&&(this.bbox.ll.x=v.x),v.y.isLessThan(this.bbox.ll.y)&&(this.bbox.ll.y=v.y),v.x.isGreaterThan(this.bbox.ur.x)&&(this.bbox.ur.x=v.x),v.y.isGreaterThan(this.bbox.ur.y)&&(this.bbox.ur.y=v.y),d=v)}(!h.x.eq(d.x)||!h.y.eq(d.y))&&this.segments.push(Xi.fromRing(d,h,this))}getSweepEvents(){let i=[];for(let s=0,o=this.segments.length;s<o;s++){let h=this.segments[s];i.push(h.leftSE),i.push(h.rightSE)}return i}},ch=class{constructor(i,s){Lt(this,"multiPoly");Lt(this,"exteriorRing");Lt(this,"interiorRings");Lt(this,"bbox");if(!Array.isArray(i))throw new Error("Input geometry is not a valid Polygon or MultiPolygon");this.exteriorRing=new fa(i[0],this,!0),this.bbox={ll:{x:this.exteriorRing.bbox.ll.x,y:this.exteriorRing.bbox.ll.y},ur:{x:this.exteriorRing.bbox.ur.x,y:this.exteriorRing.bbox.ur.y}},this.interiorRings=[];for(let o=1,h=i.length;o<h;o++){let d=new fa(i[o],this,!1);d.bbox.ll.x.isLessThan(this.bbox.ll.x)&&(this.bbox.ll.x=d.bbox.ll.x),d.bbox.ll.y.isLessThan(this.bbox.ll.y)&&(this.bbox.ll.y=d.bbox.ll.y),d.bbox.ur.x.isGreaterThan(this.bbox.ur.x)&&(this.bbox.ur.x=d.bbox.ur.x),d.bbox.ur.y.isGreaterThan(this.bbox.ur.y)&&(this.bbox.ur.y=d.bbox.ur.y),this.interiorRings.push(d)}this.multiPoly=s}getSweepEvents(){let i=this.exteriorRing.getSweepEvents();for(let s=0,o=this.interiorRings.length;s<o;s++){let h=this.interiorRings[s].getSweepEvents();for(let d=0,m=h.length;d<m;d++)i.push(h[d])}return i}},Ml=class{constructor(i,s){Lt(this,"isSubject");Lt(this,"polys");Lt(this,"bbox");if(!Array.isArray(i))throw new Error("Input geometry is not a valid Polygon or MultiPolygon");try{typeof i[0][0][0]=="number"&&(i=[i])}catch{}this.polys=[],this.bbox={ll:{x:new B(Number.POSITIVE_INFINITY),y:new B(Number.POSITIVE_INFINITY)},ur:{x:new B(Number.NEGATIVE_INFINITY),y:new B(Number.NEGATIVE_INFINITY)}};for(let o=0,h=i.length;o<h;o++){let d=new ch(i[o],this);d.bbox.ll.x.isLessThan(this.bbox.ll.x)&&(this.bbox.ll.x=d.bbox.ll.x),d.bbox.ll.y.isLessThan(this.bbox.ll.y)&&(this.bbox.ll.y=d.bbox.ll.y),d.bbox.ur.x.isGreaterThan(this.bbox.ur.x)&&(this.bbox.ur.x=d.bbox.ur.x),d.bbox.ur.y.isGreaterThan(this.bbox.ur.y)&&(this.bbox.ur.y=d.bbox.ur.y),this.polys.push(d)}this.isSubject=s}getSweepEvents(){let i=[];for(let s=0,o=this.polys.length;s<o;s++){let h=this.polys[s].getSweepEvents();for(let d=0,m=h.length;d<m;d++)i.push(h[d])}return i}},lp=class _h{constructor(s){Lt(this,"events");Lt(this,"poly");Lt(this,"_isExteriorRing");Lt(this,"_enclosingRing");this.events=s;for(let o=0,h=s.length;o<h;o++)s[o].segment.ringOut=this;this.poly=null}static factory(s){let o=[];for(let h=0,d=s.length;h<d;h++){let m=s[h];if(!m.isInResult()||m.ringOut)continue;let y=null,v=m.leftSE,w=m.rightSE,P=[v],N=v.point,F=[];for(;y=v,v=w,P.push(v),v.point!==N;)for(;;){let tt=v.getAvailableLinkedEvents();if(tt.length===0){let ft=P[0].point,vt=P[P.length-1].point;throw new Error(`Unable to complete output ring starting at [${ft.x}, ${ft.y}]. Last matching segment found ends at [${vt.x}, ${vt.y}].`)}if(tt.length===1){w=tt[0].otherSE;break}let it=null;for(let ft=0,vt=F.length;ft<vt;ft++)if(F[ft].point===v.point){it=ft;break}if(it!==null){let ft=F.splice(it)[0],vt=P.splice(ft.index);vt.unshift(vt[0].otherSE),o.push(new _h(vt.reverse()));continue}F.push({index:P.length,point:v.point});let lt=v.getLeftmostComparator(y);w=tt.sort(lt)[0].otherSE;break}o.push(new _h(P))}return o}getGeom(){let s=this.events[0].point,o=[s];for(let P=1,N=this.events.length-1;P<N;P++){let F=this.events[P].point,tt=this.events[P+1].point;ee.orient(F,s,tt)!==0&&(o.push(F),s=F)}if(o.length===1)return null;let h=o[0],d=o[1];ee.orient(h,s,d)===0&&o.shift(),o.push(o[0]);let m=this.isExteriorRing()?1:-1,y=this.isExteriorRing()?0:o.length-1,v=this.isExteriorRing()?o.length:-1,w=[];for(let P=y;P!=v;P+=m)w.push([o[P].x.toNumber(),o[P].y.toNumber()]);return w}isExteriorRing(){if(this._isExteriorRing===void 0){let s=this.enclosingRing();this._isExteriorRing=s?!s.isExteriorRing():!0}return this._isExteriorRing}enclosingRing(){return this._enclosingRing===void 0&&(this._enclosingRing=this._calcEnclosingRing()),this._enclosingRing}_calcEnclosingRing(){var d,m;let s=this.events[0];for(let y=1,v=this.events.length;y<v;y++){let w=this.events[y];Qe.compare(s,w)>0&&(s=w)}let o=s.segment.prevInResult(),h=o?o.prevInResult():null;for(;;){if(!o)return null;if(!h)return o.ringOut;if(h.ringOut!==o.ringOut)return((d=h.ringOut)==null?void 0:d.enclosingRing())!==o.ringOut?o.ringOut:(m=o.ringOut)==null?void 0:m.enclosingRing();o=h.prevInResult(),h=o?o.prevInResult():null}}},xl=class{constructor(i){Lt(this,"exteriorRing");Lt(this,"interiorRings");this.exteriorRing=i,i.poly=this,this.interiorRings=[]}addInterior(i){this.interiorRings.push(i),i.poly=this}getGeom(){let i=this.exteriorRing.getGeom();if(i===null)return null;let s=[i];for(let o=0,h=this.interiorRings.length;o<h;o++){let d=this.interiorRings[o].getGeom();d!==null&&s.push(d)}return s}},up=class{constructor(i){Lt(this,"rings");Lt(this,"polys");this.rings=i,this.polys=this._composePolys(i)}getGeom(){let i=[];for(let s=0,o=this.polys.length;s<o;s++){let h=this.polys[s].getGeom();h!==null&&i.push(h)}return i}_composePolys(i){var o;let s=[];for(let h=0,d=i.length;h<d;h++){let m=i[h];if(!m.poly)if(m.isExteriorRing())s.push(new xl(m));else{let y=m.enclosingRing();y!=null&&y.poly||s.push(new xl(y)),(o=y==null?void 0:y.poly)==null||o.addInterior(m)}}return s}},cp=class{constructor(i,s=Xi.compare){Lt(this,"queue");Lt(this,"tree");Lt(this,"segments");this.queue=i,this.tree=new ht(s),this.segments=[]}process(i){let s=i.segment,o=[];if(i.consumedBy)return i.isLeft?this.queue.delete(i.otherSE):this.tree.delete(s),o;i.isLeft&&this.tree.add(s);let h=s,d=s;do h=this.tree.lastBefore(h);while(h!=null&&h.consumedBy!=null);do d=this.tree.firstAfter(d);while(d!=null&&d.consumedBy!=null);if(i.isLeft){let m=null;if(h){let v=h.getIntersection(s);if(v!==null&&(s.isAnEndpoint(v)||(m=v),!h.isAnEndpoint(v))){let w=this._splitSafely(h,v);for(let P=0,N=w.length;P<N;P++)o.push(w[P])}}let y=null;if(d){let v=d.getIntersection(s);if(v!==null&&(s.isAnEndpoint(v)||(y=v),!d.isAnEndpoint(v))){let w=this._splitSafely(d,v);for(let P=0,N=w.length;P<N;P++)o.push(w[P])}}if(m!==null||y!==null){let v=null;m===null?v=y:y===null?v=m:v=Qe.comparePoints(m,y)<=0?m:y,this.queue.delete(s.rightSE),o.push(s.rightSE);let w=s.split(v);for(let P=0,N=w.length;P<N;P++)o.push(w[P])}o.length>0?(this.tree.delete(s),o.push(i)):(this.segments.push(s),s.prev=h)}else{if(h&&d){let m=h.getIntersection(d);if(m!==null){if(!h.isAnEndpoint(m)){let y=this._splitSafely(h,m);for(let v=0,w=y.length;v<w;v++)o.push(y[v])}if(!d.isAnEndpoint(m)){let y=this._splitSafely(d,m);for(let v=0,w=y.length;v<w;v++)o.push(y[v])}}}this.tree.delete(s)}return o}_splitSafely(i,s){this.tree.delete(i);let o=i.rightSE;this.queue.delete(o);let h=i.split(s);return h.push(o),i.consumedBy===void 0&&this.tree.add(i),h}},dp=class{constructor(){Lt(this,"type");Lt(this,"numMultiPolys")}run(i,s,o){pa.type=i;let h=[new Ml(s,!0)];for(let w=0,P=o.length;w<P;w++)h.push(new Ml(o[w],!1));if(pa.numMultiPolys=h.length,pa.type==="difference"){let w=h[0],P=1;for(;P<h.length;)da(h[P].bbox,w.bbox)!==null?P++:h.splice(P,1)}if(pa.type==="intersection")for(let w=0,P=h.length;w<P;w++){let N=h[w];for(let F=w+1,tt=h.length;F<tt;F++)if(da(N.bbox,h[F].bbox)===null)return[]}let d=new ht(Qe.compare);for(let w=0,P=h.length;w<P;w++){let N=h[w].getSweepEvents();for(let F=0,tt=N.length;F<tt;F++)d.add(N[F])}let m=new cp(d),y=null;for(d.size!=0&&(y=d.first(),d.delete(y));y;){let w=m.process(y);for(let P=0,N=w.length;P<N;P++){let F=w[P];F.consumedBy===void 0&&d.add(F)}d.size!=0?(y=d.first(),d.delete(y)):y=null}ee.reset();let v=lp.factory(m.segments);return new up(v).getGeom()}},pa=new dp,Pr=pa,fp=(i,...s)=>Pr.run("intersection",i,s),pp=(i,...s)=>Pr.run("difference",i,s);ee.set;function kr(i){let s={type:"Feature"};return s.geometry=i,s}function Br(i){return i.type==="Feature"?i.geometry:i}function Ll(i){return i&&i.geometry&&i.geometry.coordinates?i.geometry.coordinates:i}function _p(i){return kr({type:"LineString",coordinates:i})}function mp(i){return kr({type:"MultiLineString",coordinates:i})}function bl(i){return kr({type:"Polygon",coordinates:i})}function wl(i){return kr({type:"MultiPolygon",coordinates:i})}function gp(i,s){let o=Br(i),h=Br(s),d=fp(o.coordinates,h.coordinates);return d.length===0?null:d.length===1?bl(d[0]):wl(d)}function yp(i,s){let o=Br(i),h=Br(s),d=pp(o.coordinates,h.coordinates);return d.length===0?null:d.length===1?bl(d[0]):wl(d)}function Cl(i){return Array.isArray(i)?1+Cl(i[0]):-1}function vp(i){i instanceof L.Polyline&&(i=i.toGeoJSON(15));let s=Ll(i),o=Cl(s),h=[];return o>1?s.forEach(d=>{h.push(_p(d))}):h.push(i),h}function Ap(i){let s=[];return i.eachLayer(o=>{s.push(Ll(o.toGeoJSON(15)))}),mp(s)}de.Cut=de.Polygon.extend({initialize(i){this._map=i,this._shape="Cut",this.toolbarButtonName="cutPolygon"},_finishShape(){if(this._editedLayers=[],!this.options.allowSelfIntersection&&(this._handleSelfIntersection(!0,this._layer.getLatLngs()[0]),this._doesSelfIntersect)||this.options.requireSnapToFinish&&!this._hintMarker._snapped&&!this._isFirstLayer())return;let i=this._layer.getLatLngs();if(i.length<=2)return;let s=L.polygon(i,this.options.pathOptions);s._latlngInfos=this._layer._latlngInfo,this.cut(s),this._cleanupSnapping(),this._otherSnapLayers.splice(this._tempSnapLayerIndex,1),delete this._tempSnapLayerIndex,this._editedLayers.forEach(({layer:h,originalLayer:d})=>{this._fireCut(d,h,d),this._fireCut(this._map,h,d),d.pm._fireEdit()}),this._editedLayers=[];let o=this._hintMarker.getLatLng();this.disable(),this.options.continueDrawing&&(this.enable(),this._hintMarker.setLatLng(o))},cut(i){let s=this._map._layers,o=i._latlngInfos||[];Object.keys(s).map(h=>s[h]).filter(h=>h.pm).filter(h=>!h._pmTempLayer).filter(h=>!L.PM.optIn&&!h.options.pmIgnore||L.PM.optIn&&h.options.pmIgnore===!1).filter(h=>h instanceof L.Polyline).filter(h=>h!==i).filter(h=>h.pm.options.allowCutting).filter(h=>this.options.layersToCut&&L.Util.isArray(this.options.layersToCut)&&this.options.layersToCut.length>0?this.options.layersToCut.indexOf(h)>-1:!0).filter(h=>!this._layerGroup.hasLayer(h)).filter(h=>{try{let d=!!Xe(i.toGeoJSON(15),h.toGeoJSON(15)).features.length>0;return d||h instanceof L.Polyline&&!(h instanceof L.Polygon)?d:!!gp(i.toGeoJSON(15),h.toGeoJSON(15))}catch{return h instanceof L.Polygon&&console.error("You can't cut polygons with self-intersections"),!1}}).forEach(h=>{let d;if(h instanceof L.Polygon){d=L.polygon(h.getLatLngs());let w=d.getLatLngs();o.forEach(P=>{if(P&&P.snapInfo){let{latlng:N}=P,F=this._calcClosestLayer(N,[d]);if(F&&F.segment&&F.distance<this.options.snapDistance){let{segment:tt}=F;if(tt&&tt.length===2){let{indexPath:it,parentPath:lt,newIndex:ft}=L.PM.Utils._getIndexFromSegment(w,tt);(it.length>1?(0,hi.default)(w,lt):w).splice(ft,0,N)}}}})}else d=h;let m=this._cutLayer(i,d),y=L.geoJSON(m,h.options);y.getLayers().length===1&&([y]=y.getLayers()),this._setPane(y,"layerPane");let v=y.addTo(this._map.pm._getContainingLayer());if(v.pm.enable(h.pm.options),v.pm.disable(),h._pmTempLayer=!0,i._pmTempLayer=!0,h.remove(),h.removeFrom(this._map.pm._getContainingLayer()),i.remove(),i.removeFrom(this._map.pm._getContainingLayer()),v.getLayers&&v.getLayers().length===0&&this._map.pm.removeLayer({target:v}),v instanceof L.LayerGroup?(v.eachLayer(w=>{this._addDrawnLayerProp(w)}),this._addDrawnLayerProp(v)):this._addDrawnLayerProp(v),this.options.layersToCut&&L.Util.isArray(this.options.layersToCut)&&this.options.layersToCut.length>0){let w=this.options.layersToCut.indexOf(h);w>-1&&this.options.layersToCut.splice(w,1)}this._editedLayers.push({layer:v,originalLayer:h})})},_cutLayer(i,s){let o=L.geoJSON(),h;if(s instanceof L.Polygon)h=yp(s.toGeoJSON(15),i.toGeoJSON(15));else{let d=vp(s);d.forEach(m=>{let y=th(m,i.toGeoJSON(15)),v;y&&y.features.length>0?v=L.geoJSON(y):v=L.geoJSON(m),v.getLayers().forEach(w=>{ih(i.toGeoJSON(15),w.toGeoJSON(15))||w.addTo(o)})}),d.length>1?h=Ap(o):h=o.toGeoJSON(15)}return h},_change:L.Util.falseFn}),de.Text=de.extend({initialize(i){this._map=i,this._shape="Text",this.toolbarButtonName="drawText"},enable(i){L.Util.setOptions(this,i),this._enabled=!0,this._map.on("click",this._createMarker,this),this._map.pm.Toolbar.toggleButton(this.toolbarButtonName,!0),this._hintMarker=L.marker(this._map.getCenter(),{interactive:!1,zIndexOffset:100,icon:L.divIcon({className:"marker-icon cursor-marker"})}),this._setPane(this._hintMarker,"vertexPane"),this._hintMarker._pmTempLayer=!0,this._hintMarker.addTo(this._map),this.options.cursorMarker&&L.DomUtil.addClass(this._hintMarker._icon,"visible"),this.options.tooltips&&this._hintMarker.bindTooltip(Bt("tooltips.placeText"),{permanent:!0,offset:L.point(0,10),direction:"bottom",opacity:.8}).openTooltip(),this._layer=this._hintMarker,this._map.on("mousemove",this._syncHintMarker,this),this._map.getContainer().classList.add("geoman-draw-cursor"),this._fireDrawStart(),this._setGlobalDrawMode()},disable(){var i;this._enabled&&(this._enabled=!1,this._map.off("click",this._createMarker,this),(i=this._hintMarker)==null||i.remove(),this._map.getContainer().classList.remove("geoman-draw-cursor"),this._map.off("mousemove",this._syncHintMarker,this),this._map.off("mousemove",this._showHintMarker,this),this._map.pm.Toolbar.toggleButton(this.toolbarButtonName,!1),this.options.snappable&&this._cleanupSnapping(),this._fireDrawEnd(),this._setGlobalDrawMode())},enabled(){return this._enabled},toggle(i){this.enabled()?this.disable():this.enable(i)},_syncHintMarker(i){if(this._hintMarker.setLatLng(i.latlng),this.options.snappable){let s=i;s.target=this._hintMarker,this._handleSnapping(s)}},_createMarker(i){var d,m,y,v;if(!i.latlng||this.options.requireSnapToFinish&&!this._hintMarker._snapped&&!this._isFirstLayer())return;this._hintMarker._snapped||this._hintMarker.setLatLng(i.latlng);let s=this._hintMarker.getLatLng();if(this.textArea=this._createTextArea(),(d=this.options.textOptions)==null?void 0:d.className){let w=this.options.textOptions.className.split(" ");this.textArea.classList.add(...w)}let o=this._createTextIcon(this.textArea),h=new L.Marker(s,{textMarker:!0,_textMarkerOverPM:!0,icon:o});if(this._setPane(h,"markerPane"),this._finishLayer(h),h.pm||(h.options.draggable=!1),h.addTo(this._map.pm._getContainingLayer()),h.pm){h.pm.textArea=this.textArea,L.setOptions(h.pm,{removeIfEmpty:((m=this.options.textOptions)==null?void 0:m.removeIfEmpty)??!0});let w=((y=this.options.textOptions)==null?void 0:y.focusAfterDraw)??!0;h.pm._createTextMarker(w),(v=this.options.textOptions)!=null&&v.text&&h.pm.setText(this.options.textOptions.text)}this._fireCreate(h),this._cleanupSnapping(),this.disable(),this.options.continueDrawing&&this._map.once("mousemove",this._showHintMarkerAfterMoving,this)},_showHintMarkerAfterMoving(i){this.enable(),this._hintMarker.setLatLng(i.latlng)},_createTextArea(){let i=document.createElement("textarea");return i.readOnly=!0,i.classList.add("pm-textarea","pm-disabled"),i},_createTextIcon(i){return L.divIcon({className:"pm-text-marker",html:i})}});var Mp={enableLayerDrag(){if(!this.options.draggable||!this._layer._map)return;this.disable(),this._layerDragEnabled=!0,this._map||(this._map=this._layer._map),(this._layer instanceof L.Marker||this._layer instanceof L.ImageOverlay)&&L.DomEvent.on(this._getDOMElem(),"dragstart",this._stopDOMImageDrag),this._layer.dragging&&this._layer.dragging.disable(),this._tempDragCoord=null,ve(this._layer)instanceof L.Canvas?(this._layer.on("mouseout",this.removeDraggingClass,this),this._layer.on("mouseover",this.addDraggingClass,this)):this.addDraggingClass(),this._originalMapDragState=this._layer._map.dragging._enabled,this._safeToCacheDragState=!0;let i=this._getDOMElem();i&&(ve(this._layer)instanceof L.Canvas?(this._layer.on("touchstart mousedown",this._dragMixinOnMouseDown,this),this._map.pm._addTouchEvents(i)):L.DomEvent.on(i,"touchstart mousedown",this._simulateMouseDownEvent,this)),this._fireDragEnable()},disableLayerDrag(){this._layerDragEnabled=!1,ve(this._layer)instanceof L.Canvas?(this._layer.off("mouseout",this.removeDraggingClass,this),this._layer.off("mouseover",this.addDraggingClass,this)):this.removeDraggingClass(),this._originalMapDragState&&this._dragging&&this._map.dragging.enable(),this._safeToCacheDragState=!1,this._layer.dragging&&this._layer.dragging.disable();let i=this._getDOMElem();i&&(ve(this._layer)instanceof L.Canvas?(this._layer.off("touchstart mousedown",this._dragMixinOnMouseDown,this),this._map.pm._removeTouchEvents(i)):L.DomEvent.off(i,"touchstart mousedown",this._simulateMouseDownEvent,this)),this._layerDragged&&this._fireUpdate(),this._layerDragged=!1,this._fireDragDisable()},dragging(){return this._dragging},layerDragEnabled(){return!!this._layerDragEnabled},_simulateMouseDownEvent(i){let s=i.touches?i.touches[0]:i,o={originalEvent:s,target:this._layer};return o.containerPoint=this._map.mouseEventToContainerPoint(s),o.latlng=this._map.containerPointToLatLng(o.containerPoint),this._dragMixinOnMouseDown(o),!1},_simulateMouseMoveEvent(i){let s=i.touches?i.touches[0]:i,o={originalEvent:s,target:this._layer};return o.containerPoint=this._map.mouseEventToContainerPoint(s),o.latlng=this._map.containerPointToLatLng(o.containerPoint),this._dragMixinOnMouseMove(o),!1},_simulateMouseUpEvent(i){let s={originalEvent:i.touches?i.touches[0]:i,target:this._layer};return i.type.indexOf("touch")===-1&&(s.containerPoint=this._map.mouseEventToContainerPoint(i),s.latlng=this._map.containerPointToLatLng(s.containerPoint)),this._dragMixinOnMouseUp(s),!1},_dragMixinOnMouseDown(i){if(i.originalEvent.button>0)return;this._overwriteEventIfItComesFromMarker(i);let s=i._fromLayerSync,o=this._syncLayers("_dragMixinOnMouseDown",i);if(this._layer instanceof L.Marker&&(this.options.snappable&&!s&&!o?this._initSnappableMarkers():this._disableSnapping()),this._layer instanceof L.CircleMarker){let h="resizeableCircleMarker";this._layer instanceof L.Circle&&(h="resizeableCircle"),this.options.snappable&&!s&&!o?this._layer.pm.options[h]||this._initSnappableMarkersDrag():this._layer.pm.options[h]?this._layer.pm._disableSnapping():this._layer.pm._disableSnappingDrag()}this._safeToCacheDragState&&(this._originalMapDragState=this._layer._map.dragging._enabled,this._safeToCacheDragState=!1),this._tempDragCoord=i.latlng,L.DomEvent.on(this._map.getContainer(),"touchend mouseup",this._simulateMouseUpEvent,this),L.DomEvent.on(this._map.getContainer(),"touchmove mousemove",this._simulateMouseMoveEvent,this)},_dragMixinOnMouseMove(i){this._overwriteEventIfItComesFromMarker(i);let s=this._getDOMElem();this._syncLayers("_dragMixinOnMouseMove",i),this._dragging||(this._dragging=!0,L.DomUtil.addClass(s,"leaflet-pm-dragging"),this._layer instanceof L.Marker||this._layer.bringToFront(),this._originalMapDragState&&this._map.dragging.disable(),this._fireDragStart()),this._tempDragCoord||(this._tempDragCoord=i.latlng),this._onLayerDrag(i),this._layer instanceof L.CircleMarker&&this._layer.pm._updateHiddenPolyCircle()},_dragMixinOnMouseUp(i){let s=this._getDOMElem();return this._syncLayers("_dragMixinOnMouseUp",i),this._originalMapDragState&&this._map.dragging.enable(),this._safeToCacheDragState=!0,L.DomEvent.off(this._map.getContainer(),"touchmove mousemove",this._simulateMouseMoveEvent,this),L.DomEvent.off(this._map.getContainer(),"touchend mouseup",this._simulateMouseUpEvent,this),this._dragging?(this._layer instanceof L.CircleMarker&&this._layer.pm._updateHiddenPolyCircle(),this._layerDragged=!0,window.setTimeout(()=>{this._dragging=!1,s&&L.DomUtil.removeClass(s,"leaflet-pm-dragging"),this._fireDragEnd(),this._fireEdit(),this._layerEdited=!0},10),!0):!1},_onLayerDrag(i){let{latlng:s}=i,o={lat:s.lat-this._tempDragCoord.lat,lng:s.lng-this._tempDragCoord.lng},h=d=>d.map(m=>{if(Array.isArray(m))return h(m);let y={lat:m.lat+o.lat,lng:m.lng+o.lng};return(m.alt||m.alt===0)&&(y.alt=m.alt),y});if(this._layer instanceof L.Circle&&this._layer.options.resizeableCircle||this._layer instanceof L.CircleMarker&&this._layer.options.resizeableCircleMarker){let d=h([this._layer.getLatLng()]);this._layer.setLatLng(d[0]),this._fireChange(this._layer.getLatLng(),"Edit")}else if(this._layer instanceof L.CircleMarker||this._layer instanceof L.Marker){let d=this._layer.getLatLng();this._layer._snapped&&(d=this._layer._orgLatLng);let m=h([d]);this._layer.setLatLng(m[0]),this._fireChange(this._layer.getLatLng(),"Edit")}else if(this._layer instanceof L.ImageOverlay){let d=h([this._layer.getBounds().getNorthWest(),this._layer.getBounds().getSouthEast()]);this._layer.setBounds(d),this._fireChange(this._layer.getBounds(),"Edit")}else{let d=h(this._layer.getLatLngs());this._layer.setLatLngs(d),this._fireChange(this._layer.getLatLngs(),"Edit")}this._tempDragCoord=s,i.layer=this._layer,this._fireDrag(i)},addDraggingClass(){let i=this._getDOMElem();i&&L.DomUtil.addClass(i,"leaflet-pm-draggable")},removeDraggingClass(){let i=this._getDOMElem();i&&L.DomUtil.removeClass(i,"leaflet-pm-draggable")},_getDOMElem(){let i=null;return this._layer._path?i=this._layer._path:this._layer._renderer&&this._layer._renderer._container?i=this._layer._renderer._container:this._layer._image?i=this._layer._image:this._layer._icon&&(i=this._layer._icon),i},_overwriteEventIfItComesFromMarker(i){i.target.getLatLng&&(!i.target._radius||i.target._radius<=10)&&(i.containerPoint=this._map.mouseEventToContainerPoint(i.originalEvent),i.latlng=this._map.containerPointToLatLng(i.containerPoint))},_syncLayers(i,s){if(this.enabled())return!1;if(!s._fromLayerSync&&this._layer===s.target&&this.options.syncLayersOnDrag){s._fromLayerSync=!0;let o=[];if(L.Util.isArray(this.options.syncLayersOnDrag))o=this.options.syncLayersOnDrag,this.options.syncLayersOnDrag.forEach(h=>{h instanceof L.LayerGroup&&(o=o.concat(h.pm.getLayers(!0)))});else if(this.options.syncLayersOnDrag===!0&&this._parentLayerGroup)for(let h in this._parentLayerGroup){let d=this._parentLayerGroup[h];d.pm&&(o=d.pm.getLayers(!0))}return L.Util.isArray(o)&&o.length>0&&(o=o.filter(h=>!!h.pm).filter(h=>!!h.pm.options.draggable),o.forEach(h=>{h!==this._layer&&h.pm[i]&&(h._snapped=!1,h.pm[i](s))})),o.length>0}return!1},_stopDOMImageDrag(i){return i.preventDefault(),!1}},xp=Mp,Lp=A(pi());function bp(i,s,o,h){return o.unproject(s.transform(o.project(i,h)),h)}function El(i,s,o){let h=o.getMaxZoom();if(h===1/0&&(h=o.getZoom()),L.Util.isArray(i)){let d=[];return i.forEach(m=>{d.push(El(m,s,o))}),d}return i instanceof L.LatLng?bp(i,s,o,h):null}function hs(i,s){s instanceof L.Layer&&(s=s.getLatLng());let o=i.getMaxZoom();return o===1/0&&(o=i.getZoom()),i.project(s,o)}function Sr(i,s){let o=i.getMaxZoom();return o===1/0&&(o=i.getZoom()),i.unproject(s,o)}var wp={_onRotateStart(i){this._preventRenderingMarkers(!0),this._rotationOriginLatLng=this._getRotationCenter().clone(),this._rotationOriginPoint=hs(this._map,this._rotationOriginLatLng),this._rotationStartPoint=hs(this._map,i.target.getLatLng()),this._initialRotateLatLng=We(this._layer),this._startAngle=this.getAngle();let s=We(this._rotationLayer,this._rotationLayer.pm._rotateOrgLatLng);this._fireRotationStart(this._rotationLayer,s),this._fireRotationStart(this._map,s)},_onRotate(i){let s=hs(this._map,i.target.getLatLng()),o=this._rotationStartPoint,h=this._rotationOriginPoint,d=Math.atan2(s.y-h.y,s.x-h.x)-Math.atan2(o.y-h.y,o.x-h.x);this._layer.setLatLngs(this._rotateLayer(d,this._initialRotateLatLng,this._rotationOriginLatLng,L.PM.Matrix.init(),this._map));let m=this;function y(N,F=[],tt=-1){if(tt>-1&&F.push(tt),L.Util.isArray(N[0]))N.forEach((it,lt)=>y(it,F.slice(),lt));else{let it=F.length>0?(0,Lp.default)(m._markers,F):m._markers[0];N.forEach((lt,ft)=>{it[ft].setLatLng(lt)})}}y(this._layer.getLatLngs());let v=We(this._rotationLayer);this._rotationLayer.setLatLngs(this._rotateLayer(d,this._rotationLayer.pm._rotateOrgLatLng,this._rotationOriginLatLng,L.PM.Matrix.init(),this._map));let w=d*180/Math.PI;w=w<0?w+360:w;let P=w+this._startAngle;this._setAngle(P),this._rotationLayer.pm._setAngle(P),this._fireRotation(this._rotationLayer,w,v),this._fireRotation(this._map,w,v),this._rotationLayer.pm._fireChange(this._rotationLayer.getLatLngs(),"Rotation")},_onRotateEnd(){let i=this._startAngle;delete this._rotationOriginLatLng,delete this._rotationOriginPoint,delete this._rotationStartPoint,delete this._initialRotateLatLng,delete this._startAngle;let s=We(this._rotationLayer,this._rotationLayer.pm._rotateOrgLatLng);this._rotationLayer.pm._rotateOrgLatLng=We(this._rotationLayer),this._fireRotationEnd(this._rotationLayer,i,s),this._fireRotationEnd(this._map,i,s),this._rotationLayer.pm._fireEdit(this._rotationLayer,"Rotation"),this._preventRenderingMarkers(!1),this._layerRotated=!0},_rotateLayer(i,s,o,h,d){let m=hs(d,o);return this._matrix=h.clone().rotate(i,m).flip(),El(s,this._matrix,d)},_setAngle(i){i=i<0?i+360:i,this._angle=i%360},_getRotationCenter(){if(this._rotationCenter)return this._rotationCenter;let i=L.polygon(this._layer.getLatLngs(),{stroke:!1,fill:!1,pmIgnore:!0}).addTo(this._layer._map),s=i.getCenter();return i.removeFrom(this._layer._map),s},enableRotate(){if(!this.options.allowRotation){this.disableRotate();return}this.rotateEnabled()&&this.disableRotate(),this._layer instanceof L.Rectangle&&this._angle===void 0&&this.setInitAngle(Zn(this._layer._map,this._layer.getLatLngs()[0][0],this._layer.getLatLngs()[0][1])||0);let i={fill:!1,stroke:!1,pmIgnore:!1,snapIgnore:!0};this._rotatePoly=L.polygon(this._layer.getLatLngs(),i),this._rotatePoly._pmTempLayer=!0,this._rotatePoly.addTo(this._layer._map),this._rotatePoly.pm._setAngle(this.getAngle()),this._rotatePoly.pm.setRotationCenter(this.getRotationCenter()),this._rotatePoly.pm.setOptions(this._layer._map.pm.getGlobalOptions()),this._rotatePoly.pm.setOptions({rotate:!0,snappable:!1,hideMiddleMarkers:!0}),this._rotatePoly.pm._rotationLayer=this._layer,this._rotatePoly.pm.enable(),this._rotateOrgLatLng=We(this._layer),this._rotateEnabled=!0,this._layer.on("remove",this.disableRotate,this),this._fireRotationEnable(this._layer),this._fireRotationEnable(this._layer._map)},disableRotate(){this.rotateEnabled()&&(this._rotatePoly.pm._layerRotated&&this._fireUpdate(),this._rotatePoly.pm._layerRotated=!1,this._rotatePoly.pm.disable(),this._rotatePoly.remove(),this._rotatePoly.pm.setOptions({rotate:!1}),this._rotatePoly=void 0,this._rotateOrgLatLng=void 0,this._layer.off("remove",this.disableRotate,this),this._rotateEnabled=!1,this._fireRotationDisable(this._layer),this._fireRotationDisable(this._layer._map))},rotateEnabled(){return!!this._rotateEnabled},rotateLayer(i){let s=this.getAngle(),o=this._layer.getLatLngs(),h=i*(Math.PI/180);this._layer.setLatLngs(this._rotateLayer(h,this._layer.getLatLngs(),this._getRotationCenter(),L.PM.Matrix.init(),this._layer._map)),this._rotateOrgLatLng=L.polygon(this._layer.getLatLngs()).getLatLngs(),this._setAngle(this.getAngle()+i),this.rotateEnabled()&&this._rotatePoly&&this._rotatePoly.pm.enabled()&&(this._rotatePoly.setLatLngs(this._rotateLayer(h,this._rotatePoly.getLatLngs(),this._getRotationCenter(),L.PM.Matrix.init(),this._rotatePoly._map)),this._rotatePoly.pm._initMarkers());let d=this.getAngle()-s;d=d<0?d+360:d,this._startAngle=s,this._fireRotation(this._layer,d,o,this._layer),this._fireRotation(this._map||this._layer._map,d,o,this._layer),delete this._startAngle,this._fireChange(this._layer.getLatLngs(),"Rotation")},rotateLayerToAngle(i){let s=i-this.getAngle();this.rotateLayer(s)},getAngle(){return this._angle||0},setInitAngle(i){this._setAngle(i)},getRotationCenter(){return this._getRotationCenter()},setRotationCenter(i){this._rotationCenter=i,this._rotatePoly&&this._rotatePoly.pm.setRotationCenter(i)}},Cp=wp,Ep=L.Class.extend({includes:[xp,na,Cp,Nn],options:{snappable:!0,snapDistance:20,allowSelfIntersection:!0,allowSelfIntersectionEdit:!1,preventMarkerRemoval:!1,removeLayerBelowMinVertexCount:!0,limitMarkersToCount:-1,hideMiddleMarkers:!1,snapSegment:!0,syncLayersOnDrag:!1,draggable:!0,allowEditing:!0,allowRemoval:!0,allowCutting:!0,allowRotation:!0,addVertexOn:"click",removeVertexOn:"contextmenu",removeVertexValidation:void 0,addVertexValidation:void 0,moveVertexValidation:void 0,resizeableCircleMarker:!1,resizeableCircle:!0,snapMiddle:!1,snapVertex:!0},setOptions(i){L.Util.setOptions(this,i)},getOptions(){return this.options},applyOptions(){},isPolygon(){return this._layer instanceof L.Polygon},getShape(){return this._shape},_setPane(i,s){s==="layerPane"?i.options.pane=this._map.pm.globalOptions.panes&&this._map.pm.globalOptions.panes.layerPane||"overlayPane":s==="vertexPane"?i.options.pane=this._map.pm.globalOptions.panes&&this._map.pm.globalOptions.panes.vertexPane||"markerPane":s==="markerPane"&&(i.options.pane=this._map.pm.globalOptions.panes&&this._map.pm.globalOptions.panes.markerPane||"markerPane")},remove(){(this._map||this._layer._map).pm.removeLayer({target:this._layer})},_vertexValidation(i,s){let o=s.target,h={layer:this._layer,marker:o,event:s},d="";return i==="move"?d="moveVertexValidation":i==="add"?d="addVertexValidation":i==="remove"&&(d="removeVertexValidation"),this.options[d]&&typeof this.options[d]=="function"&&!this.options[d](h)?(i==="move"&&(o._cancelDragEventChain=o.getLatLng()),!1):(o._cancelDragEventChain=null,!0)},_vertexValidationDrag(i){return i._cancelDragEventChain?(i._latlng=i._cancelDragEventChain,i.update(),!1):!0},_vertexValidationDragEnd(i){return i._cancelDragEventChain?(i._cancelDragEventChain=null,!1):!0}}),ge=Ep;ge.LayerGroup=L.Class.extend({initialize(i){this._layerGroup=i,this._layers=this.getLayers(),this._getMap(),this._layers.forEach(h=>this._initLayer(h));let s=h=>{if(h.layer._pmTempLayer)return;this._layers=this.getLayers();let d=this._layers.filter(m=>!m.pm._parentLayerGroup||!(this._layerGroup._leaflet_id in m.pm._parentLayerGroup));d.forEach(m=>{this._initLayer(m)}),d.length>0&&this._getMap()&&this._getMap().pm.globalEditModeEnabled()&&this.enabled()&&this.enable(this.getOptions())};this._layerGroup.on("layeradd",L.Util.throttle(s,100,this),this),this._layerGroup.on("layerremove",h=>{this._removeLayerFromGroup(h.target)},this);let o=h=>{h.target._pmTempLayer||(this._layers=this.getLayers())};this._layerGroup.on("layerremove",L.Util.throttle(o,100,this),this)},enable(i,s=[]){s.length===0&&(this._layers=this.getLayers()),this._options=i,this._layers.forEach(o=>{o instanceof L.LayerGroup?s.indexOf(o._leaflet_id)===-1&&(s.push(o._leaflet_id),o.pm.enable(i,s)):o.pm.enable(i)})},disable(i=[]){i.length===0&&(this._layers=this.getLayers()),this._layers.forEach(s=>{s instanceof L.LayerGroup?i.indexOf(s._leaflet_id)===-1&&(i.push(s._leaflet_id),s.pm.disable(i)):s.pm.disable()})},enabled(i=[]){return i.length===0&&(this._layers=this.getLayers()),!!this._layers.find(s=>s instanceof L.LayerGroup?i.indexOf(s._leaflet_id)===-1?(i.push(s._leaflet_id),s.pm.enabled(i)):!1:s.pm.enabled())},toggleEdit(i,s=[]){s.length===0&&(this._layers=this.getLayers()),this._options=i,this._layers.forEach(o=>{o instanceof L.LayerGroup?s.indexOf(o._leaflet_id)===-1&&(s.push(o._leaflet_id),o.pm.toggleEdit(i,s)):o.pm.toggleEdit(i)})},_initLayer(i){let s=L.Util.stamp(this._layerGroup);i.pm._parentLayerGroup||(i.pm._parentLayerGroup={}),i.pm._parentLayerGroup[s]=this._layerGroup},_removeLayerFromGroup(i){if(i.pm&&i.pm._layerGroup){let s=L.Util.stamp(this._layerGroup);delete i.pm._layerGroup[s]}},dragging(){return this._layers=this.getLayers(),this._layers?!!this._layers.find(i=>i.pm.dragging()):!1},getOptions(){return this.options},_getMap(){var i;return this._map||((i=this._layers.find(s=>!!s._map))==null?void 0:i._map)||null},getLayers(i=!1,s=!0,o=!0,h=[]){let d=[];return i?this._layerGroup.getLayers().forEach(m=>{d.push(m),m instanceof L.LayerGroup&&h.indexOf(m._leaflet_id)===-1&&(h.push(m._leaflet_id),d=d.concat(m.pm.getLayers(!0,!0,!0,h)))}):d=this._layerGroup.getLayers(),o&&(d=d.filter(m=>!(m instanceof L.LayerGroup))),s&&(d=d.filter(m=>!!m.pm),d=d.filter(m=>!m._pmTempLayer),d=d.filter(m=>!L.PM.optIn&&!m.options.pmIgnore||L.PM.optIn&&m.options.pmIgnore===!1)),d},setOptions(i,s=[]){s.length===0&&(this._layers=this.getLayers()),this.options=i,this._layers.forEach(o=>{o.pm&&(o instanceof L.LayerGroup?s.indexOf(o._leaflet_id)===-1&&(s.push(o._leaflet_id),o.pm.setOptions(i,s)):o.pm.setOptions(i))})}}),ge.Marker=ge.extend({_shape:"Marker",initialize(i){this._layer=i,this._enabled=!1,this._layer.on("dragend",this._onDragEnd,this)},enable(i={draggable:!0}){if(L.Util.setOptions(this,i),!this.options.allowEditing||!this._layer._map){this.disable();return}this._map=this._layer._map,this.enabled()&&this.disable(),this.applyOptions(),this._layer.on("remove",this.disable,this),this._enabled=!0,this._fireEnable()},disable(){this.enabled()&&(this.disableLayerDrag(),this._layer.off("remove",this.disable,this),this._layer.off("contextmenu",this._removeMarker,this),this._layerEdited&&this._fireUpdate(),this._layerEdited=!1,this._fireDisable(),this._enabled=!1)},enabled(){return this._enabled},toggleEdit(i){this.enabled()?this.disable():this.enable(i)},applyOptions(){this.options.snappable?this._initSnappableMarkers():this._disableSnapping(),this.options.draggable?this.enableLayerDrag():this.disableLayerDrag(),this.options.preventMarkerRemoval||this._layer.on("contextmenu",this._removeMarker,this)},_removeMarker(i){let s=i.target;s.remove(),this._fireRemove(s),this._fireRemove(this._map,s)},_onDragEnd(){this._fireEdit(),this._layerEdited=!0},_initSnappableMarkers(){let i=this._layer;this.options.snapDistance=this.options.snapDistance||30,this.options.snapSegment=this.options.snapSegment===void 0?!0:this.options.snapSegment,i.off("pm:drag",this._handleSnapping,this),i.on("pm:drag",this._handleSnapping,this),i.off("pm:dragend",this._cleanupSnapping,this),i.on("pm:dragend",this._cleanupSnapping,this),i.off("pm:dragstart",this._unsnap,this),i.on("pm:dragstart",this._unsnap,this)},_disableSnapping(){let i=this._layer;i.off("pm:drag",this._handleSnapping,this),i.off("pm:dragend",this._cleanupSnapping,this),i.off("pm:dragstart",this._unsnap,this)}});var Yi=A(pi()),Pp={filterMarkerGroup(){this.markerCache=[],this.createCache(),this._layer.on("pm:edit",this.createCache,this),this.applyLimitFilters({}),this.throttledApplyLimitFilters||(this.throttledApplyLimitFilters=L.Util.throttle(this.applyLimitFilters,100,this)),this._layer.on("pm:disable",this._removeMarkerLimitEvents,this),this._layer.on("remove",this._removeMarkerLimitEvents,this),this.options.limitMarkersToCount>-1&&(this._layer.on("pm:vertexremoved",this._initMarkers,this),this._map.on("mousemove",this.throttledApplyLimitFilters,this))},_removeMarkerLimitEvents(){this._map.off("mousemove",this.throttledApplyLimitFilters,this),this._layer.off("pm:edit",this.createCache,this),this._layer.off("pm:disable",this._removeMarkerLimitEvents,this),this._layer.off("pm:vertexremoved",this._initMarkers,this)},createCache(){let i=[...this._markerGroup.getLayers(),...this.markerCache];this.markerCache=i.filter((s,o,h)=>h.indexOf(s)===o)},_removeFromCache(i){let s=this.markerCache.indexOf(i);s>-1&&this.markerCache.splice(s,1)},renderLimits(i){this.markerCache.forEach(s=>{i.includes(s)?this._markerGroup.addLayer(s):this._markerGroup.removeLayer(s)})},applyLimitFilters({latlng:i={lat:0,lng:0}}){if(this._preventRenderMarkers)return;let s=[...this._filterClosestMarkers(i)];this.renderLimits(s)},_filterClosestMarkers(i){let s=[...this.markerCache],o=this.options.limitMarkersToCount;return o===-1?s:(s.sort((h,d)=>{let m=h._latlng.distanceTo(i),y=d._latlng.distanceTo(i);return m-y}),s.filter((h,d)=>o>-1?d<o:!0))},_preventRenderMarkers:!1,_preventRenderingMarkers(i){this._preventRenderMarkers=!!i}},kp=Pp;ge.Line=ge.extend({includes:[kp],_shape:"Line",initialize(i){this._layer=i,this._enabled=!1},enable(i){if(L.Util.setOptions(this,i),this._map=this._layer._map,!!this._map){if(!this.options.allowEditing){this.disable();return}this.enabled()&&this.disable(),this._enabled=!0,this._initMarkers(),this.applyOptions(),this._layer.on("remove",this.disable,this),this.options.allowSelfIntersection||this._layer.on("pm:vertexremoved",this._handleSelfIntersectionOnVertexRemoval,this),this.options.allowSelfIntersection?this.cachedColor=void 0:(this._layer.options.color!=="#f00000ff"?(this.cachedColor=this._layer.options.color,this.isRed=!1):this.isRed=!0,this._handleLayerStyle()),this._fireEnable()}},disable(){if(!this.enabled()||this._dragging)return;this._enabled=!1,this._markerGroup.clearLayers(),this._markerGroup.removeFrom(this._map),this._layer.off("remove",this.disable,this),this.options.allowSelfIntersection||this._layer.off("pm:vertexremoved",this._handleSelfIntersectionOnVertexRemoval,this);let i=this._layer._path?this._layer._path:this._layer._renderer._container;L.DomUtil.removeClass(i,"leaflet-pm-draggable"),this._layerEdited&&this._fireUpdate(),this._layerEdited=!1,this._fireDisable()},enabled(){return this._enabled},toggleEdit(i){return this.enabled()?this.disable():this.enable(i),this.enabled()},applyOptions(){this.options.snappable?this._initSnappableMarkers():this._disableSnapping()},_initMarkers(){let i=this._map,s=this._layer.getLatLngs();this._markerGroup&&(this._markerGroup.removeFrom(i),this._markerGroup.clearLayers()),this._markerGroup=new L.FeatureGroup,this._markerGroup._pmTempLayer=!0;let o=h=>{if(Array.isArray(h[0]))return h.map(o,this);let d=h.map(this._createMarker,this);return this.options.hideMiddleMarkers!==!0&&h.map((m,y)=>{let v=this.isPolygon()?(y+1)%h.length:y+1;return this._createMiddleMarker(d[y],d[v])}),d};this._markers=o(s),this.filterMarkerGroup(),i.addLayer(this._markerGroup)},_createMarker(i){let s=new L.Marker(i,{draggable:!0,icon:L.divIcon({className:"marker-icon"})});return this._setPane(s,"vertexPane"),s._pmTempLayer=!0,this.options.rotate?(s.on("dragstart",this._onRotateStart,this),s.on("drag",this._onRotate,this),s.on("dragend",this._onRotateEnd,this)):(s.on("click",this._onVertexClick,this),s.on("dragstart",this._onMarkerDragStart,this),s.on("move",this._onMarkerDrag,this),s.on("dragend",this._onMarkerDragEnd,this),this.options.preventMarkerRemoval||s.on(this.options.removeVertexOn,this._removeMarker,this)),this._markerGroup.addLayer(s),s},_createMiddleMarker(i,s){if(!i||!s)return!1;let o=L.PM.Utils.calcMiddleLatLng(this._map,i.getLatLng(),s.getLatLng()),h=this._createMarker(o),d=L.divIcon({className:"marker-icon marker-icon-middle"});return h.setIcon(d),h.leftM=i,h.rightM=s,i._middleMarkerNext=h,s._middleMarkerPrev=h,h.on(this.options.addVertexOn,this._onMiddleMarkerClick,this),h.on("movestart",this._onMiddleMarkerMoveStart,this),h},_onMiddleMarkerClick(i){let s=i.target;if(!this._vertexValidation("add",i))return;let o=L.divIcon({className:"marker-icon"});s.setIcon(o),this._addMarker(s,s.leftM,s.rightM)},_onMiddleMarkerMoveStart(i){let s=i.target;if(s.on("moveend",this._onMiddleMarkerMoveEnd,this),!this._vertexValidation("add",i)){s.on("move",this._onMiddleMarkerMovePrevent,this);return}s._dragging=!0,this._addMarker(s,s.leftM,s.rightM)},_onMiddleMarkerMovePrevent(i){let s=i.target;this._vertexValidationDrag(s)},_onMiddleMarkerMoveEnd(i){let s=i.target;if(s.off("move",this._onMiddleMarkerMovePrevent,this),s.off("moveend",this._onMiddleMarkerMoveEnd,this),!this._vertexValidationDragEnd(s))return;let o=L.divIcon({className:"marker-icon"});s.setIcon(o),setTimeout(()=>{delete s._dragging},100)},_addMarker(i,s,o){i.off("movestart",this._onMiddleMarkerMoveStart,this),i.off(this.options.addVertexOn,this._onMiddleMarkerClick,this);let h=i.getLatLng(),d=this._layer._latlngs;delete i.leftM,delete i.rightM;let{indexPath:m,index:y,parentPath:v}=L.PM.Utils.findDeepMarkerIndex(this._markers,s),w=m.length>1?(0,Yi.default)(d,v):d,P=m.length>1?(0,Yi.default)(this._markers,v):this._markers;w.splice(y+1,0,h),P.splice(y+1,0,i),this._layer.setLatLngs(d),this.options.hideMiddleMarkers!==!0&&(this._createMiddleMarker(s,i),this._createMiddleMarker(i,o)),this._fireEdit(),this._layerEdited=!0,this._fireChange(this._layer.getLatLngs(),"Edit"),this._fireVertexAdded(i,L.PM.Utils.findDeepMarkerIndex(this._markers,i).indexPath,h),this.options.snappable&&this._initSnappableMarkers()},hasSelfIntersection(){return qn(this._layer.toGeoJSON(15)).features.length>0},_handleSelfIntersectionOnVertexRemoval(){this._handleLayerStyle(!0)&&(this._layer.setLatLngs(this._coordsBeforeEdit),this._coordsBeforeEdit=null,this._initMarkers())},_handleLayerStyle(i){let s=this._layer,o,h;if(this.options.allowSelfIntersection?o=!1:(h=qn(this._layer.toGeoJSON(15)),o=h.features.length>0),o){if(!this.options.allowSelfIntersection&&this.options.allowSelfIntersectionEdit&&this._updateDisabledMarkerStyle(this._markers,!0),this.isRed)return o;i?this._flashLayer():(s.setStyle({color:"#f00000ff"}),this.isRed=!0),this._fireIntersect(h)}else s.setStyle({color:this.cachedColor}),this.isRed=!1,!this.options.allowSelfIntersection&&this.options.allowSelfIntersectionEdit&&this._updateDisabledMarkerStyle(this._markers,!1);return o},_flashLayer(){this.cachedColor||(this.cachedColor=this._layer.options.color),this._layer.setStyle({color:"#f00000ff"}),this.isRed=!0,window.setTimeout(()=>{this._layer.setStyle({color:this.cachedColor}),this.isRed=!1},200)},_updateDisabledMarkerStyle(i,s){i.forEach(o=>{Array.isArray(o)?this._updateDisabledMarkerStyle(o,s):o._icon&&(s&&!this._checkMarkerAllowedToDrag(o)?L.DomUtil.addClass(o._icon,"vertexmarker-disabled"):L.DomUtil.removeClass(o._icon,"vertexmarker-disabled"))})},_removeMarker(i){let s=i.target;if(!this._vertexValidation("remove",i))return;this.options.allowSelfIntersection||(this._coordsBeforeEdit=We(this._layer,this._layer.getLatLngs()));let o=this._layer.getLatLngs(),{indexPath:h,index:d,parentPath:m}=L.PM.Utils.findDeepMarkerIndex(this._markers,s);if(!h)return;let y=h.length>1?(0,Yi.default)(o,m):o,v=h.length>1?(0,Yi.default)(this._markers,m):this._markers,w=m[m.length-1]>0&&this._layer instanceof L.Polygon;if(!this.options.removeLayerBelowMinVertexCount&&!w&&(y.length<=2||this.isPolygon()&&y.length<=3)){this._flashLayer();return}y.splice(d,1),this._layer.setLatLngs(o),this.isPolygon()&&y.length<=2&&y.splice(0,y.length);let P=!1;if(y.length<=1&&(y.splice(0,y.length),m.length>1&&h.length>1&&(o=un(o)),this._layer.setLatLngs(o),this._initMarkers(),P=!0),Pi(o)||this._layer.remove(),o=un(o),this._layer.setLatLngs(o),this._markers=un(this._markers),!P&&(v=h.length>1?(0,Yi.default)(this._markers,m):this._markers,s._middleMarkerPrev&&(this._markerGroup.removeLayer(s._middleMarkerPrev),this._removeFromCache(s._middleMarkerPrev)),s._middleMarkerNext&&(this._markerGroup.removeLayer(s._middleMarkerNext),this._removeFromCache(s._middleMarkerNext)),this._markerGroup.removeLayer(s),this._removeFromCache(s),v)){let N,F;if(this.isPolygon()?(N=(d+1)%v.length,F=(d+(v.length-1))%v.length):(F=d-1<0?void 0:d-1,N=d+1>=v.length?void 0:d+1),N!==F){let tt=v[F],it=v[N];this.options.hideMiddleMarkers!==!0&&this._createMiddleMarker(tt,it)}v.splice(d,1)}this._fireEdit(),this._layerEdited=!0,this._fireVertexRemoved(s,h),this._fireChange(this._layer.getLatLngs(),"Edit")},updatePolygonCoordsFromMarkerDrag(i){let s=this._layer.getLatLngs(),o=i.getLatLng(),{indexPath:h,index:d,parentPath:m}=L.PM.Utils.findDeepMarkerIndex(this._markers,i);(h.length>1?(0,Yi.default)(s,m):s).splice(d,1,o),this._layer.setLatLngs(s)},_getNeighborMarkers(i){let{indexPath:s,index:o,parentPath:h}=L.PM.Utils.findDeepMarkerIndex(this._markers,i),d=s.length>1?(0,Yi.default)(this._markers,h):this._markers,m=(o+1)%d.length,y=(o+(d.length-1))%d.length,v=d[y],w=d[m];return{prevMarker:v,nextMarker:w}},_checkMarkerAllowedToDrag(i){let{prevMarker:s,nextMarker:o}=this._getNeighborMarkers(i),h=L.polyline([s.getLatLng(),i.getLatLng()]),d=L.polyline([i.getLatLng(),o.getLatLng()]),m=Xe(this._layer.toGeoJSON(15),h.toGeoJSON(15)).features.length,y=Xe(this._layer.toGeoJSON(15),d.toGeoJSON(15)).features.length;return i.getLatLng()===this._markers[0][0].getLatLng()?y+=1:i.getLatLng()===this._markers[0][this._markers[0].length-1].getLatLng()&&(m+=1),!(m<=2&&y<=2)},_onMarkerDragStart(i){let s=i.target;if(this.cachedColor||(this.cachedColor=this._layer.options.color),!this._vertexValidation("move",i))return;let{indexPath:o}=L.PM.Utils.findDeepMarkerIndex(this._markers,s);this._fireMarkerDragStart(i,o),this.options.allowSelfIntersection||(this._coordsBeforeEdit=We(this._layer,this._layer.getLatLngs())),!this.options.allowSelfIntersection&&this.options.allowSelfIntersectionEdit&&this.hasSelfIntersection()?this._markerAllowedToDrag=this._checkMarkerAllowedToDrag(s):this._markerAllowedToDrag=null},_onMarkerDrag(i){let s=i.target;if(!this._vertexValidationDrag(s))return;let{indexPath:o,index:h,parentPath:d}=L.PM.Utils.findDeepMarkerIndex(this._markers,s);if(!o)return;if(!this.options.allowSelfIntersection&&this.options.allowSelfIntersectionEdit&&this.hasSelfIntersection()&&this._markerAllowedToDrag===!1){this._layer.setLatLngs(this._coordsBeforeEdit),this._initMarkers(),this._handleLayerStyle();return}this.updatePolygonCoordsFromMarkerDrag(s);let m=o.length>1?(0,Yi.default)(this._markers,d):this._markers,y=(h+1)%m.length,v=(h+(m.length-1))%m.length,w=s.getLatLng(),P=m[v].getLatLng(),N=m[y].getLatLng();if(s._middleMarkerNext){let F=L.PM.Utils.calcMiddleLatLng(this._map,w,N);s._middleMarkerNext.setLatLng(F)}if(s._middleMarkerPrev){let F=L.PM.Utils.calcMiddleLatLng(this._map,w,P);s._middleMarkerPrev.setLatLng(F)}this.options.allowSelfIntersection||this._handleLayerStyle(),this._fireMarkerDrag(i,o),this._fireChange(this._layer.getLatLngs(),"Edit")},_onMarkerDragEnd(i){let s=i.target;if(!this._vertexValidationDragEnd(s))return;let{indexPath:o}=L.PM.Utils.findDeepMarkerIndex(this._markers,s),h=!this.options.allowSelfIntersection&&this.hasSelfIntersection();h&&this.options.allowSelfIntersectionEdit&&this._markerAllowedToDrag&&(h=!1);let d=!this.options.allowSelfIntersection&&h;if(this._fireMarkerDragEnd(i,o,d),d){this._layer.setLatLngs(this._coordsBeforeEdit),this._coordsBeforeEdit=null,this._initMarkers(),this.options.snappable&&this._initSnappableMarkers(),this._handleLayerStyle(),this._fireLayerReset(i,o);return}!this.options.allowSelfIntersection&&this.options.allowSelfIntersectionEdit&&this._handleLayerStyle(),this._fireEdit(),this._layerEdited=!0,this._fireChange(this._layer.getLatLngs(),"Edit")},_onVertexClick(i){let s=i.target;if(s._dragging)return;let{indexPath:o}=L.PM.Utils.findDeepMarkerIndex(this._markers,s);this._fireVertexClick(i,o)}}),ge.Polygon=ge.Line.extend({_shape:"Polygon",_checkMarkerAllowedToDrag(i){let{prevMarker:s,nextMarker:o}=this._getNeighborMarkers(i),h=L.polyline([s.getLatLng(),i.getLatLng()]),d=L.polyline([i.getLatLng(),o.getLatLng()]),m=Xe(this._layer.toGeoJSON(15),h.toGeoJSON(15)).features.length,y=Xe(this._layer.toGeoJSON(15),d.toGeoJSON(15)).features.length;return!(m<=2&&y<=2)}}),ge.Rectangle=ge.Polygon.extend({_shape:"Rectangle",_initMarkers(){let i=this._map,s=this._findCorners();this._markerGroup&&this._markerGroup.clearLayers(),this._markerGroup=new L.FeatureGroup,this._markerGroup._pmTempLayer=!0,i.addLayer(this._markerGroup),this._markers=[],this._markers[0]=s.map(this._createMarker,this),[this._cornerMarkers]=this._markers,this._layer.getLatLngs()[0].forEach((o,h)=>{let d=this._cornerMarkers.find(m=>m._index===h);d&&d.setLatLng(o)})},applyOptions(){this.options.snappable?this._initSnappableMarkers():this._disableSnapping(),this._addMarkerEvents()},_createMarker(i,s){let o=new L.Marker(i,{draggable:!0,icon:L.divIcon({className:"marker-icon"})});return this._setPane(o,"vertexPane"),o._origLatLng=i,o._index=s,o._pmTempLayer=!0,o.on("click",this._onVertexClick,this),this._markerGroup.addLayer(o),o},_addMarkerEvents(){this._markers[0].forEach(i=>{i.on("dragstart",this._onMarkerDragStart,this),i.on("drag",this._onMarkerDrag,this),i.on("dragend",this._onMarkerDragEnd,this),this.options.preventMarkerRemoval||i.on("contextmenu",this._removeMarker,this)})},_removeMarker(){return null},_onMarkerDragStart(i){if(!this._vertexValidation("move",i))return;let s=i.target,o=this._cornerMarkers;s._oppositeCornerLatLng=o.find(d=>d._index===(s._index+2)%4).getLatLng(),s._snapped=!1;let{indexPath:h}=L.PM.Utils.findDeepMarkerIndex(this._markers,s);this._fireMarkerDragStart(i,h)},_onMarkerDrag(i){let s=i.target;if(!this._vertexValidationDrag(s)||s._index===void 0)return;this._adjustRectangleForMarkerMove(s);let{indexPath:o}=L.PM.Utils.findDeepMarkerIndex(this._markers,s);this._fireMarkerDrag(i,o),this._fireChange(this._layer.getLatLngs(),"Edit")},_onMarkerDragEnd(i){let s=i.target;if(!this._vertexValidationDragEnd(s))return;this._cornerMarkers.forEach(h=>{delete h._oppositeCornerLatLng});let{indexPath:o}=L.PM.Utils.findDeepMarkerIndex(this._markers,s);this._fireMarkerDragEnd(i,o),this._fireEdit(),this._layerEdited=!0,this._fireChange(this._layer.getLatLngs(),"Edit")},_adjustRectangleForMarkerMove(i){L.extend(i._origLatLng,i._latlng);let s=L.PM.Utils._getRotatedRectangle(i.getLatLng(),i._oppositeCornerLatLng,this.getAngle(),this._map);this._layer.setLatLngs(s),this._adjustAllMarkers(i),this._layer.redraw()},_adjustAllMarkers(i){let s=this._layer.getLatLngs()[0];if(s&&s.length!==4&&s.length>0)s.forEach((o,h)=>{this._cornerMarkers[h].setLatLng(o)}),this._cornerMarkers.slice(s.length).forEach(o=>{o.setLatLng(s[0])});else if(!s||!s.length)console.error("The layer has no LatLngs");else{let o=s.findIndex(h=>i.getLatLng().equals(h));o>-1?(this._cornerMarkers[(i._index+1)%4].setLatLng(s[(o+1)%4]),this._cornerMarkers[(i._index+2)%4].setLatLng(s[(o+2)%4]),this._cornerMarkers[(i._index+3)%4].setLatLng(s[(o+3)%4])):this._cornerMarkers.forEach(h=>{h.setLatLng(s[h._index])})}},_findCorners(){this._angle===void 0&&this.setInitAngle(Zn(this._map,this._layer.getLatLngs()[0][0],this._layer.getLatLngs()[0][1])||0);let i=this._layer.getLatLngs()[0];return L.PM.Utils._getRotatedRectangle(i[0],i[2],this.getAngle(),this._map||this)}}),ge.CircleMarker=ge.extend({_shape:"CircleMarker",initialize(i){this._layer=i,this._enabled=!1,this._minRadiusOption="minRadiusCircleMarker",this._maxRadiusOption="maxRadiusCircleMarker",this._editableOption="resizeableCircleMarker",this._updateHiddenPolyCircle()},enable(i={draggable:!0,snappable:!0}){if(L.Util.setOptions(this,i),this.options.editable&&(this.options.resizeableCircleMarker=this.options.editable,delete this.options.editable),!this.options.allowEditing||!this._layer._map){this.disable();return}this._map=this._layer._map,this.enabled()&&this.disable(),this.applyOptions(),this._layer.on("remove",this.disable,this),this._enabled=!0,this._extendingEnable(),this._updateHiddenPolyCircle(),this._fireEnable()},_extendingEnable(){this._layer.on("pm:dragstart",this._onDragStart,this),this._layer.on("pm:drag",this._onMarkerDrag,this),this._layer.on("pm:dragend",this._onMarkerDragEnd,this)},disable(){this.dragging()||(this._map||(this._map=this._layer._map),this._map&&this.enabled()&&(this.layerDragEnabled()&&this.disableLayerDrag(),this._helperLayers&&(this._helperLayers.clearLayers(),this._helperLayers.removeFrom(this._map)),this.options[this._editableOption]?(this._map.off("move",this._syncMarkers,this),this._outerMarker.off("drag",this._handleOuterMarkerSnapping,this)):this._map.off("move",this._updateHiddenPolyCircle,this),this._extendingDisable(),this._layer.off("remove",this.disable,this),this._layerEdited&&this._fireUpdate(),this._layerEdited=!1,this._fireDisable(),this._enabled=!1))},_extendingDisable(){this._layer.off("contextmenu",this._removeMarker,this)},enabled(){return this._enabled},toggleEdit(i){this.enabled()?this.disable():this.enable(i)},applyOptions(){this.options[this._editableOption]?(this._initMarkers(),this._map.on("move",this._syncMarkers,this),this.options.snappable?(this._initSnappableMarkers(),this._outerMarker.on("drag",this._handleOuterMarkerSnapping,this),this._outerMarker.on("move",this._syncHintLine,this),this._outerMarker.on("move",this._syncCircleRadius,this)):this._disableSnapping()):(this.options.draggable&&this.enableLayerDrag(),this._map.on("move",this._updateHiddenPolyCircle,this),this.options.snappable?this._initSnappableMarkersDrag():this._disableSnappingDrag()),this._extendingApplyOptions()},_extendingApplyOptions(){this.options.preventMarkerRemoval||this._layer.on("contextmenu",this._removeMarker,this)},_initMarkers(){let i=this._map;this._helperLayers&&(this._helperLayers.removeFrom(i),this._helperLayers.clearLayers()),this._helperLayers=new L.FeatureGroup,this._helperLayers._pmTempLayer=!0,this._helperLayers.addTo(i);let s=this._layer.getLatLng(),o=this._layer._radius,h=this._getLatLngOnCircle(s,o);this._centerMarker=this._createCenterMarker(s),this._outerMarker=this._createOuterMarker(h),this._markers=[this._centerMarker,this._outerMarker],this._createHintLine(this._centerMarker,this._outerMarker)},_getLatLngOnCircle(i,s){let o=this._map.project(i),h=L.point(o.x+s,o.y);return this._map.unproject(h)},_createHintLine(i,s){let o=i.getLatLng(),h=s.getLatLng();this._hintline=L.polyline([o,h],this.options.hintlineStyle),this._setPane(this._hintline,"layerPane"),this._hintline._pmTempLayer=!0,this._helperLayers.addLayer(this._hintline)},_createCenterMarker(i){let s=this._createMarker(i);return this.options.draggable?(L.DomUtil.addClass(s._icon,"leaflet-pm-draggable"),s.on("move",this._moveCircle,this)):s.dragging.disable(),s},_createOuterMarker(i){let s=this._createMarker(i);return s.on("drag",this._resizeCircle,this),s},_createMarker(i){let s=new L.Marker(i,{draggable:!0,icon:L.divIcon({className:"marker-icon"})});return this._setPane(s,"vertexPane"),s._origLatLng=i,s._pmTempLayer=!0,s.on("dragstart",this._onMarkerDragStart,this),s.on("drag",this._onMarkerDrag,this),s.on("dragend",this._onMarkerDragEnd,this),s.on("click",this._onVertexClick,this),this._helperLayers.addLayer(s),s},_moveCircle(i){if(i.target._cancelDragEventChain)return;let s=this._centerMarker.getLatLng();this._layer.setLatLng(s);let o=this._layer._radius,h=this._getLatLngOnCircle(s,o);this._outerMarker._latlng=h,this._outerMarker.update(),this._syncHintLine(),this._updateHiddenPolyCircle(),this._fireCenterPlaced("Edit"),this._fireChange(this._layer.getLatLng(),"Edit")},_syncMarkers(){let i=this._layer.getLatLng(),s=this._layer._radius,o=this._getLatLngOnCircle(i,s);this._outerMarker.setLatLng(o),this._centerMarker.setLatLng(i),this._syncHintLine(),this._updateHiddenPolyCircle()},_resizeCircle(){this._outerMarker.setLatLng(this._getNewDestinationOfOuterMarker()),this._syncHintLine(),this._syncCircleRadius()},_syncCircleRadius(){let i=this._centerMarker.getLatLng(),s=this._outerMarker.getLatLng(),o=this._distanceCalculation(i,s);this.options[this._minRadiusOption]&&o<this.options[this._minRadiusOption]?this._layer.setRadius(this.options[this._minRadiusOption]):this.options[this._maxRadiusOption]&&o>this.options[this._maxRadiusOption]?this._layer.setRadius(this.options[this._maxRadiusOption]):this._layer.setRadius(o),this._updateHiddenPolyCircle(),this._fireChange(this._layer.getLatLng(),"Edit")},_syncHintLine(){let i=this._centerMarker.getLatLng(),s=this._outerMarker.getLatLng();this._hintline.setLatLngs([i,s])},_removeMarker(){this.options[this._editableOption]&&this.disable(),this._layer.remove(),this._fireRemove(this._layer),this._fireRemove(this._map,this._layer)},_onDragStart(){this._map.pm.Draw.CircleMarker._layerIsDragging=!0},_onMarkerDragStart(i){this._vertexValidation("move",i)&&this._fireMarkerDragStart(i)},_onMarkerDrag(i){let s=i.target;s instanceof L.Marker&&!this._vertexValidationDrag(s)||this._fireMarkerDrag(i)},_onMarkerDragEnd(i){this._extedingMarkerDragEnd();let s=i.target;this._vertexValidationDragEnd(s)&&(this.options[this._editableOption]&&(this._fireEdit(),this._layerEdited=!0),this._fireMarkerDragEnd(i))},_extedingMarkerDragEnd(){this._map.pm.Draw.CircleMarker._layerIsDragging=!1},_initSnappableMarkersDrag(){let i=this._layer;this.options.snapDistance=this.options.snapDistance||30,this.options.snapSegment=this.options.snapSegment===void 0?!0:this.options.snapSegment,i.off("pm:drag",this._handleSnapping,this),i.on("pm:drag",this._handleSnapping,this),i.off("pm:dragend",this._cleanupSnapping,this),i.on("pm:dragend",this._cleanupSnapping,this),i.off("pm:dragstart",this._unsnap,this),i.on("pm:dragstart",this._unsnap,this)},_disableSnappingDrag(){let i=this._layer;i.off("pm:drag",this._handleSnapping,this),i.off("pm:dragend",this._cleanupSnapping,this),i.off("pm:dragstart",this._unsnap,this)},_updateHiddenPolyCircle(){let i=this._layer._map||this._map;if(i){let s=L.PM.Utils.pxRadiusToMeterRadius(this._layer.getRadius(),i,this._layer.getLatLng()),o=L.circle(this._layer.getLatLng(),this._layer.options);o.setRadius(s);let h=i&&i.pm._isCRSSimple();this._hiddenPolyCircle?this._hiddenPolyCircle.setLatLngs(L.PM.Utils.circleToPolygon(o,200,!h).getLatLngs()):this._hiddenPolyCircle=L.PM.Utils.circleToPolygon(o,200,!h),this._hiddenPolyCircle._parentCopy||(this._hiddenPolyCircle._parentCopy=this._layer)}},_getNewDestinationOfOuterMarker(){let i=this._centerMarker.getLatLng(),s=this._outerMarker.getLatLng(),o=this._distanceCalculation(i,s);return this.options[this._minRadiusOption]&&o<this.options[this._minRadiusOption]?s=jn(this._map,i,s,this._getMinDistanceInMeter(i)):this.options[this._maxRadiusOption]&&o>this.options[this._maxRadiusOption]&&(s=jn(this._map,i,s,this._getMaxDistanceInMeter(i))),s},_handleOuterMarkerSnapping(){if(this._outerMarker._snapped){let i=this._centerMarker.getLatLng(),s=this._outerMarker.getLatLng(),o=this._distanceCalculation(i,s);this.options[this._minRadiusOption]&&o<this.options[this._minRadiusOption]?this._outerMarker.setLatLng(this._outerMarker._orgLatLng):this.options[this._maxRadiusOption]&&o>this.options[this._maxRadiusOption]&&this._outerMarker.setLatLng(this._outerMarker._orgLatLng)}this._outerMarker.setLatLng(this._getNewDestinationOfOuterMarker())},_distanceCalculation(i,s){return this._map.project(i).distanceTo(this._map.project(s))},_getMinDistanceInMeter(i){return L.PM.Utils.pxRadiusToMeterRadius(this.options[this._minRadiusOption],this._map,i)},_getMaxDistanceInMeter(i){return L.PM.Utils.pxRadiusToMeterRadius(this.options[this._maxRadiusOption],this._map,i)},_onVertexClick(i){i.target._dragging||this._fireVertexClick(i,void 0)}}),ge.Circle=ge.CircleMarker.extend({_shape:"Circle",initialize(i){this._layer=i,this._enabled=!1,this._minRadiusOption="minRadiusCircle",this._maxRadiusOption="maxRadiusCircle",this._editableOption="resizeableCircle",this._updateHiddenPolyCircle()},enable(i){L.PM.Edit.CircleMarker.prototype.enable.call(this,i||{})},_extendingEnable(){},_extendingDisable(){this._layer.off("remove",this.disable,this);let i=this._layer._path?this._layer._path:this._layer._renderer._container;L.DomUtil.removeClass(i,"leaflet-pm-draggable")},_extendingApplyOptions(){},_syncMarkers(){},_removeMarker(){},_onDragStart(){},_extedingMarkerDragEnd(){},_updateHiddenPolyCircle(){let i=this._map&&this._map.pm._isCRSSimple();this._hiddenPolyCircle?this._hiddenPolyCircle.setLatLngs(L.PM.Utils.circleToPolygon(this._layer,200,!i).getLatLngs()):this._hiddenPolyCircle=L.PM.Utils.circleToPolygon(this._layer,200,!i),this._hiddenPolyCircle._parentCopy||(this._hiddenPolyCircle._parentCopy=this._layer)},_distanceCalculation(i,s){return this._map.distance(i,s)},_getMinDistanceInMeter(){return this.options[this._minRadiusOption]},_getMaxDistanceInMeter(){return this.options[this._maxRadiusOption]},_onVertexClick(i){i.target._dragging||this._fireVertexClick(i,void 0)}}),ge.ImageOverlay=ge.extend({_shape:"ImageOverlay",initialize(i){this._layer=i,this._enabled=!1},toggleEdit(i){this.enabled()?this.disable():this.enable(i)},enabled(){return this._enabled},enable(i={draggable:!0,snappable:!0}){if(L.Util.setOptions(this,i),this._map=this._layer._map,!!this._map){if(!this.options.allowEditing){this.disable();return}this.enabled()||this.disable(),this.enableLayerDrag(),this._layer.on("remove",this.disable,this),this._enabled=!0,this._otherSnapLayers=this._findCorners(),this._fireEnable()}},disable(){this._dragging||(this._map||(this._map=this._layer._map),this.disableLayerDrag(),this._layer.off("remove",this.disable,this),this.enabled()||(this._layerEdited&&this._fireUpdate(),this._layerEdited=!1,this._fireDisable()),this._enabled=!1)},_findCorners(){let i=this._layer.getBounds(),s=i.getNorthWest(),o=i.getNorthEast(),h=i.getSouthEast(),d=i.getSouthWest();return[s,o,h,d]}}),ge.Text=ge.extend({_shape:"Text",initialize(i){this._layer=i,this._enabled=!1},enable(i){if(L.Util.setOptions(this,i),!!this.textArea){if(!this.options.allowEditing||!this._layer._map){this.disable();return}this._map=this._layer._map,this.enabled()&&this.disable(),this.applyOptions(),this._safeToCacheDragState=!0,this._focusChange(),this.textArea.readOnly=!1,this.textArea.classList.remove("pm-disabled"),this._layer.on("remove",this.disable,this),L.DomEvent.on(this.textArea,"input",this._autoResize,this),L.DomEvent.on(this.textArea,"focus",this._focusChange,this),L.DomEvent.on(this.textArea,"blur",this._focusChange,this),this._layer.on("dblclick",L.DomEvent.stop),L.DomEvent.off(this.textArea,"mousedown",this._preventTextSelection),this._enabled=!0,this._fireEnable()}},disable(){if(!this.enabled())return;this._layer.off("remove",this.disable,this),L.DomEvent.off(this.textArea,"input",this._autoResize,this),L.DomEvent.off(this.textArea,"focus",this._focusChange,this),L.DomEvent.off(this.textArea,"blur",this._focusChange,this),L.DomEvent.off(document,"click",this._documentClick,this),this._focusChange(),this.textArea.readOnly=!0,this.textArea.classList.add("pm-disabled");let i=document.activeElement;this.textArea.focus(),this.textArea.selectionStart=0,this.textArea.selectionEnd=0,L.DomEvent.on(this.textArea,"mousedown",this._preventTextSelection),i.focus(),this._disableOnBlurActive=!1,this._layerEdited&&this._fireUpdate(),this._layerEdited=!1,this._fireDisable(),this._enabled=!1},enabled(){return this._enabled},toggleEdit(i){this.enabled()?this.disable():this.enable(i)},applyOptions(){this.options.snappable?this._initSnappableMarkers():this._disableSnapping()},_initSnappableMarkers(){let i=this._layer;this.options.snapDistance=this.options.snapDistance||30,this.options.snapSegment=this.options.snapSegment===void 0?!0:this.options.snapSegment,i.off("pm:drag",this._handleSnapping,this),i.on("pm:drag",this._handleSnapping,this),i.off("pm:dragend",this._cleanupSnapping,this),i.on("pm:dragend",this._cleanupSnapping,this),i.off("pm:dragstart",this._unsnap,this),i.on("pm:dragstart",this._unsnap,this)},_disableSnapping(){let i=this._layer;i.off("pm:drag",this._handleSnapping,this),i.off("pm:dragend",this._cleanupSnapping,this),i.off("pm:dragstart",this._unsnap,this)},_autoResize(){this.textArea.style.height="1px",this.textArea.style.width="1px";let i=this.textArea.scrollHeight>21?this.textArea.scrollHeight:21,s=this.textArea.scrollWidth>16?this.textArea.scrollWidth:16;this.textArea.style.height=`${i}px`,this.textArea.style.width=`${s}px`,this._layer.options.text=this.getText(),this._fireTextChange(this.getText())},_disableOnBlur(){this._disableOnBlurActive=!0,setTimeout(()=>{this.enabled()&&L.DomEvent.on(document,"click",this._documentClick,this)},100)},_documentClick(i){i.target!==this.textArea&&(this.disable(),!this.getText()&&this.options.removeIfEmpty&&this.remove())},_focusChange(i={}){let s=this._hasFocus;this._hasFocus=i.type==="focus",!s!=!this._hasFocus&&(this._hasFocus?(this._applyFocus(),this._focusText=this.getText(),this._fireTextFocus()):(this._removeFocus(),this._fireTextBlur(),this._focusText!==this.getText()&&(this._fireEdit(),this._layerEdited=!0)))},_applyFocus(){this.textArea.classList.add("pm-hasfocus"),this._map.dragging&&(this._safeToCacheDragState&&(this._originalMapDragState=this._map.dragging._enabled,this._safeToCacheDragState=!1),this._map.dragging.disable())},_removeFocus(){this._map.dragging&&(this._originalMapDragState&&this._map.dragging.enable(),this._safeToCacheDragState=!0),this.textArea.classList.remove("pm-hasfocus")},focus(){if(!this.enabled())throw new TypeError("Layer is not enabled");this.textArea.focus()},blur(){if(!this.enabled())throw new TypeError("Layer is not enabled");this.textArea.blur(),this._disableOnBlurActive&&this.disable()},hasFocus(){return this._hasFocus},getElement(){return this.textArea},setText(i){i&&(this.textArea.value=i),this._autoResize()},getText(){return this.textArea.value},_initTextMarker(){if(this.textArea=L.PM.Draw.Text.prototype._createTextArea.call(this),this.options.className){let s=this.options.className.split(" ");this.textArea.classList.add(...s)}let i=L.PM.Draw.Text.prototype._createTextIcon.call(this,this.textArea);this._layer.setIcon(i),this._layer.once("add",this._createTextMarker,this)},_createTextMarker(i=!1){this._layer.off("add",this._createTextMarker,this),this._layer.getElement().tabIndex=-1,this.textArea.wrap="off",this.textArea.style.overflow="hidden",this.textArea.style.height=L.DomUtil.getStyle(this.textArea,"font-size"),this.textArea.style.width="1px",this._layer.options.text&&this.setText(this._layer.options.text),this._autoResize(),i===!0&&(this.enable(),this.focus(),this._disableOnBlur())},_preventTextSelection(i){i.preventDefault()}});var dh=function(i,s,o,h,d,m){this._matrix=[i,s,o,h,d,m]};dh.init=()=>new L.PM.Matrix(1,0,0,1,0,0),dh.prototype={transform(i){return this._transform(i.clone())},_transform(i){let s=this._matrix,{x:o,y:h}=i;return i.x=s[0]*o+s[1]*h+s[4],i.y=s[2]*o+s[3]*h+s[5],i},untransform(i){let s=this._matrix;return new L.Point((i.x/s[0]-s[4])/s[0],(i.y/s[2]-s[5])/s[2])},clone(){let i=this._matrix;return new L.PM.Matrix(i[0],i[1],i[2],i[3],i[4],i[5])},translate(i){if(i===void 0)return new L.Point(this._matrix[4],this._matrix[5]);let s,o;return typeof i=="number"?(s=i,o=i):(s=i.x,o=i.y),this._add(1,0,0,1,s,o)},scale(i,s){if(i===void 0)return new L.Point(this._matrix[0],this._matrix[3]);let o,h;return s=s||L.point(0,0),typeof i=="number"?(o=i,h=i):(o=i.x,h=i.y),this._add(o,0,0,h,s.x,s.y)._add(1,0,0,1,-s.x,-s.y)},rotate(i,s){let o=Math.cos(i),h=Math.sin(i);return s=s||new L.Point(0,0),this._add(o,h,-h,o,s.x,s.y)._add(1,0,0,1,-s.x,-s.y)},flip(){return this._matrix[1]*=-1,this._matrix[2]*=-1,this},_add(i,s,o,h,d,m){let y=[[],[],[]],v=this._matrix,w=[[v[0],v[2],v[4]],[v[1],v[3],v[5]],[0,0,1]],P=[[i,o,d],[s,h,m],[0,0,1]],N;i&&i instanceof L.PM.Matrix&&(v=i._matrix,P=[[v[0],v[2],v[4]],[v[1],v[3],v[5]],[0,0,1]]);for(let F=0;F<3;F+=1)for(let tt=0;tt<3;tt+=1){N=0;for(let it=0;it<3;it+=1)N+=w[F][it]*P[it][tt];y[F][tt]=N}return this._matrix=[y[0][0],y[1][0],y[0][1],y[1][1],y[0][2],y[1][2]],this}};var Bp=dh,Sp={calcMiddleLatLng(i,s,o){let h=i.project(s),d=i.project(o);return i.unproject(h._add(d)._divideBy(2))},findLayers(i){let s=[];return i.eachLayer(o=>{(o instanceof L.Polyline||o instanceof L.Marker||o instanceof L.Circle||o instanceof L.CircleMarker||o instanceof L.ImageOverlay)&&s.push(o)}),s=s.filter(o=>!!o.pm),s=s.filter(o=>!o._pmTempLayer),s=s.filter(o=>!L.PM.optIn&&!o.options.pmIgnore||L.PM.optIn&&o.options.pmIgnore===!1),s},circleToPolygon(i,s=60,o=!0){let h=i.getLatLng(),d=i.getRadius(),m=Un(h,d,s,0,o),y=[];for(let v=0;v<m.length;v+=1){let w=[m[v].lat,m[v].lng];y.push(w)}return L.polygon(y,i.options)},disablePopup(i){i.getPopup()&&(i._tempPopupCopy=i.getPopup(),i.unbindPopup())},enablePopup(i){i._tempPopupCopy&&(i.bindPopup(i._tempPopupCopy),delete i._tempPopupCopy)},_fireEvent(i,s,o,h=!1){i.fire(s,o,h);let{groups:d}=this.getAllParentGroups(i);d.forEach(m=>{m.fire(s,o,h)})},getAllParentGroups(i){let s=[],o=[],h=d=>{for(let m in d._eventParents)if(s.indexOf(m)===-1){s.push(m);let y=d._eventParents[m];o.push(y),h(y)}};return!i._pmLastGroupFetch||!i._pmLastGroupFetch.time||new Date().getTime()-i._pmLastGroupFetch.time>1e3?(h(i),i._pmLastGroupFetch={time:new Date().getTime(),groups:o,groupIds:s},{groupIds:s,groups:o}):{groups:i._pmLastGroupFetch.groups,groupIds:i._pmLastGroupFetch.groupIds}},createGeodesicPolygon:Un,getTranslation:Bt,findDeepCoordIndex(i,s,o=!0){let h,d=y=>(v,w)=>{let P=y.concat(w);if(o){if(v.lat&&v.lat===s.lat&&v.lng===s.lng)return h=P,!0}else if(v.lat&&L.latLng(v).equals(s))return h=P,!0;return Array.isArray(v)&&v.some(d(P))};i.some(d([]));let m={};return h&&(m={indexPath:h,index:h[h.length-1],parentPath:h.slice(0,h.length-1)}),m},findDeepMarkerIndex(i,s){let o,h=m=>(y,v)=>{let w=m.concat(v);return y._leaflet_id===s._leaflet_id?(o=w,!0):Array.isArray(y)&&y.some(h(w))};i.some(h([]));let d={};return o&&(d={indexPath:o,index:o[o.length-1],parentPath:o.slice(0,o.length-1)}),d},_getIndexFromSegment(i,s){if(s&&s.length===2){let o=this.findDeepCoordIndex(i,s[0]),h=this.findDeepCoordIndex(i,s[1]),d=Math.max(o.index,h.index);return(o.index===0||h.index===0)&&d!==1&&(d+=1),{indexA:o,indexB:h,newIndex:d,indexPath:o.indexPath,parentPath:o.parentPath}}return null},_getRotatedRectangle(i,s,o,h){let d=hs(h,i),m=hs(h,s),y=o*Math.PI/180,v=Math.cos(y),w=Math.sin(y),P=(m.x-d.x)*v+(m.y-d.y)*w,N=(m.y-d.y)*v-(m.x-d.x)*w,F=P*v+d.x,tt=P*w+d.y,it=-N*w+d.x,lt=N*v+d.y,ft=Sr(h,d),vt=Sr(h,{x:F,y:tt}),Ft=Sr(h,m),z=Sr(h,{x:it,y:lt});return[ft,vt,Ft,z]},pxRadiusToMeterRadius(i,s,o){let h=s.project(o),d=L.point(h.x+i,h.y);return s.distance(s.unproject(d),o)}},Tp=Sp;L.PM=L.PM||{version:qs.version,Map:pr,Toolbar:ia,Draw:de,Edit:ge,Utils:Tp,Matrix:Bp,activeLang:"en",optIn:!1,initialize(i){this.addInitHooks(i)},setOptIn(i){this.optIn=!!i},addInitHooks(){function i(){this.pm=void 0,L.PM.optIn?this.options.pmIgnore===!1&&(this.pm=new L.PM.Map(this)):this.options.pmIgnore||(this.pm=new L.PM.Map(this)),this.pm&&this.pm.setGlobalOptions({})}L.Map.addInitHook(i);function s(){this.pm=void 0,L.PM.optIn?this.options.pmIgnore===!1&&(this.pm=new L.PM.Edit.LayerGroup(this)):this.options.pmIgnore||(this.pm=new L.PM.Edit.LayerGroup(this))}L.LayerGroup.addInitHook(s);function o(){this.pm=void 0,L.PM.optIn?this.options.pmIgnore===!1&&(this.options.textMarker?(this.pm=new L.PM.Edit.Text(this),this.options._textMarkerOverPM||this.pm._initTextMarker(),delete this.options._textMarkerOverPM):this.pm=new L.PM.Edit.Marker(this)):this.options.pmIgnore||(this.options.textMarker?(this.pm=new L.PM.Edit.Text(this),this.options._textMarkerOverPM||this.pm._initTextMarker(),delete this.options._textMarkerOverPM):this.pm=new L.PM.Edit.Marker(this))}L.Marker.addInitHook(o);function h(){this.pm=void 0,L.PM.optIn?this.options.pmIgnore===!1&&(this.pm=new L.PM.Edit.CircleMarker(this)):this.options.pmIgnore||(this.pm=new L.PM.Edit.CircleMarker(this))}L.CircleMarker.addInitHook(h);function d(){this.pm=void 0,L.PM.optIn?this.options.pmIgnore===!1&&(this.pm=new L.PM.Edit.Line(this)):this.options.pmIgnore||(this.pm=new L.PM.Edit.Line(this))}L.Polyline.addInitHook(d);function m(){this.pm=void 0,L.PM.optIn?this.options.pmIgnore===!1&&(this.pm=new L.PM.Edit.Polygon(this)):this.options.pmIgnore||(this.pm=new L.PM.Edit.Polygon(this))}L.Polygon.addInitHook(m);function y(){this.pm=void 0,L.PM.optIn?this.options.pmIgnore===!1&&(this.pm=new L.PM.Edit.Rectangle(this)):this.options.pmIgnore||(this.pm=new L.PM.Edit.Rectangle(this))}L.Rectangle.addInitHook(y);function v(){this.pm=void 0,L.PM.optIn?this.options.pmIgnore===!1&&(this.pm=new L.PM.Edit.Circle(this)):this.options.pmIgnore||(this.pm=new L.PM.Edit.Circle(this))}L.Circle.addInitHook(v);function w(){this.pm=void 0,L.PM.optIn?this.options.pmIgnore===!1&&(this.pm=new L.PM.Edit.ImageOverlay(this)):this.options.pmIgnore||(this.pm=new L.PM.Edit.ImageOverlay(this))}L.ImageOverlay.addInitHook(w)},reInitLayer(i){i instanceof L.LayerGroup&&i.eachLayer(s=>{this.reInitLayer(s)}),i.pm||L.PM.optIn&&i.options.pmIgnore!==!1||i.options.pmIgnore||(i instanceof L.Map?i.pm=new L.PM.Map(i):i instanceof L.Marker?i.options.textMarker?(i.pm=new L.PM.Edit.Text(i),i.pm._initTextMarker(),i.pm._createTextMarker(!1)):i.pm=new L.PM.Edit.Marker(i):i instanceof L.Circle?i.pm=new L.PM.Edit.Circle(i):i instanceof L.CircleMarker?i.pm=new L.PM.Edit.CircleMarker(i):i instanceof L.Rectangle?i.pm=new L.PM.Edit.Rectangle(i):i instanceof L.Polygon?i.pm=new L.PM.Edit.Polygon(i):i instanceof L.Polyline?i.pm=new L.PM.Edit.Line(i):i instanceof L.LayerGroup?i.pm=new L.PM.Edit.LayerGroup(i):i instanceof L.ImageOverlay&&(i.pm=new L.PM.Edit.ImageOverlay(i)))}},L.version==="1.7.1"&&L.Canvas.include({_onClick(i){let s=this._map.mouseEventToLayerPoint(i),o,h;for(let d=this._drawFirst;d;d=d.next)o=d.layer,o.options.interactive&&o._containsPoint(s)&&(!(i.type==="click"||i.type==="preclick")||!this._map._draggableMoved(o))&&(h=o);h&&(L.DomEvent.fakeStop(i),this._fireEvent([h],i))}}),L.PM.initialize()})();const Ol={en_US:{showEagle:"Show Eagle Map",hideEagle:"Hide Eagle Map"},zh_CN:{showEagle:"显示鹰眼图",hideEagle:"隐藏鹰眼图"}},Il={en_US:{coordinate:"Coordinate",zoomLevel:"Zoom Level",FPS:"FPS"},zh_CN:{coordinate:"坐标",zoomLevel:"层级",FPS:"每秒帧数"}},Or={en_US:{home:"Go Home",capture:"Screen Capture",center:"View Full",north:"Move North",south:"Move South",east:"Move East",west:"Move West",zoomIn:"Zoom In",zoomOut:"Zoom Out",zoom:"Zoom to this level",dragZoom:"Drag to zoom",more:"More",draw:"Plot",layer:"Layer Manager",lng:"Longitude",lat:"Latitude"},zh_CN:{home:"回到初始位置",capture:"截屏",center:"查看全图",north:"向上平移",south:"向下平移",east:"向右平移",west:"向左平移",zoomIn:"放大一级",zoomOut:"缩小一级",zoom:"缩放到此级别",dragZoom:"拖动缩放",more:"更多",draw:"标绘",layer:"图层管理",lng:"经度",lat:"纬度"}},Ir=U.Control.extend({options:{position:"bottomleft",coordinateUnit:"decimal",showCoordinate:!0,showLevel:!0,showFPS:!0,precision:6},initialize(t){U.setOptions(this,t),this.lastTime=+new Date,this.frames=0,U.Control.prototype.initialize.call(this,this.options)},onAdd(t){this.map=t,this.lang=t.lang,this.langDic=Il,this._container=U.DomUtil.create("div",`${t.clsPrefix}-statusbar`),this.zoom=t.getZoom();const n=t.getCenter();return this.lng=n.lng,this.lat=n.lat,this.options.showCoordinate&&(this._latlngContainer=U.DomUtil.create("div",`${t.clsPrefix}-statusbar-item coordinate`,this._container),this._latlngContainer.innerHTML=`<b>${this.langDic[this.lang].coordinate}:</b>${this.getCoordinate(this.lng)},${this.getCoordinate(this.lat)}`),this.options.showLevel&&(this._levelContainer=U.DomUtil.create("div",`${t.clsPrefix}-statusbar-item level`,this._container),this._levelContainer.innerHTML=`<b>${this.langDic[this.lang].zoomLevel}:</b>${this.zoom+1}`),this.options.showFPS&&(this._fpsContainer=U.DomUtil.create("div",`${t.clsPrefix}-statusbar-item fps`,this._container),this._fpsContainer.innerHTML=`<b>${this.langDic[this.lang].FPS}:</b>60`),this.initEvt(),this._container},initEvt(){this.map.on("mousemove",t=>{this.lat=t.latlng.lat,this.lng=t.latlng.lng,this._latlngContainer&&(this._latlngContainer.innerHTML=`<b>${this.langDic[this.lang].coordinate}:</b>${this.getCoordinate(this.lng,"lng")},${this.getCoordinate(this.lat,"lat")}`)}),this.map.on("zoomend",()=>{this.zoom=this.map.getZoom(),this._levelContainer&&(this._levelContainer.innerHTML=`<b>${this.langDic[this.lang].zoomLevel}:</b>${this.zoom+1}`)}),this.options.showFPS&&this.calcFPS()},getCoordinate(t,n="lng"){switch(this.options.coordinateUnit){case"decimal":return t.toFixed(this.options.precision);case"radian":return(t*Math.PI/180).toFixed(this.options.precision);case"degrees":return this._formatDeg(t,n)}},_formatDeg(t,n){const a=parseFloat(t),l=parseInt(a);let c="";n==="lng"?c=l>0?"E":"W":n==="lat"&&(c=l>0?"N":"S");let f=parseInt((a-l)*60),p=(a-l)*3600-f*60;return l+"°"+f+"′"+p.toFixed(2)+"″"+c},calcFPS(){if(this.frames++,this.frames>=30){const t=Date.now()-this.lastTime,n=Math.round(1e3/(t/this.frames));this._fpsContainer&&(this.frames=0,this.lastTime=Date.now(),this._fpsContainer.innerHTML=`<b>${this.langDic[this.lang].FPS}:</b><span>${n}</span>`)}requestAnimationFrame(this.calcFPS.bind(this))}}),Rr=U.Control.extend({includes:U.Evented?U.Evented.prototype:U.Mixin.Events,options:{position:"bottomright",toggleDisplay:!0,zoomLevelOffset:5,zoomLevelFixed:!1,centerFixed:!1,zoomAnimation:!1,autoToggleDisplay:!1,minimized:!1,width:100,height:100,collapsedWidth:22,collapsedHeight:22,aimingRectOptions:{color:"#ff7800",weight:1,interactive:!1},shadowRectOptions:{color:"#000000",weight:1,interactive:!1,opacity:0,fillOpacity:0},strings:{},mapOptions:{rotate:!0,rotateControl:!1}},initialize(t,n){U.Util.setOptions(this,n),this.options.aimingRectOptions.interactive=!1,this.options.shadowRectOptions.interactive=!1,this._layer=t},onAdd(t){this._mainMap=t,this.lang=t.options.lang??this.options.lang??"zh_CN",this.langDic=Ol,this.options.strings={hideText:this.langDic[this.lang].hideEagle,showText:this.langDic[this.lang].showEagle},this._container=U.DomUtil.create("div",`${t.clsPrefix}-eaglemap`),this._container.style.width=this.options.width+"px",this._container.style.height=this.options.height+"px",U.DomEvent.disableClickPropagation(this._container),U.DomEvent.on(this._container,"mousewheel",U.DomEvent.stopPropagation);let n={attributionControl:!1,dragging:!this.options.centerFixed,zoomControl:!1,zoomAnimation:this.options.zoomAnimation,autoToggleDisplay:this.options.autoToggleDisplay,touchZoom:this.options.centerFixed?"center":!this._isZoomLevelFixed(),scrollWheelZoom:this.options.centerFixed?"center":!this._isZoomLevelFixed(),doubleClickZoom:this.options.centerFixed?"center":!this._isZoomLevelFixed(),boxZoom:!this._isZoomLevelFixed(),crs:t.options.crs,rotateControl:t.options.rotateControl,rotate:t.options.rotate,bearing:t.options.bearing,lang:this.lang};return n=U.Util.extend(this.options.mapOptions,n),this._eagleMap=new U.Map(this._container,n),this._layer instanceof U.Layer&&this._eagleMap.addLayer(this._layer),this._mainMapMoving=!1,this._eagleMapMoving=!1,this._userToggledDisplay=!1,this._minimized=!1,this.options.toggleDisplay&&this._addToggleButton(),this._eagleMap.whenReady(U.Util.bind(function(){this._aimingRect=new U.Rectangle(this._mainMap.getBounds(),this.options.aimingRectOptions).addTo(this._eagleMap),this._shadowRect=new U.Rectangle(this._mainMap.getBounds(),this.options.shadowRectOptions).addTo(this._eagleMap),this._mainMap.on("moveend",this._onMainMapMoved,this),this._mainMap.on("move",this._onMainMapMoving,this),this._eagleMap.on("movestart",this._onEagleMapMoveStarted,this),this._eagleMap.on("move",this._onEagleMapMoving,this),this._eagleMap.on("moveend",this._onEagleMapMoved,this)},this)),this._container},addTo(t){U.Control.prototype.addTo.call(this,t);const n=this.options.centerFixed||this._mainMap.getCenter();return this._eagleMap.setView(n,this._decideZoom(!0)),this._setDisplay(this.options.minimized),this},onRemove(t){this._mainMap.off("moveend",this._onMainMapMoved,this),this._mainMap.off("move",this._onMainMapMoving,this),this._eagleMap.off("moveend",this._onEagleMapMoved,this),this._eagleMap.removeLayer(this._layer)},changeLayer(t){this._eagleMap.removeLayer(this._layer),this._layer=t,this._eagleMap.addLayer(this._layer)},_addToggleButton(){this._toggleDisplayButton=this.options.toggleDisplay?this._createButton("",this._toggleButtonInitialTitleText(),`${this._mainMap.clsPrefix}-eaglemap-toggle-display ${this._mainMap.clsPrefix}-eaglemap-toggle-display-`+this.options.position,this._container,this._toggleDisplayButtonClicked,this):void 0,this._toggleDisplayButton.style.width=this.options.collapsedWidth+"px",this._toggleDisplayButton.style.height=this.options.collapsedHeight+"px"},_toggleButtonInitialTitleText(){return this.options.minimized?this.langDic[this.lang].showEagle:this.langDic[this.lang].hideEagle},_createButton(t,n,a,l,c,f){const p=U.DomUtil.create("a",a,l);p.innerHTML=t,p.href="#",p.title=n;const g=U.DomEvent.stopPropagation;return U.DomEvent.on(p,"click",g).on(p,"mousedown",g).on(p,"dblclick",g).on(p,"click",U.DomEvent.preventDefault).on(p,"click",c,f),p},_toggleDisplayButtonClicked(){this._userToggledDisplay=!0,this._minimized?this._restore():this._minimize()},_setDisplay(t){t!==this._minimized&&(this._minimized?this._restore():this._minimize())},_minimize(){this.options.toggleDisplay?(this._container.style.width=this.options.collapsedWidth+"px",this._container.style.height=this.options.collapsedHeight+"px",this._toggleDisplayButton.className+=" minimized-"+this.options.position,this._toggleDisplayButton.title=this.options.strings.showText):this._container.style.display="none",this._minimized=!0,this._onToggle()},_restore(){this.options.toggleDisplay?(this._container.style.width=this.options.width+"px",this._container.style.height=this.options.height+"px",this._toggleDisplayButton.className=this._toggleDisplayButton.className.replace("minimized-"+this.options.position,""),this._toggleDisplayButton.title=this.options.strings.hideText):this._container.style.display="block",this._minimized=!1,this._onToggle()},_onMainMapMoved(t){if(this._eagleMapMoving)this._eagleMapMoving=!1;else{const n=this.options.centerFixed||this._mainMap.getCenter();this._mainMapMoving=!0,this._eagleMap.setView(n,this._decideZoom(!0)),this._setDisplay(this._decideMinimized())}this._aimingRect.setBounds(this._mainMap.getBounds())},_onMainMapMoving(t){this._aimingRect.setBounds(this._mainMap.getBounds())},_onEagleMapMoveStarted(t){if(!this.options.centerFixed){const n=this._aimingRect.getBounds(),a=this._eagleMap.latLngToContainerPoint(n.getSouthWest()),l=this._eagleMap.latLngToContainerPoint(n.getNorthEast());this._lastAimingRectPosition={sw:a,ne:l}}},_onEagleMapMoving(t){this.options.centerFixed||!this._mainMapMoving&&this._lastAimingRectPosition&&(this._shadowRect.setBounds(new U.LatLngBounds(this._eagleMap.containerPointToLatLng(this._lastAimingRectPosition.sw),this._eagleMap.containerPointToLatLng(this._lastAimingRectPosition.ne))),this._shadowRect.setStyle({opacity:1,fillOpacity:.3}))},_onEagleMapMoved(t){this._mainMapMoving?this._mainMapMoving=!1:(this._eagleMapMoving=!0,this._mainMap.setView(this._eagleMap.getCenter(),this._decideZoom(!1)),this._shadowRect.setStyle({opacity:0,fillOpacity:0}))},_isZoomLevelFixed(){const t=this.options.zoomLevelFixed;return this._isDefined(t)&&this._isInteger(t)},_decideZoom(t){if(this._isZoomLevelFixed())return t?this.options.zoomLevelFixed:this._mainMap.getZoom();if(t)return this._mainMap.getZoom()-this.options.zoomLevelOffset;{const n=this._eagleMap.getZoom()-this._mainMap.getZoom(),a=this._eagleMap.getZoom()+this.options.zoomLevelOffset;let l;return n<this.options.zoomLevelOffset&&this._mainMap.getZoom()<this._eagleMap.getMinZoom()+this.options.zoomLevelOffset?this._eagleMap.getZoom()>this._lastEagleMapZoom?(l=this._mainMap.getZoom()+1,this._eagleMap.setZoom(this._eagleMap.getZoom()-1)):l=this._mainMap.getZoom():l=a,this._lastEagleMapZoom=this._eagleMap.getZoom(),l}},_decideMinimized(){return this._userToggledDisplay?this._minimized:this.options.autoToggleDisplay?!!this._mainMap.getBounds().contains(this._eagleMap.getBounds()):this._minimized},_isInteger(t){return typeof t=="number"},_isDefined(t){return typeof t<"u"},_onToggle(){U.Util.requestAnimFrame(function(){U.DomEvent.on(this._container,"transitionend",this._fireToggleEvents,this),U.Browser.any3d||U.Util.requestAnimFrame(this._fireToggleEvents,this)},this)},_fireToggleEvents(){U.DomEvent.off(this._container,"transitionend",this._fireToggleEvents,this);const t={minimized:this._minimized};this.fire(this._minimized?"minimize":"restore",t),this.fire("toggle",t)}}),Gr=L.FeatureGroup.extend({initialize(t,n){this.markers=[],L.Util.setOptions(this,n);const a=typeof this.options.cssClass=="string"?this.options.cssClass:"vertex-marker",l=this.options.iconSize!==void 0?this.options.iconSize:[24,24],c=this.options.iconAnchor!==void 0?this.options.iconAnchor:[12,12],f=this.options.textFn,p=typeof this.options.firstVertex=="boolean"?this.options.firstVertex:!0,g=typeof this.options.lastVertex=="boolean"?this.options.lastVertex:!0;this.dragable=this.options.dragable||!1;let A=t;typeof t.getLatLngs=="function"&&(A=t.getLatLngs());for(let b=p?0:1,T=A.length-(g?0:1);b<T;b++){const G=A[b];var k=typeof f=="function"?f.call(this,b,A):f||"",C=L.divIcon({className:a,html:k,iconSize:l,iconAnchor:c}),x=L.marker(G,{icon:C,pmIgnore:!0,index:b});this.markers.push(x)}L.FeatureGroup.prototype.initialize.call(this,this.markers)},onAdd(t){this.markers.forEach(n=>{L.FeatureGroup.prototype.addLayer.call(this,n)}),L.FeatureGroup.prototype.onAdd.call(this,t)},onRemove(t){this.markers.forEach(n=>{L.FeatureGroup.prototype.removeLayer.call(this,n)}),L.FeatureGroup.prototype.onRemove.call(this,t)}});class ls extends L[L.Layer?"Layer":"Class"]{constructor(n,a,l,c,f){super(),L.setOptions(this,f),this._latlng=n,this._measurement=a,this._title=l,this._rotation=c,this.MEASUREDDATA=null,this.tempAcCurrDrawPoints=null}addTo(n){return n.addLayer(this),this}onAdd(n){this._map=n;const a=this.getPane?this.getPane():n.getPanes().markerPane,l=this._element=L.DomUtil.create("div","leaflet-zoom-animated leaflet-measure-path-measurement",a),c=L.DomUtil.create("div","",l);c.title=this._title,c.innerHTML=this._measurement,n.on("zoomanim",this._animateZoom,this),this._setPosition()}onRemove(n){n.off("zoomanim",this._animateZoom,this),(this.getPane?this.getPane():n.getPanes().markerPane).removeChild(this._element),this._map=null}_setPosition(){L.DomUtil.setPosition(this._element,this._map.latLngToLayerPoint(this._latlng)),this._element.style.transform+=" rotate("+this._rotation+"rad)"}_animateZoom(n){const a=this._map._latLngToNewLayerPoint(this._latlng,n.zoom,n.center).round();L.DomUtil.setPosition(this._element,a),this._element.style.transform+=" rotate("+this._rotation+"rad)"}}U.Map.addInitHook(function(){var t,n,a;this.pm&&this.pm.setLang(this.options.lang.split("_")[0]),(t=this.options.eagleMapControl)!=null&&t.show&&(this.eagleMapControl=new Rr(this.options.eagleMapControl),this.addControl(this.eagleMapControl)),(n=this.options.statusBarControl)!=null&&n.show&&(this.statusBarControl=new Ir(this.options.statusBarControl),this.addControl(this.statusBarControl)),(a=this.options.scaleControl)!=null&&a.show&&(this.scaleControl=new U.Control.Scale(Object.assign({position:"bottomleft",maxWidth:100,metric:!0,imperial:!1},this.options.scaleControl)),this.addControl(this.scaleControl)),this.keyboard.disable()}),U.Marker.addInitHook(function(){let n=this.options.icon&&this.options.icon.options&&this.options.icon.options.iconAnchor;n&&(n=n[0]+"px "+n[1]+"px"),this.options.rotationOrigin=this.options.rotationOrigin||n||"center bottom",this.on("drag",a=>{a.target._applyRotation()})}),U.Marker.mergeOptions({scale:1,rotation:0,minZoom:0,maxZoom:16,hideOnMinZoom:!0,minificationScale:.6}),U.Marker.include({_setPos(t){this._icon.style.display="initial";const{rotation:n,minZoom:a,maxZoom:l,hideOnMinZoom:c,minificationScale:f}=this.options;if(a&&l&&l-a>0){const p=parseFloat(((1-f)/(l-a)).toFixed(2));this._map._zoom>=l?this.options.scale=1:this._map._zoom>a&this._map._zoom<l?this.options.scale=1-(l-this._map._zoom)*p:this._map._zoom<=a&&c?this._icon.style.display="none":this._map._zoom<=a&&!c&&(this.options.scale=f)}this._map._rotate&&(t=this._map.rotatedPointToMapPanePoint(t)),this._icon&&U.DomUtil.setPosition(this._icon,t,n,t,this.options.scale),this._shadow&&U.DomUtil.setPosition(this._shadow,t,n,t,this.options.scale),this._zIndex=t.y+this.options.zIndexOffset,this._resetZIndex()},_applyRotation(){this.options.rotation&&(this._icon.style[U.DomUtil.TRANSFORM+"Origin"]=this.options.rotationOrigin,U.DomUtil.TRANSFORM==="msTransform"?this._icon.style[U.DomUtil.TRANSFORM]="rotate("+this.options.rotation+"deg)":this._icon.style[U.DomUtil.TRANSFORM]+=" rotateZ("+this.options.rotation+"deg)")},startTwinkle(t,n){this.twinkle(t,n)},endTwinkle(){clearTimeout(this.twinkleTimer)},twinkle(t=200,n=1/0){let a=!1,l=0;const c=()=>{l++,n&&t&&l>Math.floor(n/t)?(this.setOpacity(1),this.twinkleTimer=void 0):(a?(this.setOpacity(0),a=!1):(this.setOpacity(1),a=!0),this.twinkleTimer=setTimeout(c,t))};c()}}),U.Map.include({hasLayer:function(t){return t&&U.Util.stamp(t)in this._layers},removeLayerById:function(t){const n=this.getLayer(t);n&&this.removeLayer(n)}}),U.Path.addInitHook(function(){this.options.color&&(this.color=$t.Color.from(this.options.color)),this.options.fillColor&&(this.fillColor=$t.Color.from(this.options.fillColor))}),U.Polyline.addInitHook(function(){this.options.showMeasurements&&this.showMeasurements()}),U.Circle.include({toGeoJSON(){return{type:"Feature",properties:{},geometry:{type:"Circle",radius:this.getRadius(),coordinates:[this._latlng.lng,this._latlng.lat]}}}}),U.Layer.addInitHook(function(){this._leaflet_id=this.options.id||U.stamp({})}),U.LayerGroup.include({getLayerId(t){return t._leaflet_id},hasLayer(t){return t?(["number","string"].includes(typeof t)?t:this.getLayerId(t))in this._layers:!1}}),U.GridLayer.include({_setZoomTransform:function(t,l,a){var c=l,l=(c!=null&&this.options&&(this.options.corrdType=="gcj02"?c=$t.CoordsUtil.gcjEncrypt(l.lat,l.lng):this.options.corrdType=="bd09"&&(l=$t.CoordsUtil.gcjEncrypt(l.lat,l.lng),c=$t.CoordsUtil.bdEncrypt(l.lat,l.lng))),this._map.getZoomScale(a,t.zoom)),c=t.origin.multiplyBy(l).subtract(this._map._getNewPixelOrigin(c,a)).round();U.Browser.any3d?U.DomUtil.setTransform(t.el,c,l):U.DomUtil.setPosition(t.el,c)},_getTiledPixelBounds:function(l){var a=l,l=(a!=null&&this.options&&(this.options.corrdType=="gcj02"?a=$t.CoordsUtil.gcjEncrypt(l.lat,l.lng):this.options.corrdType=="bd09"&&(l=$t.CoordsUtil.gcjEncrypt(l.lat,l.lng),a=$t.CoordsUtil.bdEncrypt(l.lat,l.lng))),this._map),n=l._animatingZoom?Math.max(l._animateToZoom,l.getZoom()):l.getZoom(),n=l.getZoomScale(n,this._tileZoom),a=l.project(a,this._tileZoom).floor(),l=l.getSize().divideBy(2*n);return new U.Bounds(a.subtract(l),a.add(l))}}),U.TileLayer.addInitHook(function(){this.on("add",function(t){this._container.style.filter=Object.keys(this.options.style||{}).map(n=>`${n}(${this.options.style[n]})`).join(" ")})}),U.Polyline.include({_originalOnAdd:U.Polyline.prototype.onAdd,_originalOnRemove:U.Polyline.prototype.onRemove,_originalSetLatLngs:U.Polyline.prototype.setLatLngs,_originalAddLatLng:U.Polyline.prototype.addLatLng,setLatLngs:function(t){var n=this._map&&this._vertexMarkers&&this._latlngs.length!==t.length;this._originalSetLatLngs(t),n&&(this.removeVertexMarkers(),this.destroyVertexMarkers(),this.createVertexMarkers()),this.options.showMeasurements&&this.updateMeasurements()},removeVertexMarkers:function(){this._map&&this._vertexMarkers&&(this._map.removeLayer(this._vertexMarkers),this._vertexMarkers=void 0)},onAdd:function(t){this._originalOnAdd(t),this.createVertexMarkers(),this.options.showMeasurements&&this.showMeasurements(this.options.measurementOptions)},createVertexMarkers:function(){if(this._map){var t=this.options.vertexMarkers||{};this._vertexMarkers===void 0&&this.options.vertexMarkers&&(this._vertexMarkers=new Gr(this,t).addTo(this._map))}},destroyVertexMarkers:function(){this._vertexMarkers&&(this._vertexMarkers=void 0)},onRemove:function(t){this.removeVertexMarkers(),this._originalOnRemove(t),this.options.showMeasurements&&this.hideMeasurements()},showMeasurements(t){return!this._map||this._measurementLayer?this:(this._measurementOptions=U.extend({showCloseButton:!1,minPixelDistance:30,showDistances:!0,showArea:!0,showAggregate:!0,lang:{totalLength:"Total length",totalArea:"Total area",segmentLength:"Segment length"},map:this._map},t||{}),this._measurementLayer=new U.LayerGroup().addTo(this._map),this.updateMeasurements(),this._map.on("zoomend",this.updateMeasurements,this),this)},hideMeasurements(){return this._map.off("zoomend",this.updateMeasurements,this),this._measurementLayer?(this._map.removeLayer(this._measurementLayer),this._measurementLayer=null,this):this},tempFormatDistance(t){const n=this._map.options.crs,a=new Array;for(let T=0;T<t.length;T++){const G=n.project(t[T]);a.push(G)}const l=a.length;let c=0,f,p,g,A,k,C;for(let T=0;T<l-1;T++)f=a[T],g=f.x,A=f.y,p=a[T+1],k=p.x,C=p.y,c+=Math.sqrt((g-k)*(g-k)+(A-C)*(A-C));const x=c;let b="";return x>1e3?b="总长:"+Number(x/1e3).toFixed(1)+"公里":b="总长:"+Math.round(x)+"米",b},tempMoveFormatDistance(t,n){const a=this._map.options.crs;t=a.project(t),t=new Array(t),n=a.project(n),t.push(n);const l=t.length;let c=0,f,p,g,A,k,C;for(let T=0;T<l-1;T++)f=t[T],g=f.x,A=f.y,p=t[T+1],k=p.x,C=p.y,c+=Math.sqrt((g-k)*(g-k)+(A-C)*(A-C));const x=c;let b="";return x>1e3?b=Number(x/1e3).toFixed(1)+"公里":b=Math.round(x)+"米",b},tempFormatArea(t){const n=this._map.options.crs,a=new Array;for(let Z=0;Z<t.length;Z++){const K=n.project(t[Z]);a.push(K)}let l=!0;for(var c=0;c<a.length-1;c++){a[c].x>180?l=!0:l=!1;break}const f=a.length;let p=0,g,A,k=0,C=0,x=0,b=0;if(a!=null){let Z;if(l)for(var c=0;c<f;c++)Z=(c+1)%f,g=a[c],A=a[Z],p+=g.x*A.y,p-=g.y*A.x;else{let at,rt=0,ct=0;for(var c=0;c<f;c++)g=a[c],at=g.x,c==0?(rt=at,ct=at):(at<rt&&(rt=at),at>ct&&(ct=at));const yt=parseInt(((rt+ct)/2+3)/6);for(var c=0;c<f;c++)Z=(c+1)%f,c==0?(g=a[c],k=widget.LonLatToXA80N(yt,g.x,g.y)[0],C=widget.LonLatToXA80N(yt,g.x,g.y)[1]):(k=x,C=b),A=a[Z],x=widget.LonLatToXA80N(yt,A.x,A.y)[0],b=widget.LonLatToXA80N(yt,A.x,A.y)[1],p+=k*b,p-=x*C}}const T=Math.abs(p/2);let G="";return T>1e6?G="总面积:"+Number(T/1e6).toFixed(4)+`平方公里
|
|
5
5
|
(约:`+Number(T*.0015).toFixed(3)+"亩)":G="总面积:"+T.toFixed(0)+`平方米
|
|
6
|
-
(约:`+Number(T*.0015).toFixed(3)+"亩)",G},updateMeasurements(){if(!this._measurementLayer)return this;const t=this.getLatLngs();new Array().push(t);let r=this.getLatLngs();const u=this instanceof U.Polygon,d=this._measurementOptions;let f,p,g,M,B;if(r&&r.length&&U.Util.isArray(r[0])&&(r=r[0]),this._measurementLayer.clearLayers(),this._measurementOptions.showDistances&&r.length>1){t.length-1;for(let E=1,x=r.length;u&&E<=x||E<x;E++)if(f=r[E-1],p=r[E%x],f.distanceTo(p),g=this._map.latLngToLayerPoint(f),M=this._map.latLngToLayerPoint(p),B=g.distanceTo(M),B>=d.minPixelDistance){const C=this.tempMoveFormatDistance(f,p);new os(this._map.layerPointToLatLng([(g.x+M.x)/2,(g.y+M.y)/2]),C,d.lang.segmentLength,this._getRotation(f,p),d).addTo(this._measurementLayer)}!u&&this._measurementOptions.showAggregate&&(new os(p,this.tempFormatDistance(t),d.lang.totalLength,0,d).addTo(this._measurementLayer),this.MEASUREDDATA=this.tempFormatDistance(t))}return u&&d.showArea&&r.length>2&&(new os(this.getBounds().getCenter(),this.tempFormatArea(t[0]),d.lang.totalArea,0,d).addTo(this._measurementLayer),this.MEASUREDDATA=this.tempFormatArea(t[0])),this},_getRotation(t,n){const r=this._map.project(t),u=this._map.project(n);return Math.atan((u.y-r.y)/(u.x-r.x))}}),U.LatLng.prototype.toArray=function(){return[this.lat,this.lng]},U.Path.include({startTwinkle(t,n,r={}){this.twinkle(t,n,r)},endTwinkle(){clearTimeout(this.twinkleTimer)},twinkle(t=200,n=1/0,r){let u=!1,d=0;const f=this.options,p=()=>{d++,n&&t&&d>Math.floor(n/t)?(this.setStyle({...f,fill:!0,stroke:!0}),this.twinkleTimer=void 0):(u?(this.setStyle({...r,fill:!1,stroke:!1}),u=!1):(this.setStyle({...r,fill:!0,stroke:!0}),u=!0),this.twinkleTimer=setTimeout(p,t))};p()},getArea(t){if(this instanceof U.Polyline){var n,r=this._latlngs[0],u=(t||this._map).options.crs,d=r.length;let f=0,p,g;if(r!=null)for(let M=0;M<d;M++)n=(M+1)%d,p=180<r[M].lng&&90<r[M].lat?{x:r[M].lat,y:r[M].lng}:u.project(r[M]),g=180<r[n].lng&&90<r[n].lat?{x:r[n].lat,y:r[n].lng}:u.project(r[n]),f=(f+=p.x*g.y)-p.y*g.x;return Math.abs(f/2)}else return this instanceof U.Circle?2*Math.PI*this.getRadius():null},getLength(t){if(this instanceof U.Polyline){for(var n=[],r=(t||this._map).options.crs,u=this._latlngs,d=0;d<u.length;d++)this instanceof U.Polygon?n.push(...u[d]):this instanceof U.Polyline&&n.push(u[d]);let B=0,E,x;for(let C=0,T=n.length-1;C<T;C++){E=180<n[C][0]&&90<n[C][1]?{x:n[C].lat,y:n[C].lng}:r.project(n[C]),x=180<n[C+1][0]&&90<n[C+1][1]?{x:n[C+1].lat,y:n[C+1].lng}:r.project(n[C+1]);var f=E.x,p=E.y,g=x.x,M=x.y;B+=Math.sqrt((f-g)*(f-g)+(p-M)*(p-M))}return B}else return this instanceof U.Circle?Math.PI*Math.pow(this.getRadius(),2):null}}),U.Control.mergeOptions({offset:[0,0]}),U.Control.addInitHook(function(){const{className:t,offset:[n,r]}=this.options;(n||r)&&setTimeout(()=>{const u=this.getContainer();u&&(u.style.transform=`translate(${n}px, ${r}px)`,t&&u.classList.add(t))},200)}),U.Canvas.include({_fillStroke:function(t,n){var r=n.options;if(r.fill&&(t.globalAlpha=r.fillOpacity,t.fillStyle=r.fillColor||r.color,t.fill(r.fillRule||"evenodd")),r.stroke&&r.weight!==0&&(t.setLineDash&&t.setLineDash(n.options&&n.options._dashArray||[]),t.globalAlpha=r.opacity,t.lineWidth=r.weight,t.strokeStyle=r.color,t.lineCap=r.lineCap,t.lineJoin=r.lineJoin,t.stroke(),r.img)){const u=new Image;u.src=r.img,u.onload=function(){t.save(),t.clip();var d=n instanceof U.Circle?n._pxBounds:n._rawPxBounds,f=d.getSize(),p=t.createPattern(u,"repeat");t.fillStyle=p,t.fillRect(d.min.x,d.min.y,f.x,f.y),t.restore()}}}}),U.SVG.include({_updateStyle:function(t){var n=t._path,r=t.options;n&&(r.stroke?(n.setAttribute("stroke",r.color),n.setAttribute("stroke-opacity",r.opacity),n.setAttribute("stroke-width",r.weight),n.setAttribute("stroke-linecap",r.lineCap),n.setAttribute("stroke-linejoin",r.lineJoin),r.dashArray?n.setAttribute("stroke-dasharray",r.dashArray):n.removeAttribute("stroke-dasharray"),r.dashOffset?n.setAttribute("stroke-dashoffset",r.dashOffset):n.removeAttribute("stroke-dashoffset")):n.setAttribute("stroke","none"),r.img?(typeof r.img=="string"&&r.img.match(/^url\(/)?this.__fillPattern(t):n.setAttribute("fill",r.fillColor||r.color),n.setAttribute("fill-opacity",r.fillOpacity),n.setAttribute("fill-rule",r.fillRule||"evenodd")):(n.setAttribute("fill",r.fillColor),n.setAttribute("fill-opacity",t instanceof U.Polyline?0:r.fillOpacity)))},__fillPattern:function(t){var n=t._path,r=t.options;this._defs||(this._defs=L.SVG.create("defs"),this._container.appendChild(this._defs));var u=r.img.substring(4,r.img.length-1),d=u+(Math.random()*Math.pow(10,17)+Math.random()*Math.pow(10,17));d+=new Date().getUTCMilliseconds();var f=document.getElementById(d);if(!f){var p=new Image;p.src=u,f=L.SVG.create("pattern"),f.setAttribute("id",d),f.setAttribute("x","0"),f.setAttribute("y","0"),f.setAttribute("patternUnits","userSpaceOnUse"),f.setAttribute("width","24"),f.setAttribute("height","24");var g=L.SVG.create("rect");g.setAttribute("width",24),g.setAttribute("height",24),g.setAttribute("x",0),g.setAttribute("x",0),g.setAttribute("fill",r.fillColor||r.color),f.appendChild(g),this._defs.appendChild(f);var M=L.SVG.create("image");M.setAttribute("x","0"),M.setAttribute("y","0"),M.setAttributeNS("http://www.w3.org/1999/xlink","href",u),M.setAttribute("width","24"),M.setAttribute("height","24"),f.appendChild(M),p.onload=function(){f.setAttribute("width",p.width),f.setAttribute("height",p.height),M.setAttribute("width",p.width),M.setAttribute("height",p.height)}}n.setAttribute("fill","url(#"+d+")")}});var xl={exports:{}};function Ll(t){t("EPSG:4326","+title=WGS 84 (long/lat) +proj=longlat +ellps=WGS84 +datum=WGS84 +units=degrees"),t("EPSG:4269","+title=NAD83 (long/lat) +proj=longlat +a=6378137.0 +b=6356752.31414036 +ellps=GRS80 +datum=NAD83 +units=degrees"),t("EPSG:3857","+title=WGS 84 / Pseudo-Mercator +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +no_defs");for(var n=1;n<=60;++n)t("EPSG:"+(32600+n),"+proj=utm +zone="+n+" +datum=WGS84 +units=m"),t("EPSG:"+(32700+n),"+proj=utm +zone="+n+" +south +datum=WGS84 +units=m");t.WGS84=t["EPSG:4326"],t["EPSG:3785"]=t["EPSG:3857"],t.GOOGLE=t["EPSG:3857"],t["EPSG:900913"]=t["EPSG:3857"],t["EPSG:102113"]=t["EPSG:3857"]}var Ji=1,Qi=2,Mn=3,bl=4,Br=5,hh=6378137,wl=6356752314e-3,lh=.0066943799901413165,hs=484813681109536e-20,ut=Math.PI/2,Cl=.16666666666666666,El=.04722222222222222,Pl=.022156084656084655,dt=1e-10,ye=.017453292519943295,ui=57.29577951308232,Zt=Math.PI/4,ls=Math.PI*2,he=3.14159265359,Fe={};Fe.greenwich=0,Fe.lisbon=-9.131906111111,Fe.paris=2.337229166667,Fe.bogota=-74.080916666667,Fe.madrid=-3.687938888889,Fe.rome=12.452333333333,Fe.bern=7.439583333333,Fe.jakarta=106.807719444444,Fe.ferro=-17.666666666667,Fe.brussels=4.367975,Fe.stockholm=18.058277777778,Fe.athens=23.7163375,Fe.oslo=10.722916666667;const kl={mm:{to_meter:.001},cm:{to_meter:.01},ft:{to_meter:.3048},"us-ft":{to_meter:1200/3937},fath:{to_meter:1.8288},kmi:{to_meter:1852},"us-ch":{to_meter:20.1168402336805},"us-mi":{to_meter:1609.34721869444},km:{to_meter:1e3},"ind-ft":{to_meter:.30479841},"ind-yd":{to_meter:.91439523},mi:{to_meter:1609.344},yd:{to_meter:.9144},ch:{to_meter:20.1168},link:{to_meter:.201168},dm:{to_meter:.1},in:{to_meter:.0254},"ind-ch":{to_meter:20.11669506},"us-in":{to_meter:.025400050800101},"us-yd":{to_meter:.914401828803658}};var uh=/[\s_\-\/\(\)]/g;function Di(t,n){if(t[n])return t[n];for(var r=Object.keys(t),u=n.toLowerCase().replace(uh,""),d=-1,f,p;++d<r.length;)if(f=r[d],p=f.toLowerCase().replace(uh,""),p===u)return t[f]}function Tr(t){var n={},r=t.split("+").map(function(g){return g.trim()}).filter(function(g){return g}).reduce(function(g,M){var B=M.split("=");return B.push(!0),g[B[0].toLowerCase()]=B[1],g},{}),u,d,f,p={proj:"projName",datum:"datumCode",rf:function(g){n.rf=parseFloat(g)},lat_0:function(g){n.lat0=g*ye},lat_1:function(g){n.lat1=g*ye},lat_2:function(g){n.lat2=g*ye},lat_ts:function(g){n.lat_ts=g*ye},lon_0:function(g){n.long0=g*ye},lon_1:function(g){n.long1=g*ye},lon_2:function(g){n.long2=g*ye},alpha:function(g){n.alpha=parseFloat(g)*ye},gamma:function(g){n.rectified_grid_angle=parseFloat(g)*ye},lonc:function(g){n.longc=g*ye},x_0:function(g){n.x0=parseFloat(g)},y_0:function(g){n.y0=parseFloat(g)},k_0:function(g){n.k0=parseFloat(g)},k:function(g){n.k0=parseFloat(g)},a:function(g){n.a=parseFloat(g)},b:function(g){n.b=parseFloat(g)},r:function(g){n.a=n.b=parseFloat(g)},r_a:function(){n.R_A=!0},zone:function(g){n.zone=parseInt(g,10)},south:function(){n.utmSouth=!0},towgs84:function(g){n.datum_params=g.split(",").map(function(M){return parseFloat(M)})},to_meter:function(g){n.to_meter=parseFloat(g)},units:function(g){n.units=g;var M=Di(kl,g);M&&(n.to_meter=M.to_meter)},from_greenwich:function(g){n.from_greenwich=g*ye},pm:function(g){var M=Di(Fe,g);n.from_greenwich=(M||parseFloat(g))*ye},nadgrids:function(g){g==="@null"?n.datumCode="none":n.nadgrids=g},axis:function(g){var M="ewnsud";g.length===3&&M.indexOf(g.substr(0,1))!==-1&&M.indexOf(g.substr(1,1))!==-1&&M.indexOf(g.substr(2,1))!==-1&&(n.axis=g)},approx:function(){n.approx=!0}};for(u in r)d=r[u],u in p?(f=p[u],typeof f=="function"?f(d):n[f]=d):n[u]=d;return typeof n.datumCode=="string"&&n.datumCode!=="WGS84"&&(n.datumCode=n.datumCode.toLowerCase()),n}class ch{static getId(n){const r=n.find(u=>Array.isArray(u)&&u[0]==="ID");return r&&r.length>=3?{authority:r[1],code:parseInt(r[2],10)}:null}static convertUnit(n,r="unit"){if(!n||n.length<3)return{type:r,name:"unknown",conversion_factor:null};const u=n[1],d=parseFloat(n[2])||null,f=n.find(g=>Array.isArray(g)&&g[0]==="ID"),p=f?{authority:f[1],code:parseInt(f[2],10)}:null;return{type:r,name:u,conversion_factor:d,id:p}}static convertAxis(n){const r=n[1]||"Unknown";let u;const d=r.match(/^\((.)\)$/);if(d){const B=d[1].toUpperCase();if(B==="E")u="east";else if(B==="N")u="north";else if(B==="U")u="up";else throw new Error(`Unknown axis abbreviation: ${B}`)}else u=n[2]?n[2].toLowerCase():"unknown";const f=n.find(B=>Array.isArray(B)&&B[0]==="ORDER"),p=f?parseInt(f[1],10):null,g=n.find(B=>Array.isArray(B)&&(B[0]==="LENGTHUNIT"||B[0]==="ANGLEUNIT"||B[0]==="SCALEUNIT")),M=this.convertUnit(g);return{name:r,direction:u,unit:M,order:p}}static extractAxes(n){return n.filter(r=>Array.isArray(r)&&r[0]==="AXIS").map(r=>this.convertAxis(r)).sort((r,u)=>(r.order||0)-(u.order||0))}static convert(n,r={}){switch(n[0]){case"PROJCRS":r.type="ProjectedCRS",r.name=n[1],r.base_crs=n.find(C=>Array.isArray(C)&&C[0]==="BASEGEOGCRS")?this.convert(n.find(C=>Array.isArray(C)&&C[0]==="BASEGEOGCRS")):null,r.conversion=n.find(C=>Array.isArray(C)&&C[0]==="CONVERSION")?this.convert(n.find(C=>Array.isArray(C)&&C[0]==="CONVERSION")):null;const u=n.find(C=>Array.isArray(C)&&C[0]==="CS");u&&(r.coordinate_system={type:u[1],axis:this.extractAxes(n)});const d=n.find(C=>Array.isArray(C)&&C[0]==="LENGTHUNIT");if(d){const C=this.convertUnit(d);r.coordinate_system.unit=C}r.id=this.getId(n);break;case"BASEGEOGCRS":case"GEOGCRS":r.type="GeographicCRS",r.name=n[1];const f=n.find(C=>Array.isArray(C)&&(C[0]==="DATUM"||C[0]==="ENSEMBLE"));if(f){const C=this.convert(f);f[0]==="ENSEMBLE"?r.datum_ensemble=C:r.datum=C;const T=n.find(G=>Array.isArray(G)&&G[0]==="PRIMEM");T&&T[1]!=="Greenwich"&&(C.prime_meridian={name:T[1],longitude:parseFloat(T[2])})}r.coordinate_system={type:"ellipsoidal",axis:this.extractAxes(n)},r.id=this.getId(n);break;case"DATUM":r.type="GeodeticReferenceFrame",r.name=n[1],r.ellipsoid=n.find(C=>Array.isArray(C)&&C[0]==="ELLIPSOID")?this.convert(n.find(C=>Array.isArray(C)&&C[0]==="ELLIPSOID")):null;break;case"ENSEMBLE":r.type="DatumEnsemble",r.name=n[1],r.members=n.filter(C=>Array.isArray(C)&&C[0]==="MEMBER").map(C=>({type:"DatumEnsembleMember",name:C[1],id:this.getId(C)}));const p=n.find(C=>Array.isArray(C)&&C[0]==="ENSEMBLEACCURACY");p&&(r.accuracy=parseFloat(p[1]));const g=n.find(C=>Array.isArray(C)&&C[0]==="ELLIPSOID");g&&(r.ellipsoid=this.convert(g)),r.id=this.getId(n);break;case"ELLIPSOID":r.type="Ellipsoid",r.name=n[1],r.semi_major_axis=parseFloat(n[2]),r.inverse_flattening=parseFloat(n[3]),n.find(C=>Array.isArray(C)&&C[0]==="LENGTHUNIT")&&this.convert(n.find(C=>Array.isArray(C)&&C[0]==="LENGTHUNIT"),r);break;case"CONVERSION":r.type="Conversion",r.name=n[1],r.method=n.find(C=>Array.isArray(C)&&C[0]==="METHOD")?this.convert(n.find(C=>Array.isArray(C)&&C[0]==="METHOD")):null,r.parameters=n.filter(C=>Array.isArray(C)&&C[0]==="PARAMETER").map(C=>this.convert(C));break;case"METHOD":r.type="Method",r.name=n[1],r.id=this.getId(n);break;case"PARAMETER":r.type="Parameter",r.name=n[1],r.value=parseFloat(n[2]),r.unit=this.convertUnit(n.find(C=>Array.isArray(C)&&(C[0]==="LENGTHUNIT"||C[0]==="ANGLEUNIT"||C[0]==="SCALEUNIT"))),r.id=this.getId(n);break;case"BOUNDCRS":r.type="BoundCRS";const M=n.find(C=>Array.isArray(C)&&C[0]==="SOURCECRS");if(M){const C=M.find(T=>Array.isArray(T));r.source_crs=C?this.convert(C):null}const B=n.find(C=>Array.isArray(C)&&C[0]==="TARGETCRS");if(B){const C=B.find(T=>Array.isArray(T));r.target_crs=C?this.convert(C):null}const E=n.find(C=>Array.isArray(C)&&C[0]==="ABRIDGEDTRANSFORMATION");E?r.transformation=this.convert(E):r.transformation=null;break;case"ABRIDGEDTRANSFORMATION":if(r.type="Transformation",r.name=n[1],r.method=n.find(C=>Array.isArray(C)&&C[0]==="METHOD")?this.convert(n.find(C=>Array.isArray(C)&&C[0]==="METHOD")):null,r.parameters=n.filter(C=>Array.isArray(C)&&(C[0]==="PARAMETER"||C[0]==="PARAMETERFILE")).map(C=>{if(C[0]==="PARAMETER")return this.convert(C);if(C[0]==="PARAMETERFILE")return{name:C[1],value:C[2],id:{authority:"EPSG",code:8656}}}),r.parameters.length===7){const C=r.parameters[6];C.name==="Scale difference"&&(C.value=Math.round((C.value-1)*1e12)/1e6)}r.id=this.getId(n);break;case"AXIS":r.coordinate_system||(r.coordinate_system={type:"unspecified",axis:[]}),r.coordinate_system.axis.push(this.convertAxis(n));break;case"LENGTHUNIT":const x=this.convertUnit(n,"LinearUnit");r.coordinate_system&&r.coordinate_system.axis&&r.coordinate_system.axis.forEach(C=>{C.unit||(C.unit=x)}),x.conversion_factor&&x.conversion_factor!==1&&r.semi_major_axis&&(r.semi_major_axis={value:r.semi_major_axis,unit:x});break;default:r.keyword=n[0];break}return r}}class Sl extends ch{static convert(n,r={}){return super.convert(n,r),r.coordinate_system&&r.coordinate_system.subtype==="Cartesian"&&delete r.coordinate_system,r.usage&&delete r.usage,r}}class Bl extends ch{static convert(n,r={}){super.convert(n,r);const u=n.find(f=>Array.isArray(f)&&f[0]==="CS");u&&(r.coordinate_system={subtype:u[1],axis:this.extractAxes(n)});const d=n.find(f=>Array.isArray(f)&&f[0]==="USAGE");if(d){const f=d.find(M=>Array.isArray(M)&&M[0]==="SCOPE"),p=d.find(M=>Array.isArray(M)&&M[0]==="AREA"),g=d.find(M=>Array.isArray(M)&&M[0]==="BBOX");r.usage={},f&&(r.usage.scope=f[1]),p&&(r.usage.area=p[1]),g&&(r.usage.bbox=g.slice(1))}return r}}function Tl(t){return t.find(n=>Array.isArray(n)&&n[0]==="USAGE")?"2019":(t.find(n=>Array.isArray(n)&&n[0]==="CS")||t[0]==="BOUNDCRS"||t[0]==="PROJCRS"||t[0]==="GEOGCRS","2015")}function Dl(t){return(Tl(t)==="2019"?Bl:Sl).convert(t)}function Ol(t){const n=t.toUpperCase();return n.includes("PROJCRS")||n.includes("GEOGCRS")||n.includes("BOUNDCRS")||n.includes("VERTCRS")||n.includes("LENGTHUNIT")||n.includes("ANGLEUNIT")||n.includes("SCALEUNIT")?"WKT2":(n.includes("PROJCS")||n.includes("GEOGCS")||n.includes("LOCAL_CS")||n.includes("VERT_CS")||n.includes("UNIT"),"WKT1")}var us=1,dh=2,fh=3,fa=4,ph=5,Dr=-1,Il=/\s/,Rl=/[A-Za-z]/,Fl=/[A-Za-z84_]/,pa=/[,\]]/,_h=/[\d\.E\-\+]/;function Mi(t){if(typeof t!="string")throw new Error("not a string");this.text=t.trim(),this.level=0,this.place=0,this.root=null,this.stack=[],this.currentObject=null,this.state=us}Mi.prototype.readCharicter=function(){var t=this.text[this.place++];if(this.state!==fa)for(;Il.test(t);){if(this.place>=this.text.length)return;t=this.text[this.place++]}switch(this.state){case us:return this.neutral(t);case dh:return this.keyword(t);case fa:return this.quoted(t);case ph:return this.afterquote(t);case fh:return this.number(t);case Dr:return}},Mi.prototype.afterquote=function(t){if(t==='"'){this.word+='"',this.state=fa;return}if(pa.test(t)){this.word=this.word.trim(),this.afterItem(t);return}throw new Error(`havn't handled "`+t+'" in afterquote yet, index '+this.place)},Mi.prototype.afterItem=function(t){if(t===","){this.word!==null&&this.currentObject.push(this.word),this.word=null,this.state=us;return}if(t==="]"){this.level--,this.word!==null&&(this.currentObject.push(this.word),this.word=null),this.state=us,this.currentObject=this.stack.pop(),this.currentObject||(this.state=Dr);return}},Mi.prototype.number=function(t){if(_h.test(t)){this.word+=t;return}if(pa.test(t)){this.word=parseFloat(this.word),this.afterItem(t);return}throw new Error(`havn't handled "`+t+'" in number yet, index '+this.place)},Mi.prototype.quoted=function(t){if(t==='"'){this.state=ph;return}this.word+=t},Mi.prototype.keyword=function(t){if(Fl.test(t)){this.word+=t;return}if(t==="["){var n=[];n.push(this.word),this.level++,this.root===null?this.root=n:this.currentObject.push(n),this.stack.push(this.currentObject),this.currentObject=n,this.state=us;return}if(pa.test(t)){this.afterItem(t);return}throw new Error(`havn't handled "`+t+'" in keyword yet, index '+this.place)},Mi.prototype.neutral=function(t){if(Rl.test(t)){this.word=t,this.state=dh;return}if(t==='"'){this.word="",this.state=fa;return}if(_h.test(t)){this.word=t,this.state=fh;return}if(pa.test(t)){this.afterItem(t);return}throw new Error(`havn't handled "`+t+'" in neutral yet, index '+this.place)},Mi.prototype.output=function(){for(;this.place<this.text.length;)this.readCharicter();if(this.state===Dr)return this.root;throw new Error('unable to parse string "'+this.text+'". State is '+this.state)};function Gl(t){var n=new Mi(t);return n.output()}function Or(t,n,r){Array.isArray(n)&&(r.unshift(n),n=null);var u=n?{}:t,d=r.reduce(function(f,p){return xn(p,f),f},u);n&&(t[n]=d)}function xn(t,n){if(!Array.isArray(t)){n[t]=!0;return}var r=t.shift();if(r==="PARAMETER"&&(r=t.shift()),t.length===1){if(Array.isArray(t[0])){n[r]={},xn(t[0],n[r]);return}n[r]=t[0];return}if(!t.length){n[r]=!0;return}if(r==="TOWGS84"){n[r]=t;return}if(r==="AXIS"){r in n||(n[r]=[]),n[r].push(t);return}Array.isArray(r)||(n[r]={});var u;switch(r){case"UNIT":case"PRIMEM":case"VERT_DATUM":n[r]={name:t[0].toLowerCase(),convert:t[1]},t.length===3&&xn(t[2],n[r]);return;case"SPHEROID":case"ELLIPSOID":n[r]={name:t[0],a:t[1],rf:t[2]},t.length===4&&xn(t[3],n[r]);return;case"EDATUM":case"ENGINEERINGDATUM":case"LOCAL_DATUM":case"DATUM":case"VERT_CS":case"VERTCRS":case"VERTICALCRS":t[0]=["name",t[0]],Or(n,r,t);return;case"COMPD_CS":case"COMPOUNDCRS":case"FITTED_CS":case"PROJECTEDCRS":case"PROJCRS":case"GEOGCS":case"GEOCCS":case"PROJCS":case"LOCAL_CS":case"GEODCRS":case"GEODETICCRS":case"GEODETICDATUM":case"ENGCRS":case"ENGINEERINGCRS":t[0]=["name",t[0]],Or(n,r,t),n[r].type=r;return;default:for(u=-1;++u<t.length;)if(!Array.isArray(t[u]))return xn(t,n[r]);return Or(n,r,t)}}var zl=.017453292519943295;function ei(t){return t*zl}function mh(t){const n=(t.projName||"").toLowerCase().replace(/_/g," ");!t.long0&&t.longc&&(n==="albers conic equal area"||n==="lambert azimuthal equal area")&&(t.long0=t.longc),!t.lat_ts&&t.lat1&&(n==="stereographic south pole"||n==="polar stereographic (variant b)")?(t.lat0=ei(t.lat1>0?90:-90),t.lat_ts=t.lat1,delete t.lat1):!t.lat_ts&&t.lat0&&(n==="polar stereographic"||n==="polar stereographic (variant a)")&&(t.lat_ts=t.lat0,t.lat0=ei(t.lat0>0?90:-90),delete t.lat1)}function gh(t){let n={units:null,to_meter:void 0};return typeof t=="string"?(n.units=t.toLowerCase(),n.units==="metre"&&(n.units="meter"),n.units==="meter"&&(n.to_meter=1)):t&&t.name&&(n.units=t.name.toLowerCase(),n.units==="metre"&&(n.units="meter"),n.to_meter=t.conversion_factor),n}function yh(t){return typeof t=="object"?t.value*t.unit.conversion_factor:t}function Ah(t,n){t.ellipsoid.radius?(n.a=t.ellipsoid.radius,n.rf=0):(n.a=yh(t.ellipsoid.semi_major_axis),t.ellipsoid.inverse_flattening!==void 0?n.rf=t.ellipsoid.inverse_flattening:t.ellipsoid.semi_major_axis!==void 0&&t.ellipsoid.semi_minor_axis!==void 0&&(n.rf=n.a/(n.a-yh(t.ellipsoid.semi_minor_axis))))}function _a(t,n={}){return!t||typeof t!="object"?t:t.type==="BoundCRS"?(_a(t.source_crs,n),t.transformation&&(t.transformation.method&&t.transformation.method.name==="NTv2"?n.nadgrids=t.transformation.parameters[0].value:n.datum_params=t.transformation.parameters.map(r=>r.value)),n):(Object.keys(t).forEach(r=>{const u=t[r];if(u!==null)switch(r){case"name":if(n.srsCode)break;n.name=u,n.srsCode=u;break;case"type":u==="GeographicCRS"?n.projName="longlat":u==="ProjectedCRS"&&t.conversion&&t.conversion.method&&(n.projName=t.conversion.method.name);break;case"datum":case"datum_ensemble":u.ellipsoid&&(n.ellps=u.ellipsoid.name,Ah(u,n)),u.prime_meridian&&(n.from_greenwich=u.prime_meridian.longitude*Math.PI/180);break;case"ellipsoid":n.ellps=u.name,Ah(u,n);break;case"prime_meridian":n.long0=(u.longitude||0)*Math.PI/180;break;case"coordinate_system":if(u.axis){if(n.axis=u.axis.map(d=>{const f=d.direction;if(f==="east")return"e";if(f==="north")return"n";if(f==="west")return"w";if(f==="south")return"s";throw new Error(`Unknown axis direction: ${f}`)}).join("")+"u",u.unit){const{units:d,to_meter:f}=gh(u.unit);n.units=d,n.to_meter=f}else if(u.axis[0]&&u.axis[0].unit){const{units:d,to_meter:f}=gh(u.axis[0].unit);n.units=d,n.to_meter=f}}break;case"id":u.authority&&u.code&&(n.title=u.authority+":"+u.code);break;case"conversion":u.method&&u.method.name&&(n.projName=u.method.name),u.parameters&&u.parameters.forEach(d=>{const f=d.name.toLowerCase().replace(/\s+/g,"_"),p=d.value;d.unit&&d.unit.conversion_factor?n[f]=p*d.unit.conversion_factor:d.unit==="degree"?n[f]=p*Math.PI/180:n[f]=p});break;case"unit":u.name&&(n.units=u.name.toLowerCase(),n.units==="metre"&&(n.units="meter")),u.conversion_factor&&(n.to_meter=u.conversion_factor);break;case"base_crs":_a(u,n),n.datumCode=u.id?u.id.authority+"_"+u.id.code:u.name;break}}),n.latitude_of_false_origin!==void 0&&(n.lat0=n.latitude_of_false_origin),n.longitude_of_false_origin!==void 0&&(n.long0=n.longitude_of_false_origin),n.latitude_of_standard_parallel!==void 0&&(n.lat0=n.latitude_of_standard_parallel,n.lat1=n.latitude_of_standard_parallel),n.latitude_of_1st_standard_parallel!==void 0&&(n.lat1=n.latitude_of_1st_standard_parallel),n.latitude_of_2nd_standard_parallel!==void 0&&(n.lat2=n.latitude_of_2nd_standard_parallel),n.latitude_of_projection_centre!==void 0&&(n.lat0=n.latitude_of_projection_centre),n.longitude_of_projection_centre!==void 0&&(n.longc=n.longitude_of_projection_centre),n.easting_at_false_origin!==void 0&&(n.x0=n.easting_at_false_origin),n.northing_at_false_origin!==void 0&&(n.y0=n.northing_at_false_origin),n.latitude_of_natural_origin!==void 0&&(n.lat0=n.latitude_of_natural_origin),n.longitude_of_natural_origin!==void 0&&(n.long0=n.longitude_of_natural_origin),n.longitude_of_origin!==void 0&&(n.long0=n.longitude_of_origin),n.false_easting!==void 0&&(n.x0=n.false_easting),n.easting_at_projection_centre&&(n.x0=n.easting_at_projection_centre),n.false_northing!==void 0&&(n.y0=n.false_northing),n.northing_at_projection_centre&&(n.y0=n.northing_at_projection_centre),n.standard_parallel_1!==void 0&&(n.lat1=n.standard_parallel_1),n.standard_parallel_2!==void 0&&(n.lat2=n.standard_parallel_2),n.scale_factor_at_natural_origin!==void 0&&(n.k0=n.scale_factor_at_natural_origin),n.scale_factor_at_projection_centre!==void 0&&(n.k0=n.scale_factor_at_projection_centre),n.scale_factor_on_pseudo_standard_parallel!==void 0&&(n.k0=n.scale_factor_on_pseudo_standard_parallel),n.azimuth!==void 0&&(n.alpha=n.azimuth),n.azimuth_at_projection_centre!==void 0&&(n.alpha=n.azimuth_at_projection_centre),n.angle_from_rectified_to_skew_grid&&(n.rectified_grid_angle=n.angle_from_rectified_to_skew_grid),mh(n),n)}var Nl=["PROJECTEDCRS","PROJCRS","GEOGCS","GEOCCS","PROJCS","LOCAL_CS","GEODCRS","GEODETICCRS","GEODETICDATUM","ENGCRS","ENGINEERINGCRS"];function Ul(t,n){var r=n[0],u=n[1];!(r in t)&&u in t&&(t[r]=t[u],n.length===3&&(t[r]=n[2](t[r])))}function vh(t){for(var n=Object.keys(t),r=0,u=n.length;r<u;++r){var d=n[r];Nl.indexOf(d)!==-1&&jl(t[d]),typeof t[d]=="object"&&vh(t[d])}}function jl(t){if(t.AUTHORITY){var n=Object.keys(t.AUTHORITY)[0];n&&n in t.AUTHORITY&&(t.title=n+":"+t.AUTHORITY[n])}if(t.type==="GEOGCS"?t.projName="longlat":t.type==="LOCAL_CS"?(t.projName="identity",t.local=!0):typeof t.PROJECTION=="object"?t.projName=Object.keys(t.PROJECTION)[0]:t.projName=t.PROJECTION,t.AXIS){for(var r="",u=0,d=t.AXIS.length;u<d;++u){var f=[t.AXIS[u][0].toLowerCase(),t.AXIS[u][1].toLowerCase()];f[0].indexOf("north")!==-1||(f[0]==="y"||f[0]==="lat")&&f[1]==="north"?r+="n":f[0].indexOf("south")!==-1||(f[0]==="y"||f[0]==="lat")&&f[1]==="south"?r+="s":f[0].indexOf("east")!==-1||(f[0]==="x"||f[0]==="lon")&&f[1]==="east"?r+="e":(f[0].indexOf("west")!==-1||(f[0]==="x"||f[0]==="lon")&&f[1]==="west")&&(r+="w")}r.length===2&&(r+="u"),r.length===3&&(t.axis=r)}t.UNIT&&(t.units=t.UNIT.name.toLowerCase(),t.units==="metre"&&(t.units="meter"),t.UNIT.convert&&(t.type==="GEOGCS"?t.DATUM&&t.DATUM.SPHEROID&&(t.to_meter=t.UNIT.convert*t.DATUM.SPHEROID.a):t.to_meter=t.UNIT.convert));var p=t.GEOGCS;t.type==="GEOGCS"&&(p=t),p&&(p.DATUM?t.datumCode=p.DATUM.name.toLowerCase():t.datumCode=p.name.toLowerCase(),t.datumCode.slice(0,2)==="d_"&&(t.datumCode=t.datumCode.slice(2)),t.datumCode==="new_zealand_1949"&&(t.datumCode="nzgd49"),(t.datumCode==="wgs_1984"||t.datumCode==="world_geodetic_system_1984")&&(t.PROJECTION==="Mercator_Auxiliary_Sphere"&&(t.sphere=!0),t.datumCode="wgs84"),t.datumCode==="belge_1972"&&(t.datumCode="rnb72"),p.DATUM&&p.DATUM.SPHEROID&&(t.ellps=p.DATUM.SPHEROID.name.replace("_19","").replace(/[Cc]larke\_18/,"clrk"),t.ellps.toLowerCase().slice(0,13)==="international"&&(t.ellps="intl"),t.a=p.DATUM.SPHEROID.a,t.rf=parseFloat(p.DATUM.SPHEROID.rf,10)),p.DATUM&&p.DATUM.TOWGS84&&(t.datum_params=p.DATUM.TOWGS84),~t.datumCode.indexOf("osgb_1936")&&(t.datumCode="osgb36"),~t.datumCode.indexOf("osni_1952")&&(t.datumCode="osni52"),(~t.datumCode.indexOf("tm65")||~t.datumCode.indexOf("geodetic_datum_of_1965"))&&(t.datumCode="ire65"),t.datumCode==="ch1903+"&&(t.datumCode="ch1903"),~t.datumCode.indexOf("israel")&&(t.datumCode="isr93")),t.b&&!isFinite(t.b)&&(t.b=t.a),t.rectified_grid_angle&&(t.rectified_grid_angle=ei(t.rectified_grid_angle));function g(E){var x=t.to_meter||1;return E*x}var M=function(E){return Ul(t,E)},B=[["standard_parallel_1","Standard_Parallel_1"],["standard_parallel_1","Latitude of 1st standard parallel"],["standard_parallel_2","Standard_Parallel_2"],["standard_parallel_2","Latitude of 2nd standard parallel"],["false_easting","False_Easting"],["false_easting","False easting"],["false-easting","Easting at false origin"],["false_northing","False_Northing"],["false_northing","False northing"],["false_northing","Northing at false origin"],["central_meridian","Central_Meridian"],["central_meridian","Longitude of natural origin"],["central_meridian","Longitude of false origin"],["latitude_of_origin","Latitude_Of_Origin"],["latitude_of_origin","Central_Parallel"],["latitude_of_origin","Latitude of natural origin"],["latitude_of_origin","Latitude of false origin"],["scale_factor","Scale_Factor"],["k0","scale_factor"],["latitude_of_center","Latitude_Of_Center"],["latitude_of_center","Latitude_of_center"],["lat0","latitude_of_center",ei],["longitude_of_center","Longitude_Of_Center"],["longitude_of_center","Longitude_of_center"],["longc","longitude_of_center",ei],["x0","false_easting",g],["y0","false_northing",g],["long0","central_meridian",ei],["lat0","latitude_of_origin",ei],["lat0","standard_parallel_1",ei],["lat1","standard_parallel_1",ei],["lat2","standard_parallel_2",ei],["azimuth","Azimuth"],["alpha","azimuth",ei],["srsCode","name"]];B.forEach(M),mh(t)}function Ir(t){if(typeof t=="object")return _a(t);const n=Ol(t);var r=Gl(t);if(n==="WKT2"){const f=Dl(r);return _a(f)}var u=r[0],d={};return xn(r,d),vh(d),d[u]}function Be(t){var n=this;if(arguments.length===2){var r=arguments[1];typeof r=="string"?r.charAt(0)==="+"?Be[t]=Tr(arguments[1]):Be[t]=Ir(arguments[1]):Be[t]=r}else if(arguments.length===1){if(Array.isArray(t))return t.map(function(u){return Array.isArray(u)?Be.apply(n,u):Be(u)});if(typeof t=="string"){if(t in Be)return Be[t]}else"EPSG"in t?Be["EPSG:"+t.EPSG]=t:"ESRI"in t?Be["ESRI:"+t.ESRI]=t:"IAU2000"in t?Be["IAU2000:"+t.IAU2000]=t:console.log(t);return}}Ll(Be);function Zl(t){return typeof t=="string"}function ql(t){return t in Be}function Hl(t){return t.indexOf("+")!==0&&t.indexOf("[")!==-1||typeof t=="object"&&!("srsCode"in t)}var Vl=["3857","900913","3785","102113"];function $l(t){var n=Di(t,"authority");if(n){var r=Di(n,"epsg");return r&&Vl.indexOf(r)>-1}}function Kl(t){var n=Di(t,"extension");if(n)return Di(n,"proj4")}function Wl(t){return t[0]==="+"}function Xl(t){if(Zl(t)){if(ql(t))return Be[t];if(Hl(t)){var n=Ir(t);if($l(n))return Be["EPSG:3857"];var r=Kl(n);return r?Tr(r):n}if(Wl(t))return Tr(t)}else return"projName"in t?t:Ir(t)}function Mh(t,n){t=t||{};var r,u;if(!n)return t;for(u in n)r=n[u],r!==void 0&&(t[u]=r);return t}function ci(t,n,r){var u=t*n;return r/Math.sqrt(1-u*u)}function cs(t){return t<0?-1:1}function _t(t){return Math.abs(t)<=he?t:t-cs(t)*ls}function ii(t,n,r){var u=t*r,d=.5*t;return u=Math.pow((1-u)/(1+u),d),Math.tan(.5*(ut-n))/u}function ds(t,n){for(var r=.5*t,u,d,f=ut-2*Math.atan(n),p=0;p<=15;p++)if(u=t*Math.sin(f),d=ut-2*Math.atan(n*Math.pow((1-u)/(1+u),r))-f,f+=d,Math.abs(d)<=1e-10)return f;return-9999}function Yl(){var t=this.b/this.a;this.es=1-t*t,"x0"in this||(this.x0=0),"y0"in this||(this.y0=0),this.e=Math.sqrt(this.es),this.lat_ts?this.sphere?this.k0=Math.cos(this.lat_ts):this.k0=ci(this.e,Math.sin(this.lat_ts),Math.cos(this.lat_ts)):this.k0||(this.k?this.k0=this.k:this.k0=1)}function Jl(t){var n=t.x,r=t.y;if(r*ui>90&&r*ui<-90&&n*ui>180&&n*ui<-180)return null;var u,d;if(Math.abs(Math.abs(r)-ut)<=dt)return null;if(this.sphere)u=this.x0+this.a*this.k0*_t(n-this.long0),d=this.y0+this.a*this.k0*Math.log(Math.tan(Zt+.5*r));else{var f=Math.sin(r),p=ii(this.e,r,f);u=this.x0+this.a*this.k0*_t(n-this.long0),d=this.y0-this.a*this.k0*Math.log(p)}return t.x=u,t.y=d,t}function Ql(t){var n=t.x-this.x0,r=t.y-this.y0,u,d;if(this.sphere)d=ut-2*Math.atan(Math.exp(-r/(this.a*this.k0)));else{var f=Math.exp(-r/(this.a*this.k0));if(d=ds(this.e,f),d===-9999)return null}return u=_t(this.long0+n/(this.a*this.k0)),t.x=u,t.y=d,t}var tu=["Mercator","Popular Visualisation Pseudo Mercator","Mercator_1SP","Mercator_Auxiliary_Sphere","Mercator_Variant_A","merc"];const eu={init:Yl,forward:Jl,inverse:Ql,names:tu};function iu(){}function xh(t){return t}var nu=["longlat","identity"],su=[eu,{init:iu,forward:xh,inverse:xh,names:nu}],tn={},Ln=[];function Lh(t,n){var r=Ln.length;return t.names?(Ln[r]=t,t.names.forEach(function(u){tn[u.toLowerCase()]=r}),this):(console.log(n),!0)}function bh(t){return t.replace(/[-\(\)\s]+/g," ").trim().replace(/ /g,"_")}function au(t){if(!t)return!1;var n=t.toLowerCase();if(typeof tn[n]<"u"&&Ln[tn[n]]||(n=bh(n),n in tn&&Ln[tn[n]]))return Ln[tn[n]]}function ru(){su.forEach(Lh)}const ou={start:ru,add:Lh,get:au};var wh={MERIT:{a:6378137,rf:298.257,ellipseName:"MERIT 1983"},SGS85:{a:6378136,rf:298.257,ellipseName:"Soviet Geodetic System 85"},GRS80:{a:6378137,rf:298.257222101,ellipseName:"GRS 1980(IUGG, 1980)"},IAU76:{a:6378140,rf:298.257,ellipseName:"IAU 1976"},airy:{a:6377563396e-3,b:635625691e-2,ellipseName:"Airy 1830"},APL4:{a:6378137,rf:298.25,ellipseName:"Appl. Physics. 1965"},NWL9D:{a:6378145,rf:298.25,ellipseName:"Naval Weapons Lab., 1965"},mod_airy:{a:6377340189e-3,b:6356034446e-3,ellipseName:"Modified Airy"},andrae:{a:637710443e-2,rf:300,ellipseName:"Andrae 1876 (Den., Iclnd.)"},aust_SA:{a:6378160,rf:298.25,ellipseName:"Australian Natl & S. Amer. 1969"},GRS67:{a:6378160,rf:298.247167427,ellipseName:"GRS 67(IUGG 1967)"},bessel:{a:6377397155e-3,rf:299.1528128,ellipseName:"Bessel 1841"},bess_nam:{a:6377483865e-3,rf:299.1528128,ellipseName:"Bessel 1841 (Namibia)"},clrk66:{a:63782064e-1,b:63565838e-1,ellipseName:"Clarke 1866"},clrk80:{a:6378249145e-3,rf:293.4663,ellipseName:"Clarke 1880 mod."},clrk80ign:{a:63782492e-1,b:6356515,rf:293.4660213,ellipseName:"Clarke 1880 (IGN)"},clrk58:{a:6378293645208759e-9,rf:294.2606763692654,ellipseName:"Clarke 1858"},CPM:{a:63757387e-1,rf:334.29,ellipseName:"Comm. des Poids et Mesures 1799"},delmbr:{a:6376428,rf:311.5,ellipseName:"Delambre 1810 (Belgium)"},engelis:{a:637813605e-2,rf:298.2566,ellipseName:"Engelis 1985"},evrst30:{a:6377276345e-3,rf:300.8017,ellipseName:"Everest 1830"},evrst48:{a:6377304063e-3,rf:300.8017,ellipseName:"Everest 1948"},evrst56:{a:6377301243e-3,rf:300.8017,ellipseName:"Everest 1956"},evrst69:{a:6377295664e-3,rf:300.8017,ellipseName:"Everest 1969"},evrstSS:{a:6377298556e-3,rf:300.8017,ellipseName:"Everest (Sabah & Sarawak)"},fschr60:{a:6378166,rf:298.3,ellipseName:"Fischer (Mercury Datum) 1960"},fschr60m:{a:6378155,rf:298.3,ellipseName:"Fischer 1960"},fschr68:{a:6378150,rf:298.3,ellipseName:"Fischer 1968"},helmert:{a:6378200,rf:298.3,ellipseName:"Helmert 1906"},hough:{a:6378270,rf:297,ellipseName:"Hough"},intl:{a:6378388,rf:297,ellipseName:"International 1909 (Hayford)"},kaula:{a:6378163,rf:298.24,ellipseName:"Kaula 1961"},lerch:{a:6378139,rf:298.257,ellipseName:"Lerch 1979"},mprts:{a:6397300,rf:191,ellipseName:"Maupertius 1738"},new_intl:{a:63781575e-1,b:63567722e-1,ellipseName:"New International 1967"},plessis:{a:6376523,rf:6355863,ellipseName:"Plessis 1817 (France)"},krass:{a:6378245,rf:298.3,ellipseName:"Krassovsky, 1942"},SEasia:{a:6378155,b:63567733205e-4,ellipseName:"Southeast Asia"},walbeck:{a:6376896,b:63558348467e-4,ellipseName:"Walbeck"},WGS60:{a:6378165,rf:298.3,ellipseName:"WGS 60"},WGS66:{a:6378145,rf:298.25,ellipseName:"WGS 66"},WGS7:{a:6378135,rf:298.26,ellipseName:"WGS 72"},WGS84:{a:6378137,rf:298.257223563,ellipseName:"WGS 84"},sphere:{a:6370997,b:6370997,ellipseName:"Normal Sphere (r=6370997)"}};const hu=wh.WGS84;function lu(t,n,r,u){var d=t*t,f=n*n,p=(d-f)/d,g=0;u?(t*=1-p*(Cl+p*(El+p*Pl)),d=t*t,p=0):g=Math.sqrt(p);var M=(d-f)/f;return{es:p,e:g,ep2:M}}function uu(t,n,r,u,d){if(!t){var f=Di(wh,u);f||(f=hu),t=f.a,n=f.b,r=f.rf}return r&&!n&&(n=(1-1/r)*t),(r===0||Math.abs(t-n)<dt)&&(d=!0,n=t),{a:t,b:n,rf:r,sphere:d}}var ma={wgs84:{towgs84:"0,0,0",ellipse:"WGS84",datumName:"WGS84"},ch1903:{towgs84:"674.374,15.056,405.346",ellipse:"bessel",datumName:"swiss"},ggrs87:{towgs84:"-199.87,74.79,246.62",ellipse:"GRS80",datumName:"Greek_Geodetic_Reference_System_1987"},nad83:{towgs84:"0,0,0",ellipse:"GRS80",datumName:"North_American_Datum_1983"},nad27:{nadgrids:"@conus,@alaska,@ntv2_0.gsb,@ntv1_can.dat",ellipse:"clrk66",datumName:"North_American_Datum_1927"},potsdam:{towgs84:"598.1,73.7,418.2,0.202,0.045,-2.455,6.7",ellipse:"bessel",datumName:"Potsdam Rauenberg 1950 DHDN"},carthage:{towgs84:"-263.0,6.0,431.0",ellipse:"clark80",datumName:"Carthage 1934 Tunisia"},hermannskogel:{towgs84:"577.326,90.129,463.919,5.137,1.474,5.297,2.4232",ellipse:"bessel",datumName:"Hermannskogel"},mgi:{towgs84:"577.326,90.129,463.919,5.137,1.474,5.297,2.4232",ellipse:"bessel",datumName:"Militar-Geographische Institut"},osni52:{towgs84:"482.530,-130.596,564.557,-1.042,-0.214,-0.631,8.15",ellipse:"airy",datumName:"Irish National"},ire65:{towgs84:"482.530,-130.596,564.557,-1.042,-0.214,-0.631,8.15",ellipse:"mod_airy",datumName:"Ireland 1965"},rassadiran:{towgs84:"-133.63,-157.5,-158.62",ellipse:"intl",datumName:"Rassadiran"},nzgd49:{towgs84:"59.47,-5.04,187.44,0.47,-0.1,1.024,-4.5993",ellipse:"intl",datumName:"New Zealand Geodetic Datum 1949"},osgb36:{towgs84:"446.448,-125.157,542.060,0.1502,0.2470,0.8421,-20.4894",ellipse:"airy",datumName:"Ordnance Survey of Great Britain 1936"},s_jtsk:{towgs84:"589,76,480",ellipse:"bessel",datumName:"S-JTSK (Ferro)"},beduaram:{towgs84:"-106,-87,188",ellipse:"clrk80",datumName:"Beduaram"},gunung_segara:{towgs84:"-403,684,41",ellipse:"bessel",datumName:"Gunung Segara Jakarta"},rnb72:{towgs84:"106.869,-52.2978,103.724,-0.33657,0.456955,-1.84218,1",ellipse:"intl",datumName:"Reseau National Belge 1972"},EPSG_5451:{towgs84:"6.41,-49.05,-11.28,1.5657,0.5242,6.9718,-5.7649"},IGNF_LURESG:{towgs84:"-192.986,13.673,-39.309,-0.4099,-2.9332,2.6881,0.43"},EPSG_4614:{towgs84:"-119.4248,-303.65872,-11.00061,1.164298,0.174458,1.096259,3.657065"},EPSG_4615:{towgs84:"-494.088,-312.129,279.877,-1.423,-1.013,1.59,-0.748"},ESRI_37241:{towgs84:"-76.822,257.457,-12.817,2.136,-0.033,-2.392,-0.031"},ESRI_37249:{towgs84:"-440.296,58.548,296.265,1.128,10.202,4.559,-0.438"},ESRI_37245:{towgs84:"-511.151,-181.269,139.609,1.05,2.703,1.798,3.071"},EPSG_4178:{towgs84:"24.9,-126.4,-93.2,-0.063,-0.247,-0.041,1.01"},EPSG_4622:{towgs84:"-472.29,-5.63,-304.12,0.4362,-0.8374,0.2563,1.8984"},EPSG_4625:{towgs84:"126.93,547.94,130.41,-2.7867,5.1612,-0.8584,13.8227"},EPSG_5252:{towgs84:"0.023,0.036,-0.068,0.00176,0.00912,-0.01136,0.00439"},EPSG_4314:{towgs84:"597.1,71.4,412.1,0.894,0.068,-1.563,7.58"},EPSG_4282:{towgs84:"-178.3,-316.7,-131.5,5.278,6.077,10.979,19.166"},EPSG_4231:{towgs84:"-83.11,-97.38,-117.22,0.0276,-0.2167,0.2147,0.1218"},EPSG_4274:{towgs84:"-230.994,102.591,25.199,0.633,-0.239,0.9,1.95"},EPSG_4134:{towgs84:"-180.624,-225.516,173.919,-0.81,-1.898,8.336,16.71006"},EPSG_4254:{towgs84:"18.38,192.45,96.82,0.056,-0.142,-0.2,-0.0013"},EPSG_4159:{towgs84:"-194.513,-63.978,-25.759,-3.4027,3.756,-3.352,-0.9175"},EPSG_4687:{towgs84:"0.072,-0.507,-0.245,0.0183,-0.0003,0.007,-0.0093"},EPSG_4227:{towgs84:"-83.58,-397.54,458.78,-17.595,-2.847,4.256,3.225"},EPSG_4746:{towgs84:"599.4,72.4,419.2,-0.062,-0.022,-2.723,6.46"},EPSG_4745:{towgs84:"612.4,77,440.2,-0.054,0.057,-2.797,2.55"},EPSG_6311:{towgs84:"8.846,-4.394,-1.122,-0.00237,-0.146528,0.130428,0.783926"},EPSG_4289:{towgs84:"565.7381,50.4018,465.2904,-1.91514,1.60363,-9.09546,4.07244"},EPSG_4230:{towgs84:"-68.863,-134.888,-111.49,-0.53,-0.14,0.57,-3.4"},EPSG_4154:{towgs84:"-123.02,-158.95,-168.47"},EPSG_4156:{towgs84:"570.8,85.7,462.8,4.998,1.587,5.261,3.56"},EPSG_4299:{towgs84:"482.5,-130.6,564.6,-1.042,-0.214,-0.631,8.15"},EPSG_4179:{towgs84:"33.4,-146.6,-76.3,-0.359,-0.053,0.844,-0.84"},EPSG_4313:{towgs84:"-106.8686,52.2978,-103.7239,0.3366,-0.457,1.8422,-1.2747"},EPSG_4194:{towgs84:"163.511,127.533,-159.789"},EPSG_4195:{towgs84:"105,326,-102.5"},EPSG_4196:{towgs84:"-45,417,-3.5"},EPSG_4611:{towgs84:"-162.619,-276.959,-161.764,0.067753,-2.243649,-1.158827,-1.094246"},EPSG_4633:{towgs84:"137.092,131.66,91.475,-1.9436,-11.5993,-4.3321,-7.4824"},EPSG_4641:{towgs84:"-408.809,366.856,-412.987,1.8842,-0.5308,2.1655,-121.0993"},EPSG_4643:{towgs84:"-480.26,-438.32,-643.429,16.3119,20.1721,-4.0349,-111.7002"},EPSG_4300:{towgs84:"482.5,-130.6,564.6,-1.042,-0.214,-0.631,8.15"},EPSG_4188:{towgs84:"482.5,-130.6,564.6,-1.042,-0.214,-0.631,8.15"},EPSG_4660:{towgs84:"982.6087,552.753,-540.873,32.39344,-153.25684,-96.2266,16.805"},EPSG_4662:{towgs84:"97.295,-263.247,310.882,-1.5999,0.8386,3.1409,13.3259"},EPSG_3906:{towgs84:"577.88891,165.22205,391.18289,4.9145,-0.94729,-13.05098,7.78664"},EPSG_4307:{towgs84:"-209.3622,-87.8162,404.6198,0.0046,3.4784,0.5805,-1.4547"},EPSG_6892:{towgs84:"-76.269,-16.683,68.562,-6.275,10.536,-4.286,-13.686"},EPSG_4690:{towgs84:"221.597,152.441,176.523,2.403,1.3893,0.884,11.4648"},EPSG_4691:{towgs84:"218.769,150.75,176.75,3.5231,2.0037,1.288,10.9817"},EPSG_4629:{towgs84:"72.51,345.411,79.241,-1.5862,-0.8826,-0.5495,1.3653"},EPSG_4630:{towgs84:"165.804,216.213,180.26,-0.6251,-0.4515,-0.0721,7.4111"},EPSG_4692:{towgs84:"217.109,86.452,23.711,0.0183,-0.0003,0.007,-0.0093"},EPSG_9333:{towgs84:"0,0,0,-8.393,0.749,-10.276,0"},EPSG_9059:{towgs84:"0,0,0"},EPSG_4312:{towgs84:"601.705,84.263,485.227,4.7354,1.3145,5.393,-2.3887"},EPSG_4123:{towgs84:"-96.062,-82.428,-121.753,4.801,0.345,-1.376,1.496"},EPSG_4309:{towgs84:"-124.45,183.74,44.64,-0.4384,0.5446,-0.9706,-2.1365"},ESRI_104106:{towgs84:"-283.088,-70.693,117.445,-1.157,0.059,-0.652,-4.058"},EPSG_4281:{towgs84:"-219.247,-73.802,269.529"},EPSG_4322:{towgs84:"0,0,4.5"},EPSG_4324:{towgs84:"0,0,1.9"},EPSG_4284:{towgs84:"43.822,-108.842,-119.585,1.455,-0.761,0.737,0.549"},EPSG_4277:{towgs84:"446.448,-125.157,542.06,0.15,0.247,0.842,-20.489"},EPSG_4207:{towgs84:"-282.1,-72.2,120,-1.529,0.145,-0.89,-4.46"},EPSG_4688:{towgs84:"347.175,1077.618,2623.677,33.9058,-70.6776,9.4013,186.0647"},EPSG_4689:{towgs84:"410.793,54.542,80.501,-2.5596,-2.3517,-0.6594,17.3218"},EPSG_4720:{towgs84:"0,0,4.5"},EPSG_4273:{towgs84:"278.3,93,474.5,7.889,0.05,-6.61,6.21"},EPSG_4240:{towgs84:"204.64,834.74,293.8"},EPSG_4817:{towgs84:"278.3,93,474.5,7.889,0.05,-6.61,6.21"},ESRI_104131:{towgs84:"426.62,142.62,460.09,4.98,4.49,-12.42,-17.1"},EPSG_4265:{towgs84:"-104.1,-49.1,-9.9,0.971,-2.917,0.714,-11.68"},EPSG_4263:{towgs84:"-111.92,-87.85,114.5,1.875,0.202,0.219,0.032"},EPSG_4298:{towgs84:"-689.5937,623.84046,-65.93566,-0.02331,1.17094,-0.80054,5.88536"},EPSG_4270:{towgs84:"-253.4392,-148.452,386.5267,0.15605,0.43,-0.1013,-0.0424"},EPSG_4229:{towgs84:"-121.8,98.1,-10.7"},EPSG_4220:{towgs84:"-55.5,-348,-229.2"},EPSG_4214:{towgs84:"12.646,-155.176,-80.863"},EPSG_4232:{towgs84:"-345,3,223"},EPSG_4238:{towgs84:"-1.977,-13.06,-9.993,0.364,0.254,0.689,-1.037"},EPSG_4168:{towgs84:"-170,33,326"},EPSG_4131:{towgs84:"199,931,318.9"},EPSG_4152:{towgs84:"-0.9102,2.0141,0.5602,0.029039,0.010065,0.010101,0"},EPSG_5228:{towgs84:"572.213,85.334,461.94,4.9732,1.529,5.2484,3.5378"},EPSG_8351:{towgs84:"485.021,169.465,483.839,7.786342,4.397554,4.102655,0"},EPSG_4683:{towgs84:"-127.62,-67.24,-47.04,-3.068,4.903,1.578,-1.06"},EPSG_4133:{towgs84:"0,0,0"},EPSG_7373:{towgs84:"0.819,-0.5762,-1.6446,-0.00378,-0.03317,0.00318,0.0693"},EPSG_9075:{towgs84:"-0.9102,2.0141,0.5602,0.029039,0.010065,0.010101,0"},EPSG_9072:{towgs84:"-0.9102,2.0141,0.5602,0.029039,0.010065,0.010101,0"},EPSG_9294:{towgs84:"1.16835,-1.42001,-2.24431,-0.00822,-0.05508,0.01818,0.23388"},EPSG_4212:{towgs84:"-267.434,173.496,181.814,-13.4704,8.7154,7.3926,14.7492"},EPSG_4191:{towgs84:"-44.183,-0.58,-38.489,2.3867,2.7072,-3.5196,-8.2703"},EPSG_4237:{towgs84:"52.684,-71.194,-13.975,-0.312,-0.1063,-0.3729,1.0191"},EPSG_4740:{towgs84:"-1.08,-0.27,-0.9"},EPSG_4124:{towgs84:"419.3836,99.3335,591.3451,0.850389,1.817277,-7.862238,-0.99496"},EPSG_5681:{towgs84:"584.9636,107.7175,413.8067,1.1155,0.2824,-3.1384,7.9922"},EPSG_4141:{towgs84:"23.772,17.49,17.859,-0.3132,-1.85274,1.67299,-5.4262"},EPSG_4204:{towgs84:"-85.645,-273.077,-79.708,2.289,-1.421,2.532,3.194"},EPSG_4319:{towgs84:"226.702,-193.337,-35.371,-2.229,-4.391,9.238,0.9798"},EPSG_4200:{towgs84:"24.82,-131.21,-82.66"},EPSG_4130:{towgs84:"0,0,0"},EPSG_4127:{towgs84:"-82.875,-57.097,-156.768,-2.158,1.524,-0.982,-0.359"},EPSG_4149:{towgs84:"674.374,15.056,405.346"},EPSG_4617:{towgs84:"-0.991,1.9072,0.5129,1.25033e-7,4.6785e-8,5.6529e-8,0"},EPSG_4663:{towgs84:"-210.502,-66.902,-48.476,2.094,-15.067,-5.817,0.485"},EPSG_4664:{towgs84:"-211.939,137.626,58.3,-0.089,0.251,0.079,0.384"},EPSG_4665:{towgs84:"-105.854,165.589,-38.312,-0.003,-0.026,0.024,-0.048"},EPSG_4666:{towgs84:"631.392,-66.551,481.442,1.09,-4.445,-4.487,-4.43"},EPSG_4756:{towgs84:"-192.873,-39.382,-111.202,-0.00205,-0.0005,0.00335,0.0188"},EPSG_4723:{towgs84:"-179.483,-69.379,-27.584,-7.862,8.163,6.042,-13.925"},EPSG_4726:{towgs84:"8.853,-52.644,180.304,-0.393,-2.323,2.96,-24.081"},EPSG_4267:{towgs84:"-8.0,160.0,176.0"},EPSG_5365:{towgs84:"-0.16959,0.35312,0.51846,0.03385,-0.16325,0.03446,0.03693"},EPSG_4218:{towgs84:"304.5,306.5,-318.1"},EPSG_4242:{towgs84:"-33.722,153.789,94.959,-8.581,-4.478,4.54,8.95"},EPSG_4216:{towgs84:"-292.295,248.758,429.447,4.9971,2.99,6.6906,1.0289"},ESRI_104105:{towgs84:"631.392,-66.551,481.442,1.09,-4.445,-4.487,-4.43"},ESRI_104129:{towgs84:"0,0,0"},EPSG_4673:{towgs84:"174.05,-25.49,112.57"},EPSG_4202:{towgs84:"-124,-60,154"},EPSG_4203:{towgs84:"-117.763,-51.51,139.061,0.292,0.443,0.277,-0.191"},EPSG_3819:{towgs84:"595.48,121.69,515.35,4.115,-2.9383,0.853,-3.408"},EPSG_8694:{towgs84:"-93.799,-132.737,-219.073,-1.844,0.648,-6.37,-0.169"},EPSG_4145:{towgs84:"275.57,676.78,229.6"},EPSG_4283:{towgs84:"61.55,-10.87,-40.19,39.4924,32.7221,32.8979,-9.994"},EPSG_4317:{towgs84:"2.3287,-147.0425,-92.0802,-0.3092483,0.32482185,0.49729934,5.68906266"},EPSG_4272:{towgs84:"59.47,-5.04,187.44,0.47,-0.1,1.024,-4.5993"},EPSG_4248:{towgs84:"-307.7,265.3,-363.5"},EPSG_5561:{towgs84:"24,-121,-76"},EPSG_5233:{towgs84:"-0.293,766.95,87.713,0.195704,1.695068,3.473016,-0.039338"},ESRI_104130:{towgs84:"-86,-98,-119"},ESRI_104102:{towgs84:"682,-203,480"},ESRI_37207:{towgs84:"7,-10,-26"},EPSG_4675:{towgs84:"59.935,118.4,-10.871"},ESRI_104109:{towgs84:"-89.121,-348.182,260.871"},ESRI_104112:{towgs84:"-185.583,-230.096,281.361"},ESRI_104113:{towgs84:"25.1,-275.6,222.6"},IGNF_WGS72G:{towgs84:"0,12,6"},IGNF_NTFG:{towgs84:"-168,-60,320"},IGNF_EFATE57G:{towgs84:"-127,-769,472"},IGNF_PGP50G:{towgs84:"324.8,153.6,172.1"},IGNF_REUN47G:{towgs84:"94,-948,-1262"},IGNF_CSG67G:{towgs84:"-186,230,110"},IGNF_GUAD48G:{towgs84:"-467,-16,-300"},IGNF_TAHI51G:{towgs84:"162,117,154"},IGNF_TAHAAG:{towgs84:"65,342,77"},IGNF_NUKU72G:{towgs84:"84,274,65"},IGNF_PETRELS72G:{towgs84:"365,194,166"},IGNF_WALL78G:{towgs84:"253,-133,-127"},IGNF_MAYO50G:{towgs84:"-382,-59,-262"},IGNF_TANNAG:{towgs84:"-139,-967,436"},IGNF_IGN72G:{towgs84:"-13,-348,292"},IGNF_ATIGG:{towgs84:"1118,23,66"},IGNF_FANGA84G:{towgs84:"150.57,158.33,118.32"},IGNF_RUSAT84G:{towgs84:"202.13,174.6,-15.74"},IGNF_KAUE70G:{towgs84:"126.74,300.1,-75.49"},IGNF_MOP90G:{towgs84:"-10.8,-1.8,12.77"},IGNF_MHPF67G:{towgs84:"338.08,212.58,-296.17"},IGNF_TAHI79G:{towgs84:"160.61,116.05,153.69"},IGNF_ANAA92G:{towgs84:"1.5,3.84,4.81"},IGNF_MARQUI72G:{towgs84:"330.91,-13.92,58.56"},IGNF_APAT86G:{towgs84:"143.6,197.82,74.05"},IGNF_TUBU69G:{towgs84:"237.17,171.61,-77.84"},IGNF_STPM50G:{towgs84:"11.363,424.148,373.13"},EPSG_4150:{towgs84:"674.374,15.056,405.346"},EPSG_4754:{towgs84:"-208.4058,-109.8777,-2.5764"},ESRI_104101:{towgs84:"374,150,588"},EPSG_4693:{towgs84:"0,-0.15,0.68"},EPSG_6207:{towgs84:"293.17,726.18,245.36"},EPSG_4153:{towgs84:"-133.63,-157.5,-158.62"},EPSG_4132:{towgs84:"-241.54,-163.64,396.06"},EPSG_4221:{towgs84:"-154.5,150.7,100.4"},EPSG_4266:{towgs84:"-80.7,-132.5,41.1"},EPSG_4193:{towgs84:"-70.9,-151.8,-41.4"},EPSG_5340:{towgs84:"-0.41,0.46,-0.35"},EPSG_4246:{towgs84:"-294.7,-200.1,525.5"},EPSG_4318:{towgs84:"-3.2,-5.7,2.8"},EPSG_4121:{towgs84:"-199.87,74.79,246.62"},EPSG_4223:{towgs84:"-260.1,5.5,432.2"},EPSG_4158:{towgs84:"-0.465,372.095,171.736"},EPSG_4285:{towgs84:"-128.16,-282.42,21.93"},EPSG_4613:{towgs84:"-404.78,685.68,45.47"},EPSG_4607:{towgs84:"195.671,332.517,274.607"},EPSG_4475:{towgs84:"-381.788,-57.501,-256.673"},EPSG_4208:{towgs84:"-157.84,308.54,-146.6"},EPSG_4743:{towgs84:"70.995,-335.916,262.898"},EPSG_4710:{towgs84:"-323.65,551.39,-491.22"},EPSG_7881:{towgs84:"-0.077,0.079,0.086"},EPSG_4682:{towgs84:"283.729,735.942,261.143"},EPSG_4739:{towgs84:"-156,-271,-189"},EPSG_4679:{towgs84:"-80.01,253.26,291.19"},EPSG_4750:{towgs84:"-56.263,16.136,-22.856"},EPSG_4644:{towgs84:"-10.18,-350.43,291.37"},EPSG_4695:{towgs84:"-103.746,-9.614,-255.95"},EPSG_4292:{towgs84:"-355,21,72"},EPSG_4302:{towgs84:"-61.702,284.488,472.052"},EPSG_4143:{towgs84:"-124.76,53,466.79"},EPSG_4606:{towgs84:"-153,153,307"},EPSG_4699:{towgs84:"-770.1,158.4,-498.2"},EPSG_4247:{towgs84:"-273.5,110.6,-357.9"},EPSG_4160:{towgs84:"8.88,184.86,106.69"},EPSG_4161:{towgs84:"-233.43,6.65,173.64"},EPSG_9251:{towgs84:"-9.5,122.9,138.2"},EPSG_9253:{towgs84:"-78.1,101.6,133.3"},EPSG_4297:{towgs84:"-198.383,-240.517,-107.909"},EPSG_4269:{towgs84:"0,0,0"},EPSG_4301:{towgs84:"-147,506,687"},EPSG_4618:{towgs84:"-59,-11,-52"},EPSG_4612:{towgs84:"0,0,0"},EPSG_4678:{towgs84:"44.585,-131.212,-39.544"},EPSG_4250:{towgs84:"-130,29,364"},EPSG_4144:{towgs84:"214,804,268"},EPSG_4147:{towgs84:"-17.51,-108.32,-62.39"},EPSG_4259:{towgs84:"-254.1,-5.36,-100.29"},EPSG_4164:{towgs84:"-76,-138,67"},EPSG_4211:{towgs84:"-378.873,676.002,-46.255"},EPSG_4182:{towgs84:"-422.651,-172.995,84.02"},EPSG_4224:{towgs84:"-143.87,243.37,-33.52"},EPSG_4225:{towgs84:"-205.57,168.77,-4.12"},EPSG_5527:{towgs84:"-67.35,3.88,-38.22"},EPSG_4752:{towgs84:"98,390,-22"},EPSG_4310:{towgs84:"-30,190,89"},EPSG_9248:{towgs84:"-192.26,65.72,132.08"},EPSG_4680:{towgs84:"124.5,-63.5,-281"},EPSG_4701:{towgs84:"-79.9,-158,-168.9"},EPSG_4706:{towgs84:"-146.21,112.63,4.05"},EPSG_4805:{towgs84:"682,-203,480"},EPSG_4201:{towgs84:"-165,-11,206"},EPSG_4210:{towgs84:"-157,-2,-299"},EPSG_4183:{towgs84:"-104,167,-38"},EPSG_4139:{towgs84:"11,72,-101"},EPSG_4668:{towgs84:"-86,-98,-119"},EPSG_4717:{towgs84:"-2,151,181"},EPSG_4732:{towgs84:"102,52,-38"},EPSG_4280:{towgs84:"-377,681,-50"},EPSG_4209:{towgs84:"-138,-105,-289"},EPSG_4261:{towgs84:"31,146,47"},EPSG_4658:{towgs84:"-73,46,-86"},EPSG_4721:{towgs84:"265.025,384.929,-194.046"},EPSG_4222:{towgs84:"-136,-108,-292"},EPSG_4601:{towgs84:"-255,-15,71"},EPSG_4602:{towgs84:"725,685,536"},EPSG_4603:{towgs84:"72,213.7,93"},EPSG_4605:{towgs84:"9,183,236"},EPSG_4621:{towgs84:"137,248,-430"},EPSG_4657:{towgs84:"-28,199,5"},EPSG_4316:{towgs84:"103.25,-100.4,-307.19"},EPSG_4642:{towgs84:"-13,-348,292"},EPSG_4698:{towgs84:"145,-187,103"},EPSG_4192:{towgs84:"-206.1,-174.7,-87.7"},EPSG_4311:{towgs84:"-265,120,-358"},EPSG_4135:{towgs84:"58,-283,-182"},ESRI_104138:{towgs84:"198,-226,-347"},EPSG_4245:{towgs84:"-11,851,5"},EPSG_4142:{towgs84:"-125,53,467"},EPSG_4213:{towgs84:"-106,-87,188"},EPSG_4253:{towgs84:"-133,-77,-51"},EPSG_4129:{towgs84:"-132,-110,-335"},EPSG_4713:{towgs84:"-77,-128,142"},EPSG_4239:{towgs84:"217,823,299"},EPSG_4146:{towgs84:"295,736,257"},EPSG_4155:{towgs84:"-83,37,124"},EPSG_4165:{towgs84:"-173,253,27"},EPSG_4672:{towgs84:"175,-38,113"},EPSG_4236:{towgs84:"-637,-549,-203"},EPSG_4251:{towgs84:"-90,40,88"},EPSG_4271:{towgs84:"-2,374,172"},EPSG_4175:{towgs84:"-88,4,101"},EPSG_4716:{towgs84:"298,-304,-375"},EPSG_4315:{towgs84:"-23,259,-9"},EPSG_4744:{towgs84:"-242.2,-144.9,370.3"},EPSG_4244:{towgs84:"-97,787,86"},EPSG_4293:{towgs84:"616,97,-251"},EPSG_4714:{towgs84:"-127,-769,472"},EPSG_4736:{towgs84:"260,12,-147"},EPSG_6883:{towgs84:"-235,-110,393"},EPSG_6894:{towgs84:"-63,176,185"},EPSG_4205:{towgs84:"-43,-163,45"},EPSG_4256:{towgs84:"41,-220,-134"},EPSG_4262:{towgs84:"639,405,60"},EPSG_4604:{towgs84:"174,359,365"},EPSG_4169:{towgs84:"-115,118,426"},EPSG_4620:{towgs84:"-106,-129,165"},EPSG_4184:{towgs84:"-203,141,53"},EPSG_4616:{towgs84:"-289,-124,60"},EPSG_9403:{towgs84:"-307,-92,127"},EPSG_4684:{towgs84:"-133,-321,50"},EPSG_4708:{towgs84:"-491,-22,435"},EPSG_4707:{towgs84:"114,-116,-333"},EPSG_4709:{towgs84:"145,75,-272"},EPSG_4712:{towgs84:"-205,107,53"},EPSG_4711:{towgs84:"124,-234,-25"},EPSG_4718:{towgs84:"230,-199,-752"},EPSG_4719:{towgs84:"211,147,111"},EPSG_4724:{towgs84:"208,-435,-229"},EPSG_4725:{towgs84:"189,-79,-202"},EPSG_4735:{towgs84:"647,1777,-1124"},EPSG_4722:{towgs84:"-794,119,-298"},EPSG_4728:{towgs84:"-307,-92,127"},EPSG_4734:{towgs84:"-632,438,-609"},EPSG_4727:{towgs84:"912,-58,1227"},EPSG_4729:{towgs84:"185,165,42"},EPSG_4730:{towgs84:"170,42,84"},EPSG_4733:{towgs84:"276,-57,149"},ESRI_37218:{towgs84:"230,-199,-752"},ESRI_37240:{towgs84:"-7,215,225"},ESRI_37221:{towgs84:"252,-209,-751"},ESRI_4305:{towgs84:"-123,-206,219"},ESRI_104139:{towgs84:"-73,-247,227"},EPSG_4748:{towgs84:"51,391,-36"},EPSG_4219:{towgs84:"-384,664,-48"},EPSG_4255:{towgs84:"-333,-222,114"},EPSG_4257:{towgs84:"-587.8,519.75,145.76"},EPSG_4646:{towgs84:"-963,510,-359"},EPSG_6881:{towgs84:"-24,-203,268"},EPSG_6882:{towgs84:"-183,-15,273"},EPSG_4715:{towgs84:"-104,-129,239"},IGNF_RGF93GDD:{towgs84:"0,0,0"},IGNF_RGM04GDD:{towgs84:"0,0,0"},IGNF_RGSPM06GDD:{towgs84:"0,0,0"},IGNF_RGTAAF07GDD:{towgs84:"0,0,0"},IGNF_RGFG95GDD:{towgs84:"0,0,0"},IGNF_RGNCG:{towgs84:"0,0,0"},IGNF_RGPFGDD:{towgs84:"0,0,0"},IGNF_ETRS89G:{towgs84:"0,0,0"},IGNF_RGR92GDD:{towgs84:"0,0,0"},EPSG_4173:{towgs84:"0,0,0"},EPSG_4180:{towgs84:"0,0,0"},EPSG_4619:{towgs84:"0,0,0"},EPSG_4667:{towgs84:"0,0,0"},EPSG_4075:{towgs84:"0,0,0"},EPSG_6706:{towgs84:"0,0,0"},EPSG_7798:{towgs84:"0,0,0"},EPSG_4661:{towgs84:"0,0,0"},EPSG_4669:{towgs84:"0,0,0"},EPSG_8685:{towgs84:"0,0,0"},EPSG_4151:{towgs84:"0,0,0"},EPSG_9702:{towgs84:"0,0,0"},EPSG_4758:{towgs84:"0,0,0"},EPSG_4761:{towgs84:"0,0,0"},EPSG_4765:{towgs84:"0,0,0"},EPSG_8997:{towgs84:"0,0,0"},EPSG_4023:{towgs84:"0,0,0"},EPSG_4670:{towgs84:"0,0,0"},EPSG_4694:{towgs84:"0,0,0"},EPSG_4148:{towgs84:"0,0,0"},EPSG_4163:{towgs84:"0,0,0"},EPSG_4167:{towgs84:"0,0,0"},EPSG_4189:{towgs84:"0,0,0"},EPSG_4190:{towgs84:"0,0,0"},EPSG_4176:{towgs84:"0,0,0"},EPSG_4659:{towgs84:"0,0,0"},EPSG_3824:{towgs84:"0,0,0"},EPSG_3889:{towgs84:"0,0,0"},EPSG_4046:{towgs84:"0,0,0"},EPSG_4081:{towgs84:"0,0,0"},EPSG_4558:{towgs84:"0,0,0"},EPSG_4483:{towgs84:"0,0,0"},EPSG_5013:{towgs84:"0,0,0"},EPSG_5264:{towgs84:"0,0,0"},EPSG_5324:{towgs84:"0,0,0"},EPSG_5354:{towgs84:"0,0,0"},EPSG_5371:{towgs84:"0,0,0"},EPSG_5373:{towgs84:"0,0,0"},EPSG_5381:{towgs84:"0,0,0"},EPSG_5393:{towgs84:"0,0,0"},EPSG_5489:{towgs84:"0,0,0"},EPSG_5593:{towgs84:"0,0,0"},EPSG_6135:{towgs84:"0,0,0"},EPSG_6365:{towgs84:"0,0,0"},EPSG_5246:{towgs84:"0,0,0"},EPSG_7886:{towgs84:"0,0,0"},EPSG_8431:{towgs84:"0,0,0"},EPSG_8427:{towgs84:"0,0,0"},EPSG_8699:{towgs84:"0,0,0"},EPSG_8818:{towgs84:"0,0,0"},EPSG_4757:{towgs84:"0,0,0"},EPSG_9140:{towgs84:"0,0,0"},EPSG_8086:{towgs84:"0,0,0"},EPSG_4686:{towgs84:"0,0,0"},EPSG_4737:{towgs84:"0,0,0"},EPSG_4702:{towgs84:"0,0,0"},EPSG_4747:{towgs84:"0,0,0"},EPSG_4749:{towgs84:"0,0,0"},EPSG_4674:{towgs84:"0,0,0"},EPSG_4755:{towgs84:"0,0,0"},EPSG_4759:{towgs84:"0,0,0"},EPSG_4762:{towgs84:"0,0,0"},EPSG_4763:{towgs84:"0,0,0"},EPSG_4764:{towgs84:"0,0,0"},EPSG_4166:{towgs84:"0,0,0"},EPSG_4170:{towgs84:"0,0,0"},EPSG_5546:{towgs84:"0,0,0"},EPSG_7844:{towgs84:"0,0,0"},EPSG_4818:{towgs84:"589,76,480"}};for(var cu in ma){var Rr=ma[cu];Rr.datumName&&(ma[Rr.datumName]=Rr)}function du(t,n,r,u,d,f,p){var g={};return t===void 0||t==="none"?g.datum_type=Br:g.datum_type=bl,n&&(g.datum_params=n.map(parseFloat),(g.datum_params[0]!==0||g.datum_params[1]!==0||g.datum_params[2]!==0)&&(g.datum_type=Ji),g.datum_params.length>3&&(g.datum_params[3]!==0||g.datum_params[4]!==0||g.datum_params[5]!==0||g.datum_params[6]!==0)&&(g.datum_type=Qi,g.datum_params[3]*=hs,g.datum_params[4]*=hs,g.datum_params[5]*=hs,g.datum_params[6]=g.datum_params[6]/1e6+1)),p&&(g.datum_type=Mn,g.grids=p),g.a=r,g.b=u,g.es=d,g.ep2=f,g}var Fr={};function fu(t,n,r){return n instanceof ArrayBuffer?pu(t,n,r):{ready:_u(t,n)}}function pu(t,n,r){var u=!0;r!==void 0&&r.includeErrorFields===!1&&(u=!1);var d=new DataView(n),f=yu(d),p=Au(d,f),g=vu(d,p,f,u),M={header:p,subgrids:g};return Fr[t]=M,M}async function _u(t,n){for(var r=[],u=await n.getImageCount(),d=u-1;d>=0;d--){var f=await n.getImage(d),p=await f.readRasters(),g=p,M=[f.getWidth(),f.getHeight()],B=f.getBoundingBox().map(Ch),E=[f.fileDirectory.ModelPixelScale[0],f.fileDirectory.ModelPixelScale[1]].map(Ch),x=B[0]+(M[0]-1)*E[0],C=B[3]-(M[1]-1)*E[1],T=g[0],G=g[1],j=[];for(let rt=M[1]-1;rt>=0;rt--)for(let ct=M[0]-1;ct>=0;ct--){var W=rt*M[0]+ct;j.push([-Oi(G[W]),Oi(T[W])])}r.push({del:E,lim:M,ll:[-x,C],cvs:j})}var at={header:{nSubgrids:u},subgrids:r};return Fr[t]=at,at}function mu(t){if(t===void 0)return null;var n=t.split(",");return n.map(gu)}function gu(t){if(t.length===0)return null;var n=t[0]==="@";return n&&(t=t.slice(1)),t==="null"?{name:"null",mandatory:!n,grid:null,isNull:!0}:{name:t,mandatory:!n,grid:Fr[t]||null,isNull:!1}}function Ch(t){return t*Math.PI/180}function Oi(t){return t/3600*Math.PI/180}function yu(t){var n=t.getInt32(8,!1);return n===11?!1:(n=t.getInt32(8,!0),n!==11&&console.warn("Failed to detect nadgrid endian-ness, defaulting to little-endian"),!0)}function Au(t,n){return{nFields:t.getInt32(8,n),nSubgridFields:t.getInt32(24,n),nSubgrids:t.getInt32(40,n),shiftType:Gr(t,56,64).trim(),fromSemiMajorAxis:t.getFloat64(120,n),fromSemiMinorAxis:t.getFloat64(136,n),toSemiMajorAxis:t.getFloat64(152,n),toSemiMinorAxis:t.getFloat64(168,n)}}function Gr(t,n,r){return String.fromCharCode.apply(null,new Uint8Array(t.buffer.slice(n,r)))}function vu(t,n,r,u){for(var d=176,f=[],p=0;p<n.nSubgrids;p++){var g=xu(t,d,r),M=Lu(t,d,g,r,u),B=Math.round(1+(g.upperLongitude-g.lowerLongitude)/g.longitudeInterval),E=Math.round(1+(g.upperLatitude-g.lowerLatitude)/g.latitudeInterval);f.push({ll:[Oi(g.lowerLongitude),Oi(g.lowerLatitude)],del:[Oi(g.longitudeInterval),Oi(g.latitudeInterval)],lim:[B,E],count:g.gridNodeCount,cvs:Mu(M)});var x=16;u===!1&&(x=8),d+=176+g.gridNodeCount*x}return f}function Mu(t){return t.map(function(n){return[Oi(n.longitudeShift),Oi(n.latitudeShift)]})}function xu(t,n,r){return{name:Gr(t,n+8,n+16).trim(),parent:Gr(t,n+24,n+24+8).trim(),lowerLatitude:t.getFloat64(n+72,r),upperLatitude:t.getFloat64(n+88,r),lowerLongitude:t.getFloat64(n+104,r),upperLongitude:t.getFloat64(n+120,r),latitudeInterval:t.getFloat64(n+136,r),longitudeInterval:t.getFloat64(n+152,r),gridNodeCount:t.getInt32(n+168,r)}}function Lu(t,n,r,u,d){var f=n+176,p=16;d===!1&&(p=8);for(var g=[],M=0;M<r.gridNodeCount;M++){var B={latitudeShift:t.getFloat32(f+M*p,u),longitudeShift:t.getFloat32(f+M*p+4,u)};d!==!1&&(B.latitudeAccuracy=t.getFloat32(f+M*p+8,u),B.longitudeAccuracy=t.getFloat32(f+M*p+12,u)),g.push(B)}return g}function ni(t,n){if(!(this instanceof ni))return new ni(t);this.forward=null,this.inverse=null,this.init=null,this.name,this.names=null,this.title,n=n||function(B){if(B)throw B};var r=Xl(t);if(typeof r!="object"){n("Could not parse to valid json: "+t);return}var u=ni.projections.get(r.projName);if(!u){n("Could not get projection name from: "+t);return}if(r.datumCode&&r.datumCode!=="none"){var d=Di(ma,r.datumCode);d&&(r.datum_params=r.datum_params||(d.towgs84?d.towgs84.split(","):null),r.ellps=d.ellipse,r.datumName=d.datumName?d.datumName:r.datumCode)}r.k0=r.k0||1,r.axis=r.axis||"enu",r.ellps=r.ellps||"wgs84",r.lat1=r.lat1||r.lat0;var f=uu(r.a,r.b,r.rf,r.ellps,r.sphere),p=lu(f.a,f.b,f.rf,r.R_A),g=mu(r.nadgrids),M=r.datum||du(r.datumCode,r.datum_params,f.a,f.b,p.es,p.ep2,g);Mh(this,r),Mh(this,u),this.a=f.a,this.b=f.b,this.rf=f.rf,this.sphere=f.sphere,this.es=p.es,this.e=p.e,this.ep2=p.ep2,this.datum=M,"init"in this&&typeof this.init=="function"&&this.init(),n(null,this)}ni.projections=ou,ni.projections.start();function bu(t,n){return t.datum_type!==n.datum_type||t.a!==n.a||Math.abs(t.es-n.es)>5e-11?!1:t.datum_type===Ji?t.datum_params[0]===n.datum_params[0]&&t.datum_params[1]===n.datum_params[1]&&t.datum_params[2]===n.datum_params[2]:t.datum_type===Qi?t.datum_params[0]===n.datum_params[0]&&t.datum_params[1]===n.datum_params[1]&&t.datum_params[2]===n.datum_params[2]&&t.datum_params[3]===n.datum_params[3]&&t.datum_params[4]===n.datum_params[4]&&t.datum_params[5]===n.datum_params[5]&&t.datum_params[6]===n.datum_params[6]:!0}function Eh(t,n,r){var u=t.x,d=t.y,f=t.z?t.z:0,p,g,M,B;if(d<-ut&&d>-1.001*ut)d=-ut;else if(d>ut&&d<1.001*ut)d=ut;else{if(d<-ut)return{x:-1/0,y:-1/0,z:t.z};if(d>ut)return{x:1/0,y:1/0,z:t.z}}return u>Math.PI&&(u-=2*Math.PI),g=Math.sin(d),B=Math.cos(d),M=g*g,p=r/Math.sqrt(1-n*M),{x:(p+f)*B*Math.cos(u),y:(p+f)*B*Math.sin(u),z:(p*(1-n)+f)*g}}function Ph(t,n,r,u){var d=1e-12,f=d*d,p=30,g,M,B,E,x,C,T,G,j,W,at,rt,ct,yt=t.x,mt=t.y,xt=t.z?t.z:0,Dt,It,zt;if(g=Math.sqrt(yt*yt+mt*mt),M=Math.sqrt(yt*yt+mt*mt+xt*xt),g/r<d){if(Dt=0,M/r<d)return It=ut,zt=-u,{x:t.x,y:t.y,z:t.z}}else Dt=Math.atan2(mt,yt);B=xt/M,E=g/M,x=1/Math.sqrt(1-n*(2-n)*E*E),G=E*(1-n)*x,j=B*x,ct=0;do ct++,T=r/Math.sqrt(1-n*j*j),zt=g*G+xt*j-T*(1-n*j*j),C=n*T/(T+zt),x=1/Math.sqrt(1-C*(2-C)*E*E),W=E*(1-C)*x,at=B*x,rt=at*G-W*j,G=W,j=at;while(rt*rt>f&&ct<p);return It=Math.atan(at/Math.abs(W)),{x:Dt,y:It,z:zt}}function wu(t,n,r){if(n===Ji)return{x:t.x+r[0],y:t.y+r[1],z:t.z+r[2]};if(n===Qi){var u=r[0],d=r[1],f=r[2],p=r[3],g=r[4],M=r[5],B=r[6];return{x:B*(t.x-M*t.y+g*t.z)+u,y:B*(M*t.x+t.y-p*t.z)+d,z:B*(-g*t.x+p*t.y+t.z)+f}}}function Cu(t,n,r){if(n===Ji)return{x:t.x-r[0],y:t.y-r[1],z:t.z-r[2]};if(n===Qi){var u=r[0],d=r[1],f=r[2],p=r[3],g=r[4],M=r[5],B=r[6],E=(t.x-u)/B,x=(t.y-d)/B,C=(t.z-f)/B;return{x:E+M*x-g*C,y:-M*E+x+p*C,z:g*E-p*x+C}}}function ga(t){return t===Ji||t===Qi}function Eu(t,n,r){if(bu(t,n)||t.datum_type===Br||n.datum_type===Br)return r;var u=t.a,d=t.es;if(t.datum_type===Mn){var f=kh(t,!1,r);if(f!==0)return;u=hh,d=lh}var p=n.a,g=n.b,M=n.es;if(n.datum_type===Mn&&(p=hh,g=wl,M=lh),d===M&&u===p&&!ga(t.datum_type)&&!ga(n.datum_type))return r;if(r=Eh(r,d,u),ga(t.datum_type)&&(r=wu(r,t.datum_type,t.datum_params)),ga(n.datum_type)&&(r=Cu(r,n.datum_type,n.datum_params)),r=Ph(r,M,p,g),n.datum_type===Mn){var B=kh(n,!0,r);if(B!==0)return}return r}function kh(t,n,r){if(t.grids===null||t.grids.length===0)return console.log("Grid shift grids not found"),-1;var u={x:-r.x,y:r.y},d={x:Number.NaN,y:Number.NaN},f=[];t:for(var p=0;p<t.grids.length;p++){var g=t.grids[p];if(f.push(g.name),g.isNull){d=u;break}if(g.grid===null){if(g.mandatory)return console.log("Unable to find mandatory grid '"+g.name+"'"),-1;continue}for(var M=g.grid.subgrids,B=0,E=M.length;B<E;B++){var x=M[B],C=(Math.abs(x.del[1])+Math.abs(x.del[0]))/1e4,T=x.ll[0]-C,G=x.ll[1]-C,j=x.ll[0]+(x.lim[0]-1)*x.del[0]+C,W=x.ll[1]+(x.lim[1]-1)*x.del[1]+C;if(!(G>u.y||T>u.x||W<u.y||j<u.x)&&(d=Pu(u,n,x),!isNaN(d.x)))break t}}return isNaN(d.x)?(console.log("Failed to find a grid shift table for location '"+-u.x*ui+" "+u.y*ui+" tried: '"+f+"'"),-1):(r.x=-d.x,r.y=d.y,0)}function Pu(t,n,r){var u={x:Number.NaN,y:Number.NaN};if(isNaN(t.x))return u;var d={x:t.x,y:t.y};d.x-=r.ll[0],d.y-=r.ll[1],d.x=_t(d.x-Math.PI)+Math.PI;var f=Sh(d,r);if(n){if(isNaN(f.x))return u;f.x=d.x-f.x,f.y=d.y-f.y;var p=9,g=1e-12,M,B;do{if(B=Sh(f,r),isNaN(B.x)){console.log("Inverse grid shift iteration failed, presumably at grid edge. Using first approximation.");break}M={x:d.x-(B.x+f.x),y:d.y-(B.y+f.y)},f.x+=M.x,f.y+=M.y}while(p--&&Math.abs(M.x)>g&&Math.abs(M.y)>g);if(p<0)return console.log("Inverse grid shift iterator failed to converge."),u;u.x=_t(f.x+r.ll[0]),u.y=f.y+r.ll[1]}else isNaN(f.x)||(u.x=t.x+f.x,u.y=t.y+f.y);return u}function Sh(t,n){var r={x:t.x/n.del[0],y:t.y/n.del[1]},u={x:Math.floor(r.x),y:Math.floor(r.y)},d={x:r.x-1*u.x,y:r.y-1*u.y},f={x:Number.NaN,y:Number.NaN},p;if(u.x<0||u.x>=n.lim[0]||u.y<0||u.y>=n.lim[1])return f;p=u.y*n.lim[0]+u.x;var g={x:n.cvs[p][0],y:n.cvs[p][1]};p++;var M={x:n.cvs[p][0],y:n.cvs[p][1]};p+=n.lim[0];var B={x:n.cvs[p][0],y:n.cvs[p][1]};p--;var E={x:n.cvs[p][0],y:n.cvs[p][1]},x=d.x*d.y,C=d.x*(1-d.y),T=(1-d.x)*(1-d.y),G=(1-d.x)*d.y;return f.x=T*g.x+C*M.x+G*E.x+x*B.x,f.y=T*g.y+C*M.y+G*E.y+x*B.y,f}function Bh(t,n,r){var u=r.x,d=r.y,f=r.z||0,p,g,M,B={};for(M=0;M<3;M++)if(!(n&&M===2&&r.z===void 0))switch(M===0?(p=u,"ew".indexOf(t.axis[M])!==-1?g="x":g="y"):M===1?(p=d,"ns".indexOf(t.axis[M])!==-1?g="y":g="x"):(p=f,g="z"),t.axis[M]){case"e":B[g]=p;break;case"w":B[g]=-p;break;case"n":B[g]=p;break;case"s":B[g]=-p;break;case"u":r[g]!==void 0&&(B.z=p);break;case"d":r[g]!==void 0&&(B.z=-p);break;default:return null}return B}function Th(t){var n={x:t[0],y:t[1]};return t.length>2&&(n.z=t[2]),t.length>3&&(n.m=t[3]),n}function ku(t){Dh(t.x),Dh(t.y)}function Dh(t){if(typeof Number.isFinite=="function"){if(Number.isFinite(t))return;throw new TypeError("coordinates must be finite numbers")}if(typeof t!="number"||t!==t||!isFinite(t))throw new TypeError("coordinates must be finite numbers")}function Su(t,n){return(t.datum.datum_type===Ji||t.datum.datum_type===Qi||t.datum.datum_type===Mn)&&n.datumCode!=="WGS84"||(n.datum.datum_type===Ji||n.datum.datum_type===Qi||n.datum.datum_type===Mn)&&t.datumCode!=="WGS84"}function ya(t,n,r,u){var d;Array.isArray(r)?r=Th(r):r={x:r.x,y:r.y,z:r.z,m:r.m};var f=r.z!==void 0;if(ku(r),t.datum&&n.datum&&Su(t,n)&&(d=new ni("WGS84"),r=ya(t,d,r,u),t=d),u&&t.axis!=="enu"&&(r=Bh(t,!1,r)),t.projName==="longlat")r={x:r.x*ye,y:r.y*ye,z:r.z||0};else if(t.to_meter&&(r={x:r.x*t.to_meter,y:r.y*t.to_meter,z:r.z||0}),r=t.inverse(r),!r)return;if(t.from_greenwich&&(r.x+=t.from_greenwich),r=Eu(t.datum,n.datum,r),!!r)return r=r,n.from_greenwich&&(r={x:r.x-n.from_greenwich,y:r.y,z:r.z||0}),n.projName==="longlat"?r={x:r.x*ui,y:r.y*ui,z:r.z||0}:(r=n.forward(r),n.to_meter&&(r={x:r.x/n.to_meter,y:r.y/n.to_meter,z:r.z||0})),u&&n.axis!=="enu"?Bh(n,!0,r):(r&&!f&&delete r.z,r)}var Oh=ni("WGS84");function zr(t,n,r,u){var d,f,p;return Array.isArray(r)?(d=ya(t,n,r,u)||{x:NaN,y:NaN},r.length>2?typeof t.name<"u"&&t.name==="geocent"||typeof n.name<"u"&&n.name==="geocent"?typeof d.z=="number"?[d.x,d.y,d.z].concat(r.slice(3)):[d.x,d.y,r[2]].concat(r.slice(3)):[d.x,d.y].concat(r.slice(2)):[d.x,d.y]):(f=ya(t,n,r,u),p=Object.keys(r),p.length===2||p.forEach(function(g){if(typeof t.name<"u"&&t.name==="geocent"||typeof n.name<"u"&&n.name==="geocent"){if(g==="x"||g==="y"||g==="z")return}else if(g==="x"||g==="y")return;f[g]=r[g]}),f)}function Aa(t){return t instanceof ni?t:typeof t=="object"&&"oProj"in t?t.oProj:ni(t)}function Bu(t,n,r){var u,d,f=!1,p;return typeof n>"u"?(d=Aa(t),u=Oh,f=!0):(typeof n.x<"u"||Array.isArray(n))&&(r=n,d=Aa(t),u=Oh,f=!0),u||(u=Aa(t)),d||(d=Aa(n)),r?zr(u,d,r):(p={forward:function(g,M){return zr(u,d,g,M)},inverse:function(g,M){return zr(d,u,g,M)}},f&&(p.oProj=d),p)}var Ih=6,Rh="AJSAJS",Fh="AFAFAF",bn=65,Ge=73,Ve=79,fs=86,ps=90;const Tu={forward:Gh,inverse:Du,toPoint:zh};function Gh(t,n){return n=n||5,Ru(Ou({lat:t[1],lon:t[0]}),n)}function Du(t){var n=Ur(jh(t.toUpperCase()));return n.lat&&n.lon?[n.lon,n.lat,n.lon,n.lat]:[n.left,n.bottom,n.right,n.top]}function zh(t){var n=Ur(jh(t.toUpperCase()));return n.lat&&n.lon?[n.lon,n.lat]:[(n.left+n.right)/2,(n.top+n.bottom)/2]}function Nr(t){return t*(Math.PI/180)}function Nh(t){return 180*(t/Math.PI)}function Ou(t){var n=t.lat,r=t.lon,u=6378137,d=.00669438,f=.9996,p,g,M,B,E,x,C,T=Nr(n),G=Nr(r),j,W;W=Math.floor((r+180)/6)+1,r===180&&(W=60),n>=56&&n<64&&r>=3&&r<12&&(W=32),n>=72&&n<84&&(r>=0&&r<9?W=31:r>=9&&r<21?W=33:r>=21&&r<33?W=35:r>=33&&r<42&&(W=37)),p=(W-1)*6-180+3,j=Nr(p),g=d/(1-d),M=u/Math.sqrt(1-d*Math.sin(T)*Math.sin(T)),B=Math.tan(T)*Math.tan(T),E=g*Math.cos(T)*Math.cos(T),x=Math.cos(T)*(G-j),C=u*((1-d/4-3*d*d/64-5*d*d*d/256)*T-(3*d/8+3*d*d/32+45*d*d*d/1024)*Math.sin(2*T)+(15*d*d/256+45*d*d*d/1024)*Math.sin(4*T)-35*d*d*d/3072*Math.sin(6*T));var at=f*M*(x+(1-B+E)*x*x*x/6+(5-18*B+B*B+72*E-58*g)*x*x*x*x*x/120)+5e5,rt=f*(C+M*Math.tan(T)*(x*x/2+(5-B+9*E+4*E*E)*x*x*x*x/24+(61-58*B+B*B+600*E-330*g)*x*x*x*x*x*x/720));return n<0&&(rt+=1e7),{northing:Math.round(rt),easting:Math.round(at),zoneNumber:W,zoneLetter:Iu(n)}}function Ur(t){var n=t.northing,r=t.easting,u=t.zoneLetter,d=t.zoneNumber;if(d<0||d>60)return null;var f=.9996,p=6378137,g=.00669438,M,B=(1-Math.sqrt(1-g))/(1+Math.sqrt(1-g)),E,x,C,T,G,j,W,at,rt,ct=r-5e5,yt=n;u<"N"&&(yt-=1e7),W=(d-1)*6-180+3,M=g/(1-g),j=yt/f,at=j/(p*(1-g/4-3*g*g/64-5*g*g*g/256)),rt=at+(3*B/2-27*B*B*B/32)*Math.sin(2*at)+(21*B*B/16-55*B*B*B*B/32)*Math.sin(4*at)+151*B*B*B/96*Math.sin(6*at),E=p/Math.sqrt(1-g*Math.sin(rt)*Math.sin(rt)),x=Math.tan(rt)*Math.tan(rt),C=M*Math.cos(rt)*Math.cos(rt),T=p*(1-g)/Math.pow(1-g*Math.sin(rt)*Math.sin(rt),1.5),G=ct/(E*f);var mt=rt-E*Math.tan(rt)/T*(G*G/2-(5+3*x+10*C-4*C*C-9*M)*G*G*G*G/24+(61+90*x+298*C+45*x*x-252*M-3*C*C)*G*G*G*G*G*G/720);mt=Nh(mt);var xt=(G-(1+2*x+C)*G*G*G/6+(5-2*C+28*x-3*C*C+8*M+24*x*x)*G*G*G*G*G/120)/Math.cos(rt);xt=W+Nh(xt);var Dt;if(t.accuracy){var It=Ur({northing:t.northing+t.accuracy,easting:t.easting+t.accuracy,zoneLetter:t.zoneLetter,zoneNumber:t.zoneNumber});Dt={top:It.lat,right:It.lon,bottom:mt,left:xt}}else Dt={lat:mt,lon:xt};return Dt}function Iu(t){var n="Z";return 84>=t&&t>=72?n="X":72>t&&t>=64?n="W":64>t&&t>=56?n="V":56>t&&t>=48?n="U":48>t&&t>=40?n="T":40>t&&t>=32?n="S":32>t&&t>=24?n="R":24>t&&t>=16?n="Q":16>t&&t>=8?n="P":8>t&&t>=0?n="N":0>t&&t>=-8?n="M":-8>t&&t>=-16?n="L":-16>t&&t>=-24?n="K":-24>t&&t>=-32?n="J":-32>t&&t>=-40?n="H":-40>t&&t>=-48?n="G":-48>t&&t>=-56?n="F":-56>t&&t>=-64?n="E":-64>t&&t>=-72?n="D":-72>t&&t>=-80&&(n="C"),n}function Ru(t,n){var r="00000"+t.easting,u="00000"+t.northing;return t.zoneNumber+t.zoneLetter+Fu(t.easting,t.northing,t.zoneNumber)+r.substr(r.length-5,n)+u.substr(u.length-5,n)}function Fu(t,n,r){var u=Uh(r),d=Math.floor(t/1e5),f=Math.floor(n/1e5)%20;return Gu(d,f,u)}function Uh(t){var n=t%Ih;return n===0&&(n=Ih),n}function Gu(t,n,r){var u=r-1,d=Rh.charCodeAt(u),f=Fh.charCodeAt(u),p=d+t-1,g=f+n,M=!1;p>ps&&(p=p-ps+bn-1,M=!0),(p===Ge||d<Ge&&p>Ge||(p>Ge||d<Ge)&&M)&&p++,(p===Ve||d<Ve&&p>Ve||(p>Ve||d<Ve)&&M)&&(p++,p===Ge&&p++),p>ps&&(p=p-ps+bn-1),g>fs?(g=g-fs+bn-1,M=!0):M=!1,(g===Ge||f<Ge&&g>Ge||(g>Ge||f<Ge)&&M)&&g++,(g===Ve||f<Ve&&g>Ve||(g>Ve||f<Ve)&&M)&&(g++,g===Ge&&g++),g>fs&&(g=g-fs+bn-1);var B=String.fromCharCode(p)+String.fromCharCode(g);return B}function jh(t){if(t&&t.length===0)throw"MGRSPoint coverting from nothing";for(var n=t.length,r=null,u="",d,f=0;!/[A-Z]/.test(d=t.charAt(f));){if(f>=2)throw"MGRSPoint bad conversion from: "+t;u+=d,f++}var p=parseInt(u,10);if(f===0||f+3>n)throw"MGRSPoint bad conversion from: "+t;var g=t.charAt(f++);if(g<="A"||g==="B"||g==="Y"||g>="Z"||g==="I"||g==="O")throw"MGRSPoint zone letter "+g+" not handled: "+t;r=t.substring(f,f+=2);for(var M=Uh(p),B=zu(r.charAt(0),M),E=Nu(r.charAt(1),M);E<Uu(g);)E+=2e6;var x=n-f;if(x%2!==0)throw`MGRSPoint has to have an even number
|
|
6
|
+
(约:`+Number(T*.0015).toFixed(3)+"亩)",G},updateMeasurements(){if(!this._measurementLayer)return this;const t=this.getLatLngs();new Array().push(t);let a=this.getLatLngs();const l=this instanceof U.Polygon,c=this._measurementOptions;let f,p,g,A,k;if(a&&a.length&&U.Util.isArray(a[0])&&(a=a[0]),this._measurementLayer.clearLayers(),this._measurementOptions.showDistances&&a.length>1){t.length-1;for(let C=1,x=a.length;l&&C<=x||C<x;C++)if(f=a[C-1],p=a[C%x],f.distanceTo(p),g=this._map.latLngToLayerPoint(f),A=this._map.latLngToLayerPoint(p),k=g.distanceTo(A),k>=c.minPixelDistance){const b=this.tempMoveFormatDistance(f,p);new ls(this._map.layerPointToLatLng([(g.x+A.x)/2,(g.y+A.y)/2]),b,c.lang.segmentLength,this._getRotation(f,p),c).addTo(this._measurementLayer)}!l&&this._measurementOptions.showAggregate&&(new ls(p,this.tempFormatDistance(t),c.lang.totalLength,0,c).addTo(this._measurementLayer),this.MEASUREDDATA=this.tempFormatDistance(t))}return l&&c.showArea&&a.length>2&&(new ls(this.getBounds().getCenter(),this.tempFormatArea(t[0]),c.lang.totalArea,0,c).addTo(this._measurementLayer),this.MEASUREDDATA=this.tempFormatArea(t[0])),this},_getRotation(t,n){const a=this._map.project(t),l=this._map.project(n);return Math.atan((l.y-a.y)/(l.x-a.x))}}),U.LatLng.prototype.toArray=function(){return[this.lat,this.lng]},U.Path.include({startTwinkle(t,n,a={}){this.twinkle(t,n,a)},endTwinkle(){clearTimeout(this.twinkleTimer)},twinkle(t=200,n=1/0,a){let l=!1,c=0;const f=this.options,p=()=>{c++,n&&t&&c>Math.floor(n/t)?(this.setStyle({...f,fill:!0,stroke:!0}),this.twinkleTimer=void 0):(l?(this.setStyle({...a,fill:!1,stroke:!1}),l=!1):(this.setStyle({...a,fill:!0,stroke:!0}),l=!0),this.twinkleTimer=setTimeout(p,t))};p()},getArea(t){if(this instanceof U.Polyline){var n,a=this._latlngs[0],l=(t||this._map).options.crs,c=a.length;let f=0,p,g;if(a!=null)for(let A=0;A<c;A++)n=(A+1)%c,p=180<a[A].lng&&90<a[A].lat?{x:a[A].lat,y:a[A].lng}:l.project(a[A]),g=180<a[n].lng&&90<a[n].lat?{x:a[n].lat,y:a[n].lng}:l.project(a[n]),f=(f+=p.x*g.y)-p.y*g.x;return Math.abs(f/2)}else return this instanceof U.Circle?2*Math.PI*this.getRadius():null},getLength(t){if(this instanceof U.Polyline){for(var n=[],a=(t||this._map).options.crs,l=this._latlngs,c=0;c<l.length;c++)this instanceof U.Polygon?n.push(...l[c]):this instanceof U.Polyline&&n.push(l[c]);let k=0,C,x;for(let b=0,T=n.length-1;b<T;b++){C=180<n[b][0]&&90<n[b][1]?{x:n[b].lat,y:n[b].lng}:a.project(n[b]),x=180<n[b+1][0]&&90<n[b+1][1]?{x:n[b+1].lat,y:n[b+1].lng}:a.project(n[b+1]);var f=C.x,p=C.y,g=x.x,A=x.y;k+=Math.sqrt((f-g)*(f-g)+(p-A)*(p-A))}return k}else return this instanceof U.Circle?Math.PI*Math.pow(this.getRadius(),2):null}}),U.Control.mergeOptions({offset:[0,0]}),U.Control.addInitHook(function(){const{className:t,offset:[n,a]}=this.options;(n||a)&&setTimeout(()=>{const l=this.getContainer();l&&(l.style.transform=`translate(${n}px, ${a}px)`,t&&l.classList.add(t))},200)}),U.Canvas.include({_fillStroke:function(t,n){var a=n.options;if(a.fill&&(t.globalAlpha=a.fillOpacity,t.fillStyle=a.fillColor||a.color,t.fill(a.fillRule||"evenodd")),a.stroke&&a.weight!==0&&(t.setLineDash&&t.setLineDash(n.options&&n.options._dashArray||[]),t.globalAlpha=a.opacity,t.lineWidth=a.weight,t.strokeStyle=a.color,t.lineCap=a.lineCap,t.lineJoin=a.lineJoin,t.stroke(),a.img)){const l=new Image;l.src=a.img,l.onload=function(){t.save(),t.clip();var c=n instanceof U.Circle?n._pxBounds:n._rawPxBounds,f=c.getSize(),p=t.createPattern(l,"repeat");t.fillStyle=p,t.fillRect(c.min.x,c.min.y,f.x,f.y),t.restore()}}}}),U.SVG.include({_updateStyle:function(t){var n=t._path,a=t.options;n&&(a.stroke?(n.setAttribute("stroke",a.color),n.setAttribute("stroke-opacity",a.opacity),n.setAttribute("stroke-width",a.weight),n.setAttribute("stroke-linecap",a.lineCap),n.setAttribute("stroke-linejoin",a.lineJoin),a.dashArray?n.setAttribute("stroke-dasharray",a.dashArray):n.removeAttribute("stroke-dasharray"),a.dashOffset?n.setAttribute("stroke-dashoffset",a.dashOffset):n.removeAttribute("stroke-dashoffset")):n.setAttribute("stroke","none"),a.img?(typeof a.img=="string"&&a.img.match(/^url\(/)?this.__fillPattern(t):n.setAttribute("fill",a.fillColor||a.color),n.setAttribute("fill-opacity",a.fillOpacity),n.setAttribute("fill-rule",a.fillRule||"evenodd")):(n.setAttribute("fill",a.fillColor),n.setAttribute("fill-opacity",t instanceof U.Polygon||t instanceof L.Circle||t instanceof L.CircleMarker?a.fillOpacity:0)))},__fillPattern:function(t){var n=t._path,a=t.options;this._defs||(this._defs=L.SVG.create("defs"),this._container.appendChild(this._defs));var l=a.img.substring(4,a.img.length-1),c=l+(Math.random()*Math.pow(10,17)+Math.random()*Math.pow(10,17));c+=new Date().getUTCMilliseconds();var f=document.getElementById(c);if(!f){var p=new Image;p.src=l,f=L.SVG.create("pattern"),f.setAttribute("id",c),f.setAttribute("x","0"),f.setAttribute("y","0"),f.setAttribute("patternUnits","userSpaceOnUse"),f.setAttribute("width","24"),f.setAttribute("height","24");var g=L.SVG.create("rect");g.setAttribute("width",24),g.setAttribute("height",24),g.setAttribute("x",0),g.setAttribute("x",0),g.setAttribute("fill",a.fillColor||a.color),f.appendChild(g),this._defs.appendChild(f);var A=L.SVG.create("image");A.setAttribute("x","0"),A.setAttribute("y","0"),A.setAttributeNS("http://www.w3.org/1999/xlink","href",l),A.setAttribute("width","24"),A.setAttribute("height","24"),f.appendChild(A),p.onload=function(){f.setAttribute("width",p.width),f.setAttribute("height",p.height),A.setAttribute("width",p.width),A.setAttribute("height",p.height)}}n.setAttribute("fill","url(#"+c+")")}});var Rl={exports:{}};function Gl(t){t("EPSG:4326","+title=WGS 84 (long/lat) +proj=longlat +ellps=WGS84 +datum=WGS84 +units=degrees"),t("EPSG:4269","+title=NAD83 (long/lat) +proj=longlat +a=6378137.0 +b=6356752.31414036 +ellps=GRS80 +datum=NAD83 +units=degrees"),t("EPSG:3857","+title=WGS 84 / Pseudo-Mercator +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +no_defs");for(var n=1;n<=60;++n)t("EPSG:"+(32600+n),"+proj=utm +zone="+n+" +datum=WGS84 +units=m"),t("EPSG:"+(32700+n),"+proj=utm +zone="+n+" +south +datum=WGS84 +units=m");t.WGS84=t["EPSG:4326"],t["EPSG:3785"]=t["EPSG:3857"],t.GOOGLE=t["EPSG:3857"],t["EPSG:900913"]=t["EPSG:3857"],t["EPSG:102113"]=t["EPSG:3857"]}var Ji=1,Qi=2,Mn=3,Fl=4,Fr=5,yh=6378137,zl=6356752314e-3,vh=.0066943799901413165,us=484813681109536e-20,ut=Math.PI/2,Nl=.16666666666666666,Ul=.04722222222222222,Zl=.022156084656084655,dt=1e-10,ye=.017453292519943295,ui=57.29577951308232,jt=Math.PI/4,cs=Math.PI*2,he=3.14159265359,Ge={};Ge.greenwich=0,Ge.lisbon=-9.131906111111,Ge.paris=2.337229166667,Ge.bogota=-74.080916666667,Ge.madrid=-3.687938888889,Ge.rome=12.452333333333,Ge.bern=7.439583333333,Ge.jakarta=106.807719444444,Ge.ferro=-17.666666666667,Ge.brussels=4.367975,Ge.stockholm=18.058277777778,Ge.athens=23.7163375,Ge.oslo=10.722916666667;const jl={mm:{to_meter:.001},cm:{to_meter:.01},ft:{to_meter:.3048},"us-ft":{to_meter:1200/3937},fath:{to_meter:1.8288},kmi:{to_meter:1852},"us-ch":{to_meter:20.1168402336805},"us-mi":{to_meter:1609.34721869444},km:{to_meter:1e3},"ind-ft":{to_meter:.30479841},"ind-yd":{to_meter:.91439523},mi:{to_meter:1609.344},yd:{to_meter:.9144},ch:{to_meter:20.1168},link:{to_meter:.201168},dm:{to_meter:.1},in:{to_meter:.0254},"ind-ch":{to_meter:20.11669506},"us-in":{to_meter:.025400050800101},"us-yd":{to_meter:.914401828803658}};var Ah=/[\s_\-\/\(\)]/g;function Di(t,n){if(t[n])return t[n];for(var a=Object.keys(t),l=n.toLowerCase().replace(Ah,""),c=-1,f,p;++c<a.length;)if(f=a[c],p=f.toLowerCase().replace(Ah,""),p===l)return t[f]}function zr(t){var n={},a=t.split("+").map(function(g){return g.trim()}).filter(function(g){return g}).reduce(function(g,A){var k=A.split("=");return k.push(!0),g[k[0].toLowerCase()]=k[1],g},{}),l,c,f,p={proj:"projName",datum:"datumCode",rf:function(g){n.rf=parseFloat(g)},lat_0:function(g){n.lat0=g*ye},lat_1:function(g){n.lat1=g*ye},lat_2:function(g){n.lat2=g*ye},lat_ts:function(g){n.lat_ts=g*ye},lon_0:function(g){n.long0=g*ye},lon_1:function(g){n.long1=g*ye},lon_2:function(g){n.long2=g*ye},alpha:function(g){n.alpha=parseFloat(g)*ye},gamma:function(g){n.rectified_grid_angle=parseFloat(g)*ye},lonc:function(g){n.longc=g*ye},x_0:function(g){n.x0=parseFloat(g)},y_0:function(g){n.y0=parseFloat(g)},k_0:function(g){n.k0=parseFloat(g)},k:function(g){n.k0=parseFloat(g)},a:function(g){n.a=parseFloat(g)},b:function(g){n.b=parseFloat(g)},r:function(g){n.a=n.b=parseFloat(g)},r_a:function(){n.R_A=!0},zone:function(g){n.zone=parseInt(g,10)},south:function(){n.utmSouth=!0},towgs84:function(g){n.datum_params=g.split(",").map(function(A){return parseFloat(A)})},to_meter:function(g){n.to_meter=parseFloat(g)},units:function(g){n.units=g;var A=Di(jl,g);A&&(n.to_meter=A.to_meter)},from_greenwich:function(g){n.from_greenwich=g*ye},pm:function(g){var A=Di(Ge,g);n.from_greenwich=(A||parseFloat(g))*ye},nadgrids:function(g){g==="@null"?n.datumCode="none":n.nadgrids=g},axis:function(g){var A="ewnsud";g.length===3&&A.indexOf(g.substr(0,1))!==-1&&A.indexOf(g.substr(1,1))!==-1&&A.indexOf(g.substr(2,1))!==-1&&(n.axis=g)},approx:function(){n.approx=!0}};for(l in a)c=a[l],l in p?(f=p[l],typeof f=="function"?f(c):n[f]=c):n[l]=c;return typeof n.datumCode=="string"&&n.datumCode!=="WGS84"&&(n.datumCode=n.datumCode.toLowerCase()),n}class Mh{static getId(n){const a=n.find(l=>Array.isArray(l)&&l[0]==="ID");return a&&a.length>=3?{authority:a[1],code:parseInt(a[2],10)}:null}static convertUnit(n,a="unit"){if(!n||n.length<3)return{type:a,name:"unknown",conversion_factor:null};const l=n[1],c=parseFloat(n[2])||null,f=n.find(g=>Array.isArray(g)&&g[0]==="ID"),p=f?{authority:f[1],code:parseInt(f[2],10)}:null;return{type:a,name:l,conversion_factor:c,id:p}}static convertAxis(n){const a=n[1]||"Unknown";let l;const c=a.match(/^\((.)\)$/);if(c){const k=c[1].toUpperCase();if(k==="E")l="east";else if(k==="N")l="north";else if(k==="U")l="up";else throw new Error(`Unknown axis abbreviation: ${k}`)}else l=n[2]?n[2].toLowerCase():"unknown";const f=n.find(k=>Array.isArray(k)&&k[0]==="ORDER"),p=f?parseInt(f[1],10):null,g=n.find(k=>Array.isArray(k)&&(k[0]==="LENGTHUNIT"||k[0]==="ANGLEUNIT"||k[0]==="SCALEUNIT")),A=this.convertUnit(g);return{name:a,direction:l,unit:A,order:p}}static extractAxes(n){return n.filter(a=>Array.isArray(a)&&a[0]==="AXIS").map(a=>this.convertAxis(a)).sort((a,l)=>(a.order||0)-(l.order||0))}static convert(n,a={}){switch(n[0]){case"PROJCRS":a.type="ProjectedCRS",a.name=n[1],a.base_crs=n.find(b=>Array.isArray(b)&&b[0]==="BASEGEOGCRS")?this.convert(n.find(b=>Array.isArray(b)&&b[0]==="BASEGEOGCRS")):null,a.conversion=n.find(b=>Array.isArray(b)&&b[0]==="CONVERSION")?this.convert(n.find(b=>Array.isArray(b)&&b[0]==="CONVERSION")):null;const l=n.find(b=>Array.isArray(b)&&b[0]==="CS");l&&(a.coordinate_system={type:l[1],axis:this.extractAxes(n)});const c=n.find(b=>Array.isArray(b)&&b[0]==="LENGTHUNIT");if(c){const b=this.convertUnit(c);a.coordinate_system.unit=b}a.id=this.getId(n);break;case"BASEGEOGCRS":case"GEOGCRS":a.type="GeographicCRS",a.name=n[1];const f=n.find(b=>Array.isArray(b)&&(b[0]==="DATUM"||b[0]==="ENSEMBLE"));if(f){const b=this.convert(f);f[0]==="ENSEMBLE"?a.datum_ensemble=b:a.datum=b;const T=n.find(G=>Array.isArray(G)&&G[0]==="PRIMEM");T&&T[1]!=="Greenwich"&&(b.prime_meridian={name:T[1],longitude:parseFloat(T[2])})}a.coordinate_system={type:"ellipsoidal",axis:this.extractAxes(n)},a.id=this.getId(n);break;case"DATUM":a.type="GeodeticReferenceFrame",a.name=n[1],a.ellipsoid=n.find(b=>Array.isArray(b)&&b[0]==="ELLIPSOID")?this.convert(n.find(b=>Array.isArray(b)&&b[0]==="ELLIPSOID")):null;break;case"ENSEMBLE":a.type="DatumEnsemble",a.name=n[1],a.members=n.filter(b=>Array.isArray(b)&&b[0]==="MEMBER").map(b=>({type:"DatumEnsembleMember",name:b[1],id:this.getId(b)}));const p=n.find(b=>Array.isArray(b)&&b[0]==="ENSEMBLEACCURACY");p&&(a.accuracy=parseFloat(p[1]));const g=n.find(b=>Array.isArray(b)&&b[0]==="ELLIPSOID");g&&(a.ellipsoid=this.convert(g)),a.id=this.getId(n);break;case"ELLIPSOID":a.type="Ellipsoid",a.name=n[1],a.semi_major_axis=parseFloat(n[2]),a.inverse_flattening=parseFloat(n[3]),n.find(b=>Array.isArray(b)&&b[0]==="LENGTHUNIT")&&this.convert(n.find(b=>Array.isArray(b)&&b[0]==="LENGTHUNIT"),a);break;case"CONVERSION":a.type="Conversion",a.name=n[1],a.method=n.find(b=>Array.isArray(b)&&b[0]==="METHOD")?this.convert(n.find(b=>Array.isArray(b)&&b[0]==="METHOD")):null,a.parameters=n.filter(b=>Array.isArray(b)&&b[0]==="PARAMETER").map(b=>this.convert(b));break;case"METHOD":a.type="Method",a.name=n[1],a.id=this.getId(n);break;case"PARAMETER":a.type="Parameter",a.name=n[1],a.value=parseFloat(n[2]),a.unit=this.convertUnit(n.find(b=>Array.isArray(b)&&(b[0]==="LENGTHUNIT"||b[0]==="ANGLEUNIT"||b[0]==="SCALEUNIT"))),a.id=this.getId(n);break;case"BOUNDCRS":a.type="BoundCRS";const A=n.find(b=>Array.isArray(b)&&b[0]==="SOURCECRS");if(A){const b=A.find(T=>Array.isArray(T));a.source_crs=b?this.convert(b):null}const k=n.find(b=>Array.isArray(b)&&b[0]==="TARGETCRS");if(k){const b=k.find(T=>Array.isArray(T));a.target_crs=b?this.convert(b):null}const C=n.find(b=>Array.isArray(b)&&b[0]==="ABRIDGEDTRANSFORMATION");C?a.transformation=this.convert(C):a.transformation=null;break;case"ABRIDGEDTRANSFORMATION":if(a.type="Transformation",a.name=n[1],a.method=n.find(b=>Array.isArray(b)&&b[0]==="METHOD")?this.convert(n.find(b=>Array.isArray(b)&&b[0]==="METHOD")):null,a.parameters=n.filter(b=>Array.isArray(b)&&(b[0]==="PARAMETER"||b[0]==="PARAMETERFILE")).map(b=>{if(b[0]==="PARAMETER")return this.convert(b);if(b[0]==="PARAMETERFILE")return{name:b[1],value:b[2],id:{authority:"EPSG",code:8656}}}),a.parameters.length===7){const b=a.parameters[6];b.name==="Scale difference"&&(b.value=Math.round((b.value-1)*1e12)/1e6)}a.id=this.getId(n);break;case"AXIS":a.coordinate_system||(a.coordinate_system={type:"unspecified",axis:[]}),a.coordinate_system.axis.push(this.convertAxis(n));break;case"LENGTHUNIT":const x=this.convertUnit(n,"LinearUnit");a.coordinate_system&&a.coordinate_system.axis&&a.coordinate_system.axis.forEach(b=>{b.unit||(b.unit=x)}),x.conversion_factor&&x.conversion_factor!==1&&a.semi_major_axis&&(a.semi_major_axis={value:a.semi_major_axis,unit:x});break;default:a.keyword=n[0];break}return a}}class ql extends Mh{static convert(n,a={}){return super.convert(n,a),a.coordinate_system&&a.coordinate_system.subtype==="Cartesian"&&delete a.coordinate_system,a.usage&&delete a.usage,a}}class Hl extends Mh{static convert(n,a={}){super.convert(n,a);const l=n.find(f=>Array.isArray(f)&&f[0]==="CS");l&&(a.coordinate_system={subtype:l[1],axis:this.extractAxes(n)});const c=n.find(f=>Array.isArray(f)&&f[0]==="USAGE");if(c){const f=c.find(A=>Array.isArray(A)&&A[0]==="SCOPE"),p=c.find(A=>Array.isArray(A)&&A[0]==="AREA"),g=c.find(A=>Array.isArray(A)&&A[0]==="BBOX");a.usage={},f&&(a.usage.scope=f[1]),p&&(a.usage.area=p[1]),g&&(a.usage.bbox=g.slice(1))}return a}}function Vl(t){return t.find(n=>Array.isArray(n)&&n[0]==="USAGE")?"2019":(t.find(n=>Array.isArray(n)&&n[0]==="CS")||t[0]==="BOUNDCRS"||t[0]==="PROJCRS"||t[0]==="GEOGCRS","2015")}function $l(t){return(Vl(t)==="2019"?Hl:ql).convert(t)}function Wl(t){const n=t.toUpperCase();return n.includes("PROJCRS")||n.includes("GEOGCRS")||n.includes("BOUNDCRS")||n.includes("VERTCRS")||n.includes("LENGTHUNIT")||n.includes("ANGLEUNIT")||n.includes("SCALEUNIT")?"WKT2":(n.includes("PROJCS")||n.includes("GEOGCS")||n.includes("LOCAL_CS")||n.includes("VERT_CS")||n.includes("UNIT"),"WKT1")}var ds=1,xh=2,Lh=3,ya=4,bh=5,Nr=-1,Kl=/\s/,Xl=/[A-Za-z]/,Yl=/[A-Za-z84_]/,va=/[,\]]/,wh=/[\d\.E\-\+]/;function Mi(t){if(typeof t!="string")throw new Error("not a string");this.text=t.trim(),this.level=0,this.place=0,this.root=null,this.stack=[],this.currentObject=null,this.state=ds}Mi.prototype.readCharicter=function(){var t=this.text[this.place++];if(this.state!==ya)for(;Kl.test(t);){if(this.place>=this.text.length)return;t=this.text[this.place++]}switch(this.state){case ds:return this.neutral(t);case xh:return this.keyword(t);case ya:return this.quoted(t);case bh:return this.afterquote(t);case Lh:return this.number(t);case Nr:return}},Mi.prototype.afterquote=function(t){if(t==='"'){this.word+='"',this.state=ya;return}if(va.test(t)){this.word=this.word.trim(),this.afterItem(t);return}throw new Error(`havn't handled "`+t+'" in afterquote yet, index '+this.place)},Mi.prototype.afterItem=function(t){if(t===","){this.word!==null&&this.currentObject.push(this.word),this.word=null,this.state=ds;return}if(t==="]"){this.level--,this.word!==null&&(this.currentObject.push(this.word),this.word=null),this.state=ds,this.currentObject=this.stack.pop(),this.currentObject||(this.state=Nr);return}},Mi.prototype.number=function(t){if(wh.test(t)){this.word+=t;return}if(va.test(t)){this.word=parseFloat(this.word),this.afterItem(t);return}throw new Error(`havn't handled "`+t+'" in number yet, index '+this.place)},Mi.prototype.quoted=function(t){if(t==='"'){this.state=bh;return}this.word+=t},Mi.prototype.keyword=function(t){if(Yl.test(t)){this.word+=t;return}if(t==="["){var n=[];n.push(this.word),this.level++,this.root===null?this.root=n:this.currentObject.push(n),this.stack.push(this.currentObject),this.currentObject=n,this.state=ds;return}if(va.test(t)){this.afterItem(t);return}throw new Error(`havn't handled "`+t+'" in keyword yet, index '+this.place)},Mi.prototype.neutral=function(t){if(Xl.test(t)){this.word=t,this.state=xh;return}if(t==='"'){this.word="",this.state=ya;return}if(wh.test(t)){this.word=t,this.state=Lh;return}if(va.test(t)){this.afterItem(t);return}throw new Error(`havn't handled "`+t+'" in neutral yet, index '+this.place)},Mi.prototype.output=function(){for(;this.place<this.text.length;)this.readCharicter();if(this.state===Nr)return this.root;throw new Error('unable to parse string "'+this.text+'". State is '+this.state)};function Jl(t){var n=new Mi(t);return n.output()}function Ur(t,n,a){Array.isArray(n)&&(a.unshift(n),n=null);var l=n?{}:t,c=a.reduce(function(f,p){return xn(p,f),f},l);n&&(t[n]=c)}function xn(t,n){if(!Array.isArray(t)){n[t]=!0;return}var a=t.shift();if(a==="PARAMETER"&&(a=t.shift()),t.length===1){if(Array.isArray(t[0])){n[a]={},xn(t[0],n[a]);return}n[a]=t[0];return}if(!t.length){n[a]=!0;return}if(a==="TOWGS84"){n[a]=t;return}if(a==="AXIS"){a in n||(n[a]=[]),n[a].push(t);return}Array.isArray(a)||(n[a]={});var l;switch(a){case"UNIT":case"PRIMEM":case"VERT_DATUM":n[a]={name:t[0].toLowerCase(),convert:t[1]},t.length===3&&xn(t[2],n[a]);return;case"SPHEROID":case"ELLIPSOID":n[a]={name:t[0],a:t[1],rf:t[2]},t.length===4&&xn(t[3],n[a]);return;case"EDATUM":case"ENGINEERINGDATUM":case"LOCAL_DATUM":case"DATUM":case"VERT_CS":case"VERTCRS":case"VERTICALCRS":t[0]=["name",t[0]],Ur(n,a,t);return;case"COMPD_CS":case"COMPOUNDCRS":case"FITTED_CS":case"PROJECTEDCRS":case"PROJCRS":case"GEOGCS":case"GEOCCS":case"PROJCS":case"LOCAL_CS":case"GEODCRS":case"GEODETICCRS":case"GEODETICDATUM":case"ENGCRS":case"ENGINEERINGCRS":t[0]=["name",t[0]],Ur(n,a,t),n[a].type=a;return;default:for(l=-1;++l<t.length;)if(!Array.isArray(t[l]))return xn(t,n[a]);return Ur(n,a,t)}}var Ql=.017453292519943295;function ei(t){return t*Ql}function Ch(t){const n=(t.projName||"").toLowerCase().replace(/_/g," ");!t.long0&&t.longc&&(n==="albers conic equal area"||n==="lambert azimuthal equal area")&&(t.long0=t.longc),!t.lat_ts&&t.lat1&&(n==="stereographic south pole"||n==="polar stereographic (variant b)")?(t.lat0=ei(t.lat1>0?90:-90),t.lat_ts=t.lat1,delete t.lat1):!t.lat_ts&&t.lat0&&(n==="polar stereographic"||n==="polar stereographic (variant a)")&&(t.lat_ts=t.lat0,t.lat0=ei(t.lat0>0?90:-90),delete t.lat1)}function Eh(t){let n={units:null,to_meter:void 0};return typeof t=="string"?(n.units=t.toLowerCase(),n.units==="metre"&&(n.units="meter"),n.units==="meter"&&(n.to_meter=1)):t&&t.name&&(n.units=t.name.toLowerCase(),n.units==="metre"&&(n.units="meter"),n.to_meter=t.conversion_factor),n}function Ph(t){return typeof t=="object"?t.value*t.unit.conversion_factor:t}function kh(t,n){t.ellipsoid.radius?(n.a=t.ellipsoid.radius,n.rf=0):(n.a=Ph(t.ellipsoid.semi_major_axis),t.ellipsoid.inverse_flattening!==void 0?n.rf=t.ellipsoid.inverse_flattening:t.ellipsoid.semi_major_axis!==void 0&&t.ellipsoid.semi_minor_axis!==void 0&&(n.rf=n.a/(n.a-Ph(t.ellipsoid.semi_minor_axis))))}function Aa(t,n={}){return!t||typeof t!="object"?t:t.type==="BoundCRS"?(Aa(t.source_crs,n),t.transformation&&(t.transformation.method&&t.transformation.method.name==="NTv2"?n.nadgrids=t.transformation.parameters[0].value:n.datum_params=t.transformation.parameters.map(a=>a.value)),n):(Object.keys(t).forEach(a=>{const l=t[a];if(l!==null)switch(a){case"name":if(n.srsCode)break;n.name=l,n.srsCode=l;break;case"type":l==="GeographicCRS"?n.projName="longlat":l==="ProjectedCRS"&&t.conversion&&t.conversion.method&&(n.projName=t.conversion.method.name);break;case"datum":case"datum_ensemble":l.ellipsoid&&(n.ellps=l.ellipsoid.name,kh(l,n)),l.prime_meridian&&(n.from_greenwich=l.prime_meridian.longitude*Math.PI/180);break;case"ellipsoid":n.ellps=l.name,kh(l,n);break;case"prime_meridian":n.long0=(l.longitude||0)*Math.PI/180;break;case"coordinate_system":if(l.axis){if(n.axis=l.axis.map(c=>{const f=c.direction;if(f==="east")return"e";if(f==="north")return"n";if(f==="west")return"w";if(f==="south")return"s";throw new Error(`Unknown axis direction: ${f}`)}).join("")+"u",l.unit){const{units:c,to_meter:f}=Eh(l.unit);n.units=c,n.to_meter=f}else if(l.axis[0]&&l.axis[0].unit){const{units:c,to_meter:f}=Eh(l.axis[0].unit);n.units=c,n.to_meter=f}}break;case"id":l.authority&&l.code&&(n.title=l.authority+":"+l.code);break;case"conversion":l.method&&l.method.name&&(n.projName=l.method.name),l.parameters&&l.parameters.forEach(c=>{const f=c.name.toLowerCase().replace(/\s+/g,"_"),p=c.value;c.unit&&c.unit.conversion_factor?n[f]=p*c.unit.conversion_factor:c.unit==="degree"?n[f]=p*Math.PI/180:n[f]=p});break;case"unit":l.name&&(n.units=l.name.toLowerCase(),n.units==="metre"&&(n.units="meter")),l.conversion_factor&&(n.to_meter=l.conversion_factor);break;case"base_crs":Aa(l,n),n.datumCode=l.id?l.id.authority+"_"+l.id.code:l.name;break}}),n.latitude_of_false_origin!==void 0&&(n.lat0=n.latitude_of_false_origin),n.longitude_of_false_origin!==void 0&&(n.long0=n.longitude_of_false_origin),n.latitude_of_standard_parallel!==void 0&&(n.lat0=n.latitude_of_standard_parallel,n.lat1=n.latitude_of_standard_parallel),n.latitude_of_1st_standard_parallel!==void 0&&(n.lat1=n.latitude_of_1st_standard_parallel),n.latitude_of_2nd_standard_parallel!==void 0&&(n.lat2=n.latitude_of_2nd_standard_parallel),n.latitude_of_projection_centre!==void 0&&(n.lat0=n.latitude_of_projection_centre),n.longitude_of_projection_centre!==void 0&&(n.longc=n.longitude_of_projection_centre),n.easting_at_false_origin!==void 0&&(n.x0=n.easting_at_false_origin),n.northing_at_false_origin!==void 0&&(n.y0=n.northing_at_false_origin),n.latitude_of_natural_origin!==void 0&&(n.lat0=n.latitude_of_natural_origin),n.longitude_of_natural_origin!==void 0&&(n.long0=n.longitude_of_natural_origin),n.longitude_of_origin!==void 0&&(n.long0=n.longitude_of_origin),n.false_easting!==void 0&&(n.x0=n.false_easting),n.easting_at_projection_centre&&(n.x0=n.easting_at_projection_centre),n.false_northing!==void 0&&(n.y0=n.false_northing),n.northing_at_projection_centre&&(n.y0=n.northing_at_projection_centre),n.standard_parallel_1!==void 0&&(n.lat1=n.standard_parallel_1),n.standard_parallel_2!==void 0&&(n.lat2=n.standard_parallel_2),n.scale_factor_at_natural_origin!==void 0&&(n.k0=n.scale_factor_at_natural_origin),n.scale_factor_at_projection_centre!==void 0&&(n.k0=n.scale_factor_at_projection_centre),n.scale_factor_on_pseudo_standard_parallel!==void 0&&(n.k0=n.scale_factor_on_pseudo_standard_parallel),n.azimuth!==void 0&&(n.alpha=n.azimuth),n.azimuth_at_projection_centre!==void 0&&(n.alpha=n.azimuth_at_projection_centre),n.angle_from_rectified_to_skew_grid&&(n.rectified_grid_angle=n.angle_from_rectified_to_skew_grid),Ch(n),n)}var tu=["PROJECTEDCRS","PROJCRS","GEOGCS","GEOCCS","PROJCS","LOCAL_CS","GEODCRS","GEODETICCRS","GEODETICDATUM","ENGCRS","ENGINEERINGCRS"];function eu(t,n){var a=n[0],l=n[1];!(a in t)&&l in t&&(t[a]=t[l],n.length===3&&(t[a]=n[2](t[a])))}function Bh(t){for(var n=Object.keys(t),a=0,l=n.length;a<l;++a){var c=n[a];tu.indexOf(c)!==-1&&iu(t[c]),typeof t[c]=="object"&&Bh(t[c])}}function iu(t){if(t.AUTHORITY){var n=Object.keys(t.AUTHORITY)[0];n&&n in t.AUTHORITY&&(t.title=n+":"+t.AUTHORITY[n])}if(t.type==="GEOGCS"?t.projName="longlat":t.type==="LOCAL_CS"?(t.projName="identity",t.local=!0):typeof t.PROJECTION=="object"?t.projName=Object.keys(t.PROJECTION)[0]:t.projName=t.PROJECTION,t.AXIS){for(var a="",l=0,c=t.AXIS.length;l<c;++l){var f=[t.AXIS[l][0].toLowerCase(),t.AXIS[l][1].toLowerCase()];f[0].indexOf("north")!==-1||(f[0]==="y"||f[0]==="lat")&&f[1]==="north"?a+="n":f[0].indexOf("south")!==-1||(f[0]==="y"||f[0]==="lat")&&f[1]==="south"?a+="s":f[0].indexOf("east")!==-1||(f[0]==="x"||f[0]==="lon")&&f[1]==="east"?a+="e":(f[0].indexOf("west")!==-1||(f[0]==="x"||f[0]==="lon")&&f[1]==="west")&&(a+="w")}a.length===2&&(a+="u"),a.length===3&&(t.axis=a)}t.UNIT&&(t.units=t.UNIT.name.toLowerCase(),t.units==="metre"&&(t.units="meter"),t.UNIT.convert&&(t.type==="GEOGCS"?t.DATUM&&t.DATUM.SPHEROID&&(t.to_meter=t.UNIT.convert*t.DATUM.SPHEROID.a):t.to_meter=t.UNIT.convert));var p=t.GEOGCS;t.type==="GEOGCS"&&(p=t),p&&(p.DATUM?t.datumCode=p.DATUM.name.toLowerCase():t.datumCode=p.name.toLowerCase(),t.datumCode.slice(0,2)==="d_"&&(t.datumCode=t.datumCode.slice(2)),t.datumCode==="new_zealand_1949"&&(t.datumCode="nzgd49"),(t.datumCode==="wgs_1984"||t.datumCode==="world_geodetic_system_1984")&&(t.PROJECTION==="Mercator_Auxiliary_Sphere"&&(t.sphere=!0),t.datumCode="wgs84"),t.datumCode==="belge_1972"&&(t.datumCode="rnb72"),p.DATUM&&p.DATUM.SPHEROID&&(t.ellps=p.DATUM.SPHEROID.name.replace("_19","").replace(/[Cc]larke\_18/,"clrk"),t.ellps.toLowerCase().slice(0,13)==="international"&&(t.ellps="intl"),t.a=p.DATUM.SPHEROID.a,t.rf=parseFloat(p.DATUM.SPHEROID.rf,10)),p.DATUM&&p.DATUM.TOWGS84&&(t.datum_params=p.DATUM.TOWGS84),~t.datumCode.indexOf("osgb_1936")&&(t.datumCode="osgb36"),~t.datumCode.indexOf("osni_1952")&&(t.datumCode="osni52"),(~t.datumCode.indexOf("tm65")||~t.datumCode.indexOf("geodetic_datum_of_1965"))&&(t.datumCode="ire65"),t.datumCode==="ch1903+"&&(t.datumCode="ch1903"),~t.datumCode.indexOf("israel")&&(t.datumCode="isr93")),t.b&&!isFinite(t.b)&&(t.b=t.a),t.rectified_grid_angle&&(t.rectified_grid_angle=ei(t.rectified_grid_angle));function g(C){var x=t.to_meter||1;return C*x}var A=function(C){return eu(t,C)},k=[["standard_parallel_1","Standard_Parallel_1"],["standard_parallel_1","Latitude of 1st standard parallel"],["standard_parallel_2","Standard_Parallel_2"],["standard_parallel_2","Latitude of 2nd standard parallel"],["false_easting","False_Easting"],["false_easting","False easting"],["false-easting","Easting at false origin"],["false_northing","False_Northing"],["false_northing","False northing"],["false_northing","Northing at false origin"],["central_meridian","Central_Meridian"],["central_meridian","Longitude of natural origin"],["central_meridian","Longitude of false origin"],["latitude_of_origin","Latitude_Of_Origin"],["latitude_of_origin","Central_Parallel"],["latitude_of_origin","Latitude of natural origin"],["latitude_of_origin","Latitude of false origin"],["scale_factor","Scale_Factor"],["k0","scale_factor"],["latitude_of_center","Latitude_Of_Center"],["latitude_of_center","Latitude_of_center"],["lat0","latitude_of_center",ei],["longitude_of_center","Longitude_Of_Center"],["longitude_of_center","Longitude_of_center"],["longc","longitude_of_center",ei],["x0","false_easting",g],["y0","false_northing",g],["long0","central_meridian",ei],["lat0","latitude_of_origin",ei],["lat0","standard_parallel_1",ei],["lat1","standard_parallel_1",ei],["lat2","standard_parallel_2",ei],["azimuth","Azimuth"],["alpha","azimuth",ei],["srsCode","name"]];k.forEach(A),Ch(t)}function Zr(t){if(typeof t=="object")return Aa(t);const n=Wl(t);var a=Jl(t);if(n==="WKT2"){const f=$l(a);return Aa(f)}var l=a[0],c={};return xn(a,c),Bh(c),c[l]}function Se(t){var n=this;if(arguments.length===2){var a=arguments[1];typeof a=="string"?a.charAt(0)==="+"?Se[t]=zr(arguments[1]):Se[t]=Zr(arguments[1]):Se[t]=a}else if(arguments.length===1){if(Array.isArray(t))return t.map(function(l){return Array.isArray(l)?Se.apply(n,l):Se(l)});if(typeof t=="string"){if(t in Se)return Se[t]}else"EPSG"in t?Se["EPSG:"+t.EPSG]=t:"ESRI"in t?Se["ESRI:"+t.ESRI]=t:"IAU2000"in t?Se["IAU2000:"+t.IAU2000]=t:console.log(t);return}}Gl(Se);function nu(t){return typeof t=="string"}function su(t){return t in Se}function au(t){return t.indexOf("+")!==0&&t.indexOf("[")!==-1||typeof t=="object"&&!("srsCode"in t)}var ru=["3857","900913","3785","102113"];function ou(t){var n=Di(t,"authority");if(n){var a=Di(n,"epsg");return a&&ru.indexOf(a)>-1}}function hu(t){var n=Di(t,"extension");if(n)return Di(n,"proj4")}function lu(t){return t[0]==="+"}function uu(t){if(nu(t)){if(su(t))return Se[t];if(au(t)){var n=Zr(t);if(ou(n))return Se["EPSG:3857"];var a=hu(n);return a?zr(a):n}if(lu(t))return zr(t)}else return"projName"in t?t:Zr(t)}function Sh(t,n){t=t||{};var a,l;if(!n)return t;for(l in n)a=n[l],a!==void 0&&(t[l]=a);return t}function ci(t,n,a){var l=t*n;return a/Math.sqrt(1-l*l)}function fs(t){return t<0?-1:1}function _t(t){return Math.abs(t)<=he?t:t-fs(t)*cs}function ii(t,n,a){var l=t*a,c=.5*t;return l=Math.pow((1-l)/(1+l),c),Math.tan(.5*(ut-n))/l}function ps(t,n){for(var a=.5*t,l,c,f=ut-2*Math.atan(n),p=0;p<=15;p++)if(l=t*Math.sin(f),c=ut-2*Math.atan(n*Math.pow((1-l)/(1+l),a))-f,f+=c,Math.abs(c)<=1e-10)return f;return-9999}function cu(){var t=this.b/this.a;this.es=1-t*t,"x0"in this||(this.x0=0),"y0"in this||(this.y0=0),this.e=Math.sqrt(this.es),this.lat_ts?this.sphere?this.k0=Math.cos(this.lat_ts):this.k0=ci(this.e,Math.sin(this.lat_ts),Math.cos(this.lat_ts)):this.k0||(this.k?this.k0=this.k:this.k0=1)}function du(t){var n=t.x,a=t.y;if(a*ui>90&&a*ui<-90&&n*ui>180&&n*ui<-180)return null;var l,c;if(Math.abs(Math.abs(a)-ut)<=dt)return null;if(this.sphere)l=this.x0+this.a*this.k0*_t(n-this.long0),c=this.y0+this.a*this.k0*Math.log(Math.tan(jt+.5*a));else{var f=Math.sin(a),p=ii(this.e,a,f);l=this.x0+this.a*this.k0*_t(n-this.long0),c=this.y0-this.a*this.k0*Math.log(p)}return t.x=l,t.y=c,t}function fu(t){var n=t.x-this.x0,a=t.y-this.y0,l,c;if(this.sphere)c=ut-2*Math.atan(Math.exp(-a/(this.a*this.k0)));else{var f=Math.exp(-a/(this.a*this.k0));if(c=ps(this.e,f),c===-9999)return null}return l=_t(this.long0+n/(this.a*this.k0)),t.x=l,t.y=c,t}var pu=["Mercator","Popular Visualisation Pseudo Mercator","Mercator_1SP","Mercator_Auxiliary_Sphere","Mercator_Variant_A","merc"];const _u={init:cu,forward:du,inverse:fu,names:pu};function mu(){}function Th(t){return t}var gu=["longlat","identity"],yu=[_u,{init:mu,forward:Th,inverse:Th,names:gu}],tn={},Ln=[];function Dh(t,n){var a=Ln.length;return t.names?(Ln[a]=t,t.names.forEach(function(l){tn[l.toLowerCase()]=a}),this):(console.log(n),!0)}function Oh(t){return t.replace(/[-\(\)\s]+/g," ").trim().replace(/ /g,"_")}function vu(t){if(!t)return!1;var n=t.toLowerCase();if(typeof tn[n]<"u"&&Ln[tn[n]]||(n=Oh(n),n in tn&&Ln[tn[n]]))return Ln[tn[n]]}function Au(){yu.forEach(Dh)}const Mu={start:Au,add:Dh,get:vu};var Ih={MERIT:{a:6378137,rf:298.257,ellipseName:"MERIT 1983"},SGS85:{a:6378136,rf:298.257,ellipseName:"Soviet Geodetic System 85"},GRS80:{a:6378137,rf:298.257222101,ellipseName:"GRS 1980(IUGG, 1980)"},IAU76:{a:6378140,rf:298.257,ellipseName:"IAU 1976"},airy:{a:6377563396e-3,b:635625691e-2,ellipseName:"Airy 1830"},APL4:{a:6378137,rf:298.25,ellipseName:"Appl. Physics. 1965"},NWL9D:{a:6378145,rf:298.25,ellipseName:"Naval Weapons Lab., 1965"},mod_airy:{a:6377340189e-3,b:6356034446e-3,ellipseName:"Modified Airy"},andrae:{a:637710443e-2,rf:300,ellipseName:"Andrae 1876 (Den., Iclnd.)"},aust_SA:{a:6378160,rf:298.25,ellipseName:"Australian Natl & S. Amer. 1969"},GRS67:{a:6378160,rf:298.247167427,ellipseName:"GRS 67(IUGG 1967)"},bessel:{a:6377397155e-3,rf:299.1528128,ellipseName:"Bessel 1841"},bess_nam:{a:6377483865e-3,rf:299.1528128,ellipseName:"Bessel 1841 (Namibia)"},clrk66:{a:63782064e-1,b:63565838e-1,ellipseName:"Clarke 1866"},clrk80:{a:6378249145e-3,rf:293.4663,ellipseName:"Clarke 1880 mod."},clrk80ign:{a:63782492e-1,b:6356515,rf:293.4660213,ellipseName:"Clarke 1880 (IGN)"},clrk58:{a:6378293645208759e-9,rf:294.2606763692654,ellipseName:"Clarke 1858"},CPM:{a:63757387e-1,rf:334.29,ellipseName:"Comm. des Poids et Mesures 1799"},delmbr:{a:6376428,rf:311.5,ellipseName:"Delambre 1810 (Belgium)"},engelis:{a:637813605e-2,rf:298.2566,ellipseName:"Engelis 1985"},evrst30:{a:6377276345e-3,rf:300.8017,ellipseName:"Everest 1830"},evrst48:{a:6377304063e-3,rf:300.8017,ellipseName:"Everest 1948"},evrst56:{a:6377301243e-3,rf:300.8017,ellipseName:"Everest 1956"},evrst69:{a:6377295664e-3,rf:300.8017,ellipseName:"Everest 1969"},evrstSS:{a:6377298556e-3,rf:300.8017,ellipseName:"Everest (Sabah & Sarawak)"},fschr60:{a:6378166,rf:298.3,ellipseName:"Fischer (Mercury Datum) 1960"},fschr60m:{a:6378155,rf:298.3,ellipseName:"Fischer 1960"},fschr68:{a:6378150,rf:298.3,ellipseName:"Fischer 1968"},helmert:{a:6378200,rf:298.3,ellipseName:"Helmert 1906"},hough:{a:6378270,rf:297,ellipseName:"Hough"},intl:{a:6378388,rf:297,ellipseName:"International 1909 (Hayford)"},kaula:{a:6378163,rf:298.24,ellipseName:"Kaula 1961"},lerch:{a:6378139,rf:298.257,ellipseName:"Lerch 1979"},mprts:{a:6397300,rf:191,ellipseName:"Maupertius 1738"},new_intl:{a:63781575e-1,b:63567722e-1,ellipseName:"New International 1967"},plessis:{a:6376523,rf:6355863,ellipseName:"Plessis 1817 (France)"},krass:{a:6378245,rf:298.3,ellipseName:"Krassovsky, 1942"},SEasia:{a:6378155,b:63567733205e-4,ellipseName:"Southeast Asia"},walbeck:{a:6376896,b:63558348467e-4,ellipseName:"Walbeck"},WGS60:{a:6378165,rf:298.3,ellipseName:"WGS 60"},WGS66:{a:6378145,rf:298.25,ellipseName:"WGS 66"},WGS7:{a:6378135,rf:298.26,ellipseName:"WGS 72"},WGS84:{a:6378137,rf:298.257223563,ellipseName:"WGS 84"},sphere:{a:6370997,b:6370997,ellipseName:"Normal Sphere (r=6370997)"}};const xu=Ih.WGS84;function Lu(t,n,a,l){var c=t*t,f=n*n,p=(c-f)/c,g=0;l?(t*=1-p*(Nl+p*(Ul+p*Zl)),c=t*t,p=0):g=Math.sqrt(p);var A=(c-f)/f;return{es:p,e:g,ep2:A}}function bu(t,n,a,l,c){if(!t){var f=Di(Ih,l);f||(f=xu),t=f.a,n=f.b,a=f.rf}return a&&!n&&(n=(1-1/a)*t),(a===0||Math.abs(t-n)<dt)&&(c=!0,n=t),{a:t,b:n,rf:a,sphere:c}}var Ma={wgs84:{towgs84:"0,0,0",ellipse:"WGS84",datumName:"WGS84"},ch1903:{towgs84:"674.374,15.056,405.346",ellipse:"bessel",datumName:"swiss"},ggrs87:{towgs84:"-199.87,74.79,246.62",ellipse:"GRS80",datumName:"Greek_Geodetic_Reference_System_1987"},nad83:{towgs84:"0,0,0",ellipse:"GRS80",datumName:"North_American_Datum_1983"},nad27:{nadgrids:"@conus,@alaska,@ntv2_0.gsb,@ntv1_can.dat",ellipse:"clrk66",datumName:"North_American_Datum_1927"},potsdam:{towgs84:"598.1,73.7,418.2,0.202,0.045,-2.455,6.7",ellipse:"bessel",datumName:"Potsdam Rauenberg 1950 DHDN"},carthage:{towgs84:"-263.0,6.0,431.0",ellipse:"clark80",datumName:"Carthage 1934 Tunisia"},hermannskogel:{towgs84:"577.326,90.129,463.919,5.137,1.474,5.297,2.4232",ellipse:"bessel",datumName:"Hermannskogel"},mgi:{towgs84:"577.326,90.129,463.919,5.137,1.474,5.297,2.4232",ellipse:"bessel",datumName:"Militar-Geographische Institut"},osni52:{towgs84:"482.530,-130.596,564.557,-1.042,-0.214,-0.631,8.15",ellipse:"airy",datumName:"Irish National"},ire65:{towgs84:"482.530,-130.596,564.557,-1.042,-0.214,-0.631,8.15",ellipse:"mod_airy",datumName:"Ireland 1965"},rassadiran:{towgs84:"-133.63,-157.5,-158.62",ellipse:"intl",datumName:"Rassadiran"},nzgd49:{towgs84:"59.47,-5.04,187.44,0.47,-0.1,1.024,-4.5993",ellipse:"intl",datumName:"New Zealand Geodetic Datum 1949"},osgb36:{towgs84:"446.448,-125.157,542.060,0.1502,0.2470,0.8421,-20.4894",ellipse:"airy",datumName:"Ordnance Survey of Great Britain 1936"},s_jtsk:{towgs84:"589,76,480",ellipse:"bessel",datumName:"S-JTSK (Ferro)"},beduaram:{towgs84:"-106,-87,188",ellipse:"clrk80",datumName:"Beduaram"},gunung_segara:{towgs84:"-403,684,41",ellipse:"bessel",datumName:"Gunung Segara Jakarta"},rnb72:{towgs84:"106.869,-52.2978,103.724,-0.33657,0.456955,-1.84218,1",ellipse:"intl",datumName:"Reseau National Belge 1972"},EPSG_5451:{towgs84:"6.41,-49.05,-11.28,1.5657,0.5242,6.9718,-5.7649"},IGNF_LURESG:{towgs84:"-192.986,13.673,-39.309,-0.4099,-2.9332,2.6881,0.43"},EPSG_4614:{towgs84:"-119.4248,-303.65872,-11.00061,1.164298,0.174458,1.096259,3.657065"},EPSG_4615:{towgs84:"-494.088,-312.129,279.877,-1.423,-1.013,1.59,-0.748"},ESRI_37241:{towgs84:"-76.822,257.457,-12.817,2.136,-0.033,-2.392,-0.031"},ESRI_37249:{towgs84:"-440.296,58.548,296.265,1.128,10.202,4.559,-0.438"},ESRI_37245:{towgs84:"-511.151,-181.269,139.609,1.05,2.703,1.798,3.071"},EPSG_4178:{towgs84:"24.9,-126.4,-93.2,-0.063,-0.247,-0.041,1.01"},EPSG_4622:{towgs84:"-472.29,-5.63,-304.12,0.4362,-0.8374,0.2563,1.8984"},EPSG_4625:{towgs84:"126.93,547.94,130.41,-2.7867,5.1612,-0.8584,13.8227"},EPSG_5252:{towgs84:"0.023,0.036,-0.068,0.00176,0.00912,-0.01136,0.00439"},EPSG_4314:{towgs84:"597.1,71.4,412.1,0.894,0.068,-1.563,7.58"},EPSG_4282:{towgs84:"-178.3,-316.7,-131.5,5.278,6.077,10.979,19.166"},EPSG_4231:{towgs84:"-83.11,-97.38,-117.22,0.0276,-0.2167,0.2147,0.1218"},EPSG_4274:{towgs84:"-230.994,102.591,25.199,0.633,-0.239,0.9,1.95"},EPSG_4134:{towgs84:"-180.624,-225.516,173.919,-0.81,-1.898,8.336,16.71006"},EPSG_4254:{towgs84:"18.38,192.45,96.82,0.056,-0.142,-0.2,-0.0013"},EPSG_4159:{towgs84:"-194.513,-63.978,-25.759,-3.4027,3.756,-3.352,-0.9175"},EPSG_4687:{towgs84:"0.072,-0.507,-0.245,0.0183,-0.0003,0.007,-0.0093"},EPSG_4227:{towgs84:"-83.58,-397.54,458.78,-17.595,-2.847,4.256,3.225"},EPSG_4746:{towgs84:"599.4,72.4,419.2,-0.062,-0.022,-2.723,6.46"},EPSG_4745:{towgs84:"612.4,77,440.2,-0.054,0.057,-2.797,2.55"},EPSG_6311:{towgs84:"8.846,-4.394,-1.122,-0.00237,-0.146528,0.130428,0.783926"},EPSG_4289:{towgs84:"565.7381,50.4018,465.2904,-1.91514,1.60363,-9.09546,4.07244"},EPSG_4230:{towgs84:"-68.863,-134.888,-111.49,-0.53,-0.14,0.57,-3.4"},EPSG_4154:{towgs84:"-123.02,-158.95,-168.47"},EPSG_4156:{towgs84:"570.8,85.7,462.8,4.998,1.587,5.261,3.56"},EPSG_4299:{towgs84:"482.5,-130.6,564.6,-1.042,-0.214,-0.631,8.15"},EPSG_4179:{towgs84:"33.4,-146.6,-76.3,-0.359,-0.053,0.844,-0.84"},EPSG_4313:{towgs84:"-106.8686,52.2978,-103.7239,0.3366,-0.457,1.8422,-1.2747"},EPSG_4194:{towgs84:"163.511,127.533,-159.789"},EPSG_4195:{towgs84:"105,326,-102.5"},EPSG_4196:{towgs84:"-45,417,-3.5"},EPSG_4611:{towgs84:"-162.619,-276.959,-161.764,0.067753,-2.243649,-1.158827,-1.094246"},EPSG_4633:{towgs84:"137.092,131.66,91.475,-1.9436,-11.5993,-4.3321,-7.4824"},EPSG_4641:{towgs84:"-408.809,366.856,-412.987,1.8842,-0.5308,2.1655,-121.0993"},EPSG_4643:{towgs84:"-480.26,-438.32,-643.429,16.3119,20.1721,-4.0349,-111.7002"},EPSG_4300:{towgs84:"482.5,-130.6,564.6,-1.042,-0.214,-0.631,8.15"},EPSG_4188:{towgs84:"482.5,-130.6,564.6,-1.042,-0.214,-0.631,8.15"},EPSG_4660:{towgs84:"982.6087,552.753,-540.873,32.39344,-153.25684,-96.2266,16.805"},EPSG_4662:{towgs84:"97.295,-263.247,310.882,-1.5999,0.8386,3.1409,13.3259"},EPSG_3906:{towgs84:"577.88891,165.22205,391.18289,4.9145,-0.94729,-13.05098,7.78664"},EPSG_4307:{towgs84:"-209.3622,-87.8162,404.6198,0.0046,3.4784,0.5805,-1.4547"},EPSG_6892:{towgs84:"-76.269,-16.683,68.562,-6.275,10.536,-4.286,-13.686"},EPSG_4690:{towgs84:"221.597,152.441,176.523,2.403,1.3893,0.884,11.4648"},EPSG_4691:{towgs84:"218.769,150.75,176.75,3.5231,2.0037,1.288,10.9817"},EPSG_4629:{towgs84:"72.51,345.411,79.241,-1.5862,-0.8826,-0.5495,1.3653"},EPSG_4630:{towgs84:"165.804,216.213,180.26,-0.6251,-0.4515,-0.0721,7.4111"},EPSG_4692:{towgs84:"217.109,86.452,23.711,0.0183,-0.0003,0.007,-0.0093"},EPSG_9333:{towgs84:"0,0,0,-8.393,0.749,-10.276,0"},EPSG_9059:{towgs84:"0,0,0"},EPSG_4312:{towgs84:"601.705,84.263,485.227,4.7354,1.3145,5.393,-2.3887"},EPSG_4123:{towgs84:"-96.062,-82.428,-121.753,4.801,0.345,-1.376,1.496"},EPSG_4309:{towgs84:"-124.45,183.74,44.64,-0.4384,0.5446,-0.9706,-2.1365"},ESRI_104106:{towgs84:"-283.088,-70.693,117.445,-1.157,0.059,-0.652,-4.058"},EPSG_4281:{towgs84:"-219.247,-73.802,269.529"},EPSG_4322:{towgs84:"0,0,4.5"},EPSG_4324:{towgs84:"0,0,1.9"},EPSG_4284:{towgs84:"43.822,-108.842,-119.585,1.455,-0.761,0.737,0.549"},EPSG_4277:{towgs84:"446.448,-125.157,542.06,0.15,0.247,0.842,-20.489"},EPSG_4207:{towgs84:"-282.1,-72.2,120,-1.529,0.145,-0.89,-4.46"},EPSG_4688:{towgs84:"347.175,1077.618,2623.677,33.9058,-70.6776,9.4013,186.0647"},EPSG_4689:{towgs84:"410.793,54.542,80.501,-2.5596,-2.3517,-0.6594,17.3218"},EPSG_4720:{towgs84:"0,0,4.5"},EPSG_4273:{towgs84:"278.3,93,474.5,7.889,0.05,-6.61,6.21"},EPSG_4240:{towgs84:"204.64,834.74,293.8"},EPSG_4817:{towgs84:"278.3,93,474.5,7.889,0.05,-6.61,6.21"},ESRI_104131:{towgs84:"426.62,142.62,460.09,4.98,4.49,-12.42,-17.1"},EPSG_4265:{towgs84:"-104.1,-49.1,-9.9,0.971,-2.917,0.714,-11.68"},EPSG_4263:{towgs84:"-111.92,-87.85,114.5,1.875,0.202,0.219,0.032"},EPSG_4298:{towgs84:"-689.5937,623.84046,-65.93566,-0.02331,1.17094,-0.80054,5.88536"},EPSG_4270:{towgs84:"-253.4392,-148.452,386.5267,0.15605,0.43,-0.1013,-0.0424"},EPSG_4229:{towgs84:"-121.8,98.1,-10.7"},EPSG_4220:{towgs84:"-55.5,-348,-229.2"},EPSG_4214:{towgs84:"12.646,-155.176,-80.863"},EPSG_4232:{towgs84:"-345,3,223"},EPSG_4238:{towgs84:"-1.977,-13.06,-9.993,0.364,0.254,0.689,-1.037"},EPSG_4168:{towgs84:"-170,33,326"},EPSG_4131:{towgs84:"199,931,318.9"},EPSG_4152:{towgs84:"-0.9102,2.0141,0.5602,0.029039,0.010065,0.010101,0"},EPSG_5228:{towgs84:"572.213,85.334,461.94,4.9732,1.529,5.2484,3.5378"},EPSG_8351:{towgs84:"485.021,169.465,483.839,7.786342,4.397554,4.102655,0"},EPSG_4683:{towgs84:"-127.62,-67.24,-47.04,-3.068,4.903,1.578,-1.06"},EPSG_4133:{towgs84:"0,0,0"},EPSG_7373:{towgs84:"0.819,-0.5762,-1.6446,-0.00378,-0.03317,0.00318,0.0693"},EPSG_9075:{towgs84:"-0.9102,2.0141,0.5602,0.029039,0.010065,0.010101,0"},EPSG_9072:{towgs84:"-0.9102,2.0141,0.5602,0.029039,0.010065,0.010101,0"},EPSG_9294:{towgs84:"1.16835,-1.42001,-2.24431,-0.00822,-0.05508,0.01818,0.23388"},EPSG_4212:{towgs84:"-267.434,173.496,181.814,-13.4704,8.7154,7.3926,14.7492"},EPSG_4191:{towgs84:"-44.183,-0.58,-38.489,2.3867,2.7072,-3.5196,-8.2703"},EPSG_4237:{towgs84:"52.684,-71.194,-13.975,-0.312,-0.1063,-0.3729,1.0191"},EPSG_4740:{towgs84:"-1.08,-0.27,-0.9"},EPSG_4124:{towgs84:"419.3836,99.3335,591.3451,0.850389,1.817277,-7.862238,-0.99496"},EPSG_5681:{towgs84:"584.9636,107.7175,413.8067,1.1155,0.2824,-3.1384,7.9922"},EPSG_4141:{towgs84:"23.772,17.49,17.859,-0.3132,-1.85274,1.67299,-5.4262"},EPSG_4204:{towgs84:"-85.645,-273.077,-79.708,2.289,-1.421,2.532,3.194"},EPSG_4319:{towgs84:"226.702,-193.337,-35.371,-2.229,-4.391,9.238,0.9798"},EPSG_4200:{towgs84:"24.82,-131.21,-82.66"},EPSG_4130:{towgs84:"0,0,0"},EPSG_4127:{towgs84:"-82.875,-57.097,-156.768,-2.158,1.524,-0.982,-0.359"},EPSG_4149:{towgs84:"674.374,15.056,405.346"},EPSG_4617:{towgs84:"-0.991,1.9072,0.5129,1.25033e-7,4.6785e-8,5.6529e-8,0"},EPSG_4663:{towgs84:"-210.502,-66.902,-48.476,2.094,-15.067,-5.817,0.485"},EPSG_4664:{towgs84:"-211.939,137.626,58.3,-0.089,0.251,0.079,0.384"},EPSG_4665:{towgs84:"-105.854,165.589,-38.312,-0.003,-0.026,0.024,-0.048"},EPSG_4666:{towgs84:"631.392,-66.551,481.442,1.09,-4.445,-4.487,-4.43"},EPSG_4756:{towgs84:"-192.873,-39.382,-111.202,-0.00205,-0.0005,0.00335,0.0188"},EPSG_4723:{towgs84:"-179.483,-69.379,-27.584,-7.862,8.163,6.042,-13.925"},EPSG_4726:{towgs84:"8.853,-52.644,180.304,-0.393,-2.323,2.96,-24.081"},EPSG_4267:{towgs84:"-8.0,160.0,176.0"},EPSG_5365:{towgs84:"-0.16959,0.35312,0.51846,0.03385,-0.16325,0.03446,0.03693"},EPSG_4218:{towgs84:"304.5,306.5,-318.1"},EPSG_4242:{towgs84:"-33.722,153.789,94.959,-8.581,-4.478,4.54,8.95"},EPSG_4216:{towgs84:"-292.295,248.758,429.447,4.9971,2.99,6.6906,1.0289"},ESRI_104105:{towgs84:"631.392,-66.551,481.442,1.09,-4.445,-4.487,-4.43"},ESRI_104129:{towgs84:"0,0,0"},EPSG_4673:{towgs84:"174.05,-25.49,112.57"},EPSG_4202:{towgs84:"-124,-60,154"},EPSG_4203:{towgs84:"-117.763,-51.51,139.061,0.292,0.443,0.277,-0.191"},EPSG_3819:{towgs84:"595.48,121.69,515.35,4.115,-2.9383,0.853,-3.408"},EPSG_8694:{towgs84:"-93.799,-132.737,-219.073,-1.844,0.648,-6.37,-0.169"},EPSG_4145:{towgs84:"275.57,676.78,229.6"},EPSG_4283:{towgs84:"61.55,-10.87,-40.19,39.4924,32.7221,32.8979,-9.994"},EPSG_4317:{towgs84:"2.3287,-147.0425,-92.0802,-0.3092483,0.32482185,0.49729934,5.68906266"},EPSG_4272:{towgs84:"59.47,-5.04,187.44,0.47,-0.1,1.024,-4.5993"},EPSG_4248:{towgs84:"-307.7,265.3,-363.5"},EPSG_5561:{towgs84:"24,-121,-76"},EPSG_5233:{towgs84:"-0.293,766.95,87.713,0.195704,1.695068,3.473016,-0.039338"},ESRI_104130:{towgs84:"-86,-98,-119"},ESRI_104102:{towgs84:"682,-203,480"},ESRI_37207:{towgs84:"7,-10,-26"},EPSG_4675:{towgs84:"59.935,118.4,-10.871"},ESRI_104109:{towgs84:"-89.121,-348.182,260.871"},ESRI_104112:{towgs84:"-185.583,-230.096,281.361"},ESRI_104113:{towgs84:"25.1,-275.6,222.6"},IGNF_WGS72G:{towgs84:"0,12,6"},IGNF_NTFG:{towgs84:"-168,-60,320"},IGNF_EFATE57G:{towgs84:"-127,-769,472"},IGNF_PGP50G:{towgs84:"324.8,153.6,172.1"},IGNF_REUN47G:{towgs84:"94,-948,-1262"},IGNF_CSG67G:{towgs84:"-186,230,110"},IGNF_GUAD48G:{towgs84:"-467,-16,-300"},IGNF_TAHI51G:{towgs84:"162,117,154"},IGNF_TAHAAG:{towgs84:"65,342,77"},IGNF_NUKU72G:{towgs84:"84,274,65"},IGNF_PETRELS72G:{towgs84:"365,194,166"},IGNF_WALL78G:{towgs84:"253,-133,-127"},IGNF_MAYO50G:{towgs84:"-382,-59,-262"},IGNF_TANNAG:{towgs84:"-139,-967,436"},IGNF_IGN72G:{towgs84:"-13,-348,292"},IGNF_ATIGG:{towgs84:"1118,23,66"},IGNF_FANGA84G:{towgs84:"150.57,158.33,118.32"},IGNF_RUSAT84G:{towgs84:"202.13,174.6,-15.74"},IGNF_KAUE70G:{towgs84:"126.74,300.1,-75.49"},IGNF_MOP90G:{towgs84:"-10.8,-1.8,12.77"},IGNF_MHPF67G:{towgs84:"338.08,212.58,-296.17"},IGNF_TAHI79G:{towgs84:"160.61,116.05,153.69"},IGNF_ANAA92G:{towgs84:"1.5,3.84,4.81"},IGNF_MARQUI72G:{towgs84:"330.91,-13.92,58.56"},IGNF_APAT86G:{towgs84:"143.6,197.82,74.05"},IGNF_TUBU69G:{towgs84:"237.17,171.61,-77.84"},IGNF_STPM50G:{towgs84:"11.363,424.148,373.13"},EPSG_4150:{towgs84:"674.374,15.056,405.346"},EPSG_4754:{towgs84:"-208.4058,-109.8777,-2.5764"},ESRI_104101:{towgs84:"374,150,588"},EPSG_4693:{towgs84:"0,-0.15,0.68"},EPSG_6207:{towgs84:"293.17,726.18,245.36"},EPSG_4153:{towgs84:"-133.63,-157.5,-158.62"},EPSG_4132:{towgs84:"-241.54,-163.64,396.06"},EPSG_4221:{towgs84:"-154.5,150.7,100.4"},EPSG_4266:{towgs84:"-80.7,-132.5,41.1"},EPSG_4193:{towgs84:"-70.9,-151.8,-41.4"},EPSG_5340:{towgs84:"-0.41,0.46,-0.35"},EPSG_4246:{towgs84:"-294.7,-200.1,525.5"},EPSG_4318:{towgs84:"-3.2,-5.7,2.8"},EPSG_4121:{towgs84:"-199.87,74.79,246.62"},EPSG_4223:{towgs84:"-260.1,5.5,432.2"},EPSG_4158:{towgs84:"-0.465,372.095,171.736"},EPSG_4285:{towgs84:"-128.16,-282.42,21.93"},EPSG_4613:{towgs84:"-404.78,685.68,45.47"},EPSG_4607:{towgs84:"195.671,332.517,274.607"},EPSG_4475:{towgs84:"-381.788,-57.501,-256.673"},EPSG_4208:{towgs84:"-157.84,308.54,-146.6"},EPSG_4743:{towgs84:"70.995,-335.916,262.898"},EPSG_4710:{towgs84:"-323.65,551.39,-491.22"},EPSG_7881:{towgs84:"-0.077,0.079,0.086"},EPSG_4682:{towgs84:"283.729,735.942,261.143"},EPSG_4739:{towgs84:"-156,-271,-189"},EPSG_4679:{towgs84:"-80.01,253.26,291.19"},EPSG_4750:{towgs84:"-56.263,16.136,-22.856"},EPSG_4644:{towgs84:"-10.18,-350.43,291.37"},EPSG_4695:{towgs84:"-103.746,-9.614,-255.95"},EPSG_4292:{towgs84:"-355,21,72"},EPSG_4302:{towgs84:"-61.702,284.488,472.052"},EPSG_4143:{towgs84:"-124.76,53,466.79"},EPSG_4606:{towgs84:"-153,153,307"},EPSG_4699:{towgs84:"-770.1,158.4,-498.2"},EPSG_4247:{towgs84:"-273.5,110.6,-357.9"},EPSG_4160:{towgs84:"8.88,184.86,106.69"},EPSG_4161:{towgs84:"-233.43,6.65,173.64"},EPSG_9251:{towgs84:"-9.5,122.9,138.2"},EPSG_9253:{towgs84:"-78.1,101.6,133.3"},EPSG_4297:{towgs84:"-198.383,-240.517,-107.909"},EPSG_4269:{towgs84:"0,0,0"},EPSG_4301:{towgs84:"-147,506,687"},EPSG_4618:{towgs84:"-59,-11,-52"},EPSG_4612:{towgs84:"0,0,0"},EPSG_4678:{towgs84:"44.585,-131.212,-39.544"},EPSG_4250:{towgs84:"-130,29,364"},EPSG_4144:{towgs84:"214,804,268"},EPSG_4147:{towgs84:"-17.51,-108.32,-62.39"},EPSG_4259:{towgs84:"-254.1,-5.36,-100.29"},EPSG_4164:{towgs84:"-76,-138,67"},EPSG_4211:{towgs84:"-378.873,676.002,-46.255"},EPSG_4182:{towgs84:"-422.651,-172.995,84.02"},EPSG_4224:{towgs84:"-143.87,243.37,-33.52"},EPSG_4225:{towgs84:"-205.57,168.77,-4.12"},EPSG_5527:{towgs84:"-67.35,3.88,-38.22"},EPSG_4752:{towgs84:"98,390,-22"},EPSG_4310:{towgs84:"-30,190,89"},EPSG_9248:{towgs84:"-192.26,65.72,132.08"},EPSG_4680:{towgs84:"124.5,-63.5,-281"},EPSG_4701:{towgs84:"-79.9,-158,-168.9"},EPSG_4706:{towgs84:"-146.21,112.63,4.05"},EPSG_4805:{towgs84:"682,-203,480"},EPSG_4201:{towgs84:"-165,-11,206"},EPSG_4210:{towgs84:"-157,-2,-299"},EPSG_4183:{towgs84:"-104,167,-38"},EPSG_4139:{towgs84:"11,72,-101"},EPSG_4668:{towgs84:"-86,-98,-119"},EPSG_4717:{towgs84:"-2,151,181"},EPSG_4732:{towgs84:"102,52,-38"},EPSG_4280:{towgs84:"-377,681,-50"},EPSG_4209:{towgs84:"-138,-105,-289"},EPSG_4261:{towgs84:"31,146,47"},EPSG_4658:{towgs84:"-73,46,-86"},EPSG_4721:{towgs84:"265.025,384.929,-194.046"},EPSG_4222:{towgs84:"-136,-108,-292"},EPSG_4601:{towgs84:"-255,-15,71"},EPSG_4602:{towgs84:"725,685,536"},EPSG_4603:{towgs84:"72,213.7,93"},EPSG_4605:{towgs84:"9,183,236"},EPSG_4621:{towgs84:"137,248,-430"},EPSG_4657:{towgs84:"-28,199,5"},EPSG_4316:{towgs84:"103.25,-100.4,-307.19"},EPSG_4642:{towgs84:"-13,-348,292"},EPSG_4698:{towgs84:"145,-187,103"},EPSG_4192:{towgs84:"-206.1,-174.7,-87.7"},EPSG_4311:{towgs84:"-265,120,-358"},EPSG_4135:{towgs84:"58,-283,-182"},ESRI_104138:{towgs84:"198,-226,-347"},EPSG_4245:{towgs84:"-11,851,5"},EPSG_4142:{towgs84:"-125,53,467"},EPSG_4213:{towgs84:"-106,-87,188"},EPSG_4253:{towgs84:"-133,-77,-51"},EPSG_4129:{towgs84:"-132,-110,-335"},EPSG_4713:{towgs84:"-77,-128,142"},EPSG_4239:{towgs84:"217,823,299"},EPSG_4146:{towgs84:"295,736,257"},EPSG_4155:{towgs84:"-83,37,124"},EPSG_4165:{towgs84:"-173,253,27"},EPSG_4672:{towgs84:"175,-38,113"},EPSG_4236:{towgs84:"-637,-549,-203"},EPSG_4251:{towgs84:"-90,40,88"},EPSG_4271:{towgs84:"-2,374,172"},EPSG_4175:{towgs84:"-88,4,101"},EPSG_4716:{towgs84:"298,-304,-375"},EPSG_4315:{towgs84:"-23,259,-9"},EPSG_4744:{towgs84:"-242.2,-144.9,370.3"},EPSG_4244:{towgs84:"-97,787,86"},EPSG_4293:{towgs84:"616,97,-251"},EPSG_4714:{towgs84:"-127,-769,472"},EPSG_4736:{towgs84:"260,12,-147"},EPSG_6883:{towgs84:"-235,-110,393"},EPSG_6894:{towgs84:"-63,176,185"},EPSG_4205:{towgs84:"-43,-163,45"},EPSG_4256:{towgs84:"41,-220,-134"},EPSG_4262:{towgs84:"639,405,60"},EPSG_4604:{towgs84:"174,359,365"},EPSG_4169:{towgs84:"-115,118,426"},EPSG_4620:{towgs84:"-106,-129,165"},EPSG_4184:{towgs84:"-203,141,53"},EPSG_4616:{towgs84:"-289,-124,60"},EPSG_9403:{towgs84:"-307,-92,127"},EPSG_4684:{towgs84:"-133,-321,50"},EPSG_4708:{towgs84:"-491,-22,435"},EPSG_4707:{towgs84:"114,-116,-333"},EPSG_4709:{towgs84:"145,75,-272"},EPSG_4712:{towgs84:"-205,107,53"},EPSG_4711:{towgs84:"124,-234,-25"},EPSG_4718:{towgs84:"230,-199,-752"},EPSG_4719:{towgs84:"211,147,111"},EPSG_4724:{towgs84:"208,-435,-229"},EPSG_4725:{towgs84:"189,-79,-202"},EPSG_4735:{towgs84:"647,1777,-1124"},EPSG_4722:{towgs84:"-794,119,-298"},EPSG_4728:{towgs84:"-307,-92,127"},EPSG_4734:{towgs84:"-632,438,-609"},EPSG_4727:{towgs84:"912,-58,1227"},EPSG_4729:{towgs84:"185,165,42"},EPSG_4730:{towgs84:"170,42,84"},EPSG_4733:{towgs84:"276,-57,149"},ESRI_37218:{towgs84:"230,-199,-752"},ESRI_37240:{towgs84:"-7,215,225"},ESRI_37221:{towgs84:"252,-209,-751"},ESRI_4305:{towgs84:"-123,-206,219"},ESRI_104139:{towgs84:"-73,-247,227"},EPSG_4748:{towgs84:"51,391,-36"},EPSG_4219:{towgs84:"-384,664,-48"},EPSG_4255:{towgs84:"-333,-222,114"},EPSG_4257:{towgs84:"-587.8,519.75,145.76"},EPSG_4646:{towgs84:"-963,510,-359"},EPSG_6881:{towgs84:"-24,-203,268"},EPSG_6882:{towgs84:"-183,-15,273"},EPSG_4715:{towgs84:"-104,-129,239"},IGNF_RGF93GDD:{towgs84:"0,0,0"},IGNF_RGM04GDD:{towgs84:"0,0,0"},IGNF_RGSPM06GDD:{towgs84:"0,0,0"},IGNF_RGTAAF07GDD:{towgs84:"0,0,0"},IGNF_RGFG95GDD:{towgs84:"0,0,0"},IGNF_RGNCG:{towgs84:"0,0,0"},IGNF_RGPFGDD:{towgs84:"0,0,0"},IGNF_ETRS89G:{towgs84:"0,0,0"},IGNF_RGR92GDD:{towgs84:"0,0,0"},EPSG_4173:{towgs84:"0,0,0"},EPSG_4180:{towgs84:"0,0,0"},EPSG_4619:{towgs84:"0,0,0"},EPSG_4667:{towgs84:"0,0,0"},EPSG_4075:{towgs84:"0,0,0"},EPSG_6706:{towgs84:"0,0,0"},EPSG_7798:{towgs84:"0,0,0"},EPSG_4661:{towgs84:"0,0,0"},EPSG_4669:{towgs84:"0,0,0"},EPSG_8685:{towgs84:"0,0,0"},EPSG_4151:{towgs84:"0,0,0"},EPSG_9702:{towgs84:"0,0,0"},EPSG_4758:{towgs84:"0,0,0"},EPSG_4761:{towgs84:"0,0,0"},EPSG_4765:{towgs84:"0,0,0"},EPSG_8997:{towgs84:"0,0,0"},EPSG_4023:{towgs84:"0,0,0"},EPSG_4670:{towgs84:"0,0,0"},EPSG_4694:{towgs84:"0,0,0"},EPSG_4148:{towgs84:"0,0,0"},EPSG_4163:{towgs84:"0,0,0"},EPSG_4167:{towgs84:"0,0,0"},EPSG_4189:{towgs84:"0,0,0"},EPSG_4190:{towgs84:"0,0,0"},EPSG_4176:{towgs84:"0,0,0"},EPSG_4659:{towgs84:"0,0,0"},EPSG_3824:{towgs84:"0,0,0"},EPSG_3889:{towgs84:"0,0,0"},EPSG_4046:{towgs84:"0,0,0"},EPSG_4081:{towgs84:"0,0,0"},EPSG_4558:{towgs84:"0,0,0"},EPSG_4483:{towgs84:"0,0,0"},EPSG_5013:{towgs84:"0,0,0"},EPSG_5264:{towgs84:"0,0,0"},EPSG_5324:{towgs84:"0,0,0"},EPSG_5354:{towgs84:"0,0,0"},EPSG_5371:{towgs84:"0,0,0"},EPSG_5373:{towgs84:"0,0,0"},EPSG_5381:{towgs84:"0,0,0"},EPSG_5393:{towgs84:"0,0,0"},EPSG_5489:{towgs84:"0,0,0"},EPSG_5593:{towgs84:"0,0,0"},EPSG_6135:{towgs84:"0,0,0"},EPSG_6365:{towgs84:"0,0,0"},EPSG_5246:{towgs84:"0,0,0"},EPSG_7886:{towgs84:"0,0,0"},EPSG_8431:{towgs84:"0,0,0"},EPSG_8427:{towgs84:"0,0,0"},EPSG_8699:{towgs84:"0,0,0"},EPSG_8818:{towgs84:"0,0,0"},EPSG_4757:{towgs84:"0,0,0"},EPSG_9140:{towgs84:"0,0,0"},EPSG_8086:{towgs84:"0,0,0"},EPSG_4686:{towgs84:"0,0,0"},EPSG_4737:{towgs84:"0,0,0"},EPSG_4702:{towgs84:"0,0,0"},EPSG_4747:{towgs84:"0,0,0"},EPSG_4749:{towgs84:"0,0,0"},EPSG_4674:{towgs84:"0,0,0"},EPSG_4755:{towgs84:"0,0,0"},EPSG_4759:{towgs84:"0,0,0"},EPSG_4762:{towgs84:"0,0,0"},EPSG_4763:{towgs84:"0,0,0"},EPSG_4764:{towgs84:"0,0,0"},EPSG_4166:{towgs84:"0,0,0"},EPSG_4170:{towgs84:"0,0,0"},EPSG_5546:{towgs84:"0,0,0"},EPSG_7844:{towgs84:"0,0,0"},EPSG_4818:{towgs84:"589,76,480"}};for(var wu in Ma){var jr=Ma[wu];jr.datumName&&(Ma[jr.datumName]=jr)}function Cu(t,n,a,l,c,f,p){var g={};return t===void 0||t==="none"?g.datum_type=Fr:g.datum_type=Fl,n&&(g.datum_params=n.map(parseFloat),(g.datum_params[0]!==0||g.datum_params[1]!==0||g.datum_params[2]!==0)&&(g.datum_type=Ji),g.datum_params.length>3&&(g.datum_params[3]!==0||g.datum_params[4]!==0||g.datum_params[5]!==0||g.datum_params[6]!==0)&&(g.datum_type=Qi,g.datum_params[3]*=us,g.datum_params[4]*=us,g.datum_params[5]*=us,g.datum_params[6]=g.datum_params[6]/1e6+1)),p&&(g.datum_type=Mn,g.grids=p),g.a=a,g.b=l,g.es=c,g.ep2=f,g}var qr={};function Eu(t,n,a){return n instanceof ArrayBuffer?Pu(t,n,a):{ready:ku(t,n)}}function Pu(t,n,a){var l=!0;a!==void 0&&a.includeErrorFields===!1&&(l=!1);var c=new DataView(n),f=Tu(c),p=Du(c,f),g=Ou(c,p,f,l),A={header:p,subgrids:g};return qr[t]=A,A}async function ku(t,n){for(var a=[],l=await n.getImageCount(),c=l-1;c>=0;c--){var f=await n.getImage(c),p=await f.readRasters(),g=p,A=[f.getWidth(),f.getHeight()],k=f.getBoundingBox().map(Rh),C=[f.fileDirectory.ModelPixelScale[0],f.fileDirectory.ModelPixelScale[1]].map(Rh),x=k[0]+(A[0]-1)*C[0],b=k[3]-(A[1]-1)*C[1],T=g[0],G=g[1],Z=[];for(let rt=A[1]-1;rt>=0;rt--)for(let ct=A[0]-1;ct>=0;ct--){var K=rt*A[0]+ct;Z.push([-Oi(G[K]),Oi(T[K])])}a.push({del:C,lim:A,ll:[-x,b],cvs:Z})}var at={header:{nSubgrids:l},subgrids:a};return qr[t]=at,at}function Bu(t){if(t===void 0)return null;var n=t.split(",");return n.map(Su)}function Su(t){if(t.length===0)return null;var n=t[0]==="@";return n&&(t=t.slice(1)),t==="null"?{name:"null",mandatory:!n,grid:null,isNull:!0}:{name:t,mandatory:!n,grid:qr[t]||null,isNull:!1}}function Rh(t){return t*Math.PI/180}function Oi(t){return t/3600*Math.PI/180}function Tu(t){var n=t.getInt32(8,!1);return n===11?!1:(n=t.getInt32(8,!0),n!==11&&console.warn("Failed to detect nadgrid endian-ness, defaulting to little-endian"),!0)}function Du(t,n){return{nFields:t.getInt32(8,n),nSubgridFields:t.getInt32(24,n),nSubgrids:t.getInt32(40,n),shiftType:Hr(t,56,64).trim(),fromSemiMajorAxis:t.getFloat64(120,n),fromSemiMinorAxis:t.getFloat64(136,n),toSemiMajorAxis:t.getFloat64(152,n),toSemiMinorAxis:t.getFloat64(168,n)}}function Hr(t,n,a){return String.fromCharCode.apply(null,new Uint8Array(t.buffer.slice(n,a)))}function Ou(t,n,a,l){for(var c=176,f=[],p=0;p<n.nSubgrids;p++){var g=Ru(t,c,a),A=Gu(t,c,g,a,l),k=Math.round(1+(g.upperLongitude-g.lowerLongitude)/g.longitudeInterval),C=Math.round(1+(g.upperLatitude-g.lowerLatitude)/g.latitudeInterval);f.push({ll:[Oi(g.lowerLongitude),Oi(g.lowerLatitude)],del:[Oi(g.longitudeInterval),Oi(g.latitudeInterval)],lim:[k,C],count:g.gridNodeCount,cvs:Iu(A)});var x=16;l===!1&&(x=8),c+=176+g.gridNodeCount*x}return f}function Iu(t){return t.map(function(n){return[Oi(n.longitudeShift),Oi(n.latitudeShift)]})}function Ru(t,n,a){return{name:Hr(t,n+8,n+16).trim(),parent:Hr(t,n+24,n+24+8).trim(),lowerLatitude:t.getFloat64(n+72,a),upperLatitude:t.getFloat64(n+88,a),lowerLongitude:t.getFloat64(n+104,a),upperLongitude:t.getFloat64(n+120,a),latitudeInterval:t.getFloat64(n+136,a),longitudeInterval:t.getFloat64(n+152,a),gridNodeCount:t.getInt32(n+168,a)}}function Gu(t,n,a,l,c){var f=n+176,p=16;c===!1&&(p=8);for(var g=[],A=0;A<a.gridNodeCount;A++){var k={latitudeShift:t.getFloat32(f+A*p,l),longitudeShift:t.getFloat32(f+A*p+4,l)};c!==!1&&(k.latitudeAccuracy=t.getFloat32(f+A*p+8,l),k.longitudeAccuracy=t.getFloat32(f+A*p+12,l)),g.push(k)}return g}function ni(t,n){if(!(this instanceof ni))return new ni(t);this.forward=null,this.inverse=null,this.init=null,this.name,this.names=null,this.title,n=n||function(k){if(k)throw k};var a=uu(t);if(typeof a!="object"){n("Could not parse to valid json: "+t);return}var l=ni.projections.get(a.projName);if(!l){n("Could not get projection name from: "+t);return}if(a.datumCode&&a.datumCode!=="none"){var c=Di(Ma,a.datumCode);c&&(a.datum_params=a.datum_params||(c.towgs84?c.towgs84.split(","):null),a.ellps=c.ellipse,a.datumName=c.datumName?c.datumName:a.datumCode)}a.k0=a.k0||1,a.axis=a.axis||"enu",a.ellps=a.ellps||"wgs84",a.lat1=a.lat1||a.lat0;var f=bu(a.a,a.b,a.rf,a.ellps,a.sphere),p=Lu(f.a,f.b,f.rf,a.R_A),g=Bu(a.nadgrids),A=a.datum||Cu(a.datumCode,a.datum_params,f.a,f.b,p.es,p.ep2,g);Sh(this,a),Sh(this,l),this.a=f.a,this.b=f.b,this.rf=f.rf,this.sphere=f.sphere,this.es=p.es,this.e=p.e,this.ep2=p.ep2,this.datum=A,"init"in this&&typeof this.init=="function"&&this.init(),n(null,this)}ni.projections=Mu,ni.projections.start();function Fu(t,n){return t.datum_type!==n.datum_type||t.a!==n.a||Math.abs(t.es-n.es)>5e-11?!1:t.datum_type===Ji?t.datum_params[0]===n.datum_params[0]&&t.datum_params[1]===n.datum_params[1]&&t.datum_params[2]===n.datum_params[2]:t.datum_type===Qi?t.datum_params[0]===n.datum_params[0]&&t.datum_params[1]===n.datum_params[1]&&t.datum_params[2]===n.datum_params[2]&&t.datum_params[3]===n.datum_params[3]&&t.datum_params[4]===n.datum_params[4]&&t.datum_params[5]===n.datum_params[5]&&t.datum_params[6]===n.datum_params[6]:!0}function Gh(t,n,a){var l=t.x,c=t.y,f=t.z?t.z:0,p,g,A,k;if(c<-ut&&c>-1.001*ut)c=-ut;else if(c>ut&&c<1.001*ut)c=ut;else{if(c<-ut)return{x:-1/0,y:-1/0,z:t.z};if(c>ut)return{x:1/0,y:1/0,z:t.z}}return l>Math.PI&&(l-=2*Math.PI),g=Math.sin(c),k=Math.cos(c),A=g*g,p=a/Math.sqrt(1-n*A),{x:(p+f)*k*Math.cos(l),y:(p+f)*k*Math.sin(l),z:(p*(1-n)+f)*g}}function Fh(t,n,a,l){var c=1e-12,f=c*c,p=30,g,A,k,C,x,b,T,G,Z,K,at,rt,ct,yt=t.x,mt=t.y,xt=t.z?t.z:0,Dt,It,zt;if(g=Math.sqrt(yt*yt+mt*mt),A=Math.sqrt(yt*yt+mt*mt+xt*xt),g/a<c){if(Dt=0,A/a<c)return It=ut,zt=-l,{x:t.x,y:t.y,z:t.z}}else Dt=Math.atan2(mt,yt);k=xt/A,C=g/A,x=1/Math.sqrt(1-n*(2-n)*C*C),G=C*(1-n)*x,Z=k*x,ct=0;do ct++,T=a/Math.sqrt(1-n*Z*Z),zt=g*G+xt*Z-T*(1-n*Z*Z),b=n*T/(T+zt),x=1/Math.sqrt(1-b*(2-b)*C*C),K=C*(1-b)*x,at=k*x,rt=at*G-K*Z,G=K,Z=at;while(rt*rt>f&&ct<p);return It=Math.atan(at/Math.abs(K)),{x:Dt,y:It,z:zt}}function zu(t,n,a){if(n===Ji)return{x:t.x+a[0],y:t.y+a[1],z:t.z+a[2]};if(n===Qi){var l=a[0],c=a[1],f=a[2],p=a[3],g=a[4],A=a[5],k=a[6];return{x:k*(t.x-A*t.y+g*t.z)+l,y:k*(A*t.x+t.y-p*t.z)+c,z:k*(-g*t.x+p*t.y+t.z)+f}}}function Nu(t,n,a){if(n===Ji)return{x:t.x-a[0],y:t.y-a[1],z:t.z-a[2]};if(n===Qi){var l=a[0],c=a[1],f=a[2],p=a[3],g=a[4],A=a[5],k=a[6],C=(t.x-l)/k,x=(t.y-c)/k,b=(t.z-f)/k;return{x:C+A*x-g*b,y:-A*C+x+p*b,z:g*C-p*x+b}}}function xa(t){return t===Ji||t===Qi}function Uu(t,n,a){if(Fu(t,n)||t.datum_type===Fr||n.datum_type===Fr)return a;var l=t.a,c=t.es;if(t.datum_type===Mn){var f=zh(t,!1,a);if(f!==0)return;l=yh,c=vh}var p=n.a,g=n.b,A=n.es;if(n.datum_type===Mn&&(p=yh,g=zl,A=vh),c===A&&l===p&&!xa(t.datum_type)&&!xa(n.datum_type))return a;if(a=Gh(a,c,l),xa(t.datum_type)&&(a=zu(a,t.datum_type,t.datum_params)),xa(n.datum_type)&&(a=Nu(a,n.datum_type,n.datum_params)),a=Fh(a,A,p,g),n.datum_type===Mn){var k=zh(n,!0,a);if(k!==0)return}return a}function zh(t,n,a){if(t.grids===null||t.grids.length===0)return console.log("Grid shift grids not found"),-1;var l={x:-a.x,y:a.y},c={x:Number.NaN,y:Number.NaN},f=[];t:for(var p=0;p<t.grids.length;p++){var g=t.grids[p];if(f.push(g.name),g.isNull){c=l;break}if(g.grid===null){if(g.mandatory)return console.log("Unable to find mandatory grid '"+g.name+"'"),-1;continue}for(var A=g.grid.subgrids,k=0,C=A.length;k<C;k++){var x=A[k],b=(Math.abs(x.del[1])+Math.abs(x.del[0]))/1e4,T=x.ll[0]-b,G=x.ll[1]-b,Z=x.ll[0]+(x.lim[0]-1)*x.del[0]+b,K=x.ll[1]+(x.lim[1]-1)*x.del[1]+b;if(!(G>l.y||T>l.x||K<l.y||Z<l.x)&&(c=Zu(l,n,x),!isNaN(c.x)))break t}}return isNaN(c.x)?(console.log("Failed to find a grid shift table for location '"+-l.x*ui+" "+l.y*ui+" tried: '"+f+"'"),-1):(a.x=-c.x,a.y=c.y,0)}function Zu(t,n,a){var l={x:Number.NaN,y:Number.NaN};if(isNaN(t.x))return l;var c={x:t.x,y:t.y};c.x-=a.ll[0],c.y-=a.ll[1],c.x=_t(c.x-Math.PI)+Math.PI;var f=Nh(c,a);if(n){if(isNaN(f.x))return l;f.x=c.x-f.x,f.y=c.y-f.y;var p=9,g=1e-12,A,k;do{if(k=Nh(f,a),isNaN(k.x)){console.log("Inverse grid shift iteration failed, presumably at grid edge. Using first approximation.");break}A={x:c.x-(k.x+f.x),y:c.y-(k.y+f.y)},f.x+=A.x,f.y+=A.y}while(p--&&Math.abs(A.x)>g&&Math.abs(A.y)>g);if(p<0)return console.log("Inverse grid shift iterator failed to converge."),l;l.x=_t(f.x+a.ll[0]),l.y=f.y+a.ll[1]}else isNaN(f.x)||(l.x=t.x+f.x,l.y=t.y+f.y);return l}function Nh(t,n){var a={x:t.x/n.del[0],y:t.y/n.del[1]},l={x:Math.floor(a.x),y:Math.floor(a.y)},c={x:a.x-1*l.x,y:a.y-1*l.y},f={x:Number.NaN,y:Number.NaN},p;if(l.x<0||l.x>=n.lim[0]||l.y<0||l.y>=n.lim[1])return f;p=l.y*n.lim[0]+l.x;var g={x:n.cvs[p][0],y:n.cvs[p][1]};p++;var A={x:n.cvs[p][0],y:n.cvs[p][1]};p+=n.lim[0];var k={x:n.cvs[p][0],y:n.cvs[p][1]};p--;var C={x:n.cvs[p][0],y:n.cvs[p][1]},x=c.x*c.y,b=c.x*(1-c.y),T=(1-c.x)*(1-c.y),G=(1-c.x)*c.y;return f.x=T*g.x+b*A.x+G*C.x+x*k.x,f.y=T*g.y+b*A.y+G*C.y+x*k.y,f}function Uh(t,n,a){var l=a.x,c=a.y,f=a.z||0,p,g,A,k={};for(A=0;A<3;A++)if(!(n&&A===2&&a.z===void 0))switch(A===0?(p=l,"ew".indexOf(t.axis[A])!==-1?g="x":g="y"):A===1?(p=c,"ns".indexOf(t.axis[A])!==-1?g="y":g="x"):(p=f,g="z"),t.axis[A]){case"e":k[g]=p;break;case"w":k[g]=-p;break;case"n":k[g]=p;break;case"s":k[g]=-p;break;case"u":a[g]!==void 0&&(k.z=p);break;case"d":a[g]!==void 0&&(k.z=-p);break;default:return null}return k}function Zh(t){var n={x:t[0],y:t[1]};return t.length>2&&(n.z=t[2]),t.length>3&&(n.m=t[3]),n}function ju(t){jh(t.x),jh(t.y)}function jh(t){if(typeof Number.isFinite=="function"){if(Number.isFinite(t))return;throw new TypeError("coordinates must be finite numbers")}if(typeof t!="number"||t!==t||!isFinite(t))throw new TypeError("coordinates must be finite numbers")}function qu(t,n){return(t.datum.datum_type===Ji||t.datum.datum_type===Qi||t.datum.datum_type===Mn)&&n.datumCode!=="WGS84"||(n.datum.datum_type===Ji||n.datum.datum_type===Qi||n.datum.datum_type===Mn)&&t.datumCode!=="WGS84"}function La(t,n,a,l){var c;Array.isArray(a)?a=Zh(a):a={x:a.x,y:a.y,z:a.z,m:a.m};var f=a.z!==void 0;if(ju(a),t.datum&&n.datum&&qu(t,n)&&(c=new ni("WGS84"),a=La(t,c,a,l),t=c),l&&t.axis!=="enu"&&(a=Uh(t,!1,a)),t.projName==="longlat")a={x:a.x*ye,y:a.y*ye,z:a.z||0};else if(t.to_meter&&(a={x:a.x*t.to_meter,y:a.y*t.to_meter,z:a.z||0}),a=t.inverse(a),!a)return;if(t.from_greenwich&&(a.x+=t.from_greenwich),a=Uu(t.datum,n.datum,a),!!a)return a=a,n.from_greenwich&&(a={x:a.x-n.from_greenwich,y:a.y,z:a.z||0}),n.projName==="longlat"?a={x:a.x*ui,y:a.y*ui,z:a.z||0}:(a=n.forward(a),n.to_meter&&(a={x:a.x/n.to_meter,y:a.y/n.to_meter,z:a.z||0})),l&&n.axis!=="enu"?Uh(n,!0,a):(a&&!f&&delete a.z,a)}var qh=ni("WGS84");function Vr(t,n,a,l){var c,f,p;return Array.isArray(a)?(c=La(t,n,a,l)||{x:NaN,y:NaN},a.length>2?typeof t.name<"u"&&t.name==="geocent"||typeof n.name<"u"&&n.name==="geocent"?typeof c.z=="number"?[c.x,c.y,c.z].concat(a.slice(3)):[c.x,c.y,a[2]].concat(a.slice(3)):[c.x,c.y].concat(a.slice(2)):[c.x,c.y]):(f=La(t,n,a,l),p=Object.keys(a),p.length===2||p.forEach(function(g){if(typeof t.name<"u"&&t.name==="geocent"||typeof n.name<"u"&&n.name==="geocent"){if(g==="x"||g==="y"||g==="z")return}else if(g==="x"||g==="y")return;f[g]=a[g]}),f)}function ba(t){return t instanceof ni?t:typeof t=="object"&&"oProj"in t?t.oProj:ni(t)}function Hu(t,n,a){var l,c,f=!1,p;return typeof n>"u"?(c=ba(t),l=qh,f=!0):(typeof n.x<"u"||Array.isArray(n))&&(a=n,c=ba(t),l=qh,f=!0),l||(l=ba(t)),c||(c=ba(n)),a?Vr(l,c,a):(p={forward:function(g,A){return Vr(l,c,g,A)},inverse:function(g,A){return Vr(c,l,g,A)}},f&&(p.oProj=c),p)}var Hh=6,Vh="AJSAJS",$h="AFAFAF",bn=65,Fe=73,Ve=79,_s=86,ms=90;const Vu={forward:Wh,inverse:$u,toPoint:Kh};function Wh(t,n){return n=n||5,Xu(Wu({lat:t[1],lon:t[0]}),n)}function $u(t){var n=Wr(Jh(t.toUpperCase()));return n.lat&&n.lon?[n.lon,n.lat,n.lon,n.lat]:[n.left,n.bottom,n.right,n.top]}function Kh(t){var n=Wr(Jh(t.toUpperCase()));return n.lat&&n.lon?[n.lon,n.lat]:[(n.left+n.right)/2,(n.top+n.bottom)/2]}function $r(t){return t*(Math.PI/180)}function Xh(t){return 180*(t/Math.PI)}function Wu(t){var n=t.lat,a=t.lon,l=6378137,c=.00669438,f=.9996,p,g,A,k,C,x,b,T=$r(n),G=$r(a),Z,K;K=Math.floor((a+180)/6)+1,a===180&&(K=60),n>=56&&n<64&&a>=3&&a<12&&(K=32),n>=72&&n<84&&(a>=0&&a<9?K=31:a>=9&&a<21?K=33:a>=21&&a<33?K=35:a>=33&&a<42&&(K=37)),p=(K-1)*6-180+3,Z=$r(p),g=c/(1-c),A=l/Math.sqrt(1-c*Math.sin(T)*Math.sin(T)),k=Math.tan(T)*Math.tan(T),C=g*Math.cos(T)*Math.cos(T),x=Math.cos(T)*(G-Z),b=l*((1-c/4-3*c*c/64-5*c*c*c/256)*T-(3*c/8+3*c*c/32+45*c*c*c/1024)*Math.sin(2*T)+(15*c*c/256+45*c*c*c/1024)*Math.sin(4*T)-35*c*c*c/3072*Math.sin(6*T));var at=f*A*(x+(1-k+C)*x*x*x/6+(5-18*k+k*k+72*C-58*g)*x*x*x*x*x/120)+5e5,rt=f*(b+A*Math.tan(T)*(x*x/2+(5-k+9*C+4*C*C)*x*x*x*x/24+(61-58*k+k*k+600*C-330*g)*x*x*x*x*x*x/720));return n<0&&(rt+=1e7),{northing:Math.round(rt),easting:Math.round(at),zoneNumber:K,zoneLetter:Ku(n)}}function Wr(t){var n=t.northing,a=t.easting,l=t.zoneLetter,c=t.zoneNumber;if(c<0||c>60)return null;var f=.9996,p=6378137,g=.00669438,A,k=(1-Math.sqrt(1-g))/(1+Math.sqrt(1-g)),C,x,b,T,G,Z,K,at,rt,ct=a-5e5,yt=n;l<"N"&&(yt-=1e7),K=(c-1)*6-180+3,A=g/(1-g),Z=yt/f,at=Z/(p*(1-g/4-3*g*g/64-5*g*g*g/256)),rt=at+(3*k/2-27*k*k*k/32)*Math.sin(2*at)+(21*k*k/16-55*k*k*k*k/32)*Math.sin(4*at)+151*k*k*k/96*Math.sin(6*at),C=p/Math.sqrt(1-g*Math.sin(rt)*Math.sin(rt)),x=Math.tan(rt)*Math.tan(rt),b=A*Math.cos(rt)*Math.cos(rt),T=p*(1-g)/Math.pow(1-g*Math.sin(rt)*Math.sin(rt),1.5),G=ct/(C*f);var mt=rt-C*Math.tan(rt)/T*(G*G/2-(5+3*x+10*b-4*b*b-9*A)*G*G*G*G/24+(61+90*x+298*b+45*x*x-252*A-3*b*b)*G*G*G*G*G*G/720);mt=Xh(mt);var xt=(G-(1+2*x+b)*G*G*G/6+(5-2*b+28*x-3*b*b+8*A+24*x*x)*G*G*G*G*G/120)/Math.cos(rt);xt=K+Xh(xt);var Dt;if(t.accuracy){var It=Wr({northing:t.northing+t.accuracy,easting:t.easting+t.accuracy,zoneLetter:t.zoneLetter,zoneNumber:t.zoneNumber});Dt={top:It.lat,right:It.lon,bottom:mt,left:xt}}else Dt={lat:mt,lon:xt};return Dt}function Ku(t){var n="Z";return 84>=t&&t>=72?n="X":72>t&&t>=64?n="W":64>t&&t>=56?n="V":56>t&&t>=48?n="U":48>t&&t>=40?n="T":40>t&&t>=32?n="S":32>t&&t>=24?n="R":24>t&&t>=16?n="Q":16>t&&t>=8?n="P":8>t&&t>=0?n="N":0>t&&t>=-8?n="M":-8>t&&t>=-16?n="L":-16>t&&t>=-24?n="K":-24>t&&t>=-32?n="J":-32>t&&t>=-40?n="H":-40>t&&t>=-48?n="G":-48>t&&t>=-56?n="F":-56>t&&t>=-64?n="E":-64>t&&t>=-72?n="D":-72>t&&t>=-80&&(n="C"),n}function Xu(t,n){var a="00000"+t.easting,l="00000"+t.northing;return t.zoneNumber+t.zoneLetter+Yu(t.easting,t.northing,t.zoneNumber)+a.substr(a.length-5,n)+l.substr(l.length-5,n)}function Yu(t,n,a){var l=Yh(a),c=Math.floor(t/1e5),f=Math.floor(n/1e5)%20;return Ju(c,f,l)}function Yh(t){var n=t%Hh;return n===0&&(n=Hh),n}function Ju(t,n,a){var l=a-1,c=Vh.charCodeAt(l),f=$h.charCodeAt(l),p=c+t-1,g=f+n,A=!1;p>ms&&(p=p-ms+bn-1,A=!0),(p===Fe||c<Fe&&p>Fe||(p>Fe||c<Fe)&&A)&&p++,(p===Ve||c<Ve&&p>Ve||(p>Ve||c<Ve)&&A)&&(p++,p===Fe&&p++),p>ms&&(p=p-ms+bn-1),g>_s?(g=g-_s+bn-1,A=!0):A=!1,(g===Fe||f<Fe&&g>Fe||(g>Fe||f<Fe)&&A)&&g++,(g===Ve||f<Ve&&g>Ve||(g>Ve||f<Ve)&&A)&&(g++,g===Fe&&g++),g>_s&&(g=g-_s+bn-1);var k=String.fromCharCode(p)+String.fromCharCode(g);return k}function Jh(t){if(t&&t.length===0)throw"MGRSPoint coverting from nothing";for(var n=t.length,a=null,l="",c,f=0;!/[A-Z]/.test(c=t.charAt(f));){if(f>=2)throw"MGRSPoint bad conversion from: "+t;l+=c,f++}var p=parseInt(l,10);if(f===0||f+3>n)throw"MGRSPoint bad conversion from: "+t;var g=t.charAt(f++);if(g<="A"||g==="B"||g==="Y"||g>="Z"||g==="I"||g==="O")throw"MGRSPoint zone letter "+g+" not handled: "+t;a=t.substring(f,f+=2);for(var A=Yh(p),k=Qu(a.charAt(0),A),C=tc(a.charAt(1),A);C<ec(g);)C+=2e6;var x=n-f;if(x%2!==0)throw`MGRSPoint has to have an even number
|
|
7
7
|
of digits after the zone letter and two 100km letters - front
|
|
8
8
|
half for easting meters, second half for
|
|
9
|
-
northing meters`+t;var C=x/2,T=0,G=0,j,W,at,rt,ct;return C>0&&(j=1e5/Math.pow(10,C),W=t.substring(f,f+C),T=parseFloat(W)*j,at=t.substring(f+C),G=parseFloat(at)*j),rt=T+B,ct=G+E,{easting:rt,northing:ct,zoneLetter:g,zoneNumber:p,accuracy:j}}function zu(t,n){for(var r=Rh.charCodeAt(n-1),u=1e5,d=!1;r!==t.charCodeAt(0);){if(r++,r===Ge&&r++,r===Ve&&r++,r>ps){if(d)throw"Bad character: "+t;r=bn,d=!0}u+=1e5}return u}function Nu(t,n){if(t>"V")throw"MGRSPoint given invalid Northing "+t;for(var r=Fh.charCodeAt(n-1),u=0,d=!1;r!==t.charCodeAt(0);){if(r++,r===Ge&&r++,r===Ve&&r++,r>fs){if(d)throw"Bad character: "+t;r=bn,d=!0}u+=1e5}return u}function Uu(t){var n;switch(t){case"C":n=11e5;break;case"D":n=2e6;break;case"E":n=28e5;break;case"F":n=37e5;break;case"G":n=46e5;break;case"H":n=55e5;break;case"J":n=64e5;break;case"K":n=73e5;break;case"L":n=82e5;break;case"M":n=91e5;break;case"N":n=0;break;case"P":n=8e5;break;case"Q":n=17e5;break;case"R":n=26e5;break;case"S":n=35e5;break;case"T":n=44e5;break;case"U":n=53e5;break;case"V":n=62e5;break;case"W":n=7e6;break;case"X":n=79e5;break;default:n=-1}if(n>=0)return n;throw"Invalid zone letter: "+t}function wn(t,n,r){if(!(this instanceof wn))return new wn(t,n,r);if(Array.isArray(t))this.x=t[0],this.y=t[1],this.z=t[2]||0;else if(typeof t=="object")this.x=t.x,this.y=t.y,this.z=t.z||0;else if(typeof t=="string"&&typeof n>"u"){var u=t.split(",");this.x=parseFloat(u[0]),this.y=parseFloat(u[1]),this.z=parseFloat(u[2])||0}else this.x=t,this.y=n,this.z=r||0;console.warn("proj4.Point will be removed in version 3, use proj4.toPoint")}wn.fromMGRS=function(t){return new wn(zh(t))},wn.prototype.toMGRS=function(t){return Gh([this.x,this.y],t)};var ju=1,Zu=.25,Zh=.046875,qh=.01953125,Hh=.01068115234375,qu=.75,Hu=.46875,Vu=.013020833333333334,$u=.007120768229166667,Ku=.3645833333333333,Wu=.005696614583333333,Xu=.3076171875;function jr(t){var n=[];n[0]=ju-t*(Zu+t*(Zh+t*(qh+t*Hh))),n[1]=t*(qu-t*(Zh+t*(qh+t*Hh)));var r=t*t;return n[2]=r*(Hu-t*(Vu+t*$u)),r*=t,n[3]=r*(Ku-t*Wu),n[4]=r*t*Xu,n}function Cn(t,n,r,u){return r*=n,n*=n,u[0]*t-r*(u[1]+n*(u[2]+n*(u[3]+n*u[4])))}var Yu=20;function Zr(t,n,r){for(var u=1/(1-n),d=t,f=Yu;f;--f){var p=Math.sin(d),g=1-n*p*p;if(g=(Cn(d,p,Math.cos(d),r)-t)*(g*Math.sqrt(g))*u,d-=g,Math.abs(g)<dt)return d}return d}function Ju(){this.x0=this.x0!==void 0?this.x0:0,this.y0=this.y0!==void 0?this.y0:0,this.long0=this.long0!==void 0?this.long0:0,this.lat0=this.lat0!==void 0?this.lat0:0,this.es&&(this.en=jr(this.es),this.ml0=Cn(this.lat0,Math.sin(this.lat0),Math.cos(this.lat0),this.en))}function Qu(t){var n=t.x,r=t.y,u=_t(n-this.long0),d,f,p,g=Math.sin(r),M=Math.cos(r);if(this.es){var E=M*u,x=Math.pow(E,2),C=this.ep2*Math.pow(M,2),T=Math.pow(C,2),G=Math.abs(M)>dt?Math.tan(r):0,j=Math.pow(G,2),W=Math.pow(j,2);d=1-this.es*Math.pow(g,2),E=E/Math.sqrt(d);var at=Cn(r,g,M,this.en);f=this.a*(this.k0*E*(1+x/6*(1-j+C+x/20*(5-18*j+W+14*C-58*j*C+x/42*(61+179*W-W*j-479*j)))))+this.x0,p=this.a*(this.k0*(at-this.ml0+g*u*E/2*(1+x/12*(5-j+9*C+4*T+x/30*(61+W-58*j+270*C-330*j*C+x/56*(1385+543*W-W*j-3111*j))))))+this.y0}else{var B=M*Math.sin(u);if(Math.abs(Math.abs(B)-1)<dt)return 93;if(f=.5*this.a*this.k0*Math.log((1+B)/(1-B))+this.x0,p=M*Math.cos(u)/Math.sqrt(1-Math.pow(B,2)),B=Math.abs(p),B>=1){if(B-1>dt)return 93;p=0}else p=Math.acos(p);r<0&&(p=-p),p=this.a*this.k0*(p-this.lat0)+this.y0}return t.x=f,t.y=p,t}function tc(t){var n,r,u,d,f=(t.x-this.x0)*(1/this.a),p=(t.y-this.y0)*(1/this.a);if(this.es)if(n=this.ml0+p/this.k0,r=Zr(n,this.es,this.en),Math.abs(r)<ut){var x=Math.sin(r),C=Math.cos(r),T=Math.abs(C)>dt?Math.tan(r):0,G=this.ep2*Math.pow(C,2),j=Math.pow(G,2),W=Math.pow(T,2),at=Math.pow(W,2);n=1-this.es*Math.pow(x,2);var rt=f*Math.sqrt(n)/this.k0,ct=Math.pow(rt,2);n=n*T,u=r-n*ct/(1-this.es)*.5*(1-ct/12*(5+3*W-9*G*W+G-4*j-ct/30*(61+90*W-252*G*W+45*at+46*G-ct/56*(1385+3633*W+4095*at+1574*at*W)))),d=_t(this.long0+rt*(1-ct/6*(1+2*W+G-ct/20*(5+28*W+24*at+8*G*W+6*G-ct/42*(61+662*W+1320*at+720*at*W))))/C)}else u=ut*cs(p),d=0;else{var g=Math.exp(f/this.k0),M=.5*(g-1/g),B=this.lat0+p/this.k0,E=Math.cos(B);n=Math.sqrt((1-Math.pow(E,2))/(1+Math.pow(M,2))),u=Math.asin(n),p<0&&(u=-u),M===0&&E===0?d=0:d=_t(Math.atan2(M,E)+this.long0)}return t.x=d,t.y=u,t}var ec=["Fast_Transverse_Mercator","Fast Transverse Mercator"];const va={init:Ju,forward:Qu,inverse:tc,names:ec};function Vh(t){var n=Math.exp(t);return n=(n-1/n)/2,n}function ze(t,n){t=Math.abs(t),n=Math.abs(n);var r=Math.max(t,n),u=Math.min(t,n)/(r||1);return r*Math.sqrt(1+Math.pow(u,2))}function ic(t){var n=1+t,r=n-1;return r===0?t:t*Math.log(n)/r}function nc(t){var n=Math.abs(t);return n=ic(n*(1+n/(ze(1,n)+1))),t<0?-n:n}function qr(t,n){for(var r=2*Math.cos(2*n),u=t.length-1,d=t[u],f=0,p;--u>=0;)p=-f+r*d+t[u],f=d,d=p;return n+p*Math.sin(2*n)}function sc(t,n){for(var r=2*Math.cos(n),u=t.length-1,d=t[u],f=0,p;--u>=0;)p=-f+r*d+t[u],f=d,d=p;return Math.sin(n)*p}function ac(t){var n=Math.exp(t);return n=(n+1/n)/2,n}function $h(t,n,r){for(var u=Math.sin(n),d=Math.cos(n),f=Vh(r),p=ac(r),g=2*d*p,M=-2*u*f,B=t.length-1,E=t[B],x=0,C=0,T=0,G,j;--B>=0;)G=C,j=x,C=E,x=T,E=-G+g*C-M*x+t[B],T=-j+M*C+g*x;return g=u*p,M=d*f,[g*E-M*T,g*T+M*E]}function rc(){if(!this.approx&&(isNaN(this.es)||this.es<=0))throw new Error('Incorrect elliptical usage. Try using the +approx option in the proj string, or PROJECTION["Fast_Transverse_Mercator"] in the WKT.');this.approx&&(va.init.apply(this),this.forward=va.forward,this.inverse=va.inverse),this.x0=this.x0!==void 0?this.x0:0,this.y0=this.y0!==void 0?this.y0:0,this.long0=this.long0!==void 0?this.long0:0,this.lat0=this.lat0!==void 0?this.lat0:0,this.cgb=[],this.cbg=[],this.utg=[],this.gtu=[];var t=this.es/(1+Math.sqrt(1-this.es)),n=t/(2-t),r=n;this.cgb[0]=n*(2+n*(-2/3+n*(-2+n*(116/45+n*(26/45+n*(-2854/675)))))),this.cbg[0]=n*(-2+n*(2/3+n*(4/3+n*(-82/45+n*(32/45+n*(4642/4725)))))),r=r*n,this.cgb[1]=r*(7/3+n*(-8/5+n*(-227/45+n*(2704/315+n*(2323/945))))),this.cbg[1]=r*(5/3+n*(-16/15+n*(-13/9+n*(904/315+n*(-1522/945))))),r=r*n,this.cgb[2]=r*(56/15+n*(-136/35+n*(-1262/105+n*(73814/2835)))),this.cbg[2]=r*(-26/15+n*(34/21+n*(8/5+n*(-12686/2835)))),r=r*n,this.cgb[3]=r*(4279/630+n*(-332/35+n*(-399572/14175))),this.cbg[3]=r*(1237/630+n*(-12/5+n*(-24832/14175))),r=r*n,this.cgb[4]=r*(4174/315+n*(-144838/6237)),this.cbg[4]=r*(-734/315+n*(109598/31185)),r=r*n,this.cgb[5]=r*(601676/22275),this.cbg[5]=r*(444337/155925),r=Math.pow(n,2),this.Qn=this.k0/(1+n)*(1+r*(1/4+r*(1/64+r/256))),this.utg[0]=n*(-.5+n*(2/3+n*(-37/96+n*(1/360+n*(81/512+n*(-96199/604800)))))),this.gtu[0]=n*(.5+n*(-2/3+n*(5/16+n*(41/180+n*(-127/288+n*(7891/37800)))))),this.utg[1]=r*(-1/48+n*(-1/15+n*(437/1440+n*(-46/105+n*(1118711/3870720))))),this.gtu[1]=r*(13/48+n*(-3/5+n*(557/1440+n*(281/630+n*(-1983433/1935360))))),r=r*n,this.utg[2]=r*(-17/480+n*(37/840+n*(209/4480+n*(-5569/90720)))),this.gtu[2]=r*(61/240+n*(-103/140+n*(15061/26880+n*(167603/181440)))),r=r*n,this.utg[3]=r*(-4397/161280+n*(11/504+n*(830251/7257600))),this.gtu[3]=r*(49561/161280+n*(-179/168+n*(6601661/7257600))),r=r*n,this.utg[4]=r*(-4583/161280+n*(108847/3991680)),this.gtu[4]=r*(34729/80640+n*(-3418889/1995840)),r=r*n,this.utg[5]=r*(-20648693/638668800),this.gtu[5]=r*(212378941/319334400);var u=qr(this.cbg,this.lat0);this.Zb=-this.Qn*(u+sc(this.gtu,2*u))}function oc(t){var n=_t(t.x-this.long0),r=t.y;r=qr(this.cbg,r);var u=Math.sin(r),d=Math.cos(r),f=Math.sin(n),p=Math.cos(n);r=Math.atan2(u,p*d),n=Math.atan2(f*d,ze(u,d*p)),n=nc(Math.tan(n));var g=$h(this.gtu,2*r,2*n);r=r+g[0],n=n+g[1];var M,B;return Math.abs(n)<=2.623395162778?(M=this.a*(this.Qn*n)+this.x0,B=this.a*(this.Qn*r+this.Zb)+this.y0):(M=1/0,B=1/0),t.x=M,t.y=B,t}function hc(t){var n=(t.x-this.x0)*(1/this.a),r=(t.y-this.y0)*(1/this.a);r=(r-this.Zb)/this.Qn,n=n/this.Qn;var u,d;if(Math.abs(n)<=2.623395162778){var f=$h(this.utg,2*r,2*n);r=r+f[0],n=n+f[1],n=Math.atan(Vh(n));var p=Math.sin(r),g=Math.cos(r),M=Math.sin(n),B=Math.cos(n);r=Math.atan2(p*B,ze(M,B*g)),n=Math.atan2(M,B*g),u=_t(n+this.long0),d=qr(this.cgb,r)}else u=1/0,d=1/0;return t.x=u,t.y=d,t}var lc=["Extended_Transverse_Mercator","Extended Transverse Mercator","etmerc","Transverse_Mercator","Transverse Mercator","Gauss Kruger","Gauss_Kruger","tmerc"];const Ma={init:rc,forward:oc,inverse:hc,names:lc};function uc(t,n){if(t===void 0){if(t=Math.floor((_t(n)+Math.PI)*30/Math.PI)+1,t<0)return 0;if(t>60)return 60}return t}var cc="etmerc";function dc(){var t=uc(this.zone,this.long0);if(t===void 0)throw new Error("unknown utm zone");this.lat0=0,this.long0=(6*Math.abs(t)-183)*ye,this.x0=5e5,this.y0=this.utmSouth?1e7:0,this.k0=.9996,Ma.init.apply(this),this.forward=Ma.forward,this.inverse=Ma.inverse}var fc=["Universal Transverse Mercator System","utm"];const pc={init:dc,names:fc,dependsOn:cc};function Hr(t,n){return Math.pow((1-t)/(1+t),n)}var _c=20;function mc(){var t=Math.sin(this.lat0),n=Math.cos(this.lat0);n*=n,this.rc=Math.sqrt(1-this.es)/(1-this.es*t*t),this.C=Math.sqrt(1+this.es*n*n/(1-this.es)),this.phic0=Math.asin(t/this.C),this.ratexp=.5*this.C*this.e,this.K=Math.tan(.5*this.phic0+Zt)/(Math.pow(Math.tan(.5*this.lat0+Zt),this.C)*Hr(this.e*t,this.ratexp))}function gc(t){var n=t.x,r=t.y;return t.y=2*Math.atan(this.K*Math.pow(Math.tan(.5*r+Zt),this.C)*Hr(this.e*Math.sin(r),this.ratexp))-ut,t.x=this.C*n,t}function yc(t){for(var n=1e-14,r=t.x/this.C,u=t.y,d=Math.pow(Math.tan(.5*u+Zt)/this.K,1/this.C),f=_c;f>0&&(u=2*Math.atan(d*Hr(this.e*Math.sin(t.y),-.5*this.e))-ut,!(Math.abs(u-t.y)<n));--f)t.y=u;return f?(t.x=r,t.y=u,t):null}const Vr={init:mc,forward:gc,inverse:yc};function Ac(){Vr.init.apply(this),this.rc&&(this.sinc0=Math.sin(this.phic0),this.cosc0=Math.cos(this.phic0),this.R2=2*this.rc,this.title||(this.title="Oblique Stereographic Alternative"))}function vc(t){var n,r,u,d;return t.x=_t(t.x-this.long0),Vr.forward.apply(this,[t]),n=Math.sin(t.y),r=Math.cos(t.y),u=Math.cos(t.x),d=this.k0*this.R2/(1+this.sinc0*n+this.cosc0*r*u),t.x=d*r*Math.sin(t.x),t.y=d*(this.cosc0*n-this.sinc0*r*u),t.x=this.a*t.x+this.x0,t.y=this.a*t.y+this.y0,t}function Mc(t){var n,r,u,d,f;if(t.x=(t.x-this.x0)/this.a,t.y=(t.y-this.y0)/this.a,t.x/=this.k0,t.y/=this.k0,f=ze(t.x,t.y)){var p=2*Math.atan2(f,this.R2);n=Math.sin(p),r=Math.cos(p),d=Math.asin(r*this.sinc0+t.y*n*this.cosc0/f),u=Math.atan2(t.x*n,f*this.cosc0*r-t.y*this.sinc0*n)}else d=this.phic0,u=0;return t.x=u,t.y=d,Vr.inverse.apply(this,[t]),t.x=_t(t.x+this.long0),t}var xc=["Stereographic_North_Pole","Oblique_Stereographic","sterea","Oblique Stereographic Alternative","Double_Stereographic"];const Lc={init:Ac,forward:vc,inverse:Mc,names:xc};function $r(t,n,r){return n*=r,Math.tan(.5*(ut+t))*Math.pow((1-n)/(1+n),.5*r)}function bc(){this.x0=this.x0||0,this.y0=this.y0||0,this.lat0=this.lat0||0,this.long0=this.long0||0,this.coslat0=Math.cos(this.lat0),this.sinlat0=Math.sin(this.lat0),this.sphere?this.k0===1&&!isNaN(this.lat_ts)&&Math.abs(this.coslat0)<=dt&&(this.k0=.5*(1+cs(this.lat0)*Math.sin(this.lat_ts))):(Math.abs(this.coslat0)<=dt&&(this.lat0>0?this.con=1:this.con=-1),this.cons=Math.sqrt(Math.pow(1+this.e,1+this.e)*Math.pow(1-this.e,1-this.e)),this.k0===1&&!isNaN(this.lat_ts)&&Math.abs(this.coslat0)<=dt&&Math.abs(Math.cos(this.lat_ts))>dt&&(this.k0=.5*this.cons*ci(this.e,Math.sin(this.lat_ts),Math.cos(this.lat_ts))/ii(this.e,this.con*this.lat_ts,this.con*Math.sin(this.lat_ts))),this.ms1=ci(this.e,this.sinlat0,this.coslat0),this.X0=2*Math.atan($r(this.lat0,this.sinlat0,this.e))-ut,this.cosX0=Math.cos(this.X0),this.sinX0=Math.sin(this.X0))}function wc(t){var n=t.x,r=t.y,u=Math.sin(r),d=Math.cos(r),f,p,g,M,B,E,x=_t(n-this.long0);return Math.abs(Math.abs(n-this.long0)-Math.PI)<=dt&&Math.abs(r+this.lat0)<=dt?(t.x=NaN,t.y=NaN,t):this.sphere?(f=2*this.k0/(1+this.sinlat0*u+this.coslat0*d*Math.cos(x)),t.x=this.a*f*d*Math.sin(x)+this.x0,t.y=this.a*f*(this.coslat0*u-this.sinlat0*d*Math.cos(x))+this.y0,t):(p=2*Math.atan($r(r,u,this.e))-ut,M=Math.cos(p),g=Math.sin(p),Math.abs(this.coslat0)<=dt?(B=ii(this.e,r*this.con,this.con*u),E=2*this.a*this.k0*B/this.cons,t.x=this.x0+E*Math.sin(n-this.long0),t.y=this.y0-this.con*E*Math.cos(n-this.long0),t):(Math.abs(this.sinlat0)<dt?(f=2*this.a*this.k0/(1+M*Math.cos(x)),t.y=f*g):(f=2*this.a*this.k0*this.ms1/(this.cosX0*(1+this.sinX0*g+this.cosX0*M*Math.cos(x))),t.y=f*(this.cosX0*g-this.sinX0*M*Math.cos(x))+this.y0),t.x=f*M*Math.sin(x)+this.x0,t))}function Cc(t){t.x-=this.x0,t.y-=this.y0;var n,r,u,d,f,p=Math.sqrt(t.x*t.x+t.y*t.y);if(this.sphere){var g=2*Math.atan(p/(2*this.a*this.k0));return n=this.long0,r=this.lat0,p<=dt?(t.x=n,t.y=r,t):(r=Math.asin(Math.cos(g)*this.sinlat0+t.y*Math.sin(g)*this.coslat0/p),Math.abs(this.coslat0)<dt?this.lat0>0?n=_t(this.long0+Math.atan2(t.x,-1*t.y)):n=_t(this.long0+Math.atan2(t.x,t.y)):n=_t(this.long0+Math.atan2(t.x*Math.sin(g),p*this.coslat0*Math.cos(g)-t.y*this.sinlat0*Math.sin(g))),t.x=n,t.y=r,t)}else if(Math.abs(this.coslat0)<=dt){if(p<=dt)return r=this.lat0,n=this.long0,t.x=n,t.y=r,t;t.x*=this.con,t.y*=this.con,u=p*this.cons/(2*this.a*this.k0),r=this.con*ds(this.e,u),n=this.con*_t(this.con*this.long0+Math.atan2(t.x,-1*t.y))}else d=2*Math.atan(p*this.cosX0/(2*this.a*this.k0*this.ms1)),n=this.long0,p<=dt?f=this.X0:(f=Math.asin(Math.cos(d)*this.sinX0+t.y*Math.sin(d)*this.cosX0/p),n=_t(this.long0+Math.atan2(t.x*Math.sin(d),p*this.cosX0*Math.cos(d)-t.y*this.sinX0*Math.sin(d)))),r=-1*ds(this.e,Math.tan(.5*(ut+f)));return t.x=n,t.y=r,t}var Ec=["stere","Stereographic_South_Pole","Polar_Stereographic_variant_A","Polar_Stereographic_variant_B","Polar_Stereographic"];const Pc={init:bc,forward:wc,inverse:Cc,names:Ec,ssfn_:$r};function kc(){var t=this.lat0;this.lambda0=this.long0;var n=Math.sin(t),r=this.a,u=this.rf,d=1/u,f=2*d-Math.pow(d,2),p=this.e=Math.sqrt(f);this.R=this.k0*r*Math.sqrt(1-f)/(1-f*Math.pow(n,2)),this.alpha=Math.sqrt(1+f/(1-f)*Math.pow(Math.cos(t),4)),this.b0=Math.asin(n/this.alpha);var g=Math.log(Math.tan(Math.PI/4+this.b0/2)),M=Math.log(Math.tan(Math.PI/4+t/2)),B=Math.log((1+p*n)/(1-p*n));this.K=g-this.alpha*M+this.alpha*p/2*B}function Sc(t){var n=Math.log(Math.tan(Math.PI/4-t.y/2)),r=this.e/2*Math.log((1+this.e*Math.sin(t.y))/(1-this.e*Math.sin(t.y))),u=-this.alpha*(n+r)+this.K,d=2*(Math.atan(Math.exp(u))-Math.PI/4),f=this.alpha*(t.x-this.lambda0),p=Math.atan(Math.sin(f)/(Math.sin(this.b0)*Math.tan(d)+Math.cos(this.b0)*Math.cos(f))),g=Math.asin(Math.cos(this.b0)*Math.sin(d)-Math.sin(this.b0)*Math.cos(d)*Math.cos(f));return t.y=this.R/2*Math.log((1+Math.sin(g))/(1-Math.sin(g)))+this.y0,t.x=this.R*p+this.x0,t}function Bc(t){for(var n=t.x-this.x0,r=t.y-this.y0,u=n/this.R,d=2*(Math.atan(Math.exp(r/this.R))-Math.PI/4),f=Math.asin(Math.cos(this.b0)*Math.sin(d)+Math.sin(this.b0)*Math.cos(d)*Math.cos(u)),p=Math.atan(Math.sin(u)/(Math.cos(this.b0)*Math.cos(u)-Math.sin(this.b0)*Math.tan(d))),g=this.lambda0+p/this.alpha,M=0,B=f,E=-1e3,x=0;Math.abs(B-E)>1e-7;){if(++x>20)return;M=1/this.alpha*(Math.log(Math.tan(Math.PI/4+f/2))-this.K)+this.e*Math.log(Math.tan(Math.PI/4+Math.asin(this.e*Math.sin(B))/2)),E=B,B=2*Math.atan(Math.exp(M))-Math.PI/2}return t.x=g,t.y=B,t}var Tc=["somerc"];const Dc={init:kc,forward:Sc,inverse:Bc,names:Tc};var En=1e-7;function Oc(t){var n=["Hotine_Oblique_Mercator","Hotine_Oblique_Mercator_variant_A","Hotine_Oblique_Mercator_Azimuth_Natural_Origin"],r=typeof t.projName=="object"?Object.keys(t.projName)[0]:t.projName;return"no_uoff"in t||"no_off"in t||n.indexOf(r)!==-1||n.indexOf(bh(r))!==-1}function Ic(){var t,n,r,u,d,f,p,g,M,B,E=0,x,C=0,T=0,G=0,j=0,W=0,at=0;this.no_off=Oc(this),this.no_rot="no_rot"in this;var rt=!1;"alpha"in this&&(rt=!0);var ct=!1;if("rectified_grid_angle"in this&&(ct=!0),rt&&(at=this.alpha),ct&&(E=this.rectified_grid_angle),rt||ct)C=this.longc;else if(T=this.long1,j=this.lat1,G=this.long2,W=this.lat2,Math.abs(j-W)<=En||(t=Math.abs(j))<=En||Math.abs(t-ut)<=En||Math.abs(Math.abs(this.lat0)-ut)<=En||Math.abs(Math.abs(W)-ut)<=En)throw new Error;var yt=1-this.es;n=Math.sqrt(yt),Math.abs(this.lat0)>dt?(g=Math.sin(this.lat0),r=Math.cos(this.lat0),t=1-this.es*g*g,this.B=r*r,this.B=Math.sqrt(1+this.es*this.B*this.B/yt),this.A=this.B*this.k0*n/t,u=this.B*n/(r*Math.sqrt(t)),d=u*u-1,d<=0?d=0:(d=Math.sqrt(d),this.lat0<0&&(d=-d)),this.E=d+=u,this.E*=Math.pow(ii(this.e,this.lat0,g),this.B)):(this.B=1/n,this.A=this.k0,this.E=u=d=1),rt||ct?(rt?(x=Math.asin(Math.sin(at)/u),ct||(E=at)):(x=E,at=Math.asin(u*Math.sin(x))),this.lam0=C-Math.asin(.5*(d-1/d)*Math.tan(x))/this.B):(f=Math.pow(ii(this.e,j,Math.sin(j)),this.B),p=Math.pow(ii(this.e,W,Math.sin(W)),this.B),d=this.E/f,M=(p-f)/(p+f),B=this.E*this.E,B=(B-p*f)/(B+p*f),t=T-G,t<-Math.PI?G-=ls:t>Math.PI&&(G+=ls),this.lam0=_t(.5*(T+G)-Math.atan(B*Math.tan(.5*this.B*(T-G))/M)/this.B),x=Math.atan(2*Math.sin(this.B*_t(T-this.lam0))/(d-1/d)),E=at=Math.asin(u*Math.sin(x))),this.singam=Math.sin(x),this.cosgam=Math.cos(x),this.sinrot=Math.sin(E),this.cosrot=Math.cos(E),this.rB=1/this.B,this.ArB=this.A*this.rB,this.BrA=1/this.ArB,this.no_off?this.u_0=0:(this.u_0=Math.abs(this.ArB*Math.atan(Math.sqrt(u*u-1)/Math.cos(at))),this.lat0<0&&(this.u_0=-this.u_0)),d=.5*x,this.v_pole_n=this.ArB*Math.log(Math.tan(Zt-d)),this.v_pole_s=this.ArB*Math.log(Math.tan(Zt+d))}function Rc(t){var n={},r,u,d,f,p,g,M,B;if(t.x=t.x-this.lam0,Math.abs(Math.abs(t.y)-ut)>dt){if(p=this.E/Math.pow(ii(this.e,t.y,Math.sin(t.y)),this.B),g=1/p,r=.5*(p-g),u=.5*(p+g),f=Math.sin(this.B*t.x),d=(r*this.singam-f*this.cosgam)/u,Math.abs(Math.abs(d)-1)<dt)throw new Error;B=.5*this.ArB*Math.log((1-d)/(1+d)),g=Math.cos(this.B*t.x),Math.abs(g)<En?M=this.A*t.x:M=this.ArB*Math.atan2(r*this.cosgam+f*this.singam,g)}else B=t.y>0?this.v_pole_n:this.v_pole_s,M=this.ArB*t.y;return this.no_rot?(n.x=M,n.y=B):(M-=this.u_0,n.x=B*this.cosrot+M*this.sinrot,n.y=M*this.cosrot-B*this.sinrot),n.x=this.a*n.x+this.x0,n.y=this.a*n.y+this.y0,n}function Fc(t){var n,r,u,d,f,p,g,M={};if(t.x=(t.x-this.x0)*(1/this.a),t.y=(t.y-this.y0)*(1/this.a),this.no_rot?(r=t.y,n=t.x):(r=t.x*this.cosrot-t.y*this.sinrot,n=t.y*this.cosrot+t.x*this.sinrot+this.u_0),u=Math.exp(-this.BrA*r),d=.5*(u-1/u),f=.5*(u+1/u),p=Math.sin(this.BrA*n),g=(p*this.cosgam+d*this.singam)/f,Math.abs(Math.abs(g)-1)<dt)M.x=0,M.y=g<0?-ut:ut;else{if(M.y=this.E/Math.sqrt((1+g)/(1-g)),M.y=ds(this.e,Math.pow(M.y,1/this.B)),M.y===1/0)throw new Error;M.x=-this.rB*Math.atan2(d*this.cosgam-p*this.singam,Math.cos(this.BrA*n))}return M.x+=this.lam0,M}var Gc=["Hotine_Oblique_Mercator","Hotine Oblique Mercator","Hotine_Oblique_Mercator_variant_A","Hotine_Oblique_Mercator_Variant_B","Hotine_Oblique_Mercator_Azimuth_Natural_Origin","Hotine_Oblique_Mercator_Two_Point_Natural_Origin","Hotine_Oblique_Mercator_Azimuth_Center","Oblique_Mercator","omerc"];const zc={init:Ic,forward:Rc,inverse:Fc,names:Gc};function Nc(){if(this.lat2||(this.lat2=this.lat1),this.k0||(this.k0=1),this.x0=this.x0||0,this.y0=this.y0||0,!(Math.abs(this.lat1+this.lat2)<dt)){var t=this.b/this.a;this.e=Math.sqrt(1-t*t);var n=Math.sin(this.lat1),r=Math.cos(this.lat1),u=ci(this.e,n,r),d=ii(this.e,this.lat1,n),f=Math.sin(this.lat2),p=Math.cos(this.lat2),g=ci(this.e,f,p),M=ii(this.e,this.lat2,f),B=Math.abs(Math.abs(this.lat0)-ut)<dt?0:ii(this.e,this.lat0,Math.sin(this.lat0));Math.abs(this.lat1-this.lat2)>dt?this.ns=Math.log(u/g)/Math.log(d/M):this.ns=n,isNaN(this.ns)&&(this.ns=n),this.f0=u/(this.ns*Math.pow(d,this.ns)),this.rh=this.a*this.f0*Math.pow(B,this.ns),this.title||(this.title="Lambert Conformal Conic")}}function Uc(t){var n=t.x,r=t.y;Math.abs(2*Math.abs(r)-Math.PI)<=dt&&(r=cs(r)*(ut-2*dt));var u=Math.abs(Math.abs(r)-ut),d,f;if(u>dt)d=ii(this.e,r,Math.sin(r)),f=this.a*this.f0*Math.pow(d,this.ns);else{if(u=r*this.ns,u<=0)return null;f=0}var p=this.ns*_t(n-this.long0);return t.x=this.k0*(f*Math.sin(p))+this.x0,t.y=this.k0*(this.rh-f*Math.cos(p))+this.y0,t}function jc(t){var n,r,u,d,f,p=(t.x-this.x0)/this.k0,g=this.rh-(t.y-this.y0)/this.k0;this.ns>0?(n=Math.sqrt(p*p+g*g),r=1):(n=-Math.sqrt(p*p+g*g),r=-1);var M=0;if(n!==0&&(M=Math.atan2(r*p,r*g)),n!==0||this.ns>0){if(r=1/this.ns,u=Math.pow(n/(this.a*this.f0),r),d=ds(this.e,u),d===-9999)return null}else d=-ut;return f=_t(M/this.ns+this.long0),t.x=f,t.y=d,t}var Zc=["Lambert Tangential Conformal Conic Projection","Lambert_Conformal_Conic","Lambert_Conformal_Conic_1SP","Lambert_Conformal_Conic_2SP","lcc","Lambert Conic Conformal (1SP)","Lambert Conic Conformal (2SP)"];const qc={init:Nc,forward:Uc,inverse:jc,names:Zc};function Hc(){this.a=6377397155e-3,this.es=.006674372230614,this.e=Math.sqrt(this.es),this.lat0||(this.lat0=.863937979737193),this.long0||(this.long0=.7417649320975901-.308341501185665),this.k0||(this.k0=.9999),this.s45=.785398163397448,this.s90=2*this.s45,this.fi0=this.lat0,this.e2=this.es,this.e=Math.sqrt(this.e2),this.alfa=Math.sqrt(1+this.e2*Math.pow(Math.cos(this.fi0),4)/(1-this.e2)),this.uq=1.04216856380474,this.u0=Math.asin(Math.sin(this.fi0)/this.alfa),this.g=Math.pow((1+this.e*Math.sin(this.fi0))/(1-this.e*Math.sin(this.fi0)),this.alfa*this.e/2),this.k=Math.tan(this.u0/2+this.s45)/Math.pow(Math.tan(this.fi0/2+this.s45),this.alfa)*this.g,this.k1=this.k0,this.n0=this.a*Math.sqrt(1-this.e2)/(1-this.e2*Math.pow(Math.sin(this.fi0),2)),this.s0=1.37008346281555,this.n=Math.sin(this.s0),this.ro0=this.k1*this.n0/Math.tan(this.s0),this.ad=this.s90-this.uq}function Vc(t){var n,r,u,d,f,p,g,M=t.x,B=t.y,E=_t(M-this.long0);return n=Math.pow((1+this.e*Math.sin(B))/(1-this.e*Math.sin(B)),this.alfa*this.e/2),r=2*(Math.atan(this.k*Math.pow(Math.tan(B/2+this.s45),this.alfa)/n)-this.s45),u=-E*this.alfa,d=Math.asin(Math.cos(this.ad)*Math.sin(r)+Math.sin(this.ad)*Math.cos(r)*Math.cos(u)),f=Math.asin(Math.cos(r)*Math.sin(u)/Math.cos(d)),p=this.n*f,g=this.ro0*Math.pow(Math.tan(this.s0/2+this.s45),this.n)/Math.pow(Math.tan(d/2+this.s45),this.n),t.y=g*Math.cos(p)/1,t.x=g*Math.sin(p)/1,this.czech||(t.y*=-1,t.x*=-1),t}function $c(t){var n,r,u,d,f,p,g,M,B=t.x;t.x=t.y,t.y=B,this.czech||(t.y*=-1,t.x*=-1),p=Math.sqrt(t.x*t.x+t.y*t.y),f=Math.atan2(t.y,t.x),d=f/Math.sin(this.s0),u=2*(Math.atan(Math.pow(this.ro0/p,1/this.n)*Math.tan(this.s0/2+this.s45))-this.s45),n=Math.asin(Math.cos(this.ad)*Math.sin(u)-Math.sin(this.ad)*Math.cos(u)*Math.cos(d)),r=Math.asin(Math.cos(u)*Math.sin(d)/Math.cos(n)),t.x=this.long0-r/this.alfa,g=n,M=0;var E=0;do t.y=2*(Math.atan(Math.pow(this.k,-1/this.alfa)*Math.pow(Math.tan(n/2+this.s45),1/this.alfa)*Math.pow((1+this.e*Math.sin(g))/(1-this.e*Math.sin(g)),this.e/2))-this.s45),Math.abs(g-t.y)<1e-10&&(M=1),g=t.y,E+=1;while(M===0&&E<15);return E>=15?null:t}var Kc=["Krovak","krovak"];const Wc={init:Hc,forward:Vc,inverse:$c,names:Kc};function Te(t,n,r,u,d){return t*d-n*Math.sin(2*d)+r*Math.sin(4*d)-u*Math.sin(6*d)}function _s(t){return 1-.25*t*(1+t/16*(3+1.25*t))}function ms(t){return .375*t*(1+.25*t*(1+.46875*t))}function gs(t){return .05859375*t*t*(1+.75*t)}function ys(t){return t*t*t*(35/3072)}function Kr(t,n,r){var u=n*r;return t/Math.sqrt(1-u*u)}function Ii(t){return Math.abs(t)<ut?t:t-cs(t)*Math.PI}function xa(t,n,r,u,d){var f,p;f=t/n;for(var g=0;g<15;g++)if(p=(t-(n*f-r*Math.sin(2*f)+u*Math.sin(4*f)-d*Math.sin(6*f)))/(n-2*r*Math.cos(2*f)+4*u*Math.cos(4*f)-6*d*Math.cos(6*f)),f+=p,Math.abs(p)<=1e-10)return f;return NaN}function Xc(){this.sphere||(this.e0=_s(this.es),this.e1=ms(this.es),this.e2=gs(this.es),this.e3=ys(this.es),this.ml0=this.a*Te(this.e0,this.e1,this.e2,this.e3,this.lat0))}function Yc(t){var n,r,u=t.x,d=t.y;if(u=_t(u-this.long0),this.sphere)n=this.a*Math.asin(Math.cos(d)*Math.sin(u)),r=this.a*(Math.atan2(Math.tan(d),Math.cos(u))-this.lat0);else{var f=Math.sin(d),p=Math.cos(d),g=Kr(this.a,this.e,f),M=Math.tan(d)*Math.tan(d),B=u*Math.cos(d),E=B*B,x=this.es*p*p/(1-this.es),C=this.a*Te(this.e0,this.e1,this.e2,this.e3,d);n=g*B*(1-E*M*(1/6-(8-M+8*x)*E/120)),r=C-this.ml0+g*f/p*E*(.5+(5-M+6*x)*E/24)}return t.x=n+this.x0,t.y=r+this.y0,t}function Jc(t){t.x-=this.x0,t.y-=this.y0;var n=t.x/this.a,r=t.y/this.a,u,d;if(this.sphere){var f=r+this.lat0;u=Math.asin(Math.sin(f)*Math.cos(n)),d=Math.atan2(Math.tan(n),Math.cos(f))}else{var p=this.ml0/this.a+r,g=xa(p,this.e0,this.e1,this.e2,this.e3);if(Math.abs(Math.abs(g)-ut)<=dt)return t.x=this.long0,t.y=ut,r<0&&(t.y*=-1),t;var M=Kr(this.a,this.e,Math.sin(g)),B=M*M*M/this.a/this.a*(1-this.es),E=Math.pow(Math.tan(g),2),x=n*this.a/M,C=x*x;u=g-M*Math.tan(g)/B*x*x*(.5-(1+3*E)*x*x/24),d=x*(1-C*(E/3+(1+3*E)*E*C/15))/Math.cos(g)}return t.x=_t(d+this.long0),t.y=Ii(u),t}var Qc=["Cassini","Cassini_Soldner","cass"];const td={init:Xc,forward:Yc,inverse:Jc,names:Qc};function Ri(t,n){var r;return t>1e-7?(r=t*n,(1-t*t)*(n/(1-r*r)-.5/t*Math.log((1-r)/(1+r)))):2*n}var Wr=1,Xr=2,Yr=3,La=4;function ed(){var t=Math.abs(this.lat0);if(Math.abs(t-ut)<dt?this.mode=this.lat0<0?Wr:Xr:Math.abs(t)<dt?this.mode=Yr:this.mode=La,this.es>0){var n;switch(this.qp=Ri(this.e,1),this.mmf=.5/(1-this.es),this.apa=ud(this.es),this.mode){case Xr:this.dd=1;break;case Wr:this.dd=1;break;case Yr:this.rq=Math.sqrt(.5*this.qp),this.dd=1/this.rq,this.xmf=1,this.ymf=.5*this.qp;break;case La:this.rq=Math.sqrt(.5*this.qp),n=Math.sin(this.lat0),this.sinb1=Ri(this.e,n)/this.qp,this.cosb1=Math.sqrt(1-this.sinb1*this.sinb1),this.dd=Math.cos(this.lat0)/(Math.sqrt(1-this.es*n*n)*this.rq*this.cosb1),this.ymf=(this.xmf=this.rq)/this.dd,this.xmf*=this.dd;break}}else this.mode===La&&(this.sinph0=Math.sin(this.lat0),this.cosph0=Math.cos(this.lat0))}function id(t){var n,r,u,d,f,p,g,M,B,E,x=t.x,C=t.y;if(x=_t(x-this.long0),this.sphere){if(f=Math.sin(C),E=Math.cos(C),u=Math.cos(x),this.mode===this.OBLIQ||this.mode===this.EQUIT){if(r=this.mode===this.EQUIT?1+E*u:1+this.sinph0*f+this.cosph0*E*u,r<=dt)return null;r=Math.sqrt(2/r),n=r*E*Math.sin(x),r*=this.mode===this.EQUIT?f:this.cosph0*f-this.sinph0*E*u}else if(this.mode===this.N_POLE||this.mode===this.S_POLE){if(this.mode===this.N_POLE&&(u=-u),Math.abs(C+this.lat0)<dt)return null;r=Zt-C*.5,r=2*(this.mode===this.S_POLE?Math.cos(r):Math.sin(r)),n=r*Math.sin(x),r*=u}}else{switch(g=0,M=0,B=0,u=Math.cos(x),d=Math.sin(x),f=Math.sin(C),p=Ri(this.e,f),(this.mode===this.OBLIQ||this.mode===this.EQUIT)&&(g=p/this.qp,M=Math.sqrt(1-g*g)),this.mode){case this.OBLIQ:B=1+this.sinb1*g+this.cosb1*M*u;break;case this.EQUIT:B=1+M*u;break;case this.N_POLE:B=ut+C,p=this.qp-p;break;case this.S_POLE:B=C-ut,p=this.qp+p;break}if(Math.abs(B)<dt)return null;switch(this.mode){case this.OBLIQ:case this.EQUIT:B=Math.sqrt(2/B),this.mode===this.OBLIQ?r=this.ymf*B*(this.cosb1*g-this.sinb1*M*u):r=(B=Math.sqrt(2/(1+M*u)))*g*this.ymf,n=this.xmf*B*M*d;break;case this.N_POLE:case this.S_POLE:p>=0?(n=(B=Math.sqrt(p))*d,r=u*(this.mode===this.S_POLE?B:-B)):n=r=0;break}}return t.x=this.a*n+this.x0,t.y=this.a*r+this.y0,t}function nd(t){t.x-=this.x0,t.y-=this.y0;var n=t.x/this.a,r=t.y/this.a,u,d,f,p,g,M,B;if(this.sphere){var E=0,x,C=0;if(x=Math.sqrt(n*n+r*r),d=x*.5,d>1)return null;switch(d=2*Math.asin(d),(this.mode===this.OBLIQ||this.mode===this.EQUIT)&&(C=Math.sin(d),E=Math.cos(d)),this.mode){case this.EQUIT:d=Math.abs(x)<=dt?0:Math.asin(r*C/x),n*=C,r=E*x;break;case this.OBLIQ:d=Math.abs(x)<=dt?this.lat0:Math.asin(E*this.sinph0+r*C*this.cosph0/x),n*=C*this.cosph0,r=(E-Math.sin(d)*this.sinph0)*x;break;case this.N_POLE:r=-r,d=ut-d;break;case this.S_POLE:d-=ut;break}u=r===0&&(this.mode===this.EQUIT||this.mode===this.OBLIQ)?0:Math.atan2(n,r)}else{if(B=0,this.mode===this.OBLIQ||this.mode===this.EQUIT){if(n/=this.dd,r*=this.dd,M=Math.sqrt(n*n+r*r),M<dt)return t.x=this.long0,t.y=this.lat0,t;p=2*Math.asin(.5*M/this.rq),f=Math.cos(p),n*=p=Math.sin(p),this.mode===this.OBLIQ?(B=f*this.sinb1+r*p*this.cosb1/M,g=this.qp*B,r=M*this.cosb1*f-r*this.sinb1*p):(B=r*p/M,g=this.qp*B,r=M*f)}else if(this.mode===this.N_POLE||this.mode===this.S_POLE){if(this.mode===this.N_POLE&&(r=-r),g=n*n+r*r,!g)return t.x=this.long0,t.y=this.lat0,t;B=1-g/this.qp,this.mode===this.S_POLE&&(B=-B)}u=Math.atan2(n,r),d=cd(Math.asin(B),this.apa)}return t.x=_t(this.long0+u),t.y=d,t}var sd=.3333333333333333,ad=.17222222222222222,rd=.10257936507936508,od=.06388888888888888,hd=.0664021164021164,ld=.016415012942191543;function ud(t){var n,r=[];return r[0]=t*sd,n=t*t,r[0]+=n*ad,r[1]=n*od,n*=t,r[0]+=n*rd,r[1]+=n*hd,r[2]=n*ld,r}function cd(t,n){var r=t+t;return t+n[0]*Math.sin(r)+n[1]*Math.sin(r+r)+n[2]*Math.sin(r+r+r)}var dd=["Lambert Azimuthal Equal Area","Lambert_Azimuthal_Equal_Area","laea"];const fd={init:ed,forward:id,inverse:nd,names:dd,S_POLE:Wr,N_POLE:Xr,EQUIT:Yr,OBLIQ:La};function Fi(t){return Math.abs(t)>1&&(t=t>1?1:-1),Math.asin(t)}function pd(){Math.abs(this.lat1+this.lat2)<dt||(this.temp=this.b/this.a,this.es=1-Math.pow(this.temp,2),this.e3=Math.sqrt(this.es),this.sin_po=Math.sin(this.lat1),this.cos_po=Math.cos(this.lat1),this.t1=this.sin_po,this.con=this.sin_po,this.ms1=ci(this.e3,this.sin_po,this.cos_po),this.qs1=Ri(this.e3,this.sin_po),this.sin_po=Math.sin(this.lat2),this.cos_po=Math.cos(this.lat2),this.t2=this.sin_po,this.ms2=ci(this.e3,this.sin_po,this.cos_po),this.qs2=Ri(this.e3,this.sin_po),this.sin_po=Math.sin(this.lat0),this.cos_po=Math.cos(this.lat0),this.t3=this.sin_po,this.qs0=Ri(this.e3,this.sin_po),Math.abs(this.lat1-this.lat2)>dt?this.ns0=(this.ms1*this.ms1-this.ms2*this.ms2)/(this.qs2-this.qs1):this.ns0=this.con,this.c=this.ms1*this.ms1+this.ns0*this.qs1,this.rh=this.a*Math.sqrt(this.c-this.ns0*this.qs0)/this.ns0)}function _d(t){var n=t.x,r=t.y;this.sin_phi=Math.sin(r),this.cos_phi=Math.cos(r);var u=Ri(this.e3,this.sin_phi),d=this.a*Math.sqrt(this.c-this.ns0*u)/this.ns0,f=this.ns0*_t(n-this.long0),p=d*Math.sin(f)+this.x0,g=this.rh-d*Math.cos(f)+this.y0;return t.x=p,t.y=g,t}function md(t){var n,r,u,d,f,p;return t.x-=this.x0,t.y=this.rh-t.y+this.y0,this.ns0>=0?(n=Math.sqrt(t.x*t.x+t.y*t.y),u=1):(n=-Math.sqrt(t.x*t.x+t.y*t.y),u=-1),d=0,n!==0&&(d=Math.atan2(u*t.x,u*t.y)),u=n*this.ns0/this.a,this.sphere?p=Math.asin((this.c-u*u)/(2*this.ns0)):(r=(this.c-u*u)/this.ns0,p=this.phi1z(this.e3,r)),f=_t(d/this.ns0+this.long0),t.x=f,t.y=p,t}function gd(t,n){var r,u,d,f,p,g=Fi(.5*n);if(t<dt)return g;for(var M=t*t,B=1;B<=25;B++)if(r=Math.sin(g),u=Math.cos(g),d=t*r,f=1-d*d,p=.5*f*f/u*(n/(1-M)-r/f+.5/t*Math.log((1-d)/(1+d))),g=g+p,Math.abs(p)<=1e-7)return g;return null}var yd=["Albers_Conic_Equal_Area","Albers_Equal_Area","Albers","aea"];const Ad={init:pd,forward:_d,inverse:md,names:yd,phi1z:gd};function vd(){this.sin_p14=Math.sin(this.lat0),this.cos_p14=Math.cos(this.lat0),this.infinity_dist=1e3*this.a,this.rc=1}function Md(t){var n,r,u,d,f,p,g,M,B=t.x,E=t.y;return u=_t(B-this.long0),n=Math.sin(E),r=Math.cos(E),d=Math.cos(u),p=this.sin_p14*n+this.cos_p14*r*d,f=1,p>0||Math.abs(p)<=dt?(g=this.x0+this.a*f*r*Math.sin(u)/p,M=this.y0+this.a*f*(this.cos_p14*n-this.sin_p14*r*d)/p):(g=this.x0+this.infinity_dist*r*Math.sin(u),M=this.y0+this.infinity_dist*(this.cos_p14*n-this.sin_p14*r*d)),t.x=g,t.y=M,t}function xd(t){var n,r,u,d,f,p;return t.x=(t.x-this.x0)/this.a,t.y=(t.y-this.y0)/this.a,t.x/=this.k0,t.y/=this.k0,(n=Math.sqrt(t.x*t.x+t.y*t.y))?(d=Math.atan2(n,this.rc),r=Math.sin(d),u=Math.cos(d),p=Fi(u*this.sin_p14+t.y*r*this.cos_p14/n),f=Math.atan2(t.x*r,n*this.cos_p14*u-t.y*this.sin_p14*r),f=_t(this.long0+f)):(p=this.phic0,f=0),t.x=f,t.y=p,t}var Ld=["gnom"];const bd={init:vd,forward:Md,inverse:xd,names:Ld};function wd(t,n){var r=1-(1-t*t)/(2*t)*Math.log((1-t)/(1+t));if(Math.abs(Math.abs(n)-r)<1e-6)return n<0?-1*ut:ut;for(var u=Math.asin(.5*n),d,f,p,g,M=0;M<30;M++)if(f=Math.sin(u),p=Math.cos(u),g=t*f,d=Math.pow(1-g*g,2)/(2*p)*(n/(1-t*t)-f/(1-g*g)+.5/t*Math.log((1-g)/(1+g))),u+=d,Math.abs(d)<=1e-10)return u;return NaN}function Cd(){this.sphere||(this.k0=ci(this.e,Math.sin(this.lat_ts),Math.cos(this.lat_ts)))}function Ed(t){var n=t.x,r=t.y,u,d,f=_t(n-this.long0);if(this.sphere)u=this.x0+this.a*f*Math.cos(this.lat_ts),d=this.y0+this.a*Math.sin(r)/Math.cos(this.lat_ts);else{var p=Ri(this.e,Math.sin(r));u=this.x0+this.a*this.k0*f,d=this.y0+this.a*p*.5/this.k0}return t.x=u,t.y=d,t}function Pd(t){t.x-=this.x0,t.y-=this.y0;var n,r;return this.sphere?(n=_t(this.long0+t.x/this.a/Math.cos(this.lat_ts)),r=Math.asin(t.y/this.a*Math.cos(this.lat_ts))):(r=wd(this.e,2*t.y*this.k0/this.a),n=_t(this.long0+t.x/(this.a*this.k0))),t.x=n,t.y=r,t}var kd=["cea"];const Sd={init:Cd,forward:Ed,inverse:Pd,names:kd};function Bd(){this.x0=this.x0||0,this.y0=this.y0||0,this.lat0=this.lat0||0,this.long0=this.long0||0,this.lat_ts=this.lat_ts||0,this.title=this.title||"Equidistant Cylindrical (Plate Carre)",this.rc=Math.cos(this.lat_ts)}function Td(t){var n=t.x,r=t.y,u=_t(n-this.long0),d=Ii(r-this.lat0);return t.x=this.x0+this.a*u*this.rc,t.y=this.y0+this.a*d,t}function Dd(t){var n=t.x,r=t.y;return t.x=_t(this.long0+(n-this.x0)/(this.a*this.rc)),t.y=Ii(this.lat0+(r-this.y0)/this.a),t}var Od=["Equirectangular","Equidistant_Cylindrical","Equidistant_Cylindrical_Spherical","eqc"];const Id={init:Bd,forward:Td,inverse:Dd,names:Od};var Kh=20;function Rd(){this.temp=this.b/this.a,this.es=1-Math.pow(this.temp,2),this.e=Math.sqrt(this.es),this.e0=_s(this.es),this.e1=ms(this.es),this.e2=gs(this.es),this.e3=ys(this.es),this.ml0=this.a*Te(this.e0,this.e1,this.e2,this.e3,this.lat0)}function Fd(t){var n=t.x,r=t.y,u,d,f,p=_t(n-this.long0);if(f=p*Math.sin(r),this.sphere)Math.abs(r)<=dt?(u=this.a*p,d=-1*this.a*this.lat0):(u=this.a*Math.sin(f)/Math.tan(r),d=this.a*(Ii(r-this.lat0)+(1-Math.cos(f))/Math.tan(r)));else if(Math.abs(r)<=dt)u=this.a*p,d=-1*this.ml0;else{var g=Kr(this.a,this.e,Math.sin(r))/Math.tan(r);u=g*Math.sin(f),d=this.a*Te(this.e0,this.e1,this.e2,this.e3,r)-this.ml0+g*(1-Math.cos(f))}return t.x=u+this.x0,t.y=d+this.y0,t}function Gd(t){var n,r,u,d,f,p,g,M,B;if(u=t.x-this.x0,d=t.y-this.y0,this.sphere)if(Math.abs(d+this.a*this.lat0)<=dt)n=_t(u/this.a+this.long0),r=0;else{p=this.lat0+d/this.a,g=u*u/this.a/this.a+p*p,M=p;var E;for(f=Kh;f;--f)if(E=Math.tan(M),B=-1*(p*(M*E+1)-M-.5*(M*M+g)*E)/((M-p)/E-1),M+=B,Math.abs(B)<=dt){r=M;break}n=_t(this.long0+Math.asin(u*Math.tan(M)/this.a)/Math.sin(r))}else if(Math.abs(d+this.ml0)<=dt)r=0,n=_t(this.long0+u/this.a);else{p=(this.ml0+d)/this.a,g=u*u/this.a/this.a+p*p,M=p;var x,C,T,G,j;for(f=Kh;f;--f)if(j=this.e*Math.sin(M),x=Math.sqrt(1-j*j)*Math.tan(M),C=this.a*Te(this.e0,this.e1,this.e2,this.e3,M),T=this.e0-2*this.e1*Math.cos(2*M)+4*this.e2*Math.cos(4*M)-6*this.e3*Math.cos(6*M),G=C/this.a,B=(p*(x*G+1)-G-.5*x*(G*G+g))/(this.es*Math.sin(2*M)*(G*G+g-2*p*G)/(4*x)+(p-G)*(x*T-2/Math.sin(2*M))-T),M-=B,Math.abs(B)<=dt){r=M;break}x=Math.sqrt(1-this.es*Math.pow(Math.sin(r),2))*Math.tan(r),n=_t(this.long0+Math.asin(u*x/this.a)/Math.sin(r))}return t.x=n,t.y=r,t}var zd=["Polyconic","American_Polyconic","poly"];const Nd={init:Rd,forward:Fd,inverse:Gd,names:zd};function Ud(){this.A=[],this.A[1]=.6399175073,this.A[2]=-.1358797613,this.A[3]=.063294409,this.A[4]=-.02526853,this.A[5]=.0117879,this.A[6]=-.0055161,this.A[7]=.0026906,this.A[8]=-.001333,this.A[9]=67e-5,this.A[10]=-34e-5,this.B_re=[],this.B_im=[],this.B_re[1]=.7557853228,this.B_im[1]=0,this.B_re[2]=.249204646,this.B_im[2]=.003371507,this.B_re[3]=-.001541739,this.B_im[3]=.04105856,this.B_re[4]=-.10162907,this.B_im[4]=.01727609,this.B_re[5]=-.26623489,this.B_im[5]=-.36249218,this.B_re[6]=-.6870983,this.B_im[6]=-1.1651967,this.C_re=[],this.C_im=[],this.C_re[1]=1.3231270439,this.C_im[1]=0,this.C_re[2]=-.577245789,this.C_im[2]=-.007809598,this.C_re[3]=.508307513,this.C_im[3]=-.112208952,this.C_re[4]=-.15094762,this.C_im[4]=.18200602,this.C_re[5]=1.01418179,this.C_im[5]=1.64497696,this.C_re[6]=1.9660549,this.C_im[6]=2.5127645,this.D=[],this.D[1]=1.5627014243,this.D[2]=.5185406398,this.D[3]=-.03333098,this.D[4]=-.1052906,this.D[5]=-.0368594,this.D[6]=.007317,this.D[7]=.0122,this.D[8]=.00394,this.D[9]=-.0013}function jd(t){var n,r=t.x,u=t.y,d=u-this.lat0,f=r-this.long0,p=d/hs*1e-5,g=f,M=1,B=0;for(n=1;n<=10;n++)M=M*p,B=B+this.A[n]*M;var E=B,x=g,C=1,T=0,G,j,W=0,at=0;for(n=1;n<=6;n++)G=C*E-T*x,j=T*E+C*x,C=G,T=j,W=W+this.B_re[n]*C-this.B_im[n]*T,at=at+this.B_im[n]*C+this.B_re[n]*T;return t.x=at*this.a+this.x0,t.y=W*this.a+this.y0,t}function Zd(t){var n,r=t.x,u=t.y,d=r-this.x0,f=u-this.y0,p=f/this.a,g=d/this.a,M=1,B=0,E,x,C=0,T=0;for(n=1;n<=6;n++)E=M*p-B*g,x=B*p+M*g,M=E,B=x,C=C+this.C_re[n]*M-this.C_im[n]*B,T=T+this.C_im[n]*M+this.C_re[n]*B;for(var G=0;G<this.iterations;G++){var j=C,W=T,at,rt,ct=p,yt=g;for(n=2;n<=6;n++)at=j*C-W*T,rt=W*C+j*T,j=at,W=rt,ct=ct+(n-1)*(this.B_re[n]*j-this.B_im[n]*W),yt=yt+(n-1)*(this.B_im[n]*j+this.B_re[n]*W);j=1,W=0;var mt=this.B_re[1],xt=this.B_im[1];for(n=2;n<=6;n++)at=j*C-W*T,rt=W*C+j*T,j=at,W=rt,mt=mt+n*(this.B_re[n]*j-this.B_im[n]*W),xt=xt+n*(this.B_im[n]*j+this.B_re[n]*W);var Dt=mt*mt+xt*xt;C=(ct*mt+yt*xt)/Dt,T=(yt*mt-ct*xt)/Dt}var It=C,zt=T,Yt=1,Et=0;for(n=1;n<=9;n++)Yt=Yt*It,Et=Et+this.D[n]*Yt;var jt=this.lat0+Et*hs*1e5,be=this.long0+zt;return t.x=be,t.y=jt,t}var qd=["New_Zealand_Map_Grid","nzmg"];const Hd={init:Ud,forward:jd,inverse:Zd,names:qd};function Vd(){}function $d(t){var n=t.x,r=t.y,u=_t(n-this.long0),d=this.x0+this.a*u,f=this.y0+this.a*Math.log(Math.tan(Math.PI/4+r/2.5))*1.25;return t.x=d,t.y=f,t}function Kd(t){t.x-=this.x0,t.y-=this.y0;var n=_t(this.long0+t.x/this.a),r=2.5*(Math.atan(Math.exp(.8*t.y/this.a))-Math.PI/4);return t.x=n,t.y=r,t}var Wd=["Miller_Cylindrical","mill"];const Xd={init:Vd,forward:$d,inverse:Kd,names:Wd};var Yd=20;function Jd(){this.sphere?(this.n=1,this.m=0,this.es=0,this.C_y=Math.sqrt((this.m+1)/this.n),this.C_x=this.C_y/(this.m+1)):this.en=jr(this.es)}function Qd(t){var n,r,u=t.x,d=t.y;if(u=_t(u-this.long0),this.sphere){if(!this.m)d=this.n!==1?Math.asin(this.n*Math.sin(d)):d;else for(var f=this.n*Math.sin(d),p=Yd;p;--p){var g=(this.m*d+Math.sin(d)-f)/(this.m+Math.cos(d));if(d-=g,Math.abs(g)<dt)break}n=this.a*this.C_x*u*(this.m+Math.cos(d)),r=this.a*this.C_y*d}else{var M=Math.sin(d),B=Math.cos(d);r=this.a*Cn(d,M,B,this.en),n=this.a*u*B/Math.sqrt(1-this.es*M*M)}return t.x=n,t.y=r,t}function t0(t){var n,r,u,d;return t.x-=this.x0,u=t.x/this.a,t.y-=this.y0,n=t.y/this.a,this.sphere?(n/=this.C_y,u=u/(this.C_x*(this.m+Math.cos(n))),this.m?n=Fi((this.m*n+Math.sin(n))/this.n):this.n!==1&&(n=Fi(Math.sin(n)/this.n)),u=_t(u+this.long0),n=Ii(n)):(n=Zr(t.y/this.a,this.es,this.en),d=Math.abs(n),d<ut?(d=Math.sin(n),r=this.long0+t.x*Math.sqrt(1-this.es*d*d)/(this.a*Math.cos(n)),u=_t(r)):d-dt<ut&&(u=this.long0)),t.x=u,t.y=n,t}var e0=["Sinusoidal","sinu"];const i0={init:Jd,forward:Qd,inverse:t0,names:e0};function n0(){}function s0(t){for(var n=t.x,r=t.y,u=_t(n-this.long0),d=r,f=Math.PI*Math.sin(r);;){var p=-(d+Math.sin(d)-f)/(1+Math.cos(d));if(d+=p,Math.abs(p)<dt)break}d/=2,Math.PI/2-Math.abs(r)<dt&&(u=0);var g=.900316316158*this.a*u*Math.cos(d)+this.x0,M=1.4142135623731*this.a*Math.sin(d)+this.y0;return t.x=g,t.y=M,t}function a0(t){var n,r;t.x-=this.x0,t.y-=this.y0,r=t.y/(1.4142135623731*this.a),Math.abs(r)>.999999999999&&(r=.999999999999),n=Math.asin(r);var u=_t(this.long0+t.x/(.900316316158*this.a*Math.cos(n)));u<-Math.PI&&(u=-Math.PI),u>Math.PI&&(u=Math.PI),r=(2*n+Math.sin(2*n))/Math.PI,Math.abs(r)>1&&(r=1);var d=Math.asin(r);return t.x=u,t.y=d,t}var r0=["Mollweide","moll"];const o0={init:n0,forward:s0,inverse:a0,names:r0};function h0(){Math.abs(this.lat1+this.lat2)<dt||(this.lat2=this.lat2||this.lat1,this.temp=this.b/this.a,this.es=1-Math.pow(this.temp,2),this.e=Math.sqrt(this.es),this.e0=_s(this.es),this.e1=ms(this.es),this.e2=gs(this.es),this.e3=ys(this.es),this.sin_phi=Math.sin(this.lat1),this.cos_phi=Math.cos(this.lat1),this.ms1=ci(this.e,this.sin_phi,this.cos_phi),this.ml1=Te(this.e0,this.e1,this.e2,this.e3,this.lat1),Math.abs(this.lat1-this.lat2)<dt?this.ns=this.sin_phi:(this.sin_phi=Math.sin(this.lat2),this.cos_phi=Math.cos(this.lat2),this.ms2=ci(this.e,this.sin_phi,this.cos_phi),this.ml2=Te(this.e0,this.e1,this.e2,this.e3,this.lat2),this.ns=(this.ms1-this.ms2)/(this.ml2-this.ml1)),this.g=this.ml1+this.ms1/this.ns,this.ml0=Te(this.e0,this.e1,this.e2,this.e3,this.lat0),this.rh=this.a*(this.g-this.ml0))}function l0(t){var n=t.x,r=t.y,u;if(this.sphere)u=this.a*(this.g-r);else{var d=Te(this.e0,this.e1,this.e2,this.e3,r);u=this.a*(this.g-d)}var f=this.ns*_t(n-this.long0),p=this.x0+u*Math.sin(f),g=this.y0+this.rh-u*Math.cos(f);return t.x=p,t.y=g,t}function u0(t){t.x-=this.x0,t.y=this.rh-t.y+this.y0;var n,r,u,d;this.ns>=0?(r=Math.sqrt(t.x*t.x+t.y*t.y),n=1):(r=-Math.sqrt(t.x*t.x+t.y*t.y),n=-1);var f=0;if(r!==0&&(f=Math.atan2(n*t.x,n*t.y)),this.sphere)return d=_t(this.long0+f/this.ns),u=Ii(this.g-r/this.a),t.x=d,t.y=u,t;var p=this.g-r/this.a;return u=xa(p,this.e0,this.e1,this.e2,this.e3),d=_t(this.long0+f/this.ns),t.x=d,t.y=u,t}var c0=["Equidistant_Conic","eqdc"];const d0={init:h0,forward:l0,inverse:u0,names:c0};function f0(){this.R=this.a}function p0(t){var n=t.x,r=t.y,u=_t(n-this.long0),d,f;Math.abs(r)<=dt&&(d=this.x0+this.R*u,f=this.y0);var p=Fi(2*Math.abs(r/Math.PI));(Math.abs(u)<=dt||Math.abs(Math.abs(r)-ut)<=dt)&&(d=this.x0,r>=0?f=this.y0+Math.PI*this.R*Math.tan(.5*p):f=this.y0+Math.PI*this.R*-Math.tan(.5*p));var g=.5*Math.abs(Math.PI/u-u/Math.PI),M=g*g,B=Math.sin(p),E=Math.cos(p),x=E/(B+E-1),C=x*x,T=x*(2/B-1),G=T*T,j=Math.PI*this.R*(g*(x-G)+Math.sqrt(M*(x-G)*(x-G)-(G+M)*(C-G)))/(G+M);u<0&&(j=-j),d=this.x0+j;var W=M+x;return j=Math.PI*this.R*(T*W-g*Math.sqrt((G+M)*(M+1)-W*W))/(G+M),r>=0?f=this.y0+j:f=this.y0-j,t.x=d,t.y=f,t}function _0(t){var n,r,u,d,f,p,g,M,B,E,x,C,T;return t.x-=this.x0,t.y-=this.y0,x=Math.PI*this.R,u=t.x/x,d=t.y/x,f=u*u+d*d,p=-Math.abs(d)*(1+f),g=p-2*d*d+u*u,M=-2*p+1+2*d*d+f*f,T=d*d/M+(2*g*g*g/M/M/M-9*p*g/M/M)/27,B=(p-g*g/3/M)/M,E=2*Math.sqrt(-B/3),x=3*T/B/E,Math.abs(x)>1&&(x>=0?x=1:x=-1),C=Math.acos(x)/3,t.y>=0?r=(-E*Math.cos(C+Math.PI/3)-g/3/M)*Math.PI:r=-(-E*Math.cos(C+Math.PI/3)-g/3/M)*Math.PI,Math.abs(u)<dt?n=this.long0:n=_t(this.long0+Math.PI*(f-1+Math.sqrt(1+2*(u*u-d*d)+f*f))/2/u),t.x=n,t.y=r,t}var m0=["Van_der_Grinten_I","VanDerGrinten","Van_der_Grinten","vandg"];const g0={init:f0,forward:p0,inverse:_0,names:m0};function y0(t,n,r,u,d,f){const p=u-n,g=Math.atan((1-f)*Math.tan(t)),M=Math.atan((1-f)*Math.tan(r)),B=Math.sin(g),E=Math.cos(g),x=Math.sin(M),C=Math.cos(M);let T=p,G,j=100,W,at,rt,ct,yt,mt,xt,Dt,It,zt,Yt,Et,jt,be;do{if(W=Math.sin(T),at=Math.cos(T),rt=Math.sqrt(C*W*(C*W)+(E*x-B*C*at)*(E*x-B*C*at)),rt===0)return{azi1:0,s12:0};ct=B*x+E*C*at,yt=Math.atan2(rt,ct),mt=E*C*W/rt,xt=1-mt*mt,Dt=xt!==0?ct-2*B*x/xt:0,It=f/16*xt*(4+f*(4-3*xt)),G=T,T=p+(1-It)*f*mt*(yt+It*rt*(Dt+It*ct*(-1+2*Dt*Dt)))}while(Math.abs(T-G)>1e-12&&--j>0);return j===0?{azi1:NaN,s12:NaN}:(zt=xt*(d*d-d*(1-f)*(d*(1-f)))/(d*(1-f)*(d*(1-f))),Yt=1+zt/16384*(4096+zt*(-768+zt*(320-175*zt))),Et=zt/1024*(256+zt*(-128+zt*(74-47*zt))),jt=Et*rt*(Dt+Et/4*(ct*(-1+2*Dt*Dt)-Et/6*Dt*(-3+4*rt*rt)*(-3+4*Dt*Dt))),be=d*(1-f)*Yt*(yt-jt),{azi1:Math.atan2(C*W,E*x-B*C*at),s12:be})}function A0(t,n,r,u,d,f){const p=Math.atan((1-f)*Math.tan(t)),g=Math.sin(p),M=Math.cos(p),B=Math.sin(r),E=Math.cos(r),x=Math.atan2(g,M*E),C=M*B,T=1-C*C,G=T*(d*d-d*(1-f)*(d*(1-f)))/(d*(1-f)*(d*(1-f))),j=1+G/16384*(4096+G*(-768+G*(320-175*G))),W=G/1024*(256+G*(-128+G*(74-47*G)));let at=u/(d*(1-f)*j),rt,ct=100,yt,mt,xt,Dt;do yt=Math.cos(2*x+at),mt=Math.sin(at),xt=Math.cos(at),Dt=W*mt*(yt+W/4*(xt*(-1+2*yt*yt)-W/6*yt*(-3+4*mt*mt)*(-3+4*yt*yt))),rt=at,at=u/(d*(1-f)*j)+Dt;while(Math.abs(at-rt)>1e-12&&--ct>0);if(ct===0)return{lat2:NaN,lon2:NaN};const It=g*mt-M*xt*E,zt=Math.atan2(g*xt+M*mt*E,(1-f)*Math.sqrt(C*C+It*It)),Yt=Math.atan2(mt*B,M*xt-g*mt*E),Et=f/16*T*(4+f*(4-3*T)),jt=Yt-(1-Et)*f*C*(at+Et*mt*(yt+Et*xt*(-1+2*yt*yt))),be=n+jt;return{lat2:zt,lon2:be}}function v0(){this.sin_p12=Math.sin(this.lat0),this.cos_p12=Math.cos(this.lat0),this.f=this.es/(1+Math.sqrt(1-this.es))}function M0(t){var n=t.x,r=t.y,u=Math.sin(t.y),d=Math.cos(t.y),f=_t(n-this.long0),p,g,M,B,E,x,C,T,G,j,W;return this.sphere?Math.abs(this.sin_p12-1)<=dt?(t.x=this.x0+this.a*(ut-r)*Math.sin(f),t.y=this.y0-this.a*(ut-r)*Math.cos(f),t):Math.abs(this.sin_p12+1)<=dt?(t.x=this.x0+this.a*(ut+r)*Math.sin(f),t.y=this.y0+this.a*(ut+r)*Math.cos(f),t):(G=this.sin_p12*u+this.cos_p12*d*Math.cos(f),C=Math.acos(G),T=C?C/Math.sin(C):1,t.x=this.x0+this.a*T*d*Math.sin(f),t.y=this.y0+this.a*T*(this.cos_p12*u-this.sin_p12*d*Math.cos(f)),t):(p=_s(this.es),g=ms(this.es),M=gs(this.es),B=ys(this.es),Math.abs(this.sin_p12-1)<=dt?(E=this.a*Te(p,g,M,B,ut),x=this.a*Te(p,g,M,B,r),t.x=this.x0+(E-x)*Math.sin(f),t.y=this.y0-(E-x)*Math.cos(f),t):Math.abs(this.sin_p12+1)<=dt?(E=this.a*Te(p,g,M,B,ut),x=this.a*Te(p,g,M,B,r),t.x=this.x0+(E+x)*Math.sin(f),t.y=this.y0+(E+x)*Math.cos(f),t):Math.abs(n)<dt&&Math.abs(r-this.lat0)<dt?(t.x=t.y=0,t):(j=y0(this.lat0,this.long0,r,n,this.a,this.f),W=j.azi1,t.x=j.s12*Math.sin(W),t.y=j.s12*Math.cos(W),t))}function x0(t){t.x-=this.x0,t.y-=this.y0;var n,r,u,d,f,p,g,M,B,E,x,C,T,G,j,W;return this.sphere?(n=Math.sqrt(t.x*t.x+t.y*t.y),n>2*ut*this.a?void 0:(r=n/this.a,u=Math.sin(r),d=Math.cos(r),f=this.long0,Math.abs(n)<=dt?p=this.lat0:(p=Fi(d*this.sin_p12+t.y*u*this.cos_p12/n),g=Math.abs(this.lat0)-ut,Math.abs(g)<=dt?this.lat0>=0?f=_t(this.long0+Math.atan2(t.x,-t.y)):f=_t(this.long0-Math.atan2(-t.x,t.y)):f=_t(this.long0+Math.atan2(t.x*u,n*this.cos_p12*d-t.y*this.sin_p12*u))),t.x=f,t.y=p,t)):(M=_s(this.es),B=ms(this.es),E=gs(this.es),x=ys(this.es),Math.abs(this.sin_p12-1)<=dt?(C=this.a*Te(M,B,E,x,ut),n=Math.sqrt(t.x*t.x+t.y*t.y),T=C-n,p=xa(T/this.a,M,B,E,x),f=_t(this.long0+Math.atan2(t.x,-1*t.y)),t.x=f,t.y=p,t):Math.abs(this.sin_p12+1)<=dt?(C=this.a*Te(M,B,E,x,ut),n=Math.sqrt(t.x*t.x+t.y*t.y),T=n-C,p=xa(T/this.a,M,B,E,x),f=_t(this.long0+Math.atan2(t.x,t.y)),t.x=f,t.y=p,t):(G=Math.atan2(t.x,t.y),j=Math.sqrt(t.x*t.x+t.y*t.y),W=A0(this.lat0,this.long0,G,j,this.a,this.f),t.x=W.lon2,t.y=W.lat2,t))}var L0=["Azimuthal_Equidistant","aeqd"];const b0={init:v0,forward:M0,inverse:x0,names:L0};function w0(){this.sin_p14=Math.sin(this.lat0),this.cos_p14=Math.cos(this.lat0)}function C0(t){var n,r,u,d,f,p,g,M,B=t.x,E=t.y;return u=_t(B-this.long0),n=Math.sin(E),r=Math.cos(E),d=Math.cos(u),p=this.sin_p14*n+this.cos_p14*r*d,f=1,(p>0||Math.abs(p)<=dt)&&(g=this.a*f*r*Math.sin(u),M=this.y0+this.a*f*(this.cos_p14*n-this.sin_p14*r*d)),t.x=g,t.y=M,t}function E0(t){var n,r,u,d,f,p,g;return t.x-=this.x0,t.y-=this.y0,n=Math.sqrt(t.x*t.x+t.y*t.y),r=Fi(n/this.a),u=Math.sin(r),d=Math.cos(r),p=this.long0,Math.abs(n)<=dt?(g=this.lat0,t.x=p,t.y=g,t):(g=Fi(d*this.sin_p14+t.y*u*this.cos_p14/n),f=Math.abs(this.lat0)-ut,Math.abs(f)<=dt?(this.lat0>=0?p=_t(this.long0+Math.atan2(t.x,-t.y)):p=_t(this.long0-Math.atan2(-t.x,t.y)),t.x=p,t.y=g,t):(p=_t(this.long0+Math.atan2(t.x*u,n*this.cos_p14*d-t.y*this.sin_p14*u)),t.x=p,t.y=g,t))}var P0=["ortho"];const k0={init:w0,forward:C0,inverse:E0,names:P0};var ie={FRONT:1,RIGHT:2,BACK:3,LEFT:4,TOP:5,BOTTOM:6},qt={AREA_0:1,AREA_1:2,AREA_2:3,AREA_3:4};function S0(){this.x0=this.x0||0,this.y0=this.y0||0,this.lat0=this.lat0||0,this.long0=this.long0||0,this.lat_ts=this.lat_ts||0,this.title=this.title||"Quadrilateralized Spherical Cube",this.lat0>=ut-Zt/2?this.face=ie.TOP:this.lat0<=-(ut-Zt/2)?this.face=ie.BOTTOM:Math.abs(this.long0)<=Zt?this.face=ie.FRONT:Math.abs(this.long0)<=ut+Zt?this.face=this.long0>0?ie.RIGHT:ie.LEFT:this.face=ie.BACK,this.es!==0&&(this.one_minus_f=1-(this.a-this.b)/this.a,this.one_minus_f_squared=this.one_minus_f*this.one_minus_f)}function B0(t){var n={x:0,y:0},r,u,d,f,p,g,M={value:0};if(t.x-=this.long0,this.es!==0?r=Math.atan(this.one_minus_f_squared*Math.tan(t.y)):r=t.y,u=t.x,this.face===ie.TOP)f=ut-r,u>=Zt&&u<=ut+Zt?(M.value=qt.AREA_0,d=u-ut):u>ut+Zt||u<=-(ut+Zt)?(M.value=qt.AREA_1,d=u>0?u-he:u+he):u>-(ut+Zt)&&u<=-Zt?(M.value=qt.AREA_2,d=u+ut):(M.value=qt.AREA_3,d=u);else if(this.face===ie.BOTTOM)f=ut+r,u>=Zt&&u<=ut+Zt?(M.value=qt.AREA_0,d=-u+ut):u<Zt&&u>=-Zt?(M.value=qt.AREA_1,d=-u):u<-Zt&&u>=-(ut+Zt)?(M.value=qt.AREA_2,d=-u-ut):(M.value=qt.AREA_3,d=u>0?-u+he:-u-he);else{var B,E,x,C,T,G,j;this.face===ie.RIGHT?u=Pn(u,+ut):this.face===ie.BACK?u=Pn(u,+he):this.face===ie.LEFT&&(u=Pn(u,-ut)),C=Math.sin(r),T=Math.cos(r),G=Math.sin(u),j=Math.cos(u),B=T*j,E=T*G,x=C,this.face===ie.FRONT?(f=Math.acos(B),d=ba(f,x,E,M)):this.face===ie.RIGHT?(f=Math.acos(E),d=ba(f,x,-B,M)):this.face===ie.BACK?(f=Math.acos(-B),d=ba(f,x,-E,M)):this.face===ie.LEFT?(f=Math.acos(-E),d=ba(f,x,B,M)):(f=d=0,M.value=qt.AREA_0)}return g=Math.atan(12/he*(d+Math.acos(Math.sin(d)*Math.cos(Zt))-ut)),p=Math.sqrt((1-Math.cos(f))/(Math.cos(g)*Math.cos(g))/(1-Math.cos(Math.atan(1/Math.cos(d))))),M.value===qt.AREA_1?g+=ut:M.value===qt.AREA_2?g+=he:M.value===qt.AREA_3&&(g+=1.5*he),n.x=p*Math.cos(g),n.y=p*Math.sin(g),n.x=n.x*this.a+this.x0,n.y=n.y*this.a+this.y0,t.x=n.x,t.y=n.y,t}function T0(t){var n={lam:0,phi:0},r,u,d,f,p,g,M,B,E,x={value:0};if(t.x=(t.x-this.x0)/this.a,t.y=(t.y-this.y0)/this.a,u=Math.atan(Math.sqrt(t.x*t.x+t.y*t.y)),r=Math.atan2(t.y,t.x),t.x>=0&&t.x>=Math.abs(t.y)?x.value=qt.AREA_0:t.y>=0&&t.y>=Math.abs(t.x)?(x.value=qt.AREA_1,r-=ut):t.x<0&&-t.x>=Math.abs(t.y)?(x.value=qt.AREA_2,r=r<0?r+he:r-he):(x.value=qt.AREA_3,r+=ut),E=he/12*Math.tan(r),p=Math.sin(E)/(Math.cos(E)-1/Math.sqrt(2)),g=Math.atan(p),d=Math.cos(r),f=Math.tan(u),M=1-d*d*f*f*(1-Math.cos(Math.atan(1/Math.cos(g)))),M<-1?M=-1:M>1&&(M=1),this.face===ie.TOP)B=Math.acos(M),n.phi=ut-B,x.value===qt.AREA_0?n.lam=g+ut:x.value===qt.AREA_1?n.lam=g<0?g+he:g-he:x.value===qt.AREA_2?n.lam=g-ut:n.lam=g;else if(this.face===ie.BOTTOM)B=Math.acos(M),n.phi=B-ut,x.value===qt.AREA_0?n.lam=-g+ut:x.value===qt.AREA_1?n.lam=-g:x.value===qt.AREA_2?n.lam=-g-ut:n.lam=g<0?-g-he:-g+he;else{var C,T,G;C=M,E=C*C,E>=1?G=0:G=Math.sqrt(1-E)*Math.sin(g),E+=G*G,E>=1?T=0:T=Math.sqrt(1-E),x.value===qt.AREA_1?(E=T,T=-G,G=E):x.value===qt.AREA_2?(T=-T,G=-G):x.value===qt.AREA_3&&(E=T,T=G,G=-E),this.face===ie.RIGHT?(E=C,C=-T,T=E):this.face===ie.BACK?(C=-C,T=-T):this.face===ie.LEFT&&(E=C,C=T,T=-E),n.phi=Math.acos(-G)-ut,n.lam=Math.atan2(T,C),this.face===ie.RIGHT?n.lam=Pn(n.lam,-ut):this.face===ie.BACK?n.lam=Pn(n.lam,-he):this.face===ie.LEFT&&(n.lam=Pn(n.lam,+ut))}if(this.es!==0){var j,W,at;j=n.phi<0?1:0,W=Math.tan(n.phi),at=this.b/Math.sqrt(W*W+this.one_minus_f_squared),n.phi=Math.atan(Math.sqrt(this.a*this.a-at*at)/(this.one_minus_f*at)),j&&(n.phi=-n.phi)}return n.lam+=this.long0,t.x=n.lam,t.y=n.phi,t}function ba(t,n,r,u){var d;return t<dt?(u.value=qt.AREA_0,d=0):(d=Math.atan2(n,r),Math.abs(d)<=Zt?u.value=qt.AREA_0:d>Zt&&d<=ut+Zt?(u.value=qt.AREA_1,d-=ut):d>ut+Zt||d<=-(ut+Zt)?(u.value=qt.AREA_2,d=d>=0?d-he:d+he):(u.value=qt.AREA_3,d+=ut)),d}function Pn(t,n){var r=t+n;return r<-he?r+=ls:r>+he&&(r-=ls),r}var D0=["Quadrilateralized Spherical Cube","Quadrilateralized_Spherical_Cube","qsc"];const O0={init:S0,forward:B0,inverse:T0,names:D0};var Jr=[[1,22199e-21,-715515e-10,31103e-10],[.9986,-482243e-9,-24897e-9,-13309e-10],[.9954,-83103e-8,-448605e-10,-986701e-12],[.99,-.00135364,-59661e-9,36777e-10],[.9822,-.00167442,-449547e-11,-572411e-11],[.973,-.00214868,-903571e-10,18736e-12],[.96,-.00305085,-900761e-10,164917e-11],[.9427,-.00382792,-653386e-10,-26154e-10],[.9216,-.00467746,-10457e-8,481243e-11],[.8962,-.00536223,-323831e-10,-543432e-11],[.8679,-.00609363,-113898e-9,332484e-11],[.835,-.00698325,-640253e-10,934959e-12],[.7986,-.00755338,-500009e-10,935324e-12],[.7597,-.00798324,-35971e-9,-227626e-11],[.7186,-.00851367,-701149e-10,-86303e-10],[.6732,-.00986209,-199569e-9,191974e-10],[.6213,-.010418,883923e-10,624051e-11],[.5722,-.00906601,182e-6,624051e-11],[.5322,-.00677797,275608e-9,624051e-11]],As=[[-520417e-23,.0124,121431e-23,-845284e-16],[.062,.0124,-126793e-14,422642e-15],[.124,.0124,507171e-14,-160604e-14],[.186,.0123999,-190189e-13,600152e-14],[.248,.0124002,710039e-13,-224e-10],[.31,.0123992,-264997e-12,835986e-13],[.372,.0124029,988983e-12,-311994e-12],[.434,.0123893,-369093e-11,-435621e-12],[.4958,.0123198,-102252e-10,-345523e-12],[.5571,.0121916,-154081e-10,-582288e-12],[.6176,.0119938,-241424e-10,-525327e-12],[.6769,.011713,-320223e-10,-516405e-12],[.7346,.0113541,-397684e-10,-609052e-12],[.7903,.0109107,-489042e-10,-104739e-11],[.8435,.0103431,-64615e-9,-140374e-14],[.8936,.00969686,-64636e-9,-8547e-9],[.9394,.00840947,-192841e-9,-42106e-10],[.9761,.00616527,-256e-6,-42106e-10],[1,.00328947,-319159e-9,-42106e-10]],Wh=.8487,Xh=1.3523,Yh=ui/5,I0=1/Yh,kn=18,wa=function(t,n){return t[0]+n*(t[1]+n*(t[2]+n*t[3]))},R0=function(t,n){return t[1]+n*(2*t[2]+n*3*t[3])};function F0(t,n,r,u){for(var d=n;u;--u){var f=t(d);if(d-=f,Math.abs(f)<r)break}return d}function G0(){this.x0=this.x0||0,this.y0=this.y0||0,this.long0=this.long0||0,this.es=0,this.title=this.title||"Robinson"}function z0(t){var n=_t(t.x-this.long0),r=Math.abs(t.y),u=Math.floor(r*Yh);u<0?u=0:u>=kn&&(u=kn-1),r=ui*(r-I0*u);var d={x:wa(Jr[u],r)*n,y:wa(As[u],r)};return t.y<0&&(d.y=-d.y),d.x=d.x*this.a*Wh+this.x0,d.y=d.y*this.a*Xh+this.y0,d}function N0(t){var n={x:(t.x-this.x0)/(this.a*Wh),y:Math.abs(t.y-this.y0)/(this.a*Xh)};if(n.y>=1)n.x/=Jr[kn][0],n.y=t.y<0?-ut:ut;else{var r=Math.floor(n.y*kn);for(r<0?r=0:r>=kn&&(r=kn-1);;)if(As[r][0]>n.y)--r;else if(As[r+1][0]<=n.y)++r;else break;var u=As[r],d=5*(n.y-u[0])/(As[r+1][0]-u[0]);d=F0(function(f){return(wa(u,f)-n.y)/R0(u,f)},d,dt,100),n.x/=wa(Jr[r],d),n.y=(5*r+d)*ye,t.y<0&&(n.y=-n.y)}return n.x=_t(n.x+this.long0),n}var U0=["Robinson","robin"];const j0={init:G0,forward:z0,inverse:N0,names:U0};function Z0(){this.name="geocent"}function q0(t){var n=Eh(t,this.es,this.a);return n}function H0(t){var n=Ph(t,this.es,this.a,this.b);return n}var V0=["Geocentric","geocentric","geocent","Geocent"];const $0={init:Z0,forward:q0,inverse:H0,names:V0};var Le={N_POLE:0,S_POLE:1,EQUIT:2,OBLIQ:3},vs={h:{def:1e5,num:!0},azi:{def:0,num:!0,degrees:!0},tilt:{def:0,num:!0,degrees:!0},long0:{def:0,num:!0},lat0:{def:0,num:!0}};function K0(){if(Object.keys(vs).forEach((function(r){if(typeof this[r]>"u")this[r]=vs[r].def;else{if(vs[r].num&&isNaN(this[r]))throw new Error("Invalid parameter value, must be numeric "+r+" = "+this[r]);vs[r].num&&(this[r]=parseFloat(this[r]))}vs[r].degrees&&(this[r]=this[r]*ye)}).bind(this)),Math.abs(Math.abs(this.lat0)-ut)<dt?this.mode=this.lat0<0?Le.S_POLE:Le.N_POLE:Math.abs(this.lat0)<dt?this.mode=Le.EQUIT:(this.mode=Le.OBLIQ,this.sinph0=Math.sin(this.lat0),this.cosph0=Math.cos(this.lat0)),this.pn1=this.h/this.a,this.pn1<=0||this.pn1>1e10)throw new Error("Invalid height");this.p=1+this.pn1,this.rp=1/this.p,this.h1=1/this.pn1,this.pfact=(this.p+1)*this.h1,this.es=0;var t=this.tilt,n=this.azi;this.cg=Math.cos(n),this.sg=Math.sin(n),this.cw=Math.cos(t),this.sw=Math.sin(t)}function W0(t){t.x-=this.long0;var n=Math.sin(t.y),r=Math.cos(t.y),u=Math.cos(t.x),d,f;switch(this.mode){case Le.OBLIQ:f=this.sinph0*n+this.cosph0*r*u;break;case Le.EQUIT:f=r*u;break;case Le.S_POLE:f=-n;break;case Le.N_POLE:f=n;break}switch(f=this.pn1/(this.p-f),d=f*r*Math.sin(t.x),this.mode){case Le.OBLIQ:f*=this.cosph0*n-this.sinph0*r*u;break;case Le.EQUIT:f*=n;break;case Le.N_POLE:f*=-(r*u);break;case Le.S_POLE:f*=r*u;break}var p,g;return p=f*this.cg+d*this.sg,g=1/(p*this.sw*this.h1+this.cw),d=(d*this.cg-f*this.sg)*this.cw*g,f=p*g,t.x=d*this.a,t.y=f*this.a,t}function X0(t){t.x/=this.a,t.y/=this.a;var n={x:t.x,y:t.y},r,u,d;d=1/(this.pn1-t.y*this.sw),r=this.pn1*t.x*d,u=this.pn1*t.y*this.cw*d,t.x=r*this.cg+u*this.sg,t.y=u*this.cg-r*this.sg;var f=ze(t.x,t.y);if(Math.abs(f)<dt)n.x=0,n.y=t.y;else{var p,g;switch(g=1-f*f*this.pfact,g=(this.p-Math.sqrt(g))/(this.pn1/f+f/this.pn1),p=Math.sqrt(1-g*g),this.mode){case Le.OBLIQ:n.y=Math.asin(p*this.sinph0+t.y*g*this.cosph0/f),t.y=(p-this.sinph0*Math.sin(n.y))*f,t.x*=g*this.cosph0;break;case Le.EQUIT:n.y=Math.asin(t.y*g/f),t.y=p*f,t.x*=g;break;case Le.N_POLE:n.y=Math.asin(p),t.y=-t.y;break;case Le.S_POLE:n.y=-Math.asin(p);break}n.x=Math.atan2(t.x,t.y)}return t.x=n.x+this.long0,t.y=n.y,t}var Y0=["Tilted_Perspective","tpers"];const J0={init:K0,forward:W0,inverse:X0,names:Y0};function Q0(){if(this.flip_axis=this.sweep==="x"?1:0,this.h=Number(this.h),this.radius_g_1=this.h/this.a,this.radius_g_1<=0||this.radius_g_1>1e10)throw new Error;if(this.radius_g=1+this.radius_g_1,this.C=this.radius_g*this.radius_g-1,this.es!==0){var t=1-this.es,n=1/t;this.radius_p=Math.sqrt(t),this.radius_p2=t,this.radius_p_inv2=n,this.shape="ellipse"}else this.radius_p=1,this.radius_p2=1,this.radius_p_inv2=1,this.shape="sphere";this.title||(this.title="Geostationary Satellite View")}function tf(t){var n=t.x,r=t.y,u,d,f,p;if(n=n-this.long0,this.shape==="ellipse"){r=Math.atan(this.radius_p2*Math.tan(r));var g=this.radius_p/ze(this.radius_p*Math.cos(r),Math.sin(r));if(d=g*Math.cos(n)*Math.cos(r),f=g*Math.sin(n)*Math.cos(r),p=g*Math.sin(r),(this.radius_g-d)*d-f*f-p*p*this.radius_p_inv2<0)return t.x=Number.NaN,t.y=Number.NaN,t;u=this.radius_g-d,this.flip_axis?(t.x=this.radius_g_1*Math.atan(f/ze(p,u)),t.y=this.radius_g_1*Math.atan(p/u)):(t.x=this.radius_g_1*Math.atan(f/u),t.y=this.radius_g_1*Math.atan(p/ze(f,u)))}else this.shape==="sphere"&&(u=Math.cos(r),d=Math.cos(n)*u,f=Math.sin(n)*u,p=Math.sin(r),u=this.radius_g-d,this.flip_axis?(t.x=this.radius_g_1*Math.atan(f/ze(p,u)),t.y=this.radius_g_1*Math.atan(p/u)):(t.x=this.radius_g_1*Math.atan(f/u),t.y=this.radius_g_1*Math.atan(p/ze(f,u))));return t.x=t.x*this.a,t.y=t.y*this.a,t}function ef(t){var n=-1,r=0,u=0,d,f,p,g;if(t.x=t.x/this.a,t.y=t.y/this.a,this.shape==="ellipse"){this.flip_axis?(u=Math.tan(t.y/this.radius_g_1),r=Math.tan(t.x/this.radius_g_1)*ze(1,u)):(r=Math.tan(t.x/this.radius_g_1),u=Math.tan(t.y/this.radius_g_1)*ze(1,r));var M=u/this.radius_p;if(d=r*r+M*M+n*n,f=2*this.radius_g*n,p=f*f-4*d*this.C,p<0)return t.x=Number.NaN,t.y=Number.NaN,t;g=(-f-Math.sqrt(p))/(2*d),n=this.radius_g+g*n,r*=g,u*=g,t.x=Math.atan2(r,n),t.y=Math.atan(u*Math.cos(t.x)/n),t.y=Math.atan(this.radius_p_inv2*Math.tan(t.y))}else if(this.shape==="sphere"){if(this.flip_axis?(u=Math.tan(t.y/this.radius_g_1),r=Math.tan(t.x/this.radius_g_1)*Math.sqrt(1+u*u)):(r=Math.tan(t.x/this.radius_g_1),u=Math.tan(t.y/this.radius_g_1)*Math.sqrt(1+r*r)),d=r*r+u*u+n*n,f=2*this.radius_g*n,p=f*f-4*d*this.C,p<0)return t.x=Number.NaN,t.y=Number.NaN,t;g=(-f-Math.sqrt(p))/(2*d),n=this.radius_g+g*n,r*=g,u*=g,t.x=Math.atan2(r,n),t.y=Math.atan(u*Math.cos(t.x)/n)}return t.x=t.x+this.long0,t}var nf=["Geostationary Satellite View","Geostationary_Satellite","geos"];const sf={init:Q0,forward:tf,inverse:ef,names:nf};var Ms=1.340264,xs=-.081106,Ls=893e-6,bs=.003796,Ca=Math.sqrt(3)/2;function af(){this.es=0,this.long0=this.long0!==void 0?this.long0:0}function rf(t){var n=_t(t.x-this.long0),r=t.y,u=Math.asin(Ca*Math.sin(r)),d=u*u,f=d*d*d;return t.x=n*Math.cos(u)/(Ca*(Ms+3*xs*d+f*(7*Ls+9*bs*d))),t.y=u*(Ms+xs*d+f*(Ls+bs*d)),t.x=this.a*t.x+this.x0,t.y=this.a*t.y+this.y0,t}function of(t){t.x=(t.x-this.x0)/this.a,t.y=(t.y-this.y0)/this.a;var n=1e-9,r=12,u=t.y,d,f,p,g,M,B;for(B=0;B<r&&(d=u*u,f=d*d*d,p=u*(Ms+xs*d+f*(Ls+bs*d))-t.y,g=Ms+3*xs*d+f*(7*Ls+9*bs*d),u-=M=p/g,!(Math.abs(M)<n));++B);return d=u*u,f=d*d*d,t.x=Ca*t.x*(Ms+3*xs*d+f*(7*Ls+9*bs*d))/Math.cos(u),t.y=Math.asin(Math.sin(u)/Ca),t.x=_t(t.x+this.long0),t}var hf=["eqearth","Equal Earth","Equal_Earth"];const lf={init:af,forward:rf,inverse:of,names:hf};var ws=1e-10;function uf(){var t;if(this.phi1=this.lat1,Math.abs(this.phi1)<ws)throw new Error;this.es?(this.en=jr(this.es),this.m1=Cn(this.phi1,this.am1=Math.sin(this.phi1),t=Math.cos(this.phi1),this.en),this.am1=t/(Math.sqrt(1-this.es*this.am1*this.am1)*this.am1),this.inverse=df,this.forward=cf):(Math.abs(this.phi1)+ws>=ut?this.cphi1=0:this.cphi1=1/Math.tan(this.phi1),this.inverse=pf,this.forward=ff)}function cf(t){var n=_t(t.x-(this.long0||0)),r=t.y,u,d,f;return u=this.am1+this.m1-Cn(r,d=Math.sin(r),f=Math.cos(r),this.en),d=f*n/(u*Math.sqrt(1-this.es*d*d)),t.x=u*Math.sin(d),t.y=this.am1-u*Math.cos(d),t.x=this.a*t.x+(this.x0||0),t.y=this.a*t.y+(this.y0||0),t}function df(t){t.x=(t.x-(this.x0||0))/this.a,t.y=(t.y-(this.y0||0))/this.a;var n,r,u,d;if(r=ze(t.x,t.y=this.am1-t.y),d=Zr(this.am1+this.m1-r,this.es,this.en),(n=Math.abs(d))<ut)n=Math.sin(d),u=r*Math.atan2(t.x,t.y)*Math.sqrt(1-this.es*n*n)/Math.cos(d);else if(Math.abs(n-ut)<=ws)u=0;else throw new Error;return t.x=_t(u+(this.long0||0)),t.y=Ii(d),t}function ff(t){var n=_t(t.x-(this.long0||0)),r=t.y,u,d;return d=this.cphi1+this.phi1-r,Math.abs(d)>ws?(t.x=d*Math.sin(u=n*Math.cos(r)/d),t.y=this.cphi1-d*Math.cos(u)):t.x=t.y=0,t.x=this.a*t.x+(this.x0||0),t.y=this.a*t.y+(this.y0||0),t}function pf(t){t.x=(t.x-(this.x0||0))/this.a,t.y=(t.y-(this.y0||0))/this.a;var n,r,u=ze(t.x,t.y=this.cphi1-t.y);if(r=this.cphi1+this.phi1-u,Math.abs(r)>ut)throw new Error;return Math.abs(Math.abs(r)-ut)<=ws?n=0:n=u*Math.atan2(t.x,t.y)/Math.cos(r),t.x=_t(n+(this.long0||0)),t.y=Ii(r),t}var _f=["bonne","Bonne (Werner lat_1=90)"];const mf={init:uf,names:_f};function gf(t){t.Proj.projections.add(va),t.Proj.projections.add(Ma),t.Proj.projections.add(pc),t.Proj.projections.add(Lc),t.Proj.projections.add(Pc),t.Proj.projections.add(Dc),t.Proj.projections.add(zc),t.Proj.projections.add(qc),t.Proj.projections.add(Wc),t.Proj.projections.add(td),t.Proj.projections.add(fd),t.Proj.projections.add(Ad),t.Proj.projections.add(bd),t.Proj.projections.add(Sd),t.Proj.projections.add(Id),t.Proj.projections.add(Nd),t.Proj.projections.add(Hd),t.Proj.projections.add(Xd),t.Proj.projections.add(i0),t.Proj.projections.add(o0),t.Proj.projections.add(d0),t.Proj.projections.add(g0),t.Proj.projections.add(b0),t.Proj.projections.add(k0),t.Proj.projections.add(O0),t.Proj.projections.add(j0),t.Proj.projections.add($0),t.Proj.projections.add(J0),t.Proj.projections.add(sf),t.Proj.projections.add(lf),t.Proj.projections.add(mf)}const Jh=Object.assign(Bu,{defaultDatum:"WGS84",Proj:ni,WGS84:new ni("WGS84"),Point:wn,toPoint:Th,defs:Be,nadgrid:fu,transform:ya,mgrs:Tu,version:"__VERSION__"});gf(Jh);const yf=Al(Object.freeze(Object.defineProperty({__proto__:null,default:Jh},Symbol.toStringTag,{value:"Module"})));(function(t){(function(n){var r,u;r=oh(),u=yf,t.exports=n(r,u)})(function(n,r){return r.__esModule&&r.default&&(r=r.default),n.Proj={},n.Proj._isProj4Obj=function(u){return typeof u.inverse<"u"&&typeof u.forward<"u"},n.Proj.Projection=n.Class.extend({initialize:function(u,d,f){var p=n.Proj._isProj4Obj(u);this._proj=p?u:this._projFromCodeDef(u,d),this.bounds=p?d:f},project:function(u){var d=this._proj.forward([u.lng,u.lat]);return new n.Point(d[0],d[1])},unproject:function(u,d){var f=this._proj.inverse([u.x,u.y]);return new n.LatLng(f[1],f[0],d)},_projFromCodeDef:function(u,d){if(d)r.defs(u,d);else if(r.defs[u]===void 0){var f=u.split(":");if(f.length>3&&(u=f[f.length-3]+":"+f[f.length-1]),r.defs[u]===void 0)throw"No projection definition for code "+u}return r(u)}}),n.Proj.CRS=n.Class.extend({includes:n.CRS,options:{transformation:new n.Transformation(1,0,-1,0)},initialize:function(u,d,f){var p,g,M,B;if(n.Proj._isProj4Obj(u)?(g=u,p=g.srsCode,B=d||{},this.projection=new n.Proj.Projection(g,B.bounds)):(p=u,M=d,B=f||{},this.projection=new n.Proj.Projection(p,M,B.bounds)),n.Util.setOptions(this,B),this.code=p,this.transformation=this.options.transformation,this.options.origin&&(this.transformation=new n.Transformation(1,-this.options.origin[0],-1,this.options.origin[1])),this.options.scales)this._scales=this.options.scales;else if(this.options.resolutions){this._scales=[];for(var E=this.options.resolutions.length-1;E>=0;E--)this.options.resolutions[E]&&(this._scales[E]=1/this.options.resolutions[E])}this.infinite=!this.options.bounds},scale:function(u){var d=Math.floor(u),f,p,g,M;return u===d?this._scales[u]:(f=this._scales[d],p=this._scales[d+1],g=p-f,M=u-d,f+g*M)},zoom:function(u){var d=this._closestElement(this._scales,u),f=this._scales.indexOf(d),p,g,M;return u===d?f:d===void 0?-1/0:(g=f+1,p=this._scales[g],p===void 0?1/0:(M=p-d,(u-d)/M+f))},distance:n.CRS.Earth.distance,R:n.CRS.Earth.R,_closestElement:function(u,d){for(var f,p=u.length;p--;)u[p]<=d&&(f===void 0||f<u[p])&&(f=u[p]);return f}}),n.Proj.GeoJSON=n.GeoJSON.extend({initialize:function(u,d){this._callLevel=0,n.GeoJSON.prototype.initialize.call(this,u,d)},addData:function(u){var d;u&&(u.crs&&u.crs.type==="name"?d=new n.Proj.CRS(u.crs.properties.name):u.crs&&u.crs.type&&(d=new n.Proj.CRS(u.crs.type+":"+u.crs.properties.code)),d!==void 0&&(this.options.coordsToLatLng=function(f){var p=n.point(f[0],f[1]);return d.projection.unproject(p)})),this._callLevel++;try{n.GeoJSON.prototype.addData.call(this,u)}finally{this._callLevel--,this._callLevel===0&&delete this.options.coordsToLatLng}}}),n.Proj.geoJson=function(u,d){return new n.Proj.GeoJSON(u,d)},n.Proj.ImageOverlay=n.ImageOverlay.extend({initialize:function(u,d,f){n.ImageOverlay.prototype.initialize.call(this,u,null,f),this._projectedBounds=d},_animateZoom:function(u){var d=this._map.getZoomScale(u.zoom),f=n.point(this._projectedBounds.min.x,this._projectedBounds.max.y),p=this._projectedToNewLayerPoint(f,u.zoom,u.center);n.DomUtil.setTransform(this._image,p,d)},_reset:function(){var u=this._map.getZoom(),d=this._map.getPixelOrigin(),f=n.bounds(this._transform(this._projectedBounds.min,u)._subtract(d),this._transform(this._projectedBounds.max,u)._subtract(d)),p=f.getSize();n.DomUtil.setPosition(this._image,f.min),this._image.style.width=p.x+"px",this._image.style.height=p.y+"px"},_projectedToNewLayerPoint:function(u,d,f){var p=this._map.getSize()._divideBy(2),g=this._map.project(f,d)._subtract(p)._round(),M=g.add(this._map._getMapPanePos());return this._transform(u,d)._subtract(M)},_transform:function(u,d){var f=this._map.options.crs,p=f.transformation,g=f.scale(d);return p.transform(u,g)}}),n.Proj.imageOverlay=function(u,d,f){return new n.Proj.ImageOverlay(u,d,f)},n.Proj})})(xl);const Qr=new U.Proj.CRS("EPSG:900913","+proj=merc +a=6378206 +b=6356584.314245179 +lat_ts=0.0 +lon_0=0.0 +x_0=0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs",{resolutions:function(){var t=[];t[0]=Math.pow(2,18);for(var n=1;n<21;n++)t[n]=Math.pow(2,18-n);return t}(),origin:[0,0],bounds:U.bounds([20037508342789244e-9,0],[0,20037508342789244e-9])}),Qh=U.Marker.extend({options:{fontSize:"12px",color:"#f00",fontShadowColor:"none",fontWeight:"normal",background:"rgba(0, 0, 0, 0)",minZoom:void 0,maxZoom:void 0,clsName:"leaflet-text",offset:[6,6]},initialize(t,n,r={}){this._latlng=t,this._enabled=!1,this.options.id=r.id||"text_"+$t.Util.guid(),this.options.text=n||"",r=Object.assign(this.options,r),U.setOptions(this,r);const{id:u,fontSize:d,color:f,fontWeight:p,background:g,fontShadowColor:M,clsName:B,offset:E}=this.options;this.options.icon=new U.DivIcon({html:`<span id=${u} class="leaflet-text-label" style="font-weight:${p};font-size:${d};color:${f};background:${g};text-shadow:${M} 1px 0px 2px">${n||""}</span>`,className:B,iconAnchor:E}),U.Marker.prototype.initialize.call(this,t,this.options)},setStyle(t){const n=document.getElementById(this.options.id),{text:r,color:u,fontSize:d,fontShadowColor:f,fontWeight:p}=t,g=t.background||"none";return n&&(u&&(this.options.color=u,n.style.color=u),p&&(this.options.fontWeight=p,n.style.fontWeight=p),d&&(this.options.fontSize=d,n.style.fontSize=d),this.options.background=g,n.style.background=g,r&&(this.options.text=r,n.textContent=r),f?(this.options.fontShadowColor=f,n.style["text-shadow"]=f+" 1px 0px 2px"):(this.options.fontShadowColor="none",n.style["text-shadow"]="none")),this},enableEdit(t){const{fontSize:n,color:r,text:u}=this.options;if(!this._enabled){this._enabled=!0;const d=new U.DivIcon({html:`<input type="text" id="text-input-icon" style="font-size:${n};color:${r};" value=${u}></input>`,className:"leaflet-text"});return this.setIcon(d),document.getElementById("text-input-icon").onblur=f=>{this.options.text=f.target.value,setTimeout(()=>{this.disableEdit(),t&&t(this)},100)},document.getElementById("text-input-icon").onkeydown=function(f){f.keyCode===13&&(this.options.text=f.target.value,this.blur(f))},this}},disableEdit(t){if(this._enabled){this._enabled=!1;const{id:n,color:r,fontSize:u,fontWeight:d,fontShadowColor:f}=this.options,p=new U.DivIcon({html:`<span id=${n} style="padding:2px 4px;white-space:nowrap;font-weight:${d};font-size:${u};color:${r};text-shadow:${f} 1px 2px 3px">${this.options.text}</span>`,className:"leaflet-text"});return this.setIcon(p),t&&t(this),this}}}),tl=U.Marker.extend({options:{color:"#f00",diveColor:"#f00",iconSize:[14,14],level:0,speedTime:2,animation:!0},initialize(t,n){U.setOptions(this,n);const{clsPrefix:r}=this.options;this.tempDivEle=document.createElement("div"),this.spanEl=$t.DomUtil.create("span",`${r}-pulse-icon`),this.aEl=$t.DomUtil.create("a",`${r}-dive-icon`),this.tempDivEle.append(this.spanEl),this.spanEl.append(this.aEl),this._init(),U.Marker.prototype.initialize.call(this,t,this.options)},_init(){const{color:t,iconSize:n,diveColor:r,level:u,speedTime:d,animation:f,clsPrefix:p}=this.options;t&&(this.spanEl.style.backgroundColor=t,r||(this.aEl.style.boxShadow="0 0 6px 2px "+t)),n&&(this.spanEl.style.width=n[0]+"px",this.spanEl.style.height=n[1]+"px"),f&&d?(this.aEl.style.setProperty("animation","pulsate "+d+"s infinite"),u?r?this.aEl.style.boxShadow="0 0 "+u*3+"px "+u+"px "+r:t&&(this.aEl.style.boxShadow="0 0 "+u*3+"px "+u+"px "+t):r&&(u?this.aEl.style.boxShadow="0 0 "+u*3+"px "+u+"px "+r:this.aEl.style.boxShadow="0 0 6px 2px "+r)):(this.aEl.style.removeProperty("animation"),this.aEl.style.removeProperty("box-shadow"));const g=L.divIcon({iconSize:n,iconAnchor:n.map(M=>M/2),className:`${p}-blink-marker`,html:this.tempDivEle.innerHTML});this.options.icon?this.setIcon(g):this.options.icon=g},setOptions(t){U.setOptions(this,t),this._init()},start(t){U.setOptions(this,t),this.options.animation=!0,this._init()},stop(t){U.setOptions(this,t),this.options.animation=!1,this._init()}}),el=U.Layer.extend({initialize:function(t){L.setOptions(this,t),this._onClickListeners=[],this._onHoverListeners=[]},setOptions:function(t){return L.setOptions(this,t),this.redraw()},redraw:function(){this._redraw(!0)},addMarkers:function(t){var n=this,r=[],u=[];t.forEach(function(d){if(!(d.options.pane=="markerPane"&&d.options.icon)){console.error("Layer isn't a marker");return}var f=d.getLatLng(),p=n._map.getBounds().contains(f),g=n._addMarker(d,f,p);p===!0&&r.push(g[0]),u.push(g[1])}),n._markers.load(r),n._latlngMarkers.load(u)},addMarker:function(t){var n=this,r=t.getLatLng(),u=n._map.getBounds().contains(r),d=n._addMarker(t,r,u);u===!0&&n._markers.insert(d[0]),n._latlngMarkers.insert(d[1])},addLayer:function(t){t.options.pane=="markerPane"&&t.options.icon?this.addMarker(t):console.error("Layer isn't a marker")},addLayers:function(t){this.addMarkers(t)},removeLayer:function(t){this.removeMarker(t,!0)},removeMarker:function(t,n){var r=this;t.minX&&(t=t.data);var u=t.getLatLng(),d=r._map.getBounds().contains(u),f={minX:u.lng,minY:u.lat,maxX:u.lng,maxY:u.lat,data:t};r._latlngMarkers.remove(f,function(p,g){return p.data._leaflet_id===g.data._leaflet_id}),r._latlngMarkers.total--,r._latlngMarkers.dirty++,d===!0&&n===!0&&r._redraw(!0)},onAdd:function(t){this._map=t,this._canvas||this._initCanvas(),this.options.pane?this.getPane().appendChild(this._canvas):t._panes.overlayPane.appendChild(this._canvas),t.on("moveend",this._reset,this),t.on("resize",this._reset,this),t.on("click",this._executeListeners,this),t.on("mousemove",this._executeListeners,this)},onRemove:function(t){this.options.pane?this.getPane().removeChild(this._canvas):t.getPanes().overlayPane.removeChild(this._canvas),t.off("click",this._executeListeners,this),t.off("mousemove",this._executeListeners,this),t.off("moveend",this._reset,this),t.off("resize",this._reset,this)},addTo:function(t){return t.addLayer(this),this},clearLayers:function(){this._latlngMarkers=null,this._markers=null,this._redraw(!0)},_addMarker:function(t,n,r){var u=this;t._map=u._map,u._markers||(u._markers=new rbush),u._latlngMarkers||(u._latlngMarkers=new rbush,u._latlngMarkers.dirty=0,u._latlngMarkers.total=0),L.Util.stamp(t);var d=u._map.latLngToContainerPoint(n),f=t.options.icon.options.iconSize,p=f[0]/2,g=f[1]/2,M=[{minX:d.x-p,minY:d.y-g,maxX:d.x+p,maxY:d.y+g,data:t},{minX:n.lng,minY:n.lat,maxX:n.lng,maxY:n.lat,data:t}];return u._latlngMarkers.dirty++,u._latlngMarkers.total++,r===!0&&u._drawMarker(t,d),M},_drawMarker:function(t,n){var r=this;this._imageLookup||(this._imageLookup={}),n||(n=r._map.latLngToContainerPoint(t.getLatLng()));var u=t.options.icon.options.iconUrl;if(t.canvas_img)r._drawImage(t,n);else if(r._imageLookup[u])t.canvas_img=r._imageLookup[u][0],r._imageLookup[u][1]===!1?r._imageLookup[u][2].push([t,n]):r._drawImage(t,n);else{var d=new Image;d.src=u,t.canvas_img=d,r._imageLookup[u]=[d,!1,[[t,n]]],d.onload=function(){r._imageLookup[u][1]=!0,r._imageLookup[u][2].forEach(function(f){r._drawImage(f[0],f[1])})}}},_drawImage:function(t,n){var r=t.options.icon.options;this._context.drawImage(t.canvas_img,n.x-r.iconAnchor[0],n.y-r.iconAnchor[1],r.iconSize[0],r.iconSize[1])},_reset:function(){var t=this._map.containerPointToLayerPoint([0,0]);L.DomUtil.setPosition(this._canvas,t);var n=this._map.getSize();this._canvas.width=n.x,this._canvas.height=n.y,this._redraw()},_redraw:function(t){var n=this;if(t&&this._context.clearRect(0,0,this._canvas.width,this._canvas.height),!(!this._map||!this._latlngMarkers)){var r=[];n._latlngMarkers.dirty/n._latlngMarkers.total>=.1&&(n._latlngMarkers.all().forEach(function(f){r.push(f)}),n._latlngMarkers.clear(),n._latlngMarkers.load(r),n._latlngMarkers.dirty=0,r=[]);var u=n._map.getBounds(),d={minX:u.getWest(),minY:u.getSouth(),maxX:u.getEast(),maxY:u.getNorth()};n._latlngMarkers.search(d).forEach(function(f){var p=n._map.latLngToContainerPoint(f.data.getLatLng()),g=f.data.options.icon.options.iconSize,M=g[0]/2,B=g[1]/2,E={minX:p.x-M,minY:p.y-B,maxX:p.x+M,maxY:p.y+B,data:f.data};r.push(E),n._drawMarker(f.data,p)}),this._markers.clear(),this._markers.load(r)}},_initCanvas:function(){this._canvas=L.DomUtil.create("canvas","leaflet-canvas-icon-layer leaflet-layer");var t=L.DomUtil.testProp(["transformOrigin","WebkitTransformOrigin","msTransformOrigin"]);this._canvas.style[t]="50% 50%";var n=this._map.getSize();this._canvas.width=n.x,this._canvas.height=n.y,this._context=this._canvas.getContext("2d");var r=this._map.options.zoomAnimation&&L.Browser.any3d;L.DomUtil.addClass(this._canvas,"leaflet-zoom-"+(r?"animated":"hide"))},addOnClickListener:function(t){this._onClickListeners.push(t)},addOnHoverListener:function(t){this._onHoverListeners.push(t)},_executeListeners:function(t){if(this._markers){var n=this,r=t.containerPoint.x,u=t.containerPoint.y;n._openToolTip&&(n._openToolTip.closeTooltip(),delete n._openToolTip);var d=this._markers.search({minX:r,minY:u,maxX:r,maxY:u});if(d&&d.length>0){if(n._map._container.style.cursor="pointer",t.type==="click"){var f=d[0].data.getPopup();f&&d[0].data.openPopup(),n._onClickListeners.forEach(function(g){g(t,d)})}if(t.type==="mousemove"){var p=d[0].data.getTooltip();p&&(n._openToolTip=d[0].data,d[0].data.openTooltip()),n._onHoverListeners.forEach(function(g){g(t,d)})}}else n._map._container.style.cursor=""}}}),Af=U.FeatureGroup.extend({addLayer:function(t){this._originLayers.push(t),this._isInViewport(t)&&U.FeatureGroup.prototype.addLayer.call(this,t)},onAdd(t){this._map=t,this._originLayers=[],this._cleanupLayers(),t.on("moveend",this._update,this),U.FeatureGroup.prototype.onAdd.call(this,t)},onRemove:function(){map.off("moveend",this._update),this._originLayers=[],U.FeatureGroup.prototype.onRemove.call(this,map)},_update(){this.clearLayers();for(let t=0;t<this._originLayers.length;t++){const n=this._originLayers[t];this._isInViewport(n)&&U.FeatureGroup.prototype.addLayer.call(this,n)}},_isInViewport(t){var n=this._map.getBounds();return t instanceof U.Marker||t instanceof U.CircleMarker?n.contains(t.getLatLng()):t instanceof U.Circle||t instanceof U.Polyline?n.intersects(t.getBounds()):!1},_cleanupLayers:function(){this.eachLayer(function(t){!this._isInViewport(t)&&(!t._popup||!t._popup._container)&&this.removeLayer(t)},this)}}),vf=U.Layer.extend({provide:{TDT:"tdt",BAIDU:"bd",GAODE:"gd",YANDEX:"yandex"},source:{VECTOR:"vec",SATELITE:"img",ANNO:"cia",VEC_NO_ANNO:"vec_no_anno",SATELITE_NO_ANNO:"img_no_anno"},style:{NORMAL:"normal",GRAY:"gray",DARK:"dark",BROWN:"brown",BLUR:"blur"},options:{provide:"tdt",source:"img",style:"normal",accessToken:"016b31f15f25e1365e85aec7e7b0464e"},initialize(t){t=$t.Util.deleteEmptyProperty(t),U.Util.setOptions(this,t)},onAdd(t){this.map=t,this.replaceProjection(),this.tileLayers=this.getLayerGroup(),t.addLayer(this.tileLayers)},onRemove(t){t.removeLayer(this.tileLayers)},replaceProjection(){const t=this.map.getCenter(),n=this.map.getZoom();this.options.provide===this.provide.BAIDU?this.map.options.crs=Qr:this.options.provide===this.provide.YANDEX?this.map.options.crs=U.CRS.EPSG3395:this.map.options.crs=U.CRS.EPSG3857,this._resetMapStatus(t,n)},_resetMapStatus(t,n){this.map.setView(t),this.map._resetView(t,n,!0)},getLayerGroup(){let t={},n={};switch(this.options.style&&this.options.style.split(",").forEach(r=>{switch(r){case this.style.DARK:t.invert=1;break;case this.style.GRAY:t.grayscale=1;break;case this.style.BROWN:t.sepia=1;break;case this.style.BLUR:t.blur="1px";break}}),this.options.provide){case this.provide.TDT:n={subdomains:$t.ArrayUtil.create(8),maxNativeZoom:18,minZoom:0,maxZoom:this.map.getMaxZoom()};break;case this.provide.BAIDU:n={subdomains:$t.ArrayUtil.create(10),tms:!0,corrdType:"bd09",maxNativeZoom:19,minZoom:0,maxZoom:this.map.getMaxZoom()};break;case this.provide.GAODE:n={subdomains:$t.ArrayUtil.create(4).map(r=>r+1),corrdType:"gcj02",maxNativeZoom:18,minZoom:0,maxZoom:this.map.getMaxZoom()};break;case this.provide.YANDEX:n={maxNativeZoom:18,minZoom:0,maxZoom:this.map.getMaxZoom()};break}if(this.options.opacity>=0&&(t.opacity=this.options.opacity),this.options.url)return new U.TileLayer(this.options.url,{...n,style:t});switch(this.options.provide){case this.provide.TDT:let r;switch(n.maxNativeZoom=18,this.options.source){case this.source.VECTOR:r=["vec_w","cva_w"];break;case this.source.SATELITE:r=["img_w","cia_w"];break;case this.source.ANNO:r=["cva_w"];break;case this.source.VEC_NO_ANNO:r=["vec_w"];break;case this.source.SATELITE_NO_ANNO:r=["img_w"];break}return new U.LayerGroup(r.map(u=>new U.TileLayer(`http://t{s}.tianditu.gov.cn/DataServer?T=${u}&x={x}&y={y}&l={z}&tk=${this.options.accessToken}`,{...n,style:t})));case this.provide.BAIDU:switch(this.options.source){case this.source.VECTOR:return n.maxNativeZoom=19,new U.TileLayer("http://online{s}.map.bdimg.com/onlinelabel/?qt=tile&x={x}&y={y}&z={z}&styles=pl&scaler=1&p=1",{...n,style:t});case this.source.ANNO:return n.maxNativeZoom=19,new U.TileLayer("http://online{s}.map.bdimg.com/tile/?qt=tile&x={x}&y={y}&z={z}&styles=sl",{...n,style:t});case this.source.SATELITE:return n.maxNativeZoom=17,new U.LayerGroup([new U.TileLayer("http://shangetu{s}.map.bdimg.com/it/u=x={x};y={y};z={z};v=009;type=sate&fm=46",{...n,style:t}),new U.TileLayer("http://online{s}.map.bdimg.com/tile/?qt=tile&x={x}&y={y}&z={z}&styles=sl",{...n,style:t})]);case this.source.SATELITE_NO_ANNO:return n.maxNativeZoom=19,new U.TileLayer("http://shangetu{s}.map.bdimg.com/it/u=x={x};y={y};z={z};v=009;type=sate&fm=46",{...n,style:t})}break;case this.provide.GAODE:switch(this.options.source){case this.source.VECTOR:return n.maxNativeZoom=18,new U.TileLayer("http://webrd0{s}.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=8&x={x}&y={y}&z={z}",{...n,style:t});case this.source.ANNO:return n.maxNativeZoom=18,new U.TileLayer("http://webst0{s}.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=8&x={x}&y={y}&z={z}",{...n,style:t});case this.source.SATELITE:return n.maxNativeZoom=16,new U.LayerGroup([new U.TileLayer("http://webst0{s}.is.autonavi.com/appmaptile?x={x}&y={y}&z={z}&lang=zh_cn&size=1&scale=1&style=6",{...n,style:t}),new U.TileLayer("http://webst0{s}.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=8&x={x}&y={y}&z={z}",{...n,style:t})]);case this.source.SATELITE_NO_ANNO:return n.maxNativeZoom=18,new U.TileLayer("http://webst0{s}.is.autonavi.com/appmaptile?x={x}&y={y}&z={z}&lang=zh_cn&size=1&scale=1&style=6",{...n,style:t})}break;case this.provide.YANDEX:switch(this.options.source){case this.source.ANNO:return new U.TileLayer("https://core-renderer-tiles.maps.yandex.net/tiles?l=skl&v=24.05.19-0-b240515214430&x={x}&y={y}&z={z}&scale=1&lang=en_US&client_id=yandex-web-maps&experimental_ranking_mode_name=default-web-ranking&experimental_data_hd=vegetation_model_exp",{...n,style:t});case this.source.SATELITE:return new U.LayerGroup([new U.TileLayer("https://sat{s}.maps.yandex.net/tiles?l=sat&v=3.1238.0&x={x}&y={y}&z={z}&scale=1&lang=en_US&client_id=yandex-web-maps",{...n,subdomains:["01","02","03","04"],style:t}),new U.TileLayer("https://core-renderer-tiles.maps.yandex.net/tiles?l=skl&v=24.05.19-0-b240515214430&x={x}&y={y}&z={z}&scale=1&lang=en_US&client_id=yandex-web-maps&experimental_ranking_mode_name=default-web-ranking&experimental_data_hd=vegetation_model_exp",{...n,style:t})]);case this.source.SATELITE_NO_ANNO:return new U.TileLayer("https://sat{s}.maps.yandex.net/tiles?l=sat&v=3.1238.0&x={x}&y={y}&z={z}&scale=1&lang=en_US&client_id=yandex-web-maps",{...n,subdomains:["01","02","03","04"],style:t})}break}},setOptions(t){U.Util.setOptions(this,t);const n=this.getLayerGroup();this.map.removeLayer(this.tileLayers),setTimeout(()=>{this.replaceProjection(),this.tileLayers=n.addTo(this.map)},500)}}),Mf=U.ImageOverlay.extend({initialize(t,n={},r=new U.Marker,u=new U.Marker){typeof t=="string"?this._url=t:this._rawImage=t,this.topRightMarker=r,this.bottomLeftMarker=u,this.angle=0,U.setOptions(this,n),this._topLeft=new U.LatLng(n.corners[0]),this._topRight=new U.LatLng(n.corners[1]),this._bottomLeft=new U.LatLng(n.corners[3]),r.on("drag dragend",this.reposition,this),u.on("drag dragend",this.reposition,this)},onAdd(t){this._image||(this._initImage(),this.options.opacity<1&&this._updateOpacity()),this.options.interactive&&(U.DomUtil.addClass(this._rawImage,"leaflet-interactive"),this.addInteractiveTarget(this._rawImage)),t.on("zoomend resetview",this._reset,this),this.getPane().appendChild(this._image),this._reset()},onRemove(t){t.off("zoomend resetview",this._reset,this),U.ImageOverlay.prototype.onRemove.call(this,t)},_initImage(){let t=this._rawImage;this._url&&(t=U.DomUtil.create("img"),t.style.display="none",this.options.crossOrigin&&(t.crossOrigin=""),t.src=this._url,this._rawImage=t),U.DomUtil.addClass(t,"leaflet-image-layer");const n=this._image=U.DomUtil.create("div","leaflet-image-layer "+(this._zoomAnimated?"leaflet-zoom-animated":""));this._updateZIndex&&this._updateZIndex(),n.appendChild(t),n.onselectstart=U.Util.falseFn,n.onmousemove=U.Util.falseFn,t.onload=(function(){this._reset(),t.style.display="block",this.options.w=this._rawImage.width,this.options.h=this._rawImage.height,this.boundsRectBottomLeft=new U.Point(0,0),this.boundsRectTopRight=new U.Point(this.options.w,this.options.h),this.diagonalVector=this.boundsRectTopRight.subtract(this.boundsRectBottomLeft),this.fire("load")}).bind(this),t.alt=this.options.alt},_reset(){const t=this._image,n=this._map.latLngToLayerPoint(this._topLeft),r=this._map.latLngToLayerPoint(this._topRight),u=this._map.latLngToLayerPoint(this._bottomLeft),d=r.subtract(n).add(u),f=new U.Bounds([n,r,u,d]),p=f.getSize(),g=n.subtract(f.min),M=r.subtract(n),B=u.subtract(n),E=Math.atan2(M.y,M.x),x=Math.atan2(B.x,B.y);this.angle=((Math.abs(E)+Math.abs(x))/2*180).toFixed(2),this._bounds=new U.LatLngBounds(this._map.layerPointToLatLng(f.min),this._map.layerPointToLatLng(f.max)),U.DomUtil.setPosition(t,f.min),t.pxBounds=f,t.style.width=p.x+"px",t.style.height=p.y+"px";const C=this._rawImage.width,T=this._rawImage.height;if(!C||!T)return;const G=n.distanceTo(r)/C*Math.cos(E),j=n.distanceTo(u)/T*Math.cos(x);this._rawImage.style.transformOrigin="0 0",this._rawImage.style.transform="translate("+g.x+"px, "+g.y+"px)skew("+x+"rad, "+E+"rad) scale("+G+", "+j+") "},_animateZoom(t){const n=this._map.getZoomScale(t.zoom),u=this._map._latLngBoundsToNewLayerBounds(this._bounds,t.zoom,t.center).min;U.DomUtil.setTransform(this._image,u,n)},reposition(){const t=this.topRightMarker.getLatLng(),n=this.bottomLeftMarker.getLatLng(),r=this.options.w,u=this.options.h,d=this.getCornerLatLng(new U.Point(0,u),n,t),f=this.getCornerLatLng(new U.Point(r,u),n,t),p=this.getCornerLatLng(new U.Point(0,0),n,t),g=this.getCornerLatLng(new U.Point(r,0),n,t);this.options.corners=[d,f,g,p],this._topLeft=new U.LatLng(d),this._topRight=new U.LatLng(f),this._bottomLeft=new U.LatLng(p),this._reset()},getCornerLatLng(t,n,r){const u=this.boundsRectBottomLeft,d=this.diagonalVector,f=t.subtract(u),p=this.getClockWiseRotate90DegreePoint(d),g=this.getDotProduction(d,f)/this.getDotProduction(d,d),M=-this.getDotProduction(p,f)/this.getDotProduction(p,p),B=new U.Projection.SphericalMercator.project(n),E=new U.Projection.SphericalMercator.project(r),x=B.add(E.subtract(B).multiplyBy(g)),C=this.getClockWiseRotate90DegreePoint(B.subtract(E)).multiplyBy(M),T=x.add(C);return new U.Projection.SphericalMercator.unproject(T)},setUrl(t){return this._url=t,this._rawImage&&(this._rawImage.src=t),this},getDotProduction(t,n){return t.x*n.x+t.y*n.y},getClockWiseRotate90DegreePoint(t){return new U.Point([t.y,-t.x])}});var il={exports:{}};(function(t){(function(n,r,u){t.exports?t.exports=u():r[n]=u()})("h337",vn,function(){var n={defaultRadius:40,defaultRenderer:"canvas2d",defaultGradient:{.25:"rgb(0,0,255)",.55:"rgb(0,255,0)",.85:"yellow",1:"rgb(255,0,0)"},defaultMaxOpacity:1,defaultMinOpacity:0,defaultBlur:.85,defaultXField:"x",defaultYField:"y",defaultValueField:"value",plugins:{}},r=function(){var B=function(C){this._coordinator={},this._data=[],this._radi=[],this._min=10,this._max=1,this._xField=C.xField||C.defaultXField,this._yField=C.yField||C.defaultYField,this._valueField=C.valueField||C.defaultValueField,C.radius&&(this._cfgRadius=C.radius)},E=n.defaultRadius;return B.prototype={_organiseData:function(x,C){var T=x[this._xField],G=x[this._yField],j=this._radi,W=this._data,at=this._max,rt=this._min,ct=x[this._valueField]||1,yt=x.radius||this._cfgRadius||E;W[T]||(W[T]=[],j[T]=[]),W[T][G]?W[T][G]+=ct:(W[T][G]=ct,j[T][G]=yt);var mt=W[T][G];return mt>at?(C?this.setDataMax(mt):this._max=mt,!1):mt<rt?(C?this.setDataMin(mt):this._min=mt,!1):{x:T,y:G,value:ct,radius:yt,min:rt,max:at}},_unOrganizeData:function(){var x=[],C=this._data,T=this._radi;for(var G in C)for(var j in C[G])x.push({x:G,y:j,radius:T[G][j],value:C[G][j]});return{min:this._min,max:this._max,data:x}},_onExtremaChange:function(){this._coordinator.emit("extremachange",{min:this._min,max:this._max})},addData:function(){if(arguments[0].length>0)for(var x=arguments[0],C=x.length;C--;)this.addData.call(this,x[C]);else{var T=this._organiseData(arguments[0],!0);T&&(this._data.length===0&&(this._min=this._max=T.value),this._coordinator.emit("renderpartial",{min:this._min,max:this._max,data:[T]}))}return this},setData:function(x){var C=x.data,T=C.length;this._data=[],this._radi=[];for(var G=0;G<T;G++)this._organiseData(C[G],!1);return this._max=x.max,this._min=x.min||0,this._onExtremaChange(),this._coordinator.emit("renderall",this._getInternalData()),this},removeData:function(){},setDataMax:function(x){return this._max=x,this._onExtremaChange(),this._coordinator.emit("renderall",this._getInternalData()),this},setDataMin:function(x){return this._min=x,this._onExtremaChange(),this._coordinator.emit("renderall",this._getInternalData()),this},setCoordinator:function(x){this._coordinator=x},_getInternalData:function(){return{max:this._max,min:this._min,data:this._data,radi:this._radi}},getData:function(){return this._unOrganizeData()}},B}(),u=function(){var B=function(T){var G=T.gradient||T.defaultGradient,j=document.createElement("canvas"),W=j.getContext("2d");j.width=256,j.height=1;var at=W.createLinearGradient(0,0,256,1);for(var rt in G)at.addColorStop(rt,G[rt]);return W.fillStyle=at,W.fillRect(0,0,256,1),W.getImageData(0,0,256,1).data},E=function(T,G){var j=document.createElement("canvas"),W=j.getContext("2d"),at=T,rt=T;if(j.width=j.height=T*2,G==1)W.beginPath(),W.arc(at,rt,T,0,2*Math.PI,!1),W.fillStyle="rgba(0,0,0,1)",W.fill();else{var ct=W.createRadialGradient(at,rt,T*G,at,rt,T);ct.addColorStop(0,"rgba(0,0,0,1)"),ct.addColorStop(1,"rgba(0,0,0,0)"),W.fillStyle=ct,W.fillRect(0,0,2*T,2*T)}return j},x=function(rt){for(var G=[],j=rt.min,W=rt.max,at=rt.radi,rt=rt.data,ct=Object.keys(rt),yt=ct.length;yt--;)for(var mt=ct[yt],xt=Object.keys(rt[mt]),Dt=xt.length;Dt--;){var It=xt[Dt],zt=rt[mt][It],Yt=at[mt][It];G.push({x:mt,y:It,value:zt,radius:Yt})}return{min:j,max:W,data:G}};function C(T){var G=T.container,j=this.shadowCanvas=document.createElement("canvas"),W=this.canvas=T.canvas||document.createElement("canvas");this._renderBoundaries=[1e4,1e4,0,0];var at=getComputedStyle(T.container)||{};W.className="heatmap-canvas",this._width=W.width=j.width=T.width||+at.width.replace(/px/,""),this._height=W.height=j.height=T.height||+at.height.replace(/px/,""),this.shadowCtx=j.getContext("2d"),this.ctx=W.getContext("2d"),W.style.cssText=j.style.cssText="position:absolute;left:0;top:0;",G.style.position="relative",G.appendChild(W),this._palette=B(T),this._templates={},this._setStyles(T)}return C.prototype={renderPartial:function(T){T.data.length>0&&(this._drawAlpha(T),this._colorize())},renderAll:function(T){this._clear(),T.data.length>0&&(this._drawAlpha(x(T)),this._colorize())},_updateGradient:function(T){this._palette=B(T)},updateConfig:function(T){T.gradient&&this._updateGradient(T),this._setStyles(T)},setDimensions:function(T,G){this._width=T,this._height=G,this.canvas.width=this.shadowCanvas.width=T,this.canvas.height=this.shadowCanvas.height=G},_clear:function(){this.shadowCtx.clearRect(0,0,this._width,this._height),this.ctx.clearRect(0,0,this._width,this._height)},_setStyles:function(T){this._blur=T.blur==0?0:T.blur||T.defaultBlur,T.backgroundColor&&(this.canvas.style.backgroundColor=T.backgroundColor),this._width=this.canvas.width=this.shadowCanvas.width=T.width||this._width,this._height=this.canvas.height=this.shadowCanvas.height=T.height||this._height,this._opacity=(T.opacity||0)*255,this._maxOpacity=(T.maxOpacity||T.defaultMaxOpacity)*255,this._minOpacity=(T.minOpacity||T.defaultMinOpacity)*255,this._useGradientOpacity=!!T.useGradientOpacity},_drawAlpha:function(W){for(var G=this._min=W.min,j=this._max=W.max,W=W.data||[],at=W.length,rt=1-this._blur;at--;){var ct=W[at],yt=ct.x,mt=ct.y,xt=ct.radius,Dt=Math.min(ct.value,j),It=yt-xt,zt=mt-xt,Yt=this.shadowCtx,Et;this._templates[xt]?Et=this._templates[xt]:this._templates[xt]=Et=E(xt,rt);var jt=(Dt-G)/(j-G);Yt.globalAlpha=jt<.01?.01:jt,Yt.drawImage(Et,It,zt),It<this._renderBoundaries[0]&&(this._renderBoundaries[0]=It),zt<this._renderBoundaries[1]&&(this._renderBoundaries[1]=zt),It+2*xt>this._renderBoundaries[2]&&(this._renderBoundaries[2]=It+2*xt),zt+2*xt>this._renderBoundaries[3]&&(this._renderBoundaries[3]=zt+2*xt)}},_colorize:function(){var T=this._renderBoundaries[0],G=this._renderBoundaries[1],j=this._renderBoundaries[2]-T,W=this._renderBoundaries[3]-G,at=this._width,rt=this._height,ct=this._opacity,yt=this._maxOpacity,mt=this._minOpacity,xt=this._useGradientOpacity;T<0&&(T=0),G<0&&(G=0),T+j>at&&(j=at-T),G+W>rt&&(W=rt-G);for(var Dt=this.shadowCtx.getImageData(T,G,j,W),It=Dt.data,zt=It.length,Yt=this._palette,Et=3;Et<zt;Et+=4){var jt=It[Et],be=jt*4;if(be){var pe;ct>0?pe=ct:jt<yt?jt<mt?pe=mt:pe=jt:pe=yt,It[Et-3]=Yt[be],It[Et-2]=Yt[be+1],It[Et-1]=Yt[be+2],It[Et]=xt?Yt[be+3]:pe}}Dt.data=It,this.ctx.putImageData(Dt,T,G),this._renderBoundaries=[1e3,1e3,0,0]},getValueAt:function(T){var G,j=this.shadowCtx,W=j.getImageData(T.x,T.y,1,1),at=W.data[3],rt=this._max,ct=this._min;return G=Math.abs(rt-ct)*(at/255)>>0,G},getDataURL:function(){return this.canvas.toDataURL()}},C}(),d=function(){var B=!1;return n.defaultRenderer==="canvas2d"&&(B=u),B}(),f={merge:function(){for(var M={},B=arguments.length,E=0;E<B;E++){var x=arguments[E];for(var C in x)M[C]=x[C]}return M}},p=function(){var B=function(){function T(){this.cStore={}}return T.prototype={on:function(G,j,W){var at=this.cStore;at[G]||(at[G]=[]),at[G].push(function(rt){return j.call(W,rt)})},emit:function(G,j){var W=this.cStore;if(W[G])for(var at=W[G].length,rt=0;rt<at;rt++){var ct=W[G][rt];ct(j)}}},T}(),E=function(C){var T=C._renderer,G=C._coordinator,j=C._store;G.on("renderpartial",T.renderPartial,T),G.on("renderall",T.renderAll,T),G.on("extremachange",function(W){C._config.onExtremaChange&&C._config.onExtremaChange({min:W.min,max:W.max,gradient:C._config.gradient||C._config.defaultGradient})}),j.setCoordinator(G)};function x(){var C=this._config=f.merge(n,arguments[0]||{});if(this._coordinator=new B,C.plugin){var T=C.plugin;if(n.plugins[T]){var G=n.plugins[T];this._renderer=new G.renderer(C),this._store=new G.store(C)}else throw new Error("Plugin '"+T+"' not found. Maybe it was not registered.")}else this._renderer=new d(C),this._store=new r(C);E(this)}return x.prototype={addData:function(){return this._store.addData.apply(this._store,arguments),this},removeData:function(){return this._store.removeData&&this._store.removeData.apply(this._store,arguments),this},setData:function(){return this._store.setData.apply(this._store,arguments),this},setDataMax:function(){return this._store.setDataMax.apply(this._store,arguments),this},setDataMin:function(){return this._store.setDataMin.apply(this._store,arguments),this},configure:function(C){return this._config=f.merge(this._config,C),this._renderer.updateConfig(this._config),this._coordinator.emit("renderall",this._store._getInternalData()),this},repaint:function(){return this._coordinator.emit("renderall",this._store._getInternalData()),this},getData:function(){return this._store.getData()},getDataURL:function(){return this._renderer.getDataURL()},getValueAt:function(C){return this._store.getValueAt?this._store.getValueAt(C):this._renderer.getValueAt?this._renderer.getValueAt(C):null}},x}(),g={create:function(M){return new p(M)},register:function(M,B){n.plugins[M]=B}};return g})})(il);var xf=il.exports;const Lf=yl(xf);var to=L.Layer.extend({initialize:function(t){this.cfg=t,this._el=L.DomUtil.create("div","leaflet-zoom-hide"),this._data=[],this._max=1,this._min=0,this.cfg.container=this._el},onAdd:function(t){var n=t.getSize();this._map=t,this._width=n.x,this._height=n.y,this._el.style.width=n.x+"px",this._el.style.height=n.y+"px",this._el.style.position="absolute",this._resetOrigin(),t.getPanes().overlayPane.appendChild(this._el),this._heatmap||(this._heatmap=Lf.create(this.cfg)),t.on("moveend",this._resetOrigin,this),this._draw()},addTo:function(t){return t.addLayer(this),this},onRemove:function(t){t.getPanes().overlayPane.removeChild(this._el),t.off("moveend",this._resetOrigin,this)},_draw:function(){if(this._map){var t=this._map.getPanes().mapPane,n=t._leaflet_pos;this._el.style[to.CSS_TRANSFORM]="translate("+-Math.round(n.x)+"px,"+-Math.round(n.y)+"px)",this._update()}},_update:function(){var t,n,r,u={max:this._max,min:this._min,data:[]};if(t=this._map.getBounds(),n=this._map.getZoom(),r=Math.pow(2,n),this._data.length==0){this._heatmap&&this._heatmap.setData(u);return}for(var d=[],f=this.cfg.scaleRadius?r:1,p=0,g=0,M=this.cfg.valueField,B=this._data.length;B--;){var E=this._data[B],x=E[M],C=E.latlng;if(t.contains(C)){p=Math.max(x,p),g=Math.min(x,g);var T=this._map.latLngToContainerPoint(C),G={x:Math.round(T.x),y:Math.round(T.y)};G[M]=x;var j;E.radius?j=E.radius*f:j=(this.cfg.radius||2)*f,G.radius=j,d.push(G)}}this.cfg.useLocalExtrema&&(u.max=p,u.min=g),u.data=d,this._heatmap.setData(u)},setData:function(d){this._max=d.max||this._max,this._min=d.min||this._min;for(var n=this.cfg.latField||"lat",r=this.cfg.lngField||"lng",u=this.cfg.valueField||"value",d=d.data,f=d.length,p=[];f--;){var g=d[f],M=new L.LatLng(g[n],g[r]),B={latlng:M};B[u]=g[u],g.radius&&(B.radius=g.radius),p.push(B)}this._data=p,this._draw()},addData:function(t){if(t.length>0)for(var n=t.length;n--;)this.addData(t[n]);else{var r=this.cfg.latField||"lat",u=this.cfg.lngField||"lng",d=this.cfg.valueField||"value",f=t,p=new L.LatLng(f[r],f[u]),g={latlng:p};g[d]=f[d],this._max=Math.max(this._max,g[d]),this._min=Math.min(this._min,g[d]),f.radius&&(g.radius=f.radius),this._data.push(g),this._draw()}},_resetOrigin:function(){this._origin=this._map.layerPointToLatLng(new L.Point(0,0));var t=this._map.getSize();(this._width!==t.x||this._height!==t.y)&&(this._width=t.x,this._height=t.y,this._el.style.width=this._width+"px",this._el.style.height=this._height+"px"),this._draw()}});to.CSS_TRANSFORM=function(){for(var t=document.createElement("div"),n=["transform","WebkitTransform","MozTransform","OTransform","msTransform"],r=0;r<n.length;r++){var u=n[r];if(t.style[u]!==void 0)return u}return n[0]}();const bf=L.TileLayer.extend({defaultWmtsParams:{service:"WMTS",request:"GetTile",version:"1.0.0",layer:"",style:"",tilematrixset:"",format:"image/jpeg"},initialize:function(t,n){this._url=t;var r={},u=Object.keys(n);u.forEach(g=>{r[g.toLowerCase()]=n[g]});var d=L.extend({},this.defaultWmtsParams),f=r.tileSize||this.options.tileSize;r.detectRetina&&L.Browser.retina?d.width=d.height=f*2:d.width=d.height=f;for(var p in r)d.hasOwnProperty(p)&&p!="matrixIds"&&(d[p]=r[p]);this.wmtsParams=d,this.matrixIds=n.matrixIds||this.getDefaultMatrix(),L.setOptions(this,n)},onAdd:function(t){this._crs=this.options.crs||t.options.crs,L.TileLayer.prototype.onAdd.call(this,t)},getTileUrl:function(t){var n=this.options.tileSize,r=t.multiplyBy(n);r.x+=1,r.y-=1;var u=r.add(new L.Point(n,n)),d=this._tileZoom,f=this._crs.project(this._map.unproject(r,d)),p=this._crs.project(this._map.unproject(u,d));tilewidth=p.x-f.x;var g=this.matrixIds[d].identifier,M=this.wmtsParams.tilematrixset+":"+g,B=this.matrixIds[d].topLeftCorner.lng,E=this.matrixIds[d].topLeftCorner.lat,x=Math.floor((f.x-B)/tilewidth),C=-Math.floor((f.y-E)/tilewidth),T=L.Util.template(this._url,{s:this._getSubdomain(t)});return T+L.Util.getParamString(this.wmtsParams,T)+"&tilematrix="+M+"&tilerow="+C+"&tilecol="+x},setParams:function(t,n){return L.extend(this.wmtsParams,t),n||this.redraw(),this},getDefaultMatrix:function(){for(var t=new Array(22),n=0;n<22;n++)t[n]={identifier:""+n,topLeftCorner:new L.LatLng(200375083428e-4,-200375083428e-4)};return t}});var fe={};fe.Source=L.Layer.extend({options:{untiled:!0,identify:!0},initialize:function(t,n){L.setOptions(this,n),this.options.tiled&&(this.options.untiled=!1),this._url=t,this._subLayers={},this._overlay=this.createOverlay(this.options.untiled)},createOverlay:function(t){var n={};for(var r in this.options)r!="untiled"&&r!="identify"&&(n[r]=this.options[r]);return t?fe.overlay(this._url,n):fe.tileLayer(this._url,n)},onAdd:function(){this.refreshOverlay()},getEvents:function(){return this.options.identify?{click:this.identify}:{}},setOpacity:function(t){this.options.opacity=t,this._overlay&&this._overlay.setOpacity(t)},bringToBack:function(){this.options.isBack=!0,this._overlay&&this._overlay.bringToBack()},bringToFront:function(){this.options.isBack=!1,this._overlay&&this._overlay.bringToFront()},getLayer:function(t){return fe.layer(this,t)},addSubLayer:function(t){this._subLayers[t]=!0,this.refreshOverlay()},removeSubLayer:function(t){delete this._subLayers[t],this.refreshOverlay()},refreshOverlay:function(){var t=Object.keys(this._subLayers).join(",");this._map&&(t?(this._overlay.setParams({layers:t}),this._overlay.addTo(this._map)):this._overlay.remove())},identify:function(t){var n=this.getIdentifyLayers();n.length&&this.getFeatureInfo(t.containerPoint,t.latlng,n,this.showFeatureInfo)},getFeatureInfo:function(t,n,r,u){var d=this.getFeatureInfoParams(t,r),f=this._url+L.Util.getParamString(d,this._url);this.showWaiting(),this.ajax(f,p);function p(g){this.hideWaiting();var M=this.parseFeatureInfo(g,f);u.call(this,n,M)}},ajax:function(t,n){wf.call(this,t,n)},getIdentifyLayers:function(){return this.options.identifyLayers?this.options.identifyLayers:Object.keys(this._subLayers)},getFeatureInfoParams:function(t,n){var r,u;this.options.untiled?r=this._overlay.wmsParams:(u=this.createOverlay(!0),u.updateWmsParams(this._map),r=u.wmsParams,r.layers=n.join(","));var d={request:"GetFeatureInfo",query_layers:n.join(","),X:Math.round(t.x),Y:Math.round(t.y)};return L.extend({},r,d)},parseFeatureInfo:function(t,n){return t=="error"&&(t="<iframe src='"+n+"' style='border:none'>"),t},showFeatureInfo:function(t,n){this._map&&this._map.openPopup(n,t)},showWaiting:function(){this._map&&(this._map._container.style.cursor="progress")},hideWaiting:function(){this._map&&(this._map._container.style.cursor="default")}}),fe.source=function(t,n){return new fe.Source(t,n)},fe.Layer=L.Layer.extend({initialize:function(t,n,r){L.setOptions(this,r),t.addSubLayer||(t=fe.getSourceForUrl(t,r)),this._source=t,this._name=n},onAdd:function(){this._source._map||this._source.addTo(this._map),this._source.addSubLayer(this._name)},onRemove:function(){this._source.removeSubLayer(this._name)},setOpacity:function(t){this._source.setOpacity(t)},bringToBack:function(){this._source.bringToBack()},bringToFront:function(){this._source.bringToFront()}}),fe.layer=function(t,n){return new fe.Layer(t,n)};var eo={};fe.getSourceForUrl=function(t,n){return eo[t]||(eo[t]=fe.source(t,n)),eo[t]},fe.TileLayer=L.TileLayer.WMS,fe.tileLayer=L.tileLayer.wms,fe.Overlay=L.Layer.extend({defaultWmsParams:{service:"WMS",request:"GetMap",version:"1.1.1",layers:"",styles:"",format:"image/jpeg",transparent:!1},options:{crs:null,uppercase:!1,attribution:"",opacity:1,isBack:!1,minZoom:0,maxZoom:18},initialize:function(t,n){this._url=t;var r={},u={};for(var d in n)d in this.options?u[d]=n[d]:r[d]=n[d];L.setOptions(this,u),this.wmsParams=L.extend({},this.defaultWmsParams,r)},setParams:function(t){L.extend(this.wmsParams,t),this.update()},getAttribution:function(){return this.options.attribution},onAdd:function(){this.update()},onRemove:function(t){this._currentOverlay&&(t.removeLayer(this._currentOverlay),delete this._currentOverlay),this._currentUrl&&delete this._currentUrl},getEvents:function(){return{moveend:this.update}},update:function(){if(!this._map)return;this.updateWmsParams();var t=this.getImageUrl();if(this._currentUrl==t)return;this._currentUrl=t;var n=this._map.getBounds(),r=L.imageOverlay(t,n,{opacity:0});r.addTo(this._map),r.once("load",u,this);function u(){if(this._map){if(r._url!=this._currentUrl){this._map.removeLayer(r);return}else this._currentOverlay&&this._map.removeLayer(this._currentOverlay);this._currentOverlay=r,r.setOpacity(this.options.opacity?this.options.opacity:1),this.options.isBack===!0&&r.bringToBack(),this.options.isBack===!1&&r.bringToFront()}}(this._map.getZoom()<this.options.minZoom||this._map.getZoom()>this.options.maxZoom)&&this._map.removeLayer(r)},setOpacity:function(t){this.options.opacity=t,this._currentOverlay&&this._currentOverlay.setOpacity(t)},bringToBack:function(){this.options.isBack=!0,this._currentOverlay&&this._currentOverlay.bringToBack()},bringToFront:function(){this.options.isBack=!1,this._currentOverlay&&this._currentOverlay.bringToFront()},updateWmsParams:function(t){t||(t=this._map);var n=t.getBounds(),r=t.getSize(),u=parseFloat(this.wmsParams.version),d=this.options.crs||t.options.crs,f=u>=1.3?"crs":"srs",p=d.project(n.getNorthWest()),g=d.project(n.getSouthEast()),M={width:r.x,height:r.y};M[f]=d.code,M.bbox=(u>=1.3&&d===L.CRS.EPSG4326?[g.y,p.x,p.y,g.x]:[p.x,g.y,g.x,p.y]).join(","),L.extend(this.wmsParams,M)},getImageUrl:function(){var t=this.options.uppercase||!1,n=L.Util.getParamString(this.wmsParams,this._url,t);return this._url+n}}),fe.overlay=function(t,n){return new fe.Overlay(t,n)};function wf(t,n){var r=this,u=new XMLHttpRequest;u.onreadystatechange=d,u.open("GET",t),u.send();function d(){u.readyState===4&&(u.status===200?n.call(r,u.responseText):n.call(r,"error"))}}const nl=U.Draggable.extend({initialize(t,n,r){U.Draggable.prototype.initialize.call(this,t,t),this._element=t,this._stepHeight=n??5.45,this._knobHeight=r??10,this.on("predrag",function(){this._newPos.x=0,this._newPos.y=this._adjust(this._newPos.y)},this)},_adjust(t){let n=Math.round(this._toValue(t));return n=Math.max(0,Math.min(this._maxValue,n)),this._toY(n)},_toY(t){return this._k*t+this._m},_toValue(t){return(t-this._m)/this._k},setSteps(t){this._maxValue=t-1,this._k=-this._stepHeight,this._m=0},setPosition(t){U.DomUtil.setPosition(this._element,L.point(0,this._adjust(t)))},setValue(t){this.setPosition(this._toY(t))},getValue(){return this._toValue(U.DomUtil.getPosition(this._element).y)}}),Ea=U.Handler.extend({options:{color:"#f00",weight:2,fillColor:"#ff0",fillOpacity:.7,radius:5,continue:!1,showCloseButton:!1,showMeasurements:!1},PointEvents:{_mouseMove(t){this.tooltip.setLatLng(t.latlng),this.tempPoint.setLatLng(t.latlng),this._map.openTooltip(this.tooltip),this.geometry&&this._map.hasLayer(this.geometry)?this.geometry.setLatLng(t.latlng):(this.tooltip.setContent("点击开始绘制"),this.geometry=new U.CircleMarker(t.latlng,this.options).addTo(this._map)),this.onDrawing&&this.onDrawing(this.geometry)},_mouseClick(t){this.onFinish&&this.geometry&&this.onFinish(this.geometry),!this.options.continue&&this.disable(),this.geometry=null}},CircleEvents:{_mouseMove(t){if(this.tooltip.setLatLng(t.latlng),this._map.openTooltip(this.tooltip),this.geometry&&this._map.hasLayer(this.geometry)){const n=this.latlng?this._map.distance(t.latlng,this.latlng):0;this.geometry.setRadius(n),n!==0?this.tooltip.setContent(`半径:<b>${n.toFixed(2)}m</b><br/>继续点击完成绘制`):this.tooltip.setContent("点击开始绘制")}this.onDrawing&&this.onDrawing(this.geometry)},_mouseClick(t){this.latlng=t.latlng,this.onVertexAdd&&this.onVertexAdd(this.geometry),this.geometry&&this.geometry.getRadius()!==0?(this.onFinish&&this.geometry&&this.onFinish(this.geometry),this.latlngs=[],!this.options.continue&&this.disable(),this.geometry=null):this.geometry=new U.Circle(this.latlng,0,this.options).addTo(this._map)},_mouseDblClick(t){}},PolylineEvents:{_mouseMove(t){this.tooltip.setLatLng(t.latlng),this.tempPoint.setLatLng(t.latlng),this._map.openTooltip(this.tooltip),this.geometry&&this._map.hasLayer(this.geometry)?(this.geometry.setLatLngs([...this.latlngs,t.latlng]),this.latlngs.length?this.tooltip.setContent("点击继续绘制,双击完成绘制"):this.tooltip.setContent("点击开始绘制")):this.geometry=new U.Polyline([t.latlng],this.options).addTo(this._map),this.onDrawing&&this.onDrawing(this.geometry)},_mouseClick(t){this.latlngs.push(t.latlng),String(this.latlngs.at(-1))===String(this.latlngs.at(-2))&&(this.latlngs=this.latlngs.slice(0,this.latlngs.length-1)),this.geometry.setLatLngs(this.latlngs),this.onVertexAdd&&this.onVertexAdd(this.geometry)},_mouseDblClick(t){this.onFinish&&this.geometry&&this.onFinish(this.geometry),this.latlngs=[],!this.options.continue&&this.disable(),this.geometry=null}},RectangleEvents:{_mouseMove(t){this.tooltip.setLatLng(t.latlng),this.tempPoint.setLatLng(t.latlng),this._map.openTooltip(this.tooltip),this.geometry&&this._map.hasLayer(this.geometry)?(this.geometry.setBounds([...this.latlngs,t.latlng]),this.latlngs.length?this.tooltip.setContent("继续点击完成绘制"):this.tooltip.setContent("点击开始绘制")):this.geometry=new U.Rectangle([t.latlng,t.latlng],this.options).addTo(this._map),this.onDrawing&&this.onDrawing(this.geometry)},_mouseClick(t){this.latlngs.push(t.latlng),String(this.latlngs.at(-1))===String(this.latlngs.at(-2))&&(this.latlngs=this.latlngs.slice(0,this.latlngs.length-1)),this.geometry.setBounds(this.latlngs),this.onVertexAdd&&this.onVertexAdd(this.geometry),this.latlngs.length===2&&(this.onFinish&&this.geometry&&this.onFinish(this.geometry),this.latlngs=[],!this.options.continue&&this.disable(),this.geometry=null)},_mouseDblClick(t){}},PolygonEvents:{_mouseMove(t){this.tooltip.setLatLng(t.latlng),this.tempPoint.setLatLng(t.latlng),this._map.openTooltip(this.tooltip),this.geometry&&this._map.hasLayer(this.geometry)?(this.geometry.setLatLngs([...this.latlngs,t.latlng]),this.latlngs.length?this.tooltip.setContent("点击继续绘制,双击完成绘制"):this.tooltip.setContent("点击开始绘制")):this.geometry=new U.Polygon([t.latlng],this.options).addTo(this._map),this.onDrawing&&this.onDrawing(this.geometry)},_mouseClick(t){this.latlngs.push(t.latlng),String(this.latlngs.at(-1))===String(this.latlngs.at(-2))&&(this.latlngs=this.latlngs.slice(0,this.latlngs.length-1)),this.geometry.setLatLngs(this.latlngs),this.onVertexAdd&&this.onVertexAdd(this.geometry)},_mouseDblClick(t){this.onFinish&&this.geometry&&this.onFinish(this.geometry),this.latlngs=[],!this.options.continue&&this.disable(),this.geometry=null}},addHooks(){this[this.drawType+"Events"]&&(this[this.drawType+"Events"]._mouseMove&&this._map.on("mousemove",this[this.drawType+"Events"]._mouseMove,this),this[this.drawType+"Events"]._mouseClick&&this._map.on("click",this[this.drawType+"Events"]._mouseClick,this),this[this.drawType+"Events"]._mouseDblClick&&this._map.on("dblclick",this[this.drawType+"Events"]._mouseDblClick,this))},removeHooks(){this[this.drawType+"Events"]&&(this[this.drawType+"Events"]._mouseMove&&this._map.off("mousemove",this[this.drawType+"Events"]._mouseMove,this),this[this.drawType+"Events"]._mouseClick&&this._map.off("click",this[this.drawType+"Events"]._mouseClick,this),this[this.drawType+"Events"]._mouseDblClick&&this._map.off("dblclick",this[this.drawType+"Events"]._mouseDblClick,this))},setOptions(t){return U.Util.setOptions(this,t),this},enable(t,n={}){return U.Util.setOptions(this,n),this.onFinish=n.onFinish||new Function,this.onDrawing=n.onDrawing||new Function,this.onVertexAdd=n.onVertexAdd||new Function,this.drawType=$t.StringUtil.changeCase(t,1),this.latlngs=n.latlngs||[],this._map.setCursor("data:application/octet-stream;base64,AAACAAEAEBAAAAMABgBoBQAAFgAAACgAAAAQAAAAIAAAAAEACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AACxAAAs6/oAAIKEAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQUAAAAAAAAAAAAAAAAAAAUFBQAAAAAAAAAAAAAAAAAFAwQAAAAAAAAAAAAAAAAAAAMDBAAAAAAAAAEBAQAAAAADAwQAAAAAAAABAQEAAAAAAAMDBAQAAAAAAQEBAAAAAAADAwIAAAAAAAAAAAAAAAAAAAIBAQAAAAAAAAAAAAAAAAABAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//AAD//wAA/v8AAP4/AAD+HwAA/g8AAP4PAAD+BwAAxwcAAMcDAADHgwAA/8EAAP/BAAD/5wAA//8AAP//AAA="),this.tempPoint=new U.CircleMarker([0,0],{weight:1,radius:5,color:"#3388ff",fillColor:"#fff",fillOpacity:1}).addTo(this._map),this.tooltip=new U.Tooltip({offset:[10,-10]}).setContent("点击开始绘制"),U.Handler.prototype.enable.call(this),this},disable(){if(this._map.setCursor(),this.removeHooks(),this.tooltip&&this._map.closeTooltip(this.tooltip),this.tempPoint&&this._map.removeLayer(this.tempPoint),this.options.showCloseButton&&this.options.showMeasurements){const t=this.geometry._measurementLayer;let n;this.geometry instanceof U.Path?n=this.geometry._latlngs.flat().at(-1):n=this.geometry._latlng;const r=this.geometry._leaflet_id;new U.Marker(n,{icon:new U.Icon({iconUrl:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAYAAABWdVznAAAAAXNSR0IArs4c6QAAAFRJREFUKFOlklEKACAIQ7f7H9rQkJYFFUVfY49NiwBgcc+HABlmu/K7HQMge0SFVd8CCqU5tQlwUQ06UqYuwA7Siv/AU6U6YK3n1f7Wen7onvD6NRqqukP5oM7XCQAAAABJRU5ErkJggg==",iconSize:[12,12],iconAnchor:[6,6]})}).on("click",u=>{this._map.removeLayerById(r),t==null||t.clearLayers()}).addTo(t)}return U.Util.setOptions(this,Ea.prototype.options),U.Handler.prototype.disable.call(this),this}});U.Map.addInitHook("addHandler","drawHandler",Ea);const di=U.Handler.extend({_touchstart:U.Browser.msPointer?"MSPointerDown":U.Browser.pointer?"pointerdown":"touchstart",initialize(t){U.Handler.prototype.initialize.call(this,t),this._items=[],this._visible=!1,di.BASE_CLS=`${t.clsPrefix}-contextmenu`;const n=this._container=U.DomUtil.create("div",`${t.clsPrefix}-contextmenu`,t._container);n.style.zIndex=1e4,n.style.position="absolute",t.options.contextmenuWidth&&(n.style.width=t.options.contextmenuWidth+"px"),this._createItems(),U.DomEvent.on(n,"click",U.DomEvent.stop).on(n,"mousedown",U.DomEvent.stop).on(n,"dblclick",U.DomEvent.stop).on(n,"contextmenu",U.DomEvent.stop)},addHooks(){const t=this._map.getContainer();U.DomEvent.on(t,"mouseleave",this._hide,this).on(document,"keydown",this._onKeyDown,this),U.Browser.touch&&U.DomEvent.on(document,this._touchstart,this._hide,this),this._map.on({contextmenu:this._show,mousedown:this._hide,zoomstart:this._hide},this)},removeHooks(){const t=this._map.getContainer();U.DomEvent.off(t,"mouseleave",this._hide,this).off(document,"keydown",this._onKeyDown,this),U.Browser.touch&&U.DomEvent.off(document,this._touchstart,this._hide,this),this._map.off({contextmenu:this._show,mousedown:this._hide,zoomstart:this._hide},this)},showAt(t,n){t instanceof U.LatLng&&(t=this._map.latLngToContainerPoint(t)),this._showAtPoint(t,n)},hide(){this._hide()},addItem(t){return this.insertItem(t)},insertItem(t,n){n=n!==void 0?n:this._items.length;const r=this._createItem(this._container,t,n);return this._items.push(r),this._sizeChanged=!0,this._map.fire("contextmenu.additem",{contextmenu:this,el:r.el,index:n}),r.el},removeItem(t){const n=this._container;return isNaN(t)||(t=n.children[t]),t?(this._removeItem(U.Util.stamp(t)),this._sizeChanged=!0,this._map.fire("contextmenu.removeitem",{contextmenu:this,el:t}),t):null},removeAllItems(){const t=this._container.children;let n;for(;t.length;)n=t[0],this._removeItem(U.Util.stamp(n));return t},hideAllItems(){let t,n,r;for(n=0,r=this._items.length;n<r;n++)t=this._items[n],t.el.style.display="none"},showAllItems(){let t,n,r;for(n=0,r=this._items.length;n<r;n++)t=this._items[n],t.el.style.display=""},setDisabled(t,n){const r=this._container,u=di.BASE_CLS+"-item";isNaN(t)||(t=r.children[t]),t&&U.DomUtil.hasClass(t,u)&&(n?(U.DomUtil.addClass(t,u+"-disabled"),this._map.fire("contextmenu.disableitem",{contextmenu:this,el:t})):(U.DomUtil.removeClass(t,u+"-disabled"),this._map.fire("contextmenu.enableitem",{contextmenu:this,el:t})))},isVisible(){return this._visible},_createItems(){const t=this._map.options.contextmenuItems;let n,r;for(n=0,r=t.length;n<r;n++)this._items.push(this._createItem(this._container,t[n]))},_createItem(t,n,r){if(n.separator||n==="-")return this._createSeparator(t,r);const u=di.BASE_CLS+"-item",d=n.disabled?u+" "+u+"-disabled":u,f=this._insertElementAt("a",d,t,r),p=this._createEventHandler(f,n.callback,n.context,n.hideOnSelect),g=this._getIcon(n),M=this._getIconCls(n);let B="";return g?B='<img class="'+di.BASE_CLS+'-icon" src="'+g+'"/>':M&&(B='<span class="'+di.BASE_CLS+"-icon "+M+'"></span>'),f.innerHTML=B+n.text,f.href="#",U.DomEvent.on(f,"mouseover",this._onItemMouseOver,this).on(f,"mouseout",this._onItemMouseOut,this).on(f,"mousedown",U.DomEvent.stopPropagation).on(f,"click",p),U.Browser.touch&&U.DomEvent.on(f,this._touchstart,U.DomEvent.stopPropagation),U.Browser.pointer||U.DomEvent.on(f,"click",this._onItemMouseOut,this),{id:U.Util.stamp(f),el:f,callback:p}},_removeItem(t){let n,r,u,d,f;for(u=0,d=this._items.length;u<d;u++)if(n=this._items[u],n.id===t)return r=n.el,f=n.callback,f&&(U.DomEvent.off(r,"mouseover",this._onItemMouseOver,this).off(r,"mouseover",this._onItemMouseOut,this).off(r,"mousedown",U.DomEvent.stopPropagation).off(r,"click",f),U.Browser.touch&&U.DomEvent.off(r,this._touchstart,U.DomEvent.stopPropagation),U.Browser.pointer||U.DomEvent.on(r,"click",this._onItemMouseOut,this)),this._container.removeChild(r),this._items.splice(u,1),n;return null},_createSeparator(t,n){const r=this._insertElementAt("div",di.BASE_CLS+"-separator",t,n);return{id:U.Util.stamp(r),el:r}},_createEventHandler(t,n,r,p){const d=this;this._map;const f=di.BASE_CLS+"-item-disabled";var p=p!==void 0?p:!0;return function(g){if(U.DomUtil.hasClass(t,f))return;const M=d._map,B=d._showLocation.containerPoint,E=M.containerPointToLayerPoint(B),x=M.layerPointToLatLng(E),C=d._showLocation.relatedTarget,T={containerPoint:B,layerPoint:E,latlng:x,relatedTarget:C};p&&d._hide(),n&&n.call(r||M,T),d._map.fire("contextmenu.select",{contextmenu:d,el:t})}},_insertElementAt(t,n,r,u){let d;const f=document.createElement(t);return f.className=n,u!==void 0&&(d=r.children[u]),d?r.insertBefore(f,d):r.appendChild(f),f},_show(t){this._showAtPoint(t.containerPoint,t)},_showAtPoint(t,n){if(this._items.length){this._map;const r=U.extend(n||{},{contextmenu:this});this._showLocation={containerPoint:t},n&&n.relatedTarget&&(this._showLocation.relatedTarget=n.relatedTarget),this._setPosition(t),this._visible||(this._container.style.display="block",this._visible=!0),this._map.fire("contextmenu.show",r)}},_hide(){this._visible&&(this._visible=!1,this._container.style.display="none",this._map.fire("contextmenu.hide",{contextmenu:this}))},_getIcon(t){return U.Browser.retina&&t.retinaIcon||t.icon},_getIconCls(t){return U.Browser.retina&&t.retinaIconCls||t.iconCls},_setPosition(t){const n=this._map.getSize(),r=this._container,u=this._getElementSize(r);let d;this._map.options.contextmenuAnchor&&(d=new U.Point(this._map.options.contextmenuAnchor),t=t.add(d)),r._leaflet_pos=t,t.x+u.x>n.x?(r.style.left="auto",r.style.right=Math.min(Math.max(n.x-t.x,0),n.x-u.x-1)+"px"):(r.style.left=Math.max(t.x,0)+"px",r.style.right="auto"),t.y+u.y>n.y?(r.style.top="auto",r.style.bottom=Math.min(Math.max(n.y-t.y,0),n.y-u.y-1)+"px"):(r.style.top=Math.max(t.y,0)+"px",r.style.bottom="auto")},_getElementSize(t){let n=this._size;const r=t.style.display;return(!n||this._sizeChanged)&&(n={},t.style.left="-999999px",t.style.right="auto",t.style.display="block",n.x=t.offsetWidth,n.y=t.offsetHeight,t.style.left="auto",t.style.display=r,this._sizeChanged=!1),n},_onKeyDown(t){t.keyCode===27&&this._hide()},_onItemMouseOver(t){U.DomUtil.addClass(t.target||t.srcElement,"over")},_onItemMouseOut(t){U.DomUtil.removeClass(t.target||t.srcElement,"over")}});U.Map.mergeOptions({contextmenuItems:[]}),U.Map.addInitHook("addHandler","contextmenu",di);const Cf={bindContextMenu(t){return L.setOptions(this,t),this._initContextMenu(),this},unbindContextMenu(){return this.off("contextmenu",this._showContextMenu,this),this},addContextMenuItem(t){this.options.contextmenuItems.push(t)},removeContextMenuItemWithIndex(t){const n=[];for(let u=0;u<this.options.contextmenuItems.length;u++)this.options.contextmenuItems[u].index==t&&n.push(u);let r=n.pop();for(;r!==void 0;)this.options.contextmenuItems.splice(r,1),r=n.pop()},replaceContextMenuItem(t){this.removeContextMenuItemWithIndex(t.index),this.addContextMenuItem(t)},_initContextMenu(){this._items=[],this.on("contextmenu",this._showContextMenu,this)},_showContextMenu(t){let n,r,u,d,f;if(this._items=[],this._map.contextmenu){for(r=L.extend({relatedTarget:this},t),u=this._map.mouseEventToContainerPoint(t.originalEvent),this.options.contextmenuInheritItems||this._map.contextmenu.hideAllItems(),d=0,f=this.options.contextmenuItems.length;d<f;d++)n=this.options.contextmenuItems[d],this._items.push(this._map.contextmenu.insertItem(n,n.index));this._map.once("contextmenu.hide",this._hideContextMenu,this),this._map.contextmenu.showAt(u,r)}},_hideContextMenu(){let t,n;if(this._items){for(t=0,n=this._items.length;t<n;t++)this._map.contextmenu.removeItem(this._items[t]);this._items.length=0,this.options.contextmenuInheritItems||this._map.contextmenu.showAllItems()}}},sl=[U.Marker,U.Path],al={contextmenu:!1,contextmenuItems:[],contextmenuInheritItems:!1};for(let t=0,n=sl.length;t<n;t++){const r=sl[t];r.prototype.options?r.mergeOptions(al):r.prototype.options=al,r.addInitHook(function(){this.options.contextmenu&&this._initContextMenu()}),r.include(Cf)}const io=U.Handler.extend({options:{moveStep:10,zoomSnap:1,moveKeyCodeMap:{65:"left",68:"right",87:"top",83:"bottom"},zoomKeyCodeMap:{69:"add",81:"minus"}},enable(t){U.Util.setOptions(this,t),U.Handler.prototype.enable.call(this)},addHooks(){this._map.on("keydown",this._keyDownEvent,this)},removeHooks(){this._map.off("keydown",this._keyDownEvent,this)},_keyDownEvent(t){let n=this.options.moveKeyCodeMap[t.originalEvent.keyCode],r=this.options.zoomKeyCodeMap[t.originalEvent.keyCode];n&&this.moveByMeters(n,this.options.moveStep),r&&this.setZoom(r)},moveByMeters(t,n){let r=this._map.project(this._map.getCenter());switch(t){case"left":r.x-=n;break;case"right":r.x+=n;break;case"bottom":r.y+=n;break;case"top":r.y-=n;break}r=this._map.unproject(r),this._map.panTo(r)},setZoom(t){let n=this._map.getZoom();switch(t){case"add":n+=this.options.zoomSnap;break;case"minus":n-=this.options.zoomSnap;break}this._map.setZoom(n)}});U.Map.addInitHook("addHandler","keyboard",io);const rl=U.LayerGroup.extend({initialize(t){U.Util.setOptions(this,t),U.LayerGroup.prototype.initialize.call(this,t)},getRasterLayers(){const t={},n=r=>{if(r._layers&&r.getLayer)for(const u in r._layers){const d=r._layers[u];d._layers&&d.getLayer?n(d):t[d._leaflet_id]=d}else t[r._leaflet_id]=r};return n(this),t},removeRasterLayer(t){const n=function(r){if(r._layers&&r.getLayer&&r.getLayer(t)){const u=r.getLayer(t);r.removeLayer(u)}else if(r._layers)for(const u in r._layers){const d=r._layers[u];if(d._layers&&d.getLayer&&d.getLayer(t)){const f=d.getLayer(t);d.removeLayer(f)}else d._layers&&n(d)}};n(this)},getRasterTop(){const t=Object.values(this.getRasterLayers());return t.length?Math.max(...t.map(n=>n.options.zIndex))+1:null}}),Ef=L.Class.extend({options:{pixelSize:10,pathOptions:{}},initialize:function(t){L.Util.setOptions(this,t),this.options.pathOptions.clickable=!1},buildSymbol:function(t,n,r,u,d){const f=this.options,p=Math.PI/180;if(f.pixelSize<=1)return L.polyline([t.latLng,t.latLng],f.pathOptions);const g=r.project(t.latLng),M=-(t.heading-90)*p,B=L.point(g.x+f.pixelSize*Math.cos(M+Math.PI)/2,g.y+f.pixelSize*Math.sin(M)/2),E=g.add(g.subtract(B));return L.polyline([r.unproject(B),r.unproject(E)],f.pathOptions)}}),Pf=L.Class.extend({options:{polygon:!0,pixelSize:10,headAngle:60,pathOptions:{stroke:!1,weight:2}},initialize:function(t){L.Util.setOptions(this,t),this.options.pathOptions.clickable=!1},buildSymbol:function(t,n,r,u,d){return this.options.polygon?L.polygon(this._buildArrowPath(t,r),this.options.pathOptions):L.polyline(this._buildArrowPath(t,r),this.options.pathOptions)},_buildArrowPath:function(t,n){const r=Math.PI/180,u=n.project(t.latLng),d=-(t.heading-90)*r,f=this.options.headAngle/2*r,p=d+f,g=d-f,M=L.point(u.x-this.options.pixelSize*Math.cos(p),u.y+this.options.pixelSize*Math.sin(p)),B=L.point(u.x-this.options.pixelSize*Math.cos(g),u.y+this.options.pixelSize*Math.sin(g));return[n.unproject(M),t.latLng,n.unproject(B)]}}),kf=L.Class.extend({options:{markerOptions:{},rotation:!1},initialize:function(t){L.Util.setOptions(this,t),this.options.markerOptions.clickable=!1,this.options.markerOptions.draggable=!1},buildSymbol:function(t,n,r,u,d){return this.options.rotation&&(this.options.markerOptions.rotationAngle=t.heading+(this.options.angleCorrection||0)),L.marker(t.latLng,this.options.markerOptions)}}),Sf={Dash:Ef,ArrowHead:Pf,Marker:kf};function Bf(t,n){const r=n.x-t.x,u=n.y-t.y;return Math.sqrt(r*r+u*u)}const Tf=(t,n)=>(Math.atan2(n.y-t.y,n.x-t.x)*180/Math.PI+90+360)%360,no=({value:t,isInPixels:n},r)=>n?t/r:t;function so(t){if(typeof t=="string"&&t.indexOf("%")!==-1)return{value:parseFloat(t)/100,isInPixels:!1};const n=t?parseFloat(t):0;return{value:n,isInPixels:n>0}}const Df=(t,n)=>t.x===n.x&&t.y===n.y;function Of(t){return t.reduce((n,r,u,d)=>{if(u>0&&!Df(r,d[u-1])){const f=d[u-1],p=n.length>0?n[n.length-1].distB:0,g=Bf(f,r);n.push({a:f,b:r,distA:p,distB:p+g,heading:Tf(f,r)})}return n},[])}function If(t,n){const r=Of(t),u=r.length;if(u===0)return[];const d=r[u-1].distB,f=no(n.offset,d),p=no(n.endOffset,d),g=no(n.repeat,d),M=d*g,B=f>0?d*f:0,E=p>0?d*p:0,x=[];let C=B;do x.push(C),C+=M;while(M>0&&C<d-E);let T=0,G=r[0];return x.map(j=>{for(;j>G.distB&&T<u-1;)T++,G=r[T];const W=(j-G.distA)/(G.distB-G.distA);return{pt:Rf(G.a,G.b,W),heading:G.heading}})}function Rf(t,n,r){return n.x!==t.x?{x:t.x+r*(n.x-t.x),y:t.y+r*(n.y-t.y)}:{x:t.x,y:t.y+(n.y-t.y)*r}}const Ff=t=>t instanceof L.LatLng||Array.isArray(t)&&t.length===2&&typeof t[0]=="number",Gf=t=>Array.isArray(t)&&Ff(t[0]),zf=L.FeatureGroup.extend({options:{patterns:[]},initialize:function(t,n){L.FeatureGroup.prototype.initialize.call(this),L.Util.setOptions(this,n),this._map=null,this._paths=this._initPaths(t),this._bounds=this._initBounds(),this._patterns=this._initPatterns(this.options.patterns)},_initPaths:function(t,n){return Gf(t)?[n?t.concat([t[0]]):t]:t instanceof L.Polyline?this._initPaths(t.getLatLngs(),t instanceof L.Polygon):Array.isArray(t)?t.reduce((r,u)=>r.concat(this._initPaths(u,n)),[]):[]},_initPatterns:function(t){return t.map(this._parsePatternDef)},setPatterns:function(t){this.options.patterns=t,this._patterns=this._initPatterns(this.options.patterns),this.redraw()},setPaths:function(t){this._paths=this._initPaths(t),this._bounds=this._initBounds(),this.redraw()},_parsePatternDef:function(t,n){return{symbolFactory:t.symbol,offset:so(t.offset),endOffset:so(t.endOffset),repeat:so(t.repeat)}},onAdd:function(t){this._map=t,this._draw(),this._map.on("moveend",this.redraw,this)},onRemove:function(t){this._map.off("moveend",this.redraw,this),this._map=null,L.FeatureGroup.prototype.onRemove.call(this,t)},_initBounds:function(){const t=this._paths.reduce((n,r)=>n.concat(r),[]);return L.latLngBounds(t)},getBounds:function(){return this._bounds},_buildSymbols:function(t,n,r){return r.map((u,d)=>n.buildSymbol(u,t,this._map,d,r.length))},_getDirectionPoints:function(t,n){if(t.length<2)return[];const r=t.map(u=>this._map.project(u));return If(r,n).map(u=>({latLng:this._map.unproject(L.point(u.pt)),heading:u.heading}))},redraw:function(){this._map&&(this.clearLayers(),this._draw())},_getPatternLayers:function(t){const n=this._map.getBounds().pad(.1);return this._paths.map(r=>{const u=this._getDirectionPoints(r,t).filter(d=>n.contains(d.latLng));return L.featureGroup(this._buildSymbols(r,t.symbolFactory,u))})},_draw:function(){this._patterns.map(t=>this._getPatternLayers(t)).forEach(t=>{this.addLayer(L.featureGroup(t))})}});function Nf(t){const n=document.createElement("style"),r=document.head||document.documentElement;n.innerHTML=`
|
|
9
|
+
northing meters`+t;var b=x/2,T=0,G=0,Z,K,at,rt,ct;return b>0&&(Z=1e5/Math.pow(10,b),K=t.substring(f,f+b),T=parseFloat(K)*Z,at=t.substring(f+b),G=parseFloat(at)*Z),rt=T+k,ct=G+C,{easting:rt,northing:ct,zoneLetter:g,zoneNumber:p,accuracy:Z}}function Qu(t,n){for(var a=Vh.charCodeAt(n-1),l=1e5,c=!1;a!==t.charCodeAt(0);){if(a++,a===Fe&&a++,a===Ve&&a++,a>ms){if(c)throw"Bad character: "+t;a=bn,c=!0}l+=1e5}return l}function tc(t,n){if(t>"V")throw"MGRSPoint given invalid Northing "+t;for(var a=$h.charCodeAt(n-1),l=0,c=!1;a!==t.charCodeAt(0);){if(a++,a===Fe&&a++,a===Ve&&a++,a>_s){if(c)throw"Bad character: "+t;a=bn,c=!0}l+=1e5}return l}function ec(t){var n;switch(t){case"C":n=11e5;break;case"D":n=2e6;break;case"E":n=28e5;break;case"F":n=37e5;break;case"G":n=46e5;break;case"H":n=55e5;break;case"J":n=64e5;break;case"K":n=73e5;break;case"L":n=82e5;break;case"M":n=91e5;break;case"N":n=0;break;case"P":n=8e5;break;case"Q":n=17e5;break;case"R":n=26e5;break;case"S":n=35e5;break;case"T":n=44e5;break;case"U":n=53e5;break;case"V":n=62e5;break;case"W":n=7e6;break;case"X":n=79e5;break;default:n=-1}if(n>=0)return n;throw"Invalid zone letter: "+t}function wn(t,n,a){if(!(this instanceof wn))return new wn(t,n,a);if(Array.isArray(t))this.x=t[0],this.y=t[1],this.z=t[2]||0;else if(typeof t=="object")this.x=t.x,this.y=t.y,this.z=t.z||0;else if(typeof t=="string"&&typeof n>"u"){var l=t.split(",");this.x=parseFloat(l[0]),this.y=parseFloat(l[1]),this.z=parseFloat(l[2])||0}else this.x=t,this.y=n,this.z=a||0;console.warn("proj4.Point will be removed in version 3, use proj4.toPoint")}wn.fromMGRS=function(t){return new wn(Kh(t))},wn.prototype.toMGRS=function(t){return Wh([this.x,this.y],t)};var ic=1,nc=.25,Qh=.046875,tl=.01953125,el=.01068115234375,sc=.75,ac=.46875,rc=.013020833333333334,oc=.007120768229166667,hc=.3645833333333333,lc=.005696614583333333,uc=.3076171875;function Kr(t){var n=[];n[0]=ic-t*(nc+t*(Qh+t*(tl+t*el))),n[1]=t*(sc-t*(Qh+t*(tl+t*el)));var a=t*t;return n[2]=a*(ac-t*(rc+t*oc)),a*=t,n[3]=a*(hc-t*lc),n[4]=a*t*uc,n}function Cn(t,n,a,l){return a*=n,n*=n,l[0]*t-a*(l[1]+n*(l[2]+n*(l[3]+n*l[4])))}var cc=20;function Xr(t,n,a){for(var l=1/(1-n),c=t,f=cc;f;--f){var p=Math.sin(c),g=1-n*p*p;if(g=(Cn(c,p,Math.cos(c),a)-t)*(g*Math.sqrt(g))*l,c-=g,Math.abs(g)<dt)return c}return c}function dc(){this.x0=this.x0!==void 0?this.x0:0,this.y0=this.y0!==void 0?this.y0:0,this.long0=this.long0!==void 0?this.long0:0,this.lat0=this.lat0!==void 0?this.lat0:0,this.es&&(this.en=Kr(this.es),this.ml0=Cn(this.lat0,Math.sin(this.lat0),Math.cos(this.lat0),this.en))}function fc(t){var n=t.x,a=t.y,l=_t(n-this.long0),c,f,p,g=Math.sin(a),A=Math.cos(a);if(this.es){var C=A*l,x=Math.pow(C,2),b=this.ep2*Math.pow(A,2),T=Math.pow(b,2),G=Math.abs(A)>dt?Math.tan(a):0,Z=Math.pow(G,2),K=Math.pow(Z,2);c=1-this.es*Math.pow(g,2),C=C/Math.sqrt(c);var at=Cn(a,g,A,this.en);f=this.a*(this.k0*C*(1+x/6*(1-Z+b+x/20*(5-18*Z+K+14*b-58*Z*b+x/42*(61+179*K-K*Z-479*Z)))))+this.x0,p=this.a*(this.k0*(at-this.ml0+g*l*C/2*(1+x/12*(5-Z+9*b+4*T+x/30*(61+K-58*Z+270*b-330*Z*b+x/56*(1385+543*K-K*Z-3111*Z))))))+this.y0}else{var k=A*Math.sin(l);if(Math.abs(Math.abs(k)-1)<dt)return 93;if(f=.5*this.a*this.k0*Math.log((1+k)/(1-k))+this.x0,p=A*Math.cos(l)/Math.sqrt(1-Math.pow(k,2)),k=Math.abs(p),k>=1){if(k-1>dt)return 93;p=0}else p=Math.acos(p);a<0&&(p=-p),p=this.a*this.k0*(p-this.lat0)+this.y0}return t.x=f,t.y=p,t}function pc(t){var n,a,l,c,f=(t.x-this.x0)*(1/this.a),p=(t.y-this.y0)*(1/this.a);if(this.es)if(n=this.ml0+p/this.k0,a=Xr(n,this.es,this.en),Math.abs(a)<ut){var x=Math.sin(a),b=Math.cos(a),T=Math.abs(b)>dt?Math.tan(a):0,G=this.ep2*Math.pow(b,2),Z=Math.pow(G,2),K=Math.pow(T,2),at=Math.pow(K,2);n=1-this.es*Math.pow(x,2);var rt=f*Math.sqrt(n)/this.k0,ct=Math.pow(rt,2);n=n*T,l=a-n*ct/(1-this.es)*.5*(1-ct/12*(5+3*K-9*G*K+G-4*Z-ct/30*(61+90*K-252*G*K+45*at+46*G-ct/56*(1385+3633*K+4095*at+1574*at*K)))),c=_t(this.long0+rt*(1-ct/6*(1+2*K+G-ct/20*(5+28*K+24*at+8*G*K+6*G-ct/42*(61+662*K+1320*at+720*at*K))))/b)}else l=ut*fs(p),c=0;else{var g=Math.exp(f/this.k0),A=.5*(g-1/g),k=this.lat0+p/this.k0,C=Math.cos(k);n=Math.sqrt((1-Math.pow(C,2))/(1+Math.pow(A,2))),l=Math.asin(n),p<0&&(l=-l),A===0&&C===0?c=0:c=_t(Math.atan2(A,C)+this.long0)}return t.x=c,t.y=l,t}var _c=["Fast_Transverse_Mercator","Fast Transverse Mercator"];const wa={init:dc,forward:fc,inverse:pc,names:_c};function il(t){var n=Math.exp(t);return n=(n-1/n)/2,n}function ze(t,n){t=Math.abs(t),n=Math.abs(n);var a=Math.max(t,n),l=Math.min(t,n)/(a||1);return a*Math.sqrt(1+Math.pow(l,2))}function mc(t){var n=1+t,a=n-1;return a===0?t:t*Math.log(n)/a}function gc(t){var n=Math.abs(t);return n=mc(n*(1+n/(ze(1,n)+1))),t<0?-n:n}function Yr(t,n){for(var a=2*Math.cos(2*n),l=t.length-1,c=t[l],f=0,p;--l>=0;)p=-f+a*c+t[l],f=c,c=p;return n+p*Math.sin(2*n)}function yc(t,n){for(var a=2*Math.cos(n),l=t.length-1,c=t[l],f=0,p;--l>=0;)p=-f+a*c+t[l],f=c,c=p;return Math.sin(n)*p}function vc(t){var n=Math.exp(t);return n=(n+1/n)/2,n}function nl(t,n,a){for(var l=Math.sin(n),c=Math.cos(n),f=il(a),p=vc(a),g=2*c*p,A=-2*l*f,k=t.length-1,C=t[k],x=0,b=0,T=0,G,Z;--k>=0;)G=b,Z=x,b=C,x=T,C=-G+g*b-A*x+t[k],T=-Z+A*b+g*x;return g=l*p,A=c*f,[g*C-A*T,g*T+A*C]}function Ac(){if(!this.approx&&(isNaN(this.es)||this.es<=0))throw new Error('Incorrect elliptical usage. Try using the +approx option in the proj string, or PROJECTION["Fast_Transverse_Mercator"] in the WKT.');this.approx&&(wa.init.apply(this),this.forward=wa.forward,this.inverse=wa.inverse),this.x0=this.x0!==void 0?this.x0:0,this.y0=this.y0!==void 0?this.y0:0,this.long0=this.long0!==void 0?this.long0:0,this.lat0=this.lat0!==void 0?this.lat0:0,this.cgb=[],this.cbg=[],this.utg=[],this.gtu=[];var t=this.es/(1+Math.sqrt(1-this.es)),n=t/(2-t),a=n;this.cgb[0]=n*(2+n*(-2/3+n*(-2+n*(116/45+n*(26/45+n*(-2854/675)))))),this.cbg[0]=n*(-2+n*(2/3+n*(4/3+n*(-82/45+n*(32/45+n*(4642/4725)))))),a=a*n,this.cgb[1]=a*(7/3+n*(-8/5+n*(-227/45+n*(2704/315+n*(2323/945))))),this.cbg[1]=a*(5/3+n*(-16/15+n*(-13/9+n*(904/315+n*(-1522/945))))),a=a*n,this.cgb[2]=a*(56/15+n*(-136/35+n*(-1262/105+n*(73814/2835)))),this.cbg[2]=a*(-26/15+n*(34/21+n*(8/5+n*(-12686/2835)))),a=a*n,this.cgb[3]=a*(4279/630+n*(-332/35+n*(-399572/14175))),this.cbg[3]=a*(1237/630+n*(-12/5+n*(-24832/14175))),a=a*n,this.cgb[4]=a*(4174/315+n*(-144838/6237)),this.cbg[4]=a*(-734/315+n*(109598/31185)),a=a*n,this.cgb[5]=a*(601676/22275),this.cbg[5]=a*(444337/155925),a=Math.pow(n,2),this.Qn=this.k0/(1+n)*(1+a*(1/4+a*(1/64+a/256))),this.utg[0]=n*(-.5+n*(2/3+n*(-37/96+n*(1/360+n*(81/512+n*(-96199/604800)))))),this.gtu[0]=n*(.5+n*(-2/3+n*(5/16+n*(41/180+n*(-127/288+n*(7891/37800)))))),this.utg[1]=a*(-1/48+n*(-1/15+n*(437/1440+n*(-46/105+n*(1118711/3870720))))),this.gtu[1]=a*(13/48+n*(-3/5+n*(557/1440+n*(281/630+n*(-1983433/1935360))))),a=a*n,this.utg[2]=a*(-17/480+n*(37/840+n*(209/4480+n*(-5569/90720)))),this.gtu[2]=a*(61/240+n*(-103/140+n*(15061/26880+n*(167603/181440)))),a=a*n,this.utg[3]=a*(-4397/161280+n*(11/504+n*(830251/7257600))),this.gtu[3]=a*(49561/161280+n*(-179/168+n*(6601661/7257600))),a=a*n,this.utg[4]=a*(-4583/161280+n*(108847/3991680)),this.gtu[4]=a*(34729/80640+n*(-3418889/1995840)),a=a*n,this.utg[5]=a*(-20648693/638668800),this.gtu[5]=a*(212378941/319334400);var l=Yr(this.cbg,this.lat0);this.Zb=-this.Qn*(l+yc(this.gtu,2*l))}function Mc(t){var n=_t(t.x-this.long0),a=t.y;a=Yr(this.cbg,a);var l=Math.sin(a),c=Math.cos(a),f=Math.sin(n),p=Math.cos(n);a=Math.atan2(l,p*c),n=Math.atan2(f*c,ze(l,c*p)),n=gc(Math.tan(n));var g=nl(this.gtu,2*a,2*n);a=a+g[0],n=n+g[1];var A,k;return Math.abs(n)<=2.623395162778?(A=this.a*(this.Qn*n)+this.x0,k=this.a*(this.Qn*a+this.Zb)+this.y0):(A=1/0,k=1/0),t.x=A,t.y=k,t}function xc(t){var n=(t.x-this.x0)*(1/this.a),a=(t.y-this.y0)*(1/this.a);a=(a-this.Zb)/this.Qn,n=n/this.Qn;var l,c;if(Math.abs(n)<=2.623395162778){var f=nl(this.utg,2*a,2*n);a=a+f[0],n=n+f[1],n=Math.atan(il(n));var p=Math.sin(a),g=Math.cos(a),A=Math.sin(n),k=Math.cos(n);a=Math.atan2(p*k,ze(A,k*g)),n=Math.atan2(A,k*g),l=_t(n+this.long0),c=Yr(this.cgb,a)}else l=1/0,c=1/0;return t.x=l,t.y=c,t}var Lc=["Extended_Transverse_Mercator","Extended Transverse Mercator","etmerc","Transverse_Mercator","Transverse Mercator","Gauss Kruger","Gauss_Kruger","tmerc"];const Ca={init:Ac,forward:Mc,inverse:xc,names:Lc};function bc(t,n){if(t===void 0){if(t=Math.floor((_t(n)+Math.PI)*30/Math.PI)+1,t<0)return 0;if(t>60)return 60}return t}var wc="etmerc";function Cc(){var t=bc(this.zone,this.long0);if(t===void 0)throw new Error("unknown utm zone");this.lat0=0,this.long0=(6*Math.abs(t)-183)*ye,this.x0=5e5,this.y0=this.utmSouth?1e7:0,this.k0=.9996,Ca.init.apply(this),this.forward=Ca.forward,this.inverse=Ca.inverse}var Ec=["Universal Transverse Mercator System","utm"];const Pc={init:Cc,names:Ec,dependsOn:wc};function Jr(t,n){return Math.pow((1-t)/(1+t),n)}var kc=20;function Bc(){var t=Math.sin(this.lat0),n=Math.cos(this.lat0);n*=n,this.rc=Math.sqrt(1-this.es)/(1-this.es*t*t),this.C=Math.sqrt(1+this.es*n*n/(1-this.es)),this.phic0=Math.asin(t/this.C),this.ratexp=.5*this.C*this.e,this.K=Math.tan(.5*this.phic0+jt)/(Math.pow(Math.tan(.5*this.lat0+jt),this.C)*Jr(this.e*t,this.ratexp))}function Sc(t){var n=t.x,a=t.y;return t.y=2*Math.atan(this.K*Math.pow(Math.tan(.5*a+jt),this.C)*Jr(this.e*Math.sin(a),this.ratexp))-ut,t.x=this.C*n,t}function Tc(t){for(var n=1e-14,a=t.x/this.C,l=t.y,c=Math.pow(Math.tan(.5*l+jt)/this.K,1/this.C),f=kc;f>0&&(l=2*Math.atan(c*Jr(this.e*Math.sin(t.y),-.5*this.e))-ut,!(Math.abs(l-t.y)<n));--f)t.y=l;return f?(t.x=a,t.y=l,t):null}const Qr={init:Bc,forward:Sc,inverse:Tc};function Dc(){Qr.init.apply(this),this.rc&&(this.sinc0=Math.sin(this.phic0),this.cosc0=Math.cos(this.phic0),this.R2=2*this.rc,this.title||(this.title="Oblique Stereographic Alternative"))}function Oc(t){var n,a,l,c;return t.x=_t(t.x-this.long0),Qr.forward.apply(this,[t]),n=Math.sin(t.y),a=Math.cos(t.y),l=Math.cos(t.x),c=this.k0*this.R2/(1+this.sinc0*n+this.cosc0*a*l),t.x=c*a*Math.sin(t.x),t.y=c*(this.cosc0*n-this.sinc0*a*l),t.x=this.a*t.x+this.x0,t.y=this.a*t.y+this.y0,t}function Ic(t){var n,a,l,c,f;if(t.x=(t.x-this.x0)/this.a,t.y=(t.y-this.y0)/this.a,t.x/=this.k0,t.y/=this.k0,f=ze(t.x,t.y)){var p=2*Math.atan2(f,this.R2);n=Math.sin(p),a=Math.cos(p),c=Math.asin(a*this.sinc0+t.y*n*this.cosc0/f),l=Math.atan2(t.x*n,f*this.cosc0*a-t.y*this.sinc0*n)}else c=this.phic0,l=0;return t.x=l,t.y=c,Qr.inverse.apply(this,[t]),t.x=_t(t.x+this.long0),t}var Rc=["Stereographic_North_Pole","Oblique_Stereographic","sterea","Oblique Stereographic Alternative","Double_Stereographic"];const Gc={init:Dc,forward:Oc,inverse:Ic,names:Rc};function to(t,n,a){return n*=a,Math.tan(.5*(ut+t))*Math.pow((1-n)/(1+n),.5*a)}function Fc(){this.x0=this.x0||0,this.y0=this.y0||0,this.lat0=this.lat0||0,this.long0=this.long0||0,this.coslat0=Math.cos(this.lat0),this.sinlat0=Math.sin(this.lat0),this.sphere?this.k0===1&&!isNaN(this.lat_ts)&&Math.abs(this.coslat0)<=dt&&(this.k0=.5*(1+fs(this.lat0)*Math.sin(this.lat_ts))):(Math.abs(this.coslat0)<=dt&&(this.lat0>0?this.con=1:this.con=-1),this.cons=Math.sqrt(Math.pow(1+this.e,1+this.e)*Math.pow(1-this.e,1-this.e)),this.k0===1&&!isNaN(this.lat_ts)&&Math.abs(this.coslat0)<=dt&&Math.abs(Math.cos(this.lat_ts))>dt&&(this.k0=.5*this.cons*ci(this.e,Math.sin(this.lat_ts),Math.cos(this.lat_ts))/ii(this.e,this.con*this.lat_ts,this.con*Math.sin(this.lat_ts))),this.ms1=ci(this.e,this.sinlat0,this.coslat0),this.X0=2*Math.atan(to(this.lat0,this.sinlat0,this.e))-ut,this.cosX0=Math.cos(this.X0),this.sinX0=Math.sin(this.X0))}function zc(t){var n=t.x,a=t.y,l=Math.sin(a),c=Math.cos(a),f,p,g,A,k,C,x=_t(n-this.long0);return Math.abs(Math.abs(n-this.long0)-Math.PI)<=dt&&Math.abs(a+this.lat0)<=dt?(t.x=NaN,t.y=NaN,t):this.sphere?(f=2*this.k0/(1+this.sinlat0*l+this.coslat0*c*Math.cos(x)),t.x=this.a*f*c*Math.sin(x)+this.x0,t.y=this.a*f*(this.coslat0*l-this.sinlat0*c*Math.cos(x))+this.y0,t):(p=2*Math.atan(to(a,l,this.e))-ut,A=Math.cos(p),g=Math.sin(p),Math.abs(this.coslat0)<=dt?(k=ii(this.e,a*this.con,this.con*l),C=2*this.a*this.k0*k/this.cons,t.x=this.x0+C*Math.sin(n-this.long0),t.y=this.y0-this.con*C*Math.cos(n-this.long0),t):(Math.abs(this.sinlat0)<dt?(f=2*this.a*this.k0/(1+A*Math.cos(x)),t.y=f*g):(f=2*this.a*this.k0*this.ms1/(this.cosX0*(1+this.sinX0*g+this.cosX0*A*Math.cos(x))),t.y=f*(this.cosX0*g-this.sinX0*A*Math.cos(x))+this.y0),t.x=f*A*Math.sin(x)+this.x0,t))}function Nc(t){t.x-=this.x0,t.y-=this.y0;var n,a,l,c,f,p=Math.sqrt(t.x*t.x+t.y*t.y);if(this.sphere){var g=2*Math.atan(p/(2*this.a*this.k0));return n=this.long0,a=this.lat0,p<=dt?(t.x=n,t.y=a,t):(a=Math.asin(Math.cos(g)*this.sinlat0+t.y*Math.sin(g)*this.coslat0/p),Math.abs(this.coslat0)<dt?this.lat0>0?n=_t(this.long0+Math.atan2(t.x,-1*t.y)):n=_t(this.long0+Math.atan2(t.x,t.y)):n=_t(this.long0+Math.atan2(t.x*Math.sin(g),p*this.coslat0*Math.cos(g)-t.y*this.sinlat0*Math.sin(g))),t.x=n,t.y=a,t)}else if(Math.abs(this.coslat0)<=dt){if(p<=dt)return a=this.lat0,n=this.long0,t.x=n,t.y=a,t;t.x*=this.con,t.y*=this.con,l=p*this.cons/(2*this.a*this.k0),a=this.con*ps(this.e,l),n=this.con*_t(this.con*this.long0+Math.atan2(t.x,-1*t.y))}else c=2*Math.atan(p*this.cosX0/(2*this.a*this.k0*this.ms1)),n=this.long0,p<=dt?f=this.X0:(f=Math.asin(Math.cos(c)*this.sinX0+t.y*Math.sin(c)*this.cosX0/p),n=_t(this.long0+Math.atan2(t.x*Math.sin(c),p*this.cosX0*Math.cos(c)-t.y*this.sinX0*Math.sin(c)))),a=-1*ps(this.e,Math.tan(.5*(ut+f)));return t.x=n,t.y=a,t}var Uc=["stere","Stereographic_South_Pole","Polar_Stereographic_variant_A","Polar_Stereographic_variant_B","Polar_Stereographic"];const Zc={init:Fc,forward:zc,inverse:Nc,names:Uc,ssfn_:to};function jc(){var t=this.lat0;this.lambda0=this.long0;var n=Math.sin(t),a=this.a,l=this.rf,c=1/l,f=2*c-Math.pow(c,2),p=this.e=Math.sqrt(f);this.R=this.k0*a*Math.sqrt(1-f)/(1-f*Math.pow(n,2)),this.alpha=Math.sqrt(1+f/(1-f)*Math.pow(Math.cos(t),4)),this.b0=Math.asin(n/this.alpha);var g=Math.log(Math.tan(Math.PI/4+this.b0/2)),A=Math.log(Math.tan(Math.PI/4+t/2)),k=Math.log((1+p*n)/(1-p*n));this.K=g-this.alpha*A+this.alpha*p/2*k}function qc(t){var n=Math.log(Math.tan(Math.PI/4-t.y/2)),a=this.e/2*Math.log((1+this.e*Math.sin(t.y))/(1-this.e*Math.sin(t.y))),l=-this.alpha*(n+a)+this.K,c=2*(Math.atan(Math.exp(l))-Math.PI/4),f=this.alpha*(t.x-this.lambda0),p=Math.atan(Math.sin(f)/(Math.sin(this.b0)*Math.tan(c)+Math.cos(this.b0)*Math.cos(f))),g=Math.asin(Math.cos(this.b0)*Math.sin(c)-Math.sin(this.b0)*Math.cos(c)*Math.cos(f));return t.y=this.R/2*Math.log((1+Math.sin(g))/(1-Math.sin(g)))+this.y0,t.x=this.R*p+this.x0,t}function Hc(t){for(var n=t.x-this.x0,a=t.y-this.y0,l=n/this.R,c=2*(Math.atan(Math.exp(a/this.R))-Math.PI/4),f=Math.asin(Math.cos(this.b0)*Math.sin(c)+Math.sin(this.b0)*Math.cos(c)*Math.cos(l)),p=Math.atan(Math.sin(l)/(Math.cos(this.b0)*Math.cos(l)-Math.sin(this.b0)*Math.tan(c))),g=this.lambda0+p/this.alpha,A=0,k=f,C=-1e3,x=0;Math.abs(k-C)>1e-7;){if(++x>20)return;A=1/this.alpha*(Math.log(Math.tan(Math.PI/4+f/2))-this.K)+this.e*Math.log(Math.tan(Math.PI/4+Math.asin(this.e*Math.sin(k))/2)),C=k,k=2*Math.atan(Math.exp(A))-Math.PI/2}return t.x=g,t.y=k,t}var Vc=["somerc"];const $c={init:jc,forward:qc,inverse:Hc,names:Vc};var En=1e-7;function Wc(t){var n=["Hotine_Oblique_Mercator","Hotine_Oblique_Mercator_variant_A","Hotine_Oblique_Mercator_Azimuth_Natural_Origin"],a=typeof t.projName=="object"?Object.keys(t.projName)[0]:t.projName;return"no_uoff"in t||"no_off"in t||n.indexOf(a)!==-1||n.indexOf(Oh(a))!==-1}function Kc(){var t,n,a,l,c,f,p,g,A,k,C=0,x,b=0,T=0,G=0,Z=0,K=0,at=0;this.no_off=Wc(this),this.no_rot="no_rot"in this;var rt=!1;"alpha"in this&&(rt=!0);var ct=!1;if("rectified_grid_angle"in this&&(ct=!0),rt&&(at=this.alpha),ct&&(C=this.rectified_grid_angle),rt||ct)b=this.longc;else if(T=this.long1,Z=this.lat1,G=this.long2,K=this.lat2,Math.abs(Z-K)<=En||(t=Math.abs(Z))<=En||Math.abs(t-ut)<=En||Math.abs(Math.abs(this.lat0)-ut)<=En||Math.abs(Math.abs(K)-ut)<=En)throw new Error;var yt=1-this.es;n=Math.sqrt(yt),Math.abs(this.lat0)>dt?(g=Math.sin(this.lat0),a=Math.cos(this.lat0),t=1-this.es*g*g,this.B=a*a,this.B=Math.sqrt(1+this.es*this.B*this.B/yt),this.A=this.B*this.k0*n/t,l=this.B*n/(a*Math.sqrt(t)),c=l*l-1,c<=0?c=0:(c=Math.sqrt(c),this.lat0<0&&(c=-c)),this.E=c+=l,this.E*=Math.pow(ii(this.e,this.lat0,g),this.B)):(this.B=1/n,this.A=this.k0,this.E=l=c=1),rt||ct?(rt?(x=Math.asin(Math.sin(at)/l),ct||(C=at)):(x=C,at=Math.asin(l*Math.sin(x))),this.lam0=b-Math.asin(.5*(c-1/c)*Math.tan(x))/this.B):(f=Math.pow(ii(this.e,Z,Math.sin(Z)),this.B),p=Math.pow(ii(this.e,K,Math.sin(K)),this.B),c=this.E/f,A=(p-f)/(p+f),k=this.E*this.E,k=(k-p*f)/(k+p*f),t=T-G,t<-Math.PI?G-=cs:t>Math.PI&&(G+=cs),this.lam0=_t(.5*(T+G)-Math.atan(k*Math.tan(.5*this.B*(T-G))/A)/this.B),x=Math.atan(2*Math.sin(this.B*_t(T-this.lam0))/(c-1/c)),C=at=Math.asin(l*Math.sin(x))),this.singam=Math.sin(x),this.cosgam=Math.cos(x),this.sinrot=Math.sin(C),this.cosrot=Math.cos(C),this.rB=1/this.B,this.ArB=this.A*this.rB,this.BrA=1/this.ArB,this.no_off?this.u_0=0:(this.u_0=Math.abs(this.ArB*Math.atan(Math.sqrt(l*l-1)/Math.cos(at))),this.lat0<0&&(this.u_0=-this.u_0)),c=.5*x,this.v_pole_n=this.ArB*Math.log(Math.tan(jt-c)),this.v_pole_s=this.ArB*Math.log(Math.tan(jt+c))}function Xc(t){var n={},a,l,c,f,p,g,A,k;if(t.x=t.x-this.lam0,Math.abs(Math.abs(t.y)-ut)>dt){if(p=this.E/Math.pow(ii(this.e,t.y,Math.sin(t.y)),this.B),g=1/p,a=.5*(p-g),l=.5*(p+g),f=Math.sin(this.B*t.x),c=(a*this.singam-f*this.cosgam)/l,Math.abs(Math.abs(c)-1)<dt)throw new Error;k=.5*this.ArB*Math.log((1-c)/(1+c)),g=Math.cos(this.B*t.x),Math.abs(g)<En?A=this.A*t.x:A=this.ArB*Math.atan2(a*this.cosgam+f*this.singam,g)}else k=t.y>0?this.v_pole_n:this.v_pole_s,A=this.ArB*t.y;return this.no_rot?(n.x=A,n.y=k):(A-=this.u_0,n.x=k*this.cosrot+A*this.sinrot,n.y=A*this.cosrot-k*this.sinrot),n.x=this.a*n.x+this.x0,n.y=this.a*n.y+this.y0,n}function Yc(t){var n,a,l,c,f,p,g,A={};if(t.x=(t.x-this.x0)*(1/this.a),t.y=(t.y-this.y0)*(1/this.a),this.no_rot?(a=t.y,n=t.x):(a=t.x*this.cosrot-t.y*this.sinrot,n=t.y*this.cosrot+t.x*this.sinrot+this.u_0),l=Math.exp(-this.BrA*a),c=.5*(l-1/l),f=.5*(l+1/l),p=Math.sin(this.BrA*n),g=(p*this.cosgam+c*this.singam)/f,Math.abs(Math.abs(g)-1)<dt)A.x=0,A.y=g<0?-ut:ut;else{if(A.y=this.E/Math.sqrt((1+g)/(1-g)),A.y=ps(this.e,Math.pow(A.y,1/this.B)),A.y===1/0)throw new Error;A.x=-this.rB*Math.atan2(c*this.cosgam-p*this.singam,Math.cos(this.BrA*n))}return A.x+=this.lam0,A}var Jc=["Hotine_Oblique_Mercator","Hotine Oblique Mercator","Hotine_Oblique_Mercator_variant_A","Hotine_Oblique_Mercator_Variant_B","Hotine_Oblique_Mercator_Azimuth_Natural_Origin","Hotine_Oblique_Mercator_Two_Point_Natural_Origin","Hotine_Oblique_Mercator_Azimuth_Center","Oblique_Mercator","omerc"];const Qc={init:Kc,forward:Xc,inverse:Yc,names:Jc};function td(){if(this.lat2||(this.lat2=this.lat1),this.k0||(this.k0=1),this.x0=this.x0||0,this.y0=this.y0||0,!(Math.abs(this.lat1+this.lat2)<dt)){var t=this.b/this.a;this.e=Math.sqrt(1-t*t);var n=Math.sin(this.lat1),a=Math.cos(this.lat1),l=ci(this.e,n,a),c=ii(this.e,this.lat1,n),f=Math.sin(this.lat2),p=Math.cos(this.lat2),g=ci(this.e,f,p),A=ii(this.e,this.lat2,f),k=Math.abs(Math.abs(this.lat0)-ut)<dt?0:ii(this.e,this.lat0,Math.sin(this.lat0));Math.abs(this.lat1-this.lat2)>dt?this.ns=Math.log(l/g)/Math.log(c/A):this.ns=n,isNaN(this.ns)&&(this.ns=n),this.f0=l/(this.ns*Math.pow(c,this.ns)),this.rh=this.a*this.f0*Math.pow(k,this.ns),this.title||(this.title="Lambert Conformal Conic")}}function ed(t){var n=t.x,a=t.y;Math.abs(2*Math.abs(a)-Math.PI)<=dt&&(a=fs(a)*(ut-2*dt));var l=Math.abs(Math.abs(a)-ut),c,f;if(l>dt)c=ii(this.e,a,Math.sin(a)),f=this.a*this.f0*Math.pow(c,this.ns);else{if(l=a*this.ns,l<=0)return null;f=0}var p=this.ns*_t(n-this.long0);return t.x=this.k0*(f*Math.sin(p))+this.x0,t.y=this.k0*(this.rh-f*Math.cos(p))+this.y0,t}function id(t){var n,a,l,c,f,p=(t.x-this.x0)/this.k0,g=this.rh-(t.y-this.y0)/this.k0;this.ns>0?(n=Math.sqrt(p*p+g*g),a=1):(n=-Math.sqrt(p*p+g*g),a=-1);var A=0;if(n!==0&&(A=Math.atan2(a*p,a*g)),n!==0||this.ns>0){if(a=1/this.ns,l=Math.pow(n/(this.a*this.f0),a),c=ps(this.e,l),c===-9999)return null}else c=-ut;return f=_t(A/this.ns+this.long0),t.x=f,t.y=c,t}var nd=["Lambert Tangential Conformal Conic Projection","Lambert_Conformal_Conic","Lambert_Conformal_Conic_1SP","Lambert_Conformal_Conic_2SP","lcc","Lambert Conic Conformal (1SP)","Lambert Conic Conformal (2SP)"];const sd={init:td,forward:ed,inverse:id,names:nd};function ad(){this.a=6377397155e-3,this.es=.006674372230614,this.e=Math.sqrt(this.es),this.lat0||(this.lat0=.863937979737193),this.long0||(this.long0=.7417649320975901-.308341501185665),this.k0||(this.k0=.9999),this.s45=.785398163397448,this.s90=2*this.s45,this.fi0=this.lat0,this.e2=this.es,this.e=Math.sqrt(this.e2),this.alfa=Math.sqrt(1+this.e2*Math.pow(Math.cos(this.fi0),4)/(1-this.e2)),this.uq=1.04216856380474,this.u0=Math.asin(Math.sin(this.fi0)/this.alfa),this.g=Math.pow((1+this.e*Math.sin(this.fi0))/(1-this.e*Math.sin(this.fi0)),this.alfa*this.e/2),this.k=Math.tan(this.u0/2+this.s45)/Math.pow(Math.tan(this.fi0/2+this.s45),this.alfa)*this.g,this.k1=this.k0,this.n0=this.a*Math.sqrt(1-this.e2)/(1-this.e2*Math.pow(Math.sin(this.fi0),2)),this.s0=1.37008346281555,this.n=Math.sin(this.s0),this.ro0=this.k1*this.n0/Math.tan(this.s0),this.ad=this.s90-this.uq}function rd(t){var n,a,l,c,f,p,g,A=t.x,k=t.y,C=_t(A-this.long0);return n=Math.pow((1+this.e*Math.sin(k))/(1-this.e*Math.sin(k)),this.alfa*this.e/2),a=2*(Math.atan(this.k*Math.pow(Math.tan(k/2+this.s45),this.alfa)/n)-this.s45),l=-C*this.alfa,c=Math.asin(Math.cos(this.ad)*Math.sin(a)+Math.sin(this.ad)*Math.cos(a)*Math.cos(l)),f=Math.asin(Math.cos(a)*Math.sin(l)/Math.cos(c)),p=this.n*f,g=this.ro0*Math.pow(Math.tan(this.s0/2+this.s45),this.n)/Math.pow(Math.tan(c/2+this.s45),this.n),t.y=g*Math.cos(p)/1,t.x=g*Math.sin(p)/1,this.czech||(t.y*=-1,t.x*=-1),t}function od(t){var n,a,l,c,f,p,g,A,k=t.x;t.x=t.y,t.y=k,this.czech||(t.y*=-1,t.x*=-1),p=Math.sqrt(t.x*t.x+t.y*t.y),f=Math.atan2(t.y,t.x),c=f/Math.sin(this.s0),l=2*(Math.atan(Math.pow(this.ro0/p,1/this.n)*Math.tan(this.s0/2+this.s45))-this.s45),n=Math.asin(Math.cos(this.ad)*Math.sin(l)-Math.sin(this.ad)*Math.cos(l)*Math.cos(c)),a=Math.asin(Math.cos(l)*Math.sin(c)/Math.cos(n)),t.x=this.long0-a/this.alfa,g=n,A=0;var C=0;do t.y=2*(Math.atan(Math.pow(this.k,-1/this.alfa)*Math.pow(Math.tan(n/2+this.s45),1/this.alfa)*Math.pow((1+this.e*Math.sin(g))/(1-this.e*Math.sin(g)),this.e/2))-this.s45),Math.abs(g-t.y)<1e-10&&(A=1),g=t.y,C+=1;while(A===0&&C<15);return C>=15?null:t}var hd=["Krovak","krovak"];const ld={init:ad,forward:rd,inverse:od,names:hd};function Te(t,n,a,l,c){return t*c-n*Math.sin(2*c)+a*Math.sin(4*c)-l*Math.sin(6*c)}function gs(t){return 1-.25*t*(1+t/16*(3+1.25*t))}function ys(t){return .375*t*(1+.25*t*(1+.46875*t))}function vs(t){return .05859375*t*t*(1+.75*t)}function As(t){return t*t*t*(35/3072)}function eo(t,n,a){var l=n*a;return t/Math.sqrt(1-l*l)}function Ii(t){return Math.abs(t)<ut?t:t-fs(t)*Math.PI}function Ea(t,n,a,l,c){var f,p;f=t/n;for(var g=0;g<15;g++)if(p=(t-(n*f-a*Math.sin(2*f)+l*Math.sin(4*f)-c*Math.sin(6*f)))/(n-2*a*Math.cos(2*f)+4*l*Math.cos(4*f)-6*c*Math.cos(6*f)),f+=p,Math.abs(p)<=1e-10)return f;return NaN}function ud(){this.sphere||(this.e0=gs(this.es),this.e1=ys(this.es),this.e2=vs(this.es),this.e3=As(this.es),this.ml0=this.a*Te(this.e0,this.e1,this.e2,this.e3,this.lat0))}function cd(t){var n,a,l=t.x,c=t.y;if(l=_t(l-this.long0),this.sphere)n=this.a*Math.asin(Math.cos(c)*Math.sin(l)),a=this.a*(Math.atan2(Math.tan(c),Math.cos(l))-this.lat0);else{var f=Math.sin(c),p=Math.cos(c),g=eo(this.a,this.e,f),A=Math.tan(c)*Math.tan(c),k=l*Math.cos(c),C=k*k,x=this.es*p*p/(1-this.es),b=this.a*Te(this.e0,this.e1,this.e2,this.e3,c);n=g*k*(1-C*A*(1/6-(8-A+8*x)*C/120)),a=b-this.ml0+g*f/p*C*(.5+(5-A+6*x)*C/24)}return t.x=n+this.x0,t.y=a+this.y0,t}function dd(t){t.x-=this.x0,t.y-=this.y0;var n=t.x/this.a,a=t.y/this.a,l,c;if(this.sphere){var f=a+this.lat0;l=Math.asin(Math.sin(f)*Math.cos(n)),c=Math.atan2(Math.tan(n),Math.cos(f))}else{var p=this.ml0/this.a+a,g=Ea(p,this.e0,this.e1,this.e2,this.e3);if(Math.abs(Math.abs(g)-ut)<=dt)return t.x=this.long0,t.y=ut,a<0&&(t.y*=-1),t;var A=eo(this.a,this.e,Math.sin(g)),k=A*A*A/this.a/this.a*(1-this.es),C=Math.pow(Math.tan(g),2),x=n*this.a/A,b=x*x;l=g-A*Math.tan(g)/k*x*x*(.5-(1+3*C)*x*x/24),c=x*(1-b*(C/3+(1+3*C)*C*b/15))/Math.cos(g)}return t.x=_t(c+this.long0),t.y=Ii(l),t}var fd=["Cassini","Cassini_Soldner","cass"];const pd={init:ud,forward:cd,inverse:dd,names:fd};function Ri(t,n){var a;return t>1e-7?(a=t*n,(1-t*t)*(n/(1-a*a)-.5/t*Math.log((1-a)/(1+a)))):2*n}var io=1,no=2,so=3,Pa=4;function _d(){var t=Math.abs(this.lat0);if(Math.abs(t-ut)<dt?this.mode=this.lat0<0?io:no:Math.abs(t)<dt?this.mode=so:this.mode=Pa,this.es>0){var n;switch(this.qp=Ri(this.e,1),this.mmf=.5/(1-this.es),this.apa=bd(this.es),this.mode){case no:this.dd=1;break;case io:this.dd=1;break;case so:this.rq=Math.sqrt(.5*this.qp),this.dd=1/this.rq,this.xmf=1,this.ymf=.5*this.qp;break;case Pa:this.rq=Math.sqrt(.5*this.qp),n=Math.sin(this.lat0),this.sinb1=Ri(this.e,n)/this.qp,this.cosb1=Math.sqrt(1-this.sinb1*this.sinb1),this.dd=Math.cos(this.lat0)/(Math.sqrt(1-this.es*n*n)*this.rq*this.cosb1),this.ymf=(this.xmf=this.rq)/this.dd,this.xmf*=this.dd;break}}else this.mode===Pa&&(this.sinph0=Math.sin(this.lat0),this.cosph0=Math.cos(this.lat0))}function md(t){var n,a,l,c,f,p,g,A,k,C,x=t.x,b=t.y;if(x=_t(x-this.long0),this.sphere){if(f=Math.sin(b),C=Math.cos(b),l=Math.cos(x),this.mode===this.OBLIQ||this.mode===this.EQUIT){if(a=this.mode===this.EQUIT?1+C*l:1+this.sinph0*f+this.cosph0*C*l,a<=dt)return null;a=Math.sqrt(2/a),n=a*C*Math.sin(x),a*=this.mode===this.EQUIT?f:this.cosph0*f-this.sinph0*C*l}else if(this.mode===this.N_POLE||this.mode===this.S_POLE){if(this.mode===this.N_POLE&&(l=-l),Math.abs(b+this.lat0)<dt)return null;a=jt-b*.5,a=2*(this.mode===this.S_POLE?Math.cos(a):Math.sin(a)),n=a*Math.sin(x),a*=l}}else{switch(g=0,A=0,k=0,l=Math.cos(x),c=Math.sin(x),f=Math.sin(b),p=Ri(this.e,f),(this.mode===this.OBLIQ||this.mode===this.EQUIT)&&(g=p/this.qp,A=Math.sqrt(1-g*g)),this.mode){case this.OBLIQ:k=1+this.sinb1*g+this.cosb1*A*l;break;case this.EQUIT:k=1+A*l;break;case this.N_POLE:k=ut+b,p=this.qp-p;break;case this.S_POLE:k=b-ut,p=this.qp+p;break}if(Math.abs(k)<dt)return null;switch(this.mode){case this.OBLIQ:case this.EQUIT:k=Math.sqrt(2/k),this.mode===this.OBLIQ?a=this.ymf*k*(this.cosb1*g-this.sinb1*A*l):a=(k=Math.sqrt(2/(1+A*l)))*g*this.ymf,n=this.xmf*k*A*c;break;case this.N_POLE:case this.S_POLE:p>=0?(n=(k=Math.sqrt(p))*c,a=l*(this.mode===this.S_POLE?k:-k)):n=a=0;break}}return t.x=this.a*n+this.x0,t.y=this.a*a+this.y0,t}function gd(t){t.x-=this.x0,t.y-=this.y0;var n=t.x/this.a,a=t.y/this.a,l,c,f,p,g,A,k;if(this.sphere){var C=0,x,b=0;if(x=Math.sqrt(n*n+a*a),c=x*.5,c>1)return null;switch(c=2*Math.asin(c),(this.mode===this.OBLIQ||this.mode===this.EQUIT)&&(b=Math.sin(c),C=Math.cos(c)),this.mode){case this.EQUIT:c=Math.abs(x)<=dt?0:Math.asin(a*b/x),n*=b,a=C*x;break;case this.OBLIQ:c=Math.abs(x)<=dt?this.lat0:Math.asin(C*this.sinph0+a*b*this.cosph0/x),n*=b*this.cosph0,a=(C-Math.sin(c)*this.sinph0)*x;break;case this.N_POLE:a=-a,c=ut-c;break;case this.S_POLE:c-=ut;break}l=a===0&&(this.mode===this.EQUIT||this.mode===this.OBLIQ)?0:Math.atan2(n,a)}else{if(k=0,this.mode===this.OBLIQ||this.mode===this.EQUIT){if(n/=this.dd,a*=this.dd,A=Math.sqrt(n*n+a*a),A<dt)return t.x=this.long0,t.y=this.lat0,t;p=2*Math.asin(.5*A/this.rq),f=Math.cos(p),n*=p=Math.sin(p),this.mode===this.OBLIQ?(k=f*this.sinb1+a*p*this.cosb1/A,g=this.qp*k,a=A*this.cosb1*f-a*this.sinb1*p):(k=a*p/A,g=this.qp*k,a=A*f)}else if(this.mode===this.N_POLE||this.mode===this.S_POLE){if(this.mode===this.N_POLE&&(a=-a),g=n*n+a*a,!g)return t.x=this.long0,t.y=this.lat0,t;k=1-g/this.qp,this.mode===this.S_POLE&&(k=-k)}l=Math.atan2(n,a),c=wd(Math.asin(k),this.apa)}return t.x=_t(this.long0+l),t.y=c,t}var yd=.3333333333333333,vd=.17222222222222222,Ad=.10257936507936508,Md=.06388888888888888,xd=.0664021164021164,Ld=.016415012942191543;function bd(t){var n,a=[];return a[0]=t*yd,n=t*t,a[0]+=n*vd,a[1]=n*Md,n*=t,a[0]+=n*Ad,a[1]+=n*xd,a[2]=n*Ld,a}function wd(t,n){var a=t+t;return t+n[0]*Math.sin(a)+n[1]*Math.sin(a+a)+n[2]*Math.sin(a+a+a)}var Cd=["Lambert Azimuthal Equal Area","Lambert_Azimuthal_Equal_Area","laea"];const Ed={init:_d,forward:md,inverse:gd,names:Cd,S_POLE:io,N_POLE:no,EQUIT:so,OBLIQ:Pa};function Gi(t){return Math.abs(t)>1&&(t=t>1?1:-1),Math.asin(t)}function Pd(){Math.abs(this.lat1+this.lat2)<dt||(this.temp=this.b/this.a,this.es=1-Math.pow(this.temp,2),this.e3=Math.sqrt(this.es),this.sin_po=Math.sin(this.lat1),this.cos_po=Math.cos(this.lat1),this.t1=this.sin_po,this.con=this.sin_po,this.ms1=ci(this.e3,this.sin_po,this.cos_po),this.qs1=Ri(this.e3,this.sin_po),this.sin_po=Math.sin(this.lat2),this.cos_po=Math.cos(this.lat2),this.t2=this.sin_po,this.ms2=ci(this.e3,this.sin_po,this.cos_po),this.qs2=Ri(this.e3,this.sin_po),this.sin_po=Math.sin(this.lat0),this.cos_po=Math.cos(this.lat0),this.t3=this.sin_po,this.qs0=Ri(this.e3,this.sin_po),Math.abs(this.lat1-this.lat2)>dt?this.ns0=(this.ms1*this.ms1-this.ms2*this.ms2)/(this.qs2-this.qs1):this.ns0=this.con,this.c=this.ms1*this.ms1+this.ns0*this.qs1,this.rh=this.a*Math.sqrt(this.c-this.ns0*this.qs0)/this.ns0)}function kd(t){var n=t.x,a=t.y;this.sin_phi=Math.sin(a),this.cos_phi=Math.cos(a);var l=Ri(this.e3,this.sin_phi),c=this.a*Math.sqrt(this.c-this.ns0*l)/this.ns0,f=this.ns0*_t(n-this.long0),p=c*Math.sin(f)+this.x0,g=this.rh-c*Math.cos(f)+this.y0;return t.x=p,t.y=g,t}function Bd(t){var n,a,l,c,f,p;return t.x-=this.x0,t.y=this.rh-t.y+this.y0,this.ns0>=0?(n=Math.sqrt(t.x*t.x+t.y*t.y),l=1):(n=-Math.sqrt(t.x*t.x+t.y*t.y),l=-1),c=0,n!==0&&(c=Math.atan2(l*t.x,l*t.y)),l=n*this.ns0/this.a,this.sphere?p=Math.asin((this.c-l*l)/(2*this.ns0)):(a=(this.c-l*l)/this.ns0,p=this.phi1z(this.e3,a)),f=_t(c/this.ns0+this.long0),t.x=f,t.y=p,t}function Sd(t,n){var a,l,c,f,p,g=Gi(.5*n);if(t<dt)return g;for(var A=t*t,k=1;k<=25;k++)if(a=Math.sin(g),l=Math.cos(g),c=t*a,f=1-c*c,p=.5*f*f/l*(n/(1-A)-a/f+.5/t*Math.log((1-c)/(1+c))),g=g+p,Math.abs(p)<=1e-7)return g;return null}var Td=["Albers_Conic_Equal_Area","Albers_Equal_Area","Albers","aea"];const Dd={init:Pd,forward:kd,inverse:Bd,names:Td,phi1z:Sd};function Od(){this.sin_p14=Math.sin(this.lat0),this.cos_p14=Math.cos(this.lat0),this.infinity_dist=1e3*this.a,this.rc=1}function Id(t){var n,a,l,c,f,p,g,A,k=t.x,C=t.y;return l=_t(k-this.long0),n=Math.sin(C),a=Math.cos(C),c=Math.cos(l),p=this.sin_p14*n+this.cos_p14*a*c,f=1,p>0||Math.abs(p)<=dt?(g=this.x0+this.a*f*a*Math.sin(l)/p,A=this.y0+this.a*f*(this.cos_p14*n-this.sin_p14*a*c)/p):(g=this.x0+this.infinity_dist*a*Math.sin(l),A=this.y0+this.infinity_dist*(this.cos_p14*n-this.sin_p14*a*c)),t.x=g,t.y=A,t}function Rd(t){var n,a,l,c,f,p;return t.x=(t.x-this.x0)/this.a,t.y=(t.y-this.y0)/this.a,t.x/=this.k0,t.y/=this.k0,(n=Math.sqrt(t.x*t.x+t.y*t.y))?(c=Math.atan2(n,this.rc),a=Math.sin(c),l=Math.cos(c),p=Gi(l*this.sin_p14+t.y*a*this.cos_p14/n),f=Math.atan2(t.x*a,n*this.cos_p14*l-t.y*this.sin_p14*a),f=_t(this.long0+f)):(p=this.phic0,f=0),t.x=f,t.y=p,t}var Gd=["gnom"];const Fd={init:Od,forward:Id,inverse:Rd,names:Gd};function zd(t,n){var a=1-(1-t*t)/(2*t)*Math.log((1-t)/(1+t));if(Math.abs(Math.abs(n)-a)<1e-6)return n<0?-1*ut:ut;for(var l=Math.asin(.5*n),c,f,p,g,A=0;A<30;A++)if(f=Math.sin(l),p=Math.cos(l),g=t*f,c=Math.pow(1-g*g,2)/(2*p)*(n/(1-t*t)-f/(1-g*g)+.5/t*Math.log((1-g)/(1+g))),l+=c,Math.abs(c)<=1e-10)return l;return NaN}function Nd(){this.sphere||(this.k0=ci(this.e,Math.sin(this.lat_ts),Math.cos(this.lat_ts)))}function Ud(t){var n=t.x,a=t.y,l,c,f=_t(n-this.long0);if(this.sphere)l=this.x0+this.a*f*Math.cos(this.lat_ts),c=this.y0+this.a*Math.sin(a)/Math.cos(this.lat_ts);else{var p=Ri(this.e,Math.sin(a));l=this.x0+this.a*this.k0*f,c=this.y0+this.a*p*.5/this.k0}return t.x=l,t.y=c,t}function Zd(t){t.x-=this.x0,t.y-=this.y0;var n,a;return this.sphere?(n=_t(this.long0+t.x/this.a/Math.cos(this.lat_ts)),a=Math.asin(t.y/this.a*Math.cos(this.lat_ts))):(a=zd(this.e,2*t.y*this.k0/this.a),n=_t(this.long0+t.x/(this.a*this.k0))),t.x=n,t.y=a,t}var jd=["cea"];const qd={init:Nd,forward:Ud,inverse:Zd,names:jd};function Hd(){this.x0=this.x0||0,this.y0=this.y0||0,this.lat0=this.lat0||0,this.long0=this.long0||0,this.lat_ts=this.lat_ts||0,this.title=this.title||"Equidistant Cylindrical (Plate Carre)",this.rc=Math.cos(this.lat_ts)}function Vd(t){var n=t.x,a=t.y,l=_t(n-this.long0),c=Ii(a-this.lat0);return t.x=this.x0+this.a*l*this.rc,t.y=this.y0+this.a*c,t}function $d(t){var n=t.x,a=t.y;return t.x=_t(this.long0+(n-this.x0)/(this.a*this.rc)),t.y=Ii(this.lat0+(a-this.y0)/this.a),t}var Wd=["Equirectangular","Equidistant_Cylindrical","Equidistant_Cylindrical_Spherical","eqc"];const Kd={init:Hd,forward:Vd,inverse:$d,names:Wd};var sl=20;function Xd(){this.temp=this.b/this.a,this.es=1-Math.pow(this.temp,2),this.e=Math.sqrt(this.es),this.e0=gs(this.es),this.e1=ys(this.es),this.e2=vs(this.es),this.e3=As(this.es),this.ml0=this.a*Te(this.e0,this.e1,this.e2,this.e3,this.lat0)}function Yd(t){var n=t.x,a=t.y,l,c,f,p=_t(n-this.long0);if(f=p*Math.sin(a),this.sphere)Math.abs(a)<=dt?(l=this.a*p,c=-1*this.a*this.lat0):(l=this.a*Math.sin(f)/Math.tan(a),c=this.a*(Ii(a-this.lat0)+(1-Math.cos(f))/Math.tan(a)));else if(Math.abs(a)<=dt)l=this.a*p,c=-1*this.ml0;else{var g=eo(this.a,this.e,Math.sin(a))/Math.tan(a);l=g*Math.sin(f),c=this.a*Te(this.e0,this.e1,this.e2,this.e3,a)-this.ml0+g*(1-Math.cos(f))}return t.x=l+this.x0,t.y=c+this.y0,t}function Jd(t){var n,a,l,c,f,p,g,A,k;if(l=t.x-this.x0,c=t.y-this.y0,this.sphere)if(Math.abs(c+this.a*this.lat0)<=dt)n=_t(l/this.a+this.long0),a=0;else{p=this.lat0+c/this.a,g=l*l/this.a/this.a+p*p,A=p;var C;for(f=sl;f;--f)if(C=Math.tan(A),k=-1*(p*(A*C+1)-A-.5*(A*A+g)*C)/((A-p)/C-1),A+=k,Math.abs(k)<=dt){a=A;break}n=_t(this.long0+Math.asin(l*Math.tan(A)/this.a)/Math.sin(a))}else if(Math.abs(c+this.ml0)<=dt)a=0,n=_t(this.long0+l/this.a);else{p=(this.ml0+c)/this.a,g=l*l/this.a/this.a+p*p,A=p;var x,b,T,G,Z;for(f=sl;f;--f)if(Z=this.e*Math.sin(A),x=Math.sqrt(1-Z*Z)*Math.tan(A),b=this.a*Te(this.e0,this.e1,this.e2,this.e3,A),T=this.e0-2*this.e1*Math.cos(2*A)+4*this.e2*Math.cos(4*A)-6*this.e3*Math.cos(6*A),G=b/this.a,k=(p*(x*G+1)-G-.5*x*(G*G+g))/(this.es*Math.sin(2*A)*(G*G+g-2*p*G)/(4*x)+(p-G)*(x*T-2/Math.sin(2*A))-T),A-=k,Math.abs(k)<=dt){a=A;break}x=Math.sqrt(1-this.es*Math.pow(Math.sin(a),2))*Math.tan(a),n=_t(this.long0+Math.asin(l*x/this.a)/Math.sin(a))}return t.x=n,t.y=a,t}var Qd=["Polyconic","American_Polyconic","poly"];const tf={init:Xd,forward:Yd,inverse:Jd,names:Qd};function ef(){this.A=[],this.A[1]=.6399175073,this.A[2]=-.1358797613,this.A[3]=.063294409,this.A[4]=-.02526853,this.A[5]=.0117879,this.A[6]=-.0055161,this.A[7]=.0026906,this.A[8]=-.001333,this.A[9]=67e-5,this.A[10]=-34e-5,this.B_re=[],this.B_im=[],this.B_re[1]=.7557853228,this.B_im[1]=0,this.B_re[2]=.249204646,this.B_im[2]=.003371507,this.B_re[3]=-.001541739,this.B_im[3]=.04105856,this.B_re[4]=-.10162907,this.B_im[4]=.01727609,this.B_re[5]=-.26623489,this.B_im[5]=-.36249218,this.B_re[6]=-.6870983,this.B_im[6]=-1.1651967,this.C_re=[],this.C_im=[],this.C_re[1]=1.3231270439,this.C_im[1]=0,this.C_re[2]=-.577245789,this.C_im[2]=-.007809598,this.C_re[3]=.508307513,this.C_im[3]=-.112208952,this.C_re[4]=-.15094762,this.C_im[4]=.18200602,this.C_re[5]=1.01418179,this.C_im[5]=1.64497696,this.C_re[6]=1.9660549,this.C_im[6]=2.5127645,this.D=[],this.D[1]=1.5627014243,this.D[2]=.5185406398,this.D[3]=-.03333098,this.D[4]=-.1052906,this.D[5]=-.0368594,this.D[6]=.007317,this.D[7]=.0122,this.D[8]=.00394,this.D[9]=-.0013}function nf(t){var n,a=t.x,l=t.y,c=l-this.lat0,f=a-this.long0,p=c/us*1e-5,g=f,A=1,k=0;for(n=1;n<=10;n++)A=A*p,k=k+this.A[n]*A;var C=k,x=g,b=1,T=0,G,Z,K=0,at=0;for(n=1;n<=6;n++)G=b*C-T*x,Z=T*C+b*x,b=G,T=Z,K=K+this.B_re[n]*b-this.B_im[n]*T,at=at+this.B_im[n]*b+this.B_re[n]*T;return t.x=at*this.a+this.x0,t.y=K*this.a+this.y0,t}function sf(t){var n,a=t.x,l=t.y,c=a-this.x0,f=l-this.y0,p=f/this.a,g=c/this.a,A=1,k=0,C,x,b=0,T=0;for(n=1;n<=6;n++)C=A*p-k*g,x=k*p+A*g,A=C,k=x,b=b+this.C_re[n]*A-this.C_im[n]*k,T=T+this.C_im[n]*A+this.C_re[n]*k;for(var G=0;G<this.iterations;G++){var Z=b,K=T,at,rt,ct=p,yt=g;for(n=2;n<=6;n++)at=Z*b-K*T,rt=K*b+Z*T,Z=at,K=rt,ct=ct+(n-1)*(this.B_re[n]*Z-this.B_im[n]*K),yt=yt+(n-1)*(this.B_im[n]*Z+this.B_re[n]*K);Z=1,K=0;var mt=this.B_re[1],xt=this.B_im[1];for(n=2;n<=6;n++)at=Z*b-K*T,rt=K*b+Z*T,Z=at,K=rt,mt=mt+n*(this.B_re[n]*Z-this.B_im[n]*K),xt=xt+n*(this.B_im[n]*Z+this.B_re[n]*K);var Dt=mt*mt+xt*xt;b=(ct*mt+yt*xt)/Dt,T=(yt*mt-ct*xt)/Dt}var It=b,zt=T,Yt=1,Et=0;for(n=1;n<=9;n++)Yt=Yt*It,Et=Et+this.D[n]*Yt;var Zt=this.lat0+Et*us*1e5,be=this.long0+zt;return t.x=be,t.y=Zt,t}var af=["New_Zealand_Map_Grid","nzmg"];const rf={init:ef,forward:nf,inverse:sf,names:af};function of(){}function hf(t){var n=t.x,a=t.y,l=_t(n-this.long0),c=this.x0+this.a*l,f=this.y0+this.a*Math.log(Math.tan(Math.PI/4+a/2.5))*1.25;return t.x=c,t.y=f,t}function lf(t){t.x-=this.x0,t.y-=this.y0;var n=_t(this.long0+t.x/this.a),a=2.5*(Math.atan(Math.exp(.8*t.y/this.a))-Math.PI/4);return t.x=n,t.y=a,t}var uf=["Miller_Cylindrical","mill"];const cf={init:of,forward:hf,inverse:lf,names:uf};var df=20;function ff(){this.sphere?(this.n=1,this.m=0,this.es=0,this.C_y=Math.sqrt((this.m+1)/this.n),this.C_x=this.C_y/(this.m+1)):this.en=Kr(this.es)}function pf(t){var n,a,l=t.x,c=t.y;if(l=_t(l-this.long0),this.sphere){if(!this.m)c=this.n!==1?Math.asin(this.n*Math.sin(c)):c;else for(var f=this.n*Math.sin(c),p=df;p;--p){var g=(this.m*c+Math.sin(c)-f)/(this.m+Math.cos(c));if(c-=g,Math.abs(g)<dt)break}n=this.a*this.C_x*l*(this.m+Math.cos(c)),a=this.a*this.C_y*c}else{var A=Math.sin(c),k=Math.cos(c);a=this.a*Cn(c,A,k,this.en),n=this.a*l*k/Math.sqrt(1-this.es*A*A)}return t.x=n,t.y=a,t}function _f(t){var n,a,l,c;return t.x-=this.x0,l=t.x/this.a,t.y-=this.y0,n=t.y/this.a,this.sphere?(n/=this.C_y,l=l/(this.C_x*(this.m+Math.cos(n))),this.m?n=Gi((this.m*n+Math.sin(n))/this.n):this.n!==1&&(n=Gi(Math.sin(n)/this.n)),l=_t(l+this.long0),n=Ii(n)):(n=Xr(t.y/this.a,this.es,this.en),c=Math.abs(n),c<ut?(c=Math.sin(n),a=this.long0+t.x*Math.sqrt(1-this.es*c*c)/(this.a*Math.cos(n)),l=_t(a)):c-dt<ut&&(l=this.long0)),t.x=l,t.y=n,t}var mf=["Sinusoidal","sinu"];const gf={init:ff,forward:pf,inverse:_f,names:mf};function yf(){}function vf(t){for(var n=t.x,a=t.y,l=_t(n-this.long0),c=a,f=Math.PI*Math.sin(a);;){var p=-(c+Math.sin(c)-f)/(1+Math.cos(c));if(c+=p,Math.abs(p)<dt)break}c/=2,Math.PI/2-Math.abs(a)<dt&&(l=0);var g=.900316316158*this.a*l*Math.cos(c)+this.x0,A=1.4142135623731*this.a*Math.sin(c)+this.y0;return t.x=g,t.y=A,t}function Af(t){var n,a;t.x-=this.x0,t.y-=this.y0,a=t.y/(1.4142135623731*this.a),Math.abs(a)>.999999999999&&(a=.999999999999),n=Math.asin(a);var l=_t(this.long0+t.x/(.900316316158*this.a*Math.cos(n)));l<-Math.PI&&(l=-Math.PI),l>Math.PI&&(l=Math.PI),a=(2*n+Math.sin(2*n))/Math.PI,Math.abs(a)>1&&(a=1);var c=Math.asin(a);return t.x=l,t.y=c,t}var Mf=["Mollweide","moll"];const xf={init:yf,forward:vf,inverse:Af,names:Mf};function Lf(){Math.abs(this.lat1+this.lat2)<dt||(this.lat2=this.lat2||this.lat1,this.temp=this.b/this.a,this.es=1-Math.pow(this.temp,2),this.e=Math.sqrt(this.es),this.e0=gs(this.es),this.e1=ys(this.es),this.e2=vs(this.es),this.e3=As(this.es),this.sin_phi=Math.sin(this.lat1),this.cos_phi=Math.cos(this.lat1),this.ms1=ci(this.e,this.sin_phi,this.cos_phi),this.ml1=Te(this.e0,this.e1,this.e2,this.e3,this.lat1),Math.abs(this.lat1-this.lat2)<dt?this.ns=this.sin_phi:(this.sin_phi=Math.sin(this.lat2),this.cos_phi=Math.cos(this.lat2),this.ms2=ci(this.e,this.sin_phi,this.cos_phi),this.ml2=Te(this.e0,this.e1,this.e2,this.e3,this.lat2),this.ns=(this.ms1-this.ms2)/(this.ml2-this.ml1)),this.g=this.ml1+this.ms1/this.ns,this.ml0=Te(this.e0,this.e1,this.e2,this.e3,this.lat0),this.rh=this.a*(this.g-this.ml0))}function bf(t){var n=t.x,a=t.y,l;if(this.sphere)l=this.a*(this.g-a);else{var c=Te(this.e0,this.e1,this.e2,this.e3,a);l=this.a*(this.g-c)}var f=this.ns*_t(n-this.long0),p=this.x0+l*Math.sin(f),g=this.y0+this.rh-l*Math.cos(f);return t.x=p,t.y=g,t}function wf(t){t.x-=this.x0,t.y=this.rh-t.y+this.y0;var n,a,l,c;this.ns>=0?(a=Math.sqrt(t.x*t.x+t.y*t.y),n=1):(a=-Math.sqrt(t.x*t.x+t.y*t.y),n=-1);var f=0;if(a!==0&&(f=Math.atan2(n*t.x,n*t.y)),this.sphere)return c=_t(this.long0+f/this.ns),l=Ii(this.g-a/this.a),t.x=c,t.y=l,t;var p=this.g-a/this.a;return l=Ea(p,this.e0,this.e1,this.e2,this.e3),c=_t(this.long0+f/this.ns),t.x=c,t.y=l,t}var Cf=["Equidistant_Conic","eqdc"];const Ef={init:Lf,forward:bf,inverse:wf,names:Cf};function Pf(){this.R=this.a}function kf(t){var n=t.x,a=t.y,l=_t(n-this.long0),c,f;Math.abs(a)<=dt&&(c=this.x0+this.R*l,f=this.y0);var p=Gi(2*Math.abs(a/Math.PI));(Math.abs(l)<=dt||Math.abs(Math.abs(a)-ut)<=dt)&&(c=this.x0,a>=0?f=this.y0+Math.PI*this.R*Math.tan(.5*p):f=this.y0+Math.PI*this.R*-Math.tan(.5*p));var g=.5*Math.abs(Math.PI/l-l/Math.PI),A=g*g,k=Math.sin(p),C=Math.cos(p),x=C/(k+C-1),b=x*x,T=x*(2/k-1),G=T*T,Z=Math.PI*this.R*(g*(x-G)+Math.sqrt(A*(x-G)*(x-G)-(G+A)*(b-G)))/(G+A);l<0&&(Z=-Z),c=this.x0+Z;var K=A+x;return Z=Math.PI*this.R*(T*K-g*Math.sqrt((G+A)*(A+1)-K*K))/(G+A),a>=0?f=this.y0+Z:f=this.y0-Z,t.x=c,t.y=f,t}function Bf(t){var n,a,l,c,f,p,g,A,k,C,x,b,T;return t.x-=this.x0,t.y-=this.y0,x=Math.PI*this.R,l=t.x/x,c=t.y/x,f=l*l+c*c,p=-Math.abs(c)*(1+f),g=p-2*c*c+l*l,A=-2*p+1+2*c*c+f*f,T=c*c/A+(2*g*g*g/A/A/A-9*p*g/A/A)/27,k=(p-g*g/3/A)/A,C=2*Math.sqrt(-k/3),x=3*T/k/C,Math.abs(x)>1&&(x>=0?x=1:x=-1),b=Math.acos(x)/3,t.y>=0?a=(-C*Math.cos(b+Math.PI/3)-g/3/A)*Math.PI:a=-(-C*Math.cos(b+Math.PI/3)-g/3/A)*Math.PI,Math.abs(l)<dt?n=this.long0:n=_t(this.long0+Math.PI*(f-1+Math.sqrt(1+2*(l*l-c*c)+f*f))/2/l),t.x=n,t.y=a,t}var Sf=["Van_der_Grinten_I","VanDerGrinten","Van_der_Grinten","vandg"];const Tf={init:Pf,forward:kf,inverse:Bf,names:Sf};function Df(t,n,a,l,c,f){const p=l-n,g=Math.atan((1-f)*Math.tan(t)),A=Math.atan((1-f)*Math.tan(a)),k=Math.sin(g),C=Math.cos(g),x=Math.sin(A),b=Math.cos(A);let T=p,G,Z=100,K,at,rt,ct,yt,mt,xt,Dt,It,zt,Yt,Et,Zt,be;do{if(K=Math.sin(T),at=Math.cos(T),rt=Math.sqrt(b*K*(b*K)+(C*x-k*b*at)*(C*x-k*b*at)),rt===0)return{azi1:0,s12:0};ct=k*x+C*b*at,yt=Math.atan2(rt,ct),mt=C*b*K/rt,xt=1-mt*mt,Dt=xt!==0?ct-2*k*x/xt:0,It=f/16*xt*(4+f*(4-3*xt)),G=T,T=p+(1-It)*f*mt*(yt+It*rt*(Dt+It*ct*(-1+2*Dt*Dt)))}while(Math.abs(T-G)>1e-12&&--Z>0);return Z===0?{azi1:NaN,s12:NaN}:(zt=xt*(c*c-c*(1-f)*(c*(1-f)))/(c*(1-f)*(c*(1-f))),Yt=1+zt/16384*(4096+zt*(-768+zt*(320-175*zt))),Et=zt/1024*(256+zt*(-128+zt*(74-47*zt))),Zt=Et*rt*(Dt+Et/4*(ct*(-1+2*Dt*Dt)-Et/6*Dt*(-3+4*rt*rt)*(-3+4*Dt*Dt))),be=c*(1-f)*Yt*(yt-Zt),{azi1:Math.atan2(b*K,C*x-k*b*at),s12:be})}function Of(t,n,a,l,c,f){const p=Math.atan((1-f)*Math.tan(t)),g=Math.sin(p),A=Math.cos(p),k=Math.sin(a),C=Math.cos(a),x=Math.atan2(g,A*C),b=A*k,T=1-b*b,G=T*(c*c-c*(1-f)*(c*(1-f)))/(c*(1-f)*(c*(1-f))),Z=1+G/16384*(4096+G*(-768+G*(320-175*G))),K=G/1024*(256+G*(-128+G*(74-47*G)));let at=l/(c*(1-f)*Z),rt,ct=100,yt,mt,xt,Dt;do yt=Math.cos(2*x+at),mt=Math.sin(at),xt=Math.cos(at),Dt=K*mt*(yt+K/4*(xt*(-1+2*yt*yt)-K/6*yt*(-3+4*mt*mt)*(-3+4*yt*yt))),rt=at,at=l/(c*(1-f)*Z)+Dt;while(Math.abs(at-rt)>1e-12&&--ct>0);if(ct===0)return{lat2:NaN,lon2:NaN};const It=g*mt-A*xt*C,zt=Math.atan2(g*xt+A*mt*C,(1-f)*Math.sqrt(b*b+It*It)),Yt=Math.atan2(mt*k,A*xt-g*mt*C),Et=f/16*T*(4+f*(4-3*T)),Zt=Yt-(1-Et)*f*b*(at+Et*mt*(yt+Et*xt*(-1+2*yt*yt))),be=n+Zt;return{lat2:zt,lon2:be}}function If(){this.sin_p12=Math.sin(this.lat0),this.cos_p12=Math.cos(this.lat0),this.f=this.es/(1+Math.sqrt(1-this.es))}function Rf(t){var n=t.x,a=t.y,l=Math.sin(t.y),c=Math.cos(t.y),f=_t(n-this.long0),p,g,A,k,C,x,b,T,G,Z,K;return this.sphere?Math.abs(this.sin_p12-1)<=dt?(t.x=this.x0+this.a*(ut-a)*Math.sin(f),t.y=this.y0-this.a*(ut-a)*Math.cos(f),t):Math.abs(this.sin_p12+1)<=dt?(t.x=this.x0+this.a*(ut+a)*Math.sin(f),t.y=this.y0+this.a*(ut+a)*Math.cos(f),t):(G=this.sin_p12*l+this.cos_p12*c*Math.cos(f),b=Math.acos(G),T=b?b/Math.sin(b):1,t.x=this.x0+this.a*T*c*Math.sin(f),t.y=this.y0+this.a*T*(this.cos_p12*l-this.sin_p12*c*Math.cos(f)),t):(p=gs(this.es),g=ys(this.es),A=vs(this.es),k=As(this.es),Math.abs(this.sin_p12-1)<=dt?(C=this.a*Te(p,g,A,k,ut),x=this.a*Te(p,g,A,k,a),t.x=this.x0+(C-x)*Math.sin(f),t.y=this.y0-(C-x)*Math.cos(f),t):Math.abs(this.sin_p12+1)<=dt?(C=this.a*Te(p,g,A,k,ut),x=this.a*Te(p,g,A,k,a),t.x=this.x0+(C+x)*Math.sin(f),t.y=this.y0+(C+x)*Math.cos(f),t):Math.abs(n)<dt&&Math.abs(a-this.lat0)<dt?(t.x=t.y=0,t):(Z=Df(this.lat0,this.long0,a,n,this.a,this.f),K=Z.azi1,t.x=Z.s12*Math.sin(K),t.y=Z.s12*Math.cos(K),t))}function Gf(t){t.x-=this.x0,t.y-=this.y0;var n,a,l,c,f,p,g,A,k,C,x,b,T,G,Z,K;return this.sphere?(n=Math.sqrt(t.x*t.x+t.y*t.y),n>2*ut*this.a?void 0:(a=n/this.a,l=Math.sin(a),c=Math.cos(a),f=this.long0,Math.abs(n)<=dt?p=this.lat0:(p=Gi(c*this.sin_p12+t.y*l*this.cos_p12/n),g=Math.abs(this.lat0)-ut,Math.abs(g)<=dt?this.lat0>=0?f=_t(this.long0+Math.atan2(t.x,-t.y)):f=_t(this.long0-Math.atan2(-t.x,t.y)):f=_t(this.long0+Math.atan2(t.x*l,n*this.cos_p12*c-t.y*this.sin_p12*l))),t.x=f,t.y=p,t)):(A=gs(this.es),k=ys(this.es),C=vs(this.es),x=As(this.es),Math.abs(this.sin_p12-1)<=dt?(b=this.a*Te(A,k,C,x,ut),n=Math.sqrt(t.x*t.x+t.y*t.y),T=b-n,p=Ea(T/this.a,A,k,C,x),f=_t(this.long0+Math.atan2(t.x,-1*t.y)),t.x=f,t.y=p,t):Math.abs(this.sin_p12+1)<=dt?(b=this.a*Te(A,k,C,x,ut),n=Math.sqrt(t.x*t.x+t.y*t.y),T=n-b,p=Ea(T/this.a,A,k,C,x),f=_t(this.long0+Math.atan2(t.x,t.y)),t.x=f,t.y=p,t):(G=Math.atan2(t.x,t.y),Z=Math.sqrt(t.x*t.x+t.y*t.y),K=Of(this.lat0,this.long0,G,Z,this.a,this.f),t.x=K.lon2,t.y=K.lat2,t))}var Ff=["Azimuthal_Equidistant","aeqd"];const zf={init:If,forward:Rf,inverse:Gf,names:Ff};function Nf(){this.sin_p14=Math.sin(this.lat0),this.cos_p14=Math.cos(this.lat0)}function Uf(t){var n,a,l,c,f,p,g,A,k=t.x,C=t.y;return l=_t(k-this.long0),n=Math.sin(C),a=Math.cos(C),c=Math.cos(l),p=this.sin_p14*n+this.cos_p14*a*c,f=1,(p>0||Math.abs(p)<=dt)&&(g=this.a*f*a*Math.sin(l),A=this.y0+this.a*f*(this.cos_p14*n-this.sin_p14*a*c)),t.x=g,t.y=A,t}function Zf(t){var n,a,l,c,f,p,g;return t.x-=this.x0,t.y-=this.y0,n=Math.sqrt(t.x*t.x+t.y*t.y),a=Gi(n/this.a),l=Math.sin(a),c=Math.cos(a),p=this.long0,Math.abs(n)<=dt?(g=this.lat0,t.x=p,t.y=g,t):(g=Gi(c*this.sin_p14+t.y*l*this.cos_p14/n),f=Math.abs(this.lat0)-ut,Math.abs(f)<=dt?(this.lat0>=0?p=_t(this.long0+Math.atan2(t.x,-t.y)):p=_t(this.long0-Math.atan2(-t.x,t.y)),t.x=p,t.y=g,t):(p=_t(this.long0+Math.atan2(t.x*l,n*this.cos_p14*c-t.y*this.sin_p14*l)),t.x=p,t.y=g,t))}var jf=["ortho"];const qf={init:Nf,forward:Uf,inverse:Zf,names:jf};var ie={FRONT:1,RIGHT:2,BACK:3,LEFT:4,TOP:5,BOTTOM:6},qt={AREA_0:1,AREA_1:2,AREA_2:3,AREA_3:4};function Hf(){this.x0=this.x0||0,this.y0=this.y0||0,this.lat0=this.lat0||0,this.long0=this.long0||0,this.lat_ts=this.lat_ts||0,this.title=this.title||"Quadrilateralized Spherical Cube",this.lat0>=ut-jt/2?this.face=ie.TOP:this.lat0<=-(ut-jt/2)?this.face=ie.BOTTOM:Math.abs(this.long0)<=jt?this.face=ie.FRONT:Math.abs(this.long0)<=ut+jt?this.face=this.long0>0?ie.RIGHT:ie.LEFT:this.face=ie.BACK,this.es!==0&&(this.one_minus_f=1-(this.a-this.b)/this.a,this.one_minus_f_squared=this.one_minus_f*this.one_minus_f)}function Vf(t){var n={x:0,y:0},a,l,c,f,p,g,A={value:0};if(t.x-=this.long0,this.es!==0?a=Math.atan(this.one_minus_f_squared*Math.tan(t.y)):a=t.y,l=t.x,this.face===ie.TOP)f=ut-a,l>=jt&&l<=ut+jt?(A.value=qt.AREA_0,c=l-ut):l>ut+jt||l<=-(ut+jt)?(A.value=qt.AREA_1,c=l>0?l-he:l+he):l>-(ut+jt)&&l<=-jt?(A.value=qt.AREA_2,c=l+ut):(A.value=qt.AREA_3,c=l);else if(this.face===ie.BOTTOM)f=ut+a,l>=jt&&l<=ut+jt?(A.value=qt.AREA_0,c=-l+ut):l<jt&&l>=-jt?(A.value=qt.AREA_1,c=-l):l<-jt&&l>=-(ut+jt)?(A.value=qt.AREA_2,c=-l-ut):(A.value=qt.AREA_3,c=l>0?-l+he:-l-he);else{var k,C,x,b,T,G,Z;this.face===ie.RIGHT?l=Pn(l,+ut):this.face===ie.BACK?l=Pn(l,+he):this.face===ie.LEFT&&(l=Pn(l,-ut)),b=Math.sin(a),T=Math.cos(a),G=Math.sin(l),Z=Math.cos(l),k=T*Z,C=T*G,x=b,this.face===ie.FRONT?(f=Math.acos(k),c=ka(f,x,C,A)):this.face===ie.RIGHT?(f=Math.acos(C),c=ka(f,x,-k,A)):this.face===ie.BACK?(f=Math.acos(-k),c=ka(f,x,-C,A)):this.face===ie.LEFT?(f=Math.acos(-C),c=ka(f,x,k,A)):(f=c=0,A.value=qt.AREA_0)}return g=Math.atan(12/he*(c+Math.acos(Math.sin(c)*Math.cos(jt))-ut)),p=Math.sqrt((1-Math.cos(f))/(Math.cos(g)*Math.cos(g))/(1-Math.cos(Math.atan(1/Math.cos(c))))),A.value===qt.AREA_1?g+=ut:A.value===qt.AREA_2?g+=he:A.value===qt.AREA_3&&(g+=1.5*he),n.x=p*Math.cos(g),n.y=p*Math.sin(g),n.x=n.x*this.a+this.x0,n.y=n.y*this.a+this.y0,t.x=n.x,t.y=n.y,t}function $f(t){var n={lam:0,phi:0},a,l,c,f,p,g,A,k,C,x={value:0};if(t.x=(t.x-this.x0)/this.a,t.y=(t.y-this.y0)/this.a,l=Math.atan(Math.sqrt(t.x*t.x+t.y*t.y)),a=Math.atan2(t.y,t.x),t.x>=0&&t.x>=Math.abs(t.y)?x.value=qt.AREA_0:t.y>=0&&t.y>=Math.abs(t.x)?(x.value=qt.AREA_1,a-=ut):t.x<0&&-t.x>=Math.abs(t.y)?(x.value=qt.AREA_2,a=a<0?a+he:a-he):(x.value=qt.AREA_3,a+=ut),C=he/12*Math.tan(a),p=Math.sin(C)/(Math.cos(C)-1/Math.sqrt(2)),g=Math.atan(p),c=Math.cos(a),f=Math.tan(l),A=1-c*c*f*f*(1-Math.cos(Math.atan(1/Math.cos(g)))),A<-1?A=-1:A>1&&(A=1),this.face===ie.TOP)k=Math.acos(A),n.phi=ut-k,x.value===qt.AREA_0?n.lam=g+ut:x.value===qt.AREA_1?n.lam=g<0?g+he:g-he:x.value===qt.AREA_2?n.lam=g-ut:n.lam=g;else if(this.face===ie.BOTTOM)k=Math.acos(A),n.phi=k-ut,x.value===qt.AREA_0?n.lam=-g+ut:x.value===qt.AREA_1?n.lam=-g:x.value===qt.AREA_2?n.lam=-g-ut:n.lam=g<0?-g-he:-g+he;else{var b,T,G;b=A,C=b*b,C>=1?G=0:G=Math.sqrt(1-C)*Math.sin(g),C+=G*G,C>=1?T=0:T=Math.sqrt(1-C),x.value===qt.AREA_1?(C=T,T=-G,G=C):x.value===qt.AREA_2?(T=-T,G=-G):x.value===qt.AREA_3&&(C=T,T=G,G=-C),this.face===ie.RIGHT?(C=b,b=-T,T=C):this.face===ie.BACK?(b=-b,T=-T):this.face===ie.LEFT&&(C=b,b=T,T=-C),n.phi=Math.acos(-G)-ut,n.lam=Math.atan2(T,b),this.face===ie.RIGHT?n.lam=Pn(n.lam,-ut):this.face===ie.BACK?n.lam=Pn(n.lam,-he):this.face===ie.LEFT&&(n.lam=Pn(n.lam,+ut))}if(this.es!==0){var Z,K,at;Z=n.phi<0?1:0,K=Math.tan(n.phi),at=this.b/Math.sqrt(K*K+this.one_minus_f_squared),n.phi=Math.atan(Math.sqrt(this.a*this.a-at*at)/(this.one_minus_f*at)),Z&&(n.phi=-n.phi)}return n.lam+=this.long0,t.x=n.lam,t.y=n.phi,t}function ka(t,n,a,l){var c;return t<dt?(l.value=qt.AREA_0,c=0):(c=Math.atan2(n,a),Math.abs(c)<=jt?l.value=qt.AREA_0:c>jt&&c<=ut+jt?(l.value=qt.AREA_1,c-=ut):c>ut+jt||c<=-(ut+jt)?(l.value=qt.AREA_2,c=c>=0?c-he:c+he):(l.value=qt.AREA_3,c+=ut)),c}function Pn(t,n){var a=t+n;return a<-he?a+=cs:a>+he&&(a-=cs),a}var Wf=["Quadrilateralized Spherical Cube","Quadrilateralized_Spherical_Cube","qsc"];const Kf={init:Hf,forward:Vf,inverse:$f,names:Wf};var ao=[[1,22199e-21,-715515e-10,31103e-10],[.9986,-482243e-9,-24897e-9,-13309e-10],[.9954,-83103e-8,-448605e-10,-986701e-12],[.99,-.00135364,-59661e-9,36777e-10],[.9822,-.00167442,-449547e-11,-572411e-11],[.973,-.00214868,-903571e-10,18736e-12],[.96,-.00305085,-900761e-10,164917e-11],[.9427,-.00382792,-653386e-10,-26154e-10],[.9216,-.00467746,-10457e-8,481243e-11],[.8962,-.00536223,-323831e-10,-543432e-11],[.8679,-.00609363,-113898e-9,332484e-11],[.835,-.00698325,-640253e-10,934959e-12],[.7986,-.00755338,-500009e-10,935324e-12],[.7597,-.00798324,-35971e-9,-227626e-11],[.7186,-.00851367,-701149e-10,-86303e-10],[.6732,-.00986209,-199569e-9,191974e-10],[.6213,-.010418,883923e-10,624051e-11],[.5722,-.00906601,182e-6,624051e-11],[.5322,-.00677797,275608e-9,624051e-11]],Ms=[[-520417e-23,.0124,121431e-23,-845284e-16],[.062,.0124,-126793e-14,422642e-15],[.124,.0124,507171e-14,-160604e-14],[.186,.0123999,-190189e-13,600152e-14],[.248,.0124002,710039e-13,-224e-10],[.31,.0123992,-264997e-12,835986e-13],[.372,.0124029,988983e-12,-311994e-12],[.434,.0123893,-369093e-11,-435621e-12],[.4958,.0123198,-102252e-10,-345523e-12],[.5571,.0121916,-154081e-10,-582288e-12],[.6176,.0119938,-241424e-10,-525327e-12],[.6769,.011713,-320223e-10,-516405e-12],[.7346,.0113541,-397684e-10,-609052e-12],[.7903,.0109107,-489042e-10,-104739e-11],[.8435,.0103431,-64615e-9,-140374e-14],[.8936,.00969686,-64636e-9,-8547e-9],[.9394,.00840947,-192841e-9,-42106e-10],[.9761,.00616527,-256e-6,-42106e-10],[1,.00328947,-319159e-9,-42106e-10]],al=.8487,rl=1.3523,ol=ui/5,Xf=1/ol,kn=18,Ba=function(t,n){return t[0]+n*(t[1]+n*(t[2]+n*t[3]))},Yf=function(t,n){return t[1]+n*(2*t[2]+n*3*t[3])};function Jf(t,n,a,l){for(var c=n;l;--l){var f=t(c);if(c-=f,Math.abs(f)<a)break}return c}function Qf(){this.x0=this.x0||0,this.y0=this.y0||0,this.long0=this.long0||0,this.es=0,this.title=this.title||"Robinson"}function t0(t){var n=_t(t.x-this.long0),a=Math.abs(t.y),l=Math.floor(a*ol);l<0?l=0:l>=kn&&(l=kn-1),a=ui*(a-Xf*l);var c={x:Ba(ao[l],a)*n,y:Ba(Ms[l],a)};return t.y<0&&(c.y=-c.y),c.x=c.x*this.a*al+this.x0,c.y=c.y*this.a*rl+this.y0,c}function e0(t){var n={x:(t.x-this.x0)/(this.a*al),y:Math.abs(t.y-this.y0)/(this.a*rl)};if(n.y>=1)n.x/=ao[kn][0],n.y=t.y<0?-ut:ut;else{var a=Math.floor(n.y*kn);for(a<0?a=0:a>=kn&&(a=kn-1);;)if(Ms[a][0]>n.y)--a;else if(Ms[a+1][0]<=n.y)++a;else break;var l=Ms[a],c=5*(n.y-l[0])/(Ms[a+1][0]-l[0]);c=Jf(function(f){return(Ba(l,f)-n.y)/Yf(l,f)},c,dt,100),n.x/=Ba(ao[a],c),n.y=(5*a+c)*ye,t.y<0&&(n.y=-n.y)}return n.x=_t(n.x+this.long0),n}var i0=["Robinson","robin"];const n0={init:Qf,forward:t0,inverse:e0,names:i0};function s0(){this.name="geocent"}function a0(t){var n=Gh(t,this.es,this.a);return n}function r0(t){var n=Fh(t,this.es,this.a,this.b);return n}var o0=["Geocentric","geocentric","geocent","Geocent"];const h0={init:s0,forward:a0,inverse:r0,names:o0};var Le={N_POLE:0,S_POLE:1,EQUIT:2,OBLIQ:3},xs={h:{def:1e5,num:!0},azi:{def:0,num:!0,degrees:!0},tilt:{def:0,num:!0,degrees:!0},long0:{def:0,num:!0},lat0:{def:0,num:!0}};function l0(){if(Object.keys(xs).forEach((function(a){if(typeof this[a]>"u")this[a]=xs[a].def;else{if(xs[a].num&&isNaN(this[a]))throw new Error("Invalid parameter value, must be numeric "+a+" = "+this[a]);xs[a].num&&(this[a]=parseFloat(this[a]))}xs[a].degrees&&(this[a]=this[a]*ye)}).bind(this)),Math.abs(Math.abs(this.lat0)-ut)<dt?this.mode=this.lat0<0?Le.S_POLE:Le.N_POLE:Math.abs(this.lat0)<dt?this.mode=Le.EQUIT:(this.mode=Le.OBLIQ,this.sinph0=Math.sin(this.lat0),this.cosph0=Math.cos(this.lat0)),this.pn1=this.h/this.a,this.pn1<=0||this.pn1>1e10)throw new Error("Invalid height");this.p=1+this.pn1,this.rp=1/this.p,this.h1=1/this.pn1,this.pfact=(this.p+1)*this.h1,this.es=0;var t=this.tilt,n=this.azi;this.cg=Math.cos(n),this.sg=Math.sin(n),this.cw=Math.cos(t),this.sw=Math.sin(t)}function u0(t){t.x-=this.long0;var n=Math.sin(t.y),a=Math.cos(t.y),l=Math.cos(t.x),c,f;switch(this.mode){case Le.OBLIQ:f=this.sinph0*n+this.cosph0*a*l;break;case Le.EQUIT:f=a*l;break;case Le.S_POLE:f=-n;break;case Le.N_POLE:f=n;break}switch(f=this.pn1/(this.p-f),c=f*a*Math.sin(t.x),this.mode){case Le.OBLIQ:f*=this.cosph0*n-this.sinph0*a*l;break;case Le.EQUIT:f*=n;break;case Le.N_POLE:f*=-(a*l);break;case Le.S_POLE:f*=a*l;break}var p,g;return p=f*this.cg+c*this.sg,g=1/(p*this.sw*this.h1+this.cw),c=(c*this.cg-f*this.sg)*this.cw*g,f=p*g,t.x=c*this.a,t.y=f*this.a,t}function c0(t){t.x/=this.a,t.y/=this.a;var n={x:t.x,y:t.y},a,l,c;c=1/(this.pn1-t.y*this.sw),a=this.pn1*t.x*c,l=this.pn1*t.y*this.cw*c,t.x=a*this.cg+l*this.sg,t.y=l*this.cg-a*this.sg;var f=ze(t.x,t.y);if(Math.abs(f)<dt)n.x=0,n.y=t.y;else{var p,g;switch(g=1-f*f*this.pfact,g=(this.p-Math.sqrt(g))/(this.pn1/f+f/this.pn1),p=Math.sqrt(1-g*g),this.mode){case Le.OBLIQ:n.y=Math.asin(p*this.sinph0+t.y*g*this.cosph0/f),t.y=(p-this.sinph0*Math.sin(n.y))*f,t.x*=g*this.cosph0;break;case Le.EQUIT:n.y=Math.asin(t.y*g/f),t.y=p*f,t.x*=g;break;case Le.N_POLE:n.y=Math.asin(p),t.y=-t.y;break;case Le.S_POLE:n.y=-Math.asin(p);break}n.x=Math.atan2(t.x,t.y)}return t.x=n.x+this.long0,t.y=n.y,t}var d0=["Tilted_Perspective","tpers"];const f0={init:l0,forward:u0,inverse:c0,names:d0};function p0(){if(this.flip_axis=this.sweep==="x"?1:0,this.h=Number(this.h),this.radius_g_1=this.h/this.a,this.radius_g_1<=0||this.radius_g_1>1e10)throw new Error;if(this.radius_g=1+this.radius_g_1,this.C=this.radius_g*this.radius_g-1,this.es!==0){var t=1-this.es,n=1/t;this.radius_p=Math.sqrt(t),this.radius_p2=t,this.radius_p_inv2=n,this.shape="ellipse"}else this.radius_p=1,this.radius_p2=1,this.radius_p_inv2=1,this.shape="sphere";this.title||(this.title="Geostationary Satellite View")}function _0(t){var n=t.x,a=t.y,l,c,f,p;if(n=n-this.long0,this.shape==="ellipse"){a=Math.atan(this.radius_p2*Math.tan(a));var g=this.radius_p/ze(this.radius_p*Math.cos(a),Math.sin(a));if(c=g*Math.cos(n)*Math.cos(a),f=g*Math.sin(n)*Math.cos(a),p=g*Math.sin(a),(this.radius_g-c)*c-f*f-p*p*this.radius_p_inv2<0)return t.x=Number.NaN,t.y=Number.NaN,t;l=this.radius_g-c,this.flip_axis?(t.x=this.radius_g_1*Math.atan(f/ze(p,l)),t.y=this.radius_g_1*Math.atan(p/l)):(t.x=this.radius_g_1*Math.atan(f/l),t.y=this.radius_g_1*Math.atan(p/ze(f,l)))}else this.shape==="sphere"&&(l=Math.cos(a),c=Math.cos(n)*l,f=Math.sin(n)*l,p=Math.sin(a),l=this.radius_g-c,this.flip_axis?(t.x=this.radius_g_1*Math.atan(f/ze(p,l)),t.y=this.radius_g_1*Math.atan(p/l)):(t.x=this.radius_g_1*Math.atan(f/l),t.y=this.radius_g_1*Math.atan(p/ze(f,l))));return t.x=t.x*this.a,t.y=t.y*this.a,t}function m0(t){var n=-1,a=0,l=0,c,f,p,g;if(t.x=t.x/this.a,t.y=t.y/this.a,this.shape==="ellipse"){this.flip_axis?(l=Math.tan(t.y/this.radius_g_1),a=Math.tan(t.x/this.radius_g_1)*ze(1,l)):(a=Math.tan(t.x/this.radius_g_1),l=Math.tan(t.y/this.radius_g_1)*ze(1,a));var A=l/this.radius_p;if(c=a*a+A*A+n*n,f=2*this.radius_g*n,p=f*f-4*c*this.C,p<0)return t.x=Number.NaN,t.y=Number.NaN,t;g=(-f-Math.sqrt(p))/(2*c),n=this.radius_g+g*n,a*=g,l*=g,t.x=Math.atan2(a,n),t.y=Math.atan(l*Math.cos(t.x)/n),t.y=Math.atan(this.radius_p_inv2*Math.tan(t.y))}else if(this.shape==="sphere"){if(this.flip_axis?(l=Math.tan(t.y/this.radius_g_1),a=Math.tan(t.x/this.radius_g_1)*Math.sqrt(1+l*l)):(a=Math.tan(t.x/this.radius_g_1),l=Math.tan(t.y/this.radius_g_1)*Math.sqrt(1+a*a)),c=a*a+l*l+n*n,f=2*this.radius_g*n,p=f*f-4*c*this.C,p<0)return t.x=Number.NaN,t.y=Number.NaN,t;g=(-f-Math.sqrt(p))/(2*c),n=this.radius_g+g*n,a*=g,l*=g,t.x=Math.atan2(a,n),t.y=Math.atan(l*Math.cos(t.x)/n)}return t.x=t.x+this.long0,t}var g0=["Geostationary Satellite View","Geostationary_Satellite","geos"];const y0={init:p0,forward:_0,inverse:m0,names:g0};var Ls=1.340264,bs=-.081106,ws=893e-6,Cs=.003796,Sa=Math.sqrt(3)/2;function v0(){this.es=0,this.long0=this.long0!==void 0?this.long0:0}function A0(t){var n=_t(t.x-this.long0),a=t.y,l=Math.asin(Sa*Math.sin(a)),c=l*l,f=c*c*c;return t.x=n*Math.cos(l)/(Sa*(Ls+3*bs*c+f*(7*ws+9*Cs*c))),t.y=l*(Ls+bs*c+f*(ws+Cs*c)),t.x=this.a*t.x+this.x0,t.y=this.a*t.y+this.y0,t}function M0(t){t.x=(t.x-this.x0)/this.a,t.y=(t.y-this.y0)/this.a;var n=1e-9,a=12,l=t.y,c,f,p,g,A,k;for(k=0;k<a&&(c=l*l,f=c*c*c,p=l*(Ls+bs*c+f*(ws+Cs*c))-t.y,g=Ls+3*bs*c+f*(7*ws+9*Cs*c),l-=A=p/g,!(Math.abs(A)<n));++k);return c=l*l,f=c*c*c,t.x=Sa*t.x*(Ls+3*bs*c+f*(7*ws+9*Cs*c))/Math.cos(l),t.y=Math.asin(Math.sin(l)/Sa),t.x=_t(t.x+this.long0),t}var x0=["eqearth","Equal Earth","Equal_Earth"];const L0={init:v0,forward:A0,inverse:M0,names:x0};var Es=1e-10;function b0(){var t;if(this.phi1=this.lat1,Math.abs(this.phi1)<Es)throw new Error;this.es?(this.en=Kr(this.es),this.m1=Cn(this.phi1,this.am1=Math.sin(this.phi1),t=Math.cos(this.phi1),this.en),this.am1=t/(Math.sqrt(1-this.es*this.am1*this.am1)*this.am1),this.inverse=C0,this.forward=w0):(Math.abs(this.phi1)+Es>=ut?this.cphi1=0:this.cphi1=1/Math.tan(this.phi1),this.inverse=P0,this.forward=E0)}function w0(t){var n=_t(t.x-(this.long0||0)),a=t.y,l,c,f;return l=this.am1+this.m1-Cn(a,c=Math.sin(a),f=Math.cos(a),this.en),c=f*n/(l*Math.sqrt(1-this.es*c*c)),t.x=l*Math.sin(c),t.y=this.am1-l*Math.cos(c),t.x=this.a*t.x+(this.x0||0),t.y=this.a*t.y+(this.y0||0),t}function C0(t){t.x=(t.x-(this.x0||0))/this.a,t.y=(t.y-(this.y0||0))/this.a;var n,a,l,c;if(a=ze(t.x,t.y=this.am1-t.y),c=Xr(this.am1+this.m1-a,this.es,this.en),(n=Math.abs(c))<ut)n=Math.sin(c),l=a*Math.atan2(t.x,t.y)*Math.sqrt(1-this.es*n*n)/Math.cos(c);else if(Math.abs(n-ut)<=Es)l=0;else throw new Error;return t.x=_t(l+(this.long0||0)),t.y=Ii(c),t}function E0(t){var n=_t(t.x-(this.long0||0)),a=t.y,l,c;return c=this.cphi1+this.phi1-a,Math.abs(c)>Es?(t.x=c*Math.sin(l=n*Math.cos(a)/c),t.y=this.cphi1-c*Math.cos(l)):t.x=t.y=0,t.x=this.a*t.x+(this.x0||0),t.y=this.a*t.y+(this.y0||0),t}function P0(t){t.x=(t.x-(this.x0||0))/this.a,t.y=(t.y-(this.y0||0))/this.a;var n,a,l=ze(t.x,t.y=this.cphi1-t.y);if(a=this.cphi1+this.phi1-l,Math.abs(a)>ut)throw new Error;return Math.abs(Math.abs(a)-ut)<=Es?n=0:n=l*Math.atan2(t.x,t.y)/Math.cos(a),t.x=_t(n+(this.long0||0)),t.y=Ii(a),t}var k0=["bonne","Bonne (Werner lat_1=90)"];const B0={init:b0,names:k0};function S0(t){t.Proj.projections.add(wa),t.Proj.projections.add(Ca),t.Proj.projections.add(Pc),t.Proj.projections.add(Gc),t.Proj.projections.add(Zc),t.Proj.projections.add($c),t.Proj.projections.add(Qc),t.Proj.projections.add(sd),t.Proj.projections.add(ld),t.Proj.projections.add(pd),t.Proj.projections.add(Ed),t.Proj.projections.add(Dd),t.Proj.projections.add(Fd),t.Proj.projections.add(qd),t.Proj.projections.add(Kd),t.Proj.projections.add(tf),t.Proj.projections.add(rf),t.Proj.projections.add(cf),t.Proj.projections.add(gf),t.Proj.projections.add(xf),t.Proj.projections.add(Ef),t.Proj.projections.add(Tf),t.Proj.projections.add(zf),t.Proj.projections.add(qf),t.Proj.projections.add(Kf),t.Proj.projections.add(n0),t.Proj.projections.add(h0),t.Proj.projections.add(f0),t.Proj.projections.add(y0),t.Proj.projections.add(L0),t.Proj.projections.add(B0)}const hl=Object.assign(Hu,{defaultDatum:"WGS84",Proj:ni,WGS84:new ni("WGS84"),Point:wn,toPoint:Zh,defs:Se,nadgrid:Eu,transform:La,mgrs:Vu,version:"__VERSION__"});S0(hl);const T0=Dl(Object.freeze(Object.defineProperty({__proto__:null,default:hl},Symbol.toStringTag,{value:"Module"})));(function(t){(function(n){var a,l;a=gh(),l=T0,t.exports=n(a,l)})(function(n,a){return a.__esModule&&a.default&&(a=a.default),n.Proj={},n.Proj._isProj4Obj=function(l){return typeof l.inverse<"u"&&typeof l.forward<"u"},n.Proj.Projection=n.Class.extend({initialize:function(l,c,f){var p=n.Proj._isProj4Obj(l);this._proj=p?l:this._projFromCodeDef(l,c),this.bounds=p?c:f},project:function(l){var c=this._proj.forward([l.lng,l.lat]);return new n.Point(c[0],c[1])},unproject:function(l,c){var f=this._proj.inverse([l.x,l.y]);return new n.LatLng(f[1],f[0],c)},_projFromCodeDef:function(l,c){if(c)a.defs(l,c);else if(a.defs[l]===void 0){var f=l.split(":");if(f.length>3&&(l=f[f.length-3]+":"+f[f.length-1]),a.defs[l]===void 0)throw"No projection definition for code "+l}return a(l)}}),n.Proj.CRS=n.Class.extend({includes:n.CRS,options:{transformation:new n.Transformation(1,0,-1,0)},initialize:function(l,c,f){var p,g,A,k;if(n.Proj._isProj4Obj(l)?(g=l,p=g.srsCode,k=c||{},this.projection=new n.Proj.Projection(g,k.bounds)):(p=l,A=c,k=f||{},this.projection=new n.Proj.Projection(p,A,k.bounds)),n.Util.setOptions(this,k),this.code=p,this.transformation=this.options.transformation,this.options.origin&&(this.transformation=new n.Transformation(1,-this.options.origin[0],-1,this.options.origin[1])),this.options.scales)this._scales=this.options.scales;else if(this.options.resolutions){this._scales=[];for(var C=this.options.resolutions.length-1;C>=0;C--)this.options.resolutions[C]&&(this._scales[C]=1/this.options.resolutions[C])}this.infinite=!this.options.bounds},scale:function(l){var c=Math.floor(l),f,p,g,A;return l===c?this._scales[l]:(f=this._scales[c],p=this._scales[c+1],g=p-f,A=l-c,f+g*A)},zoom:function(l){var c=this._closestElement(this._scales,l),f=this._scales.indexOf(c),p,g,A;return l===c?f:c===void 0?-1/0:(g=f+1,p=this._scales[g],p===void 0?1/0:(A=p-c,(l-c)/A+f))},distance:n.CRS.Earth.distance,R:n.CRS.Earth.R,_closestElement:function(l,c){for(var f,p=l.length;p--;)l[p]<=c&&(f===void 0||f<l[p])&&(f=l[p]);return f}}),n.Proj.GeoJSON=n.GeoJSON.extend({initialize:function(l,c){this._callLevel=0,n.GeoJSON.prototype.initialize.call(this,l,c)},addData:function(l){var c;l&&(l.crs&&l.crs.type==="name"?c=new n.Proj.CRS(l.crs.properties.name):l.crs&&l.crs.type&&(c=new n.Proj.CRS(l.crs.type+":"+l.crs.properties.code)),c!==void 0&&(this.options.coordsToLatLng=function(f){var p=n.point(f[0],f[1]);return c.projection.unproject(p)})),this._callLevel++;try{n.GeoJSON.prototype.addData.call(this,l)}finally{this._callLevel--,this._callLevel===0&&delete this.options.coordsToLatLng}}}),n.Proj.geoJson=function(l,c){return new n.Proj.GeoJSON(l,c)},n.Proj.ImageOverlay=n.ImageOverlay.extend({initialize:function(l,c,f){n.ImageOverlay.prototype.initialize.call(this,l,null,f),this._projectedBounds=c},_animateZoom:function(l){var c=this._map.getZoomScale(l.zoom),f=n.point(this._projectedBounds.min.x,this._projectedBounds.max.y),p=this._projectedToNewLayerPoint(f,l.zoom,l.center);n.DomUtil.setTransform(this._image,p,c)},_reset:function(){var l=this._map.getZoom(),c=this._map.getPixelOrigin(),f=n.bounds(this._transform(this._projectedBounds.min,l)._subtract(c),this._transform(this._projectedBounds.max,l)._subtract(c)),p=f.getSize();n.DomUtil.setPosition(this._image,f.min),this._image.style.width=p.x+"px",this._image.style.height=p.y+"px"},_projectedToNewLayerPoint:function(l,c,f){var p=this._map.getSize()._divideBy(2),g=this._map.project(f,c)._subtract(p)._round(),A=g.add(this._map._getMapPanePos());return this._transform(l,c)._subtract(A)},_transform:function(l,c){var f=this._map.options.crs,p=f.transformation,g=f.scale(c);return p.transform(l,g)}}),n.Proj.imageOverlay=function(l,c,f){return new n.Proj.ImageOverlay(l,c,f)},n.Proj})})(Rl);const ro=new U.Proj.CRS("EPSG:900913","+proj=merc +a=6378206 +b=6356584.314245179 +lat_ts=0.0 +lon_0=0.0 +x_0=0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs",{resolutions:function(){var t=[];t[0]=Math.pow(2,18);for(var n=1;n<21;n++)t[n]=Math.pow(2,18-n);return t}(),origin:[0,0],bounds:U.bounds([20037508342789244e-9,0],[0,20037508342789244e-9])}),ll=U.Marker.extend({options:{fontSize:"12px",color:"#f00",fontShadowColor:"none",fontWeight:"normal",background:"rgba(0, 0, 0, 0)",minZoom:void 0,maxZoom:void 0,clsName:"leaflet-text",offset:[6,6]},initialize(t,n,a={}){this._latlng=t,this._enabled=!1,this.options.id=a.id||"text_"+$t.Util.guid(),this.options.text=n||"",a=Object.assign(this.options,a),U.setOptions(this,a);const{id:l,fontSize:c,color:f,fontWeight:p,background:g,fontShadowColor:A,clsName:k,offset:C}=this.options;this.options.icon=new U.DivIcon({html:`<span id=${l} class="leaflet-text-label" style="font-weight:${p};font-size:${c};color:${f};background:${g};text-shadow:${A} 1px 0px 2px">${n||""}</span>`,className:k,iconAnchor:C}),U.Marker.prototype.initialize.call(this,t,this.options)},setStyle(t){const n=document.getElementById(this.options.id),{text:a,color:l,fontSize:c,fontShadowColor:f,fontWeight:p}=t,g=t.background||"none";return n&&(l&&(this.options.color=l,n.style.color=l),p&&(this.options.fontWeight=p,n.style.fontWeight=p),c&&(this.options.fontSize=c,n.style.fontSize=c),this.options.background=g,n.style.background=g,a&&(this.options.text=a,n.textContent=a),f?(this.options.fontShadowColor=f,n.style["text-shadow"]=f+" 1px 0px 2px"):(this.options.fontShadowColor="none",n.style["text-shadow"]="none")),this},enableEdit(t){const{fontSize:n,color:a,text:l}=this.options;if(!this._enabled){this._enabled=!0;const c=new U.DivIcon({html:`<input type="text" id="text-input-icon" style="font-size:${n};color:${a};" value=${l}></input>`,className:"leaflet-text"});return this.setIcon(c),document.getElementById("text-input-icon").onblur=f=>{this.options.text=f.target.value,setTimeout(()=>{this.disableEdit(),t&&t(this)},100)},document.getElementById("text-input-icon").onkeydown=function(f){f.keyCode===13&&(this.options.text=f.target.value,this.blur(f))},this}},disableEdit(t){if(this._enabled){this._enabled=!1;const{id:n,color:a,fontSize:l,fontWeight:c,fontShadowColor:f}=this.options,p=new U.DivIcon({html:`<span id=${n} style="padding:2px 4px;white-space:nowrap;font-weight:${c};font-size:${l};color:${a};text-shadow:${f} 1px 2px 3px">${this.options.text}</span>`,className:"leaflet-text"});return this.setIcon(p),t&&t(this),this}}}),ul=U.Marker.extend({options:{color:"#f00",diveColor:"#f00",iconSize:[14,14],level:0,speedTime:2,animation:!0},initialize(t,n){U.setOptions(this,n);const{clsPrefix:a}=this.options;this.tempDivEle=document.createElement("div"),this.spanEl=$t.DomUtil.create("span",`${a}-pulse-icon`),this.aEl=$t.DomUtil.create("a",`${a}-dive-icon`),this.tempDivEle.append(this.spanEl),this.spanEl.append(this.aEl),this._init(),U.Marker.prototype.initialize.call(this,t,this.options)},_init(){const{color:t,iconSize:n,diveColor:a,level:l,speedTime:c,animation:f,clsPrefix:p}=this.options;t&&(this.spanEl.style.backgroundColor=t,a||(this.aEl.style.boxShadow="0 0 6px 2px "+t)),n&&(this.spanEl.style.width=n[0]+"px",this.spanEl.style.height=n[1]+"px"),f&&c?(this.aEl.style.setProperty("animation","pulsate "+c+"s infinite"),l?a?this.aEl.style.boxShadow="0 0 "+l*3+"px "+l+"px "+a:t&&(this.aEl.style.boxShadow="0 0 "+l*3+"px "+l+"px "+t):a&&(l?this.aEl.style.boxShadow="0 0 "+l*3+"px "+l+"px "+a:this.aEl.style.boxShadow="0 0 6px 2px "+a)):(this.aEl.style.removeProperty("animation"),this.aEl.style.removeProperty("box-shadow"));const g=L.divIcon({iconSize:n,iconAnchor:n.map(A=>A/2),className:`${p}-blink-marker`,html:this.tempDivEle.innerHTML});this.options.icon?this.setIcon(g):this.options.icon=g},setOptions(t){U.setOptions(this,t),this._init()},start(t){U.setOptions(this,t),this.options.animation=!0,this._init()},stop(t){U.setOptions(this,t),this.options.animation=!1,this._init()}}),cl=U.Layer.extend({initialize:function(t){L.setOptions(this,t),this._onClickListeners=[],this._onHoverListeners=[]},setOptions:function(t){return L.setOptions(this,t),this.redraw()},redraw:function(){this._redraw(!0)},addMarkers:function(t){var n=this,a=[],l=[];t.forEach(function(c){if(!(c.options.pane=="markerPane"&&c.options.icon)){console.error("Layer isn't a marker");return}var f=c.getLatLng(),p=n._map.getBounds().contains(f),g=n._addMarker(c,f,p);p===!0&&a.push(g[0]),l.push(g[1])}),n._markers.load(a),n._latlngMarkers.load(l)},addMarker:function(t){var n=this,a=t.getLatLng(),l=n._map.getBounds().contains(a),c=n._addMarker(t,a,l);l===!0&&n._markers.insert(c[0]),n._latlngMarkers.insert(c[1])},addLayer:function(t){t.options.pane=="markerPane"&&t.options.icon?this.addMarker(t):console.error("Layer isn't a marker")},addLayers:function(t){this.addMarkers(t)},removeLayer:function(t){this.removeMarker(t,!0)},removeMarker:function(t,n){var a=this;t.minX&&(t=t.data);var l=t.getLatLng(),c=a._map.getBounds().contains(l),f={minX:l.lng,minY:l.lat,maxX:l.lng,maxY:l.lat,data:t};a._latlngMarkers.remove(f,function(p,g){return p.data._leaflet_id===g.data._leaflet_id}),a._latlngMarkers.total--,a._latlngMarkers.dirty++,c===!0&&n===!0&&a._redraw(!0)},onAdd:function(t){this._map=t,this._canvas||this._initCanvas(),this.options.pane?this.getPane().appendChild(this._canvas):t._panes.overlayPane.appendChild(this._canvas),t.on("moveend",this._reset,this),t.on("resize",this._reset,this),t.on("click",this._executeListeners,this),t.on("mousemove",this._executeListeners,this)},onRemove:function(t){this.options.pane?this.getPane().removeChild(this._canvas):t.getPanes().overlayPane.removeChild(this._canvas),t.off("click",this._executeListeners,this),t.off("mousemove",this._executeListeners,this),t.off("moveend",this._reset,this),t.off("resize",this._reset,this)},addTo:function(t){return t.addLayer(this),this},clearLayers:function(){this._latlngMarkers=null,this._markers=null,this._redraw(!0)},_addMarker:function(t,n,a){var l=this;t._map=l._map,l._markers||(l._markers=new rbush),l._latlngMarkers||(l._latlngMarkers=new rbush,l._latlngMarkers.dirty=0,l._latlngMarkers.total=0),L.Util.stamp(t);var c=l._map.latLngToContainerPoint(n),f=t.options.icon.options.iconSize,p=f[0]/2,g=f[1]/2,A=[{minX:c.x-p,minY:c.y-g,maxX:c.x+p,maxY:c.y+g,data:t},{minX:n.lng,minY:n.lat,maxX:n.lng,maxY:n.lat,data:t}];return l._latlngMarkers.dirty++,l._latlngMarkers.total++,a===!0&&l._drawMarker(t,c),A},_drawMarker:function(t,n){var a=this;this._imageLookup||(this._imageLookup={}),n||(n=a._map.latLngToContainerPoint(t.getLatLng()));var l=t.options.icon.options.iconUrl;if(t.canvas_img)a._drawImage(t,n);else if(a._imageLookup[l])t.canvas_img=a._imageLookup[l][0],a._imageLookup[l][1]===!1?a._imageLookup[l][2].push([t,n]):a._drawImage(t,n);else{var c=new Image;c.src=l,t.canvas_img=c,a._imageLookup[l]=[c,!1,[[t,n]]],c.onload=function(){a._imageLookup[l][1]=!0,a._imageLookup[l][2].forEach(function(f){a._drawImage(f[0],f[1])})}}},_drawImage:function(t,n){var a=t.options.icon.options;this._context.drawImage(t.canvas_img,n.x-a.iconAnchor[0],n.y-a.iconAnchor[1],a.iconSize[0],a.iconSize[1])},_reset:function(){var t=this._map.containerPointToLayerPoint([0,0]);L.DomUtil.setPosition(this._canvas,t);var n=this._map.getSize();this._canvas.width=n.x,this._canvas.height=n.y,this._redraw()},_redraw:function(t){var n=this;if(t&&this._context.clearRect(0,0,this._canvas.width,this._canvas.height),!(!this._map||!this._latlngMarkers)){var a=[];n._latlngMarkers.dirty/n._latlngMarkers.total>=.1&&(n._latlngMarkers.all().forEach(function(f){a.push(f)}),n._latlngMarkers.clear(),n._latlngMarkers.load(a),n._latlngMarkers.dirty=0,a=[]);var l=n._map.getBounds(),c={minX:l.getWest(),minY:l.getSouth(),maxX:l.getEast(),maxY:l.getNorth()};n._latlngMarkers.search(c).forEach(function(f){var p=n._map.latLngToContainerPoint(f.data.getLatLng()),g=f.data.options.icon.options.iconSize,A=g[0]/2,k=g[1]/2,C={minX:p.x-A,minY:p.y-k,maxX:p.x+A,maxY:p.y+k,data:f.data};a.push(C),n._drawMarker(f.data,p)}),this._markers.clear(),this._markers.load(a)}},_initCanvas:function(){this._canvas=L.DomUtil.create("canvas","leaflet-canvas-icon-layer leaflet-layer");var t=L.DomUtil.testProp(["transformOrigin","WebkitTransformOrigin","msTransformOrigin"]);this._canvas.style[t]="50% 50%";var n=this._map.getSize();this._canvas.width=n.x,this._canvas.height=n.y,this._context=this._canvas.getContext("2d");var a=this._map.options.zoomAnimation&&L.Browser.any3d;L.DomUtil.addClass(this._canvas,"leaflet-zoom-"+(a?"animated":"hide"))},addOnClickListener:function(t){this._onClickListeners.push(t)},addOnHoverListener:function(t){this._onHoverListeners.push(t)},_executeListeners:function(t){if(this._markers){var n=this,a=t.containerPoint.x,l=t.containerPoint.y;n._openToolTip&&(n._openToolTip.closeTooltip(),delete n._openToolTip);var c=this._markers.search({minX:a,minY:l,maxX:a,maxY:l});if(c&&c.length>0){if(n._map._container.style.cursor="pointer",t.type==="click"){var f=c[0].data.getPopup();f&&c[0].data.openPopup(),n._onClickListeners.forEach(function(g){g(t,c)})}if(t.type==="mousemove"){var p=c[0].data.getTooltip();p&&(n._openToolTip=c[0].data,c[0].data.openTooltip()),n._onHoverListeners.forEach(function(g){g(t,c)})}}else n._map._container.style.cursor=""}}});function D0(t,n,a,l,c){dl(t,n,a||0,l||t.length-1,c||O0)}function dl(t,n,a,l,c){for(;l>a;){if(l-a>600){var f=l-a+1,p=n-a+1,g=Math.log(f),A=.5*Math.exp(2*g/3),k=.5*Math.sqrt(g*A*(f-A)/f)*(p-f/2<0?-1:1),C=Math.max(a,Math.floor(n-p*A/f+k)),x=Math.min(l,Math.floor(n+(f-p)*A/f+k));dl(t,n,C,x,c)}var b=t[n],T=a,G=l;for(Ps(t,a,n),c(t[l],b)>0&&Ps(t,a,l);T<G;){for(Ps(t,T,G),T++,G--;c(t[T],b)<0;)T++;for(;c(t[G],b)>0;)G--}c(t[a],b)===0?Ps(t,a,G):(G++,Ps(t,G,l)),G<=n&&(a=G+1),n<=G&&(l=G-1)}}function Ps(t,n,a){var l=t[n];t[n]=t[a],t[a]=l}function O0(t,n){return t<n?-1:t>n?1:0}class fl{constructor(n=9){this._maxEntries=Math.max(4,n),this._minEntries=Math.max(2,Math.ceil(this._maxEntries*.4)),this.clear()}all(){return this._all(this.data,[])}search(n){let a=this.data;const l=[];if(!Da(n,a))return l;const c=this.toBBox,f=[];for(;a;){for(let p=0;p<a.children.length;p++){const g=a.children[p],A=a.leaf?c(g):g;Da(n,A)&&(a.leaf?l.push(g):ho(n,A)?this._all(g,l):f.push(g))}a=f.pop()}return l}collides(n){let a=this.data;if(!Da(n,a))return!1;const l=[];for(;a;){for(let c=0;c<a.children.length;c++){const f=a.children[c],p=a.leaf?this.toBBox(f):f;if(Da(n,p)){if(a.leaf||ho(n,p))return!0;l.push(f)}}a=l.pop()}return!1}load(n){if(!(n&&n.length))return this;if(n.length<this._minEntries){for(let l=0;l<n.length;l++)this.insert(n[l]);return this}let a=this._build(n.slice(),0,n.length-1,0);if(!this.data.children.length)this.data=a;else if(this.data.height===a.height)this._splitRoot(this.data,a);else{if(this.data.height<a.height){const l=this.data;this.data=a,a=l}this._insert(a,this.data.height-a.height-1,!0)}return this}insert(n){return n&&this._insert(n,this.data.height-1),this}clear(){return this.data=Sn([]),this}remove(n,a){if(!n)return this;let l=this.data;const c=this.toBBox(n),f=[],p=[];let g,A,k;for(;l||f.length;){if(l||(l=f.pop(),A=f[f.length-1],g=p.pop(),k=!0),l.leaf){const C=I0(n,l.children,a);if(C!==-1)return l.children.splice(C,1),f.push(l),this._condense(f),this}!k&&!l.leaf&&ho(l,c)?(f.push(l),p.push(g),g=0,A=l,l=l.children[0]):A?(g++,l=A.children[g],k=!1):l=null}return this}toBBox(n){return n}compareMinX(n,a){return n.minX-a.minX}compareMinY(n,a){return n.minY-a.minY}toJSON(){return this.data}fromJSON(n){return this.data=n,this}_all(n,a){const l=[];for(;n;)n.leaf?a.push(...n.children):l.push(...n.children),n=l.pop();return a}_build(n,a,l,c){const f=l-a+1;let p=this._maxEntries,g;if(f<=p)return g=Sn(n.slice(a,l+1)),Bn(g,this.toBBox),g;c||(c=Math.ceil(Math.log(f)/Math.log(p)),p=Math.ceil(f/Math.pow(p,c-1))),g=Sn([]),g.leaf=!1,g.height=c;const A=Math.ceil(f/p),k=A*Math.ceil(Math.sqrt(p));pl(n,a,l,k,this.compareMinX);for(let C=a;C<=l;C+=k){const x=Math.min(C+k-1,l);pl(n,C,x,A,this.compareMinY);for(let b=C;b<=x;b+=A){const T=Math.min(b+A-1,x);g.children.push(this._build(n,b,T,c-1))}}return Bn(g,this.toBBox),g}_chooseSubtree(n,a,l,c){for(;c.push(a),!(a.leaf||c.length-1===l);){let f=1/0,p=1/0,g;for(let A=0;A<a.children.length;A++){const k=a.children[A],C=oo(k),x=F0(n,k)-C;x<p?(p=x,f=C<f?C:f,g=k):x===p&&C<f&&(f=C,g=k)}a=g||a.children[0]}return a}_insert(n,a,l){const c=l?n:this.toBBox(n),f=[],p=this._chooseSubtree(c,this.data,a,f);for(p.children.push(n),Bs(p,c);a>=0&&f[a].children.length>this._maxEntries;)this._split(f,a),a--;this._adjustParentBBoxes(c,f,a)}_split(n,a){const l=n[a],c=l.children.length,f=this._minEntries;this._chooseSplitAxis(l,f,c);const p=this._chooseSplitIndex(l,f,c),g=Sn(l.children.splice(p,l.children.length-p));g.height=l.height,g.leaf=l.leaf,Bn(l,this.toBBox),Bn(g,this.toBBox),a?n[a-1].children.push(g):this._splitRoot(l,g)}_splitRoot(n,a){this.data=Sn([n,a]),this.data.height=n.height+1,this.data.leaf=!1,Bn(this.data,this.toBBox)}_chooseSplitIndex(n,a,l){let c,f=1/0,p=1/0;for(let g=a;g<=l-a;g++){const A=ks(n,0,g,this.toBBox),k=ks(n,g,l,this.toBBox),C=z0(A,k),x=oo(A)+oo(k);C<f?(f=C,c=g,p=x<p?x:p):C===f&&x<p&&(p=x,c=g)}return c||l-a}_chooseSplitAxis(n,a,l){const c=n.leaf?this.compareMinX:R0,f=n.leaf?this.compareMinY:G0,p=this._allDistMargin(n,a,l,c),g=this._allDistMargin(n,a,l,f);p<g&&n.children.sort(c)}_allDistMargin(n,a,l,c){n.children.sort(c);const f=this.toBBox,p=ks(n,0,a,f),g=ks(n,l-a,l,f);let A=Ta(p)+Ta(g);for(let k=a;k<l-a;k++){const C=n.children[k];Bs(p,n.leaf?f(C):C),A+=Ta(p)}for(let k=l-a-1;k>=a;k--){const C=n.children[k];Bs(g,n.leaf?f(C):C),A+=Ta(g)}return A}_adjustParentBBoxes(n,a,l){for(let c=l;c>=0;c--)Bs(a[c],n)}_condense(n){for(let a=n.length-1,l;a>=0;a--)n[a].children.length===0?a>0?(l=n[a-1].children,l.splice(l.indexOf(n[a]),1)):this.clear():Bn(n[a],this.toBBox)}}function I0(t,n,a){if(!a)return n.indexOf(t);for(let l=0;l<n.length;l++)if(a(t,n[l]))return l;return-1}function Bn(t,n){ks(t,0,t.children.length,n,t)}function ks(t,n,a,l,c){c||(c=Sn(null)),c.minX=1/0,c.minY=1/0,c.maxX=-1/0,c.maxY=-1/0;for(let f=n;f<a;f++){const p=t.children[f];Bs(c,t.leaf?l(p):p)}return c}function Bs(t,n){return t.minX=Math.min(t.minX,n.minX),t.minY=Math.min(t.minY,n.minY),t.maxX=Math.max(t.maxX,n.maxX),t.maxY=Math.max(t.maxY,n.maxY),t}function R0(t,n){return t.minX-n.minX}function G0(t,n){return t.minY-n.minY}function oo(t){return(t.maxX-t.minX)*(t.maxY-t.minY)}function Ta(t){return t.maxX-t.minX+(t.maxY-t.minY)}function F0(t,n){return(Math.max(n.maxX,t.maxX)-Math.min(n.minX,t.minX))*(Math.max(n.maxY,t.maxY)-Math.min(n.minY,t.minY))}function z0(t,n){const a=Math.max(t.minX,n.minX),l=Math.max(t.minY,n.minY),c=Math.min(t.maxX,n.maxX),f=Math.min(t.maxY,n.maxY);return Math.max(0,c-a)*Math.max(0,f-l)}function ho(t,n){return t.minX<=n.minX&&t.minY<=n.minY&&n.maxX<=t.maxX&&n.maxY<=t.maxY}function Da(t,n){return n.minX<=t.maxX&&n.minY<=t.maxY&&n.maxX>=t.minX&&n.maxY>=t.minY}function Sn(t){return{children:t,height:1,leaf:!0,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}}function pl(t,n,a,l,c){const f=[n,a];for(;f.length;){if(a=f.pop(),n=f.pop(),a-n<=l)continue;const p=n+Math.ceil((a-n)/l/2)*l;D0(t,p,n,a,c),f.push(n,p,p,a)}}var _l=!("getComputedStyle"in window&&typeof window.getComputedStyle=="function");function lo(t){return{initialize:function(n){t.prototype.initialize.call(this,n),this._originalLayers=[],this._visibleLayers=[],this._staticLayers=[],this._rbush=[],this._cachedRelativeBoxes=[],this._margin=n.margin||0,this._rbush=null},addLayer:function(n){if(!("options"in n)||!("icon"in n.options)){this._staticLayers.push(n),t.prototype.addLayer.call(this,n);return}this._originalLayers.push(n),this._map&&this._maybeAddLayerToRBush(n)},removeLayer:function(n){this._rbush.remove(this._cachedRelativeBoxes[n._leaflet_id]),delete this._cachedRelativeBoxes[n._leaflet_id],t.prototype.removeLayer.call(this,n);var a;a=this._originalLayers.indexOf(n),a!==-1&&this._originalLayers.splice(a,1),a=this._visibleLayers.indexOf(n),a!==-1&&this._visibleLayers.splice(a,1),a=this._staticLayers.indexOf(n),a!==-1&&this._staticLayers.splice(a,1)},clearLayers:function(){this._rbush=fl(),this._originalLayers=[],this._visibleLayers=[],this._staticLayers=[],this._cachedRelativeBoxes=[],t.prototype.clearLayers.call(this)},onAdd:function(n){this._map=n;for(let a=0,l=this._staticLayers.length;a<l;a++)n.addLayer(this._staticLayers[a]);this._onZoomEnd(),n.on("zoomend",this._onZoomEnd,this)},onRemove:function(n){for(let a=0,l=this._staticLayers.length;a<l;a++)n.removeLayer(this._staticLayers[a]);n.off("zoomend",this._onZoomEnd,this),t.prototype.onRemove.call(this,n)},_maybeAddLayerToRBush:function(n){this._map.getZoom();var a=this._rbush,l=this._cachedRelativeBoxes[n._leaflet_id],c=!1;if(!l){t.prototype.addLayer.call(this,n);var c=!0,f=this._getIconBox(n._icon);l=this._getRelativeBoxes(n._icon.children,f),l.push(f),this._cachedRelativeBoxes[n._leaflet_id]=l}l=this._positionBoxes(this._map.latLngToLayerPoint(n.getLatLng()),l);for(var p=!1,g=0;g<l.length&&!p;g++)p=a.search(l[g]).length>0;p?t.prototype.removeLayer.call(this,n):(c||t.prototype.addLayer.call(this,n),this._visibleLayers.push(n),a.load(l))},_getIconBox:function(n){if(_l)return[0,0,n.offsetWidth,n.offsetHeight];var a=window.getComputedStyle(n);return[parseInt(a.marginLeft),parseInt(a.marginTop),parseInt(a.marginLeft)+parseInt(a.width),parseInt(a.marginTop)+parseInt(a.height)]},_getRelativeBoxes:function(n,a){for(var l=[],c=0;c<n.length;c++){var f=n[c],p=[f.offsetLeft,f.offsetTop,f.offsetLeft+f.offsetWidth,f.offsetTop+f.offsetHeight];if(p=this._offsetBoxes(p,a),l.push(p),f.children.length){var g=a;if(!_l){var A=window.getComputedStyle(f).position;(A==="absolute"||A==="relative")&&(g=p)}l=l.concat(this._getRelativeBoxes(f.children,g))}}return l},_offsetBoxes:function(n,a){return[n[0]+a[0],n[1]+a[1],n[2]+a[0],n[3]+a[1]]},_positionBoxes:function(n,a){for(var l=[],c=0;c<a.length;c++)l.push(this._positionBox(n,a[c]));return l},_positionBox:function(n,a){return[a[0]+n.x-this._margin,a[1]+n.y-this._margin,a[2]+n.x+this._margin,a[3]+n.y+this._margin]},_onZoomEnd:function(){for(var n=0;n<this._visibleLayers.length;n++)t.prototype.removeLayer.call(this,this._visibleLayers[n]);this._rbush=fl();for(var n=0;n<this._originalLayers.length;n++)this._maybeAddLayerToRBush(this._originalLayers[n])}}}const N0={LayerGroup:U.LayerGroup.extend(lo(U.LayerGroup)),FeatureGroup:U.FeatureGroup.extend(lo(U.FeatureGroup)),GeoJSON:U.GeoJSON.extend(lo(U.GeoJSON))},U0=U.Layer.extend({provide:{TDT:"tdt",BAIDU:"bd",GAODE:"gd",YANDEX:"yandex"},source:{VECTOR:"vec",SATELITE:"img",ANNO:"cia",VEC_NO_ANNO:"vec_no_anno",SATELITE_NO_ANNO:"img_no_anno"},style:{NORMAL:"normal",GRAY:"gray",DARK:"dark",BROWN:"brown",BLUR:"blur"},options:{provide:"tdt",source:"img",style:"normal",accessToken:"016b31f15f25e1365e85aec7e7b0464e"},initialize(t){t=$t.Util.deleteEmptyProperty(t),U.Util.setOptions(this,t)},onAdd(t){this.map=t,this.replaceProjection(),this.tileLayers=this.getLayerGroup(),t.addLayer(this.tileLayers)},onRemove(t){t.removeLayer(this.tileLayers)},replaceProjection(){const t=this.map.getCenter(),n=this.map.getZoom();this.options.provide===this.provide.BAIDU?this.map.options.crs=ro:this.options.provide===this.provide.YANDEX?this.map.options.crs=U.CRS.EPSG3395:this.map.options.crs=U.CRS.EPSG3857,this._resetMapStatus(t,n)},_resetMapStatus(t,n){this.map.setView(t),this.map._resetView(t,n,!0)},getLayerGroup(){let t={},n={};switch(this.options.style&&this.options.style.split(",").forEach(a=>{switch(a){case this.style.DARK:t.invert=1;break;case this.style.GRAY:t.grayscale=1;break;case this.style.BROWN:t.sepia=1;break;case this.style.BLUR:t.blur="1px";break}}),this.options.provide){case this.provide.TDT:n={subdomains:$t.ArrayUtil.create(8),maxNativeZoom:18,minZoom:0,maxZoom:this.map.getMaxZoom()};break;case this.provide.BAIDU:n={subdomains:$t.ArrayUtil.create(10),tms:!0,corrdType:"bd09",maxNativeZoom:19,minZoom:0,maxZoom:this.map.getMaxZoom()};break;case this.provide.GAODE:n={subdomains:$t.ArrayUtil.create(4).map(a=>a+1),corrdType:"gcj02",maxNativeZoom:18,minZoom:0,maxZoom:this.map.getMaxZoom()};break;case this.provide.YANDEX:n={maxNativeZoom:18,minZoom:0,maxZoom:this.map.getMaxZoom()};break}if(this.options.opacity>=0&&(t.opacity=this.options.opacity),this.options.url)return new U.TileLayer(this.options.url,{...n,style:t});switch(this.options.provide){case this.provide.TDT:let a;switch(n.maxNativeZoom=18,this.options.source){case this.source.VECTOR:a=["vec_w","cva_w"];break;case this.source.SATELITE:a=["img_w","cia_w"];break;case this.source.ANNO:a=["cva_w"];break;case this.source.VEC_NO_ANNO:a=["vec_w"];break;case this.source.SATELITE_NO_ANNO:a=["img_w"];break}return new U.LayerGroup(a.map(l=>new U.TileLayer(`http://t{s}.tianditu.gov.cn/DataServer?T=${l}&x={x}&y={y}&l={z}&tk=${this.options.accessToken}`,{...n,style:t})));case this.provide.BAIDU:switch(this.options.source){case this.source.VECTOR:return n.maxNativeZoom=19,new U.TileLayer("http://online{s}.map.bdimg.com/onlinelabel/?qt=tile&x={x}&y={y}&z={z}&styles=pl&scaler=1&p=1",{...n,style:t});case this.source.ANNO:return n.maxNativeZoom=19,new U.TileLayer("http://online{s}.map.bdimg.com/tile/?qt=tile&x={x}&y={y}&z={z}&styles=sl",{...n,style:t});case this.source.SATELITE:return n.maxNativeZoom=17,new U.LayerGroup([new U.TileLayer("http://shangetu{s}.map.bdimg.com/it/u=x={x};y={y};z={z};v=009;type=sate&fm=46",{...n,style:t}),new U.TileLayer("http://online{s}.map.bdimg.com/tile/?qt=tile&x={x}&y={y}&z={z}&styles=sl",{...n,style:t})]);case this.source.SATELITE_NO_ANNO:return n.maxNativeZoom=19,new U.TileLayer("http://shangetu{s}.map.bdimg.com/it/u=x={x};y={y};z={z};v=009;type=sate&fm=46",{...n,style:t})}break;case this.provide.GAODE:switch(this.options.source){case this.source.VECTOR:return n.maxNativeZoom=18,new U.TileLayer("http://webrd0{s}.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=8&x={x}&y={y}&z={z}",{...n,style:t});case this.source.ANNO:return n.maxNativeZoom=18,new U.TileLayer("http://webst0{s}.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=8&x={x}&y={y}&z={z}",{...n,style:t});case this.source.SATELITE:return n.maxNativeZoom=16,new U.LayerGroup([new U.TileLayer("http://webst0{s}.is.autonavi.com/appmaptile?x={x}&y={y}&z={z}&lang=zh_cn&size=1&scale=1&style=6",{...n,style:t}),new U.TileLayer("http://webst0{s}.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=8&x={x}&y={y}&z={z}",{...n,style:t})]);case this.source.SATELITE_NO_ANNO:return n.maxNativeZoom=18,new U.TileLayer("http://webst0{s}.is.autonavi.com/appmaptile?x={x}&y={y}&z={z}&lang=zh_cn&size=1&scale=1&style=6",{...n,style:t})}break;case this.provide.YANDEX:switch(this.options.source){case this.source.ANNO:return new U.TileLayer("https://core-renderer-tiles.maps.yandex.net/tiles?l=skl&v=24.05.19-0-b240515214430&x={x}&y={y}&z={z}&scale=1&lang=en_US&client_id=yandex-web-maps&experimental_ranking_mode_name=default-web-ranking&experimental_data_hd=vegetation_model_exp",{...n,style:t});case this.source.SATELITE:return new U.LayerGroup([new U.TileLayer("https://sat{s}.maps.yandex.net/tiles?l=sat&v=3.1238.0&x={x}&y={y}&z={z}&scale=1&lang=en_US&client_id=yandex-web-maps",{...n,subdomains:["01","02","03","04"],style:t}),new U.TileLayer("https://core-renderer-tiles.maps.yandex.net/tiles?l=skl&v=24.05.19-0-b240515214430&x={x}&y={y}&z={z}&scale=1&lang=en_US&client_id=yandex-web-maps&experimental_ranking_mode_name=default-web-ranking&experimental_data_hd=vegetation_model_exp",{...n,style:t})]);case this.source.SATELITE_NO_ANNO:return new U.TileLayer("https://sat{s}.maps.yandex.net/tiles?l=sat&v=3.1238.0&x={x}&y={y}&z={z}&scale=1&lang=en_US&client_id=yandex-web-maps",{...n,subdomains:["01","02","03","04"],style:t})}break}},setOptions(t){U.Util.setOptions(this,t);const n=this.getLayerGroup();this.map.removeLayer(this.tileLayers),setTimeout(()=>{this.replaceProjection(),this.tileLayers=n.addTo(this.map)},500)}}),Z0=U.ImageOverlay.extend({initialize(t,n={},a=new U.Marker,l=new U.Marker){typeof t=="string"?this._url=t:this._rawImage=t,this.topRightMarker=a,this.bottomLeftMarker=l,this.angle=0,U.setOptions(this,n),this._topLeft=new U.LatLng(n.corners[0]),this._topRight=new U.LatLng(n.corners[1]),this._bottomLeft=new U.LatLng(n.corners[3]),a.on("drag dragend",this.reposition,this),l.on("drag dragend",this.reposition,this)},onAdd(t){this._image||(this._initImage(),this.options.opacity<1&&this._updateOpacity()),this.options.interactive&&(U.DomUtil.addClass(this._rawImage,"leaflet-interactive"),this.addInteractiveTarget(this._rawImage)),t.on("zoomend resetview",this._reset,this),this.getPane().appendChild(this._image),this._reset()},onRemove(t){t.off("zoomend resetview",this._reset,this),U.ImageOverlay.prototype.onRemove.call(this,t)},_initImage(){let t=this._rawImage;this._url&&(t=U.DomUtil.create("img"),t.style.display="none",this.options.crossOrigin&&(t.crossOrigin=""),t.src=this._url,this._rawImage=t),U.DomUtil.addClass(t,"leaflet-image-layer");const n=this._image=U.DomUtil.create("div","leaflet-image-layer "+(this._zoomAnimated?"leaflet-zoom-animated":""));this._updateZIndex&&this._updateZIndex(),n.appendChild(t),n.onselectstart=U.Util.falseFn,n.onmousemove=U.Util.falseFn,t.onload=(function(){this._reset(),t.style.display="block",this.options.w=this._rawImage.width,this.options.h=this._rawImage.height,this.boundsRectBottomLeft=new U.Point(0,0),this.boundsRectTopRight=new U.Point(this.options.w,this.options.h),this.diagonalVector=this.boundsRectTopRight.subtract(this.boundsRectBottomLeft),this.fire("load")}).bind(this),t.alt=this.options.alt},_reset(){const t=this._image,n=this._map.latLngToLayerPoint(this._topLeft),a=this._map.latLngToLayerPoint(this._topRight),l=this._map.latLngToLayerPoint(this._bottomLeft),c=a.subtract(n).add(l),f=new U.Bounds([n,a,l,c]),p=f.getSize(),g=n.subtract(f.min),A=a.subtract(n),k=l.subtract(n),C=Math.atan2(A.y,A.x),x=Math.atan2(k.x,k.y);this.angle=((Math.abs(C)+Math.abs(x))/2*180).toFixed(2),this._bounds=new U.LatLngBounds(this._map.layerPointToLatLng(f.min),this._map.layerPointToLatLng(f.max)),U.DomUtil.setPosition(t,f.min),t.pxBounds=f,t.style.width=p.x+"px",t.style.height=p.y+"px";const b=this._rawImage.width,T=this._rawImage.height;if(!b||!T)return;const G=n.distanceTo(a)/b*Math.cos(C),Z=n.distanceTo(l)/T*Math.cos(x);this._rawImage.style.transformOrigin="0 0",this._rawImage.style.transform="translate("+g.x+"px, "+g.y+"px)skew("+x+"rad, "+C+"rad) scale("+G+", "+Z+") "},_animateZoom(t){const n=this._map.getZoomScale(t.zoom),l=this._map._latLngBoundsToNewLayerBounds(this._bounds,t.zoom,t.center).min;U.DomUtil.setTransform(this._image,l,n)},reposition(){const t=this.topRightMarker.getLatLng(),n=this.bottomLeftMarker.getLatLng(),a=this.options.w,l=this.options.h,c=this.getCornerLatLng(new U.Point(0,l),n,t),f=this.getCornerLatLng(new U.Point(a,l),n,t),p=this.getCornerLatLng(new U.Point(0,0),n,t),g=this.getCornerLatLng(new U.Point(a,0),n,t);this.options.corners=[c,f,g,p],this._topLeft=new U.LatLng(c),this._topRight=new U.LatLng(f),this._bottomLeft=new U.LatLng(p),this._reset()},getCornerLatLng(t,n,a){const l=this.boundsRectBottomLeft,c=this.diagonalVector,f=t.subtract(l),p=this.getClockWiseRotate90DegreePoint(c),g=this.getDotProduction(c,f)/this.getDotProduction(c,c),A=-this.getDotProduction(p,f)/this.getDotProduction(p,p),k=new U.Projection.SphericalMercator.project(n),C=new U.Projection.SphericalMercator.project(a),x=k.add(C.subtract(k).multiplyBy(g)),b=this.getClockWiseRotate90DegreePoint(k.subtract(C)).multiplyBy(A),T=x.add(b);return new U.Projection.SphericalMercator.unproject(T)},setUrl(t){return this._url=t,this._rawImage&&(this._rawImage.src=t),this},getDotProduction(t,n){return t.x*n.x+t.y*n.y},getClockWiseRotate90DegreePoint(t){return new U.Point([t.y,-t.x])}});var ml={exports:{}};(function(t){(function(n,a,l){t.exports?t.exports=l():a[n]=l()})("h337",An,function(){var n={defaultRadius:40,defaultRenderer:"canvas2d",defaultGradient:{.25:"rgb(0,0,255)",.55:"rgb(0,255,0)",.85:"yellow",1:"rgb(255,0,0)"},defaultMaxOpacity:1,defaultMinOpacity:0,defaultBlur:.85,defaultXField:"x",defaultYField:"y",defaultValueField:"value",plugins:{}},a=function(){var k=function(b){this._coordinator={},this._data=[],this._radi=[],this._min=10,this._max=1,this._xField=b.xField||b.defaultXField,this._yField=b.yField||b.defaultYField,this._valueField=b.valueField||b.defaultValueField,b.radius&&(this._cfgRadius=b.radius)},C=n.defaultRadius;return k.prototype={_organiseData:function(x,b){var T=x[this._xField],G=x[this._yField],Z=this._radi,K=this._data,at=this._max,rt=this._min,ct=x[this._valueField]||1,yt=x.radius||this._cfgRadius||C;K[T]||(K[T]=[],Z[T]=[]),K[T][G]?K[T][G]+=ct:(K[T][G]=ct,Z[T][G]=yt);var mt=K[T][G];return mt>at?(b?this.setDataMax(mt):this._max=mt,!1):mt<rt?(b?this.setDataMin(mt):this._min=mt,!1):{x:T,y:G,value:ct,radius:yt,min:rt,max:at}},_unOrganizeData:function(){var x=[],b=this._data,T=this._radi;for(var G in b)for(var Z in b[G])x.push({x:G,y:Z,radius:T[G][Z],value:b[G][Z]});return{min:this._min,max:this._max,data:x}},_onExtremaChange:function(){this._coordinator.emit("extremachange",{min:this._min,max:this._max})},addData:function(){if(arguments[0].length>0)for(var x=arguments[0],b=x.length;b--;)this.addData.call(this,x[b]);else{var T=this._organiseData(arguments[0],!0);T&&(this._data.length===0&&(this._min=this._max=T.value),this._coordinator.emit("renderpartial",{min:this._min,max:this._max,data:[T]}))}return this},setData:function(x){var b=x.data,T=b.length;this._data=[],this._radi=[];for(var G=0;G<T;G++)this._organiseData(b[G],!1);return this._max=x.max,this._min=x.min||0,this._onExtremaChange(),this._coordinator.emit("renderall",this._getInternalData()),this},removeData:function(){},setDataMax:function(x){return this._max=x,this._onExtremaChange(),this._coordinator.emit("renderall",this._getInternalData()),this},setDataMin:function(x){return this._min=x,this._onExtremaChange(),this._coordinator.emit("renderall",this._getInternalData()),this},setCoordinator:function(x){this._coordinator=x},_getInternalData:function(){return{max:this._max,min:this._min,data:this._data,radi:this._radi}},getData:function(){return this._unOrganizeData()}},k}(),l=function(){var k=function(T){var G=T.gradient||T.defaultGradient,Z=document.createElement("canvas"),K=Z.getContext("2d");Z.width=256,Z.height=1;var at=K.createLinearGradient(0,0,256,1);for(var rt in G)at.addColorStop(rt,G[rt]);return K.fillStyle=at,K.fillRect(0,0,256,1),K.getImageData(0,0,256,1).data},C=function(T,G){var Z=document.createElement("canvas"),K=Z.getContext("2d"),at=T,rt=T;if(Z.width=Z.height=T*2,G==1)K.beginPath(),K.arc(at,rt,T,0,2*Math.PI,!1),K.fillStyle="rgba(0,0,0,1)",K.fill();else{var ct=K.createRadialGradient(at,rt,T*G,at,rt,T);ct.addColorStop(0,"rgba(0,0,0,1)"),ct.addColorStop(1,"rgba(0,0,0,0)"),K.fillStyle=ct,K.fillRect(0,0,2*T,2*T)}return Z},x=function(rt){for(var G=[],Z=rt.min,K=rt.max,at=rt.radi,rt=rt.data,ct=Object.keys(rt),yt=ct.length;yt--;)for(var mt=ct[yt],xt=Object.keys(rt[mt]),Dt=xt.length;Dt--;){var It=xt[Dt],zt=rt[mt][It],Yt=at[mt][It];G.push({x:mt,y:It,value:zt,radius:Yt})}return{min:Z,max:K,data:G}};function b(T){var G=T.container,Z=this.shadowCanvas=document.createElement("canvas"),K=this.canvas=T.canvas||document.createElement("canvas");this._renderBoundaries=[1e4,1e4,0,0];var at=getComputedStyle(T.container)||{};K.className="heatmap-canvas",this._width=K.width=Z.width=T.width||+at.width.replace(/px/,""),this._height=K.height=Z.height=T.height||+at.height.replace(/px/,""),this.shadowCtx=Z.getContext("2d"),this.ctx=K.getContext("2d"),K.style.cssText=Z.style.cssText="position:absolute;left:0;top:0;",G.style.position="relative",G.appendChild(K),this._palette=k(T),this._templates={},this._setStyles(T)}return b.prototype={renderPartial:function(T){T.data.length>0&&(this._drawAlpha(T),this._colorize())},renderAll:function(T){this._clear(),T.data.length>0&&(this._drawAlpha(x(T)),this._colorize())},_updateGradient:function(T){this._palette=k(T)},updateConfig:function(T){T.gradient&&this._updateGradient(T),this._setStyles(T)},setDimensions:function(T,G){this._width=T,this._height=G,this.canvas.width=this.shadowCanvas.width=T,this.canvas.height=this.shadowCanvas.height=G},_clear:function(){this.shadowCtx.clearRect(0,0,this._width,this._height),this.ctx.clearRect(0,0,this._width,this._height)},_setStyles:function(T){this._blur=T.blur==0?0:T.blur||T.defaultBlur,T.backgroundColor&&(this.canvas.style.backgroundColor=T.backgroundColor),this._width=this.canvas.width=this.shadowCanvas.width=T.width||this._width,this._height=this.canvas.height=this.shadowCanvas.height=T.height||this._height,this._opacity=(T.opacity||0)*255,this._maxOpacity=(T.maxOpacity||T.defaultMaxOpacity)*255,this._minOpacity=(T.minOpacity||T.defaultMinOpacity)*255,this._useGradientOpacity=!!T.useGradientOpacity},_drawAlpha:function(K){for(var G=this._min=K.min,Z=this._max=K.max,K=K.data||[],at=K.length,rt=1-this._blur;at--;){var ct=K[at],yt=ct.x,mt=ct.y,xt=ct.radius,Dt=Math.min(ct.value,Z),It=yt-xt,zt=mt-xt,Yt=this.shadowCtx,Et;this._templates[xt]?Et=this._templates[xt]:this._templates[xt]=Et=C(xt,rt);var Zt=(Dt-G)/(Z-G);Yt.globalAlpha=Zt<.01?.01:Zt,Yt.drawImage(Et,It,zt),It<this._renderBoundaries[0]&&(this._renderBoundaries[0]=It),zt<this._renderBoundaries[1]&&(this._renderBoundaries[1]=zt),It+2*xt>this._renderBoundaries[2]&&(this._renderBoundaries[2]=It+2*xt),zt+2*xt>this._renderBoundaries[3]&&(this._renderBoundaries[3]=zt+2*xt)}},_colorize:function(){var T=this._renderBoundaries[0],G=this._renderBoundaries[1],Z=this._renderBoundaries[2]-T,K=this._renderBoundaries[3]-G,at=this._width,rt=this._height,ct=this._opacity,yt=this._maxOpacity,mt=this._minOpacity,xt=this._useGradientOpacity;T<0&&(T=0),G<0&&(G=0),T+Z>at&&(Z=at-T),G+K>rt&&(K=rt-G);for(var Dt=this.shadowCtx.getImageData(T,G,Z,K),It=Dt.data,zt=It.length,Yt=this._palette,Et=3;Et<zt;Et+=4){var Zt=It[Et],be=Zt*4;if(be){var pe;ct>0?pe=ct:Zt<yt?Zt<mt?pe=mt:pe=Zt:pe=yt,It[Et-3]=Yt[be],It[Et-2]=Yt[be+1],It[Et-1]=Yt[be+2],It[Et]=xt?Yt[be+3]:pe}}Dt.data=It,this.ctx.putImageData(Dt,T,G),this._renderBoundaries=[1e3,1e3,0,0]},getValueAt:function(T){var G,Z=this.shadowCtx,K=Z.getImageData(T.x,T.y,1,1),at=K.data[3],rt=this._max,ct=this._min;return G=Math.abs(rt-ct)*(at/255)>>0,G},getDataURL:function(){return this.canvas.toDataURL()}},b}(),c=function(){var k=!1;return n.defaultRenderer==="canvas2d"&&(k=l),k}(),f={merge:function(){for(var A={},k=arguments.length,C=0;C<k;C++){var x=arguments[C];for(var b in x)A[b]=x[b]}return A}},p=function(){var k=function(){function T(){this.cStore={}}return T.prototype={on:function(G,Z,K){var at=this.cStore;at[G]||(at[G]=[]),at[G].push(function(rt){return Z.call(K,rt)})},emit:function(G,Z){var K=this.cStore;if(K[G])for(var at=K[G].length,rt=0;rt<at;rt++){var ct=K[G][rt];ct(Z)}}},T}(),C=function(b){var T=b._renderer,G=b._coordinator,Z=b._store;G.on("renderpartial",T.renderPartial,T),G.on("renderall",T.renderAll,T),G.on("extremachange",function(K){b._config.onExtremaChange&&b._config.onExtremaChange({min:K.min,max:K.max,gradient:b._config.gradient||b._config.defaultGradient})}),Z.setCoordinator(G)};function x(){var b=this._config=f.merge(n,arguments[0]||{});if(this._coordinator=new k,b.plugin){var T=b.plugin;if(n.plugins[T]){var G=n.plugins[T];this._renderer=new G.renderer(b),this._store=new G.store(b)}else throw new Error("Plugin '"+T+"' not found. Maybe it was not registered.")}else this._renderer=new c(b),this._store=new a(b);C(this)}return x.prototype={addData:function(){return this._store.addData.apply(this._store,arguments),this},removeData:function(){return this._store.removeData&&this._store.removeData.apply(this._store,arguments),this},setData:function(){return this._store.setData.apply(this._store,arguments),this},setDataMax:function(){return this._store.setDataMax.apply(this._store,arguments),this},setDataMin:function(){return this._store.setDataMin.apply(this._store,arguments),this},configure:function(b){return this._config=f.merge(this._config,b),this._renderer.updateConfig(this._config),this._coordinator.emit("renderall",this._store._getInternalData()),this},repaint:function(){return this._coordinator.emit("renderall",this._store._getInternalData()),this},getData:function(){return this._store.getData()},getDataURL:function(){return this._renderer.getDataURL()},getValueAt:function(b){return this._store.getValueAt?this._store.getValueAt(b):this._renderer.getValueAt?this._renderer.getValueAt(b):null}},x}(),g={create:function(A){return new p(A)},register:function(A,k){n.plugins[A]=k}};return g})})(ml);var j0=ml.exports;const q0=Tl(j0);var uo=L.Layer.extend({initialize:function(t){this.cfg=t,this._el=L.DomUtil.create("div","leaflet-zoom-hide"),this._data=[],this._max=1,this._min=0,this.cfg.container=this._el},onAdd:function(t){var n=t.getSize();this._map=t,this._width=n.x,this._height=n.y,this._el.style.width=n.x+"px",this._el.style.height=n.y+"px",this._el.style.position="absolute",this._resetOrigin(),t.getPanes().overlayPane.appendChild(this._el),this._heatmap||(this._heatmap=q0.create(this.cfg)),t.on("moveend",this._resetOrigin,this),this._draw()},addTo:function(t){return t.addLayer(this),this},onRemove:function(t){t.getPanes().overlayPane.removeChild(this._el),t.off("moveend",this._resetOrigin,this)},_draw:function(){if(this._map){var t=this._map.getPanes().mapPane,n=t._leaflet_pos;this._el.style[uo.CSS_TRANSFORM]="translate("+-Math.round(n.x)+"px,"+-Math.round(n.y)+"px)",this._update()}},_update:function(){var t,n,a,l={max:this._max,min:this._min,data:[]};if(t=this._map.getBounds(),n=this._map.getZoom(),a=Math.pow(2,n),this._data.length==0){this._heatmap&&this._heatmap.setData(l);return}for(var c=[],f=this.cfg.scaleRadius?a:1,p=0,g=0,A=this.cfg.valueField,k=this._data.length;k--;){var C=this._data[k],x=C[A],b=C.latlng;if(t.contains(b)){p=Math.max(x,p),g=Math.min(x,g);var T=this._map.latLngToContainerPoint(b),G={x:Math.round(T.x),y:Math.round(T.y)};G[A]=x;var Z;C.radius?Z=C.radius*f:Z=(this.cfg.radius||2)*f,G.radius=Z,c.push(G)}}this.cfg.useLocalExtrema&&(l.max=p,l.min=g),l.data=c,this._heatmap.setData(l)},setData:function(c){this._max=c.max||this._max,this._min=c.min||this._min;for(var n=this.cfg.latField||"lat",a=this.cfg.lngField||"lng",l=this.cfg.valueField||"value",c=c.data,f=c.length,p=[];f--;){var g=c[f],A=new L.LatLng(g[n],g[a]),k={latlng:A};k[l]=g[l],g.radius&&(k.radius=g.radius),p.push(k)}this._data=p,this._draw()},addData:function(t){if(t.length>0)for(var n=t.length;n--;)this.addData(t[n]);else{var a=this.cfg.latField||"lat",l=this.cfg.lngField||"lng",c=this.cfg.valueField||"value",f=t,p=new L.LatLng(f[a],f[l]),g={latlng:p};g[c]=f[c],this._max=Math.max(this._max,g[c]),this._min=Math.min(this._min,g[c]),f.radius&&(g.radius=f.radius),this._data.push(g),this._draw()}},_resetOrigin:function(){this._origin=this._map.layerPointToLatLng(new L.Point(0,0));var t=this._map.getSize();(this._width!==t.x||this._height!==t.y)&&(this._width=t.x,this._height=t.y,this._el.style.width=this._width+"px",this._el.style.height=this._height+"px"),this._draw()}});uo.CSS_TRANSFORM=function(){for(var t=document.createElement("div"),n=["transform","WebkitTransform","MozTransform","OTransform","msTransform"],a=0;a<n.length;a++){var l=n[a];if(t.style[l]!==void 0)return l}return n[0]}();const H0=L.TileLayer.extend({defaultWmtsParams:{service:"WMTS",request:"GetTile",version:"1.0.0",layer:"",style:"",tilematrixset:"",format:"image/jpeg"},initialize:function(t,n){this._url=t;var a={},l=Object.keys(n);l.forEach(g=>{a[g.toLowerCase()]=n[g]});var c=L.extend({},this.defaultWmtsParams),f=a.tileSize||this.options.tileSize;a.detectRetina&&L.Browser.retina?c.width=c.height=f*2:c.width=c.height=f;for(var p in a)c.hasOwnProperty(p)&&p!="matrixIds"&&(c[p]=a[p]);this.wmtsParams=c,this.matrixIds=n.matrixIds||this.getDefaultMatrix(),L.setOptions(this,n)},onAdd:function(t){this._crs=this.options.crs||t.options.crs,L.TileLayer.prototype.onAdd.call(this,t)},getTileUrl:function(t){var n=this.options.tileSize,a=t.multiplyBy(n);a.x+=1,a.y-=1;var l=a.add(new L.Point(n,n)),c=this._tileZoom,f=this._crs.project(this._map.unproject(a,c)),p=this._crs.project(this._map.unproject(l,c));tilewidth=p.x-f.x;var g=this.matrixIds[c].identifier,A=this.wmtsParams.tilematrixset+":"+g,k=this.matrixIds[c].topLeftCorner.lng,C=this.matrixIds[c].topLeftCorner.lat,x=Math.floor((f.x-k)/tilewidth),b=-Math.floor((f.y-C)/tilewidth),T=L.Util.template(this._url,{s:this._getSubdomain(t)});return T+L.Util.getParamString(this.wmtsParams,T)+"&tilematrix="+A+"&tilerow="+b+"&tilecol="+x},setParams:function(t,n){return L.extend(this.wmtsParams,t),n||this.redraw(),this},getDefaultMatrix:function(){for(var t=new Array(22),n=0;n<22;n++)t[n]={identifier:""+n,topLeftCorner:new L.LatLng(200375083428e-4,-200375083428e-4)};return t}});var fe={};fe.Source=L.Layer.extend({options:{untiled:!0,identify:!0},initialize:function(t,n){L.setOptions(this,n),this.options.tiled&&(this.options.untiled=!1),this._url=t,this._subLayers={},this._overlay=this.createOverlay(this.options.untiled)},createOverlay:function(t){var n={};for(var a in this.options)a!="untiled"&&a!="identify"&&(n[a]=this.options[a]);return t?fe.overlay(this._url,n):fe.tileLayer(this._url,n)},onAdd:function(){this.refreshOverlay()},getEvents:function(){return this.options.identify?{click:this.identify}:{}},setOpacity:function(t){this.options.opacity=t,this._overlay&&this._overlay.setOpacity(t)},bringToBack:function(){this.options.isBack=!0,this._overlay&&this._overlay.bringToBack()},bringToFront:function(){this.options.isBack=!1,this._overlay&&this._overlay.bringToFront()},getLayer:function(t){return fe.layer(this,t)},addSubLayer:function(t){this._subLayers[t]=!0,this.refreshOverlay()},removeSubLayer:function(t){delete this._subLayers[t],this.refreshOverlay()},refreshOverlay:function(){var t=Object.keys(this._subLayers).join(",");this._map&&(t?(this._overlay.setParams({layers:t}),this._overlay.addTo(this._map)):this._overlay.remove())},identify:function(t){var n=this.getIdentifyLayers();n.length&&this.getFeatureInfo(t.containerPoint,t.latlng,n,this.showFeatureInfo)},getFeatureInfo:function(t,n,a,l){var c=this.getFeatureInfoParams(t,a),f=this._url+L.Util.getParamString(c,this._url);this.showWaiting(),this.ajax(f,p);function p(g){this.hideWaiting();var A=this.parseFeatureInfo(g,f);l.call(this,n,A)}},ajax:function(t,n){V0.call(this,t,n)},getIdentifyLayers:function(){return this.options.identifyLayers?this.options.identifyLayers:Object.keys(this._subLayers)},getFeatureInfoParams:function(t,n){var a,l;this.options.untiled?a=this._overlay.wmsParams:(l=this.createOverlay(!0),l.updateWmsParams(this._map),a=l.wmsParams,a.layers=n.join(","));var c={request:"GetFeatureInfo",query_layers:n.join(","),X:Math.round(t.x),Y:Math.round(t.y)};return L.extend({},a,c)},parseFeatureInfo:function(t,n){return t=="error"&&(t="<iframe src='"+n+"' style='border:none'>"),t},showFeatureInfo:function(t,n){this._map&&this._map.openPopup(n,t)},showWaiting:function(){this._map&&(this._map._container.style.cursor="progress")},hideWaiting:function(){this._map&&(this._map._container.style.cursor="default")}}),fe.source=function(t,n){return new fe.Source(t,n)},fe.Layer=L.Layer.extend({initialize:function(t,n,a){L.setOptions(this,a),t.addSubLayer||(t=fe.getSourceForUrl(t,a)),this._source=t,this._name=n},onAdd:function(){this._source._map||this._source.addTo(this._map),this._source.addSubLayer(this._name)},onRemove:function(){this._source.removeSubLayer(this._name)},setOpacity:function(t){this._source.setOpacity(t)},bringToBack:function(){this._source.bringToBack()},bringToFront:function(){this._source.bringToFront()}}),fe.layer=function(t,n){return new fe.Layer(t,n)};var co={};fe.getSourceForUrl=function(t,n){return co[t]||(co[t]=fe.source(t,n)),co[t]},fe.TileLayer=L.TileLayer.WMS,fe.tileLayer=L.tileLayer.wms,fe.Overlay=L.Layer.extend({defaultWmsParams:{service:"WMS",request:"GetMap",version:"1.1.1",layers:"",styles:"",format:"image/jpeg",transparent:!1},options:{crs:null,uppercase:!1,attribution:"",opacity:1,isBack:!1,minZoom:0,maxZoom:18},initialize:function(t,n){this._url=t;var a={},l={};for(var c in n)c in this.options?l[c]=n[c]:a[c]=n[c];L.setOptions(this,l),this.wmsParams=L.extend({},this.defaultWmsParams,a)},setParams:function(t){L.extend(this.wmsParams,t),this.update()},getAttribution:function(){return this.options.attribution},onAdd:function(){this.update()},onRemove:function(t){this._currentOverlay&&(t.removeLayer(this._currentOverlay),delete this._currentOverlay),this._currentUrl&&delete this._currentUrl},getEvents:function(){return{moveend:this.update}},update:function(){if(!this._map)return;this.updateWmsParams();var t=this.getImageUrl();if(this._currentUrl==t)return;this._currentUrl=t;var n=this._map.getBounds(),a=L.imageOverlay(t,n,{opacity:0});a.addTo(this._map),a.once("load",l,this);function l(){if(this._map){if(a._url!=this._currentUrl){this._map.removeLayer(a);return}else this._currentOverlay&&this._map.removeLayer(this._currentOverlay);this._currentOverlay=a,a.setOpacity(this.options.opacity?this.options.opacity:1),this.options.isBack===!0&&a.bringToBack(),this.options.isBack===!1&&a.bringToFront()}}(this._map.getZoom()<this.options.minZoom||this._map.getZoom()>this.options.maxZoom)&&this._map.removeLayer(a)},setOpacity:function(t){this.options.opacity=t,this._currentOverlay&&this._currentOverlay.setOpacity(t)},bringToBack:function(){this.options.isBack=!0,this._currentOverlay&&this._currentOverlay.bringToBack()},bringToFront:function(){this.options.isBack=!1,this._currentOverlay&&this._currentOverlay.bringToFront()},updateWmsParams:function(t){t||(t=this._map);var n=t.getBounds(),a=t.getSize(),l=parseFloat(this.wmsParams.version),c=this.options.crs||t.options.crs,f=l>=1.3?"crs":"srs",p=c.project(n.getNorthWest()),g=c.project(n.getSouthEast()),A={width:a.x,height:a.y};A[f]=c.code,A.bbox=(l>=1.3&&c===L.CRS.EPSG4326?[g.y,p.x,p.y,g.x]:[p.x,g.y,g.x,p.y]).join(","),L.extend(this.wmsParams,A)},getImageUrl:function(){var t=this.options.uppercase||!1,n=L.Util.getParamString(this.wmsParams,this._url,t);return this._url+n}}),fe.overlay=function(t,n){return new fe.Overlay(t,n)};function V0(t,n){var a=this,l=new XMLHttpRequest;l.onreadystatechange=c,l.open("GET",t),l.send();function c(){l.readyState===4&&(l.status===200?n.call(a,l.responseText):n.call(a,"error"))}}const gl=U.Draggable.extend({initialize(t,n,a){U.Draggable.prototype.initialize.call(this,t,t),this._element=t,this._stepHeight=n??5.45,this._knobHeight=a??10,this.on("predrag",function(){this._newPos.x=0,this._newPos.y=this._adjust(this._newPos.y)},this)},_adjust(t){let n=Math.round(this._toValue(t));return n=Math.max(0,Math.min(this._maxValue,n)),this._toY(n)},_toY(t){return this._k*t+this._m},_toValue(t){return(t-this._m)/this._k},setSteps(t){this._maxValue=t-1,this._k=-this._stepHeight,this._m=0},setPosition(t){U.DomUtil.setPosition(this._element,L.point(0,this._adjust(t)))},setValue(t){this.setPosition(this._toY(t))},getValue(){return this._toValue(U.DomUtil.getPosition(this._element).y)}}),Oa=U.Handler.extend({options:{color:"#f00",weight:2,fillColor:"#ff0",fillOpacity:.7,radius:5,continue:!1,showCloseButton:!1,showMeasurements:!1},PointEvents:{_mouseMove(t){this.tooltip.setLatLng(t.latlng),this.tempPoint.setLatLng(t.latlng),this._map.openTooltip(this.tooltip),this.geometry&&this._map.hasLayer(this.geometry)?this.geometry.setLatLng(t.latlng):(this.tooltip.setContent("点击开始绘制"),this.geometry=new U.CircleMarker(t.latlng,this.options).addTo(this._map)),this.onDrawing&&this.onDrawing(this.geometry)},_mouseClick(t){this.onFinish&&this.geometry&&this.onFinish(this.geometry),!this.options.continue&&this.disable(),this.geometry=null}},CircleEvents:{_mouseMove(t){if(this.tooltip.setLatLng(t.latlng),this._map.openTooltip(this.tooltip),this.geometry&&this._map.hasLayer(this.geometry)){const n=this.latlng?this._map.distance(t.latlng,this.latlng):0;this.geometry.setRadius(n),n!==0?this.tooltip.setContent(`半径:<b>${n.toFixed(2)}m</b><br/>继续点击完成绘制`):this.tooltip.setContent("点击开始绘制")}this.onDrawing&&this.onDrawing(this.geometry)},_mouseClick(t){this.latlng=t.latlng,this.onVertexAdd&&this.onVertexAdd(this.geometry),this.geometry&&this.geometry.getRadius()!==0?(this.onFinish&&this.geometry&&this.onFinish(this.geometry),this.latlngs=[],!this.options.continue&&this.disable(),this.geometry=null):this.geometry=new U.Circle(this.latlng,0,this.options).addTo(this._map)},_mouseDblClick(t){}},PolylineEvents:{_mouseMove(t){this.tooltip.setLatLng(t.latlng),this.tempPoint.setLatLng(t.latlng),this._map.openTooltip(this.tooltip),this.geometry&&this._map.hasLayer(this.geometry)?(this.geometry.setLatLngs([...this.latlngs,t.latlng]),this.latlngs.length?this.tooltip.setContent("点击继续绘制,双击完成绘制"):this.tooltip.setContent("点击开始绘制")):this.geometry=new U.Polyline([t.latlng],this.options).addTo(this._map),this.onDrawing&&this.onDrawing(this.geometry)},_mouseClick(t){this.latlngs.push(t.latlng),String(this.latlngs.at(-1))===String(this.latlngs.at(-2))&&(this.latlngs=this.latlngs.slice(0,this.latlngs.length-1)),this.geometry.setLatLngs(this.latlngs),this.onVertexAdd&&this.onVertexAdd(this.geometry)},_mouseDblClick(t){this.onFinish&&this.geometry&&this.onFinish(this.geometry),this.latlngs=[],!this.options.continue&&this.disable(),this.geometry=null}},RectangleEvents:{_mouseMove(t){this.tooltip.setLatLng(t.latlng),this.tempPoint.setLatLng(t.latlng),this._map.openTooltip(this.tooltip),this.geometry&&this._map.hasLayer(this.geometry)?(this.geometry.setBounds([...this.latlngs,t.latlng]),this.latlngs.length?this.tooltip.setContent("继续点击完成绘制"):this.tooltip.setContent("点击开始绘制")):this.geometry=new U.Rectangle([t.latlng,t.latlng],this.options).addTo(this._map),this.onDrawing&&this.onDrawing(this.geometry)},_mouseClick(t){this.latlngs.push(t.latlng),String(this.latlngs.at(-1))===String(this.latlngs.at(-2))&&(this.latlngs=this.latlngs.slice(0,this.latlngs.length-1)),this.geometry.setBounds(this.latlngs),this.onVertexAdd&&this.onVertexAdd(this.geometry),this.latlngs.length===2&&(this.onFinish&&this.geometry&&this.onFinish(this.geometry),this.latlngs=[],!this.options.continue&&this.disable(),this.geometry=null)},_mouseDblClick(t){}},PolygonEvents:{_mouseMove(t){this.tooltip.setLatLng(t.latlng),this.tempPoint.setLatLng(t.latlng),this._map.openTooltip(this.tooltip),this.geometry&&this._map.hasLayer(this.geometry)?(this.geometry.setLatLngs([...this.latlngs,t.latlng]),this.latlngs.length?this.tooltip.setContent("点击继续绘制,双击完成绘制"):this.tooltip.setContent("点击开始绘制")):this.geometry=new U.Polygon([t.latlng],this.options).addTo(this._map),this.onDrawing&&this.onDrawing(this.geometry)},_mouseClick(t){this.latlngs.push(t.latlng),String(this.latlngs.at(-1))===String(this.latlngs.at(-2))&&(this.latlngs=this.latlngs.slice(0,this.latlngs.length-1)),this.geometry.setLatLngs(this.latlngs),this.onVertexAdd&&this.onVertexAdd(this.geometry)},_mouseDblClick(t){this.onFinish&&this.geometry&&this.onFinish(this.geometry),this.latlngs=[],!this.options.continue&&this.disable(),this.geometry=null}},addHooks(){this[this.drawType+"Events"]&&(this[this.drawType+"Events"]._mouseMove&&this._map.on("mousemove",this[this.drawType+"Events"]._mouseMove,this),this[this.drawType+"Events"]._mouseClick&&this._map.on("click",this[this.drawType+"Events"]._mouseClick,this),this[this.drawType+"Events"]._mouseDblClick&&this._map.on("dblclick",this[this.drawType+"Events"]._mouseDblClick,this))},removeHooks(){this[this.drawType+"Events"]&&(this[this.drawType+"Events"]._mouseMove&&this._map.off("mousemove",this[this.drawType+"Events"]._mouseMove,this),this[this.drawType+"Events"]._mouseClick&&this._map.off("click",this[this.drawType+"Events"]._mouseClick,this),this[this.drawType+"Events"]._mouseDblClick&&this._map.off("dblclick",this[this.drawType+"Events"]._mouseDblClick,this))},setOptions(t){return U.Util.setOptions(this,t),this},enable(t,n={}){return U.Util.setOptions(this,n),this.onFinish=n.onFinish||new Function,this.onDrawing=n.onDrawing||new Function,this.onVertexAdd=n.onVertexAdd||new Function,this.drawType=$t.StringUtil.changeCase(t,1),this.latlngs=n.latlngs||[],this._map.setCursor("data:application/octet-stream;base64,AAACAAEAEBAAAAMABgBoBQAAFgAAACgAAAAQAAAAIAAAAAEACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AACxAAAs6/oAAIKEAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQUAAAAAAAAAAAAAAAAAAAUFBQAAAAAAAAAAAAAAAAAFAwQAAAAAAAAAAAAAAAAAAAMDBAAAAAAAAAEBAQAAAAADAwQAAAAAAAABAQEAAAAAAAMDBAQAAAAAAQEBAAAAAAADAwIAAAAAAAAAAAAAAAAAAAIBAQAAAAAAAAAAAAAAAAABAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//AAD//wAA/v8AAP4/AAD+HwAA/g8AAP4PAAD+BwAAxwcAAMcDAADHgwAA/8EAAP/BAAD/5wAA//8AAP//AAA="),this.tempPoint=new U.CircleMarker([0,0],{weight:1,radius:5,color:"#3388ff",fillColor:"#fff",fillOpacity:1}).addTo(this._map),this.tooltip=new U.Tooltip({offset:[10,-10]}).setContent("点击开始绘制"),U.Handler.prototype.enable.call(this),this},disable(){if(this._map.setCursor(),this.removeHooks(),this.tooltip&&this._map.closeTooltip(this.tooltip),this.tempPoint&&this._map.removeLayer(this.tempPoint),this.options.showCloseButton&&this.options.showMeasurements){const t=this.geometry._measurementLayer;let n;this.geometry instanceof U.Path?n=this.geometry._latlngs.flat().at(-1):n=this.geometry._latlng;const a=this.geometry._leaflet_id;new U.Marker(n,{icon:new U.Icon({iconUrl:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAYAAABWdVznAAAAAXNSR0IArs4c6QAAAFRJREFUKFOlklEKACAIQ7f7H9rQkJYFFUVfY49NiwBgcc+HABlmu/K7HQMge0SFVd8CCqU5tQlwUQ06UqYuwA7Siv/AU6U6YK3n1f7Wen7onvD6NRqqukP5oM7XCQAAAABJRU5ErkJggg==",iconSize:[12,12],iconAnchor:[6,6]})}).on("click",l=>{this._map.removeLayerById(a),t==null||t.clearLayers()}).addTo(t)}return U.Util.setOptions(this,Oa.prototype.options),U.Handler.prototype.disable.call(this),this}});U.Map.addInitHook("addHandler","drawHandler",Oa);const di=U.Handler.extend({_touchstart:U.Browser.msPointer?"MSPointerDown":U.Browser.pointer?"pointerdown":"touchstart",initialize(t){U.Handler.prototype.initialize.call(this,t),this._items=[],this._visible=!1,di.BASE_CLS=`${t.clsPrefix}-contextmenu`;const n=this._container=U.DomUtil.create("div",`${t.clsPrefix}-contextmenu`,t._container);n.style.zIndex=1e4,n.style.position="absolute",t.options.contextmenuWidth&&(n.style.width=t.options.contextmenuWidth+"px"),this._createItems(),U.DomEvent.on(n,"click",U.DomEvent.stop).on(n,"mousedown",U.DomEvent.stop).on(n,"dblclick",U.DomEvent.stop).on(n,"contextmenu",U.DomEvent.stop)},addHooks(){const t=this._map.getContainer();U.DomEvent.on(t,"mouseleave",this._hide,this).on(document,"keydown",this._onKeyDown,this),U.Browser.touch&&U.DomEvent.on(document,this._touchstart,this._hide,this),this._map.on({contextmenu:this._show,mousedown:this._hide,zoomstart:this._hide},this)},removeHooks(){const t=this._map.getContainer();U.DomEvent.off(t,"mouseleave",this._hide,this).off(document,"keydown",this._onKeyDown,this),U.Browser.touch&&U.DomEvent.off(document,this._touchstart,this._hide,this),this._map.off({contextmenu:this._show,mousedown:this._hide,zoomstart:this._hide},this)},showAt(t,n){t instanceof U.LatLng&&(t=this._map.latLngToContainerPoint(t)),this._showAtPoint(t,n)},hide(){this._hide()},addItem(t){return this.insertItem(t)},insertItem(t,n){n=n!==void 0?n:this._items.length;const a=this._createItem(this._container,t,n);return this._items.push(a),this._sizeChanged=!0,this._map.fire("contextmenu.additem",{contextmenu:this,el:a.el,index:n}),a.el},removeItem(t){const n=this._container;return isNaN(t)||(t=n.children[t]),t?(this._removeItem(U.Util.stamp(t)),this._sizeChanged=!0,this._map.fire("contextmenu.removeitem",{contextmenu:this,el:t}),t):null},removeAllItems(){const t=this._container.children;let n;for(;t.length;)n=t[0],this._removeItem(U.Util.stamp(n));return t},hideAllItems(){let t,n,a;for(n=0,a=this._items.length;n<a;n++)t=this._items[n],t.el.style.display="none"},showAllItems(){let t,n,a;for(n=0,a=this._items.length;n<a;n++)t=this._items[n],t.el.style.display=""},setDisabled(t,n){const a=this._container,l=di.BASE_CLS+"-item";isNaN(t)||(t=a.children[t]),t&&U.DomUtil.hasClass(t,l)&&(n?(U.DomUtil.addClass(t,l+"-disabled"),this._map.fire("contextmenu.disableitem",{contextmenu:this,el:t})):(U.DomUtil.removeClass(t,l+"-disabled"),this._map.fire("contextmenu.enableitem",{contextmenu:this,el:t})))},isVisible(){return this._visible},_createItems(){const t=this._map.options.contextmenuItems;let n,a;for(n=0,a=t.length;n<a;n++)this._items.push(this._createItem(this._container,t[n]))},_createItem(t,n,a){if(n.separator||n==="-")return this._createSeparator(t,a);const l=di.BASE_CLS+"-item",c=n.disabled?l+" "+l+"-disabled":l,f=this._insertElementAt("a",c,t,a),p=this._createEventHandler(f,n.callback,n.context,n.hideOnSelect),g=this._getIcon(n),A=this._getIconCls(n);let k="";return g?k='<img class="'+di.BASE_CLS+'-icon" src="'+g+'"/>':A&&(k='<span class="'+di.BASE_CLS+"-icon "+A+'"></span>'),f.innerHTML=k+n.text,f.href="#",U.DomEvent.on(f,"mouseover",this._onItemMouseOver,this).on(f,"mouseout",this._onItemMouseOut,this).on(f,"mousedown",U.DomEvent.stopPropagation).on(f,"click",p),U.Browser.touch&&U.DomEvent.on(f,this._touchstart,U.DomEvent.stopPropagation),U.Browser.pointer||U.DomEvent.on(f,"click",this._onItemMouseOut,this),{id:U.Util.stamp(f),el:f,callback:p}},_removeItem(t){let n,a,l,c,f;for(l=0,c=this._items.length;l<c;l++)if(n=this._items[l],n.id===t)return a=n.el,f=n.callback,f&&(U.DomEvent.off(a,"mouseover",this._onItemMouseOver,this).off(a,"mouseover",this._onItemMouseOut,this).off(a,"mousedown",U.DomEvent.stopPropagation).off(a,"click",f),U.Browser.touch&&U.DomEvent.off(a,this._touchstart,U.DomEvent.stopPropagation),U.Browser.pointer||U.DomEvent.on(a,"click",this._onItemMouseOut,this)),this._container.removeChild(a),this._items.splice(l,1),n;return null},_createSeparator(t,n){const a=this._insertElementAt("div",di.BASE_CLS+"-separator",t,n);return{id:U.Util.stamp(a),el:a}},_createEventHandler(t,n,a,p){const c=this;this._map;const f=di.BASE_CLS+"-item-disabled";var p=p!==void 0?p:!0;return function(g){if(U.DomUtil.hasClass(t,f))return;const A=c._map,k=c._showLocation.containerPoint,C=A.containerPointToLayerPoint(k),x=A.layerPointToLatLng(C),b=c._showLocation.relatedTarget,T={containerPoint:k,layerPoint:C,latlng:x,relatedTarget:b};p&&c._hide(),n&&n.call(a||A,T),c._map.fire("contextmenu.select",{contextmenu:c,el:t})}},_insertElementAt(t,n,a,l){let c;const f=document.createElement(t);return f.className=n,l!==void 0&&(c=a.children[l]),c?a.insertBefore(f,c):a.appendChild(f),f},_show(t){this._showAtPoint(t.containerPoint,t)},_showAtPoint(t,n){if(this._items.length){this._map;const a=U.extend(n||{},{contextmenu:this});this._showLocation={containerPoint:t},n&&n.relatedTarget&&(this._showLocation.relatedTarget=n.relatedTarget),this._setPosition(t),this._visible||(this._container.style.display="block",this._visible=!0),this._map.fire("contextmenu.show",a)}},_hide(){this._visible&&(this._visible=!1,this._container.style.display="none",this._map.fire("contextmenu.hide",{contextmenu:this}))},_getIcon(t){return U.Browser.retina&&t.retinaIcon||t.icon},_getIconCls(t){return U.Browser.retina&&t.retinaIconCls||t.iconCls},_setPosition(t){const n=this._map.getSize(),a=this._container,l=this._getElementSize(a);let c;this._map.options.contextmenuAnchor&&(c=new U.Point(this._map.options.contextmenuAnchor),t=t.add(c)),a._leaflet_pos=t,t.x+l.x>n.x?(a.style.left="auto",a.style.right=Math.min(Math.max(n.x-t.x,0),n.x-l.x-1)+"px"):(a.style.left=Math.max(t.x,0)+"px",a.style.right="auto"),t.y+l.y>n.y?(a.style.top="auto",a.style.bottom=Math.min(Math.max(n.y-t.y,0),n.y-l.y-1)+"px"):(a.style.top=Math.max(t.y,0)+"px",a.style.bottom="auto")},_getElementSize(t){let n=this._size;const a=t.style.display;return(!n||this._sizeChanged)&&(n={},t.style.left="-999999px",t.style.right="auto",t.style.display="block",n.x=t.offsetWidth,n.y=t.offsetHeight,t.style.left="auto",t.style.display=a,this._sizeChanged=!1),n},_onKeyDown(t){t.keyCode===27&&this._hide()},_onItemMouseOver(t){U.DomUtil.addClass(t.target||t.srcElement,"over")},_onItemMouseOut(t){U.DomUtil.removeClass(t.target||t.srcElement,"over")}});U.Map.mergeOptions({contextmenuItems:[]}),U.Map.addInitHook("addHandler","contextmenu",di);const $0={bindContextMenu(t){return L.setOptions(this,t),this._initContextMenu(),this},unbindContextMenu(){return this.off("contextmenu",this._showContextMenu,this),this},addContextMenuItem(t){this.options.contextmenuItems.push(t)},removeContextMenuItemWithIndex(t){const n=[];for(let l=0;l<this.options.contextmenuItems.length;l++)this.options.contextmenuItems[l].index==t&&n.push(l);let a=n.pop();for(;a!==void 0;)this.options.contextmenuItems.splice(a,1),a=n.pop()},replaceContextMenuItem(t){this.removeContextMenuItemWithIndex(t.index),this.addContextMenuItem(t)},_initContextMenu(){this._items=[],this.on("contextmenu",this._showContextMenu,this)},_showContextMenu(t){let n,a,l,c,f;if(this._items=[],this._map.contextmenu){for(a=L.extend({relatedTarget:this},t),l=this._map.mouseEventToContainerPoint(t.originalEvent),this.options.contextmenuInheritItems||this._map.contextmenu.hideAllItems(),c=0,f=this.options.contextmenuItems.length;c<f;c++)n=this.options.contextmenuItems[c],this._items.push(this._map.contextmenu.insertItem(n,n.index));this._map.once("contextmenu.hide",this._hideContextMenu,this),this._map.contextmenu.showAt(l,a)}},_hideContextMenu(){let t,n;if(this._items){for(t=0,n=this._items.length;t<n;t++)this._map.contextmenu.removeItem(this._items[t]);this._items.length=0,this.options.contextmenuInheritItems||this._map.contextmenu.showAllItems()}}},yl=[U.Marker,U.Path],vl={contextmenu:!1,contextmenuItems:[],contextmenuInheritItems:!1};for(let t=0,n=yl.length;t<n;t++){const a=yl[t];a.prototype.options?a.mergeOptions(vl):a.prototype.options=vl,a.addInitHook(function(){this.options.contextmenu&&this._initContextMenu()}),a.include($0)}const fo=U.Handler.extend({options:{moveStep:10,zoomSnap:1,moveKeyCodeMap:{65:"left",68:"right",87:"top",83:"bottom"},zoomKeyCodeMap:{69:"add",81:"minus"}},enable(t){U.Util.setOptions(this,t),U.Handler.prototype.enable.call(this)},addHooks(){this._map.on("keydown",this._keyDownEvent,this)},removeHooks(){this._map.off("keydown",this._keyDownEvent,this)},_keyDownEvent(t){let n=this.options.moveKeyCodeMap[t.originalEvent.keyCode],a=this.options.zoomKeyCodeMap[t.originalEvent.keyCode];n&&this.moveByMeters(n,this.options.moveStep),a&&this.setZoom(a)},moveByMeters(t,n){let a=this._map.project(this._map.getCenter());switch(t){case"left":a.x-=n;break;case"right":a.x+=n;break;case"bottom":a.y+=n;break;case"top":a.y-=n;break}a=this._map.unproject(a),this._map.panTo(a)},setZoom(t){let n=this._map.getZoom();switch(t){case"add":n+=this.options.zoomSnap;break;case"minus":n-=this.options.zoomSnap;break}this._map.setZoom(n)}});U.Map.addInitHook("addHandler","keyboard",fo);const Al=U.LayerGroup.extend({initialize(t){U.Util.setOptions(this,t),U.LayerGroup.prototype.initialize.call(this,t)},getRasterLayers(){const t={},n=a=>{if(a._layers&&a.getLayer)for(const l in a._layers){const c=a._layers[l];c._layers&&c.getLayer?n(c):t[c._leaflet_id]=c}else t[a._leaflet_id]=a};return n(this),t},removeRasterLayer(t){const n=function(a){if(a._layers&&a.getLayer&&a.getLayer(t)){const l=a.getLayer(t);a.removeLayer(l)}else if(a._layers)for(const l in a._layers){const c=a._layers[l];if(c._layers&&c.getLayer&&c.getLayer(t)){const f=c.getLayer(t);c.removeLayer(f)}else c._layers&&n(c)}};n(this)},getRasterTop(){const t=Object.values(this.getRasterLayers());return t.length?Math.max(...t.map(n=>n.options.zIndex))+1:null}}),W0=L.Class.extend({options:{pixelSize:10,pathOptions:{}},initialize:function(t){L.Util.setOptions(this,t),this.options.pathOptions.clickable=!1},buildSymbol:function(t,n,a,l,c){const f=this.options,p=Math.PI/180;if(f.pixelSize<=1)return L.polyline([t.latLng,t.latLng],f.pathOptions);const g=a.project(t.latLng),A=-(t.heading-90)*p,k=L.point(g.x+f.pixelSize*Math.cos(A+Math.PI)/2,g.y+f.pixelSize*Math.sin(A)/2),C=g.add(g.subtract(k));return L.polyline([a.unproject(k),a.unproject(C)],f.pathOptions)}}),K0=L.Class.extend({options:{polygon:!0,pixelSize:10,headAngle:60,pathOptions:{stroke:!1,weight:2}},initialize:function(t){L.Util.setOptions(this,t),this.options.pathOptions.clickable=!1},buildSymbol:function(t,n,a,l,c){return this.options.polygon?L.polygon(this._buildArrowPath(t,a),this.options.pathOptions):L.polyline(this._buildArrowPath(t,a),this.options.pathOptions)},_buildArrowPath:function(t,n){const a=Math.PI/180,l=n.project(t.latLng),c=-(t.heading-90)*a,f=this.options.headAngle/2*a,p=c+f,g=c-f,A=L.point(l.x-this.options.pixelSize*Math.cos(p),l.y+this.options.pixelSize*Math.sin(p)),k=L.point(l.x-this.options.pixelSize*Math.cos(g),l.y+this.options.pixelSize*Math.sin(g));return[n.unproject(A),t.latLng,n.unproject(k)]}}),X0=L.Class.extend({options:{markerOptions:{},rotation:!1},initialize:function(t){L.Util.setOptions(this,t),this.options.markerOptions.clickable=!1,this.options.markerOptions.draggable=!1},buildSymbol:function(t,n,a,l,c){return this.options.rotation&&(this.options.markerOptions.rotationAngle=t.heading+(this.options.angleCorrection||0)),L.marker(t.latLng,this.options.markerOptions)}}),Y0={Dash:W0,ArrowHead:K0,Marker:X0};function J0(t,n){const a=n.x-t.x,l=n.y-t.y;return Math.sqrt(a*a+l*l)}const Q0=(t,n)=>(Math.atan2(n.y-t.y,n.x-t.x)*180/Math.PI+90+360)%360,po=({value:t,isInPixels:n},a)=>n?t/a:t;function _o(t){if(typeof t=="string"&&t.indexOf("%")!==-1)return{value:parseFloat(t)/100,isInPixels:!1};const n=t?parseFloat(t):0;return{value:n,isInPixels:n>0}}const tp=(t,n)=>t.x===n.x&&t.y===n.y;function ep(t){return t.reduce((n,a,l,c)=>{if(l>0&&!tp(a,c[l-1])){const f=c[l-1],p=n.length>0?n[n.length-1].distB:0,g=J0(f,a);n.push({a:f,b:a,distA:p,distB:p+g,heading:Q0(f,a)})}return n},[])}function ip(t,n){const a=ep(t),l=a.length;if(l===0)return[];const c=a[l-1].distB,f=po(n.offset,c),p=po(n.endOffset,c),g=po(n.repeat,c),A=c*g,k=f>0?c*f:0,C=p>0?c*p:0,x=[];let b=k;do x.push(b),b+=A;while(A>0&&b<c-C);let T=0,G=a[0];return x.map(Z=>{for(;Z>G.distB&&T<l-1;)T++,G=a[T];const K=(Z-G.distA)/(G.distB-G.distA);return{pt:np(G.a,G.b,K),heading:G.heading}})}function np(t,n,a){return n.x!==t.x?{x:t.x+a*(n.x-t.x),y:t.y+a*(n.y-t.y)}:{x:t.x,y:t.y+(n.y-t.y)*a}}const sp=t=>t instanceof L.LatLng||Array.isArray(t)&&t.length===2&&typeof t[0]=="number",ap=t=>Array.isArray(t)&&sp(t[0]),rp=L.FeatureGroup.extend({options:{patterns:[]},initialize:function(t,n){L.FeatureGroup.prototype.initialize.call(this),L.Util.setOptions(this,n),this._map=null,this._paths=this._initPaths(t),this._bounds=this._initBounds(),this._patterns=this._initPatterns(this.options.patterns)},_initPaths:function(t,n){return ap(t)?[n?t.concat([t[0]]):t]:t instanceof L.Polyline?this._initPaths(t.getLatLngs(),t instanceof L.Polygon):Array.isArray(t)?t.reduce((a,l)=>a.concat(this._initPaths(l,n)),[]):[]},_initPatterns:function(t){return t.map(this._parsePatternDef)},setPatterns:function(t){this.options.patterns=t,this._patterns=this._initPatterns(this.options.patterns),this.redraw()},setPaths:function(t){this._paths=this._initPaths(t),this._bounds=this._initBounds(),this.redraw()},_parsePatternDef:function(t,n){return{symbolFactory:t.symbol,offset:_o(t.offset),endOffset:_o(t.endOffset),repeat:_o(t.repeat)}},onAdd:function(t){this._map=t,this._draw(),this._map.on("moveend",this.redraw,this)},onRemove:function(t){this._map.off("moveend",this.redraw,this),this._map=null,L.FeatureGroup.prototype.onRemove.call(this,t)},_initBounds:function(){const t=this._paths.reduce((n,a)=>n.concat(a),[]);return L.latLngBounds(t)},getBounds:function(){return this._bounds},_buildSymbols:function(t,n,a){return a.map((l,c)=>n.buildSymbol(l,t,this._map,c,a.length))},_getDirectionPoints:function(t,n){if(t.length<2)return[];const a=t.map(l=>this._map.project(l));return ip(a,n).map(l=>({latLng:this._map.unproject(L.point(l.pt)),heading:l.heading}))},redraw:function(){this._map&&(this.clearLayers(),this._draw())},_getPatternLayers:function(t){const n=this._map.getBounds().pad(.1);return this._paths.map(a=>{const l=this._getDirectionPoints(a,t).filter(c=>n.contains(c.latLng));return L.featureGroup(this._buildSymbols(a,t.symbolFactory,l))})},_draw:function(){this._patterns.map(t=>this._getPatternLayers(t)).forEach(t=>{this.addLayer(L.featureGroup(t))})}});function op(t){const n=document.createElement("style"),a=document.head||document.documentElement;n.innerHTML=`
|
|
10
10
|
.${t}-statusbar {
|
|
11
11
|
display: flex;
|
|
12
12
|
color: #fff;
|
|
@@ -181,4 +181,4 @@ northing meters`+t;var C=x/2,T=0,G=0,j,W,at,rt,ct;return C>0&&(j=1e5/Math.pow(10
|
|
|
181
181
|
filter: alpha(opacity=0);
|
|
182
182
|
}
|
|
183
183
|
}
|
|
184
|
-
`,
|
|
184
|
+
`,a.appendChild(n)}(t=>{const n=Object.create(L)||{};return n.LANG=Or,n.BaseMap=L.Map.extend({options:{doubleClickZoom:!1,closePopupOnClick:!1,zoomControl:!1,attributionControl:!1,scaleControl:{show:!0},minZoom:5,maxZoom:19,contextmenu:!0,center:[0,0],zoom:17},initialize(a,l={},c){var f;if(typeof a=="string"&&(a=document.getElementById(a)),!a instanceof HTMLElement||!a.clientWidth||!a.clientHeight)throw new Error("地图容器不存在或元素尺寸为0");this.lang=typeof l.lang=="string"?l.lang:"zh_CN",this.clsPrefix=typeof l.clsPrefix=="string"?l.clsPrefix:"gis2d",op(this.clsPrefix),L.Util.setOptions(this,l),L.Layer.mergeOptions({clsPrefix:this.clsPrefix}),L.Control.mergeOptions({clsPrefix:this.clsPrefix}),L.Control.Zoom.mergeOptions({position:((f=this.options.zoomControl)==null?void 0:f.position)||"topleft",zoomInTitle:Or[this.lang].zoomIn,zoomOutTitle:Or[this.lang].zoomOut}),L.Control.Attribution.mergeOptions({prefix:`<a href="http://www.${this.clsPrefix}.com" target="_blank">Guo.Yan</a>`}),L.Map.prototype.initialize.call(this,a,this.options),L.DomEvent.on(this._container,"click",p=>{var A;const g=this._container.querySelector(".add");g&&(g.style.display="none"),(A=this.contextmenu)==null||A.hide()},this),l.debug?(document.onselectstart=()=>l.debug.allowSelect,a.oncontextmenu=()=>l.debug.allowContextmenu,document.onkeydown=function(p){if(p&&p.keyCode===123)return l.debug.allowDevtool}):process.env.NODE_ENV!=="development"&&(document.onkeydown=function(p){if(p&&p.keyCode===123)return!1},a.oncontextmenu=()=>!1),t[c||"$m"]=this},getCursor(){return this.getContainer().style.cursor||"default"},setCursor(a="default"){const l=this.getContainer();["auto","pointer","crosshair","move","text","wait","help","grab","default"].includes(a)?l.style.cursor=`${a}`:a==="draw"?l.style.cursor="url(data:application/octet-stream;base64,AAACAAEAEBAAAAMABgBoBQAAFgAAACgAAAAQAAAAIAAAAAEACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AACxAAAs6/oAAIKEAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQUAAAAAAAAAAAAAAAAAAAUFBQAAAAAAAAAAAAAAAAAFAwQAAAAAAAAAAAAAAAAAAAMDBAAAAAAAAAEBAQAAAAADAwQAAAAAAAABAQEAAAAAAAMDBAQAAAAAAQEBAAAAAAADAwIAAAAAAAAAAAAAAAAAAAIBAQAAAAAAAAAAAAAAAAABAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//AAD//wAA/v8AAP4/AAD+HwAA/g8AAP4PAAD+BwAAxwcAAMcDAADHgwAA/8EAAP/BAAD/5wAA//8AAP//AAA=), auto":l.style.cursor=`url(${a}), auto`},flyTo(a,l=0,c={animate:!1}){a instanceof L.Marker?(a=a._latlng,L.Map.prototype.flyTo.call(this,a,l||this.getZoom(),c)):a instanceof L.Path||a instanceof L.FeatureGroup?(a=a.getBounds(),L.Map.prototype.flyToBounds.call(this,a,c)):L.Map.prototype.flyTo.call(this,a,l||this.getZoom(),c)},getLayer(a){return this._layers[a]},getLayers(){return Object.values(this._layers)}}),n.StatusBar=Ir,n.CRS.BaiDu=ro,n.WebMercatorTiledLayer=U0,n.BlinkMarker=ul,n.CanvasMarker=cl,n.HeatLayer=uo,n.WMTS=H0,n.WMS=fe,n.Knob=gl,n.Draw=Oa,n.ContextMenu=di,n.KeyBoard=fo,n.EagleMap=Rr,n.LayerManager=Al,n.ImageOverlay.Rotated=Z0,n.Text=ll,n.VertexMarkers=Gr,n.Measurement=ls,n.Collision=N0,n.Symbol=Y0,n.PolylineDecorator=rp,t.L=n})(window);function mo(){if(typeof globalThis<"u")return globalThis;if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof global<"u")return global;throw new Error("未找到全局对象")}const go=function(t,n={}){go.installed||(mo().Gis=Sl)};mo().Vue&&go(mo().Vue);const hp={install:go};Jt.BaiDuCRS=ro,Jt.BlinkMarker=ul,Jt.CanvasMarker=cl,Jt.ContextMenu=di,Jt.Draw=Oa,Jt.EagleMap=Rr,Jt.KeyBoard=fo,Jt.Knob=gl,Jt.LayerManager=Al,Jt.MeasureMent=ls,Jt.StatusBar=Ir,Jt.TextMarker=ll,Jt.VertexMarker=Gr,Jt.default=hp,Object.defineProperties(Jt,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|