@antv/aimapui 0.2.1 → 0.3.0

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.
@@ -1,37 +1 @@
1
- var AimapUI=(function(J,p,tB,NI){"use strict";function iB(I){return I&&I.__esModule&&Object.prototype.hasOwnProperty.call(I,"default")?I.default:I}var Vg={exports:{}},Ng={};/**
2
- * @license React
3
- * react-jsx-runtime.production.min.js
4
- *
5
- * Copyright (c) Facebook, Inc. and its affiliates.
6
- *
7
- * This source code is licensed under the MIT license found in the
8
- * LICENSE file in the root directory of this source tree.
9
- */var ze;function CB(){if(ze)return Ng;ze=1;var I=p,A=Symbol.for("react.element"),g=Symbol.for("react.fragment"),e=Object.prototype.hasOwnProperty,t=I.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,i={key:!0,ref:!0,__self:!0,__source:!0};function r(o,E,B){var C,s={},a=null,Q=null;B!==void 0&&(a=""+B),E.key!==void 0&&(a=""+E.key),E.ref!==void 0&&(Q=E.ref);for(C in E)e.call(E,C)&&!i.hasOwnProperty(C)&&(s[C]=E[C]);if(o&&o.defaultProps)for(C in E=o.defaultProps,E)s[C]===void 0&&(s[C]=E[C]);return{$$typeof:A,type:o,key:a,ref:Q,props:s,_owner:t.current}}return Ng.Fragment=g,Ng.jsx=r,Ng.jsxs=r,Ng}var kg={};/**
10
- * @license React
11
- * react-jsx-runtime.development.js
12
- *
13
- * Copyright (c) Facebook, Inc. and its affiliates.
14
- *
15
- * This source code is licensed under the MIT license found in the
16
- * LICENSE file in the root directory of this source tree.
17
- */var We;function BB(){return We||(We=1,process.env.NODE_ENV!=="production"&&(function(){var I=p,A=Symbol.for("react.element"),g=Symbol.for("react.portal"),e=Symbol.for("react.fragment"),t=Symbol.for("react.strict_mode"),i=Symbol.for("react.profiler"),r=Symbol.for("react.provider"),o=Symbol.for("react.context"),E=Symbol.for("react.forward_ref"),B=Symbol.for("react.suspense"),C=Symbol.for("react.suspense_list"),s=Symbol.for("react.memo"),a=Symbol.for("react.lazy"),Q=Symbol.for("react.offscreen"),n=Symbol.iterator,f="@@iterator";function c(L){if(L===null||typeof L!="object")return null;var j=n&&L[n]||L[f];return typeof j=="function"?j:null}var h=I.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function w(L){{for(var j=arguments.length,$=new Array(j>1?j-1:0),tA=1;tA<j;tA++)$[tA-1]=arguments[tA];D("error",L,$)}}function D(L,j,$){{var tA=h.ReactDebugCurrentFrame,nA=tA.getStackAddendum();nA!==""&&(j+="%s",$=$.concat([nA]));var cA=$.map(function(EA){return String(EA)});cA.unshift("Warning: "+j),Function.prototype.apply.call(console[L],console,cA)}}var d=!1,y=!1,S=!1,l=!1,G=!1,F;F=Symbol.for("react.module.reference");function k(L){return!!(typeof L=="string"||typeof L=="function"||L===e||L===i||G||L===t||L===B||L===C||l||L===Q||d||y||S||typeof L=="object"&&L!==null&&(L.$$typeof===a||L.$$typeof===s||L.$$typeof===r||L.$$typeof===o||L.$$typeof===E||L.$$typeof===F||L.getModuleId!==void 0))}function m(L,j,$){var tA=L.displayName;if(tA)return tA;var nA=j.displayName||j.name||"";return nA!==""?$+"("+nA+")":$}function M(L){return L.displayName||"Context"}function N(L){if(L==null)return null;if(typeof L.tag=="number"&&w("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),typeof L=="function")return L.displayName||L.name||null;if(typeof L=="string")return L;switch(L){case e:return"Fragment";case g:return"Portal";case i:return"Profiler";case t:return"StrictMode";case B:return"Suspense";case C:return"SuspenseList"}if(typeof L=="object")switch(L.$$typeof){case o:var j=L;return M(j)+".Consumer";case r:var $=L;return M($._context)+".Provider";case E:return m(L,L.render,"ForwardRef");case s:var tA=L.displayName||null;return tA!==null?tA:N(L.type)||"Memo";case a:{var nA=L,cA=nA._payload,EA=nA._init;try{return N(EA(cA))}catch{return null}}}return null}var b=Object.assign,U=0,R,H,T,V,P,q,v;function Z(){}Z.__reactDisabledLog=!0;function K(){{if(U===0){R=console.log,H=console.info,T=console.warn,V=console.error,P=console.group,q=console.groupCollapsed,v=console.groupEnd;var L={configurable:!0,enumerable:!0,value:Z,writable:!0};Object.defineProperties(console,{info:L,log:L,warn:L,error:L,group:L,groupCollapsed:L,groupEnd:L})}U++}}function O(){{if(U--,U===0){var L={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:b({},L,{value:R}),info:b({},L,{value:H}),warn:b({},L,{value:T}),error:b({},L,{value:V}),group:b({},L,{value:P}),groupCollapsed:b({},L,{value:q}),groupEnd:b({},L,{value:v})})}U<0&&w("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}}var x=h.ReactCurrentDispatcher,W;function _(L,j,$){{if(W===void 0)try{throw Error()}catch(nA){var tA=nA.stack.trim().match(/\n( *(at )?)/);W=tA&&tA[1]||""}return`
18
- `+W+L}}var gA=!1,iA;{var AA=typeof WeakMap=="function"?WeakMap:Map;iA=new AA}function z(L,j){if(!L||gA)return"";{var $=iA.get(L);if($!==void 0)return $}var tA;gA=!0;var nA=Error.prepareStackTrace;Error.prepareStackTrace=void 0;var cA;cA=x.current,x.current=null,K();try{if(j){var EA=function(){throw Error()};if(Object.defineProperty(EA.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(EA,[])}catch(NA){tA=NA}Reflect.construct(L,[],EA)}else{try{EA.call()}catch(NA){tA=NA}L.call(EA.prototype)}}else{try{throw Error()}catch(NA){tA=NA}L()}}catch(NA){if(NA&&tA&&typeof NA.stack=="string"){for(var sA=NA.stack.split(`
19
- `),pA=tA.stack.split(`
20
- `),DA=sA.length-1,wA=pA.length-1;DA>=1&&wA>=0&&sA[DA]!==pA[wA];)wA--;for(;DA>=1&&wA>=0;DA--,wA--)if(sA[DA]!==pA[wA]){if(DA!==1||wA!==1)do if(DA--,wA--,wA<0||sA[DA]!==pA[wA]){var MA=`
21
- `+sA[DA].replace(" at new "," at ");return L.displayName&&MA.includes("<anonymous>")&&(MA=MA.replace("<anonymous>",L.displayName)),typeof L=="function"&&iA.set(L,MA),MA}while(DA>=1&&wA>=0);break}}}finally{gA=!1,x.current=cA,O(),Error.prepareStackTrace=nA}var Lg=L?L.displayName||L.name:"",rg=Lg?_(Lg):"";return typeof L=="function"&&iA.set(L,rg),rg}function eA(L,j,$){return z(L,!1)}function BA(L){var j=L.prototype;return!!(j&&j.isReactComponent)}function IA(L,j,$){if(L==null)return"";if(typeof L=="function")return z(L,BA(L));if(typeof L=="string")return _(L);switch(L){case B:return _("Suspense");case C:return _("SuspenseList")}if(typeof L=="object")switch(L.$$typeof){case E:return eA(L.render);case s:return IA(L.type,j,$);case a:{var tA=L,nA=tA._payload,cA=tA._init;try{return IA(cA(nA),j,$)}catch{}}}return""}var rA=Object.prototype.hasOwnProperty,mA={},CA=h.ReactDebugCurrentFrame;function QA(L){if(L){var j=L._owner,$=IA(L.type,L._source,j?j.type:null);CA.setExtraStackFrame($)}else CA.setExtraStackFrame(null)}function oA(L,j,$,tA,nA){{var cA=Function.call.bind(rA);for(var EA in L)if(cA(L,EA)){var sA=void 0;try{if(typeof L[EA]!="function"){var pA=Error((tA||"React class")+": "+$+" type `"+EA+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof L[EA]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw pA.name="Invariant Violation",pA}sA=L[EA](j,EA,tA,$,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(DA){sA=DA}sA&&!(sA instanceof Error)&&(QA(nA),w("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",tA||"React class",$,EA,typeof sA),QA(null)),sA instanceof Error&&!(sA.message in mA)&&(mA[sA.message]=!0,QA(nA),w("Failed %s type: %s",$,sA.message),QA(null))}}}var X=Array.isArray;function hA(L){return X(L)}function PA(L){{var j=typeof Symbol=="function"&&Symbol.toStringTag,$=j&&L[Symbol.toStringTag]||L.constructor.name||"Object";return $}}function zA(L){try{return gg(L),!1}catch{return!0}}function gg(L){return""+L}function Ig(L){if(zA(L))return w("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",PA(L)),gg(L)}var LI=h.ReactCurrentOwner,nE={key:!0,ref:!0,__self:!0,__source:!0},PC,zC;function cE(L){if(rA.call(L,"ref")){var j=Object.getOwnPropertyDescriptor(L,"ref").get;if(j&&j.isReactWarning)return!1}return L.ref!==void 0}function lE(L){if(rA.call(L,"key")){var j=Object.getOwnPropertyDescriptor(L,"key").get;if(j&&j.isReactWarning)return!1}return L.key!==void 0}function hE(L,j){typeof L.ref=="string"&&LI.current}function fE(L,j){{var $=function(){PC||(PC=!0,w("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",j))};$.isReactWarning=!0,Object.defineProperty(L,"key",{get:$,configurable:!0})}}function dE(L,j){{var $=function(){zC||(zC=!0,w("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",j))};$.isReactWarning=!0,Object.defineProperty(L,"ref",{get:$,configurable:!0})}}var uE=function(L,j,$,tA,nA,cA,EA){var sA={$$typeof:A,type:L,key:j,ref:$,props:EA,_owner:cA};return sA._store={},Object.defineProperty(sA._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(sA,"_self",{configurable:!1,enumerable:!1,writable:!1,value:tA}),Object.defineProperty(sA,"_source",{configurable:!1,enumerable:!1,writable:!1,value:nA}),Object.freeze&&(Object.freeze(sA.props),Object.freeze(sA)),sA};function DE(L,j,$,tA,nA){{var cA,EA={},sA=null,pA=null;$!==void 0&&(Ig($),sA=""+$),lE(j)&&(Ig(j.key),sA=""+j.key),cE(j)&&(pA=j.ref,hE(j,nA));for(cA in j)rA.call(j,cA)&&!nE.hasOwnProperty(cA)&&(EA[cA]=j[cA]);if(L&&L.defaultProps){var DA=L.defaultProps;for(cA in DA)EA[cA]===void 0&&(EA[cA]=DA[cA])}if(sA||pA){var wA=typeof L=="function"?L.displayName||L.name||"Unknown":L;sA&&fE(EA,wA),pA&&dE(EA,wA)}return uE(L,sA,pA,nA,tA,LI.current,EA)}}var je=h.ReactCurrentOwner,WC=h.ReactDebugCurrentFrame;function Gg(L){if(L){var j=L._owner,$=IA(L.type,L._source,j?j.type:null);WC.setExtraStackFrame($)}else WC.setExtraStackFrame(null)}var Ze;Ze=!1;function _e(L){return typeof L=="object"&&L!==null&&L.$$typeof===A}function XC(){{if(je.current){var L=N(je.current.type);if(L)return`
22
-
23
- Check the render method of \``+L+"`."}return""}}function wE(L){return""}var $C={};function yE(L){{var j=XC();if(!j){var $=typeof L=="string"?L:L.displayName||L.name;$&&(j=`
24
-
25
- Check the top-level render call using <`+$+">.")}return j}}function AB(L,j){{if(!L._store||L._store.validated||L.key!=null)return;L._store.validated=!0;var $=yE(j);if($C[$])return;$C[$]=!0;var tA="";L&&L._owner&&L._owner!==je.current&&(tA=" It was passed a child from "+N(L._owner.type)+"."),Gg(L),w('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',$,tA),Gg(null)}}function gB(L,j){{if(typeof L!="object")return;if(hA(L))for(var $=0;$<L.length;$++){var tA=L[$];_e(tA)&&AB(tA,j)}else if(_e(L))L._store&&(L._store.validated=!0);else if(L){var nA=c(L);if(typeof nA=="function"&&nA!==L.entries)for(var cA=nA.call(L),EA;!(EA=cA.next()).done;)_e(EA.value)&&AB(EA.value,j)}}}function SE(L){{var j=L.type;if(j==null||typeof j=="string")return;var $;if(typeof j=="function")$=j.propTypes;else if(typeof j=="object"&&(j.$$typeof===E||j.$$typeof===s))$=j.propTypes;else return;if($){var tA=N(j);oA($,L.props,"prop",tA,L)}else if(j.PropTypes!==void 0&&!Ze){Ze=!0;var nA=N(j);w("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",nA||"Unknown")}typeof j.getDefaultProps=="function"&&!j.getDefaultProps.isReactClassApproved&&w("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}function pE(L){{for(var j=Object.keys(L.props),$=0;$<j.length;$++){var tA=j[$];if(tA!=="children"&&tA!=="key"){Gg(L),w("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",tA),Gg(null);break}}L.ref!==null&&(Gg(L),w("Invalid attribute `ref` supplied to `React.Fragment`."),Gg(null))}}var IB={};function eB(L,j,$,tA,nA,cA){{var EA=k(L);if(!EA){var sA="";(L===void 0||typeof L=="object"&&L!==null&&Object.keys(L).length===0)&&(sA+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");var pA=wE();pA?sA+=pA:sA+=XC();var DA;L===null?DA="null":hA(L)?DA="array":L!==void 0&&L.$$typeof===A?(DA="<"+(N(L.type)||"Unknown")+" />",sA=" Did you accidentally export a JSX literal instead of a component?"):DA=typeof L,w("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",DA,sA)}var wA=DE(L,j,$,nA,cA);if(wA==null)return wA;if(EA){var MA=j.children;if(MA!==void 0)if(tA)if(hA(MA)){for(var Lg=0;Lg<MA.length;Lg++)gB(MA[Lg],L);Object.freeze&&Object.freeze(MA)}else w("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else gB(MA,L)}if(rA.call(j,"key")){var rg=N(L),NA=Object.keys(j).filter(function(mE){return mE!=="key"}),Pe=NA.length>0?"{key: someKey, "+NA.join(": ..., ")+": ...}":"{key: someKey}";if(!IB[rg+Pe]){var FE=NA.length>0?"{"+NA.join(": ..., ")+": ...}":"{}";w(`A props object containing a "key" prop is being spread into JSX:
26
- let props = %s;
27
- <%s {...props} />
28
- React keys must be passed directly to JSX without using spread:
29
- let props = %s;
30
- <%s key={someKey} {...props} />`,Pe,rg,FE,rg),IB[rg+Pe]=!0}}return L===e?pE(wA):SE(wA),wA}}function GE(L,j,$){return eB(L,j,$,!0)}function LE(L,j,$){return eB(L,j,$,!1)}var NE=LE,kE=GE;kg.Fragment=e,kg.jsx=NE,kg.jsxs=kE})()),kg}var Xe;function oB(){return Xe||(Xe=1,process.env.NODE_ENV==="production"?Vg.exports=CB():Vg.exports=BB()),Vg.exports}var u=oB();const RA={basemap:"map",center:[105,35],zoom:4,pitch:0,rotation:0};function jg(I){return{basemap:I.basemap??RA.basemap,token:I.token,style:I.style,center:I.center??[...RA.center],zoom:I.zoom??RA.zoom,pitch:I.pitch??RA.pitch,rotation:I.rotation??RA.rotation,minZoom:I.minZoom,maxZoom:I.maxZoom,bounds:I.bounds,gestureConfig:I.gestureConfig}}let rB=0;function sB(){return`aimap-layer-${++rB}`}function $e(I){return{id:I.id??sB(),type:I.type,name:I.name??I.type,visible:I.visible??!0,zIndex:I.zIndex??0,minZoom:I.minZoom,maxZoom:I.maxZoom,autoFit:I.autoFit??!1,source:I.source,sourceType:I.sourceType,sourceConfig:I.sourceConfig,color:I.color,colorField:I.colorField,colorValues:I.colorValues,size:I.size,sizeField:I.sizeField,sizeValues:I.sizeValues,shape:I.shape,shapeField:I.shapeField,shapeValues:I.shapeValues,style:I.style,filterField:I.filterField,filterValues:I.filterValues,animate:I.animate,active:I.active,select:I.select,events:I.events}}const QB={zoom:"topright",scale:"bottomleft",fullscreen:"topright",geoLocate:"topright",mapTheme:"topright",mouseLocation:"bottomright",exportImage:"topright",layerSwitch:"topright"};function At(I){return{type:I.type,position:I.position??QB[I.type]??"topright",options:I.options}}const EB={breakpoint:768};function aB(I){return{breakpoint:(I==null?void 0:I.breakpoint)??EB.breakpoint,mobile:I==null?void 0:I.mobile}}function kI(I){return{map:jg(I.map),layers:(I.layers??[]).map($e),controls:(I.controls??[]).map(At),interactions:I.interactions??[],legends:I.legends??[],responsive:I.responsive?aB(I.responsive):void 0,events:I.events}}function gt(I){return kI(I)}function nB(I){const A=[];if(I.basemap||A.push("map.basemap is required"),I.center){const[g,e]=I.center;(g<-180||g>180)&&A.push("map.center[0] (longitude) must be between -180 and 180"),(e<-90||e>90)&&A.push("map.center[1] (latitude) must be between -90 and 90")}return A}function cB(I,A){const g=[];return I.type||g.push(`layers[${A}].type is required`),I.source===void 0&&I.source,I.colorField&&!I.colorValues&&I.color,g}function lB(I){const A=[];return A.push(...nB(I.map)),(I.layers??[]).forEach((g,e)=>{A.push(...cB(g,e))}),{valid:A.length===0,errors:A}}const It=p.createContext(null);function et({schema:I,children:A}){return u.jsx(It.Provider,{value:I,children:A})}function hB(){return p.useContext(It)}class tt{constructor(){this.listeners=new Map}on(A,g){return this.listeners.has(A)||this.listeners.set(A,new Set),this.listeners.get(A).add(g),()=>{var e;(e=this.listeners.get(A))==null||e.delete(g)}}once(A,g){const e=(...i)=>{g(...i),t()},t=this.on(A,e);return t}emit(A,...g){const e=this.listeners.get(A);e&&e.forEach(t=>{try{t(...g)}catch(i){console.error(`[aimapui EventBus] Error in event "${A}":`,i)}})}off(A){this.listeners.delete(A)}clear(){this.listeners.clear()}}function it(){return new tt}const Ct=p.createContext(null);function Bt({events:I,children:A}){const g=p.useRef(null);return g.current||(g.current=it()),p.useEffect(()=>{if(!I||!g.current)return;const e=g.current,t=[];for(const[i,r]of Object.entries(I))r&&t.push(e.on(i,r));return()=>{t.forEach(i=>i())}},[I]),u.jsx(Ct.Provider,{value:g.current,children:A})}function FI(){const I=p.useContext(Ct);if(!I)throw new Error("[aimapui] useEventBus must be used within an EventBusProvider");return I}const ot=p.createContext({resolvedTheme:"light",theme:"light",setTheme:()=>{},toggleTheme:()=>{}});function rt({defaultTheme:I="light",target:A="container",children:g}){const[e,t]=p.useState(I),[i,r]=p.useState("light");p.useEffect(()=>{const C=window.matchMedia("(prefers-color-scheme: dark)");r(C.matches?"dark":"light");const s=a=>{r(a.matches?"dark":"light")};return C.addEventListener("change",s),()=>C.removeEventListener("change",s)},[]);const o=e==="system"?i:e,E=p.useCallback(()=>{t(C=>C==="system"?i==="light"?"dark":"light":C==="light"?"dark":"light")},[i]);p.useEffect(()=>{A==="root"&&document.documentElement.setAttribute("data-theme",o)},[o,A]);const B=p.useMemo(()=>({resolvedTheme:o,theme:e,setTheme:t,toggleTheme:E}),[o,e,E]);return u.jsx(ot.Provider,{value:B,children:A==="container"?u.jsx("div",{"data-theme":o,style:{display:"contents"},children:g}):g})}function st(){return p.useContext(ot)}const fB=p.createContext({isMobile:!1,breakpoint:768,width:typeof window<"u"?window.innerWidth:1024,schema:void 0});function dB({responsive:I,children:A}){const[g,e]=p.useState(typeof window<"u"?window.innerWidth:1024);p.useEffect(()=>{let o;const E=()=>{cancelAnimationFrame(o),o=requestAnimationFrame(()=>e(window.innerWidth))};return window.addEventListener("resize",E),()=>{window.removeEventListener("resize",E),cancelAnimationFrame(o)}},[]);const t=(I==null?void 0:I.breakpoint)??768,i=g<t,r=p.useMemo(()=>({isMobile:i,breakpoint:t,width:g,schema:I}),[i,t,g,I]);return u.jsx(fB.Provider,{value:r,children:A})}const Qt=p.createContext(null);function Et({scene:I,children:A}){const g=p.useRef(I);return g.current=I,u.jsx(Qt.Provider,{value:g.current,children:A})}function uA(){return p.useContext(Qt)}async function at(I){var i,r,o;const A=I.basemap??RA.basemap,g=I.token??"",e=I.style??"normal",t={center:I.center??RA.center,zoom:I.zoom??RA.zoom,pitch:I.pitch??RA.pitch,rotation:I.rotation??RA.rotation,minZoom:I.minZoom,maxZoom:I.maxZoom,dragEnable:((i=I.gestureConfig)==null?void 0:i.dragPan)??!0,zoomEnable:((r=I.gestureConfig)==null?void 0:r.pinchZoom)??!0,rotateEnable:((o=I.gestureConfig)==null?void 0:o.dragRotate)??!0};switch(A){case"gaode":{const{GaodeMap:E}=await import("@antv/l7-maps/gaode");return new E({...t,style:uB(e),token:g})}case"mapbox":{const{Mapbox:E}=await import("@antv/l7-maps/mapbox");return new E({...t,style:DB(e),token:g})}case"tianditu":{const{TMap:E}=await import("@antv/l7-maps/tianditu");return new E({...t,token:g})}case"tencent":{const{TencentMap:E}=await import("@antv/l7-maps/tencent");return new E({...t,token:g})}case"baidu":{const{BaiduMap:E}=await import("@antv/l7-maps/baidu");return new E({...t,style:wB(e),token:g})}case"maplibre":{const{MapLibre:E}=await import("@antv/l7-maps/maplibre");return new E({...t,style:SB(e),token:g})}case"google":{const{GoogleMap:E}=await import("@antv/l7-maps/google"),B=new E({...t,style:yB(e),token:g});return pB(B),B}case"map":default:{const{Map:E}=await import("@antv/l7-maps/simple");return new E({center:I.center??RA.center,zoom:I.zoom??RA.zoom})}}}function uB(I){return{light:"light",dark:"dark",normal:"normal",darkblue:"dark",satellite:"satellite"}[I]??I}function DB(I){return{light:"https://tiles.openfreemap.org/styles/positron",dark:"https://tiles.openfreemap.org/styles/dark",normal:"https://tiles.openfreemap.org/styles/bright",liberty:"https://tiles.openfreemap.org/styles/liberty",fiord:"https://tiles.openfreemap.org/styles/fiord"}[I]??I}function wB(I){return{light:"light",dark:"dark",normal:"normal",darkblue:"dark",satellite:"satellite"}[I]??I}function yB(I){return{light:"roadmap",dark:"roadmap",normal:"roadmap",darkblue:"roadmap",satellite:"satellite",hybrid:"hybrid",terrain:"terrain"}[I]??"roadmap"}function SB(I){return{light:"https://tiles.openfreemap.org/styles/positron",dark:"https://tiles.openfreemap.org/styles/dark",normal:"https://tiles.openfreemap.org/styles/bright",liberty:"https://tiles.openfreemap.org/styles/liberty",fiord:"https://tiles.openfreemap.org/styles/fiord"}[I]??I}function pB(I){const A=["zoomControl","mapTypeControl","streetViewControl","fullscreenControl","scaleControl","rotateControl","panControl"],g={};for(const r of A)g[r]=!1;const e=()=>{const r=I.map;if(!r||typeof r.setOptions!="function")return!1;r.setOptions(g);const o=r.setOptions.bind(r);return r.setOptions=E=>{const B={...E};for(const C of A)C in B&&delete B[C];o(B)},!0};if(e())return;let t=0;const i=setInterval(()=>{t+=1,(e()||t>40)&&clearInterval(i)},100)}function nt({mapSchema:I,children:A,onSceneReady:g,mapEventHandlers:e,events:t,className:i,style:r}){const o=p.useRef(null),E=p.useRef(null),[B,C]=p.useState(null),s=p.useRef(g);s.current=g;const a=p.useRef(e);a.current=e;const Q=FI(),n=p.useCallback((w,D)=>{var l,G,F;if(D.basemap==="map")return;const d=((l=D.gestureConfig)==null?void 0:l.dragPan)??!0,y=((G=D.gestureConfig)==null?void 0:G.pinchZoom)??!0,S=((F=D.gestureConfig)==null?void 0:F.dragRotate)??!0;try{const k=w.mapService;k&&typeof k.setMapStatus=="function"&&k.setMapStatus({dragEnable:d,zoomEnable:y,rotateEnable:S,doubleClickZoom:y})}catch{}},[]);p.useEffect(()=>{if(!o.current)return;let w=!1;const D=jg(I);at(D).then(y=>{if(w||!o.current)return;const S=new tB.Scene({id:o.current,map:y});E.current=S,S.on("loaded",()=>{var l;w||(n(S,D),C(S),(l=s.current)==null||l.call(s,S),d(S))}),D.bounds&&S.on("loaded",()=>{try{const[l,G]=D.bounds;S.fitBounds([l[0],l[1],G[0],G[1]])}catch{}})});function d(y){y.on("mapmove",()=>{var l,G;const S={originalEvent:null,center:[y.getCenter().lng,y.getCenter().lat],zoom:y.getZoom(),pitch:y.getPitch(),rotation:y.getRotation()};(G=(l=a.current)==null?void 0:l.onMove)==null||G.call(l,S),t!=null&&t.mapMove&&Q.emit(t.mapMove,S)}),y.on("zoomchange",()=>{var l,G;const S={originalEvent:null,center:[y.getCenter().lng,y.getCenter().lat],zoom:y.getZoom(),pitch:y.getPitch(),rotation:y.getRotation()};(G=(l=a.current)==null?void 0:l.onZoom)==null||G.call(l,S),t!=null&&t.mapZoom&&Q.emit(t.mapZoom,S)})}return()=>{if(w=!0,E.current){try{E.current.destroy()}catch{}E.current=null}C(null)}},[I.basemap,n]);const f=JSON.stringify(I.center),c=JSON.stringify(I.gestureConfig);p.useEffect(()=>{if(!B)return;const w=jg(I);try{B.setCenter(w.center)}catch{}try{B.setZoom(w.zoom)}catch{}try{B.setPitch(w.pitch)}catch{}try{B.setRotation(w.rotation)}catch{}n(B,w)},[B,f,I.zoom,I.pitch,I.rotation,c,n]);const h=p.useCallback(()=>{if(E.current)try{const w=E.current.map;w&&typeof w.resize=="function"&&w.resize()}catch{}},[]);return p.useEffect(()=>(window.addEventListener("resize",h),()=>window.removeEventListener("resize",h)),[h]),u.jsx("div",{ref:o,className:i??"aimapui-container",style:r??{width:"100%",height:"100%"},children:B&&u.jsx(Et,{scene:B,children:A})})}function ct(I){if(I.colorField)return{field:I.colorField,values:I.colorValues};if(I.color)return{values:I.color}}function GB(I){if(I.sizeField)return{field:I.sizeField,values:I.sizeValues};if(I.size!==void 0)return{values:I.size}}function lt(I){if(I.shapeField)return{field:I.shapeField,values:I.shapeValues};if(I.shape)return{values:I.shape}}function mI(I){return{color:ct(I),size:GB(I),shape:lt(I),style:I.style?{...I.style}:void 0}}function LB(I){var A,g;return{data:I.source,options:{parser:{type:"json",x:((A=I.sourceConfig)==null?void 0:A.x)??"lng",y:((g=I.sourceConfig)==null?void 0:g.y)??"lat"}}}}function NB(I){var A,g;return{data:I.source,options:{parser:{type:"csv",x:(A=I.sourceConfig)==null?void 0:A.x,y:(g=I.sourceConfig)==null?void 0:g.y}}}}function RI(I){return{data:I.source,options:void 0}}function kB(I){var A;return(A=I.sourceConfig)!=null&&A.parser?{data:I.source,options:{parser:I.sourceConfig.parser}}:I.sourceType==="geojson"?RI(I):I.sourceType==="csv"?NB(I):LB(I)}function ht(I){return{type:"PointLayer",sourceConfig:kB(I),visual:mI(I),schema:I}}function ft(I){return{type:"LineLayer",sourceConfig:FB(I),visual:mI(I),schema:I}}function FB(I){var A,g,e,t,i,r,o,E,B,C;return(A=I.sourceConfig)!=null&&A.parser?{data:I.source,options:{parser:I.sourceConfig.parser}}:I.sourceType==="geojson"?RI(I):I.sourceType==="csv"?{data:I.source,options:{parser:{type:"csv",x:(g=I.sourceConfig)==null?void 0:g.x,y:(e=I.sourceConfig)==null?void 0:e.y,x1:(t=I.sourceConfig)==null?void 0:t.x1,y1:(i=I.sourceConfig)==null?void 0:i.y1}}}:{data:I.source,options:{parser:{type:"json",x:((r=I.sourceConfig)==null?void 0:r.x)??"lng",y:((o=I.sourceConfig)==null?void 0:o.y)??"lat",x1:(E=I.sourceConfig)==null?void 0:E.x1,y1:(B=I.sourceConfig)==null?void 0:B.y1,coordinates:(C=I.sourceConfig)==null?void 0:C.coordinates}}}}function dt(I){return{type:"PolygonLayer",sourceConfig:mB(I),visual:mI(I),schema:I}}function mB(I){var A;return I.sourceType==="geojson"?RI(I):{data:I.source,options:{parser:{type:"json",coordinates:((A=I.sourceConfig)==null?void 0:A.coordinates)??"coordinates"}}}}function ut(I){return{type:"HeatmapLayer",sourceConfig:RB(I),visual:UB(I),schema:I}}function RB(I){var A,g,e,t,i,r,o,E;return(A=I.sourceConfig)!=null&&A.parser?{data:I.source,options:{parser:I.sourceConfig.parser,...I.sourceConfig.transforms?{transforms:I.sourceConfig.transforms}:{}}}:I.sourceType==="geojson"?{data:I.source,options:(g=I.sourceConfig)!=null&&g.transforms?{transforms:I.sourceConfig.transforms}:void 0}:I.sourceType==="csv"?{data:I.source,options:{parser:{type:"csv",x:(e=I.sourceConfig)==null?void 0:e.x,y:(t=I.sourceConfig)==null?void 0:t.y},...(i=I.sourceConfig)!=null&&i.transforms?{transforms:I.sourceConfig.transforms}:{}}}:{data:I.source,options:{parser:{type:"json",x:((r=I.sourceConfig)==null?void 0:r.x)??"lng",y:((o=I.sourceConfig)==null?void 0:o.y)??"lat"},...(E=I.sourceConfig)!=null&&E.transforms?{transforms:I.sourceConfig.transforms}:{}}}}function UB(I){const A=I.sizeField?{field:I.sizeField,values:I.sizeValues}:void 0,g=ct(I),e=lt(I),t=I.style?{...I.style}:void 0;return{color:g,size:A,shape:e,style:t}}function Dt(I){return{type:"RasterLayer",sourceConfig:MB(I),visual:YB(I),schema:I}}function MB(I){var A;return(A=I.sourceConfig)!=null&&A.parser?{data:I.source,options:{parser:I.sourceConfig.parser}}:{data:I.source,options:I.sourceType==="raster"?{parser:{type:"raster",extent:[73.482190241,3.82501784112,135.106618732,53.557926206]}}:I.sourceType==="rasterTile"?{parser:{type:"rasterTile",tileSize:256,zoomOffset:1}}:void 0}}function YB(I){return{color:void 0,size:void 0,shape:void 0,style:I.style?{...I.style}:void 0}}function wt(I){var A;return{type:"ImageLayer",sourceConfig:{data:I.source,options:{parser:((A=I.sourceConfig)==null?void 0:A.parser)??(I.sourceType==="image"?{type:"image"}:void 0)}},visual:{color:void 0,size:void 0,shape:void 0,style:I.style?{...I.style}:void 0},schema:I}}function UI(I,A,g,e){const t=p.useRef(A),i=p.useRef(g);t.current=A,i.current=g;const r=p.useRef(e);r.current=e;const o=p.useRef(null),E=p.useRef(I);E.current=I;const B=p.useCallback(()=>{const s=E.current;if(s)try{const a=s.mapService;if(a){const Q=a.lngLatToContainer([t.current,i.current]);Q&&r.current(Q.x,Q.y)}else{const Q=s.lngLatToContainer([t.current,i.current]);Q&&r.current(Q.x,Q.y)}}catch{}},[]),C=p.useCallback(()=>{B()},[B]);p.useEffect(()=>{if(!I)return;const s=()=>{setTimeout(()=>B(),0)};return I.loaded?s():I.on("loaded",s),()=>{I.off("loaded",s)}},[I,B]),p.useEffect(()=>{B()},[A,g,B]),p.useEffect(()=>{if(I){try{const s=I.mapService;if(s)return s.on("camerachange",C),s.on("viewchange",C),()=>{s.off("camerachange",C),s.off("viewchange",C)}}catch{}return I.on("camerachange",C),I.on("resize",C),()=>{I.off("camerachange",C),I.off("resize",C)}}},[I,C]),p.useEffect(()=>()=>{o.current!==null&&(cancelAnimationFrame(o.current),o.current=null)},[])}function yt(I){var A,g,e="";if(typeof I=="string"||typeof I=="number")e+=I;else if(typeof I=="object")if(Array.isArray(I)){var t=I.length;for(A=0;A<t;A++)I[A]&&(g=yt(I[A]))&&(e&&(e+=" "),e+=g)}else for(g in I)I[g]&&(e&&(e+=" "),e+=g);return e}function bB(){for(var I,A,g=0,e="",t=arguments.length;g<t;g++)(I=arguments[g])&&(A=yt(I))&&(e&&(e+=" "),e+=A);return e}function aA(...I){return bB(I)}function HB(I,A=1){const g=I.replace("#","").match(/.{2}/g);if(!g||g.length<3)return I;const[e,t,i]=g.map(r=>parseInt(r,16));return`rgba(${e}, ${t}, ${i}, ${A})`}function Zg(I){return typeof I=="string"&&/<[a-zA-Z][^>]*>/.test(I)}let Fg=null;const MI=new Set;function KB(I,A){Fg&&Fg!==I&&MI.forEach(g=>g(I)),Fg=I}function xB(I){Fg===I&&(Fg=null)}function St(I,A,g,e,t,i,r,o){if(r!=="auto")return sg(r,o);const E=A,B=i-A,C=I,s=t-I,a=8;if(E>=e+o+a)return sg("top",o);if(B>=e+o+a)return sg("bottom",o);if(s>=g+o+a)return sg("right",o);if(C>=g+o+a)return sg("left",o);const n=Object.entries({top:E,bottom:B,right:s,left:C}).sort((f,c)=>c[1]-f[1])[0][0];return sg(n,o)}function sg(I,A){switch(I){case"top":return{placement:"top",transform:`translate(-50%, -100%) translateY(-${A}px)`};case"bottom":return{placement:"bottom",transform:`translate(-50%, 0) translateY(${A}px)`};case"left":return{placement:"left",transform:`translate(-100%, -50%) translateX(-${A}px)`};case"right":return{placement:"right",transform:`translate(0, -50%) translateX(${A}px)`}}}function _g({onClick:I}){return u.jsx("button",{onClick:A=>{A.stopPropagation(),I()},className:"aimapui-popup-close-btn absolute top-2 right-2 size-8 flex items-center justify-center text-on-surface-variant rounded-lg transition-[color,background] duration-200 cursor-pointer bg-transparent border-none p-0 hover:text-on-surface hover:bg-surface-container-high [&_.material-symbols-outlined]:text-xl","aria-label":"关闭",children:u.jsx("span",{className:"material-symbols-outlined",children:"close"})})}const vB={top:"M0 0L8 8L16 0",bottom:"M0 8L8 0L16 8",left:"M0 0L8 8L0 16",right:"M8 0L0 8L8 16"};function Pg({placement:I}){const A=I==="top"||I==="bottom",g=A?16:8,e=A?8:16,t=A?"0 0 16 8":"0 0 8 16",i=vB[I];return u.jsx("div",{className:`aimapui-popup-tip-arrow aimapui-popup-tip-arrow--${I==="top"?"bottom":I==="bottom"?"top":I}`,children:u.jsxs("svg",{width:g,height:e,viewBox:t,fill:"none",children:[u.jsx("path",{d:i,fill:"rgba(248, 249, 255, 0.95)"}),u.jsx("path",{d:i,stroke:"rgba(195, 198, 215, 0.3)",strokeWidth:"0.5",fill:"none"})]})})}function JB({header:I,onClose:A}){return I.coverUrl?u.jsxs("div",{className:"aimapui-popup-cover relative aspect-video overflow-hidden",children:[u.jsx("img",{src:I.coverUrl,alt:I.title,className:"w-full h-full object-cover"}),u.jsx("button",{className:"absolute top-2 right-2 size-8 bg-black/30 backdrop-blur-sm text-white flex items-center justify-center rounded-full border-none cursor-pointer transition-colors duration-200 z-10 hover:bg-black/50 [&_.material-symbols-outlined]:text-lg","aria-label":"关闭",onClick:g=>{g.stopPropagation(),A()},children:u.jsx("span",{className:"material-symbols-outlined",children:"close"})}),I.statusLabel&&u.jsxs("div",{className:"absolute bottom-2 left-2 flex items-center gap-1.5 px-2 py-0.5 bg-surface/90 backdrop-blur-sm rounded-md shadow-sm text-[10px] font-semibold uppercase tracking-wide text-on-surface",children:[u.jsx("div",{className:"size-2 rounded-full",style:{background:I.statusColor||"#10b981"}}),u.jsx("span",{children:I.statusLabel})]})]}):null}function qB({header:I,onClose:A,hasCover:g,showStatusDot:e}){return u.jsxs("div",{className:aA("relative flex items-center p-4",!g&&"pr-10"),children:[e&&I.statusDot&&u.jsx("div",{className:"size-2 rounded-full shrink-0 mr-2 animate-pulse",style:{background:I.statusDot}}),u.jsx("h3",{className:"text-xl leading-7 font-semibold text-on-surface m-0 flex-1 min-w-0 truncate",children:I.title}),!g&&u.jsx(_g,{onClick:A})]})}function TB({attributes:I,size:A}){const g=A==="compact",e=A==="detailed",t=g?1:2;return u.jsx("div",{className:aA(g?"flex flex-col":"grid gap-2"),style:g?void 0:{gridTemplateColumns:`repeat(${t}, 1fr)`},children:I.map((i,r)=>e&&i.icon?u.jsxs("div",{className:"flex items-center gap-2",children:[u.jsx("div",{className:"size-12 rounded-lg bg-surface-container-highest flex items-center justify-center text-primary shrink-0 [&_.material-symbols-outlined]:text-[28px]",children:u.jsx("span",{className:"material-symbols-outlined",children:i.icon})}),u.jsxs("div",{children:[u.jsx("p",{className:"text-sm leading-5 text-on-surface-variant m-0",children:i.label}),u.jsx("p",{className:"text-sm leading-5 font-medium text-on-surface m-0",style:i.valueColor?{color:i.valueColor}:void 0,children:i.value})]})]},r):u.jsxs("div",{className:aA("flex justify-between items-baseline gap-2",g&&"py-2 border-b border-outline-variant/30 last:border-b-0 last:pb-0 first:pt-0"),children:[u.jsx("p",{className:"text-sm leading-5 text-on-surface-variant m-0",children:i.label}),u.jsx("p",{className:"text-sm leading-5 font-medium text-on-surface m-0 text-right",style:i.valueColor?{color:i.valueColor}:void 0,children:i.value})]},r))})}function OB({actions:I}){return u.jsx("div",{className:"flex gap-3 px-4 pb-4",children:I.map((A,g)=>u.jsx("button",{className:aA("flex-1 py-2.5 text-sm leading-5 font-semibold rounded-lg border-none cursor-pointer transition-all duration-150 active:scale-[0.98]",A.variant==="secondary"?"bg-transparent text-on-surface border-2 border-solid border-outline-variant hover:bg-surface-container-low":"bg-primary text-on-primary shadow-sm hover:shadow-[0_4px_12px_rgba(0,74,198,0.3)]"),onClick:A.onClick,children:A.label},g))})}function YI({longitude:I,latitude:A,content:g,closeButton:e=!0,size:t="standard",placement:i="auto",offset:r=8,header:o,attributes:E,actions:B,visible:C,singleton:s=!1,overlayContainer:a,onClose:Q,className:n}){const f=uA(),c=C!==void 0,[h,w]=p.useState(!0),D=c?C:h,[d,y]=p.useState(!1),[S,l]=p.useState("top"),G=p.useRef(null),F=p.useRef(!0);p.useRef(!1);const k=p.useRef(Symbol("popup")),[m,M]=p.useState(null);p.useEffect(()=>{if(a||!f)return;const q=()=>{try{const Z=f.mapService;if(Z&&typeof Z.getMarkerContainer=="function"){const K=Z.getMarkerContainer();if(K)return M(K),!0}}catch{}return!1};if(q())return;const v=()=>{q()};return f.loaded?v():f.on("loaded",v),()=>{f.off("loaded",v)}},[f,a]);const N=a??m,b=p.useCallback(()=>{d||(y(!0),setTimeout(()=>{c||w(!1),Q==null||Q(),y(!1)},150))},[c,Q,d]);p.useEffect(()=>{if(!s||!D)return;const q=k.current;return KB(q),()=>xB(q)},[s,D,b]),p.useEffect(()=>{if(!s)return;const q=k.current,v=Z=>{Z!==q&&D&&b()};return MI.add(v),()=>{MI.delete(v)}},[s,D,b]);const U=p.useCallback(()=>{var v;const q=G.current;if(!(!q||!f))try{const Z=f.mapService,K=Z?Z.lngLatToContainer([I,A]):f.lngLatToContainer([I,A]);if(K){const O=Math.round(K.x),x=Math.round(K.y);q.style.left="0",q.style.top="0";let W=0,_=0;try{if(Z){const IA=(v=Z.getContainer)==null?void 0:v.call(Z);IA&&(W=IA.scrollWidth||IA.clientWidth,_=IA.scrollHeight||IA.clientHeight)}}catch{}const gA=q.querySelector(".aimapui-popup-content"),iA=(gA==null?void 0:gA.offsetWidth)||320,AA=(gA==null?void 0:gA.offsetHeight)||200,{placement:z,transform:eA}=St(O,x,iA,AA,W,_,i,r);l(z),q.style.transform=`translate3d(${O}px, ${x}px, 0) ${eA}`;let BA=!0;W>0&&_>0&&(BA=O>=0&&O<=W&&x>=0&&x<=_),F.current=BA,q.style.visibility=BA?"visible":"hidden"}}catch{}},[f,I,A,i,r]);if(p.useEffect(()=>{if(!N||!D)return;const q=requestAnimationFrame(()=>{U()});return()=>cancelAnimationFrame(q)},[N,D,U]),p.useEffect(()=>{if(!D)return;const q=v=>{v.key==="Escape"&&b()};return document.addEventListener("keydown",q),()=>document.removeEventListener("keydown",q)},[D,b]),p.useEffect(()=>{var K;if(!D||!N)return;const q=O=>{const x=G.current;if(!x||x.contains(O.target))return;const W=O.target;W.closest(".aimapui-marker")||W.closest("[data-marker]")||b()};let v=null;try{const O=f==null?void 0:f.mapService;O&&(v=(K=O.getContainer)==null?void 0:K.call(O))}catch{}const Z=v||N.parentElement||N;return Z.addEventListener("click",q,!0),()=>Z.removeEventListener("click",q,!0)},[D,N,f,b]),UI(f,I,A,(q,v)=>{var BA;const Z=G.current;if(!Z)return;const K=Math.round(q),O=Math.round(v);let x=0,W=0;try{const IA=f==null?void 0:f.mapService;if(IA){const rA=(BA=IA.getContainer)==null?void 0:BA.call(IA);rA&&(x=rA.scrollWidth||rA.clientWidth,W=rA.scrollHeight||rA.clientHeight)}}catch{}const _=Z.querySelector(".aimapui-popup-content"),gA=(_==null?void 0:_.offsetWidth)||320,iA=(_==null?void 0:_.offsetHeight)||200,{placement:AA,transform:z}=St(K,O,gA,iA,x,W,i,r);l(AA);let eA=!0;x>0&&W>0&&(eA=K>=0&&K<=x&&O>=0&&O<=W),F.current=eA,Z.style.left="0",Z.style.top="0",Z.style.transform=`translate3d(${K}px, ${O}px, 0) ${z}`,Z.style.visibility=eA?"visible":"hidden"}),!D||!N)return null;const R=o||E||B,H=!!(o!=null&&o.coverUrl),T=S==="left"||S==="right",V=()=>R?u.jsxs(u.Fragment,{children:[o&&H&&u.jsx(JB,{header:o,onClose:b}),o&&u.jsx(qB,{header:o,onClose:b,hasCover:H,showStatusDot:t==="compact"}),u.jsxs("div",{className:aA("aimapui-popup-body relative p-4 text-sm leading-5 text-on-surface break-words whitespace-normal",!o&&e&&"pr-10"),children:[!o&&e&&u.jsx(_g,{onClick:b}),g&&!Zg(g)&&typeof g!="string"&&u.jsx("div",{children:g}),g&&Zg(g)&&u.jsx("div",{dangerouslySetInnerHTML:{__html:g}}),g&&!Zg(g)&&typeof g=="string"&&u.jsx("div",{children:g}),!g&&!(E!=null&&E.length)&&!(B!=null&&B.length)&&!o&&u.jsx("div",{style:{color:"var(--color-on-surface-variant)"},children:"无内容"}),E&&E.length>0&&u.jsx(TB,{attributes:E,size:t})]}),B&&B.length>0&&u.jsx(OB,{actions:B})]}):Zg(g)?u.jsxs("div",{className:"aimapui-popup-body relative p-4 pt-2 pr-10 text-sm leading-5 text-on-surface break-words whitespace-normal",children:[e&&u.jsx(_g,{onClick:b}),u.jsx("div",{dangerouslySetInnerHTML:{__html:g}})]}):u.jsxs("div",{className:"aimapui-popup-body relative p-4 pt-2 pr-10 text-sm leading-5 text-on-surface break-words whitespace-normal",children:[e&&u.jsx(_g,{onClick:b}),u.jsx("div",{children:g??""})]}),P=T?{display:"flex",alignItems:"center"}:{display:"flex",flexDirection:"column",alignItems:"center"};return NI.createPortal(u.jsxs("div",{ref:G,className:aA("aimapui-popup",`aimapui-popup--${t}`),style:{position:"absolute",left:0,top:0,transform:"translate(-9999px, -9999px)",visibility:"hidden",zIndex:30,pointerEvents:"auto",...P},children:[S==="bottom"&&u.jsx(Pg,{placement:S}),S==="right"&&u.jsx(Pg,{placement:S}),u.jsx("div",{className:aA("aimapui-popup-content overflow-hidden rounded-xl",d&&"aimapui-popup-content--exit",n),children:V()}),S==="top"&&u.jsx(Pg,{placement:S}),S==="left"&&u.jsx(Pg,{placement:S})]}),N)}const VB={top:"bottom",bottom:"top",left:"right",right:"left"},pt={top:"translate(-50%, -100%)",bottom:"translate(-50%, 0)",left:"translate(-100%, -50%)",right:"translate(0, -50%)"};function Gt({content:I,variant:A="dark",longitude:g,latitude:e,targetElement:t,placement:i="top",offset:r=8,trigger:o="hover",visible:E,title:B,items:C,overlayContainer:s,className:a}){const{resolvedTheme:Q}=st(),n=uA(),f=E!==void 0,[c,h]=p.useState(!1),w=f?E:c,D=p.useRef(null),d=p.useRef(null),y=g!==void 0&&e!==void 0;p.useEffect(()=>{if(y||!t||f)return;const N=()=>{d.current=setTimeout(()=>h(!0),100)},b=()=>{d.current&&(clearTimeout(d.current),d.current=null),h(!1)},U=()=>{d.current&&clearTimeout(d.current),h(R=>!R)};return o==="hover"?(t.addEventListener("mouseenter",N),t.addEventListener("mouseleave",b)):t.addEventListener("click",U),()=>{d.current&&clearTimeout(d.current),t.removeEventListener("mouseenter",N),t.removeEventListener("mouseleave",b),t.removeEventListener("click",U)}},[t,o,y,f]);const S=p.useCallback(()=>{if(!t||!D.current)return;const N=t.getBoundingClientRect(),b=D.current.getBoundingClientRect();let U=0,R=0;switch(i){case"right":U=N.right+r,R=N.top+N.height/2-b.height/2;break;case"bottom":U=N.left+N.width/2-b.width/2,R=N.bottom+r;break;case"left":U=N.left-b.width-r,R=N.top+N.height/2-b.height/2;break;case"top":default:U=N.left+N.width/2-b.width/2,R=N.top-b.height-r;break}const H=8;U=Math.max(H,Math.min(U,window.innerWidth-b.width-H)),R=Math.max(H,Math.min(R,window.innerHeight-b.height-H)),D.current.style.left=`${U}px`,D.current.style.top=`${R}px`},[t,i,r]);p.useEffect(()=>{if(y||!w||!t)return;S();const N=()=>S();return window.addEventListener("resize",N),window.addEventListener("scroll",N,!0),()=>{window.removeEventListener("resize",N),window.removeEventListener("scroll",N,!0)}},[w,t,y,S]);const l=p.useCallback(()=>{var N,b,U;if(!n)return{left:0,top:0};try{const R=n.mapService,H=((N=R==null?void 0:R.getMarkerContainer)==null?void 0:N.call(R))??((b=n.getMapContainer)==null?void 0:b.call(n))??n.container??((U=n.getContainer)==null?void 0:U.call(n));if(H instanceof HTMLElement){const T=H.getBoundingClientRect();return{left:T.left,top:T.top}}}catch{}return{left:0,top:0}},[n]),G=p.useCallback(()=>{const N=D.current;if(!(!N||!n||!y))try{const b=n.mapService,U=b?b.lngLatToContainer([g,e]):n.lngLatToContainer([g,e]);if(!U||isNaN(U.x)||isNaN(U.y))return;let R=0,H=0;switch(i){case"top":H=-r;break;case"bottom":H=r;break;case"left":R=-r;break;case"right":R=r;break}const T=l(),V=Math.round(U.x+R+T.left),P=Math.round(U.y+H+T.top),q=pt[i];N.style.transform=`translate3d(${V}px, ${P}px, 0) ${q}`,N.style.visibility="visible"}catch{}},[n,g,e,i,r,y,l]);if(p.useEffect(()=>{if(!y||!w)return;const N=requestAnimationFrame(()=>G());return()=>cancelAnimationFrame(N)},[w,y,G]),UI(y?n:null,g??0,e??0,(N,b)=>{const U=D.current;if(!U||!y)return;let R=0,H=0;switch(i){case"top":H=-r;break;case"bottom":H=r;break;case"left":R=-r;break;case"right":R=r;break}const T=l(),V=Math.round(N+R+T.left),P=Math.round(b+H+T.top),q=pt[i];U.style.transform=`translate3d(${V}px, ${P}px, 0) ${q}`,U.style.visibility="visible"}),!w)return null;const F=VB[i],k=B||C&&C.length>0,m=()=>I?typeof I=="string"?u.jsx("span",{dangerouslySetInnerHTML:{__html:I}}):I:k?u.jsxs(u.Fragment,{children:[B&&u.jsx("p",{className:"font-sans text-xs leading-4 font-semibold m-0 mb-0.5",children:B}),C&&C.length>0&&u.jsx("div",{className:"flex flex-col gap-0.5",children:C.map((N,b)=>u.jsxs("div",{className:"flex justify-between items-center gap-3",children:[u.jsx("span",{className:"text-xs leading-4 font-normal opacity-70 m-0",children:N.label}),u.jsx("span",{className:"font-mono text-xs leading-4 font-[450] text-right m-0",children:N.value})]},b))})]}):null,M=u.jsxs("div",{ref:D,"data-theme":Q,className:aA("aimapui-tooltip",A!=="dark"&&`aimapui-tooltip--${A}`),style:{position:"fixed",left:0,top:0,transform:"translate(-9999px, -9999px)",visibility:"hidden",zIndex:9999,pointerEvents:"none"},children:[u.jsx("div",{className:aA("aimapui-tooltip-content",a),children:m()}),u.jsx("div",{className:`aimapui-tooltip-arrow aimapui-tooltip-arrow--${F}`})]});return NI.createPortal(M,document.body)}function jB(I,A){let g;switch(I.type){case"point":g=ht(I);break;case"line":g=ft(I);break;case"polygon":g=dt(I);break;case"heatmap":g=ut(I);break;case"raster":g=Dt(I);break;case"image":g=wt(I);break;default:return console.warn(`[aimapui] Unknown layer type: ${I.type}`),null}return ZB(g)}async function ZB(I,A){var s;const e=(await import("@antv/l7"))[I.type];if(!e)throw new Error(`[aimapui] L7 layer class "${I.type}" not found`);const t=new e({...I.schema.zIndex!==void 0?{zIndex:I.schema.zIndex}:{},...I.schema.name?{name:I.schema.name}:{}}),{data:i,options:r}=I.sourceConfig;r?t.source(i,r):t.source(i);const{color:o,size:E,shape:B,style:C}=I.visual;if(o&&(o.field&&o.values?t.color(o.field,o.values):o.values&&t.color(o.values)),E&&(E.field&&E.values?t.size(E.field,E.values):E.values!==void 0&&t.size(E.values)),B&&(B.field&&B.values?t.shape(B.field,B.values):B.values&&t.shape(B.values)),C&&Object.keys(C).length>0&&t.style(C),I.type==="PointLayer"&&!B&&t.shape("circle"),I.type==="LineLayer"&&!B&&t.shape("line"),I.schema.filterField&&I.schema.filterValues){const a=I.schema.filterField,Q=I.schema.filterValues;t.filter(a,n=>Q.includes(n))}return(s=I.schema.animate)!=null&&s.enable&&t.animate(!0,I.schema.animate),I.schema.active&&t.active(I.schema.active),I.schema.select&&t.select(I.schema.select),I.schema.opacity!==void 0&&t.style({opacity:I.schema.opacity}),I.schema.blend&&t.blend(I.schema.blend),I.schema.visible===!1&&t.hide(),I.schema.minZoom!==void 0&&t.minZoom(I.schema.minZoom),I.schema.maxZoom!==void 0&&t.maxZoom(I.schema.maxZoom),t}function zg(I,A,g){var o,E,B,C,s,a,Q,n;const e=g,t=Number.isFinite((o=e==null?void 0:e.lnglat)==null?void 0:o.lng)?e.lnglat.lng:Number.isFinite((E=e==null?void 0:e.lngLat)==null?void 0:E.lng)?e.lngLat.lng:Number.isFinite((B=e==null?void 0:e.coordinate)==null?void 0:B.lng)?e.coordinate.lng:0,i=Number.isFinite((C=e==null?void 0:e.lnglat)==null?void 0:C.lat)?e.lnglat.lat:Number.isFinite((s=e==null?void 0:e.lngLat)==null?void 0:s.lat)?e.lngLat.lat:Number.isFinite((a=e==null?void 0:e.coordinate)==null?void 0:a.lat)?e.coordinate.lat:0,r=((Q=e==null?void 0:e.feature)==null?void 0:Q.properties)??(e==null?void 0:e.feature)??((n=e==null?void 0:e.data)==null?void 0:n.properties)??(e==null?void 0:e.data)??void 0;return{layerId:I,layerType:A,originalEvent:g,lng:t,lat:i,feature:r}}function eg({schema:I,scene:A,eventHandlers:g}){const e=p.useRef(null),t=FI(),i=p.useRef(g);i.current=g;const r=p.useMemo(()=>{const{source:B,...C}=I;let s;if(ArrayBuffer.isView(B))s=`TypedArray:${B.length}`;else if(B&&typeof B=="object"&&"width"in B){const a=B;s=`Rasters:${a.width}x${a.height}:${a.length}`}else if(typeof B=="string")s=B;else try{s=JSON.stringify(B)}catch{s=String(B)}return s+"|"+_B(C)},[I]),[o,E]=p.useState({visible:!1,lng:0,lat:0,content:"",trigger:"click"});return p.useEffect(()=>{var C;let B=!1;return(C=jB(I))==null||C.then(s=>{var S,l,G,F;if(B)return;e.current=s;const a=I.id??I.name??`layer-${I.type}`,Q=I.events,n=!!(Q!=null&&Q.enablePopup),f=(Q==null?void 0:Q.popupTrigger)??"click",c=k=>{if(!n)return;const m=k.feature;if(!m)return;const M=PB(m,Q==null?void 0:Q.popupFields,Q==null?void 0:Q.popupTemplate);E({visible:!0,lng:k.lng,lat:k.lat,content:M,trigger:f})},h=()=>{E(k=>({...k,visible:!1}))},w=!!((S=i.current)!=null&&S.onClick||Q!=null&&Q.click||n&&f==="click"),D=!!((l=i.current)!=null&&l.onMouseMove||Q!=null&&Q.mousemove||n&&f==="hover"),d=!!((G=i.current)!=null&&G.onMouseEnter||Q!=null&&Q.mouseenter),y=!!((F=i.current)!=null&&F.onMouseLeave||Q!=null&&Q.mouseleave||n&&f==="hover");w&&s.on("click",k=>{var M,N;const m=zg(a,I.type,k);(N=(M=i.current)==null?void 0:M.onClick)==null||N.call(M,m),Q!=null&&Q.click&&t.emit(Q.click,m),f==="click"&&c(m)}),D&&s.on("mousemove",k=>{var M,N;const m=zg(a,I.type,k);(N=(M=i.current)==null?void 0:M.onMouseMove)==null||N.call(M,m),f==="hover"&&c(m),Q!=null&&Q.mousemove&&t.emit(Q.mousemove,m)}),d&&s.on("mouseenter",k=>{var M,N;const m=zg(a,I.type,k);(N=(M=i.current)==null?void 0:M.onMouseEnter)==null||N.call(M,m),Q!=null&&Q.mouseenter&&t.emit(Q.mouseenter,m)}),y&&s.on("mouseleave",k=>{var M,N;const m=zg(a,I.type,k);(N=(M=i.current)==null?void 0:M.onMouseLeave)==null||N.call(M,m),f==="hover"&&h(),Q!=null&&Q.mouseleave&&t.emit(Q.mouseleave,m)}),A.addLayer(s),s.on("inited",()=>{B||(I.autoFit&&A.fitBounds(s.getBounds()),A.render())})}).catch(s=>{B||console.error(`[aimapui] Failed to create layer "${I.id??I.name??I.type}":`,s)}),()=>{if(B=!0,e.current){try{A.removeLayer(e.current)}catch{}e.current=null}E(s=>({...s,visible:!1}))}},[r,A,t]),p.useEffect(()=>{e.current&&(I.visible===!1?e.current.hide():e.current.show(),I.zIndex!==void 0&&e.current.zIndex(I.zIndex))},[I.visible,I.zIndex]),o.visible?o.trigger==="hover"?u.jsx(Gt,{longitude:o.lng,latitude:o.lat,content:o.content,variant:"dark",placement:"top",visible:!0}):u.jsx(YI,{longitude:o.lng,latitude:o.lat,content:o.content,closeButton:!0,size:"compact",onClose:()=>E(B=>({...B,visible:!1}))}):null}function _B(I){return JSON.stringify(bI(I))}function bI(I){if(ArrayBuffer.isView(I))return`[TypedArray:${I.length}]`;if(I instanceof ArrayBuffer)return`[ArrayBuffer:${I.byteLength}]`;if(Array.isArray(I))return I.length>1e3?`[Array:${I.length}]`:I.map(bI);if(I&&typeof I=="object"){const A=I,g=Object.keys(A).sort(),e={};return g.forEach(t=>{e[t]=bI(A[t])}),e}return I}function PB(I,A,g){return g?g.replace(/\{\{(\w+)\}\}/g,(i,r)=>String(I[r]??"")):`<table style="font-size:12px">${(A??Object.keys(I).filter(i=>!["_id","id","geometry","coordinates"].includes(i))).map(i=>`<tr><td style="font-weight:600;padding-right:8px">${i}</td><td>${I[i]??""}</td></tr>`).join("")}</table>`}function Lt({layers:I,eventHandlers:A}){const g=uA();return g?u.jsx(u.Fragment,{children:I.map((e,t)=>u.jsx(eg,{schema:e,scene:g,eventHandlers:A},e.id??`layer-${t}`))}):null}const Nt=p.createContext(!1);function TA(){return p.useContext(Nt)}const HI=new Set,YA={mark(I){I&&typeof I=="object"&&"$$typeof"in I&&HI.add(I),I&&typeof I=="function"&&HI.add(I)},check(I){if("position"in I.props)return!0;const A=I.type;if(HI.has(A))return!0;const g=A==null?void 0:A.displayName;return!!(typeof g=="string"&&g.endsWith("Control"))}};function KI({children:I,className:A,style:g}){const{controlGroups:e,otherChildren:t}=zB(I);return u.jsx(Nt.Provider,{value:!0,children:u.jsxs("div",{className:`l7-control-container${A?` ${A}`:""}`,style:g,children:[Object.entries(e).map(([i,r])=>{const o=XB(i);return u.jsx("div",{className:`l7-control-anchor ${o}`,children:r},i)}),t]})})}function zB(I){const A={},g=[];return p.Children.forEach(I,(e,t)=>{var i;if(!p.isValidElement(e)){g.push(e);return}if(YA.check(e)){const r=((i=e.props)==null?void 0:i.position)??"topright";A[r]||(A[r]=[]),A[r].push(e)}else g.push(p.isValidElement(e)?p.cloneElement(e,{key:e.key??`non-ctrl-${t}`}):e)}),{controlGroups:A,otherChildren:g}}function WB(I){switch(I){case"topleft":return{vSide:"top",hSide:"left",direction:"column"};case"topright":return{vSide:"top",hSide:"right",direction:"column"};case"bottomleft":return{vSide:"bottom",hSide:"left",direction:"column"};case"bottomright":return{vSide:"bottom",hSide:"right",direction:"column"};case"topcenter":return{vSide:"top",hSide:"left",direction:"row"};case"bottomcenter":return{vSide:"bottom",hSide:"left",direction:"row"};case"lefttop":return{vSide:"top",hSide:"left",direction:"row"};case"leftbottom":return{vSide:"bottom",hSide:"left",direction:"row"};case"righttop":return{vSide:"top",hSide:"right",direction:"row"};case"rightbottom":return{vSide:"bottom",hSide:"right",direction:"row"};default:return{vSide:"top",hSide:"right",direction:"column"}}}function XB(I){if(I==="rightcenter")return"l7-rightcenter l7-column";if(I==="leftcenter")return"l7-leftcenter l7-column";const{vSide:A,hSide:g,direction:e}=WB(I);return`l7-${A} l7-${g} l7-${e}`}function OA(I){const A=uA(),g=p.useMemo(()=>{if(!A)return null;try{return A.mapService??null}catch{return null}},[A]),e=p.useCallback(()=>{var i;if(!A)return null;try{return g&&typeof g.getContainer=="function"?g.getContainer():((i=A.getContainer)==null?void 0:i.call(A))??null}catch{return null}},[A,g]),t=p.useMemo(()=>{if(I==="rightcenter")return"l7-rightcenter l7-column";if(I==="leftcenter")return"l7-leftcenter l7-column";const{vSide:i,hSide:r,direction:o}=$B(I??"topright");return`l7-${i} l7-${r} l7-${o}`},[I]);return{scene:A,mapsService:g,getMapContainer:e,positionClassName:t}}function $B(I){switch(I){case"topleft":return{vSide:"top",hSide:"left",direction:"column"};case"topright":return{vSide:"top",hSide:"right",direction:"column"};case"bottomleft":return{vSide:"bottom",hSide:"left",direction:"column"};case"bottomright":return{vSide:"bottom",hSide:"right",direction:"column"};case"topcenter":return{vSide:"top",hSide:"left",direction:"row"};case"bottomcenter":return{vSide:"bottom",hSide:"left",direction:"row"};case"lefttop":return{vSide:"top",hSide:"left",direction:"row"};case"leftbottom":return{vSide:"bottom",hSide:"left",direction:"row"};case"righttop":return{vSide:"top",hSide:"right",direction:"row"};case"rightbottom":return{vSide:"bottom",hSide:"right",direction:"row"};case"rightcenter":return{vSide:"top",hSide:"right",direction:"column"};case"leftcenter":return{vSide:"top",hSide:"left",direction:"column"};default:return{vSide:"top",hSide:"right",direction:"column"}}}function xI({position:I="bottomright",zoomInText:A,zoomInTitle:g="Zoom in",zoomOutText:e,zoomOutTitle:t="Zoom out",showZoom:i=!1,className:r,style:o}){const{mapsService:E,positionClassName:B}=OA(I),C=TA(),[s,a]=p.useState(0),[Q,n]=p.useState(!0),[f,c]=p.useState(!0),h=p.useRef(()=>{if(!E)return;const y=Math.floor(E.getZoom());a(y),n(E.getZoom()<E.getMaxZoom()),c(E.getZoom()>E.getMinZoom())});p.useEffect(()=>{if(!E)return;h.current();const y=()=>h.current();return E.on("zoomend",y),E.on("zoomchange",y),()=>{E.off("zoomend",y),E.off("zoomchange",y)}},[E]);const w=()=>{E&&E.getZoom()<E.getMaxZoom()&&E.zoomIn()},D=()=>{E&&E.getZoom()>E.getMinZoom()&&E.zoomOut()},d=u.jsxs("div",{className:`l7-control l7-control-zoom l7-control--glass${r?` ${r}`:""}`,style:o,children:[u.jsx("button",{className:"l7-button-control",onClick:w,disabled:!Q,title:g,"aria-label":g,children:A??u.jsx("span",{className:"material-symbols-outlined",children:"add"})}),i&&u.jsx("button",{className:"l7-button-control l7-control-zoom__number",disabled:!0,children:s}),u.jsx("button",{className:"l7-button-control",onClick:D,disabled:!f,title:t,"aria-label":t,children:e??u.jsx("span",{className:"material-symbols-outlined",children:"remove"})})]});return C?d:u.jsx("div",{className:`l7-control-anchor ${B}`,children:d})}YA.mark(xI);function A0(I,A){const[g,e]=I,[t,i]=A,r=63710088e-1,o=(i-e)*Math.PI/180,E=(t-g)*Math.PI/180,B=Math.sin(o/2)*Math.sin(o/2)+Math.cos(e*Math.PI/180)*Math.cos(i*Math.PI/180)*Math.sin(E/2)*Math.sin(E/2),C=2*Math.atan2(Math.sqrt(B),Math.sqrt(1-B));return r*C}function vI(I){const A=Math.pow(10,Math.floor(Math.abs(I)).toString().length-1);let g=I/A;return g=g>=10?10:g>=5?5:g>=3?3:g>=2?2:1,A*g}function JI({position:I="bottomleft",maxWidth:A=100,metric:g=!0,imperial:e=!1,updateWhenIdle:t=!1,className:i,style:r}){const{mapsService:o,positionClassName:E}=OA(I),B=TA(),[C,s]=p.useState([]),a=p.useRef(()=>{if(o)try{const f=o.getSize()[1]/2,c=o.containerToLngLat([0,f]),h=o.containerToLngLat([A,f]);if(!c||!h)return;const w=A0([c.lng,c.lat],[h.lng,h.lat]),D=[];if(g&&w){const d=vI(w),y=d<1e3?`${d} m`:`${d/1e3} km`;D.push({text:y,width:Math.round(A*(d/w))})}if(e&&w){const d=w*3.2808399;if(d>5280){const y=d/5280,S=vI(y);D.push({text:`${S} mi`,width:Math.round(A*(S/y))})}else{const y=vI(d);D.push({text:`${y} ft`,width:Math.round(A*(y/d))})}}s(D)}catch{}});p.useEffect(()=>{if(!o)return;a.current();const n=()=>a.current(),f=t?"moveend":"mapmove",c=t?"zoomend":"zoomchange";return o.on(f,n),o.on(c,n),()=>{o.off(f,n),o.off(c,n)}},[o,A,g,e,t]);const Q=u.jsx("div",{className:`l7-control l7-control-scale l7-control--glass${i?` ${i}`:""}`,style:r,children:C.map((n,f)=>u.jsx("div",{className:"l7-control-scale-line",style:{width:n.width},children:n.text},f))});return B?Q:u.jsx("div",{className:`l7-control-anchor ${E}`,children:Q})}YA.mark(JI);function qI({position:I="topright",container:A,className:g,style:e}){const{getMapContainer:t,positionClassName:i}=OA(I),r=TA(),[o,E]=p.useState(!1),B=p.useCallback(()=>A??t()??document.documentElement,[A,t]),C=p.useCallback(()=>{const a=B();o?document.exitFullscreen?document.exitFullscreen():document.webkitExitFullscreen&&document.webkitExitFullscreen():a.requestFullscreen?a.requestFullscreen():a.webkitRequestFullscreen&&a.webkitRequestFullscreen()},[o,B]);p.useEffect(()=>{const a=()=>{E(!!document.fullscreenElement)};return document.addEventListener("fullscreenchange",a),()=>document.removeEventListener("fullscreenchange",a)},[]);const s=u.jsx("div",{className:`l7-control l7-control--glass${g?` ${g}`:""}`,style:e,children:u.jsx("button",{className:"l7-button-control",onClick:C,title:o?"退出全屏":"全屏","aria-label":o?"退出全屏":"全屏",children:u.jsx("span",{className:"material-symbols-outlined",children:o?"fullscreen_exit":"fullscreen"})})});return r?s:u.jsx("div",{className:`l7-control-anchor ${i}`,children:s})}YA.mark(qI);function TI({position:I="topright",transform:A,className:g,style:e}){const{mapsService:t,positionClassName:i}=OA(I),r=TA(),o=p.useCallback(async()=>{if(!window.navigator.geolocation){console.warn("[aimapui] Geolocation is not supported by this browser");return}if(t)try{const B=await new Promise((f,c)=>{window.navigator.geolocation.getCurrentPosition(({coords:h})=>f(h),h=>c(h))}),{longitude:C,latitude:s}=B;if(isNaN(C)||isNaN(s))return;const a=[C,s],Q=A?await A(a):a,n=t.getZoom();t.setZoomAndCenter(n>15?n:15,Q)}catch(B){console.warn("[aimapui] Geolocation error:",B)}},[t,A]),E=u.jsx("div",{className:`l7-control l7-control--glass${g?` ${g}`:""}`,style:e,children:u.jsx("button",{className:"l7-button-control",onClick:o,title:"定位","aria-label":"定位",children:u.jsx("span",{className:"material-symbols-outlined",children:"my_location"})})});return r?E:u.jsx("div",{className:`l7-control-anchor ${i}`,children:E})}YA.mark(TI);const OI=[{text:"Standard",value:"normal",preview:"linear-gradient(135deg, #e8e8e8 0%, #c8d8e8 40%, #a8c8d8 100%)"},{text:"Light",value:"light",preview:"linear-gradient(135deg, #f0f4f8 0%, #d6e4f0 40%, #e8eff5 100%)"},{text:"Dark",value:"dark",preview:"linear-gradient(135deg, #0d1b2a 0%, #1b2838 40%, #162032 100%)"},{text:"Dark Blue",value:"darkblue",preview:"linear-gradient(135deg, #0a1628 0%, #0f2040 40%, #091a30 100%)"},{text:"Satellite",value:"satellite",preview:"linear-gradient(135deg, #1a3a1a 0%, #2d5a2d 40%, #1d4a2d 100%)"},{text:"Fresh",value:"fresh",preview:"linear-gradient(135deg, #e8f5e9 0%, #c8e6c9 40%, #d4edda 100%)"}],g0=[{text:"Positron",value:"https://tiles.openfreemap.org/styles/positron",preview:"linear-gradient(135deg, #f2f3f0 0%, #d8dcd6 40%, #e8ebe5 100%)"},{text:"Bright",value:"https://tiles.openfreemap.org/styles/bright",preview:"linear-gradient(135deg, #e8e8e8 0%, #c8d8e8 40%, #a8c8d8 100%)"},{text:"Dark",value:"https://tiles.openfreemap.org/styles/dark",preview:"linear-gradient(135deg, #1a1a2e 0%, #16213e 40%, #0f3460 100%)"},{text:"Liberty",value:"https://tiles.openfreemap.org/styles/liberty",preview:"linear-gradient(135deg, #f0ece2 0%, #dfd7c8 40%, #c8bfad 100%)"},{text:"Fiord",value:"https://tiles.openfreemap.org/styles/fiord",preview:"linear-gradient(135deg, #2c3e50 0%, #34495e 40%, #415b76 100%)"}],I0=[{text:"Light",value:"light",preview:"linear-gradient(135deg, #f0f4f8 0%, #d6e4f0 40%, #e8eff5 100%)"},{text:"Dark",value:"dark",preview:"linear-gradient(135deg, #0d1b2a 0%, #1b2838 40%, #162032 100%)"},{text:"Normal",value:"normal",preview:"linear-gradient(135deg, #e8e8e8 0%, #c8d8e8 40%, #a8c8d8 100%)"}];function VI({position:I="topright",options:A,defaultValue:g,onThemeChange:e,className:t,style:i}){const{mapsService:r,positionClassName:o}=OA(I),E=TA(),[B,C]=p.useState(!1),[s,a]=p.useState(g??""),[Q,n]=p.useState(A??[]),f=p.useRef(null);p.useEffect(()=>{var D;if(A&&A.length>0){n(A);return}if(r){try{const d=(D=r.getMapStyleConfig)==null?void 0:D.call(r);if(d&&typeof d=="object"){const y=Object.entries(d).filter(([,S])=>typeof S=="string").map(([S,l])=>{const G=OI.find(F=>F.value===l);return{text:S,value:l,preview:G==null?void 0:G.preview}});if(y.length>0){n(y);return}}}catch{}n(OI)}},[r,A]),p.useEffect(()=>{var D;if(g){a(g);return}if(r)try{const d=(D=r.getMapStyle)==null?void 0:D.call(r);d&&a(d)}catch{}},[r,g]),p.useEffect(()=>{if(!B)return;const D=d=>{f.current&&!f.current.contains(d.target)&&C(!1)};return document.addEventListener("mousedown",D),()=>document.removeEventListener("mousedown",D)},[B]);const c=p.useCallback(D=>{if(a(D),r)try{r.setMapStyle(D)}catch{}e==null||e(D)},[r,e]),h=e0(I),w=u.jsxs("div",{ref:f,className:`l7-control l7-control--glass${t?` ${t}`:""}`,style:i,children:[u.jsx("button",{className:"l7-button-control",onClick:()=>C(!B),title:"地图样式","aria-label":"地图样式",children:u.jsx("span",{className:"material-symbols-outlined",children:"palette"})}),B&&Q.length>0&&u.jsx("div",{className:`l7-popper ${h}`,children:u.jsxs("div",{className:"l7-popper-content l7-theme-panel",children:[u.jsxs("div",{className:"l7-theme-panel__title",children:[u.jsx("span",{className:"material-symbols-outlined",style:{fontSize:16},children:"palette"}),"Map Themes"]}),u.jsx("div",{className:"l7-theme-panel__grid",children:Q.map(D=>{const d=s===D.value,y=D.preview??"linear-gradient(135deg, #e0e0e0 0%, #bdbdbd 100%)";return u.jsxs("button",{className:`l7-theme-card${d?" l7-theme-card--active":""}`,onClick:()=>c(D.value),title:D.text,children:[u.jsx("div",{className:"l7-theme-card__preview",style:{background:y}}),d&&u.jsx("span",{className:"material-symbols-outlined l7-theme-card__check",style:{fontVariationSettings:"'FILL' 1"},children:"check_circle"}),u.jsx("span",{className:"l7-theme-card__label",children:D.text})]},D.value)})})]})})]});return E?w:u.jsx("div",{className:`l7-control-anchor ${o}`,children:w})}function e0(I){switch(I){case"topleft":return"l7-popper-right l7-popper-start";case"topright":return"l7-popper-left l7-popper-start";case"bottomleft":return"l7-popper-right l7-popper-end";case"bottomright":return"l7-popper-left l7-popper-end";case"lefttop":return"l7-popper-bottom l7-popper-start";case"leftbottom":return"l7-popper-top l7-popper-start";case"righttop":return"l7-popper-bottom l7-popper-end";case"rightbottom":return"l7-popper-top l7-popper-end";default:return"l7-popper-bottom"}}YA.mark(VI);function jI({position:I="bottomleft",precision:A=6,transform:g,className:e,style:t}){const r=g??(([a,Q])=>[+a.toFixed(A),+Q.toFixed(A)]),{mapsService:o,positionClassName:E}=OA(I),B=TA(),C=p.useRef(null);p.useEffect(()=>{if(!o)return;const a=Q=>{const n=Q.lngLat??Q.lnglat;if(!n)return;const f=[n.lng,n.lat],c=r(f);C.current&&(C.current.innerText=c.join(", "))};return o.on("mousemove",a),()=>{o.off("mousemove",a)}},[o,r]);const s=u.jsx("div",{ref:C,className:`l7-control l7-control-mouse-location l7-control--glass${e?` ${e}`:""}`,style:t,children:" "});return B?s:u.jsx("div",{className:`l7-control-anchor ${E}`,children:s})}YA.mark(jI);function ZI({position:I="topright",format:A="png",onExport:g,className:e,style:t}){const{scene:i,mapsService:r,positionClassName:o}=OA(I),E=TA(),B=A==="jpg"?"jpeg":"png",C=p.useCallback(async()=>{var Q,n;try{const f=r?await((Q=r.exportMap)==null?void 0:Q.call(r,B)):void 0,c=i?await((n=i.exportPng)==null?void 0:n.call(i,B)):void 0,h=[f,c].filter(w=>!!w);return h.length===0?void 0:h.length===1?h[0]:t0(h,B)}catch{return}},[i,r,B]),s=p.useCallback(async()=>{var n;const Q=await C();if(g&&Q){g(Q);return}if(Q){const f=document.createElement("a");f.download=`aimap-export.${B==="jpeg"?"jpg":"png"}`,f.href=Q,f.click()}else try{if(r){const f=(n=r.getContainer)==null?void 0:n.call(r),c=f==null?void 0:f.querySelector("canvas");if(c&&typeof c.toDataURL=="function"){const h=c.toDataURL(`image/${B}`),w=document.createElement("a");w.download=`aimap-export.${B==="jpeg"?"jpg":"png"}`,w.href=h,w.click()}}}catch(f){console.warn("[aimapui] Export image failed:",f)}},[C,g,B,r]),a=u.jsx("div",{className:`l7-control l7-control--glass${e?` ${e}`:""}`,style:t,children:u.jsx("button",{className:"l7-button-control",onClick:s,title:"导出图片","aria-label":"导出图片",children:u.jsx("span",{className:"material-symbols-outlined",children:"photo_camera"})})});return E?a:u.jsx("div",{className:`l7-control-anchor ${o}`,children:a})}async function t0(I,A){const g=document.querySelector(".l7-map")||document.documentElement,{width:e=0,height:t=0}=g.getBoundingClientRect(),i=document.createElement("canvas");i.width=e,i.height=t;const r=i.getContext("2d");return(await Promise.all(I.map(E=>new Promise(B=>{const C=new Image;C.onload=()=>B(C),C.src=E})))).forEach(E=>{r==null||r.drawImage(E,0,0,e,t)}),i.toDataURL(`image/${A}`)}YA.mark(ZI);function _I({position:I="topright",layers:A,onToggle:g,onOpacityChange:e,className:t,style:i}){const[r,o]=p.useState(!1),E=p.useRef(null),[B,C]=p.useState(()=>{const c={};return A.forEach(h=>{c[h.id]=h.opacity??1}),c});p.useEffect(()=>{C(c=>{const h={...c};return A.forEach(w=>{w.opacity!==void 0&&(h[w.id]=w.opacity)}),h})},[A]);const{positionClassName:s}=OA(I),a=TA();if(p.useEffect(()=>{if(!r)return;const c=h=>{E.current&&!E.current.contains(h.target)&&o(!1)};return document.addEventListener("mousedown",c),()=>document.removeEventListener("mousedown",c)},[r]),!A.length)return null;const Q=i0(I),n=(c,h)=>{C(w=>({...w,[c]:h})),e==null||e(c,h)},f=u.jsxs("div",{ref:E,className:`l7-control l7-control--glass${t?` ${t}`:""}`,style:i,children:[u.jsx("button",{className:"l7-button-control",onClick:()=>o(!r),title:"图层控制","aria-label":"图层控制",children:u.jsx("span",{className:"material-symbols-outlined",children:"layers"})}),r&&u.jsx("div",{className:`l7-popper ${Q}`,children:u.jsxs("div",{className:"l7-popper-content l7-layer-panel",children:[u.jsxs("div",{className:"l7-layer-panel__title",children:[u.jsx("span",{className:"material-symbols-outlined",style:{fontSize:16},children:"layers"}),"Layers"]}),u.jsx("div",{className:"l7-layer-panel__list",children:A.map(c=>{const h=c.visible!==!1,w=B[c.id]??c.opacity??1,D=c.icon??"layers";return u.jsxs("div",{className:`l7-layer-item${h?"":" l7-layer-item--disabled"}`,children:[u.jsxs("div",{className:"l7-layer-item__header",children:[u.jsx("span",{className:"material-symbols-outlined l7-layer-item__icon",children:D}),u.jsx("span",{className:"l7-layer-item__name",children:c.name??c.id}),u.jsxs("label",{className:"l7-layer-toggle",children:[u.jsx("input",{type:"checkbox",checked:h,onChange:()=>g(c.id,!h)}),u.jsx("span",{className:"l7-layer-toggle__track"})]})]}),e&&u.jsxs("div",{className:"l7-layer-item__slider",children:[u.jsx("span",{className:"material-symbols-outlined",style:{fontSize:14},children:"opacity"}),u.jsx("input",{type:"range",min:0,max:100,value:Math.round(w*100),onChange:d=>n(c.id,+d.target.value/100),className:"l7-layer-slider"})]})]},c.id)})})]})})]});return a?f:u.jsx("div",{className:`l7-control-anchor ${s}`,children:f})}function i0(I){switch(I){case"topleft":return"l7-popper-right l7-popper-start";case"topright":return"l7-popper-left l7-popper-start";case"bottomleft":return"l7-popper-right l7-popper-end";case"bottomright":return"l7-popper-left l7-popper-end";case"lefttop":return"l7-popper-bottom l7-popper-start";case"leftbottom":return"l7-popper-top l7-popper-start";case"righttop":return"l7-popper-bottom l7-popper-end";case"rightbottom":return"l7-popper-top l7-popper-end";default:return"l7-popper-bottom"}}YA.mark(_I);function kt({controls:I,layers:A,onLayerToggle:g,containerRef:e}){const t=uA();return u.jsx(KI,{children:I.map((i,r)=>u.jsx(C0,{control:i,layers:A,onLayerToggle:g,scene:t,containerRef:e},`${i.type}-${r}`))})}function C0({control:I,layers:A,onLayerToggle:g,scene:e,containerRef:t}){var r,o,E,B,C;const i=I.position??void 0;switch(I.type){case"zoom":return u.jsx(xI,{position:i??"bottomright"});case"scale":return u.jsx(JI,{position:i??"bottomleft",maxWidth:(r=I.options)==null?void 0:r.maxWidth,metric:((o=I.options)==null?void 0:o.unit)!=="imperial",imperial:((E=I.options)==null?void 0:E.unit)==="imperial"});case"fullscreen":return u.jsx(qI,{position:i??"topright",container:t==null?void 0:t.current});case"geoLocate":return u.jsx(TI,{position:i??"topright"});case"mapTheme":return u.jsx(VI,{position:i??"topright"});case"mouseLocation":return u.jsx(jI,{position:i??"bottomleft",precision:(B=I.options)==null?void 0:B.precision});case"exportImage":return u.jsx(ZI,{position:i??"topright",format:(C=I.options)==null?void 0:C.format});case"layerSwitch":return u.jsx(_I,{position:i??"topright",layers:A.map((s,a)=>({id:s.id??`layer-${a}`,name:s.name,visible:s.visible})),onToggle:g??(()=>{})});default:return null}}var Qg={},Ft;function B0(){if(Ft)return Qg;Ft=1;var I=NI;if(process.env.NODE_ENV==="production")Qg.createRoot=I.createRoot,Qg.hydrateRoot=I.hydrateRoot;else{var A=I.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;Qg.createRoot=function(g,e){A.usingClientEntryPoint=!0;try{return I.createRoot(g,e)}finally{A.usingClientEntryPoint=!1}},Qg.hydrateRoot=function(g,e,t){A.usingClientEntryPoint=!0;try{return I.hydrateRoot(g,e,t)}finally{A.usingClientEntryPoint=!1}}}return Qg}var o0=B0();const WA={aerialway:"M13,5H8V2.6c0.1854-0.1047,0.3325-0.2659,0.42-0.46L13.5,1.5C13.7761,1.5,14,1.2761,14,1s-0.2239-0.5-0.5-0.5L8.28,1.15 C8.0954,0.9037,7.8077,0.7562,7.5,0.75C7.0963,0.752,6.7334,0.9966,6.58,1.37L1.5,2C1.2239,2,1,2.2239,1,2.5S1.2239,3,1.5,3 l5.22-0.65C6.7967,2.4503,6.8917,2.5351,7,2.6V5H2C1.4477,5,1,5.4477,1,6v7c0,0.5523,0.4477,1,1,1h11c0.5523,0,1-0.4477,1-1V6 C14,5.4477,13.5523,5,13,5z M7,11H3V7h4V11z M12,11H8V7h4V11z",airfield:"M6.8182,0.6818H4.7727 C4.0909,0.6818,4.0909,0,4.7727,0h5.4545c0.6818,0,0.6818,0.6818,0,0.6818H8.1818c0,0,0.8182,0.5909,0.8182,1.9545V4h6v2L9,8l-0.5,5 l2.5,1.3182V15H4v-0.6818L6.5,13L6,8L0,6V4h6V2.6364C6,1.2727,6.8182,0.6818,6.8182,0.6818z",airport:"M15,6.8182L15,8.5l-6.5-1 l-0.3182,4.7727L11,14v1l-3.5-0.6818L4,15v-1l2.8182-1.7273L6.5,7.5L0,8.5V6.8182L6.5,4.5v-3c0,0,0-1.5,1-1.5s1,1.5,1,1.5v2.8182 L15,6.8182z","alcohol-shop":"M14,4h-4v3.44l0,0c0,0,0,0,0,0.06c0.003,0.9096,0.6193,1.7026,1.5,1.93V13H11c-0.2761,0-0.5,0.2239-0.5,0.5 S10.7239,14,11,14h2c0.2761,0,0.5-0.2239,0.5-0.5S13.2761,13,13,13h-0.5V9.43c0.8807-0.2274,1.497-1.0204,1.5-1.93c0,0,0,0,0-0.06 l0,0V4z M13,7.5c0,0.5523-0.4477,1-1,1s-1-0.4477-1-1V5h2V7.5z M5.5,2.5V2C5.7761,2,6,1.7761,6,1.5S5.7761,1,5.5,1V0.5 C5.5,0.2239,5.2761,0,5,0H4C3.7239,0,3.5,0.2239,3.5,0.5V1C3.2239,1,3,1.2239,3,1.5S3.2239,2,3.5,2v0.5C3.5,3.93,1,5.57,1,7v6 c0,0.5523,0.4477,1,1,1h5c0.5318-0.0465,0.9535-0.4682,1-1V7C8,5.65,5.5,3.85,5.5,2.5z M4.5,12C3.1193,12,2,10.8807,2,9.5 S3.1193,7,4.5,7S7,8.1193,7,9.5S5.8807,12,4.5,12z","american-football":"M7.53,3C3.09,3,1,7.5,1,7.5S3.09,12,7.53,12S14,7.5,14,7.5S12,3,7.53,3z M11,7v1.5C11,8.7761,10.7761,9,10.5,9 S10,8.7761,10,8.5V8H8v0.5C8,8.7761,7.7761,9,7.5,9S7,8.7761,7,8.5V8H5v0.5C5,8.7761,4.7761,9,4.5,9S4,8.7761,4,8.5v-2 C4,6.2239,4.2239,6,4.5,6S5,6.2239,5,6.5V7h2V6.5C7,6.2239,7.2239,6,7.5,6S8,6.2239,8,6.5V7h2V6.5C10,6.2239,10.2239,6,10.5,6 S11,6.2239,11,6.5V7z","amusement-park":"M13.5 7C13.5 9.02798 12.4939 10.821 10.9535 11.907L12 13.9999H3L4.04645 11.907C2.50613 10.821 1.5 9.02798 1.5 7C1.5 3.68629 4.18629 1 7.5 1C10.8137 1 13.5 3.68629 13.5 7ZM12.2984 7.125H8.99487C8.96844 7.4453 8.84138 7.73706 8.64538 7.96861L10.9814 10.3046C11.7719 9.47202 12.2669 8.35614 12.2984 7.125ZM10.8046 10.4814L8.46861 8.14538C8.33136 8.26156 8.17296 8.35351 8 8.41465V11.7743C9.08206 11.6623 10.0574 11.1908 10.8046 10.4814ZM6.00513 7.125H2.7016C2.73307 8.35614 3.2281 9.47202 4.01864 10.3046L6.35462 7.96861C6.15862 7.73706 6.03156 7.4453 6.00513 7.125ZM4.19542 10.4814C4.94259 11.1908 5.91794 11.6623 7 11.7743V8.41465C6.82704 8.35351 6.66864 8.26156 6.53139 8.14538L4.19542 10.4814ZM12.2984 6.875C12.2669 5.64386 11.7719 4.52798 10.9814 3.69542L8.64538 6.03139C8.84138 6.26294 8.96844 6.5547 8.99487 6.875H12.2984ZM10.8046 3.51864C9.97202 2.7281 8.85614 2.23307 7.625 2.2016V5.50513C7.9453 5.53156 8.23706 5.65862 8.46861 5.85462L10.8046 3.51864ZM7.375 5.50513V2.2016C6.14386 2.23307 5.02798 2.7281 4.19542 3.51864L6.53139 5.85462C6.76294 5.65862 7.0547 5.53156 7.375 5.50513ZM6.35462 6.03139L4.01864 3.69542C3.2281 4.52798 2.73307 5.64386 2.7016 6.875H6.00513C6.03156 6.5547 6.15862 6.26294 6.35462 6.03139Z","animal-shelter":"M 7.528,0.895 9,2 h 1 L 11.473,0.896 C 11.689502,0.73373378 12,0.8884387 12,1.159 V 4.5 c 0,0.722 -0.522,1.184 -1,1.573 V 10 l 0.8,2.4 0.706,0.353 c 0.302922,0.151551 0.494181,0.461283 0.494,0.8 C 13,13.8 12.8,14 12.553,14 H 4.25 C 3.017,14 2,13 2,11.713 2,9.5424588 2.4530836,7.9300225 2.745,6.845 2.8910836,6.3020225 3.0352907,5.8946079 3.138,5.614 3.1956028,5.4566256 3.253276,5.3110749 3.33,5.165 3.7788405,4.3104525 5.0743666,4.9556117 4.672,5.833 4.6232251,5.9393571 4.5778358,6.0512046 4.539,6.15 4.4477518,6.3821288 4.325004,6.7430011 4.193,7.234 3.947004,8.1490011 3.674,9.521 3.558,11.367 3.926,9.307 5.98,7.239 7.635,5.758 7.29,5.432 7.001,5.038 7.001,4.5 l 0,-3.342 c 0,-0.2705613 0.3106215,-0.42543084 0.527,-0.263 z",aquarium:"M1.13505 8.57743C1.98919 6.14741 4.72075 2 10 2C12.6518 2 14 3 14 3C14 3 11.6865 3 10.6203 3.44512C10.54 3.47864 10.4747 3.53744 10.4329 3.61375C10.2432 3.95995 9.75252 5.04744 10.3231 6.19506C10.4172 6.38427 10.6364 6.46548 10.8383 6.40312C11.3474 6.24589 12.3301 5.89727 13.0761 5.35729C13.2973 5.1972 13.615 5.25773 13.6797 5.52298C13.9401 6.59045 13.9401 8.40955 13.6797 9.47702C13.615 9.74227 13.2973 9.8028 13.0761 9.64271C12.3301 9.10273 11.3474 8.75411 10.8383 8.59688C10.6364 8.53452 10.4172 8.61573 10.3231 8.80494C9.75252 9.95256 10.2432 11.04 10.4329 11.3863C10.4747 11.4626 10.54 11.5214 10.6203 11.5549C11.6865 12 14 12 14 12C13.5 12.3333 11.8 13 9.00001 13C4.51722 13 2.02736 10.3427 1.25972 9.35985C1.08546 9.13673 1.04117 8.84452 1.13505 8.57743ZM5.00001 9C5.69037 9 6.25001 8.44036 6.25001 7.75C6.25001 7.05964 5.69037 6.5 5.00001 6.5C4.30966 6.5 3.75001 7.05964 3.75001 7.75C3.75001 8.44036 4.30966 9 5.00001 9Z",arrow:"M8.29289 2.29289C8.68342 1.90237 9.31658 1.90237 9.70711 2.29289L14.2071 6.79289C14.5976 7.18342 14.5976 7.81658 14.2071 8.20711L9.70711 12.7071C9.31658 13.0976 8.68342 13.0976 8.29289 12.7071C7.90237 12.3166 7.90237 11.6834 8.29289 11.2929L11 8.5H1.5C0.947715 8.5 0.5 8.05228 0.5 7.5C0.5 6.94772 0.947715 6.5 1.5 6.5H11L8.29289 3.70711C7.90237 3.31658 7.90237 2.68342 8.29289 2.29289Z","art-gallery":"m10.71 3-2.86-2.849996c-.1945-.1960996-.511-.1973996-.7071-.0029-.001.001-.0019.0019-.0029.0029l-2.85 2.849996h-2.79c-.2761 0-.5.2239-.5.5v9c0 .2761.2239.5.5.5h12c.2761 0 .5-.2239.5-.5v-9c0-.2761-.2239-.5-.5-.5zm-3.21-1.79 1.79 1.79h-3.58zm5.5 10.79h-11v-8h11zm-8-5c-.5523 0-1-.4477-1-1s.4477-1 1-1 1 .4477 1 1-.4477 1-1 1zm7 4h-7.5l1.5-3 1.25 2.5 2.25-4.5z",attraction:"M6,2C5.446,2,5.2478,2.5045,5,3L4.5,4h-2C1.669,4,1,4.669,1,5.5v5C1,11.331,1.669,12,2.5,12h10 c0.831,0,1.5-0.669,1.5-1.5v-5C14,4.669,13.331,4,12.5,4h-2L10,3C9.75,2.5,9.554,2,9,2H6z M2.5,5C2.7761,5,3,5.2239,3,5.5 S2.7761,6,2.5,6S2,5.7761,2,5.5S2.2239,5,2.5,5z M7.5,5c1.6569,0,3,1.3431,3,3s-1.3431,3-3,3s-3-1.3431-3-3S5.8431,5,7.5,5z M7.5,6.5C6.6716,6.5,6,7.1716,6,8l0,0c0,0.8284,0.6716,1.5,1.5,1.5l0,0C8.3284,9.5,9,8.8284,9,8l0,0C9,7.1716,8.3284,6.5,7.5,6.5 L7.5,6.5z",bakery:"M5.294,4.382,6,9.5a.979.979,0,0,0,1,1H8a.979.979,0,0,0,1-1l.706-5.118C9.706,3,7.5,3,7.5,3S5.291,3,5.294,4.382ZM3.5,5C2,5,2,6,2,6l1,4H4.5a.793.793,0,0,0,.794-.765L4.5,5Zm-2,2.5a1.533,1.533,0,0,0-1.059.412A1.366,1.366,0,0,0,0,8.794V11H.882A1.02,1.02,0,0,0,2,10ZM11.5,5C13,5,13,6,13,6l-1,4H10.5a.793.793,0,0,1-.794-.765L10.5,5Zm2,2.5a1.533,1.533,0,0,1,1.059.412A1.366,1.366,0,0,1,15,8.794V11h-.882A1.02,1.02,0,0,1,13,10Z",bank:"M1,3C0.446,3,0,3.446,0,4v7c0,0.554,0.446,1,1,1h13c0.554,0,1-0.446,1-1V4c0-0.554-0.446-1-1-1H1z M1,4h1.5 C2.7761,4,3,4.2239,3,4.5S2.7761,5,2.5,5S2,4.7761,2,4.5L1.5,5C1.7761,5,2,5.2239,2,5.5S1.7761,6,1.5,6S1,5.7761,1,5.5V4z M7.5,4 C8.8807,4,10,5.567,10,7.5l0,0C10,9.433,8.8807,11,7.5,11S5,9.433,5,7.5S6.1193,4,7.5,4z M12.5,4H14v1.5C14,5.7761,13.7761,6,13.5,6 S13,5.7761,13,5.5S13.2239,5,13.5,5L13,4.5C13,4.7761,12.7761,5,12.5,5S12,4.7761,12,4.5S12.2239,4,12.5,4z M7.5,5.5 c-0.323,0-0.5336,0.1088-0.6816,0.25h1.3633C8.0336,5.6088,7.823,5.5,7.5,5.5z M6.625,6C6.5795,6.091,6.5633,6.1711,6.5449,6.25 h1.9102C8.4367,6.1711,8.4205,6.091,8.375,6H6.625z M6.5,6.5v0.25h2V6.5H6.5z M6.5,7v0.25h2V7H6.5z M6.5,7.5v0.25h2V7.5H6.5z M6.5,8 L6.25,8.25h2L8.5,8H6.5z M6,8.5c0,0,0.0353,0.1024,0.1016,0.25H8.375L8,8.5H6z M1.5,9C1.7761,9,2,9.2239,2,9.5S1.7761,10,1.5,10 L2,10.5C2,10.2239,2.2239,10,2.5,10S3,10.2239,3,10.5S2.7761,11,2.5,11H1V9.5C1,9.2239,1.2239,9,1.5,9z M6.2383,9 C6.2842,9.0856,6.3144,9.159,6.375,9.25h2.2676C8.7092,9.1121,8.75,9,8.75,9H6.2383z M13.5,9C13.7761,9,14,9.2239,14,9.5V11h-1.5 c-0.2761,0-0.5-0.2239-0.5-0.5s0.2239-0.5,0.5-0.5s0.5,0.2239,0.5,0.5l0.5-0.5C13.2239,10,13,9.7761,13,9.5S13.2239,9,13.5,9z M6.5664,9.5c0.0786,0.0912,0.1647,0.1763,0.2598,0.25h1.4199C8.3462,9.6727,8.4338,9.5883,8.5,9.5H6.5664z","bank-JP":"M12.2808,3.3763l-2.9,3.625H11.25a.75.75,0,0,1,0,1.5H8.5v1h2.75a.75.75,0,0,1,0,1.5H8.5v1.25a1,1,0,0,1-2,0v-1.25H3.75a.75.75,0,1,1,0-1.5H6.5v-1H3.75a.75.75,0,0,1,0-1.5H5.6193l-2.9-3.625A1,1,0,0,1,4.2771,2.1216l.0037.0047L7.5,6.15l3.2192-4.024a1,1,0,0,1,1.5653,1.2453Z",bar:"M7.5,1c-2,0-7,0.25-6.5,0.75L7,8v4 c0,1-3,0.5-3,2h7c0-1.5-3-1-3-2V8l6-6.25C14.5,1.25,9.5,1,7.5,1z M7.5,2c2.5,0,4.75,0.25,4.75,0.25L11.5,3h-8L2.75,2.25 C2.75,2.25,5,2,7.5,2z",barrier:"m13 2h-11c-.26522 0-.51957.10536-.70711.29289-.18753.18754-.29289.44189-.29289.70711v6c0 .26522.10536.51957.29289.70711.18754.18753.44189.29289.70711.29289h1v2.5c0 .1326.05268.2598.14645.3536.09376.0937.22094.1464.35355.1464s.25979-.0527.35355-.1464c.09377-.0938.14645-.221.14645-.3536v-.5h7v.5c0 .1326.0527.2598.1464.3536.0938.0937.221.1464.3536.1464s.2598-.0527.3536-.1464c.0937-.0938.1464-.221.1464-.3536v-2.5h1c.2652 0 .5196-.10536.7071-.29289.1875-.18754.2929-.44189.2929-.70711v-6c0-.26522-.1054-.51957-.2929-.70711-.1875-.18753-.4419-.29289-.7071-.29289zm0 1v2l-2-2zm-3.5 0 3.5 3.5v2.5l-6-6zm-4 6-3.5-3.5v-2.5l6 6zm-3.5 0v-2l2 2zm9 2h-7v-1h7zm-.207-2h-1.293l-6-6h2l6 6z",baseball:"m9.00003 3.5c0 .8284-.6716 1.5-1.5 1.5s-1.5-.6716-1.5-1.5.6716-1.5 1.5-1.5 1.5.6716 1.5 1.5zm-3-3.22c0-.1546-.1254-.28-.28-.28-.0979.0262-.1852.0821-.25.16l-2.47 4.43c-.0059.0431-.0059.0869 0 .13 0 .1546.1254.28.28.28.1015-.0243.1926-.0803.26-.16l2.46-4.43c.006-.0431.006-.0869 0-.13zm5.89997 13.92-2.89997-7.81c-.0474-.2273-.2478-.3901-.48-.39h-5c-.2761 0-.5.2239-.5.5s.2239.5.5.5h2.48l1.45 2.51-4.27 4.61c-.1141.0932-.1802.2327-.18.38 0 .2761.2239.5.5.5.1224-.0006.2401-.047.33-.13l4.45-4.15 2.75997 4c.0895.1592.2574.2584.44.26.2796.0002.5092-.2207.52-.5-.0042-.1013-.039-.199-.1-.28z",basketball:"M3.66001 7H2.03C2.11012 6.02077 2.45969 5.05281 3.04001 4.26C3.39039 5.12432 3.59972 6.0693 3.66001 7ZM4.73501 7H7V2C5.78985 2.1061 4.72468 2.61284 3.83501 3.44C4.36491 4.54578 4.67079 5.77549 4.73501 7ZM8 2V7H10.265C10.3292 5.77549 10.6351 4.54578 11.165 3.44C10.2753 2.61284 9.21014 2.1061 8 2ZM11.96 4.26C11.6096 5.12432 11.4003 6.0693 11.34 7H12.97C12.8899 6.02077 12.5403 5.05281 11.96 4.26ZM14 8.49919C14 8.77489 13.7765 8.99838 13.5008 8.99838H11.72L10.96 10.5184V12.8984C10.9578 12.9736 10.934 13.0466 10.8915 13.1087C10.8489 13.1707 10.7894 13.2192 10.72 13.2484C10.6743 13.2607 10.6273 13.2674 10.58 13.2684C10.5312 13.2706 10.4825 13.2619 10.4375 13.2428C10.3925 13.2238 10.3524 13.195 10.32 13.1584L9.3 12.1484L7.71 13.2084C7.64698 13.2476 7.57423 13.2684 7.5 13.2684C7.42577 13.2684 7.35303 13.2476 7.29 13.2084L5.7 12.1484L4.68 13.1584C4.62956 13.211 4.56471 13.2477 4.49357 13.2637C4.42243 13.2797 4.34814 13.2744 4.28 13.2484C4.21063 13.2192 4.1511 13.1707 4.10854 13.1087C4.06599 13.0466 4.04219 12.9736 4.04 12.8984V10.5184L3.28 8.99838H1.49919C1.2235 8.99838 1 8.77489 1 8.4992C0.999998 8.2235 1.22349 8 1.49919 8H13.5008C13.7765 8 14 8.2235 14 8.49919ZM6.86 8.99838H4.12L4.75 10.2684C4.7772 10.3173 4.791 10.3725 4.79 10.4284V11.9884L5.35 11.4384L6.86 8.99838ZM8.84 11.5484L7.5 9.38838L6.16 11.5484L7.5 12.4484L8.84 11.5484ZM10.89 8.99838H8.14L9.65 11.4384L10.21 11.9884V10.4284C10.209 10.3725 10.2228 10.3173 10.25 10.2684L10.89 8.99838Z",bbq:"M9.32,7.655C10.8782,7.108,11.9471,5.6506,12,4H3c0.053,1.6299,1.0978,3.0728,2.63,3.631L4.923,9.044 c-1.3571-0.2355-2.6482,0.6737-2.8837,2.0308s0.6737,2.6482,2.0308,2.8837C4.9927,14.1187,5.9273,13.7485,6.49,13h4.223l0.335,0.717 c0.0836,0.1735,0.2594,0.2836,0.452,0.283c0.0733,0.0003,0.1457-0.0158,0.212-0.047c0.2497-0.117,0.3575-0.4141,0.241-0.664 L9.32,7.655z M4.5,12.75c-0.6904,0-1.25-0.5596-1.25-1.25s0.5596-1.25,1.25-1.25s1.25,0.5596,1.25,1.25 C5.7484,12.1897,5.1897,12.7484,4.5,12.75z M6.95,12c0.2066-1.007-0.2268-2.0374-1.091-2.594L6.6,7.923 c0.577,0.1042,1.168,0.1042,1.745,0l1.9,4.07L6.95,12z M4.75,1C4.6119,1,4.5,1.1119,4.5,1.25c0,0.5-0.5,0.5-0.5,0.5c-1,0-1,1-1,1 C3,2.8881,3.1119,3,3.25,3S3.5,2.8881,3.5,2.75c0-0.5,0.5-0.5,0.5-0.5c1,0,1-1,1-1C5,1.1119,4.8881,1,4.75,1z M6.75,1 C6.6119,1,6.5,1.1119,6.5,1.25c0,0.5-0.5,0.5-0.5,0.5c-1,0-1,1-1,1C5,2.8881,5.1119,3,5.25,3S5.5,2.8881,5.5,2.75 c0-0.5,0.5-0.5,0.5-0.5c1,0,1-1,1-1C7,1.1119,6.8881,1,6.75,1z M8.75,1C8.6119,1,8.5,1.1119,8.5,1.25c0,0.5-0.5,0.5-0.5,0.5 c-1,0-1,1-1,1C7,2.8881,7.1119,3,7.25,3S7.5,2.8881,7.5,2.75c0-0.5,0.5-0.5,0.5-0.5c1,0,1-1,1-1C9,1.1119,8.8881,1,8.75,1z M10.75,1 c-0.1381,0-0.25,0.1119-0.25,0.25c0,0.5-0.5,0.5-0.5,0.5c-1,0-1,1-1,1C9,2.8881,9.1119,3,9.25,3S9.5,2.8881,9.5,2.75 c0-0.5,0.5-0.5,0.5-0.5c1,0,1-1,1-1C11,1.1119,10.8881,1,10.75,1z M12.75,1c-0.1381,0-0.25,0.1119-0.25,0.25c0,0.5-0.5,0.5-0.5,0.5 c-1,0-1,1-1,1C11,2.8881,11.1119,3,11.25,3s0.25-0.1119,0.25-0.25c0-0.5,0.5-0.5,0.5-0.5c1,0,1-1,1-1C13,1.1119,12.8881,1,12.75,1z",beach:"M5.3608,1.67l-.01,4.02a4.4523,4.4523,0,0,0-1.1-.11c-.37.1-.74.63-1.1.76A4.2019,4.2019,0,0,1,5.3608,1.67Zm2.41-.64,2.03,3.45a3.1832,3.1832,0,0,1,.84-.61c.36-.1.94.17,1.34.11A4.2018,4.2018,0,0,0,7.7708,1.03ZM1.0008,13h13c-.66-.66-2.64-1.11-4.34-1.33l-1.87-7c.52-.05,1.15.03,1.53,0l-2.11-3.6h-.01a6.1743,6.1743,0,0,0-.7.14,4.3792,4.3792,0,0,0-.64.22l-.01,4.15c.35-.17.84-.54,1.3-.74l1.8,6.74c-.58-.05-1.09-.08-1.45-.08C6.0308,11.5,2.0008,12,1.0008,13Z",beer:"M12,5V2c0,0-1-1-4.5-1S3,2,3,2v3c0.0288,1.3915,0.3706,2.7586,1,4c0.6255,1.4348,0.6255,3.0652,0,4.5c0,0,0,1,3.5,1 s3.5-1,3.5-1c-0.6255-1.4348-0.6255-3.0652,0-4.5C11.6294,7.7586,11.9712,6.3915,12,5z M7.5,13.5 c-0.7966,0.035-1.5937-0.0596-2.36-0.28c0.203-0.7224,0.304-1.4696,0.3-2.22h4.12c-0.004,0.7504,0.097,1.4976,0.3,2.22 C9.0937,13.4404,8.2966,13.535,7.5,13.5z M7.5,5C6.3136,5.0299,5.1306,4.8609,4,4.5v-2C5.131,2.1411,6.3137,1.9722,7.5,2 C8.6863,1.9722,9.869,2.1411,11,2.5v2C9.8694,4.8609,8.6864,5.0299,7.5,5z",bicycle:"M7.5,2c-0.6761-0.01-0.6761,1.0096,0,1H9v1.2656l-2.8027,2.334L5.2226,4H5.5c0.6761,0.01,0.6761-1.0096,0-1h-2 c-0.6761-0.01-0.6761,1.0096,0,1h0.6523L5.043,6.375C4.5752,6.1424,4.0559,6,3.5,6C1.5729,6,0,7.5729,0,9.5S1.5729,13,3.5,13 S7,11.4271,7,9.5c0-0.6699-0.2003-1.2911-0.5293-1.8242L9.291,5.3262l0.4629,1.1602C8.7114,7.0937,8,8.2112,8,9.5 c0,1.9271,1.5729,3.5,3.5,3.5S15,11.4271,15,9.5S13.4271,6,11.5,6c-0.2831,0-0.5544,0.0434-0.8184,0.1074L10,4.4023V2.5 c0-0.2761-0.2239-0.5-0.5-0.5H7.5z M3.5,7c0.5923,0,1.1276,0.2119,1.5547,0.5527l-1.875,1.5625 c-0.5109,0.4273,0.1278,1.1945,0.6406,0.7695l1.875-1.5625C5.8835,8.674,6,9.0711,6,9.5C6,10.8866,4.8866,12,3.5,12S1,10.8866,1,9.5 S2.1133,7,3.5,7L3.5,7z M11.5,7C12.8866,7,14,8.1134,14,9.5S12.8866,12,11.5,12S9,10.8866,9,9.5c0-0.877,0.4468-1.6421,1.125-2.0879 l0.9102,2.2734c0.246,0.6231,1.1804,0.2501,0.9297-0.3711l-0.9082-2.2695C11.2009,7.0193,11.3481,7,11.5,7L11.5,7z","bicycle-share":"M10,1C9.4477,1,9,1.4477,9,2c0,0.5523,0.4477,1,1,1s1-0.4477,1-1C11,1.4477,10.5523,1,10,1z M8.1445,2.9941 c-0.13,0.0005-0.2547,0.0517-0.3477,0.1426l-2.6406,2.5c-0.2256,0.2128-0.2051,0.5775,0.043,0.7637L7,7.75v2.75 c-0.01,0.6762,1.0096,0.6762,1,0v-3c0.0003-0.1574-0.0735-0.3057-0.1992-0.4004L7.0332,6.5234l1.818-1.7212l0.7484,0.9985 C9.6943,5.9265,9.8426,6.0003,10,6h1.5c0.6761,0.01,0.6761-1.0096,0-1h-1.25L9.5,4L8.9004,3.1992 C8.8103,3.0756,8.6685,3,8.5156,2.9941H8.1445z M3,7c-1.6569,0-3,1.3432-3,3s1.3431,3,3,3s3-1.3432,3-3S4.6569,7,3,7z M12,7 c-1.6569,0-3,1.3432-3,3s1.3431,3,3,3s3-1.3432,3-3S13.6569,7,12,7z M3,8c1.1046,0,2,0.8954,2,2s-0.8954,2-2,2s-2-0.8954-2-2 S1.8954,8,3,8z M12,8c1.1046,0,2,0.8954,2,2s-0.8954,2-2,2s-2-0.8954-2-2S10.8954,8,12,8z","blood-bank":"m11.2 6.1-3.7-5.1-3.7 5.1c-.5.7-.8 1.6-.8 2.5 0 2.4 2 4.4 4.5 4.4s4.5-2 4.5-4.4c0-.9-.3-1.8-.8-2.5zm-1.2 2.9h-2v2h-1v-2h-2v-1h2v-2h1v2h2z","bowling-alley":"M10.922 3.166c0 1.006-.335 1.857-.693 2.77-.414 1.052-.86 2.185-.86 3.73 0 2.166.687 4.333 1.409 4.333h1.444c.723 0 1.409-2.166 1.409-4.333 0-1.545-.446-2.678-.86-3.73-.358-.912-.693-1.764-.693-2.77 0-.722.144-.723.144-1.445A.743.743 0 0 0 11.5.999a.743.743 0 0 0-.722.722c0 .723.144.723.144 1.445Zm-2.552 6.5c0-1.234.254-2.236.55-3.091a4.5 4.5 0 1 0-.17 6.038c-.237-.865-.38-1.91-.38-2.947ZM5.24 7.12a.62.62 0 1 1-1.24 0 .62.62 0 0 1 1.24 0Zm-1 2a.62.62 0 1 1-1.24 0 .62.62 0 0 1 1.24 0Zm2 0a.62.62 0 1 1-1.24 0 .62.62 0 0 1 1.24 0Z",bridge:"m0 6.84201v4.15799h2v-1c.036-1.08899.911-1.96399 2-1.99999 1.089.036 1.964.911 2 1.99999v1h3v-1c.036-1.08899.911-1.96399 2-1.99999 1.089.036 1.964.911 2 1.99999v1h2v-4.15799c-4.4-5.76-11.929-4.442-15 0zm9.5-3.108c.514.121 1.016.289 1.5.5v2.766h-1.5zm-.5-.1v3.366h-1.5v-3.494c.503 0 1.005.043 1.5.128zm-5.5.843c.48-.248.982-.451 1.5-.606v3.129h-1.5zm2 2.523v-3.27c.493-.115.995-.187 1.5-.215v3.485zm-2.5-2.256v2.256h-2.5c.676-.906 1.532-1.672 2.5-2.256zm8.5 2.256v-2.5l-.053-.053c1.202.603 2.247 1.477 3.053 2.553z",building:"M3,2v11h5v-3h3v3h1V2H3z M7,12H4v-2h3V12z M7,9H4V7h3V9z M7,6H4V4h3V6z M11,9H8V7h3V9z M11,6H8V4h3V6z","building-alt1":"M11,13.5v-9C11,4.2,10.8,4,10.5,4H9V1L5,2.1v11.4H2V14h11v-0.5H11z M7,13.5V3h1v10.5H7z",bus:"M2 3C2 1.9 2.9 1 4 1H11C12.1 1 13 1.9 13 3V11C13 12 12 12 12 12V13C12 13.55 11.55 14 11 14C10.45 14 10 13.55 10 13V12H5V13C5 13.55 4.55 14 4 14C3.45 14 3 13.55 3 13V12C2 12 2 11 2 11V3ZM3.5 4C3.22 4 3 4.22 3 4.5V7.5C3 7.78 3.22 8 3.5 8H11.5C11.78 8 12 7.78 12 7.5V4.5C12 4.22 11.78 4 11.5 4H3.5ZM4 9C3.45 9 3 9.45 3 10C3 10.55 3.45 11 4 11C4.55 11 5 10.55 5 10C5 9.45 4.55 9 4 9ZM11 9C10.45 9 10 9.45 10 10C10 10.55 10.45 11 11 11C11.55 11 12 10.55 12 10C12 9.45 11.55 9 11 9ZM4 2.5C4 2.78 4.22 3 4.5 3H10.5C10.78 3 11 2.78 11 2.5C11 2.22 10.78 2 10.5 2H4.5C4.22 2 4 2.22 4 2.5Z",cafe:"M12,5h-2V3H2v4c0.0133,2.2091,1.8149,3.9891,4.024,3.9758C7.4345,10.9673,8.7362,10.2166,9.45,9H12c1.1046,0,2-0.8954,2-2 S13.1046,5,12,5z M12,8H9.86C9.9487,7.6739,9.9958,7.3379,10,7V6h2c0.5523,0,1,0.4477,1,1S12.5523,8,12,8z M10,12.5 c0,0.2761-0.2239,0.5-0.5,0.5h-7C2.2239,13,2,12.7761,2,12.5S2.2239,12,2.5,12h7C9.7761,12,10,12.2239,10,12.5z",campsite:"M14 10V11C14 11.5523 13.5523 12 13 12H2C1.44772 12 1 11.5523 1 11V10C1 9.44772 1.44772 9.00001 2 9.00001H2.25L7.03206 1.25762C7.24699 0.90965 7.75302 0.909651 7.96794 1.25762L12.75 9.00001H13C13.5523 9.00001 14 9.44772 14 10ZM10.5 9.00001L7.5 4.00001L4.5 9.00001H10.5Z",car:"M13.84,6.852,12.6,5.7,11.5,3.5a1.05,1.05,0,0,0-.9-.5H4.4a1.05,1.05,0,0,0-.9.5L2.4,5.7,1.16,6.852A.5.5,0,0,0,1,7.219V11.5a.5.5,0,0,0,.5.5h2c.2,0,.5-.2.5-.4V11h7v.5c0,.2.2.5.4.5h2.1a.5.5,0,0,0,.5-.5V7.219A.5.5,0,0,0,13.84,6.852ZM4.5,4h6l1,2h-8ZM5,8.6c0,.2-.3.4-.5.4H2.4C2.2,9,2,8.7,2,8.5V7.4c.1-.3.3-.5.6-.4l2,.4c.2,0,.4.3.4.5Zm8-.1c0,.2-.2.5-.4.5H10.5c-.2,0-.5-.2-.5-.4V7.9c0-.2.2-.5.4-.5l2-.4c.3-.1.5.1.6.4Z","car-rental":"M10.5 1C9.94772 1 9.5 1.44772 9.5 2H2V3L3 4 4 3 5 4 6 3 7 4H9.5C9.5 4.55228 9.94772 5 10.5 5H12.5C12.7761 5 13 4.77614 13 4.5V1.5C13 1.22386 12.7761 1 12.5 1H10.5ZM11 2.5C11 2.22386 11.2239 2 11.5 2 11.7761 2 12 2.22386 12 2.5V3.5C12 3.77614 11.7761 4 11.5 4 11.2239 4 11 3.77614 11 3.5V2.5ZM2.14645 9.35355C2.05268 9.44732 2 9.5745 2 9.70711V13.5C2 13.7761 2.22386 14 2.5 14H4C4.27614 14 4.5 13.7761 4.5 13.5V13H10.5V13.5C10.5 13.7761 10.7239 14 11 14H12.5C12.7761 14 13 13.7761 13 13.5V9.70711C13 9.5745 12.9473 9.44732 12.8536 9.35355L12 8.5 10.6457 6.24275C10.5553 6.09215 10.3925 6 10.2169 6H4.7831C4.60746 6 4.44471 6.09215 4.35435 6.24275L3 8.5 2.14645 9.35355ZM11.1338 9H3.86623L5.06619 7H9.93381L11.1338 9ZM5.5 10.8279V11.2C5.5 11.3657 5.36569 11.5 5.2 11.5H3.3C3.13431 11.5 3 11.3657 3 11.2V10.3659C3 10.1766 3.1732 10.0346 3.35884 10.0718L5.17845 10.4357C5.36542 10.4731 5.5 10.6372 5.5 10.8279ZM12 10.4879V11.2C12 11.3657 11.8657 11.5 11.7 11.5H9.8C9.63431 11.5 9.5 11.3657 9.5 11.2V10.7459C9.5 10.6029 9.60094 10.4798 9.74117 10.4518L11.5216 10.0957C11.7691 10.0462 12 10.2355 12 10.4879Z","car-repair":"M3 5C3.74028 5 4.38662 4.5978 4.73243 4H12C12.5523 4 13 3.55228 13 3 13 2.44772 12.5523 2 12 2H4.73243C4.38662 1.4022 3.74028 1 3 1 2.25972 1 1.61337 1.4022 1.26756 2H3V4H1.26756C1.61337 4.5978 2.25972 5 3 5ZM2.14645 9.35355C2.05268 9.44732 2 9.5745 2 9.70711V13.5C2 13.7761 2.22386 14 2.5 14H4C4.27614 14 4.5 13.7761 4.5 13.5V13H10.5V13.5C10.5 13.7761 10.7239 14 11 14H12.5C12.7761 14 13 13.7761 13 13.5V9.70711C13 9.5745 12.9473 9.44732 12.8536 9.35355L12 8.5 10.6456 6.24275C10.5553 6.09215 10.3925 6 10.2169 6H4.78309C4.60746 6 4.44471 6.09215 4.35435 6.24275L3 8.5 2.14645 9.35355ZM11.1338 9H3.86622L5.06619 7H9.93381L11.1338 9ZM5.5 10.8279V11.2C5.5 11.3657 5.36568 11.5 5.2 11.5H3.3C3.13431 11.5 3 11.3657 3 11.2V10.3659C3 10.1766 3.1732 10.0346 3.35883 10.0718L5.17844 10.4357C5.36541 10.4731 5.5 10.6372 5.5 10.8279ZM12 10.4879V11.2C12 11.3657 11.8657 11.5 11.7 11.5H9.8C9.63431 11.5 9.5 11.3657 9.5 11.2V10.7459C9.5 10.6029 9.60094 10.4798 9.74116 10.4518L11.5216 10.0957C11.7691 10.0462 12 10.2355 12 10.4879Z",casino:"M8.5,10c0.4561,0.6072,1.1821,1,2,1c1.3807,0,2.5-1.1193,2.5-2.5c0-0.5642-0.1938-1.0789-0.509-1.4973L12.5,7l-5-6l-5,6 l0.009,0.0027C2.1938,7.4211,2,7.9358,2,8.5C2,9.8807,3.1193,11,4.5,11c0.8179,0,1.5439-0.3928,2-1 C6.5997,9.8672,6.7902,9.6135,7,9.3337V11.5C7,13,4.5,13,4.5,13C4.2239,13,4,13.2238,4,13.5C4,13.7761,4.2239,14,4.5,14H7h1h2.5 c0.2761,0,0.5-0.2239,0.5-0.5c0-0.2762-0.2239-0.5-0.5-0.5c0,0-2.5,0-2.5-1.5V9.3337C8.2098,9.6135,8.4003,9.8672,8.5,10z",castle:"M11,4H4C3.4477,4,3,3.5523,3,3V0.5C3,0.2239,3.2239,0,3.5,0S4,0.2239,4,0.5V2h1V1c0-0.5523,0.4477-1,1-1s1,0.4477,1,1v1h1V1 c0-0.5523,0.4477-1,1-1s1,0.4477,1,1v1h1V0.5C11,0.2239,11.2239,0,11.5,0S12,0.2239,12,0.5V3C12,3.5523,11.5523,4,11,4z M14,14.5 c0,0.2761-0.2239,0.5-0.5,0.5h-12C1.2239,15,1,14.7761,1,14.5S1.2239,14,1.5,14H2c0.5523,0,1-0.4477,1-1c0,0,1-6,1-7 c0-0.5523,0.4477-1,1-1h5c0.5523,0,1,0.4477,1,1c0,1,1,7,1,7c0,0.5523,0.4477,1,1,1h0.5c0.2723-0.0001,0.4946,0.2178,0.5,0.49V14.5z M9,10.5C9,9.6716,8.3284,9,7.5,9S6,9.6716,6,10.5V14h3V10.5z","castle-JP":"M12.5,12.75a1,1,0,0,1-1-.9995V7.25H10a1,1,0,0,1-1-1v-2H6v2a1,1,0,0,1-1,1H3.5v4.5a1,1,0,0,1-2,0V6.25a1,1,0,0,1,1-1H4v-2a1,1,0,0,1,1-1h5a1,1,0,0,1,1,1v2h1.5a1,1,0,0,1,1,1v5.5a1,1,0,0,1-.9995,1Z",caution:"M1.09302 11.8924L6.84044 1.3905C7.12539 0.869834 7.87461 0.869834 8.15956 1.3905L13.907 11.8924C14.1805 12.3922 13.818 13.0019 13.2474 13.0019H1.75258C1.18195 13.0019 0.819505 12.3922 1.09302 11.8924ZM8.29999 8L8.70296 5.5822C8.75375 5.27743 8.51873 5 8.20976 5H6.79022C6.48125 5 6.24623 5.27743 6.29703 5.5822L6.69999 8H8.29999ZM8.59999 9.9C8.59999 9.29249 8.10751 8.8 7.49999 8.8C6.89248 8.8 6.39999 9.29249 6.39999 9.9C6.39999 10.5075 6.89248 11 7.49999 11C8.10751 11 8.59999 10.5075 8.59999 9.9Z",cemetery:"M11.46,12h-0.68L12,3.55c0.0175-0.2867-0.2008-0.5332-0.4874-0.5507C11.4884,2.9979,11.4641,2.9981,11.44,3h-1.18 c0-0.92-1.23-2-2.75-2S4.77,2.08,4.77,3H3.54C3.253,2.9885,3.0111,3.2117,2.9995,3.4987C2.9988,3.5158,2.999,3.5329,3,3.55L4.2,12 H3.55C3.2609,11.9886,3.0162,12.2112,3,12.5V14h9v-1.51C11.9839,12.2067,11.7435,11.9886,11.46,12z M4.5,5h6v1h-6V5z","cemetery-JP":"M11.5,11h-3V2.5a.9448.9448,0,0,0-1-1,.9448.9448,0,0,0-1,1V11h-3a1,1,0,0,0,0,2h8a.9448.9448,0,0,0,1-1A1.0022,1.0022,0,0,0,11.5,11Z","charging-station":"m14 4v-1.51c-.0054-.2722-.2277-.4901-.5-.49-.2816.0047-.5062.2367-.5015.5184.0002.0105.0007.0211.0015.0316v2.45c0 .5523.4477 1 1 1v5.5c0 .2761-.2239.5-.5.5s-.5-.2239-.5-.5v-2c0-.8284-.6716-1.5-1.5-1.5h-1.5v-6c0-.5523-.4477-1-1-1h-6c-.5523 0-1 .4477-1 1v11c0 .5523.4477 1 1 1h6c.5523 0 1-.4477 1-1v-4h1.5c.2761 0 .5.2239.5.5v2c0 .8284.6716 1.5 1.5 1.5s1.5-.6716 1.5-1.5v-6.5c0-.5523-.4477-1-1-1zm-5.7996 3.3995-2.6006 3.4674-.0164-.0072c-.0465.0787-.1167.1403-.2146.1403-.1476 0-.2672-.1196-.2672-.2672 0-.028.0217-.0463.0297-.0717l-.0177-.0078.7766-2.3245c.054-.1617-.0664-.3288-.2369-.3288h-1.6539c-.2058 0-.3232-.2349-.1998-.3995l2.6006-3.4674.0164.0072c.0465-.0787.1167-.1403.2146-.1403.1476 0 .2672.1196.2672.2672 0 .028-.0217.0463-.0297.0717l.0176.0078-.7764 2.3244c-.0541.1618.0663.3289.2368.3289h1.6539c.2058 0 .3232.2349.1998.3995z",cinema:"M14,7.5v2c0,0.2761-0.2239,0.5-0.5,0.5S13,9.7761,13,9.5c0,0,0.06-0.5-1-0.5h-1v2.5c0,0.2761-0.2239,0.5-0.5,0.5h-8 C2.2239,12,2,11.7761,2,11.5v-4C2,7.2239,2.2239,7,2.5,7h8C10.7761,7,11,7.2239,11,7.5V8h1c1.06,0,1-0.5,1-0.5 C13,7.2239,13.2239,7,13.5,7S14,7.2239,14,7.5z M4,3C2.8954,3,2,3.8954,2,5s0.8954,2,2,2s2-0.8954,2-2S5.1046,3,4,3z M4,6 C3.4477,6,3,5.5523,3,5s0.4477-1,1-1s1,0.4477,1,1S4.5523,6,4,6z M8.5,2C7.1193,2,6,3.1193,6,4.5S7.1193,7,8.5,7S11,5.8807,11,4.5 S9.8807,2,8.5,2z M8.5,6C7.6716,6,7,5.3284,7,4.5S7.6716,3,8.5,3S10,3.6716,10,4.5S9.3284,6,8.5,6z",circle:"M14,7.5c0,3.5899-2.9101,6.5-6.5,6.5S1,11.0899,1,7.5S3.9101,1,7.5,1S14,3.9101,14,7.5z","circle-stroked":"M7.5 12.3C4.84898 12.3 2.7 10.151 2.7 7.5C2.7 4.84898 4.84898 2.7 7.5 2.7C10.151 2.7 12.3 4.84898 12.3 7.5C12.3 10.151 10.151 12.3 7.5 12.3ZM7.5 14C11.0899 14 14 11.0899 14 7.5C14 3.9101 11.0899 1 7.5 1C3.9101 1 1 3.9101 1 7.5C1 11.0899 3.9101 14 7.5 14Z",city:"M12.6368 3.9994H10.9981V2.3608C10.998 2.16148 10.8364 1.99994 10.6371 2H10.3591C10.1598 2 9.9982 2.16158 9.9982 2.3609V3.9994H8.36C8.16068 3.9994 7.9991 4.16098 7.9991 4.3603V9.9984H4.3621C4.16168 9.9984 3.9992 10.1609 3.9992 10.3613V12.6358C3.99975 12.8358 4.16207 12.9977 4.3621 12.9977H12.6368C12.8361 12.9977 12.9977 12.8361 12.9977 12.6368V4.36C12.9977 4.16068 12.8361 3.9994 12.6368 3.9994ZM5.9989 11.9981H4.9989V10.9981H5.9989V11.9981ZM7.9989 11.9981H6.9989V10.9981H7.9989V11.9981ZM9.9989 11.9981H8.9989V10.9981H9.9989V11.9981ZM9.9989 9.9981H8.9989V8.9981H9.9989V9.9981ZM9.9989 7.9981H8.9989V6.9981H9.9989V7.9981ZM9.9989 5.9981H8.9989V4.9981H9.9989V5.9981ZM11.9989 11.9971H10.9989V10.9971H11.9989V11.9971ZM11.9989 9.9971H10.9989V8.9971H11.9989V9.9971ZM11.9989 7.9971H10.9989V6.9971H11.9989V7.9971ZM11.9989 5.9971H10.9989V4.9971H11.9989V5.9971ZM6.9987 2.3608C6.99864 2.16152 6.83708 2 6.6378 2H4.36C4.16068 2 3.9991 2.16158 3.9991 2.3609V4H2.36C2.16138 4.00049 2.00049 4.16138 2 4.36V12.6474C2 12.8407 2.1567 12.9974 2.35 12.9974H2.9994V8.9986H6.9987V2.3608ZM4 7.9981H3V6.9981H4V7.9981ZM4 5.9981H3V4.9981H4V5.9981ZM6 7.9981H5V6.9981H6V7.9981ZM6 5.9981H5V4.9981H6V5.9981ZM6 3.9981H5V3H6V4V3.9981Z","clothing-store":"M4 2L1 4.5L1 7H4V13H11V7H14V4.5L11 2H9.5L7.5 6L5.5 2L4 2Z",college:"M7.5,1L0,4.5l2,0.9v1.7C1.4,7.3,1,7.9,1,8.5s0.4,1.2,1,1.4V10l-0.9,2.1 C0.8,13,1,14,2.5,14s1.7-1,1.4-1.9L3,10c0.6-0.3,1-0.8,1-1.5S3.6,7.3,3,7.1V5.9L7.5,8L15,4.5L7.5,1z M11.9,7.5l-4.5,2L5,8.4v0.1 c0,0.7-0.3,1.3-0.8,1.8l0.6,1.4v0.1C4.9,12.2,5,12.6,4.9,13c0.7,0.3,1.5,0.5,2.5,0.5c3.3,0,4.5-2,4.5-3L11.9,7.5L11.9,7.5z","college-JP":"M12.5,2.9992h-4v-1a1,1,0,0,0-2,0v1h-4a1,1,0,0,0,0,2h.67A10.8169,10.8169,0,0,0,5.15,8.8105c.3331.4313.6594.8248.9785,1.1936a14.3825,14.3825,0,0,1-2.6074,2.117,1,1,0,1,0,.955,1.7581h0A15.65,15.65,0,0,0,7.5,11.4613a15.65,15.65,0,0,0,3.0239,2.4179,1,1,0,1,0,.9551-1.7578,14.3789,14.3789,0,0,1-2.6073-2.1171c.3191-.3688.6453-.7622.9784-1.1935a10.818,10.818,0,0,0,1.98-3.8116h.67a1,1,0,0,0,0-2ZM8.2671,7.5879c-.2614.3385-.5154.6413-.767.937-.2517-.2957-.5057-.5985-.7672-.937A9.5885,9.5885,0,0,1,5.2676,4.9992H9.7319A9.5789,9.5789,0,0,1,8.2671,7.5879Z",commercial:"m14 6h-13c.0881-1.3829.427-2.7383 1-4h11c.5731 1.2617.9119 2.6171 1 4zm-11 1h9v6h-1v-5h-3v5h-5zm1 3h3v-2h-3z","communications-tower":"M11.8545,6.4336l-.4131-.2813a4.7623,4.7623,0,0,0,.2813-4.8779l-.0835-.1533L12.0747.875l.0908.167a5.2619,5.2619,0,0,1-.311,5.3916Zm1.1521,7.1316V14h-11v-.4348H4.4952L6.0439,6.4a.5.5,0,0,1,.4888-.3945h.7255V4.6014A1.14,1.14,0,0,1,6.3756,3.5a1.1568,1.1568,0,1,1,2.3136,0,1.14,1.14,0,0,1-.931,1.1112V6.0059h.7223A.5.5,0,0,1,8.9692,6.4l1.5478,7.1648ZM8.4543,8.751H6.5588L6.236,10.2441H8.777ZM6.1279,10.7441l-.3233,1.4952H9.2082l-.3231-1.4952ZM6.936,7.0059,6.6669,8.251H8.3463L8.0771,7.0059ZM5.5179,13.5652H9.4948l-.1786-.8259h-3.62ZM5.21,5.0137a2.7523,2.7523,0,0,1,.0161-3.0518L4.812,1.6826a3.25,3.25,0,0,0-.019,3.6065ZM10.7568,3.5a3.2433,3.2433,0,0,0-.5341-1.7861l-.418.2754a2.7517,2.7517,0,0,1-.0176,3.0488l.4141.2793A3.2341,3.2341,0,0,0,10.7568,3.5ZM3.5342,6.1182A4.7637,4.7637,0,0,1,3.3813,1.13L2.9478.88a5.2643,5.2643,0,0,0,.1694,5.5137Z",confectionery:"M13,4a1,1,0,0,0-1-1,1,1,0,0,0-2,0V5.0673A3.4808,3.4808,0,0,0,4.3583,9H2a1,1,0,0,0,0,2,1,1,0,0,0,1,1,1,1,0,0,0,2,0V9.9326A3.4807,3.4807,0,0,0,10.6417,6H13a1,1,0,0,0,0-2ZM7.5,9.9925A2.484,2.484,0,0,1,6.3184,5.319a1.0809,1.0809,0,0,1,.5459.307A2.1243,2.1243,0,0,1,7.25,7.0117l.001.9561A2.5821,2.5821,0,0,0,7.76,9.7031a1.5462,1.5462,0,0,0,.2591.2333A2.4861,2.4861,0,0,1,7.5,9.9925ZM8.6815,9.681a1.0813,1.0813,0,0,1-.5458-.307A2.1243,2.1243,0,0,1,7.75,7.9883l-.001-.9561A2.5821,2.5821,0,0,0,7.24,5.2969a1.5557,1.5557,0,0,0-.2592-.2334A2.4843,2.4843,0,0,1,8.6815,9.681Z",construction:"M13.5 11h-1.8L8.2.5C8-.2 7-.2 6.8.5L3.3 11H1.5c-.3 0-.5.2-.5.5v1c0 .3.2.5.5.5h12c.3 0 .5-.2.5-.5v-1c0-.3-.2-.5-.5-.5ZM7 3h1l.7 2H6.4L7 3ZM5.7 7h3.6l.7 2H5l.7-2Z",convenience:"M2.9982,3.0687s.1875-1.062,1-1.062H5.0043V1.7276a.5.5,0,0,1,.5-.5H9.4882a.5.5,0,0,1,.5.5v.2791h1.01a.8324.8324,0,0,1,.6373.2937,1.7589,1.7589,0,0,1,.3627.7683s.3108,1.5719.5921,2.9181h-.938L11,3,3.982,2.9956,3.3336,5.9868H2.382Zm11,4.9144a1,1,0,0,1-.9992,1l-1.0008,3.973s-.1875,1.0417-1,1.0417h-7c-.8125,0-1-1.0417-1-1.0417L1.9822,8.98a.9985.9985,0,0,1,.016-1.9968h11A1,1,0,0,1,13.9982,7.9831ZM5.0327,12.13,5.03,11.0051,4.6392,9.4686a.5373.5373,0,1,0-1.0649.1445L3.78,11.0075l.1874,1.2672A.5373.5373,0,1,0,5.0327,12.13Zm2-2.5967A.5332.5332,0,0,0,6.4994,9l-.0039.0008L6.4886,9a.4992.4992,0,0,0-.3575.1509.529.529,0,0,0-.1648.3828v2.68a.5332.5332,0,1,0,1.0663,0Zm1.998,0A.5314.5314,0,0,0,8.694,9.04a.4992.4992,0,0,0-.393,0,.5312.5312,0,0,0-.3366.4934v2.68a.5331.5331,0,1,0,1.0662,0Zm2.3857.08a.5373.5373,0,1,0-1.0649-.1445L9.96,10.9938,9.9579,12.13a.5373.5373,0,1,0,1.0649.1446Z",cricket:"M8,1.5C8,2.3284,7.3284,3,6.5,3S5,2.3284,5,1.5S5.6716,0,6.5,0S8,0.6716,8,1.5z M10.88,7.18L10.88,7.18l-2-2l0,0l0,0 C8.7815,5.0616,8.6339,4.9952,8.48,5H3.75C3.3736,4.9915,3.0508,5.2669,3,5.64l0,0l-1,7.7l0,0c-0.0068,0.0464-0.0068,0.0936,0,0.14 c0,0.2761,0.2239,0.5,0.5,0.5c0.2251,0.0153,0.4315-0.1251,0.5-0.34l0,0l1.2-3.89l0,0l0.26-0.83l0.4,0.44l0,0L6,10.6v2.9 C6,13.7761,6.2239,14,6.5,14S7,13.7761,7,13.5v-3l0,0l0,0c-0.0081-0.0788-0.0356-0.1544-0.08-0.22l0,0L5.48,8.5l1-2.5h1.71l2,1.84 l0,0c0.0928,0.1077,0.2278,0.1697,0.37,0.17C10.8163,7.9791,11.007,7.7581,11,7.5C10.9997,7.3824,10.9571,7.2688,10.88,7.18z M14,11.27c-0.4142,0-0.75,0.3358-0.75,0.75s0.3358,0.75,0.75,0.75s0.75-0.3358,0.75-0.75S14.4142,11.27,14,11.27z M10.76,9.74V9 c0-0.1381-0.1119-0.25-0.25-0.25S10.26,8.8619,10.26,9v0.74c-0.1522,0.0855-0.2474,0.2455-0.25,0.42v3.34 c0,0.2761,0.2239,0.5,0.5,0.5s0.5-0.2239,0.5-0.5v-3.34C11.0074,9.9855,10.9122,9.8255,10.76,9.74z",cross:"M3.64 2.27L7.5 6.13L11.34 2.29C11.5114 2.1076 11.7497 2.0029 12 2C12.5523 2 13 2.4477 13 3C13.0047 3.2478 12.907 3.4866 12.73 3.66L8.84 7.5L12.73 11.39C12.8948 11.5512 12.9915 11.7696 13 12C13 12.5523 12.5523 13 12 13C11.7423 13.0107 11.492 12.9127 11.31 12.73L7.5 8.87L3.65 12.72C3.4793 12.8963 3.2453 12.9971 3 13C2.4477 13 2 12.5523 2 12C1.9953 11.7522 2.093 11.5134 2.27 11.34L6.16 7.5L2.27 3.61C2.1052 3.4488 2.0085 3.2304 2 3C2 2.4477 2.4477 2 3 2C3.2404 2.0029 3.4701 2.0998 3.64 2.27Z",dam:"M13.94,9.5c0,0.2761-0.2239,0.5-0.5,0.5l0,0c-0.259,0.0219-0.4994,0.1439-0.67,0.34c-0.2714,0.2887-0.6175,0.4964-1,0.6 c-0.6115,0.1816-1.2734,0.0424-1.76-0.37l-0.39-0.35c-0.2976-0.3038-0.7851-0.3087-1.0889-0.0111 C8.5274,10.2126,8.5237,10.2163,8.52,10.22c-0.14,0.12-0.27,0.25-0.42,0.37c-0.7278,0.5784-1.7663,0.5489-2.46-0.07L5.3,10.19 l-0.1-0.06l0.3,1.22l0.49,2c0.0829,0.2634-0.0634,0.5441-0.3267,0.6271C5.6105,13.9937,5.5553,14.0014,5.5,14h-4 C1.2239,14,1,13.7761,1,13.5v-12C1,1.2239,1.2239,1,1.5,1h1.1c0.2346-0.0011,0.4384,0.1611,0.49,0.39L4,5.06V5.2 c0.6569-0.314,1.4361-0.2205,2,0.24c0.16,0.13,0.31,0.28,0.47,0.41c0.2847,0.2546,0.7153,0.2546,1,0c0.16-0.13,0.31-0.28,0.47-0.41 c0.7076-0.5968,1.7424-0.5968,2.45,0c0.15,0.13,0.29,0.27,0.44,0.39c0.2847,0.2546,0.7153,0.2546,1,0l0.47-0.41 c0.3163-0.2672,0.7159-0.4157,1.13-0.42l0,0c0.2761,0,0.5,0.2239,0.5,0.5S13.7061,6,13.43,6l0,0 c-0.259,0.0219-0.4994,0.1439-0.67,0.34c-0.2714,0.2887-0.6175,0.4964-1,0.6C11.1485,7.1216,10.4866,6.9824,10,6.57L9.67,6.23 C9.3724,5.9262,8.8849,5.9213,8.5811,6.2189C8.5774,6.2226,8.5737,6.2263,8.57,6.23C8.43,6.35,8.3,6.48,8.15,6.6 C7.4222,7.1784,6.3837,7.1489,5.69,6.53L5.3,6.19c-0.2847-0.2546-0.7153-0.2546-1,0L4.24,6.24L4.93,9 C5.3226,9.029,5.6965,9.1793,6,9.43c0.16,0.13,0.31,0.28,0.47,0.41c0.2847,0.2546,0.7153,0.2546,1,0c0.16-0.13,0.31-0.28,0.47-0.41 c0.7076-0.5968,1.7424-0.5968,2.45,0c0.15,0.13,0.29,0.27,0.44,0.39c0.2847,0.2546,0.7153,0.2546,1,0l0.47-0.41 c0.3177-0.2636,0.7172-0.4085,1.13-0.41l0,0c0.2761-0.0055,0.5044,0.2138,0.5099,0.4899C13.94,9.4933,13.94,9.4966,13.94,9.5z",danger:"M13.94,14.68c-0.0749,0.194-0.262,0.3215-0.47,0.32c-0.0595,0.0107-0.1205,0.0107-0.18,0L7.5,12.56L1.7,15 c-0.2572,0.1005-0.5472-0.0266-0.6476-0.2838C1.0516,14.7141,1.0508,14.7121,1.05,14.71c-0.1291-0.2441-0.0358-0.5467,0.2084-0.6757 C1.2845,14.0205,1.3118,14.009,1.34,14l4.85-2l-4.85-2C1.0758,9.9197,0.9267,9.6404,1.007,9.3762s0.3596-0.4133,0.6238-0.333 C1.6545,9.0504,1.6776,9.0594,1.7,9.07l5.8,2.41l5.8-2.41c0.2494-0.1185,0.5477-0.0124,0.6662,0.237 c0.1185,0.2494,0.0124,0.5477-0.237,0.6662C13.7068,9.9839,13.6837,9.9928,13.66,10L8.8,12l4.85,2 c0.2607,0.091,0.3983,0.3761,0.3074,0.6368C13.9523,14.6515,13.9465,14.6659,13.94,14.68z M12,4.23v0.45 c-0.0021,0.2129-0.0722,0.4196-0.2,0.59C11.2414,5.8883,10.6399,6.4664,10,7v1.16c0.0015,0.208-0.126,0.3951-0.32,0.47L7.52,9.5 H7.45L5.28,8.63C5.1016,8.5428,4.9917,8.3584,5,8.16V7C4.3528,6.4675,3.7446,5.8893,3.18,5.27C3.0593,5.0972,2.9963,4.8907,3,4.68 V4.23C3.1669,2.0117,4.8974,0.2307,7.11,0h0.36l0,0h0.39C10.0862,0.2131,11.8348,1.9997,12,4.23z M6,4c0-0.5523-0.4477-1-1-1 S4,3.4477,4,4s0.4477,1,1,1S6,4.5523,6,4z M7,7c0-0.2761-0.2239-0.5-0.5-0.5S6,6.7239,6,7v0.5C6,7.7761,6.2239,8,6.5,8 S7,7.7761,7,7.5V7z M9,7c0-0.2761-0.2239-0.5-0.5-0.5S8,6.7239,8,7v0.5C8,7.7761,8.2239,8,8.5,8S9,7.7761,9,7.5V7z M11,4 c0-0.5523-0.4477-1-1-1S9,3.4477,9,4s0.4477,1,1,1S11,4.5523,11,4z",defibrillator:"m1.54995 7.33811c-2.386799-4.5965 3.63-7.660899 5.952-3.0644 2.3215-4.596499 8.33875-1.5322 5.95235 3.0644-.0869.1671-.2028.3456-.3114.5212h-1.8079l-1.81455-2.7216c-.06321-.09473-.1511-.1704-.25417-.21884-.10308-.04843-.21743-.06779-.3307-.05599-.11327.01181-.22117.05433-.31205.12298-.09087.06865-.16126.16082-.20358.26655l-1.6484 4.12-1.33-1.33c-.11716-.11707-.27597-.18288-.4416-.183h-3.1389c-.1086-.1757-.2245-.3542-.3111-.5213zm9.45005 1.7713c-.103-.00003-.2044-.02545-.2951-.07399-.0908-.04854-.1682-.11871-.2254-.20431l-1.34085-2.0111-1.5587 3.89679c-.03839.096-.10002.181-.17936.2474-.07935.0663-.17393.1119-.27524.1326-.04125.0086-.08327.0128-.1254.0126-.16568.0001-.32462-.0656-.4419-.1826l-1.8169-1.81739h-2.0054c1.36645 1.66819 2.85739 3.23039 4.46 4.67319.08531.077.19616.1197.3111.1197s.22579-.0427.3111-.1197c1.59778-1.4447 3.08545-3.0068 4.45055-4.67319z",dentist:"M4.36,14c-1,0-0.56-2.67-0.86-5c-0.1-0.76-1-1.49-1.12-2.06C2,5,1.39,1.44,3.66,1S6,3,7.54,3s1.57-2.36,3.85-2 s1.59,3.9,1.29,5.9c-0.1,0.45-1.1,1.48-1.18,2.06c-0.33,2.4,0.32,5-0.8,5c-0.93,0-1.32-2.72-2-4.5C8.43,8.63,8.06,8,7.54,8 C6,8,5.75,14,4.36,14z",diamond:"M7.03715 1.20147L2.12542 6.7C2.04962 6.78393 2.00568 6.89005 2.00051 7C1.99535 7.10994 2.02925 7.21013 2.09689 7.3L7.0065 13.7601C7.06233 13.8343 7.13629 13.8947 7.22216 13.9365C7.30803 13.9782 7.40331 14 7.5 14C7.59669 14 7.69197 13.9782 7.77784 13.9365C7.86371 13.8947 7.93766 13.8343 7.9935 13.7601L12.9031 7.3C12.9707 7.21013 13.0047 7.10994 12.9995 7C12.9943 6.89005 12.9504 6.78393 12.8746 6.7L7.96285 1.20147C7.90591 1.13833 7.83501 1.08761 7.75508 1.05282C7.67514 1.01802 7.5881 1 7.5 1C7.4119 1 7.32486 1.01802 7.24492 1.05282C7.16499 1.08761 7.09409 1.13833 7.03715 1.20147Z",doctor:"M5.5,7C4.1193,7,3,5.8807,3,4.5l0,0v-2C3,2.2239,3.2239,2,3.5,2H4c0.2761,0,0.5-0.2239,0.5-0.5S4.2761,1,4,1H3.5 C2.6716,1,2,1.6716,2,2.5v2c0.0013,1.1466,0.5658,2.2195,1.51,2.87l0,0C4.4131,8.1662,4.9514,9.297,5,10.5C5,12.433,6.567,14,8.5,14 s3.5-1.567,3.5-3.5V9.93c1.0695-0.2761,1.7126-1.367,1.4365-2.4365C13.1603,6.424,12.0695,5.7809,11,6.057 C9.9305,6.3332,9.2874,7.424,9.5635,8.4935C9.7454,9.198,10.2955,9.7481,11,9.93v0.57c0,1.3807-1.1193,2.5-2.5,2.5S6,11.8807,6,10.5 c0.0511-1.2045,0.5932-2.3356,1.5-3.13l0,0C8.4404,6.7172,9.001,5.6448,9,4.5v-2C9,1.6716,8.3284,1,7.5,1H7 C6.7239,1,6.5,1.2239,6.5,1.5S6.7239,2,7,2h0.5C7.7761,2,8,2.2239,8,2.5v2l0,0C8,5.8807,6.8807,7,5.5,7 M11.5,9 c-0.5523,0-1-0.4477-1-1s0.4477-1,1-1s1,0.4477,1,1S12.0523,9,11.5,9z","dog-park":"M 10.300781 1.2207031 C 9.9144812 1.2207031 9.6 1.2 9.5 2 L 9.0996094 4.5214844 L 11.5 6.5 L 13.5 6.5 C 14.9 6.5 15 5.5410156 15 5.5410156 L 13.099609 3.3222656 C 12.399609 2.6222656 11.7 2.5 11 2.5 L 11 2 C 11 2 11.067481 1.2206031 10.300781 1.2207031 z M 4.75 1.5 C 4.75 1.5 3.7992187 1.5206031 3.1992188 1.7207031 C 2.5992187 1.9207031 2 2.6210938 2 3.6210938 L 2 7.5214844 C 2 9.2214844 1.3 9.5 1 9.5 C 1 9.5 0 9.5214844 0 10.521484 L 0 12.720703 C 0 12.720703 0.00078125 13.521484 0.80078125 13.521484 L 1 13.521484 L 1.5 13.521484 L 2 13.521484 L 2 13.021484 L 2 12.822266 C 2 12.422266 1.8 12.221094 1.5 12.121094 L 1.5 11.021484 C 2.5 11.021484 2.6 10.820703 3 10.720703 L 3.5507812 12.917969 C 3.6507813 13.217969 3.7507813 13.417578 4.0507812 13.517578 L 5.0507812 13.517578 L 6 13.5 L 6 12.699219 C 6 12.022819 5 12 5 12 L 5 9.5 L 8.5 9.5 L 9.1992188 12.121094 C 9.5992188 13.521094 10.5 13.5 10.5 13.5 L 11 13.5 L 12 13.5 L 12 12.699219 C 12 11.987419 11 12 11 12 L 11.099609 7.921875 L 8 5.5 L 3.5 5.5 L 3.5 3.5 C 3.5 3.1 3.7765 3.0053 4 3 C 4.4941 2.9882 4.75 3 4.75 3 C 5.1642 3 5.5 2.6642 5.5 2.25 C 5.5 1.8358 5.1642 1.5 4.75 1.5 z M 11.75 4 C 11.8881 4 12 4.1119 12 4.25 C 12 4.3881 11.8881 4.5 11.75 4.5 C 11.6119 4.5 11.5 4.3881 11.5 4.25 C 11.5 4.1119 11.6119 4 11.75 4 z","drinking-water":"M6,1A2,2,0,0,0,4,3V6.5a.5.5,0,0,0,.5.5h2A.5.5,0,0,0,7,6.5v-2A.5.5,0,0,1,7.5,4H14V1ZM7,15H4a.5.5,0,0,1-.48-.38L2,8.62a.5.5,0,0,1,.365-.606A.558.558,0,0,1,2.5,8h6a.5.5,0,0,1,.514.485A.47.47,0,0,1,9,8.62l-1.5,6A.5.5,0,0,1,7,15ZM3.65,11H7.36l.5-2H3.14Z",elevator:"M11,1H4A1,1,0,0,0,3,2V13a1,1,0,0,0,1,1h7a1,1,0,0,0,1-1V2A1,1,0,0,0,11,1ZM7.5,12.5l-2-4h4Zm-2-6,2-4,2,4Z",embassy:"M6.65,2C5.43,2,4.48,3.38,4.11,3.82C4.0365,3.9102,3.9975,4.0237,4,4.14v4.4C3.9884,8.7827,4.1758,8.9889,4.4185,9.0005 C4.528,9.0057,4.6355,8.9699,4.72,8.9c0.4665-0.6264,1.1589-1.0461,1.93-1.17C8.06,7.73,8.6,9,10.07,9 c0.9948-0.0976,1.9415-0.4756,2.73-1.09c0.1272-0.0934,0.2016-0.2422,0.2-0.4V2.45c0.0275-0.2414-0.1459-0.4595-0.3874-0.487 C12.5332,1.954,12.4527,1.9668,12.38,2c-0.6813,0.5212-1.4706,0.8834-2.31,1.06C8.6,3.08,8.12,2,6.65,2z M2.5,3 c-0.5523,0-1-0.4477-1-1s0.4477-1,1-1s1,0.4477,1,1S3.0523,3,2.5,3z M3,4v9.48c0,0.2761-0.2239,0.5-0.5,0.5S2,13.7561,2,13.48V4 c0-0.2761,0.2239-0.5,0.5-0.5S3,3.7239,3,4z","emergency-phone":"M7.875,11.49a.51.51,0,0,0,.72,0l.72-.72,2.18,2.16-.37.37a2.24,2.24,0,0,1-1.44.7H8.24a2.24,2.24,0,0,1-1.45-.7L1.72,8.23A2.24,2.24,0,0,1,1,6.78V5.33a2.24,2.24,0,0,1,.72-1.45l.36-.36L4.26,5.69l-.73.73a.51.51,0,0,0,0,.72Zm4.72.38a1,1,0,0,0,.036-1.414h0l-.036-.036-.72-.72a1,1,0,0,0-1.414-.036h0l-.036.036ZM5.315,4.62a1,1,0,0,0,.036-1.414h0L4.595,2.45a1,1,0,0,0-1.414-.036h0L3.14,2.45ZM10,2V4H8V5h2V7h1V5h2V4H11V2Z",entrance:"m8 6.5v-1c0-.26522-.10536-.51957-.29289-.70711-.18754-.18753-.44189-.29289-.70711-.29289s-.51957.10536-.70711.29289c-.18753.18754-.29289.44189-.29289.70711v3zm-2-3.5c0-.19778.05865-.39112.16853-.55557s.26606-.29262.44879-.36831c.18272-.07569.38379-.09549.57777-.0569.19398.03858.37216.13382.51202.27367.13985.13986.23509.31804.27368.51202.03858.19398.01878.39505-.05691.57777-.07569.18273-.20386.33891-.36831.44879s-.35779.16853-.55557.16853c-.26522 0-.51957-.10536-.70711-.29289-.18753-.18754-.29289-.44189-.29289-.70711zm9 3c0 .26522-.1054.51957-.2929.70711-.1875.18753-.4419.29289-.7071.29289h-1.58c-.1316-.00076-.2621.02446-.3839.07423-.1218.04976-.2327.12309-.3261.21577l-5.42 5.42c-.18626.1847-.43766.2889-.7.29h-2.59c-.26522 0-.51957-.1054-.70711-.2929-.18753-.1875-.29289-.4419-.29289-.7071s.10536-.5196.29289-.7071c.18754-.1875.44189-.2929.70711-.2929h1.59c.26234-.0011.51374-.1053.7-.29l5.42-5.42c.0934-.09268.2043-.16601.3261-.21577.1218-.04977.2523-.07499.3839-.07423h2.58c.2652 0 .5196.10536.7071.29289.1875.18754.2929.44189.2929.70711z","entrance-alt1":"M6.554,9.639a.5.5,0,0,0,.707.707L9.928,7.669a.25.25,0,0,0,0-.354h0L7.261,4.639a.5.5,0,0,0-.707.707L8.2,7H1.5a.5.5,0,0,0,0,1H8.2ZM12,1H5.5a.5.5,0,0,0,0,1h6a.5.5,0,0,1,.5.5v10a.5.5,0,0,1-.5.5H5.25a.5.5,0,0,0,0,1H12a1,1,0,0,0,1-1V2A1,1,0,0,0,12,1Z",farm:"m8 6-3-2-3 2-1 2v4h2v-2h4v2h2v-4zm-2 2h-2v-2h2zm8 4h-3v-9.5c0-.39782.158-.77936.4393-1.06066s.6629-.43934 1.0607-.43934.7794.15804 1.0607.43934.4393.66284.4393 1.06066z","fast-food":"M14,8c0,0.5523-0.4477,1-1,1H2C1.4477,9,1,8.5523,1,8s0.4477-1,1-1h11C13.5523,7,14,7.4477,14,8z M3.5,10H2 c0,1.6569,1.3431,3,3,3h5c1.6569,0,3-1.3431,3-3H3.5z M3,6H2V4c0-1.1046,0.8954-2,2-2h7c1.1046,0,2,0.8954,2,2v2H3z M11,4.5 C11,4.7761,11.2239,5,11.5,5S12,4.7761,12,4.5S11.7761,4,11.5,4S11,4.2239,11,4.5z M9,3.5C9,3.7761,9.2239,4,9.5,4S10,3.7761,10,3.5 S9.7761,3,9.5,3S9,3.2239,9,3.5z M7,4.5C7,4.7761,7.2239,5,7.5,5S8,4.7761,8,4.5S7.7761,4,7.5,4S7,4.2239,7,4.5z M5,3.5 C5,3.7761,5.2239,4,5.5,4S6,3.7761,6,3.5S5.7761,3,5.5,3S5,3.2239,5,3.5z M3,4.5C3,4.7761,3.2239,5,3.5,5S4,4.7761,4,4.5 S3.7761,4,3.5,4S3,4.2239,3,4.5z",fence:"m13.5 9h-.5v-3h.5c.1326 0 .2598-.05268.3536-.14644.0937-.09377.1464-.22095.1464-.35356s-.0527-.25978-.1464-.35355c-.0938-.09377-.221-.14645-.3536-.14645h-.5v-2l-.286-.573c-.0218-.03651-.0525-.06683-.0894-.08809-.0368-.02125-.0784-.03273-.1209-.03333s-.0845.00969-.1219.0299c-.0374.0202-.069.04964-.0918.08552l-.29.579v2h-1v-2l-.286-.573c-.0218-.03651-.0525-.06683-.0894-.08809-.0368-.02125-.0784-.03273-.1209-.03333s-.0845.00969-.1219.0299c-.0374.0202-.069.04964-.0918.08552l-.29.579v2h-1v-2l-.286-.573c-.02178-.03651-.05254-.06683-.08936-.08809-.03681-.02125-.07846-.03273-.12096-.03333-.04251-.0006-.08446.00969-.12187.0299-.0374.0202-.06901.04964-.09181.08552l-.29.579v2h-1v-2l-.286-.573c-.02178-.03651-.05254-.06683-.08936-.08809-.03681-.02125-.07846-.03273-.12096-.03333-.04251-.0006-.08446.00969-.12187.0299-.0374.0202-.06901.04964-.09181.08552l-.29.579v2h-1v-2l-.286-.573c-.02178-.03651-.05254-.06683-.08936-.08809-.03681-.02125-.07846-.03273-.12096-.03333-.04251-.0006-.08446.00969-.12187.0299-.0374.0202-.06901.04964-.09181.08552l-.29.579v2h-1v-2l-.286-.573c-.02178-.03651-.05254-.06683-.08936-.08809-.03681-.02125-.07846-.03273-.12096-.03333-.04251-.0006-.08446.00969-.12187.0299-.0374.0202-.06901.04964-.09181.08552l-.29.579v2h-.5c-.13261 0-.25979.05268-.35355.14645-.09377.09377-.14645.22094-.14645.35355s.05268.25979.14645.35356c.09376.09376.22094.14644.35355.14644h.5v3h-.5c-.13261 0-.25979.05268-.35355.14645-.09377.09377-.14645.22094-.14645.35355s.05268.25979.14645.35356c.09376.09376.22094.14644.35355.14644h.5v1.5c0 .1326.05268.2598.14645.3536.09376.0937.22094.1464.35355.1464s.25979-.0527.35355-.1464c.09377-.0938.14645-.221.14645-.3536v-1.5h1v1.5c0 .1326.05268.2598.14645.3536.09376.0937.22094.1464.35355.1464s.25979-.0527.35355-.1464c.09377-.0938.14645-.221.14645-.3536v-1.5h1v1.5c0 .1326.05268.2598.14645.3536.09376.0937.22094.1464.35355.1464s.25979-.0527.35355-.1464c.09377-.0938.14645-.221.14645-.3536v-1.5h1v1.5c0 .1326.05268.2598.14645.3536.09376.0937.22094.1464.35355.1464s.25979-.0527.35355-.1464c.09377-.0938.14645-.221.14645-.3536v-1.5h1v1.5c0 .1326.0527.2598.1464.3536.0938.0937.221.1464.3536.1464s.2598-.0527.3536-.1464c.0937-.0938.1464-.221.1464-.3536v-1.5h1v1.5c0 .1326.0527.2598.1464.3536.0938.0937.221.1464.3536.1464s.2598-.0527.3536-.1464c.0937-.0938.1464-.221.1464-.3536v-1.5h.5c.1326 0 .2598-.05268.3536-.14644.0937-.09377.1464-.22095.1464-.35356s-.0527-.25978-.1464-.35355c-.0938-.09377-.221-.14645-.3536-.14645zm-10.5 0v-3h1v3zm2 0v-3h1v3zm2 0v-3h1v3zm2 0v-3h1v3zm2 0v-3h1v3z",ferry:"M5.33,11c0.6745,0.009,1.3262,0.245,1.85,0.67l0.26,0.23h0.05l0.31-0.28c0.9817-0.8115,2.379-0.8846,3.44-0.18L13.5,7L12,6 V2.45c-0.0466-0.8-0.6989-1.4305-1.5-1.45H10c0.0343-0.518-0.3579-0.9657-0.8759-1C9.0828-0.0027,9.0413-0.0027,9,0H6 C5.482-0.0343,5.0343,0.3579,5,0.8759C4.9973,0.9172,4.9973,0.9587,5,1H4.5C3.6989,1.0195,3.0466,1.65,3,2.45V6L1.5,7l2.25,4.53 C4.2143,11.2041,4.7631,11.02,5.33,11z M4,2.45c0.0105-0.2594,0.2293-0.4611,0.4886-0.4506C4.4924,1.9996,4.4962,1.9998,4.5,2h6 c0.259-0.0171,0.4829,0.1789,0.5,0.4379c0.0014,0.0207,0.0014,0.0414,0,0.0621v3l-3.5-2L4,5.45C4,5.45,4,2.45,4,2.45z M14,13v1 c-0.2626,0.0194-0.5069,0.1416-0.68,0.34c-0.2717,0.2883-0.6178,0.4959-1,0.6c-0.6147,0.1815-1.2795,0.0425-1.77-0.37l-0.39-0.35 c-0.3043-0.3026-0.7957-0.3026-1.1,0c-0.14,0.12-0.27,0.25-0.42,0.37c-0.7328,0.5856-1.7814,0.556-2.48-0.07l-0.39-0.35 c-0.2864-0.2502-0.7136-0.2502-1,0c-0.19,0.15-0.36,0.32-0.55,0.47c-0.7043,0.5215-1.6732,0.4968-2.35-0.06l-0.31-0.27 C1.4153,14.1443,1.2172,14.0346,1,14v-1c0.2585-0.032,0.5205,0.0169,0.75,0.14c0.2782,0.1722,0.5424,0.3661,0.79,0.58 c0.2051,0.2235,0.5147,0.319,0.81,0.25c0.1125-0.0333,0.2177-0.0876,0.31-0.16c0.16-0.12,0.29-0.26,0.45-0.39 c0.7106-0.5888,1.7394-0.5888,2.45,0c0.16,0.13,0.31,0.28,0.47,0.41c0.2864,0.2502,0.7136,0.2502,1,0c0.16-0.13,0.31-0.28,0.47-0.41 c0.7123-0.5943,1.7477-0.5943,2.46,0c0.15,0.13,0.29,0.27,0.44,0.39c0.2864,0.2502,0.7136,0.2502,1,0l0.47-0.41 C13.1895,13.1408,13.5886,12.9995,14,13z","ferry-JP":"M9.5 12.5H5.5L5.5 8C5.5 6.91153 6.07979 5.44812 6.85389 4.13809C7.07346 3.76652 7.29495 3.43049 7.5 3.1451C7.70505 3.43049 7.92654 3.76652 8.14611 4.13809C8.92021 5.44812 9.5 6.91153 9.5 8V12.5ZM7.5 1C7 1 4 5 4 8V12.5C4 13.3284 4.67157 14 5.5 14H9.5C10.3284 14 11 13.329 11 12.5006V8C11 5 8 1 7.5 1Z","fire-station":"M7.5 14C11.0899 14 14 11 14 7.50003C14 4.5 11.5 2 11.5 2L10.5 5.5L7.5 1L4.5 5.5L3.5 2C3.5 2 1 4.5 1 7.50003C1 11 3.91015 14 7.5 14ZM7.5 12.5C6.11929 12.5 5 11.3807 5 10C5 8.61929 7.5 5.5 7.5 5.5C7.5 5.5 10 8.61929 10 10C10 11.3807 8.88071 12.5 7.5 12.5Z","fire-station-JP":"M8.5,8.1489V11.75a1,1,0,0,1-2,0V8.1489A5.0084,5.0084,0,0,1,2.5,3.25a1,1,0,0,1,2,0,3,3,0,0,0,6,0,1,1,0,0,1,2,0A5.0082,5.0082,0,0,1,8.5,8.1489Z","fitness-centre":"M14.5,7V8h-1v2h-1v1H11V8H4v3H2.5V10h-1V8H.5V7h1V5h1V4H4V7h7V4h1.5V5h1V7Z",florist:"M1.5,1A2.7,2.7,0,0,1,4,3l.5-3L5,3A2.7,2.7,0,0,1,7.5,1c-.2.03-1,.26-1,2v.083A1.959,1.959,0,0,1,4.5,5H4.417A1.959,1.959,0,0,1,2.5,3C2.5,1.261,1.7,1.03,1.5,1ZM12.012,11l3-.5-3-.5A2.686,2.686,0,0,0,14,7.5c-.03.2-.248,1-1.988,1a2,2,0,0,0,0,4c1.739,0,1.958.8,1.988,1A2.686,2.686,0,0,0,12.012,11ZM9.688,5.548a1,1,0,0,1,0-2,1,1,0,0,1,0-2,.986.986,0,0,1,.852.507l.023-.012a.978.978,0,0,1-.116-.444,1,1,0,1,1,2,0,.978.978,0,0,1-.116.444l.019.01a.986.986,0,0,1,.85-.5,1,1,0,0,1,.025,2,1,1,0,0,1-.025,2,.986.986,0,0,1-.85-.5l-.016.009a.978.978,0,0,1,.113.44,1,1,0,0,1-2,0,.978.978,0,0,1,.113-.44l-.02-.011a.986.986,0,0,1-.852.507Zm.71-1.995A1.051,1.051,0,1,0,11.449,2.5,1.051,1.051,0,0,0,10.4,3.553v0ZM4.946,11.444l-.516-.515L8.892,6.475A1.746,1.746,0,0,1,8.44,6.22L4.076,10.575l-.519-.518A16.051,16.051,0,0,0,4.912,6a3.373,3.373,0,0,1-.412.035c-.041,0-.073-.008-.112-.01A16.953,16.953,0,0,1,3.131,9.631L2.76,9.26a.246.246,0,0,0-.4.079L.231,14.445a.287.287,0,0,0-.016.089.25.25,0,0,0,.25.25.289.289,0,0,0,.1-.019l5.1-2.124a.246.246,0,0,0,.079-.4l-.372-.372a16.874,16.874,0,0,1,3.612-1.256c0-.059-.015-.106-.015-.166A3.349,3.349,0,0,1,9,10.089,16.076,16.076,0,0,0,4.946,11.444Z",fuel:"m14 6v5.5c0 .2761-.2239.5-.5.5s-.5-.2239-.5-.5v-2c0-.8284-.6716-1.5-1.5-1.5h-1.5v-6c0-.5523-.4477-1-1-1h-6c-.5523 0-1 .4477-1 1v11c0 .5523.4477 1 1 1h6c.5523 0 1-.4477 1-1v-4h1.5c.2761 0 .5.2239.5.5v2c0 .8284.6716 1.5 1.5 1.5s1.5-.6716 1.5-1.5v-6.5c0-.5523-.4477-1-1-1v-1.51c-.0054-.2722-.2277-.4901-.5-.49-.2816.0047-.5062.2367-.5015.5184.0002.0105.0007.0211.0015.0316v2.45c0 .5523.4477 1 1 1s1-.4477 1-1-.4477-1-1-1zm-5 .5c0 .2761-.2239.5-.5.5h-5c-.2761 0-.5-.2239-.5-.5v-3c0-.2761.2239-.5.5-.5h5c.2761 0 .5.2239.5.5z",furniture:"m8.69099 10.142v-1.642c0-.13261-.05268-.25979-.14645-.35355-.09377-.09377-.22094-.14645-.35355-.14645h-1c-.13261 0-.25979.05268-.35356.14645-.09376.09376-.14644.22094-.14644.35355v1.641c-.75987.1945-1.4456.6085-1.9715 1.1905-.52591.5819-.86868 1.3059-.9855 2.0815-.01141.0723-.00702.1462.01285.2167.01987.0704.05476.1357.10227.1914s.10651.1004.17295.1311c.06643.0307.13873.0467.21193.0468h6.92201c.0732-.0001.1455-.0161.2119-.0468.0665-.0307.1255-.0754.173-.1311s.0824-.121.1022-.1914c.0199-.0705.0243-.1444.0129-.2167-.1176-.7765-.4616-1.501-.989-2.0828-.5275-.5819-1.2148-.9952-1.97601-1.1882zm4.63901-3.863-2.5-5c-.0412-.08351-.1048-.15387-.1838-.20316s-.1701-.07556-.2632-.07584h-5.38401c-.09261.00019-.18335.02609-.2621.07483-.07875.04873-.14241.11837-.1839.20117l-2.5 5c-.03809.076-.05617.16046-.05253.24539.00363.08494.02886.16754.07331.24001.04444.07247.10663.13241.18068.17416s.15753.06393.24254.06444h8.19401v1.5c0 .13261.0527.25979.1464.35355.0938.09377.221.14645.3536.14645s.2598-.05268.3535-.14645c.0938-.09376.1465-.22094.1465-.35355v-1.5h1.194c.0847-.00059.1678-.02269.2416-.06421s.1359-.1011.1804-.17317c.0444-.07207.0699-.15425.0739-.23884s-.0135-.16882-.0509-.24478z",gaming:"m13.1 11.5c-.6.3-1.4.1-1.8-.5l-1.1-1.4h-5.40002l-1.1 1.4c-.5.7-1.4.8-2.1.3-.5-.4-.700004-1-.600004-1.5l.700004-3.7c.2-1.2 1.3-2.1 2.5-2.1h2.8v-1.5c0-.8.6-1.5 1.4-1.5h3.10002c.3 0 .5.2.5.5s-.2.5-.5.5h-3.00002c-.3 0-.5.2-.5.4v.1 1.5h2.80002c1.2 0 2.3.9 2.5 2.1l.7 3.7c.1.7-.2 1.4-.9 1.7zm-7.10002-5c0-.8-.7-1.5-1.5-1.5s-1.5.7-1.5 1.5.7 1.5 1.5 1.5 1.5-.7 1.5-1.5zm6.00002 0c0-.3-.2-.5-.5-.5h-.5v-.5c0-.3-.2-.5-.5-.5s-.50002.2-.50002.5v.5h-.5c-.3 0-.5.2-.5.5s.2.5.5.5h.5v.5c0 .3.20002.5.50002.5s.5-.2.5-.5v-.5h.5c.3 0 .5-.2.5-.5z",garden:"M13,8c0,3.31-2.19,6-5.5,6S2,11.31,2,8c2.2643,0.0191,4.2694,1.4667,5,3.61V7H4.5C3.6716,7,3,6.3284,3,5.5v-3 C3,2.2239,3.2239,2,3.5,2c0.1574,0,0.3056,0.0741,0.4,0.2l1.53,2l1.65-3c0.1498-0.232,0.4593-0.2985,0.6913-0.1487 C7.8308,1.0898,7.8815,1.1404,7.92,1.2l1.65,3l1.53-2c0.1657-0.2209,0.4791-0.2657,0.7-0.1C11.9259,2.1944,12,2.3426,12,2.5v3 C12,6.3284,11.3284,7,10.5,7H8v4.61C8.7306,9.4667,10.7357,8.0191,13,8z","garden-centre":"M4,5L4,4.5C4,3.12 5.12,2 6.5,2C7.88,2 9,3.12 9,4.5L9,10.293L11.365,7.928L11.018,6.633C11.018,6.631 11.017,6.629 11.017,6.627L11.016,6.627L11.016,6.627C10.973,6.461 11.016,6.276 11.147,6.146C11.342,5.951 11.659,5.951 11.854,6.146L13.854,8.146C14.049,8.341 14.049,8.658 13.854,8.853C13.724,8.983 13.541,9.027 13.375,8.984C13.375,8.984 13.375,8.984 13.375,8.984C13.372,8.983 13.369,8.982 13.365,8.981L12.072,8.635L9,11.707L9,12C9,12.552 8.552,13 8,13L5,13C4.448,13 4,12.552 4,12L4,11.536L1.732,9.268C0.757,8.292 0.757,6.708 1.732,5.732C2.22,5.244 2.86,5 3.5,5L3.5,5L4,5ZM4,6L3.5,6L3.5,6C3.116,6 2.732,6.147 2.439,6.439C1.854,7.025 1.854,7.975 2.439,8.561L4,10.121L4,6ZM8,5L8,4.5C8,3.672 7.328,3 6.5,3C5.672,3 5,3.672 5,4.5L5,5L8,5Z",gate:"M1 2.75A.75.75 0 0 1 1.75 2h1.114c.09 0 .18.016.263.048l3.386 1.27A.75.75 0 0 1 7 4.02v5.96a.75.75 0 0 1-.487.702L3 12v.25a.75.75 0 0 1-.75.75h-.5a.75.75 0 0 1-.75-.75v-9.5Zm3 5.736v-4.87a.25.25 0 0 0-.162-.234l-.5-.187A.25.25 0 0 0 3 3.429v5.224c0 .17.167.291.33.237l.5-.166A.25.25 0 0 0 4 8.486ZM5 4.18v3.807a.25.25 0 0 0 .33.238l.5-.167A.25.25 0 0 0 6 7.82V4.366a.25.25 0 0 0-.162-.234l-.5-.187A.25.25 0 0 0 5 4.179Zm9-1.43a.75.75 0 0 0-.75-.75h-1.114a.75.75 0 0 0-.263.048l-3.386 1.27A.75.75 0 0 0 8 4.02v5.96a.75.75 0 0 0 .487.702L12 12v.25c0 .414.336.75.75.75h.5a.75.75 0 0 0 .75-.75v-9.5Zm-2.83 5.974a.25.25 0 0 1-.17-.238v-4.87a.25.25 0 0 1 .162-.234l.5-.187a.25.25 0 0 1 .338.234v5.224a.25.25 0 0 1-.33.237l-.5-.166ZM10 4.179v3.807a.25.25 0 0 1-.33.238l-.5-.167A.25.25 0 0 1 9 7.82V4.366a.25.25 0 0 1 .162-.234l.5-.187a.25.25 0 0 1 .338.234Z",gift:"M10.5 1.00152C9.0967.957116 7.8503 1.89192 7.5 3.25152 7.1497 1.89192 5.9033.957116 4.5 1.00152 2.7678.947006 2.23515 2.79746 2.81831 4H1.5C1.22386 4 1 4.22386 1 4.5V5.5C1 5.77614 1.22386 6 1.5 6H13.5C13.7761 6 14 5.77614 14 5.5V4.5C14 4.22386 13.7761 4 13.5 4H12.1938C12.8 2.81516 12.2922 1.00143 10.5404 1.00112 10.5269 1.00112 10.5135 1.00122 10.5 1.00152ZM10.6831 4H8.5C8.50082 2.8961 9.3959 2.00152 10.5 2.00152 11.675 2.00152 11.8827 3.87414 10.6831 4ZM6.5 4H4.29187C3.25675 3.88256 3.19576 2.10553 4.3323 2.00152 4.3881 1.99642 4.4442 1.99642 4.5 2.00152 5.60409 2.00152 6.49918 2.8961 6.5 4ZM2 7.00146V11.5015C2 12.3299 2.6716 13.0015 3.5 13.0015H6.5V7.00146H2ZM8.5 7.00146V13.0015H11.5C12.3284 13.0015 13 12.3299 13 11.5015V7.00146H8.5Z",globe:"M11.981,9.481,11.26,8.76A4.979,4.979,0,1,1,4.24,1.74l-.721-.721A5.991,5.991,0,0,0,7,11.475V13H6.5a.5.5,0,0,0,0,1h2a.5.5,0,0,0,0-1H8V11.473A5.983,5.983,0,0,0,11.981,9.481ZM7.5,9A3.5,3.5,0,1,0,4,5.5,3.5,3.5,0,0,0,7.5,9Zm1-5,.364-.592a2.5,2.5,0,0,1,.823.9L9.5,5h-1ZM6.656,3.156,7.5,4V5L8,6H9.94a2.494,2.494,0,0,1-1.5,1.814L8,7H6.5L5.05,5A2.5,2.5,0,0,1,6.656,3.156Z",golf:"M3.3999,1.1c0,0.1,0,0.2,0,0.2c0,0.4,0.3,0.7,0.7,0.7c0.3,0,0.5-0.2,0.6-0.5l0,0L4.9,1l5.6,2.3L6.6,6C6.2,6.3,6.2,6.7,6.3,7.1 l0.9,2.1l-1.3,3.9C5.7,13.6,6.1,14,6.5,14c0.3,0,0.5-0.1,0.6-0.5l1.4-4l0.1,0.3v3.5c0,0,0,0.7,0.7,0.7s0.7-0.7,0.7-0.7V10 c0-0.2,0-0.3-0.1-0.5L8.5,6.1l2.7-1.9c0.2-0.2,0.4-0.3,0.4-0.6s-0.2-0.5-0.4-0.6L4,0.1c-0.0878,0-0.118,0.0179-0.2001,0.1 L3.3999,1.1z M5.5,3C4.7,3,4,3.7,4,4.5S4.7,6,5.5,6S7,5.3,7,4.5S6.2999,3,5.5,3z",grocery:"M 13.199219 1.5 C 13.199219 1.5 11.808806 1.4588 11.253906 2 C 10.720406 2.5202 10.5 2.9177 10.5 4 L 1.1992188 4 L 2.59375 8.8144531 C 2.59725 8.8217531 2.6036219 8.8287375 2.6074219 8.8359375 C 2.8418219 9.4932375 3.4545469 9.9666406 4.1855469 9.9941406 C 4.1885469 9.9954406 4.1992187 10 4.1992188 10 L 10.699219 10 L 10.699219 10.199219 C 10.699219 10.199219 10.7 10.500391 10.5 10.900391 C 10.3 11.300391 10.200391 11.5 9.4003906 11.5 L 2.9003906 11.5 C 1.9003906 11.5 1.9003906 13 2.9003906 13 L 4.0996094 13 L 4.1992188 13 L 9.0996094 13 L 9.1992188 13 L 9.3007812 13 C 10.500781 13 11.399219 12.299609 11.699219 11.599609 C 11.999219 10.899609 12 10.300781 12 10.300781 L 12 10 L 12 4 C 12 3.4764 12.228619 3 12.699219 3 L 13.25 3 C 13.6642 3 14 2.6642 14 2.25 C 14 1.8358 13.6642 1.5 13.25 1.5 L 13.199219 1.5 z M 9.1992188 13 C 8.5992188 13 8.1992188 13.4 8.1992188 14 C 8.1992188 14.6 8.5992187 15 9.1992188 15 C 9.7992187 15 10.199219 14.6 10.199219 14 C 10.199219 13.4 9.7992188 13 9.1992188 13 z M 4.1992188 13 C 3.5992188 13 3.1992188 13.4 3.1992188 14 C 3.1992188 14.6 3.5992187 15 4.1992188 15 C 4.7992188 15 5.1992188 14.6 5.1992188 14 C 5.1992188 13.4 4.7992187 13 4.1992188 13 z",hairdresser:"M15,3c0,0-2-0.6-3.5,0.5l-4.3,3C6.4,5.9,5.2,5.2,4,4.8V4c0-1.1-0.9-2-2-2C0.9,2,0,2.9,0,4v1.5 C0,6,0.5,6,0.5,6H2h0.5C4.5,6,6,7.5,6,7.5S4.5,9,2.5,9H2H0.5C0.5,9,0,9,0,9.5V11c0,1.1,0.9,2,2,2c1.1,0,2-0.9,2-2v-0.8 c1.2-0.4,2.4-1.1,3.2-1.7l4.3,3C13,12.6,15,12,15,12L8.5,7.5L15,3z M3,5H2H1V4c0-0.6,0.4-1,1-1c0.6,0,1,0.4,1,1V5z M3,11 c0,0.6-0.4,1-1,1c-0.6,0-1-0.4-1-1v-1h1h1V11z M7.25,8c-0.2761,0-0.5-0.2239-0.5-0.5S6.9739,7,7.25,7s0.5,0.2239,0.5,0.5 S7.5261,8,7.25,8z",harbor:"M7.5,0C5.5,0,4,1.567,4,3.5c0.0024,1.5629,1.0397,2.902,2.5,3.3379v6.0391 c-0.9305-0.1647-1.8755-0.5496-2.6484-1.2695C2.7992,10.6273,2.002,9.0676,2.002,6.498c0.0077-0.5646-0.4531-1.0236-1.0176-1.0137 C0.4329,5.493-0.0076,5.9465,0,6.498c0,3.0029,1.0119,5.1955,2.4902,6.5723C3.9685,14.4471,5.8379,15,7.5,15 c1.6656,0,3.535-0.5596,5.0117-1.9395S14.998,9.4868,14.998,6.498c0.0648-1.3953-2.0628-1.3953-1.998,0 c0,2.553-0.7997,4.1149-1.8535,5.0996C10.3731,12.3203,9.4288,12.7084,8.5,12.875V6.8418C9.9607,6.4058,10.9986,5.0642,11,3.5 C11,1.567,9.5,0,7.5,0z M7.5,2C8.3284,2,9,2.6716,9,3.5S8.3284,5,7.5,5S6,4.3284,6,3.5S6.6716,2,7.5,2z",hardware:"M13.7919,3.2619c0,0-1.676,1.675-2.1163,2.1208c-0.085,0.0861-0.1688,0.1135-0.282,0.0961 c-0.1481-0.0226-0.2974-0.038-0.4462-0.0558c-0.4072-0.0485-0.8145-0.0966-1.2292-0.1458C9.649,4.6852,9.5787,4.1049,9.5177,3.5236 C9.512,3.4689,9.5509,3.3943,9.5925,3.3522c0.5071-0.5134,1.9261-1.9287,2.134-2.136c-0.4508-0.2129-1.2243-0.2968-1.8007-0.2031 c-2.1801,0.3543-3.5112,2.534-2.8206,4.625C7.1432,5.753,7.1194,5.8201,7.0374,5.902C5.1891,7.7454,3.3436,9.5914,1.498,11.4374 c-0.0616,0.0616-0.1231,0.124-0.1779,0.1913c-0.5264,0.6473-0.3873,1.6264,0.2974,2.102c0.6044,0.4197,1.3658,0.3442,1.9053-0.1948 c1.8534-1.8519,3.7059-3.7047,5.556-5.5598C9.1707,7.884,9.2437,7.8526,9.3779,7.8983c0.6189,0.2109,1.2524,0.2354,1.8884,0.0884 c1.9386-0.4478,3.1251-2.3732,2.6549-4.3034C13.8895,3.5532,13.843,3.4244,13.7919,3.2619z",heart:"m13.91 7.75001c-1.17 2.24999-4.30002 5.30999-6.07002 6.93999-.1903.1718-.4797.1718-.67 0-1.78-1.63-4.91-4.69-6.08-6.93999-2.57-4.95 3.91-8.250002 6.41-3.3 2.5-4.950002 8.98002-1.65 6.41002 3.3z",heliport:"M4,2C3,2,3,3,4,3h4v1C7.723,4,7.5,4.223,7.5,4.5V5H5H3.9707H3.9316 C3.7041,4.1201,2.9122,3.5011,2,3.5c-1.1046,0-2,0.8954-2,2s0.8954,2,2,2c0.3722-0.001,0.7368-0.1058,1.0527-0.3027L5.5,10.5 C6.5074,11.9505,8.3182,12,9,12h5c0,0,1,0,1-1v-0.9941C15,9.2734,14.874,8.874,14.5,8.5l-3-3c0,0-0.5916-0.5-1.2734-0.5H9.5V4.5 C9.5,4.223,9.277,4,9,4V3h4c1,0,1-1,0-1C13,2,4,2,4,2z M2,4.5c0.5523,0,1,0.4477,1,1s-0.4477,1-1,1s-1-0.4477-1-1 C1,4.9477,1.4477,4.5,2,4.5z M10,6c0.5,0,0.7896,0.3231,1,0.5L13.5,9H10c0,0-1,0-1-1V7C9,7,9,6,10,6z","highway-rest-area":"M13.5,13h-3V9h3a.5.5,0,0,0,.4092-.7871L11.66,5h.84a.5.5,0,0,0,.3838-.82l-2.5-3a.5155.5155,0,0,0-.7676,0l-2.5,3A.5.5,0,0,0,7.5,5h.84L6.0908,8.2129A.5.5,0,0,0,6.5,9h3v4H4V11H5.5a.5.5,0,0,0,0-1h-4a.5.5,0,0,0,0,1H3v2H1.5a.5.5,0,0,0,0,1h12a.5.5,0,0,0,0-1Z",historic:"m7.5 1c-1 0-1 1-2 1h-3.5c-.54467 0-1 .45533-1 1v7c0 .5447.45533 1 1 1h5v2.5s0 .5.5.5.5-.5.5-.5v-2.5h5c.5447 0 1-.4553 1-1v-7c0-.54467-.4553-1-1-1h-3.5c-1 0-1-1-2-1zm-4.5 4v-1h9v1zm0 1h4v1h-4zm0 2h7v1h-7z",home:"M2,13.7478c0,0.13807,0.11193,0.25,0.25,0.25h3.749v-3h3v3h3.749c0.13807,0,0.25-0.11193,0.25-0.25V7.9987H2 C2,7.9987,2,13.7478,2,13.7478z M13.93,6.5778l-0.9319-0.8189V2c0-0.55228-0.44771-1-1-1s-1,0.44772-1,1v2L7.6808,1.09 C7.5863,0.9897,7.42846,0.98478,7.3279,1.079L7.3169,1.09L1.0678,6.553C0.9734,6.65376,0.97856,6.81197,1.07932,6.90637 C1.12478,6.94896,1.18451,6.97304,1.2468,6.9739L3,6.9989h10.7468c0.13807,0.00046,0.25037-0.1111,0.25083-0.24917 C13.99784,6.68592,13.97365,6.62445,13.93,6.5779V6.5778z","horse-riding":"M6,1A1,1,0,1,1,7,2,1,1,0,0,1,6,1ZM8,3.5a.484.484,0,0,0,0-.058A.472.472,0,0,0,7.5,3h-1a.484.484,0,0,0-.058,0A.472.472,0,0,0,6,3.5V7H8Zm6.85,3.644L12.8,4.8l.085-.509a.478.478,0,0,0,.008-.063.25.25,0,0,0-.25-.25.346.346,0,0,0-.158.056L9,7H8L9,8V9.5a.5.5,0,0,1-1,0v-1L6,7H4a1.5,1.5,0,0,0-1.243.661A1.466,1.466,0,0,0,1.563,7H1.5A1.449,1.449,0,0,0,0,8.4v.086A3.781,3.781,0,0,0,.559,10.4a.278.278,0,0,0,.191.1A.25.25,0,0,0,1,10.25V9s-.02-.924.753-1c.5-.048.747.253.747.5V11L2,13v1.75a.25.25,0,0,0,.25.25.254.254,0,0,0,.25-.234V13L4,11v1l.5,2.8a.255.255,0,0,0,.246.2A.25.25,0,0,0,5,14.754H5L4.855,12.3,5.5,11H8v1l.508,2.813A.257.257,0,0,0,8.75,15,.25.25,0,0,0,9,14.75V12l.367-1a1.155,1.155,0,0,0,.543-.6l2.161-3.767a.863.863,0,0,0,1.023.4l1.066.818a.591.591,0,0,0,.35.135.487.487,0,0,0,.475-.4A.552.552,0,0,0,14.85,7.144Z",hospital:"M7,1C6.4,1,6,1.4,6,2v4H2C1.4,6,1,6.4,1,7v1 c0,0.6,0.4,1,1,1h4v4c0,0.6,0.4,1,1,1h1c0.6,0,1-0.4,1-1V9h4c0.6,0,1-0.4,1-1V7c0-0.6-0.4-1-1-1H9V2c0-0.6-0.4-1-1-1H7z","hospital-JP":"m12.5038 3h-10.00777c-.26639.00235-.52096.11039-.70772.30036-.18677.18998-.29046.44634-.28828.71274v5.5807c-.00063.18713.05047.37079.14765.5307.09718.1599.23667.2899.40305.3755l4.78 2.8394c.20725.1056.43653.1606.6691.1606.23258 0 .46186-.055.6691-.1606l4.78037-2.8394c.1664-.0856.3059-.2155.4031-.3755.0972-.15989.1483-.34357.1476-.5307v-5.5807c.0012-.13194-.0237-.2628-.0732-.38512-.0494-.12232-.1225-.2337-.215-.32777-.0925-.09408-.2027-.16901-.3241-.22052-.1215-.05151-.2519-.07859-.3839-.07969zm-2.0038 5.5h-1.99997v2h-2v-2h-2v-2h2v-2h2v2h1.99997z","hot-spring":"M6.682,5.759c-.505-.725-.781-1.121-.63-2.376,.139-1.156,.678-1.616,1.198-2.059,.404-.345,.797-.68,.981-1.324,.301,.722-.036,1.47-.349,2.164-.311,.691-.599,1.329-.211,1.836,.971,1.271,1.963,2.88,.971,4.586-.214,.393-.539,.681-.861,.968-.422,.375-.841,.747-1.004,1.348-.269-.677,.008-1.366,.285-2.052,.306-.759,.61-1.516,.172-2.251-.203-.34-.389-.607-.551-.84Zm3.371-1.174c-.098-.632,.034-1.281,.368-1.809,.367-.45,.701-.642,.991-.81,.345-.199,.627-.362,.83-.877,.289,.684,0,1.188-.304,1.718-.119,.207-.24,.418-.329,.645-.191,.61,.101,.893,.467,1.247,.358,.346,.786,.76,.899,1.617,.083,.635-.036,1.156-.372,1.684-.356,.436-.681,.655-.965,.846-.356,.24-.648,.437-.856,.965-.292-.688,.031-1.259,.353-1.828,.123-.217,.246-.434,.334-.658,.073-.558-.234-.867-.581-1.217-.357-.36-.757-.763-.834-1.523Zm-8.018,0c-.098-.632,.005-1.3,.368-1.809,.376-.528,.729-.717,1.035-.881,.323-.173,.594-.318,.786-.806,.289,.683-.014,1.208-.325,1.749-.122,.212-.246,.427-.336,.655-.152,.385,.131,1.014,.501,1.242,1.002,.801,1.227,2.286,.547,3.353-.366,.448-.704,.648-.999,.823-.353,.209-.645,.382-.849,.898-.278-.656,.008-1.18,.3-1.714,.131-.24,.263-.481,.345-.737,.179-.557-.134-.884-.51-1.277-.349-.365-.752-.785-.863-1.498Zm10.965,4.414c.7,2.616-3.474,3-5.5,3s-6.2-.484-5.5-3c-.633,.316-1,.961-1,1.5,0,1.519,2.91,2.9,6.5,2.9s6.5-1.381,6.5-2.9c0-.539-.367-1.184-1-1.5Z","ice-cream":"M5.44,8.17a3.473,3.473,0,0,0,2-.63A3.5,3.5,0,0,0,9,8.14h.44L8,13.7a.5.5,0,0,1-.92,0Zm6-3.473a2,2,0,0,1-4,0h0a2,2,0,1,1-2-2h.12a2,2,0,1,1,3.75,0h.13A2,2,0,0,1,11.439,4.7Z",industry:"M14,1v12H1V8.72c0.0016-0.1419,0.0634-0.2764,0.17-0.37l3-3.22c0.2074-0.1823,0.5234-0.1618,0.7056,0.0456 C4.9568,5.268,5.0011,5.387,5,5.51v3l3.16-3.37c0.2025-0.1878,0.5188-0.1759,0.7066,0.0266C8.9532,5.2599,9.0009,5.3827,9,5.51V11h3 V1H14z",information:"M7.5,1 C6.7,1,6,1.7,6,2.5S6.7,4,7.5,4S9,3.3,9,2.5S8.3,1,7.5,1z M4,5v1c0,0,2,0,2,2v2c0,2-2,2-2,2v1h7v-1c0,0-2,0-2-2V6c0-0.5-0.5-1-1-1H4 z","jewelry-store":"M12,8.5c0,2.4853-2.0147,4.5-4.5,4.5S3,10.9853,3,8.5c0-1.8483,1.1164-3.4329,2.7099-4.1255l0.1761,0.137l0.7739,0.6019 C5.1366,5.4922,4,6.8611,4,8.5C4,10.4299,5.5701,12,7.5,12S11,10.4299,11,8.5c0-1.6389-1.1366-3.0078-2.6599-3.3866l0.95-0.7388 C10.8836,5.0672,12,6.6517,12,8.5z M7.5,4.5L10,2.5555L9,1H6L5,2.5555l1.5,1.1667L7.5,4.5z",karaoke:"M12.1,2.952A2.988,2.988,0,0,0,6.99,4.917l3.142,3.142A2.988,2.988,0,0,0,12.1,2.952Zm-7.428,5.3L2.55,10.377a1,1,0,0,0,0,1.414l.707.707a1,1,0,0,0,1.414,0l2.121-2.121L8.914,8.255,6.793,6.134Zm.741,2.087-.707-.707L6.793,7.548l.707.707Z",landmark:"M12.5,12H12v-0.5c0-0.3-0.2-0.5-0.5-0.5H11V6h1l1-2c-1,0.1-2,0.1-3,0C9.2,3.4,8.6,2.8,8,2V1.5C8,1.2,7.8,1,7.5,1 S7,1.2,7,1.5V2C6.4,2.8,5.8,3.4,5,4C4,4.1,3,4.1,2,4l1,2h1v5c0,0-0.5,0-0.5,0C3.2,11,3,11.2,3,11.5V12H2.5C2.2,12,2,12.2,2,12.5V13 h11v-0.5C13,12.2,12.8,12,12.5,12z M7,11H5V6h2V11z M10,11H8V6h2V11z","landmark-JP":"m9.5 4c0 .39556-.1173.78224-.33706 1.11114s-.53212.58524-.89757.73662c-.36545.15137-.76759.19098-1.15555.11381s-.74433-.26765-1.02403-.54736c-.27971-.2797-.47019-.63607-.54736-1.02403s-.03756-.79009.11381-1.15555c.15138-.36545.40772-.67781.73662-.89757s.71558-.33706 1.11114-.33706c.53043 0 1.03914.21071 1.41421.58579.37508.37507.58579.88378.58579 1.41421zm-6 4c-.39556 0-.78224.1173-1.11114.33706s-.58524.53212-.73662.89757c-.15137.36546-.19098.76757-.11381 1.15557.07717.3879.26765.7443.54736 1.024.2797.2797.63607.4702 1.02403.5474.38796.0771.7901.0375 1.15555-.1138.36545-.1514.67781-.4078.89757-.7367s.33706-.7155.33706-1.1111c0-.53043-.21071-1.03914-.58579-1.41421-.37507-.37508-.88378-.58579-1.41421-.58579zm8 0c-.3956 0-.7822.1173-1.1111.33706s-.58528.53212-.73666.89757c-.15137.36546-.19098.76757-.11381 1.15557.07717.3879.26765.7443.54737 1.024.2797.2797.6361.4702 1.024.5474.388.0771.7901.0375 1.1556-.1138.3654-.1514.6778-.4078.8975-.7367.2198-.3289.3371-.7155.3371-1.1111 0-.53043-.2107-1.03914-.5858-1.41421-.3751-.37508-.8838-.58579-1.4142-.58579z",landuse:"m8.911 2.85401c.02782.02324.05021.0523.06558.08512.01538.03283.02337.06863.02342.10488v3.706c0 .0663-.02634.12989-.07322.17678-.04689.04688-.11048.07322-.17678.07322h-2.5c-.0663 0-.12989-.02634-.17678-.07322-.04688-.04689-.07322-.11048-.07322-.17678v-1.75h-1v1.75c0 .0663-.02634.12989-.07322.17678-.04689.04688-.11048.07322-.17678.07322h-2.5c-.0663 0-.12989-.02634-.17678-.07322-.04688-.04689-.07322-.11048-.07322-.17678v-3.7c.00005-.03625.00804-.07205.02342-.10488.01537-.03282.03776-.06188.06558-.08512l3.254-2.728c.04413-.0370337.09989-.0573335.1575-.0573335s.11337.0202998.1575.0573335zm-1.159 5.646c-.04915.00002-.09718.01464-.138.042l-2.614 1.95799h-1v-1.99999c0-.13261-.05268-.25979-.14645-.35355-.09376-.09377-.22094-.14645-.35355-.14645s-.25979.05268-.35355.14645c-.09377.09376-.14645.22094-.14645.35355v1.99999h-1v-1.99999c0-.13261-.05268-.25979-.14645-.35355-.09376-.09377-.22094-.14645-.35355-.14645s-.25979.05268-.35355.14645c-.09377.09376-.14645.22094-.14645.35355v4.24999c0 .0663.02634.1299.07322.1768.04689.0469.11048.0732.17678.0732h6.5c.0663 0 .12989-.0263.17678-.0732.04688-.0469.07322-.1105.07322-.1768v-3.99999c.00026-.03274-.00596-.0652-.0183-.09552-.01235-.03032-.03057-.0579-.05363-.08114-.02305-.02324-.05048-.04168-.0807-.05427s-.06263-.01907-.09537-.01907zm6.248-3.255v6.49999c0 .0671-.0267.1315-.0741.1789-.0474.0475-.1118.0741-.1789.0741h-3.494c-.0668 0-.1308-.0264-.1782-.0734s-.0743-.1108-.0748-.1776v-6.49699c-.00013-.03287.0062-.06544.0188-.09583.0125-.03039.0309-.058.0541-.08124.0233-.02324.0509-.04165.0813-.05417s.0629-.01889.0958-.01876h.75v-.751c0-.06604.0262-.12937.0729-.17607s.1101-.07293.1761-.07293h1.5c.0668.00053.1306.02742.1776.07481.047.04738.0734.11144.0734.17819v.747h.755c.065 0 .1273.02581.1732.07176.046.04595.0718.10826.0718.17324zm-1 4.75499h-2v1h2zm0-1.99999h-2v1h2zm0-2h-2v1h2z",laundry:"M8,1L6,3H3c0,0-1,0-1,1v9c0,1,1,1,1,1h9c0,0,1,0,1-1V2c0-1-1-1-1-1 S8,1,8,1z M8.5,2h2C10.777,2,11,2.223,11,2.5S10.777,3,10.5,3h-2C8.223,3,8,2.777,8,2.5S8.223,2,8.5,2z M7.5,6 c1.6569,0,3,1.3431,3,3s-1.3431,3-3,3s-3-1.3431-3-3S5.8431,6,7.5,6z",library:"M1.0819,9.9388C0.9871,9.867,1.0007,9.7479,1.0007,9.7479L1.5259,3.5c0,0,0.0082-0.0688,0.0388-0.104 C1.584,3.374,1.6084,3.342,1.6544,3.3232C2.1826,3.1072,5.0537,1.5519,6.5,3c0.2397,0.2777,0.4999,0.6876,0.4999,1v5.2879 c0,0,0.0062,0.1122-0.0953,0.1801c-0.0239,0.016-0.124,0.0616-0.242,0.0026c-2.2253-1.1134-4.711,0.1546-5.3381,0.4871 C1.1987,10.0244,1.1006,9.9531,1.0819,9.9388z M13.6754,9.9577c-0.6271-0.3325-3.1128-1.6005-5.3381-0.4871 c-0.118,0.059-0.2181,0.0134-0.242-0.0026C7.9939,9.4001,8.0001,9.2879,8.0001,9.2879V4c0-0.3124,0.2602-0.7223,0.4999-1 c1.4463-1.4481,4.2991,0.1071,4.8273,0.3232c0.046,0.0188,0.0704,0.0508,0.0897,0.0728C13.4476,3.4312,13.4558,3.5,13.4558,3.5 l0.5435,6.2479c0,0,0.0136,0.1191-0.0812,0.1909C13.8994,9.9531,13.8013,10.0244,13.6754,9.9577z M8.8647,12.6863 c0.0352-0.0085,0.0964-0.0443,0.1179-0.0775c0.0236-0.0364,0.0378-0.0617,0.0423-0.1088c0.0495-0.9379,1.6245-1.8119,4.6477-0.0298 c0.0775,0.0441,0.1666,0.0396,0.2425-0.0155C14.0014,12.392,14,12.2859,14,12.2859v-0.5542c0,0,0.0003-0.0764-0.0272-0.1184 c-0.0205-0.0312-0.0476-0.0643-0.0926-0.0858c-2.0254-1.3145-4.5858-1.8972-5.8854-0.1592 c-0.0181,0.0423-0.0353,0.0613-0.0728,0.0905C7.8654,11.5028,7.7964,11.5,7.7964,11.5H7.2109c0,0-0.069,0.0028-0.1256-0.0412 c-0.0375-0.0292-0.0547-0.0482-0.0728-0.0905c-1.2996-1.738-3.86-1.1828-5.8854,0.1317c-0.045,0.0215-0.0721,0.0546-0.0926,0.0858 c-0.0275,0.042-0.0272,0.1184-0.0272,0.1184v0.5542c0,0-0.0014,0.1061,0.0849,0.1688c0.0759,0.0551,0.165,0.0596,0.2425,0.0155 c3.0232-1.7821,4.5982-0.8806,4.6477,0.0573c0.0045,0.0471,0.0187,0.0724,0.0423,0.1088c0.0215,0.0332,0.0827,0.069,0.1179,0.0775 C6.8645,12.8656,7.9112,12.9363,8.8647,12.6863z","lift-gate":"M1 4a2 2 0 1 1 4 0v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4Zm3 0a1 1 0 1 0-2 0 1 1 0 0 0 2 0Zm4.5 2L7 3H6v3h2.5ZM10 6h1.5L10 3H8.5L10 6Zm3.25 0H13l-1.5-3h1.75a.75.75 0 0 1 .75.75v1.5a.75.75 0 0 1-.75.75Z",lighthouse:"M4.5,6L0,7V6.5l4.5-1V6z M4.5,3.5L0,2.5V3l4.5,1V3.5z M10.5,3.5V4L15,3V2.5L10.5,3.5z M10.5,6L15,7V6.5l-4.5-1V6z M8,7V2 h2.5c0.2761,0.0552,0.5448-0.1239,0.6-0.4c0.0552-0.2761-0.1239-0.5448-0.4-0.6l-3-1C7.5696-0.0586,7.4204-0.0586,7.29,0l-3,1 c-0.2761,0.0552-0.4552,0.3239-0.4,0.6S4.2139,2.0552,4.49,2H7v5H5l-2,7h9l-2-7H8z","lighthouse-JP":"M9.5,7.4c0,1.1-0.9,2-2,2s-2-0.9-2-2s0.9-2,2-2C8.6,5.4,9.5,6.3,9.5,7.4z M14,7.5C14,7.8,13.8,8,13.5,8h-1.6 c-0.1,0.9-0.311,1.582-0.911,2.282l1.064,1.064c0.2,0.2,0.196,0.504-0.004,0.704c-0.209,0.209-0.5,0.207-0.704,0.004L10.3,11 c-0.6,0.5-1.4,0.8-2.3,0.9v1.6C8,13.8,7.8,14,7.5,14S7,13.8,7,13.5v-1.6c-0.9-0.1-1.7-0.4-2.3-0.9l-1.1,1.1 c-0.207,0.207-0.48,0.213-0.696-0.004c-0.2-0.2-0.207-0.5-0.007-0.7L4,10.3C3.5,9.7,3.1,8.9,3,8H1.5C1.2,8,1,7.8,1,7.5S1.2,7,1.5,7 H3c0.1-0.9,0.4-1.7,1-2.4l-1-1C2.8,3.4,2.8,3.1,3,2.9s0.5-0.2,0.7,0l1,1l0,0C5.3,3.4,6.1,3.1,7,3V1.5C7,1.2,7.2,1,7.5,1S8,1.2,8,1.5 V3c0.9,0.1,1.7,0.5,2.3,1l0,0l1.1-1.1c0.2-0.2,0.5-0.2,0.7,0s0.2,0.5,0,0.7L11,4.7l0,0c0.5,0.7,0.8,1.4,0.9,2.3h1.6 C13.8,7,14,7.2,14,7.5z M11.1,7.4c0-2-1.6-3.6-3.6-3.6S3.8,5.5,3.8,7.4S5.4,11,7.4,11S11.1,9.4,11.1,7.4z",lodging:"M0.5,2.5C0.2,2.5,0,2.7,0,3v7.5v2C0,12.8,0.2,13,0.5,13S1,12.8,1,12.5V11h13v1.5 c0,0.3,0.2,0.5,0.5,0.5s0.5-0.2,0.5-0.5v-2c0-0.3-0.2-0.5-0.5-0.5H1V3C1,2.7,0.8,2.5,0.5,2.5z M3.5,3C2.7,3,2,3.7,2,4.5l0,0 C2,5.3,2.7,6,3.5,6l0,0C4.3,6,5,5.3,5,4.5l0,0C5,3.7,4.3,3,3.5,3L3.5,3z M7,4C5.5,4,5.5,5.5,5.5,5.5V7h-3C2.2,7,2,7.2,2,7.5v1 C2,8.8,2.2,9,2.5,9H6h9V6.5C15,4,12.5,4,12.5,4H7z",logging:"M13.91,3.41,13.5,3l.2-.28c.02-.03.04-.05.06-.08A.969.969,0,0,0,14,1.99a1,1,0,0,0-1.62-.77c-.03.02-.06.05-.09.07L12,1.5l-.386-.386a.354.354,0,0,0-.525.475l.417.417-.5.5-.392-.392a.354.354,0,0,0-.525.475L10.5,3l-.5.5-.381-.381a.354.354,0,1,0-.528.472h0l.028.028L9.5,4,9,4.5l-.395-.395a.354.354,0,0,0-.517.483L8.5,5,8,5.5l-.365-.365a.354.354,0,0,0-.556.439h0C7.1,5.6,7.508,6,7.508,6L7,6.5l-.394-.392a.392.392,0,0,0-.5-.028.384.384,0,0,0-.028.5L6.1,6.6l.4.4L6,7.5l-.4-.4a.37.37,0,0,0-.5,0L6.248,8.244,12.09,2.41,12.5,2H13v.5l-.41.41L6.751,8.749,7.9,9.9a.355.355,0,0,0,0-.5l-.008-.009L7.5,9,8,8.5l.384.384a.354.354,0,0,0,.528-.472L8.5,8,9,7.5l.38.38a.354.354,0,0,0,.528-.472l-.02-.02L9.5,7l.5-.5.377.377A.35.35,0,0,0,10.64,7a.347.347,0,0,0,.252-.6L10.5,6l.5-.5.38.38a.354.354,0,0,0,.528-.472L11.88,5.38,11.5,5l.5-.5.381.381a.354.354,0,0,0,.528-.472l-.025-.025L12.5,4l.5-.5.382.382a.354.354,0,0,0,.528-.472ZM4.39,7.916C3.893,7.419,3.641,7,3,7H1.5a.5.5,0,0,0-.5.5v3A2.19,2.19,0,0,0,1.5,12l.815.811A2.251,2.251,0,0,0,5.493,13h0L7.5,11ZM3.5,10,2.262,11.238A1.3,1.3,0,0,1,2,10.5V8H3a.545.545,0,0,1,.335.194.455.455,0,0,1,.165.418Z",marker:"M7.5 1C5.42312 1 3 2.2883 3 5.56759C3 7.79276 6.46156 12.7117 7.5 14C8.42309 12.7117 12 7.90993 12 5.56759C12 2.2883 9.57688 1 7.5 1Z","marker-stroked":"M5.11697 2.81756C5.76952 2.26561 6.65195 2 7.5 2C8.34805 2 9.23048 2.26561 9.88303 2.81756C10.5075 3.34579 11 4.20017 11 5.56759C11 5.94031 10.8461 6.52407 10.5105 7.29145C10.1859 8.03354 9.73523 8.85087 9.24257 9.65811C8.64175 10.6426 7.999 11.5793 7.48195 12.3097C6.96023 11.5798 6.31599 10.6233 5.71947 9.62296C5.2343 8.80934 4.79303 7.98717 4.47608 7.24844C4.14708 6.48162 4 5.91216 4 5.56759C4 4.20017 4.49248 3.34579 5.11697 2.81756ZM8.10767 13.1554C9.45904 11.2632 12 7.54181 12 5.56759C12 2.2883 9.57688 1 7.5 1C5.42312 1 3 2.2883 3 5.56759C3 7.44926 5.47533 11.2572 6.86751 13.1671C7.12165 13.5157 7.3397 13.8011 7.5 14C7.55627 13.9215 7.62241 13.8299 7.697 13.7266C7.81469 13.5636 7.95343 13.3714 8.10767 13.1554Z","mobile-phone":"M10,2h0V1.5a.5.5,0,0,0-1,0V2H5A1,1,0,0,0,4,3V13a1,1,0,0,0,1,1h5a1,1,0,0,0,1-1V3A1,1,0,0,0,10,2ZM6,13H5V12H6Zm0-2H5V10H6ZM6,9H5V8H6Zm2,4H7V12H8Zm0-2H7V10H8ZM8,9H7V8H8Zm2,4H9V12h1Zm0-2H9V10h1Zm0-2H9V8h1Zm0-2.5a.5.5,0,0,1-.5.5h-4A.5.5,0,0,1,5,6.5v-3A.5.5,0,0,1,5.5,3h4a.5.5,0,0,1,.5.5Z",monument:"M7.5,0L6,2.5v7h3v-7L7.5,0z M3,11.5 L3,15h9v-3.5L10.5,10h-6L3,11.5z","monument-JP":"M12,13H4c-0.5,0-1-0.5-1-1V5c0-2,0.8-4,4-4c3.1,0,4,2,4,4v6h1c0.5,0,1,0.5,1,1S12.5,13,12,13z M5,11h4V5c0-1,0-2-2-2 S5,4,5,5V11z",mountain:"m7.5 1c-.3 0-.4.2-.6.4l-5.8 9.5c-.1.1-.1.3-.1.4 0 .5.4.7.7.7h11.6c.4 0 .7-.2.7-.7 0-.2 0-.2-.1-.4l-5.7-9.5c-.2-.2-.4-.4-.7-.4zm0 1.5 3.3 5.5h-.8l-1.5-1.5-1 1.5-1-1.5-1.5 1.5h-.9z",museum:"M7.5,0L1,3.5V4h13V3.5L7.5,0z M2,5v5l-1,1.6V13h13v-1.4L13,10V5H2z M4,6h1v5.5H4V6z M7,6h1v5.5H7V6z M10,6h1 v5.5h-1V6z",music:"m12.5 0c-.0804.0008-.1594.0213999-.23.0599999l-8.77 2.4400001c-.2761 0-.5.2239-.5.5v6.28c-.3029-.1798-.6478-.2763-1-.28-1.1046 0-2 .8954-2 2s.8954 2 2 2 2-.8954 2-2v-4.64l8-2.22v3.64c-.3029-.1798-.6478-.2763-1-.28-1.1046 0-2 .8954-2 2s.8954 2 2 2 2-.8954 2-2v-9c0-.2761-.2239-.5-.5-.5zm-.5 3.14-8 2.22v-2l8-2.22z",natural:"M8.753,6.278a.5.5,0,0,1-.51,0A4.109,4.109,0,0,1,6.5,3.5a2.779,2.779,0,0,0-.59-1.506l-.019-.027a.257.257,0,0,1-.056-.144.237.237,0,0,1,.25-.25.264.264,0,0,1,.057.011A3.523,3.523,0,0,1,7.5,2.5L8.28.94a.246.246,0,0,1,.44,0L9.5,2.5a3.4,3.4,0,0,1,1.339-.907.283.283,0,0,1,.1-.021c.175.009.212.119.221.249a.35.35,0,0,1-.043.141A5.2,5.2,0,0,0,10.5,3.5,4.113,4.113,0,0,1,8.753,6.278ZM5,8H6.289a.25.25,0,0,0,.25-.25.241.241,0,0,0-.061-.15L4.7,5.235a.255.255,0,0,0-.391,0L2.518,7.589a.274.274,0,0,0-.062.161.25.25,0,0,0,.25.25H4L1.335,10.6a.273.273,0,0,0-.058.152A.25.25,0,0,0,1.529,11H3L1.435,12.565a.255.255,0,0,0,.18.435H4v1H5V13H7.385a.255.255,0,0,0,.18-.435L6,11H7.471a.25.25,0,0,0,.25-.25.233.233,0,0,0-.058-.149Zm9.345,3.748a.252.252,0,0,1-.252.252H8.908a.252.252,0,0,1-.226-.365L11.27,6.451a.252.252,0,0,1,.451,0l2.6,5.184h0A.251.251,0,0,1,14.345,11.748ZM12.75,10,11.5,7.5,10.25,10Z","observation-tower":"M12 12.5H11.5L10 9V7C10.9951 7 10.9951 6.25 10.9951 6.25L11.5 3C11.5 3 11.5 2.5 11 2.5H10C10 2.5 10 2 9.5 2H8.5V1.5C8.5 1.5 8.5 0.5 7.5 0.5C6.5 0.5 6.5 1.5 6.5 1.5V2H5.5C5 2 5 2.5 5 2.5H4C3.5 2.5 3.5 3 3.5 3L4.0049 6.25C4.0049 6.25 4.0049 7 5 7V9L3.5 12.5H3C3 12.5 2 12.5 2 13.25C2 14 3 14 3 14H12C12 14 13 14 13 13.25C13 12.5 12 12.5 12 12.5ZM10.25 3.5L10 5H5L4.75 3.4971L10.25 3.5ZM8.5 7V8H6.5V7H8.5ZM6.5006 9.4971H8.4994L9.5 12.5H5.5L6.5006 9.4971Z",optician:"M1.78483 3.81169C2.03375 3.31421 2.54231 3 3.09859 3C3.48821 3 3.86186 3.15477 4.13736 3.43027L4.85354 4.14645C5.0488 4.34171 5.0488 4.65829 4.85354 4.85355C4.65827 5.04882 4.34169 5.04882 4.14643 4.85355L3.43017 4.1373C3.34226 4.04939 3.22303 4 3.09871 4C2.92116 4 2.75884 4.10032 2.67944 4.25912L1.309 7H5.2476C6.0654 7 6.7487 7.5656 6.941 8.3245C7.1146 8.2834 7.3009 8.25 7.5 8.25C7.6991 8.25 7.8854 8.2835 8.059 8.3246C8.2513 7.5656 8.9344 7 9.752 7H13.691L12.3206 4.25912C12.2412 4.10032 12.0788 4 11.9013 4C11.777 4 11.6577 4.04939 11.5698 4.1373L10.8536 4.85355C10.6583 5.04882 10.3417 5.04882 10.1465 4.85355C9.9512 4.65829 9.9512 4.34171 10.1465 4.14645L10.8626 3.43027C11.1381 3.15477 11.5118 3 11.9014 3C12.4577 3 12.9663 3.31421 13.2152 3.81169L14.9414 7.26172L14.9404 7.26308C14.9784 7.33359 15 7.41428 15 7.5V8.5C15 8.7761 14.7761 9 14.5 9H14V9.5C14 11.0889 12.998 12 11.25 12H10.75C9.002 12 8 11.0889 8 9.5V9.3413C7.8499 9.2933 7.6693 9.25 7.5 9.25C7.3307 9.25 7.1503 9.2933 7 9.3413V9.5C7 11.0889 5.9976 12 4.25 12H3.75C2.0024 12 1 11.0889 1 9.5V9H0.4992C0.2235 9 0 8.7765 0 8.5007V7.5C0 7.41428 0.0215731 7.33359 0.0595866 7.26308L0.0585938 7.26172L1.78483 3.81169ZM9.752 8C9.3369 8 9 8.3374 9 8.7524V9.5C9 10.1982 9.1992 11 10.75 11H11.25C12.8008 11 13 10.1982 13 9.5V8.7529C13 8.3379 12.6621 8 12.2471 8H9.752ZM2.7529 8C2.3379 8 2 8.3374 2 8.7524V9.5C2 10.1982 2.1987 11 3.75 11H4.25C5.8013 11 6 10.1982 6 9.5V8.7524C6 8.3374 5.6626 8 5.2475 8H2.7529Z",paint:"m13.5 3.5h-1v-.9973c0-.2777-.2251-.5027-.5027-.5027h-10.4946c-.2776 0-.5027.225-.5027.5027v2.9946c0 .2776.2251.5027.5027.5027h10.4946c.2776 0 .5027-.2251.5027-.5027v-.9973h.5v3.1021l-6.1123 1.4106c-.2271.0527-.3877.2549-.3877.4873v1.5074c-.2783.02-.5.246-.5.5295v2.9261c0 .2966.2404.537.5369.537h.9261c.2966 0 .537-.2404.537-.5369v-2.9261c0-.2834-.2217-.5095-.5-.5295v-1.11l6.1123-1.4102c.2266-.0522.3877-.2544.3877-.4873v-4c0-.2764-.2236-.5-.5-.5z",park:"M14,5.75c0.0113-0.6863-0.3798-1.3159-1-1.61C12.9475,3.4906,12.4014,2.9926,11.75,3 c-0.0988,0.0079-0.1962,0.0281-0.29,0.06c-0.0607-0.66-0.6449-1.1458-1.3048-1.0851C9.8965,1.9987,9.6526,2.1058,9.46,2.28l0,0 c0-0.6904-0.5596-1.25-1.25-1.25S6.96,1.5896,6.96,2.28C6.96,2.28,7,2.3,7,2.33C6.4886,1.8913,5.7184,1.9503,5.2797,2.4618 C5.1316,2.6345,5.0347,2.8451,5,3.07C4.8417,3.0195,4.6761,2.9959,4.51,3C3.6816,2.9931,3.0044,3.659,2.9975,4.4874 C2.9958,4.6872,3.0341,4.8852,3.11,5.07C2.3175,5.2915,1.8546,6.1136,2.0761,6.9061C2.2163,7.4078,2.6083,7.7998,3.11,7.94 c0.2533,0.7829,1.0934,1.2123,1.8763,0.959C5.5216,8.7258,5.9137,8.2659,6,7.71C6.183,7.8691,6.4093,7.9701,6.65,8v5L5,14h5l-1.6-1 v-2c0.7381-0.8915,1.6915-1.5799,2.77-2c0.8012,0.1879,1.603-0.3092,1.7909-1.1103C12.9893,7.7686,13.0025,7.6444,13,7.52 c0.0029-0.0533,0.0029-0.1067,0-0.16C13.6202,7.0659,14.0113,6.4363,14,5.75z M8.4,10.26V6.82C8.6703,7.3007,9.1785,7.5987,9.73,7.6 h0.28c0.0156,0.4391,0.2242,0.849,0.57,1.12C9.7643,9.094,9.0251,9.6162,8.4,10.26z","park-alt1":"M9.428,10.429a.269.269,0,0,1-.074-.18A.25.25,0,0,1,9.6,10h1.447a.25.25,0,0,0,.25-.25.258.258,0,0,0-.079-.179L9.07,7.419a.3.3,0,0,1-.063-.17A.249.249,0,0,1,9.257,7H10.4a.251.251,0,0,0,.25-.251.247.247,0,0,0-.077-.178L8.432,4.434,8.418,4.42a.262.262,0,0,1-.066-.17A.25.25,0,0,1,8.6,4h.866a.25.25,0,0,0,.25-.25.246.246,0,0,0-.068-.164h.006L7.7,1.238a.253.253,0,0,0-.042-.044A.249.249,0,0,0,7.5,1.139h0a.249.249,0,0,0-.158.055.253.253,0,0,0-.042.044L5.352,3.586a.246.246,0,0,0-.068.164.25.25,0,0,0,.25.25H6.4a.241.241,0,0,1,.184.42l-.014.014L4.431,6.571a.247.247,0,0,0-.077.178A.251.251,0,0,0,4.6,7H5.745a.249.249,0,0,1,.25.249.3.3,0,0,1-.063.17L3.782,9.571A.258.258,0,0,0,3.7,9.75a.25.25,0,0,0,.25.25H5.4a.25.25,0,0,1,.248.249.269.269,0,0,1-.074.18l-2.14,2.132-.009.009a.248.248,0,0,0,0,.351A.256.256,0,0,0,3.605,13H7v1l1-.008V13h3.391a.263.263,0,0,0,.26-.254.248.248,0,0,0-.071-.177Z",parking:"M4 2V13H6V9H8.5C10.433 9 12 7.433 12 5.5C12 3.567 10.433 2 8.5 2H4ZM6 7V4H8.5C9.32843 4 10 4.67157 10 5.5C10 6.32843 9.32843 7 8.5 7H6Z","parking-garage":"M10.5,10.14c-0.6637,0.4788-1.4732,0.7121-2.29,0.66h-1.9V14h-1.9V5h3.92 c0.7801-0.0414,1.5484,0.2041,2.16,0.69c0.5779,0.5595,0.875,1.3483,0.81,2.15C11.4042,8.6892,11.1088,9.5388,10.5,10.14z M9,6.9 C8.711,6.6881,8.3579,6.5822,8,6.6H6.31v2.65H8c0.3612,0.0191,0.717-0.0947,1-0.32c0.2559-0.2675,0.3867-0.6308,0.36-1 C9.4072,7.5493,9.274,7.1684,9,6.9z M14.41,4.21c0.114-0.2486,0.007-0.5427-0.24-0.66L7.5,0.45l-6.71,3.1 C0.5387,3.666,0.429,3.9637,0.545,4.215C0.661,4.4663,0.9587,4.576,1.21,4.46l0,0L7.5,1.55l6.29,2.9 c0.2486,0.114,0.5427,0.007,0.66-0.24H14.41z","parking-paid":"M1 13V2h4.5a3.5 3.5 0 0 1 3.21 2.103 3.36 3.36 0 0 0-.504.676c-.23.41-.232.837-.174 1.154l.3 1.625A3.495 3.495 0 0 1 5.5 9H3v4H1Zm4.5-6a1.5 1.5 0 1 0 0-3H3v3h2.5Zm3.516-1.248a.716.716 0 0 1 .062-.484C9.315 4.848 9.978 4 11.5 4c1.521 0 2.185.847 2.421 1.268a.716.716 0 0 1 .064.484L13.019 11H12v2h-1v-2H9.981l-.965-5.248ZM12.75 7 13 5.655C12.83 5.409 12.42 5 11.5 5s-1.33.41-1.5.655L10.25 7h2.5Z",pharmacy:"M9.5,4l1.07-1.54c0.0599,0.0046,0.1201,0.0046,0.18,0c0.6904-0.0004,1.2497-0.5603,1.2494-1.2506 C11.999,0.519,11.4391-0.0404,10.7487-0.04C10.0584-0.0396,9.499,0.5203,9.4994,1.2106c0,0.0131,0.0002,0.0262,0.0006,0.0394 c0,0,0,0.07,0,0.1L7,4H9.5z M12,6V5H3v1l1.5,3.5L3,13v1h9v-1l-1-3.5L12,6z M10,10H8v2H7v-2H5V9h2V7h1v2h2V10z","picnic-site":"M4,3C3.446,3,3,3.446,3,4s0.446,1,1,1h1.2969 L4.6523,7H2.5c-0.554,0-1,0.446-1,1s0.446,1,1,1h1.5098L3.041,12.0098c-0.1284,0.3939,0.0868,0.8173,0.4807,0.9457 s0.8173-0.0868,0.9457-0.4807c0.0005-0.0013,0.0009-0.0027,0.0013-0.004L5.5859,9h3.8281l1.1172,3.4707 c0.1273,0.3943,0.5501,0.6107,0.9443,0.4834s0.6107-0.5501,0.4834-0.9443l0,0L10.9902,9H12.5c0.554,0,1-0.446,1-1s-0.446-1-1-1 h-2.1523L9.7031,5H11c0.554,0,1-0.446,1-1s-0.446-1-1-1H4z M6.873,5H8.127l0.6445,2h-2.543L6.873,5z",pitch:"M5,3C4.4477,3,4,2.5523,4,2s0.4477-1,1-1s1,0.4477,1,1S5.5523,3,5,3z M12.5,10H10L9,7L8,5.25L9,5l2.3,1l0,0 c0.2761,0.1105,0.5895-0.0239,0.7-0.3S11.9761,5.1105,11.7,5l0,0L9,4H7L5,5L4,6H2.5C2.2239,6,2,6.2239,2,6.5S2.2239,7,2.5,7H5l1-1 l1,2l-2,2v3.5C5,13.7761,5.2239,14,5.5,14S6,13.7761,6,13.5v-3.11L8,9l1,2h3.5c0.2761,0,0.5-0.2239,0.5-0.5S12.7761,10,12.5,10z","place-of-worship":"M7.5,0l-2,2v2h4V2 L7.5,0z M5.5,4.5L4,6h7L9.5,4.5H5.5z M2,6.5c-0.5523,0-1,0.4477-1,1V13h2V7.5C3,6.9477,2.5523,6.5,2,6.5z M4,6.5V13h7V6.5H4z M13,6.5c-0.5523,0-1,0.4477-1,1V13h2V7.5C14,6.9477,13.5523,6.5,13,6.5z",playground:"m3.00002 1.15c.2091-.8016 1.0284-1.2819 1.83-1.0729s1.2819 1.0284 1.0729 1.83c-.2003.7681-.9643 1.2471-1.7429 1.0929-.8126-.161-1.3409-.9502-1.18-1.7629.0058-.0292.0125-.0583.02-.0871zm10.99998 11.17c.1032.5426-.2531 1.066-.7956 1.1692-.0015.0003-.0029.0006-.0044.0008-.4252.086-.8574-.1119-1.07-.49l-1.68-3.37-1.44998.29-.22.08h-.06v2.15l.62-.15h.14c.2871.0054.5155.2425.5101.5297-.0039.2064-.1295.391-.3201.4703l-5 1c-.0563.0095-.1137.0095-.17 0-.2872 0-.52-.2328-.52-.52 0-.2099.1262-.3993.32-.48l4.15-.83v-2.17l-3.22.58c-.164.0423-.336.0423-.5 0-.3394-.0867-.6088-.3446-.71-.68h-.02l-1-4.07c-.0312-.1416-.0312-.2884 0-.43.0936-.387.4078-.6815.8-.75l4.7-.52v-4.13h.22v4.1h.06l.22-.02.4-.08h.21c.2673.0643.43258.3323.37.6-.0439.235-.251.4041-.49.4l-.49.08h-.22-.06v2.86h.06l.22-.06 1.80998-.36c.4275-.0352.8299.2062 1 .6l2 3.94c.077.0758.1411.1636.19.26zm-5.49998-7.19-2.5.27.74 2.94 1.76-.34z",police:"M5.5,1L6,2h5l0.5-1H5.5z M6,2.5v1.25c0,0,0,2.75,2.5,2.75S11,3.75,11,3.75V2.5H6z M1.9844,3.9863 C1.4329,3.9949,0.9924,4.4485,1,5v4c-0.0001,0.6398,0.5922,1.1152,1.2168,0.9766L5,9.3574V14l5.8789-6.9297 C10.7391,7.0294,10.5947,7,10.4414,7H6.5L3,7.7539V5C3.0077,4.4362,2.5481,3.9775,1.9844,3.9863z M11.748,7.7109L6.4121,14H12 V8.5586C12,8.2451,11.9061,7.9548,11.748,7.7109z","police-JP":"M7.5,1A6.5,6.5,0,1,0,14,7.5,6.5,6.5,0,0,0,7.5,1Zm2.6,2.84L7.5,6.44,4.9,3.84A4.4428,4.4428,0,0,1,10.1,3.84ZM3.84,4.9007,6.4394,7.5l-2.6,2.5993A4.4429,4.4429,0,0,1,3.84,4.9007ZM4.9,11.16l2.6-2.6,2.6,2.6A4.4428,4.4428,0,0,1,4.9,11.16Zm6.26-1.0606L8.5606,7.5l2.6-2.5993a4.4429,4.4429,0,0,1-.0006,5.1986Z",post:"M13.5 3.65139C13.5 3.86918 13.3912 4.07257 13.2099 4.19338L7.5 8L1.79006 4.19338C1.60885 4.07257 1.5 3.86918 1.5 3.65139C1.5 3.29164 1.79164 3 2.15139 3L12.8486 3C13.2084 3 13.5 3.29164 13.5 3.65139Z M13.5 5.96713V11C13.5 11.5523 13.0523 12 12.5 12H2.5C1.94772 12 1.5 11.5523 1.5 11L1.5 5.96713C1.5 5.76746 1.72254 5.64836 1.88868 5.75912L7.5 9.5L13.1113 5.75912C13.2775 5.64836 13.5 5.76746 13.5 5.96713Z","post-JP":"m1.5 4c0-.26522.10536-.51957.29289-.70711.18754-.18753.44189-.29289.70711-.29289h10c.2652 0 .5196.10536.7071.29289.1875.18754.2929.44189.2929.70711s-.1054.51957-.2929.70711c-.1875.18753-.4419.29289-.7071.29289h-10c-.26513 0-.51941-.10529-.70693-.29272-.18752-.18742-.29294-.44165-.29307-.70678zm11 2.5h-10c-.26522 0-.51957.10536-.70711.29289-.18753.18754-.29289.44189-.29289.70711s.10536.51957.29289.70711c.18754.18753.44189.29289.70711.29289h4v4.5c0 .2652.10536.5196.29289.7071.18754.1875.44189.2929.70711.2929s.51957-.1054.70711-.2929c.18753-.1875.29289-.4419.29289-.7071v-4.5h4c.2652 0 .5196-.10536.7071-.29289.1875-.18754.2929-.44189.2929-.70711s-.1054-.51957-.2929-.70711c-.1875-.18753-.4419-.29289-.7071-.29289z",prison:"M3.5,1v13H12V1H3.5z M9.5,2H11v3.5H9.5V2z M4.5,2.0547H6V7H4.5V2.0547z M7,2.0547h1.5V7H7V2.0547z M10.25,6.5 C10.6642,6.5,11,6.8358,11,7.25S10.6642,8,10.25,8l0,0C9.8358,8,9.5,7.6642,9.5,7.25l0,0C9.5,6.8358,9.8358,6.5,10.25,6.5z M7,8 h1.4727L8.5,13H7.0273L7,8z M4.5,8.166H6V13H4.5V8.166z M9.5,9H11v4H9.5V9z",racetrack:"M4.99321 1.58228C5.03861 1.30989 4.8546 1.05228 4.58222 1.00688C4.30983 0.961484 4.05222 1.14549 4.00682 1.41788L2.00682 13.4179C1.96142 13.6903 2.14543 13.9479 2.41782 13.9933C2.6902 14.0387 2.94782 13.8547 2.99321 13.5823L3.6632 9.56238C4.46947 9.67976 5.3398 9.7187 6.026 10.2C6.45057 10.505 6.94151 10.7047 7.45839 10.7828C8.424 10.9286 9.28807 10.3976 10.242 10.549L11.531 10.743C11.7908 10.7822 12.0609 10.5828 12.1 10.323L12.984 4.38899L12.988 4.38499C13.0241 4.12469 12.8213 3.85686 12.561 3.82099L11.272 3.62699C10.3092 3.48421 9.44342 3.9997 8.48942 3.85618C8.06155 3.79181 7.65443 3.62915 7.3 3.38099C6.56128 2.86385 5.68119 2.77814 4.81426 2.656L4.99321 1.58228ZM4.40351 5.12049L4.73218 3.14849C5.33161 3.22962 5.96556 3.27693 6.521 3.51699L6.22626 5.48223C5.65576 5.24949 5.01279 5.2037 4.40351 5.12049ZM3.74549 9.0686L4.07436 7.09542C4.69451 7.18147 5.35159 7.22405 5.933 7.46299L6.23273 5.48673C6.89067 5.75614 7.3918 6.21952 8.126 6.32799L8.426 4.34799C9.16402 4.45947 9.77459 4.17131 10.484 4.11399L10.184 6.07999C9.47389 6.1406 8.85956 6.44062 8.124 6.32999L7.83802 8.30784C7.10186 8.19874 6.59996 7.73286 5.939 7.46399L5.639 9.43999C5.04421 9.20148 4.3764 9.15882 3.74549 9.0686ZM7.83898 8.30813C8.57282 8.41936 9.19002 8.11708 9.9 8.05799L10.184 6.07999C10.8385 6.01968 11.5087 6.19133 12.152 6.28899L11.872 8.26499C11.2277 8.16793 10.5563 7.99624 9.901 8.05799L9.601 10.034C8.89229 10.0817 8.26589 10.3943 7.539 10.284L7.83898 8.30813Z","racetrack-boat":"m10.0643 11.2159c.4691-.5125.9358-1.0224 1.5938-1.2417.9212-.3071 1.5902.0778 1.8665.2805.7241.531 1.3904-.2204.5914-.8064-.4269-.3131-1.4451-.86577-2.7741-.4228-.7202.2401-1.2127.7667-1.70487 1.2931-.40012.4279-.80009.8556-1.32212 1.1291-.61911.3243-1.06486-.0266-1.06486-.6352v-.0121c.00021-.7982-.40819-1.3004-1.25-1.3004-.49071 0-.99216.2582-1.50001.5-1.17511.5596-2.31799 1.2859-3.31714 2.1134-.210639.1751-.243189.4951-.06696.7066.2505.3006.58076.1621.82938-.0379.41361-.3329 1.78116-1.3913 2.93376-1.94.47652-.227.86169-.3421 1.12097-.3421.24997 0 .24997.1016.24997.3396-.00202 1.3264 1.29025 2.1428 2.52893 1.4939.50415-.2641.89557-.6917 1.28535-1.1176zm-7.56426-2.2159c1.5-1 3.25492-2 5-2 .75 0 .75.375.75.75s0 .75.75.75c2.52746 0 5.36316-3.21377 5.49996-5.5l-2.5 1-2.34195-.97445c-.61176-.20392-.92799.74476-.31623.94868l1.15818.52577-1.49996.5-4-1.25c-.23606-.07869-.38872.02744-.5.25l-1.5 3-2.00004 1zm2.5-7c0-.5523.4477-1 1-1s1 .4477 1 1-.4477 1-1 1-1-.4477-1-1z","racetrack-cycling":"M8 1L11 4H12C14 4 14 1 12 1H8ZM8.463 3C8.34323 3.00901 8.2307 3.06084 8.146 3.146L5.646 5.646C5.59615 5.69579 5.55739 5.75555 5.53225 5.82136C5.50711 5.88718 5.49617 5.95757 5.50014 6.02791C5.5041 6.09825 5.52289 6.16696 5.55526 6.22953C5.58764 6.2921 5.63287 6.34713 5.688 6.391L7.846 8.117L6.57 10.242C6.50157 10.356 6.48125 10.4926 6.51351 10.6216C6.54577 10.7506 6.62796 10.8616 6.742 10.93C6.85604 10.9984 6.9926 11.0187 7.12162 10.9865C7.25065 10.9542 7.36157 10.872 7.43 10.758L8.93 8.258C8.99256 8.15404 9.01519 8.03088 8.99366 7.91148C8.97214 7.79207 8.90793 7.68457 8.813 7.609L7.304 6.402L9 4.707L10.146 5.854C10.1925 5.9004 10.2477 5.93718 10.3085 5.96223C10.3692 5.98728 10.4343 6.00012 10.5 6H13C13.1326 6 13.2598 5.94732 13.3536 5.85355C13.4473 5.75979 13.5 5.63261 13.5 5.5C13.5 5.36739 13.4473 5.24021 13.3536 5.14645C13.2598 5.05268 13.1326 5 13 5H10.707L8.854 3.146C8.80319 3.09493 8.74195 3.05545 8.67446 3.03025C8.60698 3.00505 8.53484 2.99473 8.463 3ZM2.949 7C2.16222 7.01338 1.4122 7.33534 0.860573 7.89651C0.308947 8.45767 -0.000113683 9.21311 3.13683e-08 10C3.13683e-08 10.7956 0.316071 11.5587 0.87868 12.1213C1.44129 12.6839 2.20435 13 3 13C3.79565 13 4.55871 12.6839 5.12132 12.1213C5.68393 11.5587 6 10.7956 6 10C6.00006 9.60179 5.92083 9.20756 5.76695 8.84028C5.61307 8.47301 5.38761 8.14004 5.10372 7.8608C4.81982 7.58157 4.48318 7.36164 4.11341 7.21385C3.74364 7.06606 3.34815 6.99336 2.95 7H2.949ZM11.949 7C11.1622 7.01338 10.4122 7.33534 9.86057 7.89651C9.30895 8.45767 8.99989 9.21311 9 10C9 10.7956 9.31607 11.5587 9.87868 12.1213C10.4413 12.6839 11.2044 13 12 13C12.7956 13 13.5587 12.6839 14.1213 12.1213C14.6839 11.5587 15 10.7956 15 10C15.0001 9.60179 14.9208 9.20756 14.767 8.84028C14.6131 8.47301 14.3876 8.14004 14.1037 7.8608C13.8198 7.58157 13.4832 7.36164 13.1134 7.21385C12.7436 7.06606 12.3482 6.99336 11.95 7H11.949ZM12.049 8C12.5709 8.01279 13.0671 8.22914 13.4316 8.60283C13.7962 8.97653 14.0002 9.47795 14 10C14 10.5304 13.7893 11.0391 13.4142 11.4142C13.0391 11.7893 12.5304 12 12 12C11.4696 12 10.9609 11.7893 10.5858 11.4142C10.2107 11.0391 10 10.5304 10 10C9.99992 9.73318 10.0532 9.46904 10.1568 9.22314C10.2603 8.97724 10.4121 8.75455 10.603 8.56818C10.7939 8.3818 11.0202 8.23552 11.2686 8.13794C11.5169 8.04036 11.7823 7.99346 12.049 8V8Z","racetrack-horse":"M10 1C9.73478 1 9.48043 1.10536 9.29289 1.29289C9.10536 1.48043 9 1.73478 9 2C9 2.26522 9.10536 2.51957 9.29289 2.70711C9.48043 2.89464 9.73478 3 10 3C10.2652 3 10.5196 2.89464 10.7071 2.70711C10.8946 2.51957 11 2.26522 11 2C11 1.73478 10.8946 1.48043 10.7071 1.29289C10.5196 1.10536 10.2652 1 10 1ZM5.5 3C5.25 3 4.5 3 5 3.75L6.25 6H4.5C4.223 6.003 3.983 6.1 3.75 6.25C2.944 5.121 2.242 5.552 1.51 6C1.107 6.247 0.694 6.499 0.25 6.5C0.184332 6.50201 0.121902 6.52899 0.0754461 6.57545C0.0289898 6.6219 0.00200653 6.68433 0 6.75C0.00200653 6.81567 0.0289898 6.8781 0.0754461 6.92455C0.121902 6.97101 0.184332 6.99799 0.25 7C0.626 7.02 1.057 6.907 1.488 6.793C2.144 6.62 2.798 6.448 3.254 6.75C3.16 6.937 3 7.5 3 8L2.998 9.51C2.792 9.714 2.619 9.633 2.443 9.55C2.303 9.485 2.16 9.42 2 9.5L1 12.45C1 12.7 1.393 12.752 1.5 12.5L2.25 10.744C2.998 10.744 4.5 10 5 9L9 10L11.5 12.5C11.697 12.697 12.12 12.362 11.96 12.115L10 9L12 6.5C12.248 7 12.495 7 12.986 7H13L13.6 7.75C13.988 8.235 14.82 7.743 14.5 7.25L12.834 4.79L13 4.5C13.062 4.313 12.637 3.924 12.5 4L10.5 5.5L8.89 3.187C8.84314 3.12862 8.78377 3.08151 8.71627 3.04915C8.64877 3.01678 8.57486 2.99999 8.5 3H5.5ZM9 5.25L9.5 6L6.777 7.916C6.72243 7.95469 6.66065 7.98204 6.59532 7.99643C6.52999 8.01081 6.46244 8.01194 6.39666 7.99975C6.33089 7.98756 6.26823 7.96229 6.2124 7.92545C6.15656 7.8886 6.10869 7.84093 6.07162 7.78525C6.03454 7.72957 6.00901 7.66701 5.99655 7.60129C5.98409 7.53556 5.98494 7.46801 5.99905 7.40262C6.01317 7.33723 6.04026 7.27534 6.07873 7.22061C6.1172 7.16588 6.16626 7.11943 6.223 7.084L9 5.25Z",rail:"M 3 1 C 2.4477 1 2 1.4477 2 2 L 2 10 C 2 10.5523 2.4477 11 3 11 L 12 11 C 12.5523 11 13 10.5523 13 10 L 13 2 C 13 1.4477 12.5523 1 12 1 L 3 1 z M 5.75 1.5 L 5.7597656 1.5 L 9.2597656 1.5 C 9.3978656 1.5 9.5097656 1.6119 9.5097656 1.75 C 9.5097656 1.8881 9.3978656 2 9.2597656 2 L 5.75 2 C 5.6119 2 5.5 1.8881 5.5 1.75 C 5.5 1.6119 5.6119 1.5 5.75 1.5 z M 3.5 3 L 7 3 L 7 7 L 3.5 7 C 3.2239 7 3 6.7761 3 6.5 L 3 3.5 C 3 3.2239 3.2239 3 3.5 3 z M 8 3 L 11.5 3 C 11.7761 3 12 3.2239 12 3.5 L 12 6.5 C 12 6.7761 11.7761 7 11.5 7 L 8 7 L 8 3 z M 5 8 C 5.5523 8 6 8.4477 6 9 C 6 9.5523 5.5523 10 5 10 C 4.4477 10 4 9.5523 4 9 C 4 8.4477 4.4477 8 5 8 z M 10 8 C 10.5523 8 11 8.4477 11 9 C 11 9.5523 10.5523 10 10 10 C 9.4477 10 9 9.5523 9 9 C 9 8.4477 9.4477 8 10 8 z M 10.445312 11.994141 C 10.380597 11.999652 10.314981 12.018581 10.253906 12.050781 C 10.030606 12.168381 9.9302313 12.433922 10.019531 12.669922 L 10.189453 13 L 4.8105469 13 L 4.9394531 12.730469 C 5.0371531 12.472169 4.9067375 12.183637 4.6484375 12.085938 C 4.4124375 11.996738 4.1468969 12.097113 4.0292969 12.320312 L 3.0292969 14.320312 C 3.0080969 14.377912 2.9986 14.4387 3 14.5 C 3 14.7761 3.2239 15 3.5 15 C 3.6802 14.999 3.8450875 14.899434 3.9296875 14.740234 L 3.9296875 14.689453 L 4 14.689453 L 4.3105469 14 L 10.689453 14 L 11 14.689453 L 11 14.740234 C 11.0846 14.899434 11.249488 14.999 11.429688 15 C 11.705787 15 11.929688 14.7761 11.929688 14.5 C 11.949587 14.4212 11.949587 14.338566 11.929688 14.259766 L 10.929688 12.259766 C 10.833163 12.076541 10.639459 11.977608 10.445312 11.994141 z","rail-light":"M5.5,0C5,0,5,0.5,5,0.5v1C5,1.777,5.223,2,5.5,2S6,1.777,6,1.5V1h1v2H6c0,0-2,0-2,2v3c0,3,3,3,3,3h1 c0,0,3,0,3-3V5c0-2-2-2-2-2H8V1h1v0.5C9,1.777,9.223,2,9.5,2S10,1.777,10,1.5v-1C10,0,9.5,0,9.5,0H5.5z M7.5,4l2.0449,0.7734L10,6.5 C10.1316,7,9.5,7,9.5,7h-4c0,0-0.6316,0-0.5-0.5l0.4551-1.7266L7.5,4z M7.5,8C7.7761,8,8,8.2239,8,8.5S7.7761,9,7.5,9 S7,8.7761,7,8.5S7.2239,8,7.5,8z M4.125,12L3,15h1.5l0.375-1h5.25l0.375,1H12l-1.125-3h-1.5l0.375,1h-4.5l0.375-1H4.125z","rail-metro":"M5.5,0c0,0-0.75,0-1,1L3,6.5V10c0,1,1,1,1,1h7c0,0,1,0,1-1V6.5L10.5,1c-0.2727-1-1-1-1-1H5.5z M6.5,1.5h2 c0,0,0.5357,0,0.75,1L10,6c0.2146,1.0017-1,1-1,1H6c0,0-1.2146,0.0017-1-1l0.75-3.5C5.9643,1.5,6.5,1.5,6.5,1.5z M5,8 c0.5523,0,1,0.4477,1,1s-0.4477,1-1,1S4,9.5523,4,9S4.4477,8,5,8z M6.75,8h1.5C8.3885,8,8.5,8.1115,8.5,8.25S8.3885,8.5,8.25,8.5 h-1.5C6.6115,8.5,6.5,8.3885,6.5,8.25S6.6115,8,6.75,8z M10,8c0.5523,0,1,0.4477,1,1s-0.4477,1-1,1S9,9.5523,9,9S9.4477,8,10,8z M4.125,12L3,15h1.5l0.375-1h5.25l0.375,1H12l-1.125-3h-1.5l0.375,1h-4.5l0.375-1H4.125z","ranger-station":"M9,0.5l-2,1v3.7734L2,8v6h4v-4h3 v4h4V8L8,5.2734V4l1-0.5l2,1l2-1v-3l-2,1L9,0.5z",recycling:"M2.4556,8.6134C2.118,9.2112,1.501,10.3021,2.593,11.0312c0.3432,0.2268,0.7275,0.3836,1.131,0.4614 C4.0314,11.5382,4.0466,12.0111,3.6855,12c-0.3849-0.0193-2.2596-0.1934-2.5606-1.5995c-0.1556-0.8213,0.0204-1.5571,0.504-2.3556 L2.3263,6.812L1.0196,6.0688L4.5,4v4L3.1941,7.3057L2.4556,8.6134z M6.7,2.034c1.155-0.628,1.823,0.43,2.191,1.007l0.8059,1.2631 L8.431,5.112L12,6.986L11.803,2.96l-1.2639,0.8066L9.779,2.578C9.2572,1.8321,8.875,1.2812,7.944,1.033 C6.307,0.7203,5.3007,2.6194,5.311,2.607c-0.1639,0.2871,0.2156,0.5399,0.451,0.21C6.0202,2.4969,6.339,2.2309,6.7,2.034z M13.294,8.221c-0.0877-0.1897-0.5487-0.1413-0.419,0.267c0.1312,0.3892,0.1845,0.8003,0.157,1.21C12.939,11.01,11.684,11,11,11H9.5 V9.5l-3.5,2l3.488,2.025L9.4926,12H11c0.8906,0.0153,1.5999-0.1759,2.2-0.713C14.4,10.226,13.294,8.221,13.294,8.221z","religious-buddhist":"M13.4978,6.9989h-0.5329c-0.09997-1.10708-0.53528-2.15731-1.2478-3.0105l0.378-0.3784 c0.19605-0.19447,0.19733-0.51105,0.00286-0.7071C11.90698,2.71037,11.59733,2.70518,11.4,2.8912l0,0l-0.0123,0.0123L11.01,3.2815 c-0.85331-0.71298-1.90385-1.14864-3.0113-1.2488V1.5c0-0.27614-0.22386-0.5-0.5-0.5s-0.5,0.22386-0.5,0.5v0.5327 C5.8916,2.13306,4.84144,2.56871,3.9884,3.2815L3.61,2.9C3.41007,2.70952,3.09358,2.71717,2.9031,2.9171 c-0.184,0.19312-0.184,0.49668,0,0.6898l0.3784,0.3775C2.56787,4.83856,2.13216,5.89031,2.0327,6.9989H1.5 c-0.27614,0-0.5,0.22386-0.5,0.5s0.22386,0.5,0.5,0.5h0.5327c0.09987,1.10695,0.535,2.15711,1.2473,3.0103l-0.3779,0.3779 c-0.19538,0.19514-0.19557,0.51173-0.00043,0.70711c0.19053,0.19076,0.49798,0.19611,0.69503,0.01209L3.609,12.094l0.3779-0.3779 c0.8533,0.71312,1.90395,1.1488,3.0115,1.2488v0.5329c0,0.27614,0.22386,0.5,0.5,0.5s0.5-0.22386,0.5-0.5v-0.5329 c1.10719-0.10026,2.15744-0.53592,3.0105-1.2488l0.3779,0.3779c0.19514,0.19538,0.51173,0.19557,0.70711,0.00043 c0.19076-0.19053,0.19611-0.49798,0.01209-0.69503l-0.0123-0.0123l0,0l-0.3779-0.3779c0.71283-0.8531,1.14848-1.90333,1.2488-3.0105 h0.5329c0.27609-0.00544,0.49549-0.23366,0.49006-0.50975C13.98227,7.22064,13.76611,7.00435,13.4978,6.9989z M7.9987,3.0505 c0.83871,0.09248,1.63383,0.42154,2.2926,0.9488l-2.15,2.15c-0.04663-0.0218-0.09436-0.04116-0.143-0.058V3.0505H7.9987z M6.9987,3.0505V6.091c-0.04864,0.01684-0.09637,0.0362-0.143,0.058l-2.15-2.15c0.65897-0.52726,1.45431-0.85622,2.2932-0.9485 H6.9987z M3.9987,4.7062l2.15,2.15c-0.0218,0.04663-0.04116,0.09436-0.058,0.143H3.0505 c0.09243-0.83886,0.42154-1.63413,0.9489-2.293L3.9987,4.7062z M3.0505,7.9987H6.091c0.01687,0.04863,0.03623,0.09636,0.058,0.143 l-2.15,2.15C3.47173,9.63281,3.14276,8.83753,3.0505,7.9987z M6.9989,11.9471c-0.83871-0.09248-1.63383-0.42154-2.2926-0.9488 l2.15-2.15c0.04663,0.0218,0.09436,0.04116,0.143,0.058v3.0405L6.9989,11.9471z M7.9989,11.9471V8.9066 c0.04864-0.01683,0.09638-0.03619,0.143-0.058l2.15,2.15c-0.65895,0.5273-1.4543,0.85627-2.2932,0.9485H7.9989z M10.9989,10.2914 l-2.15-2.15c0.02177-0.04664,0.04113-0.09437,0.058-0.143h3.0415c-0.09276,0.83901-0.42232,1.6343-0.9502,2.293H10.9989z M8.9066,6.9989c-0.01684-0.04864-0.0362-0.09637-0.058-0.143l2.15-2.15c0.52726,0.65877,0.85632,1.45389,0.9488,2.2926H8.9066 V6.9989z","religious-christian":"M6,0.9552V4H3v3h3v8h3V7h3V4H9V1 c0-1-0.9776-1-0.9776-1H6.9887C6.9887,0,6,0,6,0.9552z","religious-jewish":"M7.50049 0.5L5.49949 4H1L3.49949 7.5L1 11H5.49949L7.50049 14.5L9.50049 11H14L11.5005 7.5L14 4H9.50049L7.50049 0.5Z","religious-muslim":"M12.0962 12.0962C9.55779 14.6346 5.44221 14.6346 2.90381 12.0962C0.365398 9.55779 0.365398 5.44221 2.90381 2.90381C5.44221 0.365398 9.55779 0.365398 12.0962 2.90381C12.2675 3.07512 12.4273 3.25362 12.5754 3.43832C10.5566 1.86336 7.63341 2.00437 5.77643 3.86135C3.76685 5.87092 3.76685 9.12908 5.77643 11.1387C7.63341 12.9956 10.5566 13.1366 12.5754 11.5617C12.4273 11.7464 12.2675 11.9249 12.0962 12.0962Z M10.1 6.5H8L9.7 8L9 10.5L11 9L13 10.5L12.3 8L14 6.5H11.9L11 4.5L10.1 6.5Z","religious-shinto":"M12.5,2.5H2.5a.9448.9448,0,0,0-1,1,.9448.9448,0,0,0,1,1H3V12a.9448.9448,0,0,0,1,1,.9448.9448,0,0,0,1-1V8h5v4a.9448.9448,0,0,0,1,1,.9448.9448,0,0,0,1-1V4.5h.5a.9448.9448,0,0,0,1-1,.9448.9448,0,0,0-1-1ZM10,6H8V4.5h2ZM7,6H5V4.5H7Z","residential-community":"m11.8 12.5v-2.5c.7-.1 1.2-.7 1.2-1.5s-.7-1.5-1.5-1.5-1.5.7-1.5 1.5c0 .7.5 1.4 1.2 1.5v2.5h-4.2v-11.5h-5v11.5h-1v.5h13v-.5zm-5.8-2.5h-3v-1h3zm0-2h-3v-1h3zm0-2h-3v-1h3zm0-2h-3v-1h3z",restaurant:"M3.5,0l-1,5.5c-0.1464,0.805,1.7815,1.181,1.75,2L4,14c-0.0384,0.9993,1,1,1,1s1.0384-0.0007,1-1L5.75,7.5 c-0.0314-0.8176,1.7334-1.1808,1.75-2L6.5,0H6l0.25,4L5.5,4.5L5.25,0h-0.5L4.5,4.5L3.75,4L4,0H3.5z M12,0 c-0.7364,0-1.9642,0.6549-2.4551,1.6367C9.1358,2.3731,9,4.0182,9,5v2.5c0,0.8182,1.0909,1,1.5,1L10,14c-0.0905,0.9959,1,1,1,1 s1,0,1-1V0z","restaurant-bbq":"M12.0166,12.5H14.5L12,15V12.5165a1.6189,1.6189,0,0,1-1.1367.4806,1.6,1.6,0,0,1-.9931-.3448A6.7838,6.7838,0,0,1,9.8783,2.3418,1.6179,1.6179,0,0,1,12,2.462V0l2.5,2.5H12.036a1.5927,1.5927,0,0,1,.1225.1289,1.6239,1.6239,0,0,1-.2871,2.2793A3.5148,3.5148,0,0,0,10.75,7.4951a3.5578,3.5578,0,0,0,1.1465,2.6162,1.6352,1.6352,0,0,1,.2325,2.2783C12.0949,12.4315,12.0535,12.4624,12.0166,12.5ZM2.504,0l-1,5.5c-.1464.805,1.7815,1.181,1.75,2L3.004,14a.9625.9625,0,0,0,1,1,.9625.9625,0,0,0,1-1l-.25-6.5c-.0314-.8176,1.7334-1.1808,1.75-2l-1-5.5h-.5l.25,4-.75.5L4.254,0h-.5l-.25,4.5L2.754,4l.25-4Z","restaurant-noodle":"M4.457,11.9892,1,8V7H14V8l-3.4961,3.9891ZM3.9882,2.5a.5.5,0,0,0-1,0v.5671l-1.7969.3675a.25.25,0,1,0,.094.4911l1.7029-.2776v.5662l-1.75.0357a.25.25,0,0,0,0,.5l1.75.0357V5.998h1Zm9.5,1.5-7.5.2625V2.9951l7.594-1.0737a.5.5,0,0,0-.1881-.9822L5.9792,2.4555a.4963.4963,0,0,0-.991.0445v.2276l-.493.1009V3.18l.493-.08V4.2974l-.493.01v.4608L13.4882,5a.5.5,0,0,0,0-1ZM10,13H5v.5757h5Z","restaurant-pizza":"M1.393 7.931.025 7.315A14.05 14.05 0 0 1 7.764-.001l.027.07.511 1.331-.003.001a12.613 12.613 0 0 0-6.906 6.53Zm10.963 4.96L2.42 8.414a11.604 11.604 0 0 1 6.354-6.009l.003-.001.817 2.122c-.028-.002-.052-.016-.081-.016a1.062 1.062 0 1 0 .764 1.793l2.413 6.273a.249.249 0 0 1-.334.316ZM7.426 7.52a.925.925 0 1 0-1.849 0 .925.925 0 0 0 1.849 0Zm3.017 2.03a.925.925 0 1 0-.07.353.924.924 0 0 0 .07-.354Z","restaurant-seafood":"M11.433,10.0889h2.49v.75H11.8525A4.81,4.81,0,0,1,13.4751,13.14l-.71.2422a4.01,4.01,0,0,0-1.74-2.1971,1.7775,1.7775,0,0,1-1.0352.4538L8.4374,12.9852H6.5188L4.9839,11.623a2.0222,2.0222,0,0,1-1.0929-.44,4.0093,4.0093,0,0,0-1.7426,2.1988l-.71-.2422a4.8146,4.8146,0,0,1,1.622-2.3007H.99v-.75H3.4839l.8633-.6764L3.3329,7.7567a2.2738,2.2738,0,0,1-.269.0293,2.0192,2.0192,0,0,1-2.0532-2.08c0-2.08,1.979-4.16,1.979-4.16L2.2531,5.9931l1.7255-.0012L4.9913,2.9852l0,2.9956a2.0936,2.0936,0,0,1-.6993,1.4121l.8536,1.3936L5.23,8.7208a3.8669,3.8669,0,0,1,4.4784,0l.0605.0474.869-1.4152a2.1177,2.1177,0,0,1-.6433-1.3722l0-2.9956.9836,3.0067,1.7547.0012-.7367-4.4466s1.982,2.08,1.982,4.16a2.0211,2.0211,0,0,1-2.0562,2.08,2.3125,2.3125,0,0,1-.3441-.0376L10.5676,9.3945l.8407.6593C11.4212,10.0638,11.4218,10.0782,11.433,10.0889Z","restaurant-sushi":"M5.5,3C5.2239,3,5,3.2239,5,3.5H2.75C1.2265,3.5,0,4.7265,0,6.25c0,0.8274,0.3687,1.5592,0.9434,2.0625 C0.3803,8.6675,0,9.2893,0,10c0,1.0994,0.9006,2,2,2h3.5h2H10c1.0994,0,2-0.9006,2-2c0-0.4883-0.1863-0.9294-0.4805-1.2773 l2.1777,0.9629c0.3716,0.1831,0.8213,0.0303,1.0044-0.3413c0.1831-0.3716,0.0303-0.8213-0.3413-1.0044 c-0.0188-0.0093-0.038-0.0178-0.0576-0.0254l-1.8105-0.8027l1.6309-0.2715c0.4099-0.0599,0.6936-0.4408,0.6337-0.8507 c-0.0544-0.3724-0.3765-0.6469-0.7528-0.6415c-0.0426,0.0003-0.085,0.0042-0.127,0.0117l-2.1309,0.3555 C11.2595,4.9521,10.0387,3.7837,8,3.5488V3.5C8,3.2239,7.7761,3,7.5,3H5.5z M6,4h1v5v2H6V9V4z M9.5,8 c0.259,0,0.4638,0.1974,0.4902,0.4492l0.0762-0.1328c0.1385-0.2399,0.4437-0.3201,0.6836-0.1816s0.3201,0.4418,0.1816,0.6816 l-0.2578,0.4473C10.8727,9.445,11,9.7021,11,10c0,0.5626-0.4374,1-1,1H8V9h1V8.5C9,8.223,9.223,8,9.5,8z M2.4395,8.0703 c0.1934-0.0242,0.3903,0.0662,0.4941,0.2461l0.2012,0.3477C3.226,8.5647,3.3538,8.5,3.5,8.5C3.777,8.5,4,8.723,4,9h1v2H2 c-0.5626,0-1-0.4374-1-1s0.4374-1,1-1h0.1738L2.0684,8.8164C1.9299,8.5765,2.0101,8.2733,2.25,8.1348 C2.31,8.1001,2.375,8.0784,2.4395,8.0703z","road-accident":"M12.6,8.7,11.5,6.5a1.05,1.05,0,0,0-.9-.5H4.4a1.05,1.05,0,0,0-.9.5L2.4,8.7,1.16,9.852a.5.5,0,0,0-.16.366V14.5a.5.5,0,0,0,.5.5h2c.2,0,.5-.2.5-.4V14h7v.5c0,.2.2.5.4.5h2.1a.5.5,0,0,0,.5-.5V10.218a.5.5,0,0,0-.16-.366ZM4.5,7h6l1,2h-8ZM5,11.6c0,.2-.3.4-.5.4H2.4c-.2,0-.4-.3-.4-.5V10.4c.1-.3.3-.5.6-.4l2,.4c.2,0,.4.3.4.5Zm8-.1c0,.2-.2.5-.4.5H10.5c-.2,0-.5-.2-.5-.4v-.7c0-.2.2-.5.4-.5l2-.4c.3-.1.5.1.6.4ZM8,4H7L6,0H9ZM1.1,1.8,3.7.3l1.1,4L4,4.7ZM11.3.3l2.6,1.5L11,4.8l-.9-.5Z",roadblock:"M7.5 14C11.0899 14 14 11.0899 14 7.5C14 3.91015 11.0899 1 7.5 1C3.91015 1 1 3.91015 1 7.5C1 11.0899 3.91015 14 7.5 14ZM12 6V9H3V6H12Z",rocket:"m11.5547 2c-2.14407 0-5.02107 1.471-6.95307 4h-1.6016c-1.1573 0-1.8206.8638-2.277302 1.7773l-.6114 1.2227h1.443402 1.4453l1.5 1.5 1.5 1.5v1.4453 1.4434l1.2227-.6113c.9135-.4568 1.7773-1.1201 1.7773-2.2774v-1.6016c2.52897-1.932 3.99997-4.809 3.99997-6.9531v-1.4453zm-2.55467 3c.5523 0 .99997.4477.99997 1s-.44767 1-.99997 1-1-.4477-1-1 .4477-1 1-1zm-6.5 6-.5.5c-.7222.7222-1 2.5-1 2.5s1.698-.198 2.5-1l.5-.5z",school:"M5.542 3.647 3.106 3l.443-1.63a.505.505 0 0 1 .618-.352l1.46.392a.5.5 0 0 1 .355.613l-.44 1.624Zm-4.52 7.356a.496.496 0 0 1-.005-.276l1.819-6.726 2.435.647-1.819 6.726a.499.499 0 0 1-.143.237l-1.457 1.347a.152.152 0 0 1-.247-.066l-.583-1.889ZM10 5c-2.25 0-3-.75-3-3 2.25 0 3 .75 3 3Zm-1.4 7.984c-1.37.21-3.126-1.706-3.52-3.8L5.969 5.9c.399-.35.903-.533 1.419-.533a2.71 2.71 0 0 1 1.564.489.964.964 0 0 0 1.089-.01 2.438 2.438 0 0 1 1.46-.479c.77 0 1.643.489 2.05 1.201 1.536 2.696-1.194 6.709-3.144 6.417a.867.867 0 0 1-.255-.093 1.427 1.427 0 0 0-1.302 0 .866.866 0 0 1-.25.092Z","school-JP":"M12.5,2.9992h-4v-1a1,1,0,0,0-2,0v1h-4a1,1,0,0,0,0,2h.67A10.8169,10.8169,0,0,0,5.15,8.8105c.3331.4313.6594.8248.9785,1.1936a14.3825,14.3825,0,0,1-2.6074,2.117,1,1,0,1,0,.955,1.7581h0A15.65,15.65,0,0,0,7.5,11.4613a15.65,15.65,0,0,0,3.0239,2.4179,1,1,0,1,0,.9551-1.7578,14.3789,14.3789,0,0,1-2.6073-2.1171c.3191-.3688.6453-.7622.9784-1.1935a10.818,10.818,0,0,0,1.98-3.8116h.67a1,1,0,0,0,0-2ZM8.2671,7.5879c-.2614.3385-.5154.6413-.767.937-.2517-.2957-.5057-.5985-.7672-.937A9.5885,9.5885,0,0,1,5.2676,4.9992H9.7319A9.5789,9.5789,0,0,1,8.2671,7.5879Z",scooter:"M4.908,12a1.5,1.5,0,1,1-2.816,0Zm8.65-6C13.539,6,13,6,13,6V3h.351a.282.282,0,0,0,.223-.148l.268-.536a.334.334,0,0,0,.009-.066A.25.25,0,0,0,13.6,2H13V1.7a.215.215,0,0,0-.2-.2H9.25a.25.25,0,0,0,0,.5H12V6.6L7.6,10H6V7.5A.5.5,0,0,0,5.5,7H5V5H6.75a.25.25,0,0,0,0-.5L2.266,4.034c-.006,0-.01-.007-.016-.007a.25.25,0,0,0-.25.25V4.75A.25.25,0,0,0,2.25,5H3V7H2.5A1.538,1.538,0,0,0,1,8.5v2a.472.472,0,0,0,.442.5C1.461,11,7.5,11,7.5,11L10,10h3.5a.472.472,0,0,0,.5-.442C14,9.539,14,6.5,14,6.5A.472.472,0,0,0,13.558,6ZM12.5,11A1.5,1.5,0,1,0,14,12.5,1.538,1.538,0,0,0,12.5,11Z",shelter:"M13 2L1 6V8L2 7.66667V13H12V11H4V7L13 4V2Z",shoe:"M9.5,7a9.97,9.97,0,0,1-1.315-.948L6.01,3.221a.558.558,0,0,0-1,.279H5V5H3.209a.5.5,0,0,1-.357-.148S2.5,4,2,4H1.5a.5.5,0,0,0-.5.5V9H6.5c1.5,0,2,1,3.5,1h4V9.5C14,8,10.547,7.594,9.5,7Zm0,4a3.131,3.131,0,0,1-1.526-.447A4.1,4.1,0,0,0,6,10H1v1.5a.5.5,0,0,0,.5.5h4a.5.5,0,0,0,.5-.5V11a3.134,3.134,0,0,1,1.526.447A4.1,4.1,0,0,0,9.5,12h4a.5.5,0,0,0,.5-.5V11Z",shop:"m13.33 5h-1.83l-.39-2.33c-.1601-.7182-.7017-1.2905-1.41-1.49-.3493-.1124-.7131-.173-1.08-.18h-2.24c-.3669.007-.7307.0676-1.08.18-.7083.1995-1.2499.7718-1.41 1.49l-.39 2.33h-1.83c-.2761-.0017-.5013.2208-.503.497-.0003.0519.0074.1035.023.153l1.88 6.3c.1964.6246.7753 1.0496 1.43 1.05h6c.651-.0047 1.2247-.4289 1.42-1.05l1.88-6.3c.0829-.2634-.0635-.5441-.3269-.627-.0463-.0146-.0945-.0223-.1431-.023zm-8.81 0 .36-2.17c.0807-.3625.3736-.6395.74-.7.2463-.0776.5019-.1213.76-.13h2.24c.2614.0078.5205.0515.77.13.3664.0605.6593.3375.74.7l.35 2.17h-6z",skateboard:"M1.25 5.25V5H2.75V5.25C2.75 5.94036 3.30964 6.5 4 6.5H11C11.6904 6.5 12.25 5.94036 12.25 5.25V5H13.75V5.25C13.75 6.76878 12.5188 8 11 8H4C2.48122 8 1.25 6.76878 1.25 5.25ZM5 10C5 10.5523 4.55228 11 4 11 3.44772 11 3 10.5523 3 10 3 9.44772 3.44772 9 4 9 4.55228 9 5 9.44772 5 10ZM12 10C12 10.5523 11.5523 11 11 11 10.4477 11 10 10.5523 10 10 10 9.44772 10.4477 9 11 9 11.5523 9 12 9.44772 12 10Z",skiing:"M15,4.5C15,5.3284,14.3284,6,13.5,6S12,5.3284,12,4.5S12.6716,3,13.5,3S15,3.6716,15,4.5z M13.72,11.89 c-0.0623-0.1197-0.2083-0.1684-0.33-0.11c-0.6846,0.4194-1.5208,0.5111-2.28,0.25L4.78,8.86L7.5,7.5v-3L9,5.25v3L10.5,9L12,8.25 L10.5,7.5V3l-3-1.5L6,2.25v4.5L3.28,8.11L0.61,6.78C0.4857,6.7192,0.3358,6.7707,0.275,6.895C0.2142,7.0193,0.2657,7.1692,0.39,7.23 l10.5,5.25c0.3156,0.135,0.6568,0.1998,1,0.19c0.5998-0.0103,1.1889-0.161,1.72-0.44c0.1236-0.0615,0.174-0.2116,0.1125-0.3352 C13.7217,11.8932,13.7208,11.8916,13.72,11.89z",slaughterhouse:"M15 6.1c0 1.376-1.363.694-1.363.694L12.5 7H11a5.31 5.31 0 0 1-1.5 2 3.272 3.272 0 0 1-.523 1.125c-.077.091-.06.2-.068.33l.091 2.3a.264.264 0 0 1-.266.25.242.242 0 0 1-.234-.205L8 9.5H4v3.253a.247.247 0 0 1-.247.247.25.25 0 0 1-.24-.2L3 10v-.5a8.2 8.2 0 0 1-1.426-.1A1.886 1.886 0 0 1 .9 10.826c-.128.083-.148.211-.133.386l.19 1.538a.25.25 0 0 1-.25.25.238.238 0 0 1-.23-.174l-.427-1.7a.35.35 0 0 1 .055-.3c.437-.68-.049-2.55-.049-2.55A1.354 1.354 0 0 1 0 7.922V5.5a2.027 2.027 0 0 1 2.736-1.914s.1.03.142.049a15.15 15.15 0 0 0 3.814.038l.18-.062a1.842 1.842 0 0 1 1.26 0c.078.02.154.05.226.089.1.049.196.106.287.171A1.8 1.8 0 0 0 9.5 4h1V3l.5.5c.5-1.5 2.5-1 2.5-1a1.687 1.687 0 0 0-1.5 1l2.5 2a.612.612 0 0 1 .186-.069.318.318 0 0 1 .314.321V6.1Z",slipway:"m2 10 12 1.495V12H2v-2Zm12-4-1 1v.583L5.196 4.332l.063-.125L6.61 2.845h.831a.35.35 0 0 0 0-.7h-.976a.352.352 0 0 0-.248.103L4.723 3.753a.371.371 0 0 0-.066.09l-.109.219L2 3c0 2-.03 3.958 2.86 4.5C6.28 7.765 13 9 13 9l2-2-1-1Z",snowmobile:"M15 10a1 1 0 0 1-1 1H9.414a1 1 0 0 1-.707-.293L7.146 9.146A.499.499 0 0 0 6.793 9H3.334a1 1 0 0 1-.601-.2L1.386 7.788A1.013 1.013 0 0 1 1 7a.995.995 0 0 1 .472-.844L5 4l1.038-1.692A.5.5 0 0 1 7 2.5V6l1 1h1l5.412-.992a.5.5 0 0 1 .355.915L13 8l1.631 1.224A.99.99 0 0 1 15 10Zm-9.5 0H3.225c-.504 0-.999-.127-1.44-.368L.74 9.062a.5.5 0 0 0-.48.877l1.269.693c.441.242.937.368 1.44.368H5.5a.5.5 0 0 0 0-1Z",soccer:"M11,1.5C11,2.3284,10.3284,3,9.5,3S8,2.3284,8,1.5S8.6716,0,9.5,0S11,0.6716,11,1.5z M11,11c-0.5523,0-1,0.4477-1,1 s0.4477,1,1,1s1-0.4477,1-1S11.5523,11,11,11z M12.84,6.09l-1.91-1.91l0,0C10.8399,4.0675,10.7041,4.0014,10.56,4H3.5 C3.2239,4,3,4.2239,3,4.5S3.2239,5,3.5,5h2.7L3,11.3l0,0c-0.0138,0.066-0.0138,0.134,0,0.2c-0.058,0.2761,0.1189,0.547,0.395,0.605 C3.6711,12.163,3.942,11.9861,4,11.71l0,0L5,10h2l-1.93,4.24l0,0C5.0228,14.3184,4.9986,14.4085,5,14.5 c-0.0552,0.2761,0.1239,0.5448,0.4,0.6c0.2761,0.0552,0.5448-0.1239,0.6-0.4l0,0l4.7-9.38l1.44,1.48 c0.211,0.1782,0.5264,0.1516,0.7046-0.0593C13.0037,6.5523,13.0018,6.2761,12.84,6.09z",square:"M12 13H3C2.4477 13 2 12.5523 2 12V3C2 2.4477 2.4477 2 3 2H12C12.5523 2 13 2.4477 13 3V12C13 12.5523 12.5523 13 12 13Z","square-stroked":"M11.7 3.3V11.7H3.3V3.3H11.7ZM12 2H3C2.4477 2 2 2.4477 2 3V12C2 12.5523 2.4477 13 3 13H12C12.5523 13 13 12.5523 13 12V3C13 2.4477 12.5523 2 12 2Z",stadium:"M7,1v2v1.5v0.5098C4.1695,5.1037,2.0021,5.9665,2,7v4.5c0,1.1046,2.4624,2,5.5,2s5.5-0.8954,5.5-2V7 c-0.0021-1.0335-2.1695-1.8963-5-1.9902V4.0625L11,2.75L7,1z M3,8.1465c0.5148,0.2671,1.2014,0.4843,2,0.6328v2.9668 C3.7948,11.477,3,11.0199,3,10.5V8.1465z M12,8.1484V10.5c0,0.5199-0.7948,0.977-2,1.2461V8.7812 C10.7986,8.6328,11.4852,8.4155,12,8.1484z M6,8.9219C6.4877,8.973,6.9925,8.9992,7.5,9C8.0073,8.9999,8.5121,8.9743,9,8.9238 v2.9844C8.5287,11.964,8.0288,12,7.5,12S6.4713,11.964,6,11.9082V8.9219z",star:"M7.5,0l-2,5h-5l4,3.5l-2,6l5-3.5 l5,3.5l-2-6l4-3.5h-5L7.5,0z","star-stroked":"m7.5 2.69 1.07 2.68.25.63h3l-2 1.75-.5.44.23.63 1 3.13-2.48-1.77-.57-.4-.57.4-2.52 1.77 1-3.13.21-.63-.5-.44-2-1.75h3l.25-.63zm0-2.69-2 5h-5l4 3.5-2 6 5-3.5 5 3.5-2-6 4-3.5h-5z",suitcase:"M4.5 4V2C4.5 1.44772 4.94772 1 5.5 1H9.5C10.0523 1 10.5 1.44772 10.5 2V4H12C12.5523 4 13 4.44772 13 5V11C13 11.5523 12.5523 12 12 12H3C2.44771 12 2 11.5523 2 11V5C2 4.44772 2.44772 4 3 4H4.5ZM5.5 2V4H9.5V2H5.5Z",swimming:"M10.1113,2C9.9989,2,9.6758,2.1465,9.6758,2.1465L6.3535,3.8262 C5.9111,4.0024,5.7358,4.7081,6.002,5.0605l0.9707,1.4082L3.002,8.498L5,9.998l2.502-1.5l2.5,1.5l1.002-1.002l-3-4l2.5566-1.5293 c0.5286-0.2662,0.4434-0.7045,0.4434-0.9707C10.9999,2.2861,10.6437,2,10.1113,2z M12.252,5C11.2847,5,10.5,5.7827,10.5,6.75 s0.7847,1.752,1.752,1.752s1.75-0.7847,1.75-1.752S13.2192,5,12.252,5z M2.5,10L0,11.5V13l2.5-1.5L5,13l2.502-1.5l2.5,1.5L12,11.5 l3,1.5v-1.5L12,10l-1.998,1.5l-2.5-1.5L5,11.5L2.5,10z","table-tennis":"M11.9676,10.2275a3.8116,3.8116,0,0,1-1.9122.9831L3.7678,4.9338A4.0283,4.0283,0,0,1,4.7725,3.0324C7.03.7745,9.98.2235,12.3781,2.6219S14.2255,7.97,11.9676,10.2275Zm-6.987,1.6093A3.8422,3.8422,0,0,1,6.149,11.278,4.5328,4.5328,0,0,1,8,11.4452L3.5456,7a4.4126,4.4126,0,0,1,.1572,1.9223,3.6639,3.6639,0,0,1-.5208,1.1159c-1.072,1.263-2.132,1.727-2.132,2.1879A1.8378,1.8378,0,0,0,2.7739,13.95C3.2348,13.95,3.6917,12.9368,4.9806,11.8368Z",teahouse:"M8.00002 5C8.00002 5 10 4.9 10 3.4 10 2.46598 9.17751 2.20864 8.47606 1.98917 7.95458 1.82601 7.5 1.68378 7.5 1.3 7.5.386843 8 0 8 0 8 0 7 .531581 7 1.5 7 2.21063 7.54045 2.46176 8.05947 2.70292 8.53888 2.92568 9 3.13994 9 3.7 9 4.7 8.00002 5 8.00002 5ZM11.8372 6.67447C11.3755 8.62063 10.7854 11.1073 9 12V14H6V12C4.21455 11.1073 3.62454 8.62063 3.16276 6.67447 3.10728 6.44061 3.05364 6.21455 3 6H12C11.9464 6.21453 11.8927 6.44063 11.8372 6.67447ZM6.99998 4C6.99998 5 5.49998 5 5.49998 5 5.49998 5 6.29295 4.9 6.29295 4.3 6.29295 4.02526 6.01604 3.85489 5.71852 3.67184 5.37315 3.45935 5 3.22977 5 2.8 5 1.9661 5.99998 1.5 5.99998 1.5 5.99998 1.5 5.49998 1.77344 5.49998 2.5 5.49998 2.88823 5.85322 3.04095 6.21687 3.19818 6.60257 3.36494 6.99998 3.53675 6.99998 4Z",telephone:"M4.51,8.88a0.51,0.51,0,0,0,0,.72l0.72,0.72L3.07,12.5,2.7,12.13A2.24,2.24,0,0,1,2,10.69V9.24a2.24,2.24,0,0,1,.7-1.45L7.77,2.72A2.24,2.24,0,0,1,9.22,2h1.45a2.24,2.24,0,0,1,1.45.72l0.36,0.36L10.31,5.26,9.58,4.53a0.51,0.51,0,0,0-.72,0ZM4.13,13.6a1,1,0,0,0,1.4137.0363Q5.5623,13.6186,5.58,13.6l0.72-.72a1,1,0,0,0,.0363-1.4137Q6.3186,11.4477,6.3,11.43Zm7.25-7.28a1,1,0,0,0,1.4137.0363C12.8061,6.3445,13.55,5.6,13.55,5.6a1,1,0,0,0,.0363-1.4137Q13.5686,4.1677,13.55,4.15Z",tennis:"M13.1284,1.87c-1.5418-1.5406-4.5535-.7759-6.28,1.05a6.8282,6.8282,0,0,0-1.88,4.4,5.7275,5.7275,0,0,1-.57,2.72.6814.6814,0,0,0-.67.17l-2.49,2.5a.6941.6941,0,0,0,0,.98l.07.07a.7051.7051,0,0,0,.98,0l2.5-2.49a.683.683,0,0,0,.18-.66,8.5694,8.5694,0,0,1,3.12-.58,6.5487,6.5487,0,0,0,3.99-1.87C14.1084,6.13,14.579,3.3194,13.1284,1.87Zm-2.2-.04a2.3071,2.3071,0,0,1,1.64.61,2.548,2.548,0,0,1,.5,2.44l-2.95-2.96A3.8648,3.8648,0,0,1,10.9284,1.83Zm-4.57,6.81a2.6485,2.6485,0,0,1-.48-2.55l3.04,3.04A2.8522,2.8522,0,0,1,6.3584,8.64Zm2.88.39-3.26-3.27a5.1623,5.1623,0,0,1,.49-1.08l3.85,3.85A5.5093,5.5093,0,0,1,9.2384,9.03Zm1.34-.66-3.94-3.95a5.2032,5.2032,0,0,1,.74-.9l4.1,4.1A5.6869,5.6869,0,0,1,10.5784,8.37Zm1.11-.96-4.1-4.1a5.5714,5.5714,0,0,1,.84-.65l3.92,3.92A5.7187,5.7187,0,0,1,11.6884,7.41Zm.82-1.09L8.6984,2.5a4.1707,4.1707,0,0,1,1.09-.48l3.2,3.2A5.5656,5.5656,0,0,1,12.5084,6.32Z",theatre:"M2,1c0,0-1,0-1,1v5.1582C1,8.8885,1.354,11,4.5,11H5V8L2.5,9c0,0,0-2.5,2.5-2.5V5 c0-0.7078,0.0868-1.3209,0.5-1.7754C5.8815,2.805,6.5046,1.9674,8.1562,2.7539L9,3.3027V2c0,0,0-1-1-1C7.2922,1,6.0224,2,5,2 S2.7865,1,2,1z M3,3c0.5523,0,1,0.4477,1,1S3.5523,5,3,5S2,4.5523,2,4S2.4477,3,3,3z M7,4c0,0-1,0-1,1v5c0,2,1,4,4,4s4-2,4-4V5 c0-1-1-1-1-1c-0.7078,0-1.9776,1-3,1S7.7865,4,7,4z M8,6c0.5523,0,1,0.4477,1,1S8.5523,8,8,8S7,7.5523,7,7S7.4477,6,8,6z M12,6 c0.5523,0,1,0.4477,1,1s-0.4477,1-1,1s-1-0.4477-1-1S11.4477,6,12,6z M7.5,10H10h2.5c0,0,0,2.5-2.5,2.5S7.5,10,7.5,10z",toilet:"M3 1.5a1.5 1.5 0 1 0 3 0 1.5 1.5 0 0 0-3 0ZM11.5 0a1.5 1.5 0 1 1 0 3 1.5 1.5 0 0 1 0-3ZM3.29 4a1 1 0 0 0-.868.504L.566 7.752a.5.5 0 1 0 .868.496l1.412-2.472A345.048 345.048 0 0 0 1 11h2v2.5a.5.5 0 0 0 1 0V11h1v2.5a.5.5 0 0 0 1 0V11h2L6.103 5.687l1.463 2.561a.5.5 0 1 0 .868-.496L6.578 4.504A1 1 0 0 0 5.71 4H3.29ZM9 4.5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 .5.5v5a.5.5 0 0 1-1 0v4a.5.5 0 0 1-1 0v-4h-1v4a.5.5 0 0 1-1 0v-4a.5.5 0 0 1-1 0v-5Z",toll:"M2.5 1C2.22386 1 2 1.22386 2 1.5V2V13H1.5C1.22386 13 1 13.2239 1 13.5C1 13.7761 1.22386 14 1.5 14H8.5C8.77614 14 9 13.7761 9 13.5C9 13.2239 8.77614 13 8.5 13H7V10.0987L13.7761 5.54576C14.0053 5.39175 14.0663 5.08109 13.9123 4.85189L13.6334 4.43687C13.4794 4.20766 13.1688 4.1467 12.9396 4.3007L7 8.29152V2H7.5C7.77614 2 8 1.77614 8 1.5C8 1.22386 7.77614 1 7.5 1H2.5ZM3 3.5C3 3.22386 3.22386 3 3.5 3H5.5C5.77614 3 6 3.22386 6 3.5V7.5C6 7.77614 5.77614 8 5.5 8H3.5C3.22386 8 3 7.77614 3 7.5V3.5Z",town:"m10.651 6.121c-.0445-.0357-.0999-.05516-.157-.05516s-.1125.01946-.157.05516l-2.245 1.808c-.02881.02323-.05204.05263-.06796.08603-.01593.03341-.02414.06997-.02404.10697v4.625c0 .0671.02666.1315.0741.1789.04745.0474.1118.0741.1789.0741h1.494c.0671 0 .13145-.0267.1789-.0741s.0741-.1118.0741-.1789v-1.747h1v1.747c0 .0671.0267.1315.0741.1789.0475.0474.1118.0741.1789.0741h1.494c.0671 0 .1315-.0267.1789-.0741s.0741-.1118.0741-.1789v-4.627c.0007-.03831-.0074-.07627-.0237-.11095s-.0404-.06514-.0703-.08905zm-.651 3.879h-1v-1h1zm2 0h-1v-1h1zm-6.29-9.184997c-.02299-.034654-.05419-.063081-.09083-.082746s-.07758-.029956-.11917-.029956c-.04158 0-.08252.010291-.11916.029956-.03665.019665-.06785.048092-.09084.082746l-3.248 4.120997c-.02752.0415-.04214.09021-.042.14v7.671c-.00013.0331.00626.0659.0188.0965s.031.0585.0543.082c.02331.0235.05102.0422.08154.0549.03053.0128.06327.0195.09636.0196h2.5c.06632-.0008.12964-.0277.17626-.0749.04661-.0471.07275-.1108.07274-.1771v-1.748h1v1.748c0 .0668.02655.1309.07381.1782s.11136.0738.17819.0738h.748v-6c-.00004-.07511.01684-.14926.04938-.21695.03255-.06769.07993-.12718.13862-.17405l1.812-1.609c0-.05-3.29-4.184997-3.29-4.184997zm-1.71 8.184997h-1v-1h1zm0-3h-1v-1h1zm2 3h-1v-1h1zm0-3h-1v-1h1z","town-hall":"M13,4H9l0-3L7.5,0L6,1v3H2L1,5v1h13V5L13,4z M7.5,1.5c0.4,0,0.7,0.3,0.7,0.8S7.9,3,7.5,3S6.7,2.7,6.7,2.2 C6.7,1.8,7.1,1.5,7.5,1.5z M13,7H2v4l-1,1.5V14h13v-1.5L13,11V7z M5,12.5H4V8h1V12.5z M8,12.5H7V8h1V12.5z M11,12.5h-1V8h1V12.5z",triangle:"m7.5385 1c-.2948 0-.4883.1772-.6154.3846l-5.8462 9.5385c-.0769.0769-.0769.2307-.0769.3846 0 .5385.3846.6923.6923.6923h11.6154c.3846 0 .6923-.1538.6923-.6923 0-.1538 0-.2308-.0769-.3846l-5.7693-9.5385c-.1258-.2081-.3656-.3846-.6153-.3846z","triangle-stroked":"m7.52427.500405c-.2814-.0091-.5456.1419-.6907.3948l-5.5 9.869195c-.3118.5434.0614 1.2355.6664 1.2356h11.00003c.605-.0001.9782-.6922.6664-1.2355l-5.50003-9.869195c-.1362-.2374-.378-.3861-.6421-.3949zm-.0243 2.398895 4.12673 7.4704h-8.25343z",tunnel:"M4 2C2.34315 2 1 3.32706 1 4.96406V12.012C1 12.5576 1.44772 13 2 13H3V8.55391C3 6.09839 5.01472 4.10781 7.5 4.10781C9.98528 4.10781 12 6.09842 12 8.55393V13H13C13.5523 13 14 12.5576 14 12.012V4.96406C14 3.32706 12.6569 2 11 2H4ZM11 10V9.04794C11 6.86526 9.43299 5.09583 7.5 5.09583C5.56701 5.09583 4.00001 6.86526 4 9.04794V13L11 10Z",veterinary:"M7.5,6c-2.5,0-3,2.28-3,3.47h0a6.149,6.149,0,0,0-1.7.89,2,2,0,0,0-.4,2.78,2.06,2.06,0,0,0,2.8.4,4,4,0,0,1,2.3-.69,4,4,0,0,1,2.3.69,2,2,0,0,0,2.8-.3,1.929,1.929,0,0,0-.226-2.72c-.024-.021-.049-.041-.074-.06l-.1-.1a8.992,8.992,0,0,0-1.7-.89h0C10.5,8.29,10,6,7.5,6ZM2.08,4.3a1.58,1.58,0,0,0-.76,2A1.52,1.52,0,0,0,2.93,7.7a1.58,1.58,0,0,0,.76-2A1.52,1.52,0,0,0,2.08,4.3Zm10.85,0a1.58,1.58,0,0,1,.76,2,1.52,1.52,0,0,1-1.61,1.4,1.58,1.58,0,0,1-.76-2A1.52,1.52,0,0,1,12.93,4.3Zm-7.85-3c-.68.09-1,.94-.76,1.87A1.77,1.77,0,0,0,5.93,4.7c.68-.09,1-.94.76-1.87A1.77,1.77,0,0,0,5.08,1.3Zm4.85,0c.68.09,1,.94.76,1.87A1.77,1.77,0,0,1,9.07,4.7c-.68-.08-1-.94-.76-1.87A1.769,1.769,0,0,1,9.93,1.3Z",viewpoint:"M6.02,8.425a2.3859,2.3859,0,0,0-.46.44l-4.55-3.5a7.9976,7.9976,0,0,1,1.51-1.51Zm6.46-4.56-3.5,4.55a2.3971,2.3971,0,0,1,.45.45l4.56-3.5A7.945,7.945,0,0,0,12.48,3.865ZM7.3042,10.0129a1.5,1.5,0,1,0,1.6829,1.2914h0A1.5,1.5,0,0,0,7.3042,10.0129ZM6.43,2.235a7.9329,7.9329,0,0,0-2.06.55l2.2,5.32a2.0438,2.0438,0,0,1,.61-.17Zm2.14.01-.75,5.69a2.49,2.49,0,0,1,.61.16l2.2-5.3A7.2129,7.2129,0,0,0,8.57,2.245Z",village:"M6.176 1.176a.249.249 0 0 0-.352 0l-4.4 4.4A.25.25 0 0 0 1.6 6H3v6.751a.25.25 0 0 0 .249.249h3.5A.248.248 0 0 0 7 12.753v-7.43c0-.066.026-.13.073-.176L8.5 3.5 6.176 1.176ZM6 11H5v-1h1v1Zm0-2H5V8h1v1Zm0-3v1H5V6h1Z M12.75 3h-.5a.25.25 0 0 0-.25.25V5l-1.324-1.824a.249.249 0 0 0-.352 0L8.056 5.932A.246.246 0 0 0 8 6.088v6.66a.249.249 0 0 0 .246.252h1.5a.253.253 0 0 0 .254-.252V11h1v1.747a.253.253 0 0 0 .253.253h1.5a.25.25 0 0 0 .247-.249V3.25a.25.25 0 0 0-.25-.25ZM10 8H9V7h1v1Zm2 0h-1V7h1v1Zm-2 2H9V9h1v1Zm2 0h-1V9h1v1Z",volcano:"M8.4844,1.0002 c-0.1464,0.005-0.2835,0.0731-0.375,0.1875L6.4492,3.2619L4.8438,1.7385C4.4079,1.3374,3.7599,1.893,4.0899,2.385l1.666,2.4004 C5.9472,5.061,6.3503,5.0737,6.5586,4.8108C6.7249,4.6009,7,4.133,7.5,4.133s0.7929,0.4907,0.9414,0.6777 c0.175,0.2204,0.4973,0.2531,0.7129,0.0723l1.668-1.4004c0.4408-0.3741,0.0006-1.0735-0.5273-0.8379L9,3.2268V1.5002 C9.0002,1.2179,8.7666,0.9915,8.4844,1.0002L8.4844,1.0002z M5,6.0002L2.0762,11.924C1.9993,12.0009,2,12.155,2,12.3088 c0,0.5385,0.3837,0.6914,0.6914,0.6914h9.6172c0.3846,0,0.6914-0.153,0.6914-0.6914c0-0.1538,0.0008-0.2309-0.0762-0.3848L10,6.0002 c-0.5,0-1,0.5-1,1v0.5c0,0.277-0.223,0.5-0.5,0.5S8,7.7772,8,7.5002v-0.5c0-0.2761-0.2238-0.5-0.5-0.5S7,6.7241,7,7.0002v2 c0,0.277-0.223,0.5-0.5,0.5S6,9.2772,6,9.0002v-2C6,6.5002,5.5,6.0002,5,6.0002z",volleyball:"M13.91,7.94a5.9086,5.9086,0,0,1-.13.94,8.8218,8.8218,0,0,0-2.17-1.49,8.89,8.89,0,0,0-1.4-.56,8.6142,8.6142,0,0,0-1.82-.35.221.221,0,0,0-.08-.01A7.32,7.32,0,0,1,7.5,4.59c-.01-.01-.01-.01,0-.02a7.7573,7.7573,0,0,1,1.52.15,7.0987,7.0987,0,0,1,1.56.5,6.8585,6.8585,0,0,1,1.4.78A7.4165,7.4165,0,0,1,13.91,7.94Zm-1.87-5a6.2232,6.2232,0,0,0-1.85-1.27,4.2725,4.2725,0,0,0-.98-.36,5.6412,5.6412,0,0,0-1.55-.23,1.2882,1.2882,0,0,0-.32,0A7.4263,7.4263,0,0,0,7.21,2.5c0,.2.01.39.02.58a2.28,2.28,0,0,1,.26-.01,2.6438,2.6438,0,0,1,.28.01,8.2865,8.2865,0,0,1,1.49.16,8.9879,8.9879,0,0,1,1.35.37,8.7922,8.7922,0,0,1,1.53.7,10.18,10.18,0,0,1,1.39.97A6.4588,6.4588,0,0,0,12.04,2.94ZM4.01,8.76a9.4084,9.4084,0,0,1-.62-1.37,9.1038,9.1038,0,0,1-.37-1.41,9.1748,9.1748,0,0,1-.16-1.67V4.28a8.455,8.455,0,0,1,.1-1.34A6.28,6.28,0,0,0,1.47,5.3a6.2222,6.2222,0,0,0-.4,2.2c0,.15.01.3.02.44a5.9086,5.9086,0,0,0,.13.94,5.7343,5.7343,0,0,0,.41,1.23c.22-.05.44-.11.65-.17a8.0188,8.0188,0,0,0,1.9-.88C4.12,8.96,4.06,8.86,4.01,8.76Zm2.6-2.28a9,9,0,0,1-.63-1.76,9.135,9.135,0,0,1-.24-1.48c-.02-.25-.03-.49-.03-.74a9.3777,9.3777,0,0,1,.08-1.19,4.2725,4.2725,0,0,0-.98.36,7.7038,7.7038,0,0,0-.42,1.94c-.02.22-.03.44-.03.67a7.2659,7.2659,0,0,0,.06.93,7.4258,7.4258,0,0,0,.37,1.63,6.4705,6.4705,0,0,0,.59,1.28A8.0174,8.0174,0,0,0,6.65,6.55.2522.2522,0,0,1,6.61,6.48ZM12.7,9.93s0-.01-.01,0a7.0128,7.0128,0,0,0-1.7-1.16c-.06.1-.11.19-.17.29a8.783,8.783,0,0,1-.88,1.22,8.9125,8.9125,0,0,1-1.06,1.07,10.4181,10.4181,0,0,1-1.38.98,8.9933,8.9933,0,0,1-2.64,1.02,6.2985,6.2985,0,0,0,5.28,0,5.9674,5.9674,0,0,0,2.42-1.89,4.8258,4.8258,0,0,0,.65-1.03A6.0315,6.0315,0,0,0,12.7,9.93Zm-5.17-2c-.01.01-.02.03-.03.04a9.26,9.26,0,0,1-1.25,1.4,9.5925,9.5925,0,0,1-1.19.91,9.2683,9.2683,0,0,1-2.62,1.18,6.0989,6.0989,0,0,0,.53.61,7.7353,7.7353,0,0,0,3.15-.72,7.3839,7.3839,0,0,0,1.38-.82A7.6429,7.6429,0,0,0,8.75,9.37a7.7441,7.7441,0,0,0,.82-1.15A7.3414,7.3414,0,0,0,7.53,7.93Z",warehouse:"M13.5,5c-0.0762,0.0003-0.1514-0.0168-0.22-0.05L7.5,2L1.72,4.93C1.4632,5.0515,1.1565,4.9418,1.035,4.685 S1.0232,4.1215,1.28,4L7.5,0.92L13.72,4c0.2761,0.0608,0.4508,0.3339,0.39,0.61C14.0492,4.8861,13.7761,5.0608,13.5,5z M5,10H2v3h3 V10z M9,10H6v3h3V10z M13,10h-3v3h3V10z M11,6H8v3h3V6z M7,6H4v3h3V6z","waste-basket":"M12.41,5.58l-1.34,8c-0.0433,0.2368-0.2493,0.4091-0.49,0.41H4.42c-0.2407-0.0009-0.4467-0.1732-0.49-0.41l-1.34-8 C2.5458,5.3074,2.731,5.0506,3.0035,5.0064C3.0288,5.0023,3.0544,5.0002,3.08,5h8.83c0.2761-0.0036,0.5028,0.2174,0.5064,0.4935 C12.4168,5.5225,12.4146,5.5514,12.41,5.58z M13,3.5C13,3.7761,12.7761,4,12.5,4h-10C2.2239,4,2,3.7761,2,3.5S2.2239,3,2.5,3H5V1.5 C5,1.2239,5.2239,1,5.5,1h4C9.7761,1,10,1.2239,10,1.5V3h2.5C12.7761,3,13,3.2239,13,3.5z M9,3V2H6v1H9z",watch:"M12.5,7H12a.426.426,0,0,0-.049.01A4.484,4.484,0,0,0,10,3.76V1.5A.5.5,0,0,0,9.5,1h-4a.5.5,0,0,0-.5.5V3.76a4.5,4.5,0,0,0,0,7.48V13.5a.5.5,0,0,0,.5.5h4a.5.5,0,0,0,.5-.5V11.24a4.486,4.486,0,0,0,1.951-3.25A.426.426,0,0,0,12,8h.5a.5.5,0,0,0,0-1Zm-5,4A3.5,3.5,0,1,1,11,7.5,3.5,3.5,0,0,1,7.5,11ZM9,7H8V5.5a.5.5,0,0,0-1,0v2a.5.5,0,0,0,.5.5H9A.5.5,0,0,0,9,7Z",water:"M7.5 14C9.57688 14 12 12.7117 12 9.43241C12 7.20724 8.53844 2.2883 7.5 1C6.57691 2.2883 3 7.09007 3 9.43241C3 12.7117 5.42312 14 7.5 14Z",waterfall:"M14 1H5C3.34315 1 2 2.34314 2 4V8.87918C1.39704 9.28261 1 9.96937 1 10.75C1 11.9927 2.00736 13 3.25 13C3.7127 13 4.14279 12.8599 4.5 12.6209C4.85721 12.8599 5.2873 13 5.75 13C6.28601 13 6.77826 12.812 7.16413 12.5H7.51743C8.01909 12.8165 8.61403 13 9.25 13C11.0449 13 12.5 11.5449 12.5 9.75002C12.5 8.39777 11.6747 7.23919 10.5 6.74934V5C10.5 3.89543 11.3954 3 12.5 3H14V1ZM11.5 9.75C11.5 10.9926 10.4926 12 9.25 12C8.71418 12 8.2221 11.8127 7.83567 11.5H6.75009C6.52204 11.8036 6.15895 12 5.75 12C5.34105 12 4.97796 11.8036 4.74991 11.5H4.25009C4.02204 11.8036 3.65895 12 3.25 12C2.55964 12 2 11.4404 2 10.75C2 10.1453 2.42944 9.64082 3 9.525V5.75C3 5.33579 3.33579 5 3.75 5C4.16421 5 4.5 5.33579 4.5 5.75V9C4.5 9.27614 4.72386 9.5 5 9.5C5.27614 9.5 5.5 9.27614 5.5 9V6.75C5.5 6.33579 5.83579 6 6.25 6C6.66421 6 7 6.33579 7 6.75V9C7 9.27614 7.22386 9.5 7.5 9.5C7.77614 9.5 8 9.27614 8 9V5.75C8 5.33579 8.33579 5 8.75 5C9.16421 5 9.5 5.33579 9.5 5.75V7.51373C10.625 7.63809 11.5 8.59186 11.5 9.75Z",watermill:"M2,10.2L4,9l2.5,1.5l1.4659-0.8788C7.6592,9.4698,7.3716,9.285,7.1231,9.0536l1.4131-1.4131 C8.7672,7.836,9.0557,7.9606,9.375,7.9874V9.224l0.25,0.1501V7.9874c0.3193-0.0268,0.6078-0.1514,0.8388-0.3469l1.4131,1.4131 c-0.4059,0.3781-0.9044,0.6492-1.4528,0.8003L11.5,10.5l0.6984-0.4191C13.2863,9.2595,14,7.9682,14,6.5C14,4.0147,11.9853,2,9.5,2 C8.1917,2,7.0241,2.5674,6.2018,3.4587L4.5,2L1,5h1V10.2z M12.0536,8.8769l-1.4131-1.4131c0.1954-0.231,0.3201-0.5196,0.3469-0.8388 h1.9999C12.956,7.4946,12.6089,8.2806,12.0536,8.8769z M12.9874,6.375h-1.9999c-0.0268-0.3193-0.1514-0.6078-0.3469-0.8388 l1.4131-1.4131C12.6089,4.7193,12.956,5.5054,12.9874,6.375z M9.625,3.0126c0.8696,0.0314,1.6557,0.3784,2.2519,0.9337 l-1.4131,1.4131c-0.231-0.1954-0.5196-0.32-0.8388-0.3468C9.625,5.0126,9.625,3.0126,9.625,3.0126z M9.375,3.0126v1.9999 C9.0558,5.0394,8.7672,5.164,8.5362,5.3594L7.1231,3.9463C7.7193,3.3911,8.5054,3.044,9.375,3.0126z M6.9464,4.1231l1.4131,1.4131 C8.164,5.7672,8.0394,6.0557,8.0126,6.375h-2C6.044,5.5054,6.3911,4.7193,6.9464,4.1231z M8.0126,6.625 c0.0268,0.3192,0.1515,0.6078,0.3469,0.8388L6.9464,8.8769C6.3911,8.2807,6.044,7.4946,6.0126,6.625H8.0126z M9.002,10L6.5,11.5 L4,10l-2.5,1.5V13L4,11.5L6.5,13l2.502-1.5L11.5,13l2.5-1.5V10l-2.5,1.5L9.002,10z",wetland:"M1.48,4.5C1.905,4.1467,2.4483,3.968,3,4c1.2273-0.0869,2.3154,0.7836,2.5,2l0.78,4.68c-0.6394-0.2893-1.3759-0.2709-2,0.05 L3.48,6C3.1874,5.1347,2.3926,4.5387,1.48,4.5z M7.48,11.24c0.3816-0.3076,0.825-0.5293,1.3-0.65L10,3 c0.2926-0.8653,1.0874-1.4613,2-1.5c-0.4198-0.3485-0.955-0.5269-1.5-0.5C9.2727,0.9131,8.1846,1.7836,8,3l-1.3,7.79 C6.9786,10.9052,7.2408,11.0565,7.48,11.24z M11.8,10.74L11.8,10.74c0.1565-0.1277,0.3238-0.2414,0.5-0.34L13,6 c0.2926-0.8653,1.0874-1.4613,2-1.5c-0.4198-0.3485-0.955-0.5269-1.5-0.5c-1.2273-0.0869-2.3154,0.7836-2.5,2l-0.67,4 C10.8731,10.123,11.3778,10.377,11.8,10.74z M14,12L14,12c-0.4346-0.01-0.8579,0.1394-1.19,0.42l-0.47,0.41 c-0.2847,0.2546-0.7153,0.2546-1,0c-0.15-0.12-0.29-0.26-0.44-0.39c-0.7076-0.5968-1.7424-0.5968-2.45,0 c-0.16,0.13-0.31,0.28-0.47,0.41c-0.2847,0.2546-0.7153,0.2546-1,0c-0.16-0.13-0.31-0.28-0.47-0.41 c-0.7059-0.5912-1.7341-0.5912-2.44,0c-0.15,0.13-0.29,0.27-0.44,0.39c-0.0892,0.0715-0.1909,0.1258-0.3,0.16 c-0.2922,0.0652-0.5969-0.0301-0.8-0.25c-0.2475-0.214-0.5117-0.4079-0.79-0.58C1.5336,12.0421,1.2974,11.9865,1.06,12H1 c-0.2761,0-0.5,0.2239-0.5,0.5S0.7239,13,1,13l0,0c0.246,0.0145,0.4762,0.126,0.64,0.31L2,13.57 c0.6717,0.55,1.6308,0.5747,2.33,0.06c0.19-0.14,0.36-0.32,0.55-0.47c0.2847-0.2546,0.7153-0.2546,1,0l0.39,0.35 c0.6937,0.6189,1.7322,0.6484,2.46,0.07c0.15-0.11,0.27-0.25,0.42-0.37c0.2976-0.3038,0.7851-0.3087,1.0889-0.0111 c0.0037,0.0037,0.0074,0.0074,0.0111,0.0111l0.39,0.35c0.4866,0.4124,1.1485,0.5516,1.76,0.37c0.3825-0.1036,0.7286-0.3113,1-0.6 c0.1549-0.1772,0.3674-0.294,0.6-0.33l0,0c0.2761,0,0.5-0.2239,0.5-0.5S14.2761,12,14,12z",wheelchair:"M12,1.5C12,2.3284,11.3284,3,10.5,3S9,2.3284,9,1.5S9.6716,0,10.5,0S12,0.6716,12,1.5z M2.82,4.87l1.74-1.71l1.85,1.29 L5.67,5.7c1.0747,0.3341,2.0207,0.9904,2.71,1.88l0.88-1.5c0.2295-0.4158,0.0785-0.939-0.3373-1.1685 C8.9218,4.911,8.9209,4.9105,8.92,4.91L8.3,4.54L4.79,2.1C4.5927,1.9594,4.3231,1.9805,4.15,2.15l-2,2 C1.9852,4.3716,2.0312,4.6848,2.2528,4.8496C2.4193,4.9735,2.645,4.9816,2.82,4.87z M8.13,10.94 c-0.0143,1.2308-0.5794,2.3904-1.54,3.16c-0.7118,0.5804-1.6016,0.8982-2.52,0.9C1.8261,15,0.0055,13.1839,0,10.94 c0.0023-0.9231,0.3238-1.8169,0.91-2.53c0.1868-0.232,0.398-0.4432,0.63-0.63c0.7131-0.5862,1.6069-0.9077,2.53-0.91 C6.3139,6.8755,8.13,8.6961,8.13,10.94z M6,12.21C6.7679,11.2051,6.5758,9.7679,5.5709,9C4.7501,8.3727,3.6109,8.3727,2.79,9 C2.5283,9.151,2.311,9.3683,2.16,9.63c-0.6923,1.0584-0.3956,2.4777,0.6628,3.17c0.7615,0.4981,1.7457,0.4981,2.5072,0 C5.5805,12.6365,5.8061,12.4378,6,12.21z M14.2,13.21l-2.49-5C11.5906,7.9251,11.3088,7.7425,11,7.75H8.51 c0.3293,0.4578,0.5856,0.9638,0.76,1.5h1.26l2.29,4.58c0.185,0.3728,0.6372,0.525,1.01,0.34c0.3728-0.185,0.525-0.6372,0.34-1.01 L14.2,13.21z",windmill:"M6,5L3.5,7.5l1,1L7,6V5.5L7.5,5L8,5.5V6l2.5,2.5l1-1L9,5H8.5L8,4.5L8.5,4H9l2.5-2.5l-1-1L8,3v0.5L7.5,4L7,3.5V3L4.5,0.5 l-1,1L6,4h0.5L7,4.5L6.5,5H6z M11.5,13h-1l-1-4l-2-2l-2,2l-1,4h-1C3.2239,13,3,13.2238,3,13.5C3,13.7761,3.2239,14,3.5,14h8 c0.2761,0,0.5-0.2239,0.5-0.5C12,13.2238,11.7761,13,11.5,13z M8,13H7v-1.5024C7,11.2228,7.2228,11,7.4976,11 C7.7751,11,8,11.2249,8,11.5024V13z",zoo:"M8.3879,3.8928C8.3879,3.8928,7.6818,5,7,5H4.5C3.8182,5,3.2016,5.4086,2.7273,5.8636L0.5,8C0.231,8.258,0.0072,8.7681,0,9 c-0.0156,0.5,0,1,0,1s1,0,1-1V8.5l1-1h0.5l0.158,0.2892c0,0-0.9535,1.8244-0.9535,3.5289C1.7046,12,2.3864,12,2.3864,12h0.6818 c0,0,0.3409,0,0-0.3409l-0.3409-0.3409C2.7273,10.6364,3.5002,9.6667,4,9c0,0,0.0168,1.1579,0,2c-0.008,0.4096,0.2721,1,0.6818,1 h0.6818c0,0,0.3409,0,0-0.3409l-0.3409-0.3409C4.7105,10.7495,5.5,8.5,5.5,8.5C6.7716,8.5,7,9,8.5,9l0.3636,2.3182 C8.975,12.0282,9.5,12,9.5,12H11c0.3409,0,0.9611-0.3115,0.3409-0.7736L11,11V9c1.2142-0.1722,2-1,2-2h1c0.3214,0,1,0,1-0.5v-1 l-1.7045-1.6818C12.5444,3.0772,12,2.5,11,2.5C9.5469,2.5,8.8636,3.0688,8.3879,3.8928z"},r0=Object.keys(WA);function mt(I,A){const g=WA[I];g||console.warn(`[MakiIcon] Unknown icon: "${I}", falling back to "marker"`);const e=g??WA.marker??"",t=(A==null?void 0:A.size)??32,i=(A==null?void 0:A.fill)??"#333",r=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 15 15" width="${t}" height="${t}"><path fill="${i}" d="${e}"/></svg>`;return`data:image/svg+xml,${encodeURIComponent(r)}`}function s0(I,A){const g={};for(const e of I)g[e]=mt(e,A);return g}const Q0="M16 0C7.16344 0 0 7.16344 0 16C0 24.8366 16 40 16 40C16 40 32 24.8366 32 16C32 7.16344 24.8366 0 16 0Z";function Rt(I,A){const g=WA[I];g||console.warn(`[MakiIcon] Unknown icon: "${I}", falling back to "marker"`);const e=g??WA.marker??"",t=(A==null?void 0:A.size)??40,i=(A==null?void 0:A.fill)??"#2563eb",r=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 40" width="${t}" height="${Math.round(t*1.25)}"><path d="${Q0}" fill="${i}" stroke="white" stroke-width="1.5"/>`+(e?`<svg x="8" y="8" viewBox="0 0 15 15" width="16" height="16"><path fill="white" d="${e}"/></svg>`:"")+"</svg>";return`data:image/svg+xml,${encodeURIComponent(r)}`}function E0(I,A){const g={};for(const e of I)g[e]=Rt(e,A);return g}const Wg={primary:{fill:"#2563eb",bg:"rgba(37, 99, 235, 0.2)",ring:"rgba(37, 99, 235, 0.2)"},success:{fill:"#00854d",bg:"rgba(0, 133, 77, 0.2)",ring:"rgba(0, 133, 77, 0.2)"},warning:{fill:"#943700",bg:"rgba(148, 55, 0, 0.2)",ring:"rgba(148, 55, 0, 0.2)"},error:{fill:"#ba1a1a",bg:"rgba(186, 26, 26, 0.2)",ring:"rgba(186, 26, 26, 0.2)"}};function a0(I){return typeof I=="string"&&/<[a-zA-Z][^>]*>/.test(I)}function Ut({color:I="primary"}){const{fill:A}=Wg[I];return u.jsxs("svg",{viewBox:"0 0 32 40",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:"aimapui-marker-pin",style:{width:32,height:40,display:"block",filter:"drop-shadow(0 4px 3px rgba(0,0,0,0.07)) drop-shadow(0 2px 2px rgba(0,0,0,0.06))"},children:[u.jsx("path",{d:"M16 0C7.16344 0 0 7.16344 0 16C0 24.8366 16 40 16 40C16 40 32 24.8366 32 16C32 7.16344 24.8366 0 16 0Z",fill:A,stroke:"white",strokeWidth:1.5}),u.jsx("circle",{cx:"16",cy:"16",r:"4",fill:"white"})]})}function n0({icon:I,color:A="primary"}){const{fill:g}=Wg[A],e=WA[I]??WA.marker??"";return u.jsxs("div",{className:"aimapui-marker-pin aimapui-marker-pin--icon",style:{position:"relative",display:"inline-flex",alignItems:"flex-start",justifyContent:"center",width:32,height:40,filter:"drop-shadow(0 4px 3px rgba(0,0,0,0.07)) drop-shadow(0 2px 2px rgba(0,0,0,0.06))"},children:[u.jsx("svg",{viewBox:"0 0 32 40",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{position:"absolute",inset:0,width:"100%",height:"100%"},children:u.jsx("path",{d:"M16 0C7.16344 0 0 7.16344 0 16C0 24.8366 16 40 16 40C16 40 32 24.8366 32 16C32 7.16344 24.8366 0 16 0Z",fill:g,stroke:"white",strokeWidth:1.5})}),e&&u.jsx("svg",{viewBox:"0 0 15 15",xmlns:"http://www.w3.org/2000/svg",style:{position:"relative",zIndex:1,width:16,height:16,marginTop:8,fill:"white"},children:u.jsx("path",{d:e,style:{fill:"white"}})})]})}function c0({color:I="primary"}){const{fill:A,bg:g}=Wg[I];return u.jsx("div",{className:"aimapui-marker-circle",style:{position:"relative",width:24,height:24,borderRadius:"50%",border:"1.5px solid white",boxShadow:"0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.1)",display:"flex",alignItems:"center",justifyContent:"center",background:g,borderColor:A},children:u.jsx("div",{className:"aimapui-marker-circle__inner",style:{width:6,height:6,borderRadius:"50%",background:A}})})}function l0({color:I="primary"}){const{fill:A}=Wg[I];return u.jsx("div",{className:"aimapui-marker-dot",style:{width:8,height:8,borderRadius:"50%",border:"1.5px solid white",boxShadow:"0 1px 3px rgba(0,0,0,0.3)",background:A}})}function h0({text:I}){return u.jsx("div",{className:"aimapui-marker-label",style:{position:"absolute",top:"calc(100% + 4px)",left:"50%",transform:"translateX(-50%)",fontFamily:"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace",fontSize:12,lineHeight:"16px",fontWeight:450,color:"#1d1d1f",whiteSpace:"nowrap",pointerEvents:"none",textShadow:"-1px -1px 0 #fff, 1px -1px 0 #fff, -1px 1px 0 #fff, 1px 1px 0 #fff, 0 0 2px #fff, 0 0 4px rgba(255,255,255,0.5)"},children:I})}const Mt={center:"translate(-50%, -50%)",top:"translate(-50%, 0)",bottom:"translate(-50%, -100%)",left:"translate(0, -50%)",right:"translate(-100%, -50%)","top-left":"translate(0, 0)","top-right":"translate(-100%, 0)","bottom-left":"translate(0, -100%)","bottom-right":"translate(-100%, -100%)"},f0=[0,0];function d0(I,A,g,e){let t;switch(I){case"pin":t=u.jsx(Ut,{color:A});break;case"circle":t=u.jsx(c0,{color:A});break;case"icon":t=u.jsx(n0,{icon:g||"marker",color:A});break;case"dot":t=u.jsx(l0,{color:A});break;default:t=u.jsx(Ut,{color:A})}return e?u.jsxs("div",{style:{position:"relative",display:"inline-flex",flexDirection:"column",alignItems:"center"},children:[t,u.jsx(h0,{text:e})]}):t}function Eg({longitude:I,latitude:A,variant:g="pin",color:e="primary",icon:t,label:i,content:r,children:o,draggable:E=!1,className:B,overlayContainer:C,onClick:s,onMouseEnter:a,onMouseLeave:Q,onDoubleClick:n,onDragEnd:f,onDragging:c,onDragStart:h,selected:w=!1,inactive:D=!1,anchor:d="bottom",offsets:y=f0,overflowHide:S=!0}){const l=uA(),G=p.useRef(null),F=p.useRef(null),k=p.useRef({lng:I,lat:A}),m=p.useRef({width:0,height:0}),M=y[0]??0,N=y[1]??0,b=p.useRef(null),U=p.useRef(s);U.current=s;const R=p.useRef(a);R.current=a;const H=p.useRef(Q);H.current=Q;const T=p.useRef(n);T.current=n;const V=p.useRef(h);V.current=h;const P=p.useRef(c);P.current=c;const q=p.useRef(f);q.current=f;const v=p.useMemo(()=>{const O=["aimapui-marker"];return w&&O.push("aimapui-marker--selected"),D&&O.push("aimapui-marker--inactive"),O.push(`aimapui-marker--${e}`),B&&O.push(B),O.join(" ")},[w,D,e,B]),Z=p.useMemo(()=>r||o||d0(g,e,t,i),[r,o,g,e,t,i]),K=O=>{const x=G.current;if(!x||!O)return;const{lng:W,lat:_}=k.current;if(isNaN(W)||isNaN(_))return;let gA;try{gA=O.lngLatToContainer([W,_])}catch{return}if(!gA||isNaN(gA.x)||isNaN(gA.y))return;const iA=gA.x+M,AA=gA.y-N,z=Mt[d]||Mt.bottom,eA=Math.round(iA),BA=Math.round(AA);if(x.style.left="0",x.style.top="0",x.style.transform=`translate3d(${eA}px, ${BA}px, 0) ${z}`,S){const{width:IA,height:rA}=m.current;x.style.visibility=iA<0||iA>IA||AA<0||AA>rA?"hidden":"visible"}};return p.useEffect(()=>{if(!l)return;let O=!1;const x=l.mapService;if(!x){console.error("[Marker] mapService not available");return}const W=()=>{var eA;const z=(eA=x.getContainer)==null?void 0:eA.call(x);z&&(m.current={width:z.scrollWidth||z.clientWidth||0,height:z.scrollHeight||z.clientHeight||0})},_=()=>{G.current&&K(x)},gA=(z,eA,BA)=>{var IA;try{(IA=z==null?void 0:z.on)==null||IA.call(z,eA,BA)}catch{}},iA=(z,eA,BA)=>{var IA;try{(IA=z==null?void 0:z.off)==null||IA.call(z,eA,BA)}catch{}};return W(),gA(x,"camerachange",_),gA(x,"viewchange",_),gA(l,"resize",W),(async()=>{var QA;if(l.loaded||await new Promise(oA=>{l.once("loaded",()=>oA())}),O)return;const z=document.createElement("div");z.className=v,z.style.position="absolute",z.style.left="0",z.style.top="0",z.style.whiteSpace="nowrap",z.style.pointerEvents="auto",G.current=z;const eA=C??((QA=x.getMarkerContainer)==null?void 0:QA.call(x));if(eA)eA.appendChild(z);else{console.error("[Marker] getMarkerContainer not available");return}K(x);let BA=!1,IA={lng:0,lat:0};const rA=oA=>{var PA;if(!E)return;BA=!0,x.setMapStatus({dragEnable:!1,zoomEnable:!1});const X=x.getContainer(),hA=(PA=X==null?void 0:X.getClientRects())==null?void 0:PA[0];if(hA){const zA=hA.left,gg=hA.top,Ig=oA.x||oA.clientX,LI=oA.y||oA.clientY;IA=x.containerToLngLat([Ig-zA,LI-gg])}x.on("mousemove",mA),document.addEventListener("mouseup",CA),V.current&&V.current(k.current.lng,k.current.lat)},mA=oA=>{if(!BA)return;const X=oA.lngLat||oA.lnglat,{lng:hA,lat:PA}=IA,{lng:zA,lat:gg}=X,Ig={lng:k.current.lng+zA-hA,lat:k.current.lat+gg-PA};k.current=Ig,IA=X,K(x),P.current&&P.current(Ig.lng,Ig.lat)},CA=()=>{BA&&(BA=!1,x.setMapStatus({dragEnable:!0,zoomEnable:!0}),x.off("mousemove",mA),document.removeEventListener("mouseup",CA),q.current&&q.current(k.current.lng,k.current.lat))};z.addEventListener("click",(oA=>{var X;return(X=U.current)==null?void 0:X.call(U,oA)})),z.addEventListener("mouseenter",(oA=>{var X;return(X=R.current)==null?void 0:X.call(R,oA)})),z.addEventListener("mouseleave",(oA=>{var X;return(X=H.current)==null?void 0:X.call(H,oA)})),z.addEventListener("dblclick",(oA=>{var X;return(X=T.current)==null?void 0:X.call(T,oA)})),E&&z.addEventListener("mousedown",rA),b.current={updatePosition:_,handleDragStart:rA,handleDragMove:mA,handleDragEnd:CA}})(),()=>{if(O=!0,iA(x,"camerachange",_),iA(x,"viewchange",_),iA(l,"resize",W),b.current&&E&&x.setMapStatus({dragEnable:!0,zoomEnable:!0}),G.current){const eA=F.current,BA=G.current;F.current=null,G.current=null,queueMicrotask(()=>{eA&&eA.unmount(),BA.parentNode&&BA.parentNode.removeChild(BA)})}b.current=null}},[l,d,M,N,S,E,C]),p.useEffect(()=>{if(!G.current)return;const O=G.current;a0(Z)?O.innerHTML=Z:(F.current||(F.current=o0.createRoot(O)),F.current.render(u.jsx(u.Fragment,{children:Z})))},[Z]),p.useEffect(()=>{G.current&&(G.current.className=v)},[v]),p.useEffect(()=>{if(k.current={lng:I,lat:A},l&&G.current){const O=l.mapService;O&&K(O)}},[I,A,l]),null}function Yt({interactions:I}){const A=uA(),[g,e]=p.useState(null);p.useEffect(()=>{if(!A)return;const r=()=>{try{const E=A.mapService;if(E&&typeof E.getMarkerContainer=="function"){const B=E.getMarkerContainer();if(B){e(B);return}}}catch{}const o=setTimeout(()=>{try{const E=A.mapService;if(E&&typeof E.getMarkerContainer=="function"){const B=E.getMarkerContainer();B&&e(B)}}catch{}},100);return()=>clearTimeout(o)};return A.loaded?r():(A.on("loaded",r),()=>{A.off("loaded",r)})},[A]);const t=I.filter(r=>r.type==="marker"),i=I.filter(r=>r.type==="popup");return u.jsxs(u.Fragment,{children:[g&&t.map((r,o)=>u.jsx(Eg,{...r,overlayContainer:g},`marker-${o}`)),g&&i.map((r,o)=>u.jsx(YI,{...r,overlayContainer:g},`popup-${o}`))]})}function PI({title:I,labels:A,colors:g,swatchShape:e="square",grid:t=!1,className:i,interaction:r}){const[o,E]=p.useState(-1),[B,C]=p.useState(new Set),s=n=>{var f;E(n),(f=r==null?void 0:r.onHover)==null||f.call(r,n)},a=()=>{var n;E(-1),(n=r==null?void 0:r.onHover)==null||n.call(r,-1)},Q=n=>{var f;C(c=>{const h=new Set(c);return h.has(n)?h.delete(n):h.add(n),h}),(f=r==null?void 0:r.onToggle)==null||f.call(r,n)};return u.jsxs("div",{className:aA(i),children:[I&&u.jsx("div",{className:"mb-2 text-xs font-semibold uppercase tracking-wide text-on-surface-variant",children:I}),u.jsx("div",{className:aA("flex flex-col gap-1",t&&"grid grid-cols-2 gap-x-3 gap-y-1"),children:A.map((n,f)=>{const c=o>=0?o!==f:B.has(f);return u.jsxs("div",{className:aA("flex items-center gap-2 rounded px-1 py-0.5 cursor-pointer select-none transition-[background,opacity] duration-150 hover:bg-primary/[0.06]",c&&"opacity-35"),onMouseEnter:()=>s(f),onMouseLeave:a,onClick:()=>Q(f),children:[u.jsx("span",{className:aA("size-3 shrink-0 rounded-sm shadow-[inset_0_0_0_1px_rgba(0,0,0,0.08)] transition-opacity duration-150",e==="circle"&&"rounded-full"),style:{backgroundColor:g[f]??"#ccc"}}),u.jsx("span",{className:"text-xs leading-4 text-on-surface truncate",children:n})]},f)})})]})}function zI({title:I,labels:A,colors:g,isContinuous:e=!1,showTicks:t=!1,brushable:i=!1,className:r,interaction:o}){const[E,B]=p.useState([0,100]),C=p.useRef(null),s=g.join(", "),a=p.useCallback(Q=>n=>{n.stopPropagation(),n.preventDefault();const f=C.current;if(!f)return;const c=f.getBoundingClientRect().width,h=D=>{const d=f.getBoundingClientRect(),y=D.clientX-d.left,S=Math.max(0,Math.min(100,y/c*100));B(l=>{var F;let G;return Q==="left"?G=[Math.min(S,l[1]-5),l[1]]:G=[l[0],Math.max(S,l[0]+5)],(F=o==null?void 0:o.onBrush)==null||F.call(o,G),G})},w=()=>{document.removeEventListener("mousemove",h),document.removeEventListener("mouseup",w)};document.addEventListener("mousemove",h),document.addEventListener("mouseup",w)},[o,C]);return u.jsxs("div",{className:aA(r),children:[I&&u.jsx("div",{className:"mb-2 text-xs font-semibold uppercase tracking-wide text-on-surface-variant",children:I}),u.jsxs("div",{className:"flex flex-col gap-1",ref:C,children:[u.jsx("div",{className:aA("flex h-3 rounded overflow-hidden shadow-[inset_0_0_0_1px_rgba(0,0,0,0.06)]",e&&"bg-[length:100%_100%]"),style:e?{background:`linear-gradient(to right, ${s})`}:void 0,children:!e&&g.map((Q,n)=>u.jsx("div",{className:"flex-1 relative",style:{backgroundColor:Q}},n))}),t&&u.jsx("div",{className:"flex justify-between h-1.5 mt-0.5",children:g.map((Q,n)=>n===0?null:u.jsx("div",{className:"w-px h-full bg-outline-variant",style:{position:"absolute",left:`${n/(g.length-1)*100}%`}},n))}),u.jsxs("div",{className:"flex justify-between font-mono text-[11px] leading-3.5 font-[450] text-on-surface-variant",children:[u.jsx("span",{children:A[0]}),A.length>2&&u.jsx("span",{children:A[Math.floor(A.length/2)]}),u.jsx("span",{children:A[A.length-1]})]}),i&&u.jsxs("div",{className:"relative h-3 mt-1 cursor-ew-resize",children:[u.jsx("div",{className:"absolute top-0 h-full border-2 border-primary rounded-sm bg-primary/10 pointer-events-none",style:{left:`${E[0]}%`,width:`${E[1]-E[0]}%`}}),u.jsx("div",{className:"absolute top-1/2 w-2 h-4 bg-primary rounded-sm -translate-x-1/2 -translate-y-1/2 cursor-ew-resize shadow-sm hover:shadow-md hover:shadow-primary/30 transition-shadow duration-150",style:{left:`${E[0]}%`},onMouseDown:a("left")}),u.jsx("div",{className:"absolute top-1/2 w-2 h-4 bg-primary rounded-sm -translate-x-1/2 -translate-y-1/2 cursor-ew-resize shadow-sm hover:shadow-md hover:shadow-primary/30 transition-shadow duration-150",style:{left:`${E[1]}%`},onMouseDown:a("right")})]})]})]})}function WI({title:I,colors:A,labels:g,middleLabel:e,className:t}){const i=A.join(", ");return u.jsxs("div",{className:aA(t),children:[I&&u.jsx("div",{className:"mb-2 text-xs font-semibold uppercase tracking-wide text-on-surface-variant",children:I}),u.jsxs("div",{className:"flex flex-col gap-1",children:[u.jsxs("div",{style:{position:"relative"},children:[u.jsx("div",{className:"flex h-3 rounded overflow-hidden shadow-[inset_0_0_0_1px_rgba(0,0,0,0.06)]",style:{background:`linear-gradient(to right, ${i})`}}),u.jsx("div",{style:{position:"absolute",top:-4,left:"50%",transform:"translateX(-50%)",width:1,height:20,background:"var(--color-outline-variant, #c3c6d7)"}}),e&&u.jsx("div",{className:"absolute left-1/2 -translate-x-1/2 -bottom-[18px] font-mono text-[11px] text-on-surface-variant whitespace-nowrap",children:e})]}),u.jsxs("div",{className:"flex justify-between font-mono text-[11px] leading-3.5 font-[450] text-on-surface-variant",style:e?{marginBottom:12}:void 0,children:[u.jsx("span",{children:g[0]}),u.jsx("span",{children:g[1]})]})]})]})}function XI({title:I,ranges:A,colors:g,className:e,interaction:t}){const[i,r]=p.useState(-1),[o,E]=p.useState(new Set),B=a=>{var Q;r(a),(Q=t==null?void 0:t.onHover)==null||Q.call(t,a)},C=()=>{var a;r(-1),(a=t==null?void 0:t.onHover)==null||a.call(t,-1)},s=a=>{var Q;E(n=>{const f=new Set(n);return f.has(a)?f.delete(a):f.add(a),f}),(Q=t==null?void 0:t.onToggle)==null||Q.call(t,a)};return u.jsxs("div",{className:aA(e),children:[I&&u.jsx("div",{className:"mb-2 text-xs font-semibold uppercase tracking-wide text-on-surface-variant",children:I}),u.jsx("div",{className:"flex flex-col gap-1.5",children:A.map(([a,Q],n)=>{const f=i>=0?i!==n:o.has(n);return u.jsxs("div",{className:aA("flex items-center gap-2 cursor-pointer select-none transition-opacity duration-150 hover:opacity-80",f&&"opacity-35"),onMouseEnter:()=>B(n),onMouseLeave:C,onClick:()=>s(n),children:[u.jsx("span",{className:"w-6 h-3 shrink-0 rounded-sm shadow-[inset_0_0_0_1px_rgba(0,0,0,0.06)]",style:{backgroundColor:g[n]??"#ccc"}}),u.jsxs("span",{className:"font-mono text-[11px] leading-3.5 text-on-surface-variant",children:["[",a,", ",Q,")"]})]},n)})})]})}function $I({title:I,fillColor:A="#4A90D9",items:g,className:e}){const t=Math.max(...g.map(i=>i.size),1);return u.jsxs("div",{className:aA(e),children:[I&&u.jsx("div",{className:"mb-2 text-xs font-semibold uppercase tracking-wide text-on-surface-variant",children:I}),u.jsxs("div",{className:"flex flex-col gap-2",children:[u.jsx("div",{className:"flex items-end gap-2 px-1",children:g.map((i,r)=>u.jsx("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"flex-end",height:t},children:u.jsx("div",{className:"rounded-full shrink-0 shadow-[inset_0_0_0_1px_rgba(0,0,0,0.06)]",style:{width:i.size,height:i.size,backgroundColor:A,opacity:.85}})},r))}),u.jsx("div",{className:"flex items-end gap-2 mt-1",children:g.map((i,r)=>u.jsx("span",{className:"font-mono text-[11px] leading-3.5 text-on-surface-variant whitespace-nowrap",children:i.label},r))})]})]})}function Ae({title:I,color:A="#4A90D9",items:g,className:e,interaction:t}){const[i,r]=p.useState(-1),[o,E]=p.useState(new Set),B=a=>{var Q;r(a),(Q=t==null?void 0:t.onHover)==null||Q.call(t,a)},C=()=>{var a;r(-1),(a=t==null?void 0:t.onHover)==null||a.call(t,-1)},s=a=>{var Q;E(n=>{const f=new Set(n);return f.has(a)?f.delete(a):f.add(a),f}),(Q=t==null?void 0:t.onToggle)==null||Q.call(t,a)};return u.jsxs("div",{className:aA(e),children:[I&&u.jsx("div",{className:"mb-2 text-xs font-semibold uppercase tracking-wide text-on-surface-variant",children:I}),u.jsx("div",{className:"flex flex-col gap-1.5",children:g.map((a,Q)=>{const n=i>=0?i!==Q:o.has(Q);return u.jsxs("div",{className:aA("flex items-center gap-2.5 py-0.5 cursor-pointer select-none transition-opacity duration-150 hover:opacity-80",n&&"opacity-35"),onMouseEnter:()=>B(Q),onMouseLeave:C,onClick:()=>s(Q),children:[u.jsx("div",{className:"w-7 shrink-0 rounded-full shadow-[0_0_0_1px_rgba(0,0,0,0.06)]",style:{height:a.width,backgroundColor:A,opacity:.85}}),u.jsx("span",{className:"text-xs leading-4 text-on-surface whitespace-nowrap",children:a.label})]},Q)})})]})}function ge({title:I,labels:A,fillColor:g="#4A90D9",className:e}){return u.jsxs("div",{className:aA(e),children:[I&&u.jsx("div",{className:"mb-2 text-xs font-semibold uppercase tracking-wide text-on-surface-variant",children:I}),u.jsxs("div",{className:"flex flex-col gap-2",children:[u.jsx("div",{className:"flex items-end gap-2 px-1",children:A.map(([r,o],E)=>{const C=6+E/Math.max(A.length-1,1)*18;return u.jsx("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"flex-end",height:24},children:u.jsx("div",{className:"rounded-full shrink-0 shadow-[inset_0_0_0_1px_rgba(0,0,0,0.06)]",style:{width:C,height:C,backgroundColor:g,opacity:.85}})},E)})}),u.jsx("div",{className:"flex items-end gap-2 mt-1",children:A.map(([r,o],E)=>u.jsxs("span",{className:"font-mono text-[11px] leading-3.5 text-on-surface-variant whitespace-nowrap",children:[r,"–",o]},E))})]})]})}function bt(I){return/^(https?:|\/\/|data:)/i.test(I)}function Ie({title:I,items:A,className:g,interaction:e}){const[t,i]=p.useState(-1),[r,o]=p.useState(new Set),E=s=>{var a;i(s),(a=e==null?void 0:e.onHover)==null||a.call(e,s)},B=()=>{var s;i(-1),(s=e==null?void 0:e.onHover)==null||s.call(e,-1)},C=s=>{var a;o(Q=>{const n=new Set(Q);return n.has(s)?n.delete(s):n.add(s),n}),(a=e==null?void 0:e.onToggle)==null||a.call(e,s)};return u.jsxs("div",{className:aA(g),children:[I&&u.jsx("div",{className:"mb-2 text-xs font-semibold uppercase tracking-wide text-on-surface-variant",children:I}),u.jsx("div",{className:"flex flex-col gap-1",children:A.map((s,a)=>{const Q=t>=0?t!==a:r.has(a);return u.jsxs("div",{className:aA("flex items-center gap-2 px-1 py-0.5 rounded cursor-pointer select-none transition-[background,opacity] duration-150 hover:bg-primary/[0.06]",Q&&"opacity-35"),onMouseEnter:()=>E(a),onMouseLeave:B,onClick:()=>C(a),children:[bt(s.icon)?u.jsx("img",{src:s.icon,alt:s.label,className:"size-5 object-contain shrink-0",onError:n=>{const f=n.target;f.style.display="none";const c=f.nextElementSibling;c&&(c.style.display="flex")}}):u.jsx("span",{className:"size-5 flex items-center justify-center shrink-0 text-base leading-none",children:s.icon}),bt(s.icon)&&u.jsx("span",{className:"size-5 hidden items-center justify-center shrink-0 text-base leading-none text-on-surface-variant",children:"□"}),u.jsx("span",{className:"text-xs leading-4 text-on-surface",children:s.label})]},a)})})]})}function Ht({legends:I,className:A,style:g,interaction:e}){return I.length?u.jsx("div",{className:aA("absolute z-20 bottom-6 left-6 max-h-[40%] overflow-y-auto rounded-xl border border-outline-variant/30 bg-surface/80 backdrop-blur-md p-3 px-3.5 text-on-surface shadow-lg scrollbar-thin scrollbar-track-transparent scrollbar-thumb-outline-variant",A),style:g,children:u.jsx("div",{className:"flex flex-col gap-4 [&>*+*]:border-t [&>*+*]:border-outline-variant/20 [&>*+*]:pt-4",children:I.map((t,i)=>u.jsx(u0,{legend:t,interaction:e},`legend-${i}`))})}):null}function u0({legend:I,interaction:A}){switch(I.type){case"categories":return u.jsx(PI,{...I,interaction:A});case"ramp":return u.jsx(zI,{...I,interaction:A});case"diverging":return u.jsx(WI,{...I,interaction:A});case"threshold":return u.jsx(XI,{...I,interaction:A});case"size":return u.jsx($I,{...I,interaction:A});case"lineWidth":return u.jsx(Ae,{...I,interaction:A});case"proportion":return u.jsx(ge,{...I,interaction:A});case"icon":return u.jsx(Ie,{...I,interaction:A});default:return null}}const Kt=p.createContext({isMobile:!1,breakpoint:768,width:typeof window<"u"?window.innerWidth:1024,schema:void 0});function D0({responsive:I,children:A}){const[g,e]=p.useState(typeof window<"u"?window.innerWidth:1024);p.useEffect(()=>{const o=()=>e(window.innerWidth);return window.addEventListener("resize",o),()=>window.removeEventListener("resize",o)},[]);const t=(I==null?void 0:I.breakpoint)??768,i=g<t,r=p.useMemo(()=>({isMobile:i,breakpoint:t,width:g,schema:I}),[i,t,g,I]);return u.jsx(Kt.Provider,{value:r,children:A})}function xt(){return p.useContext(Kt)}function vt({config:I,className:A}){const g=uA(),{items:e,position:t="bottom"}=I,i=B=>{switch(B){case"zoomIn":g==null||g.zoomIn();break;case"zoomOut":g==null||g.zoomOut();break;case"locate":navigator.geolocation&&navigator.geolocation.getCurrentPosition(C=>{g==null||g.setCenter([C.coords.longitude,C.coords.latitude]),g==null||g.setZoom(14)});break;case"reset":g==null||g.setCenter([105,35]),g==null||g.setZoom(4);break}},r={zoomIn:u.jsx("svg",{viewBox:"0 0 24 24",className:"w-6 h-6",fill:"none",stroke:"currentColor",strokeWidth:2,children:u.jsx("path",{d:"M12 5v14m-7-7h14"})}),zoomOut:u.jsx("svg",{viewBox:"0 0 24 24",className:"w-6 h-6",fill:"none",stroke:"currentColor",strokeWidth:2,children:u.jsx("path",{d:"M5 12h14"})}),locate:u.jsxs("svg",{viewBox:"0 0 24 24",className:"w-6 h-6",fill:"none",stroke:"currentColor",strokeWidth:2,children:[u.jsx("circle",{cx:"12",cy:"12",r:"3"}),u.jsx("path",{d:"M12 2v4m0 12v4m10-10h-4M6 12H2"})]}),reset:u.jsxs("svg",{viewBox:"0 0 24 24",className:"w-6 h-6",fill:"none",stroke:"currentColor",strokeWidth:2,children:[u.jsx("path",{d:"M3 12a9 9 0 1 1 3.3 6.9"}),u.jsx("path",{d:"M3 22v-7h7"})]}),layers:u.jsx("svg",{viewBox:"0 0 24 24",className:"w-6 h-6",fill:"none",stroke:"currentColor",strokeWidth:2,children:u.jsx("path",{d:"M12 2L2 7l10 5 10-5-10-5zM2 17l10 5 10-5M2 12l10 5 10-5"})})},o={zoomIn:"放大",zoomOut:"缩小",locate:"定位",reset:"复位",layers:"图层"},E=t==="bottom"?"bottom-0 left-0 right-0 flex justify-center pb-[calc(env(safe-area-inset-bottom,0px)+12px)] pt-2":"top-0 left-0 right-0 flex justify-center pt-[calc(env(safe-area-inset-top,0px)+12px)] pb-2";return u.jsx("div",{className:aA("absolute z-[1000] px-3 pointer-events-none",E),children:u.jsx("div",{className:"pointer-events-auto flex items-center gap-1 rounded-[20px] border border-outline-variant/40 bg-surface/85 px-1.5 py-1.5 shadow-[0_8px_32px_rgba(0,0,0,0.16)] backdrop-blur-xl",children:e.map((B,C)=>u.jsxs("button",{onClick:()=>i(B),className:"group flex flex-col items-center gap-1 rounded-2xl px-2.5 py-1.5 text-on-surface-variant transition-colors hover:bg-primary/10 hover:text-primary active:bg-primary/15",style:{background:"none",border:"none",cursor:"pointer"},"aria-label":o[B]??B,title:o[B]??B,children:[u.jsx("span",{className:"flex h-6 w-6 shrink-0 items-center justify-center",children:r[B]}),u.jsx("span",{className:"text-[11px] font-medium leading-none whitespace-nowrap",children:o[B]??B})]},`${B}-${C}`))})})}function Jt({legends:I,className:A,interaction:g}){const[e,t]=p.useState(!1);return I.length?u.jsx("div",{className:aA("absolute bottom-3 left-3 right-3 z-[1000]",A),children:u.jsxs("div",{className:"flex flex-col rounded-xl border border-outline-variant/30 bg-surface/80 backdrop-blur-md px-3.5 text-on-surface shadow-lg",children:[u.jsxs("button",{onClick:()=>t(!e),className:"w-full flex items-center justify-between py-3 text-label-caps font-label-caps uppercase",style:{background:"none",border:"none",cursor:"pointer",color:"var(--color-primary, #004ac6)"},children:[u.jsx("span",{children:"图例"}),u.jsx("svg",{viewBox:"0 0 24 24",className:aA("w-5 h-5 transition-transform",e?"rotate-180":""),fill:"none",stroke:"currentColor",strokeWidth:2,children:u.jsx("path",{d:"M6 9l6 6 6-6"})})]}),u.jsx("div",{className:aA("flex flex-col gap-4 [&>*+*]:border-t [&>*+*]:border-outline-variant/20 [&>*+*]:pt-4 custom-scrollbar transition-all duration-300 overflow-y-auto",e?"max-h-[60vh] pb-3":"max-h-0"),children:I.map((i,r)=>u.jsx(w0,{legend:i,interaction:g},`mobile-legend-${r}`))})]})}):null}function w0({legend:I,interaction:A}){switch(I.type){case"categories":return u.jsx(PI,{...I,interaction:A});case"ramp":return u.jsx(zI,{...I,interaction:A});case"diverging":return u.jsx(WI,{...I,interaction:A});case"threshold":return u.jsx(XI,{...I,interaction:A});case"size":return u.jsx($I,{...I,interaction:A});case"lineWidth":return u.jsx(Ae,{...I,interaction:A});case"proportion":return u.jsx(ge,{...I,interaction:A});case"icon":return u.jsx(Ie,{...I,interaction:A});default:return null}}function y0({map:I,schema:A,theme:g="light",onSceneReady:e,onLayerClick:t,onLayerMouseMove:i,onLayerMouseEnter:r,onLayerMouseLeave:o,onMapMove:E,onMapZoom:B,autoFit:C,events:s,children:a,className:Q,style:n}){const f=p.useRef(null),c=p.useMemo(()=>A?kI(gt(A)):{map:p0(I??{basemap:"gaode"}),layers:[],controls:[],interactions:[],legends:[]},[A,I]),h=!A&&!!I,w=p.useMemo(()=>({onClick:t,onMouseMove:i,onMouseEnter:r,onMouseLeave:o}),[t,i,r,o]),D=p.useMemo(()=>({onMove:E,onZoom:B}),[E,B]),d=p.useCallback(y=>{e==null||e(y),C&&S0(y)},[e,C]);return u.jsx(rt,{defaultTheme:g,target:"container",children:u.jsx(et,{schema:c,children:u.jsx(Bt,{events:s,children:u.jsx(dB,{responsive:c.responsive,children:u.jsx(G0,{schema:c,isComposableMode:h,onSceneReady:d,layerEventHandlers:w,mapEventHandlers:D,containerRef:f,className:Q,style:n,children:a})})})})})}function S0(I){let A=!1,g=0;const e=30,t=()=>{var i;if(!A){g+=1;try{const r=((i=I.getLayers)==null?void 0:i.call(I))??[];if(r.length===0){g<e&&window.setTimeout(t,100);return}let o=1/0,E=1/0,B=-1/0,C=-1/0,s=!1;for(const a of r){const Q=a.getBounds;if(typeof Q=="function")try{const n=Q.call(a);if(!n||!Array.isArray(n)||n.length!==2)continue;const[f,c]=n;if(!f||!c||!isFinite(f[0])||!isFinite(f[1])||!isFinite(c[0])||!isFinite(c[1]))continue;o=Math.min(o,f[0]),E=Math.min(E,f[1]),B=Math.max(B,c[0]),C=Math.max(C,c[1]),s=!0}catch{}}if(!s){g<e&&window.setTimeout(t,100);return}I.fitBounds([[o,E],[B,C]]),A=!0}catch{g<e&&window.setTimeout(t,100)}}};window.setTimeout(t,200)}function p0(I){return{basemap:I.basemap??"gaode",token:I.token,style:I.style,center:I.center??[105,35],zoom:I.zoom??4,pitch:I.pitch??0,rotation:I.rotation??0,minZoom:I.minZoom,maxZoom:I.maxZoom,bounds:I.bounds,gestureConfig:I.gestureConfig}}function G0({schema:I,isComposableMode:A,onSceneReady:g,layerEventHandlers:e,mapEventHandlers:t,containerRef:i,className:r,style:o,children:E}){var f,c;const{isMobile:B}=xt(),[C,s]=p.useState(I.layers??[]),a=p.useMemo(()=>{var w,D;if(A||!B||!((D=(w=I.responsive)==null?void 0:w.mobile)!=null&&D.layers))return I.layers;const h=I.responsive.mobile.layers;if("*"in h){const d=h["*"];return I.layers.map(y=>({...y,...d,id:y.id}))}return I.layers.map(d=>d.id&&h[d.id]?{...d,...h[d.id],id:d.id}:d)},[I.layers,I.responsive,B,A]),Q=p.useMemo(()=>{var D,d;const h=I.controls??[];if(!B||!((d=(D=I.responsive)==null?void 0:D.mobile)!=null&&d.controls))return h;const w=I.responsive.mobile.controls;return w.hide?h.filter(y=>!w.hide.includes(y.type)):h},[I.controls,I.responsive,B]),n=p.useCallback((h,w)=>{s(D=>D.map(d=>d.id===h?{...d,visible:w}:d))},[]);return u.jsx("div",{ref:i,className:r??"aimapui-container",style:o??{width:"100%",height:"100%"},children:u.jsxs(nt,{mapSchema:I.map,onSceneReady:g,mapEventHandlers:t,events:I.events,style:{width:"100%",height:"100%"},children:[!A&&a.length>0&&u.jsx(Lt,{layers:a,eventHandlers:e}),!A&&u.jsx(kt,{controls:Q,layers:a,onLayerToggle:n,containerRef:i}),!A&&I.interactions&&I.interactions.length>0&&u.jsx(Yt,{interactions:I.interactions}),!A&&(B?I.legends&&I.legends.length>0&&u.jsx(Jt,{legends:I.legends}):u.jsx(Ht,{legends:I.legends??[]})),!A&&B&&((c=(f=I.responsive)==null?void 0:f.mobile)==null?void 0:c.toolbar)&&u.jsx(vt,{config:I.responsive.mobile.toolbar}),A?u.jsx(L0,{children:E}):null]})})}function L0({children:I}){const{controls:A,others:g}=p.useMemo(()=>{const e=[],t=[];return p.Children.forEach(I,(i,r)=>{p.isValidElement(i)&&YA.check(i)?e.push(i):t.push(i)}),{controls:e,others:t}},[I]);return u.jsxs(u.Fragment,{children:[A.length>0&&u.jsx(KI,{children:A}),g]})}function mg(I,A){if(I===A)return!1;if(I==null||A==null||typeof I!=typeof A||typeof I!="object")return!0;try{return JSON.stringify(I)!==JSON.stringify(A)}catch{return!0}}function N0(I,A){const g=mg(I.map,A.map),e=new Map;(I.layers??[]).forEach(c=>{c.id&&e.set(c.id,c)});const t=new Map;(A.layers??[]).forEach(c=>{c.id&&t.set(c.id,c)});const i=[],r=[],o=[];(A.layers??[]).forEach((c,h)=>{const w=c.id??`__index_${h}`;if(!e.has(w))i.push(c);else{const D=e.get(w);mg(D,c)&&o.push({id:w,prev:D,next:c})}}),(I.layers??[]).forEach((c,h)=>{const w=c.id??`__index_${h}`;t.has(w)||r.push(w)});const E=I.controls??[],B=A.controls??[],C=[],s=[],a=[],Q=Math.max(E.length,B.length);for(let c=0;c<Q;c++)c>=E.length?C.push(B[c]):c>=B.length?s.push(E[c]):mg(E[c],B[c])&&a.push({index:c,prev:E[c],next:B[c]});const n=mg(I.interactions,A.interactions),f=mg(I.legends,A.legends);return{mapChanged:g,layersAdded:i,layersRemoved:r,layersUpdated:o,controlsAdded:C,controlsRemoved:s,controlsUpdated:a,interactionsChanged:n,legendsChanged:f}}function k0(I){const A=[];return I.map?A.push(...F0(I.map)):A.push({path:"map",message:"map is required",severity:"error"}),!I.layers||!Array.isArray(I.layers)?A.push({path:"layers",message:"layers must be an array",severity:"error"}):I.layers.forEach((g,e)=>{A.push(...m0(g,e))}),I.controls&&(Array.isArray(I.controls)?I.controls.forEach((g,e)=>{g.type||A.push({path:`controls[${e}].type`,message:"control type is required",severity:"error"})}):A.push({path:"controls",message:"controls must be an array",severity:"error"})),I.interactions&&(Array.isArray(I.interactions)?I.interactions.forEach((g,e)=>{(g.type==="marker"||g.type==="popup")&&(typeof g.longitude!="number"||typeof g.latitude!="number")&&A.push({path:`interactions[${e}]`,message:"marker/popup requires longitude and latitude as numbers",severity:"error"})}):A.push({path:"interactions",message:"interactions must be an array",severity:"error"})),I.legends&&(Array.isArray(I.legends)?I.legends.forEach((g,e)=>{g.type||A.push({path:`legends[${e}].type`,message:"legend type is required",severity:"error"})}):A.push({path:"legends",message:"legends must be an array",severity:"error"})),A}function F0(I){const A=[],g=["gaode","mapbox","maplibre","tianditu","tencent","baidu","google","map"];if(g.includes(I.basemap)||A.push({path:"map.basemap",message:`Invalid basemap "${I.basemap}". Valid values: ${g.join(", ")}`,severity:"error"}),I.center){const[e,t]=I.center;(e<-180||e>180)&&A.push({path:"map.center[0]",message:"Longitude must be between -180 and 180",severity:"error"}),(t<-90||t>90)&&A.push({path:"map.center[1]",message:"Latitude must be between -90 and 90",severity:"error"})}return I.zoom!==void 0&&(I.zoom<0||I.zoom>22)&&A.push({path:"map.zoom",message:"Zoom must be between 0 and 22",severity:"warning"}),["gaode","mapbox","tianditu","tencent","baidu","google"].includes(I.basemap)&&!I.token&&A.push({path:"map.token",message:`basemap "${I.basemap}" requires a token`,severity:"warning"}),A}function m0(I,A){const g=[],e=`layers[${A}]`,t=["point","line","polygon","heatmap","raster","image"];return I.type?t.includes(I.type)||g.push({path:`${e}.type`,message:`Invalid layer type "${I.type}". Valid values: ${t.join(", ")}`,severity:"error"}):g.push({path:`${e}.type`,message:"layer type is required",severity:"error"}),I.source===void 0&&I.source,I.colorField&&!I.colorValues&&!I.color&&g.push({path:`${e}.colorValues`,message:"colorField is set but colorValues is not. L7 will use default scale.",severity:"warning"}),I.sizeField&&!I.sizeValues&&I.size===void 0&&g.push({path:`${e}.sizeValues`,message:"sizeField is set but sizeValues is not. L7 will use default scale.",severity:"warning"}),g}const R0={$schema:"http://json-schema.org/draft-07/schema#",title:"AiMapSchema",description:"Schema-driven React map visualization component configuration",type:"object",required:["map","layers"],properties:{map:{type:"object",required:["basemap"],properties:{basemap:{type:"string",enum:["gaode","mapbox","maplibre","tianditu","tencent","baidu","google","map"],description:"Map base tile provider"},token:{type:"string",description:"API token for the map service"},style:{type:"string",description:"Map style preset (light/dark/normal/darkblue/satellite) or custom URL"},center:{type:"array",items:{type:"number"},minItems:2,maxItems:2,description:"Map center [longitude, latitude], default [105, 35]"},zoom:{type:"number",description:"Map zoom level, default 4"},pitch:{type:"number",description:"Map pitch in degrees, default 0"},rotation:{type:"number",description:"Map rotation in degrees, default 0"},minZoom:{type:"number",description:"Minimum zoom level"},maxZoom:{type:"number",description:"Maximum zoom level"},bounds:{type:"array",items:{type:"array",items:{type:"number"},minItems:2,maxItems:2},minItems:2,maxItems:2,description:"Initial bounds [[swLng, swLat], [neLng, neLat]]"},gestureConfig:{type:"object",properties:{dragPan:{type:"boolean"},pinchZoom:{type:"boolean"},dragRotate:{type:"boolean"}}}}},layers:{type:"array",description:"Array of map layers",items:{type:"object",required:["type","source"],properties:{id:{type:"string",description:"Unique layer ID (auto-generated if omitted)"},type:{type:"string",enum:["point","line","polygon","heatmap","raster","image"],description:"Layer visualization type"},name:{type:"string",description:"Human-readable layer name"},visible:{type:"boolean",default:!0},zIndex:{type:"number",default:0},minZoom:{type:"number"},maxZoom:{type:"number"},autoFit:{type:"boolean",default:!1},source:{description:"GeoJSON, JSON array, or URL string"},sourceType:{type:"string",enum:["geojson","json","csv"]},sourceConfig:{type:"object",properties:{x:{type:"string",description:"Longitude field name"},y:{type:"string",description:"Latitude field name"},x1:{type:"string",description:"End longitude field (for arc lines)"},y1:{type:"string",description:"End latitude field (for arc lines)"},coordinates:{type:"string",description:"Coordinates field"}}},color:{type:"string",description:"Fixed color"},colorField:{type:"string",description:"Field to map color to"},colorValues:{oneOf:[{type:"string",description:"Color palette name"},{type:"array",items:{type:"string"},description:"Array of color values"}]},size:{type:"number",description:"Fixed size"},sizeField:{type:"string",description:"Field to map size to"},sizeValues:{type:"array",items:{type:"number"},description:"Size range [min, max]"},shape:{type:"string",description:"Fixed shape"},shapeField:{type:"string",description:"Field to map shape to"},shapeValues:{type:"array",items:{type:"string"}},style:{type:"object",description:"Additional style properties"},filterField:{type:"string"},filterValues:{type:"array"},animate:{type:"object",properties:{enable:{type:"boolean"},speed:{type:"number"},duration:{type:"number"},trailLength:{type:"number"},repeat:{type:"number"}}},active:{oneOf:[{type:"boolean"},{type:"object",properties:{color:{type:"string"}}}]},select:{oneOf:[{type:"boolean"},{type:"object",properties:{color:{type:"string"}}}]},events:{type:"object",description:"Layer event configuration",properties:{click:{type:"string",description:"Event identifier emitted on click (via EventBus)"},mousemove:{type:"string",description:"Event identifier emitted on mousemove"},mouseenter:{type:"string",description:"Event identifier emitted on mouseenter"},mouseleave:{type:"string",description:"Event identifier emitted on mouseleave"},enablePopup:{type:"boolean",description:"Auto-show popup on click"},popupFields:{type:"array",items:{type:"string"},description:"Fields to show in popup"},popupTemplate:{type:"string",description:"HTML template with {{field}} interpolation"}}}}}},controls:{type:"array",description:"Map control widgets",items:{type:"object",required:["type"],properties:{type:{type:"string",enum:["zoom","scale","fullscreen","geoLocate","mapTheme","mouseLocation","exportImage","layerSwitch"]},position:{type:"string",enum:["topleft","topright","bottomleft","bottomright","topcenter","bottomcenter"]},options:{type:"object"}}}},interactions:{type:"array",description:"Interactive elements (markers, popups, tooltips)",items:{oneOf:[{type:"object",required:["type","longitude","latitude"],properties:{type:{type:"string",const:"marker"},longitude:{type:"number"},latitude:{type:"number"},content:{type:"string"},draggable:{type:"boolean"}}},{type:"object",required:["type","longitude","latitude","content"],properties:{type:{type:"string",const:"popup"},longitude:{type:"number"},latitude:{type:"number"},content:{type:"string"},closeButton:{type:"boolean"}}},{type:"object",required:["type","content"],properties:{type:{type:"string",const:"tooltip"},content:{type:"string"},trigger:{type:"string",enum:["hover","click"]}}}]}},legends:{type:"array",description:"Legend configurations",items:{oneOf:[{type:"object",required:["type","labels","colors"],properties:{type:{type:"string",const:"categories"},title:{type:"string"},labels:{type:"array",items:{type:"string"}},colors:{type:"array",items:{type:"string"}}}},{type:"object",required:["type","labels","colors"],properties:{type:{type:"string",const:"ramp"},title:{type:"string"},labels:{type:"array",items:{type:"string"}},colors:{type:"array",items:{type:"string"}},isContinuous:{type:"boolean"}}},{type:"object",required:["type","labels"],properties:{type:{type:"string",const:"proportion"},title:{type:"string"},labels:{type:"array",items:{type:"array",items:{type:"number"}}},fillColor:{type:"string"}}},{type:"object",required:["type","items"],properties:{type:{type:"string",const:"icon"},title:{type:"string"},items:{type:"array",items:{type:"object",properties:{icon:{type:"string"},label:{type:"string"}}}}}}]}},responsive:{type:"object",properties:{breakpoint:{type:"number",default:768},mobile:{type:"object",properties:{controls:{type:"object",properties:{position:{type:"string"},scale:{type:"number"},hide:{type:"array",items:{type:"string"}}}},legends:{type:"object",properties:{compact:{type:"boolean"},position:{type:"string"}}},toolbar:{type:"object",required:["items","position"],properties:{items:{type:"array",items:{type:"string"}},position:{type:"string",enum:["bottom","top"]}}}}}}},events:{type:"object",description:"Global event identifier mappings for map and interactions",properties:{mapMove:{type:"string",description:"Event identifier for map move"},mapZoom:{type:"string",description:"Event identifier for map zoom"},markerDragEnd:{type:"string",description:"Event identifier for marker drag end"}}}}};function kA({source:I,sourceType:A,sourceConfig:g,onClick:e,onMouseMove:t,onMouseEnter:i,onMouseLeave:r,...o}){const E=uA();if(!E)return null;const B={...o,type:"point",source:I,sourceType:A??"json",sourceConfig:g},C=e||t||i||r?{onClick:e,onMouseMove:t,onMouseEnter:i,onMouseLeave:r}:void 0;return u.jsx(eg,{schema:B,scene:E,eventHandlers:C})}function HA({source:I,sourceType:A,sourceConfig:g,onClick:e,onMouseMove:t,onMouseEnter:i,onMouseLeave:r,...o}){const E=uA();if(!E)return null;const B={...o,type:"line",source:I,sourceType:A??"json",sourceConfig:g},C=e||t||i||r?{onClick:e,onMouseMove:t,onMouseEnter:i,onMouseLeave:r}:void 0;return u.jsx(eg,{schema:B,scene:E,eventHandlers:C})}function Xg({source:I,sourceType:A,sourceConfig:g,onClick:e,onMouseMove:t,onMouseEnter:i,onMouseLeave:r,...o}){const E=uA();if(!E)return null;const B={...o,type:"polygon",source:I,sourceType:A??"geojson",sourceConfig:g},C=e||t||i||r?{onClick:e,onMouseMove:t,onMouseEnter:i,onMouseLeave:r}:void 0;return u.jsx(eg,{schema:B,scene:E,eventHandlers:C})}function qt({source:I,sourceType:A,sourceConfig:g,onClick:e,onMouseMove:t,onMouseEnter:i,onMouseLeave:r,...o}){const E=uA();if(!E)return null;const B={...o,type:"heatmap",source:I,sourceType:A??"json",sourceConfig:g},C=e||t||i||r?{onClick:e,onMouseMove:t,onMouseEnter:i,onMouseLeave:r}:void 0;return u.jsx(eg,{schema:B,scene:E,eventHandlers:C})}function Tt({source:I,sourceType:A="json",sourceConfig:g,hexSize:e=100,weightField:t="h12",weightMethod:i="sum",onClick:r,onMouseMove:o,style:E,...B}){const C=[{type:"hexagon",size:e,field:t,method:i}];return u.jsx(qt,{...B,source:I,sourceType:A,sourceConfig:{...g,transforms:C},shape:"hexagonColumn",style:{coverage:.8,angle:0,...E??{}},onClick:r,onMouseMove:o})}function Ot({source:I,sourceType:A,sourceConfig:g,onClick:e,...t}){const i=uA();if(!i)return null;const r={...t,type:"raster",source:I,sourceType:A??"raster",sourceConfig:g},o=e?{onClick:e}:void 0;return u.jsx(eg,{schema:r,scene:i,eventHandlers:o})}function U0({source:I,sourceType:A,sourceConfig:g,onClick:e,...t}){const i=uA();if(!i)return null;const r={...t,type:"image",source:I,sourceType:A??"image",sourceConfig:g},o=e?{onClick:e}:void 0;return u.jsx(eg,{schema:r,scene:i,eventHandlers:o})}const M0=[8,16,32,48,64],$g={primary:"#2563eb",warning:"#f59e0b",error:"#ef4444",success:"#10b981"};function Y0({source:I,sourceType:A="geojson",sourceConfig:g,labelField:e="name",labelColor:t="#0b3b8c",labelSize:i=12,showLabel:r=!0,labelTrigger:o="always",labelOffset:E,sizeDomain:B,bubbleAnchor:C="bottom",labelAnchor:s="top",hoverEffect:a=!0,clickEffect:Q=!0,tooltipEffect:n=!0,tooltipFields:f,tooltipTemplate:c,semanticColorField:h,color:w="#2563eb",size:D=16,sizeField:d,sizeValues:y,style:S,active:l,select:G,onClick:F,onMouseMove:k,onMouseEnter:m,onMouseLeave:M,...N}){const b=h??N.colorField,U=N.colorValues??(h?[$g.primary,$g.warning,$g.error,$g.success]:void 0),R=d?y??[...M0]:y,[H,T]=p.useState(o==="always"),V=p.useCallback(_=>{o==="hover"&&T(!0),m==null||m(_)},[o,m]),P=p.useCallback(_=>{o==="hover"&&T(!1),M==null||M(_)},[o,M]),q={color:"#60a5fa"},v={color:"#1d4ed8"},Z=(()=>{const _=N.events;return n?{..._,enablePopup:(_==null?void 0:_.enablePopup)??!0,popupFields:(_==null?void 0:_.popupFields)??f,popupTemplate:(_==null?void 0:_.popupTemplate)??c}:_})(),[K,O]=p.useState(!1);p.useEffect(()=>{const _=requestAnimationFrame(()=>O(!0));return()=>cancelAnimationFrame(_)},[]);const x=r&&H&&K,W=d?{sizeField:d,sizeValues:R}:{size:D};return u.jsxs(u.Fragment,{children:[u.jsx(kA,{source:I,sourceType:A,sourceConfig:g,shape:"circle",color:w,colorField:b,colorValues:U,...W,opacity:.75,active:a?l??q:l,select:Q?G??v:G,events:Z,zIndex:N.zIndex??0,autoFit:N.autoFit,visible:N.visible,name:N.name??"bubble-circle",onClick:F,onMouseMove:k,onMouseEnter:V,onMouseLeave:P,style:{stroke:w??"#004ac6",strokeWidth:2,strokeOpacity:1,...S??{}}}),x&&u.jsx(kA,{source:I,sourceType:A,sourceConfig:g,shapeField:e,shapeValues:"text",color:t,size:i,zIndex:(N.zIndex??0)+1,style:{textAnchor:s,textOffset:E??[0,0],stroke:"#fff",strokeWidth:2,textAllowOverlap:!0}})]})}const Vt=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],ee=1,Rg=8,fA=new Uint32Array(96);class te{static from(A){if(!A||A.byteLength===void 0||A.buffer)throw new Error("Data must be an instance of ArrayBuffer or SharedArrayBuffer.");const[g,e]=new Uint8Array(A,0,2);if(g!==219)throw new Error("Data does not appear to be in a KDBush format.");const t=e>>4;if(t!==ee)throw new Error(`Got v${t} data when expected v${ee}.`);const i=Vt[e&15];if(!i)throw new Error("Unrecognized array type.");const[r]=new Uint16Array(A,2,1),[o]=new Uint32Array(A,4,1);return new te(o,r,i,void 0,A)}constructor(A,g=64,e=Float64Array,t=ArrayBuffer,i){if(isNaN(A)||A<0)throw new Error(`Unexpected numItems value: ${A}.`);this.numItems=+A,this.nodeSize=Math.min(Math.max(+g,2),65535),this.ArrayType=e,this.IndexArrayType=A<65536?Uint16Array:Uint32Array;const r=Vt.indexOf(this.ArrayType),o=A*2*this.ArrayType.BYTES_PER_ELEMENT,E=A*this.IndexArrayType.BYTES_PER_ELEMENT,B=(8-E%8)%8;if(r<0)throw new Error(`Unexpected typed array class: ${e}.`);if(i)this.data=i,this.ids=new this.IndexArrayType(i,Rg,A),this.coords=new e(i,Rg+E+B,A*2),this._pos=A*2,this._finished=!0;else{const C=this.data=new t(Rg+o+E+B);this.ids=new this.IndexArrayType(C,Rg,A),this.coords=new e(C,Rg+E+B,A*2),this._pos=0,this._finished=!1,new Uint8Array(C,0,2).set([219,(ee<<4)+r]),new Uint16Array(C,2,1)[0]=g,new Uint32Array(C,4,1)[0]=A}}add(A,g){const e=this._pos>>1;return this.ids[e]=e,this.coords[this._pos++]=A,this.coords[this._pos++]=g,e}finish(){const A=this._pos>>1;if(A!==this.numItems)throw new Error(`Added ${A} items when expected ${this.numItems}.`);return ie(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this}range(A,g,e,t){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");const{ids:i,coords:r,nodeSize:o}=this;fA[0]=0,fA[1]=i.length-1,fA[2]=0;let E=3;const B=[];for(;E>0;){const C=fA[--E],s=fA[--E],a=fA[--E];if(s-a<=o){for(let c=a;c<=s;c++){const h=r[2*c],w=r[2*c+1];h>=A&&h<=e&&w>=g&&w<=t&&B.push(i[c])}continue}const Q=a+s>>1,n=r[2*Q],f=r[2*Q+1];n>=A&&n<=e&&f>=g&&f<=t&&B.push(i[Q]),(C===0?A<=n:g<=f)&&(fA[E++]=a,fA[E++]=Q-1,fA[E++]=1-C),(C===0?e>=n:t>=f)&&(fA[E++]=Q+1,fA[E++]=s,fA[E++]=1-C)}return B}within(A,g,e){const t=[];return this.withinInto(A,g,e,t),t}withinInto(A,g,e,t){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");const{ids:i,coords:r,nodeSize:o}=this;fA[0]=0,fA[1]=i.length-1,fA[2]=0;let E=3,B=0;const C=e*e;for(;E>0;){const s=fA[--E],a=fA[--E],Q=fA[--E];if(a-Q<=o){for(let h=Q;h<=a;h++)Zt(r[2*h],r[2*h+1],A,g)<=C&&(t[B++]=i[h]);continue}const n=Q+a>>1,f=r[2*n],c=r[2*n+1];Zt(f,c,A,g)<=C&&(t[B++]=i[n]),(s===0?A-e<=f:g-e<=c)&&(fA[E++]=Q,fA[E++]=n-1,fA[E++]=1-s),(s===0?A+e>=f:g+e>=c)&&(fA[E++]=n+1,fA[E++]=a,fA[E++]=1-s)}return B}}function ie(I,A,g,e,t,i){if(t-e<=g)return;const r=e+t>>1;jt(I,A,r,e,t,i),ie(I,A,g,e,r-1,1-i),ie(I,A,g,r+1,t,1-i)}function jt(I,A,g,e,t,i){for(;t>e;){if(t-e>600){const B=t-e+1,C=g-e+1,s=Math.log(B),a=.5*Math.exp(2*s/3),Q=.5*Math.sqrt(s*a*(B-a)/B)*(C-B/2<0?-1:1),n=Math.max(e,Math.floor(g-C*a/B+Q)),f=Math.min(t,Math.floor(g+(B-C)*a/B+Q));jt(I,A,g,n,f,i)}const r=A[2*g+i];let o=e,E=t;for(Ug(I,A,e,g),A[2*t+i]>r&&Ug(I,A,e,t);o<E;){for(Ug(I,A,o,E),o++,E--;A[2*o+i]<r;)o++;for(;A[2*E+i]>r;)E--}A[2*e+i]===r?Ug(I,A,e,E):(E++,Ug(I,A,E,t)),E<=g&&(e=E+1),g<=E&&(t=E-1)}}function Ug(I,A,g,e){Ce(I,g,e),Ce(A,2*g,2*e),Ce(A,2*g+1,2*e+1)}function Ce(I,A,g){const e=I[A];I[A]=I[g],I[g]=e}function Zt(I,A,g,e){const t=I-g,i=A-e;return t*t+i*i}const b0={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:I=>I},_t=Math.fround||(I=>(A=>(I[0]=+A,I[0])))(new Float32Array(1)),tg=2,XA=3,Be=4,$A=5,Pt=6;class H0{constructor(A){this.options=Object.assign(Object.create(b0),A),this.trees=new Array(this.options.maxZoom+1),this.stride=this.options.reduce?7:6,this.clusterProps=[]}load(A){const{log:g,minZoom:e,maxZoom:t}=this.options;g&&console.time("total time");const i=`prepare ${A.length} points`;g&&console.time(i),this.points=A;const r=[];for(let E=0;E<A.length;E++){const B=A[E];if(!B.geometry)continue;const[C,s]=B.geometry.coordinates,a=_t(AI(C)),Q=_t(gI(s));r.push(a,Q,1/0,E,-1,1),this.options.reduce&&r.push(0)}let o=this.trees[t+1]=this._createTree(r);g&&console.timeEnd(i);for(let E=t;E>=e;E--){const B=+Date.now();o=this.trees[E]=this._createTree(this._cluster(o,E)),g&&console.log("z%d: %d clusters in %dms",E,o.numItems,+Date.now()-B)}return g&&console.timeEnd("total time"),this}getClusters(A,g){let e=((A[0]+180)%360+360)%360-180;const t=Math.max(-90,Math.min(90,A[1]));let i=A[2]===180?180:((A[2]+180)%360+360)%360-180;const r=Math.max(-90,Math.min(90,A[3]));if(A[2]-A[0]>=360)e=-180,i=180;else if(e>i){const s=this.getClusters([e,t,180,r],g),a=this.getClusters([-180,t,i,r],g);return s.concat(a)}const o=this.trees[this._limitZoom(g)],E=o.range(AI(e),gI(r),AI(i),gI(t)),B=o.data,C=[];for(const s of E){const a=this.stride*s;C.push(B[a+$A]>1?zt(B,a,this.clusterProps):this.points[B[a+XA]])}return C}getChildren(A){const g=this._getOriginId(A),e=this._getOriginZoom(A),t="No cluster with the specified id.",i=this.trees[e];if(!i)throw new Error(t);const r=i.data;if(g*this.stride>=r.length)throw new Error(t);const o=this.options.radius/(this.options.extent*Math.pow(2,e-1)),E=r[g*this.stride],B=r[g*this.stride+1],C=i.within(E,B,o),s=[];for(const a of C){const Q=a*this.stride;r[Q+Be]===A&&s.push(r[Q+$A]>1?zt(r,Q,this.clusterProps):this.points[r[Q+XA]])}if(s.length===0)throw new Error(t);return s}getLeaves(A,g,e){g=g||10,e=e||0;const t=[];return this._appendLeaves(t,A,g,e,0),t}getTile(A,g,e){const t=this.trees[this._limitZoom(A)],i=Math.pow(2,A),{extent:r,radius:o}=this.options,E=o/r,B=(e-E)/i,C=(e+1+E)/i,s={features:[]};return this._addTileFeatures(t.range((g-E)/i,B,(g+1+E)/i,C),t.data,g,e,i,s),g===0&&this._addTileFeatures(t.range(1-E/i,B,1,C),t.data,i,e,i,s),g===i-1&&this._addTileFeatures(t.range(0,B,E/i,C),t.data,-1,e,i,s),s.features.length?s:null}getClusterExpansionZoom(A){let g=this._getOriginZoom(A)-1;for(;g<=this.options.maxZoom;){const e=this.getChildren(A);if(g++,e.length!==1)break;A=e[0].properties.cluster_id}return g}_appendLeaves(A,g,e,t,i){const r=this.getChildren(g);for(const o of r){const E=o.properties;if(E&&E.cluster?i+E.point_count<=t?i+=E.point_count:i=this._appendLeaves(A,E.cluster_id,e,t,i):i<t?i++:A.push(o),A.length===e)break}return i}_createTree(A){const g=new te(A.length/this.stride|0,this.options.nodeSize,Float32Array);for(let e=0;e<A.length;e+=this.stride)g.add(A[e],A[e+1]);return g.finish(),g.data=A,g}_addTileFeatures(A,g,e,t,i,r){for(const o of A){const E=o*this.stride,B=g[E+$A]>1;let C,s,a;if(B)C=Wt(g,E,this.clusterProps),s=g[E],a=g[E+1];else{const f=this.points[g[E+XA]];C=f.properties;const[c,h]=f.geometry.coordinates;s=AI(c),a=gI(h)}const Q={type:1,geometry:[[Math.round(this.options.extent*(s*i-e)),Math.round(this.options.extent*(a*i-t))]],tags:C};let n;B||this.options.generateId?n=g[E+XA]:n=this.points[g[E+XA]].id,n!==void 0&&(Q.id=n),r.features.push(Q)}}_limitZoom(A){return Math.max(this.options.minZoom,Math.min(Math.floor(+A),this.options.maxZoom+1))}_cluster(A,g){const{radius:e,extent:t,reduce:i,minPoints:r}=this.options,o=e/(t*Math.pow(2,g)),E=A.data,B=[],C=this.stride;for(let s=0;s<E.length;s+=C){if(E[s+tg]<=g)continue;E[s+tg]=g;const a=E[s],Q=E[s+1],n=A.within(E[s],E[s+1],o),f=E[s+$A];let c=f;for(const h of n){const w=h*C;E[w+tg]>g&&(c+=E[w+$A])}if(c>f&&c>=r){let h=a*f,w=Q*f,D,d=-1;const y=((s/C|0)<<5)+(g+1)+this.points.length;for(const S of n){const l=S*C;if(E[l+tg]<=g)continue;E[l+tg]=g;const G=E[l+$A];h+=E[l]*G,w+=E[l+1]*G,E[l+Be]=y,i&&(D||(D=this._map(E,s,!0),d=this.clusterProps.length,this.clusterProps.push(D)),i(D,this._map(E,l)))}E[s+Be]=y,B.push(h/c,w/c,1/0,y,-1,c),i&&B.push(d)}else{for(let h=0;h<C;h++)B.push(E[s+h]);if(c>1)for(const h of n){const w=h*C;if(!(E[w+tg]<=g)){E[w+tg]=g;for(let D=0;D<C;D++)B.push(E[w+D])}}}}return B}_getOriginId(A){return A-this.points.length>>5}_getOriginZoom(A){return(A-this.points.length)%32}_map(A,g,e){if(A[g+$A]>1){const r=this.clusterProps[A[g+Pt]];return e?Object.assign({},r):r}const t=this.points[A[g+XA]].properties,i=this.options.map(t);return e&&i===t?Object.assign({},i):i}}function zt(I,A,g){return{type:"Feature",id:I[A+XA],properties:Wt(I,A,g),geometry:{type:"Point",coordinates:[K0(I[A]),x0(I[A+1])]}}}function Wt(I,A,g){const e=I[A+$A],t=e>=1e4?`${Math.round(e/1e3)}k`:e>=1e3?`${Math.round(e/100)/10}k`:e,i=I[A+Pt],r=i===-1?{}:Object.assign({},g[i]);return Object.assign(r,{cluster:!0,cluster_id:I[A+XA],point_count:e,point_count_abbreviated:t})}function AI(I){return I/360+.5}function gI(I){const A=Math.sin(I*Math.PI/180),g=.5-.25*Math.log((1+A)/(1-A))/Math.PI;return g<0?0:g>1?1:g}function K0(I){return(I-.5)*360}function x0(I){const A=(180-I*360)*Math.PI/180;return 360*Math.atan(Math.exp(A))/Math.PI-90}function v0({source:I,sourceType:A="geojson",sourceConfig:g,gridSize:e=60,minClusterSize:t=2,animationDuration:i=300,easing:r="cubic-bezier(0.4, 0, 0.2, 1)",onPointClick:o,onClusterClick:E}){const B=uA(),[C,s]=p.useState([]),[a,Q]=p.useState(null),[n,f]=p.useState(null),c=p.useRef(null),h=p.useRef(-1),w=p.useMemo(()=>T0(I,A,g),[I,A,g]);p.useEffect(()=>{if(w.length===0){c.current=null,s([]),h.current=-1;return}const l=new H0({radius:e,minPoints:t,maxZoom:20,minZoom:0}),G=w.map(F=>({type:"Feature",properties:{id:F.id,...F.properties},geometry:{type:"Point",coordinates:[F.lng,F.lat]}}));l.load(G),c.current=l,h.current=-1},[w,e,t]);const D=p.useCallback((l,G)=>{try{const F=Math.floor(G.getZoom());if(F===h.current)return;h.current=F;let k=[-180,-90,180,90];try{const N=G.getBounds();N&&(k=[N[0][0],N[0][1],N[1][0],N[1][1]])}catch{}const M=l.getClusters(k,F).map(N=>{const b=N.geometry.coordinates,U=b[0],R=b[1];return N.properties.cluster?{id:`cluster-${N.properties.cluster_id}`,clusterId:N.properties.cluster_id,lng:U,lat:R,pointCount:N.properties.point_count,isCluster:!0,properties:{}}:{id:`point-${N.properties.id}`,clusterId:-1,lng:U,lat:R,pointCount:1,isCluster:!1,properties:N.properties}});s(M),Q(null)}catch{}},[]);p.useEffect(()=>{var k,m;if(!B)return;const l=B.mapService,G=()=>{requestAnimationFrame(()=>{const M=c.current;M&&B.loaded&&D(M,B)})};B.loaded?G():B.once("loaded",G);const F=()=>{const M=c.current;M&&D(M,B)};return(k=l==null?void 0:l.on)==null||k.call(l,"camerachange",F),(m=l==null?void 0:l.on)==null||m.call(l,"viewchange",F),()=>{var M,N;B.off("loaded",G),(M=l==null?void 0:l.off)==null||M.call(l,"camerachange",F),(N=l==null?void 0:l.off)==null||N.call(l,"viewchange",F)}},[B,D]);const d=p.useCallback(l=>{if(!B||!l.isCluster)return;let G=[];const F=c.current;F&&(G=F.getLeaves(l.clusterId,1/0)),E==null||E(l,G);try{if(B.getZoom()>=20-.5){Q(M=>M===l.id?null:l.id);return}if(G.length>0){const M=G.map(H=>H.geometry.coordinates),N=M.map(H=>H[0]),b=M.map(H=>H[1]),U=[Math.min(...N),Math.min(...b)],R=[Math.max(...N),Math.max(...b)];B.fitBounds([U,R],{padding:[40,40,40,40],duration:i})}}catch{}},[B,E,i]),y=p.useMemo(()=>{if(!B||!a||!c.current)return[];const l=C.find(G=>G.id===a&&G.isCluster);if(!l)return[];try{const G=c.current.getLeaves(l.clusterId,1/0),F=B.mapService;if(!F)return[];const k=F.lngLatToContainer([l.lng,l.lat]);if(!k)return[];const m=G.length,M=Math.max(24,Math.min(72,18+m*2));return G.map((N,b)=>{var V,P;const U=Math.PI*2*b/m-Math.PI/2,R=k.x+Math.cos(U)*M,H=k.y+Math.sin(U)*M,T=F.containerToLngLat([R,H]);return{id:`spider-${l.id}-${((V=N.properties)==null?void 0:V.id)??b}`,lng:T.lng,lat:T.lat,point:{id:String(((P=N.properties)==null?void 0:P.id)??b),lng:N.geometry.coordinates[0],lat:N.geometry.coordinates[1],properties:N.properties??{}}}})}catch{return[]}},[B,a,C]),S=p.useMemo(()=>a?C.find(l=>l.id===a&&l.isCluster)??null:null,[a,C]);return u.jsxs(u.Fragment,{children:[a&&S&&y.map(l=>u.jsx(Eg,{longitude:l.lng,latitude:l.lat,anchor:"center",content:u.jsx(J0,{centerLng:S.lng,centerLat:S.lat,lineLng:l.lng,lineLat:l.lat})},`line-${l.id}`)),C.map(l=>{var m;if(!l.isCluster)return u.jsx(Eg,{longitude:l.lng,latitude:l.lat,anchor:"center",content:u.jsx("div",{title:String(((m=l.properties)==null?void 0:m.name)??"单点"),onClick:()=>{var M;return o==null?void 0:o({id:String(((M=l.properties)==null?void 0:M.id)??""),lng:l.lng,lat:l.lat,properties:l.properties})},style:{width:14,height:14,borderRadius:9999,background:"#2563eb",border:"2px solid #fff",boxShadow:"0 2px 10px rgba(37,99,235,.5), 0 0 0 3px rgba(37,99,235,.15)",transition:"transform 0.15s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.15s cubic-bezier(0.4, 0, 0.2, 1)",cursor:"pointer"}})},l.id);const G=l.pointCount,F=q0(G),k=n===l.id;return u.jsx(Eg,{longitude:l.lng,latitude:l.lat,anchor:"center",content:u.jsxs("div",{title:`包含 ${G} 个要素`,onClick:()=>d(l),onMouseEnter:()=>f(l.id),onMouseLeave:()=>f(M=>M===l.id?null:M),style:{width:F.size,height:F.size,borderRadius:9999,display:"flex",alignItems:"center",justifyContent:"center",color:"#fff",fontWeight:F.fontWeight,fontSize:F.fontSize,background:F.background,border:F.border,boxShadow:F.shadow,position:"relative",cursor:"pointer",transition:"transform 0.15s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.15s cubic-bezier(0.4, 0, 0.2, 1)",transform:k?"scale(1.1)":"scale(1)"},children:[F.pulse&&u.jsx("span",{style:{position:"absolute",inset:-6,borderRadius:9999,background:"rgba(37,99,235,0.25)",animation:"aimapui-cluster-pulse 1.6s ease-out infinite"}}),u.jsx("span",{style:{position:"relative",zIndex:1},children:G})]})},l.id)}),y.map(l=>{var G;return u.jsx(Eg,{longitude:l.lng,latitude:l.lat,anchor:"center",content:u.jsx("div",{title:String(((G=l.point.properties)==null?void 0:G.name)??l.point.id),onClick:()=>o==null?void 0:o(l.point),style:{width:10,height:10,borderRadius:9999,background:"#fff",border:"2px solid #2563eb",boxShadow:"0 2px 8px rgba(0,0,0,.2)",cursor:"pointer"}})},l.id)})]})}function J0({centerLng:I,centerLat:A,lineLng:g,lineLat:e}){const t=uA(),i=p.useRef(null);return p.useEffect(()=>{if(!t)return;const r=t.mapService;if(!r)return;const o=()=>{const C=i.current;if(C)try{const s=r.lngLatToContainer([I,A]),a=r.lngLatToContainer([g,e]);if(!s||!a)return;const Q=a.x-s.x,n=a.y-s.y,f=Math.sqrt(Q*Q+n*n),c=Math.atan2(n,Q)*180/Math.PI;C.style.width=`${f}px`,C.style.transform=`rotate(${c}deg)`}catch{}};o();const E=(C,s,a)=>{var Q;try{(Q=C==null?void 0:C.on)==null||Q.call(C,s,a)}catch{}},B=(C,s,a)=>{var Q;try{(Q=C==null?void 0:C.off)==null||Q.call(C,s,a)}catch{}};return E(r,"camerachange",o),E(r,"viewchange",o),()=>{B(r,"camerachange",o),B(r,"viewchange",o)}},[t,I,A,g,e]),u.jsx("div",{ref:i,style:{position:"absolute",left:0,top:0,height:1,background:"rgba(195, 198, 215, 0.5)",transformOrigin:"0 50%",pointerEvents:"none"}})}function q0(I){return I>=1e3?{size:48,fontSize:14,fontWeight:700,background:"linear-gradient(135deg, #2563eb 0%, #1e3a8a 100%)",border:"2px solid rgba(255,255,255,0.55)",shadow:"0 10px 24px rgba(37,99,235,.45)",pulse:!0}:I>=100?{size:40,fontSize:13,fontWeight:700,background:"rgba(37,99,235,0.30)",border:"2px solid rgba(255,255,255,0.5)",shadow:"0 6px 16px rgba(37,99,235,.25)",pulse:!1}:{size:32,fontSize:12,fontWeight:600,background:"radial-gradient(circle, #2563eb 60%, rgba(37,99,235,0.20) 61%)",border:"1px solid rgba(255,255,255,0.55)",shadow:"0 4px 12px rgba(37,99,235,.2)",pulse:!1}}function T0(I,A,g){if(!I)return[];if(A==="geojson"&&typeof I=="object"&&I!==null){const e=I;return(Array.isArray(e.features)?e.features:[]).map((i,r)=>{var B,C,s;const o=i,E=(B=o==null?void 0:o.geometry)==null?void 0:B.coordinates;return!Array.isArray(E)||E.length<2?null:{id:String(((C=o==null?void 0:o.properties)==null?void 0:C.id)??((s=o==null?void 0:o.properties)==null?void 0:s.Id)??r),lng:Number(E[0]),lat:Number(E[1]),properties:(o==null?void 0:o.properties)??{}}}).filter(Boolean)}if(Array.isArray(I)){const e=(g==null?void 0:g.x)??"lng",t=(g==null?void 0:g.y)??"lat";return I.map((i,r)=>{const o=i,E=Number(o[e]),B=Number(o[t]);return Number.isNaN(E)||Number.isNaN(B)?null:{id:String(o.id??r),lng:E,lat:B,properties:o}}).filter(Boolean)}return[]}const O0=["#dbeafe","#93c5fd","#60a5fa","#3b82f6","#2563eb"],V0=["#dc2626","#fca5a5","#e5e7eb","#86efac","#16a34a"],j0=["#2563eb","#f59e0b","#ef4444","#10b981","#8b5cf6","#14b8a6","#f97316","#64748b"];function Z0({source:I,sourceType:A="geojson",colorMapping:g="sequential",showStroke:e=!0,strokeColor:t="rgba(255,255,255,0.30)",strokeWidth:i=.5,hoverEffect:r=!0,clickEffect:o=!0,stickySelection:E=!0,tooltipEffect:B=!0,tooltipFields:C,tooltipTemplate:s,regionIdField:a="name",highlightStrokeColor:Q="#2563eb",highlightStrokeWidth:n=2,zoomToRegionOnClick:f=!0,clickZoomPadding:c=40,clickZoomDelta:h=1.2,onRegionClick:w,onDrilldown:D,showLabel:d=!1,labelField:y="name",labelColor:S="#0f172a",labelSize:l=11,labelAreaThreshold:G=5e-5,labelHaloWidth:F=2,minLabelZoom:k,valueField:m,percentageField:M,nameField:N,color:b,colorField:U,colorValues:R,active:H,select:T,events:V,style:P,...q}){const v=uA(),[Z,K]=p.useState(null),[O,x]=p.useState(null),[W,_]=p.useState(()=>{if(!v)return 0;try{return v.getZoom()}catch{return 0}});p.useEffect(()=>{if(!v)return;const X=()=>{try{_(v.getZoom())}catch{}};return X(),v.on("zoomchange",X),()=>{v.off("zoomchange",X)}},[v]);const gA=k===void 0||W>=k,iA=p.useMemo(()=>{if(R)return R;switch(g){case"diverging":return[...V0];case"categorical":return[...j0];case"sequential":default:return[...O0]}},[R,g]),AA=m??U??"value",z=N??y,eA=p.useMemo(()=>s??_0(z,AA,M),[s,z,AA,M]),BA={color:"#ffffff"},IA={color:"#0f172a"},rA=p.useMemo(()=>P0(I,A,y,a,G),[I,A,y,a,G]),mA=p.useCallback(X=>{w==null||w(X);const hA=$t(X.feature,a);if(hA!==null&&o&&x(zA=>!E&&zA===hA?null:hA),X.feature&&(D==null||D(X.feature)),!v||!f)return;const PA=Number.isFinite(X.lng)&&Number.isFinite(X.lat)?[X.lng,X.lat]:W0(X.originalEvent);if(PA)try{const zA=v.getZoom(),gg=Math.abs(h);v.setCenter(PA),v.setZoom(zA+gg)}catch{}},[w,a,o,E,D,v,f,h]),CA=p.useCallback(X=>{if(!r)return;const hA=$t(X.feature,a);K(hA)},[r,a]),QA=p.useCallback(()=>{r&&K(null)},[r]),oA=p.useMemo(()=>{const X=V;return B?{...X,enablePopup:(X==null?void 0:X.enablePopup)??!0,popupTrigger:(X==null?void 0:X.popupTrigger)??"hover",popupFields:(X==null?void 0:X.popupFields)??C,popupTemplate:(X==null?void 0:X.popupTemplate)??eA}:X},[V,B,C,eA]);return u.jsxs(u.Fragment,{children:[u.jsx(Xg,{...q,source:I,sourceType:A,shape:q.shape??"fill",color:b??"#2563eb",colorField:U,colorValues:iA,active:r?H??BA:H,select:o?T??IA:T,events:oA,onClick:mA,onMouseEnter:CA,onMouseLeave:QA,style:{opacity:.8,...P??{}}}),e&&u.jsx(HA,{source:I,sourceType:A,color:t,size:i,zIndex:2}),r&&Z!==null&&u.jsxs(u.Fragment,{children:[u.jsx(HA,{source:I,sourceType:A,color:Xt(Q,.35),size:n+2,filterField:a,filterValues:[Z],zIndex:3}),u.jsx(HA,{source:I,sourceType:A,color:Q,size:n,filterField:a,filterValues:[Z],zIndex:4})]}),o&&O!==null&&u.jsx(HA,{source:I,sourceType:A,color:Xt(Q,.9),size:Math.max(1.5,n),filterField:a,filterValues:[O],zIndex:5}),d&&gA&&u.jsx(kA,{source:rA.data,sourceType:rA.sourceType,sourceConfig:rA.sourceConfig,shapeField:y,shapeValues:"text",color:S,size:l,style:{textAllowOverlap:!1,stroke:"#ffffff",strokeWidth:F,fontFamily:"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace"}})]})}function _0(I,A,g){const e=g?`<tr><td style="padding-right:8px;color:#64748b">占比</td><td style="font-weight:600">{{${g}}}%</td></tr>`:"";return['<div style="min-width:160px">',`<div style="font-weight:700;margin-bottom:6px">{{${I}}}</div>`,'<table style="font-size:12px;line-height:1.4">',`<tr><td style="padding-right:8px;color:#64748b">指标</td><td style="font-weight:600">{{${A}}}</td></tr>`,e,"</table>","</div>"].join("")}function Xt(I,A){if(I.startsWith("#")){const g=I.replace("#",""),e=g.length===3?`${g[0]}${g[0]}${g[1]}${g[1]}${g[2]}${g[2]}`:g;if(e.length===6){const t=parseInt(e.slice(0,2),16),i=parseInt(e.slice(2,4),16),r=parseInt(e.slice(4,6),16);return`rgba(${t},${i},${r},${A})`}}return I}function $t(I,A){if(!I)return null;const g=I[A]??I.id??I.name;return typeof g=="string"||typeof g=="number"?g:null}function P0(I,A,g,e,t){return A!=="geojson"||!z0(I)?{data:I,sourceType:A}:{data:I.features.map(r=>{if(!r||!r.geometry||!r.properties)return null;const o=Ai(r.geometry),E=$0(r.geometry);if(!o||E<t)return null;const B=r.properties;return{lng:o[0],lat:o[1],[g]:B[g],[e]:B[e]}}).filter(r=>r!==null),sourceType:"json",sourceConfig:{x:"lng",y:"lat"}}}function z0(I){if(!I||typeof I!="object")return!1;const A=I;return A.type==="FeatureCollection"&&Array.isArray(A.features)}function W0(I){const A=X0(I);return A?Ai(A):null}function X0(I){var g,e;const A=I;return((g=A==null?void 0:A.feature)==null?void 0:g.geometry)??((e=A==null?void 0:A.data)==null?void 0:e.geometry)??null}function Ai(I){if(I.type==="Polygon")return gi(I.coordinates[0]);if(I.type==="MultiPolygon"){let A=0,g=null;return I.coordinates.forEach(e=>{const t=e[0],i=Math.abs(oe(t));i>A&&(A=i,g=gi(t))}),g}return null}function $0(I){return I.type==="Polygon"?Math.abs(oe(I.coordinates[0])):I.type==="MultiPolygon"?I.coordinates.reduce((A,g)=>A+Math.abs(oe(g[0])),0):0}function gi(I){if(!I||I.length<3)return null;let A=0,g=0,e=0;for(let i=0;i<I.length-1;i+=1){const[r,o]=I[i],[E,B]=I[i+1],C=r*B-E*o;A+=C,g+=(r+E)*C,e+=(o+B)*C}const t=A/2;if(Math.abs(t)<1e-12){const i=I[0];return i?[i[0],i[1]]:null}return[g/(6*t),e/(6*t)]}function oe(I){if(!I||I.length<3)return 0;let A=0;for(let g=0;g<I.length-1;g+=1){const[e,t]=I[g],[i,r]=I[g+1];A+=e*r-i*t}return A/2}const Ii=["#eff6ff","#bfdbfe","#60a5fa","#2563eb","#1d4ed8","#1e3a8a"],ei="https://mdn.alipayobjects.com/antforest/afts/file/A*T2OJQ7XZzeEAAAAAgCAAAAgAerd2AQ/original_中国_省.json",ti="https://mdn.alipayobjects.com/antforest/afts/file/A*Xd8TQoduwj8AAAAAgEAAAAgAerd2AQ/original_中国_市.json",ii="https://mdn.alipayobjects.com/portal_moelhz/afts/file/A*Rb96Tac1p8EAAAAAgKAAAAgAegAAAQ",Ao=p.forwardRef(function(A,g){const{provinceSource:e=ei,citySource:t=ti,districtSource:i=ii,level:r="province",drillEnabled:o=!0,drillPath:E,onDrill:B,onDrillUp:C,autoFitOnDrill:s=!0,data:a,joinField:Q="name",dataJoinField:n="name",valueField:f="value",colors:c=[...Ii],fillOpacity:h=.8,strokeColor:w="rgba(255,255,255,0.5)",strokeWidth:D=1.5,dimOpacity:d=.12,showLabel:y=!0,labelField:S="name",labelSize:l=12,hoverHighlight:G=!0,clickSelect:F=!0,showTooltip:k=!0,tooltipFields:m,onRegionClick:M,zIndex:N=0}=A,b=uA(),[U,R]=p.useState(null),[H,T]=p.useState(null),[V,P]=p.useState(null),[q,v]=p.useState([{level:"province",name:"中国"}]),Z=E??q,K=o?Io(Z):r,O=p.useCallback(()=>{if(Z.length<=1)return;const CA=Z.slice(0,-1);E?C==null||C(CA):(v(CA),C==null||C(CA),B==null||B(CA)),_(null)},[Z,E,C,B]),x=p.useCallback(CA=>{if(CA<0||CA>=Z.length-1)return;const QA=Z.slice(0,CA+1);E?C==null||C(QA):(v(QA),C==null||C(QA),B==null||B(QA)),_(null)},[Z,E,C,B]),[W,_]=p.useState(null);p.useImperativeHandle(g,()=>({drillUp:O,drillUpTo:x,getDrillPath:()=>Z}),[O,x,Z]);const gA=p.useRef(Z.length);p.useEffect(()=>{re(e,R)},[e]),p.useEffect(()=>{t&&re(t,T)},[t]),p.useEffect(()=>{i&&re(i,P)},[i]);const iA=p.useMemo(()=>{switch(K){case"city":return H;case"district":return V;default:return U}},[K,U,H,V]),AA=p.useMemo(()=>!iA||!a||a.length===0?iA:Co(iA,a,Q,n,f),[iA,a,Q,n,f]),z=p.useMemo(()=>{if(!o||Z.length<=1)return AA;if(!AA)return null;const CA=Z[Z.length-1];return!CA.adcode&&!CA.name?AA:oo(AA,CA)},[o,Z,AA,Q]),eA=p.useMemo(()=>!o||Z.length<=1?null:(Z.length===2?U:H)??null,[o,Z,U,H]);p.useMemo(()=>`<div style="min-width:140px"><table style="font-size:12px;line-height:1.6">${(m??[S,f]).map(oA=>`<tr><td style="padding-right:8px;color:#64748b">${oA}</td><td style="font-weight:600">{{${oA}}}</td></tr>`).join("")}</table></div>`,[m,S,f]);const BA=!!(a&&a.length>0),IA=p.useMemo(()=>AA?z??AA:null,[z,AA]),rA=K==="province"?D:D*.6;p.useEffect(()=>{if(!(!s||!b||!IA||gA.current===Z.length)){gA.current=Z.length;try{const QA=Eo(IA);QA&&b.fitBounds(QA,{padding:[40,40,40,40]})}catch{}}},[s,b,IA,Z.length]);const mA=p.useCallback(CA=>{const QA=CA.feature;if(!QA)return;const oA=String(QA[S]??QA.name??""),X=QA.adcode??QA.gb;if(M==null||M(QA,K),F&&_(hA=>hA===oA?null:oA),o&&eo(K)){const hA=[...Z,{level:K,name:oA,adcode:X}];E||v(hA),B==null||B(hA),_(null)}},[S,K,F,o,Z,E,B,M]);return!b||!IA?null:u.jsxs(u.Fragment,{children:[o&&eA&&Z.length>1&&u.jsxs(u.Fragment,{children:[u.jsx(Xg,{source:eA,sourceType:"geojson",shape:"fill",color:"#94a3b8",style:{opacity:d},zIndex:N}),u.jsx(HA,{source:eA,sourceType:"geojson",color:"rgba(148,163,184,0.2)",size:.5,zIndex:N+1})]}),u.jsx(Xg,{source:IA,sourceType:"geojson",shape:"fill",...BA?{colorField:f,colorValues:c}:{color:c[2]??"#3b82f6"},active:G?{color:"#ffffff"}:void 0,select:F?{color:"#0f172a"}:void 0,style:{opacity:h},onClick:mA,zIndex:N+2}),u.jsx(HA,{source:IA,sourceType:"geojson",color:w,size:rA,zIndex:N+3}),y&&IA&&u.jsx(go,{geoData:IA,labelField:S,labelSize:l,zIndex:N+4})]})});function go({geoData:I,labelField:A,labelSize:g,zIndex:e}){const t=p.useMemo(()=>ro(I,A),[I,A]);return!t||t.data.length===0?null:u.jsx(kA,{source:t.data,sourceType:t.sourceType,sourceConfig:t.sourceConfig,shapeField:A,shapeValues:"text",color:"#0f172a",size:g,style:{textAllowOverlap:!1,stroke:"#ffffff",strokeWidth:2,fontFamily:"PingFang SC, Microsoft YaHei, sans-serif"},zIndex:e})}function Io(I){return I.length<=1?"province":I.length===2?"city":"district"}function eo(I){return I!=="district"}const to=new Set(["境界线","边界线","九段线","十段线"]);function io(I){var e,t;const A=(e=I.properties)==null?void 0:e.name;if(!A||typeof A!="string"||to.has(A))return!1;const g=(t=I.geometry)==null?void 0:t.type;return!(g==="LineString"||g==="MultiLineString")}function Ci(I){return{type:"FeatureCollection",features:I.features.filter(io)}}function re(I,A){typeof I=="string"?fetch(I).then(g=>g.json()).then(g=>{g&&g.type==="FeatureCollection"&&A(Ci(g))}).catch(()=>{}):I&&I.type==="FeatureCollection"&&A(Ci(I))}function Co(I,A,g,e,t){const i=new Map;for(const o of A){const E=String(o[e]??"");E&&i.set(E,o)}return{type:"FeatureCollection",features:I.features.map(o=>{const E=String(o.properties[g]??""),B=i.get(E),C=B?B[t]??B.value??0:0;return{...o,properties:{...o.properties,...B??{},[t]:C}}})}}function Bi(I){const A=String(I);return A.startsWith("156")&&A.length>=9?A.slice(3):A}const Bo=["省","市","自治区","特别行政区","壮族","回族","维吾尔","藏族","彝族","苗","侗","瑶","白","哈尼","傣","傈僳","佤","畲","拉祜","水","景颇","土家","羌","毛南","仫佬","布朗","撒拉","裕固","塔吉克","柯尔克孜","锡伯","达斡尔","鄂温克","鄂伦春","赫哲","德昂","门巴","珞巴","基诺","怒","保安","京","独龙","仡佬","阿昌","普米"];function se(I){let A=I;for(const g of Bo)if(A.endsWith(g)){A=A.slice(0,-g.length);break}return A}function oo(I,A,g){const e=A.name,t=A.adcode,r=A.level==="province"?2:4;return{type:"FeatureCollection",features:I.features.filter(E=>{const B=E.properties;if(B.parent&&String(B.parent)===e||B.parentName&&String(B.parentName)===e)return!0;const C=B.adcode??B.gb;if(t&&C){const a=Bi(String(t)),Q=Bi(String(C));if(Q.length>=r&&Q.slice(0,r)===a.slice(0,r)&&Q!==a)return!0}const s=se(e);return!!(B.province&&(String(B.province)===e||se(String(B.province))===s)||B.city&&(String(B.city)===e||se(String(B.city))===s))})}}function ro(I,A){const g=[];for(const e of I.features){if(!e.geometry||!e.properties)continue;const t=so(e.geometry);t&&g.push({lng:t[0],lat:t[1],[A]:e.properties[A]??e.properties.name??""})}return g.length===0?null:{data:g,sourceType:"json",sourceConfig:{x:"lng",y:"lat"}}}function so(I){const A=I.type,g=I.coordinates;if(!g)return null;if(A==="Point")return g;if(A==="Polygon")return oi(g);if(A==="MultiPolygon"){const e=g;let t=0,i=null;for(const r of e){const o=Math.abs(Qo(r[0]));o>t&&(t=o,i=oi(r))}return i}return null}function oi(I){const A=I[0];if(!A||A.length===0)return null;let g=0,e=0;const t=A.length;for(const i of A)g+=i[0],e+=i[1];return[g/t,e/t]}function Qo(I){let A=0;const g=I.length;for(let e=0;e<g;e++){const t=(e+1)%g;A+=I[e][0]*I[t][1],A-=I[t][0]*I[e][1]}return A/2}function Eo(I){let A=1/0,g=1/0,e=-1/0,t=-1/0;for(const i of I.features)ao(i.geometry,(r,o)=>{r<A&&(A=r),o<g&&(g=o),r>e&&(e=r),o>t&&(t=o)});return!isFinite(A)||!isFinite(g)?null:[[A,g],[e,t]]}function ao(I,A){const g=I.type,e=I.coordinates;if(e){if(g==="Point"){const[t,i]=e;A(t,i)}else if(g==="LineString"||g==="MultiPoint")for(const[t,i]of e)A(t,i);else if(g==="Polygon"||g==="MultiLineString")for(const t of e)for(const[i,r]of t)A(i,r);else if(g==="MultiPolygon")for(const t of e)for(const i of t)for(const[r,o]of i)A(r,o)}}const no=[["sunny","&#xe81a;"],["cloud","&#xf15c;"],["cloudy","&#xf15c;"],["partly_cloudy_day","&#xf172;"],["partly_cloudy_night","&#xf174;"],["rainy","&#xf176;"],["rainy_heavy","&#xf61f;"],["rainy_light","&#xf61e;"],["rainy_snow","&#xf61d;"],["thunderstorm","&#xebdb;"],["foggy","&#xe818;"],["air","&#xefd8;"],["water_drop","&#xe798;"],["ac_unit","&#xeb3b;"],["filter_drama","&#xe3dd;"],["cloudy_snowing","&#xe810;"],["snowing","&#xe80f;"],["snowflake","&#xed5b;"],["severe_cold","&#xebd3;"],["umbrella","&#xf1ad;"],["storm","&#xf070;"],["tornado","&#xe199;"],["thermostat","&#xf076;"],["heat","&#xf537;"],["hot","&#xef23;"],["flight","&#xe539;"],["flight_takeoff","&#xe905;"],["flight_land","&#xe904;"],["train","&#xe570;"],["directions_transit","&#xeffa;"],["directions_railway","&#xeff8;"],["directions_bus","&#xeff6;"],["directions_car","&#xeff7;"],["directions_boat","&#xeff5;"],["directions_bike","&#xe52f;"],["directions_walk","&#xe536;"],["directions_run","&#xe566;"],["taxi","&#xe559;"],["local_taxi","&#xe559;"],["local_airport","&#xe53d;"],["connecting_airports","&#xe7c9;"],["two_wheeler","&#xe9f9;"],["tram","&#xe571;"],["subway","&#xe56f;"],["ferry","&#xe572;"],["cable_car","&#xf479;"],["ev_station","&#xe56d;"],["local_gas_station","&#xe546;"],["location_on","&#xf1db;"],["place","&#xf1db;"],["room","&#xf1db;"],["pin","&#xf045;"],["pin_drop","&#xe55e;"],["near_me","&#xe569;"],["my_location","&#xe55c;"],["gps_fixed","&#xe55c;"],["navigation","&#xe55d;"],["explore","&#xe87a;"],["map","&#xe55b;"],["restaurant","&#xe56c;"],["local_cafe","&#xeb44;"],["coffee","&#xefef;"],["local_bar","&#xe540;"],["hotel","&#xe549;"],["local_hospital","&#xe548;"],["local_pharmacy","&#xe550;"],["local_atm","&#xe53e;"],["local_police","&#xef56;"],["local_fire_department","&#xef55;"],["local_post_office","&#xe554;"],["local_library","&#xe54b;"],["local_mall","&#xe54c;"],["local_grocery_store","&#xe8cc;"],["store","&#xe8d1;"],["school","&#xe80c;"],["church","&#xeaae;"],["mosque","&#xeab2;"],["synagogue","&#xeab0;"],["temple_buddhist","&#xeab3;"],["temple_hindu","&#xeaaf;"],["museum","&#xea36;"],["castle","&#xeab1;"],["stadium","&#xeb90;"],["theater_comedy","&#xea66;"],["pool","&#xeb48;"],["fitness_center","&#xeb43;"],["spa","&#xeb4c;"],["park","&#xea63;"],["forest","&#xea99;"],["attractions","&#xea52;"],["celebration","&#xea65;"],["festival","&#xea68;"],["nightlife","&#xea62;"],["sports","&#xea30;"],["sports_soccer","&#xea2f;"],["sports_basketball","&#xea26;"],["sports_football","&#xea29;"],["sports_tennis","&#xea32;"],["sports_golf","&#xea2a;"],["layers","&#xe53b;"],["layers_clear","&#xe53c;"],["terrain","&#xe564;"],["landscape","&#xe564;"],["share","&#xe80d;"],["favorite","&#xe87e;"],["star","&#xf09a;"],["home","&#xe9b2;"],["work","&#xe943;"],["person","&#xf0d3;"],["people","&#xea21;"],["trip","&#xe6fb;"],["warning","&#xf083;"],["emergency","&#xe1eb;"],["photo_camera","&#xe412;"],["shopping_bag","&#xf1cc;"],["search","&#xe8b6;"],["settings","&#xe8b8;"],["info","&#xe88e;"],["help","&#xe8fd;"],["close","&#xe5cd;"],["check","&#xe876;"],["add","&#xe145;"],["remove","&#xe15b;"],["edit","&#xe254;"],["delete","&#xe872;"],["refresh","&#xe5d5;"],["download","&#xe2c4;"],["upload","&#xe2c3;"],["visibility","&#xe8f4;"],["visibility_off","&#xe8f6;"]],ri=[["smallRain","&#xe6f7;"],["middleRain","&#xe61c;"],["hugeRain","&#xe6a6;"],["sun","&#xe6da;"],["cloud","&#xe8da;"]],si="Material Symbols Outlined",co="https://fonts.gstatic.com/s/materialsymbolsoutlined/v261/kJEhBvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oFsI.woff2",lo="iconfont",ho="//at.alicdn.com/t/font_2534097_ao9soua2obv.woff2?t=1622021146076",fo="M16 0C7.16344 0 0 7.16344 0 16C0 24.8366 16 40 16 40C16 40 32 24.8366 32 16C32 7.16344 24.8366 0 16 0Z";function uo(I){const A=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 40"><path d="${fo}" fill="${I}" stroke="white" stroke-width="1.5"/></svg>`;return`data:image/svg+xml,${encodeURIComponent(A)}`}function Do({source:I,sourceType:A="json",sourceConfig:g,iconField:e,iconFontFamily:t="material-symbols",iconFontPath:i,iconFontMap:r,iconColor:o="#3b82f6",iconSize:E=20,iconHaloColor:B="#fff",iconHaloWidth:C=1,iconStyle:s,iconAnchor:a="center",iconBgShape:Q="pin",iconBgShapeColor:n,iconBgShapeSize:f=24,iconBgStrokeColor:c,iconBgStrokeWidth:h=0,iconBgPadding:w=0,iconBgCornerRadius:D=0,showLabel:d=!0,labelField:y,labelColor:S="#333",labelSize:l=11,labelAnchor:G="top",labelOffset:F=[0,0],labelHaloColor:k="#fff",labelHaloWidth:m=2,labelStyle:M,textAllowOverlap:N=!1,iconAllowOverlap:b=!0,zoomAdaption:U=!0,zoomShowLabel:R=14,zoomDegradeToPoint:H=10,onClick:T,onMouseEnter:V,onMouseLeave:P,...q}){const v=uA(),[Z,K]=p.useState(!1),[O,x]=p.useState(!1),[W,_]=p.useState(!1),[gA,iA]=p.useState(14),AA=p.useRef(!1);p.useEffect(()=>{if(!v||Q!=="pin"||!n)return;const CA=uo(n);v.addImage("glyph-pin-bg",CA),_(!0)},[v,Q,n]);const{fontFamily:z,fontPath:eA,iconMappings:BA}=p.useMemo(()=>{switch(t){case"material-symbols":return{fontFamily:si,fontPath:co,iconMappings:no};case"iconfont":return{fontFamily:lo,fontPath:ho,iconMappings:ri};default:return{fontFamily:t,fontPath:i??null,iconMappings:r??[]}}},[t,i,r]);if(p.useEffect(()=>{if(!v||AA.current)return;AA.current=!0;let CA=!1;return(async()=>{eA&&v.addFontFace(z,eA),BA.length>0&&v.addIconFonts(BA);try{if(z===si){const oA=BA.slice(0,10).map(([,X])=>String.fromCharCode(parseInt(X.replace("&#x","").replace(";",""),16))).join("");await document.fonts.load(`${E}px "${z}"`,oA)}else eA&&await new Promise(oA=>{const X=setTimeout(()=>{oA()},3e3),hA=()=>{clearTimeout(X),v.off("fontloaded",hA),oA()};v.on("fontloaded",hA),document.fonts.load(`${E}px "${z}"`).then(()=>{clearTimeout(X),v.off("fontloaded",hA),oA()}).catch(()=>{clearTimeout(X),v.off("fontloaded",hA),oA()})})}catch{console.warn(`[GlyphLayer] 字体 "${z}" 加载超时,尝试继续渲染`)}try{const X=`${E}px "${z}"`;document.fonts.check(X,"X")||await document.fonts.ready}catch{}CA||K(!0)})(),()=>{CA=!0}},[v,z,eA,BA,E]),p.useEffect(()=>{if(!v)return;const CA=()=>x(!0);return v.loaded?CA():v.on("loaded",CA),()=>{v.off("loaded",CA)}},[v]),p.useEffect(()=>{if(!v||!U)return;const CA=()=>{iA(v.getZoom())};return CA(),v.on("zoomchange",CA),()=>{v.off("zoomchange",CA)}},[v,U]),!Z||!O||Q==="pin"&&n&&!W)return null;const IA=y??e,rA=!U||gA>=R;return U&&gA<H?u.jsx(kA,{source:I,sourceType:A,sourceConfig:g,shape:"circle",color:typeof o=="string"?o:"#3b82f6",size:4,style:{opacity:.7}}):u.jsxs(u.Fragment,{children:[u.jsx(kA,{...q,source:I,sourceType:A,sourceConfig:g,shapeField:e,shapeValues:"text",color:o,size:E,style:{fontFamily:z,iconfont:!0,textAllowOverlap:b,textAnchor:a,backgroundColor:n,backgroundPadding:w,backgroundRadius:D,backgroundShape:Q==="pin"?void 0:"circle",stroke:c,strokeWidth:h,...s??{}},onClick:T,onMouseEnter:V,onMouseLeave:P}),d&&rA&&u.jsx(kA,{source:I,sourceType:A,sourceConfig:g,shapeField:IA,shapeValues:"text",color:S,size:l,style:{textAnchor:G,textOffset:F,stroke:k,strokeWidth:m,fontWeight:"500",textAllowOverlap:N,...M??{}}})]})}function wo({source:I,sourceType:A="json",sourceConfig:g,iconField:e,iconMap:t,iconSize:i=24,iconAnchor:r="bottom",size:o,showLabel:E=!0,labelField:B,labelColor:C="#333",labelSize:s=12,labelAnchor:a="top",labelOffset:Q=[0,0],labelHaloColor:n="#fff",labelHaloWidth:f=2,labelStyle:c,textAllowOverlap:h=!1,iconAllowOverlap:w=!0,zoomAdaption:D=!0,zoomShowLabel:d=15,zoomDegradeToPoint:y=10,onClick:S,onMouseEnter:l,onMouseLeave:G,...F}){const k=uA(),[m,M]=p.useState(!1),[N,b]=p.useState(15),U=p.useMemo(()=>Object.keys(t),[t]),R=o??i,H=B??e;if(p.useEffect(()=>{k&&(U.forEach(P=>{k.addImage(P,t[P])}),M(!0))},[k,U,t]),p.useEffect(()=>{if(!k||!D)return;const P=()=>{b(k.getZoom())};return P(),k.on("zoomchange",P),()=>{k.off("zoomchange",P)}},[k,D]),!m)return null;const T=!D||N>=d;return D&&N<y?u.jsx(kA,{source:I,sourceType:A,sourceConfig:g,shape:"circle",color:F.color??"#3b82f6",size:6,style:{opacity:.8}}):u.jsxs(u.Fragment,{children:[u.jsx(kA,{source:I,sourceType:A,sourceConfig:g,shapeField:e,shapeValues:U,size:R,style:{...F.style??{},anchor:r,allowOverlap:w},onClick:S,onMouseEnter:l,onMouseLeave:G}),E&&T&&u.jsx(kA,{source:I,sourceType:A,sourceConfig:g,shapeField:H,shapeValues:"text",color:C,size:s,style:{textAnchor:a,textOffset:Q,stroke:n,strokeWidth:f,fontWeight:"500",textAllowOverlap:h,...c??{}}})]})}const yo={gaode:()=>"https://webst0{1-4}.is.autonavi.com/appmaptile?style=6&x={x}&y={y}&z={z}",google:()=>"https://gwxc.shipxy.com/tile.g?z={z}&x={x}&y={y}",tianditu:(I="4043dde46add842282bacc412299311d")=>`https://t{0-7}.tianditu.gov.cn/DataServer?T=img_w&X={x}&Y={y}&L={z}&tk=${I}`},So={gaode:"高德卫星",tianditu:"天地图卫星",google:"谷歌卫星"};function po({provider:I="gaode",zIndex:A=0,opacity:g=1,tiandituToken:e,visible:t=!0}){if(!t)return null;const i=yo[I](e);return u.jsx(Ot,{source:i,sourceType:"rasterTile",sourceConfig:{parser:{type:"rasterTile",tileSize:256,zoomOffset:1}},zIndex:A,opacity:g})}function Go({source:I,sourceType:A="json",sourceConfig:g,shape:e="arc",color:t="#2563EB",gradientColors:i,colorMode:r="single",colorField:o,colorValues:E,lineWidth:B=1.5,lineWidthRange:C,weightField:s="weight",opacity:a=.8,blur:Q=.6,animate:n=!1,animateSpeed:f=1,animateTrailLength:c=.3,animateDuration:h=2e3,showNodes:w=!0,nodeColor:D,nodeSize:d=4,nodeSizeRange:y,nodePulse:S=!1,activeColor:l="#FFD93D",onArcHover:G,onArcClick:F,onNodeClick:k,style:m}){const M=p.useMemo(()=>g??{x:"fromLng",y:"fromLat",x1:"toLng",y1:"toLat"},[g]),N=p.useMemo(()=>r==="gradient"&&i?i:t,[r,i,t]),b=p.useMemo(()=>B,[B,C]),U=p.useMemo(()=>{if(n)return{enable:!0,speed:f,duration:h,trailLength:c}},[n,f,h,c]),R=p.useMemo(()=>({opacity:a,blur:Q,...m}),[a,Q,m]),H=p.useMemo(()=>{if(!w||typeof I=="string")return[];const V=new Map,P=M.x??"fromLng",q=M.y??"fromLat",v=M.x1??"toLng",Z=M.y1??"toLat";return I.forEach(K=>{const O=`${K[P]}_${K[q]}`,x=`${K[v]}_${K[Z]}`;V.has(O)||V.set(O,{lng:Number(K[P]),lat:Number(K[q]),degree:0,name:K.fromName}),V.has(x)||V.set(x,{lng:Number(K[v]),lat:Number(K[Z]),degree:0,name:K.toName}),V.get(O).degree++,V.get(x).degree++}),Array.from(V.values())},[I,w,M]),T=D??t;return u.jsxs(u.Fragment,{children:[u.jsx(HA,{source:I,sourceType:A,sourceConfig:M,shape:e,color:N,colorField:r==="field"?o:void 0,colorValues:r==="field"?E:void 0,size:b,sizeField:C?s:void 0,sizeValues:C||void 0,animate:U,active:l?{color:l}:!1,style:R,onMouseMove:G,onClick:F}),w&&H.length>0&&u.jsx(kA,{source:H,sourceConfig:{x:"lng",y:"lat"},color:T,size:d,sizeField:y?"degree":void 0,sizeValues:y,shape:"circle",style:{opacity:.9,strokeWidth:1,stroke:"#fff"},animate:S?{enable:!0,speed:.6}:void 0,active:l?{color:l}:!1,onClick:k})]})}function Lo({path:I,segments:A,stops:g=[],color:e="#2563eb",lineWidth:t=4,opacity:i=.9,glow:r=!0,animate:o=!1,animateSpeed:E=1,stopSize:B=14,stopColor:C,endColor:s="#10b981",showStopIndex:a=!0,activeColor:Q="#fbbf24",onPathClick:n,onStopClick:f}){const c=p.useMemo(()=>A&&A.length>0?{type:"FeatureCollection",features:A.map((D,d)=>({type:"Feature",properties:{color:D.color||e,width:D.width||t,index:d},geometry:{type:"LineString",coordinates:D.coordinates}}))}:I&&I.length>1?{type:"FeatureCollection",features:[{type:"Feature",properties:{color:e,width:t},geometry:{type:"LineString",coordinates:I}}]}:null,[I,A,e,t]),h=A&&A.some(D=>D.color),w=p.useMemo(()=>g.map((D,d)=>({...D,index:D.index??d+1,type:D.type??(d===0?"start":d===g.length-1?"end":"waypoint"),stopColor:D.type==="end"||!D.type&&d===g.length-1?s:C??e})),[g,e,C,s]);return c?u.jsxs(u.Fragment,{children:[r&&u.jsx(HA,{source:c,sourceType:"geojson",shape:"line",color:h?void 0:e,colorField:h?"color":void 0,colorValues:h?A.map(D=>D.color||e):void 0,size:t*2.5,style:{opacity:.15}}),u.jsx(HA,{source:c,sourceType:"geojson",shape:"line",color:h?void 0:e,colorField:h?"color":void 0,colorValues:h?A.map(D=>D.color||e):void 0,size:h?void 0:t,sizeField:h?"width":void 0,sizeValues:h?A.map(D=>D.width||t):void 0,style:{opacity:i},animate:o?{enable:!0,speed:E,trailLength:.3,duration:2e3}:void 0,active:Q?{color:Q}:!1,onClick:n}),w.length>0&&u.jsx(kA,{source:w,sourceConfig:{x:"lng",y:"lat"},colorField:"stopColor",colorValues:[...new Set(w.map(D=>D.stopColor))],size:B,shape:"circle",style:{opacity:1,strokeWidth:2,stroke:"#ffffff"},active:Q?{color:Q}:!1,onClick:f})]}):null}const Qi=[73.482190241,3.8150178409999995,135.106618732,57.630045996],No={type:"linear",colors:["rgba(92,58,16,0)","rgba(92,58,16,0)","#fabd08","#f1e93f","#f1ff8f","#fcfff7"],positions:[0,3,9,22.5,45,90]};function Ei(I){const A=I[0]/2003750834e-2*180;let g=I[1]/2003750834e-2*180;return g=180/Math.PI*(2*Math.atan(Math.exp(g*Math.PI/180))-Math.PI/2),[A,g]}function ko({url:I,extent:A=Qi,renderMode:g="raster",bandIndex:e=0,domain:t=[0,90],noDataValue:i=0,rampColors:r=No,clampLow:o=!1,clampHigh:E=!1,bands:B=[0,1,2],countCut:C,rMinMax:s,gMinMax:a,bMinMax:Q,opacity:n=.8,mask:f=!1,maskData:c}){const[h,w]=p.useState(null),[D,d]=p.useState(null),[y,S]=p.useState(null);p.useEffect(()=>{let b=!1;async function U(){try{const R=await Promise.resolve().then(()=>Rs),H=await fetch(I);if(!H.ok)throw new Error(`Fetch failed: ${H.status}`);const T=await H.arrayBuffer(),P=await(await R.fromArrayBuffer(T)).getImage(),q=P.getWidth(),v=P.getHeight(),Z=await P.readRasters();let K;try{const O=P.getBoundingBox();O&&O.length===4&&(K=O)}catch{}b||(w({rasters:Z,width:q,height:v,tiffExtent:K}),S(null))}catch(R){b||(S(R instanceof Error?R.message:"Failed to load TIFF"),console.error("[TiffRasterLayer] Load error:",R))}}return U(),()=>{b=!0}},[I]),p.useEffect(()=>{if(!f||!c)return;let b=!1;return typeof c=="string"?fetch(c).then(U=>U.json()).then(U=>{b||d(U)}).catch(U=>console.error("[TiffRasterLayer] Mask load error:",U)):d(c),()=>{b=!0}},[f,c]);const l=p.useMemo(()=>{if(A!==Qi)return A;if(h!=null&&h.tiffExtent){const[b,U,R,H]=h.tiffExtent;if(Math.abs(b)>180||Math.abs(R)>180){const T=Ei([b,U]),V=Ei([R,H]);return[T[0],T[1],V[0],V[1]]}return h.tiffExtent}return A},[A,h==null?void 0:h.tiffExtent]),G=p.useMemo(()=>{if(!h)return null;if(g==="rgb"){const b={type:"rgb",width:h.width,height:h.height,bands:B,extent:l};return s&&(b.RMinMax=s),a&&(b.GMinMax=a),Q&&(b.BMinMax=Q),C&&(b.countCut=C),{parser:b}}return g==="ndi"?{parser:{type:"ndi",width:h.width,height:h.height,bands:B,extent:l}}:{parser:{type:"raster",width:h.width,height:h.height,extent:l}}},[h,g,B,l]),F=p.useMemo(()=>g==="rgb"?{opacity:n}:g==="ndi"?{domain:t,rampColors:r,opacity:n}:{clampLow:o,clampHigh:E,domain:t,noDataValue:i,rampColors:r,opacity:n},[g,o,E,t,i,r,n]),k=p.useMemo(()=>h?g==="rgb"||g==="ndi"?h.rasters:h.rasters[e]:null,[h,g,e]),m=uA(),M=p.useRef(null);p.useRef(!1);const N=!f||!!D;return p.useEffect(()=>{if(!m||!G||!k||!N)return;let b=!1;return(async()=>{const U=await import("@antv/l7");if(b)return;M.current&&(m.removeLayer(M.current),M.current=null);const R={zIndex:10};f&&D&&(R.mask=!0,R.maskfence=D);const H=new U.RasterLayer(R);H.source(k,{parser:G.parser}),H.style(F),m.addLayer(H),M.current=H})(),()=>{b=!0,M.current&&m&&(m.removeLayer(M.current),M.current=null)}},[m,G,k,N,D]),null}function Fo({children:I,defaultSnap:A="collapsed",collapsedHeight:g=80,halfRatio:e=.45,expandedRatio:t=.85,onSnapChange:i,className:r,showHandle:o=!0,borderRadius:E=32}){const B=p.useRef(null),C=p.useRef(0),s=p.useRef(0),a=p.useRef(!1),[Q,n]=p.useState(0),[f,c]=p.useState(A),[h,w]=p.useState(!1),D=p.useCallback(()=>{var m;const k=(m=B.current)==null?void 0:m.offsetParent;return k?k.clientHeight:window.innerHeight},[]),d=p.useCallback(k=>{const m=D();switch(k){case"collapsed":return g;case"half":return m*e;case"expanded":return m*t}},[g,e,t,D]);p.useEffect(()=>{n(d(A))},[A,d]);const y=p.useCallback((k,m)=>{const M=d("collapsed"),N=d("half"),b=d("expanded");let U;if(Math.abs(m)>.5)m>0?U=k>N?"expanded":"half":U=k<N?"collapsed":"half";else{const R=Math.abs(k-M),H=Math.abs(k-N),T=Math.abs(k-b),V=Math.min(R,H,T);V===R?U="collapsed":V===H?U="half":U="expanded"}w(!0),c(U),n(d(U)),i==null||i(U),setTimeout(()=>w(!1),300)},[d,i]),S=p.useCallback(k=>{a.current=!0,C.current=k.touches[0].clientY,s.current=Q,w(!1)},[Q]),l=p.useCallback(k=>{if(!a.current)return;const m=C.current-k.touches[0].clientY,M=D()*t,N=Math.max(g,Math.min(M,s.current+m));n(N)},[g,t,D]),G=p.useCallback(k=>{if(!a.current)return;a.current=!1;const M=(C.current-k.changedTouches[0].clientY)/100;y(Q,M)},[Q,y]),F=p.useCallback(k=>{a.current=!0,C.current=k.clientY,s.current=Q,w(!1);const m=N=>{if(!a.current)return;const b=C.current-N.clientY,U=D()*t,R=Math.max(g,Math.min(U,s.current+b));n(R)},M=N=>{a.current=!1;const U=(C.current-N.clientY)/100,R=D()*t;y(Math.max(g,Math.min(R,s.current+(C.current-N.clientY))),U),document.removeEventListener("mousemove",m),document.removeEventListener("mouseup",M)};document.addEventListener("mousemove",m),document.addEventListener("mouseup",M)},[Q,g,t,y,D]);return p.useCallback(k=>{w(!0),c(k),n(d(k)),i==null||i(k),setTimeout(()=>w(!1),300)},[d,i]),u.jsx("div",{ref:B,className:r,style:{position:"absolute",bottom:0,left:0,width:"100%",height:Q,zIndex:1e3,pointerEvents:"auto",transition:h?"height 0.3s cubic-bezier(0.4, 0, 0.2, 1)":"none",willChange:"height",touchAction:"none"},children:u.jsxs("div",{style:{width:"100%",height:"100%",background:"var(--color-surface, #f8f9ff)",borderTopLeftRadius:E,borderTopRightRadius:E,boxShadow:"0 -10px 40px rgba(0, 0, 0, 0.15)",borderTop:"1px solid rgba(195, 198, 215, 0.2)",display:"flex",flexDirection:"column",overflow:"hidden"},children:[u.jsx("div",{onTouchStart:S,onTouchMove:l,onTouchEnd:G,onMouseDown:F,style:{padding:"12px 0 16px",cursor:"grab",userSelect:"none",flexShrink:0},children:o&&u.jsx("div",{style:{width:48,height:6,borderRadius:3,background:"rgba(195, 198, 215, 0.5)",margin:"0 auto"}})}),u.jsx("div",{style:{flex:1,overflowY:f==="collapsed"?"hidden":"auto",overflowX:"hidden",padding:"0 16px",WebkitOverflowScrolling:"touch",msOverflowStyle:"none",scrollbarWidth:"none"},children:I})]})})}function mo({placeholder:I="搜索地点...",onSearch:A,onFilter:g,className:e,trailing:t}){const[i,r]=p.useState(""),o=p.useCallback(B=>{const C=B.target.value;r(C),A==null||A(C)},[A]),E=p.useCallback(()=>{r(""),A==null||A("")},[A]);return u.jsxs("div",{className:`glass-panel ${e??""}`,style:{display:"flex",alignItems:"center",padding:"12px 16px",borderRadius:16,boxShadow:"0 2px 8px rgba(0, 0, 0, 0.08)",border:"1px solid rgba(195, 198, 215, 0.3)"},children:[u.jsx("span",{className:"material-symbols-outlined",style:{color:"var(--color-primary, #004ac6)",marginRight:12,fontSize:22},children:"search"}),u.jsx("input",{type:"text",value:i,onChange:o,placeholder:I,style:{flex:1,border:"none",background:"transparent",outline:"none",fontSize:14,lineHeight:"20px",color:"var(--color-on-surface, #121c2a)"}}),i&&u.jsx("button",{onClick:E,style:{background:"none",border:"none",cursor:"pointer",padding:4,borderRadius:999,display:"flex",alignItems:"center",justifyContent:"center"},children:u.jsx("span",{className:"material-symbols-outlined",style:{fontSize:18,color:"var(--color-on-surface-variant, #434655)"},children:"close"})}),g&&u.jsx("button",{onClick:g,style:{background:"none",border:"none",cursor:"pointer",padding:4,borderRadius:999,display:"flex",alignItems:"center",justifyContent:"center",marginLeft:4},children:u.jsx("span",{className:"material-symbols-outlined",style:{fontSize:22,color:"var(--color-on-surface-variant, #434655)"},children:"tune"})}),t]})}function Qe(I,A){if(!A)return I;const g={...I};for(const e of Object.keys(A)){const t=A[e],i=g[e];t!==null&&typeof t=="object"&&!Array.isArray(t)&&i!==null&&typeof i=="object"&&!Array.isArray(i)?g[e]=Qe(i,t):t!==void 0&&(g[e]=t)}return g}function Ro(I,A){return A?Qe(I,A):I}class Uo extends p.Component{constructor(){super(...arguments),this.state={hasError:!1,error:null}}static getDerivedStateFromError(A){return{hasError:!0,error:A}}componentDidCatch(A,g){var e,t;(t=(e=this.props).onError)==null||t.call(e,A,g)}render(){if(this.state.hasError){const{fallback:A}=this.props,{error:g}=this.state;return typeof A=="function"?A(g):A||u.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",width:"100%",height:"100%",padding:32,color:"#666",fontFamily:"system-ui, sans-serif"},children:[u.jsx("span",{className:"material-symbols-outlined",style:{fontSize:48,marginBottom:16,color:"#e53e3e"},children:"error"}),u.jsx("p",{style:{fontSize:16,fontWeight:600,marginBottom:8},children:"地图加载失败"}),u.jsx("p",{style:{fontSize:13,color:"#999"},children:(g==null?void 0:g.message)??"未知错误"})]})}return this.props.children}}function yA(I){return(A,...g)=>Mo(I,A,g)}function ag(I,A){return yA(ai(I,A).get)}const{apply:Mo,getOwnPropertyDescriptor:ai,getPrototypeOf:Ee,ownKeys:Yo}=Reflect,{iterator:Mg,toStringTag:bo}=Symbol,Ho=Object,{create:ae,defineProperty:Ko}=Ho,ni=Array.prototype[Mg],xo=yA(ni),ci=ArrayBuffer,vo=ci.prototype;ag(vo,"byteLength");const li=typeof SharedArrayBuffer<"u"?SharedArrayBuffer:null;li&&ag(li.prototype,"byteLength");const hi=Ee(Uint8Array);hi.from;const SA=hi.prototype;SA[Mg],yA(SA.keys),yA(SA.values),yA(SA.entries),yA(SA.set),yA(SA.reverse),yA(SA.fill),yA(SA.copyWithin),yA(SA.sort),yA(SA.slice),yA(SA.subarray),ag(SA,"buffer"),ag(SA,"byteOffset"),ag(SA,"length"),ag(SA,bo);const Jo=Uint8Array,fi=Uint16Array,ne=Uint32Array,qo=Float32Array,Yg=Ee([][Mg]()),di=yA(Yg.next),To=yA((function*(){})().next),Oo=Ee(Yg),Vo=DataView.prototype,jo=yA(Vo.getUint16),ce=WeakMap,ui=ce.prototype,Di=yA(ui.get),Zo=yA(ui.set),wi=new ce,_o=ae(null,{next:{value:function(){const A=Di(wi,this);return di(A)}},[Mg]:{value:function(){return this}}});function Po(I){if(I[Mg]===ni&&Yg.next===di)return I;const A=ae(_o);return Zo(wi,A,xo(I)),A}const zo=new ce,Wo=ae(Oo,{next:{value:function(){const A=Di(zo,this);return To(A)},writable:!0,configurable:!0}});for(const I of Yo(Yg))I!=="next"&&Ko(Wo,I,ai(Yg,I));const yi=new ci(4),Xo=new qo(yi),$o=new ne(yi),KA=new fi(512),xA=new Jo(512);for(let I=0;I<256;++I){const A=I-127;A<-24?(KA[I]=0,KA[I|256]=32768,xA[I]=24,xA[I|256]=24):A<-14?(KA[I]=1024>>-A-14,KA[I|256]=1024>>-A-14|32768,xA[I]=-A-1,xA[I|256]=-A-1):A<=15?(KA[I]=A+15<<10,KA[I|256]=A+15<<10|32768,xA[I]=13,xA[I|256]=13):A<128?(KA[I]=31744,KA[I|256]=64512,xA[I]=24,xA[I|256]=24):(KA[I]=31744,KA[I|256]=64512,xA[I]=13,xA[I|256]=13)}const le=new ne(2048);for(let I=1;I<1024;++I){let A=I<<13,g=0;for(;(A&8388608)===0;)A<<=1,g-=8388608;A&=-8388609,g+=947912704,le[I]=A|g}for(let I=1024;I<2048;++I)le[I]=939524096+(I-1024<<13);const ng=new ne(64);for(let I=1;I<31;++I)ng[I]=I<<23;ng[31]=1199570944,ng[32]=2147483648;for(let I=33;I<63;++I)ng[I]=2147483648+(I-32<<23);ng[63]=3347054592;const Si=new fi(64);for(let I=1;I<64;++I)I!==32&&(Si[I]=1024);function Ar(I){const A=I>>10;return $o[0]=le[Si[A]+(I&1023)]+ng[A],Xo[0]}function pi(I,A,...g){return Ar(jo(I,A,...Po(g)))}function he(I,A,g){const e=typeof I=="object"?I.outer:I,t=e.slice(0,e.indexOf(">")+1),i=['"',"'"];for(let r=0;r<i.length;r++){const o=i[r],E=A+"\\="+o+"([^"+o+"]*)"+o,C=new RegExp(E).exec(t);if(C)return C[1]}}function gr(I,A,g){const t=new RegExp(A).exec(I.slice(g));return t?g+t.index:-1}function fe(I,A,g){const t=new RegExp(A).exec(I.slice(g));return t?g+t.index+t[0].length-1:-1}function Gi(I,A){const g=new RegExp(A,"g"),e=I.match(g);return e?e.length:0}function Ir(I,A,g){const e=g&&g.debug||!1,t=!(g&&typeof g.nested===!1),i=g&&g.startIndex||0;e&&console.log("[xml-utils] starting findTagByName with",A," and ",g);const r=gr(I,`<${A}[
31
- >/]`,i);if(e&&console.log("[xml-utils] start:",r),r===-1)return;const o=I.slice(r+A.length);let E=fe(o,"^[^<]*[ /]>",0);const B=E!==-1&&o[E-1]==="/";if(e&&console.log("[xml-utils] selfClosing:",B),B===!1)if(t){let Q=0,n=1,f=0;for(;(E=fe(o,"[ /]"+A+">",Q))!==-1;){const c=o.substring(Q,E+1);if(n+=Gi(c,"<"+A+`[
32
- >]`),f+=Gi(c,"</"+A+">"),f>=n)break;Q=E}}else E=fe(o,"[ /]"+A+">",0);const C=r+A.length+E+1;if(e&&console.log("[xml-utils] end:",C),C===-1)return;const s=I.slice(r,C);let a;return B?a=null:a=s.slice(s.indexOf(">")+1,s.lastIndexOf("<")),{inner:a,outer:s,start:r,end:C}}function er(I,A,g){const e=[];let i=0,r;for(;r=Ir(I,A,{debug:!1,startIndex:i});)i=r.start+1+A.length,e.push(r);return e}const Y={BYTE:1,ASCII:2,SHORT:3,LONG:4,RATIONAL:5,SBYTE:6,UNDEFINED:7,SSHORT:8,SLONG:9,SRATIONAL:10,FLOAT:11,DOUBLE:12,IFD:13,LONG8:16,SLONG8:17,IFD8:18},Li={[Y.BYTE]:1,[Y.ASCII]:1,[Y.SBYTE]:1,[Y.UNDEFINED]:1,[Y.SHORT]:2,[Y.SSHORT]:2,[Y.LONG]:4,[Y.SLONG]:4,[Y.FLOAT]:4,[Y.IFD]:4,[Y.RATIONAL]:8,[Y.SRATIONAL]:8,[Y.DOUBLE]:8,[Y.LONG8]:8,[Y.SLONG8]:8,[Y.IFD8]:8};function cg(I){const A=Li[I];if(A===void 0)throw new RangeError(`Invalid field type: ${I}`);return A}const Ni={NewSubfileType:{tag:254,type:Y.LONG,eager:!0},SubfileType:{tag:255,type:Y.SHORT,eager:!0},ImageWidth:{tag:256,type:Y.SHORT,eager:!0},ImageLength:{tag:257,type:Y.SHORT,eager:!0},BitsPerSample:{tag:258,type:Y.SHORT,isArray:!0,eager:!0},Compression:{tag:259,type:Y.SHORT,eager:!0},PhotometricInterpretation:{tag:262,type:Y.SHORT,eager:!0},Threshholding:{tag:263,type:Y.SHORT},CellWidth:{tag:264,type:Y.SHORT},CellLength:{tag:265,type:Y.SHORT},FillOrder:{tag:266,type:Y.SHORT},DocumentName:{tag:269,type:Y.ASCII},ImageDescription:{tag:270,type:Y.ASCII},Make:{tag:271,type:Y.ASCII},Model:{tag:272,type:Y.ASCII},StripOffsets:{tag:273,type:Y.SHORT,isArray:!0},Orientation:{tag:274,type:Y.SHORT},SamplesPerPixel:{tag:277,type:Y.SHORT,eager:!0},RowsPerStrip:{tag:278,type:Y.SHORT,eager:!0},StripByteCounts:{tag:279,type:Y.LONG,isArray:!0},MinSampleValue:{tag:280,type:Y.SHORT,isArray:!0},MaxSampleValue:{tag:281,type:Y.SHORT,isArray:!0},XResolution:{tag:282,type:Y.RATIONAL},YResolution:{tag:283,type:Y.RATIONAL},PlanarConfiguration:{tag:284,type:Y.SHORT,eager:!0},PageName:{tag:285,type:Y.ASCII},XPosition:{tag:286,type:Y.RATIONAL},YPosition:{tag:287,type:Y.RATIONAL},FreeOffsets:{tag:288,type:Y.LONG},FreeByteCounts:{tag:289,type:Y.LONG},GrayResponseUnit:{tag:290,type:Y.SHORT},GrayResponseCurve:{tag:291,type:Y.SHORT,isArray:!0},T4Options:{tag:292,type:Y.LONG},T6Options:{tag:293,type:Y.LONG},ResolutionUnit:{tag:296,type:Y.SHORT},PageNumber:{tag:297,type:Y.SHORT,isArray:!0},TransferFunction:{tag:301,type:Y.SHORT,isArray:!0},Software:{tag:305,type:Y.ASCII},DateTime:{tag:306,type:Y.ASCII},Artist:{tag:315,type:Y.ASCII},HostComputer:{tag:316,type:Y.ASCII},Predictor:{tag:317,type:Y.SHORT},WhitePoint:{tag:318,type:Y.RATIONAL,isArray:!0},PrimaryChromaticities:{tag:319,type:Y.RATIONAL,isArray:!0},ColorMap:{tag:320,type:Y.SHORT,isArray:!0},HalftoneHints:{tag:321,type:Y.SHORT,isArray:!0},TileWidth:{tag:322,type:Y.SHORT,eager:!0},TileLength:{tag:323,type:Y.SHORT,eager:!0},TileOffsets:{tag:324,type:Y.LONG,isArray:!0},TileByteCounts:{tag:325,type:Y.SHORT,isArray:!0},InkSet:{tag:332,type:Y.SHORT},InkNames:{tag:333,type:Y.ASCII},NumberOfInks:{tag:334,type:Y.SHORT},DotRange:{tag:336,type:Y.BYTE,isArray:!0},TargetPrinter:{tag:337,type:Y.ASCII},ExtraSamples:{tag:338,type:Y.BYTE,isArray:!0,eager:!0},SampleFormat:{tag:339,type:Y.SHORT,isArray:!0,eager:!0},SMinSampleValue:{tag:340,isArray:!0},SMaxSampleValue:{tag:341,isArray:!0},TransferRange:{tag:342,type:Y.SHORT,isArray:!0},JPEGProc:{tag:512,type:Y.SHORT},JPEGInterchangeFormat:{tag:513,type:Y.LONG},JPEGInterchangeFormatLngth:{tag:514,type:Y.LONG},JPEGRestartInterval:{tag:515,type:Y.SHORT},JPEGLosslessPredictors:{tag:517,type:Y.SHORT,isArray:!0},JPEGPointTransforms:{tag:518,type:Y.SHORT,isArray:!0},JPEGQTables:{tag:519,type:Y.LONG,isArray:!0},JPEGDCTables:{tag:520,type:Y.LONG,isArray:!0},JPEGACTables:{tag:521,type:Y.LONG,isArray:!0},YCbCrCoefficients:{tag:529,type:Y.RATIONAL,isArray:!0},YCbCrSubSampling:{tag:530,type:Y.SHORT,isArray:!0},YCbCrPositioning:{tag:531,type:Y.SHORT},ReferenceBlackWhite:{tag:532,type:Y.LONG,isArray:!0},Copyright:{tag:33432,type:Y.ASCII},BadFaxLines:{tag:326},CleanFaxData:{tag:327},ClipPath:{tag:343},ConsecutiveBadFaxLines:{tag:328},Decode:{tag:433},DefaultImageColor:{tag:434},Indexed:{tag:346},JPEGTables:{tag:347,isArray:!0,eager:!0},StripRowCounts:{tag:559,isArray:!0},SubIFDs:{tag:330,isArray:!0},XClipPathUnits:{tag:344},YClipPathUnits:{tag:345},ApertureValue:{tag:37378},ColorSpace:{tag:40961},DateTimeDigitized:{tag:36868},DateTimeOriginal:{tag:36867},ExifIFD:{tag:34665,name:"Exif IFD",type:Y.LONG},ExifVersion:{tag:36864},ExposureTime:{tag:33434},FileSource:{tag:41728},Flash:{tag:37385},FlashpixVersion:{tag:40960},FNumber:{tag:33437},ImageUniqueID:{tag:42016},LightSource:{tag:37384},MakerNote:{tag:37500},ShutterSpeedValue:{tag:37377},UserComment:{tag:37510},IPTC:{tag:33723},CZ_LSMINFO:{tag:34412},ICCProfile:{tag:34675,name:"ICC Profile"},XMP:{tag:700},GDAL_METADATA:{tag:42112},GDAL_NODATA:{tag:42113,type:Y.ASCII,eager:!0},Photoshop:{tag:34377},ModelPixelScale:{tag:33550,type:Y.DOUBLE,isArray:!0,eager:!0},ModelTiepoint:{tag:33922,type:Y.DOUBLE,isArray:!0,eager:!0},ModelTransformation:{tag:34264,type:Y.DOUBLE,isArray:!0,eager:!0},GeoKeyDirectory:{tag:34735,type:Y.SHORT,isArray:!0,eager:!0},GeoDoubleParams:{tag:34736,type:Y.DOUBLE,isArray:!0,eager:!0},GeoAsciiParams:{tag:34737,type:Y.ASCII,eager:!0},LercParameters:{tag:50674,eager:!0}},II={},ig={};function de(I,A,g,e=!1,t=!1){II[A]=I,ig[I]={tag:I,name:A,type:typeof g=="string"?Y[g]:g,isArray:e,eager:t}}for(const[I,A]of Object.entries(Ni)){const g=A;de(g.tag,g.name||I,g.type,g.isArray,g.eager)}function lg(I){return typeof I=="number"?I:II[I]}function tr(I){return ig[lg(I)]}const ue={256:"SHORT",257:"SHORT",258:"SHORT",259:"SHORT",262:"SHORT",270:"ASCII",271:"ASCII",272:"ASCII",273:"LONG",274:"SHORT",277:"SHORT",278:"LONG",279:"LONG",282:"RATIONAL",283:"RATIONAL",284:"SHORT",286:"SHORT",287:"RATIONAL",296:"SHORT",297:"SHORT",305:"ASCII",306:"ASCII",315:"ASCII",338:"SHORT",339:"SHORT",513:"LONG",514:"LONG",1024:"SHORT",1025:"SHORT",1026:"ASCII",2048:"SHORT",2049:"ASCII",2052:"SHORT",2054:"SHORT",2057:"DOUBLE",2059:"DOUBLE",2060:"SHORT",3072:"SHORT",3073:"ASCII",3076:"SHORT",4096:"SHORT",4097:"ASCII",4099:"SHORT",33432:"ASCII",33550:"DOUBLE",33922:"DOUBLE",34264:"DOUBLE",34665:"LONG",34735:"SHORT",34736:"DOUBLE",34737:"ASCII",42113:"ASCII"},GA={WhiteIsZero:0,BlackIsZero:1,RGB:2,Palette:3,TransparencyMask:4,CMYK:5,YCbCr:6,CIELab:8,ICCLab:9},ki={Unspecified:0,Assocalpha:1,Unassalpha:2},Fi={Version:0,AddCompression:1},eI={None:0,Deflate:1,Zstandard:2},tI={1024:"GTModelTypeGeoKey",1025:"GTRasterTypeGeoKey",1026:"GTCitationGeoKey",2048:"GeographicTypeGeoKey",2049:"GeogCitationGeoKey",2050:"GeogGeodeticDatumGeoKey",2051:"GeogPrimeMeridianGeoKey",2052:"GeogLinearUnitsGeoKey",2053:"GeogLinearUnitSizeGeoKey",2054:"GeogAngularUnitsGeoKey",2055:"GeogAngularUnitSizeGeoKey",2056:"GeogEllipsoidGeoKey",2057:"GeogSemiMajorAxisGeoKey",2058:"GeogSemiMinorAxisGeoKey",2059:"GeogInvFlatteningGeoKey",2060:"GeogAzimuthUnitsGeoKey",2061:"GeogPrimeMeridianLongGeoKey",2062:"GeogTOWGS84GeoKey",3072:"ProjectedCSTypeGeoKey",3073:"PCSCitationGeoKey",3074:"ProjectionGeoKey",3075:"ProjCoordTransGeoKey",3076:"ProjLinearUnitsGeoKey",3077:"ProjLinearUnitSizeGeoKey",3078:"ProjStdParallel1GeoKey",3079:"ProjStdParallel2GeoKey",3080:"ProjNatOriginLongGeoKey",3081:"ProjNatOriginLatGeoKey",3082:"ProjFalseEastingGeoKey",3083:"ProjFalseNorthingGeoKey",3084:"ProjFalseOriginLongGeoKey",3085:"ProjFalseOriginLatGeoKey",3086:"ProjFalseOriginEastingGeoKey",3087:"ProjFalseOriginNorthingGeoKey",3088:"ProjCenterLongGeoKey",3089:"ProjCenterLatGeoKey",3090:"ProjCenterEastingGeoKey",3091:"ProjCenterNorthingGeoKey",3092:"ProjScaleAtNatOriginGeoKey",3093:"ProjScaleAtCenterGeoKey",3094:"ProjAzimuthAngleGeoKey",3095:"ProjStraightVertPoleLongGeoKey",3096:"ProjRectifiedGridAngleGeoKey",4096:"VerticalCSTypeGeoKey",4097:"VerticalCitationGeoKey",4098:"VerticalDatumGeoKey",4099:"VerticalUnitsGeoKey"},mi={};for(const[I,A]of Object.entries(tI))mi[A]=parseInt(I,10);const ir=Object.freeze(Object.defineProperty({__proto__:null,ExtraSamplesValues:ki,LercAddCompression:eI,LercParameters:Fi,fieldTagTypes:ue,fieldTypeSizes:Li,fieldTypes:Y,geoKeyNames:tI,geoKeys:mi,getFieldTypeSize:cg,getTag:tr,photometricInterpretations:GA,registerTag:de,resolveTag:lg,tagDefinitions:ig,tagDictionary:Ni,tags:II},Symbol.toStringTag,{value:"Module"}));function Ri(I,A){const{width:g,height:e}=I,t=new Uint8Array(g*e*3);let i;for(let r=0,o=0;r<I.length;++r,o+=3)i=256-I[r]/A*256,t[o]=i,t[o+1]=i,t[o+2]=i;return t}function Ui(I,A){const{width:g,height:e}=I,t=new Uint8Array(g*e*3);let i;for(let r=0,o=0;r<I.length;++r,o+=3)i=I[r]/A*256,t[o]=i,t[o+1]=i,t[o+2]=i;return t}function Mi(I,A){const{width:g,height:e}=I,t=new Uint8Array(g*e*3),i=A.length/3,r=A.length/3*2;for(let o=0,E=0;o<I.length;++o,E+=3){const B=I[o];t[E]=A[B]/65536*256,t[E+1]=A[B+i]/65536*256,t[E+2]=A[B+r]/65536*256}return t}function Yi(I){const{width:A,height:g}=I,e=new Uint8Array(A*g*3);for(let t=0,i=0;t<I.length;t+=4,i+=3){const r=I[t],o=I[t+1],E=I[t+2],B=I[t+3];e[i]=255*((255-r)/256)*((255-B)/256),e[i+1]=255*((255-o)/256)*((255-B)/256),e[i+2]=255*((255-E)/256)*((255-B)/256)}return e}function bi(I){const{width:A,height:g}=I,e=new Uint8ClampedArray(A*g*3);for(let t=0,i=0;t<I.length;t+=3,i+=3){const r=I[t],o=I[t+1],E=I[t+2];e[i]=r+1.402*(E-128),e[i+1]=r-.34414*(o-128)-.71414*(E-128),e[i+2]=r+1.772*(o-128)}return e}const Cr=.95047,Br=1,or=1.08883;function Hi(I){const{width:A,height:g}=I,e=new Uint8Array(A*g*3);for(let t=0,i=0;t<I.length;t+=3,i+=3){const r=I[t+0],o=I[t+1]<<24>>24,E=I[t+2]<<24>>24;let B=(r+16)/116,C=o/500+B,s=B-E/200,a,Q,n;C=Cr*(C*C*C>.008856?C*C*C:(C-.13793103448275862)/7.787),B=Br*(B*B*B>.008856?B*B*B:(B-.13793103448275862)/7.787),s=or*(s*s*s>.008856?s*s*s:(s-.13793103448275862)/7.787),a=C*3.2406+B*-1.5372+s*-.4986,Q=C*-.9689+B*1.8758+s*.0415,n=C*.0557+B*-.204+s*1.057,a=a>.0031308?1.055*a**.4166666666666667-.055:12.92*a,Q=Q>.0031308?1.055*Q**.4166666666666667-.055:12.92*Q,n=n>.0031308?1.055*n**.4166666666666667-.055:12.92*n,e[i]=Math.max(0,Math.min(1,a))*255,e[i+1]=Math.max(0,Math.min(1,Q))*255,e[i+2]=Math.max(0,Math.min(1,n))*255}return e}const rr=Object.freeze(Object.defineProperty({__proto__:null,fromBlackIsZero:Ui,fromCIELab:Hi,fromCMYK:Yi,fromPalette:Mi,fromWhiteIsZero:Ri,fromYCbCr:bi},Symbol.toStringTag,{value:"Module"})),Cg=new Map;async function iI(I){const A=!I.hasTag("StripOffsets");return{tileWidth:A?await I.loadValue("TileWidth"):await I.loadValue("ImageWidth"),tileHeight:A?await I.loadValue("TileLength"):await I.loadValue("RowsPerStrip")||await I.loadValue("ImageLength"),planarConfiguration:await I.loadValue("PlanarConfiguration"),bitsPerSample:await I.loadValue("BitsPerSample"),predictor:await I.loadValue("Predictor")||1}}function Ki(I,A,g=iI,e=!0){Array.isArray(I)||(I=[I]),I.forEach(t=>{Cg.set(t,{importFn:A,decoderParameterFn:g,preferWorker:e})})}async function sr(I,A){if(!Cg.has(I))throw new Error(`Unknown compression method identifier: ${I}`);const{decoderParameterFn:g}=Cg.get(I);return g(A)}async function De(I,A){if(!Cg.has(I))throw new Error(`Unknown compression method identifier: ${I}`);const{importFn:g}=Cg.get(I),e=await g();return new e(A)}function Qr(I){if(!Cg.has(I))throw new Error(`Unknown compression method identifier: ${I}`);return Cg.get(I).preferWorker}const Er=[{cases:[void 0,1],importFn:()=>Promise.resolve().then(()=>Ms).then(I=>I.default),preferWorker:!1},{cases:5,importFn:()=>Promise.resolve().then(()=>xs).then(I=>I.default)},{cases:6,importFn:()=>{throw new Error("old style JPEG compression is not supported.")}},{cases:7,importFn:()=>Promise.resolve().then(()=>Os).then(I=>I.default),decoderParameterFn:async I=>({...await iI(I),JPEGTables:await I.loadValue("JPEGTables")})},{cases:[8,32946],importFn:()=>Promise.resolve().then(()=>AE).then(I=>I.default)},{cases:32773,importFn:()=>Promise.resolve().then(()=>IE).then(I=>I.default)},{cases:34887,importFn:()=>Promise.resolve().then(()=>oE).then(async I=>(await I.zstd.init(),I)).then(I=>I.default),decoderParameterFn:async I=>({...await iI(I),LercParameters:await I.loadValue("LercParameters")})},{cases:5e4,importFn:()=>Promise.resolve().then(()=>QE).then(async I=>(await I.zstd.init(),I)).then(I=>I.default)},{cases:50001,importFn:()=>Promise.resolve().then(()=>aE).then(I=>I.default),decoderParameterFn:async I=>({...await iI(I),samplesPerPixel:Number(await I.loadValue("SamplesPerPixel"))||4}),preferWorker:!1}];for(const I of Er){const{cases:A,importFn:g,decoderParameterFn:e,preferWorker:t}=I;Ki(A,g,e,t)}function CI(I,A,g,e=1){return new(Object.getPrototypeOf(I)).constructor(A*g*e)}function ar(I,A,g,e,t){const i=A/e,r=g/t;return I.map(o=>{const E=CI(o,e,t);for(let B=0;B<t;++B){const C=Math.min(Math.round(r*B),g-1);for(let s=0;s<e;++s){const a=Math.min(Math.round(i*s),A-1),Q=o[C*A+a];E[B*e+s]=Q}}return E})}function hg(I,A,g){return(1-g)*I+g*A}function nr(I,A,g,e,t){const i=A/e,r=g/t;return I.map(o=>{const E=CI(o,e,t);for(let B=0;B<t;++B){const C=r*B,s=Math.floor(C),a=Math.min(Math.ceil(C),g-1);for(let Q=0;Q<e;++Q){const n=i*Q,f=n%1,c=Math.floor(n),h=Math.min(Math.ceil(n),A-1),w=o[s*A+c],D=o[s*A+h],d=o[a*A+c],y=o[a*A+h],S=hg(hg(w,D,f),hg(d,y,f),C%1);E[B*e+Q]=S}}return E})}function cr(I,A,g,e,t,i="nearest"){switch(i.toLowerCase()){case"nearest":return ar(I,A,g,e,t);case"bilinear":case"linear":return nr(I,A,g,e,t);default:throw new Error(`Unsupported resampling method: '${i}'`)}}function lr(I,A,g,e,t,i){const r=A/e,o=g/t,E=CI(I,e,t,i);for(let B=0;B<t;++B){const C=Math.min(Math.round(o*B),g-1);for(let s=0;s<e;++s){const a=Math.min(Math.round(r*s),A-1);for(let Q=0;Q<i;++Q){const n=I[C*A*i+a*i+Q];E[B*e*i+s*i+Q]=n}}}return E}function hr(I,A,g,e,t,i){const r=A/e,o=g/t,E=CI(I,e,t,i);for(let B=0;B<t;++B){const C=o*B,s=Math.floor(C),a=Math.min(Math.ceil(C),g-1);for(let Q=0;Q<e;++Q){const n=r*Q,f=n%1,c=Math.floor(n),h=Math.min(Math.ceil(n),A-1);for(let w=0;w<i;++w){const D=I[s*A*i+c*i+w],d=I[s*A*i+h*i+w],y=I[a*A*i+c*i+w],S=I[a*A*i+h*i+w],l=hg(hg(D,d,f),hg(y,S,f),C%1);E[B*e*i+Q*i+w]=l}}}return E}function fr(I,A,g,e,t,i,r="nearest"){switch(r.toLowerCase()){case"nearest":return lr(I,A,g,e,t,i);case"bilinear":case"linear":return hr(I,A,g,e,t,i);default:throw new Error(`Unsupported resampling method: '${r}'`)}}function dr(I,A,g){let e=0;for(let t=A;t<g;++t)e+=I[t];return e}function we(I,A,g){let e;switch(I){case 1:A<=8?e=Uint8Array:A<=16?e=Uint16Array:A<=32&&(e=Uint32Array);break;case 2:A===8?e=Int8Array:A===16?e=Int16Array:A===32&&(e=Int32Array);break;case 3:switch(A){case 16:case 32:e=Float32Array;break;case 64:e=Float64Array;break}break}if(e){if(typeof g=="number")return new e(g);if(g instanceof ArrayBuffer)return new e(g)}throw Error("Unsupported data format/bitsPerSample")}function ur(I,A){return(I===1||I===2)&&A<=32&&A%8===0?!1:!(I===3&&(A===16||A===32||A===64))}function Dr(I,A,g,e,t,i,r){const o=new DataView(I),E=g===2?r*i:r*i*e,B=g===2?1:e,C=we(A,t,E),s=parseInt("1".repeat(t),2);if(A===1){let a;g===1?a=e*t:a=t;let Q=i*a;(Q&7)!==0&&(Q=Q+7&-8);for(let n=0;n<r;++n){const f=n*Q;for(let c=0;c<i;++c){const h=f+c*B*t;for(let w=0;w<B;++w){const D=h+w*t,d=(n*i+c)*B+w,y=Math.floor(D/8),S=D%8;if(S+t<=8)C[d]=o.getUint8(y)>>8-t-S&s;else if(S+t<=16)C[d]=o.getUint16(y)>>16-t-S&s;else if(S+t<=24){const l=o.getUint16(y)<<8|o.getUint8(y+2);C[d]=l>>24-t-S&s}else C[d]=o.getUint32(y)>>32-t-S&s}}}}return C.buffer}class ye{constructor(A,g,e,t){this.fileDirectory=A,this.littleEndian=g,this.tiles=e?[]:null,this.isTiled=!A.hasTag("StripOffsets");const i=A.getValue("PlanarConfiguration")??1;if(i!==1&&i!==2)throw new Error("Invalid planar configuration.");this.planarConfiguration=i,this.source=t}getFileDirectory(){return this.fileDirectory}getGeoKeys(){return this.fileDirectory.parseGeoKeyDirectory()}getWidth(){return this.fileDirectory.getValue("ImageWidth")||0}getHeight(){return this.fileDirectory.getValue("ImageLength")||0}getSamplesPerPixel(){return this.fileDirectory.getValue("SamplesPerPixel")??1}getTileWidth(){return this.isTiled?this.fileDirectory.getValue("TileWidth")||0:this.getWidth()}getTileHeight(){if(this.isTiled)return this.fileDirectory.getValue("TileLength")||0;const A=this.fileDirectory.hasTag("RowsPerStrip")&&this.fileDirectory.getValue("RowsPerStrip");return A?Math.min(A,this.getHeight()):this.getHeight()}getBlockWidth(){return this.getTileWidth()}getBlockHeight(A){return this.isTiled||(A+1)*this.getTileHeight()<=this.getHeight()?this.getTileHeight():this.getHeight()-A*this.getTileHeight()}getBytesPerPixel(){let A=0;const g=this.fileDirectory.getValue("BitsPerSample")||[];for(let e=0;e<g.length;++e)A+=this.getSampleByteSize(e);return A}getSampleByteSize(A){const g=this.fileDirectory.getValue("BitsPerSample")||[];if(A>=g.length)throw new RangeError(`Sample index ${A} is out of range.`);return Math.ceil(g[A]/8)}getReaderForSample(A){const g=this.fileDirectory.getValue("SampleFormat"),e=g?g[A]:1,t=(this.fileDirectory.getValue("BitsPerSample")||[])[A];switch(e){case 1:if(t<=8)return DataView.prototype.getUint8;if(t<=16)return DataView.prototype.getUint16;if(t<=32)return DataView.prototype.getUint32;break;case 2:if(t<=8)return DataView.prototype.getInt8;if(t<=16)return DataView.prototype.getInt16;if(t<=32)return DataView.prototype.getInt32;break;case 3:switch(t){case 16:return function(i,r){return pi(this,i,r)};case 32:return DataView.prototype.getFloat32;case 64:return DataView.prototype.getFloat64}break}throw Error("Unsupported data format/bitsPerSample")}getSampleFormat(A=0){const g=this.fileDirectory.getValue("SampleFormat");return g?g[A]:1}getBitsPerSample(A=0){const g=this.fileDirectory.getValue("BitsPerSample");return g?g[A]:0}getArrayForSample(A,g){const e=this.getSampleFormat(A),t=this.getBitsPerSample(A);return we(e,t,g)}async getTileOrStrip(A,g,e,t,i){const r=Math.ceil(this.getWidth()/this.getTileWidth()),o=Math.ceil(this.getHeight()/this.getTileHeight());let E;const{tiles:B}=this;if(this.planarConfiguration===1?E=g*r+A:this.planarConfiguration===2&&(E=e*r*o+g*r+A),E===void 0)throw new Error("Could not determine tile or strip index.");let C,s;if(this.isTiled?(C=Number(await this.fileDirectory.loadValueIndexed("TileOffsets",E)),s=Number(await this.fileDirectory.loadValueIndexed("TileByteCounts",E))):(C=Number(await this.fileDirectory.loadValueIndexed("StripOffsets",E)),s=Number(await this.fileDirectory.loadValueIndexed("StripByteCounts",E))),s===0){const n=this.getBlockHeight(g)*this.getTileWidth(),f=this.planarConfiguration===2?this.getSampleByteSize(e):this.getBytesPerPixel(),c=new ArrayBuffer(n*f);return this.getArrayForSample(e,c).fill(this.getGDALNoData()||0),{x:A,y:g,sample:e,data:c}}const a=(await this.source.fetch([{offset:C,length:s}],i))[0];let Q;return B===null||!B[E]?(Q=(async()=>{let n=await t.decode(a);const f=this.getSampleFormat(),c=this.getBitsPerSample();return ur(f,c)&&(n=Dr(n,f,this.planarConfiguration,this.getSamplesPerPixel(),c,this.getTileWidth(),this.getBlockHeight(g))),n})(),B!==null&&(B[E]=Q)):Q=B[E],{x:A,y:g,sample:e,data:await Q}}async _readRaster(A,g,e,t,i,r,o,E,B){const C=this.getTileWidth(),s=this.getTileHeight(),a=this.getWidth(),Q=this.getHeight(),n=Math.max(Math.floor(A[0]/C),0),f=Math.min(Math.ceil(A[2]/C),Math.ceil(a/C)),c=Math.max(Math.floor(A[1]/s),0),h=Math.min(Math.ceil(A[3]/s),Math.ceil(Q/s)),w=A[2]-A[0];let D=this.getBytesPerPixel();const d=[],y=[];for(let F=0;F<g.length;++F){if(this.planarConfiguration===1){const k=await this.fileDirectory.loadValue("BitsPerSample");if(typeof k!="object")throw new Error("Expected BitsPerSample to be an array or typed array.");d.push(dr(k,0,g[F])/8)}else d.push(0);y.push(this.getReaderForSample(g[F]))}const S=[],{littleEndian:l}=this;for(let F=c;F<h;++F)for(let k=n;k<f;++k){let m;this.planarConfiguration===1&&(m=this.getTileOrStrip(k,F,0,i,B));for(let M=0;M<g.length;++M){const N=M,b=g[M];if(this.planarConfiguration===2&&(D=this.getSampleByteSize(b),m=this.getTileOrStrip(k,F,b,i,B)),!m)throw new Error("Could not get tile or strip data.");const U=m.then(R=>{const H=R.data,T=new DataView(H),V=this.getBlockHeight(R.y),P=R.y*s,q=R.x*C,v=P+V,Z=(R.x+1)*C,K=y[N],O=Math.min(V,V-(v-A[3]),Q-P),x=Math.min(C,C-(Z-A[2]),a-q);for(let W=Math.max(0,A[1]-P);W<O;++W)for(let _=Math.max(0,A[0]-q);_<x;++_){const gA=(W*C+_)*D,iA=K.call(T,gA+d[N],l);let AA;t?(AA=(W+P-A[1])*w*g.length+(_+q-A[0])*g.length+N,e[AA]=iA):(AA=(W+P-A[1])*w+_+q-A[0],e[N][AA]=iA)}});S.push(U)}}if(await Promise.all(S),r&&A[2]-A[0]!==r||o&&A[3]-A[1]!==o){let F;t?F=fr(e,A[2]-A[0],A[3]-A[1],r,o,g.length,E):F=cr(e,A[2]-A[0],A[3]-A[1],r,o,E);const k=F;return k.width=r??A[2]-A[0],k.height=o??A[3]-A[1],k}const G=e;return G.width=r||A[2]-A[0],G.height=o||A[3]-A[1],G}async readRasters(A={}){const{window:g,samples:e=[],pool:t=null,width:i,height:r,resampleMethod:o,fillValue:E,signal:B}=A,C="interleave"in A&&A.interleave,s=g||[0,0,this.getWidth(),this.getHeight()];if(s[0]>s[2]||s[1]>s[3])throw new Error("Invalid subsets");const a=s[2]-s[0],Q=s[3]-s[1],n=a*Q,f=this.getSamplesPerPixel();if(!e||!e.length)for(let y=0;y<f;++y)e.push(y);else for(let y=0;y<e.length;++y)if(e[y]>=f)return Promise.reject(new RangeError(`Invalid sample index '${e[y]}'.`));let c;if(C){const{fileDirectory:y}=this,S=y.getValue("SampleFormat"),l=S?Math.max.apply(null,Array.from(S)):1;if(l!==1&&l!==2&&l!==3)throw new Error("Unsupported sample format for interleaved data. Must be 1, 2, or 3.");const G=y.getValue("BitsPerSample"),F=G?Math.max.apply(null,Array.from(G)):8;if(c=we(l,F,n*e.length),E){if(Array.isArray(E))throw new Error("When reading interleaved data, fillValue must be a single number.");c.fill(E)}}else{c=[];for(let y=0;y<e.length;++y){const S=this.getArrayForSample(e[y],n);Array.isArray(E)&&y<E.length?S.fill(E[y]):E&&!Array.isArray(E)&&S.fill(E),c.push(S)}}const h=this.fileDirectory.getValue("Compression")||1,w=await sr(h,this.fileDirectory),D=t?t.bindParameters(h,w):await De(h,w);return await this._readRaster(s,e,c,C,D,i,r,o,B)}async readRGB(A={}){const{window:g,pool:e=null,width:t,height:i,resampleMethod:r,enableAlpha:o=!1,signal:E}=A,B=("interleave"in A&&A.interleave)??!1,C=g||[0,0,this.getWidth(),this.getHeight()];if(C[0]>C[2]||C[1]>C[3])throw new Error("Invalid subsets");const s=this.fileDirectory.getValue("PhotometricInterpretation");if(s===GA.RGB){let D=[0,1,2];const d=this.fileDirectory.getValue("ExtraSamples");if(d&&d[0]!==ki.Unspecified&&o){D=[];const y=this.fileDirectory.getValue("BitsPerSample")||[];for(let S=0;S<y.length;S+=1)D.push(S)}return this.readRasters({window:g,interleave:B,samples:D,pool:e,width:t,height:i,resampleMethod:r,signal:E})}let a;switch(s){case GA.WhiteIsZero:case GA.BlackIsZero:case GA.Palette:a=[0];break;case GA.CMYK:a=[0,1,2,3];break;case GA.YCbCr:case GA.CIELab:a=[0,1,2];break;default:throw new Error("Invalid or unsupported photometric interpretation.")}const Q={window:C,interleave:!0,samples:a,pool:e,width:t,height:i,resampleMethod:r,signal:E},{fileDirectory:n}=this,f=await this.readRasters(Q),c=2**this.getBitsPerSample(0);let h;switch(s){case GA.WhiteIsZero:h=Ri(f,c);break;case GA.BlackIsZero:h=Ui(f,c);break;case GA.Palette:h=Mi(f,await n.loadValue("ColorMap"));break;case GA.CMYK:h=Yi(f);break;case GA.YCbCr:h=bi(f);break;case GA.CIELab:h=Hi(f);break;default:throw new Error("Unsupported photometric interpretation.")}if(!B){const D=new Uint8Array(h.length/3),d=new Uint8Array(h.length/3),y=new Uint8Array(h.length/3);for(let S=0,l=0;S<h.length;S+=3,++l)D[l]=h[S],d[l]=h[S+1],y[l]=h[S+2];h=[D,d,y]}const w=h;return w.width=f.width,w.height=f.height,w}async getTiePoints(){if(!this.fileDirectory.hasTag("ModelTiepoint"))return[];const A=await this.fileDirectory.loadValue("ModelTiepoint");if(typeof A!="object")throw new Error("Expected ModelTiepoint to be an array or typed array.");const g=[];for(let e=0;e<A.length;e+=6)g.push({i:A[e],j:A[e+1],k:A[e+2],x:A[e+3],y:A[e+4],z:A[e+5]});return g}async getGDALMetadata(A=null){const g={};if(!this.fileDirectory.hasTag("GDAL_METADATA"))return null;const e=await this.fileDirectory.loadValue("GDAL_METADATA");let t=er(e,"Item");A===null?t=t.filter(i=>he(i,"sample")===void 0):t=t.filter(i=>Number(he(i,"sample"))===A);for(let i=0;i<t.length;++i){const r=t[i];g[he(r,"name")]=r.inner}return g}getGDALNoData(){const A=this.fileDirectory.hasTag("GDAL_NODATA")&&this.fileDirectory.getValue("GDAL_NODATA");return A?Number(A.substring(0,A.length-1)):null}getOrigin(){const A=this.fileDirectory.getValue("ModelTiepoint"),g=this.fileDirectory.getValue("ModelTransformation");if(A&&A.length===6)return[A[3],A[4],A[5]];if(g)return[g[3],g[7],g[11]];throw new Error("The image does not have an affine transformation.")}getResolution(A=null){const g=this.fileDirectory.getValue("ModelPixelScale"),e=this.fileDirectory.getValue("ModelTransformation");if(g)return[g[0],-g[1],g[2]];if(e)return e[1]===0&&e[4]===0?[e[0],-e[5],e[10]]:[Math.sqrt(e[0]*e[0]+e[4]*e[4]),-Math.sqrt(e[1]*e[1]+e[5]*e[5]),e[10]];if(A){const[t,i,r]=A.getResolution();return[t*A.getWidth()/this.getWidth(),i*A.getHeight()/this.getHeight(),r*A.getWidth()/this.getWidth()]}throw new Error("The image does not have an affine transformation.")}pixelIsArea(){var A;return((A=this.getGeoKeys())==null?void 0:A.GTRasterTypeGeoKey)===1}getBoundingBox(A=!1){const g=this.getHeight(),e=this.getWidth(),t=this.fileDirectory.getValue("ModelTransformation");if(t&&!A){const[i,r,,o,E,B,,C]=t,a=[[0,0],[0,g],[e,0],[e,g]].map(([f,c])=>[o+i*f+r*c,C+E*f+B*c]),Q=a.map(f=>f[0]),n=a.map(f=>f[1]);return[Math.min(...Q),Math.min(...n),Math.max(...Q),Math.max(...n)]}else{const i=this.getOrigin(),r=this.getResolution(),o=i[0],E=i[1],B=o+r[0]*e,C=E+r[1]*g;return[Math.min(o,B),Math.min(E,C),Math.max(o,B),Math.max(E,C)]}}}class wr{constructor(A){this._dataView=new DataView(A)}get buffer(){return this._dataView.buffer}getUint64(A,g){const e=this.getUint32(A,g),t=this.getUint32(A+4,g);let i;if(g){if(i=e+4294967296*t,!Number.isSafeInteger(i))throw new Error(`${i} exceeds MAX_SAFE_INTEGER. Precision may be lost. Please report if you get this message to https://github.com/geotiffjs/geotiff.js/issues`);return i}if(i=4294967296*e+t,!Number.isSafeInteger(i))throw new Error(`${i} exceeds MAX_SAFE_INTEGER. Precision may be lost. Please report if you get this message to https://github.com/geotiffjs/geotiff.js/issues`);return i}getInt64(A,g){let e=0;const t=(this._dataView.getUint8(A+(g?7:0))&128)>0;let i=!0;for(let r=0;r<8;r++){let o=this._dataView.getUint8(A+(g?r:7-r));t&&(i?o!==0&&(o=~(o-1)&255,i=!1):o=~o&255),e+=o*256**r}return t&&(e=-e),e}getUint8(A){return this._dataView.getUint8(A)}getInt8(A){return this._dataView.getInt8(A)}getUint16(A,g){return this._dataView.getUint16(A,g)}getInt16(A,g){return this._dataView.getInt16(A,g)}getUint32(A,g){return this._dataView.getUint32(A,g)}getInt32(A,g){return this._dataView.getInt32(A,g)}getFloat16(A,g){return pi(this._dataView,A,g)}getFloat32(A,g){return this._dataView.getFloat32(A,g)}getFloat64(A,g){return this._dataView.getFloat64(A,g)}}class BI{constructor(A,g,e,t){this._dataView=new DataView(A),this._sliceOffset=g,this._littleEndian=e,this._bigTiff=t}get sliceOffset(){return this._sliceOffset}get sliceTop(){return this._sliceOffset+this.buffer.byteLength}get littleEndian(){return this._littleEndian}get bigTiff(){return this._bigTiff}get buffer(){return this._dataView.buffer}covers(A,g){return this.sliceOffset<=A&&this.sliceTop>=A+g}readUint8(A){return this._dataView.getUint8(A-this._sliceOffset)}readInt8(A){return this._dataView.getInt8(A-this._sliceOffset)}readUint16(A){return this._dataView.getUint16(A-this._sliceOffset,this._littleEndian)}readInt16(A){return this._dataView.getInt16(A-this._sliceOffset,this._littleEndian)}readUint32(A){return this._dataView.getUint32(A-this._sliceOffset,this._littleEndian)}readInt32(A){return this._dataView.getInt32(A-this._sliceOffset,this._littleEndian)}readFloat32(A){return this._dataView.getFloat32(A-this._sliceOffset,this._littleEndian)}readFloat64(A){return this._dataView.getFloat64(A-this._sliceOffset,this._littleEndian)}readUint64(A){const g=this.readUint32(A),e=this.readUint32(A+4);let t;if(this._littleEndian){if(t=g+4294967296*e,!Number.isSafeInteger(t))throw new Error(`${t} exceeds MAX_SAFE_INTEGER. Precision may be lost. Please report if you get this message to https://github.com/geotiffjs/geotiff.js/issues`);return t}if(t=4294967296*g+e,!Number.isSafeInteger(t))throw new Error(`${t} exceeds MAX_SAFE_INTEGER. Precision may be lost. Please report if you get this message to https://github.com/geotiffjs/geotiff.js/issues`);return t}readInt64(A){let g=0;const e=(this._dataView.getUint8(A+(this._littleEndian?7:0))&128)>0;let t=!0;for(let i=0;i<8;i++){let r=this._dataView.getUint8(A+(this._littleEndian?i:7-i));e&&(t?r!==0&&(r=~(r-1)&255,t=!1):r=~r&255),g+=r*256**i}return e&&(g=-g),g}readOffset(A){return this._bigTiff?this.readUint64(A):this.readUint32(A)}}const yr=typeof Worker<"u"?Worker:void 0;function Sr(){const I='const A=new Map;async function I(A){const I=!A.hasTag("StripOffsets");return{tileWidth:I?await A.loadValue("TileWidth"):await A.loadValue("ImageWidth"),tileHeight:I?await A.loadValue("TileLength"):await A.loadValue("RowsPerStrip")||await A.loadValue("ImageLength"),planarConfiguration:await A.loadValue("PlanarConfiguration"),bitsPerSample:await A.loadValue("BitsPerSample"),predictor:await A.loadValue("Predictor")||1}}function g(g,B,C=I,Q=!0){Array.isArray(g)||(g=[g]),g.forEach((I=>{A.set(I,{importFn:B,decoderParameterFn:C,preferWorker:Q})}))}const B=[{cases:[void 0,1],importFn:()=>Promise.resolve().then((function(){return e})).then((A=>A.default)),preferWorker:!1},{cases:5,importFn:()=>Promise.resolve().then((function(){return a})).then((A=>A.default))},{cases:6,importFn:()=>{throw new Error("old style JPEG compression is not supported.")}},{cases:7,importFn:()=>Promise.resolve().then((function(){return w})).then((A=>A.default)),decoderParameterFn:async A=>({...await I(A),JPEGTables:await A.loadValue("JPEGTables")})},{cases:[8,32946],importFn:()=>Promise.resolve().then((function(){return Qg})).then((A=>A.default))},{cases:32773,importFn:()=>Promise.resolve().then((function(){return ig})).then((A=>A.default))},{cases:34887,importFn:()=>Promise.resolve().then((function(){return Rg})).then((async A=>(await A.zstd.init(),A))).then((A=>A.default)),decoderParameterFn:async A=>({...await I(A),LercParameters:await A.loadValue("LercParameters")})},{cases:5e4,importFn:()=>Promise.resolve().then((function(){return Jg})).then((async A=>(await A.zstd.init(),A))).then((A=>A.default))},{cases:50001,importFn:()=>Promise.resolve().then((function(){return Hg})).then((A=>A.default)),decoderParameterFn:async A=>({...await I(A),samplesPerPixel:Number(await A.loadValue("SamplesPerPixel"))||4}),preferWorker:!1}];for(const A of B){const{cases:I,importFn:B,decoderParameterFn:C,preferWorker:Q}=A;g(I,B,C,Q)}const C=globalThis;function Q(A,I){let g=A.length-I,B=0;do{for(let g=I;g>0;g--)A[B+I]+=A[B],B++;g-=I}while(g>0)}function E(A,I,g){let B=0,C=A.length;const Q=C/g;for(;C>I;){for(let g=I;g>0;--g)A[B+I]+=A[B],++B;C-=I}const E=A.slice();for(let I=0;I<Q;++I)for(let B=0;B<g;++B)A[g*I+B]=E[(g-B-1)*Q+I]}C.addEventListener("message",(async I=>{const{compression:g,decoderParameters:B,buffer:Q,...E}=I.data;try{const I=await async function(I,g){if(!A.has(I))throw new Error(`Unknown compression method identifier: ${I}`);const{importFn:B}=A.get(I);return new(await B())(g)}(g,B),i=await I.decode(Q);C.postMessage({decoded:i,...E},[i])}catch(A){A instanceof Error?C.postMessage({error:A.message,...E}):C.postMessage({error:String(A),...E})}}));class i{constructor(A){this.parameters=A}decodeBlock(A){throw new Error("decodeBlock not implemented")}async decode(A){const I=await this.decodeBlock(A),{tileWidth:g,tileHeight:B,predictor:C,bitsPerSample:i,planarConfiguration:e}=this.parameters;if(1!==C){return function(A,I,g,B,C,i){if(!I||1===I)return A;for(let A=0;A<C.length;++A){if(C[A]%8!=0)throw new Error("When decoding with predictor, only multiple of 8 bits are supported.");if(C[A]!==C[0])throw new Error("When decoding with predictor, all samples must have the same size.")}const e=C[0]/8,t=2===i?1:C.length;for(let i=0;i<B&&!(i*t*g*e>=A.byteLength);++i){let B;if(2===I){switch(C[0]){case 8:B=new Uint8Array(A,i*t*g*e,t*g*e);break;case 16:B=new Uint16Array(A,i*t*g*e,t*g*e/2);break;case 32:B=new Uint32Array(A,i*t*g*e,t*g*e/4);break;default:throw new Error(`Predictor 2 not allowed with ${C[0]} bits per sample.`)}Q(B,t)}else 3===I&&(B=new Uint8Array(A,i*t*g*e,t*g*e),E(B,t,e))}return A}(I,C,g,B,Array.isArray(i)||ArrayBuffer.isView(i)?Array.from(i):[i],e)}return I}}var e=Object.freeze({__proto__:null,default:class extends i{decodeBlock(A){return A}}});function t(A,I){for(let g=I.length-1;g>=0;g--)A.push(I[g]);return A}function o(A){const I=new Uint16Array(4093),g=new Uint8Array(4093);for(let A=0;A<=257;A++)I[A]=4096,g[A]=A;let B=258,C=9,Q=0;function E(){B=258,C=9}function i(A){const I=function(A,I,g){const B=I%8,C=Math.floor(I/8),Q=8-B,E=I+g-8*(C+1);let i=8*(C+2)-(I+g);const e=8*(C+2)-I;if(i=Math.max(0,i),C>=A.length)return console.warn("ran off the end of the buffer before finding EOI_CODE (end on input code)"),257;let t=A[C]&2**(8-B)-1;t<<=g-Q;let o=t;if(C+1<A.length){let I=A[C+1]>>>i;I<<=Math.max(0,g-e),o+=I}if(E>8&&C+2<A.length){const B=8*(C+3)-(I+g);o+=A[C+2]>>>B}return o}(A,Q,C);return Q+=C,I}function e(A,C){return g[B]=C,I[B]=A,B++,B-1}function o(A){const B=[];for(let C=A;4096!==C;C=I[C])B.push(g[C]);return B}const a=[];E();const s=new Uint8Array(A);let r,D=i(s);for(;257!==D;){if(256===D){for(E(),D=i(s);256===D;)D=i(s);if(257===D)break;if(D>256)throw new Error(`corrupted code at scanline ${D}`);t(a,o(D)),r=D}else if(D<B){const A=o(D);t(a,A),void 0!==r&&e(r,A[A.length-1]),r=D}else{if(void 0===r)throw new Error(`Invalid LZW code: ${D} with no previous code`);const A=o(r);if(!A)throw new Error(`Bogus entry. Not in dictionary, ${r} / ${B}, position: ${Q}`);t(a,A),a.push(A[A.length-1]),e(r,A[A.length-1]),r=D}B+1>=2**C&&(12===C?r=void 0:C++),D=i(s)}return new Uint8Array(a)}var a=Object.freeze({__proto__:null,default:class extends i{decodeBlock(A){return o(A).buffer}}});const s=new Int32Array([0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]);function r(A,I){let g=0;const B=[];let C=16;for(;C>0&&!A[C-1];)--C;B.push({children:[],index:0});let Q,E=B[0];for(let i=0;i<C;i++){for(let C=0;C<A[i];C++){if(E=B.pop(),!E)throw new Error("buildHuffmanTable: codeLength mismatch");for(E.children[E.index]=I[g];E.index>0;)if(E=B.pop(),!E)throw new Error("buildHuffmanTable: codeLength mismatch");for(E.index++,B.push(E);B.length<=i;)B.push(Q={children:[],index:0}),E.children[E.index]=Q.children,E=Q;g++}i+1<C&&(B.push(Q={children:[],index:0}),E.children[E.index]=Q.children,E=Q)}return B[0].children}function D(A,I,g,B,C,Q,E,i,e){const{mcusPerLine:t,progressive:o}=g;if(B.length>1&&(void 0===t||void 0===g.mcusPerColumn))throw new Error("Missing MCU dimensions");if(1===B.length&&(void 0===B[0].blocksPerLine||void 0===B[0].blocksPerColumn))throw new Error("Missing block dimensions");const a=I;let r=I,D=0,n=0;function h(){if(n>0)return n--,D>>n&1;if(D=A[r++],255===D){const I=A[r++];if(I)throw new Error(`unexpected marker: ${(D<<8|I).toString(16)}`)}return n=7,D>>>7}function w(A){if(!A)throw new Error("Huffman table not found");let I,g=A;for(;null!==(I=h());){const A=g[I];if("number"==typeof A)return A;if("object"!=typeof A)throw new Error("invalid huffman sequence");g=A}return null}function y(A){let I=A,g=0;for(;I>0;){const A=h();if(null===A)return;g=g<<1|A,--I}return g}function G(A){const I=y(A);if(void 0!==I)return I>=1<<A-1?I:I+(-1<<A)+1}let S=0;let c,N=0;function d(A,I,g,B,C){const Q=g%t,E=(g/t|0)*A.v+B,i=Q*A.h+C;if(!A.blocks)throw new Error("Missing blocks");I(A,A.blocks[E][i])}function l(A,I,g){const B=g/A.blocksPerLine|0,C=g%A.blocksPerLine;if(!A.blocks)throw new Error("Missing blocks");I(A,A.blocks[B][C])}const k=B.length;let F,R,L,U,f,Y;Y=o?0===Q?0===i?function(A,I){const g=w(A.huffmanTableDC);if(null===g)throw new Error("Huffman error");const B=G(g);if(void 0===B)throw new Error("Unexpected end of data in DC coefficient decoding");const C=0===g?0:B<<e;void 0===A.pred&&(A.pred=0),A.pred+=C,I[0]=A.pred}:function(A,I){const g=h();if(null===g)throw new Error("Unexpected end of data in DC coefficient decoding");I[0]|=g<<e}:0===i?function(A,I){if(S>0)return void S--;let g=Q;const B=E;for(;g<=B;){const B=w(A.huffmanTableAC);if(null===B)throw new Error("Unexpected end of data in AC coefficient decoding");const C=15&B,Q=B>>4;if(0===C){if(Q<15){const A=y(Q);if(void 0===A)throw new Error("Unexpected end of data in AC coefficient decoding");S=A+(1<<Q)-1;break}g+=16}else{g+=Q;const A=s[g],B=G(C);if(void 0===B)throw new Error("Unexpected end of data in AC coefficient decoding");I[A]=B*(1<<e),g++}}}:function(A,I){let g=Q;const B=E;let C=0;for(;g<=B;){const B=s[g],Q=I[B]<0?-1:1;switch(N){case 0:{const I=w(A.huffmanTableAC);if(null===I)throw new Error("Unexpected end of data in AC coefficient decoding");const g=15&I;if(C=I>>4,0===g)if(C<15){const A=y(C);if(void 0===A)throw new Error("Unexpected end of data in AC coefficient decoding");S=A+(1<<C),N=4}else C=16,N=1;else{if(1!==g)throw new Error("invalid ACn encoding");const A=G(g);if(void 0===A)throw new Error("Unexpected end of data in AC coefficient decoding");c=A,N=C?2:3}continue}case 1:case 2:if(I[B]){const A=h();if(null===A)throw new Error("Unexpected end of data in AC coefficient decoding");I[B]+=(A<<e)*Q}else C--,0===C&&(N=2===N?3:0);break;case 3:if(I[B]){const A=h();if(null===A)throw new Error("Unexpected end of data in AC coefficient decoding");I[B]+=(A<<e)*Q}else I[B]=c<<e,N=0;break;case 4:if(I[B]){const A=h();if(null===A)throw new Error("Unexpected end of data in AC coefficient decoding");I[B]+=(A<<e)*Q}}g++}4===N&&(S--,0===S&&(N=0))}:function(A,I){const g=w(A.huffmanTableDC);if(null===g)throw new Error("Huffman error");const B=0===g?0:G(g);if(void 0===B)throw new Error("Unexpected end of stream");void 0===A.pred&&(A.pred=0),A.pred+=B,I[0]=A.pred;let C=1;for(;C<64;){const g=w(A.huffmanTableAC);if(null===g)throw new Error("Unexpected end of data in AC coefficient decoding");const B=15&g,Q=g>>4;if(0===B){if(Q<15)break;C+=16}else{C+=Q;const A=s[C],g=G(B);if(void 0===g)throw new Error("Unexpected end of stream");I[A]=g,C++}}};let K,u,M=0;u=1===k?B[0].blocksPerLine*B[0].blocksPerColumn:t*g.mcusPerColumn;const J=C||u;for(;M<u;){for(R=0;R<k;R++)B[R].pred=0;if(S=0,1===k)for(F=B[0],f=0;f<J;f++)l(F,Y,M),M++;else for(f=0;f<J;f++){for(R=0;R<k;R++){F=B[R];const{h:A,v:I}=F;for(L=0;L<I;L++)for(U=0;U<A;U++)d(F,Y,M,L,U)}if(M++,M===u)break}if(n=0,K=A[r]<<8|A[r+1],K<65280)throw new Error("marker was not found");if(!(K>=65488&&K<=65495))break;r+=2}return r-a}function n(A){const I=[],{blocksPerLine:g,blocksPerColumn:B}=A;if(!g||!B||!A.blocks)throw new Error("Missing component data");const C=g<<3,Q=new Int32Array(64),E=new Uint8Array(64);function i(I,g,B){const C=A.quantizationTable;if(!C)throw new Error("No quantization table found");let Q,E,i,e,t,o,a,s,r;const D=B;let n;for(n=0;n<64;n++)D[n]=I[n]*C[n];for(n=0;n<8;++n){const A=8*n;0!==D[1+A]||0!==D[2+A]||0!==D[3+A]||0!==D[4+A]||0!==D[5+A]||0!==D[6+A]||0!==D[7+A]?(Q=5793*D[0+A]+128>>8,E=5793*D[4+A]+128>>8,i=D[2+A],e=D[6+A],t=2896*(D[1+A]-D[7+A])+128>>8,s=2896*(D[1+A]+D[7+A])+128>>8,o=D[3+A]<<4,a=D[5+A]<<4,r=Q-E+1>>1,Q=Q+E+1>>1,E=r,r=3784*i+1567*e+128>>8,i=1567*i-3784*e+128>>8,e=r,r=t-a+1>>1,t=t+a+1>>1,a=r,r=s+o+1>>1,o=s-o+1>>1,s=r,r=Q-e+1>>1,Q=Q+e+1>>1,e=r,r=E-i+1>>1,E=E+i+1>>1,i=r,r=2276*t+3406*s+2048>>12,t=3406*t-2276*s+2048>>12,s=r,r=799*o+4017*a+2048>>12,o=4017*o-799*a+2048>>12,a=r,D[0+A]=Q+s,D[7+A]=Q-s,D[1+A]=E+a,D[6+A]=E-a,D[2+A]=i+o,D[5+A]=i-o,D[3+A]=e+t,D[4+A]=e-t):(r=5793*D[0+A]+512>>10,D[0+A]=r,D[1+A]=r,D[2+A]=r,D[3+A]=r,D[4+A]=r,D[5+A]=r,D[6+A]=r,D[7+A]=r)}for(n=0;n<8;++n){const A=n;0!==D[8+A]||0!==D[16+A]||0!==D[24+A]||0!==D[32+A]||0!==D[40+A]||0!==D[48+A]||0!==D[56+A]?(Q=5793*D[0+A]+2048>>12,E=5793*D[32+A]+2048>>12,i=D[16+A],e=D[48+A],t=2896*(D[8+A]-D[56+A])+2048>>12,s=2896*(D[8+A]+D[56+A])+2048>>12,o=D[24+A],a=D[40+A],r=Q-E+1>>1,Q=Q+E+1>>1,E=r,r=3784*i+1567*e+2048>>12,i=1567*i-3784*e+2048>>12,e=r,r=t-a+1>>1,t=t+a+1>>1,a=r,r=s+o+1>>1,o=s-o+1>>1,s=r,r=Q-e+1>>1,Q=Q+e+1>>1,e=r,r=E-i+1>>1,E=E+i+1>>1,i=r,r=2276*t+3406*s+2048>>12,t=3406*t-2276*s+2048>>12,s=r,r=799*o+4017*a+2048>>12,o=4017*o-799*a+2048>>12,a=r,D[0+A]=Q+s,D[56+A]=Q-s,D[8+A]=E+a,D[48+A]=E-a,D[16+A]=i+o,D[40+A]=i-o,D[24+A]=e+t,D[32+A]=e-t):(r=5793*B[n+0]+8192>>14,D[0+A]=r,D[8+A]=r,D[16+A]=r,D[24+A]=r,D[32+A]=r,D[40+A]=r,D[48+A]=r,D[56+A]=r)}for(n=0;n<64;++n){const A=128+(D[n]+8>>4);g[n]=A<0?0:A>255?255:A}}for(let e=0;e<B;e++){const B=e<<3;for(let A=0;A<8;A++)I.push(new Uint8Array(C));for(let C=0;C<g;C++){i(A.blocks[e][C],E,Q);let g=0;const t=C<<3;for(let A=0;A<8;A++){const C=I[B+A];for(let A=0;A<8;A++)C[t+A]=E[g++]}}}return I}class h{constructor(){this.jfif=null,this.adobe=null,this.resetInterval=0,this.quantizationTables=[],this.huffmanTablesAC=[],this.huffmanTablesDC=[],this.frames=[]}resetFrames(){this.frames=[]}parse(A){let I=0;function g(){const g=A[I]<<8|A[I+1];return I+=2,g}function B(){const B=g(),C=A.subarray(I,I+B-2);return I+=C.length,C}function C(A){let I,g,B=0,C=0;for(g in A.components)A.components.hasOwnProperty(g)&&(I=A.components[g],B<I.h&&(B=I.h),C<I.v&&(C=I.v));const Q=Math.ceil(A.samplesPerLine/8/B),E=Math.ceil(A.scanLines/8/C);for(g in A.components)if(A.components.hasOwnProperty(g)){I=A.components[g];const i=Math.ceil(Math.ceil(A.samplesPerLine/8)*I.h/B),e=Math.ceil(Math.ceil(A.scanLines/8)*I.v/C),t=Q*I.h,o=E*I.v,a=[];for(let A=0;A<o;A++){const A=[];for(let I=0;I<t;I++)A.push(new Int32Array(64));a.push(A)}I.blocksPerLine=i,I.blocksPerColumn=e,I.blocks=a}A.maxH=B,A.maxV=C,A.mcusPerLine=Q,A.mcusPerColumn=E}let Q=g();if(65496!==Q)throw new Error("SOI not found");for(Q=g();65497!==Q;){switch(Q){case 65280:break;case 65504:case 65505:case 65506:case 65507:case 65508:case 65509:case 65510:case 65511:case 65512:case 65513:case 65514:case 65515:case 65516:case 65517:case 65518:case 65519:case 65534:{const A=B();65504===Q&&74===A[0]&&70===A[1]&&73===A[2]&&70===A[3]&&0===A[4]&&(this.jfif={version:{major:A[5],minor:A[6]},densityUnits:A[7],xDensity:A[8]<<8|A[9],yDensity:A[10]<<8|A[11],thumbWidth:A[12],thumbHeight:A[13],thumbData:A.subarray(14,14+3*A[12]*A[13])}),65518===Q&&65===A[0]&&100===A[1]&&111===A[2]&&98===A[3]&&101===A[4]&&0===A[5]&&(this.adobe={version:A[6],flags0:A[7]<<8|A[8],flags1:A[9]<<8|A[10],transformCode:A[11]});break}case 65499:{const B=g()+I-2;for(;I<B;){const B=A[I++],C=new Int32Array(64);if(B>>4==0)for(let g=0;g<64;g++){C[s[g]]=A[I++]}else{if(B>>4!=1)throw new Error("DQT: invalid table spec");for(let A=0;A<64;A++){C[s[A]]=g()}}this.quantizationTables[15&B]=C}break}case 65472:case 65473:case 65474:{g();const B={extended:65473===Q,progressive:65474===Q,precision:A[I++],scanLines:g(),samplesPerLine:g(),components:{},componentsOrder:[],maxH:0,maxV:0,mcusPerLine:0,mcusPerColumn:0},E=A[I++];let i;for(let g=0;g<E;g++){i=A[I];const g=A[I+1]>>4,C=15&A[I+1],Q=A[I+2];B.componentsOrder.push(i),B.components[i]={h:g,v:C,quantizationIdx:Q,blocksPerLine:0,blocksPerColumn:0,blocks:[]},I+=3}C(B),this.frames.push(B);break}case 65476:{const B=g();for(let g=2;g<B;){const B=A[I++],C=new Uint8Array(16);let Q=0;for(let g=0;g<16;g++,I++)C[g]=A[I],Q+=C[g];const E=new Uint8Array(Q);for(let g=0;g<Q;g++,I++)E[g]=A[I];g+=17+Q,B>>4==0?this.huffmanTablesDC[15&B]=r(C,E):this.huffmanTablesAC[15&B]=r(C,E)}break}case 65501:g(),this.resetInterval=g();break;case 65498:{g();const B=A[I++],C=[],Q=this.frames[0];for(let g=0;g<B;g++){const g=Q.components[A[I++]],B=A[I++];g.huffmanTableDC=this.huffmanTablesDC[B>>4],g.huffmanTableAC=this.huffmanTablesAC[15&B],C.push(g)}const E=A[I++],i=A[I++],e=A[I++],t=D(A,I,Q,C,this.resetInterval,E,i,e>>4,15&e);I+=t;break}case 65535:255!==A[I]&&I--;break;default:if(255===A[I-3]&&A[I-2]>=192&&A[I-2]<=254){I-=3;break}throw new Error(`unknown JPEG marker ${Q.toString(16)}`)}Q=g()}}getResult(){const{frames:A}=this;if(0===this.frames.length)throw new Error("no frames were decoded");this.frames.length>1&&console.warn("more than one frame is not supported");for(let A=0;A<this.frames.length;A++){const I=this.frames[A].components;for(const A of Object.keys(I)){const g=I[A].quantizationIdx;"number"==typeof g&&(I[A].quantizationTable=this.quantizationTables[g],delete I[A].quantizationIdx)}}const I=A[0];if(!I.maxH||!I.maxV)throw new Error("Invalid frame dimensions");const{components:g,componentsOrder:B}=I,C=[],Q=I.samplesPerLine,E=I.scanLines;for(let A=0;A<B.length;A++){const Q=g[B[A]];C.push({lines:n(Q),scaleX:Q.h/I.maxH,scaleY:Q.v/I.maxV})}const i=new Uint8Array(Q*E*C.length);let e=0;for(let A=0;A<E;++A)for(let I=0;I<Q;++I)for(let g=0;g<C.length;++g){const B=C[g];i[e]=B.lines[0|A*B.scaleY][0|I*B.scaleX],++e}return i}}var w=Object.freeze({__proto__:null,default:class extends i{constructor(A){super(A),this.reader=new h,A.JPEGTables&&this.reader.parse(A.JPEGTables)}decodeBlock(A){return this.reader.resetFrames(),this.reader.parse(new Uint8Array(A)),this.reader.getResult().buffer}}});\n/*! pako 2.0.4 https://github.com/nodeca/pako @license (MIT AND Zlib) */function y(A){let I=A.length;for(;--I>=0;)A[I]=0}const G=new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]),S=new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]),c=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),N=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),d=new Array(576);y(d);const l=new Array(60);y(l);const k=new Array(512);y(k);const F=new Array(256);y(F);const R=new Array(29);y(R);const L=new Array(30);function U(A,I,g,B,C){this.static_tree=A,this.extra_bits=I,this.extra_base=g,this.elems=B,this.max_length=C,this.has_stree=A&&A.length}let f,Y,K;function u(A,I){this.dyn_tree=A,this.max_code=0,this.stat_desc=I}y(L);const M=A=>A<256?k[A]:k[256+(A>>>7)],J=(A,I)=>{A.pending_buf[A.pending++]=255&I,A.pending_buf[A.pending++]=I>>>8&255},H=(A,I,g)=>{A.bi_valid>16-g?(A.bi_buf|=I<<A.bi_valid&65535,J(A,A.bi_buf),A.bi_buf=I>>16-A.bi_valid,A.bi_valid+=g-16):(A.bi_buf|=I<<A.bi_valid&65535,A.bi_valid+=g)},p=(A,I,g)=>{H(A,g[2*I],g[2*I+1])},m=(A,I)=>{let g=0;do{g|=1&A,A>>>=1,g<<=1}while(--I>0);return g>>>1},q=(A,I,g)=>{const B=new Array(16);let C,Q,E=0;for(C=1;C<=15;C++)B[C]=E=E+g[C-1]<<1;for(Q=0;Q<=I;Q++){let I=A[2*Q+1];0!==I&&(A[2*Q]=m(B[I]++,I))}},b=A=>{let I;for(I=0;I<286;I++)A.dyn_ltree[2*I]=0;for(I=0;I<30;I++)A.dyn_dtree[2*I]=0;for(I=0;I<19;I++)A.bl_tree[2*I]=0;A.dyn_ltree[512]=1,A.opt_len=A.static_len=0,A.last_lit=A.matches=0},x=A=>{A.bi_valid>8?J(A,A.bi_buf):A.bi_valid>0&&(A.pending_buf[A.pending++]=A.bi_buf),A.bi_buf=0,A.bi_valid=0},O=(A,I,g,B)=>{const C=2*I,Q=2*g;return A[C]<A[Q]||A[C]===A[Q]&&B[I]<=B[g]},T=(A,I,g)=>{const B=A.heap[g];let C=g<<1;for(;C<=A.heap_len&&(C<A.heap_len&&O(I,A.heap[C+1],A.heap[C],A.depth)&&C++,!O(I,B,A.heap[C],A.depth));)A.heap[g]=A.heap[C],g=C,C<<=1;A.heap[g]=B},_=(A,I,g)=>{let B,C,Q,E,i=0;if(0!==A.last_lit)do{B=A.pending_buf[A.d_buf+2*i]<<8|A.pending_buf[A.d_buf+2*i+1],C=A.pending_buf[A.l_buf+i],i++,0===B?p(A,C,I):(Q=F[C],p(A,Q+256+1,I),E=G[Q],0!==E&&(C-=R[Q],H(A,C,E)),B--,Q=M(B),p(A,Q,g),E=S[Q],0!==E&&(B-=L[Q],H(A,B,E)))}while(i<A.last_lit);p(A,256,I)},Z=(A,I)=>{const g=I.dyn_tree,B=I.stat_desc.static_tree,C=I.stat_desc.has_stree,Q=I.stat_desc.elems;let E,i,e,t=-1;for(A.heap_len=0,A.heap_max=573,E=0;E<Q;E++)0!==g[2*E]?(A.heap[++A.heap_len]=t=E,A.depth[E]=0):g[2*E+1]=0;for(;A.heap_len<2;)e=A.heap[++A.heap_len]=t<2?++t:0,g[2*e]=1,A.depth[e]=0,A.opt_len--,C&&(A.static_len-=B[2*e+1]);for(I.max_code=t,E=A.heap_len>>1;E>=1;E--)T(A,g,E);e=Q;do{E=A.heap[1],A.heap[1]=A.heap[A.heap_len--],T(A,g,1),i=A.heap[1],A.heap[--A.heap_max]=E,A.heap[--A.heap_max]=i,g[2*e]=g[2*E]+g[2*i],A.depth[e]=(A.depth[E]>=A.depth[i]?A.depth[E]:A.depth[i])+1,g[2*E+1]=g[2*i+1]=e,A.heap[1]=e++,T(A,g,1)}while(A.heap_len>=2);A.heap[--A.heap_max]=A.heap[1],((A,I)=>{const g=I.dyn_tree,B=I.max_code,C=I.stat_desc.static_tree,Q=I.stat_desc.has_stree,E=I.stat_desc.extra_bits,i=I.stat_desc.extra_base,e=I.stat_desc.max_length;let t,o,a,s,r,D,n=0;for(s=0;s<=15;s++)A.bl_count[s]=0;for(g[2*A.heap[A.heap_max]+1]=0,t=A.heap_max+1;t<573;t++)o=A.heap[t],s=g[2*g[2*o+1]+1]+1,s>e&&(s=e,n++),g[2*o+1]=s,o>B||(A.bl_count[s]++,r=0,o>=i&&(r=E[o-i]),D=g[2*o],A.opt_len+=D*(s+r),Q&&(A.static_len+=D*(C[2*o+1]+r)));if(0!==n){do{for(s=e-1;0===A.bl_count[s];)s--;A.bl_count[s]--,A.bl_count[s+1]+=2,A.bl_count[e]--,n-=2}while(n>0);for(s=e;0!==s;s--)for(o=A.bl_count[s];0!==o;)a=A.heap[--t],a>B||(g[2*a+1]!==s&&(A.opt_len+=(s-g[2*a+1])*g[2*a],g[2*a+1]=s),o--)}})(A,I),q(g,t,A.bl_count)},P=(A,I,g)=>{let B,C,Q=-1,E=I[1],i=0,e=7,t=4;for(0===E&&(e=138,t=3),I[2*(g+1)+1]=65535,B=0;B<=g;B++)C=E,E=I[2*(B+1)+1],++i<e&&C===E||(i<t?A.bl_tree[2*C]+=i:0!==C?(C!==Q&&A.bl_tree[2*C]++,A.bl_tree[32]++):i<=10?A.bl_tree[34]++:A.bl_tree[36]++,i=0,Q=C,0===E?(e=138,t=3):C===E?(e=6,t=3):(e=7,t=4))},v=(A,I,g)=>{let B,C,Q=-1,E=I[1],i=0,e=7,t=4;for(0===E&&(e=138,t=3),B=0;B<=g;B++)if(C=E,E=I[2*(B+1)+1],!(++i<e&&C===E)){if(i<t)do{p(A,C,A.bl_tree)}while(0!=--i);else 0!==C?(C!==Q&&(p(A,C,A.bl_tree),i--),p(A,16,A.bl_tree),H(A,i-3,2)):i<=10?(p(A,17,A.bl_tree),H(A,i-3,3)):(p(A,18,A.bl_tree),H(A,i-11,7));i=0,Q=C,0===E?(e=138,t=3):C===E?(e=6,t=3):(e=7,t=4)}};let j=!1;const W=(A,I,g,B)=>{H(A,0+(B?1:0),3),((A,I,g,B)=>{x(A),B&&(J(A,g),J(A,~g)),A.pending_buf.set(A.window.subarray(I,I+g),A.pending),A.pending+=g})(A,I,g,!0)};var V=(A,I,g,B)=>{let C,Q,E=0;A.level>0?(2===A.strm.data_type&&(A.strm.data_type=(A=>{let I,g=4093624447;for(I=0;I<=31;I++,g>>>=1)if(1&g&&0!==A.dyn_ltree[2*I])return 0;if(0!==A.dyn_ltree[18]||0!==A.dyn_ltree[20]||0!==A.dyn_ltree[26])return 1;for(I=32;I<256;I++)if(0!==A.dyn_ltree[2*I])return 1;return 0})(A)),Z(A,A.l_desc),Z(A,A.d_desc),E=(A=>{let I;for(P(A,A.dyn_ltree,A.l_desc.max_code),P(A,A.dyn_dtree,A.d_desc.max_code),Z(A,A.bl_desc),I=18;I>=3&&0===A.bl_tree[2*N[I]+1];I--);return A.opt_len+=3*(I+1)+5+5+4,I})(A),C=A.opt_len+3+7>>>3,Q=A.static_len+3+7>>>3,Q<=C&&(C=Q)):C=Q=g+5,g+4<=C&&-1!==I?W(A,I,g,B):4===A.strategy||Q===C?(H(A,2+(B?1:0),3),_(A,d,l)):(H(A,4+(B?1:0),3),((A,I,g,B)=>{let C;for(H(A,I-257,5),H(A,g-1,5),H(A,B-4,4),C=0;C<B;C++)H(A,A.bl_tree[2*N[C]+1],3);v(A,A.dyn_ltree,I-1),v(A,A.dyn_dtree,g-1)})(A,A.l_desc.max_code+1,A.d_desc.max_code+1,E+1),_(A,A.dyn_ltree,A.dyn_dtree)),b(A),B&&x(A)},z={_tr_init:A=>{j||((()=>{let A,I,g,B,C;const Q=new Array(16);for(g=0,B=0;B<28;B++)for(R[B]=g,A=0;A<1<<G[B];A++)F[g++]=B;for(F[g-1]=B,C=0,B=0;B<16;B++)for(L[B]=C,A=0;A<1<<S[B];A++)k[C++]=B;for(C>>=7;B<30;B++)for(L[B]=C<<7,A=0;A<1<<S[B]-7;A++)k[256+C++]=B;for(I=0;I<=15;I++)Q[I]=0;for(A=0;A<=143;)d[2*A+1]=8,A++,Q[8]++;for(;A<=255;)d[2*A+1]=9,A++,Q[9]++;for(;A<=279;)d[2*A+1]=7,A++,Q[7]++;for(;A<=287;)d[2*A+1]=8,A++,Q[8]++;for(q(d,287,Q),A=0;A<30;A++)l[2*A+1]=5,l[2*A]=m(A,5);f=new U(d,G,257,286,15),Y=new U(l,S,0,30,15),K=new U(new Array(0),c,0,19,7)})(),j=!0),A.l_desc=new u(A.dyn_ltree,f),A.d_desc=new u(A.dyn_dtree,Y),A.bl_desc=new u(A.bl_tree,K),A.bi_buf=0,A.bi_valid=0,b(A)},_tr_stored_block:W,_tr_flush_block:V,_tr_tally:(A,I,g)=>(A.pending_buf[A.d_buf+2*A.last_lit]=I>>>8&255,A.pending_buf[A.d_buf+2*A.last_lit+1]=255&I,A.pending_buf[A.l_buf+A.last_lit]=255&g,A.last_lit++,0===I?A.dyn_ltree[2*g]++:(A.matches++,I--,A.dyn_ltree[2*(F[g]+256+1)]++,A.dyn_dtree[2*M(I)]++),A.last_lit===A.lit_bufsize-1),_tr_align:A=>{H(A,2,3),p(A,256,d),(A=>{16===A.bi_valid?(J(A,A.bi_buf),A.bi_buf=0,A.bi_valid=0):A.bi_valid>=8&&(A.pending_buf[A.pending++]=255&A.bi_buf,A.bi_buf>>=8,A.bi_valid-=8)})(A)}};var X=(A,I,g,B)=>{let C=65535&A|0,Q=A>>>16&65535|0,E=0;for(;0!==g;){E=g>2e3?2e3:g,g-=E;do{C=C+I[B++]|0,Q=Q+C|0}while(--E);C%=65521,Q%=65521}return C|Q<<16|0};const $=new Uint32Array((()=>{let A,I=[];for(var g=0;g<256;g++){A=g;for(var B=0;B<8;B++)A=1&A?3988292384^A>>>1:A>>>1;I[g]=A}return I})());var AA=(A,I,g,B)=>{const C=$,Q=B+g;A^=-1;for(let g=B;g<Q;g++)A=A>>>8^C[255&(A^I[g])];return-1^A},IA={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"},gA={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8};const{_tr_init:BA,_tr_stored_block:CA,_tr_flush_block:QA,_tr_tally:EA,_tr_align:iA}=z,{Z_NO_FLUSH:eA,Z_PARTIAL_FLUSH:tA,Z_FULL_FLUSH:oA,Z_FINISH:aA,Z_BLOCK:sA,Z_OK:rA,Z_STREAM_END:DA,Z_STREAM_ERROR:nA,Z_DATA_ERROR:hA,Z_BUF_ERROR:wA,Z_DEFAULT_COMPRESSION:yA,Z_FILTERED:GA,Z_HUFFMAN_ONLY:SA,Z_RLE:cA,Z_FIXED:NA,Z_DEFAULT_STRATEGY:dA,Z_UNKNOWN:lA,Z_DEFLATED:kA}=gA,FA=(A,I)=>(A.msg=IA[I],I),RA=A=>(A<<1)-(A>4?9:0),LA=A=>{let I=A.length;for(;--I>=0;)A[I]=0};let UA=(A,I,g)=>(I<<A.hash_shift^g)&A.hash_mask;const fA=A=>{const I=A.state;let g=I.pending;g>A.avail_out&&(g=A.avail_out),0!==g&&(A.output.set(I.pending_buf.subarray(I.pending_out,I.pending_out+g),A.next_out),A.next_out+=g,I.pending_out+=g,A.total_out+=g,A.avail_out-=g,I.pending-=g,0===I.pending&&(I.pending_out=0))},YA=(A,I)=>{QA(A,A.block_start>=0?A.block_start:-1,A.strstart-A.block_start,I),A.block_start=A.strstart,fA(A.strm)},KA=(A,I)=>{A.pending_buf[A.pending++]=I},uA=(A,I)=>{A.pending_buf[A.pending++]=I>>>8&255,A.pending_buf[A.pending++]=255&I},MA=(A,I,g,B)=>{let C=A.avail_in;return C>B&&(C=B),0===C?0:(A.avail_in-=C,I.set(A.input.subarray(A.next_in,A.next_in+C),g),1===A.state.wrap?A.adler=X(A.adler,I,C,g):2===A.state.wrap&&(A.adler=AA(A.adler,I,C,g)),A.next_in+=C,A.total_in+=C,C)},JA=(A,I)=>{let g,B,C=A.max_chain_length,Q=A.strstart,E=A.prev_length,i=A.nice_match;const e=A.strstart>A.w_size-262?A.strstart-(A.w_size-262):0,t=A.window,o=A.w_mask,a=A.prev,s=A.strstart+258;let r=t[Q+E-1],D=t[Q+E];A.prev_length>=A.good_match&&(C>>=2),i>A.lookahead&&(i=A.lookahead);do{if(g=I,t[g+E]===D&&t[g+E-1]===r&&t[g]===t[Q]&&t[++g]===t[Q+1]){Q+=2,g++;do{}while(t[++Q]===t[++g]&&t[++Q]===t[++g]&&t[++Q]===t[++g]&&t[++Q]===t[++g]&&t[++Q]===t[++g]&&t[++Q]===t[++g]&&t[++Q]===t[++g]&&t[++Q]===t[++g]&&Q<s);if(B=258-(s-Q),Q=s-258,B>E){if(A.match_start=I,E=B,B>=i)break;r=t[Q+E-1],D=t[Q+E]}}}while((I=a[I&o])>e&&0!=--C);return E<=A.lookahead?E:A.lookahead},HA=A=>{const I=A.w_size;let g,B,C,Q,E;do{if(Q=A.window_size-A.lookahead-A.strstart,A.strstart>=I+(I-262)){A.window.set(A.window.subarray(I,I+I),0),A.match_start-=I,A.strstart-=I,A.block_start-=I,B=A.hash_size,g=B;do{C=A.head[--g],A.head[g]=C>=I?C-I:0}while(--B);B=I,g=B;do{C=A.prev[--g],A.prev[g]=C>=I?C-I:0}while(--B);Q+=I}if(0===A.strm.avail_in)break;if(B=MA(A.strm,A.window,A.strstart+A.lookahead,Q),A.lookahead+=B,A.lookahead+A.insert>=3)for(E=A.strstart-A.insert,A.ins_h=A.window[E],A.ins_h=UA(A,A.ins_h,A.window[E+1]);A.insert&&(A.ins_h=UA(A,A.ins_h,A.window[E+3-1]),A.prev[E&A.w_mask]=A.head[A.ins_h],A.head[A.ins_h]=E,E++,A.insert--,!(A.lookahead+A.insert<3)););}while(A.lookahead<262&&0!==A.strm.avail_in)},pA=(A,I)=>{let g,B;for(;;){if(A.lookahead<262){if(HA(A),A.lookahead<262&&I===eA)return 1;if(0===A.lookahead)break}if(g=0,A.lookahead>=3&&(A.ins_h=UA(A,A.ins_h,A.window[A.strstart+3-1]),g=A.prev[A.strstart&A.w_mask]=A.head[A.ins_h],A.head[A.ins_h]=A.strstart),0!==g&&A.strstart-g<=A.w_size-262&&(A.match_length=JA(A,g)),A.match_length>=3)if(B=EA(A,A.strstart-A.match_start,A.match_length-3),A.lookahead-=A.match_length,A.match_length<=A.max_lazy_match&&A.lookahead>=3){A.match_length--;do{A.strstart++,A.ins_h=UA(A,A.ins_h,A.window[A.strstart+3-1]),g=A.prev[A.strstart&A.w_mask]=A.head[A.ins_h],A.head[A.ins_h]=A.strstart}while(0!=--A.match_length);A.strstart++}else A.strstart+=A.match_length,A.match_length=0,A.ins_h=A.window[A.strstart],A.ins_h=UA(A,A.ins_h,A.window[A.strstart+1]);else B=EA(A,0,A.window[A.strstart]),A.lookahead--,A.strstart++;if(B&&(YA(A,!1),0===A.strm.avail_out))return 1}return A.insert=A.strstart<2?A.strstart:2,I===aA?(YA(A,!0),0===A.strm.avail_out?3:4):A.last_lit&&(YA(A,!1),0===A.strm.avail_out)?1:2},mA=(A,I)=>{let g,B,C;for(;;){if(A.lookahead<262){if(HA(A),A.lookahead<262&&I===eA)return 1;if(0===A.lookahead)break}if(g=0,A.lookahead>=3&&(A.ins_h=UA(A,A.ins_h,A.window[A.strstart+3-1]),g=A.prev[A.strstart&A.w_mask]=A.head[A.ins_h],A.head[A.ins_h]=A.strstart),A.prev_length=A.match_length,A.prev_match=A.match_start,A.match_length=2,0!==g&&A.prev_length<A.max_lazy_match&&A.strstart-g<=A.w_size-262&&(A.match_length=JA(A,g),A.match_length<=5&&(A.strategy===GA||3===A.match_length&&A.strstart-A.match_start>4096)&&(A.match_length=2)),A.prev_length>=3&&A.match_length<=A.prev_length){C=A.strstart+A.lookahead-3,B=EA(A,A.strstart-1-A.prev_match,A.prev_length-3),A.lookahead-=A.prev_length-1,A.prev_length-=2;do{++A.strstart<=C&&(A.ins_h=UA(A,A.ins_h,A.window[A.strstart+3-1]),g=A.prev[A.strstart&A.w_mask]=A.head[A.ins_h],A.head[A.ins_h]=A.strstart)}while(0!=--A.prev_length);if(A.match_available=0,A.match_length=2,A.strstart++,B&&(YA(A,!1),0===A.strm.avail_out))return 1}else if(A.match_available){if(B=EA(A,0,A.window[A.strstart-1]),B&&YA(A,!1),A.strstart++,A.lookahead--,0===A.strm.avail_out)return 1}else A.match_available=1,A.strstart++,A.lookahead--}return A.match_available&&(B=EA(A,0,A.window[A.strstart-1]),A.match_available=0),A.insert=A.strstart<2?A.strstart:2,I===aA?(YA(A,!0),0===A.strm.avail_out?3:4):A.last_lit&&(YA(A,!1),0===A.strm.avail_out)?1:2};function qA(A,I,g,B,C){this.good_length=A,this.max_lazy=I,this.nice_length=g,this.max_chain=B,this.func=C}const bA=[new qA(0,0,0,0,((A,I)=>{let g=65535;for(g>A.pending_buf_size-5&&(g=A.pending_buf_size-5);;){if(A.lookahead<=1){if(HA(A),0===A.lookahead&&I===eA)return 1;if(0===A.lookahead)break}A.strstart+=A.lookahead,A.lookahead=0;const B=A.block_start+g;if((0===A.strstart||A.strstart>=B)&&(A.lookahead=A.strstart-B,A.strstart=B,YA(A,!1),0===A.strm.avail_out))return 1;if(A.strstart-A.block_start>=A.w_size-262&&(YA(A,!1),0===A.strm.avail_out))return 1}return A.insert=0,I===aA?(YA(A,!0),0===A.strm.avail_out?3:4):(A.strstart>A.block_start&&(YA(A,!1),A.strm.avail_out),1)})),new qA(4,4,8,4,pA),new qA(4,5,16,8,pA),new qA(4,6,32,32,pA),new qA(4,4,16,16,mA),new qA(8,16,32,32,mA),new qA(8,16,128,128,mA),new qA(8,32,128,256,mA),new qA(32,128,258,1024,mA),new qA(32,258,258,4096,mA)];function xA(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=kA,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Uint16Array(1146),this.dyn_dtree=new Uint16Array(122),this.bl_tree=new Uint16Array(78),LA(this.dyn_ltree),LA(this.dyn_dtree),LA(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(16),this.heap=new Uint16Array(573),LA(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(573),LA(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}const OA=A=>{if(!A||!A.state)return FA(A,nA);A.total_in=A.total_out=0,A.data_type=lA;const I=A.state;return I.pending=0,I.pending_out=0,I.wrap<0&&(I.wrap=-I.wrap),I.status=I.wrap?42:113,A.adler=2===I.wrap?0:1,I.last_flush=eA,BA(I),rA},TA=A=>{const I=OA(A);var g;return I===rA&&((g=A.state).window_size=2*g.w_size,LA(g.head),g.max_lazy_match=bA[g.level].max_lazy,g.good_match=bA[g.level].good_length,g.nice_match=bA[g.level].nice_length,g.max_chain_length=bA[g.level].max_chain,g.strstart=0,g.block_start=0,g.lookahead=0,g.insert=0,g.match_length=g.prev_length=2,g.match_available=0,g.ins_h=0),I},_A=(A,I,g,B,C,Q)=>{if(!A)return nA;let E=1;if(I===yA&&(I=6),B<0?(E=0,B=-B):B>15&&(E=2,B-=16),C<1||C>9||g!==kA||B<8||B>15||I<0||I>9||Q<0||Q>NA)return FA(A,nA);8===B&&(B=9);const i=new xA;return A.state=i,i.strm=A,i.wrap=E,i.gzhead=null,i.w_bits=B,i.w_size=1<<i.w_bits,i.w_mask=i.w_size-1,i.hash_bits=C+7,i.hash_size=1<<i.hash_bits,i.hash_mask=i.hash_size-1,i.hash_shift=~~((i.hash_bits+3-1)/3),i.window=new Uint8Array(2*i.w_size),i.head=new Uint16Array(i.hash_size),i.prev=new Uint16Array(i.w_size),i.lit_bufsize=1<<C+6,i.pending_buf_size=4*i.lit_bufsize,i.pending_buf=new Uint8Array(i.pending_buf_size),i.d_buf=1*i.lit_bufsize,i.l_buf=3*i.lit_bufsize,i.level=I,i.strategy=Q,i.method=g,TA(A)};var ZA={deflateInit:(A,I)=>_A(A,I,kA,15,8,dA),deflateInit2:_A,deflateReset:TA,deflateResetKeep:OA,deflateSetHeader:(A,I)=>A&&A.state?2!==A.state.wrap?nA:(A.state.gzhead=I,rA):nA,deflate:(A,I)=>{let g,B;if(!A||!A.state||I>sA||I<0)return A?FA(A,nA):nA;const C=A.state;if(!A.output||!A.input&&0!==A.avail_in||666===C.status&&I!==aA)return FA(A,0===A.avail_out?wA:nA);C.strm=A;const Q=C.last_flush;if(C.last_flush=I,42===C.status)if(2===C.wrap)A.adler=0,KA(C,31),KA(C,139),KA(C,8),C.gzhead?(KA(C,(C.gzhead.text?1:0)+(C.gzhead.hcrc?2:0)+(C.gzhead.extra?4:0)+(C.gzhead.name?8:0)+(C.gzhead.comment?16:0)),KA(C,255&C.gzhead.time),KA(C,C.gzhead.time>>8&255),KA(C,C.gzhead.time>>16&255),KA(C,C.gzhead.time>>24&255),KA(C,9===C.level?2:C.strategy>=SA||C.level<2?4:0),KA(C,255&C.gzhead.os),C.gzhead.extra&&C.gzhead.extra.length&&(KA(C,255&C.gzhead.extra.length),KA(C,C.gzhead.extra.length>>8&255)),C.gzhead.hcrc&&(A.adler=AA(A.adler,C.pending_buf,C.pending,0)),C.gzindex=0,C.status=69):(KA(C,0),KA(C,0),KA(C,0),KA(C,0),KA(C,0),KA(C,9===C.level?2:C.strategy>=SA||C.level<2?4:0),KA(C,3),C.status=113);else{let I=kA+(C.w_bits-8<<4)<<8,g=-1;g=C.strategy>=SA||C.level<2?0:C.level<6?1:6===C.level?2:3,I|=g<<6,0!==C.strstart&&(I|=32),I+=31-I%31,C.status=113,uA(C,I),0!==C.strstart&&(uA(C,A.adler>>>16),uA(C,65535&A.adler)),A.adler=1}if(69===C.status)if(C.gzhead.extra){for(g=C.pending;C.gzindex<(65535&C.gzhead.extra.length)&&(C.pending!==C.pending_buf_size||(C.gzhead.hcrc&&C.pending>g&&(A.adler=AA(A.adler,C.pending_buf,C.pending-g,g)),fA(A),g=C.pending,C.pending!==C.pending_buf_size));)KA(C,255&C.gzhead.extra[C.gzindex]),C.gzindex++;C.gzhead.hcrc&&C.pending>g&&(A.adler=AA(A.adler,C.pending_buf,C.pending-g,g)),C.gzindex===C.gzhead.extra.length&&(C.gzindex=0,C.status=73)}else C.status=73;if(73===C.status)if(C.gzhead.name){g=C.pending;do{if(C.pending===C.pending_buf_size&&(C.gzhead.hcrc&&C.pending>g&&(A.adler=AA(A.adler,C.pending_buf,C.pending-g,g)),fA(A),g=C.pending,C.pending===C.pending_buf_size)){B=1;break}B=C.gzindex<C.gzhead.name.length?255&C.gzhead.name.charCodeAt(C.gzindex++):0,KA(C,B)}while(0!==B);C.gzhead.hcrc&&C.pending>g&&(A.adler=AA(A.adler,C.pending_buf,C.pending-g,g)),0===B&&(C.gzindex=0,C.status=91)}else C.status=91;if(91===C.status)if(C.gzhead.comment){g=C.pending;do{if(C.pending===C.pending_buf_size&&(C.gzhead.hcrc&&C.pending>g&&(A.adler=AA(A.adler,C.pending_buf,C.pending-g,g)),fA(A),g=C.pending,C.pending===C.pending_buf_size)){B=1;break}B=C.gzindex<C.gzhead.comment.length?255&C.gzhead.comment.charCodeAt(C.gzindex++):0,KA(C,B)}while(0!==B);C.gzhead.hcrc&&C.pending>g&&(A.adler=AA(A.adler,C.pending_buf,C.pending-g,g)),0===B&&(C.status=103)}else C.status=103;if(103===C.status&&(C.gzhead.hcrc?(C.pending+2>C.pending_buf_size&&fA(A),C.pending+2<=C.pending_buf_size&&(KA(C,255&A.adler),KA(C,A.adler>>8&255),A.adler=0,C.status=113)):C.status=113),0!==C.pending){if(fA(A),0===A.avail_out)return C.last_flush=-1,rA}else if(0===A.avail_in&&RA(I)<=RA(Q)&&I!==aA)return FA(A,wA);if(666===C.status&&0!==A.avail_in)return FA(A,wA);if(0!==A.avail_in||0!==C.lookahead||I!==eA&&666!==C.status){let g=C.strategy===SA?((A,I)=>{let g;for(;;){if(0===A.lookahead&&(HA(A),0===A.lookahead)){if(I===eA)return 1;break}if(A.match_length=0,g=EA(A,0,A.window[A.strstart]),A.lookahead--,A.strstart++,g&&(YA(A,!1),0===A.strm.avail_out))return 1}return A.insert=0,I===aA?(YA(A,!0),0===A.strm.avail_out?3:4):A.last_lit&&(YA(A,!1),0===A.strm.avail_out)?1:2})(C,I):C.strategy===cA?((A,I)=>{let g,B,C,Q;const E=A.window;for(;;){if(A.lookahead<=258){if(HA(A),A.lookahead<=258&&I===eA)return 1;if(0===A.lookahead)break}if(A.match_length=0,A.lookahead>=3&&A.strstart>0&&(C=A.strstart-1,B=E[C],B===E[++C]&&B===E[++C]&&B===E[++C])){Q=A.strstart+258;do{}while(B===E[++C]&&B===E[++C]&&B===E[++C]&&B===E[++C]&&B===E[++C]&&B===E[++C]&&B===E[++C]&&B===E[++C]&&C<Q);A.match_length=258-(Q-C),A.match_length>A.lookahead&&(A.match_length=A.lookahead)}if(A.match_length>=3?(g=EA(A,1,A.match_length-3),A.lookahead-=A.match_length,A.strstart+=A.match_length,A.match_length=0):(g=EA(A,0,A.window[A.strstart]),A.lookahead--,A.strstart++),g&&(YA(A,!1),0===A.strm.avail_out))return 1}return A.insert=0,I===aA?(YA(A,!0),0===A.strm.avail_out?3:4):A.last_lit&&(YA(A,!1),0===A.strm.avail_out)?1:2})(C,I):bA[C.level].func(C,I);if(3!==g&&4!==g||(C.status=666),1===g||3===g)return 0===A.avail_out&&(C.last_flush=-1),rA;if(2===g&&(I===tA?iA(C):I!==sA&&(CA(C,0,0,!1),I===oA&&(LA(C.head),0===C.lookahead&&(C.strstart=0,C.block_start=0,C.insert=0))),fA(A),0===A.avail_out))return C.last_flush=-1,rA}return I!==aA?rA:C.wrap<=0?DA:(2===C.wrap?(KA(C,255&A.adler),KA(C,A.adler>>8&255),KA(C,A.adler>>16&255),KA(C,A.adler>>24&255),KA(C,255&A.total_in),KA(C,A.total_in>>8&255),KA(C,A.total_in>>16&255),KA(C,A.total_in>>24&255)):(uA(C,A.adler>>>16),uA(C,65535&A.adler)),fA(A),C.wrap>0&&(C.wrap=-C.wrap),0!==C.pending?rA:DA)},deflateEnd:A=>{if(!A||!A.state)return nA;const I=A.state.status;return 42!==I&&69!==I&&73!==I&&91!==I&&103!==I&&113!==I&&666!==I?FA(A,nA):(A.state=null,113===I?FA(A,hA):rA)},deflateSetDictionary:(A,I)=>{let g=I.length;if(!A||!A.state)return nA;const B=A.state,C=B.wrap;if(2===C||1===C&&42!==B.status||B.lookahead)return nA;if(1===C&&(A.adler=X(A.adler,I,g,0)),B.wrap=0,g>=B.w_size){0===C&&(LA(B.head),B.strstart=0,B.block_start=0,B.insert=0);let A=new Uint8Array(B.w_size);A.set(I.subarray(g-B.w_size,g),0),I=A,g=B.w_size}const Q=A.avail_in,E=A.next_in,i=A.input;for(A.avail_in=g,A.next_in=0,A.input=I,HA(B);B.lookahead>=3;){let A=B.strstart,I=B.lookahead-2;do{B.ins_h=UA(B,B.ins_h,B.window[A+3-1]),B.prev[A&B.w_mask]=B.head[B.ins_h],B.head[B.ins_h]=A,A++}while(--I);B.strstart=A,B.lookahead=2,HA(B)}return B.strstart+=B.lookahead,B.block_start=B.strstart,B.insert=B.lookahead,B.lookahead=0,B.match_length=B.prev_length=2,B.match_available=0,A.next_in=E,A.input=i,A.avail_in=Q,B.wrap=C,rA},deflateInfo:"pako deflate (from Nodeca project)"};const PA=(A,I)=>Object.prototype.hasOwnProperty.call(A,I);var vA=function(A){const I=Array.prototype.slice.call(arguments,1);for(;I.length;){const g=I.shift();if(g){if("object"!=typeof g)throw new TypeError(g+"must be non-object");for(const I in g)PA(g,I)&&(A[I]=g[I])}}return A},jA=A=>{let I=0;for(let g=0,B=A.length;g<B;g++)I+=A[g].length;const g=new Uint8Array(I);for(let I=0,B=0,C=A.length;I<C;I++){let C=A[I];g.set(C,B),B+=C.length}return g};let WA=!0;try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(A){WA=!1}const VA=new Uint8Array(256);for(let A=0;A<256;A++)VA[A]=A>=252?6:A>=248?5:A>=240?4:A>=224?3:A>=192?2:1;VA[254]=VA[254]=1;var zA=A=>{if("function"==typeof TextEncoder&&TextEncoder.prototype.encode)return(new TextEncoder).encode(A);let I,g,B,C,Q,E=A.length,i=0;for(C=0;C<E;C++)g=A.charCodeAt(C),55296==(64512&g)&&C+1<E&&(B=A.charCodeAt(C+1),56320==(64512&B)&&(g=65536+(g-55296<<10)+(B-56320),C++)),i+=g<128?1:g<2048?2:g<65536?3:4;for(I=new Uint8Array(i),Q=0,C=0;Q<i;C++)g=A.charCodeAt(C),55296==(64512&g)&&C+1<E&&(B=A.charCodeAt(C+1),56320==(64512&B)&&(g=65536+(g-55296<<10)+(B-56320),C++)),g<128?I[Q++]=g:g<2048?(I[Q++]=192|g>>>6,I[Q++]=128|63&g):g<65536?(I[Q++]=224|g>>>12,I[Q++]=128|g>>>6&63,I[Q++]=128|63&g):(I[Q++]=240|g>>>18,I[Q++]=128|g>>>12&63,I[Q++]=128|g>>>6&63,I[Q++]=128|63&g);return I},XA=(A,I)=>{const g=I||A.length;if("function"==typeof TextDecoder&&TextDecoder.prototype.decode)return(new TextDecoder).decode(A.subarray(0,I));let B,C;const Q=new Array(2*g);for(C=0,B=0;B<g;){let I=A[B++];if(I<128){Q[C++]=I;continue}let E=VA[I];if(E>4)Q[C++]=65533,B+=E-1;else{for(I&=2===E?31:3===E?15:7;E>1&&B<g;)I=I<<6|63&A[B++],E--;E>1?Q[C++]=65533:I<65536?Q[C++]=I:(I-=65536,Q[C++]=55296|I>>10&1023,Q[C++]=56320|1023&I)}}return((A,I)=>{if(I<65534&&A.subarray&&WA)return String.fromCharCode.apply(null,A.length===I?A:A.subarray(0,I));let g="";for(let B=0;B<I;B++)g+=String.fromCharCode(A[B]);return g})(Q,C)},$A=(A,I)=>{(I=I||A.length)>A.length&&(I=A.length);let g=I-1;for(;g>=0&&128==(192&A[g]);)g--;return g<0||0===g?I:g+VA[A[g]]>I?g:I};var AI=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0};const II=Object.prototype.toString,{Z_NO_FLUSH:gI,Z_SYNC_FLUSH:BI,Z_FULL_FLUSH:CI,Z_FINISH:QI,Z_OK:EI,Z_STREAM_END:iI,Z_DEFAULT_COMPRESSION:eI,Z_DEFAULT_STRATEGY:tI,Z_DEFLATED:oI}=gA;function aI(A){this.options=vA({level:eI,method:oI,chunkSize:16384,windowBits:15,memLevel:8,strategy:tI},A||{});let I=this.options;I.raw&&I.windowBits>0?I.windowBits=-I.windowBits:I.gzip&&I.windowBits>0&&I.windowBits<16&&(I.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new AI,this.strm.avail_out=0;let g=ZA.deflateInit2(this.strm,I.level,I.method,I.windowBits,I.memLevel,I.strategy);if(g!==EI)throw new Error(IA[g]);if(I.header&&ZA.deflateSetHeader(this.strm,I.header),I.dictionary){let A;if(A="string"==typeof I.dictionary?zA(I.dictionary):"[object ArrayBuffer]"===II.call(I.dictionary)?new Uint8Array(I.dictionary):I.dictionary,g=ZA.deflateSetDictionary(this.strm,A),g!==EI)throw new Error(IA[g]);this._dict_set=!0}}aI.prototype.push=function(A,I){const g=this.strm,B=this.options.chunkSize;let C,Q;if(this.ended)return!1;for(Q=I===~~I?I:!0===I?QI:gI,"string"==typeof A?g.input=zA(A):"[object ArrayBuffer]"===II.call(A)?g.input=new Uint8Array(A):g.input=A,g.next_in=0,g.avail_in=g.input.length;;)if(0===g.avail_out&&(g.output=new Uint8Array(B),g.next_out=0,g.avail_out=B),(Q===BI||Q===CI)&&g.avail_out<=6)this.onData(g.output.subarray(0,g.next_out)),g.avail_out=0;else{if(C=ZA.deflate(g,Q),C===iI)return g.next_out>0&&this.onData(g.output.subarray(0,g.next_out)),C=ZA.deflateEnd(this.strm),this.onEnd(C),this.ended=!0,C===EI;if(0!==g.avail_out){if(Q>0&&g.next_out>0)this.onData(g.output.subarray(0,g.next_out)),g.avail_out=0;else if(0===g.avail_in)break}else this.onData(g.output)}return!0},aI.prototype.onData=function(A){this.chunks.push(A)},aI.prototype.onEnd=function(A){A===EI&&(this.result=jA(this.chunks)),this.chunks=[],this.err=A,this.msg=this.strm.msg};var sI=function(A,I){let g,B,C,Q,E,i,e,t,o,a,s,r,D,n,h,w,y,G,S,c,N,d,l,k;const F=A.state;g=A.next_in,l=A.input,B=g+(A.avail_in-5),C=A.next_out,k=A.output,Q=C-(I-A.avail_out),E=C+(A.avail_out-257),i=F.dmax,e=F.wsize,t=F.whave,o=F.wnext,a=F.window,s=F.hold,r=F.bits,D=F.lencode,n=F.distcode,h=(1<<F.lenbits)-1,w=(1<<F.distbits)-1;A:do{r<15&&(s+=l[g++]<<r,r+=8,s+=l[g++]<<r,r+=8),y=D[s&h];I:for(;;){if(G=y>>>24,s>>>=G,r-=G,G=y>>>16&255,0===G)k[C++]=65535&y;else{if(!(16&G)){if(0==(64&G)){y=D[(65535&y)+(s&(1<<G)-1)];continue I}if(32&G){F.mode=12;break A}A.msg="invalid literal/length code",F.mode=30;break A}S=65535&y,G&=15,G&&(r<G&&(s+=l[g++]<<r,r+=8),S+=s&(1<<G)-1,s>>>=G,r-=G),r<15&&(s+=l[g++]<<r,r+=8,s+=l[g++]<<r,r+=8),y=n[s&w];g:for(;;){if(G=y>>>24,s>>>=G,r-=G,G=y>>>16&255,!(16&G)){if(0==(64&G)){y=n[(65535&y)+(s&(1<<G)-1)];continue g}A.msg="invalid distance code",F.mode=30;break A}if(c=65535&y,G&=15,r<G&&(s+=l[g++]<<r,r+=8,r<G&&(s+=l[g++]<<r,r+=8)),c+=s&(1<<G)-1,c>i){A.msg="invalid distance too far back",F.mode=30;break A}if(s>>>=G,r-=G,G=C-Q,c>G){if(G=c-G,G>t&&F.sane){A.msg="invalid distance too far back",F.mode=30;break A}if(N=0,d=a,0===o){if(N+=e-G,G<S){S-=G;do{k[C++]=a[N++]}while(--G);N=C-c,d=k}}else if(o<G){if(N+=e+o-G,G-=o,G<S){S-=G;do{k[C++]=a[N++]}while(--G);if(N=0,o<S){G=o,S-=G;do{k[C++]=a[N++]}while(--G);N=C-c,d=k}}}else if(N+=o-G,G<S){S-=G;do{k[C++]=a[N++]}while(--G);N=C-c,d=k}for(;S>2;)k[C++]=d[N++],k[C++]=d[N++],k[C++]=d[N++],S-=3;S&&(k[C++]=d[N++],S>1&&(k[C++]=d[N++]))}else{N=C-c;do{k[C++]=k[N++],k[C++]=k[N++],k[C++]=k[N++],S-=3}while(S>2);S&&(k[C++]=k[N++],S>1&&(k[C++]=k[N++]))}break}}break}}while(g<B&&C<E);S=r>>3,g-=S,r-=S<<3,s&=(1<<r)-1,A.next_in=g,A.next_out=C,A.avail_in=g<B?B-g+5:5-(g-B),A.avail_out=C<E?E-C+257:257-(C-E),F.hold=s,F.bits=r};const rI=new Uint16Array([3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0]),DI=new Uint8Array([16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78]),nI=new Uint16Array([1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0]),hI=new Uint8Array([16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64]);var wI=(A,I,g,B,C,Q,E,i)=>{const e=i.bits;let t,o,a,s,r,D,n=0,h=0,w=0,y=0,G=0,S=0,c=0,N=0,d=0,l=0,k=null,F=0;const R=new Uint16Array(16),L=new Uint16Array(16);let U,f,Y,K=null,u=0;for(n=0;n<=15;n++)R[n]=0;for(h=0;h<B;h++)R[I[g+h]]++;for(G=e,y=15;y>=1&&0===R[y];y--);if(G>y&&(G=y),0===y)return C[Q++]=20971520,C[Q++]=20971520,i.bits=1,0;for(w=1;w<y&&0===R[w];w++);for(G<w&&(G=w),N=1,n=1;n<=15;n++)if(N<<=1,N-=R[n],N<0)return-1;if(N>0&&(0===A||1!==y))return-1;for(L[1]=0,n=1;n<15;n++)L[n+1]=L[n]+R[n];for(h=0;h<B;h++)0!==I[g+h]&&(E[L[I[g+h]]++]=h);if(0===A?(k=K=E,D=19):1===A?(k=rI,F-=257,K=DI,u-=257,D=256):(k=nI,K=hI,D=-1),l=0,h=0,n=w,r=Q,S=G,c=0,a=-1,d=1<<G,s=d-1,1===A&&d>852||2===A&&d>592)return 1;for(;;){U=n-c,E[h]<D?(f=0,Y=E[h]):E[h]>D?(f=K[u+E[h]],Y=k[F+E[h]]):(f=96,Y=0),t=1<<n-c,o=1<<S,w=o;do{o-=t,C[r+(l>>c)+o]=U<<24|f<<16|Y|0}while(0!==o);for(t=1<<n-1;l&t;)t>>=1;if(0!==t?(l&=t-1,l+=t):l=0,h++,0==--R[n]){if(n===y)break;n=I[g+E[h]]}if(n>G&&(l&s)!==a){for(0===c&&(c=G),r+=w,S=n-c,N=1<<S;S+c<y&&(N-=R[S+c],!(N<=0));)S++,N<<=1;if(d+=1<<S,1===A&&d>852||2===A&&d>592)return 1;a=l&s,C[a]=G<<24|S<<16|r-Q|0}}return 0!==l&&(C[r+l]=n-c<<24|64<<16|0),i.bits=G,0};const{Z_FINISH:yI,Z_BLOCK:GI,Z_TREES:SI,Z_OK:cI,Z_STREAM_END:NI,Z_NEED_DICT:dI,Z_STREAM_ERROR:lI,Z_DATA_ERROR:kI,Z_MEM_ERROR:FI,Z_BUF_ERROR:RI,Z_DEFLATED:LI}=gA,UI=A=>(A>>>24&255)+(A>>>8&65280)+((65280&A)<<8)+((255&A)<<24);function fI(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}const YI=A=>{if(!A||!A.state)return lI;const I=A.state;return A.total_in=A.total_out=I.total=0,A.msg="",I.wrap&&(A.adler=1&I.wrap),I.mode=1,I.last=0,I.havedict=0,I.dmax=32768,I.head=null,I.hold=0,I.bits=0,I.lencode=I.lendyn=new Int32Array(852),I.distcode=I.distdyn=new Int32Array(592),I.sane=1,I.back=-1,cI},KI=A=>{if(!A||!A.state)return lI;const I=A.state;return I.wsize=0,I.whave=0,I.wnext=0,YI(A)},uI=(A,I)=>{let g;if(!A||!A.state)return lI;const B=A.state;return I<0?(g=0,I=-I):(g=1+(I>>4),I<48&&(I&=15)),I&&(I<8||I>15)?lI:(null!==B.window&&B.wbits!==I&&(B.window=null),B.wrap=g,B.wbits=I,KI(A))},MI=(A,I)=>{if(!A)return lI;const g=new fI;A.state=g,g.window=null;const B=uI(A,I);return B!==cI&&(A.state=null),B};let JI,HI,pI=!0;const mI=A=>{if(pI){JI=new Int32Array(512),HI=new Int32Array(32);let I=0;for(;I<144;)A.lens[I++]=8;for(;I<256;)A.lens[I++]=9;for(;I<280;)A.lens[I++]=7;for(;I<288;)A.lens[I++]=8;for(wI(1,A.lens,0,288,JI,0,A.work,{bits:9}),I=0;I<32;)A.lens[I++]=5;wI(2,A.lens,0,32,HI,0,A.work,{bits:5}),pI=!1}A.lencode=JI,A.lenbits=9,A.distcode=HI,A.distbits=5},qI=(A,I,g,B)=>{let C;const Q=A.state;return null===Q.window&&(Q.wsize=1<<Q.wbits,Q.wnext=0,Q.whave=0,Q.window=new Uint8Array(Q.wsize)),B>=Q.wsize?(Q.window.set(I.subarray(g-Q.wsize,g),0),Q.wnext=0,Q.whave=Q.wsize):(C=Q.wsize-Q.wnext,C>B&&(C=B),Q.window.set(I.subarray(g-B,g-B+C),Q.wnext),(B-=C)?(Q.window.set(I.subarray(g-B,g),0),Q.wnext=B,Q.whave=Q.wsize):(Q.wnext+=C,Q.wnext===Q.wsize&&(Q.wnext=0),Q.whave<Q.wsize&&(Q.whave+=C))),0};var bI={inflateReset:KI,inflateReset2:uI,inflateResetKeep:YI,inflateInit:A=>MI(A,15),inflateInit2:MI,inflate:(A,I)=>{let g,B,C,Q,E,i,e,t,o,a,s,r,D,n,h,w,y,G,S,c,N,d,l=0;const k=new Uint8Array(4);let F,R;const L=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(!A||!A.state||!A.output||!A.input&&0!==A.avail_in)return lI;g=A.state,12===g.mode&&(g.mode=13),E=A.next_out,C=A.output,e=A.avail_out,Q=A.next_in,B=A.input,i=A.avail_in,t=g.hold,o=g.bits,a=i,s=e,d=cI;A:for(;;)switch(g.mode){case 1:if(0===g.wrap){g.mode=13;break}for(;o<16;){if(0===i)break A;i--,t+=B[Q++]<<o,o+=8}if(2&g.wrap&&35615===t){g.check=0,k[0]=255&t,k[1]=t>>>8&255,g.check=AA(g.check,k,2,0),t=0,o=0,g.mode=2;break}if(g.flags=0,g.head&&(g.head.done=!1),!(1&g.wrap)||(((255&t)<<8)+(t>>8))%31){A.msg="incorrect header check",g.mode=30;break}if((15&t)!==LI){A.msg="unknown compression method",g.mode=30;break}if(t>>>=4,o-=4,N=8+(15&t),0===g.wbits)g.wbits=N;else if(N>g.wbits){A.msg="invalid window size",g.mode=30;break}g.dmax=1<<g.wbits,A.adler=g.check=1,g.mode=512&t?10:12,t=0,o=0;break;case 2:for(;o<16;){if(0===i)break A;i--,t+=B[Q++]<<o,o+=8}if(g.flags=t,(255&g.flags)!==LI){A.msg="unknown compression method",g.mode=30;break}if(57344&g.flags){A.msg="unknown header flags set",g.mode=30;break}g.head&&(g.head.text=t>>8&1),512&g.flags&&(k[0]=255&t,k[1]=t>>>8&255,g.check=AA(g.check,k,2,0)),t=0,o=0,g.mode=3;case 3:for(;o<32;){if(0===i)break A;i--,t+=B[Q++]<<o,o+=8}g.head&&(g.head.time=t),512&g.flags&&(k[0]=255&t,k[1]=t>>>8&255,k[2]=t>>>16&255,k[3]=t>>>24&255,g.check=AA(g.check,k,4,0)),t=0,o=0,g.mode=4;case 4:for(;o<16;){if(0===i)break A;i--,t+=B[Q++]<<o,o+=8}g.head&&(g.head.xflags=255&t,g.head.os=t>>8),512&g.flags&&(k[0]=255&t,k[1]=t>>>8&255,g.check=AA(g.check,k,2,0)),t=0,o=0,g.mode=5;case 5:if(1024&g.flags){for(;o<16;){if(0===i)break A;i--,t+=B[Q++]<<o,o+=8}g.length=t,g.head&&(g.head.extra_len=t),512&g.flags&&(k[0]=255&t,k[1]=t>>>8&255,g.check=AA(g.check,k,2,0)),t=0,o=0}else g.head&&(g.head.extra=null);g.mode=6;case 6:if(1024&g.flags&&(r=g.length,r>i&&(r=i),r&&(g.head&&(N=g.head.extra_len-g.length,g.head.extra||(g.head.extra=new Uint8Array(g.head.extra_len)),g.head.extra.set(B.subarray(Q,Q+r),N)),512&g.flags&&(g.check=AA(g.check,B,r,Q)),i-=r,Q+=r,g.length-=r),g.length))break A;g.length=0,g.mode=7;case 7:if(2048&g.flags){if(0===i)break A;r=0;do{N=B[Q+r++],g.head&&N&&g.length<65536&&(g.head.name+=String.fromCharCode(N))}while(N&&r<i);if(512&g.flags&&(g.check=AA(g.check,B,r,Q)),i-=r,Q+=r,N)break A}else g.head&&(g.head.name=null);g.length=0,g.mode=8;case 8:if(4096&g.flags){if(0===i)break A;r=0;do{N=B[Q+r++],g.head&&N&&g.length<65536&&(g.head.comment+=String.fromCharCode(N))}while(N&&r<i);if(512&g.flags&&(g.check=AA(g.check,B,r,Q)),i-=r,Q+=r,N)break A}else g.head&&(g.head.comment=null);g.mode=9;case 9:if(512&g.flags){for(;o<16;){if(0===i)break A;i--,t+=B[Q++]<<o,o+=8}if(t!==(65535&g.check)){A.msg="header crc mismatch",g.mode=30;break}t=0,o=0}g.head&&(g.head.hcrc=g.flags>>9&1,g.head.done=!0),A.adler=g.check=0,g.mode=12;break;case 10:for(;o<32;){if(0===i)break A;i--,t+=B[Q++]<<o,o+=8}A.adler=g.check=UI(t),t=0,o=0,g.mode=11;case 11:if(0===g.havedict)return A.next_out=E,A.avail_out=e,A.next_in=Q,A.avail_in=i,g.hold=t,g.bits=o,dI;A.adler=g.check=1,g.mode=12;case 12:if(I===GI||I===SI)break A;case 13:if(g.last){t>>>=7&o,o-=7&o,g.mode=27;break}for(;o<3;){if(0===i)break A;i--,t+=B[Q++]<<o,o+=8}switch(g.last=1&t,t>>>=1,o-=1,3&t){case 0:g.mode=14;break;case 1:if(mI(g),g.mode=20,I===SI){t>>>=2,o-=2;break A}break;case 2:g.mode=17;break;case 3:A.msg="invalid block type",g.mode=30}t>>>=2,o-=2;break;case 14:for(t>>>=7&o,o-=7&o;o<32;){if(0===i)break A;i--,t+=B[Q++]<<o,o+=8}if((65535&t)!=(t>>>16^65535)){A.msg="invalid stored block lengths",g.mode=30;break}if(g.length=65535&t,t=0,o=0,g.mode=15,I===SI)break A;case 15:g.mode=16;case 16:if(r=g.length,r){if(r>i&&(r=i),r>e&&(r=e),0===r)break A;C.set(B.subarray(Q,Q+r),E),i-=r,Q+=r,e-=r,E+=r,g.length-=r;break}g.mode=12;break;case 17:for(;o<14;){if(0===i)break A;i--,t+=B[Q++]<<o,o+=8}if(g.nlen=257+(31&t),t>>>=5,o-=5,g.ndist=1+(31&t),t>>>=5,o-=5,g.ncode=4+(15&t),t>>>=4,o-=4,g.nlen>286||g.ndist>30){A.msg="too many length or distance symbols",g.mode=30;break}g.have=0,g.mode=18;case 18:for(;g.have<g.ncode;){for(;o<3;){if(0===i)break A;i--,t+=B[Q++]<<o,o+=8}g.lens[L[g.have++]]=7&t,t>>>=3,o-=3}for(;g.have<19;)g.lens[L[g.have++]]=0;if(g.lencode=g.lendyn,g.lenbits=7,F={bits:g.lenbits},d=wI(0,g.lens,0,19,g.lencode,0,g.work,F),g.lenbits=F.bits,d){A.msg="invalid code lengths set",g.mode=30;break}g.have=0,g.mode=19;case 19:for(;g.have<g.nlen+g.ndist;){for(;l=g.lencode[t&(1<<g.lenbits)-1],h=l>>>24,w=l>>>16&255,y=65535&l,!(h<=o);){if(0===i)break A;i--,t+=B[Q++]<<o,o+=8}if(y<16)t>>>=h,o-=h,g.lens[g.have++]=y;else{if(16===y){for(R=h+2;o<R;){if(0===i)break A;i--,t+=B[Q++]<<o,o+=8}if(t>>>=h,o-=h,0===g.have){A.msg="invalid bit length repeat",g.mode=30;break}N=g.lens[g.have-1],r=3+(3&t),t>>>=2,o-=2}else if(17===y){for(R=h+3;o<R;){if(0===i)break A;i--,t+=B[Q++]<<o,o+=8}t>>>=h,o-=h,N=0,r=3+(7&t),t>>>=3,o-=3}else{for(R=h+7;o<R;){if(0===i)break A;i--,t+=B[Q++]<<o,o+=8}t>>>=h,o-=h,N=0,r=11+(127&t),t>>>=7,o-=7}if(g.have+r>g.nlen+g.ndist){A.msg="invalid bit length repeat",g.mode=30;break}for(;r--;)g.lens[g.have++]=N}}if(30===g.mode)break;if(0===g.lens[256]){A.msg="invalid code -- missing end-of-block",g.mode=30;break}if(g.lenbits=9,F={bits:g.lenbits},d=wI(1,g.lens,0,g.nlen,g.lencode,0,g.work,F),g.lenbits=F.bits,d){A.msg="invalid literal/lengths set",g.mode=30;break}if(g.distbits=6,g.distcode=g.distdyn,F={bits:g.distbits},d=wI(2,g.lens,g.nlen,g.ndist,g.distcode,0,g.work,F),g.distbits=F.bits,d){A.msg="invalid distances set",g.mode=30;break}if(g.mode=20,I===SI)break A;case 20:g.mode=21;case 21:if(i>=6&&e>=258){A.next_out=E,A.avail_out=e,A.next_in=Q,A.avail_in=i,g.hold=t,g.bits=o,sI(A,s),E=A.next_out,C=A.output,e=A.avail_out,Q=A.next_in,B=A.input,i=A.avail_in,t=g.hold,o=g.bits,12===g.mode&&(g.back=-1);break}for(g.back=0;l=g.lencode[t&(1<<g.lenbits)-1],h=l>>>24,w=l>>>16&255,y=65535&l,!(h<=o);){if(0===i)break A;i--,t+=B[Q++]<<o,o+=8}if(w&&0==(240&w)){for(G=h,S=w,c=y;l=g.lencode[c+((t&(1<<G+S)-1)>>G)],h=l>>>24,w=l>>>16&255,y=65535&l,!(G+h<=o);){if(0===i)break A;i--,t+=B[Q++]<<o,o+=8}t>>>=G,o-=G,g.back+=G}if(t>>>=h,o-=h,g.back+=h,g.length=y,0===w){g.mode=26;break}if(32&w){g.back=-1,g.mode=12;break}if(64&w){A.msg="invalid literal/length code",g.mode=30;break}g.extra=15&w,g.mode=22;case 22:if(g.extra){for(R=g.extra;o<R;){if(0===i)break A;i--,t+=B[Q++]<<o,o+=8}g.length+=t&(1<<g.extra)-1,t>>>=g.extra,o-=g.extra,g.back+=g.extra}g.was=g.length,g.mode=23;case 23:for(;l=g.distcode[t&(1<<g.distbits)-1],h=l>>>24,w=l>>>16&255,y=65535&l,!(h<=o);){if(0===i)break A;i--,t+=B[Q++]<<o,o+=8}if(0==(240&w)){for(G=h,S=w,c=y;l=g.distcode[c+((t&(1<<G+S)-1)>>G)],h=l>>>24,w=l>>>16&255,y=65535&l,!(G+h<=o);){if(0===i)break A;i--,t+=B[Q++]<<o,o+=8}t>>>=G,o-=G,g.back+=G}if(t>>>=h,o-=h,g.back+=h,64&w){A.msg="invalid distance code",g.mode=30;break}g.offset=y,g.extra=15&w,g.mode=24;case 24:if(g.extra){for(R=g.extra;o<R;){if(0===i)break A;i--,t+=B[Q++]<<o,o+=8}g.offset+=t&(1<<g.extra)-1,t>>>=g.extra,o-=g.extra,g.back+=g.extra}if(g.offset>g.dmax){A.msg="invalid distance too far back",g.mode=30;break}g.mode=25;case 25:if(0===e)break A;if(r=s-e,g.offset>r){if(r=g.offset-r,r>g.whave&&g.sane){A.msg="invalid distance too far back",g.mode=30;break}r>g.wnext?(r-=g.wnext,D=g.wsize-r):D=g.wnext-r,r>g.length&&(r=g.length),n=g.window}else n=C,D=E-g.offset,r=g.length;r>e&&(r=e),e-=r,g.length-=r;do{C[E++]=n[D++]}while(--r);0===g.length&&(g.mode=21);break;case 26:if(0===e)break A;C[E++]=g.length,e--,g.mode=21;break;case 27:if(g.wrap){for(;o<32;){if(0===i)break A;i--,t|=B[Q++]<<o,o+=8}if(s-=e,A.total_out+=s,g.total+=s,s&&(A.adler=g.check=g.flags?AA(g.check,C,s,E-s):X(g.check,C,s,E-s)),s=e,(g.flags?t:UI(t))!==g.check){A.msg="incorrect data check",g.mode=30;break}t=0,o=0}g.mode=28;case 28:if(g.wrap&&g.flags){for(;o<32;){if(0===i)break A;i--,t+=B[Q++]<<o,o+=8}if(t!==(4294967295&g.total)){A.msg="incorrect length check",g.mode=30;break}t=0,o=0}g.mode=29;case 29:d=NI;break A;case 30:d=kI;break A;case 31:return FI;default:return lI}return A.next_out=E,A.avail_out=e,A.next_in=Q,A.avail_in=i,g.hold=t,g.bits=o,(g.wsize||s!==A.avail_out&&g.mode<30&&(g.mode<27||I!==yI))&&qI(A,A.output,A.next_out,s-A.avail_out),a-=A.avail_in,s-=A.avail_out,A.total_in+=a,A.total_out+=s,g.total+=s,g.wrap&&s&&(A.adler=g.check=g.flags?AA(g.check,C,s,A.next_out-s):X(g.check,C,s,A.next_out-s)),A.data_type=g.bits+(g.last?64:0)+(12===g.mode?128:0)+(20===g.mode||15===g.mode?256:0),(0===a&&0===s||I===yI)&&d===cI&&(d=RI),d},inflateEnd:A=>{if(!A||!A.state)return lI;let I=A.state;return I.window&&(I.window=null),A.state=null,cI},inflateGetHeader:(A,I)=>{if(!A||!A.state)return lI;const g=A.state;return 0==(2&g.wrap)?lI:(g.head=I,I.done=!1,cI)},inflateSetDictionary:(A,I)=>{const g=I.length;let B,C,Q;return A&&A.state?(B=A.state,0!==B.wrap&&11!==B.mode?lI:11===B.mode&&(C=1,C=X(C,I,g,0),C!==B.check)?kI:(Q=qI(A,I,g,g),Q?(B.mode=31,FI):(B.havedict=1,cI))):lI},inflateInfo:"pako inflate (from Nodeca project)"};var xI=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1};const OI=Object.prototype.toString,{Z_NO_FLUSH:TI,Z_FINISH:_I,Z_OK:ZI,Z_STREAM_END:PI,Z_NEED_DICT:vI,Z_STREAM_ERROR:jI,Z_DATA_ERROR:WI,Z_MEM_ERROR:VI}=gA;function zI(A){this.options=vA({chunkSize:65536,windowBits:15,to:""},A||{});const I=this.options;I.raw&&I.windowBits>=0&&I.windowBits<16&&(I.windowBits=-I.windowBits,0===I.windowBits&&(I.windowBits=-15)),!(I.windowBits>=0&&I.windowBits<16)||A&&A.windowBits||(I.windowBits+=32),I.windowBits>15&&I.windowBits<48&&0==(15&I.windowBits)&&(I.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new AI,this.strm.avail_out=0;let g=bI.inflateInit2(this.strm,I.windowBits);if(g!==ZI)throw new Error(IA[g]);if(this.header=new xI,bI.inflateGetHeader(this.strm,this.header),I.dictionary&&("string"==typeof I.dictionary?I.dictionary=zA(I.dictionary):"[object ArrayBuffer]"===OI.call(I.dictionary)&&(I.dictionary=new Uint8Array(I.dictionary)),I.raw&&(g=bI.inflateSetDictionary(this.strm,I.dictionary),g!==ZI)))throw new Error(IA[g])}function XI(A,I){const g=new zI(I);if(g.push(A),g.err)throw g.msg||IA[g.err];return g.result}zI.prototype.push=function(A,I){const g=this.strm,B=this.options.chunkSize,C=this.options.dictionary;let Q,E,i;if(this.ended)return!1;for(E=I===~~I?I:!0===I?_I:TI,"[object ArrayBuffer]"===OI.call(A)?g.input=new Uint8Array(A):g.input=A,g.next_in=0,g.avail_in=g.input.length;;){for(0===g.avail_out&&(g.output=new Uint8Array(B),g.next_out=0,g.avail_out=B),Q=bI.inflate(g,E),Q===vI&&C&&(Q=bI.inflateSetDictionary(g,C),Q===ZI?Q=bI.inflate(g,E):Q===WI&&(Q=vI));g.avail_in>0&&Q===PI&&g.state.wrap>0&&0!==A[g.next_in];)bI.inflateReset(g),Q=bI.inflate(g,E);switch(Q){case jI:case WI:case vI:case VI:return this.onEnd(Q),this.ended=!0,!1}if(i=g.avail_out,g.next_out&&(0===g.avail_out||Q===PI))if("string"===this.options.to){let A=$A(g.output,g.next_out),I=g.next_out-A,C=XA(g.output,A);g.next_out=I,g.avail_out=B-I,I&&g.output.set(g.output.subarray(A,A+I),0),this.onData(C)}else this.onData(g.output.length===g.next_out?g.output:g.output.subarray(0,g.next_out));if(Q!==ZI||0!==i){if(Q===PI)return Q=bI.inflateEnd(this.strm),this.onEnd(Q),this.ended=!0,!0;if(0===g.avail_in)break}}return!0},zI.prototype.onData=function(A){this.chunks.push(A)},zI.prototype.onEnd=function(A){A===ZI&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=jA(this.chunks)),this.chunks=[],this.err=A,this.msg=this.strm.msg};var $I={Inflate:zI,inflate:XI,inflateRaw:function(A,I){return(I=I||{}).raw=!0,XI(A,I)},ungzip:XI,constants:gA};const{Inflate:Ag,inflate:Ig,inflateRaw:gg,ungzip:Bg}=$I;var Cg=Ig;var Qg=Object.freeze({__proto__:null,default:class extends i{decodeBlock(A){return Cg(new Uint8Array(A)).buffer}}});var Eg,ig=Object.freeze({__proto__:null,default:class extends i{decodeBlock(A){const I=new DataView(A),g=[];for(let B=0;B<A.byteLength;++B){let A=I.getInt8(B);if(A<0){const C=I.getUint8(B+1);A=-A;for(let I=0;I<=A;++I)g.push(C);B+=1}else{for(let C=0;C<=A;++C)g.push(I.getUint8(B+C+1));B+=A+1}}return new Uint8Array(g).buffer}}}),eg={exports:{}};Eg=eg,\n/* Copyright 2015-2021 Esri. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 @preserve */\nfunction(){var A,I,g,B,C,Q,E,i,e,t,o,a,s,r,D,n,h=(A={defaultNoDataValue:-34027999387901484e22,decode:function(Q,E){var i=(E=E||{}).encodedMaskData||null===E.encodedMaskData,e=C(Q,E.inputOffset||0,i),t=null!==E.noDataValue?E.noDataValue:A.defaultNoDataValue,o=I(e,E.pixelType||Float32Array,E.encodedMaskData,t,E.returnMask),a={width:e.width,height:e.height,pixelData:o.resultPixels,minValue:o.minValue,maxValue:e.pixels.maxValue,noDataValue:t};return o.resultMask&&(a.maskData=o.resultMask),E.returnEncodedMask&&e.mask&&(a.encodedMaskData=e.mask.bitset?e.mask.bitset:null),E.returnFileInfo&&(a.fileInfo=g(e),E.computeUsedBitDepths&&(a.fileInfo.bitDepths=B(e))),a}},I=function(A,I,g,B,C){var E,i,e,t=0,o=A.pixels.numBlocksX,a=A.pixels.numBlocksY,s=Math.floor(A.width/o),r=Math.floor(A.height/a),D=2*A.maxZError,n=Number.MAX_VALUE;g=g||(A.mask?A.mask.bitset:null),i=new I(A.width*A.height),C&&g&&(e=new Uint8Array(A.width*A.height));for(var h,w,y=new Float32Array(s*r),G=0;G<=a;G++){var S=G!==a?r:A.height%a;if(0!==S)for(var c=0;c<=o;c++){var N=c!==o?s:A.width%o;if(0!==N){var d,l,k,F,R=G*A.width*r+c*s,L=A.width-N,U=A.pixels.blocks[t];if(U.encoding<2?(0===U.encoding?d=U.rawData:(Q(U.stuffedData,U.bitsPerPixel,U.numValidPixels,U.offset,D,y,A.pixels.maxValue),d=y),l=0):k=2===U.encoding?0:U.offset,g)for(w=0;w<S;w++){for(7&R&&(F=g[R>>3],F<<=7&R),h=0;h<N;h++)7&R||(F=g[R>>3]),128&F?(e&&(e[R]=1),n=n>(E=U.encoding<2?d[l++]:k)?E:n,i[R++]=E):(e&&(e[R]=0),i[R++]=B),F<<=1;R+=L}else if(U.encoding<2)for(w=0;w<S;w++){for(h=0;h<N;h++)n=n>(E=d[l++])?E:n,i[R++]=E;R+=L}else for(n=n>k?k:n,w=0;w<S;w++){for(h=0;h<N;h++)i[R++]=k;R+=L}if(1===U.encoding&&l!==U.numValidPixels)throw"Block and Mask do not match";t++}}}return{resultPixels:i,resultMask:e,minValue:n}},g=function(A){return{fileIdentifierString:A.fileIdentifierString,fileVersion:A.fileVersion,imageType:A.imageType,height:A.height,width:A.width,maxZError:A.maxZError,eofOffset:A.eofOffset,mask:A.mask?{numBlocksX:A.mask.numBlocksX,numBlocksY:A.mask.numBlocksY,numBytes:A.mask.numBytes,maxValue:A.mask.maxValue}:null,pixels:{numBlocksX:A.pixels.numBlocksX,numBlocksY:A.pixels.numBlocksY,numBytes:A.pixels.numBytes,maxValue:A.pixels.maxValue,noDataValue:A.noDataValue}}},B=function(A){for(var I=A.pixels.numBlocksX*A.pixels.numBlocksY,g={},B=0;B<I;B++){var C=A.pixels.blocks[B];0===C.encoding?g.float32=!0:1===C.encoding?g[C.bitsPerPixel]=!0:g[0]=!0}return Object.keys(g)},C=function(A,I,g){var B={},C=new Uint8Array(A,I,10);if(B.fileIdentifierString=String.fromCharCode.apply(null,C),"CntZImage"!==B.fileIdentifierString.trim())throw"Unexpected file identifier string: "+B.fileIdentifierString;I+=10;var Q=new DataView(A,I,24);if(B.fileVersion=Q.getInt32(0,!0),B.imageType=Q.getInt32(4,!0),B.height=Q.getUint32(8,!0),B.width=Q.getUint32(12,!0),B.maxZError=Q.getFloat64(16,!0),I+=24,!g)if(Q=new DataView(A,I,16),B.mask={},B.mask.numBlocksY=Q.getUint32(0,!0),B.mask.numBlocksX=Q.getUint32(4,!0),B.mask.numBytes=Q.getUint32(8,!0),B.mask.maxValue=Q.getFloat32(12,!0),I+=16,B.mask.numBytes>0){var E=new Uint8Array(Math.ceil(B.width*B.height/8)),i=(Q=new DataView(A,I,B.mask.numBytes)).getInt16(0,!0),e=2,t=0;do{if(i>0)for(;i--;)E[t++]=Q.getUint8(e++);else{var o=Q.getUint8(e++);for(i=-i;i--;)E[t++]=o}i=Q.getInt16(e,!0),e+=2}while(e<B.mask.numBytes);if(-32768!==i||t<E.length)throw"Unexpected end of mask RLE encoding";B.mask.bitset=E,I+=B.mask.numBytes}else 0==(B.mask.numBytes|B.mask.numBlocksY|B.mask.maxValue)&&(B.mask.bitset=new Uint8Array(Math.ceil(B.width*B.height/8)));Q=new DataView(A,I,16),B.pixels={},B.pixels.numBlocksY=Q.getUint32(0,!0),B.pixels.numBlocksX=Q.getUint32(4,!0),B.pixels.numBytes=Q.getUint32(8,!0),B.pixels.maxValue=Q.getFloat32(12,!0),I+=16;var a=B.pixels.numBlocksX,s=B.pixels.numBlocksY,r=a+(B.width%a>0?1:0),D=s+(B.height%s>0?1:0);B.pixels.blocks=new Array(r*D);for(var n=0,h=0;h<D;h++)for(var w=0;w<r;w++){var y=0,G=A.byteLength-I;Q=new DataView(A,I,Math.min(10,G));var S={};B.pixels.blocks[n++]=S;var c=Q.getUint8(0);if(y++,S.encoding=63&c,S.encoding>3)throw"Invalid block encoding ("+S.encoding+")";if(2!==S.encoding){if(0!==c&&2!==c){if(c>>=6,S.offsetType=c,2===c)S.offset=Q.getInt8(1),y++;else if(1===c)S.offset=Q.getInt16(1,!0),y+=2;else{if(0!==c)throw"Invalid block offset type";S.offset=Q.getFloat32(1,!0),y+=4}if(1===S.encoding)if(c=Q.getUint8(y),y++,S.bitsPerPixel=63&c,c>>=6,S.numValidPixelsType=c,2===c)S.numValidPixels=Q.getUint8(y),y++;else if(1===c)S.numValidPixels=Q.getUint16(y,!0),y+=2;else{if(0!==c)throw"Invalid valid pixel count type";S.numValidPixels=Q.getUint32(y,!0),y+=4}}var N;if(I+=y,3!==S.encoding)if(0===S.encoding){var d=(B.pixels.numBytes-1)/4;if(d!==Math.floor(d))throw"uncompressed block has invalid length";N=new ArrayBuffer(4*d),new Uint8Array(N).set(new Uint8Array(A,I,4*d));var l=new Float32Array(N);S.rawData=l,I+=4*d}else if(1===S.encoding){var k=Math.ceil(S.numValidPixels*S.bitsPerPixel/8),F=Math.ceil(k/4);N=new ArrayBuffer(4*F),new Uint8Array(N).set(new Uint8Array(A,I,k)),S.stuffedData=new Uint32Array(N),I+=k}}else I++}return B.eofOffset=I,B},Q=function(A,I,g,B,C,Q,E){var i,e,t,o=(1<<I)-1,a=0,s=0,r=Math.ceil((E-B)/C),D=4*A.length-Math.ceil(I*g/8);for(A[A.length-1]<<=8*D,i=0;i<g;i++){if(0===s&&(t=A[a++],s=32),s>=I)e=t>>>s-I&o,s-=I;else{var n=I-s;e=(t&o)<<n&o,e+=(t=A[a++])>>>(s=32-n)}Q[i]=e<r?B+e*C:E}return Q},A),w=(E=function(A,I,g,B,C,Q,E,i){var e,t,o,a,s,r=(1<<g)-1,D=0,n=0,h=4*A.length-Math.ceil(g*B/8);if(A[A.length-1]<<=8*h,C)for(e=0;e<B;e++)0===n&&(o=A[D++],n=32),n>=g?(t=o>>>n-g&r,n-=g):(t=(o&r)<<(a=g-n)&r,t+=(o=A[D++])>>>(n=32-a)),I[e]=C[t];else for(s=Math.ceil((i-Q)/E),e=0;e<B;e++)0===n&&(o=A[D++],n=32),n>=g?(t=o>>>n-g&r,n-=g):(t=(o&r)<<(a=g-n)&r,t+=(o=A[D++])>>>(n=32-a)),I[e]=t<s?Q+t*E:i},i=function(A,I,g,B,C,Q){var E,i=(1<<I)-1,e=0,t=0,o=0,a=0,s=0,r=[],D=4*A.length-Math.ceil(I*g/8);A[A.length-1]<<=8*D;var n=Math.ceil((Q-B)/C);for(t=0;t<g;t++)0===a&&(E=A[e++],a=32),a>=I?(s=E>>>a-I&i,a-=I):(s=(E&i)<<(o=I-a)&i,s+=(E=A[e++])>>>(a=32-o)),r[t]=s<n?B+s*C:Q;return r.unshift(B),r},e=function(A,I,g,B,C,Q,E,i){var e,t,o,a,s=(1<<g)-1,r=0,D=0,n=0;if(C)for(e=0;e<B;e++)0===D&&(o=A[r++],D=32,n=0),D>=g?(t=o>>>n&s,D-=g,n+=g):(t=o>>>n&s,D=32-(a=g-D),t|=((o=A[r++])&(1<<a)-1)<<g-a,n=a),I[e]=C[t];else{var h=Math.ceil((i-Q)/E);for(e=0;e<B;e++)0===D&&(o=A[r++],D=32,n=0),D>=g?(t=o>>>n&s,D-=g,n+=g):(t=o>>>n&s,D=32-(a=g-D),t|=((o=A[r++])&(1<<a)-1)<<g-a,n=a),I[e]=t<h?Q+t*E:i}return I},t=function(A,I,g,B,C,Q){var E,i=(1<<I)-1,e=0,t=0,o=0,a=0,s=0,r=0,D=[],n=Math.ceil((Q-B)/C);for(t=0;t<g;t++)0===a&&(E=A[e++],a=32,r=0),a>=I?(s=E>>>r&i,a-=I,r+=I):(s=E>>>r&i,a=32-(o=I-a),s|=((E=A[e++])&(1<<o)-1)<<I-o,r=o),D[t]=s<n?B+s*C:Q;return D.unshift(B),D},o=function(A,I,g,B){var C,Q,E,i,e=(1<<g)-1,t=0,o=0,a=4*A.length-Math.ceil(g*B/8);for(A[A.length-1]<<=8*a,C=0;C<B;C++)0===o&&(E=A[t++],o=32),o>=g?(Q=E>>>o-g&e,o-=g):(Q=(E&e)<<(i=g-o)&e,Q+=(E=A[t++])>>>(o=32-i)),I[C]=Q;return I},a=function(A,I,g,B){var C,Q,E,i,e=(1<<g)-1,t=0,o=0,a=0;for(C=0;C<B;C++)0===o&&(E=A[t++],o=32,a=0),o>=g?(Q=E>>>a&e,o-=g,a+=g):(Q=E>>>a&e,o=32-(i=g-o),Q|=((E=A[t++])&(1<<i)-1)<<g-i,a=i),I[C]=Q;return I},s={HUFFMAN_LUT_BITS_MAX:12,computeChecksumFletcher32:function(A){for(var I=65535,g=65535,B=A.length,C=Math.floor(B/2),Q=0;C;){var E=C>=359?359:C;C-=E;do{I+=A[Q++]<<8,g+=I+=A[Q++]}while(--E);I=(65535&I)+(I>>>16),g=(65535&g)+(g>>>16)}return 1&B&&(g+=I+=A[Q]<<8),((g=(65535&g)+(g>>>16))<<16|(I=(65535&I)+(I>>>16)))>>>0},readHeaderInfo:function(A,I){var g=I.ptr,B=new Uint8Array(A,g,6),C={};if(C.fileIdentifierString=String.fromCharCode.apply(null,B),0!==C.fileIdentifierString.lastIndexOf("Lerc2",0))throw"Unexpected file identifier string (expect Lerc2 ): "+C.fileIdentifierString;g+=6;var Q,E=new DataView(A,g,8),i=E.getInt32(0,!0);if(C.fileVersion=i,g+=4,i>=3&&(C.checksum=E.getUint32(4,!0),g+=4),E=new DataView(A,g,12),C.height=E.getUint32(0,!0),C.width=E.getUint32(4,!0),g+=8,i>=4?(C.numDims=E.getUint32(8,!0),g+=4):C.numDims=1,E=new DataView(A,g,40),C.numValidPixel=E.getUint32(0,!0),C.microBlockSize=E.getInt32(4,!0),C.blobSize=E.getInt32(8,!0),C.imageType=E.getInt32(12,!0),C.maxZError=E.getFloat64(16,!0),C.zMin=E.getFloat64(24,!0),C.zMax=E.getFloat64(32,!0),g+=40,I.headerInfo=C,I.ptr=g,i>=3&&(Q=i>=4?52:48,this.computeChecksumFletcher32(new Uint8Array(A,g-Q,C.blobSize-14))!==C.checksum))throw"Checksum failed.";return!0},checkMinMaxRanges:function(A,I){var g=I.headerInfo,B=this.getDataTypeArray(g.imageType),C=g.numDims*this.getDataTypeSize(g.imageType),Q=this.readSubArray(A,I.ptr,B,C),E=this.readSubArray(A,I.ptr+C,B,C);I.ptr+=2*C;var i,e=!0;for(i=0;i<g.numDims;i++)if(Q[i]!==E[i]){e=!1;break}return g.minValues=Q,g.maxValues=E,e},readSubArray:function(A,I,g,B){var C;if(g===Uint8Array)C=new Uint8Array(A,I,B);else{var Q=new ArrayBuffer(B);new Uint8Array(Q).set(new Uint8Array(A,I,B)),C=new g(Q)}return C},readMask:function(A,I){var g,B,C=I.ptr,Q=I.headerInfo,E=Q.width*Q.height,i=Q.numValidPixel,e=new DataView(A,C,4),t={};if(t.numBytes=e.getUint32(0,!0),C+=4,(0===i||E===i)&&0!==t.numBytes)throw"invalid mask";if(0===i)g=new Uint8Array(Math.ceil(E/8)),t.bitset=g,B=new Uint8Array(E),I.pixels.resultMask=B,C+=t.numBytes;else if(t.numBytes>0){g=new Uint8Array(Math.ceil(E/8));var o=(e=new DataView(A,C,t.numBytes)).getInt16(0,!0),a=2,s=0,r=0;do{if(o>0)for(;o--;)g[s++]=e.getUint8(a++);else for(r=e.getUint8(a++),o=-o;o--;)g[s++]=r;o=e.getInt16(a,!0),a+=2}while(a<t.numBytes);if(-32768!==o||s<g.length)throw"Unexpected end of mask RLE encoding";B=new Uint8Array(E);var D=0,n=0;for(n=0;n<E;n++)7&n?(D=g[n>>3],D<<=7&n):D=g[n>>3],128&D&&(B[n]=1);I.pixels.resultMask=B,t.bitset=g,C+=t.numBytes}return I.ptr=C,I.mask=t,!0},readDataOneSweep:function(A,I,g,B){var C,Q=I.ptr,E=I.headerInfo,i=E.numDims,e=E.width*E.height,t=E.imageType,o=E.numValidPixel*s.getDataTypeSize(t)*i,a=I.pixels.resultMask;if(g===Uint8Array)C=new Uint8Array(A,Q,o);else{var r=new ArrayBuffer(o);new Uint8Array(r).set(new Uint8Array(A,Q,o)),C=new g(r)}if(C.length===e*i)I.pixels.resultPixels=B?s.swapDimensionOrder(C,e,i,g,!0):C;else{I.pixels.resultPixels=new g(e*i);var D=0,n=0,h=0,w=0;if(i>1){if(B){for(n=0;n<e;n++)if(a[n])for(w=n,h=0;h<i;h++,w+=e)I.pixels.resultPixels[w]=C[D++]}else for(n=0;n<e;n++)if(a[n])for(w=n*i,h=0;h<i;h++)I.pixels.resultPixels[w+h]=C[D++]}else for(n=0;n<e;n++)a[n]&&(I.pixels.resultPixels[n]=C[D++])}return Q+=o,I.ptr=Q,!0},readHuffmanTree:function(A,I){var g=this.HUFFMAN_LUT_BITS_MAX,B=new DataView(A,I.ptr,16);if(I.ptr+=16,B.getInt32(0,!0)<2)throw"unsupported Huffman version";var C=B.getInt32(4,!0),Q=B.getInt32(8,!0),E=B.getInt32(12,!0);if(Q>=E)return!1;var i=new Uint32Array(E-Q);s.decodeBits(A,I,i);var e,t,o,a,D=[];for(e=Q;e<E;e++)D[t=e-(e<C?0:C)]={first:i[e-Q],second:null};var n=A.byteLength-I.ptr,h=Math.ceil(n/4),w=new ArrayBuffer(4*h);new Uint8Array(w).set(new Uint8Array(A,I.ptr,n));var y,G=new Uint32Array(w),S=0,c=0;for(y=G[0],e=Q;e<E;e++)(a=D[t=e-(e<C?0:C)].first)>0&&(D[t].second=y<<S>>>32-a,32-S>=a?32===(S+=a)&&(S=0,y=G[++c]):(S+=a-32,y=G[++c],D[t].second|=y>>>32-S));var N=0,d=0,l=new r;for(e=0;e<D.length;e++)void 0!==D[e]&&(N=Math.max(N,D[e].first));d=N>=g?g:N;var k,F,R,L,U,f=[];for(e=Q;e<E;e++)if((a=D[t=e-(e<C?0:C)].first)>0)if(k=[a,t],a<=d)for(F=D[t].second<<d-a,R=1<<d-a,o=0;o<R;o++)f[F|o]=k;else for(F=D[t].second,U=l,L=a-1;L>=0;L--)F>>>L&1?(U.right||(U.right=new r),U=U.right):(U.left||(U.left=new r),U=U.left),0!==L||U.val||(U.val=k[1]);return{decodeLut:f,numBitsLUTQick:d,numBitsLUT:N,tree:l,stuffedData:G,srcPtr:c,bitPos:S}},readHuffman:function(A,I,g,B){var C,Q,E,i,e,t,o,a,r,D=I.headerInfo.numDims,n=I.headerInfo.height,h=I.headerInfo.width,w=h*n,y=this.readHuffmanTree(A,I),G=y.decodeLut,S=y.tree,c=y.stuffedData,N=y.srcPtr,d=y.bitPos,l=y.numBitsLUTQick,k=y.numBitsLUT,F=0===I.headerInfo.imageType?128:0,R=I.pixels.resultMask,L=0;d>0&&(N++,d=0);var U,f=c[N],Y=1===I.encodeMode,K=new g(w*D),u=K;if(D<2||Y){for(U=0;U<D;U++)if(D>1&&(u=new g(K.buffer,w*U,w),L=0),I.headerInfo.numValidPixel===h*n)for(a=0,t=0;t<n;t++)for(o=0;o<h;o++,a++){if(Q=0,e=i=f<<d>>>32-l,32-d<l&&(e=i|=c[N+1]>>>64-d-l),G[e])Q=G[e][1],d+=G[e][0];else for(e=i=f<<d>>>32-k,32-d<k&&(e=i|=c[N+1]>>>64-d-k),C=S,r=0;r<k;r++)if(!(C=i>>>k-r-1&1?C.right:C.left).left&&!C.right){Q=C.val,d=d+r+1;break}d>=32&&(d-=32,f=c[++N]),E=Q-F,Y?(E+=o>0?L:t>0?u[a-h]:L,E&=255,u[a]=E,L=E):u[a]=E}else for(a=0,t=0;t<n;t++)for(o=0;o<h;o++,a++)if(R[a]){if(Q=0,e=i=f<<d>>>32-l,32-d<l&&(e=i|=c[N+1]>>>64-d-l),G[e])Q=G[e][1],d+=G[e][0];else for(e=i=f<<d>>>32-k,32-d<k&&(e=i|=c[N+1]>>>64-d-k),C=S,r=0;r<k;r++)if(!(C=i>>>k-r-1&1?C.right:C.left).left&&!C.right){Q=C.val,d=d+r+1;break}d>=32&&(d-=32,f=c[++N]),E=Q-F,Y?(o>0&&R[a-1]?E+=L:t>0&&R[a-h]?E+=u[a-h]:E+=L,E&=255,u[a]=E,L=E):u[a]=E}}else for(a=0,t=0;t<n;t++)for(o=0;o<h;o++)if(a=t*h+o,!R||R[a])for(U=0;U<D;U++,a+=w){if(Q=0,e=i=f<<d>>>32-l,32-d<l&&(e=i|=c[N+1]>>>64-d-l),G[e])Q=G[e][1],d+=G[e][0];else for(e=i=f<<d>>>32-k,32-d<k&&(e=i|=c[N+1]>>>64-d-k),C=S,r=0;r<k;r++)if(!(C=i>>>k-r-1&1?C.right:C.left).left&&!C.right){Q=C.val,d=d+r+1;break}d>=32&&(d-=32,f=c[++N]),E=Q-F,u[a]=E}I.ptr=I.ptr+4*(N+1)+(d>0?4:0),I.pixels.resultPixels=K,D>1&&!B&&(I.pixels.resultPixels=s.swapDimensionOrder(K,w,D,g))},decodeBits:function(A,I,g,B,C){var Q=I.headerInfo,s=Q.fileVersion,r=0,D=A.byteLength-I.ptr>=5?5:A.byteLength-I.ptr,n=new DataView(A,I.ptr,D),h=n.getUint8(0);r++;var w=h>>6,y=0===w?4:3-w,G=(32&h)>0,S=31&h,c=0;if(1===y)c=n.getUint8(r),r++;else if(2===y)c=n.getUint16(r,!0),r+=2;else{if(4!==y)throw"Invalid valid pixel count type";c=n.getUint32(r,!0),r+=4}var N,d,l,k,F,R,L,U,f,Y=2*Q.maxZError,K=Q.numDims>1?Q.maxValues[C]:Q.zMax;if(G){for(I.counter.lut++,U=n.getUint8(r),r++,k=Math.ceil((U-1)*S/8),F=Math.ceil(k/4),d=new ArrayBuffer(4*F),l=new Uint8Array(d),I.ptr+=r,l.set(new Uint8Array(A,I.ptr,k)),L=new Uint32Array(d),I.ptr+=k,f=0;U-1>>>f;)f++;k=Math.ceil(c*f/8),F=Math.ceil(k/4),d=new ArrayBuffer(4*F),(l=new Uint8Array(d)).set(new Uint8Array(A,I.ptr,k)),N=new Uint32Array(d),I.ptr+=k,R=s>=3?t(L,S,U-1,B,Y,K):i(L,S,U-1,B,Y,K),s>=3?e(N,g,f,c,R):E(N,g,f,c,R)}else I.counter.bitstuffer++,f=S,I.ptr+=r,f>0&&(k=Math.ceil(c*f/8),F=Math.ceil(k/4),d=new ArrayBuffer(4*F),(l=new Uint8Array(d)).set(new Uint8Array(A,I.ptr,k)),N=new Uint32Array(d),I.ptr+=k,s>=3?null==B?a(N,g,f,c):e(N,g,f,c,!1,B,Y,K):null==B?o(N,g,f,c):E(N,g,f,c,!1,B,Y,K))},readTiles:function(A,I,g,B){var C=I.headerInfo,Q=C.width,E=C.height,i=Q*E,e=C.microBlockSize,t=C.imageType,o=s.getDataTypeSize(t),a=Math.ceil(Q/e),r=Math.ceil(E/e);I.pixels.numBlocksY=r,I.pixels.numBlocksX=a,I.pixels.ptr=0;var D,n,h,w,y,G,S,c,N,d,l=0,k=0,F=0,R=0,L=0,U=0,f=0,Y=0,K=0,u=0,M=0,J=0,H=0,p=0,m=0,q=new g(e*e),b=E%e||e,x=Q%e||e,O=C.numDims,T=I.pixels.resultMask,_=I.pixels.resultPixels,Z=C.fileVersion>=5?14:15,P=C.zMax;for(F=0;F<r;F++)for(L=F!==r-1?e:b,R=0;R<a;R++)for(u=F*Q*e+R*e,M=Q-(U=R!==a-1?e:x),c=0;c<O;c++){if(O>1?(d=_,u=F*Q*e+R*e,_=new g(I.pixels.resultPixels.buffer,i*c*o,i),P=C.maxValues[c]):d=null,f=A.byteLength-I.ptr,n={},m=0,Y=(D=new DataView(A,I.ptr,Math.min(10,f))).getUint8(0),m++,N=C.fileVersion>=5?4&Y:0,K=Y>>6&255,(Y>>2&Z)!=(R*e>>3&Z))throw"integrity issue";if(N&&0===c)throw"integrity issue";if((y=3&Y)>3)throw I.ptr+=m,"Invalid block encoding ("+y+")";if(2!==y)if(0===y){if(N)throw"integrity issue";if(I.counter.uncompressed++,I.ptr+=m,J=(J=L*U*o)<(H=A.byteLength-I.ptr)?J:H,h=new ArrayBuffer(J%o==0?J:J+o-J%o),new Uint8Array(h).set(new Uint8Array(A,I.ptr,J)),w=new g(h),p=0,T)for(l=0;l<L;l++){for(k=0;k<U;k++)T[u]&&(_[u]=w[p++]),u++;u+=M}else for(l=0;l<L;l++){for(k=0;k<U;k++)_[u++]=w[p++];u+=M}I.ptr+=p*o}else if(G=s.getDataTypeUsed(N&&t<6?4:t,K),S=s.getOnePixel(n,m,G,D),m+=s.getDataTypeSize(G),3===y)if(I.ptr+=m,I.counter.constantoffset++,T)for(l=0;l<L;l++){for(k=0;k<U;k++)T[u]&&(_[u]=N?Math.min(P,d[u]+S):S),u++;u+=M}else for(l=0;l<L;l++){for(k=0;k<U;k++)_[u]=N?Math.min(P,d[u]+S):S,u++;u+=M}else if(I.ptr+=m,s.decodeBits(A,I,q,S,c),m=0,N)if(T)for(l=0;l<L;l++){for(k=0;k<U;k++)T[u]&&(_[u]=q[m++]+d[u]),u++;u+=M}else for(l=0;l<L;l++){for(k=0;k<U;k++)_[u]=q[m++]+d[u],u++;u+=M}else if(T)for(l=0;l<L;l++){for(k=0;k<U;k++)T[u]&&(_[u]=q[m++]),u++;u+=M}else for(l=0;l<L;l++){for(k=0;k<U;k++)_[u++]=q[m++];u+=M}else{if(N)if(T)for(l=0;l<L;l++)for(k=0;k<U;k++)T[u]&&(_[u]=d[u]),u++;else for(l=0;l<L;l++)for(k=0;k<U;k++)_[u]=d[u],u++;I.counter.constant++,I.ptr+=m}}O>1&&!B&&(I.pixels.resultPixels=s.swapDimensionOrder(I.pixels.resultPixels,i,O,g))},formatFileInfo:function(A){return{fileIdentifierString:A.headerInfo.fileIdentifierString,fileVersion:A.headerInfo.fileVersion,imageType:A.headerInfo.imageType,height:A.headerInfo.height,width:A.headerInfo.width,numValidPixel:A.headerInfo.numValidPixel,microBlockSize:A.headerInfo.microBlockSize,blobSize:A.headerInfo.blobSize,maxZError:A.headerInfo.maxZError,pixelType:s.getPixelType(A.headerInfo.imageType),eofOffset:A.eofOffset,mask:A.mask?{numBytes:A.mask.numBytes}:null,pixels:{numBlocksX:A.pixels.numBlocksX,numBlocksY:A.pixels.numBlocksY,maxValue:A.headerInfo.zMax,minValue:A.headerInfo.zMin,noDataValue:A.noDataValue}}},constructConstantSurface:function(A,I){var g=A.headerInfo.zMax,B=A.headerInfo.zMin,C=A.headerInfo.maxValues,Q=A.headerInfo.numDims,E=A.headerInfo.height*A.headerInfo.width,i=0,e=0,t=0,o=A.pixels.resultMask,a=A.pixels.resultPixels;if(o)if(Q>1){if(I)for(i=0;i<Q;i++)for(t=i*E,g=C[i],e=0;e<E;e++)o[e]&&(a[t+e]=g);else for(e=0;e<E;e++)if(o[e])for(t=e*Q,i=0;i<Q;i++)a[t+Q]=C[i]}else for(e=0;e<E;e++)o[e]&&(a[e]=g);else if(Q>1&&B!==g)if(I)for(i=0;i<Q;i++)for(t=i*E,g=C[i],e=0;e<E;e++)a[t+e]=g;else for(e=0;e<E;e++)for(t=e*Q,i=0;i<Q;i++)a[t+i]=C[i];else for(e=0;e<E*Q;e++)a[e]=g},getDataTypeArray:function(A){var I;switch(A){case 0:I=Int8Array;break;case 1:I=Uint8Array;break;case 2:I=Int16Array;break;case 3:I=Uint16Array;break;case 4:I=Int32Array;break;case 5:I=Uint32Array;break;case 6:default:I=Float32Array;break;case 7:I=Float64Array}return I},getPixelType:function(A){var I;switch(A){case 0:I="S8";break;case 1:I="U8";break;case 2:I="S16";break;case 3:I="U16";break;case 4:I="S32";break;case 5:I="U32";break;case 6:default:I="F32";break;case 7:I="F64"}return I},isValidPixelValue:function(A,I){if(null==I)return!1;var g;switch(A){case 0:g=I>=-128&&I<=127;break;case 1:g=I>=0&&I<=255;break;case 2:g=I>=-32768&&I<=32767;break;case 3:g=I>=0&&I<=65536;break;case 4:g=I>=-2147483648&&I<=2147483647;break;case 5:g=I>=0&&I<=4294967296;break;case 6:g=I>=-34027999387901484e22&&I<=34027999387901484e22;break;case 7:g=I>=-17976931348623157e292&&I<=17976931348623157e292;break;default:g=!1}return g},getDataTypeSize:function(A){var I=0;switch(A){case 0:case 1:I=1;break;case 2:case 3:I=2;break;case 4:case 5:case 6:I=4;break;case 7:I=8;break;default:I=A}return I},getDataTypeUsed:function(A,I){var g=A;switch(A){case 2:case 4:g=A-I;break;case 3:case 5:g=A-2*I;break;case 6:g=0===I?A:1===I?2:1;break;case 7:g=0===I?A:A-2*I+1;break;default:g=A}return g},getOnePixel:function(A,I,g,B){var C=0;switch(g){case 0:C=B.getInt8(I);break;case 1:C=B.getUint8(I);break;case 2:C=B.getInt16(I,!0);break;case 3:C=B.getUint16(I,!0);break;case 4:C=B.getInt32(I,!0);break;case 5:C=B.getUInt32(I,!0);break;case 6:C=B.getFloat32(I,!0);break;case 7:C=B.getFloat64(I,!0);break;default:throw"the decoder does not understand this pixel type"}return C},swapDimensionOrder:function(A,I,g,B,C){var Q=0,E=0,i=0,e=0,t=A;if(g>1)if(t=new B(I*g),C)for(Q=0;Q<I;Q++)for(e=Q,i=0;i<g;i++,e+=I)t[e]=A[E++];else for(Q=0;Q<I;Q++)for(e=Q,i=0;i<g;i++,e+=I)t[E++]=A[e];return t}},r=function(A,I,g){this.val=A,this.left=I,this.right=g},{decode:function(A,I){var g=(I=I||{}).noDataValue,B=0,C={};C.ptr=I.inputOffset||0,C.pixels={},s.readHeaderInfo(A,C);var Q=C.headerInfo,E=Q.fileVersion,i=s.getDataTypeArray(Q.imageType);if(E>5)throw"unsupported lerc version 2."+E;s.readMask(A,C),Q.numValidPixel===Q.width*Q.height||C.pixels.resultMask||(C.pixels.resultMask=I.maskData);var e=Q.width*Q.height;C.pixels.resultPixels=new i(e*Q.numDims),C.counter={onesweep:0,uncompressed:0,lut:0,bitstuffer:0,constant:0,constantoffset:0};var t,o=!I.returnPixelInterleavedDims;if(0!==Q.numValidPixel)if(Q.zMax===Q.zMin)s.constructConstantSurface(C,o);else if(E>=4&&s.checkMinMaxRanges(A,C))s.constructConstantSurface(C,o);else{var a=new DataView(A,C.ptr,2),r=a.getUint8(0);if(C.ptr++,r)s.readDataOneSweep(A,C,i,o);else if(E>1&&Q.imageType<=1&&Math.abs(Q.maxZError-.5)<1e-5){var D=a.getUint8(1);if(C.ptr++,C.encodeMode=D,D>2||E<4&&D>1)throw"Invalid Huffman flag "+D;D?s.readHuffman(A,C,i,o):s.readTiles(A,C,i,o)}else s.readTiles(A,C,i,o)}C.eofOffset=C.ptr,I.inputOffset?(t=C.headerInfo.blobSize+I.inputOffset-C.ptr,Math.abs(t)>=1&&(C.eofOffset=I.inputOffset+C.headerInfo.blobSize)):(t=C.headerInfo.blobSize-C.ptr,Math.abs(t)>=1&&(C.eofOffset=C.headerInfo.blobSize));var n={width:Q.width,height:Q.height,pixelData:C.pixels.resultPixels,minValue:Q.zMin,maxValue:Q.zMax,validPixelCount:Q.numValidPixel,dimCount:Q.numDims,dimStats:{minValues:Q.minValues,maxValues:Q.maxValues},maskData:C.pixels.resultMask};if(C.pixels.resultMask&&s.isValidPixelValue(Q.imageType,g)){var h=C.pixels.resultMask;for(B=0;B<e;B++)h[B]||(n.pixelData[B]=g);n.noDataValue=g}return C.noDataValue=g,I.returnFileInfo&&(n.fileInfo=s.formatFileInfo(C)),n},getBandCount:function(A){for(var I=0,g=0,B={ptr:0,pixels:{}};g<A.byteLength-58;)s.readHeaderInfo(A,B),g+=B.headerInfo.blobSize,I++,B.ptr=g;return I}}),y=(D=new ArrayBuffer(4),n=new Uint8Array(D),new Uint32Array(D)[0]=1,1===n[0]),G={decode:function(A,I){if(!y)throw"Big endian system is not supported.";var g,B,C=(I=I||{}).inputOffset||0,Q=new Uint8Array(A,C,10),E=String.fromCharCode.apply(null,Q);if("CntZImage"===E.trim())g=h,B=1;else{if("Lerc2"!==E.substring(0,5))throw"Unexpected file identifier string: "+E;g=w,B=2}for(var i,e,t,o,a,s,r=0,D=A.byteLength-10,n=[],G={width:0,height:0,pixels:[],pixelType:I.pixelType,mask:null,statistics:[]},S=0;C<D;){var c=g.decode(A,{inputOffset:C,encodedMaskData:i,maskData:t,returnMask:0===r,returnEncodedMask:0===r,returnFileInfo:!0,returnPixelInterleavedDims:I.returnPixelInterleavedDims,pixelType:I.pixelType||null,noDataValue:I.noDataValue||null});C=c.fileInfo.eofOffset,t=c.maskData,0===r&&(i=c.encodedMaskData,G.width=c.width,G.height=c.height,G.dimCount=c.dimCount||1,G.pixelType=c.pixelType||c.fileInfo.pixelType,G.mask=t),B>1&&(t&&n.push(t),c.fileInfo.mask&&c.fileInfo.mask.numBytes>0&&S++),r++,G.pixels.push(c.pixelData),G.statistics.push({minValue:c.minValue,maxValue:c.maxValue,noDataValue:c.noDataValue,dimStats:c.dimStats})}if(B>1&&S>1){for(s=G.width*G.height,G.bandMasks=n,(t=new Uint8Array(s)).set(n[0]),o=1;o<n.length;o++)for(e=n[o],a=0;a<s;a++)t[a]=t[a]&e[a];G.maskData=t}return G}};Eg.exports?Eg.exports=G:this.Lerc=G}();var tg=eg.exports;let og,ag,sg;const rg={env:{emscripten_notify_memory_growth:A=>{sg=new Uint8Array(ag.exports.memory.buffer)}}};const Dg="AGFzbQEAAAABoAEUYAF/AGADf39/AGACf38AYAF/AX9gBX9/f39/AX9gA39/fwF/YAR/f39/AX9gAn9/AX9gAAF/YAd/f39/f39/AX9gB39/f39/f38AYAR/f39/AX5gAn9/AX5gBn9/f39/fwBgDn9/f39/f39/f39/f39/AX9gCH9/f39/f39/AX9gCX9/f39/f39/fwF/YAN+f38BfmAFf39/f38AYAAAAicBA2Vudh9lbXNjcmlwdGVuX25vdGlmeV9tZW1vcnlfZ3Jvd3RoAAADJyYDAAMACAQJBQEHBwADBgoLBAQDBAEABgUMBQ0OAQEBDxAREgYAEwQFAXABAgIFBwEBggKAgAIGCAF/AUGgnwQLB9MBCgZtZW1vcnkCAAxaU1REX2lzRXJyb3IADRlaU1REX2ZpbmREZWNvbXByZXNzZWRTaXplABkPWlNURF9kZWNvbXByZXNzACQGbWFsbG9jAAEEZnJlZQACGV9faW5kaXJlY3RfZnVuY3Rpb25fdGFibGUBABlfZW1zY3JpcHRlbl9zdGFja19yZXN0b3JlAAQcZW1zY3JpcHRlbl9zdGFja19nZXRfY3VycmVudAAFIl9fY3hhX2luY3JlbWVudF9leGNlcHRpb25fcmVmY291bnQAJQkHAQBBAQsBJgwBCgqtkgMm1ScBC38jAEEQayIKJAACQAJAAkACQAJAAkACQAJAAkACQCAAQfQBTQRAQagbKAIAIgRBECAAQQtqQfgDcSAAQQtJGyIGQQN2IgB2IgFBA3EEQAJAIAFBf3NBAXEgAGoiAkEDdCIBQdAbaiIAIAFB2BtqKAIAIgEoAggiBUYEQEGoGyAEQX4gAndxNgIADAELIAUgADYCDCAAIAU2AggLIAFBCGohACABIAJBA3QiAkEDcjYCBCABIAJqIgEgASgCBEEBcjYCBAwLCyAGQbAbKAIAIghNDQEgAQRAAkBBAiAAdCICQQAgAmtyIAEgAHRxaCIBQQN0IgBB0BtqIgIgAEHYG2ooAgAiACgCCCIFRgRAQagbIARBfiABd3EiBDYCAAwBCyAFIAI2AgwgAiAFNgIICyAAIAZBA3I2AgQgACAGaiIHIAFBA3QiASAGayIFQQFyNgIEIAAgAWogBTYCACAIBEAgCEF4cUHQG2ohAUG8GygCACECAn8gBEEBIAhBA3Z0IgNxRQRAQagbIAMgBHI2AgAgAQwBCyABKAIICyEDIAEgAjYCCCADIAI2AgwgAiABNgIMIAIgAzYCCAsgAEEIaiEAQbwbIAc2AgBBsBsgBTYCAAwLC0GsGygCACILRQ0BIAtoQQJ0QdgdaigCACICKAIEQXhxIAZrIQMgAiEBA0ACQCABKAIQIgBFBEAgASgCFCIARQ0BCyAAKAIEQXhxIAZrIgEgAyABIANJIgEbIQMgACACIAEbIQIgACEBDAELCyACKAIYIQkgAiACKAIMIgBHBEAgAigCCCIBIAA2AgwgACABNgIIDAoLIAIoAhQiAQR/IAJBFGoFIAIoAhAiAUUNAyACQRBqCyEFA0AgBSEHIAEiAEEUaiEFIAAoAhQiAQ0AIABBEGohBSAAKAIQIgENAAsgB0EANgIADAkLQX8hBiAAQb9/Sw0AIABBC2oiAUF4cSEGQawbKAIAIgdFDQBBHyEIQQAgBmshAyAAQfT//wdNBEAgBkEmIAFBCHZnIgBrdkEBcSAAQQF0a0E+aiEICwJAAkACQCAIQQJ0QdgdaigCACIBRQRAQQAhAAwBC0EAIQAgBkEZIAhBAXZrQQAgCEEfRxt0IQIDQAJAIAEoAgRBeHEgBmsiBCADTw0AIAEhBSAEIgMNAEEAIQMgASEADAMLIAAgASgCFCIEIAQgASACQR12QQRxaigCECIBRhsgACAEGyEAIAJBAXQhAiABDQALCyAAIAVyRQRAQQAhBUECIAh0IgBBACAAa3IgB3EiAEUNAyAAaEECdEHYHWooAgAhAAsgAEUNAQsDQCAAKAIEQXhxIAZrIgIgA0khASACIAMgARshAyAAIAUgARshBSAAKAIQIgEEfyABBSAAKAIUCyIADQALCyAFRQ0AIANBsBsoAgAgBmtPDQAgBSgCGCEIIAUgBSgCDCIARwRAIAUoAggiASAANgIMIAAgATYCCAwICyAFKAIUIgEEfyAFQRRqBSAFKAIQIgFFDQMgBUEQagshAgNAIAIhBCABIgBBFGohAiAAKAIUIgENACAAQRBqIQIgACgCECIBDQALIARBADYCAAwHCyAGQbAbKAIAIgVNBEBBvBsoAgAhAAJAIAUgBmsiAUEQTwRAIAAgBmoiAiABQQFyNgIEIAAgBWogATYCACAAIAZBA3I2AgQMAQsgACAFQQNyNgIEIAAgBWoiASABKAIEQQFyNgIEQQAhAkEAIQELQbAbIAE2AgBBvBsgAjYCACAAQQhqIQAMCQsgBkG0GygCACICSQRAQbQbIAIgBmsiATYCAEHAG0HAGygCACIAIAZqIgI2AgAgAiABQQFyNgIEIAAgBkEDcjYCBCAAQQhqIQAMCQtBACEAIAZBL2oiAwJ/QYAfKAIABEBBiB8oAgAMAQtBjB9CfzcCAEGEH0KAoICAgIAENwIAQYAfIApBDGpBcHFB2KrVqgVzNgIAQZQfQQA2AgBB5B5BADYCAEGAIAsiAWoiBEEAIAFrIgdxIgEgBk0NCEHgHigCACIFBEBB2B4oAgAiCCABaiIJIAhNIAUgCUlyDQkLAkBB5B4tAABBBHFFBEACQAJAAkACQEHAGygCACIFBEBB6B4hAANAIAAoAgAiCCAFTQRAIAUgCCAAKAIEakkNAwsgACgCCCIADQALC0EAEAMiAkF/Rg0DIAEhBEGEHygCACIAQQFrIgUgAnEEQCABIAJrIAIgBWpBACAAa3FqIQQLIAQgBk0NA0HgHigCACIABEBB2B4oAgAiBSAEaiIHIAVNIAAgB0lyDQQLIAQQAyIAIAJHDQEMBQsgBCACayAHcSIEEAMiAiAAKAIAIAAoAgRqRg0BIAIhAAsgAEF/Rg0BIAZBMGogBE0EQCAAIQIMBAtBiB8oAgAiAiADIARrakEAIAJrcSICEANBf0YNASACIARqIQQgACECDAMLIAJBf0cNAgtB5B5B5B4oAgBBBHI2AgALIAEQAyICQX9GQQAQAyIAQX9GciAAIAJNcg0FIAAgAmsiBCAGQShqTQ0FC0HYHkHYHigCACAEaiIANgIAQdweKAIAIABJBEBB3B4gADYCAAsCQEHAGygCACIDBEBB6B4hAANAIAIgACgCACIBIAAoAgQiBWpGDQIgACgCCCIADQALDAQLQbgbKAIAIgBBACAAIAJNG0UEQEG4GyACNgIAC0EAIQBB7B4gBDYCAEHoHiACNgIAQcgbQX82AgBBzBtBgB8oAgA2AgBB9B5BADYCAANAIABBA3QiAUHYG2ogAUHQG2oiBTYCACABQdwbaiAFNgIAIABBAWoiAEEgRw0AC0G0GyAEQShrIgBBeCACa0EHcSIBayIFNgIAQcAbIAEgAmoiATYCACABIAVBAXI2AgQgACACakEoNgIEQcQbQZAfKAIANgIADAQLIAIgA00gASADS3INAiAAKAIMQQhxDQIgACAEIAVqNgIEQcAbIANBeCADa0EHcSIAaiIBNgIAQbQbQbQbKAIAIARqIgIgAGsiADYCACABIABBAXI2AgQgAiADakEoNgIEQcQbQZAfKAIANgIADAMLQQAhAAwGC0EAIQAMBAtBuBsoAgAgAksEQEG4GyACNgIACyACIARqIQVB6B4hAAJAA0AgBSAAKAIAIgFHBEAgACgCCCIADQEMAgsLIAAtAAxBCHFFDQMLQegeIQADQAJAIAAoAgAiASADTQRAIAMgASAAKAIEaiIFSQ0BCyAAKAIIIQAMAQsLQbQbIARBKGsiAEF4IAJrQQdxIgFrIgc2AgBBwBsgASACaiIBNgIAIAEgB0EBcjYCBCAAIAJqQSg2AgRBxBtBkB8oAgA2AgAgAyAFQScgBWtBB3FqQS9rIgAgACADQRBqSRsiAUEbNgIEIAFB8B4pAgA3AhAgAUHoHikCADcCCEHwHiABQQhqNgIAQeweIAQ2AgBB6B4gAjYCAEH0HkEANgIAIAFBGGohAANAIABBBzYCBCAAQQhqIQIgAEEEaiEAIAIgBUkNAAsgASADRg0AIAEgASgCBEF+cTYCBCADIAEgA2siAkEBcjYCBCABIAI2AgACfyACQf8BTQRAIAJBeHFB0BtqIQACf0GoGygCACIBQQEgAkEDdnQiAnFFBEBBqBsgASACcjYCACAADAELIAAoAggLIQEgACADNgIIIAEgAzYCDEEMIQJBCAwBC0EfIQAgAkH///8HTQRAIAJBJiACQQh2ZyIAa3ZBAXEgAEEBdGtBPmohAAsgAyAANgIcIANCADcCECAAQQJ0QdgdaiEBAkACQEGsGygCACIFQQEgAHQiBHFFBEBBrBsgBCAFcjYCACABIAM2AgAMAQsgAkEZIABBAXZrQQAgAEEfRxt0IQAgASgCACEFA0AgBSIBKAIEQXhxIAJGDQIgAEEddiEFIABBAXQhACABIAVBBHFqIgQoAhAiBQ0ACyAEIAM2AhALIAMgATYCGEEIIQIgAyIBIQBBDAwBCyABKAIIIgAgAzYCDCABIAM2AgggAyAANgIIQQAhAEEYIQJBDAsgA2ogATYCACACIANqIAA2AgALQbQbKAIAIgAgBk0NAEG0GyAAIAZrIgE2AgBBwBtBwBsoAgAiACAGaiICNgIAIAIgAUEBcjYCBCAAIAZBA3I2AgQgAEEIaiEADAQLQaQbQTA2AgBBACEADAMLIAAgAjYCACAAIAAoAgQgBGo2AgQgAkF4IAJrQQdxaiIIIAZBA3I2AgQgAUF4IAFrQQdxaiIEIAYgCGoiA2shBwJAQcAbKAIAIARGBEBBwBsgAzYCAEG0G0G0GygCACAHaiIANgIAIAMgAEEBcjYCBAwBC0G8GygCACAERgRAQbwbIAM2AgBBsBtBsBsoAgAgB2oiADYCACADIABBAXI2AgQgACADaiAANgIADAELIAQoAgQiAEEDcUEBRgRAIABBeHEhCSAEKAIMIQICQCAAQf8BTQRAIAQoAggiASACRgRAQagbQagbKAIAQX4gAEEDdndxNgIADAILIAEgAjYCDCACIAE2AggMAQsgBCgCGCEGAkAgAiAERwRAIAQoAggiACACNgIMIAIgADYCCAwBCwJAIAQoAhQiAAR/IARBFGoFIAQoAhAiAEUNASAEQRBqCyEBA0AgASEFIAAiAkEUaiEBIAAoAhQiAA0AIAJBEGohASACKAIQIgANAAsgBUEANgIADAELQQAhAgsgBkUNAAJAIAQoAhwiAEECdEHYHWoiASgCACAERgRAIAEgAjYCACACDQFBrBtBrBsoAgBBfiAAd3E2AgAMAgsCQCAEIAYoAhBGBEAgBiACNgIQDAELIAYgAjYCFAsgAkUNAQsgAiAGNgIYIAQoAhAiAARAIAIgADYCECAAIAI2AhgLIAQoAhQiAEUNACACIAA2AhQgACACNgIYCyAHIAlqIQcgBCAJaiIEKAIEIQALIAQgAEF+cTYCBCADIAdBAXI2AgQgAyAHaiAHNgIAIAdB/wFNBEAgB0F4cUHQG2ohAAJ/QagbKAIAIgFBASAHQQN2dCICcUUEQEGoGyABIAJyNgIAIAAMAQsgACgCCAshASAAIAM2AgggASADNgIMIAMgADYCDCADIAE2AggMAQtBHyECIAdB////B00EQCAHQSYgB0EIdmciAGt2QQFxIABBAXRrQT5qIQILIAMgAjYCHCADQgA3AhAgAkECdEHYHWohAAJAAkBBrBsoAgAiAUEBIAJ0IgVxRQRAQawbIAEgBXI2AgAgACADNgIADAELIAdBGSACQQF2a0EAIAJBH0cbdCECIAAoAgAhAQNAIAEiACgCBEF4cSAHRg0CIAJBHXYhASACQQF0IQIgACABQQRxaiIFKAIQIgENAAsgBSADNgIQCyADIAA2AhggAyADNgIMIAMgAzYCCAwBCyAAKAIIIgEgAzYCDCAAIAM2AgggA0EANgIYIAMgADYCDCADIAE2AggLIAhBCGohAAwCCwJAIAhFDQACQCAFKAIcIgFBAnRB2B1qIgIoAgAgBUYEQCACIAA2AgAgAA0BQawbIAdBfiABd3EiBzYCAAwCCwJAIAUgCCgCEEYEQCAIIAA2AhAMAQsgCCAANgIUCyAARQ0BCyAAIAg2AhggBSgCECIBBEAgACABNgIQIAEgADYCGAsgBSgCFCIBRQ0AIAAgATYCFCABIAA2AhgLAkAgA0EPTQRAIAUgAyAGaiIAQQNyNgIEIAAgBWoiACAAKAIEQQFyNgIEDAELIAUgBkEDcjYCBCAFIAZqIgQgA0EBcjYCBCADIARqIAM2AgAgA0H/AU0EQCADQXhxQdAbaiEAAn9BqBsoAgAiAUEBIANBA3Z0IgJxRQRAQagbIAEgAnI2AgAgAAwBCyAAKAIICyEBIAAgBDYCCCABIAQ2AgwgBCAANgIMIAQgATYCCAwBC0EfIQAgA0H///8HTQRAIANBJiADQQh2ZyIAa3ZBAXEgAEEBdGtBPmohAAsgBCAANgIcIARCADcCECAAQQJ0QdgdaiEBAkACQCAHQQEgAHQiAnFFBEBBrBsgAiAHcjYCACABIAQ2AgAgBCABNgIYDAELIANBGSAAQQF2a0EAIABBH0cbdCEAIAEoAgAhAQNAIAEiAigCBEF4cSADRg0CIABBHXYhASAAQQF0IQAgAiABQQRxaiIHKAIQIgENAAsgByAENgIQIAQgAjYCGAsgBCAENgIMIAQgBDYCCAwBCyACKAIIIgAgBDYCDCACIAQ2AgggBEEANgIYIAQgAjYCDCAEIAA2AggLIAVBCGohAAwBCwJAIAlFDQACQCACKAIcIgFBAnRB2B1qIgUoAgAgAkYEQCAFIAA2AgAgAA0BQawbIAtBfiABd3E2AgAMAgsCQCACIAkoAhBGBEAgCSAANgIQDAELIAkgADYCFAsgAEUNAQsgACAJNgIYIAIoAhAiAQRAIAAgATYCECABIAA2AhgLIAIoAhQiAUUNACAAIAE2AhQgASAANgIYCwJAIANBD00EQCACIAMgBmoiAEEDcjYCBCAAIAJqIgAgACgCBEEBcjYCBAwBCyACIAZBA3I2AgQgAiAGaiIFIANBAXI2AgQgAyAFaiADNgIAIAgEQCAIQXhxQdAbaiEAQbwbKAIAIQECf0EBIAhBA3Z0IgcgBHFFBEBBqBsgBCAHcjYCACAADAELIAAoAggLIQQgACABNgIIIAQgATYCDCABIAA2AgwgASAENgIIC0G8GyAFNgIAQbAbIAM2AgALIAJBCGohAAsgCkEQaiQAIAAL3AsBCH8CQCAARQ0AIABBCGsiAyAAQQRrKAIAIgJBeHEiAGohBQJAIAJBAXENACACQQJxRQ0BIAMgAygCACIEayIDQbgbKAIASQ0BIAAgBGohAAJAAkACQEG8GygCACADRwRAIAMoAgwhASAEQf8BTQRAIAEgAygCCCICRw0CQagbQagbKAIAQX4gBEEDdndxNgIADAULIAMoAhghByABIANHBEAgAygCCCICIAE2AgwgASACNgIIDAQLIAMoAhQiAgR/IANBFGoFIAMoAhAiAkUNAyADQRBqCyEEA0AgBCEGIAIiAUEUaiEEIAEoAhQiAg0AIAFBEGohBCABKAIQIgINAAsgBkEANgIADAMLIAUoAgQiAkEDcUEDRw0DQbAbIAA2AgAgBSACQX5xNgIEIAMgAEEBcjYCBCAFIAA2AgAPCyACIAE2AgwgASACNgIIDAILQQAhAQsgB0UNAAJAIAMoAhwiBEECdEHYHWoiAigCACADRgRAIAIgATYCACABDQFBrBtBrBsoAgBBfiAEd3E2AgAMAgsCQCADIAcoAhBGBEAgByABNgIQDAELIAcgATYCFAsgAUUNAQsgASAHNgIYIAMoAhAiAgRAIAEgAjYCECACIAE2AhgLIAMoAhQiAkUNACABIAI2AhQgAiABNgIYCyADIAVPDQAgBSgCBCIEQQFxRQ0AAkACQAJAAkAgBEECcUUEQEHAGygCACAFRgRAQcAbIAM2AgBBtBtBtBsoAgAgAGoiADYCACADIABBAXI2AgQgA0G8GygCAEcNBkGwG0EANgIAQbwbQQA2AgAPC0G8GygCACIHIAVGBEBBvBsgAzYCAEGwG0GwGygCACAAaiIANgIAIAMgAEEBcjYCBCAAIANqIAA2AgAPCyAEQXhxIABqIQAgBSgCDCEBIARB/wFNBEAgBSgCCCICIAFGBEBBqBtBqBsoAgBBfiAEQQN2d3E2AgAMBQsgAiABNgIMIAEgAjYCCAwECyAFKAIYIQggASAFRwRAIAUoAggiAiABNgIMIAEgAjYCCAwDCyAFKAIUIgIEfyAFQRRqBSAFKAIQIgJFDQIgBUEQagshBANAIAQhBiACIgFBFGohBCABKAIUIgINACABQRBqIQQgASgCECICDQALIAZBADYCAAwCCyAFIARBfnE2AgQgAyAAQQFyNgIEIAAgA2ogADYCAAwDC0EAIQELIAhFDQACQCAFKAIcIgRBAnRB2B1qIgIoAgAgBUYEQCACIAE2AgAgAQ0BQawbQawbKAIAQX4gBHdxNgIADAILAkAgBSAIKAIQRgRAIAggATYCEAwBCyAIIAE2AhQLIAFFDQELIAEgCDYCGCAFKAIQIgIEQCABIAI2AhAgAiABNgIYCyAFKAIUIgJFDQAgASACNgIUIAIgATYCGAsgAyAAQQFyNgIEIAAgA2ogADYCACADIAdHDQBBsBsgADYCAA8LIABB/wFNBEAgAEF4cUHQG2ohAgJ/QagbKAIAIgRBASAAQQN2dCIAcUUEQEGoGyAAIARyNgIAIAIMAQsgAigCCAshACACIAM2AgggACADNgIMIAMgAjYCDCADIAA2AggPC0EfIQEgAEH///8HTQRAIABBJiAAQQh2ZyICa3ZBAXEgAkEBdGtBPmohAQsgAyABNgIcIANCADcCECABQQJ0QdgdaiEEAn8CQAJ/QawbKAIAIgZBASABdCICcUUEQEGsGyACIAZyNgIAIAQgAzYCAEEYIQFBCAwBCyAAQRkgAUEBdmtBACABQR9HG3QhASAEKAIAIQQDQCAEIgIoAgRBeHEgAEYNAiABQR12IQQgAUEBdCEBIAIgBEEEcWoiBigCECIEDQALIAYgAzYCEEEYIQEgAiEEQQgLIQAgAyICDAELIAIoAggiBCADNgIMIAIgAzYCCEEYIQBBCCEBQQALIQYgASADaiAENgIAIAMgAjYCDCAAIANqIAY2AgBByBtByBsoAgBBAWsiAEF/IAAbNgIACwtsAQJ/QaAbKAIAIgEgAEEHakF4cSICaiEAAkAgAkEAIAAgAU0bRQRAIAA/AEEQdE0NASAAPwBBEHRrQf//A2pBEHZAAEF/RgR/QQAFQQAQAEEBCw0BC0GkG0EwNgIAQX8PC0GgGyAANgIAIAELBgAgACQACwQAIwALuQUBDH8jAEEQayIMJAACQCAEQQdNBEAgDEIANwMIIAQEQCAMQQhqIAMgBPwKAAALQWwgACABIAIgDEEIakEIEAYiACAAIARLGyAAIABBiX9JGyEFDAELIAEoAgBBAWoiDkEBdCIIBEAgAEEAIAj8CwALIAMoAAAiBUEPcSIHQQpLBEBBVCEFDAELIAIgB0EFajYCACADIARqIgJBBGshCCACQQdrIQ0gB0EGaiEPQQQhBiAFQQR2IQVBICAHdCIJQQFyIQpBACECQQEhByADIQQDQAJAIAdBAXFFBEADQCAFQX9zQYCAgIB4cmgiB0EYSUUEQCACQSRqIQIgBCANTQR/IARBA2oFIAQgDWtBA3QgBmpBH3EhBiAICyIEKAAAIAZ2IQUMAQsLIAYgB0EecSILakECaiEGIAdBAXZBA2wgAmogBSALdkEDcWoiAiAOTw0BAn8gBCANSyAGQQN2IARqIgUgCEtxRQRAIAZBB3EhBiAFDAELIAQgCGtBA3QgBmpBH3EhBiAICyIEKAAAIAZ2IQULIAUgCUEBa3EiByAJQQF0QQFrIgsgCmsiEEkEfyAPQQFrBSAFIAtxIgUgEEEAIAUgCU4bayEHIA8LIQUgACACQQF0aiAHQQFrIgs7AQAgAkEBaiECIAUgBmohBiAJQQEgB2sgCyAHQQBKGyAKaiIKSgRAIApBAkgNAUEgIApnIgVrIQ9BASAFQR9zdCEJCyACIA5PDQAgC0EARyEHAn8gBCANSyAGQQN1IARqIgUgCEtxRQRAIAZBB3EhBiAFDAELIAYgBCAIa0EDdGpBH3EhBiAICyIEKAAAIAZ2IQUMAQsLQWwhBSAKQQFHDQAgAiAOSwRAQVAhBQwBCyAGQSBKDQAgASACQQFrNgIAIAQgBkEHakEDdWogA2shBQsgDEEQaiQAIAULrRkCEX8BfiMAQTBrIgckAEG4fyEIAkAgBUUNACAELAAAIglB/wFxIQ0CQAJAIAlBAEgEQCANQf4Aa0EBdiIGIAVPDQMgDUH/AGsiCEH/AUsNAiAEQQFqIQRBACEFA0AgBSAITwRAIAYhDQwDBSAAIAVqIg0gBCAFQQF2aiIJLQAAQQR2OgAAIA0gCS0AAEEPcToAASAFQQJqIQUMAQsACwALIAUgDU0NAiAHQf8BNgIEIAYgB0EEaiAHQQhqIARBAWoiCiANEAYiBEGIf0sEQCAEIQgMAwtBVCEIIAcoAggiC0EGSw0CIAcoAgQiBUEBdCIMQQJqrUIBIAuthiIYQQQgC3QiCUEIaq18fEILfEL8//////////8Ag0LoAlYNAkFSIQggBUH/AUsNAkHoAiAJa60gBUEBaiIQQQF0rSAYfEIIfFQNAiANIARrIRQgBCAKaiEVIAwgBkGABGoiDCAJakEEaiIWakECaiERIAZBhARqIRcgBkGGBGohE0GAgAIgC3RBEHYhCEEAIQVBASEOQQEgC3QiCkEBayISIQQDQCAFIBBGRQRAAkAgBiAFQQF0Ig9qLwEAIglB//8DRgRAIBMgBEECdGogBToAACAEQQFrIQRBASEJDAELIA5BACAIIAnBShshDgsgDyAWaiAJOwEAIAVBAWohBQwBCwsgBiAOOwGCBCAGIAs7AYAEAkAgBCASRgRAQgAhGEEAIQlBACEIA0AgCSAQRgRAIApBA3YgCkEBdmpBA2oiBkEBdCEJQQAhBEEAIQgDQCAIIApPDQQgCCARaiEQQQAhBQNAIAVBAkZFBEAgEyAFIAZsIARqIBJxQQJ0aiAFIBBqLQAAOgAAIAVBAWohBQwBCwsgCEECaiEIIAQgCWogEnEhBAwACwAFIAYgCUEBdGouAQAhBCAIIBFqIg8gGDcAAEEIIQUDQCAEIAVMRQRAIAUgD2ogGDcAACAFQQhqIQUMAQsLIBhCgYKEiJCgwIABfCEYIAlBAWohCSAEIAhqIQgMAQsACwALIApBA3YgCkEBdmpBA2ohEUEAIQhBACEFA0AgCCAQRkUEQEEAIQkgBiAIQQF0ai4BACIPQQAgD0EAShshDwNAIAkgD0ZFBEAgEyAFQQJ0aiAIOgAAA0AgBSARaiAScSIFIARLDQALIAlBAWohCQwBCwsgCEEBaiEIDAELC0F/IQggBQ0DCyALQR9rIQhBACEFA0AgBSAKRkUEQCAWIBcgBUECdGoiBC0AAkEBdGoiBiAGLwEAIgZBAWo7AQAgBCAIIAZnaiIJOgADIAQgBiAJdCAKazsBACAFQQFqIQUMAQsLAkACQCAOQf//A3EEQCAHQRxqIgQgFSAUEAgiCEGIf0sNAiAHQRRqIAQgDBAJIAdBDGogBCAMEAkgBygCICIIQSBLDQECQCAHAn8gBygCJCIEIAcoAixPBEAgByAEIAhBA3ZrIgU2AiQgCEEHcQwBCyAEIAcoAigiBUYNASAHIAQgBCAFayAIQQN2IgYgBCAGayAFSRsiBGsiBTYCJCAIIARBA3RrCyIINgIgIAcgBSgAADYCHAtBACEFA0ACQAJAIAhBIU8EQCAHQbAaNgIkDAELIAcCfyAHKAIkIgQgBygCLE8EQCAHIAQgCEEDdmsiBDYCJEEBIQkgCEEHcQwBCyAEIAcoAigiBkYNASAHIAQgCEEDdiIJIAQgBmsgBCAJayAGTyIJGyIGayIENgIkIAggBkEDdGsLNgIgIAcgBCgAADYCHCAJRSAFQfsBS3INACAAIAVqIgggB0EUaiAHQRxqIgQQCjoAACAIIAdBDGogBBAKOgABAkAgBygCICIGQSFPBEAgB0GwGjYCJAwBCyAHKAIkIgQgBygCLE8EQCAHIAZBB3E2AiAgByAEIAZBA3ZrIgQ2AiQgByAEKAAANgIcDAMLIAQgBygCKCIJRg0AIAcgBiAEIAlrIAZBA3YiBiAEIAZrIgYgCUkbIgpBA3RrNgIgIAcgBCAKayIENgIkIAcgBCgAADYCHCAGIAlPDQILIAVBAnIhBQsgAEEBaiEMAn8CQANAQbp/IQggBUH9AUsNByAAIAVqIgogB0EUaiAHQRxqEAo6AAAgBSAMaiELIAcoAiAiBkEgSw0BAkAgBwJ/IAcoAiQiBCAHKAIsTwRAIAcgBCAGQQN2ayIENgIkIAZBB3EMAQsgBCAHKAIoIglGDQEgByAEIAQgCWsgBkEDdiIOIAQgDmsgCUkbIglrIgQ2AiQgBiAJQQN0aws2AiAgByAEKAAANgIcCyAFQf0BRg0HIAsgB0EMaiAHQRxqEAo6AAAgBUECaiEFIAcoAiAiBkEgTQRAIAcCfyAHKAIkIgQgBygCLE8EQCAHIAQgBkEDdmsiCDYCJCAGQQdxDAELIAQgBygCKCIIRg0CIAcgBCAEIAhrIAZBA3YiCSAEIAlrIAhJGyIEayIINgIkIAYgBEEDdGsLNgIgIAcgCCgAADYCHAwBCwsgB0GwGjYCJCAAIAVqIAdBFGogB0EcahAKOgAAIApBA2oMAQsgB0GwGjYCJCALIAdBDGogB0EcahAKOgAAIApBAmoLIABrIQgMBAsgCCAHQRRqIAdBHGoiBBAKOgACIAggB0EMaiAEEAo6AAMgBUEEaiEFIAcoAiAhCAwACwALIAdBHGoiBCAVIBQQCCIIQYh/Sw0BIAdBFGogBCAMEAkgB0EMaiAEIAwQCSAHKAIgIghBIEsNAAJAIAcCfyAHKAIkIgQgBygCLE8EQCAHIAQgCEEDdmsiBTYCJCAIQQdxDAELIAQgBygCKCIFRg0BIAcgBCAEIAVrIAhBA3YiBiAEIAZrIAVJGyIEayIFNgIkIAggBEEDdGsLIgg2AiAgByAFKAAANgIcC0EAIQUDQAJAAkAgCEEhTwRAIAdBsBo2AiQMAQsgBwJ/IAcoAiQiBCAHKAIsTwRAIAcgBCAIQQN2ayIENgIkQQEhCSAIQQdxDAELIAQgBygCKCIGRg0BIAcgBCAIQQN2IgkgBCAGayAEIAlrIAZPIgkbIgZrIgQ2AiQgCCAGQQN0aws2AiAgByAEKAAANgIcIAlFIAVB+wFLcg0AIAAgBWoiCCAHQRRqIAdBHGoiBBALOgAAIAggB0EMaiAEEAs6AAECQCAHKAIgIgZBIU8EQCAHQbAaNgIkDAELIAcoAiQiBCAHKAIsTwRAIAcgBkEHcTYCICAHIAQgBkEDdmsiBDYCJCAHIAQoAAA2AhwMAwsgBCAHKAIoIglGDQAgByAGIAQgCWsgBkEDdiIGIAQgBmsiBiAJSRsiCkEDdGs2AiAgByAEIAprIgQ2AiQgByAEKAAANgIcIAYgCU8NAgsgBUECciEFCyAAQQFqIQwCfwJAA0BBun8hCCAFQf0BSw0GIAAgBWoiCiAHQRRqIAdBHGoQCzoAACAFIAxqIQsgBygCICIGQSBLDQECQCAHAn8gBygCJCIEIAcoAixPBEAgByAEIAZBA3ZrIgQ2AiQgBkEHcQwBCyAEIAcoAigiCUYNASAHIAQgBCAJayAGQQN2Ig4gBCAOayAJSRsiCWsiBDYCJCAGIAlBA3RrCzYCICAHIAQoAAA2AhwLIAVB/QFGDQYgCyAHQQxqIAdBHGoQCzoAACAFQQJqIQUgBygCICIGQSBNBEAgBwJ/IAcoAiQiBCAHKAIsTwRAIAcgBCAGQQN2ayIINgIkIAZBB3EMAQsgBCAHKAIoIghGDQIgByAEIAQgCGsgBkEDdiIJIAQgCWsgCEkbIgRrIgg2AiQgBiAEQQN0aws2AiAgByAIKAAANgIcDAELCyAHQbAaNgIkIAAgBWogB0EUaiAHQRxqEAs6AAAgCkEDagwBCyAHQbAaNgIkIAsgB0EMaiAHQRxqEAs6AAAgCkECagsgAGshCAwDCyAIIAdBFGogB0EcaiIEEAs6AAIgCCAHQQxqIAQQCzoAAyAFQQRqIQUgBygCICEIDAALAAtBbCEICyAIQYh/Sw0CC0EAIQUgAUEAQTT8CwAgCCEGQQAhBANAIAUgBkcEQCAAIAVqIggtAAAiCUEMSw0CIAEgCUECdGoiCSAJKAIAQQFqNgIAIAVBAWohBUEBIAgtAAB0QQF1IARqIQQMAQsLQWwhCCAERQ0BIARnIgVBHHNBC0sNASADQSAgBWsiAzYCAEGAgICAeEEBIAN0IARrIgNnIgR2IANHDQEgACAGakEgIARrIgA6AAAgASAAQQJ0aiIAIAAoAgBBAWo2AgAgASgCBCIAQQJJIABBAXFyDQEgAiAGQQFqNgIAIA1BAWohCAwBC0FsIQgLIAdBMGokACAIC/UBAQF/IAJFBEAgAEIANwIAIABBADYCECAAQgA3AghBuH8PCyAAIAE2AgwgACABQQRqNgIQIAJBBE8EQCAAIAEgAmoiAUEEayIDNgIIIAAgAygAADYCACABQQFrLQAAIgEEQCAAQQggAWdBH3NrNgIEIAIPCyAAQQA2AgRBfw8LIAAgATYCCCAAIAEtAAAiAzYCAAJAAkACQCACQQJrDgIBAAILIAAgAS0AAkEQdCADciIDNgIACyAAIAEtAAFBCHQgA2o2AgALIAEgAmpBAWstAAAiAUUEQCAAQQA2AgRBbA8LIAAgAWcgAkEDdGtBCWo2AgQgAguuAQEEfyABIAIvAQAiAyABKAIEaiIENgIEIAAgA0ECdEGwGWooAgAgASgCAEEAIARrdnE2AgACQCAEQSFPBEAgAUGwGjYCCAwBCyABKAIIIgMgASgCEE8EQCABEAwMAQsgAyABKAIMIgVGDQAgASADIAMgBWsgBEEDdiIGIAMgBmsgBUkbIgNrIgU2AgggASAEIANBA3RrNgIEIAEgBSgAADYCAAsgACACQQRqNgIEC0wBBH8gACgCBCAAKAIAQQJ0aiICLQACIQMgAi8BACEEIAEgASgCBCIFIAItAAMiAmo2AgQgACAEIAEoAgAgBXRBACACa3ZqNgIAIAMLVgEEfyAAKAIEIAAoAgBBAnRqIgItAAIhAyACLwEAIQQgASACLQADIgIgASgCBGoiBTYCBCAAIAQgAkECdEGwGWooAgAgASgCAEEAIAVrdnFqNgIAIAMLLwEBfyAAIAAoAgQiAUEHcTYCBCAAIAAoAgggAUEDdmsiATYCCCAAIAEoAAA2AgALCAAgAEGIf0sLxQkCDX8CfiMAQRBrIgskACALQQA2AgwgC0EANgIIAn8CQCADQdQJaiIFIAMgC0EIaiALQQxqIAEgAiADQegAahAHIhBBiH9LDQAgCygCCCEIQQogACgCACIJQf8BcSIHIAdBCk8bQQFqIgQgCygCDCIBTwRAAkAgASAETw0AIAQgAWshAkEAIQEDQCABIAhGBEAgBCEBA0AgASACTQRAA0AgAkUNBSADIAJBAnRqQQA2AgAgAkEBayECDAALAAUgAyABQQJ0aiADIAEgAmtBAnRqKAIANgIAIAFBAWshAQwBCwALAAUgASAFaiIKIAJBACAKLQAAIgobIApqOgAAIAFBAWohAQwBCwALAAsgBCEBC0FUIAEgB0EBaksNARogAEEEaiEKIAAgCUH/gYB4cSABQRB0QYCA/AdxcjYCACABQQFqIQ4gA0E0aiEEQQAhAUEAIQIDQCACIA5GRQRAIAMgAkECdCIAaigCACEHIAAgBGogATYCACACQQFqIQIgASAHaiEBDAELCyADQdQHaiEHIAhBA2shAUEAIQADQAJAQQAhAiAAIAFOBEADQCAAIAhODQIgBCAAIAVqLQAAQQJ0aiIBIAEoAgAiAUEBajYCACABIAdqIAA6AAAgAEEBaiEADAALAAUDQCACQQRGRQRAIAQgBSAAIAJyIglqLQAAQQJ0aiIMIAwoAgAiDEEBajYCACAHIAxqIAk6AAAgAkEBaiECDAELCyAAQQRqIQAMAgsACwsgAygCACEIQQAhAEEBIQkDQCAJIA5GDQEgDiAJayEEIAMgCUECdGooAgAhBQJAAkACQAJAAkACQEEBIAl0QQF1IgxBAWsOCAABBAIEBAQDBAtBACECIAVBACAFQQBKGyEGIAAhAQNAIAIgBkYNBSAKIAFBAXRqIg0gByACIAhqai0AADoAASANIAQ6AAAgAkEBaiECIAFBAWohAQwACwALQQAhAiAFQQAgBUEAShshDSAAIQEDQCACIA1GDQQgCiABQQF0aiIGIAcgAiAIamotAAAiDzoAAyAGIAQ6AAIgBiAPOgABIAYgBDoAACACQQFqIQIgAUECaiEBDAALAAtBACECIAVBACAFQQBKGyEGIARB/wFxrSERIAAhAQNAIAIgBkYNAyAKIAFBAXRqIAcgAiAIamoxAABCCIYgEYRCgYCEgJCAwAB+NwAAIAJBAWohAiABQQRqIQEMAAsAC0EAIQIgBUEAIAVBAEobIQYgBEH/AXGtIREgACEBA0AgAiAGRg0CIAogAUEBdGoiBCAHIAIgCGpqMQAAQgiGIBGEQoGAhICQgMAAfiISNwAIIAQgEjcAACACQQFqIQIgAUEIaiEBDAALAAtBACEBIAVBACAFQQBKGyENIARB/wFxrSESIAAhBANAIAEgDUYNASAKIARBAXRqIQ8gByABIAhqajEAAEIIhiAShEKBgISAkIDAAH4hEUEAIQIDQCACIAxORQRAIA8gAkEBdGoiBiARNwAYIAYgETcAECAGIBE3AAggBiARNwAAIAJBEGohAgwBCwsgAUEBaiEBIAQgDGohBAwACwALIAlBAWohCSAFIAhqIQggBSAMbCAAaiEADAALAAsgEAshAiALQRBqJAAgAgufAwIBfgF/AkACQAJAAkACQAJAQQEgBCADa3QiCEEBaw4IAAEEAgQEBAMECyAGQRh0IANBEHRqIQMDQCABIAJGDQUgACABLQAAIgQgBEEIdCAFciAGQQFGGyADcjYBACABQQFqIQEgAEEEaiEADAALAAsgBkEYdCADQRB0aiEDA0AgASACRg0EIAAgAS0AACIEIARBCHQgBXIgBkEBRhsgA3IiBDYBBCAAIAQ2AQAgAUEBaiEBIABBCGohAAwACwALA0AgASACRg0DIAAgAS0AACADIAUgBhAQIgc3AQggACAHNwEAIAFBAWohASAAQRBqIQAMAAsACwNAIAEgAkYNAiAAIAEtAAAgAyAFIAYQECIHNwEYIAAgBzcBECAAIAc3AQggACAHNwEAIAFBAWohASAAQSBqIQAMAAsACwNAIAEgAkYNASAAIAhBAnRqIQQgAS0AACADIAUgBhAQIQcDQCAAIARGRQRAIAAgBzcBGCAAIAc3ARAgACAHNwEIIAAgBzcBACAAQSBqIQAMAQsLIAFBAWohASAEIQAMAAsACwsmACADQRh0IAFBEHRqIAAgAEEIdCACciADQQFGG3KtQoGAgIAQfgu7BgEKfyMAQSBrIgUkACAELwECIQsgBUEMaiACIAMQCCIDQYh/TQRAIARBBGohCCAAIAFqIQkCQAJAAkAgAUEETwRAIAlBA2shDUEAIAtrQR9xIQwgBSgCFCEDIAUoAhghByAFKAIcIQ4gBSgCDCEGIAUoAhAhBANAIARBIEsEQEGwGiEDDAQLAkAgAyAOTwRAIARBB3EhAiAEQQN2IQZBASEEDAELIAMgB0YNBCAEIARBA3YiAiADIAdrIAMgAmsgB08iBBsiBkEDdGshAgsgAyAGayIDKAAAIQYgBEUgACANT3INAiAIIAYgAnQgDHZBAXRqIgQtAAAhCiAAIAQtAAE6AAAgCCAGIAIgCmoiAnQgDHZBAXRqIgQtAAAhCiAAIAQtAAE6AAEgAiAKaiEEIABBAmohAAwACwALIAUoAhAiBEEhTwRAIAVBsBo2AhQMAwsgBSgCFCIDIAUoAhxPBEAgBSAEQQdxIgI2AhAgBSADIARBA3ZrIgM2AhQgBSADKAAANgIMIAIhBAwDCyADIAUoAhgiAkYNAiAFIAQgAyACayAEQQN2IgQgAyAEayACSRsiAkEDdGsiBDYCECAFIAMgAmsiAjYCFCAFIAIoAAA2AgwMAgsgAiEECyAFIAQ2AhAgBSADNgIUIAUgBjYCDAtBACALa0EfcSEHA0ACQCAEQSFPBEAgBUGwGjYCFAwBCyAFAn8gBSgCFCICIAUoAhxPBEAgBSACIARBA3ZrIgM2AhRBASEGIARBB3EMAQsgAiAFKAIYIgNGDQEgBSACIARBA3YiBiACIANrIAIgBmsgA08iBhsiAmsiAzYCFCAEIAJBA3RrCyIENgIQIAUgAygAACICNgIMIAZFIAAgCU9yDQAgCCACIAR0IAd2QQF0aiICLQABIQMgBSAEIAItAABqNgIQIAAgAzoAACAAQQFqIQAgBSgCECEEDAELCwNAIAAgCU9FBEAgCCAFKAIMIAUoAhAiAnQgB3ZBAXRqIgMtAAEhBCAFIAIgAy0AAGo2AhAgACAEOgAAIABBAWohAAwBCwtBbEFsIAEgBSgCEEEgRxsgBSgCFCAFKAIYRxshAwsgBUEgaiQAIAML/SEBGX8jAEHQAGsiBSQAQWwhBgJAIAFBBkkgA0EKSXINAAJAIAMgAi8ABCIHIAIvAAAiCiACLwACIglqakEGaiILSQ0AIAAgAUEDakECdiIMaiIIIAxqIg0gDGoiDCAAIAFqIhFLDQAgBC8BAiEOIAVBPGogAkEGaiICIAoQCCIGQYh/Sw0BIAVBKGogAiAKaiICIAkQCCIGQYh/Sw0BIAVBFGogAiAJaiICIAcQCCIGQYh/Sw0BIAUgAiAHaiADIAtrEAgiBkGIf0sNASAEQQRqIQogEUEDayESAkAgESAMa0EESQRAIAwhAyANIQIgCCEEDAELQQAgDmtBH3EhBkEAIQkgDCEDIA0hAiAIIQQDQCAJQQFxIAMgEk9yDQEgACAKIAUoAjwiCSAFKAJAIgt0IAZ2QQJ0aiIHLwEAOwAAIActAAIhECAHLQADIQ8gBCAKIAUoAigiEyAFKAIsIhR0IAZ2QQJ0aiIHLwEAOwAAIActAAIhFSAHLQADIRYgAiAKIAUoAhQiFyAFKAIYIhh0IAZ2QQJ0aiIHLwEAOwAAIActAAIhGSAHLQADIRogAyAKIAUoAgAiGyAFKAIEIhx0IAZ2QQJ0aiIHLwEAOwAAIActAAIhHSAHLQADIQcgACAPaiIPIAogCSALIBBqIgl0IAZ2QQJ0aiIALwEAOwAAIAUgCSAALQACajYCQCAALQADIQkgBCAWaiIEIAogEyAUIBVqIgt0IAZ2QQJ0aiIALwEAOwAAIAUgCyAALQACajYCLCAALQADIQsgAiAaaiICIAogFyAYIBlqIhB0IAZ2QQJ0aiIALwEAOwAAIAUgECAALQACajYCGCAALQADIRAgAyAHaiIHIAogGyAcIB1qIgB0IAZ2QQJ0aiIDLwEAOwAAIAUgACADLQACajYCBCAJIA9qIQAgBCALaiEEIAIgEGohAiAHIAMtAANqIQMgBUE8ahATIAVBKGoQE3IgBUEUahATciAFEBNyQQBHIQkMAAsACyAAIAhLIAQgDUtyDQBBbCEGIAIgDEsNAQJAAkAgCCAAayIJQQRPBEAgCEEDayEQQQAgDmtBH3EhCyAFKAJAIQYDQCAGQSFPBEAgBUGwGjYCRAwDCyAFAn8gBSgCRCIHIAUoAkxPBEAgBSAHIAZBA3ZrIgk2AkRBASEHIAZBB3EMAQsgByAFKAJIIglGDQMgBSAHIAZBA3YiDyAHIAlrIAcgD2sgCU8iBxsiD2siCTYCRCAGIA9BA3RrCyIGNgJAIAUgCSgAACIJNgI8IAdFIAAgEE9yDQIgACAKIAkgBnQgC3ZBAnRqIgYvAQA7AAAgBSAFKAJAIAYtAAJqIgc2AkAgACAGLQADaiIJIAogBSgCPCAHdCALdkECdGoiAC8BADsAACAFIAUoAkAgAC0AAmoiBjYCQCAJIAAtAANqIQAMAAsACyAFKAJAIgZBIU8EQCAFQbAaNgJEDAILIAUoAkQiCyAFKAJMTwRAIAUgBkEHcSIHNgJAIAUgCyAGQQN2ayIGNgJEIAUgBigAADYCPCAHIQYMAgsgCyAFKAJIIgdGDQEgBSAGIAsgB2sgBkEDdiIGIAsgBmsgB0kbIgdBA3RrIgY2AkAgBSALIAdrIgc2AkQgBSAHKAAANgI8DAELIAggAGshCQsCQCAJQQJJDQAgCEECayELQQAgDmtBH3EhEANAAkAgBkEhTwRAIAVBsBo2AkQMAQsgBQJ/IAUoAkQiByAFKAJMTwRAIAUgByAGQQN2ayIJNgJEQQEhByAGQQdxDAELIAcgBSgCSCIJRg0BIAUgByAGQQN2Ig8gByAJayAHIA9rIAlPIgcbIg9rIgk2AkQgBiAPQQN0awsiBjYCQCAFIAkoAAAiCTYCPCAHRSAAIAtLcg0AIAAgCiAJIAZ0IBB2QQJ0aiIHLwEAOwAAIAUgBSgCQCAHLQACaiIGNgJAIAAgBy0AA2ohAAwBCwsDQCAAIAtLDQEgACAKIAUoAjwgBnQgEHZBAnRqIgcvAQA7AAAgBSAFKAJAIActAAJqIgY2AkAgACAHLQADaiEADAALAAsCQCAAIAhPDQAgACAKIAUoAjwgBnRBACAOa3ZBAnRqIgAtAAA6AAAgBQJ/IAAtAANBAUYEQCAFKAJAIAAtAAJqDAELIAUoAkAiCEEfSw0BQSAgCCAALQACaiIAIABBIE8bCzYCQAsCQAJAIA0gBGsiBkEETwRAIA1BA2shCUEAIA5rQR9xIQcgBSgCLCEAA0AgAEEhTwRAIAVBsBo2AjAMAwsgBQJ/IAUoAjAiCCAFKAI4TwRAIAUgCCAAQQN2ayIGNgIwQQEhCCAAQQdxDAELIAggBSgCNCIGRg0DIAUgCCAAQQN2IgsgCCAGayAIIAtrIAZPIggbIgtrIgY2AjAgACALQQN0awsiADYCLCAFIAYoAAAiBjYCKCAIRSAEIAlPcg0CIAQgCiAGIAB0IAd2QQJ0aiIALwEAOwAAIAUgBSgCLCAALQACaiIINgIsIAQgAC0AA2oiBiAKIAUoAiggCHQgB3ZBAnRqIgQvAQA7AAAgBSAFKAIsIAQtAAJqIgA2AiwgBiAELQADaiEEDAALAAsgBSgCLCIAQSFPBEAgBUGwGjYCMAwCCyAFKAIwIgcgBSgCOE8EQCAFIABBB3EiCDYCLCAFIAcgAEEDdmsiADYCMCAFIAAoAAA2AiggCCEADAILIAcgBSgCNCIIRg0BIAUgACAHIAhrIABBA3YiACAHIABrIAhJGyIIQQN0ayIANgIsIAUgByAIayIINgIwIAUgCCgAADYCKAwBCyANIARrIQYLAkAgBkECSQ0AIA1BAmshCUEAIA5rQR9xIQsDQAJAIABBIU8EQCAFQbAaNgIwDAELIAUCfyAFKAIwIgggBSgCOE8EQCAFIAggAEEDdmsiBjYCMEEBIQcgAEEHcQwBCyAIIAUoAjQiBkYNASAFIAggAEEDdiIHIAggBmsgCCAHayAGTyIHGyIIayIGNgIwIAAgCEEDdGsLIgA2AiwgBSAGKAAAIgg2AiggB0UgBCAJS3INACAEIAogCCAAdCALdkECdGoiCC8BADsAACAFIAUoAiwgCC0AAmoiADYCLCAEIAgtAANqIQQMAQsLA0AgBCAJSw0BIAQgCiAFKAIoIAB0IAt2QQJ0aiIILwEAOwAAIAUgBSgCLCAILQACaiIANgIsIAQgCC0AA2ohBAwACwALAkAgBCANTw0AIAQgCiAFKAIoIAB0QQAgDmt2QQJ0aiIALQAAOgAAIAUCfyAALQADQQFGBEAgBSgCLCAALQACagwBCyAFKAIsIgRBH0sNAUEgIAQgAC0AAmoiACAAQSBPGws2AiwLAkACQCAMIAJrIgZBBE8EQCAMQQNrIQdBACAOa0EfcSEIIAUoAhghAANAIABBIU8EQCAFQbAaNgIcDAMLIAUCfyAFKAIcIgQgBSgCJE8EQCAFIAQgAEEDdmsiBjYCHEEBIQkgAEEHcQwBCyAEIAUoAiAiDUYNAyAFIAQgAEEDdiIGIAQgDWsgBCAGayANTyIJGyIEayIGNgIcIAAgBEEDdGsLIgA2AhggBSAGKAAAIgQ2AhQgCUUgAiAHT3INAiACIAogBCAAdCAIdkECdGoiAC8BADsAACAFIAUoAhggAC0AAmoiBDYCGCACIAAtAANqIg0gCiAFKAIUIAR0IAh2QQJ0aiICLwEAOwAAIAUgBSgCGCACLQACaiIANgIYIA0gAi0AA2ohAgwACwALIAUoAhgiAEEhTwRAIAVBsBo2AhwMAgsgBSgCHCIIIAUoAiRPBEAgBSAAQQdxIgQ2AhggBSAIIABBA3ZrIgA2AhwgBSAAKAAANgIUIAQhAAwCCyAIIAUoAiAiBEYNASAFIAAgCCAEayAAQQN2IgAgCCAAayAESRsiBEEDdGsiADYCGCAFIAggBGsiBDYCHCAFIAQoAAA2AhQMAQsgDCACayEGCwJAIAZBAkkNACAMQQJrIQ1BACAOa0EfcSEHA0ACQCAAQSFPBEAgBUGwGjYCHAwBCyAFAn8gBSgCHCIEIAUoAiRPBEAgBSAEIABBA3ZrIgY2AhxBASEIIABBB3EMAQsgBCAFKAIgIghGDQEgBSAEIABBA3YiBiAEIAhrIAQgBmsgCE8iCBsiBGsiBjYCHCAAIARBA3RrCyIANgIYIAUgBigAACIENgIUIAhFIAIgDUtyDQAgAiAKIAQgAHQgB3ZBAnRqIgQvAQA7AAAgBSAFKAIYIAQtAAJqIgA2AhggAiAELQADaiECDAELCwNAIAIgDUsNASACIAogBSgCFCAAdCAHdkECdGoiBC8BADsAACAFIAUoAhggBC0AAmoiADYCGCACIAQtAANqIQIMAAsACwJAIAIgDE8NACACIAogBSgCFCAAdEEAIA5rdkECdGoiAC0AADoAACAFAn8gAC0AA0EBRgRAIAUoAhggAC0AAmoMAQsgBSgCGCICQR9LDQFBICACIAAtAAJqIgAgAEEgTxsLNgIYCwJAIBEgA2tBBE8EQEEAIA5rQR9xIQQgBSgCBCEAA0AgAEEhTwRAIAVBsBo2AggMAwsgBQJ/IAUoAggiAiAFKAIQTwRAIAUgAiAAQQN2ayIGNgIIQQEhAiAAQQdxDAELIAIgBSgCDCIMRg0DIAUgAiAAQQN2IgggAiAMayACIAhrIAxPIgIbIgxrIgY2AgggACAMQQN0awsiADYCBCAFIAYoAAAiDDYCACACRSADIBJPcg0CIAMgCiAMIAB0IAR2QQJ0aiIALwEAOwAAIAUgBSgCBCAALQACaiICNgIEIAMgAC0AA2oiAyAKIAUoAgAgAnQgBHZBAnRqIgIvAQA7AAAgBSAFKAIEIAItAAJqIgA2AgQgAyACLQADaiEDDAALAAsgBSgCBCIAQSFPBEAgBUGwGjYCCAwBCyAFKAIIIgQgBSgCEE8EQCAFIABBB3EiAjYCBCAFIAQgAEEDdmsiADYCCCAFIAAoAAA2AgAgAiEADAELIAQgBSgCDCICRg0AIAUgACAEIAJrIABBA3YiACAEIABrIAJJGyICQQN0ayIANgIEIAUgBCACayICNgIIIAUgAigAADYCAAsCQCARIANrQQJJDQAgEUECayEEQQAgDmtBH3EhDANAAkAgAEEhTwRAIAVBsBo2AggMAQsgBQJ/IAUoAggiAiAFKAIQTwRAIAUgAiAAQQN2ayIGNgIIQQEhCSAAQQdxDAELIAIgBSgCDCIIRg0BIAUgAiAAQQN2Ig0gAiAIayACIA1rIAhPIgkbIgJrIgY2AgggACACQQN0awsiADYCBCAFIAYoAAAiAjYCACAJRSADIARLcg0AIAMgCiACIAB0IAx2QQJ0aiICLwEAOwAAIAUgBSgCBCACLQACaiIANgIEIAMgAi0AA2ohAwwBCwsDQCADIARLDQEgAyAKIAUoAgAgAHQgDHZBAnRqIgIvAQA7AAAgBSAFKAIEIAItAAJqIgA2AgQgAyACLQADaiEDDAALAAsCQCADIBFPDQAgAyAKIAUoAgAgAHRBACAOa3ZBAnRqIgItAAA6AAAgAi0AA0EBRgRAIAUoAgQgAi0AAmohAAwBCyAFKAIEIgBBH0sNAEEgIAAgAi0AAmoiACAAQSBPGyEAC0FsQWxBbEFsQWxBbEFsQWwgASAAQSBHGyAFKAIIIAUoAgxHGyAFKAIYQSBHGyAFKAIcIAUoAiBHGyAFKAIsQSBHGyAFKAIwIAUoAjRHGyAFKAJAQSBHGyAFKAJEIAUoAkhHGyEGDAELQWwhBgsgBUHQAGokACAGCxkAIAAoAgggACgCEEkEQEEDDwsgABAMQQAL8xwBFn8jAEHQAGsiBSQAQWwhCAJAIAFBBkkgA0EKSXINAAJAIAMgAi8ABCIGIAIvAAAiCiACLwACIglqakEGaiISSQ0AIAAgAUEDakECdiILaiIHIAtqIg4gC2oiCyAAIAFqIg9LDQAgBC8BAiEMIAVBPGogAkEGaiICIAoQCCIIQYh/Sw0BIAVBKGogAiAKaiICIAkQCCIIQYh/Sw0BIAVBFGogAiAJaiICIAYQCCIIQYh/Sw0BIAUgAiAGaiADIBJrEAgiCEGIf0sNASAEQQRqIQogD0EDayESAkAgDyALa0EESQRAIAshAyAOIQIgByEEDAELQQAgDGtBH3EhCEEAIQYgCyEDIA4hAiAHIQQDQCAGQQFxIAMgEk9yDQEgCiAFKAI8IgYgBSgCQCIJdCAIdkEBdGoiDS0AACEQIAAgDS0AAToAACAKIAUoAigiDSAFKAIsIhF0IAh2QQF0aiITLQAAIRUgBCATLQABOgAAIAogBSgCFCITIAUoAhgiFnQgCHZBAXRqIhQtAAAhFyACIBQtAAE6AAAgCiAFKAIAIhQgBSgCBCIYdCAIdkEBdGoiGS0AACEaIAMgGS0AAToAACAKIAYgCSAQaiIGdCAIdkEBdGoiCS0AASEQIAUgBiAJLQAAajYCQCAAIBA6AAEgCiANIBEgFWoiBnQgCHZBAXRqIgktAAEhDSAFIAYgCS0AAGo2AiwgBCANOgABIAogEyAWIBdqIgZ0IAh2QQF0aiIJLQABIQ0gBSAGIAktAABqNgIYIAIgDToAASAKIBQgGCAaaiIGdCAIdkEBdGoiCS0AASENIAUgBiAJLQAAajYCBCADIA06AAEgA0ECaiEDIAJBAmohAiAEQQJqIQQgAEECaiEAIAVBPGoQEyAFQShqEBNyIAVBFGoQE3IgBRATckEARyEGDAALAAsgACAHSyAEIA5Lcg0AQWwhCCACIAtLDQECQCAHIABrQQROBEAgB0EDayEQQQAgDGtBH3EhDQNAIAUoAkAiBkEhTwRAIAVBsBo2AkQMAwsgBQJ/IAUoAkQiCCAFKAJMTwRAIAUgCCAGQQN2ayIINgJEQQEhCSAGQQdxDAELIAggBSgCSCIJRg0DIAUgCCAGQQN2IhEgCCAJayAIIBFrIAlPIgkbIhFrIgg2AkQgBiARQQN0awsiBjYCQCAFIAgoAAAiCDYCPCAJRSAAIBBPcg0CIAogCCAGdCANdkEBdGoiCC0AASEJIAUgBiAILQAAajYCQCAAIAk6AAAgCiAFKAI8IAUoAkAiBnQgDXZBAXRqIggtAAEhCSAFIAYgCC0AAGo2AkAgACAJOgABIABBAmohAAwACwALIAUoAkAiBkEhTwRAIAVBsBo2AkQMAQsgBSgCRCIJIAUoAkxPBEAgBSAGQQdxIgg2AkAgBSAJIAZBA3ZrIgY2AkQgBSAGKAAANgI8IAghBgwBCyAJIAUoAkgiCEYNACAFIAYgCSAIayAGQQN2IgYgCSAGayAISRsiCEEDdGsiBjYCQCAFIAkgCGsiCDYCRCAFIAgoAAA2AjwLQQAgDGtBH3EhCANAAkAgBkEhTwRAIAVBsBo2AkQMAQsgBQJ/IAUoAkQiCSAFKAJMTwRAIAUgCSAGQQN2ayIMNgJEQQEhCSAGQQdxDAELIAkgBSgCSCIMRg0BIAUgCSAGQQN2Ig0gCSAMayAJIA1rIAxPIgkbIg1rIgw2AkQgBiANQQN0awsiBjYCQCAFIAwoAAAiDDYCPCAJRSAAIAdPcg0AIAogDCAGdCAIdkEBdGoiCS0AASEMIAUgBiAJLQAAajYCQCAAIAw6AAAgAEEBaiEAIAUoAkAhBgwBCwsDQCAAIAdPRQRAIAogBSgCPCAFKAJAIgZ0IAh2QQF0aiIJLQABIQwgBSAGIAktAABqNgJAIAAgDDoAACAAQQFqIQAMAQsLAkAgDiAEa0EETgRAIA5BA2shCQNAIAUoAiwiAEEhTwRAIAVBsBo2AjAMAwsgBQJ/IAUoAjAiByAFKAI4TwRAIAUgByAAQQN2ayIGNgIwQQEhByAAQQdxDAELIAcgBSgCNCIGRg0DIAUgByAAQQN2IgwgByAGayAHIAxrIAZPIgcbIgxrIgY2AjAgACAMQQN0awsiADYCLCAFIAYoAAAiBjYCKCAHRSAEIAlPcg0CIAogBiAAdCAIdkEBdGoiBy0AASEGIAUgACAHLQAAajYCLCAEIAY6AAAgCiAFKAIoIAUoAiwiAHQgCHZBAXRqIgctAAEhBiAFIAAgBy0AAGo2AiwgBCAGOgABIARBAmohBAwACwALIAUoAiwiAEEhTwRAIAVBsBo2AjAMAQsgBSgCMCIGIAUoAjhPBEAgBSAAQQdxIgc2AiwgBSAGIABBA3ZrIgA2AjAgBSAAKAAANgIoIAchAAwBCyAGIAUoAjQiB0YNACAFIAAgBiAHayAAQQN2IgAgBiAAayAHSRsiB0EDdGsiADYCLCAFIAYgB2siBzYCMCAFIAcoAAA2AigLA0ACQCAAQSFPBEAgBUGwGjYCMAwBCyAFAn8gBSgCMCIHIAUoAjhPBEAgBSAHIABBA3ZrIgY2AjBBASEHIABBB3EMAQsgByAFKAI0IgZGDQEgBSAHIABBA3YiCSAHIAZrIAcgCWsgBk8iBxsiCWsiBjYCMCAAIAlBA3RrCyIANgIsIAUgBigAACIGNgIoIAdFIAQgDk9yDQAgCiAGIAB0IAh2QQF0aiIHLQABIQYgBSAAIActAABqNgIsIAQgBjoAACAEQQFqIQQgBSgCLCEADAELCwNAIAQgDk9FBEAgCiAFKAIoIAUoAiwiAHQgCHZBAXRqIgctAAEhBiAFIAAgBy0AAGo2AiwgBCAGOgAAIARBAWohBAwBCwsCQCALIAJrQQROBEAgC0EDayEOA0AgBSgCGCIAQSFPBEAgBUGwGjYCHAwDCyAFAn8gBSgCHCIEIAUoAiRPBEAgBSAEIABBA3ZrIgQ2AhxBASEGIABBB3EMAQsgBCAFKAIgIgdGDQMgBSAEIABBA3YiBiAEIAdrIAQgBmsgB08iBhsiB2siBDYCHCAAIAdBA3RrCyIANgIYIAUgBCgAACIENgIUIAZFIAIgDk9yDQIgCiAEIAB0IAh2QQF0aiIELQABIQcgBSAAIAQtAABqNgIYIAIgBzoAACAKIAUoAhQgBSgCGCIAdCAIdkEBdGoiBC0AASEHIAUgACAELQAAajYCGCACIAc6AAEgAkECaiECDAALAAsgBSgCGCIAQSFPBEAgBUGwGjYCHAwBCyAFKAIcIgcgBSgCJE8EQCAFIABBB3EiBDYCGCAFIAcgAEEDdmsiADYCHCAFIAAoAAA2AhQgBCEADAELIAcgBSgCICIERg0AIAUgACAHIARrIABBA3YiACAHIABrIARJGyIEQQN0ayIANgIYIAUgByAEayIENgIcIAUgBCgAADYCFAsDQAJAIABBIU8EQCAFQbAaNgIcDAELIAUCfyAFKAIcIgQgBSgCJE8EQCAFIAQgAEEDdmsiBDYCHEEBIQYgAEEHcQwBCyAEIAUoAiAiB0YNASAFIAQgAEEDdiIOIAQgB2sgBCAOayAHTyIGGyIHayIENgIcIAAgB0EDdGsLIgA2AhggBSAEKAAAIgQ2AhQgBkUgAiALT3INACAKIAQgAHQgCHZBAXRqIgQtAAEhByAFIAAgBC0AAGo2AhggAiAHOgAAIAJBAWohAiAFKAIYIQAMAQsLA0AgAiALT0UEQCAKIAUoAhQgBSgCGCIAdCAIdkEBdGoiBC0AASEHIAUgACAELQAAajYCGCACIAc6AAAgAkEBaiECDAELCwJAIA8gA2tBBE4EQANAIAUoAgQiAEEhTwRAIAVBsBo2AggMAwsgBQJ/IAUoAggiAiAFKAIQTwRAIAUgAiAAQQN2ayIENgIIQQEhAiAAQQdxDAELIAIgBSgCDCIERg0DIAUgAiAAQQN2IgsgAiAEayACIAtrIARPIgIbIgtrIgQ2AgggACALQQN0awsiADYCBCAFIAQoAAAiBDYCACACRSADIBJPcg0CIAogBCAAdCAIdkEBdGoiAi0AASEEIAUgACACLQAAajYCBCADIAQ6AAAgCiAFKAIAIAUoAgQiAHQgCHZBAXRqIgItAAEhBCAFIAAgAi0AAGo2AgQgAyAEOgABIANBAmohAwwACwALIAUoAgQiAEEhTwRAIAVBsBo2AggMAQsgBSgCCCIEIAUoAhBPBEAgBSAAQQdxIgI2AgQgBSAEIABBA3ZrIgA2AgggBSAAKAAANgIAIAIhAAwBCyAEIAUoAgwiAkYNACAFIAAgBCACayAAQQN2IgAgBCAAayACSRsiAkEDdGsiADYCBCAFIAQgAmsiAjYCCCAFIAIoAAA2AgALA0ACQCAAQSFPBEAgBUGwGjYCCAwBCyAFAn8gBSgCCCICIAUoAhBPBEAgBSACIABBA3ZrIgQ2AghBASECIABBB3EMAQsgAiAFKAIMIgRGDQEgBSACIABBA3YiCyACIARrIAIgC2sgBE8iAhsiC2siBDYCCCAAIAtBA3RrCyIANgIEIAUgBCgAACIENgIAIAJFIAMgD09yDQAgCiAEIAB0IAh2QQF0aiICLQABIQQgBSAAIAItAABqNgIEIAMgBDoAACADQQFqIQMgBSgCBCEADAELCwNAIAMgD09FBEAgCiAFKAIAIAUoAgQiAHQgCHZBAXRqIgItAAEhBCAFIAAgAi0AAGo2AgQgAyAEOgAAIANBAWohAwwBCwtBbEFsQWxBbEFsQWxBbEFsIAEgBSgCBEEgRxsgBSgCCCAFKAIMRxsgBSgCGEEgRxsgBSgCHCAFKAIgRxsgBSgCLEEgRxsgBSgCMCAFKAI0RxsgBSgCQEEgRxsgBSgCRCAFKAJIRxshCAwBC0FsIQgLIAVB0ABqJAAgCAsaACAABEAgAQRAIAIgACABEQIADwsgABACCwtSAQN/AkAgACgCmOsBIgFFDQAgASgCACABKAK01QEiAiABKAK41QEiAxAVIAIEQCADIAEgAhECAAwBCyABEAILIABBADYCqOsBIABCADcDmOsBC5QFAgR/An4jAEEQayIGJAACQCABIAJFckUEQEF/IQQMAQsCQEEBQQUgAxsiBCACSwRAIAJFIANBAUZyDQIgBkGo6r5pNgIMIAJFIgBFBEAgBkEMaiABIAL8CgAACyAGKAIMQajqvmlGDQIgBkHQ1LTCATYCDCAARQRAIAZBDGogASAC/AoAAAsgBigCDEFwcUHQ1LTCAUYNAgwBCyAAQQBBMPwLAEEBIQUCQCADQQFGDQAgAyEFIAEoAAAiA0Go6r5pRg0AIANBcHFB0NS0wgFHDQFBCCEEIAJBCEkNAiAAQQE2AhQgASgAACECIABBCDYCGCAAIAJB0NS0wgFrNgIcIAAgATUABDcDAEEAIQQMAgsgAiABIAIgBRAYIgJJBEAgAiEEDAILIAAgAjYCGCABIARqIgVBAWstAAAiAkEIcQRAQXIhBAwCCyACQSBxIgNFBEAgBS0AACIFQacBSwRAQXAhBAwDCyAFQQdxrUIBIAVBA3ZBCmqthiIIQgOIfiAIfCEJIARBAWohBAsgAkEGdiEFIAJBAnYhBwJAAkACQAJAIAJBA3EiAkEBaw4DAAECAwsgASAEai0AACECIARBAWohBAwCCyABIARqLwAAIQIgBEECaiEEDAELIAEgBGooAAAhAiAEQQRqIQQLIAdBAXEhBwJ+AkACQAJAAkAgBUEBaw4DAQIDAAtCfyADRQ0DGiABIARqMQAADAMLIAEgBGozAABCgAJ8DAILIAEgBGo1AAAMAQsgASAEaikAAAshCCAAIAc2AiAgACACNgIcIAAgCDcDAEEAIQQgAEEANgIUIAAgCCAJIAMbIgg3AwggAEKAgAggCCAIQoCACFobPgIQDAELQXYhBAsgBkEQaiQAIAQLXwEBf0G4fyEDIAFBAUEFIAIbIgFPBH8gACABakEBay0AACIAQQNxQQJ0QcAaaigCACABaiAAQQR2QQxxQdAaaigCAGogAEEgcSIBRWogAUEFdiAAQcAASXFqBUG4fwsLxAICBH8CfiMAQUBqIgQkAAJAA0AgAUEFTwRAAkAgACgAAEFwcUHQ1LTCAUYEQEJ+IQYgAUEISQ0EIAAoAAQiA0F3Sw0EIANBCGoiAiABSw0EIANBgX9JDQEMBAsgBEEQaiIDIAAgAUEAEBchAkJ+IAQpAxBCACAEKAIkQQFHGyACGyIGQn1WDQMgBiAHfCIHIAZUIQJCfiEGIAINAyADIAAgAUEAEBciAkGIf0sgAnINAyABIAQoAigiA2shAiAAIANqIQMDQCADIAIgBEEEahAaIgVBiH9LDQQgAiAFQQNqIgVJDQQgAiAFayECIAMgBWohAyAEKAIIRQ0ACyAEKAIwBH8gAkEESQ0EIANBBGoFIAMLIABrIgJBiH9LDQMLIAEgAmshASAAIAJqIQAMAQsLQn4gByABGyEGCyAEQUBrJAAgBgtkAQF/Qbh/IQMCQCABQQNJDQAgAC0AAiEBIAIgAC8AACIAQQFxNgIEIAIgAEEBdkEDcSIDNgIAIAIgACABQRB0ckEDdiIANgIIAkACQCADQQFrDgMCAQABC0FsDwsgACEDCyADC7ABAAJ/IAIgACgClOsBBH8gACgC0OkBBUGAgAgLIgIgA2pBQGtLBEAgACABIAJqQSBqIgE2AvzrAUEBIQIgASADagwBCyADQYCABE0EQCAAIABBiOwBaiIBNgL86wFBACECIAEgA2oMAQsgACABIARqIgEgA2siAkHg/wNqIgQgAiAFGzYC/OsBQQIhAiADIARqQYCABGsgASAFGwshAyAAIAI2AoTsASAAIAM2AoDsAQuyBwIEfwF+IwBBgAFrIg4kACAOIAM2AnwCQAJAAkACQAJAAkAgAkEBaw4DAAMCAQsgBkUEQEG4fyEKDAULIAMgBS0AACICSQ0DIAIgCGotAAAhAyAHIAJBAnRqKAIAIQIgAEEAOgALIABCADcCACAAIAI2AgwgACADOgAKIABBADsBCCABIAA2AgBBASEKDAQLIAEgCTYCAEEAIQoMAwsgCkUNAUEAIQogC0UgDEEZSXINAkEIIAR0QQhyIQBBACEDA0AgACADTQ0DIANBQGshAwwACwALQWwhCiAOIA5B/ABqIA5B+ABqIAUgBhAGIgNBiH9LDQEgDigCeCICIARLDQEgAEEMaiEMIA4oAnxBAWohEUGAgAIgAnRBEHYhEEEAIQRBASEFQQEgAnQiCkEBayILIQkDQCAEIBFHBEACQCAOIARBAXQiD2ovAQAiBkH//wNGBEAgDCAJQQN0aiAENgIAIAlBAWshCUEBIQYMAQsgBUEAIBAgBsFKGyEFCyANIA9qIAY7AQAgBEEBaiEEDAELCyAAIAI2AgQgACAFNgIAAkAgCSALRgRAIA1B6gBqIRBBACEJQQAhBQNAIAkgEUYEQCAKQQN2IApBAXZqQQNqIglBAXQhEUEAIQZBACEFA0AgBSAKTw0EIAUgEGohD0EAIQQDQCAEQQJHBEAgDCAEIAlsIAZqIAtxQQN0aiAEIA9qLQAANgIAIARBAWohBAwBCwsgBUECaiEFIAYgEWogC3EhBgwACwAFIA4gCUEBdGouAQAhBiAFIBBqIg8gEjcAAEEIIQQDQCAEIAZIBEAgBCAPaiASNwAAIARBCGohBAwBCwsgEkKBgoSIkKDAgAF8IRIgCUEBaiEJIAUgBmohBQwBCwALAAsgCkEDdiAKQQF2akEDaiEQQQAhBUEAIQYDQCAFIBFGDQFBACEEIA4gBUEBdGouAQAiD0EAIA9BAEobIQ8DQCAEIA9HBEAgDCAGQQN0aiAFNgIAA0AgBiAQaiALcSIGIAlLDQALIARBAWohBAwBCwsgBUEBaiEFDAALAAsgAEEIaiEJIAJBH2shC0EAIQYDQCAGIApHBEAgDSAJIAZBA3RqIgIoAgQiBEEBdGoiBSAFLwEAIgVBAWo7AQAgAiALIAVnaiIMOgADIAIgBSAMdCAKazsBACACIAQgCGotAAA6AAIgAiAHIARBAnRqKAIANgIEIAZBAWohBgwBCwsgASAANgIAIAMhCgwBC0FsIQoLIA5BgAFqJAAgCgtwAQR/IABCADcCACACBEAgAUEKaiEGIAEoAgQhBEEAIQJBACEBA0AgASAEdkUEQCACIAYgAUEDdGotAAAiBSACIAVLGyECIAFBAWohASADIAVBFktqIQMMAQsLIAAgAjYCBCAAIANBCCAEa3Q2AgALC64BAQR/IAEgAigCBCIDIAEoAgRqIgQ2AgQgACADQQJ0QbAZaigCACABKAIAQQAgBGt2cTYCAAJAIARBIU8EQCABQbAaNgIIDAELIAEoAggiAyABKAIQTwRAIAEQDAwBCyADIAEoAgwiBUYNACABIAMgAyAFayAEQQN2IgYgAyAGayAFSRsiA2siBTYCCCABIAQgA0EDdGs2AgQgASAFKAAANgIACyAAIAJBCGo2AgQLjQICA38BfiAAIAJqIQQCQAJAIAJBCE4EQCAAIAFrIgJBeUgNAQsDQCAAIARPDQIgACABLQAAOgAAIABBAWohACABQQFqIQEMAAsACwJAAkAgAkFvSw0AIAAgBEEgayICSw0AIAEpAAAhBiAAIAEpAAg3AAggACAGNwAAIAIgAGsiBUERTgRAIABBEGohACABIQMDQCADKQAQIQYgACADKQAYNwAIIAAgBjcAACADKQAgIQYgACADKQAoNwAYIAAgBjcAECADQSBqIQMgAEEgaiIAIAJJDQALCyABIAVqIQEMAQsgACECCwNAIAIgBE8NASACIAEtAAA6AAAgAkEBaiECIAFBAWohAQwACwALC98BAQZ/Qbp/IQoCQCACKAIEIgggAigCACIJaiINIAEgAGtLDQBBbCEKIAkgBCADKAIAIgtrSw0AIAAgCWoiBCACKAIIIgxrIQIgACABQSBrIgEgCyAJQQAQIyADIAkgC2o2AgACQAJAIAQgBWsgDE8EQCACIQUMAQsgDCAEIAZrSw0CIAcgByACIAVrIgNqIgIgCGpPBEAgCEUNAiAEIAIgCPwKAAAMAgtBACADayIABEAgBCACIAD8CgAACyADIAhqIQggBCADayEECyAEIAEgBSAIQQEQIwsgDSEKCyAKC+sBAQZ/Qbp/IQsCQCADKAIEIgkgAygCACIKaiINIAEgAGtLDQAgBSAEKAIAIgVrIApJBEBBbA8LIAMoAgghDCAAIAVLIAUgCmoiDiAAS3ENACAAIApqIgMgDGshASAAIAUgChAfIAQgDjYCAAJAAkAgAyAGayAMTwRAIAEhBgwBC0FsIQsgDCADIAdrSw0CIAggCCABIAZrIgBqIgEgCWpPBEAgCUUNAiADIAEgCfwKAAAMAgtBACAAayIEBEAgAyABIAT8CgAACyAAIAlqIQkgAyAAayEDCyADIAIgBiAJQQEQIwsgDSELCyALC6sCAQJ/IAJBH3EhAyABIQQDQCADQQhJRQRAIANBCGshAyAEKQAAQs/W077Sx6vZQn5CH4lCh5Wvr5i23puef34gAIVCG4lCh5Wvr5i23puef35CnaO16oOxjYr6AH0hACAEQQhqIQQMAQsLIAEgAkEYcWohASACQQdxIgNBBEkEfyABBSADQQRrIQMgATUAAEKHla+vmLbem55/fiAAhUIXiULP1tO+0ser2UJ+Qvnz3fGZ9pmrFnwhACABQQRqCyEEA0AgAwRAIANBAWshAyAEMQAAQsXP2bLx5brqJ34gAIVCC4lCh5Wvr5i23puef34hACAEQQFqIQQMAQsLIABCIYggAIVCz9bTvtLHq9lCfiIAQh2IIACFQvnz3fGZ9pmrFn4iAEIgiCAAhQvhBAIBfgJ/IAAgA2ohBwJAIANBB0wEQANAIAAgB08NAiAAIAItAAA6AAAgAEEBaiEAIAJBAWohAgwACwALIAQEQAJAIAAgAmsiBkEHTQRAIAAgAi0AADoAACAAIAItAAE6AAEgACACLQACOgACIAAgAi0AAzoAAyAAIAIgBkECdCIGQeAaaigCAGoiAigAADYABCACIAZBgBtqKAIAayECDAELIAAgAikAADcAAAsgA0EIayEDIAJBCGohAiAAQQhqIQALIAEgB08EQCAAIANqIQEgBEUgACACa0EPSnJFBEADQCAAIAIpAAA3AAAgAkEIaiECIABBCGoiACABSQ0ADAMLAAsgAikAACEFIAAgAikACDcACCAAIAU3AAAgA0ERSQ0BIABBEGohAANAIAIpABAhBSAAIAIpABg3AAggACAFNwAAIAIpACAhBSAAIAIpACg3ABggACAFNwAQIAJBIGohAiAAQSBqIgAgAUkNAAsMAQsCQCAAIAFLBEAgACEBDAELIAEgAGshBgJAIARFIAAgAmtBD0pyRQRAIAIhAwNAIAAgAykAADcAACADQQhqIQMgAEEIaiIAIAFJDQALDAELIAIpAAAhBSAAIAIpAAg3AAggACAFNwAAIAZBEUgNACAAQRBqIQAgAiEDA0AgAykAECEFIAAgAykAGDcACCAAIAU3AAAgAykAICEFIAAgAykAKDcAGCAAIAU3ABAgA0EgaiEDIABBIGoiACABSQ0ACwsgAiAGaiECCwNAIAEgB08NASABIAItAAA6AAAgAUEBaiEBIAJBAWohAgwACwALC6HFAQI2fwV+IwBBEGsiMSQAAkBBwOwFEAEiCEUEQEFAIQYMAQsgCEIANwL86gEgCEEANgKc6wEgCEEANgKQ6wEgCEEANgLU6wEgCEEANgLE6wEgCEIANwKk6wEgCEEANgK46QEgCEEANgK87AUgCEIANwK86wEgCEEANgKs6wEgCEIBNwKU6wEgCEIANwPo6wEgCEGBgIDAADYCzOsBIAhCADcC7OoBIAhCADcDsOsBIAhBADYCuOsBIAhBhOsBakEANgIAIAgQFiAIQbjqAWohNCAIQcDpAWohNiAIQZDqAWohNyAAISwCQAJAAkACQANAQQFBBSAIKALs6gEiCxshEwJAA0AgAyATSQ0BAkAgA0EESSALcg0AIAIoAABBcHFB0NS0wgFHDQBBuH8hBiADQQhJDQcgAigABCIHQXdLBEBBciEGDAgLIAMgB0EIaiIESQ0HIAdBgH9LBEAgBCEGDAgLIAMgBGshAyACIARqIQIMAQsLIAhCADcCrOkBIAhCADcD8OkBIAhBjICA4AA2AqhQIAhBADYCoOsBIAhCADcDiOoBIAhBATYClOsBIAhCAzcDgOoBIAhBtOkBakIANwIAIAhB+OkBakIANwMAIAhB9A4pAgA3AqzQASAIQbTQAWpB/A4oAgA2AgAgCCAIQRBqNgIAIAggCEGgMGo2AgQgCCAIQZggajYCCCAIIAhBqNAAajYCDCAIQQFBBSAIKALs6gEbNgK86QECQCABRQ0AICwgCCgCrOkBIgZGDQAgCCAGNgK46QEgCCAsNgKs6QEgCCgCsOkBIQQgCCAsNgKw6QEgCCAsIAQgBmtqNgK06QELQbh/IQYgA0EFQQkgCCgC7OoBIhMbSQ0FIAJBAUEFIBMbIBMQGCIEQYh/Sw0EIAMgBEEDakkNBSA2IAIgBCATEBciBkGIf0sEQCAGIQQMBQsgBg0DAkACQCAIKAKw6wFBAUcNACAIKAKs6wEiC0UNACAIKAKc6wFFDQAgCygCBCEGIDEgCCgC3OkBIgo2AgQgBkEBayIHQsnP2bLx5brqJyAxQQRqQQQQIqdxIRMgCygCACELA0AgCiALIBNBAnRqKAIAIgwEfyAMKAKo1QEFQQALIgZHBEAgByATcUEBaiETIAYNAQsLIAxFDQAgCBAWIAhBfzYCqOsBIAggDDYCnOsBIAggCCgC3OkBIhM2AqDrAQwBCyAIKALc6QEhEwsCQCATRQ0AIAgoAqDrASATRg0AQWAhBAwFCwJAIAgoAuDpAQRAIAggCCgC8OoBIgZFNgL06gEgBg0BIDdBAEHYAPwLACAIQvnq0NDnyaHk4QA3A7DqASAIQs/W077Sx6vZQjcDoOoBIAhC1uuC7ur9ifXgADcDmOoBDAELIAhBADYC9OoBCyAIIAgpA/DpASAErXw3A/DpASAIKAK46wEiEwRAIAggCCgC0OkBIgYgEyAGIBNJGzYC0OkBCyABICxqITUgAyAEayEDIAIgBGohAiAsIRMDQCACIAMgMUEEahAaIiBBiH9LBEAgICEEDAYLIANBA2siOCAgSQ0EIAJBA2oiHSA1IB0gNUkbIDUgEyAdTRshAkFsIQQCQAJAAkACQAJAAkACQAJAIDEoAgQOAwECAA0LIAIgE2shFEEAITMjAEHQAmsiBSQAAkACQCAIKAKU6wEiAgR/IAgoAtDpAQVBgIAICyAgSQ0AAkAgIEECSQ0AIB0tAAAiA0EDcSEaIAIEfyAIKALQ6QEFQYCACAshBgJAAkACQAJAAkACQAJAAkACQAJAIBpBAWsOAwMBAAILIAgoAojqAQ0AQWIhAwwLCyAgQQVJDQhBAyEMIB0oAAAhBAJ/An8CQAJAAkAgA0ECdkEDcSICQQJrDgIBAgALIARBDnZB/wdxIQ0gBEEEdkH/B3EhECACQQBHDAMLIARBEnYhDSAEQQR2Qf//AHEhEEEEDAELIB0tAARBCnQgBEEWdnIhDSAEQQR2Qf//D3EhEEEFCyEMQQELIQRBun8hAyATQQEgEBtFDQogBiAQSQ0IIBBBBkkgBHEEQEFoIQMMCwsgDCANaiIKICBLDQggBiAUIAYgFEkbIgIgEEkNCiAIIBMgFCAQIAJBABAbAkAgCCgCpOsBRSAQQYEGSXINAEEAIQMDQCADQYOAAUsNASADQUBrIQMMAAsACyAaQQNGBEAgDCAdaiEGIAgoAgwiCy0AAUEIdCECIAgoAvzrASEDIARFBEAgAgRAIAVB4AFqIAYgDRAIIg5BiH9LDQkgC0EEaiEZIAMgEGohESALLwECIQkgEEEETwRAIBFBA2shBkEAIAlrQR9xIQcgBSgC6AEhDCAFKALsASEPIAUoAvABIQQgBSgC4AEhDSAFKALkASEOA0AgDkEgSwRAQbAaIQwMCgsCQCAEIAxNBEAgDkEHcSESIA5BA3YhDUEBIQ4MAQsgDCAPRg0KIA4gDkEDdiICIAwgD2sgDCACayAPTyIOGyINQQN0ayESCyAMIA1rIgwoAAAhDSAORSADIAZPcg0IIAMgGSANIBJ0IAd2QQJ0aiICLwEAOwAAIAMgAi0AA2oiAyAZIA0gEiACLQACaiICdCAHdkECdGoiCy8BADsAACADIAstAANqIQMgAiALLQACaiEODAALAAsgBSgC5AEiDkEhTwRAIAVBsBo2AugBDAkLIAUoAugBIgYgBSgC8AFPBEAgBSAOQQdxIgI2AuQBIAUgBiAOQQN2ayIENgLoASAFIAQoAAA2AuABIAIhDgwJCyAGIAUoAuwBIgRGDQggBSAOIAYgBGsgDkEDdiICIAYgAmsgBEkbIgJBA3RrIg42AuQBIAUgBiACayICNgLoASAFIAIoAAA2AuABDAgLIAMgECAGIA0gCxARIQ4MCAsgAgRAIAMgECAGIA0gCxASIQ4MCAsgAyAQIAYgDSALEBQhDgwHCyAIQazVAWohFyAMIB1qISEgCEGo0ABqIQcgCCgC/OsBIRYgBEUEQCAHICEgDSAXEA4iDkGIf0sNByANIA5NDQMgFiAQIA4gIWogDSAOayAHEBEhDgwHCyAQRQRAQbp/IQ4MBwsgDUUEQEFsIQ4MBwsgEEEIdiIDIA0gEEkEfyANQQR0IBBuBUEPC0EEdCIEQYwIaigCAGwgBEGICGooAgBqIgJBBXYgAmogBEGACGooAgAgBEGECGooAgAgA2xqSQRAIwBBEGsiLSQAIAcoAgAhESAXQfAEaiIeQQBB8AD8CwBBVCEDAkAgEUH/AXEiL0EMSw0AIBdB4AdqIgkgHiAtQQhqIC1BDGogISANIBdB4AlqEAciBEGIf00EQCAtKAIMIgsgL0sNASAXQagFaiEZIBdBpAVqITAgB0EEaiEbIBFBgICAeHEhJCALQQFqIjIhAyALIQYDQCADIgJBAWshAyAGIgxBAWshBiAeIAxBAnRqKAIARQ0AC0EBIAIgAkEBTRshDkEAIQZBASEDA0AgAyAORwRAIB4gA0ECdCIPaigCACECIA8gGWogBjYCACADQQFqIQMgAiAGaiEGDAELCyAXIAY2AqgFIBkgDEEBaiIfQQJ0aiAGNgIAIBdB4AVqISZBACEDIC0oAgghBgNAIAMgBkcEQCAZIAMgCWotAABBAnRqIgIgAigCACICQQFqNgIAIAIgJmogAzoAACADQQFqIQMMAQsLQQAhBiAZQQA2AgBBCyAvIBFB/wFxQQxGGyAvIAtBDEkbIikgC0F/c2ohD0EBIQMDQCADIA5HBEAgHiADQQJ0IgtqKAIAIQIgCyAXaiAGNgIAIAIgAyAPanQgBmohBiADQQFqIQMMAQsLICkgMiAMayILa0EBaiEJIAshBgNAIAYgCUkEQCAXIAZBNGxqIQ9BASEDA0AgAyAORwRAIA8gA0ECdCICaiACIBdqKAIAIAZ2NgIAIANBAWohAwwBCwsgBkEBaiEGDAELCyAyIClrIRUgDEEAIAxBAEobQQFqISdBASEuA0AgJyAuRwRAIDIgLmshBiAXIC5BAnQiAmooAgAhJSACIDBqKAIAISogMCAuQQFqIi5BAnRqKAIAIRggCyApIAZrIgNNBEAgHyAGIBVqIgJBASACQQFKIhIbIgIgAiAfSBshHCAXIAZBNGxqIh4gAkECdGohGSAGIDJqIREgBkEQdEGAgIAIaiEOQQEgA3QiCUECayEPA0AgGCAqRg0DIBsgJUECdGohKCAmICpqLQAAISsgAiEDIBIEQCAOICtyrUKBgICAEH4hOiAZKAIAIQZBACEDAkACQAJAAkAgDw4DAQIAAgsgKCA6NwEICyAoIDo3AQAMAQsDQCADIAZODQEgKCADQQJ0aiIMIDo3ARggDCA6NwEQIAwgOjcBCCAMIDo3AQAgA0EIaiEDDAALAAsgAiEDCwNAIAMgHEcEQCARIANrIQwgKCAeIANBAnQiBmooAgBBAnRqICYgBiAwaigCAGogJiAwIANBAWoiA0ECdGooAgBqIAwgKSArQQIQDwwBCwsgKkEBaiEqIAkgJWohJQwACwAFIBsgJUECdGogJiAqaiAYICZqIAYgKUEAQQEQDwwCCwALCyAHIClBEHQgJHIgL3JBgAJyNgIACyAEIQMLIC1BEGokACADIg5BiH9LDQcgAyANTw0DIBYgECADICFqIA0gA2sgBxASIQ4MBwsgByAhIA0gFxAOIg5BiH9LDQYgDSAOTQ0CIBYgECAOICFqIA0gDmsgBxAUIQ4MBgtBAiEQAn8CQAJAAkAgA0ECdkEDcUEBaw4DAQACAAtBASEQIANBA3YMAgsgHS8AAEEEdgwBCyAgQQJGDQhBAyEQIB0vAAAgHS0AAkEQdHJBBHYLIQtBun8hAyATQQEgCxtFDQkgBiALSQ0HIAsgFEsNCSAIIBMgFCALIAYgFCAGIBRJG0EBEBsgICALIBBqIgpBIGpJBEAgCiAgSw0IIBAgHWohBCAIKAL86wEhAwJAIAgoAoTsAUECRgRAIAtBgIAEayICBEAgAyAEIAL8CgAACyAIQYjsAWogAiAEakGAgAT8CgAADAELIAtFDQAgAyAEIAv8CgAACyAIIAs2AojrASAIIAgoAvzrATYC+OoBDAcLIAhBADYChOwBIAggCzYCiOsBIAggECAdaiICNgL46gEgCCACIAtqNgKA7AEMBgsCfwJAAkACQCADQQJ2QQNxQQFrDgMBAAIAC0EBIRAgA0EDdgwCCyAgQQJGDQhBAiEQIB0vAABBBHYMAQsgIEEESQ0HQQMhECAdLwAAIB0tAAJBEHRyQQR2CyELQbp/IQMgE0EBIAsbRQ0IIAYgC0kNBiALIBRLDQggCCATIBQgCyAGIBQgBiAUSRtBARAbIBAgHWoiAy0AACEGIAgoAvzrASEEAkAgCCgChOwBQQJGBEAgC0GAgARrIgIEQCAEIAYgAvwLAAsgCEGI7AFqIAMtAABBgIAE/AsADAELIAtFDQAgBCAGIAv8CwALIAggCzYCiOsBIAggCCgC/OsBNgL46gEgEEEBaiEKDAULQbh/IQ4MAwsgEiEOCyAFIA42AuQBIAUgDDYC6AEgBSANNgLgAQsCQCARIANrQQJJDQAgEUECayELQQAgCWtBH3EhBgNAAkAgDkEhTwRAIAVBsBo2AugBDAELIAUCfyAFKALoASIHIAUoAvABTwRAIAUgByAOQQN2ayIMNgLoAUEBISUgDkEHcQwBCyAHIAUoAuwBIgRGDQEgBSAHIA5BA3YiAiAHIARrIAcgAmsgBE8iJRsiAmsiDDYC6AEgDiACQQN0awsiDjYC5AEgBSAMKAAAIgI2AuABICVFIAMgC0tyDQAgAyAZIAIgDnQgBnZBAnRqIgIvAQA7AAAgBSAFKALkASACLQACaiIONgLkASADIAItAANqIQMMAQsLA0AgAyALSw0BIAMgGSAFKALgASAOdCAGdkECdGoiAi8BADsAACAFIAUoAuQBIAItAAJqIg42AuQBIAMgAi0AA2ohAwwACwALAkAgAyARTw0AIAMgGSAFKALgASAOdEEAIAlrdkECdGoiAi0AADoAACACLQADQQFGBEAgBSgC5AEgAi0AAmohDgwBCyAFKALkASIOQR9LDQBBICAOIAItAAJqIgIgAkEgTxshDgtBbEFsIBAgDkEgRxsgBSgC6AEgBSgC7AFHGyEOCyAIKAKE7AFBAkYEQCAIQYjsAWogCCgCgOwBQYCABGtBgIAE/AoAACAQQYCABGsiAwRAIAgoAvzrASICQeD/A2ogAiAD/AoAAAsgCCAIKAL86wFB4P8DajYC/OsBIAggCCgCgOwBQSBrNgKA7AELIA5BiH9LDQEgCCAQNgKI6wEgCEEBNgKI6gEgCCAIKAL86wE2AvjqASAaQQJGBEAgCCAIQajQAGo2AgwLIAoiA0GIf0sNAwsgCCgClOsBBH8gCCgC0OkBBUGAgAgLIQwgCiAgRg0BICAgCmshCSAIKAK06QEhCyAdICBqIQ0gCCgCpOsBIQYCfwJAAn8gCiAdaiIRLQAAIg7AIgJBAE4EQCARQQFqDAELIAJBf0YEQCAJQQNJDQUgEUEDaiEEIBEvAAFBgP4BaiEODAILIAlBAUYNBCARLQABIA5BCHRyQYCAAmshDiARQQJqCyEEIA4NAEFsIQMgBCANRw0EQQAhDiAJDAELQbh/IQMgBEEBaiIPIA1LDQMgBC0AACIKQQNxDQEgCEEQaiAIIApBBnZBI0EJIA8gDSAPa0HADUHQDkGADyAIKAKM6gEgBiAOIAhBrNUBaiIHEBwiAkGIf0sNASAIQZggaiAIQQhqIApBBHZBA3FBH0EIIAIgD2oiBCANIARrQYAKQYALQZATIAgoAozqASAIKAKk6wEgDiAHEBwiAkGIf0sNAUFsIQMgCEGgMGogCEEEaiAKQQJ2QQNxQTRBCSACIARqIgQgDSAEa0GgC0GADUGgFSAIKAKM6gEgCCgCpOsBIA4gBxAcIgJBiH9LDQMgAiAEaiARawsiA0GIf0sNAgJAIBNBAEcgFEEAR3FFIA5BAEpxDQACQAJAIBMgFCAMIAwgFEsbIgJBACACQQBKG2ogC2siAkH8//8fTQRAIAYgAkGBgIAISXIgDkEJSHINAiAFQeABaiAIKAIIIA4QHQwBCyAFQeABaiAIKAIIIA4QHSAFKALkAUEZSyEzIAYNAQsgBSgC4AFBE0shBgsgCSADayEHIAMgEWohBCAIQQA2AqTrASAIKAKE7AEhAgJAIAYEQAJ/IAJBAUYEQCAIKAL86wEMAQsgEyAUQQAgFEEAShtqCyEUIAUgCCgC+OoBIgM2AswCIAgoAoDsASEcIA5FBEAgEyEJDAILIAgoArjpASEiIAgoArTpASEXIAgoArDpASELIAhBATYCjOoBIAhBrNABaiEyIAVB1AFqISZBACECA0AgAkEDRwRAICYgAkECdCIDaiADIDJqKAIANgIAIAJBAWohAgwBCwtBbCEDIAVBqAFqIgIgBCAHEAhBiH9LDQUgBUG8AWogAiAIKAIAEB4gBUHEAWogAiAIKAIIEB4gBUHMAWogAiAIKAIEEB5BCCAOIA5BCE4bIihBACAoQQBKGyElIA5BAWshGiATIAtrIS0gBSgCsAEhAiAFKALYASEGIAUoAtQBIRIgBSgCrAEhBCAFKAK0ASEjIAUoArgBISkgBSgCyAEhGCAFKALQASErIAUoAsABISQgBSgCqAEhCSAFKALEASEhIAUoAswBISogBSgCvAEhMCAzRSEVQQAhEANAIBIhESAQICVGBEAgBSAqNgLMASAFIDA2ArwBIAUgAjYCsAEgBSAhNgLEASAFIAk2AqgBIAhBmOwBaiEeIAhBiOwFaiEZIAhBiOwBaiEWIBRBIGshGyAzRSEnIBMhCQNAIA4gJUcEQCAFKALAASAFKAK8AUEDdGoiBi0AAiEfIAUoAtABIAUoAswBQQN0aiIELQACIRggBSgCyAEgBSgCxAFBA3RqIgItAAMhKyAELQADISQgBi0AAyEVIAIvAQAhEiAELwEAIREgBi8BACEKIAIoAgQhByAGKAIEIRAgBCgCBCEMAkAgAi0AAiINQQJPBEACQCAnIA1BGUlyRQRAIAcgBSgCqAEiDyAFKAKsASICdEEFIA1rdkEFdGohBwJAIAIgDWpBBWsiAkEhTwRAIAVBsBo2ArABDAELIAUoArABIgYgBSgCuAFPBEAgBSACQQdxIgQ2AqwBIAUgBiACQQN2ayICNgKwASAFIAIoAAAiDzYCqAEgBCECDAELIAYgBSgCtAEiBEYNACAFIAIgBiAEayACQQN2IgIgBiACayAESRsiBEEDdGsiAjYCrAEgBSAGIARrIgQ2ArABIAUgBCgAACIPNgKoAQsgBSACQQVqIgY2AqwBIAcgDyACdEEbdmohDQwBCyAFIAUoAqwBIgIgDWoiBjYCrAEgBSgCqAEgAnRBACANa3YgB2ohDSAGQSFPBEAgBUGwGjYCsAEMAQsgBSgCsAEiByAFKAK4AU8EQCAFIAZBB3EiAjYCrAEgBSAHIAZBA3ZrIgQ2ArABIAUgBCgAADYCqAEgAiEGDAELIAcgBSgCtAEiBEYNACAFIAYgByAEayAGQQN2IgIgByACayAESRsiAkEDdGsiBjYCrAEgBSAHIAJrIgI2ArABIAUgAigAADYCqAELIAUpAtQBITogBSANNgLUASAFIDo3AtgBDAELIBBFIQQgDUUEQCAmIBBBAEdBAnRqKAIAIQIgBSAmIARBAnRqKAIAIg02AtQBIAUgAjYC2AEgBSgCrAEhBgwBCyAFIAUoAqwBIgJBAWoiBjYCrAECQAJAIAQgB2ogBSgCqAEgAnRBH3ZqIgRBA0YEQCAFKALUAUEBayICQX8gAhshDQwBCyAmIARBAnRqKAIAIgJBfyACGyENIARBAUYNAQsgBSAFKALYATYC3AELIAUgBSgC1AE2AtgBIAUgDTYC1AELIBggH2ohBAJAIBhFBEAgBiECDAELIAUgBiAYaiICNgKsASAFKAKoASAGdEEAIBhrdiAMaiEMCwJAIARBFEkNACACQSFPBEAgBUGwGjYCsAEMAQsgBSgCsAEiBiAFKAK4AU8EQCAFIAJBB3EiBDYCrAEgBSAGIAJBA3ZrIgI2ArABIAUgAigAADYCqAEgBCECDAELIAYgBSgCtAEiBEYNACAFIAIgBiAEayACQQN2IgIgBiACayAESRsiBEEDdGsiAjYCrAEgBSAGIARrIgQ2ArABIAUgBCgAADYCqAELAkAgH0UEQCACIQQMAQsgBSACIB9qIgQ2AqwBIAUoAqgBIAJ0QQAgH2t2IBBqIRALAkAgBEEhTwRAQbAaIQIgBUGwGjYCsAEMAQsgBSgCsAEiAiAFKAK4AU8EQCAFIARBB3EiBjYCrAEgBSACIARBA3ZrIgI2ArABIAUgAigAADYCqAEgBiEEDAELIAIgBSgCtAEiB0YNACAFIAIgAiAHayAEQQN2IgYgAiAGayAHSRsiBmsiAjYCsAEgBSAEIAZBA3RrIgQ2AqwBIAUgAigAADYCqAELAkAgGiAlRg0AIAUgFUECdEGwGWooAgAgBSgCqAEiB0EAIAQgFWoiBGt2cSAKajYCvAEgBSAkQQJ0QbAZaigCACAHQQAgBCAkaiIEa3ZxIBFqNgLMAQJAIARBIU8EQEGwGiECIAVBsBo2ArABDAELIAUoArgBIAJNBEAgBSAEQQdxIgY2AqwBIAUgAiAEQQN2ayICNgKwASAFIAIoAAAiBzYCqAEgBiEEDAELIAIgBSgCtAEiCkYNACAFIAIgAiAKayAEQQN2IgYgAiAGayAKSRsiBmsiAjYCsAEgBSAEIAZBA3RrIgQ2AqwBIAUgAigAACIHNgKoAQsgBSAEICtqIgQ2AqwBIAUgK0ECdEGwGWooAgAgB0EAIARrdnEgEmo2AsQBIARBIU8EQCAFQbAaNgKwAQwBCyAFKAK4ASACTQRAIAUgBEEHcTYCrAEgBSACIARBA3ZrIgI2ArABIAUgAigAADYCqAEMAQsgAiAFKAK0ASIGRg0AIAUgBCACIAZrIARBA3YiBCACIARrIAZJGyIEQQN0azYCrAEgBSACIARrIgI2ArABIAUgAigAADYCqAELAkACQCAIKAKE7AFBAkYEQCAFKALMAiIHIAVB4AFqICVBB3FBDGxqIhUoAgAiAmoiCiAIKAKA7AEiBEsEQCAEIAdHBEAgBCAHayIEIBQgCWtLDQsgCSAHIAQQHyAVIAIgBGsiAjYCACAEIAlqIQkLIAUgFjYCzAIgCEEANgKE7AECQAJAAkAgAkGAgARKDQAgCSAVKAIEIhIgAmoiBmogG0sNACAGQSBqIBQgCWtNDQELIAUgFSgCCDYCgAEgBSAVKQIANwN4IAkgFCAFQfgAaiAFQcwCaiAZIAsgFyAiECAhBgwBCyACIBZqIQcgAiAJaiEEIBUoAgghESAWKQAAITogCSAWKQAINwAIIAkgOjcAAAJAIAJBEUkNACAeKQAAITogCSAeKQAINwAYIAkgOjcAECACQRBrQRFIDQAgCUEgaiECIB4hDwNAIA8pABAhOiACIA8pABg3AAggAiA6NwAAIA8pACAhOiACIA8pACg3ABggAiA6NwAQIA9BIGohDyACQSBqIgIgBEkNAAsLIAQgEWshAiAFIAc2AswCIAQgC2sgEUkEQCARIAQgF2tLDQ8gIiAiIAIgC2siCmoiByASak8EQCASRQ0CIAQgByAS/AoAAAwCC0EAIAprIgIEQCAEIAcgAvwKAAALIAogEmohEiAEIAprIQQgCyECCyARQRBPBEAgAikAACE6IAQgAikACDcACCAEIDo3AAAgEkERSA0BIAQgEmohByAEQRBqIQQDQCACKQAQITogBCACKQAYNwAIIAQgOjcAACACKQAgITogBCACKQAoNwAYIAQgOjcAECACQSBqIQIgBEEgaiIEIAdJDQALDAELAkAgEUEHTQRAIAQgAi0AADoAACAEIAItAAE6AAEgBCACLQACOgACIAQgAi0AAzoAAyAEIAIgEUECdCIHQeAaaigCAGoiAigAADYABCACIAdBgBtqKAIAayECDAELIAQgAikAADcAAAsgEkEJSQ0AIAQgEmohCiAEQQhqIgcgAkEIaiICa0EPTARAA0AgByACKQAANwAAIAJBCGohAiAHQQhqIgcgCkkNAAwCCwALIAIpAAAhOiAHIAIpAAg3AAggByA6NwAAIBJBGUgNACAEQRhqIQQDQCACKQAQITogBCACKQAYNwAIIAQgOjcAACACKQAgITogBCACKQAoNwAYIAQgOjcAECACQSBqIQIgBEEgaiIEIApJDQALCyAGQYh/SwRAIAYhAwwOCyAVIA02AgggFSAMNgIEIBUgEDYCACAZIRwMAwsgCkEgayEEAkACQCAKIBxLDQAgCSAVKAIEIhEgAmoiBmogBEsNACAGQSBqIBQgCWtNDQELIAUgFSgCCDYCkAEgBSAVKQIANwOIASAJIBQgBCAFQYgBaiAFQcwCaiAcIAsgFyAiECEhBgwCCyACIAlqIQQgFSgCCCEPIAcpAAAhOiAJIAcpAAg3AAggCSA6NwAAAkAgAkERSQ0AIAcpABAhOiAJIAcpABg3ABggCSA6NwAQIAJBEGtBEUgNACAHQRBqIQIgCUEgaiEHA0AgAikAECE6IAcgAikAGDcACCAHIDo3AAAgAikAICE6IAcgAikAKDcAGCAHIDo3ABAgAkEgaiECIAdBIGoiByAESQ0ACwsgBCAPayECIAUgCjYCzAIgBCALayAPSQRAIA8gBCAXa0sNDSAiICIgAiALayIKaiIHIBFqTwRAIBFFDQMgBCAHIBH8CgAADAMLQQAgCmsiAgRAIAQgByAC/AoAAAsgCiARaiERIAQgCmshBCALIQILIA9BEE8EQCACKQAAITogBCACKQAINwAIIAQgOjcAACARQRFIDQIgBCARaiEHIARBEGohBANAIAIpABAhOiAEIAIpABg3AAggBCA6NwAAIAIpACAhOiAEIAIpACg3ABggBCA6NwAQIAJBIGohAiAEQSBqIgQgB0kNAAsMAgsCQCAPQQdNBEAgBCACLQAAOgAAIAQgAi0AAToAASAEIAItAAI6AAIgBCACLQADOgADIAQgAiAPQQJ0IgdB4BpqKAIAaiICKAAANgAEIAIgB0GAG2ooAgBrIQIMAQsgBCACKQAANwAACyARQQlJDQEgBCARaiEKIARBCGoiByACQQhqIgJrQQ9MBEADQCAHIAIpAAA3AAAgAkEIaiECIAdBCGoiByAKSQ0ADAMLAAsgAikAACE6IAcgAikACDcACCAHIDo3AAAgEUEZSA0BIARBGGohBANAIAIpABAhOiAEIAIpABg3AAggBCA6NwAAIAIpACAhOiAEIAIpACg3ABggBCA6NwAQIAJBIGohAiAEQSBqIgQgCkkNAAsMAQsCQAJAIAUoAswCIhEgBUHgAWogJUEHcUEMbGoiDygCACICaiIHIBxLDQAgCSAPKAIEIgogAmoiBmogG0sNACAGQSBqIBQgCWtNDQELIAUgDygCCDYCoAEgBSAPKQIANwOYASAJIBQgBUGYAWogBUHMAmogHCALIBcgIhAgIQYMAQsgAiAJaiEEIA8oAgghFSARKQAAITogCSARKQAINwAIIAkgOjcAAAJAIAJBEUkNACARKQAQITogCSARKQAYNwAYIAkgOjcAECACQRBrQRFIDQAgEUEQaiECIAlBIGohEgNAIAIpABAhOiASIAIpABg3AAggEiA6NwAAIAIpACAhOiASIAIpACg3ABggEiA6NwAQIAJBIGohAiASQSBqIhIgBEkNAAsLIAQgFWshAiAFIAc2AswCIAQgC2sgFUkEQCAVIAQgF2tLDQwgIiAiIAIgC2siD2oiByAKak8EQCAKRQ0CIAQgByAK/AoAAAwCC0EAIA9rIgIEQCAEIAcgAvwKAAALIAogD2ohCiAEIA9rIQQgCyECCyAVQRBPBEAgAikAACE6IAQgAikACDcACCAEIDo3AAAgCkERSA0BIAQgCmohByAEQRBqIQQDQCACKQAQITogBCACKQAYNwAIIAQgOjcAACACKQAgITogBCACKQAoNwAYIAQgOjcAECACQSBqIQIgBEEgaiIEIAdJDQALDAELAkAgFUEHTQRAIAQgAi0AADoAACAEIAItAAE6AAEgBCACLQACOgACIAQgAi0AAzoAAyAEIAIgFUECdCIHQeAaaigCAGoiAigAADYABCACIAdBgBtqKAIAayECDAELIAQgAikAADcAAAsgCkEJSQ0AIAQgCmohDyAEQQhqIgcgAkEIaiICa0EPTARAA0AgByACKQAANwAAIAJBCGohAiAHQQhqIgcgD0kNAAwCCwALIAIpAAAhOiAHIAIpAAg3AAggByA6NwAAIApBGUgNACAEQRhqIQQDQCACKQAQITogBCACKQAYNwAIIAQgOjcAACACKQAgITogBCACKQAoNwAYIAQgOjcAECACQSBqIQIgBEEgaiIEIA9JDQALCyAGQYh/SwRAIAYhAwwLCyAFQeABaiAlQQdxQQxsaiICIA02AgggAiAMNgIEIAIgEDYCAAsgBiAJaiEJICVBAWohJSAQIC1qIAxqIS0MAQsLIAUoArABIAUoArQBRw0HIAUoAqwBQSBHDQcgDiAoayEQA0ACQCAOIBBMBEBBACECA0AgAkEDRg0CIDIgAkECdCIDaiADICZqKAIANgIAIAJBAWohAgwACwALIAVB4AFqIBBBB3FBDGxqIQoCfwJAIAgoAoTsAUECRgRAIAUoAswCIg8gCigCACIEaiIHIAgoAoDsASICSwRAIAIgD0cEQCACIA9rIgIgFCAJa0sNCyAJIA8gAhAfIAogBCACayIENgIAIAIgCWohCQsgBSAWNgLMAiAIQQA2AoTsAQJAAkACQCAEQYCABEoNACAJIAooAgQiDSAEaiIGaiAbSw0AIAZBIGogFCAJa00NAQsgBSAKKAIINgJQIAUgCikCADcDSCAJIBQgBUHIAGogBUHMAmogGSALIBcgIhAgIQYMAQsgBCAWaiEHIAQgCWohDCAKKAIIIQogFikAACE6IAkgFikACDcACCAJIDo3AAACQCAEQRFJDQAgHikAACE6IAkgHikACDcAGCAJIDo3ABAgBEEQa0ERSA0AIAlBIGohAiAeIQQDQCAEKQAQITogAiAEKQAYNwAIIAIgOjcAACAEKQAgITogAiAEKQAoNwAYIAIgOjcAECAEQSBqIQQgAkEgaiICIAxJDQALCyAMIAprIQIgBSAHNgLMAiAMIAtrIApJBEAgCiAMIBdrSw0PICIgIiACIAtrIgdqIgQgDWpPBEAgDUUNAiAMIAQgDfwKAAAMAgtBACAHayICBEAgDCAEIAL8CgAACyAHIA1qIQ0gDCAHayEMIAshAgsgCkEQTwRAIAIpAAAhOiAMIAIpAAg3AAggDCA6NwAAIA1BEUgNASAMIA1qIQcgDEEQaiEEA0AgAikAECE6IAQgAikAGDcACCAEIDo3AAAgAikAICE6IAQgAikAKDcAGCAEIDo3ABAgAkEgaiECIARBIGoiBCAHSQ0ACwwBCwJAIApBB00EQCAMIAItAAA6AAAgDCACLQABOgABIAwgAi0AAjoAAiAMIAItAAM6AAMgDCACIApBAnQiBEHgGmooAgBqIgIoAAA2AAQgAiAEQYAbaigCAGshAgwBCyAMIAIpAAA3AAALIA1BCUkNACAMIA1qIQcgDEEIaiIEIAJBCGoiAmtBD0wEQANAIAQgAikAADcAACACQQhqIQIgBEEIaiIEIAdJDQAMAgsACyACKQAAITogBCACKQAINwAIIAQgOjcAACANQRlIDQAgDEEYaiEEA0AgAikAECE6IAQgAikAGDcACCAEIDo3AAAgAikAICE6IAQgAikAKDcAGCAEIDo3ABAgAkEgaiECIARBIGoiBCAHSQ0ACwsgBkGJf08EQCAGIQMMDgsgGSEcIAYgCWoMAwsgB0EgayECAkACQCAHIBxLDQAgCSAKKAIEIhIgBGoiDGogAksNACAMQSBqIBQgCWtNDQELIAUgCigCCDYCYCAFIAopAgA3A1ggCSAUIAIgBUHYAGogBUHMAmogHCALIBcgIhAhIQwMAgsgBCAJaiEGIAooAgghCiAPKQAAITogCSAPKQAINwAIIAkgOjcAAAJAIARBEUkNACAPKQAQITogCSAPKQAYNwAYIAkgOjcAECAEQRBrQRFIDQAgD0EQaiECIAlBIGohBANAIAIpABAhOiAEIAIpABg3AAggBCA6NwAAIAIpACAhOiAEIAIpACg3ABggBCA6NwAQIAJBIGohAiAEQSBqIgQgBkkNAAsLIAYgCmshAiAFIAc2AswCIAYgC2sgCkkEQCAKIAYgF2tLDQ0gIiAiIAIgC2siB2oiBCASak8EQCASRQ0DIAYgBCAS/AoAAAwDC0EAIAdrIgIEQCAGIAQgAvwKAAALIAcgEmohEiAGIAdrIQYgCyECCyAKQRBPBEAgAikAACE6IAYgAikACDcACCAGIDo3AAAgEkERSA0CIAYgEmohByAGQRBqIQQDQCACKQAQITogBCACKQAYNwAIIAQgOjcAACACKQAgITogBCACKQAoNwAYIAQgOjcAECACQSBqIQIgBEEgaiIEIAdJDQALDAILAkAgCkEHTQRAIAYgAi0AADoAACAGIAItAAE6AAEgBiACLQACOgACIAYgAi0AAzoAAyAGIAIgCkECdCIEQeAaaigCAGoiAigAADYABCACIARBgBtqKAIAayECDAELIAYgAikAADcAAAsgEkEJSQ0BIAYgEmohByAGQQhqIgQgAkEIaiICa0EPTARAA0AgBCACKQAANwAAIAJBCGohAiAE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",ng={BYTE:1,ASCII:2,SHORT:3,LONG:4,RATIONAL:5,SBYTE:6,UNDEFINED:7,SSHORT:8,SLONG:9,SRATIONAL:10,FLOAT:11,DOUBLE:12,IFD:13,LONG8:16,SLONG8:17,IFD8:18},hg={NewSubfileType:{tag:254,type:ng.LONG,eager:!0},SubfileType:{tag:255,type:ng.SHORT,eager:!0},ImageWidth:{tag:256,type:ng.SHORT,eager:!0},ImageLength:{tag:257,type:ng.SHORT,eager:!0},BitsPerSample:{tag:258,type:ng.SHORT,isArray:!0,eager:!0},Compression:{tag:259,type:ng.SHORT,eager:!0},PhotometricInterpretation:{tag:262,type:ng.SHORT,eager:!0},Threshholding:{tag:263,type:ng.SHORT},CellWidth:{tag:264,type:ng.SHORT},CellLength:{tag:265,type:ng.SHORT},FillOrder:{tag:266,type:ng.SHORT},DocumentName:{tag:269,type:ng.ASCII},ImageDescription:{tag:270,type:ng.ASCII},Make:{tag:271,type:ng.ASCII},Model:{tag:272,type:ng.ASCII},StripOffsets:{tag:273,type:ng.SHORT,isArray:!0},Orientation:{tag:274,type:ng.SHORT},SamplesPerPixel:{tag:277,type:ng.SHORT,eager:!0},RowsPerStrip:{tag:278,type:ng.SHORT,eager:!0},StripByteCounts:{tag:279,type:ng.LONG,isArray:!0},MinSampleValue:{tag:280,type:ng.SHORT,isArray:!0},MaxSampleValue:{tag:281,type:ng.SHORT,isArray:!0},XResolution:{tag:282,type:ng.RATIONAL},YResolution:{tag:283,type:ng.RATIONAL},PlanarConfiguration:{tag:284,type:ng.SHORT,eager:!0},PageName:{tag:285,type:ng.ASCII},XPosition:{tag:286,type:ng.RATIONAL},YPosition:{tag:287,type:ng.RATIONAL},FreeOffsets:{tag:288,type:ng.LONG},FreeByteCounts:{tag:289,type:ng.LONG},GrayResponseUnit:{tag:290,type:ng.SHORT},GrayResponseCurve:{tag:291,type:ng.SHORT,isArray:!0},T4Options:{tag:292,type:ng.LONG},T6Options:{tag:293,type:ng.LONG},ResolutionUnit:{tag:296,type:ng.SHORT},PageNumber:{tag:297,type:ng.SHORT,isArray:!0},TransferFunction:{tag:301,type:ng.SHORT,isArray:!0},Software:{tag:305,type:ng.ASCII},DateTime:{tag:306,type:ng.ASCII},Artist:{tag:315,type:ng.ASCII},HostComputer:{tag:316,type:ng.ASCII},Predictor:{tag:317,type:ng.SHORT},WhitePoint:{tag:318,type:ng.RATIONAL,isArray:!0},PrimaryChromaticities:{tag:319,type:ng.RATIONAL,isArray:!0},ColorMap:{tag:320,type:ng.SHORT,isArray:!0},HalftoneHints:{tag:321,type:ng.SHORT,isArray:!0},TileWidth:{tag:322,type:ng.SHORT,eager:!0},TileLength:{tag:323,type:ng.SHORT,eager:!0},TileOffsets:{tag:324,type:ng.LONG,isArray:!0},TileByteCounts:{tag:325,type:ng.SHORT,isArray:!0},InkSet:{tag:332,type:ng.SHORT},InkNames:{tag:333,type:ng.ASCII},NumberOfInks:{tag:334,type:ng.SHORT},DotRange:{tag:336,type:ng.BYTE,isArray:!0},TargetPrinter:{tag:337,type:ng.ASCII},ExtraSamples:{tag:338,type:ng.BYTE,isArray:!0,eager:!0},SampleFormat:{tag:339,type:ng.SHORT,isArray:!0,eager:!0},SMinSampleValue:{tag:340,isArray:!0},SMaxSampleValue:{tag:341,isArray:!0},TransferRange:{tag:342,type:ng.SHORT,isArray:!0},JPEGProc:{tag:512,type:ng.SHORT},JPEGInterchangeFormat:{tag:513,type:ng.LONG},JPEGInterchangeFormatLngth:{tag:514,type:ng.LONG},JPEGRestartInterval:{tag:515,type:ng.SHORT},JPEGLosslessPredictors:{tag:517,type:ng.SHORT,isArray:!0},JPEGPointTransforms:{tag:518,type:ng.SHORT,isArray:!0},JPEGQTables:{tag:519,type:ng.LONG,isArray:!0},JPEGDCTables:{tag:520,type:ng.LONG,isArray:!0},JPEGACTables:{tag:521,type:ng.LONG,isArray:!0},YCbCrCoefficients:{tag:529,type:ng.RATIONAL,isArray:!0},YCbCrSubSampling:{tag:530,type:ng.SHORT,isArray:!0},YCbCrPositioning:{tag:531,type:ng.SHORT},ReferenceBlackWhite:{tag:532,type:ng.LONG,isArray:!0},Copyright:{tag:33432,type:ng.ASCII},BadFaxLines:{tag:326},CleanFaxData:{tag:327},ClipPath:{tag:343},ConsecutiveBadFaxLines:{tag:328},Decode:{tag:433},DefaultImageColor:{tag:434},Indexed:{tag:346},JPEGTables:{tag:347,isArray:!0,eager:!0},StripRowCounts:{tag:559,isArray:!0},SubIFDs:{tag:330,isArray:!0},XClipPathUnits:{tag:344},YClipPathUnits:{tag:345},ApertureValue:{tag:37378},ColorSpace:{tag:40961},DateTimeDigitized:{tag:36868},DateTimeOriginal:{tag:36867},ExifIFD:{tag:34665,name:"Exif IFD",type:ng.LONG},ExifVersion:{tag:36864},ExposureTime:{tag:33434},FileSource:{tag:41728},Flash:{tag:37385},FlashpixVersion:{tag:40960},FNumber:{tag:33437},ImageUniqueID:{tag:42016},LightSource:{tag:37384},MakerNote:{tag:37500},ShutterSpeedValue:{tag:37377},UserComment:{tag:37510},IPTC:{tag:33723},CZ_LSMINFO:{tag:34412},ICCProfile:{tag:34675,name:"ICC Profile"},XMP:{tag:700},GDAL_METADATA:{tag:42112},GDAL_NODATA:{tag:42113,type:ng.ASCII,eager:!0},Photoshop:{tag:34377},ModelPixelScale:{tag:33550,type:ng.DOUBLE,isArray:!0,eager:!0},ModelTiepoint:{tag:33922,type:ng.DOUBLE,isArray:!0,eager:!0},ModelTransformation:{tag:34264,type:ng.DOUBLE,isArray:!0,eager:!0},GeoKeyDirectory:{tag:34735,type:ng.SHORT,isArray:!0,eager:!0},GeoDoubleParams:{tag:34736,type:ng.DOUBLE,isArray:!0,eager:!0},GeoAsciiParams:{tag:34737,type:ng.ASCII,eager:!0},LercParameters:{tag:50674,eager:!0}},wg={},yg={};function Gg(A,I,g,B=!1,C=!1){wg[I]=A,yg[A]={tag:A,name:I,type:"string"==typeof g?ng[g]:g,isArray:B,eager:C}}for(const[A,I]of Object.entries(hg)){const g=I;Gg(g.tag,g.name||A,g.type,g.isArray,g.eager)}const Sg=1,cg=0,Ng=1,dg=2,lg={1024:"GTModelTypeGeoKey",1025:"GTRasterTypeGeoKey",1026:"GTCitationGeoKey",2048:"GeographicTypeGeoKey",2049:"GeogCitationGeoKey",2050:"GeogGeodeticDatumGeoKey",2051:"GeogPrimeMeridianGeoKey",2052:"GeogLinearUnitsGeoKey",2053:"GeogLinearUnitSizeGeoKey",2054:"GeogAngularUnitsGeoKey",2055:"GeogAngularUnitSizeGeoKey",2056:"GeogEllipsoidGeoKey",2057:"GeogSemiMajorAxisGeoKey",2058:"GeogSemiMinorAxisGeoKey",2059:"GeogInvFlatteningGeoKey",2060:"GeogAzimuthUnitsGeoKey",2061:"GeogPrimeMeridianLongGeoKey",2062:"GeogTOWGS84GeoKey",3072:"ProjectedCSTypeGeoKey",3073:"PCSCitationGeoKey",3074:"ProjectionGeoKey",3075:"ProjCoordTransGeoKey",3076:"ProjLinearUnitsGeoKey",3077:"ProjLinearUnitSizeGeoKey",3078:"ProjStdParallel1GeoKey",3079:"ProjStdParallel2GeoKey",3080:"ProjNatOriginLongGeoKey",3081:"ProjNatOriginLatGeoKey",3082:"ProjFalseEastingGeoKey",3083:"ProjFalseNorthingGeoKey",3084:"ProjFalseOriginLongGeoKey",3085:"ProjFalseOriginLatGeoKey",3086:"ProjFalseOriginEastingGeoKey",3087:"ProjFalseOriginNorthingGeoKey",3088:"ProjCenterLongGeoKey",3089:"ProjCenterLatGeoKey",3090:"ProjCenterEastingGeoKey",3091:"ProjCenterNorthingGeoKey",3092:"ProjScaleAtNatOriginGeoKey",3093:"ProjScaleAtCenterGeoKey",3094:"ProjAzimuthAngleGeoKey",3095:"ProjStraightVertPoleLongGeoKey",3096:"ProjRectifiedGridAngleGeoKey",4096:"VerticalCSTypeGeoKey",4097:"VerticalCitationGeoKey",4098:"VerticalDatumGeoKey",4099:"VerticalUnitsGeoKey"},kg={};for(const[A,I]of Object.entries(lg))kg[I]=parseInt(A,10);const Fg=new class{init(){return og||(og="undefined"!=typeof fetch?fetch(`data:application/wasm;base64,${Dg}`).then((A=>A.arrayBuffer())).then((A=>WebAssembly.instantiate(A,rg))).then(this._init):WebAssembly.instantiate(Buffer.from(Dg,"base64"),rg).then(this._init),og)}_init(A){ag=A.instance,rg.env.emscripten_notify_memory_growth(0)}decode(A,I=0){if(!ag)throw new Error("ZSTDDecoder: Await .init() before decoding.");const g=A.byteLength,B=ag.exports.malloc(g);sg.set(A,B),I=I||Number(ag.exports.ZSTD_findDecompressedSize(B,g));const C=ag.exports.malloc(I),Q=ag.exports.ZSTD_decompress(C,I,B,g),E=sg.slice(C,C+Q);return ag.exports.free(B),ag.exports.free(C),E}};var Rg=Object.freeze({__proto__:null,zstd:Fg,default:class extends i{decodeBlock(A){const I=this.parameters.LercParameters?.[Sg];let g=A;switch(I){case cg:break;case Ng:g=Cg(new Uint8Array(g)).buffer;break;case dg:g=Fg.decode(new Uint8Array(g)).buffer;break;default:throw new Error(`Unsupported LERC additional compression method identifier: ${I}`)}return tg.decode(g,{returnPixelInterleavedDims:1===this.parameters.planarConfiguration}).pixels[0].buffer}}});let Lg,Ug,fg,Yg;const Kg={env:{emscripten_notify_memory_growth:A=>{fg=new Uint8Array(Ug.exports.memory.buffer),Yg=new DataView(fg.buffer)}}};const ug="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QQhyIQBBACEDA0AgACADTQ0DIANBQGshAwwACwALQWwhCiAOIA5B/ABqIA5B+ABqIAUgBhAGIgJBiH9LDQEgDigCeCIDIARLDQEgACAOIA4oAnwgByAIIAMgDRAlIAEgADYCACACIQoMAQtBbCEKCyAOQYABaiQAIAoLcAEEfyAAQgA3AgAgAgRAIAFBCmohBiABKAIEIQRBACECQQAhAQNAIAEgBHZFBEAgAiAGIAFBA3RqLQAAIgUgAiAFSxshAiABQQFqIQEgAyAFQRZLaiEDDAELCyAAIAI2AgQgACADQQggBGt0NgIACwuuAQEEfyABIAIoAgQiAyABKAIEaiIENgIEIAAgA0ECdEGwGWooAgAgASgCAEEAIARrdnE2AgACQCAEQSFPBEAgAUGwGjYCCAwBCyABKAIIIgMgASgCEE8EQCABEAwMAQsgAyABKAIMIgVGDQAgASADIAMgBWsgBEEDdiIGIAMgBmsgBUkbIgNrIgU2AgggASAEIANBA3RrNgIEIAEgBSgAADYCAAsgACACQQhqNgIEC40CAgN/AX4gACACaiEEAkACQCACQQhOBEAgACABayICQXlIDQELA0AgACAETw0CIAAgAS0AADoAACAAQQFqIQAgAUEBaiEBDAALAAsCQAJAIAJBb0sNACAAIARBIGsiAksNACABKQAAIQYgACABKQAINwAIIAAgBjcAACACIABrIgVBEU4EQCAAQRBqIQAgASEDA0AgAykAECEGIAAgAykAGDcACCAAIAY3AAAgAykAICEGIAAgAykAKDcAGCAAIAY3ABAgA0EgaiEDIABBIGoiACACSQ0ACwsgASAFaiEBDAELIAAhAgsDQCACIARPDQEgAiABLQAAOgAAIAJBAWohAiABQQFqIQEMAAsACwvfAQEGf0G6fyEKAkAgAigCBCIIIAIoAgAiCWoiDSABIABrSw0AQWwhCiAJIAQgAygCACILa0sNACAAIAlqIgQgAigCCCIMayECIAAgAUEgayIBIAsgCUEAEDMgAyAJIAtqNgIAAkACQCAEIAVrIAxPBEAgAiEFDAELIAwgBCAGa0sNAiAHIAcgAiAFayIDaiICIAhqTwRAIAhFDQIgBCACIAj8CgAADAILQQAgA2siAARAIAQgAiAA/AoAAAsgAyAIaiEIIAQgA2shBAsgBCABIAUgCEEBEDML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",Mg=new class{init(){return Lg||(Lg="undefined"!=typeof fetch?fetch(`data:application/wasm;base64,${ug}`).then((A=>A.arrayBuffer())).then((A=>WebAssembly.instantiate(A,Kg))).then(this._init):WebAssembly.instantiate(Buffer.from(ug,"base64"),Kg).then(this._init),Lg)}_init(A){Ug=A.instance,Kg.env.emscripten_notify_memory_growth(0)}decode(A,I=0){if(!Ug)throw new Error("ZSTDDecoder: Await .init() before decoding.");const g=A.byteLength,B=Ug.exports.malloc(g);if(fg.set(A,B),0===I&&(I=Number(Ug.exports.ZSTD_findDecompressedSize(B,g))),-1===I){Ug.exports.free(B);const I=[];for(const g of this.decodeStreaming([A]))I.push(g);if(1===I.length)return I[0];const g=I.reduce(((A,I)=>A+I.byteLength),0),C=new Uint8Array(g);let Q=0;for(const A of I)C.set(A,Q),Q+=A.byteLength;return C}const C=Ug.exports.malloc(I),Q=Ug.exports.ZSTD_decompress(C,I,B,g),E=fg.slice(C,C+Q);return Ug.exports.free(B),Ug.exports.free(C),E}*decodeStreaming(A){if(!Ug)throw new Error("ZSTDDecoder: Await .init() before decoding.");const I=Ug.exports.ZSTD_DStreamInSize(),g=Ug.exports.malloc(I),B=Ug.exports.ZSTD_DStreamOutSize(),C=Ug.exports.malloc(B),Q=Ug.exports.ZSTD_createDCtx(),E=Ug.exports.malloc(12),i=Ug.exports.malloc(12);let e=0;for(const I of A){const A=Ug.exports.malloc(I.byteLength);for(fg.set(I,A),Yg.setInt32(E,A,!0),Yg.setInt32(E+4,I.byteLength,!0),Yg.setInt32(E+4+4,0,!0);Yg.getUint32(E+4+4,!0)<Yg.getUint32(E+4,!0);){Yg.setInt32(i,C,!0),Yg.setInt32(i+4,B,!0),Yg.setInt32(i+4+4,0,!0),e=Ug.exports.ZSTD_decompressStream(Q,i,E);const A=Yg.getUint32(i+4+4,!0);yield fg.slice(C,C+A)}Ug.exports.free(A)}if(Ug.exports.ZSTD_freeDCtx(Q),Ug.exports.free(g),Ug.exports.free(C),Ug.exports.free(E),Ug.exports.free(i),0!==e)throw new Error("Incomplete stream, more data expected.")}};var Jg=Object.freeze({__proto__:null,zstd:Mg,default:class extends i{decodeBlock(A){return Mg.decode(new Uint8Array(A)).buffer}}});var Hg=Object.freeze({__proto__:null,default:class extends i{constructor(A){if(super(A),"undefined"==typeof createImageBitmap)throw new Error("Cannot decode WebImage as `createImageBitmap` is not available");if("undefined"==typeof document&&"undefined"==typeof OffscreenCanvas)throw new Error("Cannot decode WebImage as neither `document` nor `OffscreenCanvas` is not available")}async decodeBlock(A){const I=new Blob([A]),g=await createImageBitmap(I);let B;"undefined"!=typeof document?(B=document.createElement("canvas"),B.width=g.width,B.height=g.height):B=new OffscreenCanvas(g.width,g.height);const C=B.getContext("2d");C.drawImage(g,0,0);const Q=C.getImageData(0,0,g.width,g.height).data,E=this.parameters.samplesPerPixel||4;if(4===E)return Q.buffer;if(3===E){const A=new Uint8ClampedArray(g.width*g.height*3);for(let I=0,g=0;I<A.length;I+=3,g+=4)A[I]=Q[g],A[I+1]=Q[g+1],A[I+2]=Q[g+2];return A.buffer}throw new Error(`Unsupported SamplesPerPixel value: ${E}`)}}});';return new yr(typeof Buffer<"u"?"data:application/javascript;base64,"+Buffer.from(I,"binary").toString("base64"):URL.createObjectURL(new Blob([I],{type:"application/javascript"})))}const pr=typeof navigator<"u"&&navigator.hardwareConcurrency||2;class Gr{constructor(A){this.worker=A,this.worker.addEventListener("message",g=>this._onWorkerMessage(g)),this.jobIdCounter=0,this.jobs=new Map}newJobId(){return this.jobIdCounter++}getJobCount(){return this.jobs.size}_onWorkerMessage(A){const{jobId:g,error:e,...t}=A.data,i=this.jobs.get(g);this.jobs.delete(g),e?i.reject(new Error(e)):i.resolve(t)}submitJob(A,g){const e=this.newJobId();let t,i;const r=new Promise((o,E)=>{t=o,i=E});return this.jobs.set(e,{resolve:t,reject:i}),g?this.worker.postMessage({...A,jobId:e},g):this.worker.postMessage({...A,jobId:e}),r}terminate(){this.worker.terminate()}}const Lr=new FinalizationRegistry(I=>{I.terminate()});class Nr{constructor(A=pr,g=Sr){this.workerWrappers=null,A&&(this.workerWrappers=(async()=>{const e=[];for(let t=0;t<A;t++){const i=g(),r=new Gr(i);e.push(r),Lr.register(r,i,r)}return e})())}bindParameters(A,g){return{decode:async e=>{if(Qr(A)&&this.workerWrappers){const t=(await this.workerWrappers).reduce((r,o)=>r.getJobCount()<o.getJobCount()?r:o),{decoded:i}=await t.submitJob({compression:A,decoderParameters:g,buffer:e},[e]);return i}else return(await De(A,g)).decode(e)}}}async destroy(){this.workerWrappers&&((await this.workerWrappers).forEach(A=>{A.terminate()}),this.workerWrappers=null)}}const xi=`\r
33
- \r
34
- `;function vi(I){if(typeof Object.fromEntries<"u")return Object.fromEntries(I);const A={};for(const[g,e]of I)A[g.toLowerCase()]=e;return A}function kr(I){const A=I.split(`\r
35
- `).map(g=>{const e=g.split(":").map(t=>t.trim());return e[0]=e[0].toLowerCase(),e});return vi(A)}function Fr(I){if(!I)return{type:null,params:{}};const[A,...g]=I.split(";").map(t=>t.trim()),e=g.map(t=>t.split("="));return{type:A,params:vi(e)}}function Se(I){let A=NaN,g=NaN,e=NaN;return I&&([,A,g,e]=(I.match(/bytes (\d+)-(\d+)\/(\d+)/)||[]).map(Number)),{start:A,end:g,total:e}}function mr(I,A){let g=-1;const e=new TextDecoder("ascii"),t=[],i=`--${A}`,r=`${i}--`;for(let o=0;o<10;++o)e.decode(new Uint8Array(I,o,i.length))===i&&(g=o);if(g===-1)throw new Error("Could not find initial boundary");for(;g<I.byteLength;){const o=e.decode(new Uint8Array(I,g,Math.min(i.length+1024,I.byteLength-g)));if(o.length===0||o.startsWith(r))break;if(!o.startsWith(i))throw new Error("Part does not start with boundary");const E=o.substr(i.length+2);if(E.length===0)break;const B=E.indexOf(xi),C=kr(E.substr(0,B)),{start:s,end:a,total:Q}=Se(C["content-range"]),n=g+i.length+B+xi.length,f=a+1-s;t.push({headers:C,data:I.slice(n,n+f),offset:s,length:f,fileSize:Q}),g=n+f+4}return t}class bg{async fetch(A,g){return Promise.all(A.map(async e=>(await this.fetchSlice(e,g)).data))}async fetchSlice(A,g){throw new Error(`fetching of slice ${A} not possible, not implemented`)}get fileSize(){return null}async close(){}}class Rr extends Map{constructor(A={}){if(super(),!(A.maxSize&&A.maxSize>0))throw new TypeError("`maxSize` must be a number greater than 0");if(typeof A.maxAge=="number"&&A.maxAge===0)throw new TypeError("`maxAge` must be a number greater than 0");this.maxSize=A.maxSize,this.maxAge=A.maxAge||Number.POSITIVE_INFINITY,this.onEviction=A.onEviction,this.cache=new Map,this.oldCache=new Map,this._size=0}_emitEvictions(A){if(typeof this.onEviction=="function")for(const[g,e]of A)this.onEviction(g,e.value)}_deleteIfExpired(A,g){return typeof g.expiry=="number"&&g.expiry<=Date.now()?(typeof this.onEviction=="function"&&this.onEviction(A,g.value),this.delete(A)):!1}_getOrDeleteIfExpired(A,g){if(this._deleteIfExpired(A,g)===!1)return g.value}_getItemValue(A,g){return g.expiry?this._getOrDeleteIfExpired(A,g):g.value}_peek(A,g){const e=g.get(A);return this._getItemValue(A,e)}_set(A,g){this.cache.set(A,g),this._size++,this._size>=this.maxSize&&(this._size=0,this._emitEvictions(this.oldCache),this.oldCache=this.cache,this.cache=new Map)}_moveToRecent(A,g){this.oldCache.delete(A),this._set(A,g)}*_entriesAscending(){for(const A of this.oldCache){const[g,e]=A;this.cache.has(g)||this._deleteIfExpired(g,e)===!1&&(yield A)}for(const A of this.cache){const[g,e]=A;this._deleteIfExpired(g,e)===!1&&(yield A)}}get(A){if(this.cache.has(A)){const g=this.cache.get(A);return this._getItemValue(A,g)}if(this.oldCache.has(A)){const g=this.oldCache.get(A);if(this._deleteIfExpired(A,g)===!1)return this._moveToRecent(A,g),g.value}}set(A,g,{maxAge:e=this.maxAge}={}){const t=typeof e=="number"&&e!==Number.POSITIVE_INFINITY?Date.now()+e:void 0;return this.cache.has(A)?this.cache.set(A,{value:g,expiry:t}):this._set(A,{value:g,expiry:t}),this}has(A){return this.cache.has(A)?!this._deleteIfExpired(A,this.cache.get(A)):this.oldCache.has(A)?!this._deleteIfExpired(A,this.oldCache.get(A)):!1}peek(A){if(this.cache.has(A))return this._peek(A,this.cache);if(this.oldCache.has(A))return this._peek(A,this.oldCache)}delete(A){const g=this.cache.delete(A);return g&&this._size--,this.oldCache.delete(A)||g}clear(){this.cache.clear(),this.oldCache.clear(),this._size=0}resize(A){if(!(A&&A>0))throw new TypeError("`maxSize` must be a number greater than 0");const g=[...this._entriesAscending()],e=g.length-A;e<0?(this.cache=new Map(g),this.oldCache=new Map,this._size=g.length):(e>0&&this._emitEvictions(g.slice(0,e)),this.oldCache=new Map(g.slice(e)),this.cache=new Map,this._size=0),this.maxSize=A}*keys(){for(const[A]of this)yield A}*values(){for(const[,A]of this)yield A}*[Symbol.iterator](){for(const A of this.cache){const[g,e]=A;this._deleteIfExpired(g,e)===!1&&(yield[g,e.value])}for(const A of this.oldCache){const[g,e]=A;this.cache.has(g)||this._deleteIfExpired(g,e)===!1&&(yield[g,e.value])}}*entriesDescending(){let A=[...this.cache];for(let g=A.length-1;g>=0;--g){const e=A[g],[t,i]=e;this._deleteIfExpired(t,i)===!1&&(yield[t,i.value])}A=[...this.oldCache];for(let g=A.length-1;g>=0;--g){const e=A[g],[t,i]=e;this.cache.has(t)||this._deleteIfExpired(t,i)===!1&&(yield[t,i.value])}}*entriesAscending(){for(const[A,g]of this._entriesAscending())yield[A,g.value]}get size(){if(!this._size)return this.oldCache.size;let A=0;for(const g of this.oldCache.keys())this.cache.has(g)||A++;return Math.min(this._size+A,this.maxSize)}entries(){return this.entriesAscending()}forEach(A,g=this){for(const[e,t]of this.entriesAscending())A.call(g,t,e,this)}get[Symbol.toStringTag](){return JSON.stringify([...this.entriesAscending()])}}function Ji(I,A){for(const g in A)A.hasOwnProperty(g)&&(I[g]=A[g]);return I}function qi(I,A){return I.length<A.length?!1:I.substr(I.length-A.length)===A}function Ur(I,A){const{length:g}=I;for(let e=0;e<g;e++)A(I[e],e)}function Mr(I){const A={};for(const g in I)if(I.hasOwnProperty(g)){const e=I[g];A[e]=g}return A}function LA(I,A){const g=[];for(let e=0;e<I;e++)g.push(A(e));return g}async function Yr(I){return new Promise(A=>setTimeout(A,I))}function br(I,A){const g=Array.isArray(I)?I:Array.from(I),e=Array.isArray(A)?A:Array.from(A);return g.map((t,i)=>[t,e[i]])}class Ag extends Error{constructor(...A){super(...A),Error.captureStackTrace&&Error.captureStackTrace(this,Ag),this.name="AbortError",this.signal=void 0}}class Hr extends Error{constructor(A,g){super(g),this.errors=A,this.message=g,this.name="AggregateError"}}const Kr=Hr;function xr(I){if(ArrayBuffer.isView(I)){const A=I.constructor;if(A===Float32Array||A===Float64Array)return!0}return!1}function vr(I){if(ArrayBuffer.isView(I)){const A=I.constructor;if(A===Int8Array||A===Int16Array||A===Int32Array)return!0}return!1}function Jr(I){if(ArrayBuffer.isView(I)){const A=I.constructor;if(A===Uint8Array||A===Uint16Array||A===Uint32Array||A===Uint8ClampedArray)return!0}return!1}const qr={Float64Array,Float32Array,Uint32Array,Uint16Array,Uint8Array};class Tr{constructor(A,g,e){this.offset=A,this.length=g,this.data=e}get top(){return this.offset+this.length}}class Ti{constructor(A,g,e){this.offset=A,this.length=g,this.blockIds=e}}class Or extends bg{constructor(A,{blockSize:g=65536,cacheSize:e=100}={}){super(),this.source=A,this.blockSize=g,this.blockCache=new Rr({maxSize:e,onEviction:(t,i)=>{this.evictedBlocks.set(t,i)}}),this.evictedBlocks=new Map,this.blockRequests=new Map,this.blockIdsToFetch=new Set,this.abortedBlockIds=new Set}get fileSize(){return this.source.fileSize}async fetch(A,g){const e=[],t=[],i=[];this.evictedBlocks.clear();for(const{offset:a,length:Q}of A){let n=a+Q;const{fileSize:f}=this;f!==null&&(n=Math.min(n,f));const c=Math.floor(a/this.blockSize)*this.blockSize;for(let h=c;h<n;h+=this.blockSize){const w=Math.floor(h/this.blockSize);!this.blockCache.has(w)&&!this.blockRequests.has(w)&&(this.blockIdsToFetch.add(w),t.push(w)),this.blockRequests.has(w)&&e.push(this.blockRequests.get(w)),i.push(w)}}await Yr(),this.fetchBlocks(g);const r=[];for(const a of t)this.blockRequests.has(a)&&r.push(this.blockRequests.get(a));await Promise.allSettled(e),await Promise.allSettled(r);const o=[],E=i.filter(a=>this.abortedBlockIds.has(a)||!this.blockCache.has(a));if(E.forEach(a=>this.blockIdsToFetch.add(a)),E.length>0&&g&&!g.aborted){this.fetchBlocks();for(const a of E){const Q=this.blockRequests.get(a);if(!Q)throw new Error(`Block ${a} is not in the block requests`);o.push(Q)}await Promise.allSettled(o)}if(g&&g.aborted)throw new Ag("Request was aborted");const B=i.map(a=>this.blockCache.get(a)||this.evictedBlocks.get(a)),C=B.filter(a=>!a);if(C.length)throw new Kr(C,"Request failed");const s=new Map(br(i,B));return this.readSliceData(A,s)}fetchBlocks(A){if(this.blockIdsToFetch.size>0){const g=this.groupBlocks(this.blockIdsToFetch),e=g.map(async t=>({...t,...await this.source.fetchSlice(t,A)}));for(let t=0;t<g.length;++t){const i=g[t];for(const r of i.blockIds)this.blockRequests.set(r,(async()=>{try{const o=(await Promise.all(e))[t],E=r*this.blockSize,B=E-o.offset,C=Math.min(B+this.blockSize,o.data.byteLength),s=o.data.slice(B,C),a=new Tr(E,s.byteLength,s);this.blockCache.set(r,a),this.abortedBlockIds.delete(r)}catch(o){if(o instanceof Ag&&o.name==="AbortError")o.signal=A,this.blockCache.delete(r),this.abortedBlockIds.add(r);else throw o}finally{this.blockRequests.delete(r)}})())}this.blockIdsToFetch.clear()}}groupBlocks(A){const g=Array.from(A).sort((r,o)=>r-o);if(g.length===0)return[];let e=[],t=null;const i=[];for(const r of g)t===null||t+1===r?(e.push(r),t=r):(i.push(new Ti(e[0]*this.blockSize,e.length*this.blockSize,e)),e=[r],t=r);return i.push(new Ti(e[0]*this.blockSize,e.length*this.blockSize,e)),i}readSliceData(A,g){return A.map(e=>{let t=e.offset+e.length;this.fileSize!==null&&(t=Math.min(this.fileSize,t));const i=Math.floor(e.offset/this.blockSize),r=Math.floor((t-1)/this.blockSize),o=new ArrayBuffer(e.length),E=new Uint8Array(o);for(let B=i;B<=r;++B){const C=g.get(B);if(!C)continue;const s=C.offset-e.offset,a=C.top-t;let Q=0,n=0,f;s<0?Q=-s:s>0&&(n=s),a<0?f=C.length-Q:f=t-C.offset-Q;const c=new Uint8Array(C.data,Q,f);E.set(c,n)}return o})}}class oI{get ok(){return this.status>=200&&this.status<=299}get status(){throw new Error("not implemented")}getHeader(A){throw new Error("not implemented")}async getData(){throw new Error("not implemented")}}class rI{constructor(A){this.url=A}async request(A){throw new Error("request is not implemented")}}class Vr extends oI{constructor(A){super(),this.response=A}get status(){return this.response.status}getHeader(A){return this.response.headers.get(A)||void 0}async getData(){return this.response.arrayBuffer?await this.response.arrayBuffer():(await this.response.buffer()).buffer}}class jr extends rI{constructor(A,g){super(A),this.credentials=g}async request({headers:A,signal:g}={}){const e=await fetch(this.url,{headers:A,credentials:this.credentials,signal:g});return new Vr(e)}}class Zr extends oI{constructor(A,g){super(),this.xhr=A,this.data=g}get status(){return this.xhr.status}getHeader(A){return this.xhr.getResponseHeader(A)||void 0}async getData(){return this.data}}class _r extends rI{constructRequest(A,g){return new Promise((e,t)=>{const i=new XMLHttpRequest;i.open("GET",this.url),i.responseType="arraybuffer";for(const[r,o]of Object.entries(A))i.setRequestHeader(r,o);i.onload=()=>{const r=i.response;e(new Zr(i,r))},i.onerror=t,i.onabort=()=>t(new Ag("Request aborted")),i.send(),g&&(g.aborted&&i.abort(),g.addEventListener("abort",()=>i.abort()))})}async request({headers:A={},signal:g=void 0}={}){return await this.constructRequest(A,g)}}const fg={};class Pr extends oI{constructor(A,g){super(),this.response=A,this.dataPromise=g}get status(){return this.response.statusCode}getHeader(A){const g=this.response.headers[A];return Array.isArray(g)?g.join(", "):g}async getData(){return await this.dataPromise}}class zr extends rI{constructor(A){super(A),this.parsedUrl=fg.parse(this.url),this.httpApi=(this.parsedUrl.protocol==="http:",fg)}constructRequest(A,g){return new Promise((e,t)=>{const i=this.httpApi.get({...this.parsedUrl,headers:A},r=>{const o=new Promise(E=>{const B=[];r.on("data",C=>{B.push(C)}),r.on("end",()=>{const C=Buffer.concat(B).buffer;E(C)}),r.on("error",t)});e(new Pr(r,o))});i.on("error",t),g&&(g.aborted&&i.destroy(new Ag("Request aborted")),g.addEventListener("abort",()=>i.destroy(new Ag("Request aborted"))))})}async request({headers:A={},signal:g=void 0}={}){return await this.constructRequest(A,g)}}class sI extends bg{constructor(A,{headers:g,maxRanges:e=0,allowFullFile:t}={}){super(),this.client=A,this.headers=g,this.maxRanges=e,this.allowFullFile=t,this._fileSize=null}async fetch(A,g){return this.maxRanges>=A.length?this.fetchSlices(A,g).then(e=>e.map(t=>t.data)):(this.maxRanges>0&&A.length>1,Promise.all(A.map(async e=>(await this.fetchSlice(e,g)).data)))}async fetchSlices(A,g){const e=await this.client.request({headers:{...this.headers,Range:`bytes=${A.map(({offset:t,length:i})=>`${t}-${t+i-1}`).join(",")}`},signal:g});if(e.ok)if(e.status===206){const{type:t,params:i}=Fr(e.getHeader("content-type"));if(t==="multipart/byteranges"){const s=mr(await e.getData(),i.boundary);return this._fileSize=s[0].fileSize||null,s}const r=await e.getData(),{start:o,end:E,total:B}=Se(e.getHeader("content-range"));this._fileSize=B||null;const C=[{data:r,offset:o,length:E+1-o}];if(A.length>1){const s=await Promise.all(A.slice(1).map(a=>this.fetchSlice(a,g)));return C.concat(s)}return C}else{if(!this.allowFullFile)throw new Error("Server responded with full file");const t=await e.getData();return this._fileSize=t.byteLength,[{data:t,offset:0,length:t.byteLength}]}else throw new Error("Error fetching data.")}async fetchSlice(A,g){const{offset:e,length:t}=A,i=await this.client.request({headers:{...this.headers,Range:`bytes=${e}-${e+t-1}`},signal:g});if(i.ok)if(i.status===206){const r=await i.getData(),{total:o}=Se(i.getHeader("content-range"));return this._fileSize=o||null,{data:r,offset:e,length:t}}else{if(!this.allowFullFile)throw new Error("Server responded with full file");const r=await i.getData();return this._fileSize=r.byteLength,{data:r,offset:0,length:r.byteLength}}else throw new Error("Error fetching data.")}get fileSize(){return this._fileSize}}function QI(I,{blockSize:A,cacheSize:g}){return A===void 0?I:new Or(I,{blockSize:A,cacheSize:g})}function Wr(I,{headers:A={},credentials:g,maxRanges:e=0,allowFullFile:t=!1,...i}={}){const r=new jr(I,g),o=new sI(r,{headers:A,maxRanges:e,allowFullFile:t});return QI(o,i)}function Xr(I,{headers:A={},maxRanges:g=0,allowFullFile:e=!1,...t}={}){const i=new _r(I),r=new sI(i,{headers:A,maxRanges:g,allowFullFile:e});return QI(r,t)}function $r(I,{headers:A={},maxRanges:g=0,allowFullFile:e=!1,...t}={}){const i=new zr(I),r=new sI(i,{headers:A,maxRanges:g,allowFullFile:e});return QI(r,t)}function As(I,{headers:A={},maxRanges:g=0,allowFullFile:e=!1,...t}={}){const i=new sI(I,{headers:A,maxRanges:g,allowFullFile:e});return QI(i,t)}function pe(I,{forceXHR:A=!1,...g}={}){return typeof fetch=="function"&&!A?Wr(I,g):typeof XMLHttpRequest<"u"?Xr(I,g):$r(I,g)}class gs extends bg{constructor(A){super(),this.arrayBuffer=A}fetchSlice(A,g){if(g&&g.aborted)throw new Ag("Request aborted");return Promise.resolve({data:this.arrayBuffer.slice(A.offset,A.offset+A.length),offset:A.offset,length:A.length})}}function Is(I){return new gs(I)}class es extends bg{constructor(A){super(),this.file=A}async fetchSlice(A,g){return new Promise((e,t)=>{const i=this.file.slice(A.offset,A.offset+A.length),r=new FileReader;r.onload=()=>e({data:r.result,offset:A.offset,length:A.length}),r.onerror=t,r.onabort=t,r.readAsArrayBuffer(i),g&&g.addEventListener("abort",()=>r.abort())})}}function ts(I){return new es(I)}function is(I){return new Promise((A,g)=>{fg.close(I,e=>{e?g(e):A()})})}function Cs(I,A,g=void 0){return new Promise((e,t)=>{fg.open(I,A,g,(i,r)=>{i?t(i):e(r)})})}function Bs(I,A,g,e,t){return new Promise((i,r)=>{fg.read(I,A,g,e,t,(o,E,B)=>{o?r(o):i({bytesRead:E,buffer:B})})})}class os extends bg{constructor(A){super(),this.path=A,this.openRequest=Cs(A,"r")}async fetchSlice(A,g){const e=await this.openRequest,{buffer:t}=await Bs(e,new Uint8Array(A.length),0,A.length,A.offset);return{data:t.buffer,offset:A.offset,length:A.length}}async close(){const A=await this.openRequest;await is(A)}}function rs(I){return new os(I)}function dg(I,A){switch(I){case Y.BYTE:case Y.ASCII:case Y.UNDEFINED:return new Uint8Array(A);case Y.SBYTE:return new Int8Array(A);case Y.SHORT:return new Uint16Array(A);case Y.SSHORT:return new Int16Array(A);case Y.LONG:case Y.IFD:return new Uint32Array(A);case Y.SLONG:return new Int32Array(A);case Y.LONG8:case Y.IFD8:return new Array(A);case Y.SLONG8:return new Array(A);case Y.RATIONAL:return new Uint32Array(A*2);case Y.SRATIONAL:return new Int32Array(A*2);case Y.FLOAT:return new Float32Array(A);case Y.DOUBLE:return new Float64Array(A);default:throw new RangeError(`Invalid field type: ${I}`)}}function ug(I,A){switch(A){case Y.BYTE:case Y.ASCII:case Y.UNDEFINED:return I.readUint8;case Y.SBYTE:return I.readInt8;case Y.SHORT:return I.readUint16;case Y.SSHORT:return I.readInt16;case Y.LONG:case Y.IFD:return I.readUint32;case Y.SLONG:return I.readInt32;case Y.LONG8:case Y.IFD8:return I.readUint64;case Y.SLONG8:return I.readInt64;case Y.RATIONAL:return I.readUint32;case Y.SRATIONAL:return I.readInt32;case Y.FLOAT:return I.readFloat32;case Y.DOUBLE:return I.readFloat64;default:throw new RangeError(`Invalid field type: ${A}`)}}function Hg(I=null,A,g,e,t,i,r=!1){const o=cg(e),E=I||dg(e,t),B=e===Y.RATIONAL||e===Y.SRATIONAL;if(B)for(let C=0;C<t;C+=2)E[C]=A.call(g,i+C*o),E[C+1]=A.call(g,i+(C*o+4));else for(let C=0;C<t;++C)E[C]=A.call(g,i+C*o);return e===Y.ASCII?new TextDecoder("utf-8").decode(E):t===1&&!r&&!B?E[0]:E}class ss{constructor(A,g,e,t,i){this.source=A,this.arrayOffset=g,this.littleEndian=e,this.fieldType=t,this.length=i,this.data=dg(t,i),this.itemSize=cg(t),this.maskBitmap=new Uint8Array(Math.ceil(i/8)),this.fetchIndexPromises=new Map,this.fullFetchPromise=null}async loadAll(){return this.fullFetchPromise||(this.fullFetchPromise=this.source.fetch([{offset:this.arrayOffset,length:this.itemSize*this.length}]).then(A=>{const g=new BI(A[0],this.arrayOffset,!0,!1),e=Hg(this.data,ug(g,this.fieldType),g,this.fieldType,this.length,this.arrayOffset,!0);return this.maskBitmap.fill(255),this.fetchIndexPromises.clear(),e})),this.fullFetchPromise}async get(A){if(A<0||A>=this.data.length)throw new RangeError(`Index ${A} out of bounds for length ${this.data.length}`);const g=Math.floor(A/8),e=1<<A%8,t=this.arrayOffset+A*this.itemSize;if((this.maskBitmap[g]&e)===0){if(!this.fetchIndexPromises.has(A)){const i=this.source.fetch([{offset:t,length:this.itemSize}]).then(r=>{const o=new BI(r[0],this.arrayOffset+A*this.itemSize,!0,!1),B=ug(o,this.fieldType).call(o,t);return this.data[A]=B,this.maskBitmap[g]|=e,this.fetchIndexPromises.delete(A),B});this.fetchIndexPromises.set(A,i)}return this.fetchIndexPromises.get(A)}return this.data[A]}}class Oi{constructor(A,g,e,t){this.actualizedFields=A,this.deferredFields=g,this.deferredFieldsBeingResolved=new Map,this.deferredArrays=e,this.nextIFDByteOffset=t}hasTag(A){const g=lg(A);return this.actualizedFields.has(g)||this.deferredFields.has(g)||this.deferredArrays.has(g)}getValue(A){const g=lg(A);if(this.deferredFields.has(g)||this.deferredArrays.has(g)){const e=ig[g],t=(e==null?void 0:e.name)||`Tag${g}`;throw new Error(`Field '${t}' (${g}) is deferred. Use loadValue() to load it asynchronously.`)}if(this.actualizedFields.has(g))return this.actualizedFields.get(g)}async loadValue(A){const g=lg(A);if(this.actualizedFields.has(g))return this.actualizedFields.get(g);if(this.deferredFieldsBeingResolved.has(g))return this.deferredFieldsBeingResolved.get(g);const e=this.deferredFields.get(g);if(e){this.deferredFields.delete(g);const i=(async()=>{try{const r=await e();return this.actualizedFields.set(g,r),r}finally{this.deferredFieldsBeingResolved.delete(g)}})();return this.deferredFieldsBeingResolved.set(g,i),i}const t=this.deferredArrays.get(g);if(t)return t.loadAll()}async loadValueIndexed(A,g){const e=lg(A);if(this.actualizedFields.has(e))return this.actualizedFields.get(e)[g];if(this.deferredArrays.has(e))return this.deferredArrays.get(e).get(g);if(this.hasTag(e)){const t=await this.loadValue(e);if(t&&typeof t!="number")return t[g]}}parseGeoKeyDirectory(){const A=this.getValue("GeoKeyDirectory");if(!A)return null;const g={};for(let e=4;e<=A[3]*4;e+=4){const t=tI[A[e]],i=A[e+1]||null,r=A[e+2],o=A[e+3];let E=null;if(!i)E=o;else{if(E=this.getValue(i),typeof E>"u"||E===null)throw new Error(`Could not get value of geoKey '${t}'.`);typeof E=="string"?E=E.substring(o,o+r-1):E.subarray&&(E=E.subarray(o,o+r),r===1&&(E=E[0]))}g[t]=E}return g}toObject(){const A={};for(const[g,e]of this.actualizedFields.entries()){const t=typeof g=="number"?ig[g]:void 0,i=t?t.name:`Tag${g}`;A[i]=e}return A}}class Qs{constructor(A,g,e,t=!1){this.source=A,this.littleEndian=g,this.bigTiff=e,this.eager=t}async getSlice(A,g){const e=this.bigTiff?4048:1024;return new BI((await this.source.fetch([{offset:A,length:typeof g<"u"?g:e}]))[0],A,this.littleEndian,this.bigTiff)}async parseFileDirectoryAt(A){var a,Q;const g=this.bigTiff?20:12,e=this.bigTiff?8:2;let t=await this.getSlice(A);const i=this.bigTiff?t.readUint64(A):t.readUint16(A),r=i*(g+(this.bigTiff?16:6));t.covers(A,r)||(t=await this.getSlice(A,r));const o=new Map,E=new Map,B=new Map;let C=A+(this.bigTiff?8:2);for(let n=0;n<i;C+=g,++n){const f=t.readUint16(C),c=t.readUint16(C+2),h=this.bigTiff?t.readUint64(C+4):t.readUint32(C+4);let w=null,D=null,d=null;const y=cg(c),S=C+(this.bigTiff?12:8),l=(a=ig[f])==null?void 0:a.isArray,G=((Q=ig[f])==null?void 0:Q.eager)||this.eager;if(y*h<=(this.bigTiff?8:4))w=Hg(dg(c,h),ug(t,c),t,c,h,S,l);else{const F=t.readOffset(S),k=cg(c)*h;if(t.covers(F,k))w=Hg(dg(c,h),ug(t,c),t,c,h,F,l);else if(G){const m=await this.getSlice(F,k);w=Hg(dg(c,h),ug(m,c),m,c,h,F,l)}else l?d=new ss(this.source,F,this.littleEndian,c,h):D=async()=>{const m=await this.getSlice(F,k);return Hg(dg(c,h),ug(m,c),m,c,h,F,l)}}w!==null?o.set(f,w):D!==null?E.set(f,D):d!==null&&B.set(f,d)}const s=t.readOffset(A+e+g*i);return new Oi(o,E,B,s)}}const Es=II,as=Mr(tI),vA={};Ji(vA,Es),Ji(vA,as);const ns=Y,Kg=1e3,Dg=new Uint8Array(8),FA={nextZero:(I,A)=>{let g=A;for(;I[g]!==0;)g++;return g},readUshort:(I,A)=>I[A]<<8|I[A+1],readShort:(I,A)=>{const g=FA.ui8;return g[0]=I[A+1],g[1]=I[A+0],FA.i16[0]},readInt:(I,A)=>{const g=FA.ui8;return g[0]=I[A+3],g[1]=I[A+2],g[2]=I[A+1],g[3]=I[A+0],FA.i32[0]},readUint:(I,A)=>{const g=FA.ui8;return g[0]=I[A+3],g[1]=I[A+2],g[2]=I[A+1],g[3]=I[A+0],FA.ui32[0]},readASCII:(I,A,g)=>g.map(e=>String.fromCharCode(I[A+e])).join(""),readFloat:(I,A)=>{const g=FA.ui8;return LA(4,e=>{g[e]=I[A+3-e]}),FA.fl32[0]},readDouble:(I,A)=>{const g=FA.ui8;return LA(8,e=>{g[e]=I[A+7-e]}),FA.fl64[0]},writeUshort:(I,A,g)=>{I[A]=g>>8&255,I[A+1]=g&255},writeUint:(I,A,g)=>{I[A]=g>>24&255,I[A+1]=g>>16&255,I[A+2]=g>>8&255,I[A+3]=g>>0&255},writeASCII:(I,A,g)=>{LA(g.length,e=>{I[A+e]=g.charCodeAt(e)})},ui8:Dg,fl64:new Float64Array(Dg.buffer),fl32:new Float32Array(Dg.buffer),ui32:new Uint32Array(Dg.buffer),i32:new Int32Array(Dg.buffer),i16:new Int16Array(Dg.buffer),writeDouble:(I,A,g)=>{FA.fl64[0]=g,LA(8,e=>{I[A+e]=FA.ui8[7-e]})}},cs=(I,A,g,e)=>{let t=g;const i=Object.keys(e).filter(o=>o!=null&&o!=="undefined").map(Number);I.writeUshort(A,t,i.length),t+=2;let r=t+12*i.length+4;for(const o of i){const E=ue[o],B=ns[E];if(E==null||E===void 0||typeof E>"u")throw new Error(`unknown type of tag: ${o}`);let C=e[o];if(C===void 0)throw new Error(`failed to get value for key ${o}`);E==="ASCII"&&typeof C=="string"&&qi(C,"\0")===!1&&(C+="\0");const s=C.length;I.writeUshort(A,t,o),t+=2,I.writeUshort(A,t,B),t+=2,I.writeUint(A,t,s),t+=4;let a=[-1,1,1,2,4,8,0,0,0,0,0,0,8][B]*s,Q=t;a>4&&(I.writeUint(A,t,r),Q=r),E==="ASCII"?I.writeASCII(A,Q,C):E==="SHORT"?LA(s,n=>{I.writeUshort(A,Q+2*n,C[n])}):E==="LONG"?LA(s,n=>{I.writeUint(A,Q+4*n,C[n])}):E==="RATIONAL"?LA(s,n=>{I.writeUint(A,Q+8*n,Math.round(C[n]*1e4)),I.writeUint(A,Q+8*n+4,1e4)}):E==="DOUBLE"&&LA(s,n=>{I.writeDouble(A,Q+8*n,C[n])}),a>4&&(a+=a&1,r+=a),t+=4}return[t,r]},ls=I=>{const A=new Uint8Array(Kg);let g=4;const e=FA;A[0]=77,A[1]=77,A[3]=42;let t=8;if(e.writeUint(A,g,t),g+=4,I.forEach((r,o)=>{const E=cs(e,A,t,r);t=E[1],o<I.length-1&&e.writeUint(A,E[0],t)}),A.slice)return A.slice(0,t).buffer;const i=new Uint8Array(t);for(let r=0;r<t;r++)i[r]=A[r];return i.buffer},hs=(I,A,g,e)=>{if(g==null)throw new Error(`you passed into encodeImage a width of type ${g}`);if(A==null)throw new Error(`you passed into encodeImage a width of type ${A}`);const t={256:[A],257:[g],273:[Kg],278:[g],305:"geotiff.js"};if(e)for(const C in e)e.hasOwnProperty(C)&&(t[C]=e[C]);const i=new Uint8Array(ls([t])),r=I.constructor.name,o=qr[r];let E=8;o&&(E=o.BYTES_PER_ELEMENT);const B=new Uint8Array(Kg+I.length*E);return LA(i.length,C=>{B[C]=i[C]}),Ur(I,(C,s)=>{if(!o){B[Kg+s]=C;return}const a=new ArrayBuffer(E),Q=new DataView(a);r==="Float64Array"?Q.setFloat64(0,C,!1):r==="Float32Array"?Q.setFloat32(0,C,!1):r==="Uint32Array"?Q.setUint32(0,C,!1):r==="Uint16Array"?Q.setUint16(0,C,!1):r==="Uint8Array"&&Q.setUint8(0,C);const n=new Uint8Array(Q.buffer),f=Kg+s*E;for(let c=0;c<E;c++)B[f+c]=n[c]}),B.buffer},fs=I=>{const A={};for(const g in I)g!=="StripOffsets"&&(vA[g]||console.error(g,"not in name2code:",Object.keys(vA)),A[vA[g]]=I[g]);return A},Vi=I=>Array.isArray(I)?I:[I],Ge={Compression:1,PlanarConfiguration:1,ExtraSamples:0};function ds(I,A){const g=typeof I[0]=="number";let e,t,i,r;if(g){const s=I,a=A.height||A.ImageLength;if(a===void 0||typeof a!="number")throw new Error("height is required to be a number in metadata if data is a flat array");e=a;const Q=A.width||A.ImageWidth;if(Q===void 0||typeof Q!="number")throw new Error("width is required to be a number in metadata if data is a flat array");i=Q,t=s.length/(e*i),r=s}else{const s=I;t=s.length,e=s[0].length,i=s[0][0].length,r=[],LA(e,a=>{LA(i,Q=>{LA(t,n=>{r.push(s[n][a][Q])})})})}if(A.ImageLength=e,delete A.height,A.ImageWidth=i,delete A.width,!A.BitsPerSample){let s=8;ArrayBuffer.isView(r)&&(s=8*Object.getPrototypeOf(r).BYTES_PER_ELEMENT),A.BitsPerSample=LA(t,()=>s)}const o=A;if("Compression"in o||(o.Compression=Ge.Compression),"PlanarConfiguration"in o||(o.PlanarConfiguration=Ge.PlanarConfiguration),"ExtraSamples"in o||(o.ExtraSamples=Ge.ExtraSamples),!o.PhotometricInterpretation){if(!Array.isArray(o.BitsPerSample))throw new Error("BitsPerSample must be an array when PhotometricInterpretation is not provided");o.PhotometricInterpretation=o.BitsPerSample.length===3?2:1}if(o.SamplesPerPixel||(o.SamplesPerPixel=[t]),!o.StripByteCounts){let s=8;ArrayBuffer.isView(r)&&(s=Object.getPrototypeOf(r).BYTES_PER_ELEMENT),o.StripByteCounts=[t*s*e*i]}if(!o.ModelPixelScale&&!o.ModelTransformation&&(o.ModelPixelScale=[360/i,180/e,0]),!o.SampleFormat){let s=1;xr(r)&&(s=3),vr(r)&&(s=2),Jr(r)&&(s=1),o.SampleFormat=LA(t,()=>s)}!o.hasOwnProperty("GeographicTypeGeoKey")&&!o.hasOwnProperty("ProjectedCSTypeGeoKey")&&(o.GeographicTypeGeoKey=4326,o.ModelTransformation||(o.ModelTiepoint=[0,0,0,-180,90,0]),o.GeogCitationGeoKey="WGS 84",o.GTModelTypeGeoKey=2);const E=Object.keys(o).filter(s=>qi(s,"GeoKey")).sort((s,a)=>vA[s]-vA[a]);if(!o.GeoKeyDirectory){let s=o.GeoAsciiParams||"";if(typeof s!="string")throw new Error("GeoAsciiParams must be a string if provided");let a=s.length;const Q=o.GeoDoubleParams||[];if(!Array.isArray(Q))throw new Error("GeoDoubleParams must be an array if provided");let n=Q.length;const f=[1,1,0,0];let c=0;E.forEach(h=>{const w=vA[h],D=ue[w],d=o[h];if(d===void 0)return;let y,S,l;if(D==="SHORT"){if(y=1,S=0,typeof d!="number")throw new Error(`GeoKey ${h} with type SHORT must have a number value`);l=d}else if(D==="ASCII"){if(o.GeoAsciiParams)return;{const G=`${d.toString()}\0`;S=Number(vA.GeoAsciiParams),l=a,y=G.length,s+=G,a+=G.length}}else if(D==="DOUBLE"){if(o.GeoDoubleParams)return;{const G=Vi(d);S=Number(vA.GeoDoubleParams),l=n,y=G.length;for(const F of G)Q.push(Number(F)),n++}}else{console.warn(`[geotiff.js] couldn't get TIFFTagLocation for ${h}`);return}f.push(w,S,y,l),c++}),f[3]=c,o.GeoKeyDirectory=f,!o.GeoAsciiParams&&s.length>0&&(o.GeoAsciiParams=s),!o.GeoDoubleParams&&Q.length>0&&(o.GeoDoubleParams=Q)}for(const s of E)o.hasOwnProperty(s)&&delete o[s];["Compression","ExtraSamples","GeographicTypeGeoKey","GTModelTypeGeoKey","GTRasterTypeGeoKey","ImageLength","ImageWidth","Orientation","PhotometricInterpretation","ProjectedCSTypeGeoKey","PlanarConfiguration","ResolutionUnit","SamplesPerPixel","XPosition","YPosition","RowsPerStrip"].forEach(s=>{o[s]&&(o[s]=Vi(o[s]))});const B=fs(o);return hs(r,i,e,B)}class us{log(...A){}debug(...A){}info(...A){}warn(...A){}error(...A){}time(...A){}timeEnd(...A){}}function Ds(I=new us){}function ws(I,A){let g=I.length-A,e=0;do{for(let t=A;t>0;t--)I[e+A]+=I[e],e++;g-=A}while(g>0)}function ys(I,A,g){let e=0,t=I.length;const i=t/g;for(;t>A;){for(let o=A;o>0;--o)I[e+A]+=I[e],++e;t-=A}const r=I.slice();for(let o=0;o<i;++o)for(let E=0;E<g;++E)I[g*o+E]=r[(g-E-1)*i+o]}function Ss(I,A,g,e,t,i){if(!A||A===1)return I;for(let E=0;E<t.length;++E){if(t[E]%8!==0)throw new Error("When decoding with predictor, only multiple of 8 bits are supported.");if(t[E]!==t[0])throw new Error("When decoding with predictor, all samples must have the same size.")}const r=t[0]/8,o=i===2?1:t.length;for(let E=0;E<e&&!(E*o*g*r>=I.byteLength);++E){let B;if(A===2){switch(t[0]){case 8:B=new Uint8Array(I,E*o*g*r,o*g*r);break;case 16:B=new Uint16Array(I,E*o*g*r,o*g*r/2);break;case 32:B=new Uint32Array(I,E*o*g*r,o*g*r/4);break;default:throw new Error(`Predictor 2 not allowed with ${t[0]} bits per sample.`)}ws(B,o)}else A===3&&(B=new Uint8Array(I,E*o*g*r,o*g*r),ys(B,o,r))}return I}class VA{constructor(A){this.parameters=A}decodeBlock(A){throw new Error("decodeBlock not implemented")}async decode(A){const g=await this.decodeBlock(A),{tileWidth:e,tileHeight:t,predictor:i,bitsPerSample:r,planarConfiguration:o}=this.parameters;if(i!==1){const B=Array.isArray(r)||ArrayBuffer.isView(r)?Array.from(r):[r];return Ss(g,i,e,t,B,o)}return g}}function Le(I,A,g,e){let t=null,i=null;const r=cg(A);switch(A){case Y.BYTE:case Y.ASCII:case Y.UNDEFINED:t=new Uint8Array(g),i=I.readUint8;break;case Y.SBYTE:t=new Int8Array(g),i=I.readInt8;break;case Y.SHORT:t=new Uint16Array(g),i=I.readUint16;break;case Y.SSHORT:t=new Int16Array(g),i=I.readInt16;break;case Y.LONG:case Y.IFD:t=new Uint32Array(g),i=I.readUint32;break;case Y.SLONG:t=new Int32Array(g),i=I.readInt32;break;case Y.LONG8:case Y.IFD8:t=new Array(g),i=I.readUint64;break;case Y.SLONG8:t=new Array(g),i=I.readInt64;break;case Y.RATIONAL:t=new Uint32Array(g*2),i=I.readUint32;break;case Y.SRATIONAL:t=new Int32Array(g*2),i=I.readInt32;break;case Y.FLOAT:t=new Float32Array(g),i=I.readFloat32;break;case Y.DOUBLE:t=new Float64Array(g),i=I.readFloat64;break}if(t===null||i===null)throw new RangeError(`Invalid field type: ${A}`);if(A===Y.RATIONAL||A===Y.SRATIONAL)for(let o=0;o<g;o+=2)t[o]=i.call(I,e+o*r),t[o+1]=i.call(I,e+(o*r+4));else for(let o=0;o<g;++o)t[o]=i.call(I,e+o*r);return A===Y.ASCII?new TextDecoder("utf-8").decode(t):t}class EI extends Error{constructor(A){super(`No image at index ${A}`),this.index=A}}class ji{async getImage(A=0){throw new Error("Not implemented")}async getImageCount(){throw new Error("Not implemented")}async readRasters(A={}){const{window:g,width:e,height:t}=A;let{resX:i,resY:r,bbox:o}=A;const E=await this.getImage();let B=E;const C=await this.getImageCount(),s=E.getBoundingBox();if(g&&o)throw new Error('Both "bbox" and "window" passed.');if(e||t){if(g){const[n,f]=E.getOrigin(),[c,h]=E.getResolution();o=[n+g[0]*c,f+g[1]*h,n+g[2]*c,f+g[3]*h]}const Q=o||s;if(e){if(i)throw new Error("Both width and resX passed");i=(Q[2]-Q[0])/e}if(t){if(r)throw new Error("Both width and resY passed");r=(Q[3]-Q[1])/t}}if(i||r){const Q=[];for(let n=0;n<C;++n){const f=await this.getImage(n),c=f.fileDirectory.getValue("SubfileType"),h=f.fileDirectory.getValue("NewSubfileType");(n===0||c===2||(h||0)&1)&&Q.push(f)}Q.sort((n,f)=>n.getWidth()-f.getWidth());for(let n=0;n<Q.length;++n){const f=Q[n],c=(s[2]-s[0])/f.getWidth(),h=(s[3]-s[1])/f.getHeight();if(B=f,i&&i>c||r&&r>h)break}}let a=g;if(o){const[Q,n]=E.getOrigin(),[f,c]=B.getResolution(E);a=[Math.round((o[0]-Q)/f),Math.round((o[1]-n)/c),Math.round((o[2]-Q)/f),Math.round((o[3]-n)/c)],a=[Math.min(a[0],a[2]),Math.min(a[1],a[3]),Math.max(a[0],a[2]),Math.max(a[1],a[3])]}return B.readRasters({...A,window:a})}}class bA extends ji{constructor(A,g,e,t,i={}){super(),this.source=A,this.parser=new Qs(A,g,e,!1),this.littleEndian=g,this.bigTiff=e,this.firstIFDOffset=t,this.cache=i.cache||!1,this.ifdRequests=[],this.ghostValues=null}async getSlice(A,g){const e=this.bigTiff?4048:1024;return new BI((await this.source.fetch([{offset:A,length:typeof g<"u"?g:e}]))[0],A,this.littleEndian,this.bigTiff)}async requestIFD(A){if(this.ifdRequests[A])return this.ifdRequests[A];if(A===0)return this.ifdRequests[A]=this.parser.parseFileDirectoryAt(this.firstIFDOffset),this.ifdRequests[A];if(!this.ifdRequests[A-1])try{this.ifdRequests[A-1]=this.requestIFD(A-1)}catch(g){throw g instanceof EI?new EI(A):g}return this.ifdRequests[A]=(async()=>{const g=this.ifdRequests[A-1];if(!g)throw new Error("Previous IFD request missing");const e=await g;if(e.nextIFDByteOffset===0)throw new EI(A);return this.parser.parseFileDirectoryAt(e.nextIFDByteOffset)})(),this.ifdRequests[A]}async getImage(A=0){return new ye(await this.requestIFD(A),this.littleEndian,this.cache,this.source)}async getImageCount(){let A=0,g=!0;for(;g;)try{await this.requestIFD(A),++A}catch(e){if(e instanceof EI)g=!1;else throw e}return A}async getGhostValues(){const A=this.bigTiff?16:8;if(this.ghostValues!==null)return this.ghostValues;const g="GDAL_STRUCTURAL_METADATA_SIZE=",e=g.length+100;let t=await this.getSlice(A,e);if(g===Le(t,Y.ASCII,g.length,A)){const r=Le(t,Y.ASCII,e,A).split(`
36
- `)[0],o=Number(r.split("=")[1].split(" ")[0])+r.length;o>e&&(t=await this.getSlice(A,o));const E=Le(t,Y.ASCII,o,A),B={};E.split(`
37
- `).filter(C=>C.length>0).map(C=>C.split("=")).forEach(([C,s])=>{B[C]=s}),this.ghostValues=B}return this.ghostValues}static async fromSource(A,g,e){const t=(await A.fetch([{offset:0,length:1024}],e))[0],i=new wr(t),r=i.getUint16(0,!1);let o;if(r===18761)o=!0;else if(r===19789)o=!1;else throw new TypeError("Invalid byte order value.");const E=i.getUint16(2,o);let B;if(E===42)B=!1;else if(E===43){if(B=!0,i.getUint16(4,o)!==8)throw new Error("Unsupported offset byte-size.")}else throw new TypeError("Invalid magic number.");const C=B?i.getUint64(8,o):i.getUint32(4,o);return new bA(A,o,B,C,g)}close(){return typeof this.source.close=="function"?this.source.close():!1}}class Zi extends ji{constructor(A,g){super(),this.mainFile=A,this.overviewFiles=g,this.imageFiles=[A].concat(g),this.fileDirectoriesPerFile=null,this.fileDirectoriesPerFileParsing=null,this.imageCount=null}async parseFileDirectoriesPerFile(){const A=[this.mainFile.parser.parseFileDirectoryAt(this.mainFile.firstIFDOffset)].concat(this.overviewFiles.map(g=>g.parser.parseFileDirectoryAt(g.firstIFDOffset)));return this.fileDirectoriesPerFile=await Promise.all(A),this.fileDirectoriesPerFile}async getImage(A=0){if(await this.getImageCount(),!this.imageCounts)throw new Error("Image counts not available");await this.parseFileDirectoriesPerFile();let g=0,e=0;for(let t=0;t<this.imageFiles.length;t++){const i=this.imageFiles[t];for(let r=0;r<this.imageCounts[t];r++){if(A===g)return new ye(await i.requestIFD(e),i.littleEndian,i.cache,i.source);g++,e++}e=0}throw new RangeError("Invalid image index")}async getImageCount(){if(this.imageCount!==null)return this.imageCount;const A=[this.mainFile.getImageCount()].concat(this.overviewFiles.map(g=>g.getImageCount()));return this.imageCounts=await Promise.all(A),this.imageCount=this.imageCounts.reduce((g,e)=>g+e,0),this.imageCount}}async function ps(I,A={},g){return bA.fromSource(pe(I,A),void 0,g)}async function Gs(I,A={},g){return bA.fromSource(As(I,A),void 0,g)}async function Ls(I,A){return bA.fromSource(Is(I),void 0,A)}async function Ns(I,A){return bA.fromSource(rs(I),void 0,A)}async function ks(I,A){return bA.fromSource(ts(I),void 0,A)}async function Fs(I,A=[],g={},e){const t=await bA.fromSource(pe(I,g),void 0,e),i=await Promise.all(A.map(r=>bA.fromSource(pe(r,g),void 0,e)));return new Zi(t,i)}function ms(I,A){return ds(I,A)}const Rs=Object.freeze(Object.defineProperty({__proto__:null,BaseClient:rI,BaseDecoder:VA,BaseResponse:oI,GeoTIFF:bA,GeoTIFFImage:ye,ImageFileDirectory:Oi,MultiGeoTIFF:Zi,Pool:Nr,addDecoder:Ki,default:bA,fromArrayBuffer:Ls,fromBlob:ks,fromCustomClient:Gs,fromFile:Ns,fromUrl:ps,fromUrls:Fs,getDecoder:De,globals:ir,registerTag:de,rgb:rr,setLogger:Ds,writeArrayBuffer:ms},Symbol.toStringTag,{value:"Module"}));class Us extends VA{decodeBlock(A){return A}}const Ms=Object.freeze(Object.defineProperty({__proto__:null,default:Us},Symbol.toStringTag,{value:"Module"})),_i=9,Ne=256,ke=257,Ys=12;function bs(I,A,g){const e=A%8,t=Math.floor(A/8),i=8-e,r=A+g-(t+1)*8;let o=8*(t+2)-(A+g);const E=(t+2)*8-A;if(o=Math.max(0,o),t>=I.length)return console.warn("ran off the end of the buffer before finding EOI_CODE (end on input code)"),ke;let B=I[t]&2**(8-e)-1;B<<=g-i;let C=B;if(t+1<I.length){let s=I[t+1]>>>o;s<<=Math.max(0,g-E),C+=s}if(r>8&&t+2<I.length){const s=(t+3)*8-(A+g),a=I[t+2]>>>s;C+=a}return C}function Fe(I,A){for(let g=A.length-1;g>=0;g--)I.push(A[g]);return I}function Hs(I){const A=new Uint16Array(4093),g=new Uint8Array(4093);for(let n=0;n<=257;n++)A[n]=4096,g[n]=n;let e=258,t=_i,i=0;function r(){e=258,t=_i}function o(n){const f=bs(n,i,t);return i+=t,f}function E(n,f){return g[e]=f,A[e]=n,e++,e-1}function B(n){const f=[];for(let c=n;c!==4096;c=A[c])f.push(g[c]);return f}const C=[];r();const s=new Uint8Array(I);let a=o(s),Q;for(;a!==ke;){if(a===Ne){for(r(),a=o(s);a===Ne;)a=o(s);if(a===ke)break;if(a>Ne)throw new Error(`corrupted code at scanline ${a}`);{const n=B(a);Fe(C,n),Q=a}}else if(a<e){const n=B(a);Fe(C,n),Q!==void 0&&E(Q,n[n.length-1]),Q=a}else{if(Q===void 0)throw new Error(`Invalid LZW code: ${a} with no previous code`);const n=B(Q);if(!n)throw new Error(`Bogus entry. Not in dictionary, ${Q} / ${e}, position: ${i}`);Fe(C,n),C.push(n[n.length-1]),E(Q,n[n.length-1]),Q=a}e+1>=2**t&&(t===Ys?Q=void 0:t++),a=o(s)}return new Uint8Array(C)}class Ks extends VA{decodeBlock(A){return Hs(A).buffer}}const xs=Object.freeze(Object.defineProperty({__proto__:null,default:Ks},Symbol.toStringTag,{value:"Module"})),xg=new Int32Array([0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]),aI=4017,nI=799,cI=3406,lI=2276,hI=1567,fI=3784,wg=5793,dI=2896;function Pi(I,A){let g=0;const e=[];let t=16;for(;t>0&&!I[t-1];)--t;e.push({children:[],index:0});let i=e[0],r;for(let o=0;o<t;o++){for(let E=0;E<I[o];E++){if(i=e.pop(),!i)throw new Error("buildHuffmanTable: codeLength mismatch");for(i.children[i.index]=A[g];i.index>0;)if(i=e.pop(),!i)throw new Error("buildHuffmanTable: codeLength mismatch");for(i.index++,e.push(i);e.length<=o;)e.push(r={children:[],index:0}),i.children[i.index]=r.children,i=r;g++}o+1<t&&(e.push(r={children:[],index:0}),i.children[i.index]=r.children,i=r)}return e[0].children}function vs(I,A,g,e,t,i,r,o,E){const{mcusPerLine:B,progressive:C}=g;if(e.length>1&&(B===void 0||g.mcusPerColumn===void 0))throw new Error("Missing MCU dimensions");if(e.length===1&&(e[0].blocksPerLine===void 0||e[0].blocksPerColumn===void 0))throw new Error("Missing block dimensions");const s=A;let a=A,Q=0,n=0;function f(){if(n>0)return n--,Q>>n&1;if(Q=I[a++],Q===255){const K=I[a++];if(K)throw new Error(`unexpected marker: ${(Q<<8|K).toString(16)}`)}return n=7,Q>>>7}function c(K){if(!K)throw new Error("Huffman table not found");let O=K,x;for(;(x=f())!==null;){const W=O[x];if(typeof W=="number")return W;if(typeof W!="object")throw new Error("invalid huffman sequence");O=W}return null}function h(K){let O=K,x=0;for(;O>0;){const W=f();if(W===null)return;x=x<<1|W,--O}return x}function w(K){const O=h(K);if(O!==void 0)return O>=1<<K-1?O:O+(-1<<K)+1}function D(K,O){const x=c(K.huffmanTableDC);if(x===null)throw new Error("Huffman error");const W=x===0?0:w(x);if(W===void 0)throw new Error("Unexpected end of stream");K.pred===void 0&&(K.pred=0),K.pred+=W,O[0]=K.pred;let _=1;for(;_<64;){const gA=c(K.huffmanTableAC);if(gA===null)throw new Error("Unexpected end of data in AC coefficient decoding");const iA=gA&15,AA=gA>>4;if(iA===0){if(AA<15)break;_+=16}else{_+=AA;const z=xg[_],eA=w(iA);if(eA===void 0)throw new Error("Unexpected end of stream");O[z]=eA,_++}}}function d(K,O){const x=c(K.huffmanTableDC);if(x===null)throw new Error("Huffman error");const W=w(x);if(W===void 0)throw new Error("Unexpected end of data in DC coefficient decoding");const _=x===0?0:W<<E;K.pred===void 0&&(K.pred=0),K.pred+=_,O[0]=K.pred}function y(K,O){const x=f();if(x===null)throw new Error("Unexpected end of data in DC coefficient decoding");O[0]|=x<<E}let S=0;function l(K,O){if(S>0){S--;return}let x=i;const W=r;for(;x<=W;){const _=c(K.huffmanTableAC);if(_===null)throw new Error("Unexpected end of data in AC coefficient decoding");const gA=_&15,iA=_>>4;if(gA===0){if(iA<15){const AA=h(iA);if(AA===void 0)throw new Error("Unexpected end of data in AC coefficient decoding");S=AA+(1<<iA)-1;break}x+=16}else{x+=iA;const AA=xg[x],z=w(gA);if(z===void 0)throw new Error("Unexpected end of data in AC coefficient decoding");O[AA]=z*(1<<E),x++}}}let G=0,F;function k(K,O){let x=i;const W=r;let _=0;for(;x<=W;){const gA=xg[x],iA=O[gA]<0?-1:1;switch(G){case 0:{const AA=c(K.huffmanTableAC);if(AA===null)throw new Error("Unexpected end of data in AC coefficient decoding");const z=AA&15;if(_=AA>>4,z===0)if(_<15){const eA=h(_);if(eA===void 0)throw new Error("Unexpected end of data in AC coefficient decoding");S=eA+(1<<_),G=4}else _=16,G=1;else{if(z!==1)throw new Error("invalid ACn encoding");const eA=w(z);if(eA===void 0)throw new Error("Unexpected end of data in AC coefficient decoding");F=eA,G=_?2:3}continue}case 1:case 2:if(O[gA]){const AA=f();if(AA===null)throw new Error("Unexpected end of data in AC coefficient decoding");O[gA]+=(AA<<E)*iA}else _--,_===0&&(G=G===2?3:0);break;case 3:if(O[gA]){const AA=f();if(AA===null)throw new Error("Unexpected end of data in AC coefficient decoding");O[gA]+=(AA<<E)*iA}else O[gA]=F<<E,G=0;break;case 4:if(O[gA]){const AA=f();if(AA===null)throw new Error("Unexpected end of data in AC coefficient decoding");O[gA]+=(AA<<E)*iA}break}x++}G===4&&(S--,S===0&&(G=0))}function m(K,O,x,W,_){const gA=x/B|0,iA=x%B,AA=gA*K.v+W,z=iA*K.h+_;if(!K.blocks)throw new Error("Missing blocks");O(K,K.blocks[AA][z])}function M(K,O,x){const W=x/K.blocksPerLine|0,_=x%K.blocksPerLine;if(!K.blocks)throw new Error("Missing blocks");O(K,K.blocks[W][_])}const N=e.length;let b,U,R,H,T,V;C?i===0?V=o===0?d:y:V=o===0?l:k:V=D;let P=0,q,v;N===1?v=e[0].blocksPerLine*e[0].blocksPerColumn:v=B*g.mcusPerColumn;const Z=t||v;for(;P<v;){for(U=0;U<N;U++)e[U].pred=0;if(S=0,N===1)for(b=e[0],T=0;T<Z;T++)M(b,V,P),P++;else for(T=0;T<Z;T++){for(U=0;U<N;U++){b=e[U];const{h:K,v:O}=b;for(R=0;R<O;R++)for(H=0;H<K;H++)m(b,V,P,R,H)}if(P++,P===v)break}if(n=0,q=I[a]<<8|I[a+1],q<65280)throw new Error("marker was not found");if(q>=65488&&q<=65495)a+=2;else break}return a-s}function Js(I){const A=[],{blocksPerLine:g,blocksPerColumn:e}=I;if(!g||!e||!I.blocks)throw new Error("Missing component data");const t=g<<3,i=new Int32Array(64),r=new Uint8Array(64);function o(E,B,C){const s=I.quantizationTable;if(!s)throw new Error("No quantization table found");let a,Q,n,f,c,h,w,D,d;const y=C;let S;for(S=0;S<64;S++)y[S]=E[S]*s[S];for(S=0;S<8;++S){const l=8*S;if(y[1+l]===0&&y[2+l]===0&&y[3+l]===0&&y[4+l]===0&&y[5+l]===0&&y[6+l]===0&&y[7+l]===0){d=wg*y[0+l]+512>>10,y[0+l]=d,y[1+l]=d,y[2+l]=d,y[3+l]=d,y[4+l]=d,y[5+l]=d,y[6+l]=d,y[7+l]=d;continue}a=wg*y[0+l]+128>>8,Q=wg*y[4+l]+128>>8,n=y[2+l],f=y[6+l],c=dI*(y[1+l]-y[7+l])+128>>8,D=dI*(y[1+l]+y[7+l])+128>>8,h=y[3+l]<<4,w=y[5+l]<<4,d=a-Q+1>>1,a=a+Q+1>>1,Q=d,d=n*fI+f*hI+128>>8,n=n*hI-f*fI+128>>8,f=d,d=c-w+1>>1,c=c+w+1>>1,w=d,d=D+h+1>>1,h=D-h+1>>1,D=d,d=a-f+1>>1,a=a+f+1>>1,f=d,d=Q-n+1>>1,Q=Q+n+1>>1,n=d,d=c*lI+D*cI+2048>>12,c=c*cI-D*lI+2048>>12,D=d,d=h*nI+w*aI+2048>>12,h=h*aI-w*nI+2048>>12,w=d,y[0+l]=a+D,y[7+l]=a-D,y[1+l]=Q+w,y[6+l]=Q-w,y[2+l]=n+h,y[5+l]=n-h,y[3+l]=f+c,y[4+l]=f-c}for(S=0;S<8;++S){const l=S;if(y[8+l]===0&&y[16+l]===0&&y[24+l]===0&&y[32+l]===0&&y[40+l]===0&&y[48+l]===0&&y[56+l]===0){d=wg*C[S+0]+8192>>14,y[0+l]=d,y[8+l]=d,y[16+l]=d,y[24+l]=d,y[32+l]=d,y[40+l]=d,y[48+l]=d,y[56+l]=d;continue}a=wg*y[0+l]+2048>>12,Q=wg*y[32+l]+2048>>12,n=y[16+l],f=y[48+l],c=dI*(y[8+l]-y[56+l])+2048>>12,D=dI*(y[8+l]+y[56+l])+2048>>12,h=y[24+l],w=y[40+l],d=a-Q+1>>1,a=a+Q+1>>1,Q=d,d=n*fI+f*hI+2048>>12,n=n*hI-f*fI+2048>>12,f=d,d=c-w+1>>1,c=c+w+1>>1,w=d,d=D+h+1>>1,h=D-h+1>>1,D=d,d=a-f+1>>1,a=a+f+1>>1,f=d,d=Q-n+1>>1,Q=Q+n+1>>1,n=d,d=c*lI+D*cI+2048>>12,c=c*cI-D*lI+2048>>12,D=d,d=h*nI+w*aI+2048>>12,h=h*aI-w*nI+2048>>12,w=d,y[0+l]=a+D,y[56+l]=a-D,y[8+l]=Q+w,y[48+l]=Q-w,y[16+l]=n+h,y[40+l]=n-h,y[24+l]=f+c,y[32+l]=f-c}for(S=0;S<64;++S){const l=128+(y[S]+8>>4);l<0?B[S]=0:l>255?B[S]=255:B[S]=l}}for(let E=0;E<e;E++){const B=E<<3;for(let C=0;C<8;C++)A.push(new Uint8Array(t));for(let C=0;C<g;C++){o(I.blocks[E][C],r,i);let s=0;const a=C<<3;for(let Q=0;Q<8;Q++){const n=A[B+Q];for(let f=0;f<8;f++)n[a+f]=r[s++]}}}return A}class qs{constructor(){this.jfif=null,this.adobe=null,this.resetInterval=0,this.quantizationTables=[],this.huffmanTablesAC=[],this.huffmanTablesDC=[],this.frames=[]}resetFrames(){this.frames=[]}parse(A){let g=0;function e(){const o=A[g]<<8|A[g+1];return g+=2,o}function t(){const o=e(),E=A.subarray(g,g+o-2);return g+=E.length,E}function i(o){let E=0,B=0,C,s;for(s in o.components)o.components.hasOwnProperty(s)&&(C=o.components[s],E<C.h&&(E=C.h),B<C.v&&(B=C.v));const a=Math.ceil(o.samplesPerLine/8/E),Q=Math.ceil(o.scanLines/8/B);for(s in o.components)if(o.components.hasOwnProperty(s)){C=o.components[s];const n=Math.ceil(Math.ceil(o.samplesPerLine/8)*C.h/E),f=Math.ceil(Math.ceil(o.scanLines/8)*C.v/B),c=a*C.h,h=Q*C.v,w=[];for(let D=0;D<h;D++){const d=[];for(let y=0;y<c;y++)d.push(new Int32Array(64));w.push(d)}C.blocksPerLine=n,C.blocksPerColumn=f,C.blocks=w}o.maxH=E,o.maxV=B,o.mcusPerLine=a,o.mcusPerColumn=Q}let r=e();if(r!==65496)throw new Error("SOI not found");for(r=e();r!==65497;){switch(r){case 65280:break;case 65504:case 65505:case 65506:case 65507:case 65508:case 65509:case 65510:case 65511:case 65512:case 65513:case 65514:case 65515:case 65516:case 65517:case 65518:case 65519:case 65534:{const o=t();r===65504&&o[0]===74&&o[1]===70&&o[2]===73&&o[3]===70&&o[4]===0&&(this.jfif={version:{major:o[5],minor:o[6]},densityUnits:o[7],xDensity:o[8]<<8|o[9],yDensity:o[10]<<8|o[11],thumbWidth:o[12],thumbHeight:o[13],thumbData:o.subarray(14,14+3*o[12]*o[13])}),r===65518&&o[0]===65&&o[1]===100&&o[2]===111&&o[3]===98&&o[4]===101&&o[5]===0&&(this.adobe={version:o[6],flags0:o[7]<<8|o[8],flags1:o[9]<<8|o[10],transformCode:o[11]});break}case 65499:{const E=e()+g-2;for(;g<E;){const B=A[g++],C=new Int32Array(64);if(B>>4===0)for(let s=0;s<64;s++){const a=xg[s];C[a]=A[g++]}else if(B>>4===1)for(let s=0;s<64;s++){const a=xg[s];C[a]=e()}else throw new Error("DQT: invalid table spec");this.quantizationTables[B&15]=C}break}case 65472:case 65473:case 65474:{e();const o={extended:r===65473,progressive:r===65474,precision:A[g++],scanLines:e(),samplesPerLine:e(),components:{},componentsOrder:[],maxH:0,maxV:0,mcusPerLine:0,mcusPerColumn:0},E=A[g++];let B;for(let C=0;C<E;C++){B=A[g];const s=A[g+1]>>4,a=A[g+1]&15,Q=A[g+2];o.componentsOrder.push(B),o.components[B]={h:s,v:a,quantizationIdx:Q,blocksPerLine:0,blocksPerColumn:0,blocks:[]},g+=3}i(o),this.frames.push(o);break}case 65476:{const o=e();for(let E=2;E<o;){const B=A[g++],C=new Uint8Array(16);let s=0;for(let Q=0;Q<16;Q++,g++)C[Q]=A[g],s+=C[Q];const a=new Uint8Array(s);for(let Q=0;Q<s;Q++,g++)a[Q]=A[g];E+=17+s,B>>4===0?this.huffmanTablesDC[B&15]=Pi(C,a):this.huffmanTablesAC[B&15]=Pi(C,a)}break}case 65501:e(),this.resetInterval=e();break;case 65498:{e();const o=A[g++],E=[],B=this.frames[0];for(let n=0;n<o;n++){const f=B.components[A[g++]],c=A[g++];f.huffmanTableDC=this.huffmanTablesDC[c>>4],f.huffmanTableAC=this.huffmanTablesAC[c&15],E.push(f)}const C=A[g++],s=A[g++],a=A[g++],Q=vs(A,g,B,E,this.resetInterval,C,s,a>>4,a&15);g+=Q;break}case 65535:A[g]!==255&&g--;break;default:if(A[g-3]===255&&A[g-2]>=192&&A[g-2]<=254){g-=3;break}throw new Error(`unknown JPEG marker ${r.toString(16)}`)}r=e()}}getResult(){const{frames:A}=this;if(this.frames.length===0)throw new Error("no frames were decoded");this.frames.length>1&&console.warn("more than one frame is not supported");for(let C=0;C<this.frames.length;C++){const s=this.frames[C].components;for(const a of Object.keys(s)){const Q=s[a].quantizationIdx;typeof Q=="number"&&(s[a].quantizationTable=this.quantizationTables[Q],delete s[a].quantizationIdx)}}const g=A[0];if(!g.maxH||!g.maxV)throw new Error("Invalid frame dimensions");const{components:e,componentsOrder:t}=g,i=[],r=g.samplesPerLine,o=g.scanLines;for(let C=0;C<t.length;C++){const s=e[t[C]];i.push({lines:Js(s),scaleX:s.h/g.maxH,scaleY:s.v/g.maxV})}const E=new Uint8Array(r*o*i.length);let B=0;for(let C=0;C<o;++C)for(let s=0;s<r;++s)for(let a=0;a<i.length;++a){const Q=i[a];E[B]=Q.lines[0|C*Q.scaleY][0|s*Q.scaleX],++B}return E}}class Ts extends VA{constructor(A){super(A),this.reader=new qs,A.JPEGTables&&this.reader.parse(A.JPEGTables)}decodeBlock(A){return this.reader.resetFrames(),this.reader.parse(new Uint8Array(A)),this.reader.getResult().buffer}}const Os=Object.freeze(Object.defineProperty({__proto__:null,default:Ts},Symbol.toStringTag,{value:"Module"}));function yg(I){let A=I.length;for(;--A>=0;)I[A]=0}const Vs=3,js=258,zi=29,Zs=256+1+zi,Wi=30,_s=512,Ps=new Array((Zs+2)*2);yg(Ps);const zs=new Array(Wi*2);yg(zs);const Ws=new Array(_s);yg(Ws);const Xs=new Array(js-Vs+1);yg(Xs);const $s=new Array(zi);yg($s);const AQ=new Array(Wi);yg(AQ);var me=(I,A,g,e)=>{let t=I&65535|0,i=I>>>16&65535|0,r=0;for(;g!==0;){r=g>2e3?2e3:g,g-=r;do t=t+A[e++]|0,i=i+t|0;while(--r);t%=65521,i%=65521}return t|i<<16|0};const gQ=()=>{let I,A=[];for(var g=0;g<256;g++){I=g;for(var e=0;e<8;e++)I=I&1?3988292384^I>>>1:I>>>1;A[g]=I}return A},IQ=new Uint32Array(gQ());var JA=(I,A,g,e)=>{const t=IQ,i=e+g;I^=-1;for(let r=e;r<i;r++)I=I>>>8^t[(I^A[r])&255];return I^-1},Re={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"},Xi={Z_NO_FLUSH:0,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_DEFLATED:8};const eQ=(I,A)=>Object.prototype.hasOwnProperty.call(I,A);var tQ=function(I){const A=Array.prototype.slice.call(arguments,1);for(;A.length;){const g=A.shift();if(g){if(typeof g!="object")throw new TypeError(g+"must be non-object");for(const e in g)eQ(g,e)&&(I[e]=g[e])}}return I},iQ=I=>{let A=0;for(let e=0,t=I.length;e<t;e++)A+=I[e].length;const g=new Uint8Array(A);for(let e=0,t=0,i=I.length;e<i;e++){let r=I[e];g.set(r,t),t+=r.length}return g},$i={assign:tQ,flattenChunks:iQ};let AC=!0;try{String.fromCharCode.apply(null,new Uint8Array(1))}catch{AC=!1}const vg=new Uint8Array(256);for(let I=0;I<256;I++)vg[I]=I>=252?6:I>=248?5:I>=240?4:I>=224?3:I>=192?2:1;vg[254]=vg[254]=1;var CQ=I=>{if(typeof TextEncoder=="function"&&TextEncoder.prototype.encode)return new TextEncoder().encode(I);let A,g,e,t,i,r=I.length,o=0;for(t=0;t<r;t++)g=I.charCodeAt(t),(g&64512)===55296&&t+1<r&&(e=I.charCodeAt(t+1),(e&64512)===56320&&(g=65536+(g-55296<<10)+(e-56320),t++)),o+=g<128?1:g<2048?2:g<65536?3:4;for(A=new Uint8Array(o),i=0,t=0;i<o;t++)g=I.charCodeAt(t),(g&64512)===55296&&t+1<r&&(e=I.charCodeAt(t+1),(e&64512)===56320&&(g=65536+(g-55296<<10)+(e-56320),t++)),g<128?A[i++]=g:g<2048?(A[i++]=192|g>>>6,A[i++]=128|g&63):g<65536?(A[i++]=224|g>>>12,A[i++]=128|g>>>6&63,A[i++]=128|g&63):(A[i++]=240|g>>>18,A[i++]=128|g>>>12&63,A[i++]=128|g>>>6&63,A[i++]=128|g&63);return A};const BQ=(I,A)=>{if(A<65534&&I.subarray&&AC)return String.fromCharCode.apply(null,I.length===A?I:I.subarray(0,A));let g="";for(let e=0;e<A;e++)g+=String.fromCharCode(I[e]);return g};var oQ=(I,A)=>{const g=A||I.length;if(typeof TextDecoder=="function"&&TextDecoder.prototype.decode)return new TextDecoder().decode(I.subarray(0,A));let e,t;const i=new Array(g*2);for(t=0,e=0;e<g;){let r=I[e++];if(r<128){i[t++]=r;continue}let o=vg[r];if(o>4){i[t++]=65533,e+=o-1;continue}for(r&=o===2?31:o===3?15:7;o>1&&e<g;)r=r<<6|I[e++]&63,o--;if(o>1){i[t++]=65533;continue}r<65536?i[t++]=r:(r-=65536,i[t++]=55296|r>>10&1023,i[t++]=56320|r&1023)}return BQ(i,t)},rQ=(I,A)=>{A=A||I.length,A>I.length&&(A=I.length);let g=A-1;for(;g>=0&&(I[g]&192)===128;)g--;return g<0||g===0?A:g+vg[I[g]]>A?g:A},Ue={string2buf:CQ,buf2string:oQ,utf8border:rQ};function sQ(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}var QQ=sQ;const uI=16209,EQ=16191;var aQ=function(A,g){let e,t,i,r,o,E,B,C,s,a,Q,n,f,c,h,w,D,d,y,S,l,G,F,k;const m=A.state;e=A.next_in,F=A.input,t=e+(A.avail_in-5),i=A.next_out,k=A.output,r=i-(g-A.avail_out),o=i+(A.avail_out-257),E=m.dmax,B=m.wsize,C=m.whave,s=m.wnext,a=m.window,Q=m.hold,n=m.bits,f=m.lencode,c=m.distcode,h=(1<<m.lenbits)-1,w=(1<<m.distbits)-1;A:do{n<15&&(Q+=F[e++]<<n,n+=8,Q+=F[e++]<<n,n+=8),D=f[Q&h];g:for(;;){if(d=D>>>24,Q>>>=d,n-=d,d=D>>>16&255,d===0)k[i++]=D&65535;else if(d&16){y=D&65535,d&=15,d&&(n<d&&(Q+=F[e++]<<n,n+=8),y+=Q&(1<<d)-1,Q>>>=d,n-=d),n<15&&(Q+=F[e++]<<n,n+=8,Q+=F[e++]<<n,n+=8),D=c[Q&w];I:for(;;){if(d=D>>>24,Q>>>=d,n-=d,d=D>>>16&255,d&16){if(S=D&65535,d&=15,n<d&&(Q+=F[e++]<<n,n+=8,n<d&&(Q+=F[e++]<<n,n+=8)),S+=Q&(1<<d)-1,S>E){A.msg="invalid distance too far back",m.mode=uI;break A}if(Q>>>=d,n-=d,d=i-r,S>d){if(d=S-d,d>C&&m.sane){A.msg="invalid distance too far back",m.mode=uI;break A}if(l=0,G=a,s===0){if(l+=B-d,d<y){y-=d;do k[i++]=a[l++];while(--d);l=i-S,G=k}}else if(s<d){if(l+=B+s-d,d-=s,d<y){y-=d;do k[i++]=a[l++];while(--d);if(l=0,s<y){d=s,y-=d;do k[i++]=a[l++];while(--d);l=i-S,G=k}}}else if(l+=s-d,d<y){y-=d;do k[i++]=a[l++];while(--d);l=i-S,G=k}for(;y>2;)k[i++]=G[l++],k[i++]=G[l++],k[i++]=G[l++],y-=3;y&&(k[i++]=G[l++],y>1&&(k[i++]=G[l++]))}else{l=i-S;do k[i++]=k[l++],k[i++]=k[l++],k[i++]=k[l++],y-=3;while(y>2);y&&(k[i++]=k[l++],y>1&&(k[i++]=k[l++]))}}else if((d&64)===0){D=c[(D&65535)+(Q&(1<<d)-1)];continue I}else{A.msg="invalid distance code",m.mode=uI;break A}break}}else if((d&64)===0){D=f[(D&65535)+(Q&(1<<d)-1)];continue g}else if(d&32){m.mode=EQ;break A}else{A.msg="invalid literal/length code",m.mode=uI;break A}break}}while(e<t&&i<o);y=n>>3,e-=y,n-=y<<3,Q&=(1<<n)-1,A.next_in=e,A.next_out=i,A.avail_in=e<t?5+(t-e):5-(e-t),A.avail_out=i<o?257+(o-i):257-(i-o),m.hold=Q,m.bits=n};const Sg=15,gC=852,IC=592,eC=0,Me=1,tC=2,nQ=new Uint16Array([3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0]),cQ=new Uint8Array([16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78]),lQ=new Uint16Array([1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0]),hQ=new Uint8Array([16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64]);var Jg=(I,A,g,e,t,i,r,o)=>{const E=o.bits;let B=0,C=0,s=0,a=0,Q=0,n=0,f=0,c=0,h=0,w=0,D,d,y,S,l,G=null,F;const k=new Uint16Array(Sg+1),m=new Uint16Array(Sg+1);let M=null,N,b,U;for(B=0;B<=Sg;B++)k[B]=0;for(C=0;C<e;C++)k[A[g+C]]++;for(Q=E,a=Sg;a>=1&&k[a]===0;a--);if(Q>a&&(Q=a),a===0)return t[i++]=1<<24|64<<16|0,t[i++]=1<<24|64<<16|0,o.bits=1,0;for(s=1;s<a&&k[s]===0;s++);for(Q<s&&(Q=s),c=1,B=1;B<=Sg;B++)if(c<<=1,c-=k[B],c<0)return-1;if(c>0&&(I===eC||a!==1))return-1;for(m[1]=0,B=1;B<Sg;B++)m[B+1]=m[B]+k[B];for(C=0;C<e;C++)A[g+C]!==0&&(r[m[A[g+C]]++]=C);if(I===eC?(G=M=r,F=20):I===Me?(G=nQ,M=cQ,F=257):(G=lQ,M=hQ,F=0),w=0,C=0,B=s,l=i,n=Q,f=0,y=-1,h=1<<Q,S=h-1,I===Me&&h>gC||I===tC&&h>IC)return 1;for(;;){N=B-f,r[C]+1<F?(b=0,U=r[C]):r[C]>=F?(b=M[r[C]-F],U=G[r[C]-F]):(b=96,U=0),D=1<<B-f,d=1<<n,s=d;do d-=D,t[l+(w>>f)+d]=N<<24|b<<16|U|0;while(d!==0);for(D=1<<B-1;w&D;)D>>=1;if(D!==0?(w&=D-1,w+=D):w=0,C++,--k[B]===0){if(B===a)break;B=A[g+r[C]]}if(B>Q&&(w&S)!==y){for(f===0&&(f=Q),l+=s,n=B-f,c=1<<n;n+f<a&&(c-=k[n+f],!(c<=0));)n++,c<<=1;if(h+=1<<n,I===Me&&h>gC||I===tC&&h>IC)return 1;y=w&S,t[y]=Q<<24|n<<16|l-i|0}}return w!==0&&(t[l+w]=B-f<<24|64<<16|0),o.bits=Q,0};const fQ=0,iC=1,CC=2,{Z_FINISH:BC,Z_BLOCK:dQ,Z_TREES:DI,Z_OK:Bg,Z_STREAM_END:uQ,Z_NEED_DICT:DQ,Z_STREAM_ERROR:UA,Z_DATA_ERROR:oC,Z_MEM_ERROR:rC,Z_BUF_ERROR:wQ,Z_DEFLATED:sC}=Xi,wI=16180,QC=16181,EC=16182,aC=16183,nC=16184,cC=16185,lC=16186,hC=16187,fC=16188,dC=16189,yI=16190,jA=16191,Ye=16192,uC=16193,be=16194,DC=16195,wC=16196,yC=16197,SC=16198,SI=16199,pI=16200,pC=16201,GC=16202,LC=16203,NC=16204,kC=16205,He=16206,FC=16207,mC=16208,dA=16209,RC=16210,UC=16211,yQ=852,SQ=592,pQ=15,MC=I=>(I>>>24&255)+(I>>>8&65280)+((I&65280)<<8)+((I&255)<<24);function GQ(){this.strm=null,this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}const og=I=>{if(!I)return 1;const A=I.state;return!A||A.strm!==I||A.mode<wI||A.mode>UC?1:0},YC=I=>{if(og(I))return UA;const A=I.state;return I.total_in=I.total_out=A.total=0,I.msg="",A.wrap&&(I.adler=A.wrap&1),A.mode=wI,A.last=0,A.havedict=0,A.flags=-1,A.dmax=32768,A.head=null,A.hold=0,A.bits=0,A.lencode=A.lendyn=new Int32Array(yQ),A.distcode=A.distdyn=new Int32Array(SQ),A.sane=1,A.back=-1,Bg},bC=I=>{if(og(I))return UA;const A=I.state;return A.wsize=0,A.whave=0,A.wnext=0,YC(I)},HC=(I,A)=>{let g;if(og(I))return UA;const e=I.state;return A<0?(g=0,A=-A):(g=(A>>4)+5,A<48&&(A&=15)),A&&(A<8||A>15)?UA:(e.window!==null&&e.wbits!==A&&(e.window=null),e.wrap=g,e.wbits=A,bC(I))},KC=(I,A)=>{if(!I)return UA;const g=new GQ;I.state=g,g.strm=I,g.window=null,g.mode=wI;const e=HC(I,A);return e!==Bg&&(I.state=null),e},LQ=I=>KC(I,pQ);let xC=!0,Ke,xe;const NQ=I=>{if(xC){Ke=new Int32Array(512),xe=new Int32Array(32);let A=0;for(;A<144;)I.lens[A++]=8;for(;A<256;)I.lens[A++]=9;for(;A<280;)I.lens[A++]=7;for(;A<288;)I.lens[A++]=8;for(Jg(iC,I.lens,0,288,Ke,0,I.work,{bits:9}),A=0;A<32;)I.lens[A++]=5;Jg(CC,I.lens,0,32,xe,0,I.work,{bits:5}),xC=!1}I.lencode=Ke,I.lenbits=9,I.distcode=xe,I.distbits=5},vC=(I,A,g,e)=>{let t;const i=I.state;return i.window===null&&(i.wsize=1<<i.wbits,i.wnext=0,i.whave=0,i.window=new Uint8Array(i.wsize)),e>=i.wsize?(i.window.set(A.subarray(g-i.wsize,g),0),i.wnext=0,i.whave=i.wsize):(t=i.wsize-i.wnext,t>e&&(t=e),i.window.set(A.subarray(g-e,g-e+t),i.wnext),e-=t,e?(i.window.set(A.subarray(g-e,g),0),i.wnext=e,i.whave=i.wsize):(i.wnext+=t,i.wnext===i.wsize&&(i.wnext=0),i.whave<i.wsize&&(i.whave+=t))),0},kQ=(I,A)=>{let g,e,t,i,r,o,E,B,C,s,a,Q,n,f,c=0,h,w,D,d,y,S,l,G;const F=new Uint8Array(4);let k,m;const M=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(og(I)||!I.output||!I.input&&I.avail_in!==0)return UA;g=I.state,g.mode===jA&&(g.mode=Ye),r=I.next_out,t=I.output,E=I.avail_out,i=I.next_in,e=I.input,o=I.avail_in,B=g.hold,C=g.bits,s=o,a=E,G=Bg;A:for(;;)switch(g.mode){case wI:if(g.wrap===0){g.mode=Ye;break}for(;C<16;){if(o===0)break A;o--,B+=e[i++]<<C,C+=8}if(g.wrap&2&&B===35615){g.wbits===0&&(g.wbits=15),g.check=0,F[0]=B&255,F[1]=B>>>8&255,g.check=JA(g.check,F,2,0),B=0,C=0,g.mode=QC;break}if(g.head&&(g.head.done=!1),!(g.wrap&1)||(((B&255)<<8)+(B>>8))%31){I.msg="incorrect header check",g.mode=dA;break}if((B&15)!==sC){I.msg="unknown compression method",g.mode=dA;break}if(B>>>=4,C-=4,l=(B&15)+8,g.wbits===0&&(g.wbits=l),l>15||l>g.wbits){I.msg="invalid window size",g.mode=dA;break}g.dmax=1<<g.wbits,g.flags=0,I.adler=g.check=1,g.mode=B&512?dC:jA,B=0,C=0;break;case QC:for(;C<16;){if(o===0)break A;o--,B+=e[i++]<<C,C+=8}if(g.flags=B,(g.flags&255)!==sC){I.msg="unknown compression method",g.mode=dA;break}if(g.flags&57344){I.msg="unknown header flags set",g.mode=dA;break}g.head&&(g.head.text=B>>8&1),g.flags&512&&g.wrap&4&&(F[0]=B&255,F[1]=B>>>8&255,g.check=JA(g.check,F,2,0)),B=0,C=0,g.mode=EC;case EC:for(;C<32;){if(o===0)break A;o--,B+=e[i++]<<C,C+=8}g.head&&(g.head.time=B),g.flags&512&&g.wrap&4&&(F[0]=B&255,F[1]=B>>>8&255,F[2]=B>>>16&255,F[3]=B>>>24&255,g.check=JA(g.check,F,4,0)),B=0,C=0,g.mode=aC;case aC:for(;C<16;){if(o===0)break A;o--,B+=e[i++]<<C,C+=8}g.head&&(g.head.xflags=B&255,g.head.os=B>>8),g.flags&512&&g.wrap&4&&(F[0]=B&255,F[1]=B>>>8&255,g.check=JA(g.check,F,2,0)),B=0,C=0,g.mode=nC;case nC:if(g.flags&1024){for(;C<16;){if(o===0)break A;o--,B+=e[i++]<<C,C+=8}g.length=B,g.head&&(g.head.extra_len=B),g.flags&512&&g.wrap&4&&(F[0]=B&255,F[1]=B>>>8&255,g.check=JA(g.check,F,2,0)),B=0,C=0}else g.head&&(g.head.extra=null);g.mode=cC;case cC:if(g.flags&1024&&(Q=g.length,Q>o&&(Q=o),Q&&(g.head&&(l=g.head.extra_len-g.length,g.head.extra||(g.head.extra=new Uint8Array(g.head.extra_len)),g.head.extra.set(e.subarray(i,i+Q),l)),g.flags&512&&g.wrap&4&&(g.check=JA(g.check,e,Q,i)),o-=Q,i+=Q,g.length-=Q),g.length))break A;g.length=0,g.mode=lC;case lC:if(g.flags&2048){if(o===0)break A;Q=0;do l=e[i+Q++],g.head&&l&&g.length<65536&&(g.head.name+=String.fromCharCode(l));while(l&&Q<o);if(g.flags&512&&g.wrap&4&&(g.check=JA(g.check,e,Q,i)),o-=Q,i+=Q,l)break A}else g.head&&(g.head.name=null);g.length=0,g.mode=hC;case hC:if(g.flags&4096){if(o===0)break A;Q=0;do l=e[i+Q++],g.head&&l&&g.length<65536&&(g.head.comment+=String.fromCharCode(l));while(l&&Q<o);if(g.flags&512&&g.wrap&4&&(g.check=JA(g.check,e,Q,i)),o-=Q,i+=Q,l)break A}else g.head&&(g.head.comment=null);g.mode=fC;case fC:if(g.flags&512){for(;C<16;){if(o===0)break A;o--,B+=e[i++]<<C,C+=8}if(g.wrap&4&&B!==(g.check&65535)){I.msg="header crc mismatch",g.mode=dA;break}B=0,C=0}g.head&&(g.head.hcrc=g.flags>>9&1,g.head.done=!0),I.adler=g.check=0,g.mode=jA;break;case dC:for(;C<32;){if(o===0)break A;o--,B+=e[i++]<<C,C+=8}I.adler=g.check=MC(B),B=0,C=0,g.mode=yI;case yI:if(g.havedict===0)return I.next_out=r,I.avail_out=E,I.next_in=i,I.avail_in=o,g.hold=B,g.bits=C,DQ;I.adler=g.check=1,g.mode=jA;case jA:if(A===dQ||A===DI)break A;case Ye:if(g.last){B>>>=C&7,C-=C&7,g.mode=He;break}for(;C<3;){if(o===0)break A;o--,B+=e[i++]<<C,C+=8}switch(g.last=B&1,B>>>=1,C-=1,B&3){case 0:g.mode=uC;break;case 1:if(NQ(g),g.mode=SI,A===DI){B>>>=2,C-=2;break A}break;case 2:g.mode=wC;break;case 3:I.msg="invalid block type",g.mode=dA}B>>>=2,C-=2;break;case uC:for(B>>>=C&7,C-=C&7;C<32;){if(o===0)break A;o--,B+=e[i++]<<C,C+=8}if((B&65535)!==(B>>>16^65535)){I.msg="invalid stored block lengths",g.mode=dA;break}if(g.length=B&65535,B=0,C=0,g.mode=be,A===DI)break A;case be:g.mode=DC;case DC:if(Q=g.length,Q){if(Q>o&&(Q=o),Q>E&&(Q=E),Q===0)break A;t.set(e.subarray(i,i+Q),r),o-=Q,i+=Q,E-=Q,r+=Q,g.length-=Q;break}g.mode=jA;break;case wC:for(;C<14;){if(o===0)break A;o--,B+=e[i++]<<C,C+=8}if(g.nlen=(B&31)+257,B>>>=5,C-=5,g.ndist=(B&31)+1,B>>>=5,C-=5,g.ncode=(B&15)+4,B>>>=4,C-=4,g.nlen>286||g.ndist>30){I.msg="too many length or distance symbols",g.mode=dA;break}g.have=0,g.mode=yC;case yC:for(;g.have<g.ncode;){for(;C<3;){if(o===0)break A;o--,B+=e[i++]<<C,C+=8}g.lens[M[g.have++]]=B&7,B>>>=3,C-=3}for(;g.have<19;)g.lens[M[g.have++]]=0;if(g.lencode=g.lendyn,g.lenbits=7,k={bits:g.lenbits},G=Jg(fQ,g.lens,0,19,g.lencode,0,g.work,k),g.lenbits=k.bits,G){I.msg="invalid code lengths set",g.mode=dA;break}g.have=0,g.mode=SC;case SC:for(;g.have<g.nlen+g.ndist;){for(;c=g.lencode[B&(1<<g.lenbits)-1],h=c>>>24,w=c>>>16&255,D=c&65535,!(h<=C);){if(o===0)break A;o--,B+=e[i++]<<C,C+=8}if(D<16)B>>>=h,C-=h,g.lens[g.have++]=D;else{if(D===16){for(m=h+2;C<m;){if(o===0)break A;o--,B+=e[i++]<<C,C+=8}if(B>>>=h,C-=h,g.have===0){I.msg="invalid bit length repeat",g.mode=dA;break}l=g.lens[g.have-1],Q=3+(B&3),B>>>=2,C-=2}else if(D===17){for(m=h+3;C<m;){if(o===0)break A;o--,B+=e[i++]<<C,C+=8}B>>>=h,C-=h,l=0,Q=3+(B&7),B>>>=3,C-=3}else{for(m=h+7;C<m;){if(o===0)break A;o--,B+=e[i++]<<C,C+=8}B>>>=h,C-=h,l=0,Q=11+(B&127),B>>>=7,C-=7}if(g.have+Q>g.nlen+g.ndist){I.msg="invalid bit length repeat",g.mode=dA;break}for(;Q--;)g.lens[g.have++]=l}}if(g.mode===dA)break;if(g.lens[256]===0){I.msg="invalid code -- missing end-of-block",g.mode=dA;break}if(g.lenbits=9,k={bits:g.lenbits},G=Jg(iC,g.lens,0,g.nlen,g.lencode,0,g.work,k),g.lenbits=k.bits,G){I.msg="invalid literal/lengths set",g.mode=dA;break}if(g.distbits=6,g.distcode=g.distdyn,k={bits:g.distbits},G=Jg(CC,g.lens,g.nlen,g.ndist,g.distcode,0,g.work,k),g.distbits=k.bits,G){I.msg="invalid distances set",g.mode=dA;break}if(g.mode=SI,A===DI)break A;case SI:g.mode=pI;case pI:if(o>=6&&E>=258){I.next_out=r,I.avail_out=E,I.next_in=i,I.avail_in=o,g.hold=B,g.bits=C,aQ(I,a),r=I.next_out,t=I.output,E=I.avail_out,i=I.next_in,e=I.input,o=I.avail_in,B=g.hold,C=g.bits,g.mode===jA&&(g.back=-1);break}for(g.back=0;c=g.lencode[B&(1<<g.lenbits)-1],h=c>>>24,w=c>>>16&255,D=c&65535,!(h<=C);){if(o===0)break A;o--,B+=e[i++]<<C,C+=8}if(w&&(w&240)===0){for(d=h,y=w,S=D;c=g.lencode[S+((B&(1<<d+y)-1)>>d)],h=c>>>24,w=c>>>16&255,D=c&65535,!(d+h<=C);){if(o===0)break A;o--,B+=e[i++]<<C,C+=8}B>>>=d,C-=d,g.back+=d}if(B>>>=h,C-=h,g.back+=h,g.length=D,w===0){g.mode=kC;break}if(w&32){g.back=-1,g.mode=jA;break}if(w&64){I.msg="invalid literal/length code",g.mode=dA;break}g.extra=w&15,g.mode=pC;case pC:if(g.extra){for(m=g.extra;C<m;){if(o===0)break A;o--,B+=e[i++]<<C,C+=8}g.length+=B&(1<<g.extra)-1,B>>>=g.extra,C-=g.extra,g.back+=g.extra}g.was=g.length,g.mode=GC;case GC:for(;c=g.distcode[B&(1<<g.distbits)-1],h=c>>>24,w=c>>>16&255,D=c&65535,!(h<=C);){if(o===0)break A;o--,B+=e[i++]<<C,C+=8}if((w&240)===0){for(d=h,y=w,S=D;c=g.distcode[S+((B&(1<<d+y)-1)>>d)],h=c>>>24,w=c>>>16&255,D=c&65535,!(d+h<=C);){if(o===0)break A;o--,B+=e[i++]<<C,C+=8}B>>>=d,C-=d,g.back+=d}if(B>>>=h,C-=h,g.back+=h,w&64){I.msg="invalid distance code",g.mode=dA;break}g.offset=D,g.extra=w&15,g.mode=LC;case LC:if(g.extra){for(m=g.extra;C<m;){if(o===0)break A;o--,B+=e[i++]<<C,C+=8}g.offset+=B&(1<<g.extra)-1,B>>>=g.extra,C-=g.extra,g.back+=g.extra}if(g.offset>g.dmax){I.msg="invalid distance too far back",g.mode=dA;break}g.mode=NC;case NC:if(E===0)break A;if(Q=a-E,g.offset>Q){if(Q=g.offset-Q,Q>g.whave&&g.sane){I.msg="invalid distance too far back",g.mode=dA;break}Q>g.wnext?(Q-=g.wnext,n=g.wsize-Q):n=g.wnext-Q,Q>g.length&&(Q=g.length),f=g.window}else f=t,n=r-g.offset,Q=g.length;Q>E&&(Q=E),E-=Q,g.length-=Q;do t[r++]=f[n++];while(--Q);g.length===0&&(g.mode=pI);break;case kC:if(E===0)break A;t[r++]=g.length,E--,g.mode=pI;break;case He:if(g.wrap){for(;C<32;){if(o===0)break A;o--,B|=e[i++]<<C,C+=8}if(a-=E,I.total_out+=a,g.total+=a,g.wrap&4&&a&&(I.adler=g.check=g.flags?JA(g.check,t,a,r-a):me(g.check,t,a,r-a)),a=E,g.wrap&4&&(g.flags?B:MC(B))!==g.check){I.msg="incorrect data check",g.mode=dA;break}B=0,C=0}g.mode=FC;case FC:if(g.wrap&&g.flags){for(;C<32;){if(o===0)break A;o--,B+=e[i++]<<C,C+=8}if(g.wrap&4&&B!==(g.total&4294967295)){I.msg="incorrect length check",g.mode=dA;break}B=0,C=0}g.mode=mC;case mC:G=uQ;break A;case dA:G=oC;break A;case RC:return rC;case UC:default:return UA}return I.next_out=r,I.avail_out=E,I.next_in=i,I.avail_in=o,g.hold=B,g.bits=C,(g.wsize||a!==I.avail_out&&g.mode<dA&&(g.mode<He||A!==BC))&&vC(I,I.output,I.next_out,a-I.avail_out),s-=I.avail_in,a-=I.avail_out,I.total_in+=s,I.total_out+=a,g.total+=a,g.wrap&4&&a&&(I.adler=g.check=g.flags?JA(g.check,t,a,I.next_out-a):me(g.check,t,a,I.next_out-a)),I.data_type=g.bits+(g.last?64:0)+(g.mode===jA?128:0)+(g.mode===SI||g.mode===be?256:0),(s===0&&a===0||A===BC)&&G===Bg&&(G=wQ),G},FQ=I=>{if(og(I))return UA;let A=I.state;return A.window&&(A.window=null),I.state=null,Bg},mQ=(I,A)=>{if(og(I))return UA;const g=I.state;return(g.wrap&2)===0?UA:(g.head=A,A.done=!1,Bg)},RQ=(I,A)=>{const g=A.length;let e,t,i;return og(I)||(e=I.state,e.wrap!==0&&e.mode!==yI)?UA:e.mode===yI&&(t=1,t=me(t,A,g,0),t!==e.check)?oC:(i=vC(I,A,g,g),i?(e.mode=RC,rC):(e.havedict=1,Bg))};var UQ=bC,MQ=HC,YQ=YC,bQ=LQ,HQ=KC,KQ=kQ,xQ=FQ,vQ=mQ,JQ=RQ,qQ="pako inflate (from Nodeca project)",ZA={inflateReset:UQ,inflateReset2:MQ,inflateResetKeep:YQ,inflateInit:bQ,inflateInit2:HQ,inflate:KQ,inflateEnd:xQ,inflateGetHeader:vQ,inflateSetDictionary:JQ,inflateInfo:qQ};function TQ(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}var OQ=TQ;const JC=Object.prototype.toString,{Z_NO_FLUSH:VQ,Z_FINISH:jQ,Z_OK:qg,Z_STREAM_END:ve,Z_NEED_DICT:Je,Z_STREAM_ERROR:ZQ,Z_DATA_ERROR:qC,Z_MEM_ERROR:_Q}=Xi;function GI(I){this.options=$i.assign({chunkSize:65536,windowBits:15,to:""},I||{});const A=this.options;A.raw&&A.windowBits>=0&&A.windowBits<16&&(A.windowBits=-A.windowBits,A.windowBits===0&&(A.windowBits=-15)),A.windowBits>=0&&A.windowBits<16&&!(I&&I.windowBits)&&(A.windowBits+=32),A.windowBits>15&&A.windowBits<48&&(A.windowBits&15)===0&&(A.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new QQ,this.strm.avail_out=0;let g=ZA.inflateInit2(this.strm,A.windowBits);if(g!==qg)throw new Error(Re[g]);if(this.header=new OQ,ZA.inflateGetHeader(this.strm,this.header),A.dictionary&&(typeof A.dictionary=="string"?A.dictionary=Ue.string2buf(A.dictionary):JC.call(A.dictionary)==="[object ArrayBuffer]"&&(A.dictionary=new Uint8Array(A.dictionary)),A.raw&&(g=ZA.inflateSetDictionary(this.strm,A.dictionary),g!==qg)))throw new Error(Re[g])}GI.prototype.push=function(I,A){const g=this.strm,e=this.options.chunkSize,t=this.options.dictionary;let i,r,o;if(this.ended)return!1;for(A===~~A?r=A:r=A===!0?jQ:VQ,JC.call(I)==="[object ArrayBuffer]"?g.input=new Uint8Array(I):g.input=I,g.next_in=0,g.avail_in=g.input.length;;){for(g.avail_out===0&&(g.output=new Uint8Array(e),g.next_out=0,g.avail_out=e),i=ZA.inflate(g,r),i===Je&&t&&(i=ZA.inflateSetDictionary(g,t),i===qg?i=ZA.inflate(g,r):i===qC&&(i=Je));g.avail_in>0&&i===ve&&g.state.wrap>0&&I[g.next_in]!==0;)ZA.inflateReset(g),i=ZA.inflate(g,r);switch(i){case ZQ:case qC:case Je:case _Q:return this.onEnd(i),this.ended=!0,!1}if(o=g.avail_out,g.next_out&&(g.avail_out===0||i===ve))if(this.options.to==="string"){let E=Ue.utf8border(g.output,g.next_out),B=g.next_out-E,C=Ue.buf2string(g.output,E);g.next_out=B,g.avail_out=e-B,B&&g.output.set(g.output.subarray(E,E+B),0),this.onData(C)}else this.onData(g.output.length===g.next_out?g.output:g.output.subarray(0,g.next_out));if(!(i===qg&&o===0)){if(i===ve)return i=ZA.inflateEnd(this.strm),this.onEnd(i),this.ended=!0,!0;if(g.avail_in===0)break}}return!0},GI.prototype.onData=function(I){this.chunks.push(I)},GI.prototype.onEnd=function(I){I===qg&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=$i.flattenChunks(this.chunks)),this.chunks=[],this.err=I,this.msg=this.strm.msg};function PQ(I,A){const g=new GI(A);if(g.push(I),g.err)throw g.msg||Re[g.err];return g.result}var zQ=PQ,WQ={inflate:zQ};const{inflate:XQ}=WQ;var TC=XQ;class $Q extends VA{decodeBlock(A){return TC(new Uint8Array(A)).buffer}}const AE=Object.freeze(Object.defineProperty({__proto__:null,default:$Q},Symbol.toStringTag,{value:"Module"}));class gE extends VA{decodeBlock(A){const g=new DataView(A),e=[];for(let t=0;t<A.byteLength;++t){let i=g.getInt8(t);if(i<0){const r=g.getUint8(t+1);i=-i;for(let o=0;o<=i;++o)e.push(r);t+=1}else{for(let r=0;r<=i;++r)e.push(g.getUint8(t+r+1));t+=i+1}}return new Uint8Array(e).buffer}}const IE=Object.freeze(Object.defineProperty({__proto__:null,default:gE},Symbol.toStringTag,{value:"Module"}));var qe={exports:{}},OC;function eE(){return OC||(OC=1,(function(I){/* Copyright 2015-2021 Esri. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 @preserve */(function(){var A=(function(){var i={};i.defaultNoDataValue=-34027999387901484e22,i.decode=function(s,a){a=a||{};var Q=a.encodedMaskData||a.encodedMaskData===null,n=B(s,a.inputOffset||0,Q),f=a.noDataValue!==null?a.noDataValue:i.defaultNoDataValue,c=r(n,a.pixelType||Float32Array,a.encodedMaskData,f,a.returnMask),h={width:n.width,height:n.height,pixelData:c.resultPixels,minValue:c.minValue,maxValue:n.pixels.maxValue,noDataValue:f};return c.resultMask&&(h.maskData=c.resultMask),a.returnEncodedMask&&n.mask&&(h.encodedMaskData=n.mask.bitset?n.mask.bitset:null),a.returnFileInfo&&(h.fileInfo=o(n),a.computeUsedBitDepths&&(h.fileInfo.bitDepths=E(n))),h};var r=function(s,a,Q,n,f){var c=0,h=s.pixels.numBlocksX,w=s.pixels.numBlocksY,D=Math.floor(s.width/h),d=Math.floor(s.height/w),y=2*s.maxZError,S=Number.MAX_VALUE,l;Q=Q||(s.mask?s.mask.bitset:null);var G,F;G=new a(s.width*s.height),f&&Q&&(F=new Uint8Array(s.width*s.height));for(var k=new Float32Array(D*d),m,M,N=0;N<=w;N++){var b=N!==w?d:s.height%w;if(b!==0)for(var U=0;U<=h;U++){var R=U!==h?D:s.width%h;if(R!==0){var H=N*s.width*d+U*D,T=s.width-R,V=s.pixels.blocks[c],P,q,v;V.encoding<2?(V.encoding===0?P=V.rawData:(C(V.stuffedData,V.bitsPerPixel,V.numValidPixels,V.offset,y,k,s.pixels.maxValue),P=k),q=0):V.encoding===2?v=0:v=V.offset;var Z;if(Q)for(M=0;M<b;M++){for(H&7&&(Z=Q[H>>3],Z<<=H&7),m=0;m<R;m++)H&7||(Z=Q[H>>3]),Z&128?(F&&(F[H]=1),l=V.encoding<2?P[q++]:v,S=S>l?l:S,G[H++]=l):(F&&(F[H]=0),G[H++]=n),Z<<=1;H+=T}else if(V.encoding<2)for(M=0;M<b;M++){for(m=0;m<R;m++)l=P[q++],S=S>l?l:S,G[H++]=l;H+=T}else for(S=S>v?v:S,M=0;M<b;M++){for(m=0;m<R;m++)G[H++]=v;H+=T}if(V.encoding===1&&q!==V.numValidPixels)throw"Block and Mask do not match";c++}}}return{resultPixels:G,resultMask:F,minValue:S}},o=function(s){return{fileIdentifierString:s.fileIdentifierString,fileVersion:s.fileVersion,imageType:s.imageType,height:s.height,width:s.width,maxZError:s.maxZError,eofOffset:s.eofOffset,mask:s.mask?{numBlocksX:s.mask.numBlocksX,numBlocksY:s.mask.numBlocksY,numBytes:s.mask.numBytes,maxValue:s.mask.maxValue}:null,pixels:{numBlocksX:s.pixels.numBlocksX,numBlocksY:s.pixels.numBlocksY,numBytes:s.pixels.numBytes,maxValue:s.pixels.maxValue,noDataValue:s.noDataValue}}},E=function(s){for(var a=s.pixels.numBlocksX*s.pixels.numBlocksY,Q={},n=0;n<a;n++){var f=s.pixels.blocks[n];f.encoding===0?Q.float32=!0:f.encoding===1?Q[f.bitsPerPixel]=!0:Q[0]=!0}return Object.keys(Q)},B=function(s,a,Q){var n={},f=new Uint8Array(s,a,10);if(n.fileIdentifierString=String.fromCharCode.apply(null,f),n.fileIdentifierString.trim()!=="CntZImage")throw"Unexpected file identifier string: "+n.fileIdentifierString;a+=10;var c=new DataView(s,a,24);if(n.fileVersion=c.getInt32(0,!0),n.imageType=c.getInt32(4,!0),n.height=c.getUint32(8,!0),n.width=c.getUint32(12,!0),n.maxZError=c.getFloat64(16,!0),a+=24,!Q)if(c=new DataView(s,a,16),n.mask={},n.mask.numBlocksY=c.getUint32(0,!0),n.mask.numBlocksX=c.getUint32(4,!0),n.mask.numBytes=c.getUint32(8,!0),n.mask.maxValue=c.getFloat32(12,!0),a+=16,n.mask.numBytes>0){var h=new Uint8Array(Math.ceil(n.width*n.height/8));c=new DataView(s,a,n.mask.numBytes);var w=c.getInt16(0,!0),D=2,d=0;do{if(w>0)for(;w--;)h[d++]=c.getUint8(D++);else{var y=c.getUint8(D++);for(w=-w;w--;)h[d++]=y}w=c.getInt16(D,!0),D+=2}while(D<n.mask.numBytes);if(w!==-32768||d<h.length)throw"Unexpected end of mask RLE encoding";n.mask.bitset=h,a+=n.mask.numBytes}else(n.mask.numBytes|n.mask.numBlocksY|n.mask.maxValue)===0&&(n.mask.bitset=new Uint8Array(Math.ceil(n.width*n.height/8)));c=new DataView(s,a,16),n.pixels={},n.pixels.numBlocksY=c.getUint32(0,!0),n.pixels.numBlocksX=c.getUint32(4,!0),n.pixels.numBytes=c.getUint32(8,!0),n.pixels.maxValue=c.getFloat32(12,!0),a+=16;var S=n.pixels.numBlocksX,l=n.pixels.numBlocksY,G=S+(n.width%S>0?1:0),F=l+(n.height%l>0?1:0);n.pixels.blocks=new Array(G*F);for(var k=0,m=0;m<F;m++)for(var M=0;M<G;M++){var N=0,b=s.byteLength-a;c=new DataView(s,a,Math.min(10,b));var U={};n.pixels.blocks[k++]=U;var R=c.getUint8(0);if(N++,U.encoding=R&63,U.encoding>3)throw"Invalid block encoding ("+U.encoding+")";if(U.encoding===2){a++;continue}if(R!==0&&R!==2){if(R>>=6,U.offsetType=R,R===2)U.offset=c.getInt8(1),N++;else if(R===1)U.offset=c.getInt16(1,!0),N+=2;else if(R===0)U.offset=c.getFloat32(1,!0),N+=4;else throw"Invalid block offset type";if(U.encoding===1)if(R=c.getUint8(N),N++,U.bitsPerPixel=R&63,R>>=6,U.numValidPixelsType=R,R===2)U.numValidPixels=c.getUint8(N),N++;else if(R===1)U.numValidPixels=c.getUint16(N,!0),N+=2;else if(R===0)U.numValidPixels=c.getUint32(N,!0),N+=4;else throw"Invalid valid pixel count type"}if(a+=N,U.encoding!==3){var H,T;if(U.encoding===0){var V=(n.pixels.numBytes-1)/4;if(V!==Math.floor(V))throw"uncompressed block has invalid length";H=new ArrayBuffer(V*4),T=new Uint8Array(H),T.set(new Uint8Array(s,a,V*4));var P=new Float32Array(H);U.rawData=P,a+=V*4}else if(U.encoding===1){var q=Math.ceil(U.numValidPixels*U.bitsPerPixel/8),v=Math.ceil(q/4);H=new ArrayBuffer(v*4),T=new Uint8Array(H),T.set(new Uint8Array(s,a,q)),U.stuffedData=new Uint32Array(H),a+=q}}}return n.eofOffset=a,n},C=function(s,a,Q,n,f,c,h){var w=(1<<a)-1,D=0,d,y=0,S,l,G=Math.ceil((h-n)/f),F=s.length*4-Math.ceil(a*Q/8);for(s[s.length-1]<<=8*F,d=0;d<Q;d++){if(y===0&&(l=s[D++],y=32),y>=a)S=l>>>y-a&w,y-=a;else{var k=a-y;S=(l&w)<<k&w,l=s[D++],y=32-k,S+=l>>>y}c[d]=S<G?n+S*f:h}return c};return i})(),g=(function(){var i={unstuff:function(B,C,s,a,Q,n,f,c){var h=(1<<s)-1,w=0,D,d=0,y,S,l,G,F=B.length*4-Math.ceil(s*a/8);if(B[B.length-1]<<=8*F,Q)for(D=0;D<a;D++)d===0&&(S=B[w++],d=32),d>=s?(y=S>>>d-s&h,d-=s):(l=s-d,y=(S&h)<<l&h,S=B[w++],d=32-l,y+=S>>>d),C[D]=Q[y];else for(G=Math.ceil((c-n)/f),D=0;D<a;D++)d===0&&(S=B[w++],d=32),d>=s?(y=S>>>d-s&h,d-=s):(l=s-d,y=(S&h)<<l&h,S=B[w++],d=32-l,y+=S>>>d),C[D]=y<G?n+y*f:c},unstuffLUT:function(B,C,s,a,Q,n){var f=(1<<C)-1,c=0,h=0,w=0,D=0,d=0,y,S=[],l=B.length*4-Math.ceil(C*s/8);B[B.length-1]<<=8*l;var G=Math.ceil((n-a)/Q);for(h=0;h<s;h++)D===0&&(y=B[c++],D=32),D>=C?(d=y>>>D-C&f,D-=C):(w=C-D,d=(y&f)<<w&f,y=B[c++],D=32-w,d+=y>>>D),S[h]=d<G?a+d*Q:n;return S.unshift(a),S},unstuff2:function(B,C,s,a,Q,n,f,c){var h=(1<<s)-1,w=0,D,d=0,y=0,S,l,G;if(Q)for(D=0;D<a;D++)d===0&&(l=B[w++],d=32,y=0),d>=s?(S=l>>>y&h,d-=s,y+=s):(G=s-d,S=l>>>y&h,l=B[w++],d=32-G,S|=(l&(1<<G)-1)<<s-G,y=G),C[D]=Q[S];else{var F=Math.ceil((c-n)/f);for(D=0;D<a;D++)d===0&&(l=B[w++],d=32,y=0),d>=s?(S=l>>>y&h,d-=s,y+=s):(G=s-d,S=l>>>y&h,l=B[w++],d=32-G,S|=(l&(1<<G)-1)<<s-G,y=G),C[D]=S<F?n+S*f:c}return C},unstuffLUT2:function(B,C,s,a,Q,n){var f=(1<<C)-1,c=0,h=0,w=0,D=0,d=0,y=0,S,l=[],G=Math.ceil((n-a)/Q);for(h=0;h<s;h++)D===0&&(S=B[c++],D=32,y=0),D>=C?(d=S>>>y&f,D-=C,y+=C):(w=C-D,d=S>>>y&f,S=B[c++],D=32-w,d|=(S&(1<<w)-1)<<C-w,y=w),l[h]=d<G?a+d*Q:n;return l.unshift(a),l},originalUnstuff:function(B,C,s,a){var Q=(1<<s)-1,n=0,f,c=0,h,w,D,d=B.length*4-Math.ceil(s*a/8);for(B[B.length-1]<<=8*d,f=0;f<a;f++)c===0&&(w=B[n++],c=32),c>=s?(h=w>>>c-s&Q,c-=s):(D=s-c,h=(w&Q)<<D&Q,w=B[n++],c=32-D,h+=w>>>c),C[f]=h;return C},originalUnstuff2:function(B,C,s,a){var Q=(1<<s)-1,n=0,f,c=0,h=0,w,D,d;for(f=0;f<a;f++)c===0&&(D=B[n++],c=32,h=0),c>=s?(w=D>>>h&Q,c-=s,h+=s):(d=s-c,w=D>>>h&Q,D=B[n++],c=32-d,w|=(D&(1<<d)-1)<<s-d,h=d),C[f]=w;return C}},r={HUFFMAN_LUT_BITS_MAX:12,computeChecksumFletcher32:function(B){for(var C=65535,s=65535,a=B.length,Q=Math.floor(a/2),n=0;Q;){var f=Q>=359?359:Q;Q-=f;do C+=B[n++]<<8,s+=C+=B[n++];while(--f);C=(C&65535)+(C>>>16),s=(s&65535)+(s>>>16)}return a&1&&(s+=C+=B[n]<<8),C=(C&65535)+(C>>>16),s=(s&65535)+(s>>>16),(s<<16|C)>>>0},readHeaderInfo:function(B,C){var s=C.ptr,a=new Uint8Array(B,s,6),Q={};if(Q.fileIdentifierString=String.fromCharCode.apply(null,a),Q.fileIdentifierString.lastIndexOf("Lerc2",0)!==0)throw"Unexpected file identifier string (expect Lerc2 ): "+Q.fileIdentifierString;s+=6;var n=new DataView(B,s,8),f=n.getInt32(0,!0);Q.fileVersion=f,s+=4,f>=3&&(Q.checksum=n.getUint32(4,!0),s+=4),n=new DataView(B,s,12),Q.height=n.getUint32(0,!0),Q.width=n.getUint32(4,!0),s+=8,f>=4?(Q.numDims=n.getUint32(8,!0),s+=4):Q.numDims=1,n=new DataView(B,s,40),Q.numValidPixel=n.getUint32(0,!0),Q.microBlockSize=n.getInt32(4,!0),Q.blobSize=n.getInt32(8,!0),Q.imageType=n.getInt32(12,!0),Q.maxZError=n.getFloat64(16,!0),Q.zMin=n.getFloat64(24,!0),Q.zMax=n.getFloat64(32,!0),s+=40,C.headerInfo=Q,C.ptr=s;var c,h;if(f>=3&&(h=f>=4?52:48,c=this.computeChecksumFletcher32(new Uint8Array(B,s-h,Q.blobSize-14)),c!==Q.checksum))throw"Checksum failed.";return!0},checkMinMaxRanges:function(B,C){var s=C.headerInfo,a=this.getDataTypeArray(s.imageType),Q=s.numDims*this.getDataTypeSize(s.imageType),n=this.readSubArray(B,C.ptr,a,Q),f=this.readSubArray(B,C.ptr+Q,a,Q);C.ptr+=2*Q;var c,h=!0;for(c=0;c<s.numDims;c++)if(n[c]!==f[c]){h=!1;break}return s.minValues=n,s.maxValues=f,h},readSubArray:function(B,C,s,a){var Q;if(s===Uint8Array)Q=new Uint8Array(B,C,a);else{var n=new ArrayBuffer(a),f=new Uint8Array(n);f.set(new Uint8Array(B,C,a)),Q=new s(n)}return Q},readMask:function(B,C){var s=C.ptr,a=C.headerInfo,Q=a.width*a.height,n=a.numValidPixel,f=new DataView(B,s,4),c={};if(c.numBytes=f.getUint32(0,!0),s+=4,(n===0||Q===n)&&c.numBytes!==0)throw"invalid mask";var h,w;if(n===0)h=new Uint8Array(Math.ceil(Q/8)),c.bitset=h,w=new Uint8Array(Q),C.pixels.resultMask=w,s+=c.numBytes;else if(c.numBytes>0){h=new Uint8Array(Math.ceil(Q/8)),f=new DataView(B,s,c.numBytes);var D=f.getInt16(0,!0),d=2,y=0,S=0;do{if(D>0)for(;D--;)h[y++]=f.getUint8(d++);else for(S=f.getUint8(d++),D=-D;D--;)h[y++]=S;D=f.getInt16(d,!0),d+=2}while(d<c.numBytes);if(D!==-32768||y<h.length)throw"Unexpected end of mask RLE encoding";w=new Uint8Array(Q);var l=0,G=0;for(G=0;G<Q;G++)G&7?(l=h[G>>3],l<<=G&7):l=h[G>>3],l&128&&(w[G]=1);C.pixels.resultMask=w,c.bitset=h,s+=c.numBytes}return C.ptr=s,C.mask=c,!0},readDataOneSweep:function(B,C,s,a){var Q=C.ptr,n=C.headerInfo,f=n.numDims,c=n.width*n.height,h=n.imageType,w=n.numValidPixel*r.getDataTypeSize(h)*f,D,d=C.pixels.resultMask;if(s===Uint8Array)D=new Uint8Array(B,Q,w);else{var y=new ArrayBuffer(w),S=new Uint8Array(y);S.set(new Uint8Array(B,Q,w)),D=new s(y)}if(D.length===c*f)a?C.pixels.resultPixels=r.swapDimensionOrder(D,c,f,s,!0):C.pixels.resultPixels=D;else{C.pixels.resultPixels=new s(c*f);var l=0,G=0,F=0,k=0;if(f>1){if(a){for(G=0;G<c;G++)if(d[G])for(k=G,F=0;F<f;F++,k+=c)C.pixels.resultPixels[k]=D[l++]}else for(G=0;G<c;G++)if(d[G])for(k=G*f,F=0;F<f;F++)C.pixels.resultPixels[k+F]=D[l++]}else for(G=0;G<c;G++)d[G]&&(C.pixels.resultPixels[G]=D[l++])}return Q+=w,C.ptr=Q,!0},readHuffmanTree:function(B,C){var s=this.HUFFMAN_LUT_BITS_MAX,a=new DataView(B,C.ptr,16);C.ptr+=16;var Q=a.getInt32(0,!0);if(Q<2)throw"unsupported Huffman version";var n=a.getInt32(4,!0),f=a.getInt32(8,!0),c=a.getInt32(12,!0);if(f>=c)return!1;var h=new Uint32Array(c-f);r.decodeBits(B,C,h);var w=[],D,d,y,S;for(D=f;D<c;D++)d=D-(D<n?0:n),w[d]={first:h[D-f],second:null};var l=B.byteLength-C.ptr,G=Math.ceil(l/4),F=new ArrayBuffer(G*4),k=new Uint8Array(F);k.set(new Uint8Array(B,C.ptr,l));var m=new Uint32Array(F),M=0,N,b=0;for(N=m[0],D=f;D<c;D++)d=D-(D<n?0:n),S=w[d].first,S>0&&(w[d].second=N<<M>>>32-S,32-M>=S?(M+=S,M===32&&(M=0,b++,N=m[b])):(M+=S-32,b++,N=m[b],w[d].second|=N>>>32-M));var U=0,R=0,H=new o;for(D=0;D<w.length;D++)w[D]!==void 0&&(U=Math.max(U,w[D].first));U>=s?R=s:R=U;var T=[],V,P,q,v,Z,K;for(D=f;D<c;D++)if(d=D-(D<n?0:n),S=w[d].first,S>0)if(V=[S,d],S<=R)for(P=w[d].second<<R-S,q=1<<R-S,y=0;y<q;y++)T[P|y]=V;else for(P=w[d].second,K=H,v=S-1;v>=0;v--)Z=P>>>v&1,Z?(K.right||(K.right=new o),K=K.right):(K.left||(K.left=new o),K=K.left),v===0&&!K.val&&(K.val=V[1]);return{decodeLut:T,numBitsLUTQick:R,numBitsLUT:U,tree:H,stuffedData:m,srcPtr:b,bitPos:M}},readHuffman:function(B,C,s,a){var Q=C.headerInfo,n=Q.numDims,f=C.headerInfo.height,c=C.headerInfo.width,h=c*f,w=this.readHuffmanTree(B,C),D=w.decodeLut,d=w.tree,y=w.stuffedData,S=w.srcPtr,l=w.bitPos,G=w.numBitsLUTQick,F=w.numBitsLUT,k=C.headerInfo.imageType===0?128:0,m,M,N,b=C.pixels.resultMask,U,R,H,T,V,P,q,v=0;l>0&&(S++,l=0);var Z=y[S],K=C.encodeMode===1,O=new s(h*n),x=O,W;if(n<2||K){for(W=0;W<n;W++)if(n>1&&(x=new s(O.buffer,h*W,h),v=0),C.headerInfo.numValidPixel===c*f)for(P=0,T=0;T<f;T++)for(V=0;V<c;V++,P++){if(M=0,U=Z<<l>>>32-G,R=U,32-l<G&&(U|=y[S+1]>>>64-l-G,R=U),D[R])M=D[R][1],l+=D[R][0];else for(U=Z<<l>>>32-F,R=U,32-l<F&&(U|=y[S+1]>>>64-l-F,R=U),m=d,q=0;q<F;q++)if(H=U>>>F-q-1&1,m=H?m.right:m.left,!(m.left||m.right)){M=m.val,l=l+q+1;break}l>=32&&(l-=32,S++,Z=y[S]),N=M-k,K?(V>0?N+=v:T>0?N+=x[P-c]:N+=v,N&=255,x[P]=N,v=N):x[P]=N}else for(P=0,T=0;T<f;T++)for(V=0;V<c;V++,P++)if(b[P]){if(M=0,U=Z<<l>>>32-G,R=U,32-l<G&&(U|=y[S+1]>>>64-l-G,R=U),D[R])M=D[R][1],l+=D[R][0];else for(U=Z<<l>>>32-F,R=U,32-l<F&&(U|=y[S+1]>>>64-l-F,R=U),m=d,q=0;q<F;q++)if(H=U>>>F-q-1&1,m=H?m.right:m.left,!(m.left||m.right)){M=m.val,l=l+q+1;break}l>=32&&(l-=32,S++,Z=y[S]),N=M-k,K?(V>0&&b[P-1]?N+=v:T>0&&b[P-c]?N+=x[P-c]:N+=v,N&=255,x[P]=N,v=N):x[P]=N}}else for(P=0,T=0;T<f;T++)for(V=0;V<c;V++)if(P=T*c+V,!b||b[P])for(W=0;W<n;W++,P+=h){if(M=0,U=Z<<l>>>32-G,R=U,32-l<G&&(U|=y[S+1]>>>64-l-G,R=U),D[R])M=D[R][1],l+=D[R][0];else for(U=Z<<l>>>32-F,R=U,32-l<F&&(U|=y[S+1]>>>64-l-F,R=U),m=d,q=0;q<F;q++)if(H=U>>>F-q-1&1,m=H?m.right:m.left,!(m.left||m.right)){M=m.val,l=l+q+1;break}l>=32&&(l-=32,S++,Z=y[S]),N=M-k,x[P]=N}C.ptr=C.ptr+(S+1)*4+(l>0?4:0),C.pixels.resultPixels=O,n>1&&!a&&(C.pixels.resultPixels=r.swapDimensionOrder(O,h,n,s))},decodeBits:function(B,C,s,a,Q){{var n=C.headerInfo,f=n.fileVersion,c=0,h=B.byteLength-C.ptr>=5?5:B.byteLength-C.ptr,w=new DataView(B,C.ptr,h),D=w.getUint8(0);c++;var d=D>>6,y=d===0?4:3-d,S=(D&32)>0,l=D&31,G=0;if(y===1)G=w.getUint8(c),c++;else if(y===2)G=w.getUint16(c,!0),c+=2;else if(y===4)G=w.getUint32(c,!0),c+=4;else throw"Invalid valid pixel count type";var F=2*n.maxZError,k,m,M,N,b,U,R,H,T,V=n.numDims>1?n.maxValues[Q]:n.zMax;if(S){for(C.counter.lut++,H=w.getUint8(c),c++,N=Math.ceil((H-1)*l/8),b=Math.ceil(N/4),m=new ArrayBuffer(b*4),M=new Uint8Array(m),C.ptr+=c,M.set(new Uint8Array(B,C.ptr,N)),R=new Uint32Array(m),C.ptr+=N,T=0;H-1>>>T;)T++;N=Math.ceil(G*T/8),b=Math.ceil(N/4),m=new ArrayBuffer(b*4),M=new Uint8Array(m),M.set(new Uint8Array(B,C.ptr,N)),k=new Uint32Array(m),C.ptr+=N,f>=3?U=i.unstuffLUT2(R,l,H-1,a,F,V):U=i.unstuffLUT(R,l,H-1,a,F,V),f>=3?i.unstuff2(k,s,T,G,U):i.unstuff(k,s,T,G,U)}else C.counter.bitstuffer++,T=l,C.ptr+=c,T>0&&(N=Math.ceil(G*T/8),b=Math.ceil(N/4),m=new ArrayBuffer(b*4),M=new Uint8Array(m),M.set(new Uint8Array(B,C.ptr,N)),k=new Uint32Array(m),C.ptr+=N,f>=3?a==null?i.originalUnstuff2(k,s,T,G):i.unstuff2(k,s,T,G,!1,a,F,V):a==null?i.originalUnstuff(k,s,T,G):i.unstuff(k,s,T,G,!1,a,F,V))}},readTiles:function(B,C,s,a){var Q=C.headerInfo,n=Q.width,f=Q.height,c=n*f,h=Q.microBlockSize,w=Q.imageType,D=r.getDataTypeSize(w),d=Math.ceil(n/h),y=Math.ceil(f/h);C.pixels.numBlocksY=y,C.pixels.numBlocksX=d,C.pixels.ptr=0;var S=0,l=0,G=0,F=0,k=0,m=0,M=0,N=0,b=0,U=0,R=0,H=0,T=0,V=0,P=0,q=0,v,Z,K,O,x,W,_=new s(h*h),gA=f%h||h,iA=n%h||h,AA,z,eA=Q.numDims,BA,IA=C.pixels.resultMask,rA=C.pixels.resultPixels,mA=Q.fileVersion,CA=mA>=5?14:15,QA,oA=Q.zMax,X;for(G=0;G<y;G++)for(k=G!==y-1?h:gA,F=0;F<d;F++)for(m=F!==d-1?h:iA,R=G*n*h+F*h,H=n-m,BA=0;BA<eA;BA++){if(eA>1?(X=rA,R=G*n*h+F*h,rA=new s(C.pixels.resultPixels.buffer,c*BA*D,c),oA=Q.maxValues[BA]):X=null,M=B.byteLength-C.ptr,v=new DataView(B,C.ptr,Math.min(10,M)),Z={},q=0,N=v.getUint8(0),q++,QA=Q.fileVersion>=5?N&4:0,b=N>>6&255,U=N>>2&CA,U!==(F*h>>3&CA)||QA&&BA===0)throw"integrity issue";if(W=N&3,W>3)throw C.ptr+=q,"Invalid block encoding ("+W+")";if(W===2){if(QA)if(IA)for(S=0;S<k;S++)for(l=0;l<m;l++)IA[R]&&(rA[R]=X[R]),R++;else for(S=0;S<k;S++)for(l=0;l<m;l++)rA[R]=X[R],R++;C.counter.constant++,C.ptr+=q;continue}else if(W===0){if(QA)throw"integrity issue";if(C.counter.uncompressed++,C.ptr+=q,T=k*m*D,V=B.byteLength-C.ptr,T=T<V?T:V,K=new ArrayBuffer(T%D===0?T:T+D-T%D),O=new Uint8Array(K),O.set(new Uint8Array(B,C.ptr,T)),x=new s(K),P=0,IA)for(S=0;S<k;S++){for(l=0;l<m;l++)IA[R]&&(rA[R]=x[P++]),R++;R+=H}else for(S=0;S<k;S++){for(l=0;l<m;l++)rA[R++]=x[P++];R+=H}C.ptr+=P*D}else if(AA=r.getDataTypeUsed(QA&&w<6?4:w,b),z=r.getOnePixel(Z,q,AA,v),q+=r.getDataTypeSize(AA),W===3)if(C.ptr+=q,C.counter.constantoffset++,IA)for(S=0;S<k;S++){for(l=0;l<m;l++)IA[R]&&(rA[R]=QA?Math.min(oA,X[R]+z):z),R++;R+=H}else for(S=0;S<k;S++){for(l=0;l<m;l++)rA[R]=QA?Math.min(oA,X[R]+z):z,R++;R+=H}else if(C.ptr+=q,r.decodeBits(B,C,_,z,BA),q=0,QA)if(IA)for(S=0;S<k;S++){for(l=0;l<m;l++)IA[R]&&(rA[R]=_[q++]+X[R]),R++;R+=H}else for(S=0;S<k;S++){for(l=0;l<m;l++)rA[R]=_[q++]+X[R],R++;R+=H}else if(IA)for(S=0;S<k;S++){for(l=0;l<m;l++)IA[R]&&(rA[R]=_[q++]),R++;R+=H}else for(S=0;S<k;S++){for(l=0;l<m;l++)rA[R++]=_[q++];R+=H}}eA>1&&!a&&(C.pixels.resultPixels=r.swapDimensionOrder(C.pixels.resultPixels,c,eA,s))},formatFileInfo:function(B){return{fileIdentifierString:B.headerInfo.fileIdentifierString,fileVersion:B.headerInfo.fileVersion,imageType:B.headerInfo.imageType,height:B.headerInfo.height,width:B.headerInfo.width,numValidPixel:B.headerInfo.numValidPixel,microBlockSize:B.headerInfo.microBlockSize,blobSize:B.headerInfo.blobSize,maxZError:B.headerInfo.maxZError,pixelType:r.getPixelType(B.headerInfo.imageType),eofOffset:B.eofOffset,mask:B.mask?{numBytes:B.mask.numBytes}:null,pixels:{numBlocksX:B.pixels.numBlocksX,numBlocksY:B.pixels.numBlocksY,maxValue:B.headerInfo.zMax,minValue:B.headerInfo.zMin,noDataValue:B.noDataValue}}},constructConstantSurface:function(B,C){var s=B.headerInfo.zMax,a=B.headerInfo.zMin,Q=B.headerInfo.maxValues,n=B.headerInfo.numDims,f=B.headerInfo.height*B.headerInfo.width,c=0,h=0,w=0,D=B.pixels.resultMask,d=B.pixels.resultPixels;if(D)if(n>1){if(C)for(c=0;c<n;c++)for(w=c*f,s=Q[c],h=0;h<f;h++)D[h]&&(d[w+h]=s);else for(h=0;h<f;h++)if(D[h])for(w=h*n,c=0;c<n;c++)d[w+n]=Q[c]}else for(h=0;h<f;h++)D[h]&&(d[h]=s);else if(n>1&&a!==s)if(C)for(c=0;c<n;c++)for(w=c*f,s=Q[c],h=0;h<f;h++)d[w+h]=s;else for(h=0;h<f;h++)for(w=h*n,c=0;c<n;c++)d[w+c]=Q[c];else for(h=0;h<f*n;h++)d[h]=s},getDataTypeArray:function(B){var C;switch(B){case 0:C=Int8Array;break;case 1:C=Uint8Array;break;case 2:C=Int16Array;break;case 3:C=Uint16Array;break;case 4:C=Int32Array;break;case 5:C=Uint32Array;break;case 6:C=Float32Array;break;case 7:C=Float64Array;break;default:C=Float32Array}return C},getPixelType:function(B){var C;switch(B){case 0:C="S8";break;case 1:C="U8";break;case 2:C="S16";break;case 3:C="U16";break;case 4:C="S32";break;case 5:C="U32";break;case 6:C="F32";break;case 7:C="F64";break;default:C="F32"}return C},isValidPixelValue:function(B,C){if(C==null)return!1;var s;switch(B){case 0:s=C>=-128&&C<=127;break;case 1:s=C>=0&&C<=255;break;case 2:s=C>=-32768&&C<=32767;break;case 3:s=C>=0&&C<=65536;break;case 4:s=C>=-2147483648&&C<=2147483647;break;case 5:s=C>=0&&C<=4294967296;break;case 6:s=C>=-34027999387901484e22&&C<=34027999387901484e22;break;case 7:s=C>=-17976931348623157e292&&C<=17976931348623157e292;break;default:s=!1}return s},getDataTypeSize:function(B){var C=0;switch(B){case 0:case 1:C=1;break;case 2:case 3:C=2;break;case 4:case 5:case 6:C=4;break;case 7:C=8;break;default:C=B}return C},getDataTypeUsed:function(B,C){var s=B;switch(B){case 2:case 4:s=B-C;break;case 3:case 5:s=B-2*C;break;case 6:C===0?s=B:C===1?s=2:s=1;break;case 7:C===0?s=B:s=B-2*C+1;break;default:s=B;break}return s},getOnePixel:function(B,C,s,a){var Q=0;switch(s){case 0:Q=a.getInt8(C);break;case 1:Q=a.getUint8(C);break;case 2:Q=a.getInt16(C,!0);break;case 3:Q=a.getUint16(C,!0);break;case 4:Q=a.getInt32(C,!0);break;case 5:Q=a.getUInt32(C,!0);break;case 6:Q=a.getFloat32(C,!0);break;case 7:Q=a.getFloat64(C,!0);break;default:throw"the decoder does not understand this pixel type"}return Q},swapDimensionOrder:function(B,C,s,a,Q){var n=0,f=0,c=0,h=0,w=B;if(s>1)if(w=new a(C*s),Q)for(n=0;n<C;n++)for(h=n,c=0;c<s;c++,h+=C)w[h]=B[f++];else for(n=0;n<C;n++)for(h=n,c=0;c<s;c++,h+=C)w[f++]=B[h];return w}},o=function(B,C,s){this.val=B,this.left=C,this.right=s},E={decode:function(B,C){C=C||{};var s=C.noDataValue,a=0,Q={};if(Q.ptr=C.inputOffset||0,Q.pixels={},!!r.readHeaderInfo(B,Q)){var n=Q.headerInfo,f=n.fileVersion,c=r.getDataTypeArray(n.imageType);if(f>5)throw"unsupported lerc version 2."+f;r.readMask(B,Q),n.numValidPixel!==n.width*n.height&&!Q.pixels.resultMask&&(Q.pixels.resultMask=C.maskData);var h=n.width*n.height;Q.pixels.resultPixels=new c(h*n.numDims),Q.counter={onesweep:0,uncompressed:0,lut:0,bitstuffer:0,constant:0,constantoffset:0};var w=!C.returnPixelInterleavedDims;if(n.numValidPixel!==0)if(n.zMax===n.zMin)r.constructConstantSurface(Q,w);else if(f>=4&&r.checkMinMaxRanges(B,Q))r.constructConstantSurface(Q,w);else{var D=new DataView(B,Q.ptr,2),d=D.getUint8(0);if(Q.ptr++,d)r.readDataOneSweep(B,Q,c,w);else if(f>1&&n.imageType<=1&&Math.abs(n.maxZError-.5)<1e-5){var y=D.getUint8(1);if(Q.ptr++,Q.encodeMode=y,y>2||f<4&&y>1)throw"Invalid Huffman flag "+y;y?r.readHuffman(B,Q,c,w):r.readTiles(B,Q,c,w)}else r.readTiles(B,Q,c,w)}Q.eofOffset=Q.ptr;var S;C.inputOffset?(S=Q.headerInfo.blobSize+C.inputOffset-Q.ptr,Math.abs(S)>=1&&(Q.eofOffset=C.inputOffset+Q.headerInfo.blobSize)):(S=Q.headerInfo.blobSize-Q.ptr,Math.abs(S)>=1&&(Q.eofOffset=Q.headerInfo.blobSize));var l={width:n.width,height:n.height,pixelData:Q.pixels.resultPixels,minValue:n.zMin,maxValue:n.zMax,validPixelCount:n.numValidPixel,dimCount:n.numDims,dimStats:{minValues:n.minValues,maxValues:n.maxValues},maskData:Q.pixels.resultMask};if(Q.pixels.resultMask&&r.isValidPixelValue(n.imageType,s)){var G=Q.pixels.resultMask;for(a=0;a<h;a++)G[a]||(l.pixelData[a]=s);l.noDataValue=s}return Q.noDataValue=s,C.returnFileInfo&&(l.fileInfo=r.formatFileInfo(Q)),l}},getBandCount:function(B){var C=0,s=0,a={};for(a.ptr=0,a.pixels={};s<B.byteLength-58;)r.readHeaderInfo(B,a),s+=a.headerInfo.blobSize,C++,a.ptr=s;return C}};return E})(),e=(function(){var i=new ArrayBuffer(4),r=new Uint8Array(i),o=new Uint32Array(i);return o[0]=1,r[0]===1})(),t={decode:function(i,r){if(!e)throw"Big endian system is not supported.";r=r||{};var o=r.inputOffset||0,E=new Uint8Array(i,o,10),B=String.fromCharCode.apply(null,E),C,s;if(B.trim()==="CntZImage")C=A,s=1;else if(B.substring(0,5)==="Lerc2")C=g,s=2;else throw"Unexpected file identifier string: "+B;for(var a=0,Q=i.byteLength-10,n,f=[],c,h,w={width:0,height:0,pixels:[],pixelType:r.pixelType,mask:null,statistics:[]},D=0;o<Q;){var d=C.decode(i,{inputOffset:o,encodedMaskData:n,maskData:h,returnMask:a===0,returnEncodedMask:a===0,returnFileInfo:!0,returnPixelInterleavedDims:r.returnPixelInterleavedDims,pixelType:r.pixelType||null,noDataValue:r.noDataValue||null});o=d.fileInfo.eofOffset,h=d.maskData,a===0&&(n=d.encodedMaskData,w.width=d.width,w.height=d.height,w.dimCount=d.dimCount||1,w.pixelType=d.pixelType||d.fileInfo.pixelType,w.mask=h),s>1&&(h&&f.push(h),d.fileInfo.mask&&d.fileInfo.mask.numBytes>0&&D++),a++,w.pixels.push(d.pixelData),w.statistics.push({minValue:d.minValue,maxValue:d.maxValue,noDataValue:d.noDataValue,dimStats:d.dimStats})}var y,S,l;if(s>1&&D>1){for(l=w.width*w.height,w.bandMasks=f,h=new Uint8Array(l),h.set(f[0]),y=1;y<f.length;y++)for(c=f[y],S=0;S<l;S++)h[S]=h[S]&c[S];w.maskData=h}return w}};I.exports?I.exports=t:this.Lerc=t})()})(qe)),qe.exports}var tE=eE();const iE=iB(tE);let Tg,_A,Te;const Oe={env:{emscripten_notify_memory_growth:I=>{Te=new Uint8Array(_A.exports.memory.buffer)}}};let CE=class{init(){return Tg||(typeof fetch<"u"?Tg=fetch(`data:application/wasm;base64,${VC}`).then(A=>A.arrayBuffer()).then(A=>WebAssembly.instantiate(A,Oe)).then(this._init):Tg=WebAssembly.instantiate(Buffer.from(VC,"base64"),Oe).then(this._init),Tg)}_init(A){_A=A.instance,Oe.env.emscripten_notify_memory_growth(0)}decode(A,g=0){if(!_A)throw new Error("ZSTDDecoder: Await .init() before decoding.");const e=A.byteLength,t=_A.exports.malloc(e);Te.set(A,t),g=g||Number(_A.exports.ZSTD_findDecompressedSize(t,e));const i=_A.exports.malloc(g),r=_A.exports.ZSTD_decompress(i,g,t,e),o=Te.slice(i,i+r);return _A.exports.free(t),_A.exports.free(i),o}};const VC="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AikACDcACCAHIDo3AAAgEUEZSA0BIARBGGohBANAIAIpABAhOiAEIAIpABg3AAggBCA6NwAAIAIpACAhOiAEIAIpACg3ABggBCA6NwAQIAJBIGohAiAEQSBqIgQgCkkNAAsMAQsCQAJAIAUoAswCIhEgBUHgAWogJUEHcUEMbGoiDygCACICaiIHIBxLDQAgCSAPKAIEIgogAmoiBmogG0sNACAGQSBqIBQgCWtNDQELIAUgDygCCDYCoAEgBSAPKQIANwOYASAJIBQgBUGYAWogBUHMAmogHCALIBcgIhAgIQYMAQsgAiAJaiEEIA8oAgghFSARKQAAITogCSARKQAINwAIIAkgOjcAAAJAIAJBEUkNACARKQAQITogCSARKQAYNwAYIAkgOjcAECACQRBrQRFIDQAgEUEQaiECIAlBIGohEgNAIAIpABAhOiASIAIpABg3AAggEiA6NwAAIAIpACAhOiASIAIpACg3ABggEiA6NwAQIAJBIGohAiASQSBqIhIgBEkNAAsLIAQgFWshAiAFIAc2AswCIAQgC2sgFUkEQCAVIAQgF2tLDQwgIiAiIAIgC2siD2oiByAKak8EQCAKRQ0CIAQgByAK/AoAAAwCC0EAIA9rIgIEQCAEIAcgAvwKAAALIAogD2ohCiAEIA9rIQQgCyECCyAVQRBPBEAgAikAACE6IAQgAikACDcACCAEIDo3AAAgCkERSA0BIAQgCmohByAEQRBqIQQDQCACKQAQITogBCACKQAYNwAIIAQgOjcAACACKQAgITogBCACKQAoNwAYIAQgOjcAECACQSBqIQIgBEEgaiIEIAdJDQALDAELAkAgFUEHTQRAIAQgAi0AADoAACAEIAItAAE6AAEgBCACLQACOgACIAQgAi0AAzoAAyAEIAIgFUECdCIHQeAaaigCAGoiAigAADYABCACIAdBgBtqKAIAayECDAELIAQgAikAADcAAAsgCkEJSQ0AIAQgCmohDyAEQQhqIgcgAkEIaiICa0EPTARAA0AgByACKQAANwAAIAJBCGohAiAHQQhqIgcgD0kNAAwCCwALIAIpAAAhOiAHIAIpAAg3AAggByA6NwAAIApBGUgNACAEQRhqIQQDQCACKQAQITogBCACKQAYNwAIIAQgOjcAACACKQAgITogBCACKQAoNwAYIAQgOjcAECACQSBqIQIgBEEgaiIEIA9JDQALCyAGQYh/SwRAIAYhAwwLCyAFQeABaiAlQQdxQQxsaiICIA02AgggAiAMNgIEIAIgEDYCAAsgBiAJaiEJICVBAWohJSAQIC1qIAxqIS0MAQsLIAUoArABIAUoArQBRw0HIAUoAqwBQSBHDQcgDiAoayEQA0ACQCAOIBBMBEBBACECA0AgAkEDRg0CIDIgAkECdCIDaiADICZqKAIANgIAIAJBAWohAgwACwALIAVB4AFqIBBBB3FBDGxqIQoCfwJAIAgoAoTsAUECRgRAIAUoAswCIg8gCigCACIEaiIHIAgoAoDsASICSwRAIAIgD0cEQCACIA9rIgIgFCAJa0sNCyAJIA8gAhAfIAogBCACayIENgIAIAIgCWohCQsgBSAWNgLMAiAIQQA2AoTsAQJAAkACQCAEQYCABEoNACAJIAooAgQiDSAEaiIGaiAbSw0AIAZBIGogFCAJa00NAQsgBSAKKAIINgJQIAUgCikCADcDSCAJIBQgBUHIAGogBUHMAmogGSALIBcgIhAgIQYMAQsgBCAWaiEHIAQgCWohDCAKKAIIIQogFikAACE6IAkgFikACDcACCAJIDo3AAACQCAEQRFJDQAgHikAACE6IAkgHikACDcAGCAJIDo3ABAgBEEQa0ERSA0AIAlBIGohAiAeIQQDQCAEKQAQITogAiAEKQAYNwAIIAIgOjcAACAEKQAgITogAiAEKQAoNwAYIAIgOjcAECAEQSBqIQQgAkEgaiICIAxJDQALCyAMIAprIQIgBSAHNgLMAiAMIAtrIApJBEAgCiAMIBdrSw0PICIgIiACIAtrIgdqIgQgDWpPBEAgDUUNAiAMIAQgDfwKAAAMAgtBACAHayICBEAgDCAEIAL8CgAACyAHIA1qIQ0gDCAHayEMIAshAgsgCkEQTwRAIAIpAAAhOiAMIAIpAAg3AAggDCA6NwAAIA1BEUgNASAMIA1qIQcgDEEQaiEEA0AgAikAECE6IAQgAikAGDcACCAEIDo3AAAgAikAICE6IAQgAikAKDcAGCAEIDo3ABAgAkEgaiECIARBIGoiBCAHSQ0ACwwBCwJAIApBB00EQCAMIAItAAA6AAAgDCACLQABOgABIAwgAi0AAjoAAiAMIAItAAM6AAMgDCACIApBAnQiBEHgGmooAgBqIgIoAAA2AAQgAiAEQYAbaigCAGshAgwBCyAMIAIpAAA3AAALIA1BCUkNACAMIA1qIQcgDEEIaiIEIAJBCGoiAmtBD0wEQANAIAQgAikAADcAACACQQhqIQIgBEEIaiIEIAdJDQAMAgsACyACKQAAITogBCACKQAINwAIIAQgOjcAACANQRlIDQAgDEEYaiEEA0AgAikAECE6IAQgAikAGDcACCAEIDo3AAAgAikAICE6IAQgAikAKDcAGCAEIDo3ABAgAkEgaiECIARBIGoiBCAHSQ0ACwsgBkGJf08EQCAGIQMMDgsgGSEcIAYgCWoMAwsgB0EgayECAkACQCAHIBxLDQAgCSAKKAIEIhIgBGoiDGogAksNACAMQSBqIBQgCWtNDQELIAUgCigCCDYCYCAFIAopAgA3A1ggCSAUIAIgBUHYAGogBUHMAmogHCALIBcgIhAhIQwMAgsgBCAJaiEGIAooAgghCiAPKQAAITogCSAPKQAINwAIIAkgOjcAAAJAIARBEUkNACAPKQAQITogCSAPKQAYNwAYIAkgOjcAECAEQRBrQRFIDQAgD0EQaiECIAlBIGohBANAIAIpABAhOiAEIAIpABg3AAggBCA6NwAAIAIpACAhOiAEIAIpACg3ABggBCA6NwAQIAJBIGohAiAEQSBqIgQgBkkNAAsLIAYgCmshAiAFIAc2AswCIAYgC2sgCkkEQCAKIAYgF2tLDQ0gIiAiIAIgC2siB2oiBCASak8EQCASRQ0DIAYgBCAS/AoAAAwDC0EAIAdrIgIEQCAGIAQgAvwKAAALIAcgEmohEiAGIAdrIQYgCyECCyAKQRBPBEAgAikAACE6IAYgAikACDcACCAGIDo3AAAgEkERSA0CIAYgEmohByAGQRBqIQQDQCACKQAQITogBCACKQAYNwAIIAQgOjcAACACKQAgITogBCACKQAoNwAYIAQgOjcAECACQSBqIQIgBEEgaiIEIAdJDQALDAILAkAgCkEHTQRAIAYgAi0AADoAACAGIAItAAE6AAEgBiACLQACOgACIAYgAi0AAzoAAyAGIAIgCkECdCIEQeAaaigCAGoiAigAADYABCACIARBgBtqKAIAayECDAELIAYgAikAADcAAAsgEkEJSQ0BIAYgEmohByAGQQhqIgQgAkEIaiICa0EPTARAA0AgBCACKQAANwAAIAJBCGohAiAE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",jC=new CE;class BE extends VA{decodeBlock(A){var o;const e=(o=this.parameters.LercParameters)==null?void 0:o[Fi.AddCompression];let t=A;switch(e){case eI.None:break;case eI.Deflate:t=TC(new Uint8Array(t)).buffer;break;case eI.Zstandard:t=jC.decode(new Uint8Array(t)).buffer;break;default:throw new Error(`Unsupported LERC additional compression method identifier: ${e}`)}return iE.decode(t,{returnPixelInterleavedDims:this.parameters.planarConfiguration===1}).pixels[0].buffer}}const oE=Object.freeze(Object.defineProperty({__proto__:null,default:BE,zstd:jC},Symbol.toStringTag,{value:"Module"}));let Og,lA,pg,qA;const Ve={env:{emscripten_notify_memory_growth:I=>{pg=new Uint8Array(lA.exports.memory.buffer),qA=new DataView(pg.buffer)}}};class rE{init(){return Og||(typeof fetch<"u"?Og=fetch(`data:application/wasm;base64,${ZC}`).then(A=>A.arrayBuffer()).then(A=>WebAssembly.instantiate(A,Ve)).then(this._init):Og=WebAssembly.instantiate(Buffer.from(ZC,"base64"),Ve).then(this._init),Og)}_init(A){lA=A.instance,Ve.env.emscripten_notify_memory_growth(0)}decode(A,g=0){if(!lA)throw new Error("ZSTDDecoder: Await .init() before decoding.");const e=A.byteLength,t=lA.exports.malloc(e);if(pg.set(A,t),g===0&&(g=Number(lA.exports.ZSTD_findDecompressedSize(t,e))),g===-1){lA.exports.free(t);const E=[];for(const a of this.decodeStreaming([A]))E.push(a);if(E.length===1)return E[0];const B=E.reduce((a,Q)=>a+Q.byteLength,0),C=new Uint8Array(B);let s=0;for(const a of E)C.set(a,s),s+=a.byteLength;return C}const i=lA.exports.malloc(g),r=lA.exports.ZSTD_decompress(i,g,t,e),o=pg.slice(i,i+r);return lA.exports.free(t),lA.exports.free(i),o}*decodeStreaming(A){if(!lA)throw new Error("ZSTDDecoder: Await .init() before decoding.");const g=lA.exports.ZSTD_DStreamInSize(),e=lA.exports.malloc(g),t=lA.exports.ZSTD_DStreamOutSize(),i=lA.exports.malloc(t),r=lA.exports.ZSTD_createDCtx(),o=4,E=4,B=lA.exports.malloc(o+E*2),C=lA.exports.malloc(o+E*2);let s=0;for(const a of A){const Q=lA.exports.malloc(a.byteLength);for(pg.set(a,Q),qA.setInt32(B,Q,!0),qA.setInt32(B+o,a.byteLength,!0),qA.setInt32(B+o+E,0,!0);qA.getUint32(B+o+E,!0)<qA.getUint32(B+o,!0);){qA.setInt32(C,i,!0),qA.setInt32(C+o,t,!0),qA.setInt32(C+o+E,0,!0),s=lA.exports.ZSTD_decompressStream(r,C,B);const n=qA.getUint32(C+o+E,!0);yield pg.slice(i,i+n)}lA.exports.free(Q)}if(lA.exports.ZSTD_freeDCtx(r),lA.exports.free(e),lA.exports.free(i),lA.exports.free(B),lA.exports.free(C),s!==0)throw new Error("Incomplete stream, more data expected.")}}const ZC="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QQhyIQBBACEDA0AgACADTQ0DIANBQGshAwwACwALQWwhCiAOIA5B/ABqIA5B+ABqIAUgBhAGIgJBiH9LDQEgDigCeCIDIARLDQEgACAOIA4oAnwgByAIIAMgDRAlIAEgADYCACACIQoMAQtBbCEKCyAOQYABaiQAIAoLcAEEfyAAQgA3AgAgAgRAIAFBCmohBiABKAIEIQRBACECQQAhAQNAIAEgBHZFBEAgAiAGIAFBA3RqLQAAIgUgAiAFSxshAiABQQFqIQEgAyAFQRZLaiEDDAELCyAAIAI2AgQgACADQQggBGt0NgIACwuuAQEEfyABIAIoAgQiAyABKAIEaiIENgIEIAAgA0ECdEGwGWooAgAgASgCAEEAIARrdnE2AgACQCAEQSFPBEAgAUGwGjYCCAwBCyABKAIIIgMgASgCEE8EQCABEAwMAQsgAyABKAIMIgVGDQAgASADIAMgBWsgBEEDdiIGIAMgBmsgBUkbIgNrIgU2AgggASAEIANBA3RrNgIEIAEgBSgAADYCAAsgACACQQhqNgIEC40CAgN/AX4gACACaiEEAkACQCACQQhOBEAgACABayICQXlIDQELA0AgACAETw0CIAAgAS0AADoAACAAQQFqIQAgAUEBaiEBDAALAAsCQAJAIAJBb0sNACAAIARBIGsiAksNACABKQAAIQYgACABKQAINwAIIAAgBjcAACACIABrIgVBEU4EQCAAQRBqIQAgASEDA0AgAykAECEGIAAgAykAGDcACCAAIAY3AAAgAykAICEGIAAgAykAKDcAGCAAIAY3ABAgA0EgaiEDIABBIGoiACACSQ0ACwsgASAFaiEBDAELIAAhAgsDQCACIARPDQEgAiABLQAAOgAAIAJBAWohAiABQQFqIQEMAAsACwvfAQEGf0G6fyEKAkAgAigCBCIIIAIoAgAiCWoiDSABIABrSw0AQWwhCiAJIAQgAygCACILa0sNACAAIAlqIgQgAigCCCIMayECIAAgAUEgayIBIAsgCUEAEDMgAyAJIAtqNgIAAkACQCAEIAVrIAxPBEAgAiEFDAELIAwgBCAGa0sNAiAHIAcgAiAFayIDaiICIAhqTwRAIAhFDQIgBCACIAj8CgAADAILQQAgA2siAARAIAQgAiAA/AoAAAsgAyAIaiEIIAQgA2shBAsgBCABIAUgCEEBEDMLIA0hCgsgCgvrAQEGf0G6fyELAkAgAygCBCIJIAMoAgAiCmoiDSABIABrSw0AIAUgBCgCACIFayAKSQRAQWwPCyADKAIIIQwgACAFSyAFIApqIg4gAEtxDQAgACAKaiIDIAxrIQEgACAFIAoQLyAEIA42AgACQAJAIAMgBmsgDE8EQCABIQYMAQtBbCELIAwgAyAHa0sNAiAIIAggASAGayIAaiIBIAlqTwRAIAlFDQIgAyABIAn8CgAADAILQQAgAGsiBARAIAMgASAE/AoAAAsgACAJaiEJIAMgAGshAwsgAyACIAYgCUEBEDMLIA0hCwsgCwurAgECfyACQR9xIQMgASEEA0AgA0EISUUEQCADQQhrIQMgBCkAAELP1tO+0ser2UJ+Qh+JQoeVr6+Ytt6bnn9+IACFQhuJQoeVr6+Ytt6bnn9+Qp2jteqDsY2K+gB9IQAgBEEIaiEEDAELCyABIAJBGHFqIQEgAkEHcSIDQQRJBH8gAQUgA0EEayEDIAE1AABCh5Wvr5i23puef34gAIVCF4lCz9bTvtLHq9lCfkL5893xmfaZqxZ8IQAgAUEEagshBANAIAMEQCADQQFrIQMgBDEAAELFz9my8eW66id+IACFQguJQoeVr6+Ytt6bnn9+IQAgBEEBaiEEDAELCyAAQiGIIACFQs/W077Sx6vZQn4iAEIdiCAAhUL5893xmfaZqxZ+IgBCIIggAIUL4QQCAX4CfyAAIANqIQcCQCADQQdMBEADQCAAIAdPDQIgACACLQAAOgAAIABBAWohACACQQFqIQIMAAsACyAEBEACQCAAIAJrIgZBB00EQCAAIAItAAA6AAAgACACLQABOgABIAAgAi0AAjoAAiAAIAItAAM6AAMgACACIAZBAnQiBkHgGmooAgBqIgIoAAA2AAQgAiAGQYAbaigCAGshAgwBCyAAIAIpAAA3AAALIANBCGshAyACQQhqIQIgAEEIaiEACyABIAdPBEAgACADaiEBIARFIAAgAmtBD0pyRQRAA0AgACACKQAANwAAIAJBCGohAiAAQQhqIgAgAUkNAAwDCwALIAIpAAAhBSAAIAIpAAg3AAggACAFNwAAIANBEUkNASAAQRBqIQADQCACKQAQIQUgACACKQAYNwAIIAAgBTcAACACKQAgIQUgACACKQAoNwAYIAAgBTcAECACQSBqIQIgAEEgaiIAIAFJDQALDAELAkAgACABSwRAIAAhAQwBCyABIABrIQYCQCAERSAAIAJrQQ9KckUEQCACIQMDQCAAIAMpAAA3AAAgA0EIaiEDIABBCGoiACABSQ0ACwwBCyACKQAAIQUgACACKQAINwAIIAAgBTcAACAGQRFIDQAgAEEQaiEAIAIhAwNAIAMpABAhBSAAIAMpABg3AAggACAFNwAAIAMpACAhBSAAIAMpACg3ABggACAFNwAQIANBIGohAyAAQSBqIgAgAUkNAAsLIAIgBmohAgsDQCABIAdPDQEgASACLQAAOgAAIAFBAWohASACQQFqIQIMAAsACwtOAQJ/IwBBEGsiBCQAIARBADYCCCAEQgA3AwACQCAEEBciBUUEQEFAIQMMAQsgBSAAIAEgAiADIAUQIRAiIQMgBRAZGgsgBEEQaiQAIAMLrwgCAn8BfiMAQRBrIgYkAAJAIAAgBBA2IARHBEBBuH8hBQwBCyAAIAEgAhAgIAAgACkD8OkBIAStfDcD8OkBQX8hBQJAAkACQAJAAkACQAJAAkAgACgChOoBDggAAQIDAwQFBggLAkAgACgC7OoBIgUNAEEAIQUgAygAAEFwcUHQ1LTCAUcNACAEBEAgAEGo7AVqIAMgBPwKAAALIABBBjYChOoBIABBCCAEazYCvOkBDAgLIAAgAyAEIAUQHCIFNgLo6gEgBUGIf0sNByAEBEAgAEGo7AVqIAMgBPwKAAALIABBATYChOoBIAAgBSAEazYCvOkBQQAhBQwHCyAAQajsBWohASAAKALo6gEhAiAEBEAgASACIARraiADIAT8CgAACyAAIAEgAhAmIgVBiH9LDQYgAEECNgKE6gEgAEEDNgK86QFBACEFDAYLIANBAyAGQQRqEB8iAUGIf0sEQCABIQUMBgtBbCEFIAEgACgC0OkBSw0FIAAgATYCvOkBIAAgBigCBDYCgOoBIAAgBigCDDYCjOsBIAYoAgghAiAAAn9BBEEDIAIbIAENABogAgRAIAAoAuDpAQRAIABBBDYCvOkBQQUMAgsgAEEANgK86QFBAAwBCyAAQQM2ArzpAUECCzYChOoBQQAhBQwFC0FsIQUCQAJAAkACQAJAAkACQCAAKAKA6gEOAwABAgsLIAIgBEkEQEG6fyEFDAsLAkAgAUUEQCAERQ0BQbZ/IQUMDAsgBARAIAEgAyAE/AoAAAsgBEGIf00NACAEIQUMCwsgACAAKAK86QEgBGsiAjYCvOkBIAQhBQwDCwJAIAIgACgCjOsBIgVJBH9Bun8FIAENASAFRQ0FQbZ/CyEFIABBADYCvOkBDAoLIAVFDQEgASADLQAAIAX8CwAMAQsgACABIAIgAyAEQQEQJyEFC0EAIQIgAEEANgK86QEgBUGIf0sNBwsgBSAAKALQ6QFNDQFBbCEFDAYLQQAhAiAAQQA2ArzpAUEAIQULIAAgACkD+OkBIAUiA618NwP46QEgACgC9OoBBEAgAEGQ6gFqIAEgAxAoIAAoArzpASECCyAAIAEgA2o2AqzpASACDQMgACgChOoBQQRGBEAgACkDwOkBIgdCf1IEQEFsIQUgACkD+OkBIAdSDQYLIAAoAuDpAQRAIABBBTYChOoBIABBBDYCvOkBDAULIABBADYChOoBIABBADYCvOkBDAQLIABBAzYCvOkBIABBAjYChOoBDAMLIAAoAvTqAUUNASADKAAAIABBkOoBahApp0YNAUFqIQUMAwsgBARAIAAgBGtBsOwFaiADIAT8CgAACyAAQQc2AoTqASAAIAAoAKzsBTYCvOkBQQAhBQwCC0EAIQUgAEEANgKE6gEgAEEANgK86QEMAQsgAyEFCyAGQRBqJAAgBQtGAQF/IAAoAoTqAUEDa0ECTwRAIAAoArzpAQ8LIAAoArzpASECIAAoAoDqAQR/IAIFQQEgASACIAEgAkkbIgAgAEEBTRsLCwYAQYOACAsGAEGAgAgLxBACGH8CfiMAQRBrIggkACACKAIIIQ4gAigCBCEPIAIoAgAhBCABKAIEIRAgCCABKAIAIgYgASgCCCITaiIYNgIMAkAgDiAPSwRAQbh/IQMMAQsCQCAQIBNJDQACQCAAKALs6wFBAUcNACAAKAK86wFFDQBBmH8hAyAAKALw6wEgBkcNAiAAKAL46wEgE0cNAiAAKAL06wEgEEcNAgsgBiAQaiEMIAQgD2ohCSAAQfDrAWohESAPIA5rIRUgAEGo7AVqIQogAEHA6QFqIQ0gAEHY6wFqIRQgAEGE6gFqIRYgAEGE6wFqIRcgAEGA6wFqIRkgBCAOaiISIQQDQAJAIAQhBgJ/AkAgBUEBcUUEQEF/IQMCQAJAAkAgDSAKAn8CQAJAIAAoArzrAQ4FAQADBAUMCyAAKALg6wEMAQsgAEEANgLI6wEgAEEBNgK86wEgFEIANwMIIBRCADcDACARIAEoAgg2AgggESABKQIANwIAQQALIAAoAuzqARAbIQQCQCAAKAKw6wFFDQAgACgCrOsBRQ0AIAAQKgsgBEGIf0sEQCAEIQMMCgsgBARAIAQgACgC4OsBIgNrIgUgCSAGayIHSwRAIAYgCUcEQCAHBEAgAyAKaiAGIAf8CgAACyAAIAMgB2oiAzYC4OsBCyACIAIoAgQ2AgggDSAKIAMgACgC7OoBEBsiA0GIf0sNC0ECQQYgACgC7OoBGyIBIAQgASAESxsgACgC4OsBa0EDaiEDDAsLIAUEQCADIApqIAYgBfwKAAALIAAgBDYC4OsBIAUgBmohBEEAIQUMCAsCQCANKQMAIhtCf1ENACAAKALU6QFBAUYNACAbIAwgCCgCDCIEayIDrVYNACASIBUgACgC7OoBEB4iBSAVSw0AIAAgBCADIBIgBSAAECEQIiIDQYh/Sw0KIAggAyAEakEAIAQbNgIMIABBADYCvOsBIABBADYCvOkBIAUgEmohBEEBIQUMCAsCQCAAKALs6wFBAUcNACAAKALU6QFBAUYNACANKQMAIhtCf1ENACAbIAwgCCgCDGutVg0JCyAAIAAQIRAjAn8CQCAAKALs6gENACAKKAAAQXBxQdDUtMIBRw0AIAAoAKzsBSEFQQcMAQsgACAKIAAoAuDrARAmIgNBiH9LDQpBAyEFQQILIQQgACAFNgK86QEgFiAENgIAIABCgAggACkDyOkBIhsgG0KACFgbIhs3A8jpASAANQLM6wEgG1QEQEFwIQMMCgsgACgC0OkBIQUgACgCuOsBIgQEQCAAIAUgBCAEIAVLGyIFNgLQ6QELQQAhB0EAIQMgACgC7OsBRQRAQXAgDSkDACIcIBsgBUKAgAggGyAbQoCACFobpyIEIAQgBUsbQQF0rXxCQH0iGyAbIBxWGyIbpyAbQoCAgIAQWhshAwsgACgC1OsBIgsgACgCxOsBIhpqQQQgBSAFQQRNGyIEIANqIgVBA2xPBEAgACgCvOwFQQFqIQcLIAAgBzYCvOwFIAQgGksgAyALS3JFIAdBgAFJcUUEQAJAAkAgACgCkOsBIgcEQCAFIAdBwOwFa00NAQwKCyAAKALA6wEgGSgCACAXKAIAEBUgAEEANgLU6wEgAEEANgLE6wEgACAFIAAoAvzqASAXKAIAEBgiBTYCwOsBIAVFDQkMAQsgACgCwOsBIQULIAAgAzYC1OsBIAAgBDYCxOsBIAAgBCAFajYC0OsBCyAAQQI2ArzrAQsgACAJIAZrIgQQNiIDRQRAIABBADYCvOsBQQEhBSAGIQQMBwsgAyAETQRAIAMgBmohBEEAIQUgACAIQQxqIAwgBiADEDoiA0GJf0kNBwwJC0EBIQUgBiAJIgRGDQYgAEEDNgK86wELIAAoArzpASILIAAoAsjrASIFayEDAkAgFigCAEEHRwRAIAAoAsTrASAFayADSQRAQWwhAwwKCyADIAkgBmsiBCADIARJGyIHRQ0EIAcEQCAAKALA6wEgBWogBiAH/AoAAAsgACgCyOsBIQUMAQsgAyAJIAZrIgQgAyAESRsiB0UNAwsgACAFIAdqNgLI6wEgBiAHagwDCyAMIAgoAgwiA2siByAAKALc6wEgACgC2OsBIgVrIgsgByALSRsiBARAIAQEQCADIAAoAtDrASAFaiAE/AoAAAsgACgC2OsBIQULIAggAyAEakEAIAMbNgIMIBQgBCAFaiIDNgIAQQEhBSAGIQQgByALSQ0EIABBAjYCvOsBQQAhBSAAKQPA6QEgACgC1OsBIgatWA0EIAAoAtDpASADaiAGTQ0EIABCADcD2OsBDAQLIAIgBiACKAIAazYCCCABIAgoAgwiBCABKAIAayIDNgIIIBEgAzYCCCARIAEpAgA3AgACQCAGIBJHIAQgGEdyRQRAIAAgACgC6OsBIgFBAWo2AujrASABQQ9IDQEgECATRgRAQbB/IQMMCAsgDiAPRw0BQa5/IQMMBwsgAEEANgLo6wELIAAoArzpASIBRQRAIAAoAuTrASEBAkACQCAAKALc6wEgACgC2OsBRgRAQQAhAyABRQ0JIAIoAggiASACKAIETwRAIABBAjYCvOsBDAILIAIgAUEBajYCCAwJCyABRQ0BC0EBIQMMBwsgAiACKAIIQQFrNgIIQQEhAyAAQQE2AuTrAQwGCyABIAAoAsjrAWtBA0EAIABBhOoBaigCAEEDRhtqIQMMBQtBACEHIAYLIQRBASEFIAMgB0sNAUEAIQUgAEEANgLI6wEgACAIQQxqIAwgACgCwOsBIAsQOiIDQYl/SQ0BDAMLC0FAIQMMAQtBun8hAwsgCEEQaiQAIAMLxwEBAn8gACgChOoBIgVBB0YhBgJAIAACfwJAIAAoAuzrAUUEQAJ/IAVBB0YEQCAAKALY6wEhAUEADAELIAAoAtTrASAAKALY6wEiAWsLIQIgACAAKALQ6wEgAWogAiADIAQQNSIEQYh/Sw0DIAQgBnJFDQEgACAAKALY6wEgBGo2AtzrAUEEDAILIAAgASgCACIFQQAgAiAFayAGGyADIAQQNSIEQYh/Sw0CIAEgASgCACAEajYCAAtBAgs2ArzrAUEAIQQLIAQLCgAgAARAEDwACwsDAAALC80SCgBBiAgLBQEAAAABAEGYCAvbBAEAAAABAAAAlgAAANgAAAB9AQAAdwAAAKoAAADNAAAAAgIAAHAAAACxAAAAxwAAABsCAABuAAAAxQAAAMIAAACEAgAAawAAAN0AAADAAAAA3wIAAGsAAAAAAQAAvQAAAHEDAABqAAAAZwEAALwAAACPBAAAbQAAAEYCAAC7AAAAIgYAAHIAAACwAgAAuwAAALAGAAB6AAAAOQMAALoAAACtBwAAiAAAANADAAC5AAAAUwgAAJYAAACcBAAAugAAABYIAACvAAAAYQUAALkAAADDBgAAygAAAIQFAAC5AAAAnwYAAMoAAAAAAAAAAQAAAAEAAAAFAAAADQAAAB0AAAA9AAAAfQAAAP0AAAD9AQAA/QMAAP0HAAD9DwAA/R8AAP0/AAD9fwAA/f8AAP3/AQD9/wMA/f8HAP3/DwD9/x8A/f8/AP3/fwD9//8A/f//Af3//wP9//8H/f//D/3//x/9//8//f//fwABAgMEBQYHCAkKCwwNDg8QERITFBUWFxgZGhscHR4fAwAAAAQAAAAFAAAABgAAAAcAAAAIAAAACQAAAAoAAAALAAAADAAAAA0AAAAOAAAADwAAABAAAAARAAAAEgAAABMAAAAUAAAAFQAAABYAAAAXAAAAGAAAABkAAAAaAAAAGwAAABwAAAAdAAAAHgAAAB8AAAAgAAAAIQAAACIAAAAjAAAAJQAAACcAAAApAAAAKwAAAC8AAAAzAAAAOwAAAEMAAABTAAAAYwAAAIMAAAADAQAAAwIAAAMEAAADCAAAAxAAAAMgAAADQAAAA4AAAAMAAQBBoA0LFQEBAQECAgMDBAQFBwgJCgsMDQ4PEABBxA0LiwEBAAAAAgAAAAMAAAAEAAAABQAAAAYAAAAHAAAACAAAAAkAAAAKAAAACwAAAAwAAAANAAAADgAAAA8AAAAQAAAAEgAAABQAAAAWAAAAGAAAABwAAAAgAAAAKAAAADAAAABAAAAAgAAAAAABAAAAAgAAAAQAAAAIAAAAEAAAACAAAABAAAAAgAAAAAABAEHgDgumBAEBAQECAgMDBAYHCAkKCwwNDg8QAQAAAAQAAAAIAAAAAQABAQYAAAAAAAAEAAAAABAAAAQAAAAAIAAABQEAAAAAAAAFAwAAAAAAAAUEAAAAAAAABQYAAAAAAAAFBwAAAAAAAAUJAAAAAAAABQoAAAAAAAAFDAAAAAAAAAYOAAAAAAABBRAAAAAAAAEFFAAAAAAAAQUWAAAAAAACBRwAAAAAAAMFIAAAAAAABAUwAAAAIAAGBUAAAAAAAAcFgAAAAAAACAYAAQAAAAAKBgAEAAAAAAwGABAAACAAAAQAAAAAAAAABAEAAAAAAAAFAgAAACAAAAUEAAAAAAAABQUAAAAgAAAFBwAAAAAAAAUIAAAAIAAABQoAAAAAAAAFCwAAAAAAAAYNAAAAIAABBRAAAAAAAAEFEgAAACAAAQUWAAAAAAACBRgAAAAgAAMFIAAAAAAAAwUoAAAAAAAGBEAAAAAQAAYEQAAAACAABwWAAAAAAAAJBgACAAAAAAsGAAgAADAAAAQAAAAAEAAABAEAAAAgAAAFAgAAACAAAAUDAAAAIAAABQUAAAAgAAAFBgAAACAAAAUIAAAAIAAABQkAAAAgAAAFCwAAACAAAAUMAAAAAAAABg8AAAAgAAEFEgAAACAAAQUUAAAAIAACBRgAAAAgAAIFHAAAACAAAwUoAAAAIAAEBTAAAAAAABAGAAABAAAADwYAgAAAAAAOBgBAAAAAAA0GACAAQZATC4cCAQABAQUAAAAAAAAFAAAAAAAABgQ9AAAAAAAJBf0BAAAAAA8F/X8AAAAAFQX9/x8AAAADBQUAAAAAAAcEfQAAAAAADAX9DwAAAAASBf3/AwAAABcF/f9/AAAABQUdAAAAAAAIBP0AAAAAAA4F/T8AAAAAFAX9/w8AAAACBQEAAAAQAAcEfQAAAAAACwX9BwAAAAARBf3/AQAAABYF/f8/AAAABAUNAAAAEAAIBP0AAAAAAA0F/R8AAAAAEwX9/wcAAAABBQEAAAAQAAYEPQAAAAAACgX9AwAAAAAQBf3/AAAAABwF/f//DwAAGwX9//8HAAAaBf3//wMAABkF/f//AQAAGAX9//8AQaAVC4YEAQABAQYAAAAAAAAGAwAAAAAAAAQEAAAAIAAABQUAAAAAAAAFBgAAAAAAAAUIAAAAAAAABQkAAAAAAAAFCwAAAAAAAAYNAAAAAAAABhAAAAAAAAAGEwAAAAAAAAYWAAAAAAAABhkAAAAAAAAGHAAAAAAAAAYfAAAAAAAABiIAAAAAAAEGJQAAAAAAAQYpAAAAAAACBi8AAAAAAAMGOwAAAAAABAZTAAAAAAAHBoMAAAAAAAkGAwIAABAAAAQEAAAAAAAABAUAAAAgAAAFBgAAAAAAAAUHAAAAIAAABQkAAAAAAAAFCgAAAAAAAAYMAAAAAAAABg8AAAAAAAAGEgAAAAAAAAYVAAAAAAAABhgAAAAAAAAGGwAAAAAAAAYeAAAAAAAABiEAAAAAAAEGIwAAAAAAAQYnAAAAAAACBisAAAAAAAMGMwAAAAAABAZDAAAAAAAFBmMAAAAAAAgGAwEAACAAAAQEAAAAMAAABAQAAAAQAAAEBQAAACAAAAUHAAAAIAAABQgAAAAgAAAFCgAAACAAAAULAAAAAAAABg4AAAAAAAAGEQAAAAAAAAYUAAAAAAAABhcAAAAAAAAGGgAAAAAAAAYdAAAAAAAABiAAAAAAABAGAwABAAAADwYDgAAAAAAOBgNAAAAAAA0GAyAAAAAADAYDEAAAAAALBgMIAAAAAAoGAwQAQbQZC3wBAAAAAwAAAAcAAAAPAAAAHwAAAD8AAAB/AAAA/wAAAP8BAAD/AwAA/wcAAP8PAAD/HwAA/z8AAP9/AAD//wAA//8BAP//AwD//wcA//8PAP//HwD//z8A//9/AP///wD///8B////A////wf///8P////H////z////9/AEHEGgtZAQAAAAIAAAAEAAAAAAAAAAIAAAAEAAAACAAAAAAAAAABAAAAAgAAAAEAAAAEAAAABAAAAAQAAAAEAAAACAAAAAgAAAAIAAAABwAAAAgAAAAJAAAACgAAAAsAQaAbCwOgDwE=",_C=new rE;class sE extends VA{decodeBlock(A){return _C.decode(new Uint8Array(A)).buffer}}const QE=Object.freeze(Object.defineProperty({__proto__:null,default:sE,zstd:_C},Symbol.toStringTag,{value:"Module"}));class EE extends VA{constructor(A){if(super(A),typeof createImageBitmap>"u")throw new Error("Cannot decode WebImage as `createImageBitmap` is not available");if(typeof document>"u"&&typeof OffscreenCanvas>"u")throw new Error("Cannot decode WebImage as neither `document` nor `OffscreenCanvas` is not available")}async decodeBlock(A){const g=new Blob([A]),e=await createImageBitmap(g);let t;typeof document<"u"?(t=document.createElement("canvas"),t.width=e.width,t.height=e.height):t=new OffscreenCanvas(e.width,e.height);const i=t.getContext("2d");i.drawImage(e,0,0);const r=i.getImageData(0,0,e.width,e.height).data,o=this.parameters.samplesPerPixel||4;if(o===4)return r.buffer;if(o===3){const E=new Uint8ClampedArray(e.width*e.height*3);for(let B=0,C=0;B<E.length;B+=3,C+=4)E[B]=r[C],E[B+1]=r[C+1],E[B+2]=r[C+2];return E.buffer}else throw new Error(`Unsupported SamplesPerPixel value: ${o}`)}}const aE=Object.freeze(Object.defineProperty({__proto__:null,default:EE},Symbol.toStringTag,{value:"Module"}));return J.ADMIN_SEQUENTIAL_COLORS=Ii,J.AiMap=y0,J.AiMapJSONSchema=R0,J.ArcFlowLayer=Go,J.BUILTIN_ICON_FONTS=ri,J.BottomSheet=Fo,J.BubbleLayer=Y0,J.ChinaDistrict=Ao,J.ControlContainer=KI,J.ControlRegistry=YA,J.ControlRenderer=kt,J.DEFAULT_CITY_SOURCE=ti,J.DEFAULT_DISTRICT_SOURCE=ii,J.DEFAULT_PROVINCE_SOURCE=ei,J.ErrorBoundary=Uo,J.EventBus=tt,J.EventBusProvider=Bt,J.ExportImageControl=ZI,J.FillLayer=Z0,J.FullscreenControl=qI,J.GAODE_THEME_PRESETS=OI,J.GeoLocateControl=TI,J.GlyphLayer=Do,J.HeatmapHexagonLayer=Tt,J.HeatmapLayer=qt,J.HexagonLayer=Tt,J.INDEPENDENT_MAP_THEME_PRESETS=I0,J.IconLayer=wo,J.ImageLayer=U0,J.InteractionRenderer=Yt,J.LayerRenderer=Lt,J.LayerSwitchControl=_I,J.LegendCategories=PI,J.LegendDiverging=WI,J.LegendIcon=Ie,J.LegendLineWidth=Ae,J.LegendProportion=ge,J.LegendRamp=zI,J.LegendRenderer=Ht,J.LegendSize=$I,J.LegendThreshold=XI,J.LineLayer=HA,J.MAKI_ICONS=WA,J.MAKI_ICON_NAMES=r0,J.MapSceneRenderer=nt,J.MapThemeControl=VI,J.Marker=Eg,J.MarkerClusterLayer=v0,J.MobileSheetLegend=Jt,J.MobileToolbar=vt,J.MouseLocationControl=jI,J.OPENFREEMAP_THEME_PRESETS=g0,J.PointLayer=kA,J.PolygonLayer=Xg,J.Popup=YI,J.RasterLayer=Ot,J.ResponsiveProvider=D0,J.RouteLayer=Lo,J.SATELLITE_PROVIDER_NAMES=So,J.SatelliteLayer=po,J.ScaleControl=JI,J.SceneProvider=Et,J.SchemaProvider=et,J.SearchBar=mo,J.ThemeProvider=rt,J.TiffRasterLayer=ko,J.Tooltip=Gt,J.ZoomControl=xI,J.adaptHeatmapLayer=ut,J.adaptImageLayer=wt,J.adaptLineLayer=ft,J.adaptPointLayer=ht,J.adaptPolygonLayer=dt,J.adaptRasterLayer=Dt,J.applyControlDefaults=At,J.applyLayerDefaults=$e,J.applyMapDefaults=jg,J.applyResponsiveOverrides=Ro,J.applySchemaDefaults=kI,J.createBasemap=at,J.createEventBus=it,J.createMakiIconMap=s0,J.createMakiPinMap=E0,J.cx=aA,J.deepMerge=Qe,J.diffSchema=N0,J.hexToRgba=HB,J.makiIconUrl=mt,J.makiPinUrl=Rt,J.parseSchema=gt,J.useControlContainer=TA,J.useEventBus=FI,J.useMapControl=OA,J.useMapPosition=UI,J.useResponsive=xt,J.useScene=uA,J.useSchema=hB,J.useTheme=st,J.validateAiMapSchema=k0,J.validateSchema=lB,Object.defineProperty(J,Symbol.toStringTag,{value:"Module"}),J})({},React,L7,ReactDOM);
1
+ var AimapUI=(function(U,l,u,Ne,O1,at,ct,ut){"use strict";function dt(e){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const r=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,r.get?r:{enumerable:!0,get:()=>e[t]})}}return n.default=e,Object.freeze(n)}const p1=dt(Ne),M1={basemap:"map",center:[105,35],zoom:4,pitch:0,rotation:0};function j1(e){return{basemap:e.basemap??M1.basemap,token:e.token,style:e.style,center:e.center??[...M1.center],zoom:e.zoom??M1.zoom,pitch:e.pitch??M1.pitch,rotation:e.rotation??M1.rotation,minZoom:e.minZoom,maxZoom:e.maxZoom,bounds:e.bounds,gestureConfig:e.gestureConfig}}let ht=0;function ft(){return`aimap-layer-${++ht}`}function _e(e){return{id:e.id??ft(),type:e.type,name:e.name??e.type,visible:e.visible??!0,zIndex:e.zIndex??0,minZoom:e.minZoom,maxZoom:e.maxZoom,autoFit:e.autoFit??!1,source:e.source,sourceType:e.sourceType,sourceConfig:e.sourceConfig,color:e.color,colorField:e.colorField,colorValues:e.colorValues,size:e.size,sizeField:e.sizeField,sizeValues:e.sizeValues,shape:e.shape,shapeField:e.shapeField,shapeValues:e.shapeValues,style:e.style,filterField:e.filterField,filterValues:e.filterValues,animate:e.animate,active:e.active,select:e.select,events:e.events}}const pt={zoom:"topright",scale:"bottomleft",fullscreen:"topright",geoLocate:"topright",mapTheme:"topright",mouseLocation:"bottomright",exportImage:"topright",layerSwitch:"topright",draw:"topright"};function De(e){return{type:e.type,position:e.position??pt[e.type]??"topright",options:e.options}}const gt={breakpoint:768};function yt(e){return{breakpoint:(e==null?void 0:e.breakpoint)??gt.breakpoint,mobile:e==null?void 0:e.mobile}}function ee(e){return{map:j1(e.map),layers:(e.layers??[]).map(_e),controls:(e.controls??[]).map(De),interactions:e.interactions??[],legends:e.legends??[],responsive:e.responsive?yt(e.responsive):void 0,events:e.events}}function $e(e){return ee(e)}function mt(e){const n=[];if(e.basemap||n.push("map.basemap is required"),e.center){const[t,r]=e.center;(t<-180||t>180)&&n.push("map.center[0] (longitude) must be between -180 and 180"),(r<-90||r>90)&&n.push("map.center[1] (latitude) must be between -90 and 90")}return n}function Ct(e,n){const t=[];return e.type||t.push(`layers[${n}].type is required`),e.source===void 0&&e.source,e.colorField&&!e.colorValues&&e.color,t}function vt(e){const n=[];return n.push(...mt(e.map)),(e.layers??[]).forEach((t,r)=>{n.push(...Ct(t,r))}),{valid:n.length===0,errors:n}}const Oe=u.createContext(null);function je({schema:e,children:n}){return l.jsx(Oe.Provider,{value:e,children:n})}function Lt(){return u.useContext(Oe)}class Be{constructor(){this.listeners=new Map}on(n,t){return this.listeners.has(n)||this.listeners.set(n,new Set),this.listeners.get(n).add(t),()=>{var r;(r=this.listeners.get(n))==null||r.delete(t)}}once(n,t){const r=(...i)=>{t(...i),o()},o=this.on(n,r);return o}emit(n,...t){const r=this.listeners.get(n);r&&r.forEach(o=>{try{o(...t)}catch(i){console.error(`[aimapui EventBus] Error in event "${n}":`,i)}})}off(n){this.listeners.delete(n)}clear(){this.listeners.clear()}}function Ue(){return new Be}const We=u.createContext(null);function qe({events:e,children:n}){const t=u.useRef(null);return t.current||(t.current=Ue()),u.useEffect(()=>{if(!e||!t.current)return;const r=t.current,o=[];for(const[i,s]of Object.entries(e))s&&o.push(r.on(i,s));return()=>{o.forEach(i=>i())}},[e]),l.jsx(We.Provider,{value:t.current,children:n})}function te(){const e=u.useContext(We);if(!e)throw new Error("[aimapui] useEventBus must be used within an EventBusProvider");return e}const Ge=u.createContext({resolvedTheme:"light",theme:"light",setTheme:()=>{},toggleTheme:()=>{}});function Ye({defaultTheme:e="light",target:n="container",children:t}){const[r,o]=u.useState(e),[i,s]=u.useState("light");u.useEffect(()=>{const h=window.matchMedia("(prefers-color-scheme: dark)");s(h.matches?"dark":"light");const y=f=>{s(f.matches?"dark":"light")};return h.addEventListener("change",y),()=>h.removeEventListener("change",y)},[]);const a=r==="system"?i:r,c=u.useCallback(()=>{o(h=>h==="system"?i==="light"?"dark":"light":h==="light"?"dark":"light")},[i]);u.useEffect(()=>{n==="root"&&document.documentElement.setAttribute("data-theme",a)},[a,n]);const d=u.useMemo(()=>({resolvedTheme:a,theme:r,setTheme:o,toggleTheme:c}),[a,r,c]);return l.jsx(Ge.Provider,{value:d,children:n==="container"?l.jsx("div",{"data-theme":a,style:{display:"contents"},children:t}):t})}function Je(){return u.useContext(Ge)}const bt=u.createContext({isMobile:!1,breakpoint:768,width:typeof window<"u"?window.innerWidth:1024,schema:void 0});function xt({responsive:e,children:n}){const[t,r]=u.useState(typeof window<"u"?window.innerWidth:1024);u.useEffect(()=>{let a;const c=()=>{cancelAnimationFrame(a),a=requestAnimationFrame(()=>r(window.innerWidth))};return window.addEventListener("resize",c),()=>{window.removeEventListener("resize",c),cancelAnimationFrame(a)}},[]);const o=(e==null?void 0:e.breakpoint)??768,i=t<o,s=u.useMemo(()=>({isMobile:i,breakpoint:o,width:t,schema:e}),[i,o,t,e]);return l.jsx(bt.Provider,{value:s,children:n})}const Xe=u.createContext(null);function Ke({scene:e,children:n}){const t=u.useRef(e);return t.current=e,l.jsx(Xe.Provider,{value:t.current,children:n})}function h1(){return u.useContext(Xe)}async function Qe(e){var i,s,a;const n=e.basemap??M1.basemap,t=e.token??"",r=e.style??"normal",o={center:e.center??M1.center,zoom:e.zoom??M1.zoom,pitch:e.pitch??M1.pitch,rotation:e.rotation??M1.rotation,minZoom:e.minZoom,maxZoom:e.maxZoom,dragEnable:((i=e.gestureConfig)==null?void 0:i.dragPan)??!0,zoomEnable:((s=e.gestureConfig)==null?void 0:s.pinchZoom)??!0,rotateEnable:((a=e.gestureConfig)==null?void 0:a.dragRotate)??!0};switch(n){case"gaode":{const{GaodeMap:c}=await import("@antv/l7-maps/gaode");return new c({...o,style:Mt(r),token:t})}case"mapbox":{const{Mapbox:c}=await import("@antv/l7-maps/mapbox");return new c({...o,style:wt(r),token:t})}case"tianditu":{const{TMap:c}=await import("@antv/l7-maps/tianditu");return new c({...o,token:t})}case"tencent":{const{TencentMap:c}=await import("@antv/l7-maps/tencent");return new c({...o,token:t})}case"baidu":{const{BaiduMap:c}=await import("@antv/l7-maps/baidu");return new c({...o,style:Ht(r),token:t})}case"maplibre":{const{MapLibre:c}=await import("@antv/l7-maps/maplibre");return new c({...o,style:zt(r),token:t})}case"google":{const{GoogleMap:c}=await import("@antv/l7-maps/google"),d=new c({...o,style:St(r),token:t});return Vt(d),d}case"map":default:{const{Map:c}=await import("@antv/l7-maps/simple");return new c({center:e.center??M1.center,zoom:e.zoom??M1.zoom})}}}function Mt(e){return{light:"light",dark:"dark",normal:"normal",darkblue:"dark",satellite:"satellite"}[e]??e}function wt(e){return{light:"https://tiles.openfreemap.org/styles/positron",dark:"https://tiles.openfreemap.org/styles/dark",normal:"https://tiles.openfreemap.org/styles/bright",liberty:"https://tiles.openfreemap.org/styles/liberty",fiord:"https://tiles.openfreemap.org/styles/fiord"}[e]??e}function Ht(e){return{light:"light",dark:"dark",normal:"normal",darkblue:"dark",satellite:"satellite"}[e]??e}function St(e){return{light:"roadmap",dark:"roadmap",normal:"roadmap",darkblue:"roadmap",satellite:"satellite",hybrid:"hybrid",terrain:"terrain"}[e]??"roadmap"}function zt(e){return{light:"https://tiles.openfreemap.org/styles/positron",dark:"https://tiles.openfreemap.org/styles/dark",normal:"https://tiles.openfreemap.org/styles/bright",liberty:"https://tiles.openfreemap.org/styles/liberty",fiord:"https://tiles.openfreemap.org/styles/fiord"}[e]??e}function Vt(e){const n=["zoomControl","mapTypeControl","streetViewControl","fullscreenControl","scaleControl","rotateControl","panControl"],t={};for(const s of n)t[s]=!1;const r=()=>{const s=e.map;if(!s||typeof s.setOptions!="function")return!1;s.setOptions(t);const a=s.setOptions.bind(s);return s.setOptions=c=>{const d={...c};for(const h of n)h in d&&delete d[h];a(d)},!0};if(r())return;let o=0;const i=setInterval(()=>{o+=1,(r()||o>40)&&clearInterval(i)},100)}function Re({mapSchema:e,children:n,onSceneReady:t,mapEventHandlers:r,events:o,className:i,style:s}){const a=u.useRef(null),c=u.useRef(null),[d,h]=u.useState(null),y=u.useRef(t);y.current=t;const f=u.useRef(r);f.current=r;const g=te(),p=u.useCallback((S,x)=>{var M,A,O;if(x.basemap==="map")return;const Z=((M=x.gestureConfig)==null?void 0:M.dragPan)??!0,z=((A=x.gestureConfig)==null?void 0:A.pinchZoom)??!0,P=((O=x.gestureConfig)==null?void 0:O.dragRotate)??!0;try{const V=S.mapService;V&&typeof V.setMapStatus=="function"&&V.setMapStatus({dragEnable:Z,zoomEnable:z,rotateEnable:P,doubleClickZoom:z})}catch{}},[]);u.useEffect(()=>{if(!a.current)return;let S=!1;const x=j1(e);Qe(x).then(z=>{if(S||!a.current)return;const P=new Ne.Scene({id:a.current,map:z,logoVisible:!1});c.current=P,P.on("loaded",()=>{var M;S||(p(P,x),h(P),(M=y.current)==null||M.call(y,P),Z(P))}),x.bounds&&P.on("loaded",()=>{try{const[M,A]=x.bounds;P.fitBounds([M[0],M[1],A[0],A[1]])}catch{}})});function Z(z){z.on("mapmove",()=>{var M,A;const P={originalEvent:null,center:[z.getCenter().lng,z.getCenter().lat],zoom:z.getZoom(),pitch:z.getPitch(),rotation:z.getRotation()};(A=(M=f.current)==null?void 0:M.onMove)==null||A.call(M,P),o!=null&&o.mapMove&&g.emit(o.mapMove,P)}),z.on("zoomchange",()=>{var M,A;const P={originalEvent:null,center:[z.getCenter().lng,z.getCenter().lat],zoom:z.getZoom(),pitch:z.getPitch(),rotation:z.getRotation()};(A=(M=f.current)==null?void 0:M.onZoom)==null||A.call(M,P),o!=null&&o.mapZoom&&g.emit(o.mapZoom,P)})}return()=>{if(S=!0,c.current){try{c.current.destroy()}catch{}c.current=null}h(null)}},[e.basemap,p]);const C=JSON.stringify(e.center),L=JSON.stringify(e.gestureConfig);u.useEffect(()=>{if(!d)return;const S=j1(e);try{d.setCenter(S.center)}catch{}try{d.setZoom(S.zoom)}catch{}try{d.setPitch(S.pitch)}catch{}try{d.setRotation(S.rotation)}catch{}p(d,S)},[d,C,e.zoom,e.pitch,e.rotation,L,p]);const w=u.useCallback(()=>{if(c.current)try{const S=c.current.map;S&&typeof S.resize=="function"&&S.resize()}catch{}},[]);return u.useEffect(()=>(window.addEventListener("resize",w),()=>window.removeEventListener("resize",w)),[w]),l.jsx("div",{ref:a,className:i??"aimapui-container",style:s??{width:"100%",height:"100%"},children:d&&l.jsx(Ke,{scene:d,children:n})})}function e0(e){if(e.colorField)return{field:e.colorField,values:e.colorValues};if(e.color)return{values:e.color}}function kt(e){if(e.sizeField)return{field:e.sizeField,values:e.sizeValues};if(e.size!==void 0)return{values:e.size}}function t0(e){if(e.shapeField)return{field:e.shapeField,values:e.shapeValues};if(e.shape)return{values:e.shape}}function ne(e){return{color:e0(e),size:kt(e),shape:t0(e),style:e.style?{...e.style}:void 0}}function Et(e){var n,t;return{data:e.source,options:{parser:{type:"json",x:((n=e.sourceConfig)==null?void 0:n.x)??"lng",y:((t=e.sourceConfig)==null?void 0:t.y)??"lat"}}}}function At(e){var n,t;return{data:e.source,options:{parser:{type:"csv",x:(n=e.sourceConfig)==null?void 0:n.x,y:(t=e.sourceConfig)==null?void 0:t.y}}}}function re(e){return{data:e.source,options:void 0}}function Zt(e){var n;return(n=e.sourceConfig)!=null&&n.parser?{data:e.source,options:{parser:e.sourceConfig.parser}}:e.sourceType==="geojson"?re(e):e.sourceType==="csv"?At(e):Et(e)}function n0(e){return{type:"PointLayer",sourceConfig:Zt(e),visual:ne(e),schema:e}}function r0(e){return{type:"LineLayer",sourceConfig:Pt(e),visual:ne(e),schema:e}}function Pt(e){var n,t,r,o,i,s,a,c,d,h;return(n=e.sourceConfig)!=null&&n.parser?{data:e.source,options:{parser:e.sourceConfig.parser}}:e.sourceType==="geojson"?re(e):e.sourceType==="csv"?{data:e.source,options:{parser:{type:"csv",x:(t=e.sourceConfig)==null?void 0:t.x,y:(r=e.sourceConfig)==null?void 0:r.y,x1:(o=e.sourceConfig)==null?void 0:o.x1,y1:(i=e.sourceConfig)==null?void 0:i.y1}}}:{data:e.source,options:{parser:{type:"json",x:((s=e.sourceConfig)==null?void 0:s.x)??"lng",y:((a=e.sourceConfig)==null?void 0:a.y)??"lat",x1:(c=e.sourceConfig)==null?void 0:c.x1,y1:(d=e.sourceConfig)==null?void 0:d.y1,coordinates:(h=e.sourceConfig)==null?void 0:h.coordinates}}}}function o0(e){return{type:"PolygonLayer",sourceConfig:It(e),visual:ne(e),schema:e}}function It(e){var n;return e.sourceType==="geojson"?re(e):{data:e.source,options:{parser:{type:"json",coordinates:((n=e.sourceConfig)==null?void 0:n.coordinates)??"coordinates"}}}}function s0(e){return{type:"HeatmapLayer",sourceConfig:Ft(e),visual:Tt(e),schema:e}}function Ft(e){var n,t,r,o,i,s,a,c;return(n=e.sourceConfig)!=null&&n.parser?{data:e.source,options:{parser:e.sourceConfig.parser,...e.sourceConfig.transforms?{transforms:e.sourceConfig.transforms}:{}}}:e.sourceType==="geojson"?{data:e.source,options:(t=e.sourceConfig)!=null&&t.transforms?{transforms:e.sourceConfig.transforms}:void 0}:e.sourceType==="csv"?{data:e.source,options:{parser:{type:"csv",x:(r=e.sourceConfig)==null?void 0:r.x,y:(o=e.sourceConfig)==null?void 0:o.y},...(i=e.sourceConfig)!=null&&i.transforms?{transforms:e.sourceConfig.transforms}:{}}}:{data:e.source,options:{parser:{type:"json",x:((s=e.sourceConfig)==null?void 0:s.x)??"lng",y:((a=e.sourceConfig)==null?void 0:a.y)??"lat"},...(c=e.sourceConfig)!=null&&c.transforms?{transforms:e.sourceConfig.transforms}:{}}}}function Tt(e){const n=e.sizeField?{field:e.sizeField,values:e.sizeValues}:void 0,t=e0(e),r=t0(e),o=e.style?{...e.style}:void 0;return{color:t,size:n,shape:r,style:o}}function i0(e){return{type:"RasterLayer",sourceConfig:Nt(e),visual:_t(e),schema:e}}function Nt(e){var n;return(n=e.sourceConfig)!=null&&n.parser?{data:e.source,options:{parser:e.sourceConfig.parser}}:{data:e.source,options:e.sourceType==="raster"?{parser:{type:"raster",extent:[73.482190241,3.82501784112,135.106618732,53.557926206]}}:e.sourceType==="rasterTile"?{parser:{type:"rasterTile",tileSize:256,zoomOffset:1}}:void 0}}function _t(e){return{color:void 0,size:void 0,shape:void 0,style:e.style?{...e.style}:void 0}}function l0(e){var n;return{type:"ImageLayer",sourceConfig:{data:e.source,options:{parser:((n=e.sourceConfig)==null?void 0:n.parser)??(e.sourceType==="image"?{type:"image"}:void 0)}},visual:{color:void 0,size:void 0,shape:void 0,style:e.style?{...e.style}:void 0},schema:e}}function oe(e,n,t,r){const o=u.useRef(n),i=u.useRef(t);o.current=n,i.current=t;const s=u.useRef(r);s.current=r;const a=u.useRef(null),c=u.useRef(e);c.current=e;const d=u.useCallback(()=>{const y=c.current;if(y)try{const f=y.mapService;if(f){const g=f.lngLatToContainer([o.current,i.current]);g&&s.current(g.x,g.y)}else{const g=y.lngLatToContainer([o.current,i.current]);g&&s.current(g.x,g.y)}}catch{}},[]),h=u.useCallback(()=>{d()},[d]);u.useEffect(()=>{if(!e)return;const y=()=>{setTimeout(()=>d(),0)};return e.loaded?y():e.on("loaded",y),()=>{e.off("loaded",y)}},[e,d]),u.useEffect(()=>{d()},[n,t,d]),u.useEffect(()=>{if(e){try{const y=e.mapService;if(y)return y.on("camerachange",h),y.on("viewchange",h),()=>{y.off("camerachange",h),y.off("viewchange",h)}}catch{}return e.on("camerachange",h),e.on("resize",h),()=>{e.off("camerachange",h),e.off("resize",h)}}},[e,h]),u.useEffect(()=>()=>{a.current!==null&&(cancelAnimationFrame(a.current),a.current=null)},[])}function d1(...e){return at(e)}function Dt(e,n=1){const t=e.replace("#","").match(/.{2}/g);if(!t||t.length<3)return e;const[r,o,i]=t.map(s=>parseInt(s,16));return`rgba(${r}, ${o}, ${i}, ${n})`}function B1(e){return typeof e=="string"&&/<[a-zA-Z][^>]*>/.test(e)}let N1=null;const se=new Set;function $t(e,n){N1&&N1!==e&&se.forEach(t=>t(e)),N1=e}function Ot(e){N1===e&&(N1=null)}function jt(e,n,t,r,o,i,s,a){if(s!=="auto")return I1(s,a);const c=n,d=i-n,h=e,y=o-e,f=8;if(c>=r+a+f)return I1("top",a);if(d>=r+a+f)return I1("bottom",a);if(y>=t+a+f)return I1("right",a);if(h>=t+a+f)return I1("left",a);const p=Object.entries({top:c,bottom:d,right:y,left:h}).sort((C,L)=>L[1]-C[1])[0][0];return I1(p,a)}function I1(e,n){switch(e){case"top":return{placement:"top",transform:`translate(-50%, -100%) translateY(-${n}px)`};case"bottom":return{placement:"bottom",transform:`translate(-50%, 0) translateY(${n}px)`};case"left":return{placement:"left",transform:`translate(-100%, -50%) translateX(-${n}px)`};case"right":return{placement:"right",transform:`translate(0, -50%) translateX(${n}px)`}}}function U1({onClick:e}){return l.jsx("button",{onClick:n=>{n.stopPropagation(),e()},className:"aimapui-popup-close-btn absolute top-2 right-2 size-8 flex items-center justify-center text-on-surface-variant rounded-lg transition-[color,background] duration-200 cursor-pointer bg-transparent border-none p-0 hover:text-on-surface hover:bg-surface-container-high [&_.material-symbols-outlined]:text-xl","aria-label":"关闭",children:l.jsx("span",{className:"material-symbols-outlined",children:"close"})})}const Bt={top:"M0 0L8 8L16 0",bottom:"M0 8L8 0L16 8",left:"M0 0L8 8L0 16",right:"M8 0L0 8L8 16"};function W1({placement:e}){const n=e==="top"||e==="bottom",t=n?16:8,r=n?8:16,o=n?"0 0 16 8":"0 0 8 16",i=Bt[e];return l.jsx("div",{className:`aimapui-popup-tip-arrow aimapui-popup-tip-arrow--${e==="top"?"bottom":e==="bottom"?"top":e}`,children:l.jsxs("svg",{width:t,height:r,viewBox:o,fill:"none",children:[l.jsx("path",{d:i,fill:"rgba(248, 249, 255, 0.95)"}),l.jsx("path",{d:i,stroke:"rgba(195, 198, 215, 0.3)",strokeWidth:"0.5",fill:"none"})]})})}function Ut({header:e,onClose:n}){return e.coverUrl?l.jsxs("div",{className:"aimapui-popup-cover relative aspect-video overflow-hidden",children:[l.jsx("img",{src:e.coverUrl,alt:e.title,className:"aimapui-popup-cover-img w-full h-full object-cover"}),l.jsx("button",{className:"aimapui-popup-close-btn aimapui-popup-close-btn--cover absolute top-2 right-2 size-8 bg-black/30 backdrop-blur-sm text-white flex items-center justify-center rounded-full border-none cursor-pointer transition-colors duration-200 z-10 hover:bg-black/50 [&_.material-symbols-outlined]:text-lg","aria-label":"关闭",onClick:t=>{t.stopPropagation(),n()},children:l.jsx("span",{className:"material-symbols-outlined",children:"close"})}),e.statusLabel&&l.jsxs("div",{className:"aimapui-popup-status-badge absolute bottom-2 left-2 flex items-center gap-1.5 px-2 py-0.5 bg-surface/90 backdrop-blur-sm rounded-md shadow-sm text-[10px] font-semibold uppercase tracking-wide text-on-surface",children:[l.jsx("div",{className:"size-2 rounded-full",style:{background:e.statusColor||"#10b981"}}),l.jsx("span",{children:e.statusLabel})]})]}):null}function Wt({header:e,onClose:n,hasCover:t,showStatusDot:r}){return l.jsxs("div",{className:d1("aimapui-popup-header relative flex items-center p-4",!t&&"pr-10"),children:[r&&e.statusDot&&l.jsx("div",{className:"size-2 rounded-full shrink-0 mr-2 animate-pulse",style:{background:e.statusDot}}),l.jsx("h3",{className:"aimapui-popup-title text-xl leading-7 font-semibold text-on-surface m-0 flex-1 min-w-0 truncate",children:e.title}),!t&&l.jsx(U1,{onClick:n})]})}function qt({attributes:e,size:n}){const t=n==="compact",r=n==="detailed",o=t?1:2;return l.jsx("div",{className:d1("aimapui-popup-attrs",t?"flex flex-col":"grid gap-2"),style:t?void 0:{gridTemplateColumns:`repeat(${o}, 1fr)`},children:e.map((i,s)=>r&&i.icon?l.jsxs("div",{className:"aimapui-popup-attr flex items-center gap-2",children:[l.jsx("div",{className:"aimapui-popup-attr-icon size-12 rounded-lg bg-surface-container-highest flex items-center justify-center text-primary shrink-0 [&_.material-symbols-outlined]:text-[28px]",children:l.jsx("span",{className:"material-symbols-outlined",children:i.icon})}),l.jsxs("div",{children:[l.jsx("p",{className:"aimapui-popup-attr-label text-sm leading-5 text-on-surface-variant m-0",children:i.label}),l.jsx("p",{className:"aimapui-popup-attr-value text-sm leading-5 font-medium text-on-surface m-0",style:i.valueColor?{color:i.valueColor}:void 0,children:i.value})]})]},s):l.jsxs("div",{className:d1("aimapui-popup-attr","flex justify-between items-baseline gap-2",t&&"py-2 border-b border-outline-variant/30 last:border-b-0 last:pb-0 first:pt-0"),children:[l.jsx("p",{className:"aimapui-popup-attr-label text-sm leading-5 text-on-surface-variant m-0",children:i.label}),l.jsx("p",{className:"aimapui-popup-attr-value text-sm leading-5 font-medium text-on-surface m-0 text-right",style:i.valueColor?{color:i.valueColor}:void 0,children:i.value})]},s))})}function Gt({actions:e}){return l.jsx("div",{className:"aimapui-popup-actions flex gap-3 px-4 pb-4",children:e.map((n,t)=>l.jsx("button",{className:d1("aimapui-popup-action-btn","flex-1 py-2.5 text-sm leading-5 font-semibold rounded-lg border-none cursor-pointer transition-all duration-150 active:scale-[0.98]",n.variant==="secondary"?"aimapui-popup-action-btn--secondary bg-transparent text-on-surface border-2 border-solid border-outline-variant hover:bg-surface-container-low":"aimapui-popup-action-btn--primary bg-primary text-on-primary shadow-sm hover:shadow-[0_4px_12px_rgba(0,74,198,0.3)]"),onClick:n.onClick,children:n.label},t))})}function _1({longitude:e,latitude:n,content:t,closeButton:r=!0,size:o="standard",placement:i="auto",offset:s=8,header:a,attributes:c,actions:d,visible:h,singleton:y=!1,overlayContainer:f,onClose:g,className:p}){const C=h1(),L=h!==void 0,[w,S]=u.useState(!0),x=L?h:w,[Z,z]=u.useState(!1),[P,M]=u.useState("top"),A=u.useRef(null),O=u.useRef(!0);u.useRef(!1);const V=u.useRef(Symbol("popup")),[D,_]=u.useState(null);u.useEffect(()=>{if(f||!C)return;const G=()=>{try{const r1=C.mapService;if(r1&&typeof r1.getMarkerContainer=="function"){const I=r1.getMarkerContainer();if(I)return _(I),!0}}catch{}return!1};if(G())return;const n1=()=>{G()};return C.loaded?n1():C.on("loaded",n1),()=>{C.off("loaded",n1)}},[C,f]);const F=f??D,b=u.useCallback(()=>{Z||(z(!0),setTimeout(()=>{L||S(!1),g==null||g(),z(!1)},150))},[L,g,Z]);u.useEffect(()=>{if(!y||!x)return;const G=V.current;return $t(G),()=>Ot(G)},[y,x,b]),u.useEffect(()=>{if(!y)return;const G=V.current,n1=r1=>{r1!==G&&x&&b()};return se.add(n1),()=>{se.delete(n1)}},[y,x,b]);const H=u.useRef(()=>{});H.current=(G,n1)=>{var J;const r1=A.current;if(!r1)return;const I=Math.round(G),W=Math.round(n1);let l1=0,X=0;try{const $=C==null?void 0:C.mapService,q=(J=$==null?void 0:$.getContainer)==null?void 0:J.call($);if(q){const e1=q.getBoundingClientRect();l1=e1.width||q.clientWidth||q.scrollWidth,X=e1.height||q.clientHeight||q.scrollHeight}}catch{}const s1=r1.querySelector(".aimapui-popup-content"),u1=(s1==null?void 0:s1.offsetWidth)||320,E=(s1==null?void 0:s1.offsetHeight)||200,{placement:m,transform:k}=jt(I,W,u1,E,l1,X,i,s);M(m),r1.style.left="0",r1.style.top="0",r1.style.transform=`translate3d(${I}px, ${W}px, 0) ${k}`;let v;if(l1>0&&X>0)v=I>=-2&&I<=l1+2&&W>=-2&&W<=X+2;else{const $=r1.parentElement;$&&$.clientWidth>0&&$.clientHeight>0?v=I>=0&&I<=$.clientWidth&&W>=0&&W<=$.clientHeight:v=O.current}O.current=v,r1.style.display=v?"":"none"};const B=u.useCallback(()=>{if(C)try{const G=C.mapService,n1=G?G.lngLatToContainer([e,n]):C.lngLatToContainer([e,n]);n1&&H.current(n1.x,n1.y)}catch{}},[C,e,n]);if(u.useEffect(()=>{if(!F||!x)return;const G=requestAnimationFrame(()=>{B()});return()=>cancelAnimationFrame(G)},[F,x,B]),u.useEffect(()=>{if(!x)return;const G=n1=>{n1.key==="Escape"&&b()};return document.addEventListener("keydown",G),()=>document.removeEventListener("keydown",G)},[x,b]),u.useEffect(()=>{var I;if(!x||!F)return;const G=W=>{const l1=A.current;if(!l1||l1.contains(W.target))return;const X=W.target;X.closest(".aimapui-marker")||X.closest("[data-marker]")||b()};let n1=null;try{const W=C==null?void 0:C.mapService;W&&(n1=(I=W.getContainer)==null?void 0:I.call(W))}catch{}const r1=n1||F.parentElement||F;return r1.addEventListener("click",G,!0),()=>r1.removeEventListener("click",G,!0)},[x,F,C,b]),oe(C,e,n,(G,n1)=>{H.current(G,n1)}),!x||!F)return null;const Y=a||c||d,t1=!!(a!=null&&a.coverUrl),K=P==="left"||P==="right",R=()=>Y?l.jsxs(l.Fragment,{children:[a&&t1&&l.jsx(Ut,{header:a,onClose:b}),a&&l.jsx(Wt,{header:a,onClose:b,hasCover:t1,showStatusDot:o==="compact"}),l.jsxs("div",{className:d1("aimapui-popup-body relative p-4 text-sm leading-5 text-on-surface break-words whitespace-normal",!a&&r&&"pr-10"),children:[!a&&r&&l.jsx(U1,{onClick:b}),t&&!B1(t)&&typeof t!="string"&&l.jsx("div",{children:t}),t&&B1(t)&&l.jsx("div",{dangerouslySetInnerHTML:{__html:t}}),t&&!B1(t)&&typeof t=="string"&&l.jsx("div",{children:t}),!t&&!(c!=null&&c.length)&&!(d!=null&&d.length)&&!a&&l.jsx("div",{style:{color:"var(--color-on-surface-variant)"},children:"无内容"}),c&&c.length>0&&l.jsx(qt,{attributes:c,size:o})]}),d&&d.length>0&&l.jsx(Gt,{actions:d})]}):B1(t)?l.jsxs("div",{className:"aimapui-popup-body relative p-4 pt-2 pr-10 text-sm leading-5 text-on-surface break-words whitespace-normal",children:[r&&l.jsx(U1,{onClick:b}),l.jsx("div",{dangerouslySetInnerHTML:{__html:t}})]}):l.jsxs("div",{className:"aimapui-popup-body relative p-4 pt-2 pr-10 text-sm leading-5 text-on-surface break-words whitespace-normal",children:[r&&l.jsx(U1,{onClick:b}),l.jsx("div",{children:t??""})]}),a1=K?{display:"flex",alignItems:"center"}:{display:"flex",flexDirection:"column",alignItems:"center"};return O1.createPortal(l.jsxs("div",{ref:A,className:d1("aimapui-popup",`aimapui-popup--${o}`),style:{position:"absolute",left:0,top:0,transform:"translate(-9999px, -9999px)",display:"none",zIndex:30,pointerEvents:"auto",...a1},children:[P==="bottom"&&l.jsx(W1,{placement:P}),P==="right"&&l.jsx(W1,{placement:P}),l.jsx("div",{className:d1("aimapui-popup-content overflow-hidden rounded-xl",Z&&"aimapui-popup-content--exit",p),children:R()}),P==="top"&&l.jsx(W1,{placement:P}),P==="left"&&l.jsx(W1,{placement:P})]}),F)}const Yt={top:"bottom",bottom:"top",left:"right",right:"left"},Jt={top:"translate(-50%, -100%)",bottom:"translate(-50%, 0)",left:"translate(-100%, -50%)",right:"translate(0, -50%)"};function ie({content:e,variant:n="dark",longitude:t,latitude:r,targetElement:o,placement:i="top",offset:s=8,trigger:a="hover",visible:c,title:d,items:h,overlayContainer:y,className:f}){const{resolvedTheme:g}=Je(),p=h1(),C=c!==void 0,[L,w]=u.useState(!1),S=C?c:L,x=u.useRef(null),Z=u.useRef(null),z=t!==void 0&&r!==void 0;u.useEffect(()=>{if(z||!o||C)return;const b=()=>{Z.current=setTimeout(()=>w(!0),100)},H=()=>{Z.current&&(clearTimeout(Z.current),Z.current=null),w(!1)},B=()=>{Z.current&&clearTimeout(Z.current),w(Y=>!Y)};return a==="hover"?(o.addEventListener("mouseenter",b),o.addEventListener("mouseleave",H)):o.addEventListener("click",B),()=>{Z.current&&clearTimeout(Z.current),o.removeEventListener("mouseenter",b),o.removeEventListener("mouseleave",H),o.removeEventListener("click",B)}},[o,a,z,C]);const P=u.useCallback(()=>{if(!o||!x.current)return;const b=o.getBoundingClientRect(),H=x.current.getBoundingClientRect();let B=0,Y=0;switch(i){case"right":B=b.right+s,Y=b.top+b.height/2-H.height/2;break;case"bottom":B=b.left+b.width/2-H.width/2,Y=b.bottom+s;break;case"left":B=b.left-H.width-s,Y=b.top+b.height/2-H.height/2;break;case"top":default:B=b.left+b.width/2-H.width/2,Y=b.top-H.height-s;break}const t1=8;B=Math.max(t1,Math.min(B,window.innerWidth-H.width-t1)),Y=Math.max(t1,Math.min(Y,window.innerHeight-H.height-t1)),x.current.style.display="",x.current.style.left=`${B}px`,x.current.style.top=`${Y}px`},[o,i,s]);u.useEffect(()=>{if(z||!S||!o)return;P();const b=()=>P();return window.addEventListener("resize",b),window.addEventListener("scroll",b,!0),()=>{window.removeEventListener("resize",b),window.removeEventListener("scroll",b,!0)}},[S,o,z,P]);const M=u.useCallback(()=>{var b,H;if(!p)return null;try{const B=p.mapService,Y=((b=B==null?void 0:B.getContainer)==null?void 0:b.call(B))??((H=p.getMapContainer)==null?void 0:H.call(p))??p.container;if(Y instanceof HTMLElement)return Y.getBoundingClientRect()}catch{}return null},[p]),A=u.useRef(()=>{});A.current=(b,H)=>{const B=x.current;if(!B||!z)return;let Y=0,t1=0;switch(i){case"top":t1=-s;break;case"bottom":t1=s;break;case"left":Y=-s;break;case"right":Y=s;break}const K=M();let R=!0;if(K&&K.width>0&&K.height>0&&(R=b>=-2&&b<=K.width+2&&H>=-2&&H<=K.height+2),!R){B.style.display="none";return}const a1=K?K.left:0,G=K?K.top:0,n1=Math.round(b+Y+a1),r1=Math.round(H+t1+G),I=Jt[i];B.style.display="",B.style.transform=`translate3d(${n1}px, ${r1}px, 0) ${I}`};const O=u.useCallback(()=>{if(!(!p||!z))try{const b=p.mapService,H=b?b.lngLatToContainer([t,r]):p.lngLatToContainer([t,r]);if(!H||isNaN(H.x)||isNaN(H.y))return;A.current(H.x,H.y)}catch{}},[p,t,r,z]);if(u.useEffect(()=>{if(!z||!S)return;const b=requestAnimationFrame(()=>O());return()=>cancelAnimationFrame(b)},[S,z,O]),oe(z?p:null,t??0,r??0,(b,H)=>{A.current(b,H)}),!S)return null;const V=Yt[i],D=d||h&&h.length>0,_=()=>e?typeof e=="string"?l.jsx("span",{dangerouslySetInnerHTML:{__html:e}}):e:D?l.jsxs(l.Fragment,{children:[d&&l.jsx("p",{className:"font-sans text-xs leading-4 font-semibold m-0 mb-0.5",children:d}),h&&h.length>0&&l.jsx("div",{className:"flex flex-col gap-0.5",children:h.map((b,H)=>l.jsxs("div",{className:"flex justify-between items-center gap-3",children:[l.jsx("span",{className:"text-xs leading-4 font-normal opacity-70 m-0",children:b.label}),l.jsx("span",{className:"font-mono text-xs leading-4 font-[450] text-right m-0",children:b.value})]},H))})]}):null,F=l.jsxs("div",{ref:x,"data-theme":g,className:d1("aimapui-tooltip",n!=="dark"&&`aimapui-tooltip--${n}`),style:{position:"fixed",left:0,top:0,transform:"translate(-9999px, -9999px)",display:"none",zIndex:9999,pointerEvents:"none"},children:[l.jsx("div",{className:d1("aimapui-tooltip-content",f),children:_()}),l.jsx("div",{className:`aimapui-tooltip-arrow aimapui-tooltip-arrow--${V}`})]});return O1.createPortal(F,document.body)}function Xt(e,n){let t;switch(e.type){case"point":t=n0(e);break;case"line":t=r0(e);break;case"polygon":t=o0(e);break;case"heatmap":t=s0(e);break;case"raster":t=i0(e);break;case"image":t=l0(e);break;default:return console.warn(`[aimapui] Unknown layer type: ${e.type}`),null}return Kt(t)}function Kt(e,n){var h;const t=p1[e.type];if(!t)throw new Error(`[aimapui] L7 layer class "${e.type}" not found`);const r=new t({...e.schema.zIndex!==void 0?{zIndex:e.schema.zIndex}:{},...e.schema.name?{name:e.schema.name}:{}}),{data:o,options:i}=e.sourceConfig;i?r.source(o,i):r.source(o);const{color:s,size:a,shape:c,style:d}=e.visual;if(s&&(s.field&&s.values?r.color(s.field,s.values):s.values&&r.color(s.values)),a&&(a.field&&a.values?r.size(a.field,a.values):a.values!==void 0&&r.size(a.values)),c&&(c.field&&c.values?r.shape(c.field,c.values):c.values&&r.shape(c.values)),d&&Object.keys(d).length>0&&r.style(d),e.type==="PointLayer"&&!c&&r.shape("circle"),e.type==="LineLayer"&&!c&&r.shape("line"),e.schema.filterField&&e.schema.filterValues){const y=e.schema.filterField,f=e.schema.filterValues;r.filter(y,g=>f.includes(g))}return(h=e.schema.animate)!=null&&h.enable&&r.animate(!0,e.schema.animate),e.schema.active&&r.active(e.schema.active),e.schema.select&&r.select(e.schema.select),e.schema.opacity!==void 0&&r.style({opacity:e.schema.opacity}),e.schema.blend&&r.blend(e.schema.blend),e.schema.visible===!1&&r.hide(),e.schema.minZoom!==void 0&&r.minZoom(e.schema.minZoom),e.schema.maxZoom!==void 0&&r.maxZoom(e.schema.maxZoom),r}function q1(e,n,t){var a,c,d,h,y,f,g,p;const r=t,o=Number.isFinite((a=r==null?void 0:r.lnglat)==null?void 0:a.lng)?r.lnglat.lng:Number.isFinite((c=r==null?void 0:r.lngLat)==null?void 0:c.lng)?r.lngLat.lng:Number.isFinite((d=r==null?void 0:r.coordinate)==null?void 0:d.lng)?r.coordinate.lng:0,i=Number.isFinite((h=r==null?void 0:r.lnglat)==null?void 0:h.lat)?r.lnglat.lat:Number.isFinite((y=r==null?void 0:r.lngLat)==null?void 0:y.lat)?r.lngLat.lat:Number.isFinite((f=r==null?void 0:r.coordinate)==null?void 0:f.lat)?r.coordinate.lat:0,s=((g=r==null?void 0:r.feature)==null?void 0:g.properties)??(r==null?void 0:r.feature)??((p=r==null?void 0:r.data)==null?void 0:p.properties)??(r==null?void 0:r.data)??void 0;return{layerId:e,layerType:n,originalEvent:t,lng:o,lat:i,feature:s}}function V1({schema:e,scene:n,eventHandlers:t,onLayerCreated:r}){const o=u.useRef(null),i=te(),s=u.useRef(t);s.current=t;const a=u.useMemo(()=>{const{source:h,...y}=e;let f;if(ArrayBuffer.isView(h))f=`TypedArray:${h.length}`;else if(h&&typeof h=="object"&&"width"in h){const g=h;f=`Rasters:${g.width}x${g.height}:${g.length}`}else if(typeof h=="string")f=h;else try{f=JSON.stringify(h)}catch{f=String(h)}return f+"|"+Qt(y)},[e]),[c,d]=u.useState({visible:!1,lng:0,lat:0,content:"",trigger:"click"});return u.useEffect(()=>{var P,M,A,O;const h=Xt(e);if(!h)return;let y=!1;o.current=h;const f=e.id??e.name??`layer-${e.type}`,g=e.events,p=!!(g!=null&&g.enablePopup),C=(g==null?void 0:g.popupTrigger)??"click",L=V=>{if(!p)return;const D=V.feature;if(!D)return;const _=Rt(D,g==null?void 0:g.popupFields,g==null?void 0:g.popupTemplate);d({visible:!0,lng:V.lng,lat:V.lat,content:_,trigger:C})},w=()=>{d(V=>({...V,visible:!1}))},S=!!((P=s.current)!=null&&P.onClick||g!=null&&g.click||p&&C==="click"),x=!!((M=s.current)!=null&&M.onMouseMove||g!=null&&g.mousemove||p&&C==="hover"),Z=!!((A=s.current)!=null&&A.onMouseEnter||g!=null&&g.mouseenter),z=!!((O=s.current)!=null&&O.onMouseLeave||g!=null&&g.mouseleave||p&&C==="hover");return S&&h.on("click",V=>{var _,F;const D=q1(f,e.type,V);(F=(_=s.current)==null?void 0:_.onClick)==null||F.call(_,D),g!=null&&g.click&&i.emit(g.click,D),C==="click"&&L(D)}),x&&h.on("mousemove",V=>{var _,F;const D=q1(f,e.type,V);(F=(_=s.current)==null?void 0:_.onMouseMove)==null||F.call(_,D),C==="hover"&&L(D),g!=null&&g.mousemove&&i.emit(g.mousemove,D)}),Z&&h.on("mouseenter",V=>{var _,F;const D=q1(f,e.type,V);(F=(_=s.current)==null?void 0:_.onMouseEnter)==null||F.call(_,D),g!=null&&g.mouseenter&&i.emit(g.mouseenter,D)}),z&&h.on("mouseleave",V=>{var _,F;const D=q1(f,e.type,V);(F=(_=s.current)==null?void 0:_.onMouseLeave)==null||F.call(_,D),C==="hover"&&w(),g!=null&&g.mouseleave&&i.emit(g.mouseleave,D)}),n.addLayer(h),r==null||r(h),h.on("inited",()=>{var V,D;if(!y){if(e.autoFit){const _=(D=(V=h.getSource)==null?void 0:V.call(h))==null?void 0:D.extent;if(_&&Array.isArray(_)&&_.length>=4){const[F,b,H,B]=_;isFinite(F)&&isFinite(b)&&isFinite(H)&&isFinite(B)&&F<H&&b<B&&n.fitBounds([[F,b],[H,B]])}}n.render()}}),()=>{if(y=!0,o.current){try{n.removeLayer(o.current)}catch{}o.current=null}d(V=>({...V,visible:!1}))}},[a,n,i]),u.useEffect(()=>{o.current&&(e.visible===!1?o.current.hide():o.current.show(),e.zIndex!==void 0&&(o.current.zIndex=e.zIndex))},[e.visible,e.zIndex]),c.visible?c.trigger==="hover"?l.jsx(ie,{longitude:c.lng,latitude:c.lat,content:c.content,variant:"dark",placement:"top",visible:!0}):l.jsx(_1,{longitude:c.lng,latitude:c.lat,content:c.content,closeButton:!0,size:"compact",onClose:()=>d(h=>({...h,visible:!1}))}):null}function Qt(e){return JSON.stringify(le(e))}function le(e){if(ArrayBuffer.isView(e))return`[TypedArray:${e.length}]`;if(e instanceof ArrayBuffer)return`[ArrayBuffer:${e.byteLength}]`;if(Array.isArray(e))return e.length>1e3?`[Array:${e.length}]`:e.map(le);if(e&&typeof e=="object"){const n=e,t=Object.keys(n).sort(),r={};return t.forEach(o=>{r[o]=le(n[o])}),r}return e}function Rt(e,n,t){return t?t.replace(/\{\{(\w+)\}\}/g,(i,s)=>String(e[s]??"")):`<table style="font-size:12px">${(n??Object.keys(e).filter(i=>!["_id","id","geometry","coordinates"].includes(i))).map(i=>`<tr><td style="font-weight:600;padding-right:8px">${i}</td><td>${e[i]??""}</td></tr>`).join("")}</table>`}function a0({layers:e,eventHandlers:n}){const t=h1();return t?l.jsx(l.Fragment,{children:e.map((r,o)=>l.jsx(V1,{schema:r,scene:t,eventHandlers:n},r.id??`layer-${o}`))}):null}const c0=u.createContext(!1);function v1(){return u.useContext(c0)}const ae=new Set,y1={mark(e){e&&typeof e=="object"&&"$$typeof"in e&&ae.add(e),e&&typeof e=="function"&&ae.add(e)},check(e){if("position"in e.props)return!0;const n=e.type;if(ae.has(n))return!0;const t=n==null?void 0:n.displayName;return!!(typeof t=="string"&&t.endsWith("Control"))}};function ce({children:e,className:n,style:t}){const{controlGroups:r,otherChildren:o}=en(e);return l.jsx(c0.Provider,{value:!0,children:l.jsxs("div",{className:`l7-control-container${n?` ${n}`:""}`,style:t,children:[Object.entries(r).map(([i,s])=>{const a=nn(i);return l.jsx("div",{className:`l7-control-anchor ${a}`,children:s},i)}),o]})})}function en(e){const n={},t=[];return u.Children.forEach(e,(r,o)=>{var i;if(!u.isValidElement(r)){t.push(r);return}if(y1.check(r)){const s=((i=r.props)==null?void 0:i.position)??"topright";n[s]||(n[s]=[]),n[s].push(r)}else t.push(u.isValidElement(r)?u.cloneElement(r,{key:r.key??`non-ctrl-${o}`}):r)}),{controlGroups:n,otherChildren:t}}function tn(e){switch(e){case"topleft":return{vSide:"top",hSide:"left",direction:"column"};case"topright":return{vSide:"top",hSide:"right",direction:"column"};case"bottomleft":return{vSide:"bottom",hSide:"left",direction:"column"};case"bottomright":return{vSide:"bottom",hSide:"right",direction:"column"};case"topcenter":return{vSide:"top",hSide:"left",direction:"row"};case"bottomcenter":return{vSide:"bottom",hSide:"left",direction:"row"};case"lefttop":return{vSide:"top",hSide:"left",direction:"row"};case"leftbottom":return{vSide:"bottom",hSide:"left",direction:"row"};case"righttop":return{vSide:"top",hSide:"right",direction:"row"};case"rightbottom":return{vSide:"bottom",hSide:"right",direction:"row"};default:return{vSide:"top",hSide:"right",direction:"column"}}}function nn(e){if(e==="rightcenter")return"l7-rightcenter l7-column";if(e==="leftcenter")return"l7-leftcenter l7-column";const{vSide:n,hSide:t,direction:r}=tn(e);return`l7-${n} l7-${t} l7-${r}`}function L1(e){const n=h1(),t=u.useMemo(()=>{if(!n)return null;try{return n.mapService??null}catch{return null}},[n]),r=u.useCallback(()=>{var i;if(!n)return null;try{return t&&typeof t.getContainer=="function"?t.getContainer():((i=n.getContainer)==null?void 0:i.call(n))??null}catch{return null}},[n,t]),o=u.useMemo(()=>{if(e==="rightcenter")return"l7-rightcenter l7-column";if(e==="leftcenter")return"l7-leftcenter l7-column";const{vSide:i,hSide:s,direction:a}=rn(e??"topright");return`l7-${i} l7-${s} l7-${a}`},[e]);return{scene:n,mapsService:t,getMapContainer:r,positionClassName:o}}function rn(e){switch(e){case"topleft":return{vSide:"top",hSide:"left",direction:"column"};case"topright":return{vSide:"top",hSide:"right",direction:"column"};case"bottomleft":return{vSide:"bottom",hSide:"left",direction:"column"};case"bottomright":return{vSide:"bottom",hSide:"right",direction:"column"};case"topcenter":return{vSide:"top",hSide:"left",direction:"row"};case"bottomcenter":return{vSide:"bottom",hSide:"left",direction:"row"};case"lefttop":return{vSide:"top",hSide:"left",direction:"row"};case"leftbottom":return{vSide:"bottom",hSide:"left",direction:"row"};case"righttop":return{vSide:"top",hSide:"right",direction:"row"};case"rightbottom":return{vSide:"bottom",hSide:"right",direction:"row"};case"rightcenter":return{vSide:"top",hSide:"right",direction:"column"};case"leftcenter":return{vSide:"top",hSide:"left",direction:"column"};default:return{vSide:"top",hSide:"right",direction:"column"}}}function ue({position:e="bottomright",zoomInText:n,zoomInTitle:t="Zoom in",zoomOutText:r,zoomOutTitle:o="Zoom out",showZoom:i=!1,className:s,style:a}){const{mapsService:c,positionClassName:d}=L1(e),h=v1(),[y,f]=u.useState(0),[g,p]=u.useState(!0),[C,L]=u.useState(!0),w=u.useRef(()=>{if(!c)return;const z=Math.floor(c.getZoom());f(z),p(c.getZoom()<c.getMaxZoom()),L(c.getZoom()>c.getMinZoom())});u.useEffect(()=>{if(!c)return;w.current();const z=()=>w.current();return c.on("zoomend",z),c.on("zoomchange",z),()=>{c.off("zoomend",z),c.off("zoomchange",z)}},[c]);const S=()=>{c&&c.getZoom()<c.getMaxZoom()&&c.zoomIn()},x=()=>{c&&c.getZoom()>c.getMinZoom()&&c.zoomOut()},Z=l.jsxs("div",{className:`l7-control l7-control-zoom l7-control--glass${s?` ${s}`:""}`,style:a,children:[l.jsx("button",{className:"l7-button-control",onClick:S,disabled:!g,title:t,"aria-label":t,children:n??l.jsx("span",{className:"material-symbols-outlined",children:"add"})}),i&&l.jsx("button",{className:"l7-button-control l7-control-zoom__number",disabled:!0,children:y}),l.jsx("button",{className:"l7-button-control",onClick:x,disabled:!C,title:o,"aria-label":o,children:r??l.jsx("span",{className:"material-symbols-outlined",children:"remove"})})]});return h?Z:l.jsx("div",{className:`l7-control-anchor ${d}`,children:Z})}y1.mark(ue);function on(e,n){const[t,r]=e,[o,i]=n,s=63710088e-1,a=(i-r)*Math.PI/180,c=(o-t)*Math.PI/180,d=Math.sin(a/2)*Math.sin(a/2)+Math.cos(r*Math.PI/180)*Math.cos(i*Math.PI/180)*Math.sin(c/2)*Math.sin(c/2),h=2*Math.atan2(Math.sqrt(d),Math.sqrt(1-d));return s*h}function de(e){const n=Math.pow(10,Math.floor(Math.abs(e)).toString().length-1);let t=e/n;return t=t>=10?10:t>=5?5:t>=3?3:t>=2?2:1,n*t}function he({position:e="bottomleft",maxWidth:n=100,metric:t=!0,imperial:r=!1,updateWhenIdle:o=!1,className:i,style:s}){const{mapsService:a,positionClassName:c}=L1(e),d=v1(),[h,y]=u.useState([]),f=u.useRef(()=>{if(a)try{const C=a.getSize()[1]/2,L=a.containerToLngLat([0,C]),w=a.containerToLngLat([n,C]);if(!L||!w)return;const S=on([L.lng,L.lat],[w.lng,w.lat]),x=[];if(t&&S){const Z=de(S),z=Z<1e3?`${Z} m`:`${Z/1e3} km`;x.push({text:z,width:Math.round(n*(Z/S))})}if(r&&S){const Z=S*3.2808399;if(Z>5280){const z=Z/5280,P=de(z);x.push({text:`${P} mi`,width:Math.round(n*(P/z))})}else{const z=de(Z);x.push({text:`${z} ft`,width:Math.round(n*(z/Z))})}}y(x)}catch{}});u.useEffect(()=>{if(!a)return;f.current();const p=()=>f.current(),C=o?"moveend":"mapmove",L=o?"zoomend":"zoomchange";return a.on(C,p),a.on(L,p),()=>{a.off(C,p),a.off(L,p)}},[a,n,t,r,o]);const g=l.jsx("div",{className:`l7-control l7-control-scale l7-control--glass${i?` ${i}`:""}`,style:s,children:h.map((p,C)=>l.jsx("div",{className:"l7-control-scale-line",style:{width:p.width},children:p.text},C))});return d?g:l.jsx("div",{className:`l7-control-anchor ${c}`,children:g})}y1.mark(he);function fe({position:e="topright",container:n,className:t,style:r}){const{getMapContainer:o,positionClassName:i}=L1(e),s=v1(),[a,c]=u.useState(!1),d=u.useCallback(()=>n??o()??document.documentElement,[n,o]),h=u.useCallback(()=>{const f=d();a?document.exitFullscreen?document.exitFullscreen():document.webkitExitFullscreen&&document.webkitExitFullscreen():f.requestFullscreen?f.requestFullscreen():f.webkitRequestFullscreen&&f.webkitRequestFullscreen()},[a,d]);u.useEffect(()=>{const f=()=>{c(!!document.fullscreenElement)};return document.addEventListener("fullscreenchange",f),()=>document.removeEventListener("fullscreenchange",f)},[]);const y=l.jsx("div",{className:`l7-control l7-control--glass${t?` ${t}`:""}`,style:r,children:l.jsx("button",{className:"l7-button-control",onClick:h,title:a?"退出全屏":"全屏","aria-label":a?"退出全屏":"全屏",children:l.jsx("span",{className:"material-symbols-outlined",children:a?"fullscreen_exit":"fullscreen"})})});return s?y:l.jsx("div",{className:`l7-control-anchor ${i}`,children:y})}y1.mark(fe);function pe({position:e="topright",transform:n,className:t,style:r}){const{mapsService:o,positionClassName:i}=L1(e),s=v1(),a=u.useCallback(async()=>{if(!window.navigator.geolocation){console.warn("[aimapui] Geolocation is not supported by this browser");return}if(o)try{const d=await new Promise((C,L)=>{window.navigator.geolocation.getCurrentPosition(({coords:w})=>C(w),w=>L(w))}),{longitude:h,latitude:y}=d;if(isNaN(h)||isNaN(y))return;const f=[h,y],g=n?await n(f):f,p=o.getZoom();o.setZoomAndCenter(p>15?p:15,g)}catch(d){console.warn("[aimapui] Geolocation error:",d)}},[o,n]),c=l.jsx("div",{className:`l7-control l7-control--glass${t?` ${t}`:""}`,style:r,children:l.jsx("button",{className:"l7-button-control",onClick:a,title:"定位","aria-label":"定位",children:l.jsx("span",{className:"material-symbols-outlined",children:"my_location"})})});return s?c:l.jsx("div",{className:`l7-control-anchor ${i}`,children:c})}y1.mark(pe);const ge=[{text:"Standard",value:"normal",preview:"linear-gradient(135deg, #e8e8e8 0%, #c8d8e8 40%, #a8c8d8 100%)"},{text:"Light",value:"light",preview:"linear-gradient(135deg, #f0f4f8 0%, #d6e4f0 40%, #e8eff5 100%)"},{text:"Dark",value:"dark",preview:"linear-gradient(135deg, #0d1b2a 0%, #1b2838 40%, #162032 100%)"},{text:"Dark Blue",value:"darkblue",preview:"linear-gradient(135deg, #0a1628 0%, #0f2040 40%, #091a30 100%)"},{text:"Satellite",value:"satellite",preview:"linear-gradient(135deg, #1a3a1a 0%, #2d5a2d 40%, #1d4a2d 100%)"},{text:"Fresh",value:"fresh",preview:"linear-gradient(135deg, #e8f5e9 0%, #c8e6c9 40%, #d4edda 100%)"}],sn=[{text:"Positron",value:"https://tiles.openfreemap.org/styles/positron",preview:"linear-gradient(135deg, #f2f3f0 0%, #d8dcd6 40%, #e8ebe5 100%)"},{text:"Bright",value:"https://tiles.openfreemap.org/styles/bright",preview:"linear-gradient(135deg, #e8e8e8 0%, #c8d8e8 40%, #a8c8d8 100%)"},{text:"Dark",value:"https://tiles.openfreemap.org/styles/dark",preview:"linear-gradient(135deg, #1a1a2e 0%, #16213e 40%, #0f3460 100%)"},{text:"Liberty",value:"https://tiles.openfreemap.org/styles/liberty",preview:"linear-gradient(135deg, #f0ece2 0%, #dfd7c8 40%, #c8bfad 100%)"},{text:"Fiord",value:"https://tiles.openfreemap.org/styles/fiord",preview:"linear-gradient(135deg, #2c3e50 0%, #34495e 40%, #415b76 100%)"}],ln=[{text:"Light",value:"light",preview:"linear-gradient(135deg, #f0f4f8 0%, #d6e4f0 40%, #e8eff5 100%)"},{text:"Dark",value:"dark",preview:"linear-gradient(135deg, #0d1b2a 0%, #1b2838 40%, #162032 100%)"},{text:"Normal",value:"normal",preview:"linear-gradient(135deg, #e8e8e8 0%, #c8d8e8 40%, #a8c8d8 100%)"}];function ye({position:e="topright",options:n,defaultValue:t,onThemeChange:r,className:o,style:i}){const{mapsService:s,positionClassName:a}=L1(e),c=v1(),[d,h]=u.useState(!1),[y,f]=u.useState(t??""),[g,p]=u.useState(n??[]),C=u.useRef(null);u.useEffect(()=>{var x;if(n&&n.length>0){p(n);return}if(s){try{const Z=(x=s.getMapStyleConfig)==null?void 0:x.call(s);if(Z&&typeof Z=="object"){const z=Object.entries(Z).filter(([,P])=>typeof P=="string").map(([P,M])=>{const A=ge.find(O=>O.value===M);return{text:P,value:M,preview:A==null?void 0:A.preview}});if(z.length>0){p(z);return}}}catch{}p(ge)}},[s,n]),u.useEffect(()=>{var x;if(t){f(t);return}if(s)try{const Z=(x=s.getMapStyle)==null?void 0:x.call(s);Z&&f(Z)}catch{}},[s,t]),u.useEffect(()=>{if(!d)return;const x=Z=>{C.current&&!C.current.contains(Z.target)&&h(!1)};return document.addEventListener("mousedown",x),()=>document.removeEventListener("mousedown",x)},[d]);const L=u.useCallback(x=>{if(f(x),s)try{s.setMapStyle(x)}catch{}r==null||r(x)},[s,r]),w=an(e),S=l.jsxs("div",{ref:C,className:`l7-control l7-control--glass${o?` ${o}`:""}`,style:i,children:[l.jsx("button",{className:"l7-button-control",onClick:()=>h(!d),title:"地图样式","aria-label":"地图样式",children:l.jsx("span",{className:"material-symbols-outlined",children:"palette"})}),d&&g.length>0&&l.jsx("div",{className:`l7-popper ${w}`,children:l.jsxs("div",{className:"l7-popper-content l7-theme-panel",children:[l.jsxs("div",{className:"l7-theme-panel__title",children:[l.jsx("span",{className:"material-symbols-outlined",style:{fontSize:16},children:"palette"}),"Map Themes"]}),l.jsx("div",{className:"l7-theme-panel__grid",children:g.map(x=>{const Z=y===x.value,z=x.preview??"linear-gradient(135deg, #e0e0e0 0%, #bdbdbd 100%)";return l.jsxs("button",{className:`l7-theme-card${Z?" l7-theme-card--active":""}`,onClick:()=>L(x.value),title:x.text,children:[l.jsx("div",{className:"l7-theme-card__preview",style:{background:z}}),Z&&l.jsx("span",{className:"material-symbols-outlined l7-theme-card__check",style:{fontVariationSettings:"'FILL' 1"},children:"check_circle"}),l.jsx("span",{className:"l7-theme-card__label",children:x.text})]},x.value)})})]})})]});return c?S:l.jsx("div",{className:`l7-control-anchor ${a}`,children:S})}function an(e){switch(e){case"topleft":return"l7-popper-right l7-popper-start";case"topright":return"l7-popper-left l7-popper-start";case"bottomleft":return"l7-popper-right l7-popper-end";case"bottomright":return"l7-popper-left l7-popper-end";case"lefttop":return"l7-popper-bottom l7-popper-start";case"leftbottom":return"l7-popper-top l7-popper-start";case"righttop":return"l7-popper-bottom l7-popper-end";case"rightbottom":return"l7-popper-top l7-popper-end";default:return"l7-popper-bottom"}}y1.mark(ye);function me({position:e="bottomleft",precision:n=6,transform:t,className:r,style:o}){const s=t??(([f,g])=>[+f.toFixed(n),+g.toFixed(n)]),{mapsService:a,positionClassName:c}=L1(e),d=v1(),h=u.useRef(null);u.useEffect(()=>{if(!a)return;const f=g=>{const p=g.lngLat??g.lnglat;if(!p)return;const C=[p.lng,p.lat],L=s(C);h.current&&(h.current.innerText=L.join(", "))};return a.on("mousemove",f),()=>{a.off("mousemove",f)}},[a,s]);const y=l.jsx("div",{ref:h,className:`l7-control l7-control-mouse-location l7-control--glass${r?` ${r}`:""}`,style:o,children:" "});return d?y:l.jsx("div",{className:`l7-control-anchor ${c}`,children:y})}y1.mark(me);function Ce({position:e="topright",format:n="png",onExport:t,className:r,style:o}){const{scene:i,mapsService:s,positionClassName:a}=L1(e),c=v1(),d=n==="jpg"?"jpeg":"png",h=u.useCallback(async()=>{var g,p;try{const C=s?await((g=s.exportMap)==null?void 0:g.call(s,d)):void 0,L=i?await((p=i.exportPng)==null?void 0:p.call(i,d)):void 0,w=[C,L].filter(S=>!!S);return w.length===0?void 0:w.length===1?w[0]:cn(w,d)}catch{return}},[i,s,d]),y=u.useCallback(async()=>{var p;const g=await h();if(t&&g){t(g);return}if(g){const C=document.createElement("a");C.download=`aimap-export.${d==="jpeg"?"jpg":"png"}`,C.href=g,C.click()}else try{if(s){const C=(p=s.getContainer)==null?void 0:p.call(s),L=C==null?void 0:C.querySelector("canvas");if(L&&typeof L.toDataURL=="function"){const w=L.toDataURL(`image/${d}`),S=document.createElement("a");S.download=`aimap-export.${d==="jpeg"?"jpg":"png"}`,S.href=w,S.click()}}}catch(C){console.warn("[aimapui] Export image failed:",C)}},[h,t,d,s]),f=l.jsx("div",{className:`l7-control l7-control--glass${r?` ${r}`:""}`,style:o,children:l.jsx("button",{className:"l7-button-control",onClick:y,title:"导出图片","aria-label":"导出图片",children:l.jsx("span",{className:"material-symbols-outlined",children:"photo_camera"})})});return c?f:l.jsx("div",{className:`l7-control-anchor ${a}`,children:f})}async function cn(e,n){const t=document.querySelector(".l7-map")||document.documentElement,{width:r=0,height:o=0}=t.getBoundingClientRect(),i=document.createElement("canvas");i.width=r,i.height=o;const s=i.getContext("2d");return(await Promise.all(e.map(c=>new Promise(d=>{const h=new Image;h.onload=()=>d(h),h.src=c})))).forEach(c=>{s==null||s.drawImage(c,0,0,r,o)}),i.toDataURL(`image/${n}`)}y1.mark(Ce);function ve({position:e="topright",layers:n,onToggle:t,onOpacityChange:r,className:o,style:i}){const[s,a]=u.useState(!1),c=u.useRef(null),[d,h]=u.useState(()=>{const L={};return n.forEach(w=>{L[w.id]=w.opacity??1}),L});u.useEffect(()=>{h(L=>{const w={...L};return n.forEach(S=>{S.opacity!==void 0&&(w[S.id]=S.opacity)}),w})},[n]);const{positionClassName:y}=L1(e),f=v1();if(u.useEffect(()=>{if(!s)return;const L=w=>{c.current&&!c.current.contains(w.target)&&a(!1)};return document.addEventListener("mousedown",L),()=>document.removeEventListener("mousedown",L)},[s]),!n.length)return null;const g=un(e),p=(L,w)=>{h(S=>({...S,[L]:w})),r==null||r(L,w)},C=l.jsxs("div",{ref:c,className:`l7-control l7-control--glass${o?` ${o}`:""}`,style:i,children:[l.jsx("button",{className:"l7-button-control",onClick:()=>a(!s),title:"图层控制","aria-label":"图层控制",children:l.jsx("span",{className:"material-symbols-outlined",children:"layers"})}),s&&l.jsx("div",{className:`l7-popper ${g}`,children:l.jsxs("div",{className:"l7-popper-content l7-layer-panel",children:[l.jsxs("div",{className:"l7-layer-panel__title",children:[l.jsx("span",{className:"material-symbols-outlined",style:{fontSize:16},children:"layers"}),"Layers"]}),l.jsx("div",{className:"l7-layer-panel__list",children:n.map(L=>{const w=L.visible!==!1,S=d[L.id]??L.opacity??1,x=L.icon??"layers";return l.jsxs("div",{className:`l7-layer-item${w?"":" l7-layer-item--disabled"}`,children:[l.jsxs("div",{className:"l7-layer-item__header",children:[l.jsx("span",{className:"material-symbols-outlined l7-layer-item__icon",children:x}),l.jsx("span",{className:"l7-layer-item__name",children:L.name??L.id}),l.jsxs("label",{className:"l7-layer-toggle",children:[l.jsx("input",{type:"checkbox",checked:w,onChange:()=>t(L.id,!w)}),l.jsx("span",{className:"l7-layer-toggle__track"})]})]}),r&&l.jsxs("div",{className:"l7-layer-item__slider",children:[l.jsx("span",{className:"material-symbols-outlined",style:{fontSize:14},children:"opacity"}),l.jsx("input",{type:"range",min:0,max:100,value:Math.round(S*100),onChange:Z=>p(L.id,+Z.target.value/100),className:"l7-layer-slider"})]})]},L.id)})})]})})]});return f?C:l.jsx("div",{className:`l7-control-anchor ${y}`,children:C})}function un(e){switch(e){case"topleft":return"l7-popper-right l7-popper-start";case"topright":return"l7-popper-left l7-popper-start";case"bottomleft":return"l7-popper-right l7-popper-end";case"bottomright":return"l7-popper-left l7-popper-end";case"lefttop":return"l7-popper-bottom l7-popper-start";case"leftbottom":return"l7-popper-top l7-popper-start";case"righttop":return"l7-popper-bottom l7-popper-end";case"rightbottom":return"l7-popper-top l7-popper-end";default:return"l7-popper-bottom"}}y1.mark(ve);function dn(e){return{mode:"none",features:e?[...e]:[],selectedFeatureId:null,isDrawing:!1,currentVertices:[],startPoint:null,mousePoint:null,dragVertexIndex:null,isDragging:!1,mergeSelectedIds:[],splitTargetId:null}}const b1={point:{color:"#ffffff",size:6,strokeColor:"#3f51b5",strokeWidth:1},line:{color:"#3f51b5",size:2,opacity:1},polygon:{fill:"#3f51b5",fillOpacity:.2,stroke:"#3f51b5",strokeWidth:2},drawing:{fill:"#3f51b5",fillOpacity:.2,stroke:"#3f51b5",strokeWidth:2,dashStroke:"#3f51b5",dashWidth:1.5,dashArray:[4,4]},selected:{stroke:"#3f51b5",strokeWidth:3,fill:"#ffb95f",fillOpacity:.12,dashArray:[6,3]},vertex:{color:"#ffffff",size:5,strokeColor:"#3f51b5",strokeWidth:1,activeColor:"#ffb95f",activeSize:6}};function hn(e){return e?{point:{...b1.point,...e.point},line:{...b1.line,...e.line},polygon:{...b1.polygon,...e.polygon},drawing:{...b1.drawing,...e.drawing},selected:{...b1.selected,...e.selected},vertex:{...b1.vertex,...e.vertex}}:{...b1}}let fn=0;function pn(){return`draw-${++fn}`}function u0(e){return{type:"LineString",coordinates:e.map(([n,t])=>[n,t])}}function d0(e){const n=e.map(([t,r])=>[t,r]);if(n.length>0){const t=n[0],r=n[n.length-1];(t[0]!==r[0]||t[1]!==r[1])&&n.push([t[0],t[1]])}return{type:"Polygon",coordinates:[n]}}function h0(e,n){const[t,r]=e,[o,i]=n;return{type:"Polygon",coordinates:[[[t,r],[o,r],[o,i],[t,i],[t,r]]]}}function f0(e,n,t=64){const[r,o]=e,i=[];for(let s=0;s<t;s++){const a=s/t*2*Math.PI,c=n/(111320*Math.cos(o*Math.PI/180))*Math.cos(a),d=n/110540*Math.sin(a);i.push([r+c,o+d])}return i.push(i[0]),{type:"Polygon",coordinates:[i]}}function gn(e){return{type:"Point",coordinates:[e[0],e[1]]}}function p0(e,n){const r=c=>c*Math.PI/180,o=r(n[1]-e[1]),i=r(n[0]-e[0]),s=Math.sin(o/2)*Math.sin(o/2)+Math.cos(r(e[1]))*Math.cos(r(n[1]))*Math.sin(i/2)*Math.sin(i/2);return 6371e3*(2*Math.atan2(Math.sqrt(s),Math.sqrt(1-s)))}function yn(e,n){const t=n.x-e.x,r=n.y-e.y;return Math.sqrt(t*t+r*r)}function S1(e,n,t){return{type:"Feature",id:pn(),geometry:e,properties:{drawType:n}}}function mn(e,n,t){const r=e.geometry,o=Cn(r,n,t);return{...e,geometry:o,properties:{...e.properties}}}function Cn(e,n,t){switch(e.type){case"Point":return{type:"Point",coordinates:[e.coordinates[0]+n,e.coordinates[1]+t]};case"LineString":return{type:"LineString",coordinates:e.coordinates.map(([r,o])=>[r+n,o+t])};case"Polygon":return{type:"Polygon",coordinates:e.coordinates.map(r=>r.map(([o,i])=>[o+n,i+t]))};default:return e}}function vn(e,n,t,r){const o=e.geometry;let i;if(o.type==="Point")i={type:"Point",coordinates:[t,r]};else if(o.type==="LineString"){const s=o.coordinates.map(a=>[...a]);n>=0&&n<s.length&&(s[n]=[t,r]),i={type:"LineString",coordinates:s}}else if(o.type==="Polygon"){const s=o.coordinates.map(d=>d.map(h=>[...h])),a=s[0],c=a.length>1&&a[0][0]===a[a.length-1][0]&&a[0][1]===a[a.length-1][1]?a.length-1:a.length;n>=0&&n<c&&(a[n]=[t,r],n===0&&(a[a.length-1]=[t,r])),i={type:"Polygon",coordinates:s}}else i=o;return{...e,geometry:i,properties:{...e.properties}}}function G1(e){const n=e.geometry,t=[];if(n.type==="Point")t.push([n.coordinates[0],n.coordinates[1]]);else if(n.type==="LineString")n.coordinates.forEach(([r,o])=>{t.push([r,o])});else if(n.type==="Polygon"){const r=n.coordinates[0];if(r&&r.length>1){const o=r[0][0]===r[r.length-1][0]&&r[0][1]===r[r.length-1][1]?r.length-1:r.length;for(let i=0;i<o;i++)t.push([r[i][0],r[i][1]])}}return t}function Y1(e){const n=e.lnglat,t=e.lngLat;if(n&&typeof n.lng=="number"&&typeof n.lat=="number")return[n.lng,n.lat];if(t&&typeof t.lng=="number"&&typeof t.lat=="number")return[t.lng,t.lat];const r=e.coordinate;return r&&typeof r[0]=="number"&&typeof r[1]=="number"?[r[0],r[1]]:null}function Ln(e){return{type:"FeatureCollection",features:e.filter(n=>n.geometry.type==="LineString")}}function bn(e){return{type:"FeatureCollection",features:e.filter(n=>n.geometry.type==="Polygon")}}function xn(e,n){const t=g0(e.coordinates[0]),r=g0(n.coordinates[0]);let o=0;const i=new Set(t.map(s=>`${s[0].toFixed(7)},${s[1].toFixed(7)}`));for(const s of r)i.has(`${s[0].toFixed(7)},${s[1].toFixed(7)}`)&&o++;if(o>=2)return!0;for(let s=0;s<t.length;s++){const a=(s+1)%t.length;for(let c=0;c<r.length;c++){const d=(c+1)%r.length;if(m0(t[s],t[a],r[c],r[d],!0))return!0}}for(const s of t)if(y0(s,r))return!0;for(const s of r)if(y0(s,t))return!0;return!1}function g0(e){const n=[],t=e.length>1&&e[0][0]===e[e.length-1][0]&&e[0][1]===e[e.length-1][1]?e.length-1:e.length;for(let r=0;r<t;r++)n.push([e[r][0],e[r][1]]);return n}function y0(e,n){let t=!1;for(let r=0,o=n.length-1;r<n.length;o=r++){const i=n[r][0],s=n[r][1],a=n[o][0],c=n[o][1];s>e[1]!=c>e[1]&&e[0]<(a-i)*(e[1]-s)/(c-s)+i&&(t=!t)}return t}function Mn(e){if(e.length<2)return null;const n=e.filter(a=>a.geometry.type==="Polygon");if(n.length<2)return null;for(let a=0;a<n.length;a++){const c=n[a].geometry;let d=!1;for(let h=0;h<n.length;h++)if(a!==h&&xn(c,n[h].geometry)){d=!0;break}if(!d)return null}const t=[];for(const a of n){const c=a.geometry.coordinates[0];if(!c)continue;const d=c.length>1&&c[0][0]===c[c.length-1][0]&&c[0][1]===c[c.length-1][1]?c.length-1:c.length;for(let h=0;h<d;h++)t.push([c[h][0],c[h][1]])}if(t.length<3)return null;const r=[],o=new Set;for(const a of t){const c=`${a[0].toFixed(6)},${a[1].toFixed(6)}`;o.has(c)||(o.add(c),r.push(a))}if(r.length<3)return null;const i=wn(r);return i.length<3?null:(i.push(i[0]),S1({type:"Polygon",coordinates:[i]},"polygon"))}function wn(e){if(e.length<3)return[...e];let n=0;for(let i=1;i<e.length;i++)(e[i][1]<e[n][1]||e[i][1]===e[n][1]&&e[i][0]<e[n][0])&&(n=i);const t=e[n],r=e.filter(i=>i[0]!==t[0]||i[1]!==t[1]).sort((i,s)=>{const a=Math.atan2(i[1]-t[1],i[0]-t[0]),c=Math.atan2(s[1]-t[1],s[0]-t[0]);if(a!==c)return a-c;const d=(i[0]-t[0])**2+(i[1]-t[1])**2,h=(s[0]-t[0])**2+(s[1]-t[1])**2;return d-h}),o=[t];for(const i of r){for(;o.length>1;){const s=o[o.length-2],a=o[o.length-1];if((a[0]-s[0])*(i[1]-s[1])-(a[1]-s[1])*(i[0]-s[0])<=0)o.pop();else break}o.push(i)}return o}function Hn(e,n){if(e.geometry.type!=="Polygon"||n.length<2)return null;const t=e.geometry.coordinates[0];if(!t||t.length<4)return null;const r=[],o=t.length>1&&t[0][0]===t[t.length-1][0]&&t[0][1]===t[t.length-1][1]?t.length-1:t.length;for(let f=0;f<o;f++)r.push([t[f][0],t[f][1]]);const i=[];for(let f=0;f<n.length-1;f++){const g=n[f],p=n[f+1];for(let C=0;C<r.length;C++){const L=(C+1)%r.length,w=r[C],S=r[L],x=m0(g,p,w,S);x&&i.push({edgeIndex:C,point:x,t:f})}}if(i.length<2)return null;i.sort((f,g)=>f.edgeIndex-g.edgeIndex);const s=i[0],a=i[i.length-1],c=[],d=[];c.push(s.point);for(let f=s.edgeIndex+1;f<=a.edgeIndex;f++)c.push(r[f%r.length]);c.push(a.point),c.push(s.point),d.push(a.point);for(let f=a.edgeIndex+1;f<r.length;f++)d.push(r[f]);for(let f=0;f<=s.edgeIndex;f++)d.push(r[f]);if(d.push(s.point),d.push(a.point),c.length<4||d.length<4)return null;const h={type:"Polygon",coordinates:[c]},y={type:"Polygon",coordinates:[d]};return[S1(h,"polygon"),S1(y,"polygon")]}function m0(e,n,t,r,o=!1){const i=n[0]-e[0],s=n[1]-e[1],a=r[0]-t[0],c=r[1]-t[1],d=i*c-s*a;if(Math.abs(d)<1e-12)return null;const h=((t[0]-e[0])*c-(t[1]-e[1])*a)/d,y=((t[0]-e[0])*s-(t[1]-e[1])*i)/d;if(o){if(h<=1e-6||h>=.999999||y<=1e-6||y>=.999999)return null}else if(h<0||h>1||y<0||y>1)return null;return[e[0]+h*i,e[1]+h*s]}const J1={type:"FeatureCollection",features:[]},g1="aimap-draw-";class Sn{constructor(n,t,r){this.featurePointLayer=null,this.featureLineLayer=null,this.featurePolygonLayer=null,this.featurePolygonOutlineLayer=null,this.drawingLineLayer=null,this.drawingDashLineLayer=null,this.drawingPolygonLayer=null,this.drawingPointLayer=null,this.selectionPolygonLayer=null,this.selectionLineLayer=null,this.selectionPointLayer=null,this.vertexLayer=null,this.midpointLayer=null,this.snapIndicatorLayer=null,this.mergeHighlightLayer=null,this.mergeHighlightOutlineLayer=null,this.splitHighlightLayer=null,this.splitHighlightOutlineLayer=null,this.tooltipEl=null,this.containerEl=null,this.hiddenFeatureId=null,this.allFeatures=[],this.onFeatureClick=null,this.onFeatureMouseDown=null,this.onVertexClick=null,this.onVertexRightClick=null,this.onEmptyClick=null,this.onMidpointClick=null,this.editClickHandlersBound=!1,this.scene=n,this.mapsService=r,this.styles={point:{...b1.point,...t==null?void 0:t.point},line:{...b1.line,...t==null?void 0:t.line},polygon:{...b1.polygon,...t==null?void 0:t.polygon},drawing:{...b1.drawing,...t==null?void 0:t.drawing},selected:{...b1.selected,...t==null?void 0:t.selected},vertex:{...b1.vertex,...t==null?void 0:t.vertex}};try{this.initTooltip()}catch{}}removeAndDestroy(n){var t;if(n){try{this.scene.removeLayer(n)}catch{}try{(t=n.destroy)==null||t.call(n)}catch{}}}addLayerWithRender(n){n.once("inited",()=>{try{this.scene.render()}catch{}}),this.scene.addLayer(n)}initTooltip(){const n=document.createElement("div");n.style.cssText=["position:fixed","pointer-events:none","z-index:9999","padding:6px 10px","border-radius:4px","background:rgba(26,27,34,0.92)","color:#f2eff9",'font:500 11px/16px "JetBrains Mono",monospace',"letter-spacing:0.02em","white-space:nowrap","display:none","flex-direction:column","gap:2px","box-shadow:0 2px 8px rgba(0,0,0,0.3)"].join(";"),document.body.appendChild(n),this.tooltipEl=n,this.containerEl=null}showTooltip(n,t,r,o){if(!this.tooltipEl)return;this.tooltipEl.innerHTML="";const i=document.createElement("div");if(i.textContent=n,i.style.cssText="color:#f2eff9;font-size:11px;line-height:16px;",this.tooltipEl.appendChild(i),o&&o.length>0){const s=document.createElement("div");s.style.cssText="display:flex;gap:8px;";for(const a of o){const c=document.createElement("span");c.textContent=a,c.style.cssText="font-size:9px;line-height:12px;color:#ffc107;font-weight:600;",s.appendChild(c)}this.tooltipEl.appendChild(s)}this.tooltipEl.style.display="flex",this.tooltipEl.style.left=`${t+16}px`,this.tooltipEl.style.top=`${r-8}px`}showSnapTooltip(n,t,r,o,i){if(!this.tooltipEl)return;this.tooltipEl.innerHTML="";const s=document.createElement("div");s.style.cssText="display:flex;gap:6px;align-items:center;";const a=document.createElement("span");a.textContent=n==="vertex"?"Vertex":"Edge",a.style.cssText="color:#ffc107;font-weight:700;font-size:10px;",s.appendChild(a);const c=document.createElement("span");c.textContent=`${r.toFixed(4)}, ${t.toFixed(4)}`,c.style.cssText="color:rgba(242,239,249,0.6);font-size:10px;",s.appendChild(c),this.tooltipEl.appendChild(s),this.tooltipEl.style.display="flex",this.tooltipEl.style.left=`${o+16}px`,this.tooltipEl.style.top=`${i-8}px`}hideTooltip(){this.tooltipEl&&(this.tooltipEl.style.display="none")}destroyTooltip(){var n;this.tooltipEl&&((n=this.tooltipEl.parentElement)==null||n.removeChild(this.tooltipEl),this.tooltipEl=null)}updateFeatures(n){this.scene&&(this.allFeatures=n,this.renderFeatures())}hideFeatureFromStatic(n){this.hiddenFeatureId=n,this.renderFeatures()}showAllFeatures(){this.hiddenFeatureId=null,this.renderFeatures()}renderFeatures(){const n=this.hiddenFeatureId?this.allFeatures.filter(s=>s.id!==this.hiddenFeatureId):this.allFeatures,t=this.styles;this.removeAndDestroy(this.featurePointLayer);const r=n.filter(s=>s.geometry.type==="Point").map(s=>{const a=s.geometry.coordinates;return{lng:a[0],lat:a[1],id:s.id,drawType:s.properties.drawType}});this.featurePointLayer=new p1.PointLayer({name:`${g1}feature-point`,zIndex:12}).source(r,{parser:{type:"json",x:"lng",y:"lat"}}).shape("circle").color(t.point.color).size(t.point.size).style({stroke:t.point.strokeColor,strokeWidth:t.point.strokeWidth}),this.addLayerWithRender(this.featurePointLayer),this.removeAndDestroy(this.featureLineLayer),this.featureLineLayer=new p1.LineLayer({name:`${g1}feature-line`,zIndex:11}).source(Ln(n)).shape("line").color(t.line.color).size(t.line.size).style({opacity:t.line.opacity}),this.addLayerWithRender(this.featureLineLayer),this.removeAndDestroy(this.featurePolygonLayer),this.featurePolygonLayer=new p1.PolygonLayer({name:`${g1}feature-polygon`,zIndex:10}).source(bn(n)).shape("fill").color(t.polygon.fill).style({opacity:t.polygon.fillOpacity}),this.addLayerWithRender(this.featurePolygonLayer),this.removeAndDestroy(this.featurePolygonOutlineLayer);const o=n.filter(s=>s.geometry.type==="Polygon"),i=o.length>0?{type:"FeatureCollection",features:o.map(s=>({type:"Feature",geometry:{type:"LineString",coordinates:s.geometry.coordinates[0]},properties:s.properties}))}:J1;this.featurePolygonOutlineLayer=new p1.LineLayer({name:`${g1}feature-polygon-outline`,zIndex:10}).source(i).shape("line").color(t.polygon.stroke).size(t.polygon.strokeWidth).style({opacity:1}),this.addLayerWithRender(this.featurePolygonOutlineLayer),this.editClickHandlersBound&&this.rebindEditClickHandlers()}showDrawingFeedback(n,t,r,o){if(!this.scene||r==="point")return;const i=this.styles;let s=J1,a=J1,c=J1,d=[];if(r==="rectangle"&&o&&t){const g=h0(o,t);c={type:"FeatureCollection",features:[{type:"Feature",geometry:g,properties:{}}]},s={type:"FeatureCollection",features:[{type:"Feature",geometry:{type:"LineString",coordinates:g.coordinates[0]},properties:{}}]}}else if(r==="circle"&&o&&t){const p=z=>z*Math.PI/180,C=p(t[1]-o[1]),L=p(t[0]-o[0]),w=Math.sin(C/2)**2+Math.cos(p(o[1]))*Math.cos(p(t[1]))*Math.sin(L/2)**2,x=6371e3*(2*Math.atan2(Math.sqrt(w),Math.sqrt(1-w))),Z=f0(o,Math.max(x,1));c={type:"FeatureCollection",features:[{type:"Feature",geometry:Z,properties:{}}]},s={type:"FeatureCollection",features:[{type:"Feature",geometry:{type:"LineString",coordinates:Z.coordinates[0]},properties:{}}]},d=[{lng:o[0],lat:o[1],vertexIndex:0}]}else if((r==="polyline"||r==="polygon")&&n.length>0){if(n.length>=2&&(s={type:"FeatureCollection",features:[{type:"Feature",geometry:u0(n),properties:{}}]}),t&&n.length>=1){const g=n[n.length-1],p=[{type:"Feature",geometry:{type:"LineString",coordinates:[[g[0],g[1]],[t[0],t[1]]]},properties:{}}];r==="polygon"&&n.length>=2&&p.push({type:"Feature",geometry:{type:"LineString",coordinates:[[t[0],t[1]],[n[0][0],n[0][1]]]},properties:{}}),a={type:"FeatureCollection",features:p}}if(r==="polygon"&&n.length>=2&&t){const g=[...n,t];g.length>=3&&(c={type:"FeatureCollection",features:[{type:"Feature",geometry:d0(g),properties:{}}]})}d=n.map(([g,p],C)=>({lng:g,lat:p,vertexIndex:C,isFirst:C===0}))}this.drawingLineLayer?this.drawingLineLayer.setData(s):(this.drawingLineLayer=new p1.LineLayer({name:`${g1}drawing-line`,zIndex:13}).source(s).shape("line").color(i.drawing.stroke).size(i.drawing.strokeWidth).style({opacity:1}),this.addLayerWithRender(this.drawingLineLayer));const h=i.drawing.dashArray??[4,4],y=i.drawing.dashStroke??i.drawing.stroke,f=i.drawing.dashWidth??1.5;this.drawingDashLineLayer?this.drawingDashLineLayer.setData(a):(this.drawingDashLineLayer=new p1.LineLayer({name:`${g1}drawing-dash-line`,zIndex:14}).source(a).shape("line").color(y).size(f).style({opacity:1,lineType:"dash",dashArray:h}),this.addLayerWithRender(this.drawingDashLineLayer)),this.drawingPolygonLayer?this.drawingPolygonLayer.setData(c):(this.drawingPolygonLayer=new p1.PolygonLayer({name:`${g1}drawing-polygon`,zIndex:13}).source(c).shape("fill").color(i.drawing.fill).style({opacity:i.drawing.fillOpacity}),this.addLayerWithRender(this.drawingPolygonLayer)),this.drawingPointLayer?this.drawingPointLayer.setData(d):(this.drawingPointLayer=new p1.PointLayer({name:`${g1}drawing-point`,zIndex:15}).source(d,{parser:{type:"json",x:"lng",y:"lat"}}).shape("circle").color(i.vertex.color).size(i.vertex.size).style({stroke:i.vertex.strokeColor,strokeWidth:i.vertex.strokeWidth}),this.addLayerWithRender(this.drawingPointLayer))}clearDrawingFeedback(){this.removeAndDestroy(this.drawingLineLayer),this.removeAndDestroy(this.drawingDashLineLayer),this.removeAndDestroy(this.drawingPolygonLayer),this.removeAndDestroy(this.drawingPointLayer),this.drawingLineLayer=null,this.drawingDashLineLayer=null,this.drawingPolygonLayer=null,this.drawingPointLayer=null}removeDrawingLayers(){this.clearDrawingFeedback()}updateSelectionHighlight(n){var i,s,a;if(!this.scene)return;const t=this.styles;if(this.removeAndDestroy(this.selectionPolygonLayer),this.removeAndDestroy(this.selectionLineLayer),this.removeAndDestroy(this.selectionPointLayer),!n){this.selectionPolygonLayer=null,this.selectionLineLayer=null,this.selectionPointLayer=null;return}const r={type:"FeatureCollection",features:[n]},o=t.selected.dashArray??[6,3];if(n.geometry.type==="Point")this.selectionPointLayer=new p1.PointLayer({name:`${g1}selection-point`,zIndex:15}).source([{lng:n.geometry.coordinates[0],lat:n.geometry.coordinates[1],id:n.id}],{parser:{type:"json",x:"lng",y:"lat"}}).shape("circle").color(t.selected.stroke).size((t.point.size??6)+4).style({stroke:t.selected.stroke,strokeWidth:t.selected.strokeWidth}),this.addLayerWithRender(this.selectionPointLayer);else if(n.geometry.type==="LineString")this.selectionLineLayer=new p1.LineLayer({name:`${g1}selection-line`,zIndex:15}).source(r).shape("line").color(t.selected.stroke).size(t.selected.strokeWidth).style({opacity:1,lineType:"dash",dashArray:o}),this.addLayerWithRender(this.selectionLineLayer);else if(n.geometry.type==="Polygon"){this.selectionPolygonLayer=new p1.PolygonLayer({name:`${g1}selection-polygon`,zIndex:15}).source(r).shape("fill").color(t.selected.fill).style({opacity:t.selected.fillOpacity}),this.addLayerWithRender(this.selectionPolygonLayer);const c={type:"FeatureCollection",features:[{type:"Feature",geometry:{type:"LineString",coordinates:n.geometry.coordinates[0]},properties:{}}]};this.selectionLineLayer=new p1.LineLayer({name:`${g1}selection-line`,zIndex:15}).source(c).shape("line").color(t.selected.stroke).size(t.selected.strokeWidth).style({opacity:1,lineType:"dash",dashArray:o}),this.addLayerWithRender(this.selectionLineLayer)}if(this.editClickHandlersBound&&this.onFeatureMouseDown){const c=d=>{var y;const h=d.feature;if(h&&this.onFeatureMouseDown){const f=((y=h.properties)==null?void 0:y.id)??h.id;if(f){const g=d.lngLat??d.lnglat;let p=[0,0];if(g&&typeof g=="object"){const C=g;p=[C.lng??C.x??0,C.lat??C.y??0]}this.onFeatureMouseDown(String(f),p)}}};(i=this.selectionPolygonLayer)==null||i.on("mousedown",c),(s=this.selectionLineLayer)==null||s.on("mousedown",c),(a=this.selectionPointLayer)==null||a.on("mousedown",c)}}clearSelectionHighlight(){this.removeAndDestroy(this.selectionPolygonLayer),this.removeAndDestroy(this.selectionLineLayer),this.removeAndDestroy(this.selectionPointLayer),this.selectionPolygonLayer=null,this.selectionLineLayer=null,this.selectionPointLayer=null}removeSelectionLayers(){this.clearSelectionHighlight()}highlightMergeSelected(n,t){if(!this.scene)return;const r=this.styles;if(this.removeAndDestroy(this.mergeHighlightLayer),this.removeAndDestroy(this.mergeHighlightOutlineLayer),this.mergeHighlightLayer=null,this.mergeHighlightOutlineLayer=null,n.length===0)return;const o=t.filter(a=>n.includes(a.id));if(o.length===0)return;const i={type:"FeatureCollection",features:o};this.mergeHighlightLayer=new p1.PolygonLayer({name:`${g1}merge-highlight`,zIndex:15}).source(i).shape("fill").color(r.selected.fill).style({opacity:r.selected.fillOpacity}),this.addLayerWithRender(this.mergeHighlightLayer);const s=o.filter(a=>a.geometry.type==="Polygon").map(a=>({type:"Feature",geometry:{type:"LineString",coordinates:a.geometry.coordinates[0]},properties:{}}));if(s.length>0){const a={type:"FeatureCollection",features:s};this.mergeHighlightOutlineLayer=new p1.LineLayer({name:`${g1}merge-highlight-outline`,zIndex:15}).source(a).shape("line").color(r.selected.stroke).size(r.selected.strokeWidth).style({opacity:1,lineType:"dash",dashArray:r.selected.dashArray??[6,3]}),this.addLayerWithRender(this.mergeHighlightOutlineLayer)}}clearMergeHighlight(){this.removeAndDestroy(this.mergeHighlightLayer),this.removeAndDestroy(this.mergeHighlightOutlineLayer),this.mergeHighlightLayer=null,this.mergeHighlightOutlineLayer=null}highlightSplitTarget(n,t){if(!this.scene)return;const r=this.styles;this.removeAndDestroy(this.splitHighlightLayer),this.removeAndDestroy(this.splitHighlightOutlineLayer),this.splitHighlightLayer=null,this.splitHighlightOutlineLayer=null;const o=t.find(a=>a.id===n);if(!o)return;const i={type:"FeatureCollection",features:[o]};this.splitHighlightLayer=new p1.PolygonLayer({name:`${g1}split-highlight`,zIndex:15}).source(i).shape("fill").color(r.selected.fill).style({opacity:r.selected.fillOpacity}),this.addLayerWithRender(this.splitHighlightLayer);const s={type:"FeatureCollection",features:[{type:"Feature",geometry:{type:"LineString",coordinates:o.geometry.coordinates[0]},properties:{}}]};this.splitHighlightOutlineLayer=new p1.LineLayer({name:`${g1}split-highlight-outline`,zIndex:15}).source(s).shape("line").color(r.selected.stroke).size(r.selected.strokeWidth).style({opacity:1,lineType:"dash",dashArray:r.selected.dashArray??[6,3]}),this.addLayerWithRender(this.splitHighlightOutlineLayer)}clearSplitHighlight(){this.removeAndDestroy(this.splitHighlightLayer),this.removeAndDestroy(this.splitHighlightOutlineLayer),this.splitHighlightLayer=null,this.splitHighlightOutlineLayer=null}updateVertexHandles(n){if(!this.scene)return;const t=this.styles;if(this.removeAndDestroy(this.vertexLayer),this.removeAndDestroy(this.midpointLayer),!n){this.vertexLayer=null,this.midpointLayer=null;return}const r=G1(n);if(r.length===0){this.vertexLayer=null,this.midpointLayer=null;return}const o=r.map(([i,s],a)=>({lng:i,lat:s,vertexIndex:a,featureId:n.id}));if(this.vertexLayer=new p1.PointLayer({name:`${g1}vertex-handles`,zIndex:16}).source(o,{parser:{type:"json",x:"lng",y:"lat"}}).shape("circle").color(t.vertex.color).size(t.vertex.size).style({stroke:t.vertex.strokeColor,strokeWidth:t.vertex.strokeWidth}),this.addLayerWithRender(this.vertexLayer),n.geometry.type==="LineString"||n.geometry.type==="Polygon"){const i=[],s=n.geometry.type==="Polygon"?r.length:r.length-1;for(let a=0;a<s;a++){const c=(a+1)%r.length;i.push({lng:(r[a][0]+r[c][0])/2,lat:(r[a][1]+r[c][1])/2,edgeIndex:a})}this.midpointLayer=new p1.PointLayer({name:`${g1}midpoint-handles`,zIndex:16}).source(i,{parser:{type:"json",x:"lng",y:"lat"}}).shape("circle").color(t.vertex.strokeColor).size(t.vertex.size-1).style({stroke:t.vertex.strokeColor,strokeWidth:.5,opacity:.5}),this.addLayerWithRender(this.midpointLayer)}else this.midpointLayer=null;this.editClickHandlersBound&&this.rebindVertexAndMidpointEvents()}clearVertexHandles(){this.removeAndDestroy(this.vertexLayer),this.removeAndDestroy(this.midpointLayer),this.vertexLayer=null,this.midpointLayer=null}removeVertexLayer(){this.clearVertexHandles()}setupEditClickHandlers(n,t,r,o,i,s){this.onFeatureClick=n,this.onVertexClick=t,this.onEmptyClick=r,this.onVertexRightClick=o??null,this.onMidpointClick=i??null,this.onFeatureMouseDown=s??null,this.editClickHandlersBound=!0,this.rebindEditClickHandlers()}rebindEditClickHandlers(){var i,s,a,c,d,h,y,f,g,p,C,L,w,S,x,Z,z,P,M,A,O,V,D,_,F;const n=b=>{var B;const H=b.feature;if(H){const Y=((B=H.properties)==null?void 0:B.id)??H.id;Y&&this.onFeatureClick&&this.onFeatureClick(String(Y))}},t=b=>{var B;const H=b.feature;if(H){const Y=((B=H.properties)==null?void 0:B.id)??H.id;if(Y&&this.onFeatureMouseDown){const t1=b.lngLat??b.lnglat;let K=[0,0];if(t1&&typeof t1=="object"){const R=t1;K=[R.lng??R.x??0,R.lat??R.y??0]}this.onFeatureMouseDown(String(Y),K)}}};(i=this.featurePointLayer)==null||i.on("click",n),(s=this.featureLineLayer)==null||s.on("click",n),(a=this.featurePolygonLayer)==null||a.on("click",n),(c=this.featurePolygonOutlineLayer)==null||c.on("click",n),(d=this.featurePointLayer)==null||d.on("mousedown",t),(h=this.featureLineLayer)==null||h.on("mousedown",t),(y=this.featurePolygonLayer)==null||y.on("mousedown",t),(f=this.featurePolygonOutlineLayer)==null||f.on("mousedown",t);const r=()=>{this.setCursorClass("l7-draw-cursor-grab")},o=()=>{this.clearEditCursors(),this.hideTooltip()};(g=this.featurePointLayer)==null||g.on("mouseenter",r),(p=this.featurePointLayer)==null||p.on("mouseleave",o),(C=this.featureLineLayer)==null||C.on("mouseenter",r),(L=this.featureLineLayer)==null||L.on("mouseleave",o),(w=this.featurePolygonLayer)==null||w.on("mouseenter",r),(S=this.featurePolygonLayer)==null||S.on("mouseleave",o),(x=this.featurePolygonOutlineLayer)==null||x.on("mouseenter",r),(Z=this.featurePolygonOutlineLayer)==null||Z.on("mouseleave",o),(z=this.selectionPolygonLayer)==null||z.on("mousedown",t),(P=this.selectionLineLayer)==null||P.on("mousedown",t),(M=this.selectionPointLayer)==null||M.on("mousedown",t),(A=this.selectionPolygonLayer)==null||A.on("mouseenter",r),(O=this.selectionPolygonLayer)==null||O.on("mouseleave",o),(V=this.selectionLineLayer)==null||V.on("mouseenter",r),(D=this.selectionLineLayer)==null||D.on("mouseleave",o),(_=this.selectionPointLayer)==null||_.on("mouseenter",r),(F=this.selectionPointLayer)==null||F.on("mouseleave",o),this.rebindVertexAndMidpointEvents()}extractClientXY(n){var s,a,c,d;const t=n.originalEvent??n.originEvent??n.e;if(t&&typeof t.clientX=="number"&&typeof t.clientY=="number")return[t.clientX,t.clientY];const r=n.x,o=n.y;if(r!==void 0&&o!==void 0){const h=(a=(s=this.mapsService)==null?void 0:s.getContainer)==null?void 0:a.call(s);if(h){const y=h.getBoundingClientRect();return[r+y.left,o+y.top]}}const i=n.pixel;if(i){const h=(d=(c=this.mapsService)==null?void 0:c.getContainer)==null?void 0:d.call(c);if(h){const y=h.getBoundingClientRect();return[(i.x??0)+y.left,(i.y??0)+y.top]}}return[0,0]}extractFeatureProp(n,t){const r=n.properties;return r&&r[t]!==void 0?r[t]:n[t]}setCursorClass(n){var r,o;const t=(o=(r=this.mapsService)==null?void 0:r.getContainer)==null?void 0:o.call(r);t&&(t.classList.remove("l7-draw-cursor-pointer","l7-draw-cursor-grab","l7-draw-cursor-move"),n&&t.classList.add(n))}clearEditCursors(){var t,r;const n=(r=(t=this.mapsService)==null?void 0:t.getContainer)==null?void 0:r.call(t);n&&n.classList.remove("l7-draw-cursor-pointer","l7-draw-cursor-grab","l7-draw-cursor-move")}rebindVertexAndMidpointEvents(){var n,t,r,o,i,s,a,c,d;(n=this.vertexLayer)==null||n.on("mouseenter",()=>{this.setCursorClass("l7-draw-cursor-pointer")}),(t=this.vertexLayer)==null||t.on("mousemove",h=>{const[y,f]=this.extractClientXY(h);(y||f)&&this.showTooltip("拖拽移动顶点,右键删除",y,f)}),(r=this.vertexLayer)==null||r.on("mouseleave",()=>{this.clearEditCursors(),this.hideTooltip()}),(o=this.midpointLayer)==null||o.on("mouseenter",()=>{this.setCursorClass("l7-draw-cursor-pointer")}),(i=this.midpointLayer)==null||i.on("mousemove",h=>{const[y,f]=this.extractClientXY(h);(y||f)&&this.showTooltip("单击添加新顶点",y,f)}),(s=this.midpointLayer)==null||s.on("mouseleave",()=>{this.clearEditCursors(),this.hideTooltip()}),(a=this.vertexLayer)==null||a.on("mousedown",h=>{var f,g,p,C;const y=h.feature;if(y&&this.onVertexClick){const L=this.extractFeatureProp(y,"vertexIndex");L!==void 0&&((g=(f=this.mapsService)==null?void 0:f.setMapStatus)==null||g.call(f,{dragEnable:!1,zoomEnable:!1}),(C=(p=h.originalEvent)==null?void 0:p.stopPropagation)==null||C.call(p),this.onVertexClick(L))}}),(c=this.vertexLayer)==null||c.on("contextmenu",h=>{var f,g;const y=h.feature;if(y&&this.onVertexRightClick){const p=this.extractFeatureProp(y,"vertexIndex");p!==void 0&&((g=(f=h.originalEvent)==null?void 0:f.preventDefault)==null||g.call(f),this.onVertexRightClick(p))}}),(d=this.midpointLayer)==null||d.on("click",h=>{const y=h.feature;if(y&&this.onMidpointClick){const f=this.extractFeatureProp(y,"edgeIndex"),g=this.extractFeatureProp(y,"lng"),p=this.extractFeatureProp(y,"lat");f!==void 0&&g!==void 0&&p!==void 0&&this.onMidpointClick(f,[g,p])}})}removeEditClickHandlers(){this.onFeatureClick=null,this.onVertexClick=null,this.onVertexRightClick=null,this.onEmptyClick=null,this.onMidpointClick=null,this.editClickHandlersBound=!1}showSnapIndicator(n,t,r){if(!this.scene)return;const o="#ffc107",i=r==="vertex"?8:6;this.removeAndDestroy(this.snapIndicatorLayer),this.snapIndicatorLayer=new p1.PointLayer({name:`${g1}snap-indicator`,zIndex:20}).source([{lng:n,lat:t}],{parser:{type:"json",x:"lng",y:"lat"}}).shape("square").color(o).size(i).style({stroke:o,strokeWidth:1.5,opacity:.9}),this.addLayerWithRender(this.snapIndicatorLayer)}hideSnapIndicator(){this.removeAndDestroy(this.snapIndicatorLayer),this.snapIndicatorLayer=null}destroy(){this.removeEditClickHandlers(),this.destroyTooltip();const n=[this.featurePointLayer,this.featureLineLayer,this.featurePolygonLayer,this.featurePolygonOutlineLayer,this.drawingLineLayer,this.drawingDashLineLayer,this.drawingPolygonLayer,this.drawingPointLayer,this.selectionPolygonLayer,this.selectionLineLayer,this.selectionPointLayer,this.vertexLayer,this.midpointLayer,this.snapIndicatorLayer];for(const t of n)this.removeAndDestroy(t);this.featurePointLayer=null,this.featureLineLayer=null,this.featurePolygonLayer=null,this.featurePolygonOutlineLayer=null,this.drawingLineLayer=null,this.drawingDashLineLayer=null,this.drawingPolygonLayer=null,this.drawingPointLayer=null,this.selectionPolygonLayer=null,this.selectionLineLayer=null,this.selectionPointLayer=null,this.vertexLayer=null,this.midpointLayer=null,this.snapIndicatorLayer=null}}const Le={enabled:!0,threshold:8,vertex:!0,edge:!0};function zn(e){return e===!1?{...Le,enabled:!1}:e===!0||e===void 0?{...Le}:{...Le,...e}}function Vn(e,n,t,r,o){if(!t.enabled||n.length===0)return{snapped:!1,lng:e[0],lat:e[1],type:"none"};const i=r(e);if(!i)return{snapped:!1,lng:e[0],lat:e[1],type:"none"};const s=t.threshold;let a=1/0,c={snapped:!1,lng:e[0],lat:e[1],type:"none"};for(const d of n){if(d.id===o)continue;const h=G1(d);if(h.length!==0){if(t.vertex)for(let y=0;y<h.length;y++){const f=r(h[y]);if(!f)continue;const g=i.x-f.x,p=i.y-f.y,C=Math.sqrt(g*g+p*p);C<s&&C<a&&(a=C,c={snapped:!0,lng:h[y][0],lat:h[y][1],type:"vertex",featureId:d.id,vertexIndex:y})}if(t.edge&&c.type!=="vertex"){const y=d.geometry.type==="Polygon"?h.length:Math.max(0,h.length-1);for(let f=0;f<y;f++){const g=(f+1)%h.length,p=r(h[f]),C=r(h[g]);if(!p||!C)continue;const L=kn(i,p,C);if(L.t>=0&&L.t<=1&&L.dist<s&&L.dist<a){const w=L.t,S=h[f][0]+w*(h[g][0]-h[f][0]),x=h[f][1]+w*(h[g][1]-h[f][1]);a=L.dist,c={snapped:!0,lng:S,lat:x,type:"edge",featureId:d.id,edgeIndex:f}}}}}}return c}function kn(e,n,t){const r=t.x-n.x,o=t.y-n.y,i=r*r+o*o;if(i===0)return{t:0,dist:Math.sqrt((e.x-n.x)**2+(e.y-n.y)**2)};let s=((e.x-n.x)*r+(e.y-n.y)*o)/i;s=Math.max(0,Math.min(1,s));const a=n.x+s*r,c=n.y+s*o,d=Math.sqrt((e.x-a)**2+(e.y-c)**2);return{t:s,dist:d}}const En=5;function k1(e){const n=e.originalEvent??e.originEvent??e.e;return(n==null?void 0:n.clientX)??e.x??0}function E1(e){const n=e.originalEvent??e.originEvent??e.e;return(n==null?void 0:n.clientY)??e.y??0}function C0(e,n,t){const r=Y1(e);if(!r)return null;const o=t(r);if(!o){for(const s of n)if(s.geometry.type==="Polygon"&&L0(r,s.geometry.coordinates[0]))return s;return null}const i=8;for(const s of n)if(s.geometry.type==="Polygon"){if(L0(r,s.geometry.coordinates[0]))return s;const a=s.geometry.coordinates[0];for(let c=0;c<a.length-1;c++)if(v0(o,a[c],a[c+1],t)<=i)return s}else if(s.geometry.type==="Point"){const a=s.geometry.coordinates,c=t(a);if(c){const d=c.x-o.x,h=c.y-o.y;if(Math.sqrt(d*d+h*h)<=i)return s}}else if(s.geometry.type==="LineString"){const a=s.geometry.coordinates;for(let c=0;c<a.length-1;c++)if(v0(o,a[c],a[c+1],t)<=i)return s}return null}function v0(e,n,t,r){const o=r(n),i=r(t);if(!o||!i)return 1/0;const s=i.x-o.x,a=i.y-o.y,c=s*s+a*a;if(c===0){const p=e.x-o.x,C=e.y-o.y;return Math.sqrt(p*p+C*C)}const d=Math.max(0,Math.min(1,((e.x-o.x)*s+(e.y-o.y)*a)/c)),h=o.x+d*s,y=o.y+d*a,f=e.x-h,g=e.y-y;return Math.sqrt(f*f+g*g)}function L0(e,n){let t=!1;for(let r=0,o=n.length-1;r<n.length;o=r++){const i=n[r][0],s=n[r][1],a=n[o][0],c=n[o][1];s>e[1]!=c>e[1]&&e[0]<(a-i)*(e[1]-s)/(c-s)+i&&(t=!t)}return t}function b0(e,n,t){const r=t[0]-n[0],o=t[1]-n[1],i=r*r+o*o;if(i===0){const d=Math.sqrt((e[0]-n[0])**2+(e[1]-n[1])**2);return{point:n,t:0,dist:d}}let s=((e[0]-n[0])*r+(e[1]-n[1])*o)/i;s=Math.max(0,Math.min(1,s));const a=[n[0]+s*r,n[1]+s*o],c=Math.sqrt((e[0]-a[0])**2+(e[1]-a[1])**2);return{point:a,t:s,dist:c}}function x0(e,n,t){if(e.geometry.type!=="LineString")return null;const r=[...e.geometry.coordinates.map(o=>[...o])];return n<0||n>=r.length-1?null:(r.splice(n+1,0,t),{...e,geometry:{type:"LineString",coordinates:r},properties:{...e.properties}})}function M0(e,n,t){if(e.geometry.type!=="Polygon")return null;const r=e.geometry.coordinates.map(a=>a.map(c=>[...c])),o=r[0],i=o.length>1&&o[0][0]===o[o.length-1][0]&&o[0][1]===o[o.length-1][1]?o.length-1:o.length;if(n<0||n>=i)return null;const s=n+1;return o.splice(s,0,t),o[0][0]===o[o.length-2][0]&&(o[0][1],o[o.length-2][1]),o[o.length-1]=[o[0][0],o[0][1]],{...e,geometry:{type:"Polygon",coordinates:r},properties:{...e.properties}}}function An(e,n){if(e.geometry.type!=="LineString")return null;const t=e.geometry.coordinates.map(r=>[...r]);return t.length<=2||n<0||n>=t.length?null:(t.splice(n,1),{...e,geometry:{type:"LineString",coordinates:t},properties:{...e.properties}})}function Zn(e,n){if(e.geometry.type!=="Polygon")return null;const t=e.geometry.coordinates.map(i=>i.map(s=>[...s])),r=t[0],o=r.length>1&&r[0][0]===r[r.length-1][0]&&r[0][1]===r[r.length-1][1]?r.length-1:r.length;return o<=3||n<0||n>=o?null:(r.splice(n,1),r[r.length-1]=[r[0][0],r[0][1]],{...e,geometry:{type:"Polygon",coordinates:t},properties:{...e.properties}})}function Pn(e){const{scene:n,mapsService:t,styles:r,snap:o,defaultFeatures:i,features:s,onDrawCreate:a,onDrawUpdate:c,onDrawDelete:d,onDrawSelect:h,onModeChange:y,onChange:f}=e,g=u.useRef(dn(i)),p=u.useRef(null),C=u.useMemo(()=>hn(r),[r]),L=u.useMemo(()=>zn(o),[o]),w=u.useRef({onDrawCreate:a,onDrawUpdate:c,onDrawDelete:d,onDrawSelect:h,onModeChange:y,onChange:f});w.current={onDrawCreate:a,onDrawUpdate:c,onDrawDelete:d,onDrawSelect:h,onModeChange:y,onChange:f};const S=u.useRef("none"),x=u.useRef(i?[...i]:[]),Z=u.useRef(null),z=s!==void 0,P=u.useRef(null),M=u.useRef(null),A=u.useRef(null),O=u.useCallback(E=>{var m;if(!t)return null;try{const k=(m=t.lngLatToContainer)==null?void 0:m.call(t,[E[0],E[1]]);if(k)return{x:k.x??k[0],y:k.y??k[1]}}catch{}return null},[t]),V=u.useCallback(E=>{var m,k,v;x.current=E,g.current.features=E,(m=p.current)==null||m.updateFeatures(E),(v=(k=w.current).onChange)==null||v.call(k,E)},[]),D=u.useCallback(E=>{var k,v;Z.current=E,g.current.selectedFeatureId=E;const m=E?x.current.find(J=>J.id===E)??null:null;(v=(k=w.current).onDrawSelect)==null||v.call(k,m)},[]);u.useEffect(()=>{if(!n)return;const E=new Sn(n,C,t);return p.current=E,x.current.length>0&&E.updateFeatures(x.current),()=>{E.destroy(),p.current=null}},[n]);const _=u.useCallback(E=>{var T,N,Q,j;const m=g.current,k=Y1(E);if(!k)return;const v=p.current;if(!v)return;const J=A.current,$=J!=null&&J.snapped?J.lng:k[0],q=J!=null&&J.snapped?J.lat:k[1],e1=S.current;if(e1==="point"){const o1=S1(gn([$,q]),"point"),c1=[...x.current,o1];V(c1),(N=(T=w.current).onDrawCreate)==null||N.call(T,[o1]);return}if(e1==="polyline"){m.currentVertices.push([$,q]),m.isDrawing=!0,v.showDrawingFeedback(m.currentVertices,m.mousePoint,e1,m.startPoint);return}if(e1==="polygon"){m.currentVertices.push([$,q]),m.isDrawing=!0,v.showDrawingFeedback(m.currentVertices,m.mousePoint,e1,m.startPoint);return}if(e1==="circle"){if(!m.startPoint)m.startPoint=[$,q],m.isDrawing=!0;else{const o1=p0(m.startPoint,[$,q]);if(o1>.5){const c1=f0(m.startPoint,o1),i1=S1(c1,"circle"),f1=[...x.current,i1];V(f1),(j=(Q=w.current).onDrawCreate)==null||j.call(Q,[i1])}m.startPoint=null,m.isDrawing=!1,v.clearDrawingFeedback()}return}if(e1==="merge"){const o1=C0(E,x.current,O);if(o1&&(o1.geometry.type==="Polygon"||o1.properties.drawType==="circle")){const c1=o1.id,i1=[...m.mergeSelectedIds],f1=i1.indexOf(c1);f1>=0?i1.splice(f1,1):i1.push(c1),m.mergeSelectedIds=i1,v.highlightMergeSelected(i1,x.current),i1.length>=2?v.showTooltip(`已选中 ${i1.length} 个面,双击合并`,k1(E),E1(E),["[ESC] 取消"]):i1.length===1&&v.showTooltip("继续点击选中更多面",k1(E),E1(E),["[ESC] 取消"])}else m.mergeSelectedIds=[],v.highlightMergeSelected([],x.current),v.showTooltip("点击面要素选中",k1(E),E1(E),["[ESC] 取消"]);return}if(e1==="split"){if(!m.splitTargetId){const o1=C0(E,x.current,O);o1&&(o1.geometry.type==="Polygon"||o1.properties.drawType==="circle")?(m.splitTargetId=o1.id,v.highlightSplitTarget(o1.id,x.current),v.showTooltip("已选目标面,单击绘制切线起点",k1(E),E1(E),["[ESC] 取消"])):v.showTooltip("先点击选择要切分的面",k1(E),E1(E),["[ESC] 取消"]);return}m.currentVertices.push([$,q]),m.isDrawing=!0,v.showDrawingFeedback(m.currentVertices,m.mousePoint,"polyline",m.startPoint),m.currentVertices.length===1?v.showTooltip("单击继续绘制切线,双击完成切分",k1(E),E1(E),["[ESC] 取消"]):v.showTooltip(`切线 ${m.currentVertices.length} 个顶点,双击完成切分`,k1(E),E1(E),["[ESC] 取消"]);return}},[V,O]),F=u.useCallback(E=>{var J,$,q,e1,T,N,Q,j,o1,c1,i1,f1,x1,T1,Z1,$1;const m=g.current,k=S.current,v=p.current;if(v){if(k==="edit"&&Z.current){Y1(E);return}if(E.originalEvent&&(($=(J=E.originalEvent).preventDefault)==null||$.call(J),(e1=(q=E.originalEvent).stopPropagation)==null||e1.call(q)),k==="merge"){if(m.mergeSelectedIds.length>=2){const H1=x.current.filter(P1=>m.mergeSelectedIds.includes(P1.id)),m1=Mn(H1);if(m1){const Fe=[...x.current.filter(Te=>!m.mergeSelectedIds.includes(Te.id)),m1];V(Fe),(N=(T=w.current).onDrawCreate)==null||N.call(T,[m1]),(j=(Q=w.current).onDrawDelete)==null||j.call(Q,H1[0])}m.mergeSelectedIds=[],v.highlightMergeSelected([],x.current),v.hideTooltip()}return}if(k==="split"&&m.splitTargetId&&m.currentVertices.length>=2){const H1=x.current.find(m1=>m1.id===m.splitTargetId);if(H1){const m1=Hn(H1,m.currentVertices);if(m1){const Fe=[...x.current.filter(Te=>Te.id!==m.splitTargetId),...m1];V(Fe),(c1=(o1=w.current).onDrawCreate)==null||c1.call(o1,m1),(f1=(i1=w.current).onDrawDelete)==null||f1.call(i1,H1)}}m.currentVertices=[],m.isDrawing=!1,m.mousePoint=null,m.splitTargetId=null,v.clearDrawingFeedback(),v.clearSplitHighlight(),v.hideTooltip();return}if(k==="polyline"&&m.currentVertices.length>=2){const H1=u0(m.currentVertices),m1=S1(H1,"polyline"),P1=[...x.current,m1];V(P1),(T1=(x1=w.current).onDrawCreate)==null||T1.call(x1,[m1]),m.currentVertices=[],m.isDrawing=!1,m.mousePoint=null,v.clearDrawingFeedback();return}if(k==="polygon"&&m.currentVertices.length>=3){const H1=d0(m.currentVertices),m1=S1(H1,"polygon"),P1=[...x.current,m1];V(P1),($1=(Z1=w.current).onDrawCreate)==null||$1.call(Z1,[m1]),m.currentVertices=[],m.isDrawing=!1,m.mousePoint=null,v.clearDrawingFeedback();return}(k==="polyline"||k==="polygon")&&(m.currentVertices=[],m.isDrawing=!1,m.mousePoint=null,v.clearDrawingFeedback())}},[V]),b=u.useCallback(E=>{const m=g.current,k=Y1(E);if(!k)return;const[v,J]=k,$=p.current,q=S.current,e1=E.originalEvent??E.originEvent??E.e,T=(e1==null?void 0:e1.clientX)??E.x??0,N=(e1==null?void 0:e1.clientY)??E.y??0;if(m.mousePoint=[v,J],$&&(T||N)){const j=A.current;if((q==="point"||q==="polyline"||q==="polygon"||q==="circle"||q==="rectangle")&&(j!=null&&j.snapped)&&j.type!=="none")$.showSnapTooltip(j.type,j.lng,j.lat,T,N);else if(q==="point")$.showTooltip("单击放置点",T,N,["[ESC] 取消"]);else if(q==="polyline")m.isDrawing?$.showTooltip("单击添加顶点,双击结束",T,N,["[ESC] 取消"]):$.showTooltip("单击开始绘制线",T,N,["[ESC] 取消"]);else if(q==="polygon")m.isDrawing?m.currentVertices.length<3?$.showTooltip("单击添加顶点",T,N,["[ESC] 取消"]):$.showTooltip("单击继续,双击闭合",T,N,["[ESC] 取消"]):$.showTooltip("单击开始绘制面",T,N,["[ESC] 取消"]);else if(q==="rectangle")m.isDragging||$.showTooltip("按住拖拽绘制矩形",T,N,["[SHIFT] 正方形","[ESC] 取消"]);else if(q==="circle")if(!m.startPoint)$.showTooltip("单击设定圆心",T,N,["[ESC] 取消"]);else{const c1=p0(m.startPoint,[v,J]),i1=c1>1e3?`${(c1/1e3).toFixed(1)} km`:`${Math.round(c1)} m`;$.showTooltip(`半径 ${i1},单击完成`,T,N,["[ESC] 取消"])}else q==="merge"?m.mergeSelectedIds.length>=2?$.showTooltip(`已选中 ${m.mergeSelectedIds.length} 个面,双击合并`,T,N,["[ESC] 取消"]):m.mergeSelectedIds.length===1?$.showTooltip("继续点击选中更多面",T,N,["[ESC] 取消"]):$.showTooltip("点击面要素选中",T,N,["[ESC] 取消"]):q==="split"?m.splitTargetId?m.isDrawing?$.showTooltip(`切线 ${m.currentVertices.length} 个顶点,双击完成切分`,T,N,["[ESC] 取消"]):$.showTooltip("单击绘制切线起点",T,N,["[ESC] 取消"]):$.showTooltip("先点击选择要切分的面",T,N,["[ESC] 取消"]):q==="edit"||$.hideTooltip()}if((q==="point"||q==="polyline"||q==="polygon"||q==="circle")&&L.enabled&&$){const j=Vn([v,J],x.current,L,O);A.current=j,j.snapped&&j.type!=="none"?($.showSnapIndicator(j.lng,j.lat,j.type),m.mousePoint=[j.lng,j.lat]):$.hideSnapIndicator()}else A.current=null,$==null||$.hideSnapIndicator();if((q==="polyline"||q==="polygon")&&m.isDrawing){$==null||$.showDrawingFeedback(m.currentVertices,m.mousePoint,q,m.startPoint);return}if(q==="circle"&&m.startPoint&&m.isDrawing){$==null||$.showDrawingFeedback(m.currentVertices,m.mousePoint,q,m.startPoint);return}if(q==="rectangle"&&m.isDragging&&m.startPoint){$==null||$.showDrawingFeedback(m.currentVertices,m.mousePoint,q,m.startPoint);return}if(q==="edit"&&m.isDragging&&m.selectedFeatureId&&m.dragVertexIndex!==null&&P.current){const j=x.current.find(o1=>o1.id===m.selectedFeatureId);if(j){const o1=vn(j,m.dragVertexIndex,v,J),c1=x.current.map(i1=>i1.id===o1.id?o1:i1);V(c1),$==null||$.updateVertexHandles(o1),$==null||$.updateSelectionHighlight(o1),P.current=[v,J]}return}if(q==="edit"&&m.isDragging&&m.selectedFeatureId&&m.dragVertexIndex===null&&P.current){const[j,o1]=P.current,c1=v-j,i1=J-o1;if(Math.abs(c1)>1e-10||Math.abs(i1)>1e-10){const f1=x.current.find(x1=>x1.id===m.selectedFeatureId);if(f1){const x1=mn(f1,c1,i1),T1=x.current.map(Z1=>Z1.id===x1.id?x1:Z1);V(T1),$==null||$.updateVertexHandles(x1),$==null||$.updateSelectionHighlight(x1),P.current=[v,J]}}return}},[V]),H=u.useCallback(E=>{var v,J;const m=g.current,k=S.current;if(t&&k==="rectangle"){const $=(v=t.getContainer)==null?void 0:v.call(t);if(!$)return;const q=$.getBoundingClientRect(),e1=E.clientX-q.left,T=E.clientY-q.top,N=(J=t.containerToLngLat)==null?void 0:J.call(t,[e1,T]);if(!N)return;m.startPoint=[N.lng,N.lat],m.isDragging=!0,M.current={x:E.clientX,y:E.clientY},t.setMapStatus({dragEnable:!1,zoomEnable:!1});return}},[t]),B=u.useCallback(E=>{var J,$,q,e1,T,N;const m=g.current,k=S.current,v=p.current;if(t){if(k==="rectangle"&&m.isDragging&&m.startPoint){const Q=(J=t.getContainer)==null?void 0:J.call(t);if(Q){const j=Q.getBoundingClientRect(),o1=E.clientX-j.left,c1=E.clientY-j.top,i1=($=t.containerToLngLat)==null?void 0:$.call(t,[o1,c1]),f1=M.current,x1=f1?yn(f1,{x:E.clientX,y:E.clientY}):1/0;if(i1&&x1>En){const T1=[i1.lng,i1.lat],Z1=h0(m.startPoint,T1),$1=S1(Z1,"rectangle"),H1=[...x.current,$1];V(H1),(e1=(q=w.current).onDrawCreate)==null||e1.call(q,[$1])}}m.startPoint=null,m.isDragging=!1,m.mousePoint=null,M.current=null,v==null||v.clearDrawingFeedback(),t.setMapStatus({dragEnable:!0,zoomEnable:!0});return}if(k==="edit"&&m.isDragging&&m.selectedFeatureId){t.setMapStatus({dragEnable:!0,zoomEnable:!0});const Q=x.current.find(j=>j.id===m.selectedFeatureId);Q&&((N=(T=w.current).onDrawUpdate)==null||N.call(T,Q)),m.isDragging=!1,m.dragVertexIndex=null,P.current=null;return}}},[t,V]),Y=u.useCallback(E=>{var k,v,J;if(S.current!=="edit")return;const m=x.current.find($=>$.id===E)??null;m&&(D(E),(k=p.current)==null||k.hideFeatureFromStatic(E),(v=p.current)==null||v.updateSelectionHighlight(m),(J=p.current)==null||J.updateVertexHandles(m))},[D]),t1=u.useCallback(E=>{if(S.current!=="edit"||!t||!Z.current)return;const m=g.current,k=x.current.find(J=>J.id===Z.current);if(!k)return;const v=G1(k);E>=0&&E<v.length&&(P.current=v[E]),m.isDragging=!0,m.dragVertexIndex=E,t.setMapStatus({dragEnable:!1,zoomEnable:!1})},[t]),K=u.useCallback((E,m)=>{if(S.current!=="edit")return;const k=g.current;k.isDragging||!x.current.find(J=>J.id===E)||k.selectedFeatureId===E&&(k.isDragging=!0,k.dragVertexIndex=null,P.current=m,t.setMapStatus({dragEnable:!1,zoomEnable:!1}))},[t]),R=u.useCallback(E=>{var v,J,$,q;if(S.current!=="edit"||!Z.current)return;const m=x.current.find(e1=>e1.id===Z.current);if(!m)return;let k=null;if(m.geometry.type==="LineString"?k=An(m,E):m.geometry.type==="Polygon"&&(k=Zn(m,E)),k){const e1=x.current.map(T=>T.id===k.id?k:T);V(e1),(J=(v=w.current).onDrawUpdate)==null||J.call(v,k),($=p.current)==null||$.updateVertexHandles(k),(q=p.current)==null||q.updateSelectionHighlight(k)}},[V]);u.useCallback(E=>{var J,$,q,e1;if(S.current!=="edit"||!Z.current)return;const m=x.current.find(T=>T.id===Z.current);if(!m)return;const k=G1(m);let v=null;if(m.geometry.type==="LineString"&&k.length>=2){let T=-1,N=1/0;for(let Q=0;Q<k.length-1;Q++){const{dist:j}=b0(E,k[Q],k[Q+1]);j<N&&(N=j,T=Q)}T>=0&&N<.001&&(v=x0(m,T,E))}else if(m.geometry.type==="Polygon"&&k.length>=3){let T=-1,N=1/0;for(let Q=0;Q<k.length;Q++){const j=(Q+1)%k.length,{dist:o1}=b0(E,k[Q],k[j]);o1<N&&(N=o1,T=Q)}T>=0&&N<.001&&(v=M0(m,T,E))}if(v){const T=x.current.map(N=>N.id===v.id?v:N);V(T),($=(J=w.current).onDrawUpdate)==null||$.call(J,v),(q=p.current)==null||q.updateVertexHandles(v),(e1=p.current)==null||e1.updateSelectionHighlight(v)}},[V]);const a1=u.useCallback((E,m)=>{var J,$,q,e1;if(S.current!=="edit"||!Z.current)return;const k=x.current.find(T=>T.id===Z.current);if(!k)return;let v=null;if(k.geometry.type==="LineString"?v=x0(k,E,m):k.geometry.type==="Polygon"&&(v=M0(k,E,m)),v){const T=x.current.map(N=>N.id===v.id?v:N);V(T),($=(J=w.current).onDrawUpdate)==null||$.call(J,v),(q=p.current)==null||q.updateVertexHandles(v),(e1=p.current)==null||e1.updateSelectionHighlight(v)}},[V]),G=u.useCallback(()=>{var E,m,k;S.current==="edit"&&Z.current&&(D(null),(E=p.current)==null||E.showAllFeatures(),(m=p.current)==null||m.clearSelectionHighlight(),(k=p.current)==null||k.clearVertexHandles())},[D]),n1=u.useCallback(E=>{var J,$,q,e1,T,N,Q;const m=S.current;if(m===E)return;const k=g.current,v=p.current;if(k.isDrawing&&(k.currentVertices=[],k.startPoint=null,k.mousePoint=null,k.isDrawing=!1,v==null||v.clearDrawingFeedback(),v==null||v.removeDrawingLayers()),m==="merge"&&(k.mergeSelectedIds=[],v==null||v.clearMergeHighlight(),v==null||v.hideTooltip()),m==="split"&&(k.splitTargetId=null,k.currentVertices=[],k.isDrawing=!1,v==null||v.clearDrawingFeedback(),v==null||v.clearSplitHighlight(),v==null||v.hideTooltip()),m==="edit"&&(D(null),v==null||v.showAllFeatures(),v==null||v.clearSelectionHighlight(),v==null||v.clearVertexHandles(),v==null||v.removeSelectionLayers(),v==null||v.removeVertexLayer(),v==null||v.removeEditClickHandlers(),v==null||v.clearEditCursors(),v==null||v.hideTooltip(),t&&t.setMapStatus({doubleClickZoom:!0})),m!=="edit"&&m!=="none"&&m!=="merge"&&m!=="split"){v==null||v.removeDrawingLayers(),v==null||v.hideTooltip(),t&&t.setMapStatus({doubleClickZoom:!0});const j=(J=t==null?void 0:t.getContainer)==null?void 0:J.call(t);j&&j.classList.remove("l7-draw-cursor-crosshair")}if(S.current=E,k.mode=E,E==="merge"){k.mergeSelectedIds=[];const j=($=t==null?void 0:t.getContainer)==null?void 0:$.call(t);j&&j.classList.add("l7-draw-cursor-crosshair")}else if(E==="split"){k.splitTargetId=null,k.currentVertices=[],k.isDrawing=!1,t&&t.setMapStatus({doubleClickZoom:!1});const j=(q=t==null?void 0:t.getContainer)==null?void 0:q.call(t);j&&j.classList.add("l7-draw-cursor-crosshair")}else if(E==="edit")v==null||v.setupEditClickHandlers(Y,t1,G,R,a1,K),t&&t.setMapStatus({doubleClickZoom:!1});else if(E!=="none"){t&&(E==="polyline"||E==="polygon")&&t.setMapStatus({doubleClickZoom:!1});const j=(e1=t==null?void 0:t.getContainer)==null?void 0:e1.call(t);j&&j.classList.add("l7-draw-cursor-crosshair")}else{const j=(T=t==null?void 0:t.getContainer)==null?void 0:T.call(t);j&&j.classList.remove("l7-draw-cursor-crosshair")}(Q=(N=w.current).onModeChange)==null||Q.call(N,E)},[t,Y,t1,G,D]),r1=u.useCallback(E=>{var J,$;const m=g.current,k=S.current,v=p.current;if(E.key==="Escape"){m.isDrawing&&(m.currentVertices=[],m.startPoint=null,m.mousePoint=null,m.isDrawing=!1,v==null||v.clearDrawingFeedback()),Z.current&&(D(null),v==null||v.showAllFeatures(),v==null||v.clearSelectionHighlight(),v==null||v.clearVertexHandles()),v==null||v.hideTooltip();return}if((E.key==="Delete"||E.key==="Backspace")&&k==="edit"&&Z.current){E.preventDefault();const q=Z.current,e1=x.current.find(T=>T.id===q);if(e1){const T=x.current.filter(N=>N.id!==q);V(T),($=(J=w.current).onDrawDelete)==null||$.call(J,e1),D(null),v==null||v.showAllFeatures(),v==null||v.clearSelectionHighlight(),v==null||v.clearVertexHandles()}return}},[V,D]);u.useEffect(()=>{var $;if(!n||!t)return;const E=q=>_(q),m=q=>F(q),k=q=>b(q),v=($=t.getContainer)==null?void 0:$.call(t);t.on("click",E),t.on("dblclick",m),t.on("mousemove",k),v&&v.addEventListener("mousedown",H),document.addEventListener("mouseup",B),document.addEventListener("keydown",r1);const J=q=>{S.current==="edit"&&q.preventDefault()};return v&&v.addEventListener("contextmenu",J),()=>{t.off("click",E),t.off("dblclick",m),t.off("mousemove",k),v&&(v.removeEventListener("mousedown",H),v.removeEventListener("contextmenu",J)),document.removeEventListener("mouseup",B),document.removeEventListener("keydown",r1);try{t.setMapStatus({dragEnable:!0,zoomEnable:!0,doubleClickZoom:!0})}catch{}v&&v.classList.remove("l7-draw-cursor-crosshair")}},[n,t,_,F,b,H,B,r1]),u.useEffect(()=>{var E;z&&s&&(x.current=[...s],g.current.features=[...s],(E=p.current)==null||E.updateFeatures(s))},[z,s]);const I=u.useCallback(E=>{var k,v;if(z)return;const m=[...x.current,...E];V(m),(v=(k=w.current).onDrawCreate)==null||v.call(k,E)},[z,V]),W=u.useCallback(E=>{var v,J,$,q,e1;if(z)return;const m=x.current.find(T=>T.id===E);if(!m)return;const k=x.current.filter(T=>T.id!==E);V(k),(J=(v=w.current).onDrawDelete)==null||J.call(v,m),Z.current===E&&(D(null),($=p.current)==null||$.showAllFeatures(),(q=p.current)==null||q.clearSelectionHighlight(),(e1=p.current)==null||e1.clearVertexHandles())},[z,V,D]),l1=u.useCallback(()=>{Z.current&&W(Z.current)},[W]),X=u.useCallback(()=>{var E,m,k;z||(V([]),D(null),(E=p.current)==null||E.showAllFeatures(),(m=p.current)==null||m.clearSelectionHighlight(),(k=p.current)==null||k.clearVertexHandles())},[z,V,D]),s1=u.useCallback(()=>[...x.current],[]),u1=u.useCallback(E=>{var m,k,v,J,$,q;if(S.current==="edit")if(E){const e1=x.current.find(T=>T.id===E)??null;D(E),e1&&((m=p.current)==null||m.hideFeatureFromStatic(E),(k=p.current)==null||k.updateSelectionHighlight(e1),(v=p.current)==null||v.updateVertexHandles(e1))}else D(null),(J=p.current)==null||J.showAllFeatures(),($=p.current)==null||$.clearSelectionHighlight(),(q=p.current)==null||q.clearVertexHandles()},[D]);return{mode:S.current,features:x.current,selectedFeatureId:Z.current,setMode:n1,addFeatures:I,deleteFeature:W,deleteSelectedFeature:l1,clearAll:X,getFeatures:s1,selectFeature:u1,layerManager:p.current}}const w0=[{mode:"point",icon:"location_on",title:"点 — 单击放置",label:"点"},{mode:"polyline",icon:"timeline",title:"线 — 单击添加顶点,双击结束",label:"线"},{mode:"polygon",icon:"pentagon",title:"面 — 单击添加顶点,双击闭合",label:"面"},{mode:"circle",icon:"radio_button_unchecked",title:"圆 — 单击圆心,再单击确定半径",label:"圆形"},{mode:"rectangle",icon:"crop_square",title:"矩形 — 按住拖拽绘制",label:"矩形"},{mode:"edit",icon:"edit_square",title:"编辑 — 选中要素后拖拽移动或编辑顶点",label:"编辑"}],H0=[{mode:"merge",icon:"call_merge",title:"合并 — 选中2+要素合并为一个",label:"合并"},{mode:"split",icon:"content_cut",title:"切分 — 绘制切线将要素分割",label:"切分"}];function S0(){const e=u.useRef(null),n=u.useCallback((r,o)=>{if(!e.current){const f=document.createElement("div");f.style.cssText=["position:fixed","pointer-events:none","z-index:9999","padding:5px 10px","border-radius:4px","background:rgba(26,27,34,0.92)","color:#f2eff9",'font:500 11px/16px "JetBrains Mono",monospace',"white-space:nowrap","box-shadow:0 2px 8px rgba(0,0,0,0.3)"].join(";"),document.body.appendChild(f),e.current=f}const i=e.current;i.textContent=o,i.style.display="block";const s=i.getBoundingClientRect(),a=r.currentTarget.getBoundingClientRect();let c=a.right+8,d=a.top+a.height/2-s.height/2;const h=window.innerWidth,y=window.innerHeight;c+s.width>h-4&&(c=a.left-s.width-8),c<4&&(c=a.left+a.width/2-s.width/2,d=a.top-s.height-8),d<4&&(d=a.bottom+8),d+s.height>y-4&&(d=a.top-s.height-8),i.style.left=`${Math.max(4,c)}px`,i.style.top=`${Math.max(4,d)}px`},[]),t=u.useCallback(()=>{e.current&&(e.current.style.display="none")},[]);return u.useEffect(()=>()=>{var r;e.current&&((r=e.current.parentElement)==null||r.removeChild(e.current),e.current=null)},[]),{showTooltip:n,hideTooltip:t}}function z0(e,n,t,r,o,i){return e.map(s=>l.jsx("button",{className:`l7-button-control ${i}${n===s.mode?" l7-button-control--active":""}`,onClick:()=>t(s.mode),onMouseEnter:a=>r(a,s.title),onMouseLeave:o,"aria-label":s.title,"aria-pressed":n===s.mode,children:l.jsx("span",{className:"material-symbols-outlined",children:s.icon})},s.mode))}const In=({activeMode:e,onModeChange:n,modes:t,showDelete:r=!0,hasSelection:o=!1,hasFeatures:i=!1,onDeleteSelected:s,onClearAll:a,className:c,style:d})=>{const{showTooltip:h,hideTooltip:y}=S0(),f=u.useMemo(()=>t?w0.filter(p=>t.includes(p.mode)):w0,[t]),g=u.useCallback(p=>{n(e===p?"none":p)},[e,n]);return l.jsxs("div",{className:`l7-control l7-control-draw l7-control--glass${c?` ${c}`:""}`,style:d,role:"toolbar","aria-label":"基础绘制工具",children:[z0(f,e,g,h,y,"l7-draw-tool-btn"),r&&e==="edit"&&o&&s&&l.jsxs(l.Fragment,{children:[l.jsx("div",{className:"l7-draw-separator"}),l.jsx("button",{className:"l7-button-control l7-draw-action-btn",onClick:s,onMouseEnter:p=>h(p,"删除选中要素"),onMouseLeave:y,"aria-label":"删除选中要素",children:l.jsx("span",{className:"material-symbols-outlined",children:"delete"})})]}),r&&i&&a&&l.jsx("button",{className:"l7-button-control l7-draw-action-btn",onClick:a,onMouseEnter:p=>h(p,"清除所有要素"),onMouseLeave:y,"aria-label":"清除所有要素",children:l.jsx("span",{className:"material-symbols-outlined",children:"delete_sweep"})})]})},Fn=({activeMode:e,onModeChange:n,modes:t,className:r,style:o})=>{const{showTooltip:i,hideTooltip:s}=S0(),a=u.useMemo(()=>t?H0.filter(d=>t.includes(d.mode)):H0,[t]),c=u.useCallback(d=>{n(e===d?"none":d)},[e,n]);return l.jsx("div",{className:`l7-control l7-control-draw l7-control--glass${r?` ${r}`:""}`,style:o,role:"toolbar","aria-label":"高级操作工具",children:z0(a,e,c,i,s,"l7-draw-advanced-btn")})},be=u.forwardRef(function({position:n="topright",defaultFeatures:t,features:r,modes:o,showDelete:i=!0,styles:s,snap:a,className:c,style:d,onDrawCreate:h,onDrawUpdate:y,onDrawDelete:f,onDrawSelect:g,onModeChange:p,onChange:C},L){const{scene:w,mapsService:S,positionClassName:x}=L1(n),Z=v1(),z=Pn({scene:w,mapsService:S,styles:s,snap:a,defaultFeatures:t,features:r,onDrawCreate:h,onDrawUpdate:y,onDrawDelete:f,onDrawSelect:g,onModeChange:p,onChange:C}),[P,M]=u.useState("none");u.useImperativeHandle(L,()=>({setMode:z.setMode,addFeatures:z.addFeatures,deleteFeature:z.deleteFeature,clearAll:z.clearAll,getFeatures:z.getFeatures,selectFeature:z.selectFeature}),[z]);const A=u.useCallback(b=>{M(b),z.setMode(b)},[z]),O=u.useCallback(()=>{z.deleteSelectedFeature()},[z]),V=u.useCallback(()=>{z.clearAll()},[z]),D=z.selectedFeatureId!==null,_=z.features.length>0,F=l.jsxs(l.Fragment,{children:[l.jsx(In,{activeMode:P,onModeChange:A,modes:o,showDelete:i,hasSelection:D,hasFeatures:_,onDeleteSelected:O,onClearAll:V}),l.jsx(Fn,{activeMode:P,onModeChange:A,modes:o})]});return Z?l.jsx("div",{className:c,style:d,children:F}):l.jsx("div",{className:`l7-control-anchor ${x}`,children:F})});y1.mark(be);async function Tn(e){let n,t;e instanceof File?(n=URL.createObjectURL(e),t=()=>URL.revokeObjectURL(n)):n=e;const{width:r,height:o}=await Nn(n);return{url:n,width:r,height:o,revokeUrl:t}}function Nn(e){return new Promise((n,t)=>{const r=new Image;r.onload=()=>n({width:r.naturalWidth,height:r.naturalHeight}),r.onerror=()=>t(new Error("Failed to load image")),r.crossOrigin="anonymous",r.src=e})}function _n(e){return new Promise((n,t)=>{const r=new Image;r.onload=()=>n(r),r.onerror=()=>t(new Error("Failed to load image")),r.crossOrigin="anonymous",r.src=e})}function Dn(e,n,t){const r=360/Math.pow(2,n)*.3,o=r*t/2,i=r/2,[s,a]=e;return[[s-o,a+i],[s+o,a+i],[s+o,a-i],[s-o,a-i]]}function $n(e){const n=e.map(r=>r[0]),t=e.map(r=>r[1]);return[Math.min(...n),Math.min(...t),Math.max(...n),Math.max(...t)]}function On(e,n){const t=[],r=[];for(let i=0;i<4;i++){const[s,a]=e[i],[c,d]=n[i];t.push([-s,-a,-1,0,0,0,c*s,c*a]),r.push(-c),t.push([0,0,0,-s,-a,-1,d*s,d*a]),r.push(-d)}const o=Wn(t,r);return[o[0],o[1],o[2],o[3],o[4],o[5],o[6],o[7],1]}function jn(e,n,t,r){const o="naturalWidth"in e?e.naturalWidth:e.width,i="naturalHeight"in e?e.naturalHeight:e.height,s=n.map(A=>A[0]),a=n.map(A=>A[1]),c=Math.min(...s),d=Math.max(...s),h=Math.min(...a),y=Math.max(...a),f=A=>[(A[0]-c)/(d-c)*t,(y-A[1])/(y-h)*r],g=n.map(f),C=On(g,[[0,0],[o,0],[o,i],[0,i]]),L=document.createElement("canvas");L.width=t,L.height=r;const w=L.getContext("2d"),S=document.createElement("canvas");S.width=o,S.height=i;const x=S.getContext("2d");x.drawImage(e,0,0);const Z=x.getImageData(0,0,o,i),z=w.createImageData(t,r),P=Z.data,M=z.data;for(let A=0;A<r;A++)for(let O=0;O<t;O++){const V=C[6]*O+C[7]*A+C[8];if(Math.abs(V)<1e-10)continue;const D=(C[0]*O+C[1]*A+C[2])/V,_=(C[3]*O+C[4]*A+C[5])/V;if(D>=0&&D<o-1&&_>=0&&_<i-1){const F=Math.floor(D),b=Math.floor(_),H=D-F,B=_-b,Y=(b*o+F)*4,t1=(A*t+O)*4;for(let K=0;K<4;K++)M[t1+K]=Math.round(P[Y+K]*(1-H)*(1-B)+P[Y+4+K]*H*(1-B)+P[Y+o*4+K]*(1-H)*B+P[Y+o*4+4+K]*H*B)}}return w.putImageData(z,0,0),L}function Bn(e,n,t,r,o,i,s){const a=document.createElement("canvas");return a.width=r,a.height=o,a.getContext("2d").drawImage(e,n,t,r,o,0,0,r,o),new Promise((d,h)=>{a.toBlob(y=>y?d(y):h(new Error("tile export failed")),i,s)})}async function Un(e,n,t){const{outputWidth:r,outputHeight:o,cols:i,rows:s,format:a="image/png",quality:c=.92}=t,d=jn(e,n,r,o),h=n.map(M=>M[0]),y=n.map(M=>M[1]),f=Math.min(...h),g=Math.max(...h),p=Math.min(...y),C=Math.max(...y),L=[f,p,g,C],w=await new Promise((M,A)=>{d.toBlob(O=>O?M(O):A(new Error("export failed")),a,c)}),S=Math.floor(r/i),x=Math.floor(o/s),Z=(g-f)/i,z=(C-p)/s,P=[];for(let M=0;M<s;M++)for(let A=0;A<i;A++){const O=A*S,V=M*x,D=A===i-1?r-O:S,_=M===s-1?o-V:x,F=f+A*Z,b=A===i-1?g:F+Z,H=C-M*z,B=M===s-1?p:H-z,Y=[F,B,b,H],t1=[[F,H],[b,H],[b,B],[F,B]],K=await Bn(d,O,V,D,_,a,c);P.push({blob:K,row:M,col:A,extent:Y,corners:t1,width:D,height:_})}return{canvas:d,fullBlob:w,tiles:P,extent:L}}function Wn(e,n){const r=[];for(let o=0;o<8;o++)r.push([...e[o],n[o]]);for(let o=0;o<8;o++){let i=o,s=Math.abs(r[o][o]);for(let c=o+1;c<8;c++)Math.abs(r[c][o])>s&&(s=Math.abs(r[c][o]),i=c);[r[o],r[i]]=[r[i],r[o]];const a=r[o][o];if(Math.abs(a)<1e-12)throw new Error("Singular matrix in homography computation");for(let c=o;c<=8;c++)r[o][c]/=a;for(let c=0;c<8;c++){if(c===o)continue;const d=r[c][o];for(let h=o;h<=8;h++)r[c][h]-=d*r[o][h]}}return r.map(o=>o[8])}function qn({scene:e,mapsService:n,corners:t,defaultCorners:r,imageSource:o,opacity:i=.7,onCornersChange:s,onImageLoad:a}){const[c,d]=u.useState({phase:"idle",imageUrl:null,imageDimensions:null,corners:r??null,draggingCorner:null,opacity:i}),[h,y]=u.useState(null),f=u.useRef(c.corners),g=u.useRef(null),p=u.useRef(null),C=u.useRef(s);C.current=s;const L=u.useRef(null),w=t!==void 0,S=w?t:c.corners;u.useEffect(()=>{f.current=S??null},[S]),u.useEffect(()=>{w&&t&&d(b=>({...b,corners:t}))},[w,t]),u.useEffect(()=>{o&&M(o)},[o]);const[x,Z]=u.useState(S??null);u.useEffect(()=>{c.draggingCorner||Z(S??null)},[S,c.draggingCorner]),u.useEffect(()=>{if(!e||!c.imageUrl||!x){if(L.current){try{e==null||e.removeLayer(L.current)}catch{}L.current=null}return}const b=[x[0],x[1],x[2],x[3]];if(L.current){try{e.removeLayer(L.current)}catch{}L.current=null}const H=new p1.ImageLayer({zIndex:10,name:"__calibration_image__"});return H.source(c.imageUrl,{parser:{type:"image",coordinates:b}}),H.style({opacity:c.opacity}),e.addLayer(H),L.current=H,()=>{if(L.current){try{e.removeLayer(L.current)}catch{}L.current=null}}},[e,c.imageUrl,x,c.opacity]);const z=u.useCallback(()=>{if(!n||!f.current){y(null);return}try{const b=f.current.map(H=>{const B=n.lngLatToContainer([H[0],H[1]]);return[B.x,B.y]});y(b)}catch{}},[n]);u.useEffect(()=>{if(!n||!S)return;z();const b=()=>z();return n.on("camerachange",b),n.on("viewchange",b),()=>{n.off("camerachange",b),n.off("viewchange",b)}},[n,S,z]);const P=u.useCallback(b=>{var t1;if(!n)return;g.current=b,d(K=>({...K,draggingCorner:b})),n.setMapStatus({dragEnable:!1,zoomEnable:!1});const H=(t1=n.getContainer)==null?void 0:t1.call(n),B=K=>{var I;if(g.current===null||!f.current||!H)return;const R=H.getBoundingClientRect(),a1=K.clientX-R.left,G=K.clientY-R.top,n1=n.containerToLngLat([a1,G]);if(!n1)return;const r1=[...f.current];r1[g.current]=[n1.lng,n1.lat],f.current=r1,w||d(W=>({...W,corners:r1})),(I=C.current)==null||I.call(C,r1),z()},Y=()=>{g.current=null,d(K=>({...K,draggingCorner:null})),n.setMapStatus({dragEnable:!0,zoomEnable:!0}),document.removeEventListener("mousemove",B),document.removeEventListener("mouseup",Y)};document.addEventListener("mousemove",B),document.addEventListener("mouseup",Y)},[n,w,z]),M=u.useCallback(async b=>{var H,B;(H=p.current)==null||H.call(p),p.current=null;try{const Y=await Tn(b);p.current=Y.revokeUrl??null;let t1=f.current;if(!t1&&n){const K=n.getCenter(),R=n.getZoom(),a1=Y.width/Y.height;t1=Dn([K.lng,K.lat],R,a1)}d(K=>({...K,phase:"calibrating",imageUrl:Y.url,imageDimensions:{width:Y.width,height:Y.height},corners:w?K.corners:t1})),!w&&t1&&(f.current=t1,(B=C.current)==null||B.call(C,t1)),a==null||a({width:Y.width,height:Y.height}),requestAnimationFrame(z)}catch(Y){console.error("Failed to load image:",Y)}},[n,w,a,z]),A=u.useCallback(b=>{d(H=>({...H,phase:b}))},[]),O=u.useCallback(b=>{d(H=>({...H,opacity:b}))},[]),V=u.useCallback(()=>{var b;if((b=p.current)==null||b.call(p),p.current=null,f.current=null,L.current&&e){try{e.removeLayer(L.current)}catch{}L.current=null}d({phase:"idle",imageUrl:null,imageDimensions:null,corners:null,draggingCorner:null,opacity:i}),y(null)},[i,e]),D=u.useCallback(()=>f.current,[]),_=u.useCallback(b=>{var H;f.current=b,w||d(B=>({...B,corners:b})),(H=C.current)==null||H.call(C,b),z()},[w,z]),F=u.useCallback(async b=>{if(!c.imageUrl||!f.current||!c.imageDimensions)throw new Error("No image or corners to export");const H=await _n(c.imageUrl),B=f.current,Y=(b==null?void 0:b.outputWidth)||c.imageDimensions.width,t1=(b==null?void 0:b.outputHeight)||c.imageDimensions.height,K=(b==null?void 0:b.cols)||1,R=(b==null?void 0:b.rows)||1,{fullBlob:a1,tiles:G,extent:n1}=await Un(H,B,{outputWidth:Y,outputHeight:t1,cols:K,rows:R,format:b==null?void 0:b.format,quality:b==null?void 0:b.quality}),r1=URL.createObjectURL(a1);return{tiles:G.map(W=>({blob:W.blob,previewUrl:URL.createObjectURL(W.blob),row:W.row,col:W.col,extent:W.extent,corners:W.corners,width:W.width,height:W.height})),extent:n1,previewUrl:r1,blob:a1,outputWidth:Y,outputHeight:t1}},[c.imageUrl,c.imageDimensions]);return u.useEffect(()=>()=>{var b;if((b=p.current)==null||b.call(p),L.current&&e)try{e.removeLayer(L.current)}catch{}},[e]),{state:c,screenPositions:h,setImage:M,setPhase:A,setOpacity:O,startDrag:P,clear:V,getCorners:D,setCorners:_,exportImage:F}}const Gn=["TL","TR","BR","BL"],X1=14;function Yn({screenPositions:e,draggingCorner:n,phase:t,onStartDrag:r}){const o=u.useCallback(a=>c=>{c.preventDefault(),c.stopPropagation(),r(a)},[r]),i=t==="calibrating",s=`M ${e[0][0]},${e[0][1]} L ${e[1][0]},${e[1][1]} L ${e[2][0]},${e[2][1]} L ${e[3][0]},${e[3][1]} Z`;return l.jsxs(l.Fragment,{children:[l.jsx("svg",{style:{position:"absolute",left:0,top:0,width:"100%",height:"100%",pointerEvents:"none",overflow:"visible"},children:l.jsx("path",{d:s,fill:"none",stroke:"#f59e0b",strokeWidth:"2",strokeDasharray:"6 3"})}),i&&e.map((a,c)=>l.jsx("div",{onMouseDown:o(c),style:{position:"absolute",left:a[0]-X1/2,top:a[1]-X1/2,width:X1,height:X1,borderRadius:"50%",backgroundColor:"#fff",border:"2px solid #f59e0b",boxShadow:"0 2px 4px rgba(0,0,0,0.3)",cursor:n===c?"grabbing":"grab",transform:n===c?"scale(1.3)":"scale(1)",transition:n===null?"transform 0.15s ease":"none",zIndex:n===c?10:1,pointerEvents:"auto"},title:`${Gn[c]} 角点`},c))]})}class Jn{constructor(){this.entries=[]}addFile(n,t){typeof t=="string"?this.entries.push({name:n,data:new TextEncoder().encode(t)}):t instanceof Blob?this.entries.push({name:n,data:new Uint8Array(0)}):this.entries.push({name:n,data:t})}async addBlob(n,t){const r=await t.arrayBuffer();this.entries.push({name:n,data:new Uint8Array(r)})}generate(){const n=[],t=[];let r=0;for(const a of this.entries){const c=new TextEncoder().encode(a.name),d=Xn(a.data),h=a.data.length,y=new Uint8Array(30+c.length),f=new DataView(y.buffer);f.setUint32(0,67324752,!0),f.setUint16(4,20,!0),f.setUint16(6,0,!0),f.setUint16(8,0,!0),f.setUint16(10,0,!0),f.setUint16(12,0,!0),f.setUint32(14,d,!0),f.setUint32(18,h,!0),f.setUint32(22,h,!0),f.setUint16(26,c.length,!0),f.setUint16(28,0,!0),y.set(c,30),n.push(y),n.push(a.data);const g=new Uint8Array(46+c.length),p=new DataView(g.buffer);p.setUint32(0,33639248,!0),p.setUint16(4,20,!0),p.setUint16(6,20,!0),p.setUint16(8,0,!0),p.setUint16(10,0,!0),p.setUint16(12,0,!0),p.setUint16(14,0,!0),p.setUint32(16,d,!0),p.setUint32(20,h,!0),p.setUint32(24,h,!0),p.setUint16(28,c.length,!0),p.setUint16(30,0,!0),p.setUint16(32,0,!0),p.setUint16(34,0,!0),p.setUint16(36,0,!0),p.setUint32(38,0,!0),p.setUint32(42,r,!0),g.set(c,46),t.push(g),r+=y.length+a.data.length}const o=t.reduce((a,c)=>a+c.length,0),i=new Uint8Array(22),s=new DataView(i.buffer);return s.setUint32(0,101010256,!0),s.setUint16(4,0,!0),s.setUint16(6,0,!0),s.setUint16(8,this.entries.length,!0),s.setUint16(10,this.entries.length,!0),s.setUint32(12,o,!0),s.setUint32(16,r,!0),s.setUint16(20,0,!0),new Blob([...n,...t,i],{type:"application/zip"})}}const V0=new Uint32Array(256);for(let e=0;e<256;e++){let n=e;for(let t=0;t<8;t++)n=n&1?3988292384^n>>>1:n>>>1;V0[e]=n}function Xn(e){let n=4294967295;for(let t=0;t<e.length;t++)n=V0[(n^e[t])&255]^n>>>8;return(n^4294967295)>>>0}function F1({icon:e,tip:n,onClick:t,disabled:r}){const[o,i]=u.useState(!1);return l.jsxs("div",{style:{position:"relative",display:"flex"},onMouseEnter:()=>i(!0),onMouseLeave:()=>i(!1),children:[l.jsx("button",{className:"l7-button-control",onClick:t,disabled:r,"aria-label":n,children:l.jsx("span",{className:"material-symbols-outlined",children:e})}),o&&l.jsx("div",{style:{position:"absolute",left:"100%",top:"50%",transform:"translateY(-50%)",marginLeft:6,padding:"4px 8px",borderRadius:4,background:"rgba(0,0,0,0.75)",color:"#fff",fontSize:11,whiteSpace:"nowrap",pointerEvents:"none",lineHeight:1.4},children:n})]})}const xe=u.forwardRef(function({position:n="topright",corners:t,defaultCorners:r,imageSource:o,opacity:i=.7,accept:s="image/*",className:a,style:c,onCornersChange:d,onCalibrate:h,onExport:y,onImageLoad:f,onClear:g},p){const{scene:C,mapsService:L,positionClassName:w,getMapContainer:S}=L1(n),x=v1(),Z=u.useRef(null),z=qn({scene:C,mapsService:L,corners:t,defaultCorners:r,imageSource:o,opacity:i,onCornersChange:d,onImageLoad:f}),{state:P,screenPositions:M,setImage:A,setPhase:O,setOpacity:V,startDrag:D,clear:_,getCorners:F,setCorners:b,exportImage:H}=z;u.useImperativeHandle(p,()=>({getCorners:F,setCorners:b,setImage:A,exportImage:H,clear:u1}));const B=u.useCallback(T=>{var Q;const N=(Q=T.target.files)==null?void 0:Q[0];N&&A(N),T.target.value=""},[A]),Y=u.useCallback(()=>{const T=F();T&&(O("confirmed"),h==null||h({corners:T,extent:$n(T)}))},[F,O,h]),[t1,K]=u.useState(!1),[R,a1]=u.useState({outputWidth:0,outputHeight:0,cols:1,rows:1}),[G,n1]=u.useState(null),[r1,I]=u.useState(!1),W=u.useCallback(()=>{const T=P.imageDimensions;a1({outputWidth:(T==null?void 0:T.width)||1024,outputHeight:(T==null?void 0:T.height)||1024,cols:1,rows:1}),n1(null),K(!0)},[P.imageDimensions]),l1=u.useCallback(async()=>{I(!0);try{const T=await H(R);n1(T)}catch(T){console.error("Export failed:",T)}I(!1)},[H,R]),X=u.useCallback(async()=>{if(!G)return;const T=new Jn;for(const i1 of G.tiles)await T.addBlob(`tile_${i1.row}_${i1.col}.png`,i1.blob);const N=G.tiles.map(i1=>({file:`tile_${i1.row}_${i1.col}.png`,row:i1.row,col:i1.col,width:i1.width,height:i1.height,extent:i1.extent,corners:i1.corners})),Q=JSON.stringify({extent:G.extent,outputWidth:G.outputWidth,outputHeight:G.outputHeight,tiles:N},null,2);T.addFile("tiles.json",Q);const j=T.generate(),o1=URL.createObjectURL(j),c1=document.createElement("a");c1.href=o1,c1.download="calibrated-tiles.zip",c1.click(),URL.revokeObjectURL(o1),y==null||y(G)},[G,y]),s1=u.useCallback(()=>{G&&(URL.revokeObjectURL(G.previewUrl),G.tiles.forEach(T=>URL.revokeObjectURL(T.previewUrl))),n1(null),K(!1)},[G]),u1=u.useCallback(()=>{_(),g==null||g()},[_,g]),E=u.useCallback(()=>{O("calibrating")},[O]),m=u.useCallback(T=>{V(Number(T.target.value))},[V]),k=u.useCallback(()=>{if(!L||P.phase==="idle")return;const T=L.getBounds();if(!T)return;const[[N,Q],[j,o1]]=T,c1=(j-N)*.1,i1=(o1-Q)*.1,f1=[[N+c1,o1-i1],[j-c1,o1-i1],[j-c1,Q+i1],[N+c1,Q+i1]];b(f1)},[L,P.phase,b]),[v,J]=u.useState(!1),$=S(),q=P.phase!=="idle"&&M&&$?O1.createPortal(l.jsx("div",{style:{position:"absolute",left:0,top:0,width:"100%",height:"100%",pointerEvents:"none",zIndex:100},children:l.jsx(Yn,{screenPositions:M,draggingCorner:P.draggingCorner,phase:P.phase,onStartDrag:D})}),$):null,e1=l.jsxs("div",{className:`l7-control l7-control--glass l7-control-image-calibration ${a??""}`,style:{position:"relative",...c},children:[l.jsx(F1,{icon:"upload",tip:P.phase==="idle"?"上传图片":"更换图片",onClick:()=>{var T;return(T=Z.current)==null?void 0:T.click()}}),l.jsx(F1,{icon:"fit_screen",tip:"放置到当前位置",onClick:k,disabled:P.phase==="idle"}),l.jsx(F1,{icon:P.phase==="confirmed"?"edit":"check_circle",tip:P.phase==="confirmed"?"重新校准":"确认校准",onClick:P.phase==="confirmed"?E:Y,disabled:P.phase==="idle"}),l.jsx(F1,{icon:"opacity",tip:"透明度",onClick:()=>J(!v),disabled:P.phase==="idle"}),l.jsx(F1,{icon:"download",tip:"导出",onClick:W,disabled:P.phase==="idle"}),l.jsx(F1,{icon:"delete",tip:"清除",onClick:u1,disabled:P.phase==="idle"}),v&&P.phase!=="idle"&&l.jsxs("div",{className:"l7-control--glass",style:{position:"absolute",left:"100%",top:0,marginLeft:6,padding:"8px 10px",borderRadius:6,display:"flex",alignItems:"center",gap:6,fontSize:11,whiteSpace:"nowrap",minWidth:140},children:[l.jsx("input",{type:"range",min:"0",max:"1",step:"0.05",value:P.opacity,onChange:m,style:{flex:1,height:4}}),l.jsxs("span",{style:{minWidth:28,textAlign:"right"},children:[Math.round(P.opacity*100),"%"]})]}),l.jsx("input",{ref:Z,type:"file",accept:s,onChange:B,style:{display:"none"}}),q,t1&&O1.createPortal(l.jsx("div",{style:{position:"fixed",inset:0,zIndex:1e4,display:"flex",alignItems:"center",justifyContent:"center",background:"rgba(0,0,0,0.5)"},onClick:s1,children:l.jsxs("div",{style:{background:"#fff",borderRadius:8,padding:20,width:520,maxHeight:"85vh",overflow:"auto",boxShadow:"0 8px 32px rgba(0,0,0,0.25)"},onClick:T=>T.stopPropagation(),children:[l.jsx("div",{style:{fontSize:15,fontWeight:600,marginBottom:16},children:"导出配准图片"}),l.jsxs("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:"8px 16px",marginBottom:12,fontSize:12},children:[l.jsxs("label",{style:{display:"flex",alignItems:"center",gap:6},children:["宽度(px)",l.jsx("input",{type:"number",value:R.outputWidth,min:64,max:8192,onChange:T=>a1(N=>({...N,outputWidth:+T.target.value||1024})),style:{width:72,padding:"2px 6px",border:"1px solid #d1d5db",borderRadius:4}})]}),l.jsxs("label",{style:{display:"flex",alignItems:"center",gap:6},children:["高度(px)",l.jsx("input",{type:"number",value:R.outputHeight,min:64,max:8192,onChange:T=>a1(N=>({...N,outputHeight:+T.target.value||1024})),style:{width:72,padding:"2px 6px",border:"1px solid #d1d5db",borderRadius:4}})]}),l.jsxs("label",{style:{display:"flex",alignItems:"center",gap:6},children:["切片列数",l.jsx("input",{type:"number",value:R.cols,min:1,max:20,onChange:T=>a1(N=>({...N,cols:Math.max(1,+T.target.value||1)})),style:{width:48,padding:"2px 6px",border:"1px solid #d1d5db",borderRadius:4}})]}),l.jsxs("label",{style:{display:"flex",alignItems:"center",gap:6},children:["切片行数",l.jsx("input",{type:"number",value:R.rows,min:1,max:20,onChange:T=>a1(N=>({...N,rows:Math.max(1,+T.target.value||1)})),style:{width:48,padding:"2px 6px",border:"1px solid #d1d5db",borderRadius:4}})]})]}),l.jsx("button",{onClick:l1,disabled:r1,style:{padding:"6px 16px",fontSize:12,border:"none",borderRadius:4,background:"#2563eb",color:"#fff",cursor:"pointer",marginBottom:12},children:r1?"生成中...":"生成预览"}),G&&l.jsxs(l.Fragment,{children:[l.jsxs("div",{style:{position:"relative",marginBottom:12,border:"1px solid #e5e7eb",borderRadius:4,overflow:"hidden"},children:[l.jsx("img",{src:G.previewUrl,style:{width:"100%",display:"block"}}),(R.cols>1||R.rows>1)&&l.jsxs("svg",{style:{position:"absolute",inset:0,width:"100%",height:"100%",pointerEvents:"none"},children:[Array.from({length:R.cols-1},(T,N)=>l.jsx("line",{x1:`${(N+1)/R.cols*100}%`,y1:"0",x2:`${(N+1)/R.cols*100}%`,y2:"100%",stroke:"#f59e0b",strokeWidth:"1",strokeDasharray:"4 2"},`c${N}`)),Array.from({length:R.rows-1},(T,N)=>l.jsx("line",{x1:"0",y1:`${(N+1)/R.rows*100}%`,x2:"100%",y2:`${(N+1)/R.rows*100}%`,stroke:"#f59e0b",strokeWidth:"1",strokeDasharray:"4 2"},`r${N}`))]})]}),l.jsxs("div",{style:{fontSize:11,color:"#666",fontFamily:"monospace",marginBottom:12,maxHeight:160,overflow:"auto"},children:[l.jsxs("div",{style:{marginBottom:4,fontWeight:600,color:"#333"},children:["总计 ",G.tiles.length," 个切片 | ",G.outputWidth,"×",G.outputHeight,"px"]}),l.jsxs("div",{style:{marginBottom:4},children:["Extent: [",G.extent.map(T=>T.toFixed(5)).join(", "),"]"]}),G.tiles.map(T=>l.jsxs("div",{style:{padding:"2px 0",borderBottom:"1px solid #f3f4f6"},children:["tile_",T.row,"_",T.col,".png (",T.width,"×",T.height,") — [",T.extent.map(N=>N.toFixed(5)).join(", "),"]"]},`${T.row}_${T.col}`))]}),l.jsxs("div",{style:{display:"flex",gap:8,justifyContent:"flex-end"},children:[l.jsx("button",{onClick:s1,style:{padding:"6px 16px",fontSize:12,border:"1px solid #d1d5db",borderRadius:4,background:"#fff",cursor:"pointer"},children:"取消"}),l.jsxs("button",{onClick:X,style:{padding:"6px 16px",fontSize:12,border:"none",borderRadius:4,background:"#2563eb",color:"#fff",cursor:"pointer"},children:["打包下载 ZIP(",G.tiles.length," 张 + 坐标JSON)"]})]})]}),!G&&l.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:l.jsx("button",{onClick:s1,style:{padding:"6px 16px",fontSize:12,border:"1px solid #d1d5db",borderRadius:4,background:"#fff",cursor:"pointer"},children:"取消"})})]})}),document.body)]});return!C||!L?null:x?e1:l.jsx("div",{className:`l7-control-anchor ${w}`,children:e1})});y1.mark(xe);function k0({controls:e,layers:n,onLayerToggle:t,containerRef:r}){const o=h1();return l.jsx(ce,{children:e.map((i,s)=>l.jsx(Kn,{control:i,layers:n,onLayerToggle:t,scene:o,containerRef:r},`${i.type}-${s}`))})}function Kn({control:e,layers:n,onLayerToggle:t,scene:r,containerRef:o}){var s,a,c,d,h,y,f,g,p;const i=e.position??void 0;switch(e.type){case"zoom":return l.jsx(ue,{position:i??"bottomright"});case"scale":return l.jsx(he,{position:i??"bottomleft",maxWidth:(s=e.options)==null?void 0:s.maxWidth,metric:((a=e.options)==null?void 0:a.unit)!=="imperial",imperial:((c=e.options)==null?void 0:c.unit)==="imperial"});case"fullscreen":return l.jsx(fe,{position:i??"topright",container:o==null?void 0:o.current});case"geoLocate":return l.jsx(pe,{position:i??"topright"});case"mapTheme":return l.jsx(ye,{position:i??"topright"});case"mouseLocation":return l.jsx(me,{position:i??"bottomleft",precision:(d=e.options)==null?void 0:d.precision});case"exportImage":return l.jsx(Ce,{position:i??"topright",format:(h=e.options)==null?void 0:h.format});case"layerSwitch":return l.jsx(ve,{position:i??"topright",layers:n.map((C,L)=>({id:C.id??`layer-${L}`,name:C.name,visible:C.visible})),onToggle:t??(()=>{})});case"draw":return l.jsx(be,{position:i??"topright",modes:(y=e.options)==null?void 0:y.modes,showDelete:(f=e.options)==null?void 0:f.showDelete});case"imageCalibration":return l.jsx(xe,{position:i??"topright",opacity:(g=e.options)==null?void 0:g.opacity,imageSource:(p=e.options)==null?void 0:p.imageSource});default:return null}}const z1={aerialway:"M13,5H8V2.6c0.1854-0.1047,0.3325-0.2659,0.42-0.46L13.5,1.5C13.7761,1.5,14,1.2761,14,1s-0.2239-0.5-0.5-0.5L8.28,1.15 C8.0954,0.9037,7.8077,0.7562,7.5,0.75C7.0963,0.752,6.7334,0.9966,6.58,1.37L1.5,2C1.2239,2,1,2.2239,1,2.5S1.2239,3,1.5,3 l5.22-0.65C6.7967,2.4503,6.8917,2.5351,7,2.6V5H2C1.4477,5,1,5.4477,1,6v7c0,0.5523,0.4477,1,1,1h11c0.5523,0,1-0.4477,1-1V6 C14,5.4477,13.5523,5,13,5z M7,11H3V7h4V11z M12,11H8V7h4V11z",airfield:"M6.8182,0.6818H4.7727 C4.0909,0.6818,4.0909,0,4.7727,0h5.4545c0.6818,0,0.6818,0.6818,0,0.6818H8.1818c0,0,0.8182,0.5909,0.8182,1.9545V4h6v2L9,8l-0.5,5 l2.5,1.3182V15H4v-0.6818L6.5,13L6,8L0,6V4h6V2.6364C6,1.2727,6.8182,0.6818,6.8182,0.6818z",airport:"M15,6.8182L15,8.5l-6.5-1 l-0.3182,4.7727L11,14v1l-3.5-0.6818L4,15v-1l2.8182-1.7273L6.5,7.5L0,8.5V6.8182L6.5,4.5v-3c0,0,0-1.5,1-1.5s1,1.5,1,1.5v2.8182 L15,6.8182z","alcohol-shop":"M14,4h-4v3.44l0,0c0,0,0,0,0,0.06c0.003,0.9096,0.6193,1.7026,1.5,1.93V13H11c-0.2761,0-0.5,0.2239-0.5,0.5 S10.7239,14,11,14h2c0.2761,0,0.5-0.2239,0.5-0.5S13.2761,13,13,13h-0.5V9.43c0.8807-0.2274,1.497-1.0204,1.5-1.93c0,0,0,0,0-0.06 l0,0V4z M13,7.5c0,0.5523-0.4477,1-1,1s-1-0.4477-1-1V5h2V7.5z M5.5,2.5V2C5.7761,2,6,1.7761,6,1.5S5.7761,1,5.5,1V0.5 C5.5,0.2239,5.2761,0,5,0H4C3.7239,0,3.5,0.2239,3.5,0.5V1C3.2239,1,3,1.2239,3,1.5S3.2239,2,3.5,2v0.5C3.5,3.93,1,5.57,1,7v6 c0,0.5523,0.4477,1,1,1h5c0.5318-0.0465,0.9535-0.4682,1-1V7C8,5.65,5.5,3.85,5.5,2.5z M4.5,12C3.1193,12,2,10.8807,2,9.5 S3.1193,7,4.5,7S7,8.1193,7,9.5S5.8807,12,4.5,12z","american-football":"M7.53,3C3.09,3,1,7.5,1,7.5S3.09,12,7.53,12S14,7.5,14,7.5S12,3,7.53,3z M11,7v1.5C11,8.7761,10.7761,9,10.5,9 S10,8.7761,10,8.5V8H8v0.5C8,8.7761,7.7761,9,7.5,9S7,8.7761,7,8.5V8H5v0.5C5,8.7761,4.7761,9,4.5,9S4,8.7761,4,8.5v-2 C4,6.2239,4.2239,6,4.5,6S5,6.2239,5,6.5V7h2V6.5C7,6.2239,7.2239,6,7.5,6S8,6.2239,8,6.5V7h2V6.5C10,6.2239,10.2239,6,10.5,6 S11,6.2239,11,6.5V7z","amusement-park":"M13.5 7C13.5 9.02798 12.4939 10.821 10.9535 11.907L12 13.9999H3L4.04645 11.907C2.50613 10.821 1.5 9.02798 1.5 7C1.5 3.68629 4.18629 1 7.5 1C10.8137 1 13.5 3.68629 13.5 7ZM12.2984 7.125H8.99487C8.96844 7.4453 8.84138 7.73706 8.64538 7.96861L10.9814 10.3046C11.7719 9.47202 12.2669 8.35614 12.2984 7.125ZM10.8046 10.4814L8.46861 8.14538C8.33136 8.26156 8.17296 8.35351 8 8.41465V11.7743C9.08206 11.6623 10.0574 11.1908 10.8046 10.4814ZM6.00513 7.125H2.7016C2.73307 8.35614 3.2281 9.47202 4.01864 10.3046L6.35462 7.96861C6.15862 7.73706 6.03156 7.4453 6.00513 7.125ZM4.19542 10.4814C4.94259 11.1908 5.91794 11.6623 7 11.7743V8.41465C6.82704 8.35351 6.66864 8.26156 6.53139 8.14538L4.19542 10.4814ZM12.2984 6.875C12.2669 5.64386 11.7719 4.52798 10.9814 3.69542L8.64538 6.03139C8.84138 6.26294 8.96844 6.5547 8.99487 6.875H12.2984ZM10.8046 3.51864C9.97202 2.7281 8.85614 2.23307 7.625 2.2016V5.50513C7.9453 5.53156 8.23706 5.65862 8.46861 5.85462L10.8046 3.51864ZM7.375 5.50513V2.2016C6.14386 2.23307 5.02798 2.7281 4.19542 3.51864L6.53139 5.85462C6.76294 5.65862 7.0547 5.53156 7.375 5.50513ZM6.35462 6.03139L4.01864 3.69542C3.2281 4.52798 2.73307 5.64386 2.7016 6.875H6.00513C6.03156 6.5547 6.15862 6.26294 6.35462 6.03139Z","animal-shelter":"M 7.528,0.895 9,2 h 1 L 11.473,0.896 C 11.689502,0.73373378 12,0.8884387 12,1.159 V 4.5 c 0,0.722 -0.522,1.184 -1,1.573 V 10 l 0.8,2.4 0.706,0.353 c 0.302922,0.151551 0.494181,0.461283 0.494,0.8 C 13,13.8 12.8,14 12.553,14 H 4.25 C 3.017,14 2,13 2,11.713 2,9.5424588 2.4530836,7.9300225 2.745,6.845 2.8910836,6.3020225 3.0352907,5.8946079 3.138,5.614 3.1956028,5.4566256 3.253276,5.3110749 3.33,5.165 3.7788405,4.3104525 5.0743666,4.9556117 4.672,5.833 4.6232251,5.9393571 4.5778358,6.0512046 4.539,6.15 4.4477518,6.3821288 4.325004,6.7430011 4.193,7.234 3.947004,8.1490011 3.674,9.521 3.558,11.367 3.926,9.307 5.98,7.239 7.635,5.758 7.29,5.432 7.001,5.038 7.001,4.5 l 0,-3.342 c 0,-0.2705613 0.3106215,-0.42543084 0.527,-0.263 z",aquarium:"M1.13505 8.57743C1.98919 6.14741 4.72075 2 10 2C12.6518 2 14 3 14 3C14 3 11.6865 3 10.6203 3.44512C10.54 3.47864 10.4747 3.53744 10.4329 3.61375C10.2432 3.95995 9.75252 5.04744 10.3231 6.19506C10.4172 6.38427 10.6364 6.46548 10.8383 6.40312C11.3474 6.24589 12.3301 5.89727 13.0761 5.35729C13.2973 5.1972 13.615 5.25773 13.6797 5.52298C13.9401 6.59045 13.9401 8.40955 13.6797 9.47702C13.615 9.74227 13.2973 9.8028 13.0761 9.64271C12.3301 9.10273 11.3474 8.75411 10.8383 8.59688C10.6364 8.53452 10.4172 8.61573 10.3231 8.80494C9.75252 9.95256 10.2432 11.04 10.4329 11.3863C10.4747 11.4626 10.54 11.5214 10.6203 11.5549C11.6865 12 14 12 14 12C13.5 12.3333 11.8 13 9.00001 13C4.51722 13 2.02736 10.3427 1.25972 9.35985C1.08546 9.13673 1.04117 8.84452 1.13505 8.57743ZM5.00001 9C5.69037 9 6.25001 8.44036 6.25001 7.75C6.25001 7.05964 5.69037 6.5 5.00001 6.5C4.30966 6.5 3.75001 7.05964 3.75001 7.75C3.75001 8.44036 4.30966 9 5.00001 9Z",arrow:"M8.29289 2.29289C8.68342 1.90237 9.31658 1.90237 9.70711 2.29289L14.2071 6.79289C14.5976 7.18342 14.5976 7.81658 14.2071 8.20711L9.70711 12.7071C9.31658 13.0976 8.68342 13.0976 8.29289 12.7071C7.90237 12.3166 7.90237 11.6834 8.29289 11.2929L11 8.5H1.5C0.947715 8.5 0.5 8.05228 0.5 7.5C0.5 6.94772 0.947715 6.5 1.5 6.5H11L8.29289 3.70711C7.90237 3.31658 7.90237 2.68342 8.29289 2.29289Z","art-gallery":"m10.71 3-2.86-2.849996c-.1945-.1960996-.511-.1973996-.7071-.0029-.001.001-.0019.0019-.0029.0029l-2.85 2.849996h-2.79c-.2761 0-.5.2239-.5.5v9c0 .2761.2239.5.5.5h12c.2761 0 .5-.2239.5-.5v-9c0-.2761-.2239-.5-.5-.5zm-3.21-1.79 1.79 1.79h-3.58zm5.5 10.79h-11v-8h11zm-8-5c-.5523 0-1-.4477-1-1s.4477-1 1-1 1 .4477 1 1-.4477 1-1 1zm7 4h-7.5l1.5-3 1.25 2.5 2.25-4.5z",attraction:"M6,2C5.446,2,5.2478,2.5045,5,3L4.5,4h-2C1.669,4,1,4.669,1,5.5v5C1,11.331,1.669,12,2.5,12h10 c0.831,0,1.5-0.669,1.5-1.5v-5C14,4.669,13.331,4,12.5,4h-2L10,3C9.75,2.5,9.554,2,9,2H6z M2.5,5C2.7761,5,3,5.2239,3,5.5 S2.7761,6,2.5,6S2,5.7761,2,5.5S2.2239,5,2.5,5z M7.5,5c1.6569,0,3,1.3431,3,3s-1.3431,3-3,3s-3-1.3431-3-3S5.8431,5,7.5,5z M7.5,6.5C6.6716,6.5,6,7.1716,6,8l0,0c0,0.8284,0.6716,1.5,1.5,1.5l0,0C8.3284,9.5,9,8.8284,9,8l0,0C9,7.1716,8.3284,6.5,7.5,6.5 L7.5,6.5z",bakery:"M5.294,4.382,6,9.5a.979.979,0,0,0,1,1H8a.979.979,0,0,0,1-1l.706-5.118C9.706,3,7.5,3,7.5,3S5.291,3,5.294,4.382ZM3.5,5C2,5,2,6,2,6l1,4H4.5a.793.793,0,0,0,.794-.765L4.5,5Zm-2,2.5a1.533,1.533,0,0,0-1.059.412A1.366,1.366,0,0,0,0,8.794V11H.882A1.02,1.02,0,0,0,2,10ZM11.5,5C13,5,13,6,13,6l-1,4H10.5a.793.793,0,0,1-.794-.765L10.5,5Zm2,2.5a1.533,1.533,0,0,1,1.059.412A1.366,1.366,0,0,1,15,8.794V11h-.882A1.02,1.02,0,0,1,13,10Z",bank:"M1,3C0.446,3,0,3.446,0,4v7c0,0.554,0.446,1,1,1h13c0.554,0,1-0.446,1-1V4c0-0.554-0.446-1-1-1H1z M1,4h1.5 C2.7761,4,3,4.2239,3,4.5S2.7761,5,2.5,5S2,4.7761,2,4.5L1.5,5C1.7761,5,2,5.2239,2,5.5S1.7761,6,1.5,6S1,5.7761,1,5.5V4z M7.5,4 C8.8807,4,10,5.567,10,7.5l0,0C10,9.433,8.8807,11,7.5,11S5,9.433,5,7.5S6.1193,4,7.5,4z M12.5,4H14v1.5C14,5.7761,13.7761,6,13.5,6 S13,5.7761,13,5.5S13.2239,5,13.5,5L13,4.5C13,4.7761,12.7761,5,12.5,5S12,4.7761,12,4.5S12.2239,4,12.5,4z M7.5,5.5 c-0.323,0-0.5336,0.1088-0.6816,0.25h1.3633C8.0336,5.6088,7.823,5.5,7.5,5.5z M6.625,6C6.5795,6.091,6.5633,6.1711,6.5449,6.25 h1.9102C8.4367,6.1711,8.4205,6.091,8.375,6H6.625z M6.5,6.5v0.25h2V6.5H6.5z M6.5,7v0.25h2V7H6.5z M6.5,7.5v0.25h2V7.5H6.5z M6.5,8 L6.25,8.25h2L8.5,8H6.5z M6,8.5c0,0,0.0353,0.1024,0.1016,0.25H8.375L8,8.5H6z M1.5,9C1.7761,9,2,9.2239,2,9.5S1.7761,10,1.5,10 L2,10.5C2,10.2239,2.2239,10,2.5,10S3,10.2239,3,10.5S2.7761,11,2.5,11H1V9.5C1,9.2239,1.2239,9,1.5,9z M6.2383,9 C6.2842,9.0856,6.3144,9.159,6.375,9.25h2.2676C8.7092,9.1121,8.75,9,8.75,9H6.2383z M13.5,9C13.7761,9,14,9.2239,14,9.5V11h-1.5 c-0.2761,0-0.5-0.2239-0.5-0.5s0.2239-0.5,0.5-0.5s0.5,0.2239,0.5,0.5l0.5-0.5C13.2239,10,13,9.7761,13,9.5S13.2239,9,13.5,9z M6.5664,9.5c0.0786,0.0912,0.1647,0.1763,0.2598,0.25h1.4199C8.3462,9.6727,8.4338,9.5883,8.5,9.5H6.5664z","bank-JP":"M12.2808,3.3763l-2.9,3.625H11.25a.75.75,0,0,1,0,1.5H8.5v1h2.75a.75.75,0,0,1,0,1.5H8.5v1.25a1,1,0,0,1-2,0v-1.25H3.75a.75.75,0,1,1,0-1.5H6.5v-1H3.75a.75.75,0,0,1,0-1.5H5.6193l-2.9-3.625A1,1,0,0,1,4.2771,2.1216l.0037.0047L7.5,6.15l3.2192-4.024a1,1,0,0,1,1.5653,1.2453Z",bar:"M7.5,1c-2,0-7,0.25-6.5,0.75L7,8v4 c0,1-3,0.5-3,2h7c0-1.5-3-1-3-2V8l6-6.25C14.5,1.25,9.5,1,7.5,1z M7.5,2c2.5,0,4.75,0.25,4.75,0.25L11.5,3h-8L2.75,2.25 C2.75,2.25,5,2,7.5,2z",barrier:"m13 2h-11c-.26522 0-.51957.10536-.70711.29289-.18753.18754-.29289.44189-.29289.70711v6c0 .26522.10536.51957.29289.70711.18754.18753.44189.29289.70711.29289h1v2.5c0 .1326.05268.2598.14645.3536.09376.0937.22094.1464.35355.1464s.25979-.0527.35355-.1464c.09377-.0938.14645-.221.14645-.3536v-.5h7v.5c0 .1326.0527.2598.1464.3536.0938.0937.221.1464.3536.1464s.2598-.0527.3536-.1464c.0937-.0938.1464-.221.1464-.3536v-2.5h1c.2652 0 .5196-.10536.7071-.29289.1875-.18754.2929-.44189.2929-.70711v-6c0-.26522-.1054-.51957-.2929-.70711-.1875-.18753-.4419-.29289-.7071-.29289zm0 1v2l-2-2zm-3.5 0 3.5 3.5v2.5l-6-6zm-4 6-3.5-3.5v-2.5l6 6zm-3.5 0v-2l2 2zm9 2h-7v-1h7zm-.207-2h-1.293l-6-6h2l6 6z",baseball:"m9.00003 3.5c0 .8284-.6716 1.5-1.5 1.5s-1.5-.6716-1.5-1.5.6716-1.5 1.5-1.5 1.5.6716 1.5 1.5zm-3-3.22c0-.1546-.1254-.28-.28-.28-.0979.0262-.1852.0821-.25.16l-2.47 4.43c-.0059.0431-.0059.0869 0 .13 0 .1546.1254.28.28.28.1015-.0243.1926-.0803.26-.16l2.46-4.43c.006-.0431.006-.0869 0-.13zm5.89997 13.92-2.89997-7.81c-.0474-.2273-.2478-.3901-.48-.39h-5c-.2761 0-.5.2239-.5.5s.2239.5.5.5h2.48l1.45 2.51-4.27 4.61c-.1141.0932-.1802.2327-.18.38 0 .2761.2239.5.5.5.1224-.0006.2401-.047.33-.13l4.45-4.15 2.75997 4c.0895.1592.2574.2584.44.26.2796.0002.5092-.2207.52-.5-.0042-.1013-.039-.199-.1-.28z",basketball:"M3.66001 7H2.03C2.11012 6.02077 2.45969 5.05281 3.04001 4.26C3.39039 5.12432 3.59972 6.0693 3.66001 7ZM4.73501 7H7V2C5.78985 2.1061 4.72468 2.61284 3.83501 3.44C4.36491 4.54578 4.67079 5.77549 4.73501 7ZM8 2V7H10.265C10.3292 5.77549 10.6351 4.54578 11.165 3.44C10.2753 2.61284 9.21014 2.1061 8 2ZM11.96 4.26C11.6096 5.12432 11.4003 6.0693 11.34 7H12.97C12.8899 6.02077 12.5403 5.05281 11.96 4.26ZM14 8.49919C14 8.77489 13.7765 8.99838 13.5008 8.99838H11.72L10.96 10.5184V12.8984C10.9578 12.9736 10.934 13.0466 10.8915 13.1087C10.8489 13.1707 10.7894 13.2192 10.72 13.2484C10.6743 13.2607 10.6273 13.2674 10.58 13.2684C10.5312 13.2706 10.4825 13.2619 10.4375 13.2428C10.3925 13.2238 10.3524 13.195 10.32 13.1584L9.3 12.1484L7.71 13.2084C7.64698 13.2476 7.57423 13.2684 7.5 13.2684C7.42577 13.2684 7.35303 13.2476 7.29 13.2084L5.7 12.1484L4.68 13.1584C4.62956 13.211 4.56471 13.2477 4.49357 13.2637C4.42243 13.2797 4.34814 13.2744 4.28 13.2484C4.21063 13.2192 4.1511 13.1707 4.10854 13.1087C4.06599 13.0466 4.04219 12.9736 4.04 12.8984V10.5184L3.28 8.99838H1.49919C1.2235 8.99838 1 8.77489 1 8.4992C0.999998 8.2235 1.22349 8 1.49919 8H13.5008C13.7765 8 14 8.2235 14 8.49919ZM6.86 8.99838H4.12L4.75 10.2684C4.7772 10.3173 4.791 10.3725 4.79 10.4284V11.9884L5.35 11.4384L6.86 8.99838ZM8.84 11.5484L7.5 9.38838L6.16 11.5484L7.5 12.4484L8.84 11.5484ZM10.89 8.99838H8.14L9.65 11.4384L10.21 11.9884V10.4284C10.209 10.3725 10.2228 10.3173 10.25 10.2684L10.89 8.99838Z",bbq:"M9.32,7.655C10.8782,7.108,11.9471,5.6506,12,4H3c0.053,1.6299,1.0978,3.0728,2.63,3.631L4.923,9.044 c-1.3571-0.2355-2.6482,0.6737-2.8837,2.0308s0.6737,2.6482,2.0308,2.8837C4.9927,14.1187,5.9273,13.7485,6.49,13h4.223l0.335,0.717 c0.0836,0.1735,0.2594,0.2836,0.452,0.283c0.0733,0.0003,0.1457-0.0158,0.212-0.047c0.2497-0.117,0.3575-0.4141,0.241-0.664 L9.32,7.655z M4.5,12.75c-0.6904,0-1.25-0.5596-1.25-1.25s0.5596-1.25,1.25-1.25s1.25,0.5596,1.25,1.25 C5.7484,12.1897,5.1897,12.7484,4.5,12.75z M6.95,12c0.2066-1.007-0.2268-2.0374-1.091-2.594L6.6,7.923 c0.577,0.1042,1.168,0.1042,1.745,0l1.9,4.07L6.95,12z M4.75,1C4.6119,1,4.5,1.1119,4.5,1.25c0,0.5-0.5,0.5-0.5,0.5c-1,0-1,1-1,1 C3,2.8881,3.1119,3,3.25,3S3.5,2.8881,3.5,2.75c0-0.5,0.5-0.5,0.5-0.5c1,0,1-1,1-1C5,1.1119,4.8881,1,4.75,1z M6.75,1 C6.6119,1,6.5,1.1119,6.5,1.25c0,0.5-0.5,0.5-0.5,0.5c-1,0-1,1-1,1C5,2.8881,5.1119,3,5.25,3S5.5,2.8881,5.5,2.75 c0-0.5,0.5-0.5,0.5-0.5c1,0,1-1,1-1C7,1.1119,6.8881,1,6.75,1z M8.75,1C8.6119,1,8.5,1.1119,8.5,1.25c0,0.5-0.5,0.5-0.5,0.5 c-1,0-1,1-1,1C7,2.8881,7.1119,3,7.25,3S7.5,2.8881,7.5,2.75c0-0.5,0.5-0.5,0.5-0.5c1,0,1-1,1-1C9,1.1119,8.8881,1,8.75,1z M10.75,1 c-0.1381,0-0.25,0.1119-0.25,0.25c0,0.5-0.5,0.5-0.5,0.5c-1,0-1,1-1,1C9,2.8881,9.1119,3,9.25,3S9.5,2.8881,9.5,2.75 c0-0.5,0.5-0.5,0.5-0.5c1,0,1-1,1-1C11,1.1119,10.8881,1,10.75,1z M12.75,1c-0.1381,0-0.25,0.1119-0.25,0.25c0,0.5-0.5,0.5-0.5,0.5 c-1,0-1,1-1,1C11,2.8881,11.1119,3,11.25,3s0.25-0.1119,0.25-0.25c0-0.5,0.5-0.5,0.5-0.5c1,0,1-1,1-1C13,1.1119,12.8881,1,12.75,1z",beach:"M5.3608,1.67l-.01,4.02a4.4523,4.4523,0,0,0-1.1-.11c-.37.1-.74.63-1.1.76A4.2019,4.2019,0,0,1,5.3608,1.67Zm2.41-.64,2.03,3.45a3.1832,3.1832,0,0,1,.84-.61c.36-.1.94.17,1.34.11A4.2018,4.2018,0,0,0,7.7708,1.03ZM1.0008,13h13c-.66-.66-2.64-1.11-4.34-1.33l-1.87-7c.52-.05,1.15.03,1.53,0l-2.11-3.6h-.01a6.1743,6.1743,0,0,0-.7.14,4.3792,4.3792,0,0,0-.64.22l-.01,4.15c.35-.17.84-.54,1.3-.74l1.8,6.74c-.58-.05-1.09-.08-1.45-.08C6.0308,11.5,2.0008,12,1.0008,13Z",beer:"M12,5V2c0,0-1-1-4.5-1S3,2,3,2v3c0.0288,1.3915,0.3706,2.7586,1,4c0.6255,1.4348,0.6255,3.0652,0,4.5c0,0,0,1,3.5,1 s3.5-1,3.5-1c-0.6255-1.4348-0.6255-3.0652,0-4.5C11.6294,7.7586,11.9712,6.3915,12,5z M7.5,13.5 c-0.7966,0.035-1.5937-0.0596-2.36-0.28c0.203-0.7224,0.304-1.4696,0.3-2.22h4.12c-0.004,0.7504,0.097,1.4976,0.3,2.22 C9.0937,13.4404,8.2966,13.535,7.5,13.5z M7.5,5C6.3136,5.0299,5.1306,4.8609,4,4.5v-2C5.131,2.1411,6.3137,1.9722,7.5,2 C8.6863,1.9722,9.869,2.1411,11,2.5v2C9.8694,4.8609,8.6864,5.0299,7.5,5z",bicycle:"M7.5,2c-0.6761-0.01-0.6761,1.0096,0,1H9v1.2656l-2.8027,2.334L5.2226,4H5.5c0.6761,0.01,0.6761-1.0096,0-1h-2 c-0.6761-0.01-0.6761,1.0096,0,1h0.6523L5.043,6.375C4.5752,6.1424,4.0559,6,3.5,6C1.5729,6,0,7.5729,0,9.5S1.5729,13,3.5,13 S7,11.4271,7,9.5c0-0.6699-0.2003-1.2911-0.5293-1.8242L9.291,5.3262l0.4629,1.1602C8.7114,7.0937,8,8.2112,8,9.5 c0,1.9271,1.5729,3.5,3.5,3.5S15,11.4271,15,9.5S13.4271,6,11.5,6c-0.2831,0-0.5544,0.0434-0.8184,0.1074L10,4.4023V2.5 c0-0.2761-0.2239-0.5-0.5-0.5H7.5z M3.5,7c0.5923,0,1.1276,0.2119,1.5547,0.5527l-1.875,1.5625 c-0.5109,0.4273,0.1278,1.1945,0.6406,0.7695l1.875-1.5625C5.8835,8.674,6,9.0711,6,9.5C6,10.8866,4.8866,12,3.5,12S1,10.8866,1,9.5 S2.1133,7,3.5,7L3.5,7z M11.5,7C12.8866,7,14,8.1134,14,9.5S12.8866,12,11.5,12S9,10.8866,9,9.5c0-0.877,0.4468-1.6421,1.125-2.0879 l0.9102,2.2734c0.246,0.6231,1.1804,0.2501,0.9297-0.3711l-0.9082-2.2695C11.2009,7.0193,11.3481,7,11.5,7L11.5,7z","bicycle-share":"M10,1C9.4477,1,9,1.4477,9,2c0,0.5523,0.4477,1,1,1s1-0.4477,1-1C11,1.4477,10.5523,1,10,1z M8.1445,2.9941 c-0.13,0.0005-0.2547,0.0517-0.3477,0.1426l-2.6406,2.5c-0.2256,0.2128-0.2051,0.5775,0.043,0.7637L7,7.75v2.75 c-0.01,0.6762,1.0096,0.6762,1,0v-3c0.0003-0.1574-0.0735-0.3057-0.1992-0.4004L7.0332,6.5234l1.818-1.7212l0.7484,0.9985 C9.6943,5.9265,9.8426,6.0003,10,6h1.5c0.6761,0.01,0.6761-1.0096,0-1h-1.25L9.5,4L8.9004,3.1992 C8.8103,3.0756,8.6685,3,8.5156,2.9941H8.1445z M3,7c-1.6569,0-3,1.3432-3,3s1.3431,3,3,3s3-1.3432,3-3S4.6569,7,3,7z M12,7 c-1.6569,0-3,1.3432-3,3s1.3431,3,3,3s3-1.3432,3-3S13.6569,7,12,7z M3,8c1.1046,0,2,0.8954,2,2s-0.8954,2-2,2s-2-0.8954-2-2 S1.8954,8,3,8z M12,8c1.1046,0,2,0.8954,2,2s-0.8954,2-2,2s-2-0.8954-2-2S10.8954,8,12,8z","blood-bank":"m11.2 6.1-3.7-5.1-3.7 5.1c-.5.7-.8 1.6-.8 2.5 0 2.4 2 4.4 4.5 4.4s4.5-2 4.5-4.4c0-.9-.3-1.8-.8-2.5zm-1.2 2.9h-2v2h-1v-2h-2v-1h2v-2h1v2h2z","bowling-alley":"M10.922 3.166c0 1.006-.335 1.857-.693 2.77-.414 1.052-.86 2.185-.86 3.73 0 2.166.687 4.333 1.409 4.333h1.444c.723 0 1.409-2.166 1.409-4.333 0-1.545-.446-2.678-.86-3.73-.358-.912-.693-1.764-.693-2.77 0-.722.144-.723.144-1.445A.743.743 0 0 0 11.5.999a.743.743 0 0 0-.722.722c0 .723.144.723.144 1.445Zm-2.552 6.5c0-1.234.254-2.236.55-3.091a4.5 4.5 0 1 0-.17 6.038c-.237-.865-.38-1.91-.38-2.947ZM5.24 7.12a.62.62 0 1 1-1.24 0 .62.62 0 0 1 1.24 0Zm-1 2a.62.62 0 1 1-1.24 0 .62.62 0 0 1 1.24 0Zm2 0a.62.62 0 1 1-1.24 0 .62.62 0 0 1 1.24 0Z",bridge:"m0 6.84201v4.15799h2v-1c.036-1.08899.911-1.96399 2-1.99999 1.089.036 1.964.911 2 1.99999v1h3v-1c.036-1.08899.911-1.96399 2-1.99999 1.089.036 1.964.911 2 1.99999v1h2v-4.15799c-4.4-5.76-11.929-4.442-15 0zm9.5-3.108c.514.121 1.016.289 1.5.5v2.766h-1.5zm-.5-.1v3.366h-1.5v-3.494c.503 0 1.005.043 1.5.128zm-5.5.843c.48-.248.982-.451 1.5-.606v3.129h-1.5zm2 2.523v-3.27c.493-.115.995-.187 1.5-.215v3.485zm-2.5-2.256v2.256h-2.5c.676-.906 1.532-1.672 2.5-2.256zm8.5 2.256v-2.5l-.053-.053c1.202.603 2.247 1.477 3.053 2.553z",building:"M3,2v11h5v-3h3v3h1V2H3z M7,12H4v-2h3V12z M7,9H4V7h3V9z M7,6H4V4h3V6z M11,9H8V7h3V9z M11,6H8V4h3V6z","building-alt1":"M11,13.5v-9C11,4.2,10.8,4,10.5,4H9V1L5,2.1v11.4H2V14h11v-0.5H11z M7,13.5V3h1v10.5H7z",bus:"M2 3C2 1.9 2.9 1 4 1H11C12.1 1 13 1.9 13 3V11C13 12 12 12 12 12V13C12 13.55 11.55 14 11 14C10.45 14 10 13.55 10 13V12H5V13C5 13.55 4.55 14 4 14C3.45 14 3 13.55 3 13V12C2 12 2 11 2 11V3ZM3.5 4C3.22 4 3 4.22 3 4.5V7.5C3 7.78 3.22 8 3.5 8H11.5C11.78 8 12 7.78 12 7.5V4.5C12 4.22 11.78 4 11.5 4H3.5ZM4 9C3.45 9 3 9.45 3 10C3 10.55 3.45 11 4 11C4.55 11 5 10.55 5 10C5 9.45 4.55 9 4 9ZM11 9C10.45 9 10 9.45 10 10C10 10.55 10.45 11 11 11C11.55 11 12 10.55 12 10C12 9.45 11.55 9 11 9ZM4 2.5C4 2.78 4.22 3 4.5 3H10.5C10.78 3 11 2.78 11 2.5C11 2.22 10.78 2 10.5 2H4.5C4.22 2 4 2.22 4 2.5Z",cafe:"M12,5h-2V3H2v4c0.0133,2.2091,1.8149,3.9891,4.024,3.9758C7.4345,10.9673,8.7362,10.2166,9.45,9H12c1.1046,0,2-0.8954,2-2 S13.1046,5,12,5z M12,8H9.86C9.9487,7.6739,9.9958,7.3379,10,7V6h2c0.5523,0,1,0.4477,1,1S12.5523,8,12,8z M10,12.5 c0,0.2761-0.2239,0.5-0.5,0.5h-7C2.2239,13,2,12.7761,2,12.5S2.2239,12,2.5,12h7C9.7761,12,10,12.2239,10,12.5z",campsite:"M14 10V11C14 11.5523 13.5523 12 13 12H2C1.44772 12 1 11.5523 1 11V10C1 9.44772 1.44772 9.00001 2 9.00001H2.25L7.03206 1.25762C7.24699 0.90965 7.75302 0.909651 7.96794 1.25762L12.75 9.00001H13C13.5523 9.00001 14 9.44772 14 10ZM10.5 9.00001L7.5 4.00001L4.5 9.00001H10.5Z",car:"M13.84,6.852,12.6,5.7,11.5,3.5a1.05,1.05,0,0,0-.9-.5H4.4a1.05,1.05,0,0,0-.9.5L2.4,5.7,1.16,6.852A.5.5,0,0,0,1,7.219V11.5a.5.5,0,0,0,.5.5h2c.2,0,.5-.2.5-.4V11h7v.5c0,.2.2.5.4.5h2.1a.5.5,0,0,0,.5-.5V7.219A.5.5,0,0,0,13.84,6.852ZM4.5,4h6l1,2h-8ZM5,8.6c0,.2-.3.4-.5.4H2.4C2.2,9,2,8.7,2,8.5V7.4c.1-.3.3-.5.6-.4l2,.4c.2,0,.4.3.4.5Zm8-.1c0,.2-.2.5-.4.5H10.5c-.2,0-.5-.2-.5-.4V7.9c0-.2.2-.5.4-.5l2-.4c.3-.1.5.1.6.4Z","car-rental":"M10.5 1C9.94772 1 9.5 1.44772 9.5 2H2V3L3 4 4 3 5 4 6 3 7 4H9.5C9.5 4.55228 9.94772 5 10.5 5H12.5C12.7761 5 13 4.77614 13 4.5V1.5C13 1.22386 12.7761 1 12.5 1H10.5ZM11 2.5C11 2.22386 11.2239 2 11.5 2 11.7761 2 12 2.22386 12 2.5V3.5C12 3.77614 11.7761 4 11.5 4 11.2239 4 11 3.77614 11 3.5V2.5ZM2.14645 9.35355C2.05268 9.44732 2 9.5745 2 9.70711V13.5C2 13.7761 2.22386 14 2.5 14H4C4.27614 14 4.5 13.7761 4.5 13.5V13H10.5V13.5C10.5 13.7761 10.7239 14 11 14H12.5C12.7761 14 13 13.7761 13 13.5V9.70711C13 9.5745 12.9473 9.44732 12.8536 9.35355L12 8.5 10.6457 6.24275C10.5553 6.09215 10.3925 6 10.2169 6H4.7831C4.60746 6 4.44471 6.09215 4.35435 6.24275L3 8.5 2.14645 9.35355ZM11.1338 9H3.86623L5.06619 7H9.93381L11.1338 9ZM5.5 10.8279V11.2C5.5 11.3657 5.36569 11.5 5.2 11.5H3.3C3.13431 11.5 3 11.3657 3 11.2V10.3659C3 10.1766 3.1732 10.0346 3.35884 10.0718L5.17845 10.4357C5.36542 10.4731 5.5 10.6372 5.5 10.8279ZM12 10.4879V11.2C12 11.3657 11.8657 11.5 11.7 11.5H9.8C9.63431 11.5 9.5 11.3657 9.5 11.2V10.7459C9.5 10.6029 9.60094 10.4798 9.74117 10.4518L11.5216 10.0957C11.7691 10.0462 12 10.2355 12 10.4879Z","car-repair":"M3 5C3.74028 5 4.38662 4.5978 4.73243 4H12C12.5523 4 13 3.55228 13 3 13 2.44772 12.5523 2 12 2H4.73243C4.38662 1.4022 3.74028 1 3 1 2.25972 1 1.61337 1.4022 1.26756 2H3V4H1.26756C1.61337 4.5978 2.25972 5 3 5ZM2.14645 9.35355C2.05268 9.44732 2 9.5745 2 9.70711V13.5C2 13.7761 2.22386 14 2.5 14H4C4.27614 14 4.5 13.7761 4.5 13.5V13H10.5V13.5C10.5 13.7761 10.7239 14 11 14H12.5C12.7761 14 13 13.7761 13 13.5V9.70711C13 9.5745 12.9473 9.44732 12.8536 9.35355L12 8.5 10.6456 6.24275C10.5553 6.09215 10.3925 6 10.2169 6H4.78309C4.60746 6 4.44471 6.09215 4.35435 6.24275L3 8.5 2.14645 9.35355ZM11.1338 9H3.86622L5.06619 7H9.93381L11.1338 9ZM5.5 10.8279V11.2C5.5 11.3657 5.36568 11.5 5.2 11.5H3.3C3.13431 11.5 3 11.3657 3 11.2V10.3659C3 10.1766 3.1732 10.0346 3.35883 10.0718L5.17844 10.4357C5.36541 10.4731 5.5 10.6372 5.5 10.8279ZM12 10.4879V11.2C12 11.3657 11.8657 11.5 11.7 11.5H9.8C9.63431 11.5 9.5 11.3657 9.5 11.2V10.7459C9.5 10.6029 9.60094 10.4798 9.74116 10.4518L11.5216 10.0957C11.7691 10.0462 12 10.2355 12 10.4879Z",casino:"M8.5,10c0.4561,0.6072,1.1821,1,2,1c1.3807,0,2.5-1.1193,2.5-2.5c0-0.5642-0.1938-1.0789-0.509-1.4973L12.5,7l-5-6l-5,6 l0.009,0.0027C2.1938,7.4211,2,7.9358,2,8.5C2,9.8807,3.1193,11,4.5,11c0.8179,0,1.5439-0.3928,2-1 C6.5997,9.8672,6.7902,9.6135,7,9.3337V11.5C7,13,4.5,13,4.5,13C4.2239,13,4,13.2238,4,13.5C4,13.7761,4.2239,14,4.5,14H7h1h2.5 c0.2761,0,0.5-0.2239,0.5-0.5c0-0.2762-0.2239-0.5-0.5-0.5c0,0-2.5,0-2.5-1.5V9.3337C8.2098,9.6135,8.4003,9.8672,8.5,10z",castle:"M11,4H4C3.4477,4,3,3.5523,3,3V0.5C3,0.2239,3.2239,0,3.5,0S4,0.2239,4,0.5V2h1V1c0-0.5523,0.4477-1,1-1s1,0.4477,1,1v1h1V1 c0-0.5523,0.4477-1,1-1s1,0.4477,1,1v1h1V0.5C11,0.2239,11.2239,0,11.5,0S12,0.2239,12,0.5V3C12,3.5523,11.5523,4,11,4z M14,14.5 c0,0.2761-0.2239,0.5-0.5,0.5h-12C1.2239,15,1,14.7761,1,14.5S1.2239,14,1.5,14H2c0.5523,0,1-0.4477,1-1c0,0,1-6,1-7 c0-0.5523,0.4477-1,1-1h5c0.5523,0,1,0.4477,1,1c0,1,1,7,1,7c0,0.5523,0.4477,1,1,1h0.5c0.2723-0.0001,0.4946,0.2178,0.5,0.49V14.5z M9,10.5C9,9.6716,8.3284,9,7.5,9S6,9.6716,6,10.5V14h3V10.5z","castle-JP":"M12.5,12.75a1,1,0,0,1-1-.9995V7.25H10a1,1,0,0,1-1-1v-2H6v2a1,1,0,0,1-1,1H3.5v4.5a1,1,0,0,1-2,0V6.25a1,1,0,0,1,1-1H4v-2a1,1,0,0,1,1-1h5a1,1,0,0,1,1,1v2h1.5a1,1,0,0,1,1,1v5.5a1,1,0,0,1-.9995,1Z",caution:"M1.09302 11.8924L6.84044 1.3905C7.12539 0.869834 7.87461 0.869834 8.15956 1.3905L13.907 11.8924C14.1805 12.3922 13.818 13.0019 13.2474 13.0019H1.75258C1.18195 13.0019 0.819505 12.3922 1.09302 11.8924ZM8.29999 8L8.70296 5.5822C8.75375 5.27743 8.51873 5 8.20976 5H6.79022C6.48125 5 6.24623 5.27743 6.29703 5.5822L6.69999 8H8.29999ZM8.59999 9.9C8.59999 9.29249 8.10751 8.8 7.49999 8.8C6.89248 8.8 6.39999 9.29249 6.39999 9.9C6.39999 10.5075 6.89248 11 7.49999 11C8.10751 11 8.59999 10.5075 8.59999 9.9Z",cemetery:"M11.46,12h-0.68L12,3.55c0.0175-0.2867-0.2008-0.5332-0.4874-0.5507C11.4884,2.9979,11.4641,2.9981,11.44,3h-1.18 c0-0.92-1.23-2-2.75-2S4.77,2.08,4.77,3H3.54C3.253,2.9885,3.0111,3.2117,2.9995,3.4987C2.9988,3.5158,2.999,3.5329,3,3.55L4.2,12 H3.55C3.2609,11.9886,3.0162,12.2112,3,12.5V14h9v-1.51C11.9839,12.2067,11.7435,11.9886,11.46,12z M4.5,5h6v1h-6V5z","cemetery-JP":"M11.5,11h-3V2.5a.9448.9448,0,0,0-1-1,.9448.9448,0,0,0-1,1V11h-3a1,1,0,0,0,0,2h8a.9448.9448,0,0,0,1-1A1.0022,1.0022,0,0,0,11.5,11Z","charging-station":"m14 4v-1.51c-.0054-.2722-.2277-.4901-.5-.49-.2816.0047-.5062.2367-.5015.5184.0002.0105.0007.0211.0015.0316v2.45c0 .5523.4477 1 1 1v5.5c0 .2761-.2239.5-.5.5s-.5-.2239-.5-.5v-2c0-.8284-.6716-1.5-1.5-1.5h-1.5v-6c0-.5523-.4477-1-1-1h-6c-.5523 0-1 .4477-1 1v11c0 .5523.4477 1 1 1h6c.5523 0 1-.4477 1-1v-4h1.5c.2761 0 .5.2239.5.5v2c0 .8284.6716 1.5 1.5 1.5s1.5-.6716 1.5-1.5v-6.5c0-.5523-.4477-1-1-1zm-5.7996 3.3995-2.6006 3.4674-.0164-.0072c-.0465.0787-.1167.1403-.2146.1403-.1476 0-.2672-.1196-.2672-.2672 0-.028.0217-.0463.0297-.0717l-.0177-.0078.7766-2.3245c.054-.1617-.0664-.3288-.2369-.3288h-1.6539c-.2058 0-.3232-.2349-.1998-.3995l2.6006-3.4674.0164.0072c.0465-.0787.1167-.1403.2146-.1403.1476 0 .2672.1196.2672.2672 0 .028-.0217.0463-.0297.0717l.0176.0078-.7764 2.3244c-.0541.1618.0663.3289.2368.3289h1.6539c.2058 0 .3232.2349.1998.3995z",cinema:"M14,7.5v2c0,0.2761-0.2239,0.5-0.5,0.5S13,9.7761,13,9.5c0,0,0.06-0.5-1-0.5h-1v2.5c0,0.2761-0.2239,0.5-0.5,0.5h-8 C2.2239,12,2,11.7761,2,11.5v-4C2,7.2239,2.2239,7,2.5,7h8C10.7761,7,11,7.2239,11,7.5V8h1c1.06,0,1-0.5,1-0.5 C13,7.2239,13.2239,7,13.5,7S14,7.2239,14,7.5z M4,3C2.8954,3,2,3.8954,2,5s0.8954,2,2,2s2-0.8954,2-2S5.1046,3,4,3z M4,6 C3.4477,6,3,5.5523,3,5s0.4477-1,1-1s1,0.4477,1,1S4.5523,6,4,6z M8.5,2C7.1193,2,6,3.1193,6,4.5S7.1193,7,8.5,7S11,5.8807,11,4.5 S9.8807,2,8.5,2z M8.5,6C7.6716,6,7,5.3284,7,4.5S7.6716,3,8.5,3S10,3.6716,10,4.5S9.3284,6,8.5,6z",circle:"M14,7.5c0,3.5899-2.9101,6.5-6.5,6.5S1,11.0899,1,7.5S3.9101,1,7.5,1S14,3.9101,14,7.5z","circle-stroked":"M7.5 12.3C4.84898 12.3 2.7 10.151 2.7 7.5C2.7 4.84898 4.84898 2.7 7.5 2.7C10.151 2.7 12.3 4.84898 12.3 7.5C12.3 10.151 10.151 12.3 7.5 12.3ZM7.5 14C11.0899 14 14 11.0899 14 7.5C14 3.9101 11.0899 1 7.5 1C3.9101 1 1 3.9101 1 7.5C1 11.0899 3.9101 14 7.5 14Z",city:"M12.6368 3.9994H10.9981V2.3608C10.998 2.16148 10.8364 1.99994 10.6371 2H10.3591C10.1598 2 9.9982 2.16158 9.9982 2.3609V3.9994H8.36C8.16068 3.9994 7.9991 4.16098 7.9991 4.3603V9.9984H4.3621C4.16168 9.9984 3.9992 10.1609 3.9992 10.3613V12.6358C3.99975 12.8358 4.16207 12.9977 4.3621 12.9977H12.6368C12.8361 12.9977 12.9977 12.8361 12.9977 12.6368V4.36C12.9977 4.16068 12.8361 3.9994 12.6368 3.9994ZM5.9989 11.9981H4.9989V10.9981H5.9989V11.9981ZM7.9989 11.9981H6.9989V10.9981H7.9989V11.9981ZM9.9989 11.9981H8.9989V10.9981H9.9989V11.9981ZM9.9989 9.9981H8.9989V8.9981H9.9989V9.9981ZM9.9989 7.9981H8.9989V6.9981H9.9989V7.9981ZM9.9989 5.9981H8.9989V4.9981H9.9989V5.9981ZM11.9989 11.9971H10.9989V10.9971H11.9989V11.9971ZM11.9989 9.9971H10.9989V8.9971H11.9989V9.9971ZM11.9989 7.9971H10.9989V6.9971H11.9989V7.9971ZM11.9989 5.9971H10.9989V4.9971H11.9989V5.9971ZM6.9987 2.3608C6.99864 2.16152 6.83708 2 6.6378 2H4.36C4.16068 2 3.9991 2.16158 3.9991 2.3609V4H2.36C2.16138 4.00049 2.00049 4.16138 2 4.36V12.6474C2 12.8407 2.1567 12.9974 2.35 12.9974H2.9994V8.9986H6.9987V2.3608ZM4 7.9981H3V6.9981H4V7.9981ZM4 5.9981H3V4.9981H4V5.9981ZM6 7.9981H5V6.9981H6V7.9981ZM6 5.9981H5V4.9981H6V5.9981ZM6 3.9981H5V3H6V4V3.9981Z","clothing-store":"M4 2L1 4.5L1 7H4V13H11V7H14V4.5L11 2H9.5L7.5 6L5.5 2L4 2Z",college:"M7.5,1L0,4.5l2,0.9v1.7C1.4,7.3,1,7.9,1,8.5s0.4,1.2,1,1.4V10l-0.9,2.1 C0.8,13,1,14,2.5,14s1.7-1,1.4-1.9L3,10c0.6-0.3,1-0.8,1-1.5S3.6,7.3,3,7.1V5.9L7.5,8L15,4.5L7.5,1z M11.9,7.5l-4.5,2L5,8.4v0.1 c0,0.7-0.3,1.3-0.8,1.8l0.6,1.4v0.1C4.9,12.2,5,12.6,4.9,13c0.7,0.3,1.5,0.5,2.5,0.5c3.3,0,4.5-2,4.5-3L11.9,7.5L11.9,7.5z","college-JP":"M12.5,2.9992h-4v-1a1,1,0,0,0-2,0v1h-4a1,1,0,0,0,0,2h.67A10.8169,10.8169,0,0,0,5.15,8.8105c.3331.4313.6594.8248.9785,1.1936a14.3825,14.3825,0,0,1-2.6074,2.117,1,1,0,1,0,.955,1.7581h0A15.65,15.65,0,0,0,7.5,11.4613a15.65,15.65,0,0,0,3.0239,2.4179,1,1,0,1,0,.9551-1.7578,14.3789,14.3789,0,0,1-2.6073-2.1171c.3191-.3688.6453-.7622.9784-1.1935a10.818,10.818,0,0,0,1.98-3.8116h.67a1,1,0,0,0,0-2ZM8.2671,7.5879c-.2614.3385-.5154.6413-.767.937-.2517-.2957-.5057-.5985-.7672-.937A9.5885,9.5885,0,0,1,5.2676,4.9992H9.7319A9.5789,9.5789,0,0,1,8.2671,7.5879Z",commercial:"m14 6h-13c.0881-1.3829.427-2.7383 1-4h11c.5731 1.2617.9119 2.6171 1 4zm-11 1h9v6h-1v-5h-3v5h-5zm1 3h3v-2h-3z","communications-tower":"M11.8545,6.4336l-.4131-.2813a4.7623,4.7623,0,0,0,.2813-4.8779l-.0835-.1533L12.0747.875l.0908.167a5.2619,5.2619,0,0,1-.311,5.3916Zm1.1521,7.1316V14h-11v-.4348H4.4952L6.0439,6.4a.5.5,0,0,1,.4888-.3945h.7255V4.6014A1.14,1.14,0,0,1,6.3756,3.5a1.1568,1.1568,0,1,1,2.3136,0,1.14,1.14,0,0,1-.931,1.1112V6.0059h.7223A.5.5,0,0,1,8.9692,6.4l1.5478,7.1648ZM8.4543,8.751H6.5588L6.236,10.2441H8.777ZM6.1279,10.7441l-.3233,1.4952H9.2082l-.3231-1.4952ZM6.936,7.0059,6.6669,8.251H8.3463L8.0771,7.0059ZM5.5179,13.5652H9.4948l-.1786-.8259h-3.62ZM5.21,5.0137a2.7523,2.7523,0,0,1,.0161-3.0518L4.812,1.6826a3.25,3.25,0,0,0-.019,3.6065ZM10.7568,3.5a3.2433,3.2433,0,0,0-.5341-1.7861l-.418.2754a2.7517,2.7517,0,0,1-.0176,3.0488l.4141.2793A3.2341,3.2341,0,0,0,10.7568,3.5ZM3.5342,6.1182A4.7637,4.7637,0,0,1,3.3813,1.13L2.9478.88a5.2643,5.2643,0,0,0,.1694,5.5137Z",confectionery:"M13,4a1,1,0,0,0-1-1,1,1,0,0,0-2,0V5.0673A3.4808,3.4808,0,0,0,4.3583,9H2a1,1,0,0,0,0,2,1,1,0,0,0,1,1,1,1,0,0,0,2,0V9.9326A3.4807,3.4807,0,0,0,10.6417,6H13a1,1,0,0,0,0-2ZM7.5,9.9925A2.484,2.484,0,0,1,6.3184,5.319a1.0809,1.0809,0,0,1,.5459.307A2.1243,2.1243,0,0,1,7.25,7.0117l.001.9561A2.5821,2.5821,0,0,0,7.76,9.7031a1.5462,1.5462,0,0,0,.2591.2333A2.4861,2.4861,0,0,1,7.5,9.9925ZM8.6815,9.681a1.0813,1.0813,0,0,1-.5458-.307A2.1243,2.1243,0,0,1,7.75,7.9883l-.001-.9561A2.5821,2.5821,0,0,0,7.24,5.2969a1.5557,1.5557,0,0,0-.2592-.2334A2.4843,2.4843,0,0,1,8.6815,9.681Z",construction:"M13.5 11h-1.8L8.2.5C8-.2 7-.2 6.8.5L3.3 11H1.5c-.3 0-.5.2-.5.5v1c0 .3.2.5.5.5h12c.3 0 .5-.2.5-.5v-1c0-.3-.2-.5-.5-.5ZM7 3h1l.7 2H6.4L7 3ZM5.7 7h3.6l.7 2H5l.7-2Z",convenience:"M2.9982,3.0687s.1875-1.062,1-1.062H5.0043V1.7276a.5.5,0,0,1,.5-.5H9.4882a.5.5,0,0,1,.5.5v.2791h1.01a.8324.8324,0,0,1,.6373.2937,1.7589,1.7589,0,0,1,.3627.7683s.3108,1.5719.5921,2.9181h-.938L11,3,3.982,2.9956,3.3336,5.9868H2.382Zm11,4.9144a1,1,0,0,1-.9992,1l-1.0008,3.973s-.1875,1.0417-1,1.0417h-7c-.8125,0-1-1.0417-1-1.0417L1.9822,8.98a.9985.9985,0,0,1,.016-1.9968h11A1,1,0,0,1,13.9982,7.9831ZM5.0327,12.13,5.03,11.0051,4.6392,9.4686a.5373.5373,0,1,0-1.0649.1445L3.78,11.0075l.1874,1.2672A.5373.5373,0,1,0,5.0327,12.13Zm2-2.5967A.5332.5332,0,0,0,6.4994,9l-.0039.0008L6.4886,9a.4992.4992,0,0,0-.3575.1509.529.529,0,0,0-.1648.3828v2.68a.5332.5332,0,1,0,1.0663,0Zm1.998,0A.5314.5314,0,0,0,8.694,9.04a.4992.4992,0,0,0-.393,0,.5312.5312,0,0,0-.3366.4934v2.68a.5331.5331,0,1,0,1.0662,0Zm2.3857.08a.5373.5373,0,1,0-1.0649-.1445L9.96,10.9938,9.9579,12.13a.5373.5373,0,1,0,1.0649.1446Z",cricket:"M8,1.5C8,2.3284,7.3284,3,6.5,3S5,2.3284,5,1.5S5.6716,0,6.5,0S8,0.6716,8,1.5z M10.88,7.18L10.88,7.18l-2-2l0,0l0,0 C8.7815,5.0616,8.6339,4.9952,8.48,5H3.75C3.3736,4.9915,3.0508,5.2669,3,5.64l0,0l-1,7.7l0,0c-0.0068,0.0464-0.0068,0.0936,0,0.14 c0,0.2761,0.2239,0.5,0.5,0.5c0.2251,0.0153,0.4315-0.1251,0.5-0.34l0,0l1.2-3.89l0,0l0.26-0.83l0.4,0.44l0,0L6,10.6v2.9 C6,13.7761,6.2239,14,6.5,14S7,13.7761,7,13.5v-3l0,0l0,0c-0.0081-0.0788-0.0356-0.1544-0.08-0.22l0,0L5.48,8.5l1-2.5h1.71l2,1.84 l0,0c0.0928,0.1077,0.2278,0.1697,0.37,0.17C10.8163,7.9791,11.007,7.7581,11,7.5C10.9997,7.3824,10.9571,7.2688,10.88,7.18z M14,11.27c-0.4142,0-0.75,0.3358-0.75,0.75s0.3358,0.75,0.75,0.75s0.75-0.3358,0.75-0.75S14.4142,11.27,14,11.27z M10.76,9.74V9 c0-0.1381-0.1119-0.25-0.25-0.25S10.26,8.8619,10.26,9v0.74c-0.1522,0.0855-0.2474,0.2455-0.25,0.42v3.34 c0,0.2761,0.2239,0.5,0.5,0.5s0.5-0.2239,0.5-0.5v-3.34C11.0074,9.9855,10.9122,9.8255,10.76,9.74z",cross:"M3.64 2.27L7.5 6.13L11.34 2.29C11.5114 2.1076 11.7497 2.0029 12 2C12.5523 2 13 2.4477 13 3C13.0047 3.2478 12.907 3.4866 12.73 3.66L8.84 7.5L12.73 11.39C12.8948 11.5512 12.9915 11.7696 13 12C13 12.5523 12.5523 13 12 13C11.7423 13.0107 11.492 12.9127 11.31 12.73L7.5 8.87L3.65 12.72C3.4793 12.8963 3.2453 12.9971 3 13C2.4477 13 2 12.5523 2 12C1.9953 11.7522 2.093 11.5134 2.27 11.34L6.16 7.5L2.27 3.61C2.1052 3.4488 2.0085 3.2304 2 3C2 2.4477 2.4477 2 3 2C3.2404 2.0029 3.4701 2.0998 3.64 2.27Z",dam:"M13.94,9.5c0,0.2761-0.2239,0.5-0.5,0.5l0,0c-0.259,0.0219-0.4994,0.1439-0.67,0.34c-0.2714,0.2887-0.6175,0.4964-1,0.6 c-0.6115,0.1816-1.2734,0.0424-1.76-0.37l-0.39-0.35c-0.2976-0.3038-0.7851-0.3087-1.0889-0.0111 C8.5274,10.2126,8.5237,10.2163,8.52,10.22c-0.14,0.12-0.27,0.25-0.42,0.37c-0.7278,0.5784-1.7663,0.5489-2.46-0.07L5.3,10.19 l-0.1-0.06l0.3,1.22l0.49,2c0.0829,0.2634-0.0634,0.5441-0.3267,0.6271C5.6105,13.9937,5.5553,14.0014,5.5,14h-4 C1.2239,14,1,13.7761,1,13.5v-12C1,1.2239,1.2239,1,1.5,1h1.1c0.2346-0.0011,0.4384,0.1611,0.49,0.39L4,5.06V5.2 c0.6569-0.314,1.4361-0.2205,2,0.24c0.16,0.13,0.31,0.28,0.47,0.41c0.2847,0.2546,0.7153,0.2546,1,0c0.16-0.13,0.31-0.28,0.47-0.41 c0.7076-0.5968,1.7424-0.5968,2.45,0c0.15,0.13,0.29,0.27,0.44,0.39c0.2847,0.2546,0.7153,0.2546,1,0l0.47-0.41 c0.3163-0.2672,0.7159-0.4157,1.13-0.42l0,0c0.2761,0,0.5,0.2239,0.5,0.5S13.7061,6,13.43,6l0,0 c-0.259,0.0219-0.4994,0.1439-0.67,0.34c-0.2714,0.2887-0.6175,0.4964-1,0.6C11.1485,7.1216,10.4866,6.9824,10,6.57L9.67,6.23 C9.3724,5.9262,8.8849,5.9213,8.5811,6.2189C8.5774,6.2226,8.5737,6.2263,8.57,6.23C8.43,6.35,8.3,6.48,8.15,6.6 C7.4222,7.1784,6.3837,7.1489,5.69,6.53L5.3,6.19c-0.2847-0.2546-0.7153-0.2546-1,0L4.24,6.24L4.93,9 C5.3226,9.029,5.6965,9.1793,6,9.43c0.16,0.13,0.31,0.28,0.47,0.41c0.2847,0.2546,0.7153,0.2546,1,0c0.16-0.13,0.31-0.28,0.47-0.41 c0.7076-0.5968,1.7424-0.5968,2.45,0c0.15,0.13,0.29,0.27,0.44,0.39c0.2847,0.2546,0.7153,0.2546,1,0l0.47-0.41 c0.3177-0.2636,0.7172-0.4085,1.13-0.41l0,0c0.2761-0.0055,0.5044,0.2138,0.5099,0.4899C13.94,9.4933,13.94,9.4966,13.94,9.5z",danger:"M13.94,14.68c-0.0749,0.194-0.262,0.3215-0.47,0.32c-0.0595,0.0107-0.1205,0.0107-0.18,0L7.5,12.56L1.7,15 c-0.2572,0.1005-0.5472-0.0266-0.6476-0.2838C1.0516,14.7141,1.0508,14.7121,1.05,14.71c-0.1291-0.2441-0.0358-0.5467,0.2084-0.6757 C1.2845,14.0205,1.3118,14.009,1.34,14l4.85-2l-4.85-2C1.0758,9.9197,0.9267,9.6404,1.007,9.3762s0.3596-0.4133,0.6238-0.333 C1.6545,9.0504,1.6776,9.0594,1.7,9.07l5.8,2.41l5.8-2.41c0.2494-0.1185,0.5477-0.0124,0.6662,0.237 c0.1185,0.2494,0.0124,0.5477-0.237,0.6662C13.7068,9.9839,13.6837,9.9928,13.66,10L8.8,12l4.85,2 c0.2607,0.091,0.3983,0.3761,0.3074,0.6368C13.9523,14.6515,13.9465,14.6659,13.94,14.68z M12,4.23v0.45 c-0.0021,0.2129-0.0722,0.4196-0.2,0.59C11.2414,5.8883,10.6399,6.4664,10,7v1.16c0.0015,0.208-0.126,0.3951-0.32,0.47L7.52,9.5 H7.45L5.28,8.63C5.1016,8.5428,4.9917,8.3584,5,8.16V7C4.3528,6.4675,3.7446,5.8893,3.18,5.27C3.0593,5.0972,2.9963,4.8907,3,4.68 V4.23C3.1669,2.0117,4.8974,0.2307,7.11,0h0.36l0,0h0.39C10.0862,0.2131,11.8348,1.9997,12,4.23z M6,4c0-0.5523-0.4477-1-1-1 S4,3.4477,4,4s0.4477,1,1,1S6,4.5523,6,4z M7,7c0-0.2761-0.2239-0.5-0.5-0.5S6,6.7239,6,7v0.5C6,7.7761,6.2239,8,6.5,8 S7,7.7761,7,7.5V7z M9,7c0-0.2761-0.2239-0.5-0.5-0.5S8,6.7239,8,7v0.5C8,7.7761,8.2239,8,8.5,8S9,7.7761,9,7.5V7z M11,4 c0-0.5523-0.4477-1-1-1S9,3.4477,9,4s0.4477,1,1,1S11,4.5523,11,4z",defibrillator:"m1.54995 7.33811c-2.386799-4.5965 3.63-7.660899 5.952-3.0644 2.3215-4.596499 8.33875-1.5322 5.95235 3.0644-.0869.1671-.2028.3456-.3114.5212h-1.8079l-1.81455-2.7216c-.06321-.09473-.1511-.1704-.25417-.21884-.10308-.04843-.21743-.06779-.3307-.05599-.11327.01181-.22117.05433-.31205.12298-.09087.06865-.16126.16082-.20358.26655l-1.6484 4.12-1.33-1.33c-.11716-.11707-.27597-.18288-.4416-.183h-3.1389c-.1086-.1757-.2245-.3542-.3111-.5213zm9.45005 1.7713c-.103-.00003-.2044-.02545-.2951-.07399-.0908-.04854-.1682-.11871-.2254-.20431l-1.34085-2.0111-1.5587 3.89679c-.03839.096-.10002.181-.17936.2474-.07935.0663-.17393.1119-.27524.1326-.04125.0086-.08327.0128-.1254.0126-.16568.0001-.32462-.0656-.4419-.1826l-1.8169-1.81739h-2.0054c1.36645 1.66819 2.85739 3.23039 4.46 4.67319.08531.077.19616.1197.3111.1197s.22579-.0427.3111-.1197c1.59778-1.4447 3.08545-3.0068 4.45055-4.67319z",dentist:"M4.36,14c-1,0-0.56-2.67-0.86-5c-0.1-0.76-1-1.49-1.12-2.06C2,5,1.39,1.44,3.66,1S6,3,7.54,3s1.57-2.36,3.85-2 s1.59,3.9,1.29,5.9c-0.1,0.45-1.1,1.48-1.18,2.06c-0.33,2.4,0.32,5-0.8,5c-0.93,0-1.32-2.72-2-4.5C8.43,8.63,8.06,8,7.54,8 C6,8,5.75,14,4.36,14z",diamond:"M7.03715 1.20147L2.12542 6.7C2.04962 6.78393 2.00568 6.89005 2.00051 7C1.99535 7.10994 2.02925 7.21013 2.09689 7.3L7.0065 13.7601C7.06233 13.8343 7.13629 13.8947 7.22216 13.9365C7.30803 13.9782 7.40331 14 7.5 14C7.59669 14 7.69197 13.9782 7.77784 13.9365C7.86371 13.8947 7.93766 13.8343 7.9935 13.7601L12.9031 7.3C12.9707 7.21013 13.0047 7.10994 12.9995 7C12.9943 6.89005 12.9504 6.78393 12.8746 6.7L7.96285 1.20147C7.90591 1.13833 7.83501 1.08761 7.75508 1.05282C7.67514 1.01802 7.5881 1 7.5 1C7.4119 1 7.32486 1.01802 7.24492 1.05282C7.16499 1.08761 7.09409 1.13833 7.03715 1.20147Z",doctor:"M5.5,7C4.1193,7,3,5.8807,3,4.5l0,0v-2C3,2.2239,3.2239,2,3.5,2H4c0.2761,0,0.5-0.2239,0.5-0.5S4.2761,1,4,1H3.5 C2.6716,1,2,1.6716,2,2.5v2c0.0013,1.1466,0.5658,2.2195,1.51,2.87l0,0C4.4131,8.1662,4.9514,9.297,5,10.5C5,12.433,6.567,14,8.5,14 s3.5-1.567,3.5-3.5V9.93c1.0695-0.2761,1.7126-1.367,1.4365-2.4365C13.1603,6.424,12.0695,5.7809,11,6.057 C9.9305,6.3332,9.2874,7.424,9.5635,8.4935C9.7454,9.198,10.2955,9.7481,11,9.93v0.57c0,1.3807-1.1193,2.5-2.5,2.5S6,11.8807,6,10.5 c0.0511-1.2045,0.5932-2.3356,1.5-3.13l0,0C8.4404,6.7172,9.001,5.6448,9,4.5v-2C9,1.6716,8.3284,1,7.5,1H7 C6.7239,1,6.5,1.2239,6.5,1.5S6.7239,2,7,2h0.5C7.7761,2,8,2.2239,8,2.5v2l0,0C8,5.8807,6.8807,7,5.5,7 M11.5,9 c-0.5523,0-1-0.4477-1-1s0.4477-1,1-1s1,0.4477,1,1S12.0523,9,11.5,9z","dog-park":"M 10.300781 1.2207031 C 9.9144812 1.2207031 9.6 1.2 9.5 2 L 9.0996094 4.5214844 L 11.5 6.5 L 13.5 6.5 C 14.9 6.5 15 5.5410156 15 5.5410156 L 13.099609 3.3222656 C 12.399609 2.6222656 11.7 2.5 11 2.5 L 11 2 C 11 2 11.067481 1.2206031 10.300781 1.2207031 z M 4.75 1.5 C 4.75 1.5 3.7992187 1.5206031 3.1992188 1.7207031 C 2.5992187 1.9207031 2 2.6210938 2 3.6210938 L 2 7.5214844 C 2 9.2214844 1.3 9.5 1 9.5 C 1 9.5 0 9.5214844 0 10.521484 L 0 12.720703 C 0 12.720703 0.00078125 13.521484 0.80078125 13.521484 L 1 13.521484 L 1.5 13.521484 L 2 13.521484 L 2 13.021484 L 2 12.822266 C 2 12.422266 1.8 12.221094 1.5 12.121094 L 1.5 11.021484 C 2.5 11.021484 2.6 10.820703 3 10.720703 L 3.5507812 12.917969 C 3.6507813 13.217969 3.7507813 13.417578 4.0507812 13.517578 L 5.0507812 13.517578 L 6 13.5 L 6 12.699219 C 6 12.022819 5 12 5 12 L 5 9.5 L 8.5 9.5 L 9.1992188 12.121094 C 9.5992188 13.521094 10.5 13.5 10.5 13.5 L 11 13.5 L 12 13.5 L 12 12.699219 C 12 11.987419 11 12 11 12 L 11.099609 7.921875 L 8 5.5 L 3.5 5.5 L 3.5 3.5 C 3.5 3.1 3.7765 3.0053 4 3 C 4.4941 2.9882 4.75 3 4.75 3 C 5.1642 3 5.5 2.6642 5.5 2.25 C 5.5 1.8358 5.1642 1.5 4.75 1.5 z M 11.75 4 C 11.8881 4 12 4.1119 12 4.25 C 12 4.3881 11.8881 4.5 11.75 4.5 C 11.6119 4.5 11.5 4.3881 11.5 4.25 C 11.5 4.1119 11.6119 4 11.75 4 z","drinking-water":"M6,1A2,2,0,0,0,4,3V6.5a.5.5,0,0,0,.5.5h2A.5.5,0,0,0,7,6.5v-2A.5.5,0,0,1,7.5,4H14V1ZM7,15H4a.5.5,0,0,1-.48-.38L2,8.62a.5.5,0,0,1,.365-.606A.558.558,0,0,1,2.5,8h6a.5.5,0,0,1,.514.485A.47.47,0,0,1,9,8.62l-1.5,6A.5.5,0,0,1,7,15ZM3.65,11H7.36l.5-2H3.14Z",elevator:"M11,1H4A1,1,0,0,0,3,2V13a1,1,0,0,0,1,1h7a1,1,0,0,0,1-1V2A1,1,0,0,0,11,1ZM7.5,12.5l-2-4h4Zm-2-6,2-4,2,4Z",embassy:"M6.65,2C5.43,2,4.48,3.38,4.11,3.82C4.0365,3.9102,3.9975,4.0237,4,4.14v4.4C3.9884,8.7827,4.1758,8.9889,4.4185,9.0005 C4.528,9.0057,4.6355,8.9699,4.72,8.9c0.4665-0.6264,1.1589-1.0461,1.93-1.17C8.06,7.73,8.6,9,10.07,9 c0.9948-0.0976,1.9415-0.4756,2.73-1.09c0.1272-0.0934,0.2016-0.2422,0.2-0.4V2.45c0.0275-0.2414-0.1459-0.4595-0.3874-0.487 C12.5332,1.954,12.4527,1.9668,12.38,2c-0.6813,0.5212-1.4706,0.8834-2.31,1.06C8.6,3.08,8.12,2,6.65,2z M2.5,3 c-0.5523,0-1-0.4477-1-1s0.4477-1,1-1s1,0.4477,1,1S3.0523,3,2.5,3z M3,4v9.48c0,0.2761-0.2239,0.5-0.5,0.5S2,13.7561,2,13.48V4 c0-0.2761,0.2239-0.5,0.5-0.5S3,3.7239,3,4z","emergency-phone":"M7.875,11.49a.51.51,0,0,0,.72,0l.72-.72,2.18,2.16-.37.37a2.24,2.24,0,0,1-1.44.7H8.24a2.24,2.24,0,0,1-1.45-.7L1.72,8.23A2.24,2.24,0,0,1,1,6.78V5.33a2.24,2.24,0,0,1,.72-1.45l.36-.36L4.26,5.69l-.73.73a.51.51,0,0,0,0,.72Zm4.72.38a1,1,0,0,0,.036-1.414h0l-.036-.036-.72-.72a1,1,0,0,0-1.414-.036h0l-.036.036ZM5.315,4.62a1,1,0,0,0,.036-1.414h0L4.595,2.45a1,1,0,0,0-1.414-.036h0L3.14,2.45ZM10,2V4H8V5h2V7h1V5h2V4H11V2Z",entrance:"m8 6.5v-1c0-.26522-.10536-.51957-.29289-.70711-.18754-.18753-.44189-.29289-.70711-.29289s-.51957.10536-.70711.29289c-.18753.18754-.29289.44189-.29289.70711v3zm-2-3.5c0-.19778.05865-.39112.16853-.55557s.26606-.29262.44879-.36831c.18272-.07569.38379-.09549.57777-.0569.19398.03858.37216.13382.51202.27367.13985.13986.23509.31804.27368.51202.03858.19398.01878.39505-.05691.57777-.07569.18273-.20386.33891-.36831.44879s-.35779.16853-.55557.16853c-.26522 0-.51957-.10536-.70711-.29289-.18753-.18754-.29289-.44189-.29289-.70711zm9 3c0 .26522-.1054.51957-.2929.70711-.1875.18753-.4419.29289-.7071.29289h-1.58c-.1316-.00076-.2621.02446-.3839.07423-.1218.04976-.2327.12309-.3261.21577l-5.42 5.42c-.18626.1847-.43766.2889-.7.29h-2.59c-.26522 0-.51957-.1054-.70711-.2929-.18753-.1875-.29289-.4419-.29289-.7071s.10536-.5196.29289-.7071c.18754-.1875.44189-.2929.70711-.2929h1.59c.26234-.0011.51374-.1053.7-.29l5.42-5.42c.0934-.09268.2043-.16601.3261-.21577.1218-.04977.2523-.07499.3839-.07423h2.58c.2652 0 .5196.10536.7071.29289.1875.18754.2929.44189.2929.70711z","entrance-alt1":"M6.554,9.639a.5.5,0,0,0,.707.707L9.928,7.669a.25.25,0,0,0,0-.354h0L7.261,4.639a.5.5,0,0,0-.707.707L8.2,7H1.5a.5.5,0,0,0,0,1H8.2ZM12,1H5.5a.5.5,0,0,0,0,1h6a.5.5,0,0,1,.5.5v10a.5.5,0,0,1-.5.5H5.25a.5.5,0,0,0,0,1H12a1,1,0,0,0,1-1V2A1,1,0,0,0,12,1Z",farm:"m8 6-3-2-3 2-1 2v4h2v-2h4v2h2v-4zm-2 2h-2v-2h2zm8 4h-3v-9.5c0-.39782.158-.77936.4393-1.06066s.6629-.43934 1.0607-.43934.7794.15804 1.0607.43934.4393.66284.4393 1.06066z","fast-food":"M14,8c0,0.5523-0.4477,1-1,1H2C1.4477,9,1,8.5523,1,8s0.4477-1,1-1h11C13.5523,7,14,7.4477,14,8z M3.5,10H2 c0,1.6569,1.3431,3,3,3h5c1.6569,0,3-1.3431,3-3H3.5z M3,6H2V4c0-1.1046,0.8954-2,2-2h7c1.1046,0,2,0.8954,2,2v2H3z M11,4.5 C11,4.7761,11.2239,5,11.5,5S12,4.7761,12,4.5S11.7761,4,11.5,4S11,4.2239,11,4.5z M9,3.5C9,3.7761,9.2239,4,9.5,4S10,3.7761,10,3.5 S9.7761,3,9.5,3S9,3.2239,9,3.5z M7,4.5C7,4.7761,7.2239,5,7.5,5S8,4.7761,8,4.5S7.7761,4,7.5,4S7,4.2239,7,4.5z M5,3.5 C5,3.7761,5.2239,4,5.5,4S6,3.7761,6,3.5S5.7761,3,5.5,3S5,3.2239,5,3.5z M3,4.5C3,4.7761,3.2239,5,3.5,5S4,4.7761,4,4.5 S3.7761,4,3.5,4S3,4.2239,3,4.5z",fence:"m13.5 9h-.5v-3h.5c.1326 0 .2598-.05268.3536-.14644.0937-.09377.1464-.22095.1464-.35356s-.0527-.25978-.1464-.35355c-.0938-.09377-.221-.14645-.3536-.14645h-.5v-2l-.286-.573c-.0218-.03651-.0525-.06683-.0894-.08809-.0368-.02125-.0784-.03273-.1209-.03333s-.0845.00969-.1219.0299c-.0374.0202-.069.04964-.0918.08552l-.29.579v2h-1v-2l-.286-.573c-.0218-.03651-.0525-.06683-.0894-.08809-.0368-.02125-.0784-.03273-.1209-.03333s-.0845.00969-.1219.0299c-.0374.0202-.069.04964-.0918.08552l-.29.579v2h-1v-2l-.286-.573c-.02178-.03651-.05254-.06683-.08936-.08809-.03681-.02125-.07846-.03273-.12096-.03333-.04251-.0006-.08446.00969-.12187.0299-.0374.0202-.06901.04964-.09181.08552l-.29.579v2h-1v-2l-.286-.573c-.02178-.03651-.05254-.06683-.08936-.08809-.03681-.02125-.07846-.03273-.12096-.03333-.04251-.0006-.08446.00969-.12187.0299-.0374.0202-.06901.04964-.09181.08552l-.29.579v2h-1v-2l-.286-.573c-.02178-.03651-.05254-.06683-.08936-.08809-.03681-.02125-.07846-.03273-.12096-.03333-.04251-.0006-.08446.00969-.12187.0299-.0374.0202-.06901.04964-.09181.08552l-.29.579v2h-1v-2l-.286-.573c-.02178-.03651-.05254-.06683-.08936-.08809-.03681-.02125-.07846-.03273-.12096-.03333-.04251-.0006-.08446.00969-.12187.0299-.0374.0202-.06901.04964-.09181.08552l-.29.579v2h-.5c-.13261 0-.25979.05268-.35355.14645-.09377.09377-.14645.22094-.14645.35355s.05268.25979.14645.35356c.09376.09376.22094.14644.35355.14644h.5v3h-.5c-.13261 0-.25979.05268-.35355.14645-.09377.09377-.14645.22094-.14645.35355s.05268.25979.14645.35356c.09376.09376.22094.14644.35355.14644h.5v1.5c0 .1326.05268.2598.14645.3536.09376.0937.22094.1464.35355.1464s.25979-.0527.35355-.1464c.09377-.0938.14645-.221.14645-.3536v-1.5h1v1.5c0 .1326.05268.2598.14645.3536.09376.0937.22094.1464.35355.1464s.25979-.0527.35355-.1464c.09377-.0938.14645-.221.14645-.3536v-1.5h1v1.5c0 .1326.05268.2598.14645.3536.09376.0937.22094.1464.35355.1464s.25979-.0527.35355-.1464c.09377-.0938.14645-.221.14645-.3536v-1.5h1v1.5c0 .1326.05268.2598.14645.3536.09376.0937.22094.1464.35355.1464s.25979-.0527.35355-.1464c.09377-.0938.14645-.221.14645-.3536v-1.5h1v1.5c0 .1326.0527.2598.1464.3536.0938.0937.221.1464.3536.1464s.2598-.0527.3536-.1464c.0937-.0938.1464-.221.1464-.3536v-1.5h1v1.5c0 .1326.0527.2598.1464.3536.0938.0937.221.1464.3536.1464s.2598-.0527.3536-.1464c.0937-.0938.1464-.221.1464-.3536v-1.5h.5c.1326 0 .2598-.05268.3536-.14644.0937-.09377.1464-.22095.1464-.35356s-.0527-.25978-.1464-.35355c-.0938-.09377-.221-.14645-.3536-.14645zm-10.5 0v-3h1v3zm2 0v-3h1v3zm2 0v-3h1v3zm2 0v-3h1v3zm2 0v-3h1v3z",ferry:"M5.33,11c0.6745,0.009,1.3262,0.245,1.85,0.67l0.26,0.23h0.05l0.31-0.28c0.9817-0.8115,2.379-0.8846,3.44-0.18L13.5,7L12,6 V2.45c-0.0466-0.8-0.6989-1.4305-1.5-1.45H10c0.0343-0.518-0.3579-0.9657-0.8759-1C9.0828-0.0027,9.0413-0.0027,9,0H6 C5.482-0.0343,5.0343,0.3579,5,0.8759C4.9973,0.9172,4.9973,0.9587,5,1H4.5C3.6989,1.0195,3.0466,1.65,3,2.45V6L1.5,7l2.25,4.53 C4.2143,11.2041,4.7631,11.02,5.33,11z M4,2.45c0.0105-0.2594,0.2293-0.4611,0.4886-0.4506C4.4924,1.9996,4.4962,1.9998,4.5,2h6 c0.259-0.0171,0.4829,0.1789,0.5,0.4379c0.0014,0.0207,0.0014,0.0414,0,0.0621v3l-3.5-2L4,5.45C4,5.45,4,2.45,4,2.45z M14,13v1 c-0.2626,0.0194-0.5069,0.1416-0.68,0.34c-0.2717,0.2883-0.6178,0.4959-1,0.6c-0.6147,0.1815-1.2795,0.0425-1.77-0.37l-0.39-0.35 c-0.3043-0.3026-0.7957-0.3026-1.1,0c-0.14,0.12-0.27,0.25-0.42,0.37c-0.7328,0.5856-1.7814,0.556-2.48-0.07l-0.39-0.35 c-0.2864-0.2502-0.7136-0.2502-1,0c-0.19,0.15-0.36,0.32-0.55,0.47c-0.7043,0.5215-1.6732,0.4968-2.35-0.06l-0.31-0.27 C1.4153,14.1443,1.2172,14.0346,1,14v-1c0.2585-0.032,0.5205,0.0169,0.75,0.14c0.2782,0.1722,0.5424,0.3661,0.79,0.58 c0.2051,0.2235,0.5147,0.319,0.81,0.25c0.1125-0.0333,0.2177-0.0876,0.31-0.16c0.16-0.12,0.29-0.26,0.45-0.39 c0.7106-0.5888,1.7394-0.5888,2.45,0c0.16,0.13,0.31,0.28,0.47,0.41c0.2864,0.2502,0.7136,0.2502,1,0c0.16-0.13,0.31-0.28,0.47-0.41 c0.7123-0.5943,1.7477-0.5943,2.46,0c0.15,0.13,0.29,0.27,0.44,0.39c0.2864,0.2502,0.7136,0.2502,1,0l0.47-0.41 C13.1895,13.1408,13.5886,12.9995,14,13z","ferry-JP":"M9.5 12.5H5.5L5.5 8C5.5 6.91153 6.07979 5.44812 6.85389 4.13809C7.07346 3.76652 7.29495 3.43049 7.5 3.1451C7.70505 3.43049 7.92654 3.76652 8.14611 4.13809C8.92021 5.44812 9.5 6.91153 9.5 8V12.5ZM7.5 1C7 1 4 5 4 8V12.5C4 13.3284 4.67157 14 5.5 14H9.5C10.3284 14 11 13.329 11 12.5006V8C11 5 8 1 7.5 1Z","fire-station":"M7.5 14C11.0899 14 14 11 14 7.50003C14 4.5 11.5 2 11.5 2L10.5 5.5L7.5 1L4.5 5.5L3.5 2C3.5 2 1 4.5 1 7.50003C1 11 3.91015 14 7.5 14ZM7.5 12.5C6.11929 12.5 5 11.3807 5 10C5 8.61929 7.5 5.5 7.5 5.5C7.5 5.5 10 8.61929 10 10C10 11.3807 8.88071 12.5 7.5 12.5Z","fire-station-JP":"M8.5,8.1489V11.75a1,1,0,0,1-2,0V8.1489A5.0084,5.0084,0,0,1,2.5,3.25a1,1,0,0,1,2,0,3,3,0,0,0,6,0,1,1,0,0,1,2,0A5.0082,5.0082,0,0,1,8.5,8.1489Z","fitness-centre":"M14.5,7V8h-1v2h-1v1H11V8H4v3H2.5V10h-1V8H.5V7h1V5h1V4H4V7h7V4h1.5V5h1V7Z",florist:"M1.5,1A2.7,2.7,0,0,1,4,3l.5-3L5,3A2.7,2.7,0,0,1,7.5,1c-.2.03-1,.26-1,2v.083A1.959,1.959,0,0,1,4.5,5H4.417A1.959,1.959,0,0,1,2.5,3C2.5,1.261,1.7,1.03,1.5,1ZM12.012,11l3-.5-3-.5A2.686,2.686,0,0,0,14,7.5c-.03.2-.248,1-1.988,1a2,2,0,0,0,0,4c1.739,0,1.958.8,1.988,1A2.686,2.686,0,0,0,12.012,11ZM9.688,5.548a1,1,0,0,1,0-2,1,1,0,0,1,0-2,.986.986,0,0,1,.852.507l.023-.012a.978.978,0,0,1-.116-.444,1,1,0,1,1,2,0,.978.978,0,0,1-.116.444l.019.01a.986.986,0,0,1,.85-.5,1,1,0,0,1,.025,2,1,1,0,0,1-.025,2,.986.986,0,0,1-.85-.5l-.016.009a.978.978,0,0,1,.113.44,1,1,0,0,1-2,0,.978.978,0,0,1,.113-.44l-.02-.011a.986.986,0,0,1-.852.507Zm.71-1.995A1.051,1.051,0,1,0,11.449,2.5,1.051,1.051,0,0,0,10.4,3.553v0ZM4.946,11.444l-.516-.515L8.892,6.475A1.746,1.746,0,0,1,8.44,6.22L4.076,10.575l-.519-.518A16.051,16.051,0,0,0,4.912,6a3.373,3.373,0,0,1-.412.035c-.041,0-.073-.008-.112-.01A16.953,16.953,0,0,1,3.131,9.631L2.76,9.26a.246.246,0,0,0-.4.079L.231,14.445a.287.287,0,0,0-.016.089.25.25,0,0,0,.25.25.289.289,0,0,0,.1-.019l5.1-2.124a.246.246,0,0,0,.079-.4l-.372-.372a16.874,16.874,0,0,1,3.612-1.256c0-.059-.015-.106-.015-.166A3.349,3.349,0,0,1,9,10.089,16.076,16.076,0,0,0,4.946,11.444Z",fuel:"m14 6v5.5c0 .2761-.2239.5-.5.5s-.5-.2239-.5-.5v-2c0-.8284-.6716-1.5-1.5-1.5h-1.5v-6c0-.5523-.4477-1-1-1h-6c-.5523 0-1 .4477-1 1v11c0 .5523.4477 1 1 1h6c.5523 0 1-.4477 1-1v-4h1.5c.2761 0 .5.2239.5.5v2c0 .8284.6716 1.5 1.5 1.5s1.5-.6716 1.5-1.5v-6.5c0-.5523-.4477-1-1-1v-1.51c-.0054-.2722-.2277-.4901-.5-.49-.2816.0047-.5062.2367-.5015.5184.0002.0105.0007.0211.0015.0316v2.45c0 .5523.4477 1 1 1s1-.4477 1-1-.4477-1-1-1zm-5 .5c0 .2761-.2239.5-.5.5h-5c-.2761 0-.5-.2239-.5-.5v-3c0-.2761.2239-.5.5-.5h5c.2761 0 .5.2239.5.5z",furniture:"m8.69099 10.142v-1.642c0-.13261-.05268-.25979-.14645-.35355-.09377-.09377-.22094-.14645-.35355-.14645h-1c-.13261 0-.25979.05268-.35356.14645-.09376.09376-.14644.22094-.14644.35355v1.641c-.75987.1945-1.4456.6085-1.9715 1.1905-.52591.5819-.86868 1.3059-.9855 2.0815-.01141.0723-.00702.1462.01285.2167.01987.0704.05476.1357.10227.1914s.10651.1004.17295.1311c.06643.0307.13873.0467.21193.0468h6.92201c.0732-.0001.1455-.0161.2119-.0468.0665-.0307.1255-.0754.173-.1311s.0824-.121.1022-.1914c.0199-.0705.0243-.1444.0129-.2167-.1176-.7765-.4616-1.501-.989-2.0828-.5275-.5819-1.2148-.9952-1.97601-1.1882zm4.63901-3.863-2.5-5c-.0412-.08351-.1048-.15387-.1838-.20316s-.1701-.07556-.2632-.07584h-5.38401c-.09261.00019-.18335.02609-.2621.07483-.07875.04873-.14241.11837-.1839.20117l-2.5 5c-.03809.076-.05617.16046-.05253.24539.00363.08494.02886.16754.07331.24001.04444.07247.10663.13241.18068.17416s.15753.06393.24254.06444h8.19401v1.5c0 .13261.0527.25979.1464.35355.0938.09377.221.14645.3536.14645s.2598-.05268.3535-.14645c.0938-.09376.1465-.22094.1465-.35355v-1.5h1.194c.0847-.00059.1678-.02269.2416-.06421s.1359-.1011.1804-.17317c.0444-.07207.0699-.15425.0739-.23884s-.0135-.16882-.0509-.24478z",gaming:"m13.1 11.5c-.6.3-1.4.1-1.8-.5l-1.1-1.4h-5.40002l-1.1 1.4c-.5.7-1.4.8-2.1.3-.5-.4-.700004-1-.600004-1.5l.700004-3.7c.2-1.2 1.3-2.1 2.5-2.1h2.8v-1.5c0-.8.6-1.5 1.4-1.5h3.10002c.3 0 .5.2.5.5s-.2.5-.5.5h-3.00002c-.3 0-.5.2-.5.4v.1 1.5h2.80002c1.2 0 2.3.9 2.5 2.1l.7 3.7c.1.7-.2 1.4-.9 1.7zm-7.10002-5c0-.8-.7-1.5-1.5-1.5s-1.5.7-1.5 1.5.7 1.5 1.5 1.5 1.5-.7 1.5-1.5zm6.00002 0c0-.3-.2-.5-.5-.5h-.5v-.5c0-.3-.2-.5-.5-.5s-.50002.2-.50002.5v.5h-.5c-.3 0-.5.2-.5.5s.2.5.5.5h.5v.5c0 .3.20002.5.50002.5s.5-.2.5-.5v-.5h.5c.3 0 .5-.2.5-.5z",garden:"M13,8c0,3.31-2.19,6-5.5,6S2,11.31,2,8c2.2643,0.0191,4.2694,1.4667,5,3.61V7H4.5C3.6716,7,3,6.3284,3,5.5v-3 C3,2.2239,3.2239,2,3.5,2c0.1574,0,0.3056,0.0741,0.4,0.2l1.53,2l1.65-3c0.1498-0.232,0.4593-0.2985,0.6913-0.1487 C7.8308,1.0898,7.8815,1.1404,7.92,1.2l1.65,3l1.53-2c0.1657-0.2209,0.4791-0.2657,0.7-0.1C11.9259,2.1944,12,2.3426,12,2.5v3 C12,6.3284,11.3284,7,10.5,7H8v4.61C8.7306,9.4667,10.7357,8.0191,13,8z","garden-centre":"M4,5L4,4.5C4,3.12 5.12,2 6.5,2C7.88,2 9,3.12 9,4.5L9,10.293L11.365,7.928L11.018,6.633C11.018,6.631 11.017,6.629 11.017,6.627L11.016,6.627L11.016,6.627C10.973,6.461 11.016,6.276 11.147,6.146C11.342,5.951 11.659,5.951 11.854,6.146L13.854,8.146C14.049,8.341 14.049,8.658 13.854,8.853C13.724,8.983 13.541,9.027 13.375,8.984C13.375,8.984 13.375,8.984 13.375,8.984C13.372,8.983 13.369,8.982 13.365,8.981L12.072,8.635L9,11.707L9,12C9,12.552 8.552,13 8,13L5,13C4.448,13 4,12.552 4,12L4,11.536L1.732,9.268C0.757,8.292 0.757,6.708 1.732,5.732C2.22,5.244 2.86,5 3.5,5L3.5,5L4,5ZM4,6L3.5,6L3.5,6C3.116,6 2.732,6.147 2.439,6.439C1.854,7.025 1.854,7.975 2.439,8.561L4,10.121L4,6ZM8,5L8,4.5C8,3.672 7.328,3 6.5,3C5.672,3 5,3.672 5,4.5L5,5L8,5Z",gate:"M1 2.75A.75.75 0 0 1 1.75 2h1.114c.09 0 .18.016.263.048l3.386 1.27A.75.75 0 0 1 7 4.02v5.96a.75.75 0 0 1-.487.702L3 12v.25a.75.75 0 0 1-.75.75h-.5a.75.75 0 0 1-.75-.75v-9.5Zm3 5.736v-4.87a.25.25 0 0 0-.162-.234l-.5-.187A.25.25 0 0 0 3 3.429v5.224c0 .17.167.291.33.237l.5-.166A.25.25 0 0 0 4 8.486ZM5 4.18v3.807a.25.25 0 0 0 .33.238l.5-.167A.25.25 0 0 0 6 7.82V4.366a.25.25 0 0 0-.162-.234l-.5-.187A.25.25 0 0 0 5 4.179Zm9-1.43a.75.75 0 0 0-.75-.75h-1.114a.75.75 0 0 0-.263.048l-3.386 1.27A.75.75 0 0 0 8 4.02v5.96a.75.75 0 0 0 .487.702L12 12v.25c0 .414.336.75.75.75h.5a.75.75 0 0 0 .75-.75v-9.5Zm-2.83 5.974a.25.25 0 0 1-.17-.238v-4.87a.25.25 0 0 1 .162-.234l.5-.187a.25.25 0 0 1 .338.234v5.224a.25.25 0 0 1-.33.237l-.5-.166ZM10 4.179v3.807a.25.25 0 0 1-.33.238l-.5-.167A.25.25 0 0 1 9 7.82V4.366a.25.25 0 0 1 .162-.234l.5-.187a.25.25 0 0 1 .338.234Z",gift:"M10.5 1.00152C9.0967.957116 7.8503 1.89192 7.5 3.25152 7.1497 1.89192 5.9033.957116 4.5 1.00152 2.7678.947006 2.23515 2.79746 2.81831 4H1.5C1.22386 4 1 4.22386 1 4.5V5.5C1 5.77614 1.22386 6 1.5 6H13.5C13.7761 6 14 5.77614 14 5.5V4.5C14 4.22386 13.7761 4 13.5 4H12.1938C12.8 2.81516 12.2922 1.00143 10.5404 1.00112 10.5269 1.00112 10.5135 1.00122 10.5 1.00152ZM10.6831 4H8.5C8.50082 2.8961 9.3959 2.00152 10.5 2.00152 11.675 2.00152 11.8827 3.87414 10.6831 4ZM6.5 4H4.29187C3.25675 3.88256 3.19576 2.10553 4.3323 2.00152 4.3881 1.99642 4.4442 1.99642 4.5 2.00152 5.60409 2.00152 6.49918 2.8961 6.5 4ZM2 7.00146V11.5015C2 12.3299 2.6716 13.0015 3.5 13.0015H6.5V7.00146H2ZM8.5 7.00146V13.0015H11.5C12.3284 13.0015 13 12.3299 13 11.5015V7.00146H8.5Z",globe:"M11.981,9.481,11.26,8.76A4.979,4.979,0,1,1,4.24,1.74l-.721-.721A5.991,5.991,0,0,0,7,11.475V13H6.5a.5.5,0,0,0,0,1h2a.5.5,0,0,0,0-1H8V11.473A5.983,5.983,0,0,0,11.981,9.481ZM7.5,9A3.5,3.5,0,1,0,4,5.5,3.5,3.5,0,0,0,7.5,9Zm1-5,.364-.592a2.5,2.5,0,0,1,.823.9L9.5,5h-1ZM6.656,3.156,7.5,4V5L8,6H9.94a2.494,2.494,0,0,1-1.5,1.814L8,7H6.5L5.05,5A2.5,2.5,0,0,1,6.656,3.156Z",golf:"M3.3999,1.1c0,0.1,0,0.2,0,0.2c0,0.4,0.3,0.7,0.7,0.7c0.3,0,0.5-0.2,0.6-0.5l0,0L4.9,1l5.6,2.3L6.6,6C6.2,6.3,6.2,6.7,6.3,7.1 l0.9,2.1l-1.3,3.9C5.7,13.6,6.1,14,6.5,14c0.3,0,0.5-0.1,0.6-0.5l1.4-4l0.1,0.3v3.5c0,0,0,0.7,0.7,0.7s0.7-0.7,0.7-0.7V10 c0-0.2,0-0.3-0.1-0.5L8.5,6.1l2.7-1.9c0.2-0.2,0.4-0.3,0.4-0.6s-0.2-0.5-0.4-0.6L4,0.1c-0.0878,0-0.118,0.0179-0.2001,0.1 L3.3999,1.1z M5.5,3C4.7,3,4,3.7,4,4.5S4.7,6,5.5,6S7,5.3,7,4.5S6.2999,3,5.5,3z",grocery:"M 13.199219 1.5 C 13.199219 1.5 11.808806 1.4588 11.253906 2 C 10.720406 2.5202 10.5 2.9177 10.5 4 L 1.1992188 4 L 2.59375 8.8144531 C 2.59725 8.8217531 2.6036219 8.8287375 2.6074219 8.8359375 C 2.8418219 9.4932375 3.4545469 9.9666406 4.1855469 9.9941406 C 4.1885469 9.9954406 4.1992187 10 4.1992188 10 L 10.699219 10 L 10.699219 10.199219 C 10.699219 10.199219 10.7 10.500391 10.5 10.900391 C 10.3 11.300391 10.200391 11.5 9.4003906 11.5 L 2.9003906 11.5 C 1.9003906 11.5 1.9003906 13 2.9003906 13 L 4.0996094 13 L 4.1992188 13 L 9.0996094 13 L 9.1992188 13 L 9.3007812 13 C 10.500781 13 11.399219 12.299609 11.699219 11.599609 C 11.999219 10.899609 12 10.300781 12 10.300781 L 12 10 L 12 4 C 12 3.4764 12.228619 3 12.699219 3 L 13.25 3 C 13.6642 3 14 2.6642 14 2.25 C 14 1.8358 13.6642 1.5 13.25 1.5 L 13.199219 1.5 z M 9.1992188 13 C 8.5992188 13 8.1992188 13.4 8.1992188 14 C 8.1992188 14.6 8.5992187 15 9.1992188 15 C 9.7992187 15 10.199219 14.6 10.199219 14 C 10.199219 13.4 9.7992188 13 9.1992188 13 z M 4.1992188 13 C 3.5992188 13 3.1992188 13.4 3.1992188 14 C 3.1992188 14.6 3.5992187 15 4.1992188 15 C 4.7992188 15 5.1992188 14.6 5.1992188 14 C 5.1992188 13.4 4.7992187 13 4.1992188 13 z",hairdresser:"M15,3c0,0-2-0.6-3.5,0.5l-4.3,3C6.4,5.9,5.2,5.2,4,4.8V4c0-1.1-0.9-2-2-2C0.9,2,0,2.9,0,4v1.5 C0,6,0.5,6,0.5,6H2h0.5C4.5,6,6,7.5,6,7.5S4.5,9,2.5,9H2H0.5C0.5,9,0,9,0,9.5V11c0,1.1,0.9,2,2,2c1.1,0,2-0.9,2-2v-0.8 c1.2-0.4,2.4-1.1,3.2-1.7l4.3,3C13,12.6,15,12,15,12L8.5,7.5L15,3z M3,5H2H1V4c0-0.6,0.4-1,1-1c0.6,0,1,0.4,1,1V5z M3,11 c0,0.6-0.4,1-1,1c-0.6,0-1-0.4-1-1v-1h1h1V11z M7.25,8c-0.2761,0-0.5-0.2239-0.5-0.5S6.9739,7,7.25,7s0.5,0.2239,0.5,0.5 S7.5261,8,7.25,8z",harbor:"M7.5,0C5.5,0,4,1.567,4,3.5c0.0024,1.5629,1.0397,2.902,2.5,3.3379v6.0391 c-0.9305-0.1647-1.8755-0.5496-2.6484-1.2695C2.7992,10.6273,2.002,9.0676,2.002,6.498c0.0077-0.5646-0.4531-1.0236-1.0176-1.0137 C0.4329,5.493-0.0076,5.9465,0,6.498c0,3.0029,1.0119,5.1955,2.4902,6.5723C3.9685,14.4471,5.8379,15,7.5,15 c1.6656,0,3.535-0.5596,5.0117-1.9395S14.998,9.4868,14.998,6.498c0.0648-1.3953-2.0628-1.3953-1.998,0 c0,2.553-0.7997,4.1149-1.8535,5.0996C10.3731,12.3203,9.4288,12.7084,8.5,12.875V6.8418C9.9607,6.4058,10.9986,5.0642,11,3.5 C11,1.567,9.5,0,7.5,0z M7.5,2C8.3284,2,9,2.6716,9,3.5S8.3284,5,7.5,5S6,4.3284,6,3.5S6.6716,2,7.5,2z",hardware:"M13.7919,3.2619c0,0-1.676,1.675-2.1163,2.1208c-0.085,0.0861-0.1688,0.1135-0.282,0.0961 c-0.1481-0.0226-0.2974-0.038-0.4462-0.0558c-0.4072-0.0485-0.8145-0.0966-1.2292-0.1458C9.649,4.6852,9.5787,4.1049,9.5177,3.5236 C9.512,3.4689,9.5509,3.3943,9.5925,3.3522c0.5071-0.5134,1.9261-1.9287,2.134-2.136c-0.4508-0.2129-1.2243-0.2968-1.8007-0.2031 c-2.1801,0.3543-3.5112,2.534-2.8206,4.625C7.1432,5.753,7.1194,5.8201,7.0374,5.902C5.1891,7.7454,3.3436,9.5914,1.498,11.4374 c-0.0616,0.0616-0.1231,0.124-0.1779,0.1913c-0.5264,0.6473-0.3873,1.6264,0.2974,2.102c0.6044,0.4197,1.3658,0.3442,1.9053-0.1948 c1.8534-1.8519,3.7059-3.7047,5.556-5.5598C9.1707,7.884,9.2437,7.8526,9.3779,7.8983c0.6189,0.2109,1.2524,0.2354,1.8884,0.0884 c1.9386-0.4478,3.1251-2.3732,2.6549-4.3034C13.8895,3.5532,13.843,3.4244,13.7919,3.2619z",heart:"m13.91 7.75001c-1.17 2.24999-4.30002 5.30999-6.07002 6.93999-.1903.1718-.4797.1718-.67 0-1.78-1.63-4.91-4.69-6.08-6.93999-2.57-4.95 3.91-8.250002 6.41-3.3 2.5-4.950002 8.98002-1.65 6.41002 3.3z",heliport:"M4,2C3,2,3,3,4,3h4v1C7.723,4,7.5,4.223,7.5,4.5V5H5H3.9707H3.9316 C3.7041,4.1201,2.9122,3.5011,2,3.5c-1.1046,0-2,0.8954-2,2s0.8954,2,2,2c0.3722-0.001,0.7368-0.1058,1.0527-0.3027L5.5,10.5 C6.5074,11.9505,8.3182,12,9,12h5c0,0,1,0,1-1v-0.9941C15,9.2734,14.874,8.874,14.5,8.5l-3-3c0,0-0.5916-0.5-1.2734-0.5H9.5V4.5 C9.5,4.223,9.277,4,9,4V3h4c1,0,1-1,0-1C13,2,4,2,4,2z M2,4.5c0.5523,0,1,0.4477,1,1s-0.4477,1-1,1s-1-0.4477-1-1 C1,4.9477,1.4477,4.5,2,4.5z M10,6c0.5,0,0.7896,0.3231,1,0.5L13.5,9H10c0,0-1,0-1-1V7C9,7,9,6,10,6z","highway-rest-area":"M13.5,13h-3V9h3a.5.5,0,0,0,.4092-.7871L11.66,5h.84a.5.5,0,0,0,.3838-.82l-2.5-3a.5155.5155,0,0,0-.7676,0l-2.5,3A.5.5,0,0,0,7.5,5h.84L6.0908,8.2129A.5.5,0,0,0,6.5,9h3v4H4V11H5.5a.5.5,0,0,0,0-1h-4a.5.5,0,0,0,0,1H3v2H1.5a.5.5,0,0,0,0,1h12a.5.5,0,0,0,0-1Z",historic:"m7.5 1c-1 0-1 1-2 1h-3.5c-.54467 0-1 .45533-1 1v7c0 .5447.45533 1 1 1h5v2.5s0 .5.5.5.5-.5.5-.5v-2.5h5c.5447 0 1-.4553 1-1v-7c0-.54467-.4553-1-1-1h-3.5c-1 0-1-1-2-1zm-4.5 4v-1h9v1zm0 1h4v1h-4zm0 2h7v1h-7z",home:"M2,13.7478c0,0.13807,0.11193,0.25,0.25,0.25h3.749v-3h3v3h3.749c0.13807,0,0.25-0.11193,0.25-0.25V7.9987H2 C2,7.9987,2,13.7478,2,13.7478z M13.93,6.5778l-0.9319-0.8189V2c0-0.55228-0.44771-1-1-1s-1,0.44772-1,1v2L7.6808,1.09 C7.5863,0.9897,7.42846,0.98478,7.3279,1.079L7.3169,1.09L1.0678,6.553C0.9734,6.65376,0.97856,6.81197,1.07932,6.90637 C1.12478,6.94896,1.18451,6.97304,1.2468,6.9739L3,6.9989h10.7468c0.13807,0.00046,0.25037-0.1111,0.25083-0.24917 C13.99784,6.68592,13.97365,6.62445,13.93,6.5779V6.5778z","horse-riding":"M6,1A1,1,0,1,1,7,2,1,1,0,0,1,6,1ZM8,3.5a.484.484,0,0,0,0-.058A.472.472,0,0,0,7.5,3h-1a.484.484,0,0,0-.058,0A.472.472,0,0,0,6,3.5V7H8Zm6.85,3.644L12.8,4.8l.085-.509a.478.478,0,0,0,.008-.063.25.25,0,0,0-.25-.25.346.346,0,0,0-.158.056L9,7H8L9,8V9.5a.5.5,0,0,1-1,0v-1L6,7H4a1.5,1.5,0,0,0-1.243.661A1.466,1.466,0,0,0,1.563,7H1.5A1.449,1.449,0,0,0,0,8.4v.086A3.781,3.781,0,0,0,.559,10.4a.278.278,0,0,0,.191.1A.25.25,0,0,0,1,10.25V9s-.02-.924.753-1c.5-.048.747.253.747.5V11L2,13v1.75a.25.25,0,0,0,.25.25.254.254,0,0,0,.25-.234V13L4,11v1l.5,2.8a.255.255,0,0,0,.246.2A.25.25,0,0,0,5,14.754H5L4.855,12.3,5.5,11H8v1l.508,2.813A.257.257,0,0,0,8.75,15,.25.25,0,0,0,9,14.75V12l.367-1a1.155,1.155,0,0,0,.543-.6l2.161-3.767a.863.863,0,0,0,1.023.4l1.066.818a.591.591,0,0,0,.35.135.487.487,0,0,0,.475-.4A.552.552,0,0,0,14.85,7.144Z",hospital:"M7,1C6.4,1,6,1.4,6,2v4H2C1.4,6,1,6.4,1,7v1 c0,0.6,0.4,1,1,1h4v4c0,0.6,0.4,1,1,1h1c0.6,0,1-0.4,1-1V9h4c0.6,0,1-0.4,1-1V7c0-0.6-0.4-1-1-1H9V2c0-0.6-0.4-1-1-1H7z","hospital-JP":"m12.5038 3h-10.00777c-.26639.00235-.52096.11039-.70772.30036-.18677.18998-.29046.44634-.28828.71274v5.5807c-.00063.18713.05047.37079.14765.5307.09718.1599.23667.2899.40305.3755l4.78 2.8394c.20725.1056.43653.1606.6691.1606.23258 0 .46186-.055.6691-.1606l4.78037-2.8394c.1664-.0856.3059-.2155.4031-.3755.0972-.15989.1483-.34357.1476-.5307v-5.5807c.0012-.13194-.0237-.2628-.0732-.38512-.0494-.12232-.1225-.2337-.215-.32777-.0925-.09408-.2027-.16901-.3241-.22052-.1215-.05151-.2519-.07859-.3839-.07969zm-2.0038 5.5h-1.99997v2h-2v-2h-2v-2h2v-2h2v2h1.99997z","hot-spring":"M6.682,5.759c-.505-.725-.781-1.121-.63-2.376,.139-1.156,.678-1.616,1.198-2.059,.404-.345,.797-.68,.981-1.324,.301,.722-.036,1.47-.349,2.164-.311,.691-.599,1.329-.211,1.836,.971,1.271,1.963,2.88,.971,4.586-.214,.393-.539,.681-.861,.968-.422,.375-.841,.747-1.004,1.348-.269-.677,.008-1.366,.285-2.052,.306-.759,.61-1.516,.172-2.251-.203-.34-.389-.607-.551-.84Zm3.371-1.174c-.098-.632,.034-1.281,.368-1.809,.367-.45,.701-.642,.991-.81,.345-.199,.627-.362,.83-.877,.289,.684,0,1.188-.304,1.718-.119,.207-.24,.418-.329,.645-.191,.61,.101,.893,.467,1.247,.358,.346,.786,.76,.899,1.617,.083,.635-.036,1.156-.372,1.684-.356,.436-.681,.655-.965,.846-.356,.24-.648,.437-.856,.965-.292-.688,.031-1.259,.353-1.828,.123-.217,.246-.434,.334-.658,.073-.558-.234-.867-.581-1.217-.357-.36-.757-.763-.834-1.523Zm-8.018,0c-.098-.632,.005-1.3,.368-1.809,.376-.528,.729-.717,1.035-.881,.323-.173,.594-.318,.786-.806,.289,.683-.014,1.208-.325,1.749-.122,.212-.246,.427-.336,.655-.152,.385,.131,1.014,.501,1.242,1.002,.801,1.227,2.286,.547,3.353-.366,.448-.704,.648-.999,.823-.353,.209-.645,.382-.849,.898-.278-.656,.008-1.18,.3-1.714,.131-.24,.263-.481,.345-.737,.179-.557-.134-.884-.51-1.277-.349-.365-.752-.785-.863-1.498Zm10.965,4.414c.7,2.616-3.474,3-5.5,3s-6.2-.484-5.5-3c-.633,.316-1,.961-1,1.5,0,1.519,2.91,2.9,6.5,2.9s6.5-1.381,6.5-2.9c0-.539-.367-1.184-1-1.5Z","ice-cream":"M5.44,8.17a3.473,3.473,0,0,0,2-.63A3.5,3.5,0,0,0,9,8.14h.44L8,13.7a.5.5,0,0,1-.92,0Zm6-3.473a2,2,0,0,1-4,0h0a2,2,0,1,1-2-2h.12a2,2,0,1,1,3.75,0h.13A2,2,0,0,1,11.439,4.7Z",industry:"M14,1v12H1V8.72c0.0016-0.1419,0.0634-0.2764,0.17-0.37l3-3.22c0.2074-0.1823,0.5234-0.1618,0.7056,0.0456 C4.9568,5.268,5.0011,5.387,5,5.51v3l3.16-3.37c0.2025-0.1878,0.5188-0.1759,0.7066,0.0266C8.9532,5.2599,9.0009,5.3827,9,5.51V11h3 V1H14z",information:"M7.5,1 C6.7,1,6,1.7,6,2.5S6.7,4,7.5,4S9,3.3,9,2.5S8.3,1,7.5,1z M4,5v1c0,0,2,0,2,2v2c0,2-2,2-2,2v1h7v-1c0,0-2,0-2-2V6c0-0.5-0.5-1-1-1H4 z","jewelry-store":"M12,8.5c0,2.4853-2.0147,4.5-4.5,4.5S3,10.9853,3,8.5c0-1.8483,1.1164-3.4329,2.7099-4.1255l0.1761,0.137l0.7739,0.6019 C5.1366,5.4922,4,6.8611,4,8.5C4,10.4299,5.5701,12,7.5,12S11,10.4299,11,8.5c0-1.6389-1.1366-3.0078-2.6599-3.3866l0.95-0.7388 C10.8836,5.0672,12,6.6517,12,8.5z M7.5,4.5L10,2.5555L9,1H6L5,2.5555l1.5,1.1667L7.5,4.5z",karaoke:"M12.1,2.952A2.988,2.988,0,0,0,6.99,4.917l3.142,3.142A2.988,2.988,0,0,0,12.1,2.952Zm-7.428,5.3L2.55,10.377a1,1,0,0,0,0,1.414l.707.707a1,1,0,0,0,1.414,0l2.121-2.121L8.914,8.255,6.793,6.134Zm.741,2.087-.707-.707L6.793,7.548l.707.707Z",landmark:"M12.5,12H12v-0.5c0-0.3-0.2-0.5-0.5-0.5H11V6h1l1-2c-1,0.1-2,0.1-3,0C9.2,3.4,8.6,2.8,8,2V1.5C8,1.2,7.8,1,7.5,1 S7,1.2,7,1.5V2C6.4,2.8,5.8,3.4,5,4C4,4.1,3,4.1,2,4l1,2h1v5c0,0-0.5,0-0.5,0C3.2,11,3,11.2,3,11.5V12H2.5C2.2,12,2,12.2,2,12.5V13 h11v-0.5C13,12.2,12.8,12,12.5,12z M7,11H5V6h2V11z M10,11H8V6h2V11z","landmark-JP":"m9.5 4c0 .39556-.1173.78224-.33706 1.11114s-.53212.58524-.89757.73662c-.36545.15137-.76759.19098-1.15555.11381s-.74433-.26765-1.02403-.54736c-.27971-.2797-.47019-.63607-.54736-1.02403s-.03756-.79009.11381-1.15555c.15138-.36545.40772-.67781.73662-.89757s.71558-.33706 1.11114-.33706c.53043 0 1.03914.21071 1.41421.58579.37508.37507.58579.88378.58579 1.41421zm-6 4c-.39556 0-.78224.1173-1.11114.33706s-.58524.53212-.73662.89757c-.15137.36546-.19098.76757-.11381 1.15557.07717.3879.26765.7443.54736 1.024.2797.2797.63607.4702 1.02403.5474.38796.0771.7901.0375 1.15555-.1138.36545-.1514.67781-.4078.89757-.7367s.33706-.7155.33706-1.1111c0-.53043-.21071-1.03914-.58579-1.41421-.37507-.37508-.88378-.58579-1.41421-.58579zm8 0c-.3956 0-.7822.1173-1.1111.33706s-.58528.53212-.73666.89757c-.15137.36546-.19098.76757-.11381 1.15557.07717.3879.26765.7443.54737 1.024.2797.2797.6361.4702 1.024.5474.388.0771.7901.0375 1.1556-.1138.3654-.1514.6778-.4078.8975-.7367.2198-.3289.3371-.7155.3371-1.1111 0-.53043-.2107-1.03914-.5858-1.41421-.3751-.37508-.8838-.58579-1.4142-.58579z",landuse:"m8.911 2.85401c.02782.02324.05021.0523.06558.08512.01538.03283.02337.06863.02342.10488v3.706c0 .0663-.02634.12989-.07322.17678-.04689.04688-.11048.07322-.17678.07322h-2.5c-.0663 0-.12989-.02634-.17678-.07322-.04688-.04689-.07322-.11048-.07322-.17678v-1.75h-1v1.75c0 .0663-.02634.12989-.07322.17678-.04689.04688-.11048.07322-.17678.07322h-2.5c-.0663 0-.12989-.02634-.17678-.07322-.04688-.04689-.07322-.11048-.07322-.17678v-3.7c.00005-.03625.00804-.07205.02342-.10488.01537-.03282.03776-.06188.06558-.08512l3.254-2.728c.04413-.0370337.09989-.0573335.1575-.0573335s.11337.0202998.1575.0573335zm-1.159 5.646c-.04915.00002-.09718.01464-.138.042l-2.614 1.95799h-1v-1.99999c0-.13261-.05268-.25979-.14645-.35355-.09376-.09377-.22094-.14645-.35355-.14645s-.25979.05268-.35355.14645c-.09377.09376-.14645.22094-.14645.35355v1.99999h-1v-1.99999c0-.13261-.05268-.25979-.14645-.35355-.09376-.09377-.22094-.14645-.35355-.14645s-.25979.05268-.35355.14645c-.09377.09376-.14645.22094-.14645.35355v4.24999c0 .0663.02634.1299.07322.1768.04689.0469.11048.0732.17678.0732h6.5c.0663 0 .12989-.0263.17678-.0732.04688-.0469.07322-.1105.07322-.1768v-3.99999c.00026-.03274-.00596-.0652-.0183-.09552-.01235-.03032-.03057-.0579-.05363-.08114-.02305-.02324-.05048-.04168-.0807-.05427s-.06263-.01907-.09537-.01907zm6.248-3.255v6.49999c0 .0671-.0267.1315-.0741.1789-.0474.0475-.1118.0741-.1789.0741h-3.494c-.0668 0-.1308-.0264-.1782-.0734s-.0743-.1108-.0748-.1776v-6.49699c-.00013-.03287.0062-.06544.0188-.09583.0125-.03039.0309-.058.0541-.08124.0233-.02324.0509-.04165.0813-.05417s.0629-.01889.0958-.01876h.75v-.751c0-.06604.0262-.12937.0729-.17607s.1101-.07293.1761-.07293h1.5c.0668.00053.1306.02742.1776.07481.047.04738.0734.11144.0734.17819v.747h.755c.065 0 .1273.02581.1732.07176.046.04595.0718.10826.0718.17324zm-1 4.75499h-2v1h2zm0-1.99999h-2v1h2zm0-2h-2v1h2z",laundry:"M8,1L6,3H3c0,0-1,0-1,1v9c0,1,1,1,1,1h9c0,0,1,0,1-1V2c0-1-1-1-1-1 S8,1,8,1z M8.5,2h2C10.777,2,11,2.223,11,2.5S10.777,3,10.5,3h-2C8.223,3,8,2.777,8,2.5S8.223,2,8.5,2z M7.5,6 c1.6569,0,3,1.3431,3,3s-1.3431,3-3,3s-3-1.3431-3-3S5.8431,6,7.5,6z",library:"M1.0819,9.9388C0.9871,9.867,1.0007,9.7479,1.0007,9.7479L1.5259,3.5c0,0,0.0082-0.0688,0.0388-0.104 C1.584,3.374,1.6084,3.342,1.6544,3.3232C2.1826,3.1072,5.0537,1.5519,6.5,3c0.2397,0.2777,0.4999,0.6876,0.4999,1v5.2879 c0,0,0.0062,0.1122-0.0953,0.1801c-0.0239,0.016-0.124,0.0616-0.242,0.0026c-2.2253-1.1134-4.711,0.1546-5.3381,0.4871 C1.1987,10.0244,1.1006,9.9531,1.0819,9.9388z M13.6754,9.9577c-0.6271-0.3325-3.1128-1.6005-5.3381-0.4871 c-0.118,0.059-0.2181,0.0134-0.242-0.0026C7.9939,9.4001,8.0001,9.2879,8.0001,9.2879V4c0-0.3124,0.2602-0.7223,0.4999-1 c1.4463-1.4481,4.2991,0.1071,4.8273,0.3232c0.046,0.0188,0.0704,0.0508,0.0897,0.0728C13.4476,3.4312,13.4558,3.5,13.4558,3.5 l0.5435,6.2479c0,0,0.0136,0.1191-0.0812,0.1909C13.8994,9.9531,13.8013,10.0244,13.6754,9.9577z M8.8647,12.6863 c0.0352-0.0085,0.0964-0.0443,0.1179-0.0775c0.0236-0.0364,0.0378-0.0617,0.0423-0.1088c0.0495-0.9379,1.6245-1.8119,4.6477-0.0298 c0.0775,0.0441,0.1666,0.0396,0.2425-0.0155C14.0014,12.392,14,12.2859,14,12.2859v-0.5542c0,0,0.0003-0.0764-0.0272-0.1184 c-0.0205-0.0312-0.0476-0.0643-0.0926-0.0858c-2.0254-1.3145-4.5858-1.8972-5.8854-0.1592 c-0.0181,0.0423-0.0353,0.0613-0.0728,0.0905C7.8654,11.5028,7.7964,11.5,7.7964,11.5H7.2109c0,0-0.069,0.0028-0.1256-0.0412 c-0.0375-0.0292-0.0547-0.0482-0.0728-0.0905c-1.2996-1.738-3.86-1.1828-5.8854,0.1317c-0.045,0.0215-0.0721,0.0546-0.0926,0.0858 c-0.0275,0.042-0.0272,0.1184-0.0272,0.1184v0.5542c0,0-0.0014,0.1061,0.0849,0.1688c0.0759,0.0551,0.165,0.0596,0.2425,0.0155 c3.0232-1.7821,4.5982-0.8806,4.6477,0.0573c0.0045,0.0471,0.0187,0.0724,0.0423,0.1088c0.0215,0.0332,0.0827,0.069,0.1179,0.0775 C6.8645,12.8656,7.9112,12.9363,8.8647,12.6863z","lift-gate":"M1 4a2 2 0 1 1 4 0v8a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4Zm3 0a1 1 0 1 0-2 0 1 1 0 0 0 2 0Zm4.5 2L7 3H6v3h2.5ZM10 6h1.5L10 3H8.5L10 6Zm3.25 0H13l-1.5-3h1.75a.75.75 0 0 1 .75.75v1.5a.75.75 0 0 1-.75.75Z",lighthouse:"M4.5,6L0,7V6.5l4.5-1V6z M4.5,3.5L0,2.5V3l4.5,1V3.5z M10.5,3.5V4L15,3V2.5L10.5,3.5z M10.5,6L15,7V6.5l-4.5-1V6z M8,7V2 h2.5c0.2761,0.0552,0.5448-0.1239,0.6-0.4c0.0552-0.2761-0.1239-0.5448-0.4-0.6l-3-1C7.5696-0.0586,7.4204-0.0586,7.29,0l-3,1 c-0.2761,0.0552-0.4552,0.3239-0.4,0.6S4.2139,2.0552,4.49,2H7v5H5l-2,7h9l-2-7H8z","lighthouse-JP":"M9.5,7.4c0,1.1-0.9,2-2,2s-2-0.9-2-2s0.9-2,2-2C8.6,5.4,9.5,6.3,9.5,7.4z M14,7.5C14,7.8,13.8,8,13.5,8h-1.6 c-0.1,0.9-0.311,1.582-0.911,2.282l1.064,1.064c0.2,0.2,0.196,0.504-0.004,0.704c-0.209,0.209-0.5,0.207-0.704,0.004L10.3,11 c-0.6,0.5-1.4,0.8-2.3,0.9v1.6C8,13.8,7.8,14,7.5,14S7,13.8,7,13.5v-1.6c-0.9-0.1-1.7-0.4-2.3-0.9l-1.1,1.1 c-0.207,0.207-0.48,0.213-0.696-0.004c-0.2-0.2-0.207-0.5-0.007-0.7L4,10.3C3.5,9.7,3.1,8.9,3,8H1.5C1.2,8,1,7.8,1,7.5S1.2,7,1.5,7 H3c0.1-0.9,0.4-1.7,1-2.4l-1-1C2.8,3.4,2.8,3.1,3,2.9s0.5-0.2,0.7,0l1,1l0,0C5.3,3.4,6.1,3.1,7,3V1.5C7,1.2,7.2,1,7.5,1S8,1.2,8,1.5 V3c0.9,0.1,1.7,0.5,2.3,1l0,0l1.1-1.1c0.2-0.2,0.5-0.2,0.7,0s0.2,0.5,0,0.7L11,4.7l0,0c0.5,0.7,0.8,1.4,0.9,2.3h1.6 C13.8,7,14,7.2,14,7.5z M11.1,7.4c0-2-1.6-3.6-3.6-3.6S3.8,5.5,3.8,7.4S5.4,11,7.4,11S11.1,9.4,11.1,7.4z",lodging:"M0.5,2.5C0.2,2.5,0,2.7,0,3v7.5v2C0,12.8,0.2,13,0.5,13S1,12.8,1,12.5V11h13v1.5 c0,0.3,0.2,0.5,0.5,0.5s0.5-0.2,0.5-0.5v-2c0-0.3-0.2-0.5-0.5-0.5H1V3C1,2.7,0.8,2.5,0.5,2.5z M3.5,3C2.7,3,2,3.7,2,4.5l0,0 C2,5.3,2.7,6,3.5,6l0,0C4.3,6,5,5.3,5,4.5l0,0C5,3.7,4.3,3,3.5,3L3.5,3z M7,4C5.5,4,5.5,5.5,5.5,5.5V7h-3C2.2,7,2,7.2,2,7.5v1 C2,8.8,2.2,9,2.5,9H6h9V6.5C15,4,12.5,4,12.5,4H7z",logging:"M13.91,3.41,13.5,3l.2-.28c.02-.03.04-.05.06-.08A.969.969,0,0,0,14,1.99a1,1,0,0,0-1.62-.77c-.03.02-.06.05-.09.07L12,1.5l-.386-.386a.354.354,0,0,0-.525.475l.417.417-.5.5-.392-.392a.354.354,0,0,0-.525.475L10.5,3l-.5.5-.381-.381a.354.354,0,1,0-.528.472h0l.028.028L9.5,4,9,4.5l-.395-.395a.354.354,0,0,0-.517.483L8.5,5,8,5.5l-.365-.365a.354.354,0,0,0-.556.439h0C7.1,5.6,7.508,6,7.508,6L7,6.5l-.394-.392a.392.392,0,0,0-.5-.028.384.384,0,0,0-.028.5L6.1,6.6l.4.4L6,7.5l-.4-.4a.37.37,0,0,0-.5,0L6.248,8.244,12.09,2.41,12.5,2H13v.5l-.41.41L6.751,8.749,7.9,9.9a.355.355,0,0,0,0-.5l-.008-.009L7.5,9,8,8.5l.384.384a.354.354,0,0,0,.528-.472L8.5,8,9,7.5l.38.38a.354.354,0,0,0,.528-.472l-.02-.02L9.5,7l.5-.5.377.377A.35.35,0,0,0,10.64,7a.347.347,0,0,0,.252-.6L10.5,6l.5-.5.38.38a.354.354,0,0,0,.528-.472L11.88,5.38,11.5,5l.5-.5.381.381a.354.354,0,0,0,.528-.472l-.025-.025L12.5,4l.5-.5.382.382a.354.354,0,0,0,.528-.472ZM4.39,7.916C3.893,7.419,3.641,7,3,7H1.5a.5.5,0,0,0-.5.5v3A2.19,2.19,0,0,0,1.5,12l.815.811A2.251,2.251,0,0,0,5.493,13h0L7.5,11ZM3.5,10,2.262,11.238A1.3,1.3,0,0,1,2,10.5V8H3a.545.545,0,0,1,.335.194.455.455,0,0,1,.165.418Z",marker:"M7.5 1C5.42312 1 3 2.2883 3 5.56759C3 7.79276 6.46156 12.7117 7.5 14C8.42309 12.7117 12 7.90993 12 5.56759C12 2.2883 9.57688 1 7.5 1Z","marker-stroked":"M5.11697 2.81756C5.76952 2.26561 6.65195 2 7.5 2C8.34805 2 9.23048 2.26561 9.88303 2.81756C10.5075 3.34579 11 4.20017 11 5.56759C11 5.94031 10.8461 6.52407 10.5105 7.29145C10.1859 8.03354 9.73523 8.85087 9.24257 9.65811C8.64175 10.6426 7.999 11.5793 7.48195 12.3097C6.96023 11.5798 6.31599 10.6233 5.71947 9.62296C5.2343 8.80934 4.79303 7.98717 4.47608 7.24844C4.14708 6.48162 4 5.91216 4 5.56759C4 4.20017 4.49248 3.34579 5.11697 2.81756ZM8.10767 13.1554C9.45904 11.2632 12 7.54181 12 5.56759C12 2.2883 9.57688 1 7.5 1C5.42312 1 3 2.2883 3 5.56759C3 7.44926 5.47533 11.2572 6.86751 13.1671C7.12165 13.5157 7.3397 13.8011 7.5 14C7.55627 13.9215 7.62241 13.8299 7.697 13.7266C7.81469 13.5636 7.95343 13.3714 8.10767 13.1554Z","mobile-phone":"M10,2h0V1.5a.5.5,0,0,0-1,0V2H5A1,1,0,0,0,4,3V13a1,1,0,0,0,1,1h5a1,1,0,0,0,1-1V3A1,1,0,0,0,10,2ZM6,13H5V12H6Zm0-2H5V10H6ZM6,9H5V8H6Zm2,4H7V12H8Zm0-2H7V10H8ZM8,9H7V8H8Zm2,4H9V12h1Zm0-2H9V10h1Zm0-2H9V8h1Zm0-2.5a.5.5,0,0,1-.5.5h-4A.5.5,0,0,1,5,6.5v-3A.5.5,0,0,1,5.5,3h4a.5.5,0,0,1,.5.5Z",monument:"M7.5,0L6,2.5v7h3v-7L7.5,0z M3,11.5 L3,15h9v-3.5L10.5,10h-6L3,11.5z","monument-JP":"M12,13H4c-0.5,0-1-0.5-1-1V5c0-2,0.8-4,4-4c3.1,0,4,2,4,4v6h1c0.5,0,1,0.5,1,1S12.5,13,12,13z M5,11h4V5c0-1,0-2-2-2 S5,4,5,5V11z",mountain:"m7.5 1c-.3 0-.4.2-.6.4l-5.8 9.5c-.1.1-.1.3-.1.4 0 .5.4.7.7.7h11.6c.4 0 .7-.2.7-.7 0-.2 0-.2-.1-.4l-5.7-9.5c-.2-.2-.4-.4-.7-.4zm0 1.5 3.3 5.5h-.8l-1.5-1.5-1 1.5-1-1.5-1.5 1.5h-.9z",museum:"M7.5,0L1,3.5V4h13V3.5L7.5,0z M2,5v5l-1,1.6V13h13v-1.4L13,10V5H2z M4,6h1v5.5H4V6z M7,6h1v5.5H7V6z M10,6h1 v5.5h-1V6z",music:"m12.5 0c-.0804.0008-.1594.0213999-.23.0599999l-8.77 2.4400001c-.2761 0-.5.2239-.5.5v6.28c-.3029-.1798-.6478-.2763-1-.28-1.1046 0-2 .8954-2 2s.8954 2 2 2 2-.8954 2-2v-4.64l8-2.22v3.64c-.3029-.1798-.6478-.2763-1-.28-1.1046 0-2 .8954-2 2s.8954 2 2 2 2-.8954 2-2v-9c0-.2761-.2239-.5-.5-.5zm-.5 3.14-8 2.22v-2l8-2.22z",natural:"M8.753,6.278a.5.5,0,0,1-.51,0A4.109,4.109,0,0,1,6.5,3.5a2.779,2.779,0,0,0-.59-1.506l-.019-.027a.257.257,0,0,1-.056-.144.237.237,0,0,1,.25-.25.264.264,0,0,1,.057.011A3.523,3.523,0,0,1,7.5,2.5L8.28.94a.246.246,0,0,1,.44,0L9.5,2.5a3.4,3.4,0,0,1,1.339-.907.283.283,0,0,1,.1-.021c.175.009.212.119.221.249a.35.35,0,0,1-.043.141A5.2,5.2,0,0,0,10.5,3.5,4.113,4.113,0,0,1,8.753,6.278ZM5,8H6.289a.25.25,0,0,0,.25-.25.241.241,0,0,0-.061-.15L4.7,5.235a.255.255,0,0,0-.391,0L2.518,7.589a.274.274,0,0,0-.062.161.25.25,0,0,0,.25.25H4L1.335,10.6a.273.273,0,0,0-.058.152A.25.25,0,0,0,1.529,11H3L1.435,12.565a.255.255,0,0,0,.18.435H4v1H5V13H7.385a.255.255,0,0,0,.18-.435L6,11H7.471a.25.25,0,0,0,.25-.25.233.233,0,0,0-.058-.149Zm9.345,3.748a.252.252,0,0,1-.252.252H8.908a.252.252,0,0,1-.226-.365L11.27,6.451a.252.252,0,0,1,.451,0l2.6,5.184h0A.251.251,0,0,1,14.345,11.748ZM12.75,10,11.5,7.5,10.25,10Z","observation-tower":"M12 12.5H11.5L10 9V7C10.9951 7 10.9951 6.25 10.9951 6.25L11.5 3C11.5 3 11.5 2.5 11 2.5H10C10 2.5 10 2 9.5 2H8.5V1.5C8.5 1.5 8.5 0.5 7.5 0.5C6.5 0.5 6.5 1.5 6.5 1.5V2H5.5C5 2 5 2.5 5 2.5H4C3.5 2.5 3.5 3 3.5 3L4.0049 6.25C4.0049 6.25 4.0049 7 5 7V9L3.5 12.5H3C3 12.5 2 12.5 2 13.25C2 14 3 14 3 14H12C12 14 13 14 13 13.25C13 12.5 12 12.5 12 12.5ZM10.25 3.5L10 5H5L4.75 3.4971L10.25 3.5ZM8.5 7V8H6.5V7H8.5ZM6.5006 9.4971H8.4994L9.5 12.5H5.5L6.5006 9.4971Z",optician:"M1.78483 3.81169C2.03375 3.31421 2.54231 3 3.09859 3C3.48821 3 3.86186 3.15477 4.13736 3.43027L4.85354 4.14645C5.0488 4.34171 5.0488 4.65829 4.85354 4.85355C4.65827 5.04882 4.34169 5.04882 4.14643 4.85355L3.43017 4.1373C3.34226 4.04939 3.22303 4 3.09871 4C2.92116 4 2.75884 4.10032 2.67944 4.25912L1.309 7H5.2476C6.0654 7 6.7487 7.5656 6.941 8.3245C7.1146 8.2834 7.3009 8.25 7.5 8.25C7.6991 8.25 7.8854 8.2835 8.059 8.3246C8.2513 7.5656 8.9344 7 9.752 7H13.691L12.3206 4.25912C12.2412 4.10032 12.0788 4 11.9013 4C11.777 4 11.6577 4.04939 11.5698 4.1373L10.8536 4.85355C10.6583 5.04882 10.3417 5.04882 10.1465 4.85355C9.9512 4.65829 9.9512 4.34171 10.1465 4.14645L10.8626 3.43027C11.1381 3.15477 11.5118 3 11.9014 3C12.4577 3 12.9663 3.31421 13.2152 3.81169L14.9414 7.26172L14.9404 7.26308C14.9784 7.33359 15 7.41428 15 7.5V8.5C15 8.7761 14.7761 9 14.5 9H14V9.5C14 11.0889 12.998 12 11.25 12H10.75C9.002 12 8 11.0889 8 9.5V9.3413C7.8499 9.2933 7.6693 9.25 7.5 9.25C7.3307 9.25 7.1503 9.2933 7 9.3413V9.5C7 11.0889 5.9976 12 4.25 12H3.75C2.0024 12 1 11.0889 1 9.5V9H0.4992C0.2235 9 0 8.7765 0 8.5007V7.5C0 7.41428 0.0215731 7.33359 0.0595866 7.26308L0.0585938 7.26172L1.78483 3.81169ZM9.752 8C9.3369 8 9 8.3374 9 8.7524V9.5C9 10.1982 9.1992 11 10.75 11H11.25C12.8008 11 13 10.1982 13 9.5V8.7529C13 8.3379 12.6621 8 12.2471 8H9.752ZM2.7529 8C2.3379 8 2 8.3374 2 8.7524V9.5C2 10.1982 2.1987 11 3.75 11H4.25C5.8013 11 6 10.1982 6 9.5V8.7524C6 8.3374 5.6626 8 5.2475 8H2.7529Z",paint:"m13.5 3.5h-1v-.9973c0-.2777-.2251-.5027-.5027-.5027h-10.4946c-.2776 0-.5027.225-.5027.5027v2.9946c0 .2776.2251.5027.5027.5027h10.4946c.2776 0 .5027-.2251.5027-.5027v-.9973h.5v3.1021l-6.1123 1.4106c-.2271.0527-.3877.2549-.3877.4873v1.5074c-.2783.02-.5.246-.5.5295v2.9261c0 .2966.2404.537.5369.537h.9261c.2966 0 .537-.2404.537-.5369v-2.9261c0-.2834-.2217-.5095-.5-.5295v-1.11l6.1123-1.4102c.2266-.0522.3877-.2544.3877-.4873v-4c0-.2764-.2236-.5-.5-.5z",park:"M14,5.75c0.0113-0.6863-0.3798-1.3159-1-1.61C12.9475,3.4906,12.4014,2.9926,11.75,3 c-0.0988,0.0079-0.1962,0.0281-0.29,0.06c-0.0607-0.66-0.6449-1.1458-1.3048-1.0851C9.8965,1.9987,9.6526,2.1058,9.46,2.28l0,0 c0-0.6904-0.5596-1.25-1.25-1.25S6.96,1.5896,6.96,2.28C6.96,2.28,7,2.3,7,2.33C6.4886,1.8913,5.7184,1.9503,5.2797,2.4618 C5.1316,2.6345,5.0347,2.8451,5,3.07C4.8417,3.0195,4.6761,2.9959,4.51,3C3.6816,2.9931,3.0044,3.659,2.9975,4.4874 C2.9958,4.6872,3.0341,4.8852,3.11,5.07C2.3175,5.2915,1.8546,6.1136,2.0761,6.9061C2.2163,7.4078,2.6083,7.7998,3.11,7.94 c0.2533,0.7829,1.0934,1.2123,1.8763,0.959C5.5216,8.7258,5.9137,8.2659,6,7.71C6.183,7.8691,6.4093,7.9701,6.65,8v5L5,14h5l-1.6-1 v-2c0.7381-0.8915,1.6915-1.5799,2.77-2c0.8012,0.1879,1.603-0.3092,1.7909-1.1103C12.9893,7.7686,13.0025,7.6444,13,7.52 c0.0029-0.0533,0.0029-0.1067,0-0.16C13.6202,7.0659,14.0113,6.4363,14,5.75z M8.4,10.26V6.82C8.6703,7.3007,9.1785,7.5987,9.73,7.6 h0.28c0.0156,0.4391,0.2242,0.849,0.57,1.12C9.7643,9.094,9.0251,9.6162,8.4,10.26z","park-alt1":"M9.428,10.429a.269.269,0,0,1-.074-.18A.25.25,0,0,1,9.6,10h1.447a.25.25,0,0,0,.25-.25.258.258,0,0,0-.079-.179L9.07,7.419a.3.3,0,0,1-.063-.17A.249.249,0,0,1,9.257,7H10.4a.251.251,0,0,0,.25-.251.247.247,0,0,0-.077-.178L8.432,4.434,8.418,4.42a.262.262,0,0,1-.066-.17A.25.25,0,0,1,8.6,4h.866a.25.25,0,0,0,.25-.25.246.246,0,0,0-.068-.164h.006L7.7,1.238a.253.253,0,0,0-.042-.044A.249.249,0,0,0,7.5,1.139h0a.249.249,0,0,0-.158.055.253.253,0,0,0-.042.044L5.352,3.586a.246.246,0,0,0-.068.164.25.25,0,0,0,.25.25H6.4a.241.241,0,0,1,.184.42l-.014.014L4.431,6.571a.247.247,0,0,0-.077.178A.251.251,0,0,0,4.6,7H5.745a.249.249,0,0,1,.25.249.3.3,0,0,1-.063.17L3.782,9.571A.258.258,0,0,0,3.7,9.75a.25.25,0,0,0,.25.25H5.4a.25.25,0,0,1,.248.249.269.269,0,0,1-.074.18l-2.14,2.132-.009.009a.248.248,0,0,0,0,.351A.256.256,0,0,0,3.605,13H7v1l1-.008V13h3.391a.263.263,0,0,0,.26-.254.248.248,0,0,0-.071-.177Z",parking:"M4 2V13H6V9H8.5C10.433 9 12 7.433 12 5.5C12 3.567 10.433 2 8.5 2H4ZM6 7V4H8.5C9.32843 4 10 4.67157 10 5.5C10 6.32843 9.32843 7 8.5 7H6Z","parking-garage":"M10.5,10.14c-0.6637,0.4788-1.4732,0.7121-2.29,0.66h-1.9V14h-1.9V5h3.92 c0.7801-0.0414,1.5484,0.2041,2.16,0.69c0.5779,0.5595,0.875,1.3483,0.81,2.15C11.4042,8.6892,11.1088,9.5388,10.5,10.14z M9,6.9 C8.711,6.6881,8.3579,6.5822,8,6.6H6.31v2.65H8c0.3612,0.0191,0.717-0.0947,1-0.32c0.2559-0.2675,0.3867-0.6308,0.36-1 C9.4072,7.5493,9.274,7.1684,9,6.9z M14.41,4.21c0.114-0.2486,0.007-0.5427-0.24-0.66L7.5,0.45l-6.71,3.1 C0.5387,3.666,0.429,3.9637,0.545,4.215C0.661,4.4663,0.9587,4.576,1.21,4.46l0,0L7.5,1.55l6.29,2.9 c0.2486,0.114,0.5427,0.007,0.66-0.24H14.41z","parking-paid":"M1 13V2h4.5a3.5 3.5 0 0 1 3.21 2.103 3.36 3.36 0 0 0-.504.676c-.23.41-.232.837-.174 1.154l.3 1.625A3.495 3.495 0 0 1 5.5 9H3v4H1Zm4.5-6a1.5 1.5 0 1 0 0-3H3v3h2.5Zm3.516-1.248a.716.716 0 0 1 .062-.484C9.315 4.848 9.978 4 11.5 4c1.521 0 2.185.847 2.421 1.268a.716.716 0 0 1 .064.484L13.019 11H12v2h-1v-2H9.981l-.965-5.248ZM12.75 7 13 5.655C12.83 5.409 12.42 5 11.5 5s-1.33.41-1.5.655L10.25 7h2.5Z",pharmacy:"M9.5,4l1.07-1.54c0.0599,0.0046,0.1201,0.0046,0.18,0c0.6904-0.0004,1.2497-0.5603,1.2494-1.2506 C11.999,0.519,11.4391-0.0404,10.7487-0.04C10.0584-0.0396,9.499,0.5203,9.4994,1.2106c0,0.0131,0.0002,0.0262,0.0006,0.0394 c0,0,0,0.07,0,0.1L7,4H9.5z M12,6V5H3v1l1.5,3.5L3,13v1h9v-1l-1-3.5L12,6z M10,10H8v2H7v-2H5V9h2V7h1v2h2V10z","picnic-site":"M4,3C3.446,3,3,3.446,3,4s0.446,1,1,1h1.2969 L4.6523,7H2.5c-0.554,0-1,0.446-1,1s0.446,1,1,1h1.5098L3.041,12.0098c-0.1284,0.3939,0.0868,0.8173,0.4807,0.9457 s0.8173-0.0868,0.9457-0.4807c0.0005-0.0013,0.0009-0.0027,0.0013-0.004L5.5859,9h3.8281l1.1172,3.4707 c0.1273,0.3943,0.5501,0.6107,0.9443,0.4834s0.6107-0.5501,0.4834-0.9443l0,0L10.9902,9H12.5c0.554,0,1-0.446,1-1s-0.446-1-1-1 h-2.1523L9.7031,5H11c0.554,0,1-0.446,1-1s-0.446-1-1-1H4z M6.873,5H8.127l0.6445,2h-2.543L6.873,5z",pitch:"M5,3C4.4477,3,4,2.5523,4,2s0.4477-1,1-1s1,0.4477,1,1S5.5523,3,5,3z M12.5,10H10L9,7L8,5.25L9,5l2.3,1l0,0 c0.2761,0.1105,0.5895-0.0239,0.7-0.3S11.9761,5.1105,11.7,5l0,0L9,4H7L5,5L4,6H2.5C2.2239,6,2,6.2239,2,6.5S2.2239,7,2.5,7H5l1-1 l1,2l-2,2v3.5C5,13.7761,5.2239,14,5.5,14S6,13.7761,6,13.5v-3.11L8,9l1,2h3.5c0.2761,0,0.5-0.2239,0.5-0.5S12.7761,10,12.5,10z","place-of-worship":"M7.5,0l-2,2v2h4V2 L7.5,0z M5.5,4.5L4,6h7L9.5,4.5H5.5z M2,6.5c-0.5523,0-1,0.4477-1,1V13h2V7.5C3,6.9477,2.5523,6.5,2,6.5z M4,6.5V13h7V6.5H4z M13,6.5c-0.5523,0-1,0.4477-1,1V13h2V7.5C14,6.9477,13.5523,6.5,13,6.5z",playground:"m3.00002 1.15c.2091-.8016 1.0284-1.2819 1.83-1.0729s1.2819 1.0284 1.0729 1.83c-.2003.7681-.9643 1.2471-1.7429 1.0929-.8126-.161-1.3409-.9502-1.18-1.7629.0058-.0292.0125-.0583.02-.0871zm10.99998 11.17c.1032.5426-.2531 1.066-.7956 1.1692-.0015.0003-.0029.0006-.0044.0008-.4252.086-.8574-.1119-1.07-.49l-1.68-3.37-1.44998.29-.22.08h-.06v2.15l.62-.15h.14c.2871.0054.5155.2425.5101.5297-.0039.2064-.1295.391-.3201.4703l-5 1c-.0563.0095-.1137.0095-.17 0-.2872 0-.52-.2328-.52-.52 0-.2099.1262-.3993.32-.48l4.15-.83v-2.17l-3.22.58c-.164.0423-.336.0423-.5 0-.3394-.0867-.6088-.3446-.71-.68h-.02l-1-4.07c-.0312-.1416-.0312-.2884 0-.43.0936-.387.4078-.6815.8-.75l4.7-.52v-4.13h.22v4.1h.06l.22-.02.4-.08h.21c.2673.0643.43258.3323.37.6-.0439.235-.251.4041-.49.4l-.49.08h-.22-.06v2.86h.06l.22-.06 1.80998-.36c.4275-.0352.8299.2062 1 .6l2 3.94c.077.0758.1411.1636.19.26zm-5.49998-7.19-2.5.27.74 2.94 1.76-.34z",police:"M5.5,1L6,2h5l0.5-1H5.5z M6,2.5v1.25c0,0,0,2.75,2.5,2.75S11,3.75,11,3.75V2.5H6z M1.9844,3.9863 C1.4329,3.9949,0.9924,4.4485,1,5v4c-0.0001,0.6398,0.5922,1.1152,1.2168,0.9766L5,9.3574V14l5.8789-6.9297 C10.7391,7.0294,10.5947,7,10.4414,7H6.5L3,7.7539V5C3.0077,4.4362,2.5481,3.9775,1.9844,3.9863z M11.748,7.7109L6.4121,14H12 V8.5586C12,8.2451,11.9061,7.9548,11.748,7.7109z","police-JP":"M7.5,1A6.5,6.5,0,1,0,14,7.5,6.5,6.5,0,0,0,7.5,1Zm2.6,2.84L7.5,6.44,4.9,3.84A4.4428,4.4428,0,0,1,10.1,3.84ZM3.84,4.9007,6.4394,7.5l-2.6,2.5993A4.4429,4.4429,0,0,1,3.84,4.9007ZM4.9,11.16l2.6-2.6,2.6,2.6A4.4428,4.4428,0,0,1,4.9,11.16Zm6.26-1.0606L8.5606,7.5l2.6-2.5993a4.4429,4.4429,0,0,1-.0006,5.1986Z",post:"M13.5 3.65139C13.5 3.86918 13.3912 4.07257 13.2099 4.19338L7.5 8L1.79006 4.19338C1.60885 4.07257 1.5 3.86918 1.5 3.65139C1.5 3.29164 1.79164 3 2.15139 3L12.8486 3C13.2084 3 13.5 3.29164 13.5 3.65139Z M13.5 5.96713V11C13.5 11.5523 13.0523 12 12.5 12H2.5C1.94772 12 1.5 11.5523 1.5 11L1.5 5.96713C1.5 5.76746 1.72254 5.64836 1.88868 5.75912L7.5 9.5L13.1113 5.75912C13.2775 5.64836 13.5 5.76746 13.5 5.96713Z","post-JP":"m1.5 4c0-.26522.10536-.51957.29289-.70711.18754-.18753.44189-.29289.70711-.29289h10c.2652 0 .5196.10536.7071.29289.1875.18754.2929.44189.2929.70711s-.1054.51957-.2929.70711c-.1875.18753-.4419.29289-.7071.29289h-10c-.26513 0-.51941-.10529-.70693-.29272-.18752-.18742-.29294-.44165-.29307-.70678zm11 2.5h-10c-.26522 0-.51957.10536-.70711.29289-.18753.18754-.29289.44189-.29289.70711s.10536.51957.29289.70711c.18754.18753.44189.29289.70711.29289h4v4.5c0 .2652.10536.5196.29289.7071.18754.1875.44189.2929.70711.2929s.51957-.1054.70711-.2929c.18753-.1875.29289-.4419.29289-.7071v-4.5h4c.2652 0 .5196-.10536.7071-.29289.1875-.18754.2929-.44189.2929-.70711s-.1054-.51957-.2929-.70711c-.1875-.18753-.4419-.29289-.7071-.29289z",prison:"M3.5,1v13H12V1H3.5z M9.5,2H11v3.5H9.5V2z M4.5,2.0547H6V7H4.5V2.0547z M7,2.0547h1.5V7H7V2.0547z M10.25,6.5 C10.6642,6.5,11,6.8358,11,7.25S10.6642,8,10.25,8l0,0C9.8358,8,9.5,7.6642,9.5,7.25l0,0C9.5,6.8358,9.8358,6.5,10.25,6.5z M7,8 h1.4727L8.5,13H7.0273L7,8z M4.5,8.166H6V13H4.5V8.166z M9.5,9H11v4H9.5V9z",racetrack:"M4.99321 1.58228C5.03861 1.30989 4.8546 1.05228 4.58222 1.00688C4.30983 0.961484 4.05222 1.14549 4.00682 1.41788L2.00682 13.4179C1.96142 13.6903 2.14543 13.9479 2.41782 13.9933C2.6902 14.0387 2.94782 13.8547 2.99321 13.5823L3.6632 9.56238C4.46947 9.67976 5.3398 9.7187 6.026 10.2C6.45057 10.505 6.94151 10.7047 7.45839 10.7828C8.424 10.9286 9.28807 10.3976 10.242 10.549L11.531 10.743C11.7908 10.7822 12.0609 10.5828 12.1 10.323L12.984 4.38899L12.988 4.38499C13.0241 4.12469 12.8213 3.85686 12.561 3.82099L11.272 3.62699C10.3092 3.48421 9.44342 3.9997 8.48942 3.85618C8.06155 3.79181 7.65443 3.62915 7.3 3.38099C6.56128 2.86385 5.68119 2.77814 4.81426 2.656L4.99321 1.58228ZM4.40351 5.12049L4.73218 3.14849C5.33161 3.22962 5.96556 3.27693 6.521 3.51699L6.22626 5.48223C5.65576 5.24949 5.01279 5.2037 4.40351 5.12049ZM3.74549 9.0686L4.07436 7.09542C4.69451 7.18147 5.35159 7.22405 5.933 7.46299L6.23273 5.48673C6.89067 5.75614 7.3918 6.21952 8.126 6.32799L8.426 4.34799C9.16402 4.45947 9.77459 4.17131 10.484 4.11399L10.184 6.07999C9.47389 6.1406 8.85956 6.44062 8.124 6.32999L7.83802 8.30784C7.10186 8.19874 6.59996 7.73286 5.939 7.46399L5.639 9.43999C5.04421 9.20148 4.3764 9.15882 3.74549 9.0686ZM7.83898 8.30813C8.57282 8.41936 9.19002 8.11708 9.9 8.05799L10.184 6.07999C10.8385 6.01968 11.5087 6.19133 12.152 6.28899L11.872 8.26499C11.2277 8.16793 10.5563 7.99624 9.901 8.05799L9.601 10.034C8.89229 10.0817 8.26589 10.3943 7.539 10.284L7.83898 8.30813Z","racetrack-boat":"m10.0643 11.2159c.4691-.5125.9358-1.0224 1.5938-1.2417.9212-.3071 1.5902.0778 1.8665.2805.7241.531 1.3904-.2204.5914-.8064-.4269-.3131-1.4451-.86577-2.7741-.4228-.7202.2401-1.2127.7667-1.70487 1.2931-.40012.4279-.80009.8556-1.32212 1.1291-.61911.3243-1.06486-.0266-1.06486-.6352v-.0121c.00021-.7982-.40819-1.3004-1.25-1.3004-.49071 0-.99216.2582-1.50001.5-1.17511.5596-2.31799 1.2859-3.31714 2.1134-.210639.1751-.243189.4951-.06696.7066.2505.3006.58076.1621.82938-.0379.41361-.3329 1.78116-1.3913 2.93376-1.94.47652-.227.86169-.3421 1.12097-.3421.24997 0 .24997.1016.24997.3396-.00202 1.3264 1.29025 2.1428 2.52893 1.4939.50415-.2641.89557-.6917 1.28535-1.1176zm-7.56426-2.2159c1.5-1 3.25492-2 5-2 .75 0 .75.375.75.75s0 .75.75.75c2.52746 0 5.36316-3.21377 5.49996-5.5l-2.5 1-2.34195-.97445c-.61176-.20392-.92799.74476-.31623.94868l1.15818.52577-1.49996.5-4-1.25c-.23606-.07869-.38872.02744-.5.25l-1.5 3-2.00004 1zm2.5-7c0-.5523.4477-1 1-1s1 .4477 1 1-.4477 1-1 1-1-.4477-1-1z","racetrack-cycling":"M8 1L11 4H12C14 4 14 1 12 1H8ZM8.463 3C8.34323 3.00901 8.2307 3.06084 8.146 3.146L5.646 5.646C5.59615 5.69579 5.55739 5.75555 5.53225 5.82136C5.50711 5.88718 5.49617 5.95757 5.50014 6.02791C5.5041 6.09825 5.52289 6.16696 5.55526 6.22953C5.58764 6.2921 5.63287 6.34713 5.688 6.391L7.846 8.117L6.57 10.242C6.50157 10.356 6.48125 10.4926 6.51351 10.6216C6.54577 10.7506 6.62796 10.8616 6.742 10.93C6.85604 10.9984 6.9926 11.0187 7.12162 10.9865C7.25065 10.9542 7.36157 10.872 7.43 10.758L8.93 8.258C8.99256 8.15404 9.01519 8.03088 8.99366 7.91148C8.97214 7.79207 8.90793 7.68457 8.813 7.609L7.304 6.402L9 4.707L10.146 5.854C10.1925 5.9004 10.2477 5.93718 10.3085 5.96223C10.3692 5.98728 10.4343 6.00012 10.5 6H13C13.1326 6 13.2598 5.94732 13.3536 5.85355C13.4473 5.75979 13.5 5.63261 13.5 5.5C13.5 5.36739 13.4473 5.24021 13.3536 5.14645C13.2598 5.05268 13.1326 5 13 5H10.707L8.854 3.146C8.80319 3.09493 8.74195 3.05545 8.67446 3.03025C8.60698 3.00505 8.53484 2.99473 8.463 3ZM2.949 7C2.16222 7.01338 1.4122 7.33534 0.860573 7.89651C0.308947 8.45767 -0.000113683 9.21311 3.13683e-08 10C3.13683e-08 10.7956 0.316071 11.5587 0.87868 12.1213C1.44129 12.6839 2.20435 13 3 13C3.79565 13 4.55871 12.6839 5.12132 12.1213C5.68393 11.5587 6 10.7956 6 10C6.00006 9.60179 5.92083 9.20756 5.76695 8.84028C5.61307 8.47301 5.38761 8.14004 5.10372 7.8608C4.81982 7.58157 4.48318 7.36164 4.11341 7.21385C3.74364 7.06606 3.34815 6.99336 2.95 7H2.949ZM11.949 7C11.1622 7.01338 10.4122 7.33534 9.86057 7.89651C9.30895 8.45767 8.99989 9.21311 9 10C9 10.7956 9.31607 11.5587 9.87868 12.1213C10.4413 12.6839 11.2044 13 12 13C12.7956 13 13.5587 12.6839 14.1213 12.1213C14.6839 11.5587 15 10.7956 15 10C15.0001 9.60179 14.9208 9.20756 14.767 8.84028C14.6131 8.47301 14.3876 8.14004 14.1037 7.8608C13.8198 7.58157 13.4832 7.36164 13.1134 7.21385C12.7436 7.06606 12.3482 6.99336 11.95 7H11.949ZM12.049 8C12.5709 8.01279 13.0671 8.22914 13.4316 8.60283C13.7962 8.97653 14.0002 9.47795 14 10C14 10.5304 13.7893 11.0391 13.4142 11.4142C13.0391 11.7893 12.5304 12 12 12C11.4696 12 10.9609 11.7893 10.5858 11.4142C10.2107 11.0391 10 10.5304 10 10C9.99992 9.73318 10.0532 9.46904 10.1568 9.22314C10.2603 8.97724 10.4121 8.75455 10.603 8.56818C10.7939 8.3818 11.0202 8.23552 11.2686 8.13794C11.5169 8.04036 11.7823 7.99346 12.049 8V8Z","racetrack-horse":"M10 1C9.73478 1 9.48043 1.10536 9.29289 1.29289C9.10536 1.48043 9 1.73478 9 2C9 2.26522 9.10536 2.51957 9.29289 2.70711C9.48043 2.89464 9.73478 3 10 3C10.2652 3 10.5196 2.89464 10.7071 2.70711C10.8946 2.51957 11 2.26522 11 2C11 1.73478 10.8946 1.48043 10.7071 1.29289C10.5196 1.10536 10.2652 1 10 1ZM5.5 3C5.25 3 4.5 3 5 3.75L6.25 6H4.5C4.223 6.003 3.983 6.1 3.75 6.25C2.944 5.121 2.242 5.552 1.51 6C1.107 6.247 0.694 6.499 0.25 6.5C0.184332 6.50201 0.121902 6.52899 0.0754461 6.57545C0.0289898 6.6219 0.00200653 6.68433 0 6.75C0.00200653 6.81567 0.0289898 6.8781 0.0754461 6.92455C0.121902 6.97101 0.184332 6.99799 0.25 7C0.626 7.02 1.057 6.907 1.488 6.793C2.144 6.62 2.798 6.448 3.254 6.75C3.16 6.937 3 7.5 3 8L2.998 9.51C2.792 9.714 2.619 9.633 2.443 9.55C2.303 9.485 2.16 9.42 2 9.5L1 12.45C1 12.7 1.393 12.752 1.5 12.5L2.25 10.744C2.998 10.744 4.5 10 5 9L9 10L11.5 12.5C11.697 12.697 12.12 12.362 11.96 12.115L10 9L12 6.5C12.248 7 12.495 7 12.986 7H13L13.6 7.75C13.988 8.235 14.82 7.743 14.5 7.25L12.834 4.79L13 4.5C13.062 4.313 12.637 3.924 12.5 4L10.5 5.5L8.89 3.187C8.84314 3.12862 8.78377 3.08151 8.71627 3.04915C8.64877 3.01678 8.57486 2.99999 8.5 3H5.5ZM9 5.25L9.5 6L6.777 7.916C6.72243 7.95469 6.66065 7.98204 6.59532 7.99643C6.52999 8.01081 6.46244 8.01194 6.39666 7.99975C6.33089 7.98756 6.26823 7.96229 6.2124 7.92545C6.15656 7.8886 6.10869 7.84093 6.07162 7.78525C6.03454 7.72957 6.00901 7.66701 5.99655 7.60129C5.98409 7.53556 5.98494 7.46801 5.99905 7.40262C6.01317 7.33723 6.04026 7.27534 6.07873 7.22061C6.1172 7.16588 6.16626 7.11943 6.223 7.084L9 5.25Z",rail:"M 3 1 C 2.4477 1 2 1.4477 2 2 L 2 10 C 2 10.5523 2.4477 11 3 11 L 12 11 C 12.5523 11 13 10.5523 13 10 L 13 2 C 13 1.4477 12.5523 1 12 1 L 3 1 z M 5.75 1.5 L 5.7597656 1.5 L 9.2597656 1.5 C 9.3978656 1.5 9.5097656 1.6119 9.5097656 1.75 C 9.5097656 1.8881 9.3978656 2 9.2597656 2 L 5.75 2 C 5.6119 2 5.5 1.8881 5.5 1.75 C 5.5 1.6119 5.6119 1.5 5.75 1.5 z M 3.5 3 L 7 3 L 7 7 L 3.5 7 C 3.2239 7 3 6.7761 3 6.5 L 3 3.5 C 3 3.2239 3.2239 3 3.5 3 z M 8 3 L 11.5 3 C 11.7761 3 12 3.2239 12 3.5 L 12 6.5 C 12 6.7761 11.7761 7 11.5 7 L 8 7 L 8 3 z M 5 8 C 5.5523 8 6 8.4477 6 9 C 6 9.5523 5.5523 10 5 10 C 4.4477 10 4 9.5523 4 9 C 4 8.4477 4.4477 8 5 8 z M 10 8 C 10.5523 8 11 8.4477 11 9 C 11 9.5523 10.5523 10 10 10 C 9.4477 10 9 9.5523 9 9 C 9 8.4477 9.4477 8 10 8 z M 10.445312 11.994141 C 10.380597 11.999652 10.314981 12.018581 10.253906 12.050781 C 10.030606 12.168381 9.9302313 12.433922 10.019531 12.669922 L 10.189453 13 L 4.8105469 13 L 4.9394531 12.730469 C 5.0371531 12.472169 4.9067375 12.183637 4.6484375 12.085938 C 4.4124375 11.996738 4.1468969 12.097113 4.0292969 12.320312 L 3.0292969 14.320312 C 3.0080969 14.377912 2.9986 14.4387 3 14.5 C 3 14.7761 3.2239 15 3.5 15 C 3.6802 14.999 3.8450875 14.899434 3.9296875 14.740234 L 3.9296875 14.689453 L 4 14.689453 L 4.3105469 14 L 10.689453 14 L 11 14.689453 L 11 14.740234 C 11.0846 14.899434 11.249488 14.999 11.429688 15 C 11.705787 15 11.929688 14.7761 11.929688 14.5 C 11.949587 14.4212 11.949587 14.338566 11.929688 14.259766 L 10.929688 12.259766 C 10.833163 12.076541 10.639459 11.977608 10.445312 11.994141 z","rail-light":"M5.5,0C5,0,5,0.5,5,0.5v1C5,1.777,5.223,2,5.5,2S6,1.777,6,1.5V1h1v2H6c0,0-2,0-2,2v3c0,3,3,3,3,3h1 c0,0,3,0,3-3V5c0-2-2-2-2-2H8V1h1v0.5C9,1.777,9.223,2,9.5,2S10,1.777,10,1.5v-1C10,0,9.5,0,9.5,0H5.5z M7.5,4l2.0449,0.7734L10,6.5 C10.1316,7,9.5,7,9.5,7h-4c0,0-0.6316,0-0.5-0.5l0.4551-1.7266L7.5,4z M7.5,8C7.7761,8,8,8.2239,8,8.5S7.7761,9,7.5,9 S7,8.7761,7,8.5S7.2239,8,7.5,8z M4.125,12L3,15h1.5l0.375-1h5.25l0.375,1H12l-1.125-3h-1.5l0.375,1h-4.5l0.375-1H4.125z","rail-metro":"M5.5,0c0,0-0.75,0-1,1L3,6.5V10c0,1,1,1,1,1h7c0,0,1,0,1-1V6.5L10.5,1c-0.2727-1-1-1-1-1H5.5z M6.5,1.5h2 c0,0,0.5357,0,0.75,1L10,6c0.2146,1.0017-1,1-1,1H6c0,0-1.2146,0.0017-1-1l0.75-3.5C5.9643,1.5,6.5,1.5,6.5,1.5z M5,8 c0.5523,0,1,0.4477,1,1s-0.4477,1-1,1S4,9.5523,4,9S4.4477,8,5,8z M6.75,8h1.5C8.3885,8,8.5,8.1115,8.5,8.25S8.3885,8.5,8.25,8.5 h-1.5C6.6115,8.5,6.5,8.3885,6.5,8.25S6.6115,8,6.75,8z M10,8c0.5523,0,1,0.4477,1,1s-0.4477,1-1,1S9,9.5523,9,9S9.4477,8,10,8z M4.125,12L3,15h1.5l0.375-1h5.25l0.375,1H12l-1.125-3h-1.5l0.375,1h-4.5l0.375-1H4.125z","ranger-station":"M9,0.5l-2,1v3.7734L2,8v6h4v-4h3 v4h4V8L8,5.2734V4l1-0.5l2,1l2-1v-3l-2,1L9,0.5z",recycling:"M2.4556,8.6134C2.118,9.2112,1.501,10.3021,2.593,11.0312c0.3432,0.2268,0.7275,0.3836,1.131,0.4614 C4.0314,11.5382,4.0466,12.0111,3.6855,12c-0.3849-0.0193-2.2596-0.1934-2.5606-1.5995c-0.1556-0.8213,0.0204-1.5571,0.504-2.3556 L2.3263,6.812L1.0196,6.0688L4.5,4v4L3.1941,7.3057L2.4556,8.6134z M6.7,2.034c1.155-0.628,1.823,0.43,2.191,1.007l0.8059,1.2631 L8.431,5.112L12,6.986L11.803,2.96l-1.2639,0.8066L9.779,2.578C9.2572,1.8321,8.875,1.2812,7.944,1.033 C6.307,0.7203,5.3007,2.6194,5.311,2.607c-0.1639,0.2871,0.2156,0.5399,0.451,0.21C6.0202,2.4969,6.339,2.2309,6.7,2.034z M13.294,8.221c-0.0877-0.1897-0.5487-0.1413-0.419,0.267c0.1312,0.3892,0.1845,0.8003,0.157,1.21C12.939,11.01,11.684,11,11,11H9.5 V9.5l-3.5,2l3.488,2.025L9.4926,12H11c0.8906,0.0153,1.5999-0.1759,2.2-0.713C14.4,10.226,13.294,8.221,13.294,8.221z","religious-buddhist":"M13.4978,6.9989h-0.5329c-0.09997-1.10708-0.53528-2.15731-1.2478-3.0105l0.378-0.3784 c0.19605-0.19447,0.19733-0.51105,0.00286-0.7071C11.90698,2.71037,11.59733,2.70518,11.4,2.8912l0,0l-0.0123,0.0123L11.01,3.2815 c-0.85331-0.71298-1.90385-1.14864-3.0113-1.2488V1.5c0-0.27614-0.22386-0.5-0.5-0.5s-0.5,0.22386-0.5,0.5v0.5327 C5.8916,2.13306,4.84144,2.56871,3.9884,3.2815L3.61,2.9C3.41007,2.70952,3.09358,2.71717,2.9031,2.9171 c-0.184,0.19312-0.184,0.49668,0,0.6898l0.3784,0.3775C2.56787,4.83856,2.13216,5.89031,2.0327,6.9989H1.5 c-0.27614,0-0.5,0.22386-0.5,0.5s0.22386,0.5,0.5,0.5h0.5327c0.09987,1.10695,0.535,2.15711,1.2473,3.0103l-0.3779,0.3779 c-0.19538,0.19514-0.19557,0.51173-0.00043,0.70711c0.19053,0.19076,0.49798,0.19611,0.69503,0.01209L3.609,12.094l0.3779-0.3779 c0.8533,0.71312,1.90395,1.1488,3.0115,1.2488v0.5329c0,0.27614,0.22386,0.5,0.5,0.5s0.5-0.22386,0.5-0.5v-0.5329 c1.10719-0.10026,2.15744-0.53592,3.0105-1.2488l0.3779,0.3779c0.19514,0.19538,0.51173,0.19557,0.70711,0.00043 c0.19076-0.19053,0.19611-0.49798,0.01209-0.69503l-0.0123-0.0123l0,0l-0.3779-0.3779c0.71283-0.8531,1.14848-1.90333,1.2488-3.0105 h0.5329c0.27609-0.00544,0.49549-0.23366,0.49006-0.50975C13.98227,7.22064,13.76611,7.00435,13.4978,6.9989z M7.9987,3.0505 c0.83871,0.09248,1.63383,0.42154,2.2926,0.9488l-2.15,2.15c-0.04663-0.0218-0.09436-0.04116-0.143-0.058V3.0505H7.9987z M6.9987,3.0505V6.091c-0.04864,0.01684-0.09637,0.0362-0.143,0.058l-2.15-2.15c0.65897-0.52726,1.45431-0.85622,2.2932-0.9485 H6.9987z M3.9987,4.7062l2.15,2.15c-0.0218,0.04663-0.04116,0.09436-0.058,0.143H3.0505 c0.09243-0.83886,0.42154-1.63413,0.9489-2.293L3.9987,4.7062z M3.0505,7.9987H6.091c0.01687,0.04863,0.03623,0.09636,0.058,0.143 l-2.15,2.15C3.47173,9.63281,3.14276,8.83753,3.0505,7.9987z M6.9989,11.9471c-0.83871-0.09248-1.63383-0.42154-2.2926-0.9488 l2.15-2.15c0.04663,0.0218,0.09436,0.04116,0.143,0.058v3.0405L6.9989,11.9471z M7.9989,11.9471V8.9066 c0.04864-0.01683,0.09638-0.03619,0.143-0.058l2.15,2.15c-0.65895,0.5273-1.4543,0.85627-2.2932,0.9485H7.9989z M10.9989,10.2914 l-2.15-2.15c0.02177-0.04664,0.04113-0.09437,0.058-0.143h3.0415c-0.09276,0.83901-0.42232,1.6343-0.9502,2.293H10.9989z M8.9066,6.9989c-0.01684-0.04864-0.0362-0.09637-0.058-0.143l2.15-2.15c0.52726,0.65877,0.85632,1.45389,0.9488,2.2926H8.9066 V6.9989z","religious-christian":"M6,0.9552V4H3v3h3v8h3V7h3V4H9V1 c0-1-0.9776-1-0.9776-1H6.9887C6.9887,0,6,0,6,0.9552z","religious-jewish":"M7.50049 0.5L5.49949 4H1L3.49949 7.5L1 11H5.49949L7.50049 14.5L9.50049 11H14L11.5005 7.5L14 4H9.50049L7.50049 0.5Z","religious-muslim":"M12.0962 12.0962C9.55779 14.6346 5.44221 14.6346 2.90381 12.0962C0.365398 9.55779 0.365398 5.44221 2.90381 2.90381C5.44221 0.365398 9.55779 0.365398 12.0962 2.90381C12.2675 3.07512 12.4273 3.25362 12.5754 3.43832C10.5566 1.86336 7.63341 2.00437 5.77643 3.86135C3.76685 5.87092 3.76685 9.12908 5.77643 11.1387C7.63341 12.9956 10.5566 13.1366 12.5754 11.5617C12.4273 11.7464 12.2675 11.9249 12.0962 12.0962Z M10.1 6.5H8L9.7 8L9 10.5L11 9L13 10.5L12.3 8L14 6.5H11.9L11 4.5L10.1 6.5Z","religious-shinto":"M12.5,2.5H2.5a.9448.9448,0,0,0-1,1,.9448.9448,0,0,0,1,1H3V12a.9448.9448,0,0,0,1,1,.9448.9448,0,0,0,1-1V8h5v4a.9448.9448,0,0,0,1,1,.9448.9448,0,0,0,1-1V4.5h.5a.9448.9448,0,0,0,1-1,.9448.9448,0,0,0-1-1ZM10,6H8V4.5h2ZM7,6H5V4.5H7Z","residential-community":"m11.8 12.5v-2.5c.7-.1 1.2-.7 1.2-1.5s-.7-1.5-1.5-1.5-1.5.7-1.5 1.5c0 .7.5 1.4 1.2 1.5v2.5h-4.2v-11.5h-5v11.5h-1v.5h13v-.5zm-5.8-2.5h-3v-1h3zm0-2h-3v-1h3zm0-2h-3v-1h3zm0-2h-3v-1h3z",restaurant:"M3.5,0l-1,5.5c-0.1464,0.805,1.7815,1.181,1.75,2L4,14c-0.0384,0.9993,1,1,1,1s1.0384-0.0007,1-1L5.75,7.5 c-0.0314-0.8176,1.7334-1.1808,1.75-2L6.5,0H6l0.25,4L5.5,4.5L5.25,0h-0.5L4.5,4.5L3.75,4L4,0H3.5z M12,0 c-0.7364,0-1.9642,0.6549-2.4551,1.6367C9.1358,2.3731,9,4.0182,9,5v2.5c0,0.8182,1.0909,1,1.5,1L10,14c-0.0905,0.9959,1,1,1,1 s1,0,1-1V0z","restaurant-bbq":"M12.0166,12.5H14.5L12,15V12.5165a1.6189,1.6189,0,0,1-1.1367.4806,1.6,1.6,0,0,1-.9931-.3448A6.7838,6.7838,0,0,1,9.8783,2.3418,1.6179,1.6179,0,0,1,12,2.462V0l2.5,2.5H12.036a1.5927,1.5927,0,0,1,.1225.1289,1.6239,1.6239,0,0,1-.2871,2.2793A3.5148,3.5148,0,0,0,10.75,7.4951a3.5578,3.5578,0,0,0,1.1465,2.6162,1.6352,1.6352,0,0,1,.2325,2.2783C12.0949,12.4315,12.0535,12.4624,12.0166,12.5ZM2.504,0l-1,5.5c-.1464.805,1.7815,1.181,1.75,2L3.004,14a.9625.9625,0,0,0,1,1,.9625.9625,0,0,0,1-1l-.25-6.5c-.0314-.8176,1.7334-1.1808,1.75-2l-1-5.5h-.5l.25,4-.75.5L4.254,0h-.5l-.25,4.5L2.754,4l.25-4Z","restaurant-noodle":"M4.457,11.9892,1,8V7H14V8l-3.4961,3.9891ZM3.9882,2.5a.5.5,0,0,0-1,0v.5671l-1.7969.3675a.25.25,0,1,0,.094.4911l1.7029-.2776v.5662l-1.75.0357a.25.25,0,0,0,0,.5l1.75.0357V5.998h1Zm9.5,1.5-7.5.2625V2.9951l7.594-1.0737a.5.5,0,0,0-.1881-.9822L5.9792,2.4555a.4963.4963,0,0,0-.991.0445v.2276l-.493.1009V3.18l.493-.08V4.2974l-.493.01v.4608L13.4882,5a.5.5,0,0,0,0-1ZM10,13H5v.5757h5Z","restaurant-pizza":"M1.393 7.931.025 7.315A14.05 14.05 0 0 1 7.764-.001l.027.07.511 1.331-.003.001a12.613 12.613 0 0 0-6.906 6.53Zm10.963 4.96L2.42 8.414a11.604 11.604 0 0 1 6.354-6.009l.003-.001.817 2.122c-.028-.002-.052-.016-.081-.016a1.062 1.062 0 1 0 .764 1.793l2.413 6.273a.249.249 0 0 1-.334.316ZM7.426 7.52a.925.925 0 1 0-1.849 0 .925.925 0 0 0 1.849 0Zm3.017 2.03a.925.925 0 1 0-.07.353.924.924 0 0 0 .07-.354Z","restaurant-seafood":"M11.433,10.0889h2.49v.75H11.8525A4.81,4.81,0,0,1,13.4751,13.14l-.71.2422a4.01,4.01,0,0,0-1.74-2.1971,1.7775,1.7775,0,0,1-1.0352.4538L8.4374,12.9852H6.5188L4.9839,11.623a2.0222,2.0222,0,0,1-1.0929-.44,4.0093,4.0093,0,0,0-1.7426,2.1988l-.71-.2422a4.8146,4.8146,0,0,1,1.622-2.3007H.99v-.75H3.4839l.8633-.6764L3.3329,7.7567a2.2738,2.2738,0,0,1-.269.0293,2.0192,2.0192,0,0,1-2.0532-2.08c0-2.08,1.979-4.16,1.979-4.16L2.2531,5.9931l1.7255-.0012L4.9913,2.9852l0,2.9956a2.0936,2.0936,0,0,1-.6993,1.4121l.8536,1.3936L5.23,8.7208a3.8669,3.8669,0,0,1,4.4784,0l.0605.0474.869-1.4152a2.1177,2.1177,0,0,1-.6433-1.3722l0-2.9956.9836,3.0067,1.7547.0012-.7367-4.4466s1.982,2.08,1.982,4.16a2.0211,2.0211,0,0,1-2.0562,2.08,2.3125,2.3125,0,0,1-.3441-.0376L10.5676,9.3945l.8407.6593C11.4212,10.0638,11.4218,10.0782,11.433,10.0889Z","restaurant-sushi":"M5.5,3C5.2239,3,5,3.2239,5,3.5H2.75C1.2265,3.5,0,4.7265,0,6.25c0,0.8274,0.3687,1.5592,0.9434,2.0625 C0.3803,8.6675,0,9.2893,0,10c0,1.0994,0.9006,2,2,2h3.5h2H10c1.0994,0,2-0.9006,2-2c0-0.4883-0.1863-0.9294-0.4805-1.2773 l2.1777,0.9629c0.3716,0.1831,0.8213,0.0303,1.0044-0.3413c0.1831-0.3716,0.0303-0.8213-0.3413-1.0044 c-0.0188-0.0093-0.038-0.0178-0.0576-0.0254l-1.8105-0.8027l1.6309-0.2715c0.4099-0.0599,0.6936-0.4408,0.6337-0.8507 c-0.0544-0.3724-0.3765-0.6469-0.7528-0.6415c-0.0426,0.0003-0.085,0.0042-0.127,0.0117l-2.1309,0.3555 C11.2595,4.9521,10.0387,3.7837,8,3.5488V3.5C8,3.2239,7.7761,3,7.5,3H5.5z M6,4h1v5v2H6V9V4z M9.5,8 c0.259,0,0.4638,0.1974,0.4902,0.4492l0.0762-0.1328c0.1385-0.2399,0.4437-0.3201,0.6836-0.1816s0.3201,0.4418,0.1816,0.6816 l-0.2578,0.4473C10.8727,9.445,11,9.7021,11,10c0,0.5626-0.4374,1-1,1H8V9h1V8.5C9,8.223,9.223,8,9.5,8z M2.4395,8.0703 c0.1934-0.0242,0.3903,0.0662,0.4941,0.2461l0.2012,0.3477C3.226,8.5647,3.3538,8.5,3.5,8.5C3.777,8.5,4,8.723,4,9h1v2H2 c-0.5626,0-1-0.4374-1-1s0.4374-1,1-1h0.1738L2.0684,8.8164C1.9299,8.5765,2.0101,8.2733,2.25,8.1348 C2.31,8.1001,2.375,8.0784,2.4395,8.0703z","road-accident":"M12.6,8.7,11.5,6.5a1.05,1.05,0,0,0-.9-.5H4.4a1.05,1.05,0,0,0-.9.5L2.4,8.7,1.16,9.852a.5.5,0,0,0-.16.366V14.5a.5.5,0,0,0,.5.5h2c.2,0,.5-.2.5-.4V14h7v.5c0,.2.2.5.4.5h2.1a.5.5,0,0,0,.5-.5V10.218a.5.5,0,0,0-.16-.366ZM4.5,7h6l1,2h-8ZM5,11.6c0,.2-.3.4-.5.4H2.4c-.2,0-.4-.3-.4-.5V10.4c.1-.3.3-.5.6-.4l2,.4c.2,0,.4.3.4.5Zm8-.1c0,.2-.2.5-.4.5H10.5c-.2,0-.5-.2-.5-.4v-.7c0-.2.2-.5.4-.5l2-.4c.3-.1.5.1.6.4ZM8,4H7L6,0H9ZM1.1,1.8,3.7.3l1.1,4L4,4.7ZM11.3.3l2.6,1.5L11,4.8l-.9-.5Z",roadblock:"M7.5 14C11.0899 14 14 11.0899 14 7.5C14 3.91015 11.0899 1 7.5 1C3.91015 1 1 3.91015 1 7.5C1 11.0899 3.91015 14 7.5 14ZM12 6V9H3V6H12Z",rocket:"m11.5547 2c-2.14407 0-5.02107 1.471-6.95307 4h-1.6016c-1.1573 0-1.8206.8638-2.277302 1.7773l-.6114 1.2227h1.443402 1.4453l1.5 1.5 1.5 1.5v1.4453 1.4434l1.2227-.6113c.9135-.4568 1.7773-1.1201 1.7773-2.2774v-1.6016c2.52897-1.932 3.99997-4.809 3.99997-6.9531v-1.4453zm-2.55467 3c.5523 0 .99997.4477.99997 1s-.44767 1-.99997 1-1-.4477-1-1 .4477-1 1-1zm-6.5 6-.5.5c-.7222.7222-1 2.5-1 2.5s1.698-.198 2.5-1l.5-.5z",school:"M5.542 3.647 3.106 3l.443-1.63a.505.505 0 0 1 .618-.352l1.46.392a.5.5 0 0 1 .355.613l-.44 1.624Zm-4.52 7.356a.496.496 0 0 1-.005-.276l1.819-6.726 2.435.647-1.819 6.726a.499.499 0 0 1-.143.237l-1.457 1.347a.152.152 0 0 1-.247-.066l-.583-1.889ZM10 5c-2.25 0-3-.75-3-3 2.25 0 3 .75 3 3Zm-1.4 7.984c-1.37.21-3.126-1.706-3.52-3.8L5.969 5.9c.399-.35.903-.533 1.419-.533a2.71 2.71 0 0 1 1.564.489.964.964 0 0 0 1.089-.01 2.438 2.438 0 0 1 1.46-.479c.77 0 1.643.489 2.05 1.201 1.536 2.696-1.194 6.709-3.144 6.417a.867.867 0 0 1-.255-.093 1.427 1.427 0 0 0-1.302 0 .866.866 0 0 1-.25.092Z","school-JP":"M12.5,2.9992h-4v-1a1,1,0,0,0-2,0v1h-4a1,1,0,0,0,0,2h.67A10.8169,10.8169,0,0,0,5.15,8.8105c.3331.4313.6594.8248.9785,1.1936a14.3825,14.3825,0,0,1-2.6074,2.117,1,1,0,1,0,.955,1.7581h0A15.65,15.65,0,0,0,7.5,11.4613a15.65,15.65,0,0,0,3.0239,2.4179,1,1,0,1,0,.9551-1.7578,14.3789,14.3789,0,0,1-2.6073-2.1171c.3191-.3688.6453-.7622.9784-1.1935a10.818,10.818,0,0,0,1.98-3.8116h.67a1,1,0,0,0,0-2ZM8.2671,7.5879c-.2614.3385-.5154.6413-.767.937-.2517-.2957-.5057-.5985-.7672-.937A9.5885,9.5885,0,0,1,5.2676,4.9992H9.7319A9.5789,9.5789,0,0,1,8.2671,7.5879Z",scooter:"M4.908,12a1.5,1.5,0,1,1-2.816,0Zm8.65-6C13.539,6,13,6,13,6V3h.351a.282.282,0,0,0,.223-.148l.268-.536a.334.334,0,0,0,.009-.066A.25.25,0,0,0,13.6,2H13V1.7a.215.215,0,0,0-.2-.2H9.25a.25.25,0,0,0,0,.5H12V6.6L7.6,10H6V7.5A.5.5,0,0,0,5.5,7H5V5H6.75a.25.25,0,0,0,0-.5L2.266,4.034c-.006,0-.01-.007-.016-.007a.25.25,0,0,0-.25.25V4.75A.25.25,0,0,0,2.25,5H3V7H2.5A1.538,1.538,0,0,0,1,8.5v2a.472.472,0,0,0,.442.5C1.461,11,7.5,11,7.5,11L10,10h3.5a.472.472,0,0,0,.5-.442C14,9.539,14,6.5,14,6.5A.472.472,0,0,0,13.558,6ZM12.5,11A1.5,1.5,0,1,0,14,12.5,1.538,1.538,0,0,0,12.5,11Z",shelter:"M13 2L1 6V8L2 7.66667V13H12V11H4V7L13 4V2Z",shoe:"M9.5,7a9.97,9.97,0,0,1-1.315-.948L6.01,3.221a.558.558,0,0,0-1,.279H5V5H3.209a.5.5,0,0,1-.357-.148S2.5,4,2,4H1.5a.5.5,0,0,0-.5.5V9H6.5c1.5,0,2,1,3.5,1h4V9.5C14,8,10.547,7.594,9.5,7Zm0,4a3.131,3.131,0,0,1-1.526-.447A4.1,4.1,0,0,0,6,10H1v1.5a.5.5,0,0,0,.5.5h4a.5.5,0,0,0,.5-.5V11a3.134,3.134,0,0,1,1.526.447A4.1,4.1,0,0,0,9.5,12h4a.5.5,0,0,0,.5-.5V11Z",shop:"m13.33 5h-1.83l-.39-2.33c-.1601-.7182-.7017-1.2905-1.41-1.49-.3493-.1124-.7131-.173-1.08-.18h-2.24c-.3669.007-.7307.0676-1.08.18-.7083.1995-1.2499.7718-1.41 1.49l-.39 2.33h-1.83c-.2761-.0017-.5013.2208-.503.497-.0003.0519.0074.1035.023.153l1.88 6.3c.1964.6246.7753 1.0496 1.43 1.05h6c.651-.0047 1.2247-.4289 1.42-1.05l1.88-6.3c.0829-.2634-.0635-.5441-.3269-.627-.0463-.0146-.0945-.0223-.1431-.023zm-8.81 0 .36-2.17c.0807-.3625.3736-.6395.74-.7.2463-.0776.5019-.1213.76-.13h2.24c.2614.0078.5205.0515.77.13.3664.0605.6593.3375.74.7l.35 2.17h-6z",skateboard:"M1.25 5.25V5H2.75V5.25C2.75 5.94036 3.30964 6.5 4 6.5H11C11.6904 6.5 12.25 5.94036 12.25 5.25V5H13.75V5.25C13.75 6.76878 12.5188 8 11 8H4C2.48122 8 1.25 6.76878 1.25 5.25ZM5 10C5 10.5523 4.55228 11 4 11 3.44772 11 3 10.5523 3 10 3 9.44772 3.44772 9 4 9 4.55228 9 5 9.44772 5 10ZM12 10C12 10.5523 11.5523 11 11 11 10.4477 11 10 10.5523 10 10 10 9.44772 10.4477 9 11 9 11.5523 9 12 9.44772 12 10Z",skiing:"M15,4.5C15,5.3284,14.3284,6,13.5,6S12,5.3284,12,4.5S12.6716,3,13.5,3S15,3.6716,15,4.5z M13.72,11.89 c-0.0623-0.1197-0.2083-0.1684-0.33-0.11c-0.6846,0.4194-1.5208,0.5111-2.28,0.25L4.78,8.86L7.5,7.5v-3L9,5.25v3L10.5,9L12,8.25 L10.5,7.5V3l-3-1.5L6,2.25v4.5L3.28,8.11L0.61,6.78C0.4857,6.7192,0.3358,6.7707,0.275,6.895C0.2142,7.0193,0.2657,7.1692,0.39,7.23 l10.5,5.25c0.3156,0.135,0.6568,0.1998,1,0.19c0.5998-0.0103,1.1889-0.161,1.72-0.44c0.1236-0.0615,0.174-0.2116,0.1125-0.3352 C13.7217,11.8932,13.7208,11.8916,13.72,11.89z",slaughterhouse:"M15 6.1c0 1.376-1.363.694-1.363.694L12.5 7H11a5.31 5.31 0 0 1-1.5 2 3.272 3.272 0 0 1-.523 1.125c-.077.091-.06.2-.068.33l.091 2.3a.264.264 0 0 1-.266.25.242.242 0 0 1-.234-.205L8 9.5H4v3.253a.247.247 0 0 1-.247.247.25.25 0 0 1-.24-.2L3 10v-.5a8.2 8.2 0 0 1-1.426-.1A1.886 1.886 0 0 1 .9 10.826c-.128.083-.148.211-.133.386l.19 1.538a.25.25 0 0 1-.25.25.238.238 0 0 1-.23-.174l-.427-1.7a.35.35 0 0 1 .055-.3c.437-.68-.049-2.55-.049-2.55A1.354 1.354 0 0 1 0 7.922V5.5a2.027 2.027 0 0 1 2.736-1.914s.1.03.142.049a15.15 15.15 0 0 0 3.814.038l.18-.062a1.842 1.842 0 0 1 1.26 0c.078.02.154.05.226.089.1.049.196.106.287.171A1.8 1.8 0 0 0 9.5 4h1V3l.5.5c.5-1.5 2.5-1 2.5-1a1.687 1.687 0 0 0-1.5 1l2.5 2a.612.612 0 0 1 .186-.069.318.318 0 0 1 .314.321V6.1Z",slipway:"m2 10 12 1.495V12H2v-2Zm12-4-1 1v.583L5.196 4.332l.063-.125L6.61 2.845h.831a.35.35 0 0 0 0-.7h-.976a.352.352 0 0 0-.248.103L4.723 3.753a.371.371 0 0 0-.066.09l-.109.219L2 3c0 2-.03 3.958 2.86 4.5C6.28 7.765 13 9 13 9l2-2-1-1Z",snowmobile:"M15 10a1 1 0 0 1-1 1H9.414a1 1 0 0 1-.707-.293L7.146 9.146A.499.499 0 0 0 6.793 9H3.334a1 1 0 0 1-.601-.2L1.386 7.788A1.013 1.013 0 0 1 1 7a.995.995 0 0 1 .472-.844L5 4l1.038-1.692A.5.5 0 0 1 7 2.5V6l1 1h1l5.412-.992a.5.5 0 0 1 .355.915L13 8l1.631 1.224A.99.99 0 0 1 15 10Zm-9.5 0H3.225c-.504 0-.999-.127-1.44-.368L.74 9.062a.5.5 0 0 0-.48.877l1.269.693c.441.242.937.368 1.44.368H5.5a.5.5 0 0 0 0-1Z",soccer:"M11,1.5C11,2.3284,10.3284,3,9.5,3S8,2.3284,8,1.5S8.6716,0,9.5,0S11,0.6716,11,1.5z M11,11c-0.5523,0-1,0.4477-1,1 s0.4477,1,1,1s1-0.4477,1-1S11.5523,11,11,11z M12.84,6.09l-1.91-1.91l0,0C10.8399,4.0675,10.7041,4.0014,10.56,4H3.5 C3.2239,4,3,4.2239,3,4.5S3.2239,5,3.5,5h2.7L3,11.3l0,0c-0.0138,0.066-0.0138,0.134,0,0.2c-0.058,0.2761,0.1189,0.547,0.395,0.605 C3.6711,12.163,3.942,11.9861,4,11.71l0,0L5,10h2l-1.93,4.24l0,0C5.0228,14.3184,4.9986,14.4085,5,14.5 c-0.0552,0.2761,0.1239,0.5448,0.4,0.6c0.2761,0.0552,0.5448-0.1239,0.6-0.4l0,0l4.7-9.38l1.44,1.48 c0.211,0.1782,0.5264,0.1516,0.7046-0.0593C13.0037,6.5523,13.0018,6.2761,12.84,6.09z",square:"M12 13H3C2.4477 13 2 12.5523 2 12V3C2 2.4477 2.4477 2 3 2H12C12.5523 2 13 2.4477 13 3V12C13 12.5523 12.5523 13 12 13Z","square-stroked":"M11.7 3.3V11.7H3.3V3.3H11.7ZM12 2H3C2.4477 2 2 2.4477 2 3V12C2 12.5523 2.4477 13 3 13H12C12.5523 13 13 12.5523 13 12V3C13 2.4477 12.5523 2 12 2Z",stadium:"M7,1v2v1.5v0.5098C4.1695,5.1037,2.0021,5.9665,2,7v4.5c0,1.1046,2.4624,2,5.5,2s5.5-0.8954,5.5-2V7 c-0.0021-1.0335-2.1695-1.8963-5-1.9902V4.0625L11,2.75L7,1z M3,8.1465c0.5148,0.2671,1.2014,0.4843,2,0.6328v2.9668 C3.7948,11.477,3,11.0199,3,10.5V8.1465z M12,8.1484V10.5c0,0.5199-0.7948,0.977-2,1.2461V8.7812 C10.7986,8.6328,11.4852,8.4155,12,8.1484z M6,8.9219C6.4877,8.973,6.9925,8.9992,7.5,9C8.0073,8.9999,8.5121,8.9743,9,8.9238 v2.9844C8.5287,11.964,8.0288,12,7.5,12S6.4713,11.964,6,11.9082V8.9219z",star:"M7.5,0l-2,5h-5l4,3.5l-2,6l5-3.5 l5,3.5l-2-6l4-3.5h-5L7.5,0z","star-stroked":"m7.5 2.69 1.07 2.68.25.63h3l-2 1.75-.5.44.23.63 1 3.13-2.48-1.77-.57-.4-.57.4-2.52 1.77 1-3.13.21-.63-.5-.44-2-1.75h3l.25-.63zm0-2.69-2 5h-5l4 3.5-2 6 5-3.5 5 3.5-2-6 4-3.5h-5z",suitcase:"M4.5 4V2C4.5 1.44772 4.94772 1 5.5 1H9.5C10.0523 1 10.5 1.44772 10.5 2V4H12C12.5523 4 13 4.44772 13 5V11C13 11.5523 12.5523 12 12 12H3C2.44771 12 2 11.5523 2 11V5C2 4.44772 2.44772 4 3 4H4.5ZM5.5 2V4H9.5V2H5.5Z",swimming:"M10.1113,2C9.9989,2,9.6758,2.1465,9.6758,2.1465L6.3535,3.8262 C5.9111,4.0024,5.7358,4.7081,6.002,5.0605l0.9707,1.4082L3.002,8.498L5,9.998l2.502-1.5l2.5,1.5l1.002-1.002l-3-4l2.5566-1.5293 c0.5286-0.2662,0.4434-0.7045,0.4434-0.9707C10.9999,2.2861,10.6437,2,10.1113,2z M12.252,5C11.2847,5,10.5,5.7827,10.5,6.75 s0.7847,1.752,1.752,1.752s1.75-0.7847,1.75-1.752S13.2192,5,12.252,5z M2.5,10L0,11.5V13l2.5-1.5L5,13l2.502-1.5l2.5,1.5L12,11.5 l3,1.5v-1.5L12,10l-1.998,1.5l-2.5-1.5L5,11.5L2.5,10z","table-tennis":"M11.9676,10.2275a3.8116,3.8116,0,0,1-1.9122.9831L3.7678,4.9338A4.0283,4.0283,0,0,1,4.7725,3.0324C7.03.7745,9.98.2235,12.3781,2.6219S14.2255,7.97,11.9676,10.2275Zm-6.987,1.6093A3.8422,3.8422,0,0,1,6.149,11.278,4.5328,4.5328,0,0,1,8,11.4452L3.5456,7a4.4126,4.4126,0,0,1,.1572,1.9223,3.6639,3.6639,0,0,1-.5208,1.1159c-1.072,1.263-2.132,1.727-2.132,2.1879A1.8378,1.8378,0,0,0,2.7739,13.95C3.2348,13.95,3.6917,12.9368,4.9806,11.8368Z",teahouse:"M8.00002 5C8.00002 5 10 4.9 10 3.4 10 2.46598 9.17751 2.20864 8.47606 1.98917 7.95458 1.82601 7.5 1.68378 7.5 1.3 7.5.386843 8 0 8 0 8 0 7 .531581 7 1.5 7 2.21063 7.54045 2.46176 8.05947 2.70292 8.53888 2.92568 9 3.13994 9 3.7 9 4.7 8.00002 5 8.00002 5ZM11.8372 6.67447C11.3755 8.62063 10.7854 11.1073 9 12V14H6V12C4.21455 11.1073 3.62454 8.62063 3.16276 6.67447 3.10728 6.44061 3.05364 6.21455 3 6H12C11.9464 6.21453 11.8927 6.44063 11.8372 6.67447ZM6.99998 4C6.99998 5 5.49998 5 5.49998 5 5.49998 5 6.29295 4.9 6.29295 4.3 6.29295 4.02526 6.01604 3.85489 5.71852 3.67184 5.37315 3.45935 5 3.22977 5 2.8 5 1.9661 5.99998 1.5 5.99998 1.5 5.99998 1.5 5.49998 1.77344 5.49998 2.5 5.49998 2.88823 5.85322 3.04095 6.21687 3.19818 6.60257 3.36494 6.99998 3.53675 6.99998 4Z",telephone:"M4.51,8.88a0.51,0.51,0,0,0,0,.72l0.72,0.72L3.07,12.5,2.7,12.13A2.24,2.24,0,0,1,2,10.69V9.24a2.24,2.24,0,0,1,.7-1.45L7.77,2.72A2.24,2.24,0,0,1,9.22,2h1.45a2.24,2.24,0,0,1,1.45.72l0.36,0.36L10.31,5.26,9.58,4.53a0.51,0.51,0,0,0-.72,0ZM4.13,13.6a1,1,0,0,0,1.4137.0363Q5.5623,13.6186,5.58,13.6l0.72-.72a1,1,0,0,0,.0363-1.4137Q6.3186,11.4477,6.3,11.43Zm7.25-7.28a1,1,0,0,0,1.4137.0363C12.8061,6.3445,13.55,5.6,13.55,5.6a1,1,0,0,0,.0363-1.4137Q13.5686,4.1677,13.55,4.15Z",tennis:"M13.1284,1.87c-1.5418-1.5406-4.5535-.7759-6.28,1.05a6.8282,6.8282,0,0,0-1.88,4.4,5.7275,5.7275,0,0,1-.57,2.72.6814.6814,0,0,0-.67.17l-2.49,2.5a.6941.6941,0,0,0,0,.98l.07.07a.7051.7051,0,0,0,.98,0l2.5-2.49a.683.683,0,0,0,.18-.66,8.5694,8.5694,0,0,1,3.12-.58,6.5487,6.5487,0,0,0,3.99-1.87C14.1084,6.13,14.579,3.3194,13.1284,1.87Zm-2.2-.04a2.3071,2.3071,0,0,1,1.64.61,2.548,2.548,0,0,1,.5,2.44l-2.95-2.96A3.8648,3.8648,0,0,1,10.9284,1.83Zm-4.57,6.81a2.6485,2.6485,0,0,1-.48-2.55l3.04,3.04A2.8522,2.8522,0,0,1,6.3584,8.64Zm2.88.39-3.26-3.27a5.1623,5.1623,0,0,1,.49-1.08l3.85,3.85A5.5093,5.5093,0,0,1,9.2384,9.03Zm1.34-.66-3.94-3.95a5.2032,5.2032,0,0,1,.74-.9l4.1,4.1A5.6869,5.6869,0,0,1,10.5784,8.37Zm1.11-.96-4.1-4.1a5.5714,5.5714,0,0,1,.84-.65l3.92,3.92A5.7187,5.7187,0,0,1,11.6884,7.41Zm.82-1.09L8.6984,2.5a4.1707,4.1707,0,0,1,1.09-.48l3.2,3.2A5.5656,5.5656,0,0,1,12.5084,6.32Z",theatre:"M2,1c0,0-1,0-1,1v5.1582C1,8.8885,1.354,11,4.5,11H5V8L2.5,9c0,0,0-2.5,2.5-2.5V5 c0-0.7078,0.0868-1.3209,0.5-1.7754C5.8815,2.805,6.5046,1.9674,8.1562,2.7539L9,3.3027V2c0,0,0-1-1-1C7.2922,1,6.0224,2,5,2 S2.7865,1,2,1z M3,3c0.5523,0,1,0.4477,1,1S3.5523,5,3,5S2,4.5523,2,4S2.4477,3,3,3z M7,4c0,0-1,0-1,1v5c0,2,1,4,4,4s4-2,4-4V5 c0-1-1-1-1-1c-0.7078,0-1.9776,1-3,1S7.7865,4,7,4z M8,6c0.5523,0,1,0.4477,1,1S8.5523,8,8,8S7,7.5523,7,7S7.4477,6,8,6z M12,6 c0.5523,0,1,0.4477,1,1s-0.4477,1-1,1s-1-0.4477-1-1S11.4477,6,12,6z M7.5,10H10h2.5c0,0,0,2.5-2.5,2.5S7.5,10,7.5,10z",toilet:"M3 1.5a1.5 1.5 0 1 0 3 0 1.5 1.5 0 0 0-3 0ZM11.5 0a1.5 1.5 0 1 1 0 3 1.5 1.5 0 0 1 0-3ZM3.29 4a1 1 0 0 0-.868.504L.566 7.752a.5.5 0 1 0 .868.496l1.412-2.472A345.048 345.048 0 0 0 1 11h2v2.5a.5.5 0 0 0 1 0V11h1v2.5a.5.5 0 0 0 1 0V11h2L6.103 5.687l1.463 2.561a.5.5 0 1 0 .868-.496L6.578 4.504A1 1 0 0 0 5.71 4H3.29ZM9 4.5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 .5.5v5a.5.5 0 0 1-1 0v4a.5.5 0 0 1-1 0v-4h-1v4a.5.5 0 0 1-1 0v-4a.5.5 0 0 1-1 0v-5Z",toll:"M2.5 1C2.22386 1 2 1.22386 2 1.5V2V13H1.5C1.22386 13 1 13.2239 1 13.5C1 13.7761 1.22386 14 1.5 14H8.5C8.77614 14 9 13.7761 9 13.5C9 13.2239 8.77614 13 8.5 13H7V10.0987L13.7761 5.54576C14.0053 5.39175 14.0663 5.08109 13.9123 4.85189L13.6334 4.43687C13.4794 4.20766 13.1688 4.1467 12.9396 4.3007L7 8.29152V2H7.5C7.77614 2 8 1.77614 8 1.5C8 1.22386 7.77614 1 7.5 1H2.5ZM3 3.5C3 3.22386 3.22386 3 3.5 3H5.5C5.77614 3 6 3.22386 6 3.5V7.5C6 7.77614 5.77614 8 5.5 8H3.5C3.22386 8 3 7.77614 3 7.5V3.5Z",town:"m10.651 6.121c-.0445-.0357-.0999-.05516-.157-.05516s-.1125.01946-.157.05516l-2.245 1.808c-.02881.02323-.05204.05263-.06796.08603-.01593.03341-.02414.06997-.02404.10697v4.625c0 .0671.02666.1315.0741.1789.04745.0474.1118.0741.1789.0741h1.494c.0671 0 .13145-.0267.1789-.0741s.0741-.1118.0741-.1789v-1.747h1v1.747c0 .0671.0267.1315.0741.1789.0475.0474.1118.0741.1789.0741h1.494c.0671 0 .1315-.0267.1789-.0741s.0741-.1118.0741-.1789v-4.627c.0007-.03831-.0074-.07627-.0237-.11095s-.0404-.06514-.0703-.08905zm-.651 3.879h-1v-1h1zm2 0h-1v-1h1zm-6.29-9.184997c-.02299-.034654-.05419-.063081-.09083-.082746s-.07758-.029956-.11917-.029956c-.04158 0-.08252.010291-.11916.029956-.03665.019665-.06785.048092-.09084.082746l-3.248 4.120997c-.02752.0415-.04214.09021-.042.14v7.671c-.00013.0331.00626.0659.0188.0965s.031.0585.0543.082c.02331.0235.05102.0422.08154.0549.03053.0128.06327.0195.09636.0196h2.5c.06632-.0008.12964-.0277.17626-.0749.04661-.0471.07275-.1108.07274-.1771v-1.748h1v1.748c0 .0668.02655.1309.07381.1782s.11136.0738.17819.0738h.748v-6c-.00004-.07511.01684-.14926.04938-.21695.03255-.06769.07993-.12718.13862-.17405l1.812-1.609c0-.05-3.29-4.184997-3.29-4.184997zm-1.71 8.184997h-1v-1h1zm0-3h-1v-1h1zm2 3h-1v-1h1zm0-3h-1v-1h1z","town-hall":"M13,4H9l0-3L7.5,0L6,1v3H2L1,5v1h13V5L13,4z M7.5,1.5c0.4,0,0.7,0.3,0.7,0.8S7.9,3,7.5,3S6.7,2.7,6.7,2.2 C6.7,1.8,7.1,1.5,7.5,1.5z M13,7H2v4l-1,1.5V14h13v-1.5L13,11V7z M5,12.5H4V8h1V12.5z M8,12.5H7V8h1V12.5z M11,12.5h-1V8h1V12.5z",triangle:"m7.5385 1c-.2948 0-.4883.1772-.6154.3846l-5.8462 9.5385c-.0769.0769-.0769.2307-.0769.3846 0 .5385.3846.6923.6923.6923h11.6154c.3846 0 .6923-.1538.6923-.6923 0-.1538 0-.2308-.0769-.3846l-5.7693-9.5385c-.1258-.2081-.3656-.3846-.6153-.3846z","triangle-stroked":"m7.52427.500405c-.2814-.0091-.5456.1419-.6907.3948l-5.5 9.869195c-.3118.5434.0614 1.2355.6664 1.2356h11.00003c.605-.0001.9782-.6922.6664-1.2355l-5.50003-9.869195c-.1362-.2374-.378-.3861-.6421-.3949zm-.0243 2.398895 4.12673 7.4704h-8.25343z",tunnel:"M4 2C2.34315 2 1 3.32706 1 4.96406V12.012C1 12.5576 1.44772 13 2 13H3V8.55391C3 6.09839 5.01472 4.10781 7.5 4.10781C9.98528 4.10781 12 6.09842 12 8.55393V13H13C13.5523 13 14 12.5576 14 12.012V4.96406C14 3.32706 12.6569 2 11 2H4ZM11 10V9.04794C11 6.86526 9.43299 5.09583 7.5 5.09583C5.56701 5.09583 4.00001 6.86526 4 9.04794V13L11 10Z",veterinary:"M7.5,6c-2.5,0-3,2.28-3,3.47h0a6.149,6.149,0,0,0-1.7.89,2,2,0,0,0-.4,2.78,2.06,2.06,0,0,0,2.8.4,4,4,0,0,1,2.3-.69,4,4,0,0,1,2.3.69,2,2,0,0,0,2.8-.3,1.929,1.929,0,0,0-.226-2.72c-.024-.021-.049-.041-.074-.06l-.1-.1a8.992,8.992,0,0,0-1.7-.89h0C10.5,8.29,10,6,7.5,6ZM2.08,4.3a1.58,1.58,0,0,0-.76,2A1.52,1.52,0,0,0,2.93,7.7a1.58,1.58,0,0,0,.76-2A1.52,1.52,0,0,0,2.08,4.3Zm10.85,0a1.58,1.58,0,0,1,.76,2,1.52,1.52,0,0,1-1.61,1.4,1.58,1.58,0,0,1-.76-2A1.52,1.52,0,0,1,12.93,4.3Zm-7.85-3c-.68.09-1,.94-.76,1.87A1.77,1.77,0,0,0,5.93,4.7c.68-.09,1-.94.76-1.87A1.77,1.77,0,0,0,5.08,1.3Zm4.85,0c.68.09,1,.94.76,1.87A1.77,1.77,0,0,1,9.07,4.7c-.68-.08-1-.94-.76-1.87A1.769,1.769,0,0,1,9.93,1.3Z",viewpoint:"M6.02,8.425a2.3859,2.3859,0,0,0-.46.44l-4.55-3.5a7.9976,7.9976,0,0,1,1.51-1.51Zm6.46-4.56-3.5,4.55a2.3971,2.3971,0,0,1,.45.45l4.56-3.5A7.945,7.945,0,0,0,12.48,3.865ZM7.3042,10.0129a1.5,1.5,0,1,0,1.6829,1.2914h0A1.5,1.5,0,0,0,7.3042,10.0129ZM6.43,2.235a7.9329,7.9329,0,0,0-2.06.55l2.2,5.32a2.0438,2.0438,0,0,1,.61-.17Zm2.14.01-.75,5.69a2.49,2.49,0,0,1,.61.16l2.2-5.3A7.2129,7.2129,0,0,0,8.57,2.245Z",village:"M6.176 1.176a.249.249 0 0 0-.352 0l-4.4 4.4A.25.25 0 0 0 1.6 6H3v6.751a.25.25 0 0 0 .249.249h3.5A.248.248 0 0 0 7 12.753v-7.43c0-.066.026-.13.073-.176L8.5 3.5 6.176 1.176ZM6 11H5v-1h1v1Zm0-2H5V8h1v1Zm0-3v1H5V6h1Z M12.75 3h-.5a.25.25 0 0 0-.25.25V5l-1.324-1.824a.249.249 0 0 0-.352 0L8.056 5.932A.246.246 0 0 0 8 6.088v6.66a.249.249 0 0 0 .246.252h1.5a.253.253 0 0 0 .254-.252V11h1v1.747a.253.253 0 0 0 .253.253h1.5a.25.25 0 0 0 .247-.249V3.25a.25.25 0 0 0-.25-.25ZM10 8H9V7h1v1Zm2 0h-1V7h1v1Zm-2 2H9V9h1v1Zm2 0h-1V9h1v1Z",volcano:"M8.4844,1.0002 c-0.1464,0.005-0.2835,0.0731-0.375,0.1875L6.4492,3.2619L4.8438,1.7385C4.4079,1.3374,3.7599,1.893,4.0899,2.385l1.666,2.4004 C5.9472,5.061,6.3503,5.0737,6.5586,4.8108C6.7249,4.6009,7,4.133,7.5,4.133s0.7929,0.4907,0.9414,0.6777 c0.175,0.2204,0.4973,0.2531,0.7129,0.0723l1.668-1.4004c0.4408-0.3741,0.0006-1.0735-0.5273-0.8379L9,3.2268V1.5002 C9.0002,1.2179,8.7666,0.9915,8.4844,1.0002L8.4844,1.0002z M5,6.0002L2.0762,11.924C1.9993,12.0009,2,12.155,2,12.3088 c0,0.5385,0.3837,0.6914,0.6914,0.6914h9.6172c0.3846,0,0.6914-0.153,0.6914-0.6914c0-0.1538,0.0008-0.2309-0.0762-0.3848L10,6.0002 c-0.5,0-1,0.5-1,1v0.5c0,0.277-0.223,0.5-0.5,0.5S8,7.7772,8,7.5002v-0.5c0-0.2761-0.2238-0.5-0.5-0.5S7,6.7241,7,7.0002v2 c0,0.277-0.223,0.5-0.5,0.5S6,9.2772,6,9.0002v-2C6,6.5002,5.5,6.0002,5,6.0002z",volleyball:"M13.91,7.94a5.9086,5.9086,0,0,1-.13.94,8.8218,8.8218,0,0,0-2.17-1.49,8.89,8.89,0,0,0-1.4-.56,8.6142,8.6142,0,0,0-1.82-.35.221.221,0,0,0-.08-.01A7.32,7.32,0,0,1,7.5,4.59c-.01-.01-.01-.01,0-.02a7.7573,7.7573,0,0,1,1.52.15,7.0987,7.0987,0,0,1,1.56.5,6.8585,6.8585,0,0,1,1.4.78A7.4165,7.4165,0,0,1,13.91,7.94Zm-1.87-5a6.2232,6.2232,0,0,0-1.85-1.27,4.2725,4.2725,0,0,0-.98-.36,5.6412,5.6412,0,0,0-1.55-.23,1.2882,1.2882,0,0,0-.32,0A7.4263,7.4263,0,0,0,7.21,2.5c0,.2.01.39.02.58a2.28,2.28,0,0,1,.26-.01,2.6438,2.6438,0,0,1,.28.01,8.2865,8.2865,0,0,1,1.49.16,8.9879,8.9879,0,0,1,1.35.37,8.7922,8.7922,0,0,1,1.53.7,10.18,10.18,0,0,1,1.39.97A6.4588,6.4588,0,0,0,12.04,2.94ZM4.01,8.76a9.4084,9.4084,0,0,1-.62-1.37,9.1038,9.1038,0,0,1-.37-1.41,9.1748,9.1748,0,0,1-.16-1.67V4.28a8.455,8.455,0,0,1,.1-1.34A6.28,6.28,0,0,0,1.47,5.3a6.2222,6.2222,0,0,0-.4,2.2c0,.15.01.3.02.44a5.9086,5.9086,0,0,0,.13.94,5.7343,5.7343,0,0,0,.41,1.23c.22-.05.44-.11.65-.17a8.0188,8.0188,0,0,0,1.9-.88C4.12,8.96,4.06,8.86,4.01,8.76Zm2.6-2.28a9,9,0,0,1-.63-1.76,9.135,9.135,0,0,1-.24-1.48c-.02-.25-.03-.49-.03-.74a9.3777,9.3777,0,0,1,.08-1.19,4.2725,4.2725,0,0,0-.98.36,7.7038,7.7038,0,0,0-.42,1.94c-.02.22-.03.44-.03.67a7.2659,7.2659,0,0,0,.06.93,7.4258,7.4258,0,0,0,.37,1.63,6.4705,6.4705,0,0,0,.59,1.28A8.0174,8.0174,0,0,0,6.65,6.55.2522.2522,0,0,1,6.61,6.48ZM12.7,9.93s0-.01-.01,0a7.0128,7.0128,0,0,0-1.7-1.16c-.06.1-.11.19-.17.29a8.783,8.783,0,0,1-.88,1.22,8.9125,8.9125,0,0,1-1.06,1.07,10.4181,10.4181,0,0,1-1.38.98,8.9933,8.9933,0,0,1-2.64,1.02,6.2985,6.2985,0,0,0,5.28,0,5.9674,5.9674,0,0,0,2.42-1.89,4.8258,4.8258,0,0,0,.65-1.03A6.0315,6.0315,0,0,0,12.7,9.93Zm-5.17-2c-.01.01-.02.03-.03.04a9.26,9.26,0,0,1-1.25,1.4,9.5925,9.5925,0,0,1-1.19.91,9.2683,9.2683,0,0,1-2.62,1.18,6.0989,6.0989,0,0,0,.53.61,7.7353,7.7353,0,0,0,3.15-.72,7.3839,7.3839,0,0,0,1.38-.82A7.6429,7.6429,0,0,0,8.75,9.37a7.7441,7.7441,0,0,0,.82-1.15A7.3414,7.3414,0,0,0,7.53,7.93Z",warehouse:"M13.5,5c-0.0762,0.0003-0.1514-0.0168-0.22-0.05L7.5,2L1.72,4.93C1.4632,5.0515,1.1565,4.9418,1.035,4.685 S1.0232,4.1215,1.28,4L7.5,0.92L13.72,4c0.2761,0.0608,0.4508,0.3339,0.39,0.61C14.0492,4.8861,13.7761,5.0608,13.5,5z M5,10H2v3h3 V10z M9,10H6v3h3V10z M13,10h-3v3h3V10z M11,6H8v3h3V6z M7,6H4v3h3V6z","waste-basket":"M12.41,5.58l-1.34,8c-0.0433,0.2368-0.2493,0.4091-0.49,0.41H4.42c-0.2407-0.0009-0.4467-0.1732-0.49-0.41l-1.34-8 C2.5458,5.3074,2.731,5.0506,3.0035,5.0064C3.0288,5.0023,3.0544,5.0002,3.08,5h8.83c0.2761-0.0036,0.5028,0.2174,0.5064,0.4935 C12.4168,5.5225,12.4146,5.5514,12.41,5.58z M13,3.5C13,3.7761,12.7761,4,12.5,4h-10C2.2239,4,2,3.7761,2,3.5S2.2239,3,2.5,3H5V1.5 C5,1.2239,5.2239,1,5.5,1h4C9.7761,1,10,1.2239,10,1.5V3h2.5C12.7761,3,13,3.2239,13,3.5z M9,3V2H6v1H9z",watch:"M12.5,7H12a.426.426,0,0,0-.049.01A4.484,4.484,0,0,0,10,3.76V1.5A.5.5,0,0,0,9.5,1h-4a.5.5,0,0,0-.5.5V3.76a4.5,4.5,0,0,0,0,7.48V13.5a.5.5,0,0,0,.5.5h4a.5.5,0,0,0,.5-.5V11.24a4.486,4.486,0,0,0,1.951-3.25A.426.426,0,0,0,12,8h.5a.5.5,0,0,0,0-1Zm-5,4A3.5,3.5,0,1,1,11,7.5,3.5,3.5,0,0,1,7.5,11ZM9,7H8V5.5a.5.5,0,0,0-1,0v2a.5.5,0,0,0,.5.5H9A.5.5,0,0,0,9,7Z",water:"M7.5 14C9.57688 14 12 12.7117 12 9.43241C12 7.20724 8.53844 2.2883 7.5 1C6.57691 2.2883 3 7.09007 3 9.43241C3 12.7117 5.42312 14 7.5 14Z",waterfall:"M14 1H5C3.34315 1 2 2.34314 2 4V8.87918C1.39704 9.28261 1 9.96937 1 10.75C1 11.9927 2.00736 13 3.25 13C3.7127 13 4.14279 12.8599 4.5 12.6209C4.85721 12.8599 5.2873 13 5.75 13C6.28601 13 6.77826 12.812 7.16413 12.5H7.51743C8.01909 12.8165 8.61403 13 9.25 13C11.0449 13 12.5 11.5449 12.5 9.75002C12.5 8.39777 11.6747 7.23919 10.5 6.74934V5C10.5 3.89543 11.3954 3 12.5 3H14V1ZM11.5 9.75C11.5 10.9926 10.4926 12 9.25 12C8.71418 12 8.2221 11.8127 7.83567 11.5H6.75009C6.52204 11.8036 6.15895 12 5.75 12C5.34105 12 4.97796 11.8036 4.74991 11.5H4.25009C4.02204 11.8036 3.65895 12 3.25 12C2.55964 12 2 11.4404 2 10.75C2 10.1453 2.42944 9.64082 3 9.525V5.75C3 5.33579 3.33579 5 3.75 5C4.16421 5 4.5 5.33579 4.5 5.75V9C4.5 9.27614 4.72386 9.5 5 9.5C5.27614 9.5 5.5 9.27614 5.5 9V6.75C5.5 6.33579 5.83579 6 6.25 6C6.66421 6 7 6.33579 7 6.75V9C7 9.27614 7.22386 9.5 7.5 9.5C7.77614 9.5 8 9.27614 8 9V5.75C8 5.33579 8.33579 5 8.75 5C9.16421 5 9.5 5.33579 9.5 5.75V7.51373C10.625 7.63809 11.5 8.59186 11.5 9.75Z",watermill:"M2,10.2L4,9l2.5,1.5l1.4659-0.8788C7.6592,9.4698,7.3716,9.285,7.1231,9.0536l1.4131-1.4131 C8.7672,7.836,9.0557,7.9606,9.375,7.9874V9.224l0.25,0.1501V7.9874c0.3193-0.0268,0.6078-0.1514,0.8388-0.3469l1.4131,1.4131 c-0.4059,0.3781-0.9044,0.6492-1.4528,0.8003L11.5,10.5l0.6984-0.4191C13.2863,9.2595,14,7.9682,14,6.5C14,4.0147,11.9853,2,9.5,2 C8.1917,2,7.0241,2.5674,6.2018,3.4587L4.5,2L1,5h1V10.2z M12.0536,8.8769l-1.4131-1.4131c0.1954-0.231,0.3201-0.5196,0.3469-0.8388 h1.9999C12.956,7.4946,12.6089,8.2806,12.0536,8.8769z M12.9874,6.375h-1.9999c-0.0268-0.3193-0.1514-0.6078-0.3469-0.8388 l1.4131-1.4131C12.6089,4.7193,12.956,5.5054,12.9874,6.375z M9.625,3.0126c0.8696,0.0314,1.6557,0.3784,2.2519,0.9337 l-1.4131,1.4131c-0.231-0.1954-0.5196-0.32-0.8388-0.3468C9.625,5.0126,9.625,3.0126,9.625,3.0126z M9.375,3.0126v1.9999 C9.0558,5.0394,8.7672,5.164,8.5362,5.3594L7.1231,3.9463C7.7193,3.3911,8.5054,3.044,9.375,3.0126z M6.9464,4.1231l1.4131,1.4131 C8.164,5.7672,8.0394,6.0557,8.0126,6.375h-2C6.044,5.5054,6.3911,4.7193,6.9464,4.1231z M8.0126,6.625 c0.0268,0.3192,0.1515,0.6078,0.3469,0.8388L6.9464,8.8769C6.3911,8.2807,6.044,7.4946,6.0126,6.625H8.0126z M9.002,10L6.5,11.5 L4,10l-2.5,1.5V13L4,11.5L6.5,13l2.502-1.5L11.5,13l2.5-1.5V10l-2.5,1.5L9.002,10z",wetland:"M1.48,4.5C1.905,4.1467,2.4483,3.968,3,4c1.2273-0.0869,2.3154,0.7836,2.5,2l0.78,4.68c-0.6394-0.2893-1.3759-0.2709-2,0.05 L3.48,6C3.1874,5.1347,2.3926,4.5387,1.48,4.5z M7.48,11.24c0.3816-0.3076,0.825-0.5293,1.3-0.65L10,3 c0.2926-0.8653,1.0874-1.4613,2-1.5c-0.4198-0.3485-0.955-0.5269-1.5-0.5C9.2727,0.9131,8.1846,1.7836,8,3l-1.3,7.79 C6.9786,10.9052,7.2408,11.0565,7.48,11.24z M11.8,10.74L11.8,10.74c0.1565-0.1277,0.3238-0.2414,0.5-0.34L13,6 c0.2926-0.8653,1.0874-1.4613,2-1.5c-0.4198-0.3485-0.955-0.5269-1.5-0.5c-1.2273-0.0869-2.3154,0.7836-2.5,2l-0.67,4 C10.8731,10.123,11.3778,10.377,11.8,10.74z M14,12L14,12c-0.4346-0.01-0.8579,0.1394-1.19,0.42l-0.47,0.41 c-0.2847,0.2546-0.7153,0.2546-1,0c-0.15-0.12-0.29-0.26-0.44-0.39c-0.7076-0.5968-1.7424-0.5968-2.45,0 c-0.16,0.13-0.31,0.28-0.47,0.41c-0.2847,0.2546-0.7153,0.2546-1,0c-0.16-0.13-0.31-0.28-0.47-0.41 c-0.7059-0.5912-1.7341-0.5912-2.44,0c-0.15,0.13-0.29,0.27-0.44,0.39c-0.0892,0.0715-0.1909,0.1258-0.3,0.16 c-0.2922,0.0652-0.5969-0.0301-0.8-0.25c-0.2475-0.214-0.5117-0.4079-0.79-0.58C1.5336,12.0421,1.2974,11.9865,1.06,12H1 c-0.2761,0-0.5,0.2239-0.5,0.5S0.7239,13,1,13l0,0c0.246,0.0145,0.4762,0.126,0.64,0.31L2,13.57 c0.6717,0.55,1.6308,0.5747,2.33,0.06c0.19-0.14,0.36-0.32,0.55-0.47c0.2847-0.2546,0.7153-0.2546,1,0l0.39,0.35 c0.6937,0.6189,1.7322,0.6484,2.46,0.07c0.15-0.11,0.27-0.25,0.42-0.37c0.2976-0.3038,0.7851-0.3087,1.0889-0.0111 c0.0037,0.0037,0.0074,0.0074,0.0111,0.0111l0.39,0.35c0.4866,0.4124,1.1485,0.5516,1.76,0.37c0.3825-0.1036,0.7286-0.3113,1-0.6 c0.1549-0.1772,0.3674-0.294,0.6-0.33l0,0c0.2761,0,0.5-0.2239,0.5-0.5S14.2761,12,14,12z",wheelchair:"M12,1.5C12,2.3284,11.3284,3,10.5,3S9,2.3284,9,1.5S9.6716,0,10.5,0S12,0.6716,12,1.5z M2.82,4.87l1.74-1.71l1.85,1.29 L5.67,5.7c1.0747,0.3341,2.0207,0.9904,2.71,1.88l0.88-1.5c0.2295-0.4158,0.0785-0.939-0.3373-1.1685 C8.9218,4.911,8.9209,4.9105,8.92,4.91L8.3,4.54L4.79,2.1C4.5927,1.9594,4.3231,1.9805,4.15,2.15l-2,2 C1.9852,4.3716,2.0312,4.6848,2.2528,4.8496C2.4193,4.9735,2.645,4.9816,2.82,4.87z M8.13,10.94 c-0.0143,1.2308-0.5794,2.3904-1.54,3.16c-0.7118,0.5804-1.6016,0.8982-2.52,0.9C1.8261,15,0.0055,13.1839,0,10.94 c0.0023-0.9231,0.3238-1.8169,0.91-2.53c0.1868-0.232,0.398-0.4432,0.63-0.63c0.7131-0.5862,1.6069-0.9077,2.53-0.91 C6.3139,6.8755,8.13,8.6961,8.13,10.94z M6,12.21C6.7679,11.2051,6.5758,9.7679,5.5709,9C4.7501,8.3727,3.6109,8.3727,2.79,9 C2.5283,9.151,2.311,9.3683,2.16,9.63c-0.6923,1.0584-0.3956,2.4777,0.6628,3.17c0.7615,0.4981,1.7457,0.4981,2.5072,0 C5.5805,12.6365,5.8061,12.4378,6,12.21z M14.2,13.21l-2.49-5C11.5906,7.9251,11.3088,7.7425,11,7.75H8.51 c0.3293,0.4578,0.5856,0.9638,0.76,1.5h1.26l2.29,4.58c0.185,0.3728,0.6372,0.525,1.01,0.34c0.3728-0.185,0.525-0.6372,0.34-1.01 L14.2,13.21z",windmill:"M6,5L3.5,7.5l1,1L7,6V5.5L7.5,5L8,5.5V6l2.5,2.5l1-1L9,5H8.5L8,4.5L8.5,4H9l2.5-2.5l-1-1L8,3v0.5L7.5,4L7,3.5V3L4.5,0.5 l-1,1L6,4h0.5L7,4.5L6.5,5H6z M11.5,13h-1l-1-4l-2-2l-2,2l-1,4h-1C3.2239,13,3,13.2238,3,13.5C3,13.7761,3.2239,14,3.5,14h8 c0.2761,0,0.5-0.2239,0.5-0.5C12,13.2238,11.7761,13,11.5,13z M8,13H7v-1.5024C7,11.2228,7.2228,11,7.4976,11 C7.7751,11,8,11.2249,8,11.5024V13z",zoo:"M8.3879,3.8928C8.3879,3.8928,7.6818,5,7,5H4.5C3.8182,5,3.2016,5.4086,2.7273,5.8636L0.5,8C0.231,8.258,0.0072,8.7681,0,9 c-0.0156,0.5,0,1,0,1s1,0,1-1V8.5l1-1h0.5l0.158,0.2892c0,0-0.9535,1.8244-0.9535,3.5289C1.7046,12,2.3864,12,2.3864,12h0.6818 c0,0,0.3409,0,0-0.3409l-0.3409-0.3409C2.7273,10.6364,3.5002,9.6667,4,9c0,0,0.0168,1.1579,0,2c-0.008,0.4096,0.2721,1,0.6818,1 h0.6818c0,0,0.3409,0,0-0.3409l-0.3409-0.3409C4.7105,10.7495,5.5,8.5,5.5,8.5C6.7716,8.5,7,9,8.5,9l0.3636,2.3182 C8.975,12.0282,9.5,12,9.5,12H11c0.3409,0,0.9611-0.3115,0.3409-0.7736L11,11V9c1.2142-0.1722,2-1,2-2h1c0.3214,0,1,0,1-0.5v-1 l-1.7045-1.6818C12.5444,3.0772,12,2.5,11,2.5C9.5469,2.5,8.8636,3.0688,8.3879,3.8928z"},Qn=Object.keys(z1);function E0(e,n){const t=z1[e];t||console.warn(`[MakiIcon] Unknown icon: "${e}", falling back to "marker"`);const r=t??z1.marker??"",o=(n==null?void 0:n.size)??32,i=(n==null?void 0:n.fill)??"#333",s=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 15 15" width="${o}" height="${o}"><path fill="${i}" d="${r}"/></svg>`;return`data:image/svg+xml,${encodeURIComponent(s)}`}function Rn(e,n){const t={};for(const r of e)t[r]=E0(r,n);return t}const e5="M16 0C7.16344 0 0 7.16344 0 16C0 24.8366 16 40 16 40C16 40 32 24.8366 32 16C32 7.16344 24.8366 0 16 0Z";function A0(e,n){const t=z1[e];t||console.warn(`[MakiIcon] Unknown icon: "${e}", falling back to "marker"`);const r=t??z1.marker??"",o=(n==null?void 0:n.size)??40,i=(n==null?void 0:n.fill)??"#2563eb",s=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 40" width="${o}" height="${Math.round(o*1.25)}"><path d="${e5}" fill="${i}" stroke="white" stroke-width="1.5"/>`+(r?`<svg x="8" y="8" viewBox="0 0 15 15" width="16" height="16"><path fill="white" d="${r}"/></svg>`:"")+"</svg>";return`data:image/svg+xml,${encodeURIComponent(s)}`}function Z0(e,n){const t={};for(const r of e)t[r]=A0(r,n);return t}const K1={primary:{fill:"#2563eb",bg:"rgba(37, 99, 235, 0.2)",ring:"rgba(37, 99, 235, 0.2)"},success:{fill:"#00854d",bg:"rgba(0, 133, 77, 0.2)",ring:"rgba(0, 133, 77, 0.2)"},warning:{fill:"#943700",bg:"rgba(148, 55, 0, 0.2)",ring:"rgba(148, 55, 0, 0.2)"},error:{fill:"#ba1a1a",bg:"rgba(186, 26, 26, 0.2)",ring:"rgba(186, 26, 26, 0.2)"}};function t5(e){return typeof e=="string"&&/<[a-zA-Z][^>]*>/.test(e)}function P0({color:e="primary"}){const{fill:n}=K1[e];return l.jsxs("svg",{viewBox:"0 0 32 40",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:"aimapui-marker-pin",style:{width:32,height:40,display:"block",filter:"drop-shadow(0 4px 3px rgba(0,0,0,0.07)) drop-shadow(0 2px 2px rgba(0,0,0,0.06))"},children:[l.jsx("path",{d:"M16 0C7.16344 0 0 7.16344 0 16C0 24.8366 16 40 16 40C16 40 32 24.8366 32 16C32 7.16344 24.8366 0 16 0Z",fill:n,stroke:"white",strokeWidth:1.5}),l.jsx("circle",{cx:"16",cy:"16",r:"4",fill:"white"})]})}function n5({icon:e,color:n="primary"}){const{fill:t}=K1[n],r=z1[e]??z1.marker??"";return l.jsxs("div",{className:"aimapui-marker-pin aimapui-marker-pin--icon",style:{position:"relative",display:"inline-flex",alignItems:"flex-start",justifyContent:"center",width:32,height:40,filter:"drop-shadow(0 4px 3px rgba(0,0,0,0.07)) drop-shadow(0 2px 2px rgba(0,0,0,0.06))"},children:[l.jsx("svg",{viewBox:"0 0 32 40",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{position:"absolute",inset:0,width:"100%",height:"100%"},children:l.jsx("path",{d:"M16 0C7.16344 0 0 7.16344 0 16C0 24.8366 16 40 16 40C16 40 32 24.8366 32 16C32 7.16344 24.8366 0 16 0Z",fill:t,stroke:"white",strokeWidth:1.5})}),r&&l.jsx("svg",{viewBox:"0 0 15 15",xmlns:"http://www.w3.org/2000/svg",style:{position:"relative",zIndex:1,width:16,height:16,marginTop:8,fill:"white"},children:l.jsx("path",{d:r,style:{fill:"white"}})})]})}function r5({color:e="primary"}){const{fill:n,bg:t}=K1[e];return l.jsx("div",{className:"aimapui-marker-circle",style:{position:"relative",width:24,height:24,borderRadius:"50%",border:"1.5px solid white",boxShadow:"0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.1)",display:"flex",alignItems:"center",justifyContent:"center",background:t,borderColor:n},children:l.jsx("div",{className:"aimapui-marker-circle__inner",style:{width:6,height:6,borderRadius:"50%",background:n}})})}function o5({color:e="primary"}){const{fill:n}=K1[e];return l.jsx("div",{className:"aimapui-marker-dot",style:{width:8,height:8,borderRadius:"50%",border:"1.5px solid white",boxShadow:"0 1px 3px rgba(0,0,0,0.3)",background:n}})}function s5({text:e}){return l.jsx("div",{className:"aimapui-marker-label",style:{position:"absolute",top:"calc(100% + 4px)",left:"50%",transform:"translateX(-50%)",fontFamily:"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace",fontSize:12,lineHeight:"16px",fontWeight:450,color:"#1d1d1f",whiteSpace:"nowrap",pointerEvents:"none",textShadow:"-1px -1px 0 #fff, 1px -1px 0 #fff, -1px 1px 0 #fff, 1px 1px 0 #fff, 0 0 2px #fff, 0 0 4px rgba(255,255,255,0.5)"},children:e})}const I0={center:"translate(-50%, -50%)",top:"translate(-50%, 0)",bottom:"translate(-50%, -100%)",left:"translate(0, -50%)",right:"translate(-100%, -50%)","top-left":"translate(0, 0)","top-right":"translate(-100%, 0)","bottom-left":"translate(0, -100%)","bottom-right":"translate(-100%, -100%)"},i5=[0,0];function l5(e,n,t,r){let o;switch(e){case"pin":o=l.jsx(P0,{color:n});break;case"circle":o=l.jsx(r5,{color:n});break;case"icon":o=l.jsx(n5,{icon:t||"marker",color:n});break;case"dot":o=l.jsx(o5,{color:n});break;default:o=l.jsx(P0,{color:n})}return r?l.jsxs("div",{style:{position:"relative",display:"inline-flex",flexDirection:"column",alignItems:"center"},children:[o,l.jsx(s5,{text:r})]}):o}function A1({longitude:e,latitude:n,variant:t="pin",color:r="primary",icon:o,label:i,content:s,children:a,draggable:c=!1,className:d,overlayContainer:h,onClick:y,onMouseEnter:f,onMouseLeave:g,onDoubleClick:p,onDragEnd:C,onDragging:L,onDragStart:w,selected:S=!1,inactive:x=!1,anchor:Z="bottom",offsets:z=i5,overflowHide:P=!0}){const M=h1(),A=u.useRef(null),O=u.useRef(null),V=u.useRef({lng:e,lat:n}),D=u.useRef({width:0,height:0}),_=z[0]??0,F=z[1]??0,b=u.useRef(null),H=u.useRef(y);H.current=y;const B=u.useRef(f);B.current=f;const Y=u.useRef(g);Y.current=g;const t1=u.useRef(p);t1.current=p;const K=u.useRef(w);K.current=w;const R=u.useRef(L);R.current=L;const a1=u.useRef(C);a1.current=C;const G=u.useMemo(()=>{const I=["aimapui-marker"];return S&&I.push("aimapui-marker--selected"),x&&I.push("aimapui-marker--inactive"),I.push(`aimapui-marker--${r}`),d&&I.push(d),I.join(" ")},[S,x,r,d]),n1=u.useMemo(()=>s||a||l5(t,r,o,i),[s,a,t,r,o,i]),r1=I=>{const W=A.current;if(!W||!I)return;const{lng:l1,lat:X}=V.current;if(isNaN(l1)||isNaN(X))return;let s1;try{s1=I.lngLatToContainer([l1,X])}catch{return}if(!s1||isNaN(s1.x)||isNaN(s1.y))return;const u1=s1.x+_,E=s1.y-F,m=I0[Z]||I0.bottom,k=Math.round(u1),v=Math.round(E);if(W.style.left="0",W.style.top="0",W.style.transform=`translate3d(${k}px, ${v}px, 0) ${m}`,P){const{width:J,height:$}=D.current;W.style.visibility=u1<0||u1>J||E<0||E>$?"hidden":"visible"}};return u.useEffect(()=>{if(!M)return;let I=!1;const W=M.mapService;if(!W){console.error("[Marker] mapService not available");return}const l1=()=>{var k;const m=(k=W.getContainer)==null?void 0:k.call(W);m&&(D.current={width:m.scrollWidth||m.clientWidth||0,height:m.scrollHeight||m.clientHeight||0})},X=()=>{A.current&&r1(W)},s1=(m,k,v)=>{var J;try{(J=m==null?void 0:m.on)==null||J.call(m,k,v)}catch{}},u1=(m,k,v)=>{var J;try{(J=m==null?void 0:m.off)==null||J.call(m,k,v)}catch{}};return l1(),s1(W,"camerachange",X),s1(W,"viewchange",X),s1(M,"resize",l1),(async()=>{var T;if(M.loaded||await new Promise(N=>{M.once("loaded",()=>N())}),I)return;const m=document.createElement("div");m.className=G,m.style.position="absolute",m.style.left="0",m.style.top="0",m.style.whiteSpace="nowrap",m.style.pointerEvents="auto",A.current=m;const k=h??((T=W.getMarkerContainer)==null?void 0:T.call(W));if(k)k.appendChild(m);else{console.error("[Marker] getMarkerContainer not available");return}r1(W);let v=!1,J={lng:0,lat:0};const $=N=>{var o1;if(!c)return;v=!0,W.setMapStatus({dragEnable:!1,zoomEnable:!1});const Q=W.getContainer(),j=(o1=Q==null?void 0:Q.getClientRects())==null?void 0:o1[0];if(j){const c1=j.left,i1=j.top,f1=N.x||N.clientX,x1=N.y||N.clientY;J=W.containerToLngLat([f1-c1,x1-i1])}W.on("mousemove",q),document.addEventListener("mouseup",e1),K.current&&K.current(V.current.lng,V.current.lat)},q=N=>{if(!v)return;const Q=N.lngLat||N.lnglat,{lng:j,lat:o1}=J,{lng:c1,lat:i1}=Q,f1={lng:V.current.lng+c1-j,lat:V.current.lat+i1-o1};V.current=f1,J=Q,r1(W),R.current&&R.current(f1.lng,f1.lat)},e1=()=>{v&&(v=!1,W.setMapStatus({dragEnable:!0,zoomEnable:!0}),W.off("mousemove",q),document.removeEventListener("mouseup",e1),a1.current&&a1.current(V.current.lng,V.current.lat))};m.addEventListener("click",(N=>{var Q;return(Q=H.current)==null?void 0:Q.call(H,N)})),m.addEventListener("mouseenter",(N=>{var Q;return(Q=B.current)==null?void 0:Q.call(B,N)})),m.addEventListener("mouseleave",(N=>{var Q;return(Q=Y.current)==null?void 0:Q.call(Y,N)})),m.addEventListener("dblclick",(N=>{var Q;return(Q=t1.current)==null?void 0:Q.call(t1,N)})),c&&m.addEventListener("mousedown",$),b.current={updatePosition:X,handleDragStart:$,handleDragMove:q,handleDragEnd:e1}})(),()=>{if(I=!0,u1(W,"camerachange",X),u1(W,"viewchange",X),u1(M,"resize",l1),b.current&&c&&W.setMapStatus({dragEnable:!0,zoomEnable:!0}),A.current){const k=O.current,v=A.current;O.current=null,A.current=null,queueMicrotask(()=>{k&&k.unmount(),v.parentNode&&v.parentNode.removeChild(v)})}b.current=null}},[M,Z,_,F,P,c,h]),u.useEffect(()=>{if(!A.current)return;const I=A.current;t5(n1)?I.innerHTML=n1:(O.current||(O.current=ct.createRoot(I)),O.current.render(l.jsx(l.Fragment,{children:n1})))},[n1]),u.useEffect(()=>{A.current&&(A.current.className=G)},[G]),u.useEffect(()=>{if(V.current={lng:e,lat:n},M&&A.current){const I=M.mapService;I&&r1(I)}},[e,n,M]),null}function F0({interactions:e}){const n=h1(),[t,r]=u.useState(null);u.useEffect(()=>{if(!n)return;const s=()=>{try{const c=n.mapService;if(c&&typeof c.getMarkerContainer=="function"){const d=c.getMarkerContainer();if(d){r(d);return}}}catch{}const a=setTimeout(()=>{try{const c=n.mapService;if(c&&typeof c.getMarkerContainer=="function"){const d=c.getMarkerContainer();d&&r(d)}}catch{}},100);return()=>clearTimeout(a)};return n.loaded?s():(n.on("loaded",s),()=>{n.off("loaded",s)})},[n]);const o=e.filter(s=>s.type==="marker"),i=e.filter(s=>s.type==="popup");return l.jsxs(l.Fragment,{children:[t&&o.map((s,a)=>l.jsx(A1,{...s,overlayContainer:t},`marker-${a}`)),t&&i.map((s,a)=>l.jsx(_1,{...s,overlayContainer:t},`popup-${a}`))]})}function Me({title:e,labels:n,colors:t,swatchShape:r="square",grid:o=!1,className:i,interaction:s}){const[a,c]=u.useState(-1),[d,h]=u.useState(new Set),y=p=>{var C;c(p),(C=s==null?void 0:s.onHover)==null||C.call(s,p)},f=()=>{var p;c(-1),(p=s==null?void 0:s.onHover)==null||p.call(s,-1)},g=p=>{var C;h(L=>{const w=new Set(L);return w.has(p)?w.delete(p):w.add(p),w}),(C=s==null?void 0:s.onToggle)==null||C.call(s,p)};return l.jsxs("div",{className:d1(i),children:[e&&l.jsx("div",{className:"mb-2 text-xs font-semibold uppercase tracking-wide text-on-surface-variant",children:e}),l.jsx("div",{className:d1("flex flex-col gap-1",o&&"grid grid-cols-2 gap-x-3 gap-y-1"),children:n.map((p,C)=>{const L=a>=0?a!==C:d.has(C);return l.jsxs("div",{className:d1("flex items-center gap-2 rounded px-1 py-0.5 cursor-pointer select-none transition-[background,opacity] duration-150 hover:bg-primary/[0.06]",L&&"opacity-35"),onMouseEnter:()=>y(C),onMouseLeave:f,onClick:()=>g(C),children:[l.jsx("span",{className:d1("size-3 shrink-0 rounded-sm shadow-[inset_0_0_0_1px_rgba(0,0,0,0.08)] transition-opacity duration-150",r==="circle"&&"rounded-full"),style:{backgroundColor:t[C]??"#ccc"}}),l.jsx("span",{className:"text-xs leading-4 text-on-surface truncate",children:p})]},C)})})]})}function we({title:e,labels:n,colors:t,isContinuous:r=!1,showTicks:o=!1,brushable:i=!1,className:s,interaction:a}){const[c,d]=u.useState([0,100]),h=u.useRef(null),y=t.join(", "),f=u.useCallback(g=>p=>{p.stopPropagation(),p.preventDefault();const C=h.current;if(!C)return;const L=C.getBoundingClientRect().width,w=x=>{const Z=C.getBoundingClientRect(),z=x.clientX-Z.left,P=Math.max(0,Math.min(100,z/L*100));d(M=>{var O;let A;return g==="left"?A=[Math.min(P,M[1]-5),M[1]]:A=[M[0],Math.max(P,M[0]+5)],(O=a==null?void 0:a.onBrush)==null||O.call(a,A),A})},S=()=>{document.removeEventListener("mousemove",w),document.removeEventListener("mouseup",S)};document.addEventListener("mousemove",w),document.addEventListener("mouseup",S)},[a,h]);return l.jsxs("div",{className:d1(s),children:[e&&l.jsx("div",{className:"mb-2 text-xs font-semibold uppercase tracking-wide text-on-surface-variant",children:e}),l.jsxs("div",{className:"flex flex-col gap-1",ref:h,children:[l.jsx("div",{className:d1("flex h-3 rounded overflow-hidden shadow-[inset_0_0_0_1px_rgba(0,0,0,0.06)]",r&&"bg-[length:100%_100%]"),style:r?{background:`linear-gradient(to right, ${y})`}:void 0,children:!r&&t.map((g,p)=>l.jsx("div",{className:"flex-1 relative",style:{backgroundColor:g}},p))}),o&&l.jsx("div",{className:"flex justify-between h-1.5 mt-0.5",children:t.map((g,p)=>p===0?null:l.jsx("div",{className:"w-px h-full bg-outline-variant",style:{position:"absolute",left:`${p/(t.length-1)*100}%`}},p))}),l.jsxs("div",{className:"flex justify-between font-mono text-[11px] leading-3.5 font-[450] text-on-surface-variant",children:[l.jsx("span",{children:n[0]}),n.length>2&&l.jsx("span",{children:n[Math.floor(n.length/2)]}),l.jsx("span",{children:n[n.length-1]})]}),i&&l.jsxs("div",{className:"relative h-3 mt-1 cursor-ew-resize",children:[l.jsx("div",{className:"absolute top-0 h-full border-2 border-primary rounded-sm bg-primary/10 pointer-events-none",style:{left:`${c[0]}%`,width:`${c[1]-c[0]}%`}}),l.jsx("div",{className:"absolute top-1/2 w-2 h-4 bg-primary rounded-sm -translate-x-1/2 -translate-y-1/2 cursor-ew-resize shadow-sm hover:shadow-md hover:shadow-primary/30 transition-shadow duration-150",style:{left:`${c[0]}%`},onMouseDown:f("left")}),l.jsx("div",{className:"absolute top-1/2 w-2 h-4 bg-primary rounded-sm -translate-x-1/2 -translate-y-1/2 cursor-ew-resize shadow-sm hover:shadow-md hover:shadow-primary/30 transition-shadow duration-150",style:{left:`${c[1]}%`},onMouseDown:f("right")})]})]})]})}function He({title:e,colors:n,labels:t,middleLabel:r,className:o}){const i=n.join(", ");return l.jsxs("div",{className:d1(o),children:[e&&l.jsx("div",{className:"mb-2 text-xs font-semibold uppercase tracking-wide text-on-surface-variant",children:e}),l.jsxs("div",{className:"flex flex-col gap-1",children:[l.jsxs("div",{style:{position:"relative"},children:[l.jsx("div",{className:"flex h-3 rounded overflow-hidden shadow-[inset_0_0_0_1px_rgba(0,0,0,0.06)]",style:{background:`linear-gradient(to right, ${i})`}}),l.jsx("div",{style:{position:"absolute",top:-4,left:"50%",transform:"translateX(-50%)",width:1,height:20,background:"var(--color-outline-variant, #c3c6d7)"}}),r&&l.jsx("div",{className:"absolute left-1/2 -translate-x-1/2 -bottom-[18px] font-mono text-[11px] text-on-surface-variant whitespace-nowrap",children:r})]}),l.jsxs("div",{className:"flex justify-between font-mono text-[11px] leading-3.5 font-[450] text-on-surface-variant",style:r?{marginBottom:12}:void 0,children:[l.jsx("span",{children:t[0]}),l.jsx("span",{children:t[1]})]})]})]})}function Se({title:e,ranges:n,colors:t,className:r,interaction:o}){const[i,s]=u.useState(-1),[a,c]=u.useState(new Set),d=f=>{var g;s(f),(g=o==null?void 0:o.onHover)==null||g.call(o,f)},h=()=>{var f;s(-1),(f=o==null?void 0:o.onHover)==null||f.call(o,-1)},y=f=>{var g;c(p=>{const C=new Set(p);return C.has(f)?C.delete(f):C.add(f),C}),(g=o==null?void 0:o.onToggle)==null||g.call(o,f)};return l.jsxs("div",{className:d1(r),children:[e&&l.jsx("div",{className:"mb-2 text-xs font-semibold uppercase tracking-wide text-on-surface-variant",children:e}),l.jsx("div",{className:"flex flex-col gap-1.5",children:n.map(([f,g],p)=>{const C=i>=0?i!==p:a.has(p);return l.jsxs("div",{className:d1("flex items-center gap-2 cursor-pointer select-none transition-opacity duration-150 hover:opacity-80",C&&"opacity-35"),onMouseEnter:()=>d(p),onMouseLeave:h,onClick:()=>y(p),children:[l.jsx("span",{className:"w-6 h-3 shrink-0 rounded-sm shadow-[inset_0_0_0_1px_rgba(0,0,0,0.06)]",style:{backgroundColor:t[p]??"#ccc"}}),l.jsxs("span",{className:"font-mono text-[11px] leading-3.5 text-on-surface-variant",children:["[",f,", ",g,")"]})]},p)})})]})}function ze({title:e,fillColor:n="#4A90D9",items:t,className:r}){const o=Math.max(...t.map(i=>i.size),1);return l.jsxs("div",{className:d1(r),children:[e&&l.jsx("div",{className:"mb-2 text-xs font-semibold uppercase tracking-wide text-on-surface-variant",children:e}),l.jsxs("div",{className:"flex flex-col gap-2",children:[l.jsx("div",{className:"flex items-end gap-2 px-1",children:t.map((i,s)=>l.jsx("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"flex-end",height:o},children:l.jsx("div",{className:"rounded-full shrink-0 shadow-[inset_0_0_0_1px_rgba(0,0,0,0.06)]",style:{width:i.size,height:i.size,backgroundColor:n,opacity:.85}})},s))}),l.jsx("div",{className:"flex items-end gap-2 mt-1",children:t.map((i,s)=>l.jsx("span",{className:"font-mono text-[11px] leading-3.5 text-on-surface-variant whitespace-nowrap",children:i.label},s))})]})]})}function Ve({title:e,color:n="#4A90D9",items:t,className:r,interaction:o}){const[i,s]=u.useState(-1),[a,c]=u.useState(new Set),d=f=>{var g;s(f),(g=o==null?void 0:o.onHover)==null||g.call(o,f)},h=()=>{var f;s(-1),(f=o==null?void 0:o.onHover)==null||f.call(o,-1)},y=f=>{var g;c(p=>{const C=new Set(p);return C.has(f)?C.delete(f):C.add(f),C}),(g=o==null?void 0:o.onToggle)==null||g.call(o,f)};return l.jsxs("div",{className:d1(r),children:[e&&l.jsx("div",{className:"mb-2 text-xs font-semibold uppercase tracking-wide text-on-surface-variant",children:e}),l.jsx("div",{className:"flex flex-col gap-1.5",children:t.map((f,g)=>{const p=i>=0?i!==g:a.has(g);return l.jsxs("div",{className:d1("flex items-center gap-2.5 py-0.5 cursor-pointer select-none transition-opacity duration-150 hover:opacity-80",p&&"opacity-35"),onMouseEnter:()=>d(g),onMouseLeave:h,onClick:()=>y(g),children:[l.jsx("div",{className:"w-7 shrink-0 rounded-full shadow-[0_0_0_1px_rgba(0,0,0,0.06)]",style:{height:f.width,backgroundColor:n,opacity:.85}}),l.jsx("span",{className:"text-xs leading-4 text-on-surface whitespace-nowrap",children:f.label})]},g)})})]})}function ke({title:e,labels:n,fillColor:t="#4A90D9",className:r}){return l.jsxs("div",{className:d1(r),children:[e&&l.jsx("div",{className:"mb-2 text-xs font-semibold uppercase tracking-wide text-on-surface-variant",children:e}),l.jsxs("div",{className:"flex flex-col gap-2",children:[l.jsx("div",{className:"flex items-end gap-2 px-1",children:n.map(([s,a],c)=>{const h=6+c/Math.max(n.length-1,1)*18;return l.jsx("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"flex-end",height:24},children:l.jsx("div",{className:"rounded-full shrink-0 shadow-[inset_0_0_0_1px_rgba(0,0,0,0.06)]",style:{width:h,height:h,backgroundColor:t,opacity:.85}})},c)})}),l.jsx("div",{className:"flex items-end gap-2 mt-1",children:n.map(([s,a],c)=>l.jsxs("span",{className:"font-mono text-[11px] leading-3.5 text-on-surface-variant whitespace-nowrap",children:[s,"–",a]},c))})]})]})}function T0(e){return/^(https?:|\/\/|data:)/i.test(e)}function Ee({title:e,items:n,className:t,interaction:r}){const[o,i]=u.useState(-1),[s,a]=u.useState(new Set),c=y=>{var f;i(y),(f=r==null?void 0:r.onHover)==null||f.call(r,y)},d=()=>{var y;i(-1),(y=r==null?void 0:r.onHover)==null||y.call(r,-1)},h=y=>{var f;a(g=>{const p=new Set(g);return p.has(y)?p.delete(y):p.add(y),p}),(f=r==null?void 0:r.onToggle)==null||f.call(r,y)};return l.jsxs("div",{className:d1(t),children:[e&&l.jsx("div",{className:"mb-2 text-xs font-semibold uppercase tracking-wide text-on-surface-variant",children:e}),l.jsx("div",{className:"flex flex-col gap-1",children:n.map((y,f)=>{const g=o>=0?o!==f:s.has(f);return l.jsxs("div",{className:d1("flex items-center gap-2 px-1 py-0.5 rounded cursor-pointer select-none transition-[background,opacity] duration-150 hover:bg-primary/[0.06]",g&&"opacity-35"),onMouseEnter:()=>c(f),onMouseLeave:d,onClick:()=>h(f),children:[T0(y.icon)?l.jsx("img",{src:y.icon,alt:y.label,className:"size-5 object-contain shrink-0",onError:p=>{const C=p.target;C.style.display="none";const L=C.nextElementSibling;L&&(L.style.display="flex")}}):l.jsx("span",{className:"size-5 flex items-center justify-center shrink-0 text-base leading-none",children:y.icon}),T0(y.icon)&&l.jsx("span",{className:"size-5 hidden items-center justify-center shrink-0 text-base leading-none text-on-surface-variant",children:"□"}),l.jsx("span",{className:"text-xs leading-4 text-on-surface",children:y.label})]},f)})})]})}function N0({legends:e,className:n,style:t,interaction:r}){return e.length?l.jsx("div",{className:d1("absolute z-20 bottom-6 left-6 max-h-[40%] overflow-y-auto rounded-xl border border-outline-variant/30 bg-surface/80 backdrop-blur-md p-3 px-3.5 text-on-surface shadow-lg scrollbar-thin scrollbar-track-transparent scrollbar-thumb-outline-variant",n),style:t,children:l.jsx("div",{className:"flex flex-col gap-4 [&>*+*]:border-t [&>*+*]:border-outline-variant/20 [&>*+*]:pt-4",children:e.map((o,i)=>l.jsx(a5,{legend:o,interaction:r},`legend-${i}`))})}):null}function a5({legend:e,interaction:n}){switch(e.type){case"categories":return l.jsx(Me,{...e,interaction:n});case"ramp":return l.jsx(we,{...e,interaction:n});case"diverging":return l.jsx(He,{...e,interaction:n});case"threshold":return l.jsx(Se,{...e,interaction:n});case"size":return l.jsx(ze,{...e,interaction:n});case"lineWidth":return l.jsx(Ve,{...e,interaction:n});case"proportion":return l.jsx(ke,{...e,interaction:n});case"icon":return l.jsx(Ee,{...e,interaction:n});default:return null}}const _0=u.createContext({isMobile:!1,breakpoint:768,width:typeof window<"u"?window.innerWidth:1024,schema:void 0});function c5({responsive:e,children:n}){const[t,r]=u.useState(typeof window<"u"?window.innerWidth:1024);u.useEffect(()=>{const a=()=>r(window.innerWidth);return window.addEventListener("resize",a),()=>window.removeEventListener("resize",a)},[]);const o=(e==null?void 0:e.breakpoint)??768,i=t<o,s=u.useMemo(()=>({isMobile:i,breakpoint:o,width:t,schema:e}),[i,o,t,e]);return l.jsx(_0.Provider,{value:s,children:n})}function D0(){return u.useContext(_0)}function $0({config:e,className:n}){const t=h1(),{items:r,position:o="bottom"}=e,i=c=>{switch(c){case"zoomIn":t==null||t.zoomIn();break;case"zoomOut":t==null||t.zoomOut();break;case"locate":navigator.geolocation&&navigator.geolocation.getCurrentPosition(d=>{t==null||t.setCenter([d.coords.longitude,d.coords.latitude]),t==null||t.setZoom(14)});break;case"reset":t==null||t.setCenter([105,35]),t==null||t.setZoom(4);break}},s={zoomIn:l.jsx("svg",{viewBox:"0 0 24 24",className:"w-6 h-6",fill:"none",stroke:"currentColor",strokeWidth:2,children:l.jsx("path",{d:"M12 5v14m-7-7h14"})}),zoomOut:l.jsx("svg",{viewBox:"0 0 24 24",className:"w-6 h-6",fill:"none",stroke:"currentColor",strokeWidth:2,children:l.jsx("path",{d:"M5 12h14"})}),locate:l.jsxs("svg",{viewBox:"0 0 24 24",className:"w-6 h-6",fill:"none",stroke:"currentColor",strokeWidth:2,children:[l.jsx("circle",{cx:"12",cy:"12",r:"3"}),l.jsx("path",{d:"M12 2v4m0 12v4m10-10h-4M6 12H2"})]}),reset:l.jsxs("svg",{viewBox:"0 0 24 24",className:"w-6 h-6",fill:"none",stroke:"currentColor",strokeWidth:2,children:[l.jsx("path",{d:"M3 12a9 9 0 1 1 3.3 6.9"}),l.jsx("path",{d:"M3 22v-7h7"})]}),layers:l.jsx("svg",{viewBox:"0 0 24 24",className:"w-6 h-6",fill:"none",stroke:"currentColor",strokeWidth:2,children:l.jsx("path",{d:"M12 2L2 7l10 5 10-5-10-5zM2 17l10 5 10-5M2 12l10 5 10-5"})})},a={zoomIn:"放大",zoomOut:"缩小",locate:"定位",reset:"复位",layers:"图层"};return l.jsx("div",{className:d1("aimapui-mobile-toolbar pointer-events-none",o==="bottom"?"aimapui-mobile-toolbar--bottom":"aimapui-mobile-toolbar--top",n),children:l.jsx("div",{className:"aimapui-mobile-toolbar__bar pointer-events-auto",children:r.map((c,d)=>l.jsxs("button",{onClick:()=>i(c),className:"aimapui-mobile-toolbar__button group",style:{background:"none",border:"none",cursor:"pointer"},"aria-label":a[c]??c,title:a[c]??c,children:[l.jsx("span",{className:"aimapui-mobile-toolbar__icon",children:s[c]}),l.jsx("span",{className:"aimapui-mobile-toolbar__label",children:a[c]??c})]},`${c}-${d}`))})})}function O0({legends:e,className:n,interaction:t}){const[r,o]=u.useState(!1);return e.length?l.jsx("div",{className:d1("aimapui-mobile-sheet-legend",n),children:l.jsxs("div",{className:"aimapui-mobile-sheet-legend__panel",children:[l.jsx("div",{className:"aimapui-mobile-sheet-legend__handle","aria-hidden":"true"}),l.jsxs("button",{onClick:()=>o(!r),className:"aimapui-mobile-sheet-legend__toggle",style:{background:"none",border:"none",cursor:"pointer"},children:[l.jsxs("span",{className:"aimapui-mobile-sheet-legend__toggle-copy",children:[l.jsx("span",{className:"aimapui-mobile-sheet-legend__eyebrow",children:"Legend Panel"}),l.jsxs("span",{className:"aimapui-mobile-sheet-legend__title-row",children:[l.jsx("span",{className:"aimapui-mobile-sheet-legend__title",children:"图例"}),l.jsxs("span",{className:"aimapui-mobile-sheet-legend__badge",children:[e.length," 项"]})]})]}),l.jsx("span",{className:"aimapui-mobile-sheet-legend__chevron-shell","aria-hidden":"true",children:l.jsx("svg",{viewBox:"0 0 24 24",className:d1("aimapui-mobile-sheet-legend__chevron",r&&"aimapui-mobile-sheet-legend__chevron--expanded"),fill:"none",stroke:"currentColor",strokeWidth:2,children:l.jsx("path",{d:"M6 9l6 6 6-6"})})})]}),l.jsx("div",{className:d1("aimapui-mobile-sheet-legend__content custom-scrollbar",r?"aimapui-mobile-sheet-legend__content--expanded":"aimapui-mobile-sheet-legend__content--collapsed"),children:e.map((i,s)=>l.jsx("div",{className:"aimapui-mobile-sheet-legend__section",children:l.jsx(u5,{legend:i,interaction:t})},`mobile-legend-${s}`))})]})}):null}function u5({legend:e,interaction:n}){switch(e.type){case"categories":return l.jsx(Me,{...e,interaction:n});case"ramp":return l.jsx(we,{...e,interaction:n});case"diverging":return l.jsx(He,{...e,interaction:n});case"threshold":return l.jsx(Se,{...e,interaction:n});case"size":return l.jsx(ze,{...e,interaction:n});case"lineWidth":return l.jsx(Ve,{...e,interaction:n});case"proportion":return l.jsx(ke,{...e,interaction:n});case"icon":return l.jsx(Ee,{...e,interaction:n});default:return null}}function d5({map:e,schema:n,theme:t="light",onSceneReady:r,onLayerClick:o,onLayerMouseMove:i,onLayerMouseEnter:s,onLayerMouseLeave:a,onMapMove:c,onMapZoom:d,autoFit:h,events:y,children:f,className:g,style:p}){const C=u.useRef(null),L=u.useMemo(()=>n?ee($e(n)):{map:f5(e??{basemap:"gaode"}),layers:[],controls:[],interactions:[],legends:[]},[n,e]),w=!n&&!!e,S=u.useMemo(()=>({onClick:o,onMouseMove:i,onMouseEnter:s,onMouseLeave:a}),[o,i,s,a]),x=u.useMemo(()=>({onMove:c,onZoom:d}),[c,d]),Z=u.useCallback(z=>{r==null||r(z)},[r]);return l.jsx(Ye,{defaultTheme:t,target:"container",children:l.jsx(je,{schema:L,children:l.jsx(qe,{events:y,children:l.jsx(xt,{responsive:L.responsive,children:l.jsx(p5,{schema:L,isComposableMode:w,autoFit:h,onSceneReady:Z,layerEventHandlers:S,mapEventHandlers:x,containerRef:C,className:g,style:p,children:f})})})})})}function h5(){const e=h1();return u.useEffect(()=>{if(!e)return;let n=!1,t=null,r=null;const o=new Set,i=()=>{var L,w;if(n)return;const h=((L=e.getLayers)==null?void 0:L.call(e))??[];if(h.length===0)return;let y=1/0,f=1/0,g=-1/0,p=-1/0,C=!1;for(const S of h)try{const x=(w=S.getSource)==null?void 0:w.call(S),Z=x==null?void 0:x.extent;if(!Z||!Array.isArray(Z)||Z.length<4)continue;const[z,P,M,A]=Z;if(!isFinite(z)||!isFinite(P)||!isFinite(M)||!isFinite(A)||z>=M||P>=A)continue;y=Math.min(y,z),f=Math.min(f,P),g=Math.max(g,M),p=Math.max(p,A),C=!0}catch{}if(!(!C||y>=g||f>=p))try{e.fitBounds([[y,f],[g,p]]),n=!0}catch{}},s=()=>{n||(t&&clearTimeout(t),t=setTimeout(i,200))};let a=0;const c=50,d=()=>{var y;if(n)return;a+=1;const h=((y=e.getLayers)==null?void 0:y.call(e))??[];for(const f of h)o.has(f)||(o.add(f),f.inited&&s(),typeof f.on=="function"&&f.on("inited",s));!n&&a<c&&(r=setTimeout(d,100))};return r=setTimeout(d,100),()=>{t&&clearTimeout(t),r&&clearTimeout(r)}},[e]),null}function f5(e){return{basemap:e.basemap??"gaode",token:e.token,style:e.style,center:e.center??[105,35],zoom:e.zoom??4,pitch:e.pitch??0,rotation:e.rotation??0,minZoom:e.minZoom,maxZoom:e.maxZoom,bounds:e.bounds,gestureConfig:e.gestureConfig}}function p5({schema:e,isComposableMode:n,autoFit:t,onSceneReady:r,layerEventHandlers:o,mapEventHandlers:i,containerRef:s,className:a,style:c,children:d}){var L,w;const{isMobile:h}=D0(),[y,f]=u.useState(e.layers??[]),g=u.useMemo(()=>{var x,Z;if(n||!h||!((Z=(x=e.responsive)==null?void 0:x.mobile)!=null&&Z.layers))return e.layers;const S=e.responsive.mobile.layers;if("*"in S){const z=S["*"];return e.layers.map(P=>({...P,...z,id:P.id}))}return e.layers.map(z=>z.id&&S[z.id]?{...z,...S[z.id],id:z.id}:z)},[e.layers,e.responsive,h,n]),p=u.useMemo(()=>{var Z,z;const S=e.controls??[];if(!h||!((z=(Z=e.responsive)==null?void 0:Z.mobile)!=null&&z.controls))return S;const x=e.responsive.mobile.controls;return x.hide?S.filter(P=>!x.hide.includes(P.type)):S},[e.controls,e.responsive,h]),C=u.useCallback((S,x)=>{f(Z=>Z.map(z=>z.id===S?{...z,visible:x}:z))},[]);return l.jsx("div",{ref:s,className:a??"aimapui-container",style:c??{width:"100%",height:"100%"},children:l.jsxs(Re,{mapSchema:e.map,onSceneReady:r,mapEventHandlers:i,events:e.events,style:{width:"100%",height:"100%"},children:[t&&l.jsx(h5,{}),!n&&g.length>0&&l.jsx(a0,{layers:g,eventHandlers:o}),!n&&l.jsx(k0,{controls:p,layers:g,onLayerToggle:C,containerRef:s}),!n&&e.interactions&&e.interactions.length>0&&l.jsx(F0,{interactions:e.interactions}),!n&&(h?e.legends&&e.legends.length>0&&l.jsx(O0,{legends:e.legends}):l.jsx(N0,{legends:e.legends??[]})),!n&&h&&((w=(L=e.responsive)==null?void 0:L.mobile)==null?void 0:w.toolbar)&&l.jsx($0,{config:e.responsive.mobile.toolbar}),n?l.jsx(g5,{children:d}):null]})})}function g5({children:e}){const{controls:n,others:t}=u.useMemo(()=>{const r=[],o=[];return u.Children.forEach(e,(i,s)=>{u.isValidElement(i)&&y1.check(i)?r.push(i):o.push(i)}),{controls:r,others:o}},[e]);return l.jsxs(l.Fragment,{children:[n.length>0&&l.jsx(ce,{children:n}),t]})}function D1(e,n){if(e===n)return!1;if(e==null||n==null||typeof e!=typeof n||typeof e!="object")return!0;try{return JSON.stringify(e)!==JSON.stringify(n)}catch{return!0}}function y5(e,n){const t=D1(e.map,n.map),r=new Map;(e.layers??[]).forEach(L=>{L.id&&r.set(L.id,L)});const o=new Map;(n.layers??[]).forEach(L=>{L.id&&o.set(L.id,L)});const i=[],s=[],a=[];(n.layers??[]).forEach((L,w)=>{const S=L.id??`__index_${w}`;if(!r.has(S))i.push(L);else{const x=r.get(S);D1(x,L)&&a.push({id:S,prev:x,next:L})}}),(e.layers??[]).forEach((L,w)=>{const S=L.id??`__index_${w}`;o.has(S)||s.push(S)});const c=e.controls??[],d=n.controls??[],h=[],y=[],f=[],g=Math.max(c.length,d.length);for(let L=0;L<g;L++)L>=c.length?h.push(d[L]):L>=d.length?y.push(c[L]):D1(c[L],d[L])&&f.push({index:L,prev:c[L],next:d[L]});const p=D1(e.interactions,n.interactions),C=D1(e.legends,n.legends);return{mapChanged:t,layersAdded:i,layersRemoved:s,layersUpdated:a,controlsAdded:h,controlsRemoved:y,controlsUpdated:f,interactionsChanged:p,legendsChanged:C}}function m5(e){const n=[];return e.map?n.push(...C5(e.map)):n.push({path:"map",message:"map is required",severity:"error"}),!e.layers||!Array.isArray(e.layers)?n.push({path:"layers",message:"layers must be an array",severity:"error"}):e.layers.forEach((t,r)=>{n.push(...v5(t,r))}),e.controls&&(Array.isArray(e.controls)?e.controls.forEach((t,r)=>{t.type||n.push({path:`controls[${r}].type`,message:"control type is required",severity:"error"})}):n.push({path:"controls",message:"controls must be an array",severity:"error"})),e.interactions&&(Array.isArray(e.interactions)?e.interactions.forEach((t,r)=>{(t.type==="marker"||t.type==="popup")&&(typeof t.longitude!="number"||typeof t.latitude!="number")&&n.push({path:`interactions[${r}]`,message:"marker/popup requires longitude and latitude as numbers",severity:"error"})}):n.push({path:"interactions",message:"interactions must be an array",severity:"error"})),e.legends&&(Array.isArray(e.legends)?e.legends.forEach((t,r)=>{t.type||n.push({path:`legends[${r}].type`,message:"legend type is required",severity:"error"})}):n.push({path:"legends",message:"legends must be an array",severity:"error"})),n}function C5(e){const n=[],t=["gaode","mapbox","maplibre","tianditu","tencent","baidu","google","map"];if(t.includes(e.basemap)||n.push({path:"map.basemap",message:`Invalid basemap "${e.basemap}". Valid values: ${t.join(", ")}`,severity:"error"}),e.center){const[r,o]=e.center;(r<-180||r>180)&&n.push({path:"map.center[0]",message:"Longitude must be between -180 and 180",severity:"error"}),(o<-90||o>90)&&n.push({path:"map.center[1]",message:"Latitude must be between -90 and 90",severity:"error"})}return e.zoom!==void 0&&(e.zoom<0||e.zoom>22)&&n.push({path:"map.zoom",message:"Zoom must be between 0 and 22",severity:"warning"}),["gaode","mapbox","tianditu","tencent","baidu","google"].includes(e.basemap)&&!e.token&&n.push({path:"map.token",message:`basemap "${e.basemap}" requires a token`,severity:"warning"}),n}function v5(e,n){const t=[],r=`layers[${n}]`,o=["point","line","polygon","heatmap","raster","image"];return e.type?o.includes(e.type)||t.push({path:`${r}.type`,message:`Invalid layer type "${e.type}". Valid values: ${o.join(", ")}`,severity:"error"}):t.push({path:`${r}.type`,message:"layer type is required",severity:"error"}),e.source===void 0&&e.source,e.colorField&&!e.colorValues&&!e.color&&t.push({path:`${r}.colorValues`,message:"colorField is set but colorValues is not. L7 will use default scale.",severity:"warning"}),e.sizeField&&!e.sizeValues&&e.size===void 0&&t.push({path:`${r}.sizeValues`,message:"sizeField is set but sizeValues is not. L7 will use default scale.",severity:"warning"}),t}const L5={$schema:"http://json-schema.org/draft-07/schema#",title:"AiMapSchema",description:"Schema-driven React map visualization component configuration",type:"object",required:["map","layers"],properties:{map:{type:"object",required:["basemap"],properties:{basemap:{type:"string",enum:["gaode","mapbox","maplibre","tianditu","tencent","baidu","google","map"],description:"Map base tile provider"},token:{type:"string",description:"API token for the map service"},style:{type:"string",description:"Map style preset (light/dark/normal/darkblue/satellite) or custom URL"},center:{type:"array",items:{type:"number"},minItems:2,maxItems:2,description:"Map center [longitude, latitude], default [105, 35]"},zoom:{type:"number",description:"Map zoom level, default 4"},pitch:{type:"number",description:"Map pitch in degrees, default 0"},rotation:{type:"number",description:"Map rotation in degrees, default 0"},minZoom:{type:"number",description:"Minimum zoom level"},maxZoom:{type:"number",description:"Maximum zoom level"},bounds:{type:"array",items:{type:"array",items:{type:"number"},minItems:2,maxItems:2},minItems:2,maxItems:2,description:"Initial bounds [[swLng, swLat], [neLng, neLat]]"},gestureConfig:{type:"object",properties:{dragPan:{type:"boolean"},pinchZoom:{type:"boolean"},dragRotate:{type:"boolean"}}}}},layers:{type:"array",description:"Array of map layers",items:{type:"object",required:["type","source"],properties:{id:{type:"string",description:"Unique layer ID (auto-generated if omitted)"},type:{type:"string",enum:["point","line","polygon","heatmap","raster","image"],description:"Layer visualization type"},name:{type:"string",description:"Human-readable layer name"},visible:{type:"boolean",default:!0},zIndex:{type:"number",default:0},minZoom:{type:"number"},maxZoom:{type:"number"},autoFit:{type:"boolean",default:!1},source:{description:"GeoJSON, JSON array, or URL string"},sourceType:{type:"string",enum:["geojson","json","csv"]},sourceConfig:{type:"object",properties:{x:{type:"string",description:"Longitude field name"},y:{type:"string",description:"Latitude field name"},x1:{type:"string",description:"End longitude field (for arc lines)"},y1:{type:"string",description:"End latitude field (for arc lines)"},coordinates:{type:"string",description:"Coordinates field"}}},color:{type:"string",description:"Fixed color"},colorField:{type:"string",description:"Field to map color to"},colorValues:{oneOf:[{type:"string",description:"Color palette name"},{type:"array",items:{type:"string"},description:"Array of color values"}]},size:{type:"number",description:"Fixed size"},sizeField:{type:"string",description:"Field to map size to"},sizeValues:{type:"array",items:{type:"number"},description:"Size range [min, max]"},shape:{type:"string",description:"Fixed shape"},shapeField:{type:"string",description:"Field to map shape to"},shapeValues:{type:"array",items:{type:"string"}},style:{type:"object",description:"Additional style properties"},filterField:{type:"string"},filterValues:{type:"array"},animate:{type:"object",properties:{enable:{type:"boolean"},speed:{type:"number"},duration:{type:"number"},trailLength:{type:"number"},repeat:{type:"number"}}},active:{oneOf:[{type:"boolean"},{type:"object",properties:{color:{type:"string"}}}]},select:{oneOf:[{type:"boolean"},{type:"object",properties:{color:{type:"string"}}}]},events:{type:"object",description:"Layer event configuration",properties:{click:{type:"string",description:"Event identifier emitted on click (via EventBus)"},mousemove:{type:"string",description:"Event identifier emitted on mousemove"},mouseenter:{type:"string",description:"Event identifier emitted on mouseenter"},mouseleave:{type:"string",description:"Event identifier emitted on mouseleave"},enablePopup:{type:"boolean",description:"Auto-show popup on click"},popupFields:{type:"array",items:{type:"string"},description:"Fields to show in popup"},popupTemplate:{type:"string",description:"HTML template with {{field}} interpolation"}}}}}},controls:{type:"array",description:"Map control widgets",items:{type:"object",required:["type"],properties:{type:{type:"string",enum:["zoom","scale","fullscreen","geoLocate","mapTheme","mouseLocation","exportImage","layerSwitch"]},position:{type:"string",enum:["topleft","topright","bottomleft","bottomright","topcenter","bottomcenter"]},options:{type:"object"}}}},interactions:{type:"array",description:"Interactive elements (markers, popups, tooltips)",items:{oneOf:[{type:"object",required:["type","longitude","latitude"],properties:{type:{type:"string",const:"marker"},longitude:{type:"number"},latitude:{type:"number"},content:{type:"string"},draggable:{type:"boolean"}}},{type:"object",required:["type","longitude","latitude","content"],properties:{type:{type:"string",const:"popup"},longitude:{type:"number"},latitude:{type:"number"},content:{type:"string"},closeButton:{type:"boolean"}}},{type:"object",required:["type","content"],properties:{type:{type:"string",const:"tooltip"},content:{type:"string"},trigger:{type:"string",enum:["hover","click"]}}}]}},legends:{type:"array",description:"Legend configurations",items:{oneOf:[{type:"object",required:["type","labels","colors"],properties:{type:{type:"string",const:"categories"},title:{type:"string"},labels:{type:"array",items:{type:"string"}},colors:{type:"array",items:{type:"string"}}}},{type:"object",required:["type","labels","colors"],properties:{type:{type:"string",const:"ramp"},title:{type:"string"},labels:{type:"array",items:{type:"string"}},colors:{type:"array",items:{type:"string"}},isContinuous:{type:"boolean"}}},{type:"object",required:["type","labels"],properties:{type:{type:"string",const:"proportion"},title:{type:"string"},labels:{type:"array",items:{type:"array",items:{type:"number"}}},fillColor:{type:"string"}}},{type:"object",required:["type","items"],properties:{type:{type:"string",const:"icon"},title:{type:"string"},items:{type:"array",items:{type:"object",properties:{icon:{type:"string"},label:{type:"string"}}}}}}]}},responsive:{type:"object",properties:{breakpoint:{type:"number",default:768},mobile:{type:"object",properties:{controls:{type:"object",properties:{position:{type:"string"},scale:{type:"number"},hide:{type:"array",items:{type:"string"}}}},legends:{type:"object",properties:{compact:{type:"boolean"},position:{type:"string"}}},toolbar:{type:"object",required:["items","position"],properties:{items:{type:"array",items:{type:"string"}},position:{type:"string",enum:["bottom","top"]}}}}}}},events:{type:"object",description:"Global event identifier mappings for map and interactions",properties:{mapMove:{type:"string",description:"Event identifier for map move"},mapZoom:{type:"string",description:"Event identifier for map zoom"},markerDragEnd:{type:"string",description:"Event identifier for marker drag end"}}}}};function C1({source:e,sourceType:n,sourceConfig:t,onClick:r,onMouseMove:o,onMouseEnter:i,onMouseLeave:s,onLayerCreated:a,...c}){const d=h1();if(!d)return null;const h={...c,type:"point",source:e,sourceType:n??"json",sourceConfig:t},y=r||o||i||s?{onClick:r,onMouseMove:o,onMouseEnter:i,onMouseLeave:s}:void 0;return l.jsx(V1,{schema:h,scene:d,eventHandlers:y,onLayerCreated:a})}function w1({source:e,sourceType:n,sourceConfig:t,onClick:r,onMouseMove:o,onMouseEnter:i,onMouseLeave:s,onLayerCreated:a,...c}){const d=h1();if(!d)return null;const h={...c,type:"line",source:e,sourceType:n??"json",sourceConfig:t},y=r||o||i||s?{onClick:r,onMouseMove:o,onMouseEnter:i,onMouseLeave:s}:void 0;return l.jsx(V1,{schema:h,scene:d,eventHandlers:y,onLayerCreated:a})}function Q1({source:e,sourceType:n,sourceConfig:t,onClick:r,onMouseMove:o,onMouseEnter:i,onMouseLeave:s,onLayerCreated:a,...c}){const d=h1();if(!d)return null;const h={...c,type:"polygon",source:e,sourceType:n??"geojson",sourceConfig:t},y=r||o||i||s?{onClick:r,onMouseMove:o,onMouseEnter:i,onMouseLeave:s}:void 0;return l.jsx(V1,{schema:h,scene:d,eventHandlers:y,onLayerCreated:a})}function j0({source:e,sourceType:n,sourceConfig:t,onClick:r,onMouseMove:o,onMouseEnter:i,onMouseLeave:s,onLayerCreated:a,...c}){const d=h1();if(!d)return null;const h={...c,type:"heatmap",source:e,sourceType:n??"json",sourceConfig:t},y=r||o||i||s?{onClick:r,onMouseMove:o,onMouseEnter:i,onMouseLeave:s}:void 0;return l.jsx(V1,{schema:h,scene:d,eventHandlers:y,onLayerCreated:a})}function B0({source:e,sourceType:n="json",sourceConfig:t,hexSize:r=100,weightField:o="h12",weightMethod:i="sum",onClick:s,onMouseMove:a,style:c,...d}){const h=[{type:"hexagon",size:r,field:o,method:i}];return l.jsx(j0,{...d,source:e,sourceType:n,sourceConfig:{...t,transforms:h},shape:"hexagonColumn",style:{coverage:.8,angle:0,...c??{}},onClick:s,onMouseMove:a})}function U0({source:e,sourceType:n,sourceConfig:t,onClick:r,...o}){const i=h1();if(!i)return null;const s={...o,type:"raster",source:e,sourceType:n??"raster",sourceConfig:t},a=r?{onClick:r}:void 0;return l.jsx(V1,{schema:s,scene:i,eventHandlers:a})}function b5({source:e,sourceType:n,sourceConfig:t,onClick:r,...o}){const i=h1();if(!i)return null;const s={...o,type:"image",source:e,sourceType:n??"image",sourceConfig:t},a=r?{onClick:r}:void 0;return l.jsx(V1,{schema:s,scene:i,eventHandlers:a})}const x5=[8,16,32,48,64],R1={primary:"#2563eb",warning:"#f59e0b",error:"#ef4444",success:"#10b981"};function M5({source:e,sourceType:n="geojson",sourceConfig:t,labelField:r="name",labelColor:o="#0b3b8c",labelSize:i=12,showLabel:s=!0,labelTrigger:a="always",labelOffset:c,sizeDomain:d,bubbleAnchor:h="bottom",labelAnchor:y="top",hoverEffect:f=!0,clickEffect:g=!0,tooltipEffect:p=!0,tooltipFields:C,tooltipTemplate:L,semanticColorField:w,color:S="#2563eb",size:x=16,sizeField:Z,sizeValues:z,style:P,active:M,select:A,onClick:O,onMouseMove:V,onMouseEnter:D,onMouseLeave:_,...F}){const b=w??F.colorField,H=F.colorValues??(w?[R1.primary,R1.warning,R1.error,R1.success]:void 0),B=Z?z??[...x5]:z,[Y,t1]=u.useState(a==="always"),K=u.useCallback(X=>{a==="hover"&&t1(!0),D==null||D(X)},[a,D]),R=u.useCallback(X=>{a==="hover"&&t1(!1),_==null||_(X)},[a,_]),a1={color:"#60a5fa"},G={color:"#1d4ed8"},n1=(()=>{const X=F.events;return p?{...X,enablePopup:(X==null?void 0:X.enablePopup)??!0,popupFields:(X==null?void 0:X.popupFields)??C,popupTemplate:(X==null?void 0:X.popupTemplate)??L}:X})(),[r1,I]=u.useState(!1);u.useEffect(()=>{const X=requestAnimationFrame(()=>I(!0));return()=>cancelAnimationFrame(X)},[]);const W=s&&Y&&r1,l1=Z?{sizeField:Z,sizeValues:B}:{size:x};return l.jsxs(l.Fragment,{children:[l.jsx(C1,{source:e,sourceType:n,sourceConfig:t,shape:"circle",color:S,colorField:b,colorValues:H,...l1,opacity:.75,active:f?M??a1:M,select:g?A??G:A,events:n1,zIndex:F.zIndex??0,autoFit:F.autoFit,visible:F.visible,name:F.name??"bubble-circle",onClick:O,onMouseMove:V,onMouseEnter:K,onMouseLeave:R,style:{stroke:S??"#004ac6",strokeWidth:2,strokeOpacity:1,...P??{}}}),W&&l.jsx(C1,{source:e,sourceType:n,sourceConfig:t,shapeField:r,shapeValues:"text",color:o,size:i,zIndex:(F.zIndex??0)+1,style:{textAnchor:y,textOffset:c??[0,0],stroke:"#fff",strokeWidth:2,textAllowOverlap:!0}})]})}function w5({source:e,sourceType:n="geojson",sourceConfig:t,gridSize:r=60,minClusterSize:o=2,animationDuration:i=300,easing:s="cubic-bezier(0.4, 0, 0.2, 1)",onPointClick:a,onClusterClick:c}){const d=h1(),[h,y]=u.useState([]),[f,g]=u.useState(null),[p,C]=u.useState(null),L=u.useRef(null),w=u.useRef(-1),S=u.useMemo(()=>z5(e,n,t),[e,n,t]);u.useEffect(()=>{if(S.length===0){L.current=null,y([]),w.current=-1;return}const M=new ut({radius:r,minPoints:o,maxZoom:20,minZoom:0}),A=S.map(O=>({type:"Feature",properties:{id:O.id,...O.properties},geometry:{type:"Point",coordinates:[O.lng,O.lat]}}));M.load(A),L.current=M,w.current=-1},[S,r,o]);const x=u.useCallback((M,A)=>{try{const O=Math.floor(A.getZoom());if(O===w.current)return;w.current=O;let V=[-180,-90,180,90];try{const F=A.getBounds();F&&(V=[F[0][0],F[0][1],F[1][0],F[1][1]])}catch{}const _=M.getClusters(V,O).map(F=>{const b=F.geometry.coordinates,H=b[0],B=b[1];return F.properties.cluster?{id:`cluster-${F.properties.cluster_id}`,clusterId:F.properties.cluster_id,lng:H,lat:B,pointCount:F.properties.point_count,isCluster:!0,properties:{}}:{id:`point-${F.properties.id}`,clusterId:-1,lng:H,lat:B,pointCount:1,isCluster:!1,properties:F.properties}});y(_),g(null)}catch{}},[]);u.useEffect(()=>{var V,D;if(!d)return;const M=d.mapService,A=()=>{requestAnimationFrame(()=>{const _=L.current;_&&d.loaded&&x(_,d)})};d.loaded?A():d.once("loaded",A);const O=()=>{const _=L.current;_&&x(_,d)};return(V=M==null?void 0:M.on)==null||V.call(M,"camerachange",O),(D=M==null?void 0:M.on)==null||D.call(M,"viewchange",O),()=>{var _,F;d.off("loaded",A),(_=M==null?void 0:M.off)==null||_.call(M,"camerachange",O),(F=M==null?void 0:M.off)==null||F.call(M,"viewchange",O)}},[d,x]);const Z=u.useCallback(M=>{if(!d||!M.isCluster)return;let A=[];const O=L.current;O&&(A=O.getLeaves(M.clusterId,1/0)),c==null||c(M,A);try{if(d.getZoom()>=20-.5){g(_=>_===M.id?null:M.id);return}if(A.length>0){const _=A.map(Y=>Y.geometry.coordinates),F=_.map(Y=>Y[0]),b=_.map(Y=>Y[1]),H=[Math.min(...F),Math.min(...b)],B=[Math.max(...F),Math.max(...b)];d.fitBounds([H,B],{padding:[40,40,40,40],duration:i})}}catch{}},[d,c,i]),z=u.useMemo(()=>{if(!d||!f||!L.current)return[];const M=h.find(A=>A.id===f&&A.isCluster);if(!M)return[];try{const A=L.current.getLeaves(M.clusterId,1/0),O=d.mapService;if(!O)return[];const V=O.lngLatToContainer([M.lng,M.lat]);if(!V)return[];const D=A.length,_=Math.max(24,Math.min(72,18+D*2));return A.map((F,b)=>{var K,R;const H=Math.PI*2*b/D-Math.PI/2,B=V.x+Math.cos(H)*_,Y=V.y+Math.sin(H)*_,t1=O.containerToLngLat([B,Y]);return{id:`spider-${M.id}-${((K=F.properties)==null?void 0:K.id)??b}`,lng:t1.lng,lat:t1.lat,point:{id:String(((R=F.properties)==null?void 0:R.id)??b),lng:F.geometry.coordinates[0],lat:F.geometry.coordinates[1],properties:F.properties??{}}}})}catch{return[]}},[d,f,h]),P=u.useMemo(()=>f?h.find(M=>M.id===f&&M.isCluster)??null:null,[f,h]);return l.jsxs(l.Fragment,{children:[f&&P&&z.map(M=>l.jsx(A1,{longitude:M.lng,latitude:M.lat,anchor:"center",content:l.jsx(H5,{centerLng:P.lng,centerLat:P.lat,lineLng:M.lng,lineLat:M.lat})},`line-${M.id}`)),h.map(M=>{var D;if(!M.isCluster)return l.jsx(A1,{longitude:M.lng,latitude:M.lat,anchor:"center",content:l.jsx("div",{title:String(((D=M.properties)==null?void 0:D.name)??"单点"),onClick:()=>{var _;return a==null?void 0:a({id:String(((_=M.properties)==null?void 0:_.id)??""),lng:M.lng,lat:M.lat,properties:M.properties})},style:{width:14,height:14,borderRadius:9999,background:"#2563eb",border:"2px solid #fff",boxShadow:"0 2px 10px rgba(37,99,235,.5), 0 0 0 3px rgba(37,99,235,.15)",transition:"transform 0.15s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.15s cubic-bezier(0.4, 0, 0.2, 1)",cursor:"pointer"}})},M.id);const A=M.pointCount,O=S5(A),V=p===M.id;return l.jsx(A1,{longitude:M.lng,latitude:M.lat,anchor:"center",content:l.jsxs("div",{title:`包含 ${A} 个要素`,onClick:()=>Z(M),onMouseEnter:()=>C(M.id),onMouseLeave:()=>C(_=>_===M.id?null:_),style:{width:O.size,height:O.size,borderRadius:9999,display:"flex",alignItems:"center",justifyContent:"center",color:"#fff",fontWeight:O.fontWeight,fontSize:O.fontSize,background:O.background,border:O.border,boxShadow:O.shadow,position:"relative",cursor:"pointer",transition:"transform 0.15s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.15s cubic-bezier(0.4, 0, 0.2, 1)",transform:V?"scale(1.1)":"scale(1)"},children:[O.pulse&&l.jsx("span",{style:{position:"absolute",inset:-6,borderRadius:9999,background:"rgba(37,99,235,0.25)",animation:"aimapui-cluster-pulse 1.6s ease-out infinite"}}),l.jsx("span",{style:{position:"relative",zIndex:1},children:A})]})},M.id)}),z.map(M=>{var A;return l.jsx(A1,{longitude:M.lng,latitude:M.lat,anchor:"center",content:l.jsx("div",{title:String(((A=M.point.properties)==null?void 0:A.name)??M.point.id),onClick:()=>a==null?void 0:a(M.point),style:{width:10,height:10,borderRadius:9999,background:"#fff",border:"2px solid #2563eb",boxShadow:"0 2px 8px rgba(0,0,0,.2)",cursor:"pointer"}})},M.id)})]})}function H5({centerLng:e,centerLat:n,lineLng:t,lineLat:r}){const o=h1(),i=u.useRef(null);return u.useEffect(()=>{if(!o)return;const s=o.mapService;if(!s)return;const a=()=>{const h=i.current;if(h)try{const y=s.lngLatToContainer([e,n]),f=s.lngLatToContainer([t,r]);if(!y||!f)return;const g=f.x-y.x,p=f.y-y.y,C=Math.sqrt(g*g+p*p),L=Math.atan2(p,g)*180/Math.PI;h.style.width=`${C}px`,h.style.transform=`rotate(${L}deg)`}catch{}};a();const c=(h,y,f)=>{var g;try{(g=h==null?void 0:h.on)==null||g.call(h,y,f)}catch{}},d=(h,y,f)=>{var g;try{(g=h==null?void 0:h.off)==null||g.call(h,y,f)}catch{}};return c(s,"camerachange",a),c(s,"viewchange",a),()=>{d(s,"camerachange",a),d(s,"viewchange",a)}},[o,e,n,t,r]),l.jsx("div",{ref:i,style:{position:"absolute",left:0,top:0,height:1,background:"rgba(195, 198, 215, 0.5)",transformOrigin:"0 50%",pointerEvents:"none"}})}function S5(e){return e>=1e3?{size:48,fontSize:14,fontWeight:700,background:"linear-gradient(135deg, #2563eb 0%, #1e3a8a 100%)",border:"2px solid rgba(255,255,255,0.55)",shadow:"0 10px 24px rgba(37,99,235,.45)",pulse:!0}:e>=100?{size:40,fontSize:13,fontWeight:700,background:"rgba(37,99,235,0.30)",border:"2px solid rgba(255,255,255,0.5)",shadow:"0 6px 16px rgba(37,99,235,.25)",pulse:!1}:{size:32,fontSize:12,fontWeight:600,background:"radial-gradient(circle, #2563eb 60%, rgba(37,99,235,0.20) 61%)",border:"1px solid rgba(255,255,255,0.55)",shadow:"0 4px 12px rgba(37,99,235,.2)",pulse:!1}}function z5(e,n,t){if(!e)return[];if(n==="geojson"&&typeof e=="object"&&e!==null){const r=e;return(Array.isArray(r.features)?r.features:[]).map((i,s)=>{var d,h,y;const a=i,c=(d=a==null?void 0:a.geometry)==null?void 0:d.coordinates;return!Array.isArray(c)||c.length<2?null:{id:String(((h=a==null?void 0:a.properties)==null?void 0:h.id)??((y=a==null?void 0:a.properties)==null?void 0:y.Id)??s),lng:Number(c[0]),lat:Number(c[1]),properties:(a==null?void 0:a.properties)??{}}}).filter(Boolean)}if(Array.isArray(e)){const r=(t==null?void 0:t.x)??"lng",o=(t==null?void 0:t.y)??"lat";return e.map((i,s)=>{const a=i,c=Number(a[r]),d=Number(a[o]);return Number.isNaN(c)||Number.isNaN(d)?null:{id:String(a.id??s),lng:c,lat:d,properties:a}}).filter(Boolean)}return[]}const V5=["#dbeafe","#93c5fd","#60a5fa","#3b82f6","#2563eb"],k5=["#dc2626","#fca5a5","#e5e7eb","#86efac","#16a34a"],E5=["#2563eb","#f59e0b","#ef4444","#10b981","#8b5cf6","#14b8a6","#f97316","#64748b"];function A5({source:e,sourceType:n="geojson",colorMapping:t="sequential",showStroke:r=!0,strokeColor:o="rgba(255,255,255,0.30)",strokeWidth:i=.5,hoverEffect:s=!0,clickEffect:a=!0,stickySelection:c=!0,tooltipEffect:d=!0,tooltipFields:h,tooltipTemplate:y,regionIdField:f="name",highlightStrokeColor:g="#2563eb",highlightStrokeWidth:p=2,zoomToRegionOnClick:C=!0,clickZoomPadding:L=40,clickZoomDelta:w=1.2,onRegionClick:S,onDrilldown:x,onLayerCreated:Z,showLabel:z=!1,labelField:P="name",labelColor:M="#0f172a",labelSize:A=11,labelAreaThreshold:O=5e-5,labelHaloWidth:V=2,minLabelZoom:D,valueField:_,percentageField:F,nameField:b,color:H,colorField:B,colorValues:Y,active:t1,select:K,events:R,style:a1,...G}){const n1=h1(),[r1,I]=u.useState(null),[W,l1]=u.useState(null),[X,s1]=u.useState(()=>{if(!n1)return 0;try{return n1.getZoom()}catch{return 0}});u.useEffect(()=>{if(!n1)return;const j=()=>{try{s1(n1.getZoom())}catch{}};return j(),n1.on("zoomchange",j),()=>{n1.off("zoomchange",j)}},[n1]);const u1=D===void 0||X>=D,E=u.useMemo(()=>{if(Y)return Y;switch(t){case"diverging":return[...k5];case"categorical":return[...E5];case"sequential":default:return[...V5]}},[Y,t]),m=_??B??"value",k=b??P,v=u.useMemo(()=>y??Z5(k,m,F),[y,k,m,F]),J={color:"#ffffff"},$={color:"#0f172a"},q=u.useMemo(()=>P5(e,n,P,f,O),[e,n,P,f,O]),e1=u.useCallback(j=>{S==null||S(j);const o1=q0(j.feature,f);if(o1!==null&&a&&l1(i1=>!c&&i1===o1?null:o1),j.feature&&(x==null||x(j.feature)),!n1||!C)return;const c1=Number.isFinite(j.lng)&&Number.isFinite(j.lat)?[j.lng,j.lat]:F5(j.originalEvent);if(c1)try{const i1=n1.getZoom(),f1=Math.abs(w);n1.setCenter(c1),n1.setZoom(i1+f1)}catch{}},[S,f,a,c,x,n1,C,w]),T=u.useCallback(j=>{if(!s)return;const o1=q0(j.feature,f);I(o1)},[s,f]),N=u.useCallback(()=>{s&&I(null)},[s]),Q=u.useMemo(()=>{const j=R;return d?{...j,enablePopup:(j==null?void 0:j.enablePopup)??!0,popupTrigger:(j==null?void 0:j.popupTrigger)??"hover",popupFields:(j==null?void 0:j.popupFields)??h,popupTemplate:(j==null?void 0:j.popupTemplate)??v}:j},[R,d,h,v]);return l.jsxs(l.Fragment,{children:[l.jsx(Q1,{...G,source:e,sourceType:n,shape:G.shape??"fill",color:H??"#2563eb",colorField:B,colorValues:E,active:s?t1??J:t1,select:a?K??$:K,events:Q,onClick:e1,onMouseEnter:T,onMouseLeave:N,onLayerCreated:Z,style:{opacity:.8,...a1??{}}}),r&&l.jsx(w1,{source:e,sourceType:n,color:o,size:i,zIndex:2}),s&&r1!==null&&l.jsxs(l.Fragment,{children:[l.jsx(w1,{source:e,sourceType:n,color:W0(g,.35),size:p+2,filterField:f,filterValues:[r1],zIndex:3}),l.jsx(w1,{source:e,sourceType:n,color:g,size:p,filterField:f,filterValues:[r1],zIndex:4})]}),a&&W!==null&&l.jsx(w1,{source:e,sourceType:n,color:W0(g,.9),size:Math.max(1.5,p),filterField:f,filterValues:[W],zIndex:5}),z&&u1&&l.jsx(C1,{source:q.data,sourceType:q.sourceType,sourceConfig:q.sourceConfig,shapeField:P,shapeValues:"text",color:M,size:A,style:{textAllowOverlap:!1,stroke:"#ffffff",strokeWidth:V,fontFamily:"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace"}})]})}function Z5(e,n,t){const r=t?`<tr><td style="padding-right:8px;color:#64748b">占比</td><td style="font-weight:600">{{${t}}}%</td></tr>`:"";return['<div style="min-width:160px">',`<div style="font-weight:700;margin-bottom:6px">{{${e}}}</div>`,'<table style="font-size:12px;line-height:1.4">',`<tr><td style="padding-right:8px;color:#64748b">指标</td><td style="font-weight:600">{{${n}}}</td></tr>`,r,"</table>","</div>"].join("")}function W0(e,n){if(e.startsWith("#")){const t=e.replace("#",""),r=t.length===3?`${t[0]}${t[0]}${t[1]}${t[1]}${t[2]}${t[2]}`:t;if(r.length===6){const o=parseInt(r.slice(0,2),16),i=parseInt(r.slice(2,4),16),s=parseInt(r.slice(4,6),16);return`rgba(${o},${i},${s},${n})`}}return e}function q0(e,n){if(!e)return null;const t=e[n]??e.id??e.name;return typeof t=="string"||typeof t=="number"?t:null}function P5(e,n,t,r,o){return n!=="geojson"||!I5(e)?{data:e,sourceType:n}:{data:e.features.map(s=>{if(!s||!s.geometry||!s.properties)return null;const a=G0(s.geometry),c=N5(s.geometry);if(!a||c<o)return null;const d=s.properties;return{lng:a[0],lat:a[1],[t]:d[t],[r]:d[r]}}).filter(s=>s!==null),sourceType:"json",sourceConfig:{x:"lng",y:"lat"}}}function I5(e){if(!e||typeof e!="object")return!1;const n=e;return n.type==="FeatureCollection"&&Array.isArray(n.features)}function F5(e){const n=T5(e);return n?G0(n):null}function T5(e){var t,r;const n=e;return((t=n==null?void 0:n.feature)==null?void 0:t.geometry)??((r=n==null?void 0:n.data)==null?void 0:r.geometry)??null}function G0(e){if(e.type==="Polygon")return Y0(e.coordinates[0]);if(e.type==="MultiPolygon"){let n=0,t=null;return e.coordinates.forEach(r=>{const o=r[0],i=Math.abs(Ae(o));i>n&&(n=i,t=Y0(o))}),t}return null}function N5(e){return e.type==="Polygon"?Math.abs(Ae(e.coordinates[0])):e.type==="MultiPolygon"?e.coordinates.reduce((n,t)=>n+Math.abs(Ae(t[0])),0):0}function Y0(e){if(!e||e.length<3)return null;let n=0,t=0,r=0;for(let i=0;i<e.length-1;i+=1){const[s,a]=e[i],[c,d]=e[i+1],h=s*d-c*a;n+=h,t+=(s+c)*h,r+=(a+d)*h}const o=n/2;if(Math.abs(o)<1e-12){const i=e[0];return i?[i[0],i[1]]:null}return[t/(6*o),r/(6*o)]}function Ae(e){if(!e||e.length<3)return 0;let n=0;for(let t=0;t<e.length-1;t+=1){const[r,o]=e[t],[i,s]=e[t+1];n+=r*s-i*o}return n/2}const J0=["#eff6ff","#bfdbfe","#60a5fa","#2563eb","#1d4ed8","#1e3a8a"],X0="https://mdn.alipayobjects.com/antforest/afts/file/A*T2OJQ7XZzeEAAAAAgCAAAAgAerd2AQ/original_中国_省.json",K0="https://mdn.alipayobjects.com/antforest/afts/file/A*Xd8TQoduwj8AAAAAgEAAAAgAerd2AQ/original_中国_市.json",Q0="https://mdn.alipayobjects.com/portal_moelhz/afts/file/A*Rb96Tac1p8EAAAAAgKAAAAgAegAAAQ",_5=u.forwardRef(function(n,t){const{provinceSource:r=X0,citySource:o=K0,districtSource:i=Q0,level:s="province",drillEnabled:a=!0,drillPath:c,onDrill:d,onDrillUp:h,autoFitOnDrill:y=!0,data:f,joinField:g="name",dataJoinField:p="name",valueField:C="value",colors:L=[...J0],fillOpacity:w=.8,strokeColor:S="rgba(255,255,255,0.5)",strokeWidth:x=1.5,dimOpacity:Z=.12,showLabel:z=!0,labelField:P="name",labelSize:M=12,hoverHighlight:A=!0,clickSelect:O=!0,showTooltip:V=!0,tooltipFields:D,onRegionClick:_,zIndex:F=0}=n,b=h1(),[H,B]=u.useState(null),[Y,t1]=u.useState(null),[K,R]=u.useState(null),[a1,G]=u.useState(null),[n1,r1]=u.useState([{level:"province",name:"中国"}]),I=c??n1,W=a?$5(I):s,l1=u.useCallback(()=>{if(I.length<=1)return;const N=I.slice(0,-1);c?h==null||h(N):(r1(N),h==null||h(N),d==null||d(N)),u1(null)},[I,c,h,d]),X=u.useCallback(N=>{if(N<0||N>=I.length-1)return;const Q=I.slice(0,N+1);c?h==null||h(Q):(r1(Q),h==null||h(Q),d==null||d(Q)),u1(null)},[I,c,h,d]),[s1,u1]=u.useState(null);u.useImperativeHandle(t,()=>({drillUp:l1,drillUpTo:X,getDrillPath:()=>I}),[l1,X,I]);const E=u.useRef(I.length);u.useEffect(()=>{Ze(r,B,G)},[r]),u.useEffect(()=>{o&&Ze(o,t1)},[o]),u.useEffect(()=>{i&&Ze(i,R)},[i]);const m=u.useMemo(()=>{switch(W){case"city":return Y;case"district":return K;default:return H}},[W,H,Y,K]),k=u.useMemo(()=>!m||!f||f.length===0?m:W5(m,f,g,p,C),[m,f,g,p,C]),v=u.useMemo(()=>{if(!a||I.length<=1)return k;if(!k)return null;const N=I[I.length-1];return!N.adcode&&!N.name?k:G5(k,N)},[a,I,k,g]),J=u.useMemo(()=>!a||I.length<=1?null:(I.length===2?H:Y)??null,[a,I,H,Y]);u.useMemo(()=>`<div style="min-width:140px"><table style="font-size:12px;line-height:1.6">${(D??[P,C]).map(j=>`<tr><td style="padding-right:8px;color:#64748b">${j}</td><td style="font-weight:600">{{${j}}}</td></tr>`).join("")}</table></div>`,[D,P,C]);const $=!!(f&&f.length>0),q=u.useMemo(()=>k?v??k:null,[v,k]),e1=W==="province"?x:x*.6;u.useEffect(()=>{if(!(!y||!b||!q||E.current===I.length)){E.current=I.length;try{const Q=K5(q);Q&&b.fitBounds(Q,{padding:[40,40,40,40]})}catch{}}},[y,b,q,I.length]);const T=u.useCallback(N=>{const Q=N.feature;if(!Q)return;const j=String(Q[P]??Q.name??""),o1=Q.adcode??Q.gb;if(_==null||_(Q,W),O&&u1(c1=>c1===j?null:j),a&&O5(W)){const c1=[...I,{level:W,name:j,adcode:o1}];c||r1(c1),d==null||d(c1),u1(null)}},[P,W,O,a,I,c,d,_]);return!b||!q?null:l.jsxs(l.Fragment,{children:[a&&J&&I.length>1&&l.jsxs(l.Fragment,{children:[l.jsx(Q1,{source:J,sourceType:"geojson",shape:"fill",color:"#94a3b8",style:{opacity:Z},zIndex:F}),l.jsx(w1,{source:J,sourceType:"geojson",color:"rgba(148,163,184,0.2)",size:.5,zIndex:F+1})]}),l.jsx(Q1,{source:q,sourceType:"geojson",shape:"fill",...$?{colorField:C,colorValues:L}:{color:L[2]??"#3b82f6"},active:A?{color:"#ffffff"}:void 0,select:O?{color:"#0f172a"}:void 0,style:{opacity:w},onClick:T,zIndex:F+2}),l.jsx(w1,{source:q,sourceType:"geojson",color:S,size:e1,zIndex:F+3}),a1&&W==="province"&&I.length<=1&&l.jsx(w1,{source:a1,sourceType:"geojson",color:"#94a3b8",size:1,zIndex:F+3}),z&&q&&l.jsx(D5,{geoData:q,labelField:P,labelSize:M,zIndex:F+4})]})});function D5({geoData:e,labelField:n,labelSize:t,zIndex:r}){const o=u.useMemo(()=>Y5(e,n),[e,n]);return!o||o.data.length===0?null:l.jsx(C1,{source:o.data,sourceType:o.sourceType,sourceConfig:o.sourceConfig,shapeField:n,shapeValues:"text",color:"#0f172a",size:t,style:{textAllowOverlap:!1,stroke:"#ffffff",strokeWidth:2,fontFamily:"PingFang SC, Microsoft YaHei, sans-serif"},zIndex:r})}function $5(e){return e.length<=1?"province":e.length===2?"city":"district"}function O5(e){return e!=="district"}const j5=new Set(["境界线","边界线","九段线","十段线"]);function B5(e){var t,r,o;const n=(t=e.properties)==null?void 0:t.name;if(typeof n!="string")return!1;if(n==="九段线"||n==="十段线")return!0;if(n==="境界线"){const i=(r=e.geometry)==null?void 0:r.type;if(i!=="MultiLineString"&&i!=="LineString")return!1;const s=(o=e.geometry)==null?void 0:o.coordinates;if(!s)return!1;const a=i==="MultiLineString"?s.flat():s;if(Math.min(...a.map(d=>d[1]))<10)return!0}return!1}function U5(e){var r,o;const n=(r=e.properties)==null?void 0:r.name;if(!n||typeof n!="string"||j5.has(n))return!1;const t=(o=e.geometry)==null?void 0:o.type;return!(t==="LineString"||t==="MultiLineString")}function R0(e){const n=[],t=[];for(const r of e.features)B5(r)?t.push(r):U5(r)&&n.push(r);return{admin:{type:"FeatureCollection",features:n},dashLine:t.length>0?{type:"FeatureCollection",features:t}:null}}function Ze(e,n,t){if(typeof e=="string")fetch(e).then(r=>r.json()).then(r=>{if(r&&r.type==="FeatureCollection"){const o=R0(r);n(o.admin),t==null||t(o.dashLine)}}).catch(()=>{});else if(e&&e.type==="FeatureCollection"){const r=R0(e);n(r.admin),t==null||t(r.dashLine)}}function W5(e,n,t,r,o){const i=new Map;for(const a of n){const c=String(a[r]??"");c&&i.set(c,a)}return{type:"FeatureCollection",features:e.features.map(a=>{const c=String(a.properties[t]??""),d=i.get(c),h=d?d[o]??d.value??0:0;return{...a,properties:{...a.properties,...d??{},[o]:h}}})}}function et(e){const n=String(e);return n.startsWith("156")&&n.length>=9?n.slice(3):n}const q5=["省","市","自治区","特别行政区","壮族","回族","维吾尔","藏族","彝族","苗","侗","瑶","白","哈尼","傣","傈僳","佤","畲","拉祜","水","景颇","土家","羌","毛南","仫佬","布朗","撒拉","裕固","塔吉克","柯尔克孜","锡伯","达斡尔","鄂温克","鄂伦春","赫哲","德昂","门巴","珞巴","基诺","怒","保安","京","独龙","仡佬","阿昌","普米"];function Pe(e){let n=e;for(const t of q5)if(n.endsWith(t)){n=n.slice(0,-t.length);break}return n}function G5(e,n,t){const r=n.name,o=n.adcode,s=n.level==="province"?2:4;return{type:"FeatureCollection",features:e.features.filter(c=>{const d=c.properties;if(d.parent&&String(d.parent)===r||d.parentName&&String(d.parentName)===r)return!0;const h=d.adcode??d.gb;if(o&&h){const f=et(String(o)),g=et(String(h));if(g.length>=s&&g.slice(0,s)===f.slice(0,s)&&g!==f)return!0}const y=Pe(r);return!!(d.province&&(String(d.province)===r||Pe(String(d.province))===y)||d.city&&(String(d.city)===r||Pe(String(d.city))===y))})}}function Y5(e,n){const t=[];for(const r of e.features){if(!r.geometry||!r.properties)continue;const o=J5(r.geometry);o&&t.push({lng:o[0],lat:o[1],[n]:r.properties[n]??r.properties.name??""})}return t.length===0?null:{data:t,sourceType:"json",sourceConfig:{x:"lng",y:"lat"}}}function J5(e){const n=e.type,t=e.coordinates;if(!t)return null;if(n==="Point")return t;if(n==="Polygon")return tt(t);if(n==="MultiPolygon"){const r=t;let o=0,i=null;for(const s of r){const a=Math.abs(X5(s[0]));a>o&&(o=a,i=tt(s))}return i}return null}function tt(e){const n=e[0];if(!n||n.length===0)return null;let t=0,r=0;const o=n.length;for(const i of n)t+=i[0],r+=i[1];return[t/o,r/o]}function X5(e){let n=0;const t=e.length;for(let r=0;r<t;r++){const o=(r+1)%t;n+=e[r][0]*e[o][1],n-=e[o][0]*e[r][1]}return n/2}function K5(e){let n=1/0,t=1/0,r=-1/0,o=-1/0;for(const i of e.features)Q5(i.geometry,(s,a)=>{s<n&&(n=s),a<t&&(t=a),s>r&&(r=s),a>o&&(o=a)});return!isFinite(n)||!isFinite(t)?null:[[n,t],[r,o]]}function Q5(e,n){const t=e.type,r=e.coordinates;if(r){if(t==="Point"){const[o,i]=r;n(o,i)}else if(t==="LineString"||t==="MultiPoint")for(const[o,i]of r)n(o,i);else if(t==="Polygon"||t==="MultiLineString")for(const o of r)for(const[i,s]of o)n(i,s);else if(t==="MultiPolygon")for(const o of r)for(const i of o)for(const[s,a]of i)n(s,a)}}const R5=[["sunny","&#xe81a;"],["cloud","&#xf15c;"],["cloudy","&#xf15c;"],["partly_cloudy_day","&#xf172;"],["partly_cloudy_night","&#xf174;"],["rainy","&#xf176;"],["rainy_heavy","&#xf61f;"],["rainy_light","&#xf61e;"],["rainy_snow","&#xf61d;"],["thunderstorm","&#xebdb;"],["foggy","&#xe818;"],["air","&#xefd8;"],["water_drop","&#xe798;"],["ac_unit","&#xeb3b;"],["filter_drama","&#xe3dd;"],["cloudy_snowing","&#xe810;"],["snowing","&#xe80f;"],["snowflake","&#xed5b;"],["severe_cold","&#xebd3;"],["umbrella","&#xf1ad;"],["storm","&#xf070;"],["tornado","&#xe199;"],["thermostat","&#xf076;"],["heat","&#xf537;"],["hot","&#xef23;"],["flight","&#xe539;"],["flight_takeoff","&#xe905;"],["flight_land","&#xe904;"],["train","&#xe570;"],["directions_transit","&#xeffa;"],["directions_railway","&#xeff8;"],["directions_bus","&#xeff6;"],["directions_car","&#xeff7;"],["directions_boat","&#xeff5;"],["directions_bike","&#xe52f;"],["directions_walk","&#xe536;"],["directions_run","&#xe566;"],["taxi","&#xe559;"],["local_taxi","&#xe559;"],["local_airport","&#xe53d;"],["connecting_airports","&#xe7c9;"],["two_wheeler","&#xe9f9;"],["tram","&#xe571;"],["subway","&#xe56f;"],["ferry","&#xe572;"],["cable_car","&#xf479;"],["ev_station","&#xe56d;"],["local_gas_station","&#xe546;"],["location_on","&#xf1db;"],["place","&#xf1db;"],["room","&#xf1db;"],["pin","&#xf045;"],["pin_drop","&#xe55e;"],["near_me","&#xe569;"],["my_location","&#xe55c;"],["gps_fixed","&#xe55c;"],["navigation","&#xe55d;"],["explore","&#xe87a;"],["map","&#xe55b;"],["restaurant","&#xe56c;"],["local_cafe","&#xeb44;"],["coffee","&#xefef;"],["local_bar","&#xe540;"],["hotel","&#xe549;"],["local_hospital","&#xe548;"],["local_pharmacy","&#xe550;"],["local_atm","&#xe53e;"],["local_police","&#xef56;"],["local_fire_department","&#xef55;"],["local_post_office","&#xe554;"],["local_library","&#xe54b;"],["local_mall","&#xe54c;"],["local_grocery_store","&#xe8cc;"],["store","&#xe8d1;"],["school","&#xe80c;"],["church","&#xeaae;"],["mosque","&#xeab2;"],["synagogue","&#xeab0;"],["temple_buddhist","&#xeab3;"],["temple_hindu","&#xeaaf;"],["museum","&#xea36;"],["castle","&#xeab1;"],["stadium","&#xeb90;"],["theater_comedy","&#xea66;"],["pool","&#xeb48;"],["fitness_center","&#xeb43;"],["spa","&#xeb4c;"],["park","&#xea63;"],["forest","&#xea99;"],["attractions","&#xea52;"],["celebration","&#xea65;"],["festival","&#xea68;"],["nightlife","&#xea62;"],["sports","&#xea30;"],["sports_soccer","&#xea2f;"],["sports_basketball","&#xea26;"],["sports_football","&#xea29;"],["sports_tennis","&#xea32;"],["sports_golf","&#xea2a;"],["layers","&#xe53b;"],["layers_clear","&#xe53c;"],["terrain","&#xe564;"],["landscape","&#xe564;"],["share","&#xe80d;"],["favorite","&#xe87e;"],["star","&#xf09a;"],["home","&#xe9b2;"],["work","&#xe943;"],["person","&#xf0d3;"],["people","&#xea21;"],["trip","&#xe6fb;"],["warning","&#xf083;"],["emergency","&#xe1eb;"],["photo_camera","&#xe412;"],["shopping_bag","&#xf1cc;"],["search","&#xe8b6;"],["settings","&#xe8b8;"],["info","&#xe88e;"],["help","&#xe8fd;"],["close","&#xe5cd;"],["check","&#xe876;"],["add","&#xe145;"],["remove","&#xe15b;"],["edit","&#xe254;"],["delete","&#xe872;"],["refresh","&#xe5d5;"],["download","&#xe2c4;"],["upload","&#xe2c3;"],["visibility","&#xe8f4;"],["visibility_off","&#xe8f6;"]],nt="Material Symbols Outlined",er="https://fonts.gstatic.com/s/materialsymbolsoutlined/v261/kJEhBvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oFsI.woff2",tr="M16 0C7.16344 0 0 7.16344 0 16C0 24.8366 16 40 16 40C16 40 32 24.8366 32 16C32 7.16344 24.8366 0 16 0Z";function nr(e){const n=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 40"><path d="${tr}" fill="${e}" stroke="white" stroke-width="1.5"/></svg>`;return`data:image/svg+xml,${encodeURIComponent(n)}`}function rr({source:e,sourceType:n="json",sourceConfig:t,iconField:r,iconFontFamily:o="material-symbols",iconFontPath:i,iconFontMap:s,iconColor:a="#3b82f6",iconSize:c=20,iconHaloColor:d="#fff",iconHaloWidth:h=1,iconStyle:y,iconAnchor:f="center",iconBgShape:g="pin",iconBgShapeColor:p,iconBgShapeSize:C=24,iconBgStrokeColor:L,iconBgStrokeWidth:w=0,iconBgPadding:S=0,iconBgCornerRadius:x=0,showLabel:Z=!0,labelField:z,labelColor:P="#333",labelSize:M=11,labelAnchor:A="top",labelOffset:O=[0,0],labelHaloColor:V="#fff",labelHaloWidth:D=2,labelStyle:_,textAllowOverlap:F=!1,iconAllowOverlap:b=!0,zoomAdaption:H=!0,zoomShowLabel:B=14,zoomDegradeToPoint:Y=10,onClick:t1,onMouseEnter:K,onMouseLeave:R,...a1}){const G=h1(),[n1,r1]=u.useState(!1),[I,W]=u.useState(!1),[l1,X]=u.useState(!1),[s1,u1]=u.useState(14),E=u.useRef(!1);u.useEffect(()=>{if(!G||g!=="pin"||!p)return;const e1=nr(p);G.addImage("glyph-pin-bg",e1),X(!0)},[G,g,p]);const{fontFamily:m,fontPath:k,iconMappings:v}=u.useMemo(()=>{switch(o){case"material-symbols":return{fontFamily:nt,fontPath:er,iconMappings:R5};default:return{fontFamily:o,fontPath:i??null,iconMappings:s??[]}}},[o,i,s]);if(u.useEffect(()=>{if(!G||E.current)return;E.current=!0;let e1=!1;return(async()=>{k&&G.addFontFace(m,k),v.length>0&&G.addIconFonts(v);try{if(m===nt){const N=v.slice(0,10).map(([,Q])=>String.fromCharCode(parseInt(Q.replace("&#x","").replace(";",""),16))).join("");await document.fonts.load(`${c}px "${m}"`,N)}else k&&await new Promise(N=>{const Q=setTimeout(()=>{N()},3e3),j=()=>{clearTimeout(Q),G.off("fontloaded",j),N()};G.on("fontloaded",j),document.fonts.load(`${c}px "${m}"`).then(()=>{clearTimeout(Q),G.off("fontloaded",j),N()}).catch(()=>{clearTimeout(Q),G.off("fontloaded",j),N()})})}catch{console.warn(`[GlyphLayer] 字体 "${m}" 加载超时,尝试继续渲染`)}try{const Q=`${c}px "${m}"`;document.fonts.check(Q,"X")||await document.fonts.ready}catch{}e1||r1(!0)})(),()=>{e1=!0}},[G,m,k,v,c]),u.useEffect(()=>{if(!G)return;const e1=()=>W(!0);return G.loaded?e1():G.on("loaded",e1),()=>{G.off("loaded",e1)}},[G]),u.useEffect(()=>{if(!G||!H)return;const e1=()=>{u1(G.getZoom())};return e1(),G.on("zoomchange",e1),()=>{G.off("zoomchange",e1)}},[G,H]),!n1||!I||g==="pin"&&p&&!l1)return null;const J=z??r,$=!H||s1>=B;return H&&s1<Y?l.jsx(C1,{source:e,sourceType:n,sourceConfig:t,shape:"circle",color:typeof a=="string"?a:"#3b82f6",size:4,style:{opacity:.7}}):l.jsxs(l.Fragment,{children:[l.jsx(C1,{...a1,source:e,sourceType:n,sourceConfig:t,shapeField:r,shapeValues:"text",color:a,size:c,style:{fontFamily:m,iconfont:!0,textAllowOverlap:b,textAnchor:f,backgroundColor:p,backgroundPadding:S,backgroundRadius:x,backgroundShape:g==="pin"?void 0:"circle",stroke:L,strokeWidth:w,...y??{}},onClick:t1,onMouseEnter:K,onMouseLeave:R}),Z&&$&&l.jsx(C1,{source:e,sourceType:n,sourceConfig:t,shapeField:J,shapeValues:"text",color:P,size:M,style:{textAnchor:A,textOffset:O,stroke:V,strokeWidth:D,fontWeight:"500",textAllowOverlap:F,..._??{}}})]})}function rt({source:e,sourceType:n="json",sourceConfig:t,iconField:r,iconMap:o,iconSize:i=24,iconAnchor:s="bottom",size:a,showLabel:c=!0,labelField:d,labelColor:h="#333",labelSize:y=12,labelAnchor:f="top",labelOffset:g=[0,0],labelHaloColor:p="#fff",labelHaloWidth:C=2,labelStyle:L,textAllowOverlap:w=!1,iconAllowOverlap:S=!0,zoomAdaption:x=!0,zoomShowLabel:Z=15,zoomDegradeToPoint:z=10,onClick:P,onMouseEnter:M,onMouseLeave:A,...O}){const V=h1(),[D,_]=u.useState(!1),[F,b]=u.useState(15),H=u.useMemo(()=>Object.keys(o),[o]),B=a??i,Y=d??r;if(u.useEffect(()=>{V&&(H.forEach(R=>{V.addImage(R,o[R])}),_(!0))},[V,H,o]),u.useEffect(()=>{if(!V||!x)return;const R=()=>{b(V.getZoom())};return R(),V.on("zoomchange",R),()=>{V.off("zoomchange",R)}},[V,x]),!D)return null;const t1=!x||F>=Z;return x&&F<z?l.jsx(C1,{source:e,sourceType:n,sourceConfig:t,shape:"circle",color:O.color??"#3b82f6",size:6,style:{opacity:.8}}):l.jsxs(l.Fragment,{children:[l.jsx(C1,{source:e,sourceType:n,sourceConfig:t,shapeField:r,shapeValues:H,size:B,style:{...O.style??{},anchor:s,allowOverlap:S},onClick:P,onMouseEnter:M,onMouseLeave:A}),c&&t1&&l.jsx(C1,{source:e,sourceType:n,sourceConfig:t,shapeField:Y,shapeValues:"text",color:h,size:y,style:{textAnchor:f,textOffset:g,stroke:p,strokeWidth:C,fontWeight:"500",textAllowOverlap:w,...L??{}}})]})}const or={gaode:()=>"https://webst0{1-4}.is.autonavi.com/appmaptile?style=6&x={x}&y={y}&z={z}",google:()=>"https://gwxc.shipxy.com/tile.g?z={z}&x={x}&y={y}",tianditu:(e="4043dde46add842282bacc412299311d")=>`https://t{0-7}.tianditu.gov.cn/DataServer?T=img_w&X={x}&Y={y}&L={z}&tk=${e}`},sr={gaode:"高德卫星",tianditu:"天地图卫星",google:"谷歌卫星"};function ir({provider:e="gaode",zIndex:n=0,opacity:t=1,tiandituToken:r,visible:o=!0}){if(!o)return null;const i=or[e](r);return l.jsx(U0,{source:i,sourceType:"rasterTile",sourceConfig:{parser:{type:"rasterTile",tileSize:256,zoomOffset:1}},zIndex:n,opacity:t})}function lr({source:e,sourceType:n="json",sourceConfig:t,shape:r="arc",color:o="#2563EB",gradientColors:i,colorMode:s="single",colorField:a,colorValues:c,lineWidth:d=1.5,lineWidthRange:h,weightField:y="weight",opacity:f=.8,blur:g=.6,animate:p=!1,animateSpeed:C=1,animateTrailLength:L=.3,animateDuration:w=2e3,showNodes:S=!0,nodeColor:x,nodeSize:Z=4,nodeSizeRange:z,nodePulse:P=!1,showTooltip:M=!0,showNodePopup:A=!0,activeColor:O="#FFD93D",onArcHover:V,onArcClick:D,onNodeClick:_,style:F}){const b=u.useMemo(()=>t??{x:"fromLng",y:"fromLat",x1:"toLng",y1:"toLat"},[t]),H=u.useMemo(()=>s==="gradient"&&i?i:o,[s,i,o]),B=u.useMemo(()=>d,[d,h]),Y=u.useMemo(()=>{if(p)return{enable:!0,speed:C,duration:w,trailLength:L}},[p,C,w,L]),t1=u.useMemo(()=>({opacity:f,blur:g,...F}),[f,g,F]),K=u.useMemo(()=>{if(!S||typeof e=="string")return[];const X=new Map,s1=b.x??"fromLng",u1=b.y??"fromLat",E=b.x1??"toLng",m=b.y1??"toLat";return e.forEach(k=>{const v=`${k[s1]}_${k[u1]}`,J=`${k[E]}_${k[m]}`;X.has(v)||X.set(v,{lng:Number(k[s1]),lat:Number(k[u1]),degree:0,name:k.fromName}),X.has(J)||X.set(J,{lng:Number(k[E]),lat:Number(k[m]),degree:0,name:k.toName}),X.get(v).degree++,X.get(J).degree++}),Array.from(X.values())},[e,S,b]),R=x??o,[a1,G]=u.useState({visible:!1,lng:0,lat:0,from:"",to:"",weight:0}),n1=u.useCallback(X=>{if(V==null||V(X),!M)return;const s1=X.feature;s1&&G({visible:!0,lng:X.lng,lat:X.lat,from:String(s1.fromName??""),to:String(s1.toName??""),weight:Number(s1[y]??0)})},[V,M,y]),r1=u.useCallback(()=>{G(X=>({...X,visible:!1}))},[]),[I,W]=u.useState({visible:!1,lng:0,lat:0,name:"",degree:0}),l1=u.useCallback(X=>{if(_==null||_(X),!A)return;const s1=X.feature;s1&&W({visible:!0,lng:X.lng,lat:X.lat,name:String(s1.name??""),degree:Number(s1.degree??0)})},[_,A]);return l.jsxs(l.Fragment,{children:[l.jsx(w1,{source:e,sourceType:n,sourceConfig:b,shape:r,color:H,colorField:s==="field"?a:void 0,colorValues:s==="field"?c:void 0,size:B,sizeField:h?y:void 0,sizeValues:h||void 0,animate:Y,active:O?{color:O}:!1,style:t1,onMouseMove:n1,onMouseLeave:r1,onClick:D}),S&&K.length>0&&l.jsx(C1,{source:K,sourceConfig:{x:"lng",y:"lat"},color:R,size:Z,sizeField:z?"degree":void 0,sizeValues:z,shape:"circle",style:{opacity:.9,strokeWidth:1,stroke:"#fff"},animate:P?{enable:!0,speed:.6}:void 0,active:O?{color:O}:!1,onClick:l1}),M&&a1.visible&&l.jsx(ie,{longitude:a1.lng,latitude:a1.lat,visible:!0,variant:"dark",items:[{label:"起点",value:a1.from},{label:"终点",value:a1.to},{label:"流量",value:a1.weight}]}),A&&I.visible&&l.jsx(_1,{longitude:I.lng,latitude:I.lat,content:`<div style="min-width:80px"><div style="font-weight:700;font-size:13px;margin-bottom:4px">${I.name||"节点"}</div><div style="font-size:12px;color:#64748b">连接数: ${I.degree}</div></div>`,closeButton:!0,size:"compact",onClose:()=>W(X=>({...X,visible:!1}))})]})}function ar({path:e,segments:n,stops:t=[],routeType:r="straight",onRouteQuery:o,onRouteResult:i,color:s="#2563eb",lineWidth:a=4,opacity:c=.9,glow:d=!0,animate:h=!1,animateSpeed:y=1,stopSize:f=14,stopColor:g,endColor:p="#10b981",showStopIndex:C=!0,stopRenderer:L="point",stopMarkerVariant:w="circle",stopIconMap:S,stopIconField:x="iconValue",stopIconSize:Z=16,stopIconAnchor:z="bottom",showStopPopup:P=!0,activeColor:M="#fbbf24",onPathClick:A,onStopClick:O}){const[V,D]=u.useState(null),_=u.useRef(0),F=r==="walking"||r==="cycling"||r==="driving"||r==="transit";u.useEffect(()=>{if(!F||!o||t.length<2){D(null);return}const I=[t[0].lng,t[0].lat],W=[t[t.length-1].lng,t[t.length-1].lat],l1=t.length>2?t.slice(1,-1).map(s1=>[s1.lng,s1.lat]):[],X=++_.current;o({origin:I,destination:W,waypoints:l1.length>0?l1:void 0,routeType:r}).then(s1=>{_.current===X&&(D(s1),i==null||i(s1))}).catch(()=>{_.current===X&&D(null)})},[F,o,t,r]);const b=F&&V?V.path:e,H=F&&(V!=null&&V.segments)?V.segments:n,B=F&&(V!=null&&V.stops)?V.stops:[],Y=r==="arc"?"arc":"line",t1=u.useMemo(()=>H&&H.length>0?{type:"FeatureCollection",features:H.map((I,W)=>({type:"Feature",properties:{color:I.color||s,width:I.width||a,index:W},geometry:{type:"LineString",coordinates:I.coordinates}}))}:b&&b.length>1?{type:"FeatureCollection",features:[{type:"Feature",properties:{color:s,width:a},geometry:{type:"LineString",coordinates:b}}]}:null,[b,H,s,a]),K=H&&H.some(I=>I.color),R=u.useMemo(()=>{const I=b??(H&&H.length>0?[...H[0].coordinates.slice(0,1),...H[H.length-1].coordinates.slice(-1)]:null);let W=[...t,...B];if(I&&I.length>=2){const[l1,X]=I[0],[s1,u1]=I[I.length-1],E=t.some(k=>Math.abs(k.lng-l1)<1e-6&&Math.abs(k.lat-X)<1e-6),m=t.some(k=>Math.abs(k.lng-s1)<1e-6&&Math.abs(k.lat-u1)<1e-6);E||(W=[{lng:l1,lat:X,name:"起点",type:"start"},...W]),m||(W=[...W,{lng:s1,lat:u1,name:"终点",type:"end"}])}return W.map((l1,X)=>({...l1,index:l1.index??X+1,type:l1.type??(X===0?"start":X===W.length-1?"end":"waypoint"),stopColor:l1.type==="end"||!l1.type&&X===W.length-1?p:g??s,iconValue:l1.icon??"marker",indexLabel:String(l1.index??X+1),markerColorValue:l1.markerColor??cr(l1.type??(X===0?"start":X===W.length-1?"end":"waypoint"))}))},[t,B,b,H,s,g,p]),a1=u.useMemo(()=>{if(L!=="icon")return;if(S)return S;const I=[...new Set(R.map(W=>W.iconValue).filter(Boolean))];if(I.length)return Z0(I,{fill:g??s,size:Math.max(24,Z+8)})},[L,S,R,g,s,Z]),[G,n1]=u.useState({visible:!1,lng:0,lat:0,name:"",index:""}),r1=u.useCallback(I=>{if(O==null||O(I),!P)return;const W=I.feature;W&&n1({visible:!0,lng:I.lng,lat:I.lat,name:String(W.name??""),index:String(W.indexLabel??W.index??"")})},[O,P]);return t1?l.jsxs(l.Fragment,{children:[d&&l.jsx(w1,{source:t1,sourceType:"geojson",shape:Y,color:K?void 0:s,colorField:K?"color":void 0,colorValues:K?H.map(I=>I.color||s):void 0,size:a*2.5,style:{opacity:.15}}),l.jsx(w1,{source:t1,sourceType:"geojson",shape:Y,color:K?void 0:s,colorField:K?"color":void 0,colorValues:K?H.map(I=>I.color||s):void 0,size:K?void 0:a,sizeField:K?"width":void 0,sizeValues:K?H.map(I=>I.width||a):void 0,style:{opacity:c},active:M?{color:M}:!1,onClick:A}),h&&l.jsx(w1,{source:t1,sourceType:"geojson",shape:"line",color:"#ffffff",size:Math.max(1.5,a*.5),style:{opacity:.6,lineType:"dash",lineDash:[8,16]},animate:{enable:!0,speed:y,duration:1500},zIndex:10}),R.length>0&&L==="point"&&l.jsx(C1,{source:R,sourceConfig:{x:"lng",y:"lat"},colorField:"stopColor",colorValues:[...new Set(R.map(I=>I.stopColor))],size:f,shape:"circle",style:{opacity:1,strokeWidth:2,stroke:"#ffffff"},active:M?{color:M}:!1,onClick:r1}),R.length>0&&L==="point"&&C&&l.jsx(C1,{source:R,sourceConfig:{x:"lng",y:"lat"},shapeField:"indexLabel",shapeValues:"text",color:"#ffffff",size:Math.max(10,Math.round(f*.75)),style:{textAnchor:"center",stroke:"rgba(18, 28, 42, 0.28)",strokeWidth:1.5,fontWeight:"700",textAllowOverlap:!0}}),R.length>0&&L==="icon"&&a1&&l.jsx(rt,{source:R,sourceType:"json",sourceConfig:{x:"lng",y:"lat"},iconField:x,iconMap:a1,iconSize:Z,iconAnchor:z,showLabel:C,labelField:"indexLabel",labelColor:"#ffffff",labelSize:11,labelAnchor:"top",labelOffset:[0,z==="bottom"?Math.max(10,Math.round(Z*.6)):0],labelHaloColor:"rgba(18, 28, 42, 0.35)",labelHaloWidth:2,onClick:r1}),R.length>0&&L==="marker"&&R.map((I,W)=>{const l1=I.markerVariant??w,X=I.markerColorValue,s1=ur(I.indexLabel,I.stopColor,C,l1);return l.jsx(A1,{longitude:I.lng,latitude:I.lat,variant:l1,color:X,icon:I.icon,content:s1,label:s1?void 0:C?I.indexLabel:void 0,onClick:u1=>{r1({layerId:"route-stop-marker",layerType:"point",originalEvent:u1,lng:I.lng,lat:I.lat,feature:I})}},`route-stop-marker-${W}`)}),P&&G.visible&&l.jsx(_1,{longitude:G.lng,latitude:G.lat,content:`<div style="min-width:100px"><div style="font-weight:700;font-size:13px;margin-bottom:4px">${G.name}</div><div style="font-size:12px;color:#64748b">第 ${G.index} 站</div></div>`,closeButton:!0,size:"compact",onClose:()=>n1(I=>({...I,visible:!1}))})]}):null}function cr(e){switch(e){case"start":return"success";case"end":return"error";default:return"primary"}}function ur(e,n,t,r){if(!t||r!=="circle"&&r!=="dot")return;const o=r==="circle"?24:18,i=r==="circle"?11:10;return l.jsx("div",{style:{width:o,height:o,borderRadius:"9999px",border:"2px solid #ffffff",background:n,color:"#ffffff",display:"flex",alignItems:"center",justifyContent:"center",fontSize:i,lineHeight:1,fontWeight:700,boxShadow:"0 6px 12px rgba(0,0,0,0.14)"},children:e})}const ot=[73.482190241,3.8150178409999995,135.106618732,57.630045996],dr={type:"linear",colors:["rgba(92,58,16,0)","rgba(92,58,16,0)","#fabd08","#f1e93f","#f1ff8f","#fcfff7"],positions:[0,3,9,22.5,45,90]};function st(e){const n=e[0]/2003750834e-2*180;let t=e[1]/2003750834e-2*180;return t=180/Math.PI*(2*Math.atan(Math.exp(t*Math.PI/180))-Math.PI/2),[n,t]}function hr({url:e,extent:n=ot,renderMode:t="raster",bandIndex:r=0,domain:o=[0,90],noDataValue:i=0,rampColors:s=dr,clampLow:a=!1,clampHigh:c=!1,bands:d=[0,1,2],countCut:h,rMinMax:y,gMinMax:f,bMinMax:g,opacity:p=.8,mask:C=!1,maskData:L}){const[w,S]=u.useState(null),[x,Z]=u.useState(null),[z,P]=u.useState(null);u.useEffect(()=>{let b=!1;async function H(){try{const B=await import("geotiff"),Y=await fetch(e);if(!Y.ok)throw new Error(`Fetch failed: ${Y.status}`);const t1=await Y.arrayBuffer(),R=await(await B.fromArrayBuffer(t1)).getImage(),a1=R.getWidth(),G=R.getHeight(),n1=await R.readRasters();let r1;try{const I=R.getBoundingBox();I&&I.length===4&&(r1=I)}catch{}b||(S({rasters:n1,width:a1,height:G,tiffExtent:r1}),P(null))}catch(B){b||(P(B instanceof Error?B.message:"Failed to load TIFF"),console.error("[TiffRasterLayer] Load error:",B))}}return H(),()=>{b=!0}},[e]),u.useEffect(()=>{if(!C||!L)return;let b=!1;return typeof L=="string"?fetch(L).then(H=>H.json()).then(H=>{b||Z(H)}).catch(H=>console.error("[TiffRasterLayer] Mask load error:",H)):Z(L),()=>{b=!0}},[C,L]);const M=u.useMemo(()=>{if(n!==ot)return n;if(w!=null&&w.tiffExtent){const[b,H,B,Y]=w.tiffExtent;if(Math.abs(b)>180||Math.abs(B)>180){const t1=st([b,H]),K=st([B,Y]);return[t1[0],t1[1],K[0],K[1]]}return w.tiffExtent}return n},[n,w==null?void 0:w.tiffExtent]),A=u.useMemo(()=>{if(!w)return null;if(t==="rgb"){const b={type:"rgb",width:w.width,height:w.height,bands:d,extent:M};return y&&(b.RMinMax=y),f&&(b.GMinMax=f),g&&(b.BMinMax=g),h&&(b.countCut=h),{parser:b}}return t==="ndi"?{parser:{type:"ndi",width:w.width,height:w.height,bands:d,extent:M}}:{parser:{type:"raster",width:w.width,height:w.height,extent:M}}},[w,t,d,M]),O=u.useMemo(()=>t==="rgb"?{opacity:p}:t==="ndi"?{domain:o,rampColors:s,opacity:p}:{clampLow:a,clampHigh:c,domain:o,noDataValue:i,rampColors:s,opacity:p},[t,a,c,o,i,s,p]),V=u.useMemo(()=>w?t==="rgb"||t==="ndi"?w.rasters:w.rasters[r]:null,[w,t,r]),D=h1(),_=u.useRef(null);u.useRef(!1);const F=!C||!!x;return u.useEffect(()=>{if(!D||!A||!V||!F)return;_.current&&(D.removeLayer(_.current),_.current=null);const b={zIndex:10};C&&x&&(b.mask=!0,b.maskfence=x);const H=new p1.RasterLayer(b);return H.source(V,{parser:A.parser}),H.style(O),D.addLayer(H),_.current=H,()=>{_.current&&D&&(D.removeLayer(_.current),_.current=null)}},[D,A,V,F,x]),null}function it({position:e="bottomleft",className:n,style:t,children:r}){const{positionClassName:o}=L1(e),i=v1();if(!r)return null;const s=l.jsx("div",{className:`l7-control l7-control-legend l7-control--glass${n?` ${n}`:""}`,style:{padding:"12px 14px",borderRadius:8,maxHeight:"40%",overflowY:"auto",...t},children:r});return i?s:l.jsx("div",{className:`l7-control-anchor ${o}`,children:s})}y1.mark(it);function lt({logos:e,position:n="bottomleft",className:t,style:r}){const{positionClassName:o}=L1(n),i=v1(),s=l.jsx("div",{className:`l7-control l7-control-logo${t?` ${t}`:""}`,style:r,children:e.map((a,c)=>{const d=l.jsx("img",{src:a.src,alt:a.alt??"logo",width:a.width??24,height:a.width??24,style:{objectFit:"contain",display:"block"}},c);return a.href?l.jsx("a",{href:a.href,target:"_blank",rel:"noopener noreferrer",className:"l7-control-logo-link",children:d},c):l.jsx("div",{className:"l7-control-logo-link",children:d},c)})});return i?s:l.jsx("div",{className:`l7-control-anchor ${o}`,children:s})}y1.mark(lt);function fr({children:e,defaultSnap:n="collapsed",collapsedHeight:t=80,halfRatio:r=.45,expandedRatio:o=.85,onSnapChange:i,className:s,showHandle:a=!0,borderRadius:c=32}){const d=u.useRef(null),h=u.useRef(0),y=u.useRef(0),f=u.useRef(!1),[g,p]=u.useState(0),[C,L]=u.useState(n),[w,S]=u.useState(!1),x=u.useCallback(()=>{var D;const V=(D=d.current)==null?void 0:D.offsetParent;return V?V.clientHeight:window.innerHeight},[]),Z=u.useCallback(V=>{const D=x();switch(V){case"collapsed":return t;case"half":return D*r;case"expanded":return D*o}},[t,r,o,x]);u.useEffect(()=>{p(Z(n))},[n,Z]);const z=u.useCallback((V,D)=>{const _=Z("collapsed"),F=Z("half"),b=Z("expanded");let H;if(Math.abs(D)>.5)D>0?H=V>F?"expanded":"half":H=V<F?"collapsed":"half";else{const B=Math.abs(V-_),Y=Math.abs(V-F),t1=Math.abs(V-b),K=Math.min(B,Y,t1);K===B?H="collapsed":K===Y?H="half":H="expanded"}S(!0),L(H),p(Z(H)),i==null||i(H),setTimeout(()=>S(!1),300)},[Z,i]),P=u.useCallback(V=>{f.current=!0,h.current=V.touches[0].clientY,y.current=g,S(!1)},[g]),M=u.useCallback(V=>{if(!f.current)return;const D=h.current-V.touches[0].clientY,_=x()*o,F=Math.max(t,Math.min(_,y.current+D));p(F)},[t,o,x]),A=u.useCallback(V=>{if(!f.current)return;f.current=!1;const _=(h.current-V.changedTouches[0].clientY)/100;z(g,_)},[g,z]),O=u.useCallback(V=>{f.current=!0,h.current=V.clientY,y.current=g,S(!1);const D=F=>{if(!f.current)return;const b=h.current-F.clientY,H=x()*o,B=Math.max(t,Math.min(H,y.current+b));p(B)},_=F=>{f.current=!1;const H=(h.current-F.clientY)/100,B=x()*o;z(Math.max(t,Math.min(B,y.current+(h.current-F.clientY))),H),document.removeEventListener("mousemove",D),document.removeEventListener("mouseup",_)};document.addEventListener("mousemove",D),document.addEventListener("mouseup",_)},[g,t,o,z,x]);return u.useCallback(V=>{S(!0),L(V),p(Z(V)),i==null||i(V),setTimeout(()=>S(!1),300)},[Z,i]),l.jsx("div",{ref:d,className:s,style:{position:"absolute",bottom:0,left:0,width:"100%",height:g,zIndex:1e3,pointerEvents:"auto",transition:w?"height 0.3s cubic-bezier(0.4, 0, 0.2, 1)":"none",willChange:"height",touchAction:"none"},children:l.jsxs("div",{style:{width:"100%",height:"100%",background:"var(--color-surface, #f8f9ff)",borderTopLeftRadius:c,borderTopRightRadius:c,boxShadow:"0 -10px 40px rgba(0, 0, 0, 0.15)",borderTop:"1px solid rgba(195, 198, 215, 0.2)",display:"flex",flexDirection:"column",overflow:"hidden"},children:[l.jsx("div",{onTouchStart:P,onTouchMove:M,onTouchEnd:A,onMouseDown:O,style:{padding:"12px 0 16px",cursor:"grab",userSelect:"none",flexShrink:0},children:a&&l.jsx("div",{style:{width:48,height:6,borderRadius:3,background:"rgba(195, 198, 215, 0.5)",margin:"0 auto"}})}),l.jsx("div",{style:{flex:1,overflowY:C==="collapsed"?"hidden":"auto",overflowX:"hidden",padding:"0 16px",WebkitOverflowScrolling:"touch",msOverflowStyle:"none",scrollbarWidth:"none"},children:e})]})})}function pr({placeholder:e="搜索地点...",onSearch:n,onFilter:t,className:r,trailing:o}){const[i,s]=u.useState(""),a=u.useCallback(d=>{const h=d.target.value;s(h),n==null||n(h)},[n]),c=u.useCallback(()=>{s(""),n==null||n("")},[n]);return l.jsxs("div",{className:`glass-panel ${r??""}`,style:{display:"flex",alignItems:"center",padding:"12px 16px",borderRadius:16,boxShadow:"0 2px 8px rgba(0, 0, 0, 0.08)",border:"1px solid rgba(195, 198, 215, 0.3)"},children:[l.jsx("span",{className:"material-symbols-outlined",style:{color:"var(--color-primary, #004ac6)",marginRight:12,fontSize:22},children:"search"}),l.jsx("input",{type:"text",value:i,onChange:a,placeholder:e,style:{flex:1,border:"none",background:"transparent",outline:"none",fontSize:14,lineHeight:"20px",color:"var(--color-on-surface, #121c2a)"}}),i&&l.jsx("button",{onClick:c,style:{background:"none",border:"none",cursor:"pointer",padding:4,borderRadius:999,display:"flex",alignItems:"center",justifyContent:"center"},children:l.jsx("span",{className:"material-symbols-outlined",style:{fontSize:18,color:"var(--color-on-surface-variant, #434655)"},children:"close"})}),t&&l.jsx("button",{onClick:t,style:{background:"none",border:"none",cursor:"pointer",padding:4,borderRadius:999,display:"flex",alignItems:"center",justifyContent:"center",marginLeft:4},children:l.jsx("span",{className:"material-symbols-outlined",style:{fontSize:22,color:"var(--color-on-surface-variant, #434655)"},children:"tune"})}),o]})}function Ie(e,n){if(!n)return e;const t={...e};for(const r of Object.keys(n)){const o=n[r],i=t[r];o!==null&&typeof o=="object"&&!Array.isArray(o)&&i!==null&&typeof i=="object"&&!Array.isArray(i)?t[r]=Ie(i,o):o!==void 0&&(t[r]=o)}return t}function gr(e,n){return n?Ie(e,n):e}class yr extends u.Component{constructor(){super(...arguments),this.state={hasError:!1,error:null}}static getDerivedStateFromError(n){return{hasError:!0,error:n}}componentDidCatch(n,t){var r,o;(o=(r=this.props).onError)==null||o.call(r,n,t)}render(){if(this.state.hasError){const{fallback:n}=this.props,{error:t}=this.state;return typeof n=="function"?n(t):n||l.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",width:"100%",height:"100%",padding:32,color:"#666",fontFamily:"system-ui, sans-serif"},children:[l.jsx("span",{className:"material-symbols-outlined",style:{fontSize:48,marginBottom:16,color:"#e53e3e"},children:"error"}),l.jsx("p",{style:{fontSize:16,fontWeight:600,marginBottom:8},children:"地图加载失败"}),l.jsx("p",{style:{fontSize:13,color:"#999"},children:(t==null?void 0:t.message)??"未知错误"})]})}return this.props.children}}return U.ADMIN_SEQUENTIAL_COLORS=J0,U.AiMap=d5,U.AiMapJSONSchema=L5,U.ArcFlowLayer=lr,U.BottomSheet=fr,U.BubbleLayer=M5,U.ChinaDistrict=_5,U.ControlContainer=ce,U.ControlRegistry=y1,U.ControlRenderer=k0,U.DEFAULT_CITY_SOURCE=K0,U.DEFAULT_DISTRICT_SOURCE=Q0,U.DEFAULT_PROVINCE_SOURCE=X0,U.DrawControl=be,U.ErrorBoundary=yr,U.EventBus=Be,U.EventBusProvider=qe,U.ExportImageControl=Ce,U.FillLayer=A5,U.FullscreenControl=fe,U.GAODE_THEME_PRESETS=ge,U.GeoLocateControl=pe,U.GlyphLayer=rr,U.HeatmapHexagonLayer=B0,U.HeatmapLayer=j0,U.HexagonLayer=B0,U.INDEPENDENT_MAP_THEME_PRESETS=ln,U.IconLayer=rt,U.ImageCalibrationControl=xe,U.ImageLayer=b5,U.InteractionRenderer=F0,U.LayerRenderer=a0,U.LayerSwitchControl=ve,U.LegendCategories=Me,U.LegendControl=it,U.LegendDiverging=He,U.LegendIcon=Ee,U.LegendLineWidth=Ve,U.LegendProportion=ke,U.LegendRamp=we,U.LegendRenderer=N0,U.LegendSize=ze,U.LegendThreshold=Se,U.LineLayer=w1,U.LogoControl=lt,U.MAKI_ICONS=z1,U.MAKI_ICON_NAMES=Qn,U.MapSceneRenderer=Re,U.MapThemeControl=ye,U.Marker=A1,U.MarkerClusterLayer=w5,U.MobileSheetLegend=O0,U.MobileToolbar=$0,U.MouseLocationControl=me,U.OPENFREEMAP_THEME_PRESETS=sn,U.PointLayer=C1,U.PolygonLayer=Q1,U.Popup=_1,U.RasterLayer=U0,U.ResponsiveProvider=c5,U.RouteLayer=ar,U.SATELLITE_PROVIDER_NAMES=sr,U.SatelliteLayer=ir,U.ScaleControl=he,U.SceneProvider=Ke,U.SchemaProvider=je,U.SearchBar=pr,U.ThemeProvider=Ye,U.TiffRasterLayer=hr,U.Tooltip=ie,U.ZoomControl=ue,U.adaptHeatmapLayer=s0,U.adaptImageLayer=l0,U.adaptLineLayer=r0,U.adaptPointLayer=n0,U.adaptPolygonLayer=o0,U.adaptRasterLayer=i0,U.applyControlDefaults=De,U.applyLayerDefaults=_e,U.applyMapDefaults=j1,U.applyResponsiveOverrides=gr,U.applySchemaDefaults=ee,U.createBasemap=Qe,U.createEventBus=Ue,U.createMakiIconMap=Rn,U.createMakiPinMap=Z0,U.cx=d1,U.deepMerge=Ie,U.diffSchema=y5,U.hexToRgba=Dt,U.makiIconUrl=E0,U.makiPinUrl=A0,U.parseSchema=$e,U.useControlContainer=v1,U.useEventBus=te,U.useMapControl=L1,U.useMapPosition=oe,U.useResponsive=D0,U.useScene=h1,U.useSchema=Lt,U.useTheme=Je,U.validateAiMapSchema=m5,U.validateSchema=vt,Object.defineProperty(U,Symbol.toStringTag,{value:"Module"}),U})({},React,React,L7,ReactDOM,clsx,ReactDOM,Supercluster);