streamlit-nightly 1.45.2.dev20250512__py3-none-any.whl → 1.45.2.dev20250514__py3-none-any.whl
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.
- streamlit/__init__.py +1 -0
- streamlit/auth_util.py +6 -6
- streamlit/commands/echo.py +5 -3
- streamlit/commands/execution_control.py +30 -30
- streamlit/components/v1/custom_component.py +2 -2
- streamlit/config.py +7 -7
- streamlit/config_util.py +5 -6
- streamlit/delta_generator.py +4 -1
- streamlit/deprecation_util.py +5 -5
- streamlit/elements/doc_string.py +4 -6
- streamlit/elements/heading.py +3 -4
- streamlit/elements/html.py +3 -4
- streamlit/elements/lib/built_in_chart_utils.py +14 -11
- streamlit/elements/lib/image_utils.py +2 -3
- streamlit/elements/lib/options_selector_utils.py +1 -2
- streamlit/elements/lib/pandas_styler_utils.py +1 -3
- streamlit/elements/lib/policies.py +1 -1
- streamlit/elements/lib/subtitle_utils.py +6 -9
- streamlit/elements/map.py +1 -2
- streamlit/elements/plotly_chart.py +1 -2
- streamlit/elements/spinner.py +1 -1
- streamlit/elements/toast.py +1 -2
- streamlit/elements/vega_charts.py +1 -1
- streamlit/elements/widgets/chat.py +25 -27
- streamlit/elements/widgets/file_uploader.py +2 -2
- streamlit/elements/widgets/radio.py +4 -5
- streamlit/elements/widgets/select_slider.py +9 -11
- streamlit/elements/widgets/slider.py +1 -1
- streamlit/elements/write.py +2 -2
- streamlit/error_util.py +15 -8
- streamlit/errors.py +10 -7
- streamlit/file_util.py +6 -3
- streamlit/git_util.py +26 -21
- streamlit/hello/dataframe_demo.py +1 -1
- streamlit/hello/mapping_demo.py +1 -1
- streamlit/hello/plotting_demo.py +3 -3
- streamlit/hello/streamlit_app.py +1 -1
- streamlit/hello/utils.py +2 -1
- streamlit/navigation/page.py +5 -6
- streamlit/runtime/app_session.py +4 -4
- streamlit/runtime/caching/cache_data_api.py +2 -2
- streamlit/runtime/caching/cache_errors.py +1 -1
- streamlit/runtime/caching/cache_resource_api.py +1 -1
- streamlit/runtime/caching/cache_utils.py +3 -3
- streamlit/runtime/caching/cached_message_replay.py +1 -2
- streamlit/runtime/caching/hashing.py +2 -2
- streamlit/runtime/caching/storage/in_memory_cache_storage_wrapper.py +2 -3
- streamlit/runtime/context.py +1 -5
- streamlit/runtime/credentials.py +4 -4
- streamlit/runtime/forward_msg_queue.py +1 -1
- streamlit/runtime/media_file_manager.py +1 -2
- streamlit/runtime/memory_uploaded_file_manager.py +1 -1
- streamlit/runtime/metrics_util.py +1 -1
- streamlit/runtime/runtime.py +1 -1
- streamlit/runtime/scriptrunner/exec_code.py +1 -1
- streamlit/runtime/scriptrunner/script_cache.py +1 -1
- streamlit/runtime/scriptrunner/script_runner.py +9 -2
- streamlit/runtime/scriptrunner_utils/script_requests.py +3 -3
- streamlit/runtime/scriptrunner_utils/script_run_context.py +3 -3
- streamlit/runtime/secrets.py +6 -7
- streamlit/runtime/state/query_params.py +1 -1
- streamlit/runtime/state/session_state.py +1 -2
- streamlit/runtime/stats.py +1 -1
- streamlit/static/index.html +1 -1
- streamlit/static/static/js/{ErrorOutline.esm.Cfhrjz42.js → ErrorOutline.esm.DbGVRvJi.js} +1 -1
- streamlit/static/static/js/{FileDownload.esm.BN5DkI-d.js → FileDownload.esm.Dsazfko3.js} +1 -1
- streamlit/static/static/js/{FileHelper.BWWhRdUs.js → FileHelper.MycXbml-.js} +1 -1
- streamlit/static/static/js/{FormClearHelper.CHPGUkGG.js → FormClearHelper.BBCnWP4b.js} +1 -1
- streamlit/static/static/js/{Hooks.DjxyUmgD.js → Hooks.Cogxcj3O.js} +1 -1
- streamlit/static/static/js/{InputInstructions.Bkai2tFZ.js → InputInstructions.DmFmv5Ss.js} +1 -1
- streamlit/static/static/js/{ProgressBar.DFiqS51i.js → ProgressBar.CL8D7fKU.js} +1 -1
- streamlit/static/static/js/{RenderInPortalIfExists.DWTzV71R.js → RenderInPortalIfExists.BIF2_x-k.js} +1 -1
- streamlit/static/static/js/{Toolbar.Dk2A3VxL.js → Toolbar.BiePqUs0.js} +1 -1
- streamlit/static/static/js/{base-input.DfiT3r4p.js → base-input.9-IewVJN.js} +1 -1
- streamlit/static/static/js/{checkbox.DLXFjls2.js → checkbox.CvxVkFoK.js} +1 -1
- streamlit/static/static/js/{createSuper.n2DV0o-4.js → createSuper.CcYwpbOm.js} +1 -1
- streamlit/static/static/js/{data-grid-overlay-editor.v1LF25Ml.js → data-grid-overlay-editor.DVakjLUQ.js} +1 -1
- streamlit/static/static/js/{downloader.CI8EFE9Y.js → downloader.DUDYpW4X.js} +1 -1
- streamlit/static/static/js/{es6.CH6Tf3Uw.js → es6.Dd8C3gJG.js} +2 -2
- streamlit/static/static/js/{iframeResizer.contentWindow.VCjyiSg6.js → iframeResizer.contentWindow.ElqrcVSG.js} +1 -1
- streamlit/static/static/js/{index.7XN_jSTW.js → index.3TsDLcVz.js} +1 -1
- streamlit/static/static/js/{index.CmsMgepL.js → index.8U8I-dVE.js} +1 -1
- streamlit/static/static/js/{index.BROoC18J.js → index.B5gxNAgv.js} +1 -1
- streamlit/static/static/js/{index.B1j5m20t.js → index.BANNX-Et.js} +1 -1
- streamlit/static/static/js/{index.9p279joF.js → index.BRTdJWEL.js} +1 -1
- streamlit/static/static/js/{index.DoM9A12Z.js → index.BYGvkzYg.js} +6 -6
- streamlit/static/static/js/{index.DXDmqevk.js → index.Bgid2lLN.js} +1 -1
- streamlit/static/static/js/{index.BgY_Js0s.js → index.BkpDVBQw.js} +1 -1
- streamlit/static/static/js/{index.CXpQxU0G.js → index.Bud-F2Rk.js} +1 -1
- streamlit/static/static/js/{index.B-Q1qQil.js → index.C-wDYZmi.js} +1 -1
- streamlit/static/static/js/{index.C1P3O0oI.js → index.C44ecW4y.js} +1 -1
- streamlit/static/static/js/{index.STF1QdPr.js → index.CDxF0FlW.js} +1 -1
- streamlit/static/static/js/{index.Ovig-AMR.js → index.CM8qhnIu.js} +5 -5
- streamlit/static/static/js/{index.LqvX_Kr6.js → index.Chn8rXFO.js} +1 -1
- streamlit/static/static/js/{index.CR4eM0Q3.js → index.CkOK3vMg.js} +1 -1
- streamlit/static/static/js/{index.DMDjQhhk.js → index.CssifhIa.js} +1 -1
- streamlit/static/static/js/{index.SPkHHODG.js → index.CtEWZzBM.js} +1 -1
- streamlit/static/static/js/{index.uhNJX5pn.js → index.CwLlrvyN.js} +1 -1
- streamlit/static/static/js/{index.nmbrjghZ.js → index.D0fj09K-.js} +1 -1
- streamlit/static/static/js/{index.BFEA8ufN.js → index.D5Y8GQ-0.js} +1 -1
- streamlit/static/static/js/{index.DcH46Eo2.js → index.D8g5_NeN.js} +1 -1
- streamlit/static/static/js/{index.DM_jnlWC.js → index.DK1C5mv_.js} +1 -1
- streamlit/static/static/js/{index.uN3TP5oq.js → index.DNeEyPk6.js} +1 -1
- streamlit/static/static/js/{index.DKsDSPTo.js → index.DWBlm6kP.js} +1 -1
- streamlit/static/static/js/{index.C9ORVZvA.js → index.DWL3vnFa.js} +1 -1
- streamlit/static/static/js/{index.D1DxKfIm.js → index.DX_Td1Hq.js} +1 -1
- streamlit/static/static/js/{index.hFB9saa3.js → index.DfYxhBCm.js} +1 -1
- streamlit/static/static/js/{index.C1TEsRV0.js → index.DgQ-i_4o.js} +75 -75
- streamlit/static/static/js/{index.D_Bv6KD1.js → index.DiE_wY_P.js} +1 -1
- streamlit/static/static/js/{index.DUU38l7N.js → index.DrVpZAT_.js} +1 -1
- streamlit/static/static/js/{index.BEE4v1Vc.js → index.Dxf51cqQ.js} +1 -1
- streamlit/static/static/js/{index.jZkr87Ly.js → index.Ogd9LUng.js} +1 -1
- streamlit/static/static/js/{index.ZuW7Olhm.js → index.PYQDVW05.js} +1 -1
- streamlit/static/static/js/{index.DgeyRl4J.js → index.QqgppQA_.js} +1 -1
- streamlit/static/static/js/{index.D1An7GDs.js → index.rR2rxOdw.js} +1 -1
- streamlit/static/static/js/{index.BWVpiUBA.js → index.uT7_kc4D.js} +1 -1
- streamlit/static/static/js/{index.Cdsxte9t.js → index.y8UOtxmw.js} +1 -1
- streamlit/static/static/js/{input.BAfiLByr.js → input.D1uIuNvR.js} +1 -1
- streamlit/static/static/js/{memory.CvD1KGKJ.js → memory.C_YLF4Fx.js} +1 -1
- streamlit/static/static/js/{mergeWith.Dy4BuY-h.js → mergeWith.BrhEAUIQ.js} +1 -1
- streamlit/static/static/js/{number-overlay-editor.Bl84FLfp.js → number-overlay-editor.Cl4hS5U2.js} +1 -1
- streamlit/static/static/js/{possibleConstructorReturn.gffiKeDQ.js → possibleConstructorReturn.BizCfnoE.js} +1 -1
- streamlit/static/static/js/{sandbox.BXw8ya9t.js → sandbox.BYlf4D-n.js} +1 -1
- streamlit/static/static/js/{textarea.DNNNKi6n.js → textarea.BvMrgzVs.js} +1 -1
- streamlit/static/static/js/{timepicker.CgHlrhoy.js → timepicker.8sMF8VpM.js} +1 -1
- streamlit/static/static/js/{toConsumableArray.MtZ-3vir.js → toConsumableArray.Cl96Bc5x.js} +1 -1
- streamlit/static/static/js/{uniqueId.CFcd6g0d.js → uniqueId.BoXr82qs.js} +1 -1
- streamlit/static/static/js/{useBasicWidgetState.DadZUraL.js → useBasicWidgetState.DYpB4KjS.js} +1 -1
- streamlit/static/static/js/{useOnInputChange.V6d5TCFH.js → useOnInputChange.D17AAeVI.js} +1 -1
- streamlit/static/static/js/{withFullScreenWrapper.8qpius26.js → withFullScreenWrapper.Lq8QUQxx.js} +1 -1
- streamlit/temporary_directory.py +2 -2
- streamlit/testing/v1/app_test.py +2 -2
- streamlit/testing/v1/element_tree.py +7 -9
- streamlit/testing/v1/local_script_runner.py +1 -2
- streamlit/url_util.py +1 -1
- streamlit/watcher/folder_black_list.py +1 -1
- streamlit/watcher/local_sources_watcher.py +5 -3
- streamlit/watcher/path_watcher.py +1 -1
- streamlit/watcher/polling_path_watcher.py +1 -1
- streamlit/watcher/util.py +6 -5
- streamlit/web/bootstrap.py +4 -4
- streamlit/web/cli.py +13 -13
- streamlit/web/server/app_static_file_handler.py +1 -1
- streamlit/web/server/authlib_tornado_integration.py +6 -1
- streamlit/web/server/oauth_authlib_routes.py +3 -3
- streamlit/web/server/oidc_mixin.py +15 -3
- streamlit/web/server/routes.py +11 -11
- streamlit/web/server/stats_request_handler.py +2 -2
- {streamlit_nightly-1.45.2.dev20250512.dist-info → streamlit_nightly-1.45.2.dev20250514.dist-info}/METADATA +1 -1
- {streamlit_nightly-1.45.2.dev20250512.dist-info → streamlit_nightly-1.45.2.dev20250514.dist-info}/RECORD +154 -154
- {streamlit_nightly-1.45.2.dev20250512.dist-info → streamlit_nightly-1.45.2.dev20250514.dist-info}/WHEEL +1 -1
- {streamlit_nightly-1.45.2.dev20250512.data → streamlit_nightly-1.45.2.dev20250514.data}/scripts/streamlit.cmd +0 -0
- {streamlit_nightly-1.45.2.dev20250512.dist-info → streamlit_nightly-1.45.2.dev20250514.dist-info}/entry_points.txt +0 -0
- {streamlit_nightly-1.45.2.dev20250512.dist-info → streamlit_nightly-1.45.2.dev20250514.dist-info}/top_level.txt +0 -0
@@ -1,9 +1,9 @@
|
|
1
|
-
var jU=Object.defineProperty;var $U=(r,e,t)=>e in r?jU(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t;var V=(r,e,t)=>$U(r,typeof e!="symbol"?e+"":e,t);import{r as Bt,at as yr,aT as dt,g as ih,aU as Tu,_ as NO,n as kO,B as UO,aD as zO,U as Q1,aV as lB,aA as WU,j as Df,F as JU,aE as XU,z as KU,C as uB,aW as YU,aX as fB}from"./index.
|
1
|
+
var jU=Object.defineProperty;var $U=(r,e,t)=>e in r?jU(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t;var V=(r,e,t)=>$U(r,typeof e!="symbol"?e+"":e,t);import{r as Bt,at as yr,aT as dt,g as ih,aU as Tu,_ as NO,n as kO,B as UO,aD as zO,U as Q1,aV as lB,aA as WU,j as Df,F as JU,aE as XU,z as KU,C as uB,aW as YU,aX as fB}from"./index.DgQ-i_4o.js";import{_ as ls,a as qU,C as ZU}from"./toConsumableArray.Cl96Bc5x.js";import{a as Wu,b as Ju,_ as qx,c as dA,d as Zx}from"./possibleConstructorReturn.BizCfnoE.js";import{a as QU,T as e5}from"./Toolbar.BiePqUs0.js";import{E as GO,w as t5}from"./withFullScreenWrapper.Lq8QUQxx.js";import{u as r5}from"./useBasicWidgetState.DYpB4KjS.js";import{u as n5,s as i5}from"./threshold.DjX0wlsa.js";import"./FormClearHelper.BBCnWP4b.js";import"./value.CgPGBV_l.js";function s5(r,e){for(var t=0;t<e.length;t++){const n=e[t];if(typeof n!="string"&&!Array.isArray(n)){for(const i in n)if(i!=="default"&&!(i in r)){const o=Object.getOwnPropertyDescriptor(n,i);o&&Object.defineProperty(r,i,o.get?o:{enumerable:!0,get:()=>n[i]})}}}return Object.freeze(Object.defineProperty(r,Symbol.toStringTag,{value:"Module"}))}function Hm(r,e){if(!r)throw new Error(e||"loader assertion failed.")}const Qx=!!(typeof process!="object"||String(process)!=="[object process]"||process.browser),hB=typeof process<"u"&&process.version&&/v([0-9]*)/.exec(process.version);hB&&parseFloat(hB[1]);const Pu=globalThis,Ea=globalThis.process||{},o5=globalThis.navigator||{};function VO(r){var n,i;if(typeof window<"u"&&((n=window.process)==null?void 0:n.type)==="renderer"||typeof process<"u"&&((i=process.versions)!=null&&i.electron))return!0;const t=typeof navigator<"u"&&navigator.userAgent;return!!(t&&t.indexOf("Electron")>=0)}function rl(){return!(typeof process=="object"&&String(process)==="[object process]"&&!(process!=null&&process.browser))||VO()}function a5(r){return rl()?VO()?"Electron":(o5.userAgent||"").indexOf("Edge")>-1?"Edge":globalThis.chrome?"Chrome":globalThis.safari?"Safari":globalThis.mozInnerScreenX?"Firefox":"Unknown":"Node"}const iy="4.1.0";function c5(r){try{const e=window[r],t="__storage_test__";return e.setItem(t,t),e.removeItem(t),e}catch{return null}}let l5=class{constructor(e,t,n="sessionStorage"){this.storage=c5(n),this.id=e,this.config=t,this._loadConfiguration()}getConfiguration(){return this.config}setConfiguration(e){if(Object.assign(this.config,e),this.storage){const t=JSON.stringify(this.config);this.storage.setItem(this.id,t)}}_loadConfiguration(){let e={};if(this.storage){const t=this.storage.getItem(this.id);e=t?JSON.parse(t):{}}return Object.assign(this.config,e),this}};function u5(r){let e;return r<10?e=`${r.toFixed(2)}ms`:r<100?e=`${r.toFixed(1)}ms`:r<1e3?e=`${r.toFixed(0)}ms`:e=`${(r/1e3).toFixed(2)}s`,e}function f5(r,e=8){const t=Math.max(e-r.length,0);return`${" ".repeat(t)}${r}`}var jm;(function(r){r[r.BLACK=30]="BLACK",r[r.RED=31]="RED",r[r.GREEN=32]="GREEN",r[r.YELLOW=33]="YELLOW",r[r.BLUE=34]="BLUE",r[r.MAGENTA=35]="MAGENTA",r[r.CYAN=36]="CYAN",r[r.WHITE=37]="WHITE",r[r.BRIGHT_BLACK=90]="BRIGHT_BLACK",r[r.BRIGHT_RED=91]="BRIGHT_RED",r[r.BRIGHT_GREEN=92]="BRIGHT_GREEN",r[r.BRIGHT_YELLOW=93]="BRIGHT_YELLOW",r[r.BRIGHT_BLUE=94]="BRIGHT_BLUE",r[r.BRIGHT_MAGENTA=95]="BRIGHT_MAGENTA",r[r.BRIGHT_CYAN=96]="BRIGHT_CYAN",r[r.BRIGHT_WHITE=97]="BRIGHT_WHITE"})(jm||(jm={}));const h5=10;function dB(r){return typeof r!="string"?r:(r=r.toUpperCase(),jm[r]||jm.WHITE)}function d5(r,e,t){return!rl&&typeof r=="string"&&(e&&(r=`\x1B[${dB(e)}m${r}\x1B[39m`),t&&(r=`\x1B[${dB(t)+h5}m${r}\x1B[49m`)),r}function A5(r,e=["constructor"]){const t=Object.getPrototypeOf(r),n=Object.getOwnPropertyNames(t),i=r;for(const o of n){const s=i[o];typeof s=="function"&&(e.find(c=>o===c)||(i[o]=s.bind(r)))}}function ew(r,e){if(!r)throw new Error("Assertion failed")}function id(){var e,t,n;let r;if(rl()&&Pu.performance)r=(t=(e=Pu==null?void 0:Pu.performance)==null?void 0:e.now)==null?void 0:t.call(e);else if("hrtime"in Ea){const i=(n=Ea==null?void 0:Ea.hrtime)==null?void 0:n.call(Ea);r=i[0]*1e3+i[1]/1e6}else r=Date.now();return r}const sd={debug:rl()&&console.debug||console.log,log:console.log,info:console.info,warn:console.warn,error:console.error},p5={enabled:!0,level:0};function od(){}const AB={},pB={once:!0};let HO=class{constructor({id:e}={id:""}){this.VERSION=iy,this._startTs=id(),this._deltaTs=id(),this.userData={},this.LOG_THROTTLE_TIMEOUT=0,this.id=e,this.userData={},this._storage=new l5(`__probe-${this.id}__`,p5),this.timeStamp(`${this.id} started`),A5(this),Object.seal(this)}set level(e){this.setLevel(e)}get level(){return this.getLevel()}isEnabled(){return this._storage.config.enabled}getLevel(){return this._storage.config.level}getTotal(){return Number((id()-this._startTs).toPrecision(10))}getDelta(){return Number((id()-this._deltaTs).toPrecision(10))}set priority(e){this.level=e}get priority(){return this.level}getPriority(){return this.level}enable(e=!0){return this._storage.setConfiguration({enabled:e}),this}setLevel(e){return this._storage.setConfiguration({level:e}),this}get(e){return this._storage.config[e]}set(e,t){this._storage.setConfiguration({[e]:t})}settings(){console.table?console.table(this._storage.config):console.log(this._storage.config)}assert(e,t){if(!e)throw new Error(t||"Assertion failed")}warn(e){return this._getLogFunction(0,e,sd.warn,arguments,pB)}error(e){return this._getLogFunction(0,e,sd.error,arguments)}deprecated(e,t){return this.warn(`\`${e}\` is deprecated and will be removed in a later version. Use \`${t}\` instead`)}removed(e,t){return this.error(`\`${e}\` has been removed. Use \`${t}\` instead`)}probe(e,t){return this._getLogFunction(e,t,sd.log,arguments,{time:!0,once:!0})}log(e,t){return this._getLogFunction(e,t,sd.debug,arguments)}info(e,t){return this._getLogFunction(e,t,console.info,arguments)}once(e,t){return this._getLogFunction(e,t,sd.debug||sd.info,arguments,pB)}table(e,t,n){return t?this._getLogFunction(e,t,console.table||od,n&&[n],{tag:m5(t)}):od}time(e,t){return this._getLogFunction(e,t,console.time?console.time:console.info)}timeEnd(e,t){return this._getLogFunction(e,t,console.timeEnd?console.timeEnd:console.info)}timeStamp(e,t){return this._getLogFunction(e,t,console.timeStamp||od)}group(e,t,n={collapsed:!1}){const i=gB({logLevel:e,message:t,opts:n}),{collapsed:o}=n;return i.method=(o?console.groupCollapsed:console.group)||console.info,this._getLogFunction(i)}groupCollapsed(e,t,n={}){return this.group(e,t,Object.assign({},n,{collapsed:!0}))}groupEnd(e){return this._getLogFunction(e,"",console.groupEnd||od)}withGroup(e,t,n){this.group(e,t)();try{n()}finally{this.groupEnd(e)()}}trace(){console.trace&&console.trace()}_shouldLog(e){return this.isEnabled()&&this.getLevel()>=jO(e)}_getLogFunction(e,t,n,i,o){if(this._shouldLog(e)){o=gB({logLevel:e,message:t,args:i,opts:o}),n=n||o.method,ew(n),o.total=this.getTotal(),o.delta=this.getDelta(),this._deltaTs=id();const s=o.tag||o.message;if(o.once&&s)if(!AB[s])AB[s]=id();else return od;return t=g5(this.id,o.message,o),n.bind(console,t,...o.args)}return od}};HO.VERSION=iy;function jO(r){if(!r)return 0;let e;switch(typeof r){case"number":e=r;break;case"object":e=r.logLevel||r.priority||0;break;default:return 0}return ew(Number.isFinite(e)&&e>=0),e}function gB(r){const{logLevel:e,message:t}=r;r.logLevel=jO(e);const n=r.args?Array.from(r.args):[];for(;n.length&&n.shift()!==t;);switch(typeof e){case"string":case"function":t!==void 0&&n.unshift(t),r.message=e;break;case"object":Object.assign(r,e);break}typeof r.message=="function"&&(r.message=r.message());const i=typeof r.message;return ew(i==="string"||i==="object"),Object.assign(r,{args:n},r.opts)}function g5(r,e,t){if(typeof e=="string"){const n=t.time?f5(u5(t.total)):"";e=t.time?`${r}: ${n} ${e}`:`${r}: ${e}`,e=d5(e,t.color,t.background)}return e}function m5(r){for(const e in r)for(const t in r[e])return t||"untitled";return"empty"}function _5(r,e){return $O(r||{},e)}function $O(r,e,t=0){if(t>3)return e;const n={...r};for(const[i,o]of Object.entries(e))o&&typeof o=="object"&&!Array.isArray(o)?n[i]=$O(n[i]||{},e[i],t+1):n[i]=e[i];return n}const y5="latest";function v5(){var r;return(r=globalThis._loadersgl_)!=null&&r.version||(globalThis._loadersgl_=globalThis._loadersgl_||{},globalThis._loadersgl_.version="4.2.4"),globalThis._loadersgl_.version}const b5=v5();function ku(r,e){if(!r)throw new Error(e||"loaders.gl assertion failed.")}const $f=typeof process!="object"||String(process)!=="[object process]"||process.browser,x5=typeof window<"u"&&typeof window.orientation<"u",mB=typeof process<"u"&&process.version&&/v([0-9]*)/.exec(process.version);mB&&parseFloat(mB[1]);let w5=class{constructor(e,t){V(this,"name");V(this,"workerThread");V(this,"isRunning",!0);V(this,"result");V(this,"_resolve",()=>{});V(this,"_reject",()=>{});this.name=e,this.workerThread=t,this.result=new Promise((n,i)=>{this._resolve=n,this._reject=i})}postMessage(e,t){this.workerThread.postMessage({source:"loaders.gl",type:e,payload:t})}done(e){ku(this.isRunning),this.isRunning=!1,this._resolve(e)}error(e){ku(this.isRunning),this.isRunning=!1,this._reject(e)}},Lv=class{terminate(){}};const Nv=new Map;function C5(r){ku(r.source&&!r.url||!r.source&&r.url);let e=Nv.get(r.source||r.url);return e||(r.url&&(e=E5(r.url),Nv.set(r.url,e)),r.source&&(e=WO(r.source),Nv.set(r.source,e))),ku(e),e}function E5(r){if(!r.startsWith("http"))return r;const e=T5(r);return WO(e)}function WO(r){const e=new Blob([r],{type:"application/javascript"});return URL.createObjectURL(e)}function T5(r){return`try {
|
2
2
|
importScripts('${r}');
|
3
3
|
} catch (error) {
|
4
4
|
console.error(error);
|
5
5
|
throw error;
|
6
|
-
}`}function JO(r,e=!0,t){const n=t||new Set;if(r){if(_B(r))n.add(r);else if(_B(r.buffer))n.add(r.buffer);else if(!ArrayBuffer.isView(r)){if(e&&typeof r=="object")for(const i in r)JO(r[i],e,n)}}return t===void 0?Array.from(n):[]}function _B(r){return r?r instanceof ArrayBuffer||typeof MessagePort<"u"&&r instanceof MessagePort||typeof ImageBitmap<"u"&&r instanceof ImageBitmap||typeof OffscreenCanvas<"u"&&r instanceof OffscreenCanvas:!1}const kv=()=>{};let e2=class{constructor(e){V(this,"name");V(this,"source");V(this,"url");V(this,"terminated",!1);V(this,"worker");V(this,"onMessage");V(this,"onError");V(this,"_loadableURL","");const{name:t,source:n,url:i}=e;ku(n||i),this.name=t,this.source=n,this.url=i,this.onMessage=kv,this.onError=o=>console.log(o),this.worker=$f?this._createBrowserWorker():this._createNodeWorker()}static isSupported(){return typeof Worker<"u"&&$f||typeof Lv<"u"&&!$f}destroy(){this.onMessage=kv,this.onError=kv,this.worker.terminate(),this.terminated=!0}get isRunning(){return!!this.onMessage}postMessage(e,t){t=t||JO(e),this.worker.postMessage(e,t)}_getErrorFromErrorEvent(e){let t="Failed to load ";return t+=`worker ${this.name} from ${this.url}. `,e.message&&(t+=`${e.message} in `),e.lineno&&(t+=`:${e.lineno}:${e.colno}`),new Error(t)}_createBrowserWorker(){this._loadableURL=C5({source:this.source,url:this.url});const e=new Worker(this._loadableURL,{name:this.name});return e.onmessage=t=>{t.data?this.onMessage(t.data):this.onError(new Error("No data received"))},e.onerror=t=>{this.onError(this._getErrorFromErrorEvent(t)),this.terminated=!0},e.onmessageerror=t=>console.error(t),e}_createNodeWorker(){let e;if(this.url){const n=this.url.includes(":/")||this.url.startsWith("/")?this.url:`./${this.url}`;e=new Lv(n,{eval:!1})}else if(this.source)e=new Lv(this.source,{eval:!0});else throw new Error("no worker");return e.on("message",t=>{this.onMessage(t)}),e.on("error",t=>{this.onError(t)}),e.on("exit",t=>{}),e}},B5=class{constructor(e){V(this,"name","unnamed");V(this,"source");V(this,"url");V(this,"maxConcurrency",1);V(this,"maxMobileConcurrency",1);V(this,"onDebug",()=>{});V(this,"reuseWorkers",!0);V(this,"props",{});V(this,"jobQueue",[]);V(this,"idleQueue",[]);V(this,"count",0);V(this,"isDestroyed",!1);this.source=e.source,this.url=e.url,this.setProps(e)}static isSupported(){return e2.isSupported()}destroy(){this.idleQueue.forEach(e=>e.destroy()),this.isDestroyed=!0}setProps(e){this.props={...this.props,...e},e.name!==void 0&&(this.name=e.name),e.maxConcurrency!==void 0&&(this.maxConcurrency=e.maxConcurrency),e.maxMobileConcurrency!==void 0&&(this.maxMobileConcurrency=e.maxMobileConcurrency),e.reuseWorkers!==void 0&&(this.reuseWorkers=e.reuseWorkers),e.onDebug!==void 0&&(this.onDebug=e.onDebug)}async startJob(e,t=(i,o,s)=>i.done(s),n=(i,o)=>i.error(o)){const i=new Promise(o=>(this.jobQueue.push({name:e,onMessage:t,onError:n,onStart:o}),this));return this._startQueuedJob(),await i}async _startQueuedJob(){if(!this.jobQueue.length)return;const e=this._getAvailableWorker();if(!e)return;const t=this.jobQueue.shift();if(t){this.onDebug({message:"Starting job",name:t.name,workerThread:e,backlog:this.jobQueue.length});const n=new w5(t.name,e);e.onMessage=i=>t.onMessage(n,i.type,i.payload),e.onError=i=>t.onError(n,i),t.onStart(n);try{await n.result}catch(i){console.error(`Worker exception: ${i}`)}finally{this.returnWorkerToQueue(e)}}}returnWorkerToQueue(e){!$f||this.isDestroyed||!this.reuseWorkers||this.count>this._getMaxConcurrency()?(e.destroy(),this.count--):this.idleQueue.push(e),this.isDestroyed||this._startQueuedJob()}_getAvailableWorker(){if(this.idleQueue.length>0)return this.idleQueue.shift()||null;if(this.count<this._getMaxConcurrency()){this.count++;const e=`${this.name.toLowerCase()} (#${this.count} of ${this.maxConcurrency})`;return new e2({name:e,source:this.source,url:this.url})}return null}_getMaxConcurrency(){return x5?this.maxMobileConcurrency:this.maxConcurrency}};const S5={maxConcurrency:3,maxMobileConcurrency:1,reuseWorkers:!0,onDebug:()=>{}};var oc;let XO=(oc=class{constructor(e){V(this,"props");V(this,"workerPools",new Map);this.props={...S5},this.setProps(e),this.workerPools=new Map}static isSupported(){return e2.isSupported()}static getWorkerFarm(e={}){return oc._workerFarm=oc._workerFarm||new oc({}),oc._workerFarm.setProps(e),oc._workerFarm}destroy(){for(const e of this.workerPools.values())e.destroy();this.workerPools=new Map}setProps(e){this.props={...this.props,...e};for(const t of this.workerPools.values())t.setProps(this._getWorkerPoolProps())}getWorkerPool(e){const{name:t,source:n,url:i}=e;let o=this.workerPools.get(t);return o||(o=new B5({name:t,source:n,url:i}),o.setProps(this._getWorkerPoolProps()),this.workerPools.set(t,o)),o}_getWorkerPoolProps(){return{maxConcurrency:this.props.maxConcurrency,maxMobileConcurrency:this.props.maxMobileConcurrency,reuseWorkers:this.props.reuseWorkers,onDebug:this.props.onDebug}}},V(oc,"_workerFarm"),oc);function I5(r,e={}){const t=e[r.id]||{},n=$f?`${r.id}-worker.js`:`${r.id}-worker-node.js`;let i=t.workerUrl;if(!i&&r.id==="compression"&&(i=e.workerUrl),e._workerType==="test"&&($f?i=`modules/${r.module}/dist/${n}`:i=`modules/${r.module}/src/workers/${r.id}-worker-node.ts`),!i){let o=r.version;o==="latest"&&(o=y5);const s=o?`@${o}`:"";i=`https://unpkg.com/@loaders.gl/${r.module}${s}/dist/${n}`}return ku(i),i}function M5(r,e=b5){ku(r,"no worker provided");const t=r.version;return!(!e||!t)}function P5(r,e){return!XO.isSupported()||!$f&&!(e!=null&&e._nodeWorkers)?!1:r.worker&&(e==null?void 0:e.worker)}async function R5(r,e,t,n,i){const o=r.id,s=I5(r,t),f=XO.getWorkerFarm(t).getWorkerPool({name:o,url:s});t=JSON.parse(JSON.stringify(t)),n=JSON.parse(JSON.stringify(n||{}));const _=await f.startJob("process-on-worker",F5.bind(null,i));return _.postMessage("process",{input:e,options:t,context:n}),await(await _.result).result}async function F5(r,e,t,n){switch(t){case"done":e.done(n);break;case"error":e.error(new Error(n.error));break;case"process":const{id:i,input:o,options:s}=n;try{const c=await r(o,s);e.postMessage("done",{id:i,result:c})}catch(c){const f=c instanceof Error?c.message:"unknown error";e.postMessage("error",{id:i,error:f})}break;default:console.warn(`parse-with-worker unknown message ${t}`)}}function O5(r,e,t){if(t=t||r.byteLength,r.byteLength<t||e.byteLength<t)return!1;const n=new Uint8Array(r),i=new Uint8Array(e);for(let o=0;o<n.length;++o)if(n[o]!==i[o])return!1;return!0}function D5(...r){return L5(r)}function L5(r){const e=r.map(o=>o instanceof ArrayBuffer?new Uint8Array(o):o),t=e.reduce((o,s)=>o+s.byteLength,0),n=new Uint8Array(t);let i=0;for(const o of e)n.set(o,i),i+=o.byteLength;return n.buffer}async function N5(r){const e=[];for await(const t of r)e.push(t);return D5(...e)}let k5="";const yB={};function U5(r){for(const e in yB)if(r.startsWith(e)){const t=yB[e];r=r.replace(e,t)}return!r.startsWith("http://")&&!r.startsWith("https://")&&(r=`${k5}${r}`),r}function z5(r){return r&&typeof r=="object"&&r.isBuffer}function KO(r){if(z5(r))return r;if(r instanceof ArrayBuffer)return r;if(ArrayBuffer.isView(r))return r.byteOffset===0&&r.byteLength===r.buffer.byteLength?r.buffer:r.buffer.slice(r.byteOffset,r.byteOffset+r.byteLength);if(typeof r=="string"){const e=r;return new TextEncoder().encode(e).buffer}if(r&&typeof r=="object"&&r._toArrayBuffer)return r._toArrayBuffer();throw new Error("toArrayBuffer")}function YO(r){const e=r?r.lastIndexOf("/"):-1;return e>=0?r.substr(e+1):""}function G5(r){const e=r?r.lastIndexOf("/"):-1;return e>=0?r.substr(0,e):""}const V5=r=>typeof r=="boolean",Up=r=>typeof r=="function",bg=r=>r!==null&&typeof r=="object",vB=r=>bg(r)&&r.constructor==={}.constructor,H5=r=>!!r&&typeof r[Symbol.iterator]=="function",j5=r=>r&&typeof r[Symbol.asyncIterator]=="function",sh=r=>typeof Response<"u"&&r instanceof Response||r&&r.arrayBuffer&&r.text&&r.json,oh=r=>typeof Blob<"u"&&r instanceof Blob,$5=r=>r&&typeof r=="object"&&r.isBuffer,W5=r=>typeof ReadableStream<"u"&&r instanceof ReadableStream||bg(r)&&Up(r.tee)&&Up(r.cancel)&&Up(r.getReader),J5=r=>bg(r)&&Up(r.read)&&Up(r.pipe)&&V5(r.readable),qO=r=>W5(r)||J5(r);let X5=class extends Error{constructor(t,n){super(t);V(this,"reason");V(this,"url");V(this,"response");this.reason=n.reason,this.url=n.url,this.response=n.response}};const K5=/^data:([-\w.]+\/[-\w.+]+)(;|,)/,Y5=/^([-\w.]+\/[-\w.+]+)/;function bB(r,e){return r.toLowerCase()===e.toLowerCase()}function q5(r){const e=Y5.exec(r);return e?e[1]:r}function xB(r){const e=K5.exec(r);return e?e[1]:""}const ZO=/\?.*/;function Z5(r){const e=r.match(ZO);return e&&e[0]}function tw(r){return r.replace(ZO,"")}function Q5(r){if(r.length<50)return r;const e=r.slice(r.length-15);return`${r.substr(0,32)}...${e}`}function sy(r){return sh(r)?r.url:oh(r)?r.name||"":typeof r=="string"?r:""}function rw(r){if(sh(r)){const e=r,t=e.headers.get("content-type")||"",n=tw(e.url);return q5(t)||xB(n)}return oh(r)?r.type||"":typeof r=="string"?xB(r):""}function ez(r){return sh(r)?r.headers["content-length"]||-1:oh(r)?r.size:typeof r=="string"?r.length:r instanceof ArrayBuffer||ArrayBuffer.isView(r)?r.byteLength:-1}async function QO(r){if(sh(r))return r;const e={},t=ez(r);t>=0&&(e["content-length"]=String(t));const n=sy(r),i=rw(r);i&&(e["content-type"]=i);const o=await nz(r);o&&(e["x-first-bytes"]=o),typeof r=="string"&&(r=new TextEncoder().encode(r));const s=new Response(r,{headers:e});return Object.defineProperty(s,"url",{value:n}),s}async function tz(r){if(!r.ok)throw await rz(r)}async function rz(r){const e=Q5(r.url);let t=`Failed to fetch resource (${r.status}) ${r.statusText}: ${e}`;t=t.length>100?`${t.slice(0,100)}...`:t;const n={reason:r.statusText,url:r.url,response:r};try{const i=r.headers.get("Content-Type");n.reason=i!=null&&i.includes("application/json")?await r.json():r.text()}catch{}return new X5(t,n)}async function nz(r){if(typeof r=="string")return`data:,${r.slice(0,5)}`;if(r instanceof Blob){const t=r.slice(0,5);return await new Promise(n=>{const i=new FileReader;i.onload=o=>{var s;return n((s=o==null?void 0:o.target)==null?void 0:s.result)},i.readAsDataURL(t)})}if(r instanceof ArrayBuffer){const t=r.slice(0,5);return`data:base64,${iz(t)}`}return null}function iz(r){let e="";const t=new Uint8Array(r);for(let n=0;n<t.byteLength;n++)e+=String.fromCharCode(t[n]);return btoa(e)}function sz(r){return!oz(r)&&!az(r)}function oz(r){return r.startsWith("http:")||r.startsWith("https:")}function az(r){return r.startsWith("data:")}async function wB(r,e){var t,n;if(typeof r=="string"){const i=U5(r);return sz(i)&&(t=globalThis.loaders)!=null&&t.fetchNode?(n=globalThis.loaders)==null?void 0:n.fetchNode(i,e):await fetch(i,e)}return await QO(r)}const b0=globalThis,ad=globalThis.process||{};function cz(r){var n,i;if(typeof window<"u"&&((n=window.process)==null?void 0:n.type)==="renderer"||typeof process<"u"&&((i=process.versions)!=null&&i.electron))return!0;const t=typeof navigator<"u"&&navigator.userAgent;return!!(t&&t.indexOf("Electron")>=0)}function nw(){return!(typeof process=="object"&&String(process)==="[object process]"&&!(process!=null&&process.browser))||cz()}const eD="4.0.7";function lz(r){try{const e=window[r],t="__storage_test__";return e.setItem(t,t),e.removeItem(t),e}catch{return null}}let uz=class{constructor(e,t,n="sessionStorage"){this.storage=lz(n),this.id=e,this.config=t,this._loadConfiguration()}getConfiguration(){return this.config}setConfiguration(e){if(Object.assign(this.config,e),this.storage){const t=JSON.stringify(this.config);this.storage.setItem(this.id,t)}}_loadConfiguration(){let e={};if(this.storage){const t=this.storage.getItem(this.id);e=t?JSON.parse(t):{}}return Object.assign(this.config,e),this}};function fz(r){let e;return r<10?e=`${r.toFixed(2)}ms`:r<100?e=`${r.toFixed(1)}ms`:r<1e3?e=`${r.toFixed(0)}ms`:e=`${(r/1e3).toFixed(2)}s`,e}function hz(r,e=8){const t=Math.max(e-r.length,0);return`${" ".repeat(t)}${r}`}var $m;(function(r){r[r.BLACK=30]="BLACK",r[r.RED=31]="RED",r[r.GREEN=32]="GREEN",r[r.YELLOW=33]="YELLOW",r[r.BLUE=34]="BLUE",r[r.MAGENTA=35]="MAGENTA",r[r.CYAN=36]="CYAN",r[r.WHITE=37]="WHITE",r[r.BRIGHT_BLACK=90]="BRIGHT_BLACK",r[r.BRIGHT_RED=91]="BRIGHT_RED",r[r.BRIGHT_GREEN=92]="BRIGHT_GREEN",r[r.BRIGHT_YELLOW=93]="BRIGHT_YELLOW",r[r.BRIGHT_BLUE=94]="BRIGHT_BLUE",r[r.BRIGHT_MAGENTA=95]="BRIGHT_MAGENTA",r[r.BRIGHT_CYAN=96]="BRIGHT_CYAN",r[r.BRIGHT_WHITE=97]="BRIGHT_WHITE"})($m||($m={}));const dz=10;function CB(r){return typeof r!="string"?r:(r=r.toUpperCase(),$m[r]||$m.WHITE)}function Az(r,e,t){return!nw&&typeof r=="string"&&(e&&(r=`\x1B[${CB(e)}m${r}\x1B[39m`),t&&(r=`\x1B[${CB(t)+dz}m${r}\x1B[49m`)),r}function pz(r,e=["constructor"]){const t=Object.getPrototypeOf(r),n=Object.getOwnPropertyNames(t),i=r;for(const o of n){const s=i[o];typeof s=="function"&&(e.find(c=>o===c)||(i[o]=s.bind(r)))}}function iw(r,e){if(!r)throw new Error("Assertion failed")}function cd(){var e,t,n;let r;if(nw()&&b0.performance)r=(t=(e=b0==null?void 0:b0.performance)==null?void 0:e.now)==null?void 0:t.call(e);else if("hrtime"in ad){const i=(n=ad==null?void 0:ad.hrtime)==null?void 0:n.call(ad);r=i[0]*1e3+i[1]/1e6}else r=Date.now();return r}const ld={debug:nw()&&console.debug||console.log,log:console.log,info:console.info,warn:console.warn,error:console.error},gz={enabled:!0,level:0};function ud(){}const EB={},TB={once:!0};let sw=class{constructor({id:e}={id:""}){this.VERSION=eD,this._startTs=cd(),this._deltaTs=cd(),this.userData={},this.LOG_THROTTLE_TIMEOUT=0,this.id=e,this.userData={},this._storage=new uz(`__probe-${this.id}__`,gz),this.timeStamp(`${this.id} started`),pz(this),Object.seal(this)}set level(e){this.setLevel(e)}get level(){return this.getLevel()}isEnabled(){return this._storage.config.enabled}getLevel(){return this._storage.config.level}getTotal(){return Number((cd()-this._startTs).toPrecision(10))}getDelta(){return Number((cd()-this._deltaTs).toPrecision(10))}set priority(e){this.level=e}get priority(){return this.level}getPriority(){return this.level}enable(e=!0){return this._storage.setConfiguration({enabled:e}),this}setLevel(e){return this._storage.setConfiguration({level:e}),this}get(e){return this._storage.config[e]}set(e,t){this._storage.setConfiguration({[e]:t})}settings(){console.table?console.table(this._storage.config):console.log(this._storage.config)}assert(e,t){if(!e)throw new Error(t||"Assertion failed")}warn(e){return this._getLogFunction(0,e,ld.warn,arguments,TB)}error(e){return this._getLogFunction(0,e,ld.error,arguments)}deprecated(e,t){return this.warn(`\`${e}\` is deprecated and will be removed in a later version. Use \`${t}\` instead`)}removed(e,t){return this.error(`\`${e}\` has been removed. Use \`${t}\` instead`)}probe(e,t){return this._getLogFunction(e,t,ld.log,arguments,{time:!0,once:!0})}log(e,t){return this._getLogFunction(e,t,ld.debug,arguments)}info(e,t){return this._getLogFunction(e,t,console.info,arguments)}once(e,t){return this._getLogFunction(e,t,ld.debug||ld.info,arguments,TB)}table(e,t,n){return t?this._getLogFunction(e,t,console.table||ud,n&&[n],{tag:_z(t)}):ud}time(e,t){return this._getLogFunction(e,t,console.time?console.time:console.info)}timeEnd(e,t){return this._getLogFunction(e,t,console.timeEnd?console.timeEnd:console.info)}timeStamp(e,t){return this._getLogFunction(e,t,console.timeStamp||ud)}group(e,t,n={collapsed:!1}){const i=BB({logLevel:e,message:t,opts:n}),{collapsed:o}=n;return i.method=(o?console.groupCollapsed:console.group)||console.info,this._getLogFunction(i)}groupCollapsed(e,t,n={}){return this.group(e,t,Object.assign({},n,{collapsed:!0}))}groupEnd(e){return this._getLogFunction(e,"",console.groupEnd||ud)}withGroup(e,t,n){this.group(e,t)();try{n()}finally{this.groupEnd(e)()}}trace(){console.trace&&console.trace()}_shouldLog(e){return this.isEnabled()&&this.getLevel()>=tD(e)}_getLogFunction(e,t,n,i,o){if(this._shouldLog(e)){o=BB({logLevel:e,message:t,args:i,opts:o}),n=n||o.method,iw(n),o.total=this.getTotal(),o.delta=this.getDelta(),this._deltaTs=cd();const s=o.tag||o.message;if(o.once&&s)if(!EB[s])EB[s]=cd();else return ud;return t=mz(this.id,o.message,o),n.bind(console,t,...o.args)}return ud}};sw.VERSION=eD;function tD(r){if(!r)return 0;let e;switch(typeof r){case"number":e=r;break;case"object":e=r.logLevel||r.priority||0;break;default:return 0}return iw(Number.isFinite(e)&&e>=0),e}function BB(r){const{logLevel:e,message:t}=r;r.logLevel=tD(e);const n=r.args?Array.from(r.args):[];for(;n.length&&n.shift()!==t;);switch(typeof e){case"string":case"function":t!==void 0&&n.unshift(t),r.message=e;break;case"object":Object.assign(r,e);break}typeof r.message=="function"&&(r.message=r.message());const i=typeof r.message;return iw(i==="string"||i==="object"),Object.assign(r,{args:n},r.opts)}function mz(r,e,t){if(typeof e=="string"){const n=t.time?hz(fz(t.total)):"";e=t.time?`${r}: ${n} ${e}`:`${r}: ${e}`,e=Az(e,t.color,t.background)}return e}function _z(r){for(const e in r)for(const t in r[e])return t||"untitled";return"empty"}const SB=new sw({id:"loaders.gl"});let yz=class{log(){return()=>{}}info(){return()=>{}}warn(){return()=>{}}error(){return()=>{}}},vz=class{constructor(){V(this,"console");this.console=console}log(...e){return this.console.log.bind(this.console,...e)}info(...e){return this.console.info.bind(this.console,...e)}warn(...e){return this.console.warn.bind(this.console,...e)}error(...e){return this.console.error.bind(this.console,...e)}};const rD={fetch:null,mimeType:void 0,nothrow:!1,log:new vz,useLocalLibraries:!1,CDN:"https://unpkg.com/@loaders.gl",worker:!0,maxConcurrency:3,maxMobileConcurrency:1,reuseWorkers:Qx,_nodeWorkers:!1,_workerType:"",limit:0,_limitMB:0,batchSize:"auto",batchDebounceMs:0,metadata:!1,transforms:[]},bz={throws:"nothrow",dataType:"(no longer used)",uri:"baseUri",method:"fetch.method",headers:"fetch.headers",body:"fetch.body",mode:"fetch.mode",credentials:"fetch.credentials",cache:"fetch.cache",redirect:"fetch.redirect",referrer:"fetch.referrer",referrerPolicy:"fetch.referrerPolicy",integrity:"fetch.integrity",keepalive:"fetch.keepalive",signal:"fetch.signal"};function nD(){globalThis.loaders=globalThis.loaders||{};const{loaders:r}=globalThis;return r._state||(r._state={}),r._state}function iD(){const r=nD();return r.globalOptions=r.globalOptions||{...rD},r.globalOptions}function xz(r,e,t,n){return t=t||[],t=Array.isArray(t)?t:[t],wz(r,t),Ez(e,r,n)}function wz(r,e){IB(r,null,rD,bz,e);for(const t of e){const n=r&&r[t.id]||{},i=t.options&&t.options[t.id]||{},o=t.deprecatedOptions&&t.deprecatedOptions[t.id]||{};IB(n,t.id,i,o,e)}}function IB(r,e,t,n,i){const o=e||"Top level",s=e?`${e}.`:"";for(const c in r){const f=!e&&bg(r[c]),_=c==="baseUri"&&!e,b=c==="workerUrl"&&e;if(!(c in t)&&!_&&!b){if(c in n)SB.warn(`${o} loader option '${s}${c}' no longer supported, use '${n[c]}'`)();else if(!f){const T=Cz(c,i);SB.warn(`${o} loader option '${s}${c}' not recognized. ${T}`)()}}}}function Cz(r,e){const t=r.toLowerCase();let n="";for(const i of e)for(const o in i.options){if(r===o)return`Did you mean '${i.id}.${o}'?`;const s=o.toLowerCase();(t.startsWith(s)||s.startsWith(t))&&(n=n||`Did you mean '${i.id}.${o}'?`)}return n}function Ez(r,e,t){const i={...r.options||{}};return Tz(i,t),i.log===null&&(i.log=new yz),MB(i,iD()),MB(i,e),i}function MB(r,e){for(const t in e)if(t in e){const n=e[t];vB(n)&&vB(r[t])?r[t]={...r[t],...e[t]}:r[t]=e[t]}}function Tz(r,e){e&&!("baseUri"in r)&&(r.baseUri=e)}function ow(r){return r?(Array.isArray(r)&&(r=r[0]),Array.isArray(r==null?void 0:r.extensions)):!1}function aw(r){Hm(r,"null loader"),Hm(ow(r),"invalid loader");let e;return Array.isArray(r)&&(e=r[1],r=r[0],r={...r,options:{...r.options,...e}}),(r!=null&&r.parseTextSync||r!=null&&r.parseText)&&(r.text=!0),r.text||(r.binary=!0),r}const sD=()=>{const r=nD();return r.loaderRegistry=r.loaderRegistry||[],r.loaderRegistry};function Bz(r){const e=sD();r=Array.isArray(r)?r:[r];for(const t of r){const n=aw(t);e.find(i=>n===i)||e.unshift(n)}}function Sz(){return sD()}const Iz=new sw({id:"loaders.gl"}),Mz=/\.([^.]+)$/;async function Pz(r,e=[],t,n){if(!oD(r))return null;let i=PB(r,e,{...t,nothrow:!0},n);if(i)return i;if(oh(r)&&(r=await r.slice(0,10).arrayBuffer(),i=PB(r,e,t,n)),!i&&!(t!=null&&t.nothrow))throw new Error(aD(r));return i}function PB(r,e=[],t,n){if(!oD(r))return null;if(e&&!Array.isArray(e))return aw(e);let i=[];e&&(i=i.concat(e)),t!=null&&t.ignoreRegisteredLoaders||i.push(...Sz()),Fz(i);const o=Rz(r,i,t,n);if(!o&&!(t!=null&&t.nothrow))throw new Error(aD(r));return o}function Rz(r,e,t,n){const i=sy(r),o=rw(r),s=tw(i)||(n==null?void 0:n.url);let c=null,f="";return t!=null&&t.mimeType&&(c=Uv(e,t==null?void 0:t.mimeType),f=`match forced by supplied MIME type ${t==null?void 0:t.mimeType}`),c=c||Oz(e,s),f=f||(c?`matched url ${s}`:""),c=c||Uv(e,o),f=f||(c?`matched MIME type ${o}`:""),c=c||Lz(e,r),f=f||(c?`matched initial data ${cD(r)}`:""),t!=null&&t.fallbackMimeType&&(c=c||Uv(e,t==null?void 0:t.fallbackMimeType),f=f||(c?`matched fallback MIME type ${o}`:"")),f&&Iz.log(1,`selectLoader selected ${c==null?void 0:c.name}: ${f}.`),c}function oD(r){return!(r instanceof Response&&r.status===204)}function aD(r){const e=sy(r),t=rw(r);let n="No valid loader found (";n+=e?`${YO(e)}, `:"no url provided, ",n+=`MIME type: ${t?`"${t}"`:"not provided"}, `;const i=r?cD(r):"";return n+=i?` first bytes: "${i}"`:"first bytes: not available",n+=")",n}function Fz(r){for(const e of r)aw(e)}function Oz(r,e){const t=e&&Mz.exec(e),n=t&&t[1];return n?Dz(r,n):null}function Dz(r,e){e=e.toLowerCase();for(const t of r)for(const n of t.extensions)if(n.toLowerCase()===e)return t;return null}function Uv(r,e){var t;for(const n of r)if((t=n.mimeTypes)!=null&&t.some(i=>bB(e,i))||bB(e,`application/x.${n.id}`))return n;return null}function Lz(r,e){if(!e)return null;for(const t of r)if(typeof e=="string"){if(Nz(e,t))return t}else if(ArrayBuffer.isView(e)){if(RB(e.buffer,e.byteOffset,t))return t}else if(e instanceof ArrayBuffer&&RB(e,0,t))return t;return null}function Nz(r,e){return e.testText?e.testText(r):(Array.isArray(e.tests)?e.tests:[e.tests]).some(n=>r.startsWith(n))}function RB(r,e,t){return(Array.isArray(t.tests)?t.tests:[t.tests]).some(i=>kz(r,e,t,i))}function kz(r,e,t,n){if(n instanceof ArrayBuffer)return O5(n,r,n.byteLength);switch(typeof n){case"function":return n(r);case"string":const i=t2(r,e,n.length);return n===i;default:return!1}}function cD(r,e=5){return typeof r=="string"?r.slice(0,e):ArrayBuffer.isView(r)?t2(r.buffer,r.byteOffset,e):r instanceof ArrayBuffer?t2(r,0,e):""}function t2(r,e,t){if(r.byteLength<e+t)return"";const n=new DataView(r);let i="";for(let o=0;o<t;o++)i+=String.fromCharCode(n.getUint8(e+o));return i}const Uz=256*1024;function*zz(r,e){const t=(e==null?void 0:e.chunkSize)||Uz;let n=0;const i=new TextEncoder;for(;n<r.length;){const o=Math.min(r.length-n,t),s=r.slice(n,n+o);n+=o,yield i.encode(s)}}const Gz=256*1024;function*Vz(r,e={}){const{chunkSize:t=Gz}=e;let n=0;for(;n<r.byteLength;){const i=Math.min(r.byteLength-n,t),o=new ArrayBuffer(i),s=new Uint8Array(r,n,i);new Uint8Array(o).set(s),n+=i,yield o}}const Hz=1024*1024;async function*jz(r,e){const t=(e==null?void 0:e.chunkSize)||Hz;let n=0;for(;n<r.size;){const i=n+t,o=await r.slice(n,i).arrayBuffer();n=i,yield o}}function FB(r,e){return Qx?$z(r,e):Wz(r)}async function*$z(r,e){const t=r.getReader();let n;try{for(;;){const i=n||t.read();e!=null&&e._streamReadAhead&&(n=t.read());const{done:o,value:s}=await i;if(o)return;yield KO(s)}}catch{t.releaseLock()}}async function*Wz(r,e){for await(const t of r)yield KO(t)}function Jz(r,e){if(typeof r=="string")return zz(r,e);if(r instanceof ArrayBuffer)return Vz(r,e);if(oh(r))return jz(r,e);if(qO(r))return FB(r,e);if(sh(r))return FB(r.body,e);throw new Error("makeIterator")}const lD="Cannot convert supplied data type";function Xz(r,e,t){if(e.text&&typeof r=="string")return r;if($5(r)&&(r=r.buffer),r instanceof ArrayBuffer){const n=r;return e.text&&!e.binary?new TextDecoder("utf8").decode(n):n}if(ArrayBuffer.isView(r)){if(e.text&&!e.binary)return new TextDecoder("utf8").decode(r);let n=r.buffer;const i=r.byteLength||r.length;return(r.byteOffset!==0||i!==n.byteLength)&&(n=n.slice(r.byteOffset,r.byteOffset+i)),n}throw new Error(lD)}async function Kz(r,e,t){const n=r instanceof ArrayBuffer||ArrayBuffer.isView(r);if(typeof r=="string"||n)return Xz(r,e);if(oh(r)&&(r=await QO(r)),sh(r)){const i=r;return await tz(i),e.binary?await i.arrayBuffer():await i.text()}if(qO(r)&&(r=Jz(r,t)),H5(r)||j5(r))return N5(r);throw new Error(lD)}function uD(r,e){const t=iD(),n=r||t;return typeof n.fetch=="function"?n.fetch:bg(n.fetch)?i=>wB(i,n.fetch):e!=null&&e.fetch?e==null?void 0:e.fetch:wB}function Yz(r,e,t){if(t)return t;const n={fetch:uD(e,r),...r};if(n.url){const i=tw(n.url);n.baseUrl=i,n.queryString=Z5(n.url),n.filename=YO(i),n.baseUrl=G5(i)}return Array.isArray(n.loaders)||(n.loaders=null),n}function qz(r,e){if(r&&!Array.isArray(r))return r;let t;if(r&&(t=Array.isArray(r)?r:[r]),e&&e.loaders){const n=Array.isArray(e.loaders)?e.loaders:[e.loaders];t=t?[...t,...n]:n}return t&&t.length?t:void 0}async function Wm(r,e,t,n){e&&!Array.isArray(e)&&!ow(e)&&(n=void 0,t=e,e=void 0),r=await r,t=t||{};const i=sy(r),s=qz(e,n),c=await Pz(r,s,t);return c?(t=xz(t,c,s,i),n=Yz({url:i,_parse:Wm,loaders:s},t,n||null),await Zz(c,r,t,n)):null}async function Zz(r,e,t,n){if(M5(r),t=_5(r.options,t),sh(e)){const o=e,{ok:s,redirected:c,status:f,statusText:_,type:b,url:T}=o,S=Object.fromEntries(o.headers.entries());n.response={headers:S,ok:s,redirected:c,status:f,statusText:_,type:b,url:T}}e=await Kz(e,r,t);const i=r;if(i.parseTextSync&&typeof e=="string")return i.parseTextSync(e,t,n);if(P5(r,t))return await R5(r,e,t,n,Wm);if(i.parseText&&typeof e=="string")return await i.parseText(e,t,n);if(i.parse)return await i.parse(e,t,n);throw ku(!i.parseSync),new Error(`${r.id} loader - no parser found and worker is disabled`)}async function r2(r,e,t,n){let i,o;!Array.isArray(e)&&!ow(e)?(i=[],o=e):(i=e,o=t);const s=uD(o);let c=r;return typeof r=="string"&&(c=await s(r)),oh(r)&&(c=await s(r)),Array.isArray(i)?await Wm(c,i,o):await Wm(c,i,o)}const Qz="4.2.4";var OO;const eG=(OO=globalThis.loaders)==null?void 0:OO.parseImageNode,n2=typeof Image<"u",i2=typeof ImageBitmap<"u",tG=!!eG,s2=Qx?!0:tG;function rG(r){switch(r){case"auto":return i2||n2||s2;case"imagebitmap":return i2;case"image":return n2;case"data":return s2;default:throw new Error(`@loaders.gl/images: image ${r} not supported in this environment`)}}function nG(){if(i2)return"imagebitmap";if(n2)return"image";if(s2)return"data";throw new Error("Install '@loaders.gl/polyfills' to parse images under Node.js")}function iG(r){const e=oG(r);if(!e)throw new Error("Not an image");return e}function sG(r){switch(iG(r)){case"data":return r;case"image":case"imagebitmap":const e=document.createElement("canvas"),t=e.getContext("2d");if(!t)throw new Error("getImageData");return e.width=r.width,e.height=r.height,t.drawImage(r,0,0),t.getImageData(0,0,r.width,r.height);default:throw new Error("getImageData")}}function oG(r){return typeof ImageBitmap<"u"&&r instanceof ImageBitmap?"imagebitmap":typeof Image<"u"&&r instanceof Image?"image":r&&typeof r=="object"&&r.data&&r.width&&r.height?"data":null}const aG=/^data:image\/svg\+xml/,cG=/\.svg((\?|#).*)?$/;function cw(r){return r&&(aG.test(r)||cG.test(r))}function lG(r,e){if(cw(e)){let n=new TextDecoder().decode(r);try{typeof unescape=="function"&&typeof encodeURIComponent=="function"&&(n=unescape(encodeURIComponent(n)))}catch(o){throw new Error(o.message)}return`data:image/svg+xml;base64,${btoa(n)}`}return fD(r,e)}function fD(r,e){if(cw(e))throw new Error("SVG cannot be parsed directly to imagebitmap");return new Blob([new Uint8Array(r)])}async function hD(r,e,t){const n=lG(r,t),i=self.URL||self.webkitURL,o=typeof n!="string"&&i.createObjectURL(n);try{return await uG(o||n,e)}finally{o&&i.revokeObjectURL(o)}}async function uG(r,e){const t=new Image;return t.src=r,e.image&&e.image.decode&&t.decode?(await t.decode(),t):await new Promise((n,i)=>{try{t.onload=()=>n(t),t.onerror=o=>{const s=o instanceof Error?o.message:"error";i(new Error(s))}}catch(o){i(o)}})}const fG={};let OB=!0;async function hG(r,e,t){let n;cw(t)?n=await hD(r,e,t):n=fD(r,t);const i=e&&e.imagebitmap;return await dG(n,i)}async function dG(r,e=null){if((AG(e)||!OB)&&(e=null),e)try{return await createImageBitmap(r,e)}catch(t){console.warn(t),OB=!1}return await createImageBitmap(r)}function AG(r){for(const e in r||fG)return!1;return!0}function pG(r){return!yG(r,"ftyp",4)||(r[8]&96)===0?null:gG(r)}function gG(r){switch(mG(r,8,12).replace("\0"," ").trim()){case"avif":case"avis":return{extension:"avif",mimeType:"image/avif"};default:return null}}function mG(r,e,t){return String.fromCharCode(...r.slice(e,t))}function _G(r){return[...r].map(e=>e.charCodeAt(0))}function yG(r,e,t=0){const n=_G(e);for(let i=0;i<n.length;++i)if(n[i]!==r[i+t])return!1;return!0}const Wc=!1,zp=!0;function dD(r){const e=xg(r);return bG(e)||CG(e)||xG(e)||wG(e)||vG(e)}function vG(r){const e=new Uint8Array(r instanceof DataView?r.buffer:r),t=pG(e);return t?{mimeType:t.mimeType,width:0,height:0}:null}function bG(r){const e=xg(r);return e.byteLength>=24&&e.getUint32(0,Wc)===2303741511?{mimeType:"image/png",width:e.getUint32(16,Wc),height:e.getUint32(20,Wc)}:null}function xG(r){const e=xg(r);return e.byteLength>=10&&e.getUint32(0,Wc)===1195984440?{mimeType:"image/gif",width:e.getUint16(6,zp),height:e.getUint16(8,zp)}:null}function wG(r){const e=xg(r);return e.byteLength>=14&&e.getUint16(0,Wc)===16973&&e.getUint32(2,zp)===e.byteLength?{mimeType:"image/bmp",width:e.getUint32(18,zp),height:e.getUint32(22,zp)}:null}function CG(r){const e=xg(r);if(!(e.byteLength>=3&&e.getUint16(0,Wc)===65496&&e.getUint8(2)===255))return null;const{tableMarkers:n,sofMarkers:i}=EG();let o=2;for(;o+9<e.byteLength;){const s=e.getUint16(o,Wc);if(i.has(s))return{mimeType:"image/jpeg",height:e.getUint16(o+5,Wc),width:e.getUint16(o+7,Wc)};if(!n.has(s))return null;o+=2,o+=e.getUint16(o,Wc)}return null}function EG(){const r=new Set([65499,65476,65484,65501,65534]);for(let t=65504;t<65520;++t)r.add(t);return{tableMarkers:r,sofMarkers:new Set([65472,65473,65474,65475,65477,65478,65479,65481,65482,65483,65485,65486,65487,65502])}}function xg(r){if(r instanceof DataView)return r;if(ArrayBuffer.isView(r))return new DataView(r.buffer);if(r instanceof ArrayBuffer)return new DataView(r);throw new Error("toDataView")}async function TG(r,e){var i;const{mimeType:t}=dD(r)||{},n=(i=globalThis.loaders)==null?void 0:i.parseImageNode;return Hm(n),await n(r,t)}async function BG(r,e,t){e=e||{};const i=(e.image||{}).type||"auto",{url:o}=t||{},s=SG(i);let c;switch(s){case"imagebitmap":c=await hG(r,e,o);break;case"image":c=await hD(r,e,o);break;case"data":c=await TG(r);break;default:Hm(!1)}return i==="data"&&(c=sG(c)),c}function SG(r){switch(r){case"auto":case"data":return nG();default:return rG(r),r}}const IG=["png","jpg","jpeg","gif","webp","bmp","ico","svg","avif"],MG=["image/png","image/jpeg","image/gif","image/webp","image/avif","image/bmp","image/vnd.microsoft.icon","image/svg+xml"],PG={image:{type:"auto",decode:!0}},RG={dataType:null,batchType:null,id:"image",module:"images",name:"Images",version:Qz,mimeTypes:MG,extensions:IG,parse:BG,tests:[r=>!!dD(new DataView(r))],options:PG},$r=new HO({id:"deck"});let o2={};function FG(r){o2=r}function so(r,e,t,n){$r.level>0&&o2[r]&&o2[r].call(null,e,t,n)}function OG(r){const e=r[0],t=r[r.length-1];return e==="{"&&t==="}"||e==="["&&t==="]"}const DG={dataType:null,batchType:null,id:"JSON",name:"JSON",module:"",version:"",options:{},extensions:["json","geojson"],mimeTypes:["application/json","application/geo+json"],testText:OG,parseTextSync:JSON.parse};function LG(){const r="9.1.11",e=globalThis.deck&&globalThis.deck.VERSION;if(e&&e!==r)throw new Error(`deck.gl - multiple versions detected: ${e} vs ${r}`);return e||($r.log(1,`deck.gl ${r}`)(),globalThis.deck={...globalThis.deck,VERSION:r,version:r,log:$r,_registerLoggers:FG},Bz([DG,[RG,{imagebitmap:{premultiplyAlpha:"none"}}]])),r}const NG=LG();function lw(r,e){if(!r)throw new Error(e||"shadertools: assertion failed.")}const zv={number:{type:"number",validate(r,e){return Number.isFinite(r)&&typeof e=="object"&&(e.max===void 0||r<=e.max)&&(e.min===void 0||r>=e.min)}},array:{type:"array",validate(r,e){return Array.isArray(r)||ArrayBuffer.isView(r)}}};function kG(r){const e={};for(const[t,n]of Object.entries(r))e[t]=UG(n);return e}function UG(r){let e=DB(r);if(e!=="object")return{value:r,...zv[e],type:e};if(typeof r=="object")return r?r.type!==void 0?{...r,...zv[r.type],type:r.type}:r.value===void 0?{type:"object",value:r}:(e=DB(r.value),{...r,...zv[e],type:e}):{type:"object",value:null};throw new Error("props")}function DB(r){return Array.isArray(r)||ArrayBuffer.isView(r)?"array":typeof r}const zG=`#ifdef MODULE_LOGDEPTH
|
6
|
+
}`}function JO(r,e=!0,t){const n=t||new Set;if(r){if(_B(r))n.add(r);else if(_B(r.buffer))n.add(r.buffer);else if(!ArrayBuffer.isView(r)){if(e&&typeof r=="object")for(const i in r)JO(r[i],e,n)}}return t===void 0?Array.from(n):[]}function _B(r){return r?r instanceof ArrayBuffer||typeof MessagePort<"u"&&r instanceof MessagePort||typeof ImageBitmap<"u"&&r instanceof ImageBitmap||typeof OffscreenCanvas<"u"&&r instanceof OffscreenCanvas:!1}const kv=()=>{};let e2=class{constructor(e){V(this,"name");V(this,"source");V(this,"url");V(this,"terminated",!1);V(this,"worker");V(this,"onMessage");V(this,"onError");V(this,"_loadableURL","");const{name:t,source:n,url:i}=e;ku(n||i),this.name=t,this.source=n,this.url=i,this.onMessage=kv,this.onError=o=>console.log(o),this.worker=$f?this._createBrowserWorker():this._createNodeWorker()}static isSupported(){return typeof Worker<"u"&&$f||typeof Lv<"u"&&!$f}destroy(){this.onMessage=kv,this.onError=kv,this.worker.terminate(),this.terminated=!0}get isRunning(){return!!this.onMessage}postMessage(e,t){t=t||JO(e),this.worker.postMessage(e,t)}_getErrorFromErrorEvent(e){let t="Failed to load ";return t+=`worker ${this.name} from ${this.url}. `,e.message&&(t+=`${e.message} in `),e.lineno&&(t+=`:${e.lineno}:${e.colno}`),new Error(t)}_createBrowserWorker(){this._loadableURL=C5({source:this.source,url:this.url});const e=new Worker(this._loadableURL,{name:this.name});return e.onmessage=t=>{t.data?this.onMessage(t.data):this.onError(new Error("No data received"))},e.onerror=t=>{this.onError(this._getErrorFromErrorEvent(t)),this.terminated=!0},e.onmessageerror=t=>console.error(t),e}_createNodeWorker(){let e;if(this.url){const n=this.url.includes(":/")||this.url.startsWith("/")?this.url:`./${this.url}`;e=new Lv(n,{eval:!1})}else if(this.source)e=new Lv(this.source,{eval:!0});else throw new Error("no worker");return e.on("message",t=>{this.onMessage(t)}),e.on("error",t=>{this.onError(t)}),e.on("exit",t=>{}),e}},B5=class{constructor(e){V(this,"name","unnamed");V(this,"source");V(this,"url");V(this,"maxConcurrency",1);V(this,"maxMobileConcurrency",1);V(this,"onDebug",()=>{});V(this,"reuseWorkers",!0);V(this,"props",{});V(this,"jobQueue",[]);V(this,"idleQueue",[]);V(this,"count",0);V(this,"isDestroyed",!1);this.source=e.source,this.url=e.url,this.setProps(e)}static isSupported(){return e2.isSupported()}destroy(){this.idleQueue.forEach(e=>e.destroy()),this.isDestroyed=!0}setProps(e){this.props={...this.props,...e},e.name!==void 0&&(this.name=e.name),e.maxConcurrency!==void 0&&(this.maxConcurrency=e.maxConcurrency),e.maxMobileConcurrency!==void 0&&(this.maxMobileConcurrency=e.maxMobileConcurrency),e.reuseWorkers!==void 0&&(this.reuseWorkers=e.reuseWorkers),e.onDebug!==void 0&&(this.onDebug=e.onDebug)}async startJob(e,t=(i,o,s)=>i.done(s),n=(i,o)=>i.error(o)){const i=new Promise(o=>(this.jobQueue.push({name:e,onMessage:t,onError:n,onStart:o}),this));return this._startQueuedJob(),await i}async _startQueuedJob(){if(!this.jobQueue.length)return;const e=this._getAvailableWorker();if(!e)return;const t=this.jobQueue.shift();if(t){this.onDebug({message:"Starting job",name:t.name,workerThread:e,backlog:this.jobQueue.length});const n=new w5(t.name,e);e.onMessage=i=>t.onMessage(n,i.type,i.payload),e.onError=i=>t.onError(n,i),t.onStart(n);try{await n.result}catch(i){console.error(`Worker exception: ${i}`)}finally{this.returnWorkerToQueue(e)}}}returnWorkerToQueue(e){!$f||this.isDestroyed||!this.reuseWorkers||this.count>this._getMaxConcurrency()?(e.destroy(),this.count--):this.idleQueue.push(e),this.isDestroyed||this._startQueuedJob()}_getAvailableWorker(){if(this.idleQueue.length>0)return this.idleQueue.shift()||null;if(this.count<this._getMaxConcurrency()){this.count++;const e=`${this.name.toLowerCase()} (#${this.count} of ${this.maxConcurrency})`;return new e2({name:e,source:this.source,url:this.url})}return null}_getMaxConcurrency(){return x5?this.maxMobileConcurrency:this.maxConcurrency}};const S5={maxConcurrency:3,maxMobileConcurrency:1,reuseWorkers:!0,onDebug:()=>{}};var oc;let XO=(oc=class{constructor(e){V(this,"props");V(this,"workerPools",new Map);this.props={...S5},this.setProps(e),this.workerPools=new Map}static isSupported(){return e2.isSupported()}static getWorkerFarm(e={}){return oc._workerFarm=oc._workerFarm||new oc({}),oc._workerFarm.setProps(e),oc._workerFarm}destroy(){for(const e of this.workerPools.values())e.destroy();this.workerPools=new Map}setProps(e){this.props={...this.props,...e};for(const t of this.workerPools.values())t.setProps(this._getWorkerPoolProps())}getWorkerPool(e){const{name:t,source:n,url:i}=e;let o=this.workerPools.get(t);return o||(o=new B5({name:t,source:n,url:i}),o.setProps(this._getWorkerPoolProps()),this.workerPools.set(t,o)),o}_getWorkerPoolProps(){return{maxConcurrency:this.props.maxConcurrency,maxMobileConcurrency:this.props.maxMobileConcurrency,reuseWorkers:this.props.reuseWorkers,onDebug:this.props.onDebug}}},V(oc,"_workerFarm"),oc);function I5(r,e={}){const t=e[r.id]||{},n=$f?`${r.id}-worker.js`:`${r.id}-worker-node.js`;let i=t.workerUrl;if(!i&&r.id==="compression"&&(i=e.workerUrl),e._workerType==="test"&&($f?i=`modules/${r.module}/dist/${n}`:i=`modules/${r.module}/src/workers/${r.id}-worker-node.ts`),!i){let o=r.version;o==="latest"&&(o=y5);const s=o?`@${o}`:"";i=`https://unpkg.com/@loaders.gl/${r.module}${s}/dist/${n}`}return ku(i),i}function M5(r,e=b5){ku(r,"no worker provided");const t=r.version;return!(!e||!t)}const yu={};function P5(r,e){return!XO.isSupported()||!$f&&!(e!=null&&e._nodeWorkers)?!1:r.worker&&(e==null?void 0:e.worker)}async function R5(r,e,t,n,i){const o=r.id,s=I5(r,t),f=XO.getWorkerFarm(t).getWorkerPool({name:o,url:s});t=JSON.parse(JSON.stringify(t)),n=JSON.parse(JSON.stringify(n||{}));const _=await f.startJob("process-on-worker",F5.bind(null,i));return _.postMessage("process",{input:e,options:t,context:n}),await(await _.result).result}async function F5(r,e,t,n){switch(t){case"done":e.done(n);break;case"error":e.error(new Error(n.error));break;case"process":const{id:i,input:o,options:s}=n;try{const c=await r(o,s);e.postMessage("done",{id:i,result:c})}catch(c){const f=c instanceof Error?c.message:"unknown error";e.postMessage("error",{id:i,error:f})}break;default:console.warn(`parse-with-worker unknown message ${t}`)}}function O5(r,e,t){if(t=t||r.byteLength,r.byteLength<t||e.byteLength<t)return!1;const n=new Uint8Array(r),i=new Uint8Array(e);for(let o=0;o<n.length;++o)if(n[o]!==i[o])return!1;return!0}function D5(...r){return L5(r)}function L5(r){const e=r.map(o=>o instanceof ArrayBuffer?new Uint8Array(o):o),t=e.reduce((o,s)=>o+s.byteLength,0),n=new Uint8Array(t);let i=0;for(const o of e)n.set(o,i),i+=o.byteLength;return n.buffer}async function N5(r){const e=[];for await(const t of r)e.push(t);return D5(...e)}let k5="";const yB={};function U5(r){for(const e in yB)if(r.startsWith(e)){const t=yB[e];r=r.replace(e,t)}return!r.startsWith("http://")&&!r.startsWith("https://")&&(r=`${k5}${r}`),r}function z5(r){return r&&typeof r=="object"&&r.isBuffer}function KO(r){if(z5(r))return r;if(r instanceof ArrayBuffer)return r;if(ArrayBuffer.isView(r))return r.byteOffset===0&&r.byteLength===r.buffer.byteLength?r.buffer:r.buffer.slice(r.byteOffset,r.byteOffset+r.byteLength);if(typeof r=="string"){const e=r;return new TextEncoder().encode(e).buffer}if(r&&typeof r=="object"&&r._toArrayBuffer)return r._toArrayBuffer();throw new Error("toArrayBuffer")}function YO(r){const e=r?r.lastIndexOf("/"):-1;return e>=0?r.substr(e+1):""}function G5(r){const e=r?r.lastIndexOf("/"):-1;return e>=0?r.substr(0,e):""}const V5=r=>typeof r=="boolean",Up=r=>typeof r=="function",bg=r=>r!==null&&typeof r=="object",vB=r=>bg(r)&&r.constructor==={}.constructor,H5=r=>!!r&&typeof r[Symbol.iterator]=="function",j5=r=>r&&typeof r[Symbol.asyncIterator]=="function",sh=r=>typeof Response<"u"&&r instanceof Response||r&&r.arrayBuffer&&r.text&&r.json,oh=r=>typeof Blob<"u"&&r instanceof Blob,$5=r=>r&&typeof r=="object"&&r.isBuffer,W5=r=>typeof ReadableStream<"u"&&r instanceof ReadableStream||bg(r)&&Up(r.tee)&&Up(r.cancel)&&Up(r.getReader),J5=r=>bg(r)&&Up(r.read)&&Up(r.pipe)&&V5(r.readable),qO=r=>W5(r)||J5(r);let X5=class extends Error{constructor(t,n){super(t);V(this,"reason");V(this,"url");V(this,"response");this.reason=n.reason,this.url=n.url,this.response=n.response}};const K5=/^data:([-\w.]+\/[-\w.+]+)(;|,)/,Y5=/^([-\w.]+\/[-\w.+]+)/;function bB(r,e){return r.toLowerCase()===e.toLowerCase()}function q5(r){const e=Y5.exec(r);return e?e[1]:r}function xB(r){const e=K5.exec(r);return e?e[1]:""}const ZO=/\?.*/;function Z5(r){const e=r.match(ZO);return e&&e[0]}function tw(r){return r.replace(ZO,"")}function Q5(r){if(r.length<50)return r;const e=r.slice(r.length-15);return`${r.substr(0,32)}...${e}`}function sy(r){return sh(r)?r.url:oh(r)?r.name||"":typeof r=="string"?r:""}function rw(r){if(sh(r)){const e=r,t=e.headers.get("content-type")||"",n=tw(e.url);return q5(t)||xB(n)}return oh(r)?r.type||"":typeof r=="string"?xB(r):""}function ez(r){return sh(r)?r.headers["content-length"]||-1:oh(r)?r.size:typeof r=="string"?r.length:r instanceof ArrayBuffer||ArrayBuffer.isView(r)?r.byteLength:-1}async function QO(r){if(sh(r))return r;const e={},t=ez(r);t>=0&&(e["content-length"]=String(t));const n=sy(r),i=rw(r);i&&(e["content-type"]=i);const o=await nz(r);o&&(e["x-first-bytes"]=o),typeof r=="string"&&(r=new TextEncoder().encode(r));const s=new Response(r,{headers:e});return Object.defineProperty(s,"url",{value:n}),s}async function tz(r){if(!r.ok)throw await rz(r)}async function rz(r){const e=Q5(r.url);let t=`Failed to fetch resource (${r.status}) ${r.statusText}: ${e}`;t=t.length>100?`${t.slice(0,100)}...`:t;const n={reason:r.statusText,url:r.url,response:r};try{const i=r.headers.get("Content-Type");n.reason=i!=null&&i.includes("application/json")?await r.json():r.text()}catch{}return new X5(t,n)}async function nz(r){if(typeof r=="string")return`data:,${r.slice(0,5)}`;if(r instanceof Blob){const t=r.slice(0,5);return await new Promise(n=>{const i=new FileReader;i.onload=o=>{var s;return n((s=o==null?void 0:o.target)==null?void 0:s.result)},i.readAsDataURL(t)})}if(r instanceof ArrayBuffer){const t=r.slice(0,5);return`data:base64,${iz(t)}`}return null}function iz(r){let e="";const t=new Uint8Array(r);for(let n=0;n<t.byteLength;n++)e+=String.fromCharCode(t[n]);return btoa(e)}function sz(r){return!oz(r)&&!az(r)}function oz(r){return r.startsWith("http:")||r.startsWith("https:")}function az(r){return r.startsWith("data:")}async function wB(r,e){var t,n;if(typeof r=="string"){const i=U5(r);return sz(i)&&(t=globalThis.loaders)!=null&&t.fetchNode?(n=globalThis.loaders)==null?void 0:n.fetchNode(i,e):await fetch(i,e)}return await QO(r)}const b0=globalThis,ad=globalThis.process||{};function cz(r){var n,i;if(typeof window<"u"&&((n=window.process)==null?void 0:n.type)==="renderer"||typeof process<"u"&&((i=process.versions)!=null&&i.electron))return!0;const t=typeof navigator<"u"&&navigator.userAgent;return!!(t&&t.indexOf("Electron")>=0)}function nw(){return!(typeof process=="object"&&String(process)==="[object process]"&&!(process!=null&&process.browser))||cz()}const eD="4.0.7";function lz(r){try{const e=window[r],t="__storage_test__";return e.setItem(t,t),e.removeItem(t),e}catch{return null}}let uz=class{constructor(e,t,n="sessionStorage"){this.storage=lz(n),this.id=e,this.config=t,this._loadConfiguration()}getConfiguration(){return this.config}setConfiguration(e){if(Object.assign(this.config,e),this.storage){const t=JSON.stringify(this.config);this.storage.setItem(this.id,t)}}_loadConfiguration(){let e={};if(this.storage){const t=this.storage.getItem(this.id);e=t?JSON.parse(t):{}}return Object.assign(this.config,e),this}};function fz(r){let e;return r<10?e=`${r.toFixed(2)}ms`:r<100?e=`${r.toFixed(1)}ms`:r<1e3?e=`${r.toFixed(0)}ms`:e=`${(r/1e3).toFixed(2)}s`,e}function hz(r,e=8){const t=Math.max(e-r.length,0);return`${" ".repeat(t)}${r}`}var $m;(function(r){r[r.BLACK=30]="BLACK",r[r.RED=31]="RED",r[r.GREEN=32]="GREEN",r[r.YELLOW=33]="YELLOW",r[r.BLUE=34]="BLUE",r[r.MAGENTA=35]="MAGENTA",r[r.CYAN=36]="CYAN",r[r.WHITE=37]="WHITE",r[r.BRIGHT_BLACK=90]="BRIGHT_BLACK",r[r.BRIGHT_RED=91]="BRIGHT_RED",r[r.BRIGHT_GREEN=92]="BRIGHT_GREEN",r[r.BRIGHT_YELLOW=93]="BRIGHT_YELLOW",r[r.BRIGHT_BLUE=94]="BRIGHT_BLUE",r[r.BRIGHT_MAGENTA=95]="BRIGHT_MAGENTA",r[r.BRIGHT_CYAN=96]="BRIGHT_CYAN",r[r.BRIGHT_WHITE=97]="BRIGHT_WHITE"})($m||($m={}));const dz=10;function CB(r){return typeof r!="string"?r:(r=r.toUpperCase(),$m[r]||$m.WHITE)}function Az(r,e,t){return!nw&&typeof r=="string"&&(e&&(r=`\x1B[${CB(e)}m${r}\x1B[39m`),t&&(r=`\x1B[${CB(t)+dz}m${r}\x1B[49m`)),r}function pz(r,e=["constructor"]){const t=Object.getPrototypeOf(r),n=Object.getOwnPropertyNames(t),i=r;for(const o of n){const s=i[o];typeof s=="function"&&(e.find(c=>o===c)||(i[o]=s.bind(r)))}}function iw(r,e){if(!r)throw new Error("Assertion failed")}function cd(){var e,t,n;let r;if(nw()&&b0.performance)r=(t=(e=b0==null?void 0:b0.performance)==null?void 0:e.now)==null?void 0:t.call(e);else if("hrtime"in ad){const i=(n=ad==null?void 0:ad.hrtime)==null?void 0:n.call(ad);r=i[0]*1e3+i[1]/1e6}else r=Date.now();return r}const ld={debug:nw()&&console.debug||console.log,log:console.log,info:console.info,warn:console.warn,error:console.error},gz={enabled:!0,level:0};function ud(){}const EB={},TB={once:!0};let sw=class{constructor({id:e}={id:""}){this.VERSION=eD,this._startTs=cd(),this._deltaTs=cd(),this.userData={},this.LOG_THROTTLE_TIMEOUT=0,this.id=e,this.userData={},this._storage=new uz(`__probe-${this.id}__`,gz),this.timeStamp(`${this.id} started`),pz(this),Object.seal(this)}set level(e){this.setLevel(e)}get level(){return this.getLevel()}isEnabled(){return this._storage.config.enabled}getLevel(){return this._storage.config.level}getTotal(){return Number((cd()-this._startTs).toPrecision(10))}getDelta(){return Number((cd()-this._deltaTs).toPrecision(10))}set priority(e){this.level=e}get priority(){return this.level}getPriority(){return this.level}enable(e=!0){return this._storage.setConfiguration({enabled:e}),this}setLevel(e){return this._storage.setConfiguration({level:e}),this}get(e){return this._storage.config[e]}set(e,t){this._storage.setConfiguration({[e]:t})}settings(){console.table?console.table(this._storage.config):console.log(this._storage.config)}assert(e,t){if(!e)throw new Error(t||"Assertion failed")}warn(e){return this._getLogFunction(0,e,ld.warn,arguments,TB)}error(e){return this._getLogFunction(0,e,ld.error,arguments)}deprecated(e,t){return this.warn(`\`${e}\` is deprecated and will be removed in a later version. Use \`${t}\` instead`)}removed(e,t){return this.error(`\`${e}\` has been removed. Use \`${t}\` instead`)}probe(e,t){return this._getLogFunction(e,t,ld.log,arguments,{time:!0,once:!0})}log(e,t){return this._getLogFunction(e,t,ld.debug,arguments)}info(e,t){return this._getLogFunction(e,t,console.info,arguments)}once(e,t){return this._getLogFunction(e,t,ld.debug||ld.info,arguments,TB)}table(e,t,n){return t?this._getLogFunction(e,t,console.table||ud,n&&[n],{tag:_z(t)}):ud}time(e,t){return this._getLogFunction(e,t,console.time?console.time:console.info)}timeEnd(e,t){return this._getLogFunction(e,t,console.timeEnd?console.timeEnd:console.info)}timeStamp(e,t){return this._getLogFunction(e,t,console.timeStamp||ud)}group(e,t,n={collapsed:!1}){const i=BB({logLevel:e,message:t,opts:n}),{collapsed:o}=n;return i.method=(o?console.groupCollapsed:console.group)||console.info,this._getLogFunction(i)}groupCollapsed(e,t,n={}){return this.group(e,t,Object.assign({},n,{collapsed:!0}))}groupEnd(e){return this._getLogFunction(e,"",console.groupEnd||ud)}withGroup(e,t,n){this.group(e,t)();try{n()}finally{this.groupEnd(e)()}}trace(){console.trace&&console.trace()}_shouldLog(e){return this.isEnabled()&&this.getLevel()>=tD(e)}_getLogFunction(e,t,n,i,o){if(this._shouldLog(e)){o=BB({logLevel:e,message:t,args:i,opts:o}),n=n||o.method,iw(n),o.total=this.getTotal(),o.delta=this.getDelta(),this._deltaTs=cd();const s=o.tag||o.message;if(o.once&&s)if(!EB[s])EB[s]=cd();else return ud;return t=mz(this.id,o.message,o),n.bind(console,t,...o.args)}return ud}};sw.VERSION=eD;function tD(r){if(!r)return 0;let e;switch(typeof r){case"number":e=r;break;case"object":e=r.logLevel||r.priority||0;break;default:return 0}return iw(Number.isFinite(e)&&e>=0),e}function BB(r){const{logLevel:e,message:t}=r;r.logLevel=tD(e);const n=r.args?Array.from(r.args):[];for(;n.length&&n.shift()!==t;);switch(typeof e){case"string":case"function":t!==void 0&&n.unshift(t),r.message=e;break;case"object":Object.assign(r,e);break}typeof r.message=="function"&&(r.message=r.message());const i=typeof r.message;return iw(i==="string"||i==="object"),Object.assign(r,{args:n},r.opts)}function mz(r,e,t){if(typeof e=="string"){const n=t.time?hz(fz(t.total)):"";e=t.time?`${r}: ${n} ${e}`:`${r}: ${e}`,e=Az(e,t.color,t.background)}return e}function _z(r){for(const e in r)for(const t in r[e])return t||"untitled";return"empty"}const SB=new sw({id:"loaders.gl"});let yz=class{log(){return()=>{}}info(){return()=>{}}warn(){return()=>{}}error(){return()=>{}}},vz=class{constructor(){V(this,"console");this.console=console}log(...e){return this.console.log.bind(this.console,...e)}info(...e){return this.console.info.bind(this.console,...e)}warn(...e){return this.console.warn.bind(this.console,...e)}error(...e){return this.console.error.bind(this.console,...e)}};const rD={fetch:null,mimeType:void 0,nothrow:!1,log:new vz,useLocalLibraries:!1,CDN:"https://unpkg.com/@loaders.gl",worker:!0,maxConcurrency:3,maxMobileConcurrency:1,reuseWorkers:Qx,_nodeWorkers:!1,_workerType:"",limit:0,_limitMB:0,batchSize:"auto",batchDebounceMs:0,metadata:!1,transforms:[]},bz={throws:"nothrow",dataType:"(no longer used)",uri:"baseUri",method:"fetch.method",headers:"fetch.headers",body:"fetch.body",mode:"fetch.mode",credentials:"fetch.credentials",cache:"fetch.cache",redirect:"fetch.redirect",referrer:"fetch.referrer",referrerPolicy:"fetch.referrerPolicy",integrity:"fetch.integrity",keepalive:"fetch.keepalive",signal:"fetch.signal"};function nD(){globalThis.loaders=globalThis.loaders||{};const{loaders:r}=globalThis;return r._state||(r._state={}),r._state}function iD(){const r=nD();return r.globalOptions=r.globalOptions||{...rD},r.globalOptions}function xz(r,e,t,n){return t=t||[],t=Array.isArray(t)?t:[t],wz(r,t),Ez(e,r,n)}function wz(r,e){IB(r,null,rD,bz,e);for(const t of e){const n=r&&r[t.id]||{},i=t.options&&t.options[t.id]||{},o=t.deprecatedOptions&&t.deprecatedOptions[t.id]||{};IB(n,t.id,i,o,e)}}function IB(r,e,t,n,i){const o=e||"Top level",s=e?`${e}.`:"";for(const c in r){const f=!e&&bg(r[c]),_=c==="baseUri"&&!e,b=c==="workerUrl"&&e;if(!(c in t)&&!_&&!b){if(c in n)SB.warn(`${o} loader option '${s}${c}' no longer supported, use '${n[c]}'`)();else if(!f){const T=Cz(c,i);SB.warn(`${o} loader option '${s}${c}' not recognized. ${T}`)()}}}}function Cz(r,e){const t=r.toLowerCase();let n="";for(const i of e)for(const o in i.options){if(r===o)return`Did you mean '${i.id}.${o}'?`;const s=o.toLowerCase();(t.startsWith(s)||s.startsWith(t))&&(n=n||`Did you mean '${i.id}.${o}'?`)}return n}function Ez(r,e,t){const i={...r.options||{}};return Tz(i,t),i.log===null&&(i.log=new yz),MB(i,iD()),MB(i,e),i}function MB(r,e){for(const t in e)if(t in e){const n=e[t];vB(n)&&vB(r[t])?r[t]={...r[t],...e[t]}:r[t]=e[t]}}function Tz(r,e){e&&!("baseUri"in r)&&(r.baseUri=e)}function ow(r){return r?(Array.isArray(r)&&(r=r[0]),Array.isArray(r==null?void 0:r.extensions)):!1}function aw(r){Hm(r,"null loader"),Hm(ow(r),"invalid loader");let e;return Array.isArray(r)&&(e=r[1],r=r[0],r={...r,options:{...r.options,...e}}),(r!=null&&r.parseTextSync||r!=null&&r.parseText)&&(r.text=!0),r.text||(r.binary=!0),r}const sD=()=>{const r=nD();return r.loaderRegistry=r.loaderRegistry||[],r.loaderRegistry};function Bz(r){const e=sD();r=Array.isArray(r)?r:[r];for(const t of r){const n=aw(t);e.find(i=>n===i)||e.unshift(n)}}function Sz(){return sD()}const Iz=new sw({id:"loaders.gl"}),Mz=/\.([^.]+)$/;async function Pz(r,e=[],t,n){if(!oD(r))return null;let i=PB(r,e,{...t,nothrow:!0},n);if(i)return i;if(oh(r)&&(r=await r.slice(0,10).arrayBuffer(),i=PB(r,e,t,n)),!i&&!(t!=null&&t.nothrow))throw new Error(aD(r));return i}function PB(r,e=[],t,n){if(!oD(r))return null;if(e&&!Array.isArray(e))return aw(e);let i=[];e&&(i=i.concat(e)),t!=null&&t.ignoreRegisteredLoaders||i.push(...Sz()),Fz(i);const o=Rz(r,i,t,n);if(!o&&!(t!=null&&t.nothrow))throw new Error(aD(r));return o}function Rz(r,e,t,n){const i=sy(r),o=rw(r),s=tw(i)||(n==null?void 0:n.url);let c=null,f="";return t!=null&&t.mimeType&&(c=Uv(e,t==null?void 0:t.mimeType),f=`match forced by supplied MIME type ${t==null?void 0:t.mimeType}`),c=c||Oz(e,s),f=f||(c?`matched url ${s}`:""),c=c||Uv(e,o),f=f||(c?`matched MIME type ${o}`:""),c=c||Lz(e,r),f=f||(c?`matched initial data ${cD(r)}`:""),t!=null&&t.fallbackMimeType&&(c=c||Uv(e,t==null?void 0:t.fallbackMimeType),f=f||(c?`matched fallback MIME type ${o}`:"")),f&&Iz.log(1,`selectLoader selected ${c==null?void 0:c.name}: ${f}.`),c}function oD(r){return!(r instanceof Response&&r.status===204)}function aD(r){const e=sy(r),t=rw(r);let n="No valid loader found (";n+=e?`${YO(e)}, `:"no url provided, ",n+=`MIME type: ${t?`"${t}"`:"not provided"}, `;const i=r?cD(r):"";return n+=i?` first bytes: "${i}"`:"first bytes: not available",n+=")",n}function Fz(r){for(const e of r)aw(e)}function Oz(r,e){const t=e&&Mz.exec(e),n=t&&t[1];return n?Dz(r,n):null}function Dz(r,e){e=e.toLowerCase();for(const t of r)for(const n of t.extensions)if(n.toLowerCase()===e)return t;return null}function Uv(r,e){var t;for(const n of r)if((t=n.mimeTypes)!=null&&t.some(i=>bB(e,i))||bB(e,`application/x.${n.id}`))return n;return null}function Lz(r,e){if(!e)return null;for(const t of r)if(typeof e=="string"){if(Nz(e,t))return t}else if(ArrayBuffer.isView(e)){if(RB(e.buffer,e.byteOffset,t))return t}else if(e instanceof ArrayBuffer&&RB(e,0,t))return t;return null}function Nz(r,e){return e.testText?e.testText(r):(Array.isArray(e.tests)?e.tests:[e.tests]).some(n=>r.startsWith(n))}function RB(r,e,t){return(Array.isArray(t.tests)?t.tests:[t.tests]).some(i=>kz(r,e,t,i))}function kz(r,e,t,n){if(n instanceof ArrayBuffer)return O5(n,r,n.byteLength);switch(typeof n){case"function":return n(r);case"string":const i=t2(r,e,n.length);return n===i;default:return!1}}function cD(r,e=5){return typeof r=="string"?r.slice(0,e):ArrayBuffer.isView(r)?t2(r.buffer,r.byteOffset,e):r instanceof ArrayBuffer?t2(r,0,e):""}function t2(r,e,t){if(r.byteLength<e+t)return"";const n=new DataView(r);let i="";for(let o=0;o<t;o++)i+=String.fromCharCode(n.getUint8(e+o));return i}const Uz=256*1024;function*zz(r,e){const t=(e==null?void 0:e.chunkSize)||Uz;let n=0;const i=new TextEncoder;for(;n<r.length;){const o=Math.min(r.length-n,t),s=r.slice(n,n+o);n+=o,yield i.encode(s)}}const Gz=256*1024;function*Vz(r,e={}){const{chunkSize:t=Gz}=e;let n=0;for(;n<r.byteLength;){const i=Math.min(r.byteLength-n,t),o=new ArrayBuffer(i),s=new Uint8Array(r,n,i);new Uint8Array(o).set(s),n+=i,yield o}}const Hz=1024*1024;async function*jz(r,e){const t=(e==null?void 0:e.chunkSize)||Hz;let n=0;for(;n<r.size;){const i=n+t,o=await r.slice(n,i).arrayBuffer();n=i,yield o}}function FB(r,e){return Qx?$z(r,e):Wz(r)}async function*$z(r,e){const t=r.getReader();let n;try{for(;;){const i=n||t.read();e!=null&&e._streamReadAhead&&(n=t.read());const{done:o,value:s}=await i;if(o)return;yield KO(s)}}catch{t.releaseLock()}}async function*Wz(r,e){for await(const t of r)yield KO(t)}function Jz(r,e){if(typeof r=="string")return zz(r,e);if(r instanceof ArrayBuffer)return Vz(r,e);if(oh(r))return jz(r,e);if(qO(r))return FB(r,e);if(sh(r))return FB(r.body,e);throw new Error("makeIterator")}const lD="Cannot convert supplied data type";function Xz(r,e,t){if(e.text&&typeof r=="string")return r;if($5(r)&&(r=r.buffer),r instanceof ArrayBuffer){const n=r;return e.text&&!e.binary?new TextDecoder("utf8").decode(n):n}if(ArrayBuffer.isView(r)){if(e.text&&!e.binary)return new TextDecoder("utf8").decode(r);let n=r.buffer;const i=r.byteLength||r.length;return(r.byteOffset!==0||i!==n.byteLength)&&(n=n.slice(r.byteOffset,r.byteOffset+i)),n}throw new Error(lD)}async function Kz(r,e,t){const n=r instanceof ArrayBuffer||ArrayBuffer.isView(r);if(typeof r=="string"||n)return Xz(r,e);if(oh(r)&&(r=await QO(r)),sh(r)){const i=r;return await tz(i),e.binary?await i.arrayBuffer():await i.text()}if(qO(r)&&(r=Jz(r,t)),H5(r)||j5(r))return N5(r);throw new Error(lD)}function uD(r,e){const t=iD(),n=r||t;return typeof n.fetch=="function"?n.fetch:bg(n.fetch)?i=>wB(i,n.fetch):e!=null&&e.fetch?e==null?void 0:e.fetch:wB}function Yz(r,e,t){if(t)return t;const n={fetch:uD(e,r),...r};if(n.url){const i=tw(n.url);n.baseUrl=i,n.queryString=Z5(n.url),n.filename=YO(i),n.baseUrl=G5(i)}return Array.isArray(n.loaders)||(n.loaders=null),n}function qz(r,e){if(r&&!Array.isArray(r))return r;let t;if(r&&(t=Array.isArray(r)?r:[r]),e&&e.loaders){const n=Array.isArray(e.loaders)?e.loaders:[e.loaders];t=t?[...t,...n]:n}return t&&t.length?t:void 0}async function Wm(r,e,t,n){e&&!Array.isArray(e)&&!ow(e)&&(n=void 0,t=e,e=void 0),r=await r,t=t||{};const i=sy(r),s=qz(e,n),c=await Pz(r,s,t);return c?(t=xz(t,c,s,i),n=Yz({url:i,_parse:Wm,loaders:s},t,n||null),await Zz(c,r,t,n)):null}async function Zz(r,e,t,n){if(M5(r),t=_5(r.options,t),sh(e)){const o=e,{ok:s,redirected:c,status:f,statusText:_,type:b,url:T}=o,S=Object.fromEntries(o.headers.entries());n.response={headers:S,ok:s,redirected:c,status:f,statusText:_,type:b,url:T}}e=await Kz(e,r,t);const i=r;if(i.parseTextSync&&typeof e=="string")return i.parseTextSync(e,t,n);if(P5(r,t))return await R5(r,e,t,n,Wm);if(i.parseText&&typeof e=="string")return await i.parseText(e,t,n);if(i.parse)return await i.parse(e,t,n);throw ku(!i.parseSync),new Error(`${r.id} loader - no parser found and worker is disabled`)}async function r2(r,e,t,n){let i,o;!Array.isArray(e)&&!ow(e)?(i=[],o=e):(i=e,o=t);const s=uD(o);let c=r;return typeof r=="string"&&(c=await s(r)),oh(r)&&(c=await s(r)),Array.isArray(i)?await Wm(c,i,o):await Wm(c,i,o)}const Qz="4.2.4";var OO;const eG=(OO=globalThis.loaders)==null?void 0:OO.parseImageNode,n2=typeof Image<"u",i2=typeof ImageBitmap<"u",tG=!!eG,s2=Qx?!0:tG;function rG(r){switch(r){case"auto":return i2||n2||s2;case"imagebitmap":return i2;case"image":return n2;case"data":return s2;default:throw new Error(`@loaders.gl/images: image ${r} not supported in this environment`)}}function nG(){if(i2)return"imagebitmap";if(n2)return"image";if(s2)return"data";throw new Error("Install '@loaders.gl/polyfills' to parse images under Node.js")}function iG(r){const e=oG(r);if(!e)throw new Error("Not an image");return e}function sG(r){switch(iG(r)){case"data":return r;case"image":case"imagebitmap":const e=document.createElement("canvas"),t=e.getContext("2d");if(!t)throw new Error("getImageData");return e.width=r.width,e.height=r.height,t.drawImage(r,0,0),t.getImageData(0,0,r.width,r.height);default:throw new Error("getImageData")}}function oG(r){return typeof ImageBitmap<"u"&&r instanceof ImageBitmap?"imagebitmap":typeof Image<"u"&&r instanceof Image?"image":r&&typeof r=="object"&&r.data&&r.width&&r.height?"data":null}const aG=/^data:image\/svg\+xml/,cG=/\.svg((\?|#).*)?$/;function cw(r){return r&&(aG.test(r)||cG.test(r))}function lG(r,e){if(cw(e)){let n=new TextDecoder().decode(r);try{typeof unescape=="function"&&typeof encodeURIComponent=="function"&&(n=unescape(encodeURIComponent(n)))}catch(o){throw new Error(o.message)}return`data:image/svg+xml;base64,${btoa(n)}`}return fD(r,e)}function fD(r,e){if(cw(e))throw new Error("SVG cannot be parsed directly to imagebitmap");return new Blob([new Uint8Array(r)])}async function hD(r,e,t){const n=lG(r,t),i=self.URL||self.webkitURL,o=typeof n!="string"&&i.createObjectURL(n);try{return await uG(o||n,e)}finally{o&&i.revokeObjectURL(o)}}async function uG(r,e){const t=new Image;return t.src=r,e.image&&e.image.decode&&t.decode?(await t.decode(),t):await new Promise((n,i)=>{try{t.onload=()=>n(t),t.onerror=o=>{const s=o instanceof Error?o.message:"error";i(new Error(s))}}catch(o){i(o)}})}const fG={};let OB=!0;async function hG(r,e,t){let n;cw(t)?n=await hD(r,e,t):n=fD(r,t);const i=e&&e.imagebitmap;return await dG(n,i)}async function dG(r,e=null){if((AG(e)||!OB)&&(e=null),e)try{return await createImageBitmap(r,e)}catch(t){console.warn(t),OB=!1}return await createImageBitmap(r)}function AG(r){for(const e in r||fG)return!1;return!0}function pG(r){return!yG(r,"ftyp",4)||(r[8]&96)===0?null:gG(r)}function gG(r){switch(mG(r,8,12).replace("\0"," ").trim()){case"avif":case"avis":return{extension:"avif",mimeType:"image/avif"};default:return null}}function mG(r,e,t){return String.fromCharCode(...r.slice(e,t))}function _G(r){return[...r].map(e=>e.charCodeAt(0))}function yG(r,e,t=0){const n=_G(e);for(let i=0;i<n.length;++i)if(n[i]!==r[i+t])return!1;return!0}const Wc=!1,zp=!0;function dD(r){const e=xg(r);return bG(e)||CG(e)||xG(e)||wG(e)||vG(e)}function vG(r){const e=new Uint8Array(r instanceof DataView?r.buffer:r),t=pG(e);return t?{mimeType:t.mimeType,width:0,height:0}:null}function bG(r){const e=xg(r);return e.byteLength>=24&&e.getUint32(0,Wc)===2303741511?{mimeType:"image/png",width:e.getUint32(16,Wc),height:e.getUint32(20,Wc)}:null}function xG(r){const e=xg(r);return e.byteLength>=10&&e.getUint32(0,Wc)===1195984440?{mimeType:"image/gif",width:e.getUint16(6,zp),height:e.getUint16(8,zp)}:null}function wG(r){const e=xg(r);return e.byteLength>=14&&e.getUint16(0,Wc)===16973&&e.getUint32(2,zp)===e.byteLength?{mimeType:"image/bmp",width:e.getUint32(18,zp),height:e.getUint32(22,zp)}:null}function CG(r){const e=xg(r);if(!(e.byteLength>=3&&e.getUint16(0,Wc)===65496&&e.getUint8(2)===255))return null;const{tableMarkers:n,sofMarkers:i}=EG();let o=2;for(;o+9<e.byteLength;){const s=e.getUint16(o,Wc);if(i.has(s))return{mimeType:"image/jpeg",height:e.getUint16(o+5,Wc),width:e.getUint16(o+7,Wc)};if(!n.has(s))return null;o+=2,o+=e.getUint16(o,Wc)}return null}function EG(){const r=new Set([65499,65476,65484,65501,65534]);for(let t=65504;t<65520;++t)r.add(t);return{tableMarkers:r,sofMarkers:new Set([65472,65473,65474,65475,65477,65478,65479,65481,65482,65483,65485,65486,65487,65502])}}function xg(r){if(r instanceof DataView)return r;if(ArrayBuffer.isView(r))return new DataView(r.buffer);if(r instanceof ArrayBuffer)return new DataView(r);throw new Error("toDataView")}async function TG(r,e){var i;const{mimeType:t}=dD(r)||{},n=(i=globalThis.loaders)==null?void 0:i.parseImageNode;return Hm(n),await n(r,t)}async function BG(r,e,t){e=e||{};const i=(e.image||{}).type||"auto",{url:o}=t||{},s=SG(i);let c;switch(s){case"imagebitmap":c=await hG(r,e,o);break;case"image":c=await hD(r,e,o);break;case"data":c=await TG(r);break;default:Hm(!1)}return i==="data"&&(c=sG(c)),c}function SG(r){switch(r){case"auto":case"data":return nG();default:return rG(r),r}}const IG=["png","jpg","jpeg","gif","webp","bmp","ico","svg","avif"],MG=["image/png","image/jpeg","image/gif","image/webp","image/avif","image/bmp","image/vnd.microsoft.icon","image/svg+xml"],PG={image:{type:"auto",decode:!0}},RG={dataType:null,batchType:null,id:"image",module:"images",name:"Images",version:Qz,mimeTypes:MG,extensions:IG,parse:BG,tests:[r=>!!dD(new DataView(r))],options:PG},$r=new HO({id:"deck"});let o2={};function FG(r){o2=r}function so(r,e,t,n){$r.level>0&&o2[r]&&o2[r].call(null,e,t,n)}function OG(r){const e=r[0],t=r[r.length-1];return e==="{"&&t==="}"||e==="["&&t==="]"}const DG={dataType:null,batchType:null,id:"JSON",name:"JSON",module:"",version:"",options:{},extensions:["json","geojson"],mimeTypes:["application/json","application/geo+json"],testText:OG,parseTextSync:JSON.parse};function LG(){const r="9.1.12",e=globalThis.deck&&globalThis.deck.VERSION;if(e&&e!==r)throw new Error(`deck.gl - multiple versions detected: ${e} vs ${r}`);return e||($r.log(1,`deck.gl ${r}`)(),globalThis.deck={...globalThis.deck,VERSION:r,version:r,log:$r,_registerLoggers:FG},Bz([DG,[RG,{imagebitmap:{premultiplyAlpha:"none"}}]])),r}const NG=LG();function lw(r,e){if(!r)throw new Error(e||"shadertools: assertion failed.")}const zv={number:{type:"number",validate(r,e){return Number.isFinite(r)&&typeof e=="object"&&(e.max===void 0||r<=e.max)&&(e.min===void 0||r>=e.min)}},array:{type:"array",validate(r,e){return Array.isArray(r)||ArrayBuffer.isView(r)}}};function kG(r){const e={};for(const[t,n]of Object.entries(r))e[t]=UG(n);return e}function UG(r){let e=DB(r);if(e!=="object")return{value:r,...zv[e],type:e};if(typeof r=="object")return r?r.type!==void 0?{...r,...zv[r.type],type:r.type}:r.value===void 0?{type:"object",value:r}:(e=DB(r.value),{...r,...zv[e],type:e}):{type:"object",value:null};throw new Error("props")}function DB(r){return Array.isArray(r)||ArrayBuffer.isView(r)?"array":typeof r}const zG=`#ifdef MODULE_LOGDEPTH
|
7
7
|
logdepth_adjustPosition(gl_Position);
|
8
8
|
#endif
|
9
9
|
`,GG=`#ifdef MODULE_MATERIAL
|
@@ -1985,7 +1985,7 @@ void main(void) {
|
|
1985
1985
|
${t.source}`}),super(e,{id:t.id||ch("clip-space"),...t,vs:FJ,vertexCount:4,geometry:new js({topology:"triangle-strip",vertexCount:4,attributes:{clipSpacePositions:{size:2,value:new Float32Array(qS)},texCoords:{size:2,value:new Float32Array(n)},coordinates:{size:2,value:new Float32Array(n)}}})})}}class c_{constructor(e={}){V(this,"id");V(this,"matrix",new dn);V(this,"display",!0);V(this,"position",new ft);V(this,"rotation",new ft);V(this,"scale",new ft(1,1,1));V(this,"userData",{});V(this,"props",{});const{id:t}=e;this.id=t||ch(this.constructor.name),this._setScenegraphNodeProps(e)}getBounds(){return null}destroy(){}delete(){this.destroy()}setProps(e){return this._setScenegraphNodeProps(e),this}toString(){return`{type: ScenegraphNode, id: ${this.id})}`}setPosition(e){return this.position=e,this}setRotation(e){return this.rotation=e,this}setScale(e){return this.scale=e,this}setMatrix(e,t=!0){t?this.matrix.copy(e):this.matrix=e}setMatrixComponents(e){const{position:t,rotation:n,scale:i,update:o=!0}=e;return t&&this.setPosition(t),n&&this.setRotation(n),i&&this.setScale(i),o&&this.updateMatrix(),this}updateMatrix(){const e=this.position,t=this.rotation,n=this.scale;return this.matrix.identity(),this.matrix.translate(e),this.matrix.rotateXYZ(t),this.matrix.scale(n),this}update(e={}){const{position:t,rotation:n,scale:i}=e;return t&&this.setPosition(t),n&&this.setRotation(n),i&&this.setScale(i),this.updateMatrix(),this}getCoordinateUniforms(e,t){t=t||this.matrix;const n=new dn(e).multiplyRight(t),i=n.invert(),o=i.transpose();return{viewMatrix:e,modelMatrix:t,objectMatrix:t,worldMatrix:n,worldInverseMatrix:i,worldInverseTransposeMatrix:o}}_setScenegraphNodeProps(e){"position"in e&&this.setPosition(e.position),"rotation"in e&&this.setRotation(e.rotation),"scale"in e&&this.setScale(e.scale),"matrix"in e&&this.setMatrix(e.matrix),Object.assign(this.props,e)}}class sA extends c_{constructor(t={}){t=Array.isArray(t)?{children:t}:t;const{children:n=[]}=t;Yt.assert(n.every(i=>i instanceof c_),"every child must an instance of ScenegraphNode");super(t);V(this,"children");this.children=n}getBounds(){const t=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]];return this.traverse((n,{worldMatrix:i})=>{const o=n.getBounds();if(!o)return;const[s,c]=o,f=new ft(s).add(c).divide([2,2,2]);i.transformAsPoint(f,f);const _=new ft(c).subtract(s).divide([2,2,2]);i.transformAsVector(_,_);for(let b=0;b<8;b++){const T=new ft(b&1?-1:1,b&2?-1:1,b&4?-1:1).multiply(_).add(f);for(let S=0;S<3;S++)t[0][S]=Math.min(t[0][S],T[S]),t[1][S]=Math.max(t[1][S],T[S])}}),Number.isFinite(t[0][0])?t:null}destroy(){this.children.forEach(t=>t.destroy()),this.removeAll(),super.destroy()}add(...t){for(const n of t)Array.isArray(n)?this.add(...n):this.children.push(n);return this}remove(t){const n=this.children,i=n.indexOf(t);return i>-1&&n.splice(i,1),this}removeAll(){return this.children=[],this}traverse(t,{worldMatrix:n=new dn}={}){const i=new dn(n).multiplyRight(this.matrix);for(const o of this.children)o instanceof sA?o.traverse(t,{worldMatrix:i}):t(o,{worldMatrix:i})}}class N2 extends c_{constructor(t){super(t);V(this,"model");V(this,"bounds",null);V(this,"managedResources");this.model=t.model,this.managedResources=t.managedResources||[],this.bounds=t.bounds||null,this.setProps(t)}destroy(){this.model&&(this.model.destroy(),this.model=null),this.managedResources.forEach(t=>t.destroy()),this.managedResources=[]}getBounds(){return this.bounds}draw(t){return this.model.draw(t)}}class N6 extends js{constructor(e={}){const{id:t=ch("cube-geometry"),indices:n=!0}=e;super(n?{...e,id:t,topology:"triangle-list",indices:{size:1,value:DJ},attributes:{...VJ,...e.attributes}}:{...e,id:t,topology:"triangle-list",indices:void 0,attributes:{...HJ,...e.attributes}})}}const DJ=new Uint16Array([0,1,2,0,2,3,4,5,6,4,6,7,8,9,10,8,10,11,12,13,14,12,14,15,16,17,18,16,18,19,20,21,22,20,22,23]),LJ=new Float32Array([-1,-1,1,1,-1,1,1,1,1,-1,1,1,-1,-1,-1,-1,1,-1,1,1,-1,1,-1,-1,-1,1,-1,-1,1,1,1,1,1,1,1,-1,-1,-1,-1,1,-1,-1,1,-1,1,-1,-1,1,1,-1,-1,1,1,-1,1,1,1,1,-1,1,-1,-1,-1,-1,-1,1,-1,1,1,-1,1,-1]),NJ=new Float32Array([0,0,1,0,0,1,0,0,1,0,0,1,0,0,-1,0,0,-1,0,0,-1,0,0,-1,0,1,0,0,1,0,0,1,0,0,1,0,0,-1,0,0,-1,0,0,-1,0,0,-1,0,1,0,0,1,0,0,1,0,0,1,0,0,-1,0,0,-1,0,0,-1,0,0,-1,0,0]),kJ=new Float32Array([0,0,1,0,1,1,0,1,1,0,1,1,0,1,0,0,0,1,0,0,1,0,1,1,1,1,0,1,0,0,1,0,1,0,1,1,0,1,0,0,0,0,1,0,1,1,0,1]),UJ=new Float32Array([1,-1,1,-1,-1,1,-1,-1,-1,1,-1,-1,1,-1,1,-1,-1,-1,1,1,1,1,-1,1,1,-1,-1,1,1,-1,1,1,1,1,-1,-1,-1,1,1,1,1,1,1,1,-1,-1,1,-1,-1,1,1,1,1,-1,-1,-1,1,-1,1,1,-1,1,-1,-1,-1,-1,-1,-1,1,-1,1,-1,1,1,1,-1,1,1,-1,-1,1,-1,-1,1,1,-1,1,1,1,1,1,-1,-1,-1,-1,-1,-1,1,-1,1,1,-1,1,-1,-1,-1,1,-1]),zJ=new Float32Array([1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,0,0,1,0,1,1,1,1,0,1,0,0,1,0,1,1,0,0]),GJ=new Float32Array([1,0,1,1,0,0,1,1,0,0,0,1,1,0,0,1,1,0,1,1,0,0,0,1,1,1,1,1,1,0,1,1,1,0,0,1,1,1,0,1,1,1,1,1,1,0,0,1,0,1,1,1,1,1,1,1,1,1,0,1,0,1,0,1,0,1,1,1,1,1,0,1,0,0,1,1,0,1,1,1,0,1,0,1,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,1,0,1,1,1,0,0,1,1,0,0,1,1,1,0,1,1,1,1,1,1,1,0,0,1,0,0,0,1,0,1,0,1,1,1,0,1,1,0,0,1,0,1,0,1]),VJ={POSITION:{size:3,value:LJ},NORMAL:{size:3,value:NJ},TEXCOORD_0:{size:2,value:kJ}},HJ={POSITION:{size:3,value:UJ},TEXCOORD_0:{size:2,value:zJ},COLOR_0:{size:3,value:GJ}},jJ=`uniform screenUniforms {
|
1986
1986
|
vec2 texSize;
|
1987
1987
|
} screen;
|
1988
|
-
`,$J={name:"screen",fs:jJ,uniformTypes:{texSize:"vec2<f32>"}};class WJ extends I6{constructor(e,t){super(e,t);const{module:n,fs:i,id:o}=t,s={depthWriteEnabled:!1,depthCompare:"always"};this.model=new OJ(e,{id:o,fs:i,modules:[n,$J],parameters:s})}render(e){this._renderPass(this.device,e)}delete(){this.model.destroy(),this.model=null}_renderPass(e,t){const{clearCanvas:n,inputBuffer:i,outputBuffer:o}=t,s=[i.width,i.height],c={texSrc:i.colorAttachments[0],texSize:s};this.model.shaderInputs.setProps({screen:c,...t.moduleProps});const f=this.device.beginRenderPass({framebuffer:o,parameters:{viewport:[0,0,...s]},clearColor:n?[0,0,0,0]:!1,clearDepth:1});this.model.draw(f),f.end()}}class JJ{constructor(e,t){this.id=`${e.name}-pass`,this.props=t,AD(e),this.module=e}setup({device:e}){this.passes=XJ(e,this.module,this.id)}setProps(e){this.props=e}preRender(){}postRender(e){const t=this.passes,{target:n}=e;let i=e.inputBuffer,o=e.swapBuffer;for(let s=0;s<t.length;s++){const c=s===t.length-1,f=n!==void 0&&c;f&&(o=n);const _=!f||!!e.clearCanvas,b={},T=this.module.passes[s].uniforms;b[this.module.name]={...this.props,...T},t[s].render({clearCanvas:_,inputBuffer:i,outputBuffer:o,moduleProps:b});const S=o;o=i,i=S}return i}cleanup(){if(this.passes){for(const e of this.passes)e.delete();this.passes=void 0}}}function XJ(r,e,t){return e.passes.map((n,i)=>{const o=qJ(e,n),s=`${t}-${i}`;return new WJ(r,{id:s,module:e,fs:o})})}const k6=`#version 300 es
|
1988
|
+
`,$J={name:"screen",fs:jJ,uniformTypes:{texSize:"vec2<f32>"}};class WJ extends I6{constructor(e,t){super(e,t);const{module:n,fs:i,id:o}=t,s={depthWriteEnabled:!1,depthCompare:"always"};this.model=new OJ(e,{id:o,fs:i,modules:[n,$J],parameters:s})}render(e){this._renderPass(this.device,e)}delete(){this.model.destroy(),this.model=null}_renderPass(e,t){const{clearCanvas:n,inputBuffer:i,outputBuffer:o}=t,s=[i.width,i.height],c={texSrc:i.colorAttachments[0],texSize:s};this.model.shaderInputs.setProps({screen:c,...t.moduleProps});const f=this.device.beginRenderPass({framebuffer:o,parameters:{viewport:[0,0,...s]},clearColor:n?[0,0,0,0]:!1,clearDepth:1,clearStencil:!1});this.model.draw(f),f.end()}}class JJ{constructor(e,t){this.id=`${e.name}-pass`,this.props=t,AD(e),this.module=e}setup({device:e}){this.passes=XJ(e,this.module,this.id)}setProps(e){this.props=e}preRender(){}postRender(e){const t=this.passes,{target:n}=e;let i=e.inputBuffer,o=e.swapBuffer;for(let s=0;s<t.length;s++){const c=s===t.length-1,f=n!==void 0&&c;f&&(o=n);const _=!f||!!e.clearCanvas,b={},T=this.module.passes[s].uniforms;b[this.module.name]={...this.props,...T},t[s].render({clearCanvas:_,inputBuffer:i,outputBuffer:o,moduleProps:b});const S=o;o=i,i=S}return i}cleanup(){if(this.passes){for(const e of this.passes)e.delete();this.passes=void 0}}}function XJ(r,e,t){return e.passes.map((n,i)=>{const o=qJ(e,n),s=`${t}-${i}`;return new WJ(r,{id:s,module:e,fs:o})})}const k6=`#version 300 es
|
1989
1989
|
uniform sampler2D texSrc;
|
1990
1990
|
|
1991
1991
|
in vec2 position;
|
@@ -4190,7 +4190,7 @@ fragColor = vFillColor;
|
|
4190
4190
|
}
|
4191
4191
|
DECKGL_FILTER_COLOR(fragColor, geometry);
|
4192
4192
|
}
|
4193
|
-
`,cue={billboard:!0,sizeScale:1,sizeUnits:"pixels",sizeMinPixels:0,sizeMaxPixels:Number.MAX_SAFE_INTEGER,borderRadius:{type:"object",value:0},padding:{type:"array",value:[0,0,0,0]},getPosition:{type:"accessor",value:r=>r.position},getSize:{type:"accessor",value:1},getAngle:{type:"accessor",value:0},getPixelOffset:{type:"accessor",value:[0,0]},getBoundingRect:{type:"accessor",value:[0,0,0,0]},getFillColor:{type:"accessor",value:[0,0,0,255]},getLineColor:{type:"accessor",value:[0,0,0,255]},getLineWidth:{type:"accessor",value:1}};class Fg extends _s{getShaders(){return super.getShaders({vs:oue,fs:aue,modules:[Ss,aa,sue]})}initializeState(){this.getAttributeManager().addInstanced({instancePositions:{size:3,type:"float64",fp64:this.use64bitPositions(),transition:!0,accessor:"getPosition"},instanceSizes:{size:1,transition:!0,accessor:"getSize",defaultValue:1},instanceAngles:{size:1,transition:!0,accessor:"getAngle"},instanceRects:{size:4,accessor:"getBoundingRect"},instancePixelOffsets:{size:2,transition:!0,accessor:"getPixelOffset"},instanceFillColors:{size:4,transition:!0,type:"unorm8",accessor:"getFillColor",defaultValue:[0,0,0,255]},instanceLineColors:{size:4,transition:!0,type:"unorm8",accessor:"getLineColor",defaultValue:[0,0,0,255]},instanceLineWidths:{size:1,transition:!0,accessor:"getLineWidth",defaultValue:1}})}updateState(e){var n;super.updateState(e);const{changeFlags:t}=e;t.extensionsChanged&&((n=this.state.model)==null||n.destroy(),this.state.model=this._getModel(),this.getAttributeManager().invalidateAll())}draw({uniforms:e}){const{billboard:t,sizeScale:n,sizeUnits:i,sizeMinPixels:o,sizeMaxPixels:s,getLineWidth:c}=this.props;let{padding:f,borderRadius:_}=this.props;f.length<4&&(f=[f[0],f[1],f[0],f[1]]),Array.isArray(_)||(_=[_,_,_,_]);const b=this.state.model,T={billboard:t,stroked:!!c,borderRadius:_,padding:f,sizeUnits:bo[i],sizeScale:n,sizeMinPixels:o,sizeMaxPixels:s};b.shaderInputs.setProps({textBackground:T}),b.draw(this.context.renderPass)}_getModel(){const e=[0,0,1,0,0,1,1,1];return new Bi(this.context.device,{...this.getShaders(),id:this.props.id,bufferLayout:this.getAttributeManager().getBufferLayouts(),geometry:new js({topology:"triangle-strip",vertexCount:4,attributes:{positions:{size:2,value:new Float32Array(e)}}}),isInstanced:!0})}}Fg.defaultProps=cue;Fg.layerName="TextBackgroundLayer";const tP={start:1,middle:0,end:-1},rP={top:1,center:0,bottom:-1},Gb=[0,0,0,255],lue=1,uue={billboard:!0,sizeScale:1,sizeUnits:"pixels",sizeMinPixels:0,sizeMaxPixels:Number.MAX_SAFE_INTEGER,background:!1,getBackgroundColor:{type:"accessor",value:[255,255,255,255]},getBorderColor:{type:"accessor",value:Gb},getBorderWidth:{type:"accessor",value:0},backgroundBorderRadius:{type:"object",value:0},backgroundPadding:{type:"array",value:[0,0,0,0]},characterSet:{type:"object",value:uA.characterSet},fontFamily:uA.fontFamily,fontWeight:uA.fontWeight,lineHeight:lue,outlineWidth:{type:"number",value:0,min:0},outlineColor:{type:"color",value:Gb},fontSettings:{type:"object",value:{},compare:1},wordBreak:"break-word",maxWidth:{type:"number",value:-1},getText:{type:"accessor",value:r=>r.text},getPosition:{type:"accessor",value:r=>r.position},getColor:{type:"accessor",value:Gb},getSize:{type:"accessor",value:32},getAngle:{type:"accessor",value:0},getTextAnchor:{type:"accessor",value:"middle"},getAlignmentBaseline:{type:"accessor",value:"center"},getPixelOffset:{type:"accessor",value:[0,0]},backgroundColor:{deprecatedFor:["background","getBackgroundColor"]}};class dh extends ys{constructor(){super(...arguments),this.getBoundingRect=(e,t)=>{let{size:[n,i]}=this.transformParagraph(e,t);const{fontSize:o}=this.state.fontAtlasManager.props;n/=o,i/=o;const{getTextAnchor:s,getAlignmentBaseline:c}=this.props,f=tP[typeof s=="function"?s(e,t):s],_=rP[typeof c=="function"?c(e,t):c];return[(f-1)*n/2,(_-1)*i/2,n,i]},this.getIconOffsets=(e,t)=>{const{getTextAnchor:n,getAlignmentBaseline:i}=this.props,{x:o,y:s,rowWidth:c,size:[f,_]}=this.transformParagraph(e,t),b=tP[typeof n=="function"?n(e,t):n],T=rP[typeof i=="function"?i(e,t):i],S=o.length,D=new Array(S*2);let k=0;for(let G=0;G<S;G++){const W=(1-b)*(f-c[G])/2;D[k++]=(b-1)*f/2+W+o[G],D[k++]=(T-1)*_/2+s[G]}return D}}initializeState(){this.state={styleVersion:0,fontAtlasManager:new iue},this.props.maxWidth>0&&$r.warn("v8.9 breaking change: TextLayer maxWidth is now relative to text size")()}updateState(e){const{props:t,oldProps:n,changeFlags:i}=e;(i.dataChanged||i.updateTriggersChanged&&(i.updateTriggersChanged.all||i.updateTriggersChanged.getText))&&this._updateText(),(this._updateFontAtlas()||t.lineHeight!==n.lineHeight||t.wordBreak!==n.wordBreak||t.maxWidth!==n.maxWidth)&&this.setState({styleVersion:this.state.styleVersion+1})}getPickingInfo({info:e}){return e.object=e.index>=0?this.props.data[e.index]:null,e}_updateFontAtlas(){const{fontSettings:e,fontFamily:t,fontWeight:n}=this.props,{fontAtlasManager:i,characterSet:o}=this.state,s={...e,characterSet:o,fontFamily:t,fontWeight:n};if(!i.mapping)return i.setProps(s),!0;for(const c in s)if(s[c]!==i.props[c])return i.setProps(s),!0;return!1}_updateText(){var f;const{data:e,characterSet:t}=this.props,n=(f=e.attributes)==null?void 0:f.getText;let{getText:i}=this.props,o=e.startIndices,s;const c=t==="auto"&&new Set;if(n&&o){const{texts:_,characterCount:b}=Qle({...ArrayBuffer.isView(n)?{value:n}:n,length:e.length,startIndices:o,characterSet:c});s=b,i=(T,{index:S})=>_[S]}else{const{iterable:_,objectInfo:b}=nl(e);o=[0],s=0;for(const T of _){b.index++;const S=Array.from(i(T,b)||"");c&&S.forEach(c.add,c),s+=S.length,o.push(s)}}this.setState({getText:i,startIndices:o,numInstances:s,characterSet:c||t})}transformParagraph(e,t){const{fontAtlasManager:n}=this.state,i=n.mapping,o=this.state.getText,{wordBreak:s,lineHeight:c,maxWidth:f}=this.props,_=o(e,t)||"";return Zle(_,c,s,f*n.props.fontSize,i)}renderLayers(){const{startIndices:e,numInstances:t,getText:n,fontAtlasManager:{scale:i,atlas:o,mapping:s},styleVersion:c}=this.state,{data:f,_dataDiff:_,getPosition:b,getColor:T,getSize:S,getAngle:D,getPixelOffset:k,getBackgroundColor:G,getBorderColor:W,getBorderWidth:z,backgroundBorderRadius:j,backgroundPadding:K,background:fe,billboard:Z,fontSettings:ae,outlineWidth:Be,outlineColor:Ne,sizeScale:de,sizeUnits:_e,sizeMinPixels:pe,sizeMaxPixels:J,transitions:te,updateTriggers:be}=this.props,Qe=this.getSubLayerClass("characters",By),Ee=this.getSubLayerClass("background",Fg);return[fe&&new Ee({getFillColor:G,getLineColor:W,getLineWidth:z,borderRadius:j,padding:K,getPosition:b,getSize:S,getAngle:D,getPixelOffset:k,billboard:Z,sizeScale:de,sizeUnits:_e,sizeMinPixels:pe,sizeMaxPixels:J,transitions:te&&{getPosition:te.getPosition,getAngle:te.getAngle,getSize:te.getSize,getFillColor:te.getBackgroundColor,getLineColor:te.getBorderColor,getLineWidth:te.getBorderWidth,getPixelOffset:te.getPixelOffset}},this.getSubLayerProps({id:"background",updateTriggers:{getPosition:be.getPosition,getAngle:be.getAngle,getSize:be.getSize,getFillColor:be.getBackgroundColor,getLineColor:be.getBorderColor,getLineWidth:be.getBorderWidth,getPixelOffset:be.getPixelOffset,getBoundingRect:{getText:be.getText,getTextAnchor:be.getTextAnchor,getAlignmentBaseline:be.getAlignmentBaseline,styleVersion:c}}}),{data:f.attributes&&f.attributes.background?{length:f.length,attributes:f.attributes.background}:f,_dataDiff:_,autoHighlight:!1,getBoundingRect:this.getBoundingRect}),new Qe({sdf:ae.sdf,smoothing:Number.isFinite(ae.smoothing)?ae.smoothing:uA.smoothing,outlineWidth:Be/(ae.radius||uA.radius),outlineColor:Ne,iconAtlas:o,iconMapping:s,getPosition:b,getColor:T,getSize:S,getAngle:D,getPixelOffset:k,billboard:Z,sizeScale:de*i,sizeUnits:_e,sizeMinPixels:pe*i,sizeMaxPixels:J*i,transitions:te&&{getPosition:te.getPosition,getAngle:te.getAngle,getColor:te.getColor,getSize:te.getSize,getPixelOffset:te.getPixelOffset}},this.getSubLayerProps({id:"characters",updateTriggers:{all:be.getText,getPosition:be.getPosition,getAngle:be.getAngle,getColor:be.getColor,getSize:be.getSize,getPixelOffset:be.getPixelOffset,getIconOffsets:{getTextAnchor:be.getTextAnchor,getAlignmentBaseline:be.getAlignmentBaseline,styleVersion:c}}}),{data:f,_dataDiff:_,startIndices:e,numInstances:t,getIconOffsets:this.getIconOffsets,getIcon:n})]}static set fontAtlasCacheLimit(e){nue(e)}}dh.defaultProps=uue;dh.layerName="TextLayer";const Om={circle:{type:Rg,props:{filled:"filled",stroked:"stroked",lineWidthMaxPixels:"lineWidthMaxPixels",lineWidthMinPixels:"lineWidthMinPixels",lineWidthScale:"lineWidthScale",lineWidthUnits:"lineWidthUnits",pointRadiusMaxPixels:"radiusMaxPixels",pointRadiusMinPixels:"radiusMinPixels",pointRadiusScale:"radiusScale",pointRadiusUnits:"radiusUnits",pointAntialiasing:"antialiasing",pointBillboard:"billboard",getFillColor:"getFillColor",getLineColor:"getLineColor",getLineWidth:"getLineWidth",getPointRadius:"getRadius"}},icon:{type:OA,props:{iconAtlas:"iconAtlas",iconMapping:"iconMapping",iconSizeMaxPixels:"sizeMaxPixels",iconSizeMinPixels:"sizeMinPixels",iconSizeScale:"sizeScale",iconSizeUnits:"sizeUnits",iconAlphaCutoff:"alphaCutoff",iconBillboard:"billboard",getIcon:"getIcon",getIconAngle:"getAngle",getIconColor:"getColor",getIconPixelOffset:"getPixelOffset",getIconSize:"getSize"}},text:{type:dh,props:{textSizeMaxPixels:"sizeMaxPixels",textSizeMinPixels:"sizeMinPixels",textSizeScale:"sizeScale",textSizeUnits:"sizeUnits",textBackground:"background",textBackgroundPadding:"backgroundPadding",textFontFamily:"fontFamily",textFontWeight:"fontWeight",textLineHeight:"lineHeight",textMaxWidth:"maxWidth",textOutlineColor:"outlineColor",textOutlineWidth:"outlineWidth",textWordBreak:"wordBreak",textCharacterSet:"characterSet",textBillboard:"billboard",textFontSettings:"fontSettings",getText:"getText",getTextAngle:"getAngle",getTextColor:"getColor",getTextPixelOffset:"getPixelOffset",getTextSize:"getSize",getTextAnchor:"getTextAnchor",getTextAlignmentBaseline:"getAlignmentBaseline",getTextBackgroundColor:"getBackgroundColor",getTextBorderColor:"getBorderColor",getTextBorderWidth:"getBorderWidth"}}},Dm={type:Yu,props:{lineWidthUnits:"widthUnits",lineWidthScale:"widthScale",lineWidthMinPixels:"widthMinPixels",lineWidthMaxPixels:"widthMaxPixels",lineJointRounded:"jointRounded",lineCapRounded:"capRounded",lineMiterLimit:"miterLimit",lineBillboard:"billboard",getLineColor:"getColor",getLineWidth:"getWidth"}},yx={type:qu,props:{extruded:"extruded",filled:"filled",wireframe:"wireframe",elevationScale:"elevationScale",material:"material",_full3d:"_full3d",getElevation:"getElevation",getFillColor:"getFillColor",getLineColor:"getLineColor"}};function xp({type:r,props:e}){const t={};for(const n in e)t[n]=r.defaultProps[e[n]];return t}function Vb(r,e){const{transitions:t,updateTriggers:n}=r.props,i={updateTriggers:{},transitions:t&&{getPosition:t.geometry}};for(const o in e){const s=e[o];let c=r.props[o];o.startsWith("get")&&(c=r.getSubLayerAccessor(c),i.updateTriggers[s]=n[o],t&&(i.transitions[s]=t[o])),i[s]=c}return i}function fue(r){if(Array.isArray(r))return r;switch($r.assert(r.type,"GeoJSON does not have type"),r.type){case"Feature":return[r];case"FeatureCollection":return $r.assert(Array.isArray(r.features),"GeoJSON does not have features array"),r.features;default:return[{geometry:r}]}}function nP(r,e,t={}){const n={pointFeatures:[],lineFeatures:[],polygonFeatures:[],polygonOutlineFeatures:[]},{startRow:i=0,endRow:o=r.length}=t;for(let s=i;s<o;s++){const c=r[s],{geometry:f}=c;if(f)if(f.type==="GeometryCollection"){$r.assert(Array.isArray(f.geometries),"GeoJSON does not have geometries array");const{geometries:_}=f;for(let b=0;b<_.length;b++){const T=_[b];iP(T,n,e,c,s)}}else iP(f,n,e,c,s)}return n}function iP(r,e,t,n,i){const{type:o,coordinates:s}=r,{pointFeatures:c,lineFeatures:f,polygonFeatures:_,polygonOutlineFeatures:b}=e;if(!due(o,s)){$r.warn(`${o} coordinates are malformed`)();return}switch(o){case"Point":c.push(t({geometry:r},n,i));break;case"MultiPoint":s.forEach(T=>{c.push(t({geometry:{type:"Point",coordinates:T}},n,i))});break;case"LineString":f.push(t({geometry:r},n,i));break;case"MultiLineString":s.forEach(T=>{f.push(t({geometry:{type:"LineString",coordinates:T}},n,i))});break;case"Polygon":_.push(t({geometry:r},n,i)),s.forEach(T=>{b.push(t({geometry:{type:"LineString",coordinates:T}},n,i))});break;case"MultiPolygon":s.forEach(T=>{_.push(t({geometry:{type:"Polygon",coordinates:T}},n,i)),T.forEach(S=>{b.push(t({geometry:{type:"LineString",coordinates:S}},n,i))})});break}}const hue={Point:1,MultiPoint:2,LineString:2,MultiLineString:3,Polygon:3,MultiPolygon:4};function due(r,e){let t=hue[r];for($r.assert(t,`Unknown GeoJSON type ${r}`);e&&--t>0;)e=e[0];return e&&Number.isFinite(e[0])}function f8(){return{points:{},lines:{},polygons:{},polygonsOutline:{}}}function q0(r){return r.geometry.coordinates}function Aue(r,e){const t=f8(),{pointFeatures:n,lineFeatures:i,polygonFeatures:o,polygonOutlineFeatures:s}=r;return t.points.data=n,t.points._dataDiff=e.pointFeatures&&(()=>e.pointFeatures),t.points.getPosition=q0,t.lines.data=i,t.lines._dataDiff=e.lineFeatures&&(()=>e.lineFeatures),t.lines.getPath=q0,t.polygons.data=o,t.polygons._dataDiff=e.polygonFeatures&&(()=>e.polygonFeatures),t.polygons.getPolygon=q0,t.polygonsOutline.data=s,t.polygonsOutline._dataDiff=e.polygonOutlineFeatures&&(()=>e.polygonOutlineFeatures),t.polygonsOutline.getPath=q0,t}function pue(r,e){const t=f8(),{points:n,lines:i,polygons:o}=r,s=zle(r,e);return t.points.data={length:n.positions.value.length/n.positions.size,attributes:{...n.attributes,getPosition:n.positions,instancePickingColors:{size:4,value:s.points}},properties:n.properties,numericProps:n.numericProps,featureIds:n.featureIds},t.lines.data={length:i.pathIndices.value.length-1,startIndices:i.pathIndices.value,attributes:{...i.attributes,getPath:i.positions,instancePickingColors:{size:4,value:s.lines}},properties:i.properties,numericProps:i.numericProps,featureIds:i.featureIds},t.lines._pathType="open",t.polygons.data={length:o.polygonIndices.value.length-1,startIndices:o.polygonIndices.value,attributes:{...o.attributes,getPolygon:o.positions,pickingColors:{size:4,value:s.polygons}},properties:o.properties,numericProps:o.numericProps,featureIds:o.featureIds},t.polygons._normalize=!1,o.triangles&&(t.polygons.data.attributes.indices=o.triangles.value),t.polygonsOutline.data={length:o.primitivePolygonIndices.value.length-1,startIndices:o.primitivePolygonIndices.value,attributes:{...o.attributes,getPath:o.positions,instancePickingColors:{size:4,value:s.polygons}},properties:o.properties,numericProps:o.numericProps,featureIds:o.featureIds},t.polygonsOutline._pathType="open",t}const gue=["points","linestrings","polygons"],mue={...xp(Om.circle),...xp(Om.icon),...xp(Om.text),...xp(Dm),...xp(yx),stroked:!0,filled:!0,extruded:!1,wireframe:!1,_full3d:!1,iconAtlas:{type:"object",value:null},iconMapping:{type:"object",value:{}},getIcon:{type:"accessor",value:r=>r.properties.icon},getText:{type:"accessor",value:r=>r.properties.text},pointType:"circle",getRadius:{deprecatedFor:"getPointRadius"}};class jl extends ys{initializeState(){this.state={layerProps:{},features:{},featuresDiff:{}}}updateState({props:e,changeFlags:t}){if(!t.dataChanged)return;const{data:n}=this.props,i=n&&"points"in n&&"polygons"in n&&"lines"in n;this.setState({binary:i}),i?this._updateStateBinary({props:e,changeFlags:t}):this._updateStateJSON({props:e,changeFlags:t})}_updateStateBinary({props:e,changeFlags:t}){const n=pue(e.data,this.encodePickingColor);this.setState({layerProps:n})}_updateStateJSON({props:e,changeFlags:t}){const n=fue(e.data),i=this.getSubLayerRow.bind(this);let o={};const s={};if(Array.isArray(t.dataChanged)){const f=this.state.features;for(const _ in f)o[_]=f[_].slice(),s[_]=[];for(const _ of t.dataChanged){const b=nP(n,i,_);for(const T in f)s[T].push(s8({data:o[T],getIndex:S=>S.__source.index,dataRange:_,replace:b[T]}))}}else o=nP(n,i);const c=Aue(o,s);this.setState({features:o,featuresDiff:s,layerProps:c})}getPickingInfo(e){const t=super.getPickingInfo(e),{index:n,sourceLayer:i}=t;return t.featureType=gue.find(o=>i.id.startsWith(`${this.id}-${o}-`)),n>=0&&i.id.startsWith(`${this.id}-points-text`)&&this.state.binary&&(t.index=this.props.data.points.globalFeatureIds.value[n]),t}_updateAutoHighlight(e){const t=`${this.id}-points-`,n=e.featureType==="points";for(const i of this.getSubLayers())i.id.startsWith(t)===n&&i.updateAutoHighlight(e)}_renderPolygonLayer(){var s;const{extruded:e,wireframe:t}=this.props,{layerProps:n}=this.state,i="polygons-fill",o=this.shouldRenderSubLayer(i,(s=n.polygons)==null?void 0:s.data)&&this.getSubLayerClass(i,yx.type);if(o){const c=Vb(this,yx.props),f=e&&t;return f||delete c.getLineColor,c.updateTriggers.lineColors=f,new o(c,this.getSubLayerProps({id:i,updateTriggers:c.updateTriggers}),n.polygons)}return null}_renderLineLayers(){var f,_;const{extruded:e,stroked:t}=this.props,{layerProps:n}=this.state,i="polygons-stroke",o="linestrings",s=!e&&t&&this.shouldRenderSubLayer(i,(f=n.polygonsOutline)==null?void 0:f.data)&&this.getSubLayerClass(i,Dm.type),c=this.shouldRenderSubLayer(o,(_=n.lines)==null?void 0:_.data)&&this.getSubLayerClass(o,Dm.type);if(s||c){const b=Vb(this,Dm.props);return[s&&new s(b,this.getSubLayerProps({id:i,updateTriggers:b.updateTriggers}),n.polygonsOutline),c&&new c(b,this.getSubLayerProps({id:o,updateTriggers:b.updateTriggers}),n.lines)]}return null}_renderPointLayers(){var c;const{pointType:e}=this.props,{layerProps:t,binary:n}=this.state;let{highlightedObjectIndex:i}=this.props;!n&&Number.isFinite(i)&&(i=t.points.data.findIndex(f=>f.__source.index===i));const o=new Set(e.split("+")),s=[];for(const f of o){const _=`points-${f}`,b=Om[f],T=b&&this.shouldRenderSubLayer(_,(c=t.points)==null?void 0:c.data)&&this.getSubLayerClass(_,b.type);if(T){const S=Vb(this,b.props);let D=t.points;if(f==="text"&&n){const{instancePickingColors:k,...G}=D.data.attributes;D={...D,data:{...D.data,attributes:G}}}s.push(new T(S,this.getSubLayerProps({id:_,updateTriggers:S.updateTriggers,highlightedObjectIndex:i}),D))}}return s}renderLayers(){const{extruded:e}=this.props,t=this._renderPolygonLayer(),n=this._renderLineLayers(),i=this._renderPointLayers();return[!e&&t,n,i,e&&t]}getSubLayerAccessor(e){const{binary:t}=this.state;return!t||typeof e!="function"?super.getSubLayerAccessor(e):(n,i)=>{const{data:o,index:s}=i,c=kle(o,s);return e(c,i)}}}jl.layerName="GeoJsonLayer";jl.defaultProps=mue;const _ue=Object.freeze(Object.defineProperty({__proto__:null,ArcLayer:Mg,BitmapLayer:Ey,ColumnLayer:il,GeoJsonLayer:jl,GridCellLayer:hC,IconLayer:OA,LineLayer:Ty,PathLayer:Yu,PointCloudLayer:Pg,PolygonLayer:Zu,ScatterplotLayer:Rg,SolidPolygonLayer:qu,TextLayer:dh,_MultiIconLayer:By,_TextBackgroundLayer:Fg},Symbol.toStringTag,{value:"Module"}));function yue(r){return typeof r=="string"?r.charAt(0).toLowerCase()+r.slice(1):r}function vx(r){if(Array.isArray(r))return r.map(e=>vx(e));if(r&&typeof r=="object"){const e={};for(const[t,n]of Object.entries(r))e[yue(t)]=vx(n);return e}return r}var Hb={},jb={},sP;function dC(){return sP||(sP=1,function(r){const e=":A-Za-z_\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD",t=e+"\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040",n="["+e+"]["+t+"]*",i=new RegExp("^"+n+"$"),o=function(c,f){const _=[];let b=f.exec(c);for(;b;){const T=[];T.startIndex=f.lastIndex-b[0].length;const S=b.length;for(let D=0;D<S;D++)T.push(b[D]);_.push(T),b=f.exec(c)}return _},s=function(c){const f=i.exec(c);return!(f===null||typeof f>"u")};r.isExist=function(c){return typeof c<"u"},r.isEmptyObject=function(c){return Object.keys(c).length===0},r.merge=function(c,f,_){if(f){const b=Object.keys(f),T=b.length;for(let S=0;S<T;S++)_==="strict"?c[b[S]]=[f[b[S]]]:c[b[S]]=f[b[S]]}},r.getValue=function(c){return r.isExist(c)?c:""},r.isName=s,r.getAllMatches=o,r.nameRegexp=n}(jb)),jb}var oP;function h8(){if(oP)return Hb;oP=1;const r=dC(),e={allowBooleanAttributes:!1,unpairedTags:[]};Hb.validate=function(z,j){j=Object.assign({},e,j);const K=[];let fe=!1,Z=!1;z[0]==="\uFEFF"&&(z=z.substr(1));for(let ae=0;ae<z.length;ae++)if(z[ae]==="<"&&z[ae+1]==="?"){if(ae+=2,ae=n(z,ae),ae.err)return ae}else if(z[ae]==="<"){let Be=ae;if(ae++,z[ae]==="!"){ae=i(z,ae);continue}else{let Ne=!1;z[ae]==="/"&&(Ne=!0,ae++);let de="";for(;ae<z.length&&z[ae]!==">"&&z[ae]!==" "&&z[ae]!==" "&&z[ae]!==`
|
4193
|
+
`,cue={billboard:!0,sizeScale:1,sizeUnits:"pixels",sizeMinPixels:0,sizeMaxPixels:Number.MAX_SAFE_INTEGER,borderRadius:{type:"object",value:0},padding:{type:"array",value:[0,0,0,0]},getPosition:{type:"accessor",value:r=>r.position},getSize:{type:"accessor",value:1},getAngle:{type:"accessor",value:0},getPixelOffset:{type:"accessor",value:[0,0]},getBoundingRect:{type:"accessor",value:[0,0,0,0]},getFillColor:{type:"accessor",value:[0,0,0,255]},getLineColor:{type:"accessor",value:[0,0,0,255]},getLineWidth:{type:"accessor",value:1}};class Fg extends _s{getShaders(){return super.getShaders({vs:oue,fs:aue,modules:[Ss,aa,sue]})}initializeState(){this.getAttributeManager().addInstanced({instancePositions:{size:3,type:"float64",fp64:this.use64bitPositions(),transition:!0,accessor:"getPosition"},instanceSizes:{size:1,transition:!0,accessor:"getSize",defaultValue:1},instanceAngles:{size:1,transition:!0,accessor:"getAngle"},instanceRects:{size:4,accessor:"getBoundingRect"},instancePixelOffsets:{size:2,transition:!0,accessor:"getPixelOffset"},instanceFillColors:{size:4,transition:!0,type:"unorm8",accessor:"getFillColor",defaultValue:[0,0,0,255]},instanceLineColors:{size:4,transition:!0,type:"unorm8",accessor:"getLineColor",defaultValue:[0,0,0,255]},instanceLineWidths:{size:1,transition:!0,accessor:"getLineWidth",defaultValue:1}})}updateState(e){var n;super.updateState(e);const{changeFlags:t}=e;t.extensionsChanged&&((n=this.state.model)==null||n.destroy(),this.state.model=this._getModel(),this.getAttributeManager().invalidateAll())}draw({uniforms:e}){const{billboard:t,sizeScale:n,sizeUnits:i,sizeMinPixels:o,sizeMaxPixels:s,getLineWidth:c}=this.props;let{padding:f,borderRadius:_}=this.props;f.length<4&&(f=[f[0],f[1],f[0],f[1]]),Array.isArray(_)||(_=[_,_,_,_]);const b=this.state.model,T={billboard:t,stroked:!!c,borderRadius:_,padding:f,sizeUnits:bo[i],sizeScale:n,sizeMinPixels:o,sizeMaxPixels:s};b.shaderInputs.setProps({textBackground:T}),b.draw(this.context.renderPass)}_getModel(){const e=[0,0,1,0,0,1,1,1];return new Bi(this.context.device,{...this.getShaders(),id:this.props.id,bufferLayout:this.getAttributeManager().getBufferLayouts(),geometry:new js({topology:"triangle-strip",vertexCount:4,attributes:{positions:{size:2,value:new Float32Array(e)}}}),isInstanced:!0})}}Fg.defaultProps=cue;Fg.layerName="TextBackgroundLayer";const tP={start:1,middle:0,end:-1},rP={top:1,center:0,bottom:-1},Gb=[0,0,0,255],lue=1,uue={billboard:!0,sizeScale:1,sizeUnits:"pixels",sizeMinPixels:0,sizeMaxPixels:Number.MAX_SAFE_INTEGER,background:!1,getBackgroundColor:{type:"accessor",value:[255,255,255,255]},getBorderColor:{type:"accessor",value:Gb},getBorderWidth:{type:"accessor",value:0},backgroundBorderRadius:{type:"object",value:0},backgroundPadding:{type:"array",value:[0,0,0,0]},characterSet:{type:"object",value:uA.characterSet},fontFamily:uA.fontFamily,fontWeight:uA.fontWeight,lineHeight:lue,outlineWidth:{type:"number",value:0,min:0},outlineColor:{type:"color",value:Gb},fontSettings:{type:"object",value:{},compare:1},wordBreak:"break-word",maxWidth:{type:"number",value:-1},getText:{type:"accessor",value:r=>r.text},getPosition:{type:"accessor",value:r=>r.position},getColor:{type:"accessor",value:Gb},getSize:{type:"accessor",value:32},getAngle:{type:"accessor",value:0},getTextAnchor:{type:"accessor",value:"middle"},getAlignmentBaseline:{type:"accessor",value:"center"},getPixelOffset:{type:"accessor",value:[0,0]},backgroundColor:{deprecatedFor:["background","getBackgroundColor"]}};class dh extends ys{constructor(){super(...arguments),this.getBoundingRect=(e,t)=>{let{size:[n,i]}=this.transformParagraph(e,t);const{fontSize:o}=this.state.fontAtlasManager.props;n/=o,i/=o;const{getTextAnchor:s,getAlignmentBaseline:c}=this.props,f=tP[typeof s=="function"?s(e,t):s],_=rP[typeof c=="function"?c(e,t):c];return[(f-1)*n/2,(_-1)*i/2,n,i]},this.getIconOffsets=(e,t)=>{const{getTextAnchor:n,getAlignmentBaseline:i}=this.props,{x:o,y:s,rowWidth:c,size:[f,_]}=this.transformParagraph(e,t),b=tP[typeof n=="function"?n(e,t):n],T=rP[typeof i=="function"?i(e,t):i],S=o.length,D=new Array(S*2);let k=0;for(let G=0;G<S;G++){const W=(1-b)*(f-c[G])/2;D[k++]=(b-1)*f/2+W+o[G],D[k++]=(T-1)*_/2+s[G]}return D}}initializeState(){this.state={styleVersion:0,fontAtlasManager:new iue},this.props.maxWidth>0&&$r.once(1,"v8.9 breaking change: TextLayer maxWidth is now relative to text size")()}updateState(e){const{props:t,oldProps:n,changeFlags:i}=e;(i.dataChanged||i.updateTriggersChanged&&(i.updateTriggersChanged.all||i.updateTriggersChanged.getText))&&this._updateText(),(this._updateFontAtlas()||t.lineHeight!==n.lineHeight||t.wordBreak!==n.wordBreak||t.maxWidth!==n.maxWidth)&&this.setState({styleVersion:this.state.styleVersion+1})}getPickingInfo({info:e}){return e.object=e.index>=0?this.props.data[e.index]:null,e}_updateFontAtlas(){const{fontSettings:e,fontFamily:t,fontWeight:n}=this.props,{fontAtlasManager:i,characterSet:o}=this.state,s={...e,characterSet:o,fontFamily:t,fontWeight:n};if(!i.mapping)return i.setProps(s),!0;for(const c in s)if(s[c]!==i.props[c])return i.setProps(s),!0;return!1}_updateText(){var f;const{data:e,characterSet:t}=this.props,n=(f=e.attributes)==null?void 0:f.getText;let{getText:i}=this.props,o=e.startIndices,s;const c=t==="auto"&&new Set;if(n&&o){const{texts:_,characterCount:b}=Qle({...ArrayBuffer.isView(n)?{value:n}:n,length:e.length,startIndices:o,characterSet:c});s=b,i=(T,{index:S})=>_[S]}else{const{iterable:_,objectInfo:b}=nl(e);o=[0],s=0;for(const T of _){b.index++;const S=Array.from(i(T,b)||"");c&&S.forEach(c.add,c),s+=S.length,o.push(s)}}this.setState({getText:i,startIndices:o,numInstances:s,characterSet:c||t})}transformParagraph(e,t){const{fontAtlasManager:n}=this.state,i=n.mapping,o=this.state.getText,{wordBreak:s,lineHeight:c,maxWidth:f}=this.props,_=o(e,t)||"";return Zle(_,c,s,f*n.props.fontSize,i)}renderLayers(){const{startIndices:e,numInstances:t,getText:n,fontAtlasManager:{scale:i,atlas:o,mapping:s},styleVersion:c}=this.state,{data:f,_dataDiff:_,getPosition:b,getColor:T,getSize:S,getAngle:D,getPixelOffset:k,getBackgroundColor:G,getBorderColor:W,getBorderWidth:z,backgroundBorderRadius:j,backgroundPadding:K,background:fe,billboard:Z,fontSettings:ae,outlineWidth:Be,outlineColor:Ne,sizeScale:de,sizeUnits:_e,sizeMinPixels:pe,sizeMaxPixels:J,transitions:te,updateTriggers:be}=this.props,Qe=this.getSubLayerClass("characters",By),Ee=this.getSubLayerClass("background",Fg);return[fe&&new Ee({getFillColor:G,getLineColor:W,getLineWidth:z,borderRadius:j,padding:K,getPosition:b,getSize:S,getAngle:D,getPixelOffset:k,billboard:Z,sizeScale:de,sizeUnits:_e,sizeMinPixels:pe,sizeMaxPixels:J,transitions:te&&{getPosition:te.getPosition,getAngle:te.getAngle,getSize:te.getSize,getFillColor:te.getBackgroundColor,getLineColor:te.getBorderColor,getLineWidth:te.getBorderWidth,getPixelOffset:te.getPixelOffset}},this.getSubLayerProps({id:"background",updateTriggers:{getPosition:be.getPosition,getAngle:be.getAngle,getSize:be.getSize,getFillColor:be.getBackgroundColor,getLineColor:be.getBorderColor,getLineWidth:be.getBorderWidth,getPixelOffset:be.getPixelOffset,getBoundingRect:{getText:be.getText,getTextAnchor:be.getTextAnchor,getAlignmentBaseline:be.getAlignmentBaseline,styleVersion:c}}}),{data:f.attributes&&f.attributes.background?{length:f.length,attributes:f.attributes.background}:f,_dataDiff:_,autoHighlight:!1,getBoundingRect:this.getBoundingRect}),new Qe({sdf:ae.sdf,smoothing:Number.isFinite(ae.smoothing)?ae.smoothing:uA.smoothing,outlineWidth:Be/(ae.radius||uA.radius),outlineColor:Ne,iconAtlas:o,iconMapping:s,getPosition:b,getColor:T,getSize:S,getAngle:D,getPixelOffset:k,billboard:Z,sizeScale:de*i,sizeUnits:_e,sizeMinPixels:pe*i,sizeMaxPixels:J*i,transitions:te&&{getPosition:te.getPosition,getAngle:te.getAngle,getColor:te.getColor,getSize:te.getSize,getPixelOffset:te.getPixelOffset}},this.getSubLayerProps({id:"characters",updateTriggers:{all:be.getText,getPosition:be.getPosition,getAngle:be.getAngle,getColor:be.getColor,getSize:be.getSize,getPixelOffset:be.getPixelOffset,getIconOffsets:{getTextAnchor:be.getTextAnchor,getAlignmentBaseline:be.getAlignmentBaseline,styleVersion:c}}}),{data:f,_dataDiff:_,startIndices:e,numInstances:t,getIconOffsets:this.getIconOffsets,getIcon:n})]}static set fontAtlasCacheLimit(e){nue(e)}}dh.defaultProps=uue;dh.layerName="TextLayer";const Om={circle:{type:Rg,props:{filled:"filled",stroked:"stroked",lineWidthMaxPixels:"lineWidthMaxPixels",lineWidthMinPixels:"lineWidthMinPixels",lineWidthScale:"lineWidthScale",lineWidthUnits:"lineWidthUnits",pointRadiusMaxPixels:"radiusMaxPixels",pointRadiusMinPixels:"radiusMinPixels",pointRadiusScale:"radiusScale",pointRadiusUnits:"radiusUnits",pointAntialiasing:"antialiasing",pointBillboard:"billboard",getFillColor:"getFillColor",getLineColor:"getLineColor",getLineWidth:"getLineWidth",getPointRadius:"getRadius"}},icon:{type:OA,props:{iconAtlas:"iconAtlas",iconMapping:"iconMapping",iconSizeMaxPixels:"sizeMaxPixels",iconSizeMinPixels:"sizeMinPixels",iconSizeScale:"sizeScale",iconSizeUnits:"sizeUnits",iconAlphaCutoff:"alphaCutoff",iconBillboard:"billboard",getIcon:"getIcon",getIconAngle:"getAngle",getIconColor:"getColor",getIconPixelOffset:"getPixelOffset",getIconSize:"getSize"}},text:{type:dh,props:{textSizeMaxPixels:"sizeMaxPixels",textSizeMinPixels:"sizeMinPixels",textSizeScale:"sizeScale",textSizeUnits:"sizeUnits",textBackground:"background",textBackgroundPadding:"backgroundPadding",textFontFamily:"fontFamily",textFontWeight:"fontWeight",textLineHeight:"lineHeight",textMaxWidth:"maxWidth",textOutlineColor:"outlineColor",textOutlineWidth:"outlineWidth",textWordBreak:"wordBreak",textCharacterSet:"characterSet",textBillboard:"billboard",textFontSettings:"fontSettings",getText:"getText",getTextAngle:"getAngle",getTextColor:"getColor",getTextPixelOffset:"getPixelOffset",getTextSize:"getSize",getTextAnchor:"getTextAnchor",getTextAlignmentBaseline:"getAlignmentBaseline",getTextBackgroundColor:"getBackgroundColor",getTextBorderColor:"getBorderColor",getTextBorderWidth:"getBorderWidth"}}},Dm={type:Yu,props:{lineWidthUnits:"widthUnits",lineWidthScale:"widthScale",lineWidthMinPixels:"widthMinPixels",lineWidthMaxPixels:"widthMaxPixels",lineJointRounded:"jointRounded",lineCapRounded:"capRounded",lineMiterLimit:"miterLimit",lineBillboard:"billboard",getLineColor:"getColor",getLineWidth:"getWidth"}},yx={type:qu,props:{extruded:"extruded",filled:"filled",wireframe:"wireframe",elevationScale:"elevationScale",material:"material",_full3d:"_full3d",getElevation:"getElevation",getFillColor:"getFillColor",getLineColor:"getLineColor"}};function xp({type:r,props:e}){const t={};for(const n in e)t[n]=r.defaultProps[e[n]];return t}function Vb(r,e){const{transitions:t,updateTriggers:n}=r.props,i={updateTriggers:{},transitions:t&&{getPosition:t.geometry}};for(const o in e){const s=e[o];let c=r.props[o];o.startsWith("get")&&(c=r.getSubLayerAccessor(c),i.updateTriggers[s]=n[o],t&&(i.transitions[s]=t[o])),i[s]=c}return i}function fue(r){if(Array.isArray(r))return r;switch($r.assert(r.type,"GeoJSON does not have type"),r.type){case"Feature":return[r];case"FeatureCollection":return $r.assert(Array.isArray(r.features),"GeoJSON does not have features array"),r.features;default:return[{geometry:r}]}}function nP(r,e,t={}){const n={pointFeatures:[],lineFeatures:[],polygonFeatures:[],polygonOutlineFeatures:[]},{startRow:i=0,endRow:o=r.length}=t;for(let s=i;s<o;s++){const c=r[s],{geometry:f}=c;if(f)if(f.type==="GeometryCollection"){$r.assert(Array.isArray(f.geometries),"GeoJSON does not have geometries array");const{geometries:_}=f;for(let b=0;b<_.length;b++){const T=_[b];iP(T,n,e,c,s)}}else iP(f,n,e,c,s)}return n}function iP(r,e,t,n,i){const{type:o,coordinates:s}=r,{pointFeatures:c,lineFeatures:f,polygonFeatures:_,polygonOutlineFeatures:b}=e;if(!due(o,s)){$r.warn(`${o} coordinates are malformed`)();return}switch(o){case"Point":c.push(t({geometry:r},n,i));break;case"MultiPoint":s.forEach(T=>{c.push(t({geometry:{type:"Point",coordinates:T}},n,i))});break;case"LineString":f.push(t({geometry:r},n,i));break;case"MultiLineString":s.forEach(T=>{f.push(t({geometry:{type:"LineString",coordinates:T}},n,i))});break;case"Polygon":_.push(t({geometry:r},n,i)),s.forEach(T=>{b.push(t({geometry:{type:"LineString",coordinates:T}},n,i))});break;case"MultiPolygon":s.forEach(T=>{_.push(t({geometry:{type:"Polygon",coordinates:T}},n,i)),T.forEach(S=>{b.push(t({geometry:{type:"LineString",coordinates:S}},n,i))})});break}}const hue={Point:1,MultiPoint:2,LineString:2,MultiLineString:3,Polygon:3,MultiPolygon:4};function due(r,e){let t=hue[r];for($r.assert(t,`Unknown GeoJSON type ${r}`);e&&--t>0;)e=e[0];return e&&Number.isFinite(e[0])}function f8(){return{points:{},lines:{},polygons:{},polygonsOutline:{}}}function q0(r){return r.geometry.coordinates}function Aue(r,e){const t=f8(),{pointFeatures:n,lineFeatures:i,polygonFeatures:o,polygonOutlineFeatures:s}=r;return t.points.data=n,t.points._dataDiff=e.pointFeatures&&(()=>e.pointFeatures),t.points.getPosition=q0,t.lines.data=i,t.lines._dataDiff=e.lineFeatures&&(()=>e.lineFeatures),t.lines.getPath=q0,t.polygons.data=o,t.polygons._dataDiff=e.polygonFeatures&&(()=>e.polygonFeatures),t.polygons.getPolygon=q0,t.polygonsOutline.data=s,t.polygonsOutline._dataDiff=e.polygonOutlineFeatures&&(()=>e.polygonOutlineFeatures),t.polygonsOutline.getPath=q0,t}function pue(r,e){const t=f8(),{points:n,lines:i,polygons:o}=r,s=zle(r,e);return t.points.data={length:n.positions.value.length/n.positions.size,attributes:{...n.attributes,getPosition:n.positions,instancePickingColors:{size:4,value:s.points}},properties:n.properties,numericProps:n.numericProps,featureIds:n.featureIds},t.lines.data={length:i.pathIndices.value.length-1,startIndices:i.pathIndices.value,attributes:{...i.attributes,getPath:i.positions,instancePickingColors:{size:4,value:s.lines}},properties:i.properties,numericProps:i.numericProps,featureIds:i.featureIds},t.lines._pathType="open",t.polygons.data={length:o.polygonIndices.value.length-1,startIndices:o.polygonIndices.value,attributes:{...o.attributes,getPolygon:o.positions,pickingColors:{size:4,value:s.polygons}},properties:o.properties,numericProps:o.numericProps,featureIds:o.featureIds},t.polygons._normalize=!1,o.triangles&&(t.polygons.data.attributes.indices=o.triangles.value),t.polygonsOutline.data={length:o.primitivePolygonIndices.value.length-1,startIndices:o.primitivePolygonIndices.value,attributes:{...o.attributes,getPath:o.positions,instancePickingColors:{size:4,value:s.polygons}},properties:o.properties,numericProps:o.numericProps,featureIds:o.featureIds},t.polygonsOutline._pathType="open",t}const gue=["points","linestrings","polygons"],mue={...xp(Om.circle),...xp(Om.icon),...xp(Om.text),...xp(Dm),...xp(yx),stroked:!0,filled:!0,extruded:!1,wireframe:!1,_full3d:!1,iconAtlas:{type:"object",value:null},iconMapping:{type:"object",value:{}},getIcon:{type:"accessor",value:r=>r.properties.icon},getText:{type:"accessor",value:r=>r.properties.text},pointType:"circle",getRadius:{deprecatedFor:"getPointRadius"}};class jl extends ys{initializeState(){this.state={layerProps:{},features:{},featuresDiff:{}}}updateState({props:e,changeFlags:t}){if(!t.dataChanged)return;const{data:n}=this.props,i=n&&"points"in n&&"polygons"in n&&"lines"in n;this.setState({binary:i}),i?this._updateStateBinary({props:e,changeFlags:t}):this._updateStateJSON({props:e,changeFlags:t})}_updateStateBinary({props:e,changeFlags:t}){const n=pue(e.data,this.encodePickingColor);this.setState({layerProps:n})}_updateStateJSON({props:e,changeFlags:t}){const n=fue(e.data),i=this.getSubLayerRow.bind(this);let o={};const s={};if(Array.isArray(t.dataChanged)){const f=this.state.features;for(const _ in f)o[_]=f[_].slice(),s[_]=[];for(const _ of t.dataChanged){const b=nP(n,i,_);for(const T in f)s[T].push(s8({data:o[T],getIndex:S=>S.__source.index,dataRange:_,replace:b[T]}))}}else o=nP(n,i);const c=Aue(o,s);this.setState({features:o,featuresDiff:s,layerProps:c})}getPickingInfo(e){const t=super.getPickingInfo(e),{index:n,sourceLayer:i}=t;return t.featureType=gue.find(o=>i.id.startsWith(`${this.id}-${o}-`)),n>=0&&i.id.startsWith(`${this.id}-points-text`)&&this.state.binary&&(t.index=this.props.data.points.globalFeatureIds.value[n]),t}_updateAutoHighlight(e){const t=`${this.id}-points-`,n=e.featureType==="points";for(const i of this.getSubLayers())i.id.startsWith(t)===n&&i.updateAutoHighlight(e)}_renderPolygonLayer(){var s;const{extruded:e,wireframe:t}=this.props,{layerProps:n}=this.state,i="polygons-fill",o=this.shouldRenderSubLayer(i,(s=n.polygons)==null?void 0:s.data)&&this.getSubLayerClass(i,yx.type);if(o){const c=Vb(this,yx.props),f=e&&t;return f||delete c.getLineColor,c.updateTriggers.lineColors=f,new o(c,this.getSubLayerProps({id:i,updateTriggers:c.updateTriggers}),n.polygons)}return null}_renderLineLayers(){var f,_;const{extruded:e,stroked:t}=this.props,{layerProps:n}=this.state,i="polygons-stroke",o="linestrings",s=!e&&t&&this.shouldRenderSubLayer(i,(f=n.polygonsOutline)==null?void 0:f.data)&&this.getSubLayerClass(i,Dm.type),c=this.shouldRenderSubLayer(o,(_=n.lines)==null?void 0:_.data)&&this.getSubLayerClass(o,Dm.type);if(s||c){const b=Vb(this,Dm.props);return[s&&new s(b,this.getSubLayerProps({id:i,updateTriggers:b.updateTriggers}),n.polygonsOutline),c&&new c(b,this.getSubLayerProps({id:o,updateTriggers:b.updateTriggers}),n.lines)]}return null}_renderPointLayers(){var c;const{pointType:e}=this.props,{layerProps:t,binary:n}=this.state;let{highlightedObjectIndex:i}=this.props;!n&&Number.isFinite(i)&&(i=t.points.data.findIndex(f=>f.__source.index===i));const o=new Set(e.split("+")),s=[];for(const f of o){const _=`points-${f}`,b=Om[f],T=b&&this.shouldRenderSubLayer(_,(c=t.points)==null?void 0:c.data)&&this.getSubLayerClass(_,b.type);if(T){const S=Vb(this,b.props);let D=t.points;if(f==="text"&&n){const{instancePickingColors:k,...G}=D.data.attributes;D={...D,data:{...D.data,attributes:G}}}s.push(new T(S,this.getSubLayerProps({id:_,updateTriggers:S.updateTriggers,highlightedObjectIndex:i}),D))}}return s}renderLayers(){const{extruded:e}=this.props,t=this._renderPolygonLayer(),n=this._renderLineLayers(),i=this._renderPointLayers();return[!e&&t,n,i,e&&t]}getSubLayerAccessor(e){const{binary:t}=this.state;return!t||typeof e!="function"?super.getSubLayerAccessor(e):(n,i)=>{const{data:o,index:s}=i,c=kle(o,s);return e(c,i)}}}jl.layerName="GeoJsonLayer";jl.defaultProps=mue;const _ue=Object.freeze(Object.defineProperty({__proto__:null,ArcLayer:Mg,BitmapLayer:Ey,ColumnLayer:il,GeoJsonLayer:jl,GridCellLayer:hC,IconLayer:OA,LineLayer:Ty,PathLayer:Yu,PointCloudLayer:Pg,PolygonLayer:Zu,ScatterplotLayer:Rg,SolidPolygonLayer:qu,TextLayer:dh,_MultiIconLayer:By,_TextBackgroundLayer:Fg},Symbol.toStringTag,{value:"Module"}));function yue(r){return typeof r=="string"?r.charAt(0).toLowerCase()+r.slice(1):r}function vx(r){if(Array.isArray(r))return r.map(e=>vx(e));if(r&&typeof r=="object"){const e={};for(const[t,n]of Object.entries(r))e[yue(t)]=vx(n);return e}return r}var Hb={},jb={},sP;function dC(){return sP||(sP=1,function(r){const e=":A-Za-z_\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD",t=e+"\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040",n="["+e+"]["+t+"]*",i=new RegExp("^"+n+"$"),o=function(c,f){const _=[];let b=f.exec(c);for(;b;){const T=[];T.startIndex=f.lastIndex-b[0].length;const S=b.length;for(let D=0;D<S;D++)T.push(b[D]);_.push(T),b=f.exec(c)}return _},s=function(c){const f=i.exec(c);return!(f===null||typeof f>"u")};r.isExist=function(c){return typeof c<"u"},r.isEmptyObject=function(c){return Object.keys(c).length===0},r.merge=function(c,f,_){if(f){const b=Object.keys(f),T=b.length;for(let S=0;S<T;S++)_==="strict"?c[b[S]]=[f[b[S]]]:c[b[S]]=f[b[S]]}},r.getValue=function(c){return r.isExist(c)?c:""},r.isName=s,r.getAllMatches=o,r.nameRegexp=n}(jb)),jb}var oP;function h8(){if(oP)return Hb;oP=1;const r=dC(),e={allowBooleanAttributes:!1,unpairedTags:[]};Hb.validate=function(z,j){j=Object.assign({},e,j);const K=[];let fe=!1,Z=!1;z[0]==="\uFEFF"&&(z=z.substr(1));for(let ae=0;ae<z.length;ae++)if(z[ae]==="<"&&z[ae+1]==="?"){if(ae+=2,ae=n(z,ae),ae.err)return ae}else if(z[ae]==="<"){let Be=ae;if(ae++,z[ae]==="!"){ae=i(z,ae);continue}else{let Ne=!1;z[ae]==="/"&&(Ne=!0,ae++);let de="";for(;ae<z.length&&z[ae]!==">"&&z[ae]!==" "&&z[ae]!==" "&&z[ae]!==`
|
4194
4194
|
`&&z[ae]!=="\r";ae++)de+=z[ae];if(de=de.trim(),de[de.length-1]==="/"&&(de=de.substring(0,de.length-1),ae--),!k(de)){let J;return de.trim().length===0?J="Invalid space after '<'.":J="Tag '"+de+"' is an invalid name.",S("InvalidTag",J,G(z,ae))}const _e=c(z,ae);if(_e===!1)return S("InvalidAttr","Attributes for '"+de+"' have open quote.",G(z,ae));let pe=_e.value;if(ae=_e.index,pe[pe.length-1]==="/"){const J=ae-pe.length;pe=pe.substring(0,pe.length-1);const te=_(pe,j);if(te===!0)fe=!0;else return S(te.err.code,te.err.msg,G(z,J+te.err.line))}else if(Ne)if(_e.tagClosed){if(pe.trim().length>0)return S("InvalidTag","Closing tag '"+de+"' can't have attributes or invalid starting.",G(z,Be));if(K.length===0)return S("InvalidTag","Closing tag '"+de+"' has not been opened.",G(z,Be));{const J=K.pop();if(de!==J.tagName){let te=G(z,J.tagStartPos);return S("InvalidTag","Expected closing tag '"+J.tagName+"' (opened in line "+te.line+", col "+te.col+") instead of closing tag '"+de+"'.",G(z,Be))}K.length==0&&(Z=!0)}}else return S("InvalidTag","Closing tag '"+de+"' doesn't have proper closing.",G(z,ae));else{const J=_(pe,j);if(J!==!0)return S(J.err.code,J.err.msg,G(z,ae-pe.length+J.err.line));if(Z===!0)return S("InvalidXml","Multiple possible root nodes found.",G(z,ae));j.unpairedTags.indexOf(de)!==-1||K.push({tagName:de,tagStartPos:Be}),fe=!0}for(ae++;ae<z.length;ae++)if(z[ae]==="<")if(z[ae+1]==="!"){ae++,ae=i(z,ae);continue}else if(z[ae+1]==="?"){if(ae=n(z,++ae),ae.err)return ae}else break;else if(z[ae]==="&"){const J=T(z,ae);if(J==-1)return S("InvalidChar","char '&' is not expected.",G(z,ae));ae=J}else if(Z===!0&&!t(z[ae]))return S("InvalidXml","Extra text at the end",G(z,ae));z[ae]==="<"&&ae--}}else{if(t(z[ae]))continue;return S("InvalidChar","char '"+z[ae]+"' is not expected.",G(z,ae))}if(fe){if(K.length==1)return S("InvalidTag","Unclosed tag '"+K[0].tagName+"'.",G(z,K[0].tagStartPos));if(K.length>0)return S("InvalidXml","Invalid '"+JSON.stringify(K.map(ae=>ae.tagName),null,4).replace(/\r?\n/g,"")+"' found.",{line:1,col:1})}else return S("InvalidXml","Start tag expected.",1);return!0};function t(z){return z===" "||z===" "||z===`
|
4195
4195
|
`||z==="\r"}function n(z,j){const K=j;for(;j<z.length;j++)if(z[j]=="?"||z[j]==" "){const fe=z.substr(K,j-K);if(j>5&&fe==="xml")return S("InvalidXml","XML declaration allowed only at the start of the document.",G(z,j));if(z[j]=="?"&&z[j+1]==">"){j++;break}else continue}return j}function i(z,j){if(z.length>j+5&&z[j+1]==="-"&&z[j+2]==="-"){for(j+=3;j<z.length;j++)if(z[j]==="-"&&z[j+1]==="-"&&z[j+2]===">"){j+=2;break}}else if(z.length>j+8&&z[j+1]==="D"&&z[j+2]==="O"&&z[j+3]==="C"&&z[j+4]==="T"&&z[j+5]==="Y"&&z[j+6]==="P"&&z[j+7]==="E"){let K=1;for(j+=8;j<z.length;j++)if(z[j]==="<")K++;else if(z[j]===">"&&(K--,K===0))break}else if(z.length>j+9&&z[j+1]==="["&&z[j+2]==="C"&&z[j+3]==="D"&&z[j+4]==="A"&&z[j+5]==="T"&&z[j+6]==="A"&&z[j+7]==="["){for(j+=8;j<z.length;j++)if(z[j]==="]"&&z[j+1]==="]"&&z[j+2]===">"){j+=2;break}}return j}const o='"',s="'";function c(z,j){let K="",fe="",Z=!1;for(;j<z.length;j++){if(z[j]===o||z[j]===s)fe===""?fe=z[j]:fe!==z[j]||(fe="");else if(z[j]===">"&&fe===""){Z=!0;break}K+=z[j]}return fe!==""?!1:{value:K,index:j,tagClosed:Z}}const f=new RegExp(`(\\s*)([^\\s=]+)(\\s*=)?(\\s*(['"])(([\\s\\S])*?)\\5)?`,"g");function _(z,j){const K=r.getAllMatches(z,f),fe={};for(let Z=0;Z<K.length;Z++){if(K[Z][1].length===0)return S("InvalidAttr","Attribute '"+K[Z][2]+"' has no space in starting.",W(K[Z]));if(K[Z][3]!==void 0&&K[Z][4]===void 0)return S("InvalidAttr","Attribute '"+K[Z][2]+"' is without value.",W(K[Z]));if(K[Z][3]===void 0&&!j.allowBooleanAttributes)return S("InvalidAttr","boolean attribute '"+K[Z][2]+"' is not allowed.",W(K[Z]));const ae=K[Z][2];if(!D(ae))return S("InvalidAttr","Attribute '"+ae+"' is an invalid name.",W(K[Z]));if(!fe.hasOwnProperty(ae))fe[ae]=1;else return S("InvalidAttr","Attribute '"+ae+"' is repeated.",W(K[Z]))}return!0}function b(z,j){let K=/\d/;for(z[j]==="x"&&(j++,K=/[\da-fA-F]/);j<z.length;j++){if(z[j]===";")return j;if(!z[j].match(K))break}return-1}function T(z,j){if(j++,z[j]===";")return-1;if(z[j]==="#")return j++,b(z,j);let K=0;for(;j<z.length;j++,K++)if(!(z[j].match(/\w/)&&K<20)){if(z[j]===";")break;return-1}return j}function S(z,j,K){return{err:{code:z,msg:j,line:K.line||K,col:K.col}}}function D(z){return r.isName(z)}function k(z){return r.isName(z)}function G(z,j){const K=z.substring(0,j).split(/\r?\n/);return{line:K.length,col:K[K.length-1].length+1}}function W(z){return z.startIndex+z[1].length}return Hb}var Z0={},aP;function vue(){if(aP)return Z0;aP=1;const r={preserveOrder:!1,attributeNamePrefix:"@_",attributesGroupName:!1,textNodeName:"#text",ignoreAttributes:!0,removeNSPrefix:!1,allowBooleanAttributes:!1,parseTagValue:!0,parseAttributeValue:!1,trimValues:!0,cdataPropName:!1,numberParseOptions:{hex:!0,leadingZeros:!0,eNotation:!0},tagValueProcessor:function(t,n){return n},attributeValueProcessor:function(t,n){return n},stopNodes:[],alwaysCreateTextNode:!1,isArray:()=>!1,commentPropName:!1,unpairedTags:[],processEntities:!0,htmlEntities:!1,ignoreDeclaration:!1,ignorePiTags:!1,transformTagName:!1,transformAttributeName:!1,updateTag:function(t,n,i){return t}},e=function(t){return Object.assign({},r,t)};return Z0.buildOptions=e,Z0.defaultOptions=r,Z0}var $b,cP;function bue(){if(cP)return $b;cP=1;class r{constructor(t){this.tagname=t,this.child=[],this[":@"]={}}add(t,n){t==="__proto__"&&(t="#__proto__"),this.child.push({[t]:n})}addChild(t){t.tagname==="__proto__"&&(t.tagname="#__proto__"),t[":@"]&&Object.keys(t[":@"]).length>0?this.child.push({[t.tagname]:t.child,":@":t[":@"]}):this.child.push({[t.tagname]:t.child})}}return $b=r,$b}var Wb,lP;function xue(){if(lP)return Wb;lP=1;const r=dC();function e(_,b){const T={};if(_[b+3]==="O"&&_[b+4]==="C"&&_[b+5]==="T"&&_[b+6]==="Y"&&_[b+7]==="P"&&_[b+8]==="E"){b=b+9;let S=1,D=!1,k=!1,G="";for(;b<_.length;b++)if(_[b]==="<"&&!k){if(D&&i(_,b))b+=7,[entityName,val,b]=t(_,b+1),val.indexOf("&")===-1&&(T[f(entityName)]={regx:RegExp(`&${entityName};`,"g"),val});else if(D&&o(_,b))b+=8;else if(D&&s(_,b))b+=8;else if(D&&c(_,b))b+=9;else if(n)k=!0;else throw new Error("Invalid DOCTYPE");S++,G=""}else if(_[b]===">"){if(k?_[b-1]==="-"&&_[b-2]==="-"&&(k=!1,S--):S--,S===0)break}else _[b]==="["?D=!0:G+=_[b];if(S!==0)throw new Error("Unclosed DOCTYPE")}else throw new Error("Invalid Tag instead of DOCTYPE");return{entities:T,i:b}}function t(_,b){let T="";for(;b<_.length&&_[b]!=="'"&&_[b]!=='"';b++)T+=_[b];if(T=T.trim(),T.indexOf(" ")!==-1)throw new Error("External entites are not supported");const S=_[b++];let D="";for(;b<_.length&&_[b]!==S;b++)D+=_[b];return[T,D,b]}function n(_,b){return _[b+1]==="!"&&_[b+2]==="-"&&_[b+3]==="-"}function i(_,b){return _[b+1]==="!"&&_[b+2]==="E"&&_[b+3]==="N"&&_[b+4]==="T"&&_[b+5]==="I"&&_[b+6]==="T"&&_[b+7]==="Y"}function o(_,b){return _[b+1]==="!"&&_[b+2]==="E"&&_[b+3]==="L"&&_[b+4]==="E"&&_[b+5]==="M"&&_[b+6]==="E"&&_[b+7]==="N"&&_[b+8]==="T"}function s(_,b){return _[b+1]==="!"&&_[b+2]==="A"&&_[b+3]==="T"&&_[b+4]==="T"&&_[b+5]==="L"&&_[b+6]==="I"&&_[b+7]==="S"&&_[b+8]==="T"}function c(_,b){return _[b+1]==="!"&&_[b+2]==="N"&&_[b+3]==="O"&&_[b+4]==="T"&&_[b+5]==="A"&&_[b+6]==="T"&&_[b+7]==="I"&&_[b+8]==="O"&&_[b+9]==="N"}function f(_){if(r.isName(_))return _;throw new Error(`Invalid entity name ${_}`)}return Wb=e,Wb}var Jb,uP;function wue(){if(uP)return Jb;uP=1;const r=/^[-+]?0x[a-fA-F0-9]+$/,e=/^([\-\+])?(0*)(\.[0-9]+([eE]\-?[0-9]+)?|[0-9]+(\.[0-9]+([eE]\-?[0-9]+)?)?)$/;!Number.parseInt&&window.parseInt&&(Number.parseInt=window.parseInt),!Number.parseFloat&&window.parseFloat&&(Number.parseFloat=window.parseFloat);const t={hex:!0,leadingZeros:!0,decimalPoint:".",eNotation:!0};function n(o,s={}){if(s=Object.assign({},t,s),!o||typeof o!="string")return o;let c=o.trim();if(s.skipLike!==void 0&&s.skipLike.test(c))return o;if(s.hex&&r.test(c))return Number.parseInt(c,16);{const f=e.exec(c);if(f){const _=f[1],b=f[2];let T=i(f[3]);const S=f[4]||f[6];if(!s.leadingZeros&&b.length>0&&_&&c[2]!==".")return o;if(!s.leadingZeros&&b.length>0&&!_&&c[1]!==".")return o;{const D=Number(c),k=""+D;return k.search(/[eE]/)!==-1||S?s.eNotation?D:o:c.indexOf(".")!==-1?k==="0"&&T===""||k===T||_&&k==="-"+T?D:o:b?T===k||_+T===k?D:o:c===k||c===_+k?D:o}}else return o}}function i(o){return o&&o.indexOf(".")!==-1&&(o=o.replace(/0+$/,""),o==="."?o="0":o[0]==="."?o="0"+o:o[o.length-1]==="."&&(o=o.substr(0,o.length-1))),o}return Jb=n,Jb}var Xb,fP;function d8(){if(fP)return Xb;fP=1;function r(e){return typeof e=="function"?e:Array.isArray(e)?t=>{for(const n of e)if(typeof n=="string"&&t===n||n instanceof RegExp&&n.test(t))return!0}:()=>!1}return Xb=r,Xb}var Kb,hP;function Cue(){if(hP)return Kb;hP=1;const r=dC(),e=bue(),t=xue(),n=wue(),i=d8();class o{constructor(ae){this.options=ae,this.currentNode=null,this.tagsNodeStack=[],this.docTypeEntities={},this.lastEntities={apos:{regex:/&(apos|#39|#x27);/g,val:"'"},gt:{regex:/&(gt|#62|#x3E);/g,val:">"},lt:{regex:/&(lt|#60|#x3C);/g,val:"<"},quot:{regex:/&(quot|#34|#x22);/g,val:'"'}},this.ampEntity={regex:/&(amp|#38|#x26);/g,val:"&"},this.htmlEntities={space:{regex:/&(nbsp|#160);/g,val:" "},cent:{regex:/&(cent|#162);/g,val:"¢"},pound:{regex:/&(pound|#163);/g,val:"£"},yen:{regex:/&(yen|#165);/g,val:"¥"},euro:{regex:/&(euro|#8364);/g,val:"€"},copyright:{regex:/&(copy|#169);/g,val:"©"},reg:{regex:/&(reg|#174);/g,val:"®"},inr:{regex:/&(inr|#8377);/g,val:"₹"},num_dec:{regex:/&#([0-9]{1,7});/g,val:(Be,Ne)=>String.fromCharCode(Number.parseInt(Ne,10))},num_hex:{regex:/&#x([0-9a-fA-F]{1,6});/g,val:(Be,Ne)=>String.fromCharCode(Number.parseInt(Ne,16))}},this.addExternalEntities=s,this.parseXml=T,this.parseTextData=c,this.resolveNameSpace=f,this.buildAttributesMap=b,this.isItStopNode=G,this.replaceEntitiesValue=D,this.readStopNodeData=K,this.saveTextToParentTag=k,this.addChild=S,this.ignoreAttributesFn=i(this.options.ignoreAttributes)}}function s(Z){const ae=Object.keys(Z);for(let Be=0;Be<ae.length;Be++){const Ne=ae[Be];this.lastEntities[Ne]={regex:new RegExp("&"+Ne+";","g"),val:Z[Ne]}}}function c(Z,ae,Be,Ne,de,_e,pe){if(Z!==void 0&&(this.options.trimValues&&!Ne&&(Z=Z.trim()),Z.length>0)){pe||(Z=this.replaceEntitiesValue(Z));const J=this.options.tagValueProcessor(ae,Z,Be,de,_e);return J==null?Z:typeof J!=typeof Z||J!==Z?J:this.options.trimValues?fe(Z,this.options.parseTagValue,this.options.numberParseOptions):Z.trim()===Z?fe(Z,this.options.parseTagValue,this.options.numberParseOptions):Z}}function f(Z){if(this.options.removeNSPrefix){const ae=Z.split(":"),Be=Z.charAt(0)==="/"?"/":"";if(ae[0]==="xmlns")return"";ae.length===2&&(Z=Be+ae[1])}return Z}const _=new RegExp(`([^\\s=]+)\\s*(=\\s*(['"])([\\s\\S]*?)\\3)?`,"gm");function b(Z,ae,Be){if(this.options.ignoreAttributes!==!0&&typeof Z=="string"){const Ne=r.getAllMatches(Z,_),de=Ne.length,_e={};for(let pe=0;pe<de;pe++){const J=this.resolveNameSpace(Ne[pe][1]);if(this.ignoreAttributesFn(J,ae))continue;let te=Ne[pe][4],be=this.options.attributeNamePrefix+J;if(J.length)if(this.options.transformAttributeName&&(be=this.options.transformAttributeName(be)),be==="__proto__"&&(be="#__proto__"),te!==void 0){this.options.trimValues&&(te=te.trim()),te=this.replaceEntitiesValue(te);const Qe=this.options.attributeValueProcessor(J,te,ae);Qe==null?_e[be]=te:typeof Qe!=typeof te||Qe!==te?_e[be]=Qe:_e[be]=fe(te,this.options.parseAttributeValue,this.options.numberParseOptions)}else this.options.allowBooleanAttributes&&(_e[be]=!0)}if(!Object.keys(_e).length)return;if(this.options.attributesGroupName){const pe={};return pe[this.options.attributesGroupName]=_e,pe}return _e}}const T=function(Z){Z=Z.replace(/\r\n?/g,`
|
4196
4196
|
`);const ae=new e("!xml");let Be=ae,Ne="",de="";for(let _e=0;_e<Z.length;_e++)if(Z[_e]==="<")if(Z[_e+1]==="/"){const J=z(Z,">",_e,"Closing Tag is not closed.");let te=Z.substring(_e+2,J).trim();if(this.options.removeNSPrefix){const Ee=te.indexOf(":");Ee!==-1&&(te=te.substr(Ee+1))}this.options.transformTagName&&(te=this.options.transformTagName(te)),Be&&(Ne=this.saveTextToParentTag(Ne,Be,de));const be=de.substring(de.lastIndexOf(".")+1);if(te&&this.options.unpairedTags.indexOf(te)!==-1)throw new Error(`Unpaired tag can not be used as closing tag: </${te}>`);let Qe=0;be&&this.options.unpairedTags.indexOf(be)!==-1?(Qe=de.lastIndexOf(".",de.lastIndexOf(".")-1),this.tagsNodeStack.pop()):Qe=de.lastIndexOf("."),de=de.substring(0,Qe),Be=this.tagsNodeStack.pop(),Ne="",_e=J}else if(Z[_e+1]==="?"){let J=j(Z,_e,!1,"?>");if(!J)throw new Error("Pi Tag is not closed.");if(Ne=this.saveTextToParentTag(Ne,Be,de),!(this.options.ignoreDeclaration&&J.tagName==="?xml"||this.options.ignorePiTags)){const te=new e(J.tagName);te.add(this.options.textNodeName,""),J.tagName!==J.tagExp&&J.attrExpPresent&&(te[":@"]=this.buildAttributesMap(J.tagExp,de,J.tagName)),this.addChild(Be,te,de)}_e=J.closeIndex+1}else if(Z.substr(_e+1,3)==="!--"){const J=z(Z,"-->",_e+4,"Comment is not closed.");if(this.options.commentPropName){const te=Z.substring(_e+4,J-2);Ne=this.saveTextToParentTag(Ne,Be,de),Be.add(this.options.commentPropName,[{[this.options.textNodeName]:te}])}_e=J}else if(Z.substr(_e+1,2)==="!D"){const J=t(Z,_e);this.docTypeEntities=J.entities,_e=J.i}else if(Z.substr(_e+1,2)==="!["){const J=z(Z,"]]>",_e,"CDATA is not closed.")-2,te=Z.substring(_e+9,J);Ne=this.saveTextToParentTag(Ne,Be,de);let be=this.parseTextData(te,Be.tagname,de,!0,!1,!0,!0);be==null&&(be=""),this.options.cdataPropName?Be.add(this.options.cdataPropName,[{[this.options.textNodeName]:te}]):Be.add(this.options.textNodeName,be),_e=J+2}else{let J=j(Z,_e,this.options.removeNSPrefix),te=J.tagName;const be=J.rawTagName;let Qe=J.tagExp,Ee=J.attrExpPresent,De=J.closeIndex;this.options.transformTagName&&(te=this.options.transformTagName(te)),Be&&Ne&&Be.tagname!=="!xml"&&(Ne=this.saveTextToParentTag(Ne,Be,de,!1));const Ge=Be;if(Ge&&this.options.unpairedTags.indexOf(Ge.tagname)!==-1&&(Be=this.tagsNodeStack.pop(),de=de.substring(0,de.lastIndexOf("."))),te!==ae.tagname&&(de+=de?"."+te:te),this.isItStopNode(this.options.stopNodes,de,te)){let et="";if(Qe.length>0&&Qe.lastIndexOf("/")===Qe.length-1)te[te.length-1]==="/"?(te=te.substr(0,te.length-1),de=de.substr(0,de.length-1),Qe=te):Qe=Qe.substr(0,Qe.length-1),_e=J.closeIndex;else if(this.options.unpairedTags.indexOf(te)!==-1)_e=J.closeIndex;else{const rt=this.readStopNodeData(Z,be,De+1);if(!rt)throw new Error(`Unexpected end of ${be}`);_e=rt.i,et=rt.tagContent}const it=new e(te);te!==Qe&&Ee&&(it[":@"]=this.buildAttributesMap(Qe,de,te)),et&&(et=this.parseTextData(et,te,de,!0,Ee,!0,!0)),de=de.substr(0,de.lastIndexOf(".")),it.add(this.options.textNodeName,et),this.addChild(Be,it,de)}else{if(Qe.length>0&&Qe.lastIndexOf("/")===Qe.length-1){te[te.length-1]==="/"?(te=te.substr(0,te.length-1),de=de.substr(0,de.length-1),Qe=te):Qe=Qe.substr(0,Qe.length-1),this.options.transformTagName&&(te=this.options.transformTagName(te));const et=new e(te);te!==Qe&&Ee&&(et[":@"]=this.buildAttributesMap(Qe,de,te)),this.addChild(Be,et,de),de=de.substr(0,de.lastIndexOf("."))}else{const et=new e(te);this.tagsNodeStack.push(Be),te!==Qe&&Ee&&(et[":@"]=this.buildAttributesMap(Qe,de,te)),this.addChild(Be,et,de),Be=et}Ne="",_e=De}}else Ne+=Z[_e];return ae.child};function S(Z,ae,Be){const Ne=this.options.updateTag(ae.tagname,Be,ae[":@"]);Ne===!1||(typeof Ne=="string"&&(ae.tagname=Ne),Z.addChild(ae))}const D=function(Z){if(this.options.processEntities){for(let ae in this.docTypeEntities){const Be=this.docTypeEntities[ae];Z=Z.replace(Be.regx,Be.val)}for(let ae in this.lastEntities){const Be=this.lastEntities[ae];Z=Z.replace(Be.regex,Be.val)}if(this.options.htmlEntities)for(let ae in this.htmlEntities){const Be=this.htmlEntities[ae];Z=Z.replace(Be.regex,Be.val)}Z=Z.replace(this.ampEntity.regex,this.ampEntity.val)}return Z};function k(Z,ae,Be,Ne){return Z&&(Ne===void 0&&(Ne=Object.keys(ae.child).length===0),Z=this.parseTextData(Z,ae.tagname,Be,!1,ae[":@"]?Object.keys(ae[":@"]).length!==0:!1,Ne),Z!==void 0&&Z!==""&&ae.add(this.options.textNodeName,Z),Z=""),Z}function G(Z,ae,Be){const Ne="*."+Be;for(const de in Z){const _e=Z[de];if(Ne===_e||ae===_e)return!0}return!1}function W(Z,ae,Be=">"){let Ne,de="";for(let _e=ae;_e<Z.length;_e++){let pe=Z[_e];if(Ne)pe===Ne&&(Ne="");else if(pe==='"'||pe==="'")Ne=pe;else if(pe===Be[0])if(Be[1]){if(Z[_e+1]===Be[1])return{data:de,index:_e}}else return{data:de,index:_e};else pe===" "&&(pe=" ");de+=pe}}function z(Z,ae,Be,Ne){const de=Z.indexOf(ae,Be);if(de===-1)throw new Error(Ne);return de+ae.length-1}function j(Z,ae,Be,Ne=">"){const de=W(Z,ae+1,Ne);if(!de)return;let _e=de.data;const pe=de.index,J=_e.search(/\s/);let te=_e,be=!0;J!==-1&&(te=_e.substring(0,J),_e=_e.substring(J+1).trimStart());const Qe=te;if(Be){const Ee=te.indexOf(":");Ee!==-1&&(te=te.substr(Ee+1),be=te!==de.data.substr(Ee+1))}return{tagName:te,tagExp:_e,closeIndex:pe,attrExpPresent:be,rawTagName:Qe}}function K(Z,ae,Be){const Ne=Be;let de=1;for(;Be<Z.length;Be++)if(Z[Be]==="<")if(Z[Be+1]==="/"){const _e=z(Z,">",Be,`${ae} is not closed`);if(Z.substring(Be+2,_e).trim()===ae&&(de--,de===0))return{tagContent:Z.substring(Ne,Be),i:_e};Be=_e}else if(Z[Be+1]==="?")Be=z(Z,"?>",Be+1,"StopNode is not closed.");else if(Z.substr(Be+1,3)==="!--")Be=z(Z,"-->",Be+3,"StopNode is not closed.");else if(Z.substr(Be+1,2)==="![")Be=z(Z,"]]>",Be,"StopNode is not closed.")-2;else{const _e=j(Z,Be,">");_e&&((_e&&_e.tagName)===ae&&_e.tagExp[_e.tagExp.length-1]!=="/"&&de++,Be=_e.closeIndex)}}function fe(Z,ae,Be){if(ae&&typeof Z=="string"){const Ne=Z.trim();return Ne==="true"?!0:Ne==="false"?!1:n(Z,Be)}else return r.isExist(Z)?Z:""}return Kb=o,Kb}var Yb={},dP;function Eue(){if(dP)return Yb;dP=1;function r(o,s){return e(o,s)}function e(o,s,c){let f;const _={};for(let b=0;b<o.length;b++){const T=o[b],S=t(T);let D="";if(c===void 0?D=S:D=c+"."+S,S===s.textNodeName)f===void 0?f=T[S]:f+=""+T[S];else{if(S===void 0)continue;if(T[S]){let k=e(T[S],s,D);const G=i(k,s);T[":@"]?n(k,T[":@"],D,s):Object.keys(k).length===1&&k[s.textNodeName]!==void 0&&!s.alwaysCreateTextNode?k=k[s.textNodeName]:Object.keys(k).length===0&&(s.alwaysCreateTextNode?k[s.textNodeName]="":k=""),_[S]!==void 0&&_.hasOwnProperty(S)?(Array.isArray(_[S])||(_[S]=[_[S]]),_[S].push(k)):s.isArray(S,D,G)?_[S]=[k]:_[S]=k}}}return typeof f=="string"?f.length>0&&(_[s.textNodeName]=f):f!==void 0&&(_[s.textNodeName]=f),_}function t(o){const s=Object.keys(o);for(let c=0;c<s.length;c++){const f=s[c];if(f!==":@")return f}}function n(o,s,c,f){if(s){const _=Object.keys(s),b=_.length;for(let T=0;T<b;T++){const S=_[T];f.isArray(S,c+"."+S,!0,!0)?o[S]=[s[S]]:o[S]=s[S]}}}function i(o,s){const{textNodeName:c}=s,f=Object.keys(o).length;return!!(f===0||f===1&&(o[c]||typeof o[c]=="boolean"||o[c]===0))}return Yb.prettify=r,Yb}var qb,AP;function Tue(){if(AP)return qb;AP=1;const{buildOptions:r}=vue(),e=Cue(),{prettify:t}=Eue(),n=h8();class i{constructor(s){this.externalEntities={},this.options=r(s)}parse(s,c){if(typeof s!="string")if(s.toString)s=s.toString();else throw new Error("XML data is accepted in String or Bytes[] form.");if(c){c===!0&&(c={});const b=n.validate(s,c);if(b!==!0)throw Error(`${b.err.msg}:${b.err.line}:${b.err.col}`)}const f=new e(this.options);f.addExternalEntities(this.externalEntities);const _=f.parseXml(s);return this.options.preserveOrder||_===void 0?_:t(_,this.options)}addEntity(s,c){if(c.indexOf("&")!==-1)throw new Error("Entity value can't have '&'");if(s.indexOf("&")!==-1||s.indexOf(";")!==-1)throw new Error("An entity must be set without '&' and ';'. Eg. use '#xD' for '
'");if(c==="&")throw new Error("An entity with value '&' is not permitted");this.externalEntities[s]=c}}return qb=i,qb}var Zb,pP;function Bue(){if(pP)return Zb;pP=1;const r=`
|
@@ -4684,7 +4684,7 @@ float collision_isVisible(vec2 texCoords, vec3 pickingColor) {
|
|
4684
4684
|
}
|
4685
4685
|
`,"vs:DECKGL_FILTER_COLOR":`
|
4686
4686
|
color.a *= collision_fade;
|
4687
|
-
`},P1e=r=>{if(!r||!("dummyCollisionMap"in r))return{};const{enabled:e,collisionFBO:t,drawToCollisionMap:n,dummyCollisionMap:i}=r;return{enabled:e&&!n,sort:!!n,collision_texture:!n&&t?t.colorAttachments[0]:i}},R1e={name:"collision",dependencies:[ly],vs:I1e,inject:M1e,getUniforms:P1e,uniformTypes:{sort:"i32",enabled:"i32"}};class F1e extends uy{renderCollisionMap(e,t){const i=[0,0,0,0],o=[1,1,e.width-2*1,e.height-2*1];this.render({...t,clearColor:i,scissorRect:o,target:e,pass:"collision"})}getLayerParameters(e,t,n){return{...e.props.parameters,blend:!1,depthWriteEnabled:!0,depthCompare:"less-equal"}}getShaderModuleProps(){return{collision:{drawToCollisionMap:!0},picking:{isActive:1,isAttribute:!1},lighting:{enabled:!1}}}}const V1=2;class O1e{constructor(){this.id="collision-filter-effect",this.props=null,this.useInPicking=!0,this.order=1,this.channels={},this.collisionFBOs={}}setup(e){this.context=e;const{device:t}=e;this.dummyCollisionMap=t.createTexture({width:1,height:1}),this.collisionFilterPass=new F1e(t,{id:"default-collision-filter"})}preRender({effects:e,layers:t,layerFilter:n,viewports:i,onViewportActive:o,views:s,isPicking:c,preRenderStats:f={}}){var W;const{device:_}=this.context;if(c)return;const b=t.filter(({props:{visible:z,collisionEnabled:j}})=>z&&j);if(b.length===0){this.channels={};return}const T=e==null?void 0:e.filter(z=>z.useInPicking&&f[z.id]),S=(W=f["mask-effect"])==null?void 0:W.didRender,D=this._groupByCollisionGroup(_,b),k=i[0],G=!this.lastViewport||!this.lastViewport.equals(k)||S;for(const z in D){const j=this.collisionFBOs[z],K=D[z],[fe,Z]=_.canvasContext.getPixelSize();j.resize({width:fe/V1,height:Z/V1}),this._render(K,{effects:T,layerFilter:n,onViewportActive:o,views:s,viewport:k,viewportChanged:G})}}_render(e,{effects:t,layerFilter:n,onViewportActive:i,views:o,viewport:s,viewportChanged:c}){const{collisionGroup:f}=e,_=this.channels[f];if(!_)return;const b=c||e===_||!Ki(_.layers,e.layers,1)||e.layerBounds.some((T,S)=>!oa(T,_.layerBounds[S]))||e.allLayersLoaded!==_.allLayersLoaded||e.layers.some(T=>T.props.transitions);if(this.channels[f]=e,b){this.lastViewport=s;const T=this.collisionFBOs[f];this.collisionFilterPass.renderCollisionMap(T,{pass:"collision-filter",isPicking:!0,layers:e.layers,effects:t,layerFilter:n,viewports:s?[s]:[],onViewportActive:i,views:o,shaderModuleProps:{collision:{enabled:!0,dummyCollisionMap:this.dummyCollisionMap},project:{devicePixelRatio:T.device.canvasContext.getDevicePixelRatio()/V1}}})}}_groupByCollisionGroup(e,t){const n={};for(const i of t){const o=i.props.collisionGroup;let s=n[o];s||(s={collisionGroup:o,layers:[],layerBounds:[],allLayersLoaded:!0},n[o]=s),s.layers.push(i),s.layerBounds.push(i.getBounds()),i.isLoaded||(s.allLayersLoaded=!1)}for(const i of Object.keys(n))this.collisionFBOs[i]||this.createFBO(e,i),this.channels[i]||(this.channels[i]=n[i]);for(const i of Object.keys(this.collisionFBOs))n[i]||this.destroyFBO(i);return n}getShaderModuleProps(e){const{collisionGroup:t,collisionEnabled:n}=e.props,{collisionFBOs:i,dummyCollisionMap:o}=this,s=i[t];return{collision:{enabled:n&&!!s,collisionFBO:s,dummyCollisionMap:o}}}cleanup(){this.dummyCollisionMap&&(this.dummyCollisionMap.delete(),this.dummyCollisionMap=void 0),this.channels={};for(const e of Object.keys(this.collisionFBOs))this.destroyFBO(e);this.collisionFBOs={},this.lastViewport=void 0}createFBO(e,t){const{width:n,height:i}=e.gl.canvas,o=e.createTexture({format:"rgba8unorm",width:n,height:i,sampler:{minFilter:"nearest",magFilter:"nearest",addressModeU:"clamp-to-edge",addressModeV:"clamp-to-edge"}}),s=e.createTexture({format:"depth16unorm",width:n,height:i,mipmaps:!1});this.collisionFBOs[t]=e.createFramebuffer({id:`collision-${t}`,width:n,height:i,colorAttachments:[o],depthStencilAttachment:s})}destroyFBO(e){var n,i;const t=this.collisionFBOs[e];(n=t.colorAttachments[0])==null||n.destroy(),(i=t.depthStencilAttachment)==null||i.destroy(),t.destroy(),delete this.collisionFBOs[e]}}const D1e={getCollisionPriority:{type:"accessor",value:0},collisionEnabled:!0,collisionGroup:{type:"string",value:"default"},collisionTestProps:{}};class oE extends py{getShaders(){return{modules:[R1e]}}draw({shaderModuleProps:e}){var t;(t=e.collision)!=null&&t.drawToCollisionMap&&(this.props=this.clone(this.props.collisionTestProps).props)}initializeState(e,t){var i;if(this.getAttributeManager()===null)return;(i=this.context.deck)==null||i._addDefaultEffect(new O1e),this.getAttributeManager().add({collisionPriorities:{size:1,stepMode:"dynamic",accessor:"getCollisionPriority"}})}getNeedsPickingBuffer(){return this.props.collisionEnabled}}oE.defaultProps=D1e;oE.extensionName="CollisionFilterExtension";function Hx(r,e){const t=e==null?void 0:e.globalFeatureId;return t!==void 0?L1e(r,t):N1e(r,e==null?void 0:e.type)}function L1e(r,e){const t=dk(r);for(const n of t){let i=0,o=n.featureIds.value[0];for(let s=0;s<n.featureIds.value.length;s++){const c=n.featureIds.value[s];if(c!==o){if(e===n.globalFeatureIds.value[i])return k_(n,i,s);i=s,o=c}}if(e===n.globalFeatureIds.value[i])return k_(n,i,n.featureIds.value.length)}throw new Error(`featureId:${e} not found`)}function N1e(r,e){const t=dk(r);return U1e(t)}function k1e(r,e,t){switch(r.type){case"Point":return H1e(r,e,t);case"LineString":return V1e(r,e,t);case"Polygon":return Ak(r,e,t);default:const n=r;throw new Error(`Unsupported geometry type: ${n==null?void 0:n.type}`)}}function dk(r,e){const t=[];return r.points&&(r.points.type="Point",t.push(r.points)),r.lines&&(r.lines.type="LineString",t.push(r.lines)),r.polygons&&(r.polygons.type="Polygon",t.push(r.polygons)),t}function U1e(r){const e=[];for(const t of r){if(t.featureIds.value.length===0)continue;let n=0,i=t.featureIds.value[0];for(let o=0;o<t.featureIds.value.length;o++){const s=t.featureIds.value[o];s!==i&&(e.push(k_(t,n,o)),n=o,i=s)}e.push(k_(t,n,t.featureIds.value.length))}return e}function k_(r,e,t){const n=k1e(r,e,t),i=G1e(r,e),o=z1e(r,e);return{type:"Feature",geometry:n,properties:i,...o}}function z1e(r,e=0,t){return r.fields&&r.fields[r.featureIds.value[e]]}function G1e(r,e=0,t){const n=Object.assign({},r.properties[r.featureIds.value[e]]);for(const i in r.numericProps)n[i]=r.numericProps[i].value[e];return n}function Ak(r,e=-1/0,t=1/0){const{positions:n}=r,i=r.polygonIndices.value.filter(f=>f>=e&&f<=t),o=r.primitivePolygonIndices.value.filter(f=>f>=e&&f<=t);if(!(i.length>2)){const f=[];for(let _=0;_<o.length-1;_++){const b=o[_],T=o[_+1],S=U_(n,b,T);f.push(S)}return{type:"Polygon",coordinates:f}}const c=[];for(let f=0;f<i.length-1;f++){const _=i[f],b=i[f+1],T=Ak(r,_,b).coordinates;c.push(T)}return{type:"MultiPolygon",coordinates:c}}function V1e(r,e=-1/0,t=1/0){const{positions:n}=r,i=r.pathIndices.value.filter(c=>c>=e&&c<=t);if(!(i.length>2))return{type:"LineString",coordinates:U_(n,i[0],i[1])};const s=[];for(let c=0;c<i.length-1;c++){const f=U_(n,i[c],i[c+1]);s.push(f)}return{type:"MultiLineString",coordinates:s}}function H1e(r,e,t){const{positions:n}=r,i=U_(n,e,t);return i.length>1?{type:"MultiPoint",coordinates:i}:{type:"Point",coordinates:i[0]}}function U_(r,e,t){e=e||0,t=t||r.value.length/r.size;const n=[];for(let i=e;i<t;i++){const o=Array();for(let s=i*r.size;s<(i+1)*r.size;s++)o.push(Number(r.value[s]));n.push(o)}return n}var dm={};/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */var EF;function j1e(){return EF||(EF=1,dm.read=function(r,e,t,n,i){var o,s,c=i*8-n-1,f=(1<<c)-1,_=f>>1,b=-7,T=t?i-1:0,S=t?-1:1,D=r[e+T];for(T+=S,o=D&(1<<-b)-1,D>>=-b,b+=c;b>0;o=o*256+r[e+T],T+=S,b-=8);for(s=o&(1<<-b)-1,o>>=-b,b+=n;b>0;s=s*256+r[e+T],T+=S,b-=8);if(o===0)o=1-_;else{if(o===f)return s?NaN:(D?-1:1)*(1/0);s=s+Math.pow(2,n),o=o-_}return(D?-1:1)*s*Math.pow(2,o-n)},dm.write=function(r,e,t,n,i,o){var s,c,f,_=o*8-i-1,b=(1<<_)-1,T=b>>1,S=i===23?Math.pow(2,-24)-Math.pow(2,-77):0,D=n?0:o-1,k=n?1:-1,G=e<0||e===0&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(c=isNaN(e)?1:0,s=b):(s=Math.floor(Math.log(e)/Math.LN2),e*(f=Math.pow(2,-s))<1&&(s--,f*=2),s+T>=1?e+=S/f:e+=S*Math.pow(2,1-T),e*f>=2&&(s++,f/=2),s+T>=b?(c=0,s=b):s+T>=1?(c=(e*f-1)*Math.pow(2,i),s=s+T):(c=e*Math.pow(2,T-1)*Math.pow(2,i),s=0));i>=8;r[t+D]=c&255,D+=k,c/=256,i-=8);for(s=s<<i|c,_+=i;_>0;r[t+D]=s&255,D+=k,s/=256,_-=8);r[t+D-k]|=G*128}),dm}var H1,TF;function $1e(){if(TF)return H1;TF=1,H1=e;var r=j1e();function e(J){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(J)?J:new Uint8Array(J||0),this.pos=0,this.type=0,this.length=this.buf.length}e.Varint=0,e.Fixed64=1,e.Bytes=2,e.Fixed32=5;var t=65536*65536,n=1/t,i=12,o=typeof TextDecoder>"u"?null:new TextDecoder("utf-8");e.prototype={destroy:function(){this.buf=null},readFields:function(J,te,be){for(be=be||this.length;this.pos<be;){var Qe=this.readVarint(),Ee=Qe>>3,De=this.pos;this.type=Qe&7,J(Ee,te,this),this.pos===De&&this.skip(Qe)}return te},readMessage:function(J,te){return this.readFields(J,te,this.readVarint()+this.pos)},readFixed32:function(){var J=ae(this.buf,this.pos);return this.pos+=4,J},readSFixed32:function(){var J=Ne(this.buf,this.pos);return this.pos+=4,J},readFixed64:function(){var J=ae(this.buf,this.pos)+ae(this.buf,this.pos+4)*t;return this.pos+=8,J},readSFixed64:function(){var J=ae(this.buf,this.pos)+Ne(this.buf,this.pos+4)*t;return this.pos+=8,J},readFloat:function(){var J=r.read(this.buf,this.pos,!0,23,4);return this.pos+=4,J},readDouble:function(){var J=r.read(this.buf,this.pos,!0,52,8);return this.pos+=8,J},readVarint:function(J){var te=this.buf,be,Qe;return Qe=te[this.pos++],be=Qe&127,Qe<128||(Qe=te[this.pos++],be|=(Qe&127)<<7,Qe<128)||(Qe=te[this.pos++],be|=(Qe&127)<<14,Qe<128)||(Qe=te[this.pos++],be|=(Qe&127)<<21,Qe<128)?be:(Qe=te[this.pos],be|=(Qe&15)<<28,s(be,J,this))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var J=this.readVarint();return J%2===1?(J+1)/-2:J/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var J=this.readVarint()+this.pos,te=this.pos;return this.pos=J,J-te>=i&&o?_e(this.buf,te,J):de(this.buf,te,J)},readBytes:function(){var J=this.readVarint()+this.pos,te=this.buf.subarray(this.pos,J);return this.pos=J,te},readPackedVarint:function(J,te){if(this.type!==e.Bytes)return J.push(this.readVarint(te));var be=c(this);for(J=J||[];this.pos<be;)J.push(this.readVarint(te));return J},readPackedSVarint:function(J){if(this.type!==e.Bytes)return J.push(this.readSVarint());var te=c(this);for(J=J||[];this.pos<te;)J.push(this.readSVarint());return J},readPackedBoolean:function(J){if(this.type!==e.Bytes)return J.push(this.readBoolean());var te=c(this);for(J=J||[];this.pos<te;)J.push(this.readBoolean());return J},readPackedFloat:function(J){if(this.type!==e.Bytes)return J.push(this.readFloat());var te=c(this);for(J=J||[];this.pos<te;)J.push(this.readFloat());return J},readPackedDouble:function(J){if(this.type!==e.Bytes)return J.push(this.readDouble());var te=c(this);for(J=J||[];this.pos<te;)J.push(this.readDouble());return J},readPackedFixed32:function(J){if(this.type!==e.Bytes)return J.push(this.readFixed32());var te=c(this);for(J=J||[];this.pos<te;)J.push(this.readFixed32());return J},readPackedSFixed32:function(J){if(this.type!==e.Bytes)return J.push(this.readSFixed32());var te=c(this);for(J=J||[];this.pos<te;)J.push(this.readSFixed32());return J},readPackedFixed64:function(J){if(this.type!==e.Bytes)return J.push(this.readFixed64());var te=c(this);for(J=J||[];this.pos<te;)J.push(this.readFixed64());return J},readPackedSFixed64:function(J){if(this.type!==e.Bytes)return J.push(this.readSFixed64());var te=c(this);for(J=J||[];this.pos<te;)J.push(this.readSFixed64());return J},skip:function(J){var te=J&7;if(te===e.Varint)for(;this.buf[this.pos++]>127;);else if(te===e.Bytes)this.pos=this.readVarint()+this.pos;else if(te===e.Fixed32)this.pos+=4;else if(te===e.Fixed64)this.pos+=8;else throw new Error("Unimplemented type: "+te)},writeTag:function(J,te){this.writeVarint(J<<3|te)},realloc:function(J){for(var te=this.length||16;te<this.pos+J;)te*=2;if(te!==this.length){var be=new Uint8Array(te);be.set(this.buf),this.buf=be,this.length=te}},finish:function(){return this.length=this.pos,this.pos=0,this.buf.subarray(0,this.length)},writeFixed32:function(J){this.realloc(4),Be(this.buf,J,this.pos),this.pos+=4},writeSFixed32:function(J){this.realloc(4),Be(this.buf,J,this.pos),this.pos+=4},writeFixed64:function(J){this.realloc(8),Be(this.buf,J&-1,this.pos),Be(this.buf,Math.floor(J*n),this.pos+4),this.pos+=8},writeSFixed64:function(J){this.realloc(8),Be(this.buf,J&-1,this.pos),Be(this.buf,Math.floor(J*n),this.pos+4),this.pos+=8},writeVarint:function(J){if(J=+J||0,J>268435455||J<0){_(J,this);return}this.realloc(4),this.buf[this.pos++]=J&127|(J>127?128:0),!(J<=127)&&(this.buf[this.pos++]=(J>>>=7)&127|(J>127?128:0),!(J<=127)&&(this.buf[this.pos++]=(J>>>=7)&127|(J>127?128:0),!(J<=127)&&(this.buf[this.pos++]=J>>>7&127)))},writeSVarint:function(J){this.writeVarint(J<0?-J*2-1:J*2)},writeBoolean:function(J){this.writeVarint(!!J)},writeString:function(J){J=String(J),this.realloc(J.length*4),this.pos++;var te=this.pos;this.pos=pe(this.buf,J,this.pos);var be=this.pos-te;be>=128&&S(te,be,this),this.pos=te-1,this.writeVarint(be),this.pos+=be},writeFloat:function(J){this.realloc(4),r.write(this.buf,J,this.pos,!0,23,4),this.pos+=4},writeDouble:function(J){this.realloc(8),r.write(this.buf,J,this.pos,!0,52,8),this.pos+=8},writeBytes:function(J){var te=J.length;this.writeVarint(te),this.realloc(te);for(var be=0;be<te;be++)this.buf[this.pos++]=J[be]},writeRawMessage:function(J,te){this.pos++;var be=this.pos;J(te,this);var Qe=this.pos-be;Qe>=128&&S(be,Qe,this),this.pos=be-1,this.writeVarint(Qe),this.pos+=Qe},writeMessage:function(J,te,be){this.writeTag(J,e.Bytes),this.writeRawMessage(te,be)},writePackedVarint:function(J,te){te.length&&this.writeMessage(J,D,te)},writePackedSVarint:function(J,te){te.length&&this.writeMessage(J,k,te)},writePackedBoolean:function(J,te){te.length&&this.writeMessage(J,z,te)},writePackedFloat:function(J,te){te.length&&this.writeMessage(J,G,te)},writePackedDouble:function(J,te){te.length&&this.writeMessage(J,W,te)},writePackedFixed32:function(J,te){te.length&&this.writeMessage(J,j,te)},writePackedSFixed32:function(J,te){te.length&&this.writeMessage(J,K,te)},writePackedFixed64:function(J,te){te.length&&this.writeMessage(J,fe,te)},writePackedSFixed64:function(J,te){te.length&&this.writeMessage(J,Z,te)},writeBytesField:function(J,te){this.writeTag(J,e.Bytes),this.writeBytes(te)},writeFixed32Field:function(J,te){this.writeTag(J,e.Fixed32),this.writeFixed32(te)},writeSFixed32Field:function(J,te){this.writeTag(J,e.Fixed32),this.writeSFixed32(te)},writeFixed64Field:function(J,te){this.writeTag(J,e.Fixed64),this.writeFixed64(te)},writeSFixed64Field:function(J,te){this.writeTag(J,e.Fixed64),this.writeSFixed64(te)},writeVarintField:function(J,te){this.writeTag(J,e.Varint),this.writeVarint(te)},writeSVarintField:function(J,te){this.writeTag(J,e.Varint),this.writeSVarint(te)},writeStringField:function(J,te){this.writeTag(J,e.Bytes),this.writeString(te)},writeFloatField:function(J,te){this.writeTag(J,e.Fixed32),this.writeFloat(te)},writeDoubleField:function(J,te){this.writeTag(J,e.Fixed64),this.writeDouble(te)},writeBooleanField:function(J,te){this.writeVarintField(J,!!te)}};function s(J,te,be){var Qe=be.buf,Ee,De;if(De=Qe[be.pos++],Ee=(De&112)>>4,De<128||(De=Qe[be.pos++],Ee|=(De&127)<<3,De<128)||(De=Qe[be.pos++],Ee|=(De&127)<<10,De<128)||(De=Qe[be.pos++],Ee|=(De&127)<<17,De<128)||(De=Qe[be.pos++],Ee|=(De&127)<<24,De<128)||(De=Qe[be.pos++],Ee|=(De&1)<<31,De<128))return f(J,Ee,te);throw new Error("Expected varint not more than 10 bytes")}function c(J){return J.type===e.Bytes?J.readVarint()+J.pos:J.pos+1}function f(J,te,be){return be?te*4294967296+(J>>>0):(te>>>0)*4294967296+(J>>>0)}function _(J,te){var be,Qe;if(J>=0?(be=J%4294967296|0,Qe=J/4294967296|0):(be=~(-J%4294967296),Qe=~(-J/4294967296),be^4294967295?be=be+1|0:(be=0,Qe=Qe+1|0)),J>=18446744073709552e3||J<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");te.realloc(10),b(be,Qe,te),T(Qe,te)}function b(J,te,be){be.buf[be.pos++]=J&127|128,J>>>=7,be.buf[be.pos++]=J&127|128,J>>>=7,be.buf[be.pos++]=J&127|128,J>>>=7,be.buf[be.pos++]=J&127|128,J>>>=7,be.buf[be.pos]=J&127}function T(J,te){var be=(J&7)<<4;te.buf[te.pos++]|=be|((J>>>=3)?128:0),J&&(te.buf[te.pos++]=J&127|((J>>>=7)?128:0),J&&(te.buf[te.pos++]=J&127|((J>>>=7)?128:0),J&&(te.buf[te.pos++]=J&127|((J>>>=7)?128:0),J&&(te.buf[te.pos++]=J&127|((J>>>=7)?128:0),J&&(te.buf[te.pos++]=J&127)))))}function S(J,te,be){var Qe=te<=16383?1:te<=2097151?2:te<=268435455?3:Math.floor(Math.log(te)/(Math.LN2*7));be.realloc(Qe);for(var Ee=be.pos-1;Ee>=J;Ee--)be.buf[Ee+Qe]=be.buf[Ee]}function D(J,te){for(var be=0;be<J.length;be++)te.writeVarint(J[be])}function k(J,te){for(var be=0;be<J.length;be++)te.writeSVarint(J[be])}function G(J,te){for(var be=0;be<J.length;be++)te.writeFloat(J[be])}function W(J,te){for(var be=0;be<J.length;be++)te.writeDouble(J[be])}function z(J,te){for(var be=0;be<J.length;be++)te.writeBoolean(J[be])}function j(J,te){for(var be=0;be<J.length;be++)te.writeFixed32(J[be])}function K(J,te){for(var be=0;be<J.length;be++)te.writeSFixed32(J[be])}function fe(J,te){for(var be=0;be<J.length;be++)te.writeFixed64(J[be])}function Z(J,te){for(var be=0;be<J.length;be++)te.writeSFixed64(J[be])}function ae(J,te){return(J[te]|J[te+1]<<8|J[te+2]<<16)+J[te+3]*16777216}function Be(J,te,be){J[be]=te,J[be+1]=te>>>8,J[be+2]=te>>>16,J[be+3]=te>>>24}function Ne(J,te){return(J[te]|J[te+1]<<8|J[te+2]<<16)+(J[te+3]<<24)}function de(J,te,be){for(var Qe="",Ee=te;Ee<be;){var De=J[Ee],Ge=null,et=De>239?4:De>223?3:De>191?2:1;if(Ee+et>be)break;var it,rt,ct;et===1?De<128&&(Ge=De):et===2?(it=J[Ee+1],(it&192)===128&&(Ge=(De&31)<<6|it&63,Ge<=127&&(Ge=null))):et===3?(it=J[Ee+1],rt=J[Ee+2],(it&192)===128&&(rt&192)===128&&(Ge=(De&15)<<12|(it&63)<<6|rt&63,(Ge<=2047||Ge>=55296&&Ge<=57343)&&(Ge=null))):et===4&&(it=J[Ee+1],rt=J[Ee+2],ct=J[Ee+3],(it&192)===128&&(rt&192)===128&&(ct&192)===128&&(Ge=(De&15)<<18|(it&63)<<12|(rt&63)<<6|ct&63,(Ge<=65535||Ge>=1114112)&&(Ge=null))),Ge===null?(Ge=65533,et=1):Ge>65535&&(Ge-=65536,Qe+=String.fromCharCode(Ge>>>10&1023|55296),Ge=56320|Ge&1023),Qe+=String.fromCharCode(Ge),Ee+=et}return Qe}function _e(J,te,be){return o.decode(J.subarray(te,be))}function pe(J,te,be){for(var Qe=0,Ee,De;Qe<te.length;Qe++){if(Ee=te.charCodeAt(Qe),Ee>55295&&Ee<57344)if(De)if(Ee<56320){J[be++]=239,J[be++]=191,J[be++]=189,De=Ee;continue}else Ee=De-55296<<10|Ee-56320|65536,De=null;else{Ee>56319||Qe+1===te.length?(J[be++]=239,J[be++]=191,J[be++]=189):De=Ee;continue}else De&&(J[be++]=239,J[be++]=191,J[be++]=189,De=null);Ee<128?J[be++]=Ee:(Ee<2048?J[be++]=Ee>>6|192:(Ee<65536?J[be++]=Ee>>12|224:(J[be++]=Ee>>18|240,J[be++]=Ee>>12&63|128),J[be++]=Ee>>6&63|128),J[be++]=Ee&63|128)}return be}return H1}var W1e=$1e();const J1e=ih(W1e),X1e="4.2.4",pk={dataType:null,batchType:null,name:"Mapbox Vector Tile",id:"mvt",module:"mvt",version:X1e,extensions:["mvt","pbf"],mimeTypes:["application/vnd.mapbox-vector-tile","application/x-protobuf"],worker:!0,category:"geometry",options:{mvt:{shape:"geojson",coordinates:"local",layerProperty:"layerName",layers:void 0,tileIndex:null}}};({...pk});const K1e={Point:gk,MultiPoint:Y1e,LineString:mk,MultiLineString:q1e,Polygon:_k,MultiPolygon:Z1e};function gk([r,e],[t,n],i){const o=hc(t[0],n[0],r),s=hc(t[1],n[1],e);return i.unprojectFlat([o,s])}function aE(r,e,t){return r.map(n=>gk(n,e,t))}function Y1e(r,e,t){return aE(r,e,t)}function mk(r,e,t){return aE(r,e,t)}function q1e(r,e,t){return r.map(n=>mk(n,e,t))}function _k(r,e,t){return r.map(n=>aE(n,e,t))}function Z1e(r,e,t){return r.map(n=>_k(n,e,t))}function Q1e(r,e,t){const n=t.projectFlat([e.west,e.north]),i=t.projectFlat([e.east,e.south]),o=[n,i];return{...r,coordinates:K1e[r.type](r.coordinates,o,t)}}const e2e=["points","lines","polygons"];function t2e(r,e,t,n){for(const i of e2e){const o=r[i]&&r2e(r[i],e,t,n);if(o>=0)return o}return-1}function r2e(r,e,t,n){const i=r.featureIds.value;if(!i.length)return-1;let o=0,s=i[i.length-1]+1;if(n){const f=n2e(r,n);if(f)o=f[0],s=f[1]+1;else return-1}let c=-1;if(e in r.numericProps){const f=r.numericProps[e].value.findIndex((_,b)=>_===t&&i[b]>=o&&i[b]<s);return f>=0?r.globalFeatureIds.value[f]:-1}else e?c=BF(r.properties,f=>f[e]===t,o,s):r.fields&&(c=BF(r.fields,f=>f.id===t,o,s));return c>=0?i2e(r,c):-1}function n2e(r,e){if(!r.__layers){const t={},{properties:n}=r;for(let i=0;i<n.length;i++){const{layerName:o}=n[i];o&&(t[o]?t[o][1]=i:t[o]=[i,i])}r.__layers=t}return r.__layers[e]}function i2e(r,e){if(!r.__ids){const t=[],n=r.featureIds.value,i=r.globalFeatureIds.value;for(let o=0;o<n.length;o++)t[n[o]]=i[o];r.__ids=t}return r.__ids[e]}function BF(r,e,t,n){for(let i=t;i<n;i++)if(e(r[i],i))return i;return-1}const j1=512,s2e={...jl.defaultProps,data:I_,onDataLoad:{type:"function",value:null,optional:!0,compare:!1},uniqueIdProperty:"",highlightedFeatureId:null,loaders:[pk],binary:!0};class DA extends Wl{initializeState(){super.initializeState();const e=this.context.viewport.resolution!==void 0?!1:this.props.binary;this.setState({binary:e,data:null,tileJSON:null,hoveredFeatureId:null,hoveredFeatureLayerName:null})}get isLoaded(){var e;return!!((e=this.state)!=null&&e.data&&super.isLoaded)}updateState({props:e,oldProps:t,context:n,changeFlags:i}){var s;i.dataChanged&&this._updateTileData(),(s=this.state)!=null&&s.data&&(super.updateState({props:e,oldProps:t,context:n,changeFlags:i}),this._setWGS84PropertyForTiles());const{highlightColor:o}=e;o!==t.highlightColor&&Array.isArray(o)&&this.setState({highlightColor:o})}async _updateTileData(){let e=this.props.data,t=null;if(typeof e=="string"&&!ude(e)){const{onDataLoad:n,fetch:i}=this.props;this.setState({data:null,tileJSON:null});try{t=await i(e,{propName:"data",layer:this,loaders:[]})}catch(o){this.raiseError(o,"loading TileJSON"),e=null}n&&n(t,{propName:"data",layer:this})}else e&&typeof e=="object"&&"tilejson"in e&&(t=e);t&&(e=t.tiles),this.setState({data:e,tileJSON:t})}_getTilesetOptions(){const e=super._getTilesetOptions(),t=this.state.tileJSON,{minZoom:n,maxZoom:i}=this.props;return t&&(Number.isFinite(t.minzoom)&&t.minzoom>n&&(e.minZoom=t.minzoom),Number.isFinite(t.maxzoom)&&(!Number.isFinite(i)||t.maxzoom<i)&&(e.maxZoom=t.maxzoom)),e}renderLayers(){var e;return(e=this.state)!=null&&e.data?super.renderLayers():null}getTileData(e){const{data:t,binary:n}=this.state,{index:i,signal:o}=e,s=eh(t,e);if(!s)return Promise.reject("Invalid URL");let c=this.getLoadOptions();const{fetch:f}=this.props;return c={...c,mimeType:"application/x-protobuf",mvt:{...c==null?void 0:c.mvt,coordinates:this.context.viewport.resolution?"wgs84":"local",tileIndex:i},gis:n?{format:"binary"}:{}},f(s,{propName:"data",layer:this,loadOptions:c,signal:o})}renderSubLayers(e){const{x:t,y:n,z:i}=e.tile.index,o=Math.pow(2,i),s=j1/o,c=-s,f=j1*t/o,_=j1*(1-n/o),b=new dn().scale([s,c,1]);e.autoHighlight=!1,this.context.viewport.resolution||(e.modelMatrix=b,e.coordinateOrigin=[f,_,0],e.coordinateSystem=Jr.CARTESIAN,e.extensions=[...e.extensions||[],new Jy]);const T=super.renderSubLayers(e);return this.state.binary&&!(T instanceof jl)&&$r.warn("renderSubLayers() must return GeoJsonLayer when using binary:true")(),T}_updateAutoHighlight(e){const{uniqueIdProperty:t}=this.props,{hoveredFeatureId:n,hoveredFeatureLayerName:i}=this.state,o=e.object;let s=null,c=null;o&&(s=$1(o,t),c=SF(o));let{highlightColor:f}=this.props;typeof f=="function"&&(f=f(e)),(n!==s||i!==c)&&this.setState({highlightColor:f,hoveredFeatureId:s,hoveredFeatureLayerName:c})}_isWGS84(){return!!this.context.viewport.resolution}getPickingInfo(e){const t=super.getPickingInfo(e);if(this.state.binary&&t.index!==-1){const{data:n}=e.sourceLayer.props;t.object=Hx(n,{globalFeatureId:t.index})}return t.object&&!this._isWGS84()&&(t.object=MF(t.object,t.tile.bbox,this.context.viewport)),t}getSubLayerPropsByTile(e){return{highlightedObjectIndex:this.getHighlightedObjectIndex(e),highlightColor:this.state.highlightColor}}getHighlightedObjectIndex(e){const{hoveredFeatureId:t,hoveredFeatureLayerName:n,binary:i}=this.state,{uniqueIdProperty:o,highlightedFeatureId:s}=this.props,c=e.content,f=IF(s);if(!(IF(t)||f))return-1;const b=f?s:t;return Array.isArray(c)?c.findIndex(T=>{const S=$1(T,o)===b,D=f||SF(T)===n;return S&&D}):c&&i?t2e(c,o,b,f?"":n):-1}_pickObjects(e){const{deck:t,viewport:n}=this.context,i=n.width,o=n.height,s=n.x,c=n.y,f=[this.id];return t.pickObjects({x:s,y:c,width:i,height:o,layerIds:f,maxObjects:e})}getRenderedFeatures(e=null){const t=this._pickObjects(e),n=new Set,i=[];for(const o of t){const s=$1(o.object,this.props.uniqueIdProperty);s===void 0?i.push(o.object):n.has(s)||(n.add(s),i.push(o.object))}return i}_setWGS84PropertyForTiles(){const e="dataInWGS84";this.state.tileset.selectedTiles.forEach(n=>{n.hasOwnProperty(e)||Object.defineProperty(n,e,{get:()=>{if(!n.content)return null;if(this.state.binary&&Array.isArray(n.content)&&!n.content.length)return[];const{bbox:i}=n;if(n._contentWGS84===void 0&&fde(i)){const o=this.state.binary?Hx(n.content):n.content;n._contentWGS84=o.map(s=>MF(s,i,this.context.viewport))}return n._contentWGS84}})})}}DA.layerName="MVTLayer";DA.defaultProps=s2e;function $1(r,e){if(r.properties&&e)return r.properties[e];if("id"in r)return r.id}function SF(r){var e;return((e=r.properties)==null?void 0:e.layerName)||null}function IF(r){return r!=null&&r!==""}function MF(r,e,t){const n={...r,geometry:{type:r.geometry.type}};return Object.defineProperty(n.geometry,"coordinates",{get:()=>Q1e(r.geometry,e,t).coordinates}),n}const PF="0123456789bcdefghjkmnpqrstuvwxyz",yk={};for(let r=0;r<PF.length;r++)yk[PF.charAt(r)]=r;const o2e=-90,a2e=90,c2e=-180,l2e=180;function u2e(r){let e=!0,t=a2e,n=o2e,i=l2e,o=c2e,s,c=0;for(let f=0,_=r.length;f<_;f++){const b=r[f].toLowerCase();c=yk[b];for(let T=4;T>=0;T--){const S=c>>T&1;e?(s=(i+o)/2,S===1?o=s:i=s):(s=(t+n)/2,S===1?n=s:t=s),e=!e}}return[n,o,t,i]}function f2e(r){const[e,t,n,i]=u2e(r);return[i,n,i,e,t,e,t,n,i,n]}const h2e={getGeohash:{type:"accessor",value:r=>r.geohash}};class Xy extends Qu{indexToBounds(){const{data:e,getGeohash:t}=this.props;return{data:e,_normalize:!1,positionFormat:"XY",getPolygon:(n,i)=>f2e(t(n,i))}}}Xy.layerName="GeohashLayer";Xy.defaultProps=h2e;const d2e=Object.freeze(Object.defineProperty({__proto__:null,GeohashLayer:Xy,GreatCircleLayer:yC,H3ClusterLayer:Ny,H3HexagonLayer:sl,MVTLayer:DA,QuadkeyLayer:Py,S2Layer:My,TerrainLayer:sE,Tile3DLayer:iE,TileLayer:Wl,TripsLayer:Oy,_GeoCellLayer:Qu,_Tile2DHeader:E8,_Tileset2D:Fy,_WMSLayer:_C,_getURLFromTemplate:eh},Symbol.toStringTag,{value:"Module"}));var Sp={},W1,RF;function A2e(){if(RF)return W1;RF=1;var r=Math.PI/180,e=180/Math.PI;function t(j){var K=i(j[0]+1,j[2]),fe=i(j[0],j[2]),Z=o(j[1]+1,j[2]),ae=o(j[1],j[2]);return[fe,Z,K,ae]}function n(j){var K=t(j),fe={type:"Polygon",coordinates:[[[K[0],K[1]],[K[0],K[3]],[K[2],K[3]],[K[2],K[1]],[K[0],K[1]]]]};return fe}function i(j,K){return j/Math.pow(2,K)*360-180}function o(j,K){var fe=Math.PI-2*Math.PI*j/Math.pow(2,K);return e*Math.atan(.5*(Math.exp(fe)-Math.exp(-fe)))}function s(j,K,fe){var Z=z(j,K,fe);return Z[0]=Math.floor(Z[0]),Z[1]=Math.floor(Z[1]),Z}function c(j){return[[j[0]*2,j[1]*2,j[2]+1],[j[0]*2+1,j[1]*2,j[2]+1],[j[0]*2+1,j[1]*2+1,j[2]+1],[j[0]*2,j[1]*2+1,j[2]+1]]}function f(j){return j[0]%2===0&&j[1]%2===0?[j[0]/2,j[1]/2,j[2]-1]:j[0]%2===0&&!j[1]%2===0?[j[0]/2,(j[1]-1)/2,j[2]-1]:!j[0]%2===0&&j[1]%2===0?[(j[0]-1)/2,j[1]/2,j[2]-1]:[(j[0]-1)/2,(j[1]-1)/2,j[2]-1]}function _(j){return c(f(j))}function b(j,K){for(var fe=_(j),Z=0;Z<fe.length;Z++)if(!T(K,fe[Z]))return!1;return!0}function T(j,K){for(var fe=0;fe<j.length;fe++)if(S(j[fe],K))return!0;return!1}function S(j,K){return j[0]===K[0]&&j[1]===K[1]&&j[2]===K[2]}function D(j){for(var K="",fe=j[2];fe>0;fe--){var Z=0,ae=1<<fe-1;(j[0]&ae)!==0&&Z++,(j[1]&ae)!==0&&(Z+=2),K+=Z.toString()}return K}function k(j){for(var K=0,fe=0,Z=j.length,ae=Z;ae>0;ae--){var Be=1<<ae-1;switch(j[Z-ae]){case"0":break;case"1":K|=Be;break;case"2":fe|=Be;break;case"3":K|=Be,fe|=Be;break}}return[K,fe,Z]}function G(j){var K=s(j[0],j[1],32),fe=s(j[2],j[3],32),Z=[K[0],K[1],fe[0],fe[1]],ae=W(Z);if(ae===0)return[0,0,0];var Be=Z[0]>>>32-ae,Ne=Z[1]>>>32-ae;return[Be,Ne,ae]}function W(j){for(var K=28,fe=0;fe<K;fe++){var Z=1<<32-(fe+1);if((j[0]&Z)!=(j[2]&Z)||(j[1]&Z)!=(j[3]&Z))return fe}return K}function z(j,K,fe){var Z=Math.sin(K*r),ae=Math.pow(2,fe),Be=ae*(j/360+.5),Ne=ae*(.5-.25*Math.log((1+Z)/(1-Z))/Math.PI);return[Be,Ne,fe]}return W1={tileToGeoJSON:n,tileToBBOX:t,getChildren:c,getParent:f,getSiblings:_,hasTile:T,hasSiblings:b,tilesEqual:S,tileToQuadkey:D,quadkeyToTile:k,pointToTile:s,bboxToTile:G,pointToTileFraction:z},W1}var FF;function p2e(){if(FF)return Sp;FF=1;var r=A2e();Sp.geojson=function(b,T){return{type:"FeatureCollection",features:t(b,T).map(e)}};function e(b){return{type:"Feature",geometry:r.tileToGeoJSON(b),properties:{}}}Sp.tiles=t,Sp.indexes=function(b,T){return t(b,T).map(r.tileToQuadkey)};function t(b,T){var S,D,k=b.coordinates,G=T.max_zoom,W={},z=[];if(b.type==="Point")return[r.pointToTile(k[0],k[1],G)];if(b.type==="MultiPoint")for(S=0;S<k.length;S++)D=r.pointToTile(k[S][0],k[S][1],G),W[f(D[0],D[1],D[2])]=!0;else if(b.type==="LineString")s(W,k,G);else if(b.type==="MultiLineString")for(S=0;S<k.length;S++)s(W,k[S],G);else if(b.type==="Polygon")i(W,z,k,G);else if(b.type==="MultiPolygon")for(S=0;S<k.length;S++)i(W,z,k[S],G);else throw new Error("Geometry type not implemented");if(T.min_zoom!==G){var j=z.length;for(c(W,z),S=0;S<j;S++){var K=z[S];W[f(K[0],K[1],K[2])]=!0}return n(W,z,T)}return c(W,z),z}function n(b,T,S){for(var D=[],k=S.max_zoom;k>S.min_zoom;k--){for(var G={},W=[],z=0;z<T.length;z++){var j=T[z];if(j[0]%2===0&&j[1]%2===0){var K=f(j[0]+1,j[1],k),fe=f(j[0],j[1]+1,k),Z=f(j[0]+1,j[1]+1,k);if(b[K]&&b[fe]&&b[Z]){b[f(j[0],j[1],j[2])]=!1,b[K]=!1,b[fe]=!1,b[Z]=!1;var ae=[j[0]/2,j[1]/2,k-1];k-1===S.min_zoom?D.push(ae):(G[f(j[0]/2,j[1]/2,k-1)]=!0,W.push(ae))}}}for(z=0;z<T.length;z++)j=T[z],b[f(j[0],j[1],j[2])]&&D.push(j);b=G,T=W}return D}function i(b,T,S,D){for(var k=[],G=0;G<S.length;G++){var W=[];s(b,S[G],D,W);for(var z=0,j=W.length,K=j-1;z<j;K=z++){var fe=(z+1)%j,Z=W[z][1];(Z>W[K][1]||Z>W[fe][1])&&(Z<W[K][1]||Z<W[fe][1])&&Z!==W[fe][1]&&k.push(W[z])}}for(k.sort(o),G=0;G<k.length;G+=2){Z=k[G][1];for(var ae=k[G][0]+1;ae<k[G+1][0];ae++){var Be=f(ae,Z,D);b[Be]||T.push([ae,Z,D])}}}function o(b,T){return b[1]-T[1]||b[0]-T[0]}function s(b,T,S,D){for(var k,G,W=0;W<T.length-1;W++){var z=r.pointToTileFraction(T[W][0],T[W][1],S),j=r.pointToTileFraction(T[W+1][0],T[W+1][1],S),K=z[0],fe=z[1],Z=j[0],ae=j[1],Be=Z-K,Ne=ae-fe;if(!(Ne===0&&Be===0)){var de=Be>0?1:-1,_e=Ne>0?1:-1,pe=Math.floor(K),J=Math.floor(fe),te=Be===0?1/0:Math.abs(((Be>0?1:0)+pe-K)/Be),be=Ne===0?1/0:Math.abs(((Ne>0?1:0)+J-fe)/Ne),Qe=Math.abs(de/Be),Ee=Math.abs(_e/Ne);for((pe!==k||J!==G)&&(b[f(pe,J,S)]=!0,D&&J!==G&&D.push([pe,J]),k=pe,G=J);te<1||be<1;)te<be?(te+=Qe,pe+=de):(be+=Ee,J+=_e),b[f(pe,J,S)]=!0,D&&J!==G&&D.push([pe,J]),k=pe,G=J}}D&&J===D[0][1]&&D.pop()}function c(b,T){for(var S=Object.keys(b),D=0;D<S.length;D++)T.push(_(+S[D]))}function f(b,T,S){var D=2*(1<<S);return(D*T+b)*32+S}function _(b){var T=b%32,S=2*(1<<T),D=(b-T)/32,k=D%S,G=(D-k)/S%S;return[k,G,T]}return Sp}p2e();const vk=[0x5555555555555555n,0x3333333333333333n,0x0f0f0f0f0f0f0f0fn,0x00ff00ff00ff00ffn,0x0000ffff0000ffffn,0x00000000ffffffffn],bk=[0n,1n,2n,4n,8n,16n];function g2e(r){return BigInt(`0x${r}`)}function jx(r){return r.toString(16)}function m2e(r){if(r.z<0||r.z>26)throw new Error("Wrong zoom");const e=BigInt(r.z);let t=BigInt(r.x)<<32n-e,n=BigInt(r.y)<<32n-e;for(let o=0;o<5;o++){const s=bk[5-o],c=vk[4-o];t=(t|t<<s)&c,n=(n|n<<s)&c}return 0x4000000000000000n|1n<<59n|e<<52n|(t|n<<1n)>>12n|0xfffffffffffffn>>e*2n}function xk(r){const e=r>>59n&7n,t=r>>57n&3n,n=r>>52n&0x1fn,i=(r&0xfffffffffffffn)<<12n;if(e!==1n&&t!==0n)throw new Error("Wrong mode");let o=i,s=i>>1n;for(let c=0;c<6;c++){const f=bk[c],_=vk[c];o=(o|o>>f)&_,s=(s|s>>f)&_}return o=o>>32n-n,s=s>>32n-n,{z:Number(n),x:Number(o),y:Number(s)}}function cE(r){return r>>52n&0x1fn}function wk(r){const e=cE(r)-1n;return r&~(0x1fn<<52n)|e<<52n|0xfffffffffffffn>>e*2n}function rh(r,e){$r.assert(r,e)}function _2e(r,e){const{properties:t,numericProps:n}=r;return new Proxy(t[e]||{},{get(i,o){return o in n?n[o].value[e]:i[o]},has(i,o){return o in n||o in i},ownKeys(i){return[...Object.keys(n),...Reflect.ownKeys(i)]},getOwnPropertyDescriptor(i,o){return{enumerable:!0,configurable:!0}}})}function Ky(r,e){return`https://unpkg.com/@deck.gl/carto@${e}/dist/${r}-worker.js`}const eg=new Uint16Array,J1={positions:{value:new Float32Array,size:2},properties:[],numericProps:{},featureIds:{value:eg,size:1},globalFeatureIds:{value:eg,size:1}};function Ck(){return{shape:"binary-feature-collection",points:{type:"Point",...J1},lines:{type:"LineString",pathIndices:{value:eg,size:1},...J1},polygons:{type:"Polygon",polygonIndices:{value:eg,size:1},primitivePolygonIndices:{value:eg,size:1},...J1}}}function lE(r,e,t,n,i,o=2){return{type:"Point",positions:{value:new Float32Array(r),size:o},featureIds:{value:new Uint16Array(e),size:1},globalFeatureIds:{value:new Uint32Array(t),size:1},numericProps:n,properties:i}}function Ek(r,e){const t={};return e&&Object.keys(e).forEach(n=>{t[n]={value:new Float32Array(r),size:1}}),t}function Tk(r,e,t,n){Object.keys(r).forEach(i=>{e[i].value[n]=r[i].value[t]})}function y2e(r,e,t,n=[],i,o){var f;if(!r.content)return!1;r.userData||(r.userData={});const s=(f=e.get(t))==null?void 0:f[0];if(s){if(n.every(_=>_.name in s))return!1;e.clear()}const c={};for(const _ of r.content){let b=_.id;const T=typeof i=="function"?i(_,{}):i;for(let W=0;W<t-1;W++)b=wk(b);const S=Number(b);if(!(S in c)){c[S]={id:b,count:0,position:[0,0]};for(const{name:W,aggregation:z}of n)z==="any"?c[S][W]=_.properties[W]:c[S][W]=0}const D=c[S].count;c[S].count+=typeof o=="function"?o(_,{}):o;const k=c[S].count,G=k-D;c[S].position[0]=(D*c[S].position[0]+G*T[0])/k,c[S].position[1]=(D*c[S].position[1]+G*T[1])/k;for(const{name:W,aggregation:z}of n){const j=c[S][W],K=_.properties[W];z==="average"?c[S][W]=(D*j+G*K)/k:z==="count"||z==="sum"?c[S][W]=j+K:z==="max"?c[S][W]=Math.max(j,K):z==="min"&&(c[S][W]=Math.min(j,K))}}return e.set(t,Object.values(c)),!0}function v2e(r){const e=[],t=["any","average","count","min","max","sum"];for(const n of Object.keys(r.content[0].properties)){let i=n.split("_").pop().toLowerCase();t.includes(i)||($r.warn(`No valid aggregation present in ${n} property`)(),i="any"),e.push({name:n,aggregation:i})}return e}function b2e(r,e){const t={};for(const{name:n,aggregation:i}of e)if(t[n]={min:1/0,max:-1/0},i!=="any")for(const o of r)t[n].min=Math.min(t[n].min,o[n]),t[n].max=Math.max(t[n].max,o[n]);return t}function x2e(r){const e=new Float32Array(r.length*2),t=new Uint16Array(r.length);for(let n=0;n<r.length;n++)e.set(r[n].position,2*n),t[n]=n;return{...Ck(),points:lE(e,t,t,{},r)}}const LA=512;class uE extends Fy{getTileIndices(e){return super.getTileIndices(e).map(m2e).map(t=>({q:t,i:jx(t)}))}getTileId({q:e,i:t}){return t||jx(e)}getTileMetadata({q:e}){return super.getTileMetadata(xk(e))}getTileZoom({q:e}){return Number(cE(e))}getParentIndex({q:e}){return{q:wk(e)}}}const OF=512;function Bk(r){const{x:e,y:t,z:n}=xk(r),i=OF/(1<<n);return[e*i,OF-t*i,i]}function w2e(r,e){const[t,n,i]=Bk(r);return[[t,n],[t+e*i,n-e*i]]}function Sk(r,e=1){const[t,n]=w2e(r,e),[i,o]=Qc(t),[s,c]=Qc(n);return[s,o,s,c,i,c,i,o,s,o]}const Am=!!(typeof process!="object"||String(process)!=="[object process]"||process.browser),DF=typeof process<"u"&&process.version&&/v([0-9]*)/.exec(process.version);DF&&parseFloat(DF[1]);function C2e(r){var e;globalThis.loaders||(globalThis.loaders={}),(e=globalThis.loaders).modules||(e.modules={}),Object.assign(globalThis.loaders.modules,r)}function E2e(...r){return T2e(r)}function T2e(r){const e=r.map(o=>o instanceof ArrayBuffer?new Uint8Array(o):o),t=e.reduce((o,s)=>o+s.byteLength,0),n=new Uint8Array(t);let i=0;for(const o of e)n.set(o,i),i+=o.byteLength;return n.buffer}async function B2e(r){const e=[];for await(const t of r)e.push(t);return E2e(...e)}function S2e(r){return r&&typeof r=="object"&&r.isBuffer}function pm(r){if(S2e(r))return r;if(r instanceof ArrayBuffer)return r;if(ArrayBuffer.isView(r))return r.byteOffset===0&&r.byteLength===r.buffer.byteLength?r.buffer:r.buffer.slice(r.byteOffset,r.byteOffset+r.byteLength);if(typeof r=="string"){const e=r;return new TextEncoder().encode(e).buffer}if(r&&typeof r=="object"&&r._toArrayBuffer)return r._toArrayBuffer();throw new Error("toArrayBuffer")}function gm(r){return e=>new Promise((t,n)=>r(e,(i,o)=>i?n(i):t(o)))}class I2e{constructor(e){this.compressBatches=this.compressBatches.bind(this),this.decompressBatches=this.decompressBatches.bind(this)}async preload(e={}){C2e(e)}async compress(e){return await this.preload(),this.compressSync(e)}async decompress(e,t){return await this.preload(),this.decompressSync(e,t)}compressSync(e){throw new Error(`${this.name}: sync compression not supported`)}decompressSync(e,t){throw new Error(`${this.name}: sync decompression not supported`)}async*compressBatches(e){const t=await this.concatenate(e);yield this.compress(t)}async*decompressBatches(e){const t=await this.concatenate(e);yield this.decompress(t)}concatenate(e){return B2e(e)}improveError(e){return e.message.includes(this.name)||(e.message=`${this.name} ${e.message}`),e}}class M2e extends I2e{constructor(t={}){super(t);V(this,"name","deflate");V(this,"extensions",[]);V(this,"contentEncodings",["deflate"]);V(this,"isSupported",!0);V(this,"options");V(this,"_chunks",[]);this.options=t}async compress(t){var n,i;if(!Am&&((n=this.options.deflate)!=null&&n.useZlib)){const o=(i=this.options.deflate)!=null&&i.gzip?await gm(yu.gzip)(t):await gm(yu.deflate)(t);return pm(o)}return this.compressSync(t)}async decompress(t){var n,i;if(!Am&&((n=this.options.deflate)!=null&&n.useZlib)){const o=(i=this.options.deflate)!=null&&i.gzip?await gm(yu.gunzip)(t):await gm(yu.inflate)(t);return pm(o)}return this.decompressSync(t)}compressSync(t){var s,c,f,_;if(!Am&&((s=this.options.deflate)!=null&&s.useZlib)){const b=(c=this.options.deflate)!=null&&c.gzip?yu.gzipSync(t):yu.deflateSync(t);return pm(b)}const n=((f=this.options)==null?void 0:f.deflate)||{},i=new Uint8Array(t);return((_=this.options)!=null&&_.raw?Sd.deflateRaw:Sd.deflate)(i,n).buffer}decompressSync(t){var s,c,f,_;if(!Am&&((s=this.options.deflate)!=null&&s.useZlib)){const b=(c=this.options.deflate)!=null&&c.gzip?yu.gunzipSync(t):yu.inflateSync(t);return pm(b)}const n=((f=this.options)==null?void 0:f.deflate)||{},i=new Uint8Array(t);return((_=this.options)!=null&&_.raw?Sd.inflateRaw:Sd.inflate)(i,n).buffer}async*compressBatches(t){var o;const n=((o=this.options)==null?void 0:o.deflate)||{},i=new Sd.Deflate(n);yield*this.transformBatches(i,t)}async*decompressBatches(t){var o;const n=((o=this.options)==null?void 0:o.deflate)||{},i=new Sd.Inflate(n);yield*this.transformBatches(i,t)}async*transformBatches(t,n){t.onData=this._onData.bind(this),t.onEnd=this._onEnd.bind(this);for await(const s of n){const c=new Uint8Array(s);if(!t.push(c,!1))throw new Error(`${this._getError()}write`);yield*this._getChunks()}const i=new Uint8Array(0);t.push(i,!0),yield*this._getChunks()}_onData(t){this._chunks.push(t)}_onEnd(t){if(t!==0)throw new Error(this._getError(t)+this._chunks.length)}_getChunks(){const t=this._chunks;return this._chunks=[],t}_getError(t=0){const n={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"};return`${this.name}: ${n[t]}`}}class P2e extends M2e{constructor(t){super({...t,deflate:{...t==null?void 0:t.gzip,gzip:!0}});V(this,"name","gzip");V(this,"extensions",["gz","gzip"]);V(this,"contentEncodings",["gzip","x-gzip"]);V(this,"isSupported",!0)}}function Yy(r,e,t,n){const i=e.type===2?e.readVarint()+e.pos:e.pos+1,o=e.buf.buffer.slice(e.pos,i);if((n==null?void 0:n.compression)==="gzip"){const c=new P2e().decompressSync(o);t.value=new r(c)}else t.value=new r(o);return e.pos=i,t.value}class fE{static read(e,t){return e.readFields(fE._readField,{key:"",value:null},t)}static _readField(e,t,n){e===1?t.key=n.readString():e===2&&(t.value=n.readString())}}class gh{static read(e,t){return e.readFields(gh._readField,{},t)}static _readField(e,t,n){if(e===1){const{key:i,value:o}=fE.read(n,n.readVarint()+n.pos);t[i]=o}}}class zg{static read(e,t){const{value:n,size:i}=e.readFields(zg._readField,{value:[],size:0},t);return{value:n,size:i}}static _readField(e,t,n){e===1?Yy(Float64Array,n,t):e===2&&(t.size=n.readVarint(!0))}}class Ta{static read(e,t){const{value:n,size:i}=e.readFields(Ta._readField,{value:[],size:0},t);return{value:new Uint32Array(n),size:i}}static _readField(e,t,n){e===1?n.readPackedVarint(t.value):e===2&&(t.size=n.readVarint(!0))}}class Gg{static read(e,t){return e.readFields(Gg._readField,{id:0},t)}static _readField(e,t,n){e===1&&(t.id=n.readVarint())}}class hE{static read(e,t){return e.readFields(hE._readField,{value:[]},t)}static _readField(e,t,n){e===1&&Yy(Float64Array,n,t)}}class mh{static read(e,t){return e.readFields(mh._readField,{key:"",value:null},t)}static _readField(e,t,n){e===1?t.key=n.readString():e===2&&(t.value=hE.read(n,n.readVarint()+n.pos))}}class dE{static read(e,t){return e.readFields(dE._readField,{positions:null,globalFeatureIds:null,featureIds:null,properties:[],numericProps:{},fields:[]},t)}static _readField(e,t,n){if(e===1)t.positions=zg.read(n,n.readVarint()+n.pos);else if(e===2)t.globalFeatureIds=Ta.read(n,n.readVarint()+n.pos);else if(e===3)t.featureIds=Ta.read(n,n.readVarint()+n.pos);else if(e===4)t.properties.push(gh.read(n,n.readVarint()+n.pos));else if(e===5){const i=mh.read(n,n.readVarint()+n.pos);t.numericProps[i.key]=i.value}else e===6&&t.fields.push(Gg.read(n,n.readVarint()+n.pos))}}class AE{static read(e,t){return e.readFields(AE._readField,{positions:null,pathIndices:null,globalFeatureIds:null,featureIds:null,properties:[],numericProps:{},fields:[]},t)}static _readField(e,t,n){if(e===1)t.positions=zg.read(n,n.readVarint()+n.pos);else if(e===2)t.pathIndices=Ta.read(n,n.readVarint()+n.pos);else if(e===3)t.globalFeatureIds=Ta.read(n,n.readVarint()+n.pos);else if(e===4)t.featureIds=Ta.read(n,n.readVarint()+n.pos);else if(e===5)t.properties.push(gh.read(n,n.readVarint()+n.pos));else if(e===6){const i=mh.read(n,n.readVarint()+n.pos);t.numericProps[i.key]=i.value}else e===7&&t.fields.push(Gg.read(n,n.readVarint()+n.pos))}}class pE{static read(e,t){return e.readFields(pE._readField,{positions:null,polygonIndices:null,globalFeatureIds:null,featureIds:null,primitivePolygonIndices:null,triangles:null,properties:[],numericProps:{},fields:[]},t)}static _readField(e,t,n){if(e===1)t.positions=zg.read(n,n.readVarint()+n.pos);else if(e===2)t.polygonIndices=Ta.read(n,n.readVarint()+n.pos);else if(e===3)t.globalFeatureIds=Ta.read(n,n.readVarint()+n.pos);else if(e===4)t.featureIds=Ta.read(n,n.readVarint()+n.pos);else if(e===5)t.primitivePolygonIndices=Ta.read(n,n.readVarint()+n.pos);else if(e===6)t.triangles=Ta.read(n,n.readVarint()+n.pos);else if(e===7)t.properties.push(gh.read(n,n.readVarint()+n.pos));else if(e===8){const i=mh.read(n,n.readVarint()+n.pos);t.numericProps[i.key]=i.value}else e===9&&t.fields.push(Gg.read(n,n.readVarint()+n.pos))}}let R2e=class Ik{static read(e,t){return e.readFields(Ik._readField,{points:null,lines:null,polygons:null},t)}static _readField(e,t,n){e===1?t.points=dE.read(n,n.readVarint()+n.pos):e===2?t.lines=AE.read(n,n.readVarint()+n.pos):e===3&&(t.polygons=pE.read(n,n.readVarint()+n.pos))}};class gE{static read(e,t){return e.readFields(gE._readField,{value:[]},t)}static _readField(e,t,n){e===1&&Yy(BigUint64Array,n,t)}}class mE{static read(e,t){return e.readFields(mE._readField,{indices:null,properties:[],numericProps:{}},t)}static _readField(e,t,n){if(e===1)t.indices=gE.read(n,n.readVarint()+n.pos);else if(e===2)t.properties.push(gh.read(n,n.readVarint()+n.pos));else if(e===3){const i=mh.read(n,n.readVarint()+n.pos);t.numericProps[i.key]=i.value}}}let F2e=class Mk{static read(e,t){return e.readFields(Mk._readField,{scheme:0,cells:null},t)}static _readField(e,t,n){e===1?t.scheme=n.readVarint():e===2&&(t.cells=mE.read(n,n.readVarint()+n.pos))}};function qy(r,e){const t=new J1e(r);return e.read(t)}function O2e(r){const{cells:e,scheme:t}=r,n=e.indices.value.length,i=[];for(let o=0;o<n;o++){const s=t==="h3"?jx(e.indices.value[o]):e.indices.value[o],c={...e.properties[o]};for(const f of Object.keys(e.numericProps))c[f]=e.numericProps[f].value[o];i.push({id:s,properties:c})}return i}const Pk="9.1.11",Rk="cartoSpatialTile",D2e={cartoSpatialTile:{scheme:"quadbin",workerUrl:Ky(Rk,Pk)}},Fk={name:"CARTO Spatial Tile",version:Pk,id:Rk,module:"carto",extensions:["pbf"],mimeTypes:["application/vnd.carto-spatial-tile"],category:"geometry",parse:async(r,e)=>LF(r,e),parseSync:LF,worker:!0,options:D2e};function LF(r,e){var s;if(!r)return null;const t=qy(r,F2e),{cells:n}=t,i=(s=e==null?void 0:e.cartoSpatialTile)==null?void 0:s.scheme;return O2e({cells:n,scheme:i})}function NA(r,e,t=0){if(!r)return e;if(!e)return r;if(t>10)return e;const n={...r};for(const i in e){const o=e[i];o===r||o===e||(typeof o=="object"&&o!==null?n[i]=NA(r[i],o,t+1):n[i]=o)}return n}function L2e(r,e){const t={};for(const{geoid:n,...i}of e.properties)n in t?$r.warn("Duplicate geoid key in boundary mapping, using first occurance")():t[n]=i;for(const n of["points","lines","polygons"]){const i=r[n];if(i.positions.value.length===0)continue;i.properties=i.properties.map(({geoid:_})=>t[_]);const{positions:o,globalFeatureIds:s}=i;let c=null;n==="lines"&&(c=i.pathIndices.value),n==="polygons"&&(c=i.polygonIndices.value);const f=o.value.length/o.size;for(const _ in e.numericProps){const b=e.numericProps[_].value,T=b.constructor,S=new T(f);if(i.numericProps[_]={value:S,size:1},c)for(let D=0;D<c.length-1;D++){const k=c[D],G=c[D+1],W=s.value[k];S.fill(b[W],k,G)}else for(let D=0;D<f;D++){const k=s.value[D];S[D]=b[k]}}}return r}const nh={type:"object",value:null,validate:(r,e)=>e.optional&&r===null||typeof r=="object"&&Array.isArray(r.tiles)&&r.tiles.every(t=>typeof t=="string"),equal:(r,e)=>Ki(r,e,2),async:!0};Ig([Fk]);const Ok={data:nh,clusterLevel:{type:"number",value:5,min:1},getPosition:{type:"accessor",value:({id:r})=>Sk(r,.5).slice(2,4)},getWeight:{type:"accessor",value:1},refinementStrategy:"no-overlap",tileSize:LA};class _E extends Wl{initializeState(){super.initializeState(),this.state.aggregationCache=new WeakMap}renderLayers(){var S;const e=(S=this.state.tileset)==null?void 0:S.tiles.filter(D=>D.isLoaded&&D.content&&this.state.tileset.isTileVisible(D));if(!(e!=null&&e.length))return null;e.sort((D,k)=>k.zoom-D.zoom);const{zoom:t}=this.context.viewport,{clusterLevel:n,getPosition:i,getWeight:o}=this.props,{aggregationCache:s}=this.state,c=v2e(e[0]),f=[];let _=!1;for(const D of e){const k=Math.round(t-D.zoom),G=Math.round(n)-k;let W=s.get(D.content);W||(W=new Map,s.set(D.content,W));const z=y2e(D,W,G,c,i,o);_||(_=z),f.push(...W.get(G))}f.sort((D,k)=>Number(k.count-D.count));const b=f==null?void 0:f.map(D=>D.id);if(_||(_=!Ki(b,this.state.clusterIds,1)),this.setState({clusterIds:b}),_){const D=b2e(f,c),k=x2e(f);k.points.attributes={stats:D},this.setState({data:k})}const T={...this.props,id:"clusters",data:this.state.data,dataComparator:(D,k)=>{var z,j,K,fe;const G=(j=(z=D==null?void 0:D.points)==null?void 0:z.properties)==null?void 0:j.map(Z=>Z.id),W=(fe=(K=k==null?void 0:k.points)==null?void 0:K.properties)==null?void 0:fe.map(Z=>Z.id);return Ki(G,W,1)}};return new jl(this.getSubLayerProps(T))}getPickingInfo(e){const t=e.info;if(t.index!==-1){const{data:n}=e.sourceLayer.props;t.object=Hx(n,{globalFeatureId:t.index})}return t}_updateAutoHighlight(e){for(const t of this.getSubLayers())t.updateAutoHighlight(e)}filterSubLayer(){return!0}}_E.layerName="ClusterGeoJsonLayer";_E.defaultProps=Ok;class yE extends ys{getLoadOptions(){const e=this.props.data;return NA(super.getLoadOptions(),{fetch:{headers:{Authorization:`Bearer ${e.accessToken}`}},cartoSpatialTile:{scheme:"quadbin"}})}renderLayers(){const e=this.props.data;if(!e)return null;const{tiles:t,maxresolution:n}=e;return[new _E(this.props,{id:`cluster-geojson-layer-${this.props.id}`,data:t,TilesetClass:uE,maxZoom:n,loadOptions:this.getLoadOptions()})]}}yE.layerName="ClusterTileLayer";yE.defaultProps=Ok;const N2e=85.051128;function k2e({west:r,north:e,east:t,south:n},i){const c=[[e,t],[n,t],[n,r],[e,r]].map(b=>MC(b[0],b[1],i)).map(b=>Math.max(...iAe(b).map(T=>oAe(T,hA.rads)))*180/Math.PI),f=Math.max(...c),_=Math.min(180,f/Math.cos((e+n)/2*Math.PI/180));return{north:Math.min(e+f,N2e),east:t+_,south:Math.max(n-f,-85.051128),west:r-_}}function Dk({west:r,north:e,east:t,south:n},i){const o=Math.abs(t-r);if(o>180){const c=Math.ceil(o/180);let f=[];for(let _=0;_<c;_++){const b=r+_*180,T=Math.min(b+179.9999999,t);f=f.concat(Dk({west:b,north:e,east:T,south:n},i))}return[...new Set(f)]}return rAe([[e,t],[n,t],[n,r],[e,r],[e,t]],i)}function U2e(r){const e=H8(r),t=e.map(f=>f[0]),n=e.map(f=>f[1]),i=Math.min(...n),o=Math.min(...t),s=Math.max(...n),c=Math.max(...t);return{west:i,south:o,east:s,north:c}}const z2e=2;function $x(r,e){const t=Math.log2(e/512),n=2/3*(r.zoom-t),i=Math.log(1/Math.cos(Math.PI*r.latitude/180));return Math.max(0,Math.floor(n+i-z2e))}class G2e extends Fy{getTileIndices({viewport:e,minZoom:t,maxZoom:n}){if(e.latitude===void 0)return[];const[i,o,s,c]=e.getBounds(),{tileSize:f}=this.opts;let _=$x(e,f),b;if(typeof t=="number"&&Number.isFinite(t)&&_<t)return[];if(typeof n=="number"&&Number.isFinite(n)&&_>n){_=n;const T=MC(e.latitude,e.longitude,n);b=tAe(T,1)}else{const T=k2e({west:i,north:c,east:s,south:o},_);b=Dk(T,_)}return b.map(T=>({i:T}))}getTileId({i:e}){return e}getTileMetadata({i:e}){return{bbox:U2e(e)}}getTileZoom({i:e}){return Ix(e)}getParentIndex(e){const t=Ix(e.i);return{i:eAe(e.i,t-1)}}}Ig([Fk]);function V2e(r){return r!=null&&r!==""}const H2e={tileSize:LA};class Zy extends Wl{_updateAutoHighlight(e){const{hoveredFeatureId:t}=this.state,n=e.object;let i=null;if(n&&(i=n.id),t!==i){let{highlightColor:o}=this.props;typeof o=="function"&&(o=o(e)),this.setState({highlightColor:o,hoveredFeatureId:i})}}getSubLayerPropsByTile(e){return{highlightedObjectIndex:this.getHighlightedObjectIndex(e),highlightColor:this.state.highlightColor}}getHighlightedObjectIndex(e){const{hoveredFeatureId:t}=this.state,n=e.content;return!V2e(t)||!Array.isArray(n)||!this._featureInTile(e,t)?-1:n.findIndex(o=>o.id===t)}_featureInTile(e,t){const n=this.state.tileset,i=n.getTileZoom(e.index),o=e.index.q?"q":"i";let s={[o]:t},c=n.getTileZoom(s);for(;!(c<=i);)s=n.getParentIndex(s),c=n.getTileZoom(s);return s[o]===e.index[o]}}Zy.layerName="SpatialIndexTileLayer";Zy.defaultProps=H2e;const j2e=r=>{const{data:e}=r,{index:t}=r.tile;return!e||!e.length?null:new sl(r,{getHexagon:n=>n.id,centerHexagon:t,highPrecision:!0})},$2e={data:nh,tileSize:LA};class vE extends ys{initializeState(){sl._checkH3Lib()}getLoadOptions(){const e=this.props.data;return NA(super.getLoadOptions(),{fetch:{headers:{Authorization:`Bearer ${e.accessToken}`}},cartoSpatialTile:{scheme:"h3"}})}renderLayers(){const e=this.props.data;if(!e)return null;const{tiles:t}=e;let{minresolution:n,maxresolution:i}=e;this.props.minZoom&&(n=Math.max(n,$x({zoom:this.props.minZoom,latitude:0},this.props.tileSize))),this.props.maxZoom&&(i=Math.min(i,$x({zoom:this.props.maxZoom,latitude:0},this.props.tileSize)));const o=this.getSubLayerClass("spatial-index-tile",Zy);return new o(this.props,{id:`h3-tile-layer-${this.props.id}`,data:t,TilesetClass:G2e,renderSubLayers:j2e,minZoom:n,maxZoom:i,loadOptions:this.getLoadOptions()})}}vE.layerName="H3TileLayer";vE.defaultProps=$2e;const W2e=`uniform heatmapUniforms {
|
4687
|
+
`},P1e=r=>{if(!r||!("dummyCollisionMap"in r))return{};const{enabled:e,collisionFBO:t,drawToCollisionMap:n,dummyCollisionMap:i}=r;return{enabled:e&&!n,sort:!!n,collision_texture:!n&&t?t.colorAttachments[0]:i}},R1e={name:"collision",dependencies:[ly],vs:I1e,inject:M1e,getUniforms:P1e,uniformTypes:{sort:"i32",enabled:"i32"}};class F1e extends uy{renderCollisionMap(e,t){const i=[0,0,0,0],o=[1,1,e.width-2*1,e.height-2*1];this.render({...t,clearColor:i,scissorRect:o,target:e,pass:"collision"})}getLayerParameters(e,t,n){return{...e.props.parameters,blend:!1,depthWriteEnabled:!0,depthCompare:"less-equal"}}getShaderModuleProps(){return{collision:{drawToCollisionMap:!0},picking:{isActive:1,isAttribute:!1},lighting:{enabled:!1}}}}const V1=2;class O1e{constructor(){this.id="collision-filter-effect",this.props=null,this.useInPicking=!0,this.order=1,this.channels={},this.collisionFBOs={}}setup(e){this.context=e;const{device:t}=e;this.dummyCollisionMap=t.createTexture({width:1,height:1}),this.collisionFilterPass=new F1e(t,{id:"default-collision-filter"})}preRender({effects:e,layers:t,layerFilter:n,viewports:i,onViewportActive:o,views:s,isPicking:c,preRenderStats:f={}}){var W;const{device:_}=this.context;if(c)return;const b=t.filter(({props:{visible:z,collisionEnabled:j}})=>z&&j);if(b.length===0){this.channels={};return}const T=e==null?void 0:e.filter(z=>z.useInPicking&&f[z.id]),S=(W=f["mask-effect"])==null?void 0:W.didRender,D=this._groupByCollisionGroup(_,b),k=i[0],G=!this.lastViewport||!this.lastViewport.equals(k)||S;for(const z in D){const j=this.collisionFBOs[z],K=D[z],[fe,Z]=_.canvasContext.getPixelSize();j.resize({width:fe/V1,height:Z/V1}),this._render(K,{effects:T,layerFilter:n,onViewportActive:o,views:s,viewport:k,viewportChanged:G})}}_render(e,{effects:t,layerFilter:n,onViewportActive:i,views:o,viewport:s,viewportChanged:c}){const{collisionGroup:f}=e,_=this.channels[f];if(!_)return;const b=c||e===_||!Ki(_.layers,e.layers,1)||e.layerBounds.some((T,S)=>!oa(T,_.layerBounds[S]))||e.allLayersLoaded!==_.allLayersLoaded||e.layers.some(T=>T.props.transitions);if(this.channels[f]=e,b){this.lastViewport=s;const T=this.collisionFBOs[f];this.collisionFilterPass.renderCollisionMap(T,{pass:"collision-filter",isPicking:!0,layers:e.layers,effects:t,layerFilter:n,viewports:s?[s]:[],onViewportActive:i,views:o,shaderModuleProps:{collision:{enabled:!0,dummyCollisionMap:this.dummyCollisionMap},project:{devicePixelRatio:T.device.canvasContext.getDevicePixelRatio()/V1}}})}}_groupByCollisionGroup(e,t){const n={};for(const i of t){const o=i.props.collisionGroup;let s=n[o];s||(s={collisionGroup:o,layers:[],layerBounds:[],allLayersLoaded:!0},n[o]=s),s.layers.push(i),s.layerBounds.push(i.getBounds()),i.isLoaded||(s.allLayersLoaded=!1)}for(const i of Object.keys(n))this.collisionFBOs[i]||this.createFBO(e,i),this.channels[i]||(this.channels[i]=n[i]);for(const i of Object.keys(this.collisionFBOs))n[i]||this.destroyFBO(i);return n}getShaderModuleProps(e){const{collisionGroup:t,collisionEnabled:n}=e.props,{collisionFBOs:i,dummyCollisionMap:o}=this,s=i[t];return{collision:{enabled:n&&!!s,collisionFBO:s,dummyCollisionMap:o}}}cleanup(){this.dummyCollisionMap&&(this.dummyCollisionMap.delete(),this.dummyCollisionMap=void 0),this.channels={};for(const e of Object.keys(this.collisionFBOs))this.destroyFBO(e);this.collisionFBOs={},this.lastViewport=void 0}createFBO(e,t){const{width:n,height:i}=e.gl.canvas,o=e.createTexture({format:"rgba8unorm",width:n,height:i,sampler:{minFilter:"nearest",magFilter:"nearest",addressModeU:"clamp-to-edge",addressModeV:"clamp-to-edge"}}),s=e.createTexture({format:"depth16unorm",width:n,height:i,mipmaps:!1});this.collisionFBOs[t]=e.createFramebuffer({id:`collision-${t}`,width:n,height:i,colorAttachments:[o],depthStencilAttachment:s})}destroyFBO(e){var n,i;const t=this.collisionFBOs[e];(n=t.colorAttachments[0])==null||n.destroy(),(i=t.depthStencilAttachment)==null||i.destroy(),t.destroy(),delete this.collisionFBOs[e]}}const D1e={getCollisionPriority:{type:"accessor",value:0},collisionEnabled:!0,collisionGroup:{type:"string",value:"default"},collisionTestProps:{}};class oE extends py{getShaders(){return{modules:[R1e]}}draw({shaderModuleProps:e}){var t;(t=e.collision)!=null&&t.drawToCollisionMap&&(this.props=this.clone(this.props.collisionTestProps).props)}initializeState(e,t){var i;if(this.getAttributeManager()===null)return;(i=this.context.deck)==null||i._addDefaultEffect(new O1e),this.getAttributeManager().add({collisionPriorities:{size:1,stepMode:"dynamic",accessor:"getCollisionPriority"}})}getNeedsPickingBuffer(){return this.props.collisionEnabled}}oE.defaultProps=D1e;oE.extensionName="CollisionFilterExtension";function Hx(r,e){const t=e==null?void 0:e.globalFeatureId;return t!==void 0?L1e(r,t):N1e(r,e==null?void 0:e.type)}function L1e(r,e){const t=dk(r);for(const n of t){let i=0,o=n.featureIds.value[0];for(let s=0;s<n.featureIds.value.length;s++){const c=n.featureIds.value[s];if(c!==o){if(e===n.globalFeatureIds.value[i])return k_(n,i,s);i=s,o=c}}if(e===n.globalFeatureIds.value[i])return k_(n,i,n.featureIds.value.length)}throw new Error(`featureId:${e} not found`)}function N1e(r,e){const t=dk(r);return U1e(t)}function k1e(r,e,t){switch(r.type){case"Point":return H1e(r,e,t);case"LineString":return V1e(r,e,t);case"Polygon":return Ak(r,e,t);default:const n=r;throw new Error(`Unsupported geometry type: ${n==null?void 0:n.type}`)}}function dk(r,e){const t=[];return r.points&&(r.points.type="Point",t.push(r.points)),r.lines&&(r.lines.type="LineString",t.push(r.lines)),r.polygons&&(r.polygons.type="Polygon",t.push(r.polygons)),t}function U1e(r){const e=[];for(const t of r){if(t.featureIds.value.length===0)continue;let n=0,i=t.featureIds.value[0];for(let o=0;o<t.featureIds.value.length;o++){const s=t.featureIds.value[o];s!==i&&(e.push(k_(t,n,o)),n=o,i=s)}e.push(k_(t,n,t.featureIds.value.length))}return e}function k_(r,e,t){const n=k1e(r,e,t),i=G1e(r,e),o=z1e(r,e);return{type:"Feature",geometry:n,properties:i,...o}}function z1e(r,e=0,t){return r.fields&&r.fields[r.featureIds.value[e]]}function G1e(r,e=0,t){const n=Object.assign({},r.properties[r.featureIds.value[e]]);for(const i in r.numericProps)n[i]=r.numericProps[i].value[e];return n}function Ak(r,e=-1/0,t=1/0){const{positions:n}=r,i=r.polygonIndices.value.filter(f=>f>=e&&f<=t),o=r.primitivePolygonIndices.value.filter(f=>f>=e&&f<=t);if(!(i.length>2)){const f=[];for(let _=0;_<o.length-1;_++){const b=o[_],T=o[_+1],S=U_(n,b,T);f.push(S)}return{type:"Polygon",coordinates:f}}const c=[];for(let f=0;f<i.length-1;f++){const _=i[f],b=i[f+1],T=Ak(r,_,b).coordinates;c.push(T)}return{type:"MultiPolygon",coordinates:c}}function V1e(r,e=-1/0,t=1/0){const{positions:n}=r,i=r.pathIndices.value.filter(c=>c>=e&&c<=t);if(!(i.length>2))return{type:"LineString",coordinates:U_(n,i[0],i[1])};const s=[];for(let c=0;c<i.length-1;c++){const f=U_(n,i[c],i[c+1]);s.push(f)}return{type:"MultiLineString",coordinates:s}}function H1e(r,e,t){const{positions:n}=r,i=U_(n,e,t);return i.length>1?{type:"MultiPoint",coordinates:i}:{type:"Point",coordinates:i[0]}}function U_(r,e,t){e=e||0,t=t||r.value.length/r.size;const n=[];for(let i=e;i<t;i++){const o=Array();for(let s=i*r.size;s<(i+1)*r.size;s++)o.push(Number(r.value[s]));n.push(o)}return n}var dm={};/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */var EF;function j1e(){return EF||(EF=1,dm.read=function(r,e,t,n,i){var o,s,c=i*8-n-1,f=(1<<c)-1,_=f>>1,b=-7,T=t?i-1:0,S=t?-1:1,D=r[e+T];for(T+=S,o=D&(1<<-b)-1,D>>=-b,b+=c;b>0;o=o*256+r[e+T],T+=S,b-=8);for(s=o&(1<<-b)-1,o>>=-b,b+=n;b>0;s=s*256+r[e+T],T+=S,b-=8);if(o===0)o=1-_;else{if(o===f)return s?NaN:(D?-1:1)*(1/0);s=s+Math.pow(2,n),o=o-_}return(D?-1:1)*s*Math.pow(2,o-n)},dm.write=function(r,e,t,n,i,o){var s,c,f,_=o*8-i-1,b=(1<<_)-1,T=b>>1,S=i===23?Math.pow(2,-24)-Math.pow(2,-77):0,D=n?0:o-1,k=n?1:-1,G=e<0||e===0&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(c=isNaN(e)?1:0,s=b):(s=Math.floor(Math.log(e)/Math.LN2),e*(f=Math.pow(2,-s))<1&&(s--,f*=2),s+T>=1?e+=S/f:e+=S*Math.pow(2,1-T),e*f>=2&&(s++,f/=2),s+T>=b?(c=0,s=b):s+T>=1?(c=(e*f-1)*Math.pow(2,i),s=s+T):(c=e*Math.pow(2,T-1)*Math.pow(2,i),s=0));i>=8;r[t+D]=c&255,D+=k,c/=256,i-=8);for(s=s<<i|c,_+=i;_>0;r[t+D]=s&255,D+=k,s/=256,_-=8);r[t+D-k]|=G*128}),dm}var H1,TF;function $1e(){if(TF)return H1;TF=1,H1=e;var r=j1e();function e(J){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(J)?J:new Uint8Array(J||0),this.pos=0,this.type=0,this.length=this.buf.length}e.Varint=0,e.Fixed64=1,e.Bytes=2,e.Fixed32=5;var t=65536*65536,n=1/t,i=12,o=typeof TextDecoder>"u"?null:new TextDecoder("utf-8");e.prototype={destroy:function(){this.buf=null},readFields:function(J,te,be){for(be=be||this.length;this.pos<be;){var Qe=this.readVarint(),Ee=Qe>>3,De=this.pos;this.type=Qe&7,J(Ee,te,this),this.pos===De&&this.skip(Qe)}return te},readMessage:function(J,te){return this.readFields(J,te,this.readVarint()+this.pos)},readFixed32:function(){var J=ae(this.buf,this.pos);return this.pos+=4,J},readSFixed32:function(){var J=Ne(this.buf,this.pos);return this.pos+=4,J},readFixed64:function(){var J=ae(this.buf,this.pos)+ae(this.buf,this.pos+4)*t;return this.pos+=8,J},readSFixed64:function(){var J=ae(this.buf,this.pos)+Ne(this.buf,this.pos+4)*t;return this.pos+=8,J},readFloat:function(){var J=r.read(this.buf,this.pos,!0,23,4);return this.pos+=4,J},readDouble:function(){var J=r.read(this.buf,this.pos,!0,52,8);return this.pos+=8,J},readVarint:function(J){var te=this.buf,be,Qe;return Qe=te[this.pos++],be=Qe&127,Qe<128||(Qe=te[this.pos++],be|=(Qe&127)<<7,Qe<128)||(Qe=te[this.pos++],be|=(Qe&127)<<14,Qe<128)||(Qe=te[this.pos++],be|=(Qe&127)<<21,Qe<128)?be:(Qe=te[this.pos],be|=(Qe&15)<<28,s(be,J,this))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var J=this.readVarint();return J%2===1?(J+1)/-2:J/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var J=this.readVarint()+this.pos,te=this.pos;return this.pos=J,J-te>=i&&o?_e(this.buf,te,J):de(this.buf,te,J)},readBytes:function(){var J=this.readVarint()+this.pos,te=this.buf.subarray(this.pos,J);return this.pos=J,te},readPackedVarint:function(J,te){if(this.type!==e.Bytes)return J.push(this.readVarint(te));var be=c(this);for(J=J||[];this.pos<be;)J.push(this.readVarint(te));return J},readPackedSVarint:function(J){if(this.type!==e.Bytes)return J.push(this.readSVarint());var te=c(this);for(J=J||[];this.pos<te;)J.push(this.readSVarint());return J},readPackedBoolean:function(J){if(this.type!==e.Bytes)return J.push(this.readBoolean());var te=c(this);for(J=J||[];this.pos<te;)J.push(this.readBoolean());return J},readPackedFloat:function(J){if(this.type!==e.Bytes)return J.push(this.readFloat());var te=c(this);for(J=J||[];this.pos<te;)J.push(this.readFloat());return J},readPackedDouble:function(J){if(this.type!==e.Bytes)return J.push(this.readDouble());var te=c(this);for(J=J||[];this.pos<te;)J.push(this.readDouble());return J},readPackedFixed32:function(J){if(this.type!==e.Bytes)return J.push(this.readFixed32());var te=c(this);for(J=J||[];this.pos<te;)J.push(this.readFixed32());return J},readPackedSFixed32:function(J){if(this.type!==e.Bytes)return J.push(this.readSFixed32());var te=c(this);for(J=J||[];this.pos<te;)J.push(this.readSFixed32());return J},readPackedFixed64:function(J){if(this.type!==e.Bytes)return J.push(this.readFixed64());var te=c(this);for(J=J||[];this.pos<te;)J.push(this.readFixed64());return J},readPackedSFixed64:function(J){if(this.type!==e.Bytes)return J.push(this.readSFixed64());var te=c(this);for(J=J||[];this.pos<te;)J.push(this.readSFixed64());return J},skip:function(J){var te=J&7;if(te===e.Varint)for(;this.buf[this.pos++]>127;);else if(te===e.Bytes)this.pos=this.readVarint()+this.pos;else if(te===e.Fixed32)this.pos+=4;else if(te===e.Fixed64)this.pos+=8;else throw new Error("Unimplemented type: "+te)},writeTag:function(J,te){this.writeVarint(J<<3|te)},realloc:function(J){for(var te=this.length||16;te<this.pos+J;)te*=2;if(te!==this.length){var be=new Uint8Array(te);be.set(this.buf),this.buf=be,this.length=te}},finish:function(){return this.length=this.pos,this.pos=0,this.buf.subarray(0,this.length)},writeFixed32:function(J){this.realloc(4),Be(this.buf,J,this.pos),this.pos+=4},writeSFixed32:function(J){this.realloc(4),Be(this.buf,J,this.pos),this.pos+=4},writeFixed64:function(J){this.realloc(8),Be(this.buf,J&-1,this.pos),Be(this.buf,Math.floor(J*n),this.pos+4),this.pos+=8},writeSFixed64:function(J){this.realloc(8),Be(this.buf,J&-1,this.pos),Be(this.buf,Math.floor(J*n),this.pos+4),this.pos+=8},writeVarint:function(J){if(J=+J||0,J>268435455||J<0){_(J,this);return}this.realloc(4),this.buf[this.pos++]=J&127|(J>127?128:0),!(J<=127)&&(this.buf[this.pos++]=(J>>>=7)&127|(J>127?128:0),!(J<=127)&&(this.buf[this.pos++]=(J>>>=7)&127|(J>127?128:0),!(J<=127)&&(this.buf[this.pos++]=J>>>7&127)))},writeSVarint:function(J){this.writeVarint(J<0?-J*2-1:J*2)},writeBoolean:function(J){this.writeVarint(!!J)},writeString:function(J){J=String(J),this.realloc(J.length*4),this.pos++;var te=this.pos;this.pos=pe(this.buf,J,this.pos);var be=this.pos-te;be>=128&&S(te,be,this),this.pos=te-1,this.writeVarint(be),this.pos+=be},writeFloat:function(J){this.realloc(4),r.write(this.buf,J,this.pos,!0,23,4),this.pos+=4},writeDouble:function(J){this.realloc(8),r.write(this.buf,J,this.pos,!0,52,8),this.pos+=8},writeBytes:function(J){var te=J.length;this.writeVarint(te),this.realloc(te);for(var be=0;be<te;be++)this.buf[this.pos++]=J[be]},writeRawMessage:function(J,te){this.pos++;var be=this.pos;J(te,this);var Qe=this.pos-be;Qe>=128&&S(be,Qe,this),this.pos=be-1,this.writeVarint(Qe),this.pos+=Qe},writeMessage:function(J,te,be){this.writeTag(J,e.Bytes),this.writeRawMessage(te,be)},writePackedVarint:function(J,te){te.length&&this.writeMessage(J,D,te)},writePackedSVarint:function(J,te){te.length&&this.writeMessage(J,k,te)},writePackedBoolean:function(J,te){te.length&&this.writeMessage(J,z,te)},writePackedFloat:function(J,te){te.length&&this.writeMessage(J,G,te)},writePackedDouble:function(J,te){te.length&&this.writeMessage(J,W,te)},writePackedFixed32:function(J,te){te.length&&this.writeMessage(J,j,te)},writePackedSFixed32:function(J,te){te.length&&this.writeMessage(J,K,te)},writePackedFixed64:function(J,te){te.length&&this.writeMessage(J,fe,te)},writePackedSFixed64:function(J,te){te.length&&this.writeMessage(J,Z,te)},writeBytesField:function(J,te){this.writeTag(J,e.Bytes),this.writeBytes(te)},writeFixed32Field:function(J,te){this.writeTag(J,e.Fixed32),this.writeFixed32(te)},writeSFixed32Field:function(J,te){this.writeTag(J,e.Fixed32),this.writeSFixed32(te)},writeFixed64Field:function(J,te){this.writeTag(J,e.Fixed64),this.writeFixed64(te)},writeSFixed64Field:function(J,te){this.writeTag(J,e.Fixed64),this.writeSFixed64(te)},writeVarintField:function(J,te){this.writeTag(J,e.Varint),this.writeVarint(te)},writeSVarintField:function(J,te){this.writeTag(J,e.Varint),this.writeSVarint(te)},writeStringField:function(J,te){this.writeTag(J,e.Bytes),this.writeString(te)},writeFloatField:function(J,te){this.writeTag(J,e.Fixed32),this.writeFloat(te)},writeDoubleField:function(J,te){this.writeTag(J,e.Fixed64),this.writeDouble(te)},writeBooleanField:function(J,te){this.writeVarintField(J,!!te)}};function s(J,te,be){var Qe=be.buf,Ee,De;if(De=Qe[be.pos++],Ee=(De&112)>>4,De<128||(De=Qe[be.pos++],Ee|=(De&127)<<3,De<128)||(De=Qe[be.pos++],Ee|=(De&127)<<10,De<128)||(De=Qe[be.pos++],Ee|=(De&127)<<17,De<128)||(De=Qe[be.pos++],Ee|=(De&127)<<24,De<128)||(De=Qe[be.pos++],Ee|=(De&1)<<31,De<128))return f(J,Ee,te);throw new Error("Expected varint not more than 10 bytes")}function c(J){return J.type===e.Bytes?J.readVarint()+J.pos:J.pos+1}function f(J,te,be){return be?te*4294967296+(J>>>0):(te>>>0)*4294967296+(J>>>0)}function _(J,te){var be,Qe;if(J>=0?(be=J%4294967296|0,Qe=J/4294967296|0):(be=~(-J%4294967296),Qe=~(-J/4294967296),be^4294967295?be=be+1|0:(be=0,Qe=Qe+1|0)),J>=18446744073709552e3||J<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");te.realloc(10),b(be,Qe,te),T(Qe,te)}function b(J,te,be){be.buf[be.pos++]=J&127|128,J>>>=7,be.buf[be.pos++]=J&127|128,J>>>=7,be.buf[be.pos++]=J&127|128,J>>>=7,be.buf[be.pos++]=J&127|128,J>>>=7,be.buf[be.pos]=J&127}function T(J,te){var be=(J&7)<<4;te.buf[te.pos++]|=be|((J>>>=3)?128:0),J&&(te.buf[te.pos++]=J&127|((J>>>=7)?128:0),J&&(te.buf[te.pos++]=J&127|((J>>>=7)?128:0),J&&(te.buf[te.pos++]=J&127|((J>>>=7)?128:0),J&&(te.buf[te.pos++]=J&127|((J>>>=7)?128:0),J&&(te.buf[te.pos++]=J&127)))))}function S(J,te,be){var Qe=te<=16383?1:te<=2097151?2:te<=268435455?3:Math.floor(Math.log(te)/(Math.LN2*7));be.realloc(Qe);for(var Ee=be.pos-1;Ee>=J;Ee--)be.buf[Ee+Qe]=be.buf[Ee]}function D(J,te){for(var be=0;be<J.length;be++)te.writeVarint(J[be])}function k(J,te){for(var be=0;be<J.length;be++)te.writeSVarint(J[be])}function G(J,te){for(var be=0;be<J.length;be++)te.writeFloat(J[be])}function W(J,te){for(var be=0;be<J.length;be++)te.writeDouble(J[be])}function z(J,te){for(var be=0;be<J.length;be++)te.writeBoolean(J[be])}function j(J,te){for(var be=0;be<J.length;be++)te.writeFixed32(J[be])}function K(J,te){for(var be=0;be<J.length;be++)te.writeSFixed32(J[be])}function fe(J,te){for(var be=0;be<J.length;be++)te.writeFixed64(J[be])}function Z(J,te){for(var be=0;be<J.length;be++)te.writeSFixed64(J[be])}function ae(J,te){return(J[te]|J[te+1]<<8|J[te+2]<<16)+J[te+3]*16777216}function Be(J,te,be){J[be]=te,J[be+1]=te>>>8,J[be+2]=te>>>16,J[be+3]=te>>>24}function Ne(J,te){return(J[te]|J[te+1]<<8|J[te+2]<<16)+(J[te+3]<<24)}function de(J,te,be){for(var Qe="",Ee=te;Ee<be;){var De=J[Ee],Ge=null,et=De>239?4:De>223?3:De>191?2:1;if(Ee+et>be)break;var it,rt,ct;et===1?De<128&&(Ge=De):et===2?(it=J[Ee+1],(it&192)===128&&(Ge=(De&31)<<6|it&63,Ge<=127&&(Ge=null))):et===3?(it=J[Ee+1],rt=J[Ee+2],(it&192)===128&&(rt&192)===128&&(Ge=(De&15)<<12|(it&63)<<6|rt&63,(Ge<=2047||Ge>=55296&&Ge<=57343)&&(Ge=null))):et===4&&(it=J[Ee+1],rt=J[Ee+2],ct=J[Ee+3],(it&192)===128&&(rt&192)===128&&(ct&192)===128&&(Ge=(De&15)<<18|(it&63)<<12|(rt&63)<<6|ct&63,(Ge<=65535||Ge>=1114112)&&(Ge=null))),Ge===null?(Ge=65533,et=1):Ge>65535&&(Ge-=65536,Qe+=String.fromCharCode(Ge>>>10&1023|55296),Ge=56320|Ge&1023),Qe+=String.fromCharCode(Ge),Ee+=et}return Qe}function _e(J,te,be){return o.decode(J.subarray(te,be))}function pe(J,te,be){for(var Qe=0,Ee,De;Qe<te.length;Qe++){if(Ee=te.charCodeAt(Qe),Ee>55295&&Ee<57344)if(De)if(Ee<56320){J[be++]=239,J[be++]=191,J[be++]=189,De=Ee;continue}else Ee=De-55296<<10|Ee-56320|65536,De=null;else{Ee>56319||Qe+1===te.length?(J[be++]=239,J[be++]=191,J[be++]=189):De=Ee;continue}else De&&(J[be++]=239,J[be++]=191,J[be++]=189,De=null);Ee<128?J[be++]=Ee:(Ee<2048?J[be++]=Ee>>6|192:(Ee<65536?J[be++]=Ee>>12|224:(J[be++]=Ee>>18|240,J[be++]=Ee>>12&63|128),J[be++]=Ee>>6&63|128),J[be++]=Ee&63|128)}return be}return H1}var W1e=$1e();const J1e=ih(W1e),X1e="4.2.4",pk={dataType:null,batchType:null,name:"Mapbox Vector Tile",id:"mvt",module:"mvt",version:X1e,extensions:["mvt","pbf"],mimeTypes:["application/vnd.mapbox-vector-tile","application/x-protobuf"],worker:!0,category:"geometry",options:{mvt:{shape:"geojson",coordinates:"local",layerProperty:"layerName",layers:void 0,tileIndex:null}}};({...pk});const K1e={Point:gk,MultiPoint:Y1e,LineString:mk,MultiLineString:q1e,Polygon:_k,MultiPolygon:Z1e};function gk([r,e],[t,n],i){const o=hc(t[0],n[0],r),s=hc(t[1],n[1],e);return i.unprojectFlat([o,s])}function aE(r,e,t){return r.map(n=>gk(n,e,t))}function Y1e(r,e,t){return aE(r,e,t)}function mk(r,e,t){return aE(r,e,t)}function q1e(r,e,t){return r.map(n=>mk(n,e,t))}function _k(r,e,t){return r.map(n=>aE(n,e,t))}function Z1e(r,e,t){return r.map(n=>_k(n,e,t))}function Q1e(r,e,t){const n=t.projectFlat([e.west,e.north]),i=t.projectFlat([e.east,e.south]),o=[n,i];return{...r,coordinates:K1e[r.type](r.coordinates,o,t)}}const e2e=["points","lines","polygons"];function t2e(r,e,t,n){for(const i of e2e){const o=r[i]&&r2e(r[i],e,t,n);if(o>=0)return o}return-1}function r2e(r,e,t,n){const i=r.featureIds.value;if(!i.length)return-1;let o=0,s=i[i.length-1]+1;if(n){const f=n2e(r,n);if(f)o=f[0],s=f[1]+1;else return-1}let c=-1;if(e in r.numericProps){const f=r.numericProps[e].value.findIndex((_,b)=>_===t&&i[b]>=o&&i[b]<s);return f>=0?r.globalFeatureIds.value[f]:-1}else e?c=BF(r.properties,f=>f[e]===t,o,s):r.fields&&(c=BF(r.fields,f=>f.id===t,o,s));return c>=0?i2e(r,c):-1}function n2e(r,e){if(!r.__layers){const t={},{properties:n}=r;for(let i=0;i<n.length;i++){const{layerName:o}=n[i];o&&(t[o]?t[o][1]=i:t[o]=[i,i])}r.__layers=t}return r.__layers[e]}function i2e(r,e){if(!r.__ids){const t=[],n=r.featureIds.value,i=r.globalFeatureIds.value;for(let o=0;o<n.length;o++)t[n[o]]=i[o];r.__ids=t}return r.__ids[e]}function BF(r,e,t,n){for(let i=t;i<n;i++)if(e(r[i],i))return i;return-1}const j1=512,s2e={...jl.defaultProps,data:I_,onDataLoad:{type:"function",value:null,optional:!0,compare:!1},uniqueIdProperty:"",highlightedFeatureId:null,loaders:[pk],binary:!0};class DA extends Wl{initializeState(){super.initializeState();const e=this.context.viewport.resolution!==void 0?!1:this.props.binary;this.setState({binary:e,data:null,tileJSON:null,hoveredFeatureId:null,hoveredFeatureLayerName:null})}get isLoaded(){var e;return!!((e=this.state)!=null&&e.data&&super.isLoaded)}updateState({props:e,oldProps:t,context:n,changeFlags:i}){var s;i.dataChanged&&this._updateTileData(),(s=this.state)!=null&&s.data&&(super.updateState({props:e,oldProps:t,context:n,changeFlags:i}),this._setWGS84PropertyForTiles());const{highlightColor:o}=e;o!==t.highlightColor&&Array.isArray(o)&&this.setState({highlightColor:o})}async _updateTileData(){let e=this.props.data,t=null;if(typeof e=="string"&&!ude(e)){const{onDataLoad:n,fetch:i}=this.props;this.setState({data:null,tileJSON:null});try{t=await i(e,{propName:"data",layer:this,loaders:[]})}catch(o){this.raiseError(o,"loading TileJSON"),e=null}n&&n(t,{propName:"data",layer:this})}else e&&typeof e=="object"&&"tilejson"in e&&(t=e);t&&(e=t.tiles),this.setState({data:e,tileJSON:t})}_getTilesetOptions(){const e=super._getTilesetOptions(),t=this.state.tileJSON,{minZoom:n,maxZoom:i}=this.props;return t&&(Number.isFinite(t.minzoom)&&t.minzoom>n&&(e.minZoom=t.minzoom),Number.isFinite(t.maxzoom)&&(!Number.isFinite(i)||t.maxzoom<i)&&(e.maxZoom=t.maxzoom)),e}renderLayers(){var e;return(e=this.state)!=null&&e.data?super.renderLayers():null}getTileData(e){const{data:t,binary:n}=this.state,{index:i,signal:o}=e,s=eh(t,e);if(!s)return Promise.reject("Invalid URL");let c=this.getLoadOptions();const{fetch:f}=this.props;return c={...c,mimeType:"application/x-protobuf",mvt:{...c==null?void 0:c.mvt,coordinates:this.context.viewport.resolution?"wgs84":"local",tileIndex:i},gis:n?{format:"binary"}:{}},f(s,{propName:"data",layer:this,loadOptions:c,signal:o})}renderSubLayers(e){const{x:t,y:n,z:i}=e.tile.index,o=Math.pow(2,i),s=j1/o,c=-s,f=j1*t/o,_=j1*(1-n/o),b=new dn().scale([s,c,1]);e.autoHighlight=!1,this.context.viewport.resolution||(e.modelMatrix=b,e.coordinateOrigin=[f,_,0],e.coordinateSystem=Jr.CARTESIAN,e.extensions=[...e.extensions||[],new Jy]);const T=super.renderSubLayers(e);return this.state.binary&&!(T instanceof jl)&&$r.warn("renderSubLayers() must return GeoJsonLayer when using binary:true")(),T}_updateAutoHighlight(e){const{uniqueIdProperty:t}=this.props,{hoveredFeatureId:n,hoveredFeatureLayerName:i}=this.state,o=e.object;let s=null,c=null;o&&(s=$1(o,t),c=SF(o));let{highlightColor:f}=this.props;typeof f=="function"&&(f=f(e)),(n!==s||i!==c)&&this.setState({highlightColor:f,hoveredFeatureId:s,hoveredFeatureLayerName:c})}_isWGS84(){return!!this.context.viewport.resolution}getPickingInfo(e){const t=super.getPickingInfo(e);if(this.state.binary&&t.index!==-1){const{data:n}=e.sourceLayer.props;t.object=Hx(n,{globalFeatureId:t.index})}return t.object&&!this._isWGS84()&&(t.object=MF(t.object,t.tile.bbox,this.context.viewport)),t}getSubLayerPropsByTile(e){return{highlightedObjectIndex:this.getHighlightedObjectIndex(e),highlightColor:this.state.highlightColor}}getHighlightedObjectIndex(e){const{hoveredFeatureId:t,hoveredFeatureLayerName:n,binary:i}=this.state,{uniqueIdProperty:o,highlightedFeatureId:s}=this.props,c=e.content,f=IF(s);if(!(IF(t)||f))return-1;const b=f?s:t;return Array.isArray(c)?c.findIndex(T=>{const S=$1(T,o)===b,D=f||SF(T)===n;return S&&D}):c&&i?t2e(c,o,b,f?"":n):-1}_pickObjects(e){const{deck:t,viewport:n}=this.context,i=n.width,o=n.height,s=n.x,c=n.y,f=[this.id];return t.pickObjects({x:s,y:c,width:i,height:o,layerIds:f,maxObjects:e})}getRenderedFeatures(e=null){const t=this._pickObjects(e),n=new Set,i=[];for(const o of t){const s=$1(o.object,this.props.uniqueIdProperty);s===void 0?i.push(o.object):n.has(s)||(n.add(s),i.push(o.object))}return i}_setWGS84PropertyForTiles(){const e="dataInWGS84";this.state.tileset.selectedTiles.forEach(n=>{n.hasOwnProperty(e)||Object.defineProperty(n,e,{get:()=>{if(!n.content)return null;if(this.state.binary&&Array.isArray(n.content)&&!n.content.length)return[];const{bbox:i}=n;if(n._contentWGS84===void 0&&fde(i)){const o=this.state.binary?Hx(n.content):n.content;n._contentWGS84=o.map(s=>MF(s,i,this.context.viewport))}return n._contentWGS84}})})}}DA.layerName="MVTLayer";DA.defaultProps=s2e;function $1(r,e){if(r.properties&&e)return r.properties[e];if("id"in r)return r.id}function SF(r){var e;return((e=r.properties)==null?void 0:e.layerName)||null}function IF(r){return r!=null&&r!==""}function MF(r,e,t){const n={...r,geometry:{type:r.geometry.type}};return Object.defineProperty(n.geometry,"coordinates",{get:()=>Q1e(r.geometry,e,t).coordinates}),n}const PF="0123456789bcdefghjkmnpqrstuvwxyz",yk={};for(let r=0;r<PF.length;r++)yk[PF.charAt(r)]=r;const o2e=-90,a2e=90,c2e=-180,l2e=180;function u2e(r){let e=!0,t=a2e,n=o2e,i=l2e,o=c2e,s,c=0;for(let f=0,_=r.length;f<_;f++){const b=r[f].toLowerCase();c=yk[b];for(let T=4;T>=0;T--){const S=c>>T&1;e?(s=(i+o)/2,S===1?o=s:i=s):(s=(t+n)/2,S===1?n=s:t=s),e=!e}}return[n,o,t,i]}function f2e(r){const[e,t,n,i]=u2e(r);return[i,n,i,e,t,e,t,n,i,n]}const h2e={getGeohash:{type:"accessor",value:r=>r.geohash}};class Xy extends Qu{indexToBounds(){const{data:e,getGeohash:t}=this.props;return{data:e,_normalize:!1,positionFormat:"XY",getPolygon:(n,i)=>f2e(t(n,i))}}}Xy.layerName="GeohashLayer";Xy.defaultProps=h2e;const d2e=Object.freeze(Object.defineProperty({__proto__:null,GeohashLayer:Xy,GreatCircleLayer:yC,H3ClusterLayer:Ny,H3HexagonLayer:sl,MVTLayer:DA,QuadkeyLayer:Py,S2Layer:My,TerrainLayer:sE,Tile3DLayer:iE,TileLayer:Wl,TripsLayer:Oy,_GeoCellLayer:Qu,_Tile2DHeader:E8,_Tileset2D:Fy,_WMSLayer:_C,_getURLFromTemplate:eh},Symbol.toStringTag,{value:"Module"}));var Sp={},W1,RF;function A2e(){if(RF)return W1;RF=1;var r=Math.PI/180,e=180/Math.PI;function t(j){var K=i(j[0]+1,j[2]),fe=i(j[0],j[2]),Z=o(j[1]+1,j[2]),ae=o(j[1],j[2]);return[fe,Z,K,ae]}function n(j){var K=t(j),fe={type:"Polygon",coordinates:[[[K[0],K[1]],[K[0],K[3]],[K[2],K[3]],[K[2],K[1]],[K[0],K[1]]]]};return fe}function i(j,K){return j/Math.pow(2,K)*360-180}function o(j,K){var fe=Math.PI-2*Math.PI*j/Math.pow(2,K);return e*Math.atan(.5*(Math.exp(fe)-Math.exp(-fe)))}function s(j,K,fe){var Z=z(j,K,fe);return Z[0]=Math.floor(Z[0]),Z[1]=Math.floor(Z[1]),Z}function c(j){return[[j[0]*2,j[1]*2,j[2]+1],[j[0]*2+1,j[1]*2,j[2]+1],[j[0]*2+1,j[1]*2+1,j[2]+1],[j[0]*2,j[1]*2+1,j[2]+1]]}function f(j){return j[0]%2===0&&j[1]%2===0?[j[0]/2,j[1]/2,j[2]-1]:j[0]%2===0&&!j[1]%2===0?[j[0]/2,(j[1]-1)/2,j[2]-1]:!j[0]%2===0&&j[1]%2===0?[(j[0]-1)/2,j[1]/2,j[2]-1]:[(j[0]-1)/2,(j[1]-1)/2,j[2]-1]}function _(j){return c(f(j))}function b(j,K){for(var fe=_(j),Z=0;Z<fe.length;Z++)if(!T(K,fe[Z]))return!1;return!0}function T(j,K){for(var fe=0;fe<j.length;fe++)if(S(j[fe],K))return!0;return!1}function S(j,K){return j[0]===K[0]&&j[1]===K[1]&&j[2]===K[2]}function D(j){for(var K="",fe=j[2];fe>0;fe--){var Z=0,ae=1<<fe-1;(j[0]&ae)!==0&&Z++,(j[1]&ae)!==0&&(Z+=2),K+=Z.toString()}return K}function k(j){for(var K=0,fe=0,Z=j.length,ae=Z;ae>0;ae--){var Be=1<<ae-1;switch(j[Z-ae]){case"0":break;case"1":K|=Be;break;case"2":fe|=Be;break;case"3":K|=Be,fe|=Be;break}}return[K,fe,Z]}function G(j){var K=s(j[0],j[1],32),fe=s(j[2],j[3],32),Z=[K[0],K[1],fe[0],fe[1]],ae=W(Z);if(ae===0)return[0,0,0];var Be=Z[0]>>>32-ae,Ne=Z[1]>>>32-ae;return[Be,Ne,ae]}function W(j){for(var K=28,fe=0;fe<K;fe++){var Z=1<<32-(fe+1);if((j[0]&Z)!=(j[2]&Z)||(j[1]&Z)!=(j[3]&Z))return fe}return K}function z(j,K,fe){var Z=Math.sin(K*r),ae=Math.pow(2,fe),Be=ae*(j/360+.5),Ne=ae*(.5-.25*Math.log((1+Z)/(1-Z))/Math.PI);return[Be,Ne,fe]}return W1={tileToGeoJSON:n,tileToBBOX:t,getChildren:c,getParent:f,getSiblings:_,hasTile:T,hasSiblings:b,tilesEqual:S,tileToQuadkey:D,quadkeyToTile:k,pointToTile:s,bboxToTile:G,pointToTileFraction:z},W1}var FF;function p2e(){if(FF)return Sp;FF=1;var r=A2e();Sp.geojson=function(b,T){return{type:"FeatureCollection",features:t(b,T).map(e)}};function e(b){return{type:"Feature",geometry:r.tileToGeoJSON(b),properties:{}}}Sp.tiles=t,Sp.indexes=function(b,T){return t(b,T).map(r.tileToQuadkey)};function t(b,T){var S,D,k=b.coordinates,G=T.max_zoom,W={},z=[];if(b.type==="Point")return[r.pointToTile(k[0],k[1],G)];if(b.type==="MultiPoint")for(S=0;S<k.length;S++)D=r.pointToTile(k[S][0],k[S][1],G),W[f(D[0],D[1],D[2])]=!0;else if(b.type==="LineString")s(W,k,G);else if(b.type==="MultiLineString")for(S=0;S<k.length;S++)s(W,k[S],G);else if(b.type==="Polygon")i(W,z,k,G);else if(b.type==="MultiPolygon")for(S=0;S<k.length;S++)i(W,z,k[S],G);else throw new Error("Geometry type not implemented");if(T.min_zoom!==G){var j=z.length;for(c(W,z),S=0;S<j;S++){var K=z[S];W[f(K[0],K[1],K[2])]=!0}return n(W,z,T)}return c(W,z),z}function n(b,T,S){for(var D=[],k=S.max_zoom;k>S.min_zoom;k--){for(var G={},W=[],z=0;z<T.length;z++){var j=T[z];if(j[0]%2===0&&j[1]%2===0){var K=f(j[0]+1,j[1],k),fe=f(j[0],j[1]+1,k),Z=f(j[0]+1,j[1]+1,k);if(b[K]&&b[fe]&&b[Z]){b[f(j[0],j[1],j[2])]=!1,b[K]=!1,b[fe]=!1,b[Z]=!1;var ae=[j[0]/2,j[1]/2,k-1];k-1===S.min_zoom?D.push(ae):(G[f(j[0]/2,j[1]/2,k-1)]=!0,W.push(ae))}}}for(z=0;z<T.length;z++)j=T[z],b[f(j[0],j[1],j[2])]&&D.push(j);b=G,T=W}return D}function i(b,T,S,D){for(var k=[],G=0;G<S.length;G++){var W=[];s(b,S[G],D,W);for(var z=0,j=W.length,K=j-1;z<j;K=z++){var fe=(z+1)%j,Z=W[z][1];(Z>W[K][1]||Z>W[fe][1])&&(Z<W[K][1]||Z<W[fe][1])&&Z!==W[fe][1]&&k.push(W[z])}}for(k.sort(o),G=0;G<k.length;G+=2){Z=k[G][1];for(var ae=k[G][0]+1;ae<k[G+1][0];ae++){var Be=f(ae,Z,D);b[Be]||T.push([ae,Z,D])}}}function o(b,T){return b[1]-T[1]||b[0]-T[0]}function s(b,T,S,D){for(var k,G,W=0;W<T.length-1;W++){var z=r.pointToTileFraction(T[W][0],T[W][1],S),j=r.pointToTileFraction(T[W+1][0],T[W+1][1],S),K=z[0],fe=z[1],Z=j[0],ae=j[1],Be=Z-K,Ne=ae-fe;if(!(Ne===0&&Be===0)){var de=Be>0?1:-1,_e=Ne>0?1:-1,pe=Math.floor(K),J=Math.floor(fe),te=Be===0?1/0:Math.abs(((Be>0?1:0)+pe-K)/Be),be=Ne===0?1/0:Math.abs(((Ne>0?1:0)+J-fe)/Ne),Qe=Math.abs(de/Be),Ee=Math.abs(_e/Ne);for((pe!==k||J!==G)&&(b[f(pe,J,S)]=!0,D&&J!==G&&D.push([pe,J]),k=pe,G=J);te<1||be<1;)te<be?(te+=Qe,pe+=de):(be+=Ee,J+=_e),b[f(pe,J,S)]=!0,D&&J!==G&&D.push([pe,J]),k=pe,G=J}}D&&J===D[0][1]&&D.pop()}function c(b,T){for(var S=Object.keys(b),D=0;D<S.length;D++)T.push(_(+S[D]))}function f(b,T,S){var D=2*(1<<S);return(D*T+b)*32+S}function _(b){var T=b%32,S=2*(1<<T),D=(b-T)/32,k=D%S,G=(D-k)/S%S;return[k,G,T]}return Sp}p2e();const vk=[0x5555555555555555n,0x3333333333333333n,0x0f0f0f0f0f0f0f0fn,0x00ff00ff00ff00ffn,0x0000ffff0000ffffn,0x00000000ffffffffn],bk=[0n,1n,2n,4n,8n,16n];function g2e(r){return BigInt(`0x${r}`)}function jx(r){return r.toString(16)}function m2e(r){if(r.z<0||r.z>26)throw new Error("Wrong zoom");const e=BigInt(r.z);let t=BigInt(r.x)<<32n-e,n=BigInt(r.y)<<32n-e;for(let o=0;o<5;o++){const s=bk[5-o],c=vk[4-o];t=(t|t<<s)&c,n=(n|n<<s)&c}return 0x4000000000000000n|1n<<59n|e<<52n|(t|n<<1n)>>12n|0xfffffffffffffn>>e*2n}function xk(r){const e=r>>59n&7n,t=r>>57n&3n,n=r>>52n&0x1fn,i=(r&0xfffffffffffffn)<<12n;if(e!==1n&&t!==0n)throw new Error("Wrong mode");let o=i,s=i>>1n;for(let c=0;c<6;c++){const f=bk[c],_=vk[c];o=(o|o>>f)&_,s=(s|s>>f)&_}return o=o>>32n-n,s=s>>32n-n,{z:Number(n),x:Number(o),y:Number(s)}}function cE(r){return r>>52n&0x1fn}function wk(r){const e=cE(r)-1n;return r&~(0x1fn<<52n)|e<<52n|0xfffffffffffffn>>e*2n}function rh(r,e){$r.assert(r,e)}function _2e(r,e){const{properties:t,numericProps:n}=r;return new Proxy(t[e]||{},{get(i,o){return o in n?n[o].value[e]:i[o]},has(i,o){return o in n||o in i},ownKeys(i){return[...Object.keys(n),...Reflect.ownKeys(i)]},getOwnPropertyDescriptor(i,o){return{enumerable:!0,configurable:!0}}})}function Ky(r,e){return`https://unpkg.com/@deck.gl/carto@${e}/dist/${r}-worker.js`}const eg=new Uint16Array,J1={positions:{value:new Float32Array,size:2},properties:[],numericProps:{},featureIds:{value:eg,size:1},globalFeatureIds:{value:eg,size:1}};function Ck(){return{shape:"binary-feature-collection",points:{type:"Point",...J1},lines:{type:"LineString",pathIndices:{value:eg,size:1},...J1},polygons:{type:"Polygon",polygonIndices:{value:eg,size:1},primitivePolygonIndices:{value:eg,size:1},...J1}}}function lE(r,e,t,n,i,o=2){return{type:"Point",positions:{value:new Float32Array(r),size:o},featureIds:{value:new Uint16Array(e),size:1},globalFeatureIds:{value:new Uint32Array(t),size:1},numericProps:n,properties:i}}function Ek(r,e){const t={};return e&&Object.keys(e).forEach(n=>{t[n]={value:new Float32Array(r),size:1}}),t}function Tk(r,e,t,n){Object.keys(r).forEach(i=>{e[i].value[n]=r[i].value[t]})}function y2e(r,e,t,n=[],i,o){var f;if(!r.content)return!1;r.userData||(r.userData={});const s=(f=e.get(t))==null?void 0:f[0];if(s){if(n.every(_=>_.name in s))return!1;e.clear()}const c={};for(const _ of r.content){let b=_.id;const T=typeof i=="function"?i(_,{}):i;for(let W=0;W<t-1;W++)b=wk(b);const S=Number(b);if(!(S in c)){c[S]={id:b,count:0,position:[0,0]};for(const{name:W,aggregation:z}of n)z==="any"?c[S][W]=_.properties[W]:c[S][W]=0}const D=c[S].count;c[S].count+=typeof o=="function"?o(_,{}):o;const k=c[S].count,G=k-D;c[S].position[0]=(D*c[S].position[0]+G*T[0])/k,c[S].position[1]=(D*c[S].position[1]+G*T[1])/k;for(const{name:W,aggregation:z}of n){const j=c[S][W],K=_.properties[W];z==="average"?c[S][W]=(D*j+G*K)/k:z==="count"||z==="sum"?c[S][W]=j+K:z==="max"?c[S][W]=Math.max(j,K):z==="min"&&(c[S][W]=Math.min(j,K))}}return e.set(t,Object.values(c)),!0}function v2e(r){const e=[],t=["any","average","count","min","max","sum"];for(const n of Object.keys(r.content[0].properties)){let i=n.split("_").pop().toLowerCase();t.includes(i)||($r.warn(`No valid aggregation present in ${n} property`)(),i="any"),e.push({name:n,aggregation:i})}return e}function b2e(r,e){const t={};for(const{name:n,aggregation:i}of e)if(t[n]={min:1/0,max:-1/0},i!=="any")for(const o of r)t[n].min=Math.min(t[n].min,o[n]),t[n].max=Math.max(t[n].max,o[n]);return t}function x2e(r){const e=new Float32Array(r.length*2),t=new Uint16Array(r.length);for(let n=0;n<r.length;n++)e.set(r[n].position,2*n),t[n]=n;return{...Ck(),points:lE(e,t,t,{},r)}}const LA=512;class uE extends Fy{getTileIndices(e){return super.getTileIndices(e).map(m2e).map(t=>({q:t,i:jx(t)}))}getTileId({q:e,i:t}){return t||jx(e)}getTileMetadata({q:e}){return super.getTileMetadata(xk(e))}getTileZoom({q:e}){return Number(cE(e))}getParentIndex({q:e}){return{q:wk(e)}}}const OF=512;function Bk(r){const{x:e,y:t,z:n}=xk(r),i=OF/(1<<n);return[e*i,OF-t*i,i]}function w2e(r,e){const[t,n,i]=Bk(r);return[[t,n],[t+e*i,n-e*i]]}function Sk(r,e=1){const[t,n]=w2e(r,e),[i,o]=Qc(t),[s,c]=Qc(n);return[s,o,s,c,i,c,i,o,s,o]}const Am=!!(typeof process!="object"||String(process)!=="[object process]"||process.browser),DF=typeof process<"u"&&process.version&&/v([0-9]*)/.exec(process.version);DF&&parseFloat(DF[1]);function C2e(r){var e;globalThis.loaders||(globalThis.loaders={}),(e=globalThis.loaders).modules||(e.modules={}),Object.assign(globalThis.loaders.modules,r)}function E2e(...r){return T2e(r)}function T2e(r){const e=r.map(o=>o instanceof ArrayBuffer?new Uint8Array(o):o),t=e.reduce((o,s)=>o+s.byteLength,0),n=new Uint8Array(t);let i=0;for(const o of e)n.set(o,i),i+=o.byteLength;return n.buffer}async function B2e(r){const e=[];for await(const t of r)e.push(t);return E2e(...e)}function S2e(r){return r&&typeof r=="object"&&r.isBuffer}function pm(r){if(S2e(r))return r;if(r instanceof ArrayBuffer)return r;if(ArrayBuffer.isView(r))return r.byteOffset===0&&r.byteLength===r.buffer.byteLength?r.buffer:r.buffer.slice(r.byteOffset,r.byteOffset+r.byteLength);if(typeof r=="string"){const e=r;return new TextEncoder().encode(e).buffer}if(r&&typeof r=="object"&&r._toArrayBuffer)return r._toArrayBuffer();throw new Error("toArrayBuffer")}function gm(r){return e=>new Promise((t,n)=>r(e,(i,o)=>i?n(i):t(o)))}class I2e{constructor(e){this.compressBatches=this.compressBatches.bind(this),this.decompressBatches=this.decompressBatches.bind(this)}async preload(e={}){C2e(e)}async compress(e){return await this.preload(),this.compressSync(e)}async decompress(e,t){return await this.preload(),this.decompressSync(e,t)}compressSync(e){throw new Error(`${this.name}: sync compression not supported`)}decompressSync(e,t){throw new Error(`${this.name}: sync decompression not supported`)}async*compressBatches(e){const t=await this.concatenate(e);yield this.compress(t)}async*decompressBatches(e){const t=await this.concatenate(e);yield this.decompress(t)}concatenate(e){return B2e(e)}improveError(e){return e.message.includes(this.name)||(e.message=`${this.name} ${e.message}`),e}}class M2e extends I2e{constructor(t={}){super(t);V(this,"name","deflate");V(this,"extensions",[]);V(this,"contentEncodings",["deflate"]);V(this,"isSupported",!0);V(this,"options");V(this,"_chunks",[]);this.options=t}async compress(t){var n,i;if(!Am&&((n=this.options.deflate)!=null&&n.useZlib)){const o=(i=this.options.deflate)!=null&&i.gzip?await gm(yu.gzip)(t):await gm(yu.deflate)(t);return pm(o)}return this.compressSync(t)}async decompress(t){var n,i;if(!Am&&((n=this.options.deflate)!=null&&n.useZlib)){const o=(i=this.options.deflate)!=null&&i.gzip?await gm(yu.gunzip)(t):await gm(yu.inflate)(t);return pm(o)}return this.decompressSync(t)}compressSync(t){var s,c,f,_;if(!Am&&((s=this.options.deflate)!=null&&s.useZlib)){const b=(c=this.options.deflate)!=null&&c.gzip?yu.gzipSync(t):yu.deflateSync(t);return pm(b)}const n=((f=this.options)==null?void 0:f.deflate)||{},i=new Uint8Array(t);return((_=this.options)!=null&&_.raw?Sd.deflateRaw:Sd.deflate)(i,n).buffer}decompressSync(t){var s,c,f,_;if(!Am&&((s=this.options.deflate)!=null&&s.useZlib)){const b=(c=this.options.deflate)!=null&&c.gzip?yu.gunzipSync(t):yu.inflateSync(t);return pm(b)}const n=((f=this.options)==null?void 0:f.deflate)||{},i=new Uint8Array(t);return((_=this.options)!=null&&_.raw?Sd.inflateRaw:Sd.inflate)(i,n).buffer}async*compressBatches(t){var o;const n=((o=this.options)==null?void 0:o.deflate)||{},i=new Sd.Deflate(n);yield*this.transformBatches(i,t)}async*decompressBatches(t){var o;const n=((o=this.options)==null?void 0:o.deflate)||{},i=new Sd.Inflate(n);yield*this.transformBatches(i,t)}async*transformBatches(t,n){t.onData=this._onData.bind(this),t.onEnd=this._onEnd.bind(this);for await(const s of n){const c=new Uint8Array(s);if(!t.push(c,!1))throw new Error(`${this._getError()}write`);yield*this._getChunks()}const i=new Uint8Array(0);t.push(i,!0),yield*this._getChunks()}_onData(t){this._chunks.push(t)}_onEnd(t){if(t!==0)throw new Error(this._getError(t)+this._chunks.length)}_getChunks(){const t=this._chunks;return this._chunks=[],t}_getError(t=0){const n={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"};return`${this.name}: ${n[t]}`}}class P2e extends M2e{constructor(t){super({...t,deflate:{...t==null?void 0:t.gzip,gzip:!0}});V(this,"name","gzip");V(this,"extensions",["gz","gzip"]);V(this,"contentEncodings",["gzip","x-gzip"]);V(this,"isSupported",!0)}}function Yy(r,e,t,n){const i=e.type===2?e.readVarint()+e.pos:e.pos+1,o=e.buf.buffer.slice(e.pos,i);if((n==null?void 0:n.compression)==="gzip"){const c=new P2e().decompressSync(o);t.value=new r(c)}else t.value=new r(o);return e.pos=i,t.value}class fE{static read(e,t){return e.readFields(fE._readField,{key:"",value:null},t)}static _readField(e,t,n){e===1?t.key=n.readString():e===2&&(t.value=n.readString())}}class gh{static read(e,t){return e.readFields(gh._readField,{},t)}static _readField(e,t,n){if(e===1){const{key:i,value:o}=fE.read(n,n.readVarint()+n.pos);t[i]=o}}}class zg{static read(e,t){const{value:n,size:i}=e.readFields(zg._readField,{value:[],size:0},t);return{value:n,size:i}}static _readField(e,t,n){e===1?Yy(Float64Array,n,t):e===2&&(t.size=n.readVarint(!0))}}class Ta{static read(e,t){const{value:n,size:i}=e.readFields(Ta._readField,{value:[],size:0},t);return{value:new Uint32Array(n),size:i}}static _readField(e,t,n){e===1?n.readPackedVarint(t.value):e===2&&(t.size=n.readVarint(!0))}}class Gg{static read(e,t){return e.readFields(Gg._readField,{id:0},t)}static _readField(e,t,n){e===1&&(t.id=n.readVarint())}}class hE{static read(e,t){return e.readFields(hE._readField,{value:[]},t)}static _readField(e,t,n){e===1&&Yy(Float64Array,n,t)}}class mh{static read(e,t){return e.readFields(mh._readField,{key:"",value:null},t)}static _readField(e,t,n){e===1?t.key=n.readString():e===2&&(t.value=hE.read(n,n.readVarint()+n.pos))}}class dE{static read(e,t){return e.readFields(dE._readField,{positions:null,globalFeatureIds:null,featureIds:null,properties:[],numericProps:{},fields:[]},t)}static _readField(e,t,n){if(e===1)t.positions=zg.read(n,n.readVarint()+n.pos);else if(e===2)t.globalFeatureIds=Ta.read(n,n.readVarint()+n.pos);else if(e===3)t.featureIds=Ta.read(n,n.readVarint()+n.pos);else if(e===4)t.properties.push(gh.read(n,n.readVarint()+n.pos));else if(e===5){const i=mh.read(n,n.readVarint()+n.pos);t.numericProps[i.key]=i.value}else e===6&&t.fields.push(Gg.read(n,n.readVarint()+n.pos))}}class AE{static read(e,t){return e.readFields(AE._readField,{positions:null,pathIndices:null,globalFeatureIds:null,featureIds:null,properties:[],numericProps:{},fields:[]},t)}static _readField(e,t,n){if(e===1)t.positions=zg.read(n,n.readVarint()+n.pos);else if(e===2)t.pathIndices=Ta.read(n,n.readVarint()+n.pos);else if(e===3)t.globalFeatureIds=Ta.read(n,n.readVarint()+n.pos);else if(e===4)t.featureIds=Ta.read(n,n.readVarint()+n.pos);else if(e===5)t.properties.push(gh.read(n,n.readVarint()+n.pos));else if(e===6){const i=mh.read(n,n.readVarint()+n.pos);t.numericProps[i.key]=i.value}else e===7&&t.fields.push(Gg.read(n,n.readVarint()+n.pos))}}class pE{static read(e,t){return e.readFields(pE._readField,{positions:null,polygonIndices:null,globalFeatureIds:null,featureIds:null,primitivePolygonIndices:null,triangles:null,properties:[],numericProps:{},fields:[]},t)}static _readField(e,t,n){if(e===1)t.positions=zg.read(n,n.readVarint()+n.pos);else if(e===2)t.polygonIndices=Ta.read(n,n.readVarint()+n.pos);else if(e===3)t.globalFeatureIds=Ta.read(n,n.readVarint()+n.pos);else if(e===4)t.featureIds=Ta.read(n,n.readVarint()+n.pos);else if(e===5)t.primitivePolygonIndices=Ta.read(n,n.readVarint()+n.pos);else if(e===6)t.triangles=Ta.read(n,n.readVarint()+n.pos);else if(e===7)t.properties.push(gh.read(n,n.readVarint()+n.pos));else if(e===8){const i=mh.read(n,n.readVarint()+n.pos);t.numericProps[i.key]=i.value}else e===9&&t.fields.push(Gg.read(n,n.readVarint()+n.pos))}}let R2e=class Ik{static read(e,t){return e.readFields(Ik._readField,{points:null,lines:null,polygons:null},t)}static _readField(e,t,n){e===1?t.points=dE.read(n,n.readVarint()+n.pos):e===2?t.lines=AE.read(n,n.readVarint()+n.pos):e===3&&(t.polygons=pE.read(n,n.readVarint()+n.pos))}};class gE{static read(e,t){return e.readFields(gE._readField,{value:[]},t)}static _readField(e,t,n){e===1&&Yy(BigUint64Array,n,t)}}class mE{static read(e,t){return e.readFields(mE._readField,{indices:null,properties:[],numericProps:{}},t)}static _readField(e,t,n){if(e===1)t.indices=gE.read(n,n.readVarint()+n.pos);else if(e===2)t.properties.push(gh.read(n,n.readVarint()+n.pos));else if(e===3){const i=mh.read(n,n.readVarint()+n.pos);t.numericProps[i.key]=i.value}}}let F2e=class Mk{static read(e,t){return e.readFields(Mk._readField,{scheme:0,cells:null},t)}static _readField(e,t,n){e===1?t.scheme=n.readVarint():e===2&&(t.cells=mE.read(n,n.readVarint()+n.pos))}};function qy(r,e){const t=new J1e(r);return e.read(t)}function O2e(r){const{cells:e,scheme:t}=r,n=e.indices.value.length,i=[];for(let o=0;o<n;o++){const s=t==="h3"?jx(e.indices.value[o]):e.indices.value[o],c={...e.properties[o]};for(const f of Object.keys(e.numericProps))c[f]=e.numericProps[f].value[o];i.push({id:s,properties:c})}return i}const Pk="9.1.12",Rk="cartoSpatialTile",D2e={cartoSpatialTile:{scheme:"quadbin",workerUrl:Ky(Rk,Pk)}},Fk={name:"CARTO Spatial Tile",version:Pk,id:Rk,module:"carto",extensions:["pbf"],mimeTypes:["application/vnd.carto-spatial-tile"],category:"geometry",parse:async(r,e)=>LF(r,e),parseSync:LF,worker:!0,options:D2e};function LF(r,e){var s;if(!r)return null;const t=qy(r,F2e),{cells:n}=t,i=(s=e==null?void 0:e.cartoSpatialTile)==null?void 0:s.scheme;return O2e({cells:n,scheme:i})}function NA(r,e,t=0){if(!r)return e;if(!e)return r;if(t>10)return e;const n={...r};for(const i in e){const o=e[i];o===r||o===e||(typeof o=="object"&&o!==null?n[i]=NA(r[i],o,t+1):n[i]=o)}return n}function L2e(r,e){const t={};for(const{geoid:n,...i}of e.properties)n in t?$r.warn("Duplicate geoid key in boundary mapping, using first occurance")():t[n]=i;for(const n of["points","lines","polygons"]){const i=r[n];if(i.positions.value.length===0)continue;i.properties=i.properties.map(({geoid:_})=>t[_]);const{positions:o,globalFeatureIds:s}=i;let c=null;n==="lines"&&(c=i.pathIndices.value),n==="polygons"&&(c=i.polygonIndices.value);const f=o.value.length/o.size;for(const _ in e.numericProps){const b=e.numericProps[_].value,T=b.constructor,S=new T(f);if(i.numericProps[_]={value:S,size:1},c)for(let D=0;D<c.length-1;D++){const k=c[D],G=c[D+1],W=s.value[k];S.fill(b[W],k,G)}else for(let D=0;D<f;D++){const k=s.value[D];S[D]=b[k]}}}return r}const nh={type:"object",value:null,validate:(r,e)=>e.optional&&r===null||typeof r=="object"&&Array.isArray(r.tiles)&&r.tiles.every(t=>typeof t=="string"),equal:(r,e)=>Ki(r,e,2),async:!0};Ig([Fk]);const Ok={data:nh,clusterLevel:{type:"number",value:5,min:1},getPosition:{type:"accessor",value:({id:r})=>Sk(r,.5).slice(2,4)},getWeight:{type:"accessor",value:1},refinementStrategy:"no-overlap",tileSize:LA};class _E extends Wl{initializeState(){super.initializeState(),this.state.aggregationCache=new WeakMap}renderLayers(){var S;const e=(S=this.state.tileset)==null?void 0:S.tiles.filter(D=>D.isLoaded&&D.content&&this.state.tileset.isTileVisible(D));if(!(e!=null&&e.length))return null;e.sort((D,k)=>k.zoom-D.zoom);const{zoom:t}=this.context.viewport,{clusterLevel:n,getPosition:i,getWeight:o}=this.props,{aggregationCache:s}=this.state,c=v2e(e[0]),f=[];let _=!1;for(const D of e){const k=Math.round(t-D.zoom),G=Math.round(n)-k;let W=s.get(D.content);W||(W=new Map,s.set(D.content,W));const z=y2e(D,W,G,c,i,o);_||(_=z),f.push(...W.get(G))}f.sort((D,k)=>Number(k.count-D.count));const b=f==null?void 0:f.map(D=>D.id);if(_||(_=!Ki(b,this.state.clusterIds,1)),this.setState({clusterIds:b}),_){const D=b2e(f,c),k=x2e(f);k.points.attributes={stats:D},this.setState({data:k})}const T={...this.props,id:"clusters",data:this.state.data,dataComparator:(D,k)=>{var z,j,K,fe;const G=(j=(z=D==null?void 0:D.points)==null?void 0:z.properties)==null?void 0:j.map(Z=>Z.id),W=(fe=(K=k==null?void 0:k.points)==null?void 0:K.properties)==null?void 0:fe.map(Z=>Z.id);return Ki(G,W,1)}};return new jl(this.getSubLayerProps(T))}getPickingInfo(e){const t=e.info;if(t.index!==-1){const{data:n}=e.sourceLayer.props;t.object=Hx(n,{globalFeatureId:t.index})}return t}_updateAutoHighlight(e){for(const t of this.getSubLayers())t.updateAutoHighlight(e)}filterSubLayer(){return!0}}_E.layerName="ClusterGeoJsonLayer";_E.defaultProps=Ok;class yE extends ys{getLoadOptions(){const e=this.props.data;return NA(super.getLoadOptions(),{fetch:{headers:{Authorization:`Bearer ${e.accessToken}`}},cartoSpatialTile:{scheme:"quadbin"}})}renderLayers(){const e=this.props.data;if(!e)return null;const{tiles:t,maxresolution:n}=e;return[new _E(this.props,{id:`cluster-geojson-layer-${this.props.id}`,data:t,TilesetClass:uE,maxZoom:n,loadOptions:this.getLoadOptions()})]}}yE.layerName="ClusterTileLayer";yE.defaultProps=Ok;const N2e=85.051128;function k2e({west:r,north:e,east:t,south:n},i){const c=[[e,t],[n,t],[n,r],[e,r]].map(b=>MC(b[0],b[1],i)).map(b=>Math.max(...iAe(b).map(T=>oAe(T,hA.rads)))*180/Math.PI),f=Math.max(...c),_=Math.min(180,f/Math.cos((e+n)/2*Math.PI/180));return{north:Math.min(e+f,N2e),east:t+_,south:Math.max(n-f,-85.051128),west:r-_}}function Dk({west:r,north:e,east:t,south:n},i){const o=Math.abs(t-r);if(o>180){const c=Math.ceil(o/180);let f=[];for(let _=0;_<c;_++){const b=r+_*180,T=Math.min(b+179.9999999,t);f=f.concat(Dk({west:b,north:e,east:T,south:n},i))}return[...new Set(f)]}return rAe([[e,t],[n,t],[n,r],[e,r],[e,t]],i)}function U2e(r){const e=H8(r),t=e.map(f=>f[0]),n=e.map(f=>f[1]),i=Math.min(...n),o=Math.min(...t),s=Math.max(...n),c=Math.max(...t);return{west:i,south:o,east:s,north:c}}const z2e=2;function $x(r,e){const t=Math.log2(e/512),n=2/3*(r.zoom-t),i=Math.log(1/Math.cos(Math.PI*r.latitude/180));return Math.max(0,Math.floor(n+i-z2e))}class G2e extends Fy{getTileIndices({viewport:e,minZoom:t,maxZoom:n}){if(e.latitude===void 0)return[];const[i,o,s,c]=e.getBounds(),{tileSize:f}=this.opts;let _=$x(e,f),b;if(typeof t=="number"&&Number.isFinite(t)&&_<t)return[];if(typeof n=="number"&&Number.isFinite(n)&&_>n){_=n;const T=MC(e.latitude,e.longitude,n);b=tAe(T,1)}else{const T=k2e({west:i,north:c,east:s,south:o},_);b=Dk(T,_)}return b.map(T=>({i:T}))}getTileId({i:e}){return e}getTileMetadata({i:e}){return{bbox:U2e(e)}}getTileZoom({i:e}){return Ix(e)}getParentIndex(e){const t=Ix(e.i);return{i:eAe(e.i,t-1)}}}Ig([Fk]);function V2e(r){return r!=null&&r!==""}const H2e={tileSize:LA};class Zy extends Wl{_updateAutoHighlight(e){const{hoveredFeatureId:t}=this.state,n=e.object;let i=null;if(n&&(i=n.id),t!==i){let{highlightColor:o}=this.props;typeof o=="function"&&(o=o(e)),this.setState({highlightColor:o,hoveredFeatureId:i})}}getSubLayerPropsByTile(e){return{highlightedObjectIndex:this.getHighlightedObjectIndex(e),highlightColor:this.state.highlightColor}}getHighlightedObjectIndex(e){const{hoveredFeatureId:t}=this.state,n=e.content;return!V2e(t)||!Array.isArray(n)||!this._featureInTile(e,t)?-1:n.findIndex(o=>o.id===t)}_featureInTile(e,t){const n=this.state.tileset,i=n.getTileZoom(e.index),o=e.index.q?"q":"i";let s={[o]:t},c=n.getTileZoom(s);for(;!(c<=i);)s=n.getParentIndex(s),c=n.getTileZoom(s);return s[o]===e.index[o]}}Zy.layerName="SpatialIndexTileLayer";Zy.defaultProps=H2e;const j2e=r=>{const{data:e}=r,{index:t}=r.tile;return!e||!e.length?null:new sl(r,{getHexagon:n=>n.id,centerHexagon:t,highPrecision:!0})},$2e={data:nh,tileSize:LA};class vE extends ys{initializeState(){sl._checkH3Lib()}getLoadOptions(){const e=this.props.data;return NA(super.getLoadOptions(),{fetch:{headers:{Authorization:`Bearer ${e.accessToken}`}},cartoSpatialTile:{scheme:"h3"}})}renderLayers(){const e=this.props.data;if(!e)return null;const{tiles:t}=e;let{minresolution:n,maxresolution:i}=e;this.props.minZoom&&(n=Math.max(n,$x({zoom:this.props.minZoom,latitude:0},this.props.tileSize))),this.props.maxZoom&&(i=Math.min(i,$x({zoom:this.props.maxZoom,latitude:0},this.props.tileSize)));const o=this.getSubLayerClass("spatial-index-tile",Zy);return new o(this.props,{id:`h3-tile-layer-${this.props.id}`,data:t,TilesetClass:G2e,renderSubLayers:j2e,minZoom:n,maxZoom:i,loadOptions:this.getLoadOptions()})}}vE.layerName="H3TileLayer";vE.defaultProps=$2e;const W2e=`uniform heatmapUniforms {
|
4688
4688
|
vec2 colorDomain;
|
4689
4689
|
vec2 delta;
|
4690
4690
|
float intensity;
|
@@ -4843,7 +4843,7 @@ vColor = vec4(color.rgb, color.a * layer.opacity);
|
|
4843
4843
|
}
|
4844
4844
|
DECKGL_FILTER_COLOR(vColor, geometry);
|
4845
4845
|
}
|
4846
|
-
`,lxe={...il.defaultProps,extruded:!1,diskResolution:4,vertices:[[-.5,-.5],[.5,-.5],[.5,.5],[-.5,.5]]};class Hk extends Nk(il){getShaders(){const e=super.getShaders(),t=this.props.data,n=t.data.blockSize??Math.sqrt(t.length);return{...e,defines:{...e.defines,BLOCK_WIDTH:n},vs:cxe}}initializeState(){this.getAttributeManager().addInstanced({instanceElevations:{size:1,transition:!0,accessor:"getElevation"},instanceFillColors:{size:this.props.colorFormat.length,type:"unorm8",transition:!0,accessor:"getFillColor",defaultValue:[0,0,0,255]},instanceLineColors:{size:this.props.colorFormat.length,type:"unorm8",transition:!0,accessor:"getLineColor",defaultValue:[255,255,255,255]}})}}Hk.layerName="RasterColumnLayer";function uxe(r,e){return r.data===e.data&&r.length===e.length}class wE extends ys{renderLayers(){const{data:e,getElevation:t,getFillColor:n,getLineColor:i,getLineWidth:o,tileIndex:s,updateTriggers:c}=this.props;if(!e||!s)return null;const f=e.blockSize??0,[_,b,T]=Bk(s),S=[_,b],D=T/f,k=this.getSubLayerClass("column",Hk),{highlightedObjectIndex:G,highlightColor:W}=this.state;return new k(this.props,this.getSubLayerProps({id:"cell",updateTriggers:c,getElevation:this.getSubLayerAccessor(t),getFillColor:this.getSubLayerAccessor(n),getLineColor:this.getSubLayerAccessor(i),getLineWidth:this.getSubLayerAccessor(o)}),{data:{data:e,length:f*f},dataComparator:uxe,offset:S,lineWidthScale:D,highlightedObjectIndex:G,highlightColor:W,parameters:{blendColorSrcFactor:"one",blendAlphaSrcFactor:"one",blendColorDstFactor:"zero",blendAlphaDstFactor:"zero",blendColorOperation:"add",blendAlphaOperation:"add"}})}getSubLayerAccessor(e){return typeof e!="function"?super.getSubLayerAccessor(e):(t,n)=>{const{data:i,index:o}=n,s=i.data,c=_2e(s.cells,o);return e({properties:c},n)}}getPickingInfo(e){const t=super.getPickingInfo(e);return t.index!==-1&&(t.object=this.getSubLayerAccessor(n=>n)(void 0,{data:this.props,index:t.index})),t}_updateAutoHighlight(e){const{highlightedObjectIndex:t}=this.state;let n=-1;if(e.index!==-1&&(n=e.index),t!==n){let{highlightColor:i}=this.props;typeof i=="function"&&(i=i(e)),this.setState({highlightColor:i,highlightedObjectIndex:n})}}}wE.layerName="RasterLayer";wE.defaultProps=lxe;const fxe={uint8:Uint8Array,uint16:Uint16Array,uint32:Uint32Array,uint64:BigUint64Array,int8:Int8Array,int16:Int16Array,int32:Int32Array,int64:BigInt64Array,float32:Float32Array,float64:Float64Array};class CE{static read(e,t){return e.readFields(CE._readField,{name:"",type:"",data:null},t)}static _readField(e,t,n){if(e===1)t.name=n.readString();else if(e===2)t.type=n.readString();else if(e===3){const i=fxe[t.type];if(!i)throw Error(`Invalid data type: ${t.type}`);t.data={};const{compression:o}=Jx;Yy(i,n,t.data,{compression:o})}}}let Jx=class jk{static read(e,t){return e.readFields(jk._readField,{blockSize:0,bands:[]},t)}static _readField(e,t,n){e===1?t.blockSize=n.readVarint():e===2&&t.bands.push(CE.read(n,n.readVarint()+n.pos))}};const $k="9.1.11",Wk="cartoRasterTile",hxe={cartoRasterTile:{metadata:null,workerUrl:Ky(Wk,$k)}},dxe={name:"CARTO Raster Tile",version:$k,id:Wk,module:"carto",extensions:["pbf"],mimeTypes:["application/vnd.carto-raster-tile"],category:"geometry",parse:async(r,e)=>GF(r,e),parseSync:GF,worker:!0,options:hxe};function GF(r,e){var c;const t=(c=e==null?void 0:e.cartoRasterTile)==null?void 0:c.metadata;if(!r||!t)return null;Jx.compression=t.compression;const n=qy(r,Jx),{bands:i,blockSize:o}=n,s={};for(let f=0;f<i.length;f++){const{name:_,data:b}=i[f];s[_]=b}return{blockSize:o,cells:{numericProps:s,properties:[]}}}Ig([dxe]);const Axe=r=>{var t,n;const e=(n=(t=r.tile)==null?void 0:t.index)==null?void 0:n.q;return e?new wE(r,{tileIndex:e}):null},pxe={data:nh,refinementStrategy:"no-overlap",tileSize:LA};class gxe extends kk(Wl,Y2e){filterSubLayer(e){const{tile:t}=e.layer.props;return t?super.filterSubLayer(e):!0}}class EE extends ys{getLoadOptions(){const e=this.props.data;return NA(super.getLoadOptions(),{fetch:{headers:{Authorization:`Bearer ${e.accessToken}`}}})}renderLayers(){const e=this.props.data;if(!e)return null;const{tiles:t,minzoom:n,maxzoom:i,raster_metadata:o}=e,s=this.getSubLayerClass("tile",gxe),c=this.getLoadOptions();return new s(this.props,{id:`raster-tile-layer-${this.props.id}`,data:t,TilesetClass:uE,renderSubLayers:Axe,minZoom:n,maxZoom:i,loadOptions:{...c,cartoRasterTile:{...c==null?void 0:c.cartoRasterTile,metadata:o}}})}}EE.layerName="RasterTileLayer";EE.defaultProps=pxe;class TE{static read(e,t){return e.readFields(TE._readField,{properties:[],numericProps:{}},t)}static _readField(e,t,n){if(e===1)t.properties.push(gh.read(n,n.readVarint()+n.pos));else if(e===2){const i=mh.read(n,n.readVarint()+n.pos);t.numericProps[i.key]=i.value}}}const Jk="9.1.11",Xk="cartoPropertiesTile",mxe={cartoPropertiesTile:{workerUrl:Ky(Xk,Jk)}},_xe={name:"CARTO Properties Tile",version:Jk,id:Xk,module:"carto",extensions:["pbf"],mimeTypes:["application/vnd.carto-properties-tile"],category:"geometry",worker:!0,parse:async(r,e)=>VF(r),parseSync:VF,options:mxe};function VF(r,e){return r?qy(r,TE):null}const Kk="9.1.11",Yk="cartoVectorTile",yxe={cartoVectorTile:{workerUrl:Ky(Yk,Kk)}},vxe={name:"CARTO Vector Tile",version:Kk,id:Yk,module:"carto",extensions:["pbf"],mimeTypes:["application/vnd.carto-vector-tile"],category:"geometry",parse:async(r,e)=>HF(r),parseSync:HF,worker:!0,options:yxe};function bxe(r,e,{startPosition:t,endPosition:n,indices:i}){const o=r.positions.size,s=t*o,c=n*o,f=r.positions.value.subarray(s,c),_=i.slice(1).map(T=>T-t),b=r8(f,_,o);for(let T=0,S=b.length;T<S;++T)e.push(t+b[T])}function xxe(r){const{polygonIndices:e,primitivePolygonIndices:t}=r,n=[];let i=0;for(let o=0;o<e.value.length-1;o++){const s=e.value[o],c=e.value[o+1],f=t.value.indexOf(c),_=t.value.subarray(i,f);i=f,bxe(r,n,{startPosition:s,endPosition:c,indices:_})}r.triangles={value:new Uint32Array(n),size:1}}function HF(r,e){if(!r)return null;const t=qy(r,R2e);return t.polygons&&!t.polygons.triangles&&xxe(t.polygons),t}function wxe(r,e){const t=e?e in r.numericProps:!1,n=new Map;for(let b=0;b<r.pathIndices.value.length-1;b++){const T=r.pathIndices.value[b],S=r.featureIds.value[T];let D;e===void 0?D=S:t?D=r.numericProps[e].value[T]:r.properties[S]&&e in r.properties[S]?D=r.properties[S][e]:D=void 0;const k=Mxe(r,b);(!n.has(D)||k>n.get(D).length)&&n.set(D,{index:b,length:k})}const i=[],o=[],s=[],c=[],f=Ek(n.size,r.numericProps);let _=0;for(const[b,{index:T}]of n){const S=Pxe(r,T);i.push(...S);const D=r.pathIndices.value[T],k=r.featureIds.value[D];s.push(_),o.push(r.properties[k]),c.push(r.globalFeatureIds.value[D]),Tk(r.numericProps,f,D,_),_++}return lE(i,s,c,f,o)}function Cxe(r,e,t){const{west:n,south:i,east:o,north:s}=e,f=(o-n)*(s-i)*1e-4,_=[],b=[],T=[],S=[],D=Ek(r.polygonIndices.value.length-1,r.numericProps);let k=0,G=0;const{extruded:W}=t;for(let z=0;z<r.polygonIndices.value.length-1;z++){const j=r.polygonIndices.value[z],K=r.polygonIndices.value[z+1];if(Exe(r,z)<f)continue;const fe=Sxe(r,z);let Z=-1,ae=[0,0],Be=!1;for(;G<r.triangles.value.length;){const de=r.triangles.value[G];if(de>=K)break;if(Be){G+=3;continue}const _e=r.triangles.value[G+1],pe=r.triangles.value[G+2],J=r.positions.value.subarray(de*r.positions.size,de*r.positions.size+r.positions.size),te=r.positions.value.subarray(_e*r.positions.size,_e*r.positions.size+r.positions.size),be=r.positions.value.subarray(pe*r.positions.size,pe*r.positions.size+r.positions.size);if(Bxe(fe,J,te,be))Be=!0;else{const Qe=qk(J,te,be);Qe>Z&&(Z=Qe,ae=[(J[0]+te[0]+be[0])/3,(J[1]+te[1]+be[1])/3])}G+=3}const Ne=Be?fe:ae;if(Txe(Ne,e)){_.push(...Ne);const de=r.featureIds.value[j];if(W){const _e=t.getElevation(void 0,{data:r,index:de});_.push(_e*t.elevationScale)}b.push(r.properties[de]),T.push(k),S.push(r.globalFeatureIds.value[j]),Tk(r.numericProps,D,j,k),k++}}return r.numericProps&&Object.keys(D).forEach(z=>{D[z].value=D[z].value.slice(0,k)}),lE(_,T,S,D,b,W?3:2)}function Exe(r,e){const{positions:{value:t,size:n},polygonIndices:{value:i},triangles:{value:o}}=r,s=i[e],c=i[e+1];let f=0,_=0;for(;_<o.length&&!(o[_]>=s);)_+=3;for(;_<o.length;){const b=o[_];if(b>=c)break;const T=o[_+1],S=o[_+2],D=t.subarray(b*n,b*n+n),k=t.subarray(T*n,T*n+n),G=t.subarray(S*n,S*n+n);f+=qk(D,k,G),_+=3}return f}function Txe([r,e],{west:t,east:n,south:i,north:o}){return r>=t&&r<n&&e>=i&&e<o}function Bxe(r,e,t,n){const i=Math.abs((t[0]-e[0])*(n[1]-e[1])-(n[0]-e[0])*(t[1]-e[1]))/2,o=Math.abs((e[0]-r[0])*(t[1]-r[1])-(t[0]-r[0])*(e[1]-r[1]))/2,s=Math.abs((t[0]-r[0])*(n[1]-r[1])-(n[0]-r[0])*(t[1]-r[1]))/2,c=Math.abs((n[0]-r[0])*(e[1]-r[1])-(e[0]-r[0])*(n[1]-r[1]))/2;return Math.abs(i-(o+s+c))<1e-10}function qk([r,e],[t,n],[i,o]){return Math.abs((r*(n-o)+t*(o-e)+i*(e-n))/2)}function Sxe(r,e){const{positions:{value:t,size:n}}=r,i=n*r.polygonIndices.value[e],o=n*r.polygonIndices.value[e+1];let s=1/0,c=1/0,f=-1/0,_=-1/0;for(let b=i;b<o;b+=n){const[T,S]=t.subarray(b,b+2);s=Math.min(s,T),c=Math.min(c,S),f=Math.max(f,T),_=Math.max(_,S)}return[(s+f)/2,(c+_)/2]}function Ixe(r,e){const{positions:{value:t}}=r,[n,i,o,s]=t.subarray(e,e+4);return Math.sqrt(Math.pow(o-n,2)+Math.pow(s-i,2))}function Mxe(r,e){const{positions:{size:t}}=r,n=t*r.pathIndices.value[e],i=t*r.pathIndices.value[e+1];let o=0;for(let s=n;s<i;s+=t)o+=Ixe(r,s);return o}function Pxe(r,e){const{positions:{value:t},pathIndices:{value:n}}=r,i=n[e]*2,s=(n[e+1]*2-i)/2;if(s===2){const[f,_,b,T]=t.subarray(i,i+4);return[(f+b)/2,(_+T)/2]}const c=i+Math.floor(s/2)*2;return[t[c],t[c+1]]}Ig([_xe,vxe]);const Rxe={...DA.defaultProps,autoLabels:!1,data:nh,dataComparator:nh.equal,tileSize:LA};class BE extends DA{constructor(...e){super(...e)}initializeState(){super.initializeState(),this.setState({binary:!0})}updateState(e){const{props:t}=e;if(t.data){super.updateState(e);const i=new URL(t.data.tiles[0]).searchParams.get("formatTiles")==="mvt";this.setState({mvt:i})}}getLoadOptions(){const e=this.props.data;return NA(super.getLoadOptions(),{fetch:{headers:{Authorization:`Bearer ${e.accessToken}`}},gis:{format:"binary"}})}async getTileData(e){const t=this.props.data,{tiles:n,properties_tiles:i}=t,o=eh(n,e);if(!o)return Promise.reject("Invalid URL");const s=this.getLoadOptions(),{fetch:c}=this.props,{signal:f}=e,_=c(o,{propName:"data",layer:this,loadOptions:s,signal:f});if(!i)return await _;const b=eh(i,e);if(!b)return Promise.reject("Invalid properties URL");const T=c(b,{propName:"data",layer:this,loadOptions:s,signal:f}),[S,D]=await Promise.all([_,T]);return S?D?L2e(S,D):S:null}renderSubLayers(e){var o,s,c;if(e.data===null)return null;const t=e.tile.bbox,n=[],i={"points-text":{type:ev,...(o=e==null?void 0:e._subLayerProps)==null?void 0:o["points-text"],extensions:[new oE,...e.extensions||[],...((c=(s=e==null?void 0:e._subLayerProps)==null?void 0:s["points-text"])==null?void 0:c.extensions)||[]]}};if(this.state.mvt)n.push(super.renderSubLayers(e));else{const{west:f,south:_,east:b,north:T}=t,S=[new Jy,...e.extensions||[]],D={clipBounds:[f,_,b,T]},k=W=>{var z,j,K;return{[W]:{...D,...(z=e==null?void 0:e._subLayerProps)==null?void 0:z[W],extensions:[...S,...((K=(j=e==null?void 0:e._subLayerProps)==null?void 0:j[W])==null?void 0:K.extensions)||[]]}}},G={...e,data:{...e.data,tileBbox:t},autoHighlight:!1,_subLayerProps:{...e._subLayerProps,...i,...k("polygons-fill"),...k("polygons-stroke"),...k("linestrings")}};n.push(new jl(G))}if(n[0]&&e.autoLabels){const f=Ck();e.data.lines&&e.data.lines.positions.value.length>0&&(f.points=wxe(e.data.lines,typeof e.autoLabels=="object"?e.autoLabels.uniqueIdProperty:void 0)),e.data.polygons&&e.data.polygons.positions.value.length>0&&(f.points=Cxe(e.data.polygons,t,e)),n.push(n[0].clone({id:`${e.id}-labels`,data:f,pickable:!1,autoHighlight:!1}))}return n}renderLayers(){const e=super.renderLayers();if(!this.props.autoLabels)return e;const t=e.flat().filter(Boolean);return t.sort((n,i)=>{const o=n.id.includes("labels"),s=i.id.includes("labels");return o&&!s?1:!o&&s?-1:0}),t.map(n=>n.id.includes("labels")?n.clone({highlightedObjectIndex:-1}):n)}_isWGS84(){return this.state.mvt?super._isWGS84():!0}}BE.layerName="VectorTileLayer";BE.defaultProps=Rxe;var Tn={YlGn:{3:["#f7fcb9","#addd8e","#31a354"],4:["#ffffcc","#c2e699","#78c679","#238443"],5:["#ffffcc","#c2e699","#78c679","#31a354","#006837"],6:["#ffffcc","#d9f0a3","#addd8e","#78c679","#31a354","#006837"],7:["#ffffcc","#d9f0a3","#addd8e","#78c679","#41ab5d","#238443","#005a32"],8:["#ffffe5","#f7fcb9","#d9f0a3","#addd8e","#78c679","#41ab5d","#238443","#005a32"],9:["#ffffe5","#f7fcb9","#d9f0a3","#addd8e","#78c679","#41ab5d","#238443","#006837","#004529"]},YlGnBu:{3:["#edf8b1","#7fcdbb","#2c7fb8"],4:["#ffffcc","#a1dab4","#41b6c4","#225ea8"],5:["#ffffcc","#a1dab4","#41b6c4","#2c7fb8","#253494"],6:["#ffffcc","#c7e9b4","#7fcdbb","#41b6c4","#2c7fb8","#253494"],7:["#ffffcc","#c7e9b4","#7fcdbb","#41b6c4","#1d91c0","#225ea8","#0c2c84"],8:["#ffffd9","#edf8b1","#c7e9b4","#7fcdbb","#41b6c4","#1d91c0","#225ea8","#0c2c84"],9:["#ffffd9","#edf8b1","#c7e9b4","#7fcdbb","#41b6c4","#1d91c0","#225ea8","#253494","#081d58"]},GnBu:{3:["#e0f3db","#a8ddb5","#43a2ca"],4:["#f0f9e8","#bae4bc","#7bccc4","#2b8cbe"],5:["#f0f9e8","#bae4bc","#7bccc4","#43a2ca","#0868ac"],6:["#f0f9e8","#ccebc5","#a8ddb5","#7bccc4","#43a2ca","#0868ac"],7:["#f0f9e8","#ccebc5","#a8ddb5","#7bccc4","#4eb3d3","#2b8cbe","#08589e"],8:["#f7fcf0","#e0f3db","#ccebc5","#a8ddb5","#7bccc4","#4eb3d3","#2b8cbe","#08589e"],9:["#f7fcf0","#e0f3db","#ccebc5","#a8ddb5","#7bccc4","#4eb3d3","#2b8cbe","#0868ac","#084081"]},BuGn:{3:["#e5f5f9","#99d8c9","#2ca25f"],4:["#edf8fb","#b2e2e2","#66c2a4","#238b45"],5:["#edf8fb","#b2e2e2","#66c2a4","#2ca25f","#006d2c"],6:["#edf8fb","#ccece6","#99d8c9","#66c2a4","#2ca25f","#006d2c"],7:["#edf8fb","#ccece6","#99d8c9","#66c2a4","#41ae76","#238b45","#005824"],8:["#f7fcfd","#e5f5f9","#ccece6","#99d8c9","#66c2a4","#41ae76","#238b45","#005824"],9:["#f7fcfd","#e5f5f9","#ccece6","#99d8c9","#66c2a4","#41ae76","#238b45","#006d2c","#00441b"]},PuBuGn:{3:["#ece2f0","#a6bddb","#1c9099"],4:["#f6eff7","#bdc9e1","#67a9cf","#02818a"],5:["#f6eff7","#bdc9e1","#67a9cf","#1c9099","#016c59"],6:["#f6eff7","#d0d1e6","#a6bddb","#67a9cf","#1c9099","#016c59"],7:["#f6eff7","#d0d1e6","#a6bddb","#67a9cf","#3690c0","#02818a","#016450"],8:["#fff7fb","#ece2f0","#d0d1e6","#a6bddb","#67a9cf","#3690c0","#02818a","#016450"],9:["#fff7fb","#ece2f0","#d0d1e6","#a6bddb","#67a9cf","#3690c0","#02818a","#016c59","#014636"]},PuBu:{3:["#ece7f2","#a6bddb","#2b8cbe"],4:["#f1eef6","#bdc9e1","#74a9cf","#0570b0"],5:["#f1eef6","#bdc9e1","#74a9cf","#2b8cbe","#045a8d"],6:["#f1eef6","#d0d1e6","#a6bddb","#74a9cf","#2b8cbe","#045a8d"],7:["#f1eef6","#d0d1e6","#a6bddb","#74a9cf","#3690c0","#0570b0","#034e7b"],8:["#fff7fb","#ece7f2","#d0d1e6","#a6bddb","#74a9cf","#3690c0","#0570b0","#034e7b"],9:["#fff7fb","#ece7f2","#d0d1e6","#a6bddb","#74a9cf","#3690c0","#0570b0","#045a8d","#023858"]},BuPu:{3:["#e0ecf4","#9ebcda","#8856a7"],4:["#edf8fb","#b3cde3","#8c96c6","#88419d"],5:["#edf8fb","#b3cde3","#8c96c6","#8856a7","#810f7c"],6:["#edf8fb","#bfd3e6","#9ebcda","#8c96c6","#8856a7","#810f7c"],7:["#edf8fb","#bfd3e6","#9ebcda","#8c96c6","#8c6bb1","#88419d","#6e016b"],8:["#f7fcfd","#e0ecf4","#bfd3e6","#9ebcda","#8c96c6","#8c6bb1","#88419d","#6e016b"],9:["#f7fcfd","#e0ecf4","#bfd3e6","#9ebcda","#8c96c6","#8c6bb1","#88419d","#810f7c","#4d004b"]},RdPu:{3:["#fde0dd","#fa9fb5","#c51b8a"],4:["#feebe2","#fbb4b9","#f768a1","#ae017e"],5:["#feebe2","#fbb4b9","#f768a1","#c51b8a","#7a0177"],6:["#feebe2","#fcc5c0","#fa9fb5","#f768a1","#c51b8a","#7a0177"],7:["#feebe2","#fcc5c0","#fa9fb5","#f768a1","#dd3497","#ae017e","#7a0177"],8:["#fff7f3","#fde0dd","#fcc5c0","#fa9fb5","#f768a1","#dd3497","#ae017e","#7a0177"],9:["#fff7f3","#fde0dd","#fcc5c0","#fa9fb5","#f768a1","#dd3497","#ae017e","#7a0177","#49006a"]},PuRd:{3:["#e7e1ef","#c994c7","#dd1c77"],4:["#f1eef6","#d7b5d8","#df65b0","#ce1256"],5:["#f1eef6","#d7b5d8","#df65b0","#dd1c77","#980043"],6:["#f1eef6","#d4b9da","#c994c7","#df65b0","#dd1c77","#980043"],7:["#f1eef6","#d4b9da","#c994c7","#df65b0","#e7298a","#ce1256","#91003f"],8:["#f7f4f9","#e7e1ef","#d4b9da","#c994c7","#df65b0","#e7298a","#ce1256","#91003f"],9:["#f7f4f9","#e7e1ef","#d4b9da","#c994c7","#df65b0","#e7298a","#ce1256","#980043","#67001f"]},OrRd:{3:["#fee8c8","#fdbb84","#e34a33"],4:["#fef0d9","#fdcc8a","#fc8d59","#d7301f"],5:["#fef0d9","#fdcc8a","#fc8d59","#e34a33","#b30000"],6:["#fef0d9","#fdd49e","#fdbb84","#fc8d59","#e34a33","#b30000"],7:["#fef0d9","#fdd49e","#fdbb84","#fc8d59","#ef6548","#d7301f","#990000"],8:["#fff7ec","#fee8c8","#fdd49e","#fdbb84","#fc8d59","#ef6548","#d7301f","#990000"],9:["#fff7ec","#fee8c8","#fdd49e","#fdbb84","#fc8d59","#ef6548","#d7301f","#b30000","#7f0000"]},YlOrRd:{3:["#ffeda0","#feb24c","#f03b20"],4:["#ffffb2","#fecc5c","#fd8d3c","#e31a1c"],5:["#ffffb2","#fecc5c","#fd8d3c","#f03b20","#bd0026"],6:["#ffffb2","#fed976","#feb24c","#fd8d3c","#f03b20","#bd0026"],7:["#ffffb2","#fed976","#feb24c","#fd8d3c","#fc4e2a","#e31a1c","#b10026"],8:["#ffffcc","#ffeda0","#fed976","#feb24c","#fd8d3c","#fc4e2a","#e31a1c","#b10026"],9:["#ffffcc","#ffeda0","#fed976","#feb24c","#fd8d3c","#fc4e2a","#e31a1c","#bd0026","#800026"]},YlOrBr:{3:["#fff7bc","#fec44f","#d95f0e"],4:["#ffffd4","#fed98e","#fe9929","#cc4c02"],5:["#ffffd4","#fed98e","#fe9929","#d95f0e","#993404"],6:["#ffffd4","#fee391","#fec44f","#fe9929","#d95f0e","#993404"],7:["#ffffd4","#fee391","#fec44f","#fe9929","#ec7014","#cc4c02","#8c2d04"],8:["#ffffe5","#fff7bc","#fee391","#fec44f","#fe9929","#ec7014","#cc4c02","#8c2d04"],9:["#ffffe5","#fff7bc","#fee391","#fec44f","#fe9929","#ec7014","#cc4c02","#993404","#662506"]},Purples:{3:["#efedf5","#bcbddc","#756bb1"],4:["#f2f0f7","#cbc9e2","#9e9ac8","#6a51a3"],5:["#f2f0f7","#cbc9e2","#9e9ac8","#756bb1","#54278f"],6:["#f2f0f7","#dadaeb","#bcbddc","#9e9ac8","#756bb1","#54278f"],7:["#f2f0f7","#dadaeb","#bcbddc","#9e9ac8","#807dba","#6a51a3","#4a1486"],8:["#fcfbfd","#efedf5","#dadaeb","#bcbddc","#9e9ac8","#807dba","#6a51a3","#4a1486"],9:["#fcfbfd","#efedf5","#dadaeb","#bcbddc","#9e9ac8","#807dba","#6a51a3","#54278f","#3f007d"]},Blues:{3:["#deebf7","#9ecae1","#3182bd"],4:["#eff3ff","#bdd7e7","#6baed6","#2171b5"],5:["#eff3ff","#bdd7e7","#6baed6","#3182bd","#08519c"],6:["#eff3ff","#c6dbef","#9ecae1","#6baed6","#3182bd","#08519c"],7:["#eff3ff","#c6dbef","#9ecae1","#6baed6","#4292c6","#2171b5","#084594"],8:["#f7fbff","#deebf7","#c6dbef","#9ecae1","#6baed6","#4292c6","#2171b5","#084594"],9:["#f7fbff","#deebf7","#c6dbef","#9ecae1","#6baed6","#4292c6","#2171b5","#08519c","#08306b"]},Greens:{3:["#e5f5e0","#a1d99b","#31a354"],4:["#edf8e9","#bae4b3","#74c476","#238b45"],5:["#edf8e9","#bae4b3","#74c476","#31a354","#006d2c"],6:["#edf8e9","#c7e9c0","#a1d99b","#74c476","#31a354","#006d2c"],7:["#edf8e9","#c7e9c0","#a1d99b","#74c476","#41ab5d","#238b45","#005a32"],8:["#f7fcf5","#e5f5e0","#c7e9c0","#a1d99b","#74c476","#41ab5d","#238b45","#005a32"],9:["#f7fcf5","#e5f5e0","#c7e9c0","#a1d99b","#74c476","#41ab5d","#238b45","#006d2c","#00441b"]},Oranges:{3:["#fee6ce","#fdae6b","#e6550d"],4:["#feedde","#fdbe85","#fd8d3c","#d94701"],5:["#feedde","#fdbe85","#fd8d3c","#e6550d","#a63603"],6:["#feedde","#fdd0a2","#fdae6b","#fd8d3c","#e6550d","#a63603"],7:["#feedde","#fdd0a2","#fdae6b","#fd8d3c","#f16913","#d94801","#8c2d04"],8:["#fff5eb","#fee6ce","#fdd0a2","#fdae6b","#fd8d3c","#f16913","#d94801","#8c2d04"],9:["#fff5eb","#fee6ce","#fdd0a2","#fdae6b","#fd8d3c","#f16913","#d94801","#a63603","#7f2704"]},Reds:{3:["#fee0d2","#fc9272","#de2d26"],4:["#fee5d9","#fcae91","#fb6a4a","#cb181d"],5:["#fee5d9","#fcae91","#fb6a4a","#de2d26","#a50f15"],6:["#fee5d9","#fcbba1","#fc9272","#fb6a4a","#de2d26","#a50f15"],7:["#fee5d9","#fcbba1","#fc9272","#fb6a4a","#ef3b2c","#cb181d","#99000d"],8:["#fff5f0","#fee0d2","#fcbba1","#fc9272","#fb6a4a","#ef3b2c","#cb181d","#99000d"],9:["#fff5f0","#fee0d2","#fcbba1","#fc9272","#fb6a4a","#ef3b2c","#cb181d","#a50f15","#67000d"]},Greys:{3:["#f0f0f0","#bdbdbd","#636363"],4:["#f7f7f7","#cccccc","#969696","#525252"],5:["#f7f7f7","#cccccc","#969696","#636363","#252525"],6:["#f7f7f7","#d9d9d9","#bdbdbd","#969696","#636363","#252525"],7:["#f7f7f7","#d9d9d9","#bdbdbd","#969696","#737373","#525252","#252525"],8:["#ffffff","#f0f0f0","#d9d9d9","#bdbdbd","#969696","#737373","#525252","#252525"],9:["#ffffff","#f0f0f0","#d9d9d9","#bdbdbd","#969696","#737373","#525252","#252525","#000000"]},PuOr:{3:["#f1a340","#f7f7f7","#998ec3"],4:["#e66101","#fdb863","#b2abd2","#5e3c99"],5:["#e66101","#fdb863","#f7f7f7","#b2abd2","#5e3c99"],6:["#b35806","#f1a340","#fee0b6","#d8daeb","#998ec3","#542788"],7:["#b35806","#f1a340","#fee0b6","#f7f7f7","#d8daeb","#998ec3","#542788"],8:["#b35806","#e08214","#fdb863","#fee0b6","#d8daeb","#b2abd2","#8073ac","#542788"],9:["#b35806","#e08214","#fdb863","#fee0b6","#f7f7f7","#d8daeb","#b2abd2","#8073ac","#542788"],10:["#7f3b08","#b35806","#e08214","#fdb863","#fee0b6","#d8daeb","#b2abd2","#8073ac","#542788","#2d004b"],11:["#7f3b08","#b35806","#e08214","#fdb863","#fee0b6","#f7f7f7","#d8daeb","#b2abd2","#8073ac","#542788","#2d004b"]},BrBG:{3:["#d8b365","#f5f5f5","#5ab4ac"],4:["#a6611a","#dfc27d","#80cdc1","#018571"],5:["#a6611a","#dfc27d","#f5f5f5","#80cdc1","#018571"],6:["#8c510a","#d8b365","#f6e8c3","#c7eae5","#5ab4ac","#01665e"],7:["#8c510a","#d8b365","#f6e8c3","#f5f5f5","#c7eae5","#5ab4ac","#01665e"],8:["#8c510a","#bf812d","#dfc27d","#f6e8c3","#c7eae5","#80cdc1","#35978f","#01665e"],9:["#8c510a","#bf812d","#dfc27d","#f6e8c3","#f5f5f5","#c7eae5","#80cdc1","#35978f","#01665e"],10:["#543005","#8c510a","#bf812d","#dfc27d","#f6e8c3","#c7eae5","#80cdc1","#35978f","#01665e","#003c30"],11:["#543005","#8c510a","#bf812d","#dfc27d","#f6e8c3","#f5f5f5","#c7eae5","#80cdc1","#35978f","#01665e","#003c30"]},PRGn:{3:["#af8dc3","#f7f7f7","#7fbf7b"],4:["#7b3294","#c2a5cf","#a6dba0","#008837"],5:["#7b3294","#c2a5cf","#f7f7f7","#a6dba0","#008837"],6:["#762a83","#af8dc3","#e7d4e8","#d9f0d3","#7fbf7b","#1b7837"],7:["#762a83","#af8dc3","#e7d4e8","#f7f7f7","#d9f0d3","#7fbf7b","#1b7837"],8:["#762a83","#9970ab","#c2a5cf","#e7d4e8","#d9f0d3","#a6dba0","#5aae61","#1b7837"],9:["#762a83","#9970ab","#c2a5cf","#e7d4e8","#f7f7f7","#d9f0d3","#a6dba0","#5aae61","#1b7837"],10:["#40004b","#762a83","#9970ab","#c2a5cf","#e7d4e8","#d9f0d3","#a6dba0","#5aae61","#1b7837","#00441b"],11:["#40004b","#762a83","#9970ab","#c2a5cf","#e7d4e8","#f7f7f7","#d9f0d3","#a6dba0","#5aae61","#1b7837","#00441b"]},PiYG:{3:["#e9a3c9","#f7f7f7","#a1d76a"],4:["#d01c8b","#f1b6da","#b8e186","#4dac26"],5:["#d01c8b","#f1b6da","#f7f7f7","#b8e186","#4dac26"],6:["#c51b7d","#e9a3c9","#fde0ef","#e6f5d0","#a1d76a","#4d9221"],7:["#c51b7d","#e9a3c9","#fde0ef","#f7f7f7","#e6f5d0","#a1d76a","#4d9221"],8:["#c51b7d","#de77ae","#f1b6da","#fde0ef","#e6f5d0","#b8e186","#7fbc41","#4d9221"],9:["#c51b7d","#de77ae","#f1b6da","#fde0ef","#f7f7f7","#e6f5d0","#b8e186","#7fbc41","#4d9221"],10:["#8e0152","#c51b7d","#de77ae","#f1b6da","#fde0ef","#e6f5d0","#b8e186","#7fbc41","#4d9221","#276419"],11:["#8e0152","#c51b7d","#de77ae","#f1b6da","#fde0ef","#f7f7f7","#e6f5d0","#b8e186","#7fbc41","#4d9221","#276419"]},RdBu:{3:["#ef8a62","#f7f7f7","#67a9cf"],4:["#ca0020","#f4a582","#92c5de","#0571b0"],5:["#ca0020","#f4a582","#f7f7f7","#92c5de","#0571b0"],6:["#b2182b","#ef8a62","#fddbc7","#d1e5f0","#67a9cf","#2166ac"],7:["#b2182b","#ef8a62","#fddbc7","#f7f7f7","#d1e5f0","#67a9cf","#2166ac"],8:["#b2182b","#d6604d","#f4a582","#fddbc7","#d1e5f0","#92c5de","#4393c3","#2166ac"],9:["#b2182b","#d6604d","#f4a582","#fddbc7","#f7f7f7","#d1e5f0","#92c5de","#4393c3","#2166ac"],10:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#d1e5f0","#92c5de","#4393c3","#2166ac","#053061"],11:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#f7f7f7","#d1e5f0","#92c5de","#4393c3","#2166ac","#053061"]},RdGy:{3:["#ef8a62","#ffffff","#999999"],4:["#ca0020","#f4a582","#bababa","#404040"],5:["#ca0020","#f4a582","#ffffff","#bababa","#404040"],6:["#b2182b","#ef8a62","#fddbc7","#e0e0e0","#999999","#4d4d4d"],7:["#b2182b","#ef8a62","#fddbc7","#ffffff","#e0e0e0","#999999","#4d4d4d"],8:["#b2182b","#d6604d","#f4a582","#fddbc7","#e0e0e0","#bababa","#878787","#4d4d4d"],9:["#b2182b","#d6604d","#f4a582","#fddbc7","#ffffff","#e0e0e0","#bababa","#878787","#4d4d4d"],10:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#e0e0e0","#bababa","#878787","#4d4d4d","#1a1a1a"],11:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#ffffff","#e0e0e0","#bababa","#878787","#4d4d4d","#1a1a1a"]},RdYlBu:{3:["#fc8d59","#ffffbf","#91bfdb"],4:["#d7191c","#fdae61","#abd9e9","#2c7bb6"],5:["#d7191c","#fdae61","#ffffbf","#abd9e9","#2c7bb6"],6:["#d73027","#fc8d59","#fee090","#e0f3f8","#91bfdb","#4575b4"],7:["#d73027","#fc8d59","#fee090","#ffffbf","#e0f3f8","#91bfdb","#4575b4"],8:["#d73027","#f46d43","#fdae61","#fee090","#e0f3f8","#abd9e9","#74add1","#4575b4"],9:["#d73027","#f46d43","#fdae61","#fee090","#ffffbf","#e0f3f8","#abd9e9","#74add1","#4575b4"],10:["#a50026","#d73027","#f46d43","#fdae61","#fee090","#e0f3f8","#abd9e9","#74add1","#4575b4","#313695"],11:["#a50026","#d73027","#f46d43","#fdae61","#fee090","#ffffbf","#e0f3f8","#abd9e9","#74add1","#4575b4","#313695"]},Spectral:{3:["#fc8d59","#ffffbf","#99d594"],4:["#d7191c","#fdae61","#abdda4","#2b83ba"],5:["#d7191c","#fdae61","#ffffbf","#abdda4","#2b83ba"],6:["#d53e4f","#fc8d59","#fee08b","#e6f598","#99d594","#3288bd"],7:["#d53e4f","#fc8d59","#fee08b","#ffffbf","#e6f598","#99d594","#3288bd"],8:["#d53e4f","#f46d43","#fdae61","#fee08b","#e6f598","#abdda4","#66c2a5","#3288bd"],9:["#d53e4f","#f46d43","#fdae61","#fee08b","#ffffbf","#e6f598","#abdda4","#66c2a5","#3288bd"],10:["#9e0142","#d53e4f","#f46d43","#fdae61","#fee08b","#e6f598","#abdda4","#66c2a5","#3288bd","#5e4fa2"],11:["#9e0142","#d53e4f","#f46d43","#fdae61","#fee08b","#ffffbf","#e6f598","#abdda4","#66c2a5","#3288bd","#5e4fa2"]},RdYlGn:{3:["#fc8d59","#ffffbf","#91cf60"],4:["#d7191c","#fdae61","#a6d96a","#1a9641"],5:["#d7191c","#fdae61","#ffffbf","#a6d96a","#1a9641"],6:["#d73027","#fc8d59","#fee08b","#d9ef8b","#91cf60","#1a9850"],7:["#d73027","#fc8d59","#fee08b","#ffffbf","#d9ef8b","#91cf60","#1a9850"],8:["#d73027","#f46d43","#fdae61","#fee08b","#d9ef8b","#a6d96a","#66bd63","#1a9850"],9:["#d73027","#f46d43","#fdae61","#fee08b","#ffffbf","#d9ef8b","#a6d96a","#66bd63","#1a9850"],10:["#a50026","#d73027","#f46d43","#fdae61","#fee08b","#d9ef8b","#a6d96a","#66bd63","#1a9850","#006837"],11:["#a50026","#d73027","#f46d43","#fdae61","#fee08b","#ffffbf","#d9ef8b","#a6d96a","#66bd63","#1a9850","#006837"]},Accent:{3:["#7fc97f","#beaed4","#fdc086"],4:["#7fc97f","#beaed4","#fdc086","#ffff99"],5:["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0"],6:["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0","#f0027f"],7:["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0","#f0027f","#bf5b17"],8:["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0","#f0027f","#bf5b17","#666666"]},Dark2:{3:["#1b9e77","#d95f02","#7570b3"],4:["#1b9e77","#d95f02","#7570b3","#e7298a"],5:["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e"],6:["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e","#e6ab02"],7:["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e","#e6ab02","#a6761d"],8:["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e","#e6ab02","#a6761d","#666666"]},Paired:{3:["#a6cee3","#1f78b4","#b2df8a"],4:["#a6cee3","#1f78b4","#b2df8a","#33a02c"],5:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99"],6:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c"],7:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f"],8:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00"],9:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6"],10:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6","#6a3d9a"],11:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6","#6a3d9a","#ffff99"],12:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6","#6a3d9a","#ffff99","#b15928"]},Pastel1:{3:["#fbb4ae","#b3cde3","#ccebc5"],4:["#fbb4ae","#b3cde3","#ccebc5","#decbe4"],5:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6"],6:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc"],7:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc","#e5d8bd"],8:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc","#e5d8bd","#fddaec"],9:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc","#e5d8bd","#fddaec","#f2f2f2"]},Pastel2:{3:["#b3e2cd","#fdcdac","#cbd5e8"],4:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4"],5:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9"],6:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9","#fff2ae"],7:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9","#fff2ae","#f1e2cc"],8:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9","#fff2ae","#f1e2cc","#cccccc"]},Set1:{3:["#e41a1c","#377eb8","#4daf4a"],4:["#e41a1c","#377eb8","#4daf4a","#984ea3"],5:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00"],6:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33"],7:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33","#a65628"],8:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33","#a65628","#f781bf"],9:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33","#a65628","#f781bf","#999999"]},Set2:{3:["#66c2a5","#fc8d62","#8da0cb"],4:["#66c2a5","#fc8d62","#8da0cb","#e78ac3"],5:["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854"],6:["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854","#ffd92f"],7:["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854","#ffd92f","#e5c494"],8:["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854","#ffd92f","#e5c494","#b3b3b3"]},Set3:{3:["#8dd3c7","#ffffb3","#bebada"],4:["#8dd3c7","#ffffb3","#bebada","#fb8072"],5:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3"],6:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462"],7:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69"],8:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5"],9:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9"],10:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9","#bc80bd"],11:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9","#bc80bd","#ccebc5"],12:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9","#bc80bd","#ccebc5","#ffed6f"]}},Fxe={2:["#ffc6c4","#672044"],3:["#ffc6c4","#cc607d","#672044"],4:["#ffc6c4","#e38191","#ad466c","#672044"],5:["#ffc6c4","#ee919b","#cc607d","#9e3963","#672044"],6:["#ffc6c4","#f29ca3","#da7489","#b95073","#93345d","#672044"],7:["#ffc6c4","#f4a3a8","#e38191","#cc607d","#ad466c","#8b3058","#672044"],tags:["quantitative"]},Oxe={2:["#fbe6c5","#70284a"],3:["#fbe6c5","#dc7176","#70284a"],4:["#fbe6c5","#ee8a82","#c8586c","#70284a"],5:["#fbe6c5","#f2a28a","#dc7176","#b24b65","#70284a"],6:["#fbe6c5","#f4b191","#e7807d","#d06270","#a44360","#70284a"],7:["#fbe6c5","#f5ba98","#ee8a82","#dc7176","#c8586c","#9c3f5d","#70284a"],tags:["quantitative"]},Dxe={2:["#f6d2a9","#b13f64"],3:["#f6d2a9","#ea8171","#b13f64"],4:["#f6d2a9","#f19c7c","#dd686c","#b13f64"],5:["#f6d2a9","#f3aa84","#ea8171","#d55d6a","#b13f64"],6:["#f6d2a9","#f4b28a","#ef9177","#e3726d","#cf5669","#b13f64"],7:["#f6d2a9","#f5b78e","#f19c7c","#ea8171","#dd686c","#ca5268","#b13f64"],tags:["quantitative"]},Lxe={2:["#ecda9a","#ee4d5a"],3:["#ecda9a","#f7945d","#ee4d5a"],4:["#ecda9a","#f3ad6a","#f97b57","#ee4d5a"],5:["#ecda9a","#f1b973","#f7945d","#f86f56","#ee4d5a"],6:["#ecda9a","#f0c079","#f5a363","#f98558","#f76856","#ee4d5a"],7:["#ecda9a","#efc47e","#f3ad6a","#f7945d","#f97b57","#f66356","#ee4d5a"],tags:["quantitative"]},Nxe={2:["#fde0c5","#eb4a40"],3:["#fde0c5","#f59e72","#eb4a40"],4:["#fde0c5","#f8b58b","#f2855d","#eb4a40"],5:["#fde0c5","#f9c098","#f59e72","#f17854","#eb4a40"],6:["#fde0c5","#fac7a1","#f7ac80","#f38f65","#f0704f","#eb4a40"],7:["#fde0c5","#facba6","#f8b58b","#f59e72","#f2855d","#ef6a4c","#eb4a40"],tags:["quantitative"]},kxe={2:["#fef6b5","#e15383"],3:["#fef6b5","#ffa679","#e15383"],4:["#fef6b5","#ffc285","#fa8a76","#e15383"],5:["#fef6b5","#ffd08e","#ffa679","#f67b77","#e15383"],6:["#fef6b5","#ffd795","#ffb77f","#fd9576","#f37378","#e15383"],7:["#fef6b5","#ffdd9a","#ffc285","#ffa679","#fa8a76","#f16d7a","#e15383"],tags:["quantitative"]},Uxe={2:["#e4f1e1","#0d585f"],3:["#e4f1e1","#63a6a0","#0d585f"],4:["#e4f1e1","#89c0b6","#448c8a","#0d585f"],5:["#E4F1E1","#9CCDC1","#63A6A0","#337F7F","#0D585F"],6:["#e4f1e1","#abd4c7","#7ab5ad","#509693","#2c7778","#0d585f"],7:["#e4f1e1","#b4d9cc","#89c0b6","#63a6a0","#448c8a","#287274","#0d585f"],tags:["quantitative"]},zxe={2:["#c4e6c3","#1d4f60"],3:["#c4e6c3","#4da284","#1d4f60"],4:["#c4e6c3","#6dbc90","#36877a","#1d4f60"],5:["#c4e6c3","#80c799","#4da284","#2d7974","#1d4f60"],6:["#c4e6c3","#8dce9f","#5fb28b","#3e927e","#297071","#1d4f60"],7:["#c4e6c3","#96d2a4","#6dbc90","#4da284","#36877a","#266b6e","#1d4f60"],tags:["quantitative"]},Gxe={2:["#d2fbd4","#123f5a"],3:["#d2fbd4","#559c9e","#123f5a"],4:["#d2fbd4","#7bbcb0","#3a7c89","#123f5a"],5:["#d2fbd4","#8eccb9","#559c9e","#2b6c7f","#123f5a"],6:["#d2fbd4","#9cd5be","#6cafa9","#458892","#266377","#123f5a"],7:["#d2fbd4","#a5dbc2","#7bbcb0","#559c9e","#3a7c89","#235d72","#123f5a"],tags:["quantitative"]},Vxe={2:["#d3f2a3","#074050"],3:["#d3f2a3","#4c9b82","#074050"],4:["#d3f2a3","#6cc08b","#217a79","#074050"],5:["#d3f2a3","#82d091","#4c9b82","#19696f","#074050"],6:["#d3f2a3","#8fda94","#60b187","#35877d","#145f69","#074050"],7:["#d3f2a3","#97e196","#6cc08b","#4c9b82","#217a79","#105965","#074050"],tags:["quantitative"]},Hxe={2:["#245668","#EDEF5D"],3:["#245668","#39AB7E","#EDEF5D"],4:["#245668","#0D8F81","#6EC574","#EDEF5D"],5:["#245668","#04817E","#39AB7E","#8BD16D","#EDEF5D"],6:["#245668","#09787C","#1D9A81","#58BB79","#9DD869","#EDEF5D"],7:["#245668","#0F7279","#0D8F81","#39AB7E","#6EC574","#A9DC67","#EDEF5D"],tags:["aggregation"]},jxe={2:["#f7feae","#045275"],3:["#f7feae","#46aea0","#045275"],4:["#f7feae","#7ccba2","#089099","#045275"],5:["#f7feae","#9bd8a4","#46aea0","#058092","#045275"],6:["#f7feae","#ace1a4","#68bfa1","#2a9c9c","#02778e","#045275"],7:["#f7feae","#b7e6a5","#7ccba2","#46aea0","#089099","#00718b","#045275"],tags:["quantitative"]},$xe={2:["#d1eeea","#2a5674"],3:["#d1eeea","#68abb8","#2a5674"],4:["#d1eeea","#85c4c9","#4f90a6","#2a5674"],5:["#d1eeea","#96d0d1","#68abb8","#45829b","#2a5674"],6:["#d1eeea","#a1d7d6","#79bbc3","#599bae","#3f7994","#2a5674"],7:["#d1eeea","#a8dbd9","#85c4c9","#68abb8","#4f90a6","#3b738f","#2a5674"],tags:["quantitative"]},Wxe={2:["#b0f2bc","#257d98"],3:["#b0f2bc","#4cc8a3","#257d98"],4:["#b0f2bc","#67dba5","#38b2a3","#257d98"],5:["#b0f2bc","#77e2a8","#4cc8a3","#31a6a2","#257d98"],6:["#b0f2bc","#82e6aa","#5bd4a4","#3fbba3","#2e9ea1","#257d98"],7:["#b0f2bc","#89e8ac","#67dba5","#4cc8a3","#38b2a3","#2c98a0","#257d98"],tags:["quantitative"]},Jxe={2:["#f3e0f7","#63589f"],3:["#f3e0f7","#b998dd","#63589f"],4:["#f3e0f7","#d1afe8","#9f82ce","#63589f"],5:["#f3e0f7","#dbbaed","#b998dd","#9178c4","#63589f"],6:["#f3e0f7","#e0c2ef","#c8a5e4","#aa8bd4","#8871be","#63589f"],7:["#f3e0f7","#e4c7f1","#d1afe8","#b998dd","#9f82ce","#826dba","#63589f"],tags:["quantitative"]},Xxe={2:["#f9ddda","#573b88"],3:["#f9ddda","#ce78b3","#573b88"],4:["#f9ddda","#e597b9","#ad5fad","#573b88"],5:["#f9ddda","#eda8bd","#ce78b3","#9955a8","#573b88"],6:["#f9ddda","#f0b2c1","#dd8ab6","#bb69b0","#8c4fa4","#573b88"],7:["#f9ddda","#f2b9c4","#e597b9","#ce78b3","#ad5fad","#834ba0","#573b88"],tags:["quantitative"]},Kxe={2:["#f3e79b","#5c53a5"],3:["#f3e79b","#eb7f86","#5c53a5"],4:["#f3e79b","#f8a07e","#ce6693","#5c53a5"],5:["#f3e79b","#fab27f","#eb7f86","#b95e9a","#5c53a5"],6:["#f3e79b","#fabc82","#f59280","#dc6f8e","#ab5b9e","#5c53a5"],7:["#f3e79b","#fac484","#f8a07e","#eb7f86","#ce6693","#a059a0","#5c53a5"],tags:["quantitative"]},Yxe={2:["#f3cbd3","#6c2167"],3:["#f3cbd3","#ca699d","#6c2167"],4:["#f3cbd3","#dd88ac","#b14d8e","#6c2167"],5:["#f3cbd3","#e498b4","#ca699d","#a24186","#6c2167"],6:["#f3cbd3","#e7a2b9","#d67ba5","#bc5894","#983a81","#6c2167"],7:["#f3cbd3","#eaa9bd","#dd88ac","#ca699d","#b14d8e","#91357d","#6c2167"],tags:["quantitative"]},qxe={2:["#fcde9c","#7c1d6f"],3:["#fcde9c","#e34f6f","#7c1d6f"],4:["#fcde9c","#f0746e","#dc3977","#7c1d6f"],5:["#fcde9c","#f58670","#e34f6f","#d72d7c","#7c1d6f"],6:["#fcde9c","#f89872","#ec666d","#df4273","#c5287b","#7c1d6f"],7:["#fcde9c","#faa476","#f0746e","#e34f6f","#dc3977","#b9257a","#7c1d6f"],tags:["quantitative"]},Zxe={2:["#4b2991","#edd9a3"],3:["#4b2991","#ea4f88","#edd9a3"],4:["#4b2991","#c0369d","#fa7876","#edd9a3"],5:["#4b2991","#a52fa2","#ea4f88","#fa9074","#edd9a3"],6:["#4b2991","#932da3","#d43f96","#f7667c","#f89f77","#edd9a3"],7:["#4b2991","#872ca2","#c0369d","#ea4f88","#fa7876","#f6a97a","#edd9a3"],tags:["aggregation"]},Qxe={2:["#ede5cf","#541f3f"],3:["#ede5cf","#c1766f","#541f3f"],4:["#ede5cf","#d39c83","#a65461","#541f3f"],5:["#ede5cf","#daaf91","#c1766f","#95455a","#541f3f"],6:["#ede5cf","#ddba9b","#cd8c7a","#b26166","#8a3c56","#541f3f"],7:["#ede5cf","#e0c2a2","#d39c83","#c1766f","#a65461","#813753","#541f3f"],tags:["quantitative"]},ewe={2:["#929b4f","#db8195"],3:["#a3ad62","#fdfbe4","#df91a3"],4:["#929b4f","#d9dbaf","#f3d1ca","#db8195"],5:["#879043","#c1c68c","#fdfbe4","#ebb4b8","#d8758b"],6:["#7f883b","#b0b874","#e3e4be","#f6ddd1","#e4a0ac","#d66d85"],7:["#798234","#a3ad62","#d0d3a2","#fdfbe4","#f0c6c3","#df91a3","#d46780"],tags:["diverging"]},twe={2:["#3d5941","#ca562c"],3:["#3d5941","#f6edbd","#ca562c"],4:["#3d5941","#b5b991","#edbb8a","#ca562c"],5:["#3d5941","#96a07c","#f6edbd","#e6a272","#ca562c"],6:["#3d5941","#839170","#cecea2","#f1cf9e","#e19464","#ca562c"],7:["#3d5941","#778868","#b5b991","#f6edbd","#edbb8a","#de8a5a","#ca562c"],tags:["diverging"]},rwe={2:["#008080","#ca562c"],3:["#008080","#f6edbd","#ca562c"],4:["#008080","#b4c8a8","#edbb8a","#ca562c"],5:["#008080","#92b69e","#f6edbd","#e6a272","#ca562c"],6:["#008080","#7eab98","#ced7b1","#f1cf9e","#e19464","#ca562c"],7:["#008080","#70a494","#b4c8a8","#f6edbd","#edbb8a","#de8a5a","#ca562c"],tags:["diverging"]},nwe={2:["#009392","#cf597e"],3:["#009392","#e9e29c","#cf597e"],4:["#009392","#9ccb86","#eeb479","#cf597e"],5:["#009392","#71be83","#e9e29c","#ed9c72","#cf597e"],6:["#009392","#52b684","#bcd48c","#edc783","#eb8d71","#cf597e"],7:["#009392","#39b185","#9ccb86","#e9e29c","#eeb479","#e88471","#cf597e"],tags:["diverging"]},iwe={2:["#009392","#d0587e"],3:["#009392","#f1eac8","#d0587e"],4:["#009392","#91b8aa","#f1eac8","#dfa0a0","#d0587e"],5:["#009392","#91b8aa","#f1eac8","#dfa0a0","#d0587e"],6:["#009392","#72aaa1","#b1c7b3","#e5b9ad","#d98994","#d0587e"],7:["#009392","#72aaa1","#b1c7b3","#f1eac8","#e5b9ad","#d98994","#d0587e"],tags:["diverging"]},swe={2:["#009B9E","#C75DAB"],3:["#009B9E","#F1F1F1","#C75DAB"],4:["#009B9E","#A7D3D4","#E4C1D9","#C75DAB"],5:["#009B9E","#7CC5C6","#F1F1F1","#DDA9CD","#C75DAB"],6:["#009B9E","#5DBCBE","#C6DFDF","#E9D4E2","#D99BC6","#C75DAB"],7:["#009B9E","#42B7B9","#A7D3D4","#F1F1F1","#E4C1D9","#D691C1","#C75DAB"],tags:["diverging"]},owe={2:["#A16928","#2887a1"],3:["#A16928","#edeac2","#2887a1"],4:["#A16928","#d6bd8d","#b5c8b8","#2887a1"],5:["#A16928","#caa873","#edeac2","#98b7b2","#2887a1"],6:["#A16928","#c29b64","#e0cfa2","#cbd5bc","#85adaf","#2887a1"],7:["#A16928","#bd925a","#d6bd8d","#edeac2","#b5c8b8","#79a7ac","#2887a1"],tags:["diverging"]},awe={2:["#855C75","#D9AF6B","#7C7C7C"],3:["#855C75","#D9AF6B","#AF6458","#7C7C7C"],4:["#855C75","#D9AF6B","#AF6458","#736F4C","#7C7C7C"],5:["#855C75","#D9AF6B","#AF6458","#736F4C","#526A83","#7C7C7C"],6:["#855C75","#D9AF6B","#AF6458","#736F4C","#526A83","#625377","#7C7C7C"],7:["#855C75","#D9AF6B","#AF6458","#736F4C","#526A83","#625377","#68855C","#7C7C7C"],8:["#855C75","#D9AF6B","#AF6458","#736F4C","#526A83","#625377","#68855C","#9C9C5E","#7C7C7C"],9:["#855C75","#D9AF6B","#AF6458","#736F4C","#526A83","#625377","#68855C","#9C9C5E","#A06177","#7C7C7C"],10:["#855C75","#D9AF6B","#AF6458","#736F4C","#526A83","#625377","#68855C","#9C9C5E","#A06177","#8C785D","#7C7C7C"],11:["#855C75","#D9AF6B","#AF6458","#736F4C","#526A83","#625377","#68855C","#9C9C5E","#A06177","#8C785D","#467378","#7C7C7C"],tags:["qualitative"]},cwe={2:["#7F3C8D","#11A579","#A5AA99"],3:["#7F3C8D","#11A579","#3969AC","#A5AA99"],4:["#7F3C8D","#11A579","#3969AC","#F2B701","#A5AA99"],5:["#7F3C8D","#11A579","#3969AC","#F2B701","#E73F74","#A5AA99"],6:["#7F3C8D","#11A579","#3969AC","#F2B701","#E73F74","#80BA5A","#A5AA99"],7:["#7F3C8D","#11A579","#3969AC","#F2B701","#E73F74","#80BA5A","#E68310","#A5AA99"],8:["#7F3C8D","#11A579","#3969AC","#F2B701","#E73F74","#80BA5A","#E68310","#008695","#A5AA99"],9:["#7F3C8D","#11A579","#3969AC","#F2B701","#E73F74","#80BA5A","#E68310","#008695","#CF1C90","#A5AA99"],10:["#7F3C8D","#11A579","#3969AC","#F2B701","#E73F74","#80BA5A","#E68310","#008695","#CF1C90","#f97b72","#A5AA99"],11:["#7F3C8D","#11A579","#3969AC","#F2B701","#E73F74","#80BA5A","#E68310","#008695","#CF1C90","#f97b72","#4b4b8f","#A5AA99"],tags:["qualitative"]},lwe={2:["#66C5CC","#F6CF71","#B3B3B3"],3:["#66C5CC","#F6CF71","#F89C74","#B3B3B3"],4:["#66C5CC","#F6CF71","#F89C74","#DCB0F2","#B3B3B3"],5:["#66C5CC","#F6CF71","#F89C74","#DCB0F2","#87C55F","#B3B3B3"],6:["#66C5CC","#F6CF71","#F89C74","#DCB0F2","#87C55F","#9EB9F3","#B3B3B3"],7:["#66C5CC","#F6CF71","#F89C74","#DCB0F2","#87C55F","#9EB9F3","#FE88B1","#B3B3B3"],8:["#66C5CC","#F6CF71","#F89C74","#DCB0F2","#87C55F","#9EB9F3","#FE88B1","#C9DB74","#B3B3B3"],9:["#66C5CC","#F6CF71","#F89C74","#DCB0F2","#87C55F","#9EB9F3","#FE88B1","#C9DB74","#8BE0A4","#B3B3B3"],10:["#66C5CC","#F6CF71","#F89C74","#DCB0F2","#87C55F","#9EB9F3","#FE88B1","#C9DB74","#8BE0A4","#B497E7","#B3B3B3"],11:["#66C5CC","#F6CF71","#F89C74","#DCB0F2","#87C55F","#9EB9F3","#FE88B1","#C9DB74","#8BE0A4","#B497E7","#D3B484","#B3B3B3"],tags:["qualitative"]},uwe={2:["#5F4690","#1D6996","#666666"],3:["#5F4690","#1D6996","#38A6A5","#666666"],4:["#5F4690","#1D6996","#38A6A5","#0F8554","#666666"],5:["#5F4690","#1D6996","#38A6A5","#0F8554","#73AF48","#666666"],6:["#5F4690","#1D6996","#38A6A5","#0F8554","#73AF48","#EDAD08","#666666"],7:["#5F4690","#1D6996","#38A6A5","#0F8554","#73AF48","#EDAD08","#E17C05","#666666"],8:["#5F4690","#1D6996","#38A6A5","#0F8554","#73AF48","#EDAD08","#E17C05","#CC503E","#666666"],9:["#5F4690","#1D6996","#38A6A5","#0F8554","#73AF48","#EDAD08","#E17C05","#CC503E","#94346E","#666666"],10:["#5F4690","#1D6996","#38A6A5","#0F8554","#73AF48","#EDAD08","#E17C05","#CC503E","#94346E","#6F4070","#666666"],11:["#5F4690","#1D6996","#38A6A5","#0F8554","#73AF48","#EDAD08","#E17C05","#CC503E","#94346E","#6F4070","#994E95","#666666"],tags:["qualitative"]},fwe={2:["#88CCEE","#CC6677","#888888"],3:["#88CCEE","#CC6677","#DDCC77","#888888"],4:["#88CCEE","#CC6677","#DDCC77","#117733","#888888"],5:["#88CCEE","#CC6677","#DDCC77","#117733","#332288","#888888"],6:["#88CCEE","#CC6677","#DDCC77","#117733","#332288","#AA4499","#888888"],7:["#88CCEE","#CC6677","#DDCC77","#117733","#332288","#AA4499","#44AA99","#888888"],8:["#88CCEE","#CC6677","#DDCC77","#117733","#332288","#AA4499","#44AA99","#999933","#888888"],9:["#88CCEE","#CC6677","#DDCC77","#117733","#332288","#AA4499","#44AA99","#999933","#882255","#888888"],10:["#88CCEE","#CC6677","#DDCC77","#117733","#332288","#AA4499","#44AA99","#999933","#882255","#661100","#888888"],11:["#88CCEE","#CC6677","#DDCC77","#117733","#332288","#AA4499","#44AA99","#999933","#882255","#661100","#6699CC","#888888"],tags:["qualitative","colorblind"]},hwe={2:["#E58606","#5D69B1","#A5AA99"],3:["#E58606","#5D69B1","#52BCA3","#A5AA99"],4:["#E58606","#5D69B1","#52BCA3","#99C945","#A5AA99"],5:["#E58606","#5D69B1","#52BCA3","#99C945","#CC61B0","#A5AA99"],6:["#E58606","#5D69B1","#52BCA3","#99C945","#CC61B0","#24796C","#A5AA99"],7:["#E58606","#5D69B1","#52BCA3","#99C945","#CC61B0","#24796C","#DAA51B","#A5AA99"],8:["#E58606","#5D69B1","#52BCA3","#99C945","#CC61B0","#24796C","#DAA51B","#2F8AC4","#A5AA99"],9:["#E58606","#5D69B1","#52BCA3","#99C945","#CC61B0","#24796C","#DAA51B","#2F8AC4","#764E9F","#A5AA99"],10:["#E58606","#5D69B1","#52BCA3","#99C945","#CC61B0","#24796C","#DAA51B","#2F8AC4","#764E9F","#ED645A","#A5AA99"],11:["#E58606","#5D69B1","#52BCA3","#99C945","#CC61B0","#24796C","#DAA51B","#2F8AC4","#764E9F","#ED645A","#CC3A8E","#A5AA99"],tags:["qualitative"]},dwe={...Tn.BuGn,tags:["quantitative"]},Awe={...Tn.BuPu,tags:["quantitative"]},pwe={...Tn.GnBu,tags:["quantitative"]},gwe={...Tn.OrRd,tags:["quantitative"]},mwe={...Tn.PuBu,tags:["quantitative"]},_we={...Tn.PuBuGn,tags:["quantitative"]},ywe={...Tn.PuRd,tags:["quantitative"]},vwe={...Tn.RdPu,tags:["quantitative"]},bwe={...Tn.YlGn,tags:["quantitative"]},xwe={...Tn.YlGnBu,tags:["quantitative"]},wwe={...Tn.YlOrBr,tags:["quantitative"]},Cwe={...Tn.YlOrRd,tags:["quantitative"]},Ewe={...Tn.Accent,tags:["qualitative"]},Twe={...Tn.Dark2,tags:["qualitative"]},Bwe={...Tn.Paired,tags:["qualitative"]},Swe={...Tn.Pastel1,tags:["qualitative"]},Iwe={...Tn.Pastel2,tags:["qualitative"]},Mwe={...Tn.Set1,tags:["qualitative"]},Pwe={...Tn.Set2,tags:["qualitative"]},Rwe={...Tn.Set3,tags:["qualitative"]},Fwe={...Tn.Blues,tags:["quantitative"]},Owe={...Tn.Greens,tags:["quantitative"]},Dwe={...Tn.Greys,tags:["quantitative"]},Lwe={...Tn.Oranges,tags:["quantitative"]},Nwe={...Tn.Purples,tags:["quantitative"]},kwe={...Tn.Reds,tags:["quantitative"]},Uwe={...Tn.BrBG,tags:["diverging"]},zwe={...Tn.PiYG,tags:["diverging"]},Gwe={...Tn.PRGn,tags:["diverging"]},Vwe={...Tn.PuOr,tags:["diverging"]},Hwe={...Tn.RdBu,tags:["diverging"]},jwe={...Tn.RdGy,tags:["diverging"]},$we={...Tn.RdYlBu,tags:["diverging"]},Wwe={...Tn.RdYlGn,tags:["diverging"]},Jwe={...Tn.Spectral,tags:["diverging"]};const Xwe=Object.freeze(Object.defineProperty({__proto__:null,Antique:awe,ArmyRose:ewe,BluGrn:zxe,BluYl:jxe,Bold:cwe,BrwnYl:Qxe,Burg:Fxe,BurgYl:Oxe,DarkMint:Gxe,Earth:owe,Emrld:Vxe,Fall:twe,Geyser:rwe,Magenta:Yxe,Mint:Uxe,OrYel:Lxe,Pastel:lwe,Peach:Nxe,PinkYl:kxe,Prism:uwe,Purp:Jxe,PurpOr:Xxe,RedOr:Dxe,Safe:fwe,Sunset:Kxe,SunsetDark:qxe,Teal:$xe,TealGrn:Wxe,TealRose:iwe,Temps:nwe,Tropic:swe,Vivid:hwe,ag_GrnYl:Hxe,ag_Sunset:Zxe,cb_Accent:Ewe,cb_Blues:Fwe,cb_BrBG:Uwe,cb_BuGn:dwe,cb_BuPu:Awe,cb_Dark2:Twe,cb_GnBu:pwe,cb_Greens:Owe,cb_Greys:Dwe,cb_OrRd:gwe,cb_Oranges:Lwe,cb_PRGn:Gwe,cb_Paired:Bwe,cb_Pastel1:Swe,cb_Pastel2:Iwe,cb_PiYG:zwe,cb_PuBu:mwe,cb_PuBuGn:_we,cb_PuOr:Vwe,cb_PuRd:ywe,cb_Purples:Nwe,cb_RdBu:Hwe,cb_RdGy:jwe,cb_RdPu:vwe,cb_RdYlBu:$we,cb_RdYlGn:Wwe,cb_Reds:kwe,cb_Set1:Mwe,cb_Set2:Pwe,cb_Set3:Rwe,cb_Spectral:Jwe,cb_YlGn:bwe,cb_YlGnBu:xwe,cb_YlOrBr:wwe,cb_YlOrRd:Cwe},Symbol.toStringTag,{value:"Module"})),SE="PurpOr",IE=[204,204,204],Kwe=[119,119,119];function ME(r,e){const t=Xwe[r];let n=e;rh(t,`Palette "${r}" not found. Expected a CARTOColors string`);const i=Object.keys(t).filter(f=>f!=="tags").map(Number),o=Math.max(...i),s=Math.min(...i);!Number.isInteger(e)||e>o?n=o:e<s&&(n=s);let c=t[n];return t.tags&&t.tags.includes("qualitative")&&(c=c.slice(0,-1)),c.map(f=>Ywe(f))}function Ywe(r){let e=/^#?([a-f\d]{1})([a-f\d]{1})([a-f\d]{1})$/i.exec(r);return e?[parseInt(e[1]+e[1],16),parseInt(e[2]+e[2],16),parseInt(e[3]+e[3],16),255]:(e=/^#?([a-f\d]{1})([a-f\d]{1})([a-f\d]{1})([a-f\d]{1})$/i.exec(r),e?[parseInt(e[1]+e[1],16),parseInt(e[2]+e[2],16),parseInt(e[3]+e[3],16),parseInt(e[4]+e[4],16)]:(e=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(r),e?[parseInt(e[1],16),parseInt(e[2],16),parseInt(e[3],16),255]:(e=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(r),rh(e,`Hexadecimal color "${r}" was not parsed correctly`),[parseInt(e[1],16),parseInt(e[2],16),parseInt(e[3],16),parseInt(e[4],16)])))}const qwe=Object.freeze(["function","string"]);function PE(r,e,t){var n;return rh(typeof e=="object",'Expected "data" to be an object'),rh(qwe.includes(typeof r),'Expected "attr" to be a function or string'),typeof r=="function"?r(e,t):(n=e==null?void 0:e.properties)==null?void 0:n[r]}function Zwe({attr:r,domain:e,colors:t=SE,nullColor:n=IE}){rh(Array.isArray(e),'Expected "domain" to be an array of numbers');const i=typeof t=="string"?ME(t,e.length+1):t,o=n5().domain(e).range(i);return(s,c)=>{const f=PE(r,s,c);return typeof f=="number"&&Number.isFinite(f)?o(f):n}}function Qwe({attr:r,domain:e,colors:t=SE,nullColor:n=IE,othersColor:i=Kwe}){rh(Array.isArray(e),'Expected "domain" to be an array of numbers or strings');const o={},s=typeof t=="string"?ME(t,e.length):t;for(const[c,f]of e.entries())o[f]=s[c];return(c,f)=>{const _=PE(r,c,f);return typeof _=="number"&&Number.isFinite(_)||typeof _=="string"?o[_]||i:n}}function eCe({attr:r,domain:e,colors:t=SE,nullColor:n=IE}){rh(Array.isArray(e),'Expected "domain" to be an array of numbers');const i=typeof t=="string"?ME(t,e.length):t,o=i5().domain(e).range(i);return(s,c)=>{const f=PE(r,s,c);return typeof f=="number"&&Number.isFinite(f)?o(f):n}}function tCe({pointCount:r,getBinId:e}){const t=new Map;for(let n=0;n<r;n++){const i=e(n);if(i===null)continue;let o=t.get(String(i));o?o.points.push(n):(o={id:i,index:t.size,points:[n]},t.set(String(i),o))}return Array.from(t.values())}function rCe({bins:r,dimensions:e,target:t}){const n=r.length*e;(!t||t.length<n)&&(t=new Float32Array(n));for(let i=0;i<r.length;i++){const{id:o}=r[i];Array.isArray(o)?t.set(o,i*e):t[i]=o}return t}const nCe=r=>r.length,Zk=(r,e)=>{let t=0;for(const n of r)t+=e(n);return t},iCe=(r,e)=>r.length===0?NaN:Zk(r,e)/r.length,sCe=(r,e)=>{let t=1/0;for(const n of r){const i=e(n);i<t&&(t=i)}return t},oCe=(r,e)=>{let t=-1/0;for(const n of r){const i=e(n);i>t&&(t=i)}return t},aCe={COUNT:nCe,SUM:Zk,MEAN:iCe,MIN:sCe,MAX:oCe};function cCe({bins:r,getValue:e,operation:t,target:n}){(!n||n.length<r.length)&&(n=new Float32Array(r.length));let i=1/0,o=-1/0;for(let s=0;s<r.length;s++){const{points:c}=r[s];n[s]=t(c,e),n[s]<i&&(i=n[s]),n[s]>o&&(o=n[s])}return{value:n,domain:[i,o]}}function jF(r,e,t){const n={};for(const o of r.sources||[]){const s=e[o];if(s)n[o]=lCe(s);else throw new Error(`Cannot find attribute ${o}`)}const i={};return o=>{for(const s in n)i[s]=n[s](o);return r.getValue(i,o,t)}}function lCe(r){const e=r.value,{offset:t=0,stride:n,size:i}=r.getAccessor(),o=e.BYTES_PER_ELEMENT,s=t/o,c=n?n/o:i;if(i===1)return r.isConstant?()=>e[0]:_=>{const b=s+c*_;return e[b]};let f;return r.isConstant?(f=Array.from(e),()=>f):(f=new Array(i),_=>{const b=s+c*_;for(let T=0;T<i;T++)f[T]=e[b+T];return f})}class kA{constructor(e){this.bins=[],this.binIds=null,this.results=[],this.dimensions=e.dimensions,this.channelCount=e.getValue.length,this.props={...e,binOptions:{},pointCount:0,operations:[],customOperations:[],attributes:{}},this.needsUpdate=!0,this.setProps(e)}destroy(){}get binCount(){return this.bins.length}setProps(e){const t=this.props;if(e.binOptions&&(Ki(e.binOptions,t.binOptions,2)||this.setNeedsUpdate()),e.operations)for(let n=0;n<this.channelCount;n++)e.operations[n]!==t.operations[n]&&this.setNeedsUpdate(n);if(e.customOperations)for(let n=0;n<this.channelCount;n++)!!e.customOperations[n]!=!!t.customOperations[n]&&this.setNeedsUpdate(n);e.pointCount!==void 0&&e.pointCount!==t.pointCount&&this.setNeedsUpdate(),e.attributes&&(e.attributes={...t.attributes,...e.attributes}),Object.assign(this.props,e)}setNeedsUpdate(e){e===void 0?this.needsUpdate=!0:this.needsUpdate!==!0&&(this.needsUpdate=this.needsUpdate||[],this.needsUpdate[e]=!0)}update(){var e,t,n,i;if(this.needsUpdate===!0){this.bins=tCe({pointCount:this.props.pointCount,getBinId:jF(this.props.getBin,this.props.attributes,this.props.binOptions)});const o=rCe({bins:this.bins,dimensions:this.dimensions,target:(e=this.binIds)==null?void 0:e.value});this.binIds={value:o,type:"float32",size:this.dimensions}}for(let o=0;o<this.channelCount;o++)if(this.needsUpdate===!0||this.needsUpdate[o]){const s=this.props.customOperations[o]||aCe[this.props.operations[o]],{value:c,domain:f}=cCe({bins:this.bins,getValue:jF(this.props.getValue[o],this.props.attributes,void 0),operation:s,target:(t=this.results[o])==null?void 0:t.value});this.results[o]={value:c,domain:f,type:"float32",size:1},(i=(n=this.props).onUpdate)==null||i.call(n,{channel:o})}this.needsUpdate=!1}preDraw(){}getBins(){return this.binIds}getResult(e){return this.results[e]}getResultDomain(e){var t;return((t=this.results[e])==null?void 0:t.domain)??[1/0,-1/0]}getBin(e){const t=this.bins[e];if(!t)return null;const n=new Array(this.channelCount);for(let i=0;i<n.length;i++){const o=this.results[i];n[i]=o==null?void 0:o.value[e]}return{id:t.id,value:n,count:t.points.length,pointIndices:t.points}}}function Qk(r,e,t){return r.createFramebuffer({width:e,height:t,colorAttachments:[r.createTexture({width:e,height:t,format:"rgba32float",mipmaps:!1,sampler:{minFilter:"nearest",magFilter:"nearest"}})]})}const uCe=`uniform binSorterUniforms {
|
4846
|
+
`,lxe={...il.defaultProps,extruded:!1,diskResolution:4,vertices:[[-.5,-.5],[.5,-.5],[.5,.5],[-.5,.5]]};class Hk extends Nk(il){getShaders(){const e=super.getShaders(),t=this.props.data,n=t.data.blockSize??Math.sqrt(t.length);return{...e,defines:{...e.defines,BLOCK_WIDTH:n},vs:cxe}}initializeState(){this.getAttributeManager().addInstanced({instanceElevations:{size:1,transition:!0,accessor:"getElevation"},instanceFillColors:{size:this.props.colorFormat.length,type:"unorm8",transition:!0,accessor:"getFillColor",defaultValue:[0,0,0,255]},instanceLineColors:{size:this.props.colorFormat.length,type:"unorm8",transition:!0,accessor:"getLineColor",defaultValue:[255,255,255,255]}})}}Hk.layerName="RasterColumnLayer";function uxe(r,e){return r.data===e.data&&r.length===e.length}class wE extends ys{renderLayers(){const{data:e,getElevation:t,getFillColor:n,getLineColor:i,getLineWidth:o,tileIndex:s,updateTriggers:c}=this.props;if(!e||!s)return null;const f=e.blockSize??0,[_,b,T]=Bk(s),S=[_,b],D=T/f,k=this.getSubLayerClass("column",Hk),{highlightedObjectIndex:G,highlightColor:W}=this.state;return new k(this.props,this.getSubLayerProps({id:"cell",updateTriggers:c,getElevation:this.getSubLayerAccessor(t),getFillColor:this.getSubLayerAccessor(n),getLineColor:this.getSubLayerAccessor(i),getLineWidth:this.getSubLayerAccessor(o)}),{data:{data:e,length:f*f},dataComparator:uxe,offset:S,lineWidthScale:D,highlightedObjectIndex:G,highlightColor:W,parameters:{blendColorSrcFactor:"one",blendAlphaSrcFactor:"one",blendColorDstFactor:"zero",blendAlphaDstFactor:"zero",blendColorOperation:"add",blendAlphaOperation:"add"}})}getSubLayerAccessor(e){return typeof e!="function"?super.getSubLayerAccessor(e):(t,n)=>{const{data:i,index:o}=n,s=i.data,c=_2e(s.cells,o);return e({properties:c},n)}}getPickingInfo(e){const t=super.getPickingInfo(e);return t.index!==-1&&(t.object=this.getSubLayerAccessor(n=>n)(void 0,{data:this.props,index:t.index})),t}_updateAutoHighlight(e){const{highlightedObjectIndex:t}=this.state;let n=-1;if(e.index!==-1&&(n=e.index),t!==n){let{highlightColor:i}=this.props;typeof i=="function"&&(i=i(e)),this.setState({highlightColor:i,highlightedObjectIndex:n})}}}wE.layerName="RasterLayer";wE.defaultProps=lxe;const fxe={uint8:Uint8Array,uint16:Uint16Array,uint32:Uint32Array,uint64:BigUint64Array,int8:Int8Array,int16:Int16Array,int32:Int32Array,int64:BigInt64Array,float32:Float32Array,float64:Float64Array};class CE{static read(e,t){return e.readFields(CE._readField,{name:"",type:"",data:null},t)}static _readField(e,t,n){if(e===1)t.name=n.readString();else if(e===2)t.type=n.readString();else if(e===3){const i=fxe[t.type];if(!i)throw Error(`Invalid data type: ${t.type}`);t.data={};const{compression:o}=Jx;Yy(i,n,t.data,{compression:o})}}}let Jx=class jk{static read(e,t){return e.readFields(jk._readField,{blockSize:0,bands:[]},t)}static _readField(e,t,n){e===1?t.blockSize=n.readVarint():e===2&&t.bands.push(CE.read(n,n.readVarint()+n.pos))}};const $k="9.1.12",Wk="cartoRasterTile",hxe={cartoRasterTile:{metadata:null,workerUrl:Ky(Wk,$k)}},dxe={name:"CARTO Raster Tile",version:$k,id:Wk,module:"carto",extensions:["pbf"],mimeTypes:["application/vnd.carto-raster-tile"],category:"geometry",parse:async(r,e)=>GF(r,e),parseSync:GF,worker:!0,options:hxe};function GF(r,e){var c;const t=(c=e==null?void 0:e.cartoRasterTile)==null?void 0:c.metadata;if(!r||!t)return null;Jx.compression=t.compression;const n=qy(r,Jx),{bands:i,blockSize:o}=n,s={};for(let f=0;f<i.length;f++){const{name:_,data:b}=i[f];s[_]=b}return{blockSize:o,cells:{numericProps:s,properties:[]}}}Ig([dxe]);const Axe=r=>{var t,n;const e=(n=(t=r.tile)==null?void 0:t.index)==null?void 0:n.q;return e?new wE(r,{tileIndex:e}):null},pxe={data:nh,refinementStrategy:"no-overlap",tileSize:LA};class gxe extends kk(Wl,Y2e){filterSubLayer(e){const{tile:t}=e.layer.props;return t?super.filterSubLayer(e):!0}}class EE extends ys{getLoadOptions(){const e=this.props.data;return NA(super.getLoadOptions(),{fetch:{headers:{Authorization:`Bearer ${e.accessToken}`}}})}renderLayers(){const e=this.props.data;if(!e)return null;const{tiles:t,minzoom:n,maxzoom:i,raster_metadata:o}=e,s=this.getSubLayerClass("tile",gxe),c=this.getLoadOptions();return new s(this.props,{id:`raster-tile-layer-${this.props.id}`,data:t,TilesetClass:uE,renderSubLayers:Axe,minZoom:n,maxZoom:i,loadOptions:{...c,cartoRasterTile:{...c==null?void 0:c.cartoRasterTile,metadata:o}}})}}EE.layerName="RasterTileLayer";EE.defaultProps=pxe;class TE{static read(e,t){return e.readFields(TE._readField,{properties:[],numericProps:{}},t)}static _readField(e,t,n){if(e===1)t.properties.push(gh.read(n,n.readVarint()+n.pos));else if(e===2){const i=mh.read(n,n.readVarint()+n.pos);t.numericProps[i.key]=i.value}}}const Jk="9.1.12",Xk="cartoPropertiesTile",mxe={cartoPropertiesTile:{workerUrl:Ky(Xk,Jk)}},_xe={name:"CARTO Properties Tile",version:Jk,id:Xk,module:"carto",extensions:["pbf"],mimeTypes:["application/vnd.carto-properties-tile"],category:"geometry",worker:!0,parse:async(r,e)=>VF(r),parseSync:VF,options:mxe};function VF(r,e){return r?qy(r,TE):null}const Kk="9.1.12",Yk="cartoVectorTile",yxe={cartoVectorTile:{workerUrl:Ky(Yk,Kk)}},vxe={name:"CARTO Vector Tile",version:Kk,id:Yk,module:"carto",extensions:["pbf"],mimeTypes:["application/vnd.carto-vector-tile"],category:"geometry",parse:async(r,e)=>HF(r),parseSync:HF,worker:!0,options:yxe};function bxe(r,e,{startPosition:t,endPosition:n,indices:i}){const o=r.positions.size,s=t*o,c=n*o,f=r.positions.value.subarray(s,c),_=i.slice(1).map(T=>T-t),b=r8(f,_,o);for(let T=0,S=b.length;T<S;++T)e.push(t+b[T])}function xxe(r){const{polygonIndices:e,primitivePolygonIndices:t}=r,n=[];let i=0;for(let o=0;o<e.value.length-1;o++){const s=e.value[o],c=e.value[o+1],f=t.value.indexOf(c),_=t.value.subarray(i,f);i=f,bxe(r,n,{startPosition:s,endPosition:c,indices:_})}r.triangles={value:new Uint32Array(n),size:1}}function HF(r,e){if(!r)return null;const t=qy(r,R2e);return t.polygons&&!t.polygons.triangles&&xxe(t.polygons),t}function wxe(r,e){const t=e?e in r.numericProps:!1,n=new Map;for(let b=0;b<r.pathIndices.value.length-1;b++){const T=r.pathIndices.value[b],S=r.featureIds.value[T];let D;e===void 0?D=S:t?D=r.numericProps[e].value[T]:r.properties[S]&&e in r.properties[S]?D=r.properties[S][e]:D=void 0;const k=Mxe(r,b);(!n.has(D)||k>n.get(D).length)&&n.set(D,{index:b,length:k})}const i=[],o=[],s=[],c=[],f=Ek(n.size,r.numericProps);let _=0;for(const[b,{index:T}]of n){const S=Pxe(r,T);i.push(...S);const D=r.pathIndices.value[T],k=r.featureIds.value[D];s.push(_),o.push(r.properties[k]),c.push(r.globalFeatureIds.value[D]),Tk(r.numericProps,f,D,_),_++}return lE(i,s,c,f,o)}function Cxe(r,e,t){const{west:n,south:i,east:o,north:s}=e,f=(o-n)*(s-i)*1e-4,_=[],b=[],T=[],S=[],D=Ek(r.polygonIndices.value.length-1,r.numericProps);let k=0,G=0;const{extruded:W}=t;for(let z=0;z<r.polygonIndices.value.length-1;z++){const j=r.polygonIndices.value[z],K=r.polygonIndices.value[z+1];if(Exe(r,z)<f)continue;const fe=Sxe(r,z);let Z=-1,ae=[0,0],Be=!1;for(;G<r.triangles.value.length;){const de=r.triangles.value[G];if(de>=K)break;if(Be){G+=3;continue}const _e=r.triangles.value[G+1],pe=r.triangles.value[G+2],J=r.positions.value.subarray(de*r.positions.size,de*r.positions.size+r.positions.size),te=r.positions.value.subarray(_e*r.positions.size,_e*r.positions.size+r.positions.size),be=r.positions.value.subarray(pe*r.positions.size,pe*r.positions.size+r.positions.size);if(Bxe(fe,J,te,be))Be=!0;else{const Qe=qk(J,te,be);Qe>Z&&(Z=Qe,ae=[(J[0]+te[0]+be[0])/3,(J[1]+te[1]+be[1])/3])}G+=3}const Ne=Be?fe:ae;if(Txe(Ne,e)){_.push(...Ne);const de=r.featureIds.value[j];if(W){const _e=t.getElevation(void 0,{data:r,index:de});_.push(_e*t.elevationScale)}b.push(r.properties[de]),T.push(k),S.push(r.globalFeatureIds.value[j]),Tk(r.numericProps,D,j,k),k++}}return r.numericProps&&Object.keys(D).forEach(z=>{D[z].value=D[z].value.slice(0,k)}),lE(_,T,S,D,b,W?3:2)}function Exe(r,e){const{positions:{value:t,size:n},polygonIndices:{value:i},triangles:{value:o}}=r,s=i[e],c=i[e+1];let f=0,_=0;for(;_<o.length&&!(o[_]>=s);)_+=3;for(;_<o.length;){const b=o[_];if(b>=c)break;const T=o[_+1],S=o[_+2],D=t.subarray(b*n,b*n+n),k=t.subarray(T*n,T*n+n),G=t.subarray(S*n,S*n+n);f+=qk(D,k,G),_+=3}return f}function Txe([r,e],{west:t,east:n,south:i,north:o}){return r>=t&&r<n&&e>=i&&e<o}function Bxe(r,e,t,n){const i=Math.abs((t[0]-e[0])*(n[1]-e[1])-(n[0]-e[0])*(t[1]-e[1]))/2,o=Math.abs((e[0]-r[0])*(t[1]-r[1])-(t[0]-r[0])*(e[1]-r[1]))/2,s=Math.abs((t[0]-r[0])*(n[1]-r[1])-(n[0]-r[0])*(t[1]-r[1]))/2,c=Math.abs((n[0]-r[0])*(e[1]-r[1])-(e[0]-r[0])*(n[1]-r[1]))/2;return Math.abs(i-(o+s+c))<1e-10}function qk([r,e],[t,n],[i,o]){return Math.abs((r*(n-o)+t*(o-e)+i*(e-n))/2)}function Sxe(r,e){const{positions:{value:t,size:n}}=r,i=n*r.polygonIndices.value[e],o=n*r.polygonIndices.value[e+1];let s=1/0,c=1/0,f=-1/0,_=-1/0;for(let b=i;b<o;b+=n){const[T,S]=t.subarray(b,b+2);s=Math.min(s,T),c=Math.min(c,S),f=Math.max(f,T),_=Math.max(_,S)}return[(s+f)/2,(c+_)/2]}function Ixe(r,e){const{positions:{value:t}}=r,[n,i,o,s]=t.subarray(e,e+4);return Math.sqrt(Math.pow(o-n,2)+Math.pow(s-i,2))}function Mxe(r,e){const{positions:{size:t}}=r,n=t*r.pathIndices.value[e],i=t*r.pathIndices.value[e+1];let o=0;for(let s=n;s<i;s+=t)o+=Ixe(r,s);return o}function Pxe(r,e){const{positions:{value:t},pathIndices:{value:n}}=r,i=n[e]*2,s=(n[e+1]*2-i)/2;if(s===2){const[f,_,b,T]=t.subarray(i,i+4);return[(f+b)/2,(_+T)/2]}const c=i+Math.floor(s/2)*2;return[t[c],t[c+1]]}Ig([_xe,vxe]);const Rxe={...DA.defaultProps,autoLabels:!1,data:nh,dataComparator:nh.equal,tileSize:LA};class BE extends DA{constructor(...e){super(...e)}initializeState(){super.initializeState(),this.setState({binary:!0})}updateState(e){const{props:t}=e;if(t.data){super.updateState(e);const i=new URL(t.data.tiles[0]).searchParams.get("formatTiles")==="mvt";this.setState({mvt:i})}}getLoadOptions(){const e=this.props.data;return NA(super.getLoadOptions(),{fetch:{headers:{Authorization:`Bearer ${e.accessToken}`}},gis:{format:"binary"}})}async getTileData(e){const t=this.props.data,{tiles:n,properties_tiles:i}=t,o=eh(n,e);if(!o)return Promise.reject("Invalid URL");const s=this.getLoadOptions(),{fetch:c}=this.props,{signal:f}=e,_=c(o,{propName:"data",layer:this,loadOptions:s,signal:f});if(!i)return await _;const b=eh(i,e);if(!b)return Promise.reject("Invalid properties URL");const T=c(b,{propName:"data",layer:this,loadOptions:s,signal:f}),[S,D]=await Promise.all([_,T]);return S?D?L2e(S,D):S:null}renderSubLayers(e){var o,s,c;if(e.data===null)return null;const t=e.tile.bbox,n=[],i={"points-text":{type:ev,...(o=e==null?void 0:e._subLayerProps)==null?void 0:o["points-text"],extensions:[new oE,...e.extensions||[],...((c=(s=e==null?void 0:e._subLayerProps)==null?void 0:s["points-text"])==null?void 0:c.extensions)||[]]}};if(this.state.mvt)n.push(super.renderSubLayers(e));else{const{west:f,south:_,east:b,north:T}=t,S=[new Jy,...e.extensions||[]],D={clipBounds:[f,_,b,T]},k=W=>{var z,j,K;return{[W]:{...D,...(z=e==null?void 0:e._subLayerProps)==null?void 0:z[W],extensions:[...S,...((K=(j=e==null?void 0:e._subLayerProps)==null?void 0:j[W])==null?void 0:K.extensions)||[]]}}},G={...e,data:{...e.data,tileBbox:t},autoHighlight:!1,_subLayerProps:{...e._subLayerProps,...i,...k("polygons-fill"),...k("polygons-stroke"),...k("linestrings")}};n.push(new jl(G))}if(n[0]&&e.autoLabels){const f=Ck();e.data.lines&&e.data.lines.positions.value.length>0&&(f.points=wxe(e.data.lines,typeof e.autoLabels=="object"?e.autoLabels.uniqueIdProperty:void 0)),e.data.polygons&&e.data.polygons.positions.value.length>0&&(f.points=Cxe(e.data.polygons,t,e)),n.push(n[0].clone({id:`${e.id}-labels`,data:f,pickable:!1,autoHighlight:!1}))}return n}renderLayers(){const e=super.renderLayers();if(!this.props.autoLabels)return e;const t=e.flat().filter(Boolean);return t.sort((n,i)=>{const o=n.id.includes("labels"),s=i.id.includes("labels");return o&&!s?1:!o&&s?-1:0}),t.map(n=>n.id.includes("labels")?n.clone({highlightedObjectIndex:-1}):n)}_isWGS84(){return this.state.mvt?super._isWGS84():!0}}BE.layerName="VectorTileLayer";BE.defaultProps=Rxe;var Tn={YlGn:{3:["#f7fcb9","#addd8e","#31a354"],4:["#ffffcc","#c2e699","#78c679","#238443"],5:["#ffffcc","#c2e699","#78c679","#31a354","#006837"],6:["#ffffcc","#d9f0a3","#addd8e","#78c679","#31a354","#006837"],7:["#ffffcc","#d9f0a3","#addd8e","#78c679","#41ab5d","#238443","#005a32"],8:["#ffffe5","#f7fcb9","#d9f0a3","#addd8e","#78c679","#41ab5d","#238443","#005a32"],9:["#ffffe5","#f7fcb9","#d9f0a3","#addd8e","#78c679","#41ab5d","#238443","#006837","#004529"]},YlGnBu:{3:["#edf8b1","#7fcdbb","#2c7fb8"],4:["#ffffcc","#a1dab4","#41b6c4","#225ea8"],5:["#ffffcc","#a1dab4","#41b6c4","#2c7fb8","#253494"],6:["#ffffcc","#c7e9b4","#7fcdbb","#41b6c4","#2c7fb8","#253494"],7:["#ffffcc","#c7e9b4","#7fcdbb","#41b6c4","#1d91c0","#225ea8","#0c2c84"],8:["#ffffd9","#edf8b1","#c7e9b4","#7fcdbb","#41b6c4","#1d91c0","#225ea8","#0c2c84"],9:["#ffffd9","#edf8b1","#c7e9b4","#7fcdbb","#41b6c4","#1d91c0","#225ea8","#253494","#081d58"]},GnBu:{3:["#e0f3db","#a8ddb5","#43a2ca"],4:["#f0f9e8","#bae4bc","#7bccc4","#2b8cbe"],5:["#f0f9e8","#bae4bc","#7bccc4","#43a2ca","#0868ac"],6:["#f0f9e8","#ccebc5","#a8ddb5","#7bccc4","#43a2ca","#0868ac"],7:["#f0f9e8","#ccebc5","#a8ddb5","#7bccc4","#4eb3d3","#2b8cbe","#08589e"],8:["#f7fcf0","#e0f3db","#ccebc5","#a8ddb5","#7bccc4","#4eb3d3","#2b8cbe","#08589e"],9:["#f7fcf0","#e0f3db","#ccebc5","#a8ddb5","#7bccc4","#4eb3d3","#2b8cbe","#0868ac","#084081"]},BuGn:{3:["#e5f5f9","#99d8c9","#2ca25f"],4:["#edf8fb","#b2e2e2","#66c2a4","#238b45"],5:["#edf8fb","#b2e2e2","#66c2a4","#2ca25f","#006d2c"],6:["#edf8fb","#ccece6","#99d8c9","#66c2a4","#2ca25f","#006d2c"],7:["#edf8fb","#ccece6","#99d8c9","#66c2a4","#41ae76","#238b45","#005824"],8:["#f7fcfd","#e5f5f9","#ccece6","#99d8c9","#66c2a4","#41ae76","#238b45","#005824"],9:["#f7fcfd","#e5f5f9","#ccece6","#99d8c9","#66c2a4","#41ae76","#238b45","#006d2c","#00441b"]},PuBuGn:{3:["#ece2f0","#a6bddb","#1c9099"],4:["#f6eff7","#bdc9e1","#67a9cf","#02818a"],5:["#f6eff7","#bdc9e1","#67a9cf","#1c9099","#016c59"],6:["#f6eff7","#d0d1e6","#a6bddb","#67a9cf","#1c9099","#016c59"],7:["#f6eff7","#d0d1e6","#a6bddb","#67a9cf","#3690c0","#02818a","#016450"],8:["#fff7fb","#ece2f0","#d0d1e6","#a6bddb","#67a9cf","#3690c0","#02818a","#016450"],9:["#fff7fb","#ece2f0","#d0d1e6","#a6bddb","#67a9cf","#3690c0","#02818a","#016c59","#014636"]},PuBu:{3:["#ece7f2","#a6bddb","#2b8cbe"],4:["#f1eef6","#bdc9e1","#74a9cf","#0570b0"],5:["#f1eef6","#bdc9e1","#74a9cf","#2b8cbe","#045a8d"],6:["#f1eef6","#d0d1e6","#a6bddb","#74a9cf","#2b8cbe","#045a8d"],7:["#f1eef6","#d0d1e6","#a6bddb","#74a9cf","#3690c0","#0570b0","#034e7b"],8:["#fff7fb","#ece7f2","#d0d1e6","#a6bddb","#74a9cf","#3690c0","#0570b0","#034e7b"],9:["#fff7fb","#ece7f2","#d0d1e6","#a6bddb","#74a9cf","#3690c0","#0570b0","#045a8d","#023858"]},BuPu:{3:["#e0ecf4","#9ebcda","#8856a7"],4:["#edf8fb","#b3cde3","#8c96c6","#88419d"],5:["#edf8fb","#b3cde3","#8c96c6","#8856a7","#810f7c"],6:["#edf8fb","#bfd3e6","#9ebcda","#8c96c6","#8856a7","#810f7c"],7:["#edf8fb","#bfd3e6","#9ebcda","#8c96c6","#8c6bb1","#88419d","#6e016b"],8:["#f7fcfd","#e0ecf4","#bfd3e6","#9ebcda","#8c96c6","#8c6bb1","#88419d","#6e016b"],9:["#f7fcfd","#e0ecf4","#bfd3e6","#9ebcda","#8c96c6","#8c6bb1","#88419d","#810f7c","#4d004b"]},RdPu:{3:["#fde0dd","#fa9fb5","#c51b8a"],4:["#feebe2","#fbb4b9","#f768a1","#ae017e"],5:["#feebe2","#fbb4b9","#f768a1","#c51b8a","#7a0177"],6:["#feebe2","#fcc5c0","#fa9fb5","#f768a1","#c51b8a","#7a0177"],7:["#feebe2","#fcc5c0","#fa9fb5","#f768a1","#dd3497","#ae017e","#7a0177"],8:["#fff7f3","#fde0dd","#fcc5c0","#fa9fb5","#f768a1","#dd3497","#ae017e","#7a0177"],9:["#fff7f3","#fde0dd","#fcc5c0","#fa9fb5","#f768a1","#dd3497","#ae017e","#7a0177","#49006a"]},PuRd:{3:["#e7e1ef","#c994c7","#dd1c77"],4:["#f1eef6","#d7b5d8","#df65b0","#ce1256"],5:["#f1eef6","#d7b5d8","#df65b0","#dd1c77","#980043"],6:["#f1eef6","#d4b9da","#c994c7","#df65b0","#dd1c77","#980043"],7:["#f1eef6","#d4b9da","#c994c7","#df65b0","#e7298a","#ce1256","#91003f"],8:["#f7f4f9","#e7e1ef","#d4b9da","#c994c7","#df65b0","#e7298a","#ce1256","#91003f"],9:["#f7f4f9","#e7e1ef","#d4b9da","#c994c7","#df65b0","#e7298a","#ce1256","#980043","#67001f"]},OrRd:{3:["#fee8c8","#fdbb84","#e34a33"],4:["#fef0d9","#fdcc8a","#fc8d59","#d7301f"],5:["#fef0d9","#fdcc8a","#fc8d59","#e34a33","#b30000"],6:["#fef0d9","#fdd49e","#fdbb84","#fc8d59","#e34a33","#b30000"],7:["#fef0d9","#fdd49e","#fdbb84","#fc8d59","#ef6548","#d7301f","#990000"],8:["#fff7ec","#fee8c8","#fdd49e","#fdbb84","#fc8d59","#ef6548","#d7301f","#990000"],9:["#fff7ec","#fee8c8","#fdd49e","#fdbb84","#fc8d59","#ef6548","#d7301f","#b30000","#7f0000"]},YlOrRd:{3:["#ffeda0","#feb24c","#f03b20"],4:["#ffffb2","#fecc5c","#fd8d3c","#e31a1c"],5:["#ffffb2","#fecc5c","#fd8d3c","#f03b20","#bd0026"],6:["#ffffb2","#fed976","#feb24c","#fd8d3c","#f03b20","#bd0026"],7:["#ffffb2","#fed976","#feb24c","#fd8d3c","#fc4e2a","#e31a1c","#b10026"],8:["#ffffcc","#ffeda0","#fed976","#feb24c","#fd8d3c","#fc4e2a","#e31a1c","#b10026"],9:["#ffffcc","#ffeda0","#fed976","#feb24c","#fd8d3c","#fc4e2a","#e31a1c","#bd0026","#800026"]},YlOrBr:{3:["#fff7bc","#fec44f","#d95f0e"],4:["#ffffd4","#fed98e","#fe9929","#cc4c02"],5:["#ffffd4","#fed98e","#fe9929","#d95f0e","#993404"],6:["#ffffd4","#fee391","#fec44f","#fe9929","#d95f0e","#993404"],7:["#ffffd4","#fee391","#fec44f","#fe9929","#ec7014","#cc4c02","#8c2d04"],8:["#ffffe5","#fff7bc","#fee391","#fec44f","#fe9929","#ec7014","#cc4c02","#8c2d04"],9:["#ffffe5","#fff7bc","#fee391","#fec44f","#fe9929","#ec7014","#cc4c02","#993404","#662506"]},Purples:{3:["#efedf5","#bcbddc","#756bb1"],4:["#f2f0f7","#cbc9e2","#9e9ac8","#6a51a3"],5:["#f2f0f7","#cbc9e2","#9e9ac8","#756bb1","#54278f"],6:["#f2f0f7","#dadaeb","#bcbddc","#9e9ac8","#756bb1","#54278f"],7:["#f2f0f7","#dadaeb","#bcbddc","#9e9ac8","#807dba","#6a51a3","#4a1486"],8:["#fcfbfd","#efedf5","#dadaeb","#bcbddc","#9e9ac8","#807dba","#6a51a3","#4a1486"],9:["#fcfbfd","#efedf5","#dadaeb","#bcbddc","#9e9ac8","#807dba","#6a51a3","#54278f","#3f007d"]},Blues:{3:["#deebf7","#9ecae1","#3182bd"],4:["#eff3ff","#bdd7e7","#6baed6","#2171b5"],5:["#eff3ff","#bdd7e7","#6baed6","#3182bd","#08519c"],6:["#eff3ff","#c6dbef","#9ecae1","#6baed6","#3182bd","#08519c"],7:["#eff3ff","#c6dbef","#9ecae1","#6baed6","#4292c6","#2171b5","#084594"],8:["#f7fbff","#deebf7","#c6dbef","#9ecae1","#6baed6","#4292c6","#2171b5","#084594"],9:["#f7fbff","#deebf7","#c6dbef","#9ecae1","#6baed6","#4292c6","#2171b5","#08519c","#08306b"]},Greens:{3:["#e5f5e0","#a1d99b","#31a354"],4:["#edf8e9","#bae4b3","#74c476","#238b45"],5:["#edf8e9","#bae4b3","#74c476","#31a354","#006d2c"],6:["#edf8e9","#c7e9c0","#a1d99b","#74c476","#31a354","#006d2c"],7:["#edf8e9","#c7e9c0","#a1d99b","#74c476","#41ab5d","#238b45","#005a32"],8:["#f7fcf5","#e5f5e0","#c7e9c0","#a1d99b","#74c476","#41ab5d","#238b45","#005a32"],9:["#f7fcf5","#e5f5e0","#c7e9c0","#a1d99b","#74c476","#41ab5d","#238b45","#006d2c","#00441b"]},Oranges:{3:["#fee6ce","#fdae6b","#e6550d"],4:["#feedde","#fdbe85","#fd8d3c","#d94701"],5:["#feedde","#fdbe85","#fd8d3c","#e6550d","#a63603"],6:["#feedde","#fdd0a2","#fdae6b","#fd8d3c","#e6550d","#a63603"],7:["#feedde","#fdd0a2","#fdae6b","#fd8d3c","#f16913","#d94801","#8c2d04"],8:["#fff5eb","#fee6ce","#fdd0a2","#fdae6b","#fd8d3c","#f16913","#d94801","#8c2d04"],9:["#fff5eb","#fee6ce","#fdd0a2","#fdae6b","#fd8d3c","#f16913","#d94801","#a63603","#7f2704"]},Reds:{3:["#fee0d2","#fc9272","#de2d26"],4:["#fee5d9","#fcae91","#fb6a4a","#cb181d"],5:["#fee5d9","#fcae91","#fb6a4a","#de2d26","#a50f15"],6:["#fee5d9","#fcbba1","#fc9272","#fb6a4a","#de2d26","#a50f15"],7:["#fee5d9","#fcbba1","#fc9272","#fb6a4a","#ef3b2c","#cb181d","#99000d"],8:["#fff5f0","#fee0d2","#fcbba1","#fc9272","#fb6a4a","#ef3b2c","#cb181d","#99000d"],9:["#fff5f0","#fee0d2","#fcbba1","#fc9272","#fb6a4a","#ef3b2c","#cb181d","#a50f15","#67000d"]},Greys:{3:["#f0f0f0","#bdbdbd","#636363"],4:["#f7f7f7","#cccccc","#969696","#525252"],5:["#f7f7f7","#cccccc","#969696","#636363","#252525"],6:["#f7f7f7","#d9d9d9","#bdbdbd","#969696","#636363","#252525"],7:["#f7f7f7","#d9d9d9","#bdbdbd","#969696","#737373","#525252","#252525"],8:["#ffffff","#f0f0f0","#d9d9d9","#bdbdbd","#969696","#737373","#525252","#252525"],9:["#ffffff","#f0f0f0","#d9d9d9","#bdbdbd","#969696","#737373","#525252","#252525","#000000"]},PuOr:{3:["#f1a340","#f7f7f7","#998ec3"],4:["#e66101","#fdb863","#b2abd2","#5e3c99"],5:["#e66101","#fdb863","#f7f7f7","#b2abd2","#5e3c99"],6:["#b35806","#f1a340","#fee0b6","#d8daeb","#998ec3","#542788"],7:["#b35806","#f1a340","#fee0b6","#f7f7f7","#d8daeb","#998ec3","#542788"],8:["#b35806","#e08214","#fdb863","#fee0b6","#d8daeb","#b2abd2","#8073ac","#542788"],9:["#b35806","#e08214","#fdb863","#fee0b6","#f7f7f7","#d8daeb","#b2abd2","#8073ac","#542788"],10:["#7f3b08","#b35806","#e08214","#fdb863","#fee0b6","#d8daeb","#b2abd2","#8073ac","#542788","#2d004b"],11:["#7f3b08","#b35806","#e08214","#fdb863","#fee0b6","#f7f7f7","#d8daeb","#b2abd2","#8073ac","#542788","#2d004b"]},BrBG:{3:["#d8b365","#f5f5f5","#5ab4ac"],4:["#a6611a","#dfc27d","#80cdc1","#018571"],5:["#a6611a","#dfc27d","#f5f5f5","#80cdc1","#018571"],6:["#8c510a","#d8b365","#f6e8c3","#c7eae5","#5ab4ac","#01665e"],7:["#8c510a","#d8b365","#f6e8c3","#f5f5f5","#c7eae5","#5ab4ac","#01665e"],8:["#8c510a","#bf812d","#dfc27d","#f6e8c3","#c7eae5","#80cdc1","#35978f","#01665e"],9:["#8c510a","#bf812d","#dfc27d","#f6e8c3","#f5f5f5","#c7eae5","#80cdc1","#35978f","#01665e"],10:["#543005","#8c510a","#bf812d","#dfc27d","#f6e8c3","#c7eae5","#80cdc1","#35978f","#01665e","#003c30"],11:["#543005","#8c510a","#bf812d","#dfc27d","#f6e8c3","#f5f5f5","#c7eae5","#80cdc1","#35978f","#01665e","#003c30"]},PRGn:{3:["#af8dc3","#f7f7f7","#7fbf7b"],4:["#7b3294","#c2a5cf","#a6dba0","#008837"],5:["#7b3294","#c2a5cf","#f7f7f7","#a6dba0","#008837"],6:["#762a83","#af8dc3","#e7d4e8","#d9f0d3","#7fbf7b","#1b7837"],7:["#762a83","#af8dc3","#e7d4e8","#f7f7f7","#d9f0d3","#7fbf7b","#1b7837"],8:["#762a83","#9970ab","#c2a5cf","#e7d4e8","#d9f0d3","#a6dba0","#5aae61","#1b7837"],9:["#762a83","#9970ab","#c2a5cf","#e7d4e8","#f7f7f7","#d9f0d3","#a6dba0","#5aae61","#1b7837"],10:["#40004b","#762a83","#9970ab","#c2a5cf","#e7d4e8","#d9f0d3","#a6dba0","#5aae61","#1b7837","#00441b"],11:["#40004b","#762a83","#9970ab","#c2a5cf","#e7d4e8","#f7f7f7","#d9f0d3","#a6dba0","#5aae61","#1b7837","#00441b"]},PiYG:{3:["#e9a3c9","#f7f7f7","#a1d76a"],4:["#d01c8b","#f1b6da","#b8e186","#4dac26"],5:["#d01c8b","#f1b6da","#f7f7f7","#b8e186","#4dac26"],6:["#c51b7d","#e9a3c9","#fde0ef","#e6f5d0","#a1d76a","#4d9221"],7:["#c51b7d","#e9a3c9","#fde0ef","#f7f7f7","#e6f5d0","#a1d76a","#4d9221"],8:["#c51b7d","#de77ae","#f1b6da","#fde0ef","#e6f5d0","#b8e186","#7fbc41","#4d9221"],9:["#c51b7d","#de77ae","#f1b6da","#fde0ef","#f7f7f7","#e6f5d0","#b8e186","#7fbc41","#4d9221"],10:["#8e0152","#c51b7d","#de77ae","#f1b6da","#fde0ef","#e6f5d0","#b8e186","#7fbc41","#4d9221","#276419"],11:["#8e0152","#c51b7d","#de77ae","#f1b6da","#fde0ef","#f7f7f7","#e6f5d0","#b8e186","#7fbc41","#4d9221","#276419"]},RdBu:{3:["#ef8a62","#f7f7f7","#67a9cf"],4:["#ca0020","#f4a582","#92c5de","#0571b0"],5:["#ca0020","#f4a582","#f7f7f7","#92c5de","#0571b0"],6:["#b2182b","#ef8a62","#fddbc7","#d1e5f0","#67a9cf","#2166ac"],7:["#b2182b","#ef8a62","#fddbc7","#f7f7f7","#d1e5f0","#67a9cf","#2166ac"],8:["#b2182b","#d6604d","#f4a582","#fddbc7","#d1e5f0","#92c5de","#4393c3","#2166ac"],9:["#b2182b","#d6604d","#f4a582","#fddbc7","#f7f7f7","#d1e5f0","#92c5de","#4393c3","#2166ac"],10:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#d1e5f0","#92c5de","#4393c3","#2166ac","#053061"],11:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#f7f7f7","#d1e5f0","#92c5de","#4393c3","#2166ac","#053061"]},RdGy:{3:["#ef8a62","#ffffff","#999999"],4:["#ca0020","#f4a582","#bababa","#404040"],5:["#ca0020","#f4a582","#ffffff","#bababa","#404040"],6:["#b2182b","#ef8a62","#fddbc7","#e0e0e0","#999999","#4d4d4d"],7:["#b2182b","#ef8a62","#fddbc7","#ffffff","#e0e0e0","#999999","#4d4d4d"],8:["#b2182b","#d6604d","#f4a582","#fddbc7","#e0e0e0","#bababa","#878787","#4d4d4d"],9:["#b2182b","#d6604d","#f4a582","#fddbc7","#ffffff","#e0e0e0","#bababa","#878787","#4d4d4d"],10:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#e0e0e0","#bababa","#878787","#4d4d4d","#1a1a1a"],11:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#ffffff","#e0e0e0","#bababa","#878787","#4d4d4d","#1a1a1a"]},RdYlBu:{3:["#fc8d59","#ffffbf","#91bfdb"],4:["#d7191c","#fdae61","#abd9e9","#2c7bb6"],5:["#d7191c","#fdae61","#ffffbf","#abd9e9","#2c7bb6"],6:["#d73027","#fc8d59","#fee090","#e0f3f8","#91bfdb","#4575b4"],7:["#d73027","#fc8d59","#fee090","#ffffbf","#e0f3f8","#91bfdb","#4575b4"],8:["#d73027","#f46d43","#fdae61","#fee090","#e0f3f8","#abd9e9","#74add1","#4575b4"],9:["#d73027","#f46d43","#fdae61","#fee090","#ffffbf","#e0f3f8","#abd9e9","#74add1","#4575b4"],10:["#a50026","#d73027","#f46d43","#fdae61","#fee090","#e0f3f8","#abd9e9","#74add1","#4575b4","#313695"],11:["#a50026","#d73027","#f46d43","#fdae61","#fee090","#ffffbf","#e0f3f8","#abd9e9","#74add1","#4575b4","#313695"]},Spectral:{3:["#fc8d59","#ffffbf","#99d594"],4:["#d7191c","#fdae61","#abdda4","#2b83ba"],5:["#d7191c","#fdae61","#ffffbf","#abdda4","#2b83ba"],6:["#d53e4f","#fc8d59","#fee08b","#e6f598","#99d594","#3288bd"],7:["#d53e4f","#fc8d59","#fee08b","#ffffbf","#e6f598","#99d594","#3288bd"],8:["#d53e4f","#f46d43","#fdae61","#fee08b","#e6f598","#abdda4","#66c2a5","#3288bd"],9:["#d53e4f","#f46d43","#fdae61","#fee08b","#ffffbf","#e6f598","#abdda4","#66c2a5","#3288bd"],10:["#9e0142","#d53e4f","#f46d43","#fdae61","#fee08b","#e6f598","#abdda4","#66c2a5","#3288bd","#5e4fa2"],11:["#9e0142","#d53e4f","#f46d43","#fdae61","#fee08b","#ffffbf","#e6f598","#abdda4","#66c2a5","#3288bd","#5e4fa2"]},RdYlGn:{3:["#fc8d59","#ffffbf","#91cf60"],4:["#d7191c","#fdae61","#a6d96a","#1a9641"],5:["#d7191c","#fdae61","#ffffbf","#a6d96a","#1a9641"],6:["#d73027","#fc8d59","#fee08b","#d9ef8b","#91cf60","#1a9850"],7:["#d73027","#fc8d59","#fee08b","#ffffbf","#d9ef8b","#91cf60","#1a9850"],8:["#d73027","#f46d43","#fdae61","#fee08b","#d9ef8b","#a6d96a","#66bd63","#1a9850"],9:["#d73027","#f46d43","#fdae61","#fee08b","#ffffbf","#d9ef8b","#a6d96a","#66bd63","#1a9850"],10:["#a50026","#d73027","#f46d43","#fdae61","#fee08b","#d9ef8b","#a6d96a","#66bd63","#1a9850","#006837"],11:["#a50026","#d73027","#f46d43","#fdae61","#fee08b","#ffffbf","#d9ef8b","#a6d96a","#66bd63","#1a9850","#006837"]},Accent:{3:["#7fc97f","#beaed4","#fdc086"],4:["#7fc97f","#beaed4","#fdc086","#ffff99"],5:["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0"],6:["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0","#f0027f"],7:["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0","#f0027f","#bf5b17"],8:["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0","#f0027f","#bf5b17","#666666"]},Dark2:{3:["#1b9e77","#d95f02","#7570b3"],4:["#1b9e77","#d95f02","#7570b3","#e7298a"],5:["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e"],6:["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e","#e6ab02"],7:["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e","#e6ab02","#a6761d"],8:["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e","#e6ab02","#a6761d","#666666"]},Paired:{3:["#a6cee3","#1f78b4","#b2df8a"],4:["#a6cee3","#1f78b4","#b2df8a","#33a02c"],5:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99"],6:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c"],7:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f"],8:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00"],9:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6"],10:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6","#6a3d9a"],11:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6","#6a3d9a","#ffff99"],12:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6","#6a3d9a","#ffff99","#b15928"]},Pastel1:{3:["#fbb4ae","#b3cde3","#ccebc5"],4:["#fbb4ae","#b3cde3","#ccebc5","#decbe4"],5:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6"],6:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc"],7:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc","#e5d8bd"],8:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc","#e5d8bd","#fddaec"],9:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc","#e5d8bd","#fddaec","#f2f2f2"]},Pastel2:{3:["#b3e2cd","#fdcdac","#cbd5e8"],4:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4"],5:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9"],6:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9","#fff2ae"],7:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9","#fff2ae","#f1e2cc"],8:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9","#fff2ae","#f1e2cc","#cccccc"]},Set1:{3:["#e41a1c","#377eb8","#4daf4a"],4:["#e41a1c","#377eb8","#4daf4a","#984ea3"],5:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00"],6:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33"],7:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33","#a65628"],8:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33","#a65628","#f781bf"],9:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33","#a65628","#f781bf","#999999"]},Set2:{3:["#66c2a5","#fc8d62","#8da0cb"],4:["#66c2a5","#fc8d62","#8da0cb","#e78ac3"],5:["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854"],6:["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854","#ffd92f"],7:["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854","#ffd92f","#e5c494"],8:["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854","#ffd92f","#e5c494","#b3b3b3"]},Set3:{3:["#8dd3c7","#ffffb3","#bebada"],4:["#8dd3c7","#ffffb3","#bebada","#fb8072"],5:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3"],6:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462"],7:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69"],8:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5"],9:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9"],10:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9","#bc80bd"],11:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9","#bc80bd","#ccebc5"],12:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9","#bc80bd","#ccebc5","#ffed6f"]}},Fxe={2:["#ffc6c4","#672044"],3:["#ffc6c4","#cc607d","#672044"],4:["#ffc6c4","#e38191","#ad466c","#672044"],5:["#ffc6c4","#ee919b","#cc607d","#9e3963","#672044"],6:["#ffc6c4","#f29ca3","#da7489","#b95073","#93345d","#672044"],7:["#ffc6c4","#f4a3a8","#e38191","#cc607d","#ad466c","#8b3058","#672044"],tags:["quantitative"]},Oxe={2:["#fbe6c5","#70284a"],3:["#fbe6c5","#dc7176","#70284a"],4:["#fbe6c5","#ee8a82","#c8586c","#70284a"],5:["#fbe6c5","#f2a28a","#dc7176","#b24b65","#70284a"],6:["#fbe6c5","#f4b191","#e7807d","#d06270","#a44360","#70284a"],7:["#fbe6c5","#f5ba98","#ee8a82","#dc7176","#c8586c","#9c3f5d","#70284a"],tags:["quantitative"]},Dxe={2:["#f6d2a9","#b13f64"],3:["#f6d2a9","#ea8171","#b13f64"],4:["#f6d2a9","#f19c7c","#dd686c","#b13f64"],5:["#f6d2a9","#f3aa84","#ea8171","#d55d6a","#b13f64"],6:["#f6d2a9","#f4b28a","#ef9177","#e3726d","#cf5669","#b13f64"],7:["#f6d2a9","#f5b78e","#f19c7c","#ea8171","#dd686c","#ca5268","#b13f64"],tags:["quantitative"]},Lxe={2:["#ecda9a","#ee4d5a"],3:["#ecda9a","#f7945d","#ee4d5a"],4:["#ecda9a","#f3ad6a","#f97b57","#ee4d5a"],5:["#ecda9a","#f1b973","#f7945d","#f86f56","#ee4d5a"],6:["#ecda9a","#f0c079","#f5a363","#f98558","#f76856","#ee4d5a"],7:["#ecda9a","#efc47e","#f3ad6a","#f7945d","#f97b57","#f66356","#ee4d5a"],tags:["quantitative"]},Nxe={2:["#fde0c5","#eb4a40"],3:["#fde0c5","#f59e72","#eb4a40"],4:["#fde0c5","#f8b58b","#f2855d","#eb4a40"],5:["#fde0c5","#f9c098","#f59e72","#f17854","#eb4a40"],6:["#fde0c5","#fac7a1","#f7ac80","#f38f65","#f0704f","#eb4a40"],7:["#fde0c5","#facba6","#f8b58b","#f59e72","#f2855d","#ef6a4c","#eb4a40"],tags:["quantitative"]},kxe={2:["#fef6b5","#e15383"],3:["#fef6b5","#ffa679","#e15383"],4:["#fef6b5","#ffc285","#fa8a76","#e15383"],5:["#fef6b5","#ffd08e","#ffa679","#f67b77","#e15383"],6:["#fef6b5","#ffd795","#ffb77f","#fd9576","#f37378","#e15383"],7:["#fef6b5","#ffdd9a","#ffc285","#ffa679","#fa8a76","#f16d7a","#e15383"],tags:["quantitative"]},Uxe={2:["#e4f1e1","#0d585f"],3:["#e4f1e1","#63a6a0","#0d585f"],4:["#e4f1e1","#89c0b6","#448c8a","#0d585f"],5:["#E4F1E1","#9CCDC1","#63A6A0","#337F7F","#0D585F"],6:["#e4f1e1","#abd4c7","#7ab5ad","#509693","#2c7778","#0d585f"],7:["#e4f1e1","#b4d9cc","#89c0b6","#63a6a0","#448c8a","#287274","#0d585f"],tags:["quantitative"]},zxe={2:["#c4e6c3","#1d4f60"],3:["#c4e6c3","#4da284","#1d4f60"],4:["#c4e6c3","#6dbc90","#36877a","#1d4f60"],5:["#c4e6c3","#80c799","#4da284","#2d7974","#1d4f60"],6:["#c4e6c3","#8dce9f","#5fb28b","#3e927e","#297071","#1d4f60"],7:["#c4e6c3","#96d2a4","#6dbc90","#4da284","#36877a","#266b6e","#1d4f60"],tags:["quantitative"]},Gxe={2:["#d2fbd4","#123f5a"],3:["#d2fbd4","#559c9e","#123f5a"],4:["#d2fbd4","#7bbcb0","#3a7c89","#123f5a"],5:["#d2fbd4","#8eccb9","#559c9e","#2b6c7f","#123f5a"],6:["#d2fbd4","#9cd5be","#6cafa9","#458892","#266377","#123f5a"],7:["#d2fbd4","#a5dbc2","#7bbcb0","#559c9e","#3a7c89","#235d72","#123f5a"],tags:["quantitative"]},Vxe={2:["#d3f2a3","#074050"],3:["#d3f2a3","#4c9b82","#074050"],4:["#d3f2a3","#6cc08b","#217a79","#074050"],5:["#d3f2a3","#82d091","#4c9b82","#19696f","#074050"],6:["#d3f2a3","#8fda94","#60b187","#35877d","#145f69","#074050"],7:["#d3f2a3","#97e196","#6cc08b","#4c9b82","#217a79","#105965","#074050"],tags:["quantitative"]},Hxe={2:["#245668","#EDEF5D"],3:["#245668","#39AB7E","#EDEF5D"],4:["#245668","#0D8F81","#6EC574","#EDEF5D"],5:["#245668","#04817E","#39AB7E","#8BD16D","#EDEF5D"],6:["#245668","#09787C","#1D9A81","#58BB79","#9DD869","#EDEF5D"],7:["#245668","#0F7279","#0D8F81","#39AB7E","#6EC574","#A9DC67","#EDEF5D"],tags:["aggregation"]},jxe={2:["#f7feae","#045275"],3:["#f7feae","#46aea0","#045275"],4:["#f7feae","#7ccba2","#089099","#045275"],5:["#f7feae","#9bd8a4","#46aea0","#058092","#045275"],6:["#f7feae","#ace1a4","#68bfa1","#2a9c9c","#02778e","#045275"],7:["#f7feae","#b7e6a5","#7ccba2","#46aea0","#089099","#00718b","#045275"],tags:["quantitative"]},$xe={2:["#d1eeea","#2a5674"],3:["#d1eeea","#68abb8","#2a5674"],4:["#d1eeea","#85c4c9","#4f90a6","#2a5674"],5:["#d1eeea","#96d0d1","#68abb8","#45829b","#2a5674"],6:["#d1eeea","#a1d7d6","#79bbc3","#599bae","#3f7994","#2a5674"],7:["#d1eeea","#a8dbd9","#85c4c9","#68abb8","#4f90a6","#3b738f","#2a5674"],tags:["quantitative"]},Wxe={2:["#b0f2bc","#257d98"],3:["#b0f2bc","#4cc8a3","#257d98"],4:["#b0f2bc","#67dba5","#38b2a3","#257d98"],5:["#b0f2bc","#77e2a8","#4cc8a3","#31a6a2","#257d98"],6:["#b0f2bc","#82e6aa","#5bd4a4","#3fbba3","#2e9ea1","#257d98"],7:["#b0f2bc","#89e8ac","#67dba5","#4cc8a3","#38b2a3","#2c98a0","#257d98"],tags:["quantitative"]},Jxe={2:["#f3e0f7","#63589f"],3:["#f3e0f7","#b998dd","#63589f"],4:["#f3e0f7","#d1afe8","#9f82ce","#63589f"],5:["#f3e0f7","#dbbaed","#b998dd","#9178c4","#63589f"],6:["#f3e0f7","#e0c2ef","#c8a5e4","#aa8bd4","#8871be","#63589f"],7:["#f3e0f7","#e4c7f1","#d1afe8","#b998dd","#9f82ce","#826dba","#63589f"],tags:["quantitative"]},Xxe={2:["#f9ddda","#573b88"],3:["#f9ddda","#ce78b3","#573b88"],4:["#f9ddda","#e597b9","#ad5fad","#573b88"],5:["#f9ddda","#eda8bd","#ce78b3","#9955a8","#573b88"],6:["#f9ddda","#f0b2c1","#dd8ab6","#bb69b0","#8c4fa4","#573b88"],7:["#f9ddda","#f2b9c4","#e597b9","#ce78b3","#ad5fad","#834ba0","#573b88"],tags:["quantitative"]},Kxe={2:["#f3e79b","#5c53a5"],3:["#f3e79b","#eb7f86","#5c53a5"],4:["#f3e79b","#f8a07e","#ce6693","#5c53a5"],5:["#f3e79b","#fab27f","#eb7f86","#b95e9a","#5c53a5"],6:["#f3e79b","#fabc82","#f59280","#dc6f8e","#ab5b9e","#5c53a5"],7:["#f3e79b","#fac484","#f8a07e","#eb7f86","#ce6693","#a059a0","#5c53a5"],tags:["quantitative"]},Yxe={2:["#f3cbd3","#6c2167"],3:["#f3cbd3","#ca699d","#6c2167"],4:["#f3cbd3","#dd88ac","#b14d8e","#6c2167"],5:["#f3cbd3","#e498b4","#ca699d","#a24186","#6c2167"],6:["#f3cbd3","#e7a2b9","#d67ba5","#bc5894","#983a81","#6c2167"],7:["#f3cbd3","#eaa9bd","#dd88ac","#ca699d","#b14d8e","#91357d","#6c2167"],tags:["quantitative"]},qxe={2:["#fcde9c","#7c1d6f"],3:["#fcde9c","#e34f6f","#7c1d6f"],4:["#fcde9c","#f0746e","#dc3977","#7c1d6f"],5:["#fcde9c","#f58670","#e34f6f","#d72d7c","#7c1d6f"],6:["#fcde9c","#f89872","#ec666d","#df4273","#c5287b","#7c1d6f"],7:["#fcde9c","#faa476","#f0746e","#e34f6f","#dc3977","#b9257a","#7c1d6f"],tags:["quantitative"]},Zxe={2:["#4b2991","#edd9a3"],3:["#4b2991","#ea4f88","#edd9a3"],4:["#4b2991","#c0369d","#fa7876","#edd9a3"],5:["#4b2991","#a52fa2","#ea4f88","#fa9074","#edd9a3"],6:["#4b2991","#932da3","#d43f96","#f7667c","#f89f77","#edd9a3"],7:["#4b2991","#872ca2","#c0369d","#ea4f88","#fa7876","#f6a97a","#edd9a3"],tags:["aggregation"]},Qxe={2:["#ede5cf","#541f3f"],3:["#ede5cf","#c1766f","#541f3f"],4:["#ede5cf","#d39c83","#a65461","#541f3f"],5:["#ede5cf","#daaf91","#c1766f","#95455a","#541f3f"],6:["#ede5cf","#ddba9b","#cd8c7a","#b26166","#8a3c56","#541f3f"],7:["#ede5cf","#e0c2a2","#d39c83","#c1766f","#a65461","#813753","#541f3f"],tags:["quantitative"]},ewe={2:["#929b4f","#db8195"],3:["#a3ad62","#fdfbe4","#df91a3"],4:["#929b4f","#d9dbaf","#f3d1ca","#db8195"],5:["#879043","#c1c68c","#fdfbe4","#ebb4b8","#d8758b"],6:["#7f883b","#b0b874","#e3e4be","#f6ddd1","#e4a0ac","#d66d85"],7:["#798234","#a3ad62","#d0d3a2","#fdfbe4","#f0c6c3","#df91a3","#d46780"],tags:["diverging"]},twe={2:["#3d5941","#ca562c"],3:["#3d5941","#f6edbd","#ca562c"],4:["#3d5941","#b5b991","#edbb8a","#ca562c"],5:["#3d5941","#96a07c","#f6edbd","#e6a272","#ca562c"],6:["#3d5941","#839170","#cecea2","#f1cf9e","#e19464","#ca562c"],7:["#3d5941","#778868","#b5b991","#f6edbd","#edbb8a","#de8a5a","#ca562c"],tags:["diverging"]},rwe={2:["#008080","#ca562c"],3:["#008080","#f6edbd","#ca562c"],4:["#008080","#b4c8a8","#edbb8a","#ca562c"],5:["#008080","#92b69e","#f6edbd","#e6a272","#ca562c"],6:["#008080","#7eab98","#ced7b1","#f1cf9e","#e19464","#ca562c"],7:["#008080","#70a494","#b4c8a8","#f6edbd","#edbb8a","#de8a5a","#ca562c"],tags:["diverging"]},nwe={2:["#009392","#cf597e"],3:["#009392","#e9e29c","#cf597e"],4:["#009392","#9ccb86","#eeb479","#cf597e"],5:["#009392","#71be83","#e9e29c","#ed9c72","#cf597e"],6:["#009392","#52b684","#bcd48c","#edc783","#eb8d71","#cf597e"],7:["#009392","#39b185","#9ccb86","#e9e29c","#eeb479","#e88471","#cf597e"],tags:["diverging"]},iwe={2:["#009392","#d0587e"],3:["#009392","#f1eac8","#d0587e"],4:["#009392","#91b8aa","#f1eac8","#dfa0a0","#d0587e"],5:["#009392","#91b8aa","#f1eac8","#dfa0a0","#d0587e"],6:["#009392","#72aaa1","#b1c7b3","#e5b9ad","#d98994","#d0587e"],7:["#009392","#72aaa1","#b1c7b3","#f1eac8","#e5b9ad","#d98994","#d0587e"],tags:["diverging"]},swe={2:["#009B9E","#C75DAB"],3:["#009B9E","#F1F1F1","#C75DAB"],4:["#009B9E","#A7D3D4","#E4C1D9","#C75DAB"],5:["#009B9E","#7CC5C6","#F1F1F1","#DDA9CD","#C75DAB"],6:["#009B9E","#5DBCBE","#C6DFDF","#E9D4E2","#D99BC6","#C75DAB"],7:["#009B9E","#42B7B9","#A7D3D4","#F1F1F1","#E4C1D9","#D691C1","#C75DAB"],tags:["diverging"]},owe={2:["#A16928","#2887a1"],3:["#A16928","#edeac2","#2887a1"],4:["#A16928","#d6bd8d","#b5c8b8","#2887a1"],5:["#A16928","#caa873","#edeac2","#98b7b2","#2887a1"],6:["#A16928","#c29b64","#e0cfa2","#cbd5bc","#85adaf","#2887a1"],7:["#A16928","#bd925a","#d6bd8d","#edeac2","#b5c8b8","#79a7ac","#2887a1"],tags:["diverging"]},awe={2:["#855C75","#D9AF6B","#7C7C7C"],3:["#855C75","#D9AF6B","#AF6458","#7C7C7C"],4:["#855C75","#D9AF6B","#AF6458","#736F4C","#7C7C7C"],5:["#855C75","#D9AF6B","#AF6458","#736F4C","#526A83","#7C7C7C"],6:["#855C75","#D9AF6B","#AF6458","#736F4C","#526A83","#625377","#7C7C7C"],7:["#855C75","#D9AF6B","#AF6458","#736F4C","#526A83","#625377","#68855C","#7C7C7C"],8:["#855C75","#D9AF6B","#AF6458","#736F4C","#526A83","#625377","#68855C","#9C9C5E","#7C7C7C"],9:["#855C75","#D9AF6B","#AF6458","#736F4C","#526A83","#625377","#68855C","#9C9C5E","#A06177","#7C7C7C"],10:["#855C75","#D9AF6B","#AF6458","#736F4C","#526A83","#625377","#68855C","#9C9C5E","#A06177","#8C785D","#7C7C7C"],11:["#855C75","#D9AF6B","#AF6458","#736F4C","#526A83","#625377","#68855C","#9C9C5E","#A06177","#8C785D","#467378","#7C7C7C"],tags:["qualitative"]},cwe={2:["#7F3C8D","#11A579","#A5AA99"],3:["#7F3C8D","#11A579","#3969AC","#A5AA99"],4:["#7F3C8D","#11A579","#3969AC","#F2B701","#A5AA99"],5:["#7F3C8D","#11A579","#3969AC","#F2B701","#E73F74","#A5AA99"],6:["#7F3C8D","#11A579","#3969AC","#F2B701","#E73F74","#80BA5A","#A5AA99"],7:["#7F3C8D","#11A579","#3969AC","#F2B701","#E73F74","#80BA5A","#E68310","#A5AA99"],8:["#7F3C8D","#11A579","#3969AC","#F2B701","#E73F74","#80BA5A","#E68310","#008695","#A5AA99"],9:["#7F3C8D","#11A579","#3969AC","#F2B701","#E73F74","#80BA5A","#E68310","#008695","#CF1C90","#A5AA99"],10:["#7F3C8D","#11A579","#3969AC","#F2B701","#E73F74","#80BA5A","#E68310","#008695","#CF1C90","#f97b72","#A5AA99"],11:["#7F3C8D","#11A579","#3969AC","#F2B701","#E73F74","#80BA5A","#E68310","#008695","#CF1C90","#f97b72","#4b4b8f","#A5AA99"],tags:["qualitative"]},lwe={2:["#66C5CC","#F6CF71","#B3B3B3"],3:["#66C5CC","#F6CF71","#F89C74","#B3B3B3"],4:["#66C5CC","#F6CF71","#F89C74","#DCB0F2","#B3B3B3"],5:["#66C5CC","#F6CF71","#F89C74","#DCB0F2","#87C55F","#B3B3B3"],6:["#66C5CC","#F6CF71","#F89C74","#DCB0F2","#87C55F","#9EB9F3","#B3B3B3"],7:["#66C5CC","#F6CF71","#F89C74","#DCB0F2","#87C55F","#9EB9F3","#FE88B1","#B3B3B3"],8:["#66C5CC","#F6CF71","#F89C74","#DCB0F2","#87C55F","#9EB9F3","#FE88B1","#C9DB74","#B3B3B3"],9:["#66C5CC","#F6CF71","#F89C74","#DCB0F2","#87C55F","#9EB9F3","#FE88B1","#C9DB74","#8BE0A4","#B3B3B3"],10:["#66C5CC","#F6CF71","#F89C74","#DCB0F2","#87C55F","#9EB9F3","#FE88B1","#C9DB74","#8BE0A4","#B497E7","#B3B3B3"],11:["#66C5CC","#F6CF71","#F89C74","#DCB0F2","#87C55F","#9EB9F3","#FE88B1","#C9DB74","#8BE0A4","#B497E7","#D3B484","#B3B3B3"],tags:["qualitative"]},uwe={2:["#5F4690","#1D6996","#666666"],3:["#5F4690","#1D6996","#38A6A5","#666666"],4:["#5F4690","#1D6996","#38A6A5","#0F8554","#666666"],5:["#5F4690","#1D6996","#38A6A5","#0F8554","#73AF48","#666666"],6:["#5F4690","#1D6996","#38A6A5","#0F8554","#73AF48","#EDAD08","#666666"],7:["#5F4690","#1D6996","#38A6A5","#0F8554","#73AF48","#EDAD08","#E17C05","#666666"],8:["#5F4690","#1D6996","#38A6A5","#0F8554","#73AF48","#EDAD08","#E17C05","#CC503E","#666666"],9:["#5F4690","#1D6996","#38A6A5","#0F8554","#73AF48","#EDAD08","#E17C05","#CC503E","#94346E","#666666"],10:["#5F4690","#1D6996","#38A6A5","#0F8554","#73AF48","#EDAD08","#E17C05","#CC503E","#94346E","#6F4070","#666666"],11:["#5F4690","#1D6996","#38A6A5","#0F8554","#73AF48","#EDAD08","#E17C05","#CC503E","#94346E","#6F4070","#994E95","#666666"],tags:["qualitative"]},fwe={2:["#88CCEE","#CC6677","#888888"],3:["#88CCEE","#CC6677","#DDCC77","#888888"],4:["#88CCEE","#CC6677","#DDCC77","#117733","#888888"],5:["#88CCEE","#CC6677","#DDCC77","#117733","#332288","#888888"],6:["#88CCEE","#CC6677","#DDCC77","#117733","#332288","#AA4499","#888888"],7:["#88CCEE","#CC6677","#DDCC77","#117733","#332288","#AA4499","#44AA99","#888888"],8:["#88CCEE","#CC6677","#DDCC77","#117733","#332288","#AA4499","#44AA99","#999933","#888888"],9:["#88CCEE","#CC6677","#DDCC77","#117733","#332288","#AA4499","#44AA99","#999933","#882255","#888888"],10:["#88CCEE","#CC6677","#DDCC77","#117733","#332288","#AA4499","#44AA99","#999933","#882255","#661100","#888888"],11:["#88CCEE","#CC6677","#DDCC77","#117733","#332288","#AA4499","#44AA99","#999933","#882255","#661100","#6699CC","#888888"],tags:["qualitative","colorblind"]},hwe={2:["#E58606","#5D69B1","#A5AA99"],3:["#E58606","#5D69B1","#52BCA3","#A5AA99"],4:["#E58606","#5D69B1","#52BCA3","#99C945","#A5AA99"],5:["#E58606","#5D69B1","#52BCA3","#99C945","#CC61B0","#A5AA99"],6:["#E58606","#5D69B1","#52BCA3","#99C945","#CC61B0","#24796C","#A5AA99"],7:["#E58606","#5D69B1","#52BCA3","#99C945","#CC61B0","#24796C","#DAA51B","#A5AA99"],8:["#E58606","#5D69B1","#52BCA3","#99C945","#CC61B0","#24796C","#DAA51B","#2F8AC4","#A5AA99"],9:["#E58606","#5D69B1","#52BCA3","#99C945","#CC61B0","#24796C","#DAA51B","#2F8AC4","#764E9F","#A5AA99"],10:["#E58606","#5D69B1","#52BCA3","#99C945","#CC61B0","#24796C","#DAA51B","#2F8AC4","#764E9F","#ED645A","#A5AA99"],11:["#E58606","#5D69B1","#52BCA3","#99C945","#CC61B0","#24796C","#DAA51B","#2F8AC4","#764E9F","#ED645A","#CC3A8E","#A5AA99"],tags:["qualitative"]},dwe={...Tn.BuGn,tags:["quantitative"]},Awe={...Tn.BuPu,tags:["quantitative"]},pwe={...Tn.GnBu,tags:["quantitative"]},gwe={...Tn.OrRd,tags:["quantitative"]},mwe={...Tn.PuBu,tags:["quantitative"]},_we={...Tn.PuBuGn,tags:["quantitative"]},ywe={...Tn.PuRd,tags:["quantitative"]},vwe={...Tn.RdPu,tags:["quantitative"]},bwe={...Tn.YlGn,tags:["quantitative"]},xwe={...Tn.YlGnBu,tags:["quantitative"]},wwe={...Tn.YlOrBr,tags:["quantitative"]},Cwe={...Tn.YlOrRd,tags:["quantitative"]},Ewe={...Tn.Accent,tags:["qualitative"]},Twe={...Tn.Dark2,tags:["qualitative"]},Bwe={...Tn.Paired,tags:["qualitative"]},Swe={...Tn.Pastel1,tags:["qualitative"]},Iwe={...Tn.Pastel2,tags:["qualitative"]},Mwe={...Tn.Set1,tags:["qualitative"]},Pwe={...Tn.Set2,tags:["qualitative"]},Rwe={...Tn.Set3,tags:["qualitative"]},Fwe={...Tn.Blues,tags:["quantitative"]},Owe={...Tn.Greens,tags:["quantitative"]},Dwe={...Tn.Greys,tags:["quantitative"]},Lwe={...Tn.Oranges,tags:["quantitative"]},Nwe={...Tn.Purples,tags:["quantitative"]},kwe={...Tn.Reds,tags:["quantitative"]},Uwe={...Tn.BrBG,tags:["diverging"]},zwe={...Tn.PiYG,tags:["diverging"]},Gwe={...Tn.PRGn,tags:["diverging"]},Vwe={...Tn.PuOr,tags:["diverging"]},Hwe={...Tn.RdBu,tags:["diverging"]},jwe={...Tn.RdGy,tags:["diverging"]},$we={...Tn.RdYlBu,tags:["diverging"]},Wwe={...Tn.RdYlGn,tags:["diverging"]},Jwe={...Tn.Spectral,tags:["diverging"]};const Xwe=Object.freeze(Object.defineProperty({__proto__:null,Antique:awe,ArmyRose:ewe,BluGrn:zxe,BluYl:jxe,Bold:cwe,BrwnYl:Qxe,Burg:Fxe,BurgYl:Oxe,DarkMint:Gxe,Earth:owe,Emrld:Vxe,Fall:twe,Geyser:rwe,Magenta:Yxe,Mint:Uxe,OrYel:Lxe,Pastel:lwe,Peach:Nxe,PinkYl:kxe,Prism:uwe,Purp:Jxe,PurpOr:Xxe,RedOr:Dxe,Safe:fwe,Sunset:Kxe,SunsetDark:qxe,Teal:$xe,TealGrn:Wxe,TealRose:iwe,Temps:nwe,Tropic:swe,Vivid:hwe,ag_GrnYl:Hxe,ag_Sunset:Zxe,cb_Accent:Ewe,cb_Blues:Fwe,cb_BrBG:Uwe,cb_BuGn:dwe,cb_BuPu:Awe,cb_Dark2:Twe,cb_GnBu:pwe,cb_Greens:Owe,cb_Greys:Dwe,cb_OrRd:gwe,cb_Oranges:Lwe,cb_PRGn:Gwe,cb_Paired:Bwe,cb_Pastel1:Swe,cb_Pastel2:Iwe,cb_PiYG:zwe,cb_PuBu:mwe,cb_PuBuGn:_we,cb_PuOr:Vwe,cb_PuRd:ywe,cb_Purples:Nwe,cb_RdBu:Hwe,cb_RdGy:jwe,cb_RdPu:vwe,cb_RdYlBu:$we,cb_RdYlGn:Wwe,cb_Reds:kwe,cb_Set1:Mwe,cb_Set2:Pwe,cb_Set3:Rwe,cb_Spectral:Jwe,cb_YlGn:bwe,cb_YlGnBu:xwe,cb_YlOrBr:wwe,cb_YlOrRd:Cwe},Symbol.toStringTag,{value:"Module"})),SE="PurpOr",IE=[204,204,204],Kwe=[119,119,119];function ME(r,e){const t=Xwe[r];let n=e;rh(t,`Palette "${r}" not found. Expected a CARTOColors string`);const i=Object.keys(t).filter(f=>f!=="tags").map(Number),o=Math.max(...i),s=Math.min(...i);!Number.isInteger(e)||e>o?n=o:e<s&&(n=s);let c=t[n];return t.tags&&t.tags.includes("qualitative")&&(c=c.slice(0,-1)),c.map(f=>Ywe(f))}function Ywe(r){let e=/^#?([a-f\d]{1})([a-f\d]{1})([a-f\d]{1})$/i.exec(r);return e?[parseInt(e[1]+e[1],16),parseInt(e[2]+e[2],16),parseInt(e[3]+e[3],16),255]:(e=/^#?([a-f\d]{1})([a-f\d]{1})([a-f\d]{1})([a-f\d]{1})$/i.exec(r),e?[parseInt(e[1]+e[1],16),parseInt(e[2]+e[2],16),parseInt(e[3]+e[3],16),parseInt(e[4]+e[4],16)]:(e=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(r),e?[parseInt(e[1],16),parseInt(e[2],16),parseInt(e[3],16),255]:(e=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(r),rh(e,`Hexadecimal color "${r}" was not parsed correctly`),[parseInt(e[1],16),parseInt(e[2],16),parseInt(e[3],16),parseInt(e[4],16)])))}const qwe=Object.freeze(["function","string"]);function PE(r,e,t){var n;return rh(typeof e=="object",'Expected "data" to be an object'),rh(qwe.includes(typeof r),'Expected "attr" to be a function or string'),typeof r=="function"?r(e,t):(n=e==null?void 0:e.properties)==null?void 0:n[r]}function Zwe({attr:r,domain:e,colors:t=SE,nullColor:n=IE}){rh(Array.isArray(e),'Expected "domain" to be an array of numbers');const i=typeof t=="string"?ME(t,e.length+1):t,o=n5().domain(e).range(i);return(s,c)=>{const f=PE(r,s,c);return typeof f=="number"&&Number.isFinite(f)?o(f):n}}function Qwe({attr:r,domain:e,colors:t=SE,nullColor:n=IE,othersColor:i=Kwe}){rh(Array.isArray(e),'Expected "domain" to be an array of numbers or strings');const o={},s=typeof t=="string"?ME(t,e.length):t;for(const[c,f]of e.entries())o[f]=s[c];return(c,f)=>{const _=PE(r,c,f);return typeof _=="number"&&Number.isFinite(_)||typeof _=="string"?o[_]||i:n}}function eCe({attr:r,domain:e,colors:t=SE,nullColor:n=IE}){rh(Array.isArray(e),'Expected "domain" to be an array of numbers');const i=typeof t=="string"?ME(t,e.length):t,o=i5().domain(e).range(i);return(s,c)=>{const f=PE(r,s,c);return typeof f=="number"&&Number.isFinite(f)?o(f):n}}function tCe({pointCount:r,getBinId:e}){const t=new Map;for(let n=0;n<r;n++){const i=e(n);if(i===null)continue;let o=t.get(String(i));o?o.points.push(n):(o={id:i,index:t.size,points:[n]},t.set(String(i),o))}return Array.from(t.values())}function rCe({bins:r,dimensions:e,target:t}){const n=r.length*e;(!t||t.length<n)&&(t=new Float32Array(n));for(let i=0;i<r.length;i++){const{id:o}=r[i];Array.isArray(o)?t.set(o,i*e):t[i]=o}return t}const nCe=r=>r.length,Zk=(r,e)=>{let t=0;for(const n of r)t+=e(n);return t},iCe=(r,e)=>r.length===0?NaN:Zk(r,e)/r.length,sCe=(r,e)=>{let t=1/0;for(const n of r){const i=e(n);i<t&&(t=i)}return t},oCe=(r,e)=>{let t=-1/0;for(const n of r){const i=e(n);i>t&&(t=i)}return t},aCe={COUNT:nCe,SUM:Zk,MEAN:iCe,MIN:sCe,MAX:oCe};function cCe({bins:r,getValue:e,operation:t,target:n}){(!n||n.length<r.length)&&(n=new Float32Array(r.length));let i=1/0,o=-1/0;for(let s=0;s<r.length;s++){const{points:c}=r[s];n[s]=t(c,e),n[s]<i&&(i=n[s]),n[s]>o&&(o=n[s])}return{value:n,domain:[i,o]}}function jF(r,e,t){const n={};for(const o of r.sources||[]){const s=e[o];if(s)n[o]=lCe(s);else throw new Error(`Cannot find attribute ${o}`)}const i={};return o=>{for(const s in n)i[s]=n[s](o);return r.getValue(i,o,t)}}function lCe(r){const e=r.value,{offset:t=0,stride:n,size:i}=r.getAccessor(),o=e.BYTES_PER_ELEMENT,s=t/o,c=n?n/o:i;if(i===1)return r.isConstant?()=>e[0]:_=>{const b=s+c*_;return e[b]};let f;return r.isConstant?(f=Array.from(e),()=>f):(f=new Array(i),_=>{const b=s+c*_;for(let T=0;T<i;T++)f[T]=e[b+T];return f})}class kA{constructor(e){this.bins=[],this.binIds=null,this.results=[],this.dimensions=e.dimensions,this.channelCount=e.getValue.length,this.props={...e,binOptions:{},pointCount:0,operations:[],customOperations:[],attributes:{}},this.needsUpdate=!0,this.setProps(e)}destroy(){}get binCount(){return this.bins.length}setProps(e){const t=this.props;if(e.binOptions&&(Ki(e.binOptions,t.binOptions,2)||this.setNeedsUpdate()),e.operations)for(let n=0;n<this.channelCount;n++)e.operations[n]!==t.operations[n]&&this.setNeedsUpdate(n);if(e.customOperations)for(let n=0;n<this.channelCount;n++)!!e.customOperations[n]!=!!t.customOperations[n]&&this.setNeedsUpdate(n);e.pointCount!==void 0&&e.pointCount!==t.pointCount&&this.setNeedsUpdate(),e.attributes&&(e.attributes={...t.attributes,...e.attributes}),Object.assign(this.props,e)}setNeedsUpdate(e){e===void 0?this.needsUpdate=!0:this.needsUpdate!==!0&&(this.needsUpdate=this.needsUpdate||[],this.needsUpdate[e]=!0)}update(){var e,t,n,i;if(this.needsUpdate===!0){this.bins=tCe({pointCount:this.props.pointCount,getBinId:jF(this.props.getBin,this.props.attributes,this.props.binOptions)});const o=rCe({bins:this.bins,dimensions:this.dimensions,target:(e=this.binIds)==null?void 0:e.value});this.binIds={value:o,type:"float32",size:this.dimensions}}for(let o=0;o<this.channelCount;o++)if(this.needsUpdate===!0||this.needsUpdate[o]){const s=this.props.customOperations[o]||aCe[this.props.operations[o]],{value:c,domain:f}=cCe({bins:this.bins,getValue:jF(this.props.getValue[o],this.props.attributes,void 0),operation:s,target:(t=this.results[o])==null?void 0:t.value});this.results[o]={value:c,domain:f,type:"float32",size:1},(i=(n=this.props).onUpdate)==null||i.call(n,{channel:o})}this.needsUpdate=!1}preDraw(){}getBins(){return this.binIds}getResult(e){return this.results[e]}getResultDomain(e){var t;return((t=this.results[e])==null?void 0:t.domain)??[1/0,-1/0]}getBin(e){const t=this.bins[e];if(!t)return null;const n=new Array(this.channelCount);for(let i=0;i<n.length;i++){const o=this.results[i];n[i]=o==null?void 0:o.value[e]}return{id:t.id,value:n,count:t.points.length,pointIndices:t.points}}}function Qk(r,e,t){return r.createFramebuffer({width:e,height:t,colorAttachments:[r.createTexture({width:e,height:t,format:"rgba32float",mipmaps:!1,sampler:{minFilter:"nearest",magFilter:"nearest"}})]})}const uCe=`uniform binSorterUniforms {
|
4847
4847
|
ivec4 binIdRange;
|
4848
4848
|
ivec2 targetSize;
|
4849
4849
|
} binSorter;
|